@quenty/enabledmixin 11.26.1 → 11.28.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,16 @@
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
+ # [11.28.0](https://github.com/Quenty/NevermoreEngine/compare/@quenty/enabledmixin@11.27.0...@quenty/enabledmixin@11.28.0) (2026-07-18)
7
+
8
+ **Note:** Version bump only for package @quenty/enabledmixin
9
+
10
+ # [11.27.0](https://github.com/Quenty/NevermoreEngine/compare/@quenty/enabledmixin@11.26.1...@quenty/enabledmixin@11.27.0) (2026-07-14)
11
+
12
+ ### Features
13
+
14
+ - **enabledmixin:** convert package to --!strict ([221965e](https://github.com/Quenty/NevermoreEngine/commit/221965ea0255cbd8fede74f7bc0cfe72d7ce8041))
15
+
6
16
  ## [11.26.1](https://github.com/Quenty/NevermoreEngine/compare/@quenty/enabledmixin@11.26.0...@quenty/enabledmixin@11.26.1) (2026-05-30)
7
17
 
8
18
  **Note:** Version bump only for package @quenty/enabledmixin
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quenty/enabledmixin",
3
- "version": "11.26.1",
3
+ "version": "11.28.0",
4
4
  "description": "Adds Enabled/Disabled state to class",
5
5
  "keywords": [
6
6
  "Roblox",
@@ -30,12 +30,12 @@
30
30
  "dependencies": {
31
31
  "@quenty/loader": "10.11.0",
32
32
  "@quenty/maid": "3.9.0",
33
- "@quenty/rx": "13.28.3",
33
+ "@quenty/rx": "13.29.0",
34
34
  "@quenty/signal": "7.13.1",
35
- "@quenty/valueobject": "13.31.1"
35
+ "@quenty/valueobject": "13.32.0"
36
36
  },
37
37
  "publishConfig": {
38
38
  "access": "public"
39
39
  },
40
- "gitHead": "598b2b62b36bdcbdbbd56f7db10c399831cc6eba"
40
+ "gitHead": "cbbb89635bfdcbf32f26a40422ac736292917cca"
41
41
  }
@@ -1,4 +1,4 @@
1
- --!nonstrict
1
+ --!strict
2
2
  --[=[
3
3
  Adds Enabled/Disabled state to class
4
4
  @class EnabledMixin
@@ -13,7 +13,17 @@ local ValueObject = require("ValueObject")
13
13
 
14
14
  local EnabledMixin = {}
15
15
 
16
- function EnabledMixin:Add(class)
16
+ export type EnabledMixin = typeof(setmetatable(
17
+ {} :: {
18
+ _maid: Maid.Maid,
19
+ _enabledMaidReference: Maid.Maid,
20
+ _enabledState: ValueObject.ValueObject<boolean>,
21
+ EnabledChanged: Signal.Signal<(boolean, boolean?)>,
22
+ },
23
+ {} :: typeof({ __index = EnabledMixin })
24
+ ))
25
+
26
+ function EnabledMixin.Add(self: EnabledMixin, class: any): ()
17
27
  assert(class, "Bad class")
18
28
  assert(not class.Enable, "class.Enable already defined")
19
29
  assert(not class.Disable, "class.Disable already defined")
@@ -32,38 +42,38 @@ function EnabledMixin:Add(class)
32
42
  end
33
43
 
34
44
  -- Initialize EnabledMixin
35
- function EnabledMixin:InitEnabledMixin(maid: Maid.Maid?)
36
- maid = maid or self._maid
37
- assert(maid, "Must have maid")
45
+ function EnabledMixin.InitEnabledMixin(self: EnabledMixin, maid: Maid.Maid?): ()
46
+ local resolvedMaid: Maid.Maid = (maid or self._maid) :: any
47
+ assert(resolvedMaid, "Must have maid")
38
48
 
39
- self._enabledMaidReference = maid
49
+ self._enabledMaidReference = resolvedMaid
40
50
 
41
- self._enabledState = maid:Add(ValueObject.new(false, "boolean"))
51
+ self._enabledState = (resolvedMaid :: any):Add(ValueObject.new(false, "boolean"))
42
52
 
43
- self.EnabledChanged = maid:Add(Signal.new()) -- :Fire(isEnabled, doNotAnimate)
53
+ self.EnabledChanged = (resolvedMaid :: any):Add(Signal.new()) -- :Fire(isEnabled, doNotAnimate)
44
54
 
45
- self._maid:GiveTask(self._enabledState.Changed:Connect(function(isEnabled, _, doNotAnimate)
55
+ self._maid:GiveTask((self._enabledState :: any).Changed:Connect(function(isEnabled, _, doNotAnimate)
46
56
  self.EnabledChanged:Fire(isEnabled, doNotAnimate)
47
57
  end))
48
58
  end
49
59
 
50
- function EnabledMixin:IsEnabled(): boolean
60
+ function EnabledMixin.IsEnabled(self: EnabledMixin): boolean
51
61
  return self._enabledState.Value
52
62
  end
53
63
 
54
- function EnabledMixin:Enable(doNotAnimate: boolean?)
64
+ function EnabledMixin.Enable(self: EnabledMixin, doNotAnimate: boolean?): ()
55
65
  self:SetEnabled(true, doNotAnimate)
56
66
  end
57
67
 
58
- function EnabledMixin:Disable(doNotAnimate: boolean?)
68
+ function EnabledMixin.Disable(self: EnabledMixin, doNotAnimate: boolean?): ()
59
69
  self:SetEnabled(false, doNotAnimate)
60
70
  end
61
71
 
62
- function EnabledMixin:ObserveIsEnabled(): Observable.Observable<boolean>
72
+ function EnabledMixin.ObserveIsEnabled(self: EnabledMixin): Observable.Observable<boolean>
63
73
  return self._enabledState:Observe()
64
74
  end
65
75
 
66
- function EnabledMixin:SetEnabled(isEnabled: boolean, doNotAnimate: boolean?)
76
+ function EnabledMixin.SetEnabled(self: EnabledMixin, isEnabled: boolean, doNotAnimate: boolean?): ()
67
77
  assert(type(isEnabled) == "boolean", "Bad isEnabled")
68
78
 
69
79
  self._enabledState:SetValue(isEnabled, doNotAnimate)