NepaliDateRangeTextField
Two stacked NepaliDateTextFields editing a Bikram Sambat date range.
Validation per keystroke is identical to NepaliDateTextField for each side, plus a cross-field rule: a parsed endValue < startValue is rejected - the field emits the offending side as null and surfaces isError = true to the caller via isStartError / isEndError.
The composable emits each side independently through onRangeChange; callers who want a single Pair<SimpleDate?, SimpleDate?> callback can wrap.
Parameters
externally-controlled start selection.
externally-controlled end selection.
invoked on every keystroke. First arg is the new start (or unchanged); second is the new end. Both null means the user has not completed input on that side or it failed validation.
Text-field appearance is customizable through textStyle, shape, the per-field startPrefix / endPrefix, startSuffix / endSuffix, and the per-field startInteractionSource / endInteractionSource.
See also
for a combo that pairs this with the range picker dialog.