Improve typing

This commit is contained in:
Adria Navarro 2025-01-08 13:37:28 +01:00
parent 265b22f2b8
commit 0112087af1
1 changed files with 4 additions and 10 deletions

View File

@ -1,6 +1,6 @@
import DataFetch from "./DataFetch" import DataFetch from "./DataFetch"
import { Helpers } from "@budibase/bbui" import { Helpers } from "@budibase/bbui"
import { Query } from "@budibase/types" import { ExecuteQueryRequest, Query } from "@budibase/types"
import { get } from "svelte/store" import { get } from "svelte/store"
interface QueryDatasource { interface QueryDatasource {
@ -12,7 +12,7 @@ interface QueryDatasource {
pageParam: string pageParam: string
} }
} }
queryParams: Record<string, string> queryParams?: Record<string, string>
parameters: { name: string; default: string }[] parameters: { name: string; default: string }[]
} }
@ -55,7 +55,7 @@ export default class QueryFetch extends DataFetch<QueryDatasource, Query> {
const type = definition?.fields?.pagination?.type const type = definition?.fields?.pagination?.type
// Set the default query params // Set the default query params
const parameters = Helpers.cloneDeep(datasource.queryParams) const parameters = Helpers.cloneDeep(datasource.queryParams || {})
for (const param of datasource?.parameters || []) { for (const param of datasource?.parameters || []) {
if (!parameters[param.name]) { if (!parameters[param.name]) {
parameters[param.name] = param.default parameters[param.name] = param.default
@ -63,13 +63,7 @@ export default class QueryFetch extends DataFetch<QueryDatasource, Query> {
} }
// Add pagination to query if supported // Add pagination to query if supported
const queryPayload: { const queryPayload: ExecuteQueryRequest = { parameters }
parameters: any
pagination?: {
page: number | null
limit: number
}
} = { parameters }
if (paginate && supportsPagination) { if (paginate && supportsPagination) {
const requestCursor = type === "page" ? parseInt(cursor || "1") : cursor const requestCursor = type === "page" ? parseInt(cursor || "1") : cursor
queryPayload.pagination = { page: requestCursor, limit } queryPayload.pagination = { page: requestCursor, limit }