@seed-ship/mcp-ui-solid 4.0.2 → 4.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/DataPreviewSection.cjs +160 -49
- package/dist/components/DataPreviewSection.cjs.map +1 -1
- package/dist/components/DataPreviewSection.d.ts +2 -9
- package/dist/components/DataPreviewSection.d.ts.map +1 -1
- package/dist/components/DataPreviewSection.js +162 -51
- package/dist/components/DataPreviewSection.js.map +1 -1
- package/dist/components/UIResourceRenderer.cjs +210 -171
- package/dist/components/UIResourceRenderer.cjs.map +1 -1
- package/dist/components/UIResourceRenderer.d.ts.map +1 -1
- package/dist/components/UIResourceRenderer.js +210 -171
- package/dist/components/UIResourceRenderer.js.map +1 -1
- package/dist/types/chat-bus.d.ts +7 -1
- package/dist/types/chat-bus.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/DataPreviewSection.tsx +133 -64
- package/src/components/UIResourceRenderer.tsx +47 -2
- package/src/types/chat-bus.ts +7 -1
- package/tsconfig.tsbuildinfo +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat-bus.d.ts","sourceRoot":"","sources":["../../src/types/chat-bus.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"chat-bus.d.ts","sourceRoot":"","sources":["../../src/types/chat-bus.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,25 +1,21 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* DataPreviewSection — paginated data table with export
|
|
3
|
-
* v4.0.
|
|
2
|
+
* DataPreviewSection — paginated, sortable data table with export
|
|
3
|
+
* v4.0.4: Full pagination spec (auto-activate, pageSize=0 disable, showPageInfo, onPageChange)
|
|
4
4
|
*
|
|
5
5
|
* @experimental
|
|
6
|
-
*
|
|
7
|
-
* Features:
|
|
8
|
-
* - Column types (number right-aligned, string left-aligned)
|
|
9
|
-
* - Pagination (configurable page size)
|
|
10
|
-
* - CSV / JSON export buttons
|
|
11
|
-
* - Source attribution + freshness label
|
|
12
|
-
* - Number formatting (FR locale)
|
|
13
6
|
*/
|
|
14
7
|
|
|
15
|
-
import { createSignal, createMemo, For, Show } from 'solid-js'
|
|
8
|
+
import { createSignal, createMemo, createEffect, For, Show } from 'solid-js'
|
|
16
9
|
import type { DataPreviewContent, DataPreviewColumn } from '../types/chat-bus'
|
|
17
10
|
|
|
18
11
|
export interface DataPreviewSectionProps {
|
|
19
12
|
content: DataPreviewContent
|
|
20
13
|
}
|
|
21
14
|
|
|
22
|
-
|
|
15
|
+
type SortDir = 'asc' | 'desc' | null
|
|
16
|
+
|
|
17
|
+
// ─── Formatting helpers ─────────────────────────────────────
|
|
18
|
+
|
|
23
19
|
function formatNumber(value: unknown, format?: string): string {
|
|
24
20
|
if (typeof value !== 'number' || !isFinite(value)) return String(value ?? '')
|
|
25
21
|
if (format === 'percent') return `${(value * 100).toFixed(1)}%`
|
|
@@ -28,21 +24,40 @@ function formatNumber(value: unknown, format?: string): string {
|
|
|
28
24
|
return value.toLocaleString('fr-FR', { maximumFractionDigits: 2 })
|
|
29
25
|
}
|
|
30
26
|
|
|
31
|
-
/** Format a cell value based on column type */
|
|
32
27
|
function formatCell(value: unknown, col: DataPreviewColumn): string {
|
|
33
28
|
if (value == null) return '\u2014'
|
|
34
29
|
if (col.type === 'number') return formatNumber(value, col.format)
|
|
35
30
|
if (col.type === 'date' && typeof value === 'string') {
|
|
36
|
-
try {
|
|
37
|
-
return new Date(value).toLocaleDateString('fr-FR')
|
|
38
|
-
} catch {
|
|
39
|
-
return value
|
|
40
|
-
}
|
|
31
|
+
try { return new Date(value).toLocaleDateString('fr-FR') } catch { return value }
|
|
41
32
|
}
|
|
42
33
|
return String(value)
|
|
43
34
|
}
|
|
44
35
|
|
|
45
|
-
|
|
36
|
+
function compareValues(a: unknown, b: unknown, type?: string): number {
|
|
37
|
+
if (a == null && b == null) return 0
|
|
38
|
+
if (a == null) return 1
|
|
39
|
+
if (b == null) return -1
|
|
40
|
+
if (type === 'number') {
|
|
41
|
+
const na = typeof a === 'number' ? a : Number(a)
|
|
42
|
+
const nb = typeof b === 'number' ? b : Number(b)
|
|
43
|
+
if (isNaN(na) && isNaN(nb)) return 0
|
|
44
|
+
if (isNaN(na)) return 1
|
|
45
|
+
if (isNaN(nb)) return -1
|
|
46
|
+
return na - nb
|
|
47
|
+
}
|
|
48
|
+
if (type === 'date') {
|
|
49
|
+
const da = new Date(String(a)).getTime()
|
|
50
|
+
const db = new Date(String(b)).getTime()
|
|
51
|
+
if (isNaN(da) && isNaN(db)) return 0
|
|
52
|
+
if (isNaN(da)) return 1
|
|
53
|
+
if (isNaN(db)) return -1
|
|
54
|
+
return da - db
|
|
55
|
+
}
|
|
56
|
+
return String(a).localeCompare(String(b), 'fr', { sensitivity: 'base' })
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
// ─── Export helpers ─────────────────────────────────────────
|
|
60
|
+
|
|
46
61
|
function toCSV(columns: DataPreviewColumn[], rows: Record<string, unknown>[]): string {
|
|
47
62
|
const header = columns.map(c => `"${c.label.replace(/"/g, '""')}"`).join(';')
|
|
48
63
|
const body = rows.map(row =>
|
|
@@ -56,7 +71,6 @@ function toCSV(columns: DataPreviewColumn[], rows: Record<string, unknown>[]): s
|
|
|
56
71
|
return `${header}\n${body}`
|
|
57
72
|
}
|
|
58
73
|
|
|
59
|
-
/** Trigger browser download */
|
|
60
74
|
function downloadFile(content: string, filename: string, mimeType: string) {
|
|
61
75
|
const blob = new Blob([content], { type: mimeType })
|
|
62
76
|
const url = URL.createObjectURL(blob)
|
|
@@ -67,65 +81,95 @@ function downloadFile(content: string, filename: string, mimeType: string) {
|
|
|
67
81
|
URL.revokeObjectURL(url)
|
|
68
82
|
}
|
|
69
83
|
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
* Handles: direct DataPreviewContent, or wrapped in an extra layer.
|
|
73
|
-
*/
|
|
84
|
+
// ─── Content resolver ───────────────────────────────────────
|
|
85
|
+
|
|
74
86
|
function resolveContent(raw: unknown): DataPreviewContent | null {
|
|
75
87
|
if (!raw || typeof raw !== 'object') return null
|
|
76
88
|
const obj = raw as Record<string, unknown>
|
|
77
|
-
|
|
78
|
-
// Direct shape: { columns: [...], rows: [...] }
|
|
79
89
|
if (Array.isArray(obj.columns) && Array.isArray(obj.rows)) {
|
|
80
90
|
return obj as unknown as DataPreviewContent
|
|
81
91
|
}
|
|
82
|
-
|
|
83
|
-
// Wrapped shape: { content: { columns: [...], rows: [...] } }
|
|
84
92
|
if (obj.content && typeof obj.content === 'object') {
|
|
85
93
|
const inner = obj.content as Record<string, unknown>
|
|
86
94
|
if (Array.isArray(inner.columns) && Array.isArray(inner.rows)) {
|
|
87
95
|
return inner as unknown as DataPreviewContent
|
|
88
96
|
}
|
|
89
97
|
}
|
|
90
|
-
|
|
91
98
|
return null
|
|
92
99
|
}
|
|
93
100
|
|
|
101
|
+
// ─── Component ──────────────────────────────────────────────
|
|
102
|
+
|
|
94
103
|
export function DataPreviewSection(props: DataPreviewSectionProps) {
|
|
95
104
|
const content = createMemo(() => {
|
|
96
105
|
const resolved = resolveContent(props.content)
|
|
97
106
|
if (!resolved) {
|
|
98
|
-
console.warn(
|
|
99
|
-
'[MCP-UI] DataPreviewSection: invalid content — expected { columns: [...], rows: [...] }, got:',
|
|
100
|
-
props.content
|
|
101
|
-
)
|
|
107
|
+
console.warn('[MCP-UI] DataPreviewSection: invalid content — expected { columns, rows }', props.content)
|
|
102
108
|
}
|
|
103
109
|
return resolved
|
|
104
110
|
})
|
|
105
111
|
|
|
106
112
|
const columns = () => content()?.columns || []
|
|
107
|
-
const
|
|
108
|
-
const
|
|
109
|
-
const
|
|
113
|
+
const rawRows = () => content()?.rows || []
|
|
114
|
+
const pageSizeVal = () => content()?.pageSize ?? 25
|
|
115
|
+
const showPageInfo = () => content()?.showPageInfo !== false
|
|
110
116
|
|
|
111
|
-
const
|
|
112
|
-
const
|
|
117
|
+
const [page, setPage] = createSignal(content()?.initialPage ?? 0)
|
|
118
|
+
const [sortKey, setSortKey] = createSignal<string | null>(null)
|
|
119
|
+
const [sortDir, setSortDir] = createSignal<SortDir>(null)
|
|
113
120
|
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
121
|
+
// Notify parent on page change
|
|
122
|
+
createEffect(() => {
|
|
123
|
+
const p = page()
|
|
124
|
+
content()?.onPageChange?.(p)
|
|
117
125
|
})
|
|
118
126
|
|
|
127
|
+
const handleSort = (key: string) => {
|
|
128
|
+
if (sortKey() === key) {
|
|
129
|
+
if (sortDir() === 'asc') setSortDir('desc')
|
|
130
|
+
else { setSortKey(null); setSortDir(null) }
|
|
131
|
+
} else {
|
|
132
|
+
setSortKey(key)
|
|
133
|
+
setSortDir('asc')
|
|
134
|
+
}
|
|
135
|
+
setPage(0)
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
const sortedRows = createMemo(() => {
|
|
139
|
+
const r = rawRows()
|
|
140
|
+
const key = sortKey()
|
|
141
|
+
const dir = sortDir()
|
|
142
|
+
if (!key || !dir) return r
|
|
143
|
+
const col = columns().find(c => c.key === key)
|
|
144
|
+
return [...r].sort((a, b) => {
|
|
145
|
+
const cmp = compareValues(a[key], b[key], col?.type)
|
|
146
|
+
return dir === 'desc' ? -cmp : cmp
|
|
147
|
+
})
|
|
148
|
+
})
|
|
149
|
+
|
|
150
|
+
// Pagination: auto-enabled when rows > pageSize, disabled when pageSize=0
|
|
151
|
+
const isPaginated = () => pageSizeVal() > 0 && sortedRows().length > pageSizeVal()
|
|
152
|
+
const totalPages = () => isPaginated() ? Math.ceil(sortedRows().length / pageSizeVal()) : 1
|
|
153
|
+
|
|
154
|
+
const visibleRows = createMemo(() => {
|
|
155
|
+
if (!isPaginated()) return sortedRows()
|
|
156
|
+
const start = page() * pageSizeVal()
|
|
157
|
+
return sortedRows().slice(start, start + pageSizeVal())
|
|
158
|
+
})
|
|
159
|
+
|
|
160
|
+
const rangeStart = () => isPaginated() ? page() * pageSizeVal() + 1 : 1
|
|
161
|
+
const rangeEnd = () => isPaginated()
|
|
162
|
+
? Math.min((page() + 1) * pageSizeVal(), sortedRows().length)
|
|
163
|
+
: sortedRows().length
|
|
164
|
+
|
|
165
|
+
// Export ALL rows (not just page)
|
|
119
166
|
const handleExportCSV = () => {
|
|
120
167
|
const c = content()
|
|
121
168
|
if (!c) return
|
|
122
|
-
|
|
123
|
-
downloadFile(csv, 'data-export.csv', 'text/csv;charset=utf-8')
|
|
169
|
+
downloadFile(toCSV(c.columns, sortedRows()), 'data-export.csv', 'text/csv;charset=utf-8')
|
|
124
170
|
}
|
|
125
|
-
|
|
126
171
|
const handleExportJSON = () => {
|
|
127
|
-
|
|
128
|
-
downloadFile(json, 'data-export.json', 'application/json')
|
|
172
|
+
downloadFile(JSON.stringify(sortedRows(), null, 2), 'data-export.json', 'application/json')
|
|
129
173
|
}
|
|
130
174
|
|
|
131
175
|
const columnAlign = (col: DataPreviewColumn) => {
|
|
@@ -134,6 +178,11 @@ export function DataPreviewSection(props: DataPreviewSectionProps) {
|
|
|
134
178
|
return 'left'
|
|
135
179
|
}
|
|
136
180
|
|
|
181
|
+
const sortIndicator = (key: string) => {
|
|
182
|
+
if (sortKey() !== key) return '\u2195'
|
|
183
|
+
return sortDir() === 'asc' ? '\u2191' : '\u2193'
|
|
184
|
+
}
|
|
185
|
+
|
|
137
186
|
return (
|
|
138
187
|
<Show when={content()} fallback={
|
|
139
188
|
<div class="text-xs text-amber-600 dark:text-amber-400 p-2">
|
|
@@ -142,7 +191,7 @@ export function DataPreviewSection(props: DataPreviewSectionProps) {
|
|
|
142
191
|
}>
|
|
143
192
|
{(c) => (
|
|
144
193
|
<div class="data-preview-section">
|
|
145
|
-
{/* Header
|
|
194
|
+
{/* Header: source + export */}
|
|
146
195
|
<div class="flex items-center justify-between mb-2">
|
|
147
196
|
<div class="flex items-center gap-2 text-xs text-gray-500 dark:text-gray-400">
|
|
148
197
|
<Show when={c().source}>
|
|
@@ -154,20 +203,19 @@ export function DataPreviewSection(props: DataPreviewSectionProps) {
|
|
|
154
203
|
</span>
|
|
155
204
|
</Show>
|
|
156
205
|
</div>
|
|
157
|
-
|
|
158
206
|
<Show when={c().exportable !== false}>
|
|
159
207
|
<div class="flex items-center gap-1">
|
|
160
208
|
<button
|
|
161
209
|
class="px-2 py-1 text-xs rounded border border-gray-300 dark:border-gray-600 hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors"
|
|
162
210
|
onClick={handleExportCSV}
|
|
163
|
-
title=
|
|
211
|
+
title={`Export CSV (${sortedRows().length} rows)`}
|
|
164
212
|
>
|
|
165
213
|
CSV
|
|
166
214
|
</button>
|
|
167
215
|
<button
|
|
168
216
|
class="px-2 py-1 text-xs rounded border border-gray-300 dark:border-gray-600 hover:bg-gray-100 dark:hover:bg-gray-700 transition-colors"
|
|
169
217
|
onClick={handleExportJSON}
|
|
170
|
-
title=
|
|
218
|
+
title={`Export JSON (${sortedRows().length} rows)`}
|
|
171
219
|
>
|
|
172
220
|
JSON
|
|
173
221
|
</button>
|
|
@@ -183,17 +231,30 @@ export function DataPreviewSection(props: DataPreviewSectionProps) {
|
|
|
183
231
|
<For each={columns()}>
|
|
184
232
|
{(col) => (
|
|
185
233
|
<th
|
|
186
|
-
class="px-3 py-2 font-medium text-xs text-gray-600 dark:text-gray-400 uppercase tracking-wider border-b border-gray-200 dark:border-gray-700"
|
|
234
|
+
class="px-3 py-2 font-medium text-xs text-gray-600 dark:text-gray-400 uppercase tracking-wider border-b border-gray-200 dark:border-gray-700 cursor-pointer select-none hover:bg-gray-100 dark:hover:bg-gray-700/50 transition-colors"
|
|
187
235
|
style={{ "text-align": columnAlign(col) }}
|
|
236
|
+
onClick={() => handleSort(col.key)}
|
|
237
|
+
title={`Sort by ${col.label}`}
|
|
188
238
|
>
|
|
189
|
-
|
|
239
|
+
<span class="inline-flex items-center gap-1">
|
|
240
|
+
{col.label}
|
|
241
|
+
<span
|
|
242
|
+
class="text-[10px] leading-none"
|
|
243
|
+
classList={{
|
|
244
|
+
'opacity-30': sortKey() !== col.key,
|
|
245
|
+
'opacity-100 text-blue-600 dark:text-blue-400': sortKey() === col.key,
|
|
246
|
+
}}
|
|
247
|
+
>
|
|
248
|
+
{sortIndicator(col.key)}
|
|
249
|
+
</span>
|
|
250
|
+
</span>
|
|
190
251
|
</th>
|
|
191
252
|
)}
|
|
192
253
|
</For>
|
|
193
254
|
</tr>
|
|
194
255
|
</thead>
|
|
195
256
|
<tbody>
|
|
196
|
-
<For each={
|
|
257
|
+
<For each={visibleRows()}>
|
|
197
258
|
{(row, i) => (
|
|
198
259
|
<tr
|
|
199
260
|
class="border-b border-gray-100 dark:border-gray-800 hover:bg-gray-50 dark:hover:bg-gray-800/50 transition-colors"
|
|
@@ -216,30 +277,38 @@ export function DataPreviewSection(props: DataPreviewSectionProps) {
|
|
|
216
277
|
</table>
|
|
217
278
|
</div>
|
|
218
279
|
|
|
219
|
-
{/* Footer: pagination +
|
|
280
|
+
{/* Footer: pagination + page info */}
|
|
220
281
|
<div class="flex items-center justify-between mt-2 text-xs text-gray-500 dark:text-gray-400">
|
|
221
|
-
<
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
282
|
+
<Show when={showPageInfo()}>
|
|
283
|
+
<span>
|
|
284
|
+
{isPaginated()
|
|
285
|
+
? `Showing ${rangeStart()}\u2013${rangeEnd()} of ${sortedRows().length.toLocaleString('fr-FR')}`
|
|
286
|
+
: `${sortedRows().length} row${sortedRows().length !== 1 ? 's' : ''}`
|
|
287
|
+
}
|
|
288
|
+
{c().totalRows && c().totalRows! > sortedRows().length
|
|
289
|
+
? ` (${c().totalRows!.toLocaleString('fr-FR')} total)`
|
|
290
|
+
: ''
|
|
291
|
+
}
|
|
292
|
+
</span>
|
|
293
|
+
</Show>
|
|
294
|
+
<Show when={!showPageInfo()}><span /></Show>
|
|
226
295
|
|
|
227
|
-
<Show when={
|
|
296
|
+
<Show when={isPaginated()}>
|
|
228
297
|
<div class="flex items-center gap-1">
|
|
229
298
|
<button
|
|
230
|
-
class="px-2 py-1 rounded hover:bg-gray-100 dark:hover:bg-gray-700 disabled:opacity-40 transition-colors"
|
|
299
|
+
class="px-2 py-1 rounded hover:bg-gray-100 dark:hover:bg-gray-700 disabled:opacity-40 disabled:cursor-not-allowed transition-colors"
|
|
231
300
|
disabled={page() === 0}
|
|
232
301
|
onClick={() => setPage(p => p - 1)}
|
|
233
302
|
>
|
|
234
|
-
|
|
303
|
+
◀ Prev
|
|
235
304
|
</button>
|
|
236
|
-
<span>{page() + 1} / {totalPages()}</span>
|
|
305
|
+
<span class="px-2">Page {page() + 1} / {totalPages()}</span>
|
|
237
306
|
<button
|
|
238
|
-
class="px-2 py-1 rounded hover:bg-gray-100 dark:hover:bg-gray-700 disabled:opacity-40 transition-colors"
|
|
307
|
+
class="px-2 py-1 rounded hover:bg-gray-100 dark:hover:bg-gray-700 disabled:opacity-40 disabled:cursor-not-allowed transition-colors"
|
|
239
308
|
disabled={page() >= totalPages() - 1}
|
|
240
309
|
onClick={() => setPage(p => p + 1)}
|
|
241
310
|
>
|
|
242
|
-
|
|
311
|
+
Next ▶
|
|
243
312
|
</button>
|
|
244
313
|
</div>
|
|
245
314
|
</Show>
|
|
@@ -330,6 +330,24 @@ function TableRenderer(props: {
|
|
|
330
330
|
const tableParams = props.component.params as any
|
|
331
331
|
let scrollContainerRef: HTMLDivElement | undefined
|
|
332
332
|
|
|
333
|
+
// Client-side pagination (v4.0.4) — auto-enabled when rows > pageSize, no server config needed
|
|
334
|
+
const clientPageSize = () => tableParams.pageSize ?? 25
|
|
335
|
+
const hasServerPagination = () => !!tableParams.pagination
|
|
336
|
+
const allRows = () => tableParams.rows || []
|
|
337
|
+
const needsClientPagination = () =>
|
|
338
|
+
!hasServerPagination() && clientPageSize() > 0 && allRows().length > clientPageSize()
|
|
339
|
+
const [clientPage, setClientPage] = createSignal(tableParams.initialPage ?? 0)
|
|
340
|
+
const clientTotalPages = () => needsClientPagination() ? Math.ceil(allRows().length / clientPageSize()) : 1
|
|
341
|
+
const clientVisibleRows = createMemo(() => {
|
|
342
|
+
if (!needsClientPagination()) return allRows()
|
|
343
|
+
const start = clientPage() * clientPageSize()
|
|
344
|
+
return allRows().slice(start, start + clientPageSize())
|
|
345
|
+
})
|
|
346
|
+
const clientRangeStart = () => needsClientPagination() ? clientPage() * clientPageSize() + 1 : 1
|
|
347
|
+
const clientRangeEnd = () => needsClientPagination()
|
|
348
|
+
? Math.min((clientPage() + 1) * clientPageSize(), allRows().length)
|
|
349
|
+
: allRows().length
|
|
350
|
+
|
|
333
351
|
// Virtualization state
|
|
334
352
|
const [virtualizer, setVirtualizer] = createSignal<any>(null)
|
|
335
353
|
const [isVirtualizing, setIsVirtualizing] = createSignal(false)
|
|
@@ -464,10 +482,10 @@ function TableRenderer(props: {
|
|
|
464
482
|
|
|
465
483
|
const tableId = `table-${Math.random().toString(36).slice(2, 9)}`
|
|
466
484
|
|
|
467
|
-
// Standard table body (non-virtualized)
|
|
485
|
+
// Standard table body (non-virtualized) — uses client pagination when active
|
|
468
486
|
const StandardTableBody = () => (
|
|
469
487
|
<tbody class="bg-white dark:bg-gray-800 divide-y divide-gray-200 dark:divide-gray-700">
|
|
470
|
-
<For each={
|
|
488
|
+
<For each={clientVisibleRows().slice(0, DEFAULT_RESOURCE_LIMITS.maxTableRows)}>
|
|
471
489
|
{(row: any, i) => (
|
|
472
490
|
<tr class={`hover:bg-gray-50 dark:hover:bg-gray-700/50 transition-colors ${i() % 2 === 0 ? 'bg-white dark:bg-gray-800' : 'bg-gray-50/30 dark:bg-gray-800/50'}`}>
|
|
473
491
|
<For each={tableParams.columns}>
|
|
@@ -597,6 +615,7 @@ function TableRenderer(props: {
|
|
|
597
615
|
</table>
|
|
598
616
|
</div>
|
|
599
617
|
|
|
618
|
+
{/* Server-side pagination (legacy) */}
|
|
600
619
|
<Show when={tableParams.pagination}>
|
|
601
620
|
<div class="mt-3 flex items-center justify-between text-xs text-gray-500 dark:text-gray-400">
|
|
602
621
|
<span>
|
|
@@ -609,6 +628,32 @@ function TableRenderer(props: {
|
|
|
609
628
|
</span>
|
|
610
629
|
</div>
|
|
611
630
|
</Show>
|
|
631
|
+
|
|
632
|
+
{/* Client-side auto-pagination (v4.0.4) */}
|
|
633
|
+
<Show when={needsClientPagination()}>
|
|
634
|
+
<div class="mt-3 flex items-center justify-between text-xs text-gray-500 dark:text-gray-400">
|
|
635
|
+
<span>
|
|
636
|
+
Showing {clientRangeStart()}–{clientRangeEnd()} of {allRows().length.toLocaleString('fr-FR')}
|
|
637
|
+
</span>
|
|
638
|
+
<div class="flex items-center gap-1">
|
|
639
|
+
<button
|
|
640
|
+
class="px-2 py-1 rounded hover:bg-gray-100 dark:hover:bg-gray-700 disabled:opacity-40 disabled:cursor-not-allowed transition-colors"
|
|
641
|
+
disabled={clientPage() === 0}
|
|
642
|
+
onClick={() => setClientPage(p => p - 1)}
|
|
643
|
+
>
|
|
644
|
+
◀ Prev
|
|
645
|
+
</button>
|
|
646
|
+
<span class="px-2">Page {clientPage() + 1} / {clientTotalPages()}</span>
|
|
647
|
+
<button
|
|
648
|
+
class="px-2 py-1 rounded hover:bg-gray-100 dark:hover:bg-gray-700 disabled:opacity-40 disabled:cursor-not-allowed transition-colors"
|
|
649
|
+
disabled={clientPage() >= clientTotalPages() - 1}
|
|
650
|
+
onClick={() => setClientPage(p => p + 1)}
|
|
651
|
+
>
|
|
652
|
+
Next ▶
|
|
653
|
+
</button>
|
|
654
|
+
</div>
|
|
655
|
+
</div>
|
|
656
|
+
</Show>
|
|
612
657
|
</div>
|
|
613
658
|
</div>
|
|
614
659
|
</ExpandableWrapper>
|
package/src/types/chat-bus.ts
CHANGED
|
@@ -514,8 +514,14 @@ export interface DataPreviewContent {
|
|
|
514
514
|
freshness?: string
|
|
515
515
|
/** Enable export buttons (CSV/JSON) */
|
|
516
516
|
exportable?: boolean
|
|
517
|
-
/** Rows per page (default: 25) */
|
|
517
|
+
/** Rows per page (default: 25). Set 0 to disable pagination. */
|
|
518
518
|
pageSize?: number
|
|
519
|
+
/** Initial page (0-indexed, default: 0) */
|
|
520
|
+
initialPage?: number
|
|
521
|
+
/** Show "Showing X-Y of Z" counter (default: true) */
|
|
522
|
+
showPageInfo?: boolean
|
|
523
|
+
/** Callback when page changes (for server-side pagination) */
|
|
524
|
+
onPageChange?: (page: number) => void
|
|
519
525
|
}
|
|
520
526
|
|
|
521
527
|
/** Content for map scratchpad section (v3.1.0) */
|