@quenty/transitionmodel 7.19.2 → 7.19.3

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,14 @@
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
+ ## [7.19.3](https://github.com/Quenty/NevermoreEngine/compare/@quenty/transitionmodel@7.19.2...@quenty/transitionmodel@7.19.3) (2025-04-10)
7
+
8
+ **Note:** Version bump only for package @quenty/transitionmodel
9
+
10
+
11
+
12
+
13
+
6
14
  ## [7.19.2](https://github.com/Quenty/NevermoreEngine/compare/@quenty/transitionmodel@7.19.0...@quenty/transitionmodel@7.19.2) (2025-04-07)
7
15
 
8
16
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quenty/transitionmodel",
3
- "version": "7.19.2",
3
+ "version": "7.19.3",
4
4
  "description": "Helps with Gui visiblity showing and hiding",
5
5
  "keywords": [
6
6
  "Roblox",
@@ -25,22 +25,22 @@
25
25
  "Quenty"
26
26
  ],
27
27
  "dependencies": {
28
- "@quenty/baseobject": "^10.8.2",
29
- "@quenty/basicpane": "^13.17.2",
30
- "@quenty/blend": "^12.18.2",
31
- "@quenty/ducktype": "^5.8.3",
32
- "@quenty/instanceutils": "^13.17.2",
33
- "@quenty/loader": "^10.8.2",
34
- "@quenty/maid": "^3.4.2",
35
- "@quenty/promise": "^10.10.3",
36
- "@quenty/rx": "^13.17.2",
37
- "@quenty/signal": "^7.10.2",
38
- "@quenty/spring": "^10.8.3",
39
- "@quenty/timedtween": "^7.18.2",
40
- "@quenty/valueobject": "^13.17.2"
28
+ "@quenty/baseobject": "^10.8.3",
29
+ "@quenty/basicpane": "^13.17.3",
30
+ "@quenty/blend": "^12.18.3",
31
+ "@quenty/ducktype": "^5.8.4",
32
+ "@quenty/instanceutils": "^13.17.3",
33
+ "@quenty/loader": "^10.8.3",
34
+ "@quenty/maid": "^3.4.3",
35
+ "@quenty/promise": "^10.10.4",
36
+ "@quenty/rx": "^13.17.3",
37
+ "@quenty/signal": "^7.10.3",
38
+ "@quenty/spring": "^10.8.4",
39
+ "@quenty/timedtween": "^7.18.3",
40
+ "@quenty/valueobject": "^13.17.3"
41
41
  },
42
42
  "publishConfig": {
43
43
  "access": "public"
44
44
  },
45
- "gitHead": "64def70499ec067077ee39f279936b620b217847"
45
+ "gitHead": "b06c070ae91d5dab7bd8de6e290ad2caabb15d8f"
46
46
  }
@@ -20,20 +20,13 @@ SpringTransitionModel.__index = SpringTransitionModel
20
20
 
21
21
  export type SpringTransitionModel<T> = typeof(setmetatable(
22
22
  {} :: {
23
- _maid: Maid.Maid,
24
23
  _showTarget: any,
25
24
  _hideTarget: any,
26
25
  _springObject: any,
27
26
  _transitionModel: TransitionModel.TransitionModel,
28
-
29
- -- From BasicPane
30
- IsVisible: (self: SpringTransitionModel<T>) -> boolean,
31
- SetVisible: (self: SpringTransitionModel<T>, isVisible: boolean, doNotAnimate: boolean?) -> (),
32
- VisibleChanged: _Signal.Signal<boolean, boolean>,
33
- Destroy: (self: SpringTransitionModel<T>) -> (),
34
27
  },
35
- SpringTransitionModel
36
- ))
28
+ {} :: typeof({ __index = SpringTransitionModel })
29
+ )) & BasicPane.BasicPane
37
30
 
