@@ -138,7 +138,12 @@ function formatXyDataset(
138138 color: accent .value ,
139139 },
140140 ],
141- dates: dataset .map (d => ` ${d .weekStart }\n to ${d .weekEnd } ` ),
141+ dates: dataset .map (d =>
142+ $t (' package.downloads.date_range_multiline' , {
143+ start: d .weekStart ,
144+ end: d .weekEnd ,
145+ }),
146+ ),
142147 }
143148 }
144149 if (selectedGranularity === ' daily' && isDailyDataset (dataset )) {
@@ -199,14 +204,16 @@ function safeMax(a: string, b: string): string {
199204 return a .localeCompare (b ) >= 0 ? a : b
200205}
201206
202- function extractDates(dateLabel : string ) {
203- if (typeof dateLabel !== ' string' ) return []
207+ function extractDates(dateLabel : string ): [string , string ] | null {
208+ const matches = dateLabel .match (/ \b (\d {4} (?:-\d {2} -\d {2} )? )\b / g ) // either yyyy or yyyy-mm-dd
209+ if (! matches ) return null
204210
205- const parts = dateLabel .trim ().split (/ \s + / ).filter (Boolean )
211+ const first = matches .at (0 )
212+ const last = matches .at (- 1 )
206213
207- if (parts . length < 2 ) return []
214+ if (! first || ! last || first === last ) return null
208215
209- return [parts [ 0 ], parts [ parts . length - 1 ] ]
216+ return [first , last ]
210217}
211218
212219/**
@@ -553,7 +560,8 @@ const config = computed(() => {
553560 ? undefined
554561 : ({ absoluteIndex , side }: { absoluteIndex: number ; side: ' left' | ' right' }) => {
555562 const parts = extractDates (chartData .value .dates [absoluteIndex ] ?? ' ' )
556- return side === ' left' ? parts [0 ] : parts .at (- 1 )
563+ if (! parts ) return ' '
564+ return side === ' left' ? parts [0 ] : parts [1 ]
557565 },
558566 highlightColor: colors .value .bgElevated ,
559567 minimap: {
@@ -670,7 +678,7 @@ const config = computed(() => {
670678 </div >
671679
672680 <ClientOnly v-if =" inModal && chartData.dataset" >
673- <VueUiXy :dataset =" chartData.dataset" :config =" config" >
681+ <VueUiXy :dataset =" chartData.dataset" :config =" config" class = " [direction:ltr] " >
674682 <template #menuIcon =" { isOpen } " >
675683 <span v-if =" isOpen" class =" i-carbon:close w-6 h-6" aria-hidden =" true" />
676684 <span v-else class =" i-carbon:overflow-menu-vertical w-6 h-6" aria-hidden =" true" />
0 commit comments