diff --git a/.github/workflows/ci-ios.yml b/.github/workflows/ci-ios.yml index 2150e093021..fde3929cff6 100644 --- a/.github/workflows/ci-ios.yml +++ b/.github/workflows/ci-ios.yml @@ -20,6 +20,9 @@ jobs: - name: Select Xcode 16.2 run: sudo xcode-select -s /Applications/Xcode_16.2.app/Contents/Developer + - name: Install XcodeGen + run: brew install xcodegen + - name: Build for simulator working-directory: clients/ios run: ./build.sh diff --git a/.gitignore b/.gitignore index 567e7a373c6..2f459dbfbbd 100644 --- a/.gitignore +++ b/.gitignore @@ -61,6 +61,7 @@ yarn-error.log* DerivedData/ **/Library/Logs/CoreSimulator/ .build-ios/ +clients/ios/vellum-assistant-ios.xcodeproj/ # drizzle web/drizzle/ diff --git a/clients/ios/build.sh b/clients/ios/build.sh index 5d1b2dc643c..e9f6279241a 100755 --- a/clients/ios/build.sh +++ b/clients/ios/build.sh @@ -16,11 +16,13 @@ set -euo pipefail # DISPLAY_VERSION Override CFBundleShortVersionString (default: from Package.swift) # BUILD_VERSION Override CFBundleVersion (default: 1) # +# Prerequisites: +# xcodegen (brew install xcodegen) — the xcodeproj is generated on-the-fly +# # Migration notes: # - Use `open clients/ios/vellum-assistant-ios.xcodeproj` (not Package.swift) # - After switching: rm -rf ~/Library/Developer/Xcode/DerivedData/*vellum* # - `swift build --product vellum-assistant-ios` no longer works — use xcodebuild -# - XcodeGen only needed when project structure changes: cd ios && xcodegen # ── DEVELOPER_DIR ────────────────────────────────────────────────────── if [ -z "${DEVELOPER_DIR:-}" ]; then @@ -57,23 +59,13 @@ CMD="${1:-build}" # ── Commands ─────────────────────────────────────────────────────────── case "$CMD" in - test) - echo "Running iOS tests..." - xcodebuild test \ - -project "$PROJECT" \ - -scheme "$SCHEME" \ - -destination 'platform=iOS Simulator,name=iPhone 16 Pro' \ - -configuration Debug \ - CODE_SIGNING_ALLOWED=NO - exit $? - ;; clean) echo "Cleaning..." rm -rf "$DIST_DIR" "$CLIENTS_DIR/.build" echo "Done." exit 0 ;; - build|release) + build|release|test) ;; *) echo "Usage: $0 [build|release|test|clean]" @@ -81,6 +73,28 @@ case "$CMD" in ;; esac +# ── Generate xcodeproj ──────────────────────────────────────────────── +# Always regenerate from project.yml so the xcodeproj is never stale. +if command -v xcodegen >/dev/null 2>&1; then + echo "Regenerating xcodeproj from project.yml..." + (cd "$SCRIPT_DIR" && xcodegen --quiet) +else + echo "ERROR: xcodegen not found. Install with: brew install xcodegen" + exit 1 +fi + +# ── Run command ─────────────────────────────────────────────────────── +if [ "$CMD" = "test" ]; then + echo "Running iOS tests..." + xcodebuild test \ + -project "$PROJECT" \ + -scheme "$SCHEME" \ + -destination 'platform=iOS Simulator,name=iPhone 16 Pro' \ + -configuration Debug \ + CODE_SIGNING_ALLOWED=NO + exit $? +fi + mkdir -p "$DIST_DIR" # ── Debug build (simulator) ─────────────────────────────────────────── diff --git a/clients/ios/vellum-assistant-ios.xcodeproj/project.pbxproj b/clients/ios/vellum-assistant-ios.xcodeproj/project.pbxproj deleted file mode 100644 index 40ffdf9101c..00000000000 --- a/clients/ios/vellum-assistant-ios.xcodeproj/project.pbxproj +++ /dev/null @@ -1,598 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 77; - objects = { - -/* Begin PBXBuildFile section */ - 0AF1A9F71B5BCD3C5CDB591A /* ConnectionSettingsSection.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE61E2C6D294D559BDDB2003 /* ConnectionSettingsSection.swift */; }; - 0C99A7C29015A2B760556C56 /* ThreadListView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 97E0B2314721CE2B9E778D16 /* ThreadListView.swift */; }; - 135F581D6EE960123CCFCEEB /* VellumAssistantShared in Frameworks */ = {isa = PBXBuildFile; productRef = 134BF33544AE5D6EE7EE692C /* VellumAssistantShared */; }; - 18827F7B264DFB838AAA2B54 /* DateFormatting.swift in Sources */ = {isa = PBXBuildFile; fileRef = CC1600BF4851A930657A9F04 /* DateFormatting.swift */; }; - 2332D9CD114436614241F846 /* IdentityView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6469D4E238ADC7A9CCCD3F0E /* IdentityView.swift */; }; - 31D0C2CC725EE57E9F593A72 /* ChatTabView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 51A38AEC9FF8D2DC8C62800C /* ChatTabView.swift */; }; - 5412498DD7C6C6B4CF7477CE /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 24A722220881E67C353DFE12 /* AppDelegate.swift */; }; - 5923262CDB1AEBE0C2118808 /* IOSThreadStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = 06CFCCFEF68D99FFDAC92204 /* IOSThreadStore.swift */; }; - 59457CBF1DEB60A8C299B7DA /* QRScannerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 89D67321AD99D3E3C4399DF0 /* QRScannerView.swift */; }; - 5C6DE39F8210A78D484071A4 /* SceneDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 43C31D43ED8346DA9D2FC500 /* SceneDelegate.swift */; }; - 6419DA2F54DB6F703BD1DF3B /* VellumAssistantApp.swift in Sources */ = {isa = PBXBuildFile; fileRef = 736A766CE9C9D8326A1EBDA5 /* VellumAssistantApp.swift */; }; - 70294FBE9E2A2B4F05A54BF0 /* ThreadLifecycleIOSTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB54EB0319A569FD1CF4B13B /* ThreadLifecycleIOSTests.swift */; }; - 746CF910BAB551E763470897 /* UserDefaultsKeys.swift in Sources */ = {isa = PBXBuildFile; fileRef = B375E55F93CDE8E09476F460 /* UserDefaultsKeys.swift */; }; - 764D7E889BD013AFB53EC5B7 /* VellumIntents.swift in Sources */ = {isa = PBXBuildFile; fileRef = F63F4587FF04E8540849A2A8 /* VellumIntents.swift */; }; - 786CB3EF2E6BD4A20821168F /* SchedulesSection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2CA6B4E578A6F678E49599B9 /* SchedulesSection.swift */; }; - 7B4CE559E79D5A61D91725B6 /* ChatViewModelIOSTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FF70C2471B1A4D9574FC218B /* ChatViewModelIOSTests.swift */; }; - 7F96B79FD8BD30F7E0833168 /* InlineVideoEmbedView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 46C6F32737D9EE793FE0CC3F /* InlineVideoEmbedView.swift */; }; - 831E2260278404A3AA07ECCB /* MessageMediaEmbedsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA6DA4FDE9AA57C723CC06AA /* MessageMediaEmbedsView.swift */; }; - 836EA14C137EA48A214A519E /* LoginView.swift in Sources */ = {isa = PBXBuildFile; fileRef = EFA3496A6F3D741B4690BB86 /* LoginView.swift */; }; - 864657EF8C4B63FA518F6174 /* TrustRulesSection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 907F415E8AE00310C58BD65D /* TrustRulesSection.swift */; }; - 88E91BC08EF99C6D68C08BF9 /* background.png in Resources */ = {isa = PBXBuildFile; fileRef = DB16B16FAD390171DB879B88 /* background.png */; }; - 94892E15EB458399785C9B2B /* WorkspaceFileSheet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 505C277A9ED9027CA064DB10 /* WorkspaceFileSheet.swift */; }; - 9E1F06F1B7B31D86F3BE2815 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = F67E8033119EC7F1089E8688 /* Assets.xcassets */; }; - A119B744168CE1EE3B510EB9 /* VellumAssistantShared in Frameworks */ = {isa = PBXBuildFile; productRef = CB40BCA6E5FE59FA29F19979 /* VellumAssistantShared */; }; - AADDAC2861DD3CB70D50C6AB /* InputBarView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2A1EFD5A3C08E7AD764FB62F /* InputBarView.swift */; }; - AF2F41087A86DE1728E31FDF /* SettingsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = BA17A2DA662CD75C73E4726C /* SettingsView.swift */; }; - B4C5F5AC96FBFFFA81DF9F09 /* TitleGenerator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7BFF3D4B4A9D5E1C99AD1ADB /* TitleGenerator.swift */; }; - B61091E975453A5D9A073D5B /* OnboardingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEAAA98AE5EB03645C49AA68 /* OnboardingView.swift */; }; - BF12CF5ED5910C4B586B2B98 /* AttachmentFlowIOSTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = F94E87577A883B761C4F141C /* AttachmentFlowIOSTests.swift */; }; - C4305A05FD834E67C287D60B /* RemindersSection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3483675C469B0B8354AC5D8D /* RemindersSection.swift */; }; - C5B94F611BD02D1F4F6B4298 /* HomeBaseView.swift in Sources */ = {isa = PBXBuildFile; fileRef = E566C15A0B4BC68B2692544F /* HomeBaseView.swift */; }; - CDA0EECEB230A4965A7161B6 /* ChatContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 10E31353C3EFE9A27EF0E654 /* ChatContentView.swift */; }; - CDE68996EC77DAA45CF933A2 /* ContentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = F835A2D424DED22906123993 /* ContentView.swift */; }; - E82000F70C38CD07957C2F0F /* PermissionRowView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3099C4A4B1BEA0FFD8F46692 /* PermissionRowView.swift */; }; - EAC778C46C68008399873E3E /* ChatTranscriptFormatterIOSTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DDED15E4C12EADF58BD0CA16 /* ChatTranscriptFormatterIOSTests.swift */; }; - EC4B5B7BB9057BCDF63474B4 /* QRPairingSheet.swift in Sources */ = {isa = PBXBuildFile; fileRef = 75ADAEA6F825C35354C0A2E6 /* QRPairingSheet.swift */; }; - F6E66C2F942C26A210459312 /* IntegrationsSection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8029FFBAC7A74E1EADB0F0B8 /* IntegrationsSection.swift */; }; -/* End PBXBuildFile section */ - -/* Begin PBXFileReference section */ - 06CFCCFEF68D99FFDAC92204 /* IOSThreadStore.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = IOSThreadStore.swift; sourceTree = ""; }; - 10E31353C3EFE9A27EF0E654 /* ChatContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChatContentView.swift; sourceTree = ""; }; - 24A722220881E67C353DFE12 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - 2A1EFD5A3C08E7AD764FB62F /* InputBarView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InputBarView.swift; sourceTree = ""; }; - 2CA6B4E578A6F678E49599B9 /* SchedulesSection.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SchedulesSection.swift; sourceTree = ""; }; - 3099C4A4B1BEA0FFD8F46692 /* PermissionRowView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PermissionRowView.swift; sourceTree = ""; }; - 3483675C469B0B8354AC5D8D /* RemindersSection.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RemindersSection.swift; sourceTree = ""; }; - 43C31D43ED8346DA9D2FC500 /* SceneDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SceneDelegate.swift; sourceTree = ""; }; - 46C6F32737D9EE793FE0CC3F /* InlineVideoEmbedView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InlineVideoEmbedView.swift; sourceTree = ""; }; - 505C277A9ED9027CA064DB10 /* WorkspaceFileSheet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WorkspaceFileSheet.swift; sourceTree = ""; }; - 51A38AEC9FF8D2DC8C62800C /* ChatTabView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChatTabView.swift; sourceTree = ""; }; - 6469D4E238ADC7A9CCCD3F0E /* IdentityView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = IdentityView.swift; sourceTree = ""; }; - 736A766CE9C9D8326A1EBDA5 /* VellumAssistantApp.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VellumAssistantApp.swift; sourceTree = ""; }; - 75ADAEA6F825C35354C0A2E6 /* QRPairingSheet.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = QRPairingSheet.swift; sourceTree = ""; }; - 7A76C5B0E7B697B57063BC75 /* clients */ = {isa = PBXFileReference; lastKnownFileType = folder; name = clients; path = ..; sourceTree = SOURCE_ROOT; }; - 7BFF3D4B4A9D5E1C99AD1ADB /* TitleGenerator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TitleGenerator.swift; sourceTree = ""; }; - 8029FFBAC7A74E1EADB0F0B8 /* IntegrationsSection.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = IntegrationsSection.swift; sourceTree = ""; }; - 8303637A9FF05FBAB7BFB714 /* vellum-assistant-ios.app */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.application; path = "vellum-assistant-ios.app"; sourceTree = BUILT_PRODUCTS_DIR; }; - 89D67321AD99D3E3C4399DF0 /* QRScannerView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = QRScannerView.swift; sourceTree = ""; }; - 907F415E8AE00310C58BD65D /* TrustRulesSection.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TrustRulesSection.swift; sourceTree = ""; }; - 97E0B2314721CE2B9E778D16 /* ThreadListView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ThreadListView.swift; sourceTree = ""; }; - AE61E2C6D294D559BDDB2003 /* ConnectionSettingsSection.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConnectionSettingsSection.swift; sourceTree = ""; }; - B375E55F93CDE8E09476F460 /* UserDefaultsKeys.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserDefaultsKeys.swift; sourceTree = ""; }; - BA17A2DA662CD75C73E4726C /* SettingsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SettingsView.swift; sourceTree = ""; }; - CC1600BF4851A930657A9F04 /* DateFormatting.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DateFormatting.swift; sourceTree = ""; }; - D9AE48681C1FCA9489456682 /* vellum-assistant-iosTests.xctest */ = {isa = PBXFileReference; includeInIndex = 0; lastKnownFileType = wrapper.cfbundle; path = "vellum-assistant-iosTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; - DA6DA4FDE9AA57C723CC06AA /* MessageMediaEmbedsView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MessageMediaEmbedsView.swift; sourceTree = ""; }; - DB16B16FAD390171DB879B88 /* background.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = background.png; sourceTree = ""; }; - DDED15E4C12EADF58BD0CA16 /* ChatTranscriptFormatterIOSTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChatTranscriptFormatterIOSTests.swift; sourceTree = ""; }; - E566C15A0B4BC68B2692544F /* HomeBaseView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeBaseView.swift; sourceTree = ""; }; - EEAAA98AE5EB03645C49AA68 /* OnboardingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = OnboardingView.swift; sourceTree = ""; }; - EFA3496A6F3D741B4690BB86 /* LoginView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginView.swift; sourceTree = ""; }; - F63F4587FF04E8540849A2A8 /* VellumIntents.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VellumIntents.swift; sourceTree = ""; }; - F67E8033119EC7F1089E8688 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - F835A2D424DED22906123993 /* ContentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ContentView.swift; sourceTree = ""; }; - F94E87577A883B761C4F141C /* AttachmentFlowIOSTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AttachmentFlowIOSTests.swift; sourceTree = ""; }; - FB54EB0319A569FD1CF4B13B /* ThreadLifecycleIOSTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ThreadLifecycleIOSTests.swift; sourceTree = ""; }; - FF70C2471B1A4D9574FC218B /* ChatViewModelIOSTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ChatViewModelIOSTests.swift; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 2D33DA4089E6C261F0C8FC37 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - A119B744168CE1EE3B510EB9 /* VellumAssistantShared in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - C628BC9D91A9AA06BA791981 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 135F581D6EE960123CCFCEEB /* VellumAssistantShared in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 046D2CFC530250DF28EBE69E /* Products */ = { - isa = PBXGroup; - children = ( - 8303637A9FF05FBAB7BFB714 /* vellum-assistant-ios.app */, - D9AE48681C1FCA9489456682 /* vellum-assistant-iosTests.xctest */, - ); - name = Products; - sourceTree = ""; - }; - 298F315EE5104312DEB3EDDD /* Views */ = { - isa = PBXGroup; - children = ( - 10E31353C3EFE9A27EF0E654 /* ChatContentView.swift */, - 51A38AEC9FF8D2DC8C62800C /* ChatTabView.swift */, - F835A2D424DED22906123993 /* ContentView.swift */, - E566C15A0B4BC68B2692544F /* HomeBaseView.swift */, - 6469D4E238ADC7A9CCCD3F0E /* IdentityView.swift */, - 46C6F32737D9EE793FE0CC3F /* InlineVideoEmbedView.swift */, - 2A1EFD5A3C08E7AD764FB62F /* InputBarView.swift */, - EFA3496A6F3D741B4690BB86 /* LoginView.swift */, - DA6DA4FDE9AA57C723CC06AA /* MessageMediaEmbedsView.swift */, - EEAAA98AE5EB03645C49AA68 /* OnboardingView.swift */, - 89D67321AD99D3E3C4399DF0 /* QRScannerView.swift */, - BA17A2DA662CD75C73E4726C /* SettingsView.swift */, - 97E0B2314721CE2B9E778D16 /* ThreadListView.swift */, - 505C277A9ED9027CA064DB10 /* WorkspaceFileSheet.swift */, - FB5798D360E6366C80A4D2AF /* Settings */, - ); - path = Views; - sourceTree = ""; - }; - 5F57305362B8D161CDE1DEBB /* Packages */ = { - isa = PBXGroup; - children = ( - 7A76C5B0E7B697B57063BC75 /* clients */, - ); - name = Packages; - sourceTree = ""; - }; - 655D67630EC1BF07378337C3 /* App */ = { - isa = PBXGroup; - children = ( - 24A722220881E67C353DFE12 /* AppDelegate.swift */, - CC1600BF4851A930657A9F04 /* DateFormatting.swift */, - 06CFCCFEF68D99FFDAC92204 /* IOSThreadStore.swift */, - 43C31D43ED8346DA9D2FC500 /* SceneDelegate.swift */, - 7BFF3D4B4A9D5E1C99AD1ADB /* TitleGenerator.swift */, - B375E55F93CDE8E09476F460 /* UserDefaultsKeys.swift */, - 736A766CE9C9D8326A1EBDA5 /* VellumAssistantApp.swift */, - F63F4587FF04E8540849A2A8 /* VellumIntents.swift */, - ); - path = App; - sourceTree = ""; - }; - 7CF82E495286FB202D99F6A8 = { - isa = PBXGroup; - children = ( - 655D67630EC1BF07378337C3 /* App */, - 5F57305362B8D161CDE1DEBB /* Packages */, - 8B35A840DD536D7B431455CA /* Resources */, - BA2814BA0618FB00F30658B5 /* Tests */, - 298F315EE5104312DEB3EDDD /* Views */, - 046D2CFC530250DF28EBE69E /* Products */, - ); - sourceTree = ""; - }; - 8B35A840DD536D7B431455CA /* Resources */ = { - isa = PBXGroup; - children = ( - F67E8033119EC7F1089E8688 /* Assets.xcassets */, - DB16B16FAD390171DB879B88 /* background.png */, - ); - path = Resources; - sourceTree = ""; - }; - BA2814BA0618FB00F30658B5 /* Tests */ = { - isa = PBXGroup; - children = ( - F94E87577A883B761C4F141C /* AttachmentFlowIOSTests.swift */, - DDED15E4C12EADF58BD0CA16 /* ChatTranscriptFormatterIOSTests.swift */, - FF70C2471B1A4D9574FC218B /* ChatViewModelIOSTests.swift */, - FB54EB0319A569FD1CF4B13B /* ThreadLifecycleIOSTests.swift */, - ); - path = Tests; - sourceTree = ""; - }; - FB5798D360E6366C80A4D2AF /* Settings */ = { - isa = PBXGroup; - children = ( - AE61E2C6D294D559BDDB2003 /* ConnectionSettingsSection.swift */, - 8029FFBAC7A74E1EADB0F0B8 /* IntegrationsSection.swift */, - 3099C4A4B1BEA0FFD8F46692 /* PermissionRowView.swift */, - 75ADAEA6F825C35354C0A2E6 /* QRPairingSheet.swift */, - 3483675C469B0B8354AC5D8D /* RemindersSection.swift */, - 2CA6B4E578A6F678E49599B9 /* SchedulesSection.swift */, - 907F415E8AE00310C58BD65D /* TrustRulesSection.swift */, - ); - path = Settings; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 09802F89BF0B2C118CAF8452 /* vellum-assistant-ios */ = { - isa = PBXNativeTarget; - buildConfigurationList = 4150CE19AB671F4284B39416 /* Build configuration list for PBXNativeTarget "vellum-assistant-ios" */; - buildPhases = ( - 13647ED4EC44DACA5B82A973 /* Sources */, - E159EF5F2479FC4C8A9EF8F1 /* Resources */, - 2D33DA4089E6C261F0C8FC37 /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "vellum-assistant-ios"; - packageProductDependencies = ( - CB40BCA6E5FE59FA29F19979 /* VellumAssistantShared */, - ); - productName = "vellum-assistant-ios"; - productReference = 8303637A9FF05FBAB7BFB714 /* vellum-assistant-ios.app */; - productType = "com.apple.product-type.application"; - }; - B4C3A8B00BE65DBC882270CC /* vellum-assistant-iosTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 01367CF4ADFDF34A18BCE030 /* Build configuration list for PBXNativeTarget "vellum-assistant-iosTests" */; - buildPhases = ( - 65567F52DC775FA5485B852B /* Sources */, - C628BC9D91A9AA06BA791981 /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = "vellum-assistant-iosTests"; - packageProductDependencies = ( - 134BF33544AE5D6EE7EE692C /* VellumAssistantShared */, - ); - productName = "vellum-assistant-iosTests"; - productReference = D9AE48681C1FCA9489456682 /* vellum-assistant-iosTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 43A9367AB1B368C8B59A8F67 /* Project object */ = { - isa = PBXProject; - attributes = { - BuildIndependentTargetsInParallel = YES; - LastUpgradeCheck = 1430; - TargetAttributes = { - 09802F89BF0B2C118CAF8452 = { - ProvisioningStyle = Automatic; - }; - }; - }; - buildConfigurationList = BF2AFDAF8427797247D81BCC /* Build configuration list for PBXProject "vellum-assistant-ios" */; - compatibilityVersion = "Xcode 14.0"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - Base, - en, - ); - mainGroup = 7CF82E495286FB202D99F6A8; - minimizedProjectReferenceProxies = 1; - packageReferences = ( - E4D7E28F43B486532C194DED /* XCLocalSwiftPackageReference "..//" */, - ); - preferredProjectObjectVersion = 77; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 09802F89BF0B2C118CAF8452 /* vellum-assistant-ios */, - B4C3A8B00BE65DBC882270CC /* vellum-assistant-iosTests */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - E159EF5F2479FC4C8A9EF8F1 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 9E1F06F1B7B31D86F3BE2815 /* Assets.xcassets in Resources */, - 88E91BC08EF99C6D68C08BF9 /* background.png in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 13647ED4EC44DACA5B82A973 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 5412498DD7C6C6B4CF7477CE /* AppDelegate.swift in Sources */, - CDA0EECEB230A4965A7161B6 /* ChatContentView.swift in Sources */, - 31D0C2CC725EE57E9F593A72 /* ChatTabView.swift in Sources */, - 0AF1A9F71B5BCD3C5CDB591A /* ConnectionSettingsSection.swift in Sources */, - CDE68996EC77DAA45CF933A2 /* ContentView.swift in Sources */, - 18827F7B264DFB838AAA2B54 /* DateFormatting.swift in Sources */, - C5B94F611BD02D1F4F6B4298 /* HomeBaseView.swift in Sources */, - 5923262CDB1AEBE0C2118808 /* IOSThreadStore.swift in Sources */, - 2332D9CD114436614241F846 /* IdentityView.swift in Sources */, - 7F96B79FD8BD30F7E0833168 /* InlineVideoEmbedView.swift in Sources */, - AADDAC2861DD3CB70D50C6AB /* InputBarView.swift in Sources */, - F6E66C2F942C26A210459312 /* IntegrationsSection.swift in Sources */, - 836EA14C137EA48A214A519E /* LoginView.swift in Sources */, - 831E2260278404A3AA07ECCB /* MessageMediaEmbedsView.swift in Sources */, - B61091E975453A5D9A073D5B /* OnboardingView.swift in Sources */, - E82000F70C38CD07957C2F0F /* PermissionRowView.swift in Sources */, - EC4B5B7BB9057BCDF63474B4 /* QRPairingSheet.swift in Sources */, - 59457CBF1DEB60A8C299B7DA /* QRScannerView.swift in Sources */, - C4305A05FD834E67C287D60B /* RemindersSection.swift in Sources */, - 5C6DE39F8210A78D484071A4 /* SceneDelegate.swift in Sources */, - 786CB3EF2E6BD4A20821168F /* SchedulesSection.swift in Sources */, - AF2F41087A86DE1728E31FDF /* SettingsView.swift in Sources */, - 0C99A7C29015A2B760556C56 /* ThreadListView.swift in Sources */, - B4C5F5AC96FBFFFA81DF9F09 /* TitleGenerator.swift in Sources */, - 864657EF8C4B63FA518F6174 /* TrustRulesSection.swift in Sources */, - 746CF910BAB551E763470897 /* UserDefaultsKeys.swift in Sources */, - 6419DA2F54DB6F703BD1DF3B /* VellumAssistantApp.swift in Sources */, - 764D7E889BD013AFB53EC5B7 /* VellumIntents.swift in Sources */, - 94892E15EB458399785C9B2B /* WorkspaceFileSheet.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 65567F52DC775FA5485B852B /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - BF12CF5ED5910C4B586B2B98 /* AttachmentFlowIOSTests.swift in Sources */, - EAC778C46C68008399873E3E /* ChatTranscriptFormatterIOSTests.swift in Sources */, - 7B4CE559E79D5A61D91725B6 /* ChatViewModelIOSTests.swift in Sources */, - 70294FBE9E2A2B4F05A54BF0 /* ThreadLifecycleIOSTests.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin XCBuildConfiguration section */ - 0AEEA19C7E443C9F9A91689A /* 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_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - 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_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 = 17.0; - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = iphoneos; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - SWIFT_VERSION = 5.0; - }; - name = Release; - }; - 1D9E24BFDB425434BFB6E1DE /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CODE_SIGN_ENTITLEMENTS = "Resources/vellum-assistant-ios.entitlements"; - CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; - GENERATE_INFOPLIST_FILE = NO; - INFOPLIST_FILE = Resources/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - MARKETING_VERSION = 0.0.0; - PRODUCT_BUNDLE_IDENTIFIER = "com.vellum.vellum-assistant-ios"; - PRODUCT_NAME = "vellum-assistant-ios"; - SDKROOT = iphoneos; - SWIFT_VERSION = 5.9; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Release; - }; - 22D1558B06059E908D4C3785 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CODE_SIGN_ENTITLEMENTS = "Resources/vellum-assistant-ios.entitlements"; - CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Automatic; - CURRENT_PROJECT_VERSION = 1; - GENERATE_INFOPLIST_FILE = NO; - INFOPLIST_FILE = Resources/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - MARKETING_VERSION = 0.0.0; - PRODUCT_BUNDLE_IDENTIFIER = "com.vellum.vellum-assistant-ios"; - PRODUCT_NAME = "vellum-assistant-ios"; - SDKROOT = iphoneos; - SWIFT_VERSION = 5.9; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Debug; - }; - 9F4377C762327218C5C804E2 /* 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_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; - 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 = ( - "$(inherited)", - "DEBUG=1", - ); - 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 = 17.0; - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = iphoneos; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - }; - name = Debug; - }; - AB6FDB60C5762EB1102B6FF5 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - GENERATE_INFOPLIST_FILE = YES; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Debug; - }; - E0779A65D0CD65A366A0FE59 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - GENERATE_INFOPLIST_FILE = YES; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 01367CF4ADFDF34A18BCE030 /* Build configuration list for PBXNativeTarget "vellum-assistant-iosTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - AB6FDB60C5762EB1102B6FF5 /* Debug */, - E0779A65D0CD65A366A0FE59 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Debug; - }; - 4150CE19AB671F4284B39416 /* Build configuration list for PBXNativeTarget "vellum-assistant-ios" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 22D1558B06059E908D4C3785 /* Debug */, - 1D9E24BFDB425434BFB6E1DE /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Debug; - }; - BF2AFDAF8427797247D81BCC /* Build configuration list for PBXProject "vellum-assistant-ios" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 9F4377C762327218C5C804E2 /* Debug */, - 0AEEA19C7E443C9F9A91689A /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Debug; - }; -/* End XCConfigurationList section */ - -/* Begin XCLocalSwiftPackageReference section */ - E4D7E28F43B486532C194DED /* XCLocalSwiftPackageReference "..//" */ = { - isa = XCLocalSwiftPackageReference; - relativePath = "..//"; - }; -/* End XCLocalSwiftPackageReference section */ - -/* Begin XCSwiftPackageProductDependency section */ - 134BF33544AE5D6EE7EE692C /* VellumAssistantShared */ = { - isa = XCSwiftPackageProductDependency; - productName = VellumAssistantShared; - }; - CB40BCA6E5FE59FA29F19979 /* VellumAssistantShared */ = { - isa = XCSwiftPackageProductDependency; - productName = VellumAssistantShared; - }; -/* End XCSwiftPackageProductDependency section */ - }; - rootObject = 43A9367AB1B368C8B59A8F67 /* Project object */; -} diff --git a/clients/ios/vellum-assistant-ios.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/clients/ios/vellum-assistant-ios.xcodeproj/project.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 919434a6254..00000000000 --- a/clients/ios/vellum-assistant-ios.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/clients/ios/vellum-assistant-ios.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/clients/ios/vellum-assistant-ios.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved deleted file mode 100644 index b126b5c20ec..00000000000 --- a/clients/ios/vellum-assistant-ios.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ /dev/null @@ -1,15 +0,0 @@ -{ - "originHash" : "aece875ef38615c2666a5b386d2c102ba4f195f7b0d2bf4674ad1dffbcc3f497", - "pins" : [ - { - "identity" : "sparkle", - "kind" : "remoteSourceControl", - "location" : "https://github.com/sparkle-project/Sparkle", - "state" : { - "revision" : "5581748cef2bae787496fe6d61139aebe0a451f6", - "version" : "2.8.1" - } - } - ], - "version" : 3 -} diff --git a/clients/ios/vellum-assistant-ios.xcodeproj/xcshareddata/xcschemes/VellumAssistantIOS.xcscheme b/clients/ios/vellum-assistant-ios.xcodeproj/xcshareddata/xcschemes/VellumAssistantIOS.xcscheme deleted file mode 100644 index 34b97398aff..00000000000 --- a/clients/ios/vellum-assistant-ios.xcodeproj/xcshareddata/xcschemes/VellumAssistantIOS.xcscheme +++ /dev/null @@ -1,106 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -