@quenty/blend 12.3.1-canary.478.34e8ede.0 → 12.3.1-canary.478.88914d9.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,11 +3,12 @@
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
- ## [12.3.1-canary.478.34e8ede.0](https://github.com/Quenty/NevermoreEngine/compare/@quenty/blend@12.3.0...@quenty/blend@12.3.1-canary.478.34e8ede.0) (2024-08-27)
6
+ ## [12.3.1-canary.478.88914d9.0](https://github.com/Quenty/NevermoreEngine/compare/@quenty/blend@12.3.0...@quenty/blend@12.3.1-canary.478.88914d9.0) (2024-09-12)
7
7
 
8
8
 
9
9
  ### Bug Fixes
10
10
 
11
+ * Blend spring uses a default spring object, fixing any errors ([d468636](https://github.com/Quenty/NevermoreEngine/commit/d468636dc58f951fbfc565d4a6b68c79483e379a))
11
12
  * Fix some spring object stuff ([34e8ede](https://github.com/Quenty/NevermoreEngine/commit/34e8edee97fa93a0a5bd84442b85826082444f2a))
12
13
 
13
14
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quenty/blend",
3
- "version": "12.3.1-canary.478.34e8ede.0",
3
+ "version": "12.3.1-canary.478.88914d9.0",
4
4
  "description": "Declarative UI system.",
5
5
  "keywords": [
6
6
  "Roblox",
@@ -27,24 +27,24 @@
27
27
  "access": "public"
28
28
  },
29
29
  "dependencies": {
30
- "@quenty/acceltween": "2.4.1-canary.478.34e8ede.0",
31
- "@quenty/brio": "14.3.1-canary.478.34e8ede.0",
32
- "@quenty/ducktype": "5.3.1-canary.478.34e8ede.0",
33
- "@quenty/instanceutils": "13.3.1-canary.478.34e8ede.0",
34
- "@quenty/loader": "10.3.1-canary.478.34e8ede.0",
35
- "@quenty/maid": "3.2.0",
36
- "@quenty/promise": "10.3.1-canary.478.34e8ede.0",
37
- "@quenty/rx": "13.3.1-canary.478.34e8ede.0",
38
- "@quenty/signal": "7.3.1-canary.478.34e8ede.0",
39
- "@quenty/spring": "10.3.1-canary.478.34e8ede.0",
30
+ "@quenty/acceltween": "2.4.1-canary.478.88914d9.0",
31
+ "@quenty/brio": "14.3.1-canary.478.88914d9.0",
32
+ "@quenty/ducktype": "5.3.1-canary.478.88914d9.0",
33
+ "@quenty/instanceutils": "13.3.1-canary.478.88914d9.0",
34
+ "@quenty/loader": "10.3.1-canary.478.88914d9.0",
35
+ "@quenty/maid": "3.2.1-canary.478.88914d9.0",
36
+ "@quenty/promise": "10.3.1-canary.478.88914d9.0",
37
+ "@quenty/rx": "13.3.1-canary.478.88914d9.0",
38
+ "@quenty/signal": "7.3.1-canary.478.88914d9.0",
39
+ "@quenty/spring": "10.3.1-canary.478.88914d9.0",
40
40
  "@quenty/steputils": "3.4.0",
41
41
  "@quenty/string": "3.2.0",
42
- "@quenty/valuebaseutils": "13.3.1-canary.478.34e8ede.0",
43
- "@quenty/valueobject": "13.3.1-canary.478.34e8ede.0"
42
+ "@quenty/valuebaseutils": "13.3.1-canary.478.88914d9.0",
43
+ "@quenty/valueobject": "13.3.1-canary.478.88914d9.0"
44
44
  },
45
45
  "devDependencies": {
46
- "@quenty/contentproviderutils": "12.3.1-canary.478.34e8ede.0",
47
- "@quenty/playerthumbnailutils": "10.3.1-canary.478.34e8ede.0"
46
+ "@quenty/contentproviderutils": "12.3.1-canary.478.88914d9.0",
47
+ "@quenty/playerthumbnailutils": "10.3.1-canary.478.88914d9.0"
48
48
  },
49
- "gitHead": "34e8edee97fa93a0a5bd84442b85826082444f2a"
49
+ "gitHead": "88914d9021cfc9d91111f4d825341271dc292ec4"
50
50
  }
@@ -417,6 +417,7 @@ function Blend.Spring(source, speed, damper)
417
417
  local maid = Maid.new()
418
418
 
419
419
  local spring = maid:Add(SpringObject.new(source, speed, damper))
420
+ spring.Epsilon = 1e-3
420
421
 
421
422
  maid:GiveTask(spring:Observe():Subscribe(sub:GetFireFailComplete()))
422
423
 
@@ -46,8 +46,6 @@ function SpringObject.new(target, speed, damper)
46
46
 
47
47
  if target then
48
48
  self:SetTarget(target)
49
- else
50
- self:_getSpringForType(0)
51
49
  end
52
50
 
53
51
  if speed then
@@ -288,7 +286,14 @@ function SpringObject:__index(index)
288
286
  elseif SpringObject[index] then
289
287
  return SpringObject[index]
290
288
  elseif index == "_currentSpring" then
291
- return rawget(self, "_currentSpring")
289
+ local found = rawget(self, "_currentSpring")
290
+ if found then
291
+ return found
292
+ end
293
+
294
+ -- Note that sometimes the current spring isn't loaded yet as a type so
295
+ -- we use a number for this.
296
+ return self:_getSpringForType(0)
292
297
  else
293
298
  error(string.format("%q is not a member of SpringObject", tostring(index)))
294
299
  end
@@ -347,16 +352,12 @@ function SpringObject:__newindex(index, value)
347
352
  end
348
353
  end
349
354
 
350
- function SpringObject:_ensureSpringOrInitSpring()
351
-
352
- end
353
-
354
355
  function SpringObject:_getSpringForType(converted)
355
356
  if rawget(self, "_currentSpring") == nil then
356
357
  -- only happens on init
357
358
  local created = Spring.new(converted)
358
359
  rawset(self, "_currentSpring", created)
359
- return self._currentSpring
360
+ return created
360
361
  else
361
362
  local currentType = typeof(SpringUtils.fromLinearIfNeeded(self._currentSpring.Value))
362
363
  if currentType == typeof(SpringUtils.fromLinearIfNeeded(converted)) then
@@ -366,11 +367,12 @@ function SpringObject:_getSpringForType(converted)
366
367
  local oldSpeed = self._currentSpring.s
367
368
  local clock = self._currentSpring.Clock
368
369
 
369
- self._currentSpring = Spring.new(converted)
370
- self._currentSpring.Clock = clock
371
- self._currentSpring.Speed = oldSpeed
372
- self._currentSpring.Damper = oldDamper
373
- return self._currentSpring
370
+ local newSpring = Spring.new(converted)
371
+ newSpring.Clock = clock
372
+ newSpring.Speed = oldSpeed
373
+ newSpring.Damper = oldDamper
374
+ rawset(self, "_currentSpring", newSpring)
375
+ return newSpring
374
376
  end
375
377
  end
376
378
  end