Conversation
# Conflicts: # Project.swift # Conflicts: # Project.swift # Conflicts: # Project.swift
f403d91 to
a396cf1
Compare
There was a problem hiding this comment.
Pull request overview
This PR adds a Share Extension to the Euria iOS app, allowing users to share files from other apps directly into Euria. The implementation includes a complete file upload pipeline with WebView bridge communication.
Key changes:
- New Share Extension target with ShareViewController for handling shared items
- Upload management system with file import helpers and API integration
- Refactored WebView bridge architecture to support bidirectional communication between the main app and WebView
Reviewed changes
Copilot reviewed 22 out of 22 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| Project.swift | Added EuriaShareExtension target configuration with app extension product type and dependencies |
| EuriaShareExtension/Sources/ShareViewController.swift | Implements Share Extension view controller with file import and container URL handling |
| EuriaShareExtension/Resources/Euria.entitlements | Defines app group entitlements for sharing data between extension and main app |
| EuriaFeatures/MainView/MainView.swift | Integrated UploadManager with WebView delegate bridge |
| EuriaFeatures/MainView/Delegate/EuriaWebViewDelegate.swift | Refactored to support subscriber pattern for WebView messages and renamed JSMessage to JSFunction |
| EuriaFeatures/MainView/Delegate/EuriaWebViewDelegate+WKScriptMessageHandler.swift | Updated to use new subscriber pattern and JSMessageTopic enum |
| EuriaCore/WebView Bridge/WebViewBridge.swift | Redesigned bridge protocol with subscriber support and JSMessageTopic enum |
| EuriaCore/WebView Bridge/JSFunction.swift | New file defining JavaScript function declarations for WebView communication |
| EuriaCore/Utils/Constants.swift | Added importURLFor deeplink function |
| EuriaCore/UniversalLinkHandler.swift | Added handlePossibleImportSession method and fixed scheme validation |
| EuriaCore/Networking/UploadApiFetcher.swift | Implements file upload API with cancellation support |
| EuriaCore/Networking/FileUploadResult.swift | Response model for file upload results |
| EuriaCore/Networking/Endpoint+Extension.swift | Added Euria-specific API endpoints |
| EuriaCore/Extensions/Endpoint+Extension.swift | Moved FileUploadErrorJsResponse definition here |
| EuriaCore/Attachement Upload/UploadManager.swift | Main upload orchestration with import session handling and cleanup |
| EuriaCore/Attachement Upload/ImportedFile.swift | Model representing files to be imported with metadata |
| EuriaCore/Attachement Upload/ImportHelper.swift | Helper for managing import directory and file operations |
| EuriaCore/Attachement Upload/FileUploadSucceedJsResponse.swift | Response model for successful upload callback |
| Euria/Sources/EuriaApp.swift | Updated URL handling to support import sessions |
| .github/workflows/*.yml | Extended workflow triggers to include protected/* branches |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 22 out of 22 changed files in this pull request and generated 7 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 22 out of 22 changed files in this pull request and generated 4 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.



No description provided.