GeoLeaf layer id of the derived endpoint sub-layer.
Start and end markers share ONE layer — and therefore one MapLibre source. They
used to be two (gl-route-<id>-start / -end), which meant two sources and two
sub-layers per itinerary where one of each suffices.
The merge is possible because deriveEndpoints() already tags every derived
feature with properties.role, so the two visual styles are expressible as
data-driven styleRules on a single layer rather than as two layers.
GeoLeaf layer id of the derived endpoint sub-layer.
Start and end markers share ONE layer — and therefore one MapLibre source. They used to be two (
gl-route-<id>-start/-end), which meant two sources and two sub-layers per itinerary where one of each suffices. The merge is possible becausederiveEndpoints()already tags every derived feature withproperties.role, so the two visual styles are expressible as data-drivenstyleRuleson a single layer rather than as two layers.