nuxt-authorization
Version:
Authorization module for managing permissions on the Nuxt app and the Nitro server.
47 lines (43 loc) • 1.18 kB
JavaScript
import { defineNuxtModule, createResolver, addImports, addImportsDir, addComponentsDir, addServerImports, addServerImportsDir } from '@nuxt/kit';
const version = "0.3.5";
const module = defineNuxtModule({
meta: {
name: "nuxt-authorization",
configKey: "authorization",
version,
compatibility: {
nuxt: ">=3.0.0"
}
},
// Default configuration options of the Nuxt module
defaults: {},
async setup() {
const { resolve } = createResolver(import.meta.url);
const defineAbilityImport = [
{
name: "defineAbility",
as: "defineAbility",
from: resolve("runtime/ability")
},
{
name: "allow",
as: "allow",
from: resolve("runtime/ability")
},
{
name: "deny",
as: "deny",
from: resolve("runtime/ability")
}
];
addImports(defineAbilityImport);
addImportsDir(resolve("runtime/utils"));
addComponentsDir({
path: resolve("runtime/components"),
ignore: ["Primitive.ts"]
});
addServerImports(defineAbilityImport);
addServerImportsDir(resolve("runtime/server/utils"));
}
});
export { module as default };