0e66a41
use proto::auth::internal::v1::OrganizationAdminStatus;
use proto::auth::v1::{
OrganizationJoinMethod, OrganizationMemberRole, OrganizationStatus, PermissionEffect,
};
use crate::space::{
OrgJoinMethod, OrgMemberRole, OrganizationStatus as DomainStatus,
PermissionEffect as DomainEffect,
};
impl From<DomainStatus> for OrganizationStatus {
fn from(value: DomainStatus) -> Self {
match value {
DomainStatus::Active => Self::Active,
DomainStatus::Suspended => Self::Suspended,
DomainStatus::Archived => Self::Archived,
}
}
}
impl From<OrgMemberRole> for OrganizationMemberRole {
fn from(value: OrgMemberRole) -> Self {
match value {
OrgMemberRole::Member => Self::Member,
OrgMemberRole::Admin => Self::Admin,
OrgMemberRole::Owner => Self::Owner,
}
}
}
impl From<DomainEffect> for PermissionEffect {
fn from(value: DomainEffect) -> Self {
match value {
DomainEffect::Allow => Self::Allow,
DomainEffect::Deny => Self::Deny,
}
}
}
impl From<OrgJoinMethod> for OrganizationJoinMethod {
fn from(value: OrgJoinMethod) -> Self {
match value {
OrgJoinMethod::Direct => Self::Direct,
OrgJoinMethod::InviteLink => Self::InviteLink,
OrgJoinMethod::InviteTargeted => Self::InviteTargeted,
OrgJoinMethod::InviteEmail => Self::InviteEmail,
}
}
}
impl From<DomainStatus> for OrganizationAdminStatus {
fn from(value: DomainStatus) -> Self {
match value {
DomainStatus::Active => Self::Active,
DomainStatus::Suspended => Self::Suspended,
DomainStatus::Archived => Self::Archived,
}
}
}