v4.12.0 & v4.12.1 Update (30/10/2024) 🎃
Release Notes: v4.12.0 & v4.12.1 (October 30th 2024) 🎃
What's Changed
🚀 New Features
-
categorized themes filtering (optional) by @dbauszus-glx in #1543
- We have introduced a property on a theme where it can be optional of the theme to filter the actual data.
theme.filterOnly
true will ensure that only the theme on the layer is filtered and not the data.
- This new property also helps address a bug reported on the issue.
- We have introduced a property on a theme where it can be optional of the theme to filter the actual data.
-
New location entry type(layer) by @dbauszus-glx in #1268
- The mvt_clone entry type has been deprecated the logic has been removed.
- New entry type of
"type": "layer"
can now be defined in theinfoj
.- Requirements
key
required for unique identification.type:layer
which is needed to create the entry as a layer.query
used to query the layer for specific geometries.layer
- The name of the layer you are looking to clone.
- Requirements
- Note This is only compatible with mvt layers. More types to come in the next release.
- This also solves a bug reported with the issue.
-
Added location count query by @AlexanderGeere in #1529
-
Reset all filters added by @AlexanderGeere in #1566
-
Added Infoj Enty - Layer Dependents by @simon-leech in #1577
- Added the ability to reload other layers when an infoj entry is altered.
- The property
dependents_layers
can now be added to specifiy the layers we want to reload. The keys in the array need to be the layer keys in the workspace.
"infoj":[
{
"label": "entry",
"field": "entry_field",
"dependents_layers":[
"layer_1",
"layer_2",
"layer_3"
]
}
]
- Version Check Util added by @dbauszus-glx & @RobAndrewHurst in #1554
- added in a function to check against the current codebase against a required value. This is used in plugins that require certain functionality in the core before being enabled.
✨ Enhancements
-
Slider Style Revamp 🚧 by @AlexanderGeere in #1548
- On vanilla slider elements put the label and input on the same line.
- Input element needs to dynamically resize to value.
- The input elements for the ab slider need to be put on the same line.
- The input elements needs to dynamically resize to accommodate the size of the value in the inputs.
- Remove greater than or less than labels (These are self explanatory).
- Add an In title on ab sliders that will indicate that we are filtering between these two values.
Bellow is an example of the ab slider that we are wanting to replicate. The vanilla slider will take influence from this as well.
-
layer filter panel & card element by @dbauszus-glx in #1528
- The filter panel and card element have now been documented.
- Check for filter types have been added.
- The
removeFilter
method has been added to the layer filters module. Removed duplication. - The dropdown method also had it's complexity reduced.
- Dropdown elements didn't use other properties such as label or field to label the entries.
-
Dialog show method by @AlexanderGeere in #1513
- We have created a
show
method for dialogs. - The show method will be called on an existing dialog unless the creation is implicit with the
new
property flag.dialog.new = true
- We have created a
-
optional custom applyFilter method on layers by @dbauszus-glx in #1520
- The
applyFilter
method is now added to the filterMethods object. - The
applyFilter
debounced thelayer.reload
method. - The
layer.reload
method now supports a callback arguement.- This now allows for method chain composing.
- The
-
Dropown element selected class added by @dbauszus-glx in #1550
-
Polish Translations by @simon-leech in #1560
- Added in missing translations for the drawing instructions help dialog.
-
Force Cache of Workspace by @dbauszus-glx in #1509
- The workspace cache can be nulled each time by passing in a true value to the
checkWorkspaceCache
- This is used on the workspace test function.
- The workspace cache can be nulled each time by passing in a true value to the
-
Infoj Headers Revamp by @simon-leech in #1522
- Groups in infoj entries have now been made more distinct from other entries.
-
svg_templates is now a utility by @dbauszus-glx in #1530
-
Dialog minimize maximise by @AlexanderGeere in #1496
- Button is assigned to the dialog element that will toggle the class
minimized
which will make the contentdisplay:none
- Button is assigned to the dialog element that will toggle the class
-
Move Icon scaling order by @simon-leech in #1568
- The icon_scaling panel is now last in the order of the style panel.
🐛 Bug Fixes
-
categorized themes filtering (optional) by @dbauszus-glx in #1543
-
New location entry type(layer) by @dbauszus-glx in #1268
-
sqlFilter Function incorrectly referenced by @RobAndrewHurst in #1591
-
save on invalid value for an entry by @dbauszus-glx in #1557
- Issue was the save button was visible even if an invalid value for an entry was provided.
- Added in a callback on the numericinput module which is what's required to trigger the
valChange
method.
- Added in a callback on the numericinput module which is what's required to trigger the
- Issue was the save button was visible even if an invalid value for an entry was provided.
-
DBS heirachy & security by @dbauszus-glx in #1556 & #1470
- The dbs used on a template uses : Template -> Layer -> Workspace.
- This ensures that the dbs on the workspace is used as a last ditch fallback if not present on the template or layer.
- The dbs connection is also checked against the connections provided in the
.env
-
Mobile View Fixes by @simon-leech in #1269
- taping on a cluster list didn't trigger the
click
event.- We now use
onpointerup
to handle both mobile & desktop.
- We now use
- Added in a mobile util to set the maxWidth in the default view. This will hide the infoj & dataviews.
- mapp attributin is now no longer selectable.
- taping on a cluster list didn't trigger the
-
_redirect cookie now is removed by @dbauszus-glx in #1532
-
syncPlugins crash by person in #
- The syncPlugins array will crash the instance if not provided on the application
- This is fixed with a nullish assignment on the _mapview.mjs.
mapview.syncPlugins ??= [];
- This is fixed with a nullish assignment on the _mapview.mjs.
- The syncPlugins array will crash the instance if not provided on the application
-
Null geometry does not refresh on entry by @simon-leech in #1573
- We now have a check on the geometry entry.
- if there is no value, we can't draw && it's not an api call, then we remove the entry from the mapview.
- We now have a check on the geometry entry.
-
Changeend module removed by @dbauszus-glx in #1559
- Addressed an issue with the change events.
-
Inocrrect Feature properties references by @RobAndrewHurst in #1610
- The feature properties on wkt vectors had a weird bit of logic that has been simplified to help the spreading in of the properties into the ol feature.
- There were other references to
properties.properties
that needed to be fixed due to the spread of params.
-
pin would fail without a location.record by @simon-leech in #1597
- Added in a check to return if no record.
-
Fix Dialog background colour by @dbauszus-glx in #1600
- Removed the background css property on the dialog and modal.
-
Dialog & attribution z-index issue by @AlexanderGeere & @RobAndrewHurst in #1613
- Added in the
isolation
property on a dialog with the valueisolate
. This will start a new stacking context for elements that are way above the dialog. - Removed the z-index value on attribution.
- Added in the
-
MVT Reload doesn't clear tiles from source. by @dbauszus-glx in #1624
- This is a bug with ol we have put in a tempory fix. The issue will remain open util fixed.
-
geojson featureFormat properties were not spread by @dbauszus-glx in #1623
- The properties have been spread into the geojson ol feature.
✍️ Documentation
- Version.js by @RobAndrewHurst in #1466
Clean up 🧹
-
Deprecated Google Streetview by @RobAndrewHurst in #1504
-
Mongodb deprecated by @dbauszus-glx in #1608
Full Changelog: v4.11.0...v4.12.1