ZIm/crates/rpc/src/extension.rs
Conrad Irwin cb6fc11abc
Rank exact extension ID matches higher in search results (#14588)
Release Notes:

- Improved relevance of extension search results

Co-authored-by: Marshall <marshall@zed.dev>
2024-07-16 12:33:28 -06:00

28 lines
758 B
Rust

use chrono::{DateTime, Utc};
use serde::{Deserialize, Serialize};
use std::sync::Arc;
#[derive(Clone, Serialize, Deserialize, Debug, PartialEq)]
pub struct ExtensionApiManifest {
pub name: String,
pub version: Arc<str>,
pub description: Option<String>,
pub authors: Vec<String>,
pub repository: String,
pub schema_version: Option<i32>,
pub wasm_api_version: Option<String>,
}
#[derive(Clone, Serialize, Deserialize, Debug, PartialEq)]
pub struct ExtensionMetadata {
pub id: Arc<str>,
#[serde(flatten)]
pub manifest: ExtensionApiManifest,
pub published_at: DateTime<Utc>,
pub download_count: u64,
}
#[derive(Serialize, Deserialize)]
pub struct GetExtensionsResponse {
pub data: Vec<ExtensionMetadata>,
}