@quenty/binder 8.6.0 → 8.7.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,17 @@
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.7.0](https://github.com/Quenty/NevermoreEngine/compare/@quenty/binder@8.6.0...@quenty/binder@8.7.0) (2023-02-21)
7
+
8
+
9
+ ### Features
10
+
11
+ * BinderProvider will error if destroyed ([0417a5a](https://github.com/Quenty/NevermoreEngine/commit/0417a5a3bd81313e59194ac8eec9ee2d9c053d93))
12
+
13
+
14
+
15
+
16
+
6
17
  # [8.6.0](https://github.com/Quenty/NevermoreEngine/compare/@quenty/binder@8.5.0...@quenty/binder@8.6.0) (2023-01-11)
7
18
 
8
19
  **Note:** Version bump only for package @quenty/binder
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quenty/binder",
3
- "version": "8.6.0",
3
+ "version": "8.7.0",
4
4
  "description": "Utility object to Bind a class to Roblox object, and associated helper methods",
5
5
  "keywords": [
6
6
  "Roblox",
@@ -25,18 +25,18 @@
25
25
  "Quenty"
26
26
  ],
27
27
  "dependencies": {
28
- "@quenty/baseobject": "^6.0.1",
29
- "@quenty/brio": "^8.4.0",
30
- "@quenty/instanceutils": "^7.5.0",
31
- "@quenty/linkutils": "^7.5.0",
32
- "@quenty/loader": "^6.0.1",
28
+ "@quenty/baseobject": "^6.1.0",
29
+ "@quenty/brio": "^8.5.0",
30
+ "@quenty/instanceutils": "^7.6.0",
31
+ "@quenty/linkutils": "^7.6.0",
32
+ "@quenty/loader": "^6.1.0",
33
33
  "@quenty/maid": "^2.4.0",
34
- "@quenty/promise": "^6.0.1",
34
+ "@quenty/promise": "^6.1.0",
35
35
  "@quenty/signal": "^2.3.0",
36
- "@quenty/valueobject": "^7.4.0"
36
+ "@quenty/valueobject": "^7.5.0"
37
37
  },
38
38
  "publishConfig": {
39
39
  "access": "public"
40
40
  },
41
- "gitHead": "db2db00ab4e24a3eab0449b77a00bee6d91f2755"
41
+ "gitHead": "e084b0cc097ddbcb7c782b8ecbd9c2d619c49354"
42
42
  }
@@ -53,6 +53,7 @@ function BinderProvider.new(serviceName, initMethod)
53
53
 
54
54
  self._initMethod = initMethod or error("No initMethod")
55
55
  self._initialized = false
56
+ self._destroyed = false
56
57
  self._started = false
57
58
 
58
59
  return self
@@ -157,7 +158,11 @@ function BinderProvider:__index(index)
157
158
  return BinderProvider[index]
158
159
  end
159
160
 
160
- error(("%q Not a valid binder"):format(tostring(index)))
161
+ if rawget(self, "_destroyed") then
162
+ error(string.format("BinderProvider is destroyed. Cannot index %q", tostring(index)))
163
+ end
164
+
165
+ error(string.format("%q Not a valid binder", tostring(index)))
161
166
  end
162
167
 
163
168
  --[=[
@@ -185,6 +190,8 @@ function BinderProvider:Add(binder)
185
190
  end
186
191
 
187
192
  function BinderProvider:Destroy()
193
+ self._destroyed = true
194
+
188
195
  for _, item in pairs(self._binders) do
189
196
  rawset(self, item:GetTag(), nil)
190
197
  end