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
Refactor scheduling.vue state to colocate providers with their time slots
Replace parallel inShopProviders/inshopTimeSlots arrays with a single
inShopProvidersAndTimeslots array of { provider, timeSlots } objects, and
combine mobileTimeSlots/mobileProviderNumber into a single
mobileProviderAndTimeSlot object. Also extract SCHEDULE_FETCH_DAYS constant
to replace the magic number 14
add JSDoc to toDateString, and remove the
unused inShopProviderNumber state.
Split address was not handling an address without any spaces in it and would throw a JS exception in a promise, which is a scenario we identified this release as not logging today (fix for 4/23).
Chloe should review to see if we want to be even smarter with the parsing and actually split out cases like "123Test" to "123" "Test" but the fixes keep approximately the same logic as before except " 123 Test" now becomes "123" "Test".
Heritage is trying to convert any non-null non-empty value to a guid and this causes a failure if "null" is sent as the value as its setting to the string "null".
Unsure if this change should have been made so backing it out. Doing this made local 2.0 to fixmyglassdev work right but those two domains wouldn't share cookies and Mark thought the behavior to say null in the query string could have been intentional at one time.
Best case this is part of why the fix didn't work in an actual environment although the logic to stop infinite redirect loops works, so that's a positive!
Could end up its necessary to put back but there's no justification for it at this time, so better not to make it.