mirror of
https://github.com/blitzkit/blitzkit.git
synced 2026-10-23 19:49:50 +02:00
feat: scroll to top on change
This commit is contained in:
1 parent
17bfb7c397
commit
ef91eadaea
4 files changed
+10
-1
No files matched your search
@@ -26,6 +26,7 @@
|
|||||||
"markdown-to-jsx": "^7.5.0",
|
"markdown-to-jsx": "^7.5.0",
|
||||||
"nanostores": "^0.11.3",
|
"nanostores": "^0.11.3",
|
||||||
"react": "^18.3.1",
|
"react": "^18.3.1",
|
||||||
|
"react-device-detect": "^2.2.3",
|
||||||
"react-dom": "^18.3.1",
|
"react-dom": "^18.3.1",
|
||||||
"react-promise-suspense": "^0.3.4",
|
"react-promise-suspense": "^0.3.4",
|
||||||
"three": "^0.169.0",
|
"three": "^0.169.0",
|
||||||
|
|||||||
@@ -42,6 +42,8 @@ export function TierListTile(props: TierListTileProps) {
|
|||||||
|
|
||||||
lastPosition.current = { x: event.clientX, y: event.clientY };
|
lastPosition.current = { x: event.clientX, y: event.clientY };
|
||||||
|
|
||||||
|
window.scrollTo({ behavior: 'smooth', top: 124 });
|
||||||
|
|
||||||
window.addEventListener('pointermove', handlePointerMove);
|
window.addEventListener('pointermove', handlePointerMove);
|
||||||
window.addEventListener('pointerup', handlePointerUp);
|
window.addEventListener('pointerup', handlePointerUp);
|
||||||
|
|
||||||
|
|||||||
@@ -1,7 +1,10 @@
|
|||||||
|
import { fetchTankDefinitions } from '@blitzkit/core';
|
||||||
import { useEffect } from 'react';
|
import { useEffect } from 'react';
|
||||||
import { generateTierListParams } from '../../core/blitzkit/generateTierListParams';
|
import { generateTierListParams } from '../../core/blitzkit/generateTierListParams';
|
||||||
import { TierList } from '../../stores/tierList';
|
import { TierList } from '../../stores/tierList';
|
||||||
|
|
||||||
|
const tankDefinitions = await fetchTankDefinitions();
|
||||||
|
|
||||||
export function URLManager() {
|
export function URLManager() {
|
||||||
const tanks = TierList.use((state) => state.tanks);
|
const tanks = TierList.use((state) => state.tanks);
|
||||||
const mutateTierList = TierList.useMutation();
|
const mutateTierList = TierList.useMutation();
|
||||||
@@ -12,7 +15,10 @@ export function URLManager() {
|
|||||||
params.forEach((value, key) => {
|
params.forEach((value, key) => {
|
||||||
if (key.startsWith('row-')) {
|
if (key.startsWith('row-')) {
|
||||||
const index = Number.parseInt(key.slice(4), 10);
|
const index = Number.parseInt(key.slice(4), 10);
|
||||||
const values = value.split(',').map(parseInt).filter(Boolean);
|
const values = value
|
||||||
|
.split(',')
|
||||||
|
.map(Number)
|
||||||
|
.filter((id) => id in tankDefinitions.tanks);
|
||||||
|
|
||||||
mutateTierList((draft) => {
|
mutateTierList((draft) => {
|
||||||
draft.tanks[index] = values;
|
draft.tanks[index] = values;
|
||||||
|
|||||||
Reference in new issue
Block a user