38
31
  --[=[
39
32
  A transition model that has a spring underlying it. Very useful
@@ -44,7 +37,7 @@ export type SpringTransitionModel<T> = typeof(setmetatable(
44
37
  @return SpringTransitionModel<T>
45
38
  ]=]
46
39
  function SpringTransitionModel.new<T>(showTarget: T?, hideTarget: T?): SpringTransitionModel<T>
47
- local self = setmetatable(BasicPane.new() :: any, SpringTransitionModel)
40
+ local self: SpringTransitionModel<T> = setmetatable(BasicPane.new() :: any, SpringTransitionModel)
48
41
 
49
42
  self._showTarget = showTarget or 1
50
43
  self._hideTarget = hideTarget
@@ -1,3 +1,4 @@
1
+ --!strict
1
2
  --[=[
2
3
  This model deduplicates and handles transitions for showing, hiding, and
3
4
  toggling. Inherits from [BasicPane]. See for more API.
@@ -19,20 +20,17 @@ local TransitionModel = setmetatable({}, BasicPane)
19
20
  TransitionModel.ClassName = "TransitionModel"
20
21
  TransitionModel.__index = TransitionModel
21
22
 
23
+ export type ShowHideCallback = (maid: Maid.Maid, doNotAnimate: boolean?) -> Promise.Promise<()>
24
+
22
25
  export type TransitionModel = typeof(setmetatable(
23
26
  {} :: {
24
27
  _isShowingComplete: ValueObject.ValueObject<boolean>,
25
28
  _isHidingComplete: ValueObject.ValueObject<boolean>,
26
-
27
- -- From BasicPane
28
- _maid: Maid.Maid,
29
- IsVisible: (self: TransitionModel) -> boolean,
30
- SetVisible: (self: TransitionModel, isVisible: boolean, doNotAnimate: boolean?) -> (),
31
- VisibleChanged: _Signal.Signal<boolean, boolean>,
32
- Destroy: (self: TransitionModel) -> (),
29
+ _hideCallback: ShowHideCallback?,
30
+ _showCallback: ShowHideCallback?,
33
31
  },
34
- TransitionModel
35
- ))
32
+ {} :: typeof({ __index = TransitionModel })
33
+ )) & BasicPane.BasicPane
36
34
 
37
35
  --[=[
38
36
  A transition model that takes a set amount of time to show
@@ -43,7 +41,7 @@ export type TransitionModel = typeof(setmetatable(
43
41
  @return TransitionModel
44
42
  ]=]
45
43
  function TransitionModel.new(): TransitionModel
46
- local self = setmetatable(BasicPane.new(), TransitionModel)
44
+ local self: TransitionModel = setmetatable(BasicPane.new() :: any, TransitionModel)
47
45
 
48
46
  self._isShowingComplete = self._maid:Add(ValueObject.new(false, "boolean"))
49
47
  self._isHidingComplete = self._maid:Add(ValueObject.new(false, "boolean"))
@@ -78,7 +76,7 @@ end
78
76
  @param doNotAnimate boolean
79
77
  @return Promise
80
78
  ]=]
81
- function TransitionModel:PromiseShow(doNotAnimate: boolean?): Promise.Promise<()>
79
+ function TransitionModel.PromiseShow(self: TransitionModel, doNotAnimate: boolean?): Promise.Promise<()>
82
80
  local promise = self:_promiseIsShown()
83
81
 
84
82
  self:Show(doNotAnimate)
@@ -92,7 +90,7 @@ end
92
90
  @param doNotAnimate boolean
93
91
  @return Promise
94
92
  ]=]
95
- function TransitionModel:PromiseHide(doNotAnimate: boolean?): Promise.Promise<()>
93
+ function TransitionModel.PromiseHide(self: TransitionModel, doNotAnimate: boolean?): Promise.Promise<()>
96
94
  local promise = self:_promiseIsHidden()
97
95
 
98
96
  self:Hide(doNotAnimate)
@@ -106,7 +104,7 @@ end
106
104
  @param doNotAnimate boolean
107
105
  @return Promise
108
106
  ]=]
109
- function TransitionModel:PromiseToggle(doNotAnimate: boolean?): Promise.Promise<()>
107
+ function TransitionModel.PromiseToggle(self: TransitionModel, doNotAnimate: boolean?): Promise.Promise<()>
110
108
  if self:IsVisible() then
111
109
  return self:PromiseShow(doNotAnimate)
112
110
  else
@@ -118,7 +116,7 @@ end
118
116
  Returns true if showing is complete
119
117
  @return boolean?
120
118
  ]=]
121
- function TransitionModel:IsShowingComplete(): boolean
119
+ function TransitionModel.IsShowingComplete(self: TransitionModel): boolean
122
120
  return self._isShowingComplete.Value
123
121
  end
124
122
 
@@ -126,7 +124,7 @@ end
126
124
  Returns true if hiding is complete
