@celestia-island/hikari 0.55.48 → 0.55.49

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@celestia-island/hikari",
3
- "version": "0.55.48",
3
+ "version": "0.55.49",
4
4
  "private": false,
5
5
  "type": "module",
6
6
  "description": "Hikari Vue 3 component library — production-grade UI components based on shittim-chest design system",
@@ -50,9 +50,14 @@
50
50
  // ENTER: fade in place with a standard ease — no travel, no other
51
51
  // property. The element is laid out and PAINTED from the moment it
52
52
  // mounts (opacity: 0 is compositor-only), so the first frame of the
53
- // fade never triggers a re-raster.
53
+ // fade never triggers a re-raster. The NEGATIVE delay starts the fade
54
+ // already partway up its curve, so the new content crosses the eye's
55
+ // perceptual threshold (~0.15 opacity) the moment the old one drops
56
+ // below it — without it, the strictly sequential grammar leaves a
57
+ // ~70-125ms blank body window between the two phases, which was the
58
+ // "flicker" the user's device kept reporting (round 12, second video).
54
59
  transition:
55
- opacity calc(var(--hk-stepflow-duration, 0.3s) / 2) cubic-bezier(0.4, 0, 0.2, 1);
60
+ opacity calc(var(--hk-stepflow-duration, 0.3s) / 2) cubic-bezier(0.4, 0, 0.2, 1) -40ms;
56
61
  }
57
62
 
58
63
  // The staged new body: transparent, untouchable, and at the CELL BOTTOM
@@ -76,6 +76,9 @@ describe("HkStepFlow simplified swap contract", () => {
76
76
  expect(decl).toContain("opacity");
77
77
  expect(decl).toContain(PHASE);
78
78
  expect(decl).toContain("cubic-bezier(0.4, 0, 0.2, 1)");
79
+ // The negative delay starts the fade already partway up its curve,
80
+ // closing the blank-body window between the two phases.
81
+ expect(decl).toContain("-40ms");
79
82
  expect(decl, "the enter phase never travels").not.toContain("transform");
80
83
  });
81
84