မာတိကာသို့ ခုန်သွားရန်

မော်ဂျူး:category tree/topic/data

ဝစ်ရှင်နရီ မှ

Documentation for this module may be created at မော်ဂျူး:category tree/topic/data/doc

local labels = {}
local handlers = {}

local top_level_data_module = "Module:category tree/topic/data"
local data_module_prefix = "Module:category tree/topic/"

local subpages = {
--	"ခန္ဓာကိုယ်",
--	"အဆောက်အဦများ",
	"ဆက်သွယ်ရေး",
--	"ယဉ်ကျေးမှု",
--	"ကမ္ဘာ",
--	"အစားအသောက်",
--	"သမိုင်း",
--	"လူ",
--	"သက်ရှိ",
--		"တိရစ္ဆာန်များ",
--		"အပင်များ",
--	"သင်္ချာ",
--	"အမျိုးမျိုးအထွေထွေ",
	"အမည်များ",
	"သဘာဝ",
--	"ကိန်းဂဏန်းများ",
--	"လူပုဂ္ဂိုလ်များ",
--	"ဒဿနိကဗေဒ",
	"နေရာများ",
--	"သိပ္ပံ",
--	"လိင်",
--	"လူမှုလုပ်ဆောင်ချက်များ",
--	"လူ့အဖွဲ့အစည်း",
--	"အားကစား",
--	"နည်းပညာ",
--	"အချိန်",
--	"သယ်ယူပို့ဆောင်ရေး",
--	"ရူပလုပ်ဆောင်ချက်များ",
}

labels["အကြောင်းအရာများ အားလုံး"] = {
	type = "toplevel",
	description = "{{{langname}}} ဝေါဟာရများအား \"မိသားစု\" သို့မဟုတ် \"ဓာတုဗေဒ\" ကဲ့သို့သော အကြောင်းအရာအလိုက် စုစည်းထားသည်။",
	topic = "listing of all topics",
	parents = {{name = "{{{langcat}}}", nontopic = true}},
}

for _, typ in ipairs { "အကြောင်းအရာများ", "set", "type", "အမည် ကဏ္ဍများ", "grouping" } do
	labels[typ .. " စာရင်း"] = {
		type = "toplevel",
		description = "All " .. typ .. " categories currently available in {{{langname}}}.",
		parents = {{name = "အကြောင်းအရာများ အားလုံး", sort = " *"}},
	}
end

labels["အကြောင်းအရာများ စာရင်း"] = {
	type = "toplevel",
	description = "{{{langname}}} တွင် လတ်တလောရရှိနိုင်သော အကြောင်းအရာများ အားလုံးဖြစ်သည်။",
	parents = {{name = "အကြောင်းအရာများ အားလုံး", sort = " *"}},
}

for label, data in pairs(labels) do
	data.module = top_level_data_module
end

-- Don't throw error on every single category, but on a subset of them, especially the top-level ones.
local function should_throw_error()
	local title = mw.title.getCurrentTitle().text -- Don't replace with mw.loadData("Module:headword/data").pagename; we're in Category space
	return title:find("List of") or title:find("All ") or title:find(" lemmas")
end

-- Import subpages
for _, subpage in ipairs(subpages) do
	local datamodule = data_module_prefix .. subpage
	local retval = require(datamodule)
	if not retval["LABELS"] then
		retval = {LABELS = retval}
	end
	for label, data in pairs(retval["LABELS"]) do
		if labels[label] and not retval["IGNOREDUP"] then
			error("Label " .. label .. " defined in both [["
				.. datamodule .. "]] နှင့် [[" .. labels[label].module .. "]].")
		end
		data.module = datamodule
		labels[label] = data
	end
	if retval["HANDLERS"] then
		for _, handler in ipairs(retval["HANDLERS"]) do
			table.insert(handlers, { module = datamodule, handler = handler })
		end
	end
end

return {LABELS = labels, HANDLERS = handlers}