add "is from local bubble instance" role condition

This commit is contained in:
Hazelnoot 2025-05-10 13:04:03 -04:00
parent cace4153e4
commit 655290f8a4
5 changed files with 18 additions and 0 deletions

View file

@ -262,6 +262,10 @@ export class RoleService implements OnApplicationShutdown, OnModuleInit {
return user.host.toLowerCase() === value.host.toLowerCase();
}
}
// Is the user from a local bubble instance
case 'fromBubbleInstance': {
return user.host != null && this.meta.bubbleInstances.includes(user.host);
}
// サスペンド済みユーザである
case 'isSuspended': {
return user.isSuspended;

View file

@ -56,6 +56,13 @@ type CondFormulaValueIsFromInstance = {
subdomains: boolean;
};
/**
* Is the user from a local bubble instance
*/
type CondFormulaValueFromBubbleInstance = {
type: 'fromBubbleInstance';
};
/**
*
*/
@ -234,6 +241,7 @@ export type RoleCondFormulaValue = { id: string } & (
CondFormulaValueIsLocal |
CondFormulaValueIsRemote |
CondFormulaValueIsFromInstance |
CondFormulaValueFromBubbleInstance |
CondFormulaValueIsSuspended |
CondFormulaValueIsLocked |
CondFormulaValueIsBot |