mirror of
https://github.com/zadam/trilium.git
synced 2025-10-20 15:19:01 +02:00
feat(views/geo): set default theme
This commit is contained in:
parent
45457c6f76
commit
60e7b9ffb0
@ -207,12 +207,13 @@ export default class BookPropertiesWidget extends NoteContextAwareWidget {
|
||||
const $select = $("<select>", {
|
||||
class: "form-select form-select-sm"
|
||||
});
|
||||
const actualValue = note.getLabelValue(property.bindToLabel) ?? property.defaultValue;
|
||||
for (const option of property.options) {
|
||||
const $option = $("<option>", {
|
||||
value: option.value,
|
||||
text: option.label
|
||||
});
|
||||
if (note.getLabelValue(property.bindToLabel) === option.value) {
|
||||
if (actualValue === option.value) {
|
||||
$option.prop("selected", true);
|
||||
}
|
||||
$select.append($option);
|
||||
|
@ -3,7 +3,7 @@ import FNote from "../../entities/fnote";
|
||||
import attributes from "../../services/attributes";
|
||||
import { ViewTypeOptions } from "../../services/note_list_renderer"
|
||||
import NoteContextAwareWidget from "../note_context_aware_widget";
|
||||
import { MAP_LAYERS } from "../view_widgets/geo_view/map_layer";
|
||||
import { DEFAULT_MAP_LAYER_NAME, MAP_LAYERS } from "../view_widgets/geo_view/map_layer";
|
||||
|
||||
interface BookConfig {
|
||||
properties: BookProperty[];
|
||||
@ -35,6 +35,10 @@ interface ComboBoxProperty {
|
||||
type: "combobox",
|
||||
label: string;
|
||||
bindToLabel: string;
|
||||
/**
|
||||
* The default value is used when the label is not set.
|
||||
*/
|
||||
defaultValue?: string;
|
||||
options: { value: string; label: string }[];
|
||||
}
|
||||
|
||||
@ -103,6 +107,7 @@ export const bookPropertiesConfig: Record<ViewTypeOptions, BookConfig> = {
|
||||
label: t("book_properties_config.map-style"),
|
||||
type: "combobox",
|
||||
bindToLabel: "mapStyle",
|
||||
defaultValue: DEFAULT_MAP_LAYER_NAME,
|
||||
options: Object.entries(MAP_LAYERS).map(([id, layer]) => ({
|
||||
value: id,
|
||||
label: layer.name
|
||||
|
@ -11,7 +11,7 @@ import { CommandListenerData, EventData } from "../../../components/app_context.
|
||||
import { createNewNote, moveMarker, setupDragging } from "./editing.js";
|
||||
import { openMapContextMenu } from "./context_menu.js";
|
||||
import attributes from "../../../services/attributes.js";
|
||||
import { MAP_LAYERS } from "./map_layer.js";
|
||||
import { DEFAULT_MAP_LAYER_NAME, MAP_LAYERS } from "./map_layer.js";
|
||||
|
||||
const TPL = /*html*/`
|
||||
<div class="geo-view">
|
||||
@ -146,9 +146,9 @@ export default class GeoView extends ViewMode<MapData> {
|
||||
worldCopyJump: true
|
||||
});
|
||||
|
||||
const layerName = this.parentNote.getLabelValue("mapStyle") ?? "openstreetmap";
|
||||
const layerName = this.parentNote.getLabelValue("mapStyle") ?? DEFAULT_MAP_LAYER_NAME;
|
||||
let layer: Layer;
|
||||
const layerData = MAP_LAYERS[layerName] ?? MAP_LAYERS["openstreetmap"];
|
||||
const layerData = MAP_LAYERS[layerName];
|
||||
|
||||
if (layerData.type === "vector") {
|
||||
const style = (typeof layerData.style === "string" ? layerData.style : await layerData.style());
|
||||
|
@ -50,3 +50,4 @@ export const MAP_LAYERS: Record<string, VectorLayer | RasterLayer> = {
|
||||
}
|
||||
};
|
||||
|
||||
export const DEFAULT_MAP_LAYER_NAME: keyof typeof MAP_LAYERS = "versatiles-colorful";
|
||||
|
Loading…
x
Reference in New Issue
Block a user