Stop throwing in frontend code (#2654)

Return error instead of throw
This commit is contained in:
49fl
2024-06-24 11:45:40 -04:00
committed by GitHub
parent f7196e7eb0
commit f4877cb160
67 changed files with 5127 additions and 4523 deletions

View File

@ -6,6 +6,7 @@ import { ProjectRoute } from 'wasm-lib/kcl/bindings/ProjectRoute'
import { parseProjectRoute, readAppSettingsFile } from './tauri'
import { parseProjectRoute as parseProjectRouteWasm } from 'lang/wasm'
import { readLocalStorageAppSettingsFile } from './settings/settingsUtils'
import { err } from 'lib/trap'
const prependRoutes =
(routesObject: Record<string, string>) => (prepend: string) => {
@ -33,21 +34,25 @@ export const BROWSER_PATH = `%2F${BROWSER_PROJECT_NAME}%2F${BROWSER_FILE_NAME}${
export async function getProjectMetaByRouteId(
id?: string,
configuration?: Configuration
configuration?: Configuration | Error
): Promise<ProjectRoute | undefined> {
if (!id) return undefined
const inTauri = isTauri()
if (!configuration) {
if (configuration === undefined) {
configuration = inTauri
? await readAppSettingsFile()
: readLocalStorageAppSettingsFile()
}
if (err(configuration)) return Promise.reject(configuration)
const route = inTauri
? await parseProjectRoute(configuration, id)
: parseProjectRouteWasm(configuration, id)
if (err(route)) return Promise.reject(route)
return route
}