diff options
| author | Hazelnoot <acomputerdog@gmail.com> | 2025-05-09 11:53:29 -0400 |
|---|---|---|
| committer | Hazelnoot <acomputerdog@gmail.com> | 2025-05-10 14:44:17 -0400 |
| commit | 40a73bfcbe083d5a2aa4be57880e389def4757c4 (patch) | |
| tree | 6daa302e4dc0b32cf48e4f3e1f63a04b3458b907 /packages/backend/src/models | |
| parent | merge: Remove moved setting that was left after merge (!1006) (diff) | |
| download | sharkey-40a73bfcbe083d5a2aa4be57880e389def4757c4.tar.gz sharkey-40a73bfcbe083d5a2aa4be57880e389def4757c4.tar.bz2 sharkey-40a73bfcbe083d5a2aa4be57880e389def4757c4.zip | |
add new role conditions for local/remote followers/followees
Diffstat (limited to 'packages/backend/src/models')
| -rw-r--r-- | packages/backend/src/models/Role.ts | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/packages/backend/src/models/Role.ts b/packages/backend/src/models/Role.ts index d7ae8ed38c..2caf3e0bd3 100644 --- a/packages/backend/src/models/Role.ts +++ b/packages/backend/src/models/Role.ts @@ -148,6 +148,70 @@ type CondFormulaValueFollowingMoreThanOrEq = { }; /** + * Is followed by at most N local users + */ +type CondFormulaValueLocalFollowersLessThanOrEq = { + type: 'localFollowersLessThanOrEq'; + value: number; +}; + +/** + * Is followed by at least N local users + */ +type CondFormulaValueLocalFollowersMoreThanOrEq = { + type: 'localFollowersMoreThanOrEq'; + value: number; +}; + +/** + * Is following at most N local users + */ +type CondFormulaValueLocalFollowingLessThanOrEq = { + type: 'localFollowingLessThanOrEq'; + value: number; +}; + +/** + * Is following at least N local users + */ +type CondFormulaValueLocalFollowingMoreThanOrEq = { + type: 'localFollowingMoreThanOrEq'; + value: number; +}; + +/** + * Is followed by at most N remote users + */ +type CondFormulaValueRemoteFollowersLessThanOrEq = { + type: 'remoteFollowersLessThanOrEq'; + value: number; +}; + +/** + * Is followed by at least N remote users + */ +type CondFormulaValueRemoteFollowersMoreThanOrEq = { + type: 'remoteFollowersMoreThanOrEq'; + value: number; +}; + +/** + * Is following at most N remote users + */ +type CondFormulaValueRemoteFollowingLessThanOrEq = { + type: 'remoteFollowingLessThanOrEq'; + value: number; +}; + +/** + * Is following at least N remote users + */ +type CondFormulaValueRemoteFollowingMoreThanOrEq = { + type: 'remoteFollowingMoreThanOrEq'; + value: number; +}; + +/** * 投稿数が指定値以下の場合のみ成立とする */ type CondFormulaValueNotesLessThanOrEq = { @@ -182,6 +246,14 @@ export type RoleCondFormulaValue = { id: string } & ( CondFormulaValueFollowersMoreThanOrEq | CondFormulaValueFollowingLessThanOrEq | CondFormulaValueFollowingMoreThanOrEq | + CondFormulaValueLocalFollowersLessThanOrEq | + CondFormulaValueLocalFollowersMoreThanOrEq | + CondFormulaValueLocalFollowingLessThanOrEq | + CondFormulaValueLocalFollowingMoreThanOrEq | + CondFormulaValueRemoteFollowersLessThanOrEq | + CondFormulaValueRemoteFollowersMoreThanOrEq | + CondFormulaValueRemoteFollowingLessThanOrEq | + CondFormulaValueRemoteFollowingMoreThanOrEq | CondFormulaValueNotesLessThanOrEq | CondFormulaValueNotesMoreThanOrEq ); |