2,325 bytes added
, 05:48, 16 July 2021
--[==[
To inspect the content of this data module, use [[Special:ExpandTemplates]]
and enter the following input text:
{{#invoke:Road data/dump|dump|module=Module:<name-of-this-module>}}
To inspect the content of this data module when editing, enter the following
into the Debug console:
local util = require("Module:Road data/util")
print(util.arrayToString(p))
To inspect a particular route type, change `p` above to include the route type,
e.g., `p.I` and `p["US-Hist"]`.
]==]
-- Puerto Rico
local PR = {}
local util = require("Module:Road data/util")
local format = mw.ustring.format
util.addAll(PR, require("Module:Road data/strings/USA"))
local suffix = " ([dab||%dab%, |]Puerto Rico)"
PR.I.shield = "I-PR%route%.svg"
PR.I.shieldmain = "I-PR%route%.svg"
PR.I.link = "Interstate PR%route%"
PR.I.abbr = "PRI-%route%"
PR.PR = {
shield = "PR primary %route%.svg",
shieldmain = {"PR primary %route%.svg", "PR urban primary %route%.svg", "PR secondary %route%.svg", "Ellipse sign %route%.svg"},
name = "Highway %route%",
link = "Puerto Rico Highway %route% [dab||(%dab%)|]",
abbr = "PR-%route%",
width = "expand"
}
PR.Urban = {
shield = "PR urban primary %route%.svg",
name = PR.PR.name,
link = PR.PR.link,
abbr = PR.PR.abbr,
width = "expand"
}
PR.Sec = {
shield = {
ifexists = true,
default = "PR secondary %route%.svg",
otherwise = {
hook = "splitlen",
split = 3,
above = "CR %route% jct wide.svg",
below = "CR %route% jct.svg"
}
},
name = PR.PR.name,
link = PR.PR.link,
abbr = PR.PR.abbr,
width = "expand"
}
PR.Ter = {
shield = "Ellipse sign %route%.svg",
name = PR.PR.name,
link = PR.PR.link,
abbr = PR.PR.abbr,
width = "expand"
}
for _,type in ipairs({'PR', 'Urban', 'Sec', 'Ter'}) do
for _,auxType in ipairs({"Spur"}) do
local spec = PR[" aux "][auxType]
PR[type .. "-" .. auxType] = {
shield = PR[type].shield,
shieldmain = PR[type].shield,
name = PR[type].name .. " Ramal",
link = PR[type].link .. " Ramal" .. suffix,
abbr = PR[type].abbr .. " Ramal",
banner = "Spur plate (es).svg",
aux = spec.aux,
width = PR[type].width
}
end
end
PR["PR-Spur"].banner = "Spur plate blue (es).svg"
PR["PR-Ramal"] = PR["PR-Spur"]
PR["Urban-Ramal"] = PR["Urban-Spur"]
PR["Sec-Ramal"] = PR["Sec-Spur"]
PR["Ter-Ramal"] = PR["Ter-Spur"]
return PR