File

mod_http_libjs/mod_http_libjs.lua @ 6319:63ef69b2f046

mod_http_oauth2: Assume Prosody 13.0+ roles are available Per the README, 0.12 is not supported, so we should not need to worry about this. Plus it is assumed to be present elsewhere and that would throw errors.
author Kim Alvefur <zash@zash.se>
date Wed, 02 Jul 2025 16:15:32 +0200
parent 6224:0bd1804baae7
line wrap: on
line source

local http_files = require "net.http.files";

local mime_map = module:shared("/*/http_files/mime").types or {
	css = "text/css",
	js = "application/javascript",
};

local libjs_path = module:get_option_string("libjs_path", "/usr/share/javascript");

do -- sanity check
	local lfs = require "lfs";

	local exists, err = lfs.attributes(libjs_path, "mode");
	if exists ~= "directory" then
		module:log("error", "Problem with 'libjs_path': %s", err or "not a directory");
	end
end

module:provides("http", {
		default_path = "/share";
		route = {
			["GET /*"] = http_files.serve({ path = libjs_path, mime_map = mime_map });
		}
	});