Skip to content

Commit 76a7f1e

Browse files
committed
Update to support new formula evaluation for view config values
1 parent a2673e9 commit 76a7f1e

1 file changed

Lines changed: 10 additions & 25 deletions

File tree

src/map-view.ts

Lines changed: 10 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@ import {
44
debounce,
55
Menu,
66
QueryController,
7-
Value,
8-
StringValue,
97
NullValue,
108
ViewOption,
119
} from 'obsidian';
@@ -532,33 +530,19 @@ export class MapView extends BasesView {
532530
}
533531

534532
private getCenterFromConfig(): [number, number] {
535-
let centerConfig: Value;
536-
533+
let centerConfig: unknown = null;
534+
537535
try {
538536
centerConfig = this.config.getEvaluatedFormula(this, 'center');
539-
} catch (error) {
540-
// Formula evaluation failed (e.g., this.file is null when no active file)
541-
// Fall back to raw config value
542-
const centerConfigStr = this.config.get('center');
543-
if (String.isString(centerConfigStr)) {
544-
centerConfig = new StringValue(centerConfigStr);
545-
}
546-
else {
547-
return DEFAULT_MAP_CENTER;
537+
if (centerConfig === null || centerConfig === undefined || centerConfig === NullValue.value) {
538+
// If a formula is not specified, then get the static value.
539+
centerConfig = this.config.get('center');
548540
}
541+
} catch (error) {
542+
return DEFAULT_MAP_CENTER;
549543
}
550544

551-
// Support for legacy string format.
552-
if (Value.equals(centerConfig, NullValue.value)) {
553-
const centerConfigStr = this.config.get('center');
554-
if (String.isString(centerConfigStr)) {
555-
centerConfig = new StringValue(centerConfigStr);
556-
}
557-
else {
558-
return DEFAULT_MAP_CENTER;
559-
}
560-
}
561-
return coordinateFromValue(centerConfig) || DEFAULT_MAP_CENTER;
545+
return parseLatLng(centerConfig) || DEFAULT_MAP_CENTER;
562546
}
563547

564548
private getConfigSnapshot(): string {
@@ -695,9 +679,10 @@ export class MapView extends BasesView {
695679

696680
{
697681
displayName: 'Center coordinates',
698-
type: 'formula',
682+
type: 'text',
699683
key: 'center',
700684
placeholder: '[latitude, longitude]',
685+
allowFormula: true,
701686
},
702687
{
703688
displayName: 'Default zoom',

0 commit comments

Comments
 (0)