summaryrefslogtreecommitdiff
path: root/packages/backend/src/models
diff options
context:
space:
mode:
authorHazelnoot <acomputerdog@gmail.com>2025-05-09 11:53:29 -0400
committerHazelnoot <acomputerdog@gmail.com>2025-05-10 14:44:17 -0400
commit40a73bfcbe083d5a2aa4be57880e389def4757c4 (patch)
tree6daa302e4dc0b32cf48e4f3e1f63a04b3458b907 /packages/backend/src/models
parentmerge: Remove moved setting that was left after merge (!1006) (diff)
downloadsharkey-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.ts72
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
);