Fix types
This commit is contained in:
parent
588d4b7485
commit
8842bfe3b4
|
@ -1,7 +1,7 @@
|
|||
import { get } from "svelte/store"
|
||||
import { selectedScreen as selectedScreenStore } from "./screens"
|
||||
import { findComponentPath } from "@/helpers/components"
|
||||
import { Component } from "@budibase/types"
|
||||
import { Component, Screen } from "@budibase/types"
|
||||
import { BudiStore, PersistenceType } from "@/stores/BudiStore"
|
||||
|
||||
interface OpenNodesState {
|
||||
|
|
|
@ -35,7 +35,7 @@ export const initialScreenState: ScreenState = {
|
|||
export class ScreenStore extends BudiStore<ScreenState> {
|
||||
history: any
|
||||
delete: any
|
||||
save: any
|
||||
save: (screen: Screen) => Promise<Screen>
|
||||
|
||||
constructor() {
|
||||
super(initialScreenState)
|
||||
|
@ -281,7 +281,10 @@ export class ScreenStore extends BudiStore<ScreenState> {
|
|||
* supports deeply mutating the current doc rather than just appending data.
|
||||
*/
|
||||
sequentialScreenPatch = Utils.sequential(
|
||||
async (patchFn: (screen: Screen) => any, screenId: string) => {
|
||||
async (
|
||||
patchFn: (screen: Screen) => boolean,
|
||||
screenId: string
|
||||
): Promise<Screen | void> => {
|
||||
const state = get(this.store)
|
||||
const screen = state.screens.find(screen => screen._id === screenId)
|
||||
if (!screen) {
|
||||
|
|
|
@ -17,12 +17,13 @@ export const sequential = <
|
|||
TFunction extends (...args: any[]) => Promise<TReturn>
|
||||
>(
|
||||
fn: TFunction
|
||||
): ((...args: Parameters<TFunction>) => Promise<TReturn | undefined>) => {
|
||||
let queue: any[] = []
|
||||
return (...params: Parameters<TFunction>) => {
|
||||
return new Promise<TReturn | undefined>((resolve, reject) => {
|
||||
): TFunction => {
|
||||
let queue: (() => Promise<void>)[] = []
|
||||
const result = (...params: Parameters<TFunction>) => {
|
||||
return new Promise<TReturn>((resolve, reject) => {
|
||||
queue.push(async () => {
|
||||
let data, error
|
||||
let data: TReturn | undefined
|
||||
let error: unknown
|
||||
try {
|
||||
data = await fn(...params)
|
||||
} catch (err) {
|
||||
|
@ -35,7 +36,7 @@ export const sequential = <
|
|||
if (error) {
|
||||
reject(error)
|
||||
} else {
|
||||
resolve(data)
|
||||
resolve(data!)
|
||||
}
|
||||
})
|
||||
if (queue.length === 1) {
|
||||
|
@ -43,6 +44,7 @@ export const sequential = <
|
|||
}
|
||||
})
|
||||
}
|
||||
return result as TFunction
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue