pond-ts 0.45.0 → 0.46.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.
Files changed (2) hide show
  1. package/CHANGELOG.md +50 -1
  2. package/package.json +1 -1
package/CHANGELOG.md CHANGED
@@ -8,7 +8,8 @@ The `@pond-ts` packages — `pond-ts`, `@pond-ts/react`, `@pond-ts/charts`,
8
8
  tag, so this file covers them all. Pre-1.0: minor bumps may include new features
9
9
  and type-level changes; patch bumps are strictly additive.
10
10
 
11
- [Unreleased]: https://github.com/pjm17971/pond-ts/compare/v0.45.0...HEAD
11
+ [Unreleased]: https://github.com/pjm17971/pond-ts/compare/v0.46.0...HEAD
12
+ [0.46.0]: https://github.com/pjm17971/pond-ts/compare/v0.45.0...v0.46.0
12
13
  [0.45.0]: https://github.com/pjm17971/pond-ts/compare/v0.44.1...v0.45.0
13
14
  [0.44.1]: https://github.com/pjm17971/pond-ts/compare/v0.44.0...v0.44.1
14
15
  [0.44.0]: https://github.com/pjm17971/pond-ts/compare/v0.43.0...v0.44.0
@@ -44,6 +45,54 @@ and type-level changes; patch bumps are strictly additive.
44
45
 
45
46
  ## [Unreleased]
46
47
 
48
+ ## [0.46.0] — 2026-07-14
49
+
50
+ ### Changed
51
+
52
+ - **charts:** the boundary (second-row) axis label's **context** now pins to
53
+ the plot's left edge instead of riding the first tick: it shows the period
54
+ the *domain start* is in, and a crossing label sliding toward the edge
55
+ pushes it off (the sticky-header behavior). On a live sliding window the
56
+ old first-tick anchoring made `Jan 01` hop tick-to-tick as ticks scrolled
57
+ out; pinned, it stays put until the period actually changes. Crossing
58
+ labels (day/year turns) still ride their ticks — including a first tick
59
+ whose period differs from the domain start's. `TradingTimeScale` gains
60
+ `boundaryContext(count)`; `tickBoundaries` now labels crossings only.
61
+
62
+ ### Fixed
63
+
64
+ - **charts:** a live (sliding-window) time axis no longer flickers between two
65
+ tick grains: the clock-rung choice now derives from the window's live span
66
+ (constant while sliding) instead of the enumerated anchor count, which
67
+ oscillates ±1 with the window's phase and flipped the grain for single
68
+ frames whenever it sat exactly at the width-derived cap.
69
+
70
+ ### Added
71
+
72
+ - **charts:** **dual x-axes** — two tick layouts on one shared scale. A second
73
+ `<XAxis>` stacks by declaration order (above/below the plot, either side,
74
+ same side twice); the new **`transform`** prop (`{ to, from }`, exported
75
+ `AxisTransform`) relabels an axis into a derived unit: strike ↔ moneyness on
76
+ a top axis, or a nonlinear BS-delta strip under a std-moneyness chart. Ticks
77
+ are nice derived-unit values chosen by a pixel-aware multi-resolution fill
78
+ (1-2-5 steps, coarsest first, admitted where they keep room), so a span the
79
+ transform compresses gets coarse ticks and a stretched span picks up finer
80
+ ones — and a label-honesty filter drops any tick whose formatted label would
81
+ lie about its position. Gridlines stay on the container's primary ticks; the
82
+ cursor pill on a transformed axis reads in the derived unit. Stories under
83
+ `Charts/Axes/DualX`. Each `<XAxis>` **and `<YAxis>`** also takes a
84
+ per-instance **`color`** (labels, tick marks, rule, title) — the lever that
85
+ distinguishes stacked x strips (a blue delta strip under a grey primary) and
86
+ colours a y axis to match its series (the dual-axis convention).
87
+
88
+ ### Fixed
89
+
90
+ - **charts:** annotation label chips now clip to the plot: a marker whose pole
91
+ pans off-plot no longer leaves its chip floating in the axis gutter, and a
92
+ partially visible region's chip clamps to the plot's left edge (culled only
93
+ when the region is entirely out of view). The lines/fills were already
94
+ SVG-clipped — only the DOM chips escaped.
95
+
47
96
  ## [0.45.0] — 2026-07-14
48
97
 
49
98
  ### Added
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pond-ts",
3
- "version": "0.45.0",
3
+ "version": "0.46.0",
4
4
  "description": "TypeScript-first time series primitives",
5
5
  "license": "MIT",
6
6
  "repository": {