refactor(trello): rename module types as model
Some checks failed
Test / build (map[name:nightly]) (push) Successful in 1m44s
Test / build (map[name:stable]) (push) Successful in 2m5s
Release Please / Release-plz (push) Failing after 17s

This commit is contained in:
Paul Campbell 2024-12-08 22:31:37 +00:00
parent 2ee95d699b
commit 0efecf946e
12 changed files with 46 additions and 44 deletions

View file

@ -1,12 +1,11 @@
//
use kxio::{net::Net, print::Printer};
use crate::trello::TrelloConfig;
use crate::{
api_result::APIResult,
trello::{
types::{auth::TrelloAuth, board::TrelloBoard},
url,
model::{auth::TrelloAuth, board::TrelloBoard},
url, TrelloConfig,
},
};
@ -50,7 +49,7 @@ pub(crate) async fn get_boards_that_member_belongs_to(
};
APIResult::new(
net.get(url("/members/me/boards?lists=open"))
.headers(auth.into())
.headers((&auth).into())
.header("Accept", "application/json")
.send()
.await,

View file

@ -6,7 +6,9 @@ use serde_json::json;
use crate::{
s,
trello::{api::members::get_boards_that_member_belongs_to, types::board::TrelloBoard},
trello::{
api::members::get_boards_that_member_belongs_to, model::board::TrelloBoard, TrelloConfig,
},
};
mod given;
@ -15,7 +17,6 @@ type TestResult = color_eyre::Result<()>;
mod members {
use super::*;
use crate::trello::TrelloConfig;
#[tokio::test]
async fn get_member_boards() -> TestResult {

View file

@ -1,10 +1,12 @@
//
use clap::Parser;
use crate::execute::Execute;
use crate::trello::types::board::TrelloBoard;
use crate::trello::types::TrelloBoardName;
use crate::{p, FullCtx};
use crate::{
execute::Execute,
p,
trello::model::{board::TrelloBoard, TrelloBoardName},
FullCtx,
};
#[derive(Parser, Debug)]
pub(crate) enum TrelloBoardCommand {

View file

@ -1,6 +1,6 @@
//
use crate::api_result::APIResult;
use crate::trello::types::board::TrelloBoard;
use crate::trello::model::board::TrelloBoard;
use crate::trello::TrelloConfig;
use crate::FullCtx;

View file

@ -2,16 +2,23 @@
pub(crate) mod api;
pub(crate) mod boards;
pub(crate) mod client;
pub(crate) mod types;
pub(crate) mod model;
// #[cfg(test)]
// mod tests;
use crate::execute::Execute;
use crate::trello::boards::TrelloBoardCommand;
use crate::trello::types::auth::{TrelloApiKey, TrelloApiSecret};
use crate::trello::types::TrelloBoardName;
use crate::{f, FullCtx};
use crate::{
execute::Execute,
f,
trello::{
boards::TrelloBoardCommand,
model::{
auth::{TrelloApiKey, TrelloApiSecret},
TrelloBoardName,
},
},
FullCtx,
};
use clap::Parser;
pub(crate) fn url(path: impl Into<String>) -> String {

View file

@ -1,25 +1,27 @@
//
use std::collections::HashMap;
//
use derive_more::derive::Display;
use crate::newtype;
newtype!(TrelloApiKey, String, Display, "API Key");
newtype!(TrelloApiKey, String, Display, PartialOrd, Ord, "API Key");
newtype!(
TrelloApiSecret,
String,
Display,
PartialOrd,
Ord,
"API Secret token for Trello"
);
#[derive(Debug, Clone)]
pub struct TrelloAuth<'cfg> {
pub(crate) struct TrelloAuth<'cfg> {
pub(crate) api_key: &'cfg TrelloApiKey,
pub(crate) api_secret: &'cfg TrelloApiSecret,
}
impl From<TrelloAuth<'_>> for HashMap<String, String> {
fn from(value: TrelloAuth) -> Self {
impl From<&TrelloAuth<'_>> for HashMap<String, String> {
fn from(value: &TrelloAuth) -> Self {
HashMap::from([(
"Authorization".into(),
format!(

View file

@ -1,6 +1,6 @@
//
use crate::trello::types::list::TrelloList;
use crate::trello::types::{TrelloBoardId, TrelloBoardName};
use super::{TrelloBoardId, TrelloBoardName};
use crate::trello::model::list::TrelloList;
#[derive(Clone, Debug, PartialEq, Eq, serde::Deserialize)]
pub(crate) struct TrelloBoard {

8
src/trello/model/list.rs Normal file
View file

@ -0,0 +1,8 @@
//
use super::{TrelloListId, TrelloListName};
#[derive(Debug, Clone, PartialEq, Eq, serde::Deserialize)]
pub(crate) struct TrelloList {
pub(crate) id: TrelloListId,
pub(crate) name: TrelloListName,
}

View file

@ -9,14 +9,7 @@ use derive_more::derive::Display;
use crate::newtype;
newtype!(TrelloBoardId, String, Display, "Board ID");
newtype!(
TrelloBoardName,
String,
Display,
PartialOrd,
Ord,
"Board Name"
);
newtype!(TrelloBoardName, String, Display, "Board Name");
newtype!(TrelloListId, String, "List ID");
newtype!(
TrelloListName,
@ -26,5 +19,5 @@ newtype!(
Ord,
"List Name"
);
// newtype!(TrelloCardId, String, Display, "Card ID");
// newtype!(TrelloCardName, String, Display, "Card Name");
newtype!(TrelloCardId, String, Display, "Card ID");
newtype!(TrelloCardName, String, Display, "Card Name");

View file

@ -1,10 +0,0 @@
//
use derive_more::derive::Constructor;
use crate::trello::types::{TrelloListId, TrelloListName};
#[derive(Debug, Clone, PartialEq, Eq, serde::Deserialize, Constructor)]
pub(crate) struct TrelloList {
pub(crate) id: TrelloListId,
pub(crate) name: TrelloListName,
}