From 00611a599c6c63caa4911045ffbced71ac6f1b80 Mon Sep 17 00:00:00 2001 From: scottkiener-at-safelite Date: Wed, 6 May 2026 15:19:19 -0400 Subject: [PATCH] Refactor scheduling page and date-picker component scheduling.vue: - Colocate inshop providers and time slots into inShopProvidersAndTimeslots array of { provider, timeSlots } objects, replacing two parallel arrays - Combine mobileTimeSlots and mobileProviderNumber into a single mobileProviderAndTimeSlot object - Remove unused inShopProviderNumber state - Extract SCHEDULE_FETCH_DAYS constant to replace magic number 14 - Add JSDoc to toDateString date-picker: - Move from src/ux-components/ to src/layouts/scheduling/ since it is only used by scheduling.vue - Replace inline SVGs with chevron-right-blue.svg and chevron-right-grey.svg asset files, using CSS scaleX(-1) flip for left-pointing variants - Import desktop breakpoint from new src/constants/breakpoints.js instead of hardcoding 768 --- src/assets/img/icons/chevron-right-blue.svg | 3 + src/assets/img/icons/chevron-right-grey.svg | 3 + src/constants/breakpoints.js | 5 ++ .../date-picker/date-picker.spec.js | 0 .../scheduling}/date-picker/date-picker.vue | 65 ++++++++++--------- src/layouts/scheduling/scheduling.vue | 11 +++- 6 files changed, 54 insertions(+), 33 deletions(-) create mode 100644 src/assets/img/icons/chevron-right-blue.svg create mode 100644 src/assets/img/icons/chevron-right-grey.svg create mode 100644 src/constants/breakpoints.js rename src/{ux-components => layouts/scheduling}/date-picker/date-picker.spec.js (100%) rename src/{ux-components => layouts/scheduling}/date-picker/date-picker.vue (56%) diff --git a/src/assets/img/icons/chevron-right-blue.svg b/src/assets/img/icons/chevron-right-blue.svg new file mode 100644 index 000000000..d7f2b9308 --- /dev/null +++ b/src/assets/img/icons/chevron-right-blue.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/assets/img/icons/chevron-right-grey.svg b/src/assets/img/icons/chevron-right-grey.svg new file mode 100644 index 000000000..f77c94b2d --- /dev/null +++ b/src/assets/img/icons/chevron-right-grey.svg @@ -0,0 +1,3 @@ + + + diff --git a/src/constants/breakpoints.js b/src/constants/breakpoints.js new file mode 100644 index 000000000..f69aaff40 --- /dev/null +++ b/src/constants/breakpoints.js @@ -0,0 +1,5 @@ +const Breakpoints = { + MD: 768, // This value is to match the md breakpoint in src/styles/ux-variables.scss +}; + +export { Breakpoints }; diff --git a/src/ux-components/date-picker/date-picker.spec.js b/src/layouts/scheduling/date-picker/date-picker.spec.js similarity index 100% rename from src/ux-components/date-picker/date-picker.spec.js rename to src/layouts/scheduling/date-picker/date-picker.spec.js diff --git a/src/ux-components/date-picker/date-picker.vue b/src/layouts/scheduling/date-picker/date-picker.vue similarity index 56% rename from src/ux-components/date-picker/date-picker.vue rename to src/layouts/scheduling/date-picker/date-picker.vue index f94350f7b..bd33bf4b9 100644 --- a/src/ux-components/date-picker/date-picker.vue +++ b/src/layouts/scheduling/date-picker/date-picker.vue @@ -5,12 +5,16 @@ :disabled="!canGoBack" aria-label="Previous dates" @click="goBack"> - - - - - - + +