diff options
author | bobzel <zzzman@gmail.com> | 2024-10-07 15:14:42 -0400 |
---|---|---|
committer | bobzel <zzzman@gmail.com> | 2024-10-07 15:14:42 -0400 |
commit | 4364cb0db3988537f6b9485146a16bc15d55e3cc (patch) | |
tree | 48c324cd66b55912585dd506675e156697c58b38 /src/fields/Doc.ts | |
parent | fbff73033b6c0f9b1214e9013c155ff085e7a737 (diff) | |
parent | 09b722789afa5d7c5edfc701978f17e4745113bc (diff) |
Merge branch 'master' into alyssa-starter
Diffstat (limited to 'src/fields/Doc.ts')
-rw-r--r-- | src/fields/Doc.ts | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/fields/Doc.ts b/src/fields/Doc.ts index 7a1ab3b4f..74f18cbc8 100644 --- a/src/fields/Doc.ts +++ b/src/fields/Doc.ts @@ -97,9 +97,8 @@ export namespace Field { }); return script; } - export function toString(fieldIn: unknown) { - const field = fieldIn as FieldType; - if (typeof field === 'string' || typeof field === 'number' || typeof field === 'boolean') return String(field); + export function toString(field: FieldResult<FieldType> | FieldType | undefined) { + if (field instanceof Promise || typeof field === 'string' || typeof field === 'number' || typeof field === 'boolean') return String(field); return field?.[ToString]?.() || ''; } export function IsField(field: unknown): field is FieldType; @@ -111,7 +110,7 @@ export namespace Field { export function Copy(field: unknown) { return field instanceof ObjectField ? ObjectField.MakeCopy(field) : (field as FieldType); } - UndoManager.SetFieldPrinter(toString); + UndoManager.SetFieldPrinter((val: unknown) => (IsField(val) ? toString(val) : '')); } export type FieldType = number | string | boolean | ObjectField | RefField; export type Opt<T> = T | undefined; @@ -463,7 +462,6 @@ export class Doc extends RefField { }); } } - export namespace Doc { export let SelectOnLoad: Doc | undefined; export function SetSelectOnLoad(doc: Doc | undefined) { |