UNPKG

@shagital/adonisjs-acl

Version:

Role & Permission support for Adonisjs

41 lines (40 loc) 2.59 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); const fs_1 = __importDefault(require("fs")); const path_1 = __importDefault(require("path")); async function instructions(projectRoot) { const packageBasePath = path_1.default.resolve(`${__dirname}/src`); // 1. Copy config fs_1.default.copyFileSync(`${packageBasePath}/config/rolePermission.txt`, `${projectRoot}/config/rolePermission.ts`); // 2. Copy middlewares const middlewarePath = `${projectRoot}/app/Middleware`; if (!fs_1.default.existsSync(middlewarePath)) { fs_1.default.mkdirSync(middlewarePath, { recursive: true }); } fs_1.default.copyFileSync(`${packageBasePath}/middlewares/Can.txt`, `${middlewarePath}/Can.ts`); fs_1.default.copyFileSync(`${packageBasePath}/middlewares/Is.txt`, `${middlewarePath}/Is.ts`); // 3. Copy models const modelPath = `${projectRoot}/app/Models`; if (!fs_1.default.existsSync(modelPath)) { fs_1.default.mkdirSync(modelPath, { recursive: true }); } fs_1.default.copyFileSync(`${packageBasePath}/models/Permission.txt`, `${modelPath}/Permission.ts`); fs_1.default.copyFileSync(`${packageBasePath}/models/Role.txt`, `${modelPath}/Role.ts`); fs_1.default.copyFileSync(`${packageBasePath}/models/RolePermission.txt`, `${modelPath}/RolePermission.ts`); fs_1.default.copyFileSync(`${packageBasePath}/models/UserPermission.txt`, `${modelPath}/UserPermission.ts`); fs_1.default.copyFileSync(`${packageBasePath}/models/UserRole.txt`, `${modelPath}/UserRole.ts`); // 4. Copy migrations const migrationPath = `${projectRoot}/database/migrations`; if (!fs_1.default.existsSync(migrationPath)) { fs_1.default.mkdirSync(migrationPath, { recursive: true }); } fs_1.default.copyFileSync(`${packageBasePath}/migrations/acl_1_roles.txt`, `${migrationPath}/acl_1_roles.ts`); fs_1.default.copyFileSync(`${packageBasePath}/migrations/acl_2_permissions.txt`, `${migrationPath}/acl_2_permissions.ts`); fs_1.default.copyFileSync(`${packageBasePath}/migrations/acl_3_role_permissions.txt`, `${migrationPath}/acl_3_role_permissions.ts`); fs_1.default.copyFileSync(`${packageBasePath}/migrations/acl_4_user_permissions.txt`, `${migrationPath}/acl_4_user_permissions.ts`); fs_1.default.copyFileSync(`${packageBasePath}/migrations/acl_5_user_roles.txt`, `${migrationPath}/acl_5_user_roles.ts`); } exports.default = instructions;