diff --git a/.github/workflows/_reusable_app_release.yml b/.github/workflows/_reusable_app_release.yml index eef7d5e15a1..d6e183799f8 100644 --- a/.github/workflows/_reusable_app_release.yml +++ b/.github/workflows/_reusable_app_release.yml @@ -118,8 +118,7 @@ jobs: SLACK_WEBHOOK_URL: ${{ secrets.WIRE_IOS_CI_WEBHOOK }} SKIP_SECURITY_TESTS: ${{ inputs.skip_security_tests }} SEND_TO_EXTERNALS: ${{ inputs.distribute_externals }} - - + steps: - name: Add Masks run: | @@ -162,6 +161,8 @@ jobs: aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} aws-region: eu-west-1 + - name: Trim unused localizations from string catalogs + run: find . -name "*.xcstrings" | xargs xcrun swift run --package-path ./scripts TrimStringCatalogs - name: Trigger build run: bundle exec fastlane ${{ inputs.fastlane_action }} - name: Archiving Logs diff --git a/.github/workflows/_reusable_run_tests.yml b/.github/workflows/_reusable_run_tests.yml index 5ce5c99cd49..c0d38c54f7c 100644 --- a/.github/workflows/_reusable_run_tests.yml +++ b/.github/workflows/_reusable_run_tests.yml @@ -9,7 +9,7 @@ on: type: boolean default: false required: false - wire-ui-base: + wire-ui-foundation: type: boolean default: false required: false @@ -77,7 +77,7 @@ on: type: boolean default: false required: false - wire-ios-link-preview: + wire-link-preview: type: boolean default: false required: false @@ -93,7 +93,11 @@ on: type: boolean default: false required: false - wire-testing: + wire-foundation: + type: boolean + default: false + required: false + scripts: type: boolean default: false required: false @@ -167,27 +171,36 @@ jobs: run: | bundle exec fastlane prepare_for_tests - # WireSystem + # Scripts - - name: Build WireSystem - if: ${{ inputs.wire-system || inputs.all }} + - name: Test Scripts + if: ${{ inputs.scripts || inputs.all }} run: | - echo "WireSystem has changes" - echo "Building WireSystem..." - xcodebuild build-for-testing -workspace wire-ios-mono.xcworkspace -scheme WireSystemPackage -resultBundlePath xcodebuild-wire-system.xcresult -destination 'platform=iOS Simulator,OS=${{ env.IOS_VERSION }},name=${{ env.IPHONE_MODEL }}' | tee xcodebuild-wire-system.log | bundle exec xcpretty + echo "Scripts has changes" + echo "Testing Scripts..." + xcrun swift test --package-path ./scripts + + # WireFoundation + + - name: Build WireFoundation + if: ${{ inputs.wire-foundation || inputs.all }} + run: | + echo "WireFoundation has changes" + echo "Building WireFoundation..." + xcodebuild build-for-testing -workspace wire-ios-mono.xcworkspace -scheme WireFoundation -resultBundlePath xcodebuild-wire-foundation.xcresult -destination 'platform=iOS Simulator,OS=${{ env.IOS_VERSION }},name=${{ env.IPHONE_MODEL }}' | tee xcodebuild-wire-foundation.log | bundle exec xcpretty - uses: kronenthaler/analyze-xcoderesults-action@0.1.9 - if: ${{ inputs.wire-system || inputs.all }} + if: ${{ inputs.wire-foundation || inputs.all }} with: - results: xcodebuild-wire-system.xcresult + results: xcodebuild-wire-foundation.xcresult warningAnnotations: true GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - name: Test WireSystem - if: ${{ inputs.wire-system || inputs.all }} + - name: Test WireFoundation + if: ${{ inputs.wire-foundation || inputs.all }} run: | - echo "Testing WireSystem..." - xcodebuild test -workspace wire-ios-mono.xcworkspace -scheme WireSystemPackage -destination 'platform=iOS Simulator,OS=${{ env.IOS_VERSION }},name=${{ env.IPHONE_MODEL }}' | tee -a xcodebuild-wire-system.log | bundle exec xcpretty --report junit --output build/reports/WireSystem.junit + echo "Testing WireFoundation..." + xcodebuild test -workspace wire-ios-mono.xcworkspace -scheme WireFoundation -destination 'platform=iOS Simulator,OS=${{ env.IOS_VERSION }},name=${{ env.IPHONE_MODEL }}' | tee -a xcodebuild-wire-foundation.log | bundle exec xcpretty --report junit --output build/reports/WireFoundation.junit exit ${PIPESTATUS[0]} # WireSystem Project @@ -213,29 +226,6 @@ jobs: xcodebuild test -retry-tests-on-failure -workspace wire-ios-mono.xcworkspace -scheme WireSystem -destination 'platform=iOS Simulator,OS=${{ env.IOS_VERSION }},name=${{ env.IPHONE_MODEL }}' | tee -a xcodebuild-wire-ios-system.log | bundle exec xcpretty --report junit --output build/reports/WireSystemProject.junit exit ${PIPESTATUS[0]} - # WireTesting - - - name: Build WireTesting - if: ${{ inputs.wire-testing || inputs.all }} - run: | - echo "WireTesting has changes" - echo "Building WireTesting..." - xcodebuild build-for-testing -workspace wire-ios-mono.xcworkspace -scheme WireTestingPackage -resultBundlePath xcodebuild-wire-testing.xcresult -destination 'platform=iOS Simulator,OS=${{ env.IOS_VERSION }},name=${{ env.IPHONE_MODEL }}' | tee xcodebuild-wire-testing.log | bundle exec xcpretty - - - uses: kronenthaler/analyze-xcoderesults-action@0.1.9 - if: ${{ inputs.wire-testing || inputs.all }} - with: - results: xcodebuild-wire-testing.xcresult - warningAnnotations: true - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Test WireTesting - if: ${{ inputs.wire-testing || inputs.all }} - run: | - echo "Testing WireTesting..." - xcodebuild test -workspace wire-ios-mono.xcworkspace -scheme WireTestingPackage -destination 'platform=iOS Simulator,OS=${{ env.IOS_VERSION }},name=${{ env.IPHONE_MODEL }}' | tee -a xcodebuild-wire-testing.log | bundle exec xcpretty --report junit --output build/reports/WireTesting.junit - exit ${PIPESTATUS[0]} - # WireTesting Project - name: Build WireTesting Project @@ -259,29 +249,6 @@ jobs: xcodebuild test -retry-tests-on-failure -workspace wire-ios-mono.xcworkspace -scheme WireTesting -destination 'platform=iOS Simulator,OS=${{ env.IOS_VERSION }},name=${{ env.IPHONE_MODEL }}' | tee -a xcodebuild-wire-ios-testing.log | bundle exec xcpretty --report junit --output build/reports/WireTestingProject.junit exit ${PIPESTATUS[0]} - # WireUtilities - - - name: Build WireUtilities - if: ${{ inputs.wire-utilities || inputs.all }} - run: | - echo "WireUtilities has changes" - echo "Building WireUtilities..." - xcodebuild build-for-testing -workspace wire-ios-mono.xcworkspace -scheme WireUtilitiesPackage -resultBundlePath xcodebuild-wire-utilities.xcresult -destination 'platform=iOS Simulator,OS=${{ env.IOS_VERSION }},name=${{ env.IPHONE_MODEL }}' | tee xcodebuild-wire-utilities.log | bundle exec xcpretty - - - uses: kronenthaler/analyze-xcoderesults-action@0.1.9 - if: ${{ inputs.wire-utilities || inputs.all }} - with: - results: xcodebuild-wire-utilities.xcresult - warningAnnotations: true - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - - name: Test WireUtilities - if: ${{ inputs.wire-utilities || inputs.all }} - run: | - echo "Testing WireUtilities..." - xcodebuild test -workspace wire-ios-mono.xcworkspace -scheme WireUtilitiesPackage -destination 'platform=iOS Simulator,OS=${{ env.IOS_VERSION }},name=${{ env.IPHONE_MODEL }}' | tee -a xcodebuild-wire-utilities.log | bundle exec xcpretty --report junit --output build/reports/WireUtilities.junit - exit ${PIPESTATUS[0]} - # WireUtilities Project - name: Build WireUtilities Project @@ -354,24 +321,24 @@ jobs: # WireLinkPreview - name: Build WireLinkPreview - if: ${{ inputs.wire-ios-link-preview || inputs.all }} + if: ${{ inputs.wire-link-preview || inputs.all }} run: | echo "WireLinkPreview has changes" echo "Building WireLinkPreview..." - xcodebuild build-for-testing -workspace wire-ios-mono.xcworkspace -scheme WireLinkPreview -resultBundlePath xcodebuild-wire-ios-link-preview.xcresult -destination 'platform=iOS Simulator,OS=${{ env.IOS_VERSION }},name=${{ env.IPHONE_MODEL }}' | tee xcodebuild-wire-ios-link-preview.log | bundle exec xcpretty + xcodebuild build-for-testing -workspace wire-ios-mono.xcworkspace -scheme WireLinkPreview -resultBundlePath xcodebuild-wire-link-preview.xcresult -destination 'platform=iOS Simulator,OS=${{ env.IOS_VERSION }},name=${{ env.IPHONE_MODEL }}' | tee xcodebuild-wire-link-preview.log | bundle exec xcpretty - uses: kronenthaler/analyze-xcoderesults-action@0.1.9 - if: ${{ inputs.wire-ios-link-preview || inputs.all }} + if: ${{ inputs.wire-link-preview || inputs.all }} with: - results: xcodebuild-wire-ios-link-preview.xcresult + results: xcodebuild-wire-link-preview.xcresult warningAnnotations: true GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - name: Test WireLinkPreview - if: ${{ inputs.wire-ios-link-preview || inputs.all }} + if: ${{ inputs.wire-link-preview || inputs.all }} run: | echo "Testing WireLinkPreview..." - xcodebuild test -retry-tests-on-failure -workspace wire-ios-mono.xcworkspace -scheme WireLinkPreview -destination 'platform=iOS Simulator,OS=${{ env.IOS_VERSION }},name=${{ env.IPHONE_MODEL }}' | tee -a xcodebuild-wire-ios-link-preview.log | bundle exec xcpretty --report junit --output build/reports/WireLinkPreview.junit + xcodebuild test -workspace wire-ios-mono.xcworkspace -scheme WireLinkPreview -destination 'platform=iOS Simulator,OS=${{ env.IOS_VERSION }},name=${{ env.IPHONE_MODEL }}' | tee -a xcodebuild-wire-link-preview.log | bundle exec xcpretty --report junit --output build/reports/WireLinkPreview.junit exit ${PIPESTATUS[0]} # WireImages @@ -626,27 +593,27 @@ jobs: xcodebuild test -workspace wire-ios-mono.xcworkspace -scheme WireDesign -destination 'platform=iOS Simulator,OS=${{ env.IOS_VERSION }},name=${{ env.IPHONE_MODEL }}' | tee -a xcodebuild-wire-design.log | bundle exec xcpretty --report junit --output build/reports/WireDesign.junit exit ${PIPESTATUS[0]} - # WireUIBase + # WireUIFoundation - - name: Test WireUIBase - if: ${{ inputs.wire-ui-base || inputs.all }} + - name: Test WireUIFoundation + if: ${{ inputs.wire-ui-foundation || inputs.all }} run: | - echo "WireUIBase has changes" - echo "Building WireUIBase..." - xcodebuild build-for-testing -workspace wire-ios-mono.xcworkspace -scheme WireUIBase -resultBundlePath xcodebuild-wire-ui-base.xcresult -destination 'platform=iOS Simulator,OS=${{ env.IOS_VERSION }},name=${{ env.IPHONE_MODEL }}' | tee xcodebuild-wire-ui-base.log | bundle exec xcpretty + echo "WireUIFoundation has changes" + echo "Building WireUIFoundation..." + xcodebuild build-for-testing -workspace wire-ios-mono.xcworkspace -scheme WireUIFoundation -resultBundlePath xcodebuild-wire-ui-foundation.xcresult -destination 'platform=iOS Simulator,OS=${{ env.IOS_VERSION }},name=${{ env.IPHONE_MODEL }}' | tee xcodebuild-wire-ui-foundation.log | bundle exec xcpretty - uses: kronenthaler/analyze-xcoderesults-action@0.1.9 - if: ${{ inputs.wire-ui-base || inputs.all }} + if: ${{ inputs.wire-ui-foundation || inputs.all }} with: - results: xcodebuild-wire-ui-base.xcresult + results: xcodebuild-wire-ui-foundation.xcresult warningAnnotations: true GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - name: Test WireUIBase - if: ${{ inputs.wire-ui-base || inputs.all }} + - name: Test WireUIFoundation + if: ${{ inputs.wire-ui-foundation || inputs.all }} run: | - echo "Testing WireUIBase..." - xcodebuild test -workspace wire-ios-mono.xcworkspace -scheme WireUIBase -destination 'platform=iOS Simulator,OS=${{ env.IOS_VERSION }},name=${{ env.IPHONE_MODEL }}' | tee -a xcodebuild-wire-ui-base.log | bundle exec xcpretty --report junit --output build/reports/WireUIBase.junit + echo "Testing WireUIFoundation..." + xcodebuild test -workspace wire-ios-mono.xcworkspace -scheme WireUIFoundation -destination 'platform=iOS Simulator,OS=${{ env.IOS_VERSION }},name=${{ env.IPHONE_MODEL }}' | tee -a xcodebuild-wire-ui-foundation.log | bundle exec xcpretty --report junit --output build/reports/WireUIFoundation.junit exit ${PIPESTATUS[0]} # WireReusableUIComponents diff --git a/.github/workflows/swiftformat.yml b/.github/workflows/swiftformat.yml index dc946a9eb63..ae650422308 100644 --- a/.github/workflows/swiftformat.yml +++ b/.github/workflows/swiftformat.yml @@ -26,9 +26,9 @@ jobs: ./WireAPI ./WireAnalytics ./WireDomain - ./WireSystem - ./WireTesting + ./WireFoundation + ./WireLinkPreview ./WireUI - ./WireUtilities + ./scripts --reporter github-actions-log --config .swiftformat diff --git a/.github/workflows/test_pr_changes.yml b/.github/workflows/test_pr_changes.yml index 08569ce7e5d..0bce8f02ebe 100644 --- a/.github/workflows/test_pr_changes.yml +++ b/.github/workflows/test_pr_changes.yml @@ -21,12 +21,11 @@ jobs: outputs: wire-ios: ${{ steps.filter.outputs.wire-ios == 'true' || steps.filter.outputs.carthage == 'true' }} wire-reusable-ui-components: ${{ steps.filter.outputs.wire-reusable-ui-components }} - wire-ui-base: ${{ steps.filter.outputs.wire-ui-base }} + wire-ui-foundation: ${{ steps.filter.outputs.wire-ui-foundation }} wire-design: ${{ steps.filter.outputs.wire-design }} wire-ios-sync-engine: ${{ steps.filter.outputs.wire-ios-sync-engine }} wire-ios-data-model: ${{ steps.filter.outputs.wire-ios-data-model }} wire-ios-system: ${{ steps.filter.outputs.wire-ios-system }} - wire-system: ${{ steps.filter.outputs.wire-system }} wire-ios-request-strategy: ${{ steps.filter.outputs.wire-ios-request-strategy }} wire-api: ${{ steps.filter.outputs.wire-api }} wire-domain-project: ${{ steps.filter.outputs.wire-domain-project }} @@ -38,11 +37,11 @@ jobs: wire-ios-notification-engine: ${{ steps.filter.outputs.wire-ios-notification-engine }} wire-ios-protos: ${{ steps.filter.outputs.wire-ios-protos }} wire-ios-images: ${{ steps.filter.outputs.wire-ios-images }} - wire-ios-link-preview : ${{ steps.filter.outputs.wire-ios-link-preview }} + wire-link-preview : ${{ steps.filter.outputs.wire-link-preview }} wire-ios-utilities: ${{ steps.filter.outputs.wire-ios-utilities }} - wire-utilitiess: ${{ steps.filter.outputs.wire-utilitiess }} wire-ios-testing: ${{ steps.filter.outputs.wire-ios-testing }} - wire-testing: ${{ steps.filter.outputs.wire-testing }} + wire-foundation: ${{ steps.filter.outputs.wire-foundation }} + scripts: ${{ steps.filter.outputs.scripts }} steps: - uses: actions/checkout@v4 @@ -55,9 +54,9 @@ jobs: wire-reusable-ui-components: - 'WireUI/Sources/WireReusableUIComponents/**' - 'WireUI/Tests/WireReusableUIComponentsTests/**' - wire-ui-base: - - 'WireUI/Sources/WireUIBase/**' - - 'WireUI/Tests/WireUIBaseTests/**' + wire-ui-foundation: + - 'WireUI/Sources/WireUIFoundation/**' + - 'WireUI/Tests/WireUIFoundationTests/**' wire-design: - 'WireUI/Sources/WireDesign/**' - 'WireUI/Tests/WireDesignTests/**' @@ -91,20 +90,18 @@ jobs: - 'wire-ios-protos/**' wire-ios-images: - 'wire-ios-images/**' - wire-ios-link-preview: - - 'wire-ios-link-preview/**' + wire-link-preview: + - 'WireLinkPreview/**' wire-ios-utilities: - 'wire-ios-utilities/**' - wire-utilities: - - 'WireUtilities/**' wire-ios-testing: - 'wire-ios-testing/**' - wire-testing: - - 'WireTesting/**' + wire-foundation: + - 'WireFoundation/**' wire-ios-system: - 'wire-ios-system/**' - wire-system: - - 'WireSystem/**' + scripts: + - 'scripts/**' carthage: - 'Cartfile.resolved' @@ -114,12 +111,11 @@ jobs: with: wire-ios: ${{ needs.detect-changes.outputs.wire-ios == 'true' }} wire-reusable-ui-components: ${{ needs.detect-changes.outputs.wire-reusable-ui-components == 'true' }} - wire-ui-base: ${{ needs.detect-changes.outputs.wire-ui-base == 'true' }} + wire-ui-foundation: ${{ needs.detect-changes.outputs.wire-ui-foundation == 'true' }} wire-design: ${{ needs.detect-changes.outputs.wire-design == 'true' }} wire-ios-sync-engine: ${{ needs.detect-changes.outputs.wire-ios-sync-engine == 'true' }} wire-ios-data-model: ${{ needs.detect-changes.outputs.wire-ios-data-model == 'true' }} wire-ios-system: ${{ needs.detect-changes.outputs.wire-ios-system == 'true' }} - wire-system: ${{ needs.detect-changes.outputs.wire-system == 'true' }} wire-ios-request-strategy: ${{ needs.detect-changes.outputs.wire-ios-request-strategy == 'true' }} wire-api: ${{ needs.detect-changes.outputs.wire-api == 'true' }} wire-domain-project: ${{ needs.detect-changes.outputs.wire-domain-project == 'true' }} @@ -131,9 +127,9 @@ jobs: wire-ios-notification-engine: ${{ needs.detect-changes.outputs.wire-ios-notification-engine == 'true' }} wire-ios-protos: ${{ needs.detect-changes.outputs.wire-ios-protos == 'true' }} wire-ios-images: ${{ needs.detect-changes.outputs.wire-ios-images == 'true' }} - wire-ios-link-preview: ${{ needs.detect-changes.outputs.wire-ios-link-preview == 'true' }} + wire-link-preview: ${{ needs.detect-changes.outputs.wire-link-preview == 'true' }} wire-ios-utilities: ${{ needs.detect-changes.outputs.wire-ios-utilities == 'true' }} - wire-utilities: ${{ needs.detect-changes.outputs.wire-utilities == 'true' }} wire-ios-testing: ${{ needs.detect-changes.outputs.wire-ios-testing == 'true' }} - wire-testing: ${{ needs.detect-changes.outputs.wire-testing == 'true' }} + wire-foundation: ${{ needs.detect-changes.outputs.wire-foundation == 'true' }} + scripts: ${{ needs.detect-changes.outputs.scripts == 'true' }} secrets: inherit diff --git a/SourceryPlugin/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist b/SourceryPlugin/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist index 0aa12047039..6a6ca40138a 120000 --- a/SourceryPlugin/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist +++ b/SourceryPlugin/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist @@ -1 +1 @@ -../../../../wire-ios-mono.xcworkspace/xcshareddata/IDETemplateMacros.plist \ No newline at end of file +../../../../../wire-ios-mono.xcworkspace/xcshareddata/IDETemplateMacros.plist \ No newline at end of file diff --git a/WireAPI/Package.swift b/WireAPI/Package.swift index b0818a4f207..873d62a03e3 100644 --- a/WireAPI/Package.swift +++ b/WireAPI/Package.swift @@ -6,25 +6,23 @@ let package = Package( name: "WireAPI", platforms: [.iOS(.v15), .macOS(.v12)], products: [ - .library(name: "WireAPI", type: .dynamic, targets: ["WireAPI"]), - .library(name: "WireAPISupport", type: .dynamic, targets: ["WireAPISupport"]) + .library(name: "WireAPI", targets: ["WireAPI"]), + .library(name: "WireAPISupport", targets: ["WireAPISupport"]) ], dependencies: [ .package(url: "https://github.com/apple/swift-docc-plugin", from: "1.1.0"), .package(url: "https://github.com/pointfreeco/swift-snapshot-testing", from: "1.17.4"), .package(path: "../SourceryPlugin"), - .package(name: "WireUtilitiesPackage", path: "../WireUtilities") + .package(name: "WireFoundation", path: "../WireFoundation") ], targets: [ .target( name: "WireAPI", - dependencies: ["WireUtilitiesPackage"], - swiftSettings: swiftSettings + dependencies: ["WireFoundation"] ), .target( name: "WireAPISupport", dependencies: ["WireAPI"], - swiftSettings: swiftSettings, plugins: [ .plugin(name: "SourceryPlugin", package: "SourceryPlugin") ] @@ -48,14 +46,18 @@ let package = Package( .process("APIs/UserPropertiesAPI/Resources"), .process("APIs/SelfUserAPI/Resources"), .process("Network/PushChannel/Resources") - ], - swiftSettings: swiftSettings + ] ) ] ) -let swiftSettings: [SwiftSetting] = [ - .enableUpcomingFeature("ExistentialAny"), - .enableUpcomingFeature("GlobalConcurrency"), - .enableExperimentalFeature("StrictConcurrency") -] +for target in package.targets { + // remove this once we updated the Sourcery stencil to support existential any + guard target.name != "WireAPISupport" else { continue } + + target.swiftSettings = [ + .enableUpcomingFeature("ExistentialAny"), + .enableUpcomingFeature("GlobalConcurrency"), + .enableExperimentalFeature("StrictConcurrency") + ] +} diff --git a/WireAPI/Sources/WireAPI/APIs/ConnectionsAPI/ConnectionsAPIV0.swift b/WireAPI/Sources/WireAPI/APIs/ConnectionsAPI/ConnectionsAPIV0.swift index 187dd453028..09b4fb32d4a 100644 --- a/WireAPI/Sources/WireAPI/APIs/ConnectionsAPI/ConnectionsAPIV0.swift +++ b/WireAPI/Sources/WireAPI/APIs/ConnectionsAPI/ConnectionsAPIV0.swift @@ -24,9 +24,9 @@ class ConnectionsAPIV0: ConnectionsAPI, VersionedAPI { static let batchSize = 500 } - let httpClient: HTTPClient + let httpClient: any HTTPClient - init(httpClient: HTTPClient) { + init(httpClient: any HTTPClient) { self.httpClient = httpClient } diff --git a/WireAPI/Sources/WireAPI/APIs/ConversationsAPI/ConversationsAPIV0.swift b/WireAPI/Sources/WireAPI/APIs/ConversationsAPI/ConversationsAPIV0.swift index 54d0387b206..6a613d5fcd4 100644 --- a/WireAPI/Sources/WireAPI/APIs/ConversationsAPI/ConversationsAPIV0.swift +++ b/WireAPI/Sources/WireAPI/APIs/ConversationsAPI/ConversationsAPIV0.swift @@ -30,11 +30,11 @@ class ConversationsAPIV0: ConversationsAPI, VersionedAPI { var apiVersion: APIVersion { .v0 } - let httpClient: HTTPClient + let httpClient: any HTTPClient // MARK: - Initialize - init(httpClient: HTTPClient) { + init(httpClient: any HTTPClient) { self.httpClient = httpClient } diff --git a/WireAPI/Sources/WireAPI/APIs/FeatureConfigsAPI/FeatureConfigsAPIV0.swift b/WireAPI/Sources/WireAPI/APIs/FeatureConfigsAPI/FeatureConfigsAPIV0.swift index 17c275ed6af..0c2180d95e5 100644 --- a/WireAPI/Sources/WireAPI/APIs/FeatureConfigsAPI/FeatureConfigsAPIV0.swift +++ b/WireAPI/Sources/WireAPI/APIs/FeatureConfigsAPI/FeatureConfigsAPIV0.swift @@ -20,9 +20,9 @@ import Foundation class FeatureConfigsAPIV0: FeatureConfigsAPI, VersionedAPI { - let httpClient: HTTPClient + let httpClient: any HTTPClient - init(httpClient: HTTPClient) { + init(httpClient: any HTTPClient) { self.httpClient = httpClient } diff --git a/WireAPI/Sources/WireAPI/APIs/SelfUserAPI/SelfUserAPIV0.swift b/WireAPI/Sources/WireAPI/APIs/SelfUserAPI/SelfUserAPIV0.swift index 422663dd19c..6c1736c305d 100644 --- a/WireAPI/Sources/WireAPI/APIs/SelfUserAPI/SelfUserAPIV0.swift +++ b/WireAPI/Sources/WireAPI/APIs/SelfUserAPI/SelfUserAPIV0.swift @@ -20,9 +20,9 @@ import Foundation class SelfUserAPIV0: SelfUserAPI, VersionedAPI { - let httpClient: HTTPClient + let httpClient: any HTTPClient - init(httpClient: HTTPClient) { + init(httpClient: any HTTPClient) { self.httpClient = httpClient } diff --git a/WireAPI/Sources/WireAPI/APIs/TeamsAPI/TeamsAPIV0.swift b/WireAPI/Sources/WireAPI/APIs/TeamsAPI/TeamsAPIV0.swift index 890a25d811a..d83a9dc193e 100644 --- a/WireAPI/Sources/WireAPI/APIs/TeamsAPI/TeamsAPIV0.swift +++ b/WireAPI/Sources/WireAPI/APIs/TeamsAPI/TeamsAPIV0.swift @@ -20,9 +20,9 @@ import Foundation class TeamsAPIV0: TeamsAPI, VersionedAPI { - let httpClient: HTTPClient + let httpClient: any HTTPClient - init(httpClient: HTTPClient) { + init(httpClient: any HTTPClient) { self.httpClient = httpClient } diff --git a/WireAPI/Sources/WireAPI/APIs/UpdateEventsAPI/Event decoding/UpdateEventDecodingProxyError.swift b/WireAPI/Sources/WireAPI/APIs/UpdateEventsAPI/Event decoding/UpdateEventDecodingProxyError.swift index 50baff6eefd..2fb843792c6 100644 --- a/WireAPI/Sources/WireAPI/APIs/UpdateEventsAPI/Event decoding/UpdateEventDecodingProxyError.swift +++ b/WireAPI/Sources/WireAPI/APIs/UpdateEventsAPI/Event decoding/UpdateEventDecodingProxyError.swift @@ -28,7 +28,7 @@ public struct UpdateEventDecodingProxyError: Error, CustomStringConvertible { /// The error that occurred when decoding. - public let decodingError: Error + public let decodingError: any Error /// A textual representation of the error. diff --git a/WireAPI/Sources/WireAPI/APIs/UpdateEventsAPI/UpdateEventsAPIV0.swift b/WireAPI/Sources/WireAPI/APIs/UpdateEventsAPI/UpdateEventsAPIV0.swift index d8c491a0b72..93809359ec0 100644 --- a/WireAPI/Sources/WireAPI/APIs/UpdateEventsAPI/UpdateEventsAPIV0.swift +++ b/WireAPI/Sources/WireAPI/APIs/UpdateEventsAPI/UpdateEventsAPIV0.swift @@ -20,9 +20,9 @@ import Foundation class UpdateEventsAPIV0: UpdateEventsAPI, VersionedAPI { - let httpClient: HTTPClient + let httpClient: any HTTPClient - init(httpClient: HTTPClient) { + init(httpClient: any HTTPClient) { self.httpClient = httpClient } diff --git a/WireAPI/Sources/WireAPI/APIs/UserPropertiesAPI/UserPropertiesAPIV0.swift b/WireAPI/Sources/WireAPI/APIs/UserPropertiesAPI/UserPropertiesAPIV0.swift index f01bc472326..df05b96ca96 100644 --- a/WireAPI/Sources/WireAPI/APIs/UserPropertiesAPI/UserPropertiesAPIV0.swift +++ b/WireAPI/Sources/WireAPI/APIs/UserPropertiesAPI/UserPropertiesAPIV0.swift @@ -20,9 +20,9 @@ import Foundation class UserPropertiesAPIV0: UserPropertiesAPI, VersionedAPI { - let httpClient: HTTPClient + let httpClient: any HTTPClient - init(httpClient: HTTPClient) { + init(httpClient: any HTTPClient) { self.httpClient = httpClient } diff --git a/WireAPI/Sources/WireAPI/APIs/UsersAPI/UsersAPIV0.swift b/WireAPI/Sources/WireAPI/APIs/UsersAPI/UsersAPIV0.swift index 5d90d34d50c..6309d6b26d9 100644 --- a/WireAPI/Sources/WireAPI/APIs/UsersAPI/UsersAPIV0.swift +++ b/WireAPI/Sources/WireAPI/APIs/UsersAPI/UsersAPIV0.swift @@ -20,9 +20,9 @@ import Foundation class UsersAPIV0: UsersAPI, VersionedAPI { - let httpClient: HTTPClient + let httpClient: any HTTPClient - init(httpClient: HTTPClient) { + init(httpClient: any HTTPClient) { self.httpClient = httpClient } diff --git a/WireAPI/Sources/WireAPI/Components/ResponseParser.swift b/WireAPI/Sources/WireAPI/Components/ResponseParser.swift index 41736061eef..aaf1bcf406f 100644 --- a/WireAPI/Sources/WireAPI/Components/ResponseParser.swift +++ b/WireAPI/Sources/WireAPI/Components/ResponseParser.swift @@ -73,7 +73,7 @@ struct ResponseParser { func failure( code: HTTPStatusCode, label: String = "", - error: Error + error: any Error ) -> ResponseParser { var copy = self copy.parseBlocks.append { _, data in diff --git a/WireAPI/Sources/WireAPI/Network/APIService/PushChannelService.swift b/WireAPI/Sources/WireAPI/Network/APIService/PushChannelService.swift index 7cc6375098b..00e6131cb39 100644 --- a/WireAPI/Sources/WireAPI/Network/APIService/PushChannelService.swift +++ b/WireAPI/Sources/WireAPI/Network/APIService/PushChannelService.swift @@ -125,7 +125,7 @@ extension PushChannelService: URLSessionDataDelegate { public func urlSession( _ session: URLSession, task: URLSessionTask, - didCompleteWithError error: Error? + didCompleteWithError error: (any Error)? ) { // When does this get called? My guess is that it's for the initial request. if let error { diff --git a/WireAPI/Sources/WireAPI/Network/PushChannel/PushChannel.swift b/WireAPI/Sources/WireAPI/Network/PushChannel/PushChannel.swift index bdd70f3bde3..c7bfedcf376 100644 --- a/WireAPI/Sources/WireAPI/Network/PushChannel/PushChannel.swift +++ b/WireAPI/Sources/WireAPI/Network/PushChannel/PushChannel.swift @@ -17,11 +17,11 @@ // import Foundation -import WireUtilitiesPkg +import WireFoundation final class PushChannel: PushChannelProtocol { - typealias Stream = AsyncThrowingStream + typealias Stream = AsyncThrowingStream private let request: URLRequest private let webSocket: any WebSocketProtocol diff --git a/WireAPI/Sources/WireAPI/Network/PushChannel/PushChannelProtocol.swift b/WireAPI/Sources/WireAPI/Network/PushChannel/PushChannelProtocol.swift index 76e89a27322..8019afaa5a6 100644 --- a/WireAPI/Sources/WireAPI/Network/PushChannel/PushChannelProtocol.swift +++ b/WireAPI/Sources/WireAPI/Network/PushChannel/PushChannelProtocol.swift @@ -26,7 +26,7 @@ public protocol PushChannelProtocol { /// /// - Returns: An async stream of live update event envelopes. - func open() throws -> AsyncThrowingStream + func open() throws -> AsyncThrowingStream /// Close the push channel and stop receiving update events. diff --git a/WireAPI/Sources/WireAPI/Network/PushChannel/WebSocketProtocol.swift b/WireAPI/Sources/WireAPI/Network/PushChannel/WebSocketProtocol.swift index 3bdb4950fcc..5e1526810e2 100644 --- a/WireAPI/Sources/WireAPI/Network/PushChannel/WebSocketProtocol.swift +++ b/WireAPI/Sources/WireAPI/Network/PushChannel/WebSocketProtocol.swift @@ -21,7 +21,7 @@ import Foundation // sourcery: AutoMockable protocol WebSocketProtocol { - func open() throws -> AsyncThrowingStream + func open() throws -> AsyncThrowingStream func close() diff --git a/WireAPI/Tests/WireAPITests/APIs/ConnectionsAPI/ConnectionsAPITests.swift b/WireAPI/Tests/WireAPITests/APIs/ConnectionsAPI/ConnectionsAPITests.swift index 7b3a6893808..95c120dd86e 100644 --- a/WireAPI/Tests/WireAPITests/APIs/ConnectionsAPI/ConnectionsAPITests.swift +++ b/WireAPI/Tests/WireAPITests/APIs/ConnectionsAPI/ConnectionsAPITests.swift @@ -26,7 +26,7 @@ class ConnectionsAPITests: XCTestCase { /// Verifies generation of request for each API versions func testGetConnectionsRequest() async throws { // given - let apiSnapshotHelper = APISnapshotHelper { httpClient, apiVersion in + let apiSnapshotHelper = APISnapshotHelper { httpClient, apiVersion in let builder = ConnectionsAPIBuilder(httpClient: httpClient) return builder.makeAPI(for: apiVersion) } diff --git a/WireAPI/Tests/WireAPITests/APIs/ConversationsAPI/ConversationsAPITests.swift b/WireAPI/Tests/WireAPITests/APIs/ConversationsAPI/ConversationsAPITests.swift index 9c953ed09f5..73995200b25 100644 --- a/WireAPI/Tests/WireAPITests/APIs/ConversationsAPI/ConversationsAPITests.swift +++ b/WireAPI/Tests/WireAPITests/APIs/ConversationsAPI/ConversationsAPITests.swift @@ -23,7 +23,7 @@ import XCTest final class ConversationsAPITests: XCTestCase { private var httpRequestSnapshotHelper: HTTPRequestSnapshotHelper! - private var apiSnapshotHelper: APISnapshotHelper! + private var apiSnapshotHelper: APISnapshotHelper! // MARK: - Setup @@ -31,7 +31,7 @@ final class ConversationsAPITests: XCTestCase { super.setUp() httpRequestSnapshotHelper = HTTPRequestSnapshotHelper() - apiSnapshotHelper = APISnapshotHelper { httpClient, apiVersion in + apiSnapshotHelper = APISnapshotHelper { httpClient, apiVersion in let builder = ConversationsAPIBuilder(httpClient: httpClient) return builder.makeAPI(for: apiVersion) } diff --git a/WireAPI/Tests/WireAPITests/APIs/FeatureConfigsAPI/FeatureConfigsAPITests.swift b/WireAPI/Tests/WireAPITests/APIs/FeatureConfigsAPI/FeatureConfigsAPITests.swift index 7696ba4093d..dd62855402b 100644 --- a/WireAPI/Tests/WireAPITests/APIs/FeatureConfigsAPI/FeatureConfigsAPITests.swift +++ b/WireAPI/Tests/WireAPITests/APIs/FeatureConfigsAPI/FeatureConfigsAPITests.swift @@ -23,7 +23,7 @@ import XCTest final class FeatureConfigsAPITests: XCTestCase { - private var apiSnapshotHelper: APISnapshotHelper! + private var apiSnapshotHelper: APISnapshotHelper! // MARK: - Setup @@ -403,7 +403,7 @@ extension FeatureConfigsAPITests { private extension APIVersion { - func buildAPI(client: any HTTPClient) -> FeatureConfigsAPI { + func buildAPI(client: any HTTPClient) -> any FeatureConfigsAPI { let builder = FeatureConfigsAPIBuilder(httpClient: client) return builder.makeAPI(for: self) } diff --git a/WireAPI/Tests/WireAPITests/APIs/SelfUserAPI/SelfUserAPITests.swift b/WireAPI/Tests/WireAPITests/APIs/SelfUserAPI/SelfUserAPITests.swift index 719e876e95e..bb53669b1a5 100644 --- a/WireAPI/Tests/WireAPITests/APIs/SelfUserAPI/SelfUserAPITests.swift +++ b/WireAPI/Tests/WireAPITests/APIs/SelfUserAPI/SelfUserAPITests.swift @@ -23,7 +23,7 @@ import XCTest final class SelfUserAPITests: XCTestCase { - private var apiSnapshotHelper: APISnapshotHelper! + private var apiSnapshotHelper: APISnapshotHelper! // MARK: - Setup @@ -249,7 +249,7 @@ extension SelfUserAPITests { } private extension APIVersion { - func buildAPI(client: any HTTPClient) -> SelfUserAPI { + func buildAPI(client: any HTTPClient) -> any SelfUserAPI { let builder = SelfUserAPIBuilder(httpClient: client) return builder.makeAPI(for: self) } diff --git a/WireAPI/Tests/WireAPITests/APIs/TeamsAPI/TeamsAPITests.swift b/WireAPI/Tests/WireAPITests/APIs/TeamsAPI/TeamsAPITests.swift index 54f05328538..1730e37a223 100644 --- a/WireAPI/Tests/WireAPITests/APIs/TeamsAPI/TeamsAPITests.swift +++ b/WireAPI/Tests/WireAPITests/APIs/TeamsAPI/TeamsAPITests.swift @@ -23,7 +23,7 @@ import XCTest final class TeamsAPITests: XCTestCase { - private var apiSnapshotHelper: APISnapshotHelper! + private var apiSnapshotHelper: APISnapshotHelper! // MARK: - Setup diff --git a/WireAPI/Tests/WireAPITests/APIs/UpdateEventsAPI/UpdateEventsAPITests.swift b/WireAPI/Tests/WireAPITests/APIs/UpdateEventsAPI/UpdateEventsAPITests.swift index af6c93cc7af..af9217e47c1 100644 --- a/WireAPI/Tests/WireAPITests/APIs/UpdateEventsAPI/UpdateEventsAPITests.swift +++ b/WireAPI/Tests/WireAPITests/APIs/UpdateEventsAPI/UpdateEventsAPITests.swift @@ -22,7 +22,7 @@ import XCTest final class UpdateEventsAPITests: XCTestCase { - private func createSnapshotter() -> APISnapshotHelper { + private func createSnapshotter() -> APISnapshotHelper { APISnapshotHelper { httpClient, apiVersion in UpdateEventsAPIBuilder(httpClient: httpClient) .makeAPI(for: apiVersion) diff --git a/WireAPI/Tests/WireAPITests/APIs/UserPropertiesAPI/UserPropertiesAPITests.swift b/WireAPI/Tests/WireAPITests/APIs/UserPropertiesAPI/UserPropertiesAPITests.swift index 4044f3f1344..3ff148ea3ff 100644 --- a/WireAPI/Tests/WireAPITests/APIs/UserPropertiesAPI/UserPropertiesAPITests.swift +++ b/WireAPI/Tests/WireAPITests/APIs/UserPropertiesAPI/UserPropertiesAPITests.swift @@ -23,7 +23,7 @@ import XCTest final class UserPropertiesAPITests: XCTestCase { - private var apiSnapshotHelper: APISnapshotHelper! + private var apiSnapshotHelper: APISnapshotHelper! // MARK: - Setup diff --git a/WireAPI/Tests/WireAPITests/APIs/UsersAPI/UsersAPITests.swift b/WireAPI/Tests/WireAPITests/APIs/UsersAPI/UsersAPITests.swift index 267648b9910..50c31de7044 100644 --- a/WireAPI/Tests/WireAPITests/APIs/UsersAPI/UsersAPITests.swift +++ b/WireAPI/Tests/WireAPITests/APIs/UsersAPI/UsersAPITests.swift @@ -23,7 +23,7 @@ import XCTest final class UsersAPITests: XCTestCase { - private var apiSnapshotHelper: APISnapshotHelper! + private var apiSnapshotHelper: APISnapshotHelper! // MARK: - Setup diff --git a/WireAnalytics/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist b/WireAnalytics/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist index 0aa12047039..6a6ca40138a 120000 --- a/WireAnalytics/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist +++ b/WireAnalytics/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist @@ -1 +1 @@ -../../../../wire-ios-mono.xcworkspace/xcshareddata/IDETemplateMacros.plist \ No newline at end of file +../../../../../wire-ios-mono.xcworkspace/xcshareddata/IDETemplateMacros.plist \ No newline at end of file diff --git a/WireAnalytics/Package.swift b/WireAnalytics/Package.swift index 3f59d84fd6e..4ce60bdbd39 100644 --- a/WireAnalytics/Package.swift +++ b/WireAnalytics/Package.swift @@ -16,8 +16,7 @@ let package = Package( targets: [ .target( name: "WireAnalytics", - dependencies: resolveWireAnalyticsDependencies(), - swiftSettings: swiftSettings + dependencies: resolveWireAnalyticsDependencies() ), .target( name: "WireDatadog", @@ -27,8 +26,7 @@ let package = Package( .product(name: "DatadogLogs", package: "dd-sdk-ios"), .product(name: "DatadogRUM", package: "dd-sdk-ios"), .product(name: "DatadogTrace", package: "dd-sdk-ios") - ], - swiftSettings: swiftSettings + ] ) ] ) @@ -50,8 +48,10 @@ func hasEnvironmentVariable(_ name: String, _ value: String? = nil) -> Bool { } } -let swiftSettings: [SwiftSetting] = [ - .enableUpcomingFeature("ExistentialAny"), - .enableUpcomingFeature("GlobalConcurrency"), - .enableExperimentalFeature("StrictConcurrency") -] +for target in package.targets { + target.swiftSettings = [ + .enableUpcomingFeature("ExistentialAny"), + .enableUpcomingFeature("GlobalConcurrency"), + .enableExperimentalFeature("StrictConcurrency") + ] +} diff --git a/WireDomain/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist b/WireDomain/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist index 0aa12047039..6a6ca40138a 120000 --- a/WireDomain/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist +++ b/WireDomain/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist @@ -1 +1 @@ -../../../../wire-ios-mono.xcworkspace/xcshareddata/IDETemplateMacros.plist \ No newline at end of file +../../../../../wire-ios-mono.xcworkspace/xcshareddata/IDETemplateMacros.plist \ No newline at end of file diff --git a/WireDomain/Package.swift b/WireDomain/Package.swift index 368207c998c..79913ec1415 100644 --- a/WireDomain/Package.swift +++ b/WireDomain/Package.swift @@ -7,8 +7,8 @@ let package = Package( name: "WireDomainPackage", platforms: [.iOS(.v15), .macOS(.v12)], products: [ - .library(name: "WireDomainPackage", type: .dynamic, targets: ["WireDomainPkg"]), - .library(name: "WireDomainPackageSupport", type: .dynamic, targets: ["WireDomainPkgSupport"]) + .library(name: "WireDomainPackage", targets: ["WireDomainPkg"]), + .library(name: "WireDomainPackageSupport", targets: ["WireDomainPkgSupport"]) ], dependencies: [ .package(url: "https://github.com/apple/swift-docc-plugin", from: "1.1.0"), @@ -16,14 +16,13 @@ let package = Package( .package(name: "WireAPI", path: "../WireAPI") ], targets: [ - .target(name: "WireDomainPkg", dependencies: ["WireAPI"], path: "./Sources/Package", swiftSettings: swiftSettings), + .target(name: "WireDomainPkg", dependencies: ["WireAPI"], path: "./Sources/Package"), .testTarget(name: "WireDomainPkgTests", dependencies: ["WireDomainPkg"], path: "./Tests/PackageTests"), .target( name: "WireDomainPkgSupport", dependencies: ["WireDomainPkg"], path: "./Sources/PackageSupport", - swiftSettings: swiftSettings, plugins: [ .plugin(name: "SourceryPlugin", package: "SourceryPlugin") ] @@ -31,8 +30,10 @@ let package = Package( ] ) -let swiftSettings: [SwiftSetting] = [ - .enableUpcomingFeature("ExistentialAny"), - .enableUpcomingFeature("GlobalConcurrency"), - .enableExperimentalFeature("StrictConcurrency") -] +for target in package.targets { + target.swiftSettings = [ + .enableUpcomingFeature("ExistentialAny"), + .enableUpcomingFeature("GlobalConcurrency"), + .enableExperimentalFeature("StrictConcurrency") + ] +} diff --git a/WireDomain/Project/WireDomain Project.xcodeproj/project.pbxproj b/WireDomain/Project/WireDomain Project.xcodeproj/project.pbxproj index 4b5d3ed9bac..735fa2f0399 100644 --- a/WireDomain/Project/WireDomain Project.xcodeproj/project.pbxproj +++ b/WireDomain/Project/WireDomain Project.xcodeproj/project.pbxproj @@ -16,19 +16,19 @@ 017F67AD2C20802C00B6E02D /* ConnectionsRepositoryError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 017F679E2C20802300B6E02D /* ConnectionsRepositoryError.swift */; }; 017F67AE2C20802C00B6E02D /* SelfUserProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 017F67A12C20802300B6E02D /* SelfUserProvider.swift */; }; 017F67AF2C20803300B6E02D /* AutoMockable.generated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 017F67A42C20802300B6E02D /* AutoMockable.generated.swift */; }; - 01BDA5452C20762200636E50 /* WireDataModelSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 01BDA5442C20762200636E50 /* WireDataModelSupport.framework */; }; 01D0DCB12C1C8C880076CB1C /* WireDomain.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 01D0DCA62C1C8C870076CB1C /* WireDomain.framework */; }; - 01D0DCC42C1C8CC20076CB1C /* WireDataModel.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 01D0DCC32C1C8CC20076CB1C /* WireDataModel.framework */; }; 01D0DCC62C1C8CD90076CB1C /* WireTransport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 01D0DCC52C1C8CD90076CB1C /* WireTransport.framework */; }; 162356502C2B223100C6666C /* UserRepositoryTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1623564F2C2B223100C6666C /* UserRepositoryTests.swift */; }; 162356572C2B22A300C6666C /* UserModelMappings.swift in Sources */ = {isa = PBXBuildFile; fileRef = 162356562C2B22A300C6666C /* UserModelMappings.swift */; }; 162356582C2C2F6100C6666C /* UserRepository.swift in Sources */ = {isa = PBXBuildFile; fileRef = 162356512C2B223B00C6666C /* UserRepository.swift */; }; 162356592C2C2F8100C6666C /* UserRepositoryError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 162356522C2B223B00C6666C /* UserRepositoryError.swift */; }; - 59607E822C53DA8B000B8376 /* WireDomain.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 01D0DCA62C1C8C870076CB1C /* WireDomain.framework */; }; + 591B6E452C8B09BA009F8A7B /* WireDataModel.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 01D0DCC32C1C8CC20076CB1C /* WireDataModel.framework */; }; + 591B6E472C8B09BD009F8A7B /* WireDataModelSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 01BDA5442C20762200636E50 /* WireDataModelSupport.framework */; }; + 591B6E4A2C8B09C1009F8A7B /* WireDomain.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 01D0DCA62C1C8C870076CB1C /* WireDomain.framework */; }; + 598D042D2C89C63100B64D71 /* WireFoundation in Frameworks */ = {isa = PBXBuildFile; productRef = 598D042C2C89C63100B64D71 /* WireFoundation */; }; 59909A5E2C5BBEA8009C41DE /* WireAPI in Frameworks */ = {isa = PBXBuildFile; productRef = 59909A5D2C5BBEA8009C41DE /* WireAPI */; }; 59909A692C5BC001009C41DE /* WireAPI in Frameworks */ = {isa = PBXBuildFile; productRef = 59909A682C5BC001009C41DE /* WireAPI */; }; 59909A6D2C5BC08B009C41DE /* WireAPISupport in Frameworks */ = {isa = PBXBuildFile; productRef = 59909A6C2C5BC08B009C41DE /* WireAPISupport */; }; - 59AAD2E32C763F6C0095E6C2 /* WireUtilitiesPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 59AAD2E22C763F6C0095E6C2 /* WireUtilitiesPackage */; }; C9E8A3AA2C7324D10093DD5C /* ConversationLabelsRepositoryError.swift in Sources */ = {isa = PBXBuildFile; fileRef = C9E8A3A92C7324D10093DD5C /* ConversationLabelsRepositoryError.swift */; }; C9E8A3AE2C73878B0093DD5C /* ConnectionsRepositoryTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = C9E8A3AD2C73878B0093DD5C /* ConnectionsRepositoryTests.swift */; }; C9E8A3B52C738F0A0093DD5C /* ConversationLabelsRepository.swift in Sources */ = {isa = PBXBuildFile; fileRef = C9E8A3B42C738F0A0093DD5C /* ConversationLabelsRepository.swift */; }; @@ -107,29 +107,6 @@ }; /* End PBXContainerItemProxy section */ -/* Begin PBXCopyFilesBuildPhase section */ - 590576302C51BF3A00699C73 /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; - 59909A6B2C5BC001009C41DE /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - /* Begin PBXFileReference section */ 017F67822C207A3200B6E02D /* WireDomainSupport.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = WireDomainSupport.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 017F67982C20801800B6E02D /* TeamRepositoryTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TeamRepositoryTests.swift; sourceTree = ""; }; @@ -219,7 +196,7 @@ buildActionMask = 2147483647; files = ( 59909A692C5BC001009C41DE /* WireAPI in Frameworks */, - 59607E822C53DA8B000B8376 /* WireDomain.framework in Frameworks */, + 591B6E4A2C8B09C1009F8A7B /* WireDomain.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -227,10 +204,10 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 598D042D2C89C63100B64D71 /* WireFoundation in Frameworks */, + 591B6E452C8B09BA009F8A7B /* WireDataModel.framework in Frameworks */, 59909A5E2C5BBEA8009C41DE /* WireAPI in Frameworks */, - 01D0DCC42C1C8CC20076CB1C /* WireDataModel.framework in Frameworks */, 01D0DCC62C1C8CD90076CB1C /* WireTransport.framework in Frameworks */, - 59AAD2E32C763F6C0095E6C2 /* WireUtilitiesPackage in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -240,9 +217,9 @@ files = ( 59909A6D2C5BC08B009C41DE /* WireAPISupport in Frameworks */, 017F67942C207AA000B6E02D /* WireDomainSupport.framework in Frameworks */, + 591B6E472C8B09BD009F8A7B /* WireDataModelSupport.framework in Frameworks */, 01D0DCB12C1C8C880076CB1C /* WireDomain.framework in Frameworks */, CB7979132C738508006FBA58 /* WireTransportSupport.framework in Frameworks */, - 01BDA5452C20762200636E50 /* WireDataModelSupport.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -543,7 +520,6 @@ 017F677E2C207A3200B6E02D /* Sources */, 017F677F2C207A3200B6E02D /* Frameworks */, 017F67802C207A3200B6E02D /* Resources */, - 59909A6B2C5BC001009C41DE /* Embed Frameworks */, ); buildRules = ( ); @@ -566,7 +542,6 @@ 01D0DCA22C1C8C870076CB1C /* Sources */, 01D0DCA32C1C8C870076CB1C /* Frameworks */, 01D0DCA42C1C8C870076CB1C /* Resources */, - 590576302C51BF3A00699C73 /* Embed Frameworks */, ); buildRules = ( ); @@ -575,7 +550,7 @@ name = WireDomain; packageProductDependencies = ( 59909A5D2C5BBEA8009C41DE /* WireAPI */, - 59AAD2E22C763F6C0095E6C2 /* WireUtilitiesPackage */, + 598D042C2C89C63100B64D71 /* WireFoundation */, ); productName = WireDomain; productReference = 01D0DCA62C1C8C870076CB1C /* WireDomain.framework */; @@ -1087,7 +1062,6 @@ 01D0DCBE2C1C8C880076CB1C /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_TEAM = EDF3JCE8BC; @@ -1110,7 +1084,6 @@ 01D0DCBF2C1C8C880076CB1C /* Release */ = { isa = XCBuildConfiguration; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; CODE_SIGN_STYLE = Automatic; CURRENT_PROJECT_VERSION = 1; DEVELOPMENT_TEAM = EDF3JCE8BC; @@ -1172,6 +1145,10 @@ /* End XCConfigurationList section */ /* Begin XCSwiftPackageProductDependency section */ + 598D042C2C89C63100B64D71 /* WireFoundation */ = { + isa = XCSwiftPackageProductDependency; + productName = WireFoundation; + }; 59909A5D2C5BBEA8009C41DE /* WireAPI */ = { isa = XCSwiftPackageProductDependency; productName = WireAPI; @@ -1184,10 +1161,6 @@ isa = XCSwiftPackageProductDependency; productName = WireAPISupport; }; - 59AAD2E22C763F6C0095E6C2 /* WireUtilitiesPackage */ = { - isa = XCSwiftPackageProductDependency; - productName = WireUtilitiesPackage; - }; /* End XCSwiftPackageProductDependency section */ }; rootObject = 01D0DC9D2C1C8C870076CB1C /* Project object */; diff --git a/WireDomain/Sources/WireDomain/Repositories/UpdateEventsRepository.swift b/WireDomain/Sources/WireDomain/Repositories/UpdateEventsRepository.swift index 97bce3b9f8e..57b092fae40 100644 --- a/WireDomain/Sources/WireDomain/Repositories/UpdateEventsRepository.swift +++ b/WireDomain/Sources/WireDomain/Repositories/UpdateEventsRepository.swift @@ -19,7 +19,7 @@ import Foundation import WireAPI import WireDataModel -import WireUtilitiesPkg +import WireFoundation // sourcery: AutoMockable /// Access update events. diff --git a/WireSystem/.PrivacyInfo.xcprivacy b/WireFoundation/.PrivacyInfo.xcprivacy similarity index 100% rename from WireSystem/.PrivacyInfo.xcprivacy rename to WireFoundation/.PrivacyInfo.xcprivacy diff --git a/WireSystem/.gitignore b/WireFoundation/.gitignore similarity index 100% rename from WireSystem/.gitignore rename to WireFoundation/.gitignore diff --git a/WireSystem/.swiftpm/WireSystem.xctestplan b/WireFoundation/.swiftpm/WireFoundation.xctestplan similarity index 66% rename from WireSystem/.swiftpm/WireSystem.xctestplan rename to WireFoundation/.swiftpm/WireFoundation.xctestplan index 4bbfa1dffdd..20771743e06 100644 --- a/WireSystem/.swiftpm/WireSystem.xctestplan +++ b/WireFoundation/.swiftpm/WireFoundation.xctestplan @@ -9,6 +9,11 @@ } ], "defaultOptions" : { + "commandLineArgumentEntries" : [ + { + "argument" : "-NSShowNonLocalizedStrings YES" + } + ], "language" : "en", "region" : "DE", "testExecutionOrdering" : "random" @@ -17,8 +22,8 @@ { "target" : { "containerPath" : "container:", - "identifier" : "WireSystemPackageTests", - "name" : "WireSystemPackageTests" + "identifier" : "WireFoundationTests", + "name" : "WireFoundationTests" } } ], diff --git a/WireFoundation/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist b/WireFoundation/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist new file mode 120000 index 00000000000..6a6ca40138a --- /dev/null +++ b/WireFoundation/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist @@ -0,0 +1 @@ +../../../../../wire-ios-mono.xcworkspace/xcshareddata/IDETemplateMacros.plist \ No newline at end of file diff --git a/WireSystem/.swiftpm/xcode/package.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/WireFoundation/.swiftpm/xcode/package.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings similarity index 100% rename from WireSystem/.swiftpm/xcode/package.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings rename to WireFoundation/.swiftpm/xcode/package.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings diff --git a/WireSystem/.swiftpm/xcode/xcshareddata/xcschemes/WireSystemPackage.xcscheme b/WireFoundation/.swiftpm/xcode/xcshareddata/xcschemes/WireFoundation.xcscheme similarity index 85% rename from WireSystem/.swiftpm/xcode/xcshareddata/xcschemes/WireSystemPackage.xcscheme rename to WireFoundation/.swiftpm/xcode/xcshareddata/xcschemes/WireFoundation.xcscheme index 2e5ac81c8a3..193d1310e3e 100644 --- a/WireSystem/.swiftpm/xcode/xcshareddata/xcschemes/WireSystemPackage.xcscheme +++ b/WireFoundation/.swiftpm/xcode/xcshareddata/xcschemes/WireFoundation.xcscheme @@ -15,9 +15,9 @@ buildForAnalyzing = "YES"> @@ -30,7 +30,7 @@ shouldUseLaunchSchemeArgsEnv = "YES"> @@ -55,9 +55,9 @@ diff --git a/WireSystem/.swiftpm/xcode/xcshareddata/xcschemes/WireSystemPackageSupport.xcscheme b/WireFoundation/.swiftpm/xcode/xcshareddata/xcschemes/WireFoundationSupport.xcscheme similarity index 85% rename from WireSystem/.swiftpm/xcode/xcshareddata/xcschemes/WireSystemPackageSupport.xcscheme rename to WireFoundation/.swiftpm/xcode/xcshareddata/xcschemes/WireFoundationSupport.xcscheme index 5b7ea957b16..9fd002b2a43 100644 --- a/WireSystem/.swiftpm/xcode/xcshareddata/xcschemes/WireSystemPackageSupport.xcscheme +++ b/WireFoundation/.swiftpm/xcode/xcshareddata/xcschemes/WireFoundationSupport.xcscheme @@ -15,9 +15,9 @@ buildForAnalyzing = "YES"> @@ -50,9 +50,9 @@ diff --git a/WireTesting/.swiftpm/xcode/xcshareddata/xcschemes/WireTestingPackage.xcscheme b/WireFoundation/.swiftpm/xcode/xcshareddata/xcschemes/WireTestingPackage.xcscheme similarity index 76% rename from WireTesting/.swiftpm/xcode/xcshareddata/xcschemes/WireTestingPackage.xcscheme rename to WireFoundation/.swiftpm/xcode/xcshareddata/xcschemes/WireTestingPackage.xcscheme index 87c0b5c1880..af41dfb9861 100644 --- a/WireTesting/.swiftpm/xcode/xcshareddata/xcschemes/WireTestingPackage.xcscheme +++ b/WireFoundation/.swiftpm/xcode/xcshareddata/xcschemes/WireTestingPackage.xcscheme @@ -1,6 +1,6 @@ - - - - - - - - - - + shouldUseLaunchSchemeArgsEnv = "YES" + shouldAutocreateTestPlan = "YES"> AsyncThrowingStream { + func toStream() -> AsyncThrowingStream { var iterator = makeAsyncIterator() return AsyncThrowingStream { try await iterator.next() diff --git a/WireSystem/Sources/WireSystem/Utilities/WeakReference.swift b/WireFoundation/Sources/WireFoundation/Utilities/WeakReference.swift similarity index 100% rename from WireSystem/Sources/WireSystem/Utilities/WeakReference.swift rename to WireFoundation/Sources/WireFoundation/Utilities/WeakReference.swift diff --git a/WireSystem/Sources/WireSystemSupport/Sourcery/AutoMockable.stencil b/WireFoundation/Sources/WireFoundationSupport/Sourcery/AutoMockable.stencil similarity index 100% rename from WireSystem/Sources/WireSystemSupport/Sourcery/AutoMockable.stencil rename to WireFoundation/Sources/WireFoundationSupport/Sourcery/AutoMockable.stencil diff --git a/WireSystem/Sources/WireSystemSupport/Sourcery/sourcery.yml b/WireFoundation/Sources/WireFoundationSupport/Sourcery/sourcery.yml similarity index 54% rename from WireSystem/Sources/WireSystemSupport/Sourcery/sourcery.yml rename to WireFoundation/Sources/WireFoundationSupport/Sourcery/sourcery.yml index 98ed8d322e8..4e7c897ba8a 100644 --- a/WireSystem/Sources/WireSystemSupport/Sourcery/sourcery.yml +++ b/WireFoundation/Sources/WireFoundationSupport/Sourcery/sourcery.yml @@ -1,8 +1,8 @@ sources: -- ${PACKAGE_ROOT_DIR}/Sources/WireSystem +- ${PACKAGE_ROOT_DIR}/Sources/WireFoundation templates: - ${TARGET_DIR}/Sourcery/AutoMockable.stencil output: ${DERIVED_SOURCES_DIR} args: - autoMockableImports: ["WireSystemPackage"] + autoMockableImports: ["WireFoundation"] diff --git a/WireSystem/Sources/WireSystemSupport/WireSystemPackage.swift b/WireFoundation/Sources/WireFoundationSupport/WireFoundation.swift similarity index 100% rename from WireSystem/Sources/WireSystemSupport/WireSystemPackage.swift rename to WireFoundation/Sources/WireFoundationSupport/WireFoundation.swift diff --git a/WireTesting/Sources/WireTesting/Documentation.docc/Documentation.md b/WireFoundation/Sources/WireTesting/Documentation.docc/Documentation.md similarity index 100% rename from WireTesting/Sources/WireTesting/Documentation.docc/Documentation.md rename to WireFoundation/Sources/WireTesting/Documentation.docc/Documentation.md diff --git a/WireUI/Sources/WireUITesting/SnapshotHelper.swift b/WireFoundation/Sources/WireTesting/SnapshotHelper.swift similarity index 100% rename from WireUI/Sources/WireUITesting/SnapshotHelper.swift rename to WireFoundation/Sources/WireTesting/SnapshotHelper.swift diff --git a/WireTesting/Tests/WireTestingTests/PlaceholderTests.swift b/WireFoundation/Tests/WireFoundationTests/PlaceholderTests.swift similarity index 96% rename from WireTesting/Tests/WireTestingTests/PlaceholderTests.swift rename to WireFoundation/Tests/WireFoundationTests/PlaceholderTests.swift index c70edff072a..20ccba75c57 100644 --- a/WireTesting/Tests/WireTestingTests/PlaceholderTests.swift +++ b/WireFoundation/Tests/WireFoundationTests/PlaceholderTests.swift @@ -18,7 +18,7 @@ import XCTest -@testable import WireTestingPkg +@testable import WireFoundation final class PlaceholderTests: XCTestCase { diff --git a/WireTesting/.gitignore b/WireLinkPreview/.gitignore similarity index 100% rename from WireTesting/.gitignore rename to WireLinkPreview/.gitignore diff --git a/WireTesting/.swiftpm/WireTesting.xctestplan b/WireLinkPreview/.swiftpm/WireLinkPreview.xctestplan similarity index 70% rename from WireTesting/.swiftpm/WireTesting.xctestplan rename to WireLinkPreview/.swiftpm/WireLinkPreview.xctestplan index d607fcb036a..44135163a53 100644 --- a/WireTesting/.swiftpm/WireTesting.xctestplan +++ b/WireLinkPreview/.swiftpm/WireLinkPreview.xctestplan @@ -1,7 +1,7 @@ { "configurations" : [ { - "id" : "8B82DFA4-9179-4D4C-9DAC-EE73DA73040F", + "id" : "D61EFBC5-B075-4F64-A366-9CF45AFEECC2", "name" : "Test Scheme Action", "options" : { @@ -17,8 +17,8 @@ { "target" : { "containerPath" : "container:", - "identifier" : "WireTestingPkgTests", - "name" : "WireTestingPkgTests" + "identifier" : "WireLinkPreviewTests", + "name" : "WireLinkPreviewTests" } } ], diff --git a/WireLinkPreview/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist b/WireLinkPreview/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist new file mode 120000 index 00000000000..6a6ca40138a --- /dev/null +++ b/WireLinkPreview/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist @@ -0,0 +1 @@ +../../../../../wire-ios-mono.xcworkspace/xcshareddata/IDETemplateMacros.plist \ No newline at end of file diff --git a/WireTesting/.swiftpm/xcode/package.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/WireLinkPreview/.swiftpm/xcode/package.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings similarity index 100% rename from WireTesting/.swiftpm/xcode/package.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings rename to WireLinkPreview/.swiftpm/xcode/package.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings diff --git a/WireUtilities/.swiftpm/xcode/xcshareddata/xcschemes/WireUtilitiesPackage.xcscheme b/WireLinkPreview/.swiftpm/xcode/xcshareddata/xcschemes/WireLinkPreview.xcscheme similarity index 71% rename from WireUtilities/.swiftpm/xcode/xcshareddata/xcschemes/WireUtilitiesPackage.xcscheme rename to WireLinkPreview/.swiftpm/xcode/xcshareddata/xcschemes/WireLinkPreview.xcscheme index ae41c074785..a0cec8f20a4 100644 --- a/WireUtilities/.swiftpm/xcode/xcshareddata/xcschemes/WireUtilitiesPackage.xcscheme +++ b/WireLinkPreview/.swiftpm/xcode/xcshareddata/xcschemes/WireLinkPreview.xcscheme @@ -1,6 +1,6 @@ @@ -30,10 +30,22 @@ shouldUseLaunchSchemeArgsEnv = "YES"> + + + + + + diff --git a/WireUtilities/Package.resolved b/WireLinkPreview/Package.resolved similarity index 87% rename from WireUtilities/Package.resolved rename to WireLinkPreview/Package.resolved index e0f316a0aef..fb754e36f18 100644 --- a/WireUtilities/Package.resolved +++ b/WireLinkPreview/Package.resolved @@ -1,5 +1,5 @@ { - "originHash" : "845c45bce0f909da5b572c9ef44fde9d9a133a83ef88501a3412bbf2d7cefb1a", + "originHash" : "76fb04d3378ed6eba06820f8c990910922ab8e44bed27daae346571aa3ab5ca7", "pins" : [ { "identity" : "swift-docc-plugin", diff --git a/WireLinkPreview/Package.swift b/WireLinkPreview/Package.swift new file mode 100644 index 00000000000..87f2fade6a1 --- /dev/null +++ b/WireLinkPreview/Package.swift @@ -0,0 +1,32 @@ +// swift-tools-version: 5.10 +// The swift-tools-version declares the minimum version of Swift required to build this package. + +import PackageDescription + +let package = Package( + name: "WireLinkPreview", + defaultLocalization: "en", + platforms: [.iOS(.v15), .macOS(.v12)], + products: [ + .library(name: "WireLinkPreview", type: .dynamic, targets: ["WireLinkPreview"]) + ], + dependencies: [ + .package(url: "https://github.com/apple/swift-docc-plugin", from: "1.1.0"), + .package(url: "https://github.com/wireapp/HTMLString", exact: "6.0.1") + ], + targets: [ + .target( + name: "WireLinkPreview", + dependencies: ["HTMLString"], + path: "./Sources/WireLinkPreview", + swiftSettings: swiftSettings + ), + .testTarget(name: "WireLinkPreviewTests", dependencies: ["WireLinkPreview"], path: "./Tests/WireLinkPreviewTests") + ] +) + +let swiftSettings: [SwiftSetting] = [ + .enableUpcomingFeature("ExistentialAny"), + .enableUpcomingFeature("GlobalConcurrency"), + .enableExperimentalFeature("StrictConcurrency") +] diff --git a/wire-ios-link-preview/WireLinkPreview/HTMLDocument.swift b/WireLinkPreview/Sources/WireLinkPreview/HTMLDocument.swift similarity index 86% rename from wire-ios-link-preview/WireLinkPreview/HTMLDocument.swift rename to WireLinkPreview/Sources/WireLinkPreview/HTMLDocument.swift index f91a8e6c2bb..b4d11344473 100644 --- a/wire-ios-link-preview/WireLinkPreview/HTMLDocument.swift +++ b/WireLinkPreview/Sources/WireLinkPreview/HTMLDocument.swift @@ -46,7 +46,7 @@ extension UnsafeMutablePointer where Pointee == xmlDoc { /// Returns the root element of the document. var rootElement: xmlNodePtr? { - return xmlDocGetRootElement(self) + xmlDocGetRootElement(self) } /// Releases the resources used by an HTML document after we are done processing it. @@ -60,7 +60,7 @@ extension UnsafeMutablePointer where Pointee == xmlNode { /// The name of the HTML tag. var tagName: HTMLStringBuffer { - return HTMLStringBuffer(unowned: pointee.name) + HTMLStringBuffer(unowned: pointee.name) } /// The textual content of the element. @@ -94,16 +94,14 @@ final class HTMLChildrenIterator: IteratorProtocol { init(rootElement: HTMLElement) { self.rootElement = rootElement - self.currentChild = nil + currentChild = nil } func next() -> HTMLElement? { - let nextPtr: xmlNodePtr? - - if let currentChild = self.currentChild { - nextPtr = xmlNextElementSibling(currentChild) + let nextPtr: xmlNodePtr? = if let currentChild { + xmlNextElementSibling(currentChild) } else { - nextPtr = xmlFirstElementChild(rootElement) + xmlFirstElementChild(rootElement) } currentChild = nextPtr @@ -125,29 +123,27 @@ final class HTMLStringBuffer { /// Creates a new string wrapper. init(unowned ptr: UnsafePointer) { - self.storage = .unowned(ptr) + storage = .unowned(ptr) } /// Creates a new string wrapper. init(retaining ptr: UnsafeMutablePointer) { - self.storage = .retained(ptr) + storage = .retained(ptr) } deinit { - if case let .retained(ptr) = storage { + if case .retained(let ptr) = storage { xmlFree(ptr) } } /// Returns the value of the string, with unescaped HTML entities. func stringValue(removingEntities removeEntities: Bool) -> String { - let stringValue: String - - switch storage { + let stringValue = switch storage { case .retained(let ptr): - stringValue = String(cString: ptr) + String(cString: ptr) case .unowned(let ptr): - stringValue = String(cString: ptr) + String(cString: ptr) } return removeEntities ? stringValue.removingHTMLEntities() : stringValue @@ -159,8 +155,8 @@ final class HTMLStringBuffer { func == (lhs: HTMLStringBuffer, rhs: String) -> Bool { switch lhs.storage { case .retained(let ptr): - return xmlStrEqual(ptr, rhs) == 1 + xmlStrEqual(ptr, rhs) == 1 case .unowned(let ptr): - return xmlStrEqual(ptr, rhs) == 1 + xmlStrEqual(ptr, rhs) == 1 } } diff --git a/wire-ios-link-preview/WireLinkPreview/ImageDownloader.swift b/WireLinkPreview/Sources/WireLinkPreview/ImageDownloader.swift similarity index 95% rename from wire-ios-link-preview/WireLinkPreview/ImageDownloader.swift rename to WireLinkPreview/Sources/WireLinkPreview/ImageDownloader.swift index e4d72108bab..2aa99856245 100644 --- a/wire-ios-link-preview/WireLinkPreview/ImageDownloader.swift +++ b/WireLinkPreview/Sources/WireLinkPreview/ImageDownloader.swift @@ -55,9 +55,9 @@ final class ImageDownloader: NSObject, ImageDownloaderType { var result = [URL: ImageData]() let group = DispatchGroup() - urls.forEach { url in + for url in urls { group.enter() - self.session.dataTaskWithURL(url) { data, response, _ in + session.dataTaskWithURL(url) { data, response, _ in if let httpResponse = response as? HTTPURLResponse, httpResponse.contentTypeImage { result[url] = data } @@ -66,7 +66,7 @@ final class ImageDownloader: NSObject, ImageDownloaderType { } _ = group.wait(timeout: DispatchTime.distantFuture) - self.resultsQueue.addOperation { + resultsQueue.addOperation { completion(result) } } diff --git a/wire-ios-link-preview/WireLinkPreview/LinkAttachmentDetector.swift b/WireLinkPreview/Sources/WireLinkPreview/LinkAttachmentDetector.swift similarity index 98% rename from wire-ios-link-preview/WireLinkPreview/LinkAttachmentDetector.swift rename to WireLinkPreview/Sources/WireLinkPreview/LinkAttachmentDetector.swift index 6b412e3162d..3d6f6fa8f61 100644 --- a/wire-ios-link-preview/WireLinkPreview/LinkAttachmentDetector.swift +++ b/WireLinkPreview/Sources/WireLinkPreview/LinkAttachmentDetector.swift @@ -62,7 +62,7 @@ public final class LinkAttachmentDetector: NSObject, LinkAttachmentDetectorType previewDownloader.tearDown() } - public convenience override init() { + override public convenience init() { let workerQueue = OperationQueue() self.init( previewDownloader: PreviewDownloader(resultsQueue: workerQueue), diff --git a/wire-ios-link-preview/WireLinkPreview/LinkAttachmentTypes.swift b/WireLinkPreview/Sources/WireLinkPreview/LinkAttachmentTypes.swift similarity index 97% rename from wire-ios-link-preview/WireLinkPreview/LinkAttachmentTypes.swift rename to WireLinkPreview/Sources/WireLinkPreview/LinkAttachmentTypes.swift index aef02758246..34fbdb1c332 100644 --- a/wire-ios-link-preview/WireLinkPreview/LinkAttachmentTypes.swift +++ b/WireLinkPreview/Sources/WireLinkPreview/LinkAttachmentTypes.swift @@ -120,7 +120,7 @@ extension LinkAttachment { } let thumbnails = openGraphData.imageUrls.compactMap(URL.init) - guard let permalink = URL.init(string: openGraphData.resolvedURL) else { return nil } + guard let permalink = URL(string: openGraphData.resolvedURL) else { return nil } self.init(type: detectedType, title: openGraphData.title, permalink: permalink, thumbnails: thumbnails, originalRange: originalRange) } diff --git a/wire-ios-link-preview/WireLinkPreview/LinkPreviewDetector.swift b/WireLinkPreview/Sources/WireLinkPreview/LinkPreviewDetector.swift similarity index 95% rename from wire-ios-link-preview/WireLinkPreview/LinkPreviewDetector.swift rename to WireLinkPreview/Sources/WireLinkPreview/LinkPreviewDetector.swift index 8f5dea5ea4f..3ad5c50514e 100644 --- a/wire-ios-link-preview/WireLinkPreview/LinkPreviewDetector.swift +++ b/WireLinkPreview/Sources/WireLinkPreview/LinkPreviewDetector.swift @@ -33,7 +33,7 @@ public final class LinkPreviewDetector: NSObject, LinkPreviewDetectorType { public typealias DetectCompletion = ([LinkMetadata]) -> Void - public convenience override init() { + override public convenience init() { let workerQueue = OperationQueue() self.init( previewDownloader: PreviewDownloader(resultsQueue: workerQueue), @@ -56,7 +56,7 @@ public final class LinkPreviewDetector: NSObject, LinkPreviewDetectorType { The completion block will be called on private background queue, make sure to switch to main or other queue. - **Attention: For now this method only downloads the preview data (and only one image for this link preview) + **Attention: For now this method only downloads the preview data (and only one image for this link preview) for the first link found in the text!** - parameter text: The text with potentially contained links, if links are found the preview data is downloaded. @@ -71,7 +71,7 @@ public final class LinkPreviewDetector: NSObject, LinkPreviewDetectorType { guard let data = openGraphData else { return completion([]) } let linkPreview = data.linkPreview(originalURLString, offset: range.location) - linkPreview.requestAssets(withImageDownloader: self.imageDownloader) { _ in + linkPreview.requestAssets(withImageDownloader: imageDownloader) { _ in completion([linkPreview]) } } diff --git a/wire-ios-link-preview/WireLinkPreview/LinkPreviewTypes.swift b/WireLinkPreview/Sources/WireLinkPreview/LinkPreviewTypes.swift similarity index 94% rename from wire-ios-link-preview/WireLinkPreview/LinkPreviewTypes.swift rename to WireLinkPreview/Sources/WireLinkPreview/LinkPreviewTypes.swift index ddaaa79ff3b..14bb5d38324 100644 --- a/wire-ios-link-preview/WireLinkPreview/LinkPreviewTypes.swift +++ b/WireLinkPreview/Sources/WireLinkPreview/LinkPreviewTypes.swift @@ -39,11 +39,11 @@ import Foundation public var isBlacklisted: Bool { if let permanentURL { - return PreviewBlacklist.isBlacklisted(permanentURL) + PreviewBlacklist.isBlacklisted(permanentURL) } else if let resolvedURL { - return PreviewBlacklist.isBlacklisted(resolvedURL) + PreviewBlacklist.isBlacklisted(resolvedURL) } else { - return false + false } } diff --git a/wire-ios-link-preview/WireLinkPreview/MetaStreamContainer.swift b/WireLinkPreview/Sources/WireLinkPreview/MetaStreamContainer.swift similarity index 87% rename from wire-ios-link-preview/WireLinkPreview/MetaStreamContainer.swift rename to WireLinkPreview/Sources/WireLinkPreview/MetaStreamContainer.swift index d4aa0faba35..83723ba23f0 100644 --- a/wire-ios-link-preview/WireLinkPreview/MetaStreamContainer.swift +++ b/WireLinkPreview/Sources/WireLinkPreview/MetaStreamContainer.swift @@ -23,14 +23,14 @@ final class MetaStreamContainer { var bytes = Data() var stringContent: String? { - return parseString(from: bytes) + parseString(from: bytes) } var head: String? { guard let content = stringContent else { return nil } var startBound = content.range(of: OpenGraphXMLNode.headStart.rawValue)?.lowerBound ?? - content.range(of: OpenGraphXMLNode.headStartNoAttributes.rawValue)?.lowerBound ?? - content.startIndex + content.range(of: OpenGraphXMLNode.headStartNoAttributes.rawValue)?.lowerBound ?? + content.startIndex let upperBound = content.range(of: OpenGraphXMLNode.headEnd.rawValue)?.upperBound ?? content.endIndex @@ -38,7 +38,7 @@ final class MetaStreamContainer { startBound = content.startIndex } - let result = content[startBound../ return .soundCloudTrack - } else if pathComponents.count == 4 && pathComponents[2] == "sets" { + } else if pathComponents.count == 4, pathComponents[2] == "sets" { // Match soundcloud.com//sets/ return .soundCloudPlaylist } diff --git a/wire-ios-link-preview/WireLinkPreview/NSDataDetector+Links.swift b/WireLinkPreview/Sources/WireLinkPreview/NSDataDetector+Links.swift similarity index 83% rename from wire-ios-link-preview/WireLinkPreview/NSDataDetector+Links.swift rename to WireLinkPreview/Sources/WireLinkPreview/NSDataDetector+Links.swift index 2fbdab5ea07..d72c5886987 100644 --- a/wire-ios-link-preview/WireLinkPreview/NSDataDetector+Links.swift +++ b/WireLinkPreview/Sources/WireLinkPreview/NSDataDetector+Links.swift @@ -21,11 +21,11 @@ import Foundation /// A URL and its range in the parent text. public typealias URLWithRange = (URL: URL, range: NSRange) -extension NSDataDetector { +public extension NSDataDetector { /// A data detector configured to detect only links. - @objc public static var linkDetector: NSDataDetector? { - return try? NSDataDetector(types: NSTextCheckingResult.CheckingType.link.rawValue) + @objc static var linkDetector: NSDataDetector? { + try? NSDataDetector(types: NSTextCheckingResult.CheckingType.link.rawValue) } /** @@ -35,8 +35,8 @@ extension NSDataDetector { */ @objc(containsLinkInText:) - public func containsLink(in text: String) -> Bool { - return !detectLinks(in: text).isEmpty + func containsLink(in text: String) -> Bool { + !detectLinks(in: text).isEmpty } /** @@ -46,7 +46,7 @@ extension NSDataDetector { */ @objc(detectLinksInText:) - public func detectLinks(in text: String) -> [URL] { + func detectLinks(in text: String) -> [URL] { let textRange = NSRange(text.startIndex ..< text.endIndex, in: text) return matches(in: text, options: [], range: textRange).compactMap(\.url) } @@ -58,7 +58,7 @@ extension NSDataDetector { * - returns: The list of URLs in the text. */ - public func detectLinksAndRanges(in text: String, excluding excludedRanges: [NSRange] = []) -> [URLWithRange] { + func detectLinksAndRanges(in text: String, excluding excludedRanges: [NSRange] = []) -> [URLWithRange] { let wholeTextRange = NSRange(text.startIndex ..< text.endIndex, in: text) let validRangeIndexSet = NSMutableIndexSet(indexesIn: wholeTextRange) excludedRanges.forEach(validRangeIndexSet.remove) diff --git a/wire-ios-link-preview/WireLinkPreview/OpenGraphData.swift b/WireLinkPreview/Sources/WireLinkPreview/OpenGraphData.swift similarity index 86% rename from wire-ios-link-preview/WireLinkPreview/OpenGraphData.swift rename to WireLinkPreview/Sources/WireLinkPreview/OpenGraphData.swift index d16b23b4c5a..1313c976266 100644 --- a/wire-ios-link-preview/WireLinkPreview/OpenGraphData.swift +++ b/WireLinkPreview/Sources/WireLinkPreview/OpenGraphData.swift @@ -38,9 +38,9 @@ public struct OpenGraphData { self.url = url self.resolvedURL = resolvedURL self.imageUrls = imageUrls - self.siteNameString = siteName + siteNameString = siteName self.siteName = siteName.map { OpenGraphSiteName(string: $0) ?? .other } ?? .other - self.content = description + content = description self.userGeneratedImage = userGeneratedImage } } @@ -74,7 +74,7 @@ extension OpenGraphData { init?(propertyMapping mapping: PropertyMapping, resolvedURL: URL, images: [String]) { guard let title = mapping[.title], - let url = mapping[.url] else { return nil } + let url = mapping[.url] else { return nil } self.init( title: title, @@ -95,7 +95,7 @@ extension OpenGraphData { extension OpenGraphData: Equatable {} public func == (lhs: OpenGraphData, rhs: OpenGraphData) -> Bool { - return lhs.title == rhs.title && lhs.type == rhs.type && + lhs.title == rhs.title && lhs.type == rhs.type && lhs.url == rhs.url && lhs.imageUrls == rhs.imageUrls && lhs.siteName == rhs.siteName && lhs.content == rhs.content && lhs.siteNameString == rhs.siteNameString && lhs.userGeneratedImage == rhs.userGeneratedImage && @@ -105,11 +105,11 @@ public func == (lhs: OpenGraphData, rhs: OpenGraphData) -> Bool { extension FoursquareMetaData: Equatable {} public func == (lhs: FoursquareMetaData, rhs: FoursquareMetaData) -> Bool { - return lhs.latitude == rhs.latitude && lhs.longitude == rhs.longitude + lhs.latitude == rhs.latitude && lhs.longitude == rhs.longitude } -extension ArticleMetadata { - public convenience init(openGraphData: OpenGraphData, originalURLString: String, offset: Int) { +public extension ArticleMetadata { + convenience init(openGraphData: OpenGraphData, originalURLString: String, offset: Int) { self.init(originalURLString: originalURLString, permanentURLString: openGraphData.url, resolvedURLString: openGraphData.resolvedURL, offset: offset) title = openGraphData.title summary = openGraphData.content @@ -118,9 +118,9 @@ extension ArticleMetadata { } } -extension FoursquareLocationMetadata { - public convenience init?(openGraphData: OpenGraphData, originalURLString: String, offset: Int) { - guard openGraphData.type == OpenGraphTypeType.foursquare.rawValue && openGraphData.siteName == .foursquare else { return nil } +public extension FoursquareLocationMetadata { + convenience init?(openGraphData: OpenGraphData, originalURLString: String, offset: Int) { + guard openGraphData.type == OpenGraphTypeType.foursquare.rawValue, openGraphData.siteName == .foursquare else { return nil } self.init(originalURLString: originalURLString, permanentURLString: openGraphData.url, resolvedURLString: openGraphData.resolvedURL, offset: offset) title = openGraphData.title @@ -132,9 +132,9 @@ extension FoursquareLocationMetadata { } } -extension InstagramPictureMetadata { - public convenience init?(openGraphData: OpenGraphData, originalURLString: String, offset: Int) { - guard openGraphData.type == OpenGraphTypeType.instagram.rawValue && openGraphData.siteName == .instagram else { return nil } +public extension InstagramPictureMetadata { + convenience init?(openGraphData: OpenGraphData, originalURLString: String, offset: Int) { + guard openGraphData.type == OpenGraphTypeType.instagram.rawValue, openGraphData.siteName == .instagram else { return nil } self.init(originalURLString: originalURLString, permanentURLString: openGraphData.url, resolvedURLString: openGraphData.resolvedURL, offset: offset) title = openGraphData.title subtitle = openGraphData.content @@ -146,7 +146,7 @@ extension InstagramPictureMetadata { extension TwitterStatusMetadata { public convenience init?(openGraphData: OpenGraphData, originalURLString: String, offset: Int) { - guard openGraphData.type == OpenGraphTypeType.article.rawValue && openGraphData.siteName == .twitter else { return nil } + guard openGraphData.type == OpenGraphTypeType.article.rawValue, openGraphData.siteName == .twitter else { return nil } self.init(originalURLString: originalURLString, permanentURLString: openGraphData.url, resolvedURLString: openGraphData.resolvedURL, offset: offset) message = tweetContentFromOpenGraphData(openGraphData) @@ -170,7 +170,7 @@ extension TwitterStatusMetadata { extension OpenGraphData { func linkPreview(_ originalURLString: String, offset: Int) -> LinkMetadata { - return TwitterStatusMetadata(openGraphData: self, originalURLString: originalURLString, offset: offset) ?? + TwitterStatusMetadata(openGraphData: self, originalURLString: originalURLString, offset: offset) ?? ArticleMetadata(openGraphData: self, originalURLString: originalURLString, offset: offset) } diff --git a/wire-ios-link-preview/WireLinkPreview/OpenGraphDataTypes.swift b/WireLinkPreview/Sources/WireLinkPreview/OpenGraphDataTypes.swift similarity index 96% rename from wire-ios-link-preview/WireLinkPreview/OpenGraphDataTypes.swift rename to WireLinkPreview/Sources/WireLinkPreview/OpenGraphDataTypes.swift index b54f24a45ea..43d703a6f91 100644 --- a/wire-ios-link-preview/WireLinkPreview/OpenGraphDataTypes.swift +++ b/WireLinkPreview/Sources/WireLinkPreview/OpenGraphDataTypes.swift @@ -39,6 +39,7 @@ enum OpenGraphPropertyType: String { case userGeneratedImage = "og:image:user_generated" // MARK: Foursquare + case latitudeFSQ = "playfoursquare:location:latitude" case longitudeFSQ = "playfoursquare:location:longitude" } @@ -57,8 +58,8 @@ enum OpenGraphSiteName: String { } enum OpenGraphTypeType: String { - case article = "article" - case website = "website" + case article + case website case foursquare = "playfoursquare:venue" case instagram = "instapp:photo" } diff --git a/wire-ios-link-preview/WireLinkPreview/OpenGraphScanner.swift b/WireLinkPreview/Sources/WireLinkPreview/OpenGraphScanner.swift similarity index 95% rename from wire-ios-link-preview/WireLinkPreview/OpenGraphScanner.swift rename to WireLinkPreview/Sources/WireLinkPreview/OpenGraphScanner.swift index 977c3491c9c..d63974394f6 100644 --- a/wire-ios-link-preview/WireLinkPreview/OpenGraphScanner.swift +++ b/WireLinkPreview/Sources/WireLinkPreview/OpenGraphScanner.swift @@ -73,8 +73,8 @@ final class OpenGraphScanner: NSObject { /// Attempts to extract the OpenGraph metadata from an HTML element. private func parseOpenGraphMetadata(_ element: HTMLElement) { if let rawProperty = element[attribute: OpenGraphAttribute.property]?.stringValue(removingEntities: false), - let property = OpenGraphPropertyType(rawValue: rawProperty), - let content = element[attribute: OpenGraphAttribute.content]?.stringValue(removingEntities: true) { + let property = OpenGraphPropertyType(rawValue: rawProperty), + let content = element[attribute: OpenGraphAttribute.content]?.stringValue(removingEntities: true) { addProperty(property, value: content) } } diff --git a/wire-ios-link-preview/WireLinkPreview/PreviewBlacklist.swift b/WireLinkPreview/Sources/WireLinkPreview/PreviewBlacklist.swift similarity index 94% rename from wire-ios-link-preview/WireLinkPreview/PreviewBlacklist.swift rename to WireLinkPreview/Sources/WireLinkPreview/PreviewBlacklist.swift index f9f8702e6c0..b34655abdcc 100644 --- a/wire-ios-link-preview/WireLinkPreview/PreviewBlacklist.swift +++ b/WireLinkPreview/Sources/WireLinkPreview/PreviewBlacklist.swift @@ -30,7 +30,7 @@ enum PreviewBlacklist { ] static func isBlacklisted(_ url: URL) -> Bool { - return blacklistedHosts.contains { blacklisted in + blacklistedHosts.contains { blacklisted in url.absoluteString.lowercased().contains(blacklisted) } } diff --git a/wire-ios-link-preview/WireLinkPreview/PreviewDownloader.swift b/WireLinkPreview/Sources/WireLinkPreview/PreviewDownloader.swift similarity index 89% rename from wire-ios-link-preview/WireLinkPreview/PreviewDownloader.swift rename to WireLinkPreview/Sources/WireLinkPreview/PreviewDownloader.swift index 9c955b1b360..a39743b0303 100644 --- a/wire-ios-link-preview/WireLinkPreview/PreviewDownloader.swift +++ b/WireLinkPreview/Sources/WireLinkPreview/PreviewDownloader.swift @@ -76,13 +76,13 @@ final class PreviewDownloader: NSObject, URLSessionDataDelegate, PreviewDownload // We do not want to call the completion handler when we cancelled the task, // as we cancel it when we received enough data to generate the link preview and will call the completion handler // once we parsde the data. - if !cancelledTaskIDs.contains(task.taskIdentifier) && error != nil { + if !cancelledTaskIDs.contains(task.taskIdentifier), error != nil { completeAndCleanUp(completion, result: nil, url: url, taskIdentifier: task.taskIdentifier) } // In case the `MetaStreamContainer` fails to produce a string to parse, we need to ensure that we still // call the completion handler. - if let container = containerByTaskID[task.taskIdentifier], !container.reachedEndOfHead && error == nil { + if let container = containerByTaskID[task.taskIdentifier], !container.reachedEndOfHead, error == nil { return completeAndCleanUp(completion, result: nil, url: url, taskIdentifier: task.taskIdentifier) } } @@ -98,19 +98,20 @@ final class PreviewDownloader: NSObject, URLSessionDataDelegate, PreviewDownload containerByTaskID[identifier] = container guard let url = task.originalRequest?.url, - let completion = completionByURL[url] else { return } + let completion = completionByURL[url] else { return } switch task.state { case .running: guard container.reachedEndOfHead else { return } cancel(task: task) + default: break } parseMetaHeader(container, url: url) { [weak self] result in guard let self else { return } - self.completeAndCleanUp(completion, result: result, url: url, taskIdentifier: identifier) + completeAndCleanUp(completion, result: result, url: url, taskIdentifier: identifier) } } @@ -123,9 +124,9 @@ final class PreviewDownloader: NSObject, URLSessionDataDelegate, PreviewDownload func completeAndCleanUp(_ completion: DownloadCompletion, result: OpenGraphData?, url: URL, taskIdentifier: Int) { completion(result) - self.containerByTaskID[taskIdentifier] = nil - self.completionByURL[url] = nil - self.cancelledTaskIDs.remove(taskIdentifier) + containerByTaskID[taskIdentifier] = nil + completionByURL[url] = nil + cancelledTaskIDs.remove(taskIdentifier) } func parseMetaHeader(_ container: MetaStreamContainer, url: URL, completion: @escaping DownloadCompletion) { @@ -147,8 +148,8 @@ final class PreviewDownloader: NSObject, URLSessionDataDelegate, PreviewDownload extension PreviewDownloader { - /// This method needs to be in an extension to silence a compiler warning that it `nearly` matches - /// > Instance method 'urlSession(_:dataTask:didReceiveHTTPResponse:completionHandler:)' nearly matches optional requirement 'urlSession(_:dataTask:willCacheResponse:completionHandler:)' of protocol 'URLSessionDataDelegate' + /// This method needs to be in an extension to silence a compiler warning that it `nearly` matches + /// > Instance method 'urlSession(_:dataTask:didReceiveHTTPResponse:completionHandler:)' nearly matches optional requirement 'urlSession(_:dataTask:willCacheResponse:completionHandler:)' of protocol 'URLSessionDataDelegate' func urlSession(_ session: URLSessionType, dataTask: URLSessionDataTaskType, didReceiveHTTPResponse response: HTTPURLResponse, completionHandler: (URLSession.ResponseDisposition) -> Void) { guard let url = dataTask.originalRequest?.url, let completion = completionByURL[url] else { return } let (headers, contentTypeKey) = (response.allHeaderFields, HeaderKey.contentType.rawValue) @@ -167,7 +168,7 @@ extension HTTPURLResponse { /// Whether the response is a success. var isSuccess: Bool { - return statusCode < 400 + statusCode < 400 } } diff --git a/wire-ios-link-preview/WireLinkPreview/URLSessionProtocols.swift b/WireLinkPreview/Sources/WireLinkPreview/URLSessionProtocols.swift similarity index 87% rename from wire-ios-link-preview/WireLinkPreview/URLSessionProtocols.swift rename to WireLinkPreview/Sources/WireLinkPreview/URLSessionProtocols.swift index 3d41abbf6b4..b5076ddf7dd 100644 --- a/wire-ios-link-preview/WireLinkPreview/URLSessionProtocols.swift +++ b/WireLinkPreview/Sources/WireLinkPreview/URLSessionProtocols.swift @@ -39,10 +39,10 @@ extension URLSessionTask: URLSessionDataTaskType {} extension URLSession: URLSessionType { func dataTask(with request: URLRequest) -> URLSessionDataTaskType { - return (dataTask(with: request) as URLSessionDataTask) as URLSessionDataTaskType + (dataTask(with: request) as URLSessionDataTask) as URLSessionDataTaskType } func dataTaskWithURL(_ url: URL, completionHandler: @escaping DataTaskCompletion) -> URLSessionDataTaskType { - return (dataTask(with: url, completionHandler: completionHandler) as URLSessionDataTask) as URLSessionDataTaskType + (dataTask(with: url, completionHandler: completionHandler) as URLSessionDataTask) as URLSessionDataTaskType } } diff --git a/wire-ios-link-preview/WireLinkPreview.docc/WireLinkPreview.md b/WireLinkPreview/Sources/WireLinkPreview/WireLinkPreview.docc/WireLinkPreview.md similarity index 100% rename from wire-ios-link-preview/WireLinkPreview.docc/WireLinkPreview.md rename to WireLinkPreview/Sources/WireLinkPreview/WireLinkPreview.docc/WireLinkPreview.md diff --git a/wire-ios-link-preview/WireLinkPreviewTests/E2ETests.swift b/WireLinkPreview/Tests/WireLinkPreviewTests/E2ETests.swift similarity index 96% rename from wire-ios-link-preview/WireLinkPreviewTests/E2ETests.swift rename to WireLinkPreview/Tests/WireLinkPreviewTests/E2ETests.swift index 9afb32267c8..17eb4c4ae71 100644 --- a/wire-ios-link-preview/WireLinkPreviewTests/E2ETests.swift +++ b/WireLinkPreview/Tests/WireLinkPreviewTests/E2ETests.swift @@ -131,7 +131,7 @@ final class E2ETests: XCTestCase { assertThatItCanParseSampleData(mockData, expected: expectation) } - /// TODO: check why CI got `XCTAssertNil failed: " nil: https://instagram.com/404:` + // TODO: check why CI got `XCTAssertNil failed: " nil: https://instagram.com/404:` func testThatItDoesNotParse404Links() { let mockSite = OpenGraphMockData(head: "", expected: nil, urlString: "https://instagram.com/404", urlVersion: nil) assertThatItCanParseSampleData(mockSite, expected: nil) @@ -149,19 +149,16 @@ final class E2ETests: XCTestCase { private func assertThatItCanParseSampleData(_ mockData: OpenGraphMockData, expected: OpenGraphDataExpectation?, line: UInt = #line) { - // given let completionExpectation = expectation(description: "It should parse the data") let sut = PreviewDownloader(resultsQueue: .main, parsingQueue: .main) // when - var resolvedURL: URL - - if let version = mockData.urlVersion { - resolvedURL = URL(string: "http://web.archive.org/web/\(version)/\(mockData.urlString)")! + var resolvedURL = if let version = mockData.urlVersion { + URL(string: "http://web.archive.org/web/\(version)/\(mockData.urlString)")! } else { - resolvedURL = URL(string: mockData.urlString)! + URL(string: mockData.urlString)! } var result: OpenGraphData? diff --git a/wire-ios-link-preview/WireLinkPreviewTests/crash.txt b/WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/crash.txt similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/crash.txt rename to WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/crash.txt diff --git a/wire-ios-link-preview/WireLinkPreviewTests/crash_emoji.txt b/WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/crash_emoji.txt similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/crash_emoji.txt rename to WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/crash_emoji.txt diff --git a/wire-ios-link-preview/WireLinkPreviewTests/foursquare_head.txt b/WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/foursquare_head.txt similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/foursquare_head.txt rename to WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/foursquare_head.txt diff --git a/wire-ios-link-preview/WireLinkPreviewTests/guardian_head.txt b/WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/guardian_head.txt similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/guardian_head.txt rename to WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/guardian_head.txt diff --git a/wire-ios-link-preview/WireLinkPreviewTests/instagram_head.txt b/WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/instagram_head.txt similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/instagram_head.txt rename to WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/instagram_head.txt diff --git a/wire-ios-link-preview/WireLinkPreviewTests/itunes_head.txt b/WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/itunes_head.txt similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/itunes_head.txt rename to WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/itunes_head.txt diff --git a/wire-ios-link-preview/WireLinkPreviewTests/itunes_without_title_head.txt b/WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/itunes_without_title_head.txt similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/itunes_without_title_head.txt rename to WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/itunes_without_title_head.txt diff --git a/wire-ios-link-preview/WireLinkPreviewTests/medium_head.txt b/WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/medium_head.txt similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/medium_head.txt rename to WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/medium_head.txt diff --git a/wire-ios-link-preview/WireLinkPreviewTests/nytimes_head.txt b/WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/nytimes_head.txt similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/nytimes_head.txt rename to WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/nytimes_head.txt diff --git a/wire-ios-link-preview/WireLinkPreviewTests/polygon_head.txt b/WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/polygon_head.txt similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/polygon_head.txt rename to WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/polygon_head.txt diff --git a/wire-ios-link-preview/WireLinkPreviewTests/soundcloud_playlist_head.txt b/WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/soundcloud_playlist_head.txt similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/soundcloud_playlist_head.txt rename to WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/soundcloud_playlist_head.txt diff --git a/wire-ios-link-preview/WireLinkPreviewTests/soundcloud_track_head.txt b/WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/soundcloud_track_head.txt similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/soundcloud_track_head.txt rename to WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/soundcloud_track_head.txt diff --git a/wire-ios-link-preview/WireLinkPreviewTests/twitter_head.txt b/WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/twitter_head.txt similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/twitter_head.txt rename to WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/twitter_head.txt diff --git a/wire-ios-link-preview/WireLinkPreviewTests/twitter_images_head.txt b/WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/twitter_images_head.txt similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/twitter_images_head.txt rename to WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/twitter_images_head.txt diff --git a/wire-ios-link-preview/WireLinkPreviewTests/verge_head.txt b/WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/verge_head.txt similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/verge_head.txt rename to WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/verge_head.txt diff --git a/wire-ios-link-preview/WireLinkPreviewTests/vimeo_head.txt b/WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/vimeo_head.txt similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/vimeo_head.txt rename to WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/vimeo_head.txt diff --git a/wire-ios-link-preview/WireLinkPreviewTests/washington_post_head.txt b/WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/washington_post_head.txt similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/washington_post_head.txt rename to WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/washington_post_head.txt diff --git a/wire-ios-link-preview/WireLinkPreviewTests/wire_head.txt b/WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/wire_head.txt similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/wire_head.txt rename to WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/wire_head.txt diff --git a/wire-ios-link-preview/WireLinkPreviewTests/yahoo_sports_head.txt b/WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/yahoo_sports_head.txt similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/yahoo_sports_head.txt rename to WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/yahoo_sports_head.txt diff --git a/wire-ios-link-preview/WireLinkPreviewTests/youtube_head.txt b/WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/youtube_head.txt similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/youtube_head.txt rename to WireLinkPreview/Tests/WireLinkPreviewTests/Fixtures/youtube_head.txt diff --git a/wire-ios-link-preview/WireLinkPreviewTests/DownloaderMocks.swift b/WireLinkPreview/Tests/WireLinkPreviewTests/Helpers/DownloaderMocks.swift similarity index 99% rename from wire-ios-link-preview/WireLinkPreviewTests/DownloaderMocks.swift rename to WireLinkPreview/Tests/WireLinkPreviewTests/Helpers/DownloaderMocks.swift index 88a75057e7c..dd4aac06606 100644 --- a/wire-ios-link-preview/WireLinkPreviewTests/DownloaderMocks.swift +++ b/WireLinkPreview/Tests/WireLinkPreviewTests/Helpers/DownloaderMocks.swift @@ -16,6 +16,8 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // +import Foundation + @testable import WireLinkPreview final class MockPreviewDownloader: PreviewDownloaderType { diff --git a/wire-ios-link-preview/WireLinkPreviewTests/OpenGraphMockDataProvider.swift b/WireLinkPreview/Tests/WireLinkPreviewTests/Helpers/OpenGraphMockDataProvider.swift similarity index 99% rename from wire-ios-link-preview/WireLinkPreviewTests/OpenGraphMockDataProvider.swift rename to WireLinkPreview/Tests/WireLinkPreviewTests/Helpers/OpenGraphMockDataProvider.swift index 2b50c1d8fe6..1f941e524f6 100644 --- a/wire-ios-link-preview/WireLinkPreviewTests/OpenGraphMockDataProvider.swift +++ b/WireLinkPreview/Tests/WireLinkPreviewTests/Helpers/OpenGraphMockDataProvider.swift @@ -29,7 +29,6 @@ struct OpenGraphMockData { final class OpenGraphMockDataProvider: NSObject { static func twitterData() -> OpenGraphMockData { - let expected = OpenGraphData( title: "ericasadun on Twitter", type: "article", @@ -49,7 +48,6 @@ final class OpenGraphMockDataProvider: NSObject { } static func twitterDataWithImages() -> OpenGraphMockData { - let expected = OpenGraphData( title: "Ayaka Nonaka on Twitter", type: "article", @@ -70,7 +68,6 @@ final class OpenGraphMockDataProvider: NSObject { } static func foursquareData() -> OpenGraphMockData { - var expected = OpenGraphData( title: "NETA Mexican Street Food", type: "playfoursquare:venue", diff --git a/wire-ios-link-preview/WireLinkPreviewTests/URLMocks.swift b/WireLinkPreview/Tests/WireLinkPreviewTests/Helpers/URLMocks.swift similarity index 97% rename from wire-ios-link-preview/WireLinkPreviewTests/URLMocks.swift rename to WireLinkPreview/Tests/WireLinkPreviewTests/Helpers/URLMocks.swift index 89a083b75c5..8aa9a17cc0b 100644 --- a/wire-ios-link-preview/WireLinkPreviewTests/URLMocks.swift +++ b/WireLinkPreview/Tests/WireLinkPreviewTests/Helpers/URLMocks.swift @@ -16,6 +16,8 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // +import Foundation + @testable import WireLinkPreview final class MockURLSessionDataTask: URLSessionDataTaskType { @@ -27,7 +29,7 @@ final class MockURLSessionDataTask: URLSessionDataTaskType { var state: URLSessionTask.State = .completed var originalRequest: URLRequest? { - return mockOriginalRequest + mockOriginalRequest } func resume() { diff --git a/wire-ios-link-preview/WireLinkPreviewTests/ImageDownloaderTests.swift b/WireLinkPreview/Tests/WireLinkPreviewTests/ImageDownloaderTests.swift similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/ImageDownloaderTests.swift rename to WireLinkPreview/Tests/WireLinkPreviewTests/ImageDownloaderTests.swift diff --git a/wire-ios-link-preview/WireLinkPreviewTests/LinkAttachmentDetectorTests.swift b/WireLinkPreview/Tests/WireLinkPreviewTests/LinkAttachmentDetectorTests.swift similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/LinkAttachmentDetectorTests.swift rename to WireLinkPreview/Tests/WireLinkPreviewTests/LinkAttachmentDetectorTests.swift diff --git a/wire-ios-link-preview/WireLinkPreviewTests/LinkAttachmentTypesTests.swift b/WireLinkPreview/Tests/WireLinkPreviewTests/LinkAttachmentTypesTests.swift similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/LinkAttachmentTypesTests.swift rename to WireLinkPreview/Tests/WireLinkPreviewTests/LinkAttachmentTypesTests.swift index 5ac6abb12c8..73f3056054c 100644 --- a/wire-ios-link-preview/WireLinkPreviewTests/LinkAttachmentTypesTests.swift +++ b/WireLinkPreview/Tests/WireLinkPreviewTests/LinkAttachmentTypesTests.swift @@ -16,9 +16,10 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -@testable import WireLinkPreview import XCTest +@testable import WireLinkPreview + class LinkAttachmentTypesTests: XCTestCase { func testThatItEncodesAndDecodesWithNSCoder() { @@ -52,5 +53,4 @@ class LinkAttachmentTypesTests: XCTestCase { XCTAssertEqual(decodedAttachment?.thumbnails, [URL(string: "https://i.ytimg.com/vi/sRIQsy2PGyM/maxresdefault.jpg")!]) XCTAssertEqual(decodedAttachment?.originalRange, NSRange(location: 10, length: 43)) } - } diff --git a/wire-ios-link-preview/WireLinkPreviewTests/LinkPreviewDetectorTests.swift b/WireLinkPreview/Tests/WireLinkPreviewTests/LinkPreviewDetectorTests.swift similarity index 98% rename from wire-ios-link-preview/WireLinkPreviewTests/LinkPreviewDetectorTests.swift rename to WireLinkPreview/Tests/WireLinkPreviewTests/LinkPreviewDetectorTests.swift index 67cecb84bda..940c5496d21 100644 --- a/wire-ios-link-preview/WireLinkPreviewTests/LinkPreviewDetectorTests.swift +++ b/WireLinkPreview/Tests/WireLinkPreviewTests/LinkPreviewDetectorTests.swift @@ -152,7 +152,7 @@ class LinkPreviewDetectorTests: XCTestCase { guard let twitterStatus = result.first as? TwitterStatusMetadata else { return XCTFail("Wrong preview type") } XCTAssertEqual(twitterStatus.imageURLs.count, 4) - XCTAssertEqual(twitterStatus.imageURLs.map { $0.absoluteString }, openGraphData.imageUrls) + XCTAssertEqual(twitterStatus.imageURLs.map(\.absoluteString), openGraphData.imageUrls) XCTAssertEqual(twitterStatus.characterOffsetInText, 36) XCTAssertEqual(twitterStatus.permanentURL?.absoluteString, openGraphData.url) XCTAssertEqual(twitterStatus.originalURLString, "www.example.com") diff --git a/wire-ios-link-preview/WireLinkPreviewTests/MetaStreamContainerTests.swift b/WireLinkPreview/Tests/WireLinkPreviewTests/MetaStreamContainerTests.swift similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/MetaStreamContainerTests.swift rename to WireLinkPreview/Tests/WireLinkPreviewTests/MetaStreamContainerTests.swift diff --git a/wire-ios-link-preview/WireLinkPreviewTests/NSDataDetectorAttachmentTests.swift b/WireLinkPreview/Tests/WireLinkPreviewTests/NSDataDetectorAttachmentTests.swift similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/NSDataDetectorAttachmentTests.swift rename to WireLinkPreview/Tests/WireLinkPreviewTests/NSDataDetectorAttachmentTests.swift diff --git a/wire-ios-link-preview/WireLinkPreviewTests/NSDataDetectorLinksTests.swift b/WireLinkPreview/Tests/WireLinkPreviewTests/NSDataDetectorLinksTests.swift similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/NSDataDetectorLinksTests.swift rename to WireLinkPreview/Tests/WireLinkPreviewTests/NSDataDetectorLinksTests.swift diff --git a/wire-ios-link-preview/WireLinkPreviewTests/OpenGraphDataTests.swift b/WireLinkPreview/Tests/WireLinkPreviewTests/OpenGraphDataTests.swift similarity index 98% rename from wire-ios-link-preview/WireLinkPreviewTests/OpenGraphDataTests.swift rename to WireLinkPreview/Tests/WireLinkPreviewTests/OpenGraphDataTests.swift index 73e9c3bb218..918fc1b76ae 100644 --- a/wire-ios-link-preview/WireLinkPreviewTests/OpenGraphDataTests.swift +++ b/WireLinkPreview/Tests/WireLinkPreviewTests/OpenGraphDataTests.swift @@ -16,10 +16,11 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -@testable import WireLinkPreview import XCTest -class OpenGraphDataTests: XCTestCase { +@testable import WireLinkPreview + +final class OpenGraphDataTests: XCTestCase { func testThatItCreatesAValidOpenGraphDataFromPropertyMapping() { // given @@ -72,7 +73,7 @@ class OpenGraphDataTests: XCTestCase { } func testThatItSetsTheCorrectSiteName() { - [OpenGraphSiteName.twitter, .youtube, .vimeo, .instagram, .foursquare].forEach { siteName in + for siteName in [OpenGraphSiteName.twitter, .youtube, .vimeo, .instagram, .foursquare] { asserThatItSetsTheCorrectSiteName(siteName.rawValue, expected: siteName) asserThatItSetsTheCorrectSiteName(siteName.rawValue.capitalized, expected: siteName) } diff --git a/wire-ios-link-preview/WireLinkPreviewTests/OpenGraphScannerTests.swift b/WireLinkPreview/Tests/WireLinkPreviewTests/OpenGraphScannerTests.swift similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/OpenGraphScannerTests.swift rename to WireLinkPreview/Tests/WireLinkPreviewTests/OpenGraphScannerTests.swift diff --git a/wire-ios-link-preview/WireLinkPreviewTests/PreviewBlackListTests.swift b/WireLinkPreview/Tests/WireLinkPreviewTests/PreviewBlackListTests.swift similarity index 100% rename from wire-ios-link-preview/WireLinkPreviewTests/PreviewBlackListTests.swift rename to WireLinkPreview/Tests/WireLinkPreviewTests/PreviewBlackListTests.swift diff --git a/wire-ios-link-preview/WireLinkPreviewTests/PreviewDownloaderTests.swift b/WireLinkPreview/Tests/WireLinkPreviewTests/PreviewDownloaderTests.swift similarity index 99% rename from wire-ios-link-preview/WireLinkPreviewTests/PreviewDownloaderTests.swift rename to WireLinkPreview/Tests/WireLinkPreviewTests/PreviewDownloaderTests.swift index c461d39e81e..32cea1e0dd8 100644 --- a/wire-ios-link-preview/WireLinkPreviewTests/PreviewDownloaderTests.swift +++ b/WireLinkPreview/Tests/WireLinkPreviewTests/PreviewDownloaderTests.swift @@ -308,7 +308,6 @@ class PreviewDownloaderTests: XCTestCase { XCTAssertNotNil(sut.completionByURL[url], line: line) XCTAssertNotNil(sut.containerByTaskID[mockDataTask.taskIdentifier], line: line) } - } } diff --git a/wire-ios-link-preview/WireLinkPreviewTests/StringXMLEntityParserTests.swift b/WireLinkPreview/Tests/WireLinkPreviewTests/StringXMLEntityParserTests.swift similarity index 99% rename from wire-ios-link-preview/WireLinkPreviewTests/StringXMLEntityParserTests.swift rename to WireLinkPreview/Tests/WireLinkPreviewTests/StringXMLEntityParserTests.swift index 17f06e2152b..e3bc6564121 100644 --- a/wire-ios-link-preview/WireLinkPreviewTests/StringXMLEntityParserTests.swift +++ b/WireLinkPreview/Tests/WireLinkPreviewTests/StringXMLEntityParserTests.swift @@ -22,7 +22,7 @@ import XCTest final class StringXMLEntityParserTests: XCTestCase { func testThatItIgnoresEmptyString() { - // given + // given let string = "" // when & then XCTAssertEqual(string, string.removingHTMLEntities()) diff --git a/WireSystem/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist b/WireSystem/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist deleted file mode 120000 index 0aa12047039..00000000000 --- a/WireSystem/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist +++ /dev/null @@ -1 +0,0 @@ -../../../../wire-ios-mono.xcworkspace/xcshareddata/IDETemplateMacros.plist \ No newline at end of file diff --git a/WireSystem/Package.resolved b/WireSystem/Package.resolved deleted file mode 100644 index e1bfe2756a8..00000000000 --- a/WireSystem/Package.resolved +++ /dev/null @@ -1,24 +0,0 @@ -{ - "originHash" : "2c7b8a17d18e410d3d70d42238c56420daa99906db9fefa81f4951a7b5855ec1", - "pins" : [ - { - "identity" : "swift-docc-plugin", - "kind" : "remoteSourceControl", - "location" : "https://github.com/apple/swift-docc-plugin", - "state" : { - "revision" : "26ac5758409154cc448d7ab82389c520fa8a8247", - "version" : "1.3.0" - } - }, - { - "identity" : "swift-docc-symbolkit", - "kind" : "remoteSourceControl", - "location" : "https://github.com/apple/swift-docc-symbolkit", - "state" : { - "revision" : "b45d1f2ed151d057b54504d653e0da5552844e34", - "version" : "1.0.0" - } - } - ], - "version" : 3 -} diff --git a/WireSystem/Package.swift b/WireSystem/Package.swift deleted file mode 100644 index bc48d2a5545..00000000000 --- a/WireSystem/Package.swift +++ /dev/null @@ -1,37 +0,0 @@ -// swift-tools-version: 5.10 -// The swift-tools-version declares the minimum version of Swift required to build this package. - -import PackageDescription - -let package = Package( - name: "WireSystemPackage", - platforms: [.iOS(.v15), .macOS(.v12)], - products: [ - .library(name: "WireSystemPackage", type: .dynamic, targets: ["WireSystemPackage"]), - .library(name: "WireSystemPackageSupport", type: .dynamic, targets: ["WireSystemPackageSupport"]) - ], - dependencies: [ - .package(url: "https://github.com/apple/swift-docc-plugin", from: "1.1.0"), - .package(path: "../SourceryPlugin") - ], - targets: [ - .target(name: "WireSystemPackage", path: "./Sources/WireSystem", swiftSettings: swiftSettings), - .testTarget(name: "WireSystemPackageTests", dependencies: ["WireSystemPackage"], path: "./Tests/WireSystemTests"), - - .target( - name: "WireSystemPackageSupport", - dependencies: ["WireSystemPackage"], - path: "./Sources/WireSystemSupport", - swiftSettings: swiftSettings, - plugins: [ - .plugin(name: "SourceryPlugin", package: "SourceryPlugin") - ] - ) - ] -) - -let swiftSettings: [SwiftSetting] = [ - .enableUpcomingFeature("ExistentialAny"), - .enableUpcomingFeature("GlobalConcurrency"), - .enableExperimentalFeature("StrictConcurrency") -] diff --git a/WireSystem/Sources/WireSystem/Documentation.docc/Documentation.md b/WireSystem/Sources/WireSystem/Documentation.docc/Documentation.md deleted file mode 100644 index e54ac289986..00000000000 --- a/WireSystem/Sources/WireSystem/Documentation.docc/Documentation.md +++ /dev/null @@ -1,9 +0,0 @@ -# ``WireSystem`` - -Provide core shared code. - -## Overview - -WireSystem provides some core shared code. - -## Topics diff --git a/WireSystem/Sources/WireSystem/Placeholder.swift b/WireSystem/Sources/WireSystem/Placeholder.swift deleted file mode 100644 index 5e303c2201a..00000000000 --- a/WireSystem/Sources/WireSystem/Placeholder.swift +++ /dev/null @@ -1,17 +0,0 @@ -// -// Wire -// Copyright (C) 2024 Wire Swiss GmbH -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see http://www.gnu.org/licenses/. -// diff --git a/WireSystem/Tests/WireSystemTests/PlaceholderTests.swift b/WireSystem/Tests/WireSystemTests/PlaceholderTests.swift deleted file mode 100644 index 45008dae5f9..00000000000 --- a/WireSystem/Tests/WireSystemTests/PlaceholderTests.swift +++ /dev/null @@ -1,26 +0,0 @@ -// -// Wire -// Copyright (C) 2024 Wire Swiss GmbH -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see http://www.gnu.org/licenses/. -// - -import XCTest - -@testable import WireSystemPackage - -final class PlaceholderTests: XCTestCase { - - func testNothing() {} -} diff --git a/WireTesting/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist b/WireTesting/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist deleted file mode 120000 index 0aa12047039..00000000000 --- a/WireTesting/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist +++ /dev/null @@ -1 +0,0 @@ -../../../../wire-ios-mono.xcworkspace/xcshareddata/IDETemplateMacros.plist \ No newline at end of file diff --git a/WireTesting/Package.swift b/WireTesting/Package.swift deleted file mode 100644 index 9e5bb9f4534..00000000000 --- a/WireTesting/Package.swift +++ /dev/null @@ -1,35 +0,0 @@ -// swift-tools-version: 5.10 -// The swift-tools-version declares the minimum version of Swift required to build this package. - -import PackageDescription - -let package = Package( - name: "WireTestingPackage", - platforms: [.iOS(.v15), .macOS(.v12)], - products: [ - .library(name: "WireTestingPackage", type: .dynamic, targets: ["WireTestingPkg"]) - ], - dependencies: [ - .package(url: "https://github.com/apple/swift-docc-plugin", from: "1.1.0"), - .package(url: "https://github.com/pointfreeco/swift-snapshot-testing", from: "1.17.4"), - .package(name: "WireSystemPackage", path: "../WireSystem") - ], - targets: [ - .target( - name: "WireTestingPkg", - dependencies: [ - .product(name: "SnapshotTesting", package: "swift-snapshot-testing"), - .product(name: "WireSystemPackageSupport", package: "WireSystemPackage") - ], - path: "./Sources/WireTesting", - swiftSettings: swiftSettings - ), - .testTarget(name: "WireTestingPkgTests", dependencies: ["WireTestingPkg"], path: "./Tests/WireTestingTests") - ] -) - -let swiftSettings: [SwiftSetting] = [ - .enableUpcomingFeature("ExistentialAny"), - .enableUpcomingFeature("GlobalConcurrency"), - .enableExperimentalFeature("StrictConcurrency") -] diff --git a/WireTesting/Sources/WireTesting/SnapshotHelper.swift b/WireTesting/Sources/WireTesting/SnapshotHelper.swift deleted file mode 100644 index be1a92e4d60..00000000000 --- a/WireTesting/Sources/WireTesting/SnapshotHelper.swift +++ /dev/null @@ -1,295 +0,0 @@ -// -// Wire -// Copyright (C) 2024 Wire Swiss GmbH -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see http://www.gnu.org/licenses/. -// - -import SnapshotTesting -import SwiftUI -import XCTest - -/// A helper object for verifying image snapshots. -/// -/// Create variations of the snapshot behavior using the "with" methods. - -public struct SnapshotHelper { - - private var perceptualPrecision: Float = 0.98 - private var traits = UITraitCollection() - private var layout: SwiftUISnapshotLayout = .sizeThatFits - /// If empty, the `SNAPSHOT_REFERENCE_DIR` environment variable is read. - private var snapshotReferenceDirectory = "" - - public init() {} - - // MARK: - Create variations - - /// Creates a copy of the current helper with new perceptual precision. - /// - /// Perceptual precision is the threshold at which two pixels are considered to be the same. - /// - /// - Parameter perceptualPrecision: The new perceptual precision. A value of 1 indicates exact precision, a value of 0 indicates no precision. - /// - Returns: A copy of the current helper with the new perceptual precision. - - public func withPerceptualPrecision(_ perceptualPrecision: Float) -> Self { - var helper = self - helper.perceptualPrecision = perceptualPrecision - return helper - } - - /// Creates a copy of the current helper with a new layout. - /// - /// - Parameter layout: The desired snapshot layout. - /// - Returns: A copy of the current helper with a new layout. - - public func withLayout(_ layout: SwiftUISnapshotLayout) -> Self { - var helper = self - helper.layout = layout - return helper - } - - /// Creates a copy of the current helper with a user interface style. - /// - /// - Parameter style: The desired user interface style. - /// - Returns: A copy of the current helper with a new user interface style. - - public func withUserInterfaceStyle(_ style: UIUserInterfaceStyle) -> Self { - var helper = self - helper.traits = UITraitCollection(traitsFrom: [ - helper.traits, - UITraitCollection(userInterfaceStyle: style) - ]) - return helper - } - - /// Creates a copy of the current helper with a preferred content size category. - /// - /// - Parameter category: The desired preferred content size category. - /// - Returns: A copy of the current helper with a new preferred content size category. - - public func withPreferredContentSizeCategory(_ category: UIContentSizeCategory) -> Self { - var helper = self - helper.traits = UITraitCollection(traitsFrom: [ - helper.traits, - UITraitCollection(preferredContentSizeCategory: category) - ]) - return helper - } - - /// Creates a copy of the current helper with the overriden snapshot directory. - /// - /// - Parameter snapshotReferenceDirectory: The path to the directory or an empty string to use the environment variable `SNAPSHOT_REFERENCE_DIR`. - /// - Returns: A copy of the current helper with a new snapshot directory. - - public func withSnapshotDirectory(_ snapshotDirectory: String) -> Self { - var helper = self - helper.snapshotReferenceDirectory = snapshotDirectory - return helper - } - - /// Creates a copy of the current helper with the snapshot directory set to a path relative to the specified test case file. - /// - /// Example: from a provided value of `./WireUI/Tests/WireReusableUIComponentsTests/AccountImageView/AccountImageViewSnapshotTests.swift` - /// the last two path components are deleted and `Resources/ReferenceImages` is appended, resulting in the - /// value `/Users/christoph/Developer/wireapp/wire-ios0/WireUI/Tests/WireReusableUIComponentsTests/Resources/ReferenceImages`. - /// - /// - Parameter testCaseFile: Specify `#file` in your test case file. - /// - Returns: A copy of the current helper with a new snapshot directory. - - public func withSnapshotDirectory(relativeTo testCaseFile: String) -> Self { - var pathComponents = URL(fileURLWithPath: testCaseFile) - .deletingLastPathComponent() - .deletingLastPathComponent() - .pathComponents - pathComponents.append(contentsOf: ["Resources", "ReferenceImages"]) - let snapshotDirectory = NSString.path(withComponents: pathComponents) - return withSnapshotDirectory(snapshotDirectory) - } - - // MARK: - Verify views - - /// Verify a SwiftUI view. - /// - /// - Parameters: - /// - testName: The name of the reference image. - /// - file: The invoking file name. - /// - line: The invoking line numer. - /// - createView: A closure that provides the view to test. - - public func verify( - testName: String = #function, - file: StaticString = #file, - line: UInt = #line, - matching createView: () -> View - ) { - verify( - matching: createView(), - testName: testName, - file: file, - line: line - ) - } - - /// Verify a SwiftUI view. - /// - /// - Parameters: - /// - value: The view to test. - /// - testName: The name of the reference image. - /// - file: The invoking file name. - /// - line: The invoking line numer. - - public func verify( - matching value: View, - testName: String = #function, - file: StaticString = #file, - line: UInt = #line - ) { - let failure = verifySnapshot( - matching: value, - as: .image( - perceptualPrecision: perceptualPrecision, - layout: layout, - traits: traits - ), - snapshotDirectory: snapshotDirectory(file: file), - file: file, - testName: testName, - line: line - ) - - XCTAssertNil(failure, file: file, line: line) - } - - /// Verifies a `UIViewController`. - /// - /// - Parameters: - /// - value: The `UIViewController` to test. - /// - size: An optional `CGSize` to specify a custom size for the snapshot. Defaults to `nil`. - /// - name: An optional string to name the snapshot. Defaults to `nil`. - /// - recording: A `Bool` indicating whether to record a new reference snapshot. Defaults to `false`. - /// - file: The invoking file name. - /// - testName: The name of the reference image. - /// - line: The invoking line number. - - public func verify( - matching value: UIViewController, - size: CGSize? = nil, - named name: String? = nil, - record recording: Bool = false, - file: StaticString = #file, - testName: String = #function, - line: UInt = #line - ) { - let config = size.map { ViewImageConfig(safeArea: UIEdgeInsets.zero, size: $0, traits: traits) } - - let failure = verifySnapshot( - matching: value, - as: config.map { .image(on: $0, perceptualPrecision: perceptualPrecision, traits: traits) } ?? .image(perceptualPrecision: perceptualPrecision, traits: traits), - named: name, - record: recording, - snapshotDirectory: snapshotDirectory(file: file), - file: file, - testName: testName, - line: line - ) - - XCTAssertNil(failure, file: file, line: line) - } - - /// Verifiy a`UIView`. - /// - /// - Parameters: - /// - value: The `UIView` to test. - /// - name: An optional string to name the snapshot. Defaults to `nil`. - /// - file: The invoking file name. - /// - testName: The name of the reference image. - /// - line: The invoking line number. - - public func verify( - matching value: UIView, - named name: String? = nil, - file: StaticString = #file, - testName: String = #function, - line: UInt = #line - ) { - let failure = verifySnapshot( - matching: value, - as: .image(perceptualPrecision: perceptualPrecision, traits: traits), - named: name, - snapshotDirectory: snapshotDirectory(file: file), - file: file, - testName: testName, - line: line - ) - - XCTAssertNil(failure, file: file, line: line) - } - - /// Verifies that a given `UIView` renders correctly across all supported Dynamic Type content size categories. - /// - /// - Parameters: - /// - value: The `UIView` instance that you want to verify. - /// - name: The name of the reference image. - /// - file: The invoking file name. - /// - testName: The name of the reference image. - /// - line: The invoking line number. - - public func verifyForDynamicType( - matching value: UIView, - named name: String? = nil, - file: StaticString = #file, - testName: String = #function, - line: UInt = #line - ) { - [ - "extra-small": UIContentSizeCategory.extraSmall, - "small": .small, - "medium": .medium, - "large": .large, - "extra-large": .extraLarge, - "extra-extra-large": .extraExtraLarge, - "extra-extra-extra-large": .extraExtraExtraLarge, - "accessibility-medium": .accessibilityMedium, - "accessibility-large": .accessibilityLarge, - "accessibility-extra-large": .accessibilityExtraLarge, - "accessibility-extra-extra-large": .accessibilityExtraExtraLarge, - "accessibility-extra-extra-extra-large": .accessibilityExtraExtraExtraLarge - ].forEach { name, contentSize in - let failure = verifySnapshot( - matching: value, - as: .image( - traits: .init(preferredContentSizeCategory: contentSize) - ), - named: name, - snapshotDirectory: snapshotDirectory(file: file), - file: file, - testName: testName, - line: line - ) - - XCTAssertNil(failure, file: file, line: line) - } - } - - private func snapshotDirectory(file: StaticString = #file) -> String { - var snapshotReferenceDirectory = snapshotReferenceDirectory - if snapshotReferenceDirectory.isEmpty { - snapshotReferenceDirectory = ProcessInfo.processInfo.environment["SNAPSHOT_REFERENCE_DIR"]! - } - - let filePath = URL(fileURLWithPath: "\(file)").deletingPathExtension().lastPathComponent - return NSString.path(withComponents: [snapshotReferenceDirectory, filePath]) - } -} diff --git a/WireUI/.swiftpm/WireUIBase.xctestplan b/WireUI/.swiftpm/WireUIFoundation.xctestplan similarity index 85% rename from WireUI/.swiftpm/WireUIBase.xctestplan rename to WireUI/.swiftpm/WireUIFoundation.xctestplan index 18042e882d3..ecd3e5d221c 100644 --- a/WireUI/.swiftpm/WireUIBase.xctestplan +++ b/WireUI/.swiftpm/WireUIFoundation.xctestplan @@ -22,8 +22,8 @@ { "target" : { "containerPath" : "container:", - "identifier" : "WireUIBaseTests", - "name" : "WireUIBaseTests" + "identifier" : "WireUIFoundationTests", + "name" : "WireUIFoundationTests" } } ], diff --git a/WireUI/.swiftpm/xcode/xcshareddata/xcschemes/WireUIBase.xcscheme b/WireUI/.swiftpm/xcode/xcshareddata/xcschemes/WireUIFoundation.xcscheme similarity index 85% rename from WireUI/.swiftpm/xcode/xcshareddata/xcschemes/WireUIBase.xcscheme rename to WireUI/.swiftpm/xcode/xcshareddata/xcschemes/WireUIFoundation.xcscheme index 70fd1f9a3b2..54465b35e16 100644 --- a/WireUI/.swiftpm/xcode/xcshareddata/xcschemes/WireUIBase.xcscheme +++ b/WireUI/.swiftpm/xcode/xcshareddata/xcschemes/WireUIFoundation.xcscheme @@ -15,9 +15,9 @@ buildForAnalyzing = "YES"> @@ -30,7 +30,7 @@ shouldUseLaunchSchemeArgsEnv = "YES"> @@ -55,9 +55,9 @@ diff --git a/WireUI/.swiftpm/xcode/xcshareddata/xcschemes/WireUITesting.xcscheme b/WireUI/.swiftpm/xcode/xcshareddata/xcschemes/WireUITesting.xcscheme deleted file mode 100644 index c4ed48842ec..00000000000 --- a/WireUI/.swiftpm/xcode/xcshareddata/xcschemes/WireUITesting.xcscheme +++ /dev/null @@ -1,67 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/WireUI/Package.swift b/WireUI/Package.swift index 4c70b3525f0..cdcb4795d71 100644 --- a/WireUI/Package.swift +++ b/WireUI/Package.swift @@ -10,14 +10,12 @@ let package = Package( products: [ .library(name: "WireDesign", targets: ["WireDesign"]), .library(name: "WireReusableUIComponents", targets: ["WireReusableUIComponents"]), - .library(name: "WireUIBase", targets: ["WireUIBase"]), - .library(name: "WireUITesting", targets: ["WireUITesting"]) + .library(name: "WireUIFoundation", targets: ["WireUIFoundation"]) ], dependencies: [ .package(url: "https://github.com/apple/swift-docc-plugin", from: "1.1.0"), .package(url: "https://github.com/pointfreeco/swift-snapshot-testing", from: "1.17.4"), - .package(name: "WireSystemPackage", path: "../WireSystem"), - .package(name: "WireUtilitiesPackage", path: "../WireUtilities") + .package(name: "WireFoundation", path: "../WireFoundation") ], targets: [ .target(name: "WireDesign"), @@ -26,30 +24,30 @@ let package = Package( dependencies: ["WireDesign", .product(name: "SnapshotTesting", package: "swift-snapshot-testing")] ), - .target(name: "WireReusableUIComponents", dependencies: ["WireDesign", "WireSystemPackage", "WireUtilitiesPackage"]), + .target( + name: "WireReusableUIComponents", + dependencies: [ + "WireDesign", + .product(name: "WireFoundation", package: "WireFoundation") + ] + ), .testTarget( name: "WireReusableUIComponentsTests", dependencies: [ .product(name: "SnapshotTesting", package: "swift-snapshot-testing"), "WireReusableUIComponents", - "WireUITesting" + .product(name: "WireTestingPackage", package: "WireFoundation") ] ), - .target(name: "WireUIBase", dependencies: ["WireDesign"]), + .target(name: "WireUIFoundation", dependencies: ["WireDesign"]), .testTarget( - name: "WireUIBaseTests", + name: "WireUIFoundationTests", dependencies: [ .product(name: "SnapshotTesting", package: "swift-snapshot-testing"), - "WireUIBase", - "WireUITesting" + "WireUIFoundation", + .product(name: "WireTestingPackage", package: "WireFoundation") ] - ), - - // TODO: [WPB-8907]: Once WireTesting is a Swift package, move everything from here to there. - .target( - name: "WireUITesting", - dependencies: [.product(name: "SnapshotTesting", package: "swift-snapshot-testing")] ) ] ) diff --git a/WireUI/Sources/WireReusableUIComponents/AccentColor/AccentColor+Color.swift b/WireUI/Sources/WireReusableUIComponents/AccentColor/AccentColor+Color.swift index 433785d3e34..70b3fa1c39d 100644 --- a/WireUI/Sources/WireReusableUIComponents/AccentColor/AccentColor+Color.swift +++ b/WireUI/Sources/WireReusableUIComponents/AccentColor/AccentColor+Color.swift @@ -17,7 +17,7 @@ // import SwiftUI -import WireUtilitiesPkg +import WireFoundation public extension AccentColor { diff --git a/WireUI/Sources/WireReusableUIComponents/AccentColor/AccentColor+UIColor.swift b/WireUI/Sources/WireReusableUIComponents/AccentColor/AccentColor+UIColor.swift index c6683f6e71d..5721ef32826 100644 --- a/WireUI/Sources/WireReusableUIComponents/AccentColor/AccentColor+UIColor.swift +++ b/WireUI/Sources/WireReusableUIComponents/AccentColor/AccentColor+UIColor.swift @@ -18,7 +18,7 @@ import SwiftUI import WireDesign -import WireUtilitiesPkg +import WireFoundation public extension AccentColor { diff --git a/WireUI/Sources/WireReusableUIComponents/BlockingActivityIndicator/BlockingActivityIndicator.swift b/WireUI/Sources/WireReusableUIComponents/BlockingActivityIndicator/BlockingActivityIndicator.swift index 1a10ccd9735..4a403890bf9 100644 --- a/WireUI/Sources/WireReusableUIComponents/BlockingActivityIndicator/BlockingActivityIndicator.swift +++ b/WireUI/Sources/WireReusableUIComponents/BlockingActivityIndicator/BlockingActivityIndicator.swift @@ -17,7 +17,7 @@ // import SwiftUI -import WireSystemPackage +import WireFoundation /// Adds an activity indicator subview to the provided `UIView` instance and disables user interaction. public final class BlockingActivityIndicator { diff --git a/WireUI/Sources/WireUIBase/MainTabBarController/MainTabBarController.swift b/WireUI/Sources/WireUIFoundation/Main/MainTabBarController.swift similarity index 100% rename from WireUI/Sources/WireUIBase/MainTabBarController/MainTabBarController.swift rename to WireUI/Sources/WireUIFoundation/Main/MainTabBarController.swift diff --git a/WireUI/Sources/WireUIBase/Resources/Localizable.xcstrings b/WireUI/Sources/WireUIFoundation/Resources/Localizable.xcstrings similarity index 100% rename from WireUI/Sources/WireUIBase/Resources/Localizable.xcstrings rename to WireUI/Sources/WireUIFoundation/Resources/Localizable.xcstrings diff --git a/WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/Contents.json b/WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/Contents.json similarity index 100% rename from WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/Contents.json rename to WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/Contents.json diff --git a/WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Contacts Filled.imageset/Contacts Filled.svg b/WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Contacts Filled.imageset/Contacts Filled.svg similarity index 100% rename from WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Contacts Filled.imageset/Contacts Filled.svg rename to WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Contacts Filled.imageset/Contacts Filled.svg diff --git a/WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Contacts Filled.imageset/Contents.json b/WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Contacts Filled.imageset/Contents.json similarity index 100% rename from WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Contacts Filled.imageset/Contents.json rename to WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Contacts Filled.imageset/Contents.json diff --git a/WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Contacts Outline.imageset/Contacts Outline.svg b/WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Contacts Outline.imageset/Contacts Outline.svg similarity index 100% rename from WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Contacts Outline.imageset/Contacts Outline.svg rename to WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Contacts Outline.imageset/Contacts Outline.svg diff --git a/WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Contacts Outline.imageset/Contents.json b/WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Contacts Outline.imageset/Contents.json similarity index 100% rename from WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Contacts Outline.imageset/Contents.json rename to WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Contacts Outline.imageset/Contents.json diff --git a/WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Contents.json b/WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Contents.json similarity index 100% rename from WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Contents.json rename to WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Contents.json diff --git a/WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Folders Filled.imageset/Contents.json b/WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Folders Filled.imageset/Contents.json similarity index 100% rename from WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Folders Filled.imageset/Contents.json rename to WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Folders Filled.imageset/Contents.json diff --git a/WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Folders Filled.imageset/Folders Filled.svg b/WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Folders Filled.imageset/Folders Filled.svg similarity index 100% rename from WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Folders Filled.imageset/Folders Filled.svg rename to WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Folders Filled.imageset/Folders Filled.svg diff --git a/WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Folders Outline.imageset/Contents.json b/WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Folders Outline.imageset/Contents.json similarity index 100% rename from WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Folders Outline.imageset/Contents.json rename to WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Folders Outline.imageset/Contents.json diff --git a/WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Folders Outline.imageset/Folders Outline.svg b/WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Folders Outline.imageset/Folders Outline.svg similarity index 100% rename from WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Folders Outline.imageset/Folders Outline.svg rename to WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Folders Outline.imageset/Folders Outline.svg diff --git a/WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Settings Filled.imageset/Contents.json b/WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Settings Filled.imageset/Contents.json similarity index 100% rename from WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Settings Filled.imageset/Contents.json rename to WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Settings Filled.imageset/Contents.json diff --git a/WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Settings Filled.imageset/Settings Filled.svg b/WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Settings Filled.imageset/Settings Filled.svg similarity index 100% rename from WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Settings Filled.imageset/Settings Filled.svg rename to WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Settings Filled.imageset/Settings Filled.svg diff --git a/WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Settings.imageset/Contents.json b/WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Settings.imageset/Contents.json similarity index 100% rename from WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Settings.imageset/Contents.json rename to WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Settings.imageset/Contents.json diff --git a/WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Settings.imageset/Settings.svg b/WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Settings.imageset/Settings.svg similarity index 100% rename from WireUI/Sources/WireUIBase/Resources/WireUIBase.xcassets/TabBar/Settings.imageset/Settings.svg rename to WireUI/Sources/WireUIFoundation/Resources/WireUIFoundation.xcassets/TabBar/Settings.imageset/Settings.svg diff --git a/WireUI/Sources/WireUIFoundation/WireUIFoundation.docc/Documentation.md b/WireUI/Sources/WireUIFoundation/WireUIFoundation.docc/Documentation.md new file mode 100644 index 00000000000..e9e614f6661 --- /dev/null +++ b/WireUI/Sources/WireUIFoundation/WireUIFoundation.docc/Documentation.md @@ -0,0 +1,3 @@ +# ``WireUIFoundation`` + +Structural UI types like main container view controllers, the main coordinator and more. diff --git a/WireUI/Sources/WireUITesting/Documentation.docc/Documentation.md b/WireUI/Sources/WireUITesting/Documentation.docc/Documentation.md deleted file mode 100644 index fbe8284b59a..00000000000 --- a/WireUI/Sources/WireUITesting/Documentation.docc/Documentation.md +++ /dev/null @@ -1,4 +0,0 @@ -# ``WireUITesting`` - -Code which is used for testing only. -Eventually this should be migrated with the code from WireTesting. diff --git a/WireUI/Tests/WireReusableUIComponentsTests/AccountImageView/AccountImageViewSnapshotTests.swift b/WireUI/Tests/WireReusableUIComponentsTests/AccountImageView/AccountImageViewSnapshotTests.swift index 8e4c05d1677..391efa3caaf 100644 --- a/WireUI/Tests/WireReusableUIComponentsTests/AccountImageView/AccountImageViewSnapshotTests.swift +++ b/WireUI/Tests/WireReusableUIComponentsTests/AccountImageView/AccountImageViewSnapshotTests.swift @@ -17,7 +17,7 @@ // import SwiftUI -import WireUITesting +import WireTestingPackage import XCTest @testable import WireReusableUIComponents diff --git a/WireUI/Tests/WireReusableUIComponentsTests/AccountImageView/AvailabilityIndicatorViewSnapshotTests.swift b/WireUI/Tests/WireReusableUIComponentsTests/AccountImageView/AvailabilityIndicatorViewSnapshotTests.swift index 8ead7b49ad0..8e5a642a57b 100644 --- a/WireUI/Tests/WireReusableUIComponentsTests/AccountImageView/AvailabilityIndicatorViewSnapshotTests.swift +++ b/WireUI/Tests/WireReusableUIComponentsTests/AccountImageView/AvailabilityIndicatorViewSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import WireReusableUIComponents diff --git a/WireUI/Tests/WireReusableUIComponentsTests/BlockingActivityIndicator/BlockingActivityIndicatorSnapshotTests.swift b/WireUI/Tests/WireReusableUIComponentsTests/BlockingActivityIndicator/BlockingActivityIndicatorSnapshotTests.swift index 3bb4dbdf688..eb7707b16c4 100644 --- a/WireUI/Tests/WireReusableUIComponentsTests/BlockingActivityIndicator/BlockingActivityIndicatorSnapshotTests.swift +++ b/WireUI/Tests/WireReusableUIComponentsTests/BlockingActivityIndicator/BlockingActivityIndicatorSnapshotTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import XCTest @testable import WireReusableUIComponents diff --git a/WireUI/Tests/WireUIBaseTests/MainTabBarController/MainTabBarControllerTests.swift b/WireUI/Tests/WireUIFoundationTests/Main/MainTabBarControllerTests.swift similarity index 95% rename from WireUI/Tests/WireUIBaseTests/MainTabBarController/MainTabBarControllerTests.swift rename to WireUI/Tests/WireUIFoundationTests/Main/MainTabBarControllerTests.swift index 0f418465d8e..3673a606df3 100644 --- a/WireUI/Tests/WireUIBaseTests/MainTabBarController/MainTabBarControllerTests.swift +++ b/WireUI/Tests/WireUIFoundationTests/Main/MainTabBarControllerTests.swift @@ -16,10 +16,10 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest -@testable import WireUIBase +@testable import WireUIFoundation final class MainTabBarControllerTests: XCTestCase { diff --git a/WireUI/Tests/WireUIBaseTests/Resources/ReferenceImages/MainTabBarControllerTests/dark.dark.png b/WireUI/Tests/WireUIFoundationTests/Resources/ReferenceImages/MainTabBarControllerTests/dark.dark.png similarity index 100% rename from WireUI/Tests/WireUIBaseTests/Resources/ReferenceImages/MainTabBarControllerTests/dark.dark.png rename to WireUI/Tests/WireUIFoundationTests/Resources/ReferenceImages/MainTabBarControllerTests/dark.dark.png diff --git a/WireUI/Tests/WireUIBaseTests/Resources/ReferenceImages/MainTabBarControllerTests/light.light.png b/WireUI/Tests/WireUIFoundationTests/Resources/ReferenceImages/MainTabBarControllerTests/light.light.png similarity index 100% rename from WireUI/Tests/WireUIBaseTests/Resources/ReferenceImages/MainTabBarControllerTests/light.light.png rename to WireUI/Tests/WireUIFoundationTests/Resources/ReferenceImages/MainTabBarControllerTests/light.light.png diff --git a/WireUtilities/.PrivacyInfo.xcprivacy b/WireUtilities/.PrivacyInfo.xcprivacy deleted file mode 100644 index 1a71db6f26c..00000000000 --- a/WireUtilities/.PrivacyInfo.xcprivacy +++ /dev/null @@ -1,15 +0,0 @@ - - - - - NSPrivacyTracking - - NSPrivacyAccessedAPITypes - - NSPrivacyCollectedDataTypes - - NSPrivacyTrackingDomains - - - - diff --git a/WireUtilities/.gitignore b/WireUtilities/.gitignore deleted file mode 100644 index 0023a534063..00000000000 --- a/WireUtilities/.gitignore +++ /dev/null @@ -1,8 +0,0 @@ -.DS_Store -/.build -/Packages -xcuserdata/ -DerivedData/ -.swiftpm/configuration/registries.json -.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata -.netrc diff --git a/WireUtilities/.swiftpm/WireUtilities.xctestplan b/WireUtilities/.swiftpm/WireUtilities.xctestplan deleted file mode 100644 index 08f14db6032..00000000000 --- a/WireUtilities/.swiftpm/WireUtilities.xctestplan +++ /dev/null @@ -1,26 +0,0 @@ -{ - "configurations" : [ - { - "id" : "565ACC33-E6F1-4DFE-A2AA-2C05763AA28E", - "name" : "Test Scheme Action", - "options" : { - - } - } - ], - "defaultOptions" : { - "language" : "en", - "region" : "DE", - "testExecutionOrdering" : "random" - }, - "testTargets" : [ - { - "target" : { - "containerPath" : "container:", - "identifier" : "WireUtilitiesPkgTests", - "name" : "WireUtilitiesPkgTests" - } - } - ], - "version" : 1 -} diff --git a/WireUtilities/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist b/WireUtilities/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist deleted file mode 120000 index 0aa12047039..00000000000 --- a/WireUtilities/.swiftpm/xcode/package.xcworkspace/xcshareddata/IDETemplateMacros.plist +++ /dev/null @@ -1 +0,0 @@ -../../../../wire-ios-mono.xcworkspace/xcshareddata/IDETemplateMacros.plist \ No newline at end of file diff --git a/WireUtilities/.swiftpm/xcode/package.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/WireUtilities/.swiftpm/xcode/package.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings deleted file mode 100644 index 08de0be8d3c..00000000000 --- a/WireUtilities/.swiftpm/xcode/package.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEWorkspaceSharedSettings_AutocreateContextsIfNeeded - - - diff --git a/WireUtilities/.swiftpm/xcode/xcshareddata/xcschemes/WireUtilitiesPackageSupport.xcscheme b/WireUtilities/.swiftpm/xcode/xcshareddata/xcschemes/WireUtilitiesPackageSupport.xcscheme deleted file mode 100644 index 146b8fce030..00000000000 --- a/WireUtilities/.swiftpm/xcode/xcshareddata/xcschemes/WireUtilitiesPackageSupport.xcscheme +++ /dev/null @@ -1,67 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/WireUtilities/Package.swift b/WireUtilities/Package.swift deleted file mode 100644 index 249d20db0c1..00000000000 --- a/WireUtilities/Package.swift +++ /dev/null @@ -1,38 +0,0 @@ -// swift-tools-version: 5.10 -// The swift-tools-version declares the minimum version of Swift required to build this package. - -import PackageDescription - -let package = Package( - name: "WireUtilitiesPackage", - platforms: [.iOS(.v15), .macOS(.v12)], - products: [ - .library(name: "WireUtilitiesPackage", type: .dynamic, targets: ["WireUtilitiesPkg"]), - .library(name: "WireUtilitiesPackageSupport", type: .dynamic, targets: ["WireUtilitiesPkgSupport"]) - ], - dependencies: [ - .package(url: "https://github.com/apple/swift-docc-plugin", from: "1.1.0"), - .package(path: "../SourceryPlugin"), - .package(name: "WireSystemPackage", path: "../WireSystem") - ], - targets: [ - .target(name: "WireUtilitiesPkg", dependencies: ["WireSystemPackage"], path: "./Sources/WireUtilities", swiftSettings: swiftSettings), - .testTarget(name: "WireUtilitiesPkgTests", dependencies: ["WireUtilitiesPkg"], path: "./Tests/WireUtilitiesTests", swiftSettings: swiftSettings), - - .target( - name: "WireUtilitiesPkgSupport", - dependencies: ["WireUtilitiesPkg"], - path: "./Sources/WireUtilitiesSupport", - swiftSettings: swiftSettings, - plugins: [ - .plugin(name: "SourceryPlugin", package: "SourceryPlugin") - ] - ) - ] -) - -let swiftSettings: [SwiftSetting] = [ - .enableUpcomingFeature("ExistentialAny"), - .enableUpcomingFeature("GlobalConcurrency"), - .enableExperimentalFeature("StrictConcurrency") -] diff --git a/WireUtilities/Sources/WireUtilities/Documentation.docc/Documentation.md b/WireUtilities/Sources/WireUtilities/Documentation.docc/Documentation.md deleted file mode 100644 index a59ad7ad317..00000000000 --- a/WireUtilities/Sources/WireUtilities/Documentation.docc/Documentation.md +++ /dev/null @@ -1,9 +0,0 @@ -# ``WireUtilities`` - -Provide various utility helpers. - -## Overview - -WireUtilities contains several helper functions and objects. - -## Topics diff --git a/WireUtilities/Sources/WireUtilities/PrivacyInfo.xcprivacy b/WireUtilities/Sources/WireUtilities/PrivacyInfo.xcprivacy deleted file mode 120000 index 11b855aa14b..00000000000 --- a/WireUtilities/Sources/WireUtilities/PrivacyInfo.xcprivacy +++ /dev/null @@ -1 +0,0 @@ -../../.PrivacyInfo.xcprivacy \ No newline at end of file diff --git a/WireUtilities/Sources/WireUtilitiesSupport/Sourcery/AutoMockable.stencil b/WireUtilities/Sources/WireUtilitiesSupport/Sourcery/AutoMockable.stencil deleted file mode 120000 index a15f0c5a722..00000000000 --- a/WireUtilities/Sources/WireUtilitiesSupport/Sourcery/AutoMockable.stencil +++ /dev/null @@ -1 +0,0 @@ -../../../../SourceryPlugin/Stencils/AutoMockable.stencil \ No newline at end of file diff --git a/WireUtilities/Sources/WireUtilitiesSupport/Sourcery/sourcery.yml b/WireUtilities/Sources/WireUtilitiesSupport/Sourcery/sourcery.yml deleted file mode 100644 index d489cbeac83..00000000000 --- a/WireUtilities/Sources/WireUtilitiesSupport/Sourcery/sourcery.yml +++ /dev/null @@ -1,8 +0,0 @@ -sources: -- ${PACKAGE_ROOT_DIR}/Sources/WireUtilities -templates: -- ${TARGET_DIR}/Sourcery/AutoMockable.stencil -output: - ${DERIVED_SOURCES_DIR} -args: - autoMockableImports: ["WireUtilitiesPkg"] diff --git a/WireUtilities/Sources/WireUtilitiesSupport/WireUtilitiesPackageSupport.swift b/WireUtilities/Sources/WireUtilitiesSupport/WireUtilitiesPackageSupport.swift deleted file mode 100644 index 1861c8dd67b..00000000000 --- a/WireUtilities/Sources/WireUtilitiesSupport/WireUtilitiesPackageSupport.swift +++ /dev/null @@ -1,21 +0,0 @@ -// -// Wire -// Copyright (C) 2024 Wire Swiss GmbH -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see http://www.gnu.org/licenses/. -// - -// This target generates mocks via 'sourcery'. It uses the plugin configured in `Package.swift`. -// The generated mocks are processed from the sandbox directory and are not visible in the project folder: -// https://github.com/apple/swift-package-manager/blob/main/Documentation/Plugins.md#implementing-the-build-tool-plugin-script diff --git a/WireUtilities/Tests/WireUtilitiesTests/PlaceholderTests.swift b/WireUtilities/Tests/WireUtilitiesTests/PlaceholderTests.swift deleted file mode 100644 index 45008dae5f9..00000000000 --- a/WireUtilities/Tests/WireUtilitiesTests/PlaceholderTests.swift +++ /dev/null @@ -1,26 +0,0 @@ -// -// Wire -// Copyright (C) 2024 Wire Swiss GmbH -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see http://www.gnu.org/licenses/. -// - -import XCTest - -@testable import WireSystemPackage - -final class PlaceholderTests: XCTestCase { - - func testNothing() {} -} diff --git a/crowdin.yml b/crowdin.yml index 483d021be75..75790ba772e 100644 --- a/crowdin.yml +++ b/crowdin.yml @@ -39,8 +39,8 @@ files: [ "translation" : "/wire-ios/Wire-iOS Share Extension/%osx_code%/%original_file_name%", }, { - "source" : "/WireUI/Sources/WireUIBase/Resources/Localizable.xcstrings", - "dest" : "/App/WireUIBase/Resources/Localizable.xcstrings", + "source" : "/WireUI/Sources/WireUIFoundation/Resources/Localizable.xcstrings", + "dest" : "/App/WireUIFoundation/Resources/Localizable.xcstrings", "translation" : "%original_path%/%original_file_name%", "multilingual": true, }, diff --git a/scripts/.swiftpm/TrimStringCatalogs.xctestplan b/scripts/.swiftpm/TrimStringCatalogs.xctestplan new file mode 100644 index 00000000000..66613d83682 --- /dev/null +++ b/scripts/.swiftpm/TrimStringCatalogs.xctestplan @@ -0,0 +1,29 @@ +{ + "configurations" : [ + { + "id" : "379098EA-12FB-4E50-AED5-45E5465D6AC1", + "name" : "Test Scheme Action", + "options" : { + + } + } + ], + "defaultOptions" : { + "targetForVariableExpansion" : { + "containerPath" : "container:", + "identifier" : "TrimStringCatalogs", + "name" : "TrimStringCatalogs" + }, + "testExecutionOrdering" : "random" + }, + "testTargets" : [ + { + "target" : { + "containerPath" : "container:", + "identifier" : "TrimStringCatalogsTests", + "name" : "TrimStringCatalogsTests" + } + } + ], + "version" : 1 +} diff --git a/scripts/.swiftpm/xcode/xcshareddata/xcschemes/TrimStringCatalogs.xcscheme b/scripts/.swiftpm/xcode/xcshareddata/xcschemes/TrimStringCatalogs.xcscheme new file mode 100644 index 00000000000..729e5b34af6 --- /dev/null +++ b/scripts/.swiftpm/xcode/xcshareddata/xcschemes/TrimStringCatalogs.xcscheme @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/scripts/Package.swift b/scripts/Package.swift index a36f77878fa..745ee8962a4 100644 --- a/scripts/Package.swift +++ b/scripts/Package.swift @@ -4,7 +4,7 @@ import PackageDescription // How to add/update packages? -// +// // 1. Go to GitHub repository, the latest release. // 2. Copy url of <*.artifactbundle.zip> and enter here as 'url'. // 3. Download <*.artifactbundle.zip>, open terminal, go to the folder like '~/Downloads/'. @@ -16,6 +16,24 @@ import PackageDescription let package = Package( name: "Scripts", targets: [ + .executableTarget( + name: "TrimStringCatalogs", + path: "./TrimStringCatalogs", + exclude: ["./Tests.swift", "./TestResources"], + sources: ["./main.swift"] + ), + .testTarget( + name: "TrimStringCatalogsTests", + dependencies: ["TrimStringCatalogs"], + path: "./TrimStringCatalogs", + exclude: ["./main.swift"], + sources: ["./Tests.swift"], + resources: [ + .copy("./TestResources/Trimmed_xcstrings"), + .copy("./TestResources/Untrimmed_xcstrings") + ] + ), + .binaryTarget( name: "LicensePlist", url: "https://github.com/mono0926/LicensePlist/releases/download/3.25.1/LicensePlistBinary-macos.artifactbundle.zip", diff --git a/scripts/TrimStringCatalogs/TestResources/Trimmed_xcstrings b/scripts/TrimStringCatalogs/TestResources/Trimmed_xcstrings new file mode 100644 index 00000000000..e6e08b4e049 --- /dev/null +++ b/scripts/TrimStringCatalogs/TestResources/Trimmed_xcstrings @@ -0,0 +1,22 @@ +{ + "sourceLanguage" : "en", + "strings" : { + "tabBar.archived.description" : { + "localizations" : { + "de" : { + "stringUnit" : { + "state" : "translated", + "value" : "Archiv" + } + }, + "en" : { + "stringUnit" : { + "state" : "translated", + "value" : "Archive" + } + } + } + } + }, + "version" : "1.0" +} diff --git a/scripts/TrimStringCatalogs/TestResources/Untrimmed_xcstrings b/scripts/TrimStringCatalogs/TestResources/Untrimmed_xcstrings new file mode 100644 index 00000000000..1c93641f61e --- /dev/null +++ b/scripts/TrimStringCatalogs/TestResources/Untrimmed_xcstrings @@ -0,0 +1,28 @@ +{ + "sourceLanguage" : "en", + "strings" : { + "tabBar.archived.description" : { + "localizations" : { + "de" : { + "stringUnit" : { + "state" : "translated", + "value" : "Archiv" + } + }, + "en" : { + "stringUnit" : { + "state" : "translated", + "value" : "Archive" + } + }, + "sr-SP" : { + "stringUnit" : { + "state" : "translated", + "value" : "Архивирај" + } + } + } + } + }, + "version" : "1.0" +} diff --git a/scripts/TrimStringCatalogs/Tests.swift b/scripts/TrimStringCatalogs/Tests.swift new file mode 100644 index 00000000000..d57cffbb81d --- /dev/null +++ b/scripts/TrimStringCatalogs/Tests.swift @@ -0,0 +1,39 @@ +// +// Wire +// Copyright (C) 2024 Wire Swiss GmbH +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see http://www.gnu.org/licenses/. +// + +import XCTest + +@testable import TrimStringCatalogs + +final class Tests: XCTestCase { + + func testTrimmingStringCatalog() throws { + let input = try XCTUnwrap(Bundle.module.url(forResource: "Untrimmed_xcstrings", withExtension: nil)) + let expectedOutput = try XCTUnwrap(Bundle.module.url(forResource: "Trimmed_xcstrings", withExtension: nil)) + + // create copy so that the file can be overwritten + let temporaryDirectory = NSTemporaryDirectory() + let inputCopyPath = temporaryDirectory + input.lastPathComponent + try? FileManager.default.removeItem(atPath: inputCopyPath) + try FileManager.default.copyItem(atPath: input.path, toPath: inputCopyPath) + + try TrimStringCatalogs(paths: [input.path]) + + try XCTAssertEqual(Data(contentsOf: input), Data(contentsOf: expectedOutput)) + } +} diff --git a/scripts/TrimStringCatalogs/main.swift b/scripts/TrimStringCatalogs/main.swift new file mode 100644 index 00000000000..df42df8b1a5 --- /dev/null +++ b/scripts/TrimStringCatalogs/main.swift @@ -0,0 +1,91 @@ +// +// Wire +// Copyright (C) 2024 Wire Swiss GmbH +// +// This program is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program. If not, see http://www.gnu.org/licenses/. +// + +import Foundation + +// This script removes all languages from a string catalog which are not whitelisted. + +guard CommandLine.arguments.count > 1 else { + print("Usage: \(CommandLine.arguments[0]) [file ...]") + exit(1) +} + +try TrimStringCatalogs(paths: CommandLine.arguments[1...]) + +func TrimStringCatalogs(paths: some Collection) throws { + let whitelistedLocalizationKeys = [ + "Base", + "ar", + "da", + "de", + "en", + "es", + "et", + "fi", + "fr", + "it", + "ja", + "lt", + "nl", + "pl", + "pt-BR", + "ru", + "sl", + "tr", + "uk", + "zh-Hans", + "zh-Hant" + ] + + for path in paths { + let url = URL(fileURLWithPath: path) + var data = try Data(contentsOf: url) + print("Trimming \(path) ...") + + /* + { + "version" : "1.0", + "sourceLanguage" : "en", + "strings" : { + "tabBar.archived.description" : { + "localizations" : { + "ar" : { + "stringUnit" : { + "state" : "translated", + "value" : "حفظ في الأرشيف" + }, + ... + */ + + var json = try JSONSerialization.jsonObject(with: data, options: []) as! [String: Any] + var strings = json["strings"] as! [String: Any] + for stringKey in strings.keys { + var string = strings[stringKey] as! [String: Any] + var localizations = string["localizations"] as! [String: Any] + for localizationKey in localizations.keys where !whitelistedLocalizationKeys.contains(localizationKey) { + localizations.removeValue(forKey: localizationKey) + } + string["localizations"] = localizations + strings[stringKey] = string + } + json["strings"] = strings + data = try JSONSerialization.data(withJSONObject: json, options: [.prettyPrinted, .sortedKeys]) + data.append(.init("\n".utf8)) + try data.write(to: url) + } +} diff --git a/scripts/run-tests.sh b/scripts/run-tests.sh index 7ea85b724e0..bc6fb7de108 100755 --- a/scripts/run-tests.sh +++ b/scripts/run-tests.sh @@ -23,11 +23,10 @@ REPO_ROOT=$(git rev-parse --show-toplevel) XCODEBUILD="xcrun xcodebuild" SCHEMES=( - WireSystemPackage + WireFoundation WireSystem WireTestingPackage WireTesting - WireUtilitiesPackage WireUtilities WireDomainPackage WireDomain diff --git a/wire-ios-cryptobox/WireCryptobox.xcodeproj/project.pbxproj b/wire-ios-cryptobox/WireCryptobox.xcodeproj/project.pbxproj index 74090613cc8..10f6ac56d37 100644 --- a/wire-ios-cryptobox/WireCryptobox.xcodeproj/project.pbxproj +++ b/wire-ios-cryptobox/WireCryptobox.xcodeproj/project.pbxproj @@ -8,7 +8,6 @@ /* Begin PBXBuildFile section */ 0928E36D1BA0908F0057232E /* WireCryptobox.h in Headers */ = {isa = PBXBuildFile; fileRef = 0928E36C1BA0908F0057232E /* WireCryptobox.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 09E393C31BAC2E5600F3EA1B /* WireCryptobox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0928E2341BA0777A0057232E /* WireCryptobox.framework */; }; 16460B7F206D456F0096B616 /* cbox.h in Headers */ = {isa = PBXBuildFile; fileRef = 16460B7E206D456F0096B616 /* cbox.h */; settings = {ATTRIBUTES = (Public, ); }; }; 16460B81206D46CA0096B616 /* StreamEncryption.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16460B80206D46CA0096B616 /* StreamEncryption.swift */; }; 16460B83206D47460096B616 /* ChaCha20StreamEncryptionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16460B82206D47460096B616 /* ChaCha20StreamEncryptionTests.swift */; }; @@ -19,7 +18,6 @@ 5471A65F1D24215B0092A9A9 /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 5471A65E1D24215B0092A9A9 /* ViewController.m */; }; 5471A6621D24215B0092A9A9 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 5471A6601D24215B0092A9A9 /* Main.storyboard */; }; 5471A6641D24215B0092A9A9 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 5471A6631D24215B0092A9A9 /* Assets.xcassets */; }; - 5471A66E1D24221A0092A9A9 /* WireCryptobox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0928E2341BA0777A0057232E /* WireCryptobox.framework */; }; 5471A6741D242D740092A9A9 /* PointerWrapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5471A6731D242D740092A9A9 /* PointerWrapper.swift */; }; 5471A6781D242F8C0092A9A9 /* EncryptionSessionsDirectory.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5471A6771D242F8C0092A9A9 /* EncryptionSessionsDirectory.swift */; }; 54A1573F1D23C00500EB3B4F /* EncryptionContextTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54A1573E1D23C00500EB3B4F /* EncryptionContextTests.swift */; }; @@ -27,6 +25,9 @@ 54B949941D2541350041CC55 /* TestHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54B949931D2541350041CC55 /* TestHelper.swift */; }; 54C69DDA1D216A6B0060FBEC /* EncryptionContext.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54C69DD91D216A6B0060FBEC /* EncryptionContext.swift */; }; 54EA12241D2A9AA400D2CFD1 /* CryptoBoxError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54EA12231D2A9AA400D2CFD1 /* CryptoBoxError.swift */; }; + 591B6E5B2C8B09E4009F8A7B /* Clibsodium.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F6B8296F05BF001D7C88 /* Clibsodium.xcframework */; }; + 591B6E5E2C8B09E8009F8A7B /* WireCryptobox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0928E2341BA0777A0057232E /* WireCryptobox.framework */; }; + 591B6E612C8B09ED009F8A7B /* WireCryptobox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0928E2341BA0777A0057232E /* WireCryptobox.framework */; }; 638792A623956F9300FD23CF /* Data+SafeForLogging.swift in Sources */ = {isa = PBXBuildFile; fileRef = 638792A523956F9300FD23CF /* Data+SafeForLogging.swift */; }; 870121FD20F4D2FE001E6342 /* GenericHashBuilderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 870121FB20F4D2F6001E6342 /* GenericHashBuilderTests.swift */; }; 87B43C2F20F3973F0031DE41 /* EncryptionContextCachingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87B43C2D20F396F60031DE41 /* EncryptionContextCachingTests.swift */; }; @@ -94,7 +95,6 @@ EEA2B85D24DAD1E700C6659E /* AEADEncryption.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEA2B85C24DAD1E700C6659E /* AEADEncryption.swift */; }; EEA2B85F24DC26BD00C6659E /* ChaCha20AEADEncryptionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEA2B85E24DC26BD00C6659E /* ChaCha20AEADEncryptionTests.swift */; }; EEE25B2229719A240008B894 /* cryptobox.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F6B9296F05BF001D7C88 /* cryptobox.xcframework */; }; - EEE25B2429719A250008B894 /* Clibsodium.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F6B8296F05BF001D7C88 /* Clibsodium.xcframework */; }; EEF6714324E681DE00BDB9B9 /* ChaCha20Poly1305.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEF6714224E681DE00BDB9B9 /* ChaCha20Poly1305.swift */; }; /* End PBXBuildFile section */ @@ -115,18 +115,6 @@ }; /* End PBXContainerItemProxy section */ -/* Begin PBXCopyFilesBuildPhase section */ - 54060B7E1DB7760C00AEA9BB /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - /* Begin PBXFileReference section */ 0928E2341BA0777A0057232E /* WireCryptobox.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = WireCryptobox.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 0928E36C1BA0908F0057232E /* WireCryptobox.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WireCryptobox.h; sourceTree = ""; }; @@ -243,7 +231,7 @@ files = ( EE97411D295493B9000C9340 /* WireUtilities.framework in Frameworks */, EEE25B2229719A240008B894 /* cryptobox.xcframework in Frameworks */, - EEE25B2429719A250008B894 /* Clibsodium.xcframework in Frameworks */, + 591B6E5B2C8B09E4009F8A7B /* Clibsodium.xcframework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -251,7 +239,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 5471A66E1D24221A0092A9A9 /* WireCryptobox.framework in Frameworks */, + 591B6E612C8B09ED009F8A7B /* WireCryptobox.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -259,7 +247,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 09E393C31BAC2E5600F3EA1B /* WireCryptobox.framework in Frameworks */, + 591B6E5E2C8B09E8009F8A7B /* WireCryptobox.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -588,7 +576,6 @@ 5471A6511D24215B0092A9A9 /* Sources */, 5471A6521D24215B0092A9A9 /* Frameworks */, 5471A6531D24215B0092A9A9 /* Resources */, - 54060B7E1DB7760C00AEA9BB /* CopyFiles */, ); buildRules = ( ); diff --git a/wire-ios-data-model/Source/ManagedObjectContext/ExtendedSecureUnarchiveFromData.swift b/wire-ios-data-model/Source/ManagedObjectContext/ExtendedSecureUnarchiveFromData.swift index 28dc9218323..ee98e3c4417 100644 --- a/wire-ios-data-model/Source/ManagedObjectContext/ExtendedSecureUnarchiveFromData.swift +++ b/wire-ios-data-model/Source/ManagedObjectContext/ExtendedSecureUnarchiveFromData.swift @@ -17,6 +17,7 @@ // import Foundation +import WireLinkPreview /// An extension of the NSSecureUnarchiveFromData which supports encoding/decoding our /// custom classes. diff --git a/wire-ios-data-model/Source/Model/Conversation/ZMConversation+Message.swift b/wire-ios-data-model/Source/Model/Conversation/ZMConversation+Message.swift index 81b0c6182fb..f06d5a4c32b 100644 --- a/wire-ios-data-model/Source/Model/Conversation/ZMConversation+Message.swift +++ b/wire-ios-data-model/Source/Model/Conversation/ZMConversation+Message.swift @@ -17,6 +17,7 @@ // import Foundation +import WireLinkPreview private let log = ZMSLog(tag: "Conversations") diff --git a/wire-ios-data-model/Source/Model/Message/Composite/CompositeMessageItemContent.swift b/wire-ios-data-model/Source/Model/Message/Composite/CompositeMessageItemContent.swift index 7cdb5f2e617..0a235f79639 100644 --- a/wire-ios-data-model/Source/Model/Message/Composite/CompositeMessageItemContent.swift +++ b/wire-ios-data-model/Source/Model/Message/Composite/CompositeMessageItemContent.swift @@ -17,6 +17,7 @@ // import Foundation +import WireLinkPreview class CompositeMessageItemContent: NSObject { private let parentMessage: ZMClientMessage diff --git a/wire-ios-data-model/Source/Model/Message/ZMClientMessage+TextMessageData.swift b/wire-ios-data-model/Source/Model/Message/ZMClientMessage+TextMessageData.swift index c1c57507a98..e10466731a6 100644 --- a/wire-ios-data-model/Source/Model/Message/ZMClientMessage+TextMessageData.swift +++ b/wire-ios-data-model/Source/Model/Message/ZMClientMessage+TextMessageData.swift @@ -17,6 +17,7 @@ // import Foundation +import WireLinkPreview extension ZMClientMessage: TextMessageData { diff --git a/wire-ios-data-model/Source/Model/Message/ZMMessage+Categorization.swift b/wire-ios-data-model/Source/Model/Message/ZMMessage+Categorization.swift index c00f5ae094a..d69ea8ee0fe 100644 --- a/wire-ios-data-model/Source/Model/Message/ZMMessage+Categorization.swift +++ b/wire-ios-data-model/Source/Model/Message/ZMMessage+Categorization.swift @@ -17,6 +17,7 @@ // import Foundation +import WireLinkPreview extension ZMMessage { diff --git a/wire-ios-data-model/Source/Model/Message/ZMMessage.m b/wire-ios-data-model/Source/Model/Message/ZMMessage.m index c764cdf2ca7..2e3ef8d6eae 100644 --- a/wire-ios-data-model/Source/Model/Message/ZMMessage.m +++ b/wire-ios-data-model/Source/Model/Message/ZMMessage.m @@ -20,7 +20,7 @@ @import WireProtos; @import MobileCoreServices; @import ImageIO; - +@import WireLinkPreview; #import "ZMMessage+Internal.h" #import "ZMConversation.h" diff --git a/wire-ios-data-model/Source/Model/User/UnregisteredUser.swift b/wire-ios-data-model/Source/Model/User/UnregisteredUser.swift index 18ecf6d6e73..49ba60a8c08 100644 --- a/wire-ios-data-model/Source/Model/User/UnregisteredUser.swift +++ b/wire-ios-data-model/Source/Model/User/UnregisteredUser.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUtilitiesPkg +import WireFoundation /// The representation of a user that is going through the registration process. /// diff --git a/wire-ios-data-model/Source/Model/User/ZMUser.swift b/wire-ios-data-model/Source/Model/User/ZMUser.swift index 32b43a522b1..f23a6004434 100644 --- a/wire-ios-data-model/Source/Model/User/ZMUser.swift +++ b/wire-ios-data-model/Source/Model/User/ZMUser.swift @@ -17,9 +17,9 @@ // import Foundation +import WireFoundation import WireSystem import WireUtilities -import WireUtilitiesPkg extension ZMUser: UserType { diff --git a/wire-ios-data-model/Source/Public/ZMMessage.h b/wire-ios-data-model/Source/Public/ZMMessage.h index f73382665bb..1f236762d6f 100644 --- a/wire-ios-data-model/Source/Public/ZMMessage.h +++ b/wire-ios-data-model/Source/Public/ZMMessage.h @@ -22,7 +22,6 @@ @class ZMUser; @class ZMConversation; @class UserClient; -@class LinkMetadata; @class Mention; @class ZMMessage; diff --git a/wire-ios-data-model/Source/Utilis/Protos/GenericMessage+Helper.swift b/wire-ios-data-model/Source/Utilis/Protos/GenericMessage+Helper.swift index 6c50ea251cd..5292b8d9a50 100644 --- a/wire-ios-data-model/Source/Utilis/Protos/GenericMessage+Helper.swift +++ b/wire-ios-data-model/Source/Utilis/Protos/GenericMessage+Helper.swift @@ -17,6 +17,7 @@ // import Foundation +import WireLinkPreview import WireProtos // MARK: - GenericMessage diff --git a/wire-ios-data-model/Source/WireDataModel.h b/wire-ios-data-model/Source/WireDataModel.h index 695174bf530..265517893f3 100644 --- a/wire-ios-data-model/Source/WireDataModel.h +++ b/wire-ios-data-model/Source/WireDataModel.h @@ -16,8 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -@import Foundation; -@import WireLinkPreview; +#import // In this header, you should import all the public headers of your framework using statements like #import diff --git a/wire-ios-data-model/WireDataModel.xcodeproj/project.pbxproj b/wire-ios-data-model/WireDataModel.xcodeproj/project.pbxproj index 35f2b872c0f..53b4120b3f7 100644 --- a/wire-ios-data-model/WireDataModel.xcodeproj/project.pbxproj +++ b/wire-ios-data-model/WireDataModel.xcodeproj/project.pbxproj @@ -278,6 +278,10 @@ 590C55752B62BF0000FC1CE8 /* MLSGroupID+random.swift in Sources */ = {isa = PBXBuildFile; fileRef = 590C55742B62BF0000FC1CE8 /* MLSGroupID+random.swift */; }; 591362E62B70F45C000B210C /* MLSVerificationStatusTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 591362E52B70F45C000B210C /* MLSVerificationStatusTests.swift */; }; 591942B62B6A4B4D0000B390 /* UserObserving.swift in Sources */ = {isa = PBXBuildFile; fileRef = 591942B52B6A4B4D0000B390 /* UserObserving.swift */; }; + 591B6E4C2C8B09C6009F8A7B /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F9C9A66E1CAD77930039E10C /* CoreData.framework */; }; + 591B6E4E2C8B09CA009F8A7B /* OCMock.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5996E8C62C1A0000007A52F0 /* OCMock.xcframework */; }; + 591B6E512C8B09CE009F8A7B /* WireDataModel.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F9C9A4FC1CAD5DF10039E10C /* WireDataModel.framework */; }; + 591B6E542C8B09D2009F8A7B /* WireDataModel.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F9C9A4FC1CAD5DF10039E10C /* WireDataModel.framework */; }; 591F8A022B8CB4DE00D562A6 /* IsSelfUserE2EICertifiedUseCaseProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 591F8A012B8CB4DE00D562A6 /* IsSelfUserE2EICertifiedUseCaseProtocol.swift */; }; 591F8A042B8CB4EF00D562A6 /* IsSelfUserE2EICertifiedUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 591F8A032B8CB4EF00D562A6 /* IsSelfUserE2EICertifiedUseCase.swift */; }; 591F8A072B8CB82400D562A6 /* IsSelfUserE2EICertifiedUseCaseTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 591F8A052B8CB81400D562A6 /* IsSelfUserE2EICertifiedUseCaseTests.swift */; }; @@ -296,13 +300,11 @@ 5986A08D2C6B710E00299181 /* TextMessageData.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5986A08C2C6B710E00299181 /* TextMessageData.swift */; }; 5986A08F2C6B744300299181 /* TextMessage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5986A08E2C6B744300299181 /* TextMessage.swift */; }; 598796302B45880400A6FC63 /* ZMUpdateEvent+allTypes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5987962F2B45880400A6FC63 /* ZMUpdateEvent+allTypes.swift */; }; - 5996E8C72C1A0000007A52F0 /* OCMock.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5996E8C62C1A0000007A52F0 /* OCMock.xcframework */; }; 59AAB6492AFCF541005B39E6 /* MessageProtocolTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59AAB6482AFCF541005B39E6 /* MessageProtocolTests.swift */; }; + 59B48C5C2C89CBBD00EA7999 /* WireFoundation in Frameworks */ = {isa = PBXBuildFile; productRef = 59B48C5B2C89CBBD00EA7999 /* WireFoundation */; }; 59D1C3032B1DE6FF0016F6B2 /* WireDataModelSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = 59D1C3022B1DE6FF0016F6B2 /* WireDataModelSupport.h */; settings = {ATTRIBUTES = (Public, ); }; }; 59D1C3062B1DE6FF0016F6B2 /* WireDataModelSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 59D1C3002B1DE6FF0016F6B2 /* WireDataModelSupport.framework */; }; - 59D1C30D2B1DE8750016F6B2 /* WireDataModel.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F9C9A4FC1CAD5DF10039E10C /* WireDataModel.framework */; }; 59D1C30E2B1DEC300016F6B2 /* WireDataModelSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 59D1C3002B1DE6FF0016F6B2 /* WireDataModelSupport.framework */; }; - 59D588892C7CD9B900CAFA0F /* WireUtilitiesPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 59D588882C7CD9B900CAFA0F /* WireUtilitiesPackage */; }; 59EC73F72C20B03100E5C036 /* NSManagedObjectContext+executeFetchRequestOrAssert.h in Headers */ = {isa = PBXBuildFile; fileRef = 59EC73F62C20B03100E5C036 /* NSManagedObjectContext+executeFetchRequestOrAssert.h */; settings = {ATTRIBUTES = (Public, ); }; }; 59EC73F92C20B04600E5C036 /* NSManagedObjectContext+executeFetchRequestOrAssert.m in Sources */ = {isa = PBXBuildFile; fileRef = 59EC73F82C20B04600E5C036 /* NSManagedObjectContext+executeFetchRequestOrAssert.m */; }; 59F4B6F22B87563E00AC84B1 /* IsUserE2EICertifiedUseCaseProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59F4B6F12B87563E00AC84B1 /* IsUserE2EICertifiedUseCaseProtocol.swift */; }; @@ -855,14 +857,12 @@ F9C8770B1E015AAF00792613 /* AssetColletionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = F9C8770A1E015AAF00792613 /* AssetColletionTests.swift */; }; F9C9A5071CAD5DF10039E10C /* WireDataModel.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F9C9A4FC1CAD5DF10039E10C /* WireDataModel.framework */; }; F9C9A65F1CAD76A50039E10C /* WireDataModel.h in Headers */ = {isa = PBXBuildFile; fileRef = F9C9A60C1CAD76A50039E10C /* WireDataModel.h */; settings = {ATTRIBUTES = (Public, ); }; }; - F9C9A66F1CAD77930039E10C /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F9C9A66E1CAD77930039E10C /* CoreData.framework */; }; F9C9A6AA1CAD7C7F0039E10C /* ZMConversation.h in Headers */ = {isa = PBXBuildFile; fileRef = F9C9A6A31CAD7C7F0039E10C /* ZMConversation.h */; settings = {ATTRIBUTES = (Public, ); }; }; F9C9A6AC1CAD7C7F0039E10C /* ZMEditableUserType.h in Headers */ = {isa = PBXBuildFile; fileRef = F9C9A6A51CAD7C7F0039E10C /* ZMEditableUserType.h */; settings = {ATTRIBUTES = (Public, ); }; }; F9C9A6AD1CAD7C7F0039E10C /* ZMMessage.h in Headers */ = {isa = PBXBuildFile; fileRef = F9C9A6A61CAD7C7F0039E10C /* ZMMessage.h */; settings = {ATTRIBUTES = (Public, ); }; }; F9C9A6AE1CAD7C7F0039E10C /* ZMUser.h in Headers */ = {isa = PBXBuildFile; fileRef = F9C9A6A71CAD7C7F0039E10C /* ZMUser.h */; settings = {ATTRIBUTES = (Public, ); }; }; F9C9A6B01CAD7D1F0039E10C /* ZMManagedObject.h in Headers */ = {isa = PBXBuildFile; fileRef = F9C9A6AF1CAD7D1F0039E10C /* ZMManagedObject.h */; settings = {ATTRIBUTES = (Public, ); }; }; F9C9A7661CAE8DFC0039E10C /* ZMAddressBookContact.h in Headers */ = {isa = PBXBuildFile; fileRef = F9C9A7641CAE8DFC0039E10C /* ZMAddressBookContact.h */; settings = {ATTRIBUTES = (Public, ); }; }; - F9C9A80C1CAED99F0039E10C /* WireDataModel.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F9C9A4FC1CAD5DF10039E10C /* WireDataModel.framework */; }; F9DBA5201E28EA8B00BE23C0 /* DependencyKeyStore.swift in Sources */ = {isa = PBXBuildFile; fileRef = F9DBA51F1E28EA8B00BE23C0 /* DependencyKeyStore.swift */; }; F9DBA5221E28EB4000BE23C0 /* SideEffectSources.swift in Sources */ = {isa = PBXBuildFile; fileRef = F9DBA5211E28EB4000BE23C0 /* SideEffectSources.swift */; }; F9DBA5251E28EE1500BE23C0 /* ConversationObserverTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = F9DBA5231E28EE0A00BE23C0 /* ConversationObserverTests.swift */; }; @@ -906,29 +906,6 @@ }; /* End PBXContainerItemProxy section */ -/* Begin PBXCopyFilesBuildPhase section */ - 014C36B32B27206E00D7E8EA /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; - 59D5888B2C7CD9B900CAFA0F /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - /* Begin PBXFileReference section */ 0125F73A2B28A31C00D989AB /* SpyUserClientKeyStore.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = SpyUserClientKeyStore.swift; sourceTree = ""; }; 0125F73B2B28A31C00D989AB /* MockProteusProvider.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MockProteusProvider.swift; sourceTree = ""; }; @@ -1880,7 +1857,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 59D1C30D2B1DE8750016F6B2 /* WireDataModel.framework in Frameworks */, + 591B6E542C8B09D2009F8A7B /* WireDataModel.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1889,11 +1866,11 @@ buildActionMask = 2147483647; files = ( EE8DA9672954A02B00F58B79 /* WireCryptobox.framework in Frameworks */, - F9C9A66F1CAD77930039E10C /* CoreData.framework in Frameworks */, + 591B6E4C2C8B09C6009F8A7B /* CoreData.framework in Frameworks */, EE8DA96D2954A03800F58B79 /* WireLinkPreview.framework in Frameworks */, E6707E902BBD683F00469D57 /* PINCache in Frameworks */, EE8DA9632954A02400F58B79 /* WireProtos.framework in Frameworks */, - 59D588892C7CD9B900CAFA0F /* WireUtilitiesPackage in Frameworks */, + 59B48C5C2C89CBBD00EA7999 /* WireFoundation in Frameworks */, EE8DA9702954A03E00F58B79 /* WireImages.framework in Frameworks */, EE8DA96A2954A03100F58B79 /* WireTransport.framework in Frameworks */, 017CA4442A2742B800E8E778 /* WireCoreCrypto.xcframework in Frameworks */, @@ -1905,10 +1882,10 @@ buildActionMask = 2147483647; files = ( 59D1C30E2B1DEC300016F6B2 /* WireDataModelSupport.framework in Frameworks */, - 5996E8C72C1A0000007A52F0 /* OCMock.xcframework in Frameworks */, CB7979182C747652006FBA58 /* WireTransportSupport.framework in Frameworks */, F9C9A5071CAD5DF10039E10C /* WireDataModel.framework in Frameworks */, 59FFAD9D2C822977000C8085 /* WireTesting.framework in Frameworks */, + 591B6E4E2C8B09CA009F8A7B /* OCMock.xcframework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1916,8 +1893,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - F9C9A80C1CAED99F0039E10C /* WireDataModel.framework in Frameworks */, 59D1C3062B1DE6FF0016F6B2 /* WireDataModelSupport.framework in Frameworks */, + 591B6E512C8B09CE009F8A7B /* WireDataModel.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -3793,7 +3770,6 @@ 59D1C2FC2B1DE6FF0016F6B2 /* Sources */, 59D1C2FD2B1DE6FF0016F6B2 /* Frameworks */, 59D1C2FE2B1DE6FF0016F6B2 /* Resources */, - 014C36B32B27206E00D7E8EA /* Embed Frameworks */, ); buildRules = ( ); @@ -3813,7 +3789,6 @@ F9C9A4F71CAD5DF10039E10C /* Sources */, F9C9A4F81CAD5DF10039E10C /* Frameworks */, F9C9A4FA1CAD5DF10039E10C /* Resources */, - 59D5888B2C7CD9B900CAFA0F /* Embed Frameworks */, ); buildRules = ( ); @@ -3822,7 +3797,7 @@ name = WireDataModel; packageProductDependencies = ( E6707E8F2BBD683F00469D57 /* PINCache */, - 59D588882C7CD9B900CAFA0F /* WireUtilitiesPackage */, + 59B48C5B2C89CBBD00EA7999 /* WireFoundation */, ); productName = WireDataModel; productReference = F9C9A4FC1CAD5DF10039E10C /* WireDataModel.framework */; @@ -5184,9 +5159,9 @@ /* End XCRemoteSwiftPackageReference section */ /* Begin XCSwiftPackageProductDependency section */ - 59D588882C7CD9B900CAFA0F /* WireUtilitiesPackage */ = { + 59B48C5B2C89CBBD00EA7999 /* WireFoundation */ = { isa = XCSwiftPackageProductDependency; - productName = WireUtilitiesPackage; + productName = WireFoundation; }; E6707E8F2BBD683F00469D57 /* PINCache */ = { isa = XCSwiftPackageProductDependency; diff --git a/wire-ios-images/WireImages.xcodeproj/project.pbxproj b/wire-ios-images/WireImages.xcodeproj/project.pbxproj index b7c9ab9c4a2..c5422e9845c 100644 --- a/wire-ios-images/WireImages.xcodeproj/project.pbxproj +++ b/wire-ios-images/WireImages.xcodeproj/project.pbxproj @@ -24,13 +24,14 @@ 09BCDB591BC664DA0020DCC7 /* ImageOwner.swift in Sources */ = {isa = PBXBuildFile; fileRef = 09BCDB581BC664DA0020DCC7 /* ImageOwner.swift */; }; 5405B0091BCEBDBF00C0C3BD /* ZMIImageProperties.h in Headers */ = {isa = PBXBuildFile; fileRef = 5405B0071BCEBDBF00C0C3BD /* ZMIImageProperties.h */; settings = {ATTRIBUTES = (Public, ); }; }; 5405B00A1BCEBDBF00C0C3BD /* ZMIImageProperties.m in Sources */ = {isa = PBXBuildFile; fileRef = 5405B0081BCEBDBF00C0C3BD /* ZMIImageProperties.m */; }; - 54A5A6161E92A01100D56F2E /* WireImages.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0969600C1B663E7B006DF53B /* WireImages.framework */; }; + 591B6E712C8B0A0D009F8A7B /* WireUtilities.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE98A0B0296EFD2F0055E981 /* WireUtilities.framework */; }; + 591B6E742C8B0A10009F8A7B /* WireImages.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0969600C1B663E7B006DF53B /* WireImages.framework */; }; + 591B6E772C8B0A17009F8A7B /* WireImages.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0969600C1B663E7B006DF53B /* WireImages.framework */; }; 870253E41DAB7AA00095D272 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 870253E31DAB7AA00095D272 /* main.m */; }; 870253E71DAB7AA00095D272 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 870253E61DAB7AA00095D272 /* AppDelegate.m */; }; 870253EA1DAB7AA00095D272 /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 870253E91DAB7AA00095D272 /* ViewController.m */; }; 870253ED1DAB7AA00095D272 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 870253EB1DAB7AA00095D272 /* Main.storyboard */; }; 870253EF1DAB7AA00095D272 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 870253EE1DAB7AA00095D272 /* Assets.xcassets */; }; - 870253F91DAB7B190095D272 /* WireImages.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0969600C1B663E7B006DF53B /* WireImages.framework */; }; 87B91C041E5C586D00A5EC11 /* NSData+MediaMetadata.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87B91C031E5C586D00A5EC11 /* NSData+MediaMetadata.swift */; }; 87B91C061E5C5D8600A5EC11 /* NSDataMetadataTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87B91C051E5C5D8600A5EC11 /* NSDataMetadataTests.swift */; }; 87B91C2C1E5C7E5D00A5EC11 /* ceiling_recompressed_unrotated.jpg in Resources */ = {isa = PBXBuildFile; fileRef = 87B91C091E5C7E5D00A5EC11 /* ceiling_recompressed_unrotated.jpg */; }; @@ -67,7 +68,6 @@ 87B91C4D1E5C7E5D00A5EC11 /* unsplash_preview_small_profile.jpg in Resources */ = {isa = PBXBuildFile; fileRef = 87B91C2A1E5C7E5D00A5EC11 /* unsplash_preview_small_profile.jpg */; }; 87B91C4E1E5C7E5D00A5EC11 /* unsplash_small_profile.jpg in Resources */ = {isa = PBXBuildFile; fileRef = 87B91C2B1E5C7E5D00A5EC11 /* unsplash_small_profile.jpg */; }; A9626B4B26932BEA0043CC31 /* ZMImageDownsampleOperation.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9626B4A26932BE90043CC31 /* ZMImageDownsampleOperation.swift */; }; - EE98A0B1296EFD2F0055E981 /* WireUtilities.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE98A0B0296EFD2F0055E981 /* WireUtilities.framework */; }; EE98A0B5296EFD3F0055E981 /* WireTesting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE98A0B4296EFD3F0055E981 /* WireTesting.framework */; }; EE9AEC8A2BD158D600F7853F /* WireImages.docc in Sources */ = {isa = PBXBuildFile; fileRef = EE9AEC892BD158D600F7853F /* WireImages.docc */; }; EEB7138B2B9F37BB00DB27F6 /* ZMImageFormat+StringValue.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEB7138A2B9F37BB00DB27F6 /* ZMImageFormat+StringValue.swift */; }; @@ -179,7 +179,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - EE98A0B1296EFD2F0055E981 /* WireUtilities.framework in Frameworks */, + 591B6E712C8B0A0D009F8A7B /* WireUtilities.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -187,7 +187,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 54A5A6161E92A01100D56F2E /* WireImages.framework in Frameworks */, + 591B6E742C8B0A10009F8A7B /* WireImages.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -196,7 +196,7 @@ buildActionMask = 2147483647; files = ( EE98A0B5296EFD3F0055E981 /* WireTesting.framework in Frameworks */, - 870253F91DAB7B190095D272 /* WireImages.framework in Frameworks */, + 591B6E772C8B0A17009F8A7B /* WireImages.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/wire-ios-link-preview/LICENSE b/wire-ios-link-preview/LICENSE deleted file mode 100644 index ebd853e83a2..00000000000 --- a/wire-ios-link-preview/LICENSE +++ /dev/null @@ -1,674 +0,0 @@ -GNU GENERAL PUBLIC LICENSE - Version 3, 29 June 2007 - -Copyright (C) 2007 Free Software Foundation, Inc. -Everyone is permitted to copy and distribute verbatim copies -of this license document, but changing it is not allowed. - - Preamble - -The GNU General Public License is a free, copyleft license for -software and other kinds of works. - -The licenses for most software and other practical works are designed -to take away your freedom to share and change the works. By contrast, -the GNU General Public License is intended to guarantee your freedom to -share and change all versions of a program--to make sure it remains free -software for all its users. We, the Free Software Foundation, use the -GNU General Public License for most of our software; it applies also to -any other work released this way by its authors. You can apply it to -your programs, too. - -When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -them if you wish), that you receive source code or can get it if you -want it, that you can change the software or use pieces of it in new -free programs, and that you know you can do these things. - -To protect your rights, we need to prevent others from denying you -these rights or asking you to surrender the rights. Therefore, you have -certain responsibilities if you distribute copies of the software, or if -you modify it: responsibilities to respect the freedom of others. - -For example, if you distribute copies of such a program, whether -gratis or for a fee, you must pass on to the recipients the same -freedoms that you received. You must make sure that they, too, receive -or can get the source code. And you must show them these terms so they -know their rights. - -Developers that use the GNU GPL protect your rights with two steps: -(1) assert copyright on the software, and (2) offer you this License -giving you legal permission to copy, distribute and/or modify it. - -For the developers' and authors' protection, the GPL clearly explains -that there is no warranty for this free software. For both users' and -authors' sake, the GPL requires that modified versions be marked as -changed, so that their problems will not be attributed erroneously to -authors of previous versions. - -Some devices are designed to deny users access to install or run -modified versions of the software inside them, although the manufacturer -can do so. This is fundamentally incompatible with the aim of -protecting users' freedom to change the software. The systematic -pattern of such abuse occurs in the area of products for individuals to -use, which is precisely where it is most unacceptable. Therefore, we -have designed this version of the GPL to prohibit the practice for those -products. If such problems arise substantially in other domains, we -stand ready to extend this provision to those domains in future versions -of the GPL, as needed to protect the freedom of users. - -Finally, every program is threatened constantly by software patents. -States should not allow patents to restrict development and use of -software on general-purpose computers, but in those that do, we wish to -avoid the special danger that patents applied to a free program could -make it effectively proprietary. To prevent this, the GPL assures that -patents cannot be used to render the program non-free. - -The precise terms and conditions for copying, distribution and -modification follow. - - TERMS AND CONDITIONS - -0. Definitions. - -"This License" refers to version 3 of the GNU General Public License. - -"Copyright" also means copyright-like laws that apply to other kinds of -works, such as semiconductor masks. - -"The Program" refers to any copyrightable work licensed under this -License. Each licensee is addressed as "you". "Licensees" and -"recipients" may be individuals or organizations. - -To "modify" a work means to copy from or adapt all or part of the work -in a fashion requiring copyright permission, other than the making of an -exact copy. The resulting work is called a "modified version" of the -earlier work or a work "based on" the earlier work. - -A "covered work" means either the unmodified Program or a work based -on the Program. - -To "propagate" a work means to do anything with it that, without -permission, would make you directly or secondarily liable for -infringement under applicable copyright law, except executing it on a -computer or modifying a private copy. Propagation includes copying, -distribution (with or without modification), making available to the -public, and in some countries other activities as well. - -To "convey" a work means any kind of propagation that enables other -parties to make or receive copies. Mere interaction with a user through -a computer network, with no transfer of a copy, is not conveying. - -An interactive user interface displays "Appropriate Legal Notices" -to the extent that it includes a convenient and prominently visible -feature that (1) displays an appropriate copyright notice, and (2) -tells the user that there is no warranty for the work (except to the -extent that warranties are provided), that licensees may convey the -work under this License, and how to view a copy of this License. If -the interface presents a list of user commands or options, such as a -menu, a prominent item in the list meets this criterion. - -1. Source Code. - -The "source code" for a work means the preferred form of the work -for making modifications to it. "Object code" means any non-source -form of a work. - -A "Standard Interface" means an interface that either is an official -standard defined by a recognized standards body, or, in the case of -interfaces specified for a particular programming language, one that -is widely used among developers working in that language. - -The "System Libraries" of an executable work include anything, other -than the work as a whole, that (a) is included in the normal form of -packaging a Major Component, but which is not part of that Major -Component, and (b) serves only to enable use of the work with that -Major Component, or to implement a Standard Interface for which an -implementation is available to the public in source code form. A -"Major Component", in this context, means a major essential component -(kernel, window system, and so on) of the specific operating system -(if any) on which the executable work runs, or a compiler used to -produce the work, or an object code interpreter used to run it. - -The "Corresponding Source" for a work in object code form means all -the source code needed to generate, install, and (for an executable -work) run the object code and to modify the work, including scripts to -control those activities. However, it does not include the work's -System Libraries, or general-purpose tools or generally available free -programs which are used unmodified in performing those activities but -which are not part of the work. For example, Corresponding Source -includes interface definition files associated with source files for -the work, and the source code for shared libraries and dynamically -linked subprograms that the work is specifically designed to require, -such as by intimate data communication or control flow between those -subprograms and other parts of the work. - -The Corresponding Source need not include anything that users -can regenerate automatically from other parts of the Corresponding -Source. - -The Corresponding Source for a work in source code form is that -same work. - -2. Basic Permissions. - -All rights granted under this License are granted for the term of -copyright on the Program, and are irrevocable provided the stated -conditions are met. This License explicitly affirms your unlimited -permission to run the unmodified Program. The output from running a -covered work is covered by this License only if the output, given its -content, constitutes a covered work. This License acknowledges your -rights of fair use or other equivalent, as provided by copyright law. - -You may make, run and propagate covered works that you do not -convey, without conditions so long as your license otherwise remains -in force. You may convey covered works to others for the sole purpose -of having them make modifications exclusively for you, or provide you -with facilities for running those works, provided that you comply with -the terms of this License in conveying all material for which you do -not control copyright. Those thus making or running the covered works -for you must do so exclusively on your behalf, under your direction -and control, on terms that prohibit them from making any copies of -your copyrighted material outside their relationship with you. - -Conveying under any other circumstances is permitted solely under -the conditions stated below. Sublicensing is not allowed; section 10 -makes it unnecessary. - -3. Protecting Users' Legal Rights From Anti-Circumvention Law. - -No covered work shall be deemed part of an effective technological -measure under any applicable law fulfilling obligations under article -11 of the WIPO copyright treaty adopted on 20 December 1996, or -similar laws prohibiting or restricting circumvention of such -measures. - -When you convey a covered work, you waive any legal power to forbid -circumvention of technological measures to the extent such circumvention -is effected by exercising rights under this License with respect to -the covered work, and you disclaim any intention to limit operation or -modification of the work as a means of enforcing, against the work's -users, your or third parties' legal rights to forbid circumvention of -technological measures. - -4. Conveying Verbatim Copies. - -You may convey verbatim copies of the Program's source code as you -receive it, in any medium, provided that you conspicuously and -appropriately publish on each copy an appropriate copyright notice; -keep intact all notices stating that this License and any -non-permissive terms added in accord with section 7 apply to the code; -keep intact all notices of the absence of any warranty; and give all -recipients a copy of this License along with the Program. - -You may charge any price or no price for each copy that you convey, -and you may offer support or warranty protection for a fee. - -5. Conveying Modified Source Versions. - -You may convey a work based on the Program, or the modifications to -produce it from the Program, in the form of source code under the -terms of section 4, provided that you also meet all of these conditions: - -a) The work must carry prominent notices stating that you modified -it, and giving a relevant date. - -b) The work must carry prominent notices stating that it is -released under this License and any conditions added under section -7. This requirement modifies the requirement in section 4 to -"keep intact all notices". - -c) You must license the entire work, as a whole, under this -License to anyone who comes into possession of a copy. This -License will therefore apply, along with any applicable section 7 -additional terms, to the whole of the work, and all its parts, -regardless of how they are packaged. This License gives no -permission to license the work in any other way, but it does not -invalidate such permission if you have separately received it. - -d) If the work has interactive user interfaces, each must display -Appropriate Legal Notices; however, if the Program has interactive -interfaces that do not display Appropriate Legal Notices, your -work need not make them do so. - -A compilation of a covered work with other separate and independent -works, which are not by their nature extensions of the covered work, -and which are not combined with it such as to form a larger program, -in or on a volume of a storage or distribution medium, is called an -"aggregate" if the compilation and its resulting copyright are not -used to limit the access or legal rights of the compilation's users -beyond what the individual works permit. Inclusion of a covered work -in an aggregate does not cause this License to apply to the other -parts of the aggregate. - -6. Conveying Non-Source Forms. - -You may convey a covered work in object code form under the terms -of sections 4 and 5, provided that you also convey the -machine-readable Corresponding Source under the terms of this License, -in one of these ways: - -a) Convey the object code in, or embodied in, a physical product -(including a physical distribution medium), accompanied by the -Corresponding Source fixed on a durable physical medium -customarily used for software interchange. - -b) Convey the object code in, or embodied in, a physical product -(including a physical distribution medium), accompanied by a -written offer, valid for at least three years and valid for as -long as you offer spare parts or customer support for that product -model, to give anyone who possesses the object code either (1) a -copy of the Corresponding Source for all the software in the -product that is covered by this License, on a durable physical -medium customarily used for software interchange, for a price no -more than your reasonable cost of physically performing this -conveying of source, or (2) access to copy the -Corresponding Source from a network server at no charge. - -c) Convey individual copies of the object code with a copy of the -written offer to provide the Corresponding Source. This -alternative is allowed only occasionally and noncommercially, and -only if you received the object code with such an offer, in accord -with subsection 6b. - -d) Convey the object code by offering access from a designated -place (gratis or for a charge), and offer equivalent access to the -Corresponding Source in the same way through the same place at no -further charge. You need not require recipients to copy the -Corresponding Source along with the object code. If the place to -copy the object code is a network server, the Corresponding Source -may be on a different server (operated by you or a third party) -that supports equivalent copying facilities, provided you maintain -clear directions next to the object code saying where to find the -Corresponding Source. Regardless of what server hosts the -Corresponding Source, you remain obligated to ensure that it is -available for as long as needed to satisfy these requirements. - -e) Convey the object code using peer-to-peer transmission, provided -you inform other peers where the object code and Corresponding -Source of the work are being offered to the general public at no -charge under subsection 6d. - -A separable portion of the object code, whose source code is excluded -from the Corresponding Source as a System Library, need not be -included in conveying the object code work. - -A "User Product" is either (1) a "consumer product", which means any -tangible personal property which is normally used for personal, family, -or household purposes, or (2) anything designed or sold for incorporation -into a dwelling. In determining whether a product is a consumer product, -doubtful cases shall be resolved in favor of coverage. For a particular -product received by a particular user, "normally used" refers to a -typical or common use of that class of product, regardless of the status -of the particular user or of the way in which the particular user -actually uses, or expects or is expected to use, the product. A product -is a consumer product regardless of whether the product has substantial -commercial, industrial or non-consumer uses, unless such uses represent -the only significant mode of use of the product. - -"Installation Information" for a User Product means any methods, -procedures, authorization keys, or other information required to install -and execute modified versions of a covered work in that User Product from -a modified version of its Corresponding Source. The information must -suffice to ensure that the continued functioning of the modified object -code is in no case prevented or interfered with solely because -modification has been made. - -If you convey an object code work under this section in, or with, or -specifically for use in, a User Product, and the conveying occurs as -part of a transaction in which the right of possession and use of the -User Product is transferred to the recipient in perpetuity or for a -fixed term (regardless of how the transaction is characterized), the -Corresponding Source conveyed under this section must be accompanied -by the Installation Information. But this requirement does not apply -if neither you nor any third party retains the ability to install -modified object code on the User Product (for example, the work has -been installed in ROM). - -The requirement to provide Installation Information does not include a -requirement to continue to provide support service, warranty, or updates -for a work that has been modified or installed by the recipient, or for -the User Product in which it has been modified or installed. Access to a -network may be denied when the modification itself materially and -adversely affects the operation of the network or violates the rules and -protocols for communication across the network. - -Corresponding Source conveyed, and Installation Information provided, -in accord with this section must be in a format that is publicly -documented (and with an implementation available to the public in -source code form), and must require no special password or key for -unpacking, reading or copying. - -7. Additional Terms. - -"Additional permissions" are terms that supplement the terms of this -License by making exceptions from one or more of its conditions. -Additional permissions that are applicable to the entire Program shall -be treated as though they were included in this License, to the extent -that they are valid under applicable law. If additional permissions -apply only to part of the Program, that part may be used separately -under those permissions, but the entire Program remains governed by -this License without regard to the additional permissions. - -When you convey a copy of a covered work, you may at your option -remove any additional permissions from that copy, or from any part of -it. (Additional permissions may be written to require their own -removal in certain cases when you modify the work.) You may place -additional permissions on material, added by you to a covered work, -for which you have or can give appropriate copyright permission. - -Notwithstanding any other provision of this License, for material you -add to a covered work, you may (if authorized by the copyright holders of -that material) supplement the terms of this License with terms: - -a) Disclaiming warranty or limiting liability differently from the -terms of sections 15 and 16 of this License; or - -b) Requiring preservation of specified reasonable legal notices or -author attributions in that material or in the Appropriate Legal -Notices displayed by works containing it; or - -c) Prohibiting misrepresentation of the origin of that material, or -requiring that modified versions of such material be marked in -reasonable ways as different from the original version; or - -d) Limiting the use for publicity purposes of names of licensors or -authors of the material; or - -e) Declining to grant rights under trademark law for use of some -trade names, trademarks, or service marks; or - -f) Requiring indemnification of licensors and authors of that -material by anyone who conveys the material (or modified versions of -it) with contractual assumptions of liability to the recipient, for -any liability that these contractual assumptions directly impose on -those licensors and authors. - -All other non-permissive additional terms are considered "further -restrictions" within the meaning of section 10. If the Program as you -received it, or any part of it, contains a notice stating that it is -governed by this License along with a term that is a further -restriction, you may remove that term. If a license document contains -a further restriction but permits relicensing or conveying under this -License, you may add to a covered work material governed by the terms -of that license document, provided that the further restriction does -not survive such relicensing or conveying. - -If you add terms to a covered work in accord with this section, you -must place, in the relevant source files, a statement of the -additional terms that apply to those files, or a notice indicating -where to find the applicable terms. - -Additional terms, permissive or non-permissive, may be stated in the -form of a separately written license, or stated as exceptions; -the above requirements apply either way. - -8. Termination. - -You may not propagate or modify a covered work except as expressly -provided under this License. Any attempt otherwise to propagate or -modify it is void, and will automatically terminate your rights under -this License (including any patent licenses granted under the third -paragraph of section 11). - -However, if you cease all violation of this License, then your -license from a particular copyright holder is reinstated (a) -provisionally, unless and until the copyright holder explicitly and -finally terminates your license, and (b) permanently, if the copyright -holder fails to notify you of the violation by some reasonable means -prior to 60 days after the cessation. - -Moreover, your license from a particular copyright holder is -reinstated permanently if the copyright holder notifies you of the -violation by some reasonable means, this is the first time you have -received notice of violation of this License (for any work) from that -copyright holder, and you cure the violation prior to 30 days after -your receipt of the notice. - -Termination of your rights under this section does not terminate the -licenses of parties who have received copies or rights from you under -this License. If your rights have been terminated and not permanently -reinstated, you do not qualify to receive new licenses for the same -material under section 10. - -9. Acceptance Not Required for Having Copies. - -You are not required to accept this License in order to receive or -run a copy of the Program. Ancillary propagation of a covered work -occurring solely as a consequence of using peer-to-peer transmission -to receive a copy likewise does not require acceptance. However, -nothing other than this License grants you permission to propagate or -modify any covered work. These actions infringe copyright if you do -not accept this License. Therefore, by modifying or propagating a -covered work, you indicate your acceptance of this License to do so. - -10. Automatic Licensing of Downstream Recipients. - -Each time you convey a covered work, the recipient automatically -receives a license from the original licensors, to run, modify and -propagate that work, subject to this License. You are not responsible -for enforcing compliance by third parties with this License. - -An "entity transaction" is a transaction transferring control of an -organization, or substantially all assets of one, or subdividing an -organization, or merging organizations. If propagation of a covered -work results from an entity transaction, each party to that -transaction who receives a copy of the work also receives whatever -licenses to the work the party's predecessor in interest had or could -give under the previous paragraph, plus a right to possession of the -Corresponding Source of the work from the predecessor in interest, if -the predecessor has it or can get it with reasonable efforts. - -You may not impose any further restrictions on the exercise of the -rights granted or affirmed under this License. For example, you may -not impose a license fee, royalty, or other charge for exercise of -rights granted under this License, and you may not initiate litigation -(including a cross-claim or counterclaim in a lawsuit) alleging that -any patent claim is infringed by making, using, selling, offering for -sale, or importing the Program or any portion of it. - -11. Patents. - -A "contributor" is a copyright holder who authorizes use under this -License of the Program or a work on which the Program is based. The -work thus licensed is called the contributor's "contributor version". - -A contributor's "essential patent claims" are all patent claims -owned or controlled by the contributor, whether already acquired or -hereafter acquired, that would be infringed by some manner, permitted -by this License, of making, using, or selling its contributor version, -but do not include claims that would be infringed only as a -consequence of further modification of the contributor version. For -purposes of this definition, "control" includes the right to grant -patent sublicenses in a manner consistent with the requirements of -this License. - -Each contributor grants you a non-exclusive, worldwide, royalty-free -patent license under the contributor's essential patent claims, to -make, use, sell, offer for sale, import and otherwise run, modify and -propagate the contents of its contributor version. - -In the following three paragraphs, a "patent license" is any express -agreement or commitment, however denominated, not to enforce a patent -(such as an express permission to practice a patent or covenant not to -sue for patent infringement). To "grant" such a patent license to a -party means to make such an agreement or commitment not to enforce a -patent against the party. - -If you convey a covered work, knowingly relying on a patent license, -and the Corresponding Source of the work is not available for anyone -to copy, free of charge and under the terms of this License, through a -publicly available network server or other readily accessible means, -then you must either (1) cause the Corresponding Source to be so -available, or (2) arrange to deprive yourself of the benefit of the -patent license for this particular work, or (3) arrange, in a manner -consistent with the requirements of this License, to extend the patent -license to downstream recipients. "Knowingly relying" means you have -actual knowledge that, but for the patent license, your conveying the -covered work in a country, or your recipient's use of the covered work -in a country, would infringe one or more identifiable patents in that -country that you have reason to believe are valid. - -If, pursuant to or in connection with a single transaction or -arrangement, you convey, or propagate by procuring conveyance of, a -covered work, and grant a patent license to some of the parties -receiving the covered work authorizing them to use, propagate, modify -or convey a specific copy of the covered work, then the patent license -you grant is automatically extended to all recipients of the covered -work and works based on it. - -A patent license is "discriminatory" if it does not include within -the scope of its coverage, prohibits the exercise of, or is -conditioned on the non-exercise of one or more of the rights that are -specifically granted under this License. You may not convey a covered -work if you are a party to an arrangement with a third party that is -in the business of distributing software, under which you make payment -to the third party based on the extent of your activity of conveying -the work, and under which the third party grants, to any of the -parties who would receive the covered work from you, a discriminatory -patent license (a) in connection with copies of the covered work -conveyed by you (or copies made from those copies), or (b) primarily -for and in connection with specific products or compilations that -contain the covered work, unless you entered into that arrangement, -or that patent license was granted, prior to 28 March 2007. - -Nothing in this License shall be construed as excluding or limiting -any implied license or other defenses to infringement that may -otherwise be available to you under applicable patent law. - -12. No Surrender of Others' Freedom. - -If conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot convey a -covered work so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you may -not convey it at all. For example, if you agree to terms that obligate you -to collect a royalty for further conveying from those to whom you convey -the Program, the only way you could satisfy both those terms and this -License would be to refrain entirely from conveying the Program. - -13. Use with the GNU Affero General Public License. - -Notwithstanding any other provision of this License, you have -permission to link or combine any covered work with a work licensed -under version 3 of the GNU Affero General Public License into a single -combined work, and to convey the resulting work. The terms of this -License will continue to apply to the part which is the covered work, -but the special requirements of the GNU Affero General Public License, -section 13, concerning interaction through a network will apply to the -combination as such. - -14. Revised Versions of this License. - -The Free Software Foundation may publish revised and/or new versions of -the GNU General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - -Each version is given a distinguishing version number. If the -Program specifies that a certain numbered version of the GNU General -Public License "or any later version" applies to it, you have the -option of following the terms and conditions either of that numbered -version or of any later version published by the Free Software -Foundation. If the Program does not specify a version number of the -GNU General Public License, you may choose any version ever published -by the Free Software Foundation. - -If the Program specifies that a proxy can decide which future -versions of the GNU General Public License can be used, that proxy's -public statement of acceptance of a version permanently authorizes you -to choose that version for the Program. - -Later license versions may give you additional or different -permissions. However, no additional obligations are imposed on any -author or copyright holder as a result of your choosing to follow a -later version. - -15. Disclaimer of Warranty. - -THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY -APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT -HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY -OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM -IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF -ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - -16. Limitation of Liability. - -IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS -THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY -GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE -USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF -DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD -PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), -EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF -SUCH DAMAGES. - -17. Interpretation of Sections 15 and 16. - -If the disclaimer of warranty and limitation of liability provided -above cannot be given local legal effect according to their terms, -reviewing courts shall apply local law that most closely approximates -an absolute waiver of all civil liability in connection with the -Program, unless a warranty or assumption of liability accompanies a -copy of the Program in return for a fee. - - END OF TERMS AND CONDITIONS - -How to Apply These Terms to Your New Programs - -If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - -To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -state the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - -{one line to give the program's name and a brief idea of what it does.} -Copyright (C) {year} {name of author} - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see . - -Also add information on how to contact you by electronic and paper mail. - -If the program does terminal interaction, make it output a short -notice like this when it starts in an interactive mode: - -{project} Copyright (C) {year} {fullname} -This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. -This is free software, and you are welcome to redistribute it -under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, your program's commands -might be different; for a GUI interface, you would use an "about box". - -You should also get your employer (if you work as a programmer) or school, -if any, to sign a "copyright disclaimer" for the program, if necessary. -For more information on this, and how to apply and follow the GNU GPL, see -. - -The GNU General Public License does not permit incorporating your program -into proprietary programs. If your program is a subroutine library, you -may consider it more useful to permit linking proprietary applications with -the library. If this is what you want to do, use the GNU Lesser General -Public License instead of this License. But first, please read -. diff --git a/wire-ios-link-preview/README.md b/wire-ios-link-preview/README.md deleted file mode 100644 index 3a26b16adef..00000000000 --- a/wire-ios-link-preview/README.md +++ /dev/null @@ -1,39 +0,0 @@ -# Wire™ -[![Wire logo](https://github.com/wireapp/wire/blob/master/assets/header-small.png?raw=true)](https://wire.com/jobs/) - -[![Build Status](https://dev.azure.com/wireswiss/Wire%20iOS/_apis/build/status/Frameworks/wire-ios-link-preview)](https://dev.azure.com/wireswiss/Wire%20iOS/_build/latest?definitionId=17) [![codecov](https://codecov.io/gh/wireapp/wire-ios-link-preview/branch/develop/graph/badge.svg)](https://codecov.io/gh/wireapp/wire-ios-link-preview) - - -This repository is part of the source code of Wire. You can find more information at [wire.com](https://wire.com) or by contacting opensource@wire.com. - -You can find the published source code at [github.com/wireapp/wire](https://github.com/wireapp/wire). - -For licensing information, see the attached LICENSE file and the list of third-party licenses at [wire.com/legal/licenses/](https://wire.com/legal/licenses/). - -# WireLinkPreview - -This framework is part of Wire iOS. Additional documentation is available in the [Wire iOS wiki](https://github.com/wireapp/wire-ios/wiki). - -WireLinkPreview is a Swift framework that can be used to fetch and parse Open Graph data that is present on most webpages (see http://ogp.me/ for more information and https://developers.facebook.com/tools/debug/sharing to debug open graph data). - -### How to build - -This framework is using Carthage to manage its dependencies. To pull the dependencies binaries, `run carthage bootstrap --platform ios`. - -You can now open the Xcode project and build. - -### Usage: - -Consumers of this framework should mostly interact with the `LinkPreviewDetector` type, it can be used to check if a given text contains a link using the `containsLink:inText` method and if it does it can be used to download the previews asynchronously using `downloadLinkPreviews:inText:completion`. - -```swift -let text = "Text containing a link to your awesome tweet" -let detector = LinkPreviewDetector(resultsQueue: .main) - -guard detector.containsLink(inText: text) else { return } -detector.downloadLinkPreviews(inText: text) { previews in - // Do something with the previews -} -``` - -A call to this method will also download the images specified in the Open Graph data. The completion returns an array of `LinkPreview` objects which currently are either of type `ArticleMetadata` or `TwitterStatusMetadata`, while the count of elements in the array is also limited to one at for now. Note, use the delegate `LinkPreviewDetectorDelegate` to control which which detected links will have their preview generated. diff --git a/wire-ios-link-preview/Resources/Configurations/WireLinkPreview.xcconfig b/wire-ios-link-preview/Resources/Configurations/WireLinkPreview.xcconfig deleted file mode 100644 index 4faa5caca11..00000000000 --- a/wire-ios-link-preview/Resources/Configurations/WireLinkPreview.xcconfig +++ /dev/null @@ -1,20 +0,0 @@ -// -// Wire -// Copyright (C) 2024 Wire Swiss GmbH -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see http://www.gnu.org/licenses/. -// - -APPLICATION_EXTENSION_API_ONLY = YES -PRODUCT_NAME = WireLinkPreview diff --git a/wire-ios-link-preview/Resources/Configurations/version.xcconfig b/wire-ios-link-preview/Resources/Configurations/version.xcconfig deleted file mode 100644 index 419c2aa86bb..00000000000 --- a/wire-ios-link-preview/Resources/Configurations/version.xcconfig +++ /dev/null @@ -1,20 +0,0 @@ -// -// Wire -// Copyright (C) 2024 Wire Swiss GmbH -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see http://www.gnu.org/licenses/. -// - -MAJOR_VERSION = 37 -CURRENT_PROJECT_VERSION = 37.0.0 diff --git a/wire-ios-link-preview/Resources/Configurations/zmc-config/ios-test-host.xcconfig b/wire-ios-link-preview/Resources/Configurations/zmc-config/ios-test-host.xcconfig deleted file mode 100644 index 5e303c2201a..00000000000 --- a/wire-ios-link-preview/Resources/Configurations/zmc-config/ios-test-host.xcconfig +++ /dev/null @@ -1,17 +0,0 @@ -// -// Wire -// Copyright (C) 2024 Wire Swiss GmbH -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see http://www.gnu.org/licenses/. -// diff --git a/wire-ios-link-preview/Resources/Configurations/zmc-config/ios-test-target.xcconfig b/wire-ios-link-preview/Resources/Configurations/zmc-config/ios-test-target.xcconfig deleted file mode 100644 index 7dd1c4af9e0..00000000000 --- a/wire-ios-link-preview/Resources/Configurations/zmc-config/ios-test-target.xcconfig +++ /dev/null @@ -1,19 +0,0 @@ -// -// Wire -// Copyright (C) 2024 Wire Swiss GmbH -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see http://www.gnu.org/licenses/. -// - -#include "tests.xcconfig" diff --git a/wire-ios-link-preview/Resources/Configurations/zmc-config/project-common.xcconfig b/wire-ios-link-preview/Resources/Configurations/zmc-config/project-common.xcconfig deleted file mode 100644 index f0240eb1648..00000000000 --- a/wire-ios-link-preview/Resources/Configurations/zmc-config/project-common.xcconfig +++ /dev/null @@ -1,24 +0,0 @@ -// -// Wire -// Copyright (C) 2024 Wire Swiss GmbH -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see http://www.gnu.org/licenses/. -// - -#include "warnings.xcconfig" -#include "../version.xcconfig" -#include "../../../../xcconfigs/ios-arm64Simulator.xcconfig" - -// info.plist -INFOPLIST_PREPROCESS = YES diff --git a/wire-ios-link-preview/Resources/Configurations/zmc-config/project-debug.xcconfig b/wire-ios-link-preview/Resources/Configurations/zmc-config/project-debug.xcconfig deleted file mode 100644 index dec7e4bb9bb..00000000000 --- a/wire-ios-link-preview/Resources/Configurations/zmc-config/project-debug.xcconfig +++ /dev/null @@ -1,42 +0,0 @@ -// -// Wire -// Copyright (C) 2024 Wire Swiss GmbH -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see http://www.gnu.org/licenses/. -// - -#include "warnings.xcconfig" -#include "project-common.xcconfig" - -// Architectures -// -ONLY_ACTIVE_ARCH = YES - -// Deployment -// -COPY_PHASE_STRIP = NO - -// LLVM - Code Generation -// -GCC_OPTIMIZATION_LEVEL = 0 - -// Swift Compiler - Code Generation -// -SWIFT_OPTIMIZATION_LEVEL = -Onone -OTHER_SWIFT_FLAGS = -D DEBUG -ENABLE_TESTABILITY = YES - -// LLVM - Preprocessing -// -GCC_PREPROCESSOR_DEFINITIONS = DEBUG=1 ZM_MAJOR_VERSION=$(MAJOR_VERSION) $(inherited) $(GCC_PREPROCESSOR_DEFINITIONS_shared) diff --git a/wire-ios-link-preview/Resources/Configurations/zmc-config/project.xcconfig b/wire-ios-link-preview/Resources/Configurations/zmc-config/project.xcconfig deleted file mode 100644 index caa1ca81f68..00000000000 --- a/wire-ios-link-preview/Resources/Configurations/zmc-config/project.xcconfig +++ /dev/null @@ -1,33 +0,0 @@ -// -// Wire -// Copyright (C) 2024 Wire Swiss GmbH -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see http://www.gnu.org/licenses/. -// - -#include "warnings.xcconfig" -#include "project-common.xcconfig" - -// Build Options -// -DEBUG_INFORMATION_FORMAT = dwarf-with-dsym -VALIDATE_PRODUCT = YES - -// Deployment -// -COPY_PHASE_STRIP = YES - -// LLVM - Preprocessing -// -GCC_PREPROCESSOR_DEFINITIONS = DEBUG=0 ZM_MAJOR_VERSION=$(MAJOR_VERSION) $(inherited) $(GCC_PREPROCESSOR_DEFINITIONS_shared) diff --git a/wire-ios-link-preview/Resources/Configurations/zmc-config/tests.xcconfig b/wire-ios-link-preview/Resources/Configurations/zmc-config/tests.xcconfig deleted file mode 100644 index 630311c4740..00000000000 --- a/wire-ios-link-preview/Resources/Configurations/zmc-config/tests.xcconfig +++ /dev/null @@ -1,21 +0,0 @@ -// -// Wire -// Copyright (C) 2024 Wire Swiss GmbH -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see http://www.gnu.org/licenses/. -// - -// Preprocessing -// -GCC_PREPROCESSOR_DEFINITIONS_shared = TEST_TARGET=1 diff --git a/wire-ios-link-preview/Resources/Configurations/zmc-config/warnings.xcconfig b/wire-ios-link-preview/Resources/Configurations/zmc-config/warnings.xcconfig deleted file mode 100644 index 1e5134c877e..00000000000 --- a/wire-ios-link-preview/Resources/Configurations/zmc-config/warnings.xcconfig +++ /dev/null @@ -1,71 +0,0 @@ -// -// Wire -// Copyright (C) 2024 Wire Swiss GmbH -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see http://www.gnu.org/licenses/. -// - -// Warnings - All languages -// -CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR -CLANG_WARN_EMPTY_BODY = YES -CLANG_WARN_BOOL_CONVERSION = YES -CLANG_WARN_CONSTANT_CONVERSION = YES -GCC_WARN_64_TO_32_BIT_CONVERSION = YES -CLANG_WARN_ENUM_CONVERSION = YES -CLANG_WARN_INT_CONVERSION = YES -GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR -GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE -GCC_WARN_UNUSED_FUNCTION = YES -GCC_WARN_UNUSED_VARIABLE = YES -GCC_WARN_FOUR_CHARACTER_CONSTANTS = YES -GCC_WARN_SHADOW = YES -GCC_WARN_ABOUT_MISSING_FIELD_INITIALIZERS = YES -GCC_WARN_ABOUT_MISSING_PROTOTYPES = YES -GCC_WARN_ABOUT_MISSING_NEWLINE = NO -GCC_WARN_SIGN_COMPARE = YES -CLANG_WARN_SUSPICIOUS_IMPLICIT_CONVERSION = YES -GCC_TREAT_INCOMPATIBLE_POINTER_TYPE_WARNINGS_AS_ERRORS = YES -GCC_WARN_UNKNOWN_PRAGMAS = YES -GCC_WARN_UNUSED_LABEL = YES -GCC_WARN_UNUSED_PARAMETER = YES -CLANG_WARN_IMPLICIT_SIGN_CONVERSION = YES -GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES -CLANG_WARN_UNREACHABLE_CODE = YES - -// Warnings - Objective C -// -CLANG_WARN__DUPLICATE_METHOD_MATCH = YES -CLANG_WARN_OBJC_IMPLICIT_ATOMIC_PROPERTIES = YES -CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES -CLANG_WARN_OBJC_REPEATED_USE_OF_WEAK = YES -GCC_WARN_MULTIPLE_DEFINITION_TYPES_FOR_SELECTOR = YES -CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES -GCC_WARN_STRICT_SELECTOR_MATCH = YES -GCC_WARN_UNDECLARED_SELECTOR = YES -CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR - -// Static Analyzer - Issues - Security -// -CLANG_ANALYZER_SECURITY_FLOATLOOPCOUNTER = YES -CLANG_ANALYZER_SECURITY_INSECUREAPI_RAND = YES -CLANG_ANALYZER_SECURITY_INSECUREAPI_STRCPY = YES - -CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; -CLANG_WARN_COMMA = YES; -CLANG_WARN_INFINITE_RECURSION = YES; -CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; -CLANG_WARN_STRICT_PROTOTYPES = YES; -CLANG_WARN_SUSPICIOUS_MOVE = YES; -GCC_NO_COMMON_BLOCKS = YES; diff --git a/wire-ios-link-preview/Scripts/config.txt b/wire-ios-link-preview/Scripts/config.txt deleted file mode 100644 index fae3b2598a5..00000000000 --- a/wire-ios-link-preview/Scripts/config.txt +++ /dev/null @@ -1,4 +0,0 @@ -framework=WireLinkPreview -repository=wire-ios-link-preview -release-name-format=The {BUZZWORD} {BUZZWORD} {ANIMAL} -organization=wireapp diff --git a/wire-ios-link-preview/Scripts/download_pages.sh b/wire-ios-link-preview/Scripts/download_pages.sh deleted file mode 100755 index 3179f219f16..00000000000 --- a/wire-ios-link-preview/Scripts/download_pages.sh +++ /dev/null @@ -1,34 +0,0 @@ -#!/bin/sh - -export TEST_RESOURCES_DIR='WireLinkPreviewTests' -export USER_AGENT='Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36' - -echo "Downloading sample pages" - -curl -L -A "$USER_AGENT" http://www.theverge.com/2016/6/29/12054410/apple-tech-death-chart-headphone-jack-ports-usb-c > $TEST_RESOURCES_DIR/verge_full.txt -curl -L -A "$USER_AGENT" http://www.polygon.com/2016/7/11/12148448/which-pokemon-go-team-should-i-pick > $TEST_RESOURCES_DIR/polygon_full.txt -curl -L -A "$USER_AGENT" https://foursquare.com/neta_msf > $TEST_RESOURCES_DIR/foursquare_full.txt -curl -L -A "$USER_AGENT" http://www.theguardian.com/technology/2016/jul/01/tesla-autopilot-model-s-crash-how-does-it-work > $TEST_RESOURCES_DIR/guardian_full.txt -curl -L -A "$USER_AGENT" https://www.instagram.com/p/6AiRp5TOXB/ > $TEST_RESOURCES_DIR/instagram_full.txt -curl -L -A "$USER_AGENT" https://medium.com/wire-news/the-tune-for-this-summer-audio-filters-eca8cb0b4c57 > $TEST_RESOURCES_DIR/medium_full.txt -curl -L -A "$USER_AGENT" http://www.nytimes.com/2016/07/03/opinion/sunday/brazils-olympic-catastrophe.html > $TEST_RESOURCES_DIR/nytimes_full.txt -curl -L -A "$USER_AGENT" https://twitter.com/ericasadun/status/743868311843151872 > $TEST_RESOURCES_DIR/twitter_full.txt -curl -L -A "$USER_AGENT" https://twitter.com/ayanonagon/status/749726072623685632 > $TEST_RESOURCES_DIR/twitter_images_full.txt -curl -L -A "$USER_AGENT" https://vimeo.com/170888135 > $TEST_RESOURCES_DIR/vimeo_full.txt -curl -L -A "$USER_AGENT" https://www.washingtonpost.com/news/the-switch/wp/2016/07/12/holocaust-museum-to-visitors-please-stop-catching-pokemon-here > $TEST_RESOURCES_DIR/washington_post_full.txt -curl -L -A "$USER_AGENT" https://wire.com > $TEST_RESOURCES_DIR/wire_full.txt -curl -L -A "$USER_AGENT" https://www.youtube.com/watch?v=iAgKHSNqxa8 > $TEST_RESOURCES_DIR/youtube_full.txt -curl -L -A "$USER_AGENT" https://de.sports.yahoo.com/news/mario-gomez-besiktas-verl%c3%a4ngert-leihe-115423346.html > $TEST_RESOURCES_DIR/yahoo_sports_full.txt -curl -L -A "$USER_AGENT" https://itunes.apple.com/de/album/ellipsis-deluxe/id1093554521 > $TEST_RESOURCES_DIR/itunes_full.txt -curl -L -A "$USER_AGENT" https://itunes.apple.com/de/album/ellipsis-deluxe/id1093554521 > $TEST_RESOURCES_DIR/itunes_without_title_full.txt - -pages=( "verge" "polygon" "foursquare" "guardian" "instagram" "medium" "nytimes" "twitter" "twitter_images" "vimeo" "washington_post" "wire" "youtube" "yahoo_sports" "itunes" "itunes_without_title") - -echo "Processing sample pages..." - -for i in "${pages[@]}" -do - perl -0777 -pe 's/^.*?.*$/<\/head>/igs' > $TEST_RESOURCES_DIR/${i}_head.txt -done - -echo "Done" diff --git a/wire-ios-link-preview/WireLinkPreview.xcodeproj/project.pbxproj b/wire-ios-link-preview/WireLinkPreview.xcodeproj/project.pbxproj deleted file mode 100644 index 9d8e5143608..00000000000 --- a/wire-ios-link-preview/WireLinkPreview.xcodeproj/project.pbxproj +++ /dev/null @@ -1,886 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 54; - objects = { - -/* Begin PBXBuildFile section */ - 5E2BEC54214BA4A600E65B53 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E2BEC53214BA4A600E65B53 /* AppDelegate.swift */; }; - 5E2BEC56214BA4A600E65B53 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E2BEC55214BA4A600E65B53 /* ViewController.swift */; }; - 5E2BEC59214BA4A600E65B53 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 5E2BEC57214BA4A600E65B53 /* Main.storyboard */; }; - 5E2BEC5B214BA4A700E65B53 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 5E2BEC5A214BA4A700E65B53 /* Assets.xcassets */; }; - 5E9EA4B72241426A00D401B2 /* NSDataDetector+Links.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E9EA4B62241426A00D401B2 /* NSDataDetector+Links.swift */; }; - 5E9EA4BD2241445F00D401B2 /* LinkAttachmentTypes.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E9EA4BC2241445F00D401B2 /* LinkAttachmentTypes.swift */; }; - 5E9EA4BF22414FE100D401B2 /* LinkAttachmentDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E9EA4BE22414FE100D401B2 /* LinkAttachmentDetector.swift */; }; - 5E9EA4C62242503F00D401B2 /* NSDataDetector+LinkAttachments.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E9EA4C52242503E00D401B2 /* NSDataDetector+LinkAttachments.swift */; }; - 5E9EA4C8224257C100D401B2 /* NSDataDetectorLinksTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E9EA4C7224257C100D401B2 /* NSDataDetectorLinksTests.swift */; }; - 5E9EA4CA22425C4E00D401B2 /* NSDataDetectorAttachmentTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E9EA4C922425C4E00D401B2 /* NSDataDetectorAttachmentTests.swift */; }; - 5E9EA4CC2242732F00D401B2 /* LinkAttachmentTypesTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E9EA4CB2242732F00D401B2 /* LinkAttachmentTypesTests.swift */; }; - 5E9EA4CE2242785900D401B2 /* LinkAttachmentDetectorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E9EA4CD2242785900D401B2 /* LinkAttachmentDetectorTests.swift */; }; - 5E9EA4D022427BBB00D401B2 /* soundcloud_track_head.txt in Resources */ = {isa = PBXBuildFile; fileRef = 5E9EA4CF22427BBB00D401B2 /* soundcloud_track_head.txt */; }; - 5E9EA4D222427E0300D401B2 /* soundcloud_playlist_head.txt in Resources */ = {isa = PBXBuildFile; fileRef = 5E9EA4D122427E0300D401B2 /* soundcloud_playlist_head.txt */; }; - 5EDF03F4224A208E00C04007 /* HTMLDocument.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5EDF03F3224A208E00C04007 /* HTMLDocument.swift */; }; - 87B48ECB20A088F700DBAD9D /* crash_emoji.txt in Resources */ = {isa = PBXBuildFile; fileRef = 87B48ECA20A088F700DBAD9D /* crash_emoji.txt */; }; - BF21CC8D1E925AA300A874F5 /* foursquare_head.txt in Resources */ = {isa = PBXBuildFile; fileRef = BF21CC6D1E925A9E00A874F5 /* foursquare_head.txt */; }; - BF21CC8E1E925AA300A874F5 /* guardian_head.txt in Resources */ = {isa = PBXBuildFile; fileRef = BF21CC6E1E925A9E00A874F5 /* guardian_head.txt */; }; - BF21CC8F1E925AA300A874F5 /* instagram_head.txt in Resources */ = {isa = PBXBuildFile; fileRef = BF21CC6F1E925A9E00A874F5 /* instagram_head.txt */; }; - BF21CC901E925AA300A874F5 /* itunes_head.txt in Resources */ = {isa = PBXBuildFile; fileRef = BF21CC701E925A9E00A874F5 /* itunes_head.txt */; }; - BF21CC911E925AA300A874F5 /* itunes_without_title_head.txt in Resources */ = {isa = PBXBuildFile; fileRef = BF21CC711E925A9E00A874F5 /* itunes_without_title_head.txt */; }; - BF21CC921E925AA300A874F5 /* medium_head.txt in Resources */ = {isa = PBXBuildFile; fileRef = BF21CC721E925A9E00A874F5 /* medium_head.txt */; }; - BF21CC931E925AA300A874F5 /* nytimes_head.txt in Resources */ = {isa = PBXBuildFile; fileRef = BF21CC731E925A9E00A874F5 /* nytimes_head.txt */; }; - BF21CC941E925AA300A874F5 /* polygon_head.txt in Resources */ = {isa = PBXBuildFile; fileRef = BF21CC741E925A9E00A874F5 /* polygon_head.txt */; }; - BF21CC951E925AA300A874F5 /* twitter_head.txt in Resources */ = {isa = PBXBuildFile; fileRef = BF21CC751E925A9E00A874F5 /* twitter_head.txt */; }; - BF21CC961E925AA300A874F5 /* twitter_images_head.txt in Resources */ = {isa = PBXBuildFile; fileRef = BF21CC761E925A9E00A874F5 /* twitter_images_head.txt */; }; - BF21CC971E925AA300A874F5 /* verge_head.txt in Resources */ = {isa = PBXBuildFile; fileRef = BF21CC771E925A9E00A874F5 /* verge_head.txt */; }; - BF21CC981E925AA300A874F5 /* vimeo_head.txt in Resources */ = {isa = PBXBuildFile; fileRef = BF21CC781E925A9E00A874F5 /* vimeo_head.txt */; }; - BF21CC991E925AA300A874F5 /* washington_post_head.txt in Resources */ = {isa = PBXBuildFile; fileRef = BF21CC791E925A9E00A874F5 /* washington_post_head.txt */; }; - BF21CC9A1E925AA300A874F5 /* wire_head.txt in Resources */ = {isa = PBXBuildFile; fileRef = BF21CC7A1E925A9E00A874F5 /* wire_head.txt */; }; - BF21CC9B1E925AA300A874F5 /* yahoo_sports_head.txt in Resources */ = {isa = PBXBuildFile; fileRef = BF21CC7B1E925A9E00A874F5 /* yahoo_sports_head.txt */; }; - BF21CC9C1E925AA300A874F5 /* youtube_head.txt in Resources */ = {isa = PBXBuildFile; fileRef = BF21CC7C1E925A9E00A874F5 /* youtube_head.txt */; }; - BF4F2B391E925AC9000B22D1 /* ImageDownloader.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B2C1E925AC9000B22D1 /* ImageDownloader.swift */; }; - BF4F2B3B1E925AC9000B22D1 /* LinkPreviewDetector.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B2E1E925AC9000B22D1 /* LinkPreviewDetector.swift */; }; - BF4F2B3C1E925AC9000B22D1 /* LinkPreviewTypes.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B2F1E925AC9000B22D1 /* LinkPreviewTypes.swift */; }; - BF4F2B3D1E925AC9000B22D1 /* MetaStreamContainer.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B301E925AC9000B22D1 /* MetaStreamContainer.swift */; }; - BF4F2B3E1E925AC9000B22D1 /* OpenGraphData.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B311E925AC9000B22D1 /* OpenGraphData.swift */; }; - BF4F2B3F1E925AC9000B22D1 /* OpenGraphDataTypes.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B321E925AC9000B22D1 /* OpenGraphDataTypes.swift */; }; - BF4F2B401E925AC9000B22D1 /* OpenGraphScanner.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B331E925AC9000B22D1 /* OpenGraphScanner.swift */; }; - BF4F2B411E925AC9000B22D1 /* PreviewBlacklist.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B341E925AC9000B22D1 /* PreviewBlacklist.swift */; }; - BF4F2B421E925AC9000B22D1 /* PreviewDownloader.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B351E925AC9000B22D1 /* PreviewDownloader.swift */; }; - BF4F2B441E925AC9000B22D1 /* URLSessionProtocols.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B371E925AC9000B22D1 /* URLSessionProtocols.swift */; }; - BF4F2B451E925AC9000B22D1 /* WireLinkPreview.h in Headers */ = {isa = PBXBuildFile; fileRef = BF4F2B381E925AC9000B22D1 /* WireLinkPreview.h */; settings = {ATTRIBUTES = (Public, ); }; }; - BF4F2B491E925AE8000B22D1 /* DownloaderMocks.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B461E925AE8000B22D1 /* DownloaderMocks.swift */; }; - BF4F2B4A1E925AE8000B22D1 /* OpenGraphMockDataProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B471E925AE8000B22D1 /* OpenGraphMockDataProvider.swift */; }; - BF4F2B4B1E925AE8000B22D1 /* URLMocks.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B481E925AE8000B22D1 /* URLMocks.swift */; }; - BF4F2B561E925AFE000B22D1 /* ImageDownloaderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B4C1E925AFE000B22D1 /* ImageDownloaderTests.swift */; }; - BF4F2B571E925AFE000B22D1 /* E2ETests.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B4D1E925AFE000B22D1 /* E2ETests.swift */; }; - BF4F2B581E925AFE000B22D1 /* LinkPreviewDetectorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B4E1E925AFE000B22D1 /* LinkPreviewDetectorTests.swift */; }; - BF4F2B591E925AFE000B22D1 /* MetaStreamContainerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B4F1E925AFE000B22D1 /* MetaStreamContainerTests.swift */; }; - BF4F2B5A1E925AFE000B22D1 /* OpenGraphDataTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B501E925AFE000B22D1 /* OpenGraphDataTests.swift */; }; - BF4F2B5B1E925AFE000B22D1 /* OpenGraphScannerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B511E925AFE000B22D1 /* OpenGraphScannerTests.swift */; }; - BF4F2B5C1E925AFE000B22D1 /* PreviewBlackListTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B521E925AFE000B22D1 /* PreviewBlackListTests.swift */; }; - BF4F2B5D1E925AFE000B22D1 /* PreviewDownloaderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B531E925AFE000B22D1 /* PreviewDownloaderTests.swift */; }; - BF4F2B5E1E925AFE000B22D1 /* StringXMLEntityParserTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = BF4F2B541E925AFE000B22D1 /* StringXMLEntityParserTests.swift */; }; - BFF057951D25434E004A2C29 /* WireLinkPreview.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = BFF0578A1D25434D004A2C29 /* WireLinkPreview.framework */; }; - CB4B2BB42C7F2D5B00128EFB /* HTMLString in Frameworks */ = {isa = PBXBuildFile; productRef = CB4B2BB32C7F2D5B00128EFB /* HTMLString */; }; - EE9AEC8C2BD158EC00F7853F /* WireLinkPreview.docc in Sources */ = {isa = PBXBuildFile; fileRef = EE9AEC8B2BD158EC00F7853F /* WireLinkPreview.docc */; }; - F1202A761FA0830000296B4B /* crash.txt in Resources */ = {isa = PBXBuildFile; fileRef = F1202A751FA0830000296B4B /* crash.txt */; }; -/* End PBXBuildFile section */ - -/* Begin PBXContainerItemProxy section */ - 5E2BEC63214BA4AE00E65B53 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = BFF057811D25434D004A2C29 /* Project object */; - proxyType = 1; - remoteGlobalIDString = 5E2BEC50214BA4A600E65B53; - remoteInfo = WireLinkPreviewTestsHost; - }; - BFF057961D25434E004A2C29 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = BFF057811D25434D004A2C29 /* Project object */; - proxyType = 1; - remoteGlobalIDString = BFF057891D25434D004A2C29; - remoteInfo = WireLinkPreview; - }; -/* End PBXContainerItemProxy section */ - -/* Begin PBXCopyFilesBuildPhase section */ - BFB7B3D31D81AE7200EBD1C5 /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - 54BD49F91D41FDE5006E29D1 /* README.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = ""; }; - 5E2BEC51214BA4A600E65B53 /* WireLinkPreviewTestsHost.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = WireLinkPreviewTestsHost.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 5E2BEC53214BA4A600E65B53 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - 5E2BEC55214BA4A600E65B53 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; - 5E2BEC58214BA4A600E65B53 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; - 5E2BEC5A214BA4A700E65B53 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - 5E2BEC5F214BA4A700E65B53 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 5E9EA4B62241426A00D401B2 /* NSDataDetector+Links.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "NSDataDetector+Links.swift"; sourceTree = ""; }; - 5E9EA4BC2241445F00D401B2 /* LinkAttachmentTypes.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LinkAttachmentTypes.swift; sourceTree = ""; }; - 5E9EA4BE22414FE100D401B2 /* LinkAttachmentDetector.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LinkAttachmentDetector.swift; sourceTree = ""; }; - 5E9EA4C52242503E00D401B2 /* NSDataDetector+LinkAttachments.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "NSDataDetector+LinkAttachments.swift"; sourceTree = ""; }; - 5E9EA4C7224257C100D401B2 /* NSDataDetectorLinksTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NSDataDetectorLinksTests.swift; sourceTree = ""; }; - 5E9EA4C922425C4E00D401B2 /* NSDataDetectorAttachmentTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NSDataDetectorAttachmentTests.swift; sourceTree = ""; }; - 5E9EA4CB2242732F00D401B2 /* LinkAttachmentTypesTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LinkAttachmentTypesTests.swift; sourceTree = ""; }; - 5E9EA4CD2242785900D401B2 /* LinkAttachmentDetectorTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LinkAttachmentDetectorTests.swift; sourceTree = ""; }; - 5E9EA4CF22427BBB00D401B2 /* soundcloud_track_head.txt */ = {isa = PBXFileReference; lastKnownFileType = text; path = soundcloud_track_head.txt; sourceTree = ""; }; - 5E9EA4D122427E0300D401B2 /* soundcloud_playlist_head.txt */ = {isa = PBXFileReference; lastKnownFileType = text; path = soundcloud_playlist_head.txt; sourceTree = ""; }; - 5EDF03F3224A208E00C04007 /* HTMLDocument.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HTMLDocument.swift; sourceTree = ""; }; - 87B48ECA20A088F700DBAD9D /* crash_emoji.txt */ = {isa = PBXFileReference; lastKnownFileType = text; path = crash_emoji.txt; sourceTree = ""; }; - BF21CC6D1E925A9E00A874F5 /* foursquare_head.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = foursquare_head.txt; path = WireLinkPreviewTests/foursquare_head.txt; sourceTree = SOURCE_ROOT; }; - BF21CC6E1E925A9E00A874F5 /* guardian_head.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = guardian_head.txt; path = WireLinkPreviewTests/guardian_head.txt; sourceTree = SOURCE_ROOT; }; - BF21CC6F1E925A9E00A874F5 /* instagram_head.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = instagram_head.txt; path = WireLinkPreviewTests/instagram_head.txt; sourceTree = SOURCE_ROOT; }; - BF21CC701E925A9E00A874F5 /* itunes_head.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = itunes_head.txt; path = WireLinkPreviewTests/itunes_head.txt; sourceTree = SOURCE_ROOT; }; - BF21CC711E925A9E00A874F5 /* itunes_without_title_head.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = itunes_without_title_head.txt; path = WireLinkPreviewTests/itunes_without_title_head.txt; sourceTree = SOURCE_ROOT; }; - BF21CC721E925A9E00A874F5 /* medium_head.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = medium_head.txt; path = WireLinkPreviewTests/medium_head.txt; sourceTree = SOURCE_ROOT; }; - BF21CC731E925A9E00A874F5 /* nytimes_head.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = nytimes_head.txt; path = WireLinkPreviewTests/nytimes_head.txt; sourceTree = SOURCE_ROOT; }; - BF21CC741E925A9E00A874F5 /* polygon_head.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = polygon_head.txt; path = WireLinkPreviewTests/polygon_head.txt; sourceTree = SOURCE_ROOT; }; - BF21CC751E925A9E00A874F5 /* twitter_head.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = twitter_head.txt; path = WireLinkPreviewTests/twitter_head.txt; sourceTree = SOURCE_ROOT; }; - BF21CC761E925A9E00A874F5 /* twitter_images_head.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = twitter_images_head.txt; path = WireLinkPreviewTests/twitter_images_head.txt; sourceTree = SOURCE_ROOT; }; - BF21CC771E925A9E00A874F5 /* verge_head.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = verge_head.txt; path = WireLinkPreviewTests/verge_head.txt; sourceTree = SOURCE_ROOT; }; - BF21CC781E925A9E00A874F5 /* vimeo_head.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = vimeo_head.txt; path = WireLinkPreviewTests/vimeo_head.txt; sourceTree = SOURCE_ROOT; }; - BF21CC791E925A9E00A874F5 /* washington_post_head.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = washington_post_head.txt; path = WireLinkPreviewTests/washington_post_head.txt; sourceTree = SOURCE_ROOT; }; - BF21CC7A1E925A9E00A874F5 /* wire_head.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = wire_head.txt; path = WireLinkPreviewTests/wire_head.txt; sourceTree = SOURCE_ROOT; }; - BF21CC7B1E925A9E00A874F5 /* yahoo_sports_head.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = yahoo_sports_head.txt; path = WireLinkPreviewTests/yahoo_sports_head.txt; sourceTree = SOURCE_ROOT; }; - BF21CC7C1E925A9E00A874F5 /* youtube_head.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; name = youtube_head.txt; path = WireLinkPreviewTests/youtube_head.txt; sourceTree = SOURCE_ROOT; }; - BF3DD26F1D25445600D51DED /* version.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = version.xcconfig; sourceTree = ""; }; - BF3DD2721D25445600D51DED /* ios-test-host.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "ios-test-host.xcconfig"; sourceTree = ""; }; - BF3DD2731D25445600D51DED /* ios-test-target.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "ios-test-target.xcconfig"; sourceTree = ""; }; - BF3DD2771D25445600D51DED /* project-common.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "project-common.xcconfig"; sourceTree = ""; }; - BF3DD2781D25445600D51DED /* project-debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "project-debug.xcconfig"; sourceTree = ""; }; - BF3DD2791D25445600D51DED /* project.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = project.xcconfig; sourceTree = ""; }; - BF3DD27C1D25445600D51DED /* tests.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = tests.xcconfig; sourceTree = ""; }; - BF3DD27E1D25445600D51DED /* warnings.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = warnings.xcconfig; sourceTree = ""; }; - BF3DD2801D25445600D51DED /* WireLinkPreview.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = WireLinkPreview.xcconfig; sourceTree = ""; }; - BF4F2B2C1E925AC9000B22D1 /* ImageDownloader.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = ImageDownloader.swift; path = WireLinkPreview/ImageDownloader.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B2D1E925AC9000B22D1 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = WireLinkPreview/Info.plist; sourceTree = SOURCE_ROOT; }; - BF4F2B2E1E925AC9000B22D1 /* LinkPreviewDetector.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = LinkPreviewDetector.swift; path = WireLinkPreview/LinkPreviewDetector.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B2F1E925AC9000B22D1 /* LinkPreviewTypes.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = LinkPreviewTypes.swift; path = WireLinkPreview/LinkPreviewTypes.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B301E925AC9000B22D1 /* MetaStreamContainer.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = MetaStreamContainer.swift; path = WireLinkPreview/MetaStreamContainer.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B311E925AC9000B22D1 /* OpenGraphData.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = OpenGraphData.swift; path = WireLinkPreview/OpenGraphData.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B321E925AC9000B22D1 /* OpenGraphDataTypes.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = OpenGraphDataTypes.swift; path = WireLinkPreview/OpenGraphDataTypes.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B331E925AC9000B22D1 /* OpenGraphScanner.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = OpenGraphScanner.swift; path = WireLinkPreview/OpenGraphScanner.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B341E925AC9000B22D1 /* PreviewBlacklist.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = PreviewBlacklist.swift; path = WireLinkPreview/PreviewBlacklist.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B351E925AC9000B22D1 /* PreviewDownloader.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = PreviewDownloader.swift; path = WireLinkPreview/PreviewDownloader.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B371E925AC9000B22D1 /* URLSessionProtocols.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = URLSessionProtocols.swift; path = WireLinkPreview/URLSessionProtocols.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B381E925AC9000B22D1 /* WireLinkPreview.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = WireLinkPreview.h; path = WireLinkPreview/WireLinkPreview.h; sourceTree = SOURCE_ROOT; }; - BF4F2B461E925AE8000B22D1 /* DownloaderMocks.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = DownloaderMocks.swift; path = WireLinkPreviewTests/DownloaderMocks.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B471E925AE8000B22D1 /* OpenGraphMockDataProvider.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = OpenGraphMockDataProvider.swift; path = WireLinkPreviewTests/OpenGraphMockDataProvider.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B481E925AE8000B22D1 /* URLMocks.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = URLMocks.swift; path = WireLinkPreviewTests/URLMocks.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B4C1E925AFE000B22D1 /* ImageDownloaderTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = ImageDownloaderTests.swift; path = WireLinkPreviewTests/ImageDownloaderTests.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B4D1E925AFE000B22D1 /* E2ETests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = E2ETests.swift; path = WireLinkPreviewTests/E2ETests.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B4E1E925AFE000B22D1 /* LinkPreviewDetectorTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = LinkPreviewDetectorTests.swift; path = WireLinkPreviewTests/LinkPreviewDetectorTests.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B4F1E925AFE000B22D1 /* MetaStreamContainerTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = MetaStreamContainerTests.swift; path = WireLinkPreviewTests/MetaStreamContainerTests.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B501E925AFE000B22D1 /* OpenGraphDataTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = OpenGraphDataTests.swift; path = WireLinkPreviewTests/OpenGraphDataTests.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B511E925AFE000B22D1 /* OpenGraphScannerTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = OpenGraphScannerTests.swift; path = WireLinkPreviewTests/OpenGraphScannerTests.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B521E925AFE000B22D1 /* PreviewBlackListTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = PreviewBlackListTests.swift; path = WireLinkPreviewTests/PreviewBlackListTests.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B531E925AFE000B22D1 /* PreviewDownloaderTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = PreviewDownloaderTests.swift; path = WireLinkPreviewTests/PreviewDownloaderTests.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B541E925AFE000B22D1 /* StringXMLEntityParserTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = StringXMLEntityParserTests.swift; path = WireLinkPreviewTests/StringXMLEntityParserTests.swift; sourceTree = SOURCE_ROOT; }; - BF4F2B601E926D44000B22D1 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = WireLinkPreviewTests/Info.plist; sourceTree = SOURCE_ROOT; }; - BF4F2B621E926D5E000B22D1 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = Info.plist; path = WireLinkPreviewTests/Info.plist; sourceTree = SOURCE_ROOT; }; - BFF0578A1D25434D004A2C29 /* WireLinkPreview.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = WireLinkPreview.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - BFF057941D25434E004A2C29 /* WireLinkPreviewTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = WireLinkPreviewTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - EE9AEC8B2BD158EC00F7853F /* WireLinkPreview.docc */ = {isa = PBXFileReference; lastKnownFileType = folder.documentationcatalog; path = WireLinkPreview.docc; sourceTree = ""; }; - F1202A751FA0830000296B4B /* crash.txt */ = {isa = PBXFileReference; lastKnownFileType = text; path = crash.txt; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 5E2BEC4E214BA4A600E65B53 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - BFF057861D25434D004A2C29 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - CB4B2BB42C7F2D5B00128EFB /* HTMLString in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - BFF057911D25434E004A2C29 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - BFF057951D25434E004A2C29 /* WireLinkPreview.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 16A5FE0F215A868700AEEBBD /* Frameworks */ = { - isa = PBXGroup; - children = ( - ); - name = Frameworks; - sourceTree = ""; - }; - 5E2BEC52214BA4A600E65B53 /* WireLinkPreviewTestsHost */ = { - isa = PBXGroup; - children = ( - 5E2BEC53214BA4A600E65B53 /* AppDelegate.swift */, - 5E2BEC55214BA4A600E65B53 /* ViewController.swift */, - 5E2BEC57214BA4A600E65B53 /* Main.storyboard */, - 5E2BEC5A214BA4A700E65B53 /* Assets.xcassets */, - 5E2BEC5F214BA4A700E65B53 /* Info.plist */, - ); - path = WireLinkPreviewTestsHost; - sourceTree = ""; - }; - BF3DD26D1D25445600D51DED /* Resources */ = { - isa = PBXGroup; - children = ( - BF3DD26E1D25445600D51DED /* Configurations */, - ); - path = Resources; - sourceTree = ""; - }; - BF3DD26E1D25445600D51DED /* Configurations */ = { - isa = PBXGroup; - children = ( - BF3DD26F1D25445600D51DED /* version.xcconfig */, - BF3DD2701D25445600D51DED /* zmc-config */, - BF3DD2801D25445600D51DED /* WireLinkPreview.xcconfig */, - ); - path = Configurations; - sourceTree = ""; - }; - BF3DD2701D25445600D51DED /* zmc-config */ = { - isa = PBXGroup; - children = ( - BF3DD2721D25445600D51DED /* ios-test-host.xcconfig */, - BF3DD2731D25445600D51DED /* ios-test-target.xcconfig */, - BF3DD2771D25445600D51DED /* project-common.xcconfig */, - BF3DD2781D25445600D51DED /* project-debug.xcconfig */, - BF3DD2791D25445600D51DED /* project.xcconfig */, - BF3DD27C1D25445600D51DED /* tests.xcconfig */, - BF3DD27E1D25445600D51DED /* warnings.xcconfig */, - ); - path = "zmc-config"; - sourceTree = ""; - }; - BF3DD2A21D2552BB00D51DED /* Fixtures */ = { - isa = PBXGroup; - children = ( - BF4F2B601E926D44000B22D1 /* Info.plist */, - BF21CC6D1E925A9E00A874F5 /* foursquare_head.txt */, - BF21CC6E1E925A9E00A874F5 /* guardian_head.txt */, - BF21CC6F1E925A9E00A874F5 /* instagram_head.txt */, - BF21CC701E925A9E00A874F5 /* itunes_head.txt */, - BF21CC711E925A9E00A874F5 /* itunes_without_title_head.txt */, - BF21CC721E925A9E00A874F5 /* medium_head.txt */, - BF21CC731E925A9E00A874F5 /* nytimes_head.txt */, - BF21CC741E925A9E00A874F5 /* polygon_head.txt */, - BF21CC751E925A9E00A874F5 /* twitter_head.txt */, - BF21CC761E925A9E00A874F5 /* twitter_images_head.txt */, - BF21CC771E925A9E00A874F5 /* verge_head.txt */, - BF21CC781E925A9E00A874F5 /* vimeo_head.txt */, - BF21CC791E925A9E00A874F5 /* washington_post_head.txt */, - BF21CC7A1E925A9E00A874F5 /* wire_head.txt */, - BF21CC7B1E925A9E00A874F5 /* yahoo_sports_head.txt */, - BF21CC7C1E925A9E00A874F5 /* youtube_head.txt */, - F1202A751FA0830000296B4B /* crash.txt */, - 87B48ECA20A088F700DBAD9D /* crash_emoji.txt */, - 5E9EA4CF22427BBB00D401B2 /* soundcloud_track_head.txt */, - 5E9EA4D122427E0300D401B2 /* soundcloud_playlist_head.txt */, - ); - name = Fixtures; - sourceTree = ""; - }; - BFBB01CD1D2A610000DA7163 /* Helper */ = { - isa = PBXGroup; - children = ( - BF4F2B461E925AE8000B22D1 /* DownloaderMocks.swift */, - BF4F2B471E925AE8000B22D1 /* OpenGraphMockDataProvider.swift */, - BF4F2B481E925AE8000B22D1 /* URLMocks.swift */, - ); - name = Helper; - sourceTree = ""; - }; - BFF057801D25434D004A2C29 = { - isa = PBXGroup; - children = ( - EE9AEC8B2BD158EC00F7853F /* WireLinkPreview.docc */, - 54BD49F91D41FDE5006E29D1 /* README.md */, - BF3DD26D1D25445600D51DED /* Resources */, - BFF0578C1D25434D004A2C29 /* WireLinkPreview */, - BFF057981D25434E004A2C29 /* WireLinkPreviewTests */, - 5E2BEC52214BA4A600E65B53 /* WireLinkPreviewTestsHost */, - BFF0578B1D25434D004A2C29 /* Products */, - 16A5FE0F215A868700AEEBBD /* Frameworks */, - ); - indentWidth = 4; - sourceTree = ""; - tabWidth = 4; - usesTabs = 0; - wrapsLines = 1; - }; - BFF0578B1D25434D004A2C29 /* Products */ = { - isa = PBXGroup; - children = ( - BFF0578A1D25434D004A2C29 /* WireLinkPreview.framework */, - BFF057941D25434E004A2C29 /* WireLinkPreviewTests.xctest */, - 5E2BEC51214BA4A600E65B53 /* WireLinkPreviewTestsHost.app */, - ); - name = Products; - sourceTree = ""; - }; - BFF0578C1D25434D004A2C29 /* WireLinkPreview */ = { - isa = PBXGroup; - children = ( - BF4F2B381E925AC9000B22D1 /* WireLinkPreview.h */, - BF4F2B2E1E925AC9000B22D1 /* LinkPreviewDetector.swift */, - 5E9EA4BE22414FE100D401B2 /* LinkAttachmentDetector.swift */, - BF4F2B2F1E925AC9000B22D1 /* LinkPreviewTypes.swift */, - 5E9EA4BC2241445F00D401B2 /* LinkAttachmentTypes.swift */, - BF4F2B311E925AC9000B22D1 /* OpenGraphData.swift */, - BF4F2B321E925AC9000B22D1 /* OpenGraphDataTypes.swift */, - BF4F2B2C1E925AC9000B22D1 /* ImageDownloader.swift */, - BF4F2B341E925AC9000B22D1 /* PreviewBlacklist.swift */, - BF4F2B331E925AC9000B22D1 /* OpenGraphScanner.swift */, - BF4F2B351E925AC9000B22D1 /* PreviewDownloader.swift */, - BF4F2B301E925AC9000B22D1 /* MetaStreamContainer.swift */, - BF4F2B371E925AC9000B22D1 /* URLSessionProtocols.swift */, - 5E9EA4B62241426A00D401B2 /* NSDataDetector+Links.swift */, - 5E9EA4C52242503E00D401B2 /* NSDataDetector+LinkAttachments.swift */, - 5EDF03F3224A208E00C04007 /* HTMLDocument.swift */, - BF4F2B2D1E925AC9000B22D1 /* Info.plist */, - ); - path = WireLinkPreview; - sourceTree = ""; - }; - BFF057981D25434E004A2C29 /* WireLinkPreviewTests */ = { - isa = PBXGroup; - children = ( - BF4F2B4C1E925AFE000B22D1 /* ImageDownloaderTests.swift */, - BF4F2B4D1E925AFE000B22D1 /* E2ETests.swift */, - BF4F2B4E1E925AFE000B22D1 /* LinkPreviewDetectorTests.swift */, - 5E9EA4C7224257C100D401B2 /* NSDataDetectorLinksTests.swift */, - 5E9EA4C922425C4E00D401B2 /* NSDataDetectorAttachmentTests.swift */, - 5E9EA4CB2242732F00D401B2 /* LinkAttachmentTypesTests.swift */, - 5E9EA4CD2242785900D401B2 /* LinkAttachmentDetectorTests.swift */, - BF4F2B4F1E925AFE000B22D1 /* MetaStreamContainerTests.swift */, - BF4F2B501E925AFE000B22D1 /* OpenGraphDataTests.swift */, - BF4F2B511E925AFE000B22D1 /* OpenGraphScannerTests.swift */, - BF4F2B521E925AFE000B22D1 /* PreviewBlackListTests.swift */, - BF4F2B531E925AFE000B22D1 /* PreviewDownloaderTests.swift */, - BF4F2B541E925AFE000B22D1 /* StringXMLEntityParserTests.swift */, - BF4F2B621E926D5E000B22D1 /* Info.plist */, - BFBB01CD1D2A610000DA7163 /* Helper */, - BF3DD2A21D2552BB00D51DED /* Fixtures */, - ); - path = WireLinkPreviewTests; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXHeadersBuildPhase section */ - BFF057871D25434D004A2C29 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - BF4F2B451E925AC9000B22D1 /* WireLinkPreview.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXHeadersBuildPhase section */ - -/* Begin PBXNativeTarget section */ - 5E2BEC50214BA4A600E65B53 /* WireLinkPreviewTestsHost */ = { - isa = PBXNativeTarget; - buildConfigurationList = 5E2BEC62214BA4A700E65B53 /* Build configuration list for PBXNativeTarget "WireLinkPreviewTestsHost" */; - buildPhases = ( - 5E2BEC4D214BA4A600E65B53 /* Sources */, - 5E2BEC4E214BA4A600E65B53 /* Frameworks */, - 5E2BEC4F214BA4A600E65B53 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = WireLinkPreviewTestsHost; - productName = WireLinkPreviewTestsHost; - productReference = 5E2BEC51214BA4A600E65B53 /* WireLinkPreviewTestsHost.app */; - productType = "com.apple.product-type.application"; - }; - BFF057891D25434D004A2C29 /* WireLinkPreview */ = { - isa = PBXNativeTarget; - buildConfigurationList = BFF0579E1D25434E004A2C29 /* Build configuration list for PBXNativeTarget "WireLinkPreview" */; - buildPhases = ( - BFF057871D25434D004A2C29 /* Headers */, - BFF057851D25434D004A2C29 /* Sources */, - BFF057861D25434D004A2C29 /* Frameworks */, - BFF057881D25434D004A2C29 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = WireLinkPreview; - packageProductDependencies = ( - CB4B2BB32C7F2D5B00128EFB /* HTMLString */, - ); - productName = WireLinkPreview; - productReference = BFF0578A1D25434D004A2C29 /* WireLinkPreview.framework */; - productType = "com.apple.product-type.framework"; - }; - BFF057931D25434E004A2C29 /* WireLinkPreviewTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = BFF057A11D25434E004A2C29 /* Build configuration list for PBXNativeTarget "WireLinkPreviewTests" */; - buildPhases = ( - BFF057901D25434E004A2C29 /* Sources */, - BFF057911D25434E004A2C29 /* Frameworks */, - BFF057921D25434E004A2C29 /* Resources */, - BFB7B3D31D81AE7200EBD1C5 /* CopyFiles */, - ); - buildRules = ( - ); - dependencies = ( - BFF057971D25434E004A2C29 /* PBXTargetDependency */, - 5E2BEC64214BA4AE00E65B53 /* PBXTargetDependency */, - ); - name = WireLinkPreviewTests; - productName = WireLinkPreviewTests; - productReference = BFF057941D25434E004A2C29 /* WireLinkPreviewTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - BFF057811D25434D004A2C29 /* Project object */ = { - isa = PBXProject; - attributes = { - DefaultBuildSystemTypeForWorkspace = Latest; - LastSwiftUpdateCheck = 1000; - LastUpgradeCheck = 1310; - TargetAttributes = { - 5E2BEC50214BA4A600E65B53 = { - CreatedOnToolsVersion = 10.0; - LastSwiftMigration = 1130; - ProvisioningStyle = Automatic; - }; - BFF057891D25434D004A2C29 = { - CreatedOnToolsVersion = 7.3.1; - LastSwiftMigration = 1130; - }; - BFF057931D25434E004A2C29 = { - CreatedOnToolsVersion = 7.3.1; - LastSwiftMigration = 1130; - TestTargetID = 5E2BEC50214BA4A600E65B53; - }; - }; - }; - buildConfigurationList = BFF057841D25434D004A2C29 /* Build configuration list for PBXProject "WireLinkPreview" */; - compatibilityVersion = "Xcode 3.2"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = BFF057801D25434D004A2C29; - packageReferences = ( - CB4B2BB22C7F2D5B00128EFB /* XCRemoteSwiftPackageReference "HTMLString" */, - ); - productRefGroup = BFF0578B1D25434D004A2C29 /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - BFF057891D25434D004A2C29 /* WireLinkPreview */, - BFF057931D25434E004A2C29 /* WireLinkPreviewTests */, - 5E2BEC50214BA4A600E65B53 /* WireLinkPreviewTestsHost */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 5E2BEC4F214BA4A600E65B53 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 5E2BEC5B214BA4A700E65B53 /* Assets.xcassets in Resources */, - 5E2BEC59214BA4A600E65B53 /* Main.storyboard in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - BFF057881D25434D004A2C29 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - BFF057921D25434E004A2C29 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - BF21CC911E925AA300A874F5 /* itunes_without_title_head.txt in Resources */, - BF21CC8D1E925AA300A874F5 /* foursquare_head.txt in Resources */, - BF21CC8F1E925AA300A874F5 /* instagram_head.txt in Resources */, - BF21CC9A1E925AA300A874F5 /* wire_head.txt in Resources */, - BF21CC951E925AA300A874F5 /* twitter_head.txt in Resources */, - BF21CC961E925AA300A874F5 /* twitter_images_head.txt in Resources */, - BF21CC981E925AA300A874F5 /* vimeo_head.txt in Resources */, - 87B48ECB20A088F700DBAD9D /* crash_emoji.txt in Resources */, - BF21CC991E925AA300A874F5 /* washington_post_head.txt in Resources */, - BF21CC901E925AA300A874F5 /* itunes_head.txt in Resources */, - BF21CC8E1E925AA300A874F5 /* guardian_head.txt in Resources */, - BF21CC971E925AA300A874F5 /* verge_head.txt in Resources */, - 5E9EA4D222427E0300D401B2 /* soundcloud_playlist_head.txt in Resources */, - 5E9EA4D022427BBB00D401B2 /* soundcloud_track_head.txt in Resources */, - BF21CC931E925AA300A874F5 /* nytimes_head.txt in Resources */, - BF21CC9C1E925AA300A874F5 /* youtube_head.txt in Resources */, - BF21CC921E925AA300A874F5 /* medium_head.txt in Resources */, - F1202A761FA0830000296B4B /* crash.txt in Resources */, - BF21CC941E925AA300A874F5 /* polygon_head.txt in Resources */, - BF21CC9B1E925AA300A874F5 /* yahoo_sports_head.txt in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 5E2BEC4D214BA4A600E65B53 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 5E2BEC56214BA4A600E65B53 /* ViewController.swift in Sources */, - 5E2BEC54214BA4A600E65B53 /* AppDelegate.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - BFF057851D25434D004A2C29 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 5EDF03F4224A208E00C04007 /* HTMLDocument.swift in Sources */, - BF4F2B3F1E925AC9000B22D1 /* OpenGraphDataTypes.swift in Sources */, - EE9AEC8C2BD158EC00F7853F /* WireLinkPreview.docc in Sources */, - BF4F2B401E925AC9000B22D1 /* OpenGraphScanner.swift in Sources */, - BF4F2B3C1E925AC9000B22D1 /* LinkPreviewTypes.swift in Sources */, - 5E9EA4B72241426A00D401B2 /* NSDataDetector+Links.swift in Sources */, - BF4F2B3B1E925AC9000B22D1 /* LinkPreviewDetector.swift in Sources */, - 5E9EA4BD2241445F00D401B2 /* LinkAttachmentTypes.swift in Sources */, - 5E9EA4BF22414FE100D401B2 /* LinkAttachmentDetector.swift in Sources */, - BF4F2B411E925AC9000B22D1 /* PreviewBlacklist.swift in Sources */, - BF4F2B3D1E925AC9000B22D1 /* MetaStreamContainer.swift in Sources */, - BF4F2B441E925AC9000B22D1 /* URLSessionProtocols.swift in Sources */, - BF4F2B391E925AC9000B22D1 /* ImageDownloader.swift in Sources */, - BF4F2B421E925AC9000B22D1 /* PreviewDownloader.swift in Sources */, - BF4F2B3E1E925AC9000B22D1 /* OpenGraphData.swift in Sources */, - 5E9EA4C62242503F00D401B2 /* NSDataDetector+LinkAttachments.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - BFF057901D25434E004A2C29 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 5E9EA4CE2242785900D401B2 /* LinkAttachmentDetectorTests.swift in Sources */, - BF4F2B571E925AFE000B22D1 /* E2ETests.swift in Sources */, - BF4F2B5B1E925AFE000B22D1 /* OpenGraphScannerTests.swift in Sources */, - 5E9EA4CC2242732F00D401B2 /* LinkAttachmentTypesTests.swift in Sources */, - BF4F2B5E1E925AFE000B22D1 /* StringXMLEntityParserTests.swift in Sources */, - 5E9EA4C8224257C100D401B2 /* NSDataDetectorLinksTests.swift in Sources */, - BF4F2B5D1E925AFE000B22D1 /* PreviewDownloaderTests.swift in Sources */, - BF4F2B591E925AFE000B22D1 /* MetaStreamContainerTests.swift in Sources */, - BF4F2B4B1E925AE8000B22D1 /* URLMocks.swift in Sources */, - BF4F2B5A1E925AFE000B22D1 /* OpenGraphDataTests.swift in Sources */, - BF4F2B4A1E925AE8000B22D1 /* OpenGraphMockDataProvider.swift in Sources */, - BF4F2B491E925AE8000B22D1 /* DownloaderMocks.swift in Sources */, - BF4F2B561E925AFE000B22D1 /* ImageDownloaderTests.swift in Sources */, - BF4F2B5C1E925AFE000B22D1 /* PreviewBlackListTests.swift in Sources */, - BF4F2B581E925AFE000B22D1 /* LinkPreviewDetectorTests.swift in Sources */, - 5E9EA4CA22425C4E00D401B2 /* NSDataDetectorAttachmentTests.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXTargetDependency section */ - 5E2BEC64214BA4AE00E65B53 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 5E2BEC50214BA4A600E65B53 /* WireLinkPreviewTestsHost */; - targetProxy = 5E2BEC63214BA4AE00E65B53 /* PBXContainerItemProxy */; - }; - BFF057971D25434E004A2C29 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = BFF057891D25434D004A2C29 /* WireLinkPreview */; - targetProxy = BFF057961D25434E004A2C29 /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - -/* Begin PBXVariantGroup section */ - 5E2BEC57214BA4A600E65B53 /* Main.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 5E2BEC58214BA4A600E65B53 /* Base */, - ); - name = Main.storyboard; - sourceTree = ""; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 5E2BEC60214BA4A700E65B53 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Automatic; - 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 = ( - "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; - INFOPLIST_FILE = WireLinkPreviewTestsHost/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_BUNDLE_IDENTIFIER = com.wearezeta.WireLinkPreviewTestsHost; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = iphoneos; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Debug; - }; - 5E2BEC61214BA4A700E65B53 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Automatic; - 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; - INFOPLIST_FILE = WireLinkPreviewTestsHost/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - PRODUCT_BUNDLE_IDENTIFIER = com.wearezeta.WireLinkPreviewTestsHost; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = iphoneos; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; - BFF0579C1D25434E004A2C29 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = BF3DD2781D25445600D51DED /* project-debug.xcconfig */; - buildSettings = { - }; - name = Debug; - }; - BFF0579D1D25434E004A2C29 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = BF3DD2791D25445600D51DED /* project.xcconfig */; - buildSettings = { - }; - name = Release; - }; - BFF0579F1D25434E004A2C29 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = BF3DD2801D25445600D51DED /* WireLinkPreview.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - HEADER_SEARCH_PATHS = "${SDKROOT}/usr/include/libxml2"; - INFOPLIST_FILE = "$(SRCROOT)/WireLinkPreview/Info.plist"; - ONLY_ACTIVE_ARCH = YES; - PRODUCT_BUNDLE_IDENTIFIER = com.wire.WireLinkPreview; - PRODUCT_NAME = "$(TARGET_NAME)"; - SKIP_INSTALL = YES; - SWIFT_VERSION = 5.0; - VALIDATE_WORKSPACE = YES; - }; - name = Debug; - }; - BFF057A01D25434E004A2C29 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = BF3DD2801D25445600D51DED /* WireLinkPreview.xcconfig */; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - HEADER_SEARCH_PATHS = "${SDKROOT}/usr/include/libxml2"; - INFOPLIST_FILE = "$(SRCROOT)/WireLinkPreview/Info.plist"; - PRODUCT_BUNDLE_IDENTIFIER = com.wire.WireLinkPreview; - PRODUCT_NAME = "$(TARGET_NAME)"; - SKIP_INSTALL = YES; - SWIFT_VERSION = 5.0; - VALIDATE_WORKSPACE = YES; - }; - name = Release; - }; - BFF057A21D25434E004A2C29 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = BF3DD2731D25445600D51DED /* ios-test-target.xcconfig */; - buildSettings = { - HEADER_SEARCH_PATHS = "${SDKROOT}/usr/include/libxml2"; - INFOPLIST_FILE = WireLinkPreviewTests/Info.plist; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 5.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/WireLinkPreviewTestsHost.app/WireLinkPreviewTestsHost"; - VALIDATE_WORKSPACE = YES; - }; - name = Debug; - }; - BFF057A31D25434E004A2C29 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = BF3DD2731D25445600D51DED /* ios-test-target.xcconfig */; - buildSettings = { - HEADER_SEARCH_PATHS = "${SDKROOT}/usr/include/libxml2"; - INFOPLIST_FILE = WireLinkPreviewTests/Info.plist; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 5.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/WireLinkPreviewTestsHost.app/WireLinkPreviewTestsHost"; - VALIDATE_WORKSPACE = YES; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 5E2BEC62214BA4A700E65B53 /* Build configuration list for PBXNativeTarget "WireLinkPreviewTestsHost" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 5E2BEC60214BA4A700E65B53 /* Debug */, - 5E2BEC61214BA4A700E65B53 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - BFF057841D25434D004A2C29 /* Build configuration list for PBXProject "WireLinkPreview" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - BFF0579C1D25434E004A2C29 /* Debug */, - BFF0579D1D25434E004A2C29 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - BFF0579E1D25434E004A2C29 /* Build configuration list for PBXNativeTarget "WireLinkPreview" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - BFF0579F1D25434E004A2C29 /* Debug */, - BFF057A01D25434E004A2C29 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - BFF057A11D25434E004A2C29 /* Build configuration list for PBXNativeTarget "WireLinkPreviewTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - BFF057A21D25434E004A2C29 /* Debug */, - BFF057A31D25434E004A2C29 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - -/* Begin XCRemoteSwiftPackageReference section */ - CB4B2BB22C7F2D5B00128EFB /* XCRemoteSwiftPackageReference "HTMLString" */ = { - isa = XCRemoteSwiftPackageReference; - repositoryURL = "https://github.com/wireapp/HTMLString"; - requirement = { - kind = exactVersion; - version = 6.0.1; - }; - }; -/* End XCRemoteSwiftPackageReference section */ - -/* Begin XCSwiftPackageProductDependency section */ - CB4B2BB32C7F2D5B00128EFB /* HTMLString */ = { - isa = XCSwiftPackageProductDependency; - package = CB4B2BB22C7F2D5B00128EFB /* XCRemoteSwiftPackageReference "HTMLString" */; - productName = HTMLString; - }; -/* End XCSwiftPackageProductDependency section */ - }; - rootObject = BFF057811D25434D004A2C29 /* Project object */; -} diff --git a/wire-ios-link-preview/WireLinkPreview.xcodeproj/project.xcworkspace/xcshareddata/IDETemplateMacros.plist b/wire-ios-link-preview/WireLinkPreview.xcodeproj/project.xcworkspace/xcshareddata/IDETemplateMacros.plist deleted file mode 120000 index 0aa12047039..00000000000 --- a/wire-ios-link-preview/WireLinkPreview.xcodeproj/project.xcworkspace/xcshareddata/IDETemplateMacros.plist +++ /dev/null @@ -1 +0,0 @@ -../../../../wire-ios-mono.xcworkspace/xcshareddata/IDETemplateMacros.plist \ No newline at end of file diff --git a/wire-ios-link-preview/WireLinkPreview.xcodeproj/xcshareddata/xcschemes/WireLinkPreview-E2E.xcscheme b/wire-ios-link-preview/WireLinkPreview.xcodeproj/xcshareddata/xcschemes/WireLinkPreview-E2E.xcscheme deleted file mode 100644 index c39d98dddd7..00000000000 --- a/wire-ios-link-preview/WireLinkPreview.xcodeproj/xcshareddata/xcschemes/WireLinkPreview-E2E.xcscheme +++ /dev/null @@ -1,144 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/wire-ios-link-preview/WireLinkPreview.xcodeproj/xcshareddata/xcschemes/WireLinkPreview.xcscheme b/wire-ios-link-preview/WireLinkPreview.xcodeproj/xcshareddata/xcschemes/WireLinkPreview.xcscheme deleted file mode 100644 index 7cc877e937e..00000000000 --- a/wire-ios-link-preview/WireLinkPreview.xcodeproj/xcshareddata/xcschemes/WireLinkPreview.xcscheme +++ /dev/null @@ -1,111 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/wire-ios-link-preview/WireLinkPreview/Info.plist b/wire-ios-link-preview/WireLinkPreview/Info.plist deleted file mode 100644 index 0e600e67e7d..00000000000 --- a/wire-ios-link-preview/WireLinkPreview/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - FMWK - CFBundleShortVersionString - $(CURRENT_PROJECT_VERSION) - CFBundleSignature - ???? - CFBundleVersion - $(CURRENT_PROJECT_VERSION) - NSPrincipalClass - - - diff --git a/wire-ios-link-preview/WireLinkPreview/WireLinkPreview.h b/wire-ios-link-preview/WireLinkPreview/WireLinkPreview.h deleted file mode 100644 index 77c7156661e..00000000000 --- a/wire-ios-link-preview/WireLinkPreview/WireLinkPreview.h +++ /dev/null @@ -1,25 +0,0 @@ -// -// Wire -// Copyright (C) 2024 Wire Swiss GmbH -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see http://www.gnu.org/licenses/. -// - -#import - -//! Project version number for ZMCLinkPreview. -FOUNDATION_EXPORT double ZMCLinkPreviewVersionNumber; - -//! Project version string for ZMCLinkPreview. -FOUNDATION_EXPORT const unsigned char ZMCLinkPreviewVersionString[]; diff --git a/wire-ios-link-preview/WireLinkPreviewTests/Info.plist b/wire-ios-link-preview/WireLinkPreviewTests/Info.plist deleted file mode 100644 index ba72822e872..00000000000 --- a/wire-ios-link-preview/WireLinkPreviewTests/Info.plist +++ /dev/null @@ -1,24 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - BNDL - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - 1 - - diff --git a/wire-ios-link-preview/WireLinkPreviewTestsHost/AppDelegate.swift b/wire-ios-link-preview/WireLinkPreviewTestsHost/AppDelegate.swift deleted file mode 100644 index 2b7de298790..00000000000 --- a/wire-ios-link-preview/WireLinkPreviewTestsHost/AppDelegate.swift +++ /dev/null @@ -1,53 +0,0 @@ -// -// Wire -// Copyright (C) 2024 Wire Swiss GmbH -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see http://www.gnu.org/licenses/. -// - -import UIKit - -@UIApplicationMain -final class AppDelegate: UIResponder, UIApplicationDelegate { - - var window: UIWindow? - - func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { - // Override point for customization after application launch. - return true - } - - func applicationWillResignActive(_ application: UIApplication) { - // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. - // Use this method to pause ongoing tasks, disable timers, and invalidate graphics rendering callbacks. Games should use this method to pause the game. - } - - func applicationDidEnterBackground(_ application: UIApplication) { - // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. - // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. - } - - func applicationWillEnterForeground(_ application: UIApplication) { - // Called as part of the transition from the background to the active state; here you can undo many of the changes made on entering the background. - } - - func applicationDidBecomeActive(_ application: UIApplication) { - // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. - } - - func applicationWillTerminate(_ application: UIApplication) { - // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. - } - -} diff --git a/wire-ios-link-preview/WireLinkPreviewTestsHost/Assets.xcassets/AppIcon.appiconset/Contents.json b/wire-ios-link-preview/WireLinkPreviewTestsHost/Assets.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index d8db8d65fd7..00000000000 --- a/wire-ios-link-preview/WireLinkPreviewTestsHost/Assets.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,98 +0,0 @@ -{ - "images" : [ - { - "idiom" : "iphone", - "size" : "20x20", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "20x20", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "29x29", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "29x29", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "40x40", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "40x40", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "60x60", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "60x60", - "scale" : "3x" - }, - { - "idiom" : "ipad", - "size" : "20x20", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "20x20", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "29x29", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "29x29", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "40x40", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "40x40", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "76x76", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "76x76", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "83.5x83.5", - "scale" : "2x" - }, - { - "idiom" : "ios-marketing", - "size" : "1024x1024", - "scale" : "1x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/wire-ios-link-preview/WireLinkPreviewTestsHost/Assets.xcassets/Contents.json b/wire-ios-link-preview/WireLinkPreviewTestsHost/Assets.xcassets/Contents.json deleted file mode 100644 index da4a164c918..00000000000 --- a/wire-ios-link-preview/WireLinkPreviewTestsHost/Assets.xcassets/Contents.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/wire-ios-link-preview/WireLinkPreviewTestsHost/Base.lproj/Main.storyboard b/wire-ios-link-preview/WireLinkPreviewTestsHost/Base.lproj/Main.storyboard deleted file mode 100644 index f1bcf38400d..00000000000 --- a/wire-ios-link-preview/WireLinkPreviewTestsHost/Base.lproj/Main.storyboard +++ /dev/null @@ -1,24 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/wire-ios-link-preview/WireLinkPreviewTestsHost/Info.plist b/wire-ios-link-preview/WireLinkPreviewTestsHost/Info.plist deleted file mode 100644 index cf63463ed57..00000000000 --- a/wire-ios-link-preview/WireLinkPreviewTestsHost/Info.plist +++ /dev/null @@ -1,58 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - APPL - CFBundleShortVersionString - 1.0 - CFBundleVersion - 1 - LSRequiresIPhoneOS - - NSAppTransportSecurity - - NSExceptionDomains - - archive.org - - NSIncludesSubdomains - - NSExceptionAllowsInsecureHTTPLoads - - NSExceptionRequiresForwardSecrecy - - - - - UIMainStoryboardFile - Main - UIRequiredDeviceCapabilities - - armv7 - - UISupportedInterfaceOrientations - - UIInterfaceOrientationPortrait - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - UISupportedInterfaceOrientations~ipad - - UIInterfaceOrientationPortrait - UIInterfaceOrientationPortraitUpsideDown - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - - diff --git a/wire-ios-link-preview/WireLinkPreviewTestsHost/ViewController.swift b/wire-ios-link-preview/WireLinkPreviewTestsHost/ViewController.swift deleted file mode 100644 index 83a243b0a55..00000000000 --- a/wire-ios-link-preview/WireLinkPreviewTestsHost/ViewController.swift +++ /dev/null @@ -1,21 +0,0 @@ -// -// Wire -// Copyright (C) 2024 Wire Swiss GmbH -// -// This program is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with this program. If not, see http://www.gnu.org/licenses/. -// - -import UIKit - -final class ViewController: UIViewController {} diff --git a/wire-ios-mocktransport/WireMockTransport.xcodeproj/project.pbxproj b/wire-ios-mocktransport/WireMockTransport.xcodeproj/project.pbxproj index b5536cdfb06..e7c2fabcb79 100644 --- a/wire-ios-mocktransport/WireMockTransport.xcodeproj/project.pbxproj +++ b/wire-ios-mocktransport/WireMockTransport.xcodeproj/project.pbxproj @@ -61,10 +61,10 @@ 54AE5AA11B78FA62002757E9 /* MockTransportSessionAddressBookTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 54AE5A921B78FA62002757E9 /* MockTransportSessionAddressBookTests.m */; }; 54AE5AA61B78FA62002757E9 /* MockTransportSessionEmailPhoneVerificationTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 54AE5A971B78FA62002757E9 /* MockTransportSessionEmailPhoneVerificationTests.m */; }; 54AE5AAB1B78FA62002757E9 /* MockTransportSessionRequestsTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 54AE5A9C1B78FA62002757E9 /* MockTransportSessionRequestsTests.m */; }; - 54C9023F1B7532DD007162A8 /* WireMockTransport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 54C902331B7532DD007162A8 /* WireMockTransport.framework */; }; 54FAE6821E3A025500E6DE42 /* MockTransportSessionObjectCreationTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54FAE6801E3A01F000E6DE42 /* MockTransportSessionObjectCreationTests.swift */; }; 5502C6EE22B8EC31000684B7 /* MockPendingLegalHoldClient.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5502C6ED22B8EC31000684B7 /* MockPendingLegalHoldClient.swift */; }; - 5996E8C32C19FFDB007A52F0 /* OCMock.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5996E8C22C19FFDB007A52F0 /* OCMock.xcframework */; }; + 591B6E562C8B09D6009F8A7B /* OCMock.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5996E8C22C19FFDB007A52F0 /* OCMock.xcframework */; }; + 591B6E592C8B09DA009F8A7B /* WireMockTransport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 54C902331B7532DD007162A8 /* WireMockTransport.framework */; }; 59EC73FB2C20B82F00E5C036 /* WireSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 59EC73FA2C20B82F00E5C036 /* WireSystem.framework */; }; 59EC74002C20B87F00E5C036 /* NSManagedObjectContext+executeFetchRequestOrAssert.m in Sources */ = {isa = PBXBuildFile; fileRef = 59EC73FF2C20B87F00E5C036 /* NSManagedObjectContext+executeFetchRequestOrAssert.m */; }; 63128BB3247C014300673D18 /* MockTransportSession+OTR.swift in Sources */ = {isa = PBXBuildFile; fileRef = 63128BB2247C014300673D18 /* MockTransportSession+OTR.swift */; }; @@ -136,18 +136,6 @@ }; /* End PBXContainerItemProxy section */ -/* Begin PBXCopyFilesBuildPhase section */ - 54CE5E731B753568007F3065 /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - /* Begin PBXFileReference section */ 06392CFA23C36D30003186E6 /* MockParticipantRole.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MockParticipantRole.swift; sourceTree = ""; }; 0641A8C3239A56E900B24621 /* MockAction.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MockAction.swift; sourceTree = ""; }; @@ -294,8 +282,8 @@ 59EC73FB2C20B82F00E5C036 /* WireSystem.framework in Frameworks */, EE67F700296F09D8001D7C88 /* WireTesting.framework in Frameworks */, CB79AC682C6D0009003CF5F4 /* WireTransportSupport.framework in Frameworks */, + 591B6E562C8B09D6009F8A7B /* OCMock.xcframework in Frameworks */, EE974128295498E2000C9340 /* WireTransport.framework in Frameworks */, - 5996E8C32C19FFDB007A52F0 /* OCMock.xcframework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -303,7 +291,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 54C9023F1B7532DD007162A8 /* WireMockTransport.framework in Frameworks */, + 591B6E592C8B09DA009F8A7B /* WireMockTransport.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -841,7 +829,6 @@ 54C9023A1B7532DD007162A8 /* Sources */, 54C9023B1B7532DD007162A8 /* Frameworks */, 54C9023C1B7532DD007162A8 /* Resources */, - 54CE5E731B753568007F3065 /* CopyFiles */, ); buildRules = ( ); diff --git a/wire-ios-mono.xcworkspace/contents.xcworkspacedata b/wire-ios-mono.xcworkspace/contents.xcworkspacedata index 96a06905021..b06a5bc1071 100644 --- a/wire-ios-mono.xcworkspace/contents.xcworkspacedata +++ b/wire-ios-mono.xcworkspace/contents.xcworkspacedata @@ -104,28 +104,19 @@ location = "group:wire-ios-transport/WireTransport.xcodeproj"> + location = "group:WireLinkPreview"> + location = "group:wire-ios-utilities/WireUtilities.xcodeproj"> + location = "group:wire-ios-testing/WireTesting.xcodeproj"> - - - - - - + location = "group:wire-ios-system/WireSystem.xcodeproj"> @@ -133,6 +124,9 @@ + + diff --git a/wire-ios-notification-engine/Sources/ApplicationStatusDirectory.swift b/wire-ios-notification-engine/Sources/ApplicationStatusDirectory.swift index c27b14071ee..2bba4091fa8 100644 --- a/wire-ios-notification-engine/Sources/ApplicationStatusDirectory.swift +++ b/wire-ios-notification-engine/Sources/ApplicationStatusDirectory.swift @@ -17,6 +17,7 @@ // import Foundation +import WireLinkPreview import WireRequestStrategy final class ApplicationStatusDirectory: ApplicationStatus { diff --git a/wire-ios-notification-engine/WireNotificationEngine.xcodeproj/project.pbxproj b/wire-ios-notification-engine/WireNotificationEngine.xcodeproj/project.pbxproj index 15d60e9a2d9..d1492f1b693 100644 --- a/wire-ios-notification-engine/WireNotificationEngine.xcodeproj/project.pbxproj +++ b/wire-ios-notification-engine/WireNotificationEngine.xcodeproj/project.pbxproj @@ -13,13 +13,14 @@ 069712972497C1BF00C32169 /* NotificationSession.swift in Sources */ = {isa = PBXBuildFile; fileRef = 069712952497C1BC00C32169 /* NotificationSession.swift */; }; 069712992497C2B900C32169 /* AuthenticationStatusProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 069712982497C2B900C32169 /* AuthenticationStatusProvider.swift */; }; 0697129D2497CAC200C32169 /* PushNotificationStrategy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0697129C2497CAC200C32169 /* PushNotificationStrategy.swift */; }; - 59B170E62BCE70E200575995 /* WireDataModelSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 59B170E52BCE70E200575995 /* WireDataModelSupport.framework */; }; + 591B6E262C8B097B009F8A7B /* WireRequestStrategy.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE668BC52954BA4C00D939E7 /* WireRequestStrategy.framework */; }; + 591B6E2C2C8B0983009F8A7B /* WireDataModelSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 59B170E52BCE70E200575995 /* WireDataModelSupport.framework */; }; + 591B6E2F2C8B0988009F8A7B /* WireMockTransport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EEC80B5629B6054A00099727 /* WireMockTransport.framework */; }; 630A582D29AF9F3E00E26C4D /* BaseNotificationSessionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 630A582C29AF9F3E00E26C4D /* BaseNotificationSessionTests.swift */; }; EE0BA28A29D59B1D004E93B5 /* NotificationSessionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE0BA28929D59B1D004E93B5 /* NotificationSessionTests.swift */; }; EE3245FE28229E8600F2A84A /* ApplicationStatusDirectory.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE3245FD28229E8600F2A84A /* ApplicationStatusDirectory.swift */; }; EE32460028229F6B00F2A84A /* ClientRegistrationStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE3245FF28229F6B00F2A84A /* ClientRegistrationStatus.swift */; }; EE32460228229FDF00F2A84A /* AuthenticationStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE32460128229FDF00F2A84A /* AuthenticationStatus.swift */; }; - EE668BC62954BA4C00D939E7 /* WireRequestStrategy.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE668BC52954BA4C00D939E7 /* WireRequestStrategy.framework */; }; EE761669299E60C9005DB75F /* WireNotificationEngine.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 067ECB3A2487A93D00701956 /* WireNotificationEngine.framework */; }; EE9AEC982BD159C700F7853F /* WireNotificationEngine.docc in Sources */ = {isa = PBXBuildFile; fileRef = EE9AEC972BD159C700F7853F /* WireNotificationEngine.docc */; }; EEC80B4329B6053200099727 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEC80B4229B6053200099727 /* AppDelegate.swift */; }; @@ -27,7 +28,6 @@ EEC80B4729B6053200099727 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEC80B4629B6053200099727 /* ViewController.swift */; }; EEC80B4A29B6053200099727 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = EEC80B4829B6053200099727 /* Main.storyboard */; }; EEC80B4C29B6053500099727 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = EEC80B4B29B6053500099727 /* Assets.xcassets */; }; - EEC80B5729B6054A00099727 /* WireMockTransport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EEC80B5629B6054A00099727 /* WireMockTransport.framework */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -94,7 +94,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - EE668BC62954BA4C00D939E7 /* WireRequestStrategy.framework in Frameworks */, + 591B6E262C8B097B009F8A7B /* WireRequestStrategy.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -103,7 +103,7 @@ buildActionMask = 2147483647; files = ( EE761669299E60C9005DB75F /* WireNotificationEngine.framework in Frameworks */, - 59B170E62BCE70E200575995 /* WireDataModelSupport.framework in Frameworks */, + 591B6E2C2C8B0983009F8A7B /* WireDataModelSupport.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -111,7 +111,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - EEC80B5729B6054A00099727 /* WireMockTransport.framework in Frameworks */, + 591B6E2F2C8B0988009F8A7B /* WireMockTransport.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/wire-ios-notification-engine/WireNotificationEngineTests/BaseNotificationSessionTests.swift b/wire-ios-notification-engine/WireNotificationEngineTests/BaseNotificationSessionTests.swift index ccb48763958..70832b793a1 100644 --- a/wire-ios-notification-engine/WireNotificationEngineTests/BaseNotificationSessionTests.swift +++ b/wire-ios-notification-engine/WireNotificationEngineTests/BaseNotificationSessionTests.swift @@ -20,11 +20,12 @@ import Foundation import WireDataModel import WireDataModelSupport import WireMockTransport -@testable import WireNotificationEngine import WireRequestStrategy import WireTesting import XCTest +@testable import WireNotificationEngine + class FakeAuthenticationStatus: AuthenticationStatusProvider { var state: AuthenticationState = .authenticated } diff --git a/wire-ios-protos/WireProtos.xcodeproj/project.pbxproj b/wire-ios-protos/WireProtos.xcodeproj/project.pbxproj index d3c8b917840..c13e92ae57d 100644 --- a/wire-ios-protos/WireProtos.xcodeproj/project.pbxproj +++ b/wire-ios-protos/WireProtos.xcodeproj/project.pbxproj @@ -12,7 +12,6 @@ 5E13807D21A30A9D004A646C /* messages.pb.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E13807B21A30A9D004A646C /* messages.pb.swift */; }; 5E13807E21A30A9D004A646C /* otr.pb.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E13807C21A30A9D004A646C /* otr.pb.swift */; }; 5E13808021A30AB7004A646C /* ProtosTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E13807F21A30AB7004A646C /* ProtosTests.swift */; }; - 5EAC172E21A30C390014E671 /* WireProtos.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 090837FE1B872DBF00629095 /* WireProtos.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 638BBCF129150CEF007491FF /* mls.pb.swift in Sources */ = {isa = PBXBuildFile; fileRef = 638BBCF029150CEE007491FF /* mls.pb.swift */; }; CBF4FEAD2C806F9B00EA6E06 /* SwiftProtobuf in Frameworks */ = {isa = PBXBuildFile; productRef = CBF4FEAC2C806F9B00EA6E06 /* SwiftProtobuf */; }; EE9AEC902BD1594600F7853F /* WireProtos.docc in Sources */ = {isa = PBXBuildFile; fileRef = EE9AEC8F2BD1594600F7853F /* WireProtos.docc */; }; @@ -29,19 +28,6 @@ }; /* End PBXContainerItemProxy section */ -/* Begin PBXCopyFilesBuildPhase section */ - 097A22971B8B1AD900D02243 /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - 5EAC172E21A30C390014E671 /* WireProtos.framework in CopyFiles */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - /* Begin PBXFileReference section */ 016BDDED2A9F86E50054FB04 /* Scripts */ = {isa = PBXFileReference; lastKnownFileType = folder; path = Scripts; sourceTree = ""; }; 016BDDEE2A9F88AF0054FB04 /* README.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = ""; }; @@ -241,7 +227,6 @@ 090838051B872DBF00629095 /* Sources */, 090838061B872DBF00629095 /* Frameworks */, 090838071B872DBF00629095 /* Resources */, - 097A22971B8B1AD900D02243 /* CopyFiles */, ); buildRules = ( ); @@ -407,7 +392,6 @@ isa = XCBuildConfiguration; baseConfigurationReference = 54B5E1F61F0A6B77001F43A6 /* test-target.xcconfig */; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; CLANG_ENABLE_MODULES = YES; INFOPLIST_FILE = ProtosTests/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( @@ -426,7 +410,6 @@ isa = XCBuildConfiguration; baseConfigurationReference = 54B5E1F61F0A6B77001F43A6 /* test-target.xcconfig */; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; CLANG_ENABLE_MODULES = YES; INFOPLIST_FILE = ProtosTests/Info.plist; LD_RUNPATH_SEARCH_PATHS = ( diff --git a/wire-ios-request-strategy/Sources/Payloads/Processing/UserProfilePayloadProcessor.swift b/wire-ios-request-strategy/Sources/Payloads/Processing/UserProfilePayloadProcessor.swift index a360ea441ba..9d524fbd9f4 100644 --- a/wire-ios-request-strategy/Sources/Payloads/Processing/UserProfilePayloadProcessor.swift +++ b/wire-ios-request-strategy/Sources/Payloads/Processing/UserProfilePayloadProcessor.swift @@ -18,7 +18,7 @@ import Foundation import WireDataModel -import WireUtilitiesPkg +import WireFoundation // sourcery: AutoMockable protocol UserProfilePayloadProcessing { diff --git a/wire-ios-request-strategy/Tests/Sources/Payloads/Processing/UserProfilePayloadProcessorTests.swift b/wire-ios-request-strategy/Tests/Sources/Payloads/Processing/UserProfilePayloadProcessorTests.swift index 80f478bcae0..1bec22b2bfb 100644 --- a/wire-ios-request-strategy/Tests/Sources/Payloads/Processing/UserProfilePayloadProcessorTests.swift +++ b/wire-ios-request-strategy/Tests/Sources/Payloads/Processing/UserProfilePayloadProcessorTests.swift @@ -16,8 +16,8 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // +import WireFoundation import WireTransport -import WireUtilitiesPkg import XCTest @testable import WireRequestStrategy diff --git a/wire-ios-request-strategy/WireRequestStrategy.xcodeproj/project.pbxproj b/wire-ios-request-strategy/WireRequestStrategy.xcodeproj/project.pbxproj index f9709f7ff8b..b1c1273c323 100644 --- a/wire-ios-request-strategy/WireRequestStrategy.xcodeproj/project.pbxproj +++ b/wire-ios-request-strategy/WireRequestStrategy.xcodeproj/project.pbxproj @@ -187,15 +187,17 @@ 16E5F71826EF4DBF00F35FBA /* ConversationRequestStrategyTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16E5F71726EF4DBF00F35FBA /* ConversationRequestStrategyTests.swift */; }; 16E70F5B270DCCB900718E5D /* UpdateConnectionActionHandlerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16E70F5A270DCCB900718E5D /* UpdateConnectionActionHandlerTests.swift */; }; 547E664D1F7512FE008CB1FA /* Default-568h@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 547E664C1F7512FE008CB1FA /* Default-568h@2x.png */; }; - 591802D52B7127F1003B7353 /* WireRequestStrategy.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1669016A1D707509000FE4AF /* WireRequestStrategy.framework */; }; + 591B6E3B2C8B09AA009F8A7B /* WireDataModel.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE668BB12954A7C700D939E7 /* WireDataModel.framework */; }; + 591B6E3D2C8B09AE009F8A7B /* WireDataModelSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 59D1C3112B1DF3AD0016F6B2 /* WireDataModelSupport.framework */; }; + 591B6E3F2C8B09B3009F8A7B /* WireTesting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F72B296F0CE4001D7C88 /* WireTesting.framework */; }; + 591B6E422C8B09B6009F8A7B /* WireRequestStrategy.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1669016A1D707509000FE4AF /* WireRequestStrategy.framework */; }; 59271BED2B90D2140019B726 /* ClientRegistrationDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59271BEC2B90D2140019B726 /* ClientRegistrationDelegate.swift */; }; 59271BF02B90D2510019B726 /* MockOTREntity.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59271BEE2B90D24A0019B726 /* MockOTREntity.swift */; }; 597B70C92B03CC76006C2121 /* UpdateConversationProtocolActionHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = 597B70C82B03CC76006C2121 /* UpdateConversationProtocolActionHandler.swift */; }; 597B70CC2B03CC83006C2121 /* UpdateConversationProtocolActionHandlerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 597B70CA2B03CC7D006C2121 /* UpdateConversationProtocolActionHandlerTests.swift */; }; + 598D04302C89C67E00B64D71 /* WireFoundation in Frameworks */ = {isa = PBXBuildFile; productRef = 598D042F2C89C67E00B64D71 /* WireFoundation */; }; + 598D04332C89C6CF00B64D71 /* WireFoundation in Frameworks */ = {isa = PBXBuildFile; productRef = 598D04322C89C6CF00B64D71 /* WireFoundation */; }; 598E870D2BF4E08100FC5438 /* WireUtilitiesSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 598E870C2BF4E08100FC5438 /* WireUtilitiesSupport.framework */; }; - 59D1C3122B1DF3AD0016F6B2 /* WireDataModelSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 59D1C3112B1DF3AD0016F6B2 /* WireDataModelSupport.framework */; }; - 59D5888D2C7CDA0C00CAFA0F /* WireUtilitiesPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 59D5888C2C7CDA0C00CAFA0F /* WireUtilitiesPackage */; }; - 59D588912C7CDA2E00CAFA0F /* WireUtilitiesPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 59D588902C7CDA2E00CAFA0F /* WireUtilitiesPackage */; }; 5E68F22722452CDC00298376 /* LinkPreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E68F22622452CDC00298376 /* LinkPreprocessor.swift */; }; 5E9EA4DE2243C10400D401B2 /* LinkAttachmentsPreprocessor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E9EA4DD2243C10400D401B2 /* LinkAttachmentsPreprocessor.swift */; }; 5E9EA4E02243C6B200D401B2 /* LinkAttachmentsPreprocessorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5E9EA4DF2243C6B200D401B2 /* LinkAttachmentsPreprocessorTests.swift */; }; @@ -317,8 +319,6 @@ EE47346C29A39E8A00E6C04E /* EventDecoder+Proteus.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE47346B29A39E8A00E6C04E /* EventDecoder+Proteus.swift */; }; EE47346E29A3A17900E6C04E /* EventDecoder+MLS.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE47346D29A3A17900E6C04E /* EventDecoder+MLS.swift */; }; EE4C5FBE27D2C5CD000C0D45 /* BundledMessageNotificationBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE4C5FBD27D2C5CD000C0D45 /* BundledMessageNotificationBuilder.swift */; }; - EE668BB22954A7C700D939E7 /* WireDataModel.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE668BB12954A7C700D939E7 /* WireDataModel.framework */; }; - EE67F72C296F0CE4001D7C88 /* WireTesting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F72B296F0CE4001D7C88 /* WireTesting.framework */; }; EE7F02272A80E5F400FE5695 /* CreateGroupConversationActionHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE7F02262A80E5F400FE5695 /* CreateGroupConversationActionHandler.swift */; }; EE7F02292A835FBA00FE5695 /* CreateGroupConversationActionHandlerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE7F02282A835FBA00FE5695 /* CreateGroupConversationActionHandlerTests.swift */; }; EE7F022B2A8391C500FE5695 /* ConversationServiceTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE7F022A2A8391C500FE5695 /* ConversationServiceTests.swift */; }; @@ -459,29 +459,6 @@ }; /* End PBXContainerItemProxy section */ -/* Begin PBXCopyFilesBuildPhase section */ - 59D5888F2C7CDA0C00CAFA0F /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; - 59D588932C7CDA2E00CAFA0F /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - /* Begin PBXFileReference section */ 012B55F52C4A8FFC00DC12D0 /* EventHasher.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EventHasher.swift; sourceTree = ""; }; 06025661248E467B00E060E1 /* NotificationStreamSync.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NotificationStreamSync.swift; sourceTree = ""; }; @@ -964,8 +941,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - EE668BB22954A7C700D939E7 /* WireDataModel.framework in Frameworks */, - 59D5888D2C7CDA0C00CAFA0F /* WireUtilitiesPackage in Frameworks */, + 598D04332C89C6CF00B64D71 /* WireFoundation in Frameworks */, + 591B6E3B2C8B09AA009F8A7B /* WireDataModel.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -975,10 +952,10 @@ files = ( BF7D9BE11D8C351900949267 /* WireRequestStrategy.framework in Frameworks */, CB7979052C73663B006FBA58 /* WireRequestStrategySupport.framework in Frameworks */, + 598D04302C89C67E00B64D71 /* WireFoundation in Frameworks */, 598E870D2BF4E08100FC5438 /* WireUtilitiesSupport.framework in Frameworks */, CB5120532C6FD69F000C8FEC /* WireTransportSupport.framework in Frameworks */, - 59D1C3122B1DF3AD0016F6B2 /* WireDataModelSupport.framework in Frameworks */, - 59D588912C7CDA2E00CAFA0F /* WireUtilitiesPackage in Frameworks */, + 591B6E3D2C8B09AE009F8A7B /* WireDataModelSupport.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -986,7 +963,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 591802D52B7127F1003B7353 /* WireRequestStrategy.framework in Frameworks */, + 591B6E422C8B09B6009F8A7B /* WireRequestStrategy.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -994,7 +971,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - EE67F72C296F0CE4001D7C88 /* WireTesting.framework in Frameworks */, + 591B6E3F2C8B09B3009F8A7B /* WireTesting.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -2196,7 +2173,6 @@ 166901651D707509000FE4AF /* Sources */, 166901661D707509000FE4AF /* Frameworks */, 166901681D707509000FE4AF /* Resources */, - 59D5888F2C7CDA0C00CAFA0F /* Embed Frameworks */, ); buildRules = ( ); @@ -2204,7 +2180,7 @@ ); name = WireRequestStrategy; packageProductDependencies = ( - 59D5888C2C7CDA0C00CAFA0F /* WireUtilitiesPackage */, + 598D04322C89C6CF00B64D71 /* WireFoundation */, ); productName = WireRequestStrategy; productReference = 1669016A1D707509000FE4AF /* WireRequestStrategy.framework */; @@ -2217,7 +2193,6 @@ 166901701D707509000FE4AF /* Sources */, 166901711D707509000FE4AF /* Frameworks */, 166901721D707509000FE4AF /* Resources */, - 59D588932C7CDA2E00CAFA0F /* Embed Frameworks */, ); buildRules = ( ); @@ -2228,7 +2203,7 @@ ); name = WireRequestStrategyTests; packageProductDependencies = ( - 59D588902C7CDA2E00CAFA0F /* WireUtilitiesPackage */, + 598D042F2C89C67E00B64D71 /* WireFoundation */, ); productName = WireRequestStrategyTests; productReference = 166901741D707509000FE4AF /* WireRequestStrategyTests.xctest */; @@ -3209,13 +3184,13 @@ /* End XCConfigurationList section */ /* Begin XCSwiftPackageProductDependency section */ - 59D5888C2C7CDA0C00CAFA0F /* WireUtilitiesPackage */ = { + 598D042F2C89C67E00B64D71 /* WireFoundation */ = { isa = XCSwiftPackageProductDependency; - productName = WireUtilitiesPackage; + productName = WireFoundation; }; - 59D588902C7CDA2E00CAFA0F /* WireUtilitiesPackage */ = { + 598D04322C89C6CF00B64D71 /* WireFoundation */ = { isa = XCSwiftPackageProductDependency; - productName = WireUtilitiesPackage; + productName = WireFoundation; }; /* End XCSwiftPackageProductDependency section */ }; diff --git a/wire-ios-share-engine/WireShareEngine.xcodeproj/project.pbxproj b/wire-ios-share-engine/WireShareEngine.xcodeproj/project.pbxproj index 02920c6247b..56714fa526d 100644 --- a/wire-ios-share-engine/WireShareEngine.xcodeproj/project.pbxproj +++ b/wire-ios-share-engine/WireShareEngine.xcodeproj/project.pbxproj @@ -10,14 +10,14 @@ 165C55F62551AF1300731CA9 /* SharingSession+EncryptionAtRest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 165C55F52551AF1300731CA9 /* SharingSession+EncryptionAtRest.swift */; }; 166DCD9E2552969B004F4F59 /* SharingSessionTests+EncryptionAtRest.swift in Sources */ = {isa = PBXBuildFile; fileRef = 166DCD9D2552969B004F4F59 /* SharingSessionTests+EncryptionAtRest.swift */; }; 5470D3F31D76E1B000FDE440 /* WireShareEngine.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5470D3E81D76E1B000FDE440 /* WireShareEngine.framework */; }; + 591B6E322C8B098C009F8A7B /* WireRequestStrategy.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE668BC12954B82900D939E7 /* WireRequestStrategy.framework */; }; + 591B6E352C8B0991009F8A7B /* WireDataModelSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E6E504512BC58ACD004948E7 /* WireDataModelSupport.framework */; }; + 591B6E382C8B0995009F8A7B /* WireMockTransport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F6F8296F094C001D7C88 /* WireMockTransport.framework */; }; BFA18BD41D806050005C281B /* BaseSharingSessionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFA18BD31D806050005C281B /* BaseSharingSessionTests.swift */; }; CB79791D2C748580006FBA58 /* TestSetup.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB79791C2C748580006FBA58 /* TestSetup.swift */; }; CE7FBFC41E015C5900E1C4C9 /* RequestGeneratorStoreTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE7FBFC31E015C5900E1C4C9 /* RequestGeneratorStoreTests.swift */; }; CEB50AEC1DF9BADF00211B30 /* OperationLoopTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = CEB50AEB1DF9BADF00211B30 /* OperationLoopTests.swift */; }; - E6E504522BC58ACD004948E7 /* WireDataModelSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E6E504512BC58ACD004948E7 /* WireDataModelSupport.framework */; }; - EE668BC22954B82900D939E7 /* WireRequestStrategy.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE668BC12954B82900D939E7 /* WireRequestStrategy.framework */; }; EE67F6F5296F093E001D7C88 /* WireTesting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F6F4296F093E001D7C88 /* WireTesting.framework */; }; - EE67F6F9296F094C001D7C88 /* WireMockTransport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F6F8296F094C001D7C88 /* WireMockTransport.framework */; }; EE9AEC962BD159A900F7853F /* WireShareEngine.docc in Sources */ = {isa = PBXBuildFile; fileRef = EE9AEC952BD159A900F7853F /* WireShareEngine.docc */; }; F125E9B51E28DB06006583A2 /* SharingSessionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = F125E9B41E28DB06006583A2 /* SharingSessionTests.swift */; }; F154EE0B1F44826400CB8184 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = F154EE0A1F44826400CB8184 /* AppDelegate.swift */; }; @@ -100,7 +100,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - EE668BC22954B82900D939E7 /* WireRequestStrategy.framework in Frameworks */, + 591B6E322C8B098C009F8A7B /* WireRequestStrategy.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -109,7 +109,7 @@ buildActionMask = 2147483647; files = ( 5470D3F31D76E1B000FDE440 /* WireShareEngine.framework in Frameworks */, - E6E504522BC58ACD004948E7 /* WireDataModelSupport.framework in Frameworks */, + 591B6E352C8B0991009F8A7B /* WireDataModelSupport.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -118,7 +118,7 @@ buildActionMask = 2147483647; files = ( EE67F6F5296F093E001D7C88 /* WireTesting.framework in Frameworks */, - EE67F6F9296F094C001D7C88 /* WireMockTransport.framework in Frameworks */, + 591B6E382C8B0995009F8A7B /* WireMockTransport.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/wire-ios-share-engine/WireShareEngineTests/BaseSharingSessionTests.swift b/wire-ios-share-engine/WireShareEngineTests/BaseSharingSessionTests.swift index b10b9b58329..86d6675bb64 100644 --- a/wire-ios-share-engine/WireShareEngineTests/BaseSharingSessionTests.swift +++ b/wire-ios-share-engine/WireShareEngineTests/BaseSharingSessionTests.swift @@ -17,7 +17,6 @@ // import WireDataModel -@testable import WireDataModelSupport import WireLinkPreview import WireMockTransport import WireRequestStrategy @@ -25,6 +24,8 @@ import WireRequestStrategy import WireTesting import XCTest +@testable import WireDataModelSupport + final class FakeAuthenticationStatus: AuthenticationStatusProvider { var state: AuthenticationState = .authenticated } diff --git a/wire-ios-share-engine/WireShareEngineTests/OperationLoopTests.swift b/wire-ios-share-engine/WireShareEngineTests/OperationLoopTests.swift index 41a979eeecc..eec3ff79155 100644 --- a/wire-ios-share-engine/WireShareEngineTests/OperationLoopTests.swift +++ b/wire-ios-share-engine/WireShareEngineTests/OperationLoopTests.swift @@ -19,10 +19,11 @@ import Foundation import WireDataModel import WireRequestStrategy -@testable import WireShareEngine import WireTesting import XCTest +@testable import WireShareEngine + final class OperationLoopTests: ZMTBaseTest { var coreDataStack: CoreDataStack! = nil diff --git a/wire-ios-share-engine/WireShareEngineTests/RequestGeneratorStoreTests.swift b/wire-ios-share-engine/WireShareEngineTests/RequestGeneratorStoreTests.swift index 886ecbb041c..8863d1b3dc9 100644 --- a/wire-ios-share-engine/WireShareEngineTests/RequestGeneratorStoreTests.swift +++ b/wire-ios-share-engine/WireShareEngineTests/RequestGeneratorStoreTests.swift @@ -18,9 +18,10 @@ import Foundation import WireRequestStrategy -@testable import WireShareEngine import WireTesting +@testable import WireShareEngine + final class RequestGeneratorStoreTests: ZMTBaseTest { final class MockStrategy: NSObject, ZMRequestGeneratorSource, ZMContextChangeTrackerSource { diff --git a/wire-ios-share-engine/WireShareEngineTests/SharingSessionTests.swift b/wire-ios-share-engine/WireShareEngineTests/SharingSessionTests.swift index 83582b5e0e0..4d9fa7eaa24 100644 --- a/wire-ios-share-engine/WireShareEngineTests/SharingSessionTests.swift +++ b/wire-ios-share-engine/WireShareEngineTests/SharingSessionTests.swift @@ -17,10 +17,11 @@ // import WireDataModel -@testable import WireShareEngine import WireTesting import XCTest +@testable import WireShareEngine + final class SharingSessionTests: BaseSharingSessionTests { func createConversation(type: ZMConversationType, archived: Bool) -> ZMConversation { diff --git a/wire-ios-sync-engine/Source/Registration/UnregisteredTeam.swift b/wire-ios-sync-engine/Source/Registration/UnregisteredTeam.swift index 3933039d124..c71096d9e2a 100644 --- a/wire-ios-sync-engine/Source/Registration/UnregisteredTeam.swift +++ b/wire-ios-sync-engine/Source/Registration/UnregisteredTeam.swift @@ -16,8 +16,8 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // +import WireFoundation import WireUtilities -import WireUtilitiesPkg /// An object containing the details required to create a team. public struct UnregisteredTeam: Equatable { diff --git a/wire-ios-sync-engine/Source/Registration/UnregisteredUser+Payload.swift b/wire-ios-sync-engine/Source/Registration/UnregisteredUser+Payload.swift index e68d5f20724..3aa64f87d5f 100644 --- a/wire-ios-sync-engine/Source/Registration/UnregisteredUser+Payload.swift +++ b/wire-ios-sync-engine/Source/Registration/UnregisteredUser+Payload.swift @@ -17,7 +17,7 @@ // import WireDataModel -import WireUtilitiesPkg +import WireFoundation extension UnregisteredUser { diff --git a/wire-ios-sync-engine/Tests/Source/Data Model/ServiceUserTests.swift b/wire-ios-sync-engine/Tests/Source/Data Model/ServiceUserTests.swift index 7f79ea57ce8..a8fff145a6b 100644 --- a/wire-ios-sync-engine/Tests/Source/Data Model/ServiceUserTests.swift +++ b/wire-ios-sync-engine/Tests/Source/Data Model/ServiceUserTests.swift @@ -16,8 +16,8 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // +import WireFoundation import WireUtilities -import WireUtilitiesPkg import XCTest @testable import WireSyncEngine diff --git a/wire-ios-sync-engine/Tests/Source/E2EE/UserClientRequestFactoryTests.swift b/wire-ios-sync-engine/Tests/Source/E2EE/UserClientRequestFactoryTests.swift index 0a4b6b60b18..21589f12e97 100644 --- a/wire-ios-sync-engine/Tests/Source/E2EE/UserClientRequestFactoryTests.swift +++ b/wire-ios-sync-engine/Tests/Source/E2EE/UserClientRequestFactoryTests.swift @@ -21,10 +21,11 @@ import WireCryptobox import WireDataModel import WireDataModelSupport import WireMockTransport -@testable import WireSyncEngine import WireTesting import WireUtilities +@testable import WireSyncEngine + final class UserClientRequestFactoryTests: MessagingTest { var sut: UserClientRequestFactory! diff --git a/wire-ios-sync-engine/Tests/Source/E2EE/UserClientRequestStrategyTests.swift b/wire-ios-sync-engine/Tests/Source/E2EE/UserClientRequestStrategyTests.swift index 45abae460f8..a6be4d725e2 100644 --- a/wire-ios-sync-engine/Tests/Source/E2EE/UserClientRequestStrategyTests.swift +++ b/wire-ios-sync-engine/Tests/Source/E2EE/UserClientRequestStrategyTests.swift @@ -19,12 +19,13 @@ import WireDataModel import WireDataModelSupport import WireMockTransport -@testable import WireSyncEngine import WireTesting import WireTransportSupport import WireUtilities import XCTest +@testable import WireSyncEngine + @objcMembers public final class MockClientRegistrationStatusDelegate: NSObject, ZMClientRegistrationStatusDelegate { diff --git a/wire-ios-sync-engine/Tests/Source/Use cases/CheckOneOnOneConversationIsReadyUseCaseTests.swift b/wire-ios-sync-engine/Tests/Source/Use cases/CheckOneOnOneConversationIsReadyUseCaseTests.swift index efc9d9abfe8..fbd7874f933 100644 --- a/wire-ios-sync-engine/Tests/Source/Use cases/CheckOneOnOneConversationIsReadyUseCaseTests.swift +++ b/wire-ios-sync-engine/Tests/Source/Use cases/CheckOneOnOneConversationIsReadyUseCaseTests.swift @@ -16,11 +16,12 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -@testable import WireDataModelSupport -@testable import WireSyncEngine import WireTesting import XCTest +@testable import WireDataModelSupport +@testable import WireSyncEngine + class CheckOneOnOneConversationIsReadyUseCaseTests: XCTestCase { private var sut: CheckOneOnOneConversationIsReadyUseCase! diff --git a/wire-ios-sync-engine/Tests/Source/Use cases/GetUserClientFingerprintUseCaseTests.swift b/wire-ios-sync-engine/Tests/Source/Use cases/GetUserClientFingerprintUseCaseTests.swift index 544eea2dbf8..6dc621376bd 100644 --- a/wire-ios-sync-engine/Tests/Source/Use cases/GetUserClientFingerprintUseCaseTests.swift +++ b/wire-ios-sync-engine/Tests/Source/Use cases/GetUserClientFingerprintUseCaseTests.swift @@ -18,11 +18,12 @@ import Foundation import WireDataModelSupport -@testable import WireSyncEngine import WireSyncEngineSupport import WireTesting import XCTest +@testable import WireSyncEngine + final class GetUserClientFingerprintUseCaseTests: MessagingTest { var sut: GetUserClientFingerprintUseCase! diff --git a/wire-ios-sync-engine/Tests/Source/Use cases/SnoozeCertificateEnrollmentUseCaseTests.swift b/wire-ios-sync-engine/Tests/Source/Use cases/SnoozeCertificateEnrollmentUseCaseTests.swift index 6dfeca8b17f..f06970f28b0 100644 --- a/wire-ios-sync-engine/Tests/Source/Use cases/SnoozeCertificateEnrollmentUseCaseTests.swift +++ b/wire-ios-sync-engine/Tests/Source/Use cases/SnoozeCertificateEnrollmentUseCaseTests.swift @@ -17,10 +17,11 @@ // import Foundation +import WireTesting + @testable import WireDataModelSupport @testable import WireSyncEngine @testable import WireSyncEngineSupport -import WireTesting final class SnoozeCertificateEnrollmentUseCaseTests: ZMUserSessionTestsBase { diff --git a/wire-ios-sync-engine/WireSyncEngine.xcodeproj/project.pbxproj b/wire-ios-sync-engine/WireSyncEngine.xcodeproj/project.pbxproj index 5e571864d28..9828b0a1c27 100644 --- a/wire-ios-sync-engine/WireSyncEngine.xcodeproj/project.pbxproj +++ b/wire-ios-sync-engine/WireSyncEngine.xcodeproj/project.pbxproj @@ -9,7 +9,6 @@ /* Begin PBXBuildFile section */ 01300E62296838CE00D18B2E /* SessionManagerTests+Proxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01300E61296838CE00D18B2E /* SessionManagerTests+Proxy.swift */; }; 0145AE842B1154010097E3B8 /* WireSyncEngineSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = 0145AE832B1154010097E3B8 /* WireSyncEngineSupport.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 0145AE8B2B1155690097E3B8 /* WireSyncEngine.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 549815931A43232400A7CE2E /* WireSyncEngine.framework */; }; 0145AE902B1155760097E3B8 /* WireSyncEngineSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0145AE812B1154010097E3B8 /* WireSyncEngineSupport.framework */; }; 015519462C20D20800037358 /* WireDomain.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 015519452C20D20800037358 /* WireDomain.framework */; }; 0155194E2C20D29400037358 /* WireDomainSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0155194D2C20D29400037358 /* WireDomainSupport.framework */; }; @@ -379,22 +378,26 @@ 54FEAAA91BC7BB9C002DE521 /* ZMBlacklistDownloader+Testing.h in Headers */ = {isa = PBXBuildFile; fileRef = 54FEAAA81BC7BB9C002DE521 /* ZMBlacklistDownloader+Testing.h */; }; 54FF64291F73D00C00787EF2 /* NSManagedObjectContext+AuthenticationStatus.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54FF64281F73D00C00787EF2 /* NSManagedObjectContext+AuthenticationStatus.swift */; }; 554FEE2122AFF20600B1A8A1 /* ZMUserSession+LegalHold.swift in Sources */ = {isa = PBXBuildFile; fileRef = 554FEE2022AFF20600B1A8A1 /* ZMUserSession+LegalHold.swift */; }; + 591B6E0C2C8B091A009F8A7B /* WireSyncEngine.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 549815931A43232400A7CE2E /* WireSyncEngine.framework */; }; + 591B6E0E2C8B091E009F8A7B /* WireDataModelSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 59D1C30F2B1DEE6E0016F6B2 /* WireDataModelSupport.framework */; }; + 591B6E102C8B0926009F8A7B /* WireMockTransport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE668BB92954AA9300D939E7 /* WireMockTransport.framework */; }; + 591B6E132C8B092B009F8A7B /* WireDataModelSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 59D1C30F2B1DEE6E0016F6B2 /* WireDataModelSupport.framework */; }; + 591B6E152C8B092F009F8A7B /* avs.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F6C7296F0622001D7C88 /* avs.xcframework */; }; 59271BE82B908DAC0019B726 /* SecurityClassificationProviding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59271BE72B908DAC0019B726 /* SecurityClassificationProviding.swift */; }; 59271BEA2B908E150019B726 /* SecurityClassification.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59271BE92B908E150019B726 /* SecurityClassification.swift */; }; 597B70C32B03984C006C2121 /* ZMUserSession+DeveloperMenu.swift in Sources */ = {isa = PBXBuildFile; fileRef = 597B70C22B03984C006C2121 /* ZMUserSession+DeveloperMenu.swift */; }; + 598D04362C89C6FB00B64D71 /* WireFoundation in Frameworks */ = {isa = PBXBuildFile; productRef = 598D04352C89C6FB00B64D71 /* WireFoundation */; }; + 598D04392C89C70500B64D71 /* WireFoundation in Frameworks */ = {isa = PBXBuildFile; productRef = 598D04382C89C70500B64D71 /* WireFoundation */; }; + 598D043D2C89C70E00B64D71 /* WireFoundation in Frameworks */ = {isa = PBXBuildFile; productRef = 598D043C2C89C70E00B64D71 /* WireFoundation */; }; 598E87022BF4DE9600FC5438 /* WireSystemSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 598E87012BF4DE9600FC5438 /* WireSystemSupport.framework */; }; 598E87052BF4E01300FC5438 /* WireUtilitiesSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 598E87042BF4E01300FC5438 /* WireUtilitiesSupport.framework */; }; 59909A612C5BBF13009C41DE /* WireAPI in Frameworks */ = {isa = PBXBuildFile; productRef = 59909A602C5BBF13009C41DE /* WireAPI */; }; 59909A652C5BBFCC009C41DE /* WireAPI in Frameworks */ = {isa = PBXBuildFile; productRef = 59909A642C5BBFCC009C41DE /* WireAPI */; }; - 5996E88F2C19CAF3007A52F0 /* WireDataModelSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 59D1C30F2B1DEE6E0016F6B2 /* WireDataModelSupport.framework */; }; 5996E8922C19CB28007A52F0 /* WireSystemSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 598E87012BF4DE9600FC5438 /* WireSystemSupport.framework */; }; 5996E8952C19CB36007A52F0 /* WireUtilitiesSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 598E87042BF4E01300FC5438 /* WireUtilitiesSupport.framework */; }; 5996E89E2C19CF54007A52F0 /* AutoMockable.generated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5996E89B2C19CF54007A52F0 /* AutoMockable.generated.swift */; }; 5996E89F2C19CF54007A52F0 /* AutoMockable.manual.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5996E89C2C19CF54007A52F0 /* AutoMockable.manual.swift */; }; - 59D1C3102B1DEE6E0016F6B2 /* WireDataModelSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 59D1C30F2B1DEE6E0016F6B2 /* WireDataModelSupport.framework */; }; - 59D588982C7CDA7D00CAFA0F /* WireUtilitiesPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 59D588972C7CDA7D00CAFA0F /* WireUtilitiesPackage */; }; - 59D5889B2C7CDA9C00CAFA0F /* WireUtilitiesPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 59D5889A2C7CDA9C00CAFA0F /* WireUtilitiesPackage */; }; - 59D5889F2C7CDAA100CAFA0F /* WireUtilitiesPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 59D5889E2C7CDAA100CAFA0F /* WireUtilitiesPackage */; }; + 59B99FAE2C89DF7B00201827 /* WireDomainPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 59B99FAD2C89DF7B00201827 /* WireDomainPackage */; }; 59DA04A32BD25486003F9195 /* WireSyncEngineSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0145AE812B1154010097E3B8 /* WireSyncEngineSupport.framework */; }; 59E6A9142B4EE5CF00DBCC6B /* RecurringAction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59E6A9132B4EE5CF00DBCC6B /* RecurringAction.swift */; }; 59E6A9162B4EE5D500DBCC6B /* RecurringActionServiceInterface.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59E6A9152B4EE5D500DBCC6B /* RecurringActionServiceInterface.swift */; }; @@ -617,10 +620,8 @@ EE5FEF0521E8948F00E24F7F /* ZMUserSession+DarwinNotificationCenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE5FEF0421E8948F00E24F7F /* ZMUserSession+DarwinNotificationCenter.swift */; }; EE6654642445D4EE00CBF8D3 /* MockAddressBook.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE6654632445D4EE00CBF8D3 /* MockAddressBook.swift */; }; EE668BB62954AA7F00D939E7 /* WireRequestStrategy.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE668BB52954AA7F00D939E7 /* WireRequestStrategy.framework */; }; - EE668BBA2954AA9300D939E7 /* WireMockTransport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE668BB92954AA9300D939E7 /* WireMockTransport.framework */; }; EE67F6C8296F0622001D7C88 /* libPhoneNumberiOS.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F6C5296F0622001D7C88 /* libPhoneNumberiOS.xcframework */; }; EE67F6CA296F0622001D7C88 /* ZipArchive.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F6C6296F0622001D7C88 /* ZipArchive.xcframework */; }; - EE67F6CC296F0622001D7C88 /* avs.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F6C7296F0622001D7C88 /* avs.xcframework */; }; EE8584DB2B6938390045EAD4 /* CreateTeamOneOnOneConversationUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE8584DA2B6938390045EAD4 /* CreateTeamOneOnOneConversationUseCase.swift */; }; EE8584DD2B6BD33B0045EAD4 /* ZMUserSession+OneOnOne.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE8584DC2B6BD33B0045EAD4 /* ZMUserSession+OneOnOne.swift */; }; EE88B04F2BF62B140013F0BD /* SelfSupportedProtocolsRequestStrategy.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE88B04E2BF62B140013F0BD /* SelfSupportedProtocolsRequestStrategy.swift */; }; @@ -781,29 +782,6 @@ }; /* End PBXContainerItemProxy section */ -/* Begin PBXCopyFilesBuildPhase section */ - 59909A632C5BBF13009C41DE /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; - 59909A672C5BBFCC009C41DE /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - /* Begin PBXFileReference section */ 01300E61296838CE00D18B2E /* SessionManagerTests+Proxy.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "SessionManagerTests+Proxy.swift"; sourceTree = ""; }; 0145AE812B1154010097E3B8 /* WireSyncEngineSupport.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = WireSyncEngineSupport.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -1584,8 +1562,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 591B6E0C2C8B091A009F8A7B /* WireSyncEngine.framework in Frameworks */, 59909A652C5BBFCC009C41DE /* WireAPI in Frameworks */, - 0145AE8B2B1155690097E3B8 /* WireSyncEngine.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1595,10 +1573,10 @@ files = ( 59FFADA22C8229CE000C8085 /* WireDomainSupport.framework in Frameworks */, 598E87022BF4DE9600FC5438 /* WireSystemSupport.framework in Frameworks */, + 591B6E0E2C8B091E009F8A7B /* WireDataModelSupport.framework in Frameworks */, 169BA1D725ECDBA300374343 /* WireSyncEngine.framework in Frameworks */, - 5996E88F2C19CAF3007A52F0 /* WireDataModelSupport.framework in Frameworks */, - 59D5889B2C7CDA9C00CAFA0F /* WireUtilitiesPackage in Frameworks */, 59DA04A32BD25486003F9195 /* WireSyncEngineSupport.framework in Frameworks */, + 598D043D2C89C70E00B64D71 /* WireFoundation in Frameworks */, CB79AC7C2C6DFAA2003CF5F4 /* WireTransportSupport.framework in Frameworks */, 59FFADA42C8229DE000C8085 /* WireTesting.framework in Frameworks */, 598E87052BF4E01300FC5438 /* WireUtilitiesSupport.framework in Frameworks */, @@ -1610,7 +1588,7 @@ buildActionMask = 2147483647; files = ( 544BA1571A43424F00D3B852 /* WireSyncEngine.framework in Frameworks */, - EE668BBA2954AA9300D939E7 /* WireMockTransport.framework in Frameworks */, + 591B6E102C8B0926009F8A7B /* WireMockTransport.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1619,14 +1597,14 @@ buildActionMask = 2147483647; files = ( 0155194E2C20D29400037358 /* WireDomainSupport.framework in Frameworks */, - 59D5889F2C7CDAA100CAFA0F /* WireUtilitiesPackage in Frameworks */, 5996E8922C19CB28007A52F0 /* WireSystemSupport.framework in Frameworks */, 59FFADA02C8229BB000C8085 /* WireTransportSupport.framework in Frameworks */, 5996E8952C19CB36007A52F0 /* WireUtilitiesSupport.framework in Frameworks */, CB4895532C4FB77C00CA2C25 /* WireTesting.framework in Frameworks */, 0145AE902B1155760097E3B8 /* WireSyncEngineSupport.framework in Frameworks */, + 598D04392C89C70500B64D71 /* WireFoundation in Frameworks */, + 591B6E132C8B092B009F8A7B /* WireDataModelSupport.framework in Frameworks */, 54F4DC5A1A4438B300FDB6EA /* WireSyncEngine.framework in Frameworks */, - 59D1C3102B1DEE6E0016F6B2 /* WireDataModelSupport.framework in Frameworks */, EE4E6A262B714490007C476D /* WireRequestStrategySupport.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -1635,13 +1613,14 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 591B6E152C8B092F009F8A7B /* avs.xcframework in Frameworks */, 59909A612C5BBF13009C41DE /* WireAPI in Frameworks */, - EE67F6CC296F0622001D7C88 /* avs.xcframework in Frameworks */, EE668BB62954AA7F00D939E7 /* WireRequestStrategy.framework in Frameworks */, 015519462C20D20800037358 /* WireDomain.framework in Frameworks */, + 59B99FAE2C89DF7B00201827 /* WireDomainPackage in Frameworks */, + 598D04362C89C6FB00B64D71 /* WireFoundation in Frameworks */, EE67F6C8296F0622001D7C88 /* libPhoneNumberiOS.xcframework in Frameworks */, EE67F6CA296F0622001D7C88 /* ZipArchive.xcframework in Frameworks */, - 59D588982C7CDA7D00CAFA0F /* WireUtilitiesPackage in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -3093,7 +3072,6 @@ 0145AE7D2B1154010097E3B8 /* Sources */, 0145AE7E2B1154010097E3B8 /* Frameworks */, 0145AE7F2B1154010097E3B8 /* Resources */, - 59909A672C5BBFCC009C41DE /* Embed Frameworks */, ); buildRules = ( ); @@ -3125,7 +3103,7 @@ ); name = IntegrationTests; packageProductDependencies = ( - 59D5889A2C7CDA9C00CAFA0F /* WireUtilitiesPackage */, + 598D043C2C89C70E00B64D71 /* WireFoundation */, ); productName = IntegrationTests; productReference = 169BA1D225ECDBA300374343 /* IntegrationTests.xctest */; @@ -3166,7 +3144,7 @@ ); name = UnitTests; packageProductDependencies = ( - 59D5889E2C7CDAA100CAFA0F /* WireUtilitiesPackage */, + 598D04382C89C70500B64D71 /* WireFoundation */, ); productName = "WireSyncEngine-iOS-Tests"; productReference = 3E1860C3191A649D000FE027 /* UnitTests.xctest */; @@ -3180,7 +3158,6 @@ 5498158E1A43232400A7CE2E /* Sources */, 5498158F1A43232400A7CE2E /* Frameworks */, 549815911A43232400A7CE2E /* Resources */, - 59909A632C5BBF13009C41DE /* Embed Frameworks */, ); buildRules = ( ); @@ -3189,7 +3166,8 @@ name = "WireSyncEngine-ios"; packageProductDependencies = ( 59909A602C5BBF13009C41DE /* WireAPI */, - 59D588972C7CDA7D00CAFA0F /* WireUtilitiesPackage */, + 598D04352C89C6FB00B64D71 /* WireFoundation */, + 59B99FAD2C89DF7B00201827 /* WireDomainPackage */, ); productName = "WireSyncEngine-ios"; productReference = 549815931A43232400A7CE2E /* WireSyncEngine.framework */; @@ -4594,25 +4572,29 @@ /* End XCRemoteSwiftPackageReference section */ /* Begin XCSwiftPackageProductDependency section */ - 59909A602C5BBF13009C41DE /* WireAPI */ = { + 598D04352C89C6FB00B64D71 /* WireFoundation */ = { isa = XCSwiftPackageProductDependency; - productName = WireAPI; + productName = WireFoundation; }; - 59909A642C5BBFCC009C41DE /* WireAPI */ = { + 598D04382C89C70500B64D71 /* WireFoundation */ = { isa = XCSwiftPackageProductDependency; - productName = WireAPI; + productName = WireFoundation; + }; + 598D043C2C89C70E00B64D71 /* WireFoundation */ = { + isa = XCSwiftPackageProductDependency; + productName = WireFoundation; }; - 59D588972C7CDA7D00CAFA0F /* WireUtilitiesPackage */ = { + 59909A602C5BBF13009C41DE /* WireAPI */ = { isa = XCSwiftPackageProductDependency; - productName = WireUtilitiesPackage; + productName = WireAPI; }; - 59D5889A2C7CDA9C00CAFA0F /* WireUtilitiesPackage */ = { + 59909A642C5BBFCC009C41DE /* WireAPI */ = { isa = XCSwiftPackageProductDependency; - productName = WireUtilitiesPackage; + productName = WireAPI; }; - 59D5889E2C7CDAA100CAFA0F /* WireUtilitiesPackage */ = { + 59B99FAD2C89DF7B00201827 /* WireDomainPackage */ = { isa = XCSwiftPackageProductDependency; - productName = WireUtilitiesPackage; + productName = WireDomainPackage; }; /* End XCSwiftPackageProductDependency section */ }; diff --git a/wire-ios-system/WireSystem Project.xcodeproj/project.xcworkspace/xcshareddata/IDETemplateMacros.plist b/wire-ios-system/WireSystem Project.xcodeproj/project.xcworkspace/xcshareddata/IDETemplateMacros.plist deleted file mode 120000 index 0aa12047039..00000000000 --- a/wire-ios-system/WireSystem Project.xcodeproj/project.xcworkspace/xcshareddata/IDETemplateMacros.plist +++ /dev/null @@ -1 +0,0 @@ -../../../../wire-ios-mono.xcworkspace/xcshareddata/IDETemplateMacros.plist \ No newline at end of file diff --git a/wire-ios-system/WireSystem Project.xcodeproj/project.pbxproj b/wire-ios-system/WireSystem.xcodeproj/project.pbxproj similarity index 99% rename from wire-ios-system/WireSystem Project.xcodeproj/project.pbxproj rename to wire-ios-system/WireSystem.xcodeproj/project.pbxproj index f6e27a9e84a..933e9fccd3d 100644 --- a/wire-ios-system/WireSystem Project.xcodeproj/project.pbxproj +++ b/wire-ios-system/WireSystem.xcodeproj/project.pbxproj @@ -22,7 +22,6 @@ 5473E7CA1B31A95A00C6A937 /* WireSystem.h in Headers */ = {isa = PBXBuildFile; fileRef = 5473E7C71B31A95A00C6A937 /* WireSystem.h */; settings = {ATTRIBUTES = (Public, ); }; }; 548662461B344AAB00298EFD /* ZMSAsserts.h in Headers */ = {isa = PBXBuildFile; fileRef = 548662451B344AAB00298EFD /* ZMSAsserts.h */; settings = {ATTRIBUTES = (Public, ); }; }; 548662521B344CB400298EFD /* ZMSDefines.h in Headers */ = {isa = PBXBuildFile; fileRef = 548662511B344CB400298EFD /* ZMSDefines.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 54A327321B99A3190004EB95 /* WireSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3ECC35191AD436750089FD4B /* WireSystem.framework */; }; 54A3273C1B99C04F0004EB95 /* ZMLogTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54A3273B1B99C04F0004EB95 /* ZMLogTests.swift */; }; 54D5736A1DBFBAFA00D6C2C4 /* ZMSLog+Recording.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54D573691DBFBAFA00D6C2C4 /* ZMSLog+Recording.swift */; }; 54DB81631DBF66CF00AF495D /* ZMSLog+Levels.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54DB81621DBF66CF00AF495D /* ZMSLog+Levels.swift */; }; @@ -30,6 +29,9 @@ 54DB81671DBFB16700AF495D /* CircularArrayTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54DB81661DBFB16700AF495D /* CircularArrayTests.swift */; }; 59059B9B2B4DBA1D0087D1F1 /* SystemDateProvider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59059B992B4DBA1D0087D1F1 /* SystemDateProvider.swift */; }; 59059B9C2B4DBA1D0087D1F1 /* CurrentDateProviding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59059B9A2B4DBA1D0087D1F1 /* CurrentDateProviding.swift */; }; + 591B6E892C8B0A33009F8A7B /* ZipArchive.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = E6B58E402B21D8920046B6E1 /* ZipArchive.xcframework */; }; + 591B6E8C2C8B0A37009F8A7B /* WireSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3ECC35191AD436750089FD4B /* WireSystem.framework */; }; + 591B6E8F2C8B0A3A009F8A7B /* WireSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3ECC35191AD436750089FD4B /* WireSystem.framework */; }; 592CC3F22C4AC89A0091CD65 /* PopoverPresentationControllerConfigurationTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 592CC3F12C4AC89A0091CD65 /* PopoverPresentationControllerConfigurationTests.swift */; }; 594450562BDFE8BF003ACC98 /* TimePoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 594450552BDFE8BF003ACC98 /* TimePoint.swift */; }; 594450582BE0F0C8003ACC98 /* GroupQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 594450572BE0F0C8003ACC98 /* GroupQueue.swift */; }; @@ -41,7 +43,6 @@ 598368A62C51095300ACF0C3 /* ZMAssertionDumpFile.swift in Sources */ = {isa = PBXBuildFile; fileRef = 598368A52C51095300ACF0C3 /* ZMAssertionDumpFile.swift */; }; 598368A82C51099600ACF0C3 /* ZMAssertionDumpFileTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 598368A72C51099600ACF0C3 /* ZMAssertionDumpFileTests.swift */; }; 598E86DB2BF4DB3700FC5438 /* WireSystemSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = 598E86DA2BF4DB3700FC5438 /* WireSystemSupport.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 598E86E02BF4DB9B00FC5438 /* WireSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3ECC35191AD436750089FD4B /* WireSystem.framework */; }; 598E86EA2BF4DBC900FC5438 /* AutoMockable.generated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 598E86E52BF4DBC900FC5438 /* AutoMockable.generated.swift */; }; 598E86ED2BF4DD3100FC5438 /* WireSystemSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 598E86D82BF4DB3700FC5438 /* WireSystemSupport.framework */; }; 5993B5502C6CFA47006AECBD /* SupportedOrientationsDelegatingSplitViewControllerDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5993B54F2C6CFA47006AECBD /* SupportedOrientationsDelegatingSplitViewControllerDelegate.swift */; }; @@ -60,7 +61,6 @@ E66F22F12C2ADD33005FD57E /* LoggerProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = E66F22F02C2ADD33005FD57E /* LoggerProtocol.swift */; }; E66F22F32C2ADD70005FD57E /* LogConvertible.swift in Sources */ = {isa = PBXBuildFile; fileRef = E66F22F22C2ADD70005FD57E /* LogConvertible.swift */; }; E66F22F52C2ADDAB005FD57E /* LogAttributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = E66F22F42C2ADDAB005FD57E /* LogAttributes.swift */; }; - E6B58E412B21D8920046B6E1 /* ZipArchive.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = E6B58E402B21D8920046B6E1 /* ZipArchive.xcframework */; }; EE9AEC842BD1585500F7853F /* WireSystem.docc in Sources */ = {isa = PBXBuildFile; fileRef = EE9AEC832BD1585500F7853F /* WireSystem.docc */; }; EEDC67192A1778D600201436 /* UserDefaults+Temporary.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEDC67182A1778D600201436 /* UserDefaults+Temporary.swift */; }; F1670FAE22A7C5F500BC6811 /* SanitizedString.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1670FAD22A7C5F500BC6811 /* SanitizedString.swift */; }; @@ -169,8 +169,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 591B6E892C8B0A33009F8A7B /* ZipArchive.xcframework in Frameworks */, 013334BC2C204AB0002D97DB /* CocoaLumberjackSwift in Frameworks */, - E6B58E412B21D8920046B6E1 /* ZipArchive.xcframework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -178,8 +178,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 591B6E8C2C8B0A37009F8A7B /* WireSystem.framework in Frameworks */, 598E86ED2BF4DD3100FC5438 /* WireSystemSupport.framework in Frameworks */, - 54A327321B99A3190004EB95 /* WireSystem.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -187,7 +187,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 598E86E02BF4DB9B00FC5438 /* WireSystem.framework in Frameworks */, + 591B6E8F2C8B0A3A009F8A7B /* WireSystem.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -533,7 +533,7 @@ }; }; }; - buildConfigurationList = 3ECC34C71AD430BB0089FD4B /* Build configuration list for PBXProject "WireSystem Project" */; + buildConfigurationList = 3ECC34C71AD430BB0089FD4B /* Build configuration list for PBXProject "WireSystem" */; compatibilityVersion = "Xcode 3.2"; developmentRegion = en; hasScannedForEncodings = 0; @@ -948,7 +948,7 @@ /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 3ECC34C71AD430BB0089FD4B /* Build configuration list for PBXProject "WireSystem Project" */ = { + 3ECC34C71AD430BB0089FD4B /* Build configuration list for PBXProject "WireSystem" */ = { isa = XCConfigurationList; buildConfigurations = ( 3ECC34C81AD430BB0089FD4B /* Debug */, diff --git a/wire-ios-link-preview/WireLinkPreview.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/wire-ios-system/WireSystem.xcodeproj/project.xcworkspace/contents.xcworkspacedata similarity index 100% rename from wire-ios-link-preview/WireLinkPreview.xcodeproj/project.xcworkspace/contents.xcworkspacedata rename to wire-ios-system/WireSystem.xcodeproj/project.xcworkspace/contents.xcworkspacedata diff --git a/wire-ios-system/WireSystem.xcodeproj/project.xcworkspace/xcshareddata/IDETemplateMacros.plist b/wire-ios-system/WireSystem.xcodeproj/project.xcworkspace/xcshareddata/IDETemplateMacros.plist new file mode 120000 index 00000000000..6a6ca40138a --- /dev/null +++ b/wire-ios-system/WireSystem.xcodeproj/project.xcworkspace/xcshareddata/IDETemplateMacros.plist @@ -0,0 +1 @@ +../../../../../wire-ios-mono.xcworkspace/xcshareddata/IDETemplateMacros.plist \ No newline at end of file diff --git a/wire-ios-link-preview/WireLinkPreview.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/wire-ios-system/WireSystem.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist similarity index 100% rename from wire-ios-link-preview/WireLinkPreview.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist rename to wire-ios-system/WireSystem.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/wire-ios-system/WireSystem Project.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/wire-ios-system/WireSystem.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings similarity index 100% rename from wire-ios-system/WireSystem Project.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings rename to wire-ios-system/WireSystem.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings diff --git a/wire-ios-system/WireSystem Project.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/wire-ios-system/WireSystem.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved similarity index 100% rename from wire-ios-system/WireSystem Project.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved rename to wire-ios-system/WireSystem.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved diff --git a/wire-ios-system/WireSystem Project.xcodeproj/xcshareddata/xcschemes/WireSystem.xcscheme b/wire-ios-system/WireSystem.xcodeproj/xcshareddata/xcschemes/WireSystem.xcscheme similarity index 89% rename from wire-ios-system/WireSystem Project.xcodeproj/xcshareddata/xcschemes/WireSystem.xcscheme rename to wire-ios-system/WireSystem.xcodeproj/xcshareddata/xcschemes/WireSystem.xcscheme index 77178a36a46..75b704fc24d 100644 --- a/wire-ios-system/WireSystem Project.xcodeproj/xcshareddata/xcschemes/WireSystem.xcscheme +++ b/wire-ios-system/WireSystem.xcodeproj/xcshareddata/xcschemes/WireSystem.xcscheme @@ -17,7 +17,7 @@ BlueprintIdentifier = "3ECC350F1AD436750089FD4B" BuildableName = "WireSystem.framework" BlueprintName = "WireSystem" - ReferencedContainer = "container:WireSystem Project.xcodeproj"> + ReferencedContainer = "container:WireSystem.xcodeproj"> + ReferencedContainer = "container:WireSystem.xcodeproj"> @@ -48,7 +48,7 @@ BlueprintIdentifier = "3ECC350F1AD436750089FD4B" BuildableName = "WireSystem.framework" BlueprintName = "WireSystem" - ReferencedContainer = "container:WireSystem Project.xcodeproj"> + ReferencedContainer = "container:WireSystem.xcodeproj"> @@ -59,7 +59,7 @@ BlueprintIdentifier = "54A3272B1B99A3190004EB95" BuildableName = "WireSystem Tests.xctest" BlueprintName = "WireSystem Tests" - ReferencedContainer = "container:WireSystem Project.xcodeproj"> + ReferencedContainer = "container:WireSystem.xcodeproj"> @@ -80,7 +80,7 @@ BlueprintIdentifier = "3ECC350F1AD436750089FD4B" BuildableName = "WireSystem.framework" BlueprintName = "WireSystem" - ReferencedContainer = "container:WireSystem Project.xcodeproj"> + ReferencedContainer = "container:WireSystem.xcodeproj"> @@ -96,7 +96,7 @@ BlueprintIdentifier = "3ECC350F1AD436750089FD4B" BuildableName = "WireSystem.framework" BlueprintName = "WireSystem" - ReferencedContainer = "container:WireSystem Project.xcodeproj"> + ReferencedContainer = "container:WireSystem.xcodeproj"> diff --git a/wire-ios-testing/WireTesting Project.xcodeproj/project.xcworkspace/xcshareddata/IDETemplateMacros.plist b/wire-ios-testing/WireTesting Project.xcodeproj/project.xcworkspace/xcshareddata/IDETemplateMacros.plist deleted file mode 120000 index 0aa12047039..00000000000 --- a/wire-ios-testing/WireTesting Project.xcodeproj/project.xcworkspace/xcshareddata/IDETemplateMacros.plist +++ /dev/null @@ -1 +0,0 @@ -../../../../wire-ios-mono.xcworkspace/xcshareddata/IDETemplateMacros.plist \ No newline at end of file diff --git a/wire-ios-testing/WireTesting Project.xcodeproj/project.pbxproj b/wire-ios-testing/WireTesting.xcodeproj/project.pbxproj similarity index 98% rename from wire-ios-testing/WireTesting Project.xcodeproj/project.pbxproj rename to wire-ios-testing/WireTesting.xcodeproj/project.pbxproj index c14286a290b..b531f25dbf0 100644 --- a/wire-ios-testing/WireTesting Project.xcodeproj/project.pbxproj +++ b/wire-ios-testing/WireTesting.xcodeproj/project.pbxproj @@ -40,11 +40,12 @@ 54AFD7E51CB6986A0090E33A /* not_animated.gif in Resources */ = {isa = PBXBuildFile; fileRef = 54AFD7DF1CB698690090E33A /* not_animated.gif */; }; 54AFD7E61CB6986A0090E33A /* tiny.jpg in Resources */ = {isa = PBXBuildFile; fileRef = 54AFD7E01CB698690090E33A /* tiny.jpg */; }; 54AFD7E81CB699710090E33A /* ZMTTestBaseTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 54AFD7E71CB699710090E33A /* ZMTTestBaseTests.swift */; }; + 591B6E842C8B0A2B009F8A7B /* OCMock.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F6AE296F0510001D7C88 /* OCMock.xcframework */; }; + 591B6E872C8B0A2F009F8A7B /* WireTesting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 096AD7BB1B68D41D00E007A8 /* WireTesting.framework */; }; 595D4B1B2C09FA5800AF6269 /* XCTestCase+waitForPredicate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 595D4B1A2C09FA5800AF6269 /* XCTestCase+waitForPredicate.swift */; }; 595D4B202C0A1A0500AF6269 /* XCTestExpectation+inverted.swift in Sources */ = {isa = PBXBuildFile; fileRef = 595D4B1F2C0A1A0500AF6269 /* XCTestExpectation+inverted.swift */; }; 634CCB112BAC54FF00A11AB3 /* GenericArrayActor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 634CCB102BAC54FF00A11AB3 /* GenericArrayActor.swift */; }; 87B0EF5C2139687500CE1931 /* ManagedObjectContextChangesMerger.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87B0EF5B2139687500CE1931 /* ManagedObjectContextChangesMerger.swift */; }; - A94B2335266F9C1200D89927 /* WireTesting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 096AD7BB1B68D41D00E007A8 /* WireTesting.framework */; }; CE6B7B301C11ED5F00FC4C2E /* ZMMockEntity.m in Sources */ = {isa = PBXBuildFile; fileRef = CE6B7B2C1C11ED5F00FC4C2E /* ZMMockEntity.m */; }; CE6B7B321C11ED5F00FC4C2E /* ZMMockEntity2.m in Sources */ = {isa = PBXBuildFile; fileRef = CE6B7B2E1C11ED5F00FC4C2E /* ZMMockEntity2.m */; }; CEB8FD6A1C11E50700ED0BE5 /* ZMMockManagedObjectContextFactory.m in Sources */ = {isa = PBXBuildFile; fileRef = CEB8FD681C11E50700ED0BE5 /* ZMMockManagedObjectContextFactory.m */; }; @@ -52,7 +53,6 @@ CEF709D91C1599E700AF3718 /* ZMMockEntity.h in Headers */ = {isa = PBXBuildFile; fileRef = CE6B7B2B1C11ED5F00FC4C2E /* ZMMockEntity.h */; settings = {ATTRIBUTES = (Public, ); }; }; CEF709DA1C1599ED00AF3718 /* ZMMockEntity2.h in Headers */ = {isa = PBXBuildFile; fileRef = CE6B7B2D1C11ED5F00FC4C2E /* ZMMockEntity2.h */; settings = {ATTRIBUTES = (Public, ); }; }; EE49A5572954850800406C4F /* WireSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE49A5562954850800406C4F /* WireSystem.framework */; }; - EE67F6AF296F0510001D7C88 /* OCMock.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F6AE296F0510001D7C88 /* OCMock.xcframework */; }; EE9AEC862BD1589E00F7853F /* WireTesting.docc in Sources */ = {isa = PBXBuildFile; fileRef = EE9AEC852BD1589E00F7853F /* WireTesting.docc */; }; F97E28BE1D8AACEA00A77567 /* UUID+WireTesting.swift in Sources */ = {isa = PBXBuildFile; fileRef = F97E28BD1D8AACEA00A77567 /* UUID+WireTesting.swift */; }; /* End PBXBuildFile section */ @@ -67,18 +67,6 @@ }; /* End PBXContainerItemProxy section */ -/* Begin PBXCopyFilesBuildPhase section */ - 096AD7F11B68D99A00E007A8 /* CopyFiles */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - /* Begin PBXFileReference section */ 091799561B7DFBD100E60DD9 /* NSUUID+WireTesting.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSUUID+WireTesting.h"; sourceTree = ""; }; 091799571B7DFBD100E60DD9 /* NSUUID+WireTesting.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSUUID+WireTesting.m"; sourceTree = ""; }; @@ -148,7 +136,7 @@ buildActionMask = 2147483647; files = ( EE49A5572954850800406C4F /* WireSystem.framework in Frameworks */, - EE67F6AF296F0510001D7C88 /* OCMock.xcframework in Frameworks */, + 591B6E842C8B0A2B009F8A7B /* OCMock.xcframework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -156,7 +144,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - A94B2335266F9C1200D89927 /* WireTesting.framework in Frameworks */, + 591B6E872C8B0A2F009F8A7B /* WireTesting.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -372,7 +360,6 @@ 096AD7C21B68D41D00E007A8 /* Sources */, 096AD7C31B68D41D00E007A8 /* Frameworks */, 096AD7C41B68D41D00E007A8 /* Resources */, - 096AD7F11B68D99A00E007A8 /* CopyFiles */, ); buildRules = ( ); @@ -405,7 +392,7 @@ }; }; }; - buildConfigurationList = 096AD7B51B68D41D00E007A8 /* Build configuration list for PBXProject "WireTesting Project" */; + buildConfigurationList = 096AD7B51B68D41D00E007A8 /* Build configuration list for PBXProject "WireTesting" */; compatibilityVersion = "Xcode 3.2"; developmentRegion = en; hasScannedForEncodings = 0; @@ -573,7 +560,7 @@ /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 096AD7B51B68D41D00E007A8 /* Build configuration list for PBXProject "WireTesting Project" */ = { + 096AD7B51B68D41D00E007A8 /* Build configuration list for PBXProject "WireTesting" */ = { isa = XCConfigurationList; buildConfigurations = ( 096AD7CF1B68D41D00E007A8 /* Debug */, diff --git a/wire-ios-system/WireSystem Project.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/wire-ios-testing/WireTesting.xcodeproj/project.xcworkspace/contents.xcworkspacedata similarity index 100% rename from wire-ios-system/WireSystem Project.xcodeproj/project.xcworkspace/contents.xcworkspacedata rename to wire-ios-testing/WireTesting.xcodeproj/project.xcworkspace/contents.xcworkspacedata diff --git a/wire-ios-testing/WireTesting.xcodeproj/project.xcworkspace/xcshareddata/IDETemplateMacros.plist b/wire-ios-testing/WireTesting.xcodeproj/project.xcworkspace/xcshareddata/IDETemplateMacros.plist new file mode 120000 index 00000000000..6a6ca40138a --- /dev/null +++ b/wire-ios-testing/WireTesting.xcodeproj/project.xcworkspace/xcshareddata/IDETemplateMacros.plist @@ -0,0 +1 @@ +../../../../../wire-ios-mono.xcworkspace/xcshareddata/IDETemplateMacros.plist \ No newline at end of file diff --git a/wire-ios-system/WireSystem Project.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/wire-ios-testing/WireTesting.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist similarity index 100% rename from wire-ios-system/WireSystem Project.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist rename to wire-ios-testing/WireTesting.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/wire-ios-link-preview/WireLinkPreview.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/wire-ios-testing/WireTesting.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings similarity index 100% rename from wire-ios-link-preview/WireLinkPreview.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings rename to wire-ios-testing/WireTesting.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings diff --git a/wire-ios-testing/WireTesting Project.xcodeproj/xcshareddata/xcschemes/WireTesting.xcscheme b/wire-ios-testing/WireTesting.xcodeproj/xcshareddata/xcschemes/WireTesting.xcscheme similarity index 89% rename from wire-ios-testing/WireTesting Project.xcodeproj/xcshareddata/xcschemes/WireTesting.xcscheme rename to wire-ios-testing/WireTesting.xcodeproj/xcshareddata/xcschemes/WireTesting.xcscheme index d691b2eaa0f..839adf48f1d 100644 --- a/wire-ios-testing/WireTesting Project.xcodeproj/xcshareddata/xcschemes/WireTesting.xcscheme +++ b/wire-ios-testing/WireTesting.xcodeproj/xcshareddata/xcschemes/WireTesting.xcscheme @@ -17,7 +17,7 @@ BlueprintIdentifier = "096AD7BA1B68D41D00E007A8" BuildableName = "WireTesting.framework" BlueprintName = "WireTesting" - ReferencedContainer = "container:WireTesting Project.xcodeproj"> + ReferencedContainer = "container:WireTesting.xcodeproj"> @@ -33,7 +33,7 @@ BlueprintIdentifier = "096AD7BA1B68D41D00E007A8" BuildableName = "WireTesting.framework" BlueprintName = "WireTesting" - ReferencedContainer = "container:WireTesting Project.xcodeproj"> + ReferencedContainer = "container:WireTesting.xcodeproj"> @@ -44,7 +44,7 @@ BlueprintIdentifier = "096AD7C51B68D41D00E007A8" BuildableName = "WireTesting-Tests.xctest" BlueprintName = "WireTesting-Tests" - ReferencedContainer = "container:WireTesting Project.xcodeproj"> + ReferencedContainer = "container:WireTesting.xcodeproj"> @@ -65,7 +65,7 @@ BlueprintIdentifier = "096AD7BA1B68D41D00E007A8" BuildableName = "WireTesting.framework" BlueprintName = "WireTesting" - ReferencedContainer = "container:WireTesting Project.xcodeproj"> + ReferencedContainer = "container:WireTesting.xcodeproj"> @@ -81,7 +81,7 @@ BlueprintIdentifier = "096AD7BA1B68D41D00E007A8" BuildableName = "WireTesting.framework" BlueprintName = "WireTesting" - ReferencedContainer = "container:WireTesting Project.xcodeproj"> + ReferencedContainer = "container:WireTesting.xcodeproj"> diff --git a/wire-ios-transport/WireTransport.xcodeproj/project.pbxproj b/wire-ios-transport/WireTransport.xcodeproj/project.pbxproj index 75f286acb2b..aab14e472f3 100644 --- a/wire-ios-transport/WireTransport.xcodeproj/project.pbxproj +++ b/wire-ios-transport/WireTransport.xcodeproj/project.pbxproj @@ -28,7 +28,6 @@ 16D7D9F7265251620049FFCA /* NativePushChannel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16D7D9F6265251620049FFCA /* NativePushChannel.swift */; }; 16F900E226C2CBE6002794B5 /* StarscreamPushChannel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16F900E126C2CBE6002794B5 /* StarscreamPushChannel.swift */; }; 22D0F91C29027191004E2882 /* ProxySettings.swift in Sources */ = {isa = PBXBuildFile; fileRef = 22D0F91B29027191004E2882 /* ProxySettings.swift */; }; - 3E88BCB31B1F35DF00232589 /* WireTransport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3E88BCA71B1F35DF00232589 /* WireTransport.framework */; }; 5431ABFF1DB4C35B0040343C /* RequestLoopDetection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5431ABFE1DB4C35B0040343C /* RequestLoopDetection.swift */; }; 5431AC011DB4C8330040343C /* RequestLoopDetectionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5431AC001DB4C8330040343C /* RequestLoopDetectionTests.swift */; }; 5451EF9E1B7A1359002F503B /* Collections+ZMTSafeTypes.h in Headers */ = {isa = PBXBuildFile; fileRef = 5451EF9D1B7A1359002F503B /* Collections+ZMTSafeTypes.h */; settings = {ATTRIBUTES = (Public, ); }; }; @@ -100,6 +99,10 @@ 54CA15DF1B32F791008D3787 /* WireTransport.h in Headers */ = {isa = PBXBuildFile; fileRef = 54CA15DE1B32F791008D3787 /* WireTransport.h */; settings = {ATTRIBUTES = (Public, ); }; }; 54CAD7091BB5411F006FF8E9 /* ZMTLogging.h in Headers */ = {isa = PBXBuildFile; fileRef = 54CAD7081BB54097006FF8E9 /* ZMTLogging.h */; }; 54EA3E6D1BEA65B80071592B /* Fakes.m in Sources */ = {isa = PBXBuildFile; fileRef = 54EA3E6C1BEA65B80071592B /* Fakes.m */; }; + 591B6E632C8B09F3009F8A7B /* WireUtilities.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F6F0296F079E001D7C88 /* WireUtilities.framework */; }; + 591B6E662C8B09F7009F8A7B /* WireTransport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3E88BCA71B1F35DF00232589 /* WireTransport.framework */; }; + 591B6E692C8B09FB009F8A7B /* WireTesting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F6ED296F074C001D7C88 /* WireTesting.framework */; }; + 591B6E6C2C8B09FE009F8A7B /* WireTransport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3E88BCA71B1F35DF00232589 /* WireTransport.framework */; }; 596090D52B14C91D0007583F /* ZMUpdateEventTypeTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 596090D42B14C91D0007583F /* ZMUpdateEventTypeTests.swift */; }; 59FFFB762B74E100008F0E1B /* Date+TransportCoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59FFFB752B74E100008F0E1B /* Date+TransportCoding.swift */; }; 59FFFB782B74E17C008F0E1B /* TransportCoding.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59FFFB772B74E17C008F0E1B /* TransportCoding.swift */; }; @@ -140,14 +143,11 @@ CB79AC2D2C66613B003CF5F4 /* ZMPersistentCookieStorage.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB79AC2C2C66613B003CF5F4 /* ZMPersistentCookieStorage.swift */; }; CB79AC582C6CFD44003CF5F4 /* WireTransportSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = CB79AC572C6CFD44003CF5F4 /* WireTransportSupport.h */; settings = {ATTRIBUTES = (Public, ); }; }; CB79AC662C6CFE95003CF5F4 /* HTTPCookie+Testing.swift in Sources */ = {isa = PBXBuildFile; fileRef = CB79AC652C6CFE95003CF5F4 /* HTTPCookie+Testing.swift */; }; - CB79AC752C6D0568003CF5F4 /* WireTransport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3E88BCA71B1F35DF00232589 /* WireTransport.framework */; }; CB79AC782C6D0582003CF5F4 /* WireTransportSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CB79AC552C6CFD44003CF5F4 /* WireTransportSupport.framework */; }; CE3677691D48B4BA00A8015A /* BackgroundActivityFactory.swift in Sources */ = {isa = PBXBuildFile; fileRef = CE3677681D48B4BA00A8015A /* BackgroundActivityFactory.swift */; }; E91D2222287429EE0030B481 /* MD5DigestHelper.swift in Sources */ = {isa = PBXBuildFile; fileRef = E91D2221287429EE0030B481 /* MD5DigestHelper.swift */; }; EE0FBF1C290FCBB1005B93BC /* BackendInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE0FBF1B290FCBB1005B93BC /* BackendInfo.swift */; }; EE50CA142AB19746007A07BF /* ZMAccessTokenHandler.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE50CA132AB19746007A07BF /* ZMAccessTokenHandler.swift */; }; - EE67F6EE296F074C001D7C88 /* WireTesting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F6ED296F074C001D7C88 /* WireTesting.framework */; }; - EE67F6F1296F079E001D7C88 /* WireUtilities.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F6F0296F079E001D7C88 /* WireUtilities.framework */; }; EE98AD0F2AAAF114005C30AD /* TLSVersion.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE98AD0E2AAAF114005C30AD /* TLSVersion.swift */; }; EE9AEC8E2BD1590E00F7853F /* WireTransport.docc in Sources */ = {isa = PBXBuildFile; fileRef = EE9AEC8D2BD1590E00F7853F /* WireTransport.docc */; }; EEAD28FD2BC00057001054D6 /* ZMUpdateEvent+SafeForLogging.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEAD28FC2BC00057001054D6 /* ZMUpdateEvent+SafeForLogging.swift */; }; @@ -402,7 +402,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - EE67F6EE296F074C001D7C88 /* WireTesting.framework in Frameworks */, + 591B6E692C8B09FB009F8A7B /* WireTesting.framework in Frameworks */, BF3A7A6C1D8C04550034FF40 /* WireTransport.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -411,7 +411,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - EE67F6F1296F079E001D7C88 /* WireUtilities.framework in Frameworks */, + 591B6E632C8B09F3009F8A7B /* WireUtilities.framework in Frameworks */, 01BBCFD82BF559AA001D9397 /* Starscream in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -420,8 +420,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 3E88BCB31B1F35DF00232589 /* WireTransport.framework in Frameworks */, CB79AC782C6D0582003CF5F4 /* WireTransportSupport.framework in Frameworks */, + 591B6E662C8B09F7009F8A7B /* WireTransport.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -429,8 +429,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - CB79AC752C6D0568003CF5F4 /* WireTransport.framework in Frameworks */, CB7979092C736835006FBA58 /* XCTest.framework in Frameworks */, + 591B6E6C2C8B09FE009F8A7B /* WireTransport.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/wire-ios-utilities/Source/Public/AccentColor/ZMAccentColor.swift b/wire-ios-utilities/Source/Public/AccentColor/ZMAccentColor.swift index 254eefe4f38..cfab8c0b0f7 100644 --- a/wire-ios-utilities/Source/Public/AccentColor/ZMAccentColor.swift +++ b/wire-ios-utilities/Source/Public/AccentColor/ZMAccentColor.swift @@ -17,7 +17,7 @@ // import Foundation -import WireUtilitiesPkg +import WireFoundation /// A type which only exists because optional `AccentColor?` cannot be represented in Objective C. @objc(ZMAccentColor) @objcMembers diff --git a/wire-ios-utilities/Tests/Public/AccentColorTests.swift b/wire-ios-utilities/Tests/Public/AccentColorTests.swift index 15af900beab..4884f97b40d 100644 --- a/wire-ios-utilities/Tests/Public/AccentColorTests.swift +++ b/wire-ios-utilities/Tests/Public/AccentColorTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUtilitiesPkg +import WireFoundation import XCTest @testable import WireUtilities diff --git a/wire-ios-utilities/Tests/ZMAccentColorTests.swift b/wire-ios-utilities/Tests/ZMAccentColorTests.swift index 3089fc0c7f1..2b4746120a9 100644 --- a/wire-ios-utilities/Tests/ZMAccentColorTests.swift +++ b/wire-ios-utilities/Tests/ZMAccentColorTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUtilitiesPkg +import WireFoundation import XCTest @testable import WireUtilities diff --git a/wire-ios-utilities/WireUtilities Project.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/wire-ios-utilities/WireUtilities Project.xcodeproj/project.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 919434a6254..00000000000 --- a/wire-ios-utilities/WireUtilities Project.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/wire-ios-utilities/WireUtilities Project.xcodeproj/project.xcworkspace/xcshareddata/IDETemplateMacros.plist b/wire-ios-utilities/WireUtilities Project.xcodeproj/project.xcworkspace/xcshareddata/IDETemplateMacros.plist deleted file mode 120000 index 0aa12047039..00000000000 --- a/wire-ios-utilities/WireUtilities Project.xcodeproj/project.xcworkspace/xcshareddata/IDETemplateMacros.plist +++ /dev/null @@ -1 +0,0 @@ -../../../../wire-ios-mono.xcworkspace/xcshareddata/IDETemplateMacros.plist \ No newline at end of file diff --git a/wire-ios-utilities/WireUtilities Project.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/wire-ios-utilities/WireUtilities Project.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d981003d6..00000000000 --- a/wire-ios-utilities/WireUtilities Project.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/wire-ios-utilities/WireUtilities Project.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/wire-ios-utilities/WireUtilities Project.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings deleted file mode 100644 index 3ddf867a10a..00000000000 --- a/wire-ios-utilities/WireUtilities Project.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings +++ /dev/null @@ -1,8 +0,0 @@ - - - - - BuildSystemType - Latest - - diff --git a/wire-ios-utilities/WireUtilities Project.xcodeproj/project.pbxproj b/wire-ios-utilities/WireUtilities.xcodeproj/project.pbxproj similarity index 97% rename from wire-ios-utilities/WireUtilities Project.xcodeproj/project.pbxproj rename to wire-ios-utilities/WireUtilities.xcodeproj/project.pbxproj index 39f18802cb8..02bbdf17632 100644 --- a/wire-ios-utilities/WireUtilities Project.xcodeproj/project.pbxproj +++ b/wire-ios-utilities/WireUtilities.xcodeproj/project.pbxproj @@ -29,7 +29,6 @@ 16B75F68222EE3A000DCAFF2 /* String+StrippingTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16B75F67222EE3A000DCAFF2 /* String+StrippingTests.swift */; }; 16D964DC1F79454000390417 /* SelfUnregisteringNotificationCenterToken.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16D964DB1F79454000390417 /* SelfUnregisteringNotificationCenterToken.swift */; }; 2577CB652B18D596007D3443 /* String+Clipping.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2577CB642B18D596007D3443 /* String+Clipping.swift */; }; - 3E88BD441B1F3EA300232589 /* WireUtilities.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3E88BD381B1F3EA300232589 /* WireUtilities.framework */; }; 3E88BE411B1F478200232589 /* ZMFunctional.m in Sources */ = {isa = PBXBuildFile; fileRef = 3E88BE081B1F478200232589 /* ZMFunctional.m */; }; 3E88BE551B1F478200232589 /* ZMTimer.m in Sources */ = {isa = PBXBuildFile; fileRef = 3E88BE121B1F478200232589 /* ZMTimer.m */; }; 3E88BF451B1F66B100232589 /* NSUUID+Data.m in Sources */ = {isa = PBXBuildFile; fileRef = 3E88BF3E1B1F66B100232589 /* NSUUID+Data.m */; }; @@ -67,15 +66,16 @@ 5915B9522BF4AF2000215817 /* UserDefaults+NativelySupportedKey.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5915B9512BF4AF2000215817 /* UserDefaults+NativelySupportedKey.swift */; }; 5915B95F2BF4C0B400215817 /* UserNotificationCenterAbstraction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5915B95E2BF4C0B400215817 /* UserNotificationCenterAbstraction.swift */; }; 5915B9622BF4C1AD00215817 /* UserNotificationCenterWrapper.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5915B9612BF4C1AD00215817 /* UserNotificationCenterWrapper.swift */; }; + 591B6E7A2C8B0A1B009F8A7B /* WireSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE712FC7295487A8006EA7B3 /* WireSystem.framework */; }; + 591B6E7C2C8B0A1E009F8A7B /* WireUtilities.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3E88BD381B1F3EA300232589 /* WireUtilities.framework */; }; + 591B6E7E2C8B0A23009F8A7B /* WireTesting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE98A0AD296EFBE60055E981 /* WireTesting.framework */; }; + 591B6E812C8B0A27009F8A7B /* WireUtilities.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3E88BD381B1F3EA300232589 /* WireUtilities.framework */; }; 5966D83E2BD6C20700305BBC /* AccentColorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5966D83D2BD6C20700305BBC /* AccentColorTests.swift */; }; 5966D8432BD7DF3100305BBC /* ZMAccentColor.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5966D8422BD7DF3100305BBC /* ZMAccentColor.swift */; }; 596C4DCE2BE0F95D00F63E61 /* NSManagedObjectContext+GroupQueue.swift in Sources */ = {isa = PBXBuildFile; fileRef = 596C4DCD2BE0F95D00F63E61 /* NSManagedObjectContext+GroupQueue.swift */; }; 598E86B62BF4D64100FC5438 /* WireUtilitiesSupport.h in Headers */ = {isa = PBXBuildFile; fileRef = 598E86B52BF4D64100FC5438 /* WireUtilitiesSupport.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 598E86BA2BF4D6A900FC5438 /* WireUtilities.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3E88BD381B1F3EA300232589 /* WireUtilities.framework */; }; 598E86C72BF4D77200FC5438 /* AutoMockable.generated.swift in Sources */ = {isa = PBXBuildFile; fileRef = 598E86C22BF4D77200FC5438 /* AutoMockable.generated.swift */; }; - 598E86CA2BF4D7AA00FC5438 /* WireUtilitiesSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 598E86B32BF4D64000FC5438 /* WireUtilitiesSupport.framework */; }; - 59D588812C7CD83D00CAFA0F /* WireUtilitiesPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 59D588802C7CD83D00CAFA0F /* WireUtilitiesPackage */; }; - 59D588852C7CD98800CAFA0F /* WireUtilitiesPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 59D588842C7CD98800CAFA0F /* WireUtilitiesPackage */; }; + 59B48C5A2C89CB1F00EA7999 /* WireFoundation in Frameworks */ = {isa = PBXBuildFile; productRef = 59B48C592C89CB1F00EA7999 /* WireFoundation */; }; 59E3C25C2BD8053000C95BD7 /* ZMAccentColorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59E3C25B2BD8053000C95BD7 /* ZMAccentColorTests.swift */; }; 59E3C25E2BD8094900C95BD7 /* ZMAccentColor.h in Headers */ = {isa = PBXBuildFile; fileRef = 59E3C25D2BD8094100C95BD7 /* ZMAccentColor.h */; settings = {ATTRIBUTES = (Public, ); }; }; 59F654252BF83DC500E521E0 /* MockUserNotificationCenterAbstraction.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59F654242BF83D1100E521E0 /* MockUserNotificationCenterAbstraction.swift */; }; @@ -141,8 +141,6 @@ EE1E354221E7739400F1144B /* DarwinNotificationCenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE1E354121E7739400F1144B /* DarwinNotificationCenter.swift */; }; EE1E357421E796F100F1144B /* DarwinNotificationCenterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE1E357321E796F100F1144B /* DarwinNotificationCenterTests.swift */; }; EE5316442A13B61200A9E0B1 /* PrivateUserDefaults.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE5316432A13B61200A9E0B1 /* PrivateUserDefaults.swift */; }; - EE712FC8295487A9006EA7B3 /* WireSystem.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE712FC7295487A8006EA7B3 /* WireSystem.framework */; }; - EE98A0AE296EFBE60055E981 /* WireTesting.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE98A0AD296EFBE60055E981 /* WireTesting.framework */; }; EE9AEC882BD158BC00F7853F /* WireUtilities.docc in Sources */ = {isa = PBXBuildFile; fileRef = EE9AEC872BD158BC00F7853F /* WireUtilities.docc */; }; EEAB73842A31CE4100EAB4E5 /* Data+Bytes.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEAB73832A31CE4100EAB4E5 /* Data+Bytes.swift */; }; EEAB73862A31F50F00EAB4E5 /* String+Base64.swift in Sources */ = {isa = PBXBuildFile; fileRef = EEAB73852A31F50F00EAB4E5 /* String+Base64.swift */; }; @@ -193,13 +191,6 @@ remoteGlobalIDString = 3E88BD371B1F3EA300232589; remoteInfo = WireUtilities; }; - 598E86CC2BF4D7AA00FC5438 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 3E88BD2A1B1F3E8400232589 /* Project object */; - proxyType = 1; - remoteGlobalIDString = 598E86B22BF4D64000FC5438; - remoteInfo = WireUtilitiesSupport; - }; F1D567B2207BA4CF00CCDD77 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = 3E88BD2A1B1F3E8400232589 /* Project object */; @@ -209,29 +200,6 @@ }; /* End PBXContainerItemProxy section */ -/* Begin PBXCopyFilesBuildPhase section */ - 59D588832C7CD83D00CAFA0F /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; - 59D588872C7CD98800CAFA0F /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - /* Begin PBXFileReference section */ 01461A3F2A60422B00C3C85E /* Developer-Flags.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = "Developer-Flags.xcconfig"; path = "../../../wire-ios/Configuration/Developer-Flags.xcconfig"; sourceTree = ""; }; 067BB07025068D6500946EC8 /* String+HexDecodedData.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "String+HexDecodedData.swift"; sourceTree = ""; }; @@ -420,7 +388,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - EE98A0AE296EFBE60055E981 /* WireTesting.framework in Frameworks */, + 591B6E7E2C8B0A23009F8A7B /* WireTesting.framework in Frameworks */, F1D567B1207BA40C00CCDD77 /* WireUtilities.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -429,8 +397,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - EE712FC8295487A9006EA7B3 /* WireSystem.framework in Frameworks */, - 59D588812C7CD83D00CAFA0F /* WireUtilitiesPackage in Frameworks */, + 591B6E7A2C8B0A1B009F8A7B /* WireSystem.framework in Frameworks */, + 59B48C5A2C89CB1F00EA7999 /* WireFoundation in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -438,9 +406,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 598E86CA2BF4D7AA00FC5438 /* WireUtilitiesSupport.framework in Frameworks */, - 3E88BD441B1F3EA300232589 /* WireUtilities.framework in Frameworks */, - 59D588852C7CD98800CAFA0F /* WireUtilitiesPackage in Frameworks */, + 591B6E7C2C8B0A1E009F8A7B /* WireUtilities.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -448,7 +414,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 598E86BA2BF4D6A900FC5438 /* WireUtilities.framework in Frameworks */, + 591B6E812C8B0A27009F8A7B /* WireUtilities.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -909,7 +875,6 @@ 3E88BD331B1F3EA300232589 /* Sources */, 3E88BD341B1F3EA300232589 /* Frameworks */, 3E88BD361B1F3EA300232589 /* Resources */, - 59D588832C7CD83D00CAFA0F /* Embed Frameworks */, ); buildRules = ( ); @@ -917,7 +882,7 @@ ); name = WireUtilities; packageProductDependencies = ( - 59D588802C7CD83D00CAFA0F /* WireUtilitiesPackage */, + 59B48C592C89CB1F00EA7999 /* WireFoundation */, ); productName = WireUtilities; productReference = 3E88BD381B1F3EA300232589 /* WireUtilities.framework */; @@ -930,18 +895,15 @@ 3E88BD3F1B1F3EA300232589 /* Sources */, 3E88BD401B1F3EA300232589 /* Frameworks */, 3E88BD411B1F3EA300232589 /* Resources */, - 59D588872C7CD98800CAFA0F /* Embed Frameworks */, ); buildRules = ( ); dependencies = ( 540EF2841EFD14AA00C6C6B5 /* PBXTargetDependency */, 3E88BD461B1F3EA300232589 /* PBXTargetDependency */, - 598E86CD2BF4D7AA00FC5438 /* PBXTargetDependency */, ); name = "WireUtilities-Tests"; packageProductDependencies = ( - 59D588842C7CD98800CAFA0F /* WireUtilitiesPackage */, ); productName = WireUtilitiesTests; productReference = 3E88BD431B1F3EA300232589 /* WireUtilities-Tests.xctest */; @@ -1000,7 +962,7 @@ }; }; }; - buildConfigurationList = 3E88BD2D1B1F3E8400232589 /* Build configuration list for PBXProject "WireUtilities Project" */; + buildConfigurationList = 3E88BD2D1B1F3E8400232589 /* Build configuration list for PBXProject "WireUtilities" */; compatibilityVersion = "Xcode 3.2"; developmentRegion = en; hasScannedForEncodings = 0; @@ -1258,11 +1220,6 @@ target = 3E88BD371B1F3EA300232589 /* WireUtilities */; targetProxy = 598E86BC2BF4D6A900FC5438 /* PBXContainerItemProxy */; }; - 598E86CD2BF4D7AA00FC5438 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 598E86B22BF4D64000FC5438 /* WireUtilitiesSupport */; - targetProxy = 598E86CC2BF4D7AA00FC5438 /* PBXContainerItemProxy */; - }; F1D567B3207BA4CF00CCDD77 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = 3E88BD371B1F3EA300232589 /* WireUtilities */; @@ -1564,7 +1521,7 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 3E88BD2D1B1F3E8400232589 /* Build configuration list for PBXProject "WireUtilities Project" */ = { + 3E88BD2D1B1F3E8400232589 /* Build configuration list for PBXProject "WireUtilities" */ = { isa = XCConfigurationList; buildConfigurations = ( 3E88BD2E1B1F3E8400232589 /* Debug */, @@ -1603,13 +1560,9 @@ /* End XCConfigurationList section */ /* Begin XCSwiftPackageProductDependency section */ - 59D588802C7CD83D00CAFA0F /* WireUtilitiesPackage */ = { - isa = XCSwiftPackageProductDependency; - productName = WireUtilitiesPackage; - }; - 59D588842C7CD98800CAFA0F /* WireUtilitiesPackage */ = { + 59B48C592C89CB1F00EA7999 /* WireFoundation */ = { isa = XCSwiftPackageProductDependency; - productName = WireUtilitiesPackage; + productName = WireFoundation; }; /* End XCSwiftPackageProductDependency section */ }; diff --git a/wire-ios-testing/WireTesting Project.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/wire-ios-utilities/WireUtilities.xcodeproj/project.xcworkspace/contents.xcworkspacedata similarity index 100% rename from wire-ios-testing/WireTesting Project.xcodeproj/project.xcworkspace/contents.xcworkspacedata rename to wire-ios-utilities/WireUtilities.xcodeproj/project.xcworkspace/contents.xcworkspacedata diff --git a/wire-ios-utilities/WireUtilities.xcodeproj/project.xcworkspace/xcshareddata/IDETemplateMacros.plist b/wire-ios-utilities/WireUtilities.xcodeproj/project.xcworkspace/xcshareddata/IDETemplateMacros.plist new file mode 120000 index 00000000000..6a6ca40138a --- /dev/null +++ b/wire-ios-utilities/WireUtilities.xcodeproj/project.xcworkspace/xcshareddata/IDETemplateMacros.plist @@ -0,0 +1 @@ +../../../../../wire-ios-mono.xcworkspace/xcshareddata/IDETemplateMacros.plist \ No newline at end of file diff --git a/wire-ios-testing/WireTesting Project.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/wire-ios-utilities/WireUtilities.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist similarity index 100% rename from wire-ios-testing/WireTesting Project.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist rename to wire-ios-utilities/WireUtilities.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist diff --git a/wire-ios-testing/WireTesting Project.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/wire-ios-utilities/WireUtilities.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings similarity index 100% rename from wire-ios-testing/WireTesting Project.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings rename to wire-ios-utilities/WireUtilities.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings diff --git a/wire-ios-utilities/WireUtilities Project.xcodeproj/xcshareddata/xcschemes/WireUtilities.xcscheme b/wire-ios-utilities/WireUtilities.xcodeproj/xcshareddata/xcschemes/WireUtilities.xcscheme similarity index 90% rename from wire-ios-utilities/WireUtilities Project.xcodeproj/xcshareddata/xcschemes/WireUtilities.xcscheme rename to wire-ios-utilities/WireUtilities.xcodeproj/xcshareddata/xcschemes/WireUtilities.xcscheme index 2f238bf75ec..86d34d0f0dd 100644 --- a/wire-ios-utilities/WireUtilities Project.xcodeproj/xcshareddata/xcschemes/WireUtilities.xcscheme +++ b/wire-ios-utilities/WireUtilities.xcodeproj/xcshareddata/xcschemes/WireUtilities.xcscheme @@ -17,7 +17,7 @@ BlueprintIdentifier = "3E88BD371B1F3EA300232589" BuildableName = "WireUtilities.framework" BlueprintName = "WireUtilities" - ReferencedContainer = "container:WireUtilities Project.xcodeproj"> + ReferencedContainer = "container:WireUtilities.xcodeproj"> + ReferencedContainer = "container:WireUtilities.xcodeproj"> @@ -48,7 +48,7 @@ BlueprintIdentifier = "3E88BD371B1F3EA300232589" BuildableName = "WireUtilities.framework" BlueprintName = "WireUtilities" - ReferencedContainer = "container:WireUtilities Project.xcodeproj"> + ReferencedContainer = "container:WireUtilities.xcodeproj"> @@ -66,7 +66,7 @@ BlueprintIdentifier = "3E88BD421B1F3EA300232589" BuildableName = "WireUtilities-Tests.xctest" BlueprintName = "WireUtilities-Tests" - ReferencedContainer = "container:WireUtilities Project.xcodeproj"> + ReferencedContainer = "container:WireUtilities.xcodeproj"> @@ -87,7 +87,7 @@ BlueprintIdentifier = "3E88BD371B1F3EA300232589" BuildableName = "WireUtilities.framework" BlueprintName = "WireUtilities" - ReferencedContainer = "container:WireUtilities Project.xcodeproj"> + ReferencedContainer = "container:WireUtilities.xcodeproj"> @@ -115,7 +115,7 @@ BlueprintIdentifier = "3E88BD371B1F3EA300232589" BuildableName = "WireUtilities.framework" BlueprintName = "WireUtilities" - ReferencedContainer = "container:WireUtilities Project.xcodeproj"> + ReferencedContainer = "container:WireUtilities.xcodeproj"> diff --git a/wire-ios/Tests/Fixture/CoreDataFixture.swift b/wire-ios/Tests/Fixture/CoreDataFixture.swift index 1cd3f5654ce..d2bde5df945 100644 --- a/wire-ios/Tests/Fixture/CoreDataFixture.swift +++ b/wire-ios/Tests/Fixture/CoreDataFixture.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUtilitiesPkg +import WireFoundation import XCTest @testable import Wire diff --git a/wire-ios/Tests/Mocks/MockUserType.swift b/wire-ios/Tests/Mocks/MockUserType.swift index 7a7fc70fcc7..39060ed41a4 100644 --- a/wire-ios/Tests/Mocks/MockUserType.swift +++ b/wire-ios/Tests/Mocks/MockUserType.swift @@ -18,7 +18,7 @@ import Foundation import WireDataModel -import WireUtilitiesPkg +import WireFoundation @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/AccentColorPickerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/AccentColorPickerSnapshotTests.swift index f258efd5fa1..f319af044c3 100644 --- a/wire-ios/Wire-iOS Tests/AccentColorPickerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/AccentColorPickerSnapshotTests.swift @@ -18,8 +18,8 @@ import SwiftUI import WireCommonComponents -import WireUITesting -import WireUtilitiesPkg +import WireFoundation +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/AccessoryTextField/ValidatedTextFieldTests.swift b/wire-ios/Wire-iOS Tests/AccessoryTextField/ValidatedTextFieldTests.swift index 4bb79467ea9..426af9db223 100644 --- a/wire-ios/Wire-iOS Tests/AccessoryTextField/ValidatedTextFieldTests.swift +++ b/wire-ios/Wire-iOS Tests/AccessoryTextField/ValidatedTextFieldTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/AccountViewSnapshotTests.swift b/wire-ios/Wire-iOS Tests/AccountViewSnapshotTests.swift index e2c16b1cea8..c4a6a855ac4 100644 --- a/wire-ios/Wire-iOS Tests/AccountViewSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/AccountViewSnapshotTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/AddParticipantsViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/AddParticipantsViewControllerSnapshotTests.swift index 208b4a16d8e..1acd0b65190 100644 --- a/wire-ios/Wire-iOS Tests/AddParticipantsViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/AddParticipantsViewControllerSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/AppLockModuleViewTests.swift b/wire-ios/Wire-iOS Tests/AppLockModuleViewTests.swift index 04add5886aa..d50c7c29d30 100644 --- a/wire-ios/Wire-iOS Tests/AppLockModuleViewTests.swift +++ b/wire-ios/Wire-iOS Tests/AppLockModuleViewTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/AudioButtonOverlayTests.swift b/wire-ios/Wire-iOS Tests/AudioButtonOverlayTests.swift index c5c25b52b15..11402f94841 100644 --- a/wire-ios/Wire-iOS Tests/AudioButtonOverlayTests.swift +++ b/wire-ios/Wire-iOS Tests/AudioButtonOverlayTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/AudioEffectsPickerViewControllerTests.swift b/wire-ios/Wire-iOS Tests/AudioEffectsPickerViewControllerTests.swift index 7b80cc4f41f..805d66df5a5 100644 --- a/wire-ios/Wire-iOS Tests/AudioEffectsPickerViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/AudioEffectsPickerViewControllerTests.swift @@ -18,7 +18,7 @@ import avs import WireDesign -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/Authentication/AuthenticationInterfaceBuilderTests.swift b/wire-ios/Wire-iOS Tests/Authentication/AuthenticationInterfaceBuilderTests.swift index bb263bcf6cf..2c73ce6e826 100644 --- a/wire-ios/Wire-iOS Tests/Authentication/AuthenticationInterfaceBuilderTests.swift +++ b/wire-ios/Wire-iOS Tests/Authentication/AuthenticationInterfaceBuilderTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/AvailabilityLabelTests.swift b/wire-ios/Wire-iOS Tests/AvailabilityLabelTests.swift index cb8170cd065..e5876e11366 100644 --- a/wire-ios/Wire-iOS Tests/AvailabilityLabelTests.swift +++ b/wire-ios/Wire-iOS Tests/AvailabilityLabelTests.swift @@ -18,7 +18,7 @@ import WireCommonComponents import WireDesign -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/BackupPasswordViewControllerTests.swift b/wire-ios/Wire-iOS Tests/BackupPasswordViewControllerTests.swift index 84417fd5478..f3dc983face 100644 --- a/wire-ios/Wire-iOS Tests/BackupPasswordViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/BackupPasswordViewControllerTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/BackupViewControllerTests.swift b/wire-ios/Wire-iOS Tests/BackupViewControllerTests.swift index de3a1fa8800..84d01779333 100644 --- a/wire-ios/Wire-iOS Tests/BackupViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/BackupViewControllerTests.swift @@ -17,7 +17,7 @@ // import WireDesign -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/Button/ButtonTests.swift b/wire-ios/Wire-iOS Tests/Button/ButtonTests.swift index edc6f9cd9d3..65a05948510 100644 --- a/wire-ios/Wire-iOS Tests/Button/ButtonTests.swift +++ b/wire-ios/Wire-iOS Tests/Button/ButtonTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/CallQualityControllerTests.swift b/wire-ios/Wire-iOS Tests/CallQualityControllerTests.swift index 7bc8959e41a..2a13cb454e6 100644 --- a/wire-ios/Wire-iOS Tests/CallQualityControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/CallQualityControllerTests.swift @@ -17,7 +17,7 @@ // import WireCommonComponents -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/CallStatusViewTests.swift b/wire-ios/Wire-iOS Tests/CallStatusViewTests.swift index ca1d8450958..f7c0ceab345 100644 --- a/wire-ios/Wire-iOS Tests/CallStatusViewTests.swift +++ b/wire-ios/Wire-iOS Tests/CallStatusViewTests.swift @@ -17,7 +17,7 @@ // import WireDesign -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/CallSystemMessageTests.swift b/wire-ios/Wire-iOS Tests/CallSystemMessageTests.swift index 72e1896588d..f77ba011a52 100644 --- a/wire-ios/Wire-iOS Tests/CallSystemMessageTests.swift +++ b/wire-ios/Wire-iOS Tests/CallSystemMessageTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/Calling/CallGridViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/Calling/CallGridViewControllerSnapshotTests.swift index c90c7e79910..a1aceedc167 100644 --- a/wire-ios/Wire-iOS Tests/Calling/CallGridViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/Calling/CallGridViewControllerSnapshotTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import WireUtilities import XCTest diff --git a/wire-ios/Wire-iOS Tests/Calling/CallInfoConfigurationTests.swift b/wire-ios/Wire-iOS Tests/Calling/CallInfoConfigurationTests.swift index 4ebb8850917..f89f8a8c505 100644 --- a/wire-ios/Wire-iOS Tests/Calling/CallInfoConfigurationTests.swift +++ b/wire-ios/Wire-iOS Tests/Calling/CallInfoConfigurationTests.swift @@ -86,6 +86,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { // MARK: - OneToOne Audio + @MainActor func testOneToOneIncomingAudioRinging() { // given let mockConversation = createOneOnOneConversation() @@ -102,6 +103,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.oneToOneIncomingAudioRinging, configuration) } + @MainActor func testOneToOneOutgoingAudioRinging() { // given let mockConversation = createOneOnOneConversation() @@ -118,6 +120,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.oneToOneOutgoingAudioRinging, configuration) } + @MainActor func testOneToOneProteusConversationIncomingAudioDegraded() { // given let mockConversation = createOneOnOneConversation() @@ -141,6 +144,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.oneToOneIncomingAudioDegraded, configuration) } + @MainActor func testOneToOneProteusConversationOutgoingAudioDegraded() { // given let mockConversation = createOneOnOneConversation() @@ -167,6 +171,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.oneToOneOutgoingAudioDegraded, configuration) } + @MainActor func testOneToOneMlsConversationOutgoingAudioDegraded() { // given let mockConversation = createOneOnOneConversation(messageProtocol: .mls) @@ -192,6 +197,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.oneToOneMlsOutgoingAudioDegraded, configuration) } + @MainActor func testOneToOneAudioConnecting() { // given let mockConversation = createOneOnOneConversation() @@ -208,6 +214,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.oneToOneAudioConnecting, configuration) } + @MainActor func testOneToOneAudioEstablishedUpgradedToVideo() { // given let mockConversation = createOneOnOneConversation() @@ -227,6 +234,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.oneToOneVideoEstablished, configuration) } + @MainActor func testOneToOneAudioEstablished() { // given let mockConversation = createOneOnOneConversation() @@ -245,6 +253,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.oneToOneAudioEstablished, configuration) } + @MainActor func testOneToOneAudioEstablishedCBR() { // given let mockConversation = createOneOnOneConversation() @@ -264,6 +273,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.oneToOneAudioEstablishedCBR, configuration) } + @MainActor func testOneToOneAudioEstablishedVBR() { // given let mockConversation = createOneOnOneConversation() @@ -285,6 +295,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { // MARK: - OneToOne Video + @MainActor func testOneToOneIncomingVideoRinging() { // given let mockConversation = createOneOnOneConversation() @@ -303,6 +314,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.oneToOneIncomingVideoRinging, configuration) } + @MainActor func testOneToOneIncomingVideoRingingVideoTurnedOff() { // given let mockConversation = createOneOnOneConversation() @@ -321,6 +333,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.oneToOneIncomingVideoRingingVideoTurnedOff, configuration) } + @MainActor func testOneToOneOutgoingVideoRinging() { // given let mockConversation = createOneOnOneConversation() @@ -339,6 +352,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.oneToOneOutgoingVideoRinging, configuration) } + @MainActor func testOneToOneVideoConnecting() { // given let mockConversation = createOneOnOneConversation() @@ -357,6 +371,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.oneToOneVideoConnecting, configuration) } + @MainActor func testOneToOneVideoEstablished() { // given let mockConversation = createOneOnOneConversation() @@ -381,6 +396,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.oneToOneVideoEstablished, configuration) } + @MainActor func testOneToOneVideoEstablishedWithScreenSharing() { // given let mockConversation = createOneOnOneConversation() @@ -405,6 +421,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.oneToOneVideoEstablished, configuration) } + @MainActor func testOneToOneVideoEstablishedDowngradedToAudio() { // given let mockConversation = createOneOnOneConversation() @@ -427,6 +444,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { // MARK: - Group Audio + @MainActor func testGroupIncomingAudioRinging() { // given let mockConversation = createGroupConversation() @@ -444,6 +462,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.groupIncomingAudioRinging, configuration) } + @MainActor func testGroupOutgoingAudioRinging() { // given let mockConversation = createGroupConversation() @@ -461,6 +480,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.groupOutgoingAudioRinging, configuration) } + @MainActor func testGroupAudioConnecting() { // given let mockConversation = createGroupConversation() @@ -478,6 +498,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.groupAudioConnecting, configuration) } + @MainActor func testGroupAudioEstablished() { // given let mockConversation = createGroupConversation() @@ -497,6 +518,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.groupAudioEstablished(mockUsers: mockUsers), configuration) } + @MainActor func testGroupAudioEstablishedNonTeamUser() { // given let mockConversation = createGroupConversation() @@ -520,6 +542,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.groupAudioEstablishedVideoUnavailable(mockUsers: mockUsers), configuration)// canToggleMediaType } + @MainActor func testGroupAudioEstablishedNonTeamUserRemoteTurnedVideoOn() { // given let mockConversation = createGroupConversation() @@ -538,6 +561,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.groupAudioEstablishedRemoteTurnedVideoOn(mockUsers: mockUsers), configuration) } + @MainActor func testGroupAudioEstablishedLargeGroup() { // given let fixture = CallInfoTestFixture(otherUser: otherUser, selfUser: selfUser, groupSize: .large, mockUsers: mockUsers) @@ -559,6 +583,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.groupAudioEstablishedVideoUnavailable(mockUsers: mockUsers), configuration) } + @MainActor func testOneToOneIncomingVideoRingingWithVideoPermissionsDeniedForever() { // given let mockConversation = createOneOnOneConversation() @@ -577,6 +602,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.oneToOneIncomingVideoRingingWithPermissionsDeniedForever, configuration) } + @MainActor func testOneToOneIncomingVideoRingingWithUndeterminedVideoPermissions() { // given let mockConversation = createOneOnOneConversation() @@ -597,6 +623,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { // MARK: - Group Video + @MainActor func testGroupIncomingVideoRinging() { // given let mockConversation = createGroupConversation() @@ -615,6 +642,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.groupIncomingVideoRinging, configuration) } + @MainActor func testGroupOutgoingVideoRinging() { // given let mockConversation = createGroupConversation() @@ -633,6 +661,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.groupOutgoingVideoRinging, configuration) } + @MainActor func testGroupVideoConnecting() { // given let mockConversation = createGroupConversation() @@ -651,6 +680,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { assertEquals(fixture.groupVideoConnecting, configuration) } + @MainActor func testGroupVideoEstablished() { // given let mockConversation = createGroupConversation() @@ -673,6 +703,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { // MARK: - Video Placeholder + @MainActor func testVideoPermissionsPlaceholderRespectsPreferenceInIncomingVideoCall() { // given let mockConversation = createGroupConversation() @@ -691,6 +722,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { XCTAssertEqual(configuration.videoPlaceholderState, .statusTextHidden) } + @MainActor func testVideoPermissionsPlaceholderHiddenInIncomingAudioCall() { // given let mockConversation = createGroupConversation() @@ -709,6 +741,7 @@ final class CallInfoConfigurationTests: ZMSnapshotTestCase { XCTAssertEqual(configuration.videoPlaceholderState, .hidden) } + @MainActor func testVideoPermissionsPlaceholderHiddenInEstablishedVideoCall() { // given let mockConversation = createGroupConversation() diff --git a/wire-ios/Wire-iOS Tests/Calling/CallParticipantDetailsViewTests.swift b/wire-ios/Wire-iOS Tests/Calling/CallParticipantDetailsViewTests.swift index 036d684cc60..a28179e4029 100644 --- a/wire-ios/Wire-iOS Tests/Calling/CallParticipantDetailsViewTests.swift +++ b/wire-ios/Wire-iOS Tests/Calling/CallParticipantDetailsViewTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/Calling/CallParticipantViewTests.swift b/wire-ios/Wire-iOS Tests/Calling/CallParticipantViewTests.swift index 3f245a9b53b..79097533656 100644 --- a/wire-ios/Wire-iOS Tests/Calling/CallParticipantViewTests.swift +++ b/wire-ios/Wire-iOS Tests/Calling/CallParticipantViewTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/Calling/CallParticipantsListViewControllerTests.swift b/wire-ios/Wire-iOS Tests/Calling/CallParticipantsListViewControllerTests.swift index 37c41f0409a..bba861a21f7 100644 --- a/wire-ios/Wire-iOS Tests/Calling/CallParticipantsListViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/Calling/CallParticipantsListViewControllerTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import WireUtilities import XCTest diff --git a/wire-ios/Wire-iOS Tests/Calling/GridViewTests.swift b/wire-ios/Wire-iOS Tests/Calling/GridViewTests.swift index 73088743a30..49ea074762c 100644 --- a/wire-ios/Wire-iOS Tests/Calling/GridViewTests.swift +++ b/wire-ios/Wire-iOS Tests/Calling/GridViewTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/Calling/RoundedPageIndicatorTests.swift b/wire-ios/Wire-iOS Tests/Calling/RoundedPageIndicatorTests.swift index d66852bb3fb..32fd624a177 100644 --- a/wire-ios/Wire-iOS Tests/Calling/RoundedPageIndicatorTests.swift +++ b/wire-ios/Wire-iOS Tests/Calling/RoundedPageIndicatorTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/CameraKeyboardViewControllerTests.swift b/wire-ios/Wire-iOS Tests/CameraKeyboardViewControllerTests.swift index 9e17d4d3935..5125f6b3fd0 100644 --- a/wire-ios/Wire-iOS Tests/CameraKeyboardViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/CameraKeyboardViewControllerTests.swift @@ -20,7 +20,7 @@ import AVFoundation import Photos import SnapshotTesting import WireDesign -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/CanvasViewControllerTests.swift b/wire-ios/Wire-iOS Tests/CanvasViewControllerTests.swift index 9b731809e4c..1462ae8c3a5 100644 --- a/wire-ios/Wire-iOS Tests/CanvasViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/CanvasViewControllerTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ChangeEmailViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/ChangeEmailViewControllerSnapshotTests.swift index b3f1ed76686..d32abdbec6e 100644 --- a/wire-ios/Wire-iOS Tests/ChangeEmailViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/ChangeEmailViewControllerSnapshotTests.swift @@ -17,7 +17,7 @@ // import WireSyncEngineSupport -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ChangeHandleViewControllerTests.swift b/wire-ios/Wire-iOS Tests/ChangeHandleViewControllerTests.swift index 0ec65791b44..a6156b6e673 100644 --- a/wire-ios/Wire-iOS Tests/ChangeHandleViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/ChangeHandleViewControllerTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/CharacterInputFieldSnapshotTests.swift b/wire-ios/Wire-iOS Tests/CharacterInputFieldSnapshotTests.swift index 19dd1788331..cca80dc5aa4 100644 --- a/wire-ios/Wire-iOS Tests/CharacterInputFieldSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/CharacterInputFieldSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/CheckmarkCellTests.swift b/wire-ios/Wire-iOS Tests/CheckmarkCellTests.swift index 432640c6d1d..289a07ffa6a 100644 --- a/wire-ios/Wire-iOS Tests/CheckmarkCellTests.swift +++ b/wire-ios/Wire-iOS Tests/CheckmarkCellTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/Collection/CollectionsViewControllerTests.swift b/wire-ios/Wire-iOS Tests/Collection/CollectionsViewControllerTests.swift index 5e098a7bac8..e7af81bf2e0 100644 --- a/wire-ios/Wire-iOS Tests/Collection/CollectionsViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/Collection/CollectionsViewControllerTests.swift @@ -17,7 +17,7 @@ // import WireDataModel -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/Collection/TextSearchResultsViewSnapshotTests.swift b/wire-ios/Wire-iOS Tests/Collection/TextSearchResultsViewSnapshotTests.swift index aa5a33783f4..44dfcffa129 100644 --- a/wire-ios/Wire-iOS Tests/Collection/TextSearchResultsViewSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/Collection/TextSearchResultsViewSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/Components/NotificationLabelTests.swift b/wire-ios/Wire-iOS Tests/Components/NotificationLabelTests.swift index 413c6039dd4..d4a75df4cc0 100644 --- a/wire-ios/Wire-iOS Tests/Components/NotificationLabelTests.swift +++ b/wire-ios/Wire-iOS Tests/Components/NotificationLabelTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/Components/RoundedBlurViewTests.swift b/wire-ios/Wire-iOS Tests/Components/RoundedBlurViewTests.swift index b4565b4230a..51bb2469213 100644 --- a/wire-ios/Wire-iOS Tests/Components/RoundedBlurViewTests.swift +++ b/wire-ios/Wire-iOS Tests/Components/RoundedBlurViewTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConfirmAssetViewControllerTests.swift b/wire-ios/Wire-iOS Tests/ConfirmAssetViewControllerTests.swift index 17a08d805d6..ddf2bf31002 100644 --- a/wire-ios/Wire-iOS Tests/ConfirmAssetViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/ConfirmAssetViewControllerTests.swift @@ -17,7 +17,7 @@ // import FLAnimatedImage -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConfirmEmailViewControllerTests.swift b/wire-ios/Wire-iOS Tests/ConfirmEmailViewControllerTests.swift index c987a584201..7aac25fd398 100644 --- a/wire-ios/Wire-iOS Tests/ConfirmEmailViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/ConfirmEmailViewControllerTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConnectRequestsViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/ConnectRequestsViewControllerSnapshotTests.swift index 532b20080e6..86f38ee94c4 100644 --- a/wire-ios/Wire-iOS Tests/ConnectRequestsViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/ConnectRequestsViewControllerSnapshotTests.swift @@ -18,7 +18,7 @@ import SnapshotTesting import WireDataModel -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ContactsCellSnapshotTests.swift b/wire-ios/Wire-iOS Tests/ContactsCellSnapshotTests.swift index bb608bbe02f..9d09ca8d5c3 100644 --- a/wire-ios/Wire-iOS Tests/ContactsCellSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/ContactsCellSnapshotTests.swift @@ -17,7 +17,7 @@ // import WireCommonComponents -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ContactsViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/ContactsViewControllerSnapshotTests.swift index 38cada34610..c60b7dfdc2a 100644 --- a/wire-ios/Wire-iOS Tests/ContactsViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/ContactsViewControllerSnapshotTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ContextMenu/MessageActionTests.swift b/wire-ios/Wire-iOS Tests/ContextMenu/MessageActionTests.swift index f5d5b45b246..70c26560d0b 100644 --- a/wire-ios/Wire-iOS Tests/ContextMenu/MessageActionTests.swift +++ b/wire-ios/Wire-iOS Tests/ContextMenu/MessageActionTests.swift @@ -17,7 +17,7 @@ // import WireCommonComponents -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationAvatarViewTests.swift b/wire-ios/Wire-iOS Tests/ConversationAvatarViewTests.swift index de3d90e9dd9..c5f7af0a158 100644 --- a/wire-ios/Wire-iOS Tests/ConversationAvatarViewTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationAvatarViewTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationCell/ConversationCellBurstTimestampViewSnapshotTests.swift b/wire-ios/Wire-iOS Tests/ConversationCell/ConversationCellBurstTimestampViewSnapshotTests.swift index 91cbb177b6e..97bac3c13bc 100644 --- a/wire-ios/Wire-iOS Tests/ConversationCell/ConversationCellBurstTimestampViewSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationCell/ConversationCellBurstTimestampViewSnapshotTests.swift @@ -17,7 +17,7 @@ // import WireDesign -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationCreationControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/ConversationCreationControllerSnapshotTests.swift index 10b2b2c6915..e0b0adf0316 100644 --- a/wire-ios/Wire-iOS Tests/ConversationCreationControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationCreationControllerSnapshotTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationDetail/GroupDetailsTimeoutOptionsCellTests.swift b/wire-ios/Wire-iOS Tests/ConversationDetail/GroupDetailsTimeoutOptionsCellTests.swift index 38434cd1162..e70c663c3d3 100644 --- a/wire-ios/Wire-iOS Tests/ConversationDetail/GroupDetailsTimeoutOptionsCellTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationDetail/GroupDetailsTimeoutOptionsCellTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationDetail/GroupDetailsViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/ConversationDetail/GroupDetailsViewControllerSnapshotTests.swift index 52fdfe51020..877beb94507 100644 --- a/wire-ios/Wire-iOS Tests/ConversationDetail/GroupDetailsViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationDetail/GroupDetailsViewControllerSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationDetail/ServiceDetailViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/ConversationDetail/ServiceDetailViewControllerSnapshotTests.swift index 37ef0ae965b..ad17da18940 100644 --- a/wire-ios/Wire-iOS Tests/ConversationDetail/ServiceDetailViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationDetail/ServiceDetailViewControllerSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationImagesViewControllerTests.swift b/wire-ios/Wire-iOS Tests/ConversationImagesViewControllerTests.swift index 78e047ce6e8..ceffe85ef31 100644 --- a/wire-ios/Wire-iOS Tests/ConversationImagesViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationImagesViewControllerTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationList/ConnectRequestsCell/ConnectRequestsCellSnapshotTests.swift b/wire-ios/Wire-iOS Tests/ConversationList/ConnectRequestsCell/ConnectRequestsCellSnapshotTests.swift index 367b4fb9d50..e0c93ff5bb3 100644 --- a/wire-ios/Wire-iOS Tests/ConversationList/ConnectRequestsCell/ConnectRequestsCellSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationList/ConnectRequestsCell/ConnectRequestsCellSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationList/Container/ConversationListViewControllerTests.swift b/wire-ios/Wire-iOS Tests/ConversationList/Container/ConversationListViewControllerTests.swift index 3c3187a212e..b536d352bdd 100644 --- a/wire-ios/Wire-iOS Tests/ConversationList/Container/ConversationListViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationList/Container/ConversationListViewControllerTests.swift @@ -18,8 +18,8 @@ import WireDataModelSupport import WireSyncEngineSupport -import WireUIBase -import WireUITesting +import WireTestingPackage +import WireUIFoundation import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationList/ConversationListCell/ConversationListCellTests.swift b/wire-ios/Wire-iOS Tests/ConversationList/ConversationListCell/ConversationListCellTests.swift index 2271d22ae6d..8112fa00bf9 100644 --- a/wire-ios/Wire-iOS Tests/ConversationList/ConversationListCell/ConversationListCellTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationList/ConversationListCell/ConversationListCellTests.swift @@ -17,7 +17,7 @@ // import UIKit -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationList/SectionHeader/ConversationListHeaderViewSnapshotTests.swift b/wire-ios/Wire-iOS Tests/ConversationList/SectionHeader/ConversationListHeaderViewSnapshotTests.swift index ed2220ffd75..bd864cf2a03 100644 --- a/wire-ios/Wire-iOS Tests/ConversationList/SectionHeader/ConversationListHeaderViewSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationList/SectionHeader/ConversationListHeaderViewSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationListAccessoryViewTests.swift b/wire-ios/Wire-iOS Tests/ConversationListAccessoryViewTests.swift index 2615add0d83..1eb92f84d89 100644 --- a/wire-ios/Wire-iOS Tests/ConversationListAccessoryViewTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationListAccessoryViewTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationMessageCell/BasicReactionPickerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/ConversationMessageCell/BasicReactionPickerSnapshotTests.swift index 0167c2892f0..dfd6fd272e3 100644 --- a/wire-ios/Wire-iOS Tests/ConversationMessageCell/BasicReactionPickerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationMessageCell/BasicReactionPickerSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationMessageCell/CompleteReactionPickerViewControllerTests.swift b/wire-ios/Wire-iOS Tests/ConversationMessageCell/CompleteReactionPickerViewControllerTests.swift index 164288e7b22..8f0c0299ee8 100644 --- a/wire-ios/Wire-iOS Tests/ConversationMessageCell/CompleteReactionPickerViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationMessageCell/CompleteReactionPickerViewControllerTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationMessageCell/ConversationLinkAttachmentMessageCellTests.swift b/wire-ios/Wire-iOS Tests/ConversationMessageCell/ConversationLinkAttachmentMessageCellTests.swift index fabf069a315..ffefd6be52e 100644 --- a/wire-ios/Wire-iOS Tests/ConversationMessageCell/ConversationLinkAttachmentMessageCellTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationMessageCell/ConversationLinkAttachmentMessageCellTests.swift @@ -16,7 +16,8 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireLinkPreview +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationMessageCell/ConversationReactionMessageTests.swift b/wire-ios/Wire-iOS Tests/ConversationMessageCell/ConversationReactionMessageTests.swift index 3737b18e436..76eafe36f66 100644 --- a/wire-ios/Wire-iOS Tests/ConversationMessageCell/ConversationReactionMessageTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationMessageCell/ConversationReactionMessageTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationMessageCell/ConversationSenderMessageDetailsCellSnapshotTests.swift b/wire-ios/Wire-iOS Tests/ConversationMessageCell/ConversationSenderMessageDetailsCellSnapshotTests.swift index 4813f42bc81..81f4c06ff0b 100644 --- a/wire-ios/Wire-iOS Tests/ConversationMessageCell/ConversationSenderMessageDetailsCellSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationMessageCell/ConversationSenderMessageDetailsCellSnapshotTests.swift @@ -17,7 +17,7 @@ // import WireDesign -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationMessageCell/MessageToolboxViewTests.swift b/wire-ios/Wire-iOS Tests/ConversationMessageCell/MessageToolboxViewTests.swift index 19a4c9bb6c1..0a50b9ee467 100644 --- a/wire-ios/Wire-iOS Tests/ConversationMessageCell/MessageToolboxViewTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationMessageCell/MessageToolboxViewTests.swift @@ -17,7 +17,7 @@ // import WireDesign -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationMessageCell/MockCell.swift b/wire-ios/Wire-iOS Tests/ConversationMessageCell/MockCell.swift index 6a034648d27..3942a4026bf 100644 --- a/wire-ios/Wire-iOS Tests/ConversationMessageCell/MockCell.swift +++ b/wire-ios/Wire-iOS Tests/ConversationMessageCell/MockCell.swift @@ -17,7 +17,7 @@ // import UIKit -import WireUtilitiesPkg +import WireFoundation @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationOptionsServicesViewControllerTests.swift b/wire-ios/Wire-iOS Tests/ConversationOptionsServicesViewControllerTests.swift index 8c867052081..76710da22d9 100644 --- a/wire-ios/Wire-iOS Tests/ConversationOptionsServicesViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationOptionsServicesViewControllerTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationOptionsViewControllerTests.swift b/wire-ios/Wire-iOS Tests/ConversationOptionsViewControllerTests.swift index 5d18a15a6bd..548f24984ed 100644 --- a/wire-ios/Wire-iOS Tests/ConversationOptionsViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationOptionsViewControllerTests.swift @@ -19,8 +19,8 @@ import SnapshotTesting import WireSyncEngine import WireSyncEngineSupport +import WireTestingPackage import WireTransport -import WireUITesting import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationTitleViewTests.swift b/wire-ios/Wire-iOS Tests/ConversationTitleViewTests.swift index 5d42c02129d..0a2a166d8fb 100644 --- a/wire-ios/Wire-iOS Tests/ConversationTitleViewTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationTitleViewTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ConversationViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/ConversationViewControllerSnapshotTests.swift index 17dad3f14b3..a663fc79ea1 100644 --- a/wire-ios/Wire-iOS Tests/ConversationViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/ConversationViewControllerSnapshotTests.swift @@ -18,7 +18,7 @@ import SnapshotTesting import WireSyncEngineSupport -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/CustomAppLock/AppLockChangeWarningViewControllerTests.swift b/wire-ios/Wire-iOS Tests/CustomAppLock/AppLockChangeWarningViewControllerTests.swift index 8035be36ff3..0d28261fbeb 100644 --- a/wire-ios/Wire-iOS Tests/CustomAppLock/AppLockChangeWarningViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/CustomAppLock/AppLockChangeWarningViewControllerTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/CustomAppLock/PasscodeSetupViewControllerTests.swift b/wire-ios/Wire-iOS Tests/CustomAppLock/PasscodeSetupViewControllerTests.swift index 6113841a28d..9628234503e 100644 --- a/wire-ios/Wire-iOS Tests/CustomAppLock/PasscodeSetupViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/CustomAppLock/PasscodeSetupViewControllerTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/CustomAppLock/UnlockViewControllerTests.swift b/wire-ios/Wire-iOS Tests/CustomAppLock/UnlockViewControllerTests.swift index daab19bfa59..5d636eaf3af 100644 --- a/wire-ios/Wire-iOS Tests/CustomAppLock/UnlockViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/CustomAppLock/UnlockViewControllerTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/CustomAppLock/WipeCompletionViewControllerTests.swift b/wire-ios/Wire-iOS Tests/CustomAppLock/WipeCompletionViewControllerTests.swift index c820c802406..62103d54ee1 100644 --- a/wire-ios/Wire-iOS Tests/CustomAppLock/WipeCompletionViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/CustomAppLock/WipeCompletionViewControllerTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/CustomAppLock/WipeDatabaseViewControllerTests.swift b/wire-ios/Wire-iOS Tests/CustomAppLock/WipeDatabaseViewControllerTests.swift index 89f506eda06..e401be48f5a 100644 --- a/wire-ios/Wire-iOS Tests/CustomAppLock/WipeDatabaseViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/CustomAppLock/WipeDatabaseViewControllerTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/DestructionCountdownViewTests.swift b/wire-ios/Wire-iOS Tests/DestructionCountdownViewTests.swift index f1421e2e626..741a65a4f08 100644 --- a/wire-ios/Wire-iOS Tests/DestructionCountdownViewTests.swift +++ b/wire-ios/Wire-iOS Tests/DestructionCountdownViewTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/DeviceManagement/ClientListViewControllerTests.swift b/wire-ios/Wire-iOS Tests/DeviceManagement/ClientListViewControllerTests.swift index 0920e6da243..78401f5c7bc 100644 --- a/wire-ios/Wire-iOS Tests/DeviceManagement/ClientListViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/DeviceManagement/ClientListViewControllerTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/DeviceManagement/ClientTableViewCellTests.swift b/wire-ios/Wire-iOS Tests/DeviceManagement/ClientTableViewCellTests.swift index adb4d7fe41c..a571d92c978 100644 --- a/wire-ios/Wire-iOS Tests/DeviceManagement/ClientTableViewCellTests.swift +++ b/wire-ios/Wire-iOS Tests/DeviceManagement/ClientTableViewCellTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/DeviceManagement/DeviceDetailsViewTests.swift b/wire-ios/Wire-iOS Tests/DeviceManagement/DeviceDetailsViewTests.swift index 31a55d5cb54..78147e91a47 100644 --- a/wire-ios/Wire-iOS Tests/DeviceManagement/DeviceDetailsViewTests.swift +++ b/wire-ios/Wire-iOS Tests/DeviceManagement/DeviceDetailsViewTests.swift @@ -18,7 +18,7 @@ import SwiftUI import WireRequestStrategySupport -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/DeviceManagement/E2eIdentityCertificateViewTests.swift b/wire-ios/Wire-iOS Tests/DeviceManagement/E2eIdentityCertificateViewTests.swift index d3f1925602a..47743e6e20c 100644 --- a/wire-ios/Wire-iOS Tests/DeviceManagement/E2eIdentityCertificateViewTests.swift +++ b/wire-ios/Wire-iOS Tests/DeviceManagement/E2eIdentityCertificateViewTests.swift @@ -17,7 +17,7 @@ // import SwiftUI -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/EmptySearchResultsViewTests.swift b/wire-ios/Wire-iOS Tests/EmptySearchResultsViewTests.swift index d9efcb7fb64..1429db7e73c 100644 --- a/wire-ios/Wire-iOS Tests/EmptySearchResultsViewTests.swift +++ b/wire-ios/Wire-iOS Tests/EmptySearchResultsViewTests.swift @@ -17,7 +17,7 @@ // import WireDesign -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/EphemeralKeyboardViewControllerTests.swift b/wire-ios/Wire-iOS Tests/EphemeralKeyboardViewControllerTests.swift index b8902c9d650..3b33deb0c97 100644 --- a/wire-ios/Wire-iOS Tests/EphemeralKeyboardViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/EphemeralKeyboardViewControllerTests.swift @@ -17,7 +17,7 @@ // import UIKit -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/FolderCreationControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/FolderCreationControllerSnapshotTests.swift index aa16e9f9a9a..ad498d57d18 100644 --- a/wire-ios/Wire-iOS Tests/FolderCreationControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/FolderCreationControllerSnapshotTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/FolderPickerControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/FolderPickerControllerSnapshotTests.swift index d416d0f6eef..c74e070ec47 100644 --- a/wire-ios/Wire-iOS Tests/FolderPickerControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/FolderPickerControllerSnapshotTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/FontBookSnapshotTests.swift b/wire-ios/Wire-iOS Tests/FontBookSnapshotTests.swift index 993aca16015..22389dd4dd7 100644 --- a/wire-ios/Wire-iOS Tests/FontBookSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/FontBookSnapshotTests.swift @@ -19,7 +19,7 @@ import SnapshotTesting import WireCommonComponents import WireDesign -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/FullscreenImageViewController/FullscreenImageViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/FullscreenImageViewController/FullscreenImageViewControllerSnapshotTests.swift index fc633521662..dab9340e7eb 100644 --- a/wire-ios/Wire-iOS Tests/FullscreenImageViewController/FullscreenImageViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/FullscreenImageViewController/FullscreenImageViewControllerSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/Giphy/GiphyConfirmationViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/Giphy/GiphyConfirmationViewControllerSnapshotTests.swift index 036e45c48ba..f5d87cd6084 100644 --- a/wire-ios/Wire-iOS Tests/Giphy/GiphyConfirmationViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/Giphy/GiphyConfirmationViewControllerSnapshotTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/GiphySearchViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/GiphySearchViewControllerSnapshotTests.swift index b40b82a04ea..dad3cb8cc19 100644 --- a/wire-ios/Wire-iOS Tests/GiphySearchViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/GiphySearchViewControllerSnapshotTests.swift @@ -17,7 +17,7 @@ // import WireDesign -import WireUITesting +import WireTestingPackage import XCTest import Ziphy diff --git a/wire-ios/Wire-iOS Tests/GroupConversationCellTests.swift b/wire-ios/Wire-iOS Tests/GroupConversationCellTests.swift index bb8e39c6743..6b3c23256d5 100644 --- a/wire-ios/Wire-iOS Tests/GroupConversationCellTests.swift +++ b/wire-ios/Wire-iOS Tests/GroupConversationCellTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/GroupParticipantsDetailViewControllerTests.swift b/wire-ios/Wire-iOS Tests/GroupParticipantsDetailViewControllerTests.swift index 27ab0b243ba..a87311d2fd6 100644 --- a/wire-ios/Wire-iOS Tests/GroupParticipantsDetailViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/GroupParticipantsDetailViewControllerTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/IconLabelButtonTests.swift b/wire-ios/Wire-iOS Tests/IconLabelButtonTests.swift index 0af18e2b231..a1527a849e0 100644 --- a/wire-ios/Wire-iOS Tests/IconLabelButtonTests.swift +++ b/wire-ios/Wire-iOS Tests/IconLabelButtonTests.swift @@ -17,7 +17,7 @@ // import WireCommonComponents -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ImageCache/DecodeImageOperationTests.swift b/wire-ios/Wire-iOS Tests/ImageCache/DecodeImageOperationTests.swift index 7b517317049..d3d025fcb30 100644 --- a/wire-ios/Wire-iOS Tests/ImageCache/DecodeImageOperationTests.swift +++ b/wire-ios/Wire-iOS Tests/ImageCache/DecodeImageOperationTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/IncomingConnectionViewTests.swift b/wire-ios/Wire-iOS Tests/IncomingConnectionViewTests.swift index 16d865b4dc0..62f86390c67 100644 --- a/wire-ios/Wire-iOS Tests/IncomingConnectionViewTests.swift +++ b/wire-ios/Wire-iOS Tests/IncomingConnectionViewTests.swift @@ -18,7 +18,7 @@ import WireDesign import WireSyncEngineSupport -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/IncomingRequestFooterTests.swift b/wire-ios/Wire-iOS Tests/IncomingRequestFooterTests.swift index e31389cc446..9f634d5e359 100644 --- a/wire-ios/Wire-iOS Tests/IncomingRequestFooterTests.swift +++ b/wire-ios/Wire-iOS Tests/IncomingRequestFooterTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/LandingViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/LandingViewControllerSnapshotTests.swift index d8c989aedc7..31788986ab4 100644 --- a/wire-ios/Wire-iOS Tests/LandingViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/LandingViewControllerSnapshotTests.swift @@ -16,8 +16,8 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // +import WireTestingPackage import WireTransport -import WireUITesting import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/LaunchImageViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/LaunchImageViewControllerSnapshotTests.swift index a4c9d77a377..aa706f1cede 100644 --- a/wire-ios/Wire-iOS Tests/LaunchImageViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/LaunchImageViewControllerSnapshotTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/LegalHoldDetailsViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/LegalHoldDetailsViewControllerSnapshotTests.swift index b8ed90aa1e6..dabfd73d23f 100644 --- a/wire-ios/Wire-iOS Tests/LegalHoldDetailsViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/LegalHoldDetailsViewControllerSnapshotTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/MediaBarSnapshotTests.swift b/wire-ios/Wire-iOS Tests/MediaBarSnapshotTests.swift index 42fcb58779e..2e51a3d8122 100644 --- a/wire-ios/Wire-iOS Tests/MediaBarSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/MediaBarSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/MediaPreviewViewSnapshotTests.swift b/wire-ios/Wire-iOS Tests/MediaPreviewViewSnapshotTests.swift index 77db9afa429..1bf52287335 100644 --- a/wire-ios/Wire-iOS Tests/MediaPreviewViewSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/MediaPreviewViewSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/MentionsHandlerTests.swift b/wire-ios/Wire-iOS Tests/MentionsHandlerTests.swift index 525b89fa32a..63c0e77e984 100644 --- a/wire-ios/Wire-iOS Tests/MentionsHandlerTests.swift +++ b/wire-ios/Wire-iOS Tests/MentionsHandlerTests.swift @@ -17,9 +17,10 @@ // import Foundation -@testable import Wire import WireTesting +@testable import Wire + final class MentionsHandlerTests: XCTestCase { func testThereIsNoMentionWithNilString() { diff --git a/wire-ios/Wire-iOS Tests/MessageDetails/MessageDetailsViewControllerTests.swift b/wire-ios/Wire-iOS Tests/MessageDetails/MessageDetailsViewControllerTests.swift index f05fb22b1f6..9d21f07ee6c 100644 --- a/wire-ios/Wire-iOS Tests/MessageDetails/MessageDetailsViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/MessageDetails/MessageDetailsViewControllerTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/MessageReplyPreviewViewTests.swift b/wire-ios/Wire-iOS Tests/MessageReplyPreviewViewTests.swift index 29fcfaabecb..47424609a24 100644 --- a/wire-ios/Wire-iOS Tests/MessageReplyPreviewViewTests.swift +++ b/wire-ios/Wire-iOS Tests/MessageReplyPreviewViewTests.swift @@ -18,7 +18,7 @@ import WireDesign import WireLinkPreview -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/NetworkStatusView/NetworkStatusViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/NetworkStatusView/NetworkStatusViewControllerSnapshotTests.swift index 5e7618b418e..fb3ddae247f 100644 --- a/wire-ios/Wire-iOS Tests/NetworkStatusView/NetworkStatusViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/NetworkStatusView/NetworkStatusViewControllerSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/NetworkStatusView/NetworkStatusViewControllerTests.swift b/wire-ios/Wire-iOS Tests/NetworkStatusView/NetworkStatusViewControllerTests.swift index 2cbef7f3e41..647e2c5486c 100644 --- a/wire-ios/Wire-iOS Tests/NetworkStatusView/NetworkStatusViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/NetworkStatusView/NetworkStatusViewControllerTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireSystemPackageSupport +import WireFoundationSupport import XCTest @testable import Wire @@ -54,6 +54,7 @@ final class NetworkStatusViewControllerTests: XCTestCase { var mockConversationRoot: MockConversationRootViewController! var mockConversationList: MockConversationListViewController! + @MainActor override func setUp() { super.setUp() @@ -85,6 +86,7 @@ final class NetworkStatusViewControllerTests: XCTestCase { super.tearDown() } + @MainActor private func setUpSut( userInterfaceIdiom: UIUserInterfaceIdiom, horizontalSizeClass: UIUserInterfaceSizeClass, @@ -122,6 +124,7 @@ final class NetworkStatusViewControllerTests: XCTestCase { /// - orientation: updated orientation /// - listState: expected networkStatusView state in conversation list /// - rootState: expected networkStatusView state in conversation root + @MainActor private func checkForNetworkStatusViewState( userInterfaceIdiom: UIUserInterfaceIdiom, horizontalSizeClass: UIUserInterfaceSizeClass, @@ -138,6 +141,7 @@ final class NetworkStatusViewControllerTests: XCTestCase { checkResult(listState: listState, rootState: rootState, file: file, line: line) } + @MainActor func testThatNetworkStatusViewShowsOnListButNotRootWhenDevicePropertiesIsIPadLandscapeRegularMode() { checkForNetworkStatusViewState(userInterfaceIdiom: .pad, horizontalSizeClass: .regular, @@ -146,6 +150,7 @@ final class NetworkStatusViewControllerTests: XCTestCase { rootState: .offlineExpanded) } + @MainActor func testThatNetworkStatusViewShowsOnRootButNotListWhenDevicePropertiesIsIPadPortraitRegularMode() { checkForNetworkStatusViewState(userInterfaceIdiom: .pad, horizontalSizeClass: .regular, @@ -154,6 +159,7 @@ final class NetworkStatusViewControllerTests: XCTestCase { rootState: .offlineExpanded) } + @MainActor func testThatNetworkStatusViewShowsOnListButNotRootWhenDevicePropertiesIsIPadLandscapeCompactMode() { checkForNetworkStatusViewState(userInterfaceIdiom: .pad, horizontalSizeClass: .compact, @@ -162,6 +168,7 @@ final class NetworkStatusViewControllerTests: XCTestCase { rootState: .offlineExpanded) } + @MainActor func testThatNetworkStatusViewShowsOnBothWhenDevicePropertiesIsIPhonePortraitCompactMode() { checkForNetworkStatusViewState(userInterfaceIdiom: .phone, horizontalSizeClass: .compact, @@ -170,6 +177,7 @@ final class NetworkStatusViewControllerTests: XCTestCase { rootState: .offlineExpanded) } + @MainActor func testThatIPadRespondsToScreenSizeChanging() { // Given diff --git a/wire-ios/Wire-iOS Tests/OtherUserDeviceDetailsViewTests.swift b/wire-ios/Wire-iOS Tests/OtherUserDeviceDetailsViewTests.swift index 55c9886bea6..71622370310 100644 --- a/wire-ios/Wire-iOS Tests/OtherUserDeviceDetailsViewTests.swift +++ b/wire-ios/Wire-iOS Tests/OtherUserDeviceDetailsViewTests.swift @@ -18,7 +18,7 @@ import SwiftUI import WireRequestStrategySupport -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/PreBackendSwitchViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/PreBackendSwitchViewControllerSnapshotTests.swift index bedb1c364dd..03132ee90d6 100644 --- a/wire-ios/Wire-iOS Tests/PreBackendSwitchViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/PreBackendSwitchViewControllerSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ProfileDetailsViewControllerTests.swift b/wire-ios/Wire-iOS Tests/ProfileDetailsViewControllerTests.swift index c7a76ab595e..2475b53d939 100644 --- a/wire-ios/Wire-iOS Tests/ProfileDetailsViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/ProfileDetailsViewControllerTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ProfileFooterViewTests.swift b/wire-ios/Wire-iOS Tests/ProfileFooterViewTests.swift index 893bea2e4d5..c4b845c82f2 100644 --- a/wire-ios/Wire-iOS Tests/ProfileFooterViewTests.swift +++ b/wire-ios/Wire-iOS Tests/ProfileFooterViewTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ProfileViewTests.swift b/wire-ios/Wire-iOS Tests/ProfileViewTests.swift index 996131695af..846e4cf240d 100644 --- a/wire-ios/Wire-iOS Tests/ProfileViewTests.swift +++ b/wire-ios/Wire-iOS Tests/ProfileViewTests.swift @@ -19,7 +19,7 @@ import WireDataModelSupport import WireDesign import WireSyncEngineSupport -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/RemoveClientStepViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/RemoveClientStepViewControllerSnapshotTests.swift index 2d1f0856388..b58534fc755 100644 --- a/wire-ios/Wire-iOS Tests/RemoveClientStepViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/RemoveClientStepViewControllerSnapshotTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ScreenCurtainWindowTests.swift b/wire-ios/Wire-iOS Tests/ScreenCurtainWindowTests.swift index 46a21fd048a..5fced3a192f 100644 --- a/wire-ios/Wire-iOS Tests/ScreenCurtainWindowTests.swift +++ b/wire-ios/Wire-iOS Tests/ScreenCurtainWindowTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/SecurityLevel/SecurityLevelViewTests.swift b/wire-ios/Wire-iOS Tests/SecurityLevel/SecurityLevelViewTests.swift index 03ace683ed7..79f6cc33c2d 100644 --- a/wire-ios/Wire-iOS Tests/SecurityLevel/SecurityLevelViewTests.swift +++ b/wire-ios/Wire-iOS Tests/SecurityLevel/SecurityLevelViewTests.swift @@ -18,7 +18,7 @@ import SnapshotTesting import WireDesign -import WireUITesting +import WireTestingPackage import WireUtilities import XCTest diff --git a/wire-ios/Wire-iOS Tests/SelfProfileViewControllerTests.swift b/wire-ios/Wire-iOS Tests/SelfProfileViewControllerTests.swift index 51caf2e3b6f..a5c244a4be3 100644 --- a/wire-ios/Wire-iOS Tests/SelfProfileViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/SelfProfileViewControllerTests.swift @@ -18,7 +18,7 @@ import WireDataModelSupport import WireDesign -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/Settings/Debug Report/SettingsDebugReportViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/Settings/Debug Report/SettingsDebugReportViewControllerSnapshotTests.swift index 71a39f0edc2..71d2be88522 100644 --- a/wire-ios/Wire-iOS Tests/Settings/Debug Report/SettingsDebugReportViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/Settings/Debug Report/SettingsDebugReportViewControllerSnapshotTests.swift @@ -17,7 +17,7 @@ // import SnapshotTesting -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/SettingsTableViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/SettingsTableViewControllerSnapshotTests.swift index cf535e80d3b..91ea48c1209 100644 --- a/wire-ios/Wire-iOS Tests/SettingsTableViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/SettingsTableViewControllerSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest import WireTransport diff --git a/wire-ios/Wire-iOS Tests/SettingsTextCellSnapshotTests.swift b/wire-ios/Wire-iOS Tests/SettingsTextCellSnapshotTests.swift index 798a52fe087..449532e5ecf 100644 --- a/wire-ios/Wire-iOS Tests/SettingsTextCellSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/SettingsTextCellSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ShareContactsViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/ShareContactsViewControllerSnapshotTests.swift index 44258df3f1b..9c97508af76 100644 --- a/wire-ios/Wire-iOS Tests/ShareContactsViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/ShareContactsViewControllerSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ShareDestinationCellTests.swift b/wire-ios/Wire-iOS Tests/ShareDestinationCellTests.swift index 71a96f0f23f..13ec412b54e 100644 --- a/wire-ios/Wire-iOS Tests/ShareDestinationCellTests.swift +++ b/wire-ios/Wire-iOS Tests/ShareDestinationCellTests.swift @@ -17,7 +17,7 @@ // import UIKit -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ShareViewControllerTests.swift b/wire-ios/Wire-iOS Tests/ShareViewControllerTests.swift index 39c46c3e2f2..1bf5b3acced 100644 --- a/wire-ios/Wire-iOS Tests/ShareViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/ShareViewControllerTests.swift @@ -17,7 +17,7 @@ // import WireLinkPreview -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/SketchColorPickerControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/SketchColorPickerControllerSnapshotTests.swift index 0b9c8177cfa..cdffac4f167 100644 --- a/wire-ios/Wire-iOS Tests/SketchColorPickerControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/SketchColorPickerControllerSnapshotTests.swift @@ -18,7 +18,7 @@ import SnapshotTesting import WireDesign -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/StartUIViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/StartUIViewControllerSnapshotTests.swift index 2acbf7e695d..451c36e72a8 100644 --- a/wire-ios/Wire-iOS Tests/StartUIViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/StartUIViewControllerSnapshotTests.swift @@ -17,7 +17,7 @@ // import WireDesign -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/SwitchBackendConfirmationViewTests.swift b/wire-ios/Wire-iOS Tests/SwitchBackendConfirmationViewTests.swift index b8bea6028e2..4c251d6d308 100644 --- a/wire-ios/Wire-iOS Tests/SwitchBackendConfirmationViewTests.swift +++ b/wire-ios/Wire-iOS Tests/SwitchBackendConfirmationViewTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/ThumbnailCreationTests.swift b/wire-ios/Wire-iOS Tests/ThumbnailCreationTests.swift index 7233b247317..7bf7ee7d82c 100644 --- a/wire-ios/Wire-iOS Tests/ThumbnailCreationTests.swift +++ b/wire-ios/Wire-iOS Tests/ThumbnailCreationTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/Token/TokenFieldTests.swift b/wire-ios/Wire-iOS Tests/Token/TokenFieldTests.swift index 1add9263dd9..089e474274b 100644 --- a/wire-ios/Wire-iOS Tests/Token/TokenFieldTests.swift +++ b/wire-ios/Wire-iOS Tests/Token/TokenFieldTests.swift @@ -17,7 +17,7 @@ // import WireDesign -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/Token/TokenSeparatorAttachmentSnapshotTests.swift b/wire-ios/Wire-iOS Tests/Token/TokenSeparatorAttachmentSnapshotTests.swift index b311e9b22da..1e8e1ae512e 100644 --- a/wire-ios/Wire-iOS Tests/Token/TokenSeparatorAttachmentSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/Token/TokenSeparatorAttachmentSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/Token/TokenTextAttachmentSnapshotTests.swift b/wire-ios/Wire-iOS Tests/Token/TokenTextAttachmentSnapshotTests.swift index 1b7f4dbb417..79f1a806a5d 100644 --- a/wire-ios/Wire-iOS Tests/Token/TokenTextAttachmentSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/Token/TokenTextAttachmentSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/TopPeopleCellSnapshotTests.swift b/wire-ios/Wire-iOS Tests/TopPeopleCellSnapshotTests.swift index a488052dc19..1fcb36a5a79 100644 --- a/wire-ios/Wire-iOS Tests/TopPeopleCellSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/TopPeopleCellSnapshotTests.swift @@ -17,7 +17,7 @@ // import WireDesign -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/TypingIndicatorViewTests.swift b/wire-ios/Wire-iOS Tests/TypingIndicatorViewTests.swift index d54ac3b2f4d..a9cf344e09f 100644 --- a/wire-ios/Wire-iOS Tests/TypingIndicatorViewTests.swift +++ b/wire-ios/Wire-iOS Tests/TypingIndicatorViewTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/UserCellTests.swift b/wire-ios/Wire-iOS Tests/UserCellTests.swift index 3cd23addba9..375614e5a96 100644 --- a/wire-ios/Wire-iOS Tests/UserCellTests.swift +++ b/wire-ios/Wire-iOS Tests/UserCellTests.swift @@ -17,7 +17,7 @@ // @testable import Wire -import WireUITesting +import WireTestingPackage import WireUtilities import XCTest diff --git a/wire-ios/Wire-iOS Tests/UserClientCellTests.swift b/wire-ios/Wire-iOS Tests/UserClientCellTests.swift index f63c5624026..108a914ae0d 100644 --- a/wire-ios/Wire-iOS Tests/UserClientCellTests.swift +++ b/wire-ios/Wire-iOS Tests/UserClientCellTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/UserConnectionViewSnapshotTests.swift b/wire-ios/Wire-iOS Tests/UserConnectionViewSnapshotTests.swift index 85f91f490d5..b2a932d8899 100644 --- a/wire-ios/Wire-iOS Tests/UserConnectionViewSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/UserConnectionViewSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/UserImageViewContainerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/UserImageViewContainerSnapshotTests.swift index 25355ec541d..da9e62cb8de 100644 --- a/wire-ios/Wire-iOS Tests/UserImageViewContainerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/UserImageViewContainerSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/UserInterface/ConversationList/ArchivedList/ArchivedListViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/UserInterface/ConversationList/ArchivedList/ArchivedListViewControllerSnapshotTests.swift index e2286ded0fc..eae95980331 100644 --- a/wire-ios/Wire-iOS Tests/UserInterface/ConversationList/ArchivedList/ArchivedListViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/UserInterface/ConversationList/ArchivedList/ArchivedListViewControllerSnapshotTests.swift @@ -17,7 +17,7 @@ // import WireDataModelSupport -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/UserInterface/E2EIdentity/SuccessfulCertificateEnrollmentViewControllerSnapshotTests.swift b/wire-ios/Wire-iOS Tests/UserInterface/E2EIdentity/SuccessfulCertificateEnrollmentViewControllerSnapshotTests.swift index 1875d3c07f6..dfca8411601 100644 --- a/wire-ios/Wire-iOS Tests/UserInterface/E2EIdentity/SuccessfulCertificateEnrollmentViewControllerSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/UserInterface/E2EIdentity/SuccessfulCertificateEnrollmentViewControllerSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/UserInterface/GroupDetails/Cells/GroupDetailsNotificationOptionsCellTests.swift b/wire-ios/Wire-iOS Tests/UserInterface/GroupDetails/Cells/GroupDetailsNotificationOptionsCellTests.swift index e05bb2ef7e9..0c660946466 100644 --- a/wire-ios/Wire-iOS Tests/UserInterface/GroupDetails/Cells/GroupDetailsNotificationOptionsCellTests.swift +++ b/wire-ios/Wire-iOS Tests/UserInterface/GroupDetails/Cells/GroupDetailsNotificationOptionsCellTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/UserNameDetailViewTests.swift b/wire-ios/Wire-iOS Tests/UserNameDetailViewTests.swift index 6d34ec38a7f..1e15885544b 100644 --- a/wire-ios/Wire-iOS Tests/UserNameDetailViewTests.swift +++ b/wire-ios/Wire-iOS Tests/UserNameDetailViewTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/UserProfile/ProfileViewControllerTests.swift b/wire-ios/Wire-iOS Tests/UserProfile/ProfileViewControllerTests.swift index 5f37bb29c38..7deaa3de41b 100644 --- a/wire-ios/Wire-iOS Tests/UserProfile/ProfileViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/UserProfile/ProfileViewControllerTests.swift @@ -20,7 +20,7 @@ import XCTest @testable import Wire @testable import WireSyncEngineSupport -import WireUITesting +import WireTestingPackage final class ProfileViewControllerTests: XCTestCase { diff --git a/wire-ios/Wire-iOS Tests/UserSearchResultsViewControllerTests.swift b/wire-ios/Wire-iOS Tests/UserSearchResultsViewControllerTests.swift index a1d95d0e73c..e4b5638354c 100644 --- a/wire-ios/Wire-iOS Tests/UserSearchResultsViewControllerTests.swift +++ b/wire-ios/Wire-iOS Tests/UserSearchResultsViewControllerTests.swift @@ -17,7 +17,7 @@ // import WireDesign -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/UserStatusViewSnapshotTests.swift b/wire-ios/Wire-iOS Tests/UserStatusViewSnapshotTests.swift index f62d8833d49..2a7e25fa6f9 100644 --- a/wire-ios/Wire-iOS Tests/UserStatusViewSnapshotTests.swift +++ b/wire-ios/Wire-iOS Tests/UserStatusViewSnapshotTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS Tests/Views/RoundedSegmentedViewTests.swift b/wire-ios/Wire-iOS Tests/Views/RoundedSegmentedViewTests.swift index 22ff8e2b302..95a1fc99b2c 100644 --- a/wire-ios/Wire-iOS Tests/Views/RoundedSegmentedViewTests.swift +++ b/wire-ios/Wire-iOS Tests/Views/RoundedSegmentedViewTests.swift @@ -16,7 +16,7 @@ // along with this program. If not, see http://www.gnu.org/licenses/. // -import WireUITesting +import WireTestingPackage import XCTest @testable import Wire diff --git a/wire-ios/Wire-iOS.xcodeproj/project.pbxproj b/wire-ios/Wire-iOS.xcodeproj/project.pbxproj index 57691b2048f..4c5dd846c36 100644 --- a/wire-ios/Wire-iOS.xcodeproj/project.pbxproj +++ b/wire-ios/Wire-iOS.xcodeproj/project.pbxproj @@ -60,7 +60,6 @@ 065A591E2BEA219E008487CF /* OtherUserDeviceDetailsView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 065A591D2BEA219E008487CF /* OtherUserDeviceDetailsView.swift */; }; 065A5AE1279B07AC002D4D1E /* NotificationService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 065A5AE0279B07AC002D4D1E /* NotificationService.swift */; }; 065A5AE5279B07AC002D4D1E /* Wire Notification Service Extension.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = 065A5ADE279B07AC002D4D1E /* Wire Notification Service Extension.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; - 065A5AEA279B0821002D4D1E /* WireCommonComponents.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F1FEA14A21DCEB1700790A54 /* WireCommonComponents.framework */; }; 065FEA102B85E8D2005AE86A /* SuccessfulCertificateEnrollmentViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 065FEA0F2B85E8D2005AE86A /* SuccessfulCertificateEnrollmentViewController.swift */; }; 0665DF6E28E494360094482B /* ImagePickerManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0665DF6D28E494360094482B /* ImagePickerManager.swift */; }; 0665DF7028EE366D0094482B /* ZMConversationMessage+Announcement.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0665DF6F28EE366D0094482B /* ZMConversationMessage+Announcement.swift */; }; @@ -325,6 +324,13 @@ 5915B9582BF4BA9700215817 /* DidPresentNotificationPermissionHintUseCaseProtocol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5915B9572BF4BA9700215817 /* DidPresentNotificationPermissionHintUseCaseProtocol.swift */; }; 5915B95A2BF4BAFF00215817 /* DidPresentNotificationPermissionHintUseCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5915B9592BF4BAFE00215817 /* DidPresentNotificationPermissionHintUseCase.swift */; }; 5915B95C2BF4BB5300215817 /* NativelySupportedUserDefaultsKey+lastTimeNotificationPermissionHintWasShown.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5915B95B2BF4BB5300215817 /* NativelySupportedUserDefaultsKey+lastTimeNotificationPermissionHintWasShown.swift */; }; + 591B6E172C8B095B009F8A7B /* WireNotificationEngine.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE9A8585298B0A3B00064A9C /* WireNotificationEngine.framework */; }; + 591B6E182C8B095B009F8A7B /* WireNotificationEngine.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = EE9A8585298B0A3B00064A9C /* WireNotificationEngine.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + 591B6E192C8B0960009F8A7B /* WireCommonComponents.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F1FEA14A21DCEB1700790A54 /* WireCommonComponents.framework */; }; + 591B6E1C2C8B0964009F8A7B /* WireDataModelSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 59AADE222BB4299900D9E658 /* WireDataModelSupport.framework */; }; + 591B6E1E2C8B0968009F8A7B /* WireSyncEngine.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F739296F0E28001D7C88 /* WireSyncEngine.framework */; }; + 591B6E212C8B096C009F8A7B /* WireCommonComponents.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F1FEA14A21DCEB1700790A54 /* WireCommonComponents.framework */; }; + 591B6E242C8B0970009F8A7B /* WireDataModelSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 59AADE222BB4299900D9E658 /* WireDataModelSupport.framework */; }; 5922D6D72BB56FA100A60408 /* Bundle+SecurityFlags.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5922D6D62BB56FA100A60408 /* Bundle+SecurityFlags.swift */; }; 5922E92E2BA0689E001A7B01 /* SuccessfulCertificateEnrollmentViewControllerSnapshotTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5922E92D2BA0689E001A7B01 /* SuccessfulCertificateEnrollmentViewControllerSnapshotTests.swift */; }; 592ED06E2C1C7D0700FE1F4E /* WireReusableUIComponents in Frameworks */ = {isa = PBXBuildFile; productRef = 592ED06D2C1C7D0700FE1F4E /* WireReusableUIComponents */; }; @@ -332,10 +338,7 @@ 5945D02A2C219F7200D039E3 /* WireDesign in Frameworks */ = {isa = PBXBuildFile; productRef = 5945D0292C219F7200D039E3 /* WireDesign */; }; 5950467D2C6F3DA9005315DE /* NetworkStatusViewSnapshotTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5950467C2C6F3DA9005315DE /* NetworkStatusViewSnapshotTests.swift */; }; 5952693F2BE8C93B001C1E8B /* AppLockView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5952693E2BE8C93B001C1E8B /* AppLockView.swift */; }; - 5965B46C2C57AC70000DBF91 /* WireSystemPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 5965B46B2C57AC70000DBF91 /* WireSystemPackage */; }; - 5965B46D2C57AC70000DBF91 /* WireSystemPackage in Embed Frameworks */ = {isa = PBXBuildFile; productRef = 5965B46B2C57AC70000DBF91 /* WireSystemPackage */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; }; 5965B4792C57BF59000DBF91 /* WireAnalytics in Frameworks */ = {isa = PBXBuildFile; productRef = 5965B4782C57BF59000DBF91 /* WireAnalytics */; }; - 5965B47F2C57C85D000DBF91 /* WireSystemPackageSupport in Frameworks */ = {isa = PBXBuildFile; productRef = 5965B47E2C57C85D000DBF91 /* WireSystemPackageSupport */; }; 5966D82A2BD6983900305BBC /* SelfProfileViewControllerBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5966D8292BD6983900305BBC /* SelfProfileViewControllerBuilder.swift */; }; 5966D82C2BD6995100305BBC /* MockViewControllerBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5966D82B2BD6995100305BBC /* MockViewControllerBuilder.swift */; }; 596841CA2BD14D200009C6B8 /* ImageTransformer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 596841C92BD14D200009C6B8 /* ImageTransformer.swift */; }; @@ -347,14 +350,8 @@ 598E86D12BF4D97800FC5438 /* WireUtilitiesSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 598E86D02BF4D97800FC5438 /* WireUtilitiesSupport.framework */; }; 598E86F72BF4DD5C00FC5438 /* WireSystemSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 598E86F62BF4DD5C00FC5438 /* WireSystemSupport.framework */; }; 598E87102BF4E98100FC5438 /* DidPresentNotificationPermissionHintUseCaseTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 598E870F2BF4E98100FC5438 /* DidPresentNotificationPermissionHintUseCaseTests.swift */; }; - 598EA8C72C5BFFFE006DA500 /* WireAPI in Frameworks */ = {isa = PBXBuildFile; productRef = 598EA8C62C5BFFFE006DA500 /* WireAPI */; }; - 598EA8C82C5BFFFF006DA500 /* WireAPI in Embed Frameworks */ = {isa = PBXBuildFile; productRef = 598EA8C62C5BFFFE006DA500 /* WireAPI */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; }; - 59942F182C2BF72C00F65A54 /* WireUITesting in Frameworks */ = {isa = PBXBuildFile; productRef = 59942F172C2BF72C00F65A54 /* WireUITesting */; }; 59948F6E2BF2151500832257 /* OtherUserClientsListViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16814843228D89EC0069F16F /* OtherUserClientsListViewController.swift */; }; 5995C7752BC7E0F400F97BA8 /* DeviceInfoView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 5995C7742BC7E0F400F97BA8 /* DeviceInfoView.swift */; }; - 5996E8A02C19D02C007A52F0 /* WireDataModelSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 59AADE222BB4299900D9E658 /* WireDataModelSupport.framework */; }; - 5996E8A22C19D066007A52F0 /* WireNotificationEngine.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE9A8585298B0A3B00064A9C /* WireNotificationEngine.framework */; }; - 5996E8A32C19D066007A52F0 /* WireNotificationEngine.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = EE9A8585298B0A3B00064A9C /* WireNotificationEngine.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 5996E8A42C19D074007A52F0 /* WireRequestStrategySupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 59AADE262BB429B200D9E658 /* WireRequestStrategySupport.framework */; }; 5996E8A62C19D090007A52F0 /* WireSyncEngine.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F739296F0E28001D7C88 /* WireSyncEngine.framework */; }; 5996E8A72C19D090007A52F0 /* WireSyncEngine.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F739296F0E28001D7C88 /* WireSyncEngine.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; @@ -370,19 +367,20 @@ 59A27BB82C2ADAB200195393 /* MockMainCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59A27BB52C2ADA0F00195393 /* MockMainCoordinator.swift */; }; 59A27BBB2C2ADC4C00195393 /* MainCoordinator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59A27BB92C2ADC2900195393 /* MainCoordinator.swift */; }; 59AADE212BB4287200D9E658 /* AutoMockable.generated.swift in Sources */ = {isa = PBXBuildFile; fileRef = E644B79A2B7CBBA3005D0BFD /* AutoMockable.generated.swift */; }; - 59AADE232BB4299900D9E658 /* WireDataModelSupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 59AADE222BB4299900D9E658 /* WireDataModelSupport.framework */; }; 59AADE272BB429B200D9E658 /* WireRequestStrategySupport.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 59AADE262BB429B200D9E658 /* WireRequestStrategySupport.framework */; }; 59AADE282BB429D300D9E658 /* AutoMockable.generated.swift in Sources */ = {isa = PBXBuildFile; fileRef = E644B79A2B7CBBA3005D0BFD /* AutoMockable.generated.swift */; }; + 59B48C5E2C89CCAB00EA7999 /* WireFoundationSupport in Frameworks */ = {isa = PBXBuildFile; productRef = 59B48C5D2C89CCAB00EA7999 /* WireFoundationSupport */; }; + 59B48C602C89CCCC00EA7999 /* WireFoundation in Frameworks */ = {isa = PBXBuildFile; productRef = 59B48C5F2C89CCCC00EA7999 /* WireFoundation */; }; + 59B48C622C89CD3D00EA7999 /* WireTestingPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 59B48C612C89CD3D00EA7999 /* WireTestingPackage */; }; + 59B99FAA2C89DE8600201827 /* WireFoundation in Frameworks */ = {isa = PBXBuildFile; productRef = 59B99FA92C89DE8600201827 /* WireFoundation */; }; + 59B99FAC2C89DF2100201827 /* WireAPI in Frameworks */ = {isa = PBXBuildFile; productRef = 59B99FAB2C89DF2100201827 /* WireAPI */; }; + 59B99FB02C89DFB700201827 /* WireDomainPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 59B99FAF2C89DFB700201827 /* WireDomainPackage */; }; 59C4FBF12C45B7130037030B /* WireShareEngine.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE33C48C296485FA00C058D1 /* WireShareEngine.framework */; }; 59CD83E52C22CE9800186022 /* WireDesign in Frameworks */ = {isa = PBXBuildFile; productRef = 59CD83E42C22CE9800186022 /* WireDesign */; }; 59CDB3F62C4EA08F0049D1AB /* WireReusableUIComponents in Frameworks */ = {isa = PBXBuildFile; productRef = 59CDB3F52C4EA08F0049D1AB /* WireReusableUIComponents */; }; - 59D038272C85D31E009FE583 /* WireUIBase in Frameworks */ = {isa = PBXBuildFile; productRef = 59D038262C85D31E009FE583 /* WireUIBase */; }; + 59D038272C85D31E009FE583 /* WireUIFoundation in Frameworks */ = {isa = PBXBuildFile; productRef = 59D038262C85D31E009FE583 /* WireUIFoundation */; }; 59D2D9352BEB8E9A002319BB /* ConversationListViewController+NavigationBar.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59D2D9342BEB8E9A002319BB /* ConversationListViewController+NavigationBar.swift */; }; 59D53E452C74ADBF007EB3EF /* LaunchScreenViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59D53E442C74ADBF007EB3EF /* LaunchScreenViewController.swift */; }; - 59D588952C7CDA7000CAFA0F /* WireUtilitiesPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 59D588942C7CDA7000CAFA0F /* WireUtilitiesPackage */; }; - 59D588962C7CDA7000CAFA0F /* WireUtilitiesPackage in Embed Frameworks */ = {isa = PBXBuildFile; productRef = 59D588942C7CDA7000CAFA0F /* WireUtilitiesPackage */; settings = {ATTRIBUTES = (CodeSignOnCopy, ); }; }; - 59D588A32C7CDB2000CAFA0F /* WireUtilitiesPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 59D588A22C7CDB2000CAFA0F /* WireUtilitiesPackage */; }; - 59D588A72C7CDB2500CAFA0F /* WireUtilitiesPackage in Frameworks */ = {isa = PBXBuildFile; productRef = 59D588A62C7CDB2500CAFA0F /* WireUtilitiesPackage */; }; 59D8A62C2B7A73B2008236FF /* ShapeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59D8A62B2B7A73B2008236FF /* ShapeView.swift */; }; 59D8A62F2B7A75B0008236FF /* PersonalAccountView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59D8A62E2B7A75B0008236FF /* PersonalAccountView.swift */; }; 59D8A6312B7A7C2D008236FF /* AccountViewBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 59D8A6302B7A7C2D008236FF /* AccountViewBuilder.swift */; }; @@ -939,7 +937,6 @@ A9681D8623884FF1004FE917 /* Message+DateFormatter.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9681D8523884FF1004FE917 /* Message+DateFormatter.swift */; }; A96867FA26A5EB8400679D95 /* WireCommonComponents.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F1FEA14A21DCEB1700790A54 /* WireCommonComponents.framework */; }; A96867FB26A5EB8400679D95 /* WireCommonComponents.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = F1FEA14A21DCEB1700790A54 /* WireCommonComponents.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - A968680426A5F73400679D95 /* WireCommonComponents.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F1FEA14A21DCEB1700790A54 /* WireCommonComponents.framework */; }; A96A21EF23D5AE6D005B5579 /* UIApplication+Permissions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1693D9661CEDB26200D1F13C /* UIApplication+Permissions.swift */; }; A96A21F123D5B865005B5579 /* ConversationInputBarViewController+Files.swift in Sources */ = {isa = PBXBuildFile; fileRef = A96A21F023D5B865005B5579 /* ConversationInputBarViewController+Files.swift */; }; A96A21F323D5BC25005B5579 /* UIResponder+FirstResponder.swift in Sources */ = {isa = PBXBuildFile; fileRef = A96A21F223D5BC25005B5579 /* UIResponder+FirstResponder.swift */; }; @@ -1485,7 +1482,6 @@ EE7F467025B1D031001B3EE4 /* AppLockModule.MockInteractor.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE7F466F25B1D031001B3EE4 /* AppLockModule.MockInteractor.swift */; }; EE7F467225B1D058001B3EE4 /* AppLockModule.MockPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE7F467125B1D058001B3EE4 /* AppLockModule.MockPresenter.swift */; }; EE7F467425B1D0BA001B3EE4 /* AppLockModule.MockView.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE7F467325B1D0BA001B3EE4 /* AppLockModule.MockView.swift */; }; - EE8297192971A0CA00F12CAA /* WireSyncEngine.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EE67F739296F0E28001D7C88 /* WireSyncEngine.framework */; }; EE876CAE23F2FCB100040D75 /* SwiftMockLoader.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE876CAC23F2FCA900040D75 /* SwiftMockLoader.swift */; }; EE88E00623FAC9EA00D24703 /* SelfUser.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE88E00523FAC9EA00D24703 /* SelfUser.swift */; }; EE8E9267202496C2000F4752 /* NSAttributedString+Down.swift in Sources */ = {isa = PBXBuildFile; fileRef = EE8E9266202496C2000F4752 /* NSAttributedString+Down.swift */; }; @@ -1963,26 +1959,6 @@ name = "Embed App Extensions"; runOnlyForDeploymentPostprocessing = 0; }; - 59D588A52C7CDB2000CAFA0F /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; - 59D588A92C7CDB2600CAFA0F /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; A96867A826A5E52F00679D95 /* Embed Frameworks */ = { isa = PBXCopyFilesBuildPhase; buildActionMask = 2147483647; @@ -1993,6 +1969,7 @@ EE67F6D0296F067F001D7C88 /* Countly.xcframework in Embed Frameworks */, E9C68C052A29DB0100CDCAFD /* WireCoreCrypto.xcframework in Embed Frameworks */, EEE25B4E29719D0B0008B894 /* ZipArchive.xcframework in Embed Frameworks */, + 591B6E182C8B095B009F8A7B /* WireNotificationEngine.framework in Embed Frameworks */, EEE25B3629719BD30008B894 /* WireCryptobox.framework in Embed Frameworks */, EE33C48E296485FA00C058D1 /* WireShareEngine.framework in Embed Frameworks */, EEE25B5129719D2F0008B894 /* avs.xcframework in Embed Frameworks */, @@ -2003,16 +1980,12 @@ EEE25B4B29719CDC0008B894 /* WireUtilities.framework in Embed Frameworks */, EEE25B4829719CB30008B894 /* WireTransport.framework in Embed Frameworks */, EEE25B3929719C170008B894 /* WireDataModel.framework in Embed Frameworks */, - 5965B46D2C57AC70000DBF91 /* WireSystemPackage in Embed Frameworks */, EEE25B4529719C950008B894 /* WireSystem.framework in Embed Frameworks */, EEE25B5A29719DA80008B894 /* WireImages.framework in Embed Frameworks */, A96867FB26A5EB8400679D95 /* WireCommonComponents.framework in Embed Frameworks */, 016DB6DF2C261A4900DEB81B /* WireDomain.framework in Embed Frameworks */, - 5996E8A32C19D066007A52F0 /* WireNotificationEngine.framework in Embed Frameworks */, EE67F742296F0EBC001D7C88 /* WireCanvas.framework in Embed Frameworks */, - 598EA8C82C5BFFFF006DA500 /* WireAPI in Embed Frameworks */, EEE25B3F29719C580008B894 /* WireProtos.framework in Embed Frameworks */, - 59D588962C7CDA7000CAFA0F /* WireUtilitiesPackage in Embed Frameworks */, ); name = "Embed Frameworks"; runOnlyForDeploymentPostprocessing = 0; @@ -3928,8 +3901,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 591B6E212C8B096C009F8A7B /* WireCommonComponents.framework in Frameworks */, EE9A8586298B0A3B00064A9C /* WireNotificationEngine.framework in Frameworks */, - 065A5AEA279B0821002D4D1E /* WireCommonComponents.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -3937,7 +3910,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - A968680426A5F73400679D95 /* WireCommonComponents.framework in Frameworks */, + 591B6E192C8B0960009F8A7B /* WireCommonComponents.framework in Frameworks */, 59C4FBF12C45B7130037030B /* WireShareEngine.framework in Frameworks */, 59CDB3F62C4EA08F0049D1AB /* WireReusableUIComponents in Frameworks */, 5945D02A2C219F7200D039E3 /* WireDesign in Frameworks */, @@ -3948,7 +3921,6 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 5996E8A22C19D066007A52F0 /* WireNotificationEngine.framework in Frameworks */, EEE25B4129719C750008B894 /* WireRequestStrategy.framework in Frameworks */, EEE25B3529719BD30008B894 /* WireCryptobox.framework in Frameworks */, EEE25B4729719CB30008B894 /* WireTransport.framework in Frameworks */, @@ -3956,31 +3928,32 @@ 592ED06E2C1C7D0700FE1F4E /* WireReusableUIComponents in Frameworks */, EE67F741296F0EBC001D7C88 /* WireCanvas.framework in Frameworks */, EEE25B4A29719CDC0008B894 /* WireUtilities.framework in Frameworks */, - 5965B46C2C57AC70000DBF91 /* WireSystemPackage in Frameworks */, EE67F73E296F0E7D001D7C88 /* Ziphy.framework in Frameworks */, CB4E15122C81CC81005DDEC8 /* Down in Frameworks */, EEE25B3829719C170008B894 /* WireDataModel.framework in Frameworks */, - 59D038272C85D31E009FE583 /* WireUIBase in Frameworks */, + 59D038272C85D31E009FE583 /* WireUIFoundation in Frameworks */, EE33C48D296485FA00C058D1 /* WireShareEngine.framework in Frameworks */, EEE25B2A29719A730008B894 /* cryptobox.xcframework in Frameworks */, EE67F6CF296F067F001D7C88 /* Countly.xcframework in Frameworks */, EEE25B3E29719C580008B894 /* WireProtos.framework in Frameworks */, EEE25B5029719D2F0008B894 /* avs.xcframework in Frameworks */, + 59B99FAA2C89DE8600201827 /* WireFoundation in Frameworks */, + 59B99FAC2C89DF2100201827 /* WireAPI in Frameworks */, EEE25B2829719A730008B894 /* Clibsodium.xcframework in Frameworks */, E9C68C042A29DB0100CDCAFD /* WireCoreCrypto.xcframework in Frameworks */, EEE25B5329719D540008B894 /* libPhoneNumberiOS.xcframework in Frameworks */, EEE25B3B29719C370008B894 /* WireLinkPreview.framework in Frameworks */, - 59D588952C7CDA7000CAFA0F /* WireUtilitiesPackage in Frameworks */, 407831AD2AC4636F005C2978 /* DifferenceKit in Frameworks */, EEE25B4429719C950008B894 /* WireSystem.framework in Frameworks */, + 591B6E172C8B095B009F8A7B /* WireNotificationEngine.framework in Frameworks */, E9FBF3A62C47C23100C65DA8 /* FLAnimatedImage in Frameworks */, 59CD83E52C22CE9800186022 /* WireDesign in Frameworks */, - 598EA8C72C5BFFFE006DA500 /* WireAPI in Frameworks */, EEE25B4D29719D0B0008B894 /* ZipArchive.xcframework in Frameworks */, 061F34192B1E2ED50099CBAB /* AppAuth in Frameworks */, 061F341B2B1E2ED50099CBAB /* AppAuthCore in Frameworks */, 016DB6DE2C261A4900DEB81B /* WireDomain.framework in Frameworks */, 5996E8A62C19D090007A52F0 /* WireSyncEngine.framework in Frameworks */, + 59B99FB02C89DFB700201827 /* WireDomainPackage in Frameworks */, EEE25B5929719DA80008B894 /* WireImages.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -3989,16 +3962,15 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 59942F182C2BF72C00F65A54 /* WireUITesting in Frameworks */, - 59D588A32C7CDB2000CAFA0F /* WireUtilitiesPackage in Frameworks */, - 5996E8A02C19D02C007A52F0 /* WireDataModelSupport.framework in Frameworks */, + 59B48C622C89CD3D00EA7999 /* WireTestingPackage in Frameworks */, 01C1A7C72A54C45A0058D578 /* SnapshotTesting in Frameworks */, CB4870F22C7F4FE5001E9151 /* WireTransportSupport.framework in Frameworks */, 5996E8A82C19D09D007A52F0 /* WireSyncEngineSupport.framework in Frameworks */, 5996E8A42C19D074007A52F0 /* WireRequestStrategySupport.framework in Frameworks */, 598E86F72BF4DD5C00FC5438 /* WireSystemSupport.framework in Frameworks */, - 5965B47F2C57C85D000DBF91 /* WireSystemPackageSupport in Frameworks */, 598E86D12BF4D97800FC5438 /* WireUtilitiesSupport.framework in Frameworks */, + 591B6E1C2C8B0964009F8A7B /* WireDataModelSupport.framework in Frameworks */, + 59B48C5E2C89CCAB00EA7999 /* WireFoundationSupport in Frameworks */, 5996E8AD2C19D0DF007A52F0 /* WireTesting.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -4009,10 +3981,10 @@ files = ( 59AADE272BB429B200D9E658 /* WireRequestStrategySupport.framework in Frameworks */, 5996E8AA2C19D0D6007A52F0 /* WireSystemSupport.framework in Frameworks */, + 59B48C602C89CCCC00EA7999 /* WireFoundation in Frameworks */, 0145AE992B1156FC0097E3B8 /* WireSyncEngineSupport.framework in Frameworks */, E6C25FC52AFFAAC300406A1C /* WireTesting.framework in Frameworks */, - 59AADE232BB4299900D9E658 /* WireDataModelSupport.framework in Frameworks */, - 59D588A72C7CDB2500CAFA0F /* WireUtilitiesPackage in Frameworks */, + 591B6E242C8B0970009F8A7B /* WireDataModelSupport.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -4020,8 +3992,8 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 591B6E1E2C8B0968009F8A7B /* WireSyncEngine.framework in Frameworks */, 5965B4792C57BF59000DBF91 /* WireAnalytics in Frameworks */, - EE8297192971A0CA00F12CAA /* WireSyncEngine.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -4693,13 +4665,6 @@ path = MainCoordinator; sourceTree = ""; }; - 59D5887F2C7CD7C200CAFA0F /* Recovered References */ = { - isa = PBXGroup; - children = ( - ); - name = "Recovered References"; - sourceTree = ""; - }; 59D8A62D2B7A75A0008236FF /* AccountViews */ = { isa = PBXGroup; children = ( @@ -6264,7 +6229,6 @@ 065A5ADF279B07AC002D4D1E /* Wire Notification Service Extension */, 8F42C539199244A700288E4D /* Products */, 8286E48D7CC440448CBD8F48 /* Frameworks */, - 59D5887F2C7CD7C200CAFA0F /* Recovered References */, ); indentWidth = 4; sourceTree = ""; @@ -8634,11 +8598,11 @@ 592ED06D2C1C7D0700FE1F4E /* WireReusableUIComponents */, 59CD83E42C22CE9800186022 /* WireDesign */, E9FBF3A52C47C23100C65DA8 /* FLAnimatedImage */, - 5965B46B2C57AC70000DBF91 /* WireSystemPackage */, - 598EA8C62C5BFFFE006DA500 /* WireAPI */, CB4E15112C81CC81005DDEC8 /* Down */, - 59D588942C7CDA7000CAFA0F /* WireUtilitiesPackage */, - 59D038262C85D31E009FE583 /* WireUIBase */, + 59D038262C85D31E009FE583 /* WireUIFoundation */, + 59B99FA92C89DE8600201827 /* WireFoundation */, + 59B99FAB2C89DF2100201827 /* WireAPI */, + 59B99FAF2C89DFB700201827 /* WireDomainPackage */, ); productName = "ZClient iOS"; productReference = 8F42C538199244A700288E4D /* Wire.app */; @@ -8652,7 +8616,6 @@ BACB884E1AF7C48900DDCDB0 /* Frameworks */, BACB884F1AF7C48900DDCDB0 /* Resources */, BFE731DE20A2F2270088BA22 /* Remove Old Snapshot Results */, - 59D588A52C7CDB2000CAFA0F /* Embed Frameworks */, ); buildRules = ( ); @@ -8662,9 +8625,8 @@ name = "Wire-iOS-Tests"; packageProductDependencies = ( 01C1A7C62A54C45A0058D578 /* SnapshotTesting */, - 59942F172C2BF72C00F65A54 /* WireUITesting */, - 5965B47E2C57C85D000DBF91 /* WireSystemPackageSupport */, - 59D588A22C7CDB2000CAFA0F /* WireUtilitiesPackage */, + 59B48C5D2C89CCAB00EA7999 /* WireFoundationSupport */, + 59B48C612C89CD3D00EA7999 /* WireTestingPackage */, ); productName = "ZClient-iOS Tests"; productReference = BACB88511AF7C48900DDCDB0 /* Wire-iOS-Tests.xctest */; @@ -8677,7 +8639,6 @@ E6579E322AFF9B30004E7FD8 /* Sources */, E6579E332AFF9B30004E7FD8 /* Frameworks */, E6579E342AFF9B30004E7FD8 /* Resources */, - 59D588A92C7CDB2600CAFA0F /* Embed Frameworks */, ); buildRules = ( ); @@ -8686,7 +8647,7 @@ ); name = "Wire-iOS UnitTests"; packageProductDependencies = ( - 59D588A62C7CDB2500CAFA0F /* WireUtilitiesPackage */, + 59B48C5F2C89CCCC00EA7999 /* WireFoundation */, ); productName = "Wire-iOS UnitTests"; productReference = E6579E362AFF9B30004E7FD8 /* Wire-iOS UnitTests.xctest */; @@ -8960,7 +8921,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "# Format\n\"$PROJECT_DIR/../scripts/run-swiftformat.sh\" \\\n \"$PROJECT_DIR/../SourceryPlugin\" \\\n \"$PROJECT_DIR/../WireAPI\" \\\n \"$PROJECT_DIR/../WireAnalytics\" \\\n \"$PROJECT_DIR/../WireDomain\" \\\n \"$PROJECT_DIR/../WireSystem\" \\\n \"$PROJECT_DIR/../WireTesting\" \\\n \"$PROJECT_DIR/../WireUI\" \\\n \"$PROJECT_DIR/../WireUtilities\"\n\n# Lint\n\"$PROJECT_DIR/../scripts/run-swiftlint.sh\" \\\n --fix \\\n --no-cache \\\n --quiet \\\n \"$PROJECT_DIR/..\"\n\"$PROJECT_DIR/../scripts/run-swiftlint.sh\" \\\n --strict \\\n --no-cache \\\n --quiet \\\n \"$PROJECT_DIR/..\"\n"; + shellScript = "# Format\n\"$PROJECT_DIR/../scripts/run-swiftformat.sh\" \\\n \"$PROJECT_DIR/../SourceryPlugin\" \\\n \"$PROJECT_DIR/../WireAPI\" \\\n \"$PROJECT_DIR/../WireAnalytics\" \\\n \"$PROJECT_DIR/../WireDomain\" \\\n \"$PROJECT_DIR/../WireFoundation\" \\\n \"$PROJECT_DIR/../WireLinkPreview\" \\\n \"$PROJECT_DIR/../WireUI\" \\\n \"$PROJECT_DIR/../scripts\"\n\n# Lint\n\"$PROJECT_DIR/../scripts/run-swiftlint.sh\" \\\n --fix \\\n --no-cache \\\n --quiet \\\n \"$PROJECT_DIR/..\"\n\"$PROJECT_DIR/../scripts/run-swiftlint.sh\" \\\n --strict \\\n --no-cache \\\n --quiet \\\n \"$PROJECT_DIR/..\"\n"; }; 5E055B28228AAF1500E91314 /* Update Settings.bundle */ = { isa = PBXShellScriptBuildPhase; @@ -11716,49 +11677,45 @@ isa = XCSwiftPackageProductDependency; productName = WireDesign; }; - 5965B46B2C57AC70000DBF91 /* WireSystemPackage */ = { - isa = XCSwiftPackageProductDependency; - productName = WireSystemPackage; - }; 5965B4782C57BF59000DBF91 /* WireAnalytics */ = { isa = XCSwiftPackageProductDependency; productName = WireAnalytics; }; - 5965B47E2C57C85D000DBF91 /* WireSystemPackageSupport */ = { + 59B48C5D2C89CCAB00EA7999 /* WireFoundationSupport */ = { isa = XCSwiftPackageProductDependency; - productName = WireSystemPackageSupport; + productName = WireFoundationSupport; }; - 598EA8C62C5BFFFE006DA500 /* WireAPI */ = { + 59B48C5F2C89CCCC00EA7999 /* WireFoundation */ = { isa = XCSwiftPackageProductDependency; - productName = WireAPI; + productName = WireFoundation; }; - 59942F172C2BF72C00F65A54 /* WireUITesting */ = { + 59B48C612C89CD3D00EA7999 /* WireTestingPackage */ = { isa = XCSwiftPackageProductDependency; - productName = WireUITesting; + productName = WireTestingPackage; }; - 59CD83E42C22CE9800186022 /* WireDesign */ = { + 59B99FA92C89DE8600201827 /* WireFoundation */ = { isa = XCSwiftPackageProductDependency; - productName = WireDesign; + productName = WireFoundation; }; - 59CDB3F52C4EA08F0049D1AB /* WireReusableUIComponents */ = { + 59B99FAB2C89DF2100201827 /* WireAPI */ = { isa = XCSwiftPackageProductDependency; - productName = WireReusableUIComponents; + productName = WireAPI; }; - 59D038262C85D31E009FE583 /* WireUIBase */ = { + 59B99FAF2C89DFB700201827 /* WireDomainPackage */ = { isa = XCSwiftPackageProductDependency; - productName = WireUIBase; + productName = WireDomainPackage; }; - 59D588942C7CDA7000CAFA0F /* WireUtilitiesPackage */ = { + 59CD83E42C22CE9800186022 /* WireDesign */ = { isa = XCSwiftPackageProductDependency; - productName = WireUtilitiesPackage; + productName = WireDesign; }; - 59D588A22C7CDB2000CAFA0F /* WireUtilitiesPackage */ = { + 59CDB3F52C4EA08F0049D1AB /* WireReusableUIComponents */ = { isa = XCSwiftPackageProductDependency; - productName = WireUtilitiesPackage; + productName = WireReusableUIComponents; }; - 59D588A62C7CDB2500CAFA0F /* WireUtilitiesPackage */ = { + 59D038262C85D31E009FE583 /* WireUIFoundation */ = { isa = XCSwiftPackageProductDependency; - productName = WireUtilitiesPackage; + productName = WireUIFoundation; }; CB4E15112C81CC81005DDEC8 /* Down */ = { isa = XCSwiftPackageProductDependency; diff --git a/wire-ios/Wire-iOS/Resources/sv.lproj/Accessibility.strings b/wire-ios/Wire-iOS/Resources/sv.lproj/Accessibility.strings index 94e42381f93..18a1c286234 100644 --- a/wire-ios/Wire-iOS/Resources/sv.lproj/Accessibility.strings +++ b/wire-ios/Wire-iOS/Resources/sv.lproj/Accessibility.strings @@ -290,7 +290,7 @@ "createSecureGuestLink.securedGuestLinkPasswordValidatedTextField.announcement" = "Password validation error. Please make sure the password matches the one above"; "createSecureGuestLink.CreateLinkButton.description" = "Skapa gästlänk"; -"createSecureGuestLink.CreateLinkButton.hint" = "Tap to create a secure guest link"; +"createSecureGuestLink.CreateLinkButton.hint" = "Tryck för att skapa en säker gästlänk"; // MARK: - Search Gifs diff --git a/wire-ios/Wire-iOS/Resources/sv.lproj/Localizable.strings b/wire-ios/Wire-iOS/Resources/sv.lproj/Localizable.strings index 7d4d02670fe..c979132a9f9 100644 --- a/wire-ios/Wire-iOS/Resources/sv.lproj/Localizable.strings +++ b/wire-ios/Wire-iOS/Resources/sv.lproj/Localizable.strings @@ -2105,10 +2105,10 @@ "device.details.section.e2ei.update_certificate" = "Uppdatera certifikat"; "device.details.section.e2ei.status.title" = "Status"; "device.details.section.e2ei.status.not_activated" = "Not activated"; -"device.details.section.e2ei.status.valid" = "Valid"; +"device.details.section.e2ei.status.valid" = "Giltig"; "device.details.section.e2ei.status.revoked" = "Revoked"; "device.details.section.e2ei.status.expired" = "Expired"; -"device.details.section.e2ei.status.invalid" = "Invalid"; +"device.details.section.e2ei.status.invalid" = "Ogiltig"; "device.details.section.e2ei.serial_number" = "Serienummer"; "device.details.section.mls.signature" = "MLS with %@ Signature"; "device.details.section.mls.title" = "MLS Thumbprint"; diff --git a/wire-ios/Wire-iOS/Sources/Helpers/AccentColorProvider.swift b/wire-ios/Wire-iOS/Sources/Helpers/AccentColorProvider.swift index e9e3aba3e6e..2f42e44e053 100644 --- a/wire-ios/Wire-iOS/Sources/Helpers/AccentColorProvider.swift +++ b/wire-ios/Wire-iOS/Sources/Helpers/AccentColorProvider.swift @@ -20,7 +20,7 @@ import UIKit import WireCommonComponents import WireDataModel import WireDesign -import WireUtilitiesPkg +import WireFoundation extension UserType { diff --git a/wire-ios/Wire-iOS/Sources/UserInterface/Calling/CallViewController/CallInfoConfiguration.swift b/wire-ios/Wire-iOS/Sources/UserInterface/Calling/CallViewController/CallInfoConfiguration.swift index 76d914906f5..97853f14253 100644 --- a/wire-ios/Wire-iOS/Sources/UserInterface/Calling/CallViewController/CallInfoConfiguration.swift +++ b/wire-ios/Wire-iOS/Sources/UserInterface/Calling/CallViewController/CallInfoConfiguration.swift @@ -19,8 +19,8 @@ import avs import Foundation import WireCommonComponents +import WireFoundation import WireSyncEngine -import WireSystemPackage extension VoiceChannel { func accessoryType() -> CallInfoViewControllerAccessoryType { @@ -67,6 +67,7 @@ extension VoiceChannel { return true } + @MainActor func mediaState(with permissions: CallPermissionsConfiguration) -> MediaState { let device = DeviceWrapper(device: .current) let isPadOrPod = device.userInterfaceIdiom == .pad || device.model.contains("iPod") @@ -121,6 +122,7 @@ struct CallInfoConfiguration: CallInfoViewControllerInput { private let voiceChannelSnapshot: VoiceChannelSnapshot + @MainActor init( voiceChannel: VoiceChannel, preferedVideoPlaceholderState: CallVideoPlaceholderState, diff --git a/wire-ios/Wire-iOS/Sources/UserInterface/Components/Giphy/GiphySearchViewController.swift b/wire-ios/Wire-iOS/Sources/UserInterface/Components/Giphy/GiphySearchViewController.swift index 37b49480667..906611771f1 100644 --- a/wire-ios/Wire-iOS/Sources/UserInterface/Components/Giphy/GiphySearchViewController.swift +++ b/wire-ios/Wire-iOS/Sources/UserInterface/Components/Giphy/GiphySearchViewController.swift @@ -21,8 +21,8 @@ import UIKit import WireCommonComponents import WireDataModel import WireDesign +import WireFoundation import WireSyncEngine -import WireUtilitiesPkg import Ziphy protocol GiphySearchViewControllerDelegate: AnyObject { diff --git a/wire-ios/Wire-iOS/Sources/UserInterface/Components/NetworkStatus/NetworkStatusViewController.swift b/wire-ios/Wire-iOS/Sources/UserInterface/Components/NetworkStatus/NetworkStatusViewController.swift index b79bbb70c76..a77a614df1c 100644 --- a/wire-ios/Wire-iOS/Sources/UserInterface/Components/NetworkStatus/NetworkStatusViewController.swift +++ b/wire-ios/Wire-iOS/Sources/UserInterface/Components/NetworkStatus/NetworkStatusViewController.swift @@ -17,8 +17,8 @@ // import UIKit +import WireFoundation import WireSyncEngine -import WireSystemPackage typealias NetworkStatusBarDelegate = NetworkStatusViewControllerDelegate & NetworkStatusViewDelegate diff --git a/wire-ios/Wire-iOS/Sources/UserInterface/Conversation/Content/Cells/ConfigurationMessageCell/Content/Text/ConversationLinkAttachmentCell.swift b/wire-ios/Wire-iOS/Sources/UserInterface/Conversation/Content/Cells/ConfigurationMessageCell/Content/Text/ConversationLinkAttachmentCell.swift index df81c2b62f5..fb0eb16c4fa 100644 --- a/wire-ios/Wire-iOS/Sources/UserInterface/Conversation/Content/Cells/ConfigurationMessageCell/Content/Text/ConversationLinkAttachmentCell.swift +++ b/wire-ios/Wire-iOS/Sources/UserInterface/Conversation/Content/Cells/ConfigurationMessageCell/Content/Text/ConversationLinkAttachmentCell.swift @@ -20,6 +20,7 @@ import UIKit import WireCommonComponents import WireDataModel import WireDesign +import WireLinkPreview final class ConversationLinkAttachmentCell: UIView, ConversationMessageCell, HighlightableView, ContextMenuDelegate { diff --git a/wire-ios/Wire-iOS/Sources/UserInterface/Conversation/Content/MessageActions/BasicReactionPicker.swift b/wire-ios/Wire-iOS/Sources/UserInterface/Conversation/Content/MessageActions/BasicReactionPicker.swift index 8d900e8a3a6..8581ebadebd 100644 --- a/wire-ios/Wire-iOS/Sources/UserInterface/Conversation/Content/MessageActions/BasicReactionPicker.swift +++ b/wire-ios/Wire-iOS/Sources/UserInterface/Conversation/Content/MessageActions/BasicReactionPicker.swift @@ -20,7 +20,7 @@ import UIKit import WireCommonComponents import WireDataModel import WireDesign -import WireSystemPackage +import WireFoundation protocol ReactionPickerDelegate: AnyObject { func didPickReaction(reaction: Emoji) diff --git a/wire-ios/Wire-iOS/Sources/UserInterface/Conversation/Content/MessageActions/CompleteReactionPicker/ReactionsCollectionView.swift b/wire-ios/Wire-iOS/Sources/UserInterface/Conversation/Content/MessageActions/CompleteReactionPicker/ReactionsCollectionView.swift index bf647e2b18f..1c24d820422 100644 --- a/wire-ios/Wire-iOS/Sources/UserInterface/Conversation/Content/MessageActions/CompleteReactionPicker/ReactionsCollectionView.swift +++ b/wire-ios/Wire-iOS/Sources/UserInterface/Conversation/Content/MessageActions/CompleteReactionPicker/ReactionsCollectionView.swift @@ -18,7 +18,7 @@ import UIKit import WireDesign -import WireSystemPackage +import WireFoundation final class ReactionsCollectionView: UICollectionView { diff --git a/wire-ios/Wire-iOS/Sources/UserInterface/Conversation/InputBar/ConversationInputBarViewController+UITextViewDelegate.swift b/wire-ios/Wire-iOS/Sources/UserInterface/Conversation/InputBar/ConversationInputBarViewController+UITextViewDelegate.swift index 8abda0e33d8..0d91810cbac 100644 --- a/wire-ios/Wire-iOS/Sources/UserInterface/Conversation/InputBar/ConversationInputBarViewController+UITextViewDelegate.swift +++ b/wire-ios/Wire-iOS/Sources/UserInterface/Conversation/InputBar/ConversationInputBarViewController+UITextViewDelegate.swift @@ -18,7 +18,7 @@ import UIKit import WireDataModel -import WireSystemPackage +import WireFoundation // MARK: SplitViewController reveal diff --git a/wire-ios/Wire-iOS/Sources/UserInterface/ConversationList/Container/TabBarChangeHandler.swift b/wire-ios/Wire-iOS/Sources/UserInterface/ConversationList/Container/TabBarChangeHandler.swift index 34f7d06f594..540103c2da4 100644 --- a/wire-ios/Wire-iOS/Sources/UserInterface/ConversationList/Container/TabBarChangeHandler.swift +++ b/wire-ios/Wire-iOS/Sources/UserInterface/ConversationList/Container/TabBarChangeHandler.swift @@ -17,7 +17,7 @@ // import UIKit -import WireUIBase +import WireUIFoundation /// Responds to selected tab changes, ensuring the correct _principle_ tab is selected and `Contacts` or `Archive` views /// are shown. diff --git a/wire-ios/Wire-iOS/Sources/UserInterface/Helpers/AccentColor+Name.swift b/wire-ios/Wire-iOS/Sources/UserInterface/Helpers/AccentColor+Name.swift index 495e362f1e7..4b9cef7474d 100644 --- a/wire-ios/Wire-iOS/Sources/UserInterface/Helpers/AccentColor+Name.swift +++ b/wire-ios/Wire-iOS/Sources/UserInterface/Helpers/AccentColor+Name.swift @@ -17,7 +17,7 @@ // import WireDataModel -import WireUtilitiesPkg +import WireFoundation extension AccentColor { diff --git a/wire-ios/Wire-iOS/Sources/UserInterface/Helpers/UIColor+Accent.swift b/wire-ios/Wire-iOS/Sources/UserInterface/Helpers/UIColor+Accent.swift index 9febeb408fa..4bdf8056feb 100644 --- a/wire-ios/Wire-iOS/Sources/UserInterface/Helpers/UIColor+Accent.swift +++ b/wire-ios/Wire-iOS/Sources/UserInterface/Helpers/UIColor+Accent.swift @@ -19,8 +19,8 @@ import UIKit import WireCommonComponents import WireDesign +import WireFoundation import WireSyncEngine -import WireUtilitiesPkg private var overridenAccentColor: AccentColor? diff --git a/wire-ios/Wire-iOS/Sources/UserInterface/Helpers/UITraitEnvironment+SizeClass.swift b/wire-ios/Wire-iOS/Sources/UserInterface/Helpers/UITraitEnvironment+SizeClass.swift index 744cc15d89e..1d007720ee0 100644 --- a/wire-ios/Wire-iOS/Sources/UserInterface/Helpers/UITraitEnvironment+SizeClass.swift +++ b/wire-ios/Wire-iOS/Sources/UserInterface/Helpers/UITraitEnvironment+SizeClass.swift @@ -17,7 +17,7 @@ // import UIKit -import WireSystemPackage +import WireFoundation extension UITraitEnvironment { diff --git a/wire-ios/Wire-iOS/Sources/UserInterface/MainController/ZClientViewController.swift b/wire-ios/Wire-iOS/Sources/UserInterface/MainController/ZClientViewController.swift index 2b53ef8a286..47b75be5a63 100644 --- a/wire-ios/Wire-iOS/Sources/UserInterface/MainController/ZClientViewController.swift +++ b/wire-ios/Wire-iOS/Sources/UserInterface/MainController/ZClientViewController.swift @@ -17,11 +17,12 @@ // import avs +import SwiftUI import UIKit import WireCommonComponents import WireDesign import WireSyncEngine -import WireUIBase +import WireUIFoundation final class ZClientViewController: UIViewController { diff --git a/wire-ios/Wire-iOS/Sources/UserInterface/Settings/AccentColorPicker.swift b/wire-ios/Wire-iOS/Sources/UserInterface/Settings/AccentColorPicker.swift index 5fbe42d2113..a7f99a88e4f 100644 --- a/wire-ios/Wire-iOS/Sources/UserInterface/Settings/AccentColorPicker.swift +++ b/wire-ios/Wire-iOS/Sources/UserInterface/Settings/AccentColorPicker.swift @@ -19,8 +19,8 @@ import SwiftUI import WireCommonComponents import WireDesign +import WireFoundation import WireSyncEngine -import WireUtilitiesPkg struct AccentColorPicker: View { diff --git a/wire-ios/Wire-iOS/Sources/UserInterface/Settings/AccentColorPickerController.swift b/wire-ios/Wire-iOS/Sources/UserInterface/Settings/AccentColorPickerController.swift index 320d6dfde42..b6e899fc247 100644 --- a/wire-ios/Wire-iOS/Sources/UserInterface/Settings/AccentColorPickerController.swift +++ b/wire-ios/Wire-iOS/Sources/UserInterface/Settings/AccentColorPickerController.swift @@ -18,9 +18,9 @@ import SwiftUI import WireDataModel +import WireFoundation import WireSyncEngine import WireUtilities -import WireUtilitiesPkg final class AccentColorPickerController: UIHostingController { diff --git a/wire-ios/Wire-iOS/Sources/UserInterface/Settings/SettingsAppearanceCell.swift b/wire-ios/Wire-iOS/Sources/UserInterface/Settings/SettingsAppearanceCell.swift index af69586315e..764f3cdaa56 100644 --- a/wire-ios/Wire-iOS/Sources/UserInterface/Settings/SettingsAppearanceCell.swift +++ b/wire-ios/Wire-iOS/Sources/UserInterface/Settings/SettingsAppearanceCell.swift @@ -18,8 +18,8 @@ import UIKit import WireDesign +import WireFoundation import WireUtilities -import WireUtilitiesPkg final class SettingsAppearanceCell: SettingsTableCell, CellConfigurationConfigurable { diff --git a/wire-ios/Wire-iOS/Sources/UserInterface/StartUI/StartUI/StartUIViewController+AddressBook.swift b/wire-ios/Wire-iOS/Sources/UserInterface/StartUI/StartUI/StartUIViewController+AddressBook.swift index 2689ca6b352..7bd322657b8 100644 --- a/wire-ios/Wire-iOS/Sources/UserInterface/StartUI/StartUI/StartUIViewController+AddressBook.swift +++ b/wire-ios/Wire-iOS/Sources/UserInterface/StartUI/StartUI/StartUIViewController+AddressBook.swift @@ -19,7 +19,7 @@ import UIKit import WireCommonComponents import WireDataModel -import WireUIBase +import WireUIFoundation extension StartUIViewController {