forked from
smokesignal.events/smokesignal
i18n+filtering fork - fluent-templates v2
1use thiserror::Error;
2
3#[derive(Debug, Error)]
4pub enum ClientError {
5 #[error("error-xrpc-client-1 Malformed PutRecord response: {0:?}")]
6 PutRecordResponseFailure(reqwest::Error),
7
8 #[error("error-xrpc-client-2 Malformed CreateRecord response: {0:?}")]
9 CreateRecordResponseFailure(reqwest::Error),
10
11 #[error("error-xrpc-client-3 XRPC error from server: {0}")]
12 ServerError(String),
13
14 #[error("error-xrpc-client-4 Invalid record format: {0}")]
15 InvalidRecordFormat(String),
16}
17
18#[derive(Debug, Error)]
19pub enum UriError {
20 #[error("error-uri-1 Invalid AT-URI: repository missing")]
21 RepositoryMissing,
22
23 #[error("error-uri-2 Invalid AT-URI: collection missing")]
24 CollectionMissing,
25
26 #[error("error-uri-3 Invalid AT-URI: rkey missing")]
27 RkeyMissing,
28
29 #[error("error-uri-4 Invalid AT-URI")]
30 InvalidFormat,
31
32 #[error("error-uri-5 Invalid AT-URI: repository contains invalid characters")]
33 InvalidRepository,
34
35 #[error("error-uri-6 Invalid AT-URI: collection contains invalid characters")]
36 InvalidCollection,
37
38 #[error("error-uri-7 Invalid AT-URI: rkey contains invalid characters")]
39 InvalidRkey,
40
41 #[error("error-uri-8 Invalid AT-URI: path traversal attempt detected")]
42 PathTraversalAttempt,
43
44 #[error("error-uri-9 Invalid AT-URI: repository too long (max 253 chars)")]
45 RepositoryTooLong,
46
47 #[error("error-uri-10 Invalid AT-URI: collection too long (max 128 chars)")]
48 CollectionTooLong,
49
50 #[error("error-uri-11 Invalid AT-URI: rkey too long (max 512 chars)")]
51 RkeyTooLong,
52}