Fix: improve detection of needed layers
All checks were successful
/ deploy_on_hosted (push) Successful in 14m10s

This commit is contained in:
Pieter Vander Vennet 2025-05-06 13:57:50 +02:00
parent 6c730f5581
commit f94914297f

View file

@ -108,29 +108,31 @@ export default class DependencyCalculator {
}
let currentKey = undefined
let currentLine = undefined
const detectNearyFeatures = (layerId) => {
if (layerId === "*") {
// This is a wildcard
return []
}
// The important line: steal the dependencies!
deps.push({
neededLayer: layerId,
reason: "a calculated tag loads features from this layer",
context:
"calculatedTag[" +
currentLine +
"] which calculates the value for " +
currentKey,
neededBy: layer.id,
checkHasSnapName: false
})
return []
}
const params: ExtraFuncParams = {
getFeatureById: () => undefined,
getFeaturesWithin: (layerId) => {
if (layerId === "*") {
// This is a wildcard
return []
}
// The important line: steal the dependencies!
deps.push({
neededLayer: layerId,
reason: "a calculated tag loads features from this layer",
context:
"calculatedTag[" +
currentLine +
"] which calculates the value for " +
currentKey,
neededBy: layer.id,
checkHasSnapName: false,
})
return []
},
getFeaturesWithin: detectNearyFeatures,
getProbablyOverlapsWith: detectNearyFeatures
}
const helpers = ExtraFunctions.constructHelpers(params)
// ... Run the calculated tag code, which will trigger the getFeaturesWithin above...