angular / angular/components

feat(MatDatePicker): DateRange should implement min/max duration

Abierto
#20,780 3 comentarios 5 reacciones 0 asignados Ver en GitHub
area: material/datepicker feature P3
Lenguaje dominante
TypeScript
Estrellas
25k
Forks
6.8k
Merge medio
1 d 8 h
PR fusionados (30 d)
91

Descripción

#### Feature Description

I would like to use date picker to allow a user to pick any number of days from 1-7, but no more than 7.

This could be implemented by adding a minimum (default: 1) and maximum (default: unlimited) duration values to the DateRange type.

If the minimum duration is not default:
- create greyed-out preview overlay of end values less than the minimum duration but not before the start value. Selecting a value within the minimum duration or before the start date should reset the start date to new date.

If the maximum duration is not default:
- create a preview up to the maximum duration. Selecting value beyond the maximum duration becomes new start date.

Example with (min 3 days, max 7 days) might look like something this:

(this is only to illustrate, I'm not a UI designer or anything)

#### Use Case

Currently, I must have the user use a dropdown to pick their duration first (which informs a MatDateRangeSelectionStrategy), and then use the date picker to select a start date.

Would very much like to get rid of the dropdown.

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Comienza leyendo el comportamiento del rango de fechas de MatDatePicker y MatDateRangeSelectionStrategy descrito en el issue. Define y verifica el comportamiento de la duración mínima y máxima, incluidos los overlays de vista previa y el restablecimiento de la fecha de inicio cuando una selección queda fuera del rango permitido.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
angular, typescript
Área
frontend
Tipo de issue
Nueva funcionalidad
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
25/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.