@quenty/permissionprovider 14.20.0-canary.559.b31717d.0 → 14.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +1 -1
- package/package.json +13 -13
- package/src/Client/PermissionServiceClient.lua +2 -2
- package/src/Client/Providers/PermissionProviderClient.lua +1 -1
- package/src/Server/PermissionProviderUtils.lua +5 -5
- package/src/Server/Providers/BasePermissionProvider.lua +1 -1
- package/src/Server/Providers/CreatorPermissionProvider.lua +9 -6
- package/src/Server/Providers/GroupPermissionProvider.lua +5 -2
- package/src/Shared/PermissionLevelUtils.lua +1 -1
- package/test/scripts/Client/ClientMain.client.lua +4 -2
package/CHANGELOG.md
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
-
# [14.20.0
|
|
6
|
+
# [14.20.0](https://github.com/Quenty/NevermoreEngine/compare/@quenty/permissionprovider@14.19.3...@quenty/permissionprovider@14.20.0) (2025-05-10)
|
|
7
7
|
|
|
8
8
|
|
|
9
9
|
### Bug Fixes
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@quenty/permissionprovider",
|
|
3
|
-
"version": "14.20.0
|
|
3
|
+
"version": "14.20.0",
|
|
4
4
|
"description": "Permission provider for Roblox, including authenticating against group membership",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"Roblox",
|
|
@@ -25,20 +25,20 @@
|
|
|
25
25
|
"Quenty"
|
|
26
26
|
],
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@quenty/baseobject": "10.
|
|
29
|
-
"@quenty/brio": "14.18.0
|
|
30
|
-
"@quenty/grouputils": "10.11.0
|
|
31
|
-
"@quenty/loader": "10.
|
|
32
|
-
"@quenty/maid": "3.
|
|
33
|
-
"@quenty/playerutils": "8.18.0
|
|
34
|
-
"@quenty/promise": "10.11.0
|
|
35
|
-
"@quenty/remoting": "12.19.0
|
|
36
|
-
"@quenty/rx": "13.18.0
|
|
37
|
-
"@quenty/servicebag": "11.12.0
|
|
38
|
-
"@quenty/table": "3.
|
|
28
|
+
"@quenty/baseobject": "^10.9.0",
|
|
29
|
+
"@quenty/brio": "^14.18.0",
|
|
30
|
+
"@quenty/grouputils": "^10.11.0",
|
|
31
|
+
"@quenty/loader": "^10.9.0",
|
|
32
|
+
"@quenty/maid": "^3.5.0",
|
|
33
|
+
"@quenty/playerutils": "^8.18.0",
|
|
34
|
+
"@quenty/promise": "^10.11.0",
|
|
35
|
+
"@quenty/remoting": "^12.19.0",
|
|
36
|
+
"@quenty/rx": "^13.18.0",
|
|
37
|
+
"@quenty/servicebag": "^11.12.0",
|
|
38
|
+
"@quenty/table": "^3.8.0"
|
|
39
39
|
},
|
|
40
40
|
"publishConfig": {
|
|
41
41
|
"access": "public"
|
|
42
42
|
},
|
|
43
|
-
"gitHead": "
|
|
43
|
+
"gitHead": "20cff952c2cf06b959f2f11d2293bdef38acc604"
|
|
44
44
|
}
|
|
@@ -11,10 +11,10 @@
|
|
|
11
11
|
|
|
12
12
|
local require = require(script.Parent.loader).load(script)
|
|
13
13
|
|
|
14
|
-
local
|
|
14
|
+
local Maid = require("Maid")
|
|
15
15
|
local PermissionProviderClient = require("PermissionProviderClient")
|
|
16
|
+
local PermissionProviderConstants = require("PermissionProviderConstants")
|
|
16
17
|
local Promise = require("Promise")
|
|
17
|
-
local Maid = require("Maid")
|
|
18
18
|
local ServiceBag = require("ServiceBag")
|
|
19
19
|
|
|
20
20
|
local PermissionServiceClient = {}
|
|
@@ -75,15 +75,15 @@ end
|
|
|
75
75
|
function PermissionProviderUtils.createConfigFromGame(): PermissionProviderConfig
|
|
76
76
|
if game.CreatorType == Enum.CreatorType.Group then
|
|
77
77
|
return PermissionProviderUtils.createGroupRankConfig({
|
|
78
|
-
groupId = game.CreatorId
|
|
79
|
-
minAdminRequiredRank = 250
|
|
80
|
-
minCreatorRequiredRank = 254
|
|
78
|
+
groupId = game.CreatorId,
|
|
79
|
+
minAdminRequiredRank = 250,
|
|
80
|
+
minCreatorRequiredRank = 254,
|
|
81
81
|
})
|
|
82
82
|
else
|
|
83
83
|
return PermissionProviderUtils.createSingleUserConfig({
|
|
84
|
-
userId = game.CreatorId
|
|
84
|
+
userId = game.CreatorId,
|
|
85
85
|
})
|
|
86
86
|
end
|
|
87
87
|
end
|
|
88
88
|
|
|
89
|
-
return PermissionProviderUtils
|
|
89
|
+
return PermissionProviderUtils
|
|
@@ -11,11 +11,11 @@ local require = require(script.Parent.loader).load(script)
|
|
|
11
11
|
local RunService = game:GetService("RunService")
|
|
12
12
|
|
|
13
13
|
local BasePermissionProvider = require("BasePermissionProvider")
|
|
14
|
-
local PermissionProviderConstants = require("PermissionProviderConstants")
|
|
15
|
-
local Promise = require("Promise")
|
|
16
14
|
local PermissionLevel = require("PermissionLevel")
|
|
17
15
|
local PermissionLevelUtils = require("PermissionLevelUtils")
|
|
16
|
+
local PermissionProviderConstants = require("PermissionProviderConstants")
|
|
18
17
|
local PermissionProviderUtils = require("PermissionProviderUtils")
|
|
18
|
+
local Promise = require("Promise")
|
|
19
19
|
|
|
20
20
|
local CreatorPermissionProvider = setmetatable({}, BasePermissionProvider)
|
|
21
21
|
CreatorPermissionProvider.ClassName = "CreatorPermissionProvider"
|
|
@@ -50,16 +50,19 @@ end
|
|
|
50
50
|
@param permissionLevel PermissionLevel
|
|
51
51
|
@return Promise<boolean>
|
|
52
52
|
]=]
|
|
53
|
-
function CreatorPermissionProvider.PromiseIsPermissionLevel(
|
|
53
|
+
function CreatorPermissionProvider.PromiseIsPermissionLevel(
|
|
54
|
+
self: CreatorPermissionProvider,
|
|
55
|
+
player: Player,
|
|
56
|
+
permissionLevel: PermissionLevel.PermissionLevel
|
|
57
|
+
): Promise.Promise<boolean>
|
|
54
58
|
assert(typeof(player) == "Instance" and player:IsA("Player"), "Bad player")
|
|
55
59
|
assert(PermissionLevelUtils.isPermissionLevel(permissionLevel), "Bad permissionLevel")
|
|
56
60
|
|
|
57
|
-
if permissionLevel == PermissionLevel.ADMIN
|
|
58
|
-
or permissionLevel == PermissionLevel.CREATOR then
|
|
61
|
+
if permissionLevel == PermissionLevel.ADMIN or permissionLevel == PermissionLevel.CREATOR then
|
|
59
62
|
return Promise.resolved(player.UserId == self._userId or RunService:IsStudio())
|
|
60
63
|
else
|
|
61
64
|
error("Unknown permissionLevel")
|
|
62
65
|
end
|
|
63
66
|
end
|
|
64
67
|
|
|
65
|
-
return CreatorPermissionProvider
|
|
68
|
+
return CreatorPermissionProvider
|
|
@@ -158,7 +158,10 @@ function GroupPermissionProvider._handlePlayer(self: GroupPermissionProvider, pl
|
|
|
158
158
|
end)
|
|
159
159
|
end
|
|
160
160
|
|
|
161
|
-
function GroupPermissionProvider._promiseRankInGroup(
|
|
161
|
+
function GroupPermissionProvider._promiseRankInGroup(
|
|
162
|
+
self: GroupPermissionProvider,
|
|
163
|
+
player: Player
|
|
164
|
+
): Promise.Promise<number>
|
|
162
165
|
assert(typeof(player) == "Instance", "Bad player")
|
|
163
166
|
|
|
164
167
|
if self._promiseRankPromisesCache[player.UserId] then
|
|
@@ -169,4 +172,4 @@ function GroupPermissionProvider._promiseRankInGroup(self: GroupPermissionProvid
|
|
|
169
172
|
return self._promiseRankPromisesCache[player.UserId]
|
|
170
173
|
end
|
|
171
174
|
|
|
172
|
-
return GroupPermissionProvider
|
|
175
|
+
return GroupPermissionProvider
|
|
@@ -9,7 +9,9 @@ serviceBag:GetService(require("PermissionServiceClient"))
|
|
|
9
9
|
serviceBag:Init()
|
|
10
10
|
serviceBag:Start()
|
|
11
11
|
|
|
12
|
-
serviceBag
|
|
12
|
+
serviceBag
|
|
13
|
+
:GetService(require("PermissionServiceClient"))
|
|
14
|
+
:PromisePermissionProvider()
|
|
13
15
|
:Then(function(permissionProvider)
|
|
14
16
|
return permissionProvider:PromiseIsAdmin()
|
|
15
17
|
end)
|
|
@@ -17,4 +19,4 @@ serviceBag:GetService(require("PermissionServiceClient")):PromisePermissionProvi
|
|
|
17
19
|
print("isAdmin", isAdmin)
|
|
18
20
|
end)
|
|
19
21
|
|
|
20
|
-
print("Loaded")
|
|
22
|
+
print("Loaded")
|