forked from solarflare045/deeper-think
-
Notifications
You must be signed in to change notification settings - Fork 0
/
firestore.rules
22 lines (22 loc) · 938 Bytes
/
firestore.rules
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
service cloud.firestore {
match /databases/{database}/documents {
match /phrases/{phrase} {
allow get;
match /upvotes/{shard} {
allow get, list;
allow create: if int(shard) < 5 && int(shard) >= 0 && request.resource.data.size() == 2 && request.resource.data.votes == 1 && request.resource.data.needsAggregation == true;
allow update: if int(shard) < 5 && int(shard) >= 0 && request.resource.data.size() == 2 && request.resource.data.votes == resource.data.votes + 1 && request.resource.data.needsAggregation == true;
}
}
match /tick/tick {
allow get;
allow update: if request.resource.data.tick == request.time && request.time.toMillis() - resource.data.tick.toMillis() > 30000 && request.resource.data.size() == resource.data.size();
}
match /tick/currentPhrase {
allow get;
}
match /{document=**} {
allow read, write: if false;
}
}
}