A better Rust ATProto crate

more lexicons

Orual 623d0118 b4b1f2d8

Changed files
+18251 -2102
crates
jacquard-api
lexicons
src
app_blebbit
app_bsky
actor
bookmark
feed
graph
labeler
notification
unspecced
video
app_ocho
beauty_cybernetic
blue__2048
blue_atplane
blue_rito
buzz_bookhive
chat_bsky
club_stellz
com_atproto
admin
identity
label
moderation
repo
server
sync
temp
com_bad_example
com_crabdance
com_shinolabs
com_whtwnd
community_lexicon
dev_baileytownsend
dev_fudgeu
dev_regnault
events_smokesignal
automation
garden_lexicon
ngerakines
lol_skittr
actor
server
net_aftertheinter
net_bnewbold
net_mmatt
network_slices
org_devcon
org_robocracy
place_atwork
place_stream
sh_tangled
sh_weaver
social_clippr
social_grain
social_pmsky
tools_ozone
uk_skyblur
us_polhem
win_tomo_x
jacquard-axum
jacquard-common
src
jacquard-lexicon
+89
Cargo.lock
···
]
[[package]]
+
name = "axum-macros"
+
version = "0.5.0"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "604fde5e028fea851ce1d8570bbdc034bec850d157f7569d10f347d06808c05c"
+
dependencies = [
+
"proc-macro2",
+
"quote",
+
"syn 2.0.106",
+
]
+
+
[[package]]
name = "axum-test"
version = "18.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
···
version = "0.3.0"
dependencies = [
"axum",
+
"axum-macros",
"axum-test",
"bytes",
"jacquard",
···
"thiserror 2.0.17",
"tokio",
"tokio-test",
+
"tower-http",
+
"tracing",
+
"tracing-subscriber",
[[package]]
···
[[package]]
+
name = "matchers"
+
version = "0.2.0"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "d1525a2a28c7f4fa0fc98bb91ae755d1e2d1505079e05539e35bc876b5d65ae9"
+
dependencies = [
+
"regex-automata",
+
]
+
+
[[package]]
name = "matchit"
version = "0.8.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
···
dependencies = [
"memchr",
"minimal-lexical",
+
]
+
+
[[package]]
+
name = "nu-ansi-term"
+
version = "0.50.3"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "7957b9740744892f114936ab4a57b3f487491bbeafaf8083688b16841a4240e5"
+
dependencies = [
+
"windows-sys 0.60.2",
[[package]]
···
[[package]]
+
name = "sharded-slab"
+
version = "0.1.7"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6"
+
dependencies = [
+
"lazy_static",
+
]
+
+
[[package]]
name = "shlex"
version = "1.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
···
[[package]]
+
name = "thread_local"
+
version = "1.1.9"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "f60246a4944f24f6e018aa17cdeffb7818b76356965d03b07d6a9886e8962185"
+
dependencies = [
+
"cfg-if",
+
]
+
+
[[package]]
name = "threadpool"
version = "1.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
···
"tower",
"tower-layer",
"tower-service",
+
"tracing",
[[package]]
···
checksum = "b9d12581f227e93f094d3af2ae690a574abb8a2b9b7a96e7cfe9647b2b617678"
dependencies = [
"once_cell",
+
"valuable",
+
]
+
+
[[package]]
+
name = "tracing-log"
+
version = "0.2.0"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3"
+
dependencies = [
+
"log",
+
"once_cell",
+
"tracing-core",
+
]
+
+
[[package]]
+
name = "tracing-subscriber"
+
version = "0.3.20"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "2054a14f5307d601f88daf0553e1cbf472acc4f2c51afab632431cdcd72124d5"
+
dependencies = [
+
"matchers",
+
"nu-ansi-term",
+
"once_cell",
+
"regex-automata",
+
"sharded-slab",
+
"smallvec",
+
"thread_local",
+
"time",
+
"tracing",
+
"tracing-core",
+
"tracing-log",
[[package]]
···
"js-sys",
"wasm-bindgen",
+
+
[[package]]
+
name = "valuable"
+
version = "0.1.1"
+
source = "registry+https://github.com/rust-lang/crates.io-index"
+
checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65"
[[package]]
name = "version_check"
+20 -4
crates/jacquard-api/Cargo.toml
···
[features]
default = [ "com_atproto", "com_bad_example"]
bluesky = [ "com_atproto", "app_bsky", "chat_bsky", "tools_ozone"]
-
other = ["sh_tangled", "sh_weaver", "pub_leaflet", "net_anisota", "events_smokesignal","network_slices", "tools_smokesignal", "com_whtwnd", "community_lexicon", "place_stream" ]
+
other = ["sh_tangled", "sh_weaver", "pub_leaflet", "net_anisota", "events_smokesignal","network_slices", "tools_smokesignal", "com_whtwnd", "community_lexicon", "place_stream", "blue__2048" ]
lexicon_community = ["community_lexicon", "my_skylights", "com_whtwnd", "social_psky", "lol_atmo", "blue_linkat"]
-
ufos = ["place_artwork", "moe_karashiiro", "dev_regnault", "buzz_bookhive", "place_artwork", "how_bun", "lol_atmo", "inc_toronto", "uk_ewancroft", "xyz_autonomylab", "lol_skittr", "win_tomo", "dev_fudgeu", "dev_ocbwoy3", "blog_pckt", "blue_rito", "com_welistskyblue", "net_bnewbold", "did_plc_jh6yfs5dk47kykvhp7r6qwrb"]
+
ufos = ["place_artwork", "moe_karashiiro", "dev_regnault", "buzz_bookhive", "place_artwork", "how_bun", "lol_atmo", "inc_toronto", "uk_ewancroft", "lol_skittr", "win_tomo", "dev_fudgeu", "dev_ocbwoy3", "blog_pckt", "blue_rito", "com_welistskyblue", "net_bnewbold", "club_stellz", "dev_baileytownsend", "net_aftertheinter", "org_devcon","org_robocracy", "garden_lexicon", "social_clippr", "social_grain", "social_pmsky", "com_crabdance", "app_blebbit", "app_ocho", "uk_skyblur", "us_polhem", "blue_atplane", "net_mmatt" ]
app_bsky = []
chat_bsky = []
com_atproto = []
···
place_atwork = []
tools_smokesignal = []
uk_ewancroft = []
-
xyz_autonomylab = []
place_artwork = []
moe_karashiiro = []
buzz_bookhive = []
dev_regnault = []
events_smokesignal = []
+
dev_baileytownsend = []
+
blue__2048 = []
+
blue_atplane = []
+
club_stellz = []
+
net_mmatt = []
how_bun = []
lol_atmo = []
lol_skittr = []
···
com_welistskyblue = []
blog_pckt = []
blue_rito = []
-
did_plc_jh6yfs5dk47kykvhp7r6qwrb = []
net_bnewbold = []
win_tomo_x = []
com_shinolabs = []
···
social_psky = []
place_stream = []
my_skylights = []
+
net_aftertheinter = []
+
org_devcon = []
+
org_robocracy = []
+
garden_lexicon = []
+
social_clippr = []
+
social_grain = []
+
social_pmsky = []
+
com_crabdance = []
+
app_blebbit = []
+
beauty_cybernetic = []
+
app_ocho = []
+
uk_skyblur = []
+
us_polhem = []
+7
crates/jacquard-api/lexicons/app_blebbit_authr_folder_authzed.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.folder.authzed",
+
"revision": 1,
+
"description": "Relations and permissions available on folders for the Authr Example",
+
"defs": {}
+
}
+42
crates/jacquard-api/lexicons/app_blebbit_authr_folder_createFolder.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.folder.createFolder",
+
"revision": 1,
+
"description": "create a folder",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"properties": {
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"properties": {
+
"cuid": {
+
"type": "string"
+
},
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+33
crates/jacquard-api/lexicons/app_blebbit_authr_folder_createFolderRelationship.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.folder.createFolderRelationship",
+
"revision": 1,
+
"description": "create a relationship for folder",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"subject",
+
"relation",
+
"resource"
+
],
+
"properties": {
+
"relation": {
+
"type": "string"
+
},
+
"resource": {
+
"type": "string"
+
},
+
"subject": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+33
crates/jacquard-api/lexicons/app_blebbit_authr_folder_defs.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.folder.defs",
+
"revision": 1,
+
"description": "Common folder defs for the Authr Example",
+
"defs": {
+
"folderForm": {
+
"type": "object",
+
"properties": {
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
},
+
"folderView": {
+
"type": "object",
+
"properties": {
+
"cuid": {
+
"type": "string"
+
},
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
}
+
}
+
}
+19
crates/jacquard-api/lexicons/app_blebbit_authr_folder_deleteFolder.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.folder.deleteFolder",
+
"revision": 1,
+
"description": "delete a folder",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"parameters": {
+
"type": "params",
+
"properties": {
+
"id": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+32
crates/jacquard-api/lexicons/app_blebbit_authr_folder_deleteFolderRelationship.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.folder.deleteFolderRelationship",
+
"revision": 1,
+
"description": "delete a relationship for folder",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"subject",
+
"resource"
+
],
+
"properties": {
+
"relation": {
+
"type": "string"
+
},
+
"resource": {
+
"type": "string"
+
},
+
"subject": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+39
crates/jacquard-api/lexicons/app_blebbit_authr_folder_getFolder.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.folder.getFolder",
+
"revision": 1,
+
"description": "get a folder by id",
+
"defs": {
+
"main": {
+
"type": "query",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"id"
+
],
+
"properties": {
+
"id": {
+
"type": "string"
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"properties": {
+
"cuid": {
+
"type": "string"
+
},
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+37
crates/jacquard-api/lexicons/app_blebbit_authr_folder_getFolders.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.folder.getFolders",
+
"revision": 1,
+
"description": "get a folder list",
+
"defs": {
+
"main": {
+
"type": "query",
+
"parameters": {
+
"type": "params",
+
"properties": {
+
"cursor": {
+
"type": "string"
+
},
+
"limit": {
+
"type": "integer"
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"properties": {
+
"folders": {
+
"type": "array",
+
"items": {
+
"type": "ref",
+
"ref": "app.blebbit.authr.folder.defs#folderView"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+26
crates/jacquard-api/lexicons/app_blebbit_authr_folder_record.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.folder.record",
+
"revision": 1,
+
"description": "Lexicon for folders on Authr Example",
+
"defs": {
+
"main": {
+
"type": "record",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"properties": {
+
"cuid": {
+
"type": "string"
+
},
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
}
+
}
+
}
+
}
+50
crates/jacquard-api/lexicons/app_blebbit_authr_folder_updateFolder.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.folder.updateFolder",
+
"revision": 1,
+
"description": "update a folder",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"parameters": {
+
"type": "params",
+
"properties": {
+
"id": {
+
"type": "string"
+
}
+
}
+
},
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"properties": {
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"properties": {
+
"cuid": {
+
"type": "string"
+
},
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+33
crates/jacquard-api/lexicons/app_blebbit_authr_folder_updateFolderRelationship.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.folder.updateFolderRelationship",
+
"revision": 1,
+
"description": "update a relationship for folder",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"subject",
+
"relation",
+
"resource"
+
],
+
"properties": {
+
"relation": {
+
"type": "string"
+
},
+
"resource": {
+
"type": "string"
+
},
+
"subject": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+7
crates/jacquard-api/lexicons/app_blebbit_authr_group_authzed.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.group.authzed",
+
"revision": 1,
+
"description": "Relations and permissions available on groups for the Authr Example",
+
"defs": {}
+
}
+57
crates/jacquard-api/lexicons/app_blebbit_authr_group_createGroup.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.group.createGroup",
+
"revision": 1,
+
"description": "create a group",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"name"
+
],
+
"properties": {
+
"description": {
+
"type": "string"
+
},
+
"display": {
+
"type": "string"
+
},
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"properties": {
+
"cuid": {
+
"type": "string"
+
},
+
"description": {
+
"type": "string"
+
},
+
"display": {
+
"type": "string"
+
},
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+33
crates/jacquard-api/lexicons/app_blebbit_authr_group_createGroupRelationship.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.group.createGroupRelationship",
+
"revision": 1,
+
"description": "create a relationship for group",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"subject",
+
"relation",
+
"resource"
+
],
+
"properties": {
+
"relation": {
+
"type": "string"
+
},
+
"resource": {
+
"type": "string"
+
},
+
"subject": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+48
crates/jacquard-api/lexicons/app_blebbit_authr_group_defs.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.group.defs",
+
"revision": 1,
+
"description": "Common defs for the Authr Example",
+
"defs": {
+
"groupForm": {
+
"type": "object",
+
"required": [
+
"name"
+
],
+
"properties": {
+
"description": {
+
"type": "string"
+
},
+
"display": {
+
"type": "string"
+
},
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
},
+
"groupView": {
+
"type": "object",
+
"properties": {
+
"cuid": {
+
"type": "string"
+
},
+
"description": {
+
"type": "string"
+
},
+
"display": {
+
"type": "string"
+
},
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
}
+
}
+
}
+19
crates/jacquard-api/lexicons/app_blebbit_authr_group_deleteGroup.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.group.deleteGroup",
+
"revision": 1,
+
"description": "delete a group",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"parameters": {
+
"type": "params",
+
"properties": {
+
"id": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+32
crates/jacquard-api/lexicons/app_blebbit_authr_group_deleteGroupRelationship.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.group.deleteGroupRelationship",
+
"revision": 1,
+
"description": "delete a relationship for group",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"subject",
+
"resource"
+
],
+
"properties": {
+
"relation": {
+
"type": "string"
+
},
+
"resource": {
+
"type": "string"
+
},
+
"subject": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+45
crates/jacquard-api/lexicons/app_blebbit_authr_group_getGroup.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.group.getGroup",
+
"revision": 1,
+
"description": "get a group by id",
+
"defs": {
+
"main": {
+
"type": "query",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"id"
+
],
+
"properties": {
+
"id": {
+
"type": "string"
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"properties": {
+
"cuid": {
+
"type": "string"
+
},
+
"description": {
+
"type": "string"
+
},
+
"display": {
+
"type": "string"
+
},
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+37
crates/jacquard-api/lexicons/app_blebbit_authr_group_getGroups.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.group.getGroups",
+
"revision": 1,
+
"description": "get a group list",
+
"defs": {
+
"main": {
+
"type": "query",
+
"parameters": {
+
"type": "params",
+
"properties": {
+
"cursor": {
+
"type": "string"
+
},
+
"limit": {
+
"type": "integer"
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"properties": {
+
"groups": {
+
"type": "array",
+
"items": {
+
"type": "ref",
+
"ref": "app.blebbit.authr.group.defs#groupView"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+32
crates/jacquard-api/lexicons/app_blebbit_authr_group_record.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.group.record",
+
"revision": 1,
+
"description": "Lexicon for groups on Authr Example",
+
"defs": {
+
"main": {
+
"type": "record",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"properties": {
+
"cuid": {
+
"type": "string"
+
},
+
"description": {
+
"type": "string"
+
},
+
"display": {
+
"type": "string"
+
},
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
}
+
}
+
}
+
}
+65
crates/jacquard-api/lexicons/app_blebbit_authr_group_updateGroup.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.group.updateGroup",
+
"revision": 1,
+
"description": "update a group",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"parameters": {
+
"type": "params",
+
"properties": {
+
"id": {
+
"type": "string"
+
}
+
}
+
},
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"name"
+
],
+
"properties": {
+
"description": {
+
"type": "string"
+
},
+
"display": {
+
"type": "string"
+
},
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"properties": {
+
"cuid": {
+
"type": "string"
+
},
+
"description": {
+
"type": "string"
+
},
+
"display": {
+
"type": "string"
+
},
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+33
crates/jacquard-api/lexicons/app_blebbit_authr_group_updateGroupRelationship.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.group.updateGroupRelationship",
+
"revision": 1,
+
"description": "update a relationship for group",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"subject",
+
"relation",
+
"resource"
+
],
+
"properties": {
+
"relation": {
+
"type": "string"
+
},
+
"resource": {
+
"type": "string"
+
},
+
"subject": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+7
crates/jacquard-api/lexicons/app_blebbit_authr_page_authzed.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.page.authzed",
+
"revision": 1,
+
"description": "Relations and permissions available on pages for the Authr Example",
+
"defs": {}
+
}
+45
crates/jacquard-api/lexicons/app_blebbit_authr_page_createPage.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.page.createPage",
+
"revision": 1,
+
"description": "create a page",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"properties": {
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"properties": {
+
"content": {
+
"type": "string"
+
},
+
"cuid": {
+
"type": "string"
+
},
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+33
crates/jacquard-api/lexicons/app_blebbit_authr_page_createPageRelationship.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.page.createPageRelationship",
+
"revision": 1,
+
"description": "create a relationship for page",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"subject",
+
"relation",
+
"resource"
+
],
+
"properties": {
+
"relation": {
+
"type": "string"
+
},
+
"resource": {
+
"type": "string"
+
},
+
"subject": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+36
crates/jacquard-api/lexicons/app_blebbit_authr_page_defs.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.page.defs",
+
"revision": 1,
+
"description": "Common page defs for the Authr Example",
+
"defs": {
+
"pageForm": {
+
"type": "object",
+
"properties": {
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
},
+
"pageView": {
+
"type": "object",
+
"properties": {
+
"content": {
+
"type": "string"
+
},
+
"cuid": {
+
"type": "string"
+
},
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
}
+
}
+
}
+19
crates/jacquard-api/lexicons/app_blebbit_authr_page_deletePage.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.page.deletePage",
+
"revision": 1,
+
"description": "delete a page",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"parameters": {
+
"type": "params",
+
"properties": {
+
"id": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+32
crates/jacquard-api/lexicons/app_blebbit_authr_page_deletePageRelationship.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.page.deletePageRelationship",
+
"revision": 1,
+
"description": "delete a relationship for page",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"subject",
+
"resource"
+
],
+
"properties": {
+
"relation": {
+
"type": "string"
+
},
+
"resource": {
+
"type": "string"
+
},
+
"subject": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+42
crates/jacquard-api/lexicons/app_blebbit_authr_page_getPage.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.page.getPage",
+
"revision": 1,
+
"description": "get a page by id",
+
"defs": {
+
"main": {
+
"type": "query",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"id"
+
],
+
"properties": {
+
"id": {
+
"type": "string"
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"properties": {
+
"content": {
+
"type": "string"
+
},
+
"cuid": {
+
"type": "string"
+
},
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+37
crates/jacquard-api/lexicons/app_blebbit_authr_page_getPages.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.page.getPages",
+
"revision": 1,
+
"description": "get a page list",
+
"defs": {
+
"main": {
+
"type": "query",
+
"parameters": {
+
"type": "params",
+
"properties": {
+
"cursor": {
+
"type": "string"
+
},
+
"limit": {
+
"type": "integer"
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"properties": {
+
"pages": {
+
"type": "array",
+
"items": {
+
"type": "ref",
+
"ref": "app.blebbit.authr.page.defs#pageView"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+29
crates/jacquard-api/lexicons/app_blebbit_authr_page_record.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.page.record",
+
"revision": 1,
+
"description": "Lexicon for pages on Authr Example",
+
"defs": {
+
"main": {
+
"type": "record",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"properties": {
+
"content": {
+
"type": "string"
+
},
+
"cuid": {
+
"type": "string"
+
},
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
}
+
}
+
}
+
}
+53
crates/jacquard-api/lexicons/app_blebbit_authr_page_updatePage.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.page.updatePage",
+
"revision": 1,
+
"description": "update a page",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"parameters": {
+
"type": "params",
+
"properties": {
+
"id": {
+
"type": "string"
+
}
+
}
+
},
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"properties": {
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"properties": {
+
"content": {
+
"type": "string"
+
},
+
"cuid": {
+
"type": "string"
+
},
+
"name": {
+
"type": "string"
+
},
+
"public": {
+
"type": "boolean"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+33
crates/jacquard-api/lexicons/app_blebbit_authr_page_updatePageRelationship.json
···
+
{
+
"lexicon": 1,
+
"id": "app.blebbit.authr.page.updatePageRelationship",
+
"revision": 1,
+
"description": "update a relationship for page",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"subject",
+
"relation",
+
"resource"
+
],
+
"properties": {
+
"relation": {
+
"type": "string"
+
},
+
"resource": {
+
"type": "string"
+
},
+
"subject": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+1 -1
crates/jacquard-api/lexicons/app_bsky_feed_threadgate.json
···
"type": "string",
"format": "at-uri"
},
-
"maxLength": 50
+
"maxLength": 300
},
"post": {
"type": "string",
+29
crates/jacquard-api/lexicons/app_ocho_auth_atProtoCallback.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.auth.atProtoCallback",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "A handler for the Ocho AppView Oauth system",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"code",
+
"state",
+
"iss"
+
],
+
"properties": {
+
"code": {
+
"type": "string"
+
},
+
"iss": {
+
"type": "string"
+
},
+
"state": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+42
crates/jacquard-api/lexicons/app_ocho_auth_authorize.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.auth.authorize",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"description": "Login to the ATProto via OAuth",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"input",
+
"authorizeOptions"
+
],
+
"properties": {
+
"authorizeOptions": {
+
"type": "unknown"
+
},
+
"input": {
+
"type": "string"
+
}
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"url"
+
],
+
"properties": {
+
"url": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+30
crates/jacquard-api/lexicons/app_ocho_auth_defs.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.auth.defs",
+
"defs": {
+
"authCallback": {
+
"type": "object",
+
"required": [
+
"refreshJwt",
+
"accessJwt",
+
"handle",
+
"did"
+
],
+
"properties": {
+
"accessJwt": {
+
"type": "string"
+
},
+
"did": {
+
"type": "string",
+
"format": "did"
+
},
+
"handle": {
+
"type": "string"
+
},
+
"refreshJwt": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+25
crates/jacquard-api/lexicons/app_ocho_auth_githubCallback.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.auth.githubCallback",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "A handler for the Ocho AppView Oauth system",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"code",
+
"state"
+
],
+
"properties": {
+
"code": {
+
"type": "string"
+
},
+
"state": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+25
crates/jacquard-api/lexicons/app_ocho_auth_googleCallback.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.auth.googleCallback",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "A handler for the Ocho AppView Oauth system",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"code",
+
"state"
+
],
+
"properties": {
+
"code": {
+
"type": "string"
+
},
+
"state": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+24
crates/jacquard-api/lexicons/app_ocho_auth_requestEmailUpdate.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.auth.requestEmailUpdate",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"description": "Request a token in order to update email.",
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"tokenRequired"
+
],
+
"properties": {
+
"tokenRequired": {
+
"type": "boolean"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+42
crates/jacquard-api/lexicons/app_ocho_auth_updateEmail.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.auth.updateEmail",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"description": "Update an account's email.",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"email"
+
],
+
"properties": {
+
"email": {
+
"type": "string"
+
},
+
"emailAuthFactor": {
+
"type": "boolean"
+
},
+
"token": {
+
"type": "string",
+
"description": "Requires a token from com.atproto.sever.requestEmailUpdate if the account's email has been confirmed."
+
}
+
}
+
}
+
},
+
"errors": [
+
{
+
"name": "ExpiredToken"
+
},
+
{
+
"name": "InvalidToken"
+
},
+
{
+
"name": "TokenRequired"
+
}
+
]
+
}
+
}
+
}
+26
crates/jacquard-api/lexicons/app_ocho_auth_updateHandle.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.auth.updateHandle",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"description": "Updates the current account's handle. Verifies handle validity, and updates did:plc document if necessary. Implemented by PDS, and requires auth.",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"handle"
+
],
+
"properties": {
+
"handle": {
+
"type": "string",
+
"description": "The new handle.",
+
"format": "handle"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+31
crates/jacquard-api/lexicons/app_ocho_auth_whoami.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.auth.whoami",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "A handler for the Ocho AppView Oauth system",
+
"output": {
+
"description": "The session data",
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"did",
+
"handle"
+
],
+
"properties": {
+
"did": {
+
"type": "string",
+
"description": "The user's DID"
+
},
+
"handle": {
+
"type": "string",
+
"description": "The user's ID"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+35
crates/jacquard-api/lexicons/app_ocho_edu_getVerificationUrl.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.edu.getVerificationUrl",
+
"defs": {
+
"main": {
+
"type": "query",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"domain"
+
],
+
"properties": {
+
"domain": {
+
"type": "string"
+
}
+
}
+
},
+
"output": {
+
"description": "The intent data",
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"url"
+
],
+
"properties": {
+
"url": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+25
crates/jacquard-api/lexicons/app_ocho_edu_googleCallback.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.edu.googleCallback",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "A handler for the Ocho education verification Google callback",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"code",
+
"state"
+
],
+
"properties": {
+
"code": {
+
"type": "string"
+
},
+
"state": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+35
crates/jacquard-api/lexicons/app_ocho_edu_isVerified.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.edu.isVerified",
+
"defs": {
+
"main": {
+
"type": "query",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"domain"
+
],
+
"properties": {
+
"domain": {
+
"type": "string"
+
}
+
}
+
},
+
"output": {
+
"description": "Whether the user is verified on that domain",
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"verified"
+
],
+
"properties": {
+
"verified": {
+
"type": "boolean"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+35
crates/jacquard-api/lexicons/app_ocho_edu_verification.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.edu.verification",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "Record declaring a verification relationship between an account and a .edu domain. Verifications are only considered valid by an app if issued by an account the app considers trusted.",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"required": [
+
"subject",
+
"domain",
+
"createdAt"
+
],
+
"properties": {
+
"createdAt": {
+
"type": "string",
+
"description": "Date of when the verification was created.",
+
"format": "datetime"
+
},
+
"domain": {
+
"type": "string",
+
"description": "The domain the subject is verified under."
+
},
+
"subject": {
+
"type": "string",
+
"description": "DID of the subject the verification applies to.",
+
"format": "did"
+
}
+
}
+
}
+
}
+
}
+
}
+45
crates/jacquard-api/lexicons/app_ocho_message_send.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.message.send",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"description": "Sends a message to a user from an app.",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"message",
+
"did"
+
],
+
"properties": {
+
"did": {
+
"type": "string",
+
"description": "The user to send the message to."
+
},
+
"message": {
+
"type": "string",
+
"description": "The message to send to the user."
+
}
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"success"
+
],
+
"properties": {
+
"success": {
+
"type": "boolean",
+
"description": "Whether the token was successfully registered."
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+72
crates/jacquard-api/lexicons/app_ocho_payment_getStripeIntent.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.payment.getStripeIntent",
+
"defs": {
+
"main": {
+
"type": "query",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"iss",
+
"amount",
+
"id"
+
],
+
"properties": {
+
"amount": {
+
"type": "integer",
+
"description": "The amount to charge in cents",
+
"minimum": 0
+
},
+
"id": {
+
"type": "string",
+
"description": "An identifier linking the payment intent to the user / transaction / payment. Provided by the plugin."
+
},
+
"iss": {
+
"type": "string",
+
"format": "did"
+
},
+
"token": {
+
"type": "string",
+
"description": "The token for the user, optional."
+
}
+
}
+
},
+
"output": {
+
"description": "The intent data",
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"paymentIntent",
+
"ephemeralKey",
+
"customer",
+
"customerSession",
+
"publishableKey"
+
],
+
"properties": {
+
"customer": {
+
"type": "string",
+
"description": "The customer ID for the payment intent"
+
},
+
"customerSession": {
+
"type": "string",
+
"description": "The customer session ID for the payment intent"
+
},
+
"ephemeralKey": {
+
"type": "string",
+
"description": "The ephemeral key for the payment intent"
+
},
+
"paymentIntent": {
+
"type": "string",
+
"description": "The payment intent ID"
+
},
+
"publishableKey": {
+
"type": "string",
+
"description": "The publishable key for the payment intent"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+343
crates/jacquard-api/lexicons/app_ocho_plugin_defs.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.plugin.defs",
+
"defs": {
+
"adaptiveIcon": {
+
"type": "object",
+
"properties": {
+
"backgroundColor": {
+
"type": "string",
+
"description": "The background color of the adaptive icon."
+
},
+
"foregroundImage": {
+
"type": "string",
+
"description": "The URL to the foreground image of the adaptive icon."
+
},
+
"foregroundImageBlob": {
+
"type": "blob"
+
}
+
}
+
},
+
"android": {
+
"type": "object",
+
"properties": {
+
"adaptiveIcon": {
+
"type": "ref",
+
"description": "Configuration for the adaptive icon on Android.",
+
"ref": "#adaptiveIcon"
+
},
+
"edgeToEdgeEnabled": {
+
"type": "boolean",
+
"description": "Whether edge-to-edge mode is enabled for the app."
+
}
+
}
+
},
+
"androidStatusBar": {
+
"type": "object",
+
"description": "Android status bar configuration.",
+
"properties": {
+
"backgroundColor": {
+
"type": "string",
+
"description": "The background color of the Android status bar."
+
}
+
}
+
},
+
"asset": {
+
"type": "object",
+
"required": [
+
"hash",
+
"blob",
+
"type"
+
],
+
"properties": {
+
"blob": {
+
"type": "blob",
+
"description": "The blob of the asset"
+
},
+
"hash": {
+
"type": "string",
+
"description": "The hash of the asset"
+
},
+
"type": {
+
"type": "string",
+
"description": "The type of the asset"
+
},
+
"updatedAt": {
+
"type": "string",
+
"description": "The date and time when this asset was last updated. Used to reset the jetstream cache, among other things.",
+
"format": "datetime"
+
}
+
}
+
},
+
"db": {
+
"type": "object",
+
"required": [
+
"id"
+
],
+
"properties": {
+
"id": {
+
"type": "string",
+
"description": "The ID of the database."
+
}
+
}
+
},
+
"developer": {
+
"type": "object",
+
"required": [
+
"tool"
+
],
+
"properties": {
+
"tool": {
+
"type": "string",
+
"description": "The tool used for development, e.g., 'expo-cli'."
+
}
+
}
+
},
+
"expoClient": {
+
"type": "object",
+
"required": [
+
"name",
+
"slug"
+
],
+
"properties": {
+
"android": {
+
"type": "ref",
+
"description": "Android-specific configuration for the app.",
+
"ref": "#android"
+
},
+
"androidStatusBar": {
+
"type": "ref",
+
"description": "Configuration for the Android status bar.",
+
"ref": "#androidStatusBar"
+
},
+
"expirements": {
+
"type": "unknown",
+
"description": "Experimental features enabled for the app."
+
},
+
"extra": {
+
"type": "unknown",
+
"description": "Additional configuration for the app."
+
},
+
"icon": {
+
"type": "string",
+
"description": "The URL to the app icon."
+
},
+
"ios": {
+
"type": "ref",
+
"description": "ios-specific configuration for the app.",
+
"ref": "#ios"
+
},
+
"locales": {
+
"type": "unknown",
+
"description": "Localization settings for the app."
+
},
+
"name": {
+
"type": "string",
+
"description": "The name of the Expo client application."
+
},
+
"newArchEnabled": {
+
"type": "boolean",
+
"description": "Whether the new architecture is enabled for the app."
+
},
+
"orientation": {
+
"type": "string",
+
"description": "The default orientation of the app.",
+
"enum": [
+
"portrait",
+
"landscape",
+
"default"
+
]
+
},
+
"platforms": {
+
"type": "array",
+
"description": "The platforms supported by the app.",
+
"items": {
+
"type": "string",
+
"enum": [
+
"ios",
+
"android",
+
"web"
+
]
+
}
+
},
+
"plugins": {
+
"type": "unknown",
+
"description": "A list of plugins used by the app."
+
},
+
"scheme": {
+
"type": "string",
+
"description": "The custom URI scheme for deep linking."
+
},
+
"sdkVersion": {
+
"type": "string",
+
"description": "The SDK version of the Expo client."
+
},
+
"slug": {
+
"type": "string",
+
"description": "A URL-friendly identifier for the app."
+
},
+
"userInterfaceStyle": {
+
"type": "string",
+
"description": "The default user interface style."
+
},
+
"version": {
+
"type": "string",
+
"description": "The version of the app."
+
},
+
"web": {
+
"type": "ref",
+
"description": "Web-specific configuration for the app.",
+
"ref": "#web"
+
}
+
}
+
},
+
"expoGo": {
+
"type": "object",
+
"required": [
+
"developer"
+
],
+
"properties": {
+
"developer": {
+
"type": "ref",
+
"description": "Developer-specific configuration for the Expo Go app.",
+
"ref": "#developer"
+
}
+
}
+
},
+
"ios": {
+
"type": "object",
+
"properties": {
+
"supportsTablet": {
+
"type": "boolean",
+
"description": "Whether the app supports iPad."
+
}
+
}
+
},
+
"launchAsset": {
+
"type": "object",
+
"required": [
+
"key",
+
"contentType",
+
"url"
+
],
+
"properties": {
+
"contentType": {
+
"type": "string",
+
"description": "The MIME type of the asset, e.g., 'image/png'."
+
},
+
"key": {
+
"type": "string",
+
"description": "The unique key for this asset, used to reference it in the plugin."
+
},
+
"url": {
+
"type": "string",
+
"description": "The URL where the asset can be accessed.",
+
"format": "uri"
+
}
+
}
+
},
+
"manifest": {
+
"type": "object",
+
"required": [
+
"id",
+
"createdAt",
+
"runtimeVersion",
+
"launchAsset",
+
"metadata",
+
"extra"
+
],
+
"properties": {
+
"createdAt": {
+
"type": "string",
+
"description": "The date and time when this plugin manifest was created.",
+
"format": "datetime"
+
},
+
"extra": {
+
"type": "ref",
+
"description": "Additional metadata for the plugin, including Expo client and Go configurations.",
+
"ref": "app.ocho.plugin.defs#manifestExtra"
+
},
+
"id": {
+
"type": "string",
+
"description": "The unique identifier for this plugin manifest."
+
},
+
"launchAsset": {
+
"type": "ref",
+
"description": "The launch asset for the plugin (the main javascipt bundle).",
+
"ref": "app.ocho.plugin.defs#launchAsset"
+
},
+
"metadata": {
+
"type": "unknown"
+
},
+
"runtimeVersion": {
+
"type": "string",
+
"description": "The version of the Expo runtime this plugin is compatible with."
+
}
+
}
+
},
+
"manifestExtra": {
+
"type": "object",
+
"required": [
+
"expoClient",
+
"expoGo"
+
],
+
"properties": {
+
"expoClient": {
+
"type": "ref",
+
"ref": "#expoClient"
+
},
+
"expoGo": {
+
"type": "ref",
+
"ref": "#expoGo"
+
}
+
}
+
},
+
"plugin": {
+
"type": "array",
+
"items": {
+
"type": "union",
+
"refs": [
+
"#stringId",
+
"#pluginConfig"
+
]
+
}
+
},
+
"pluginConfig": {
+
"type": "unknown",
+
"description": "Configuration object for a plugin, can be any valid JSON object."
+
},
+
"stringId": {
+
"type": "string",
+
"description": "A string identifier for a plugin, used to reference it in the app."
+
},
+
"web": {
+
"type": "object",
+
"properties": {
+
"bundler": {
+
"type": "string",
+
"description": "The bundler used for the web app.",
+
"enum": [
+
"webpack",
+
"metro"
+
]
+
},
+
"favicon": {
+
"type": "string",
+
"description": "The URL to the favicon for the web app."
+
},
+
"faviconBlob": {
+
"type": "blob"
+
},
+
"output": {
+
"type": "string",
+
"description": "The output directory for the web app.",
+
"enum": [
+
"static",
+
"server",
+
"single"
+
]
+
}
+
}
+
}
+
}
+
}
+37
crates/jacquard-api/lexicons/app_ocho_plugin_getLaunchAsset.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.plugin.getLaunchAsset",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "Get the launch asset for an Ocho plugin.",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"did",
+
"platform"
+
],
+
"properties": {
+
"did": {
+
"type": "string",
+
"description": "The did of the plugin to retrieve the manifest for",
+
"format": "did"
+
},
+
"platform": {
+
"type": "string",
+
"description": "The platform for which to retrieve the plugin manifest",
+
"enum": [
+
"ios",
+
"android",
+
"web"
+
]
+
}
+
}
+
},
+
"output": {
+
"description": "The launch asset for the plugin, which is the main JavaScript bundle.",
+
"encoding": "text/javascript"
+
}
+
}
+
}
+
}
+41
crates/jacquard-api/lexicons/app_ocho_plugin_getManifest.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.plugin.getManifest",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "Get the manifest for an Ocho plugin.",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"did",
+
"platform"
+
],
+
"properties": {
+
"did": {
+
"type": "string",
+
"description": "The did of the plugin to retrieve the manifest for",
+
"format": "did"
+
},
+
"platform": {
+
"type": "string",
+
"description": "The platform for which to retrieve the plugin manifest",
+
"enum": [
+
"ios",
+
"android",
+
"web"
+
]
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "ref",
+
"description": "The plugin manifest, which includes the plugin's metadata, launch asset, and extra information. TODO: Fix these types.",
+
"ref": "app.ocho.plugin.defs#manifest"
+
}
+
}
+
}
+
}
+
}
+39
crates/jacquard-api/lexicons/app_ocho_plugin_putHostingUrl.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.plugin.putHostingUrl",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"description": "Puts the URL your app is hosted on.",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"url"
+
],
+
"properties": {
+
"url": {
+
"type": "string",
+
"description": "The expo push token"
+
}
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"success"
+
],
+
"properties": {
+
"success": {
+
"type": "boolean"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+30
crates/jacquard-api/lexicons/app_ocho_plugin_service.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.plugin.service",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "The definitions for the plugin.",
+
"key": "literal:self",
+
"record": {
+
"type": "object",
+
"required": [
+
"permissions"
+
],
+
"properties": {
+
"db": {
+
"type": "ref",
+
"ref": "app.ocho.plugin.defs#db"
+
},
+
"permissions": {
+
"type": "array",
+
"description": "Additional metadata for the plugin, including Expo client and Go configurations.",
+
"items": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+40
crates/jacquard-api/lexicons/app_ocho_push_register.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.push.register",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"description": "Registers for push notifications on a given device.",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"pushToken"
+
],
+
"properties": {
+
"pushToken": {
+
"type": "string",
+
"description": "The expo push token"
+
}
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"success"
+
],
+
"properties": {
+
"success": {
+
"type": "boolean",
+
"description": "Whether the token was successfully registered."
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+37
crates/jacquard-api/lexicons/app_ocho_server_getLaunchToken.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.server.getLaunchToken",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "Get a token for a user to launch a service.",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"aud"
+
],
+
"properties": {
+
"aud": {
+
"type": "string",
+
"description": "The DID of the service that the user will authenticate with",
+
"format": "did"
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"token"
+
],
+
"properties": {
+
"token": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+37
crates/jacquard-api/lexicons/app_ocho_server_getToken.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.server.getToken",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "Get a token for a user to authenticate with a service.",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"aud"
+
],
+
"properties": {
+
"aud": {
+
"type": "string",
+
"description": "The DID of the service that the user will authenticate with",
+
"format": "did"
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"token"
+
],
+
"properties": {
+
"token": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+47
crates/jacquard-api/lexicons/app_ocho_server_swapLaunchToken.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.server.swapLaunchToken",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "Get the auth state for a user from the launch token.",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"launchToken"
+
],
+
"properties": {
+
"launchToken": {
+
"type": "string",
+
"description": "The launch token provided by the service"
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"token"
+
],
+
"properties": {
+
"did": {
+
"type": "string",
+
"description": "The did of the user",
+
"format": "did"
+
},
+
"handle": {
+
"type": "string"
+
},
+
"name": {
+
"type": "string"
+
},
+
"token": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+43
crates/jacquard-api/lexicons/app_ocho_state_getConfig.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.state.getConfig",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "Creates a link between a service (hosted on the atproto) and its InstantDB App ID.",
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"id",
+
"adminToken",
+
"accountToken"
+
],
+
"properties": {
+
"accountToken": {
+
"type": "string",
+
"description": "The token for the InstantDB account"
+
},
+
"adminToken": {
+
"type": "string",
+
"description": "The InstantDB admin token"
+
},
+
"id": {
+
"type": "string",
+
"description": "The App ID"
+
}
+
}
+
}
+
},
+
"errors": [
+
{
+
"name": "InvalidID"
+
},
+
{
+
"name": "InvalidServiceAuth"
+
}
+
]
+
}
+
}
+
}
+25
crates/jacquard-api/lexicons/app_ocho_state_login.json
···
+
{
+
"lexicon": 1,
+
"id": "app.ocho.state.login",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "Gets the email code to login on the InstantDB website",
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"code"
+
],
+
"properties": {
+
"code": {
+
"type": "string",
+
"description": "The code used to login on the InstantDB website"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+53
crates/jacquard-api/lexicons/beauty_cybernetic_trustcow_review.json
···
+
{
+
"lexicon": 1,
+
"id": "beauty.cybernetic.trustcow.review",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A review connected to a verified transaction, can only be created by one of the transaction parties",
+
"record": {
+
"type": "object",
+
"required": [
+
"transaction",
+
"rating",
+
"createdAt"
+
],
+
"properties": {
+
"createdAt": {
+
"type": "string",
+
"description": "When the review was created",
+
"format": "datetime"
+
},
+
"description": {
+
"type": "string",
+
"description": "The detailed review text",
+
"maxLength": 1000
+
},
+
"rating": {
+
"type": "integer",
+
"description": "Rating score from 1 to 5",
+
"minimum": 1,
+
"maximum": 5
+
},
+
"reviewerRole": {
+
"type": "string",
+
"description": "Whether this review is from the service provider or consumer",
+
"knownValues": [
+
"serviceProvider",
+
"serviceConsumer"
+
]
+
},
+
"title": {
+
"type": "string",
+
"description": "The title of the review",
+
"maxLength": 100
+
},
+
"transaction": {
+
"type": "string",
+
"description": "AT URI reference to the transaction record (at://did/beauty.cybernetic.trustcow.transaction/rkey)"
+
}
+
}
+
}
+
}
+
}
+
}
+53
crates/jacquard-api/lexicons/beauty_cybernetic_trustcow_transaction.json
···
+
{
+
"lexicon": 1,
+
"id": "beauty.cybernetic.trustcow.transaction",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A verified transaction between two ATProto identities that must be stored in both parties' PDS",
+
"record": {
+
"type": "object",
+
"required": [
+
"serviceProvider",
+
"serviceConsumer",
+
"transactionId",
+
"createdAt"
+
],
+
"properties": {
+
"amount": {
+
"type": "string",
+
"description": "Transaction amount (optional, in whatever currency applies)"
+
},
+
"createdAt": {
+
"type": "string",
+
"description": "When the transaction occurred",
+
"format": "datetime"
+
},
+
"currency": {
+
"type": "string",
+
"description": "Currency code (optional, e.g. USD, EUR, BTC)",
+
"maxLength": 10
+
},
+
"description": {
+
"type": "string",
+
"description": "Description of the service or product transacted",
+
"maxLength": 500
+
},
+
"serviceConsumer": {
+
"type": "string",
+
"description": "DID of the service consumer identity"
+
},
+
"serviceProvider": {
+
"type": "string",
+
"description": "DID of the service provider identity"
+
},
+
"transactionId": {
+
"type": "string",
+
"description": "Unique identifier for this transaction, must be identical in both parties' records",
+
"maxLength": 128
+
}
+
}
+
}
+
}
+
}
+
}
+59
crates/jacquard-api/lexicons/beauty_cybernetic_trustcow_warrant.json
···
+
{
+
"lexicon": 1,
+
"id": "beauty.cybernetic.trustcow.warrant",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A warrant where one ATProto identity vouches for the trustworthiness of another identity",
+
"record": {
+
"type": "object",
+
"required": [
+
"subject",
+
"createdAt"
+
],
+
"properties": {
+
"createdAt": {
+
"type": "string",
+
"description": "When the warrant was created",
+
"format": "datetime"
+
},
+
"description": {
+
"type": "string",
+
"description": "Optional description explaining the basis for this warrant",
+
"maxLength": 300
+
},
+
"expiresAt": {
+
"type": "string",
+
"description": "Optional expiration date for this warrant",
+
"format": "datetime"
+
},
+
"subject": {
+
"type": "string",
+
"description": "DID of the identity being warranted for"
+
},
+
"trustLevel": {
+
"type": "string",
+
"description": "Level of trust being warranted",
+
"knownValues": [
+
"basic",
+
"verified",
+
"trusted",
+
"highly-trusted"
+
]
+
},
+
"warrantType": {
+
"type": "string",
+
"description": "Type of warrant being provided",
+
"knownValues": [
+
"general",
+
"business",
+
"individual",
+
"technical",
+
"financial"
+
]
+
}
+
}
+
}
+
}
+
}
+
}
+36
crates/jacquard-api/lexicons/blue_2048_defs.json
···
+
{
+
"lexicon": 1,
+
"id": "blue.2048.defs",
+
"description": "Reusable types for blue.2048 lexicons",
+
"defs": {
+
"syncStatus": {
+
"type": "object",
+
"description": "The sync status for a record used to help sync between your ATProto record and local record.",
+
"required": [
+
"hash",
+
"updatedAt",
+
"createdAt",
+
"syncedWithATRepo"
+
],
+
"properties": {
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"hash": {
+
"type": "string",
+
"description": "A XXH3 hash of the record to tell if anything has changed"
+
},
+
"syncedWithATRepo": {
+
"type": "boolean",
+
"description": "A flag to know if it has been synced with the AT repo. Used mostly client side to filter what records need syncing",
+
"default": false
+
},
+
"updatedAt": {
+
"type": "string",
+
"format": "datetime"
+
}
+
}
+
}
+
}
+
}
+52
crates/jacquard-api/lexicons/blue_2048_game.json
···
+
{
+
"lexicon": 1,
+
"id": "blue.2048.game",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A declaration of an instance of a at://2048 game",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"required": [
+
"currentScore",
+
"won",
+
"completed",
+
"seededRecording",
+
"syncStatus",
+
"createdAt"
+
],
+
"properties": {
+
"completed": {
+
"type": "boolean",
+
"description": "The player no longer has any moves left",
+
"default": false
+
},
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"currentScore": {
+
"type": "integer",
+
"description": "The game's current score",
+
"default": 0
+
},
+
"seededRecording": {
+
"type": "string",
+
"description": "This is the recording of the game. Like chess notation, but for 2048"
+
},
+
"syncStatus": {
+
"type": "ref",
+
"description": "The sync status of this record with the users AT Protocol repo.",
+
"ref": "blue.2048.defs#syncStatus"
+
},
+
"won": {
+
"type": "boolean",
+
"description": "The player has found a 2048 tile (they have won)",
+
"default": false
+
}
+
}
+
}
+
}
+
}
+
}
+48
crates/jacquard-api/lexicons/blue_2048_key_defs.json
···
+
{
+
"lexicon": 1,
+
"id": "blue.2048.key.defs",
+
"description": "Reusable types for an at://2048 authority to provide public did:keys and signatures for verification",
+
"defs": {
+
"key": {
+
"type": "object",
+
"description": "A record that holds a did:key used to verify records. Use the collection to know the type of verification. Example blue.2048.key.game is for blue.2048.game records",
+
"required": [
+
"key",
+
"createdAt"
+
],
+
"properties": {
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"key": {
+
"type": "string",
+
"description": "A did:key used to verify records came from an at://2048 authority"
+
}
+
}
+
},
+
"signatureRef": {
+
"type": "object",
+
"description": "a signature for an at://2048 record meaning it has been verified by a service. Most likely @2048.blue",
+
"required": [
+
"atURI",
+
"signature",
+
"createdAt"
+
],
+
"properties": {
+
"atURI": {
+
"type": "string",
+
"description": "The at://uri for the public did:key to verify this record. This also counts as the authority of the verification (example @2048.blue). As well as the type of verification by the collection name (blue.2048.key.game)."
+
},
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"signature": {
+
"type": "string",
+
"description": "The public verifiable signature of the record. Serialization of the records value minus the signature field"
+
}
+
}
+
}
+
}
+
}
+29
crates/jacquard-api/lexicons/blue_2048_key_game.json
···
+
{
+
"lexicon": 1,
+
"id": "blue.2048.key.game",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A record that holds a did:key for verifying a players game. This is intended to be written at a verification authorities repo",
+
"key": "literal:self",
+
"record": {
+
"type": "object",
+
"required": [
+
"key",
+
"createdAt"
+
],
+
"properties": {
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"key": {
+
"type": "ref",
+
"description": "A did:key that is used to verify an at://2048 authority has verified this game to a certain degree",
+
"ref": "blue.2048.key.defs#key"
+
}
+
}
+
}
+
}
+
}
+
}
+29
crates/jacquard-api/lexicons/blue_2048_key_player_stats.json
···
+
{
+
"lexicon": 1,
+
"id": "blue.2048.key.player.stats",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A record that holds a did:key for verifying a players stats. This is intended to be written at a verification authorities repo",
+
"key": "literal:self",
+
"record": {
+
"type": "object",
+
"required": [
+
"key",
+
"createdAt"
+
],
+
"properties": {
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"key": {
+
"type": "ref",
+
"description": "A did:key that is used to verify an at://2048 authority has verified this players stats to a certain degree",
+
"ref": "blue.2048.key.defs#key"
+
}
+
}
+
}
+
}
+
}
+
}
+35
crates/jacquard-api/lexicons/blue_2048_player_profile.json
···
+
{
+
"lexicon": 1,
+
"id": "blue.2048.player.profile",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A declaration of a at://2048 player's profile",
+
"key": "literal:self",
+
"record": {
+
"type": "object",
+
"required": [
+
"soloPlay",
+
"syncStatus",
+
"createdAt"
+
],
+
"properties": {
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"soloPlay": {
+
"type": "boolean",
+
"description": "Does not want to show up anywhere. Keep stats to your PDS.",
+
"default": false
+
},
+
"syncStatus": {
+
"type": "ref",
+
"description": "The sync status of this record with the users AT Protocol repo.",
+
"ref": "blue.2048.defs#syncStatus"
+
}
+
}
+
}
+
}
+
}
+
}
+71
crates/jacquard-api/lexicons/blue_2048_player_stats.json
···
+
{
+
"lexicon": 1,
+
"id": "blue.2048.player.stats",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A declaration of a at://2048 player's stats over the course of their playtime",
+
"key": "literal:self",
+
"record": {
+
"type": "object",
+
"required": [
+
"highestScore",
+
"gamesPlayed",
+
"totalScore",
+
"highestNumberBlock",
+
"timesTwentyFortyEightBeenFound",
+
"leastMovesToFindTwentyFortyEight",
+
"averageScore",
+
"syncStatus",
+
"createdAt"
+
],
+
"properties": {
+
"averageScore": {
+
"type": "integer",
+
"description": "Average score across all games",
+
"default": 0
+
},
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"gamesPlayed": {
+
"type": "integer",
+
"description": "Total numbers of games the user has played",
+
"default": 0
+
},
+
"highestNumberBlock": {
+
"type": "integer",
+
"description": "The highest number block the player has fround. example 128, 256, etc",
+
"default": 0
+
},
+
"highestScore": {
+
"type": "integer",
+
"description": "The highest score the user has gotten in a game",
+
"default": 0
+
},
+
"leastMovesToFindTwentyFortyEight": {
+
"type": "integer",
+
"description": "The smallest number of moves to get the 2048 block",
+
"default": 0
+
},
+
"syncStatus": {
+
"type": "ref",
+
"description": "The sync status of this record with the users AT Protocol repo.",
+
"ref": "blue.2048.defs#syncStatus"
+
},
+
"timesTwentyFortyEightBeenFound": {
+
"type": "integer",
+
"description": "Times the 2048 block has been found also count as wins",
+
"default": 0
+
},
+
"totalScore": {
+
"type": "integer",
+
"description": "Total score across all games",
+
"default": 0
+
}
+
}
+
}
+
}
+
}
+
}
+43
crates/jacquard-api/lexicons/blue_2048_verification_defs.json
···
+
{
+
"lexicon": 1,
+
"id": "blue.2048.verification.defs",
+
"description": "Reusable types for an at://2048 authority to prove that it has verified a record ",
+
"defs": {
+
"verificationRef": {
+
"type": "object",
+
"description": "Holds the signature for another record showing it has verified it to the best of it's ability and it should be trusted if the signatures match.",
+
"required": [
+
"keyRef",
+
"recordRef",
+
"subject",
+
"signature",
+
"createdAt"
+
],
+
"properties": {
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"keyRef": {
+
"type": "string",
+
"description": "The at://uri for the public did:key to verify the remote record. This also counts as the authority of the verification (example @2048.blue). As well as the type of verification by the collection name (blue.2048.key.game).",
+
"format": "at-uri"
+
},
+
"recordRef": {
+
"type": "string",
+
"description": "The at://uri for the record that is being verified.",
+
"format": "at-uri"
+
},
+
"signature": {
+
"type": "string",
+
"description": "The public verifiable signature of the record. Serialization of the records valued"
+
},
+
"subject": {
+
"type": "string",
+
"description": "DID of the subject the verification applies to.",
+
"format": "did"
+
}
+
}
+
}
+
}
+
}
+25
crates/jacquard-api/lexicons/blue_2048_verification_game.json
···
+
{
+
"lexicon": 1,
+
"id": "blue.2048.verification.game",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A record that holds a verification of a game record saying the owner of the repo has verified that it is a valid game played.",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"properties": {
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"verifiedRef": {
+
"type": "ref",
+
"description": "This is the record that holds the publicly verifiable signature of a game record",
+
"ref": "blue.2048.verification.defs#verificationRef"
+
}
+
}
+
}
+
}
+
}
+
}
+25
crates/jacquard-api/lexicons/blue_2048_verification_stats.json
···
+
{
+
"lexicon": 1,
+
"id": "blue.2048.verification.stats",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A record that holds a verification of a stats record saying the owner of the repo has verified that it is a valid and most likely not tampered with.",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"properties": {
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"verifiedRef": {
+
"type": "ref",
+
"description": "This is the record that holds the publicly verifiable signature of a stats record",
+
"ref": "blue.2048.verification.defs#verificationRef"
+
}
+
}
+
}
+
}
+
}
+
}
+24
crates/jacquard-api/lexicons/blue_atplane_favClient.json
···
+
{
+
"lexicon": 1,
+
"id": "blue.atplane.favClient",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A declaration of a favorite client.",
+
"key": "literal:self",
+
"record": {
+
"type": "object",
+
"required": [
+
"favClient"
+
],
+
"properties": {
+
"favClient": {
+
"type": "string",
+
"description": "Set to your favorite client.",
+
"maxLength": 32
+
}
+
}
+
}
+
}
+
}
+
}
-93
crates/jacquard-api/lexicons/blue_rito_feed_bookmark.json
···
-
{
-
"lexicon": 1,
-
"id": "blue.rito.feed.bookmark",
-
"defs": {
-
"locale": {
-
"type": "object",
-
"required": [
-
"lang",
-
"title"
-
],
-
"properties": {
-
"comment": {
-
"type": "string",
-
"description": "URI's comment. It can use GitHub Flavored Markdown.",
-
"maxLength": 100000,
-
"maxGraphemes": 10000
-
},
-
"lang": {
-
"type": "string",
-
"description": "Comments Language",
-
"maxLength": 6,
-
"enum": [
-
"ja",
-
"en"
-
]
-
},
-
"title": {
-
"type": "string",
-
"description": "URI's title",
-
"maxLength": 500,
-
"maxGraphemes": 50
-
}
-
}
-
},
-
"main": {
-
"type": "record",
-
"description": "Records a bookmark.",
-
"key": "tid",
-
"record": {
-
"type": "object",
-
"required": [
-
"comments",
-
"subject",
-
"createdAt"
-
],
-
"properties": {
-
"comments": {
-
"type": "array",
-
"description": "Title and comment in different languages.",
-
"items": {
-
"type": "ref",
-
"ref": "blue.rito.feed.bookmark#locale"
-
},
-
"minLength": 1
-
},
-
"createdAt": {
-
"type": "string",
-
"format": "datetime"
-
},
-
"ogpDescription": {
-
"type": "string",
-
"description": "OGP Description"
-
},
-
"ogpImage": {
-
"type": "string",
-
"description": "OGP Image Uri",
-
"format": "uri"
-
},
-
"ogpTitle": {
-
"type": "string",
-
"description": "OGP Title"
-
},
-
"subject": {
-
"type": "string",
-
"format": "uri"
-
},
-
"tags": {
-
"type": "array",
-
"description": "Tags describing the uri's description (max 10 tags, 25 charactors)",
-
"items": {
-
"type": "string",
-
"minLength": 1,
-
"maxLength": 250,
-
"minGraphemes": 1,
-
"maxGraphemes": 25
-
},
-
"maxLength": 10
-
}
-
}
-
}
-
}
-
}
-
}
+4 -5
crates/jacquard-api/lexicons/blue_rito_feed_like.json crates/jacquard-api/lexicons/social_grain_favorite.json
···
{
"lexicon": 1,
-
"id": "blue.rito.feed.like",
+
"id": "social.grain.favorite",
"defs": {
"main": {
"type": "record",
-
"description": "Records a like.",
"key": "tid",
"record": {
"type": "object",
"required": [
-
"subject",
-
"createdAt"
+
"createdAt",
+
"subject"
],
"properties": {
"createdAt": {
···
},
"subject": {
"type": "string",
-
"format": "uri"
+
"format": "at-uri"
}
}
}
-112
crates/jacquard-api/lexicons/blue_rito_service_getSchema.json
···
-
{
-
"lexicon": 1,
-
"id": "blue.rito.service.getSchema",
-
"defs": {
-
"langs": {
-
"type": "object",
-
"required": [
-
"lang",
-
"title",
-
"moderation"
-
],
-
"properties": {
-
"comment": {
-
"type": "string"
-
},
-
"lang": {
-
"type": "string"
-
},
-
"moderation": {
-
"type": "array",
-
"items": {
-
"type": "string"
-
}
-
},
-
"title": {
-
"type": "string"
-
}
-
}
-
},
-
"main": {
-
"type": "procedure",
-
"description": "Get Bookmark by NSID, including schema, OGP, tags, moderation, and comments.",
-
"input": {
-
"encoding": "application/json",
-
"schema": {
-
"type": "object",
-
"required": [
-
"nsid"
-
],
-
"properties": {
-
"nsid": {
-
"type": "string"
-
}
-
}
-
}
-
},
-
"output": {
-
"description": "Returns the Bookmark data for the given NSID.",
-
"encoding": "application/json",
-
"schema": {
-
"type": "object",
-
"required": [
-
"nsid",
-
"schema",
-
"moderations",
-
"comments",
-
"verified"
-
],
-
"properties": {
-
"comments": {
-
"type": "array",
-
"description": "Comments with titles, content, and moderation in multiple languages.",
-
"items": {
-
"type": "ref",
-
"ref": "blue.rito.service.getSchema#langs"
-
}
-
},
-
"moderations": {
-
"type": "array",
-
"description": "Moderation result for OGP title and description",
-
"items": {
-
"type": "string"
-
}
-
},
-
"nsid": {
-
"type": "string",
-
"description": "Namespace ID of the service or application (e.g., 'uk.skyblur.post')."
-
},
-
"ogpDescription": {
-
"type": "string",
-
"description": "The Open Graph Protocol (OGP) description for the bookmark."
-
},
-
"ogpImage": {
-
"type": "string",
-
"description": "The Open Graph Protocol (OGP) image URL for the bookmark.",
-
"format": "uri"
-
},
-
"ogpTitle": {
-
"type": "string",
-
"description": "The Open Graph Protocol (OGP) title for the bookmark."
-
},
-
"schema": {
-
"type": "string",
-
"description": "The schema URL pattern associated with this NSID (e.g., 'https://skyblur.uk/post/{did}/{rkey}')."
-
},
-
"tags": {
-
"type": "array",
-
"description": "This field contains tags. If registered by the owner, it may include 'Verified'.",
-
"items": {
-
"type": "string"
-
}
-
},
-
"verified": {
-
"type": "boolean",
-
"description": "If this comment registed by owner, this field should be true."
-
}
-
}
-
}
-
}
-
}
-
}
-
}
-24
crates/jacquard-api/lexicons/blue_rito_service_schema.json
···
-
{
-
"lexicon": 1,
-
"id": "blue.rito.service.schema",
-
"defs": {
-
"main": {
-
"type": "record",
-
"description": "This record defines the schema associated with a specific NSID.",
-
"key": "nsid",
-
"record": {
-
"type": "object",
-
"required": [
-
"schema"
-
],
-
"properties": {
-
"schema": {
-
"type": "string",
-
"description": "The AppView URL for the NSID. For example, if the NSID is uk.skyblur.post, the URL should be https://skyblur.uk/post/{did}/{rkey}",
-
"format": "uri"
-
}
-
}
-
}
-
}
-
}
-
}
+93
crates/jacquard-api/lexicons/club_stellz_evm_addressControl.json
···
+
{
+
"lexicon": 1,
+
"id": "club.stellz.evm.addressControl",
+
"defs": {
+
"main": {
+
"type": "object",
+
"required": [
+
"address",
+
"signature",
+
"siwe"
+
],
+
"properties": {
+
"address": {
+
"type": "bytes",
+
"description": "Ethereum address as bytes (20 bytes)"
+
},
+
"alsoOn": {
+
"type": "array",
+
"description": "List of all Chain IDs (besides the one in the sign-in message, though you can include it) that the holder of this address is also active on & accepts tokens thru.",
+
"items": {
+
"type": "integer",
+
"description": "Chain ID of a Ethereum VM network"
+
}
+
},
+
"signature": {
+
"type": "bytes",
+
"description": "Sign in With Ethereum message signature as bytes"
+
},
+
"siwe": {
+
"type": "ref",
+
"ref": "#siweMessage"
+
}
+
}
+
},
+
"siweMessage": {
+
"type": "object",
+
"required": [
+
"domain",
+
"address",
+
"statement",
+
"uri",
+
"version",
+
"chainId",
+
"nonce",
+
"issuedAt"
+
],
+
"properties": {
+
"address": {
+
"type": "string",
+
"description": "Ethereum address in 0x-prefixed, checksummed hex format",
+
"minLength": 42,
+
"maxLength": 42
+
},
+
"chainId": {
+
"type": "integer",
+
"description": "Chain ID of the Ethereum VM network the address is on"
+
},
+
"domain": {
+
"type": "string",
+
"description": "Domain of the application requesting the signature, e.g. 'wallet-link.stellz.club'"
+
},
+
"issuedAt": {
+
"type": "string",
+
"description": "Timestamp when the message was signed",
+
"format": "datetime"
+
},
+
"nonce": {
+
"type": "string",
+
"description": "Random nonce the message was signed with",
+
"minLength": 8,
+
"maxLength": 256
+
},
+
"statement": {
+
"type": "string",
+
"description": "The message shown to the user in their wallet before signing, which MUST be of the format 'Prove control of ${address} to link it to ${did}', where ${address} is the linked Ethereum address in 0x-prefixed, checksummed hex format, and ${did} is the DID of the user.",
+
"minLength": 78
+
},
+
"uri": {
+
"type": "string",
+
"description": "URI of the application requesting the signature, e.g. 'https://wallet-link.stellz.club'",
+
"format": "uri"
+
},
+
"version": {
+
"type": "string",
+
"description": "Sign in With Ethereum message version",
+
"enum": [
+
"1"
+
]
+
}
+
}
+
}
+
}
+
}
+59
crates/jacquard-api/lexicons/com_crabdance_nandi_post.json
···
+
{
+
"lexicon": 1,
+
"id": "com.crabdance.nandi.post",
+
"defs": {
+
"main": {
+
"type": "record",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"required": [
+
"title",
+
"content",
+
"createdAt"
+
],
+
"properties": {
+
"content": {
+
"type": "string",
+
"description": "The main content of the blog post in markdown",
+
"minLength": 1,
+
"maxLength": 10000
+
},
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"published": {
+
"type": "boolean",
+
"description": "Whether the post is published or draft",
+
"default": false
+
},
+
"summary": {
+
"type": "string",
+
"description": "Optional summary/excerpt of the post",
+
"maxLength": 500
+
},
+
"tags": {
+
"type": "array",
+
"description": "Tags for categorizing the post",
+
"items": {
+
"type": "string",
+
"maxLength": 50
+
},
+
"maxLength": 10
+
},
+
"title": {
+
"type": "string",
+
"description": "The title of the blog post",
+
"minLength": 1,
+
"maxLength": 200
+
},
+
"updatedAt": {
+
"type": "string",
+
"format": "datetime"
+
}
+
}
+
}
+
}
+
}
+
}
-36
crates/jacquard-api/lexicons/com_welistskyblue_list_collection.json
···
-
{
-
"lexicon": 1,
-
"id": "com.welistskyblue.list.collection",
-
"description": "A record that holds a collection of active task AT-URIs for a user.",
-
"defs": {
-
"main": {
-
"type": "record",
-
"key": "self",
-
"record": {
-
"type": "object",
-
"required": [
-
"uris",
-
"createdAt"
-
],
-
"properties": {
-
"createdAt": {
-
"type": "string",
-
"format": "datetime"
-
},
-
"updatedAt": {
-
"type": "string",
-
"format": "datetime"
-
},
-
"uris": {
-
"type": "array",
-
"description": "List of AT-URIs controlled by the user.",
-
"items": {
-
"type": "string",
-
"format": "at-uri"
-
}
-
}
-
}
-
}
-
}
-
}
-
}
-44
crates/jacquard-api/lexicons/com_welistskyblue_list_comment.json
···
-
{
-
"lexicon": 1,
-
"id": "com.welistskyblue.list.comment",
-
"description": "A comment attached to a task item.",
-
"defs": {
-
"main": {
-
"type": "record",
-
"key": "tid",
-
"record": {
-
"type": "object",
-
"required": [
-
"item",
-
"text",
-
"createdAt"
-
],
-
"properties": {
-
"createdAt": {
-
"type": "string",
-
"format": "datetime"
-
},
-
"deletedAt": {
-
"type": "string",
-
"format": "datetime"
-
},
-
"item": {
-
"type": "ref",
-
"description": "Strong reference to the task item being commented on.",
-
"ref": "strong"
-
},
-
"text": {
-
"type": "string",
-
"description": "Comment text.",
-
"maxLength": 640,
-
"maxGraphemes": 64
-
},
-
"updatedAt": {
-
"type": "string",
-
"format": "datetime"
-
}
-
}
-
}
-
}
-
}
-
}
-28
crates/jacquard-api/lexicons/com_welistskyblue_list_congrats.json
···
-
{
-
"lexicon": 1,
-
"id": "com.welistskyblue.list.congrats",
-
"defs": {
-
"main": {
-
"type": "record",
-
"description": "Record declaring a 'congrats' of a completed com.welistskyblue.list.item record.",
-
"key": "tid",
-
"record": {
-
"type": "object",
-
"required": [
-
"subject",
-
"createdAt"
-
],
-
"properties": {
-
"createdAt": {
-
"type": "string",
-
"format": "datetime"
-
},
-
"subject": {
-
"type": "ref",
-
"ref": "com.atproto.repo.strongRef"
-
}
-
}
-
}
-
}
-
}
-
}
-48
crates/jacquard-api/lexicons/com_welistskyblue_list_item.json
···
-
{
-
"lexicon": 1,
-
"id": "com.welistskyblue.list.item",
-
"description": "A task record with name, status, and timestamps.",
-
"defs": {
-
"main": {
-
"type": "record",
-
"key": "tid",
-
"record": {
-
"type": "object",
-
"required": [
-
"name",
-
"status",
-
"createdAt"
-
],
-
"properties": {
-
"createdAt": {
-
"type": "string",
-
"format": "datetime"
-
},
-
"deletedAt": {
-
"type": "string",
-
"format": "datetime"
-
},
-
"name": {
-
"type": "string",
-
"description": "Task name/title.",
-
"maxLength": 640,
-
"maxGraphemes": 64
-
},
-
"status": {
-
"type": "string",
-
"description": "Task status.",
-
"default": "ongoing",
-
"enum": [
-
"ongoing",
-
"done"
-
]
-
},
-
"updatedAt": {
-
"type": "string",
-
"format": "datetime"
-
}
-
}
-
}
-
}
-
}
-
}
-28
crates/jacquard-api/lexicons/com_welistskyblue_list_like.json
···
-
{
-
"lexicon": 1,
-
"id": "com.welistskyblue.list.like",
-
"defs": {
-
"main": {
-
"type": "record",
-
"description": "Record declaring a 'like' of a com.welistskyblue.list.item record.",
-
"key": "tid",
-
"record": {
-
"type": "object",
-
"required": [
-
"subject",
-
"createdAt"
-
],
-
"properties": {
-
"createdAt": {
-
"type": "string",
-
"format": "datetime"
-
},
-
"subject": {
-
"type": "ref",
-
"ref": "com.atproto.repo.strongRef"
-
}
-
}
-
}
-
}
-
}
-
}
+31
crates/jacquard-api/lexicons/dev_baileytownsend_health_calories.json
···
+
{
+
"lexicon": 1,
+
"id": "dev.baileytownsend.health.calories",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A record of daily intake and burned calories.",
+
"key": "any",
+
"record": {
+
"type": "object",
+
"required": [
+
"intake",
+
"burned",
+
"createdAt"
+
],
+
"properties": {
+
"burned": {
+
"type": "integer"
+
},
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"intake": {
+
"type": "integer"
+
}
+
}
+
}
+
}
+
}
+
}
+53
crates/jacquard-api/lexicons/dev_baileytownsend_health_rings.json
···
+
{
+
"lexicon": 1,
+
"id": "dev.baileytownsend.health.rings",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A record of daily activity rings (Apple Fitness), including move, exercise, and stand goals.",
+
"key": "any",
+
"record": {
+
"type": "object",
+
"required": [
+
"move",
+
"moveGoal",
+
"exercise",
+
"exerciseGoal",
+
"standHours",
+
"standGoal",
+
"createdAt"
+
],
+
"properties": {
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"exercise": {
+
"type": "integer",
+
"description": "The total minutes of exercise completed."
+
},
+
"exerciseGoal": {
+
"type": "integer",
+
"description": "The daily exercise goal in minutes."
+
},
+
"move": {
+
"type": "integer",
+
"description": "The total active calories burned for the day."
+
},
+
"moveGoal": {
+
"type": "integer",
+
"description": "The daily move goal in calories."
+
},
+
"standGoal": {
+
"type": "integer",
+
"description": "The daily stand goal in hours."
+
},
+
"standHours": {
+
"type": "integer",
+
"description": "The number of hours the user stood up and moved around."
+
}
+
}
+
}
+
}
+
}
+
}
+26
crates/jacquard-api/lexicons/dev_baileytownsend_health_steps.json
···
+
{
+
"lexicon": 1,
+
"id": "dev.baileytownsend.health.steps",
+
"defs": {
+
"main": {
+
"type": "record",
+
"key": "any",
+
"record": {
+
"type": "object",
+
"required": [
+
"steps",
+
"createdAt"
+
],
+
"properties": {
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"steps": {
+
"type": "integer"
+
}
+
}
+
}
+
}
+
}
+
}
+51
crates/jacquard-api/lexicons/dev_baileytownsend_health_workout.json
···
+
{
+
"lexicon": 1,
+
"id": "dev.baileytownsend.health.workout",
+
"defs": {
+
"main": {
+
"type": "record",
+
"key": "any",
+
"record": {
+
"type": "object",
+
"required": [
+
"activity",
+
"caloriesBurned",
+
"duration",
+
"startTime",
+
"endTime",
+
"createdAt"
+
],
+
"properties": {
+
"activity": {
+
"type": "string",
+
"description": "Type of activity. Walking, running, weights, etc."
+
},
+
"caloriesBurned": {
+
"type": "integer",
+
"description": "Active calories burned during the workout."
+
},
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"distance": {
+
"type": "string",
+
"description": "Distance covered during the workout (optional)."
+
},
+
"duration": {
+
"type": "string",
+
"description": "How long the workout lasted in minutes."
+
},
+
"endTime": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"startTime": {
+
"type": "string",
+
"format": "datetime"
+
}
+
}
+
}
+
}
+
}
+
}
+63
crates/jacquard-api/lexicons/dev_fudgeu_experimental_atforumv1_feed_post.json
···
+
{
+
"lexicon": 1,
+
"id": "dev.fudgeu.experimental.atforumv1.feed.post",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "An initial post that starts a discussion",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"required": [
+
"title",
+
"content",
+
"createdAt",
+
"category",
+
"forum",
+
"tags"
+
],
+
"properties": {
+
"category": {
+
"type": "string",
+
"format": "at-uri"
+
},
+
"content": {
+
"type": "string",
+
"minLength": 1,
+
"maxLength": 10000
+
},
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"forum": {
+
"type": "string",
+
"format": "at-identifier"
+
},
+
"solution": {
+
"type": "string",
+
"format": "at-uri"
+
},
+
"tags": {
+
"type": "array",
+
"items": {
+
"type": "string",
+
"minLength": 1,
+
"maxLength": 25
+
},
+
"maxLength": 20
+
},
+
"title": {
+
"type": "string",
+
"minLength": 1,
+
"maxLength": 100
+
},
+
"updatedAt": {
+
"type": "string",
+
"format": "datetime"
+
}
+
}
+
}
+
}
+
}
+
}
+40
crates/jacquard-api/lexicons/dev_fudgeu_experimental_atforumv1_forum_announcement.json
···
+
{
+
"lexicon": 1,
+
"id": "dev.fudgeu.experimental.atforumv1.forum.announcement",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A forum-wide announcement",
+
"key": "any",
+
"record": {
+
"type": "object",
+
"required": [
+
"title",
+
"body",
+
"createdAt",
+
"expiresAt"
+
],
+
"properties": {
+
"body": {
+
"type": "string",
+
"minLength": 1,
+
"maxLength": 10000
+
},
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"expiresAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"title": {
+
"type": "string",
+
"minLength": 1,
+
"maxLength": 100
+
}
+
}
+
}
+
}
+
}
+
}
+41
crates/jacquard-api/lexicons/dev_fudgeu_experimental_atforumv1_forum_category.json
···
+
{
+
"lexicon": 1,
+
"id": "dev.fudgeu.experimental.atforumv1.forum.category",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A method of grouping posts into a single 'category'",
+
"key": "any",
+
"record": {
+
"type": "object",
+
"required": [
+
"name",
+
"group",
+
"categoryType"
+
],
+
"properties": {
+
"categoryType": {
+
"type": "string",
+
"enum": [
+
"discussion",
+
"question"
+
]
+
},
+
"description": {
+
"type": "string",
+
"maxLength": 300
+
},
+
"group": {
+
"type": "string",
+
"format": "at-uri"
+
},
+
"name": {
+
"type": "string",
+
"minLength": 1,
+
"maxLength": 100
+
}
+
}
+
}
+
}
+
}
+
}
+28
crates/jacquard-api/lexicons/dev_fudgeu_experimental_atforumv1_forum_group.json
···
+
{
+
"lexicon": 1,
+
"id": "dev.fudgeu.experimental.atforumv1.forum.group",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "Defines a group of categories",
+
"key": "any",
+
"record": {
+
"type": "object",
+
"required": [
+
"name"
+
],
+
"properties": {
+
"description": {
+
"type": "string",
+
"maxLength": 300
+
},
+
"name": {
+
"type": "string",
+
"minLength": 1,
+
"maxLength": 100
+
}
+
}
+
}
+
}
+
}
+
}
+32
crates/jacquard-api/lexicons/dev_fudgeu_experimental_atforumv1_forum_identity.json
···
+
{
+
"lexicon": 1,
+
"id": "dev.fudgeu.experimental.atforumv1.forum.identity",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "Defines what the forum is - name, description, etc.",
+
"key": "literal:self",
+
"record": {
+
"type": "object",
+
"required": [
+
"name"
+
],
+
"properties": {
+
"accent": {
+
"type": "string",
+
"minLength": 7,
+
"maxLength": 7
+
},
+
"description": {
+
"type": "string",
+
"maxLength": 300
+
},
+
"name": {
+
"type": "string",
+
"maxLength": 100
+
}
+
}
+
}
+
}
+
}
+
}
-72
crates/jacquard-api/lexicons/dev_ocbwoy3_dotsyncd_config.json
···
-
{
-
"lexicon": 1,
-
"id": "dev.ocbwoy3.dotsyncd.config",
-
"description": "This record defines a configuration used by dotsyncd",
-
"defs": {
-
"config": {
-
"type": "object",
-
"description": "Describes custom configuration for your rice. You must implement your own settings JSON schema.",
-
"required": [],
-
"properties": {}
-
},
-
"dependencies": {
-
"type": "array",
-
"description": "All dependencies for the configuration",
-
"items": {
-
"type": "union",
-
"refs": [
-
"dev.ocbwoy3.dotsyncd.refsDependency#hyprland",
-
"dev.ocbwoy3.dotsyncd.refsDependency#tangledRepo",
-
"dev.ocbwoy3.dotsyncd.refsDependency#distro"
-
]
-
}
-
},
-
"main": {
-
"type": "record",
-
"key": "any",
-
"record": {
-
"type": "object",
-
"required": [
-
"name",
-
"config",
-
"createdAt",
-
"updatedAt",
-
"dependencies"
-
],
-
"properties": {
-
"config": {
-
"type": "ref",
-
"description": "The configuration details",
-
"ref": "#config"
-
},
-
"createdAt": {
-
"type": "string",
-
"description": "The date and time when the config was created",
-
"format": "datetime"
-
},
-
"dependencies": {
-
"type": "ref",
-
"description": "Dependencies required for this config",
-
"ref": "#dependencies"
-
},
-
"description": {
-
"type": "string",
-
"description": "The description for config",
-
"maxLength": 2000
-
},
-
"name": {
-
"type": "string",
-
"description": "The name of the config (e.g. Main)",
-
"minLength": 1,
-
"maxLength": 100
-
},
-
"updatedAt": {
-
"type": "string",
-
"description": "The date and time when the config was last updated",
-
"format": "datetime"
-
}
-
}
-
}
-
}
-
}
-
}
-134
crates/jacquard-api/lexicons/dev_ocbwoy3_dotsyncd_device.json
···
-
{
-
"lexicon": 1,
-
"id": "dev.ocbwoy3.dotsyncd.device",
-
"description": "This record defines a device connected to dotsyncd",
-
"defs": {
-
"distro": {
-
"type": "object",
-
"required": [
-
"name",
-
"id"
-
],
-
"properties": {
-
"id": {
-
"type": "string",
-
"description": "The ID of the Linux distribution (e.g. nixos, gentoo)",
-
"minLength": 1,
-
"maxLength": 50
-
},
-
"name": {
-
"type": "string",
-
"description": "The name of the Linux distribution (e.g. NixOS, Gentoo Linux)",
-
"minLength": 1,
-
"maxLength": 50
-
}
-
}
-
},
-
"main": {
-
"type": "record",
-
"key": "any",
-
"record": {
-
"type": "object",
-
"required": [
-
"name",
-
"rig",
-
"setup",
-
"createdAt",
-
"distro",
-
"configInUse"
-
],
-
"properties": {
-
"configInUse": {
-
"type": "string",
-
"description": "The config in use on the device",
-
"format": "uri",
-
"minLength": 1,
-
"maxLength": 100
-
},
-
"createdAt": {
-
"type": "string",
-
"description": "The date and time when the device was added",
-
"format": "datetime"
-
},
-
"distro": {
-
"type": "ref",
-
"description": "The distro specifications of the device",
-
"ref": "#distro"
-
},
-
"name": {
-
"type": "string",
-
"description": "The name of the device (e.g. Gaming PC, Laptop)",
-
"minLength": 1,
-
"maxLength": 100
-
},
-
"rig": {
-
"type": "ref",
-
"description": "The hardware specifications of the device",
-
"ref": "#rig"
-
},
-
"setup": {
-
"type": "ref",
-
"description": "The software setup of the device",
-
"ref": "#setup"
-
}
-
}
-
}
-
},
-
"rig": {
-
"type": "object",
-
"required": [
-
"cpu",
-
"gpu",
-
"ram",
-
"disk",
-
"diskType"
-
],
-
"properties": {
-
"cpu": {
-
"type": "string",
-
"description": "The CPU model of the device",
-
"minLength": 1,
-
"maxLength": 100
-
},
-
"disk": {
-
"type": "string",
-
"description": "The amount of space in / (in numBlocks*blockSize, e.g. 32767*1024)",
-
"minLength": 1,
-
"maxLength": 30
-
},
-
"diskType": {
-
"type": "string",
-
"description": "The type of filesystem on / (e.g. ext4, btrfs)",
-
"minLength": 1,
-
"maxLength": 20
-
},
-
"gpu": {
-
"type": "string",
-
"description": "The GPU model of the device",
-
"minLength": 1,
-
"maxLength": 100
-
},
-
"ram": {
-
"type": "string",
-
"description": "The amount of RAM in the device (e.g. 16GB)",
-
"minLength": 1,
-
"maxLength": 20
-
}
-
}
-
},
-
"setup": {
-
"type": "object",
-
"required": [
-
"wm"
-
],
-
"properties": {
-
"wm": {
-
"type": "string",
-
"description": "The WM/DE used on the device derived from $XDG_CURRENT_DESKTOP (e.g. Hyprland)",
-
"minLength": 1,
-
"maxLength": 50
-
}
-
}
-
}
-
}
-
}
-57
crates/jacquard-api/lexicons/dev_ocbwoy3_dotsyncd_refsDependency.json
···
-
{
-
"lexicon": 1,
-
"id": "dev.ocbwoy3.dotsyncd.refsDependency",
-
"description": "This defines the various dependency types used in dotsyncd",
-
"defs": {
-
"distro": {
-
"type": "object",
-
"description": "A specific Linux distribution",
-
"required": [
-
"id"
-
],
-
"properties": {
-
"id": {
-
"type": "string",
-
"description": "The distro ID identified in /etc/os-release, such as nixos, cachyos, etc."
-
}
-
}
-
},
-
"hyprland": {
-
"type": "object",
-
"description": "A specific Hyprland version",
-
"required": [
-
"version"
-
],
-
"properties": {
-
"version": {
-
"type": "string",
-
"description": "Must be semver"
-
}
-
}
-
},
-
"tangledRepo": {
-
"type": "object",
-
"description": "A repo from Tangled cloned into a specific directory",
-
"required": [
-
"owner",
-
"repo",
-
"dir"
-
],
-
"properties": {
-
"dir": {
-
"type": "string",
-
"description": "The location of the cloned git repo. Must be a valid POSIX (not NT) path. Example: /home/ocbwoy3/config"
-
},
-
"owner": {
-
"type": "string",
-
"description": "The owner of the repo. In the case of https://tangled.sh/@ocbwoy3.dev/nix, owner would be the DID of @ocbwoy3.dev",
-
"format": "did"
-
},
-
"repo": {
-
"type": "string",
-
"description": "The repository name"
-
}
-
}
-
}
-
}
-
}
-447
crates/jacquard-api/lexicons/dev_regnault_webfishing_save.json
···
-
{
-
"lexicon": 1,
-
"id": "dev.regnault.webfishing.save",
-
"defs": {
-
"aqua_fish": {
-
"type": "object",
-
"properties": {
-
"id": {
-
"type": "string"
-
},
-
"quality": {
-
"type": "integer"
-
},
-
"ref": {
-
"type": "integer"
-
},
-
"size": {
-
"type": "string"
-
}
-
}
-
},
-
"bait_inv": {
-
"type": "object",
-
"properties": {
-
"": {
-
"type": "integer"
-
},
-
"cricket": {
-
"type": "integer"
-
},
-
"leech": {
-
"type": "integer"
-
},
-
"minnow": {
-
"type": "integer"
-
},
-
"nautilus": {
-
"type": "integer"
-
},
-
"squid": {
-
"type": "integer"
-
},
-
"worms": {
-
"type": "integer"
-
}
-
}
-
},
-
"cosmetics": {
-
"type": "object",
-
"properties": {
-
"accessory": {
-
"type": "array",
-
"items": {
-
"type": "string"
-
}
-
},
-
"bobber": {
-
"type": "string"
-
},
-
"eye": {
-
"type": "string"
-
},
-
"hat": {
-
"type": "string"
-
},
-
"legs": {
-
"type": "string"
-
},
-
"mouth": {
-
"type": "string"
-
},
-
"nose": {
-
"type": "string"
-
},
-
"overshirt": {
-
"type": "string"
-
},
-
"pattern": {
-
"type": "string"
-
},
-
"primary_color": {
-
"type": "string"
-
},
-
"secondary_color": {
-
"type": "string"
-
},
-
"species": {
-
"type": "string"
-
},
-
"tail": {
-
"type": "string"
-
},
-
"title": {
-
"type": "string"
-
},
-
"undershirt": {
-
"type": "string"
-
}
-
}
-
},
-
"guitar_shape": {
-
"type": "array",
-
"items": {
-
"type": "integer"
-
},
-
"minLength": 6,
-
"maxLength": 6
-
},
-
"guitar_shapes": {
-
"type": "array",
-
"items": {
-
"type": "ref",
-
"ref": "#guitar_shape"
-
}
-
},
-
"hotbar": {
-
"type": "object",
-
"properties": {
-
"0": {
-
"type": "integer"
-
},
-
"1": {
-
"type": "integer"
-
},
-
"2": {
-
"type": "integer"
-
},
-
"3": {
-
"type": "integer"
-
},
-
"4": {
-
"type": "integer"
-
}
-
}
-
},
-
"item": {
-
"type": "object",
-
"properties": {
-
"count": {
-
"type": "integer"
-
},
-
"custom_name": {
-
"type": "string"
-
},
-
"id": {
-
"type": "string"
-
},
-
"quality": {
-
"type": "integer"
-
},
-
"ref": {
-
"type": "integer"
-
},
-
"size": {
-
"type": "string"
-
},
-
"tags": {
-
"type": "array",
-
"items": {
-
"type": "string"
-
}
-
}
-
}
-
},
-
"journal_category": {
-
"type": "object",
-
"properties": {
-
"entries": {
-
"type": "array",
-
"items": {
-
"type": "ref",
-
"ref": "#journal_entry"
-
}
-
},
-
"name": {
-
"type": "string"
-
}
-
}
-
},
-
"journal_entry": {
-
"type": "object",
-
"properties": {
-
"count": {
-
"type": "integer"
-
},
-
"name": {
-
"type": "string"
-
},
-
"quality": {
-
"type": "array",
-
"items": {
-
"type": "integer"
-
}
-
},
-
"record": {
-
"type": "string"
-
}
-
}
-
},
-
"letter": {
-
"type": "object",
-
"properties": {
-
"body": {
-
"type": "string"
-
},
-
"closing": {
-
"type": "string"
-
},
-
"from": {
-
"type": "string"
-
},
-
"header": {
-
"type": "string"
-
},
-
"items": {
-
"type": "array",
-
"items": {
-
"type": "ref",
-
"ref": "#item"
-
}
-
},
-
"letter_id": {
-
"type": "integer"
-
},
-
"to": {
-
"type": "string"
-
}
-
}
-
},
-
"main": {
-
"type": "record",
-
"description": "Record declaring a save data of the game webfishing",
-
"key": "tid",
-
"record": {
-
"type": "object",
-
"required": [
-
"inventory"
-
],
-
"properties": {
-
"bait_inv": {
-
"type": "ref",
-
"ref": "#bait_inv"
-
},
-
"bait_selected": {
-
"type": "string"
-
},
-
"bait_unlocked": {
-
"type": "array",
-
"items": {
-
"type": "string"
-
}
-
},
-
"buddy_level": {
-
"type": "integer"
-
},
-
"buddy_speed": {
-
"type": "integer"
-
},
-
"cash_total": {
-
"type": "integer"
-
},
-
"completed_quests": {
-
"type": "array",
-
"items": {
-
"type": "string"
-
}
-
},
-
"cosmetics_equipped": {
-
"type": "ref",
-
"ref": "#cosmetics"
-
},
-
"cosmetics_unlocked": {
-
"type": "array",
-
"items": {
-
"type": "string"
-
}
-
},
-
"fish_caught": {
-
"type": "integer"
-
},
-
"guitar_shapes": {
-
"type": "array",
-
"items": {
-
"type": "ref",
-
"ref": "#guitar_shapes"
-
}
-
},
-
"hotbar": {
-
"type": "ref",
-
"ref": "#hotbar"
-
},
-
"inbound_mail": {
-
"type": "array",
-
"items": {
-
"type": "ref",
-
"ref": "#letter"
-
}
-
},
-
"inventory": {
-
"type": "array",
-
"items": {
-
"type": "ref",
-
"ref": "#item"
-
}
-
},
-
"journal": {
-
"type": "array",
-
"items": {
-
"type": "ref",
-
"ref": "#journal_category"
-
}
-
},
-
"level": {
-
"type": "integer"
-
},
-
"loan_left": {
-
"type": "integer"
-
},
-
"loan_level": {
-
"type": "integer"
-
},
-
"locked_refs": {
-
"type": "array",
-
"items": {
-
"type": "integer"
-
}
-
},
-
"lure_selected": {
-
"type": "string"
-
},
-
"lure_unlocked": {
-
"type": "array",
-
"items": {
-
"type": "string"
-
}
-
},
-
"max_bait": {
-
"type": "integer"
-
},
-
"money": {
-
"type": "integer"
-
},
-
"new_cosmetics": {
-
"type": "array",
-
"items": {
-
"type": "string"
-
}
-
},
-
"quests": {
-
"type": "array",
-
"items": {
-
"type": "ref",
-
"ref": "#quest_entry"
-
}
-
},
-
"rod_chance": {
-
"type": "integer"
-
},
-
"rod_luck": {
-
"type": "integer"
-
},
-
"rod_power": {
-
"type": "integer"
-
},
-
"rod_speed": {
-
"type": "integer"
-
},
-
"saved_aqua_fish": {
-
"type": "ref",
-
"ref": "#aqua_fish"
-
},
-
"saved_tags": {
-
"type": "array",
-
"items": {
-
"type": "string"
-
}
-
},
-
"version": {
-
"type": "string"
-
},
-
"voice_pitch": {
-
"type": "string"
-
},
-
"voice_speed": {
-
"type": "integer"
-
},
-
"xp": {
-
"type": "integer"
-
}
-
}
-
}
-
},
-
"quest_entry": {
-
"type": "object",
-
"properties": {
-
"action": {
-
"type": "string"
-
},
-
"goal_amt": {
-
"type": "integer"
-
},
-
"goal_array": {
-
"type": "array",
-
"items": {
-
"type": "integer"
-
}
-
},
-
"goal_id": {
-
"type": "string"
-
},
-
"gold_reward": {
-
"type": "integer"
-
},
-
"hidden": {
-
"type": "boolean"
-
},
-
"icon": {
-
"type": "string"
-
},
-
"id": {
-
"type": "integer"
-
},
-
"max_level": {
-
"type": "integer"
-
},
-
"progress": {
-
"type": "integer"
-
},
-
"rewards": {
-
"type": "array",
-
"items": {
-
"type": "string"
-
}
-
},
-
"tier": {
-
"type": "integer"
-
},
-
"title": {
-
"type": "string"
-
},
-
"xp_reward": {
-
"type": "integer"
-
}
-
}
-
}
-
}
-
}
-28
crates/jacquard-api/lexicons/did:plc:jh6yfs5dk47kykvhp7r6qwrb.json
···
-
{
-
"lexicon": 1,
-
"id": "did:plc:jh6yfs5dk47kykvhp7r6qwrb",
-
"description": "A test schema to probe parser behavior.",
-
"defs": {
-
"main": {
-
"type": "record",
-
"key": "tid",
-
"record": {
-
"type": "object",
-
"required": [
-
"text",
-
"createdAt"
-
],
-
"properties": {
-
"createdAt": {
-
"type": "string",
-
"format": "datetime"
-
},
-
"text": {
-
"type": "string",
-
"maxLength": 1024
-
}
-
}
-
}
-
}
-
}
-
}
-46
crates/jacquard-api/lexicons/events_smokesignal_automation_InvokeWebhook.json
···
-
{
-
"lexicon": 1,
-
"id": "events.smokesignal.automation.InvokeWebhook",
-
"defs": {
-
"main": {
-
"type": "procedure",
-
"description": "Process a Smoke Signal webhook event.",
-
"input": {
-
"encoding": "application/json",
-
"schema": {
-
"type": "object",
-
"required": [
-
"event",
-
"record",
-
"context"
-
],
-
"properties": {
-
"context": {
-
"type": "object",
-
"properties": {}
-
},
-
"event": {
-
"type": "string",
-
"knownValues": [
-
"test",
-
"rsvp.created",
-
"event.created"
-
]
-
},
-
"record": {
-
"type": "object",
-
"properties": {}
-
}
-
}
-
}
-
},
-
"output": {
-
"encoding": "application/json",
-
"schema": {
-
"type": "object",
-
"properties": {}
-
}
-
}
-
}
-
}
-
}
+34
crates/jacquard-api/lexicons/garden_lexicon_ngerakines_helloworld_Hello.json
···
+
{
+
"lexicon": 1,
+
"id": "garden.lexicon.ngerakines.helloworld.Hello",
+
"defs": {
+
"main": {
+
"type": "query",
+
"parameters": {
+
"type": "params",
+
"required": [],
+
"properties": {
+
"subject": {
+
"type": "string",
+
"maxLength": 55
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"message"
+
],
+
"properties": {
+
"message": {
+
"type": "string",
+
"maxLength": 64
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+16
crates/jacquard-api/lexicons/garden_lexicon_ngerakines_semeion_Sign.json
···
+
{
+
"lexicon": 1,
+
"id": "garden.lexicon.ngerakines.semeion.Sign",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"description": "Sign a payload",
+
"input": {
+
"encoding": "*/*"
+
},
+
"output": {
+
"encoding": "application/octet-stream"
+
}
+
}
+
}
+
}
-61
crates/jacquard-api/lexicons/how_bun_reviews_review.json
···
-
{
-
"lexicon": 1,
-
"id": "how.bun.reviews.review",
-
"defs": {
-
"main": {
-
"type": "record",
-
"description": "Record containing a review of something.",
-
"key": "tid",
-
"record": {
-
"type": "object",
-
"required": [
-
"createdAt",
-
"subject",
-
"text"
-
],
-
"properties": {
-
"createdAt": {
-
"type": "string",
-
"description": "The timestamp when this review was originally written.",
-
"format": "datetime"
-
},
-
"facets": {
-
"type": "array",
-
"description": "Annotations of text (Bluesky-compatible richtext).",
-
"items": {
-
"type": "ref",
-
"ref": "app.bsky.richtext.facet"
-
}
-
},
-
"langs": {
-
"type": "array",
-
"description": "Indicates natural language of text.",
-
"items": {
-
"type": "string",
-
"format": "language"
-
},
-
"maxLength": 3
-
},
-
"subject": {
-
"type": "union",
-
"refs": [
-
"how.bun.reviews.subject#wikidataObject"
-
]
-
},
-
"summary": {
-
"type": "string",
-
"description": "A short summary of the review (perhaps a score).",
-
"maxLength": 1000,
-
"maxGraphemes": 96
-
},
-
"text": {
-
"type": "string",
-
"description": "The text of the review.",
-
"maxLength": 768000,
-
"maxGraphemes": 64000
-
}
-
}
-
}
-
}
-
}
-
}
-18
crates/jacquard-api/lexicons/how_bun_reviews_subject.json
···
-
{
-
"lexicon": 1,
-
"id": "how.bun.reviews.subject",
-
"defs": {
-
"wikidataObject": {
-
"type": "object",
-
"description": "An entity on wikidata.org.",
-
"required": [
-
"qid"
-
],
-
"properties": {
-
"qid": {
-
"type": "string"
-
}
-
}
-
}
-
}
-
}
-93
crates/jacquard-api/lexicons/inc_toronto_discover_beta_profile.json
···
-
{
-
"lexicon": 1,
-
"id": "inc.toronto.discover.beta.profile",
-
"defs": {
-
"main": {
-
"type": "record",
-
"description": "A Toronto profile entry",
-
"key": "tid",
-
"record": {
-
"type": "object",
-
"required": [
-
"name",
-
"bio",
-
"interests",
-
"currentProject",
-
"createdAt"
-
],
-
"properties": {
-
"bio": {
-
"type": "string",
-
"description": "Short bio - one-liner about who you are, what you make, or what you're about",
-
"maxLength": 300,
-
"maxGraphemes": 300
-
},
-
"createdAt": {
-
"type": "string",
-
"description": "When this profile was created",
-
"format": "datetime"
-
},
-
"currentProject": {
-
"type": "string",
-
"description": "Short blurb about a project you're currently working on or exploring",
-
"maxLength": 500,
-
"maxGraphemes": 500
-
},
-
"githubUrl": {
-
"type": "string",
-
"description": "GitHub profile URL",
-
"format": "uri"
-
},
-
"instagramUrl": {
-
"type": "string",
-
"description": "Instagram profile URL",
-
"format": "uri"
-
},
-
"interests": {
-
"type": "array",
-
"description": "Keywords describing interests, focus areas, or creative mediums",
-
"items": {
-
"type": "string",
-
"maxLength": 50,
-
"maxGraphemes": 50
-
},
-
"maxLength": 10
-
},
-
"linkedinUrl": {
-
"type": "string",
-
"description": "LinkedIn profile URL",
-
"format": "uri"
-
},
-
"name": {
-
"type": "string",
-
"description": "Name or online alias - real name, artist name, or handle",
-
"minLength": 1,
-
"maxLength": 100,
-
"maxGraphemes": 100
-
},
-
"neighbourhood": {
-
"type": "string",
-
"description": "Toronto neighbourhood where you're based or do most of your work",
-
"maxLength": 100,
-
"maxGraphemes": 100
-
},
-
"twitterUrl": {
-
"type": "string",
-
"description": "Twitter profile URL",
-
"format": "uri"
-
},
-
"updatedAt": {
-
"type": "string",
-
"description": "When this profile was last updated",
-
"format": "datetime"
-
},
-
"websiteUrl": {
-
"type": "string",
-
"description": "Personal website URL",
-
"format": "uri"
-
}
-
}
-
}
-
}
-
}
-
}
-29
crates/jacquard-api/lexicons/lol_atmo_link.json
···
-
{
-
"lexicon": 1,
-
"id": "lol.atmo.link",
-
"defs": {
-
"main": {
-
"type": "record",
-
"key": "tid",
-
"record": {
-
"type": "object",
-
"required": [
-
"short",
-
"url"
-
],
-
"properties": {
-
"short": {
-
"type": "string",
-
"minLength": 1,
-
"maxLength": 32
-
},
-
"url": {
-
"type": "string",
-
"minLength": 1,
-
"maxLength": 2048
-
}
-
}
-
}
-
}
-
}
-
}
-30
crates/jacquard-api/lexicons/lol_skittr_actor_getTheme.json
···
-
{
-
"lexicon": 1,
-
"id": "lol.skittr.actor.getTheme",
-
"defs": {
-
"main": {
-
"type": "query",
-
"description": "Get actor's theme",
-
"parameters": {
-
"type": "params",
-
"required": [
-
"actor"
-
],
-
"properties": {
-
"actor": {
-
"type": "string",
-
"description": "Handle or DID of the actor",
-
"format": "at-identifier"
-
}
-
}
-
},
-
"output": {
-
"encoding": "application/json",
-
"schema": {
-
"type": "ref",
-
"ref": "lol.skittr.actor.theme#main"
-
}
-
}
-
}
-
}
-
}
-57
crates/jacquard-api/lexicons/lol_skittr_actor_theme.json
···
-
{
-
"lexicon": 1,
-
"id": "lol.skittr.actor.theme",
-
"defs": {
-
"main": {
-
"type": "record",
-
"description": "Profile customization values",
-
"key": "literal:self",
-
"record": {
-
"type": "object",
-
"required": [
-
"bg_color",
-
"text_color",
-
"link_color",
-
"side_color",
-
"side_border"
-
],
-
"properties": {
-
"background": {
-
"type": "blob",
-
"description": "A background image, must be either PNG or JPEG",
-
"accept": [
-
"image/png",
-
"image/jpeg"
-
],
-
"maxSize": 1000000
-
},
-
"bg_color": {
-
"type": "string",
-
"maxLength": 640,
-
"maxGraphemes": 64
-
},
-
"link_color": {
-
"type": "string",
-
"maxLength": 640,
-
"maxGraphemes": 64
-
},
-
"side_border": {
-
"type": "string",
-
"maxLength": 640,
-
"maxGraphemes": 64
-
},
-
"side_color": {
-
"type": "string",
-
"maxLength": 640,
-
"maxGraphemes": 64
-
},
-
"text_color": {
-
"type": "string",
-
"maxLength": 640,
-
"maxGraphemes": 64
-
}
-
}
-
}
-
}
-
}
-
}
-41
crates/jacquard-api/lexicons/lol_skittr_server_getMeta.json
···
-
{
-
"lexicon": 1,
-
"id": "lol.skittr.server.getMeta",
-
"defs": {
-
"main": {
-
"type": "query",
-
"description": "Get information about the AppView",
-
"output": {
-
"encoding": "application/json",
-
"schema": {
-
"type": "object",
-
"required": [
-
"software",
-
"version",
-
"supported_lexicons"
-
],
-
"properties": {
-
"software": {
-
"type": "string"
-
},
-
"supported_extensions": {
-
"type": "array",
-
"items": {
-
"type": "string"
-
}
-
},
-
"supported_lexicons": {
-
"type": "array",
-
"items": {
-
"type": "string"
-
}
-
},
-
"version": {
-
"type": "string"
-
}
-
}
-
}
-
}
-
}
-
}
-
}
+32
crates/jacquard-api/lexicons/net_bnewbold_demo_mushroom.json
···
+
{
+
"lexicon": 1,
+
"id": "net.bnewbold.demo.mushroom",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "it's a kind of fungus",
+
"key": "any",
+
"record": {
+
"type": "object",
+
"required": [
+
"commonName"
+
],
+
"properties": {
+
"commonName": {
+
"type": "string",
+
"maxLength": 2560,
+
"maxGraphemes": 256
+
},
+
"edible": {
+
"type": "boolean"
+
},
+
"species": {
+
"type": "string",
+
"maxLength": 2560,
+
"maxGraphemes": 256
+
}
+
}
+
}
+
}
+
}
+
}
-51
crates/jacquard-api/lexicons/net_bnewbold_demo_nested_blah.json
···
-
{
-
"lexicon": 1,
-
"id": "net.bnewbold.demo.nested.blah",
-
"defs": {
-
"main": {
-
"type": "record",
-
"description": "TODO: describe purpose of this schema",
-
"key": "any",
-
"record": {
-
"type": "object",
-
"required": [
-
"name",
-
"createdAt"
-
],
-
"properties": {
-
"avatar": {
-
"type": "blob",
-
"accept": [
-
"image/png",
-
"image/jpeg"
-
],
-
"maxSize": 2000000
-
},
-
"createdAt": {
-
"type": "string",
-
"format": "datetime"
-
},
-
"description": {
-
"type": "string",
-
"maxLength": 3000,
-
"maxGraphemes": 300
-
},
-
"descriptionFacets": {
-
"type": "array",
-
"items": {
-
"type": "ref",
-
"ref": "app.bsky.richtext.facet"
-
}
-
},
-
"name": {
-
"type": "string",
-
"description": "TODO: title name of record; can not be empty",
-
"minLength": 1,
-
"maxLength": 640,
-
"maxGraphemes": 64
-
}
-
}
-
}
-
}
-
}
-
}
+32
crates/jacquard-api/lexicons/net_bnewbold_m.json
···
+
{
+
"lexicon": 1,
+
"id": "net.bnewbold.m",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "it's a kind of fungus",
+
"key": "any",
+
"record": {
+
"type": "object",
+
"required": [
+
"commonName"
+
],
+
"properties": {
+
"commonName": {
+
"type": "string",
+
"maxLength": 2560,
+
"maxGraphemes": 256
+
},
+
"edible": {
+
"type": "boolean"
+
},
+
"species": {
+
"type": "string",
+
"maxLength": 2560,
+
"maxGraphemes": 256
+
}
+
}
+
}
+
}
+
}
+
}
+33
crates/jacquard-api/lexicons/net_mmatt_right_now.json
···
+
{
+
"lexicon": 1,
+
"id": "net.mmatt.right.now",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A personal lexicon for mmatt's statuslog.",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"required": [
+
"createdAt",
+
"text"
+
],
+
"properties": {
+
"createdAt": {
+
"type": "string",
+
"description": "The unix timestamp of when the status was recorded",
+
"format": "datetime"
+
},
+
"emoji": {
+
"type": "string",
+
"description": "The emoji of the status update"
+
},
+
"text": {
+
"type": "string",
+
"description": "The text of the status update"
+
}
+
}
+
}
+
}
+
}
+
}
+55
crates/jacquard-api/lexicons/net_mmatt_vitals_car.json
···
+
{
+
"lexicon": 1,
+
"id": "net.mmatt.vitals.car",
+
"defs": {
+
"main": {
+
"type": "record",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"required": [
+
"createdAt",
+
"carFuelRange",
+
"carPercentFuelRemaining",
+
"amountRemaining",
+
"carTraveledDistance"
+
],
+
"properties": {
+
"amountRemaining": {
+
"type": "string",
+
"description": "The car fuel amount remaining value (floating point string)"
+
},
+
"carFuelRange": {
+
"type": "integer",
+
"description": "The car fuel range value in miles"
+
},
+
"carMake": {
+
"type": "string",
+
"description": "The car make value"
+
},
+
"carModel": {
+
"type": "string",
+
"description": "The car model value"
+
},
+
"carPercentFuelRemaining": {
+
"type": "string",
+
"description": "The car fuel level value in percentage (floating point string)"
+
},
+
"carTraveledDistance": {
+
"type": "integer",
+
"description": "The car traveled distance value"
+
},
+
"carYear": {
+
"type": "integer",
+
"description": "The car year value"
+
},
+
"createdAt": {
+
"type": "string",
+
"description": "The unix timestamp of when the vital was recorded",
+
"format": "datetime"
+
}
+
}
+
}
+
}
+
}
+
}
+50
crates/jacquard-api/lexicons/org_devcon_event_test.json
···
+
{
+
"lexicon": 1,
+
"id": "org.devcon.event.test",
+
"defs": {
+
"main": {
+
"type": "record",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"required": [
+
"title",
+
"start",
+
"end"
+
],
+
"properties": {
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"description": {
+
"type": "string",
+
"description": "Description of the event"
+
},
+
"end": {
+
"type": "string",
+
"description": "End time of the event",
+
"format": "datetime"
+
},
+
"location": {
+
"type": "string",
+
"description": "Location of the event"
+
},
+
"start": {
+
"type": "string",
+
"description": "Start time of the event",
+
"format": "datetime"
+
},
+
"title": {
+
"type": "string",
+
"description": "Title of the event"
+
},
+
"url": {
+
"type": "string",
+
"description": "URL of the event"
+
}
+
}
+
}
+
}
+
}
+
}
+32
crates/jacquard-api/lexicons/org_robocracy_demo_fungus.json
···
+
{
+
"lexicon": 1,
+
"id": "org.robocracy.demo.fungus",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "it's a kind of fungus!",
+
"key": "any",
+
"record": {
+
"type": "object",
+
"required": [
+
"commonName"
+
],
+
"properties": {
+
"commonName": {
+
"type": "string",
+
"maxLength": 2560,
+
"maxGraphemes": 256
+
},
+
"edible": {
+
"type": "boolean"
+
},
+
"species": {
+
"type": "string",
+
"maxLength": 2560,
+
"maxGraphemes": 256
+
}
+
}
+
}
+
}
+
}
+
}
+32
crates/jacquard-api/lexicons/org_robocracy_demo_mushies.json
···
+
{
+
"lexicon": 1,
+
"id": "org.robocracy.demo.mushies",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "it's a kind of fungus!",
+
"key": "any",
+
"record": {
+
"type": "object",
+
"required": [
+
"commonName"
+
],
+
"properties": {
+
"commonName": {
+
"type": "string",
+
"maxLength": 2560,
+
"maxGraphemes": 256
+
},
+
"edible": {
+
"type": "boolean"
+
},
+
"species": {
+
"type": "string",
+
"maxLength": 2560,
+
"maxGraphemes": 256
+
}
+
}
+
}
+
}
+
}
+
}
+53
crates/jacquard-api/lexicons/place_atwork_endorsement.json
···
+
{
+
"lexicon": 1,
+
"id": "place.atwork.endorsement",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A cryptographically-verified professional endorsement between two identities.",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"required": [
+
"giver",
+
"receiver",
+
"text",
+
"createdAt"
+
],
+
"properties": {
+
"createdAt": {
+
"type": "string",
+
"description": "Timestamp when the endorsement was created.",
+
"format": "datetime"
+
},
+
"giver": {
+
"type": "string",
+
"description": "The DID of the identity giving the endorsement.",
+
"format": "did"
+
},
+
"receiver": {
+
"type": "string",
+
"description": "The DID of the identity receiving the endorsement.",
+
"format": "did"
+
},
+
"signatures": {
+
"type": "array",
+
"description": "Verified signatures from endorsement proofs (strong references).",
+
"items": {
+
"type": "union",
+
"refs": [
+
"com.atproto.repo.strongRef"
+
]
+
}
+
},
+
"text": {
+
"type": "string",
+
"description": "The endorsement text content.",
+
"maxLength": 1000,
+
"maxGraphemes": 1000
+
}
+
}
+
}
+
}
+
}
+
}
+24
crates/jacquard-api/lexicons/place_atwork_endorsementProof.json
···
+
{
+
"lexicon": 1,
+
"id": "place.atwork.endorsementProof",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A cryptographic proof record that validates an endorsement by containing the CID of the endorsement content.",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"required": [
+
"cid"
+
],
+
"properties": {
+
"cid": {
+
"type": "string",
+
"description": "The CID (Content Identifier) of the endorsement content that this proof validates. The endorsement's signatures array references this proof record.",
+
"format": "cid"
+
}
+
}
+
}
+
}
+
}
+
}
+5 -1
crates/jacquard-api/lexicons/place_atwork_getListings.json
···
},
"main": {
"type": "query",
-
"description": "Get job listings, optionally filtered by tag",
+
"description": "Get job listings, optionally filtered by tag or identity",
"parameters": {
"type": "params",
"properties": {
+
"identity": {
+
"type": "string",
+
"description": "Filter listings by creator DID (e.g., did:plc:abc123)"
+
},
"tag": {
"type": "string",
"description": "Filter listings by hashtag"
+9
crates/jacquard-api/lexicons/place_atwork_listing.json
···
"description": "URL where applicants can apply for the job.",
"format": "uri"
},
+
"banner": {
+
"type": "blob",
+
"description": "Larger horizontal image to display behind job listing view.",
+
"accept": [
+
"image/png",
+
"image/jpeg"
+
],
+
"maxSize": 1000000
+
},
"description": {
"type": "string",
"description": "The description of the job listing.",
+35
crates/jacquard-api/lexicons/place_atwork_profile.json
···
"record": {
"type": "object",
"properties": {
+
"avatar": {
+
"type": "blob",
+
"description": "Small image to be displayed next to job listings from account. AKA, 'profile picture'",
+
"accept": [
+
"image/png",
+
"image/jpeg"
+
],
+
"maxSize": 1000000
+
},
+
"banner": {
+
"type": "blob",
+
"description": "Larger horizontal image to display behind profile view.",
+
"accept": [
+
"image/png",
+
"image/jpeg"
+
],
+
"maxSize": 1000000
+
},
"description": {
"type": "string",
"description": "A free text description of the identity.",
···
"type": "ref",
"ref": "app.bsky.richtext.facet"
}
+
},
+
"profile_host": {
+
"type": "string",
+
"description": "The service used for profile links",
+
"knownValues": [
+
"bsky.app",
+
"blacksky.community"
+
]
+
},
+
"resume": {
+
"type": "blob",
+
"description": "The identity's resume.",
+
"accept": [
+
"application/pdf",
+
"text/plain"
+
],
+
"maxSize": 4000000
},
"status": {
"type": "string",
-1
crates/jacquard-api/lexicons/place_stream_chat_profile.json
···
"key": "literal:self",
"record": {
"type": "object",
-
"required": [],
"properties": {
"color": {
"type": "ref",
+76
crates/jacquard-api/lexicons/social_clippr_actor_defs.json
···
+
{
+
"lexicon": 1,
+
"id": "social.clippr.actor.defs",
+
"defs": {
+
"preferences": {
+
"type": "array",
+
"description": "An array of refs to various preferences.",
+
"items": {
+
"type": "union",
+
"refs": [
+
"#publishingScopesPref"
+
]
+
}
+
},
+
"profileView": {
+
"type": "object",
+
"description": "A view of an actor's profile.",
+
"required": [
+
"did",
+
"handle",
+
"displayName"
+
],
+
"properties": {
+
"avatar": {
+
"type": "string",
+
"description": "A link to the profile's avatar",
+
"format": "uri"
+
},
+
"createdAt": {
+
"type": "string",
+
"description": "When the profile record was first created",
+
"format": "datetime"
+
},
+
"description": {
+
"type": "string",
+
"description": "The biography associated to the profile",
+
"maxLength": 5000,
+
"maxGraphemes": 500
+
},
+
"did": {
+
"type": "string",
+
"description": "The DID of the profile",
+
"format": "did"
+
},
+
"displayName": {
+
"type": "string",
+
"description": "The display name associated to the profile",
+
"maxLength": 640,
+
"maxGraphemes": 64
+
},
+
"handle": {
+
"type": "string",
+
"description": "The handle of the profile",
+
"format": "handle"
+
}
+
}
+
},
+
"publishingScopesPref": {
+
"type": "object",
+
"description": "Preferences for an user's publishing scopes.",
+
"required": [
+
"defaultScope"
+
],
+
"properties": {
+
"defaultScope": {
+
"type": "string",
+
"description": "What publishing scope to mark a clip as by default",
+
"knownValues": [
+
"public",
+
"unlisted"
+
]
+
}
+
}
+
}
+
}
+
}
+30
crates/jacquard-api/lexicons/social_clippr_actor_getPreferences.json
···
+
{
+
"lexicon": 1,
+
"id": "social.clippr.actor.getPreferences",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "Get the private user preferences associated to the account.",
+
"parameters": {
+
"type": "params",
+
"properties": {}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"preferences"
+
],
+
"properties": {
+
"preferences": {
+
"type": "ref",
+
"description": "A ref to the user's preferences",
+
"ref": "social.clippr.actor.defs#preferences"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+31
crates/jacquard-api/lexicons/social_clippr_actor_getProfile.json
···
+
{
+
"lexicon": 1,
+
"id": "social.clippr.actor.getProfile",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "Get profile view of an actor. Does not require auth.",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"actor"
+
],
+
"properties": {
+
"actor": {
+
"type": "string",
+
"description": "Handle or DID of account to fetch profile of",
+
"format": "at-identifier"
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "ref",
+
"description": "A reference to the profile view of the actor",
+
"ref": "social.clippr.actor.defs#profileView"
+
}
+
}
+
}
+
}
+
}
+46
crates/jacquard-api/lexicons/social_clippr_actor_profile.json
···
+
{
+
"lexicon": 1,
+
"id": "social.clippr.actor.profile",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A declaration of a Clippr account's profile.",
+
"key": "literal:self",
+
"record": {
+
"type": "object",
+
"required": [
+
"createdAt",
+
"displayName"
+
],
+
"properties": {
+
"avatar": {
+
"type": "blob",
+
"description": "Image to show on user's profiles",
+
"accept": [
+
"image/png",
+
"image/jpeg"
+
],
+
"maxSize": 1000000
+
},
+
"createdAt": {
+
"type": "string",
+
"description": "The creation date of the profile",
+
"format": "datetime"
+
},
+
"description": {
+
"type": "string",
+
"description": "Text for user to describe themselves",
+
"maxLength": 5000,
+
"maxGraphemes": 500
+
},
+
"displayName": {
+
"type": "string",
+
"description": "A display name to be shown on a profile",
+
"maxLength": 640,
+
"maxGraphemes": 64
+
}
+
}
+
}
+
}
+
}
+
}
+26
crates/jacquard-api/lexicons/social_clippr_actor_putPreferences.json
···
+
{
+
"lexicon": 1,
+
"id": "social.clippr.actor.putPreferences",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"description": "Set the private preferences attached to the account.",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"preferences"
+
],
+
"properties": {
+
"preferences": {
+
"type": "ref",
+
"description": "A ref to the user's preferences",
+
"ref": "social.clippr.actor.defs#preferences"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+61
crates/jacquard-api/lexicons/social_clippr_actor_searchClips.json
···
+
{
+
"lexicon": 1,
+
"id": "social.clippr.actor.searchClips",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "Find clips matching search criteria. Does not require auth.",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"q"
+
],
+
"properties": {
+
"actor": {
+
"type": "string",
+
"description": "An actor to filter results to",
+
"format": "at-identifier"
+
},
+
"cursor": {
+
"type": "string",
+
"description": "A parameter to paginate results"
+
},
+
"limit": {
+
"type": "integer",
+
"description": "How many clips to return in the query output",
+
"default": 25,
+
"minimum": 1,
+
"maximum": 100
+
},
+
"q": {
+
"type": "string",
+
"description": "Search query string"
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"clips"
+
],
+
"properties": {
+
"clips": {
+
"type": "array",
+
"description": "A list of clips and their associated details",
+
"items": {
+
"type": "ref",
+
"ref": "social.clippr.feed.defs#clipView"
+
}
+
},
+
"cursor": {
+
"type": "string",
+
"description": "A parameter to paginate results"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+52
crates/jacquard-api/lexicons/social_clippr_actor_searchProfiles.json
···
+
{
+
"lexicon": 1,
+
"id": "social.clippr.actor.searchProfiles",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "Find profiles matching search criteria. Does not require auth.",
+
"parameters": {
+
"type": "params",
+
"properties": {
+
"cursor": {
+
"type": "string",
+
"description": "A parameter used for pagination"
+
},
+
"limit": {
+
"type": "integer",
+
"description": "The number of profiles to be returned in the query",
+
"default": 25,
+
"minimum": 1,
+
"maximum": 100
+
},
+
"q": {
+
"type": "string",
+
"description": "Search query string"
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"actors"
+
],
+
"properties": {
+
"actors": {
+
"type": "array",
+
"items": {
+
"type": "ref",
+
"ref": "social.clippr.actor.defs#profileView"
+
}
+
},
+
"cursor": {
+
"type": "string",
+
"description": "A parameter used for pagination"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+61
crates/jacquard-api/lexicons/social_clippr_actor_searchTags.json
···
+
{
+
"lexicon": 1,
+
"id": "social.clippr.actor.searchTags",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "Find tags matching search criteria. Does not require auth.",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"q"
+
],
+
"properties": {
+
"actor": {
+
"type": "string",
+
"description": "An actor to filter results to",
+
"format": "at-identifier"
+
},
+
"cursor": {
+
"type": "string",
+
"description": "A parameter to paginate results"
+
},
+
"limit": {
+
"type": "integer",
+
"description": "How many tags to return in the query output",
+
"default": 25,
+
"minimum": 1,
+
"maximum": 100
+
},
+
"q": {
+
"type": "string",
+
"description": "Search query string"
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"tags"
+
],
+
"properties": {
+
"cursor": {
+
"type": "string",
+
"description": "A parameter to paginate results"
+
},
+
"tags": {
+
"type": "array",
+
"description": "A list of tags and their associated details",
+
"items": {
+
"type": "ref",
+
"ref": "social.clippr.feed.defs#tagView"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+80
crates/jacquard-api/lexicons/social_clippr_feed_clip.json
···
+
{
+
"lexicon": 1,
+
"id": "social.clippr.feed.clip",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "Record containing a bookmarked item, or 'clip'.",
+
"key": "any",
+
"record": {
+
"type": "object",
+
"required": [
+
"url",
+
"title",
+
"description",
+
"unlisted",
+
"createdAt"
+
],
+
"properties": {
+
"createdAt": {
+
"type": "string",
+
"description": "Client-declared timestamp when the bookmark is created",
+
"format": "datetime"
+
},
+
"description": {
+
"type": "string",
+
"description": "A description of the bookmark's content. This should be ripped from the URL metadata and be static for all records using the URL.",
+
"maxLength": 40960,
+
"maxGraphemes": 4096
+
},
+
"languages": {
+
"type": "array",
+
"description": "Indicates human language of the given URL",
+
"items": {
+
"type": "string",
+
"format": "language"
+
},
+
"maxLength": 5
+
},
+
"notes": {
+
"type": "string",
+
"description": "User-written notes for the bookmark. Public and personal.",
+
"maxLength": 100000,
+
"maxGraphemes": 10000
+
},
+
"tags": {
+
"type": "array",
+
"description": "An array of tags. A format of solely alphanumeric characters and dashes should be used.",
+
"items": {
+
"type": "ref",
+
"ref": "com.atproto.repo.strongRef"
+
}
+
},
+
"title": {
+
"type": "string",
+
"description": "The title of the bookmark. If left empty, reuse the URL.",
+
"maxLength": 20480,
+
"maxGraphemes": 2048
+
},
+
"unlisted": {
+
"type": "boolean",
+
"description": "Whether the bookmark can be used for feed indexing and aggregation",
+
"default": false
+
},
+
"unread": {
+
"type": "boolean",
+
"description": "Whether the bookmark has been read by the user",
+
"default": true
+
},
+
"url": {
+
"type": "string",
+
"description": "The URL of the bookmark. Cannot be left empty or be modified after creation.",
+
"format": "uri",
+
"maxLength": 20000,
+
"maxGraphemes": 2000
+
}
+
}
+
}
+
}
+
}
+
}
+80
crates/jacquard-api/lexicons/social_clippr_feed_defs.json
···
+
{
+
"lexicon": 1,
+
"id": "social.clippr.feed.defs",
+
"defs": {
+
"clipView": {
+
"type": "object",
+
"description": "A view of a single bookmark (or 'clip').",
+
"required": [
+
"uri",
+
"cid",
+
"author",
+
"record",
+
"indexedAt"
+
],
+
"properties": {
+
"author": {
+
"type": "ref",
+
"description": "A reference to the actor's profile",
+
"ref": "social.clippr.actor.defs#profileView"
+
},
+
"cid": {
+
"type": "string",
+
"description": "The CID of the clip",
+
"format": "cid"
+
},
+
"indexedAt": {
+
"type": "string",
+
"description": "When the tag was first indexed by the AppView",
+
"format": "datetime"
+
},
+
"record": {
+
"type": "unknown",
+
"description": "The raw record of the clip"
+
},
+
"uri": {
+
"type": "string",
+
"description": "The AT-URI of the clip",
+
"format": "at-uri"
+
}
+
}
+
},
+
"tagView": {
+
"type": "object",
+
"description": "A view of a single tag.",
+
"required": [
+
"uri",
+
"cid",
+
"author",
+
"record",
+
"indexedAt"
+
],
+
"properties": {
+
"author": {
+
"type": "ref",
+
"description": "A reference to the actor's profile",
+
"ref": "social.clippr.actor.defs#profileView"
+
},
+
"cid": {
+
"type": "string",
+
"description": "The CID of the tag",
+
"format": "cid"
+
},
+
"indexedAt": {
+
"type": "string",
+
"description": "When the tag was first indexed by the AppView",
+
"format": "datetime"
+
},
+
"record": {
+
"type": "unknown",
+
"description": "The raw record of the tag"
+
},
+
"uri": {
+
"type": "string",
+
"description": "The AT-URI to the tag",
+
"format": "at-uri"
+
}
+
}
+
}
+
}
+
}
+46
crates/jacquard-api/lexicons/social_clippr_feed_getClips.json
···
+
{
+
"lexicon": 1,
+
"id": "social.clippr.feed.getClips",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "Get a list of clips. Does not require auth.",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"uris"
+
],
+
"properties": {
+
"uris": {
+
"type": "array",
+
"description": "List of clip AT-URIs to return hydrated views for",
+
"items": {
+
"type": "string",
+
"format": "at-uri"
+
},
+
"maxLength": 25
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"clips"
+
],
+
"properties": {
+
"clips": {
+
"type": "array",
+
"description": "An array of hydrated clip views",
+
"items": {
+
"type": "ref",
+
"ref": "social.clippr.feed.defs#clipView"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+65
crates/jacquard-api/lexicons/social_clippr_feed_getProfileClips.json
···
+
{
+
"lexicon": 1,
+
"id": "social.clippr.feed.getProfileClips",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "Get a view of a profile's reverse-chronological clips feed. Does not require auth.",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"actor"
+
],
+
"properties": {
+
"actor": {
+
"type": "string",
+
"description": "An actor to get feed data from",
+
"format": "at-identifier"
+
},
+
"cursor": {
+
"type": "string",
+
"description": "A parameter to paginate results"
+
},
+
"filter": {
+
"type": "string",
+
"description": "What types to include in response",
+
"default": "all_clips",
+
"knownValues": [
+
"all_clips",
+
"tagged_clips",
+
"untagged_clips"
+
]
+
},
+
"limit": {
+
"type": "integer",
+
"description": "How many results to return with the query",
+
"default": 50,
+
"minimum": 1,
+
"maximum": 100
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"feed"
+
],
+
"properties": {
+
"cursor": {
+
"type": "string"
+
},
+
"feed": {
+
"type": "array",
+
"items": {
+
"type": "ref",
+
"ref": "social.clippr.feed.defs#clipView"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+55
crates/jacquard-api/lexicons/social_clippr_feed_getProfileTags.json
···
+
{
+
"lexicon": 1,
+
"id": "social.clippr.feed.getProfileTags",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "Get a view of a profile's reverse-chronological clips feed. Does not require auth.",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"actor"
+
],
+
"properties": {
+
"actor": {
+
"type": "string",
+
"description": "An actor to get feed data from",
+
"format": "at-identifier"
+
},
+
"cursor": {
+
"type": "string",
+
"description": "A parameter to paginate results"
+
},
+
"limit": {
+
"type": "integer",
+
"description": "How many results to return with the query",
+
"default": 50,
+
"minimum": 1,
+
"maximum": 100
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"feed"
+
],
+
"properties": {
+
"cursor": {
+
"type": "string"
+
},
+
"feed": {
+
"type": "array",
+
"items": {
+
"type": "ref",
+
"ref": "social.clippr.feed.defs#tagView"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+39
crates/jacquard-api/lexicons/social_clippr_feed_getTagList.json
···
+
{
+
"lexicon": 1,
+
"id": "social.clippr.feed.getTagList",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "Get a user's list of tags. Does not require auth.",
+
"parameters": {
+
"type": "params",
+
"properties": {
+
"actor": {
+
"type": "string",
+
"description": "An actor to fetch the tag list from",
+
"format": "at-identifier"
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"tags"
+
],
+
"properties": {
+
"tags": {
+
"type": "array",
+
"description": "A list of tags and their associated details",
+
"items": {
+
"type": "ref",
+
"ref": "social.clippr.feed.defs#tagView"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+46
crates/jacquard-api/lexicons/social_clippr_feed_getTags.json
···
+
{
+
"lexicon": 1,
+
"id": "social.clippr.feed.getTags",
+
"defs": {
+
"main": {
+
"type": "query",
+
"description": "Get a list of tags. Does not require auth.",
+
"parameters": {
+
"type": "params",
+
"required": [
+
"uris"
+
],
+
"properties": {
+
"uris": {
+
"type": "array",
+
"description": "List of tag AT-URIs to return hydrated views for",
+
"items": {
+
"type": "string",
+
"format": "at-uri"
+
},
+
"maxLength": 25
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"tags"
+
],
+
"properties": {
+
"tags": {
+
"type": "array",
+
"description": "An array of hydrated tag views",
+
"items": {
+
"type": "ref",
+
"ref": "social.clippr.feed.defs#tagView"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+43
crates/jacquard-api/lexicons/social_clippr_feed_tag.json
···
+
{
+
"lexicon": 1,
+
"id": "social.clippr.feed.tag",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A record containing a bookmark tag for organization.",
+
"key": "any",
+
"record": {
+
"type": "object",
+
"required": [
+
"name",
+
"createdAt"
+
],
+
"properties": {
+
"color": {
+
"type": "string",
+
"description": "A hexadecimal color code",
+
"maxLength": 70,
+
"maxGraphemes": 7
+
},
+
"createdAt": {
+
"type": "string",
+
"description": "A client-defined timestamp for the creation of the tag",
+
"format": "datetime"
+
},
+
"description": {
+
"type": "string",
+
"description": "A description of the tag for additional context",
+
"maxLength": 50000,
+
"maxGraphemes": 5000
+
},
+
"name": {
+
"type": "string",
+
"description": "A de-duplicated string containing the name of the tag",
+
"maxLength": 640,
+
"maxGraphemes": 64
+
}
+
}
+
}
+
}
+
}
+
}
+48
crates/jacquard-api/lexicons/social_grain_actor_defs.json
···
+
{
+
"lexicon": 1,
+
"id": "social.grain.actor.defs",
+
"defs": {
+
"profileView": {
+
"type": "object",
+
"required": [
+
"did",
+
"handle"
+
],
+
"properties": {
+
"avatar": {
+
"type": "string",
+
"format": "uri"
+
},
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"description": {
+
"type": "string",
+
"maxLength": 2560,
+
"maxGraphemes": 256
+
},
+
"did": {
+
"type": "string",
+
"format": "did"
+
},
+
"displayName": {
+
"type": "string",
+
"maxLength": 640,
+
"maxGraphemes": 64
+
},
+
"handle": {
+
"type": "string",
+
"format": "handle"
+
},
+
"labels": {
+
"type": "array",
+
"items": {
+
"type": "ref",
+
"ref": "com.atproto.label.defs#label"
+
}
+
}
+
}
+
}
+
}
+
}
+40
crates/jacquard-api/lexicons/social_grain_actor_profile.json
···
+
{
+
"lexicon": 1,
+
"id": "social.grain.actor.profile",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A declaration of a basic account profile.",
+
"key": "literal:self",
+
"record": {
+
"type": "object",
+
"properties": {
+
"avatar": {
+
"type": "blob",
+
"description": "Small image to be displayed next to posts from account. AKA, 'profile picture'",
+
"accept": [
+
"image/png",
+
"image/jpeg"
+
],
+
"maxSize": 1000000
+
},
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"description": {
+
"type": "string",
+
"description": "Free-form profile description text.",
+
"maxLength": 2560,
+
"maxGraphemes": 256
+
},
+
"displayName": {
+
"type": "string",
+
"maxLength": 640,
+
"maxGraphemes": 64
+
}
+
}
+
}
+
}
+
}
+
}
+24
crates/jacquard-api/lexicons/social_grain_defs.json
···
+
{
+
"lexicon": 1,
+
"id": "social.grain.defs",
+
"defs": {
+
"aspectRatio": {
+
"type": "object",
+
"description": "width:height represents an aspect ratio. It may be approximate, and may not correspond to absolute dimensions in any given unit.",
+
"required": [
+
"width",
+
"height"
+
],
+
"properties": {
+
"height": {
+
"type": "integer",
+
"minimum": 1
+
},
+
"width": {
+
"type": "integer",
+
"minimum": 1
+
}
+
}
+
}
+
}
+
}
+38
crates/jacquard-api/lexicons/social_grain_gallery.json
···
+
{
+
"lexicon": 1,
+
"id": "social.grain.gallery",
+
"defs": {
+
"main": {
+
"type": "record",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"required": [
+
"title",
+
"createdAt"
+
],
+
"properties": {
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"description": {
+
"type": "string",
+
"maxLength": 1000
+
},
+
"labels": {
+
"type": "union",
+
"description": "Self-label values for this post. Effectively content warnings.",
+
"refs": [
+
"com.atproto.label.defs#selfLabels"
+
]
+
},
+
"title": {
+
"type": "string",
+
"maxLength": 100
+
}
+
}
+
}
+
}
+
}
+
}
+38
crates/jacquard-api/lexicons/social_grain_photo.json
···
+
{
+
"lexicon": 1,
+
"id": "social.grain.photo",
+
"defs": {
+
"main": {
+
"type": "record",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"required": [
+
"photo",
+
"alt"
+
],
+
"properties": {
+
"alt": {
+
"type": "string",
+
"description": "Alt text description of the image, for accessibility."
+
},
+
"aspectRatio": {
+
"type": "ref",
+
"ref": "social.grain.defs#aspectRatio"
+
},
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"photo": {
+
"type": "blob",
+
"accept": [
+
"image/*"
+
],
+
"maxSize": 1000000
+
}
+
}
+
}
+
}
+
}
+
}
+104
crates/jacquard-api/lexicons/social_grain_photo_defs.json
···
+
{
+
"lexicon": 1,
+
"id": "social.grain.photo.defs",
+
"defs": {
+
"exifView": {
+
"type": "object",
+
"required": [
+
"photo",
+
"createdAt"
+
],
+
"properties": {
+
"cid": {
+
"type": "string",
+
"format": "cid"
+
},
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"dateTimeOriginal": {
+
"type": "string"
+
},
+
"exposureTime": {
+
"type": "string"
+
},
+
"fNumber": {
+
"type": "string"
+
},
+
"flash": {
+
"type": "string"
+
},
+
"focalLengthIn35mmFormat": {
+
"type": "string"
+
},
+
"iSO": {
+
"type": "integer"
+
},
+
"lensMake": {
+
"type": "string"
+
},
+
"lensModel": {
+
"type": "string"
+
},
+
"make": {
+
"type": "string"
+
},
+
"model": {
+
"type": "string"
+
},
+
"photo": {
+
"type": "string",
+
"format": "at-uri"
+
},
+
"uri": {
+
"type": "string",
+
"format": "at-uri"
+
}
+
}
+
},
+
"photoView": {
+
"type": "object",
+
"required": [
+
"uri",
+
"cid",
+
"thumb",
+
"fullsize",
+
"alt"
+
],
+
"properties": {
+
"alt": {
+
"type": "string",
+
"description": "Alt text description of the image, for accessibility."
+
},
+
"aspectRatio": {
+
"type": "ref",
+
"ref": "social.grain.defs#aspectRatio"
+
},
+
"cid": {
+
"type": "string",
+
"format": "cid"
+
},
+
"exif": {
+
"type": "ref",
+
"description": "EXIF metadata for the photo, if available.",
+
"ref": "social.grain.photo.defs#exifView"
+
},
+
"fullsize": {
+
"type": "string",
+
"description": "Fully-qualified URL where a large version of the image can be fetched. May or may not be the exact original blob. For example, CDN location provided by the App View.",
+
"format": "uri"
+
},
+
"thumb": {
+
"type": "string",
+
"description": "Fully-qualified URL where a thumbnail of the image can be fetched. For example, CDN location provided by the App View.",
+
"format": "uri"
+
},
+
"uri": {
+
"type": "string",
+
"format": "at-uri"
+
}
+
}
+
}
+
}
+
}
+59
crates/jacquard-api/lexicons/social_grain_photo_exif.json
···
+
{
+
"lexicon": 1,
+
"id": "social.grain.photo.exif",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "Basic EXIF metadata for a photo. Integers are scaled by 1000000 to accommodate decimal values and potentially other tags in the future.",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"required": [
+
"photo",
+
"createdAt"
+
],
+
"properties": {
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"dateTimeOriginal": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"exposureTime": {
+
"type": "integer"
+
},
+
"fNumber": {
+
"type": "integer"
+
},
+
"flash": {
+
"type": "string"
+
},
+
"focalLengthIn35mmFormat": {
+
"type": "integer"
+
},
+
"iSO": {
+
"type": "integer"
+
},
+
"lensMake": {
+
"type": "string"
+
},
+
"lensModel": {
+
"type": "string"
+
},
+
"make": {
+
"type": "string"
+
},
+
"model": {
+
"type": "string"
+
},
+
"photo": {
+
"type": "string",
+
"format": "at-uri"
+
}
+
}
+
}
+
}
+
}
+
}
+75
crates/jacquard-api/lexicons/social_pmsky_proposal.json
···
+
{
+
"lexicon": 1,
+
"id": "social.pmsky.proposal",
+
"defs": {
+
"main": {
+
"type": "record",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"description": "A proposed moderation action (e.g. adding a label or annotation to a post). Refers to some other resource via URI (e.g. an atproto post). Superset of 'com.atproto.proposal.defs#label.",
+
"required": [
+
"typ",
+
"src",
+
"uri",
+
"val",
+
"cts"
+
],
+
"properties": {
+
"aid": {
+
"type": "string",
+
"description": "The persistent, anonymous identifier for the user creating the proposal."
+
},
+
"cid": {
+
"type": "string",
+
"description": "Optionally, CID specifying the specific version of 'uri' resource this proposal applies to.",
+
"format": "cid"
+
},
+
"cts": {
+
"type": "string",
+
"description": "Timestamp when this proposal was created.",
+
"format": "datetime"
+
},
+
"note": {
+
"type": "string",
+
"description": "For 'label' proposals where 'val' is 'needs-context', the full text of any proposed annotation (e.g. community note) to be shown below the post."
+
},
+
"reasons": {
+
"type": "array",
+
"description": "An optional array of predefined reasons justifying the moderation action.",
+
"items": {
+
"type": "string"
+
}
+
},
+
"sig": {
+
"type": "bytes",
+
"description": "Signature of dag-cbor encoded proposal."
+
},
+
"src": {
+
"type": "string",
+
"description": "DID of the actor who created this proposal.",
+
"format": "did"
+
},
+
"typ": {
+
"type": "string",
+
"description": "The type of moderation action being proposed. Currently expected values are 'allowed_user' or 'label'"
+
},
+
"uri": {
+
"type": "string",
+
"description": "AT URI of the record, repository (account), or other resource that this proposal applies to.",
+
"format": "uri"
+
},
+
"val": {
+
"type": "string",
+
"description": "For 'label' proposals, the short string name of the value of the proposed label.",
+
"maxLength": 128
+
},
+
"ver": {
+
"type": "integer",
+
"description": "The AT Protocol version of the proposal object."
+
}
+
}
+
}
+
}
+
}
+
}
+61
crates/jacquard-api/lexicons/social_pmsky_vote.json
···
+
{
+
"lexicon": 1,
+
"id": "social.pmsky.vote",
+
"defs": {
+
"main": {
+
"type": "record",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"description": "A vote record, representing a user's approval or disapproval of the referenced resource. The resource my be a proposal, a post, a web page, or anything that can be agreed or disagreed with.",
+
"required": [
+
"src",
+
"uri",
+
"val",
+
"cts"
+
],
+
"properties": {
+
"aid": {
+
"type": "string",
+
"description": "The persistent, anonymous identifier for the user casting the vote."
+
},
+
"cid": {
+
"type": "string",
+
"description": "Optionally, CID specifying the specific version of 'uri' resource this vote applies to.",
+
"format": "cid"
+
},
+
"cts": {
+
"type": "string",
+
"description": "Timestamp when this vote was created.",
+
"format": "datetime"
+
},
+
"reasons": {
+
"type": "array",
+
"description": "An optional array of predefined reasons justifying the vote.",
+
"items": {
+
"type": "string"
+
}
+
},
+
"sig": {
+
"type": "bytes",
+
"description": "Signature of dag-cbor encoded vote."
+
},
+
"src": {
+
"type": "string",
+
"description": "the account creating the vote, not necessarily the same as the user who voted",
+
"format": "did"
+
},
+
"uri": {
+
"type": "string",
+
"description": "AT URI of the record, repository (account), or other resource that this vote applies to.",
+
"format": "uri"
+
},
+
"val": {
+
"type": "integer",
+
"description": "The value of the vote. The exact meaning depends on what is being voted on, but generally '+1' means 'approval', -1 means 'disapproval', and 0 indicates 'neutrality'."
+
}
+
}
+
}
+
}
+
}
+
}
-284
crates/jacquard-api/lexicons/uk_ewancroft_site_info.json
···
-
{
-
"lexicon": 1,
-
"id": "uk.ewancroft.site.info",
-
"defs": {
-
"main": {
-
"type": "record",
-
"description": "Information about the website.",
-
"key": "literal:self",
-
"record": {
-
"type": "object",
-
"properties": {
-
"additionalInfo": {
-
"type": "object",
-
"description": "Additional flexible information about the website.",
-
"properties": {
-
"purpose": {
-
"type": "string",
-
"description": "Website purpose or mission statement.",
-
"maxLength": 10000,
-
"maxGraphemes": 1000
-
},
-
"sectionLicense": {
-
"type": "array",
-
"description": "License information for specific content sections, such as a blog.",
-
"items": {
-
"type": "object",
-
"properties": {
-
"name": {
-
"type": "string",
-
"maxLength": 1000,
-
"maxGraphemes": 100
-
},
-
"section": {
-
"type": "string",
-
"maxLength": 1000,
-
"maxGraphemes": 100
-
},
-
"url": {
-
"type": "string",
-
"format": "uri"
-
}
-
}
-
}
-
},
-
"websiteBirthYear": {
-
"type": "integer",
-
"description": "The year the website was first launched or created.",
-
"minimum": 1990
-
}
-
}
-
},
-
"credits": {
-
"type": "array",
-
"description": "Credits for assets, fonts, libraries, or other resources used.",
-
"items": {
-
"type": "object",
-
"required": [
-
"name",
-
"type"
-
],
-
"properties": {
-
"author": {
-
"type": "string",
-
"maxLength": 1000,
-
"maxGraphemes": 100
-
},
-
"description": {
-
"type": "string",
-
"maxLength": 5000,
-
"maxGraphemes": 500
-
},
-
"license": {
-
"type": "object",
-
"properties": {
-
"name": {
-
"type": "string",
-
"maxLength": 1000,
-
"maxGraphemes": 100
-
},
-
"url": {
-
"type": "string",
-
"format": "uri"
-
}
-
}
-
},
-
"name": {
-
"type": "string",
-
"maxLength": 1000,
-
"maxGraphemes": 100
-
},
-
"section": {
-
"type": "string",
-
"maxLength": 1000,
-
"maxGraphemes": 100
-
},
-
"type": {
-
"type": "string",
-
"description": "Type of credit (font, library, asset, etc.)",
-
"maxLength": 500,
-
"maxGraphemes": 50
-
},
-
"url": {
-
"type": "string",
-
"format": "uri"
-
}
-
}
-
},
-
"maxLength": 50
-
},
-
"openSourceInfo": {
-
"type": "object",
-
"description": "Information about the open-source nature of the website.",
-
"properties": {
-
"basedOn": {
-
"type": "array",
-
"description": "Projects or libraries this is based on or forked from.",
-
"items": {
-
"type": "object",
-
"required": [
-
"name"
-
],
-
"properties": {
-
"description": {
-
"type": "string",
-
"maxLength": 5000,
-
"maxGraphemes": 500
-
},
-
"name": {
-
"type": "string",
-
"maxLength": 1000,
-
"maxGraphemes": 100
-
},
-
"section": {
-
"type": "string",
-
"maxLength": 1000,
-
"maxGraphemes": 100
-
},
-
"type": {
-
"type": "string",
-
"description": "Type of relationship (fork, inspiration, dependency, etc.)",
-
"maxLength": 500,
-
"maxGraphemes": 50
-
},
-
"url": {
-
"type": "string",
-
"format": "uri"
-
}
-
}
-
},
-
"maxLength": 20
-
},
-
"description": {
-
"type": "string",
-
"description": "General description of the open-source nature.",
-
"maxLength": 20000,
-
"maxGraphemes": 2000
-
},
-
"license": {
-
"type": "object",
-
"description": "License information for the project.",
-
"properties": {
-
"name": {
-
"type": "string",
-
"maxLength": 1000,
-
"maxGraphemes": 100
-
},
-
"url": {
-
"type": "string",
-
"format": "uri"
-
}
-
}
-
},
-
"relatedServices": {
-
"type": "array",
-
"description": "Related services or platforms.",
-
"items": {
-
"type": "object",
-
"required": [
-
"name"
-
],
-
"properties": {
-
"description": {
-
"type": "string",
-
"maxLength": 5000,
-
"maxGraphemes": 500
-
},
-
"name": {
-
"type": "string",
-
"maxLength": 1000,
-
"maxGraphemes": 100
-
},
-
"relationship": {
-
"type": "string",
-
"description": "How this service relates to the website",
-
"maxLength": 1000,
-
"maxGraphemes": 100
-
},
-
"section": {
-
"type": "string",
-
"maxLength": 1000,
-
"maxGraphemes": 100
-
},
-
"url": {
-
"type": "string",
-
"format": "uri"
-
}
-
}
-
},
-
"maxLength": 20
-
},
-
"repositories": {
-
"type": "array",
-
"description": "Source code repositories.",
-
"items": {
-
"type": "object",
-
"required": [
-
"url"
-
],
-
"properties": {
-
"description": {
-
"type": "string",
-
"maxLength": 2000,
-
"maxGraphemes": 200
-
},
-
"platform": {
-
"type": "string",
-
"description": "Platform name (github, gitlab, tangled, etc.)",
-
"maxLength": 500,
-
"maxGraphemes": 50
-
},
-
"type": {
-
"type": "string",
-
"description": "Repository type (primary, mirror, fork, etc.)",
-
"maxLength": 500,
-
"maxGraphemes": 50
-
},
-
"url": {
-
"type": "string",
-
"format": "uri"
-
}
-
}
-
},
-
"maxLength": 20
-
}
-
}
-
},
-
"privacyStatement": {
-
"type": "string",
-
"description": "A statement about website privacy and data handling.",
-
"maxLength": 50000,
-
"maxGraphemes": 5000
-
},
-
"technologyStack": {
-
"type": "array",
-
"description": "A list of technologies used to build the website.",
-
"items": {
-
"type": "object",
-
"required": [
-
"name"
-
],
-
"properties": {
-
"description": {
-
"type": "string",
-
"maxLength": 5000,
-
"maxGraphemes": 500
-
},
-
"name": {
-
"type": "string",
-
"maxLength": 1000,
-
"maxGraphemes": 100
-
},
-
"url": {
-
"type": "string",
-
"format": "uri"
-
}
-
}
-
},
-
"maxLength": 50
-
}
-
}
-
}
-
}
-
}
-
}
-50
crates/jacquard-api/lexicons/uk_ewancroft_snake_score.json
···
-
{
-
"lexicon": 1,
-
"id": "uk.ewancroft.snake.score",
-
"defs": {
-
"main": {
-
"type": "record",
-
"description": "A validated record of a user's score in the Snake game.",
-
"key": "tid",
-
"record": {
-
"type": "object",
-
"required": [
-
"score",
-
"createdAt"
-
],
-
"properties": {
-
"createdAt": {
-
"type": "string",
-
"description": "When the score was achieved",
-
"format": "datetime"
-
},
-
"gameProof": {
-
"type": "object",
-
"description": "Validation proof to prevent score manipulation",
-
"properties": {
-
"actionCount": {
-
"type": "integer",
-
"description": "Number of recorded game actions",
-
"minimum": 2
-
},
-
"checksum": {
-
"type": "string",
-
"description": "Cryptographic checksum of game actions"
-
},
-
"duration": {
-
"type": "integer",
-
"description": "Game duration in milliseconds",
-
"minimum": 1000
-
}
-
}
-
},
-
"score": {
-
"type": "integer",
-
"description": "The player's final score",
-
"minimum": 0
-
}
-
}
-
}
-
}
-
}
-
}
+57
crates/jacquard-api/lexicons/uk_skyblur_post.json
···
+
{
+
"lexicon": 1,
+
"id": "uk.skyblur.post",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "Record containing a Skyblur post.",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"required": [
+
"text",
+
"createdAt",
+
"uri",
+
"visibility"
+
],
+
"properties": {
+
"additional": {
+
"type": "string",
+
"description": "The post additional contents.",
+
"maxLength": 100000,
+
"maxGraphemes": 10000
+
},
+
"createdAt": {
+
"type": "string",
+
"description": "Created date assigned by client",
+
"format": "datetime"
+
},
+
"encryptBody": {
+
"type": "blob",
+
"description": "Encrypted post body. It shoud be decrypted by the client with AES-256."
+
},
+
"text": {
+
"type": "string",
+
"description": "The post main contents. Blurred text must be enclosed in brackets [].",
+
"maxLength": 3000,
+
"maxGraphemes": 300
+
},
+
"uri": {
+
"type": "string",
+
"format": "at-uri"
+
},
+
"visibility": {
+
"type": "string",
+
"description": "For 'password', the text only contains blurred text, and additional is always empty. The unblurred text and additional are included in the encryptBody.",
+
"maxLength": 100,
+
"maxGraphemes": 10,
+
"enum": [
+
"public",
+
"password"
+
]
+
}
+
}
+
}
+
}
+
}
+
}
+60
crates/jacquard-api/lexicons/uk_skyblur_post_decryptByCid.json
···
+
{
+
"lexicon": 1,
+
"id": "uk.skyblur.post.decryptByCid",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"description": "Decrypting the post by blob cid.",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"pds",
+
"repo",
+
"cid",
+
"password"
+
],
+
"properties": {
+
"cid": {
+
"type": "string",
+
"format": "cid"
+
},
+
"password": {
+
"type": "string"
+
},
+
"pds": {
+
"type": "string",
+
"format": "uri"
+
},
+
"repo": {
+
"type": "string",
+
"format": "did"
+
}
+
}
+
}
+
},
+
"output": {
+
"description": "Returns the encrypted result.",
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"text"
+
],
+
"properties": {
+
"additional": {
+
"type": "string"
+
},
+
"message": {
+
"type": "string"
+
},
+
"text": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+46
crates/jacquard-api/lexicons/uk_skyblur_post_encrypt.json
···
+
{
+
"lexicon": 1,
+
"id": "uk.skyblur.post.encrypt",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"description": "Encrypting the post.",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"body",
+
"password"
+
],
+
"properties": {
+
"body": {
+
"type": "string"
+
},
+
"password": {
+
"type": "string"
+
}
+
}
+
}
+
},
+
"output": {
+
"description": "Returns the encrypted result.",
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"body"
+
],
+
"properties": {
+
"body": {
+
"type": "string"
+
},
+
"message": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+50
crates/jacquard-api/lexicons/uk_skyblur_post_getPost.json
···
+
{
+
"lexicon": 1,
+
"id": "uk.skyblur.post.getPost",
+
"defs": {
+
"main": {
+
"type": "procedure",
+
"description": "Get Skyblur post. If the specified post is password-protected, you can retrieve the unlocked content by providing the password.",
+
"input": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"uri"
+
],
+
"properties": {
+
"password": {
+
"type": "string",
+
"description": "If the specified uri is password-protected, please provide the password. If no password is specified, the non-protected content will be returned."
+
},
+
"uri": {
+
"type": "string",
+
"description": "Skyblur post at-uri. It shoud be uk.skyblur.post collection.",
+
"format": "at-uri"
+
}
+
}
+
}
+
},
+
"output": {
+
"encoding": "application/json",
+
"schema": {
+
"type": "object",
+
"required": [
+
"text"
+
],
+
"properties": {
+
"additional": {
+
"type": "string"
+
},
+
"message": {
+
"type": "string"
+
},
+
"text": {
+
"type": "string"
+
}
+
}
+
}
+
}
+
}
+
}
+
}
+43
crates/jacquard-api/lexicons/uk_skyblur_preference.json
···
+
{
+
"lexicon": 1,
+
"id": "uk.skyblur.preference",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "A declaration of a Skyblur account.",
+
"key": "literal:self",
+
"record": {
+
"type": "object",
+
"required": [
+
"myPage"
+
],
+
"properties": {
+
"myPage": {
+
"type": "union",
+
"refs": [
+
"uk.skyblur.preference#myPage"
+
]
+
}
+
}
+
}
+
},
+
"myPage": {
+
"type": "object",
+
"required": [
+
"isUseMyPage"
+
],
+
"properties": {
+
"description": {
+
"type": "string",
+
"description": "Define the description displayed on MyPage.",
+
"maxLength": 10000,
+
"maxGraphemes": 100000
+
},
+
"isUseMyPage": {
+
"type": "boolean",
+
"description": "If this item is true, MyPage will be displayed."
+
}
+
}
+
}
+
}
+
}
+41
crates/jacquard-api/lexicons/us_polhem_blog_content.json
···
+
{
+
"lexicon": 1,
+
"id": "us.polhem.blog.content",
+
"description": "Generic blocks of web content for my personal blog (https://polhem.us)",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "Record describing a page content block.",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"required": [
+
"content",
+
"slug",
+
"createdAt"
+
],
+
"properties": {
+
"content": {
+
"type": "string",
+
"maxLength": 100000
+
},
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"images": {
+
"type": "array",
+
"items": {
+
"type": "ref",
+
"ref": "us.polhem.blog.image"
+
}
+
},
+
"slug": {
+
"type": "string",
+
"maxLength": 100
+
}
+
}
+
}
+
}
+
}
+
}
+25
crates/jacquard-api/lexicons/us_polhem_blog_defs.json
···
+
{
+
"lexicon": 1,
+
"id": "us.polhem.blog.defs",
+
"description": "",
+
"defs": {
+
"aspectRatio": {
+
"type": "object",
+
"description": "width:height represents an aspect ratio. It may be approximate, and may not correspond to absolute dimensions in any given unit.",
+
"required": [
+
"width",
+
"height"
+
],
+
"properties": {
+
"height": {
+
"type": "integer",
+
"minimum": 1
+
},
+
"width": {
+
"type": "integer",
+
"minimum": 1
+
}
+
}
+
}
+
}
+
}
+72
crates/jacquard-api/lexicons/us_polhem_blog_post.json
···
+
{
+
"lexicon": 1,
+
"id": "us.polhem.blog.post",
+
"description": "Posts on my personal blog (https://polhem.us)",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "Record describing a blog post.",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"required": [
+
"title",
+
"content",
+
"slug",
+
"createdAt"
+
],
+
"properties": {
+
"content": {
+
"type": "string",
+
"maxLength": 100000
+
},
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"excerpt": {
+
"type": "string",
+
"maxLength": 1000
+
},
+
"featuredImage": {
+
"type": "ref",
+
"ref": "app.bsky.embed.images#image"
+
},
+
"images": {
+
"type": "array",
+
"items": {
+
"type": "ref",
+
"ref": "app.bsky.embed.images#image"
+
}
+
},
+
"slug": {
+
"type": "string",
+
"maxLength": 100
+
},
+
"tags": {
+
"type": "array",
+
"items": {
+
"type": "string",
+
"description": "Reference (AT-URI) to a tag record (us.polhem.blog.tag).",
+
"format": "at-uri"
+
}
+
},
+
"title": {
+
"type": "string",
+
"maxLength": 1000
+
},
+
"visibility": {
+
"type": "string",
+
"description": "Tells the visibility of the article to AppView.",
+
"default": "public",
+
"enum": [
+
"public",
+
"url",
+
"author"
+
]
+
}
+
}
+
}
+
}
+
}
+
}
+39
crates/jacquard-api/lexicons/us_polhem_blog_tag.json
···
+
{
+
"lexicon": 1,
+
"id": "us.polhem.blog.tag",
+
"description": "Tags for posts on my personal blog (https://polhem.us)",
+
"defs": {
+
"main": {
+
"type": "record",
+
"description": "Record describing a blog tag.",
+
"key": "tid",
+
"record": {
+
"type": "object",
+
"required": [
+
"name",
+
"slug",
+
"description",
+
"createdAt"
+
],
+
"properties": {
+
"createdAt": {
+
"type": "string",
+
"format": "datetime"
+
},
+
"description": {
+
"type": "string",
+
"maxLength": 100000
+
},
+
"name": {
+
"type": "string",
+
"maxLength": 100
+
},
+
"slug": {
+
"type": "string",
+
"maxLength": 100
+
}
+
}
+
}
+
}
+
}
+
}
+1 -1
crates/jacquard-api/lexicons/xyz_autonomylab_status.json crates/jacquard-api/lexicons/net_aftertheinter_coolthingtwo.json
···
{
"lexicon": 1,
-
"id": "xyz.autonomylab.status",
+
"id": "net.aftertheinter.coolthingtwo",
"defs": {
"main": {
"type": "record",
+8
crates/jacquard-api/src/app_blebbit/authr.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod folder;
+
pub mod group;
+
pub mod page;
+57
crates/jacquard-api/src/app_blebbit/authr/folder.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.folder.defs
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod create_folder;
+
pub mod create_folder_relationship;
+
pub mod delete_folder;
+
pub mod delete_folder_relationship;
+
pub mod get_folder;
+
pub mod get_folders;
+
pub mod record;
+
pub mod update_folder;
+
pub mod update_folder_relationship;
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct FolderForm<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct FolderView<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cuid: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
}
+87
crates/jacquard-api/src/app_blebbit/authr/folder/create_folder.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.folder.createFolder
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct CreateFolder<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct CreateFolderOutput<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cuid: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
}
+
+
///Response type for
+
///app.blebbit.authr.folder.createFolder
+
pub struct CreateFolderResponse;
+
impl jacquard_common::xrpc::XrpcResp for CreateFolderResponse {
+
const NSID: &'static str = "app.blebbit.authr.folder.createFolder";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = CreateFolderOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for CreateFolder<'de> {
+
const NSID: &'static str = "app.blebbit.authr.folder.createFolder";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = CreateFolderResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.folder.createFolder
+
pub struct CreateFolderRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CreateFolderRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.folder.createFolder";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = CreateFolder<'de>;
+
type Response = CreateFolderResponse;
+
}
+68
crates/jacquard-api/src/app_blebbit/authr/folder/create_folder_relationship.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.folder.createFolderRelationship
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct CreateFolderRelationship<'a> {
+
#[serde(borrow)]
+
#[builder(into)]
+
pub relation: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub resource: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub subject: jacquard_common::CowStr<'a>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
///Response type for
+
///app.blebbit.authr.folder.createFolderRelationship
+
pub struct CreateFolderRelationshipResponse;
+
impl jacquard_common::xrpc::XrpcResp for CreateFolderRelationshipResponse {
+
const NSID: &'static str = "app.blebbit.authr.folder.createFolderRelationship";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = ();
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for CreateFolderRelationship<'de> {
+
const NSID: &'static str = "app.blebbit.authr.folder.createFolderRelationship";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = CreateFolderRelationshipResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.folder.createFolderRelationship
+
pub struct CreateFolderRelationshipRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CreateFolderRelationshipRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.folder.createFolderRelationship";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = CreateFolderRelationship<'de>;
+
type Response = CreateFolderRelationshipResponse;
+
}
+67
crates/jacquard-api/src/app_blebbit/authr/folder/delete_folder.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.folder.deleteFolder
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct DeleteFolderParams<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub id: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
/// XRPC request marker type
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
+
pub struct DeleteFolder;
+
///Response type for
+
///app.blebbit.authr.folder.deleteFolder
+
pub struct DeleteFolderResponse;
+
impl jacquard_common::xrpc::XrpcResp for DeleteFolderResponse {
+
const NSID: &'static str = "app.blebbit.authr.folder.deleteFolder";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = ();
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for DeleteFolder {
+
const NSID: &'static str = "app.blebbit.authr.folder.deleteFolder";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = DeleteFolderResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.folder.deleteFolder
+
pub struct DeleteFolderRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeleteFolderRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.folder.deleteFolder";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DeleteFolder;
+
type Response = DeleteFolderResponse;
+
}
+69
crates/jacquard-api/src/app_blebbit/authr/folder/delete_folder_relationship.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.folder.deleteFolderRelationship
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct DeleteFolderRelationship<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub relation: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub resource: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub subject: jacquard_common::CowStr<'a>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
///Response type for
+
///app.blebbit.authr.folder.deleteFolderRelationship
+
pub struct DeleteFolderRelationshipResponse;
+
impl jacquard_common::xrpc::XrpcResp for DeleteFolderRelationshipResponse {
+
const NSID: &'static str = "app.blebbit.authr.folder.deleteFolderRelationship";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = ();
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for DeleteFolderRelationship<'de> {
+
const NSID: &'static str = "app.blebbit.authr.folder.deleteFolderRelationship";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = DeleteFolderRelationshipResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.folder.deleteFolderRelationship
+
pub struct DeleteFolderRelationshipRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeleteFolderRelationshipRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.folder.deleteFolderRelationship";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DeleteFolderRelationship<'de>;
+
type Response = DeleteFolderRelationshipResponse;
+
}
+72
crates/jacquard-api/src/app_blebbit/authr/folder/get_folder.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.folder.getFolder
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetFolder<'a> {
+
#[serde(borrow)]
+
#[builder(into)]
+
pub id: jacquard_common::CowStr<'a>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetFolderOutput<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cuid: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
}
+
+
///Response type for
+
///app.blebbit.authr.folder.getFolder
+
pub struct GetFolderResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetFolderResponse {
+
const NSID: &'static str = "app.blebbit.authr.folder.getFolder";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetFolderOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetFolder<'de> {
+
const NSID: &'static str = "app.blebbit.authr.folder.getFolder";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetFolderResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.folder.getFolder
+
pub struct GetFolderRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetFolderRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.folder.getFolder";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetFolder<'de>;
+
type Response = GetFolderResponse;
+
}
+72
crates/jacquard-api/src/app_blebbit/authr/folder/get_folders.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.folder.getFolders
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetFolders<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub cursor: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub limit: std::option::Option<i64>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetFoldersOutput<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub folders: std::option::Option<
+
Vec<crate::app_blebbit::authr::folder::FolderView<'a>>,
+
>,
+
}
+
+
///Response type for
+
///app.blebbit.authr.folder.getFolders
+
pub struct GetFoldersResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetFoldersResponse {
+
const NSID: &'static str = "app.blebbit.authr.folder.getFolders";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetFoldersOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetFolders<'de> {
+
const NSID: &'static str = "app.blebbit.authr.folder.getFolders";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetFoldersResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.folder.getFolders
+
pub struct GetFoldersRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetFoldersRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.folder.getFolders";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetFolders<'de>;
+
type Response = GetFoldersResponse;
+
}
+32
crates/jacquard-api/src/app_blebbit/authr/folder/record.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.folder.record
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Record<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cuid: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Record<'_> {
+
const NSID: &'static str = "app.blebbit.authr.folder.record";
+
}
+106
crates/jacquard-api/src/app_blebbit/authr/folder/update_folder.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.folder.updateFolder
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct UpdateFolderParams<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub id: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct UpdateFolder<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct UpdateFolderOutput<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cuid: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
}
+
+
///Response type for
+
///app.blebbit.authr.folder.updateFolder
+
pub struct UpdateFolderResponse;
+
impl jacquard_common::xrpc::XrpcResp for UpdateFolderResponse {
+
const NSID: &'static str = "app.blebbit.authr.folder.updateFolder";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = UpdateFolderOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for UpdateFolder<'de> {
+
const NSID: &'static str = "app.blebbit.authr.folder.updateFolder";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = UpdateFolderResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.folder.updateFolder
+
pub struct UpdateFolderRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateFolderRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.folder.updateFolder";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateFolder<'de>;
+
type Response = UpdateFolderResponse;
+
}
+68
crates/jacquard-api/src/app_blebbit/authr/folder/update_folder_relationship.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.folder.updateFolderRelationship
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct UpdateFolderRelationship<'a> {
+
#[serde(borrow)]
+
#[builder(into)]
+
pub relation: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub resource: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub subject: jacquard_common::CowStr<'a>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
///Response type for
+
///app.blebbit.authr.folder.updateFolderRelationship
+
pub struct UpdateFolderRelationshipResponse;
+
impl jacquard_common::xrpc::XrpcResp for UpdateFolderRelationshipResponse {
+
const NSID: &'static str = "app.blebbit.authr.folder.updateFolderRelationship";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = ();
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for UpdateFolderRelationship<'de> {
+
const NSID: &'static str = "app.blebbit.authr.folder.updateFolderRelationship";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = UpdateFolderRelationshipResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.folder.updateFolderRelationship
+
pub struct UpdateFolderRelationshipRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateFolderRelationshipRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.folder.updateFolderRelationship";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateFolderRelationship<'de>;
+
type Response = UpdateFolderRelationshipResponse;
+
}
+68
crates/jacquard-api/src/app_blebbit/authr/group.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.group.defs
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod create_group;
+
pub mod create_group_relationship;
+
pub mod delete_group;
+
pub mod delete_group_relationship;
+
pub mod get_group;
+
pub mod get_groups;
+
pub mod record;
+
pub mod update_group;
+
pub mod update_group_relationship;
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GroupForm<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub display: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(borrow)]
+
pub name: jacquard_common::CowStr<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GroupView<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cuid: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub display: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
}
+100
crates/jacquard-api/src/app_blebbit/authr/group/create_group.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.group.createGroup
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct CreateGroup<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub display: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub name: jacquard_common::CowStr<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct CreateGroupOutput<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cuid: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub display: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
}
+
+
///Response type for
+
///app.blebbit.authr.group.createGroup
+
pub struct CreateGroupResponse;
+
impl jacquard_common::xrpc::XrpcResp for CreateGroupResponse {
+
const NSID: &'static str = "app.blebbit.authr.group.createGroup";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = CreateGroupOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for CreateGroup<'de> {
+
const NSID: &'static str = "app.blebbit.authr.group.createGroup";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = CreateGroupResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.group.createGroup
+
pub struct CreateGroupRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CreateGroupRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.group.createGroup";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = CreateGroup<'de>;
+
type Response = CreateGroupResponse;
+
}
+68
crates/jacquard-api/src/app_blebbit/authr/group/create_group_relationship.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.group.createGroupRelationship
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct CreateGroupRelationship<'a> {
+
#[serde(borrow)]
+
#[builder(into)]
+
pub relation: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub resource: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub subject: jacquard_common::CowStr<'a>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
///Response type for
+
///app.blebbit.authr.group.createGroupRelationship
+
pub struct CreateGroupRelationshipResponse;
+
impl jacquard_common::xrpc::XrpcResp for CreateGroupRelationshipResponse {
+
const NSID: &'static str = "app.blebbit.authr.group.createGroupRelationship";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = ();
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for CreateGroupRelationship<'de> {
+
const NSID: &'static str = "app.blebbit.authr.group.createGroupRelationship";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = CreateGroupRelationshipResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.group.createGroupRelationship
+
pub struct CreateGroupRelationshipRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CreateGroupRelationshipRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.group.createGroupRelationship";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = CreateGroupRelationship<'de>;
+
type Response = CreateGroupRelationshipResponse;
+
}
+67
crates/jacquard-api/src/app_blebbit/authr/group/delete_group.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.group.deleteGroup
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct DeleteGroupParams<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub id: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
/// XRPC request marker type
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
+
pub struct DeleteGroup;
+
///Response type for
+
///app.blebbit.authr.group.deleteGroup
+
pub struct DeleteGroupResponse;
+
impl jacquard_common::xrpc::XrpcResp for DeleteGroupResponse {
+
const NSID: &'static str = "app.blebbit.authr.group.deleteGroup";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = ();
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for DeleteGroup {
+
const NSID: &'static str = "app.blebbit.authr.group.deleteGroup";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = DeleteGroupResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.group.deleteGroup
+
pub struct DeleteGroupRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeleteGroupRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.group.deleteGroup";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DeleteGroup;
+
type Response = DeleteGroupResponse;
+
}
+69
crates/jacquard-api/src/app_blebbit/authr/group/delete_group_relationship.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.group.deleteGroupRelationship
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct DeleteGroupRelationship<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub relation: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub resource: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub subject: jacquard_common::CowStr<'a>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
///Response type for
+
///app.blebbit.authr.group.deleteGroupRelationship
+
pub struct DeleteGroupRelationshipResponse;
+
impl jacquard_common::xrpc::XrpcResp for DeleteGroupRelationshipResponse {
+
const NSID: &'static str = "app.blebbit.authr.group.deleteGroupRelationship";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = ();
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for DeleteGroupRelationship<'de> {
+
const NSID: &'static str = "app.blebbit.authr.group.deleteGroupRelationship";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = DeleteGroupRelationshipResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.group.deleteGroupRelationship
+
pub struct DeleteGroupRelationshipRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeleteGroupRelationshipRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.group.deleteGroupRelationship";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DeleteGroupRelationship<'de>;
+
type Response = DeleteGroupRelationshipResponse;
+
}
+78
crates/jacquard-api/src/app_blebbit/authr/group/get_group.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.group.getGroup
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetGroup<'a> {
+
#[serde(borrow)]
+
#[builder(into)]
+
pub id: jacquard_common::CowStr<'a>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetGroupOutput<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cuid: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub display: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
}
+
+
///Response type for
+
///app.blebbit.authr.group.getGroup
+
pub struct GetGroupResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetGroupResponse {
+
const NSID: &'static str = "app.blebbit.authr.group.getGroup";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetGroupOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetGroup<'de> {
+
const NSID: &'static str = "app.blebbit.authr.group.getGroup";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetGroupResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.group.getGroup
+
pub struct GetGroupRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetGroupRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.group.getGroup";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetGroup<'de>;
+
type Response = GetGroupResponse;
+
}
+72
crates/jacquard-api/src/app_blebbit/authr/group/get_groups.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.group.getGroups
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetGroups<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub cursor: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub limit: std::option::Option<i64>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetGroupsOutput<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub groups: std::option::Option<
+
Vec<crate::app_blebbit::authr::group::GroupView<'a>>,
+
>,
+
}
+
+
///Response type for
+
///app.blebbit.authr.group.getGroups
+
pub struct GetGroupsResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetGroupsResponse {
+
const NSID: &'static str = "app.blebbit.authr.group.getGroups";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetGroupsOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetGroups<'de> {
+
const NSID: &'static str = "app.blebbit.authr.group.getGroups";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetGroupsResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.group.getGroups
+
pub struct GetGroupsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetGroupsRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.group.getGroups";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetGroups<'de>;
+
type Response = GetGroupsResponse;
+
}
+38
crates/jacquard-api/src/app_blebbit/authr/group/record.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.group.record
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Record<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cuid: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub display: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Record<'_> {
+
const NSID: &'static str = "app.blebbit.authr.group.record";
+
}
+119
crates/jacquard-api/src/app_blebbit/authr/group/update_group.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.group.updateGroup
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct UpdateGroupParams<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub id: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct UpdateGroup<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub display: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub name: jacquard_common::CowStr<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct UpdateGroupOutput<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cuid: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub display: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
}
+
+
///Response type for
+
///app.blebbit.authr.group.updateGroup
+
pub struct UpdateGroupResponse;
+
impl jacquard_common::xrpc::XrpcResp for UpdateGroupResponse {
+
const NSID: &'static str = "app.blebbit.authr.group.updateGroup";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = UpdateGroupOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for UpdateGroup<'de> {
+
const NSID: &'static str = "app.blebbit.authr.group.updateGroup";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = UpdateGroupResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.group.updateGroup
+
pub struct UpdateGroupRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateGroupRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.group.updateGroup";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateGroup<'de>;
+
type Response = UpdateGroupResponse;
+
}
+68
crates/jacquard-api/src/app_blebbit/authr/group/update_group_relationship.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.group.updateGroupRelationship
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct UpdateGroupRelationship<'a> {
+
#[serde(borrow)]
+
#[builder(into)]
+
pub relation: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub resource: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub subject: jacquard_common::CowStr<'a>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
///Response type for
+
///app.blebbit.authr.group.updateGroupRelationship
+
pub struct UpdateGroupRelationshipResponse;
+
impl jacquard_common::xrpc::XrpcResp for UpdateGroupRelationshipResponse {
+
const NSID: &'static str = "app.blebbit.authr.group.updateGroupRelationship";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = ();
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for UpdateGroupRelationship<'de> {
+
const NSID: &'static str = "app.blebbit.authr.group.updateGroupRelationship";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = UpdateGroupRelationshipResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.group.updateGroupRelationship
+
pub struct UpdateGroupRelationshipRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateGroupRelationshipRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.group.updateGroupRelationship";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateGroupRelationship<'de>;
+
type Response = UpdateGroupRelationshipResponse;
+
}
+60
crates/jacquard-api/src/app_blebbit/authr/page.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.page.defs
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod create_page;
+
pub mod create_page_relationship;
+
pub mod delete_page;
+
pub mod delete_page_relationship;
+
pub mod get_page;
+
pub mod get_pages;
+
pub mod record;
+
pub mod update_page;
+
pub mod update_page_relationship;
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct PageForm<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct PageView<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub content: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cuid: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
}
+90
crates/jacquard-api/src/app_blebbit/authr/page/create_page.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.page.createPage
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct CreatePage<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct CreatePageOutput<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub content: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cuid: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
}
+
+
///Response type for
+
///app.blebbit.authr.page.createPage
+
pub struct CreatePageResponse;
+
impl jacquard_common::xrpc::XrpcResp for CreatePageResponse {
+
const NSID: &'static str = "app.blebbit.authr.page.createPage";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = CreatePageOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for CreatePage<'de> {
+
const NSID: &'static str = "app.blebbit.authr.page.createPage";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = CreatePageResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.page.createPage
+
pub struct CreatePageRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CreatePageRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.page.createPage";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = CreatePage<'de>;
+
type Response = CreatePageResponse;
+
}
+68
crates/jacquard-api/src/app_blebbit/authr/page/create_page_relationship.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.page.createPageRelationship
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct CreatePageRelationship<'a> {
+
#[serde(borrow)]
+
#[builder(into)]
+
pub relation: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub resource: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub subject: jacquard_common::CowStr<'a>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
///Response type for
+
///app.blebbit.authr.page.createPageRelationship
+
pub struct CreatePageRelationshipResponse;
+
impl jacquard_common::xrpc::XrpcResp for CreatePageRelationshipResponse {
+
const NSID: &'static str = "app.blebbit.authr.page.createPageRelationship";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = ();
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for CreatePageRelationship<'de> {
+
const NSID: &'static str = "app.blebbit.authr.page.createPageRelationship";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = CreatePageRelationshipResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.page.createPageRelationship
+
pub struct CreatePageRelationshipRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CreatePageRelationshipRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.page.createPageRelationship";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = CreatePageRelationship<'de>;
+
type Response = CreatePageRelationshipResponse;
+
}
+67
crates/jacquard-api/src/app_blebbit/authr/page/delete_page.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.page.deletePage
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct DeletePageParams<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub id: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
/// XRPC request marker type
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
+
pub struct DeletePage;
+
///Response type for
+
///app.blebbit.authr.page.deletePage
+
pub struct DeletePageResponse;
+
impl jacquard_common::xrpc::XrpcResp for DeletePageResponse {
+
const NSID: &'static str = "app.blebbit.authr.page.deletePage";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = ();
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for DeletePage {
+
const NSID: &'static str = "app.blebbit.authr.page.deletePage";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = DeletePageResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.page.deletePage
+
pub struct DeletePageRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeletePageRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.page.deletePage";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DeletePage;
+
type Response = DeletePageResponse;
+
}
+69
crates/jacquard-api/src/app_blebbit/authr/page/delete_page_relationship.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.page.deletePageRelationship
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct DeletePageRelationship<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub relation: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub resource: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub subject: jacquard_common::CowStr<'a>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
///Response type for
+
///app.blebbit.authr.page.deletePageRelationship
+
pub struct DeletePageRelationshipResponse;
+
impl jacquard_common::xrpc::XrpcResp for DeletePageRelationshipResponse {
+
const NSID: &'static str = "app.blebbit.authr.page.deletePageRelationship";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = ();
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for DeletePageRelationship<'de> {
+
const NSID: &'static str = "app.blebbit.authr.page.deletePageRelationship";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = DeletePageRelationshipResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.page.deletePageRelationship
+
pub struct DeletePageRelationshipRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeletePageRelationshipRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.page.deletePageRelationship";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DeletePageRelationship<'de>;
+
type Response = DeletePageRelationshipResponse;
+
}
+75
crates/jacquard-api/src/app_blebbit/authr/page/get_page.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.page.getPage
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetPage<'a> {
+
#[serde(borrow)]
+
#[builder(into)]
+
pub id: jacquard_common::CowStr<'a>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetPageOutput<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub content: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cuid: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
}
+
+
///Response type for
+
///app.blebbit.authr.page.getPage
+
pub struct GetPageResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetPageResponse {
+
const NSID: &'static str = "app.blebbit.authr.page.getPage";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetPageOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetPage<'de> {
+
const NSID: &'static str = "app.blebbit.authr.page.getPage";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetPageResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.page.getPage
+
pub struct GetPageRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetPageRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.page.getPage";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetPage<'de>;
+
type Response = GetPageResponse;
+
}
+70
crates/jacquard-api/src/app_blebbit/authr/page/get_pages.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.page.getPages
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetPages<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub cursor: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub limit: std::option::Option<i64>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetPagesOutput<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub pages: std::option::Option<Vec<crate::app_blebbit::authr::page::PageView<'a>>>,
+
}
+
+
///Response type for
+
///app.blebbit.authr.page.getPages
+
pub struct GetPagesResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetPagesResponse {
+
const NSID: &'static str = "app.blebbit.authr.page.getPages";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetPagesOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetPages<'de> {
+
const NSID: &'static str = "app.blebbit.authr.page.getPages";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetPagesResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.page.getPages
+
pub struct GetPagesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetPagesRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.page.getPages";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetPages<'de>;
+
type Response = GetPagesResponse;
+
}
+35
crates/jacquard-api/src/app_blebbit/authr/page/record.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.page.record
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Record<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub content: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cuid: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Record<'_> {
+
const NSID: &'static str = "app.blebbit.authr.page.record";
+
}
+109
crates/jacquard-api/src/app_blebbit/authr/page/update_page.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.page.updatePage
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct UpdatePageParams<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub id: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct UpdatePage<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct UpdatePageOutput<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub content: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cuid: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub public: std::option::Option<bool>,
+
}
+
+
///Response type for
+
///app.blebbit.authr.page.updatePage
+
pub struct UpdatePageResponse;
+
impl jacquard_common::xrpc::XrpcResp for UpdatePageResponse {
+
const NSID: &'static str = "app.blebbit.authr.page.updatePage";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = UpdatePageOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for UpdatePage<'de> {
+
const NSID: &'static str = "app.blebbit.authr.page.updatePage";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = UpdatePageResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.page.updatePage
+
pub struct UpdatePageRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdatePageRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.page.updatePage";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdatePage<'de>;
+
type Response = UpdatePageResponse;
+
}
+68
crates/jacquard-api/src/app_blebbit/authr/page/update_page_relationship.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.blebbit.authr.page.updatePageRelationship
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct UpdatePageRelationship<'a> {
+
#[serde(borrow)]
+
#[builder(into)]
+
pub relation: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub resource: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub subject: jacquard_common::CowStr<'a>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
///Response type for
+
///app.blebbit.authr.page.updatePageRelationship
+
pub struct UpdatePageRelationshipResponse;
+
impl jacquard_common::xrpc::XrpcResp for UpdatePageRelationshipResponse {
+
const NSID: &'static str = "app.blebbit.authr.page.updatePageRelationship";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = ();
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for UpdatePageRelationship<'de> {
+
const NSID: &'static str = "app.blebbit.authr.page.updatePageRelationship";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = UpdatePageRelationshipResponse;
+
}
+
+
///Endpoint type for
+
///app.blebbit.authr.page.updatePageRelationship
+
pub struct UpdatePageRelationshipRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdatePageRelationshipRequest {
+
const PATH: &'static str = "/xrpc/app.blebbit.authr.page.updatePageRelationship";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdatePageRelationship<'de>;
+
type Response = UpdatePageRelationshipResponse;
+
}
+10
crates/jacquard-api/src/app_bsky/actor/get_preferences.rs
···
const NSID: &'static str = "app.bsky.actor.getPreferences";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetPreferencesResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.actor.getPreferences
+
pub struct GetPreferencesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetPreferencesRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.actor.getPreferences";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetPreferences;
+
type Response = GetPreferencesResponse;
}
+10
crates/jacquard-api/src/app_bsky/actor/get_profile.rs
···
const NSID: &'static str = "app.bsky.actor.getProfile";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetProfileResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.actor.getProfile
+
pub struct GetProfileRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetProfileRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.actor.getProfile";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetProfile<'de>;
+
type Response = GetProfileResponse;
}
+10
crates/jacquard-api/src/app_bsky/actor/get_profiles.rs
···
const NSID: &'static str = "app.bsky.actor.getProfiles";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetProfilesResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.actor.getProfiles
+
pub struct GetProfilesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetProfilesRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.actor.getProfiles";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetProfiles<'de>;
+
type Response = GetProfilesResponse;
}
+10
crates/jacquard-api/src/app_bsky/actor/get_suggestions.rs
···
const NSID: &'static str = "app.bsky.actor.getSuggestions";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetSuggestionsResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.actor.getSuggestions
+
pub struct GetSuggestionsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetSuggestionsRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.actor.getSuggestions";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetSuggestions<'de>;
+
type Response = GetSuggestionsResponse;
}
+12
crates/jacquard-api/src/app_bsky/actor/put_preferences.rs
···
"application/json",
);
type Response = PutPreferencesResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.actor.putPreferences
+
pub struct PutPreferencesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for PutPreferencesRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.actor.putPreferences";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = PutPreferences<'de>;
+
type Response = PutPreferencesResponse;
}
+10
crates/jacquard-api/src/app_bsky/actor/search_actors.rs
···
const NSID: &'static str = "app.bsky.actor.searchActors";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = SearchActorsResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.actor.searchActors
+
pub struct SearchActorsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SearchActorsRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.actor.searchActors";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = SearchActors<'de>;
+
type Response = SearchActorsResponse;
}
+10
crates/jacquard-api/src/app_bsky/actor/search_actors_typeahead.rs
···
const NSID: &'static str = "app.bsky.actor.searchActorsTypeahead";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = SearchActorsTypeaheadResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.actor.searchActorsTypeahead
+
pub struct SearchActorsTypeaheadRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SearchActorsTypeaheadRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.actor.searchActorsTypeahead";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = SearchActorsTypeahead<'de>;
+
type Response = SearchActorsTypeaheadResponse;
}
+12
crates/jacquard-api/src/app_bsky/bookmark/create_bookmark.rs
···
"application/json",
);
type Response = CreateBookmarkResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.bookmark.createBookmark
+
pub struct CreateBookmarkRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CreateBookmarkRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.bookmark.createBookmark";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = CreateBookmark<'de>;
+
type Response = CreateBookmarkResponse;
}
+12
crates/jacquard-api/src/app_bsky/bookmark/delete_bookmark.rs
···
"application/json",
);
type Response = DeleteBookmarkResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.bookmark.deleteBookmark
+
pub struct DeleteBookmarkRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeleteBookmarkRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.bookmark.deleteBookmark";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DeleteBookmark<'de>;
+
type Response = DeleteBookmarkResponse;
}
+10
crates/jacquard-api/src/app_bsky/bookmark/get_bookmarks.rs
···
const NSID: &'static str = "app.bsky.bookmark.getBookmarks";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetBookmarksResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.bookmark.getBookmarks
+
pub struct GetBookmarksRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetBookmarksRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.bookmark.getBookmarks";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetBookmarks<'de>;
+
type Response = GetBookmarksResponse;
}
+20 -1
crates/jacquard-api/src/app_bsky/feed/describe_feed_generator.rs
···
}
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct DescribeFeedGenerator;
///Response type for
///app.bsky.feed.describeFeedGenerator
···
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for DescribeFeedGenerator {
const NSID: &'static str = "app.bsky.feed.describeFeedGenerator";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = DescribeFeedGeneratorResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.feed.describeFeedGenerator
+
pub struct DescribeFeedGeneratorRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DescribeFeedGeneratorRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.feed.describeFeedGenerator";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = DescribeFeedGenerator;
type Response = DescribeFeedGeneratorResponse;
}
+10
crates/jacquard-api/src/app_bsky/feed/get_actor_feeds.rs
···
const NSID: &'static str = "app.bsky.feed.getActorFeeds";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetActorFeedsResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.feed.getActorFeeds
+
pub struct GetActorFeedsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetActorFeedsRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.feed.getActorFeeds";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetActorFeeds<'de>;
+
type Response = GetActorFeedsResponse;
}
+10
crates/jacquard-api/src/app_bsky/feed/get_actor_likes.rs
···
const NSID: &'static str = "app.bsky.feed.getActorLikes";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetActorLikesResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.feed.getActorLikes
+
pub struct GetActorLikesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetActorLikesRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.feed.getActorLikes";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetActorLikes<'de>;
+
type Response = GetActorLikesResponse;
}
+10
crates/jacquard-api/src/app_bsky/feed/get_author_feed.rs
···
const NSID: &'static str = "app.bsky.feed.getAuthorFeed";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetAuthorFeedResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.feed.getAuthorFeed
+
pub struct GetAuthorFeedRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetAuthorFeedRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.feed.getAuthorFeed";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetAuthorFeed<'de>;
+
type Response = GetAuthorFeedResponse;
}
+10
crates/jacquard-api/src/app_bsky/feed/get_feed.rs
···
const NSID: &'static str = "app.bsky.feed.getFeed";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetFeedResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.feed.getFeed
+
pub struct GetFeedRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetFeedRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.feed.getFeed";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetFeed<'de>;
+
type Response = GetFeedResponse;
}
+10
crates/jacquard-api/src/app_bsky/feed/get_feed_generator.rs
···
const NSID: &'static str = "app.bsky.feed.getFeedGenerator";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetFeedGeneratorResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.feed.getFeedGenerator
+
pub struct GetFeedGeneratorRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetFeedGeneratorRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.feed.getFeedGenerator";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetFeedGenerator<'de>;
+
type Response = GetFeedGeneratorResponse;
}
+10
crates/jacquard-api/src/app_bsky/feed/get_feed_generators.rs
···
const NSID: &'static str = "app.bsky.feed.getFeedGenerators";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetFeedGeneratorsResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.feed.getFeedGenerators
+
pub struct GetFeedGeneratorsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetFeedGeneratorsRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.feed.getFeedGenerators";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetFeedGenerators<'de>;
+
type Response = GetFeedGeneratorsResponse;
}
+10
crates/jacquard-api/src/app_bsky/feed/get_feed_skeleton.rs
···
const NSID: &'static str = "app.bsky.feed.getFeedSkeleton";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetFeedSkeletonResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.feed.getFeedSkeleton
+
pub struct GetFeedSkeletonRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetFeedSkeletonRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.feed.getFeedSkeleton";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetFeedSkeleton<'de>;
+
type Response = GetFeedSkeletonResponse;
}
+10
crates/jacquard-api/src/app_bsky/feed/get_likes.rs
···
const NSID: &'static str = "app.bsky.feed.getLikes";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetLikesResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.feed.getLikes
+
pub struct GetLikesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetLikesRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.feed.getLikes";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetLikes<'de>;
+
type Response = GetLikesResponse;
}
+10
crates/jacquard-api/src/app_bsky/feed/get_list_feed.rs
···
const NSID: &'static str = "app.bsky.feed.getListFeed";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetListFeedResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.feed.getListFeed
+
pub struct GetListFeedRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetListFeedRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.feed.getListFeed";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetListFeed<'de>;
+
type Response = GetListFeedResponse;
}
+10
crates/jacquard-api/src/app_bsky/feed/get_post_thread.rs
···
const NSID: &'static str = "app.bsky.feed.getPostThread";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetPostThreadResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.feed.getPostThread
+
pub struct GetPostThreadRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetPostThreadRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.feed.getPostThread";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetPostThread<'de>;
+
type Response = GetPostThreadResponse;
}
+10
crates/jacquard-api/src/app_bsky/feed/get_posts.rs
···
const NSID: &'static str = "app.bsky.feed.getPosts";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetPostsResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.feed.getPosts
+
pub struct GetPostsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetPostsRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.feed.getPosts";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetPosts<'de>;
+
type Response = GetPostsResponse;
}
+10
crates/jacquard-api/src/app_bsky/feed/get_quotes.rs
···
const NSID: &'static str = "app.bsky.feed.getQuotes";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetQuotesResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.feed.getQuotes
+
pub struct GetQuotesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetQuotesRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.feed.getQuotes";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetQuotes<'de>;
+
type Response = GetQuotesResponse;
}
+10
crates/jacquard-api/src/app_bsky/feed/get_reposted_by.rs
···
const NSID: &'static str = "app.bsky.feed.getRepostedBy";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetRepostedByResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.feed.getRepostedBy
+
pub struct GetRepostedByRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetRepostedByRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.feed.getRepostedBy";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetRepostedBy<'de>;
+
type Response = GetRepostedByResponse;
}
+10
crates/jacquard-api/src/app_bsky/feed/get_suggested_feeds.rs
···
const NSID: &'static str = "app.bsky.feed.getSuggestedFeeds";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetSuggestedFeedsResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.feed.getSuggestedFeeds
+
pub struct GetSuggestedFeedsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetSuggestedFeedsRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.feed.getSuggestedFeeds";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetSuggestedFeeds<'de>;
+
type Response = GetSuggestedFeedsResponse;
}
+10
crates/jacquard-api/src/app_bsky/feed/get_timeline.rs
···
const NSID: &'static str = "app.bsky.feed.getTimeline";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetTimelineResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.feed.getTimeline
+
pub struct GetTimelineRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetTimelineRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.feed.getTimeline";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetTimeline<'de>;
+
type Response = GetTimelineResponse;
}
+10
crates/jacquard-api/src/app_bsky/feed/search_posts.rs
···
const NSID: &'static str = "app.bsky.feed.searchPosts";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = SearchPostsResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.feed.searchPosts
+
pub struct SearchPostsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SearchPostsRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.feed.searchPosts";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = SearchPosts<'de>;
+
type Response = SearchPostsResponse;
}
+12
crates/jacquard-api/src/app_bsky/feed/send_interactions.rs
···
"application/json",
);
type Response = SendInteractionsResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.feed.sendInteractions
+
pub struct SendInteractionsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SendInteractionsRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.feed.sendInteractions";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = SendInteractions<'de>;
+
type Response = SendInteractionsResponse;
}
+10
crates/jacquard-api/src/app_bsky/graph/get_actor_starter_packs.rs
···
const NSID: &'static str = "app.bsky.graph.getActorStarterPacks";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetActorStarterPacksResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.getActorStarterPacks
+
pub struct GetActorStarterPacksRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetActorStarterPacksRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.getActorStarterPacks";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetActorStarterPacks<'de>;
+
type Response = GetActorStarterPacksResponse;
}
+10
crates/jacquard-api/src/app_bsky/graph/get_blocks.rs
···
const NSID: &'static str = "app.bsky.graph.getBlocks";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetBlocksResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.getBlocks
+
pub struct GetBlocksRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetBlocksRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.getBlocks";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetBlocks<'de>;
+
type Response = GetBlocksResponse;
}
+10
crates/jacquard-api/src/app_bsky/graph/get_followers.rs
···
const NSID: &'static str = "app.bsky.graph.getFollowers";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetFollowersResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.getFollowers
+
pub struct GetFollowersRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetFollowersRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.getFollowers";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetFollowers<'de>;
+
type Response = GetFollowersResponse;
}
+10
crates/jacquard-api/src/app_bsky/graph/get_follows.rs
···
const NSID: &'static str = "app.bsky.graph.getFollows";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetFollowsResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.getFollows
+
pub struct GetFollowsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetFollowsRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.getFollows";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetFollows<'de>;
+
type Response = GetFollowsResponse;
}
+10
crates/jacquard-api/src/app_bsky/graph/get_known_followers.rs
···
const NSID: &'static str = "app.bsky.graph.getKnownFollowers";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetKnownFollowersResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.getKnownFollowers
+
pub struct GetKnownFollowersRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetKnownFollowersRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.getKnownFollowers";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetKnownFollowers<'de>;
+
type Response = GetKnownFollowersResponse;
}
+10
crates/jacquard-api/src/app_bsky/graph/get_list.rs
···
const NSID: &'static str = "app.bsky.graph.getList";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetListResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.getList
+
pub struct GetListRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetListRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.getList";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetList<'de>;
+
type Response = GetListResponse;
}
+10
crates/jacquard-api/src/app_bsky/graph/get_list_blocks.rs
···
const NSID: &'static str = "app.bsky.graph.getListBlocks";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetListBlocksResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.getListBlocks
+
pub struct GetListBlocksRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetListBlocksRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.getListBlocks";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetListBlocks<'de>;
+
type Response = GetListBlocksResponse;
}
+10
crates/jacquard-api/src/app_bsky/graph/get_list_mutes.rs
···
const NSID: &'static str = "app.bsky.graph.getListMutes";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetListMutesResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.getListMutes
+
pub struct GetListMutesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetListMutesRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.getListMutes";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetListMutes<'de>;
+
type Response = GetListMutesResponse;
}
+10
crates/jacquard-api/src/app_bsky/graph/get_lists.rs
···
const NSID: &'static str = "app.bsky.graph.getLists";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetListsResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.getLists
+
pub struct GetListsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetListsRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.getLists";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetLists<'de>;
+
type Response = GetListsResponse;
}
+10
crates/jacquard-api/src/app_bsky/graph/get_lists_with_membership.rs
···
const NSID: &'static str = "app.bsky.graph.getListsWithMembership";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetListsWithMembershipResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.getListsWithMembership
+
pub struct GetListsWithMembershipRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetListsWithMembershipRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.getListsWithMembership";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetListsWithMembership<'de>;
+
type Response = GetListsWithMembershipResponse;
}
+10
crates/jacquard-api/src/app_bsky/graph/get_mutes.rs
···
const NSID: &'static str = "app.bsky.graph.getMutes";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetMutesResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.getMutes
+
pub struct GetMutesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetMutesRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.getMutes";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetMutes<'de>;
+
type Response = GetMutesResponse;
}
+10
crates/jacquard-api/src/app_bsky/graph/get_relationships.rs
···
const NSID: &'static str = "app.bsky.graph.getRelationships";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetRelationshipsResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.getRelationships
+
pub struct GetRelationshipsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetRelationshipsRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.getRelationships";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetRelationships<'de>;
+
type Response = GetRelationshipsResponse;
}
+10
crates/jacquard-api/src/app_bsky/graph/get_starter_pack.rs
···
const NSID: &'static str = "app.bsky.graph.getStarterPack";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetStarterPackResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.getStarterPack
+
pub struct GetStarterPackRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetStarterPackRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.getStarterPack";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetStarterPack<'de>;
+
type Response = GetStarterPackResponse;
}
+10
crates/jacquard-api/src/app_bsky/graph/get_starter_packs.rs
···
const NSID: &'static str = "app.bsky.graph.getStarterPacks";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetStarterPacksResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.getStarterPacks
+
pub struct GetStarterPacksRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetStarterPacksRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.getStarterPacks";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetStarterPacks<'de>;
+
type Response = GetStarterPacksResponse;
}
+10
crates/jacquard-api/src/app_bsky/graph/get_starter_packs_with_membership.rs
···
type Response = GetStarterPacksWithMembershipResponse;
}
+
///Endpoint type for
+
///app.bsky.graph.getStarterPacksWithMembership
+
pub struct GetStarterPacksWithMembershipRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetStarterPacksWithMembershipRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.getStarterPacksWithMembership";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetStarterPacksWithMembership<'de>;
+
type Response = GetStarterPacksWithMembershipResponse;
+
}
+
///A starter pack and an optional list item indicating membership of a target user to that starter pack.
#[jacquard_derive::lexicon]
#[derive(
+10
crates/jacquard-api/src/app_bsky/graph/get_suggested_follows_by_actor.rs
···
const NSID: &'static str = "app.bsky.graph.getSuggestedFollowsByActor";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetSuggestedFollowsByActorResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.getSuggestedFollowsByActor
+
pub struct GetSuggestedFollowsByActorRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetSuggestedFollowsByActorRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.getSuggestedFollowsByActor";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetSuggestedFollowsByActor<'de>;
+
type Response = GetSuggestedFollowsByActorResponse;
}
+12
crates/jacquard-api/src/app_bsky/graph/mute_actor.rs
···
"application/json",
);
type Response = MuteActorResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.muteActor
+
pub struct MuteActorRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for MuteActorRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.muteActor";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = MuteActor<'de>;
+
type Response = MuteActorResponse;
}
+12
crates/jacquard-api/src/app_bsky/graph/mute_actor_list.rs
···
"application/json",
);
type Response = MuteActorListResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.muteActorList
+
pub struct MuteActorListRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for MuteActorListRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.muteActorList";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = MuteActorList<'de>;
+
type Response = MuteActorListResponse;
}
+12
crates/jacquard-api/src/app_bsky/graph/mute_thread.rs
···
"application/json",
);
type Response = MuteThreadResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.muteThread
+
pub struct MuteThreadRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for MuteThreadRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.muteThread";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = MuteThread<'de>;
+
type Response = MuteThreadResponse;
}
+10
crates/jacquard-api/src/app_bsky/graph/search_starter_packs.rs
···
const NSID: &'static str = "app.bsky.graph.searchStarterPacks";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = SearchStarterPacksResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.searchStarterPacks
+
pub struct SearchStarterPacksRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SearchStarterPacksRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.searchStarterPacks";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = SearchStarterPacks<'de>;
+
type Response = SearchStarterPacksResponse;
}
+12
crates/jacquard-api/src/app_bsky/graph/unmute_actor.rs
···
"application/json",
);
type Response = UnmuteActorResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.unmuteActor
+
pub struct UnmuteActorRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UnmuteActorRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.unmuteActor";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UnmuteActor<'de>;
+
type Response = UnmuteActorResponse;
}
+12
crates/jacquard-api/src/app_bsky/graph/unmute_actor_list.rs
···
"application/json",
);
type Response = UnmuteActorListResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.unmuteActorList
+
pub struct UnmuteActorListRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UnmuteActorListRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.unmuteActorList";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UnmuteActorList<'de>;
+
type Response = UnmuteActorListResponse;
}
+12
crates/jacquard-api/src/app_bsky/graph/unmute_thread.rs
···
"application/json",
);
type Response = UnmuteThreadResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.graph.unmuteThread
+
pub struct UnmuteThreadRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UnmuteThreadRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.graph.unmuteThread";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UnmuteThread<'de>;
+
type Response = UnmuteThreadResponse;
}
+10
crates/jacquard-api/src/app_bsky/labeler/get_services.rs
···
const NSID: &'static str = "app.bsky.labeler.getServices";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetServicesResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.labeler.getServices
+
pub struct GetServicesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetServicesRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.labeler.getServices";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetServices<'de>;
+
type Response = GetServicesResponse;
}
+10
crates/jacquard-api/src/app_bsky/notification/get_preferences.rs
···
const NSID: &'static str = "app.bsky.notification.getPreferences";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetPreferencesResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.notification.getPreferences
+
pub struct GetPreferencesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetPreferencesRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.notification.getPreferences";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetPreferences;
+
type Response = GetPreferencesResponse;
}
+10
crates/jacquard-api/src/app_bsky/notification/get_unread_count.rs
···
const NSID: &'static str = "app.bsky.notification.getUnreadCount";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetUnreadCountResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.notification.getUnreadCount
+
pub struct GetUnreadCountRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetUnreadCountRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.notification.getUnreadCount";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetUnreadCount;
+
type Response = GetUnreadCountResponse;
}
+10
crates/jacquard-api/src/app_bsky/notification/list_activity_subscriptions.rs
···
const NSID: &'static str = "app.bsky.notification.listActivitySubscriptions";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = ListActivitySubscriptionsResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.notification.listActivitySubscriptions
+
pub struct ListActivitySubscriptionsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ListActivitySubscriptionsRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.notification.listActivitySubscriptions";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ListActivitySubscriptions<'de>;
+
type Response = ListActivitySubscriptionsResponse;
}
+10
crates/jacquard-api/src/app_bsky/notification/list_notifications.rs
···
type Response = ListNotificationsResponse;
}
+
///Endpoint type for
+
///app.bsky.notification.listNotifications
+
pub struct ListNotificationsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ListNotificationsRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.notification.listNotifications";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ListNotifications<'de>;
+
type Response = ListNotificationsResponse;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+12
crates/jacquard-api/src/app_bsky/notification/put_activity_subscription.rs
···
"application/json",
);
type Response = PutActivitySubscriptionResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.notification.putActivitySubscription
+
pub struct PutActivitySubscriptionRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for PutActivitySubscriptionRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.notification.putActivitySubscription";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = PutActivitySubscription<'de>;
+
type Response = PutActivitySubscriptionResponse;
}
+12
crates/jacquard-api/src/app_bsky/notification/put_preferences.rs
···
"application/json",
);
type Response = PutPreferencesResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.notification.putPreferences
+
pub struct PutPreferencesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for PutPreferencesRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.notification.putPreferences";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = PutPreferences<'de>;
+
type Response = PutPreferencesResponse;
}
+12
crates/jacquard-api/src/app_bsky/notification/put_preferences_v2.rs
···
"application/json",
);
type Response = PutPreferencesV2Response;
+
}
+
+
///Endpoint type for
+
///app.bsky.notification.putPreferencesV2
+
pub struct PutPreferencesV2Request;
+
impl jacquard_common::xrpc::XrpcEndpoint for PutPreferencesV2Request {
+
const PATH: &'static str = "/xrpc/app.bsky.notification.putPreferencesV2";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = PutPreferencesV2<'de>;
+
type Response = PutPreferencesV2Response;
}
+12
crates/jacquard-api/src/app_bsky/notification/register_push.rs
···
"application/json",
);
type Response = RegisterPushResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.notification.registerPush
+
pub struct RegisterPushRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for RegisterPushRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.notification.registerPush";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = RegisterPush<'de>;
+
type Response = RegisterPushResponse;
}
+12
crates/jacquard-api/src/app_bsky/notification/unregister_push.rs
···
"application/json",
);
type Response = UnregisterPushResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.notification.unregisterPush
+
pub struct UnregisterPushRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UnregisterPushRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.notification.unregisterPush";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UnregisterPush<'de>;
+
type Response = UnregisterPushResponse;
}
+12
crates/jacquard-api/src/app_bsky/notification/update_seen.rs
···
"application/json",
);
type Response = UpdateSeenResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.notification.updateSeen
+
pub struct UpdateSeenRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateSeenRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.notification.updateSeen";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateSeen<'de>;
+
type Response = UpdateSeenResponse;
}
+20 -1
crates/jacquard-api/src/app_bsky/unspecced/get_age_assurance_state.rs
···
}
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct GetAgeAssuranceState;
///Response type for
///app.bsky.unspecced.getAgeAssuranceState
···
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetAgeAssuranceState {
const NSID: &'static str = "app.bsky.unspecced.getAgeAssuranceState";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetAgeAssuranceStateResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.unspecced.getAgeAssuranceState
+
pub struct GetAgeAssuranceStateRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetAgeAssuranceStateRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.unspecced.getAgeAssuranceState";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetAgeAssuranceState;
type Response = GetAgeAssuranceStateResponse;
}
+20 -1
crates/jacquard-api/src/app_bsky/unspecced/get_config.rs
···
}
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct GetConfig;
///Response type for
///app.bsky.unspecced.getConfig
···
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetConfig {
const NSID: &'static str = "app.bsky.unspecced.getConfig";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetConfigResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.unspecced.getConfig
+
pub struct GetConfigRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetConfigRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.unspecced.getConfig";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetConfig;
type Response = GetConfigResponse;
}
+10
crates/jacquard-api/src/app_bsky/unspecced/get_onboarding_suggested_starter_packs.rs
···
const NSID: &'static str = "app.bsky.unspecced.getOnboardingSuggestedStarterPacks";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetOnboardingSuggestedStarterPacksResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.unspecced.getOnboardingSuggestedStarterPacks
+
pub struct GetOnboardingSuggestedStarterPacksRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetOnboardingSuggestedStarterPacksRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.unspecced.getOnboardingSuggestedStarterPacks";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetOnboardingSuggestedStarterPacks;
+
type Response = GetOnboardingSuggestedStarterPacksResponse;
}
+11
crates/jacquard-api/src/app_bsky/unspecced/get_onboarding_suggested_starter_packs_skeleton.rs
···
const NSID: &'static str = "app.bsky.unspecced.getOnboardingSuggestedStarterPacksSkeleton";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetOnboardingSuggestedStarterPacksSkeletonResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.unspecced.getOnboardingSuggestedStarterPacksSkeleton
+
pub struct GetOnboardingSuggestedStarterPacksSkeletonRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint
+
for GetOnboardingSuggestedStarterPacksSkeletonRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.unspecced.getOnboardingSuggestedStarterPacksSkeleton";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetOnboardingSuggestedStarterPacksSkeleton<'de>;
+
type Response = GetOnboardingSuggestedStarterPacksSkeletonResponse;
}
+10
crates/jacquard-api/src/app_bsky/unspecced/get_post_thread_other_v2.rs
···
type Response = GetPostThreadOtherV2Response;
}
+
///Endpoint type for
+
///app.bsky.unspecced.getPostThreadOtherV2
+
pub struct GetPostThreadOtherV2Request;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetPostThreadOtherV2Request {
+
const PATH: &'static str = "/xrpc/app.bsky.unspecced.getPostThreadOtherV2";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetPostThreadOtherV2<'de>;
+
type Response = GetPostThreadOtherV2Response;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+10
crates/jacquard-api/src/app_bsky/unspecced/get_post_thread_v2.rs
···
type Response = GetPostThreadV2Response;
}
+
///Endpoint type for
+
///app.bsky.unspecced.getPostThreadV2
+
pub struct GetPostThreadV2Request;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetPostThreadV2Request {
+
const PATH: &'static str = "/xrpc/app.bsky.unspecced.getPostThreadV2";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetPostThreadV2<'de>;
+
type Response = GetPostThreadV2Response;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+10
crates/jacquard-api/src/app_bsky/unspecced/get_suggested_feeds.rs
···
const NSID: &'static str = "app.bsky.unspecced.getSuggestedFeeds";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetSuggestedFeedsResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.unspecced.getSuggestedFeeds
+
pub struct GetSuggestedFeedsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetSuggestedFeedsRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.unspecced.getSuggestedFeeds";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetSuggestedFeeds;
+
type Response = GetSuggestedFeedsResponse;
}
+10
crates/jacquard-api/src/app_bsky/unspecced/get_suggested_feeds_skeleton.rs
···
const NSID: &'static str = "app.bsky.unspecced.getSuggestedFeedsSkeleton";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetSuggestedFeedsSkeletonResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.unspecced.getSuggestedFeedsSkeleton
+
pub struct GetSuggestedFeedsSkeletonRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetSuggestedFeedsSkeletonRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.unspecced.getSuggestedFeedsSkeleton";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetSuggestedFeedsSkeleton<'de>;
+
type Response = GetSuggestedFeedsSkeletonResponse;
}
+10
crates/jacquard-api/src/app_bsky/unspecced/get_suggested_starter_packs.rs
···
const NSID: &'static str = "app.bsky.unspecced.getSuggestedStarterPacks";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetSuggestedStarterPacksResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.unspecced.getSuggestedStarterPacks
+
pub struct GetSuggestedStarterPacksRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetSuggestedStarterPacksRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.unspecced.getSuggestedStarterPacks";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetSuggestedStarterPacks;
+
type Response = GetSuggestedStarterPacksResponse;
}
+10
crates/jacquard-api/src/app_bsky/unspecced/get_suggested_starter_packs_skeleton.rs
···
const NSID: &'static str = "app.bsky.unspecced.getSuggestedStarterPacksSkeleton";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetSuggestedStarterPacksSkeletonResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.unspecced.getSuggestedStarterPacksSkeleton
+
pub struct GetSuggestedStarterPacksSkeletonRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetSuggestedStarterPacksSkeletonRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.unspecced.getSuggestedStarterPacksSkeleton";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetSuggestedStarterPacksSkeleton<'de>;
+
type Response = GetSuggestedStarterPacksSkeletonResponse;
}
+10
crates/jacquard-api/src/app_bsky/unspecced/get_suggested_users.rs
···
const NSID: &'static str = "app.bsky.unspecced.getSuggestedUsers";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetSuggestedUsersResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.unspecced.getSuggestedUsers
+
pub struct GetSuggestedUsersRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetSuggestedUsersRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.unspecced.getSuggestedUsers";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetSuggestedUsers<'de>;
+
type Response = GetSuggestedUsersResponse;
}
+10
crates/jacquard-api/src/app_bsky/unspecced/get_suggested_users_skeleton.rs
···
const NSID: &'static str = "app.bsky.unspecced.getSuggestedUsersSkeleton";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetSuggestedUsersSkeletonResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.unspecced.getSuggestedUsersSkeleton
+
pub struct GetSuggestedUsersSkeletonRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetSuggestedUsersSkeletonRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.unspecced.getSuggestedUsersSkeleton";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetSuggestedUsersSkeleton<'de>;
+
type Response = GetSuggestedUsersSkeletonResponse;
}
+10
crates/jacquard-api/src/app_bsky/unspecced/get_suggestions_skeleton.rs
···
const NSID: &'static str = "app.bsky.unspecced.getSuggestionsSkeleton";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetSuggestionsSkeletonResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.unspecced.getSuggestionsSkeleton
+
pub struct GetSuggestionsSkeletonRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetSuggestionsSkeletonRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.unspecced.getSuggestionsSkeleton";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetSuggestionsSkeleton<'de>;
+
type Response = GetSuggestionsSkeletonResponse;
}
+10
crates/jacquard-api/src/app_bsky/unspecced/get_tagged_suggestions.rs
···
type Response = GetTaggedSuggestionsResponse;
}
+
///Endpoint type for
+
///app.bsky.unspecced.getTaggedSuggestions
+
pub struct GetTaggedSuggestionsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetTaggedSuggestionsRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.unspecced.getTaggedSuggestions";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetTaggedSuggestions;
+
type Response = GetTaggedSuggestionsResponse;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+10
crates/jacquard-api/src/app_bsky/unspecced/get_trends.rs
···
const NSID: &'static str = "app.bsky.unspecced.getTrends";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetTrendsResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.unspecced.getTrends
+
pub struct GetTrendsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetTrendsRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.unspecced.getTrends";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetTrends;
+
type Response = GetTrendsResponse;
}
+12
crates/jacquard-api/src/app_bsky/unspecced/init_age_assurance.rs
···
"application/json",
);
type Response = InitAgeAssuranceResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.unspecced.initAgeAssurance
+
pub struct InitAgeAssuranceRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for InitAgeAssuranceRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.unspecced.initAgeAssurance";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = InitAgeAssurance<'de>;
+
type Response = InitAgeAssuranceResponse;
}
+10
crates/jacquard-api/src/app_bsky/unspecced/search_actors_skeleton.rs
···
const NSID: &'static str = "app.bsky.unspecced.searchActorsSkeleton";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = SearchActorsSkeletonResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.unspecced.searchActorsSkeleton
+
pub struct SearchActorsSkeletonRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SearchActorsSkeletonRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.unspecced.searchActorsSkeleton";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = SearchActorsSkeleton<'de>;
+
type Response = SearchActorsSkeletonResponse;
}
+10
crates/jacquard-api/src/app_bsky/unspecced/search_posts_skeleton.rs
···
const NSID: &'static str = "app.bsky.unspecced.searchPostsSkeleton";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = SearchPostsSkeletonResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.unspecced.searchPostsSkeleton
+
pub struct SearchPostsSkeletonRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SearchPostsSkeletonRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.unspecced.searchPostsSkeleton";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = SearchPostsSkeleton<'de>;
+
type Response = SearchPostsSkeletonResponse;
}
+10
crates/jacquard-api/src/app_bsky/unspecced/search_starter_packs_skeleton.rs
···
const NSID: &'static str = "app.bsky.unspecced.searchStarterPacksSkeleton";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = SearchStarterPacksSkeletonResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.unspecced.searchStarterPacksSkeleton
+
pub struct SearchStarterPacksSkeletonRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SearchStarterPacksSkeletonRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.unspecced.searchStarterPacksSkeleton";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = SearchStarterPacksSkeleton<'de>;
+
type Response = SearchStarterPacksSkeletonResponse;
}
+10
crates/jacquard-api/src/app_bsky/video/get_job_status.rs
···
const NSID: &'static str = "app.bsky.video.getJobStatus";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetJobStatusResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.video.getJobStatus
+
pub struct GetJobStatusRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetJobStatusRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.video.getJobStatus";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetJobStatus<'de>;
+
type Response = GetJobStatusResponse;
}
+20 -1
crates/jacquard-api/src/app_bsky/video/get_upload_limits.rs
···
}
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct GetUploadLimits;
///Response type for
///app.bsky.video.getUploadLimits
···
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetUploadLimits {
const NSID: &'static str = "app.bsky.video.getUploadLimits";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetUploadLimitsResponse;
+
}
+
+
///Endpoint type for
+
///app.bsky.video.getUploadLimits
+
pub struct GetUploadLimitsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetUploadLimitsRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.video.getUploadLimits";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetUploadLimits;
type Response = GetUploadLimitsResponse;
}
+12
crates/jacquard-api/src/app_bsky/video/upload_video.rs
···
}),
)
}
+
}
+
+
///Endpoint type for
+
///app.bsky.video.uploadVideo
+
pub struct UploadVideoRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UploadVideoRequest {
+
const PATH: &'static str = "/xrpc/app.bsky.video.uploadVideo";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"video/mp4",
+
);
+
type Request<'de> = UploadVideo;
+
type Response = UploadVideoResponse;
}
+13
crates/jacquard-api/src/app_ocho.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod auth;
+
pub mod edu;
+
pub mod message;
+
pub mod payment;
+
pub mod plugin;
+
pub mod push;
+
pub mod server;
+
pub mod state;
+37
crates/jacquard-api/src/app_ocho/auth.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.auth.defs
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod at_proto_callback;
+
pub mod authorize;
+
pub mod github_callback;
+
pub mod google_callback;
+
pub mod request_email_update;
+
pub mod update_email;
+
pub mod update_handle;
+
pub mod whoami;
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct AuthCallback<'a> {
+
#[serde(borrow)]
+
pub access_jwt: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
pub did: jacquard_common::types::string::Did<'a>,
+
#[serde(borrow)]
+
pub handle: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
pub refresh_jwt: jacquard_common::CowStr<'a>,
+
}
+56
crates/jacquard-api/src/app_ocho/auth/at_proto_callback.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.auth.atProtoCallback
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct AtProtoCallback<'a> {
+
#[serde(borrow)]
+
#[builder(into)]
+
pub code: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub iss: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub state: jacquard_common::CowStr<'a>,
+
}
+
+
///Response type for
+
///app.ocho.auth.atProtoCallback
+
pub struct AtProtoCallbackResponse;
+
impl jacquard_common::xrpc::XrpcResp for AtProtoCallbackResponse {
+
const NSID: &'static str = "app.ocho.auth.atProtoCallback";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = ();
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for AtProtoCallback<'de> {
+
const NSID: &'static str = "app.ocho.auth.atProtoCallback";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = AtProtoCallbackResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.auth.atProtoCallback
+
pub struct AtProtoCallbackRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for AtProtoCallbackRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.auth.atProtoCallback";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = AtProtoCallback<'de>;
+
type Response = AtProtoCallbackResponse;
+
}
+80
crates/jacquard-api/src/app_ocho/auth/authorize.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.auth.authorize
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct Authorize<'a> {
+
#[serde(borrow)]
+
pub authorize_options: jacquard_common::types::value::Data<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub input: jacquard_common::CowStr<'a>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct AuthorizeOutput<'a> {
+
#[serde(borrow)]
+
pub url: jacquard_common::CowStr<'a>,
+
}
+
+
///Response type for
+
///app.ocho.auth.authorize
+
pub struct AuthorizeResponse;
+
impl jacquard_common::xrpc::XrpcResp for AuthorizeResponse {
+
const NSID: &'static str = "app.ocho.auth.authorize";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = AuthorizeOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for Authorize<'de> {
+
const NSID: &'static str = "app.ocho.auth.authorize";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = AuthorizeResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.auth.authorize
+
pub struct AuthorizeRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for AuthorizeRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.auth.authorize";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = Authorize<'de>;
+
type Response = AuthorizeResponse;
+
}
+53
crates/jacquard-api/src/app_ocho/auth/github_callback.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.auth.githubCallback
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GithubCallback<'a> {
+
#[serde(borrow)]
+
#[builder(into)]
+
pub code: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub state: jacquard_common::CowStr<'a>,
+
}
+
+
///Response type for
+
///app.ocho.auth.githubCallback
+
pub struct GithubCallbackResponse;
+
impl jacquard_common::xrpc::XrpcResp for GithubCallbackResponse {
+
const NSID: &'static str = "app.ocho.auth.githubCallback";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = ();
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GithubCallback<'de> {
+
const NSID: &'static str = "app.ocho.auth.githubCallback";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GithubCallbackResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.auth.githubCallback
+
pub struct GithubCallbackRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GithubCallbackRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.auth.githubCallback";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GithubCallback<'de>;
+
type Response = GithubCallbackResponse;
+
}
+53
crates/jacquard-api/src/app_ocho/auth/google_callback.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.auth.googleCallback
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GoogleCallback<'a> {
+
#[serde(borrow)]
+
#[builder(into)]
+
pub code: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub state: jacquard_common::CowStr<'a>,
+
}
+
+
///Response type for
+
///app.ocho.auth.googleCallback
+
pub struct GoogleCallbackResponse;
+
impl jacquard_common::xrpc::XrpcResp for GoogleCallbackResponse {
+
const NSID: &'static str = "app.ocho.auth.googleCallback";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = ();
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GoogleCallback<'de> {
+
const NSID: &'static str = "app.ocho.auth.googleCallback";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GoogleCallbackResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.auth.googleCallback
+
pub struct GoogleCallbackRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GoogleCallbackRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.auth.googleCallback";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GoogleCallback<'de>;
+
type Response = GoogleCallbackResponse;
+
}
+63
crates/jacquard-api/src/app_ocho/auth/request_email_update.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.auth.requestEmailUpdate
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct RequestEmailUpdateOutput<'a> {
+
pub token_required: bool,
+
}
+
+
/// XRPC request marker type
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
+
pub struct RequestEmailUpdate;
+
///Response type for
+
///app.ocho.auth.requestEmailUpdate
+
pub struct RequestEmailUpdateResponse;
+
impl jacquard_common::xrpc::XrpcResp for RequestEmailUpdateResponse {
+
const NSID: &'static str = "app.ocho.auth.requestEmailUpdate";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = RequestEmailUpdateOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for RequestEmailUpdate {
+
const NSID: &'static str = "app.ocho.auth.requestEmailUpdate";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = RequestEmailUpdateResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.auth.requestEmailUpdate
+
pub struct RequestEmailUpdateRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for RequestEmailUpdateRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.auth.requestEmailUpdate";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = RequestEmailUpdate;
+
type Response = RequestEmailUpdateResponse;
+
}
+138
crates/jacquard-api/src/app_ocho/auth/update_email.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.auth.updateEmail
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct UpdateEmail<'a> {
+
#[serde(borrow)]
+
#[builder(into)]
+
pub email: jacquard_common::CowStr<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub email_auth_factor: std::option::Option<bool>,
+
///Requires a token from com.atproto.sever.requestEmailUpdate if the account's email has been confirmed.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub token: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
#[jacquard_derive::open_union]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
thiserror::Error,
+
miette::Diagnostic
+
)]
+
#[serde(tag = "error", content = "message")]
+
#[serde(bound(deserialize = "'de: 'a"))]
+
pub enum UpdateEmailError<'a> {
+
#[serde(rename = "ExpiredToken")]
+
ExpiredToken(std::option::Option<String>),
+
#[serde(rename = "InvalidToken")]
+
InvalidToken(std::option::Option<String>),
+
#[serde(rename = "TokenRequired")]
+
TokenRequired(std::option::Option<String>),
+
}
+
+
impl std::fmt::Display for UpdateEmailError<'_> {
+
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+
match self {
+
Self::ExpiredToken(msg) => {
+
write!(f, "ExpiredToken")?;
+
if let Some(msg) = msg {
+
write!(f, ": {}", msg)?;
+
}
+
Ok(())
+
}
+
Self::InvalidToken(msg) => {
+
write!(f, "InvalidToken")?;
+
if let Some(msg) = msg {
+
write!(f, ": {}", msg)?;
+
}
+
Ok(())
+
}
+
Self::TokenRequired(msg) => {
+
write!(f, "TokenRequired")?;
+
if let Some(msg) = msg {
+
write!(f, ": {}", msg)?;
+
}
+
Ok(())
+
}
+
Self::Unknown(err) => write!(f, "Unknown error: {:?}", err),
+
}
+
}
+
}
+
+
impl jacquard_common::IntoStatic for UpdateEmailError<'_> {
+
type Output = UpdateEmailError<'static>;
+
fn into_static(self) -> Self::Output {
+
match self {
+
UpdateEmailError::ExpiredToken(v) => {
+
UpdateEmailError::ExpiredToken(v.into_static())
+
}
+
UpdateEmailError::InvalidToken(v) => {
+
UpdateEmailError::InvalidToken(v.into_static())
+
}
+
UpdateEmailError::TokenRequired(v) => {
+
UpdateEmailError::TokenRequired(v.into_static())
+
}
+
UpdateEmailError::Unknown(v) => UpdateEmailError::Unknown(v.into_static()),
+
}
+
}
+
}
+
+
///Response type for
+
///app.ocho.auth.updateEmail
+
pub struct UpdateEmailResponse;
+
impl jacquard_common::xrpc::XrpcResp for UpdateEmailResponse {
+
const NSID: &'static str = "app.ocho.auth.updateEmail";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = ();
+
type Err<'de> = UpdateEmailError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for UpdateEmail<'de> {
+
const NSID: &'static str = "app.ocho.auth.updateEmail";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = UpdateEmailResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.auth.updateEmail
+
pub struct UpdateEmailRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateEmailRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.auth.updateEmail";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateEmail<'de>;
+
type Response = UpdateEmailResponse;
+
}
+62
crates/jacquard-api/src/app_ocho/auth/update_handle.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.auth.updateHandle
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct UpdateHandle<'a> {
+
///The new handle.
+
#[serde(borrow)]
+
pub handle: jacquard_common::types::string::Handle<'a>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
///Response type for
+
///app.ocho.auth.updateHandle
+
pub struct UpdateHandleResponse;
+
impl jacquard_common::xrpc::XrpcResp for UpdateHandleResponse {
+
const NSID: &'static str = "app.ocho.auth.updateHandle";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = ();
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for UpdateHandle<'de> {
+
const NSID: &'static str = "app.ocho.auth.updateHandle";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = UpdateHandleResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.auth.updateHandle
+
pub struct UpdateHandleRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateHandleRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.auth.updateHandle";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateHandle<'de>;
+
type Response = UpdateHandleResponse;
+
}
+65
crates/jacquard-api/src/app_ocho/auth/whoami.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.auth.whoami
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///The session data
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct WhoamiOutput<'a> {
+
///The user's DID
+
#[serde(borrow)]
+
pub did: jacquard_common::CowStr<'a>,
+
///The user's ID
+
#[serde(borrow)]
+
pub handle: jacquard_common::CowStr<'a>,
+
}
+
+
/// XRPC request marker type
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
+
pub struct Whoami;
+
///Response type for
+
///app.ocho.auth.whoami
+
pub struct WhoamiResponse;
+
impl jacquard_common::xrpc::XrpcResp for WhoamiResponse {
+
const NSID: &'static str = "app.ocho.auth.whoami";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = WhoamiOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for Whoami {
+
const NSID: &'static str = "app.ocho.auth.whoami";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = WhoamiResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.auth.whoami
+
pub struct WhoamiRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for WhoamiRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.auth.whoami";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = Whoami;
+
type Response = WhoamiResponse;
+
}
+9
crates/jacquard-api/src/app_ocho/edu.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod get_verification_url;
+
pub mod google_callback;
+
pub mod is_verified;
+
pub mod verification;
+67
crates/jacquard-api/src/app_ocho/edu/get_verification_url.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.edu.getVerificationUrl
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetVerificationUrl<'a> {
+
#[serde(borrow)]
+
#[builder(into)]
+
pub domain: jacquard_common::CowStr<'a>,
+
}
+
+
///The intent data
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetVerificationUrlOutput<'a> {
+
#[serde(borrow)]
+
pub url: jacquard_common::CowStr<'a>,
+
}
+
+
///Response type for
+
///app.ocho.edu.getVerificationUrl
+
pub struct GetVerificationUrlResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetVerificationUrlResponse {
+
const NSID: &'static str = "app.ocho.edu.getVerificationUrl";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetVerificationUrlOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetVerificationUrl<'de> {
+
const NSID: &'static str = "app.ocho.edu.getVerificationUrl";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetVerificationUrlResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.edu.getVerificationUrl
+
pub struct GetVerificationUrlRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetVerificationUrlRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.edu.getVerificationUrl";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetVerificationUrl<'de>;
+
type Response = GetVerificationUrlResponse;
+
}
+53
crates/jacquard-api/src/app_ocho/edu/google_callback.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.edu.googleCallback
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GoogleCallback<'a> {
+
#[serde(borrow)]
+
#[builder(into)]
+
pub code: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub state: jacquard_common::CowStr<'a>,
+
}
+
+
///Response type for
+
///app.ocho.edu.googleCallback
+
pub struct GoogleCallbackResponse;
+
impl jacquard_common::xrpc::XrpcResp for GoogleCallbackResponse {
+
const NSID: &'static str = "app.ocho.edu.googleCallback";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = ();
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GoogleCallback<'de> {
+
const NSID: &'static str = "app.ocho.edu.googleCallback";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GoogleCallbackResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.edu.googleCallback
+
pub struct GoogleCallbackRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GoogleCallbackRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.edu.googleCallback";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GoogleCallback<'de>;
+
type Response = GoogleCallbackResponse;
+
}
+66
crates/jacquard-api/src/app_ocho/edu/is_verified.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.edu.isVerified
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct IsVerified<'a> {
+
#[serde(borrow)]
+
#[builder(into)]
+
pub domain: jacquard_common::CowStr<'a>,
+
}
+
+
///Whether the user is verified on that domain
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct IsVerifiedOutput<'a> {
+
pub verified: bool,
+
}
+
+
///Response type for
+
///app.ocho.edu.isVerified
+
pub struct IsVerifiedResponse;
+
impl jacquard_common::xrpc::XrpcResp for IsVerifiedResponse {
+
const NSID: &'static str = "app.ocho.edu.isVerified";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = IsVerifiedOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for IsVerified<'de> {
+
const NSID: &'static str = "app.ocho.edu.isVerified";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = IsVerifiedResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.edu.isVerified
+
pub struct IsVerifiedRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for IsVerifiedRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.edu.isVerified";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = IsVerified<'de>;
+
type Response = IsVerifiedResponse;
+
}
+33
crates/jacquard-api/src/app_ocho/edu/verification.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.edu.verification
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///Record declaring a verification relationship between an account and a .edu domain. Verifications are only considered valid by an app if issued by an account the app considers trusted.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Verification<'a> {
+
///Date of when the verification was created.
+
pub created_at: jacquard_common::types::string::Datetime,
+
///The domain the subject is verified under.
+
#[serde(borrow)]
+
pub domain: jacquard_common::CowStr<'a>,
+
///DID of the subject the verification applies to.
+
#[serde(borrow)]
+
pub subject: jacquard_common::types::string::Did<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Verification<'_> {
+
const NSID: &'static str = "app.ocho.edu.verification";
+
}
+6
crates/jacquard-api/src/app_ocho/message.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod send;
+83
crates/jacquard-api/src/app_ocho/message/send.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.message.send
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct Send<'a> {
+
///The user to send the message to.
+
#[serde(borrow)]
+
#[builder(into)]
+
pub did: jacquard_common::CowStr<'a>,
+
///The message to send to the user.
+
#[serde(borrow)]
+
#[builder(into)]
+
pub message: jacquard_common::CowStr<'a>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct SendOutput<'a> {
+
///Whether the token was successfully registered.
+
pub success: bool,
+
}
+
+
///Response type for
+
///app.ocho.message.send
+
pub struct SendResponse;
+
impl jacquard_common::xrpc::XrpcResp for SendResponse {
+
const NSID: &'static str = "app.ocho.message.send";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = SendOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for Send<'de> {
+
const NSID: &'static str = "app.ocho.message.send";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = SendResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.message.send
+
pub struct SendRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SendRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.message.send";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = Send<'de>;
+
type Response = SendResponse;
+
}
+6
crates/jacquard-api/src/app_ocho/payment.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod get_stripe_intent;
+87
crates/jacquard-api/src/app_ocho/payment/get_stripe_intent.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.payment.getStripeIntent
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetStripeIntent<'a> {
+
pub amount: i64,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub id: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
pub iss: jacquard_common::types::string::Did<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub token: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
///The intent data
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetStripeIntentOutput<'a> {
+
///The customer ID for the payment intent
+
#[serde(borrow)]
+
pub customer: jacquard_common::CowStr<'a>,
+
///The customer session ID for the payment intent
+
#[serde(borrow)]
+
pub customer_session: jacquard_common::CowStr<'a>,
+
///The ephemeral key for the payment intent
+
#[serde(borrow)]
+
pub ephemeral_key: jacquard_common::CowStr<'a>,
+
///The payment intent ID
+
#[serde(borrow)]
+
pub payment_intent: jacquard_common::CowStr<'a>,
+
///The publishable key for the payment intent
+
#[serde(borrow)]
+
pub publishable_key: jacquard_common::CowStr<'a>,
+
}
+
+
///Response type for
+
///app.ocho.payment.getStripeIntent
+
pub struct GetStripeIntentResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetStripeIntentResponse {
+
const NSID: &'static str = "app.ocho.payment.getStripeIntent";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetStripeIntentOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetStripeIntent<'de> {
+
const NSID: &'static str = "app.ocho.payment.getStripeIntent";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetStripeIntentResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.payment.getStripeIntent
+
pub struct GetStripeIntentRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetStripeIntentRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.payment.getStripeIntent";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetStripeIntent<'de>;
+
type Response = GetStripeIntentResponse;
+
}
+361
crates/jacquard-api/src/app_ocho/plugin.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.plugin.defs
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod get_launch_asset;
+
pub mod get_manifest;
+
pub mod put_hosting_url;
+
pub mod service;
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct AdaptiveIcon<'a> {
+
///The background color of the adaptive icon.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub background_color: std::option::Option<jacquard_common::CowStr<'a>>,
+
///The URL to the foreground image of the adaptive icon.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub foreground_image: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub foreground_image_blob: std::option::Option<
+
jacquard_common::types::blob::Blob<'a>,
+
>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Android<'a> {
+
///Configuration for the adaptive icon on Android.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub adaptive_icon: std::option::Option<crate::app_ocho::plugin::AdaptiveIcon<'a>>,
+
///Whether edge-to-edge mode is enabled for the app.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub edge_to_edge_enabled: std::option::Option<bool>,
+
}
+
+
///Android status bar configuration.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct AndroidStatusBar<'a> {
+
///The background color of the Android status bar.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub background_color: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Asset<'a> {
+
///The blob of the asset
+
#[serde(borrow)]
+
pub blob: jacquard_common::types::blob::Blob<'a>,
+
///The hash of the asset
+
#[serde(borrow)]
+
pub hash: jacquard_common::CowStr<'a>,
+
///The type of the asset
+
#[serde(borrow)]
+
pub r#type: jacquard_common::CowStr<'a>,
+
///The date and time when this asset was last updated. Used to reset the jetstream cache, among other things.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub updated_at: std::option::Option<jacquard_common::types::string::Datetime>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Db<'a> {
+
///The ID of the database.
+
#[serde(borrow)]
+
pub id: jacquard_common::CowStr<'a>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Developer<'a> {
+
///The tool used for development, e.g., 'expo-cli'.
+
#[serde(borrow)]
+
pub tool: jacquard_common::CowStr<'a>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct ExpoClient<'a> {
+
///Android-specific configuration for the app.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub android: std::option::Option<crate::app_ocho::plugin::Android<'a>>,
+
///Configuration for the Android status bar.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub android_status_bar: std::option::Option<
+
crate::app_ocho::plugin::AndroidStatusBar<'a>,
+
>,
+
///Experimental features enabled for the app.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub expirements: std::option::Option<jacquard_common::types::value::Data<'a>>,
+
///Additional configuration for the app.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub extra: std::option::Option<jacquard_common::types::value::Data<'a>>,
+
///The URL to the app icon.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub icon: std::option::Option<jacquard_common::CowStr<'a>>,
+
///ios-specific configuration for the app.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub ios: std::option::Option<crate::app_ocho::plugin::Ios<'a>>,
+
///Localization settings for the app.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub locales: std::option::Option<jacquard_common::types::value::Data<'a>>,
+
///The name of the Expo client application.
+
#[serde(borrow)]
+
pub name: jacquard_common::CowStr<'a>,
+
///Whether the new architecture is enabled for the app.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub new_arch_enabled: std::option::Option<bool>,
+
///The default orientation of the app.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub orientation: std::option::Option<jacquard_common::CowStr<'a>>,
+
///The platforms supported by the app.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub platforms: std::option::Option<Vec<jacquard_common::CowStr<'a>>>,
+
///A list of plugins used by the app.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub plugins: std::option::Option<jacquard_common::types::value::Data<'a>>,
+
///The custom URI scheme for deep linking.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub scheme: std::option::Option<jacquard_common::CowStr<'a>>,
+
///The SDK version of the Expo client.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub sdk_version: std::option::Option<jacquard_common::CowStr<'a>>,
+
///A URL-friendly identifier for the app.
+
#[serde(borrow)]
+
pub slug: jacquard_common::CowStr<'a>,
+
///The default user interface style.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub user_interface_style: std::option::Option<jacquard_common::CowStr<'a>>,
+
///The version of the app.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub version: std::option::Option<jacquard_common::CowStr<'a>>,
+
///Web-specific configuration for the app.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub web: std::option::Option<crate::app_ocho::plugin::Web<'a>>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct ExpoGo<'a> {
+
///Developer-specific configuration for the Expo Go app.
+
#[serde(borrow)]
+
pub developer: crate::app_ocho::plugin::Developer<'a>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Ios<'a> {
+
///Whether the app supports iPad.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub supports_tablet: std::option::Option<bool>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct LaunchAsset<'a> {
+
///The MIME type of the asset, e.g., 'image/png'.
+
#[serde(borrow)]
+
pub content_type: jacquard_common::CowStr<'a>,
+
///The unique key for this asset, used to reference it in the plugin.
+
#[serde(borrow)]
+
pub key: jacquard_common::CowStr<'a>,
+
///The URL where the asset can be accessed.
+
#[serde(borrow)]
+
pub url: jacquard_common::types::string::Uri<'a>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Manifest<'a> {
+
///The date and time when this plugin manifest was created.
+
pub created_at: jacquard_common::types::string::Datetime,
+
///Additional metadata for the plugin, including Expo client and Go configurations.
+
#[serde(borrow)]
+
pub extra: crate::app_ocho::plugin::ManifestExtra<'a>,
+
///The unique identifier for this plugin manifest.
+
#[serde(borrow)]
+
pub id: jacquard_common::CowStr<'a>,
+
///The launch asset for the plugin (the main javascipt bundle).
+
#[serde(borrow)]
+
pub launch_asset: crate::app_ocho::plugin::LaunchAsset<'a>,
+
#[serde(borrow)]
+
pub metadata: jacquard_common::types::value::Data<'a>,
+
///The version of the Expo runtime this plugin is compatible with.
+
#[serde(borrow)]
+
pub runtime_version: jacquard_common::CowStr<'a>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct ManifestExtra<'a> {
+
#[serde(borrow)]
+
pub expo_client: crate::app_ocho::plugin::ExpoClient<'a>,
+
#[serde(borrow)]
+
pub expo_go: crate::app_ocho::plugin::ExpoGo<'a>,
+
}
+
+
pub type Plugin<'a> = Vec<jacquard_common::types::value::Data<'a>>;
+
pub type PluginConfig<'a> = jacquard_common::types::value::Data<'a>;
+
///A string identifier for a plugin, used to reference it in the app.
+
pub type StringId<'a> = jacquard_common::CowStr<'a>;
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Web<'a> {
+
///The bundler used for the web app.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub bundler: std::option::Option<jacquard_common::CowStr<'a>>,
+
///The URL to the favicon for the web app.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub favicon: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub favicon_blob: std::option::Option<jacquard_common::types::blob::Blob<'a>>,
+
///The output directory for the web app.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub output: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+65
crates/jacquard-api/src/app_ocho/plugin/get_launch_asset.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.plugin.getLaunchAsset
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetLaunchAsset<'a> {
+
#[serde(borrow)]
+
pub did: jacquard_common::types::string::Did<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub platform: jacquard_common::CowStr<'a>,
+
}
+
+
///The launch asset for the plugin, which is the main JavaScript bundle.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetLaunchAssetOutput<'a> {}
+
///Response type for
+
///app.ocho.plugin.getLaunchAsset
+
pub struct GetLaunchAssetResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetLaunchAssetResponse {
+
const NSID: &'static str = "app.ocho.plugin.getLaunchAsset";
+
const ENCODING: &'static str = "text/javascript";
+
type Output<'de> = GetLaunchAssetOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetLaunchAsset<'de> {
+
const NSID: &'static str = "app.ocho.plugin.getLaunchAsset";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetLaunchAssetResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.plugin.getLaunchAsset
+
pub struct GetLaunchAssetRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetLaunchAssetRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.plugin.getLaunchAsset";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetLaunchAsset<'de>;
+
type Response = GetLaunchAssetResponse;
+
}
+69
crates/jacquard-api/src/app_ocho/plugin/get_manifest.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.plugin.getManifest
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetManifest<'a> {
+
#[serde(borrow)]
+
pub did: jacquard_common::types::string::Did<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub platform: jacquard_common::CowStr<'a>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetManifestOutput<'a> {
+
#[serde(flatten)]
+
#[serde(borrow)]
+
pub value: crate::app_ocho::plugin::Manifest<'a>,
+
}
+
+
///Response type for
+
///app.ocho.plugin.getManifest
+
pub struct GetManifestResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetManifestResponse {
+
const NSID: &'static str = "app.ocho.plugin.getManifest";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetManifestOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetManifest<'de> {
+
const NSID: &'static str = "app.ocho.plugin.getManifest";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetManifestResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.plugin.getManifest
+
pub struct GetManifestRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetManifestRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.plugin.getManifest";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetManifest<'de>;
+
type Response = GetManifestResponse;
+
}
+78
crates/jacquard-api/src/app_ocho/plugin/put_hosting_url.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.plugin.putHostingUrl
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct PutHostingUrl<'a> {
+
///The expo push token
+
#[serde(borrow)]
+
#[builder(into)]
+
pub url: jacquard_common::CowStr<'a>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct PutHostingUrlOutput<'a> {
+
pub success: bool,
+
}
+
+
///Response type for
+
///app.ocho.plugin.putHostingUrl
+
pub struct PutHostingUrlResponse;
+
impl jacquard_common::xrpc::XrpcResp for PutHostingUrlResponse {
+
const NSID: &'static str = "app.ocho.plugin.putHostingUrl";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = PutHostingUrlOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for PutHostingUrl<'de> {
+
const NSID: &'static str = "app.ocho.plugin.putHostingUrl";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = PutHostingUrlResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.plugin.putHostingUrl
+
pub struct PutHostingUrlRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for PutHostingUrlRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.plugin.putHostingUrl";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = PutHostingUrl<'de>;
+
type Response = PutHostingUrlResponse;
+
}
+31
crates/jacquard-api/src/app_ocho/plugin/service.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.plugin.service
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///The definitions for the plugin.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Service<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub db: std::option::Option<crate::app_ocho::plugin::Db<'a>>,
+
///Additional metadata for the plugin, including Expo client and Go configurations.
+
#[serde(borrow)]
+
pub permissions: Vec<jacquard_common::CowStr<'a>>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Service<'_> {
+
const NSID: &'static str = "app.ocho.plugin.service";
+
}
+6
crates/jacquard-api/src/app_ocho/push.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod register;
+79
crates/jacquard-api/src/app_ocho/push/register.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.push.register
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct Register<'a> {
+
///The expo push token
+
#[serde(borrow)]
+
#[builder(into)]
+
pub push_token: jacquard_common::CowStr<'a>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct RegisterOutput<'a> {
+
///Whether the token was successfully registered.
+
pub success: bool,
+
}
+
+
///Response type for
+
///app.ocho.push.register
+
pub struct RegisterResponse;
+
impl jacquard_common::xrpc::XrpcResp for RegisterResponse {
+
const NSID: &'static str = "app.ocho.push.register";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = RegisterOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for Register<'de> {
+
const NSID: &'static str = "app.ocho.push.register";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = RegisterResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.push.register
+
pub struct RegisterRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for RegisterRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.push.register";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = Register<'de>;
+
type Response = RegisterResponse;
+
}
+8
crates/jacquard-api/src/app_ocho/server.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod get_launch_token;
+
pub mod get_token;
+
pub mod swap_launch_token;
+65
crates/jacquard-api/src/app_ocho/server/get_launch_token.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.server.getLaunchToken
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetLaunchToken<'a> {
+
#[serde(borrow)]
+
pub aud: jacquard_common::types::string::Did<'a>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetLaunchTokenOutput<'a> {
+
#[serde(borrow)]
+
pub token: jacquard_common::CowStr<'a>,
+
}
+
+
///Response type for
+
///app.ocho.server.getLaunchToken
+
pub struct GetLaunchTokenResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetLaunchTokenResponse {
+
const NSID: &'static str = "app.ocho.server.getLaunchToken";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetLaunchTokenOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetLaunchToken<'de> {
+
const NSID: &'static str = "app.ocho.server.getLaunchToken";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetLaunchTokenResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.server.getLaunchToken
+
pub struct GetLaunchTokenRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetLaunchTokenRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.server.getLaunchToken";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetLaunchToken<'de>;
+
type Response = GetLaunchTokenResponse;
+
}
+65
crates/jacquard-api/src/app_ocho/server/get_token.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.server.getToken
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetToken<'a> {
+
#[serde(borrow)]
+
pub aud: jacquard_common::types::string::Did<'a>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetTokenOutput<'a> {
+
#[serde(borrow)]
+
pub token: jacquard_common::CowStr<'a>,
+
}
+
+
///Response type for
+
///app.ocho.server.getToken
+
pub struct GetTokenResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetTokenResponse {
+
const NSID: &'static str = "app.ocho.server.getToken";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetTokenOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetToken<'de> {
+
const NSID: &'static str = "app.ocho.server.getToken";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetTokenResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.server.getToken
+
pub struct GetTokenRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetTokenRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.server.getToken";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetToken<'de>;
+
type Response = GetTokenResponse;
+
}
+76
crates/jacquard-api/src/app_ocho/server/swap_launch_token.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.server.swapLaunchToken
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct SwapLaunchToken<'a> {
+
#[serde(borrow)]
+
#[builder(into)]
+
pub launch_token: jacquard_common::CowStr<'a>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct SwapLaunchTokenOutput<'a> {
+
///The did of the user
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub did: std::option::Option<jacquard_common::types::string::Did<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub handle: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(borrow)]
+
pub token: jacquard_common::CowStr<'a>,
+
}
+
+
///Response type for
+
///app.ocho.server.swapLaunchToken
+
pub struct SwapLaunchTokenResponse;
+
impl jacquard_common::xrpc::XrpcResp for SwapLaunchTokenResponse {
+
const NSID: &'static str = "app.ocho.server.swapLaunchToken";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = SwapLaunchTokenOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for SwapLaunchToken<'de> {
+
const NSID: &'static str = "app.ocho.server.swapLaunchToken";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = SwapLaunchTokenResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.server.swapLaunchToken
+
pub struct SwapLaunchTokenRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SwapLaunchTokenRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.server.swapLaunchToken";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = SwapLaunchToken<'de>;
+
type Response = SwapLaunchTokenResponse;
+
}
+7
crates/jacquard-api/src/app_ocho/state.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod get_config;
+
pub mod login;
+122
crates/jacquard-api/src/app_ocho/state/get_config.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.state.getConfig
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetConfigOutput<'a> {
+
///The token for the InstantDB account
+
#[serde(borrow)]
+
pub account_token: jacquard_common::CowStr<'a>,
+
///The InstantDB admin token
+
#[serde(borrow)]
+
pub admin_token: jacquard_common::CowStr<'a>,
+
///The App ID
+
#[serde(borrow)]
+
pub id: jacquard_common::CowStr<'a>,
+
}
+
+
#[jacquard_derive::open_union]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
thiserror::Error,
+
miette::Diagnostic
+
)]
+
#[serde(tag = "error", content = "message")]
+
#[serde(bound(deserialize = "'de: 'a"))]
+
pub enum GetConfigError<'a> {
+
#[serde(rename = "InvalidID")]
+
InvalidId(std::option::Option<String>),
+
#[serde(rename = "InvalidServiceAuth")]
+
InvalidServiceAuth(std::option::Option<String>),
+
}
+
+
impl std::fmt::Display for GetConfigError<'_> {
+
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
+
match self {
+
Self::InvalidId(msg) => {
+
write!(f, "InvalidID")?;
+
if let Some(msg) = msg {
+
write!(f, ": {}", msg)?;
+
}
+
Ok(())
+
}
+
Self::InvalidServiceAuth(msg) => {
+
write!(f, "InvalidServiceAuth")?;
+
if let Some(msg) = msg {
+
write!(f, ": {}", msg)?;
+
}
+
Ok(())
+
}
+
Self::Unknown(err) => write!(f, "Unknown error: {:?}", err),
+
}
+
}
+
}
+
+
impl jacquard_common::IntoStatic for GetConfigError<'_> {
+
type Output = GetConfigError<'static>;
+
fn into_static(self) -> Self::Output {
+
match self {
+
GetConfigError::InvalidId(v) => GetConfigError::InvalidId(v.into_static()),
+
GetConfigError::InvalidServiceAuth(v) => {
+
GetConfigError::InvalidServiceAuth(v.into_static())
+
}
+
GetConfigError::Unknown(v) => GetConfigError::Unknown(v.into_static()),
+
}
+
}
+
}
+
+
/// XRPC request marker type
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
+
pub struct GetConfig;
+
///Response type for
+
///app.ocho.state.getConfig
+
pub struct GetConfigResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetConfigResponse {
+
const NSID: &'static str = "app.ocho.state.getConfig";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetConfigOutput<'de>;
+
type Err<'de> = GetConfigError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetConfig {
+
const NSID: &'static str = "app.ocho.state.getConfig";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetConfigResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.state.getConfig
+
pub struct GetConfigRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetConfigRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.state.getConfig";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetConfig;
+
type Response = GetConfigResponse;
+
}
+61
crates/jacquard-api/src/app_ocho/state/login.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: app.ocho.state.login
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct LoginOutput<'a> {
+
///The code used to login on the InstantDB website
+
#[serde(borrow)]
+
pub code: jacquard_common::CowStr<'a>,
+
}
+
+
/// XRPC request marker type
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
+
pub struct Login;
+
///Response type for
+
///app.ocho.state.login
+
pub struct LoginResponse;
+
impl jacquard_common::xrpc::XrpcResp for LoginResponse {
+
const NSID: &'static str = "app.ocho.state.login";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = LoginOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for Login {
+
const NSID: &'static str = "app.ocho.state.login";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = LoginResponse;
+
}
+
+
///Endpoint type for
+
///app.ocho.state.login
+
pub struct LoginRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for LoginRequest {
+
const PATH: &'static str = "/xrpc/app.ocho.state.login";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = Login;
+
type Response = LoginResponse;
+
}
+6
crates/jacquard-api/src/beauty_cybernetic.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod trustcow;
+8
crates/jacquard-api/src/beauty_cybernetic/trustcow.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod review;
+
pub mod transaction;
+
pub mod warrant;
+44
crates/jacquard-api/src/beauty_cybernetic/trustcow/review.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: beauty.cybernetic.trustcow.review
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A review connected to a verified transaction, can only be created by one of the transaction parties
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Review<'a> {
+
///When the review was created
+
pub created_at: jacquard_common::types::string::Datetime,
+
///The detailed review text
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
///Rating score from 1 to 5
+
pub rating: i64,
+
///Whether this review is from the service provider or consumer
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub reviewer_role: std::option::Option<jacquard_common::CowStr<'a>>,
+
///The title of the review
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub title: std::option::Option<jacquard_common::CowStr<'a>>,
+
///AT URI reference to the transaction record (at://did/beauty.cybernetic.trustcow.transaction/rkey)
+
#[serde(borrow)]
+
pub transaction: jacquard_common::CowStr<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Review<'_> {
+
const NSID: &'static str = "beauty.cybernetic.trustcow.review";
+
}
+48
crates/jacquard-api/src/beauty_cybernetic/trustcow/transaction.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: beauty.cybernetic.trustcow.transaction
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A verified transaction between two ATProto identities that must be stored in both parties' PDS
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Transaction<'a> {
+
///Transaction amount (optional, in whatever currency applies)
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub amount: std::option::Option<jacquard_common::CowStr<'a>>,
+
///When the transaction occurred
+
pub created_at: jacquard_common::types::string::Datetime,
+
///Currency code (optional, e.g. USD, EUR, BTC)
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub currency: std::option::Option<jacquard_common::CowStr<'a>>,
+
///Description of the service or product transacted
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
///DID of the service consumer identity
+
#[serde(borrow)]
+
pub service_consumer: jacquard_common::CowStr<'a>,
+
///DID of the service provider identity
+
#[serde(borrow)]
+
pub service_provider: jacquard_common::CowStr<'a>,
+
///Unique identifier for this transaction, must be identical in both parties' records
+
#[serde(borrow)]
+
pub transaction_id: jacquard_common::CowStr<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Transaction<'_> {
+
const NSID: &'static str = "beauty.cybernetic.trustcow.transaction";
+
}
+45
crates/jacquard-api/src/beauty_cybernetic/trustcow/warrant.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: beauty.cybernetic.trustcow.warrant
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A warrant where one ATProto identity vouches for the trustworthiness of another identity
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Warrant<'a> {
+
///When the warrant was created
+
pub created_at: jacquard_common::types::string::Datetime,
+
///Optional description explaining the basis for this warrant
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
///Optional expiration date for this warrant
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub expires_at: std::option::Option<jacquard_common::types::string::Datetime>,
+
///DID of the identity being warranted for
+
#[serde(borrow)]
+
pub subject: jacquard_common::CowStr<'a>,
+
///Level of trust being warranted
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub trust_level: std::option::Option<jacquard_common::CowStr<'a>>,
+
///Type of warrant being provided
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub warrant_type: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Warrant<'_> {
+
const NSID: &'static str = "beauty.cybernetic.trustcow.warrant";
+
}
+33
crates/jacquard-api/src/blue__2048.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: blue.2048.defs
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod game;
+
pub mod key;
+
pub mod player;
+
pub mod verification;
+
+
///The sync status for a record used to help sync between your ATProto record and local record.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct SyncStatus<'a> {
+
pub created_at: jacquard_common::types::string::Datetime,
+
///A XXH3 hash of the record to tell if anything has changed
+
#[serde(borrow)]
+
pub hash: jacquard_common::CowStr<'a>,
+
///A flag to know if it has been synced with the AT repo. Used mostly client side to filter what records need syncing
+
pub synced_with_at_repo: bool,
+
pub updated_at: jacquard_common::types::string::Datetime,
+
}
+38
crates/jacquard-api/src/blue__2048/game.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: blue.2048.game
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A declaration of an instance of a at://2048 game
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Game<'a> {
+
///The player no longer has any moves left
+
pub completed: bool,
+
pub created_at: jacquard_common::types::string::Datetime,
+
///The game's current score
+
pub current_score: i64,
+
///This is the recording of the game. Like chess notation, but for 2048
+
#[serde(borrow)]
+
pub seeded_recording: jacquard_common::CowStr<'a>,
+
///The sync status of this record with the users AT Protocol repo.
+
#[serde(borrow)]
+
pub sync_status: crate::blue__2048::SyncStatus<'a>,
+
///The player has found a 2048 tile (they have won)
+
pub won: bool,
+
}
+
+
impl jacquard_common::types::collection::Collection for Game<'_> {
+
const NSID: &'static str = "blue.2048.game";
+
}
+50
crates/jacquard-api/src/blue__2048/key.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: blue.2048.key.defs
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod game;
+
pub mod player;
+
+
///A record that holds a did:key used to verify records. Use the collection to know the type of verification. Example blue.2048.key.game is for blue.2048.game records
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Key<'a> {
+
pub created_at: jacquard_common::types::string::Datetime,
+
///A did:key used to verify records came from an at://2048 authority
+
#[serde(borrow)]
+
pub key: jacquard_common::CowStr<'a>,
+
}
+
+
///a signature for an at://2048 record meaning it has been verified by a service. Most likely @2048.blue
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct SignatureRef<'a> {
+
///The at://uri for the public did:key to verify this record. This also counts as the authority of the verification (example @2048.blue). As well as the type of verification by the collection name (blue.2048.key.game).
+
#[serde(borrow)]
+
pub at_uri: jacquard_common::CowStr<'a>,
+
pub created_at: jacquard_common::types::string::Datetime,
+
///The public verifiable signature of the record. Serialization of the records value minus the signature field
+
#[serde(borrow)]
+
pub signature: jacquard_common::CowStr<'a>,
+
}
+29
crates/jacquard-api/src/blue__2048/key/game.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: blue.2048.key.game
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A record that holds a did:key for verifying a players game. This is intended to be written at a verification authorities repo
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Game<'a> {
+
pub created_at: jacquard_common::types::string::Datetime,
+
///A did:key that is used to verify an at://2048 authority has verified this game to a certain degree
+
#[serde(borrow)]
+
pub key: crate::blue__2048::key::Key<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Game<'_> {
+
const NSID: &'static str = "blue.2048.key.game";
+
}
+6
crates/jacquard-api/src/blue__2048/key/player.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod stats;
+29
crates/jacquard-api/src/blue__2048/key/player/stats.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: blue.2048.key.player.stats
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A record that holds a did:key for verifying a players stats. This is intended to be written at a verification authorities repo
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Stats<'a> {
+
pub created_at: jacquard_common::types::string::Datetime,
+
///A did:key that is used to verify an at://2048 authority has verified this players stats to a certain degree
+
#[serde(borrow)]
+
pub key: crate::blue__2048::key::Key<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Stats<'_> {
+
const NSID: &'static str = "blue.2048.key.player.stats";
+
}
+7
crates/jacquard-api/src/blue__2048/player.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod profile;
+
pub mod stats;
+31
crates/jacquard-api/src/blue__2048/player/profile.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: blue.2048.player.profile
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A declaration of a at://2048 player's profile
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Profile<'a> {
+
pub created_at: jacquard_common::types::string::Datetime,
+
///Does not want to show up anywhere. Keep stats to your PDS.
+
pub solo_play: bool,
+
///The sync status of this record with the users AT Protocol repo.
+
#[serde(borrow)]
+
pub sync_status: crate::blue__2048::SyncStatus<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Profile<'_> {
+
const NSID: &'static str = "blue.2048.player.profile";
+
}
+43
crates/jacquard-api/src/blue__2048/player/stats.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: blue.2048.player.stats
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A declaration of a at://2048 player's stats over the course of their playtime
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Stats<'a> {
+
///Average score across all games
+
pub average_score: i64,
+
pub created_at: jacquard_common::types::string::Datetime,
+
///Total numbers of games the user has played
+
pub games_played: i64,
+
///The highest number block the player has fround. example 128, 256, etc
+
pub highest_number_block: i64,
+
///The highest score the user has gotten in a game
+
pub highest_score: i64,
+
///The smallest number of moves to get the 2048 block
+
pub least_moves_to_find_twenty_forty_eight: i64,
+
///The sync status of this record with the users AT Protocol repo.
+
#[serde(borrow)]
+
pub sync_status: crate::blue__2048::SyncStatus<'a>,
+
///Times the 2048 block has been found also count as wins
+
pub times_twenty_forty_eight_been_found: i64,
+
///Total score across all games
+
pub total_score: i64,
+
}
+
+
impl jacquard_common::types::collection::Collection for Stats<'_> {
+
const NSID: &'static str = "blue.2048.player.stats";
+
}
+37
crates/jacquard-api/src/blue__2048/verification.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: blue.2048.verification.defs
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod game;
+
pub mod stats;
+
+
///Holds the signature for another record showing it has verified it to the best of it's ability and it should be trusted if the signatures match.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct VerificationRef<'a> {
+
pub created_at: jacquard_common::types::string::Datetime,
+
///The at://uri for the public did:key to verify the remote record. This also counts as the authority of the verification (example @2048.blue). As well as the type of verification by the collection name (blue.2048.key.game).
+
#[serde(borrow)]
+
pub key_ref: jacquard_common::types::string::AtUri<'a>,
+
///The at://uri for the record that is being verified.
+
#[serde(borrow)]
+
pub record_ref: jacquard_common::types::string::AtUri<'a>,
+
///The public verifiable signature of the record. Serialization of the records valued
+
#[serde(borrow)]
+
pub signature: jacquard_common::CowStr<'a>,
+
///DID of the subject the verification applies to.
+
#[serde(borrow)]
+
pub subject: jacquard_common::types::string::Did<'a>,
+
}
+33
crates/jacquard-api/src/blue__2048/verification/game.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: blue.2048.verification.game
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A record that holds a verification of a game record saying the owner of the repo has verified that it is a valid game played.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Game<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub created_at: std::option::Option<jacquard_common::types::string::Datetime>,
+
///This is the record that holds the publicly verifiable signature of a game record
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub verified_ref: std::option::Option<
+
crate::blue__2048::verification::VerificationRef<'a>,
+
>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Game<'_> {
+
const NSID: &'static str = "blue.2048.verification.game";
+
}
+33
crates/jacquard-api/src/blue__2048/verification/stats.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: blue.2048.verification.stats
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A record that holds a verification of a stats record saying the owner of the repo has verified that it is a valid and most likely not tampered with.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Stats<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub created_at: std::option::Option<jacquard_common::types::string::Datetime>,
+
///This is the record that holds the publicly verifiable signature of a stats record
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub verified_ref: std::option::Option<
+
crate::blue__2048::verification::VerificationRef<'a>,
+
>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Stats<'_> {
+
const NSID: &'static str = "blue.2048.verification.stats";
+
}
+6
crates/jacquard-api/src/blue_atplane.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod fav_client;
+28
crates/jacquard-api/src/blue_atplane/fav_client.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: blue.atplane.favClient
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A declaration of a favorite client.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct FavClient<'a> {
+
///Set to your favorite client.
+
#[serde(borrow)]
+
pub fav_client: jacquard_common::CowStr<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for FavClient<'_> {
+
const NSID: &'static str = "blue.atplane.favClient";
+
}
+1 -2
crates/jacquard-api/src/blue_rito/service.rs
···
// This file was automatically generated from Lexicon schemas.
// Any manual changes will be overwritten on the next regeneration.
-
pub mod get_schema;
-
pub mod schema;
+
pub mod get_schema;
+12
crates/jacquard-api/src/blue_rito/service/get_schema.rs
···
"application/json",
);
type Response = GetSchemaResponse;
+
}
+
+
///Endpoint type for
+
///blue.rito.service.getSchema
+
pub struct GetSchemaRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetSchemaRequest {
+
const PATH: &'static str = "/xrpc/blue.rito.service.getSchema";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = GetSchema<'de>;
+
type Response = GetSchemaResponse;
}
+10
crates/jacquard-api/src/buzz_bookhive/get_book.rs
···
const NSID: &'static str = "buzz.bookhive.getBook";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetBookResponse;
+
}
+
+
///Endpoint type for
+
///buzz.bookhive.getBook
+
pub struct GetBookRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetBookRequest {
+
const PATH: &'static str = "/xrpc/buzz.bookhive.getBook";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetBook<'de>;
+
type Response = GetBookResponse;
}
+10
crates/jacquard-api/src/buzz_bookhive/get_profile.rs
···
const NSID: &'static str = "buzz.bookhive.getProfile";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetProfileResponse;
+
}
+
+
///Endpoint type for
+
///buzz.bookhive.getProfile
+
pub struct GetProfileRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetProfileRequest {
+
const PATH: &'static str = "/xrpc/buzz.bookhive.getProfile";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetProfile<'de>;
+
type Response = GetProfileResponse;
}
+10
crates/jacquard-api/src/buzz_bookhive/search_books.rs
···
const NSID: &'static str = "buzz.bookhive.searchBooks";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = SearchBooksResponse;
+
}
+
+
///Endpoint type for
+
///buzz.bookhive.searchBooks
+
pub struct SearchBooksRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SearchBooksRequest {
+
const PATH: &'static str = "/xrpc/buzz.bookhive.searchBooks";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = SearchBooks<'de>;
+
type Response = SearchBooksResponse;
}
+22 -1
crates/jacquard-api/src/chat_bsky/actor/delete_account.rs
···
#[serde(rename_all = "camelCase")]
pub struct DeleteAccountOutput<'a> {}
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct DeleteAccount;
///Response type for
///chat.bsky.actor.deleteAccount
···
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
"application/json",
);
+
type Response = DeleteAccountResponse;
+
}
+
+
///Endpoint type for
+
///chat.bsky.actor.deleteAccount
+
pub struct DeleteAccountRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeleteAccountRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.actor.deleteAccount";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DeleteAccount;
type Response = DeleteAccountResponse;
}
+20 -1
crates/jacquard-api/src/chat_bsky/actor/export_account_data.rs
···
#[serde(rename_all = "camelCase")]
pub struct ExportAccountDataOutput<'a> {}
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct ExportAccountData;
///Response type for
///chat.bsky.actor.exportAccountData
···
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for ExportAccountData {
const NSID: &'static str = "chat.bsky.actor.exportAccountData";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = ExportAccountDataResponse;
+
}
+
+
///Endpoint type for
+
///chat.bsky.actor.exportAccountData
+
pub struct ExportAccountDataRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ExportAccountDataRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.actor.exportAccountData";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ExportAccountData;
type Response = ExportAccountDataResponse;
}
+55
crates/jacquard-api/src/chat_bsky/buzz_bookhive/book.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: buzz.bookhive.book
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A book in the user's library
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Book<'a> {
+
///The authors of the book (tab separated)
+
#[serde(borrow)]
+
pub authors: jacquard_common::CowStr<'a>,
+
///Cover image of the book
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cover: std::option::Option<jacquard_common::types::blob::Blob<'a>>,
+
pub created_at: jacquard_common::types::string::Datetime,
+
///The date the user finished reading the book
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub finished_at: std::option::Option<jacquard_common::types::string::Datetime>,
+
///The book's hive id, used to correlate user's books with the hive
+
#[serde(borrow)]
+
pub hive_id: jacquard_common::CowStr<'a>,
+
///The book's review
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub review: std::option::Option<jacquard_common::CowStr<'a>>,
+
///Number of stars given to the book (1-10) which will be mapped to 1-5 stars
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub stars: std::option::Option<i64>,
+
///The date the user started reading the book
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub started_at: std::option::Option<jacquard_common::types::string::Datetime>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub status: std::option::Option<jacquard_common::CowStr<'a>>,
+
///The title of the book
+
#[serde(borrow)]
+
pub title: jacquard_common::CowStr<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Book<'_> {
+
const NSID: &'static str = "buzz.bookhive.book";
+
}
+34
crates/jacquard-api/src/chat_bsky/buzz_bookhive/buzz.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: buzz.bookhive.buzz
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///Record containing a Bookhive comment.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Buzz<'a> {
+
#[serde(borrow)]
+
pub book: crate::com_atproto::repo::strong_ref::StrongRef<'a>,
+
///The content of the comment.
+
#[serde(borrow)]
+
pub comment: jacquard_common::CowStr<'a>,
+
///Client-declared timestamp when this comment was originally created.
+
pub created_at: jacquard_common::types::string::Datetime,
+
#[serde(borrow)]
+
pub parent: crate::com_atproto::repo::strong_ref::StrongRef<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Buzz<'_> {
+
const NSID: &'static str = "buzz.bookhive.buzz";
+
}
+85
crates/jacquard-api/src/chat_bsky/buzz_bookhive/get_book.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: buzz.bookhive.getBook
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetBook<'a> {
+
#[serde(borrow)]
+
#[builder(into)]
+
pub id: jacquard_common::CowStr<'a>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetBookOutput<'a> {
+
///The hive book's info
+
#[serde(borrow)]
+
pub book: jacquard_common::types::value::Data<'a>,
+
///Comments on the book
+
#[serde(borrow)]
+
pub comments: Vec<crate::buzz_bookhive::Comment<'a>>,
+
///Cover image of the book
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cover: std::option::Option<jacquard_common::types::blob::Blob<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub created_at: std::option::Option<jacquard_common::types::string::Datetime>,
+
///The date the user finished reading the book
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub finished_at: std::option::Option<jacquard_common::types::string::Datetime>,
+
///The book's review
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub review: std::option::Option<jacquard_common::CowStr<'a>>,
+
///Reviews of the book
+
#[serde(borrow)]
+
pub reviews: Vec<crate::buzz_bookhive::Review<'a>>,
+
///Number of stars given to the book (1-10) which will be mapped to 1-5 stars
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub stars: std::option::Option<i64>,
+
///The date the user started reading the book
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub started_at: std::option::Option<jacquard_common::types::string::Datetime>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub status: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
///Response type for
+
///buzz.bookhive.getBook
+
pub struct GetBookResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetBookResponse {
+
const NSID: &'static str = "buzz.bookhive.getBook";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetBookOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetBook<'de> {
+
const NSID: &'static str = "buzz.bookhive.getBook";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetBookResponse;
+
}
+68
crates/jacquard-api/src/chat_bsky/buzz_bookhive/get_profile.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: buzz.bookhive.getProfile
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetProfile<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub did: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub handle: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetProfileOutput<'a> {
+
///The user's activity
+
#[serde(borrow)]
+
pub activity: Vec<crate::buzz_bookhive::Activity<'a>>,
+
///All books in the user's library
+
#[serde(borrow)]
+
pub books: Vec<crate::buzz_bookhive::UserBook<'a>>,
+
///The user's profile
+
#[serde(borrow)]
+
pub profile: crate::buzz_bookhive::Profile<'a>,
+
}
+
+
///Response type for
+
///buzz.bookhive.getProfile
+
pub struct GetProfileResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetProfileResponse {
+
const NSID: &'static str = "buzz.bookhive.getProfile";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetProfileOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetProfile<'de> {
+
const NSID: &'static str = "buzz.bookhive.getProfile";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetProfileResponse;
+
}
+65
crates/jacquard-api/src/chat_bsky/buzz_bookhive/hive_book.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: buzz.bookhive.hiveBook
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A book within the hive
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct HiveBook<'a> {
+
///The authors of the book (tab separated)
+
#[serde(borrow)]
+
pub authors: jacquard_common::CowStr<'a>,
+
///URL to full-size cover image
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cover: std::option::Option<jacquard_common::CowStr<'a>>,
+
pub created_at: jacquard_common::types::string::Datetime,
+
///Book description/summary
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
///The book's hive id, used to correlate user's books with the hive
+
#[serde(borrow)]
+
pub id: jacquard_common::CowStr<'a>,
+
///Average rating (0-1000)
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub rating: std::option::Option<i64>,
+
///Number of ratings
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub ratings_count: std::option::Option<i64>,
+
///The source service name (e.g. Goodreads)
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub source: std::option::Option<jacquard_common::CowStr<'a>>,
+
///ID of the book in the source service
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub source_id: std::option::Option<jacquard_common::CowStr<'a>>,
+
///URL to the book on the source service
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub source_url: std::option::Option<jacquard_common::CowStr<'a>>,
+
///URL to thumbnail image
+
#[serde(borrow)]
+
pub thumbnail: jacquard_common::CowStr<'a>,
+
///The title of the book
+
#[serde(borrow)]
+
pub title: jacquard_common::CowStr<'a>,
+
pub updated_at: jacquard_common::types::string::Datetime,
+
}
+
+
impl jacquard_common::types::collection::Collection for HiveBook<'_> {
+
const NSID: &'static str = "buzz.bookhive.hiveBook";
+
}
+68
crates/jacquard-api/src/chat_bsky/buzz_bookhive/search_books.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: buzz.bookhive.searchBooks
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct SearchBooks<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub id: std::option::Option<jacquard_common::CowStr<'a>>,
+
///(default: 25, min: 1, max: 100)
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub limit: std::option::Option<i64>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub offset: std::option::Option<i64>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub q: jacquard_common::CowStr<'a>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct SearchBooksOutput<'a> {
+
#[serde(borrow)]
+
pub books: Vec<jacquard_common::types::value::Data<'a>>,
+
///The next offset to use for pagination (result of limit + offset)
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub offset: std::option::Option<i64>,
+
}
+
+
///Response type for
+
///buzz.bookhive.searchBooks
+
pub struct SearchBooksResponse;
+
impl jacquard_common::xrpc::XrpcResp for SearchBooksResponse {
+
const NSID: &'static str = "buzz.bookhive.searchBooks";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = SearchBooksOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for SearchBooks<'de> {
+
const NSID: &'static str = "buzz.bookhive.searchBooks";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = SearchBooksResponse;
+
}
+12
crates/jacquard-api/src/chat_bsky/convo/accept_convo.rs
···
"application/json",
);
type Response = AcceptConvoResponse;
+
}
+
+
///Endpoint type for
+
///chat.bsky.convo.acceptConvo
+
pub struct AcceptConvoRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for AcceptConvoRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.convo.acceptConvo";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = AcceptConvo<'de>;
+
type Response = AcceptConvoResponse;
}
+12
crates/jacquard-api/src/chat_bsky/convo/add_reaction.rs
···
"application/json",
);
type Response = AddReactionResponse;
+
}
+
+
///Endpoint type for
+
///chat.bsky.convo.addReaction
+
pub struct AddReactionRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for AddReactionRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.convo.addReaction";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = AddReaction<'de>;
+
type Response = AddReactionResponse;
}
+12
crates/jacquard-api/src/chat_bsky/convo/delete_message_for_self.rs
···
"application/json",
);
type Response = DeleteMessageForSelfResponse;
+
}
+
+
///Endpoint type for
+
///chat.bsky.convo.deleteMessageForSelf
+
pub struct DeleteMessageForSelfRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeleteMessageForSelfRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.convo.deleteMessageForSelf";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DeleteMessageForSelf<'de>;
+
type Response = DeleteMessageForSelfResponse;
}
+10
crates/jacquard-api/src/chat_bsky/convo/get_convo.rs
···
const NSID: &'static str = "chat.bsky.convo.getConvo";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetConvoResponse;
+
}
+
+
///Endpoint type for
+
///chat.bsky.convo.getConvo
+
pub struct GetConvoRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetConvoRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.convo.getConvo";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetConvo<'de>;
+
type Response = GetConvoResponse;
}
+10
crates/jacquard-api/src/chat_bsky/convo/get_convo_availability.rs
···
const NSID: &'static str = "chat.bsky.convo.getConvoAvailability";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetConvoAvailabilityResponse;
+
}
+
+
///Endpoint type for
+
///chat.bsky.convo.getConvoAvailability
+
pub struct GetConvoAvailabilityRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetConvoAvailabilityRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.convo.getConvoAvailability";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetConvoAvailability<'de>;
+
type Response = GetConvoAvailabilityResponse;
}
+10
crates/jacquard-api/src/chat_bsky/convo/get_convo_for_members.rs
···
const NSID: &'static str = "chat.bsky.convo.getConvoForMembers";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetConvoForMembersResponse;
+
}
+
+
///Endpoint type for
+
///chat.bsky.convo.getConvoForMembers
+
pub struct GetConvoForMembersRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetConvoForMembersRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.convo.getConvoForMembers";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetConvoForMembers<'de>;
+
type Response = GetConvoForMembersResponse;
}
+10
crates/jacquard-api/src/chat_bsky/convo/get_log.rs
···
const NSID: &'static str = "chat.bsky.convo.getLog";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetLogResponse;
+
}
+
+
///Endpoint type for
+
///chat.bsky.convo.getLog
+
pub struct GetLogRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetLogRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.convo.getLog";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetLog<'de>;
+
type Response = GetLogResponse;
}
+10
crates/jacquard-api/src/chat_bsky/convo/get_messages.rs
···
const NSID: &'static str = "chat.bsky.convo.getMessages";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetMessagesResponse;
+
}
+
+
///Endpoint type for
+
///chat.bsky.convo.getMessages
+
pub struct GetMessagesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetMessagesRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.convo.getMessages";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetMessages<'de>;
+
type Response = GetMessagesResponse;
}
+12
crates/jacquard-api/src/chat_bsky/convo/leave_convo.rs
···
"application/json",
);
type Response = LeaveConvoResponse;
+
}
+
+
///Endpoint type for
+
///chat.bsky.convo.leaveConvo
+
pub struct LeaveConvoRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for LeaveConvoRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.convo.leaveConvo";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = LeaveConvo<'de>;
+
type Response = LeaveConvoResponse;
}
+10
crates/jacquard-api/src/chat_bsky/convo/list_convos.rs
···
const NSID: &'static str = "chat.bsky.convo.listConvos";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = ListConvosResponse;
+
}
+
+
///Endpoint type for
+
///chat.bsky.convo.listConvos
+
pub struct ListConvosRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ListConvosRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.convo.listConvos";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ListConvos<'de>;
+
type Response = ListConvosResponse;
}
+12
crates/jacquard-api/src/chat_bsky/convo/mute_convo.rs
···
"application/json",
);
type Response = MuteConvoResponse;
+
}
+
+
///Endpoint type for
+
///chat.bsky.convo.muteConvo
+
pub struct MuteConvoRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for MuteConvoRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.convo.muteConvo";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = MuteConvo<'de>;
+
type Response = MuteConvoResponse;
}
+12
crates/jacquard-api/src/chat_bsky/convo/remove_reaction.rs
···
"application/json",
);
type Response = RemoveReactionResponse;
+
}
+
+
///Endpoint type for
+
///chat.bsky.convo.removeReaction
+
pub struct RemoveReactionRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for RemoveReactionRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.convo.removeReaction";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = RemoveReaction<'de>;
+
type Response = RemoveReactionResponse;
}
+12
crates/jacquard-api/src/chat_bsky/convo/send_message.rs
···
"application/json",
);
type Response = SendMessageResponse;
+
}
+
+
///Endpoint type for
+
///chat.bsky.convo.sendMessage
+
pub struct SendMessageRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SendMessageRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.convo.sendMessage";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = SendMessage<'de>;
+
type Response = SendMessageResponse;
}
+12
crates/jacquard-api/src/chat_bsky/convo/send_message_batch.rs
···
"application/json",
);
type Response = SendMessageBatchResponse;
+
}
+
+
///Endpoint type for
+
///chat.bsky.convo.sendMessageBatch
+
pub struct SendMessageBatchRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SendMessageBatchRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.convo.sendMessageBatch";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = SendMessageBatch<'de>;
+
type Response = SendMessageBatchResponse;
}
+12
crates/jacquard-api/src/chat_bsky/convo/unmute_convo.rs
···
"application/json",
);
type Response = UnmuteConvoResponse;
+
}
+
+
///Endpoint type for
+
///chat.bsky.convo.unmuteConvo
+
pub struct UnmuteConvoRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UnmuteConvoRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.convo.unmuteConvo";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UnmuteConvo<'de>;
+
type Response = UnmuteConvoResponse;
}
+12
crates/jacquard-api/src/chat_bsky/convo/update_all_read.rs
···
"application/json",
);
type Response = UpdateAllReadResponse;
+
}
+
+
///Endpoint type for
+
///chat.bsky.convo.updateAllRead
+
pub struct UpdateAllReadRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateAllReadRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.convo.updateAllRead";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateAllRead<'de>;
+
type Response = UpdateAllReadResponse;
}
+12
crates/jacquard-api/src/chat_bsky/convo/update_read.rs
···
"application/json",
);
type Response = UpdateReadResponse;
+
}
+
+
///Endpoint type for
+
///chat.bsky.convo.updateRead
+
pub struct UpdateReadRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateReadRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.convo.updateRead";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateRead<'de>;
+
type Response = UpdateReadResponse;
}
+10
crates/jacquard-api/src/chat_bsky/moderation/get_actor_metadata.rs
···
type Response = GetActorMetadataResponse;
}
+
///Endpoint type for
+
///chat.bsky.moderation.getActorMetadata
+
pub struct GetActorMetadataRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetActorMetadataRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.moderation.getActorMetadata";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetActorMetadata<'de>;
+
type Response = GetActorMetadataResponse;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+10
crates/jacquard-api/src/chat_bsky/moderation/get_message_context.rs
···
const NSID: &'static str = "chat.bsky.moderation.getMessageContext";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetMessageContextResponse;
+
}
+
+
///Endpoint type for
+
///chat.bsky.moderation.getMessageContext
+
pub struct GetMessageContextRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetMessageContextRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.moderation.getMessageContext";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetMessageContext<'de>;
+
type Response = GetMessageContextResponse;
}
+12
crates/jacquard-api/src/chat_bsky/moderation/update_actor_access.rs
···
"application/json",
);
type Response = UpdateActorAccessResponse;
+
}
+
+
///Endpoint type for
+
///chat.bsky.moderation.updateActorAccess
+
pub struct UpdateActorAccessRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateActorAccessRequest {
+
const PATH: &'static str = "/xrpc/chat.bsky.moderation.updateActorAccess";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateActorAccess<'de>;
+
type Response = UpdateActorAccessResponse;
}
+6
crates/jacquard-api/src/club_stellz.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod evm;
+6
crates/jacquard-api/src/club_stellz/evm.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod address_control;
+65
crates/jacquard-api/src/club_stellz/evm/address_control.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: club.stellz.evm.addressControl
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct AddressControl<'a> {
+
///Ethereum address as bytes (20 bytes)
+
pub address: bytes::Bytes,
+
///List of all Chain IDs (besides the one in the sign-in message, though you can include it) that the holder of this address is also active on & accepts tokens thru.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub also_on: std::option::Option<Vec<i64>>,
+
///Sign in With Ethereum message signature as bytes
+
pub signature: bytes::Bytes,
+
#[serde(borrow)]
+
pub siwe: crate::club_stellz::evm::address_control::SiweMessage<'a>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct SiweMessage<'a> {
+
///Ethereum address in 0x-prefixed, checksummed hex format
+
#[serde(borrow)]
+
pub address: jacquard_common::CowStr<'a>,
+
///Chain ID of the Ethereum VM network the address is on
+
pub chain_id: i64,
+
///Domain of the application requesting the signature, e.g. 'wallet-link.stellz.club'
+
#[serde(borrow)]
+
pub domain: jacquard_common::CowStr<'a>,
+
///Timestamp when the message was signed
+
pub issued_at: jacquard_common::types::string::Datetime,
+
///Random nonce the message was signed with
+
#[serde(borrow)]
+
pub nonce: jacquard_common::CowStr<'a>,
+
///The message shown to the user in their wallet before signing, which MUST be of the format 'Prove control of ${address} to link it to ${did}', where ${address} is the linked Ethereum address in 0x-prefixed, checksummed hex format, and ${did} is the DID of the user.
+
#[serde(borrow)]
+
pub statement: jacquard_common::CowStr<'a>,
+
///URI of the application requesting the signature, e.g. 'https://wallet-link.stellz.club'
+
#[serde(borrow)]
+
pub uri: jacquard_common::types::string::Uri<'a>,
+
///Sign in With Ethereum message version
+
#[serde(borrow)]
+
pub version: jacquard_common::CowStr<'a>,
+
}
+12
crates/jacquard-api/src/com_atproto/admin/delete_account.rs
···
"application/json",
);
type Response = DeleteAccountResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.admin.deleteAccount
+
pub struct DeleteAccountRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeleteAccountRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.admin.deleteAccount";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DeleteAccount<'de>;
+
type Response = DeleteAccountResponse;
}
+12
crates/jacquard-api/src/com_atproto/admin/disable_account_invites.rs
···
"application/json",
);
type Response = DisableAccountInvitesResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.admin.disableAccountInvites
+
pub struct DisableAccountInvitesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DisableAccountInvitesRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.admin.disableAccountInvites";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DisableAccountInvites<'de>;
+
type Response = DisableAccountInvitesResponse;
}
+12
crates/jacquard-api/src/com_atproto/admin/disable_invite_codes.rs
···
"application/json",
);
type Response = DisableInviteCodesResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.admin.disableInviteCodes
+
pub struct DisableInviteCodesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DisableInviteCodesRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.admin.disableInviteCodes";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DisableInviteCodes<'de>;
+
type Response = DisableInviteCodesResponse;
}
+12
crates/jacquard-api/src/com_atproto/admin/enable_account_invites.rs
···
"application/json",
);
type Response = EnableAccountInvitesResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.admin.enableAccountInvites
+
pub struct EnableAccountInvitesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for EnableAccountInvitesRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.admin.enableAccountInvites";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = EnableAccountInvites<'de>;
+
type Response = EnableAccountInvitesResponse;
}
+10
crates/jacquard-api/src/com_atproto/admin/get_account_info.rs
···
const NSID: &'static str = "com.atproto.admin.getAccountInfo";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetAccountInfoResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.admin.getAccountInfo
+
pub struct GetAccountInfoRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetAccountInfoRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.admin.getAccountInfo";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetAccountInfo<'de>;
+
type Response = GetAccountInfoResponse;
}
+10
crates/jacquard-api/src/com_atproto/admin/get_account_infos.rs
···
const NSID: &'static str = "com.atproto.admin.getAccountInfos";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetAccountInfosResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.admin.getAccountInfos
+
pub struct GetAccountInfosRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetAccountInfosRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.admin.getAccountInfos";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetAccountInfos<'de>;
+
type Response = GetAccountInfosResponse;
}
+10
crates/jacquard-api/src/com_atproto/admin/get_invite_codes.rs
···
const NSID: &'static str = "com.atproto.admin.getInviteCodes";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetInviteCodesResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.admin.getInviteCodes
+
pub struct GetInviteCodesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetInviteCodesRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.admin.getInviteCodes";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetInviteCodes<'de>;
+
type Response = GetInviteCodesResponse;
}
+10
crates/jacquard-api/src/com_atproto/admin/get_subject_status.rs
···
const NSID: &'static str = "com.atproto.admin.getSubjectStatus";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetSubjectStatusResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.admin.getSubjectStatus
+
pub struct GetSubjectStatusRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetSubjectStatusRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.admin.getSubjectStatus";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetSubjectStatus<'de>;
+
type Response = GetSubjectStatusResponse;
}
+10
crates/jacquard-api/src/com_atproto/admin/search_accounts.rs
···
const NSID: &'static str = "com.atproto.admin.searchAccounts";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = SearchAccountsResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.admin.searchAccounts
+
pub struct SearchAccountsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SearchAccountsRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.admin.searchAccounts";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = SearchAccounts<'de>;
+
type Response = SearchAccountsResponse;
}
+12
crates/jacquard-api/src/com_atproto/admin/send_email.rs
···
"application/json",
);
type Response = SendEmailResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.admin.sendEmail
+
pub struct SendEmailRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SendEmailRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.admin.sendEmail";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = SendEmail<'de>;
+
type Response = SendEmailResponse;
}
+12
crates/jacquard-api/src/com_atproto/admin/update_account_email.rs
···
"application/json",
);
type Response = UpdateAccountEmailResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.admin.updateAccountEmail
+
pub struct UpdateAccountEmailRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateAccountEmailRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.admin.updateAccountEmail";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateAccountEmail<'de>;
+
type Response = UpdateAccountEmailResponse;
}
+12
crates/jacquard-api/src/com_atproto/admin/update_account_handle.rs
···
"application/json",
);
type Response = UpdateAccountHandleResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.admin.updateAccountHandle
+
pub struct UpdateAccountHandleRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateAccountHandleRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.admin.updateAccountHandle";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateAccountHandle<'de>;
+
type Response = UpdateAccountHandleResponse;
}
+12
crates/jacquard-api/src/com_atproto/admin/update_account_password.rs
···
"application/json",
);
type Response = UpdateAccountPasswordResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.admin.updateAccountPassword
+
pub struct UpdateAccountPasswordRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateAccountPasswordRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.admin.updateAccountPassword";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateAccountPassword<'de>;
+
type Response = UpdateAccountPasswordResponse;
}
+12
crates/jacquard-api/src/com_atproto/admin/update_account_signing_key.rs
···
"application/json",
);
type Response = UpdateAccountSigningKeyResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.admin.updateAccountSigningKey
+
pub struct UpdateAccountSigningKeyRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateAccountSigningKeyRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.admin.updateAccountSigningKey";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateAccountSigningKey<'de>;
+
type Response = UpdateAccountSigningKeyResponse;
}
+12
crates/jacquard-api/src/com_atproto/admin/update_subject_status.rs
···
"application/json",
);
type Response = UpdateSubjectStatusResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.admin.updateSubjectStatus
+
pub struct UpdateSubjectStatusRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateSubjectStatusRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.admin.updateSubjectStatus";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateSubjectStatus<'de>;
+
type Response = UpdateSubjectStatusResponse;
}
+12
crates/jacquard-api/src/com_atproto/identity/refresh_identity.rs
···
"application/json",
);
type Response = RefreshIdentityResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.identity.refreshIdentity
+
pub struct RefreshIdentityRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for RefreshIdentityRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.identity.refreshIdentity";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = RefreshIdentity<'de>;
+
type Response = RefreshIdentityResponse;
}
+22 -1
crates/jacquard-api/src/com_atproto/identity/request_plc_operation_signature.rs
···
// Any manual changes will be overwritten on the next regeneration.
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct RequestPlcOperationSignature;
///Response type for
///com.atproto.identity.requestPlcOperationSignature
···
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
"application/json",
);
+
type Response = RequestPlcOperationSignatureResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.identity.requestPlcOperationSignature
+
pub struct RequestPlcOperationSignatureRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for RequestPlcOperationSignatureRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.identity.requestPlcOperationSignature";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = RequestPlcOperationSignature;
type Response = RequestPlcOperationSignatureResponse;
}
+10
crates/jacquard-api/src/com_atproto/identity/resolve_did.rs
···
const NSID: &'static str = "com.atproto.identity.resolveDid";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = ResolveDidResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.identity.resolveDid
+
pub struct ResolveDidRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ResolveDidRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.identity.resolveDid";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ResolveDid<'de>;
+
type Response = ResolveDidResponse;
}
+10
crates/jacquard-api/src/com_atproto/identity/resolve_handle.rs
···
const NSID: &'static str = "com.atproto.identity.resolveHandle";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = ResolveHandleResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.identity.resolveHandle
+
pub struct ResolveHandleRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ResolveHandleRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.identity.resolveHandle";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ResolveHandle<'de>;
+
type Response = ResolveHandleResponse;
}
+10
crates/jacquard-api/src/com_atproto/identity/resolve_identity.rs
···
const NSID: &'static str = "com.atproto.identity.resolveIdentity";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = ResolveIdentityResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.identity.resolveIdentity
+
pub struct ResolveIdentityRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ResolveIdentityRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.identity.resolveIdentity";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ResolveIdentity<'de>;
+
type Response = ResolveIdentityResponse;
}
+12
crates/jacquard-api/src/com_atproto/identity/sign_plc_operation.rs
···
"application/json",
);
type Response = SignPlcOperationResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.identity.signPlcOperation
+
pub struct SignPlcOperationRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SignPlcOperationRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.identity.signPlcOperation";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = SignPlcOperation<'de>;
+
type Response = SignPlcOperationResponse;
}
+12
crates/jacquard-api/src/com_atproto/identity/submit_plc_operation.rs
···
"application/json",
);
type Response = SubmitPlcOperationResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.identity.submitPlcOperation
+
pub struct SubmitPlcOperationRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SubmitPlcOperationRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.identity.submitPlcOperation";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = SubmitPlcOperation<'de>;
+
type Response = SubmitPlcOperationResponse;
}
+12
crates/jacquard-api/src/com_atproto/identity/update_handle.rs
···
"application/json",
);
type Response = UpdateHandleResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.identity.updateHandle
+
pub struct UpdateHandleRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateHandleRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.identity.updateHandle";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateHandle<'de>;
+
type Response = UpdateHandleResponse;
}
+10
crates/jacquard-api/src/com_atproto/label/query_labels.rs
···
const NSID: &'static str = "com.atproto.label.queryLabels";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = QueryLabelsResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.label.queryLabels
+
pub struct QueryLabelsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for QueryLabelsRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.label.queryLabels";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = QueryLabels<'de>;
+
type Response = QueryLabelsResponse;
}
+12
crates/jacquard-api/src/com_atproto/moderation/create_report.rs
···
type Response = CreateReportResponse;
}
+
///Endpoint type for
+
///com.atproto.moderation.createReport
+
pub struct CreateReportRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CreateReportRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.moderation.createReport";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = CreateReport<'de>;
+
type Response = CreateReportResponse;
+
}
+
///Moderation tool information for tracing the source of the action
#[jacquard_derive::lexicon]
#[derive(
+12
crates/jacquard-api/src/com_atproto/repo/apply_writes.rs
···
type Response = ApplyWritesResponse;
}
+
///Endpoint type for
+
///com.atproto.repo.applyWrites
+
pub struct ApplyWritesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ApplyWritesRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.repo.applyWrites";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = ApplyWrites<'de>;
+
type Response = ApplyWritesResponse;
+
}
+
///Operation which updates an existing record.
#[jacquard_derive::lexicon]
#[derive(
+12
crates/jacquard-api/src/com_atproto/repo/create_record.rs
···
"application/json",
);
type Response = CreateRecordResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.repo.createRecord
+
pub struct CreateRecordRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CreateRecordRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.repo.createRecord";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = CreateRecord<'de>;
+
type Response = CreateRecordResponse;
}
+12
crates/jacquard-api/src/com_atproto/repo/delete_record.rs
···
"application/json",
);
type Response = DeleteRecordResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.repo.deleteRecord
+
pub struct DeleteRecordRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeleteRecordRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.repo.deleteRecord";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DeleteRecord<'de>;
+
type Response = DeleteRecordResponse;
}
+10
crates/jacquard-api/src/com_atproto/repo/describe_repo.rs
···
const NSID: &'static str = "com.atproto.repo.describeRepo";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = DescribeRepoResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.repo.describeRepo
+
pub struct DescribeRepoRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DescribeRepoRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.repo.describeRepo";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = DescribeRepo<'de>;
+
type Response = DescribeRepoResponse;
}
+10
crates/jacquard-api/src/com_atproto/repo/get_record.rs
···
const NSID: &'static str = "com.atproto.repo.getRecord";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetRecordResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.repo.getRecord
+
pub struct GetRecordRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetRecordRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.repo.getRecord";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetRecord<'de>;
+
type Response = GetRecordResponse;
}
+12
crates/jacquard-api/src/com_atproto/repo/import_repo.rs
···
}),
)
}
+
}
+
+
///Endpoint type for
+
///com.atproto.repo.importRepo
+
pub struct ImportRepoRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ImportRepoRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.repo.importRepo";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/vnd.ipld.car",
+
);
+
type Request<'de> = ImportRepo;
+
type Response = ImportRepoResponse;
}
+10
crates/jacquard-api/src/com_atproto/repo/list_missing_blobs.rs
···
type Response = ListMissingBlobsResponse;
}
+
///Endpoint type for
+
///com.atproto.repo.listMissingBlobs
+
pub struct ListMissingBlobsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ListMissingBlobsRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.repo.listMissingBlobs";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ListMissingBlobs<'de>;
+
type Response = ListMissingBlobsResponse;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+10
crates/jacquard-api/src/com_atproto/repo/list_records.rs
···
type Response = ListRecordsResponse;
}
+
///Endpoint type for
+
///com.atproto.repo.listRecords
+
pub struct ListRecordsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ListRecordsRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.repo.listRecords";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ListRecords<'de>;
+
type Response = ListRecordsResponse;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+12
crates/jacquard-api/src/com_atproto/repo/put_record.rs
···
"application/json",
);
type Response = PutRecordResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.repo.putRecord
+
pub struct PutRecordRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for PutRecordRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.repo.putRecord";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = PutRecord<'de>;
+
type Response = PutRecordResponse;
}
+12
crates/jacquard-api/src/com_atproto/repo/upload_blob.rs
···
}),
)
}
+
}
+
+
///Endpoint type for
+
///com.atproto.repo.uploadBlob
+
pub struct UploadBlobRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UploadBlobRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.repo.uploadBlob";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"*/*",
+
);
+
type Request<'de> = UploadBlob;
+
type Response = UploadBlobResponse;
}
+22 -1
crates/jacquard-api/src/com_atproto/server/activate_account.rs
···
// Any manual changes will be overwritten on the next regeneration.
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct ActivateAccount;
///Response type for
///com.atproto.server.activateAccount
···
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
"application/json",
);
+
type Response = ActivateAccountResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.activateAccount
+
pub struct ActivateAccountRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ActivateAccountRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.activateAccount";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = ActivateAccount;
type Response = ActivateAccountResponse;
}
+20 -1
crates/jacquard-api/src/com_atproto/server/check_account_status.rs
···
}
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct CheckAccountStatus;
///Response type for
///com.atproto.server.checkAccountStatus
···
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for CheckAccountStatus {
const NSID: &'static str = "com.atproto.server.checkAccountStatus";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = CheckAccountStatusResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.checkAccountStatus
+
pub struct CheckAccountStatusRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CheckAccountStatusRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.checkAccountStatus";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = CheckAccountStatus;
type Response = CheckAccountStatusResponse;
}
+12
crates/jacquard-api/src/com_atproto/server/confirm_email.rs
···
"application/json",
);
type Response = ConfirmEmailResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.confirmEmail
+
pub struct ConfirmEmailRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ConfirmEmailRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.confirmEmail";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = ConfirmEmail<'de>;
+
type Response = ConfirmEmailResponse;
}
+12
crates/jacquard-api/src/com_atproto/server/create_account.rs
···
"application/json",
);
type Response = CreateAccountResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.createAccount
+
pub struct CreateAccountRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CreateAccountRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.createAccount";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = CreateAccount<'de>;
+
type Response = CreateAccountResponse;
}
+12
crates/jacquard-api/src/com_atproto/server/create_app_password.rs
···
"application/json",
);
type Response = CreateAppPasswordResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.createAppPassword
+
pub struct CreateAppPasswordRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CreateAppPasswordRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.createAppPassword";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = CreateAppPassword<'de>;
+
type Response = CreateAppPasswordResponse;
}
+12
crates/jacquard-api/src/com_atproto/server/create_invite_code.rs
···
"application/json",
);
type Response = CreateInviteCodeResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.createInviteCode
+
pub struct CreateInviteCodeRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CreateInviteCodeRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.createInviteCode";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = CreateInviteCode<'de>;
+
type Response = CreateInviteCodeResponse;
}
+12
crates/jacquard-api/src/com_atproto/server/create_invite_codes.rs
···
"application/json",
);
type Response = CreateInviteCodesResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.createInviteCodes
+
pub struct CreateInviteCodesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CreateInviteCodesRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.createInviteCodes";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = CreateInviteCodes<'de>;
+
type Response = CreateInviteCodesResponse;
}
+12
crates/jacquard-api/src/com_atproto/server/create_session.rs
···
"application/json",
);
type Response = CreateSessionResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.createSession
+
pub struct CreateSessionRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CreateSessionRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.createSession";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = CreateSession<'de>;
+
type Response = CreateSessionResponse;
}
+12
crates/jacquard-api/src/com_atproto/server/deactivate_account.rs
···
"application/json",
);
type Response = DeactivateAccountResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.deactivateAccount
+
pub struct DeactivateAccountRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeactivateAccountRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.deactivateAccount";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DeactivateAccount<'de>;
+
type Response = DeactivateAccountResponse;
}
+12
crates/jacquard-api/src/com_atproto/server/delete_account.rs
···
"application/json",
);
type Response = DeleteAccountResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.deleteAccount
+
pub struct DeleteAccountRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeleteAccountRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.deleteAccount";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DeleteAccount<'de>;
+
type Response = DeleteAccountResponse;
}
+22 -1
crates/jacquard-api/src/com_atproto/server/delete_session.rs
···
// Any manual changes will be overwritten on the next regeneration.
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct DeleteSession;
///Response type for
///com.atproto.server.deleteSession
···
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
"application/json",
);
+
type Response = DeleteSessionResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.deleteSession
+
pub struct DeleteSessionRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeleteSessionRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.deleteSession";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DeleteSession;
type Response = DeleteSessionResponse;
}
+20 -1
crates/jacquard-api/src/com_atproto/server/describe_server.rs
···
}
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct DescribeServer;
///Response type for
///com.atproto.server.describeServer
···
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for DescribeServer {
const NSID: &'static str = "com.atproto.server.describeServer";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = DescribeServerResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.describeServer
+
pub struct DescribeServerRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DescribeServerRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.describeServer";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = DescribeServer;
type Response = DescribeServerResponse;
}
+10
crates/jacquard-api/src/com_atproto/server/get_account_invite_codes.rs
···
const NSID: &'static str = "com.atproto.server.getAccountInviteCodes";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetAccountInviteCodesResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.getAccountInviteCodes
+
pub struct GetAccountInviteCodesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetAccountInviteCodesRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.getAccountInviteCodes";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetAccountInviteCodes;
+
type Response = GetAccountInviteCodesResponse;
}
+10
crates/jacquard-api/src/com_atproto/server/get_service_auth.rs
···
const NSID: &'static str = "com.atproto.server.getServiceAuth";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetServiceAuthResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.getServiceAuth
+
pub struct GetServiceAuthRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetServiceAuthRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.getServiceAuth";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetServiceAuth<'de>;
+
type Response = GetServiceAuthResponse;
}
+20 -1
crates/jacquard-api/src/com_atproto/server/get_session.rs
···
}
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct GetSession;
///Response type for
///com.atproto.server.getSession
···
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetSession {
const NSID: &'static str = "com.atproto.server.getSession";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetSessionResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.getSession
+
pub struct GetSessionRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetSessionRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.getSession";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetSession;
type Response = GetSessionResponse;
}
+20 -1
crates/jacquard-api/src/com_atproto/server/list_app_passwords.rs
···
}
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct ListAppPasswords;
///Response type for
///com.atproto.server.listAppPasswords
···
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for ListAppPasswords {
const NSID: &'static str = "com.atproto.server.listAppPasswords";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = ListAppPasswordsResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.listAppPasswords
+
pub struct ListAppPasswordsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ListAppPasswordsRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.listAppPasswords";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ListAppPasswords;
type Response = ListAppPasswordsResponse;
}
+22 -1
crates/jacquard-api/src/com_atproto/server/refresh_session.rs
···
}
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct RefreshSession;
///Response type for
///com.atproto.server.refreshSession
···
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
"application/json",
);
+
type Response = RefreshSessionResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.refreshSession
+
pub struct RefreshSessionRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for RefreshSessionRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.refreshSession";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = RefreshSession;
type Response = RefreshSessionResponse;
}
+22 -1
crates/jacquard-api/src/com_atproto/server/request_account_delete.rs
···
// Any manual changes will be overwritten on the next regeneration.
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct RequestAccountDelete;
///Response type for
///com.atproto.server.requestAccountDelete
···
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
"application/json",
);
+
type Response = RequestAccountDeleteResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.requestAccountDelete
+
pub struct RequestAccountDeleteRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for RequestAccountDeleteRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.requestAccountDelete";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = RequestAccountDelete;
type Response = RequestAccountDeleteResponse;
}
+22 -1
crates/jacquard-api/src/com_atproto/server/request_email_confirmation.rs
···
// Any manual changes will be overwritten on the next regeneration.
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct RequestEmailConfirmation;
///Response type for
///com.atproto.server.requestEmailConfirmation
···
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
"application/json",
);
+
type Response = RequestEmailConfirmationResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.requestEmailConfirmation
+
pub struct RequestEmailConfirmationRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for RequestEmailConfirmationRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.requestEmailConfirmation";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = RequestEmailConfirmation;
type Response = RequestEmailConfirmationResponse;
}
+22 -1
crates/jacquard-api/src/com_atproto/server/request_email_update.rs
···
}
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct RequestEmailUpdate;
///Response type for
///com.atproto.server.requestEmailUpdate
···
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
"application/json",
);
+
type Response = RequestEmailUpdateResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.requestEmailUpdate
+
pub struct RequestEmailUpdateRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for RequestEmailUpdateRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.requestEmailUpdate";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = RequestEmailUpdate;
type Response = RequestEmailUpdateResponse;
}
+12
crates/jacquard-api/src/com_atproto/server/request_password_reset.rs
···
"application/json",
);
type Response = RequestPasswordResetResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.requestPasswordReset
+
pub struct RequestPasswordResetRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for RequestPasswordResetRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.requestPasswordReset";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = RequestPasswordReset<'de>;
+
type Response = RequestPasswordResetResponse;
}
+12
crates/jacquard-api/src/com_atproto/server/reserve_signing_key.rs
···
"application/json",
);
type Response = ReserveSigningKeyResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.reserveSigningKey
+
pub struct ReserveSigningKeyRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ReserveSigningKeyRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.reserveSigningKey";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = ReserveSigningKey<'de>;
+
type Response = ReserveSigningKeyResponse;
}
+12
crates/jacquard-api/src/com_atproto/server/reset_password.rs
···
"application/json",
);
type Response = ResetPasswordResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.resetPassword
+
pub struct ResetPasswordRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ResetPasswordRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.resetPassword";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = ResetPassword<'de>;
+
type Response = ResetPasswordResponse;
}
+12
crates/jacquard-api/src/com_atproto/server/revoke_app_password.rs
···
"application/json",
);
type Response = RevokeAppPasswordResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.revokeAppPassword
+
pub struct RevokeAppPasswordRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for RevokeAppPasswordRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.revokeAppPassword";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = RevokeAppPassword<'de>;
+
type Response = RevokeAppPasswordResponse;
}
+12
crates/jacquard-api/src/com_atproto/server/update_email.rs
···
"application/json",
);
type Response = UpdateEmailResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.server.updateEmail
+
pub struct UpdateEmailRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateEmailRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.server.updateEmail";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateEmail<'de>;
+
type Response = UpdateEmailResponse;
}
+10
crates/jacquard-api/src/com_atproto/sync/get_blob.rs
···
const NSID: &'static str = "com.atproto.sync.getBlob";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetBlobResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.sync.getBlob
+
pub struct GetBlobRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetBlobRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.sync.getBlob";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetBlob<'de>;
+
type Response = GetBlobResponse;
}
+10
crates/jacquard-api/src/com_atproto/sync/get_blocks.rs
···
const NSID: &'static str = "com.atproto.sync.getBlocks";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetBlocksResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.sync.getBlocks
+
pub struct GetBlocksRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetBlocksRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.sync.getBlocks";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetBlocks<'de>;
+
type Response = GetBlocksResponse;
}
+10
crates/jacquard-api/src/com_atproto/sync/get_checkout.rs
···
const NSID: &'static str = "com.atproto.sync.getCheckout";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetCheckoutResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.sync.getCheckout
+
pub struct GetCheckoutRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetCheckoutRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.sync.getCheckout";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetCheckout<'de>;
+
type Response = GetCheckoutResponse;
}
+10
crates/jacquard-api/src/com_atproto/sync/get_head.rs
···
const NSID: &'static str = "com.atproto.sync.getHead";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetHeadResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.sync.getHead
+
pub struct GetHeadRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetHeadRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.sync.getHead";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetHead<'de>;
+
type Response = GetHeadResponse;
}
+10
crates/jacquard-api/src/com_atproto/sync/get_host_status.rs
···
const NSID: &'static str = "com.atproto.sync.getHostStatus";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetHostStatusResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.sync.getHostStatus
+
pub struct GetHostStatusRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetHostStatusRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.sync.getHostStatus";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetHostStatus<'de>;
+
type Response = GetHostStatusResponse;
}
+10
crates/jacquard-api/src/com_atproto/sync/get_latest_commit.rs
···
const NSID: &'static str = "com.atproto.sync.getLatestCommit";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetLatestCommitResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.sync.getLatestCommit
+
pub struct GetLatestCommitRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetLatestCommitRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.sync.getLatestCommit";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetLatestCommit<'de>;
+
type Response = GetLatestCommitResponse;
}
+10
crates/jacquard-api/src/com_atproto/sync/get_record.rs
···
const NSID: &'static str = "com.atproto.sync.getRecord";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetRecordResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.sync.getRecord
+
pub struct GetRecordRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetRecordRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.sync.getRecord";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetRecord<'de>;
+
type Response = GetRecordResponse;
}
+10
crates/jacquard-api/src/com_atproto/sync/get_repo.rs
···
const NSID: &'static str = "com.atproto.sync.getRepo";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetRepoResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.sync.getRepo
+
pub struct GetRepoRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetRepoRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.sync.getRepo";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetRepo<'de>;
+
type Response = GetRepoResponse;
}
+10
crates/jacquard-api/src/com_atproto/sync/get_repo_status.rs
···
const NSID: &'static str = "com.atproto.sync.getRepoStatus";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetRepoStatusResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.sync.getRepoStatus
+
pub struct GetRepoStatusRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetRepoStatusRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.sync.getRepoStatus";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetRepoStatus<'de>;
+
type Response = GetRepoStatusResponse;
}
+10
crates/jacquard-api/src/com_atproto/sync/list_blobs.rs
···
const NSID: &'static str = "com.atproto.sync.listBlobs";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = ListBlobsResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.sync.listBlobs
+
pub struct ListBlobsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ListBlobsRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.sync.listBlobs";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ListBlobs<'de>;
+
type Response = ListBlobsResponse;
}
+10
crates/jacquard-api/src/com_atproto/sync/list_hosts.rs
···
const NSID: &'static str = "com.atproto.sync.listHosts";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = ListHostsResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.sync.listHosts
+
pub struct ListHostsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ListHostsRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.sync.listHosts";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ListHosts<'de>;
+
type Response = ListHostsResponse;
}
+10
crates/jacquard-api/src/com_atproto/sync/list_repos.rs
···
type Response = ListReposResponse;
}
+
///Endpoint type for
+
///com.atproto.sync.listRepos
+
pub struct ListReposRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ListReposRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.sync.listRepos";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ListRepos<'de>;
+
type Response = ListReposResponse;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+10
crates/jacquard-api/src/com_atproto/sync/list_repos_by_collection.rs
···
type Response = ListReposByCollectionResponse;
}
+
///Endpoint type for
+
///com.atproto.sync.listReposByCollection
+
pub struct ListReposByCollectionRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ListReposByCollectionRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.sync.listReposByCollection";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ListReposByCollection<'de>;
+
type Response = ListReposByCollectionResponse;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+12
crates/jacquard-api/src/com_atproto/sync/notify_of_update.rs
···
"application/json",
);
type Response = NotifyOfUpdateResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.sync.notifyOfUpdate
+
pub struct NotifyOfUpdateRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for NotifyOfUpdateRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.sync.notifyOfUpdate";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = NotifyOfUpdate<'de>;
+
type Response = NotifyOfUpdateResponse;
}
+12
crates/jacquard-api/src/com_atproto/sync/request_crawl.rs
···
"application/json",
);
type Response = RequestCrawlResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.sync.requestCrawl
+
pub struct RequestCrawlRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for RequestCrawlRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.sync.requestCrawl";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = RequestCrawl<'de>;
+
type Response = RequestCrawlResponse;
}
+12
crates/jacquard-api/src/com_atproto/temp/add_reserved_handle.rs
···
"application/json",
);
type Response = AddReservedHandleResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.temp.addReservedHandle
+
pub struct AddReservedHandleRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for AddReservedHandleRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.temp.addReservedHandle";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = AddReservedHandle<'de>;
+
type Response = AddReservedHandleResponse;
}
+10
crates/jacquard-api/src/com_atproto/temp/check_handle_availability.rs
···
type Response = CheckHandleAvailabilityResponse;
}
+
///Endpoint type for
+
///com.atproto.temp.checkHandleAvailability
+
pub struct CheckHandleAvailabilityRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CheckHandleAvailabilityRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.temp.checkHandleAvailability";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = CheckHandleAvailability<'de>;
+
type Response = CheckHandleAvailabilityResponse;
+
}
+
///Indicates the provided handle is available.
#[jacquard_derive::lexicon]
#[derive(
+20 -1
crates/jacquard-api/src/com_atproto/temp/check_signup_queue.rs
···
}
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct CheckSignupQueue;
///Response type for
///com.atproto.temp.checkSignupQueue
···
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for CheckSignupQueue {
const NSID: &'static str = "com.atproto.temp.checkSignupQueue";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = CheckSignupQueueResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.temp.checkSignupQueue
+
pub struct CheckSignupQueueRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CheckSignupQueueRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.temp.checkSignupQueue";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = CheckSignupQueue;
type Response = CheckSignupQueueResponse;
}
+10
crates/jacquard-api/src/com_atproto/temp/dereference_scope.rs
···
const NSID: &'static str = "com.atproto.temp.dereferenceScope";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = DereferenceScopeResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.temp.dereferenceScope
+
pub struct DereferenceScopeRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DereferenceScopeRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.temp.dereferenceScope";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = DereferenceScope<'de>;
+
type Response = DereferenceScopeResponse;
}
+10
crates/jacquard-api/src/com_atproto/temp/fetch_labels.rs
···
const NSID: &'static str = "com.atproto.temp.fetchLabels";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = FetchLabelsResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.temp.fetchLabels
+
pub struct FetchLabelsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for FetchLabelsRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.temp.fetchLabels";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = FetchLabels;
+
type Response = FetchLabelsResponse;
}
+12
crates/jacquard-api/src/com_atproto/temp/request_phone_verification.rs
···
"application/json",
);
type Response = RequestPhoneVerificationResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.temp.requestPhoneVerification
+
pub struct RequestPhoneVerificationRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for RequestPhoneVerificationRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.temp.requestPhoneVerification";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = RequestPhoneVerification<'de>;
+
type Response = RequestPhoneVerificationResponse;
}
+12
crates/jacquard-api/src/com_atproto/temp/revoke_account_credentials.rs
···
"application/json",
);
type Response = RevokeAccountCredentialsResponse;
+
}
+
+
///Endpoint type for
+
///com.atproto.temp.revokeAccountCredentials
+
pub struct RevokeAccountCredentialsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for RevokeAccountCredentialsRequest {
+
const PATH: &'static str = "/xrpc/com.atproto.temp.revokeAccountCredentials";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = RevokeAccountCredentials<'de>;
+
type Response = RevokeAccountCredentialsResponse;
}
+10
crates/jacquard-api/src/com_bad_example/identity/resolve_mini_doc.rs
···
const NSID: &'static str = "com.bad-example.identity.resolveMiniDoc";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = ResolveMiniDocResponse;
+
}
+
+
///Endpoint type for
+
///com.bad-example.identity.resolveMiniDoc
+
pub struct ResolveMiniDocRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ResolveMiniDocRequest {
+
const PATH: &'static str = "/xrpc/com.bad-example.identity.resolveMiniDoc";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ResolveMiniDoc<'de>;
+
type Response = ResolveMiniDocResponse;
}
+6
crates/jacquard-api/src/com_crabdance.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod nandi;
+6
crates/jacquard-api/src/com_crabdance/nandi.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod post;
+44
crates/jacquard-api/src/com_crabdance/nandi/post.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: com.crabdance.nandi.post
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Post<'a> {
+
///The main content of the blog post in markdown
+
#[serde(borrow)]
+
pub content: jacquard_common::CowStr<'a>,
+
pub created_at: jacquard_common::types::string::Datetime,
+
///Whether the post is published or draft
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub published: std::option::Option<bool>,
+
///Optional summary/excerpt of the post
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub summary: std::option::Option<jacquard_common::CowStr<'a>>,
+
///Tags for categorizing the post
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub tags: std::option::Option<Vec<jacquard_common::CowStr<'a>>>,
+
///The title of the blog post
+
#[serde(borrow)]
+
pub title: jacquard_common::CowStr<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub updated_at: std::option::Option<jacquard_common::types::string::Datetime>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Post<'_> {
+
const NSID: &'static str = "com.crabdance.nandi.post";
+
}
+10
crates/jacquard-api/src/com_shinolabs/pinksea/get_author_feed.rs
···
const NSID: &'static str = "com.shinolabs.pinksea.getAuthorFeed";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetAuthorFeedResponse;
+
}
+
+
///Endpoint type for
+
///com.shinolabs.pinksea.getAuthorFeed
+
pub struct GetAuthorFeedRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetAuthorFeedRequest {
+
const PATH: &'static str = "/xrpc/com.shinolabs.pinksea.getAuthorFeed";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetAuthorFeed<'de>;
+
type Response = GetAuthorFeedResponse;
}
+10
crates/jacquard-api/src/com_shinolabs/pinksea/get_author_replies.rs
···
const NSID: &'static str = "com.shinolabs.pinksea.getAuthorReplies";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetAuthorRepliesResponse;
+
}
+
+
///Endpoint type for
+
///com.shinolabs.pinksea.getAuthorReplies
+
pub struct GetAuthorRepliesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetAuthorRepliesRequest {
+
const PATH: &'static str = "/xrpc/com.shinolabs.pinksea.getAuthorReplies";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetAuthorReplies<'de>;
+
type Response = GetAuthorRepliesResponse;
}
+10
crates/jacquard-api/src/com_shinolabs/pinksea/get_handle_from_did.rs
···
const NSID: &'static str = "com.shinolabs.pinksea.getHandleFromDid";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetHandleFromDidResponse;
+
}
+
+
///Endpoint type for
+
///com.shinolabs.pinksea.getHandleFromDid
+
pub struct GetHandleFromDidRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetHandleFromDidRequest {
+
const PATH: &'static str = "/xrpc/com.shinolabs.pinksea.getHandleFromDid";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetHandleFromDid<'de>;
+
type Response = GetHandleFromDidResponse;
}
+10
crates/jacquard-api/src/com_shinolabs/pinksea/get_identity.rs
···
const NSID: &'static str = "com.shinolabs.pinksea.getIdentity";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetIdentityResponse;
+
}
+
+
///Endpoint type for
+
///com.shinolabs.pinksea.getIdentity
+
pub struct GetIdentityRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetIdentityRequest {
+
const PATH: &'static str = "/xrpc/com.shinolabs.pinksea.getIdentity";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetIdentity;
+
type Response = GetIdentityResponse;
}
+10
crates/jacquard-api/src/com_shinolabs/pinksea/get_oekaki.rs
···
const NSID: &'static str = "com.shinolabs.pinksea.getOekaki";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetOekakiResponse;
+
}
+
+
///Endpoint type for
+
///com.shinolabs.pinksea.getOekaki
+
pub struct GetOekakiRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetOekakiRequest {
+
const PATH: &'static str = "/xrpc/com.shinolabs.pinksea.getOekaki";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetOekaki<'de>;
+
type Response = GetOekakiResponse;
}
+10
crates/jacquard-api/src/com_shinolabs/pinksea/get_parent_for_reply.rs
···
const NSID: &'static str = "com.shinolabs.pinksea.getParentForReply";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetParentForReplyResponse;
+
}
+
+
///Endpoint type for
+
///com.shinolabs.pinksea.getParentForReply
+
pub struct GetParentForReplyRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetParentForReplyRequest {
+
const PATH: &'static str = "/xrpc/com.shinolabs.pinksea.getParentForReply";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetParentForReply<'de>;
+
type Response = GetParentForReplyResponse;
}
+10
crates/jacquard-api/src/com_shinolabs/pinksea/get_recent.rs
···
const NSID: &'static str = "com.shinolabs.pinksea.getRecent";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetRecentResponse;
+
}
+
+
///Endpoint type for
+
///com.shinolabs.pinksea.getRecent
+
pub struct GetRecentRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetRecentRequest {
+
const PATH: &'static str = "/xrpc/com.shinolabs.pinksea.getRecent";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetRecent;
+
type Response = GetRecentResponse;
}
+10
crates/jacquard-api/src/com_shinolabs/pinksea/get_tag_feed.rs
···
const NSID: &'static str = "com.shinolabs.pinksea.getTagFeed";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetTagFeedResponse;
+
}
+
+
///Endpoint type for
+
///com.shinolabs.pinksea.getTagFeed
+
pub struct GetTagFeedRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetTagFeedRequest {
+
const PATH: &'static str = "/xrpc/com.shinolabs.pinksea.getTagFeed";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetTagFeed<'de>;
+
type Response = GetTagFeedResponse;
}
+10
crates/jacquard-api/src/com_whtwnd/blog/get_author_posts.rs
···
const NSID: &'static str = "com.whtwnd.blog.getAuthorPosts";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetAuthorPostsResponse;
+
}
+
+
///Endpoint type for
+
///com.whtwnd.blog.getAuthorPosts
+
pub struct GetAuthorPostsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetAuthorPostsRequest {
+
const PATH: &'static str = "/xrpc/com.whtwnd.blog.getAuthorPosts";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetAuthorPosts<'de>;
+
type Response = GetAuthorPostsResponse;
}
+10
crates/jacquard-api/src/com_whtwnd/blog/get_entry_metadata_by_name.rs
···
const NSID: &'static str = "com.whtwnd.blog.getEntryMetadataByName";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetEntryMetadataByNameResponse;
+
}
+
+
///Endpoint type for
+
///com.whtwnd.blog.getEntryMetadataByName
+
pub struct GetEntryMetadataByNameRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetEntryMetadataByNameRequest {
+
const PATH: &'static str = "/xrpc/com.whtwnd.blog.getEntryMetadataByName";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetEntryMetadataByName<'de>;
+
type Response = GetEntryMetadataByNameResponse;
}
+10
crates/jacquard-api/src/com_whtwnd/blog/get_mentions_by_entry.rs
···
const NSID: &'static str = "com.whtwnd.blog.getMentionsByEntry";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetMentionsByEntryResponse;
+
}
+
+
///Endpoint type for
+
///com.whtwnd.blog.getMentionsByEntry
+
pub struct GetMentionsByEntryRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetMentionsByEntryRequest {
+
const PATH: &'static str = "/xrpc/com.whtwnd.blog.getMentionsByEntry";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetMentionsByEntry<'de>;
+
type Response = GetMentionsByEntryResponse;
}
+12
crates/jacquard-api/src/com_whtwnd/blog/notify_of_new_entry.rs
···
"application/json",
);
type Response = NotifyOfNewEntryResponse;
+
}
+
+
///Endpoint type for
+
///com.whtwnd.blog.notifyOfNewEntry
+
pub struct NotifyOfNewEntryRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for NotifyOfNewEntryRequest {
+
const PATH: &'static str = "/xrpc/com.whtwnd.blog.notifyOfNewEntry";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = NotifyOfNewEntry<'de>;
+
type Response = NotifyOfNewEntryResponse;
}
+10
crates/jacquard-api/src/community_lexicon/bookmarks/get_actor_bookmarks.rs
···
const NSID: &'static str = "community.lexicon.bookmarks.getActorBookmarks";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetActorBookmarksResponse;
+
}
+
+
///Endpoint type for
+
///community.lexicon.bookmarks.getActorBookmarks
+
pub struct GetActorBookmarksRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetActorBookmarksRequest {
+
const PATH: &'static str = "/xrpc/community.lexicon.bookmarks.getActorBookmarks";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetActorBookmarks<'de>;
+
type Response = GetActorBookmarksResponse;
}
+6
crates/jacquard-api/src/dev_baileytownsend.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod health;
+9
crates/jacquard-api/src/dev_baileytownsend/health.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod calories;
+
pub mod rings;
+
pub mod steps;
+
pub mod workout;
+28
crates/jacquard-api/src/dev_baileytownsend/health/calories.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: dev.baileytownsend.health.calories
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A record of daily intake and burned calories.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Calories<'a> {
+
pub burned: i64,
+
pub created_at: jacquard_common::types::string::Datetime,
+
pub intake: i64,
+
}
+
+
impl jacquard_common::types::collection::Collection for Calories<'_> {
+
const NSID: &'static str = "dev.baileytownsend.health.calories";
+
}
+38
crates/jacquard-api/src/dev_baileytownsend/health/rings.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: dev.baileytownsend.health.rings
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A record of daily activity rings (Apple Fitness), including move, exercise, and stand goals.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Rings<'a> {
+
pub created_at: jacquard_common::types::string::Datetime,
+
///The total minutes of exercise completed.
+
pub exercise: i64,
+
///The daily exercise goal in minutes.
+
pub exercise_goal: i64,
+
///The total active calories burned for the day.
+
pub r#move: i64,
+
///The daily move goal in calories.
+
pub move_goal: i64,
+
///The daily stand goal in hours.
+
pub stand_goal: i64,
+
///The number of hours the user stood up and moved around.
+
pub stand_hours: i64,
+
}
+
+
impl jacquard_common::types::collection::Collection for Rings<'_> {
+
const NSID: &'static str = "dev.baileytownsend.health.rings";
+
}
+26
crates/jacquard-api/src/dev_baileytownsend/health/steps.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: dev.baileytownsend.health.steps
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Steps<'a> {
+
pub created_at: jacquard_common::types::string::Datetime,
+
pub steps: i64,
+
}
+
+
impl jacquard_common::types::collection::Collection for Steps<'_> {
+
const NSID: &'static str = "dev.baileytownsend.health.steps";
+
}
+39
crates/jacquard-api/src/dev_baileytownsend/health/workout.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: dev.baileytownsend.health.workout
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Workout<'a> {
+
///Type of activity. Walking, running, weights, etc.
+
#[serde(borrow)]
+
pub activity: jacquard_common::CowStr<'a>,
+
///Active calories burned during the workout.
+
pub calories_burned: i64,
+
pub created_at: jacquard_common::types::string::Datetime,
+
///Distance covered during the workout (optional).
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub distance: std::option::Option<jacquard_common::CowStr<'a>>,
+
///How long the workout lasted in minutes.
+
#[serde(borrow)]
+
pub duration: jacquard_common::CowStr<'a>,
+
pub end_time: jacquard_common::types::string::Datetime,
+
pub start_time: jacquard_common::types::string::Datetime,
+
}
+
+
impl jacquard_common::types::collection::Collection for Workout<'_> {
+
const NSID: &'static str = "dev.baileytownsend.health.workout";
+
}
+2 -1
crates/jacquard-api/src/dev_fudgeu/experimental/atforumv1.rs
···
// This file was automatically generated from Lexicon schemas.
// Any manual changes will be overwritten on the next regeneration.
-
pub mod feed;
+
pub mod feed;
+
pub mod forum;
+1
crates/jacquard-api/src/dev_fudgeu/experimental/atforumv1/feed.rs
···
// This file was automatically generated from Lexicon schemas.
// Any manual changes will be overwritten on the next regeneration.
+
pub mod post;
pub mod reply;
+41
crates/jacquard-api/src/dev_fudgeu/experimental/atforumv1/feed/post.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: dev.fudgeu.experimental.atforumv1.feed.post
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///An initial post that starts a discussion
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Post<'a> {
+
#[serde(borrow)]
+
pub category: jacquard_common::types::string::AtUri<'a>,
+
#[serde(borrow)]
+
pub content: jacquard_common::CowStr<'a>,
+
pub created_at: jacquard_common::types::string::Datetime,
+
#[serde(borrow)]
+
pub forum: jacquard_common::types::ident::AtIdentifier<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub solution: std::option::Option<jacquard_common::types::string::AtUri<'a>>,
+
#[serde(borrow)]
+
pub tags: Vec<jacquard_common::CowStr<'a>>,
+
#[serde(borrow)]
+
pub title: jacquard_common::CowStr<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub updated_at: std::option::Option<jacquard_common::types::string::Datetime>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Post<'_> {
+
const NSID: &'static str = "dev.fudgeu.experimental.atforumv1.feed.post";
+
}
+9
crates/jacquard-api/src/dev_fudgeu/experimental/atforumv1/forum.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod announcement;
+
pub mod category;
+
pub mod group;
+
pub mod identity;
+31
crates/jacquard-api/src/dev_fudgeu/experimental/atforumv1/forum/announcement.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: dev.fudgeu.experimental.atforumv1.forum.announcement
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A forum-wide announcement
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Announcement<'a> {
+
#[serde(borrow)]
+
pub body: jacquard_common::CowStr<'a>,
+
pub created_at: jacquard_common::types::string::Datetime,
+
pub expires_at: jacquard_common::types::string::Datetime,
+
#[serde(borrow)]
+
pub title: jacquard_common::CowStr<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Announcement<'_> {
+
const NSID: &'static str = "dev.fudgeu.experimental.atforumv1.forum.announcement";
+
}
+34
crates/jacquard-api/src/dev_fudgeu/experimental/atforumv1/forum/category.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: dev.fudgeu.experimental.atforumv1.forum.category
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A method of grouping posts into a single 'category'
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Category<'a> {
+
#[serde(borrow)]
+
pub category_type: jacquard_common::CowStr<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(borrow)]
+
pub group: jacquard_common::types::string::AtUri<'a>,
+
#[serde(borrow)]
+
pub name: jacquard_common::CowStr<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Category<'_> {
+
const NSID: &'static str = "dev.fudgeu.experimental.atforumv1.forum.category";
+
}
+30
crates/jacquard-api/src/dev_fudgeu/experimental/atforumv1/forum/group.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: dev.fudgeu.experimental.atforumv1.forum.group
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///Defines a group of categories
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Group<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(borrow)]
+
pub name: jacquard_common::CowStr<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Group<'_> {
+
const NSID: &'static str = "dev.fudgeu.experimental.atforumv1.forum.group";
+
}
+33
crates/jacquard-api/src/dev_fudgeu/experimental/atforumv1/forum/identity.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: dev.fudgeu.experimental.atforumv1.forum.identity
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///Defines what the forum is - name, description, etc.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Identity<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub accent: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(borrow)]
+
pub name: jacquard_common::CowStr<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Identity<'_> {
+
const NSID: &'static str = "dev.fudgeu.experimental.atforumv1.forum.identity";
+
}
+1 -2
crates/jacquard-api/src/dev_ocbwoy3.rs
···
// This file was automatically generated from Lexicon schemas.
// Any manual changes will be overwritten on the next regeneration.
-
pub mod blueboard;
-
pub mod dotsyncd;
+
pub mod blueboard;
-1
crates/jacquard-api/src/dev_regnault/webfishing.rs
···
// This file was automatically generated from Lexicon schemas.
// Any manual changes will be overwritten on the next regeneration.
-
pub mod save;
pub mod savefile;
+5 -6
crates/jacquard-api/src/did_plc_jh6yfs5dk47kykvhp7r6qwrb.rs crates/jacquard-api/src/net_aftertheinter/coolthingtwo.rs
···
// @generated by jacquard-lexicon. DO NOT EDIT.
//
-
// Lexicon: did:plc:jh6yfs5dk47kykvhp7r6qwrb
+
// Lexicon: net.aftertheinter.coolthingtwo
//
// This file was automatically generated from Lexicon schemas.
// Any manual changes will be overwritten on the next regeneration.
···
jacquard_derive::IntoStatic
)]
#[serde(rename_all = "camelCase")]
-
pub struct DidPlcJh6yfs5dk47kykvhp7r6qwrb<'a> {
+
pub struct Coolthingtwo<'a> {
pub created_at: jacquard_common::types::string::Datetime,
#[serde(borrow)]
-
pub text: jacquard_common::CowStr<'a>,
+
pub status: jacquard_common::CowStr<'a>,
}
-
impl jacquard_common::types::collection::Collection
-
for DidPlcJh6yfs5dk47kykvhp7r6qwrb<'_> {
-
const NSID: &'static str = "did:plc:jh6yfs5dk47kykvhp7r6qwrb";
+
impl jacquard_common::types::collection::Collection for Coolthingtwo<'_> {
+
const NSID: &'static str = "net.aftertheinter.coolthingtwo";
}
+12
crates/jacquard-api/src/events_smokesignal/automation/invoke_webhook.rs
···
"application/json",
);
type Response = InvokeWebhookResponse;
+
}
+
+
///Endpoint type for
+
///events.smokesignal.automation.InvokeWebhook
+
pub struct InvokeWebhookRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for InvokeWebhookRequest {
+
const PATH: &'static str = "/xrpc/events.smokesignal.automation.InvokeWebhook";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = InvokeWebhook<'de>;
+
type Response = InvokeWebhookResponse;
}
+6
crates/jacquard-api/src/garden_lexicon.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod ngerakines;
+7
crates/jacquard-api/src/garden_lexicon/ngerakines.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod helloworld;
+
pub mod semeion;
+6
crates/jacquard-api/src/garden_lexicon/ngerakines/helloworld.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod hello;
+68
crates/jacquard-api/src/garden_lexicon/ngerakines/helloworld/hello.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: garden.lexicon.ngerakines.helloworld.Hello
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Hello<'a> {
+
///(max length: 55)
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub subject: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct HelloOutput<'a> {
+
#[serde(borrow)]
+
pub message: jacquard_common::CowStr<'a>,
+
}
+
+
///Response type for
+
///garden.lexicon.ngerakines.helloworld.Hello
+
pub struct HelloResponse;
+
impl jacquard_common::xrpc::XrpcResp for HelloResponse {
+
const NSID: &'static str = "garden.lexicon.ngerakines.helloworld.Hello";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = HelloOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for Hello<'de> {
+
const NSID: &'static str = "garden.lexicon.ngerakines.helloworld.Hello";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = HelloResponse;
+
}
+
+
///Endpoint type for
+
///garden.lexicon.ngerakines.helloworld.Hello
+
pub struct HelloRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for HelloRequest {
+
const PATH: &'static str = "/xrpc/garden.lexicon.ngerakines.helloworld.Hello";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = Hello<'de>;
+
type Response = HelloResponse;
+
}
+6
crates/jacquard-api/src/garden_lexicon/ngerakines/semeion.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod sign;
+76
crates/jacquard-api/src/garden_lexicon/ngerakines/semeion/sign.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: garden.lexicon.ngerakines.semeion.Sign
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Sign {
+
pub body: bytes::Bytes,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct SignOutput<'a> {}
+
///Response type for
+
///garden.lexicon.ngerakines.semeion.Sign
+
pub struct SignResponse;
+
impl jacquard_common::xrpc::XrpcResp for SignResponse {
+
const NSID: &'static str = "garden.lexicon.ngerakines.semeion.Sign";
+
const ENCODING: &'static str = "application/octet-stream";
+
type Output<'de> = SignOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for Sign {
+
const NSID: &'static str = "garden.lexicon.ngerakines.semeion.Sign";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"*/*",
+
);
+
type Response = SignResponse;
+
fn encode_body(&self) -> Result<Vec<u8>, jacquard_common::xrpc::EncodeError> {
+
Ok(self.body.to_vec())
+
}
+
fn decode_body(
+
body: &'de [u8],
+
) -> Result<Box<Self>, jacquard_common::error::DecodeError> {
+
Ok(
+
Box::new(Self {
+
body: bytes::Bytes::copy_from_slice(body),
+
}),
+
)
+
}
+
}
+
+
///Endpoint type for
+
///garden.lexicon.ngerakines.semeion.Sign
+
pub struct SignRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SignRequest {
+
const PATH: &'static str = "/xrpc/garden.lexicon.ngerakines.semeion.Sign";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"*/*",
+
);
+
type Request<'de> = Sign;
+
type Response = SignResponse;
+
}
+53 -26
crates/jacquard-api/src/lib.rs
···
// This file was automatically generated from Lexicon schemas.
// Any manual changes will be overwritten on the next regeneration.
+
#[cfg(feature = "app_blebbit")]
+
pub mod app_blebbit;
+
#[cfg(feature = "app_bsky")]
pub mod app_bsky;
+
#[cfg(feature = "app_ocho")]
+
pub mod app_ocho;
+
+
#[cfg(feature = "beauty_cybernetic")]
+
pub mod beauty_cybernetic;
+
#[cfg(feature = "blog_pckt")]
pub mod blog_pckt;
+
#[cfg(feature = "blue__2048")]
+
pub mod blue__2048;
+
+
#[cfg(feature = "blue_atplane")]
+
pub mod blue_atplane;
+
#[cfg(feature = "blue_linkat")]
pub mod blue_linkat;
-
-
#[cfg(feature = "blue_rito")]
-
pub mod blue_rito;
#[cfg(feature = "blue_zio")]
pub mod blue_zio;
···
#[cfg(feature = "chat_bsky")]
pub mod chat_bsky;
+
#[cfg(feature = "club_stellz")]
+
pub mod club_stellz;
+
#[cfg(feature = "com_atproto")]
pub mod com_atproto;
#[cfg(feature = "com_bad_example")]
pub mod com_bad_example;
+
#[cfg(feature = "com_crabdance")]
+
pub mod com_crabdance;
+
#[cfg(feature = "com_shinolabs")]
pub mod com_shinolabs;
-
#[cfg(feature = "com_welistskyblue")]
-
pub mod com_welistskyblue;
-
#[cfg(feature = "com_whtwnd")]
pub mod com_whtwnd;
#[cfg(feature = "community_lexicon")]
pub mod community_lexicon;
+
+
#[cfg(feature = "dev_baileytownsend")]
+
pub mod dev_baileytownsend;
#[cfg(feature = "dev_fudgeu")]
pub mod dev_fudgeu;
···
#[cfg(feature = "dev_regnault")]
pub mod dev_regnault;
-
#[cfg(feature = "did_plc_jh6yfs5dk47kykvhp7r6qwrb")]
-
pub mod did_plc_jh6yfs5dk47kykvhp7r6qwrb;
-
-
#[cfg(feature = "events_smokesignal")]
-
pub mod events_smokesignal;
-
#[cfg(feature = "fyi_unravel")]
pub mod fyi_unravel;
-
#[cfg(feature = "how_bun")]
-
pub mod how_bun;
-
-
#[cfg(feature = "inc_toronto")]
-
pub mod inc_toronto;
-
-
#[cfg(feature = "lol_atmo")]
-
pub mod lol_atmo;
-
-
#[cfg(feature = "lol_skittr")]
-
pub mod lol_skittr;
+
#[cfg(feature = "garden_lexicon")]
+
pub mod garden_lexicon;
#[cfg(feature = "moe_karashiiro")]
pub mod moe_karashiiro;
···
#[cfg(feature = "my_skylights")]
pub mod my_skylights;
+
#[cfg(feature = "net_aftertheinter")]
+
pub mod net_aftertheinter;
+
#[cfg(feature = "net_anisota")]
pub mod net_anisota;
#[cfg(feature = "net_bnewbold")]
pub mod net_bnewbold;
+
+
#[cfg(feature = "net_mmatt")]
+
pub mod net_mmatt;
#[cfg(feature = "network_slices")]
pub mod network_slices;
+
#[cfg(feature = "org_devcon")]
+
pub mod org_devcon;
+
+
#[cfg(feature = "org_robocracy")]
+
pub mod org_robocracy;
+
#[cfg(feature = "place_atwork")]
pub mod place_atwork;
···
#[cfg(feature = "sh_weaver")]
pub mod sh_weaver;
+
+
#[cfg(feature = "social_clippr")]
+
pub mod social_clippr;
+
+
#[cfg(feature = "social_grain")]
+
pub mod social_grain;
+
+
#[cfg(feature = "social_pmsky")]
+
pub mod social_pmsky;
#[cfg(feature = "social_psky")]
pub mod social_psky;
···
#[cfg(feature = "uk_ewancroft")]
pub mod uk_ewancroft;
+
#[cfg(feature = "uk_skyblur")]
+
pub mod uk_skyblur;
+
+
#[cfg(feature = "us_polhem")]
+
pub mod us_polhem;
+
#[cfg(feature = "win_tomo_x")]
pub mod win_tomo_x;
-
-
#[cfg(feature = "xyz_autonomylab")]
-
pub mod xyz_autonomylab;
+10
crates/jacquard-api/src/lol_skittr/actor/get_theme.rs
···
const NSID: &'static str = "lol.skittr.actor.getTheme";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetThemeResponse;
+
}
+
+
///Endpoint type for
+
///lol.skittr.actor.getTheme
+
pub struct GetThemeRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetThemeRequest {
+
const PATH: &'static str = "/xrpc/lol.skittr.actor.getTheme";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetTheme<'de>;
+
type Response = GetThemeResponse;
}
+20 -1
crates/jacquard-api/src/lol_skittr/server/get_meta.rs
···
}
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct GetMeta;
///Response type for
///lol.skittr.server.getMeta
···
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetMeta {
const NSID: &'static str = "lol.skittr.server.getMeta";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetMetaResponse;
+
}
+
+
///Endpoint type for
+
///lol.skittr.server.getMeta
+
pub struct GetMetaRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetMetaRequest {
+
const PATH: &'static str = "/xrpc/lol.skittr.server.getMeta";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetMeta;
type Response = GetMetaResponse;
}
+6
crates/jacquard-api/src/net_aftertheinter.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod coolthingtwo;
+2 -1
crates/jacquard-api/src/net_bnewbold.rs
···
// This file was automatically generated from Lexicon schemas.
// Any manual changes will be overwritten on the next regeneration.
-
pub mod demo;
+
pub mod demo;
+
pub mod m;
+1 -1
crates/jacquard-api/src/net_bnewbold/demo.rs
···
// Any manual changes will be overwritten on the next regeneration.
pub mod mushies;
-
pub mod nested;
+
pub mod mushroom;
+32
crates/jacquard-api/src/net_bnewbold/demo/mushroom.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: net.bnewbold.demo.mushroom
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///it's a kind of fungus
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Mushroom<'a> {
+
#[serde(borrow)]
+
pub common_name: jacquard_common::CowStr<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub edible: std::option::Option<bool>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub species: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Mushroom<'_> {
+
const NSID: &'static str = "net.bnewbold.demo.mushroom";
+
}
+32
crates/jacquard-api/src/net_bnewbold/m.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: net.bnewbold.m
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///it's a kind of fungus
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct M<'a> {
+
#[serde(borrow)]
+
pub common_name: jacquard_common::CowStr<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub edible: std::option::Option<bool>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub species: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
impl jacquard_common::types::collection::Collection for M<'_> {
+
const NSID: &'static str = "net.bnewbold.m";
+
}
+7
crates/jacquard-api/src/net_mmatt.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod right;
+
pub mod vitals;
+6
crates/jacquard-api/src/net_mmatt/right.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod now;
+34
crates/jacquard-api/src/net_mmatt/right/now.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: net.mmatt.right.now
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A personal lexicon for mmatt's statuslog.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Now<'a> {
+
///The unix timestamp of when the status was recorded
+
pub created_at: jacquard_common::types::string::Datetime,
+
///The emoji of the status update
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub emoji: std::option::Option<jacquard_common::CowStr<'a>>,
+
///The text of the status update
+
#[serde(borrow)]
+
pub text: jacquard_common::CowStr<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Now<'_> {
+
const NSID: &'static str = "net.mmatt.right.now";
+
}
+6
crates/jacquard-api/src/net_mmatt/vitals.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod car;
+47
crates/jacquard-api/src/net_mmatt/vitals/car.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: net.mmatt.vitals.car
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Car<'a> {
+
///The car fuel amount remaining value (floating point string)
+
#[serde(borrow)]
+
pub amount_remaining: jacquard_common::CowStr<'a>,
+
///The car fuel range value in miles
+
pub car_fuel_range: i64,
+
///The car make value
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub car_make: std::option::Option<jacquard_common::CowStr<'a>>,
+
///The car model value
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub car_model: std::option::Option<jacquard_common::CowStr<'a>>,
+
///The car fuel level value in percentage (floating point string)
+
#[serde(borrow)]
+
pub car_percent_fuel_remaining: jacquard_common::CowStr<'a>,
+
///The car traveled distance value
+
pub car_traveled_distance: i64,
+
///The car year value
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub car_year: std::option::Option<i64>,
+
///The unix timestamp of when the vital was recorded
+
pub created_at: jacquard_common::types::string::Datetime,
+
}
+
+
impl jacquard_common::types::collection::Collection for Car<'_> {
+
const NSID: &'static str = "net.mmatt.vitals.car";
+
}
+12
crates/jacquard-api/src/network_slices/slice/clear_slice_records.rs
···
"application/json",
);
type Response = ClearSliceRecordsResponse;
+
}
+
+
///Endpoint type for
+
///network.slices.slice.clearSliceRecords
+
pub struct ClearSliceRecordsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ClearSliceRecordsRequest {
+
const PATH: &'static str = "/xrpc/network.slices.slice.clearSliceRecords";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = ClearSliceRecords<'de>;
+
type Response = ClearSliceRecordsResponse;
}
+12
crates/jacquard-api/src/network_slices/slice/create_o_auth_client.rs
···
"application/json",
);
type Response = CreateOAuthClientResponse;
+
}
+
+
///Endpoint type for
+
///network.slices.slice.createOAuthClient
+
pub struct CreateOAuthClientRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CreateOAuthClientRequest {
+
const PATH: &'static str = "/xrpc/network.slices.slice.createOAuthClient";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = CreateOAuthClient<'de>;
+
type Response = CreateOAuthClientResponse;
}
+12
crates/jacquard-api/src/network_slices/slice/delete_o_auth_client.rs
···
"application/json",
);
type Response = DeleteOAuthClientResponse;
+
}
+
+
///Endpoint type for
+
///network.slices.slice.deleteOAuthClient
+
pub struct DeleteOAuthClientRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeleteOAuthClientRequest {
+
const PATH: &'static str = "/xrpc/network.slices.slice.deleteOAuthClient";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DeleteOAuthClient<'de>;
+
type Response = DeleteOAuthClientResponse;
}
+12
crates/jacquard-api/src/network_slices/slice/get_actors.rs
···
"application/json",
);
type Response = GetActorsResponse;
+
}
+
+
///Endpoint type for
+
///network.slices.slice.getActors
+
pub struct GetActorsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetActorsRequest {
+
const PATH: &'static str = "/xrpc/network.slices.slice.getActors";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = GetActors<'de>;
+
type Response = GetActorsResponse;
}
+10
crates/jacquard-api/src/network_slices/slice/get_jetstream_logs.rs
···
const NSID: &'static str = "network.slices.slice.getJetstreamLogs";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetJetstreamLogsResponse;
+
}
+
+
///Endpoint type for
+
///network.slices.slice.getJetstreamLogs
+
pub struct GetJetstreamLogsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetJetstreamLogsRequest {
+
const PATH: &'static str = "/xrpc/network.slices.slice.getJetstreamLogs";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetJetstreamLogs<'de>;
+
type Response = GetJetstreamLogsResponse;
}
+10
crates/jacquard-api/src/network_slices/slice/get_jetstream_status.rs
···
const NSID: &'static str = "network.slices.slice.getJetstreamStatus";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetJetstreamStatusResponse;
+
}
+
+
///Endpoint type for
+
///network.slices.slice.getJetstreamStatus
+
pub struct GetJetstreamStatusRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetJetstreamStatusRequest {
+
const PATH: &'static str = "/xrpc/network.slices.slice.getJetstreamStatus";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetJetstreamStatus;
+
type Response = GetJetstreamStatusResponse;
}
+10
crates/jacquard-api/src/network_slices/slice/get_job_logs.rs
···
const NSID: &'static str = "network.slices.slice.getJobLogs";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetJobLogsResponse;
+
}
+
+
///Endpoint type for
+
///network.slices.slice.getJobLogs
+
pub struct GetJobLogsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetJobLogsRequest {
+
const PATH: &'static str = "/xrpc/network.slices.slice.getJobLogs";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetJobLogs<'de>;
+
type Response = GetJobLogsResponse;
}
+10
crates/jacquard-api/src/network_slices/slice/get_job_status.rs
···
type Response = GetJobStatusResponse;
}
+
///Endpoint type for
+
///network.slices.slice.getJobStatus
+
pub struct GetJobStatusRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetJobStatusRequest {
+
const PATH: &'static str = "/xrpc/network.slices.slice.getJobStatus";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetJobStatus<'de>;
+
type Response = GetJobStatusResponse;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+10
crates/jacquard-api/src/network_slices/slice/get_o_auth_clients.rs
···
type Response = GetOAuthClientsResponse;
}
+
///Endpoint type for
+
///network.slices.slice.getOAuthClients
+
pub struct GetOAuthClientsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetOAuthClientsRequest {
+
const PATH: &'static str = "/xrpc/network.slices.slice.getOAuthClients";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetOAuthClients<'de>;
+
type Response = GetOAuthClientsResponse;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+12
crates/jacquard-api/src/network_slices/slice/get_slice_records.rs
···
"application/json",
);
type Response = GetSliceRecordsResponse;
+
}
+
+
///Endpoint type for
+
///network.slices.slice.getSliceRecords
+
pub struct GetSliceRecordsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetSliceRecordsRequest {
+
const PATH: &'static str = "/xrpc/network.slices.slice.getSliceRecords";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = GetSliceRecords<'de>;
+
type Response = GetSliceRecordsResponse;
}
+12
crates/jacquard-api/src/network_slices/slice/get_sparklines.rs
···
type Response = GetSparklinesResponse;
}
+
///Endpoint type for
+
///network.slices.slice.getSparklines
+
pub struct GetSparklinesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetSparklinesRequest {
+
const PATH: &'static str = "/xrpc/network.slices.slice.getSparklines";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = GetSparklines<'de>;
+
type Response = GetSparklinesResponse;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+10
crates/jacquard-api/src/network_slices/slice/get_sync_summary.rs
···
const NSID: &'static str = "network.slices.slice.getSyncSummary";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetSyncSummaryResponse;
+
}
+
+
///Endpoint type for
+
///network.slices.slice.getSyncSummary
+
pub struct GetSyncSummaryRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetSyncSummaryRequest {
+
const PATH: &'static str = "/xrpc/network.slices.slice.getSyncSummary";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetSyncSummary<'de>;
+
type Response = GetSyncSummaryResponse;
}
+12
crates/jacquard-api/src/network_slices/slice/start_sync.rs
···
"application/json",
);
type Response = StartSyncResponse;
+
}
+
+
///Endpoint type for
+
///network.slices.slice.startSync
+
pub struct StartSyncRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for StartSyncRequest {
+
const PATH: &'static str = "/xrpc/network.slices.slice.startSync";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = StartSync<'de>;
+
type Response = StartSyncResponse;
}
+10
crates/jacquard-api/src/network_slices/slice/stats.rs
···
const NSID: &'static str = "network.slices.slice.stats";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = StatsResponse;
+
}
+
+
///Endpoint type for
+
///network.slices.slice.stats
+
pub struct StatsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for StatsRequest {
+
const PATH: &'static str = "/xrpc/network.slices.slice.stats";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = Stats<'de>;
+
type Response = StatsResponse;
}
+12
crates/jacquard-api/src/network_slices/slice/sync_user_collections.rs
···
"application/json",
);
type Response = SyncUserCollectionsResponse;
+
}
+
+
///Endpoint type for
+
///network.slices.slice.syncUserCollections
+
pub struct SyncUserCollectionsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SyncUserCollectionsRequest {
+
const PATH: &'static str = "/xrpc/network.slices.slice.syncUserCollections";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = SyncUserCollections<'de>;
+
type Response = SyncUserCollectionsResponse;
}
+12
crates/jacquard-api/src/network_slices/slice/update_o_auth_client.rs
···
"application/json",
);
type Response = UpdateOAuthClientResponse;
+
}
+
+
///Endpoint type for
+
///network.slices.slice.updateOAuthClient
+
pub struct UpdateOAuthClientRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateOAuthClientRequest {
+
const PATH: &'static str = "/xrpc/network.slices.slice.updateOAuthClient";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateOAuthClient<'de>;
+
type Response = UpdateOAuthClientResponse;
}
+6
crates/jacquard-api/src/org_devcon.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod event;
+6
crates/jacquard-api/src/org_devcon/event.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod test;
+45
crates/jacquard-api/src/org_devcon/event/test.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: org.devcon.event.test
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Test<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub created_at: std::option::Option<jacquard_common::types::string::Datetime>,
+
///Description of the event
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
///End time of the event
+
pub end: jacquard_common::types::string::Datetime,
+
///Location of the event
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub location: std::option::Option<jacquard_common::CowStr<'a>>,
+
///Start time of the event
+
pub start: jacquard_common::types::string::Datetime,
+
///Title of the event
+
#[serde(borrow)]
+
pub title: jacquard_common::CowStr<'a>,
+
///URL of the event
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub url: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Test<'_> {
+
const NSID: &'static str = "org.devcon.event.test";
+
}
+6
crates/jacquard-api/src/org_robocracy.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod demo;
+7
crates/jacquard-api/src/org_robocracy/demo.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod fungus;
+
pub mod mushies;
+32
crates/jacquard-api/src/org_robocracy/demo/fungus.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: org.robocracy.demo.fungus
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///it's a kind of fungus!
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Fungus<'a> {
+
#[serde(borrow)]
+
pub common_name: jacquard_common::CowStr<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub edible: std::option::Option<bool>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub species: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Fungus<'_> {
+
const NSID: &'static str = "org.robocracy.demo.fungus";
+
}
+32
crates/jacquard-api/src/org_robocracy/demo/mushies.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: org.robocracy.demo.mushies
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///it's a kind of fungus!
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Mushies<'a> {
+
#[serde(borrow)]
+
pub common_name: jacquard_common::CowStr<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub edible: std::option::Option<bool>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub species: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Mushies<'_> {
+
const NSID: &'static str = "org.robocracy.demo.mushies";
+
}
+2
crates/jacquard-api/src/place_atwork.rs
···
// This file was automatically generated from Lexicon schemas.
// Any manual changes will be overwritten on the next regeneration.
+
pub mod endorsement;
+
pub mod endorsement_proof;
pub mod get_listing;
pub mod get_listings;
pub mod listing;
+40
crates/jacquard-api/src/place_atwork/endorsement.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: place.atwork.endorsement
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A cryptographically-verified professional endorsement between two identities.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Endorsement<'a> {
+
///Timestamp when the endorsement was created.
+
pub created_at: jacquard_common::types::string::Datetime,
+
///The DID of the identity giving the endorsement.
+
#[serde(borrow)]
+
pub giver: jacquard_common::types::string::Did<'a>,
+
///The DID of the identity receiving the endorsement.
+
#[serde(borrow)]
+
pub receiver: jacquard_common::types::string::Did<'a>,
+
///Verified signatures from endorsement proofs (strong references).
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub signatures: std::option::Option<Vec<jacquard_common::types::value::Data<'a>>>,
+
///The endorsement text content.
+
#[serde(borrow)]
+
pub text: jacquard_common::CowStr<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Endorsement<'_> {
+
const NSID: &'static str = "place.atwork.endorsement";
+
}
+28
crates/jacquard-api/src/place_atwork/endorsement_proof.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: place.atwork.endorsementProof
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A cryptographic proof record that validates an endorsement by containing the CID of the endorsement content.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct EndorsementProof<'a> {
+
///The CID (Content Identifier) of the endorsement content that this proof validates. The endorsement's signatures array references this proof record.
+
#[serde(borrow)]
+
pub cid: jacquard_common::types::string::Cid<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for EndorsementProof<'_> {
+
const NSID: &'static str = "place.atwork.endorsementProof";
+
}
+10
crates/jacquard-api/src/place_atwork/get_listing.rs
···
const NSID: &'static str = "place.atwork.getListing";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetListingResponse;
+
}
+
+
///Endpoint type for
+
///place.atwork.getListing
+
pub struct GetListingRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetListingRequest {
+
const PATH: &'static str = "/xrpc/place.atwork.getListing";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetListing<'de>;
+
type Response = GetListingResponse;
}
+14
crates/jacquard-api/src/place_atwork/get_listings.rs
···
#[serde(skip_serializing_if = "std::option::Option::is_none")]
#[serde(borrow)]
#[builder(into)]
+
pub identity: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
pub tag: std::option::Option<jacquard_common::CowStr<'a>>,
}
···
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetListings<'de> {
const NSID: &'static str = "place.atwork.getListings";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetListingsResponse;
+
}
+
+
///Endpoint type for
+
///place.atwork.getListings
+
pub struct GetListingsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetListingsRequest {
+
const PATH: &'static str = "/xrpc/place.atwork.getListings";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetListings<'de>;
type Response = GetListingsResponse;
}
+4
crates/jacquard-api/src/place_atwork/listing.rs
···
#[serde(skip_serializing_if = "std::option::Option::is_none")]
#[serde(borrow)]
pub apply_link: std::option::Option<jacquard_common::types::string::Uri<'a>>,
+
///Larger horizontal image to display behind job listing view.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub banner: std::option::Option<jacquard_common::types::blob::Blob<'a>>,
///The description of the job listing.
#[serde(borrow)]
pub description: jacquard_common::CowStr<'a>,
+16
crates/jacquard-api/src/place_atwork/profile.rs
···
)]
#[serde(rename_all = "camelCase")]
pub struct Profile<'a> {
+
///Small image to be displayed next to job listings from account. AKA, 'profile picture'
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub avatar: std::option::Option<jacquard_common::types::blob::Blob<'a>>,
+
///Larger horizontal image to display behind profile view.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub banner: std::option::Option<jacquard_common::types::blob::Blob<'a>>,
///A free text description of the identity.
#[serde(skip_serializing_if = "std::option::Option::is_none")]
#[serde(borrow)]
···
#[serde(skip_serializing_if = "std::option::Option::is_none")]
#[serde(borrow)]
pub facets: std::option::Option<Vec<crate::app_bsky::richtext::facet::Facet<'a>>>,
+
///The service used for profile links
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub profile_host: std::option::Option<jacquard_common::CowStr<'a>>,
+
///The identity's resume.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub resume: std::option::Option<jacquard_common::types::blob::Blob<'a>>,
///The current status of the identity.
#[serde(skip_serializing_if = "std::option::Option::is_none")]
#[serde(borrow)]
+10
crates/jacquard-api/src/place_atwork/search_listings.rs
···
const NSID: &'static str = "place.atwork.searchListings";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = SearchListingsResponse;
+
}
+
+
///Endpoint type for
+
///place.atwork.searchListings
+
pub struct SearchListingsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SearchListingsRequest {
+
const PATH: &'static str = "/xrpc/place.atwork.searchListings";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = SearchListings<'de>;
+
type Response = SearchListingsResponse;
}
+10
crates/jacquard-api/src/place_stream/graph/get_following_user.rs
···
const NSID: &'static str = "place.stream.graph.getFollowingUser";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetFollowingUserResponse;
+
}
+
+
///Endpoint type for
+
///place.stream.graph.getFollowingUser
+
pub struct GetFollowingUserRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetFollowingUserRequest {
+
const PATH: &'static str = "/xrpc/place.stream.graph.getFollowingUser";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetFollowingUser<'de>;
+
type Response = GetFollowingUserResponse;
}
+10
crates/jacquard-api/src/place_stream/live/get_live_users.rs
···
const NSID: &'static str = "place.stream.live.getLiveUsers";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetLiveUsersResponse;
+
}
+
+
///Endpoint type for
+
///place.stream.live.getLiveUsers
+
pub struct GetLiveUsersRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetLiveUsersRequest {
+
const PATH: &'static str = "/xrpc/place.stream.live.getLiveUsers";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetLiveUsers;
+
type Response = GetLiveUsersResponse;
}
+10
crates/jacquard-api/src/place_stream/live/get_profile_card.rs
···
const NSID: &'static str = "place.stream.live.getProfileCard";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetProfileCardResponse;
+
}
+
+
///Endpoint type for
+
///place.stream.live.getProfileCard
+
pub struct GetProfileCardRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetProfileCardRequest {
+
const PATH: &'static str = "/xrpc/place.stream.live.getProfileCard";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetProfileCard<'de>;
+
type Response = GetProfileCardResponse;
}
+10
crates/jacquard-api/src/place_stream/live/get_segments.rs
···
const NSID: &'static str = "place.stream.live.getSegments";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetSegmentsResponse;
+
}
+
+
///Endpoint type for
+
///place.stream.live.getSegments
+
pub struct GetSegmentsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetSegmentsRequest {
+
const PATH: &'static str = "/xrpc/place.stream.live.getSegments";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetSegments<'de>;
+
type Response = GetSegmentsResponse;
}
+12
crates/jacquard-api/src/place_stream/server/create_webhook.rs
···
"application/json",
);
type Response = CreateWebhookResponse;
+
}
+
+
///Endpoint type for
+
///place.stream.server.createWebhook
+
pub struct CreateWebhookRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CreateWebhookRequest {
+
const PATH: &'static str = "/xrpc/place.stream.server.createWebhook";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = CreateWebhook<'de>;
+
type Response = CreateWebhookResponse;
}
+12
crates/jacquard-api/src/place_stream/server/delete_webhook.rs
···
"application/json",
);
type Response = DeleteWebhookResponse;
+
}
+
+
///Endpoint type for
+
///place.stream.server.deleteWebhook
+
pub struct DeleteWebhookRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeleteWebhookRequest {
+
const PATH: &'static str = "/xrpc/place.stream.server.deleteWebhook";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DeleteWebhook<'de>;
+
type Response = DeleteWebhookResponse;
}
+10
crates/jacquard-api/src/place_stream/server/get_webhook.rs
···
const NSID: &'static str = "place.stream.server.getWebhook";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetWebhookResponse;
+
}
+
+
///Endpoint type for
+
///place.stream.server.getWebhook
+
pub struct GetWebhookRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetWebhookRequest {
+
const PATH: &'static str = "/xrpc/place.stream.server.getWebhook";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetWebhook<'de>;
+
type Response = GetWebhookResponse;
}
+10
crates/jacquard-api/src/place_stream/server/list_webhooks.rs
···
const NSID: &'static str = "place.stream.server.listWebhooks";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = ListWebhooksResponse;
+
}
+
+
///Endpoint type for
+
///place.stream.server.listWebhooks
+
pub struct ListWebhooksRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ListWebhooksRequest {
+
const PATH: &'static str = "/xrpc/place.stream.server.listWebhooks";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ListWebhooks<'de>;
+
type Response = ListWebhooksResponse;
}
+12
crates/jacquard-api/src/place_stream/server/update_webhook.rs
···
"application/json",
);
type Response = UpdateWebhookResponse;
+
}
+
+
///Endpoint type for
+
///place.stream.server.updateWebhook
+
pub struct UpdateWebhookRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateWebhookRequest {
+
const PATH: &'static str = "/xrpc/place.stream.server.updateWebhook";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateWebhook<'de>;
+
type Response = UpdateWebhookResponse;
}
+10
crates/jacquard-api/src/sh_tangled/knot/list_keys.rs
···
type Response = ListKeysResponse;
}
+
///Endpoint type for
+
///sh.tangled.knot.listKeys
+
pub struct ListKeysRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ListKeysRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.knot.listKeys";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ListKeys<'de>;
+
type Response = ListKeysResponse;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+20 -1
crates/jacquard-api/src/sh_tangled/knot/version.rs
···
}
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct Version;
///Response type for
///sh.tangled.knot.version
···
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for Version {
const NSID: &'static str = "sh.tangled.knot.version";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = VersionResponse;
+
}
+
+
///Endpoint type for
+
///sh.tangled.knot.version
+
pub struct VersionRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for VersionRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.knot.version";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = Version;
type Response = VersionResponse;
}
+20 -1
crates/jacquard-api/src/sh_tangled/owner.rs
···
}
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct Owner;
///Response type for
///sh.tangled.owner
···
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for Owner {
const NSID: &'static str = "sh.tangled.owner";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = OwnerResponse;
+
}
+
+
///Endpoint type for
+
///sh.tangled.owner
+
pub struct OwnerRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for OwnerRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.owner";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = Owner;
type Response = OwnerResponse;
}
+12
crates/jacquard-api/src/sh_tangled/repo/add_secret.rs
···
"application/json",
);
type Response = AddSecretResponse;
+
}
+
+
///Endpoint type for
+
///sh.tangled.repo.addSecret
+
pub struct AddSecretRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for AddSecretRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.addSecret";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = AddSecret<'de>;
+
type Response = AddSecretResponse;
}
+10
crates/jacquard-api/src/sh_tangled/repo/archive.rs
···
const NSID: &'static str = "sh.tangled.repo.archive";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = ArchiveResponse;
+
}
+
+
///Endpoint type for
+
///sh.tangled.repo.archive
+
pub struct ArchiveRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ArchiveRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.archive";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = Archive<'de>;
+
type Response = ArchiveResponse;
}
+10
crates/jacquard-api/src/sh_tangled/repo/blob.rs
···
type Response = BlobResponse;
}
+
///Endpoint type for
+
///sh.tangled.repo.blob
+
pub struct BlobRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for BlobRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.blob";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = Blob<'de>;
+
type Response = BlobResponse;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+10
crates/jacquard-api/src/sh_tangled/repo/branch.rs
···
type Response = BranchResponse;
}
+
///Endpoint type for
+
///sh.tangled.repo.branch
+
pub struct BranchRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for BranchRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.branch";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = Branch<'de>;
+
type Response = BranchResponse;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+10
crates/jacquard-api/src/sh_tangled/repo/branches.rs
···
const NSID: &'static str = "sh.tangled.repo.branches";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = BranchesResponse;
+
}
+
+
///Endpoint type for
+
///sh.tangled.repo.branches
+
pub struct BranchesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for BranchesRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.branches";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = Branches<'de>;
+
type Response = BranchesResponse;
}
+10
crates/jacquard-api/src/sh_tangled/repo/compare.rs
···
const NSID: &'static str = "sh.tangled.repo.compare";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = CompareResponse;
+
}
+
+
///Endpoint type for
+
///sh.tangled.repo.compare
+
pub struct CompareRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CompareRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.compare";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = Compare<'de>;
+
type Response = CompareResponse;
}
+12
crates/jacquard-api/src/sh_tangled/repo/create.rs
···
"application/json",
);
type Response = CreateResponse;
+
}
+
+
///Endpoint type for
+
///sh.tangled.repo.create
+
pub struct CreateRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CreateRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.create";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = Create<'de>;
+
type Response = CreateResponse;
}
+12
crates/jacquard-api/src/sh_tangled/repo/delete.rs
···
"application/json",
);
type Response = DeleteResponse;
+
}
+
+
///Endpoint type for
+
///sh.tangled.repo.delete
+
pub struct DeleteRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeleteRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.delete";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = Delete<'de>;
+
type Response = DeleteResponse;
}
+12
crates/jacquard-api/src/sh_tangled/repo/delete_branch.rs
···
"application/json",
);
type Response = DeleteBranchResponse;
+
}
+
+
///Endpoint type for
+
///sh.tangled.repo.deleteBranch
+
pub struct DeleteBranchRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeleteBranchRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.deleteBranch";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DeleteBranch<'de>;
+
type Response = DeleteBranchResponse;
}
+10
crates/jacquard-api/src/sh_tangled/repo/diff.rs
···
const NSID: &'static str = "sh.tangled.repo.diff";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = DiffResponse;
+
}
+
+
///Endpoint type for
+
///sh.tangled.repo.diff
+
pub struct DiffRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DiffRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.diff";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = Diff<'de>;
+
type Response = DiffResponse;
}
+12
crates/jacquard-api/src/sh_tangled/repo/fork_status.rs
···
"application/json",
);
type Response = ForkStatusResponse;
+
}
+
+
///Endpoint type for
+
///sh.tangled.repo.forkStatus
+
pub struct ForkStatusRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ForkStatusRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.forkStatus";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = ForkStatus<'de>;
+
type Response = ForkStatusResponse;
}
+12
crates/jacquard-api/src/sh_tangled/repo/fork_sync.rs
···
"application/json",
);
type Response = ForkSyncResponse;
+
}
+
+
///Endpoint type for
+
///sh.tangled.repo.forkSync
+
pub struct ForkSyncRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ForkSyncRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.forkSync";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = ForkSync<'de>;
+
type Response = ForkSyncResponse;
}
+10
crates/jacquard-api/src/sh_tangled/repo/get_default_branch.rs
···
type Response = GetDefaultBranchResponse;
}
+
///Endpoint type for
+
///sh.tangled.repo.getDefaultBranch
+
pub struct GetDefaultBranchRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetDefaultBranchRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.getDefaultBranch";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetDefaultBranch<'de>;
+
type Response = GetDefaultBranchResponse;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+12
crates/jacquard-api/src/sh_tangled/repo/hidden_ref.rs
···
"application/json",
);
type Response = HiddenRefResponse;
+
}
+
+
///Endpoint type for
+
///sh.tangled.repo.hiddenRef
+
pub struct HiddenRefRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for HiddenRefRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.hiddenRef";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = HiddenRef<'de>;
+
type Response = HiddenRefResponse;
}
+10
crates/jacquard-api/src/sh_tangled/repo/languages.rs
···
const NSID: &'static str = "sh.tangled.repo.languages";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = LanguagesResponse;
+
}
+
+
///Endpoint type for
+
///sh.tangled.repo.languages
+
pub struct LanguagesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for LanguagesRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.languages";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = Languages<'de>;
+
type Response = LanguagesResponse;
}
+10
crates/jacquard-api/src/sh_tangled/repo/list_secrets.rs
···
type Response = ListSecretsResponse;
}
+
///Endpoint type for
+
///sh.tangled.repo.listSecrets
+
pub struct ListSecretsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ListSecretsRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.listSecrets";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ListSecrets<'de>;
+
type Response = ListSecretsResponse;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+10
crates/jacquard-api/src/sh_tangled/repo/log.rs
···
const NSID: &'static str = "sh.tangled.repo.log";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = LogResponse;
+
}
+
+
///Endpoint type for
+
///sh.tangled.repo.log
+
pub struct LogRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for LogRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.log";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = Log<'de>;
+
type Response = LogResponse;
}
+12
crates/jacquard-api/src/sh_tangled/repo/merge.rs
···
"application/json",
);
type Response = MergeResponse;
+
}
+
+
///Endpoint type for
+
///sh.tangled.repo.merge
+
pub struct MergeRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for MergeRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.merge";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = Merge<'de>;
+
type Response = MergeResponse;
}
+12
crates/jacquard-api/src/sh_tangled/repo/merge_check.rs
···
"application/json",
);
type Response = MergeCheckResponse;
+
}
+
+
///Endpoint type for
+
///sh.tangled.repo.mergeCheck
+
pub struct MergeCheckRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for MergeCheckRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.mergeCheck";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = MergeCheck<'de>;
+
type Response = MergeCheckResponse;
}
+12
crates/jacquard-api/src/sh_tangled/repo/remove_secret.rs
···
"application/json",
);
type Response = RemoveSecretResponse;
+
}
+
+
///Endpoint type for
+
///sh.tangled.repo.removeSecret
+
pub struct RemoveSecretRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for RemoveSecretRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.removeSecret";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = RemoveSecret<'de>;
+
type Response = RemoveSecretResponse;
}
+12
crates/jacquard-api/src/sh_tangled/repo/set_default_branch.rs
···
"application/json",
);
type Response = SetDefaultBranchResponse;
+
}
+
+
///Endpoint type for
+
///sh.tangled.repo.setDefaultBranch
+
pub struct SetDefaultBranchRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SetDefaultBranchRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.setDefaultBranch";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = SetDefaultBranch<'de>;
+
type Response = SetDefaultBranchResponse;
}
+10
crates/jacquard-api/src/sh_tangled/repo/tags.rs
···
const NSID: &'static str = "sh.tangled.repo.tags";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = TagsResponse;
+
}
+
+
///Endpoint type for
+
///sh.tangled.repo.tags
+
pub struct TagsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for TagsRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.tags";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = Tags<'de>;
+
type Response = TagsResponse;
}
+10
crates/jacquard-api/src/sh_tangled/repo/tree.rs
···
type Response = TreeResponse;
}
+
///Endpoint type for
+
///sh.tangled.repo.tree
+
pub struct TreeRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for TreeRequest {
+
const PATH: &'static str = "/xrpc/sh.tangled.repo.tree";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = Tree<'de>;
+
type Response = TreeResponse;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+10
crates/jacquard-api/src/sh_weaver/actor/get_profile.rs
···
const NSID: &'static str = "sh.weaver.actor.getProfile";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetProfileResponse;
+
}
+
+
///Endpoint type for
+
///sh.weaver.actor.getProfile
+
pub struct GetProfileRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetProfileRequest {
+
const PATH: &'static str = "/xrpc/sh.weaver.actor.getProfile";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetProfile<'de>;
+
type Response = GetProfileResponse;
}
+7
crates/jacquard-api/src/social_clippr.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod actor;
+
pub mod feed;
+69
crates/jacquard-api/src/social_clippr/actor.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.clippr.actor.defs
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod get_preferences;
+
pub mod get_profile;
+
pub mod profile;
+
pub mod put_preferences;
+
pub mod search_clips;
+
pub mod search_profiles;
+
pub mod search_tags;
+
+
///An array of refs to various preferences.
+
pub type Preferences<'a> = Vec<jacquard_common::types::value::Data<'a>>;
+
///A view of an actor's profile.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct ProfileView<'a> {
+
///A link to the profile's avatar
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub avatar: std::option::Option<jacquard_common::types::string::Uri<'a>>,
+
///When the profile record was first created
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub created_at: std::option::Option<jacquard_common::types::string::Datetime>,
+
///The biography associated to the profile
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
///The DID of the profile
+
#[serde(borrow)]
+
pub did: jacquard_common::types::string::Did<'a>,
+
///The display name associated to the profile
+
#[serde(borrow)]
+
pub display_name: jacquard_common::CowStr<'a>,
+
///The handle of the profile
+
#[serde(borrow)]
+
pub handle: jacquard_common::types::string::Handle<'a>,
+
}
+
+
///Preferences for an user's publishing scopes.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct PublishingScopesPref<'a> {
+
///What publishing scope to mark a clip as by default
+
#[serde(borrow)]
+
pub default_scope: jacquard_common::CowStr<'a>,
+
}
+62
crates/jacquard-api/src/social_clippr/actor/get_preferences.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.clippr.actor.getPreferences
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetPreferences {}
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetPreferencesOutput<'a> {
+
///A ref to the user's preferences
+
#[serde(borrow)]
+
pub preferences: crate::social_clippr::actor::Preferences<'a>,
+
}
+
+
///Response type for
+
///social.clippr.actor.getPreferences
+
pub struct GetPreferencesResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetPreferencesResponse {
+
const NSID: &'static str = "social.clippr.actor.getPreferences";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetPreferencesOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetPreferences {
+
const NSID: &'static str = "social.clippr.actor.getPreferences";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetPreferencesResponse;
+
}
+
+
///Endpoint type for
+
///social.clippr.actor.getPreferences
+
pub struct GetPreferencesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetPreferencesRequest {
+
const PATH: &'static str = "/xrpc/social.clippr.actor.getPreferences";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetPreferences;
+
type Response = GetPreferencesResponse;
+
}
+66
crates/jacquard-api/src/social_clippr/actor/get_profile.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.clippr.actor.getProfile
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetProfile<'a> {
+
#[serde(borrow)]
+
pub actor: jacquard_common::types::ident::AtIdentifier<'a>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetProfileOutput<'a> {
+
#[serde(flatten)]
+
#[serde(borrow)]
+
pub value: crate::social_clippr::actor::ProfileView<'a>,
+
}
+
+
///Response type for
+
///social.clippr.actor.getProfile
+
pub struct GetProfileResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetProfileResponse {
+
const NSID: &'static str = "social.clippr.actor.getProfile";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetProfileOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetProfile<'de> {
+
const NSID: &'static str = "social.clippr.actor.getProfile";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetProfileResponse;
+
}
+
+
///Endpoint type for
+
///social.clippr.actor.getProfile
+
pub struct GetProfileRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetProfileRequest {
+
const PATH: &'static str = "/xrpc/social.clippr.actor.getProfile";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetProfile<'de>;
+
type Response = GetProfileResponse;
+
}
+38
crates/jacquard-api/src/social_clippr/actor/profile.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.clippr.actor.profile
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A declaration of a Clippr account's profile.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Profile<'a> {
+
///Image to show on user's profiles
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub avatar: std::option::Option<jacquard_common::types::blob::Blob<'a>>,
+
///The creation date of the profile
+
pub created_at: jacquard_common::types::string::Datetime,
+
///Text for user to describe themselves
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
///A display name to be shown on a profile
+
#[serde(borrow)]
+
pub display_name: jacquard_common::CowStr<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Profile<'_> {
+
const NSID: &'static str = "social.clippr.actor.profile";
+
}
+62
crates/jacquard-api/src/social_clippr/actor/put_preferences.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.clippr.actor.putPreferences
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct PutPreferences<'a> {
+
///A ref to the user's preferences
+
#[serde(borrow)]
+
pub preferences: crate::social_clippr::actor::Preferences<'a>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
///Response type for
+
///social.clippr.actor.putPreferences
+
pub struct PutPreferencesResponse;
+
impl jacquard_common::xrpc::XrpcResp for PutPreferencesResponse {
+
const NSID: &'static str = "social.clippr.actor.putPreferences";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = ();
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for PutPreferences<'de> {
+
const NSID: &'static str = "social.clippr.actor.putPreferences";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = PutPreferencesResponse;
+
}
+
+
///Endpoint type for
+
///social.clippr.actor.putPreferences
+
pub struct PutPreferencesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for PutPreferencesRequest {
+
const PATH: &'static str = "/xrpc/social.clippr.actor.putPreferences";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = PutPreferences<'de>;
+
type Response = PutPreferencesResponse;
+
}
+81
crates/jacquard-api/src/social_clippr/actor/search_clips.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.clippr.actor.searchClips
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct SearchClips<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub actor: std::option::Option<jacquard_common::types::ident::AtIdentifier<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub cursor: std::option::Option<jacquard_common::CowStr<'a>>,
+
///(default: 25, min: 1, max: 100)
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub limit: std::option::Option<i64>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub q: jacquard_common::CowStr<'a>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct SearchClipsOutput<'a> {
+
///A list of clips and their associated details
+
#[serde(borrow)]
+
pub clips: Vec<crate::social_clippr::feed::ClipView<'a>>,
+
///A parameter to paginate results
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cursor: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
///Response type for
+
///social.clippr.actor.searchClips
+
pub struct SearchClipsResponse;
+
impl jacquard_common::xrpc::XrpcResp for SearchClipsResponse {
+
const NSID: &'static str = "social.clippr.actor.searchClips";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = SearchClipsOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for SearchClips<'de> {
+
const NSID: &'static str = "social.clippr.actor.searchClips";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = SearchClipsResponse;
+
}
+
+
///Endpoint type for
+
///social.clippr.actor.searchClips
+
pub struct SearchClipsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SearchClipsRequest {
+
const PATH: &'static str = "/xrpc/social.clippr.actor.searchClips";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = SearchClips<'de>;
+
type Response = SearchClipsResponse;
+
}
+78
crates/jacquard-api/src/social_clippr/actor/search_profiles.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.clippr.actor.searchProfiles
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct SearchProfiles<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub cursor: std::option::Option<jacquard_common::CowStr<'a>>,
+
///(default: 25, min: 1, max: 100)
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub limit: std::option::Option<i64>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub q: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct SearchProfilesOutput<'a> {
+
#[serde(borrow)]
+
pub actors: Vec<crate::social_clippr::actor::ProfileView<'a>>,
+
///A parameter used for pagination
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cursor: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
///Response type for
+
///social.clippr.actor.searchProfiles
+
pub struct SearchProfilesResponse;
+
impl jacquard_common::xrpc::XrpcResp for SearchProfilesResponse {
+
const NSID: &'static str = "social.clippr.actor.searchProfiles";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = SearchProfilesOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for SearchProfiles<'de> {
+
const NSID: &'static str = "social.clippr.actor.searchProfiles";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = SearchProfilesResponse;
+
}
+
+
///Endpoint type for
+
///social.clippr.actor.searchProfiles
+
pub struct SearchProfilesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SearchProfilesRequest {
+
const PATH: &'static str = "/xrpc/social.clippr.actor.searchProfiles";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = SearchProfiles<'de>;
+
type Response = SearchProfilesResponse;
+
}
+81
crates/jacquard-api/src/social_clippr/actor/search_tags.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.clippr.actor.searchTags
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct SearchTags<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub actor: std::option::Option<jacquard_common::types::ident::AtIdentifier<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub cursor: std::option::Option<jacquard_common::CowStr<'a>>,
+
///(default: 25, min: 1, max: 100)
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub limit: std::option::Option<i64>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub q: jacquard_common::CowStr<'a>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct SearchTagsOutput<'a> {
+
///A parameter to paginate results
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cursor: std::option::Option<jacquard_common::CowStr<'a>>,
+
///A list of tags and their associated details
+
#[serde(borrow)]
+
pub tags: Vec<crate::social_clippr::feed::TagView<'a>>,
+
}
+
+
///Response type for
+
///social.clippr.actor.searchTags
+
pub struct SearchTagsResponse;
+
impl jacquard_common::xrpc::XrpcResp for SearchTagsResponse {
+
const NSID: &'static str = "social.clippr.actor.searchTags";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = SearchTagsOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for SearchTags<'de> {
+
const NSID: &'static str = "social.clippr.actor.searchTags";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = SearchTagsResponse;
+
}
+
+
///Endpoint type for
+
///social.clippr.actor.searchTags
+
pub struct SearchTagsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SearchTagsRequest {
+
const PATH: &'static str = "/xrpc/social.clippr.actor.searchTags";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = SearchTags<'de>;
+
type Response = SearchTagsResponse;
+
}
+72
crates/jacquard-api/src/social_clippr/feed.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.clippr.feed.defs
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod clip;
+
pub mod get_clips;
+
pub mod get_profile_clips;
+
pub mod get_profile_tags;
+
pub mod get_tag_list;
+
pub mod get_tags;
+
pub mod tag;
+
+
///A view of a single bookmark (or 'clip').
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct ClipView<'a> {
+
///A reference to the actor's profile
+
#[serde(borrow)]
+
pub author: crate::social_clippr::actor::ProfileView<'a>,
+
///The CID of the clip
+
#[serde(borrow)]
+
pub cid: jacquard_common::types::string::Cid<'a>,
+
///When the tag was first indexed by the AppView
+
pub indexed_at: jacquard_common::types::string::Datetime,
+
///The raw record of the clip
+
#[serde(borrow)]
+
pub record: jacquard_common::types::value::Data<'a>,
+
///The AT-URI of the clip
+
#[serde(borrow)]
+
pub uri: jacquard_common::types::string::AtUri<'a>,
+
}
+
+
///A view of a single tag.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct TagView<'a> {
+
///A reference to the actor's profile
+
#[serde(borrow)]
+
pub author: crate::social_clippr::actor::ProfileView<'a>,
+
///The CID of the tag
+
#[serde(borrow)]
+
pub cid: jacquard_common::types::string::Cid<'a>,
+
///When the tag was first indexed by the AppView
+
pub indexed_at: jacquard_common::types::string::Datetime,
+
///The raw record of the tag
+
#[serde(borrow)]
+
pub record: jacquard_common::types::value::Data<'a>,
+
///The AT-URI to the tag
+
#[serde(borrow)]
+
pub uri: jacquard_common::types::string::AtUri<'a>,
+
}
+54
crates/jacquard-api/src/social_clippr/feed/clip.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.clippr.feed.clip
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///Record containing a bookmarked item, or 'clip'.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Clip<'a> {
+
///Client-declared timestamp when the bookmark is created
+
pub created_at: jacquard_common::types::string::Datetime,
+
///A description of the bookmark's content. This should be ripped from the URL metadata and be static for all records using the URL.
+
#[serde(borrow)]
+
pub description: jacquard_common::CowStr<'a>,
+
///Indicates human language of the given URL
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub languages: std::option::Option<Vec<jacquard_common::types::string::Language>>,
+
///User-written notes for the bookmark. Public and personal.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub notes: std::option::Option<jacquard_common::CowStr<'a>>,
+
///An array of tags. A format of solely alphanumeric characters and dashes should be used.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub tags: std::option::Option<
+
Vec<crate::com_atproto::repo::strong_ref::StrongRef<'a>>,
+
>,
+
///The title of the bookmark. If left empty, reuse the URL.
+
#[serde(borrow)]
+
pub title: jacquard_common::CowStr<'a>,
+
///Whether the bookmark can be used for feed indexing and aggregation
+
pub unlisted: bool,
+
///Whether the bookmark has been read by the user
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub unread: std::option::Option<bool>,
+
///The URL of the bookmark. Cannot be left empty or be modified after creation.
+
#[serde(borrow)]
+
pub url: jacquard_common::types::string::Uri<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Clip<'_> {
+
const NSID: &'static str = "social.clippr.feed.clip";
+
}
+66
crates/jacquard-api/src/social_clippr/feed/get_clips.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.clippr.feed.getClips
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetClips<'a> {
+
#[serde(borrow)]
+
pub uris: Vec<jacquard_common::types::string::AtUri<'a>>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetClipsOutput<'a> {
+
///An array of hydrated clip views
+
#[serde(borrow)]
+
pub clips: Vec<crate::social_clippr::feed::ClipView<'a>>,
+
}
+
+
///Response type for
+
///social.clippr.feed.getClips
+
pub struct GetClipsResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetClipsResponse {
+
const NSID: &'static str = "social.clippr.feed.getClips";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetClipsOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetClips<'de> {
+
const NSID: &'static str = "social.clippr.feed.getClips";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetClipsResponse;
+
}
+
+
///Endpoint type for
+
///social.clippr.feed.getClips
+
pub struct GetClipsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetClipsRequest {
+
const PATH: &'static str = "/xrpc/social.clippr.feed.getClips";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetClips<'de>;
+
type Response = GetClipsResponse;
+
}
+80
crates/jacquard-api/src/social_clippr/feed/get_profile_clips.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.clippr.feed.getProfileClips
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetProfileClips<'a> {
+
#[serde(borrow)]
+
pub actor: jacquard_common::types::ident::AtIdentifier<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub cursor: std::option::Option<jacquard_common::CowStr<'a>>,
+
///(default: "all_clips")
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub filter: std::option::Option<jacquard_common::CowStr<'a>>,
+
///(default: 50, min: 1, max: 100)
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub limit: std::option::Option<i64>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetProfileClipsOutput<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cursor: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(borrow)]
+
pub feed: Vec<crate::social_clippr::feed::ClipView<'a>>,
+
}
+
+
///Response type for
+
///social.clippr.feed.getProfileClips
+
pub struct GetProfileClipsResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetProfileClipsResponse {
+
const NSID: &'static str = "social.clippr.feed.getProfileClips";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetProfileClipsOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetProfileClips<'de> {
+
const NSID: &'static str = "social.clippr.feed.getProfileClips";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetProfileClipsResponse;
+
}
+
+
///Endpoint type for
+
///social.clippr.feed.getProfileClips
+
pub struct GetProfileClipsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetProfileClipsRequest {
+
const PATH: &'static str = "/xrpc/social.clippr.feed.getProfileClips";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetProfileClips<'de>;
+
type Response = GetProfileClipsResponse;
+
}
+75
crates/jacquard-api/src/social_clippr/feed/get_profile_tags.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.clippr.feed.getProfileTags
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetProfileTags<'a> {
+
#[serde(borrow)]
+
pub actor: jacquard_common::types::ident::AtIdentifier<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub cursor: std::option::Option<jacquard_common::CowStr<'a>>,
+
///(default: 50, min: 1, max: 100)
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub limit: std::option::Option<i64>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetProfileTagsOutput<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cursor: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(borrow)]
+
pub feed: Vec<crate::social_clippr::feed::TagView<'a>>,
+
}
+
+
///Response type for
+
///social.clippr.feed.getProfileTags
+
pub struct GetProfileTagsResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetProfileTagsResponse {
+
const NSID: &'static str = "social.clippr.feed.getProfileTags";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetProfileTagsOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetProfileTags<'de> {
+
const NSID: &'static str = "social.clippr.feed.getProfileTags";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetProfileTagsResponse;
+
}
+
+
///Endpoint type for
+
///social.clippr.feed.getProfileTags
+
pub struct GetProfileTagsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetProfileTagsRequest {
+
const PATH: &'static str = "/xrpc/social.clippr.feed.getProfileTags";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetProfileTags<'de>;
+
type Response = GetProfileTagsResponse;
+
}
+67
crates/jacquard-api/src/social_clippr/feed/get_tag_list.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.clippr.feed.getTagList
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetTagList<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub actor: std::option::Option<jacquard_common::types::ident::AtIdentifier<'a>>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetTagListOutput<'a> {
+
///A list of tags and their associated details
+
#[serde(borrow)]
+
pub tags: Vec<crate::social_clippr::feed::TagView<'a>>,
+
}
+
+
///Response type for
+
///social.clippr.feed.getTagList
+
pub struct GetTagListResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetTagListResponse {
+
const NSID: &'static str = "social.clippr.feed.getTagList";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetTagListOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetTagList<'de> {
+
const NSID: &'static str = "social.clippr.feed.getTagList";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetTagListResponse;
+
}
+
+
///Endpoint type for
+
///social.clippr.feed.getTagList
+
pub struct GetTagListRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetTagListRequest {
+
const PATH: &'static str = "/xrpc/social.clippr.feed.getTagList";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetTagList<'de>;
+
type Response = GetTagListResponse;
+
}
+66
crates/jacquard-api/src/social_clippr/feed/get_tags.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.clippr.feed.getTags
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[builder(start_fn = new)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetTags<'a> {
+
#[serde(borrow)]
+
pub uris: Vec<jacquard_common::types::string::AtUri<'a>>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetTagsOutput<'a> {
+
///An array of hydrated tag views
+
#[serde(borrow)]
+
pub tags: Vec<crate::social_clippr::feed::TagView<'a>>,
+
}
+
+
///Response type for
+
///social.clippr.feed.getTags
+
pub struct GetTagsResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetTagsResponse {
+
const NSID: &'static str = "social.clippr.feed.getTags";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetTagsOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetTags<'de> {
+
const NSID: &'static str = "social.clippr.feed.getTags";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetTagsResponse;
+
}
+
+
///Endpoint type for
+
///social.clippr.feed.getTags
+
pub struct GetTagsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetTagsRequest {
+
const PATH: &'static str = "/xrpc/social.clippr.feed.getTags";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetTags<'de>;
+
type Response = GetTagsResponse;
+
}
+38
crates/jacquard-api/src/social_clippr/feed/tag.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.clippr.feed.tag
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A record containing a bookmark tag for organization.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Tag<'a> {
+
///A hexadecimal color code
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub color: std::option::Option<jacquard_common::CowStr<'a>>,
+
///A client-defined timestamp for the creation of the tag
+
pub created_at: jacquard_common::types::string::Datetime,
+
///A description of the tag for additional context
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
///A de-duplicated string containing the name of the tag
+
#[serde(borrow)]
+
pub name: jacquard_common::CowStr<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Tag<'_> {
+
const NSID: &'static str = "social.clippr.feed.tag";
+
}
+28
crates/jacquard-api/src/social_grain.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.grain.defs
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod actor;
+
pub mod favorite;
+
pub mod gallery;
+
pub mod photo;
+
+
///width:height represents an aspect ratio. It may be approximate, and may not correspond to absolute dimensions in any given unit.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct AspectRatio<'a> {
+
pub height: i64,
+
pub width: i64,
+
}
+40
crates/jacquard-api/src/social_grain/actor.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.grain.actor.defs
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod profile;
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct ProfileView<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub avatar: std::option::Option<jacquard_common::types::string::Uri<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub created_at: std::option::Option<jacquard_common::types::string::Datetime>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(borrow)]
+
pub did: jacquard_common::types::string::Did<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub display_name: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(borrow)]
+
pub handle: jacquard_common::types::string::Handle<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub labels: std::option::Option<Vec<crate::com_atproto::label::Label<'a>>>,
+
}
+38
crates/jacquard-api/src/social_grain/actor/profile.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.grain.actor.profile
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A declaration of a basic account profile.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Profile<'a> {
+
///Small image to be displayed next to posts from account. AKA, 'profile picture'
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub avatar: std::option::Option<jacquard_common::types::blob::Blob<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub created_at: std::option::Option<jacquard_common::types::string::Datetime>,
+
///Free-form profile description text.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub display_name: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Profile<'_> {
+
const NSID: &'static str = "social.grain.actor.profile";
+
}
+27
crates/jacquard-api/src/social_grain/favorite.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.grain.favorite
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Favorite<'a> {
+
pub created_at: jacquard_common::types::string::Datetime,
+
#[serde(borrow)]
+
pub subject: jacquard_common::types::string::AtUri<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Favorite<'_> {
+
const NSID: &'static str = "social.grain.favorite";
+
}
+82
crates/jacquard-api/src/social_grain/gallery.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.grain.gallery.defs
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod item;
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Gallery<'a> {
+
pub created_at: jacquard_common::types::string::Datetime,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
///Self-label values for this post. Effectively content warnings.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub labels: std::option::Option<GalleryRecordLabels<'a>>,
+
#[serde(borrow)]
+
pub title: jacquard_common::CowStr<'a>,
+
}
+
+
#[jacquard_derive::open_union]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(tag = "$type")]
+
#[serde(bound(deserialize = "'de: 'a"))]
+
pub enum GalleryRecordLabels<'a> {
+
#[serde(rename = "com.atproto.label.defs#selfLabels")]
+
DefsSelfLabels(Box<crate::com_atproto::label::SelfLabels<'a>>),
+
}
+
+
impl jacquard_common::types::collection::Collection for Gallery<'_> {
+
const NSID: &'static str = "social.grain.gallery";
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GalleryView<'a> {
+
#[serde(borrow)]
+
pub cid: jacquard_common::types::string::Cid<'a>,
+
#[serde(borrow)]
+
pub creator: crate::social_grain::actor::ProfileView<'a>,
+
pub indexed_at: jacquard_common::types::string::Datetime,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub items: std::option::Option<Vec<jacquard_common::types::value::Data<'a>>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub labels: std::option::Option<Vec<crate::com_atproto::label::Label<'a>>>,
+
#[serde(borrow)]
+
pub record: jacquard_common::types::value::Data<'a>,
+
#[serde(borrow)]
+
pub uri: jacquard_common::types::string::AtUri<'a>,
+
}
+31
crates/jacquard-api/src/social_grain/gallery/item.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.grain.gallery.item
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Item<'a> {
+
pub created_at: jacquard_common::types::string::Datetime,
+
#[serde(borrow)]
+
pub gallery: jacquard_common::types::string::AtUri<'a>,
+
#[serde(borrow)]
+
pub item: jacquard_common::types::string::AtUri<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub position: std::option::Option<i64>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Item<'_> {
+
const NSID: &'static str = "social.grain.gallery.item";
+
}
+122
crates/jacquard-api/src/social_grain/photo.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.grain.photo.defs
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod exif;
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Photo<'a> {
+
///Alt text description of the image, for accessibility.
+
#[serde(borrow)]
+
pub alt: jacquard_common::CowStr<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub aspect_ratio: std::option::Option<crate::social_grain::AspectRatio<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub created_at: std::option::Option<jacquard_common::types::string::Datetime>,
+
#[serde(borrow)]
+
pub photo: jacquard_common::types::blob::Blob<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Photo<'_> {
+
const NSID: &'static str = "social.grain.photo";
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct ExifView<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cid: std::option::Option<jacquard_common::types::string::Cid<'a>>,
+
pub created_at: jacquard_common::types::string::Datetime,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub date_time_original: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub exposure_time: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub f_number: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub flash: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub focal_length_in35mm_format: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub i_so: std::option::Option<i64>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub lens_make: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub lens_model: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub make: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub model: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(borrow)]
+
pub photo: jacquard_common::types::string::AtUri<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub uri: std::option::Option<jacquard_common::types::string::AtUri<'a>>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct PhotoView<'a> {
+
///Alt text description of the image, for accessibility.
+
#[serde(borrow)]
+
pub alt: jacquard_common::CowStr<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub aspect_ratio: std::option::Option<crate::social_grain::AspectRatio<'a>>,
+
#[serde(borrow)]
+
pub cid: jacquard_common::types::string::Cid<'a>,
+
///EXIF metadata for the photo, if available.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub exif: std::option::Option<crate::social_grain::photo::ExifView<'a>>,
+
///Fully-qualified URL where a large version of the image can be fetched. May or may not be the exact original blob. For example, CDN location provided by the App View.
+
#[serde(borrow)]
+
pub fullsize: jacquard_common::types::string::Uri<'a>,
+
///Fully-qualified URL where a thumbnail of the image can be fetched. For example, CDN location provided by the App View.
+
#[serde(borrow)]
+
pub thumb: jacquard_common::types::string::Uri<'a>,
+
#[serde(borrow)]
+
pub uri: jacquard_common::types::string::AtUri<'a>,
+
}
+55
crates/jacquard-api/src/social_grain/photo/exif.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.grain.photo.exif
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///Basic EXIF metadata for a photo. Integers are scaled by 1000000 to accommodate decimal values and potentially other tags in the future.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Exif<'a> {
+
pub created_at: jacquard_common::types::string::Datetime,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub date_time_original: std::option::Option<
+
jacquard_common::types::string::Datetime,
+
>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub exposure_time: std::option::Option<i64>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub f_number: std::option::Option<i64>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub flash: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub focal_length_in35mm_format: std::option::Option<i64>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub i_so: std::option::Option<i64>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub lens_make: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub lens_model: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub make: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub model: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(borrow)]
+
pub photo: jacquard_common::types::string::AtUri<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Exif<'_> {
+
const NSID: &'static str = "social.grain.photo.exif";
+
}
+7
crates/jacquard-api/src/social_pmsky.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod proposal;
+
pub mod vote;
+60
crates/jacquard-api/src/social_pmsky/proposal.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.pmsky.proposal
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Proposal<'a> {
+
///The persistent, anonymous identifier for the user creating the proposal.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub aid: std::option::Option<jacquard_common::CowStr<'a>>,
+
///Optionally, CID specifying the specific version of 'uri' resource this proposal applies to.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cid: std::option::Option<jacquard_common::types::string::Cid<'a>>,
+
///Timestamp when this proposal was created.
+
pub cts: jacquard_common::types::string::Datetime,
+
///For 'label' proposals where 'val' is 'needs-context', the full text of any proposed annotation (e.g. community note) to be shown below the post.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub note: std::option::Option<jacquard_common::CowStr<'a>>,
+
///An optional array of predefined reasons justifying the moderation action.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub reasons: std::option::Option<Vec<jacquard_common::CowStr<'a>>>,
+
///Signature of dag-cbor encoded proposal.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub sig: std::option::Option<bytes::Bytes>,
+
///DID of the actor who created this proposal.
+
#[serde(borrow)]
+
pub src: jacquard_common::types::string::Did<'a>,
+
///The type of moderation action being proposed. Currently expected values are 'allowed_user' or 'label'
+
#[serde(borrow)]
+
pub typ: jacquard_common::CowStr<'a>,
+
///AT URI of the record, repository (account), or other resource that this proposal applies to.
+
#[serde(borrow)]
+
pub uri: jacquard_common::types::string::Uri<'a>,
+
///For 'label' proposals, the short string name of the value of the proposed label.
+
#[serde(borrow)]
+
pub val: jacquard_common::CowStr<'a>,
+
///The AT Protocol version of the proposal object.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub ver: std::option::Option<i64>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Proposal<'_> {
+
const NSID: &'static str = "social.pmsky.proposal";
+
}
+49
crates/jacquard-api/src/social_pmsky/vote.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: social.pmsky.vote
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Vote<'a> {
+
///The persistent, anonymous identifier for the user casting the vote.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub aid: std::option::Option<jacquard_common::CowStr<'a>>,
+
///Optionally, CID specifying the specific version of 'uri' resource this vote applies to.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub cid: std::option::Option<jacquard_common::types::string::Cid<'a>>,
+
///Timestamp when this vote was created.
+
pub cts: jacquard_common::types::string::Datetime,
+
///An optional array of predefined reasons justifying the vote.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub reasons: std::option::Option<Vec<jacquard_common::CowStr<'a>>>,
+
///Signature of dag-cbor encoded vote.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
pub sig: std::option::Option<bytes::Bytes>,
+
///the account creating the vote, not necessarily the same as the user who voted
+
#[serde(borrow)]
+
pub src: jacquard_common::types::string::Did<'a>,
+
///AT URI of the record, repository (account), or other resource that this vote applies to.
+
#[serde(borrow)]
+
pub uri: jacquard_common::types::string::Uri<'a>,
+
///The value of the vote. The exact meaning depends on what is being voted on, but generally '+1' means 'approval', -1 means 'disapproval', and 0 indicates 'neutrality'.
+
pub val: i64,
+
}
+
+
impl jacquard_common::types::collection::Collection for Vote<'_> {
+
const NSID: &'static str = "social.pmsky.vote";
+
}
+12
crates/jacquard-api/src/tools_ozone/communication/create_template.rs
···
"application/json",
);
type Response = CreateTemplateResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.communication.createTemplate
+
pub struct CreateTemplateRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CreateTemplateRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.communication.createTemplate";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = CreateTemplate<'de>;
+
type Response = CreateTemplateResponse;
}
+12
crates/jacquard-api/src/tools_ozone/communication/delete_template.rs
···
"application/json",
);
type Response = DeleteTemplateResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.communication.deleteTemplate
+
pub struct DeleteTemplateRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeleteTemplateRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.communication.deleteTemplate";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DeleteTemplate<'de>;
+
type Response = DeleteTemplateResponse;
}
+20 -1
crates/jacquard-api/src/tools_ozone/communication/list_templates.rs
···
}
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct ListTemplates;
///Response type for
///tools.ozone.communication.listTemplates
···
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for ListTemplates {
const NSID: &'static str = "tools.ozone.communication.listTemplates";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = ListTemplatesResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.communication.listTemplates
+
pub struct ListTemplatesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ListTemplatesRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.communication.listTemplates";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ListTemplates;
type Response = ListTemplatesResponse;
}
+12
crates/jacquard-api/src/tools_ozone/communication/update_template.rs
···
"application/json",
);
type Response = UpdateTemplateResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.communication.updateTemplate
+
pub struct UpdateTemplateRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateTemplateRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.communication.updateTemplate";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateTemplate<'de>;
+
type Response = UpdateTemplateResponse;
}
+10
crates/jacquard-api/src/tools_ozone/hosting/get_account_history.rs
···
type Response = GetAccountHistoryResponse;
}
+
///Endpoint type for
+
///tools.ozone.hosting.getAccountHistory
+
pub struct GetAccountHistoryRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetAccountHistoryRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.hosting.getAccountHistory";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetAccountHistory<'de>;
+
type Response = GetAccountHistoryResponse;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+12
crates/jacquard-api/src/tools_ozone/moderation/cancel_scheduled_actions.rs
···
"application/json",
);
type Response = CancelScheduledActionsResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.moderation.cancelScheduledActions
+
pub struct CancelScheduledActionsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for CancelScheduledActionsRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.moderation.cancelScheduledActions";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = CancelScheduledActions<'de>;
+
type Response = CancelScheduledActionsResponse;
}
+12
crates/jacquard-api/src/tools_ozone/moderation/emit_event.rs
···
"application/json",
);
type Response = EmitEventResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.moderation.emitEvent
+
pub struct EmitEventRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for EmitEventRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.moderation.emitEvent";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = EmitEvent<'de>;
+
type Response = EmitEventResponse;
}
+10
crates/jacquard-api/src/tools_ozone/moderation/get_account_timeline.rs
···
type Response = GetAccountTimelineResponse;
}
+
///Endpoint type for
+
///tools.ozone.moderation.getAccountTimeline
+
pub struct GetAccountTimelineRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetAccountTimelineRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.moderation.getAccountTimeline";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetAccountTimeline<'de>;
+
type Response = GetAccountTimelineResponse;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+10
crates/jacquard-api/src/tools_ozone/moderation/get_event.rs
···
const NSID: &'static str = "tools.ozone.moderation.getEvent";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetEventResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.moderation.getEvent
+
pub struct GetEventRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetEventRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.moderation.getEvent";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetEvent;
+
type Response = GetEventResponse;
}
+10
crates/jacquard-api/src/tools_ozone/moderation/get_record.rs
···
const NSID: &'static str = "tools.ozone.moderation.getRecord";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetRecordResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.moderation.getRecord
+
pub struct GetRecordRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetRecordRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.moderation.getRecord";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetRecord<'de>;
+
type Response = GetRecordResponse;
}
+10
crates/jacquard-api/src/tools_ozone/moderation/get_records.rs
···
const NSID: &'static str = "tools.ozone.moderation.getRecords";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetRecordsResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.moderation.getRecords
+
pub struct GetRecordsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetRecordsRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.moderation.getRecords";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetRecords<'de>;
+
type Response = GetRecordsResponse;
}
+10
crates/jacquard-api/src/tools_ozone/moderation/get_repo.rs
···
const NSID: &'static str = "tools.ozone.moderation.getRepo";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetRepoResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.moderation.getRepo
+
pub struct GetRepoRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetRepoRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.moderation.getRepo";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetRepo<'de>;
+
type Response = GetRepoResponse;
}
+10
crates/jacquard-api/src/tools_ozone/moderation/get_reporter_stats.rs
···
const NSID: &'static str = "tools.ozone.moderation.getReporterStats";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetReporterStatsResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.moderation.getReporterStats
+
pub struct GetReporterStatsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetReporterStatsRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.moderation.getReporterStats";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetReporterStats<'de>;
+
type Response = GetReporterStatsResponse;
}
+10
crates/jacquard-api/src/tools_ozone/moderation/get_repos.rs
···
const NSID: &'static str = "tools.ozone.moderation.getRepos";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetReposResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.moderation.getRepos
+
pub struct GetReposRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetReposRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.moderation.getRepos";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetRepos<'de>;
+
type Response = GetReposResponse;
}
+10
crates/jacquard-api/src/tools_ozone/moderation/get_subjects.rs
···
const NSID: &'static str = "tools.ozone.moderation.getSubjects";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetSubjectsResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.moderation.getSubjects
+
pub struct GetSubjectsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetSubjectsRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.moderation.getSubjects";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetSubjects<'de>;
+
type Response = GetSubjectsResponse;
}
+12
crates/jacquard-api/src/tools_ozone/moderation/list_scheduled_actions.rs
···
"application/json",
);
type Response = ListScheduledActionsResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.moderation.listScheduledActions
+
pub struct ListScheduledActionsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ListScheduledActionsRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.moderation.listScheduledActions";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = ListScheduledActions<'de>;
+
type Response = ListScheduledActionsResponse;
}
+10
crates/jacquard-api/src/tools_ozone/moderation/query_events.rs
···
const NSID: &'static str = "tools.ozone.moderation.queryEvents";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = QueryEventsResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.moderation.queryEvents
+
pub struct QueryEventsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for QueryEventsRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.moderation.queryEvents";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = QueryEvents<'de>;
+
type Response = QueryEventsResponse;
}
+10
crates/jacquard-api/src/tools_ozone/moderation/query_statuses.rs
···
const NSID: &'static str = "tools.ozone.moderation.queryStatuses";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = QueryStatusesResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.moderation.queryStatuses
+
pub struct QueryStatusesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for QueryStatusesRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.moderation.queryStatuses";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = QueryStatuses<'de>;
+
type Response = QueryStatusesResponse;
}
+12
crates/jacquard-api/src/tools_ozone/moderation/schedule_action.rs
···
type Response = ScheduleActionResponse;
}
+
///Endpoint type for
+
///tools.ozone.moderation.scheduleAction
+
pub struct ScheduleActionRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ScheduleActionRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.moderation.scheduleAction";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = ScheduleAction<'de>;
+
type Response = ScheduleActionResponse;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+10
crates/jacquard-api/src/tools_ozone/moderation/search_repos.rs
···
const NSID: &'static str = "tools.ozone.moderation.searchRepos";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = SearchReposResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.moderation.searchRepos
+
pub struct SearchReposRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SearchReposRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.moderation.searchRepos";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = SearchRepos<'de>;
+
type Response = SearchReposResponse;
}
+12
crates/jacquard-api/src/tools_ozone/safelink/add_rule.rs
···
"application/json",
);
type Response = AddRuleResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.safelink.addRule
+
pub struct AddRuleRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for AddRuleRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.safelink.addRule";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = AddRule<'de>;
+
type Response = AddRuleResponse;
}
+12
crates/jacquard-api/src/tools_ozone/safelink/query_events.rs
···
"application/json",
);
type Response = QueryEventsResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.safelink.queryEvents
+
pub struct QueryEventsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for QueryEventsRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.safelink.queryEvents";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = QueryEvents<'de>;
+
type Response = QueryEventsResponse;
}
+12
crates/jacquard-api/src/tools_ozone/safelink/query_rules.rs
···
"application/json",
);
type Response = QueryRulesResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.safelink.queryRules
+
pub struct QueryRulesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for QueryRulesRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.safelink.queryRules";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = QueryRules<'de>;
+
type Response = QueryRulesResponse;
}
+12
crates/jacquard-api/src/tools_ozone/safelink/remove_rule.rs
···
"application/json",
);
type Response = RemoveRuleResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.safelink.removeRule
+
pub struct RemoveRuleRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for RemoveRuleRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.safelink.removeRule";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = RemoveRule<'de>;
+
type Response = RemoveRuleResponse;
}
+12
crates/jacquard-api/src/tools_ozone/safelink/update_rule.rs
···
"application/json",
);
type Response = UpdateRuleResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.safelink.updateRule
+
pub struct UpdateRuleRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateRuleRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.safelink.updateRule";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateRule<'de>;
+
type Response = UpdateRuleResponse;
}
+20 -1
crates/jacquard-api/src/tools_ozone/server/get_config.rs
···
}
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(
+
Debug,
+
Clone,
+
Copy,
+
PartialEq,
+
Eq,
+
serde::Serialize,
+
serde::Deserialize,
+
jacquard_derive::IntoStatic
+
)]
pub struct GetConfig;
///Response type for
///tools.ozone.server.getConfig
···
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetConfig {
const NSID: &'static str = "tools.ozone.server.getConfig";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Response = GetConfigResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.server.getConfig
+
pub struct GetConfigRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetConfigRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.server.getConfig";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetConfig;
type Response = GetConfigResponse;
}
+12
crates/jacquard-api/src/tools_ozone/set/add_values.rs
···
"application/json",
);
type Response = AddValuesResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.set.addValues
+
pub struct AddValuesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for AddValuesRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.set.addValues";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = AddValues<'de>;
+
type Response = AddValuesResponse;
}
+12
crates/jacquard-api/src/tools_ozone/set/delete_set.rs
···
"application/json",
);
type Response = DeleteSetResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.set.deleteSet
+
pub struct DeleteSetRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeleteSetRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.set.deleteSet";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DeleteSet<'de>;
+
type Response = DeleteSetResponse;
}
+12
crates/jacquard-api/src/tools_ozone/set/delete_values.rs
···
"application/json",
);
type Response = DeleteValuesResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.set.deleteValues
+
pub struct DeleteValuesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeleteValuesRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.set.deleteValues";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DeleteValues<'de>;
+
type Response = DeleteValuesResponse;
}
+10
crates/jacquard-api/src/tools_ozone/set/get_values.rs
···
const NSID: &'static str = "tools.ozone.set.getValues";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = GetValuesResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.set.getValues
+
pub struct GetValuesRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetValuesRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.set.getValues";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = GetValues<'de>;
+
type Response = GetValuesResponse;
}
+10
crates/jacquard-api/src/tools_ozone/set/query_sets.rs
···
const NSID: &'static str = "tools.ozone.set.querySets";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = QuerySetsResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.set.querySets
+
pub struct QuerySetsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for QuerySetsRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.set.querySets";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = QuerySets<'de>;
+
type Response = QuerySetsResponse;
}
+12
crates/jacquard-api/src/tools_ozone/set/upsert_set.rs
···
"application/json",
);
type Response = UpsertSetResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.set.upsertSet
+
pub struct UpsertSetRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpsertSetRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.set.upsertSet";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpsertSet<'de>;
+
type Response = UpsertSetResponse;
}
+10
crates/jacquard-api/src/tools_ozone/setting/list_options.rs
···
const NSID: &'static str = "tools.ozone.setting.listOptions";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = ListOptionsResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.setting.listOptions
+
pub struct ListOptionsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ListOptionsRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.setting.listOptions";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ListOptions<'de>;
+
type Response = ListOptionsResponse;
}
+12
crates/jacquard-api/src/tools_ozone/setting/remove_options.rs
···
"application/json",
);
type Response = RemoveOptionsResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.setting.removeOptions
+
pub struct RemoveOptionsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for RemoveOptionsRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.setting.removeOptions";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = RemoveOptions<'de>;
+
type Response = RemoveOptionsResponse;
}
+12
crates/jacquard-api/src/tools_ozone/setting/upsert_option.rs
···
"application/json",
);
type Response = UpsertOptionResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.setting.upsertOption
+
pub struct UpsertOptionRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpsertOptionRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.setting.upsertOption";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpsertOption<'de>;
+
type Response = UpsertOptionResponse;
}
+10
crates/jacquard-api/src/tools_ozone/signature/find_correlation.rs
···
const NSID: &'static str = "tools.ozone.signature.findCorrelation";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = FindCorrelationResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.signature.findCorrelation
+
pub struct FindCorrelationRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for FindCorrelationRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.signature.findCorrelation";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = FindCorrelation<'de>;
+
type Response = FindCorrelationResponse;
}
+10
crates/jacquard-api/src/tools_ozone/signature/search_accounts.rs
···
const NSID: &'static str = "tools.ozone.signature.searchAccounts";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = SearchAccountsResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.signature.searchAccounts
+
pub struct SearchAccountsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for SearchAccountsRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.signature.searchAccounts";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = SearchAccounts<'de>;
+
type Response = SearchAccountsResponse;
}
+12
crates/jacquard-api/src/tools_ozone/team/add_member.rs
···
"application/json",
);
type Response = AddMemberResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.team.addMember
+
pub struct AddMemberRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for AddMemberRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.team.addMember";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = AddMember<'de>;
+
type Response = AddMemberResponse;
}
+12
crates/jacquard-api/src/tools_ozone/team/delete_member.rs
···
"application/json",
);
type Response = DeleteMemberResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.team.deleteMember
+
pub struct DeleteMemberRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DeleteMemberRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.team.deleteMember";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DeleteMember<'de>;
+
type Response = DeleteMemberResponse;
}
+10
crates/jacquard-api/src/tools_ozone/team/list_members.rs
···
const NSID: &'static str = "tools.ozone.team.listMembers";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = ListMembersResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.team.listMembers
+
pub struct ListMembersRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ListMembersRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.team.listMembers";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ListMembers<'de>;
+
type Response = ListMembersResponse;
}
+12
crates/jacquard-api/src/tools_ozone/team/update_member.rs
···
"application/json",
);
type Response = UpdateMemberResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.team.updateMember
+
pub struct UpdateMemberRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for UpdateMemberRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.team.updateMember";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = UpdateMember<'de>;
+
type Response = UpdateMemberResponse;
}
+12
crates/jacquard-api/src/tools_ozone/verification/grant_verifications.rs
···
type Response = GrantVerificationsResponse;
}
+
///Endpoint type for
+
///tools.ozone.verification.grantVerifications
+
pub struct GrantVerificationsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GrantVerificationsRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.verification.grantVerifications";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = GrantVerifications<'de>;
+
type Response = GrantVerificationsResponse;
+
}
+
#[jacquard_derive::lexicon]
#[derive(
serde::Serialize,
+10
crates/jacquard-api/src/tools_ozone/verification/list_verifications.rs
···
const NSID: &'static str = "tools.ozone.verification.listVerifications";
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
type Response = ListVerificationsResponse;
+
}
+
+
///Endpoint type for
+
///tools.ozone.verification.listVerifications
+
pub struct ListVerificationsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for ListVerificationsRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.verification.listVerifications";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query;
+
type Request<'de> = ListVerifications<'de>;
+
type Response = ListVerificationsResponse;
}
+12
crates/jacquard-api/src/tools_ozone/verification/revoke_verifications.rs
···
type Response = RevokeVerificationsResponse;
}
+
///Endpoint type for
+
///tools.ozone.verification.revokeVerifications
+
pub struct RevokeVerificationsRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for RevokeVerificationsRequest {
+
const PATH: &'static str = "/xrpc/tools.ozone.verification.revokeVerifications";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = RevokeVerifications<'de>;
+
type Response = RevokeVerificationsResponse;
+
}
+
///Error object for failed revocations
#[jacquard_derive::lexicon]
#[derive(
+1 -3
crates/jacquard-api/src/uk_ewancroft.rs
···
// This file was automatically generated from Lexicon schemas.
// Any manual changes will be overwritten on the next regeneration.
-
pub mod now;
-
pub mod site;
-
pub mod snake;
+
pub mod now;
+7
crates/jacquard-api/src/uk_skyblur.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod post;
+
pub mod preference;
+47
crates/jacquard-api/src/uk_skyblur/post.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: uk.skyblur.post
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod decrypt_by_cid;
+
pub mod encrypt;
+
pub mod get_post;
+
+
///Record containing a Skyblur post.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Post<'a> {
+
///The post additional contents.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub additional: std::option::Option<jacquard_common::CowStr<'a>>,
+
///Created date assigned by client
+
pub created_at: jacquard_common::types::string::Datetime,
+
///Encrypted post body. It shoud be decrypted by the client with AES-256.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub encrypt_body: std::option::Option<jacquard_common::types::blob::Blob<'a>>,
+
///The post main contents. Blurred text must be enclosed in brackets [].
+
#[serde(borrow)]
+
pub text: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
pub uri: jacquard_common::types::string::AtUri<'a>,
+
///For 'password', the text only contains blurred text, and additional is always empty. The unblurred text and additional are included in the encryptBody.
+
#[serde(borrow)]
+
pub visibility: jacquard_common::CowStr<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Post<'_> {
+
const NSID: &'static str = "uk.skyblur.post";
+
}
+91
crates/jacquard-api/src/uk_skyblur/post/decrypt_by_cid.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: uk.skyblur.post.decryptByCid
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct DecryptByCid<'a> {
+
#[serde(borrow)]
+
pub cid: jacquard_common::types::string::Cid<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub password: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
pub pds: jacquard_common::types::string::Uri<'a>,
+
#[serde(borrow)]
+
pub repo: jacquard_common::types::string::Did<'a>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
///Returns the encrypted result.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct DecryptByCidOutput<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub additional: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub message: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(borrow)]
+
pub text: jacquard_common::CowStr<'a>,
+
}
+
+
///Response type for
+
///uk.skyblur.post.decryptByCid
+
pub struct DecryptByCidResponse;
+
impl jacquard_common::xrpc::XrpcResp for DecryptByCidResponse {
+
const NSID: &'static str = "uk.skyblur.post.decryptByCid";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = DecryptByCidOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for DecryptByCid<'de> {
+
const NSID: &'static str = "uk.skyblur.post.decryptByCid";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = DecryptByCidResponse;
+
}
+
+
///Endpoint type for
+
///uk.skyblur.post.decryptByCid
+
pub struct DecryptByCidRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for DecryptByCidRequest {
+
const PATH: &'static str = "/xrpc/uk.skyblur.post.decryptByCid";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = DecryptByCid<'de>;
+
type Response = DecryptByCidResponse;
+
}
+85
crates/jacquard-api/src/uk_skyblur/post/encrypt.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: uk.skyblur.post.encrypt
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct Encrypt<'a> {
+
#[serde(borrow)]
+
#[builder(into)]
+
pub body: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
#[builder(into)]
+
pub password: jacquard_common::CowStr<'a>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
///Returns the encrypted result.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct EncryptOutput<'a> {
+
#[serde(borrow)]
+
pub body: jacquard_common::CowStr<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub message: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
///Response type for
+
///uk.skyblur.post.encrypt
+
pub struct EncryptResponse;
+
impl jacquard_common::xrpc::XrpcResp for EncryptResponse {
+
const NSID: &'static str = "uk.skyblur.post.encrypt";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = EncryptOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for Encrypt<'de> {
+
const NSID: &'static str = "uk.skyblur.post.encrypt";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = EncryptResponse;
+
}
+
+
///Endpoint type for
+
///uk.skyblur.post.encrypt
+
pub struct EncryptRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for EncryptRequest {
+
const PATH: &'static str = "/xrpc/uk.skyblur.post.encrypt";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = Encrypt<'de>;
+
type Response = EncryptResponse;
+
}
+89
crates/jacquard-api/src/uk_skyblur/post/get_post.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: uk.skyblur.post.getPost
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
bon::Builder,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
#[builder(start_fn = new)]
+
pub struct GetPost<'a> {
+
///If the specified uri is password-protected, please provide the password. If no password is specified, the non-protected content will be returned.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
#[builder(into)]
+
pub password: std::option::Option<jacquard_common::CowStr<'a>>,
+
///Skyblur post at-uri. It shoud be uk.skyblur.post collection.
+
#[serde(borrow)]
+
pub uri: jacquard_common::types::string::AtUri<'a>,
+
#[serde(flatten)]
+
#[serde(borrow)]
+
#[builder(default)]
+
pub extra_data: ::std::collections::BTreeMap<
+
::jacquard_common::smol_str::SmolStr,
+
::jacquard_common::types::value::Data<'a>,
+
>,
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct GetPostOutput<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub additional: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub message: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(borrow)]
+
pub text: jacquard_common::CowStr<'a>,
+
}
+
+
///Response type for
+
///uk.skyblur.post.getPost
+
pub struct GetPostResponse;
+
impl jacquard_common::xrpc::XrpcResp for GetPostResponse {
+
const NSID: &'static str = "uk.skyblur.post.getPost";
+
const ENCODING: &'static str = "application/json";
+
type Output<'de> = GetPostOutput<'de>;
+
type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
+
}
+
+
impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for GetPost<'de> {
+
const NSID: &'static str = "uk.skyblur.post.getPost";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Response = GetPostResponse;
+
}
+
+
///Endpoint type for
+
///uk.skyblur.post.getPost
+
pub struct GetPostRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for GetPostRequest {
+
const PATH: &'static str = "/xrpc/uk.skyblur.post.getPost";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = GetPost<'de>;
+
type Response = GetPostResponse;
+
}
+64
crates/jacquard-api/src/uk_skyblur/preference.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: uk.skyblur.preference
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///A declaration of a Skyblur account.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Preference<'a> {
+
#[serde(borrow)]
+
pub my_page: PreferenceRecordMyPage<'a>,
+
}
+
+
#[jacquard_derive::open_union]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(tag = "$type")]
+
#[serde(bound(deserialize = "'de: 'a"))]
+
pub enum PreferenceRecordMyPage<'a> {
+
#[serde(rename = "uk.skyblur.preference#myPage")]
+
PreferenceMyPage(Box<crate::uk_skyblur::preference::MyPage<'a>>),
+
}
+
+
impl jacquard_common::types::collection::Collection for Preference<'_> {
+
const NSID: &'static str = "uk.skyblur.preference";
+
}
+
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct MyPage<'a> {
+
///Define the description displayed on MyPage.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub description: std::option::Option<jacquard_common::CowStr<'a>>,
+
///If this item is true, MyPage will be displayed.
+
pub is_use_my_page: bool,
+
}
+6
crates/jacquard-api/src/us_polhem.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod blog;
+27
crates/jacquard-api/src/us_polhem/blog.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: us.polhem.blog.defs
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
pub mod content;
+
pub mod post;
+
pub mod tag;
+
+
///width:height represents an aspect ratio. It may be approximate, and may not correspond to absolute dimensions in any given unit.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct AspectRatio<'a> {
+
pub height: i64,
+
pub width: i64,
+
}
+33
crates/jacquard-api/src/us_polhem/blog/content.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: us.polhem.blog.content
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///Record describing a page content block.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Content<'a> {
+
#[serde(borrow)]
+
pub content: jacquard_common::CowStr<'a>,
+
pub created_at: jacquard_common::types::string::Datetime,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub images: std::option::Option<Vec<jacquard_common::types::value::Data<'a>>>,
+
#[serde(borrow)]
+
pub slug: jacquard_common::CowStr<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Content<'_> {
+
const NSID: &'static str = "us.polhem.blog.content";
+
}
+48
crates/jacquard-api/src/us_polhem/blog/post.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: us.polhem.blog.post
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///Record describing a blog post.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Post<'a> {
+
#[serde(borrow)]
+
pub content: jacquard_common::CowStr<'a>,
+
pub created_at: jacquard_common::types::string::Datetime,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub excerpt: std::option::Option<jacquard_common::CowStr<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub featured_image: std::option::Option<crate::app_bsky::embed::images::Image<'a>>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub images: std::option::Option<Vec<crate::app_bsky::embed::images::Image<'a>>>,
+
#[serde(borrow)]
+
pub slug: jacquard_common::CowStr<'a>,
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub tags: std::option::Option<Vec<jacquard_common::types::string::AtUri<'a>>>,
+
#[serde(borrow)]
+
pub title: jacquard_common::CowStr<'a>,
+
///Tells the visibility of the article to AppView.
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub visibility: std::option::Option<jacquard_common::CowStr<'a>>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Post<'_> {
+
const NSID: &'static str = "us.polhem.blog.post";
+
}
+32
crates/jacquard-api/src/us_polhem/blog/tag.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: us.polhem.blog.tag
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///Record describing a blog tag.
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Tag<'a> {
+
pub created_at: jacquard_common::types::string::Datetime,
+
#[serde(borrow)]
+
pub description: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
pub name: jacquard_common::CowStr<'a>,
+
#[serde(borrow)]
+
pub slug: jacquard_common::CowStr<'a>,
+
}
+
+
impl jacquard_common::types::collection::Collection for Tag<'_> {
+
const NSID: &'static str = "us.polhem.blog.tag";
+
}
+29
crates/jacquard-api/src/win_tomo_x/pushat/allow.rs
···
+
// @generated by jacquard-lexicon. DO NOT EDIT.
+
//
+
// Lexicon: win.tomo-x.pushat.allow
+
//
+
// This file was automatically generated from Lexicon schemas.
+
// Any manual changes will be overwritten on the next regeneration.
+
+
///allow service to push. key must be did
+
#[jacquard_derive::lexicon]
+
#[derive(
+
serde::Serialize,
+
serde::Deserialize,
+
Debug,
+
Clone,
+
PartialEq,
+
Eq,
+
jacquard_derive::IntoStatic
+
)]
+
#[serde(rename_all = "camelCase")]
+
pub struct Allow<'a> {
+
#[serde(skip_serializing_if = "std::option::Option::is_none")]
+
#[serde(borrow)]
+
pub config: std::option::Option<jacquard_common::types::value::Data<'a>>,
+
pub created_at: jacquard_common::types::string::Datetime,
+
}
+
+
impl jacquard_common::types::collection::Collection for Allow<'_> {
+
const NSID: &'static str = "win.tomo-x.pushat.allow";
+
}
+12
crates/jacquard-api/src/win_tomo_x/pushat/push_notify.rs
···
"application/json",
);
type Response = PushNotifyResponse;
+
}
+
+
///Endpoint type for
+
///win.tomo-x.pushat.pushNotify
+
pub struct PushNotifyRequest;
+
impl jacquard_common::xrpc::XrpcEndpoint for PushNotifyRequest {
+
const PATH: &'static str = "/xrpc/win.tomo-x.pushat.pushNotify";
+
const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
+
"application/json",
+
);
+
type Request<'de> = PushNotify<'de>;
+
type Response = PushNotifyResponse;
}
+1 -1
crates/jacquard-api/src/xyz_autonomylab.rs crates/jacquard-api/src/app_blebbit.rs
···
// This file was automatically generated from Lexicon schemas.
// Any manual changes will be overwritten on the next regeneration.
-
pub mod status;
+
pub mod authr;
+12
crates/jacquard-axum/Cargo.toml
···
license.workspace = true
description = "Axum server helpers for Jacquard"
+
[lib]
+
path = "src/lib.rs"
+
+
[[bin]]
+
name = "jacquard_axum"
+
path = "src/main.rs"
+
+
[dependencies]
axum = "0.8.6"
+
axum-macros = "0.5.0"
bytes.workspace = true
jacquard = { version = "0.3.0", path = "../jacquard" }
jacquard-common = { version = "0.3.0", path = "../jacquard-common", features = ["reqwest-client"] }
···
serde_json.workspace = true
thiserror.workspace = true
tokio.workspace = true
+
tower-http = { version = "0.6.6", features = ["trace", "tracing"] }
+
tracing = "0.1.41"
+
tracing-subscriber = { version = "0.3.20", features = ["env-filter", "time"] }
[dev-dependencies]
axum-test = "18.1.0"
+38 -71
crates/jacquard-axum/src/lib.rs
···
use axum::{
-
Router,
-
body::{Body, Bytes},
+
body::Bytes,
extract::{FromRequest, Request},
-
http::{
-
StatusCode,
-
header::{HeaderValue, USER_AGENT},
-
uri::PathAndQuery,
-
},
-
response::{ErrorResponse, IntoResponse, Response},
-
routing::get,
+
http::StatusCode,
+
response::{IntoResponse, Response},
};
-
use jacquard::xrpc::{XrpcError, XrpcMethod, XrpcRequest};
-
use serde::Serialize;
+
use jacquard::{
+
IntoStatic,
+
xrpc::{XrpcEndpoint, XrpcMethod, XrpcRequest},
+
};
use serde_json::json;
-
pub struct ExtractXrpc<R: XrpcRequest<'static>>(Option<R>);
+
pub struct ExtractXrpc<E: XrpcEndpoint>(pub E::Request<'static>);
impl<S, R> FromRequest<S> for ExtractXrpc<R>
where
-
Bytes: FromRequest<S>,
S: Send + Sync,
-
R: for<'de> XrpcRequest<'de> + for<'de> serde::Deserialize<'de>,
+
R: XrpcEndpoint,
+
for<'a> R::Request<'a>: IntoStatic<Output = R::Request<'static>>,
{
type Rejection = Response;
-
async fn from_request(req: Request, state: &S) -> Result<Self, Self::Rejection> {
-
match R::METHOD {
-
XrpcMethod::Procedure(encoding) => {
-
let body = Bytes::from_request(req, state)
-
.await
-
.map_err(IntoResponse::into_response)?;
-
match encoding {
-
"application/json" => {
-
let value: R = serde_json::from_slice::<R>(&body).map_err(|e| {
-
(
-
StatusCode::BAD_REQUEST,
-
serde_json::to_string(&json!({
-
"error": "InvalidRequest",
-
"message": XrpcRequestError::JsonDecodeError(e).to_string()
-
}))
-
.expect("Failed to serialize error response"),
-
)
-
.into_response()
-
})?;
-
Ok(ExtractXrpc(Some(value)))
+
fn from_request(
+
req: Request,
+
state: &S,
+
) -> impl Future<Output = Result<Self, Self::Rejection>> + Send {
+
async {
+
match R::METHOD {
+
XrpcMethod::Procedure(_) => {
+
let body = Bytes::from_request(req, state)
+
.await
+
.map_err(IntoResponse::into_response)?;
+
let decoded = R::Request::decode_body(&body);
+
match decoded {
+
Ok(value) => Ok(ExtractXrpc(*value.into_static())),
+
Err(err) => Err((
+
StatusCode::BAD_REQUEST,
+
serde_json::to_string(&json!({
+
"error": "InvalidRequest",
+
"message": format!("failed to decode request: {}", err)
+
}))
+
.expect("Failed to serialize error response"),
+
)
+
.into_response()),
}
-
"*/*" => {
-
let decoded = R::decode_body(&body);
-
match decoded {
-
Ok(value) => Ok(ExtractXrpc(Some(*value))),
-
Err(err) => Err((
-
StatusCode::BAD_REQUEST,
-
serde_json::to_string(&json!({
-
"error": "InvalidRequest",
-
"message": format!("failed to decode request: {}", err)
-
}))
-
.expect("Failed to serialize error response"),
-
)
-
.into_response()),
-
}
-
}
-
_ => todo!("handle other encodings"),
}
-
}
-
XrpcMethod::Query => {
-
if let Some(path_query) = req.uri().path_and_query() {
-
let path = path_query.path();
-
if path.ends_with(R::NSID) {
-
if let Some(query) = path_query.query() {
-
let value: R = serde_html_form::from_str(query).map_err(|e| {
+
XrpcMethod::Query => {
+
if let Some(path_query) = req.uri().path_and_query() {
+
let query = path_query.query().unwrap_or("");
+
let value: R::Request<'_> =
+
serde_html_form::from_str::<R::Request<'_>>(query).map_err(|e| {
(
StatusCode::BAD_REQUEST,
serde_json::to_string(&json!({
···
)
.into_response()
})?;
-
Ok(ExtractXrpc(Some(value)))
-
} else {
-
Ok(ExtractXrpc(None))
-
}
+
Ok(ExtractXrpc(value.into_static()))
} else {
Err((
StatusCode::BAD_REQUEST,
···
)
.into_response())
}
-
} else {
-
Err((
-
StatusCode::BAD_REQUEST,
-
serde_json::to_string(&json!({
-
"error": "InvalidRequest",
-
"message": "wrong nsid for wherever this ended up"
-
}))
-
.expect("Failed to serialize error response"),
-
)
-
.into_response())
}
}
}
+73
crates/jacquard-axum/src/main.rs
···
+
use axum::{Router, response::IntoResponse};
+
use jacquard::{
+
IntoStatic,
+
api::com_atproto::identity::resolve_did::{ResolveDid, ResolveDidOutput, ResolveDidRequest},
+
identity::resolver::IdentityResolver,
+
types::value::Data,
+
xrpc::XrpcEndpoint,
+
};
+
use jacquard_axum::ExtractXrpc;
+
use jacquard_common::xrpc::XrpcMethod;
+
use miette::{IntoDiagnostic, Result};
+
use tracing_subscriber::EnvFilter;
+
+
trait IntoRouter {
+
fn into_router<T, S, U>(handler: U) -> Router<S>
+
where
+
T: 'static,
+
S: Clone + Send + Sync + 'static,
+
U: axum::handler::Handler<T, S>;
+
}
+
+
impl<X> IntoRouter for X
+
where
+
X: XrpcEndpoint,
+
{
+
/// Creates an axum router that will invoke `handler` in response to xrpc
+
/// request `X`.
+
fn into_router<T, S, U>(handler: U) -> Router<S>
+
where
+
T: 'static,
+
S: Clone + Send + Sync + 'static,
+
U: axum::handler::Handler<T, S>,
+
{
+
Router::new().route(
+
X::PATH,
+
(match X::METHOD {
+
XrpcMethod::Query => axum::routing::get,
+
XrpcMethod::Procedure(_) => axum::routing::post,
+
})(handler),
+
)
+
}
+
}
+
+
#[axum_macros::debug_handler]
+
async fn handler(ExtractXrpc(args): ExtractXrpc<ResolveDidRequest>) -> &'static str {
+
"hello world!"
+
// let res = jacquard::identity::slingshot_resolver_default();
+
// let doc = res.resolve_did_doc(&args.did).await?;
+
// let valid_doc = doc.parse()?;
+
// let doc_value = serde_json::to_value(valid_doc).unwrap();
+
// Ok(ResolveDidOutput {
+
// did_doc: Data::from_json(&doc_value).unwrap().into_static(),
+
// extra_data: Default::default(),
+
// }
+
// .into())
+
}
+
+
#[tokio::main]
+
async fn main() -> Result<()> {
+
tracing_subscriber::fmt()
+
.with_timer(tracing_subscriber::fmt::time::UtcTime::rfc_3339())
+
.with_env_filter(EnvFilter::from_env("QDPDS_LOG"))
+
.init();
+
let app = Router::new()
+
.route("/", axum::routing::get(|| async { "hello world!" }))
+
.merge(ResolveDidRequest::into_router(handler))
+
.layer(tower_http::trace::TraceLayer::new_for_http());
+
let listener = tokio::net::TcpListener::bind("0.0.0.0:3000")
+
.await
+
.into_diagnostic()?;
+
axum::serve(listener, app).await.unwrap();
+
Ok(())
+
}
+9 -2
crates/jacquard-common/src/xrpc.rs
···
.map_err(|e| TransportError::InvalidRequest(e.to_string()))
}
+
pub trait XrpcEndpoint {
+
const PATH: &'static str;
+
const METHOD: XrpcMethod;
+
type Request<'de>: XrpcRequest<'de> + IntoStatic;
+
type Response: XrpcResp;
+
}
+
/// XRPC response wrapper that owns the response buffer
///
/// Allows borrowing from the buffer when parsing to avoid unnecessary allocations.
/// Generic over the response marker type (e.g., `GetAuthorFeedResponse`), not the request.
pub struct Response<Resp>
where
-
Resp: for<'any> XrpcResp, // HRTB: Resp works with any lifetime
+
Resp: XrpcResp, // HRTB: Resp works with any lifetime
{
_marker: PhantomData<fn() -> Resp>,
buffer: Bytes,
···
impl<Resp> Response<Resp>
where
-
Resp: for<'any> XrpcResp,
+
Resp: XrpcResp,
{
/// Create a new response from a buffer and status code
pub fn new(buffer: Bytes, status: StatusCode) -> Self {
+68 -16
crates/jacquard-lexicon/src/codegen.rs
···
// Replace invalid characters with underscores
let mut sanitized: String = s
.chars()
-
.map(|c| if c.is_alphanumeric() || c == '_' { c } else { '_' })
+
.map(|c| {
+
if c.is_alphanumeric() || c == '_' {
+
c
+
} else {
+
'_'
+
}
+
})
.collect();
// Ensure it doesn't start with a digit
-
if sanitized.chars().next().map_or(false, |c| c.is_ascii_digit()) {
+
if sanitized
+
.chars()
+
.next()
+
.map_or(false, |c| c.is_ascii_digit())
+
{
sanitized = format!("_{}", sanitized);
}
···
let sanitized = sanitize_name(s);
// Try to parse as ident, fall back to raw ident if needed
-
syn::parse_str::<syn::Ident>(&sanitized)
-
.unwrap_or_else(|_| {
-
eprintln!("Warning: Invalid identifier '{}' sanitized to '{}'", s, sanitized);
-
syn::Ident::new_raw(&sanitized, proc_macro2::Span::call_site())
-
})
+
syn::parse_str::<syn::Ident>(&sanitized).unwrap_or_else(|_| {
+
eprintln!(
+
"Warning: Invalid identifier '{}' sanitized to '{}'",
+
s, sanitized
+
);
+
syn::Ident::new_raw(&sanitized, proc_macro2::Span::call_site())
+
})
}
/// Code generator for lexicon types
···
let path_str = if *last_segment == "defs" && parts.len() >= 3 {
// defs types go in parent module
-
let first_two = format!("{}_{}", parts[0], parts[1]);
+
let first_two = format!("{}_{}", sanitize_name(parts[0]), sanitize_name(parts[1]));
if parts.len() == 3 {
// com.atproto.defs -> com_atproto::TypeName
format!("{}::{}::{}", self.root_module, first_two, type_name)
} else {
// app.bsky.actor.defs -> app_bsky::actor::TypeName
-
let middle: Vec<&str> = parts[2..parts.len() - 1].iter().copied().collect();
+
let middle: Vec<_> = parts[2..parts.len() - 1]
+
.iter()
+
.copied()
+
.map(|s| sanitize_name(s))
+
.collect();
format!(
"{}::{}::{}::{}",
self.root_module,
···
// Regular types go in their own module file
let (module_path, file_module) = if parts.len() >= 3 {
// Join first two segments with underscore
-
let first_two = format!("{}_{}", parts[0], parts[1]);
-
let file_name = last_segment.to_snake_case();
+
let first_two = format!("{}_{}", sanitize_name(parts[0]), sanitize_name(parts[1]));
+
let file_name = sanitize_name(last_segment).to_snake_case();
if parts.len() > 3 {
// Middle segments form the module path
-
let middle: Vec<&str> = parts[2..parts.len() - 1].iter().copied().collect();
+
let middle: Vec<_> = parts[2..parts.len() - 1]
+
.iter()
+
.copied()
+
.map(|s| sanitize_name(s))
+
.collect();
let base_path = format!("{}::{}", first_two, middle.join("::"));
(base_path, file_name)
} else {
···
}
} else if parts.len() == 2 {
// e.g., "com.example" -> "com_example", file: example
-
let first = parts[0].to_string();
-
let file_name = parts[1].to_snake_case();
+
let first = sanitize_name(parts[0]);
+
let file_name = sanitize_name(parts[1]).to_snake_case();
(first, file_name)
} else {
(parts[0].to_string(), "main".to_string())
···
};
let path: syn::Path = syn::parse_str(&path_str).map_err(|e| CodegenError::Other {
-
message: format!("Failed to parse path: {}", e),
+
message: format!("Failed to parse path: {} {}", path_str, e),
source: None,
})?;
···
proc_macro2::Span::call_site(),
);
+
// Generate the endpoint type that implements XrpcEndpoint
+
let endpoint_ident = syn::Ident::new(
+
&format!("{}Request", type_base),
+
proc_macro2::Span::call_site(),
+
);
+
let response_type = quote! {
#[doc = "Response type for "]
#[doc = #nsid]
···
quote! {}
};
+
let endpoint_path = format!("/xrpc/{}", nsid);
+
if has_params {
// Implement on the params/input struct itself
let request_ident = syn::Ident::new(type_base, proc_macro2::Span::call_site());
···
#encode_body_method
#decode_body_method
+
+
#[doc = "Endpoint type for "]
+
#[doc = #nsid]
+
pub struct #endpoint_ident;
+
+
impl jacquard_common::xrpc::XrpcEndpoint for #endpoint_ident {
+
const PATH: &'static str = #endpoint_path;
+
const METHOD: jacquard_common::xrpc::XrpcMethod = #method;
+
+
type Request<'de> = #impl_target;
+
type Response = #response_ident;
+
}
})
} else {
// No params - generate a marker struct
···
Ok(quote! {
/// XRPC request marker type
-
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
+
#[derive(Debug, Clone, Copy, PartialEq, Eq, serde::Serialize, serde::Deserialize, jacquard_derive::IntoStatic)]
pub struct #request_ident;
#response_type
···
const NSID: &'static str = #nsid;
const METHOD: jacquard_common::xrpc::XrpcMethod = #method;
+
type Response = #response_ident;
+
}
+
+
#[doc = "Endpoint type for "]
+
#[doc = #nsid]
+
pub struct #endpoint_ident;
+
+
impl jacquard_common::xrpc::XrpcEndpoint for #endpoint_ident {
+
const PATH: &'static str = #endpoint_path;
+
const METHOD: jacquard_common::xrpc::XrpcMethod = #method;
+
+
type Request<'de> = #request_ident;
type Response = #response_ident;
})
+15 -1
crates/jacquard-lexicon/src/fetch/config.rs
···
-
use super::sources::{AtProtoSource, GitSource, HttpSource, JsonFileSource, LocalSource, SlicesSource, Source, SourceType};
+
use super::sources::{
+
AtProtoSource, GitSource, HttpSource, JsonFileSource, LocalSource, SlicesSource, Source,
+
SourceType,
+
};
use miette::{Result, miette};
use std::path::PathBuf;
···
.ok_or_else(|| miette!("path expects a string value"))?;
path = Some(PathBuf::from(val));
}
+
other => {
return Err(miette!("Unknown jsonfile source field: {}", other));
}
···
fn parse_local_source(children: &kdl::KdlDocument) -> Result<SourceType> {
let mut path: Option<PathBuf> = None;
+
let mut pattern: Option<String> = None;
for child in children.nodes() {
match child.name().value() {
···
.ok_or_else(|| miette!("path expects a string value"))?;
path = Some(PathBuf::from(val));
}
+
"pattern" => {
+
let val = child
+
.entries()
+
.get(0)
+
.and_then(|e| e.value().as_string())
+
.ok_or_else(|| miette!("pattern expects a string value"))?;
+
pattern = Some(val.to_string());
+
}
other => {
return Err(miette!("Unknown local source field: {}", other));
}
···
Ok(SourceType::Local(LocalSource {
path: path.ok_or_else(|| miette!("Missing path"))?,
+
pattern,
}))
}
+50 -7
crates/jacquard-lexicon/src/fetch/sources.rs
···
pub use atproto::AtProtoSource;
pub use git::GitSource;
pub use http::HttpSource;
+
use jacquard_common::IntoStatic;
pub use jsonfile::JsonFileSource;
pub use local::LocalSource;
pub use slices::SlicesSource;
use crate::lexicon::LexiconDoc;
use async_trait::async_trait;
-
use miette::Result;
+
use miette::{IntoDiagnostic, Result};
use std::collections::HashMap;
#[derive(Debug, Clone)]
···
// Default priorities
match &self.source_type {
-
SourceType::Local(_) => 100, // Highest - dev work
-
SourceType::JsonFile(_) => 75, // High - bundled exports
-
SourceType::Slices(_) => 60, // High-middle - slices network
-
SourceType::AtProto(_) => 50, // Middle - canonical published
-
SourceType::Http(_) => 25, // Lower middle - indexed samples
-
SourceType::Git(_) => 0, // Lowest - might be stale
+
SourceType::Local(_) => 100, // Highest - dev work
+
SourceType::JsonFile(_) => 75, // High - bundled exports
+
SourceType::Slices(_) => 60, // High-middle - slices network
+
SourceType::AtProto(_) => 50, // Middle - canonical published
+
SourceType::Http(_) => 25, // Lower middle - indexed samples
+
SourceType::Git(_) => 0, // Lowest - might be stale
}
}
···
}
}
}
+
+
pub fn parse_from_index_or_lexicon_file(
+
content: &str,
+
) -> miette::Result<(String, LexiconDoc<'static>)> {
+
let value: serde_json::Value = serde_json::from_str(content).into_diagnostic()?;
+
if let Some(map) = value.as_object() {
+
if map.contains_key("schema") && map.contains_key("authority") {
+
if let Some(schema) = map.get("schema") {
+
let schema = serde_json::to_string(schema).into_diagnostic()?;
+
match serde_json::from_str::<LexiconDoc>(&schema) {
+
Ok(doc) => {
+
let nsid = doc.id.to_string();
+
let doc = doc.into_static();
+
Ok((nsid, doc))
+
}
+
Err(_) => {
+
// Not a lexicon, skip
+
Err(miette::miette!("Invalid lexicon file"))
+
}
+
}
+
} else {
+
Err(miette::miette!("Invalid lexicon file"))
+
}
+
} else if map.contains_key("id") && map.contains_key("lexicon") {
+
match serde_json::from_str::<LexiconDoc>(&content) {
+
Ok(doc) => {
+
let nsid = doc.id.to_string();
+
let doc = doc.into_static();
+
Ok((nsid, doc))
+
}
+
Err(_) => {
+
// Not a lexicon, skip
+
Err(miette::miette!("Invalid lexicon file"))
+
}
+
}
+
} else {
+
Err(miette::miette!("Invalid lexicon file"))
+
}
+
} else {
+
Err(miette::miette!("Invalid lexicon file"))
+
}
+
}
+3 -4
crates/jacquard-lexicon/src/fetch/sources/git.rs
···
use super::LexiconSource;
-
use crate::lexicon::LexiconDoc;
+
use crate::{fetch::sources::parse_from_index_or_lexicon_file, lexicon::LexiconDoc};
use jacquard_common::IntoStatic;
use miette::{IntoDiagnostic, Result, miette};
use std::collections::HashMap;
···
// Try to parse as lexicon
let content = tokio::fs::read_to_string(&entry).await.into_diagnostic()?;
-
match serde_json::from_str::<LexiconDoc>(&content) {
-
Ok(doc) => {
-
let nsid = doc.id.to_string();
+
match parse_from_index_or_lexicon_file(&content) {
+
Ok((nsid, doc)) => {
let doc = doc.into_static();
lexicons.insert(nsid, doc);
}
+4 -4
crates/jacquard-lexicon/src/fetch/sources/local.rs
···
use super::LexiconSource;
+
use crate::fetch::sources::parse_from_index_or_lexicon_file;
use crate::lexicon::LexiconDoc;
use jacquard_common::IntoStatic;
use miette::{IntoDiagnostic, Result};
···
#[derive(Debug, Clone)]
pub struct LocalSource {
pub path: PathBuf,
+
pub pattern: Option<String>,
}
impl LexiconSource for LocalSource {
···
// Try to parse as lexicon
let content = std::fs::read_to_string(path).into_diagnostic()?;
-
-
match serde_json::from_str::<LexiconDoc>(&content) {
-
Ok(doc) => {
-
let nsid = doc.id.to_string();
+
match parse_from_index_or_lexicon_file(&content) {
+
Ok((nsid, doc)) => {
let doc = doc.into_static();
lexicons.insert(nsid, doc);
}
+10 -5
lexicons.kdl
···
endpoint "did:plc:lcieujcfkv4jx7gehsvok3pr"
}
-
source "slices-api" type="slices" {
-
slice "at://did:plc:fpruhuo22xkm5o7ttr2ktxdo/network.slices.slice/3m2f7adwhp22a"
+
source "mary" type="git" priority=70 {
+
repo "https://github.com/mary-ext/atproto-lexicon-scraping"
+
pattern "**/*.json"
}
-
source "ufos" type="http" {
-
url "https://ufos-api.microcosm.blue/records?collection=com.atproto.lexicon.schema"
-
}
+
// source "slices-api" type="slices" {
+
// slice "at://did:plc:fpruhuo22xkm5o7ttr2ktxdo/network.slices.slice/3m2f7adwhp22a"
+
// }
+
+
// source "ufos" type="http" {
+
// url "https://ufos-api.microcosm.blue/records?collection=com.atproto.lexicon.schema"
+
// }
// source "bluemoji" type="git" priority=50 {
// repo "https://github.com/aendra-rininsland/bluemoji"