feat: integrate native indexer for mobile (#14174)

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

## Release Notes

* **New Features**
* Added full-text search functionality to mobile apps (Android and iOS),
enabling document indexing and search capabilities.
* Enhanced blob upload support with new GraphQL mutations for creating,
completing, and managing file uploads.

* **Improvements**
* iOS and Android now use SQLite storage backend for improved indexing
performance, aligning with desktop experience.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
This commit is contained in:
DarkSky
2025-12-28 21:34:39 +08:00
committed by GitHub
parent 504460438f
commit 20a80015c0
24 changed files with 1993 additions and 39 deletions

View File

@@ -0,0 +1,11 @@
// @generated
// This file was automatically generated and should not be edited.
import ApolloAPI
/// Blob upload method
public enum BlobUploadMethod: String, EnumType {
case graphql = "GRAPHQL"
case multipart = "MULTIPART"
case presigned = "PRESIGNED"
}

View File

@@ -0,0 +1,32 @@
// @generated
// This file was automatically generated and should not be edited.
import ApolloAPI
public struct BlobUploadPartInput: InputObject {
public private(set) var __data: InputDict
public init(_ data: InputDict) {
__data = data
}
public init(
etag: String,
partNumber: Int
) {
__data = InputDict([
"etag": etag,
"partNumber": partNumber
])
}
public var etag: String {
get { __data["etag"] }
set { __data["etag"] = newValue }
}
public var partNumber: Int {
get { __data["partNumber"] }
set { __data["partNumber"] = newValue }
}
}

View File

@@ -0,0 +1,12 @@
// @generated
// This file was automatically generated and should not be edited.
import ApolloAPI
public extension Objects {
static let BlobUploadInit = ApolloAPI.Object(
typename: "BlobUploadInit",
implementedInterfaces: [],
keyFields: nil
)
}

View File

@@ -0,0 +1,12 @@
// @generated
// This file was automatically generated and should not be edited.
import ApolloAPI
public extension Objects {
static let BlobUploadPart = ApolloAPI.Object(
typename: "BlobUploadPart",
implementedInterfaces: [],
keyFields: nil
)
}

View File

@@ -0,0 +1,12 @@
// @generated
// This file was automatically generated and should not be edited.
import ApolloAPI
public extension Objects {
static let BlobUploadedPart = ApolloAPI.Object(
typename: "BlobUploadedPart",
implementedInterfaces: [],
keyFields: nil
)
}

View File

@@ -24,6 +24,9 @@ public enum SchemaMetadata: ApolloAPI.SchemaMetadata {
case "AggregateBucketObjectType": return AffineGraphQL.Objects.AggregateBucketObjectType
case "AggregateResultObjectType": return AffineGraphQL.Objects.AggregateResultObjectType
case "AppConfigValidateResult": return AffineGraphQL.Objects.AppConfigValidateResult
case "BlobUploadInit": return AffineGraphQL.Objects.BlobUploadInit
case "BlobUploadPart": return AffineGraphQL.Objects.BlobUploadPart
case "BlobUploadedPart": return AffineGraphQL.Objects.BlobUploadedPart
case "ChatMessage": return AffineGraphQL.Objects.ChatMessage
case "CommentChangeObjectType": return AffineGraphQL.Objects.CommentChangeObjectType
case "CommentChangeObjectTypeEdge": return AffineGraphQL.Objects.CommentChangeObjectTypeEdge