signalk-livedepth-plugin 0.3.17 → 0.3.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -4,6 +4,17 @@ All notable changes to this project are documented here, newest first. The
4
4
  format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and
5
5
  versions follow [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
+ ## [0.3.18] - 2026-11-02
8
+
9
+ ### Changed
10
+
11
+ - **The layer now always draws the plugin's bathymetry grid.** The History API
12
+ is no longer offered as a depth source in the layer's settings; the source
13
+ selector and its history-only window/interval fields are gone. The separate
14
+ History import in the plugin's server settings is unchanged — that is what
15
+ seeds the grid. Settings saved with the old History source migrate
16
+ automatically.
17
+
7
18
  ## [0.3.17] - 2026-11-01
8
19
 
9
20
  ### Fixed
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "signalk-livedepth-plugin",
3
- "version": "0.3.17",
3
+ "version": "0.3.18",
4
4
  "description": "Build and visualise a depth map from your own soundings, live on the chart as your vessel moves.",
5
5
  "keywords": [
6
6
  "signalk-node-server-plugin",
@@ -665,7 +665,6 @@ function connectExtension(opts = {}) {
665
665
  // src/web/shared/settings.ts
666
666
  var DEFAULT_SETTINGS = {
667
667
  enabled: true,
668
- source: "history",
669
668
  quality: "auto",
670
669
  fullResolution: true,
671
670
  vectorContours: true,
@@ -675,8 +674,6 @@ var DEFAULT_SETTINGS = {
675
674
  minorContourWidthPx: 0.75,
676
675
  majorContourColor: "#000000",
677
676
  minorContourColor: "#9aa4a8",
678
- historyWindowHours: 1,
679
- historyResolutionS: 0.1,
680
677
  shadeLimitMetres: 10,
681
678
  contourIntervalMetres: 1.524,
682
679
  minorContourMetres: 0.3048,
@@ -687,12 +684,9 @@ var DEFAULT_SETTINGS = {
687
684
  safetyDepthMetres: 3
688
685
  };
689
686
  var ENUM_VALUES = {
690
- source: ["history", "tiles"],
691
687
  quality: ["auto", "high", "balanced", "low"]
692
688
  };
693
689
  var SETTINGS_BOUNDS = {
694
- historyWindowHours: { min: 0.1, max: 168, step: 0.1 },
695
- historyResolutionS: { min: 0.01, max: 60, step: 0.01 },
696
690
  shadeLimitMetres: { min: 1, max: 200, step: 1 },
697
691
  contourIntervalMetres: { min: 0.3048, max: 50, step: 0.3048 },
698
692
  minorContourMetres: { min: 0.3048, max: 50, step: 0.3048 },
@@ -733,20 +727,6 @@ var settings = { ...DEFAULT_SETTINGS };
733
727
  var depthUnit = "m";
734
728
  var root = document.getElementById("root");
735
729
  var FIELDS = [
736
- {
737
- key: "historyWindowHours",
738
- label: "History window",
739
- hint: "How far back to fetch depth.",
740
- suffix: "h",
741
- historyOnly: true
742
- },
743
- {
744
- key: "historyResolutionS",
745
- label: "Sample interval",
746
- hint: "Seconds between depth samples; smaller is finer.",
747
- suffix: "s",
748
- historyOnly: true
749
- },
750
730
  {
751
731
  key: "shadeLimitMetres",
752
732
  label: "Shade limit",
@@ -862,17 +842,6 @@ var unitSymbol = () => depthUnit === "foot" ? "ft" : "m";
862
842
  var toDisplay = (metres) => depthUnit === "foot" ? metres / METRES_PER_FOOT : metres;
863
843
  var fromDisplay = (value) => depthUnit === "foot" ? value * METRES_PER_FOOT : value;
864
844
  var round = (v) => Math.round(v * 100) / 100;
865
- var historyRows = [];
866
- var historyInputs = [];
867
- function syncHistoryDisabled() {
868
- const disabled = settings.source === "tiles";
869
- for (const input of historyInputs) {
870
- input.disabled = disabled;
871
- }
872
- for (const row of historyRows) {
873
- row.classList.toggle("disabled", disabled);
874
- }
875
- }
876
845
  function displayBounds(field) {
877
846
  const b = SETTINGS_BOUNDS[field.key];
878
847
  if (!field.depth || depthUnit !== "foot") {
@@ -919,10 +888,6 @@ function numberField(field) {
919
888
  hint.textContent = field.hint;
920
889
  wrap2.appendChild(hint);
921
890
  }
922
- if (field.historyOnly) {
923
- historyRows.push(wrap2);
924
- historyInputs.push(input);
925
- }
926
891
  return wrap2;
927
892
  }
928
893
  function toggleField(toggle) {
@@ -949,8 +914,6 @@ function toggleField(toggle) {
949
914
  }
950
915
  function build() {
951
916
  root.replaceChildren();
952
- historyRows.length = 0;
953
- historyInputs.length = 0;
954
917
  const heading = document.createElement("h2");
955
918
  heading.textContent = "LiveDepth";
956
919
  root.appendChild(heading);
@@ -968,33 +931,6 @@ function build() {
968
931
  });
969
932
  enabled.append(enabledName, enabledInput);
970
933
  root.appendChild(enabled);
971
- const source = document.createElement("label");
972
- source.className = "field";
973
- const sourceName = document.createElement("span");
974
- sourceName.className = "name";
975
- sourceName.textContent = "Depth source";
976
- const select = document.createElement("select");
977
- for (const [value, label] of [
978
- ["history", "History (this vessel's track)"],
979
- ["tiles", "LiveDepth plugin tiles"]
980
- ]) {
981
- const option = document.createElement("option");
982
- option.value = value;
983
- option.textContent = label;
984
- option.selected = settings.source === value;
985
- select.appendChild(option);
986
- }
987
- select.addEventListener("change", () => {
988
- settings.source = select.value;
989
- syncHistoryDisabled();
990
- void save();
991
- });
992
- source.append(sourceName, select);
993
- const sourceHint = document.createElement("span");
994
- sourceHint.className = "hint";
995
- sourceHint.textContent = "History draws the vessel's own recorded track; tiles draw the server-built bathymetry store, extended live.";
996
- source.appendChild(sourceHint);
997
- root.appendChild(source);
998
934
  for (const field of FIELDS) {
999
935
  if (!graphicsFieldKeys.has(field.key)) {
1000
936
  root.appendChild(numberField(field));
@@ -1023,7 +959,6 @@ function build() {
1023
959
  }
1024
960
  }
1025
961
  }
1026
- syncHistoryDisabled();
1027
962
  }
1028
963
  function colorField(field) {
1029
964
  const wrap2 = document.createElement("label");