@quenty/cmdrservice 8.2.1 → 8.3.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 CHANGED
@@ -3,6 +3,22 @@
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
+ # [8.3.0](https://github.com/Quenty/NevermoreEngine/compare/@quenty/cmdrservice@8.2.1...@quenty/cmdrservice@8.3.0) (2023-12-14)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * Remove remoting calls and ensure we cancel promise for cmdr cleanup ([e000671](https://github.com/Quenty/NevermoreEngine/commit/e000671ddfec319a332e6aaa93206cf6e1c361b5))
12
+
13
+
14
+ ### Features
15
+
16
+ * ChatProviderService can disable chat ([99d06db](https://github.com/Quenty/NevermoreEngine/commit/99d06db7c7f1a2b16d2cb5ae9c0a26c842f1270b))
17
+
18
+
19
+
20
+
21
+
6
22
  ## [8.2.1](https://github.com/Quenty/NevermoreEngine/compare/@quenty/cmdrservice@8.2.0...@quenty/cmdrservice@8.2.1) (2023-10-28)
7
23
 
8
24
  **Note:** Version bump only for package @quenty/cmdrservice
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quenty/cmdrservice",
3
- "version": "8.2.1",
3
+ "version": "8.3.0",
4
4
  "description": "Bridge between cmdr and Nevermore services using servicebag",
5
5
  "keywords": [
6
6
  "Roblox",
@@ -25,19 +25,18 @@
25
25
  "Quenty"
26
26
  ],
27
27
  "dependencies": {
28
- "@quenty/chatproviderservice": "^4.2.1",
29
- "@quenty/loader": "^7.0.0",
28
+ "@quenty/loader": "^7.1.0",
30
29
  "@quenty/maid": "^2.6.0",
31
- "@quenty/permissionprovider": "^9.2.1",
32
- "@quenty/promise": "^7.0.0",
33
- "@quenty/remoting": "^7.1.1",
34
- "@quenty/servicebag": "^7.0.0",
30
+ "@quenty/permissionprovider": "^9.3.0",
31
+ "@quenty/promise": "^7.1.0",
32
+ "@quenty/remoting": "^7.2.0",
33
+ "@quenty/servicebag": "^7.1.0",
35
34
  "@quenty/string": "^3.1.0",
36
- "@quenty/templateprovider": "^8.0.0",
35
+ "@quenty/templateprovider": "^8.1.0",
37
36
  "@quentystudios/cmdr": "^1.12.0-quenty.0"
38
37
  },
39
38
  "publishConfig": {
40
39
  "access": "public"
41
40
  },
42
- "gitHead": "440aca7ce2b50b74317ee05fdc0b8d1e58001af3"
41
+ "gitHead": "2c2dbbc0cb2fbb46b4f3270c559c63890fe18b26"
43
42
  }
@@ -16,8 +16,6 @@ local Promise = require("Promise")
16
16
  local promiseChild = require("promiseChild")
17
17
  local PromiseUtils = require("PromiseUtils")
18
18
  local String = require("String")
19
- local ChatProviderServiceClient = require("ChatProviderServiceClient")
20
- local Remoting = require("Remoting")
21
19
 
22
20
  local CmdrServiceClient = {}
23
21
  CmdrServiceClient.ServiceName = "CmdrServiceClient"
@@ -29,10 +27,9 @@ CmdrServiceClient.ServiceName = "CmdrServiceClient"
29
27
  function CmdrServiceClient:Init(serviceBag)
30
28
  assert(not self._serviceBag, "Already initialized")
31
29
  self._serviceBag = assert(serviceBag, "No serviceBag")
32
-
33
30
  self._maid = Maid.new()
31
+
34
32
  self._permissionServiceClient = self._serviceBag:GetService(PermissionServiceClient)
35
- self._chatProviderServiceClient = self._serviceBag:GetService(ChatProviderServiceClient)
36
33
 
37
34
  self:PromiseCmdr():Then(function(cmdr)
38
35
  cmdr.Registry:RegisterHook("BeforeRun", function(context)
@@ -81,8 +78,6 @@ end
81
78
  function CmdrServiceClient:Start()
82
79
  assert(self._serviceBag, "Not initialized")
83
80
 
84
- self._remoting = self._maid:Add(Remoting.new(ReplicatedStorage, "CmdrService"))
85
-
86
81
  self._maid:GivePromise(PromiseUtils.all({
87
82
  self:PromiseCmdr(),
88
83
  self._maid:GivePromise(self._permissionServiceClient:PromisePermissionProvider())
@@ -110,20 +105,6 @@ function CmdrServiceClient:_setBindings(cmdr)
110
105
  end
111
106
  end))
112
107
 
113
- self._maid:GiveTask(self._remoting.OpenCmdr:Connect(function()
114
- cmdr:Show()
115
- end))
116
-
117
- -- same with chat provider
118
- self._maid:GiveTask(self._chatProviderServiceClient.MessageIncoming:Connect(function(textChatMessage)
119
- if not (textChatMessage.TextSource and textChatMessage.TextSource.UserId == Players.LocalPlayer.UserId) then
120
- return
121
- end
122
-
123
- if String.startsWith(textChatMessage.Text, "/cmdr") then
124
- cmdr:Show()
125
- end
126
- end))
127
108
 
128
109
  -- Race condition
129
110
  task.defer(function()
@@ -143,7 +124,7 @@ function CmdrServiceClient:PromiseCmdr()
143
124
  return self._cmdrPromise
144
125
  end
145
126
 
146
- self._cmdrPromise = promiseChild(ReplicatedStorage, "CmdrClient")
127
+ self._cmdrPromise = self._maid:GivePromise(promiseChild(ReplicatedStorage, "CmdrClient"))
147
128
  :Then(function(cmdClient)
148
129
  return Promise.spawn(function(resolve, _reject)
149
130
  -- Requiring cmdr can yield
@@ -9,14 +9,11 @@
9
9
  local require = require(script.Parent.loader).load(script)
10
10
 
11
11
  local HttpService = game:GetService("HttpService")
12
- local ReplicatedStorage = game:GetService("ReplicatedStorage")
13
- local Players = game:GetService("Players")
14
12
 
15
13
  local PermissionService = require("PermissionService")
16
14
  local CmdrTemplateProviderServer = require("CmdrTemplateProviderServer")
17
15
  local Promise = require("Promise")
18
16
  local Maid = require("Maid")
19
- local Remoting = require("Remoting")
20
17
 
21
18
  local CmdrService = {}
22
19
  CmdrService.ServiceName = "CmdrService"
@@ -32,13 +29,6 @@ function CmdrService:Init(serviceBag)
32
29
  self._maid = Maid.new()
33
30
  self._serviceBag = assert(serviceBag, "No serviceBag")
34
31
 
35
- -- State
36
- self._remoting = self._maid:Add(Remoting.new(ReplicatedStorage, "CmdrService"))
37
- self._remoting:DeclareEvent("OpenCmdr")
38
-
39
- -- External
40
- self._chatProviderService = self._serviceBag:GetService(require("ChatProviderService"))
41
-
42
32
  -- Internal
43
33
  self._cmdrTemplateProviderServer = self._serviceBag:GetService(CmdrTemplateProviderServer)
44
34
 
@@ -55,7 +45,7 @@ function CmdrService:Init(serviceBag)
55
45
  resolve(cmdr)
56
46
  end))
57
47
 
58
- self._permissionService = serviceBag:GetService(PermissionService)
48
+ self._permissionService = self._serviceBag:GetService(PermissionService)
59
49
 
60
50
  self._definitionData = {}
61
51
  self._executeData = {}
@@ -97,10 +87,6 @@ function CmdrService:Init(serviceBag)
97
87
  GLOBAL_REGISTRY[self._serviceId] = self
98
88
  end
99
89
 
100
- function CmdrService:Start()
101
- self:_createActivateChatCommand()
102
- end
103
-
104
90
  --[=[
105
91
  Returns cmdr
106
92
  @return Promise<Cmdr>
@@ -158,27 +144,6 @@ function CmdrService:RegisterCommand(commandData, execute)
158
144
  end)
159
145
  end
160
146
 
161
- function CmdrService:_createActivateChatCommand()
162
- local command = Instance.new("TextChatCommand")
163
- command.Name = "OpenCmdrCommand"
164
- command.PrimaryAlias = "/cmdr"
165
-
166
- self._maid:GiveTask(command)
167
- self._maid:GiveTask(command.Triggered:Connect(function(originTextSource, _unfilteredText)
168
- local player = Players:GetPlayerByUserId(originTextSource.UserId)
169
- if not player then
170
- return
171
- end
172
-
173
- self._permissionService:PromiseIsAdmin(player):Then(function(isAdmin)
174
- if isAdmin then
175
- self._remoting.OpenCmdr:FireClient(player)
176
- end
177
- end)
178
- end))
179
-
180
- self._chatProviderService:AddChatCommand(command)
181
- end
182
147
 
183
148
 
184
149
  --[=[