Skip to content

v4.12.0 & v4.12.1 Update (30/10/2024) 🎃

Compare
Choose a tag to compare
@RobAndrewHurst RobAndrewHurst released this 30 Oct 16:09
· 354 commits to main since this release

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

    1. 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.
    2. This new property also helps address a bug reported on the issue.
  • New location entry type(layer) by @dbauszus-glx in #1268

    1. The mvt_clone entry type has been deprecated the logic has been removed.
    2. New entry type of "type": "layer" can now be defined in the infoj.
      • Requirements
        1. key required for unique identification.
        2. type:layer which is needed to create the entry as a layer.
        3. query used to query the layer for specific geometries.
        4. layer - The name of the layer you are looking to clone.
    3. Note This is only compatible with mvt layers. More types to come in the next release.
    4. 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

    1. Added the ability to reload other layers when an infoj entry is altered.
    2. 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
    1. 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

    1. On vanilla slider elements put the label and input on the same line.
    2. Input element needs to dynamically resize to value.
    3. The input elements for the ab slider need to be put on the same line.
    4. The input elements needs to dynamically resize to accommodate the size of the value in the inputs.
    5. Remove greater than or less than labels (These are self explanatory).
    6. 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.

    new_slider
  • layer filter panel & card element by @dbauszus-glx in #1528

    1. The filter panel and card element have now been documented.
    2. Check for filter types have been added.
    3. The removeFilter method has been added to the layer filters module. Removed duplication.
    4. The dropdown method also had it's complexity reduced.
    5. Dropdown elements didn't use other properties such as label or field to label the entries.
  • Dialog show method by @AlexanderGeere in #1513

    1. We have created a show method for dialogs.
    2. The show method will be called on an existing dialog unless the creation is implicit with the new property flag.
      • dialog.new = true
  • optional custom applyFilter method on layers by @dbauszus-glx in #1520

    1. The applyFilter method is now added to the filterMethods object.
    2. The applyFilter debounced the layer.reload method.
    3. The layer.reload method now supports a callback arguement.
      • This now allows for method chain composing.
  • Dropown element selected class added by @dbauszus-glx in #1550

  • Polish Translations by @simon-leech in #1560

    1. Added in missing translations for the drawing instructions help dialog.
  • Force Cache of Workspace by @dbauszus-glx in #1509

    1. The workspace cache can be nulled each time by passing in a true value to the checkWorkspaceCache
    2. This is used on the workspace test function.
  • Infoj Headers Revamp by @simon-leech in #1522

    1. Groups in infoj entries have now been made more distinct from other entries.
group_image
  • svg_templates is now a utility by @dbauszus-glx in #1530

  • Dialog minimize maximise by @AlexanderGeere in #1496

    1. Button is assigned to the dialog element that will toggle the class minimized which will make the content display:none
  • Move Icon scaling order by @simon-leech in #1568

    1. 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

    1. 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.
  • DBS heirachy & security by @dbauszus-glx in #1556 & #1470

    1. The dbs used on a template uses : Template -> Layer -> Workspace.
    2. This ensures that the dbs on the workspace is used as a last ditch fallback if not present on the template or layer.
    3. The dbs connection is also checked against the connections provided in the .env
  • Mobile View Fixes by @simon-leech in #1269

    1. taping on a cluster list didn't trigger the click event.
      • We now use onpointerup to handle both mobile & desktop.
    2. Added in a mobile util to set the maxWidth in the default view. This will hide the infoj & dataviews.
    3. mapp attributin is now no longer selectable.
  • _redirect cookie now is removed by @dbauszus-glx in #1532

  • syncPlugins crash by person in #

    1. 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 ??= [];
  • Null geometry does not refresh on entry by @simon-leech in #1573

    1. 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.
  • Changeend module removed by @dbauszus-glx in #1559

    1. Addressed an issue with the change events.
  • Inocrrect Feature properties references by @RobAndrewHurst in #1610

    1. 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.
    2. 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

    1. Added in a check to return if no record.
  • Fix Dialog background colour by @dbauszus-glx in #1600

    1. Removed the background css property on the dialog and modal.
  • Dialog & attribution z-index issue by @AlexanderGeere & @RobAndrewHurst in #1613

    1. Added in the isolation property on a dialog with the value isolate. This will start a new stacking context for elements that are way above the dialog.
    2. Removed the z-index value on attribution.
  • MVT Reload doesn't clear tiles from source. by @dbauszus-glx in #1624

    1. 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

    1. The properties have been spread into the geojson ol feature.

✍️ Documentation

Clean up 🧹

Full Changelog: v4.11.0...v4.12.1