fix(ts): honor explicit per-parser generate/from_json = false
This commit is contained in:
+13
-3
@@ -143,6 +143,17 @@ local function name_from_url(url)
|
|||||||
return (name:gsub("%.git$", ""))
|
return (name:gsub("%.git$", ""))
|
||||||
end
|
end
|
||||||
|
|
||||||
|
---@generic T
|
||||||
|
---@param child T?
|
||||||
|
---@param parent T?
|
||||||
|
---@return T?
|
||||||
|
local function pick(child, parent)
|
||||||
|
if child ~= nil then
|
||||||
|
return child
|
||||||
|
end
|
||||||
|
return parent
|
||||||
|
end
|
||||||
|
|
||||||
---@param entry string | ow.TS.RepoOpts
|
---@param entry string | ow.TS.RepoOpts
|
||||||
---@return ow.TS.Repo
|
---@return ow.TS.Repo
|
||||||
local function normalize(entry)
|
local function normalize(entry)
|
||||||
@@ -163,9 +174,8 @@ local function normalize(entry)
|
|||||||
table.insert(parsers, {
|
table.insert(parsers, {
|
||||||
lang = s.lang,
|
lang = s.lang,
|
||||||
location = s.location,
|
location = s.location,
|
||||||
generate = s.generate ~= nil and s.generate or opts.generate,
|
generate = pick(s.generate, opts.generate),
|
||||||
from_json = s.from_json ~= nil and s.from_json
|
from_json = pick(s.from_json, opts.from_json),
|
||||||
or opts.from_json,
|
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
|
|||||||
Reference in New Issue
Block a user