127
125
  @return boolean?
128
126
  ]=]
129
- function TransitionModel:IsHidingComplete(): boolean?
127
+ function TransitionModel.IsHidingComplete(self: TransitionModel): boolean
130
128
  return self._isHidingComplete.Value
131
129
  end
132
130
 
@@ -134,7 +132,7 @@ end
134
132
  Observe is showing is complete
135
133
  @return Observable<boolean>
136
134
  ]=]
137
- function TransitionModel:ObserveIsShowingComplete(): _Observable.Observable<boolean>
135
+ function TransitionModel.ObserveIsShowingComplete(self: TransitionModel): _Observable.Observable<boolean>
138
136
  return self._isShowingComplete:Observe()
139
137
  end
140
138
 
@@ -142,7 +140,7 @@ end
142
140
  Observe is hiding is complete
143
141
  @return Observable<boolean>
144
142
  ]=]
145
- function TransitionModel:ObserveIsHidingComplete(): _Observable.Observable<boolean>
143
+ function TransitionModel.ObserveIsHidingComplete(self: TransitionModel): _Observable.Observable<boolean>
146
144
  return self._isHidingComplete:Observe()
147
145
  end
148
146
 
@@ -152,7 +150,7 @@ end
152
150
  @param pane BasicPane
153
151
  @return function -- Cleanup function
154
152
  ]=]
155
- function TransitionModel:BindToPaneVisbility(pane: BasicPane.BasicPane): () -> ()
153
+ function TransitionModel.BindToPaneVisbility(self: TransitionModel, pane: BasicPane.BasicPane): () -> ()
156
154
  local maid = Maid.new()
157
155
 
158
156
  maid:GiveTask(pane.VisibleChanged:Connect(function(isVisible, doNotAnimate)
@@ -178,7 +176,7 @@ end
178
176
 
179
177
  @param showCallback function? -- Callback which should return a promise
180
178
  ]=]
181
- function TransitionModel:SetPromiseShow(showCallback)
179
+ function TransitionModel.SetPromiseShow(self: TransitionModel, showCallback)
182
180
  assert(type(showCallback) == "function" or showCallback == nil, "Bad showCallback")
183
181
 
184
182
  self._showCallback = showCallback
@@ -189,13 +187,13 @@ end
189
187
 
190
188
  @param hideCallback function? -- Callback which should return a promise
191
189
  ]=]
192
- function TransitionModel:SetPromiseHide(hideCallback)
190
+ function TransitionModel.SetPromiseHide(self: TransitionModel, hideCallback)
193
191
  assert(type(hideCallback) == "function" or hideCallback == nil, "Bad hideCallback")
194
192
 
195
193
  self._hideCallback = hideCallback
196
194
  end
197
195
 
198
- function TransitionModel:_promiseIsShown(): Promise.Promise<()>
196
+ function TransitionModel._promiseIsShown(self: TransitionModel): Promise.Promise<()>
199
197
  if self._isShowingComplete.Value then
200
198
  return Promise.resolved()
201
199
  end
@@ -224,7 +222,7 @@ function TransitionModel:_promiseIsShown(): Promise.Promise<()>
224
222
  return promise
225
223
  end
226
224
 
227
- function TransitionModel:_promiseIsHidden(): Promise.Promise<()>
225
+ function TransitionModel._promiseIsHidden(self: TransitionModel): Promise.Promise<()>
228
226
  if self._isHidingComplete.Value then
229
227
  return Promise.resolved()
230
228
  end
@@ -253,7 +251,7 @@ function TransitionModel:_promiseIsHidden(): Promise.Promise<()>
253
251
  return promise
254
252
  end
255
253
 
256
- function TransitionModel:_executeShow(doNotAnimate: boolean?)
254
+ function TransitionModel._executeShow(self: TransitionModel, doNotAnimate: boolean?)
257
255
  self._maid._transition = nil
258
256
 
259
257
  local maid = Maid.new()
@@ -291,7 +289,7 @@ function TransitionModel:_executeShow(doNotAnimate: boolean?)
291
289
  end
292
290
  end
293
291
 
294
- function TransitionModel:_executeHide(doNotAnimate: boolean?)
292
+ function TransitionModel._executeHide(self: TransitionModel, doNotAnimate: boolean?)
295
293
  self._maid._transition = nil
296
294
 
297
295
  local maid = Maid.new()