Module:ElementNavigation: Difference between revisions

// via Wikitext Extension for VSCode
// via Wikitext Extension for VSCode
Line 75: Line 75:


-- ========== Blueprint Integration ==========
-- ========== Blueprint Integration ==========
-- Helper function to merge two tables. The custom table's values override the base table's.
local function mergeConfigs(base, custom)
    local merged = {}
    for k, v in pairs(base) do
        merged[k] = v
    end
    for k, v in pairs(custom) do
        merged[k] = v
    end
    return merged
end


-- Create a navigation block for Blueprint
-- Create a navigation block for Blueprint
Line 100: Line 112:
         return execute(function()
         return execute(function()
             -- Merge default and template-specific configurations
             -- Merge default and template-specific configurations
             local config = require('Module:TemplateHelpers').mergeConfigs(
             local config = mergeConfigs(p.defaultConfig, template.config.navigation or {})
                p.defaultConfig,
                template.config.navigation or {}
            )


             -- Automatic navigation detection
             -- Automatic navigation detection