Fix activity calendar for desktop widget (#5200)
* Fix activity calendar for desktop widget * fetch past 21 weeks for activity widgets * Cleanup * forEach -> map * Revert "forEach -> map" This reverts commit b72e180ee4a788ff1a3c2955a061646561b2b735.
This commit is contained in:
		
							parent
							
								
									8a31e5fd0f
								
							
						
					
					
						commit
						eb8ef35122
					
				
					 3 changed files with 8 additions and 8 deletions
				
			
		|  | @ -5,7 +5,7 @@ | ||||||
| 		:x="record.x" :y="record.date.weekday" | 		:x="record.x" :y="record.date.weekday" | ||||||
| 		rx="1" ry="1" | 		rx="1" ry="1" | ||||||
| 		fill="transparent"> | 		fill="transparent"> | ||||||
| 		<title>{{ record.date.year }}/{{ record.date.month }}/{{ record.date.day }}</title> | 		<title>{{ record.date.year }}/{{ record.date.month + 1 }}/{{ record.date.day }}</title> | ||||||
| 	</rect> | 	</rect> | ||||||
| 	<rect v-for="record in data" class="day" | 	<rect v-for="record in data" class="day" | ||||||
| 		:width="record.v" :height="record.v" | 		:width="record.v" :height="record.v" | ||||||
|  | @ -39,17 +39,17 @@ export default Vue.extend({ | ||||||
| 		const month = now.getMonth(); | 		const month = now.getMonth(); | ||||||
| 		const day = now.getDate(); | 		const day = now.getDate(); | ||||||
| 
 | 
 | ||||||
| 		let x = 0; | 		let x = 20; | ||||||
| 		this.data.slice().reverse().forEach((d, i) => { | 		this.data.slice().forEach((d, i) => { | ||||||
| 			d.x = x; | 			d.x = x; | ||||||
| 
 | 
 | ||||||
| 			const date = new Date(year, month, day - i); | 			const date = new Date(year, month, day - i); | ||||||
| 			d.date = { | 			d.date = { | ||||||
| 				year: date.getFullYear(), | 				year: date.getFullYear(), | ||||||
| 				month: date.getMonth(), | 				month: date.getMonth(), | ||||||
| 				day: date.getDate() | 				day: date.getDate(), | ||||||
|  | 				weekday: date.getDay() | ||||||
| 			}; | 			}; | ||||||
| 			d.date.weekday = (new Date(d.date.year, d.date.month - 1, d.date.day)).getDay(); |  | ||||||
| 
 | 
 | ||||||
| 			d.v = peak == 0 ? 0 : d.total / (peak / 2); | 			d.v = peak == 0 ? 0 : d.total / (peak / 2); | ||||||
| 			if (d.v > 1) d.v = 1; | 			if (d.v > 1) d.v = 1; | ||||||
|  | @ -58,7 +58,7 @@ export default Vue.extend({ | ||||||
| 			const cl = 15 + ((1 - d.v) * 80); | 			const cl = 15 + ((1 - d.v) * 80); | ||||||
| 			d.color = `hsl(${ch}, ${cs}%, ${cl}%)`; | 			d.color = `hsl(${ch}, ${cs}%, ${cl}%)`; | ||||||
| 
 | 
 | ||||||
| 			if (d.date.weekday == 6) x++; | 			if (d.date.weekday == 0) x--; | ||||||
| 		}); | 		}); | ||||||
| 	} | 	} | ||||||
| }); | }); | ||||||
|  |  | ||||||
|  | @ -46,7 +46,7 @@ export default Vue.extend({ | ||||||
| 	props: ['data'], | 	props: ['data'], | ||||||
| 	data() { | 	data() { | ||||||
| 		return { | 		return { | ||||||
| 			viewBoxX: 140, | 			viewBoxX: 147, | ||||||
| 			viewBoxY: 60, | 			viewBoxY: 60, | ||||||
| 			zoom: 1, | 			zoom: 1, | ||||||
| 			pos: 0, | 			pos: 0, | ||||||
|  |  | ||||||
|  | @ -48,7 +48,7 @@ export default Vue.extend({ | ||||||
| 		this.$root.api('charts/user/notes', { | 		this.$root.api('charts/user/notes', { | ||||||
| 			userId: this.user.id, | 			userId: this.user.id, | ||||||
| 			span: 'day', | 			span: 'day', | ||||||
| 			limit: 7 * 20 | 			limit: 7 * 21 | ||||||
| 		}).then(activity => { | 		}).then(activity => { | ||||||
| 			this.activity = activity.diffs.normal.map((_, i) => ({ | 			this.activity = activity.diffs.normal.map((_, i) => ({ | ||||||
| 				total: activity.diffs.normal[i] + activity.diffs.reply[i] + activity.diffs.renote[i], | 				total: activity.diffs.normal[i] + activity.diffs.reply[i] + activity.diffs.renote[i], | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue