diff options
author | bobzel <zzzman@gmail.com> | 2023-05-22 11:25:32 -0400 |
---|---|---|
committer | bobzel <zzzman@gmail.com> | 2023-05-22 11:25:32 -0400 |
commit | bed3309e1fda6597b2a8fea10ad82cd3a0402051 (patch) | |
tree | fe599bbdc5fca2c221e1e0f7a60995b7cd39f870 /src/fields/Types.ts | |
parent | 887a4f7e0fc25fde87b20a5de2e7b0aee561cc78 (diff) | |
parent | 3d26d5b2654841a9b92f3d66b28d1dc8e36cca6a (diff) |
merged physics with master
Diffstat (limited to 'src/fields/Types.ts')
-rw-r--r-- | src/fields/Types.ts | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/fields/Types.ts b/src/fields/Types.ts index 3ef7cb1de..251b1149d 100644 --- a/src/fields/Types.ts +++ b/src/fields/Types.ts @@ -3,7 +3,7 @@ import { List } from './List'; import { RefField } from './RefField'; import { DateField } from './DateField'; import { ScriptField } from './ScriptField'; -import { URLField, WebField, ImageField } from './URLField'; +import { URLField, WebField, ImageField, CsvField } from './URLField'; import { TextField } from '@material-ui/core'; import { RichTextField } from './RichTextField'; @@ -79,7 +79,8 @@ export function Cast<T extends CastCtor>(field: FieldResult, ctor: T, defaultVal } export function DocCast(field: FieldResult, defaultVal?: Doc) { - return Cast(field, Doc, null) ?? defaultVal; + const doc = Cast(field, Doc, null); + return doc && !(doc instanceof Promise) ? doc : (defaultVal as Doc); } export function NumCast(field: FieldResult, defaultVal: number | null = 0) { @@ -103,6 +104,9 @@ export function RTFCast(field: FieldResult) { export function ScriptCast(field: FieldResult, defaultVal: ScriptField | null = null) { return Cast(field, ScriptField, defaultVal); } +export function CsvCast(field: FieldResult, defaultVal: CsvField | null = null) { + return Cast(field, CsvField, defaultVal); +} export function WebCast(field: FieldResult, defaultVal: WebField | null = null) { return Cast(field, WebField, defaultVal); } |