jacquard_api/sh_tangled/repo/
create.rs1#[allow(unused_imports)]
9use alloc::collections::BTreeMap;
10
11#[allow(unused_imports)]
12use core::marker::PhantomData;
13use jacquard_common::CowStr;
14use jacquard_derive::{IntoStatic, lexicon};
15use serde::{Serialize, Deserialize};
16
17#[lexicon]
18#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Eq, IntoStatic, Default)]
19#[serde(rename_all = "camelCase")]
20pub struct Create<'a> {
21 #[serde(skip_serializing_if = "Option::is_none")]
23 #[serde(borrow)]
24 pub default_branch: Option<CowStr<'a>>,
25 #[serde(borrow)]
27 pub rkey: CowStr<'a>,
28 #[serde(skip_serializing_if = "Option::is_none")]
30 #[serde(borrow)]
31 pub source: Option<CowStr<'a>>,
32}
33
34pub struct CreateResponse;
36impl jacquard_common::xrpc::XrpcResp for CreateResponse {
37 const NSID: &'static str = "sh.tangled.repo.create";
38 const ENCODING: &'static str = "application/json";
39 type Output<'de> = ();
40 type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
41}
42
43impl<'a> jacquard_common::xrpc::XrpcRequest for Create<'a> {
44 const NSID: &'static str = "sh.tangled.repo.create";
45 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
46 "application/json",
47 );
48 type Response = CreateResponse;
49}
50
51pub struct CreateRequest;
53impl jacquard_common::xrpc::XrpcEndpoint for CreateRequest {
54 const PATH: &'static str = "/xrpc/sh.tangled.repo.create";
55 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
56 "application/json",
57 );
58 type Request<'de> = Create<'de>;
59 type Response = CreateResponse;
60}