From 1605a5aea7e8beddb775646e99f01982c1831d0f Mon Sep 17 00:00:00 2001 From: karooolis Date: Mon, 16 Jun 2025 10:43:03 +0300 Subject: [PATCH 1/4] adjust get row id --- .../worlds/[worldAddress]/explore/TablesViewer.tsx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/explorer/src/app/(explorer)/[chainName]/worlds/[worldAddress]/explore/TablesViewer.tsx b/packages/explorer/src/app/(explorer)/[chainName]/worlds/[worldAddress]/explore/TablesViewer.tsx index 24c833e66c..d47947c177 100644 --- a/packages/explorer/src/app/(explorer)/[chainName]/worlds/[worldAddress]/explore/TablesViewer.tsx +++ b/packages/explorer/src/app/(explorer)/[chainName]/worlds/[worldAddress]/explore/TablesViewer.tsx @@ -8,7 +8,6 @@ import { TriangleAlertIcon, } from "lucide-react"; import { parseAsJson, parseAsString, useQueryState } from "nuqs"; -import { keccak256, toHex } from "viem"; import { useCallback, useMemo } from "react"; import { Table as TableType } from "@latticexyz/config"; import { getKeySchema } from "@latticexyz/protocol-parser/internal"; @@ -127,6 +126,10 @@ export function TablesViewer({ table, isLiveQuery }: Props) { }, manualPagination: true, pageCount: -1, + getRowId: (row, idx) => + `${idx}-${Object.entries(row) + .map(([key, value]) => `${key}:${value}`) + .join("-")}`, onSortingChange: setSorting, onPaginationChange: handlePaginationChange, getCoreRowModel: getCoreRowModel(), @@ -135,7 +138,6 @@ export function TablesViewer({ table, isLiveQuery }: Props) { getFilteredRowModel: getFilteredRowModel(), onGlobalFilterChange: setGlobalFilter, globalFilterFn: "includesString", - getRowId: (row) => keccak256(toHex(`${row.id}-${row.dynamicdata}-${row.staticdata}`)), state: { sorting, globalFilter, From 00bdfa464794954e2e752ef6509b96da97ff24f4 Mon Sep 17 00:00:00 2001 From: Karolis Ramanauskas Date: Mon, 16 Jun 2025 10:45:24 +0300 Subject: [PATCH 2/4] Create khaki-zoos-tickle.md --- .changeset/khaki-zoos-tickle.md | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 .changeset/khaki-zoos-tickle.md diff --git a/.changeset/khaki-zoos-tickle.md b/.changeset/khaki-zoos-tickle.md new file mode 100644 index 0000000000..7fb4579476 --- /dev/null +++ b/.changeset/khaki-zoos-tickle.md @@ -0,0 +1,5 @@ +--- +"@latticexyz/explorer": patch +--- + +Tables viewer now correctly displays updated query data. From e5717e6548071913e6bf1e3dbf03932b2201fd1a Mon Sep 17 00:00:00 2001 From: karooolis Date: Mon, 16 Jun 2025 10:50:18 +0300 Subject: [PATCH 3/4] update getRowId --- .../worlds/[worldAddress]/explore/TablesViewer.tsx | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/packages/explorer/src/app/(explorer)/[chainName]/worlds/[worldAddress]/explore/TablesViewer.tsx b/packages/explorer/src/app/(explorer)/[chainName]/worlds/[worldAddress]/explore/TablesViewer.tsx index d47947c177..32ffce52c0 100644 --- a/packages/explorer/src/app/(explorer)/[chainName]/worlds/[worldAddress]/explore/TablesViewer.tsx +++ b/packages/explorer/src/app/(explorer)/[chainName]/worlds/[worldAddress]/explore/TablesViewer.tsx @@ -8,6 +8,7 @@ import { TriangleAlertIcon, } from "lucide-react"; import { parseAsJson, parseAsString, useQueryState } from "nuqs"; +import { keccak256, toHex } from "viem"; import { useCallback, useMemo } from "react"; import { Table as TableType } from "@latticexyz/config"; import { getKeySchema } from "@latticexyz/protocol-parser/internal"; @@ -126,10 +127,10 @@ export function TablesViewer({ table, isLiveQuery }: Props) { }, manualPagination: true, pageCount: -1, - getRowId: (row, idx) => - `${idx}-${Object.entries(row) - .map(([key, value]) => `${key}:${value}`) - .join("-")}`, + getRowId: (row) => { + const values = Object.values(row).join("-"); + return keccak256(toHex(`${query}-${values}`)); + }, onSortingChange: setSorting, onPaginationChange: handlePaginationChange, getCoreRowModel: getCoreRowModel(), From 3a2a4428cbd14b0a183f5f30d46e13d1e3b134fa Mon Sep 17 00:00:00 2001 From: karooolis Date: Mon, 16 Jun 2025 10:51:24 +0300 Subject: [PATCH 4/4] add idx to row id --- .../worlds/[worldAddress]/explore/TablesViewer.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/explorer/src/app/(explorer)/[chainName]/worlds/[worldAddress]/explore/TablesViewer.tsx b/packages/explorer/src/app/(explorer)/[chainName]/worlds/[worldAddress]/explore/TablesViewer.tsx index 32ffce52c0..c70a83d524 100644 --- a/packages/explorer/src/app/(explorer)/[chainName]/worlds/[worldAddress]/explore/TablesViewer.tsx +++ b/packages/explorer/src/app/(explorer)/[chainName]/worlds/[worldAddress]/explore/TablesViewer.tsx @@ -127,9 +127,9 @@ export function TablesViewer({ table, isLiveQuery }: Props) { }, manualPagination: true, pageCount: -1, - getRowId: (row) => { + getRowId: (row, idx) => { const values = Object.values(row).join("-"); - return keccak256(toHex(`${query}-${values}`)); + return keccak256(toHex(`${query}-${idx}-${values}`)); }, onSortingChange: setSorting, onPaginationChange: handlePaginationChange,