project.pbxproj 41 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795
  1. // !$*UTF8*$!
  2. {
  3. archiveVersion = 1;
  4. classes = {
  5. };
  6. objectVersion = 46;
  7. objects = {
  8. /* Begin PBXBuildFile section */
  9. 10EAADFFB07A1A8721B25D6B /* RemoteNetworkService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24923AF5D038F81EB3248A4C /* RemoteNetworkService.swift */; };
  10. A11C1E000000000000000001 /* APIClient.swift in Sources */ = {isa = PBXBuildFile; fileRef = A11C1E000000000000000002 /* APIClient.swift */; };
  11. A11C1E000000000000000003 /* BLEFilteringTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = A11C1E000000000000000004 /* BLEFilteringTests.swift */; };
  12. 128B1C7150980D1FBE511B79 /* RecordingEnvironmentDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB09EA3EE9CFFADB34B5B43A /* RecordingEnvironmentDetector.swift */; };
  13. 15EAFA0DBF80C789F02C5119 /* ProfileView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 086899076999CD4909BB9748 /* ProfileView.swift */; };
  14. 1A9161A601EB0954CD4B8A76 /* NetworkServiceProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F2D8AEE2E58FE0F2EF531D0 /* NetworkServiceProtocol.swift */; };
  15. 24472E311A9EB0785297B008 /* UserAccount.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51A1BE84E0C74D9F7BE9DC3E /* UserAccount.swift */; };
  16. 24D8D6477ED27DF7009D383C /* HapticManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = EAC9AB65FF3C9678A6192C88 /* HapticManager.swift */; };
  17. 26D05B0A440FC9B26E89E4F0 /* AuthServiceProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8CDFF4B7FD8488111C99DADF /* AuthServiceProtocol.swift */; };
  18. 2C16272F61F8B36A2EF69129 /* SessionDetailView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3FE663DCAAC5D1765BA31A3D /* SessionDetailView.swift */; };
  19. 2FD7EE603C849E281034CDD8 /* SyncAuthPromptModal.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3C76F629F3460D6F077C3708 /* SyncAuthPromptModal.swift */; };
  20. 36E871DAD9477A21AE2F01B7 /* AuthModalView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E10ED811D3048B961C4754A6 /* AuthModalView.swift */; };
  21. 3A7E453FDCA5DA9F96194B23 /* CelestiaTraceApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 628549E7FC16C58A15C9E1B7 /* CelestiaTraceApp.swift */; };
  22. 403219D9D8C972EC2AA8F84E /* EditProfileModalView.swift in Sources */ = {isa = PBXBuildFile; fileRef = AA13A08133A50094CBFFDDF9 /* EditProfileModalView.swift */; };
  23. 44732C9690578EEFC6840D05 /* DeviceListView.swift in Sources */ = {isa = PBXBuildFile; fileRef = F8CB67D1B2BDECAA772F3935 /* DeviceListView.swift */; };
  24. 490825791613AC52D06ECFA7 /* CelestiaSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = 83CE4996BF0CC501E3B7C567 /* CelestiaSession.swift */; };
  25. 4F4476444CB6838B2BE6EE87 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 71787388F9456A4784534BCC /* ContentView.swift */; };
  26. 503E109CBBC69E3015AE37A3 /* SilenceDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEED3C75367F66D6D6CE745D /* SilenceDetector.swift */; };
  27. 58EFA65370C61ED9A8EE6627 /* ActiveRecordingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = B7B9693BD9924C08A1F2ECD1 /* ActiveRecordingView.swift */; };
  28. 70A52B64861B541B4C9423AC /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5353BBE8E9552B4B486D8701 /* Foundation.framework */; };
  29. 75AE08DD135D81A3E19190EE /* DiscreetWarningBanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4F4B4B59E0916CE9ACFF362F /* DiscreetWarningBanner.swift */; };
  30. 7CA015A965BD30FAB3A92507 /* AuthManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 073CAFDB8C45F4EAA33FA0EA /* AuthManager.swift */; };
  31. 8B5C51BB4474283BDF4ADACB /* LiveWaveformView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1189E47F735DDB40D1E741E6 /* LiveWaveformView.swift */; };
  32. 8FBEE86CDB9635710EF85F1B /* BLEManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = F52FB139E193DBAC41F9D3F6 /* BLEManager.swift */; };
  33. 936A52ADE1ECF30D3650B8D8 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5353BBE8E9552B4B486D8701 /* Foundation.framework */; };
  34. 93F943133BCD792D991AA8E3 /* AudioChunk.swift in Sources */ = {isa = PBXBuildFile; fileRef = 320789BA1CB176C4DBC51E99 /* AudioChunk.swift */; };
  35. 96791550D01A4FD10EEB9BA3 /* RecordingViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 64180D833523B84195EE7E2A /* RecordingViewModel.swift */; };
  36. 9BDA680497BF5DD72A7BA8F3 /* HomeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6305E60488EEABAFE2E1D6D8 /* HomeView.swift */; };
  37. 9C5A0C9CDFCB8CFB10FF0B06 /* DeviceScanView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E7063E6702335B02B65775F4 /* DeviceScanView.swift */; };
  38. 9E4554980E7FF484BF400458 /* MultiTrackTimeline.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1DC9982D9E53E1A77CDB0470 /* MultiTrackTimeline.swift */; };
  39. A1B2C3D4E5F6012345678901 /* AudioPathHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = A1B2C3D4E5F6012345678902 /* AudioPathHelper.swift */; };
  40. A3F43A5200A626CBFB70395E /* CelestiaTimelineEvent.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4DAA0FBAEC0BF91F45D15B1E /* CelestiaTimelineEvent.swift */; };
  41. A9B8C7D6E5F4000000000001 /* SplashView.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9B8C7D6E5F4000000000002 /* SplashView.swift */; };
  42. A9B8C7D6E5F4000000000003 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = A9B8C7D6E5F4000000000004 /* Assets.xcassets */; };
  43. A9B8C7D6E5F4000000000007 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = A9B8C7D6E5F4000000000008 /* LaunchScreen.storyboard */; };
  44. AF09E026C9AB15874D870E1F /* PulsingRecordButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 77D23B83EDDD5489004E42DC /* PulsingRecordButton.swift */; };
  45. B262A6AF17A835DB666B2FAB /* SessionListView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0EBB5FC2AC0B9D31C7A04715 /* SessionListView.swift */; };
  46. BE12EF8734ABF645B2B28BBB /* PlaybackViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = E528009D607763F9E68EFBAD /* PlaybackViewModel.swift */; };
  47. C2807F9F2794AFA8BF03F104 /* ChangePasswordModalView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 66BE0E22B2A472E2AFC9CB98 /* ChangePasswordModalView.swift */; };
  48. C8794B9720CD85F518A82473 /* BoundDevice.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EF9EF0F961DB2B546B9C0F1 /* BoundDevice.swift */; };
  49. CD45B55AB993D054E50A43BE /* RealAudioRecorder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 977EB01CFA491A1573D7CF22 /* RealAudioRecorder.swift */; };
  50. DDC0D9C4883B4861CBC74C39 /* ChronoFeedRow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 9275B988BEBBEA80370E1AC4 /* ChronoFeedRow.swift */; };
  51. E78FC729614A4C93C97D564D /* ColorTheme.swift in Sources */ = {isa = PBXBuildFile; fileRef = 95AF20E8EF4319BBEBA608C1 /* ColorTheme.swift */; };
  52. F385E2FCB06D39917F51846E /* AudioRecorderProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4B407473A307EEAF2CB5EE94 /* AudioRecorderProtocol.swift */; };
  53. F3CB51CC262E0F4929EB129B /* RemoteAuthService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E13AE9CB7E8C9E3BACFC679 /* RemoteAuthService.swift */; };
  54. F5035B942DE1FEC10515D9D6 /* ImagePicker.swift in Sources */ = {isa = PBXBuildFile; fileRef = DADF67536C0CF9AE7F405C74 /* ImagePicker.swift */; };
  55. FD30DBB57E19055AB8F0A956 /* SettingsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4883D42730E6133FCC3C81C2 /* SettingsView.swift */; };
  56. /* End PBXBuildFile section */
  57. /* Begin PBXContainerItemProxy section */
  58. 55C3FF8383E750C9C9453EC5 /* PBXContainerItemProxy */ = {
  59. isa = PBXContainerItemProxy;
  60. containerPortal = 979128538DFF0B361F857241 /* Project object */;
  61. proxyType = 1;
  62. remoteGlobalIDString = EC79DCF0EBB2620B0FC21573;
  63. remoteInfo = CelestiaTrace;
  64. };
  65. /* End PBXContainerItemProxy section */
  66. /* Begin PBXFileReference section */
  67. 073CAFDB8C45F4EAA33FA0EA /* AuthManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AuthManager.swift; sourceTree = "<group>"; };
  68. 086899076999CD4909BB9748 /* ProfileView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ProfileView.swift; sourceTree = "<group>"; };
  69. 0EBB5FC2AC0B9D31C7A04715 /* SessionListView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = SessionListView.swift; sourceTree = "<group>"; };
  70. 1189E47F735DDB40D1E741E6 /* LiveWaveformView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = LiveWaveformView.swift; sourceTree = "<group>"; };
  71. 1DC9982D9E53E1A77CDB0470 /* MultiTrackTimeline.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = MultiTrackTimeline.swift; sourceTree = "<group>"; };
  72. 1EF9EF0F961DB2B546B9C0F1 /* BoundDevice.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = BoundDevice.swift; sourceTree = "<group>"; };
  73. 24923AF5D038F81EB3248A4C /* RemoteNetworkService.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = RemoteNetworkService.swift; sourceTree = "<group>"; };
  74. A11C1E000000000000000002 /* APIClient.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = APIClient.swift; sourceTree = "<group>"; };
  75. A11C1E000000000000000004 /* BLEFilteringTests.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = BLEFilteringTests.swift; sourceTree = "<group>"; };
  76. 320789BA1CB176C4DBC51E99 /* AudioChunk.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AudioChunk.swift; sourceTree = "<group>"; };
  77. 3C76F629F3460D6F077C3708 /* SyncAuthPromptModal.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = SyncAuthPromptModal.swift; sourceTree = "<group>"; };
  78. 3FE663DCAAC5D1765BA31A3D /* SessionDetailView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = SessionDetailView.swift; sourceTree = "<group>"; };
  79. 4883D42730E6133FCC3C81C2 /* SettingsView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = SettingsView.swift; sourceTree = "<group>"; };
  80. 4B407473A307EEAF2CB5EE94 /* AudioRecorderProtocol.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AudioRecorderProtocol.swift; sourceTree = "<group>"; };
  81. 4DAA0FBAEC0BF91F45D15B1E /* CelestiaTimelineEvent.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CelestiaTimelineEvent.swift; sourceTree = "<group>"; };
  82. 4E13AE9CB7E8C9E3BACFC679 /* RemoteAuthService.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = RemoteAuthService.swift; sourceTree = "<group>"; };
  83. 4F4B4B59E0916CE9ACFF362F /* DiscreetWarningBanner.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = DiscreetWarningBanner.swift; sourceTree = "<group>"; };
  84. 51A1BE84E0C74D9F7BE9DC3E /* UserAccount.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = UserAccount.swift; sourceTree = "<group>"; };
  85. 5353BBE8E9552B4B486D8701 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS18.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; };
  86. 628549E7FC16C58A15C9E1B7 /* CelestiaTraceApp.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CelestiaTraceApp.swift; sourceTree = "<group>"; };
  87. 6305E60488EEABAFE2E1D6D8 /* HomeView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = HomeView.swift; sourceTree = "<group>"; };
  88. 64180D833523B84195EE7E2A /* RecordingViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = RecordingViewModel.swift; sourceTree = "<group>"; };
  89. 66BE0E22B2A472E2AFC9CB98 /* ChangePasswordModalView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ChangePasswordModalView.swift; sourceTree = "<group>"; };
  90. 71729F8F4A48D77C1898C27B /* CelestiaTraceTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = CelestiaTraceTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
  91. 71787388F9456A4784534BCC /* ContentView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = "<group>"; };
  92. 77D23B83EDDD5489004E42DC /* PulsingRecordButton.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = PulsingRecordButton.swift; sourceTree = "<group>"; };
  93. 7F2D8AEE2E58FE0F2EF531D0 /* NetworkServiceProtocol.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = NetworkServiceProtocol.swift; sourceTree = "<group>"; };
  94. 83CE4996BF0CC501E3B7C567 /* CelestiaSession.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CelestiaSession.swift; sourceTree = "<group>"; };
  95. 8CDFF4B7FD8488111C99DADF /* AuthServiceProtocol.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AuthServiceProtocol.swift; sourceTree = "<group>"; };
  96. 9275B988BEBBEA80370E1AC4 /* ChronoFeedRow.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ChronoFeedRow.swift; sourceTree = "<group>"; };
  97. 95AF20E8EF4319BBEBA608C1 /* ColorTheme.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ColorTheme.swift; sourceTree = "<group>"; };
  98. 977EB01CFA491A1573D7CF22 /* RealAudioRecorder.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = RealAudioRecorder.swift; sourceTree = "<group>"; };
  99. A1B2C3D4E5F6012345678902 /* AudioPathHelper.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AudioPathHelper.swift; sourceTree = "<group>"; };
  100. A9B8C7D6E5F4000000000002 /* SplashView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = SplashView.swift; sourceTree = "<group>"; };
  101. A9B8C7D6E5F4000000000004 /* Assets.xcassets */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
  102. A9B8C7D6E5F4000000000008 /* LaunchScreen.storyboard */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = file.storyboard; path = LaunchScreen.storyboard; sourceTree = "<group>"; };
  103. A9B8C7D6E5F4000000000009 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
  104. AA13A08133A50094CBFFDDF9 /* EditProfileModalView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = EditProfileModalView.swift; sourceTree = "<group>"; };
  105. AEED3C75367F66D6D6CE745D /* SilenceDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = SilenceDetector.swift; sourceTree = "<group>"; };
  106. B7B9693BD9924C08A1F2ECD1 /* ActiveRecordingView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ActiveRecordingView.swift; sourceTree = "<group>"; };
  107. DADF67536C0CF9AE7F405C74 /* ImagePicker.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ImagePicker.swift; sourceTree = "<group>"; };
  108. DB09EA3EE9CFFADB34B5B43A /* RecordingEnvironmentDetector.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = RecordingEnvironmentDetector.swift; sourceTree = "<group>"; };
  109. DB56F0DFCB1FE77D7636B43D /* CelestiaTrace.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = CelestiaTrace.app; sourceTree = BUILT_PRODUCTS_DIR; };
  110. E10ED811D3048B961C4754A6 /* AuthModalView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = AuthModalView.swift; sourceTree = "<group>"; };
  111. E528009D607763F9E68EFBAD /* PlaybackViewModel.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = PlaybackViewModel.swift; sourceTree = "<group>"; };
  112. E7063E6702335B02B65775F4 /* DeviceScanView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = DeviceScanView.swift; sourceTree = "<group>"; };
  113. EAC9AB65FF3C9678A6192C88 /* HapticManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = HapticManager.swift; sourceTree = "<group>"; };
  114. F52FB139E193DBAC41F9D3F6 /* BLEManager.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = BLEManager.swift; sourceTree = "<group>"; };
  115. F8CB67D1B2BDECAA772F3935 /* DeviceListView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = DeviceListView.swift; sourceTree = "<group>"; };
  116. /* End PBXFileReference section */
  117. /* Begin PBXFrameworksBuildPhase section */
  118. 41887A64604410C0C61AEBD5 /* Frameworks */ = {
  119. isa = PBXFrameworksBuildPhase;
  120. buildActionMask = 2147483647;
  121. files = (
  122. 70A52B64861B541B4C9423AC /* Foundation.framework in Frameworks */,
  123. );
  124. runOnlyForDeploymentPostprocessing = 0;
  125. };
  126. 6FF5C5F71B01A15E70EBC20C /* Frameworks */ = {
  127. isa = PBXFrameworksBuildPhase;
  128. buildActionMask = 2147483647;
  129. files = (
  130. 936A52ADE1ECF30D3650B8D8 /* Foundation.framework in Frameworks */,
  131. );
  132. runOnlyForDeploymentPostprocessing = 0;
  133. };
  134. /* End PBXFrameworksBuildPhase section */
  135. /* Begin PBXGroup section */
  136. 21AD838392427D841273B592 /* Detail */ = {
  137. isa = PBXGroup;
  138. children = (
  139. 3FE663DCAAC5D1765BA31A3D /* SessionDetailView.swift */,
  140. 9275B988BEBBEA80370E1AC4 /* ChronoFeedRow.swift */,
  141. 1DC9982D9E53E1A77CDB0470 /* MultiTrackTimeline.swift */,
  142. );
  143. path = Detail;
  144. sourceTree = "<group>";
  145. };
  146. 2297351526BD0F24ED0714A0 /* Products */ = {
  147. isa = PBXGroup;
  148. children = (
  149. DB56F0DFCB1FE77D7636B43D /* CelestiaTrace.app */,
  150. 71729F8F4A48D77C1898C27B /* CelestiaTraceTests.xctest */,
  151. );
  152. name = Products;
  153. sourceTree = "<group>";
  154. };
  155. 2626EC2897F60B86D833D875 /* Models */ = {
  156. isa = PBXGroup;
  157. children = (
  158. 83CE4996BF0CC501E3B7C567 /* CelestiaSession.swift */,
  159. 4DAA0FBAEC0BF91F45D15B1E /* CelestiaTimelineEvent.swift */,
  160. 320789BA1CB176C4DBC51E99 /* AudioChunk.swift */,
  161. 1EF9EF0F961DB2B546B9C0F1 /* BoundDevice.swift */,
  162. 51A1BE84E0C74D9F7BE9DC3E /* UserAccount.swift */,
  163. );
  164. path = Models;
  165. sourceTree = "<group>";
  166. };
  167. 31A0E1032B1847F49A6241BD /* Home */ = {
  168. isa = PBXGroup;
  169. children = (
  170. 6305E60488EEABAFE2E1D6D8 /* HomeView.swift */,
  171. );
  172. path = Home;
  173. sourceTree = "<group>";
  174. };
  175. 32200F0540C3761CA9D1495A /* CelestiaTraceTests */ = {
  176. isa = PBXGroup;
  177. children = (
  178. A11C1E000000000000000004 /* BLEFilteringTests.swift */,
  179. );
  180. name = CelestiaTraceTests;
  181. path = Tests/CelestiaTraceTests;
  182. sourceTree = "<group>";
  183. };
  184. 44E01A3C9C72DBC8106DEE17 /* Profile */ = {
  185. isa = PBXGroup;
  186. children = (
  187. 086899076999CD4909BB9748 /* ProfileView.swift */,
  188. 7249FD4D94237968D3D5F3AC /* Auth */,
  189. F7861FD2C1283A2FC2FDB934 /* Devices */,
  190. );
  191. path = Profile;
  192. sourceTree = "<group>";
  193. };
  194. 565448EB878982B445E267AF /* Frameworks */ = {
  195. isa = PBXGroup;
  196. children = (
  197. AA9F20B44A68E171B39266B0 /* iOS */,
  198. );
  199. name = Frameworks;
  200. sourceTree = "<group>";
  201. };
  202. 5BCD8C04CE34AA3B16B8C831 /* Auth */ = {
  203. isa = PBXGroup;
  204. children = (
  205. 8CDFF4B7FD8488111C99DADF /* AuthServiceProtocol.swift */,
  206. 4E13AE9CB7E8C9E3BACFC679 /* RemoteAuthService.swift */,
  207. 073CAFDB8C45F4EAA33FA0EA /* AuthManager.swift */,
  208. );
  209. path = Auth;
  210. sourceTree = "<group>";
  211. };
  212. 7249FD4D94237968D3D5F3AC /* Auth */ = {
  213. isa = PBXGroup;
  214. children = (
  215. E10ED811D3048B961C4754A6 /* AuthModalView.swift */,
  216. 66BE0E22B2A472E2AFC9CB98 /* ChangePasswordModalView.swift */,
  217. AA13A08133A50094CBFFDDF9 /* EditProfileModalView.swift */,
  218. );
  219. path = Auth;
  220. sourceTree = "<group>";
  221. };
  222. 7B90B8D292E18F60A02CDFE2 /* Views */ = {
  223. isa = PBXGroup;
  224. children = (
  225. A9B8C7D6E5F4000000000005 /* Splash */,
  226. B7A7A2A0082F059CCD6BE791 /* Settings */,
  227. 31A0E1032B1847F49A6241BD /* Home */,
  228. BC1D87D6D1785EA7D6AA6AF7 /* Recording */,
  229. ADD73EAAF268C8B37E097585 /* Components */,
  230. 21AD838392427D841273B592 /* Detail */,
  231. 44E01A3C9C72DBC8106DEE17 /* Profile */,
  232. 96406E65C0CB98B68F7082F4 /* History */,
  233. 71787388F9456A4784534BCC /* ContentView.swift */,
  234. );
  235. path = Views;
  236. sourceTree = "<group>";
  237. };
  238. 96406E65C0CB98B68F7082F4 /* History */ = {
  239. isa = PBXGroup;
  240. children = (
  241. 0EBB5FC2AC0B9D31C7A04715 /* SessionListView.swift */,
  242. );
  243. path = History;
  244. sourceTree = "<group>";
  245. };
  246. A9B8C7D6E5F4000000000005 /* Splash */ = {
  247. isa = PBXGroup;
  248. children = (
  249. A9B8C7D6E5F4000000000002 /* SplashView.swift */,
  250. );
  251. path = Splash;
  252. sourceTree = "<group>";
  253. };
  254. A9B8C7D6E5F4000000000006 /* Resources */ = {
  255. isa = PBXGroup;
  256. children = (
  257. A9B8C7D6E5F4000000000004 /* Assets.xcassets */,
  258. A9B8C7D6E5F4000000000008 /* LaunchScreen.storyboard */,
  259. A9B8C7D6E5F4000000000009 /* Info.plist */,
  260. );
  261. path = Resources;
  262. sourceTree = "<group>";
  263. };
  264. AA9F20B44A68E171B39266B0 /* iOS */ = {
  265. isa = PBXGroup;
  266. children = (
  267. 5353BBE8E9552B4B486D8701 /* Foundation.framework */,
  268. );
  269. name = iOS;
  270. sourceTree = "<group>";
  271. };
  272. ADD73EAAF268C8B37E097585 /* Components */ = {
  273. isa = PBXGroup;
  274. children = (
  275. 4F4B4B59E0916CE9ACFF362F /* DiscreetWarningBanner.swift */,
  276. DADF67536C0CF9AE7F405C74 /* ImagePicker.swift */,
  277. 3C76F629F3460D6F077C3708 /* SyncAuthPromptModal.swift */,
  278. 77D23B83EDDD5489004E42DC /* PulsingRecordButton.swift */,
  279. );
  280. path = Components;
  281. sourceTree = "<group>";
  282. };
  283. AF823CBC596A095A54F096C1 /* Bluetooth */ = {
  284. isa = PBXGroup;
  285. children = (
  286. F52FB139E193DBAC41F9D3F6 /* BLEManager.swift */,
  287. );
  288. path = Bluetooth;
  289. sourceTree = "<group>";
  290. };
  291. B33580BE3AF0DC9085B1D3A1 /* Services */ = {
  292. isa = PBXGroup;
  293. children = (
  294. 5BCD8C04CE34AA3B16B8C831 /* Auth */,
  295. EAC9AB65FF3C9678A6192C88 /* HapticManager.swift */,
  296. DB59940538488B1E753621A8 /* Network */,
  297. FD4D76A3358AAF1519C279F1 /* Audio */,
  298. AF823CBC596A095A54F096C1 /* Bluetooth */,
  299. );
  300. path = Services;
  301. sourceTree = "<group>";
  302. };
  303. B5CB52A86415BBB0B9DCE932 /* CelestiaTrace */ = {
  304. isa = PBXGroup;
  305. children = (
  306. A9B8C7D6E5F4000000000006 /* Resources */,
  307. CC066F5A1023EDB077FDD88E /* ViewModels */,
  308. DA204128E169127A0B8C4B30 /* App */,
  309. 2626EC2897F60B86D833D875 /* Models */,
  310. 7B90B8D292E18F60A02CDFE2 /* Views */,
  311. B33580BE3AF0DC9085B1D3A1 /* Services */,
  312. );
  313. path = CelestiaTrace;
  314. sourceTree = "<group>";
  315. };
  316. B7A7A2A0082F059CCD6BE791 /* Settings */ = {
  317. isa = PBXGroup;
  318. children = (
  319. 4883D42730E6133FCC3C81C2 /* SettingsView.swift */,
  320. );
  321. path = Settings;
  322. sourceTree = "<group>";
  323. };
  324. BC1D87D6D1785EA7D6AA6AF7 /* Recording */ = {
  325. isa = PBXGroup;
  326. children = (
  327. B7B9693BD9924C08A1F2ECD1 /* ActiveRecordingView.swift */,
  328. 1189E47F735DDB40D1E741E6 /* LiveWaveformView.swift */,
  329. );
  330. path = Recording;
  331. sourceTree = "<group>";
  332. };
  333. CC066F5A1023EDB077FDD88E /* ViewModels */ = {
  334. isa = PBXGroup;
  335. children = (
  336. E528009D607763F9E68EFBAD /* PlaybackViewModel.swift */,
  337. 64180D833523B84195EE7E2A /* RecordingViewModel.swift */,
  338. );
  339. path = ViewModels;
  340. sourceTree = "<group>";
  341. };
  342. D9CB1BAF8E8DB5E4E073CC77 = {
  343. isa = PBXGroup;
  344. children = (
  345. 2297351526BD0F24ED0714A0 /* Products */,
  346. 565448EB878982B445E267AF /* Frameworks */,
  347. B5CB52A86415BBB0B9DCE932 /* CelestiaTrace */,
  348. 32200F0540C3761CA9D1495A /* CelestiaTraceTests */,
  349. );
  350. sourceTree = "<group>";
  351. };
  352. DA204128E169127A0B8C4B30 /* App */ = {
  353. isa = PBXGroup;
  354. children = (
  355. 95AF20E8EF4319BBEBA608C1 /* ColorTheme.swift */,
  356. 628549E7FC16C58A15C9E1B7 /* CelestiaTraceApp.swift */,
  357. );
  358. path = App;
  359. sourceTree = "<group>";
  360. };
  361. DB59940538488B1E753621A8 /* Network */ = {
  362. isa = PBXGroup;
  363. children = (
  364. 7F2D8AEE2E58FE0F2EF531D0 /* NetworkServiceProtocol.swift */,
  365. A11C1E000000000000000002 /* APIClient.swift */,
  366. 24923AF5D038F81EB3248A4C /* RemoteNetworkService.swift */,
  367. );
  368. path = Network;
  369. sourceTree = "<group>";
  370. };
  371. F7861FD2C1283A2FC2FDB934 /* Devices */ = {
  372. isa = PBXGroup;
  373. children = (
  374. F8CB67D1B2BDECAA772F3935 /* DeviceListView.swift */,
  375. E7063E6702335B02B65775F4 /* DeviceScanView.swift */,
  376. );
  377. path = Devices;
  378. sourceTree = "<group>";
  379. };
  380. FD4D76A3358AAF1519C279F1 /* Audio */ = {
  381. isa = PBXGroup;
  382. children = (
  383. A1B2C3D4E5F6012345678902 /* AudioPathHelper.swift */,
  384. AEED3C75367F66D6D6CE745D /* SilenceDetector.swift */,
  385. DB09EA3EE9CFFADB34B5B43A /* RecordingEnvironmentDetector.swift */,
  386. 977EB01CFA491A1573D7CF22 /* RealAudioRecorder.swift */,
  387. 4B407473A307EEAF2CB5EE94 /* AudioRecorderProtocol.swift */,
  388. );
  389. path = Audio;
  390. sourceTree = "<group>";
  391. };
  392. /* End PBXGroup section */
  393. /* Begin PBXNativeTarget section */
  394. D5681575EDB1ABEE4093C509 /* CelestiaTraceTests */ = {
  395. isa = PBXNativeTarget;
  396. buildConfigurationList = 0E7E08AA696927CB2EBFCE00 /* Build configuration list for PBXNativeTarget "CelestiaTraceTests" */;
  397. buildPhases = (
  398. 1F77E010196A2F5F89E27F19 /* Sources */,
  399. 41887A64604410C0C61AEBD5 /* Frameworks */,
  400. D875758EF038ED00E0A14D96 /* Resources */,
  401. );
  402. buildRules = (
  403. );
  404. dependencies = (
  405. 6F0B632A5E411D7F9FFE0767 /* PBXTargetDependency */,
  406. );
  407. name = CelestiaTraceTests;
  408. productName = CelestiaTraceTests;
  409. productReference = 71729F8F4A48D77C1898C27B /* CelestiaTraceTests.xctest */;
  410. productType = "com.apple.product-type.bundle.unit-test";
  411. };
  412. EC79DCF0EBB2620B0FC21573 /* CelestiaTrace */ = {
  413. isa = PBXNativeTarget;
  414. buildConfigurationList = 902A4F79574BE80E9469463E /* Build configuration list for PBXNativeTarget "CelestiaTrace" */;
  415. buildPhases = (
  416. 9E60C6991F09AB5E80EF4283 /* Sources */,
  417. 6FF5C5F71B01A15E70EBC20C /* Frameworks */,
  418. 2B844E255303FD43D7D16A02 /* Resources */,
  419. );
  420. buildRules = (
  421. );
  422. dependencies = (
  423. );
  424. name = CelestiaTrace;
  425. productName = CelestiaTrace;
  426. productReference = DB56F0DFCB1FE77D7636B43D /* CelestiaTrace.app */;
  427. productType = "com.apple.product-type.application";
  428. };
  429. /* End PBXNativeTarget section */
  430. /* Begin PBXProject section */
  431. 979128538DFF0B361F857241 /* Project object */ = {
  432. isa = PBXProject;
  433. attributes = {
  434. LastSwiftUpdateCheck = 1600;
  435. LastUpgradeCheck = 1600;
  436. TargetAttributes = {
  437. EC79DCF0EBB2620B0FC21573 = {
  438. DevelopmentTeam = 5ERVQEJ497;
  439. ProvisioningStyle = Automatic;
  440. };
  441. };
  442. };
  443. buildConfigurationList = C378CBFE73C70F1388740C61 /* Build configuration list for PBXProject "CelestiaTrace" */;
  444. compatibilityVersion = "Xcode 3.2";
  445. developmentRegion = en;
  446. hasScannedForEncodings = 0;
  447. knownRegions = (
  448. en,
  449. Base,
  450. );
  451. mainGroup = D9CB1BAF8E8DB5E4E073CC77;
  452. productRefGroup = 2297351526BD0F24ED0714A0 /* Products */;
  453. projectDirPath = "";
  454. projectRoot = "";
  455. targets = (
  456. EC79DCF0EBB2620B0FC21573 /* CelestiaTrace */,
  457. D5681575EDB1ABEE4093C509 /* CelestiaTraceTests */,
  458. );
  459. };
  460. /* End PBXProject section */
  461. /* Begin PBXResourcesBuildPhase section */
  462. 2B844E255303FD43D7D16A02 /* Resources */ = {
  463. isa = PBXResourcesBuildPhase;
  464. buildActionMask = 2147483647;
  465. files = (
  466. A9B8C7D6E5F4000000000003 /* Assets.xcassets in Resources */,
  467. A9B8C7D6E5F4000000000007 /* LaunchScreen.storyboard in Resources */,
  468. );
  469. runOnlyForDeploymentPostprocessing = 0;
  470. };
  471. D875758EF038ED00E0A14D96 /* Resources */ = {
  472. isa = PBXResourcesBuildPhase;
  473. buildActionMask = 2147483647;
  474. files = (
  475. );
  476. runOnlyForDeploymentPostprocessing = 0;
  477. };
  478. /* End PBXResourcesBuildPhase section */
  479. /* Begin PBXSourcesBuildPhase section */
  480. 1F77E010196A2F5F89E27F19 /* Sources */ = {
  481. isa = PBXSourcesBuildPhase;
  482. buildActionMask = 2147483647;
  483. files = (
  484. A11C1E000000000000000003 /* BLEFilteringTests.swift in Sources */,
  485. );
  486. runOnlyForDeploymentPostprocessing = 0;
  487. };
  488. 9E60C6991F09AB5E80EF4283 /* Sources */ = {
  489. isa = PBXSourcesBuildPhase;
  490. buildActionMask = 2147483647;
  491. files = (
  492. A9B8C7D6E5F4000000000001 /* SplashView.swift in Sources */,
  493. BE12EF8734ABF645B2B28BBB /* PlaybackViewModel.swift in Sources */,
  494. 96791550D01A4FD10EEB9BA3 /* RecordingViewModel.swift in Sources */,
  495. E78FC729614A4C93C97D564D /* ColorTheme.swift in Sources */,
  496. 3A7E453FDCA5DA9F96194B23 /* CelestiaTraceApp.swift in Sources */,
  497. 490825791613AC52D06ECFA7 /* CelestiaSession.swift in Sources */,
  498. A3F43A5200A626CBFB70395E /* CelestiaTimelineEvent.swift in Sources */,
  499. 93F943133BCD792D991AA8E3 /* AudioChunk.swift in Sources */,
  500. C8794B9720CD85F518A82473 /* BoundDevice.swift in Sources */,
  501. 24472E311A9EB0785297B008 /* UserAccount.swift in Sources */,
  502. FD30DBB57E19055AB8F0A956 /* SettingsView.swift in Sources */,
  503. 9BDA680497BF5DD72A7BA8F3 /* HomeView.swift in Sources */,
  504. 58EFA65370C61ED9A8EE6627 /* ActiveRecordingView.swift in Sources */,
  505. 8B5C51BB4474283BDF4ADACB /* LiveWaveformView.swift in Sources */,
  506. 75AE08DD135D81A3E19190EE /* DiscreetWarningBanner.swift in Sources */,
  507. F5035B942DE1FEC10515D9D6 /* ImagePicker.swift in Sources */,
  508. 2FD7EE603C849E281034CDD8 /* SyncAuthPromptModal.swift in Sources */,
  509. AF09E026C9AB15874D870E1F /* PulsingRecordButton.swift in Sources */,
  510. 2C16272F61F8B36A2EF69129 /* SessionDetailView.swift in Sources */,
  511. DDC0D9C4883B4861CBC74C39 /* ChronoFeedRow.swift in Sources */,
  512. 9E4554980E7FF484BF400458 /* MultiTrackTimeline.swift in Sources */,
  513. 15EAFA0DBF80C789F02C5119 /* ProfileView.swift in Sources */,
  514. 36E871DAD9477A21AE2F01B7 /* AuthModalView.swift in Sources */,
  515. C2807F9F2794AFA8BF03F104 /* ChangePasswordModalView.swift in Sources */,
  516. 403219D9D8C972EC2AA8F84E /* EditProfileModalView.swift in Sources */,
  517. 44732C9690578EEFC6840D05 /* DeviceListView.swift in Sources */,
  518. 9C5A0C9CDFCB8CFB10FF0B06 /* DeviceScanView.swift in Sources */,
  519. B262A6AF17A835DB666B2FAB /* SessionListView.swift in Sources */,
  520. 4F4476444CB6838B2BE6EE87 /* ContentView.swift in Sources */,
  521. 26D05B0A440FC9B26E89E4F0 /* AuthServiceProtocol.swift in Sources */,
  522. F3CB51CC262E0F4929EB129B /* RemoteAuthService.swift in Sources */,
  523. 7CA015A965BD30FAB3A92507 /* AuthManager.swift in Sources */,
  524. 24D8D6477ED27DF7009D383C /* HapticManager.swift in Sources */,
  525. 1A9161A601EB0954CD4B8A76 /* NetworkServiceProtocol.swift in Sources */,
  526. A11C1E000000000000000001 /* APIClient.swift in Sources */,
  527. 10EAADFFB07A1A8721B25D6B /* RemoteNetworkService.swift in Sources */,
  528. 503E109CBBC69E3015AE37A3 /* SilenceDetector.swift in Sources */,
  529. 128B1C7150980D1FBE511B79 /* RecordingEnvironmentDetector.swift in Sources */,
  530. CD45B55AB993D054E50A43BE /* RealAudioRecorder.swift in Sources */,
  531. F385E2FCB06D39917F51846E /* AudioRecorderProtocol.swift in Sources */,
  532. A1B2C3D4E5F6012345678901 /* AudioPathHelper.swift in Sources */,
  533. 8FBEE86CDB9635710EF85F1B /* BLEManager.swift in Sources */,
  534. );
  535. runOnlyForDeploymentPostprocessing = 0;
  536. };
  537. /* End PBXSourcesBuildPhase section */
  538. /* Begin PBXTargetDependency section */
  539. 6F0B632A5E411D7F9FFE0767 /* PBXTargetDependency */ = {
  540. isa = PBXTargetDependency;
  541. name = CelestiaTrace;
  542. target = EC79DCF0EBB2620B0FC21573 /* CelestiaTrace */;
  543. targetProxy = 55C3FF8383E750C9C9453EC5 /* PBXContainerItemProxy */;
  544. };
  545. /* End PBXTargetDependency section */
  546. /* Begin XCBuildConfiguration section */
  547. 76F4E0F0A78EC9D84B954B50 /* Debug */ = {
  548. isa = XCBuildConfiguration;
  549. buildSettings = {
  550. ALWAYS_SEARCH_USER_PATHS = NO;
  551. CLANG_ANALYZER_NONNULL = YES;
  552. CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
  553. CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
  554. CLANG_CXX_LIBRARY = "libc++";
  555. CLANG_ENABLE_MODULES = YES;
  556. CLANG_ENABLE_OBJC_ARC = YES;
  557. CLANG_ENABLE_OBJC_WEAK = YES;
  558. CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
  559. CLANG_WARN_BOOL_CONVERSION = YES;
  560. CLANG_WARN_COMMA = YES;
  561. CLANG_WARN_CONSTANT_CONVERSION = YES;
  562. CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
  563. CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
  564. CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
  565. CLANG_WARN_EMPTY_BODY = YES;
  566. CLANG_WARN_ENUM_CONVERSION = YES;
  567. CLANG_WARN_INFINITE_RECURSION = YES;
  568. CLANG_WARN_INT_CONVERSION = YES;
  569. CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
  570. CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
  571. CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
  572. CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
  573. CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
  574. CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
  575. CLANG_WARN_STRICT_PROTOTYPES = YES;
  576. CLANG_WARN_SUSPICIOUS_MOVE = YES;
  577. CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
  578. CLANG_WARN_UNREACHABLE_CODE = YES;
  579. CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
  580. COPY_PHASE_STRIP = NO;
  581. DEBUG_INFORMATION_FORMAT = dwarf;
  582. ENABLE_STRICT_OBJC_MSGSEND = YES;
  583. ENABLE_TESTABILITY = YES;
  584. GCC_C_LANGUAGE_STANDARD = gnu11;
  585. GCC_DYNAMIC_NO_PIC = NO;
  586. GCC_NO_COMMON_BLOCKS = YES;
  587. GCC_OPTIMIZATION_LEVEL = 0;
  588. GCC_PREPROCESSOR_DEFINITIONS = (
  589. "DEBUG=1",
  590. "$(inherited)",
  591. );
  592. GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
  593. GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
  594. GCC_WARN_UNDECLARED_SELECTOR = YES;
  595. GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
  596. GCC_WARN_UNUSED_FUNCTION = YES;
  597. GCC_WARN_UNUSED_VARIABLE = YES;
  598. MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
  599. MTL_FAST_MATH = YES;
  600. ONLY_ACTIVE_ARCH = YES;
  601. PRODUCT_NAME = "$(TARGET_NAME)";
  602. SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
  603. SWIFT_OPTIMIZATION_LEVEL = "-Onone";
  604. SWIFT_VERSION = 5.0;
  605. };
  606. name = Debug;
  607. };
  608. 95AB591F506D02959044D749 /* Debug */ = {
  609. isa = XCBuildConfiguration;
  610. buildSettings = {
  611. ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
  612. ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
  613. CLANG_ENABLE_OBJC_WEAK = NO;
  614. CODE_SIGN_STYLE = Automatic;
  615. CURRENT_PROJECT_VERSION = 1;
  616. DEVELOPMENT_ASSET_PATHS = "\"\"";
  617. DEVELOPMENT_TEAM = 5ERVQEJ497;
  618. GENERATE_INFOPLIST_FILE = NO;
  619. INFOPLIST_FILE = CelestiaTrace/Resources/Info.plist;
  620. INFOPLIST_KEY_CFBundleDisplayName = "星痕";
  621. INFOPLIST_KEY_NSBluetoothAlwaysUsageDescription = "需要蓝牙权限以扫描和绑定 BLE 录音设备";
  622. INFOPLIST_KEY_NSBluetoothPeripheralUsageDescription = "需要蓝牙权限以与录音设备传输数据";
  623. INFOPLIST_KEY_NSCameraUsageDescription = "需要相机权限以在现场录制中拍摄照片记录";
  624. INFOPLIST_KEY_NSMicrophoneUsageDescription = "需要麦克风权限以进行会议现场的音轨录音";
  625. INFOPLIST_KEY_NSPhotoLibraryUsageDescription = "需要相册权限以选择照片记录";
  626. INFOPLIST_KEY_UILaunchStoryboardName = LaunchScreen;
  627. INFOPLIST_KEY_UISupportedInterfaceOrientations = UIInterfaceOrientationPortrait;
  628. IPHONEOS_DEPLOYMENT_TARGET = 17.0;
  629. LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
  630. MARKETING_VERSION = 1.0.0;
  631. PRODUCT_BUNDLE_IDENTIFIER = com.celestia.trace;
  632. SDKROOT = iphoneos;
  633. SWIFT_VERSION = 5.9;
  634. TARGETED_DEVICE_FAMILY = 1;
  635. };
  636. name = Debug;
  637. };
  638. B1CCB86EBE298ADE0B572050 /* Release */ = {
  639. isa = XCBuildConfiguration;
  640. buildSettings = {
  641. ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
  642. ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
  643. CLANG_ENABLE_OBJC_WEAK = NO;
  644. CODE_SIGN_STYLE = Automatic;
  645. CURRENT_PROJECT_VERSION = 1;
  646. DEVELOPMENT_ASSET_PATHS = "\"\"";
  647. DEVELOPMENT_TEAM = 5ERVQEJ497;
  648. GENERATE_INFOPLIST_FILE = NO;
  649. INFOPLIST_FILE = CelestiaTrace/Resources/Info.plist;
  650. INFOPLIST_KEY_CFBundleDisplayName = "星痕";
  651. INFOPLIST_KEY_NSBluetoothAlwaysUsageDescription = "需要蓝牙权限以扫描和绑定 BLE 录音设备";
  652. INFOPLIST_KEY_NSBluetoothPeripheralUsageDescription = "需要蓝牙权限以与录音设备传输数据";
  653. INFOPLIST_KEY_NSCameraUsageDescription = "需要相机权限以在现场录制中拍摄照片记录";
  654. INFOPLIST_KEY_NSMicrophoneUsageDescription = "需要麦克风权限以进行会议现场的音轨录音";
  655. INFOPLIST_KEY_NSPhotoLibraryUsageDescription = "需要相册权限以选择照片记录";
  656. INFOPLIST_KEY_UILaunchStoryboardName = LaunchScreen;
  657. INFOPLIST_KEY_UISupportedInterfaceOrientations = UIInterfaceOrientationPortrait;
  658. IPHONEOS_DEPLOYMENT_TARGET = 17.0;
  659. LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
  660. MARKETING_VERSION = 1.0.0;
  661. PRODUCT_BUNDLE_IDENTIFIER = com.celestia.trace;
  662. SDKROOT = iphoneos;
  663. SWIFT_VERSION = 5.9;
  664. TARGETED_DEVICE_FAMILY = 1;
  665. VALIDATE_PRODUCT = YES;
  666. };
  667. name = Release;
  668. };
  669. B827886CD5B378B8C90638F7 /* Release */ = {
  670. isa = XCBuildConfiguration;
  671. buildSettings = {
  672. BUNDLE_LOADER = "$(TEST_HOST)";
  673. CLANG_ENABLE_OBJC_WEAK = NO;
  674. GENERATE_INFOPLIST_FILE = YES;
  675. IPHONEOS_DEPLOYMENT_TARGET = 17.0;
  676. SDKROOT = iphoneos;
  677. SWIFT_VERSION = 5.9;
  678. TEST_HOST = "$(BUILT_PRODUCTS_DIR)/CelestiaTrace.app/CelestiaTrace";
  679. TEST_TARGET_NAME = CelestiaTrace;
  680. VALIDATE_PRODUCT = YES;
  681. };
  682. name = Release;
  683. };
  684. BCD7DB2413FD475C8DCF0B12 /* Release */ = {
  685. isa = XCBuildConfiguration;
  686. buildSettings = {
  687. ALWAYS_SEARCH_USER_PATHS = NO;
  688. CLANG_ANALYZER_NONNULL = YES;
  689. CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
  690. CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
  691. CLANG_CXX_LIBRARY = "libc++";
  692. CLANG_ENABLE_MODULES = YES;
  693. CLANG_ENABLE_OBJC_ARC = YES;
  694. CLANG_ENABLE_OBJC_WEAK = YES;
  695. CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
  696. CLANG_WARN_BOOL_CONVERSION = YES;
  697. CLANG_WARN_COMMA = YES;
  698. CLANG_WARN_CONSTANT_CONVERSION = YES;
  699. CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
  700. CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
  701. CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
  702. CLANG_WARN_EMPTY_BODY = YES;
  703. CLANG_WARN_ENUM_CONVERSION = YES;
  704. CLANG_WARN_INFINITE_RECURSION = YES;
  705. CLANG_WARN_INT_CONVERSION = YES;
  706. CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
  707. CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
  708. CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
  709. CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
  710. CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
  711. CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
  712. CLANG_WARN_STRICT_PROTOTYPES = YES;
  713. CLANG_WARN_SUSPICIOUS_MOVE = YES;
  714. CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
  715. CLANG_WARN_UNREACHABLE_CODE = YES;
  716. CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
  717. COPY_PHASE_STRIP = NO;
  718. DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
  719. ENABLE_NS_ASSERTIONS = NO;
  720. ENABLE_STRICT_OBJC_MSGSEND = YES;
  721. GCC_C_LANGUAGE_STANDARD = gnu11;
  722. GCC_NO_COMMON_BLOCKS = YES;
  723. GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
  724. GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
  725. GCC_WARN_UNDECLARED_SELECTOR = YES;
  726. GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
  727. GCC_WARN_UNUSED_FUNCTION = YES;
  728. GCC_WARN_UNUSED_VARIABLE = YES;
  729. MTL_ENABLE_DEBUG_INFO = NO;
  730. MTL_FAST_MATH = YES;
  731. PRODUCT_NAME = "$(TARGET_NAME)";
  732. SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
  733. SWIFT_VERSION = 5.0;
  734. };
  735. name = Release;
  736. };
  737. D16E5B27804289B138250469 /* Debug */ = {
  738. isa = XCBuildConfiguration;
  739. buildSettings = {
  740. BUNDLE_LOADER = "$(TEST_HOST)";
  741. CLANG_ENABLE_OBJC_WEAK = NO;
  742. GENERATE_INFOPLIST_FILE = YES;
  743. IPHONEOS_DEPLOYMENT_TARGET = 17.0;
  744. SDKROOT = iphoneos;
  745. SWIFT_VERSION = 5.9;
  746. TEST_HOST = "$(BUILT_PRODUCTS_DIR)/CelestiaTrace.app/CelestiaTrace";
  747. TEST_TARGET_NAME = CelestiaTrace;
  748. };
  749. name = Debug;
  750. };
  751. /* End XCBuildConfiguration section */
  752. /* Begin XCConfigurationList section */
  753. 0E7E08AA696927CB2EBFCE00 /* Build configuration list for PBXNativeTarget "CelestiaTraceTests" */ = {
  754. isa = XCConfigurationList;
  755. buildConfigurations = (
  756. B827886CD5B378B8C90638F7 /* Release */,
  757. D16E5B27804289B138250469 /* Debug */,
  758. );
  759. defaultConfigurationIsVisible = 0;
  760. defaultConfigurationName = Release;
  761. };
  762. 902A4F79574BE80E9469463E /* Build configuration list for PBXNativeTarget "CelestiaTrace" */ = {
  763. isa = XCConfigurationList;
  764. buildConfigurations = (
  765. B1CCB86EBE298ADE0B572050 /* Release */,
  766. 95AB591F506D02959044D749 /* Debug */,
  767. );
  768. defaultConfigurationIsVisible = 0;
  769. defaultConfigurationName = Release;
  770. };
  771. C378CBFE73C70F1388740C61 /* Build configuration list for PBXProject "CelestiaTrace" */ = {
  772. isa = XCConfigurationList;
  773. buildConfigurations = (
  774. 76F4E0F0A78EC9D84B954B50 /* Debug */,
  775. BCD7DB2413FD475C8DCF0B12 /* Release */,
  776. );
  777. defaultConfigurationIsVisible = 0;
  778. defaultConfigurationName = Release;
  779. };
  780. /* End XCConfigurationList section */
  781. };
  782. rootObject = 979128538DFF0B361F857241 /* Project object */;
  783. }