Browse Source

Simplify loading logic to prevent empty state flashing when loading data in data providers

pull/1490/head
Andrew Kingston 5 years ago
parent
commit
d8bbb5e06d
  1. 8
      packages/client/src/api/tables.js
  2. 3
      packages/standard-components/src/DataProvider.svelte

8
packages/client/src/api/tables.js

@ -23,7 +23,6 @@ export const fetchTableData = async tableId => {
export const searchTable = async ({
tableId,
query,
raw,
bookmark,
limit,
sort,
@ -31,14 +30,15 @@ export const searchTable = async ({
sortType,
paginate,
}) => {
if (!tableId || (!query && !raw)) {
return
if (!tableId || !query) {
return {
rows: [],
}
}
const res = await API.post({
url: `/api/search/${tableId}/rows`,
body: {
query,
raw,
bookmark,
limit,
sort,

3
packages/standard-components/src/DataProvider.svelte

@ -114,7 +114,6 @@
sortType,
paginate
) => {
console.log("FETCH")
loading = true
if (dataSource?.type === "table") {
const res = await API.searchTable({
@ -248,7 +247,7 @@
<div use:styleable={$component.styles} class="container">
<Provider {actions} data={dataContext}>
{#if !loaded && loading}
{#if !loaded}
<div class="loading">
<ProgressCircle />
</div>

Loading…
Cancel
Save