diff --git a/Podfile b/Podfile index 1422660..e473274 100644 --- a/Podfile +++ b/Podfile @@ -13,13 +13,20 @@ target 'pocloud' do pod 'RealmSwift' pod 'PromiseKit/Alamofire' pod 'Kingfisher' + pod 'SwiftChart' end post_install do |installer| installer.pods_project.targets.each do |target| target.build_configurations.each do |config| + config.build_settings.delete('CODE_SIGNING_ALLOWED') + config.build_settings.delete('CODE_SIGNING_REQUIRED') config.build_settings['CLANG_WARN_DOCUMENTATION_COMMENTS'] = 'NO' end end + installer.pods_project.build_configurations.each do |config| + config.build_settings.delete('CODE_SIGNING_ALLOWED') + config.build_settings.delete('CODE_SIGNING_REQUIRED') + end end diff --git a/Podfile.lock b/Podfile.lock index 32eab20..998f056 100644 --- a/Podfile.lock +++ b/Podfile.lock @@ -4,16 +4,17 @@ PODS: - ChameleonFramework/Default (= 2.1.0) - ChameleonFramework/Default (2.1.0) - Kingfisher (4.8.0) - - PromiseKit/Alamofire (6.2.7): + - PromiseKit/Alamofire (6.2.8): - Alamofire (~> 4.0) - PromiseKit/CorePromise - - PromiseKit/CorePromise (6.2.7) - - Realm (3.5.0): - - Realm/Headers (= 3.5.0) - - Realm/Headers (3.5.0) - - RealmSwift (3.5.0): - - Realm (= 3.5.0) + - PromiseKit/CorePromise (6.2.8) + - Realm (3.6.0): + - Realm/Headers (= 3.6.0) + - Realm/Headers (3.6.0) + - RealmSwift (3.6.0): + - Realm (= 3.6.0) - SVProgressHUD (2.2.5) + - SwiftChart (1.0.1) - SwiftyJSON (4.1.0) DEPENDENCIES: @@ -23,6 +24,7 @@ DEPENDENCIES: - PromiseKit/Alamofire - RealmSwift - SVProgressHUD + - SwiftChart - SwiftyJSON SPEC REPOS: @@ -34,18 +36,20 @@ SPEC REPOS: - Realm - RealmSwift - SVProgressHUD + - SwiftChart - SwiftyJSON SPEC CHECKSUMS: Alamofire: e4fa87002c137ba2d8d634d2c51fabcda0d5c223 ChameleonFramework: d21a3cc247abfe5e37609a283a8238b03575cf64 Kingfisher: 976d828df2b24834c6a3f2fc4d82cdbd26552be1 - PromiseKit: 12b9d87748b170714247d8b2677146ca57e488f2 - Realm: 0378021c424e4e2bd6a0e63b27881e929d9b9ad1 - RealmSwift: 3322562622fda2ad596985ead4d8d8be30cf838c + PromiseKit: 6788ce1a0ed5448b83d4aaf56b9fc49fb7647d32 + Realm: 08b464b462d4f31bbd4ba5f5a1c8722ef0a700b7 + RealmSwift: 973e1499c44ab571f894c2c908e2db450be280c3 SVProgressHUD: 1428aafac632c1f86f62aa4243ec12008d7a51d6 + SwiftChart: ba767a678d568a5ee22d419e146a0582865e1aff SwiftyJSON: c29297daf073d2aa016295d5809cdd68045c39b3 -PODFILE CHECKSUM: 71fcda130d0048fb76ddc9524fd4cdd1df1a0e6f +PODFILE CHECKSUM: 5a9239d1a30e88fe3ab43f13976dd5e699d65855 -COCOAPODS: 1.5.2 +COCOAPODS: 1.5.3 diff --git a/Pods/Manifest.lock b/Pods/Manifest.lock index 32eab20..998f056 100644 --- a/Pods/Manifest.lock +++ b/Pods/Manifest.lock @@ -4,16 +4,17 @@ PODS: - ChameleonFramework/Default (= 2.1.0) - ChameleonFramework/Default (2.1.0) - Kingfisher (4.8.0) - - PromiseKit/Alamofire (6.2.7): + - PromiseKit/Alamofire (6.2.8): - Alamofire (~> 4.0) - PromiseKit/CorePromise - - PromiseKit/CorePromise (6.2.7) - - Realm (3.5.0): - - Realm/Headers (= 3.5.0) - - Realm/Headers (3.5.0) - - RealmSwift (3.5.0): - - Realm (= 3.5.0) + - PromiseKit/CorePromise (6.2.8) + - Realm (3.6.0): + - Realm/Headers (= 3.6.0) + - Realm/Headers (3.6.0) + - RealmSwift (3.6.0): + - Realm (= 3.6.0) - SVProgressHUD (2.2.5) + - SwiftChart (1.0.1) - SwiftyJSON (4.1.0) DEPENDENCIES: @@ -23,6 +24,7 @@ DEPENDENCIES: - PromiseKit/Alamofire - RealmSwift - SVProgressHUD + - SwiftChart - SwiftyJSON SPEC REPOS: @@ -34,18 +36,20 @@ SPEC REPOS: - Realm - RealmSwift - SVProgressHUD + - SwiftChart - SwiftyJSON SPEC CHECKSUMS: Alamofire: e4fa87002c137ba2d8d634d2c51fabcda0d5c223 ChameleonFramework: d21a3cc247abfe5e37609a283a8238b03575cf64 Kingfisher: 976d828df2b24834c6a3f2fc4d82cdbd26552be1 - PromiseKit: 12b9d87748b170714247d8b2677146ca57e488f2 - Realm: 0378021c424e4e2bd6a0e63b27881e929d9b9ad1 - RealmSwift: 3322562622fda2ad596985ead4d8d8be30cf838c + PromiseKit: 6788ce1a0ed5448b83d4aaf56b9fc49fb7647d32 + Realm: 08b464b462d4f31bbd4ba5f5a1c8722ef0a700b7 + RealmSwift: 973e1499c44ab571f894c2c908e2db450be280c3 SVProgressHUD: 1428aafac632c1f86f62aa4243ec12008d7a51d6 + SwiftChart: ba767a678d568a5ee22d419e146a0582865e1aff SwiftyJSON: c29297daf073d2aa016295d5809cdd68045c39b3 -PODFILE CHECKSUM: 71fcda130d0048fb76ddc9524fd4cdd1df1a0e6f +PODFILE CHECKSUM: 5a9239d1a30e88fe3ab43f13976dd5e699d65855 -COCOAPODS: 1.5.2 +COCOAPODS: 1.5.3 diff --git a/Pods/Pods.xcodeproj/project.pbxproj b/Pods/Pods.xcodeproj/project.pbxproj index 09d1657..9a48ad6 100644 --- a/Pods/Pods.xcodeproj/project.pbxproj +++ b/Pods/Pods.xcodeproj/project.pbxproj @@ -7,476 +7,490 @@ objects = { /* Begin PBXBuildFile section */ - 0096C6816AC3D92834AB65C49518C177 /* ImageView+Kingfisher.swift in Sources */ = {isa = PBXBuildFile; fileRef = ED2EFD32B69A725F7649C183C8E84B4E /* ImageView+Kingfisher.swift */; }; - 0152C9D379A6ACEA02C1930A111C6D2A /* RLMObjectStore.mm in Sources */ = {isa = PBXBuildFile; fileRef = 88F8C0A1A8C3398FDB63B84FAF99D01A /* RLMObjectStore.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 0201DF8385C3D051E629CDB99A022197 /* RLMSyncManager.mm in Sources */ = {isa = PBXBuildFile; fileRef = 58857A4270010E2F66D14D2354BF08EF /* RLMSyncManager.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 0336C81C40377ACD4433BE6A67F4F3E0 /* UILabel+Chameleon.h in Headers */ = {isa = PBXBuildFile; fileRef = 26B697CBDD08FD522107A0DB9A9083BC /* UILabel+Chameleon.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 033B6B31DDA7EC12A698D84D1BBA0132 /* UIView+ChameleonPrivate.m in Sources */ = {isa = PBXBuildFile; fileRef = DFE5B247216F6A8138455A7615B1CF75 /* UIView+ChameleonPrivate.m */; }; - 03E0A134F1DDF33EA16F004F1A230CA1 /* FormatIndicatedCacheSerializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 770E3439F96F9D118B88F51CC177C251 /* FormatIndicatedCacheSerializer.swift */; }; - 03E5875E81EF9BDCD7576261977AB027 /* RLMRealm.h in Headers */ = {isa = PBXBuildFile; fileRef = 36CD4AA8F13F67E62E5EFBFF2A2920C9 /* RLMRealm.h */; }; - 04DBC292DD8492C88E65FE899C1843CB /* RLMArray.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7CB724F58276A5CD525EF79E059935AF /* RLMArray.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 04F39A4F8F7BBF1CB6C6C92277B4D811 /* RLMAccessor.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1495FF97718546ADC39B7A2BE30648C3 /* RLMAccessor.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 06E72D368D657EE3A080F36FF6B07A20 /* RLMClassInfo.mm in Sources */ = {isa = PBXBuildFile; fileRef = C1F15CECB8611E87A6E56FA5E5942242 /* RLMClassInfo.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 0A61472768C589EBA8445C4B4A39CA9D /* Chameleon.h in Headers */ = {isa = PBXBuildFile; fileRef = 2D57200BD530415B65183CAF747BA68C /* Chameleon.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 0AE1942647F494DB6CF220B8E19108AB /* SwiftyJSON-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 9DF5A5C2C25BF5E002D38C5F78F3426A /* SwiftyJSON-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 0CF11FD9A968855BFB98604B70FEB1D4 /* RLMRealm.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 36CD4AA8F13F67E62E5EFBFF2A2920C9 /* RLMRealm.h */; }; - 0D403C6276EA87FDBD0B0D73C3FA3B54 /* network_reachability_observer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 84E2DBAA7FC3FD9C3B086DD17F39FF6C /* network_reachability_observer.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 0FA270E16D0E21096260990F51434E23 /* RLMRealmConfiguration.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 0F8079961C3704B413F60D8FC0202176 /* RLMRealmConfiguration.h */; }; - 0FE7C1EA60B53A404E7663FE2DB72067 /* RealmSwift-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 5007B8D96633285A3070EE20D7FAEDFA /* RealmSwift-dummy.m */; }; - 103228D906B112AA75562E8B17179127 /* Indicator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89B7DEC53BFB6330306600C1EBEBD178 /* Indicator.swift */; }; - 10EB23E9ECC4B33E16933BB1EA560B6A /* Timeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1EC6FD4979BF9C41F049DF0A3B5119B /* Timeline.swift */; }; - 114397DE4A2DC0204868A79F4BE13769 /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1E117D18B362E8C49055BD8D0698C1C6 /* Filter.swift */; }; - 1237B38EB9B34E790AE88CA7DBE68812 /* SVRadialGradientLayer.h in Headers */ = {isa = PBXBuildFile; fileRef = 99E2F10CCB18CA5104A55783194B7F3B /* SVRadialGradientLayer.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 1358626BB5E435800CE979D77A3157E5 /* RLMSyncSessionRefreshHandle.mm in Sources */ = {isa = PBXBuildFile; fileRef = 1D9220E07EB5DB96708E82889E2C4C87 /* RLMSyncSessionRefreshHandle.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 13EB08239D7611C2B40D1C1D38578CFB /* UIButton+Chameleon.m in Sources */ = {isa = PBXBuildFile; fileRef = C0D2CD7CD136DDD331955BFEE9458D0D /* UIButton+Chameleon.m */; }; - 14054DC3A3D7DFFBA317D33199C717DF /* UIAppearance+Swift.h in Headers */ = {isa = PBXBuildFile; fileRef = EC668613833476D5497C3FB1FF4C230A /* UIAppearance+Swift.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 146E22258BCE8F22D2953E08A002165D /* RLMCollection_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = ED1ABB6E30B38A886BE80601229D67B6 /* RLMCollection_Private.h */; }; - 14F4C55A189416A1B6A953AFB96419B8 /* RLMOptionalBase.mm in Sources */ = {isa = PBXBuildFile; fileRef = A1E53F2A4A5B09CD3C0E411A183A09F5 /* RLMOptionalBase.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 155B9904624490248933A8E259D44843 /* RLMRealm+Sync.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 1EE7D2A08897BF700F42FA13772C9637 /* RLMRealm+Sync.h */; }; - 155E67F6AAE40F1B805433BAC8CBBECB /* RLMSyncCredentials.h in Headers */ = {isa = PBXBuildFile; fileRef = D804D42E64241AEFACF1D50AA42FDE37 /* RLMSyncCredentials.h */; }; - 1572FFC0555ABDFED6A008907C9FE236 /* RLMArray.h in Headers */ = {isa = PBXBuildFile; fileRef = 7CE1316F81F624136F84544BA791A7E7 /* RLMArray.h */; }; - 15C53A851BA128EB328652FCB7EC3BE5 /* UIColor+ChameleonPrivate.m in Sources */ = {isa = PBXBuildFile; fileRef = 826073BF674EE51E8F7AA5242AD5901E /* UIColor+ChameleonPrivate.m */; }; + 0011F146F092632175C8D7545356AA44 /* Error.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8748635C7300F9200D1C3B083A9C5ECE /* Error.swift */; }; + 0096C6816AC3D92834AB65C49518C177 /* ImageView+Kingfisher.swift in Sources */ = {isa = PBXBuildFile; fileRef = B2C5BC8F9D3F74D15191F47FB7B5BADD /* ImageView+Kingfisher.swift */; }; + 015A8E5A91228650107FEC4C37EE2573 /* RLMCollection.mm in Sources */ = {isa = PBXBuildFile; fileRef = 6C329AB32D0C2C0E8F3300D62652EA29 /* RLMCollection.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 01FCE63A4826F151D1FC2C85785DB31A /* RLMRealmConfiguration.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = F0967F9F28642BF501CA462A45581601 /* RLMRealmConfiguration.h */; }; + 0336C81C40377ACD4433BE6A67F4F3E0 /* UILabel+Chameleon.h in Headers */ = {isa = PBXBuildFile; fileRef = 3897F2C01770DE95C588C28C3241E47E /* UILabel+Chameleon.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 033B6B31DDA7EC12A698D84D1BBA0132 /* UIView+ChameleonPrivate.m in Sources */ = {isa = PBXBuildFile; fileRef = 0ADB12423AA8940DAAB2C57CF50D618C /* UIView+ChameleonPrivate.m */; }; + 03E0A134F1DDF33EA16F004F1A230CA1 /* FormatIndicatedCacheSerializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9219FD5E8223E62D5964FCE2990ADC6B /* FormatIndicatedCacheSerializer.swift */; }; + 041CF45A4C3FE1B29C243C49C94BDE2C /* race.swift in Sources */ = {isa = PBXBuildFile; fileRef = 959493D71FD0A4BA2E655D786ACFCD6B /* race.swift */; }; + 07A2F3311B1996E82CCCC9B52A74DD06 /* RLMSyncManager.mm in Sources */ = {isa = PBXBuildFile; fileRef = 332D7415C3936F8158E7020EF9F244A9 /* RLMSyncManager.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 08C285384BBDAD8AA4D5B78E94C9C537 /* sync_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0712E727FA0BD0C1005CFE322655ECAF /* sync_config.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 0A61472768C589EBA8445C4B4A39CA9D /* Chameleon.h in Headers */ = {isa = PBXBuildFile; fileRef = 57B6DF119EF2A8AC5070E5E6C8352A03 /* Chameleon.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 0CA0B19604E16AD3F7E3FF55E4EF80C3 /* RLMSyncPermission.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0186D7FF06B2AA0CF675B262569B6875 /* RLMSyncPermission.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 0DC9F432AF3A12A54FCBC7529B01C818 /* RLMMigration.mm in Sources */ = {isa = PBXBuildFile; fileRef = 09BB08D7F1E09355F8763CBD15AE482A /* RLMMigration.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 0F648CDE078F10A037E99786595A05DB /* Thenable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2A508549D773152C50D7A7F0D30E6C6B /* Thenable.swift */; }; + 0FB0E6689619D731565689FC7BCE4B02 /* SwiftVersion.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6D398BF7F0C68524EEBB8EC767B71417 /* SwiftVersion.swift */; }; + 103228D906B112AA75562E8B17179127 /* Indicator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3A9097BC27D5E2DB6D3ECFAA0B466B9D /* Indicator.swift */; }; + 105CA179DB547746BBD054289714F6A7 /* RLMPlatform.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 00DE87D841A65ABEF675A7CC4B75375E /* RLMPlatform.h */; }; + 1085A2D7CD74CE5E80736375B4D0287B /* Error.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5FCCA2362239AA24556A9225003BC1C2 /* Error.swift */; }; + 10EB23E9ECC4B33E16933BB1EA560B6A /* Timeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4727E0C9C008FC30988DDFD3DCD8F15 /* Timeline.swift */; }; + 114397DE4A2DC0204868A79F4BE13769 /* Filter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7FB017EC13054E1B53F9CA04B114CC8B /* Filter.swift */; }; + 115548A9179EADD8976A6DB288DDD599 /* SVProgressHUD.h in Headers */ = {isa = PBXBuildFile; fileRef = 936CD07388EDC2494410B80CC4717FF1 /* SVProgressHUD.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 121E279861D9396541DF2359818F3209 /* RLMOptionalBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 5AC75EF75E9BA81C6A4C393D8867A083 /* RLMOptionalBase.h */; }; + 124BA52D04120B92AADBF8657F1922F5 /* PromiseKit-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 66E9A978132CA9F57F2D4CA537E462AE /* PromiseKit-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 133DF8FF807A8B4F2FDF4BC84DAF2970 /* sync_session.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 92B8EF7ABDC366751FCC007B516BBBA0 /* sync_session.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 13BDEE662A8330D027C5570EAFD19374 /* RLMObjectSchema_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = CB9B9B9E87CF5A6EA2132C6AC6FCF64C /* RLMObjectSchema_Private.h */; }; + 13EB08239D7611C2B40D1C1D38578CFB /* UIButton+Chameleon.m in Sources */ = {isa = PBXBuildFile; fileRef = 5EDCB4D713194B7985A3F1A40A6CAF59 /* UIButton+Chameleon.m */; }; + 14054DC3A3D7DFFBA317D33199C717DF /* UIAppearance+Swift.h in Headers */ = {isa = PBXBuildFile; fileRef = 4F3DAD915963159344F4BBDBBF1F0F96 /* UIAppearance+Swift.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 1510F6BF42615FE25B724174AF2D4A19 /* partial_sync.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 76A24C263F2C65318ED5356308F9EB92 /* partial_sync.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 15C53A851BA128EB328652FCB7EC3BE5 /* UIColor+ChameleonPrivate.m in Sources */ = {isa = PBXBuildFile; fileRef = F3EC90777F4DA5BFBEFB31392629C1F3 /* UIColor+ChameleonPrivate.m */; }; 16EE5C06E752577CE8F678180494E75B /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C18FDC08C1866ACB755BC6456D9F9CF7 /* QuartzCore.framework */; }; - 17C8CA299DD773CD440F971C2CE56FBD /* RLMSyncConfiguration.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = E15AD57F580DA9006D796E2A65A7BFC1 /* RLMSyncConfiguration.h */; }; - 18371F48EC2B4BB8A31F58E012369C5A /* List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6218F75F5E45FC44A38B246DCFB7D99C /* List.swift */; }; - 18AA9DD0A765349ED1E41AE756273B27 /* LinkingObjects.swift in Sources */ = {isa = PBXBuildFile; fileRef = A518D5C15C64E60C4704A532F8940FE2 /* LinkingObjects.swift */; }; - 1A4CFF6AA53C3FE89399A7E31E0D8A51 /* RLMObjectBase_Dynamic.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 2A9BA425FE31717AB19E3A3097EE305B /* RLMObjectBase_Dynamic.h */; }; - 1AFC8EC5505598E3223AC779CB72DB33 /* Aliases.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288AF01C4A222E31D00D561C1AF25AD6 /* Aliases.swift */; }; - 1B1078CFE90683458030F37AF69C8EE4 /* SVIndefiniteAnimatedView.h in Headers */ = {isa = PBXBuildFile; fileRef = 9D70898FD33E840C5160570CF4C490C8 /* SVIndefiniteAnimatedView.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 1B9EDEDC964E6B08F78920B4F4B9DB84 /* Alamofire-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 117A0AE9467FE5334200DCC48CEC1D1E /* Alamofire-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 1BB99DA799A7D520955479C9EC8011BD /* RLMNetworkClient.mm in Sources */ = {isa = PBXBuildFile; fileRef = AA9825BC28B7013AE0262E5583AC6D62 /* RLMNetworkClient.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 1F5FC076F6CBA4DDE356092E24DC5728 /* RLMObjectSchema.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = BA011A254773214FB91EB23A757D5276 /* RLMObjectSchema.h */; }; - 20331C1242F0C26A874ABBA063957D69 /* RLMResults_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 691A676C2CB0F041321DE2EC6B1DC6E0 /* RLMResults_Private.h */; }; - 2283375C0C99789CF47EEDA0CE9D3D80 /* ImageProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = BB27A01EEF1BDDFFD7DC732DB29217FB /* ImageProcessor.swift */; }; - 24B418B6BC098192B5F321422671B8CB /* UIAppearance+Swift.m in Sources */ = {isa = PBXBuildFile; fileRef = 3716B1762FE6B9752E70444025FCC126 /* UIAppearance+Swift.m */; }; - 24F01086052CA1FBFD2A801CC707A5ED /* schema.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7F9B8100B2293A4B9350ED4A123DAB27 /* schema.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 25397B9B0D33C7464FE156B508E687C6 /* results.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F6408D6165CC25B839381430FEA0FB6E /* results.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 25A3B5DA4EAFAFEF718CCAFA5AC14C5E /* RLMRealmConfiguration+Sync.mm in Sources */ = {isa = PBXBuildFile; fileRef = 86D2FFDD8FE3111B425D105A48D64A75 /* RLMRealmConfiguration+Sync.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 285930D28A0EE951735A7C42D24C7B02 /* RLMQueryUtil.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9B9E781E34077602231B53C8023E93A7 /* RLMQueryUtil.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 28AF654095F7663DDEF59AA78063D6BF /* RLMObjectBase.mm in Sources */ = {isa = PBXBuildFile; fileRef = E97D9B22220A23A1490C3F3F5C457248 /* RLMObjectBase.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 2A6FEA300D17E6C1EAFEDB1A24CD0F97 /* CustomStringConvertible.swift in Sources */ = {isa = PBXBuildFile; fileRef = DCDFDE0AD4F69DD1C5F5B7328B40704E /* CustomStringConvertible.swift */; }; - 2ABE0F8940C00BD429E33ED7F7C9EA1D /* KingfisherOptionsInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = CAB1622FEE145C9A8F8B8F1014C7D366 /* KingfisherOptionsInfo.swift */; }; - 2AFA4D94F1B847EFF1DDB43D98F26BF7 /* Realm.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3BE718D082634402330BCE0909C8FA7B /* Realm.framework */; }; - 2B77CF63846D801D73A0259A68FA3D8C /* PromiseKit-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = A78D5B018265ACE9814B0AAB5B85B375 /* PromiseKit-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 2C7A0E227262A15CE5263DABA25E794E /* RLMRealm_Dynamic.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = E9EDC2A9336BE94BA578B012CDF74FD0 /* RLMRealm_Dynamic.h */; }; - 2CAE17ABD146DB4A8D5AFDF2AABEBBED /* results_notifier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 203EA9B7A6420680B177FF54A356722D /* results_notifier.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 2D28A36D3A27FD6C2376F095E31CF22B /* RLMObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 0AA1646FD24396E0B81DA8DFA88BDEB4 /* RLMObject.h */; }; - 2DF7DCDE51DE3D58384148E5CE8AB1CA /* RLMObservation.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3B996A355B6ECB5A84056BE1396CB933 /* RLMObservation.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 2F1544E01944DBB51C4CD4D3213DAD7F /* hang.m in Sources */ = {isa = PBXBuildFile; fileRef = 279BB1824750089DA9C2714A4AC85295 /* hang.m */; }; - 323027C66BD13D2E54C853FE2E404C6A /* RLMCollection_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = ED1ABB6E30B38A886BE80601229D67B6 /* RLMCollection_Private.h */; }; - 3453BD0F4FADD988A9CB73717F8BC1AD /* RealmSwift-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = A70BDE5189C7520673EB6E6CB6F896AC /* RealmSwift-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 3464228E4F1F63DBCA803CC848A6A8C0 /* Resource.swift in Sources */ = {isa = PBXBuildFile; fileRef = BA20F6DC726D1AA96BC9B9AE042A35BB /* Resource.swift */; }; + 16F755DA8EC58BFCD340C243027900B9 /* SwiftyJSON-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 816D222060828A34C1E58D402F34FAE8 /* SwiftyJSON-dummy.m */; }; + 17B96459DF28E9C91053DE70C3F63385 /* RLMOptionalBase.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 5AC75EF75E9BA81C6A4C393D8867A083 /* RLMOptionalBase.h */; }; + 17DD09DFCB348339608DD041E8024E93 /* RLMObject_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 857917D6BF444E8985C3335FE4E14AB2 /* RLMObject_Private.h */; }; + 185FC9BDD5DD4B89F19EC2F33CF4FD82 /* RLMSyncUser.mm in Sources */ = {isa = PBXBuildFile; fileRef = ADDD57D0E4D5BBCBD1CEDFAF9506F54E /* RLMSyncUser.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 1901D0C501CCB3E0BA2B25897C70A341 /* RLMListBase.mm in Sources */ = {isa = PBXBuildFile; fileRef = A437EDD918468B6F6921037E78334545 /* RLMListBase.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 1AC94E71D7E48ADE9E5DF96BF366E5BD /* RLMListBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 430E903FD52B93897ABB8515CD13B8B6 /* RLMListBase.h */; }; + 1B9EDEDC964E6B08F78920B4F4B9DB84 /* Alamofire-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 4597E0C0CE3F120795550AA2F66773D8 /* Alamofire-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 1C31A9ADE0DE6BE89548A49316CD977B /* Object.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6C88151378845D023AF67DFB3479F7B9 /* Object.swift */; }; + 1E3F40BBD2BD9AEDCDE43244DEC1E194 /* ObjectiveCSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = 47975F5348BC70268AFB01E1DE82DADA /* ObjectiveCSupport.swift */; }; + 1F1392E0248FADC79D3CBA4B42898651 /* RLMPlatform.h in Headers */ = {isa = PBXBuildFile; fileRef = 00DE87D841A65ABEF675A7CC4B75375E /* RLMPlatform.h */; }; + 207ACD858D025BAB5732E0805C5AFD30 /* Sync.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5286C75A0CB7B7AAB14AA8069F68005A /* Sync.swift */; }; + 2283375C0C99789CF47EEDA0CE9D3D80 /* ImageProcessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 39F891C0D105C3D7B82AC48E01930036 /* ImageProcessor.swift */; }; + 22AFED4516443FD8EA2AC089E2E19890 /* RLMCollection.h in Headers */ = {isa = PBXBuildFile; fileRef = 07E6790A3D1E3164684BAFAF643F949B /* RLMCollection.h */; }; + 239ECD7661AB6C0082FC0AB33D60333A /* RLMRealmConfiguration+Sync.h in Headers */ = {isa = PBXBuildFile; fileRef = 0257ED3312238D6F28490F9540A4D92F /* RLMRealmConfiguration+Sync.h */; }; + 24B418B6BC098192B5F321422671B8CB /* UIAppearance+Swift.m in Sources */ = {isa = PBXBuildFile; fileRef = 742D94437DE4E658881F39F5A0F00ED0 /* UIAppearance+Swift.m */; }; + 24CE9CF4F51CB1A0F0325C10300DCBAC /* NSError+RLMSync.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E3C7CBB281D7EFA8906D97D0D74E98F /* NSError+RLMSync.h */; }; + 257A407DA407683F17726A80A73497C0 /* SVProgressHUD-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 033BECE918B1FBD37D5C586FDB9A88FE /* SVProgressHUD-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 2683C20AEE1CAE622D7648F736B4E7D9 /* RLMSyncCredentials.h in Headers */ = {isa = PBXBuildFile; fileRef = B04A3B8874B83F4558B31ADCD4D48784 /* RLMSyncCredentials.h */; }; + 2776616C13DDE0A9811BBC8E4925288B /* NSError+RLMSync.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 6E3C7CBB281D7EFA8906D97D0D74E98F /* NSError+RLMSync.h */; }; + 2ABE0F8940C00BD429E33ED7F7C9EA1D /* KingfisherOptionsInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = FE7C6F13939F14802A9A1BD79EAC1D4A /* KingfisherOptionsInfo.swift */; }; + 2BC063BB8FCB32FA37DAB408354FA34E /* RLMSyncConfiguration.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 35F8599E05E36E8DA489400EE58FEF9A /* RLMSyncConfiguration.h */; }; + 2CED3D98C9EA9B5705D4B2614B58B73E /* RealmCollection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2FE7DC15D8CBB0C24E5985CCE0A95CCC /* RealmCollection.swift */; }; + 2D2E7947CED10B3BBF948F7DF1B58F35 /* RLMAnalytics.mm in Sources */ = {isa = PBXBuildFile; fileRef = 395EE7831170F49D37AF9DD819F59595 /* RLMAnalytics.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 2D8A293FDD520AFEA4E8A6C6DDBA3D5D /* when.swift in Sources */ = {isa = PBXBuildFile; fileRef = B578193AE36AEC6E5A4DD7ABA452296C /* when.swift */; }; + 2E04583D8FE05816DA7D896E8F693B2D /* after.m in Sources */ = {isa = PBXBuildFile; fileRef = E952E44C64CC59E5A7D6F8EEB2DFCAAA /* after.m */; }; + 2E6EE785D71DBFAEB789FD4CCD03F1A8 /* RLMProperty.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5F27F3A93D04D26D8BE8E6A4CDCE3CAC /* RLMProperty.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 30DA67137F360FE4DE22FDA4C41348B4 /* RLMRealm+Sync.mm in Sources */ = {isa = PBXBuildFile; fileRef = 77EEC43ED2E8ED0420AE5DC19CF79C92 /* RLMRealm+Sync.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 3135E2F1DA09948937FDA6043B80BC47 /* Pods-pocloud-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 39805068056EB58D370D71A27CD2F678 /* Pods-pocloud-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 326D57C1814A1B1E7BDFBC8527DA9A51 /* RLMObjectBase_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 3EF09A8B74C85C9AFABDEDBD6238F0B7 /* RLMObjectBase_Private.h */; }; + 3464228E4F1F63DBCA803CC848A6A8C0 /* Resource.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88472B117B54DD52258401D62D8AE5CE /* Resource.swift */; }; + 348A66E5C5CCE97570EF38396D0D7EBF /* object_store.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A4D9C83C2F04C2EA10710B761189AB75 /* object_store.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; 35F9C44445E9A411F63880FCF5088441 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8E96D57D774FB575BB6B3CB8D816916 /* UIKit.framework */; }; - 3626B94094672CB1C9DEA32B9F9502E1 /* TaskDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = D08F36AD51AD0F8416553B4B9E3A55A0 /* TaskDelegate.swift */; }; - 363E78E9C5CB206EBAE7EF27172D74EE /* work_queue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 69F41C00D9BB7F5C6387521BEBAE8C5E /* work_queue.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 39BC88D99C1170210412AC0DE5F3F84D /* RLMProperty_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = FB161B5A3367EE87312EEC0DDD1EE185 /* RLMProperty_Private.h */; }; - 3A104499DFFE98B99043751CAF77004A /* RLMJSONModels.m in Sources */ = {isa = PBXBuildFile; fileRef = 810638791DBF1E39B34B97051435B201 /* RLMJSONModels.m */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 3A24837A52F27AE3A2055815ED77C84D /* shared_realm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 325E0ED2B73306069C971D15A9C32513 /* shared_realm.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 3A74AEC1499DE16C4675686386C55D57 /* Resolver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F794A65CE066A9DD85CB989C332819A /* Resolver.swift */; }; - 3AA528A6C74ACB87BC3C01E5A1FD3AFE /* UIColor+Chameleon.m in Sources */ = {isa = PBXBuildFile; fileRef = B369F40D6E1C57F79FBC6C7062160819 /* UIColor+Chameleon.m */; }; - 3B90A3763E1941468EB5C35E141D8CC5 /* SwiftyJSON-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = C1E6D0BE26CC4AD1D80434C026C6294E /* SwiftyJSON-dummy.m */; }; - 3C1A7460FC8CA2298DA7F9CD0C63470F /* Chameleon_.h in Headers */ = {isa = PBXBuildFile; fileRef = 2F027E0F35FE004F339CCDE1949B0733 /* Chameleon_.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 3D7013F88DEDF9F01BDE2D6A6BD217D3 /* RLMSchema.h in Headers */ = {isa = PBXBuildFile; fileRef = EF9385A4348055A59474B2BEAD29C9EE /* RLMSchema.h */; }; - 3DB21805642030AC749620B6CA5BE711 /* RLMResults_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 691A676C2CB0F041321DE2EC6B1DC6E0 /* RLMResults_Private.h */; }; - 3F95B3CC6D7295F23A485CF492D73350 /* RLMCollection.h in Headers */ = {isa = PBXBuildFile; fileRef = C32B33B51C2DF6543DE5A46287CB8564 /* RLMCollection.h */; }; + 3626B94094672CB1C9DEA32B9F9502E1 /* TaskDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3213EEED9AF86A39E2C3DE4CC578BB10 /* TaskDelegate.swift */; }; + 36B457655F639EC45F7EE162B7E68F92 /* SVIndefiniteAnimatedView.m in Sources */ = {isa = PBXBuildFile; fileRef = CA7F4E6DC0F879159D640239794AACD2 /* SVIndefiniteAnimatedView.m */; }; + 371E25D5B3D2F2423DE9CE5A0E6C6035 /* RLMRealm_Dynamic.h in Headers */ = {isa = PBXBuildFile; fileRef = 5AE42C969A99D38B4F7FBE25B00A962F /* RLMRealm_Dynamic.h */; }; + 38A70F983905FB03B845DAE061BF7E11 /* dispatch_promise.m in Sources */ = {isa = PBXBuildFile; fileRef = 0FCBC5B3C38D32A7F45D1DA22BD87B65 /* dispatch_promise.m */; }; + 393C9366E4F286889AA104F0CA070E36 /* RLMSyncUtil.h in Headers */ = {isa = PBXBuildFile; fileRef = F90C6667BE5F969C6C6A89B01EF88909 /* RLMSyncUtil.h */; }; + 394D09CA655A057439243B3A0569A704 /* RLMClassInfo.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2F6BE2672CF829FA8CE19678E9CEAF02 /* RLMClassInfo.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 3A6FB49BFE14821631C2E207AD6CF5F7 /* RLMThreadSafeReference.h in Headers */ = {isa = PBXBuildFile; fileRef = 6603939CC5A8D3E59297D5C771964301 /* RLMThreadSafeReference.h */; }; + 3A98901F84E6E8704CBF9B261745D44E /* AnyPromise.m in Sources */ = {isa = PBXBuildFile; fileRef = 50B057067CD3D377D62F03A87237D7D2 /* AnyPromise.m */; }; + 3AA528A6C74ACB87BC3C01E5A1FD3AFE /* UIColor+Chameleon.m in Sources */ = {isa = PBXBuildFile; fileRef = 38A91E765AB224793D503E47DE25F967 /* UIColor+Chameleon.m */; }; + 3B319F00FBFC3D4F4C401CFF4B39E71C /* Resolver.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1FEDBC380D7CCDDC3CCA561F541E677E /* Resolver.swift */; }; + 3B3846662C014C4FC78231325AE4B45D /* NSError+RLMSync.m in Sources */ = {isa = PBXBuildFile; fileRef = 5968E3F1ADB1F6151D68974774557F16 /* NSError+RLMSync.m */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 3BBFB455DFD106C8A487BB4F6083FB43 /* Migration.swift in Sources */ = {isa = PBXBuildFile; fileRef = A5801F6E0E6189B6372DFC83650072DC /* Migration.swift */; }; + 3C1A7460FC8CA2298DA7F9CD0C63470F /* Chameleon_.h in Headers */ = {isa = PBXBuildFile; fileRef = 48E6F647FE2BD50C532EBA0B41860385 /* Chameleon_.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 3D1EFBEAB5B145B43CB9C87B085173E0 /* RLMMigration.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = F267BDEF56530ADE06BEB781B7A96C8C /* RLMMigration.h */; }; + 3F94C09064A375E11B531C3A143C8DBD /* SwiftChart-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = B33C26C5E25552E6B15683259CA5E7DA /* SwiftChart-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 3FAA2756E6A4384AEBE370F7C8479179 /* sync_file.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E613A12D65DCDDFB89BF512E54016D0E /* sync_file.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; 403E3E170DCF269D5CBA1C530ECA901B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 44DE4DEFAF0B71D0962C7C82D578B0A7 /* Foundation.framework */; }; - 4074AA6F2557EF7970DEDE67B04433B6 /* AnimatedImageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2448C86632282954B5EBA4554B249AD2 /* AnimatedImageView.swift */; }; - 448C153F79E73205F04949A8228A3CB4 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 44DE4DEFAF0B71D0962C7C82D578B0A7 /* Foundation.framework */; }; - 44ED7069DFBED9C2FD7B2D308AAD1DC3 /* Guarantee.swift in Sources */ = {isa = PBXBuildFile; fileRef = D232412C87D973AA69865099C3146475 /* Guarantee.swift */; }; - 455F55B57D71F31F594866FF9F5CD3D5 /* RLMSyncUtil_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 91F65679EC921B36EBC32F9C55BFAC47 /* RLMSyncUtil_Private.h */; }; - 473B111A462D4964AABD7DBBA5AAD5EA /* realm_coordinator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 42514FBA011623E5533117822AA5C460 /* realm_coordinator.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 48F1470AB6BBF124094CA124D6310677 /* UINavigationController+Chameleon.m in Sources */ = {isa = PBXBuildFile; fileRef = 2266DAC3F473C78462692AB5ED9190E1 /* UINavigationController+Chameleon.m */; }; - 493F116D2ACFF2D947E6F334FE73C1BC /* UILabel+Chameleon.m in Sources */ = {isa = PBXBuildFile; fileRef = D570F56FBC37CCC325DE809BCDA7B7CA /* UILabel+Chameleon.m */; }; - 493F21AB7CB21DFF935311126129FE54 /* PromiseKit-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 793A8DC7498F5C2F4ECBD5970AA23E05 /* PromiseKit-dummy.m */; }; - 498DC29155467AC093701C1AF5EE3807 /* Placeholder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0EA67006E0ABBE1584991474FE278FC2 /* Placeholder.swift */; }; - 4B101377001B7E4AD4C23C9FBA3B4459 /* RLMSyncSession.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 8FE2AF51D54D8C90660387FB02C44062 /* RLMSyncSession.h */; }; - 4CA47DA355F9B3E4A3917388D70B9250 /* UIColor+Chameleon.h in Headers */ = {isa = PBXBuildFile; fileRef = 94ABEBD69A3D65AE2F7548B8D3A29964 /* UIColor+Chameleon.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 4CB0F7FFB410A0E92539D17E4DB30BCD /* binding_callback_thread_observer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 9DA895BCF2B9FD46CFF0B133BFED9F6A /* binding_callback_thread_observer.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 4E087B1E1F92F260FF76EC76B1A875E8 /* SVProgressAnimatedView.h in Headers */ = {isa = PBXBuildFile; fileRef = 259C43EA401F22B5AD8A0D90EAEAD829 /* SVProgressAnimatedView.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 4E27F2292740DCDC63080D90BD7F7163 /* Chameleon_.m in Sources */ = {isa = PBXBuildFile; fileRef = 8B9CAF50A856109C0487E31A7B022AC3 /* Chameleon_.m */; }; - 509A5621DAB44B06929B30ACCA7CA598 /* Kingfisher-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 8A868E0FF0D422C57BE453DDF7272C7A /* Kingfisher-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 52015A87F9EDE8DC0AAA92AC6E6399B3 /* partial_sync.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 833B4223165CBCA46776F13EE5F85782 /* partial_sync.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 5387216E723A3C68E851CA15573CDD71 /* Request.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2323219FD87357687894D4EDCD2C856D /* Request.swift */; }; - 545B07FF4312DD14132EAC798C248F03 /* race.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7FA755EB6ED6C584BC8DB1FFC4736DAE /* race.swift */; }; - 54CAB4E38734B41CFCED43101B2D0671 /* Realm-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 4B90D360FB01D8D65E88387B2320B050 /* Realm-dummy.m */; }; - 5521C7CFAB261419BDC704028769EDD5 /* Alamofire+Promise.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D0ABB028458C3662BD35EB8BFD716DD /* Alamofire+Promise.swift */; }; - 5632EE631F6B39FD7C82FD296A2959FE /* RLMRealmConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F8079961C3704B413F60D8FC0202176 /* RLMRealmConfiguration.h */; }; - 583ADF42363D7A256173B58DE7B44871 /* sync_session.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 43D9D01F16807409B6C7E64CF4FF94A0 /* sync_session.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 59B1A201CFB8137EB98CBDA2FA011E4A /* RLMObjectBase_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 69EE522272ED3216D2EF5F104485F126 /* RLMObjectBase_Private.h */; }; - 5AB2933B1FE2C19BFEDB43DA719DCBCC /* RLMObjectSchema_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = FF077ADE2FCBA19A581C461C2B40CF37 /* RLMObjectSchema_Private.h */; }; - 5B0E9244FBBAE11C721E0682B6DF673A /* when.swift in Sources */ = {isa = PBXBuildFile; fileRef = F94D2C88074E79C241631BD487FD476F /* when.swift */; }; - 5C0DD32E010576A2A38A32768D44538A /* when.m in Sources */ = {isa = PBXBuildFile; fileRef = 2D76CBD80AC6B1BCF6DA1BBC110D1E10 /* when.m */; }; - 5C8F203DAFB89F593896D235E30DFC97 /* RLMObjectSchema.h in Headers */ = {isa = PBXBuildFile; fileRef = BA011A254773214FB91EB23A757D5276 /* RLMObjectSchema.h */; }; - 5CADD0254C8442F94E51AA85E4310D25 /* UIViewController+Chameleon.h in Headers */ = {isa = PBXBuildFile; fileRef = 5424385AC1912D055BFCE4CA118DDE8E /* UIViewController+Chameleon.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 5D36A8D819BFA7737FE88EC9FE98B7B0 /* dispatch_promise.m in Sources */ = {isa = PBXBuildFile; fileRef = 2932FBE3B9839F2EA9D64C72BF76C2B7 /* dispatch_promise.m */; }; - 5DDA08A7C9999200A0DBB9443842DBDF /* RLMResults.mm in Sources */ = {isa = PBXBuildFile; fileRef = DD7072E4BFE128305640C3FB9FAEF961 /* RLMResults.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 5EEB5FE83824DE028A44AF777A15F6A1 /* sync_file.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 09DE2237E50C91B08EDB830A6F9075B8 /* sync_file.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 5FEE17F4E325DA06CC46A8F0033E124A /* RLMRealmConfiguration.mm in Sources */ = {isa = PBXBuildFile; fileRef = 63CF2F37C975390164EEA66401D07AB3 /* RLMRealmConfiguration.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 61200D01A1855D7920CEF835C8BE00B0 /* DispatchQueue+Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7BAD62C91B37F95A7F092090D6700654 /* DispatchQueue+Alamofire.swift */; }; - 62F65AD8DC4F0F9610F4B8B4738EC094 /* ServerTrustPolicy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 804EB36C9AE72E4B0422B79432774B4F /* ServerTrustPolicy.swift */; }; - 63189090DE445AE5AE38E8863167A022 /* RLMProperty_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = FB161B5A3367EE87312EEC0DDD1EE185 /* RLMProperty_Private.h */; }; - 6331D559851CE0A6F3B1C77E992842AC /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 44DE4DEFAF0B71D0962C7C82D578B0A7 /* Foundation.framework */; }; - 6486781D756A9D71FE5C6E56CC9A343F /* ImageCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = 613EA807D186572DAB1A10C020781DE3 /* ImageCache.swift */; }; - 64C27793815E3C640C896DD3E243477C /* NSError+RLMSync.h in Headers */ = {isa = PBXBuildFile; fileRef = 34B788F212A049CD605C82D6BF10EE0F /* NSError+RLMSync.h */; }; - 653DC7F5979ABAEBA562ACFB5D0092A5 /* list_notifier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 015B1073EABE6B3663D301C245081D96 /* list_notifier.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 66130FDE8FEDDD3AE44E9CB237EC19DD /* ChameleonConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = B4FBD20E27C4D8E6B7D4596B8DE6BAE2 /* ChameleonConstants.m */; }; - 66EEB4298E734B92B3F97B6D24022570 /* NSError+RLMSync.m in Sources */ = {isa = PBXBuildFile; fileRef = CD29D155F362C0B37BA7B1F5BC95674F /* NSError+RLMSync.m */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 6830F0A480AB0DFBE47008CE956BBA55 /* RLMSwiftSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = A7914B286DCAC9EBECAA94F66F858235 /* RLMSwiftSupport.m */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 687EF483180FB6CAE24267821208369B /* SVProgressHUD-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 1B8EA55E1C62F7FE5AF764B84332BF9B /* SVProgressHUD-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 6B318808FC43C5868C5258DBB33E99DD /* Deprecations.swift in Sources */ = {isa = PBXBuildFile; fileRef = A115B496CC87566612F6B2C40E3C3F34 /* Deprecations.swift */; }; - 6B59FB52A7323B107933E63C58823BC9 /* SVProgressHUD.h in Headers */ = {isa = PBXBuildFile; fileRef = 6E3E1B4A705B951CE23EE3BB9CC1CCB4 /* SVProgressHUD.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 6B6588FA133D12CE3E0E0967E7E8EE84 /* RLMArray_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 4C4D0A5B4C1F720C7FABD57EDED4231C /* RLMArray_Private.h */; }; - 6F853EC144957BB1E8D3A8FD6B984B19 /* PromiseKit.h in Headers */ = {isa = PBXBuildFile; fileRef = 0642BB0E732F952139B90AD3BCE75F7A /* PromiseKit.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 7017D84F388E31DDE96EA81B083BD284 /* RLMObjectStore.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 32A09A21339684C5DD6CC19018F1D774 /* RLMObjectStore.h */; }; - 70297ABF69F651EAF8E5F968E3811211 /* ChameleonFramework-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 04DEB9F9CDDFBB007909437B7AEBB2EF /* ChameleonFramework-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 70808866B0C3D5A20FA8F8863E9B19BB /* RLMUtil.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9AB1D3B47586EAF37CE0FC2D96E3C65F /* RLMUtil.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 7230498DCC8F6020F23E7595E2F1E792 /* UIView+ChameleonPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = E8CA97EF476B1BBC6DA9DDF5E4AD6AE9 /* UIView+ChameleonPrivate.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 4074AA6F2557EF7970DEDE67B04433B6 /* AnimatedImageView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9D029DC1A613CFDFD9713293C0629203 /* AnimatedImageView.swift */; }; + 41250DF6187ABEACE3501399AE521733 /* Property.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1A059D53313CF9882AE7A44B58170985 /* Property.swift */; }; + 41C0CEE2CA82C86D00F1B6CDAD3772B4 /* RLMCollection.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 07E6790A3D1E3164684BAFAF643F949B /* RLMCollection.h */; }; + 4247F140F063F88F8F24C74C14169107 /* uuid.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E5ABB25E379859D47265F2097C96DB0C /* uuid.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 430CD5219E08E94729DF051F09EAA047 /* RLMAccessor.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9CF1DD8BC8ED7A3E4721B3ACAE9A76D3 /* RLMAccessor.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 4458CC012D0B2D38A6F87258D7FF0A2D /* RLMProperty.h in Headers */ = {isa = PBXBuildFile; fileRef = F100498E3A55FCD698343AE663FBC533 /* RLMProperty.h */; }; + 454CA2F531ABEB3A1E94D30B9DABE1BC /* collection_change_builder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0850078DD2527CF121657494F188F14B /* collection_change_builder.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 46249F1FB82D3FD5A6239034F35D7C89 /* join.m in Sources */ = {isa = PBXBuildFile; fileRef = 450FA9039C576DF6FA9F9E12DD4C3FEF /* join.m */; }; + 47246E9E63042B13AE5E8B0C9F288E06 /* AnyPromise.h in Headers */ = {isa = PBXBuildFile; fileRef = 3D4975867781530628E20A11F465EA59 /* AnyPromise.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 4801AF02D4878B319E8721932D223AA2 /* RLMSyncManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 98BE3F0DB94502FAD3F69D53423B52D2 /* RLMSyncManager.h */; }; + 48DFBB9AAA1E7E3126148A3391DAB75A /* RLMAccessor.h in Headers */ = {isa = PBXBuildFile; fileRef = 7BCD9D98544104A361E93BA03EDE97FB /* RLMAccessor.h */; }; + 48F1470AB6BBF124094CA124D6310677 /* UINavigationController+Chameleon.m in Sources */ = {isa = PBXBuildFile; fileRef = 5FA917B1D37C02352E7C1D9E0E599FA5 /* UINavigationController+Chameleon.m */; }; + 48F1774B40413C7CD22CDE2349A50928 /* RLMResults_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = E368D0F9301094C0876677C1EDA28AAF /* RLMResults_Private.h */; }; + 493F116D2ACFF2D947E6F334FE73C1BC /* UILabel+Chameleon.m in Sources */ = {isa = PBXBuildFile; fileRef = D90E8890249BDC47B817968A9A80B81F /* UILabel+Chameleon.m */; }; + 498DC29155467AC093701C1AF5EE3807 /* Placeholder.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEFBCB31C513282CB43F15B7BAB3D159 /* Placeholder.swift */; }; + 4A47EDF69E6BD96646DC547E3452F2DB /* RLMRealm.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 282ADBD426BF6ABFAC0BE91ED24B6CC0 /* RLMRealm.h */; }; + 4AB297BEB5B56598CB85826921955C86 /* RLMUtil.mm in Sources */ = {isa = PBXBuildFile; fileRef = 789902666C34CFD7875524CC17F0F84C /* RLMUtil.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 4CA47DA355F9B3E4A3917388D70B9250 /* UIColor+Chameleon.h in Headers */ = {isa = PBXBuildFile; fileRef = EBE60FEFC446259A428A5E006F6890D7 /* UIColor+Chameleon.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 4E27F2292740DCDC63080D90BD7F7163 /* Chameleon_.m in Sources */ = {isa = PBXBuildFile; fileRef = 8A19A28DD4A622AB5295E5C80E3A1B6D /* Chameleon_.m */; }; + 4F227745550A1F79C0E359B548E2D848 /* RLMArray.h in Headers */ = {isa = PBXBuildFile; fileRef = F79570CF737176CFFBF9D891400C15A9 /* RLMArray.h */; }; + 501097B30CA7A20A5A03355BF6FA2D94 /* race.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CA5424E77ADE6E9FBBBC12E067B81FC /* race.m */; }; + 509A5621DAB44B06929B30ACCA7CA598 /* Kingfisher-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 58E2B8F8993302603FD006E07C2CFC72 /* Kingfisher-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 53600FB3C3C2EC68B2A7E5823956158D /* RLMRealmConfiguration+Sync.mm in Sources */ = {isa = PBXBuildFile; fileRef = 6DCAE60115007E4EDEABA45D6B13CBF1 /* RLMRealmConfiguration+Sync.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 5387216E723A3C68E851CA15573CDD71 /* Request.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75ED9E29508835F901F7BADBF7FA83B0 /* Request.swift */; }; + 54492DC67B8214204D598E3497D74591 /* RLMProperty_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 6FFFBE35D8CD37E4F96DFDC919412F64 /* RLMProperty_Private.h */; }; + 55141DFB9D7F9B7E6EF5B91C79B425B3 /* collection_notifier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A9B8919AB39D17A578CED457944217FF /* collection_notifier.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 55E302848F505347E17493F322EE42E7 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 44DE4DEFAF0B71D0962C7C82D578B0A7 /* Foundation.framework */; }; + 562EF71B78BDA292E20B1481E6CB9CFC /* RLMSyncConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = 35F8599E05E36E8DA489400EE58FEF9A /* RLMSyncConfiguration.h */; }; + 57A25CE2F1027C7294F31FB70CA80F67 /* RLMObject.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = F046922896204348860BB33590371530 /* RLMObject.h */; }; + 590C9872D1BD6608AA74E08AD706F2E5 /* Realm.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3BE718D082634402330BCE0909C8FA7B /* Realm.framework */; }; + 5AB45F26E6C1E2BAB6528515D000500B /* placeholder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 55DD0F1A355F1B69276E60F293928D31 /* placeholder.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 5B5A85F095995A7C27C34E2683DBB9B1 /* CustomStringConvertible.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4520C429673AD32B07955E750C7E8A0A /* CustomStringConvertible.swift */; }; + 5BC5725BD93E478A2951C109D9021BA5 /* RLMRealm+Sync.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = EC02C03E2D70A5F5B8477340245B0BDA /* RLMRealm+Sync.h */; }; + 5BE7CA5DFA93AC2C327569BED9BFD35B /* RLMRealm.mm in Sources */ = {isa = PBXBuildFile; fileRef = 503A96E996C98B2FECDAD7AD4FF0CC25 /* RLMRealm.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 5CADD0254C8442F94E51AA85E4310D25 /* UIViewController+Chameleon.h in Headers */ = {isa = PBXBuildFile; fileRef = CA59A1769701148D1CA2A062B1111F8D /* UIViewController+Chameleon.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 5D48EC81D47CD02C6690EA0C661EC297 /* RLMSyncPermission.h in Headers */ = {isa = PBXBuildFile; fileRef = DD0EDB245A288DFDD27D5D49211DB642 /* RLMSyncPermission.h */; }; + 5DA9379CDE4DDF909D7AFE70BB0DA597 /* RLMObjectSchema.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 28B6EDEEC5E384FE32E1657442E7DB1B /* RLMObjectSchema.h */; }; + 60199D27D0C56AF9A7ACA5FB99A4D6DD /* hang.m in Sources */ = {isa = PBXBuildFile; fileRef = 167D1E618C7945529947657FF4015F66 /* hang.m */; }; + 603A9C68AFA657E26AED8E70E0BC269C /* RLMObjectBase.mm in Sources */ = {isa = PBXBuildFile; fileRef = 93CB5431897F122335922F59F3C2B440 /* RLMObjectBase.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 60BB0BAC6A4DEE162A2350325876500D /* Realm.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 069859A775F881E0108466D6B55A9F1B /* Realm.h */; }; + 61200D01A1855D7920CEF835C8BE00B0 /* DispatchQueue+Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0C28171636B6478CBCAC65064B00BA52 /* DispatchQueue+Alamofire.swift */; }; + 612B9E797E68B48C8019B74D45656068 /* RLMMigration.h in Headers */ = {isa = PBXBuildFile; fileRef = F267BDEF56530ADE06BEB781B7A96C8C /* RLMMigration.h */; }; + 61537BE4AA28420847866720B7543C31 /* SVIndefiniteAnimatedView.h in Headers */ = {isa = PBXBuildFile; fileRef = B6694706AE2206C12B59D754417F369C /* SVIndefiniteAnimatedView.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 618BCF0D25E08BAB3E2504419AA0ACE9 /* PromiseKit.h in Headers */ = {isa = PBXBuildFile; fileRef = AD1E07936EAB4A15168DA68310A4DF7B /* PromiseKit.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 61C2C93B7B14AF35CDDD12EAF5E915B5 /* schema.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EDFEA1AAAEE746F5CA07C8FF7245D734 /* schema.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 62F65AD8DC4F0F9610F4B8B4738EC094 /* ServerTrustPolicy.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE88DC5DB31B209D9FEDA68534239E38 /* ServerTrustPolicy.swift */; }; + 63051BC501EC67F05FD9F9AE2A24E4AE /* RLMThreadSafeReference.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7DDC855EDB6F0CDABC40595E645987EF /* RLMThreadSafeReference.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 6486781D756A9D71FE5C6E56CC9A343F /* ImageCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = 88A11DD12630B43389DF2F7D98056A92 /* ImageCache.swift */; }; + 64E1F3C55E313BCF279CE5082C420C13 /* RLMSyncPermissionResults.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2C69FE4D4B4A989F68FB329B1A5FFCFF /* RLMSyncPermissionResults.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 658D33C2290D805C5CDEF09384107846 /* RLMObjectBase_Dynamic.h in Headers */ = {isa = PBXBuildFile; fileRef = 7EB8C25BC9A862D2A4433D94192A3441 /* RLMObjectBase_Dynamic.h */; }; + 66130FDE8FEDDD3AE44E9CB237EC19DD /* ChameleonConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = 5E1324D4858E13AEB922B35546D2EF41 /* ChameleonConstants.m */; }; + 66BF63D9C5612025C911BDEAF1EE0C97 /* Schema.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF9BEE78AB64896F7786F842E14C3D75 /* Schema.swift */; }; + 674E63F45AA71DB963BC1F7BE4A52A97 /* Optional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 30BF8581417F8D6FA8F7432B33694097 /* Optional.swift */; }; + 675C3C41534DD77AAB710D0D2D115608 /* LinkingObjects.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0D65ABDA10FB6FAF97F621D9415A1578 /* LinkingObjects.swift */; }; + 676779EA2159B3B8BC83727DC02C803C /* RLMRealm+Sync.h in Headers */ = {isa = PBXBuildFile; fileRef = EC02C03E2D70A5F5B8477340245B0BDA /* RLMRealm+Sync.h */; }; + 68B1A8CFE5CEB70247EB97177EF6A108 /* RLMRealm_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 390A84B69E0EA0B4B0235044426ADB80 /* RLMRealm_Private.h */; }; + 6909720B006DE88E6366896F3F95F359 /* RLMObjectBase_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 3EF09A8B74C85C9AFABDEDBD6238F0B7 /* RLMObjectBase_Private.h */; }; + 69AC84EED2A1FF1CB23F86325A9B2B34 /* RLMMigration_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 9E20F792726DCF3C9B39760070796596 /* RLMMigration_Private.h */; }; + 6A1AE122192D277FBD795E1E636D0A57 /* RLMManagedArray.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2410CDE93220A09C799FCFE762F50744 /* RLMManagedArray.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 6BE806D9519FECAF5A7EA212618D0595 /* SVProgressHUD.bundle in Resources */ = {isa = PBXBuildFile; fileRef = 53A222CFEE05DA8169D1438B3C83EC9C /* SVProgressHUD.bundle */; }; + 6E34F694D61708AD58269C3DBF01D78A /* transact_log_handler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 75CFB0970AEB893D68874B9EB5B7DDF8 /* transact_log_handler.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 6E7A5DE84A3B3D1DB6E6AF1018D71151 /* RLMRealmConfiguration+Sync.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 0257ED3312238D6F28490F9540A4D92F /* RLMRealmConfiguration+Sync.h */; }; + 6F3368C255B6510AE4F40574B726D807 /* thread_safe_reference.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5DECE4A96DC82F1788D2496E380388BD /* thread_safe_reference.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 70297ABF69F651EAF8E5F968E3811211 /* ChameleonFramework-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = A9FFFD475E5F246FE9C10E3AD59F2DF9 /* ChameleonFramework-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 7158E7ABCF4CEA383D130A471D51E46E /* SVProgressAnimatedView.m in Sources */ = {isa = PBXBuildFile; fileRef = 4348319519D243801CC6340DAB87B5DB /* SVProgressAnimatedView.m */; }; + 719449771B7650E9ABB1A0F1D07EFBDE /* RLMRealmConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = F0967F9F28642BF501CA462A45581601 /* RLMRealmConfiguration.h */; }; + 7230498DCC8F6020F23E7595E2F1E792 /* UIView+ChameleonPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 3678A368CA8C673FD74EB418177A567B /* UIView+ChameleonPrivate.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 72C9DAA12ED693D8934DC74C6E494A6A /* SwiftyJSON-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = AC1C57636899483A36A0683AF4DFA245 /* SwiftyJSON-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; 73B9C996AED49ED7CF8EC2A6F1738059 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 44DE4DEFAF0B71D0962C7C82D578B0A7 /* Foundation.framework */; }; - 74F4727B82FFFAE54D5554ACE643209F /* sync_manager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3B1FB373D263BBFFC297B8411343DDC2 /* sync_manager.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 751A69F492AF8465B72B67AAE27B5553 /* after.m in Sources */ = {isa = PBXBuildFile; fileRef = DB00D497A5E28FF36623FA28B408D039 /* after.m */; }; - 753FF986647F690AA8ED26A073478AA4 /* RLMPlatform.h in Headers */ = {isa = PBXBuildFile; fileRef = EB3A764D9554573A86BC7EA8D331A5B1 /* RLMPlatform.h */; }; - 75B4DFAD23D9CC30D7CABE7B4C3FEC45 /* SVProgressAnimatedView.m in Sources */ = {isa = PBXBuildFile; fileRef = 766D2F20D66B6FF2AF1D4EAB824F9066 /* SVProgressAnimatedView.m */; }; - 76B89B343065168DD3C1CCE49E5F7F71 /* RLMManagedArray.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7622CF007B46CB35D5418C19DF59316C /* RLMManagedArray.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 7767194DDC60A11E9F2D077CD1E03B8F /* RLMSyncSubscription.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B3A7E663D5EAE38832816B57E91D1AC /* RLMSyncSubscription.h */; }; - 7881F3F5C17049AC941B7BF53FDEE252 /* system_configuration.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FE6B9D7126E0C71B5BE611F3B32DE494 /* system_configuration.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 78EA68581EFBA892490E1238F4D7E3B9 /* Catchable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8BCB555A73F7D0CE7B9F37DFF8852BE8 /* Catchable.swift */; }; - 791A71883C3D3E10E9E2C9270ECA88BA /* weak_realm_notifier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E34EC0505238441E3AB17C5B76376151 /* weak_realm_notifier.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 79EE9FA840787D8BDF2E63772D54AFFA /* Error.swift in Sources */ = {isa = PBXBuildFile; fileRef = 245F0F61DC6B9BF9094F98409BE93E9F /* Error.swift */; }; - 7ACBD275F7DCAC8120F3D0F4959FDA33 /* UIButton+Chameleon.h in Headers */ = {isa = PBXBuildFile; fileRef = 0EB01E8A603C50A990B449E4F1538D46 /* UIButton+Chameleon.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 7AF2496B1D06350FD119F3B8B6E527CB /* SVRadialGradientLayer.m in Sources */ = {isa = PBXBuildFile; fileRef = 9E31399968FFD6FED06271F3C254596D /* SVRadialGradientLayer.m */; }; - 7B2A61E55C43E9B12E5B7DD852456AEE /* ImageTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1694F8995C4542D86BBC0E96E54A487E /* ImageTransition.swift */; }; - 7B5FE28C7EA4122B0598738E54DBEBD8 /* SessionDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5B3D2D1D6C1822AF5D1F17D214A2EA84 /* SessionDelegate.swift */; }; - 7D6CE45F576E6DEC64C31E70DE525A78 /* Realm.h in Headers */ = {isa = PBXBuildFile; fileRef = 311B47A4BBDBA8D6EDD5B88F76BDB942 /* Realm.h */; }; - 7D8CC01E8C9EFFF9F4D65406CDE0AB66 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = 580105F1A23801F75414CBEB6B546A7F /* Result.swift */; }; - 7DC89454BD5B9F52C48C662939272210 /* object_schema.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B41055185B92B06E24031550C04D2AB8 /* object_schema.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 7E6CC1F6CB075F1C1264DD736044F204 /* Pods-pocloud-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 39805068056EB58D370D71A27CD2F678 /* Pods-pocloud-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 7E73248EC57FFAB98D1232ACA114B5E5 /* SortDescriptor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 11627F9A5E2BA034A9BC20B8085A0379 /* SortDescriptor.swift */; }; - 7F76B437C623FC0CA6960B09BF7AFEFE /* thread_safe_reference.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 56BECC5DB09CC019638E5717E1CDA76C /* thread_safe_reference.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 80D2204EFBCCD1BAB611DFE9AAF51E90 /* RLMProperty.mm in Sources */ = {isa = PBXBuildFile; fileRef = B8404B421AE2273E2475A0ABFB349941 /* RLMProperty.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 821513084182DC36F8FB1FD082FA2D0E /* RLMSyncSession.mm in Sources */ = {isa = PBXBuildFile; fileRef = 91ECC59AFF97C45F079ADB967B7B20EB /* RLMSyncSession.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 835038E818125E96E5541382F2F36C9F /* RLMRealm+Sync.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7C422C0B648D8C28653671B1027B6BDE /* RLMRealm+Sync.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 836FAFD013586A3CC943E5A16BB5EBB3 /* RLMUpdateChecker.mm in Sources */ = {isa = PBXBuildFile; fileRef = D60332F7B9A7DC41158391BF79954BDC /* RLMUpdateChecker.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 84444DBA69E36E36318A20E15F709B98 /* RLMConstants.h in Headers */ = {isa = PBXBuildFile; fileRef = 4A649C08C6A14CB557FDFC4F8721E2AC /* RLMConstants.h */; }; + 73E289539F66104A33B0613AD5CEB376 /* Deprecations.swift in Sources */ = {isa = PBXBuildFile; fileRef = 960A4DBBFF871779B81F9E045539A9B8 /* Deprecations.swift */; }; + 747AECE336B57FB0448DD843E7E419FC /* RLMObjectBase_Dynamic.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 7EB8C25BC9A862D2A4433D94192A3441 /* RLMObjectBase_Dynamic.h */; }; + 74E3F0C1A8CBDC02D48958A9C086B72F /* RLMObjectStore.mm in Sources */ = {isa = PBXBuildFile; fileRef = 380F6390028F12A9814D9C30B925CAC2 /* RLMObjectStore.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 75AFA58230BC76DC1A8A42280576D1FF /* RLMNetworkClient.mm in Sources */ = {isa = PBXBuildFile; fileRef = 19B6F9814D5C8F98661440AB4B6B37CD /* RLMNetworkClient.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 766579430E0011202338742E91D1ECB5 /* RLMQueryUtil.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9BEB907E124F77BA9A38B31E88C029A4 /* RLMQueryUtil.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 76C878C4EE95E2C83C43C628A8FC2672 /* collection_notifications.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B2C2B4488829465EC2AA197D6E1581B4 /* collection_notifications.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 77639C87A337D35401CA65821987250B /* Realm.swift in Sources */ = {isa = PBXBuildFile; fileRef = B1F47AFF559BBA2345ACDF2A2ECC38C1 /* Realm.swift */; }; + 77B11B6C789EFDACC23E689380DEFE6A /* RLMCollection_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = EC546713A40C285F1F96D60407A65EE5 /* RLMCollection_Private.h */; }; + 7946A38DDB45D2272F0D82ED92BF8228 /* work_queue.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6A098E23B03FD37283AE835A4243531B /* work_queue.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 795A71FC1D919ED35619866B8DB24E70 /* RLMArray.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2D6DB555DF052E561309BE6FF785B7D3 /* RLMArray.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 79D4109D659B1A286FFDAF210C8E4AED /* RLMSyncSubscription.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = C3A19D76E413374358C330C6364B473F /* RLMSyncSubscription.h */; }; + 7A763C6D7E035F6B71C6B32AEF01A397 /* RLMSwiftSupport.m in Sources */ = {isa = PBXBuildFile; fileRef = 3F45EA5868823D57F7FFED4605299E54 /* RLMSwiftSupport.m */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 7ACBD275F7DCAC8120F3D0F4959FDA33 /* UIButton+Chameleon.h in Headers */ = {isa = PBXBuildFile; fileRef = 3B1FD331CE6D658E51E9BE21C74A9D03 /* UIButton+Chameleon.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 7B2A61E55C43E9B12E5B7DD852456AEE /* ImageTransition.swift in Sources */ = {isa = PBXBuildFile; fileRef = E4FF2B9FEDC88A76BFCF771EC7CB4D2B /* ImageTransition.swift */; }; + 7B5FE28C7EA4122B0598738E54DBEBD8 /* SessionDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = A8793A3FE332B791A8B3994B323FCBEE /* SessionDelegate.swift */; }; + 7C8EC7B7E5C54809124E15D13EC055D5 /* external_commit_helper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FA66934D15EF142915C94B4685C37F7B /* external_commit_helper.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 7CD948F6962983E8A77E400E51C75F1B /* RLMObjectBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 9468ECB6C02355492984982A77714C41 /* RLMObjectBase.h */; }; + 7D8CC01E8C9EFFF9F4D65406CDE0AB66 /* Result.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40E5049E646905E9AE4E0F2101F206D8 /* Result.swift */; }; + 7F55CBA3C14E94C5E8FA7248A5E4F79B /* RLMObjectSchema_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = CB9B9B9E87CF5A6EA2132C6AC6FCF64C /* RLMObjectSchema_Private.h */; }; + 80ED413178BE62F638F877E3AA43E6BA /* realm_coordinator.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7F80AF0E7104F15B7086BE4CDC817DBC /* realm_coordinator.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 816FDD7BDA63DE2611409EA6F97BE7EC /* RLMSyncSession.h in Headers */ = {isa = PBXBuildFile; fileRef = 2FB23727980C986278B33391A4EDA98D /* RLMSyncSession.h */; }; + 81A968DEFB9F2A34421E020B8A9221D3 /* network_reachability_observer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3549C30740CE09B411B903EC7025561C /* network_reachability_observer.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 81FA7011A524C854A6B55DC776F786A4 /* object_schema.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 149E497A86D0B04D07C4BF26F707A127 /* object_schema.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 823A65F6C62C520D99706D83A0CEB248 /* primitive_list_notifier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 1C8CDE49478E71D0325DA17BCC70F9F1 /* primitive_list_notifier.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 82AE21449BEE8FFB4E0319E8013708A5 /* RLMObjectSchema.h in Headers */ = {isa = PBXBuildFile; fileRef = 28B6EDEEC5E384FE32E1657442E7DB1B /* RLMObjectSchema.h */; }; 84CF440A4E3CCDEE93FA2475748A9934 /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 46232DD3ABC4E624F8DA81A2E7F193D8 /* CFNetwork.framework */; }; - 86C023298D3BEB691829EE3AB98E2553 /* RLMConstants.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 4A649C08C6A14CB557FDFC4F8721E2AC /* RLMConstants.h */; }; - 87D21CD9C7A5B0CBA6F263F1BA617619 /* RLMSyncSession.h in Headers */ = {isa = PBXBuildFile; fileRef = 8FE2AF51D54D8C90660387FB02C44062 /* RLMSyncSession.h */; }; - 8984AC0B07EF0858BDAE359F13D07958 /* collection_change_builder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E39BFAB9133B4FE11392BAC85656A395 /* collection_change_builder.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 8A58AB8DE259AEE563B768C38D09E0F3 /* object.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8C8842242396C4537870CAB3AF91C4C5 /* object.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 8C1CB5E9C77D7F8BD23B45361CDF44D6 /* sync_metadata.cpp in Sources */ = {isa = PBXBuildFile; fileRef = EC0C6E93AF10A37046E8D11B1E9E0C6C /* sync_metadata.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 8C53C17F466906BCEC39337474F90250 /* RLMCollection.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = C32B33B51C2DF6543DE5A46287CB8564 /* RLMCollection.h */; }; - 8C55D41FFF9E843CA8E071F90E641829 /* RLMSyncPermission.h in Headers */ = {isa = PBXBuildFile; fileRef = 0EA08FBA6A6611E85E5B3CEB6D30E7F3 /* RLMSyncPermission.h */; }; - 8C9557FB20462522D5C5E13550A0C9C5 /* keychain_helper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 8163DDFB108E78AD35D137CB6C77011B /* keychain_helper.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 8CE5AD333D885F81F07805AA8BF93858 /* RLMObject.mm in Sources */ = {isa = PBXBuildFile; fileRef = F1ED8B956F9F5CFD7FD4BBD9FDFDD07A /* RLMObject.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 8EF6461FDA304F5FF44D32506579F17E /* RLMAnalytics.mm in Sources */ = {isa = PBXBuildFile; fileRef = 6BE12ED87EA685919A49CB0B3F7E0274 /* RLMAnalytics.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 8509057B54F608E8F4AE0E6D568CB371 /* RLMSyncUtil_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 7DB3D213AAE67209F9A9D53E1E25D6E7 /* RLMSyncUtil_Private.h */; }; + 858F5D7764DAC2DAABAB1AA80D7CD621 /* RLMRealm_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 390A84B69E0EA0B4B0235044426ADB80 /* RLMRealm_Private.h */; }; + 8622588327D549457FA8FF5516AAE49E /* RLMCollection_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = EC546713A40C285F1F96D60407A65EE5 /* RLMCollection_Private.h */; }; + 8758F4D03FAA6A54879EB67C126CF97D /* RLMSchema_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = CE462ADD1E2D874FD8827EF95924AE44 /* RLMSchema_Private.h */; }; + 8862FE3C3123674736A819E7E54AF721 /* RLMRealm.h in Headers */ = {isa = PBXBuildFile; fileRef = 282ADBD426BF6ABFAC0BE91ED24B6CC0 /* RLMRealm.h */; }; + 8C418BE72AFD0F79E24A0AB4DA205F28 /* RLMSyncSessionRefreshHandle.mm in Sources */ = {isa = PBXBuildFile; fileRef = E65BFFCF67FA024A57F6810BDB3EF0AF /* RLMSyncSessionRefreshHandle.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 8C8DD277300C5B6D10445FC878B298A8 /* AnyPromise.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5C7DB055A9FF859C8D9B207B0EBEA67E /* AnyPromise.swift */; }; + 8D5781552AF02C5DC9946A411CB59F65 /* Realm-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = E53A56088ACEAE7BF35D1B69201BEB95 /* Realm-dummy.m */; }; 8F33F0B3C2A785E52DA211D10C59EFEE /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6F5C53EA0A01E65DFB980B5D08BD34B0 /* CoreGraphics.framework */; }; - 9025A563C837D88BE8647392B59F9355 /* RLMThreadSafeReference.mm in Sources */ = {isa = PBXBuildFile; fileRef = 273F49017521BD3655ADC76F4F11CE47 /* RLMThreadSafeReference.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 909634D439688308A89D657E39401A0D /* RLMMigration.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5617F7814651371AB22F8611BFC47656 /* RLMMigration.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 9103724A3AA78029515CD7FB6D0018AF /* RLMMigration_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = CD124FBA715A6B156C2FBCD73C8469D4 /* RLMMigration_Private.h */; }; - 91ACB711A476D0EF345FEBBD68AF0B85 /* race.m in Sources */ = {isa = PBXBuildFile; fileRef = 4611B676C9FD2794BA29AEA951CA7C0F /* race.m */; }; - 93031F53B8DFFE757AF59175F300B44F /* RLMSyncSubscription.mm in Sources */ = {isa = PBXBuildFile; fileRef = E285A3A22D379A070CD9AEB57CB019A3 /* RLMSyncSubscription.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 936C1A6FA751E2F72A554EB0D0DCC8F6 /* join.m in Sources */ = {isa = PBXBuildFile; fileRef = C35CD0F4638F1A0B757CB811DC382A1D /* join.m */; }; - 95156987028D309F91AC55FBDFE01643 /* Kingfisher-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 9FB634DA73B8A8A674F8281A2509F9E6 /* Kingfisher-dummy.m */; }; - 958A143DD4D505650FC338D882270688 /* RLMObjectBase_Dynamic.h in Headers */ = {isa = PBXBuildFile; fileRef = 2A9BA425FE31717AB19E3A3097EE305B /* RLMObjectBase_Dynamic.h */; }; - 98317C0AB8FA51D3BDFB4FB30A6D1ED3 /* object_notifier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2C782BB04AB51744E97C3248A1355980 /* object_notifier.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 98F8F67CE0F20EC63FC1733A3460948F /* RLMSchema_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = B165B55C0D7AC6D4F94B892C3BC0E0F1 /* RLMSchema_Private.h */; }; - 99996440B4D4949A4B9110C7F5C4FE53 /* Sync.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8C08C07F45270FB9DCC6EE9EAB08A931 /* Sync.swift */; }; - 99EF981BB03B3B104573CFE451316118 /* RLMPredicateUtil.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC1C3F96E874A55271C7315C7002B66A /* RLMPredicateUtil.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - 9B405DF01C987C958D7F8EDF451F62F8 /* Results.swift in Sources */ = {isa = PBXBuildFile; fileRef = B6F020E55DCE3AB0229CAFF03DB1E274 /* Results.swift */; }; - 9D6EDB280BD622F9B91ED4A0AA195B8C /* ObjectiveCSupport.swift in Sources */ = {isa = PBXBuildFile; fileRef = CD61238A95FEB8A0FB8E26ACBE354EF6 /* ObjectiveCSupport.swift */; }; - 9E4BFB7CFC09258C22A18B4AB4C331DB /* NSArray+Chameleon.m in Sources */ = {isa = PBXBuildFile; fileRef = 26655C7C8ACE3106DAF15CED6AC73030 /* NSArray+Chameleon.m */; }; - 9E56EB6042AA42014BDB68DA18F32C8C /* RLMObjectBase_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 69EE522272ED3216D2EF5F104485F126 /* RLMObjectBase_Private.h */; }; - 9ED2BB2981896E0A39EFA365503F58CE /* AFError.swift in Sources */ = {isa = PBXBuildFile; fileRef = EF68730092653BF5EE4ADF365A7ECD97 /* AFError.swift */; }; - 9FD29EF07DBCDB66F3373C790B88BB7A /* RLMCollection.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2DBB21F1EEDBDF05153B24268A7DDF49 /* RLMCollection.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - A09C65FB9D2A0A66150EC2969585FB90 /* Migration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22639B95B380B288045FF15E5D225C9F /* Migration.swift */; }; - A2A6F71B727312BD45CC7A4AAD7B0AB7 /* NetworkReachabilityManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37703D2332DFE019831E57E068958A25 /* NetworkReachabilityManager.swift */; }; - A2E197514064C1B9E8E6117681315D7F /* RLMSyncConfiguration_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 5B5F70E3E5E49DF8AC37B6E2B8D9BF19 /* RLMSyncConfiguration_Private.h */; }; - A4138B44E3E5E5B402AB6D427409695C /* RLMMigration.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = E1365B4CF789343E980B675C12BE13A4 /* RLMMigration.h */; }; - A4621CCFEDC92F45BF85DF0051F1815C /* Error.swift in Sources */ = {isa = PBXBuildFile; fileRef = EDE61E0B7CC239EBB466B8E1624C177E /* Error.swift */; }; - A4D2F4DA6CFD4E812C81984C99DD40DA /* transact_log_handler.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5F649BF78A4595CDFA859ED222F62673 /* transact_log_handler.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - A6114117CACB1F35FC2CCB3BA0ADB37E /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C18FDC08C1866ACB755BC6456D9F9CF7 /* QuartzCore.framework */; }; - A6AEE2E8707DDCFAEBBCE2CDB1D1DC80 /* collection_notifications.cpp in Sources */ = {isa = PBXBuildFile; fileRef = FA3A70F6F798AFA9D77811404C1B0676 /* collection_notifications.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - A7280438E7E3B113B4C33DC5DBD6D455 /* RLMSyncUser.h in Headers */ = {isa = PBXBuildFile; fileRef = 7FB7797D20B4214247E5E4C802893724 /* RLMSyncUser.h */; }; - A7DFD1CF37AF472CBBA86C9998A30892 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 44DE4DEFAF0B71D0962C7C82D578B0A7 /* Foundation.framework */; }; - A8139A5331A3C3A9654B5C7725A8D3F3 /* RLMAccessor.h in Headers */ = {isa = PBXBuildFile; fileRef = 1024E27DB140FFD86EDA2885C1BAC32D /* RLMAccessor.h */; }; - A8A79840E81BFA3D8DCC29BE71F1AEC4 /* KingfisherManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3541DC93EA6F997DC73EACEAAA47EF73 /* KingfisherManager.swift */; }; - A8D42D5D1E143DB2FB2A371BFD9F042A /* RLMSyncManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 0402537231193FF2DC9AE44CAD2FCA56 /* RLMSyncManager.h */; }; - A9D2A6547EE5F6532EF8D1F1870BF158 /* CacheSerializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 14664C2A6EEF8AF2E3A59A1654130405 /* CacheSerializer.swift */; }; - A9EEEA7477981DEEBC72432DE9990A4B /* Alamofire-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 37BC060B8E324F918BE5785B68CD41A8 /* Alamofire-dummy.m */; }; - AB3A20AE7726F03E462521D7F0FBCEE5 /* RLMRealmConfiguration+Sync.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 0BDCBE875751985C7503D9D7738F1BBF /* RLMRealmConfiguration+Sync.h */; }; - AB8A3075F8FF2907669EC536D0FF4CA1 /* Promise.swift in Sources */ = {isa = PBXBuildFile; fileRef = E5B752A401F4C464871406C2F82D0692 /* Promise.swift */; }; - AC478688BFBE4B16DBBDD4CFD65DF8E4 /* RLMSyncManager.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 0402537231193FF2DC9AE44CAD2FCA56 /* RLMSyncManager.h */; }; - AE1EF48399533730D0066E04B22CA2D6 /* SessionManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5AE62BB283CB99454B7EC00C4A0DC278 /* SessionManager.swift */; }; - AE791D2264B1C64E1B9ADAD962BECBC9 /* RLMRealmConfiguration_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 1EB88B6437549FAC51EC6F8FCF38DAF9 /* RLMRealmConfiguration_Private.h */; }; - AEA34AE72488B85D546A21E48CDEC745 /* RLMThreadSafeReference.h in Headers */ = {isa = PBXBuildFile; fileRef = D0025130F79BFD9A4D079CAFE4F3C3BC /* RLMThreadSafeReference.h */; }; - AEEA6CCF2B7498BACFC67ACB9BF87067 /* RLMSchema.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = EF9385A4348055A59474B2BEAD29C9EE /* RLMSchema.h */; }; - AF266B08C2D76C1C99E897A946ABAC4F /* firstly.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDE2FF0DA3503461A7A96FBEBDADAD00 /* firstly.swift */; }; - AF2D33039F61D71D528A7501B1EB94A5 /* RLMSyncUtil.mm in Sources */ = {isa = PBXBuildFile; fileRef = DA741CF9B82AA566373415B7ED0ACA7A /* RLMSyncUtil.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - B024DBFB44C4BDEFD494D631F80D6A17 /* RLMMigration_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = CD124FBA715A6B156C2FBCD73C8469D4 /* RLMMigration_Private.h */; }; - B19B7F6318C9D321274BBFF446A52ABB /* SVProgressHUD.m in Sources */ = {isa = PBXBuildFile; fileRef = A18E439FDF6127098B8C16B35C7D972D /* SVProgressHUD.m */; }; - B1C88096896D932FA8D6942E88E083D1 /* RLMRealm_Dynamic.h in Headers */ = {isa = PBXBuildFile; fileRef = E9EDC2A9336BE94BA578B012CDF74FD0 /* RLMRealm_Dynamic.h */; }; - B23338508F9BA41D2B408B9693B2B86D /* uuid.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 250A6494A701B9C367DC029CF6A6E8CC /* uuid.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - B2990A72DE688E00E6381A5BBED4A38A /* RLMRealm_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 2741AF43A6E87FCC35712102A7CE8B97 /* RLMRealm_Private.h */; }; - B307BEFB2E6C0E4C810E4B4E7C0FF5B5 /* RLMObjectBase.h in Headers */ = {isa = PBXBuildFile; fileRef = B021BB289B973BAEA5BDC27378F4755E /* RLMObjectBase.h */; }; - B367E02AD1C2C5D318377E3573D8FFBB /* AnyPromise.m in Sources */ = {isa = PBXBuildFile; fileRef = E7A8B08419297C02CC4149B35B2ECC53 /* AnyPromise.m */; }; - B3C14E3C6ED93AB27125555ACFCC5FF0 /* sync_config.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 95E22F0FC8527A0AF6188247B226823F /* sync_config.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - B45EC79BD215E597EDFAA098D4EDCD15 /* RLMSyncUtil.h in Headers */ = {isa = PBXBuildFile; fileRef = 12A3070D56E0DE33A4493A45D1ED62FE /* RLMSyncUtil.h */; }; - B47C079628B9703748CE1202A5B48728 /* RLMObjectSchema_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = FF077ADE2FCBA19A581C461C2B40CF37 /* RLMObjectSchema_Private.h */; }; - B48EAFDBA697C4E8AFDD6CD39B26D745 /* SVIndefiniteAnimatedView.m in Sources */ = {isa = PBXBuildFile; fileRef = FA8186FEF4C84297B6F73AE3B6AE51E2 /* SVIndefiniteAnimatedView.m */; }; - B4EE958EA831802507F576ADB5062215 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 44DE4DEFAF0B71D0962C7C82D578B0A7 /* Foundation.framework */; }; - B514A12508F56899EF7EEF51A7767371 /* RLMMigration.h in Headers */ = {isa = PBXBuildFile; fileRef = E1365B4CF789343E980B675C12BE13A4 /* RLMMigration.h */; }; - B564B930C3B6CCFCC109ABF374B21CE6 /* ImageModifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5068692F9A8D85E61A94EC2B4F6302FF /* ImageModifier.swift */; }; - B61F5DEDA1C5CC5E7340820FF2B2D900 /* RLMListBase.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = E04DF0E29B2F559699F2E80594E9A2B2 /* RLMListBase.h */; }; - B635ACE8921063B85B1FD10FC56D96B5 /* RLMSyncManager_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = EC5EB5F10CDB88745D8F00A4776CC90F /* RLMSyncManager_Private.h */; }; - B65FCF589DA398C3EFE0128064E510EC /* MultipartFormData.swift in Sources */ = {isa = PBXBuildFile; fileRef = CC972C244E668A29947C657CA9CE8245 /* MultipartFormData.swift */; }; - B7AFA8147312298287DE0E2077DFEFD6 /* RLMListBase.h in Headers */ = {isa = PBXBuildFile; fileRef = E04DF0E29B2F559699F2E80594E9A2B2 /* RLMListBase.h */; }; - B88D6E6545489A6BF84884DB4AC801AC /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7D0132EFFBA0D5F54CF346D6CC6D98CD /* Security.framework */; }; - B8EB3F250772D11A2BF86A557AC7C721 /* Optional.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7E6B64BCD382E49B287A6BABF26B1D55 /* Optional.swift */; }; - B924069CD75769E22765912C66A87BF3 /* Image.swift in Sources */ = {isa = PBXBuildFile; fileRef = E2704597263FE68C7CC88E05EAA27BDC /* Image.swift */; }; - B9724F208961497963D9356D674AC507 /* object_store.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5DB2113B5A6B69019AEB502264443213 /* object_store.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - B9DF696D08B777835B4D7E094833B255 /* RLMSyncManager_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = EC5EB5F10CDB88745D8F00A4776CC90F /* RLMSyncManager_Private.h */; }; - BA1134BEC90AEF72B2D8D0C456C81281 /* Object.swift in Sources */ = {isa = PBXBuildFile; fileRef = 73DAE7EA886BF78971BCEC02BE13B103 /* Object.swift */; }; - BA4DF38E820FF6B40FFABF8B1BBCC615 /* Kingfisher.h in Headers */ = {isa = PBXBuildFile; fileRef = 7F13F6EFAA687AA5F9E80B68CE128815 /* Kingfisher.h */; settings = {ATTRIBUTES = (Public, ); }; }; - BB100D4EB994FDEDCD3DDA16689A7E86 /* RLMObject_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 0DEF8129AB4440A53F66EEB19599DE53 /* RLMObject_Private.h */; }; - BBAA845748588AA60575FE6A66F39679 /* fwd.h in Headers */ = {isa = PBXBuildFile; fileRef = BD6C9428E6450A1B187BFEFA16A56412 /* fwd.h */; settings = {ATTRIBUTES = (Public, ); }; }; - BBB8C87F89087383A96313B55339A6BD /* primitive_list_notifier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 26E7A628B7925AA77F775DD246631A44 /* primitive_list_notifier.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - BBEFE2F9CEB73DC7BD97FFA66A0D9D4F /* Validation.swift in Sources */ = {isa = PBXBuildFile; fileRef = D53A2ACD5DAA13352720BB1489B33305 /* Validation.swift */; }; - BC188BDFB1400FD2152E0AD2B09C1D5C /* RLMProperty.h in Headers */ = {isa = PBXBuildFile; fileRef = 5940218E6A182F433055F7B2DC97C968 /* RLMProperty.h */; }; - BC40B73DD84A9F2C324D5F7B9DF5C1F1 /* RLMObject_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 0DEF8129AB4440A53F66EEB19599DE53 /* RLMObject_Private.h */; }; - BC7F0688B8256FBF7C467493E6BB5169 /* NSArray+Chameleon.h in Headers */ = {isa = PBXBuildFile; fileRef = B7855FD33C118142ACD710A2C5F7D71D /* NSArray+Chameleon.h */; settings = {ATTRIBUTES = (Public, ); }; }; - BD289E924B014DF405E63E9DD33B72A5 /* index_set.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 27C6E514E53CE69D8723F7DB548DA9EA /* index_set.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - BD539003C0E757A65299D1AB9A32B14F /* RLMRealmUtil.mm in Sources */ = {isa = PBXBuildFile; fileRef = 599AC7301D4C70ABB010FE6FFF550B6D /* RLMRealmUtil.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - BD54D3977DB4BC983C34B909EC2A10C5 /* UIColor+ChameleonPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 6160869B5FA63B4E56F6C2867B64F4FC /* UIColor+ChameleonPrivate.h */; settings = {ATTRIBUTES = (Public, ); }; }; - BE5C67A07E289FE1F9BE27335B159997 /* ParameterEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 78C760CC7BB5DE34384733868F5870AD /* ParameterEncoding.swift */; }; - BE98846DD4202FC5B3C04F475EB080E8 /* RLMRealm_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 2741AF43A6E87FCC35712102A7CE8B97 /* RLMRealm_Private.h */; }; - BE9FB5E8188E0B68DB277B09A06E79BA /* ImagePrefetcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 036EC38E356C7009E7702985003D4629 /* ImagePrefetcher.swift */; }; - BEDEB808452C68BC12E63F7E95F44237 /* external_commit_helper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E97A49D59AB00307EDEAD1C2CECA377F /* external_commit_helper.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - BEFA555A98332B1540DEE30B3B4B6372 /* Property.swift in Sources */ = {isa = PBXBuildFile; fileRef = B0E18B6042BFBF45253EFD82138A88ED /* Property.swift */; }; - C082D72BC2DBD1E4862A8FFFC51B6AC2 /* UINavigationController+Chameleon.h in Headers */ = {isa = PBXBuildFile; fileRef = 90C771AA5969C7A748FD76398F1785D9 /* UINavigationController+Chameleon.h */; settings = {ATTRIBUTES = (Public, ); }; }; - C0D4C15583BA758C71B5E5321398E383 /* ObjectSchema.swift in Sources */ = {isa = PBXBuildFile; fileRef = D1A9F5FC1DADD9E5EB2F4484B042CDAE /* ObjectSchema.swift */; }; - C274CB67D73D37C0926A5ED894F69433 /* RLMSyncUser.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 7FB7797D20B4214247E5E4C802893724 /* RLMSyncUser.h */; }; - C32C7FE70764DE37935F6A5D80CB17C7 /* RequestModifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD9302000C30F79629846BBD87E8B38A /* RequestModifier.swift */; }; - C335705D91C213B9C8AE4C3D24E63802 /* RLMSyncPermission.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 0EA08FBA6A6611E85E5B3CEB6D30E7F3 /* RLMSyncPermission.h */; }; - C40C59A2149C213545ECAB279CA3FC9C /* Box.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70642B3E4D58AEA8CC5C2B547B34983E /* Box.swift */; }; - C450DCDC3D9DD5E4226B782A979A98FF /* RLMThreadSafeReference.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = D0025130F79BFD9A4D079CAFE4F3C3BC /* RLMThreadSafeReference.h */; }; - C547137953719CFBC4979DF3B2083A6E /* ChameleonMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = B7268A78D32AADCE3654DA0C343D5DD1 /* ChameleonMacros.h */; settings = {ATTRIBUTES = (Public, ); }; }; - C5E06DAEE5EFC75FD87B9424177150DF /* UIImage+ChameleonPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 40275F0CFC354CE6DD5657A6662CF380 /* UIImage+ChameleonPrivate.h */; settings = {ATTRIBUTES = (Public, ); }; }; - C69858EA622DD818B2A959BD3DEC4688 /* RLMSyncConfiguration_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 5B5F70E3E5E49DF8AC37B6E2B8D9BF19 /* RLMSyncConfiguration_Private.h */; }; + 8FB97D56F11FC1E172D2D4A7AE53C4DE /* RLMObject.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9230A72F1AEC1BADDCC7186EB25BE0C7 /* RLMObject.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 9007EA7D55D93E1712C2ED47E9D68C2B /* RLMSyncSession.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41158C77FE22B096020E449E4DA92CBB /* RLMSyncSession.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 916CB0233774949A3B9BF3912F73A841 /* RLMSyncManager_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = C94AA744EFB890DE04E7980909D8DF33 /* RLMSyncManager_Private.h */; }; + 941E189B82402D9AEC1E6C0A08910C0E /* RealmConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 55BA3B5637937797089F9EAC9C8C870F /* RealmConfiguration.swift */; }; + 948EF1D921105F4E516632B5AB5D6F15 /* RLMRealmConfiguration_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 3B239DB3F6FEBC2871B6BDC37B3800A9 /* RLMRealmConfiguration_Private.h */; }; + 95156987028D309F91AC55FBDFE01643 /* Kingfisher-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = AC779ECCB944E8ADD37CE1D3304804B9 /* Kingfisher-dummy.m */; }; + 9516410445FAEEFB657E7806EE8F98FC /* RLMSyncConfiguration_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 9C6F33FE3CF07041C28098876552C5FA /* RLMSyncConfiguration_Private.h */; }; + 95780C5038AB147C604E51170BEE0D3F /* RLMMigration_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 9E20F792726DCF3C9B39760070796596 /* RLMMigration_Private.h */; }; + 96EF4F3D5600F1FE298BC96A0A7F9742 /* ObjectSchema.swift in Sources */ = {isa = PBXBuildFile; fileRef = 66F41B50D8310E025A7BBEE9B370D185 /* ObjectSchema.swift */; }; + 99C76265D213A3D2DB8E6AA4BB039A23 /* RLMSyncCredentials.m in Sources */ = {isa = PBXBuildFile; fileRef = 5402AF9328A911176F8326FA84222F4D /* RLMSyncCredentials.m */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 99EA0FBFE026C352379821A3737031EE /* RLMSyncSession.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 2FB23727980C986278B33391A4EDA98D /* RLMSyncSession.h */; }; + 9A387D80BB8F2A8601A73B890E239F9F /* list_notifier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5A07A8A8028AE1B33EAAA7979DB6B847 /* list_notifier.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + 9B6AE63C137550A347BBC14A968495FA /* RLMProperty_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 6FFFBE35D8CD37E4F96DFDC919412F64 /* RLMProperty_Private.h */; }; + 9C75D5BDEE539B5D4505CC73896C7D62 /* SortDescriptor.swift in Sources */ = {isa = PBXBuildFile; fileRef = D151AE1567A22BF33B4B22A9CC2F36DD /* SortDescriptor.swift */; }; + 9C99FCC0F314940C135AAB0BE218E2AF /* RLMProperty.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = F100498E3A55FCD698343AE663FBC533 /* RLMProperty.h */; }; + 9CB8C971F774BB33792FC3A9EF10D001 /* RLMSyncUser.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 3C76B70A4C9BCC49C83A6F549CFE4356 /* RLMSyncUser.h */; }; + 9D6F1F8DEC251E574897B447A0E9D885 /* SwiftChart-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 6677B1E6745CD047E622914F3945E673 /* SwiftChart-dummy.m */; }; + 9E4BFB7CFC09258C22A18B4AB4C331DB /* NSArray+Chameleon.m in Sources */ = {isa = PBXBuildFile; fileRef = 4026515E0771C12CAC0E848BBB63A2CF /* NSArray+Chameleon.m */; }; + 9ED2BB2981896E0A39EFA365503F58CE /* AFError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E59D14AB66092E668FA3724120439E3 /* AFError.swift */; }; + 9F21BB1768120A1E3E6353BB2F1F5511 /* Box.swift in Sources */ = {isa = PBXBuildFile; fileRef = 870D87C5372AD947DC76BE89574DFFF7 /* Box.swift */; }; + 9F82090ACF465F474464AF6648769DC8 /* RLMSyncSubscription.mm in Sources */ = {isa = PBXBuildFile; fileRef = 6BBE938FF7CE8F598642E2163782F1E8 /* RLMSyncSubscription.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + A033548BF1BF520A80F037727644A2B2 /* SVProgressAnimatedView.h in Headers */ = {isa = PBXBuildFile; fileRef = 33AAC4FF727892EB5A88D76441EB8034 /* SVProgressAnimatedView.h */; settings = {ATTRIBUTES = (Public, ); }; }; + A19478FE5A3570D900419921B96840AB /* RLMObjectStore.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 4A5756DF24A1F4AE44F3B28A2957C0D2 /* RLMObjectStore.h */; }; + A2A3744310C755E385C362997983B47F /* Promise.swift in Sources */ = {isa = PBXBuildFile; fileRef = E9DB9B15672EAA97BA0381CF11F2FB14 /* Promise.swift */; }; + A2A6F71B727312BD45CC7A4AAD7B0AB7 /* NetworkReachabilityManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = F64E781507231AFC862D7E32C32FFB6E /* NetworkReachabilityManager.swift */; }; + A2FAFB6EDBD912BE0E8E3D7414E48370 /* binding_callback_thread_observer.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BE33B99930418B82C0DA55AD1B1DABB0 /* binding_callback_thread_observer.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + A4B525D5728A3E8D3AE451A9EB797B3C /* RLMConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = 97A85459BEEB22063FD286FF84A995C4 /* RLMConstants.m */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + A5B7F693A44994AD53E1E80EEF3815A7 /* RLMArray_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 0121D20D9E8E591D410348DEEC8419AD /* RLMArray_Private.h */; }; + A65B0E310FF15DCD8026A9E74FEB070E /* hang.swift in Sources */ = {isa = PBXBuildFile; fileRef = EA0D6803B52E6802D884F0EB05373D92 /* hang.swift */; }; + A66765F693C2ECAB6E71AE485030F378 /* RLMObject_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 857917D6BF444E8985C3335FE4E14AB2 /* RLMObject_Private.h */; }; + A6EFEF248802A5A27B0C048EBA005D2E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 44DE4DEFAF0B71D0962C7C82D578B0A7 /* Foundation.framework */; }; + A7DD68FC70D7628E75BBD80523030912 /* ChartColors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 85BB1153FD5F107BD943C904018FB309 /* ChartColors.swift */; }; + A8A79840E81BFA3D8DCC29BE71F1AEC4 /* KingfisherManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4EFC3410355C9EEA94248BDE754DC978 /* KingfisherManager.swift */; }; + A9D2A6547EE5F6532EF8D1F1870BF158 /* CacheSerializer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 96C3869CF6A43B7BD1F899A5081430AD /* CacheSerializer.swift */; }; + A9EEEA7477981DEEBC72432DE9990A4B /* Alamofire-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 911ED0B37F892FF5B2F9A5ABE00F4AB6 /* Alamofire-dummy.m */; }; + AC0734709F6454E7DF9B27734B027753 /* RLMSyncCredentials.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = B04A3B8874B83F4558B31ADCD4D48784 /* RLMSyncCredentials.h */; }; + AD3B2955C4969698DE231D0C7CEEB3E5 /* SVRadialGradientLayer.h in Headers */ = {isa = PBXBuildFile; fileRef = 3EA602B674420FB05E049B058851313F /* SVRadialGradientLayer.h */; settings = {ATTRIBUTES = (Public, ); }; }; + AE1EF48399533730D0066E04B22CA2D6 /* SessionManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8B543979552007AA1891F26D83762863 /* SessionManager.swift */; }; + B00E04EB0EAF533314EDB4A79A3F7397 /* SVProgressHUD.m in Sources */ = {isa = PBXBuildFile; fileRef = 9D3CD9729DF02D7F14CBCD33D2D56A87 /* SVProgressHUD.m */; }; + B0233B49C9CCABEDB0A02D79C736B786 /* sync_metadata.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E572E840A2B6EB3A72C5E3A1A2F8E2B7 /* sync_metadata.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + B08C02846E513B153F48F04E4EAED7D2 /* Chart.swift in Sources */ = {isa = PBXBuildFile; fileRef = 993980085140CB356A42A3D861DC0CD1 /* Chart.swift */; }; + B1D8CDB3A961F10D8C3496BF587BE4AE /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 44DE4DEFAF0B71D0962C7C82D578B0A7 /* Foundation.framework */; }; + B2E20340303D3459A038A357712C2252 /* Alamofire+Promise.swift in Sources */ = {isa = PBXBuildFile; fileRef = 44D6405B149A6D18AE16727425E41474 /* Alamofire+Promise.swift */; }; + B53ED048699181ACEDBB101DE862F2EB /* sync_user.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 94E08983C35624D67250E6A2A7176A54 /* sync_user.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + B564B930C3B6CCFCC109ABF374B21CE6 /* ImageModifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = 115A33401E0A120F11554A919253CB53 /* ImageModifier.swift */; }; + B5B13DE43E5751021211AD1751E0A392 /* SVRadialGradientLayer.m in Sources */ = {isa = PBXBuildFile; fileRef = E705FFD877223D0B0101AF6254E69858 /* SVRadialGradientLayer.m */; }; + B65FCF589DA398C3EFE0128064E510EC /* MultipartFormData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1B5E75D734B464E8D0D744DA8E6A45E8 /* MultipartFormData.swift */; }; + B7A1A51F10814C1B589C51D6C47F74A4 /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C18FDC08C1866ACB755BC6456D9F9CF7 /* QuartzCore.framework */; }; + B87740A37116270929443DF724E29F14 /* RLMSyncSubscription.h in Headers */ = {isa = PBXBuildFile; fileRef = C3A19D76E413374358C330C6364B473F /* RLMSyncSubscription.h */; }; + B924069CD75769E22765912C66A87BF3 /* Image.swift in Sources */ = {isa = PBXBuildFile; fileRef = 302761828D29BA3715E56776C64D6459 /* Image.swift */; }; + BA289835870CC02A4D2FF8F3833BC5B4 /* RLMSyncUtil_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 7DB3D213AAE67209F9A9D53E1E25D6E7 /* RLMSyncUtil_Private.h */; }; + BA4DF38E820FF6B40FFABF8B1BBCC615 /* Kingfisher.h in Headers */ = {isa = PBXBuildFile; fileRef = C2BDEFF55386C131D4B8AFF30946D6E7 /* Kingfisher.h */; settings = {ATTRIBUTES = (Public, ); }; }; + BA6E02E98CAB7E6368A2F28B3248BFD2 /* weak_realm_notifier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A1DF647328528C03448741375AE3993B /* weak_realm_notifier.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + BBEFE2F9CEB73DC7BD97FFA66A0D9D4F /* Validation.swift in Sources */ = {isa = PBXBuildFile; fileRef = D8927FDE96718D53059A955F2EEDDE40 /* Validation.swift */; }; + BC7F0688B8256FBF7C467493E6BB5169 /* NSArray+Chameleon.h in Headers */ = {isa = PBXBuildFile; fileRef = 6EE92BDBC49085DB5EDCF7224595B3B6 /* NSArray+Chameleon.h */; settings = {ATTRIBUTES = (Public, ); }; }; + BD0C099FD1704FD68E4132BB065DACEA /* RLMResults.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = EC210E282A20580AC777D20AD7521060 /* RLMResults.h */; }; + BD54D3977DB4BC983C34B909EC2A10C5 /* UIColor+ChameleonPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = F07E279D64010940180B74CC84FB57C8 /* UIColor+ChameleonPrivate.h */; settings = {ATTRIBUTES = (Public, ); }; }; + BE5C67A07E289FE1F9BE27335B159997 /* ParameterEncoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = B8643B17061D5E3E247AD19C7FEB0A9A /* ParameterEncoding.swift */; }; + BE9FB5E8188E0B68DB277B09A06E79BA /* ImagePrefetcher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7B694E64D2F0157A60AE632464FD13F2 /* ImagePrefetcher.swift */; }; + BECF4C3F50FE510AEC466894F359E5B3 /* RLMSyncPermission.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = DD0EDB245A288DFDD27D5D49211DB642 /* RLMSyncPermission.h */; }; + BF1E50571AEE3CFDF996994AC5EC55CD /* RLMObservation.mm in Sources */ = {isa = PBXBuildFile; fileRef = ABBEE751FEE99D1B3841B73CAAA4EF2C /* RLMObservation.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + BF522FB8027B075D600576115FC7C4E9 /* RLMConstants.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 7EDAEB2432ADCB64A6F0DA876845C11E /* RLMConstants.h */; }; + BFE3E517C038937C0D3C94D91517769A /* results_notifier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F50C035EF952D40A95D7E03ED0D26D1F /* results_notifier.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + C082D72BC2DBD1E4862A8FFFC51B6AC2 /* UINavigationController+Chameleon.h in Headers */ = {isa = PBXBuildFile; fileRef = F7882ACE5B6A0B5560149D22A412B6F0 /* UINavigationController+Chameleon.h */; settings = {ATTRIBUTES = (Public, ); }; }; + C1A458C77808B9A1BF876B049DE053A8 /* Realm.h in Headers */ = {isa = PBXBuildFile; fileRef = 069859A775F881E0108466D6B55A9F1B /* Realm.h */; }; + C1EFEABB835E0EAAFC28087E70FB3E84 /* RLMListBase.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 430E903FD52B93897ABB8515CD13B8B6 /* RLMListBase.h */; }; + C2DCD90F01A45122D03B99CB329307DA /* sync_permission.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 74474A925762D7E3652C299BF5E17758 /* sync_permission.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + C32C7FE70764DE37935F6A5D80CB17C7 /* RequestModifier.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4AB08CFF2444EA8D5EFFBADF026CD3F /* RequestModifier.swift */; }; + C3DE444FE6A874075ADEBF8769D9F197 /* RLMAccessor.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 7BCD9D98544104A361E93BA03EDE97FB /* RLMAccessor.h */; }; + C44B3F499FA6DA502253A80ACDC59EFA /* RLMUpdateChecker.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0749864DB54B08D2F4FEC5B20848E8CE /* RLMUpdateChecker.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + C44C4E971EE9A492B28E1B8439F1B3A2 /* RLMListBase.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 430E903FD52B93897ABB8515CD13B8B6 /* RLMListBase.h */; }; + C47F90DCF582AF5EDD2D9EC6CD1F0CCF /* Guarantee.swift in Sources */ = {isa = PBXBuildFile; fileRef = B792B5F4E88AF38723BE305EE68159CB /* Guarantee.swift */; }; + C547137953719CFBC4979DF3B2083A6E /* ChameleonMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = A0388843F876AD8146F5BC509D916001 /* ChameleonMacros.h */; settings = {ATTRIBUTES = (Public, ); }; }; + C5DAF56F7939ED1B4732CCD894191970 /* shared_realm.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 96CF6794C81EE2A4C752C5DC83A892FD /* shared_realm.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + C5E06DAEE5EFC75FD87B9424177150DF /* UIImage+ChameleonPrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = 9AAE7C6607187E86982DDA9EDFC0DAFC /* UIImage+ChameleonPrivate.h */; settings = {ATTRIBUTES = (Public, ); }; }; + C5F0B1827D34F7876400492D5225E5EB /* RLMArray.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = F79570CF737176CFFBF9D891400C15A9 /* RLMArray.h */; }; C6FF1D264A91730D79EBC15A7DDA2CBC /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 44DE4DEFAF0B71D0962C7C82D578B0A7 /* Foundation.framework */; }; - C88C11F2572F5A4A3386C48EC4F5FD1C /* placeholder.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 405D039B273A0F032F9293555ED14218 /* placeholder.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - C8D81B932916881F5002BEA37918E679 /* RLMRealm+Sync.h in Headers */ = {isa = PBXBuildFile; fileRef = 1EE7D2A08897BF700F42FA13772C9637 /* RLMRealm+Sync.h */; }; - CA1F2293A739DCA6069FBD0A087D6A96 /* ChameleonConstants.h in Headers */ = {isa = PBXBuildFile; fileRef = A8507863770906D62047B2BCFD382515 /* ChameleonConstants.h */; settings = {ATTRIBUTES = (Public, ); }; }; - CA52C5D9908094A294B5A8C09DF2AF3C /* RLMObjectStore.h in Headers */ = {isa = PBXBuildFile; fileRef = 32A09A21339684C5DD6CC19018F1D774 /* RLMObjectStore.h */; }; - CAED0539162441D5B9BF627C24BD6D66 /* RLMSyncConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = E15AD57F580DA9006D796E2A65A7BFC1 /* RLMSyncConfiguration.h */; }; - CB6D60925223897FFA2662667DF83E8A /* Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = 148168BE900F23A0438580D465C82B63 /* Response.swift */; }; - CBAB49FEC6258019338AD12022E1CF89 /* RLMResults.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = BA620C8079276285E61DC55E8E010C63 /* RLMResults.h */; }; - CC4BF50FF04F1782FF246058194DD431 /* RLMObjectSchema.mm in Sources */ = {isa = PBXBuildFile; fileRef = A737AD0F7AD8213BEE04587521D499AA /* RLMObjectSchema.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - CC609DC67A832DBD93C6C5AD566D082D /* collection_notifier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 5EA3B8F4123418202C9542F7DAD27D57 /* collection_notifier.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - CC76A6C9CA4CCF7A19EF91395F23F150 /* UIImage+ChameleonPrivate.m in Sources */ = {isa = PBXBuildFile; fileRef = 4A28B9D99079C7C9275E37FB40DE1E56 /* UIImage+ChameleonPrivate.m */; }; - CCDA7AE5B827E9A3278F69F1E063738B /* SwiftyJSON.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3DA6F6E0A39135748BED4386F86CFB2B /* SwiftyJSON.swift */; }; - CD88B3CDB72E71846CC6AAAEAD0B9C2A /* RLMSchema_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = B165B55C0D7AC6D4F94B892C3BC0E0F1 /* RLMSchema_Private.h */; }; - CE38861F1268294930C074FC3F807E55 /* ThreadHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = D1C288319261747A9E4920348E0E6A80 /* ThreadHelper.swift */; }; - CE5F1E2C8ADCCF6A7E12FDFCF1B07A2D /* Alamofire.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CA149F823BC1CD745AB9E0534C694326 /* Alamofire.framework */; }; - CE622FA400E83D78DAC123C73898BE26 /* RLMListBase.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = E04DF0E29B2F559699F2E80594E9A2B2 /* RLMListBase.h */; }; - CEEB7C897409C08DF53289E307AB987C /* String+MD5.swift in Sources */ = {isa = PBXBuildFile; fileRef = 21F59D108BC6703BEBE613FA9F0ED05B /* String+MD5.swift */; }; - CF8455E120A8C8AC9EDEFC84E4750884 /* RLMListBase.mm in Sources */ = {isa = PBXBuildFile; fileRef = 11C267BACF91407FDDE5C7F19BB64160 /* RLMListBase.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - D0A815AC15AE024767F88A4D4AAAEC89 /* after.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4309A1EAE860373CAC6914735A194930 /* after.swift */; }; - D1575AAADDCEA395E3828EBAC2A772FA /* Box.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5A10276741DB7FD47E649753FF219434 /* Box.swift */; }; - D1BFD3F7B439746286BC75A07C4651D7 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 44DE4DEFAF0B71D0962C7C82D578B0A7 /* Foundation.framework */; }; - D225C27BAEAADA5A0BD0AE8EB594E17C /* RLMPlatform.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = EB3A764D9554573A86BC7EA8D331A5B1 /* RLMPlatform.h */; }; - D23966CD35A18B127D18BD03550EAD59 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 44DE4DEFAF0B71D0962C7C82D578B0A7 /* Foundation.framework */; }; - D2ED0AF6C6C1EF809C9079E364F7D68F /* ChameleonEnums.h in Headers */ = {isa = PBXBuildFile; fileRef = 49407EE458A79137F583103E1807519E /* ChameleonEnums.h */; settings = {ATTRIBUTES = (Public, ); }; }; - D5BFCA44CF635E1E68FA8DF7BA45986D /* RLMAccessor.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 1024E27DB140FFD86EDA2885C1BAC32D /* RLMAccessor.h */; }; - D9046C9E5C8E7910E4C1C5D18A82148C /* RLMSyncUtil.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 12A3070D56E0DE33A4493A45D1ED62FE /* RLMSyncUtil.h */; }; - D9C4F7AD1AD0C0D43E90A263990DCF54 /* RLMSyncPermission.mm in Sources */ = {isa = PBXBuildFile; fileRef = 2A6826F9A6464F93E32B64C79F6CA5EB /* RLMSyncPermission.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - D9CB77CE7151B4DD1A3D92EBF4A05C65 /* RLMSyncPermissionResults.mm in Sources */ = {isa = PBXBuildFile; fileRef = CCEC93A22D299009B2CF669049ADDD67 /* RLMSyncPermissionResults.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - DA64C9A4A65EFDD47F5A8B0CAD7A3707 /* list.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2CEDD50BD9CE4544B2FC1ABE1F44097B /* list.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - DA7A5ECA4C0B39776007BE89B99227EF /* ImageDownloader.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDD6B193581745546CEC070F290671DC /* ImageDownloader.swift */; }; - DC377DB2073D663B9C83F42D3ACABEC8 /* RLMConstants.m in Sources */ = {isa = PBXBuildFile; fileRef = 469DB80DDE39DEBA63E0F3910A8A84CB /* RLMConstants.m */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - DD44235FA9EB2CA3EF0DB04B3969B1D3 /* AnyPromise.h in Headers */ = {isa = PBXBuildFile; fileRef = 16D8DFD434E35AF06E9B2570C8FD39AF /* AnyPromise.h */; settings = {ATTRIBUTES = (Public, ); }; }; - DDCA60005B59783C2D9278ED76EF28A1 /* NSError+RLMSync.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 34B788F212A049CD605C82D6BF10EE0F /* NSError+RLMSync.h */; }; - DF60007892CD644DF7C302142AF5D27F /* RLMSyncUser.mm in Sources */ = {isa = PBXBuildFile; fileRef = D438AEC542DE20B79CF71DD63C17B1B7 /* RLMSyncUser.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - DFE86BAFF4C4F2E8F4F46D2C3F4B22A3 /* SVProgressHUD.bundle in Resources */ = {isa = PBXBuildFile; fileRef = E592508DA2DF696843C0E38F0FD1D2D6 /* SVProgressHUD.bundle */; }; - E0BC415454D6B878771E1DD307DE2C26 /* RLMObject.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 0AA1646FD24396E0B81DA8DFA88BDEB4 /* RLMObject.h */; }; - E16B522F15B3FF566C84D5A8A6AF1E09 /* SwiftVersion.swift in Sources */ = {isa = PBXBuildFile; fileRef = FC01A2F5DAF016BD105FBA4CF7B76E0F /* SwiftVersion.swift */; }; - E18A3308186AD49DA7B74A7F8BE42974 /* sync_user.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 32F6964375D27E0BC2922CBDC5E47541 /* sync_user.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - E1AC0F5965AFCB0C3B8CD3FA28FDB628 /* RLMOptionalBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 26D501D87506A61F23F694A971EC6166 /* RLMOptionalBase.h */; }; - E2B5C03E06CC5C6745B1FC519B7F242C /* RLMRealmConfiguration_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 1EB88B6437549FAC51EC6F8FCF38DAF9 /* RLMRealmConfiguration_Private.h */; }; - E34C81B31F191B13F3396A26CCB6B154 /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = C82EAE5531EA5C66802CC6FAA7763171 /* Configuration.swift */; }; - E3505B8ACDF3A0D03808F88D3D7CF1DA /* Thenable.swift in Sources */ = {isa = PBXBuildFile; fileRef = E2117193D92EC698D3B2586F057BC248 /* Thenable.swift */; }; - E447486ABB9534DB4AD01E97A36C0A6C /* RLMOptionalBase.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 26D501D87506A61F23F694A971EC6166 /* RLMOptionalBase.h */; }; - E4E5CCFA34F5DEC9602ED3F9F25C8B36 /* Schema.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6612053D84E1E9675F19F0E6799524BC /* Schema.swift */; }; - E58F78BE2F702EBE60B58C0DD3485C41 /* RLMSyncUtil_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = 91F65679EC921B36EBC32F9C55BFAC47 /* RLMSyncUtil_Private.h */; }; - E596AA45C609206D5113C6A5B98BD284 /* RLMArray_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 4C4D0A5B4C1F720C7FABD57EDED4231C /* RLMArray_Private.h */; }; - E6B4A0D5ABDC16A2CE5A1E3D8D3CE4DB /* RLMSyncCredentials.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = D804D42E64241AEFACF1D50AA42FDE37 /* RLMSyncCredentials.h */; }; - E71B7FDEE6094579ED25896A4AD63C49 /* RLMSchema.mm in Sources */ = {isa = PBXBuildFile; fileRef = F35E0788F67D5F48F2C081EA6CFA7F75 /* RLMSchema.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - E9DD886832C805C9B714CF33DED4A766 /* RLMSyncConfiguration.mm in Sources */ = {isa = PBXBuildFile; fileRef = E40FF8577F2DBD718EE5A69C2B7D4D3B /* RLMSyncConfiguration.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - E9E5F082818BE1AA4722E77DD066450F /* Kingfisher.swift in Sources */ = {isa = PBXBuildFile; fileRef = FD70D400295A311805EA96E3D279AD8B /* Kingfisher.swift */; }; - EB39EFE600A6ECA1DA857AFF337C706B /* RLMProperty.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 5940218E6A182F433055F7B2DC97C968 /* RLMProperty.h */; }; - EB67FD502CF55DAFA8C2A88C289CDAD0 /* AnyPromise.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13A0CB45F6BF541DCBF05269FAC5BEC9 /* AnyPromise.swift */; }; - EB97A80D1FD56BAD54828EA6D4376C61 /* Realm.swift in Sources */ = {isa = PBXBuildFile; fileRef = A614808D1367F1FF9590B5C77762EDF7 /* Realm.swift */; }; - EBFE6C8D4586F6F8367E4CA13823FEEA /* hang.swift in Sources */ = {isa = PBXBuildFile; fileRef = B5C1942BCDDF71B4DA513A37AC821E36 /* hang.swift */; }; - EC2CCE08109DFF1D170C44CBBC6BA703 /* RLMOptionalBase.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 26D501D87506A61F23F694A971EC6166 /* RLMOptionalBase.h */; }; - ED8F068792A491310A07341CD2E6340C /* Realm.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 311B47A4BBDBA8D6EDD5B88F76BDB942 /* Realm.h */; }; - EF80A234FCAE0DB2710FAB98AE71020B /* RealmConfiguration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43837B5FC7CB4D5927EB169D3B003A68 /* RealmConfiguration.swift */; }; - EFD264FC408EBF3BA2528E70B08DDD94 /* Notifications.swift in Sources */ = {isa = PBXBuildFile; fileRef = F98FBC5083CADF8610B5488D2D67B6D3 /* Notifications.swift */; }; - F02476F1A18DD29E7F4729C576E5500D /* RLMObjectBase.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = B021BB289B973BAEA5BDC27378F4755E /* RLMObjectBase.h */; }; - F2B671563C44D49F6DC8B216C48AB58A /* SVProgressHUD-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = C0750EB2B9317BE895CF5DE3FDB9CBD5 /* SVProgressHUD-dummy.m */; }; - F31404EFE583FE168B4040FA3C25D669 /* ThreadSafeReference.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3CD6243866210B7AAD2B224F5579E69A /* ThreadSafeReference.swift */; }; - F411B4B2159E5031791C4B9141405739 /* RLMArray.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 7CE1316F81F624136F84544BA791A7E7 /* RLMArray.h */; }; - F43C04FF1F5B13EE144CCCACA655112C /* sync_permission.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 31D429B5C1215BCE985335070FF10E9B /* sync_permission.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - F6BECD98B97CBFEBE2C96F0E9E72A6C0 /* ResponseSerialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5658459962B1823120E70AF30083A7C5 /* ResponseSerialization.swift */; }; - F6ED4CDE09C7D738A68EB6553EB624AB /* Util.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF0DBC3CC5F201DBEF8A1A5C39A84743 /* Util.swift */; }; - F6FEB79595C89B676A63FF7F0181FF94 /* RLMSyncCredentials.m in Sources */ = {isa = PBXBuildFile; fileRef = 3D20CB4FD626214A3A104F64296C3AF1 /* RLMSyncCredentials.m */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - F72E1F5521F0172F9C7D28BAB6D53576 /* RLMRealm.mm in Sources */ = {isa = PBXBuildFile; fileRef = 34FDBD9EEA5CE5E139300C78D4503356 /* RLMRealm.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.5.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; - F8B3D3092ED0417E8CDF32033F6122F5 /* Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3CCD2DBC55682AE0F7AA8DC7C6259B7F /* Alamofire.swift */; }; - F967B1A54490A7E656A265D5F87E48A8 /* RLMResults.h in Headers */ = {isa = PBXBuildFile; fileRef = BA620C8079276285E61DC55E8E010C63 /* RLMResults.h */; }; - F9FAA9A02B1FFC9298247CA414AF5AA3 /* Pods-pocloud-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A8A5C31425BBA75A7B674379EC000AA8 /* Pods-pocloud-dummy.m */; }; - FA344C44148F6F15CA14F315F1D07C61 /* RLMSyncSubscription.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 7B3A7E663D5EAE38832816B57E91D1AC /* RLMSyncSubscription.h */; }; - FB48DC5ECBAB973160FC8537433D13B4 /* ChameleonFramework-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 164F13683A64E1337D806FDB550DA350 /* ChameleonFramework-dummy.m */; }; - FB6D49D3E7CF33EDA4DA16B521B6369C /* UIViewController+Chameleon.m in Sources */ = {isa = PBXBuildFile; fileRef = 36986820DD7B3648E304618269ADFD26 /* UIViewController+Chameleon.m */; }; - FBB9F1F6106193B1FCCC38A30D741E08 /* RealmCollection.swift in Sources */ = {isa = PBXBuildFile; fileRef = F0B1D73510F5FDFAE09CB255334BF06B /* RealmCollection.swift */; }; - FBDD8B5F4FC7DD3010DC7A6826F05BC2 /* RLMRealmConfiguration+Sync.h in Headers */ = {isa = PBXBuildFile; fileRef = 0BDCBE875751985C7503D9D7738F1BBF /* RLMRealmConfiguration+Sync.h */; }; - FED97351EC4705507DAB175106B819C8 /* UIButton+Kingfisher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2B508E7D43485B2636CC9EA33EB1C935 /* UIButton+Kingfisher.swift */; }; + C71386BFC7CEC0F74230D4BDB1D82607 /* RLMSyncUser.h in Headers */ = {isa = PBXBuildFile; fileRef = 3C76B70A4C9BCC49C83A6F549CFE4356 /* RLMSyncUser.h */; }; + C8014A211A638ABD4F0CCC9E4061202C /* Pods-pocloud-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = A8A5C31425BBA75A7B674379EC000AA8 /* Pods-pocloud-dummy.m */; }; + C80D0B4F5776FAECCB9CD1110A610EE3 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8E96D57D774FB575BB6B3CB8D816916 /* UIKit.framework */; }; + C815CEACAE0EF6FDA155B484A53F4B54 /* RLMPredicateUtil.mm in Sources */ = {isa = PBXBuildFile; fileRef = 133826FF8FF5FE0D9AE70552ACFF1FF9 /* RLMPredicateUtil.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + C8C3D42A72030965F794DD7252D57F5E /* SVProgressHUD-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = B269550DDC991F08F069BBD57CFF1CF7 /* SVProgressHUD-dummy.m */; }; + CA1F2293A739DCA6069FBD0A087D6A96 /* ChameleonConstants.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B782A520D3CCEFE5491F8C4DF84B547 /* ChameleonConstants.h */; settings = {ATTRIBUTES = (Public, ); }; }; + CB6D60925223897FFA2662667DF83E8A /* Response.swift in Sources */ = {isa = PBXBuildFile; fileRef = 561AFA0DCE0629E26D5FFB38B83388E4 /* Response.swift */; }; + CBADA5256C269CB265F25667D99DC2B2 /* keychain_helper.cpp in Sources */ = {isa = PBXBuildFile; fileRef = D9F9DA0637D9CF2A4AF268F202EA6398 /* keychain_helper.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + CC76A6C9CA4CCF7A19EF91395F23F150 /* UIImage+ChameleonPrivate.m in Sources */ = {isa = PBXBuildFile; fileRef = CE2DC91D7781216FC1C8185F4052A782 /* UIImage+ChameleonPrivate.m */; }; + CE38861F1268294930C074FC3F807E55 /* ThreadHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D24C0044A30640775D9F8AC3E7AA60C /* ThreadHelper.swift */; }; + CEEB7C897409C08DF53289E307AB987C /* String+MD5.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62ED7DCA37B4A12513513DCA99935151 /* String+MD5.swift */; }; + D0EC9CED1C27B6279D7D4B0BD988AD65 /* RLMObjectSchema.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5E8802C37AC6734C5B00455CC46F0A68 /* RLMObjectSchema.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + D1575AAADDCEA395E3828EBAC2A772FA /* Box.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8F9EA260639ACC8A3018A686F68A0CAE /* Box.swift */; }; + D25EC14187D71C2099A93E25DCFFB852 /* object_notifier.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AA5A0770AD556EFD045A61522EF433DB /* object_notifier.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + D2ED0AF6C6C1EF809C9079E364F7D68F /* ChameleonEnums.h in Headers */ = {isa = PBXBuildFile; fileRef = 2835F7A3E1C97C097D2DBB10369D4625 /* ChameleonEnums.h */; settings = {ATTRIBUTES = (Public, ); }; }; + D31B4B0516F4B5D8B45EC7A1C75B08DB /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 44DE4DEFAF0B71D0962C7C82D578B0A7 /* Foundation.framework */; }; + D3EAC4F400AC8F22B8607B3F1B484120 /* RLMResults.h in Headers */ = {isa = PBXBuildFile; fileRef = EC210E282A20580AC777D20AD7521060 /* RLMResults.h */; }; + D421908021B705B308F458264ACF3625 /* RLMSyncManager.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 98BE3F0DB94502FAD3F69D53423B52D2 /* RLMSyncManager.h */; }; + D4563CCCE580FF4DFC2FF2E5B47C060A /* PromiseKit-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 08D74B2C583EA62F89EC057648DBE5A3 /* PromiseKit-dummy.m */; }; + D639FB5A21957C40AD960F5F2888DBDA /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 44DE4DEFAF0B71D0962C7C82D578B0A7 /* Foundation.framework */; }; + D6B804AE2B09D7391BDE70987A05559A /* RLMRealmConfiguration_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 3B239DB3F6FEBC2871B6BDC37B3800A9 /* RLMRealmConfiguration_Private.h */; }; + D72C2A963A8E5687FCDD129C7E427515 /* Results.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2FE771299449CB0E7533B4DC5F58E724 /* Results.swift */; }; + D80E4FB9ECF0B1BA92AFE3B31D15EEAC /* RLMSyncManager_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = C94AA744EFB890DE04E7980909D8DF33 /* RLMSyncManager_Private.h */; }; + D995751CCA0533E77C9B071519C267FC /* RLMSyncUtil.mm in Sources */ = {isa = PBXBuildFile; fileRef = 43D16CE795ACD3F14AEB1903C18AD413 /* RLMSyncUtil.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + DA7A5ECA4C0B39776007BE89B99227EF /* ImageDownloader.swift in Sources */ = {isa = PBXBuildFile; fileRef = 13F70639283568A70007C70A85CC543D /* ImageDownloader.swift */; }; + DB59E8A7DDB413DB2442A8C04619BDD7 /* RLMSchema.h in Headers */ = {isa = PBXBuildFile; fileRef = 409A0399538CBF6F3721F84A24A03952 /* RLMSchema.h */; }; + DB6C8A218C399426A067CE84931AFACB /* object.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 679C7C7587D40218B193B04091EF22BB /* object.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + DBAE274B2D3B04883B4DEBE7CD106695 /* sync_manager.cpp in Sources */ = {isa = PBXBuildFile; fileRef = E79F6D4273AE165CB0C762D941FD49F8 /* sync_manager.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + DC63201B4083C81902D675983AD691E8 /* Alamofire.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CA149F823BC1CD745AB9E0534C694326 /* Alamofire.framework */; }; + DCDF6781748B085514E56C45BAF42B96 /* ChartSeries.swift in Sources */ = {isa = PBXBuildFile; fileRef = DEA70D31C0AF1A4B71D45FDC83A3CCC6 /* ChartSeries.swift */; }; + DCE18F0FB371AA649EC330CA06C82B79 /* RLMSchema_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = CE462ADD1E2D874FD8827EF95924AE44 /* RLMSchema_Private.h */; }; + DE6078ADA4B8F1E66B60BE56165ADDCD /* RLMArray_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 0121D20D9E8E591D410348DEEC8419AD /* RLMArray_Private.h */; }; + DEE5C2F6C6E713C5E1315387C5D74F39 /* list.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 94BC712E6269E4A7B550E839B34FED84 /* list.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + DFDD585061F503C102BEB56AC5A3AF42 /* RLMSchema.mm in Sources */ = {isa = PBXBuildFile; fileRef = D931BEE4427488C33D747F3923E0ABE2 /* RLMSchema.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + E0CB2E01899680ED05C448334DEAC067 /* RLMResults_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = E368D0F9301094C0876677C1EDA28AAF /* RLMResults_Private.h */; }; + E3540788195A7EEE80DC3F4CBE02A7E2 /* system_configuration.cpp in Sources */ = {isa = PBXBuildFile; fileRef = C518CC0FB273D5CDAD64A638F6AF8789 /* system_configuration.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + E41BFFD780ABB6B0681CC0E4057F9DA1 /* ThreadSafeReference.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0E6D8EBEE41AAC8803400533591C2230 /* ThreadSafeReference.swift */; }; + E544BB1E0832038A75EB09D371325D14 /* RLMObjectBase.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 9468ECB6C02355492984982A77714C41 /* RLMObjectBase.h */; }; + E5F376E5AAA7474D1E6ACCAAE241E358 /* RLMSyncConfiguration_Private.h in Copy . Private Headers */ = {isa = PBXBuildFile; fileRef = 9C6F33FE3CF07041C28098876552C5FA /* RLMSyncConfiguration_Private.h */; }; + E6E396ECBEDBC635062E466A52B69539 /* RLMSyncConfiguration.mm in Sources */ = {isa = PBXBuildFile; fileRef = 42272772E19D27916CD170701A1B18BD /* RLMSyncConfiguration.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + E88284867AF7C5E4BA564EC651F4E6CF /* RLMJSONModels.m in Sources */ = {isa = PBXBuildFile; fileRef = FB3F016B9AA6259951ECA7A3D347BC59 /* RLMJSONModels.m */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + E9CB1ED0B6BEE942F98A094032ABAAD2 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7D0132EFFBA0D5F54CF346D6CC6D98CD /* Security.framework */; }; + E9E5F082818BE1AA4722E77DD066450F /* Kingfisher.swift in Sources */ = {isa = PBXBuildFile; fileRef = 40861DD66AD1FB5FF114D2FA08EB62DF /* Kingfisher.swift */; }; + EA923E66EFB7C1A7CB4FD3F29162F821 /* RLMSyncUtil.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = F90C6667BE5F969C6C6A89B01EF88909 /* RLMSyncUtil.h */; }; + EB720B7009DDD4FBC3AC7A7A147D7B6B /* when.m in Sources */ = {isa = PBXBuildFile; fileRef = C3C51B95FB2EFCB9C1A1B29C49D780A0 /* when.m */; }; + EBCC3030A0CCA9B745E418A650A38585 /* results.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 2D69C25F4DED73304CFC415FC060EC04 /* results.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + EC0D6B256C6245F9A482A096037D26B3 /* RLMObjectStore.h in Headers */ = {isa = PBXBuildFile; fileRef = 4A5756DF24A1F4AE44F3B28A2957C0D2 /* RLMObjectStore.h */; }; + ED1F3BA98BA9C7C2A7199E0C3189A4C0 /* RLMConstants.h in Headers */ = {isa = PBXBuildFile; fileRef = 7EDAEB2432ADCB64A6F0DA876845C11E /* RLMConstants.h */; }; + ED5B771ABE1467DB633DE18552D4E2BC /* fwd.h in Headers */ = {isa = PBXBuildFile; fileRef = 0CB0DA25E9DA1C92615FAD91A904DF57 /* fwd.h */; settings = {ATTRIBUTES = (Public, ); }; }; + EFD264FC408EBF3BA2528E70B08DDD94 /* Notifications.swift in Sources */ = {isa = PBXBuildFile; fileRef = D86DE146514060FB03A8EB7875751CB4 /* Notifications.swift */; }; + F0D748CF6DFDB4448AC0918099C9F240 /* RLMThreadSafeReference.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 6603939CC5A8D3E59297D5C771964301 /* RLMThreadSafeReference.h */; }; + F1E65768E434006C476A0D22D23E137A /* RLMOptionalBase.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 5AC75EF75E9BA81C6A4C393D8867A083 /* RLMOptionalBase.h */; }; + F38E26F2B5178EDF62151B49E01E999C /* RLMRealm_Dynamic.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 5AE42C969A99D38B4F7FBE25B00A962F /* RLMRealm_Dynamic.h */; }; + F41BF29A9EAC0CEA3CD96FB1A6A99749 /* RLMResults.mm in Sources */ = {isa = PBXBuildFile; fileRef = 0DFBADAC198E4113D3BB18E0483B367B /* RLMResults.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + F58A46089ABFA0269AC99B2B4F9EB650 /* RLMRealmConfiguration.mm in Sources */ = {isa = PBXBuildFile; fileRef = 20C174A994D9149F1382445215556BD8 /* RLMRealmConfiguration.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + F6B995D1CC14FD6D14B9620B730E9686 /* SwiftyJSON.swift in Sources */ = {isa = PBXBuildFile; fileRef = 57C9BAE72893AC9C460C5F5499F415EB /* SwiftyJSON.swift */; }; + F6BECD98B97CBFEBE2C96F0E9E72A6C0 /* ResponseSerialization.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8864E9A03CAAB8E3EC2FE39ACF2D614C /* ResponseSerialization.swift */; }; + F6C4BF4DA9BF6FA2FCE7B7AC717E0048 /* firstly.swift in Sources */ = {isa = PBXBuildFile; fileRef = 390C619DF008E7A770BFAB5B993D881B /* firstly.swift */; }; + F833C21665B4C62279C78D0C4E336762 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 44DE4DEFAF0B71D0962C7C82D578B0A7 /* Foundation.framework */; }; + F87533C3C166FB72ABE6907D2F333CBC /* Aliases.swift in Sources */ = {isa = PBXBuildFile; fileRef = 69E32A2E33DC69D7CAF4DCC47F49ADB0 /* Aliases.swift */; }; + F8B3D3092ED0417E8CDF32033F6122F5 /* Alamofire.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD44D6E44FF60A041CB2B80D2F3D74EF /* Alamofire.swift */; }; + F999DC029A7D3603416A2C577E4B567B /* RLMObject.h in Headers */ = {isa = PBXBuildFile; fileRef = F046922896204348860BB33590371530 /* RLMObject.h */; }; + FA1F344748E406D819D9B264DB9C548A /* List.swift in Sources */ = {isa = PBXBuildFile; fileRef = 700BDD7CA805B518ACE9EA9171A5EDED /* List.swift */; }; + FAFD98C06494BDD6A96446C0F1568CF6 /* Catchable.swift in Sources */ = {isa = PBXBuildFile; fileRef = FFBFB5DDEF0EEBD4B1B76BD110F5721C /* Catchable.swift */; }; + FB258361CC7F438884C7711E4321F91A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 44DE4DEFAF0B71D0962C7C82D578B0A7 /* Foundation.framework */; }; + FB48DC5ECBAB973160FC8537433D13B4 /* ChameleonFramework-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0959BDEE1293E37DF38F776CB3C4BB26 /* ChameleonFramework-dummy.m */; }; + FB6D49D3E7CF33EDA4DA16B521B6369C /* UIViewController+Chameleon.m in Sources */ = {isa = PBXBuildFile; fileRef = 1632ECB7002FCED4B34B430E0F7B14C9 /* UIViewController+Chameleon.m */; }; + FD1EC2E10A24DE15B1E02630F5B9094D /* RLMOptionalBase.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5B951F4057A699F027DAED0A10480665 /* RLMOptionalBase.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + FD6E1738FD08A125BF04E84F6D73C5B3 /* after.swift in Sources */ = {isa = PBXBuildFile; fileRef = 70D255BBF18A3D18FC6BDFF3AAB13DD6 /* after.swift */; }; + FE50AB196BA10D714A33550F78B4F051 /* RealmSwift-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 29EB1E52DAC6AA5B279E6AB0EE47275B /* RealmSwift-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + FE9914A85098C34A90D27650E633655D /* RLMRealmUtil.mm in Sources */ = {isa = PBXBuildFile; fileRef = 3B59FBFBFC8197BF796B725D996AE767 /* RLMRealmUtil.mm */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + FED97351EC4705507DAB175106B819C8 /* UIButton+Kingfisher.swift in Sources */ = {isa = PBXBuildFile; fileRef = CFEB396365D1E33963DF0A95EB36CE56 /* UIButton+Kingfisher.swift */; }; + FF5F08CF8215A6EF5369AB27A5D6AD38 /* index_set.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3DD5FB6C72EDD9F0B7AC128432922FFE /* index_set.cpp */; settings = {COMPILER_FLAGS = "-DREALM_HAVE_CONFIG -DREALM_COCOA_VERSION='@\"3.6.0\"' -D__ASSERTMACROS__ -DREALM_ENABLE_SYNC"; }; }; + FF6717AD334F763FCFD6430891F347DA /* Util.swift in Sources */ = {isa = PBXBuildFile; fileRef = 77B5BC603C2749DE8E87B54B8DC083A4 /* Util.swift */; }; + FF96EA68840B27FAC602BD0DCA79C473 /* RLMSchema.h in Copy . Public Headers */ = {isa = PBXBuildFile; fileRef = 409A0399538CBF6F3721F84A24A03952 /* RLMSchema.h */; }; + FFAADF4BB3ABA8B5ECFF22B582B90215 /* RealmSwift-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = CBE20C4557AAD15CAAC1D1086E2AE435 /* RealmSwift-dummy.m */; }; + FFF5B286634531ACFB91A61896800D6F /* Configuration.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6BCC3AC3975CFE44021DC84EC0D0F57E /* Configuration.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 077D5DAF8D7D49F7F20677D3BBF91B0F /* PBXContainerItemProxy */ = { + 267485814953EC716DC32CAE8AC4C698 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; proxyType = 1; - remoteGlobalIDString = A0AC682B8F4EC68EFBAE1FA33B63BD63; - remoteInfo = PromiseKit; - }; - 0802560194485BF2A820C389AF1C323C /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; - proxyType = 1; - remoteGlobalIDString = 44F99A04524EA222FB2F6336532A0235; - remoteInfo = Realm; - }; - 25BB974FE6C134BA284D237AF6ADC092 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; - proxyType = 1; - remoteGlobalIDString = 8A267660E1AD4832DE75665F2F87AEA3; - remoteInfo = ChameleonFramework; - }; - 2DA1BA378BF24B023B300B47CF39D78C /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; - proxyType = 1; - remoteGlobalIDString = 465C4815235623CEB3BF8AE8C9EA3D3B; + remoteGlobalIDString = 6424259DE82B46DD5E367ADD6EB9E4FD; remoteInfo = SVProgressHUD; }; - 4C23240E63FF05694C0CF8AAE4A98CAD /* PBXContainerItemProxy */ = { + 419B41E3175FBDD20D3BFD1A81D3FDB0 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; proxyType = 1; - remoteGlobalIDString = 88E9EC28B8B46C3631E6B242B50F4442; - remoteInfo = Alamofire; + remoteGlobalIDString = 8D2BA504143EF86C4E2C43AC593BB574; + remoteInfo = Realm; }; - 5DAC3420ACA9691466EAB2326F558691 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; - proxyType = 1; - remoteGlobalIDString = 88E9EC28B8B46C3631E6B242B50F4442; - remoteInfo = Alamofire; - }; - 619FEAE90DB98CE79B4FC16AC750DD84 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; - proxyType = 1; - remoteGlobalIDString = B32672B31407B2A7286F0FB380D0F5AC; - remoteInfo = RealmSwift; - }; - 6422F97A271DE3019C51F51528F21ACB /* PBXContainerItemProxy */ = { + 4CBDDF0E2412FCC032AAED87A04B15EB /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; proxyType = 1; remoteGlobalIDString = 4F87037150ABE2C9238B54E8F6E33F36; remoteInfo = Kingfisher; }; - C0E1B3962D3208F3F120BCB0D57E579D /* PBXContainerItemProxy */ = { + 58A12DE88FE8C2774A38FC5B0C169168 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; proxyType = 1; - remoteGlobalIDString = B6A4A63AEC382A876ED19E85A65C6750; + remoteGlobalIDString = 8A267660E1AD4832DE75665F2F87AEA3; + remoteInfo = ChameleonFramework; + }; + 5CAF966BDFC950E53E373D4E1B4E47CA /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + proxyType = 1; + remoteGlobalIDString = E94A09D439739DAB8BA2BEBE5D29EB7C; remoteInfo = SwiftyJSON; }; - D112787B997F13CEAA45CC83507E048A /* PBXContainerItemProxy */ = { + 704F78F1761E370D70C670C59AE3FCC8 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; proxyType = 1; - remoteGlobalIDString = 44F99A04524EA222FB2F6336532A0235; + remoteGlobalIDString = 88E9EC28B8B46C3631E6B242B50F4442; + remoteInfo = Alamofire; + }; + 7C0C44DBB04684521E9377885FEFF403 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + proxyType = 1; + remoteGlobalIDString = B44B923C0649012A6F16C2DD96DF0897; + remoteInfo = SwiftChart; + }; + 898E2E2231DA8D1D9ED765B895AC86AA /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + proxyType = 1; + remoteGlobalIDString = 8D2BA504143EF86C4E2C43AC593BB574; remoteInfo = Realm; }; + 8FAFAF5D4E9C0E62A8D22037B9B25E45 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + proxyType = 1; + remoteGlobalIDString = 705ADD82C609E92D57EA5F59ACCAF1E4; + remoteInfo = PromiseKit; + }; + A2D1B6E160FA50534C44D7F87BDDB752 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + proxyType = 1; + remoteGlobalIDString = 88E9EC28B8B46C3631E6B242B50F4442; + remoteInfo = Alamofire; + }; + EB4807FA10F430D5A57684986A3AE72C /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + proxyType = 1; + remoteGlobalIDString = 90288313532B7A756151C44436F9862C; + remoteInfo = RealmSwift; + }; /* End PBXContainerItemProxy section */ /* Begin PBXCopyFilesBuildPhase section */ - 5C15D29A566388D2DF710CD355821EC0 /* Copy . Private Headers */ = { + A3310AEA456C0C55D5A2E417D08240BD /* Copy . Private Headers */ = { isa = PBXCopyFilesBuildPhase; buildActionMask = 2147483647; dstPath = "$(PRIVATE_HEADERS_FOLDER_PATH)/."; dstSubfolderSpec = 16; files = ( - D5BFCA44CF635E1E68FA8DF7BA45986D /* RLMAccessor.h in Copy . Private Headers */, - E596AA45C609206D5113C6A5B98BD284 /* RLMArray_Private.h in Copy . Private Headers */, - 146E22258BCE8F22D2953E08A002165D /* RLMCollection_Private.h in Copy . Private Headers */, - CE622FA400E83D78DAC123C73898BE26 /* RLMListBase.h in Copy . Private Headers */, - 9103724A3AA78029515CD7FB6D0018AF /* RLMMigration_Private.h in Copy . Private Headers */, - BB100D4EB994FDEDCD3DDA16689A7E86 /* RLMObject_Private.h in Copy . Private Headers */, - 9E56EB6042AA42014BDB68DA18F32C8C /* RLMObjectBase_Private.h in Copy . Private Headers */, - B47C079628B9703748CE1202A5B48728 /* RLMObjectSchema_Private.h in Copy . Private Headers */, - 7017D84F388E31DDE96EA81B083BD284 /* RLMObjectStore.h in Copy . Private Headers */, - EC2CCE08109DFF1D170C44CBBC6BA703 /* RLMOptionalBase.h in Copy . Private Headers */, - 63189090DE445AE5AE38E8863167A022 /* RLMProperty_Private.h in Copy . Private Headers */, - BE98846DD4202FC5B3C04F475EB080E8 /* RLMRealm_Private.h in Copy . Private Headers */, - AE791D2264B1C64E1B9ADAD962BECBC9 /* RLMRealmConfiguration_Private.h in Copy . Private Headers */, - 20331C1242F0C26A874ABBA063957D69 /* RLMResults_Private.h in Copy . Private Headers */, - CD88B3CDB72E71846CC6AAAEAD0B9C2A /* RLMSchema_Private.h in Copy . Private Headers */, - C69858EA622DD818B2A959BD3DEC4688 /* RLMSyncConfiguration_Private.h in Copy . Private Headers */, - B635ACE8921063B85B1FD10FC56D96B5 /* RLMSyncManager_Private.h in Copy . Private Headers */, - 455F55B57D71F31F594866FF9F5CD3D5 /* RLMSyncUtil_Private.h in Copy . Private Headers */, + C3DE444FE6A874075ADEBF8769D9F197 /* RLMAccessor.h in Copy . Private Headers */, + DE6078ADA4B8F1E66B60BE56165ADDCD /* RLMArray_Private.h in Copy . Private Headers */, + 77B11B6C789EFDACC23E689380DEFE6A /* RLMCollection_Private.h in Copy . Private Headers */, + C44C4E971EE9A492B28E1B8439F1B3A2 /* RLMListBase.h in Copy . Private Headers */, + 95780C5038AB147C604E51170BEE0D3F /* RLMMigration_Private.h in Copy . Private Headers */, + 17DD09DFCB348339608DD041E8024E93 /* RLMObject_Private.h in Copy . Private Headers */, + 326D57C1814A1B1E7BDFBC8527DA9A51 /* RLMObjectBase_Private.h in Copy . Private Headers */, + 13BDEE662A8330D027C5570EAFD19374 /* RLMObjectSchema_Private.h in Copy . Private Headers */, + A19478FE5A3570D900419921B96840AB /* RLMObjectStore.h in Copy . Private Headers */, + 17B96459DF28E9C91053DE70C3F63385 /* RLMOptionalBase.h in Copy . Private Headers */, + 54492DC67B8214204D598E3497D74591 /* RLMProperty_Private.h in Copy . Private Headers */, + 68B1A8CFE5CEB70247EB97177EF6A108 /* RLMRealm_Private.h in Copy . Private Headers */, + D6B804AE2B09D7391BDE70987A05559A /* RLMRealmConfiguration_Private.h in Copy . Private Headers */, + 48F1774B40413C7CD22CDE2349A50928 /* RLMResults_Private.h in Copy . Private Headers */, + DCE18F0FB371AA649EC330CA06C82B79 /* RLMSchema_Private.h in Copy . Private Headers */, + E5F376E5AAA7474D1E6ACCAAE241E358 /* RLMSyncConfiguration_Private.h in Copy . Private Headers */, + D80E4FB9ECF0B1BA92AFE3B31D15EEAC /* RLMSyncManager_Private.h in Copy . Private Headers */, + 8509057B54F608E8F4AE0E6D568CB371 /* RLMSyncUtil_Private.h in Copy . Private Headers */, ); name = "Copy . Private Headers"; runOnlyForDeploymentPostprocessing = 0; }; - CB27A7037BBC0A6F57B20D866F70A953 /* Copy . Public Headers */ = { + CFD4F2AE3E6F82F99C06391D8F05F6C4 /* Copy . Public Headers */ = { isa = PBXCopyFilesBuildPhase; buildActionMask = 2147483647; dstPath = "$(PUBLIC_HEADERS_FOLDER_PATH)/."; dstSubfolderSpec = 16; files = ( - DDCA60005B59783C2D9278ED76EF28A1 /* NSError+RLMSync.h in Copy . Public Headers */, - ED8F068792A491310A07341CD2E6340C /* Realm.h in Copy . Public Headers */, - F411B4B2159E5031791C4B9141405739 /* RLMArray.h in Copy . Public Headers */, - 8C53C17F466906BCEC39337474F90250 /* RLMCollection.h in Copy . Public Headers */, - 86C023298D3BEB691829EE3AB98E2553 /* RLMConstants.h in Copy . Public Headers */, - B61F5DEDA1C5CC5E7340820FF2B2D900 /* RLMListBase.h in Copy . Public Headers */, - A4138B44E3E5E5B402AB6D427409695C /* RLMMigration.h in Copy . Public Headers */, - E0BC415454D6B878771E1DD307DE2C26 /* RLMObject.h in Copy . Public Headers */, - F02476F1A18DD29E7F4729C576E5500D /* RLMObjectBase.h in Copy . Public Headers */, - 1A4CFF6AA53C3FE89399A7E31E0D8A51 /* RLMObjectBase_Dynamic.h in Copy . Public Headers */, - 1F5FC076F6CBA4DDE356092E24DC5728 /* RLMObjectSchema.h in Copy . Public Headers */, - E447486ABB9534DB4AD01E97A36C0A6C /* RLMOptionalBase.h in Copy . Public Headers */, - D225C27BAEAADA5A0BD0AE8EB594E17C /* RLMPlatform.h in Copy . Public Headers */, - EB39EFE600A6ECA1DA857AFF337C706B /* RLMProperty.h in Copy . Public Headers */, - 155B9904624490248933A8E259D44843 /* RLMRealm+Sync.h in Copy . Public Headers */, - 0CF11FD9A968855BFB98604B70FEB1D4 /* RLMRealm.h in Copy . Public Headers */, - 2C7A0E227262A15CE5263DABA25E794E /* RLMRealm_Dynamic.h in Copy . Public Headers */, - AB3A20AE7726F03E462521D7F0FBCEE5 /* RLMRealmConfiguration+Sync.h in Copy . Public Headers */, - 0FA270E16D0E21096260990F51434E23 /* RLMRealmConfiguration.h in Copy . Public Headers */, - CBAB49FEC6258019338AD12022E1CF89 /* RLMResults.h in Copy . Public Headers */, - AEEA6CCF2B7498BACFC67ACB9BF87067 /* RLMSchema.h in Copy . Public Headers */, - 17C8CA299DD773CD440F971C2CE56FBD /* RLMSyncConfiguration.h in Copy . Public Headers */, - E6B4A0D5ABDC16A2CE5A1E3D8D3CE4DB /* RLMSyncCredentials.h in Copy . Public Headers */, - AC478688BFBE4B16DBBDD4CFD65DF8E4 /* RLMSyncManager.h in Copy . Public Headers */, - C335705D91C213B9C8AE4C3D24E63802 /* RLMSyncPermission.h in Copy . Public Headers */, - 4B101377001B7E4AD4C23C9FBA3B4459 /* RLMSyncSession.h in Copy . Public Headers */, - FA344C44148F6F15CA14F315F1D07C61 /* RLMSyncSubscription.h in Copy . Public Headers */, - C274CB67D73D37C0926A5ED894F69433 /* RLMSyncUser.h in Copy . Public Headers */, - D9046C9E5C8E7910E4C1C5D18A82148C /* RLMSyncUtil.h in Copy . Public Headers */, - C450DCDC3D9DD5E4226B782A979A98FF /* RLMThreadSafeReference.h in Copy . Public Headers */, + 2776616C13DDE0A9811BBC8E4925288B /* NSError+RLMSync.h in Copy . Public Headers */, + 60BB0BAC6A4DEE162A2350325876500D /* Realm.h in Copy . Public Headers */, + C5F0B1827D34F7876400492D5225E5EB /* RLMArray.h in Copy . Public Headers */, + 41C0CEE2CA82C86D00F1B6CDAD3772B4 /* RLMCollection.h in Copy . Public Headers */, + BF522FB8027B075D600576115FC7C4E9 /* RLMConstants.h in Copy . Public Headers */, + C1EFEABB835E0EAAFC28087E70FB3E84 /* RLMListBase.h in Copy . Public Headers */, + 3D1EFBEAB5B145B43CB9C87B085173E0 /* RLMMigration.h in Copy . Public Headers */, + 57A25CE2F1027C7294F31FB70CA80F67 /* RLMObject.h in Copy . Public Headers */, + E544BB1E0832038A75EB09D371325D14 /* RLMObjectBase.h in Copy . Public Headers */, + 747AECE336B57FB0448DD843E7E419FC /* RLMObjectBase_Dynamic.h in Copy . Public Headers */, + 5DA9379CDE4DDF909D7AFE70BB0DA597 /* RLMObjectSchema.h in Copy . Public Headers */, + F1E65768E434006C476A0D22D23E137A /* RLMOptionalBase.h in Copy . Public Headers */, + 105CA179DB547746BBD054289714F6A7 /* RLMPlatform.h in Copy . Public Headers */, + 9C99FCC0F314940C135AAB0BE218E2AF /* RLMProperty.h in Copy . Public Headers */, + 5BC5725BD93E478A2951C109D9021BA5 /* RLMRealm+Sync.h in Copy . Public Headers */, + 4A47EDF69E6BD96646DC547E3452F2DB /* RLMRealm.h in Copy . Public Headers */, + F38E26F2B5178EDF62151B49E01E999C /* RLMRealm_Dynamic.h in Copy . Public Headers */, + 6E7A5DE84A3B3D1DB6E6AF1018D71151 /* RLMRealmConfiguration+Sync.h in Copy . Public Headers */, + 01FCE63A4826F151D1FC2C85785DB31A /* RLMRealmConfiguration.h in Copy . Public Headers */, + BD0C099FD1704FD68E4132BB065DACEA /* RLMResults.h in Copy . Public Headers */, + FF96EA68840B27FAC602BD0DCA79C473 /* RLMSchema.h in Copy . Public Headers */, + 2BC063BB8FCB32FA37DAB408354FA34E /* RLMSyncConfiguration.h in Copy . Public Headers */, + AC0734709F6454E7DF9B27734B027753 /* RLMSyncCredentials.h in Copy . Public Headers */, + D421908021B705B308F458264ACF3625 /* RLMSyncManager.h in Copy . Public Headers */, + BECF4C3F50FE510AEC466894F359E5B3 /* RLMSyncPermission.h in Copy . Public Headers */, + 99EA0FBFE026C352379821A3737031EE /* RLMSyncSession.h in Copy . Public Headers */, + 79D4109D659B1A286FFDAF210C8E4AED /* RLMSyncSubscription.h in Copy . Public Headers */, + 9CB8C971F774BB33792FC3A9EF10D001 /* RLMSyncUser.h in Copy . Public Headers */, + EA923E66EFB7C1A7CB4FD3F29162F821 /* RLMSyncUtil.h in Copy . Public Headers */, + F0D748CF6DFDB4448AC0918099C9F240 /* RLMThreadSafeReference.h in Copy . Public Headers */, ); name = "Copy . Public Headers"; runOnlyForDeploymentPostprocessing = 0; @@ -484,338 +498,348 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ - 013C3E11C94D03C21233C57A952ECA0F /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 015B1073EABE6B3663D301C245081D96 /* list_notifier.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = list_notifier.cpp; path = Realm/ObjectStore/src/impl/list_notifier.cpp; sourceTree = ""; }; - 036EC38E356C7009E7702985003D4629 /* ImagePrefetcher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImagePrefetcher.swift; path = Sources/ImagePrefetcher.swift; sourceTree = ""; }; - 0402537231193FF2DC9AE44CAD2FCA56 /* RLMSyncManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncManager.h; path = include/RLMSyncManager.h; sourceTree = ""; }; + 00DE87D841A65ABEF675A7CC4B75375E /* RLMPlatform.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMPlatform.h; path = include/RLMPlatform.h; sourceTree = ""; }; + 0121D20D9E8E591D410348DEEC8419AD /* RLMArray_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMArray_Private.h; path = include/RLMArray_Private.h; sourceTree = ""; }; + 0186D7FF06B2AA0CF675B262569B6875 /* RLMSyncPermission.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMSyncPermission.mm; path = Realm/RLMSyncPermission.mm; sourceTree = ""; }; + 0257ED3312238D6F28490F9540A4D92F /* RLMRealmConfiguration+Sync.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "RLMRealmConfiguration+Sync.h"; path = "include/RLMRealmConfiguration+Sync.h"; sourceTree = ""; }; + 033BECE918B1FBD37D5C586FDB9A88FE /* SVProgressHUD-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SVProgressHUD-umbrella.h"; sourceTree = ""; }; 041546C28FAD9947BD99E5DA0DAB76DE /* Pods-pocloud-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-pocloud-resources.sh"; sourceTree = ""; }; - 04DEB9F9CDDFBB007909437B7AEBB2EF /* ChameleonFramework-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "ChameleonFramework-umbrella.h"; sourceTree = ""; }; - 05EB8A06A2A7F5DEEB7074280D74EDB2 /* ChameleonFramework-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "ChameleonFramework-prefix.pch"; sourceTree = ""; }; - 0642BB0E732F952139B90AD3BCE75F7A /* PromiseKit.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = PromiseKit.h; path = Sources/PromiseKit.h; sourceTree = ""; }; - 08D36F0C4481B3AED962FE5C5039A718 /* RealmSwift-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RealmSwift-prefix.pch"; sourceTree = ""; }; - 092D197A3DBC01BE7D3DC87FE68206BC /* SwiftyJSON.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = SwiftyJSON.modulemap; sourceTree = ""; }; - 09DE2237E50C91B08EDB830A6F9075B8 /* sync_file.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = sync_file.cpp; path = Realm/ObjectStore/src/sync/impl/sync_file.cpp; sourceTree = ""; }; - 0AA1646FD24396E0B81DA8DFA88BDEB4 /* RLMObject.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMObject.h; path = include/RLMObject.h; sourceTree = ""; }; - 0B079A00CBADBF7388DC071DAA970837 /* ChameleonFramework.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = ChameleonFramework.xcconfig; sourceTree = ""; }; - 0BDCBE875751985C7503D9D7738F1BBF /* RLMRealmConfiguration+Sync.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "RLMRealmConfiguration+Sync.h"; path = "include/RLMRealmConfiguration+Sync.h"; sourceTree = ""; }; - 0DEF8129AB4440A53F66EEB19599DE53 /* RLMObject_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMObject_Private.h; path = include/RLMObject_Private.h; sourceTree = ""; }; - 0EA08FBA6A6611E85E5B3CEB6D30E7F3 /* RLMSyncPermission.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncPermission.h; path = include/RLMSyncPermission.h; sourceTree = ""; }; - 0EA67006E0ABBE1584991474FE278FC2 /* Placeholder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Placeholder.swift; path = Sources/Placeholder.swift; sourceTree = ""; }; - 0EB01E8A603C50A990B449E4F1538D46 /* UIButton+Chameleon.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIButton+Chameleon.h"; path = "Pod/Classes/Objective-C/UIButton+Chameleon.h"; sourceTree = ""; }; - 0F8079961C3704B413F60D8FC0202176 /* RLMRealmConfiguration.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMRealmConfiguration.h; path = include/RLMRealmConfiguration.h; sourceTree = ""; }; - 1024E27DB140FFD86EDA2885C1BAC32D /* RLMAccessor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMAccessor.h; path = include/RLMAccessor.h; sourceTree = ""; }; - 11627F9A5E2BA034A9BC20B8085A0379 /* SortDescriptor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SortDescriptor.swift; path = RealmSwift/SortDescriptor.swift; sourceTree = ""; }; - 117A0AE9467FE5334200DCC48CEC1D1E /* Alamofire-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-umbrella.h"; sourceTree = ""; }; - 11C267BACF91407FDDE5C7F19BB64160 /* RLMListBase.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMListBase.mm; path = Realm/RLMListBase.mm; sourceTree = ""; }; - 12A3070D56E0DE33A4493A45D1ED62FE /* RLMSyncUtil.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncUtil.h; path = include/RLMSyncUtil.h; sourceTree = ""; }; - 12F443243C5DF0C54E1E184129A242FB /* Kingfisher.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Kingfisher.xcconfig; sourceTree = ""; }; - 13A0CB45F6BF541DCBF05269FAC5BEC9 /* AnyPromise.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnyPromise.swift; path = Sources/AnyPromise.swift; sourceTree = ""; }; - 14664C2A6EEF8AF2E3A59A1654130405 /* CacheSerializer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CacheSerializer.swift; path = Sources/CacheSerializer.swift; sourceTree = ""; }; - 148168BE900F23A0438580D465C82B63 /* Response.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Response.swift; path = Source/Response.swift; sourceTree = ""; }; - 1495FF97718546ADC39B7A2BE30648C3 /* RLMAccessor.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMAccessor.mm; path = Realm/RLMAccessor.mm; sourceTree = ""; }; - 164F13683A64E1337D806FDB550DA350 /* ChameleonFramework-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "ChameleonFramework-dummy.m"; sourceTree = ""; }; - 1694F8995C4542D86BBC0E96E54A487E /* ImageTransition.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageTransition.swift; path = Sources/ImageTransition.swift; sourceTree = ""; }; - 16D8DFD434E35AF06E9B2570C8FD39AF /* AnyPromise.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AnyPromise.h; path = Sources/AnyPromise.h; sourceTree = ""; }; - 1B8EA55E1C62F7FE5AF764B84332BF9B /* SVProgressHUD-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SVProgressHUD-umbrella.h"; sourceTree = ""; }; - 1D9220E07EB5DB96708E82889E2C4C87 /* RLMSyncSessionRefreshHandle.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMSyncSessionRefreshHandle.mm; path = Realm/RLMSyncSessionRefreshHandle.mm; sourceTree = ""; }; - 1E117D18B362E8C49055BD8D0698C1C6 /* Filter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Filter.swift; path = Sources/Filter.swift; sourceTree = ""; }; - 1E16E8226E4AA88FA8E794F44FEBCC5D /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 1EB88B6437549FAC51EC6F8FCF38DAF9 /* RLMRealmConfiguration_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMRealmConfiguration_Private.h; path = include/RLMRealmConfiguration_Private.h; sourceTree = ""; }; - 1EE7D2A08897BF700F42FA13772C9637 /* RLMRealm+Sync.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "RLMRealm+Sync.h"; path = "include/RLMRealm+Sync.h"; sourceTree = ""; }; - 203EA9B7A6420680B177FF54A356722D /* results_notifier.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = results_notifier.cpp; path = Realm/ObjectStore/src/impl/results_notifier.cpp; sourceTree = ""; }; - 21F59D108BC6703BEBE613FA9F0ED05B /* String+MD5.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "String+MD5.swift"; path = "Sources/String+MD5.swift"; sourceTree = ""; }; - 22639B95B380B288045FF15E5D225C9F /* Migration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Migration.swift; path = RealmSwift/Migration.swift; sourceTree = ""; }; - 2266DAC3F473C78462692AB5ED9190E1 /* UINavigationController+Chameleon.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UINavigationController+Chameleon.m"; path = "Pod/Classes/Objective-C/UINavigationController+Chameleon.m"; sourceTree = ""; }; - 2323219FD87357687894D4EDCD2C856D /* Request.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Request.swift; path = Source/Request.swift; sourceTree = ""; }; - 2448C86632282954B5EBA4554B249AD2 /* AnimatedImageView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimatedImageView.swift; path = Sources/AnimatedImageView.swift; sourceTree = ""; }; - 245F0F61DC6B9BF9094F98409BE93E9F /* Error.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Error.swift; path = Sources/Error.swift; sourceTree = ""; }; - 250A6494A701B9C367DC029CF6A6E8CC /* uuid.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = uuid.cpp; path = Realm/ObjectStore/src/util/uuid.cpp; sourceTree = ""; }; - 259C43EA401F22B5AD8A0D90EAEAD829 /* SVProgressAnimatedView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = SVProgressAnimatedView.h; path = SVProgressHUD/SVProgressAnimatedView.h; sourceTree = ""; }; - 26655C7C8ACE3106DAF15CED6AC73030 /* NSArray+Chameleon.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "NSArray+Chameleon.m"; path = "Pod/Classes/Objective-C/NSArray+Chameleon.m"; sourceTree = ""; }; - 26B697CBDD08FD522107A0DB9A9083BC /* UILabel+Chameleon.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UILabel+Chameleon.h"; path = "Pod/Classes/Objective-C/UILabel+Chameleon.h"; sourceTree = ""; }; - 26D501D87506A61F23F694A971EC6166 /* RLMOptionalBase.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMOptionalBase.h; path = include/RLMOptionalBase.h; sourceTree = ""; }; - 26E7A628B7925AA77F775DD246631A44 /* primitive_list_notifier.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = primitive_list_notifier.cpp; path = Realm/ObjectStore/src/impl/primitive_list_notifier.cpp; sourceTree = ""; }; - 273F49017521BD3655ADC76F4F11CE47 /* RLMThreadSafeReference.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMThreadSafeReference.mm; path = Realm/RLMThreadSafeReference.mm; sourceTree = ""; }; - 2741AF43A6E87FCC35712102A7CE8B97 /* RLMRealm_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMRealm_Private.h; path = include/RLMRealm_Private.h; sourceTree = ""; }; - 279BB1824750089DA9C2714A4AC85295 /* hang.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = hang.m; path = Sources/hang.m; sourceTree = ""; }; - 27C6E514E53CE69D8723F7DB548DA9EA /* index_set.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = index_set.cpp; path = Realm/ObjectStore/src/index_set.cpp; sourceTree = ""; }; - 280E485B9DB3AB2D4DECAD6B89B0A3B9 /* SwiftyJSON.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = SwiftyJSON.framework; path = SwiftyJSON.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 288AF01C4A222E31D00D561C1AF25AD6 /* Aliases.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Aliases.swift; path = RealmSwift/Aliases.swift; sourceTree = ""; }; - 2932FBE3B9839F2EA9D64C72BF76C2B7 /* dispatch_promise.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = dispatch_promise.m; path = Sources/dispatch_promise.m; sourceTree = ""; }; + 05C09D0374B427D3E107ED81E4CA546E /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 067F73E79FC632FA973441E5B3D87BFA /* ChameleonFramework.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = ChameleonFramework.modulemap; sourceTree = ""; }; + 069859A775F881E0108466D6B55A9F1B /* Realm.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Realm.h; path = include/Realm.h; sourceTree = ""; }; + 0712E727FA0BD0C1005CFE322655ECAF /* sync_config.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = sync_config.cpp; path = Realm/ObjectStore/src/sync/sync_config.cpp; sourceTree = ""; }; + 0749864DB54B08D2F4FEC5B20848E8CE /* RLMUpdateChecker.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMUpdateChecker.mm; path = Realm/RLMUpdateChecker.mm; sourceTree = ""; }; + 07E6790A3D1E3164684BAFAF643F949B /* RLMCollection.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMCollection.h; path = include/RLMCollection.h; sourceTree = ""; }; + 0850078DD2527CF121657494F188F14B /* collection_change_builder.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = collection_change_builder.cpp; path = Realm/ObjectStore/src/impl/collection_change_builder.cpp; sourceTree = ""; }; + 08D74B2C583EA62F89EC057648DBE5A3 /* PromiseKit-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "PromiseKit-dummy.m"; sourceTree = ""; }; + 0959BDEE1293E37DF38F776CB3C4BB26 /* ChameleonFramework-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "ChameleonFramework-dummy.m"; sourceTree = ""; }; + 09BB08D7F1E09355F8763CBD15AE482A /* RLMMigration.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMMigration.mm; path = Realm/RLMMigration.mm; sourceTree = ""; }; + 0ADB12423AA8940DAAB2C57CF50D618C /* UIView+ChameleonPrivate.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIView+ChameleonPrivate.m"; path = "Pod/Classes/Objective-C/UIView+ChameleonPrivate.m"; sourceTree = ""; }; + 0C08AEA77E2EE782FBB518969B921C38 /* librealmcore-ios.a */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = archive.ar; name = "librealmcore-ios.a"; path = "core/librealmcore-ios.a"; sourceTree = ""; }; + 0C28171636B6478CBCAC65064B00BA52 /* DispatchQueue+Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Alamofire.swift"; path = "Source/DispatchQueue+Alamofire.swift"; sourceTree = ""; }; + 0CB0DA25E9DA1C92615FAD91A904DF57 /* fwd.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = fwd.h; path = Sources/fwd.h; sourceTree = ""; }; + 0D65ABDA10FB6FAF97F621D9415A1578 /* LinkingObjects.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LinkingObjects.swift; path = RealmSwift/LinkingObjects.swift; sourceTree = ""; }; + 0DFBADAC198E4113D3BB18E0483B367B /* RLMResults.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMResults.mm; path = Realm/RLMResults.mm; sourceTree = ""; }; + 0E6D8EBEE41AAC8803400533591C2230 /* ThreadSafeReference.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ThreadSafeReference.swift; path = RealmSwift/ThreadSafeReference.swift; sourceTree = ""; }; + 0FCBC5B3C38D32A7F45D1DA22BD87B65 /* dispatch_promise.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = dispatch_promise.m; path = Sources/dispatch_promise.m; sourceTree = ""; }; + 115A33401E0A120F11554A919253CB53 /* ImageModifier.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageModifier.swift; path = Sources/ImageModifier.swift; sourceTree = ""; }; + 11C5B97A8303AF21EE7F79D66F93DCC1 /* Realm-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Realm-prefix.pch"; sourceTree = ""; }; + 12F9F10AAE236243AA10204AF34BC750 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 133826FF8FF5FE0D9AE70552ACFF1FF9 /* RLMPredicateUtil.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMPredicateUtil.mm; path = Realm/RLMPredicateUtil.mm; sourceTree = ""; }; + 13F70639283568A70007C70A85CC543D /* ImageDownloader.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageDownloader.swift; path = Sources/ImageDownloader.swift; sourceTree = ""; }; + 1469A50845FA94302A1AC097C19A435F /* PromiseKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = PromiseKit.framework; path = PromiseKit.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 149E497A86D0B04D07C4BF26F707A127 /* object_schema.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = object_schema.cpp; path = Realm/ObjectStore/src/object_schema.cpp; sourceTree = ""; }; + 1632ECB7002FCED4B34B430E0F7B14C9 /* UIViewController+Chameleon.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIViewController+Chameleon.m"; path = "Pod/Classes/Objective-C/UIViewController+Chameleon.m"; sourceTree = ""; }; + 167D1E618C7945529947657FF4015F66 /* hang.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = hang.m; path = Sources/hang.m; sourceTree = ""; }; + 1683F36890A30C35C6CF6C85705834C3 /* Kingfisher-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Kingfisher-prefix.pch"; sourceTree = ""; }; + 186BBB5BF293E847606EB9ED758B36A9 /* Realm.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Realm.modulemap; sourceTree = ""; }; + 19B6F9814D5C8F98661440AB4B6B37CD /* RLMNetworkClient.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMNetworkClient.mm; path = Realm/RLMNetworkClient.mm; sourceTree = ""; }; + 1A059D53313CF9882AE7A44B58170985 /* Property.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Property.swift; path = RealmSwift/Property.swift; sourceTree = ""; }; + 1B051A1AD2040EAF87DE33B9E5A0A899 /* Pods_pocloud.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_pocloud.framework; path = "Pods-pocloud.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + 1B5E75D734B464E8D0D744DA8E6A45E8 /* MultipartFormData.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MultipartFormData.swift; path = Source/MultipartFormData.swift; sourceTree = ""; }; + 1C8CDE49478E71D0325DA17BCC70F9F1 /* primitive_list_notifier.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = primitive_list_notifier.cpp; path = Realm/ObjectStore/src/impl/primitive_list_notifier.cpp; sourceTree = ""; }; + 1FEDBC380D7CCDDC3CCA561F541E677E /* Resolver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Resolver.swift; path = Sources/Resolver.swift; sourceTree = ""; }; + 20C174A994D9149F1382445215556BD8 /* RLMRealmConfiguration.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMRealmConfiguration.mm; path = Realm/RLMRealmConfiguration.mm; sourceTree = ""; }; + 2410CDE93220A09C799FCFE762F50744 /* RLMManagedArray.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMManagedArray.mm; path = Realm/RLMManagedArray.mm; sourceTree = ""; }; + 27DB3E20C26716CE1AC6AD951B44BB26 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 27F1908F5DC6B99B77DAA63A304ECE54 /* Alamofire.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Alamofire.modulemap; sourceTree = ""; }; + 282ADBD426BF6ABFAC0BE91ED24B6CC0 /* RLMRealm.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMRealm.h; path = include/RLMRealm.h; sourceTree = ""; }; + 2835F7A3E1C97C097D2DBB10369D4625 /* ChameleonEnums.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ChameleonEnums.h; path = "Pod/Classes/Objective-C/ChameleonEnums.h"; sourceTree = ""; }; + 28B6EDEEC5E384FE32E1657442E7DB1B /* RLMObjectSchema.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMObjectSchema.h; path = include/RLMObjectSchema.h; sourceTree = ""; }; + 29EB1E52DAC6AA5B279E6AB0EE47275B /* RealmSwift-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RealmSwift-umbrella.h"; sourceTree = ""; }; 2A32A5F933056AF0BB4CC991F44AE061 /* Pods-pocloud.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-pocloud.release.xcconfig"; sourceTree = ""; }; - 2A6826F9A6464F93E32B64C79F6CA5EB /* RLMSyncPermission.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMSyncPermission.mm; path = Realm/RLMSyncPermission.mm; sourceTree = ""; }; - 2A9BA425FE31717AB19E3A3097EE305B /* RLMObjectBase_Dynamic.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMObjectBase_Dynamic.h; path = include/RLMObjectBase_Dynamic.h; sourceTree = ""; }; - 2B508E7D43485B2636CC9EA33EB1C935 /* UIButton+Kingfisher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIButton+Kingfisher.swift"; path = "Sources/UIButton+Kingfisher.swift"; sourceTree = ""; }; - 2BD41E7551643F0E7DE5E76044BF05AA /* SVProgressHUD.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = SVProgressHUD.framework; path = SVProgressHUD.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 2C782BB04AB51744E97C3248A1355980 /* object_notifier.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = object_notifier.cpp; path = Realm/ObjectStore/src/impl/object_notifier.cpp; sourceTree = ""; }; - 2CEDD50BD9CE4544B2FC1ABE1F44097B /* list.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = list.cpp; path = Realm/ObjectStore/src/list.cpp; sourceTree = ""; }; - 2D57200BD530415B65183CAF747BA68C /* Chameleon.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Chameleon.h; path = "Pod/Classes/Objective-C/Chameleon.h"; sourceTree = ""; }; - 2D76CBD80AC6B1BCF6DA1BBC110D1E10 /* when.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = when.m; path = Sources/when.m; sourceTree = ""; }; - 2DBB21F1EEDBDF05153B24268A7DDF49 /* RLMCollection.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMCollection.mm; path = Realm/RLMCollection.mm; sourceTree = ""; }; - 2F027E0F35FE004F339CCDE1949B0733 /* Chameleon_.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Chameleon_.h; path = "Pod/Classes/Objective-C/Chameleon_.h"; sourceTree = ""; }; - 311B47A4BBDBA8D6EDD5B88F76BDB942 /* Realm.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Realm.h; path = include/Realm.h; sourceTree = ""; }; - 31D429B5C1215BCE985335070FF10E9B /* sync_permission.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = sync_permission.cpp; path = Realm/ObjectStore/src/sync/sync_permission.cpp; sourceTree = ""; }; - 325E0ED2B73306069C971D15A9C32513 /* shared_realm.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = shared_realm.cpp; path = Realm/ObjectStore/src/shared_realm.cpp; sourceTree = ""; }; - 32A09A21339684C5DD6CC19018F1D774 /* RLMObjectStore.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMObjectStore.h; path = include/RLMObjectStore.h; sourceTree = ""; }; - 32F6964375D27E0BC2922CBDC5E47541 /* sync_user.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = sync_user.cpp; path = Realm/ObjectStore/src/sync/sync_user.cpp; sourceTree = ""; }; - 34B788F212A049CD605C82D6BF10EE0F /* NSError+RLMSync.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "NSError+RLMSync.h"; path = "include/NSError+RLMSync.h"; sourceTree = ""; }; - 34FDBD9EEA5CE5E139300C78D4503356 /* RLMRealm.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMRealm.mm; path = Realm/RLMRealm.mm; sourceTree = ""; }; - 3541DC93EA6F997DC73EACEAAA47EF73 /* KingfisherManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KingfisherManager.swift; path = Sources/KingfisherManager.swift; sourceTree = ""; }; - 36986820DD7B3648E304618269ADFD26 /* UIViewController+Chameleon.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIViewController+Chameleon.m"; path = "Pod/Classes/Objective-C/UIViewController+Chameleon.m"; sourceTree = ""; }; - 36CD4AA8F13F67E62E5EFBFF2A2920C9 /* RLMRealm.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMRealm.h; path = include/RLMRealm.h; sourceTree = ""; }; - 3716B1762FE6B9752E70444025FCC126 /* UIAppearance+Swift.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIAppearance+Swift.m"; path = "Pod/Classes/Objective-C/UIAppearance+Swift.m"; sourceTree = ""; }; - 37703D2332DFE019831E57E068958A25 /* NetworkReachabilityManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NetworkReachabilityManager.swift; path = Source/NetworkReachabilityManager.swift; sourceTree = ""; }; - 37BC060B8E324F918BE5785B68CD41A8 /* Alamofire-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Alamofire-dummy.m"; sourceTree = ""; }; - 394D44FA4E552DE1E7A714C1C85E6C45 /* SwiftyJSON.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = SwiftyJSON.xcconfig; sourceTree = ""; }; + 2A508549D773152C50D7A7F0D30E6C6B /* Thenable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Thenable.swift; path = Sources/Thenable.swift; sourceTree = ""; }; + 2C69FE4D4B4A989F68FB329B1A5FFCFF /* RLMSyncPermissionResults.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMSyncPermissionResults.mm; path = Realm/RLMSyncPermissionResults.mm; sourceTree = ""; }; + 2D69C25F4DED73304CFC415FC060EC04 /* results.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = results.cpp; path = Realm/ObjectStore/src/results.cpp; sourceTree = ""; }; + 2D6DB555DF052E561309BE6FF785B7D3 /* RLMArray.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMArray.mm; path = Realm/RLMArray.mm; sourceTree = ""; }; + 2F6BE2672CF829FA8CE19678E9CEAF02 /* RLMClassInfo.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMClassInfo.mm; path = Realm/RLMClassInfo.mm; sourceTree = ""; }; + 2FB23727980C986278B33391A4EDA98D /* RLMSyncSession.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncSession.h; path = include/RLMSyncSession.h; sourceTree = ""; }; + 2FBA2EC0211955D59DF2AD89333A60D1 /* SVProgressHUD.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = SVProgressHUD.xcconfig; sourceTree = ""; }; + 2FE771299449CB0E7533B4DC5F58E724 /* Results.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Results.swift; path = RealmSwift/Results.swift; sourceTree = ""; }; + 2FE7DC15D8CBB0C24E5985CCE0A95CCC /* RealmCollection.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RealmCollection.swift; path = RealmSwift/RealmCollection.swift; sourceTree = ""; }; + 302761828D29BA3715E56776C64D6459 /* Image.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Image.swift; path = Sources/Image.swift; sourceTree = ""; }; + 30BF8581417F8D6FA8F7432B33694097 /* Optional.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Optional.swift; path = RealmSwift/Optional.swift; sourceTree = ""; }; + 3213EEED9AF86A39E2C3DE4CC578BB10 /* TaskDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TaskDelegate.swift; path = Source/TaskDelegate.swift; sourceTree = ""; }; + 332D7415C3936F8158E7020EF9F244A9 /* RLMSyncManager.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMSyncManager.mm; path = Realm/RLMSyncManager.mm; sourceTree = ""; }; + 332F7C93DBD31C940E50FA2AD7BABC6E /* SwiftChart.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = SwiftChart.framework; path = SwiftChart.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 33AAC4FF727892EB5A88D76441EB8034 /* SVProgressAnimatedView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = SVProgressAnimatedView.h; path = SVProgressHUD/SVProgressAnimatedView.h; sourceTree = ""; }; + 3549C30740CE09B411B903EC7025561C /* network_reachability_observer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = network_reachability_observer.cpp; path = Realm/ObjectStore/src/sync/impl/apple/network_reachability_observer.cpp; sourceTree = ""; }; + 35F8599E05E36E8DA489400EE58FEF9A /* RLMSyncConfiguration.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncConfiguration.h; path = include/RLMSyncConfiguration.h; sourceTree = ""; }; + 3678A368CA8C673FD74EB418177A567B /* UIView+ChameleonPrivate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIView+ChameleonPrivate.h"; path = "Pod/Classes/Objective-C/UIView+ChameleonPrivate.h"; sourceTree = ""; }; + 36DF68D5C5DC5D2F0592370CF3E091D3 /* Kingfisher.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Kingfisher.xcconfig; sourceTree = ""; }; + 380F6390028F12A9814D9C30B925CAC2 /* RLMObjectStore.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMObjectStore.mm; path = Realm/RLMObjectStore.mm; sourceTree = ""; }; + 3897F2C01770DE95C588C28C3241E47E /* UILabel+Chameleon.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UILabel+Chameleon.h"; path = "Pod/Classes/Objective-C/UILabel+Chameleon.h"; sourceTree = ""; }; + 38A91E765AB224793D503E47DE25F967 /* UIColor+Chameleon.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIColor+Chameleon.m"; path = "Pod/Classes/Objective-C/UIColor+Chameleon.m"; sourceTree = ""; }; + 390A84B69E0EA0B4B0235044426ADB80 /* RLMRealm_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMRealm_Private.h; path = include/RLMRealm_Private.h; sourceTree = ""; }; + 390C619DF008E7A770BFAB5B993D881B /* firstly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = firstly.swift; path = Sources/firstly.swift; sourceTree = ""; }; + 395EE7831170F49D37AF9DD819F59595 /* RLMAnalytics.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMAnalytics.mm; path = Realm/RLMAnalytics.mm; sourceTree = ""; }; 39805068056EB58D370D71A27CD2F678 /* Pods-pocloud-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-pocloud-umbrella.h"; sourceTree = ""; }; - 3B1FB373D263BBFFC297B8411343DDC2 /* sync_manager.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = sync_manager.cpp; path = Realm/ObjectStore/src/sync/sync_manager.cpp; sourceTree = ""; }; - 3B996A355B6ECB5A84056BE1396CB933 /* RLMObservation.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMObservation.mm; path = Realm/RLMObservation.mm; sourceTree = ""; }; + 39F891C0D105C3D7B82AC48E01930036 /* ImageProcessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageProcessor.swift; path = Sources/ImageProcessor.swift; sourceTree = ""; }; + 3A9097BC27D5E2DB6D3ECFAA0B466B9D /* Indicator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Indicator.swift; path = Sources/Indicator.swift; sourceTree = ""; }; + 3B1FD331CE6D658E51E9BE21C74A9D03 /* UIButton+Chameleon.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIButton+Chameleon.h"; path = "Pod/Classes/Objective-C/UIButton+Chameleon.h"; sourceTree = ""; }; + 3B239DB3F6FEBC2871B6BDC37B3800A9 /* RLMRealmConfiguration_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMRealmConfiguration_Private.h; path = include/RLMRealmConfiguration_Private.h; sourceTree = ""; }; + 3B59FBFBFC8197BF796B725D996AE767 /* RLMRealmUtil.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMRealmUtil.mm; path = Realm/RLMRealmUtil.mm; sourceTree = ""; }; 3BE718D082634402330BCE0909C8FA7B /* Realm.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Realm.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 3C13D927DA5CDBC8B6DD209F5AFA5A29 /* Kingfisher.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Kingfisher.framework; path = Kingfisher.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 3CCD2DBC55682AE0F7AA8DC7C6259B7F /* Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Alamofire.swift; path = Source/Alamofire.swift; sourceTree = ""; }; - 3CD6243866210B7AAD2B224F5579E69A /* ThreadSafeReference.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ThreadSafeReference.swift; path = RealmSwift/ThreadSafeReference.swift; sourceTree = ""; }; - 3D20CB4FD626214A3A104F64296C3AF1 /* RLMSyncCredentials.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RLMSyncCredentials.m; path = Realm/RLMSyncCredentials.m; sourceTree = ""; }; - 3D9F4EC665C71D83FD233CF6760686D0 /* RealmSwift.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = RealmSwift.modulemap; sourceTree = ""; }; - 3DA6F6E0A39135748BED4386F86CFB2B /* SwiftyJSON.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwiftyJSON.swift; path = Source/SwiftyJSON.swift; sourceTree = ""; }; - 40275F0CFC354CE6DD5657A6662CF380 /* UIImage+ChameleonPrivate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+ChameleonPrivate.h"; path = "Pod/Classes/Objective-C/UIImage+ChameleonPrivate.h"; sourceTree = ""; }; - 405D039B273A0F032F9293555ED14218 /* placeholder.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = placeholder.cpp; path = Realm/ObjectStore/src/placeholder.cpp; sourceTree = ""; }; - 4158533C002FD1D2A2D5CAF22236BE6C /* Alamofire.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Alamofire.xcconfig; sourceTree = ""; }; - 42514FBA011623E5533117822AA5C460 /* realm_coordinator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = realm_coordinator.cpp; path = Realm/ObjectStore/src/impl/realm_coordinator.cpp; sourceTree = ""; }; - 4309A1EAE860373CAC6914735A194930 /* after.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = after.swift; path = Sources/after.swift; sourceTree = ""; }; - 43837B5FC7CB4D5927EB169D3B003A68 /* RealmConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RealmConfiguration.swift; path = RealmSwift/RealmConfiguration.swift; sourceTree = ""; }; - 43D9D01F16807409B6C7E64CF4FF94A0 /* sync_session.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = sync_session.cpp; path = Realm/ObjectStore/src/sync/sync_session.cpp; sourceTree = ""; }; + 3C76B70A4C9BCC49C83A6F549CFE4356 /* RLMSyncUser.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncUser.h; path = include/RLMSyncUser.h; sourceTree = ""; }; + 3D4975867781530628E20A11F465EA59 /* AnyPromise.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AnyPromise.h; path = Sources/AnyPromise.h; sourceTree = ""; }; + 3DD5FB6C72EDD9F0B7AC128432922FFE /* index_set.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = index_set.cpp; path = Realm/ObjectStore/src/index_set.cpp; sourceTree = ""; }; + 3EA602B674420FB05E049B058851313F /* SVRadialGradientLayer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = SVRadialGradientLayer.h; path = SVProgressHUD/SVRadialGradientLayer.h; sourceTree = ""; }; + 3ECAC0844395303E54DBEAB48691131A /* ChameleonFramework.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = ChameleonFramework.framework; path = ChameleonFramework.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 3EF09A8B74C85C9AFABDEDBD6238F0B7 /* RLMObjectBase_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMObjectBase_Private.h; path = include/RLMObjectBase_Private.h; sourceTree = ""; }; + 3F45EA5868823D57F7FFED4605299E54 /* RLMSwiftSupport.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RLMSwiftSupport.m; path = Realm/RLMSwiftSupport.m; sourceTree = ""; }; + 4026515E0771C12CAC0E848BBB63A2CF /* NSArray+Chameleon.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "NSArray+Chameleon.m"; path = "Pod/Classes/Objective-C/NSArray+Chameleon.m"; sourceTree = ""; }; + 40861DD66AD1FB5FF114D2FA08EB62DF /* Kingfisher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Kingfisher.swift; path = Sources/Kingfisher.swift; sourceTree = ""; }; + 409A0399538CBF6F3721F84A24A03952 /* RLMSchema.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSchema.h; path = include/RLMSchema.h; sourceTree = ""; }; + 40A162E18F4431A9E2870119C629D7C2 /* RealmSwift.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RealmSwift.xcconfig; sourceTree = ""; }; + 40E5049E646905E9AE4E0F2101F206D8 /* Result.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Result.swift; path = Source/Result.swift; sourceTree = ""; }; + 41158C77FE22B096020E449E4DA92CBB /* RLMSyncSession.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMSyncSession.mm; path = Realm/RLMSyncSession.mm; sourceTree = ""; }; + 42272772E19D27916CD170701A1B18BD /* RLMSyncConfiguration.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMSyncConfiguration.mm; path = Realm/RLMSyncConfiguration.mm; sourceTree = ""; }; + 430E903FD52B93897ABB8515CD13B8B6 /* RLMListBase.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMListBase.h; path = include/RLMListBase.h; sourceTree = ""; }; + 4348319519D243801CC6340DAB87B5DB /* SVProgressAnimatedView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = SVProgressAnimatedView.m; path = SVProgressHUD/SVProgressAnimatedView.m; sourceTree = ""; }; + 43D16CE795ACD3F14AEB1903C18AD413 /* RLMSyncUtil.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMSyncUtil.mm; path = Realm/RLMSyncUtil.mm; sourceTree = ""; }; + 44D6405B149A6D18AE16727425E41474 /* Alamofire+Promise.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Alamofire+Promise.swift"; path = "Extensions/Alamofire/Sources/Alamofire+Promise.swift"; sourceTree = ""; }; 44DE4DEFAF0B71D0962C7C82D578B0A7 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.3.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; - 4611B676C9FD2794BA29AEA951CA7C0F /* race.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = race.m; path = Sources/race.m; sourceTree = ""; }; + 450FA9039C576DF6FA9F9E12DD4C3FEF /* join.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = join.m; path = Sources/join.m; sourceTree = ""; }; + 4520C429673AD32B07955E750C7E8A0A /* CustomStringConvertible.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CustomStringConvertible.swift; path = Sources/CustomStringConvertible.swift; sourceTree = ""; }; + 4597E0C0CE3F120795550AA2F66773D8 /* Alamofire-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-umbrella.h"; sourceTree = ""; }; 46232DD3ABC4E624F8DA81A2E7F193D8 /* CFNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CFNetwork.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.3.sdk/System/Library/Frameworks/CFNetwork.framework; sourceTree = DEVELOPER_DIR; }; - 469DB80DDE39DEBA63E0F3910A8A84CB /* RLMConstants.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RLMConstants.m; path = Realm/RLMConstants.m; sourceTree = ""; }; - 49407EE458A79137F583103E1807519E /* ChameleonEnums.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ChameleonEnums.h; path = "Pod/Classes/Objective-C/ChameleonEnums.h"; sourceTree = ""; }; - 4978EA807DD518CF621532F8211B71EA /* Alamofire.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Alamofire.modulemap; sourceTree = ""; }; - 4A28B9D99079C7C9275E37FB40DE1E56 /* UIImage+ChameleonPrivate.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+ChameleonPrivate.m"; path = "Pod/Classes/Objective-C/UIImage+ChameleonPrivate.m"; sourceTree = ""; }; - 4A649C08C6A14CB557FDFC4F8721E2AC /* RLMConstants.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMConstants.h; path = include/RLMConstants.h; sourceTree = ""; }; - 4A9962B2759E9FFFCDD65A5D35954C02 /* Alamofire-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-prefix.pch"; sourceTree = ""; }; - 4B90D360FB01D8D65E88387B2320B050 /* Realm-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Realm-dummy.m"; sourceTree = ""; }; - 4C4D0A5B4C1F720C7FABD57EDED4231C /* RLMArray_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMArray_Private.h; path = include/RLMArray_Private.h; sourceTree = ""; }; - 4F794A65CE066A9DD85CB989C332819A /* Resolver.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Resolver.swift; path = Sources/Resolver.swift; sourceTree = ""; }; + 46AD59FD129815D20E5A8ADE118BF294 /* ChameleonFramework-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "ChameleonFramework-prefix.pch"; sourceTree = ""; }; + 47975F5348BC70268AFB01E1DE82DADA /* ObjectiveCSupport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObjectiveCSupport.swift; path = RealmSwift/ObjectiveCSupport.swift; sourceTree = ""; }; + 48E6F647FE2BD50C532EBA0B41860385 /* Chameleon_.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Chameleon_.h; path = "Pod/Classes/Objective-C/Chameleon_.h"; sourceTree = ""; }; + 4A5756DF24A1F4AE44F3B28A2957C0D2 /* RLMObjectStore.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMObjectStore.h; path = include/RLMObjectStore.h; sourceTree = ""; }; + 4CA5424E77ADE6E9FBBBC12E067B81FC /* race.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = race.m; path = Sources/race.m; sourceTree = ""; }; + 4EFC3410355C9EEA94248BDE754DC978 /* KingfisherManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KingfisherManager.swift; path = Sources/KingfisherManager.swift; sourceTree = ""; }; + 4F3DAD915963159344F4BBDBBF1F0F96 /* UIAppearance+Swift.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIAppearance+Swift.h"; path = "Pod/Classes/Objective-C/UIAppearance+Swift.h"; sourceTree = ""; }; 4FDCC000ECBCDDBF14532533EB299B4A /* Pods-pocloud-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-pocloud-acknowledgements.markdown"; sourceTree = ""; }; - 5007B8D96633285A3070EE20D7FAEDFA /* RealmSwift-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RealmSwift-dummy.m"; sourceTree = ""; }; - 5068692F9A8D85E61A94EC2B4F6302FF /* ImageModifier.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageModifier.swift; path = Sources/ImageModifier.swift; sourceTree = ""; }; - 5424385AC1912D055BFCE4CA118DDE8E /* UIViewController+Chameleon.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIViewController+Chameleon.h"; path = "Pod/Classes/Objective-C/UIViewController+Chameleon.h"; sourceTree = ""; }; - 5617F7814651371AB22F8611BFC47656 /* RLMMigration.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMMigration.mm; path = Realm/RLMMigration.mm; sourceTree = ""; }; - 5658459962B1823120E70AF30083A7C5 /* ResponseSerialization.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ResponseSerialization.swift; path = Source/ResponseSerialization.swift; sourceTree = ""; }; - 56BECC5DB09CC019638E5717E1CDA76C /* thread_safe_reference.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = thread_safe_reference.cpp; path = Realm/ObjectStore/src/thread_safe_reference.cpp; sourceTree = ""; }; - 580105F1A23801F75414CBEB6B546A7F /* Result.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Result.swift; path = Source/Result.swift; sourceTree = ""; }; - 58857A4270010E2F66D14D2354BF08EF /* RLMSyncManager.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMSyncManager.mm; path = Realm/RLMSyncManager.mm; sourceTree = ""; }; + 503A96E996C98B2FECDAD7AD4FF0CC25 /* RLMRealm.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMRealm.mm; path = Realm/RLMRealm.mm; sourceTree = ""; }; + 50B057067CD3D377D62F03A87237D7D2 /* AnyPromise.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AnyPromise.m; path = Sources/AnyPromise.m; sourceTree = ""; }; + 5286C75A0CB7B7AAB14AA8069F68005A /* Sync.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sync.swift; path = RealmSwift/Sync.swift; sourceTree = ""; }; + 53A222CFEE05DA8169D1438B3C83EC9C /* SVProgressHUD.bundle */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "wrapper.plug-in"; name = SVProgressHUD.bundle; path = SVProgressHUD/SVProgressHUD.bundle; sourceTree = ""; }; + 5402AF9328A911176F8326FA84222F4D /* RLMSyncCredentials.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RLMSyncCredentials.m; path = Realm/RLMSyncCredentials.m; sourceTree = ""; }; + 55BA3B5637937797089F9EAC9C8C870F /* RealmConfiguration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RealmConfiguration.swift; path = RealmSwift/RealmConfiguration.swift; sourceTree = ""; }; + 55DD0F1A355F1B69276E60F293928D31 /* placeholder.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = placeholder.cpp; path = Realm/ObjectStore/src/placeholder.cpp; sourceTree = ""; }; + 561AFA0DCE0629E26D5FFB38B83388E4 /* Response.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Response.swift; path = Source/Response.swift; sourceTree = ""; }; + 57B6DF119EF2A8AC5070E5E6C8352A03 /* Chameleon.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Chameleon.h; path = "Pod/Classes/Objective-C/Chameleon.h"; sourceTree = ""; }; + 57C6D5D25D90EADCEDE4BBE2732A35A0 /* SwiftyJSON.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = SwiftyJSON.modulemap; sourceTree = ""; }; + 57C9BAE72893AC9C460C5F5499F415EB /* SwiftyJSON.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwiftyJSON.swift; path = Source/SwiftyJSON.swift; sourceTree = ""; }; + 58E2B8F8993302603FD006E07C2CFC72 /* Kingfisher-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Kingfisher-umbrella.h"; sourceTree = ""; }; 5911D0717F4D9EBB132AC3842B3CFB34 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 5940218E6A182F433055F7B2DC97C968 /* RLMProperty.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMProperty.h; path = include/RLMProperty.h; sourceTree = ""; }; - 599AC7301D4C70ABB010FE6FFF550B6D /* RLMRealmUtil.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMRealmUtil.mm; path = Realm/RLMRealmUtil.mm; sourceTree = ""; }; - 5A10276741DB7FD47E649753FF219434 /* Box.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Box.swift; path = Sources/Box.swift; sourceTree = ""; }; - 5AE62BB283CB99454B7EC00C4A0DC278 /* SessionManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionManager.swift; path = Source/SessionManager.swift; sourceTree = ""; }; - 5B3D2D1D6C1822AF5D1F17D214A2EA84 /* SessionDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionDelegate.swift; path = Source/SessionDelegate.swift; sourceTree = ""; }; - 5B5F70E3E5E49DF8AC37B6E2B8D9BF19 /* RLMSyncConfiguration_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncConfiguration_Private.h; path = include/RLMSyncConfiguration_Private.h; sourceTree = ""; }; - 5DB2113B5A6B69019AEB502264443213 /* object_store.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = object_store.cpp; path = Realm/ObjectStore/src/object_store.cpp; sourceTree = ""; }; - 5EA3B8F4123418202C9542F7DAD27D57 /* collection_notifier.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = collection_notifier.cpp; path = Realm/ObjectStore/src/impl/collection_notifier.cpp; sourceTree = ""; }; - 5F649BF78A4595CDFA859ED222F62673 /* transact_log_handler.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = transact_log_handler.cpp; path = Realm/ObjectStore/src/impl/transact_log_handler.cpp; sourceTree = ""; }; - 613EA807D186572DAB1A10C020781DE3 /* ImageCache.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageCache.swift; path = Sources/ImageCache.swift; sourceTree = ""; }; - 6160869B5FA63B4E56F6C2867B64F4FC /* UIColor+ChameleonPrivate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIColor+ChameleonPrivate.h"; path = "Pod/Classes/Objective-C/UIColor+ChameleonPrivate.h"; sourceTree = ""; }; - 6218F75F5E45FC44A38B246DCFB7D99C /* List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = List.swift; path = RealmSwift/List.swift; sourceTree = ""; }; - 63CF2F37C975390164EEA66401D07AB3 /* RLMRealmConfiguration.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMRealmConfiguration.mm; path = Realm/RLMRealmConfiguration.mm; sourceTree = ""; }; - 6612053D84E1E9675F19F0E6799524BC /* Schema.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Schema.swift; path = RealmSwift/Schema.swift; sourceTree = ""; }; - 67BD03AEED4FF2E588F8D3E4B50A31F5 /* PromiseKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = PromiseKit.framework; path = PromiseKit.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 691A676C2CB0F041321DE2EC6B1DC6E0 /* RLMResults_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMResults_Private.h; path = include/RLMResults_Private.h; sourceTree = ""; }; - 69EE522272ED3216D2EF5F104485F126 /* RLMObjectBase_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMObjectBase_Private.h; path = include/RLMObjectBase_Private.h; sourceTree = ""; }; - 69F41C00D9BB7F5C6387521BEBAE8C5E /* work_queue.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = work_queue.cpp; path = Realm/ObjectStore/src/sync/impl/work_queue.cpp; sourceTree = ""; }; - 69F87AD26042331633CAD1BFABCE6F6B /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 6BE12ED87EA685919A49CB0B3F7E0274 /* RLMAnalytics.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMAnalytics.mm; path = Realm/RLMAnalytics.mm; sourceTree = ""; }; - 6D3D479C00346497118A8B730F269990 /* SVProgressHUD.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = SVProgressHUD.modulemap; sourceTree = ""; }; - 6D81C240921BE96A635580E2BC28CFEE /* ChameleonFramework.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = ChameleonFramework.modulemap; sourceTree = ""; }; - 6E3E1B4A705B951CE23EE3BB9CC1CCB4 /* SVProgressHUD.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = SVProgressHUD.h; path = SVProgressHUD/SVProgressHUD.h; sourceTree = ""; }; + 5968E3F1ADB1F6151D68974774557F16 /* NSError+RLMSync.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "NSError+RLMSync.m"; path = "Realm/NSError+RLMSync.m"; sourceTree = ""; }; + 5A07A8A8028AE1B33EAAA7979DB6B847 /* list_notifier.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = list_notifier.cpp; path = Realm/ObjectStore/src/impl/list_notifier.cpp; sourceTree = ""; }; + 5AB2A81FB0FDFC0048FBB8A05BAB2447 /* Kingfisher.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Kingfisher.modulemap; sourceTree = ""; }; + 5AC75EF75E9BA81C6A4C393D8867A083 /* RLMOptionalBase.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMOptionalBase.h; path = include/RLMOptionalBase.h; sourceTree = ""; }; + 5AE42C969A99D38B4F7FBE25B00A962F /* RLMRealm_Dynamic.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMRealm_Dynamic.h; path = include/RLMRealm_Dynamic.h; sourceTree = ""; }; + 5B951F4057A699F027DAED0A10480665 /* RLMOptionalBase.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMOptionalBase.mm; path = Realm/RLMOptionalBase.mm; sourceTree = ""; }; + 5C7DB055A9FF859C8D9B207B0EBEA67E /* AnyPromise.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnyPromise.swift; path = Sources/AnyPromise.swift; sourceTree = ""; }; + 5DECE4A96DC82F1788D2496E380388BD /* thread_safe_reference.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = thread_safe_reference.cpp; path = Realm/ObjectStore/src/thread_safe_reference.cpp; sourceTree = ""; }; + 5E0854B11E127B790CB4C391D34D531A /* SVProgressHUD.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = SVProgressHUD.modulemap; sourceTree = ""; }; + 5E1324D4858E13AEB922B35546D2EF41 /* ChameleonConstants.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = ChameleonConstants.m; path = "Pod/Classes/Objective-C/ChameleonConstants.m"; sourceTree = ""; }; + 5E59D14AB66092E668FA3724120439E3 /* AFError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AFError.swift; path = Source/AFError.swift; sourceTree = ""; }; + 5E8802C37AC6734C5B00455CC46F0A68 /* RLMObjectSchema.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMObjectSchema.mm; path = Realm/RLMObjectSchema.mm; sourceTree = ""; }; + 5EDCB4D713194B7985A3F1A40A6CAF59 /* UIButton+Chameleon.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIButton+Chameleon.m"; path = "Pod/Classes/Objective-C/UIButton+Chameleon.m"; sourceTree = ""; }; + 5F27F3A93D04D26D8BE8E6A4CDCE3CAC /* RLMProperty.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMProperty.mm; path = Realm/RLMProperty.mm; sourceTree = ""; }; + 5FA917B1D37C02352E7C1D9E0E599FA5 /* UINavigationController+Chameleon.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UINavigationController+Chameleon.m"; path = "Pod/Classes/Objective-C/UINavigationController+Chameleon.m"; sourceTree = ""; }; + 5FCCA2362239AA24556A9225003BC1C2 /* Error.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Error.swift; path = Sources/Error.swift; sourceTree = ""; }; + 615EBDA4FE1C9FF6970F3747D5BB76BB /* SwiftyJSON.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = SwiftyJSON.framework; path = SwiftyJSON.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 62ED7DCA37B4A12513513DCA99935151 /* String+MD5.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "String+MD5.swift"; path = "Sources/String+MD5.swift"; sourceTree = ""; }; + 6603939CC5A8D3E59297D5C771964301 /* RLMThreadSafeReference.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMThreadSafeReference.h; path = include/RLMThreadSafeReference.h; sourceTree = ""; }; + 6677B1E6745CD047E622914F3945E673 /* SwiftChart-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "SwiftChart-dummy.m"; sourceTree = ""; }; + 66E9A978132CA9F57F2D4CA537E462AE /* PromiseKit-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PromiseKit-umbrella.h"; sourceTree = ""; }; + 66F41B50D8310E025A7BBEE9B370D185 /* ObjectSchema.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObjectSchema.swift; path = RealmSwift/ObjectSchema.swift; sourceTree = ""; }; + 679C7C7587D40218B193B04091EF22BB /* object.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = object.cpp; path = Realm/ObjectStore/src/object.cpp; sourceTree = ""; }; + 67F991C8B8367174AFF53BF7D8D6F1EE /* SwiftChart.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = SwiftChart.modulemap; sourceTree = ""; }; + 69E32A2E33DC69D7CAF4DCC47F49ADB0 /* Aliases.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Aliases.swift; path = RealmSwift/Aliases.swift; sourceTree = ""; }; + 6A098E23B03FD37283AE835A4243531B /* work_queue.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = work_queue.cpp; path = Realm/ObjectStore/src/sync/impl/work_queue.cpp; sourceTree = ""; }; + 6BBE938FF7CE8F598642E2163782F1E8 /* RLMSyncSubscription.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMSyncSubscription.mm; path = Realm/RLMSyncSubscription.mm; sourceTree = ""; }; + 6BCC3AC3975CFE44021DC84EC0D0F57E /* Configuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Configuration.swift; path = Sources/Configuration.swift; sourceTree = ""; }; + 6C329AB32D0C2C0E8F3300D62652EA29 /* RLMCollection.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMCollection.mm; path = Realm/RLMCollection.mm; sourceTree = ""; }; + 6C88151378845D023AF67DFB3479F7B9 /* Object.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Object.swift; path = RealmSwift/Object.swift; sourceTree = ""; }; + 6D398BF7F0C68524EEBB8EC767B71417 /* SwiftVersion.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwiftVersion.swift; path = RealmSwift/SwiftVersion.swift; sourceTree = ""; }; + 6DCAE60115007E4EDEABA45D6B13CBF1 /* RLMRealmConfiguration+Sync.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = "RLMRealmConfiguration+Sync.mm"; path = "Realm/RLMRealmConfiguration+Sync.mm"; sourceTree = ""; }; + 6E3C7CBB281D7EFA8906D97D0D74E98F /* NSError+RLMSync.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "NSError+RLMSync.h"; path = "include/NSError+RLMSync.h"; sourceTree = ""; }; + 6EE92BDBC49085DB5EDCF7224595B3B6 /* NSArray+Chameleon.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "NSArray+Chameleon.h"; path = "Pod/Classes/Objective-C/NSArray+Chameleon.h"; sourceTree = ""; }; 6F5C53EA0A01E65DFB980B5D08BD34B0 /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.3.sdk/System/Library/Frameworks/CoreGraphics.framework; sourceTree = DEVELOPER_DIR; }; - 70642B3E4D58AEA8CC5C2B547B34983E /* Box.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Box.swift; path = Sources/Box.swift; sourceTree = ""; }; - 724940ED6921C748C982FF892E00426F /* Pods_pocloud.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_pocloud.framework; path = "Pods-pocloud.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; - 73DAE7EA886BF78971BCEC02BE13B103 /* Object.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Object.swift; path = RealmSwift/Object.swift; sourceTree = ""; }; - 7622CF007B46CB35D5418C19DF59316C /* RLMManagedArray.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMManagedArray.mm; path = Realm/RLMManagedArray.mm; sourceTree = ""; }; - 766D2F20D66B6FF2AF1D4EAB824F9066 /* SVProgressAnimatedView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = SVProgressAnimatedView.m; path = SVProgressHUD/SVProgressAnimatedView.m; sourceTree = ""; }; - 770E3439F96F9D118B88F51CC177C251 /* FormatIndicatedCacheSerializer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FormatIndicatedCacheSerializer.swift; path = Sources/FormatIndicatedCacheSerializer.swift; sourceTree = ""; }; - 78C760CC7BB5DE34384733868F5870AD /* ParameterEncoding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ParameterEncoding.swift; path = Source/ParameterEncoding.swift; sourceTree = ""; }; + 6FFFBE35D8CD37E4F96DFDC919412F64 /* RLMProperty_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMProperty_Private.h; path = include/RLMProperty_Private.h; sourceTree = ""; }; + 700BDD7CA805B518ACE9EA9171A5EDED /* List.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = List.swift; path = RealmSwift/List.swift; sourceTree = ""; }; + 70D255BBF18A3D18FC6BDFF3AAB13DD6 /* after.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = after.swift; path = Sources/after.swift; sourceTree = ""; }; + 742D94437DE4E658881F39F5A0F00ED0 /* UIAppearance+Swift.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIAppearance+Swift.m"; path = "Pod/Classes/Objective-C/UIAppearance+Swift.m"; sourceTree = ""; }; + 74474A925762D7E3652C299BF5E17758 /* sync_permission.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = sync_permission.cpp; path = Realm/ObjectStore/src/sync/sync_permission.cpp; sourceTree = ""; }; + 75CFB0970AEB893D68874B9EB5B7DDF8 /* transact_log_handler.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = transact_log_handler.cpp; path = Realm/ObjectStore/src/impl/transact_log_handler.cpp; sourceTree = ""; }; + 75ED9E29508835F901F7BADBF7FA83B0 /* Request.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Request.swift; path = Source/Request.swift; sourceTree = ""; }; + 76A24C263F2C65318ED5356308F9EB92 /* partial_sync.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = partial_sync.cpp; path = Realm/ObjectStore/src/sync/partial_sync.cpp; sourceTree = ""; }; + 77B5BC603C2749DE8E87B54B8DC083A4 /* Util.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Util.swift; path = RealmSwift/Util.swift; sourceTree = ""; }; + 77EEC43ED2E8ED0420AE5DC19CF79C92 /* RLMRealm+Sync.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = "RLMRealm+Sync.mm"; path = "Realm/RLMRealm+Sync.mm"; sourceTree = ""; }; + 789902666C34CFD7875524CC17F0F84C /* RLMUtil.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMUtil.mm; path = Realm/RLMUtil.mm; sourceTree = ""; }; 7904EA655451E47F1B178CD6080E46B3 /* Pods-pocloud.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-pocloud.debug.xcconfig"; sourceTree = ""; }; - 793A8DC7498F5C2F4ECBD5970AA23E05 /* PromiseKit-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "PromiseKit-dummy.m"; sourceTree = ""; }; - 7B3A7E663D5EAE38832816B57E91D1AC /* RLMSyncSubscription.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncSubscription.h; path = include/RLMSyncSubscription.h; sourceTree = ""; }; - 7BAD62C91B37F95A7F092090D6700654 /* DispatchQueue+Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "DispatchQueue+Alamofire.swift"; path = "Source/DispatchQueue+Alamofire.swift"; sourceTree = ""; }; - 7C422C0B648D8C28653671B1027B6BDE /* RLMRealm+Sync.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = "RLMRealm+Sync.mm"; path = "Realm/RLMRealm+Sync.mm"; sourceTree = ""; }; - 7C7037F71ABCCC36D4503C634BBE25E2 /* SVProgressHUD.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = SVProgressHUD.xcconfig; sourceTree = ""; }; - 7CB724F58276A5CD525EF79E059935AF /* RLMArray.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMArray.mm; path = Realm/RLMArray.mm; sourceTree = ""; }; - 7CE1316F81F624136F84544BA791A7E7 /* RLMArray.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMArray.h; path = include/RLMArray.h; sourceTree = ""; }; + 7B694E64D2F0157A60AE632464FD13F2 /* ImagePrefetcher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImagePrefetcher.swift; path = Sources/ImagePrefetcher.swift; sourceTree = ""; }; + 7B782A520D3CCEFE5491F8C4DF84B547 /* ChameleonConstants.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ChameleonConstants.h; path = "Pod/Classes/Objective-C/ChameleonConstants.h"; sourceTree = ""; }; + 7BCD9D98544104A361E93BA03EDE97FB /* RLMAccessor.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMAccessor.h; path = include/RLMAccessor.h; sourceTree = ""; }; 7D0132EFFBA0D5F54CF346D6CC6D98CD /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.3.sdk/System/Library/Frameworks/Security.framework; sourceTree = DEVELOPER_DIR; }; - 7E6B64BCD382E49B287A6BABF26B1D55 /* Optional.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Optional.swift; path = RealmSwift/Optional.swift; sourceTree = ""; }; - 7F13F6EFAA687AA5F9E80B68CE128815 /* Kingfisher.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Kingfisher.h; path = Sources/Kingfisher.h; sourceTree = ""; }; - 7F9B8100B2293A4B9350ED4A123DAB27 /* schema.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = schema.cpp; path = Realm/ObjectStore/src/schema.cpp; sourceTree = ""; }; - 7FA755EB6ED6C584BC8DB1FFC4736DAE /* race.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = race.swift; path = Sources/race.swift; sourceTree = ""; }; - 7FB7797D20B4214247E5E4C802893724 /* RLMSyncUser.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncUser.h; path = include/RLMSyncUser.h; sourceTree = ""; }; - 804EB36C9AE72E4B0422B79432774B4F /* ServerTrustPolicy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ServerTrustPolicy.swift; path = Source/ServerTrustPolicy.swift; sourceTree = ""; }; - 810638791DBF1E39B34B97051435B201 /* RLMJSONModels.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RLMJSONModels.m; path = Realm/RLMJSONModels.m; sourceTree = ""; }; - 8163DDFB108E78AD35D137CB6C77011B /* keychain_helper.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = keychain_helper.cpp; path = Realm/ObjectStore/src/impl/apple/keychain_helper.cpp; sourceTree = ""; }; - 826073BF674EE51E8F7AA5242AD5901E /* UIColor+ChameleonPrivate.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIColor+ChameleonPrivate.m"; path = "Pod/Classes/Objective-C/UIColor+ChameleonPrivate.m"; sourceTree = ""; }; - 82E4A8B1F88890A9D3CA241336C659F5 /* SwiftyJSON-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SwiftyJSON-prefix.pch"; sourceTree = ""; }; - 833B4223165CBCA46776F13EE5F85782 /* partial_sync.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = partial_sync.cpp; path = Realm/ObjectStore/src/sync/partial_sync.cpp; sourceTree = ""; }; - 84E2DBAA7FC3FD9C3B086DD17F39FF6C /* network_reachability_observer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = network_reachability_observer.cpp; path = Realm/ObjectStore/src/sync/impl/apple/network_reachability_observer.cpp; sourceTree = ""; }; - 860F643B91B7EA18ECBE545597AE6E56 /* Kingfisher.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Kingfisher.modulemap; sourceTree = ""; }; - 86D2FFDD8FE3111B425D105A48D64A75 /* RLMRealmConfiguration+Sync.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = "RLMRealmConfiguration+Sync.mm"; path = "Realm/RLMRealmConfiguration+Sync.mm"; sourceTree = ""; }; - 88F8C0A1A8C3398FDB63B84FAF99D01A /* RLMObjectStore.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMObjectStore.mm; path = Realm/RLMObjectStore.mm; sourceTree = ""; }; - 89B7DEC53BFB6330306600C1EBEBD178 /* Indicator.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Indicator.swift; path = Sources/Indicator.swift; sourceTree = ""; }; - 8A868E0FF0D422C57BE453DDF7272C7A /* Kingfisher-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Kingfisher-umbrella.h"; sourceTree = ""; }; - 8B9CAF50A856109C0487E31A7B022AC3 /* Chameleon_.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = Chameleon_.m; path = "Pod/Classes/Objective-C/Chameleon_.m"; sourceTree = ""; }; - 8BCB555A73F7D0CE7B9F37DFF8852BE8 /* Catchable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Catchable.swift; path = Sources/Catchable.swift; sourceTree = ""; }; - 8C08C07F45270FB9DCC6EE9EAB08A931 /* Sync.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Sync.swift; path = RealmSwift/Sync.swift; sourceTree = ""; }; - 8C8842242396C4537870CAB3AF91C4C5 /* object.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = object.cpp; path = Realm/ObjectStore/src/object.cpp; sourceTree = ""; }; - 8DB3712B2499EDB32674F6927B6349A1 /* ChameleonFramework.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = ChameleonFramework.framework; path = ChameleonFramework.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 8EF685DAC6CD00E32EB31F0CFD558DAE /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 8FE2AF51D54D8C90660387FB02C44062 /* RLMSyncSession.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncSession.h; path = include/RLMSyncSession.h; sourceTree = ""; }; - 90C771AA5969C7A748FD76398F1785D9 /* UINavigationController+Chameleon.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UINavigationController+Chameleon.h"; path = "Pod/Classes/Objective-C/UINavigationController+Chameleon.h"; sourceTree = ""; }; - 91ECC59AFF97C45F079ADB967B7B20EB /* RLMSyncSession.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMSyncSession.mm; path = Realm/RLMSyncSession.mm; sourceTree = ""; }; - 91F65679EC921B36EBC32F9C55BFAC47 /* RLMSyncUtil_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncUtil_Private.h; path = include/RLMSyncUtil_Private.h; sourceTree = ""; }; - 91FF9005B393FADEC47433C780A35F9D /* librealmcore-ios.a */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = archive.ar; name = "librealmcore-ios.a"; path = "core/librealmcore-ios.a"; sourceTree = ""; }; + 7DB3D213AAE67209F9A9D53E1E25D6E7 /* RLMSyncUtil_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncUtil_Private.h; path = include/RLMSyncUtil_Private.h; sourceTree = ""; }; + 7DDC855EDB6F0CDABC40595E645987EF /* RLMThreadSafeReference.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMThreadSafeReference.mm; path = Realm/RLMThreadSafeReference.mm; sourceTree = ""; }; + 7EB8C25BC9A862D2A4433D94192A3441 /* RLMObjectBase_Dynamic.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMObjectBase_Dynamic.h; path = include/RLMObjectBase_Dynamic.h; sourceTree = ""; }; + 7EDAEB2432ADCB64A6F0DA876845C11E /* RLMConstants.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMConstants.h; path = include/RLMConstants.h; sourceTree = ""; }; + 7F80AF0E7104F15B7086BE4CDC817DBC /* realm_coordinator.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = realm_coordinator.cpp; path = Realm/ObjectStore/src/impl/realm_coordinator.cpp; sourceTree = ""; }; + 7FB017EC13054E1B53F9CA04B114CC8B /* Filter.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Filter.swift; path = Sources/Filter.swift; sourceTree = ""; }; + 816D222060828A34C1E58D402F34FAE8 /* SwiftyJSON-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "SwiftyJSON-dummy.m"; sourceTree = ""; }; + 83F2F7DBFD5DE0AAFDF63A26784B13FE /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 853AAA759B71AAEF60564CB4F82AC464 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 857917D6BF444E8985C3335FE4E14AB2 /* RLMObject_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMObject_Private.h; path = include/RLMObject_Private.h; sourceTree = ""; }; + 85BB1153FD5F107BD943C904018FB309 /* ChartColors.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ChartColors.swift; path = Source/ChartColors.swift; sourceTree = ""; }; + 870D87C5372AD947DC76BE89574DFFF7 /* Box.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Box.swift; path = Sources/Box.swift; sourceTree = ""; }; + 8748635C7300F9200D1C3B083A9C5ECE /* Error.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Error.swift; path = RealmSwift/Error.swift; sourceTree = ""; }; + 88472B117B54DD52258401D62D8AE5CE /* Resource.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Resource.swift; path = Sources/Resource.swift; sourceTree = ""; }; + 8864E9A03CAAB8E3EC2FE39ACF2D614C /* ResponseSerialization.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ResponseSerialization.swift; path = Source/ResponseSerialization.swift; sourceTree = ""; }; + 88A11DD12630B43389DF2F7D98056A92 /* ImageCache.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageCache.swift; path = Sources/ImageCache.swift; sourceTree = ""; }; + 8A19A28DD4A622AB5295E5C80E3A1B6D /* Chameleon_.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = Chameleon_.m; path = "Pod/Classes/Objective-C/Chameleon_.m"; sourceTree = ""; }; + 8B543979552007AA1891F26D83762863 /* SessionManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionManager.swift; path = Source/SessionManager.swift; sourceTree = ""; }; + 8BC73ED419B1086C4CE85240BBB98184 /* SwiftChart-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SwiftChart-prefix.pch"; sourceTree = ""; }; + 8D24C0044A30640775D9F8AC3E7AA60C /* ThreadHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ThreadHelper.swift; path = Sources/ThreadHelper.swift; sourceTree = ""; }; + 8D43205AB4A71F48FCECD11914F4CAF4 /* Alamofire.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Alamofire.framework; path = Alamofire.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 8F9EA260639ACC8A3018A686F68A0CAE /* Box.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Box.swift; path = Sources/Box.swift; sourceTree = ""; }; + 911ED0B37F892FF5B2F9A5ABE00F4AB6 /* Alamofire-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Alamofire-dummy.m"; sourceTree = ""; }; + 9219FD5E8223E62D5964FCE2990ADC6B /* FormatIndicatedCacheSerializer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = FormatIndicatedCacheSerializer.swift; path = Sources/FormatIndicatedCacheSerializer.swift; sourceTree = ""; }; + 9230A72F1AEC1BADDCC7186EB25BE0C7 /* RLMObject.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMObject.mm; path = Realm/RLMObject.mm; sourceTree = ""; }; + 92B8EF7ABDC366751FCC007B516BBBA0 /* sync_session.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = sync_session.cpp; path = Realm/ObjectStore/src/sync/sync_session.cpp; sourceTree = ""; }; + 936CD07388EDC2494410B80CC4717FF1 /* SVProgressHUD.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = SVProgressHUD.h; path = SVProgressHUD/SVProgressHUD.h; sourceTree = ""; }; 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - 94ABEBD69A3D65AE2F7548B8D3A29964 /* UIColor+Chameleon.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIColor+Chameleon.h"; path = "Pod/Classes/Objective-C/UIColor+Chameleon.h"; sourceTree = ""; }; - 95E22F0FC8527A0AF6188247B226823F /* sync_config.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = sync_config.cpp; path = Realm/ObjectStore/src/sync/sync_config.cpp; sourceTree = ""; }; - 99E2F10CCB18CA5104A55783194B7F3B /* SVRadialGradientLayer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = SVRadialGradientLayer.h; path = SVProgressHUD/SVRadialGradientLayer.h; sourceTree = ""; }; - 9AB1D3B47586EAF37CE0FC2D96E3C65F /* RLMUtil.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMUtil.mm; path = Realm/RLMUtil.mm; sourceTree = ""; }; - 9B4A82B8567691104E0B2E5589DDA531 /* Realm.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Realm.xcconfig; sourceTree = ""; }; + 93CB5431897F122335922F59F3C2B440 /* RLMObjectBase.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMObjectBase.mm; path = Realm/RLMObjectBase.mm; sourceTree = ""; }; + 9468ECB6C02355492984982A77714C41 /* RLMObjectBase.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMObjectBase.h; path = include/RLMObjectBase.h; sourceTree = ""; }; + 94BC712E6269E4A7B550E839B34FED84 /* list.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = list.cpp; path = Realm/ObjectStore/src/list.cpp; sourceTree = ""; }; + 94E08983C35624D67250E6A2A7176A54 /* sync_user.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = sync_user.cpp; path = Realm/ObjectStore/src/sync/sync_user.cpp; sourceTree = ""; }; + 959493D71FD0A4BA2E655D786ACFCD6B /* race.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = race.swift; path = Sources/race.swift; sourceTree = ""; }; + 960A4DBBFF871779B81F9E045539A9B8 /* Deprecations.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deprecations.swift; path = Sources/Deprecations.swift; sourceTree = ""; }; + 96C3869CF6A43B7BD1F899A5081430AD /* CacheSerializer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CacheSerializer.swift; path = Sources/CacheSerializer.swift; sourceTree = ""; }; + 96CF6794C81EE2A4C752C5DC83A892FD /* shared_realm.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = shared_realm.cpp; path = Realm/ObjectStore/src/shared_realm.cpp; sourceTree = ""; }; + 97A85459BEEB22063FD286FF84A995C4 /* RLMConstants.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RLMConstants.m; path = Realm/RLMConstants.m; sourceTree = ""; }; + 98BE3F0DB94502FAD3F69D53423B52D2 /* RLMSyncManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncManager.h; path = include/RLMSyncManager.h; sourceTree = ""; }; + 993980085140CB356A42A3D861DC0CD1 /* Chart.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Chart.swift; path = Source/Chart.swift; sourceTree = ""; }; + 9AAE7C6607187E86982DDA9EDFC0DAFC /* UIImage+ChameleonPrivate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+ChameleonPrivate.h"; path = "Pod/Classes/Objective-C/UIImage+ChameleonPrivate.h"; sourceTree = ""; }; + 9AE123E69DA163431F9826FCDDFE0622 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 9B50A11F03F5E6C84500E56E4B6849DE /* Pods-pocloud-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-pocloud-frameworks.sh"; sourceTree = ""; }; - 9B9E781E34077602231B53C8023E93A7 /* RLMQueryUtil.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMQueryUtil.mm; path = Realm/RLMQueryUtil.mm; sourceTree = ""; }; - 9D0ABB028458C3662BD35EB8BFD716DD /* Alamofire+Promise.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "Alamofire+Promise.swift"; path = "Extensions/Alamofire/Sources/Alamofire+Promise.swift"; sourceTree = ""; }; - 9D70898FD33E840C5160570CF4C490C8 /* SVIndefiniteAnimatedView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = SVIndefiniteAnimatedView.h; path = SVProgressHUD/SVIndefiniteAnimatedView.h; sourceTree = ""; }; - 9DA5413BE6B721B88FB44B00AEA3B96A /* Realm-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Realm-prefix.pch"; sourceTree = ""; }; - 9DA895BCF2B9FD46CFF0B133BFED9F6A /* binding_callback_thread_observer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = binding_callback_thread_observer.cpp; path = Realm/ObjectStore/src/binding_callback_thread_observer.cpp; sourceTree = ""; }; - 9DF5A5C2C25BF5E002D38C5F78F3426A /* SwiftyJSON-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SwiftyJSON-umbrella.h"; sourceTree = ""; }; - 9E31399968FFD6FED06271F3C254596D /* SVRadialGradientLayer.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = SVRadialGradientLayer.m; path = SVProgressHUD/SVRadialGradientLayer.m; sourceTree = ""; }; - 9FB634DA73B8A8A674F8281A2509F9E6 /* Kingfisher-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Kingfisher-dummy.m"; sourceTree = ""; }; - A115B496CC87566612F6B2C40E3C3F34 /* Deprecations.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Deprecations.swift; path = Sources/Deprecations.swift; sourceTree = ""; }; - A18E439FDF6127098B8C16B35C7D972D /* SVProgressHUD.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = SVProgressHUD.m; path = SVProgressHUD/SVProgressHUD.m; sourceTree = ""; }; - A1E53F2A4A5B09CD3C0E411A183A09F5 /* RLMOptionalBase.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMOptionalBase.mm; path = Realm/RLMOptionalBase.mm; sourceTree = ""; }; - A518D5C15C64E60C4704A532F8940FE2 /* LinkingObjects.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = LinkingObjects.swift; path = RealmSwift/LinkingObjects.swift; sourceTree = ""; }; - A5215A64C38F37ED464D85EE72755F9B /* Realm.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Realm.framework; path = Realm.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - A614808D1367F1FF9590B5C77762EDF7 /* Realm.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Realm.swift; path = RealmSwift/Realm.swift; sourceTree = ""; }; - A63D9A1AE8E5532EAC40F1934752D181 /* PromiseKit.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = PromiseKit.modulemap; sourceTree = ""; }; - A6F52DF147471E1D96F1B7CF449916DE /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - A70BDE5189C7520673EB6E6CB6F896AC /* RealmSwift-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RealmSwift-umbrella.h"; sourceTree = ""; }; - A737AD0F7AD8213BEE04587521D499AA /* RLMObjectSchema.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMObjectSchema.mm; path = Realm/RLMObjectSchema.mm; sourceTree = ""; }; - A78D5B018265ACE9814B0AAB5B85B375 /* PromiseKit-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PromiseKit-umbrella.h"; sourceTree = ""; }; - A7914B286DCAC9EBECAA94F66F858235 /* RLMSwiftSupport.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RLMSwiftSupport.m; path = Realm/RLMSwiftSupport.m; sourceTree = ""; }; + 9BEB907E124F77BA9A38B31E88C029A4 /* RLMQueryUtil.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMQueryUtil.mm; path = Realm/RLMQueryUtil.mm; sourceTree = ""; }; + 9C6F33FE3CF07041C28098876552C5FA /* RLMSyncConfiguration_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncConfiguration_Private.h; path = include/RLMSyncConfiguration_Private.h; sourceTree = ""; }; + 9CF1DD8BC8ED7A3E4721B3ACAE9A76D3 /* RLMAccessor.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMAccessor.mm; path = Realm/RLMAccessor.mm; sourceTree = ""; }; + 9D029DC1A613CFDFD9713293C0629203 /* AnimatedImageView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AnimatedImageView.swift; path = Sources/AnimatedImageView.swift; sourceTree = ""; }; + 9D3CD9729DF02D7F14CBCD33D2D56A87 /* SVProgressHUD.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = SVProgressHUD.m; path = SVProgressHUD/SVProgressHUD.m; sourceTree = ""; }; + 9E20F792726DCF3C9B39760070796596 /* RLMMigration_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMMigration_Private.h; path = include/RLMMigration_Private.h; sourceTree = ""; }; + A0388843F876AD8146F5BC509D916001 /* ChameleonMacros.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ChameleonMacros.h; path = "Pod/Classes/Objective-C/ChameleonMacros.h"; sourceTree = ""; }; + A1DF647328528C03448741375AE3993B /* weak_realm_notifier.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = weak_realm_notifier.cpp; path = Realm/ObjectStore/src/impl/weak_realm_notifier.cpp; sourceTree = ""; }; + A3610FFDE4173AEAFBC020E03D6F7A7B /* Kingfisher.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Kingfisher.framework; path = Kingfisher.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + A437EDD918468B6F6921037E78334545 /* RLMListBase.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMListBase.mm; path = Realm/RLMListBase.mm; sourceTree = ""; }; + A46966049B213458C4F1837F7EAF5428 /* Alamofire.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Alamofire.xcconfig; sourceTree = ""; }; + A479B3FFCD869510C99518C581F3CC3E /* SwiftChart.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = SwiftChart.xcconfig; sourceTree = ""; }; + A4D9C83C2F04C2EA10710B761189AB75 /* object_store.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = object_store.cpp; path = Realm/ObjectStore/src/object_store.cpp; sourceTree = ""; }; + A5801F6E0E6189B6372DFC83650072DC /* Migration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Migration.swift; path = RealmSwift/Migration.swift; sourceTree = ""; }; A84FE5497FF8CF4F39C206333259809A /* Pods-pocloud.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = "Pods-pocloud.modulemap"; sourceTree = ""; }; - A8507863770906D62047B2BCFD382515 /* ChameleonConstants.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ChameleonConstants.h; path = "Pod/Classes/Objective-C/ChameleonConstants.h"; sourceTree = ""; }; + A8793A3FE332B791A8B3994B323FCBEE /* SessionDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SessionDelegate.swift; path = Source/SessionDelegate.swift; sourceTree = ""; }; A8840851AFFC0E461B5B935C155CE611 /* Pods-pocloud-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-pocloud-acknowledgements.plist"; sourceTree = ""; }; A8A5C31425BBA75A7B674379EC000AA8 /* Pods-pocloud-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-pocloud-dummy.m"; sourceTree = ""; }; - AA9825BC28B7013AE0262E5583AC6D62 /* RLMNetworkClient.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMNetworkClient.mm; path = Realm/RLMNetworkClient.mm; sourceTree = ""; }; - AB475B29887821F928CF484C33FD9BA3 /* Kingfisher-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Kingfisher-prefix.pch"; sourceTree = ""; }; - AF0DBC3CC5F201DBEF8A1A5C39A84743 /* Util.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Util.swift; path = RealmSwift/Util.swift; sourceTree = ""; }; - B021BB289B973BAEA5BDC27378F4755E /* RLMObjectBase.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMObjectBase.h; path = include/RLMObjectBase.h; sourceTree = ""; }; - B0E18B6042BFBF45253EFD82138A88ED /* Property.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Property.swift; path = RealmSwift/Property.swift; sourceTree = ""; }; - B165B55C0D7AC6D4F94B892C3BC0E0F1 /* RLMSchema_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSchema_Private.h; path = include/RLMSchema_Private.h; sourceTree = ""; }; - B369F40D6E1C57F79FBC6C7062160819 /* UIColor+Chameleon.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIColor+Chameleon.m"; path = "Pod/Classes/Objective-C/UIColor+Chameleon.m"; sourceTree = ""; }; - B41055185B92B06E24031550C04D2AB8 /* object_schema.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = object_schema.cpp; path = Realm/ObjectStore/src/object_schema.cpp; sourceTree = ""; }; - B4FBD20E27C4D8E6B7D4596B8DE6BAE2 /* ChameleonConstants.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = ChameleonConstants.m; path = "Pod/Classes/Objective-C/ChameleonConstants.m"; sourceTree = ""; }; - B5C1942BCDDF71B4DA513A37AC821E36 /* hang.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = hang.swift; path = Sources/hang.swift; sourceTree = ""; }; - B6F020E55DCE3AB0229CAFF03DB1E274 /* Results.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Results.swift; path = RealmSwift/Results.swift; sourceTree = ""; }; - B7268A78D32AADCE3654DA0C343D5DD1 /* ChameleonMacros.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = ChameleonMacros.h; path = "Pod/Classes/Objective-C/ChameleonMacros.h"; sourceTree = ""; }; - B7855FD33C118142ACD710A2C5F7D71D /* NSArray+Chameleon.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "NSArray+Chameleon.h"; path = "Pod/Classes/Objective-C/NSArray+Chameleon.h"; sourceTree = ""; }; - B8404B421AE2273E2475A0ABFB349941 /* RLMProperty.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMProperty.mm; path = Realm/RLMProperty.mm; sourceTree = ""; }; - BA011A254773214FB91EB23A757D5276 /* RLMObjectSchema.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMObjectSchema.h; path = include/RLMObjectSchema.h; sourceTree = ""; }; - BA20F6DC726D1AA96BC9B9AE042A35BB /* Resource.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Resource.swift; path = Sources/Resource.swift; sourceTree = ""; }; - BA620C8079276285E61DC55E8E010C63 /* RLMResults.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMResults.h; path = include/RLMResults.h; sourceTree = ""; }; - BAFFD8636D3DA143D73C5D740C5B9E41 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - BB27A01EEF1BDDFFD7DC732DB29217FB /* ImageProcessor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageProcessor.swift; path = Sources/ImageProcessor.swift; sourceTree = ""; }; - BC1C3F96E874A55271C7315C7002B66A /* RLMPredicateUtil.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMPredicateUtil.mm; path = Realm/RLMPredicateUtil.mm; sourceTree = ""; }; - BD6C9428E6450A1B187BFEFA16A56412 /* fwd.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = fwd.h; path = Sources/fwd.h; sourceTree = ""; }; - C0750EB2B9317BE895CF5DE3FDB9CBD5 /* SVProgressHUD-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "SVProgressHUD-dummy.m"; sourceTree = ""; }; - C0D2CD7CD136DDD331955BFEE9458D0D /* UIButton+Chameleon.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIButton+Chameleon.m"; path = "Pod/Classes/Objective-C/UIButton+Chameleon.m"; sourceTree = ""; }; + A9B8919AB39D17A578CED457944217FF /* collection_notifier.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = collection_notifier.cpp; path = Realm/ObjectStore/src/impl/collection_notifier.cpp; sourceTree = ""; }; + A9FFFD475E5F246FE9C10E3AD59F2DF9 /* ChameleonFramework-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "ChameleonFramework-umbrella.h"; sourceTree = ""; }; + AA5A0770AD556EFD045A61522EF433DB /* object_notifier.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = object_notifier.cpp; path = Realm/ObjectStore/src/impl/object_notifier.cpp; sourceTree = ""; }; + AAE76F935413B0FAF7D92A096C9E7D52 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + ABBEE751FEE99D1B3841B73CAAA4EF2C /* RLMObservation.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMObservation.mm; path = Realm/RLMObservation.mm; sourceTree = ""; }; + AC1C57636899483A36A0683AF4DFA245 /* SwiftyJSON-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SwiftyJSON-umbrella.h"; sourceTree = ""; }; + AC779ECCB944E8ADD37CE1D3304804B9 /* Kingfisher-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Kingfisher-dummy.m"; sourceTree = ""; }; + AD1E07936EAB4A15168DA68310A4DF7B /* PromiseKit.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = PromiseKit.h; path = Sources/PromiseKit.h; sourceTree = ""; }; + ADDD57D0E4D5BBCBD1CEDFAF9506F54E /* RLMSyncUser.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMSyncUser.mm; path = Realm/RLMSyncUser.mm; sourceTree = ""; }; + AE88DC5DB31B209D9FEDA68534239E38 /* ServerTrustPolicy.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ServerTrustPolicy.swift; path = Source/ServerTrustPolicy.swift; sourceTree = ""; }; + AF3202BCDE9338D96382AAFC69557E0C /* RealmSwift-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RealmSwift-prefix.pch"; sourceTree = ""; }; + B04A3B8874B83F4558B31ADCD4D48784 /* RLMSyncCredentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncCredentials.h; path = include/RLMSyncCredentials.h; sourceTree = ""; }; + B1F47AFF559BBA2345ACDF2A2ECC38C1 /* Realm.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Realm.swift; path = RealmSwift/Realm.swift; sourceTree = ""; }; + B269550DDC991F08F069BBD57CFF1CF7 /* SVProgressHUD-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "SVProgressHUD-dummy.m"; sourceTree = ""; }; + B27560F181AA3E49CA33193B3FBAA57B /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + B2C2B4488829465EC2AA197D6E1581B4 /* collection_notifications.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = collection_notifications.cpp; path = Realm/ObjectStore/src/collection_notifications.cpp; sourceTree = ""; }; + B2C5BC8F9D3F74D15191F47FB7B5BADD /* ImageView+Kingfisher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ImageView+Kingfisher.swift"; path = "Sources/ImageView+Kingfisher.swift"; sourceTree = ""; }; + B33C26C5E25552E6B15683259CA5E7DA /* SwiftChart-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SwiftChart-umbrella.h"; sourceTree = ""; }; + B578193AE36AEC6E5A4DD7ABA452296C /* when.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = when.swift; path = Sources/when.swift; sourceTree = ""; }; + B5CE04B5882602E737C2D45D300A1837 /* RealmSwift.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = RealmSwift.modulemap; sourceTree = ""; }; + B6694706AE2206C12B59D754417F369C /* SVIndefiniteAnimatedView.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = SVIndefiniteAnimatedView.h; path = SVProgressHUD/SVIndefiniteAnimatedView.h; sourceTree = ""; }; + B792B5F4E88AF38723BE305EE68159CB /* Guarantee.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Guarantee.swift; path = Sources/Guarantee.swift; sourceTree = ""; }; + B8643B17061D5E3E247AD19C7FEB0A9A /* ParameterEncoding.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ParameterEncoding.swift; path = Source/ParameterEncoding.swift; sourceTree = ""; }; + BE33B99930418B82C0DA55AD1B1DABB0 /* binding_callback_thread_observer.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = binding_callback_thread_observer.cpp; path = Realm/ObjectStore/src/binding_callback_thread_observer.cpp; sourceTree = ""; }; + BE8729FE5BD1DB20C41AB92A9AD2E0C2 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + BF9BEE78AB64896F7786F842E14C3D75 /* Schema.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Schema.swift; path = RealmSwift/Schema.swift; sourceTree = ""; }; C18FDC08C1866ACB755BC6456D9F9CF7 /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.3.sdk/System/Library/Frameworks/QuartzCore.framework; sourceTree = DEVELOPER_DIR; }; - C1BDA8C02538E89BAE76BD4C43DAFB52 /* PromiseKit-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PromiseKit-prefix.pch"; sourceTree = ""; }; - C1E6D0BE26CC4AD1D80434C026C6294E /* SwiftyJSON-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "SwiftyJSON-dummy.m"; sourceTree = ""; }; - C1F15CECB8611E87A6E56FA5E5942242 /* RLMClassInfo.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMClassInfo.mm; path = Realm/RLMClassInfo.mm; sourceTree = ""; }; - C32B33B51C2DF6543DE5A46287CB8564 /* RLMCollection.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMCollection.h; path = include/RLMCollection.h; sourceTree = ""; }; - C35CD0F4638F1A0B757CB811DC382A1D /* join.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = join.m; path = Sources/join.m; sourceTree = ""; }; - C404F40DA7D356F18B91EDD8AFC91F83 /* SVProgressHUD-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SVProgressHUD-prefix.pch"; sourceTree = ""; }; - C82EAE5531EA5C66802CC6FAA7763171 /* Configuration.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Configuration.swift; path = Sources/Configuration.swift; sourceTree = ""; }; + C2489211F0C078953B1E4805F610FFD8 /* PromiseKit.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = PromiseKit.xcconfig; sourceTree = ""; }; + C2BDEFF55386C131D4B8AFF30946D6E7 /* Kingfisher.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = Kingfisher.h; path = Sources/Kingfisher.h; sourceTree = ""; }; + C3A19D76E413374358C330C6364B473F /* RLMSyncSubscription.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncSubscription.h; path = include/RLMSyncSubscription.h; sourceTree = ""; }; + C3C51B95FB2EFCB9C1A1B29C49D780A0 /* when.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = when.m; path = Sources/when.m; sourceTree = ""; }; + C518CC0FB273D5CDAD64A638F6AF8789 /* system_configuration.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = system_configuration.cpp; path = Realm/ObjectStore/src/sync/impl/apple/system_configuration.cpp; sourceTree = ""; }; + C94AA744EFB890DE04E7980909D8DF33 /* RLMSyncManager_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncManager_Private.h; path = include/RLMSyncManager_Private.h; sourceTree = ""; }; CA149F823BC1CD745AB9E0534C694326 /* Alamofire.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Alamofire.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - CAB1622FEE145C9A8F8B8F1014C7D366 /* KingfisherOptionsInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KingfisherOptionsInfo.swift; path = Sources/KingfisherOptionsInfo.swift; sourceTree = ""; }; - CC972C244E668A29947C657CA9CE8245 /* MultipartFormData.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = MultipartFormData.swift; path = Source/MultipartFormData.swift; sourceTree = ""; }; - CCC11781019CC048938DA5D14FFD3494 /* Realm.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = Realm.modulemap; sourceTree = ""; }; - CCEC93A22D299009B2CF669049ADDD67 /* RLMSyncPermissionResults.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMSyncPermissionResults.mm; path = Realm/RLMSyncPermissionResults.mm; sourceTree = ""; }; - CD124FBA715A6B156C2FBCD73C8469D4 /* RLMMigration_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMMigration_Private.h; path = include/RLMMigration_Private.h; sourceTree = ""; }; - CD29D155F362C0B37BA7B1F5BC95674F /* NSError+RLMSync.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "NSError+RLMSync.m"; path = "Realm/NSError+RLMSync.m"; sourceTree = ""; }; - CD61238A95FEB8A0FB8E26ACBE354EF6 /* ObjectiveCSupport.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObjectiveCSupport.swift; path = RealmSwift/ObjectiveCSupport.swift; sourceTree = ""; }; - D0025130F79BFD9A4D079CAFE4F3C3BC /* RLMThreadSafeReference.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMThreadSafeReference.h; path = include/RLMThreadSafeReference.h; sourceTree = ""; }; - D08F36AD51AD0F8416553B4B9E3A55A0 /* TaskDelegate.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = TaskDelegate.swift; path = Source/TaskDelegate.swift; sourceTree = ""; }; - D1A9F5FC1DADD9E5EB2F4484B042CDAE /* ObjectSchema.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ObjectSchema.swift; path = RealmSwift/ObjectSchema.swift; sourceTree = ""; }; - D1C288319261747A9E4920348E0E6A80 /* ThreadHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ThreadHelper.swift; path = Sources/ThreadHelper.swift; sourceTree = ""; }; - D232412C87D973AA69865099C3146475 /* Guarantee.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Guarantee.swift; path = Sources/Guarantee.swift; sourceTree = ""; }; - D370D0675522C923F96EA3C85501FD1B /* RealmSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = RealmSwift.framework; path = RealmSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - D438AEC542DE20B79CF71DD63C17B1B7 /* RLMSyncUser.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMSyncUser.mm; path = Realm/RLMSyncUser.mm; sourceTree = ""; }; - D4D521E1D5A5BEB6D068B0577A1857D3 /* PromiseKit.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = PromiseKit.xcconfig; sourceTree = ""; }; - D53A2ACD5DAA13352720BB1489B33305 /* Validation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Validation.swift; path = Source/Validation.swift; sourceTree = ""; }; - D570F56FBC37CCC325DE809BCDA7B7CA /* UILabel+Chameleon.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UILabel+Chameleon.m"; path = "Pod/Classes/Objective-C/UILabel+Chameleon.m"; sourceTree = ""; }; - D60332F7B9A7DC41158391BF79954BDC /* RLMUpdateChecker.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMUpdateChecker.mm; path = Realm/RLMUpdateChecker.mm; sourceTree = ""; }; - D804D42E64241AEFACF1D50AA42FDE37 /* RLMSyncCredentials.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncCredentials.h; path = include/RLMSyncCredentials.h; sourceTree = ""; }; - DA741CF9B82AA566373415B7ED0ACA7A /* RLMSyncUtil.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMSyncUtil.mm; path = Realm/RLMSyncUtil.mm; sourceTree = ""; }; - DB00D497A5E28FF36623FA28B408D039 /* after.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = after.m; path = Sources/after.m; sourceTree = ""; }; - DBAEF6D0DD9F785BD9D2AB9EE56D8F31 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - DCDFDE0AD4F69DD1C5F5B7328B40704E /* CustomStringConvertible.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = CustomStringConvertible.swift; path = Sources/CustomStringConvertible.swift; sourceTree = ""; }; - DD7072E4BFE128305640C3FB9FAEF961 /* RLMResults.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMResults.mm; path = Realm/RLMResults.mm; sourceTree = ""; }; - DD9302000C30F79629846BBD87E8B38A /* RequestModifier.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RequestModifier.swift; path = Sources/RequestModifier.swift; sourceTree = ""; }; - DDCEEE24ECEC0906CEB20D6EF38A6829 /* RealmSwift.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RealmSwift.xcconfig; sourceTree = ""; }; - DDD6B193581745546CEC070F290671DC /* ImageDownloader.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageDownloader.swift; path = Sources/ImageDownloader.swift; sourceTree = ""; }; - DDE2FF0DA3503461A7A96FBEBDADAD00 /* firstly.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = firstly.swift; path = Sources/firstly.swift; sourceTree = ""; }; - DFA95B238E6EBDBD730BFB28C54C9ED3 /* Alamofire.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Alamofire.framework; path = Alamofire.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - DFE5B247216F6A8138455A7615B1CF75 /* UIView+ChameleonPrivate.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIView+ChameleonPrivate.m"; path = "Pod/Classes/Objective-C/UIView+ChameleonPrivate.m"; sourceTree = ""; }; - E04DF0E29B2F559699F2E80594E9A2B2 /* RLMListBase.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMListBase.h; path = include/RLMListBase.h; sourceTree = ""; }; - E1365B4CF789343E980B675C12BE13A4 /* RLMMigration.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMMigration.h; path = include/RLMMigration.h; sourceTree = ""; }; - E15AD57F580DA9006D796E2A65A7BFC1 /* RLMSyncConfiguration.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncConfiguration.h; path = include/RLMSyncConfiguration.h; sourceTree = ""; }; - E2117193D92EC698D3B2586F057BC248 /* Thenable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Thenable.swift; path = Sources/Thenable.swift; sourceTree = ""; }; - E2704597263FE68C7CC88E05EAA27BDC /* Image.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Image.swift; path = Sources/Image.swift; sourceTree = ""; }; - E285A3A22D379A070CD9AEB57CB019A3 /* RLMSyncSubscription.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMSyncSubscription.mm; path = Realm/RLMSyncSubscription.mm; sourceTree = ""; }; - E34EC0505238441E3AB17C5B76376151 /* weak_realm_notifier.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = weak_realm_notifier.cpp; path = Realm/ObjectStore/src/impl/weak_realm_notifier.cpp; sourceTree = ""; }; - E39BFAB9133B4FE11392BAC85656A395 /* collection_change_builder.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = collection_change_builder.cpp; path = Realm/ObjectStore/src/impl/collection_change_builder.cpp; sourceTree = ""; }; - E40FF8577F2DBD718EE5A69C2B7D4D3B /* RLMSyncConfiguration.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMSyncConfiguration.mm; path = Realm/RLMSyncConfiguration.mm; sourceTree = ""; }; - E592508DA2DF696843C0E38F0FD1D2D6 /* SVProgressHUD.bundle */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "wrapper.plug-in"; name = SVProgressHUD.bundle; path = SVProgressHUD/SVProgressHUD.bundle; sourceTree = ""; }; - E5B752A401F4C464871406C2F82D0692 /* Promise.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Promise.swift; path = Sources/Promise.swift; sourceTree = ""; }; - E7A8B08419297C02CC4149B35B2ECC53 /* AnyPromise.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AnyPromise.m; path = Sources/AnyPromise.m; sourceTree = ""; }; - E8CA97EF476B1BBC6DA9DDF5E4AD6AE9 /* UIView+ChameleonPrivate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIView+ChameleonPrivate.h"; path = "Pod/Classes/Objective-C/UIView+ChameleonPrivate.h"; sourceTree = ""; }; - E97A49D59AB00307EDEAD1C2CECA377F /* external_commit_helper.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = external_commit_helper.cpp; path = Realm/ObjectStore/src/impl/apple/external_commit_helper.cpp; sourceTree = ""; }; - E97D9B22220A23A1490C3F3F5C457248 /* RLMObjectBase.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMObjectBase.mm; path = Realm/RLMObjectBase.mm; sourceTree = ""; }; - E9EDC2A9336BE94BA578B012CDF74FD0 /* RLMRealm_Dynamic.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMRealm_Dynamic.h; path = include/RLMRealm_Dynamic.h; sourceTree = ""; }; - EB3A764D9554573A86BC7EA8D331A5B1 /* RLMPlatform.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMPlatform.h; path = include/RLMPlatform.h; sourceTree = ""; }; - EC0C6E93AF10A37046E8D11B1E9E0C6C /* sync_metadata.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = sync_metadata.cpp; path = Realm/ObjectStore/src/sync/impl/sync_metadata.cpp; sourceTree = ""; }; - EC5EB5F10CDB88745D8F00A4776CC90F /* RLMSyncManager_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncManager_Private.h; path = include/RLMSyncManager_Private.h; sourceTree = ""; }; - EC668613833476D5497C3FB1FF4C230A /* UIAppearance+Swift.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIAppearance+Swift.h"; path = "Pod/Classes/Objective-C/UIAppearance+Swift.h"; sourceTree = ""; }; - ED1ABB6E30B38A886BE80601229D67B6 /* RLMCollection_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMCollection_Private.h; path = include/RLMCollection_Private.h; sourceTree = ""; }; - ED2EFD32B69A725F7649C183C8E84B4E /* ImageView+Kingfisher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "ImageView+Kingfisher.swift"; path = "Sources/ImageView+Kingfisher.swift"; sourceTree = ""; }; - EDE61E0B7CC239EBB466B8E1624C177E /* Error.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Error.swift; path = RealmSwift/Error.swift; sourceTree = ""; }; - EF68730092653BF5EE4ADF365A7ECD97 /* AFError.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = AFError.swift; path = Source/AFError.swift; sourceTree = ""; }; - EF9385A4348055A59474B2BEAD29C9EE /* RLMSchema.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSchema.h; path = include/RLMSchema.h; sourceTree = ""; }; - F0B1D73510F5FDFAE09CB255334BF06B /* RealmCollection.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RealmCollection.swift; path = RealmSwift/RealmCollection.swift; sourceTree = ""; }; - F1EC6FD4979BF9C41F049DF0A3B5119B /* Timeline.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timeline.swift; path = Source/Timeline.swift; sourceTree = ""; }; - F1ED8B956F9F5CFD7FD4BBD9FDFDD07A /* RLMObject.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMObject.mm; path = Realm/RLMObject.mm; sourceTree = ""; }; - F35E0788F67D5F48F2C081EA6CFA7F75 /* RLMSchema.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMSchema.mm; path = Realm/RLMSchema.mm; sourceTree = ""; }; - F6408D6165CC25B839381430FEA0FB6E /* results.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = results.cpp; path = Realm/ObjectStore/src/results.cpp; sourceTree = ""; }; - F6713C6DE02CE09E28C9E078D9ADF16F /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + CA59A1769701148D1CA2A062B1111F8D /* UIViewController+Chameleon.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIViewController+Chameleon.h"; path = "Pod/Classes/Objective-C/UIViewController+Chameleon.h"; sourceTree = ""; }; + CA7F4E6DC0F879159D640239794AACD2 /* SVIndefiniteAnimatedView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = SVIndefiniteAnimatedView.m; path = SVProgressHUD/SVIndefiniteAnimatedView.m; sourceTree = ""; }; + CB9B9B9E87CF5A6EA2132C6AC6FCF64C /* RLMObjectSchema_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMObjectSchema_Private.h; path = include/RLMObjectSchema_Private.h; sourceTree = ""; }; + CBE20C4557AAD15CAAC1D1086E2AE435 /* RealmSwift-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RealmSwift-dummy.m"; sourceTree = ""; }; + CE2DC91D7781216FC1C8185F4052A782 /* UIImage+ChameleonPrivate.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImage+ChameleonPrivate.m"; path = "Pod/Classes/Objective-C/UIImage+ChameleonPrivate.m"; sourceTree = ""; }; + CE462ADD1E2D874FD8827EF95924AE44 /* RLMSchema_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSchema_Private.h; path = include/RLMSchema_Private.h; sourceTree = ""; }; + CFEB396365D1E33963DF0A95EB36CE56 /* UIButton+Kingfisher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = "UIButton+Kingfisher.swift"; path = "Sources/UIButton+Kingfisher.swift"; sourceTree = ""; }; + D151AE1567A22BF33B4B22A9CC2F36DD /* SortDescriptor.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SortDescriptor.swift; path = RealmSwift/SortDescriptor.swift; sourceTree = ""; }; + D2F481C1057D3B82CA0F82BA47623EAA /* SwiftyJSON.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = SwiftyJSON.xcconfig; sourceTree = ""; }; + D3FE4EDF853BCC3D98F0C989996A9616 /* Realm.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Realm.xcconfig; sourceTree = ""; }; + D4727E0C9C008FC30988DDFD3DCD8F15 /* Timeline.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Timeline.swift; path = Source/Timeline.swift; sourceTree = ""; }; + D4AB08CFF2444EA8D5EFFBADF026CD3F /* RequestModifier.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RequestModifier.swift; path = Sources/RequestModifier.swift; sourceTree = ""; }; + D86DE146514060FB03A8EB7875751CB4 /* Notifications.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Notifications.swift; path = Source/Notifications.swift; sourceTree = ""; }; + D8927FDE96718D53059A955F2EEDDE40 /* Validation.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Validation.swift; path = Source/Validation.swift; sourceTree = ""; }; + D90E8890249BDC47B817968A9A80B81F /* UILabel+Chameleon.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UILabel+Chameleon.m"; path = "Pod/Classes/Objective-C/UILabel+Chameleon.m"; sourceTree = ""; }; + D931BEE4427488C33D747F3923E0ABE2 /* RLMSchema.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMSchema.mm; path = Realm/RLMSchema.mm; sourceTree = ""; }; + D9F9DA0637D9CF2A4AF268F202EA6398 /* keychain_helper.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = keychain_helper.cpp; path = Realm/ObjectStore/src/impl/apple/keychain_helper.cpp; sourceTree = ""; }; + DD0EDB245A288DFDD27D5D49211DB642 /* RLMSyncPermission.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncPermission.h; path = include/RLMSyncPermission.h; sourceTree = ""; }; + DD44D6E44FF60A041CB2B80D2F3D74EF /* Alamofire.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Alamofire.swift; path = Source/Alamofire.swift; sourceTree = ""; }; + DE49909CAAF22EFDE000F82BCBAB5899 /* PromiseKit.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.module; path = PromiseKit.modulemap; sourceTree = ""; }; + DEA70D31C0AF1A4B71D45FDC83A3CCC6 /* ChartSeries.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ChartSeries.swift; path = Source/ChartSeries.swift; sourceTree = ""; }; + DEFBCB31C513282CB43F15B7BAB3D159 /* Placeholder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Placeholder.swift; path = Sources/Placeholder.swift; sourceTree = ""; }; + E00EE42819656097BC0FB4054C002156 /* SwiftyJSON-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SwiftyJSON-prefix.pch"; sourceTree = ""; }; + E0196365D91766D5A182C86761244B62 /* RealmSwift.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = RealmSwift.framework; path = RealmSwift.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + E15BF07935FB7810EB495127E7CDF1ED /* ChameleonFramework.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = ChameleonFramework.xcconfig; sourceTree = ""; }; + E277506BC6D46DC785F6FEFDDBC904B6 /* SVProgressHUD.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = SVProgressHUD.framework; path = SVProgressHUD.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + E368D0F9301094C0876677C1EDA28AAF /* RLMResults_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMResults_Private.h; path = include/RLMResults_Private.h; sourceTree = ""; }; + E4FF2B9FEDC88A76BFCF771EC7CB4D2B /* ImageTransition.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ImageTransition.swift; path = Sources/ImageTransition.swift; sourceTree = ""; }; + E53A56088ACEAE7BF35D1B69201BEB95 /* Realm-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Realm-dummy.m"; sourceTree = ""; }; + E572E840A2B6EB3A72C5E3A1A2F8E2B7 /* sync_metadata.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = sync_metadata.cpp; path = Realm/ObjectStore/src/sync/impl/sync_metadata.cpp; sourceTree = ""; }; + E5ABB25E379859D47265F2097C96DB0C /* uuid.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = uuid.cpp; path = Realm/ObjectStore/src/util/uuid.cpp; sourceTree = ""; }; + E613A12D65DCDDFB89BF512E54016D0E /* sync_file.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = sync_file.cpp; path = Realm/ObjectStore/src/sync/impl/sync_file.cpp; sourceTree = ""; }; + E65BFFCF67FA024A57F6810BDB3EF0AF /* RLMSyncSessionRefreshHandle.mm */ = {isa = PBXFileReference; includeInIndex = 1; name = RLMSyncSessionRefreshHandle.mm; path = Realm/RLMSyncSessionRefreshHandle.mm; sourceTree = ""; }; + E705FFD877223D0B0101AF6254E69858 /* SVRadialGradientLayer.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = SVRadialGradientLayer.m; path = SVProgressHUD/SVRadialGradientLayer.m; sourceTree = ""; }; + E79F6D4273AE165CB0C762D941FD49F8 /* sync_manager.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = sync_manager.cpp; path = Realm/ObjectStore/src/sync/sync_manager.cpp; sourceTree = ""; }; + E952E44C64CC59E5A7D6F8EEB2DFCAAA /* after.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = after.m; path = Sources/after.m; sourceTree = ""; }; + E9C01B96F4ABBD938FDDD288B04E75D1 /* Alamofire-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Alamofire-prefix.pch"; sourceTree = ""; }; + E9DB9B15672EAA97BA0381CF11F2FB14 /* Promise.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Promise.swift; path = Sources/Promise.swift; sourceTree = ""; }; + EA0D6803B52E6802D884F0EB05373D92 /* hang.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = hang.swift; path = Sources/hang.swift; sourceTree = ""; }; + EA82AF234DD825E121578D646E9B6F7A /* SVProgressHUD-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SVProgressHUD-prefix.pch"; sourceTree = ""; }; + EBE60FEFC446259A428A5E006F6890D7 /* UIColor+Chameleon.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIColor+Chameleon.h"; path = "Pod/Classes/Objective-C/UIColor+Chameleon.h"; sourceTree = ""; }; + EC02C03E2D70A5F5B8477340245B0BDA /* RLMRealm+Sync.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "RLMRealm+Sync.h"; path = "include/RLMRealm+Sync.h"; sourceTree = ""; }; + EC210E282A20580AC777D20AD7521060 /* RLMResults.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMResults.h; path = include/RLMResults.h; sourceTree = ""; }; + EC546713A40C285F1F96D60407A65EE5 /* RLMCollection_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMCollection_Private.h; path = include/RLMCollection_Private.h; sourceTree = ""; }; + EDFEA1AAAEE746F5CA07C8FF7245D734 /* schema.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = schema.cpp; path = Realm/ObjectStore/src/schema.cpp; sourceTree = ""; }; + EF24AD35F2C7ED5931566922740848CF /* PromiseKit-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "PromiseKit-prefix.pch"; sourceTree = ""; }; + F046922896204348860BB33590371530 /* RLMObject.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMObject.h; path = include/RLMObject.h; sourceTree = ""; }; + F07E279D64010940180B74CC84FB57C8 /* UIColor+ChameleonPrivate.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIColor+ChameleonPrivate.h"; path = "Pod/Classes/Objective-C/UIColor+ChameleonPrivate.h"; sourceTree = ""; }; + F0967F9F28642BF501CA462A45581601 /* RLMRealmConfiguration.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMRealmConfiguration.h; path = include/RLMRealmConfiguration.h; sourceTree = ""; }; + F0E37B37755144723909293D2AFDAE35 /* Realm.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Realm.framework; path = Realm.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + F100498E3A55FCD698343AE663FBC533 /* RLMProperty.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMProperty.h; path = include/RLMProperty.h; sourceTree = ""; }; + F267BDEF56530ADE06BEB781B7A96C8C /* RLMMigration.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMMigration.h; path = include/RLMMigration.h; sourceTree = ""; }; + F3EC90777F4DA5BFBEFB31392629C1F3 /* UIColor+ChameleonPrivate.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIColor+ChameleonPrivate.m"; path = "Pod/Classes/Objective-C/UIColor+ChameleonPrivate.m"; sourceTree = ""; }; + F50C035EF952D40A95D7E03ED0D26D1F /* results_notifier.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = results_notifier.cpp; path = Realm/ObjectStore/src/impl/results_notifier.cpp; sourceTree = ""; }; + F64E781507231AFC862D7E32C32FFB6E /* NetworkReachabilityManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = NetworkReachabilityManager.swift; path = Source/NetworkReachabilityManager.swift; sourceTree = ""; }; + F7882ACE5B6A0B5560149D22A412B6F0 /* UINavigationController+Chameleon.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UINavigationController+Chameleon.h"; path = "Pod/Classes/Objective-C/UINavigationController+Chameleon.h"; sourceTree = ""; }; + F79570CF737176CFFBF9D891400C15A9 /* RLMArray.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMArray.h; path = include/RLMArray.h; sourceTree = ""; }; F8E96D57D774FB575BB6B3CB8D816916 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.3.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; }; - F94D2C88074E79C241631BD487FD476F /* when.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = when.swift; path = Sources/when.swift; sourceTree = ""; }; - F98FBC5083CADF8610B5488D2D67B6D3 /* Notifications.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Notifications.swift; path = Source/Notifications.swift; sourceTree = ""; }; - FA3A70F6F798AFA9D77811404C1B0676 /* collection_notifications.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = collection_notifications.cpp; path = Realm/ObjectStore/src/collection_notifications.cpp; sourceTree = ""; }; - FA8186FEF4C84297B6F73AE3B6AE51E2 /* SVIndefiniteAnimatedView.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = SVIndefiniteAnimatedView.m; path = SVProgressHUD/SVIndefiniteAnimatedView.m; sourceTree = ""; }; - FB161B5A3367EE87312EEC0DDD1EE185 /* RLMProperty_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMProperty_Private.h; path = include/RLMProperty_Private.h; sourceTree = ""; }; - FC01A2F5DAF016BD105FBA4CF7B76E0F /* SwiftVersion.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = SwiftVersion.swift; path = RealmSwift/SwiftVersion.swift; sourceTree = ""; }; - FD70D400295A311805EA96E3D279AD8B /* Kingfisher.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Kingfisher.swift; path = Sources/Kingfisher.swift; sourceTree = ""; }; - FE6B9D7126E0C71B5BE611F3B32DE494 /* system_configuration.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = system_configuration.cpp; path = Realm/ObjectStore/src/sync/impl/apple/system_configuration.cpp; sourceTree = ""; }; - FF077ADE2FCBA19A581C461C2B40CF37 /* RLMObjectSchema_Private.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMObjectSchema_Private.h; path = include/RLMObjectSchema_Private.h; sourceTree = ""; }; + F90C6667BE5F969C6C6A89B01EF88909 /* RLMSyncUtil.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = RLMSyncUtil.h; path = include/RLMSyncUtil.h; sourceTree = ""; }; + FA66934D15EF142915C94B4685C37F7B /* external_commit_helper.cpp */ = {isa = PBXFileReference; includeInIndex = 1; name = external_commit_helper.cpp; path = Realm/ObjectStore/src/impl/apple/external_commit_helper.cpp; sourceTree = ""; }; + FB3F016B9AA6259951ECA7A3D347BC59 /* RLMJSONModels.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = RLMJSONModels.m; path = Realm/RLMJSONModels.m; sourceTree = ""; }; + FE7C6F13939F14802A9A1BD79EAC1D4A /* KingfisherOptionsInfo.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = KingfisherOptionsInfo.swift; path = Sources/KingfisherOptionsInfo.swift; sourceTree = ""; }; + FFBFB5DDEF0EEBD4B1B76BD110F5721C /* Catchable.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = Catchable.swift; path = Sources/Catchable.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ - 335BACF1EF8669C3AC26B76BDF23BCAA /* Frameworks */ = { + 05F13498BB74440454E58FD7221CD7AC /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - D1BFD3F7B439746286BC75A07C4651D7 /* Foundation.framework in Frameworks */, + B1D8CDB3A961F10D8C3496BF587BE4AE /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -830,11 +854,29 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 96754593489027108F95AC2E5E9B32BE /* Frameworks */ = { + 4B56BEEA92DD7AA80639E1931D8EA1BC /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - D23966CD35A18B127D18BD03550EAD59 /* Foundation.framework in Frameworks */, + A6EFEF248802A5A27B0C048EBA005D2E /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 51467CD8C7A1C39D37D993826E6C60AF /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + F833C21665B4C62279C78D0C4E336762 /* Foundation.framework in Frameworks */, + E9CB1ED0B6BEE942F98A094032ABAAD2 /* Security.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 7AFE2441CFB9C375E14C72929C7D9C44 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + FB258361CC7F438884C7711E4321F91A /* Foundation.framework in Frameworks */, + C80D0B4F5776FAECCB9CD1110A610EE3 /* UIKit.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -855,85 +897,345 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - BBD2FB87458355D4D6E25D32B5D4E3D2 /* Frameworks */ = { + BB8E3C615D9F55E89E9C0D437CD420F9 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 448C153F79E73205F04949A8228A3CB4 /* Foundation.framework in Frameworks */, - A6114117CACB1F35FC2CCB3BA0ADB37E /* QuartzCore.framework in Frameworks */, + D31B4B0516F4B5D8B45EC7A1C75B08DB /* Foundation.framework in Frameworks */, + B7A1A51F10814C1B589C51D6C47F74A4 /* QuartzCore.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - C184CFC311E0697CFB8B3936F9DB59B0 /* Frameworks */ = { + DC059994B474854555E8A5400BCFD49E /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 6331D559851CE0A6F3B1C77E992842AC /* Foundation.framework in Frameworks */, - 2AFA4D94F1B847EFF1DDB43D98F26BF7 /* Realm.framework in Frameworks */, + DC63201B4083C81902D675983AD691E8 /* Alamofire.framework in Frameworks */, + 55E302848F505347E17493F322EE42E7 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - D3B837F7056871039287DCD93B1C92D8 /* Frameworks */ = { + DFE2A87A7021A589E4A76B7E2DF97523 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - A7DFD1CF37AF472CBBA86C9998A30892 /* Foundation.framework in Frameworks */, - B88D6E6545489A6BF84884DB4AC801AC /* Security.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - F4AFCB1B7B0D204547A1A99273E75395 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - CE5F1E2C8ADCCF6A7E12FDFCF1B07A2D /* Alamofire.framework in Frameworks */, - B4EE958EA831802507F576ADB5062215 /* Foundation.framework in Frameworks */, + D639FB5A21957C40AD960F5F2888DBDA /* Foundation.framework in Frameworks */, + 590C9872D1BD6608AA74E08AD706F2E5 /* Realm.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 09F9DA5723052910F98C064F57159509 /* SwiftyJSON */ = { + 00457AF00F1AAC862301AE0BBC5EF6BD /* Support Files */ = { isa = PBXGroup; children = ( - 3DA6F6E0A39135748BED4386F86CFB2B /* SwiftyJSON.swift */, - CB0FB75B3342320414D733FC1F39D9A5 /* Support Files */, + B27560F181AA3E49CA33193B3FBAA57B /* Info.plist */, + 5E0854B11E127B790CB4C391D34D531A /* SVProgressHUD.modulemap */, + 2FBA2EC0211955D59DF2AD89333A60D1 /* SVProgressHUD.xcconfig */, + B269550DDC991F08F069BBD57CFF1CF7 /* SVProgressHUD-dummy.m */, + EA82AF234DD825E121578D646E9B6F7A /* SVProgressHUD-prefix.pch */, + 033BECE918B1FBD37D5C586FDB9A88FE /* SVProgressHUD-umbrella.h */, + ); + name = "Support Files"; + path = "../Target Support Files/SVProgressHUD"; + sourceTree = ""; + }; + 0456B98CD97C0824450E17BD9475359E /* PromiseKit */ = { + isa = PBXGroup; + children = ( + E95579BF1862FA0237D2426302721FED /* Alamofire */, + 055B4DDDC44467870C5868DA615A214B /* CorePromise */, + D3A9FFC7A7DF180F143935D09676D58F /* Support Files */, + ); + name = PromiseKit; + path = PromiseKit; + sourceTree = ""; + }; + 055B4DDDC44467870C5868DA615A214B /* CorePromise */ = { + isa = PBXGroup; + children = ( + E952E44C64CC59E5A7D6F8EEB2DFCAAA /* after.m */, + 70D255BBF18A3D18FC6BDFF3AAB13DD6 /* after.swift */, + 3D4975867781530628E20A11F465EA59 /* AnyPromise.h */, + 50B057067CD3D377D62F03A87237D7D2 /* AnyPromise.m */, + 5C7DB055A9FF859C8D9B207B0EBEA67E /* AnyPromise.swift */, + 870D87C5372AD947DC76BE89574DFFF7 /* Box.swift */, + FFBFB5DDEF0EEBD4B1B76BD110F5721C /* Catchable.swift */, + 6BCC3AC3975CFE44021DC84EC0D0F57E /* Configuration.swift */, + 4520C429673AD32B07955E750C7E8A0A /* CustomStringConvertible.swift */, + 960A4DBBFF871779B81F9E045539A9B8 /* Deprecations.swift */, + 0FCBC5B3C38D32A7F45D1DA22BD87B65 /* dispatch_promise.m */, + 5FCCA2362239AA24556A9225003BC1C2 /* Error.swift */, + 390C619DF008E7A770BFAB5B993D881B /* firstly.swift */, + 0CB0DA25E9DA1C92615FAD91A904DF57 /* fwd.h */, + B792B5F4E88AF38723BE305EE68159CB /* Guarantee.swift */, + 167D1E618C7945529947657FF4015F66 /* hang.m */, + EA0D6803B52E6802D884F0EB05373D92 /* hang.swift */, + 450FA9039C576DF6FA9F9E12DD4C3FEF /* join.m */, + E9DB9B15672EAA97BA0381CF11F2FB14 /* Promise.swift */, + AD1E07936EAB4A15168DA68310A4DF7B /* PromiseKit.h */, + 4CA5424E77ADE6E9FBBBC12E067B81FC /* race.m */, + 959493D71FD0A4BA2E655D786ACFCD6B /* race.swift */, + 1FEDBC380D7CCDDC3CCA561F541E677E /* Resolver.swift */, + 2A508549D773152C50D7A7F0D30E6C6B /* Thenable.swift */, + C3C51B95FB2EFCB9C1A1B29C49D780A0 /* when.m */, + B578193AE36AEC6E5A4DD7ABA452296C /* when.swift */, + ); + name = CorePromise; + sourceTree = ""; + }; + 0573F3C26E7E66B4CC3D632BA52D5643 /* SwiftChart */ = { + isa = PBXGroup; + children = ( + 993980085140CB356A42A3D861DC0CD1 /* Chart.swift */, + 85BB1153FD5F107BD943C904018FB309 /* ChartColors.swift */, + DEA70D31C0AF1A4B71D45FDC83A3CCC6 /* ChartSeries.swift */, + 2F40A251D3F0ABCE777A456418D650A8 /* Support Files */, + ); + name = SwiftChart; + path = SwiftChart; + sourceTree = ""; + }; + 0DBE9ED05B7659D45DB39164597A36A2 /* Support Files */ = { + isa = PBXGroup; + children = ( + 83F2F7DBFD5DE0AAFDF63A26784B13FE /* Info.plist */, + 57C6D5D25D90EADCEDE4BBE2732A35A0 /* SwiftyJSON.modulemap */, + D2F481C1057D3B82CA0F82BA47623EAA /* SwiftyJSON.xcconfig */, + 816D222060828A34C1E58D402F34FAE8 /* SwiftyJSON-dummy.m */, + E00EE42819656097BC0FB4054C002156 /* SwiftyJSON-prefix.pch */, + AC1C57636899483A36A0683AF4DFA245 /* SwiftyJSON-umbrella.h */, + ); + name = "Support Files"; + path = "../Target Support Files/SwiftyJSON"; + sourceTree = ""; + }; + 1118E9E3178F287C64065E5DBE1D2C38 /* Alamofire */ = { + isa = PBXGroup; + children = ( + 5E59D14AB66092E668FA3724120439E3 /* AFError.swift */, + DD44D6E44FF60A041CB2B80D2F3D74EF /* Alamofire.swift */, + 0C28171636B6478CBCAC65064B00BA52 /* DispatchQueue+Alamofire.swift */, + 1B5E75D734B464E8D0D744DA8E6A45E8 /* MultipartFormData.swift */, + F64E781507231AFC862D7E32C32FFB6E /* NetworkReachabilityManager.swift */, + D86DE146514060FB03A8EB7875751CB4 /* Notifications.swift */, + B8643B17061D5E3E247AD19C7FEB0A9A /* ParameterEncoding.swift */, + 75ED9E29508835F901F7BADBF7FA83B0 /* Request.swift */, + 561AFA0DCE0629E26D5FFB38B83388E4 /* Response.swift */, + 8864E9A03CAAB8E3EC2FE39ACF2D614C /* ResponseSerialization.swift */, + 40E5049E646905E9AE4E0F2101F206D8 /* Result.swift */, + AE88DC5DB31B209D9FEDA68534239E38 /* ServerTrustPolicy.swift */, + A8793A3FE332B791A8B3994B323FCBEE /* SessionDelegate.swift */, + 8B543979552007AA1891F26D83762863 /* SessionManager.swift */, + 3213EEED9AF86A39E2C3DE4CC578BB10 /* TaskDelegate.swift */, + D4727E0C9C008FC30988DDFD3DCD8F15 /* Timeline.swift */, + D8927FDE96718D53059A955F2EEDDE40 /* Validation.swift */, + 21F6ED38C06F4F37CE47A47DA8696CAD /* Support Files */, + ); + name = Alamofire; + path = Alamofire; + sourceTree = ""; + }; + 16122F8338460E91FCCF082BE091EC04 /* SwiftyJSON */ = { + isa = PBXGroup; + children = ( + 57C9BAE72893AC9C460C5F5499F415EB /* SwiftyJSON.swift */, + 0DBE9ED05B7659D45DB39164597A36A2 /* Support Files */, ); name = SwiftyJSON; path = SwiftyJSON; sourceTree = ""; }; - 0C43FF29CFF62E6B006CE76FBA1E839F /* Support Files */ = { + 21F6ED38C06F4F37CE47A47DA8696CAD /* Support Files */ = { isa = PBXGroup; children = ( - 4978EA807DD518CF621532F8211B71EA /* Alamofire.modulemap */, - 4158533C002FD1D2A2D5CAF22236BE6C /* Alamofire.xcconfig */, - 37BC060B8E324F918BE5785B68CD41A8 /* Alamofire-dummy.m */, - 4A9962B2759E9FFFCDD65A5D35954C02 /* Alamofire-prefix.pch */, - 117A0AE9467FE5334200DCC48CEC1D1E /* Alamofire-umbrella.h */, - A6F52DF147471E1D96F1B7CF449916DE /* Info.plist */, + 27F1908F5DC6B99B77DAA63A304ECE54 /* Alamofire.modulemap */, + A46966049B213458C4F1837F7EAF5428 /* Alamofire.xcconfig */, + 911ED0B37F892FF5B2F9A5ABE00F4AB6 /* Alamofire-dummy.m */, + E9C01B96F4ABBD938FDDD288B04E75D1 /* Alamofire-prefix.pch */, + 4597E0C0CE3F120795550AA2F66773D8 /* Alamofire-umbrella.h */, + 9AE123E69DA163431F9826FCDDFE0622 /* Info.plist */, ); name = "Support Files"; path = "../Target Support Files/Alamofire"; sourceTree = ""; }; - 3A8740978A903FB38EDA155556ED4676 /* ChameleonFramework */ = { + 250B9545B6ECF71E5A57A942033C8B72 /* Pods */ = { isa = PBXGroup; children = ( - 7F081C612602C2388CA771C584275C91 /* Default */, - 983CE10F25BE7C569B953F7DBCFD70F8 /* Support Files */, + 1118E9E3178F287C64065E5DBE1D2C38 /* Alamofire */, + 5C952135DA4692DF2C6AEFFC033EAB05 /* ChameleonFramework */, + A8028A57952ECFA162D78DEDAF6F0264 /* Kingfisher */, + 0456B98CD97C0824450E17BD9475359E /* PromiseKit */, + 60E5FFAD3E95BC05280F0B4030E1F2EB /* Realm */, + FF8C0BA7C9130917BC37348BF63201E4 /* RealmSwift */, + BC7E7BE5E3F33C1C0D6A6F111CE377F2 /* SVProgressHUD */, + 0573F3C26E7E66B4CC3D632BA52D5643 /* SwiftChart */, + 16122F8338460E91FCCF082BE091EC04 /* SwiftyJSON */, + ); + name = Pods; + sourceTree = ""; + }; + 2F40A251D3F0ABCE777A456418D650A8 /* Support Files */ = { + isa = PBXGroup; + children = ( + AAE76F935413B0FAF7D92A096C9E7D52 /* Info.plist */, + 67F991C8B8367174AFF53BF7D8D6F1EE /* SwiftChart.modulemap */, + A479B3FFCD869510C99518C581F3CC3E /* SwiftChart.xcconfig */, + 6677B1E6745CD047E622914F3945E673 /* SwiftChart-dummy.m */, + 8BC73ED419B1086C4CE85240BBB98184 /* SwiftChart-prefix.pch */, + B33C26C5E25552E6B15683259CA5E7DA /* SwiftChart-umbrella.h */, + ); + name = "Support Files"; + path = "../Target Support Files/SwiftChart"; + sourceTree = ""; + }; + 353215EA0F459426860E8E5A51083A52 /* Products */ = { + isa = PBXGroup; + children = ( + 8D43205AB4A71F48FCECD11914F4CAF4 /* Alamofire.framework */, + 3ECAC0844395303E54DBEAB48691131A /* ChameleonFramework.framework */, + A3610FFDE4173AEAFBC020E03D6F7A7B /* Kingfisher.framework */, + 1B051A1AD2040EAF87DE33B9E5A0A899 /* Pods_pocloud.framework */, + 1469A50845FA94302A1AC097C19A435F /* PromiseKit.framework */, + F0E37B37755144723909293D2AFDAE35 /* Realm.framework */, + E0196365D91766D5A182C86761244B62 /* RealmSwift.framework */, + E277506BC6D46DC785F6FEFDDBC904B6 /* SVProgressHUD.framework */, + 332F7C93DBD31C940E50FA2AD7BABC6E /* SwiftChart.framework */, + 615EBDA4FE1C9FF6970F3747D5BB76BB /* SwiftyJSON.framework */, + ); + name = Products; + sourceTree = ""; + }; + 485F22482344BB9623BB8CFA577B72FB /* Support Files */ = { + isa = PBXGroup; + children = ( + 853AAA759B71AAEF60564CB4F82AC464 /* Info.plist */, + 5AB2A81FB0FDFC0048FBB8A05BAB2447 /* Kingfisher.modulemap */, + 36DF68D5C5DC5D2F0592370CF3E091D3 /* Kingfisher.xcconfig */, + AC779ECCB944E8ADD37CE1D3304804B9 /* Kingfisher-dummy.m */, + 1683F36890A30C35C6CF6C85705834C3 /* Kingfisher-prefix.pch */, + 58E2B8F8993302603FD006E07C2CFC72 /* Kingfisher-umbrella.h */, + ); + name = "Support Files"; + path = "../Target Support Files/Kingfisher"; + sourceTree = ""; + }; + 5C952135DA4692DF2C6AEFFC033EAB05 /* ChameleonFramework */ = { + isa = PBXGroup; + children = ( + 991BFA1A73F46395A5F2573D18EFA63D /* Default */, + DBE754F7C57B7900C8127830A779DF83 /* Support Files */, ); name = ChameleonFramework; path = ChameleonFramework; sourceTree = ""; }; - 3C9CC2CF6E7D2A17BD2218CCD4FB123E /* Alamofire */ = { + 60E5FFAD3E95BC05280F0B4030E1F2EB /* Realm */ = { isa = PBXGroup; children = ( - 9D0ABB028458C3662BD35EB8BFD716DD /* Alamofire+Promise.swift */, + BE33B99930418B82C0DA55AD1B1DABB0 /* binding_callback_thread_observer.cpp */, + 0850078DD2527CF121657494F188F14B /* collection_change_builder.cpp */, + B2C2B4488829465EC2AA197D6E1581B4 /* collection_notifications.cpp */, + A9B8919AB39D17A578CED457944217FF /* collection_notifier.cpp */, + FA66934D15EF142915C94B4685C37F7B /* external_commit_helper.cpp */, + 3DD5FB6C72EDD9F0B7AC128432922FFE /* index_set.cpp */, + D9F9DA0637D9CF2A4AF268F202EA6398 /* keychain_helper.cpp */, + 94BC712E6269E4A7B550E839B34FED84 /* list.cpp */, + 5A07A8A8028AE1B33EAAA7979DB6B847 /* list_notifier.cpp */, + 3549C30740CE09B411B903EC7025561C /* network_reachability_observer.cpp */, + 5968E3F1ADB1F6151D68974774557F16 /* NSError+RLMSync.m */, + 679C7C7587D40218B193B04091EF22BB /* object.cpp */, + AA5A0770AD556EFD045A61522EF433DB /* object_notifier.cpp */, + 149E497A86D0B04D07C4BF26F707A127 /* object_schema.cpp */, + A4D9C83C2F04C2EA10710B761189AB75 /* object_store.cpp */, + 76A24C263F2C65318ED5356308F9EB92 /* partial_sync.cpp */, + 55DD0F1A355F1B69276E60F293928D31 /* placeholder.cpp */, + 1C8CDE49478E71D0325DA17BCC70F9F1 /* primitive_list_notifier.cpp */, + 7F80AF0E7104F15B7086BE4CDC817DBC /* realm_coordinator.cpp */, + 2D69C25F4DED73304CFC415FC060EC04 /* results.cpp */, + F50C035EF952D40A95D7E03ED0D26D1F /* results_notifier.cpp */, + 7BCD9D98544104A361E93BA03EDE97FB /* RLMAccessor.h */, + 9CF1DD8BC8ED7A3E4721B3ACAE9A76D3 /* RLMAccessor.mm */, + 395EE7831170F49D37AF9DD819F59595 /* RLMAnalytics.mm */, + 2D6DB555DF052E561309BE6FF785B7D3 /* RLMArray.mm */, + 0121D20D9E8E591D410348DEEC8419AD /* RLMArray_Private.h */, + 2F6BE2672CF829FA8CE19678E9CEAF02 /* RLMClassInfo.mm */, + 6C329AB32D0C2C0E8F3300D62652EA29 /* RLMCollection.mm */, + EC546713A40C285F1F96D60407A65EE5 /* RLMCollection_Private.h */, + 97A85459BEEB22063FD286FF84A995C4 /* RLMConstants.m */, + FB3F016B9AA6259951ECA7A3D347BC59 /* RLMJSONModels.m */, + 430E903FD52B93897ABB8515CD13B8B6 /* RLMListBase.h */, + A437EDD918468B6F6921037E78334545 /* RLMListBase.mm */, + 2410CDE93220A09C799FCFE762F50744 /* RLMManagedArray.mm */, + 09BB08D7F1E09355F8763CBD15AE482A /* RLMMigration.mm */, + 9E20F792726DCF3C9B39760070796596 /* RLMMigration_Private.h */, + 19B6F9814D5C8F98661440AB4B6B37CD /* RLMNetworkClient.mm */, + 9230A72F1AEC1BADDCC7186EB25BE0C7 /* RLMObject.mm */, + 857917D6BF444E8985C3335FE4E14AB2 /* RLMObject_Private.h */, + 93CB5431897F122335922F59F3C2B440 /* RLMObjectBase.mm */, + 3EF09A8B74C85C9AFABDEDBD6238F0B7 /* RLMObjectBase_Private.h */, + 5E8802C37AC6734C5B00455CC46F0A68 /* RLMObjectSchema.mm */, + CB9B9B9E87CF5A6EA2132C6AC6FCF64C /* RLMObjectSchema_Private.h */, + 4A5756DF24A1F4AE44F3B28A2957C0D2 /* RLMObjectStore.h */, + 380F6390028F12A9814D9C30B925CAC2 /* RLMObjectStore.mm */, + ABBEE751FEE99D1B3841B73CAAA4EF2C /* RLMObservation.mm */, + 5AC75EF75E9BA81C6A4C393D8867A083 /* RLMOptionalBase.h */, + 5B951F4057A699F027DAED0A10480665 /* RLMOptionalBase.mm */, + 133826FF8FF5FE0D9AE70552ACFF1FF9 /* RLMPredicateUtil.mm */, + 5F27F3A93D04D26D8BE8E6A4CDCE3CAC /* RLMProperty.mm */, + 6FFFBE35D8CD37E4F96DFDC919412F64 /* RLMProperty_Private.h */, + 9BEB907E124F77BA9A38B31E88C029A4 /* RLMQueryUtil.mm */, + 503A96E996C98B2FECDAD7AD4FF0CC25 /* RLMRealm.mm */, + 77EEC43ED2E8ED0420AE5DC19CF79C92 /* RLMRealm+Sync.mm */, + 390A84B69E0EA0B4B0235044426ADB80 /* RLMRealm_Private.h */, + 20C174A994D9149F1382445215556BD8 /* RLMRealmConfiguration.mm */, + 6DCAE60115007E4EDEABA45D6B13CBF1 /* RLMRealmConfiguration+Sync.mm */, + 3B239DB3F6FEBC2871B6BDC37B3800A9 /* RLMRealmConfiguration_Private.h */, + 3B59FBFBFC8197BF796B725D996AE767 /* RLMRealmUtil.mm */, + 0DFBADAC198E4113D3BB18E0483B367B /* RLMResults.mm */, + E368D0F9301094C0876677C1EDA28AAF /* RLMResults_Private.h */, + D931BEE4427488C33D747F3923E0ABE2 /* RLMSchema.mm */, + CE462ADD1E2D874FD8827EF95924AE44 /* RLMSchema_Private.h */, + 3F45EA5868823D57F7FFED4605299E54 /* RLMSwiftSupport.m */, + 42272772E19D27916CD170701A1B18BD /* RLMSyncConfiguration.mm */, + 9C6F33FE3CF07041C28098876552C5FA /* RLMSyncConfiguration_Private.h */, + 5402AF9328A911176F8326FA84222F4D /* RLMSyncCredentials.m */, + 332D7415C3936F8158E7020EF9F244A9 /* RLMSyncManager.mm */, + C94AA744EFB890DE04E7980909D8DF33 /* RLMSyncManager_Private.h */, + 0186D7FF06B2AA0CF675B262569B6875 /* RLMSyncPermission.mm */, + 2C69FE4D4B4A989F68FB329B1A5FFCFF /* RLMSyncPermissionResults.mm */, + 41158C77FE22B096020E449E4DA92CBB /* RLMSyncSession.mm */, + E65BFFCF67FA024A57F6810BDB3EF0AF /* RLMSyncSessionRefreshHandle.mm */, + 6BBE938FF7CE8F598642E2163782F1E8 /* RLMSyncSubscription.mm */, + ADDD57D0E4D5BBCBD1CEDFAF9506F54E /* RLMSyncUser.mm */, + 43D16CE795ACD3F14AEB1903C18AD413 /* RLMSyncUtil.mm */, + 7DB3D213AAE67209F9A9D53E1E25D6E7 /* RLMSyncUtil_Private.h */, + 7DDC855EDB6F0CDABC40595E645987EF /* RLMThreadSafeReference.mm */, + 0749864DB54B08D2F4FEC5B20848E8CE /* RLMUpdateChecker.mm */, + 789902666C34CFD7875524CC17F0F84C /* RLMUtil.mm */, + EDFEA1AAAEE746F5CA07C8FF7245D734 /* schema.cpp */, + 96CF6794C81EE2A4C752C5DC83A892FD /* shared_realm.cpp */, + 0712E727FA0BD0C1005CFE322655ECAF /* sync_config.cpp */, + E613A12D65DCDDFB89BF512E54016D0E /* sync_file.cpp */, + E79F6D4273AE165CB0C762D941FD49F8 /* sync_manager.cpp */, + E572E840A2B6EB3A72C5E3A1A2F8E2B7 /* sync_metadata.cpp */, + 74474A925762D7E3652C299BF5E17758 /* sync_permission.cpp */, + 92B8EF7ABDC366751FCC007B516BBBA0 /* sync_session.cpp */, + 94E08983C35624D67250E6A2A7176A54 /* sync_user.cpp */, + C518CC0FB273D5CDAD64A638F6AF8789 /* system_configuration.cpp */, + 5DECE4A96DC82F1788D2496E380388BD /* thread_safe_reference.cpp */, + 75CFB0970AEB893D68874B9EB5B7DDF8 /* transact_log_handler.cpp */, + E5ABB25E379859D47265F2097C96DB0C /* uuid.cpp */, + A1DF647328528C03448741375AE3993B /* weak_realm_notifier.cpp */, + 6A098E23B03FD37283AE835A4243531B /* work_queue.cpp */, + E42A04CC6E188612D34BB0D7D92993A3 /* Frameworks */, + E6D3EF2EC9DF5E5554330269DA2E965D /* Headers */, + 824E509BB1536F03E52BD7E044D8ABEB /* Support Files */, ); - name = Alamofire; + name = Realm; + path = Realm; sourceTree = ""; }; 644D1183A0EAD6A30C1AC9369115D8B3 /* Targets Support Files */ = { @@ -944,44 +1246,18 @@ name = "Targets Support Files"; sourceTree = ""; }; - 6CA0D24748A1D42957A8DA013E943066 /* Support Files */ = { + 7588718F6AA22F9FB8F90BA43749F76A /* Support Files */ = { isa = PBXGroup; children = ( - F6713C6DE02CE09E28C9E078D9ADF16F /* Info.plist */, - A63D9A1AE8E5532EAC40F1934752D181 /* PromiseKit.modulemap */, - D4D521E1D5A5BEB6D068B0577A1857D3 /* PromiseKit.xcconfig */, - 793A8DC7498F5C2F4ECBD5970AA23E05 /* PromiseKit-dummy.m */, - C1BDA8C02538E89BAE76BD4C43DAFB52 /* PromiseKit-prefix.pch */, - A78D5B018265ACE9814B0AAB5B85B375 /* PromiseKit-umbrella.h */, + BE8729FE5BD1DB20C41AB92A9AD2E0C2 /* Info.plist */, + B5CE04B5882602E737C2D45D300A1837 /* RealmSwift.modulemap */, + 40A162E18F4431A9E2870119C629D7C2 /* RealmSwift.xcconfig */, + CBE20C4557AAD15CAAC1D1086E2AE435 /* RealmSwift-dummy.m */, + AF3202BCDE9338D96382AAFC69557E0C /* RealmSwift-prefix.pch */, + 29EB1E52DAC6AA5B279E6AB0EE47275B /* RealmSwift-umbrella.h */, ); name = "Support Files"; - path = "../Target Support Files/PromiseKit"; - sourceTree = ""; - }; - 706EF6F87BA5C01976546AEDE8AC90B6 /* Alamofire */ = { - isa = PBXGroup; - children = ( - EF68730092653BF5EE4ADF365A7ECD97 /* AFError.swift */, - 3CCD2DBC55682AE0F7AA8DC7C6259B7F /* Alamofire.swift */, - 7BAD62C91B37F95A7F092090D6700654 /* DispatchQueue+Alamofire.swift */, - CC972C244E668A29947C657CA9CE8245 /* MultipartFormData.swift */, - 37703D2332DFE019831E57E068958A25 /* NetworkReachabilityManager.swift */, - F98FBC5083CADF8610B5488D2D67B6D3 /* Notifications.swift */, - 78C760CC7BB5DE34384733868F5870AD /* ParameterEncoding.swift */, - 2323219FD87357687894D4EDCD2C856D /* Request.swift */, - 148168BE900F23A0438580D465C82B63 /* Response.swift */, - 5658459962B1823120E70AF30083A7C5 /* ResponseSerialization.swift */, - 580105F1A23801F75414CBEB6B546A7F /* Result.swift */, - 804EB36C9AE72E4B0422B79432774B4F /* ServerTrustPolicy.swift */, - 5B3D2D1D6C1822AF5D1F17D214A2EA84 /* SessionDelegate.swift */, - 5AE62BB283CB99454B7EC00C4A0DC278 /* SessionManager.swift */, - D08F36AD51AD0F8416553B4B9E3A55A0 /* TaskDelegate.swift */, - F1EC6FD4979BF9C41F049DF0A3B5119B /* Timeline.swift */, - D53A2ACD5DAA13352720BB1489B33305 /* Validation.swift */, - 0C43FF29CFF62E6B006CE76FBA1E839F /* Support Files */, - ); - name = Alamofire; - path = Alamofire; + path = "../Target Support Files/RealmSwift"; sourceTree = ""; }; 7DB346D0F39D3F0E887471402A8071AB = { @@ -989,44 +1265,23 @@ children = ( 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */, DD688261F5598083C564FCB7D0FC118A /* Frameworks */, - CC633E0229D4C200896CFB9CB003C6BE /* Pods */, - CE8A408AACCF50158DFC2FAE4019AB02 /* Products */, + 250B9545B6ECF71E5A57A942033C8B72 /* Pods */, + 353215EA0F459426860E8E5A51083A52 /* Products */, 644D1183A0EAD6A30C1AC9369115D8B3 /* Targets Support Files */, ); sourceTree = ""; }; - 7F081C612602C2388CA771C584275C91 /* Default */ = { + 824E509BB1536F03E52BD7E044D8ABEB /* Support Files */ = { isa = PBXGroup; children = ( - 2D57200BD530415B65183CAF747BA68C /* Chameleon.h */, - 2F027E0F35FE004F339CCDE1949B0733 /* Chameleon_.h */, - 8B9CAF50A856109C0487E31A7B022AC3 /* Chameleon_.m */, - A8507863770906D62047B2BCFD382515 /* ChameleonConstants.h */, - B4FBD20E27C4D8E6B7D4596B8DE6BAE2 /* ChameleonConstants.m */, - 49407EE458A79137F583103E1807519E /* ChameleonEnums.h */, - B7268A78D32AADCE3654DA0C343D5DD1 /* ChameleonMacros.h */, - B7855FD33C118142ACD710A2C5F7D71D /* NSArray+Chameleon.h */, - 26655C7C8ACE3106DAF15CED6AC73030 /* NSArray+Chameleon.m */, - EC668613833476D5497C3FB1FF4C230A /* UIAppearance+Swift.h */, - 3716B1762FE6B9752E70444025FCC126 /* UIAppearance+Swift.m */, - 0EB01E8A603C50A990B449E4F1538D46 /* UIButton+Chameleon.h */, - C0D2CD7CD136DDD331955BFEE9458D0D /* UIButton+Chameleon.m */, - 94ABEBD69A3D65AE2F7548B8D3A29964 /* UIColor+Chameleon.h */, - B369F40D6E1C57F79FBC6C7062160819 /* UIColor+Chameleon.m */, - 6160869B5FA63B4E56F6C2867B64F4FC /* UIColor+ChameleonPrivate.h */, - 826073BF674EE51E8F7AA5242AD5901E /* UIColor+ChameleonPrivate.m */, - 40275F0CFC354CE6DD5657A6662CF380 /* UIImage+ChameleonPrivate.h */, - 4A28B9D99079C7C9275E37FB40DE1E56 /* UIImage+ChameleonPrivate.m */, - 26B697CBDD08FD522107A0DB9A9083BC /* UILabel+Chameleon.h */, - D570F56FBC37CCC325DE809BCDA7B7CA /* UILabel+Chameleon.m */, - 90C771AA5969C7A748FD76398F1785D9 /* UINavigationController+Chameleon.h */, - 2266DAC3F473C78462692AB5ED9190E1 /* UINavigationController+Chameleon.m */, - E8CA97EF476B1BBC6DA9DDF5E4AD6AE9 /* UIView+ChameleonPrivate.h */, - DFE5B247216F6A8138455A7615B1CF75 /* UIView+ChameleonPrivate.m */, - 5424385AC1912D055BFCE4CA118DDE8E /* UIViewController+Chameleon.h */, - 36986820DD7B3648E304618269ADFD26 /* UIViewController+Chameleon.m */, + 12F9F10AAE236243AA10204AF34BC750 /* Info.plist */, + 186BBB5BF293E847606EB9ED758B36A9 /* Realm.modulemap */, + D3FE4EDF853BCC3D98F0C989996A9616 /* Realm.xcconfig */, + E53A56088ACEAE7BF35D1B69201BEB95 /* Realm-dummy.m */, + 11C5B97A8303AF21EE7F79D66F93DCC1 /* Realm-prefix.pch */, ); - name = Default; + name = "Support Files"; + path = "../Target Support Files/Realm"; sourceTree = ""; }; 8C72D286B6194C10B85CB9343E6C19D6 /* iOS */ = { @@ -1042,217 +1297,111 @@ name = iOS; sourceTree = ""; }; - 97AD1F45AE40B58E0C8CDAB7064E4131 /* Frameworks */ = { + 991BFA1A73F46395A5F2573D18EFA63D /* Default */ = { isa = PBXGroup; children = ( - 91FF9005B393FADEC47433C780A35F9D /* librealmcore-ios.a */, + 57B6DF119EF2A8AC5070E5E6C8352A03 /* Chameleon.h */, + 48E6F647FE2BD50C532EBA0B41860385 /* Chameleon_.h */, + 8A19A28DD4A622AB5295E5C80E3A1B6D /* Chameleon_.m */, + 7B782A520D3CCEFE5491F8C4DF84B547 /* ChameleonConstants.h */, + 5E1324D4858E13AEB922B35546D2EF41 /* ChameleonConstants.m */, + 2835F7A3E1C97C097D2DBB10369D4625 /* ChameleonEnums.h */, + A0388843F876AD8146F5BC509D916001 /* ChameleonMacros.h */, + 6EE92BDBC49085DB5EDCF7224595B3B6 /* NSArray+Chameleon.h */, + 4026515E0771C12CAC0E848BBB63A2CF /* NSArray+Chameleon.m */, + 4F3DAD915963159344F4BBDBBF1F0F96 /* UIAppearance+Swift.h */, + 742D94437DE4E658881F39F5A0F00ED0 /* UIAppearance+Swift.m */, + 3B1FD331CE6D658E51E9BE21C74A9D03 /* UIButton+Chameleon.h */, + 5EDCB4D713194B7985A3F1A40A6CAF59 /* UIButton+Chameleon.m */, + EBE60FEFC446259A428A5E006F6890D7 /* UIColor+Chameleon.h */, + 38A91E765AB224793D503E47DE25F967 /* UIColor+Chameleon.m */, + F07E279D64010940180B74CC84FB57C8 /* UIColor+ChameleonPrivate.h */, + F3EC90777F4DA5BFBEFB31392629C1F3 /* UIColor+ChameleonPrivate.m */, + 9AAE7C6607187E86982DDA9EDFC0DAFC /* UIImage+ChameleonPrivate.h */, + CE2DC91D7781216FC1C8185F4052A782 /* UIImage+ChameleonPrivate.m */, + 3897F2C01770DE95C588C28C3241E47E /* UILabel+Chameleon.h */, + D90E8890249BDC47B817968A9A80B81F /* UILabel+Chameleon.m */, + F7882ACE5B6A0B5560149D22A412B6F0 /* UINavigationController+Chameleon.h */, + 5FA917B1D37C02352E7C1D9E0E599FA5 /* UINavigationController+Chameleon.m */, + 3678A368CA8C673FD74EB418177A567B /* UIView+ChameleonPrivate.h */, + 0ADB12423AA8940DAAB2C57CF50D618C /* UIView+ChameleonPrivate.m */, + CA59A1769701148D1CA2A062B1111F8D /* UIViewController+Chameleon.h */, + 1632ECB7002FCED4B34B430E0F7B14C9 /* UIViewController+Chameleon.m */, ); - name = Frameworks; + name = Default; sourceTree = ""; }; - 983CE10F25BE7C569B953F7DBCFD70F8 /* Support Files */ = { + 9A61732050FD42242FEB65ED3A8DBFFE /* Resources */ = { isa = PBXGroup; children = ( - 6D81C240921BE96A635580E2BC28CFEE /* ChameleonFramework.modulemap */, - 0B079A00CBADBF7388DC071DAA970837 /* ChameleonFramework.xcconfig */, - 164F13683A64E1337D806FDB550DA350 /* ChameleonFramework-dummy.m */, - 05EB8A06A2A7F5DEEB7074280D74EDB2 /* ChameleonFramework-prefix.pch */, - 04DEB9F9CDDFBB007909437B7AEBB2EF /* ChameleonFramework-umbrella.h */, - 1E16E8226E4AA88FA8E794F44FEBCC5D /* Info.plist */, - ); - name = "Support Files"; - path = "../Target Support Files/ChameleonFramework"; - sourceTree = ""; - }; - 99A1B57010D4E65637A385CC3A1E7604 /* Headers */ = { - isa = PBXGroup; - children = ( - 34B788F212A049CD605C82D6BF10EE0F /* NSError+RLMSync.h */, - 311B47A4BBDBA8D6EDD5B88F76BDB942 /* Realm.h */, - 7CE1316F81F624136F84544BA791A7E7 /* RLMArray.h */, - C32B33B51C2DF6543DE5A46287CB8564 /* RLMCollection.h */, - 4A649C08C6A14CB557FDFC4F8721E2AC /* RLMConstants.h */, - E1365B4CF789343E980B675C12BE13A4 /* RLMMigration.h */, - 0AA1646FD24396E0B81DA8DFA88BDEB4 /* RLMObject.h */, - B021BB289B973BAEA5BDC27378F4755E /* RLMObjectBase.h */, - 2A9BA425FE31717AB19E3A3097EE305B /* RLMObjectBase_Dynamic.h */, - BA011A254773214FB91EB23A757D5276 /* RLMObjectSchema.h */, - EB3A764D9554573A86BC7EA8D331A5B1 /* RLMPlatform.h */, - 5940218E6A182F433055F7B2DC97C968 /* RLMProperty.h */, - 36CD4AA8F13F67E62E5EFBFF2A2920C9 /* RLMRealm.h */, - 1EE7D2A08897BF700F42FA13772C9637 /* RLMRealm+Sync.h */, - E9EDC2A9336BE94BA578B012CDF74FD0 /* RLMRealm_Dynamic.h */, - 0F8079961C3704B413F60D8FC0202176 /* RLMRealmConfiguration.h */, - 0BDCBE875751985C7503D9D7738F1BBF /* RLMRealmConfiguration+Sync.h */, - BA620C8079276285E61DC55E8E010C63 /* RLMResults.h */, - EF9385A4348055A59474B2BEAD29C9EE /* RLMSchema.h */, - E15AD57F580DA9006D796E2A65A7BFC1 /* RLMSyncConfiguration.h */, - D804D42E64241AEFACF1D50AA42FDE37 /* RLMSyncCredentials.h */, - 0402537231193FF2DC9AE44CAD2FCA56 /* RLMSyncManager.h */, - 0EA08FBA6A6611E85E5B3CEB6D30E7F3 /* RLMSyncPermission.h */, - 8FE2AF51D54D8C90660387FB02C44062 /* RLMSyncSession.h */, - 7B3A7E663D5EAE38832816B57E91D1AC /* RLMSyncSubscription.h */, - 7FB7797D20B4214247E5E4C802893724 /* RLMSyncUser.h */, - 12A3070D56E0DE33A4493A45D1ED62FE /* RLMSyncUtil.h */, - D0025130F79BFD9A4D079CAFE4F3C3BC /* RLMThreadSafeReference.h */, - ); - name = Headers; - sourceTree = ""; - }; - AA173D8A626AFBCB43D53DFE7FD0E20F /* SVProgressHUD */ = { - isa = PBXGroup; - children = ( - 9D70898FD33E840C5160570CF4C490C8 /* SVIndefiniteAnimatedView.h */, - FA8186FEF4C84297B6F73AE3B6AE51E2 /* SVIndefiniteAnimatedView.m */, - 259C43EA401F22B5AD8A0D90EAEAD829 /* SVProgressAnimatedView.h */, - 766D2F20D66B6FF2AF1D4EAB824F9066 /* SVProgressAnimatedView.m */, - 6E3E1B4A705B951CE23EE3BB9CC1CCB4 /* SVProgressHUD.h */, - A18E439FDF6127098B8C16B35C7D972D /* SVProgressHUD.m */, - 99E2F10CCB18CA5104A55783194B7F3B /* SVRadialGradientLayer.h */, - 9E31399968FFD6FED06271F3C254596D /* SVRadialGradientLayer.m */, - AC8EFB56289C64B97DAD6CE86746F1B2 /* Resources */, - B2F9E7EA6C5595FA2BF9E390BD8A18F8 /* Support Files */, - ); - name = SVProgressHUD; - path = SVProgressHUD; - sourceTree = ""; - }; - AC8EFB56289C64B97DAD6CE86746F1B2 /* Resources */ = { - isa = PBXGroup; - children = ( - E592508DA2DF696843C0E38F0FD1D2D6 /* SVProgressHUD.bundle */, + 53A222CFEE05DA8169D1438B3C83EC9C /* SVProgressHUD.bundle */, ); name = Resources; sourceTree = ""; }; - ADA1C80696F4A2D45BDF2900CDD9F33A /* Support Files */ = { + A8028A57952ECFA162D78DEDAF6F0264 /* Kingfisher */ = { isa = PBXGroup; children = ( - 8EF685DAC6CD00E32EB31F0CFD558DAE /* Info.plist */, - CCC11781019CC048938DA5D14FFD3494 /* Realm.modulemap */, - 9B4A82B8567691104E0B2E5589DDA531 /* Realm.xcconfig */, - 4B90D360FB01D8D65E88387B2320B050 /* Realm-dummy.m */, - 9DA5413BE6B721B88FB44B00AEA3B96A /* Realm-prefix.pch */, - ); - name = "Support Files"; - path = "../Target Support Files/Realm"; - sourceTree = ""; - }; - B2F9E7EA6C5595FA2BF9E390BD8A18F8 /* Support Files */ = { - isa = PBXGroup; - children = ( - DBAEF6D0DD9F785BD9D2AB9EE56D8F31 /* Info.plist */, - 6D3D479C00346497118A8B730F269990 /* SVProgressHUD.modulemap */, - 7C7037F71ABCCC36D4503C634BBE25E2 /* SVProgressHUD.xcconfig */, - C0750EB2B9317BE895CF5DE3FDB9CBD5 /* SVProgressHUD-dummy.m */, - C404F40DA7D356F18B91EDD8AFC91F83 /* SVProgressHUD-prefix.pch */, - 1B8EA55E1C62F7FE5AF764B84332BF9B /* SVProgressHUD-umbrella.h */, - ); - name = "Support Files"; - path = "../Target Support Files/SVProgressHUD"; - sourceTree = ""; - }; - C443CE5527C342E869E05BC0469A479C /* Support Files */ = { - isa = PBXGroup; - children = ( - 013C3E11C94D03C21233C57A952ECA0F /* Info.plist */, - 3D9F4EC665C71D83FD233CF6760686D0 /* RealmSwift.modulemap */, - DDCEEE24ECEC0906CEB20D6EF38A6829 /* RealmSwift.xcconfig */, - 5007B8D96633285A3070EE20D7FAEDFA /* RealmSwift-dummy.m */, - 08D36F0C4481B3AED962FE5C5039A718 /* RealmSwift-prefix.pch */, - A70BDE5189C7520673EB6E6CB6F896AC /* RealmSwift-umbrella.h */, - ); - name = "Support Files"; - path = "../Target Support Files/RealmSwift"; - sourceTree = ""; - }; - CB0FB75B3342320414D733FC1F39D9A5 /* Support Files */ = { - isa = PBXGroup; - children = ( - BAFFD8636D3DA143D73C5D740C5B9E41 /* Info.plist */, - 092D197A3DBC01BE7D3DC87FE68206BC /* SwiftyJSON.modulemap */, - 394D44FA4E552DE1E7A714C1C85E6C45 /* SwiftyJSON.xcconfig */, - C1E6D0BE26CC4AD1D80434C026C6294E /* SwiftyJSON-dummy.m */, - 82E4A8B1F88890A9D3CA241336C659F5 /* SwiftyJSON-prefix.pch */, - 9DF5A5C2C25BF5E002D38C5F78F3426A /* SwiftyJSON-umbrella.h */, - ); - name = "Support Files"; - path = "../Target Support Files/SwiftyJSON"; - sourceTree = ""; - }; - CBE50133018319C8F47B9785592899E3 /* Kingfisher */ = { - isa = PBXGroup; - children = ( - 2448C86632282954B5EBA4554B249AD2 /* AnimatedImageView.swift */, - 5A10276741DB7FD47E649753FF219434 /* Box.swift */, - 14664C2A6EEF8AF2E3A59A1654130405 /* CacheSerializer.swift */, - 1E117D18B362E8C49055BD8D0698C1C6 /* Filter.swift */, - 770E3439F96F9D118B88F51CC177C251 /* FormatIndicatedCacheSerializer.swift */, - E2704597263FE68C7CC88E05EAA27BDC /* Image.swift */, - 613EA807D186572DAB1A10C020781DE3 /* ImageCache.swift */, - DDD6B193581745546CEC070F290671DC /* ImageDownloader.swift */, - 5068692F9A8D85E61A94EC2B4F6302FF /* ImageModifier.swift */, - 036EC38E356C7009E7702985003D4629 /* ImagePrefetcher.swift */, - BB27A01EEF1BDDFFD7DC732DB29217FB /* ImageProcessor.swift */, - 1694F8995C4542D86BBC0E96E54A487E /* ImageTransition.swift */, - ED2EFD32B69A725F7649C183C8E84B4E /* ImageView+Kingfisher.swift */, - 89B7DEC53BFB6330306600C1EBEBD178 /* Indicator.swift */, - 7F13F6EFAA687AA5F9E80B68CE128815 /* Kingfisher.h */, - FD70D400295A311805EA96E3D279AD8B /* Kingfisher.swift */, - 3541DC93EA6F997DC73EACEAAA47EF73 /* KingfisherManager.swift */, - CAB1622FEE145C9A8F8B8F1014C7D366 /* KingfisherOptionsInfo.swift */, - 0EA67006E0ABBE1584991474FE278FC2 /* Placeholder.swift */, - DD9302000C30F79629846BBD87E8B38A /* RequestModifier.swift */, - BA20F6DC726D1AA96BC9B9AE042A35BB /* Resource.swift */, - 21F59D108BC6703BEBE613FA9F0ED05B /* String+MD5.swift */, - D1C288319261747A9E4920348E0E6A80 /* ThreadHelper.swift */, - 2B508E7D43485B2636CC9EA33EB1C935 /* UIButton+Kingfisher.swift */, - F3E6A937F592ED9458C1CD6AAAC3FCAC /* Support Files */, + 9D029DC1A613CFDFD9713293C0629203 /* AnimatedImageView.swift */, + 8F9EA260639ACC8A3018A686F68A0CAE /* Box.swift */, + 96C3869CF6A43B7BD1F899A5081430AD /* CacheSerializer.swift */, + 7FB017EC13054E1B53F9CA04B114CC8B /* Filter.swift */, + 9219FD5E8223E62D5964FCE2990ADC6B /* FormatIndicatedCacheSerializer.swift */, + 302761828D29BA3715E56776C64D6459 /* Image.swift */, + 88A11DD12630B43389DF2F7D98056A92 /* ImageCache.swift */, + 13F70639283568A70007C70A85CC543D /* ImageDownloader.swift */, + 115A33401E0A120F11554A919253CB53 /* ImageModifier.swift */, + 7B694E64D2F0157A60AE632464FD13F2 /* ImagePrefetcher.swift */, + 39F891C0D105C3D7B82AC48E01930036 /* ImageProcessor.swift */, + E4FF2B9FEDC88A76BFCF771EC7CB4D2B /* ImageTransition.swift */, + B2C5BC8F9D3F74D15191F47FB7B5BADD /* ImageView+Kingfisher.swift */, + 3A9097BC27D5E2DB6D3ECFAA0B466B9D /* Indicator.swift */, + C2BDEFF55386C131D4B8AFF30946D6E7 /* Kingfisher.h */, + 40861DD66AD1FB5FF114D2FA08EB62DF /* Kingfisher.swift */, + 4EFC3410355C9EEA94248BDE754DC978 /* KingfisherManager.swift */, + FE7C6F13939F14802A9A1BD79EAC1D4A /* KingfisherOptionsInfo.swift */, + DEFBCB31C513282CB43F15B7BAB3D159 /* Placeholder.swift */, + D4AB08CFF2444EA8D5EFFBADF026CD3F /* RequestModifier.swift */, + 88472B117B54DD52258401D62D8AE5CE /* Resource.swift */, + 62ED7DCA37B4A12513513DCA99935151 /* String+MD5.swift */, + 8D24C0044A30640775D9F8AC3E7AA60C /* ThreadHelper.swift */, + CFEB396365D1E33963DF0A95EB36CE56 /* UIButton+Kingfisher.swift */, + 485F22482344BB9623BB8CFA577B72FB /* Support Files */, ); name = Kingfisher; path = Kingfisher; sourceTree = ""; }; - CC633E0229D4C200896CFB9CB003C6BE /* Pods */ = { + BC7E7BE5E3F33C1C0D6A6F111CE377F2 /* SVProgressHUD */ = { isa = PBXGroup; children = ( - 706EF6F87BA5C01976546AEDE8AC90B6 /* Alamofire */, - 3A8740978A903FB38EDA155556ED4676 /* ChameleonFramework */, - CBE50133018319C8F47B9785592899E3 /* Kingfisher */, - D39903E8B59F857F5B5E4D4D226379E1 /* PromiseKit */, - DB1129790BD1794615D93FB316075EB2 /* Realm */, - F9F06E3E9E7BBD1BE6450B51C7ABA240 /* RealmSwift */, - AA173D8A626AFBCB43D53DFE7FD0E20F /* SVProgressHUD */, - 09F9DA5723052910F98C064F57159509 /* SwiftyJSON */, + B6694706AE2206C12B59D754417F369C /* SVIndefiniteAnimatedView.h */, + CA7F4E6DC0F879159D640239794AACD2 /* SVIndefiniteAnimatedView.m */, + 33AAC4FF727892EB5A88D76441EB8034 /* SVProgressAnimatedView.h */, + 4348319519D243801CC6340DAB87B5DB /* SVProgressAnimatedView.m */, + 936CD07388EDC2494410B80CC4717FF1 /* SVProgressHUD.h */, + 9D3CD9729DF02D7F14CBCD33D2D56A87 /* SVProgressHUD.m */, + 3EA602B674420FB05E049B058851313F /* SVRadialGradientLayer.h */, + E705FFD877223D0B0101AF6254E69858 /* SVRadialGradientLayer.m */, + 9A61732050FD42242FEB65ED3A8DBFFE /* Resources */, + 00457AF00F1AAC862301AE0BBC5EF6BD /* Support Files */, ); - name = Pods; + name = SVProgressHUD; + path = SVProgressHUD; sourceTree = ""; }; - CE8A408AACCF50158DFC2FAE4019AB02 /* Products */ = { + D3A9FFC7A7DF180F143935D09676D58F /* Support Files */ = { isa = PBXGroup; children = ( - DFA95B238E6EBDBD730BFB28C54C9ED3 /* Alamofire.framework */, - 8DB3712B2499EDB32674F6927B6349A1 /* ChameleonFramework.framework */, - 3C13D927DA5CDBC8B6DD209F5AFA5A29 /* Kingfisher.framework */, - 724940ED6921C748C982FF892E00426F /* Pods_pocloud.framework */, - 67BD03AEED4FF2E588F8D3E4B50A31F5 /* PromiseKit.framework */, - A5215A64C38F37ED464D85EE72755F9B /* Realm.framework */, - D370D0675522C923F96EA3C85501FD1B /* RealmSwift.framework */, - 2BD41E7551643F0E7DE5E76044BF05AA /* SVProgressHUD.framework */, - 280E485B9DB3AB2D4DECAD6B89B0A3B9 /* SwiftyJSON.framework */, + 27DB3E20C26716CE1AC6AD951B44BB26 /* Info.plist */, + DE49909CAAF22EFDE000F82BCBAB5899 /* PromiseKit.modulemap */, + C2489211F0C078953B1E4805F610FFD8 /* PromiseKit.xcconfig */, + 08D74B2C583EA62F89EC057648DBE5A3 /* PromiseKit-dummy.m */, + EF24AD35F2C7ED5931566922740848CF /* PromiseKit-prefix.pch */, + 66E9A978132CA9F57F2D4CA537E462AE /* PromiseKit-umbrella.h */, ); - name = Products; - sourceTree = ""; - }; - D39903E8B59F857F5B5E4D4D226379E1 /* PromiseKit */ = { - isa = PBXGroup; - children = ( - 3C9CC2CF6E7D2A17BD2218CCD4FB123E /* Alamofire */, - DF0A7319F10E570AFA6F98D756FCC510 /* CorePromise */, - 6CA0D24748A1D42957A8DA013E943066 /* Support Files */, - ); - name = PromiseKit; - path = PromiseKit; + name = "Support Files"; + path = "../Target Support Files/PromiseKit"; sourceTree = ""; }; D981261BB0F95B92A913848049042F3B /* Pods-pocloud */ = { @@ -1273,110 +1422,18 @@ path = "Target Support Files/Pods-pocloud"; sourceTree = ""; }; - DB1129790BD1794615D93FB316075EB2 /* Realm */ = { + DBE754F7C57B7900C8127830A779DF83 /* Support Files */ = { isa = PBXGroup; children = ( - 9DA895BCF2B9FD46CFF0B133BFED9F6A /* binding_callback_thread_observer.cpp */, - E39BFAB9133B4FE11392BAC85656A395 /* collection_change_builder.cpp */, - FA3A70F6F798AFA9D77811404C1B0676 /* collection_notifications.cpp */, - 5EA3B8F4123418202C9542F7DAD27D57 /* collection_notifier.cpp */, - E97A49D59AB00307EDEAD1C2CECA377F /* external_commit_helper.cpp */, - 27C6E514E53CE69D8723F7DB548DA9EA /* index_set.cpp */, - 8163DDFB108E78AD35D137CB6C77011B /* keychain_helper.cpp */, - 2CEDD50BD9CE4544B2FC1ABE1F44097B /* list.cpp */, - 015B1073EABE6B3663D301C245081D96 /* list_notifier.cpp */, - 84E2DBAA7FC3FD9C3B086DD17F39FF6C /* network_reachability_observer.cpp */, - CD29D155F362C0B37BA7B1F5BC95674F /* NSError+RLMSync.m */, - 8C8842242396C4537870CAB3AF91C4C5 /* object.cpp */, - 2C782BB04AB51744E97C3248A1355980 /* object_notifier.cpp */, - B41055185B92B06E24031550C04D2AB8 /* object_schema.cpp */, - 5DB2113B5A6B69019AEB502264443213 /* object_store.cpp */, - 833B4223165CBCA46776F13EE5F85782 /* partial_sync.cpp */, - 405D039B273A0F032F9293555ED14218 /* placeholder.cpp */, - 26E7A628B7925AA77F775DD246631A44 /* primitive_list_notifier.cpp */, - 42514FBA011623E5533117822AA5C460 /* realm_coordinator.cpp */, - F6408D6165CC25B839381430FEA0FB6E /* results.cpp */, - 203EA9B7A6420680B177FF54A356722D /* results_notifier.cpp */, - 1024E27DB140FFD86EDA2885C1BAC32D /* RLMAccessor.h */, - 1495FF97718546ADC39B7A2BE30648C3 /* RLMAccessor.mm */, - 6BE12ED87EA685919A49CB0B3F7E0274 /* RLMAnalytics.mm */, - 7CB724F58276A5CD525EF79E059935AF /* RLMArray.mm */, - 4C4D0A5B4C1F720C7FABD57EDED4231C /* RLMArray_Private.h */, - C1F15CECB8611E87A6E56FA5E5942242 /* RLMClassInfo.mm */, - 2DBB21F1EEDBDF05153B24268A7DDF49 /* RLMCollection.mm */, - ED1ABB6E30B38A886BE80601229D67B6 /* RLMCollection_Private.h */, - 469DB80DDE39DEBA63E0F3910A8A84CB /* RLMConstants.m */, - 810638791DBF1E39B34B97051435B201 /* RLMJSONModels.m */, - E04DF0E29B2F559699F2E80594E9A2B2 /* RLMListBase.h */, - 11C267BACF91407FDDE5C7F19BB64160 /* RLMListBase.mm */, - 7622CF007B46CB35D5418C19DF59316C /* RLMManagedArray.mm */, - 5617F7814651371AB22F8611BFC47656 /* RLMMigration.mm */, - CD124FBA715A6B156C2FBCD73C8469D4 /* RLMMigration_Private.h */, - AA9825BC28B7013AE0262E5583AC6D62 /* RLMNetworkClient.mm */, - F1ED8B956F9F5CFD7FD4BBD9FDFDD07A /* RLMObject.mm */, - 0DEF8129AB4440A53F66EEB19599DE53 /* RLMObject_Private.h */, - E97D9B22220A23A1490C3F3F5C457248 /* RLMObjectBase.mm */, - 69EE522272ED3216D2EF5F104485F126 /* RLMObjectBase_Private.h */, - A737AD0F7AD8213BEE04587521D499AA /* RLMObjectSchema.mm */, - FF077ADE2FCBA19A581C461C2B40CF37 /* RLMObjectSchema_Private.h */, - 32A09A21339684C5DD6CC19018F1D774 /* RLMObjectStore.h */, - 88F8C0A1A8C3398FDB63B84FAF99D01A /* RLMObjectStore.mm */, - 3B996A355B6ECB5A84056BE1396CB933 /* RLMObservation.mm */, - 26D501D87506A61F23F694A971EC6166 /* RLMOptionalBase.h */, - A1E53F2A4A5B09CD3C0E411A183A09F5 /* RLMOptionalBase.mm */, - BC1C3F96E874A55271C7315C7002B66A /* RLMPredicateUtil.mm */, - B8404B421AE2273E2475A0ABFB349941 /* RLMProperty.mm */, - FB161B5A3367EE87312EEC0DDD1EE185 /* RLMProperty_Private.h */, - 9B9E781E34077602231B53C8023E93A7 /* RLMQueryUtil.mm */, - 34FDBD9EEA5CE5E139300C78D4503356 /* RLMRealm.mm */, - 7C422C0B648D8C28653671B1027B6BDE /* RLMRealm+Sync.mm */, - 2741AF43A6E87FCC35712102A7CE8B97 /* RLMRealm_Private.h */, - 63CF2F37C975390164EEA66401D07AB3 /* RLMRealmConfiguration.mm */, - 86D2FFDD8FE3111B425D105A48D64A75 /* RLMRealmConfiguration+Sync.mm */, - 1EB88B6437549FAC51EC6F8FCF38DAF9 /* RLMRealmConfiguration_Private.h */, - 599AC7301D4C70ABB010FE6FFF550B6D /* RLMRealmUtil.mm */, - DD7072E4BFE128305640C3FB9FAEF961 /* RLMResults.mm */, - 691A676C2CB0F041321DE2EC6B1DC6E0 /* RLMResults_Private.h */, - F35E0788F67D5F48F2C081EA6CFA7F75 /* RLMSchema.mm */, - B165B55C0D7AC6D4F94B892C3BC0E0F1 /* RLMSchema_Private.h */, - A7914B286DCAC9EBECAA94F66F858235 /* RLMSwiftSupport.m */, - E40FF8577F2DBD718EE5A69C2B7D4D3B /* RLMSyncConfiguration.mm */, - 5B5F70E3E5E49DF8AC37B6E2B8D9BF19 /* RLMSyncConfiguration_Private.h */, - 3D20CB4FD626214A3A104F64296C3AF1 /* RLMSyncCredentials.m */, - 58857A4270010E2F66D14D2354BF08EF /* RLMSyncManager.mm */, - EC5EB5F10CDB88745D8F00A4776CC90F /* RLMSyncManager_Private.h */, - 2A6826F9A6464F93E32B64C79F6CA5EB /* RLMSyncPermission.mm */, - CCEC93A22D299009B2CF669049ADDD67 /* RLMSyncPermissionResults.mm */, - 91ECC59AFF97C45F079ADB967B7B20EB /* RLMSyncSession.mm */, - 1D9220E07EB5DB96708E82889E2C4C87 /* RLMSyncSessionRefreshHandle.mm */, - E285A3A22D379A070CD9AEB57CB019A3 /* RLMSyncSubscription.mm */, - D438AEC542DE20B79CF71DD63C17B1B7 /* RLMSyncUser.mm */, - DA741CF9B82AA566373415B7ED0ACA7A /* RLMSyncUtil.mm */, - 91F65679EC921B36EBC32F9C55BFAC47 /* RLMSyncUtil_Private.h */, - 273F49017521BD3655ADC76F4F11CE47 /* RLMThreadSafeReference.mm */, - D60332F7B9A7DC41158391BF79954BDC /* RLMUpdateChecker.mm */, - 9AB1D3B47586EAF37CE0FC2D96E3C65F /* RLMUtil.mm */, - 7F9B8100B2293A4B9350ED4A123DAB27 /* schema.cpp */, - 325E0ED2B73306069C971D15A9C32513 /* shared_realm.cpp */, - 95E22F0FC8527A0AF6188247B226823F /* sync_config.cpp */, - 09DE2237E50C91B08EDB830A6F9075B8 /* sync_file.cpp */, - 3B1FB373D263BBFFC297B8411343DDC2 /* sync_manager.cpp */, - EC0C6E93AF10A37046E8D11B1E9E0C6C /* sync_metadata.cpp */, - 31D429B5C1215BCE985335070FF10E9B /* sync_permission.cpp */, - 43D9D01F16807409B6C7E64CF4FF94A0 /* sync_session.cpp */, - 32F6964375D27E0BC2922CBDC5E47541 /* sync_user.cpp */, - FE6B9D7126E0C71B5BE611F3B32DE494 /* system_configuration.cpp */, - 56BECC5DB09CC019638E5717E1CDA76C /* thread_safe_reference.cpp */, - 5F649BF78A4595CDFA859ED222F62673 /* transact_log_handler.cpp */, - 250A6494A701B9C367DC029CF6A6E8CC /* uuid.cpp */, - E34EC0505238441E3AB17C5B76376151 /* weak_realm_notifier.cpp */, - 69F41C00D9BB7F5C6387521BEBAE8C5E /* work_queue.cpp */, - 97AD1F45AE40B58E0C8CDAB7064E4131 /* Frameworks */, - 99A1B57010D4E65637A385CC3A1E7604 /* Headers */, - ADA1C80696F4A2D45BDF2900CDD9F33A /* Support Files */, + 067F73E79FC632FA973441E5B3D87BFA /* ChameleonFramework.modulemap */, + E15BF07935FB7810EB495127E7CDF1ED /* ChameleonFramework.xcconfig */, + 0959BDEE1293E37DF38F776CB3C4BB26 /* ChameleonFramework-dummy.m */, + 46AD59FD129815D20E5A8ADE118BF294 /* ChameleonFramework-prefix.pch */, + A9FFFD475E5F246FE9C10E3AD59F2DF9 /* ChameleonFramework-umbrella.h */, + 05C09D0374B427D3E107ED81E4CA546E /* Info.plist */, ); - name = Realm; - path = Realm; + name = "Support Files"; + path = "../Target Support Files/ChameleonFramework"; sourceTree = ""; }; DD688261F5598083C564FCB7D0FC118A /* Frameworks */ = { @@ -1389,77 +1446,81 @@ name = Frameworks; sourceTree = ""; }; - DF0A7319F10E570AFA6F98D756FCC510 /* CorePromise */ = { + E42A04CC6E188612D34BB0D7D92993A3 /* Frameworks */ = { isa = PBXGroup; children = ( - DB00D497A5E28FF36623FA28B408D039 /* after.m */, - 4309A1EAE860373CAC6914735A194930 /* after.swift */, - 16D8DFD434E35AF06E9B2570C8FD39AF /* AnyPromise.h */, - E7A8B08419297C02CC4149B35B2ECC53 /* AnyPromise.m */, - 13A0CB45F6BF541DCBF05269FAC5BEC9 /* AnyPromise.swift */, - 70642B3E4D58AEA8CC5C2B547B34983E /* Box.swift */, - 8BCB555A73F7D0CE7B9F37DFF8852BE8 /* Catchable.swift */, - C82EAE5531EA5C66802CC6FAA7763171 /* Configuration.swift */, - DCDFDE0AD4F69DD1C5F5B7328B40704E /* CustomStringConvertible.swift */, - A115B496CC87566612F6B2C40E3C3F34 /* Deprecations.swift */, - 2932FBE3B9839F2EA9D64C72BF76C2B7 /* dispatch_promise.m */, - 245F0F61DC6B9BF9094F98409BE93E9F /* Error.swift */, - DDE2FF0DA3503461A7A96FBEBDADAD00 /* firstly.swift */, - BD6C9428E6450A1B187BFEFA16A56412 /* fwd.h */, - D232412C87D973AA69865099C3146475 /* Guarantee.swift */, - 279BB1824750089DA9C2714A4AC85295 /* hang.m */, - B5C1942BCDDF71B4DA513A37AC821E36 /* hang.swift */, - C35CD0F4638F1A0B757CB811DC382A1D /* join.m */, - E5B752A401F4C464871406C2F82D0692 /* Promise.swift */, - 0642BB0E732F952139B90AD3BCE75F7A /* PromiseKit.h */, - 4611B676C9FD2794BA29AEA951CA7C0F /* race.m */, - 7FA755EB6ED6C584BC8DB1FFC4736DAE /* race.swift */, - 4F794A65CE066A9DD85CB989C332819A /* Resolver.swift */, - E2117193D92EC698D3B2586F057BC248 /* Thenable.swift */, - 2D76CBD80AC6B1BCF6DA1BBC110D1E10 /* when.m */, - F94D2C88074E79C241631BD487FD476F /* when.swift */, + 0C08AEA77E2EE782FBB518969B921C38 /* librealmcore-ios.a */, ); - name = CorePromise; + name = Frameworks; sourceTree = ""; }; - F3E6A937F592ED9458C1CD6AAAC3FCAC /* Support Files */ = { + E6D3EF2EC9DF5E5554330269DA2E965D /* Headers */ = { isa = PBXGroup; children = ( - 69F87AD26042331633CAD1BFABCE6F6B /* Info.plist */, - 860F643B91B7EA18ECBE545597AE6E56 /* Kingfisher.modulemap */, - 12F443243C5DF0C54E1E184129A242FB /* Kingfisher.xcconfig */, - 9FB634DA73B8A8A674F8281A2509F9E6 /* Kingfisher-dummy.m */, - AB475B29887821F928CF484C33FD9BA3 /* Kingfisher-prefix.pch */, - 8A868E0FF0D422C57BE453DDF7272C7A /* Kingfisher-umbrella.h */, + 6E3C7CBB281D7EFA8906D97D0D74E98F /* NSError+RLMSync.h */, + 069859A775F881E0108466D6B55A9F1B /* Realm.h */, + F79570CF737176CFFBF9D891400C15A9 /* RLMArray.h */, + 07E6790A3D1E3164684BAFAF643F949B /* RLMCollection.h */, + 7EDAEB2432ADCB64A6F0DA876845C11E /* RLMConstants.h */, + F267BDEF56530ADE06BEB781B7A96C8C /* RLMMigration.h */, + F046922896204348860BB33590371530 /* RLMObject.h */, + 9468ECB6C02355492984982A77714C41 /* RLMObjectBase.h */, + 7EB8C25BC9A862D2A4433D94192A3441 /* RLMObjectBase_Dynamic.h */, + 28B6EDEEC5E384FE32E1657442E7DB1B /* RLMObjectSchema.h */, + 00DE87D841A65ABEF675A7CC4B75375E /* RLMPlatform.h */, + F100498E3A55FCD698343AE663FBC533 /* RLMProperty.h */, + 282ADBD426BF6ABFAC0BE91ED24B6CC0 /* RLMRealm.h */, + EC02C03E2D70A5F5B8477340245B0BDA /* RLMRealm+Sync.h */, + 5AE42C969A99D38B4F7FBE25B00A962F /* RLMRealm_Dynamic.h */, + F0967F9F28642BF501CA462A45581601 /* RLMRealmConfiguration.h */, + 0257ED3312238D6F28490F9540A4D92F /* RLMRealmConfiguration+Sync.h */, + EC210E282A20580AC777D20AD7521060 /* RLMResults.h */, + 409A0399538CBF6F3721F84A24A03952 /* RLMSchema.h */, + 35F8599E05E36E8DA489400EE58FEF9A /* RLMSyncConfiguration.h */, + B04A3B8874B83F4558B31ADCD4D48784 /* RLMSyncCredentials.h */, + 98BE3F0DB94502FAD3F69D53423B52D2 /* RLMSyncManager.h */, + DD0EDB245A288DFDD27D5D49211DB642 /* RLMSyncPermission.h */, + 2FB23727980C986278B33391A4EDA98D /* RLMSyncSession.h */, + C3A19D76E413374358C330C6364B473F /* RLMSyncSubscription.h */, + 3C76B70A4C9BCC49C83A6F549CFE4356 /* RLMSyncUser.h */, + F90C6667BE5F969C6C6A89B01EF88909 /* RLMSyncUtil.h */, + 6603939CC5A8D3E59297D5C771964301 /* RLMThreadSafeReference.h */, ); - name = "Support Files"; - path = "../Target Support Files/Kingfisher"; + name = Headers; sourceTree = ""; }; - F9F06E3E9E7BBD1BE6450B51C7ABA240 /* RealmSwift */ = { + E95579BF1862FA0237D2426302721FED /* Alamofire */ = { isa = PBXGroup; children = ( - 288AF01C4A222E31D00D561C1AF25AD6 /* Aliases.swift */, - EDE61E0B7CC239EBB466B8E1624C177E /* Error.swift */, - A518D5C15C64E60C4704A532F8940FE2 /* LinkingObjects.swift */, - 6218F75F5E45FC44A38B246DCFB7D99C /* List.swift */, - 22639B95B380B288045FF15E5D225C9F /* Migration.swift */, - 73DAE7EA886BF78971BCEC02BE13B103 /* Object.swift */, - CD61238A95FEB8A0FB8E26ACBE354EF6 /* ObjectiveCSupport.swift */, - D1A9F5FC1DADD9E5EB2F4484B042CDAE /* ObjectSchema.swift */, - 7E6B64BCD382E49B287A6BABF26B1D55 /* Optional.swift */, - B0E18B6042BFBF45253EFD82138A88ED /* Property.swift */, - A614808D1367F1FF9590B5C77762EDF7 /* Realm.swift */, - F0B1D73510F5FDFAE09CB255334BF06B /* RealmCollection.swift */, - 43837B5FC7CB4D5927EB169D3B003A68 /* RealmConfiguration.swift */, - B6F020E55DCE3AB0229CAFF03DB1E274 /* Results.swift */, - 6612053D84E1E9675F19F0E6799524BC /* Schema.swift */, - 11627F9A5E2BA034A9BC20B8085A0379 /* SortDescriptor.swift */, - FC01A2F5DAF016BD105FBA4CF7B76E0F /* SwiftVersion.swift */, - 8C08C07F45270FB9DCC6EE9EAB08A931 /* Sync.swift */, - 3CD6243866210B7AAD2B224F5579E69A /* ThreadSafeReference.swift */, - AF0DBC3CC5F201DBEF8A1A5C39A84743 /* Util.swift */, - C443CE5527C342E869E05BC0469A479C /* Support Files */, + 44D6405B149A6D18AE16727425E41474 /* Alamofire+Promise.swift */, + ); + name = Alamofire; + sourceTree = ""; + }; + FF8C0BA7C9130917BC37348BF63201E4 /* RealmSwift */ = { + isa = PBXGroup; + children = ( + 69E32A2E33DC69D7CAF4DCC47F49ADB0 /* Aliases.swift */, + 8748635C7300F9200D1C3B083A9C5ECE /* Error.swift */, + 0D65ABDA10FB6FAF97F621D9415A1578 /* LinkingObjects.swift */, + 700BDD7CA805B518ACE9EA9171A5EDED /* List.swift */, + A5801F6E0E6189B6372DFC83650072DC /* Migration.swift */, + 6C88151378845D023AF67DFB3479F7B9 /* Object.swift */, + 47975F5348BC70268AFB01E1DE82DADA /* ObjectiveCSupport.swift */, + 66F41B50D8310E025A7BBEE9B370D185 /* ObjectSchema.swift */, + 30BF8581417F8D6FA8F7432B33694097 /* Optional.swift */, + 1A059D53313CF9882AE7A44B58170985 /* Property.swift */, + B1F47AFF559BBA2345ACDF2A2ECC38C1 /* Realm.swift */, + 2FE7DC15D8CBB0C24E5985CCE0A95CCC /* RealmCollection.swift */, + 55BA3B5637937797089F9EAC9C8C870F /* RealmConfiguration.swift */, + 2FE771299449CB0E7533B4DC5F58E724 /* Results.swift */, + BF9BEE78AB64896F7786F842E14C3D75 /* Schema.swift */, + D151AE1567A22BF33B4B22A9CC2F36DD /* SortDescriptor.swift */, + 6D398BF7F0C68524EEBB8EC767B71417 /* SwiftVersion.swift */, + 5286C75A0CB7B7AAB14AA8069F68005A /* Sync.swift */, + 0E6D8EBEE41AAC8803400533591C2230 /* ThreadSafeReference.swift */, + 77B5BC603C2749DE8E87B54B8DC083A4 /* Util.swift */, + 7588718F6AA22F9FB8F90BA43749F76A /* Support Files */, ); name = RealmSwift; path = RealmSwift; @@ -1491,75 +1552,47 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 55F25F71F3584323799CF46B5263DD08 /* Headers */ = { + 03ED6A056A36C6DDCB3F32C8E8A65678 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - DD44235FA9EB2CA3EF0DB04B3969B1D3 /* AnyPromise.h in Headers */, - BBAA845748588AA60575FE6A66F39679 /* fwd.h in Headers */, - 2B77CF63846D801D73A0259A68FA3D8C /* PromiseKit-umbrella.h in Headers */, - 6F853EC144957BB1E8D3A8FD6B984B19 /* PromiseKit.h in Headers */, + 3F94C09064A375E11B531C3A143C8DBD /* SwiftChart-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 8133B590E682685D5CA857BB19CC82BF /* Headers */ = { + 4EA8FFA240B5A87B4EF246C234C4E845 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 3453BD0F4FADD988A9CB73717F8BC1AD /* RealmSwift-umbrella.h in Headers */, + 72C9DAA12ED693D8934DC74C6E494A6A /* SwiftyJSON-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - A39AB067DC83F9A831D3BE58C663B985 /* Headers */ = { + 6EE7903CBFF70DCC7CD234B1E348BC45 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 64C27793815E3C640C896DD3E243477C /* NSError+RLMSync.h in Headers */, - 7D6CE45F576E6DEC64C31E70DE525A78 /* Realm.h in Headers */, - A8139A5331A3C3A9654B5C7725A8D3F3 /* RLMAccessor.h in Headers */, - 1572FFC0555ABDFED6A008907C9FE236 /* RLMArray.h in Headers */, - 6B6588FA133D12CE3E0E0967E7E8EE84 /* RLMArray_Private.h in Headers */, - 3F95B3CC6D7295F23A485CF492D73350 /* RLMCollection.h in Headers */, - 323027C66BD13D2E54C853FE2E404C6A /* RLMCollection_Private.h in Headers */, - 84444DBA69E36E36318A20E15F709B98 /* RLMConstants.h in Headers */, - B7AFA8147312298287DE0E2077DFEFD6 /* RLMListBase.h in Headers */, - B514A12508F56899EF7EEF51A7767371 /* RLMMigration.h in Headers */, - B024DBFB44C4BDEFD494D631F80D6A17 /* RLMMigration_Private.h in Headers */, - 2D28A36D3A27FD6C2376F095E31CF22B /* RLMObject.h in Headers */, - BC40B73DD84A9F2C324D5F7B9DF5C1F1 /* RLMObject_Private.h in Headers */, - B307BEFB2E6C0E4C810E4B4E7C0FF5B5 /* RLMObjectBase.h in Headers */, - 958A143DD4D505650FC338D882270688 /* RLMObjectBase_Dynamic.h in Headers */, - 59B1A201CFB8137EB98CBDA2FA011E4A /* RLMObjectBase_Private.h in Headers */, - 5C8F203DAFB89F593896D235E30DFC97 /* RLMObjectSchema.h in Headers */, - 5AB2933B1FE2C19BFEDB43DA719DCBCC /* RLMObjectSchema_Private.h in Headers */, - CA52C5D9908094A294B5A8C09DF2AF3C /* RLMObjectStore.h in Headers */, - E1AC0F5965AFCB0C3B8CD3FA28FDB628 /* RLMOptionalBase.h in Headers */, - 753FF986647F690AA8ED26A073478AA4 /* RLMPlatform.h in Headers */, - BC188BDFB1400FD2152E0AD2B09C1D5C /* RLMProperty.h in Headers */, - 39BC88D99C1170210412AC0DE5F3F84D /* RLMProperty_Private.h in Headers */, - C8D81B932916881F5002BEA37918E679 /* RLMRealm+Sync.h in Headers */, - 03E5875E81EF9BDCD7576261977AB027 /* RLMRealm.h in Headers */, - B1C88096896D932FA8D6942E88E083D1 /* RLMRealm_Dynamic.h in Headers */, - B2990A72DE688E00E6381A5BBED4A38A /* RLMRealm_Private.h in Headers */, - FBDD8B5F4FC7DD3010DC7A6826F05BC2 /* RLMRealmConfiguration+Sync.h in Headers */, - 5632EE631F6B39FD7C82FD296A2959FE /* RLMRealmConfiguration.h in Headers */, - E2B5C03E06CC5C6745B1FC519B7F242C /* RLMRealmConfiguration_Private.h in Headers */, - F967B1A54490A7E656A265D5F87E48A8 /* RLMResults.h in Headers */, - 3DB21805642030AC749620B6CA5BE711 /* RLMResults_Private.h in Headers */, - 3D7013F88DEDF9F01BDE2D6A6BD217D3 /* RLMSchema.h in Headers */, - 98F8F67CE0F20EC63FC1733A3460948F /* RLMSchema_Private.h in Headers */, - CAED0539162441D5B9BF627C24BD6D66 /* RLMSyncConfiguration.h in Headers */, - A2E197514064C1B9E8E6117681315D7F /* RLMSyncConfiguration_Private.h in Headers */, - 155E67F6AAE40F1B805433BAC8CBBECB /* RLMSyncCredentials.h in Headers */, - A8D42D5D1E143DB2FB2A371BFD9F042A /* RLMSyncManager.h in Headers */, - B9DF696D08B777835B4D7E094833B255 /* RLMSyncManager_Private.h in Headers */, - 8C55D41FFF9E843CA8E071F90E641829 /* RLMSyncPermission.h in Headers */, - 87D21CD9C7A5B0CBA6F263F1BA617619 /* RLMSyncSession.h in Headers */, - 7767194DDC60A11E9F2D077CD1E03B8F /* RLMSyncSubscription.h in Headers */, - A7280438E7E3B113B4C33DC5DBD6D455 /* RLMSyncUser.h in Headers */, - B45EC79BD215E597EDFAA098D4EDCD15 /* RLMSyncUtil.h in Headers */, - E58F78BE2F702EBE60B58C0DD3485C41 /* RLMSyncUtil_Private.h in Headers */, - AEA34AE72488B85D546A21E48CDEC745 /* RLMThreadSafeReference.h in Headers */, + 61537BE4AA28420847866720B7543C31 /* SVIndefiniteAnimatedView.h in Headers */, + A033548BF1BF520A80F037727644A2B2 /* SVProgressAnimatedView.h in Headers */, + 257A407DA407683F17726A80A73497C0 /* SVProgressHUD-umbrella.h in Headers */, + 115548A9179EADD8976A6DB288DDD599 /* SVProgressHUD.h in Headers */, + AD3B2955C4969698DE231D0C7CEEB3E5 /* SVRadialGradientLayer.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 83F99549169BA5419CD4D9D475329D8A /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 3135E2F1DA09948937FDA6043B80BC47 /* Pods-pocloud-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 9D5240BD9F5C743FCA50D765949304F5 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + FE50AB196BA10D714A33550F78B4F051 /* RealmSwift-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1571,14 +1604,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - B6B584FB35C00C1B39985721CD7BA271 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - 7E6CC1F6CB075F1C1264DD736044F204 /* Pods-pocloud-umbrella.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; BADBBCEED9A9F8B15B7F98467EA6FB0E /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; @@ -1588,66 +1613,73 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - D8AA84F9FDE1BDE8802B09BA6C5D3C0F /* Headers */ = { + BFEE598F57EFD3509CF92670271DB502 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 1B1078CFE90683458030F37AF69C8EE4 /* SVIndefiniteAnimatedView.h in Headers */, - 4E087B1E1F92F260FF76EC76B1A875E8 /* SVProgressAnimatedView.h in Headers */, - 687EF483180FB6CAE24267821208369B /* SVProgressHUD-umbrella.h in Headers */, - 6B59FB52A7323B107933E63C58823BC9 /* SVProgressHUD.h in Headers */, - 1237B38EB9B34E790AE88CA7DBE68812 /* SVRadialGradientLayer.h in Headers */, + 47246E9E63042B13AE5E8B0C9F288E06 /* AnyPromise.h in Headers */, + ED5B771ABE1467DB633DE18552D4E2BC /* fwd.h in Headers */, + 124BA52D04120B92AADBF8657F1922F5 /* PromiseKit-umbrella.h in Headers */, + 618BCF0D25E08BAB3E2504419AA0ACE9 /* PromiseKit.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - F8CF7C4A269E6EA43DA31F0804C4CFB8 /* Headers */ = { + CCE5B3EA62F3A7CEF46668802F1801E5 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 0AE1942647F494DB6CF220B8E19108AB /* SwiftyJSON-umbrella.h in Headers */, + 24CE9CF4F51CB1A0F0325C10300DCBAC /* NSError+RLMSync.h in Headers */, + C1A458C77808B9A1BF876B049DE053A8 /* Realm.h in Headers */, + 48DFBB9AAA1E7E3126148A3391DAB75A /* RLMAccessor.h in Headers */, + 4F227745550A1F79C0E359B548E2D848 /* RLMArray.h in Headers */, + A5B7F693A44994AD53E1E80EEF3815A7 /* RLMArray_Private.h in Headers */, + 22AFED4516443FD8EA2AC089E2E19890 /* RLMCollection.h in Headers */, + 8622588327D549457FA8FF5516AAE49E /* RLMCollection_Private.h in Headers */, + ED1F3BA98BA9C7C2A7199E0C3189A4C0 /* RLMConstants.h in Headers */, + 1AC94E71D7E48ADE9E5DF96BF366E5BD /* RLMListBase.h in Headers */, + 612B9E797E68B48C8019B74D45656068 /* RLMMigration.h in Headers */, + 69AC84EED2A1FF1CB23F86325A9B2B34 /* RLMMigration_Private.h in Headers */, + F999DC029A7D3603416A2C577E4B567B /* RLMObject.h in Headers */, + A66765F693C2ECAB6E71AE485030F378 /* RLMObject_Private.h in Headers */, + 7CD948F6962983E8A77E400E51C75F1B /* RLMObjectBase.h in Headers */, + 658D33C2290D805C5CDEF09384107846 /* RLMObjectBase_Dynamic.h in Headers */, + 6909720B006DE88E6366896F3F95F359 /* RLMObjectBase_Private.h in Headers */, + 82AE21449BEE8FFB4E0319E8013708A5 /* RLMObjectSchema.h in Headers */, + 7F55CBA3C14E94C5E8FA7248A5E4F79B /* RLMObjectSchema_Private.h in Headers */, + EC0D6B256C6245F9A482A096037D26B3 /* RLMObjectStore.h in Headers */, + 121E279861D9396541DF2359818F3209 /* RLMOptionalBase.h in Headers */, + 1F1392E0248FADC79D3CBA4B42898651 /* RLMPlatform.h in Headers */, + 4458CC012D0B2D38A6F87258D7FF0A2D /* RLMProperty.h in Headers */, + 9B6AE63C137550A347BBC14A968495FA /* RLMProperty_Private.h in Headers */, + 676779EA2159B3B8BC83727DC02C803C /* RLMRealm+Sync.h in Headers */, + 8862FE3C3123674736A819E7E54AF721 /* RLMRealm.h in Headers */, + 371E25D5B3D2F2423DE9CE5A0E6C6035 /* RLMRealm_Dynamic.h in Headers */, + 858F5D7764DAC2DAABAB1AA80D7CD621 /* RLMRealm_Private.h in Headers */, + 239ECD7661AB6C0082FC0AB33D60333A /* RLMRealmConfiguration+Sync.h in Headers */, + 719449771B7650E9ABB1A0F1D07EFBDE /* RLMRealmConfiguration.h in Headers */, + 948EF1D921105F4E516632B5AB5D6F15 /* RLMRealmConfiguration_Private.h in Headers */, + D3EAC4F400AC8F22B8607B3F1B484120 /* RLMResults.h in Headers */, + E0CB2E01899680ED05C448334DEAC067 /* RLMResults_Private.h in Headers */, + DB59E8A7DDB413DB2442A8C04619BDD7 /* RLMSchema.h in Headers */, + 8758F4D03FAA6A54879EB67C126CF97D /* RLMSchema_Private.h in Headers */, + 562EF71B78BDA292E20B1481E6CB9CFC /* RLMSyncConfiguration.h in Headers */, + 9516410445FAEEFB657E7806EE8F98FC /* RLMSyncConfiguration_Private.h in Headers */, + 2683C20AEE1CAE622D7648F736B4E7D9 /* RLMSyncCredentials.h in Headers */, + 4801AF02D4878B319E8721932D223AA2 /* RLMSyncManager.h in Headers */, + 916CB0233774949A3B9BF3912F73A841 /* RLMSyncManager_Private.h in Headers */, + 5D48EC81D47CD02C6690EA0C661EC297 /* RLMSyncPermission.h in Headers */, + 816FDD7BDA63DE2611409EA6F97BE7EC /* RLMSyncSession.h in Headers */, + B87740A37116270929443DF724E29F14 /* RLMSyncSubscription.h in Headers */, + C71386BFC7CEC0F74230D4BDB1D82607 /* RLMSyncUser.h in Headers */, + 393C9366E4F286889AA104F0CA070E36 /* RLMSyncUtil.h in Headers */, + BA289835870CC02A4D2FF8F3833BC5B4 /* RLMSyncUtil_Private.h in Headers */, + 3A6FB49BFE14821631C2E207AD6CF5F7 /* RLMThreadSafeReference.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ - 44F99A04524EA222FB2F6336532A0235 /* Realm */ = { - isa = PBXNativeTarget; - buildConfigurationList = 5B8CC1D40D219A84F537841E37DA19C8 /* Build configuration list for PBXNativeTarget "Realm" */; - buildPhases = ( - DB81CE24AEB9A711EF9760F7B3115DFB /* Sources */, - D3B837F7056871039287DCD93B1C92D8 /* Frameworks */, - A39AB067DC83F9A831D3BE58C663B985 /* Headers */, - 5C15D29A566388D2DF710CD355821EC0 /* Copy . Private Headers */, - CB27A7037BBC0A6F57B20D866F70A953 /* Copy . Public Headers */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = Realm; - productName = Realm; - productReference = A5215A64C38F37ED464D85EE72755F9B /* Realm.framework */; - productType = "com.apple.product-type.framework"; - }; - 465C4815235623CEB3BF8AE8C9EA3D3B /* SVProgressHUD */ = { - isa = PBXNativeTarget; - buildConfigurationList = FA90FFF6D1DCAE5D524828797D0FAA42 /* Build configuration list for PBXNativeTarget "SVProgressHUD" */; - buildPhases = ( - EE232C7A4D941E40D31BC140F47842DA /* Sources */, - BBD2FB87458355D4D6E25D32B5D4E3D2 /* Frameworks */, - D8AA84F9FDE1BDE8802B09BA6C5D3C0F /* Headers */, - DA6B10EFB0E957E55549BFAE10FE45AC /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = SVProgressHUD; - productName = SVProgressHUD; - productReference = 2BD41E7551643F0E7DE5E76044BF05AA /* SVProgressHUD.framework */; - productType = "com.apple.product-type.framework"; - }; 4F87037150ABE2C9238B54E8F6E33F36 /* Kingfisher */ = { isa = PBXNativeTarget; buildConfigurationList = 6E151CD202797E4A2B6521EE8BECB6DE /* Build configuration list for PBXNativeTarget "Kingfisher" */; @@ -1662,7 +1694,43 @@ ); name = Kingfisher; productName = Kingfisher; - productReference = 3C13D927DA5CDBC8B6DD209F5AFA5A29 /* Kingfisher.framework */; + productReference = A3610FFDE4173AEAFBC020E03D6F7A7B /* Kingfisher.framework */; + productType = "com.apple.product-type.framework"; + }; + 6424259DE82B46DD5E367ADD6EB9E4FD /* SVProgressHUD */ = { + isa = PBXNativeTarget; + buildConfigurationList = 92C493FC357EA11D3CA2FB4F5676AB26 /* Build configuration list for PBXNativeTarget "SVProgressHUD" */; + buildPhases = ( + 8995817FD7F83E88498CED3F83A64941 /* Sources */, + BB8E3C615D9F55E89E9C0D437CD420F9 /* Frameworks */, + 6EE7903CBFF70DCC7CD234B1E348BC45 /* Headers */, + 9CF8F40DC4A69C7030AB43B71A530BBB /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = SVProgressHUD; + productName = SVProgressHUD; + productReference = E277506BC6D46DC785F6FEFDDBC904B6 /* SVProgressHUD.framework */; + productType = "com.apple.product-type.framework"; + }; + 705ADD82C609E92D57EA5F59ACCAF1E4 /* PromiseKit */ = { + isa = PBXNativeTarget; + buildConfigurationList = ACA736DC034ED0CDDC86842D7065A95B /* Build configuration list for PBXNativeTarget "PromiseKit" */; + buildPhases = ( + 435FD63FC4F978E561D9020826B8D1E9 /* Sources */, + DC059994B474854555E8A5400BCFD49E /* Frameworks */, + BFEE598F57EFD3509CF92670271DB502 /* Headers */, + ); + buildRules = ( + ); + dependencies = ( + 67C2AD38BCDDAC630AB87C8474B22987 /* PBXTargetDependency */, + ); + name = PromiseKit; + productName = PromiseKit; + productReference = 1469A50845FA94302A1AC097C19A435F /* PromiseKit.framework */; productType = "com.apple.product-type.framework"; }; 88E9EC28B8B46C3631E6B242B50F4442 /* Alamofire */ = { @@ -1679,7 +1747,7 @@ ); name = Alamofire; productName = Alamofire; - productReference = DFA95B238E6EBDBD730BFB28C54C9ED3 /* Alamofire.framework */; + productReference = 8D43205AB4A71F48FCECD11914F4CAF4 /* Alamofire.framework */; productType = "com.apple.product-type.framework"; }; 8A267660E1AD4832DE75665F2F87AEA3 /* ChameleonFramework */ = { @@ -1696,77 +1764,70 @@ ); name = ChameleonFramework; productName = ChameleonFramework; - productReference = 8DB3712B2499EDB32674F6927B6349A1 /* ChameleonFramework.framework */; + productReference = 3ECAC0844395303E54DBEAB48691131A /* ChameleonFramework.framework */; productType = "com.apple.product-type.framework"; }; - A0AC682B8F4EC68EFBAE1FA33B63BD63 /* PromiseKit */ = { + 8D2BA504143EF86C4E2C43AC593BB574 /* Realm */ = { isa = PBXNativeTarget; - buildConfigurationList = 08457B7DF34EF6E4216EBADFDC718138 /* Build configuration list for PBXNativeTarget "PromiseKit" */; + buildConfigurationList = 2768931CBDC63A4389B8CDAE7D9677F3 /* Build configuration list for PBXNativeTarget "Realm" */; buildPhases = ( - 7C12C07E9D90FE2C58D5A9095ACAAC38 /* Sources */, - F4AFCB1B7B0D204547A1A99273E75395 /* Frameworks */, - 55F25F71F3584323799CF46B5263DD08 /* Headers */, + F84EFC384B4AFB82EFCD32CB20B43FE0 /* Sources */, + 51467CD8C7A1C39D37D993826E6C60AF /* Frameworks */, + CCE5B3EA62F3A7CEF46668802F1801E5 /* Headers */, + A3310AEA456C0C55D5A2E417D08240BD /* Copy . Private Headers */, + CFD4F2AE3E6F82F99C06391D8F05F6C4 /* Copy . Public Headers */, ); buildRules = ( ); dependencies = ( - A081A9D7E1D74A9754ADBD3D5372CE14 /* PBXTargetDependency */, ); - name = PromiseKit; - productName = PromiseKit; - productReference = 67BD03AEED4FF2E588F8D3E4B50A31F5 /* PromiseKit.framework */; + name = Realm; + productName = Realm; + productReference = F0E37B37755144723909293D2AFDAE35 /* Realm.framework */; productType = "com.apple.product-type.framework"; }; - AC1D1720F929B4814CB4A6B7BD004D12 /* Pods-pocloud */ = { + 90288313532B7A756151C44436F9862C /* RealmSwift */ = { isa = PBXNativeTarget; - buildConfigurationList = 302E992413F72644D7819B7F30A406E7 /* Build configuration list for PBXNativeTarget "Pods-pocloud" */; + buildConfigurationList = EE4A72DA29C4257D3F871F5D8FE923FF /* Build configuration list for PBXNativeTarget "RealmSwift" */; buildPhases = ( - 22A59B6AAB48717C53695AF18A092AFB /* Sources */, - 335BACF1EF8669C3AC26B76BDF23BCAA /* Frameworks */, - B6B584FB35C00C1B39985721CD7BA271 /* Headers */, + FE4204D246A81F97522E4DD4C13D2FC6 /* Sources */, + DFE2A87A7021A589E4A76B7E2DF97523 /* Frameworks */, + 9D5240BD9F5C743FCA50D765949304F5 /* Headers */, ); buildRules = ( ); dependencies = ( - E951A21425CFC9BBC462DF7626719E0F /* PBXTargetDependency */, - 04A4448605B029ECE6F71FAFFB6A0DF2 /* PBXTargetDependency */, - 685525E1D7C6031DDEF3DEF44FC28E0C /* PBXTargetDependency */, - 7C8C80957E67D7EDE263997040BDCE53 /* PBXTargetDependency */, - 7B689A8C8005863B31FDE53C1FB44E5E /* PBXTargetDependency */, - AF7652274C3CA917FE98132D97E70239 /* PBXTargetDependency */, - 21CD81876DD37BB6AAD372ADDDF63C3C /* PBXTargetDependency */, - 0EE542301A91C8D3D8CE1994E2DC0541 /* PBXTargetDependency */, - ); - name = "Pods-pocloud"; - productName = "Pods-pocloud"; - productReference = 724940ED6921C748C982FF892E00426F /* Pods_pocloud.framework */; - productType = "com.apple.product-type.framework"; - }; - B32672B31407B2A7286F0FB380D0F5AC /* RealmSwift */ = { - isa = PBXNativeTarget; - buildConfigurationList = 3972D5FC94FDCC653DCC6377E6060C15 /* Build configuration list for PBXNativeTarget "RealmSwift" */; - buildPhases = ( - CDCEECB7834B024999EAA62318DD0FEF /* Sources */, - C184CFC311E0697CFB8B3936F9DB59B0 /* Frameworks */, - 8133B590E682685D5CA857BB19CC82BF /* Headers */, - ); - buildRules = ( - ); - dependencies = ( - 496A58E8E70CEB3819DABD0DF5D7DCDF /* PBXTargetDependency */, + 0EA8A50763F3A373B13A2DF394F81018 /* PBXTargetDependency */, ); name = RealmSwift; productName = RealmSwift; - productReference = D370D0675522C923F96EA3C85501FD1B /* RealmSwift.framework */; + productReference = E0196365D91766D5A182C86761244B62 /* RealmSwift.framework */; productType = "com.apple.product-type.framework"; }; - B6A4A63AEC382A876ED19E85A65C6750 /* SwiftyJSON */ = { + B44B923C0649012A6F16C2DD96DF0897 /* SwiftChart */ = { isa = PBXNativeTarget; - buildConfigurationList = 5C8EE78AD022346D47D6DF6210E72D8D /* Build configuration list for PBXNativeTarget "SwiftyJSON" */; + buildConfigurationList = 21F5B78FC0465EFA6841CA78A971C13B /* Build configuration list for PBXNativeTarget "SwiftChart" */; buildPhases = ( - BE82EDFE17F09296AC4C9CD1D7A6A784 /* Sources */, - 96754593489027108F95AC2E5E9B32BE /* Frameworks */, - F8CF7C4A269E6EA43DA31F0804C4CFB8 /* Headers */, + 6ED1513C3006829475A767EBCB93930F /* Sources */, + 7AFE2441CFB9C375E14C72929C7D9C44 /* Frameworks */, + 03ED6A056A36C6DDCB3F32C8E8A65678 /* Headers */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = SwiftChart; + productName = SwiftChart; + productReference = 332F7C93DBD31C940E50FA2AD7BABC6E /* SwiftChart.framework */; + productType = "com.apple.product-type.framework"; + }; + E94A09D439739DAB8BA2BEBE5D29EB7C /* SwiftyJSON */ = { + isa = PBXNativeTarget; + buildConfigurationList = 2E52ABC70175A2914C3638A80838B3D4 /* Build configuration list for PBXNativeTarget "SwiftyJSON" */; + buildPhases = ( + A467F0B28517B9F14CF74B350068F9C7 /* Sources */, + 4B56BEEA92DD7AA80639E1931D8EA1BC /* Frameworks */, + 4EA8FFA240B5A87B4EF246C234C4E845 /* Headers */, ); buildRules = ( ); @@ -1774,7 +1835,33 @@ ); name = SwiftyJSON; productName = SwiftyJSON; - productReference = 280E485B9DB3AB2D4DECAD6B89B0A3B9 /* SwiftyJSON.framework */; + productReference = 615EBDA4FE1C9FF6970F3747D5BB76BB /* SwiftyJSON.framework */; + productType = "com.apple.product-type.framework"; + }; + F14B36188CB1C467570C5965D0722D99 /* Pods-pocloud */ = { + isa = PBXNativeTarget; + buildConfigurationList = 87C2AF295D0BA5C0884E8CB7E7CBB3B7 /* Build configuration list for PBXNativeTarget "Pods-pocloud" */; + buildPhases = ( + F886CF1DF2CF332EFFC6FCCD023AD0B3 /* Sources */, + 05F13498BB74440454E58FD7221CD7AC /* Frameworks */, + 83F99549169BA5419CD4D9D475329D8A /* Headers */, + ); + buildRules = ( + ); + dependencies = ( + 9F821536A803929FE4B17091490871E1 /* PBXTargetDependency */, + 1A307BB9B6B227496203A58FAABA9311 /* PBXTargetDependency */, + 656B1C4A033B0A60BB0B9C4249E2A792 /* PBXTargetDependency */, + FFE45E096C513057C906D1BE090EE9F1 /* PBXTargetDependency */, + AEB5735A147509AAD33E371B3C1036FF /* PBXTargetDependency */, + A8ECFC1B52888DD72B214C27DB162E34 /* PBXTargetDependency */, + B683BB59053BE414AE92E915DC4AAE44 /* PBXTargetDependency */, + 5298545BFAA9E20C1AB83DCD1E53F226 /* PBXTargetDependency */, + AF255E76AE9462651AA7C1AA620FDE59 /* PBXTargetDependency */, + ); + name = "Pods-pocloud"; + productName = "Pods-pocloud"; + productReference = 1B051A1AD2040EAF87DE33B9E5A0A899 /* Pods_pocloud.framework */; productType = "com.apple.product-type.framework"; }; /* End PBXNativeTarget section */ @@ -1794,29 +1881,30 @@ en, ); mainGroup = 7DB346D0F39D3F0E887471402A8071AB; - productRefGroup = CE8A408AACCF50158DFC2FAE4019AB02 /* Products */; + productRefGroup = 353215EA0F459426860E8E5A51083A52 /* Products */; projectDirPath = ""; projectRoot = ""; targets = ( 88E9EC28B8B46C3631E6B242B50F4442 /* Alamofire */, 8A267660E1AD4832DE75665F2F87AEA3 /* ChameleonFramework */, 4F87037150ABE2C9238B54E8F6E33F36 /* Kingfisher */, - AC1D1720F929B4814CB4A6B7BD004D12 /* Pods-pocloud */, - A0AC682B8F4EC68EFBAE1FA33B63BD63 /* PromiseKit */, - 44F99A04524EA222FB2F6336532A0235 /* Realm */, - B32672B31407B2A7286F0FB380D0F5AC /* RealmSwift */, - 465C4815235623CEB3BF8AE8C9EA3D3B /* SVProgressHUD */, - B6A4A63AEC382A876ED19E85A65C6750 /* SwiftyJSON */, + F14B36188CB1C467570C5965D0722D99 /* Pods-pocloud */, + 705ADD82C609E92D57EA5F59ACCAF1E4 /* PromiseKit */, + 8D2BA504143EF86C4E2C43AC593BB574 /* Realm */, + 90288313532B7A756151C44436F9862C /* RealmSwift */, + 6424259DE82B46DD5E367ADD6EB9E4FD /* SVProgressHUD */, + B44B923C0649012A6F16C2DD96DF0897 /* SwiftChart */, + E94A09D439739DAB8BA2BEBE5D29EB7C /* SwiftyJSON */, ); }; /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ - DA6B10EFB0E957E55549BFAE10FE45AC /* Resources */ = { + 9CF8F40DC4A69C7030AB43B71A530BBB /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - DFE86BAFF4C4F2E8F4F46D2C3F4B22A3 /* SVProgressHUD.bundle in Resources */, + 6BE806D9519FECAF5A7EA212618D0595 /* SVProgressHUD.bundle in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1854,14 +1942,6 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 22A59B6AAB48717C53695AF18A092AFB /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - F9FAA9A02B1FFC9298247CA414AF5AA3 /* Pods-pocloud-dummy.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; 32B9974868188C4803318E36329C87FE /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -1887,35 +1967,67 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 7C12C07E9D90FE2C58D5A9095ACAAC38 /* Sources */ = { + 435FD63FC4F978E561D9020826B8D1E9 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 751A69F492AF8465B72B67AAE27B5553 /* after.m in Sources */, - D0A815AC15AE024767F88A4D4AAAEC89 /* after.swift in Sources */, - 5521C7CFAB261419BDC704028769EDD5 /* Alamofire+Promise.swift in Sources */, - B367E02AD1C2C5D318377E3573D8FFBB /* AnyPromise.m in Sources */, - EB67FD502CF55DAFA8C2A88C289CDAD0 /* AnyPromise.swift in Sources */, - C40C59A2149C213545ECAB279CA3FC9C /* Box.swift in Sources */, - 78EA68581EFBA892490E1238F4D7E3B9 /* Catchable.swift in Sources */, - E34C81B31F191B13F3396A26CCB6B154 /* Configuration.swift in Sources */, - 2A6FEA300D17E6C1EAFEDB1A24CD0F97 /* CustomStringConvertible.swift in Sources */, - 6B318808FC43C5868C5258DBB33E99DD /* Deprecations.swift in Sources */, - 5D36A8D819BFA7737FE88EC9FE98B7B0 /* dispatch_promise.m in Sources */, - 79EE9FA840787D8BDF2E63772D54AFFA /* Error.swift in Sources */, - AF266B08C2D76C1C99E897A946ABAC4F /* firstly.swift in Sources */, - 44ED7069DFBED9C2FD7B2D308AAD1DC3 /* Guarantee.swift in Sources */, - 2F1544E01944DBB51C4CD4D3213DAD7F /* hang.m in Sources */, - EBFE6C8D4586F6F8367E4CA13823FEEA /* hang.swift in Sources */, - 936C1A6FA751E2F72A554EB0D0DCC8F6 /* join.m in Sources */, - AB8A3075F8FF2907669EC536D0FF4CA1 /* Promise.swift in Sources */, - 493F21AB7CB21DFF935311126129FE54 /* PromiseKit-dummy.m in Sources */, - 91ACB711A476D0EF345FEBBD68AF0B85 /* race.m in Sources */, - 545B07FF4312DD14132EAC798C248F03 /* race.swift in Sources */, - 3A74AEC1499DE16C4675686386C55D57 /* Resolver.swift in Sources */, - E3505B8ACDF3A0D03808F88D3D7CF1DA /* Thenable.swift in Sources */, - 5C0DD32E010576A2A38A32768D44538A /* when.m in Sources */, - 5B0E9244FBBAE11C721E0682B6DF673A /* when.swift in Sources */, + 2E04583D8FE05816DA7D896E8F693B2D /* after.m in Sources */, + FD6E1738FD08A125BF04E84F6D73C5B3 /* after.swift in Sources */, + B2E20340303D3459A038A357712C2252 /* Alamofire+Promise.swift in Sources */, + 3A98901F84E6E8704CBF9B261745D44E /* AnyPromise.m in Sources */, + 8C8DD277300C5B6D10445FC878B298A8 /* AnyPromise.swift in Sources */, + 9F21BB1768120A1E3E6353BB2F1F5511 /* Box.swift in Sources */, + FAFD98C06494BDD6A96446C0F1568CF6 /* Catchable.swift in Sources */, + FFF5B286634531ACFB91A61896800D6F /* Configuration.swift in Sources */, + 5B5A85F095995A7C27C34E2683DBB9B1 /* CustomStringConvertible.swift in Sources */, + 73E289539F66104A33B0613AD5CEB376 /* Deprecations.swift in Sources */, + 38A70F983905FB03B845DAE061BF7E11 /* dispatch_promise.m in Sources */, + 1085A2D7CD74CE5E80736375B4D0287B /* Error.swift in Sources */, + F6C4BF4DA9BF6FA2FCE7B7AC717E0048 /* firstly.swift in Sources */, + C47F90DCF582AF5EDD2D9EC6CD1F0CCF /* Guarantee.swift in Sources */, + 60199D27D0C56AF9A7ACA5FB99A4D6DD /* hang.m in Sources */, + A65B0E310FF15DCD8026A9E74FEB070E /* hang.swift in Sources */, + 46249F1FB82D3FD5A6239034F35D7C89 /* join.m in Sources */, + A2A3744310C755E385C362997983B47F /* Promise.swift in Sources */, + D4563CCCE580FF4DFC2FF2E5B47C060A /* PromiseKit-dummy.m in Sources */, + 501097B30CA7A20A5A03355BF6FA2D94 /* race.m in Sources */, + 041CF45A4C3FE1B29C243C49C94BDE2C /* race.swift in Sources */, + 3B319F00FBFC3D4F4C401CFF4B39E71C /* Resolver.swift in Sources */, + 0F648CDE078F10A037E99786595A05DB /* Thenable.swift in Sources */, + EB720B7009DDD4FBC3AC7A7A147D7B6B /* when.m in Sources */, + 2D8A293FDD520AFEA4E8A6C6DDBA3D5D /* when.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 6ED1513C3006829475A767EBCB93930F /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + B08C02846E513B153F48F04E4EAED7D2 /* Chart.swift in Sources */, + A7DD68FC70D7628E75BBD80523030912 /* ChartColors.swift in Sources */, + DCDF6781748B085514E56C45BAF42B96 /* ChartSeries.swift in Sources */, + 9D6F1F8DEC251E574897B447A0E9D885 /* SwiftChart-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 8995817FD7F83E88498CED3F83A64941 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 36B457655F639EC45F7EE162B7E68F92 /* SVIndefiniteAnimatedView.m in Sources */, + 7158E7ABCF4CEA383D130A471D51E46E /* SVProgressAnimatedView.m in Sources */, + C8C3D42A72030965F794DD7252D57F5E /* SVProgressHUD-dummy.m in Sources */, + B00E04EB0EAF533314EDB4A79A3F7397 /* SVProgressHUD.m in Sources */, + B5B13DE43E5751021211AD1751E0A392 /* SVRadialGradientLayer.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + A467F0B28517B9F14CF74B350068F9C7 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 16F755DA8EC58BFCD340C243027900B9 /* SwiftyJSON-dummy.m in Sources */, + F6B995D1CC14FD6D14B9620B730E9686 /* SwiftyJSON.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1939,209 +2051,268 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - BE82EDFE17F09296AC4C9CD1D7A6A784 /* Sources */ = { + F84EFC384B4AFB82EFCD32CB20B43FE0 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 3B90A3763E1941468EB5C35E141D8CC5 /* SwiftyJSON-dummy.m in Sources */, - CCDA7AE5B827E9A3278F69F1E063738B /* SwiftyJSON.swift in Sources */, + A2FAFB6EDBD912BE0E8E3D7414E48370 /* binding_callback_thread_observer.cpp in Sources */, + 454CA2F531ABEB3A1E94D30B9DABE1BC /* collection_change_builder.cpp in Sources */, + 76C878C4EE95E2C83C43C628A8FC2672 /* collection_notifications.cpp in Sources */, + 55141DFB9D7F9B7E6EF5B91C79B425B3 /* collection_notifier.cpp in Sources */, + 7C8EC7B7E5C54809124E15D13EC055D5 /* external_commit_helper.cpp in Sources */, + FF5F08CF8215A6EF5369AB27A5D6AD38 /* index_set.cpp in Sources */, + CBADA5256C269CB265F25667D99DC2B2 /* keychain_helper.cpp in Sources */, + DEE5C2F6C6E713C5E1315387C5D74F39 /* list.cpp in Sources */, + 9A387D80BB8F2A8601A73B890E239F9F /* list_notifier.cpp in Sources */, + 81A968DEFB9F2A34421E020B8A9221D3 /* network_reachability_observer.cpp in Sources */, + 3B3846662C014C4FC78231325AE4B45D /* NSError+RLMSync.m in Sources */, + DB6C8A218C399426A067CE84931AFACB /* object.cpp in Sources */, + D25EC14187D71C2099A93E25DCFFB852 /* object_notifier.cpp in Sources */, + 81FA7011A524C854A6B55DC776F786A4 /* object_schema.cpp in Sources */, + 348A66E5C5CCE97570EF38396D0D7EBF /* object_store.cpp in Sources */, + 1510F6BF42615FE25B724174AF2D4A19 /* partial_sync.cpp in Sources */, + 5AB45F26E6C1E2BAB6528515D000500B /* placeholder.cpp in Sources */, + 823A65F6C62C520D99706D83A0CEB248 /* primitive_list_notifier.cpp in Sources */, + 8D5781552AF02C5DC9946A411CB59F65 /* Realm-dummy.m in Sources */, + 80ED413178BE62F638F877E3AA43E6BA /* realm_coordinator.cpp in Sources */, + EBCC3030A0CCA9B745E418A650A38585 /* results.cpp in Sources */, + BFE3E517C038937C0D3C94D91517769A /* results_notifier.cpp in Sources */, + 430CD5219E08E94729DF051F09EAA047 /* RLMAccessor.mm in Sources */, + 2D2E7947CED10B3BBF948F7DF1B58F35 /* RLMAnalytics.mm in Sources */, + 795A71FC1D919ED35619866B8DB24E70 /* RLMArray.mm in Sources */, + 394D09CA655A057439243B3A0569A704 /* RLMClassInfo.mm in Sources */, + 015A8E5A91228650107FEC4C37EE2573 /* RLMCollection.mm in Sources */, + A4B525D5728A3E8D3AE451A9EB797B3C /* RLMConstants.m in Sources */, + E88284867AF7C5E4BA564EC651F4E6CF /* RLMJSONModels.m in Sources */, + 1901D0C501CCB3E0BA2B25897C70A341 /* RLMListBase.mm in Sources */, + 6A1AE122192D277FBD795E1E636D0A57 /* RLMManagedArray.mm in Sources */, + 0DC9F432AF3A12A54FCBC7529B01C818 /* RLMMigration.mm in Sources */, + 75AFA58230BC76DC1A8A42280576D1FF /* RLMNetworkClient.mm in Sources */, + 8FB97D56F11FC1E172D2D4A7AE53C4DE /* RLMObject.mm in Sources */, + 603A9C68AFA657E26AED8E70E0BC269C /* RLMObjectBase.mm in Sources */, + D0EC9CED1C27B6279D7D4B0BD988AD65 /* RLMObjectSchema.mm in Sources */, + 74E3F0C1A8CBDC02D48958A9C086B72F /* RLMObjectStore.mm in Sources */, + BF1E50571AEE3CFDF996994AC5EC55CD /* RLMObservation.mm in Sources */, + FD1EC2E10A24DE15B1E02630F5B9094D /* RLMOptionalBase.mm in Sources */, + C815CEACAE0EF6FDA155B484A53F4B54 /* RLMPredicateUtil.mm in Sources */, + 2E6EE785D71DBFAEB789FD4CCD03F1A8 /* RLMProperty.mm in Sources */, + 766579430E0011202338742E91D1ECB5 /* RLMQueryUtil.mm in Sources */, + 30DA67137F360FE4DE22FDA4C41348B4 /* RLMRealm+Sync.mm in Sources */, + 5BE7CA5DFA93AC2C327569BED9BFD35B /* RLMRealm.mm in Sources */, + 53600FB3C3C2EC68B2A7E5823956158D /* RLMRealmConfiguration+Sync.mm in Sources */, + F58A46089ABFA0269AC99B2B4F9EB650 /* RLMRealmConfiguration.mm in Sources */, + FE9914A85098C34A90D27650E633655D /* RLMRealmUtil.mm in Sources */, + F41BF29A9EAC0CEA3CD96FB1A6A99749 /* RLMResults.mm in Sources */, + DFDD585061F503C102BEB56AC5A3AF42 /* RLMSchema.mm in Sources */, + 7A763C6D7E035F6B71C6B32AEF01A397 /* RLMSwiftSupport.m in Sources */, + E6E396ECBEDBC635062E466A52B69539 /* RLMSyncConfiguration.mm in Sources */, + 99C76265D213A3D2DB8E6AA4BB039A23 /* RLMSyncCredentials.m in Sources */, + 07A2F3311B1996E82CCCC9B52A74DD06 /* RLMSyncManager.mm in Sources */, + 0CA0B19604E16AD3F7E3FF55E4EF80C3 /* RLMSyncPermission.mm in Sources */, + 64E1F3C55E313BCF279CE5082C420C13 /* RLMSyncPermissionResults.mm in Sources */, + 9007EA7D55D93E1712C2ED47E9D68C2B /* RLMSyncSession.mm in Sources */, + 8C418BE72AFD0F79E24A0AB4DA205F28 /* RLMSyncSessionRefreshHandle.mm in Sources */, + 9F82090ACF465F474464AF6648769DC8 /* RLMSyncSubscription.mm in Sources */, + 185FC9BDD5DD4B89F19EC2F33CF4FD82 /* RLMSyncUser.mm in Sources */, + D995751CCA0533E77C9B071519C267FC /* RLMSyncUtil.mm in Sources */, + 63051BC501EC67F05FD9F9AE2A24E4AE /* RLMThreadSafeReference.mm in Sources */, + C44B3F499FA6DA502253A80ACDC59EFA /* RLMUpdateChecker.mm in Sources */, + 4AB297BEB5B56598CB85826921955C86 /* RLMUtil.mm in Sources */, + 61C2C93B7B14AF35CDDD12EAF5E915B5 /* schema.cpp in Sources */, + C5DAF56F7939ED1B4732CCD894191970 /* shared_realm.cpp in Sources */, + 08C285384BBDAD8AA4D5B78E94C9C537 /* sync_config.cpp in Sources */, + 3FAA2756E6A4384AEBE370F7C8479179 /* sync_file.cpp in Sources */, + DBAE274B2D3B04883B4DEBE7CD106695 /* sync_manager.cpp in Sources */, + B0233B49C9CCABEDB0A02D79C736B786 /* sync_metadata.cpp in Sources */, + C2DCD90F01A45122D03B99CB329307DA /* sync_permission.cpp in Sources */, + 133DF8FF807A8B4F2FDF4BC84DAF2970 /* sync_session.cpp in Sources */, + B53ED048699181ACEDBB101DE862F2EB /* sync_user.cpp in Sources */, + E3540788195A7EEE80DC3F4CBE02A7E2 /* system_configuration.cpp in Sources */, + 6F3368C255B6510AE4F40574B726D807 /* thread_safe_reference.cpp in Sources */, + 6E34F694D61708AD58269C3DBF01D78A /* transact_log_handler.cpp in Sources */, + 4247F140F063F88F8F24C74C14169107 /* uuid.cpp in Sources */, + BA6E02E98CAB7E6368A2F28B3248BFD2 /* weak_realm_notifier.cpp in Sources */, + 7946A38DDB45D2272F0D82ED92BF8228 /* work_queue.cpp in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - CDCEECB7834B024999EAA62318DD0FEF /* Sources */ = { + F886CF1DF2CF332EFFC6FCCD023AD0B3 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 1AFC8EC5505598E3223AC779CB72DB33 /* Aliases.swift in Sources */, - A4621CCFEDC92F45BF85DF0051F1815C /* Error.swift in Sources */, - 18AA9DD0A765349ED1E41AE756273B27 /* LinkingObjects.swift in Sources */, - 18371F48EC2B4BB8A31F58E012369C5A /* List.swift in Sources */, - A09C65FB9D2A0A66150EC2969585FB90 /* Migration.swift in Sources */, - BA1134BEC90AEF72B2D8D0C456C81281 /* Object.swift in Sources */, - 9D6EDB280BD622F9B91ED4A0AA195B8C /* ObjectiveCSupport.swift in Sources */, - C0D4C15583BA758C71B5E5321398E383 /* ObjectSchema.swift in Sources */, - B8EB3F250772D11A2BF86A557AC7C721 /* Optional.swift in Sources */, - BEFA555A98332B1540DEE30B3B4B6372 /* Property.swift in Sources */, - EB97A80D1FD56BAD54828EA6D4376C61 /* Realm.swift in Sources */, - FBB9F1F6106193B1FCCC38A30D741E08 /* RealmCollection.swift in Sources */, - EF80A234FCAE0DB2710FAB98AE71020B /* RealmConfiguration.swift in Sources */, - 0FE7C1EA60B53A404E7663FE2DB72067 /* RealmSwift-dummy.m in Sources */, - 9B405DF01C987C958D7F8EDF451F62F8 /* Results.swift in Sources */, - E4E5CCFA34F5DEC9602ED3F9F25C8B36 /* Schema.swift in Sources */, - 7E73248EC57FFAB98D1232ACA114B5E5 /* SortDescriptor.swift in Sources */, - E16B522F15B3FF566C84D5A8A6AF1E09 /* SwiftVersion.swift in Sources */, - 99996440B4D4949A4B9110C7F5C4FE53 /* Sync.swift in Sources */, - F31404EFE583FE168B4040FA3C25D669 /* ThreadSafeReference.swift in Sources */, - F6ED4CDE09C7D738A68EB6553EB624AB /* Util.swift in Sources */, + C8014A211A638ABD4F0CCC9E4061202C /* Pods-pocloud-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - DB81CE24AEB9A711EF9760F7B3115DFB /* Sources */ = { + FE4204D246A81F97522E4DD4C13D2FC6 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 4CB0F7FFB410A0E92539D17E4DB30BCD /* binding_callback_thread_observer.cpp in Sources */, - 8984AC0B07EF0858BDAE359F13D07958 /* collection_change_builder.cpp in Sources */, - A6AEE2E8707DDCFAEBBCE2CDB1D1DC80 /* collection_notifications.cpp in Sources */, - CC609DC67A832DBD93C6C5AD566D082D /* collection_notifier.cpp in Sources */, - BEDEB808452C68BC12E63F7E95F44237 /* external_commit_helper.cpp in Sources */, - BD289E924B014DF405E63E9DD33B72A5 /* index_set.cpp in Sources */, - 8C9557FB20462522D5C5E13550A0C9C5 /* keychain_helper.cpp in Sources */, - DA64C9A4A65EFDD47F5A8B0CAD7A3707 /* list.cpp in Sources */, - 653DC7F5979ABAEBA562ACFB5D0092A5 /* list_notifier.cpp in Sources */, - 0D403C6276EA87FDBD0B0D73C3FA3B54 /* network_reachability_observer.cpp in Sources */, - 66EEB4298E734B92B3F97B6D24022570 /* NSError+RLMSync.m in Sources */, - 8A58AB8DE259AEE563B768C38D09E0F3 /* object.cpp in Sources */, - 98317C0AB8FA51D3BDFB4FB30A6D1ED3 /* object_notifier.cpp in Sources */, - 7DC89454BD5B9F52C48C662939272210 /* object_schema.cpp in Sources */, - B9724F208961497963D9356D674AC507 /* object_store.cpp in Sources */, - 52015A87F9EDE8DC0AAA92AC6E6399B3 /* partial_sync.cpp in Sources */, - C88C11F2572F5A4A3386C48EC4F5FD1C /* placeholder.cpp in Sources */, - BBB8C87F89087383A96313B55339A6BD /* primitive_list_notifier.cpp in Sources */, - 54CAB4E38734B41CFCED43101B2D0671 /* Realm-dummy.m in Sources */, - 473B111A462D4964AABD7DBBA5AAD5EA /* realm_coordinator.cpp in Sources */, - 25397B9B0D33C7464FE156B508E687C6 /* results.cpp in Sources */, - 2CAE17ABD146DB4A8D5AFDF2AABEBBED /* results_notifier.cpp in Sources */, - 04F39A4F8F7BBF1CB6C6C92277B4D811 /* RLMAccessor.mm in Sources */, - 8EF6461FDA304F5FF44D32506579F17E /* RLMAnalytics.mm in Sources */, - 04DBC292DD8492C88E65FE899C1843CB /* RLMArray.mm in Sources */, - 06E72D368D657EE3A080F36FF6B07A20 /* RLMClassInfo.mm in Sources */, - 9FD29EF07DBCDB66F3373C790B88BB7A /* RLMCollection.mm in Sources */, - DC377DB2073D663B9C83F42D3ACABEC8 /* RLMConstants.m in Sources */, - 3A104499DFFE98B99043751CAF77004A /* RLMJSONModels.m in Sources */, - CF8455E120A8C8AC9EDEFC84E4750884 /* RLMListBase.mm in Sources */, - 76B89B343065168DD3C1CCE49E5F7F71 /* RLMManagedArray.mm in Sources */, - 909634D439688308A89D657E39401A0D /* RLMMigration.mm in Sources */, - 1BB99DA799A7D520955479C9EC8011BD /* RLMNetworkClient.mm in Sources */, - 8CE5AD333D885F81F07805AA8BF93858 /* RLMObject.mm in Sources */, - 28AF654095F7663DDEF59AA78063D6BF /* RLMObjectBase.mm in Sources */, - CC4BF50FF04F1782FF246058194DD431 /* RLMObjectSchema.mm in Sources */, - 0152C9D379A6ACEA02C1930A111C6D2A /* RLMObjectStore.mm in Sources */, - 2DF7DCDE51DE3D58384148E5CE8AB1CA /* RLMObservation.mm in Sources */, - 14F4C55A189416A1B6A953AFB96419B8 /* RLMOptionalBase.mm in Sources */, - 99EF981BB03B3B104573CFE451316118 /* RLMPredicateUtil.mm in Sources */, - 80D2204EFBCCD1BAB611DFE9AAF51E90 /* RLMProperty.mm in Sources */, - 285930D28A0EE951735A7C42D24C7B02 /* RLMQueryUtil.mm in Sources */, - 835038E818125E96E5541382F2F36C9F /* RLMRealm+Sync.mm in Sources */, - F72E1F5521F0172F9C7D28BAB6D53576 /* RLMRealm.mm in Sources */, - 25A3B5DA4EAFAFEF718CCAFA5AC14C5E /* RLMRealmConfiguration+Sync.mm in Sources */, - 5FEE17F4E325DA06CC46A8F0033E124A /* RLMRealmConfiguration.mm in Sources */, - BD539003C0E757A65299D1AB9A32B14F /* RLMRealmUtil.mm in Sources */, - 5DDA08A7C9999200A0DBB9443842DBDF /* RLMResults.mm in Sources */, - E71B7FDEE6094579ED25896A4AD63C49 /* RLMSchema.mm in Sources */, - 6830F0A480AB0DFBE47008CE956BBA55 /* RLMSwiftSupport.m in Sources */, - E9DD886832C805C9B714CF33DED4A766 /* RLMSyncConfiguration.mm in Sources */, - F6FEB79595C89B676A63FF7F0181FF94 /* RLMSyncCredentials.m in Sources */, - 0201DF8385C3D051E629CDB99A022197 /* RLMSyncManager.mm in Sources */, - D9C4F7AD1AD0C0D43E90A263990DCF54 /* RLMSyncPermission.mm in Sources */, - D9CB77CE7151B4DD1A3D92EBF4A05C65 /* RLMSyncPermissionResults.mm in Sources */, - 821513084182DC36F8FB1FD082FA2D0E /* RLMSyncSession.mm in Sources */, - 1358626BB5E435800CE979D77A3157E5 /* RLMSyncSessionRefreshHandle.mm in Sources */, - 93031F53B8DFFE757AF59175F300B44F /* RLMSyncSubscription.mm in Sources */, - DF60007892CD644DF7C302142AF5D27F /* RLMSyncUser.mm in Sources */, - AF2D33039F61D71D528A7501B1EB94A5 /* RLMSyncUtil.mm in Sources */, - 9025A563C837D88BE8647392B59F9355 /* RLMThreadSafeReference.mm in Sources */, - 836FAFD013586A3CC943E5A16BB5EBB3 /* RLMUpdateChecker.mm in Sources */, - 70808866B0C3D5A20FA8F8863E9B19BB /* RLMUtil.mm in Sources */, - 24F01086052CA1FBFD2A801CC707A5ED /* schema.cpp in Sources */, - 3A24837A52F27AE3A2055815ED77C84D /* shared_realm.cpp in Sources */, - B3C14E3C6ED93AB27125555ACFCC5FF0 /* sync_config.cpp in Sources */, - 5EEB5FE83824DE028A44AF777A15F6A1 /* sync_file.cpp in Sources */, - 74F4727B82FFFAE54D5554ACE643209F /* sync_manager.cpp in Sources */, - 8C1CB5E9C77D7F8BD23B45361CDF44D6 /* sync_metadata.cpp in Sources */, - F43C04FF1F5B13EE144CCCACA655112C /* sync_permission.cpp in Sources */, - 583ADF42363D7A256173B58DE7B44871 /* sync_session.cpp in Sources */, - E18A3308186AD49DA7B74A7F8BE42974 /* sync_user.cpp in Sources */, - 7881F3F5C17049AC941B7BF53FDEE252 /* system_configuration.cpp in Sources */, - 7F76B437C623FC0CA6960B09BF7AFEFE /* thread_safe_reference.cpp in Sources */, - A4D2F4DA6CFD4E812C81984C99DD40DA /* transact_log_handler.cpp in Sources */, - B23338508F9BA41D2B408B9693B2B86D /* uuid.cpp in Sources */, - 791A71883C3D3E10E9E2C9270ECA88BA /* weak_realm_notifier.cpp in Sources */, - 363E78E9C5CB206EBAE7EF27172D74EE /* work_queue.cpp in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - EE232C7A4D941E40D31BC140F47842DA /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - B48EAFDBA697C4E8AFDD6CD39B26D745 /* SVIndefiniteAnimatedView.m in Sources */, - 75B4DFAD23D9CC30D7CABE7B4C3FEC45 /* SVProgressAnimatedView.m in Sources */, - F2B671563C44D49F6DC8B216C48AB58A /* SVProgressHUD-dummy.m in Sources */, - B19B7F6318C9D321274BBFF446A52ABB /* SVProgressHUD.m in Sources */, - 7AF2496B1D06350FD119F3B8B6E527CB /* SVRadialGradientLayer.m in Sources */, + F87533C3C166FB72ABE6907D2F333CBC /* Aliases.swift in Sources */, + 0011F146F092632175C8D7545356AA44 /* Error.swift in Sources */, + 675C3C41534DD77AAB710D0D2D115608 /* LinkingObjects.swift in Sources */, + FA1F344748E406D819D9B264DB9C548A /* List.swift in Sources */, + 3BBFB455DFD106C8A487BB4F6083FB43 /* Migration.swift in Sources */, + 1C31A9ADE0DE6BE89548A49316CD977B /* Object.swift in Sources */, + 1E3F40BBD2BD9AEDCDE43244DEC1E194 /* ObjectiveCSupport.swift in Sources */, + 96EF4F3D5600F1FE298BC96A0A7F9742 /* ObjectSchema.swift in Sources */, + 674E63F45AA71DB963BC1F7BE4A52A97 /* Optional.swift in Sources */, + 41250DF6187ABEACE3501399AE521733 /* Property.swift in Sources */, + 77639C87A337D35401CA65821987250B /* Realm.swift in Sources */, + 2CED3D98C9EA9B5705D4B2614B58B73E /* RealmCollection.swift in Sources */, + 941E189B82402D9AEC1E6C0A08910C0E /* RealmConfiguration.swift in Sources */, + FFAADF4BB3ABA8B5ECFF22B582B90215 /* RealmSwift-dummy.m in Sources */, + D72C2A963A8E5687FCDD129C7E427515 /* Results.swift in Sources */, + 66BF63D9C5612025C911BDEAF1EE0C97 /* Schema.swift in Sources */, + 9C75D5BDEE539B5D4505CC73896C7D62 /* SortDescriptor.swift in Sources */, + 0FB0E6689619D731565689FC7BCE4B02 /* SwiftVersion.swift in Sources */, + 207ACD858D025BAB5732E0805C5AFD30 /* Sync.swift in Sources */, + E41BFFD780ABB6B0681CC0E4057F9DA1 /* ThreadSafeReference.swift in Sources */, + FF6717AD334F763FCFD6430891F347DA /* Util.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - 04A4448605B029ECE6F71FAFFB6A0DF2 /* PBXTargetDependency */ = { + 0EA8A50763F3A373B13A2DF394F81018 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = Realm; + target = 8D2BA504143EF86C4E2C43AC593BB574 /* Realm */; + targetProxy = 898E2E2231DA8D1D9ED765B895AC86AA /* PBXContainerItemProxy */; + }; + 1A307BB9B6B227496203A58FAABA9311 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = ChameleonFramework; target = 8A267660E1AD4832DE75665F2F87AEA3 /* ChameleonFramework */; - targetProxy = 25BB974FE6C134BA284D237AF6ADC092 /* PBXContainerItemProxy */; + targetProxy = 58A12DE88FE8C2774A38FC5B0C169168 /* PBXContainerItemProxy */; }; - 0EE542301A91C8D3D8CE1994E2DC0541 /* PBXTargetDependency */ = { + 5298545BFAA9E20C1AB83DCD1E53F226 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = SwiftyJSON; - target = B6A4A63AEC382A876ED19E85A65C6750 /* SwiftyJSON */; - targetProxy = C0E1B3962D3208F3F120BCB0D57E579D /* PBXContainerItemProxy */; + name = SwiftChart; + target = B44B923C0649012A6F16C2DD96DF0897 /* SwiftChart */; + targetProxy = 7C0C44DBB04684521E9377885FEFF403 /* PBXContainerItemProxy */; }; - 21CD81876DD37BB6AAD372ADDDF63C3C /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = SVProgressHUD; - target = 465C4815235623CEB3BF8AE8C9EA3D3B /* SVProgressHUD */; - targetProxy = 2DA1BA378BF24B023B300B47CF39D78C /* PBXContainerItemProxy */; - }; - 496A58E8E70CEB3819DABD0DF5D7DCDF /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = Realm; - target = 44F99A04524EA222FB2F6336532A0235 /* Realm */; - targetProxy = 0802560194485BF2A820C389AF1C323C /* PBXContainerItemProxy */; - }; - 685525E1D7C6031DDEF3DEF44FC28E0C /* PBXTargetDependency */ = { + 656B1C4A033B0A60BB0B9C4249E2A792 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = Kingfisher; target = 4F87037150ABE2C9238B54E8F6E33F36 /* Kingfisher */; - targetProxy = 6422F97A271DE3019C51F51528F21ACB /* PBXContainerItemProxy */; + targetProxy = 4CBDDF0E2412FCC032AAED87A04B15EB /* PBXContainerItemProxy */; }; - 7B689A8C8005863B31FDE53C1FB44E5E /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = Realm; - target = 44F99A04524EA222FB2F6336532A0235 /* Realm */; - targetProxy = D112787B997F13CEAA45CC83507E048A /* PBXContainerItemProxy */; - }; - 7C8C80957E67D7EDE263997040BDCE53 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - name = PromiseKit; - target = A0AC682B8F4EC68EFBAE1FA33B63BD63 /* PromiseKit */; - targetProxy = 077D5DAF8D7D49F7F20677D3BBF91B0F /* PBXContainerItemProxy */; - }; - A081A9D7E1D74A9754ADBD3D5372CE14 /* PBXTargetDependency */ = { + 67C2AD38BCDDAC630AB87C8474B22987 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = Alamofire; target = 88E9EC28B8B46C3631E6B242B50F4442 /* Alamofire */; - targetProxy = 4C23240E63FF05694C0CF8AAE4A98CAD /* PBXContainerItemProxy */; + targetProxy = A2D1B6E160FA50534C44D7F87BDDB752 /* PBXContainerItemProxy */; }; - AF7652274C3CA917FE98132D97E70239 /* PBXTargetDependency */ = { + 9F821536A803929FE4B17091490871E1 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = Alamofire; + target = 88E9EC28B8B46C3631E6B242B50F4442 /* Alamofire */; + targetProxy = 704F78F1761E370D70C670C59AE3FCC8 /* PBXContainerItemProxy */; + }; + A8ECFC1B52888DD72B214C27DB162E34 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = RealmSwift; - target = B32672B31407B2A7286F0FB380D0F5AC /* RealmSwift */; - targetProxy = 619FEAE90DB98CE79B4FC16AC750DD84 /* PBXContainerItemProxy */; + target = 90288313532B7A756151C44436F9862C /* RealmSwift */; + targetProxy = EB4807FA10F430D5A57684986A3AE72C /* PBXContainerItemProxy */; }; - E951A21425CFC9BBC462DF7626719E0F /* PBXTargetDependency */ = { + AEB5735A147509AAD33E371B3C1036FF /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = Alamofire; - target = 88E9EC28B8B46C3631E6B242B50F4442 /* Alamofire */; - targetProxy = 5DAC3420ACA9691466EAB2326F558691 /* PBXContainerItemProxy */; + name = Realm; + target = 8D2BA504143EF86C4E2C43AC593BB574 /* Realm */; + targetProxy = 419B41E3175FBDD20D3BFD1A81D3FDB0 /* PBXContainerItemProxy */; + }; + AF255E76AE9462651AA7C1AA620FDE59 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = SwiftyJSON; + target = E94A09D439739DAB8BA2BEBE5D29EB7C /* SwiftyJSON */; + targetProxy = 5CAF966BDFC950E53E373D4E1B4E47CA /* PBXContainerItemProxy */; + }; + B683BB59053BE414AE92E915DC4AAE44 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = SVProgressHUD; + target = 6424259DE82B46DD5E367ADD6EB9E4FD /* SVProgressHUD */; + targetProxy = 267485814953EC716DC32CAE8AC4C698 /* PBXContainerItemProxy */; + }; + FFE45E096C513057C906D1BE090EE9F1 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = PromiseKit; + target = 705ADD82C609E92D57EA5F59ACCAF1E4 /* PromiseKit */; + targetProxy = 8FAFAF5D4E9C0E62A8D22037B9B25E45 /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ - 0801C049C3A5C1B0D59A0B55B0589C09 /* Debug */ = { + 08C42738276CC9BD4AF827A4370496E8 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = D4D521E1D5A5BEB6D068B0577A1857D3 /* PromiseKit.xcconfig */; + baseConfigurationReference = 2FBA2EC0211955D59DF2AD89333A60D1 /* SVProgressHUD.xcconfig */; + buildSettings = { + CLANG_WARN_DOCUMENTATION_COMMENTS = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/SVProgressHUD/SVProgressHUD-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/SVProgressHUD/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/SVProgressHUD/SVProgressHUD.modulemap"; + PRODUCT_MODULE_NAME = SVProgressHUD; + PRODUCT_NAME = SVProgressHUD; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 13F435F608B367402B0EE25C9D5DF549 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = E15BF07935FB7810EB495127E7CDF1ED /* ChameleonFramework.xcconfig */; + buildSettings = { + CLANG_WARN_DOCUMENTATION_COMMENTS = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/ChameleonFramework/ChameleonFramework-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/ChameleonFramework/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/ChameleonFramework/ChameleonFramework.modulemap"; + PRODUCT_MODULE_NAME = ChameleonFramework; + PRODUCT_NAME = ChameleonFramework; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 3AA43D8531165367DD1AAE29D6811EE4 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = C2489211F0C078953B1E4805F610FFD8 /* PromiseKit.xcconfig */; buildSettings = { CLANG_WARN_DOCUMENTATION_COMMENTS = NO; CODE_SIGN_IDENTITY = ""; @@ -2172,7 +2343,226 @@ }; name = Debug; }; - 0F13C9F4903B0BA551238BCD9A754CD9 /* Debug */ = { + 3D4E9D2964971E9438142C5C058EC28B /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = D3FE4EDF853BCC3D98F0C989996A9616 /* Realm.xcconfig */; + buildSettings = { + CLANG_WARN_DOCUMENTATION_COMMENTS = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/Realm/Realm-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Realm/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/Realm/Realm.modulemap"; + PRODUCT_MODULE_NAME = Realm; + PRODUCT_NAME = Realm; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 475D13339E740EDE0738A030EFFC35D3 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = E15BF07935FB7810EB495127E7CDF1ED /* ChameleonFramework.xcconfig */; + buildSettings = { + CLANG_WARN_DOCUMENTATION_COMMENTS = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/ChameleonFramework/ChameleonFramework-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/ChameleonFramework/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/ChameleonFramework/ChameleonFramework.modulemap"; + PRODUCT_MODULE_NAME = ChameleonFramework; + PRODUCT_NAME = ChameleonFramework; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 4A2100F11EC0D9D7E4A4B8B445F33AF5 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 2FBA2EC0211955D59DF2AD89333A60D1 /* SVProgressHUD.xcconfig */; + buildSettings = { + CLANG_WARN_DOCUMENTATION_COMMENTS = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/SVProgressHUD/SVProgressHUD-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/SVProgressHUD/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/SVProgressHUD/SVProgressHUD.modulemap"; + PRODUCT_MODULE_NAME = SVProgressHUD; + PRODUCT_NAME = SVProgressHUD; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 5AA067B6086CCA2AAB9814386FAD19DF /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = D3FE4EDF853BCC3D98F0C989996A9616 /* Realm.xcconfig */; + buildSettings = { + CLANG_WARN_DOCUMENTATION_COMMENTS = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/Realm/Realm-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Realm/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/Realm/Realm.modulemap"; + PRODUCT_MODULE_NAME = Realm; + PRODUCT_NAME = Realm; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 4.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 5C62205F1D8CC5D5B5126D501D3E0D98 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREPROCESSOR_DEFINITIONS = ( + "POD_CONFIGURATION_RELEASE=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 10.0; + MTL_ENABLE_DEBUG_INFO = NO; + PRODUCT_NAME = "$(TARGET_NAME)"; + STRIP_INSTALLED_PRODUCT = NO; + SYMROOT = "${SRCROOT}/../build"; + }; + name = Release; + }; + 6BE91BB92E1C57C548B0AA0A10FC830F /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = A479B3FFCD869510C99518C581F3CC3E /* SwiftChart.xcconfig */; + buildSettings = { + CLANG_WARN_DOCUMENTATION_COMMENTS = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/SwiftChart/SwiftChart-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/SwiftChart/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.3; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/SwiftChart/SwiftChart.modulemap"; + PRODUCT_MODULE_NAME = SwiftChart; + PRODUCT_NAME = SwiftChart; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_VERSION = 4.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + 6DDCC8D08D443DD688FC803040F8C06F /* Debug */ = { isa = XCBuildConfiguration; baseConfigurationReference = 7904EA655451E47F1B178CD6080E46B3 /* Pods-pocloud.debug.xcconfig */; buildSettings = { @@ -2209,261 +2599,9 @@ }; name = Debug; }; - 13F435F608B367402B0EE25C9D5DF549 /* Release */ = { + 6DE7BDAEA4526E4F8BF58206EDC695D9 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 0B079A00CBADBF7388DC071DAA970837 /* ChameleonFramework.xcconfig */; - buildSettings = { - CLANG_WARN_DOCUMENTATION_COMMENTS = NO; - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/ChameleonFramework/ChameleonFramework-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/ChameleonFramework/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/ChameleonFramework/ChameleonFramework.modulemap"; - PRODUCT_MODULE_NAME = ChameleonFramework; - PRODUCT_NAME = ChameleonFramework; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - 2BDD47529EDD5A93ED32972E454AA357 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 9B4A82B8567691104E0B2E5589DDA531 /* Realm.xcconfig */; - buildSettings = { - CLANG_WARN_DOCUMENTATION_COMMENTS = NO; - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/Realm/Realm-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Realm/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/Realm/Realm.modulemap"; - PRODUCT_MODULE_NAME = Realm; - PRODUCT_NAME = Realm; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - 3B669A67BB5F274B30458016D7B31165 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = D4D521E1D5A5BEB6D068B0577A1857D3 /* PromiseKit.xcconfig */; - buildSettings = { - CLANG_WARN_DOCUMENTATION_COMMENTS = NO; - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/PromiseKit/PromiseKit-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/PromiseKit/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/PromiseKit/PromiseKit.modulemap"; - PRODUCT_MODULE_NAME = PromiseKit; - PRODUCT_NAME = PromiseKit; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_VERSION = 4.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - 475D13339E740EDE0738A030EFFC35D3 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 0B079A00CBADBF7388DC071DAA970837 /* ChameleonFramework.xcconfig */; - buildSettings = { - CLANG_WARN_DOCUMENTATION_COMMENTS = NO; - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/ChameleonFramework/ChameleonFramework-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/ChameleonFramework/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/ChameleonFramework/ChameleonFramework.modulemap"; - PRODUCT_MODULE_NAME = ChameleonFramework; - PRODUCT_NAME = ChameleonFramework; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - 553022A828EE1991F07D2D73F565AEF8 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGNING_ALLOWED = NO; - CODE_SIGNING_REQUIRED = NO; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "POD_CONFIGURATION_DEBUG=1", - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_NAME = "$(TARGET_NAME)"; - STRIP_INSTALLED_PRODUCT = NO; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SYMROOT = "${SRCROOT}/../build"; - }; - name = Debug; - }; - 58CE816B060A41D32CEC095441D0E3E0 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGNING_ALLOWED = NO; - CODE_SIGNING_REQUIRED = NO; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_PREPROCESSOR_DEFINITIONS = ( - "POD_CONFIGURATION_RELEASE=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 10.0; - MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_NAME = "$(TARGET_NAME)"; - STRIP_INSTALLED_PRODUCT = NO; - SYMROOT = "${SRCROOT}/../build"; - }; - name = Release; - }; - 85AF1AA49040272128D15AC404B2752D /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 394D44FA4E552DE1E7A714C1C85E6C45 /* SwiftyJSON.xcconfig */; + baseConfigurationReference = D2F481C1057D3B82CA0F82BA47623EAA /* SwiftyJSON.xcconfig */; buildSettings = { CLANG_WARN_DOCUMENTATION_COMMENTS = NO; CODE_SIGN_IDENTITY = ""; @@ -2494,9 +2632,42 @@ }; name = Debug; }; - 8A001B18C298343638A76AD90280101B /* Release */ = { + 7DCECCD512EBB48BA02F9B6ABBDEED0B /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = DDCEEE24ECEC0906CEB20D6EF38A6829 /* RealmSwift.xcconfig */; + baseConfigurationReference = A479B3FFCD869510C99518C581F3CC3E /* SwiftChart.xcconfig */; + buildSettings = { + CLANG_WARN_DOCUMENTATION_COMMENTS = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/SwiftChart/SwiftChart-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/SwiftChart/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.3; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/SwiftChart/SwiftChart.modulemap"; + PRODUCT_MODULE_NAME = SwiftChart; + PRODUCT_NAME = SwiftChart; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 4.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 89F272430522915FAA7425A0012F5DA3 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 40A162E18F4431A9E2870119C629D7C2 /* RealmSwift.xcconfig */; buildSettings = { CLANG_WARN_DOCUMENTATION_COMMENTS = NO; CODE_SIGN_IDENTITY = ""; @@ -2530,7 +2701,7 @@ }; 9EF5724CD349D6D1805D125DCF8045ED /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 4158533C002FD1D2A2D5CAF22236BE6C /* Alamofire.xcconfig */; + baseConfigurationReference = A46966049B213458C4F1837F7EAF5428 /* Alamofire.xcconfig */; buildSettings = { CLANG_WARN_DOCUMENTATION_COMMENTS = NO; CODE_SIGN_IDENTITY = ""; @@ -2561,7 +2732,102 @@ }; name = Debug; }; - 9F72BA97EDAF485573ECDFA7185E520E /* Release */ = { + B842B52FB004503E9D2080105C6D03BD /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = A46966049B213458C4F1837F7EAF5428 /* Alamofire.xcconfig */; + buildSettings = { + CLANG_WARN_DOCUMENTATION_COMMENTS = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/Alamofire/Alamofire-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Alamofire/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/Alamofire/Alamofire.modulemap"; + PRODUCT_MODULE_NAME = Alamofire; + PRODUCT_NAME = Alamofire; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_VERSION = 4.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + BDD51213934DD3F212C91DFADE3C80B9 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "POD_CONFIGURATION_DEBUG=1", + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 10.0; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + PRODUCT_NAME = "$(TARGET_NAME)"; + STRIP_INSTALLED_PRODUCT = NO; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SYMROOT = "${SRCROOT}/../build"; + }; + name = Debug; + }; + C6F0219314A940FD1D05E40C68357F7A /* Release */ = { isa = XCBuildConfiguration; baseConfigurationReference = 2A32A5F933056AF0BB4CC991F44AE061 /* Pods-pocloud.release.xcconfig */; buildSettings = { @@ -2598,174 +2864,9 @@ }; name = Release; }; - AF9F687ADD016848F62B089D93B5F07E /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 7C7037F71ABCCC36D4503C634BBE25E2 /* SVProgressHUD.xcconfig */; - buildSettings = { - CLANG_WARN_DOCUMENTATION_COMMENTS = NO; - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/SVProgressHUD/SVProgressHUD-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/SVProgressHUD/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/SVProgressHUD/SVProgressHUD.modulemap"; - PRODUCT_MODULE_NAME = SVProgressHUD; - PRODUCT_NAME = SVProgressHUD; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - B842B52FB004503E9D2080105C6D03BD /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 4158533C002FD1D2A2D5CAF22236BE6C /* Alamofire.xcconfig */; - buildSettings = { - CLANG_WARN_DOCUMENTATION_COMMENTS = NO; - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/Alamofire/Alamofire-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Alamofire/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/Alamofire/Alamofire.modulemap"; - PRODUCT_MODULE_NAME = Alamofire; - PRODUCT_NAME = Alamofire; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_VERSION = 4.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - C6CA2C8AD0913B1393BD53455BA79D1F /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 9B4A82B8567691104E0B2E5589DDA531 /* Realm.xcconfig */; - buildSettings = { - CLANG_WARN_DOCUMENTATION_COMMENTS = NO; - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/Realm/Realm-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Realm/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/Realm/Realm.modulemap"; - PRODUCT_MODULE_NAME = Realm; - PRODUCT_NAME = Realm; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - C9561E3A027331B9F4FAAC0A7EFFB8A4 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = DDCEEE24ECEC0906CEB20D6EF38A6829 /* RealmSwift.xcconfig */; - buildSettings = { - CLANG_WARN_DOCUMENTATION_COMMENTS = NO; - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/RealmSwift/RealmSwift-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/RealmSwift/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/RealmSwift/RealmSwift.modulemap"; - PRODUCT_MODULE_NAME = RealmSwift; - PRODUCT_NAME = RealmSwift; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 4.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - D2EE1DC6D9F1753BDDE3C4C86C950571 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 7C7037F71ABCCC36D4503C634BBE25E2 /* SVProgressHUD.xcconfig */; - buildSettings = { - CLANG_WARN_DOCUMENTATION_COMMENTS = NO; - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/SVProgressHUD/SVProgressHUD-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/SVProgressHUD/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/SVProgressHUD/SVProgressHUD.modulemap"; - PRODUCT_MODULE_NAME = SVProgressHUD; - PRODUCT_NAME = SVProgressHUD; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; D53E4CF8C6C55DA367C05C7D4D792ED1 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 12F443243C5DF0C54E1E184129A242FB /* Kingfisher.xcconfig */; + baseConfigurationReference = 36DF68D5C5DC5D2F0592370CF3E091D3 /* Kingfisher.xcconfig */; buildSettings = { CLANG_WARN_DOCUMENTATION_COMMENTS = NO; CODE_SIGN_IDENTITY = ""; @@ -2797,42 +2898,9 @@ }; name = Release; }; - FD440EF9287D06B6AFFF45A018596019 /* Debug */ = { + E50C0B092E4B50D4A22BC7D80CF871F8 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 12F443243C5DF0C54E1E184129A242FB /* Kingfisher.xcconfig */; - buildSettings = { - CLANG_WARN_DOCUMENTATION_COMMENTS = NO; - CODE_SIGN_IDENTITY = ""; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - GCC_PREFIX_HEADER = "Target Support Files/Kingfisher/Kingfisher-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/Kingfisher/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/Kingfisher/Kingfisher.modulemap"; - PRODUCT_MODULE_NAME = Kingfisher; - PRODUCT_NAME = Kingfisher; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 4.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - FE527D6369B5FFB84C75150313733DC1 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 394D44FA4E552DE1E7A714C1C85E6C45 /* SwiftyJSON.xcconfig */; + baseConfigurationReference = D2F481C1057D3B82CA0F82BA47623EAA /* SwiftyJSON.xcconfig */; buildSettings = { CLANG_WARN_DOCUMENTATION_COMMENTS = NO; CODE_SIGN_IDENTITY = ""; @@ -2864,18 +2932,109 @@ }; name = Release; }; + FA7CCE971C85E7191618A784AEFB99CD /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = C2489211F0C078953B1E4805F610FFD8 /* PromiseKit.xcconfig */; + buildSettings = { + CLANG_WARN_DOCUMENTATION_COMMENTS = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/PromiseKit/PromiseKit-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/PromiseKit/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/PromiseKit/PromiseKit.modulemap"; + PRODUCT_MODULE_NAME = PromiseKit; + PRODUCT_NAME = PromiseKit; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + SWIFT_VERSION = 4.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + FD1E988098D0442E23D9E0A741734CE8 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 40A162E18F4431A9E2870119C629D7C2 /* RealmSwift.xcconfig */; + buildSettings = { + CLANG_WARN_DOCUMENTATION_COMMENTS = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/RealmSwift/RealmSwift-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/RealmSwift/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/RealmSwift/RealmSwift.modulemap"; + PRODUCT_MODULE_NAME = RealmSwift; + PRODUCT_NAME = RealmSwift; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 4.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + FD440EF9287D06B6AFFF45A018596019 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 36DF68D5C5DC5D2F0592370CF3E091D3 /* Kingfisher.xcconfig */; + buildSettings = { + CLANG_WARN_DOCUMENTATION_COMMENTS = NO; + CODE_SIGN_IDENTITY = ""; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + GCC_PREFIX_HEADER = "Target Support Files/Kingfisher/Kingfisher-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/Kingfisher/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/Kingfisher/Kingfisher.modulemap"; + PRODUCT_MODULE_NAME = Kingfisher; + PRODUCT_NAME = Kingfisher; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 4.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 08457B7DF34EF6E4216EBADFDC718138 /* Build configuration list for PBXNativeTarget "PromiseKit" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 0801C049C3A5C1B0D59A0B55B0589C09 /* Debug */, - 3B669A67BB5F274B30458016D7B31165 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; 20F92F171610CEDDAF86937C97E37425 /* Build configuration list for PBXNativeTarget "ChameleonFramework" */ = { isa = XCConfigurationList; buildConfigurations = ( @@ -2885,29 +3044,38 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; + 21F5B78FC0465EFA6841CA78A971C13B /* Build configuration list for PBXNativeTarget "SwiftChart" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 7DCECCD512EBB48BA02F9B6ABBDEED0B /* Debug */, + 6BE91BB92E1C57C548B0AA0A10FC830F /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 2768931CBDC63A4389B8CDAE7D9677F3 /* Build configuration list for PBXNativeTarget "Realm" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 5AA067B6086CCA2AAB9814386FAD19DF /* Debug */, + 3D4E9D2964971E9438142C5C058EC28B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */ = { isa = XCConfigurationList; buildConfigurations = ( - 553022A828EE1991F07D2D73F565AEF8 /* Debug */, - 58CE816B060A41D32CEC095441D0E3E0 /* Release */, + BDD51213934DD3F212C91DFADE3C80B9 /* Debug */, + 5C62205F1D8CC5D5B5126D501D3E0D98 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 302E992413F72644D7819B7F30A406E7 /* Build configuration list for PBXNativeTarget "Pods-pocloud" */ = { + 2E52ABC70175A2914C3638A80838B3D4 /* Build configuration list for PBXNativeTarget "SwiftyJSON" */ = { isa = XCConfigurationList; buildConfigurations = ( - 0F13C9F4903B0BA551238BCD9A754CD9 /* Debug */, - 9F72BA97EDAF485573ECDFA7185E520E /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 3972D5FC94FDCC653DCC6377E6060C15 /* Build configuration list for PBXNativeTarget "RealmSwift" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - C9561E3A027331B9F4FAAC0A7EFFB8A4 /* Debug */, - 8A001B18C298343638A76AD90280101B /* Release */, + 6DE7BDAEA4526E4F8BF58206EDC695D9 /* Debug */, + E50C0B092E4B50D4A22BC7D80CF871F8 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; @@ -2921,24 +3089,6 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 5B8CC1D40D219A84F537841E37DA19C8 /* Build configuration list for PBXNativeTarget "Realm" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 2BDD47529EDD5A93ED32972E454AA357 /* Debug */, - C6CA2C8AD0913B1393BD53455BA79D1F /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 5C8EE78AD022346D47D6DF6210E72D8D /* Build configuration list for PBXNativeTarget "SwiftyJSON" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 85AF1AA49040272128D15AC404B2752D /* Debug */, - FE527D6369B5FFB84C75150313733DC1 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; 6E151CD202797E4A2B6521EE8BECB6DE /* Build configuration list for PBXNativeTarget "Kingfisher" */ = { isa = XCConfigurationList; buildConfigurations = ( @@ -2948,11 +3098,38 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - FA90FFF6D1DCAE5D524828797D0FAA42 /* Build configuration list for PBXNativeTarget "SVProgressHUD" */ = { + 87C2AF295D0BA5C0884E8CB7E7CBB3B7 /* Build configuration list for PBXNativeTarget "Pods-pocloud" */ = { isa = XCConfigurationList; buildConfigurations = ( - D2EE1DC6D9F1753BDDE3C4C86C950571 /* Debug */, - AF9F687ADD016848F62B089D93B5F07E /* Release */, + 6DDCC8D08D443DD688FC803040F8C06F /* Debug */, + C6F0219314A940FD1D05E40C68357F7A /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 92C493FC357EA11D3CA2FB4F5676AB26 /* Build configuration list for PBXNativeTarget "SVProgressHUD" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 4A2100F11EC0D9D7E4A4B8B445F33AF5 /* Debug */, + 08C42738276CC9BD4AF827A4370496E8 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + ACA736DC034ED0CDDC86842D7065A95B /* Build configuration list for PBXNativeTarget "PromiseKit" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 3AA43D8531165367DD1AAE29D6811EE4 /* Debug */, + FA7CCE971C85E7191618A784AEFB99CD /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + EE4A72DA29C4257D3F871F5D8FE923FF /* Build configuration list for PBXNativeTarget "RealmSwift" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + FD1E988098D0442E23D9E0A741734CE8 /* Debug */, + 89F272430522915FAA7425A0012F5DA3 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; diff --git a/Pods/PromiseKit/Sources/AnyPromise.m b/Pods/PromiseKit/Sources/AnyPromise.m index 3661120..af66310 100644 --- a/Pods/PromiseKit/Sources/AnyPromise.m +++ b/Pods/PromiseKit/Sources/AnyPromise.m @@ -1,4 +1,8 @@ -#import +#if __has_include("PromiseKit-Swift.h") + #import "PromiseKit-Swift.h" +#else + #import +#endif #import "PMKCallVariadicBlock.m" #import "AnyPromise+Private.h" #import "AnyPromise.h" diff --git a/Pods/Realm/Realm/ObjectStore/src/shared_realm.cpp b/Pods/Realm/Realm/ObjectStore/src/shared_realm.cpp index f3528e2..e906ed5 100644 --- a/Pods/Realm/Realm/ObjectStore/src/shared_realm.cpp +++ b/Pods/Realm/Realm/ObjectStore/src/shared_realm.cpp @@ -961,6 +961,7 @@ T Realm::resolve_thread_safe_reference(ThreadSafeReference reference) if (reference_version < current_version) { // Duplicate config for uncached Realm so we don't advance the user's Realm Realm::Config config = m_coordinator->get_config(); + config.automatic_change_notifications = false; config.cache = false; config.schema = util::none; SharedRealm temporary_realm = m_coordinator->get_realm(config); diff --git a/Pods/Realm/Realm/ObjectStore/src/sync/impl/sync_metadata.cpp b/Pods/Realm/Realm/ObjectStore/src/sync/impl/sync_metadata.cpp index c001131..5ac9134 100644 --- a/Pods/Realm/Realm/ObjectStore/src/sync/impl/sync_metadata.cpp +++ b/Pods/Realm/Realm/ObjectStore/src/sync/impl/sync_metadata.cpp @@ -157,6 +157,23 @@ SyncMetadataManager::SyncMetadataManager(std::string path, }; m_metadata_config = std::move(config); + + m_client_uuid = [&]() -> std::string { + TableRef table = ObjectStore::table_for_object_type(realm->read_group(), c_sync_clientMetadata); + if (table->is_empty()) { + realm->begin_transaction(); + if (table->is_empty()) { + size_t idx = table->add_empty_row(); + REALM_ASSERT_DEBUG(idx == 0); + auto uuid = uuid_string(); + table->set_string(m_client_schema.idx_uuid, idx, uuid); + realm->commit_transaction(); + return uuid; + } + realm->cancel_transaction(); + } + return table->get_string(m_client_schema.idx_uuid, 0); + }(); } SyncUserMetadataResults SyncMetadataManager::all_unmarked_users() const @@ -309,26 +326,6 @@ util::Optional SyncMetadataManager::get_file_action_meta return SyncFileActionMetadata(std::move(schema), std::move(realm), table->get(row_idx)); } -std::string SyncMetadataManager::client_uuid() const -{ - auto realm = Realm::get_shared_realm(m_metadata_config); - TableRef table = ObjectStore::table_for_object_type(realm->read_group(), c_sync_clientMetadata); - if (table->is_empty()) { - realm->begin_transaction(); - if (table->is_empty()) { - size_t idx = table->add_empty_row(); - REALM_ASSERT_DEBUG(idx == 0); - auto uuid = uuid_string(); - table->set_string(m_client_schema.idx_uuid, idx, uuid); - realm->commit_transaction(); - return uuid; - } - realm->cancel_transaction(); - } - - return table->get_string(m_client_schema.idx_uuid, 0); -} - // MARK: - Sync user metadata SyncUserMetadata::SyncUserMetadata(Schema schema, SharedRealm realm, RowExpr row) diff --git a/Pods/Realm/Realm/ObjectStore/src/sync/sync_session.cpp b/Pods/Realm/Realm/ObjectStore/src/sync/sync_session.cpp index 0004aa0..2089b72 100644 --- a/Pods/Realm/Realm/ObjectStore/src/sync/sync_session.cpp +++ b/Pods/Realm/Realm/ObjectStore/src/sync/sync_session.cpp @@ -364,13 +364,14 @@ struct sync_session_states::Dying : public SyncSession::State { struct sync_session_states::Inactive : public SyncSession::State { void enter_state(std::unique_lock& lock, SyncSession& session) const override { - // Inform any queued-up completion handlers that they were cancelled. - for (auto& package : session.m_completion_wait_packages) { - package.callback(util::error::operation_aborted); - } + auto completion_wait_packages = std::move(session.m_completion_wait_packages); session.m_completion_wait_packages.clear(); session.m_session = nullptr; - session.unregister(lock); + session.unregister(lock); // releases lock + + // Inform any queued-up completion handlers that they were cancelled. + for (auto& package : completion_wait_packages) + package.callback(util::error::operation_aborted); } bool revive_if_needed(std::unique_lock& lock, SyncSession& session) const override @@ -519,7 +520,7 @@ void SyncSession::handle_error(SyncError error) { std::unique_lock lock(m_state_mutex); user_to_invalidate = user(); - cancel_pending_waits(); + cancel_pending_waits(lock); } if (user_to_invalidate) user_to_invalidate->invalidate(); @@ -584,7 +585,7 @@ void SyncSession::handle_error(SyncError error) } case NextStateAfterError::error: { std::unique_lock lock(m_state_mutex); - cancel_pending_waits(); + cancel_pending_waits(lock); break; } } @@ -593,13 +594,15 @@ void SyncSession::handle_error(SyncError error) } } -void SyncSession::cancel_pending_waits() +void SyncSession::cancel_pending_waits(std::unique_lock& lock) { + auto packages = std::move(m_completion_wait_packages); + lock.unlock(); + // Inform any queued-up completion handlers that they were cancelled. - for (auto& package : m_completion_wait_packages) { + for (auto& package : packages) { package.callback(util::error::operation_aborted); } - m_completion_wait_packages.clear(); } void SyncSession::handle_progress_update(uint64_t downloaded, uint64_t downloadable, diff --git a/Pods/Realm/Realm/RLMMigration.mm b/Pods/Realm/Realm/RLMMigration.mm index 778150a..0fca177 100644 --- a/Pods/Realm/Realm/RLMMigration.mm +++ b/Pods/Realm/Realm/RLMMigration.mm @@ -56,8 +56,7 @@ using namespace realm; @implementation RLMMigration { realm::Schema *_schema; - NSMutableDictionary *deletedObjectIndices; - NSMutableSet *deletedClasses; + std::unordered_map _deletedObjectIndices; } - (instancetype)initWithRealm:(RLMRealm *)realm oldRealm:(RLMRealm *)oldRealm schema:(realm::Schema &)schema { @@ -67,8 +66,6 @@ using namespace realm; _oldRealm = oldRealm; _schema = &schema; object_setClass(_oldRealm, RLMMigrationRealm.class); - deletedObjectIndices = [NSMutableDictionary dictionary]; - deletedClasses = [NSMutableSet set]; } return self; } @@ -82,42 +79,34 @@ using namespace realm; } - (void)enumerateObjects:(NSString *)className block:(RLMObjectMigrationBlock)block { - if ([deletedClasses containsObject:className]) { - return; - } - - // get all objects RLMResults *objects = [_realm.schema schemaForClassName:className] ? [_realm allObjects:className] : nil; RLMResults *oldObjects = [_oldRealm.schema schemaForClassName:className] ? [_oldRealm allObjects:className] : nil; - if (objects && oldObjects) { - NSArray *deletedObjects = deletedObjectIndices[className]; - if (!deletedObjects) { - deletedObjects = [NSMutableArray array]; - deletedObjectIndices[className] = deletedObjects; + // For whatever reason if this is a newly added table we enumerate the + // objects in it, while in all other cases we enumerate only the existing + // objects. It's unclear how this could be useful, but changing it would + // also be a pointless breaking change and it's unlikely to be hurting anyone. + if (objects && !oldObjects) { + for (auto i = objects.count; i > 0; --i) { + @autoreleasepool { + block(nil, objects[i - 1]); + } } + return; + } - for (long i = oldObjects.count - 1; i >= 0; i--) { - @autoreleasepool { - if ([deletedObjects containsObject:@(i)]) { - continue; - } - block(oldObjects[i], objects[i]); - } - } + auto count = oldObjects.count; + if (count == 0) { + return; } - else if (objects) { - for (long i = objects.count - 1; i >= 0; i--) { - @autoreleasepool { - block(nil, objects[i]); - } + auto deletedObjects = _deletedObjectIndices.find(className); + for (auto i = count; i > 0; --i) { + auto index = i - 1; + if (deletedObjects != _deletedObjectIndices.end() && deletedObjects->second.contains(index)) { + continue; } - } - else if (oldObjects) { - for (long i = oldObjects.count - 1; i >= 0; i--) { - @autoreleasepool { - block(oldObjects[i], nil); - } + @autoreleasepool { + block(oldObjects[index], objects[index]); } } } @@ -136,7 +125,6 @@ using namespace realm; block(self, _oldRealm->_realm->schema_version()); [self deleteObjectsMarkedForDeletion]; - [self deleteDataMarkedForDeletion]; _oldRealm = nil; _realm = nil; @@ -152,15 +140,29 @@ using namespace realm; } - (void)deleteObject:(RLMObject *)object { - [deletedObjectIndices[object.objectSchema.className] addObject:@(object->_row.get_index())]; + _deletedObjectIndices[object.objectSchema.className].add(object->_row.get_index()); } - (void)deleteObjectsMarkedForDeletion { - for (NSString *className in deletedObjectIndices.allKeys) { - RLMResults *objects = [_realm allObjects:className]; - for (NSNumber *index in deletedObjectIndices[className]) { - RLMObject *object = objects[index.longValue]; - [_realm deleteObject:object]; + for (auto& objectType : _deletedObjectIndices) { + TableRef table = ObjectStore::table_for_object_type(_realm.group, objectType.first.UTF8String); + if (!table) { + continue; + } + + auto& indices = objectType.second; + // Just clear the table if we're removing all of the rows + if (table->size() == indices.count()) { + table->clear(); + } + // Otherwise delete in reverse order to avoid invaliding any of the + // not-yet-deleted indices + else { + for (auto it = std::make_reverse_iterator(indices.end()), end = std::make_reverse_iterator(indices.begin()); it != end; ++it) { + for (size_t i = it->second; i > it->first; --i) { + table->move_last_over(i - 1); + } + } } } } @@ -174,29 +176,17 @@ using namespace realm; if (!table) { return false; } + _deletedObjectIndices[name].set(table->size()); + if (![_realm.schema schemaForClassName:name]) { + realm::ObjectStore::delete_data_for_object(_realm.group, name.UTF8String); + } - [deletedClasses addObject:name]; return true; } -- (void)deleteDataMarkedForDeletion { - for (NSString *className in deletedClasses) { - TableRef table = ObjectStore::table_for_object_type(_realm.group, className.UTF8String); - if (!table) { - continue; - } - if ([_realm.schema schemaForClassName:className]) { - table->clear(); - } - else { - realm::ObjectStore::delete_data_for_object(_realm.group, className.UTF8String); - } - } -} - - (void)renamePropertyForClass:(NSString *)className oldName:(NSString *)oldName newName:(NSString *)newName { - const char *objectType = className.UTF8String; - realm::ObjectStore::rename_property(_realm.group, *_schema, objectType, oldName.UTF8String, newName.UTF8String); + realm::ObjectStore::rename_property(_realm.group, *_schema, className.UTF8String, + oldName.UTF8String, newName.UTF8String); } @end diff --git a/Pods/Realm/Realm/RLMObjectStore.mm b/Pods/Realm/Realm/RLMObjectStore.mm index 99d1a2f..8b2ef34 100644 --- a/Pods/Realm/Realm/RLMObjectStore.mm +++ b/Pods/Realm/Realm/RLMObjectStore.mm @@ -90,17 +90,25 @@ void RLMInitializeSwiftAccessorGenerics(__unsafe_unretained RLMObjectBase *const } for (RLMProperty *prop in object->_objectSchema.swiftGenericProperties) { + id ivar = object_getIvar(object, prop.swiftIvar); + if (!ivar) { + // FIXME: this should actually be an error as it's the result of an + // invalid object definition, but that's a breaking change so + // instead preserve the old behavior until the next major version bump + // https://github.com/realm/realm-cocoa/issues/5784 + continue; + } + if (prop.type == RLMPropertyTypeLinkingObjects) { - id linkingObjects = object_getIvar(object, prop.swiftIvar); - [linkingObjects setObject:(id)[[RLMWeakObjectHandle alloc] initWithObject:object]]; - [linkingObjects setProperty:prop]; + [ivar setObject:(id)[[RLMWeakObjectHandle alloc] initWithObject:object]]; + [ivar setProperty:prop]; } else if (prop.array) { RLMArray *array = [[RLMManagedArray alloc] initWithParent:object property:prop]; - [object_getIvar(object, prop.swiftIvar) set_rlmArray:array]; + [ivar set_rlmArray:array]; } else { - RLMInitializeManagedOptional(object_getIvar(object, prop.swiftIvar), object, prop); + RLMInitializeManagedOptional(ivar, object, prop); } } } diff --git a/Pods/Realm/Realm/RLMOptionalBase.mm b/Pods/Realm/Realm/RLMOptionalBase.mm index ab7e0b2..bbe4c09 100644 --- a/Pods/Realm/Realm/RLMOptionalBase.mm +++ b/Pods/Realm/Realm/RLMOptionalBase.mm @@ -123,6 +123,11 @@ private: } id RLMGetOptional(__unsafe_unretained RLMOptionalBase *const self) { + if (!self) { + // FIXME: this should actually be an error + // https://github.com/realm/realm-cocoa/issues/5784 + return nil; + } try { return self->_impl ? RLMCoerceToNil(self->_impl->get()) : nil; } @@ -132,6 +137,11 @@ id RLMGetOptional(__unsafe_unretained RLMOptionalBase *const self) { } void RLMSetOptional(__unsafe_unretained RLMOptionalBase *const self, __unsafe_unretained const id value) { + if (!self) { + // FIXME: this should actually be an error + // https://github.com/realm/realm-cocoa/issues/5784 + return; + } try { if (!self->_impl && value) { self->_impl.reset(new UnmanagedOptional); diff --git a/Pods/Realm/Realm/RLMRealmConfiguration.mm b/Pods/Realm/Realm/RLMRealmConfiguration.mm index f0cf4a0..3635f81 100644 --- a/Pods/Realm/Realm/RLMRealmConfiguration.mm +++ b/Pods/Realm/Realm/RLMRealmConfiguration.mm @@ -285,8 +285,6 @@ static void RLMNSStringToStdString(std::string &out, NSString *in) { if (shouldCompactOnLaunch) { if (self.readOnly) { @throw RLMException(@"Cannot set `shouldCompactOnLaunch` when `readOnly` is set."); - } else if (_config.sync_config) { - @throw RLMException(@"Cannot set `shouldCompactOnLaunch` when `syncConfiguration` is set."); } _config.should_compact_on_launch_function = [=](size_t totalBytes, size_t usedBytes) { return shouldCompactOnLaunch(totalBytes, usedBytes); diff --git a/Pods/Realm/build.sh b/Pods/Realm/build.sh index 0605307..79b56ac 100755 --- a/Pods/Realm/build.sh +++ b/Pods/Realm/build.sh @@ -980,10 +980,12 @@ case "$COMMAND" in ###################################### "binary-has-bitcode") + # Disable pipefail as grep -q will make otool fail due to exiting + # before reading all the output + set +o pipefail + BINARY="$2" - # Although grep has a '-q' flag to prevent logging to stdout, grep - # behaves differently when used, so redirect stdout to /dev/null. - if otool -l "$BINARY" | grep "segname __LLVM" > /dev/null 2>&1; then + if otool -l "$BINARY" | grep -q "segname __LLVM"; then exit 0 fi # Work around rdar://21826157 by checking for bitcode in thin binaries @@ -993,6 +995,7 @@ case "$COMMAND" in archs_array=( $archs ) if [[ ${#archs_array[@]} -lt 2 ]]; then + echo 'Error: Built library is not a fat binary' exit 1 # Early exit if not a fat binary fi @@ -1004,6 +1007,7 @@ case "$COMMAND" in exit 0 fi done + echo 'Error: Built library does not contain bitcode' exit 1 ;; diff --git a/Pods/Realm/core/librealmcore-ios.a b/Pods/Realm/core/librealmcore-ios.a index 2731de8..a778338 100644 Binary files a/Pods/Realm/core/librealmcore-ios.a and b/Pods/Realm/core/librealmcore-ios.a differ diff --git a/Pods/Realm/include/core/realm/group.hpp b/Pods/Realm/include/core/realm/group.hpp index 3e79e19..da07837 100644 --- a/Pods/Realm/include/core/realm/group.hpp +++ b/Pods/Realm/include/core/realm/group.hpp @@ -1119,8 +1119,15 @@ inline void Group::set_history_parent(Array& history_root) noexcept class Group::TableWriter { public: + struct HistoryInfo { + ref_type ref = 0; + int type = 0; + int version = 0; + }; + virtual ref_type write_names(_impl::OutputStream&) = 0; virtual ref_type write_tables(_impl::OutputStream&) = 0; + virtual HistoryInfo write_history(_impl::OutputStream&) = 0; virtual ~TableWriter() noexcept { } diff --git a/Pods/Realm/include/core/realm/impl/clamped_hex_dump.hpp b/Pods/Realm/include/core/realm/impl/clamped_hex_dump.hpp index 06335d1..353e546 100644 --- a/Pods/Realm/include/core/realm/impl/clamped_hex_dump.hpp +++ b/Pods/Realm/include/core/realm/impl/clamped_hex_dump.hpp @@ -29,10 +29,9 @@ namespace _impl { /// Limit the amount of dumped data to 1024 bytes. For use in connection with /// logging. -inline std::string clamped_hex_dump(BinaryData blob) +inline std::string clamped_hex_dump(BinaryData blob, std::size_t max_size = 1024) { bool was_clipped = false; - std::size_t max_size = 1024; std::size_t size_2 = blob.size(); if (size_2 > max_size) { size_2 = max_size; diff --git a/Pods/Realm/include/core/realm/impl/clock.hpp b/Pods/Realm/include/core/realm/impl/clock.hpp new file mode 100644 index 0000000..fdf8aa3 --- /dev/null +++ b/Pods/Realm/include/core/realm/impl/clock.hpp @@ -0,0 +1,54 @@ +/************************************************************************* + * + * REALM CONFIDENTIAL + * __________________ + * + * [2011] - [2015] Realm Inc + * All Rights Reserved. + * + * NOTICE: All information contained herein is, and remains + * the property of Realm Incorporated and its suppliers, + * if any. The intellectual and technical concepts contained + * herein are proprietary to Realm Incorporated + * and its suppliers and may be covered by U.S. and Foreign Patents, + * patents in process, and are protected by trade secret or copyright law. + * Dissemination of this information or reproduction of this material + * is strictly forbidden unless prior written permission is obtained + * from Realm Incorporated. + * + **************************************************************************/ + +#ifndef REALM_IMPL_CLOCK_HPP +#define REALM_IMPL_CLOCK_HPP + +#include +#include + +#include + +namespace realm { +namespace _impl { + +inline sync::milliseconds_type realtime_clock_now() noexcept +{ + using clock = std::chrono::system_clock; + auto time_since_epoch = clock::now().time_since_epoch(); + auto millis_since_epoch = + std::chrono::duration_cast(time_since_epoch).count(); + return sync::milliseconds_type(millis_since_epoch); +} + + +inline sync::milliseconds_type monotonic_clock_now() noexcept +{ + using clock = std::chrono::steady_clock; + auto time_since_epoch = clock::now().time_since_epoch(); + auto millis_since_epoch = + std::chrono::duration_cast(time_since_epoch).count(); + return sync::milliseconds_type(millis_since_epoch); +} + +} // namespace _impl +} // namespace realm + +#endif // REALM_IMPL_CLOCK_HPP diff --git a/Pods/Realm/include/core/realm/parser/collection_operator_expression.hpp b/Pods/Realm/include/core/realm/parser/collection_operator_expression.hpp index 6575b30..4edd5c2 100644 --- a/Pods/Realm/include/core/realm/parser/collection_operator_expression.hpp +++ b/Pods/Realm/include/core/realm/parser/collection_operator_expression.hpp @@ -48,7 +48,8 @@ struct CollectionOperatorExpression const bool requires_suffix_path = !(OpType == parser::Expression::KeyPathOp::SizeString || OpType == parser::Expression::KeyPathOp::SizeBinary - || OpType == parser::Expression::KeyPathOp::Count); + || OpType == parser::Expression::KeyPathOp::Count + || OpType == parser::Expression::KeyPathOp::BacklinkCount); if (requires_suffix_path) { Table* pre_link_table = pe.table_getter(); @@ -88,7 +89,9 @@ struct CollectionOperatorExpression post_link_col_type = element.col_type; } else { // !requires_suffix_path - post_link_col_type = pe.get_dest_type(); + if (!pe.link_chain.empty()) { + post_link_col_type = pe.get_dest_type(); + } realm_precondition(suffix_path.empty(), util::format("An extraneous property '%1' was found for operation '%2'", @@ -181,6 +184,26 @@ struct CollectionOperatorGetter +struct CollectionOperatorGetter::value> >{ + static BacklinkCount convert(const CollectionOperatorExpression& expr) + { + if (expr.pe.link_chain.empty() || expr.pe.get_dest_ndx() == realm::npos) { + // here we are operating on the current table from a "@links.@count" query with no link keypath prefix + return expr.table_getter()->template get_backlink_count(); + } else { + if (expr.pe.dest_type_is_backlink()) { + return expr.table_getter()->template column(*expr.pe.get_dest_table(), expr.pe.get_dest_ndx()).template backlink_count(); + } else { + return expr.table_getter()->template column(expr.pe.get_dest_ndx()).template backlink_count(); + } + } + } +}; + + template <> struct CollectionOperatorGetter{ static SizeOperator > convert(const CollectionOperatorExpression& expr) diff --git a/Pods/Realm/include/core/realm/parser/expression_container.hpp b/Pods/Realm/include/core/realm/parser/expression_container.hpp index a9ee9d6..7e596b9 100644 --- a/Pods/Realm/include/core/realm/parser/expression_container.hpp +++ b/Pods/Realm/include/core/realm/parser/expression_container.hpp @@ -45,6 +45,7 @@ public: CollectionOperatorExpression& get_sum(); CollectionOperatorExpression& get_avg(); CollectionOperatorExpression& get_count(); + CollectionOperatorExpression& get_backlink_count(); CollectionOperatorExpression& get_size_string(); CollectionOperatorExpression& get_size_binary(); SubqueryExpression& get_subexpression(); @@ -63,6 +64,7 @@ public: exp_OpCount, exp_OpSizeString, exp_OpSizeBinary, + exp_OpBacklinkCount, exp_SubQuery }; diff --git a/Pods/Realm/include/core/realm/parser/keypath_mapping.hpp b/Pods/Realm/include/core/realm/parser/keypath_mapping.hpp index 20c0f9b..ef71d8d 100644 --- a/Pods/Realm/include/core/realm/parser/keypath_mapping.hpp +++ b/Pods/Realm/include/core/realm/parser/keypath_mapping.hpp @@ -61,9 +61,11 @@ public: bool has_mapping(ConstTableRef table, std::string name); KeyPathElement process_next_path(ConstTableRef table, KeyPath& path, size_t& index); void set_allow_backlinks(bool allow); + void set_backlink_class_prefix(std::string prefix); static Table* table_getter(TableRef table, const std::vector& links); protected: bool m_allow_backlinks; + std::string m_backlink_class_prefix; std::unordered_map, std::string, TableAndColHash> m_mapping; }; diff --git a/Pods/Realm/include/core/realm/parser/parser.hpp b/Pods/Realm/include/core/realm/parser/parser.hpp index abaf38f..ef3c64a 100644 --- a/Pods/Realm/include/core/realm/parser/parser.hpp +++ b/Pods/Realm/include/core/realm/parser/parser.hpp @@ -32,7 +32,7 @@ struct Predicate; struct Expression { enum class Type { None, Number, String, KeyPath, Argument, True, False, Null, Timestamp, Base64, SubQuery } type; - enum class KeyPathOp { None, Min, Max, Avg, Sum, Count, SizeString, SizeBinary } collection_op; + enum class KeyPathOp { None, Min, Max, Avg, Sum, Count, SizeString, SizeBinary, BacklinkCount } collection_op; std::string s; std::vector time_inputs; std::string op_suffix; diff --git a/Pods/Realm/include/core/realm/query_expression.hpp b/Pods/Realm/include/core/realm/query_expression.hpp index 29a63de..99ffb7d 100644 --- a/Pods/Realm/include/core/realm/query_expression.hpp +++ b/Pods/Realm/include/core/realm/query_expression.hpp @@ -343,26 +343,10 @@ struct RowIndex { { return !(*this == other); } - template - friend std::basic_ostream& operator<<(std::basic_ostream&, const RowIndex&); - private: util::Optional m_row_index; }; -template -inline std::basic_ostream& operator<<(std::basic_ostream& out, const RowIndex& r) -{ - if (!r.is_attached()) { - out << "detached row"; - } else if (r.is_null()) { - out << "null row"; - } else { - out << r.m_row_index; - } - return out; -} - struct ValueBase { static const size_t default_size = 8; virtual void export_bool(ValueBase& destination) const = 0; @@ -1767,6 +1751,27 @@ struct CountLinks : public LinkMapFunction { size_t m_link_count = 0; }; +struct CountBacklinks : public LinkMapFunction { + CountBacklinks(const Table* t) + : m_table(t) + { + } + + bool consume(size_t row_index) override + { + m_link_count += m_table->get_backlink_count(row_index); + return true; + } + + size_t result() const + { + return m_link_count; + } + + const Table* m_table; + size_t m_link_count = 0; +}; + /* The LinkMap and LinkMapFunction classes are used for query conditions on links themselves (contrary to conditions on @@ -1883,6 +1888,13 @@ public: return counter.result(); } + size_t count_all_backlinks(size_t row) + { + CountBacklinks counter(target_table()); + map_links(row, counter); + return counter.result(); + } + void map_links(size_t row, LinkMapFunction& lm) { map_links(0, row, lm); @@ -2353,6 +2365,71 @@ private: LinkMap m_link_map; }; +// Gives a count of all backlinks across all columns for the specified row. +// The unused template parameter is a hack to avoid a circular dependency between table.hpp and query_expression.hpp. +template +class BacklinkCount : public Subexpr2 { +public: + BacklinkCount(LinkMap link_map) + : m_link_map(std::move(link_map)) + { + } + BacklinkCount(const Table* table, std::vector links = {}) + : m_link_map(table, std::move(links)) + { + } + BacklinkCount(BacklinkCount const& other, QueryNodeHandoverPatches* patches) + : Subexpr2(other) + , m_link_map(other.m_link_map, patches) + { + } + + std::unique_ptr clone(QueryNodeHandoverPatches* patches) const override + { + return make_subexpr >(*this, patches); + } + + const Table* get_base_table() const override + { + return m_link_map.base_table(); + } + + void set_base_table(const Table* table) override + { + m_link_map.set_base_table(table); + } + + void verify_column() const override + { + m_link_map.verify_columns(); + } + + void evaluate(size_t index, ValueBase& destination) override + { + size_t count; + if (m_link_map.links_exist()) { + count = m_link_map.count_all_backlinks(index); + } + else { + count = m_link_map.target_table()->get_backlink_count(index); + } + destination.import(Value(false, 1, count)); + } + + virtual std::string description(util::serializer::SerialisationState& state) const override + { + std::string s; + if (m_link_map.links_exist()) { + s += state.describe_columns(m_link_map, realm::npos) + util::serializer::value_separator; + } + s += "@links.@count"; + return s; + } +private: + LinkMap m_link_map; +}; + + template class SizeOperator : public Subexpr2 { public: @@ -2537,6 +2614,12 @@ public: return LinkCount(m_link_map); } + template + BacklinkCount backlink_count() const + { + return BacklinkCount(m_link_map); + } + template SubColumns column(size_t column_ndx) const { diff --git a/Pods/Realm/include/core/realm/sync/client.hpp b/Pods/Realm/include/core/realm/sync/client.hpp index 5cdcb8e..fb1f828 100644 --- a/Pods/Realm/include/core/realm/sync/client.hpp +++ b/Pods/Realm/include/core/realm/sync/client.hpp @@ -20,7 +20,8 @@ #ifndef REALM_SYNC_CLIENT_HPP #define REALM_SYNC_CLIENT_HPP -#include +#include +#include #include #include #include @@ -60,10 +61,17 @@ public: testing }; - static constexpr std::uint_fast64_t default_connection_linger_time_ms = 30000; // 30 seconds - static constexpr std::uint_fast64_t default_ping_keepalive_period_ms = 600000; // 10 minutes - static constexpr std::uint_fast64_t default_pong_keepalive_timeout_ms = 300000; // 5 minutes - static constexpr std::uint_fast64_t default_pong_urgent_timeout_ms = 5000; // 5 seconds + using RoundtripTimeHandler = void(milliseconds_type roundtrip_time); + + // FIXME: The default values for `connect_timeout`, `ping_keepalive_period`, + // and `pong_keepalive_timeout` ought to be much lower (2 minutes, 1 minute, + // and 2 minutes) than they are. Their current values are due to the fact + // that the server is single threaded, and that some operations take more + // than 5 minutes to complete. + static constexpr milliseconds_type default_connect_timeout = 600000; // 10 minutes + static constexpr milliseconds_type default_connection_linger_time = 30000; // 30 seconds + static constexpr milliseconds_type default_ping_keepalive_period = 600000; // 10 minutes + static constexpr milliseconds_type default_pong_keepalive_timeout = 600000; // 10 minutes struct Config { Config() {} @@ -109,6 +117,12 @@ public: /// \sa make_client_history(), TrivialChangesetCooker. std::shared_ptr changeset_cooker; + /// The maximum number of milliseconds to allow for a connection to + /// become fully established. This includes the time to resolve the + /// network address, the TCP connect operation, the SSL handshake, and + /// the WebSocket handshake. + milliseconds_type connect_timeout = default_connect_timeout; + /// The number of milliseconds to keep a connection open after all /// sessions have been abandoned (or suspended by errors). /// @@ -119,16 +133,23 @@ public: /// If the connection gets closed due to an error before the linger time /// expires, the connection will be kept closed until there are sessions /// willing to use it again. - std::uint_fast64_t connection_linger_time_ms = default_connection_linger_time_ms; + milliseconds_type connection_linger_time = default_connection_linger_time; - /// The number of ms between periodic keep-alive pings. - std::uint_fast64_t ping_keepalive_period_ms = default_ping_keepalive_period_ms; + /// The client will send PING messages periodically to allow the server + /// to detect dead connections (heartbeat). This parameter specifies the + /// time, in milliseconds, between these PING messages. When scheduling + /// the next PING message, the client will deduct a small random amount + /// from the specified value to help spread the load on the server from + /// many clients. + milliseconds_type ping_keepalive_period = default_ping_keepalive_period; - /// The number of ms to wait for keep-alive pongs. - std::uint_fast64_t pong_keepalive_timeout_ms = default_pong_keepalive_timeout_ms; - - /// The number of ms to wait for urgent pongs. - std::uint_fast64_t pong_urgent_timeout_ms = default_pong_urgent_timeout_ms; + /// Whenever the server receives a PING message, it is supposed to + /// respond with a PONG messsage to allow the client to detect dead + /// connections (heartbeat). This parameter specifies the time, in + /// milliseconds, that the client will wait for the PONG response + /// message before it assumes that the connection is dead, and + /// terminates it. + milliseconds_type pong_keepalive_timeout = default_pong_keepalive_timeout; /// If enable_upload_log_compaction is true, every changeset will be /// compacted before it is uploaded to the server. Compaction will @@ -143,6 +164,13 @@ public: /// decrease latencies, but possibly at the expense of scalability. Be /// sure to research the subject before you enable this option. bool tcp_no_delay = false; + + /// The specified function will be called whenever a PONG message is + /// received on any connection. The round-trip time in milliseconds will + /// be pased to the function. The specified function will always be + /// called by the client's event loop thread, i.e., the thread that + /// calls `Client::run()`. This feature is mainly for testing purposes. + std::function roundtrip_time_handler; }; /// \throw util::EventLoop::Implementation::NotAvailable if no event loop @@ -941,6 +969,8 @@ enum class Client::Error { pong_timeout = 118, ///< Timeout on reception of PONG respone message bad_client_file_ident_salt = 119, ///< Bad client file identifier salt (IDENT) bad_file_ident = 120, ///< Bad file identifier (ALLOC) + connect_timeout = 121, ///< Sync connection was not fully established in time + bad_timestamp = 122, ///< Bad timestamp (PONG) }; const std::error_category& client_error_category() noexcept; diff --git a/Pods/Realm/include/core/realm/sync/metrics.hpp b/Pods/Realm/include/core/realm/sync/metrics.hpp deleted file mode 100644 index 96beea2..0000000 --- a/Pods/Realm/include/core/realm/sync/metrics.hpp +++ /dev/null @@ -1,105 +0,0 @@ -/************************************************************************* - * - * REALM CONFIDENTIAL - * __________________ - * - * [2011] - [2012] Realm Inc - * All Rights Reserved. - * - * NOTICE: All information contained herein is, and remains - * the property of Realm Incorporated and its suppliers, - * if any. The intellectual and technical concepts contained - * herein are proprietary to Realm Incorporated - * and its suppliers and may be covered by U.S. and Foreign Patents, - * patents in process, and are protected by trade secret or copyright law. - * Dissemination of this information or reproduction of this material - * is strictly forbidden unless prior written permission is obtained - * from Realm Incorporated. - * - **************************************************************************/ -#ifndef REALM_SYNC_METRICS_HPP -#define REALM_SYNC_METRICS_HPP - -#if REALM_HAVE_DOGLESS -# include -#endif - -namespace realm { -namespace sync { - -// FIXME: Consider adding support for specification of sample rate. The Dogless -// API already supports this. -class Metrics { -public: - /// Increment the counter identified by the specified key. - virtual void increment(const char* key, int value = 1) = 0; - - /// Send the timing identified by the specified key. - virtual void timing(const char* key, double value) = 0; - - /// Set value of the guage identified by the specified key. - virtual void gauge(const char* key, double value) = 0; - - /// Add the specified value to the guage identified by the specified - /// key. The value is allowed to be negative. - virtual void gauge_relative(const char* key, double value) = 0; - - /// Allow the dogless library to send each metric to multiple endpoints, as - /// required - virtual void add_endpoint(const std::string& endpoint) = 0; - - virtual ~Metrics() {} -}; - -#if REALM_HAVE_DOGLESS - -class DoglessMetrics: public sync::Metrics { -public: - DoglessMetrics(): - m_dogless(dogless::hostname_prefix("realm")) // Throws - { - m_dogless.loop_interval(1); - } - - void increment(const char* key, int value = 1) override - { - const char* metric = key; - m_dogless.increment(metric, value); // Throws - } - - void timing(const char* key, double value) override - { - const char* metric = key; - m_dogless.timing(metric, value); // Throws - } - - void gauge(const char* key, double value) override - { - const char* metric = key; - m_gauges[key] = value; - m_dogless.gauge(metric, m_gauges[key]); // Throws - } - - void gauge_relative(const char* key, double value) override - { - const char* metric = key; - m_gauges[key] += value; - m_dogless.gauge(metric, m_gauges[key]); // Throws - } - - void add_endpoint(const std::string& endpoint) override - { - m_dogless.add_endpoint(endpoint); - } - -private: - dogless::BufferedStatsd m_dogless; - std::map m_gauges; -}; - -#endif - -} // namespace sync -} // namespace realm - -#endif // REALM_SYNC_METRICS_HPP diff --git a/Pods/Realm/include/core/realm/sync/protocol.hpp b/Pods/Realm/include/core/realm/sync/protocol.hpp index 7f2de08..9b184d2 100644 --- a/Pods/Realm/include/core/realm/sync/protocol.hpp +++ b/Pods/Realm/include/core/realm/sync/protocol.hpp @@ -133,7 +133,7 @@ using salt_type = std::int_fast64_t; using timestamp_type = std::uint_fast64_t; using session_ident_type = std::uint_fast64_t; using request_ident_type = std::uint_fast64_t; - +using milliseconds_type = std::int_fast64_t; constexpr file_ident_type get_max_file_ident() { diff --git a/Pods/Realm/include/core/realm/sync/server.hpp b/Pods/Realm/include/core/realm/sync/server.hpp deleted file mode 100644 index bfbd20c..0000000 --- a/Pods/Realm/include/core/realm/sync/server.hpp +++ /dev/null @@ -1,381 +0,0 @@ -/************************************************************************* - * - * REALM CONFIDENTIAL - * __________________ - * - * [2011] - [2012] Realm Inc - * All Rights Reserved. - * - * NOTICE: All information contained herein is, and remains - * the property of Realm Incorporated and its suppliers, - * if any. The intellectual and technical concepts contained - * herein are proprietary to Realm Incorporated - * and its suppliers and may be covered by U.S. and Foreign Patents, - * patents in process, and are protected by trade secret or copyright law. - * Dissemination of this information or reproduction of this material - * is strictly forbidden unless prior written permission is obtained - * from Realm Incorporated. - * - **************************************************************************/ -#ifndef REALM_SYNC_SERVER_HPP -#define REALM_SYNC_SERVER_HPP - -#include -#include -#include - -#include -#include -#include -#include -#include -#include - -namespace realm { -namespace sync { - -class Server { -public: - class TokenExpirationClock; - - /// See Config::backup_mode. - enum class BackupMode { - Disabled, - MasterWithAsynchronousSlave, - MasterWithSynchronousSlave, - Slave - }; - - using ReconnectMode = Client::ReconnectMode; - - struct Config { - Config() {} - - /// The maximum number of Realm files that will be kept open - /// concurrently by this server. The server keeps a cache of open Realm - /// files for efficiency reasons. - long max_open_files = 256; - - /// An optional custom clock to be used for token expiration checks. If - /// no clock is specified, the server will use the system clock. - TokenExpirationClock* token_expiration_clock = nullptr; - - /// An optional logger to be used by the server. If no logger is - /// specified, the server will use an instance of util::StderrLogger - /// with the log level threshold set to util::Logger::Level::info. The - /// server does not require a thread-safe logger, and it guarantees that - /// all logging happens on behalf of start() and run() (which are not - /// allowed to execute concurrently). - util::Logger* logger = nullptr; - - /// An optional sink for recording metrics about the internal operation - /// of the server. For the list of counters and gauges see - /// "doc/monitoring.md". - Metrics* metrics = nullptr; - - /// A unique id of this server. Used in the backup protocol to tell - /// slaves apart. - std::string id = "unknown"; - - /// The address at which the listening socket is bound. - /// The address can be a name or on numerical form. - /// Use "localhost" to listen on the loopback interface. - std::string listen_address; - - /// The port at which the listening socket is bound. - /// The port can be a name or on numerical form. - /// Use the empty string to have the system assign a dynamic - /// listening port. - std::string listen_port; - - bool reuse_address = true; - - /// authorization_header_name sets the name of the HTTP header used to - /// receive the Realm access token. The value of the HTTP header is - /// "Realm-Access-Token version=1 token=....". - std::string authorization_header_name = "Authorization"; - - /// The listening socket accepts TLS/SSL connections if `ssl` is - /// true, and non-secure tcp connections otherwise. - bool ssl = false; - - /// The path of the certificate that will be sent to clients during - /// the SSL/TLS handshake. - /// - /// From the point of view of OpenSSL, this file will be passed to - /// `SSL_CTX_use_certificate_chain_file()`. - /// - /// This option is ignore if `ssl` is false. - std::string ssl_certificate_path; - - /// The path of the private key corresponding to the certificate. - /// - /// From the point of view of OpenSSL, this file will be passed to - /// `SSL_CTX_use_PrivateKey_file()`. - /// - /// This option is ignored if `ssl` is false. - std::string ssl_certificate_key_path; - - // A connection which has not been sending any messages or pings for - // `idle_timeout_ms` is considered dead and will be dropped by the server. - uint_fast64_t idle_timeout_ms = 1800000; // 30 minutes - - // How often the server scans through the connection list to drop idle ones. - uint_fast64_t drop_period_ms = 60000; // 1 minute - - /// \brief The backup mode of the Sync worker. - /// - /// `Disabled` is a standard Sync worker without backup. If a backup - /// slave attempts to contact a server in this mode, the slave will be - /// rejected. - /// - /// `MasterWithAsynchronousSlave` represents a Sync worker that operates - /// independently of a backup slave. If a slave connects to the - /// MasterAsynchronousSlave server, the server will accept the - /// connection and send backup information to the slave. This type of - /// master server will never wait for the slave, however. - /// - /// `MasterWithSynchronousSlave` represents a Sync worker that works in - /// coordination with a slave. The master will send all updates to the - /// slave and wait for acknowledgment before the master sends its own - /// acknowledgment to the clients. This mode of operation is the safest - /// type of backup, but it generally will have higher latency than the - /// previous two types of server. - /// - /// `Slave` represents a backup server. A slave is used to backup a - /// master. The slave connects to the master and reconnects in case a - /// network fallout. The slave receives updates from the master and - /// acknowledges them. A slave rejects all connections from Sync - /// clients. - BackupMode backup_mode = BackupMode::Disabled; - - /// @{ \brief Adress of master sync work. - /// - /// master_address and master_port are only meaningful in Slave mode. - /// The parameters represent the address of the master from which this - /// slave obtains Realm updates. - std::string master_address; - std::string master_port; - /// @} - - /// @{ \brief SSL for master slave communication. - /// - /// The master and slave communicate over a SSL connection if - /// master_slave_ssl is set to true(default = false). The certificate of the - /// master is verified if master_verify_ssl_certificate is set to true. - /// The certificate verification attempts to use the default trust store of the - /// instance if master_ssl_trust_certificate_path is none(default), otherwise - /// the certificate at the master_ssl_trust_certificate_path is used for - /// verification. - bool master_slave_ssl = false; - bool master_verify_ssl_certificate = true; - util::Optional master_ssl_trust_certificate_path = util::none; - /// @} - - /// A master Sync server will only accept a backup connection from a slave - /// that can present the correct master_slave_shared_secret. - /// The configuration of the master and the slave must contain the same - /// secret string. - /// The secret is sent in a HTTP header and must be a valid HTTP header value. - std::string master_slave_shared_secret = "replace-this-string-with-a-secret"; - - /// A callback which gets called by the backup master every time the slave - /// changes its status to up-to-date or back. The arguments carry the - /// slave's id (string) and its up-to-dateness state (bool). - std::function slave_status_callback; - - /// The feature token is used by the server to gate access to various - /// features. - util::Optional feature_token; - - /// The server can try to eliminate redundant instructions from - /// changesets before sending them to clients, minimizing download sizes - /// at the expense of server CPU usage. - bool enable_download_log_compaction = true; - - /// The accumulated size of changesets that are included in download - /// messages. The size of the changesets is calculated before log - /// compaction (if enabled). A larger value leads to more efficient - /// log compaction and download, at the expense of higher memory pressure, - /// higher latency for sending the first changeset, and a higher probability - /// for the need to resend the same changes after network disconnects. - size_t max_download_size = 0x1000000; // 16 MiB - - /// The maximum number of connections that can be queued up waiting to - /// be accepted by the server. This corresponds to the `backlog` - /// argument of the `listen()` function as described by POSIX. - /// - /// On Linux, the specified value will be clamped to the value of the - /// kernel parameter `net.core.somaxconn` (also available as - /// `/proc/sys/net/core/somaxconn`). You can change the value of that - /// parameter using `sysctl -w net.core.somaxconn=...`. It is usually - /// 128 by default. - int listen_backlog = util::network::Acceptor::max_connections; - - /// Set the `TCP_NODELAY` option on all TCP/IP sockets. This disables - /// the Nagle algorithm. Disabling it, can in some cases be used to - /// decrease latencies, but possibly at the expense of scalability. Be - /// sure to research the subject before you enable this option. - bool tcp_no_delay = false; - - /// \brief Set to true if, and only if this server is a subtier node in - /// a star topology server cluster. - /// - /// In a star topology server cluster, the root node must set this flag - /// to false. Subtier nodes must set it to true, because they need to - /// relay requests for new client file identifiers to the upstream - /// server. - /// - /// Local Realm files will be initialized according to this setting, and - /// once initialized, they can only work with that setting. It is - /// therefore not possible to change this setting without deleting all - /// the local Realm files. - bool is_subtier_server = false; - - /// \brief URL of upstream server in star topology server cluster. - /// - /// A 2nd tier node should specify the URL of the root node here. When - /// the upstream URL is specified, the \ref upstream_access_token must - /// also be specified. The path component of the URL should always be - /// exactly `/realm-sync`. - /// - /// If \ref is_subtier_server is true, and the upstream URL is not - /// specified, the server will not synchronize with an upstream server, - /// and will not be able to allocate new client file identifiers. If - /// \ref is_subtier_server is false, this setting is ignored. - std::string upstream_url; - - /// The signed access token to be used for the connection to the - /// upstream server. This token must be an admin token, i.e., one that - /// grants access to all Realm files on the upstream server. Structure - /// and cryptographic signing follows the same scheme as for - /// Session::Config::signed_user_token. - /// - /// If \ref is_subtier_server is false, this setting is ignored. - std::string upstream_access_token; - - /// For testing purposes only. - ReconnectMode upstream_reconnect_mode = ReconnectMode::normal; - - /// Same as Client::Config::connection_linger_time_ms, and applies to - /// upstream connection. - std::uint_fast64_t upstream_connection_linger_time_ms = - Client::default_connection_linger_time_ms; - - /// Same as Client::Config::ping_keepalive_period_ms, and applies to - /// upstream connection. - std::uint_fast64_t upstream_ping_keepalive_period_ms = - Client::default_ping_keepalive_period_ms; - - /// Same as Client::Config::pong_keepalive_timeout_ms, and applies to - /// upstream connection. - std::uint_fast64_t upstream_pong_keepalive_timeout_ms = - Client::default_pong_keepalive_timeout_ms; - - /// Same as Client::Config::pong_urgent_timeout_ms, and applies to - /// upstream connection. - std::uint_fast64_t upstream_pong_urgent_timeout_ms = - Client::default_pong_urgent_timeout_ms; - - /// Same as `tcp_no_delay` but for connection to upstream server. - bool upstream_tcp_no_delay = false; - - /// Same as Client::Config::enable_default_port_hack, and applies to - /// upstream connection. - bool upstream_enable_default_port_hack = true; - - /// Opposite of Client::Config::enable_upload_log_compaction, and - /// applies to upstream connection. - bool upstream_disable_upload_compaction = false; - }; - - Server(const std::string& root_dir, util::Optional public_key, Config = {}); - Server(Server&&) noexcept; - ~Server() noexcept; - - /// start() binds a listening socket to the address and port specified in - /// Config and starts accepting connections. - /// The resolved endpoint (including the dynamically assigned port, if requested) - /// can be obtained by calling listen_endpoint(). - /// This can be done immediately after start() returns. - void start(); - - /// A helper function, for backwards compatibility, that starts a listening - /// socket without SSL at the specified address and port. - void start(const std::string& listen_address, - const std::string& listen_port, - bool reuse_address = true); - - /// Return the resolved and bound endpoint of the listening socket. - util::network::Endpoint listen_endpoint() const; - - /// Run the internal event-loop of the server. At most one thread may - /// execute run() at any given time. It is an error if run() is called - /// before start() has been successfully executed. The call to run() will - /// not return until somebody calls stop(). - void run(); - - /// Stop any thread that is currently executing run(). This function may be - /// called by any thread. - void stop() noexcept; - - /// Must not be called while run() is executing. - uint_fast64_t errors_seen() const noexcept; - - /// A connection which has not been sending any messages or pings for - /// `idle_timeout_ms` is considered idle and will be dropped by the server. - void set_idle_timeout_ms(uint_fast64_t idle_timeout_ms); - - /// Close all connections with error code ProtocolError::connection_closed. - /// - /// This function exists mainly for debugging purposes. - void close_connections(); - - /// Map the specified virtual Realm path to a real file system path. The - /// returned path will be absolute if, and only if the root directory path - /// passed to the server constructor was absolute. - /// - /// If the specified virtual path is valid, this function assigns the - /// corresponding file system path to `real_path` and returns - /// true. Otherwise it returns false. - /// - /// This function is fully thread-safe and may be called at any time during - /// the life of the server object. - bool map_virtual_to_real_path(const std::string& virt_path, std::string& real_path); - - /// Inform the server about an external change to one of the Realm files - /// managed by the server. - /// - /// This function is fully thread-safe and may be called at any time during - /// the life of the server object. - void recognize_external_change(const std::string& virt_path); - - // @{ - /// These return true if the wait operation completed, and false if the wait - /// operation was aborted due to the server's event loop being stopped. - /// - /// These functions are fully thread-safe and may be called at any time during - /// the life of the server object. - bool wait_for_upstream_upload_completion(); - bool wait_for_upstream_download_completion(); - // @} - -private: - class Implementation; - std::unique_ptr m_impl; -}; - - -class Server::TokenExpirationClock { -public: - /// Number of seconds since the Epoch. The Epoch is the epoch of - /// std::chrono::system_clock. - virtual std::int_fast64_t now() noexcept = 0; - - virtual ~TokenExpirationClock() {} -}; - -} // namespace sync -} // namespace realm - -#endif // REALM_SYNC_SERVER_HPP diff --git a/Pods/Realm/include/core/realm/sync/server_configuration.hpp b/Pods/Realm/include/core/realm/sync/server_configuration.hpp deleted file mode 100644 index 8ffb511..0000000 --- a/Pods/Realm/include/core/realm/sync/server_configuration.hpp +++ /dev/null @@ -1,99 +0,0 @@ -/************************************************************************* - * - * REALM CONFIDENTIAL - * __________________ - * - * [2011] - [2015] Realm Inc - * All Rights Reserved. - * - * NOTICE: All information contained herein is, and remains - * the property of Realm Incorporated and its suppliers, - * if any. The intellectual and technical concepts contained - * herein are proprietary to Realm Incorporated - * and its suppliers and may be covered by U.S. and Foreign Patents, - * patents in process, and are protected by trade secret or copyright law. - * Dissemination of this information or reproduction of this material - * is strictly forbidden unless prior written permission is obtained - * from Realm Incorporated. - * - **************************************************************************/ -#ifndef REALM_SYNC_SERVER_CONFIGURATION_HPP -#define REALM_SYNC_SERVER_CONFIGURATION_HPP - -#include - -// Realm headers -#include -#include -#include - -namespace realm { -namespace config { - -struct Configuration { - std::string id = ""; - std::string listen_address = "127.0.0.1"; - std::string listen_port = ""; // Empty means choose default based on `ssl`. - realm::util::Optional root_dir; - std::string user_data_dir; - realm::util::Optional public_key_path; - realm::util::Optional config_file_path; - bool reuse_address = true; - bool disable_sync = false; - realm::util::Logger::Level log_level = realm::util::Logger::Level::info; - realm::util::Optional log_path; - long max_open_files = 256; - std::string authorization_header_name = "Authorization"; - bool ssl = false; - std::string ssl_certificate_path; - std::string ssl_certificate_key_path; - std::string dashboard_stats_endpoint = "localhost:28125"; - uint_fast64_t drop_period_s = 60; // 1 minute - uint_fast64_t idle_timeout_s = 1800; // 30 minutes - sync::Server::BackupMode backup_mode = sync::Server::BackupMode::Disabled; - std::string master_address; - std::string master_port; - bool master_slave_ssl = false; - bool master_verify_ssl_certificate = true; - util::Optional master_ssl_trust_certificate_path; - std::string master_slave_shared_secret; - util::Optional feature_token; - util::Optional feature_token_path; - bool enable_download_log_compaction = true; - size_t max_download_size = 0x20000; // 128 KiB - int listen_backlog = util::network::Acceptor::max_connections; - bool tcp_no_delay = false; - bool is_subtier_server = false; - std::string upstream_url; - std::string upstream_access_token; -}; - -#if !REALM_MOBILE -void show_help(const std::string& program_name); -Configuration build_configuration(int argc, char* argv[]); -#endif -Configuration load_configuration(std::string configuration_file_path); - -} // namespace config - - -namespace sync { - -/// Initialise the directory structure as required (create missing directory -/// structure) for correct operation of the server. This function is supposed to -/// be executed prior to instantiating the \c Server object. -/// -/// Note: This function also handles migration of server-side Realm files from -/// the legacy format (see _impl::ensure_legacy_migration_1()). -/// -/// The type of migration performed by this function is nonatomic, and it -/// therefore requires that no other thread or process has any of the servers -/// Realm files open concurrently. The application is advised to make sure that -/// all agents (including the sync server), that might open server-side Realm -/// files are not started until after this function has completed sucessfully. -void prepare_server_directory(const config::Configuration&, util::Logger&); - -} // namespace sync -} // namespace realm - -#endif // REALM_SYNC_SERVER_CONFIGURATION_HPP diff --git a/Pods/Realm/include/core/realm/sync/version.hpp b/Pods/Realm/include/core/realm/sync/version.hpp index 7b9f4f3..9f95f34 100644 --- a/Pods/Realm/include/core/realm/sync/version.hpp +++ b/Pods/Realm/include/core/realm/sync/version.hpp @@ -23,8 +23,8 @@ #include #define REALM_SYNC_VER_MAJOR 3 -#define REALM_SYNC_VER_MINOR 0 -#define REALM_SYNC_VER_PATCH 1 +#define REALM_SYNC_VER_MINOR 3 +#define REALM_SYNC_VER_PATCH 0 #define REALM_SYNC_PRODUCT_NAME "realm-sync" #define REALM_SYNC_VER_STRING REALM_QUOTE(REALM_SYNC_VER_MAJOR) "." \ diff --git a/Pods/Realm/include/core/realm/table.hpp b/Pods/Realm/include/core/realm/table.hpp index d8205a5..354ba1b 100644 --- a/Pods/Realm/include/core/realm/table.hpp +++ b/Pods/Realm/include/core/realm/table.hpp @@ -41,6 +41,8 @@ namespace realm { class BacklinkColumn; +template +class BacklinkCount; class BinaryColumy; class ConstTableView; class Group; @@ -338,6 +340,9 @@ public: Columns column(size_t column); // FIXME: Should this one have been declared noexcept? template Columns column(const Table& origin, size_t origin_column_ndx); + // BacklinkCount is a total count per row and therefore not attached to a specific column + template + BacklinkCount get_backlink_count(); template SubQuery column(size_t column, Query subquery); @@ -1982,6 +1987,14 @@ inline Columns Table::column(const Table& origin, size_t origin_col_ndx) return Columns(backlink_col_ndx, this, std::move(link_chain)); } +template +inline BacklinkCount Table::get_backlink_count() +{ + std::vector link_chain = std::move(m_link_chain); + m_link_chain.clear(); + return BacklinkCount(this, std::move(link_chain)); +} + template SubQuery Table::column(size_t column_ndx, Query subquery) { diff --git a/Pods/Realm/include/core/realm/util/demangle.hpp b/Pods/Realm/include/core/realm/util/demangle.hpp new file mode 100644 index 0000000..7af4fb8 --- /dev/null +++ b/Pods/Realm/include/core/realm/util/demangle.hpp @@ -0,0 +1,54 @@ +/************************************************************************* + * + * REALM CONFIDENTIAL + * __________________ + * + * [2011] - [2015] Realm Inc + * All Rights Reserved. + * + * NOTICE: All information contained herein is, and remains + * the property of Realm Incorporated and its suppliers, + * if any. The intellectual and technical concepts contained + * herein are proprietary to Realm Incorporated + * and its suppliers and may be covered by U.S. and Foreign Patents, + * patents in process, and are protected by trade secret or copyright law. + * Dissemination of this information or reproduction of this material + * is strictly forbidden unless prior written permission is obtained + * from Realm Incorporated. + * + **************************************************************************/ +#ifndef REALM_UTIL_DEMANGLE_HPP +#define REALM_UTIL_DEMANGLE_HPP + +#include +#include + +namespace realm { +namespace util { + + +/// Demangle the specified C++ ABI identifier. +/// +/// See for example +/// http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/namespaceabi.html +std::string demangle(const std::string&); + + +/// Get the demangled name of the specified type. +template inline std::string get_type_name() +{ + return demangle(typeid(T).name()); +} + + +/// Get the demangled name of the type of the specified argument. +template inline std::string get_type_name(const T& v) +{ + return demangle(typeid(v).name()); +} + + +} // namespace util +} // namespace realm + +#endif // REALM_UTIL_DEMANGLE_HPP diff --git a/Pods/Realm/include/core/realm/util/network.hpp b/Pods/Realm/include/core/realm/util/network.hpp index b902a9e..da9fd92 100644 --- a/Pods/Realm/include/core/realm/util/network.hpp +++ b/Pods/Realm/include/core/realm/util/network.hpp @@ -470,6 +470,7 @@ public: /// set. void assign(native_handle_type fd, bool in_blocking_mode) noexcept; void close() noexcept; + native_handle_type release() noexcept; bool is_open() const noexcept; @@ -517,6 +518,7 @@ private: void add_initiated_oper(LendersIoOperPtr, Want); void do_close() noexcept; + native_handle_type do_release() noexcept; friend class IoReactor; }; @@ -698,6 +700,16 @@ public: Endpoint local_endpoint() const; Endpoint local_endpoint(std::error_code&) const; + /// Release the ownership of this socket object over the native handle and + /// return the native handle to the caller. The caller assumes ownership + /// over the returned handle. The socket is left in a closed + /// state. Incomplete asynchronous operations will be canceled as if close() + /// had been called. + /// + /// If called on a closed socket, this function is a no-op, and returns the + /// same value as would be returned by native_handle() + native_handle_type release_native_handle() noexcept; + private: enum opt_enum { opt_ReuseAddr, ///< `SOL_SOCKET`, `SO_REUSEADDR` @@ -1781,6 +1793,17 @@ inline void Service::Descriptor::close() noexcept do_close(); } +inline auto Service::Descriptor::release() noexcept -> native_handle_type +{ + REALM_ASSERT(is_open()); +#if REALM_HAVE_EPOLL || REALM_HAVE_KQUEUE + if (m_is_registered) + deregister_for_async(); + m_is_registered = false; +#endif + return do_release(); +} + inline bool Service::Descriptor::is_open() const noexcept { return (m_fd != -1); @@ -3001,6 +3024,15 @@ inline Endpoint SocketBase::local_endpoint() const return ep; } +inline auto SocketBase::release_native_handle() noexcept -> native_handle_type +{ + if (is_open()) { + cancel(); + return m_desc.release(); + } + return m_desc.native_handle(); +} + inline const StreamProtocol& SocketBase::get_protocol() const noexcept { return m_protocol; diff --git a/Pods/Realm/include/core/realm/util/resource_limits.hpp b/Pods/Realm/include/core/realm/util/resource_limits.hpp new file mode 100644 index 0000000..858624a --- /dev/null +++ b/Pods/Realm/include/core/realm/util/resource_limits.hpp @@ -0,0 +1,83 @@ +/************************************************************************* + * + * REALM CONFIDENTIAL + * __________________ + * + * [2011] - [2015] Realm Inc + * All Rights Reserved. + * + * NOTICE: All information contained herein is, and remains + * the property of Realm Incorporated and its suppliers, + * if any. The intellectual and technical concepts contained + * herein are proprietary to Realm Incorporated + * and its suppliers and may be covered by U.S. and Foreign Patents, + * patents in process, and are protected by trade secret or copyright law. + * Dissemination of this information or reproduction of this material + * is strictly forbidden unless prior written permission is obtained + * from Realm Incorporated. + * + **************************************************************************/ +#ifndef REALM_UTIL_RESOURCE_LIMITS_HPP +#define REALM_UTIL_RESOURCE_LIMITS_HPP + +namespace realm { +namespace util { + + +enum class Resource { + /// The maximum size, in bytes, of the core file produced when the memory + /// image of this process is dumped. If the memory image is larger than the + /// limit, the core file will not be created. Same as `RLIMIT_CORE` of + /// POSIX. + core_dump_size, + + /// The maximum CPU time, in seconds, available to this process. If the + /// limit is exceeded, the process will be killed. Same as `RLIMIT_CPU` of + /// POSIX. + cpu_time, + + /// The maximum size, in bytes, of the data segment of this process. If the + /// limit is exceede, std::malloc() will fail with `errno` equal to + /// `ENOMEM`. Same as `RLIMIT_DATA` of POSIX. + data_segment_size, + + /// The maximum size, in bytes, of a file that is modified by this + /// process. If the limit is exceede, the process will be killed. Same as + /// `RLIMIT_FSIZE` of POSIX. + file_size, + + /// One plus the maximum file descriptor value that can be opened by this + /// process. Same as `RLIMIT_NOFILE` of POSIX. + num_open_files, + + /// The maximum size, in bytes, of the stack of the main thread of this + /// process. If the limit is exceede, the process is killed. Same as + /// `RLIMIT_STACK` of POSIX. + stack_size, + + /// The maximum size, in bytes, of the process's virtual memory (address + /// space). If the limit is exceeded due to heap allocation, std::malloc() + /// will fail with `errno` equal to `ENOMEM`. If the limit is exceeded due + /// to explicit memory mapping, mmap() will fail with `errno` equal to + /// `ENOMEM`. If the limit is exceeded due to stack expansion, the process + /// will be killed. Same as `RLIMIT_AS` of POSIX. + virtual_memory_size +}; + + +bool system_has_rlimit(Resource) noexcept; + + +//@{ +/// Get or set resouce limits. A negative value means 'unlimited', both when +/// getting and when setting. +long get_hard_rlimit(Resource); +long get_soft_rlimit(Resource); +void set_soft_rlimit(Resource, long value); +//@} + + +} // namespace util +} // namespace realm + +#endif // REALM_UTIL_RESOURCE_LIMITS_HPP diff --git a/Pods/Realm/include/core/realm/util/serializer.hpp b/Pods/Realm/include/core/realm/util/serializer.hpp index ff56f13..ff8f41b 100644 --- a/Pods/Realm/include/core/realm/util/serializer.hpp +++ b/Pods/Realm/include/core/realm/util/serializer.hpp @@ -30,6 +30,7 @@ namespace realm { class BinaryData; struct null; +struct RowIndex; class StringData; class Timestamp; class LinkMap; @@ -53,6 +54,7 @@ template <> std::string print_value<>(bool); template <> std::string print_value<>(realm::null); template <> std::string print_value<>(StringData); template <> std::string print_value<>(realm::Timestamp); +template <> std::string print_value<>(realm::RowIndex); // General implementation for most types template diff --git a/Pods/Realm/include/core/realm/version.hpp b/Pods/Realm/include/core/realm/version.hpp index 88d747d..697581c 100644 --- a/Pods/Realm/include/core/realm/version.hpp +++ b/Pods/Realm/include/core/realm/version.hpp @@ -24,10 +24,10 @@ // Do not use `cmakedefine` here, as certain versions can be 0, which CMake // interprets as being undefined. #define REALM_VERSION_MAJOR 5 -#define REALM_VERSION_MINOR 4 -#define REALM_VERSION_PATCH 2 +#define REALM_VERSION_MINOR 6 +#define REALM_VERSION_PATCH 0 #define REALM_VERSION_EXTRA "" -#define REALM_VERSION_STRING "5.4.2" +#define REALM_VERSION_STRING "5.6.0" #define REALM_PRODUCT_NAME "realm-core" #define REALM_VER_CHUNK "[" REALM_PRODUCT_NAME "-" REALM_VERSION_STRING "]" diff --git a/Pods/Realm/include/sync/impl/sync_metadata.hpp b/Pods/Realm/include/sync/impl/sync_metadata.hpp index 22d7c0c..7414d9d 100644 --- a/Pods/Realm/include/sync/impl/sync_metadata.hpp +++ b/Pods/Realm/include/sync/impl/sync_metadata.hpp @@ -204,8 +204,8 @@ public: SyncFileActionMetadata::Action action, util::Optional new_name=none) const; - // Get the unique identifier of this client, generating one if it does not already exist. - std::string client_uuid() const; + // Get the unique identifier of this client. + const std::string& client_uuid() const { return m_client_uuid; } /// Construct the metadata manager. /// @@ -222,6 +222,7 @@ private: SyncUserMetadata::Schema m_user_schema; SyncFileActionMetadata::Schema m_file_action_schema; SyncClientMetadata::Schema m_client_schema; + std::string m_client_uuid; }; } diff --git a/Pods/Realm/include/sync/sync_session.hpp b/Pods/Realm/include/sync/sync_session.hpp index bedc3de..848440c 100644 --- a/Pods/Realm/include/sync/sync_session.hpp +++ b/Pods/Realm/include/sync/sync_session.hpp @@ -291,7 +291,7 @@ private: SyncSession(_impl::SyncClient&, std::string realm_path, SyncConfig); void handle_error(SyncError); - void cancel_pending_waits(); + void cancel_pending_waits(std::unique_lock&); enum class ShouldBackup { yes, no }; void update_error_and_mark_file_for_deletion(SyncError&, ShouldBackup); static std::string get_recovery_file_path(); diff --git a/Pods/RealmSwift/build.sh b/Pods/RealmSwift/build.sh index 0605307..79b56ac 100755 --- a/Pods/RealmSwift/build.sh +++ b/Pods/RealmSwift/build.sh @@ -980,10 +980,12 @@ case "$COMMAND" in ###################################### "binary-has-bitcode") + # Disable pipefail as grep -q will make otool fail due to exiting + # before reading all the output + set +o pipefail + BINARY="$2" - # Although grep has a '-q' flag to prevent logging to stdout, grep - # behaves differently when used, so redirect stdout to /dev/null. - if otool -l "$BINARY" | grep "segname __LLVM" > /dev/null 2>&1; then + if otool -l "$BINARY" | grep -q "segname __LLVM"; then exit 0 fi # Work around rdar://21826157 by checking for bitcode in thin binaries @@ -993,6 +995,7 @@ case "$COMMAND" in archs_array=( $archs ) if [[ ${#archs_array[@]} -lt 2 ]]; then + echo 'Error: Built library is not a fat binary' exit 1 # Early exit if not a fat binary fi @@ -1004,6 +1007,7 @@ case "$COMMAND" in exit 0 fi done + echo 'Error: Built library does not contain bitcode' exit 1 ;; diff --git a/Pods/SwiftChart/LICENSE.txt b/Pods/SwiftChart/LICENSE.txt new file mode 100644 index 0000000..1827497 --- /dev/null +++ b/Pods/SwiftChart/LICENSE.txt @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2014 Giampaolo Bellavite + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/Pods/SwiftChart/README.md b/Pods/SwiftChart/README.md new file mode 100644 index 0000000..7ae170e --- /dev/null +++ b/Pods/SwiftChart/README.md @@ -0,0 +1,401 @@ +SwiftChart +=========== + +[![Version](https://img.shields.io/cocoapods/v/SwiftChart.svg?style=flat)](http://cocoapods.org/pods/SwiftChart) +[![License](https://img.shields.io/cocoapods/l/SwiftChart.svg?style=flat)](http://cocoapods.org/pods/SwiftChart) +[![Platform](https://img.shields.io/cocoapods/p/SwiftChart.svg?style=flat)](http://cocoapods.org/pods/SwiftChart) + +A simple line and area charting library for iOS. + +* 📈 Line and area charts +* 🌞 Multiple series +* 🌒 Partially filled series +* 🏊 Works with signed `Double` +* 🖖 Touch events + +

+ + +

+ +--- +
+ Table of Content + + + +- [Getting started](#getting-started) + - [Installing SwiftChart via CocoaPods](#installing-swiftchart-via-cocoapods) + - [Installing SwiftChart manually](#installing-swiftchart-manually) + - [What’s included in SwiftChart](#whats-included-in-swiftchart) +- [How to use SwiftChart](#how-to-use-swiftchart) + - [Initialize a chart from the Interface Builder](#initialize-a-chart-from-the-interface-builder) + - [Initialize a chart programmatically](#initialize-a-chart-programmatically) + - [Adding a series to a chart](#adding-a-series-to-a-chart) + - [Using partially filled series](#using-partially-filled-series) + - [Using different colors above and below zero](#using-different-colors-above-and-below-zero) + - [Adding multiple series to a chart](#adding-multiple-series-to-a-chart) + - [Configuring touch events](#configuring-touch-events) +- [API](#api) + - [`Chart` class](#chart-class) + - [Chart options](#chart-options) + - [Public Methods](#public-methods) + - [`ChartSeries` class](#chartseries-class) + - [`ChartDelegate` protocol](#chartdelegate-protocol) + - [`ChartColors` enum](#chartcolors-enum) + - [`ChartPoint` typealias](#chartpoint-typealias) + - [`ChartLabelOrientation` enum](#chartlabelorientation-enum) +- [Common issues and solutions](#common-issues-and-solutions) + - [The chart is not showing](#the-chart-is-not-showing) +- [License](#license) + + +
+ + +# Getting started + +## Installing SwiftChart via CocoaPods + +SwiftChart is available through [CocoaPods](http://cocoapods.org). To install +it, simply add the following line to your Podfile: + +```ruby +pod "SwiftChart" +``` + +## Installing SwiftChart manually + +1. Download **SwiftChart.zip** from the [last release](https://github.com/gpbl/SwiftChart/releases/latest) and extract its content in your project's folder. +2. From the Xcode project, choose *Add Files to ...* from the *File* menu and add the extracted files. + +## What’s included in SwiftChart + +The library includes: + +- the [Chart](Source/Chart.swift#L40) main class, to initialize and configure the chart’s content, e.g. for adding series or setting up the its appearance +- the [ChartSeries](Source/ChartSeries.swift) class, for creating datasets and configure their appearance +- the [ChartDelegate](Source/Chart.swift#L10-L32) protocol, which tells other objects about the chart’s touch events +- the [ChartColor](Source/ChartColors.swift) struct, containing some predefined colors + +**Example** + +```swift +let chart = Chart() +let series = ChartSeries([0, 6, 2, 8, 4, 7, 3, 10, 8]) +series.color = ChartColors.greenColor() +chart.add(series) +``` + +To run the example project, clone the repo, and run `pod install` from the Example directory first. + +# How to use SwiftChart + +## Initialize a chart from the Interface Builder + +The chart can be initialized from the Interface Builder. Drag a normal View into a View Controller and assign to it the `Chart` Custom Class from the Identity Inspector. + +## Initialize a chart programmatically + +To initialize a chart programmatically, use the `Chart(frame: ...)` initializer, which requires a `frame`: + +```swift +let chart = Chart(frame: CGRect(x: 0, y: 0, width: 200, height: 100)) +``` + +If you prefer to use Autolayout, set the frame to `0` and add the constraints later: + +```swift +let chart = Chart(frame: CGRectZero) +// add constraints now +``` + +## Adding a series to a chart + +Initialize each series before adding them to the chart. To do so, pass an array to initialize a `ChartSeries` object: + +```swift +let chart = Chart(frame: CGRect(x: 0, y: 0, width: 200, height: 100)) +let series = ChartSeries([0, 6.5, 2, 8, 4.1, 7, -3.1, 10, 8]) +chart.add(series) +``` + +**Result:** + + + +As you can see, as default the values on the x-axis are the progressive indexes of the passed array. You can customize those values by passing an array of `(x: Double, y: Double)` tuples to the series initializer: + +```swift +let chart = Chart(frame: CGRect(x: 0, y: 0, width: 200, height: 100)) +// Create a new series specifying x and y values +let data = [ + (x: 0, y: 0), + (x: 1, y: 3.1), + (x: 4, y: 2), + (x: 5, y: 4.2), + (x: 7, y: 5), + (x: 9, y: 9), + (x: 10, y: 8) +] +let series = ChartSeries(data: data) +chart.add(series) +``` + +**Result:** + + + +## Using partially filled series + +Use the `chart.xLabels` property to make the x-axis showing more labels than those inferred from the actual data. For example, + +```swift +let chart = Chart(frame: CGRect(x: 0, y: 0, width: 200, height: 100)) +let data = [ + (x: 0, y: 0), + (x: 3, y: 2.5), + (x: 4, y: 2), + (x: 5, y: 2.3), + (x: 7, y: 3), + (x: 8, y: 2.2), + (x: 9, y: 2.5) +] +let series = ChartSeries(data: data) +series.area = true + +// Use `xLabels` to add more labels, even if empty +chart.xLabels = [0, 3, 6, 9, 12, 15, 18, 21, 24] + +// Format the labels with a unit +chart.xLabelsFormatter = { String(Int(round($1))) + "h" } + +chart.add(series) +``` + +**Result:** + + + +## Using different colors above and below zero + +The chart displays the series in different colors when below or above the zero-axis: + +```swift +let chart = Chart(frame: CGRect(x: 0, y: 0, width: 200, height: 100)) +let data: [Double] = [0, -2, -2, 3, -3, 4, 1, 0, -1] + +let series = ChartSeries(data) +series.area = true + +chart.add(series) + +// Set minimum and maximum values for y-axis +chart.minY = -7 +chart.maxY = 7 + +// Format y-axis, e.g. with units +chart.yLabelsFormatter = { String(Int($1)) + "ºC" } +``` + +**Result:** + + + +You can customize the zero-axis and the colors with the `colors` options in the `ChartSeries` class. + +```swift +series.colors = ( + above: ChartColors.greenColor(), + below: ChartColors.yellowColor(), + zeroLevel: -1 +) +``` + +**Result:** + + + + +## Adding multiple series to a chart + +Using the `chart.add(series: ChartSeries)` and `chart.add(series: Array)` methods you can add more series. Those will be indentified with a progressive index in the chart’s `series` property. + + +```swift +let chart = Chart(frame: CGRect(x: 0, y: 0, width: 200, height: 100)) + +let series1 = ChartSeries([0, 6, 2, 8, 4, 7, 3, 10, 8]) +series1.color = ChartColors.yellowColor() +series1.area = true + +let series2 = ChartSeries([1, 0, 0.5, 0.2, 0, 1, 0.8, 0.3, 1]) +series2.color = ChartColors.redColor() +series2.area = true + +// A partially filled series +let series3 = ChartSeries([9, 8, 10, 8.5, 9.5, 10]) +series3.color = ChartColors.purpleColor() + +chart.add([series1, series2, series3]) +``` + +**Result:** + +screen shot 2018-01-07 at 11 06 55 + +## Configuring touch events + +To make the chart respond to touch events, implement the `ChartDelegate` protocol in your class, e.g. a View Controller, and then set the chart’s `delegate` property: + +```swift +class MyViewController: UIViewController, ChartDelegate { + override func viewDidLoad() { + let chart = Chart(frame: CGRect(x: 0, y: 0, width: 100, height: 200)) + chart.delegate = self + } + + // Chart delegate + func didTouchChart(chart: Chart, indexes: Array, x: Double, left: CGFloat) { + // Do something on touch + } + + func didFinishTouchingChart(chart: Chart) { + // Do something when finished + } + + func didEndTouchingChart(chart: Chart) { + // Do something when ending touching chart + } +} +``` + +The `didTouchChart` method passes an array of indexes, one for each series, with an optional `Int` referring to the data’s index: + +```swift + func didTouchChart(chart: Chart, indexes: Array, x: Double, left: CGFloat) { + for (seriesIndex, dataIndex) in enumerate(indexes) { + if dataIndex != nil { + // The series at `seriesIndex` is that which has been touched + let value = chart.valueForSeries(seriesIndex, atIndex: dataIndex) + } + } + } +``` + +You can use `chart.valueForSeries()` to access the value for the touched position. + +The `x: Double` argument refers to the value on the x-axis: it is inferred from the horizontal position of the touch event, and may be not part of the series values. + +The `left: CGFloat` is the x position on the chart’s view, starting from the left side. It may be used to set the position for a label moving above the chart: + + + +# API + +## `Chart` class + +Use the `Chart` class to initialize and configure the chart’s content, e.g. for adding series or setting up the its appearance. + +**Example** + +```swift +let chart = Chart(frame: CGRect(x: 0, y: 0, width: 200, height: 100)) +``` + +### Chart options + +| Option Name | Description | +|-------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| `areaAlphaComponent` | Alpha factor for the areas colors (`CGFloat`, default `0.1`) | +| `axesColor` | The color of the axes (`UIColor`, default `.gray`) | +| `bottomInset` | Height of the area at the bottom of the chart, containing the labels for the x-axis (`CGFloat`, default `20`) | +| `delegate` | The delegate to listen to touch events (`ChartDelegate`) | +| `highlightLineColor` | The color of the highlight line (`UIColor`, default `gray`) | +| `highlightLineWidth` | The width of the highlight line (`CGFloat`, default `0.5`) | +| `hideHighlightLineOnTouchEnd` | Hide the highlight line when the touch event ends, e.g. when stop swiping over the chart (`Bool`, default `false`) | +| `gridColor` | The color of the grid (`UIColor`, default `.gray`) | +| `labelColor` | The color of the labels (`UIColor`, default `.black`) | +| `labelFont` | The font used for the labels (`UIFont?`) | +| `lineWidth` | The width of the chart's lines (`CGFloat`, default `2`) | +| `maxX` | A custom maximum x-value (`Double?`) | +| `maxY` | A custom maximum y-value (`Double?`) | +| `minX` | A custom minimum x-value (`Double?`) | +| `minY` | A custom minimum y-value (`Double?`) | +| `showXLabelsAndGrid` | Enable the lines for the labels on the x-axis (`Bool`, default `true`) | +| `showYLabelsAndGrid` | Enable the lines for the labels on the y-axis (`Bool`, default `true`) | +| `topInset` | Height of the area at the top of the chart, acting a padding to make place for the top y-axis label (`CGFloat`, default `20`) | +| `xLabels` | The values to display as labels on the x-axis. You can format these values with the `xLabelFormatter` attribute. As default, it will display the values of the series which has the most data. `[Double]?` | +| `xLabelsFormatter` | Function to format the labels on the x-axis (`(Int, Double) -> String`) | +| `xLabelsOrientation:` | Set the x-axis labels orientation to `vertical` or `horizontal` (`ChartLabelOrientation`, default `.horizontal`) | +| `xLabelsTextAlignment:` | Alignment for the text in the x-labels (`NSTextAlignment`, default `.left`) | +| `xLabelsSkipLast:` | Skip the last x-label. Setting this to `false` will make the label overflow the frame width, so use carefully (`Bool`, default `true`) | +| `yLabels` | Values to display as labels of the y-axis. If not specified, will display the lowest, the middle and the highest values. | +| `yLabelsFormatter` | Function to format the labels on the y-axis (`(Int, Double) -> String`) | +| `yLabelsOnRightSide` | Place the y-labels on the right side (`Bool`, default `false`) | + +### Public Methods + +| Method Name | Description | +|-------------------|--------------------------------------------------------------------------------------------------------------------------| +| `add` | Add a series to the chart `(_ series: ChartSeries)` `(_ series: [ChartSeries])` | +| `removeSeriesAt` | Remove the series at the specified index `(_ index: Int)` | +| `removeAllSeries` | Remove all the series | +| `valueForSeries` | Returns the value for the specified series at the given index `(_ seriesIndex: Int, atIndex dataIndex: Int?) -> Double?` | + +## `ChartSeries` class + +Use the `ChartSeries` class to create a chart series and configure its appearance and behavior. + +**Example** + +```swift +let data: [Double] = [0, -2, -2, 3, -3, 4, 1, 0, -1] +let series = ChartSeries(data) +``` + +| Option Name | Description | +|-------------|----------------------------------------------------------------------------------------------------------------------------------------------------| +| `area` | Draws an area below the series line (`Bool`, default `false`) | +| `line` | When set to `false`, will hide the series line. Useful for drawing only the area with `area=true` (`Bool`, default `true`) | +| `color` | The series color. You can use the `ChartColors` struct for some colors shortcuts. (`UIColor`, default `.blueColor()`) | +| `colors` | A tuple to specify the color above or below the zero (or the value specified by `zeroLevel`) `(above: UIColor, below: UIColor, zeroLevel: Double)` | + +## `ChartDelegate` protocol + +Use the `ChartDelegate` protocol to tell other objects about the chart’s touch events. + +| Method | Description | +|--------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------| +| `didTouchChart` | Tells the delegate that the specified chart has been touched | +| `didFinishTouchingChart` | Tells the delegate that the user finished touching the chart. The user will "finish" touching the chart only swiping left/right outside the chart. | +| `didEndTouchingChart` | Tells the delegate that the user ended touching the chart. The user will "end" touching the chart whenever the `touchesDidEnd` method is being called. | + +## `ChartColors` enum + +Shorthands for various colors. + +**Example** + +```swift +let series = ChartSeries([0, 6, 2, 8, 4, 7, 3, 10, 8]) +series.color = ChartColors.blueColor() +``` + +# Common issues and solutions + +If you have issue with this library, please tag your question with `swiftchart` on [Stack Overflow](http://stackoverflow.com/tags/swiftcharts/info). + +## The chart is not showing + +The `Chart` class inherits from `UIView`, so if your chart is not displaying it is likely a problem related to the view's size. Check your view constraints and make sure you initialize it on `viewDidLoad`, when UIKit can calculate the view dimensions. + +Some tips for debugging an hidden chart: + +* start your app and then debug the UI Hierarchy from the Debug navigator +* initialize a simple UIView with a colored background instead of the chart to easily see how the view is positioned +* try to not to nest the chart in a subview for better debugging + +# License + +SwiftChart is available under the MIT license. See the LICENSE file for more info. diff --git a/Pods/SwiftChart/Source/Chart.swift b/Pods/SwiftChart/Source/Chart.swift new file mode 100644 index 0000000..96a7b48 --- /dev/null +++ b/Pods/SwiftChart/Source/Chart.swift @@ -0,0 +1,849 @@ +// +// Chart.swift +// +// Created by Giampaolo Bellavite on 07/11/14. +// Copyright (c) 2014 Giampaolo Bellavite. All rights reserved. +// + +import UIKit + +public protocol ChartDelegate: class { + + /** + Tells the delegate that the specified chart has been touched. + + - parameter chart: The chart that has been touched. + - parameter indexes: Each element of this array contains the index of the data that has been touched, one for each + series. If the series hasn't been touched, its index will be nil. + - parameter x: The value on the x-axis that has been touched. + - parameter left: The distance from the left side of the chart. + + */ + func didTouchChart(_ chart: Chart, indexes: [Int?], x: Double, left: CGFloat) + + /** + Tells the delegate that the user finished touching the chart. The user will + "finish" touching the chart only swiping left/right outside the chart. + + - parameter chart: The chart that has been touched. + + */ + func didFinishTouchingChart(_ chart: Chart) + /** + Tells the delegate that the user ended touching the chart. The user + will "end" touching the chart whenever the touchesDidEnd method is + being called. + + - parameter chart: The chart that has been touched. + + */ + func didEndTouchingChart(_ chart: Chart) +} + +/** +Represent the x- and the y-axis values for each point in a chart series. +*/ +typealias ChartPoint = (x: Double, y: Double) + +/** +Set the a x-label orientation. +*/ +public enum ChartLabelOrientation { + case horizontal + case vertical +} + +@IBDesignable +open class Chart: UIControl { + + // MARK: Options + + @IBInspectable + open var identifier: String? + + /** + Series to display in the chart. + */ + open var series: [ChartSeries] = [] { + didSet { + setNeedsDisplay() + } + } + + /** + The values to display as labels on the x-axis. You can format these values with the `xLabelFormatter` attribute. + As default, it will display the values of the series which has the most data. + */ + open var xLabels: [Double]? + + /** + Formatter for the labels on the x-axis. `index` represents the `xLabels` index, `value` its value. + */ + open var xLabelsFormatter = { (labelIndex: Int, labelValue: Double) -> String in + String(Int(labelValue)) + } + + /** + Text alignment for the x-labels. + */ + open var xLabelsTextAlignment: NSTextAlignment = .left + + /** + Orientation for the x-labels. + */ + open var xLabelsOrientation: ChartLabelOrientation = .horizontal + + /** + Skip the last x-label. Setting this to false may make the label overflow the frame width. + */ + open var xLabelsSkipLast: Bool = true + + /** + Values to display as labels of the y-axis. If not specified, will display the lowest, the middle and the highest + values. + */ + open var yLabels: [Double]? + + /** + Formatter for the labels on the y-axis. + */ + open var yLabelsFormatter = { (labelIndex: Int, labelValue: Double) -> String in + String(Int(labelValue)) + } + + /** + Displays the y-axis labels on the right side of the chart. + */ + open var yLabelsOnRightSide: Bool = false + + /** + Font used for the labels. + */ + open var labelFont: UIFont? = UIFont.systemFont(ofSize: 12) + + /** + The color used for the labels. + */ + @IBInspectable + open var labelColor: UIColor = UIColor.black + + /** + Color for the axes. + */ + @IBInspectable + open var axesColor: UIColor = UIColor.gray.withAlphaComponent(0.3) + + /** + Color for the grid. + */ + @IBInspectable + open var gridColor: UIColor = UIColor.gray.withAlphaComponent(0.3) + /** + Enable the lines for the labels on the x-axis + */ + open var showXLabelsAndGrid: Bool = true + /** + Enable the lines for the labels on the y-axis + */ + open var showYLabelsAndGrid: Bool = true + + /** + Height of the area at the bottom of the chart, containing the labels for the x-axis. + */ + open var bottomInset: CGFloat = 20 + + /** + Height of the area at the top of the chart, acting a padding to make place for the top y-axis label. + */ + open var topInset: CGFloat = 20 + + /** + Width of the chart's lines. + */ + @IBInspectable + open var lineWidth: CGFloat = 2 + + /** + Delegate for listening to Chart touch events. + */ + weak open var delegate: ChartDelegate? + + /** + Custom minimum value for the x-axis. + */ + open var minX: Double? + + /** + Custom minimum value for the y-axis. + */ + open var minY: Double? + + /** + Custom maximum value for the x-axis. + */ + open var maxX: Double? + + /** + Custom maximum value for the y-axis. + */ + open var maxY: Double? + + /** + Color for the highlight line. + */ + open var highlightLineColor = UIColor.gray + + /** + Width for the highlight line. + */ + open var highlightLineWidth: CGFloat = 0.5 + + /** + Hide the highlight line when touch event ends, e.g. when stop swiping over the chart + */ + open var hideHighlightLineOnTouchEnd = false + + /** + Alpha component for the area color. + */ + open var areaAlphaComponent: CGFloat = 0.1 + + // MARK: Private variables + + fileprivate var highlightShapeLayer: CAShapeLayer! + fileprivate var layerStore: [CAShapeLayer] = [] + + fileprivate var drawingHeight: CGFloat! + fileprivate var drawingWidth: CGFloat! + + // Minimum and maximum values represented in the chart + fileprivate var min: ChartPoint! + fileprivate var max: ChartPoint! + + // Represent a set of points corresponding to a segment line on the chart. + typealias ChartLineSegment = [ChartPoint] + + // MARK: initializations + + override public init(frame: CGRect) { + super.init(frame: frame) + commonInit() + } + + required public init?(coder aDecoder: NSCoder) { + super.init(coder: aDecoder) + commonInit() + } + + convenience public init() { + self.init(frame: .zero) + commonInit() + } + + private func commonInit() { + backgroundColor = UIColor.clear + contentMode = .redraw // redraw rects on bounds change + } + + override open func draw(_ rect: CGRect) { + #if TARGET_INTERFACE_BUILDER + drawIBPlaceholder() + #else + drawChart() + #endif + } + + /** + Adds a chart series. + */ + open func add(_ series: ChartSeries) { + self.series.append(series) + } + + /** + Adds multiple chart series. + */ + open func add(_ series: [ChartSeries]) { + for s in series { + add(s) + } + } + + /** + Remove the series at the specified index. + */ + open func removeSeriesAt(_ index: Int) { + series.remove(at: index) + } + + /** + Remove all the series. + */ + open func removeAllSeries() { + series = [] + } + + /** + Return the value for the specified series at the given index. + */ + open func valueForSeries(_ seriesIndex: Int, atIndex dataIndex: Int?) -> Double? { + if dataIndex == nil { return nil } + let series = self.series[seriesIndex] as ChartSeries + return series.data[dataIndex!].y + } + + fileprivate func drawIBPlaceholder() { + let placeholder = UIView(frame: self.frame) + placeholder.backgroundColor = UIColor(red: 0.93, green: 0.93, blue: 0.93, alpha: 1) + let label = UILabel() + label.text = "Chart" + label.font = UIFont.systemFont(ofSize: 28) + label.textColor = UIColor(red: 0, green: 0, blue: 0, alpha: 0.2) + label.sizeToFit() + label.frame.origin.x += frame.width/2 - (label.frame.width / 2) + label.frame.origin.y += frame.height/2 - (label.frame.height / 2) + + placeholder.addSubview(label) + addSubview(placeholder) + } + + fileprivate func drawChart() { + + drawingHeight = bounds.height - bottomInset - topInset + drawingWidth = bounds.width + + let minMax = getMinMax() + min = minMax.min + max = minMax.max + + highlightShapeLayer = nil + + // Remove things before drawing, e.g. when changing orientation + + for view in self.subviews { + view.removeFromSuperview() + } + for layer in layerStore { + layer.removeFromSuperlayer() + } + layerStore.removeAll() + + // Draw content + + for (index, series) in self.series.enumerated() { + + // Separate each line in multiple segments over and below the x axis + let segments = Chart.segmentLine(series.data as ChartLineSegment, zeroLevel: series.colors.zeroLevel) + + segments.forEach({ segment in + let scaledXValues = scaleValuesOnXAxis( segment.map { $0.x } ) + let scaledYValues = scaleValuesOnYAxis( segment.map { $0.y } ) + + if series.line { + drawLine(scaledXValues, yValues: scaledYValues, seriesIndex: index) + } + if series.area { + drawArea(scaledXValues, yValues: scaledYValues, seriesIndex: index) + } + }) + } + + drawAxes() + + if showXLabelsAndGrid && (xLabels != nil || series.count > 0) { + drawLabelsAndGridOnXAxis() + } + if showYLabelsAndGrid && (yLabels != nil || series.count > 0) { + drawLabelsAndGridOnYAxis() + } + + } + + // MARK: - Scaling + + fileprivate func getMinMax() -> (min: ChartPoint, max: ChartPoint) { + // Start with user-provided values + + var min = (x: minX, y: minY) + var max = (x: maxX, y: maxY) + + // Check in datasets + + for series in self.series { + let xValues = series.data.map { $0.x } + let yValues = series.data.map { $0.y } + + let newMinX = xValues.minOrZero() + let newMinY = yValues.minOrZero() + let newMaxX = xValues.maxOrZero() + let newMaxY = yValues.maxOrZero() + + if min.x == nil || newMinX < min.x! { min.x = newMinX } + if min.y == nil || newMinY < min.y! { min.y = newMinY } + if max.x == nil || newMaxX > max.x! { max.x = newMaxX } + if max.y == nil || newMaxY > max.y! { max.y = newMaxY } + } + + // Check in labels + + if let xLabels = self.xLabels { + let newMinX = xLabels.minOrZero() + let newMaxX = xLabels.maxOrZero() + if min.x == nil || newMinX < min.x! { min.x = newMinX } + if max.x == nil || newMaxX > max.x! { max.x = newMaxX } + } + + if let yLabels = self.yLabels { + let newMinY = yLabels.minOrZero() + let newMaxY = yLabels.maxOrZero() + if min.y == nil || newMinY < min.y! { min.y = newMinY } + if max.y == nil || newMaxY > max.y! { max.y = newMaxY } + } + + if min.x == nil { min.x = 0 } + if min.y == nil { min.y = 0 } + if max.x == nil { max.x = 0 } + if max.y == nil { max.y = 0 } + + return (min: (x: min.x!, y: min.y!), max: (x: max.x!, max.y!)) + } + + fileprivate func scaleValuesOnXAxis(_ values: [Double]) -> [Double] { + let width = Double(drawingWidth) + + var factor: Double + if max.x - min.x == 0 { + factor = 0 + } else { + factor = width / (max.x - min.x) + } + + let scaled = values.map { factor * ($0 - self.min.x) } + return scaled + } + + fileprivate func scaleValuesOnYAxis(_ values: [Double]) -> [Double] { + let height = Double(drawingHeight) + var factor: Double + if max.y - min.y == 0 { + factor = 0 + } else { + factor = height / (max.y - min.y) + } + + let scaled = values.map { Double(self.topInset) + height - factor * ($0 - self.min.y) } + + return scaled + } + + fileprivate func scaleValueOnYAxis(_ value: Double) -> Double { + let height = Double(drawingHeight) + var factor: Double + if max.y - min.y == 0 { + factor = 0 + } else { + factor = height / (max.y - min.y) + } + + let scaled = Double(self.topInset) + height - factor * (value - min.y) + return scaled + } + + fileprivate func getZeroValueOnYAxis(zeroLevel: Double) -> Double { + if min.y > zeroLevel { + return scaleValueOnYAxis(min.y) + } else { + return scaleValueOnYAxis(zeroLevel) + } + } + + // MARK: - Drawings + + fileprivate func drawLine(_ xValues: [Double], yValues: [Double], seriesIndex: Int) { + // YValues are "reverted" from top to bottom, so 'above' means <= level + let isAboveZeroLine = yValues.max()! <= self.scaleValueOnYAxis(series[seriesIndex].colors.zeroLevel) + let path = CGMutablePath() + path.move(to: CGPoint(x: CGFloat(xValues.first!), y: CGFloat(yValues.first!))) + for i in 1.. 0 { + let y = CGFloat(getZeroValueOnYAxis(zeroLevel: 0)) + context.move(to: CGPoint(x: CGFloat(0), y: y)) + context.addLine(to: CGPoint(x: CGFloat(drawingWidth), y: y)) + context.strokePath() + } + + // vertical axis on the left + context.move(to: CGPoint(x: CGFloat(0), y: CGFloat(0))) + context.addLine(to: CGPoint(x: CGFloat(0), y: drawingHeight + topInset)) + context.strokePath() + + // vertical axis on the right + context.move(to: CGPoint(x: CGFloat(drawingWidth), y: CGFloat(0))) + context.addLine(to: CGPoint(x: CGFloat(drawingWidth), y: drawingHeight + topInset)) + context.strokePath() + } + + fileprivate func drawLabelsAndGridOnXAxis() { + let context = UIGraphicsGetCurrentContext()! + context.setStrokeColor(gridColor.cgColor) + context.setLineWidth(0.5) + + var labels: [Double] + if xLabels == nil { + // Use labels from the first series + labels = series[0].data.map({ (point: ChartPoint) -> Double in + return point.x }) + } else { + labels = xLabels! + } + + let scaled = scaleValuesOnXAxis(labels) + let padding: CGFloat = 5 + scaled.enumerated().forEach { (i, value) in + let x = CGFloat(value) + let isLastLabel = x == drawingWidth + + // Add vertical grid for each label, except axes on the left and right + + if x != 0 && x != drawingWidth { + context.move(to: CGPoint(x: x, y: CGFloat(0))) + context.addLine(to: CGPoint(x: x, y: bounds.height)) + context.strokePath() + } + + if xLabelsSkipLast && isLastLabel { + // Do not add label at the most right position + return + } + + // Add label + let label = UILabel(frame: CGRect(x: x, y: drawingHeight, width: 0, height: 0)) + label.font = labelFont + label.text = xLabelsFormatter(i, labels[i]) + label.textColor = labelColor + + // Set label size + label.sizeToFit() + // Center label vertically + label.frame.origin.y += topInset + if xLabelsOrientation == .horizontal { + // Add left padding + label.frame.origin.y -= (label.frame.height - bottomInset) / 2 + label.frame.origin.x += padding + + // Set label's text alignment + label.frame.size.width = (drawingWidth / CGFloat(labels.count)) - padding * 2 + label.textAlignment = xLabelsTextAlignment + } else { + label.transform = CGAffineTransform(rotationAngle: CGFloat(Double.pi / 2)) + + // Adjust vertical position according to the label's height + label.frame.origin.y += label.frame.size.height / 2 + + // Adjust horizontal position as the series line + label.frame.origin.x = x + if xLabelsTextAlignment == .center { + // Align horizontally in series + label.frame.origin.x += ((drawingWidth / CGFloat(labels.count)) / 2) - (label.frame.size.width / 2) + } else { + // Give some space from the vertical line + label.frame.origin.x += padding + } + } + self.addSubview(label) + } + } + + fileprivate func drawLabelsAndGridOnYAxis() { + let context = UIGraphicsGetCurrentContext()! + context.setStrokeColor(gridColor.cgColor) + context.setLineWidth(0.5) + + var labels: [Double] + if yLabels == nil { + labels = [(min.y + max.y) / 2, max.y] + if yLabelsOnRightSide || min.y != 0 { + labels.insert(min.y, at: 0) + } + } else { + labels = yLabels! + } + + let scaled = scaleValuesOnYAxis(labels) + let padding: CGFloat = 5 + let zero = CGFloat(getZeroValueOnYAxis(zeroLevel: 0)) + + scaled.enumerated().forEach { (i, value) in + + let y = CGFloat(value) + + // Add horizontal grid for each label, but not over axes + if y != drawingHeight + topInset && y != zero { + + context.move(to: CGPoint(x: CGFloat(0), y: y)) + context.addLine(to: CGPoint(x: self.bounds.width, y: y)) + if labels[i] != 0 { + // Horizontal grid for 0 is not dashed + context.setLineDash(phase: CGFloat(0), lengths: [CGFloat(5)]) + } else { + context.setLineDash(phase: CGFloat(0), lengths: []) + } + context.strokePath() + } + + let label = UILabel(frame: CGRect(x: padding, y: y, width: 0, height: 0)) + label.font = labelFont + label.text = yLabelsFormatter(i, labels[i]) + label.textColor = labelColor + label.sizeToFit() + + if yLabelsOnRightSide { + label.frame.origin.x = drawingWidth + label.frame.origin.x -= label.frame.width + padding + } + + // Labels should be placed above the horizontal grid + label.frame.origin.y -= label.frame.height + + self.addSubview(label) + } + UIGraphicsEndImageContext() + } + + // MARK: - Touch events + + fileprivate func drawHighlightLineFromLeftPosition(_ left: CGFloat) { + if let shapeLayer = highlightShapeLayer { + // Use line already created + let path = CGMutablePath() + + path.move(to: CGPoint(x: left, y: 0)) + path.addLine(to: CGPoint(x: left, y: drawingHeight + topInset)) + shapeLayer.path = path + } else { + // Create the line + let path = CGMutablePath() + + path.move(to: CGPoint(x: left, y: CGFloat(0))) + path.addLine(to: CGPoint(x: left, y: drawingHeight + topInset)) + let shapeLayer = CAShapeLayer() + shapeLayer.frame = self.bounds + shapeLayer.path = path + shapeLayer.strokeColor = highlightLineColor.cgColor + shapeLayer.fillColor = nil + shapeLayer.lineWidth = highlightLineWidth + + highlightShapeLayer = shapeLayer + layer.addSublayer(shapeLayer) + layerStore.append(shapeLayer) + } + } + + func handleTouchEvents(_ touches: Set, event: UIEvent!) { + let point = touches.first! + let left = point.location(in: self).x + let x = valueFromPointAtX(left) + + if left < 0 || left > (drawingWidth as CGFloat) { + // Remove highlight line at the end of the touch event + if let shapeLayer = highlightShapeLayer { + shapeLayer.path = nil + } + delegate?.didFinishTouchingChart(self) + return + } + + drawHighlightLineFromLeftPosition(left) + + if delegate == nil { + return + } + + var indexes: [Int?] = [] + + for series in self.series { + var index: Int? = nil + let xValues = series.data.map({ (point: ChartPoint) -> Double in + return point.x }) + let closest = Chart.findClosestInValues(xValues, forValue: x) + if closest.lowestIndex != nil && closest.highestIndex != nil { + // Consider valid only values on the right + index = closest.lowestIndex + } + indexes.append(index) + } + delegate!.didTouchChart(self, indexes: indexes, x: x, left: left) + } + + override open func touchesBegan(_ touches: Set, with event: UIEvent?) { + handleTouchEvents(touches, event: event) + } + + override open func touchesEnded(_ touches: Set, with event: UIEvent?) { + handleTouchEvents(touches, event: event) + if self.hideHighlightLineOnTouchEnd { + if let shapeLayer = highlightShapeLayer { + shapeLayer.path = nil + } + } + delegate?.didEndTouchingChart(self) + } + + override open func touchesMoved(_ touches: Set, with event: UIEvent?) { + handleTouchEvents(touches, event: event) + } + + // MARK: - Utilities + + fileprivate func valueFromPointAtX(_ x: CGFloat) -> Double { + let value = ((max.x-min.x) / Double(drawingWidth)) * Double(x) + min.x + return value + } + + fileprivate func valueFromPointAtY(_ y: CGFloat) -> Double { + let value = ((max.y - min.y) / Double(drawingHeight)) * Double(y) + min.y + return -value + } + + fileprivate class func findClosestInValues( + _ values: [Double], + forValue value: Double + ) -> ( + lowestValue: Double?, + highestValue: Double?, + lowestIndex: Int?, + highestIndex: Int? + ) { + var lowestValue: Double?, highestValue: Double?, lowestIndex: Int?, highestIndex: Int? + + values.enumerated().forEach { (i, currentValue) in + + if currentValue <= value && (lowestValue == nil || lowestValue! < currentValue) { + lowestValue = currentValue + lowestIndex = i + } + if currentValue >= value && (highestValue == nil || highestValue! > currentValue) { + highestValue = currentValue + highestIndex = i + } + + } + return ( + lowestValue: lowestValue, + highestValue: highestValue, + lowestIndex: lowestIndex, + highestIndex: highestIndex + ) + } + + /** + Segment a line in multiple lines when the line touches the x-axis, i.e. separating + positive from negative values. + */ + fileprivate class func segmentLine(_ line: ChartLineSegment, zeroLevel: Double) -> [ChartLineSegment] { + var segments: [ChartLineSegment] = [] + var segment: ChartLineSegment = [] + + line.enumerated().forEach { (i, point) in + segment.append(point) + if i < line.count - 1 { + let nextPoint = line[i+1] + if point.y >= zeroLevel && nextPoint.y < zeroLevel || point.y < zeroLevel && nextPoint.y >= zeroLevel { + // The segment intersects zeroLevel, close the segment with the intersection point + let closingPoint = Chart.intersectionWithLevel(point, and: nextPoint, level: zeroLevel) + segment.append(closingPoint) + segments.append(segment) + // Start a new segment + segment = [closingPoint] + } + } else { + // End of the line + segments.append(segment) + } + } + return segments + } + + /** + Return the intersection of a line between two points and 'y = level' line + */ + fileprivate class func intersectionWithLevel(_ p1: ChartPoint, and p2: ChartPoint, level: Double) -> ChartPoint { + let dy1 = level - p1.y + let dy2 = level - p2.y + return (x: (p2.x * dy1 - p1.x * dy2) / (dy1 - dy2), y: level) + } +} + +extension Sequence where Element == Double { + func minOrZero() -> Double { + return self.min() ?? 0.0 + } + func maxOrZero() -> Double { + return self.max() ?? 0.0 + } +} diff --git a/Pods/SwiftChart/Source/ChartColors.swift b/Pods/SwiftChart/Source/ChartColors.swift new file mode 100644 index 0000000..1a670ac --- /dev/null +++ b/Pods/SwiftChart/Source/ChartColors.swift @@ -0,0 +1,61 @@ +// +// ChartColors.swift +// +// Created by Giampaolo Bellavite on 07/11/14. +// Copyright (c) 2014 Giampaolo Bellavite. All rights reserved. +// + +import UIKit + +/** +Shorthands for various colors to use in the charts. +*/ +public struct ChartColors { + + static fileprivate func colorFromHex(_ hex: Int) -> UIColor { + let red = CGFloat((hex & 0xFF0000) >> 16) / 255.0 + let green = CGFloat((hex & 0xFF00) >> 8) / 255.0 + let blue = CGFloat((hex & 0xFF)) / 255.0 + return UIColor(red: red, green: green, blue: blue, alpha: 1) + } + + static public func blueColor() -> UIColor { + return colorFromHex(0x4A90E2) + } + static public func orangeColor() -> UIColor { + return colorFromHex(0xF5A623) + } + static public func greenColor() -> UIColor { + return colorFromHex(0x7ED321) + } + static public func darkGreenColor() -> UIColor { + return colorFromHex(0x417505) + } + static public func redColor() -> UIColor { + return colorFromHex(0xFF3200) + } + static public func darkRedColor() -> UIColor { + return colorFromHex(0xD0021B) + } + static public func purpleColor() -> UIColor { + return colorFromHex(0x9013FE) + } + static public func maroonColor() -> UIColor { + return colorFromHex(0x8B572A) + } + static public func pinkColor() -> UIColor { + return colorFromHex(0xBD10E0) + } + static public func greyColor() -> UIColor { + return colorFromHex(0x7f7f7f) + } + static public func cyanColor() -> UIColor { + return colorFromHex(0x50E3C2) + } + static public func goldColor() -> UIColor { + return colorFromHex(0xbcbd22) + } + static public func yellowColor() -> UIColor { + return colorFromHex(0xF8E71C) + } +} diff --git a/Pods/SwiftChart/Source/ChartSeries.swift b/Pods/SwiftChart/Source/ChartSeries.swift new file mode 100644 index 0000000..46e6207 --- /dev/null +++ b/Pods/SwiftChart/Source/ChartSeries.swift @@ -0,0 +1,66 @@ +// +// ChartSeries.swift +// +// Created by Giampaolo Bellavite on 07/11/14. +// Copyright (c) 2014 Giampaolo Bellavite. All rights reserved. +// + +import UIKit + +/** +The `ChartSeries` class create a chart series and configure its appearance and behavior. +*/ +open class ChartSeries { + /** + The data used for the chart series. + */ + open var data: [(x: Double, y: Double)] + + /** + When set to `false`, will hide the series line. Useful for drawing only the area with `area=true`. + */ + open var line: Bool = true + + /** + Draws an area below the series line. + */ + open var area: Bool = false + + /** + The series color. + */ + open var color: UIColor = ChartColors.blueColor() { + didSet { + colors = (above: color, below: color, 0) + } + } + + /** + A tuple to specify the color above or below the zero + */ + open var colors: ( + above: UIColor, + below: UIColor, + zeroLevel: Double + ) = (above: ChartColors.blueColor(), below: ChartColors.redColor(), 0) + + public init(_ data: [Double]) { + self.data = [] + data.enumerated().forEach { (x, y) in + let point: (x: Double, y: Double) = (x: Double(x), y: y) + self.data.append(point) + } + } + + public init(data: [(x: Double, y: Double)]) { + self.data = data + } + + public init(data: [(x: Int, y: Double)]) { + self.data = data.map { (Double($0.x), Double($0.y)) } + } + + public init(data: [(x: Float, y: Float)]) { + self.data = data.map { (Double($0.x), Double($0.y)) } + } +} diff --git a/Pods/Target Support Files/Pods-pocloud/Pods-pocloud-acknowledgements.markdown b/Pods/Target Support Files/Pods-pocloud/Pods-pocloud-acknowledgements.markdown index f480709..da1747d 100644 --- a/Pods/Target Support Files/Pods-pocloud/Pods-pocloud-acknowledgements.markdown +++ b/Pods/Target Support Files/Pods-pocloud/Pods-pocloud-acknowledgements.markdown @@ -628,6 +628,31 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +## SwiftChart + +The MIT License (MIT) + +Copyright (c) 2014 Giampaolo Bellavite + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + ## SwiftyJSON The MIT License (MIT) diff --git a/Pods/Target Support Files/Pods-pocloud/Pods-pocloud-acknowledgements.plist b/Pods/Target Support Files/Pods-pocloud/Pods-pocloud-acknowledgements.plist index 92156e1..8309ee4 100644 --- a/Pods/Target Support Files/Pods-pocloud/Pods-pocloud-acknowledgements.plist +++ b/Pods/Target Support Files/Pods-pocloud/Pods-pocloud-acknowledgements.plist @@ -685,6 +685,37 @@ SOFTWARE. FooterText The MIT License (MIT) +Copyright (c) 2014 Giampaolo Bellavite + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + License + MIT + Title + SwiftChart + Type + PSGroupSpecifier + + + FooterText + The MIT License (MIT) + Copyright (c) 2017 Ruoyu Fu Permission is hereby granted, free of charge, to any person obtaining a copy diff --git a/Pods/Target Support Files/Pods-pocloud/Pods-pocloud-frameworks.sh b/Pods/Target Support Files/Pods-pocloud/Pods-pocloud-frameworks.sh index 8734707..660087d 100755 --- a/Pods/Target Support Files/Pods-pocloud/Pods-pocloud-frameworks.sh +++ b/Pods/Target Support Files/Pods-pocloud/Pods-pocloud-frameworks.sh @@ -150,6 +150,7 @@ if [[ "$CONFIGURATION" == "Debug" ]]; then install_framework "${BUILT_PRODUCTS_DIR}/Realm/Realm.framework" install_framework "${BUILT_PRODUCTS_DIR}/RealmSwift/RealmSwift.framework" install_framework "${BUILT_PRODUCTS_DIR}/SVProgressHUD/SVProgressHUD.framework" + install_framework "${BUILT_PRODUCTS_DIR}/SwiftChart/SwiftChart.framework" install_framework "${BUILT_PRODUCTS_DIR}/SwiftyJSON/SwiftyJSON.framework" fi if [[ "$CONFIGURATION" == "Release" ]]; then @@ -160,6 +161,7 @@ if [[ "$CONFIGURATION" == "Release" ]]; then install_framework "${BUILT_PRODUCTS_DIR}/Realm/Realm.framework" install_framework "${BUILT_PRODUCTS_DIR}/RealmSwift/RealmSwift.framework" install_framework "${BUILT_PRODUCTS_DIR}/SVProgressHUD/SVProgressHUD.framework" + install_framework "${BUILT_PRODUCTS_DIR}/SwiftChart/SwiftChart.framework" install_framework "${BUILT_PRODUCTS_DIR}/SwiftyJSON/SwiftyJSON.framework" fi if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then diff --git a/Pods/Target Support Files/Pods-pocloud/Pods-pocloud.debug.xcconfig b/Pods/Target Support Files/Pods-pocloud/Pods-pocloud.debug.xcconfig index 9399e15..9c7c457 100644 --- a/Pods/Target Support Files/Pods-pocloud/Pods-pocloud.debug.xcconfig +++ b/Pods/Target Support Files/Pods-pocloud/Pods-pocloud.debug.xcconfig @@ -1,9 +1,9 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES -FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/ChameleonFramework" "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher" "${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit" "${PODS_CONFIGURATION_BUILD_DIR}/Realm" "${PODS_CONFIGURATION_BUILD_DIR}/RealmSwift" "${PODS_CONFIGURATION_BUILD_DIR}/SVProgressHUD" "${PODS_CONFIGURATION_BUILD_DIR}/SwiftyJSON" +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/ChameleonFramework" "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher" "${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit" "${PODS_CONFIGURATION_BUILD_DIR}/Realm" "${PODS_CONFIGURATION_BUILD_DIR}/RealmSwift" "${PODS_CONFIGURATION_BUILD_DIR}/SVProgressHUD" "${PODS_CONFIGURATION_BUILD_DIR}/SwiftChart" "${PODS_CONFIGURATION_BUILD_DIR}/SwiftyJSON" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/ChameleonFramework/ChameleonFramework.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher/Kingfisher.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit/PromiseKit.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Realm/Realm.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/RealmSwift/RealmSwift.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/SVProgressHUD/SVProgressHUD.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/SwiftyJSON/SwiftyJSON.framework/Headers" -OTHER_LDFLAGS = $(inherited) -ObjC -framework "Alamofire" -framework "ChameleonFramework" -framework "Kingfisher" -framework "PromiseKit" -framework "Realm" -framework "RealmSwift" -framework "SVProgressHUD" -framework "SwiftyJSON" +OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/ChameleonFramework/ChameleonFramework.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher/Kingfisher.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit/PromiseKit.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Realm/Realm.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/RealmSwift/RealmSwift.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/SVProgressHUD/SVProgressHUD.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/SwiftChart/SwiftChart.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/SwiftyJSON/SwiftyJSON.framework/Headers" +OTHER_LDFLAGS = $(inherited) -ObjC -framework "Alamofire" -framework "ChameleonFramework" -framework "Kingfisher" -framework "PromiseKit" -framework "Realm" -framework "RealmSwift" -framework "SVProgressHUD" -framework "SwiftChart" -framework "SwiftyJSON" OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) diff --git a/Pods/Target Support Files/Pods-pocloud/Pods-pocloud.release.xcconfig b/Pods/Target Support Files/Pods-pocloud/Pods-pocloud.release.xcconfig index 9399e15..9c7c457 100644 --- a/Pods/Target Support Files/Pods-pocloud/Pods-pocloud.release.xcconfig +++ b/Pods/Target Support Files/Pods-pocloud/Pods-pocloud.release.xcconfig @@ -1,9 +1,9 @@ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES -FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/ChameleonFramework" "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher" "${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit" "${PODS_CONFIGURATION_BUILD_DIR}/Realm" "${PODS_CONFIGURATION_BUILD_DIR}/RealmSwift" "${PODS_CONFIGURATION_BUILD_DIR}/SVProgressHUD" "${PODS_CONFIGURATION_BUILD_DIR}/SwiftyJSON" +FRAMEWORK_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire" "${PODS_CONFIGURATION_BUILD_DIR}/ChameleonFramework" "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher" "${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit" "${PODS_CONFIGURATION_BUILD_DIR}/Realm" "${PODS_CONFIGURATION_BUILD_DIR}/RealmSwift" "${PODS_CONFIGURATION_BUILD_DIR}/SVProgressHUD" "${PODS_CONFIGURATION_BUILD_DIR}/SwiftChart" "${PODS_CONFIGURATION_BUILD_DIR}/SwiftyJSON" GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' -OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/ChameleonFramework/ChameleonFramework.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher/Kingfisher.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit/PromiseKit.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Realm/Realm.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/RealmSwift/RealmSwift.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/SVProgressHUD/SVProgressHUD.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/SwiftyJSON/SwiftyJSON.framework/Headers" -OTHER_LDFLAGS = $(inherited) -ObjC -framework "Alamofire" -framework "ChameleonFramework" -framework "Kingfisher" -framework "PromiseKit" -framework "Realm" -framework "RealmSwift" -framework "SVProgressHUD" -framework "SwiftyJSON" +OTHER_CFLAGS = $(inherited) -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Alamofire/Alamofire.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/ChameleonFramework/ChameleonFramework.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Kingfisher/Kingfisher.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/PromiseKit/PromiseKit.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/Realm/Realm.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/RealmSwift/RealmSwift.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/SVProgressHUD/SVProgressHUD.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/SwiftChart/SwiftChart.framework/Headers" -iquote "${PODS_CONFIGURATION_BUILD_DIR}/SwiftyJSON/SwiftyJSON.framework/Headers" +OTHER_LDFLAGS = $(inherited) -ObjC -framework "Alamofire" -framework "ChameleonFramework" -framework "Kingfisher" -framework "PromiseKit" -framework "Realm" -framework "RealmSwift" -framework "SVProgressHUD" -framework "SwiftChart" -framework "SwiftyJSON" OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) diff --git a/Pods/Target Support Files/PromiseKit/Info.plist b/Pods/Target Support Files/PromiseKit/Info.plist index 2dc7fbb..ab019f2 100644 --- a/Pods/Target Support Files/PromiseKit/Info.plist +++ b/Pods/Target Support Files/PromiseKit/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 6.2.7 + 6.2.8 CFBundleSignature ???? CFBundleVersion diff --git a/Pods/Target Support Files/Realm/Info.plist b/Pods/Target Support Files/Realm/Info.plist index 078bbf3..fd3425e 100644 --- a/Pods/Target Support Files/Realm/Info.plist +++ b/Pods/Target Support Files/Realm/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 3.5.0 + 3.6.0 CFBundleSignature ???? CFBundleVersion diff --git a/Pods/Target Support Files/RealmSwift/Info.plist b/Pods/Target Support Files/RealmSwift/Info.plist index 078bbf3..fd3425e 100644 --- a/Pods/Target Support Files/RealmSwift/Info.plist +++ b/Pods/Target Support Files/RealmSwift/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 3.5.0 + 3.6.0 CFBundleSignature ???? CFBundleVersion diff --git a/Pods/Target Support Files/SwiftChart/Info.plist b/Pods/Target Support Files/SwiftChart/Info.plist new file mode 100644 index 0000000..3c175b6 --- /dev/null +++ b/Pods/Target Support Files/SwiftChart/Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0.1 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/Pods/Target Support Files/SwiftChart/SwiftChart-dummy.m b/Pods/Target Support Files/SwiftChart/SwiftChart-dummy.m new file mode 100644 index 0000000..668583c --- /dev/null +++ b/Pods/Target Support Files/SwiftChart/SwiftChart-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_SwiftChart : NSObject +@end +@implementation PodsDummy_SwiftChart +@end diff --git a/Pods/Target Support Files/SwiftChart/SwiftChart-prefix.pch b/Pods/Target Support Files/SwiftChart/SwiftChart-prefix.pch new file mode 100644 index 0000000..beb2a24 --- /dev/null +++ b/Pods/Target Support Files/SwiftChart/SwiftChart-prefix.pch @@ -0,0 +1,12 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + diff --git a/Pods/Target Support Files/SwiftChart/SwiftChart-umbrella.h b/Pods/Target Support Files/SwiftChart/SwiftChart-umbrella.h new file mode 100644 index 0000000..aaf1dc8 --- /dev/null +++ b/Pods/Target Support Files/SwiftChart/SwiftChart-umbrella.h @@ -0,0 +1,16 @@ +#ifdef __OBJC__ +#import +#else +#ifndef FOUNDATION_EXPORT +#if defined(__cplusplus) +#define FOUNDATION_EXPORT extern "C" +#else +#define FOUNDATION_EXPORT extern +#endif +#endif +#endif + + +FOUNDATION_EXPORT double SwiftChartVersionNumber; +FOUNDATION_EXPORT const unsigned char SwiftChartVersionString[]; + diff --git a/Pods/Target Support Files/SwiftChart/SwiftChart.modulemap b/Pods/Target Support Files/SwiftChart/SwiftChart.modulemap new file mode 100644 index 0000000..59e0320 --- /dev/null +++ b/Pods/Target Support Files/SwiftChart/SwiftChart.modulemap @@ -0,0 +1,6 @@ +framework module SwiftChart { + umbrella header "SwiftChart-umbrella.h" + + export * + module * { export * } +} diff --git a/Pods/Target Support Files/SwiftChart/SwiftChart.xcconfig b/Pods/Target Support Files/SwiftChart/SwiftChart.xcconfig new file mode 100644 index 0000000..02fa242 --- /dev/null +++ b/Pods/Target Support Files/SwiftChart/SwiftChart.xcconfig @@ -0,0 +1,10 @@ +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/SwiftChart +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +OTHER_LDFLAGS = -framework "UIKit" +OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/SwiftChart +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES diff --git a/pocloud.xcodeproj/project.pbxproj b/pocloud.xcodeproj/project.pbxproj index 1f64ba9..9feb009 100644 --- a/pocloud.xcodeproj/project.pbxproj +++ b/pocloud.xcodeproj/project.pbxproj @@ -30,6 +30,7 @@ C5589C7420B657CA00639393 /* DeviceListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5589C7320B657CA00639393 /* DeviceListViewController.swift */; }; C58C142A20B86C1C001BE9DA /* ChannelDetailViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C58C142920B86C1C001BE9DA /* ChannelDetailViewController.swift */; }; C58C142C20B87197001BE9DA /* ChannelHistoryValue.swift in Sources */ = {isa = PBXBuildFile; fileRef = C58C142B20B87197001BE9DA /* ChannelHistoryValue.swift */; }; + C58C142E20BDD6BA001BE9DA /* HistoryGraphViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C58C142D20BDD6BA001BE9DA /* HistoryGraphViewController.swift */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ @@ -59,6 +60,7 @@ C5589C7320B657CA00639393 /* DeviceListViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DeviceListViewController.swift; sourceTree = ""; }; C58C142920B86C1C001BE9DA /* ChannelDetailViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChannelDetailViewController.swift; sourceTree = ""; }; C58C142B20B87197001BE9DA /* ChannelHistoryValue.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChannelHistoryValue.swift; sourceTree = ""; }; + C58C142D20BDD6BA001BE9DA /* HistoryGraphViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HistoryGraphViewController.swift; sourceTree = ""; }; D7E8B9ABE8755B533A815A1B /* Pods_pocloud.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_pocloud.framework; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ @@ -157,6 +159,7 @@ C5589C1920B4DF0A00639393 /* MapDetailViewController.swift */, C53407DF20B7462C0016CFAB /* DeviceDetailViewController.swift */, C58C142920B86C1C001BE9DA /* ChannelDetailViewController.swift */, + C58C142D20BDD6BA001BE9DA /* HistoryGraphViewController.swift */, C53407ED20B86AF30016CFAB /* Cells */, ); path = Controller; @@ -280,6 +283,7 @@ "${BUILT_PRODUCTS_DIR}/Realm/Realm.framework", "${BUILT_PRODUCTS_DIR}/RealmSwift/RealmSwift.framework", "${BUILT_PRODUCTS_DIR}/SVProgressHUD/SVProgressHUD.framework", + "${BUILT_PRODUCTS_DIR}/SwiftChart/SwiftChart.framework", "${BUILT_PRODUCTS_DIR}/SwiftyJSON/SwiftyJSON.framework", ); name = "[CP] Embed Pods Frameworks"; @@ -291,6 +295,7 @@ "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Realm.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/RealmSwift.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SVProgressHUD.framework", + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SwiftChart.framework", "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SwiftyJSON.framework", ); runOnlyForDeploymentPostprocessing = 0; @@ -309,6 +314,7 @@ C5589BF020B47E2100639393 /* LoginViewController.swift in Sources */, C53407E020B7462C0016CFAB /* DeviceDetailViewController.swift in Sources */, C53407E220B74A0A0016CFAB /* Channel.swift in Sources */, + C58C142E20BDD6BA001BE9DA /* HistoryGraphViewController.swift in Sources */, C5589C7420B657CA00639393 /* DeviceListViewController.swift in Sources */, C53407EA20B85C3F0016CFAB /* MapDetailDeviceCell.swift in Sources */, C5589BEE20B47E2100639393 /* AppDelegate.swift in Sources */, diff --git a/pocloud/Controller/ChannelDetailViewController.swift b/pocloud/Controller/ChannelDetailViewController.swift index 75a551e..7df6fb4 100644 --- a/pocloud/Controller/ChannelDetailViewController.swift +++ b/pocloud/Controller/ChannelDetailViewController.swift @@ -66,9 +66,16 @@ class ChannelDetailViewController: UIViewController, UITableViewDelegate, UITabl } } - @IBAction func writeButtonPressed(_ sender: UIButton) { + override func prepare(for segue: UIStoryboardSegue, sender: Any?) { + if segue.identifier == "openHistoryGraph" { + let destinationVC = segue.destination as! HistoryGraphViewController + destinationVC.channelHistory = channelHistory + destinationVC.user = user + destinationVC.thisChannel = thisChannel + } } + //MARK: - TABLE METHODS func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { diff --git a/pocloud/Controller/DeviceDetailViewController.swift b/pocloud/Controller/DeviceDetailViewController.swift index 9b7c467..a9c6b46 100644 --- a/pocloud/Controller/DeviceDetailViewController.swift +++ b/pocloud/Controller/DeviceDetailViewController.swift @@ -25,12 +25,23 @@ class DeviceDetailViewController: UITableViewController { override func viewDidLoad() { super.viewDidLoad() - loadData() - self.navigationItem.title = thisDevice?.vanityName - tableView.estimatedRowHeight = 100 - tableView.rowHeight = UITableViewAutomaticDimension SVProgressHUD.show() + firstly { + loadData() + }.done { _ in + self.tableView.reloadData() + }.catch{ error in + print("Error in loadData: \(error)") + } + + self.navigationItem.title = thisDevice?.vanityName + + self.refreshControl = UIRefreshControl() + refreshControl?.attributedTitle = NSAttributedString(string: "Pull to refresh") + refreshControl?.addTarget(self, action: #selector(refresh), for: UIControlEvents.valueChanged) +// tableView.addSubview(refreshControl!) + firstly { getChannels(deviceTypeId: thisDevice!.deviceTypeId) }.then { _ in @@ -38,11 +49,27 @@ class DeviceDetailViewController: UITableViewController { }.done { _ in self.tableView.reloadData() SVProgressHUD.dismiss() + self.refreshControl?.endRefreshing() }.catch { error in print("Error fetching data in DeviceDetailViewController: \(error)") } } + + @objc func refresh() { + SVProgressHUD.show() + firstly { + getChannels(deviceTypeId: thisDevice!.deviceTypeId) + }.then { _ in + self.getChannelValues(deviceId: self.thisDevice!.id) + }.done { _ in + self.tableView.reloadData() + SVProgressHUD.dismiss() + self.refreshControl?.endRefreshing() + }.catch { error in + print("Error fetching data in DeviceDetailViewController: \(error)") + } + } @@ -172,10 +199,12 @@ class DeviceDetailViewController: UITableViewController { } } - func loadData() { - deviceTypes = realm.objects(DeviceType.self) - thisDevice = realm.objects(Device.self).filter("id == %d", thisDevice!.id).first! - tableView.reloadData() + func loadData() -> Promise { + return Promise { promise in + deviceTypes = realm.objects(DeviceType.self) + thisDevice = realm.objects(Device.self).filter("id == %d", thisDevice!.id).first! + promise.fulfill(()) + } } diff --git a/pocloud/Controller/DeviceListViewController.swift b/pocloud/Controller/DeviceListViewController.swift index 67362c0..168d729 100644 --- a/pocloud/Controller/DeviceListViewController.swift +++ b/pocloud/Controller/DeviceListViewController.swift @@ -28,31 +28,60 @@ class DeviceListViewController: UITableViewController { override func viewDidLoad() { super.viewDidLoad() + +// self.refreshControl = UIRefreshControl() +// refreshControl?.attributedTitle = NSAttributedString(string: "Pull to refresh") +// refreshControl?.addTarget(self, action: #selector(refresh), for: UIControlEvents.valueChanged) + SVProgressHUD.show() - loadData() firstly { - getDeviceTypes() - } - .then { _ in - self.getAddresses() - }.then { _ in - self.getGateways() - }.then { _ in - self.getDevices() + self.loadRealmData() + }.then{ _ in + self.loadJSONData() }.done { _ in - SVProgressHUD.dismiss() self.tableView.reloadData() + SVProgressHUD.dismiss() }.catch { error in print("Error in getting data in DeviceListViewController: \(error)") } - } - - override func didReceiveMemoryWarning() { - super.didReceiveMemoryWarning() - // Dispose of any resources that can be recreated. + + func loadJSONData() -> Promise{ + return Promise { promise in + firstly { + self.getDeviceTypes() + }.then { _ in + self.getAddresses() + }.then { _ in + self.getGateways() + }.then { _ in + self.getDevices() + }.done{ _ in + promise.fulfill(()) + }.catch { error in + promise.reject(error) + } + + } + } - + +// @objc func refresh() { +// +// SVProgressHUD.show() +// self.realm.refresh() +// firstly { +// self.loadJSONData() +// }.done { _ in +// self.tableView.reloadData() +// self.refreshControl?.endRefreshing() +// SVProgressHUD.dismiss() +// }.catch { error in +// print("Error in getting data in DeviceListViewController: \(error)") +// } +// +// } + // MARK: - Table view data source override func numberOfSections(in tableView: UITableView) -> Int { @@ -97,6 +126,7 @@ class DeviceListViewController: UITableViewController { performSegue(withIdentifier: "openDeviceDetailView", sender: self) } + //MARK: - Data Methods func getAddresses() ->Promise { @@ -284,12 +314,14 @@ class DeviceListViewController: UITableViewController { //MARK: - Realm Functions - func loadData() { - devices = realm.objects(Device.self) - deviceTypes = realm.objects(DeviceType.self) - gateways = realm.objects(Gateway.self) - addresses = realm.objects(Address.self) - tableView.reloadData() + func loadRealmData() -> Promise { + return Promise { promise in + devices = realm.objects(Device.self) + deviceTypes = realm.objects(DeviceType.self) + gateways = realm.objects(Gateway.self) + addresses = realm.objects(Address.self) + promise.fulfill(()) + } } } diff --git a/pocloud/Controller/HistoryGraphViewController.swift b/pocloud/Controller/HistoryGraphViewController.swift new file mode 100644 index 0000000..839834f --- /dev/null +++ b/pocloud/Controller/HistoryGraphViewController.swift @@ -0,0 +1,115 @@ +// +// HistoryGraphViewController.swift +// pocloud +// +// Created by Patrick McDonagh on 5/29/18. +// Copyright © 2018 patrickjmcd. All rights reserved. +// + +import UIKit +import SwiftChart + +class HistoryGraphViewController: UIViewController, ChartDelegate{ + @IBOutlet weak var leftConstraint: NSLayoutConstraint! + @IBOutlet weak var lineChart: Chart! + @IBOutlet weak var label: UILabel! + var thisChannel : Channel? + var channelHistory : [ChannelHistoryValue] = [ChannelHistoryValue]() + var user : User? + var dateFormatter = DateFormatter() + + let channelDataTypes: [Int : String] = [ + 0: "Unknown", + 1: "Float", + 2: "String", + 3: "Integer", + 4: "Boolean", + 5: "DateTime", + 6: "Timespan", + 7 :"File", + 8: "LatLng" + ] + + override func viewDidLoad() { + super.viewDidLoad() + dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss" + lineChart.delegate = self + loadChartData() + } + + func loadChartData() { + switch channelDataTypes[(thisChannel?.dataType)!] { + case "Float", "Integer": + print("Float or Integer") + let seriesData : [(x: Int, y: Double)] = channelHistory.map { (chHist) -> (x: Int, y: Double) in + (x: Int(chHist.timestamp!.timeIntervalSince1970), y:Double(chHist.value)!) + } + lineChart.add(ChartSeries(data: seriesData)) + setupLineChart() + + + default: + let alert = UIAlertController(title: "Invalid Type", message: "This channel is of type \(channelDataTypes[(thisChannel?.channelType)!] ?? "ERROR") and cannot be graphed yet.", preferredStyle: .alert) + let ok = UIAlertAction(title: "OK", style: .cancel, handler: { _ in + self.navigationController?.popViewController(animated: true) + }) + alert.addAction(ok) + present(alert, animated: true) + } + + + + + } + + func setupLineChart() { + let xLabelMax = lineChart.series.first?.data.first?.x + let xLabelMin = lineChart.series.first?.data.last?.x + + let xLabelDoubles = [0.0, 0.25, 0.5, 0.75, 1.0].map { (multiplier) -> Double in + xLabelMin! + (xLabelMax! - xLabelMin!) * multiplier + } + + lineChart.xLabels = xLabelDoubles + self.dateFormatter.dateFormat = "HH:mm:ss" + lineChart.xLabelsFormatter = { (i, d) -> String in + self.dateFormatter.string(from: Date(timeIntervalSince1970: d)) + } + lineChart.bottomInset = 40 + lineChart.series.first?.area = true + } + + func didTouchChart(_ chart: Chart, indexes: Array, x: Double, left: CGFloat) { + for (seriesIndex, dataIndex) in indexes.enumerated() { + if dataIndex != nil { + let value = chart.valueForSeries(seriesIndex, atIndex: dataIndex) + let valueFormat = self.channelDataTypes[(self.thisChannel?.dataType)!]! == "Integer" ? "%d" : "%.3f" + let valueString = String(format: valueFormat, value!) + self.dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss" + let timestamp = self.dateFormatter.string(from: channelHistory[dataIndex!].timestamp!) + self.label.text = "\(valueString) @ \(timestamp)" + let intendedLeftPosition = left - (0.5 * self.label.frame.width) + if intendedLeftPosition < 8 { + self.leftConstraint.constant = 8 + } else if (intendedLeftPosition + self.label.frame.width) > (self.view.frame.width - 8) { + self.leftConstraint.constant = self.view.frame.width - (8 + self.label.frame.width) + } else { + self.leftConstraint.constant = intendedLeftPosition + } + + + } + } + + + } + + func didFinishTouchingChart(_ chart: Chart) { + label.text = "" + } + + func didEndTouchingChart(_ chart: Chart) { + + } + +} diff --git a/pocloud/View/Base.lproj/Main.storyboard b/pocloud/View/Base.lproj/Main.storyboard index 9bafe0e..2a5cfe7 100644 --- a/pocloud/View/Base.lproj/Main.storyboard +++ b/pocloud/View/Base.lproj/Main.storyboard @@ -262,16 +262,19 @@ - + + - - @@ -307,6 +309,10 @@ + + + + @@ -487,6 +493,13 @@ + @@ -513,7 +526,9 @@ + + @@ -541,6 +556,64 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +