Compare commits

..
1 Commits
Author SHA1 Message Date
phoenix c09fa36b15 Claim fix (#27)
Release Tagging / release (push) Successful in 35s
Rust Build / Rustfmt (push) Successful in 39s
Rust Build / Test Suite (push) Successful in 1m13s
Rust Build / Check (push) Successful in 1m30s
Rust Build / build (push) Successful in 47s
Rust Build / Clippy (push) Successful in 1m23s
Reviewed-on: phoenix/textsender_models#27
2026-06-13 19:00:22 -04:00
3 changed files with 9 additions and 7 deletions
Generated
+1 -1
View File
@@ -522,7 +522,7 @@ dependencies = [
[[package]] [[package]]
name = "textsender_models" name = "textsender_models"
version = "0.3.2" version = "0.3.3"
dependencies = [ dependencies = [
"const_format", "const_format",
"dotenvy", "dotenvy",
+1 -1
View File
@@ -1,6 +1,6 @@
[package] [package]
name = "textsender_models" name = "textsender_models"
version = "0.3.2" version = "0.3.3"
edition = "2024" edition = "2024"
rust-version = "1.95" rust-version = "1.95"
description = "Models used for the textsender project" description = "Models used for the textsender project"
+7 -5
View File
@@ -3,7 +3,8 @@ use serde::{Deserialize, Serialize};
#[derive(Clone, Debug, Default, Deserialize, Serialize)] #[derive(Clone, Debug, Default, Deserialize, Serialize)]
pub struct Claims { pub struct Claims {
pub user_id: uuid::Uuid, pub user_id: uuid::Uuid,
pub role: String, #[serde(skip_serializing_if = "Option::is_none")]
pub role: Option<String>,
#[serde(alias = "iss")] #[serde(alias = "iss")]
pub issued: String, pub issued: String,
#[serde(alias = "exp")] #[serde(alias = "exp")]
@@ -42,7 +43,7 @@ pub struct LoginResult {
pub issued_at: i64, pub issued_at: i64,
} }
// Alias for LoginResult /// Alias for LoginResult
pub type Login = LoginResult; pub type Login = LoginResult;
pub fn get_issued() -> time::Result<time::OffsetDateTime> { pub fn get_issued() -> time::Result<time::OffsetDateTime> {
@@ -63,9 +64,10 @@ pub struct TokenResource {
pub message: String, pub message: String,
pub issuer: String, pub issuer: String,
pub audiences: Vec<String>, pub audiences: Vec<String>,
pub id: uuid::Uuid, pub user_id: uuid::Uuid,
} }
/// Token type
pub const TOKEN_TYPE: &str = "JWT"; pub const TOKEN_TYPE: &str = "JWT";
pub fn create_token( pub fn create_token(
@@ -83,8 +85,8 @@ pub fn create_token(
payload.set_subject(message); payload.set_subject(message);
payload.set_issuer(issuer); payload.set_issuer(issuer);
payload.set_audience(audiences.clone()); payload.set_audience(audiences.clone());
if !token_resource.id.is_nil() { if !token_resource.user_id.is_nil() {
match payload.set_claim("id", Some(serde_json::json!(token_resource.id))) { match payload.set_claim("user_id", Some(serde_json::json!(token_resource.user_id))) {
Ok(_) => {} Ok(_) => {}
Err(err) => { Err(err) => {
return Err(err); return Err(err);