@mostajs/rbac 1.0.7 → 1.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,5 @@
1
+ import type { ModuleRegistration } from '@mostajs/socle';
2
+ export declare function register(registry: {
3
+ register(r: ModuleRegistration): void;
4
+ }): void;
5
+ //# sourceMappingURL=register.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../register.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAkBxD,wBAAgB,QAAQ,CAAC,QAAQ,EAAE;IAAE,QAAQ,CAAC,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAA;CAAE,GAAG,IAAI,CAsDlF"}
@@ -0,0 +1,64 @@
1
+ // @mostajs/rbac — Runtime module registration
2
+ // Author: Dr Hamid MADANI drmdh@msn.com
3
+ // Phase 3: rbac owns User/Role/Permission/PermissionCategory schemas + repos
4
+ import { UserSchema } from './schemas/user.schema.js';
5
+ import { RoleSchema } from './schemas/role.schema.js';
6
+ import { PermissionSchema } from './schemas/permission.schema.js';
7
+ import { PermissionCategorySchema } from './schemas/permission-category.schema.js';
8
+ import { UserRepository } from './repositories/user.repository.js';
9
+ import { RoleRepository } from './repositories/role.repository.js';
10
+ import { PermissionRepository } from './repositories/permission.repository.js';
11
+ import { PermissionCategoryRepository } from './repositories/permission-category.repository.js';
12
+ import { rbacMenuContribution } from './lib/menu.js';
13
+ import { usersHandlers, usersIdHandlers, rolesHandlers, rolesIdHandlers, permissionsHandlers, permissionsIdHandlers, categoriesHandlers, categoriesIdHandlers, matrixHandlers, seedHandlers, } from './lib/route-handlers.js';
14
+ export function register(registry) {
15
+ registry.register({
16
+ manifest: {
17
+ name: 'rbac',
18
+ package: '@mostajs/rbac',
19
+ version: '2.0.0',
20
+ type: 'core',
21
+ priority: 2,
22
+ dependencies: ['orm'],
23
+ displayName: 'RBAC',
24
+ description: 'Role-Based Access Control — users, roles, permissions schemas, repos, management UI',
25
+ icon: 'ShieldCheck',
26
+ register: './dist/register.js',
27
+ },
28
+ schemas: [
29
+ { name: 'User', schema: UserSchema },
30
+ { name: 'Role', schema: RoleSchema },
31
+ { name: 'Permission', schema: PermissionSchema },
32
+ { name: 'PermissionCategory', schema: PermissionCategorySchema },
33
+ ],
34
+ repositories: {
35
+ userRepo: (dialect) => new UserRepository(dialect),
36
+ roleRepo: (dialect) => new RoleRepository(dialect),
37
+ permissionRepo: (dialect) => new PermissionRepository(dialect),
38
+ permissionCategoryRepo: (dialect) => new PermissionCategoryRepository(dialect),
39
+ },
40
+ permissions: {
41
+ permissions: { ADMIN_ACCESS: 'admin:access' },
42
+ definitions: [
43
+ { code: 'admin:access', name: 'admin:access', description: 'Accéder à la gestion des utilisateurs et rôles', category: 'admin' },
44
+ ],
45
+ categories: [
46
+ { name: 'admin', label: 'Administration', description: 'Gestion du panneau d\'administration', icon: 'Settings', order: 0, system: true },
47
+ ],
48
+ },
49
+ routes: [
50
+ { path: 'users', handlers: usersHandlers, permission: 'admin:access' },
51
+ { path: 'users/[id]', handlers: usersIdHandlers, permission: 'admin:access' },
52
+ { path: 'admin/roles', handlers: rolesHandlers, permission: 'admin:access' },
53
+ { path: 'admin/roles/[id]', handlers: rolesIdHandlers, permission: 'admin:access' },
54
+ { path: 'admin/permissions', handlers: permissionsHandlers, permission: 'admin:access' },
55
+ { path: 'admin/permissions/[id]', handlers: permissionsIdHandlers, permission: 'admin:access' },
56
+ { path: 'admin/categories', handlers: categoriesHandlers, permission: 'admin:access' },
57
+ { path: 'admin/categories/[id]', handlers: categoriesIdHandlers, permission: 'admin:access' },
58
+ { path: 'admin/permissions/matrix', handlers: matrixHandlers, permission: 'admin:access' },
59
+ { path: 'admin/permissions/seed', handlers: seedHandlers, permission: 'admin:access' },
60
+ ],
61
+ menu: rbacMenuContribution,
62
+ });
63
+ }
64
+ //# sourceMappingURL=register.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register.js","sourceRoot":"","sources":["../register.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mostajs/rbac",
3
- "version": "1.0.7",
3
+ "version": "1.0.8",
4
4
  "description": "RBAC — User/Role/Permission schemas, repos, management UI, API handlers",
5
5
  "author": "Dr Hamid MADANI <drmdh@msn.com>",
6
6
  "license": "MIT",