|
|
@ -48,7 +48,6 @@ export const fetchTableData = opts => { |
|
|
const fetchPage = async bookmark => { |
|
|
const fetchPage = async bookmark => { |
|
|
lastBookmark = bookmark |
|
|
lastBookmark = bookmark |
|
|
const { tableId, limit, sortColumn, sortOrder, paginate } = options |
|
|
const { tableId, limit, sortColumn, sortOrder, paginate } = options |
|
|
store.update($store => ({ ...$store, loading: true })) |
|
|
|
|
|
const res = await API.post(`/api/${options.tableId}/search`, { |
|
|
const res = await API.post(`/api/${options.tableId}/search`, { |
|
|
tableId, |
|
|
tableId, |
|
|
query, |
|
|
query, |
|
|
@ -59,7 +58,6 @@ export const fetchTableData = opts => { |
|
|
paginate, |
|
|
paginate, |
|
|
bookmark, |
|
|
bookmark, |
|
|
}) |
|
|
}) |
|
|
store.update($store => ({ ...$store, loading: false, loaded: true })) |
|
|
|
|
|
return await res.json() |
|
|
return await res.json() |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
@ -103,7 +101,7 @@ export const fetchTableData = opts => { |
|
|
if (!schema) { |
|
|
if (!schema) { |
|
|
return |
|
|
return |
|
|
} |
|
|
} |
|
|
store.update($store => ({ ...$store, schema })) |
|
|
store.update($store => ({ ...$store, schema, loading: true })) |
|
|
|
|
|
|
|
|
// Work out what sort type to use
|
|
|
// Work out what sort type to use
|
|
|
if (!sortColumn || !schema[sortColumn]) { |
|
|
if (!sortColumn || !schema[sortColumn]) { |
|
|
@ -135,6 +133,7 @@ export const fetchTableData = opts => { |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
// Fetch next page
|
|
|
// Fetch next page
|
|
|
|
|
|
store.update($store => ({ ...$store, loading: true })) |
|
|
const page = await fetchPage(state.bookmarks[state.pageNumber + 1]) |
|
|
const page = await fetchPage(state.bookmarks[state.pageNumber + 1]) |
|
|
|
|
|
|
|
|
// Update state
|
|
|
// Update state
|
|
|
@ -148,6 +147,7 @@ export const fetchTableData = opts => { |
|
|
pageNumber: pageNumber + 1, |
|
|
pageNumber: pageNumber + 1, |
|
|
rows: page.rows, |
|
|
rows: page.rows, |
|
|
bookmarks, |
|
|
bookmarks, |
|
|
|
|
|
loading: false, |
|
|
} |
|
|
} |
|
|
}) |
|
|
}) |
|
|
} |
|
|
} |
|
|
@ -160,6 +160,7 @@ export const fetchTableData = opts => { |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
// Fetch previous page
|
|
|
// Fetch previous page
|
|
|
|
|
|
store.update($store => ({ ...$store, loading: true })) |
|
|
const page = await fetchPage(state.bookmarks[state.pageNumber - 1]) |
|
|
const page = await fetchPage(state.bookmarks[state.pageNumber - 1]) |
|
|
|
|
|
|
|
|
// Update state
|
|
|
// Update state
|
|
|
@ -168,6 +169,7 @@ export const fetchTableData = opts => { |
|
|
...$store, |
|
|
...$store, |
|
|
pageNumber: $store.pageNumber - 1, |
|
|
pageNumber: $store.pageNumber - 1, |
|
|
rows: page.rows, |
|
|
rows: page.rows, |
|
|
|
|
|
loading: false, |
|
|
} |
|
|
} |
|
|
}) |
|
|
}) |
|
|
} |
|
|
} |
|
|
|