it-at-m / refarch-templates

All templates for the Reference Architecture of it@M
MIT License
8 stars 4 forks source link

[Maintenance] Refactor DateTimeInput #289

Open langehm opened 2 months ago

langehm commented 2 months ago

Relevant template

No response

Problem description (optional)

Current implementation depends on using ref of the vuetify components. Furthermore all props are required - this is in congestion with the given example inside the components. This example does not work out of the box.

Desired solution

Make as many props optional and improve the logic in general. Remove the icon for clearing the input. Vuetify offers clearable props.

Considered alternatives (optional)

No response

Additional context (optional)

Evaluate the UI/UX decision with two input fields directly next to each other.

No duplicate

Code of Conduct

devtobi commented 1 week ago

@darenegade @FabianWilms Do you think we still need this component? As there would be some refactoring work to do, we would like to remove it.

darenegade commented 1 week ago

@devtobi

This wrapper input was created a long time ago and was necessary after the official date input of Vuetify could not be operated with the keyboard on the one hand and did not support Date-Time on the other. The separation of Date and Time was also necessary at that time because not all browsers supported the input type 'datetime-local' sufficiently. However, a few years have passed since then and Vuetify 3 has also made some improvements. As far as I have seen, the official v-date-input is now easier to use with the keyboard, but it still has a localization problem.

I think that the use case itself still exists, but the demand is certainly not very high. In most cases, a date is required and not a date-time. A higher refactoring effort is therefore difficult to argue. Perhaps it makes sense to remove this component for the time and it should be individually developed in the projects where usefull. The code itself is not that complex.

Regarding the desired solution:

Make as many props optional and improve the logic in general. Remove the icon for clearing the input. Vuetify offers clearable props.

This is exactly what we don't want to achieve with the component within the RefArch templates. Therefore, this input should not be a generic form input, but only a basis for individual customization.

devtobi commented 1 week ago

@devtobi

This wrapper input was created a long time ago and was necessary after the official date input of Vuetify could not be operated with the keyboard on the one hand and did not support Date-Time on the other. The separation of Date and Time was also necessary at that time because not all browsers supported the input type 'datetime-local' sufficiently. However, a few years have passed since then and Vuetify 3 has also made some improvements. As far as I have seen, the official v-date-input is now easier to use with the keyboard, but it still has a localization problem.

I think that the use case itself still exists, but the demand is certainly not very high. In most cases, a date is required and not a date-time. A higher refactoring effort is therefore difficult to argue. Perhaps it makes sense to remove this component for the time and it should be individually developed in the projects where usefull. The code itself is not that complex.

Regarding the desired solution:

Make as many props optional and improve the logic in general. Remove the icon for clearing the input. Vuetify offers clearable props.

This is exactly what we don't want to achieve with the component within the RefArch templates. Therefore, this input should not be a generic form input, but only a basis for individual customization.

Thanks for your answer, will remove the component next week. If need arises again we can start fresh. :)