Releases: klink-ing/colander
Release list
v3.1.0-alpha.2
v3.1.0-alpha.1
v3.0.1-alpha.1
v3.0.0
3.0.0 (2026-06-15)
⚠ BREAKING CHANGES
overflowBehavioris renamed tooutOfRangeBehavior, and
the exportedOverflowBehavior/MonthOverflowBehaviortypes become
OutOfRangeBehavior/MonthOutOfRangeBehavior. Accepted values are unchanged.
Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com
-
Upgrade tanstack start netlify plugin
-
chore: trigger Netlify rebuild (verify preview deploys post-config-fix)
Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com
- refactor: rename internal overflow.ts → out-of-range.ts to match outOfRangeBehavior
The public prop and types were renamed to outOfRangeBehavior /
OutOfRangeBehavior / MonthOutOfRangeBehavior, but the internal mechanism
still used "overflow" naming. Align it:
- overflow.ts → out-of-range.ts (+ overflow.test.ts → out-of-range.test.ts)
- applyOverflow → applyOutOfRange
- ApplyOverflowInput → ApplyOutOfRangeInput
- overflowResult → outOfRangeResult
- update imports + behavior-referring comments; regenerate format subpaths
Temporal's { overflow: "constrain" } option (PlainDate.from etc.) is
unrelated and left as-is.
Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com
Features
v2.0.3
v2.0.2
v2.0.1
v2.0.0
2.0.0 (2026-06-15)
⚠ BREAKING CHANGES
- the render-prop
RootState(state.root) now exposes
all selection values asTemporal.PlainDateinstead of the configured
valueformat. The format-typed values still flow via
value/defaultValue/onValueChange;RootStateis for rendering
(e.g.selected?.toLocaleString(locale)).focused/viewingwere
already Temporal.RootStateis now non-generic.
Fixes two runtime lies the audit flagged:
- MonthView built
selectedDates/rangeStart/rangeEndwithas any
(PlainDate behind a format type) andselectedas the format value;
now all are honest PlainDate. - WeeksView's MonthViewState shims used
{} as RootState, so every
state.rootfield readundefinedinside WeeksView. Now both the
WeeksView-root and inner-Grid shims expose a real, populated rootState.
The selection part of rootState is built once in CalendarProvider
(baseRootState, on the calendar state context) and spread by each view,
which adds its own focused/viewing — so MonthView and WeeksView are
identical. selected is the first committed date (the PlainDate behind
the old selected DateValueObject).
Because the date fields are no longer format-typed, RootState and the
~15 leaf component State/Props types that referenced RootState<F> lose
their now-unused <F> generic (the leaf display components become
non-generic). Genuinely format-generic types (Root/MonthView/WeeksView/
CalendarProvider, DateRange, RawValueForFormat) keep F. Removes ~12
as any and 2 {} as RootState casts; format subpaths regenerated.
Adds regression tests: MonthView rootState exposes PlainDate under
format="Date" (was a JS Date); WeeksView shim rootState is populated
(was all undefined).
Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com
- fix: add repository field to package.json for npm provenance
The semantic-release publish failed npm provenance validation
("repository.url" is "", expected to match the GitHub repo). Add the
repository (with monorepo directory), homepage, and bugs fields so the
published package's provenance bundle validates.
Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com