@mostajs/rbac 2.3.4 → 2.3.5
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.
- package/dist/lib/account-resolver.d.ts +24 -0
- package/dist/lib/account-resolver.d.ts.map +1 -0
- package/dist/lib/account-resolver.js +41 -0
- package/dist/lib/account-resolver.js.map +1 -0
- package/dist/lib/repos-factory.js +2 -2
- package/dist/lib/repos-factory.js.map +1 -1
- package/dist/server.d.ts +2 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +25 -0
- package/dist/server.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { IDialect } from '@mostajs/orm';
|
|
2
|
+
export interface ResolveAccountOptions {
|
|
3
|
+
/** Override the auto-create account name (default: "<userEmail>-<type>"). */
|
|
4
|
+
name?: string;
|
|
5
|
+
/** Account type for lookup + auto-create (default: 'personal'). */
|
|
6
|
+
type?: string;
|
|
7
|
+
/** Plan to assign on auto-create (default: 'free'). */
|
|
8
|
+
plan?: string;
|
|
9
|
+
/** Status on auto-create (default: 'active'). */
|
|
10
|
+
status?: string;
|
|
11
|
+
/** Disable auto-create — return null if not found. */
|
|
12
|
+
noAutoCreate?: boolean;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Resolve (or auto-create) the Account owned by `userId`. Returns the
|
|
16
|
+
* account ID, or null if `noAutoCreate` and not found.
|
|
17
|
+
*
|
|
18
|
+
* Lookup order:
|
|
19
|
+
* 1. accounts WHERE owner=userId AND type=options.type
|
|
20
|
+
* 2. accounts WHERE owner=userId (any type — first match)
|
|
21
|
+
* 3. CREATE account (unless noAutoCreate=true)
|
|
22
|
+
*/
|
|
23
|
+
export declare function resolveUserAccountId(dialect: IDialect, userId: string, userEmail?: string, options?: ResolveAccountOptions): Promise<string | null>;
|
|
24
|
+
//# sourceMappingURL=account-resolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"account-resolver.d.ts","sourceRoot":"","sources":["../../lib/account-resolver.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAA;AAG5C,MAAM,WAAW,qBAAqB;IACpC,6EAA6E;IAC7E,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,mEAAmE;IACnE,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,uDAAuD;IACvD,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,iDAAiD;IACjD,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,sDAAsD;IACtD,YAAY,CAAC,EAAE,OAAO,CAAA;CACvB;AAED;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,QAAQ,EACjB,MAAM,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,MAAM,EAClB,OAAO,GAAE,qBAA0B,GAClC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAuBxB"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
// @mostajs/rbac — Account resolver
|
|
2
|
+
//
|
|
3
|
+
// Resolves the personal Account owned by a User. The Account is the
|
|
4
|
+
// boundary entity for API keys, projects, billing, subscriptions —
|
|
5
|
+
// User is just identity. Centralizes the lookup-or-create pattern so
|
|
6
|
+
// portals (Octocloud, future tenants UIs) don't reimplement it.
|
|
7
|
+
//
|
|
8
|
+
// Author: Dr Hamid MADANI <drmdh@msn.com>
|
|
9
|
+
import { AccountRepository } from '../repositories/account.repository.js';
|
|
10
|
+
/**
|
|
11
|
+
* Resolve (or auto-create) the Account owned by `userId`. Returns the
|
|
12
|
+
* account ID, or null if `noAutoCreate` and not found.
|
|
13
|
+
*
|
|
14
|
+
* Lookup order:
|
|
15
|
+
* 1. accounts WHERE owner=userId AND type=options.type
|
|
16
|
+
* 2. accounts WHERE owner=userId (any type — first match)
|
|
17
|
+
* 3. CREATE account (unless noAutoCreate=true)
|
|
18
|
+
*/
|
|
19
|
+
export async function resolveUserAccountId(dialect, userId, userEmail, options = {}) {
|
|
20
|
+
const accountRepo = new AccountRepository(dialect);
|
|
21
|
+
const type = options.type || 'personal';
|
|
22
|
+
const status = options.status || 'active';
|
|
23
|
+
const plan = options.plan || 'free';
|
|
24
|
+
const existing = await accountRepo.findOne({ owner: userId, type });
|
|
25
|
+
if (existing === null || existing === void 0 ? void 0 : existing.id)
|
|
26
|
+
return existing.id;
|
|
27
|
+
// Fallback : owner has an account of a different type (e.g. 'system',
|
|
28
|
+
// 'trial') — pick the first match rather than auto-creating a duplicate.
|
|
29
|
+
const any = await accountRepo.findOne({ owner: userId });
|
|
30
|
+
if (any === null || any === void 0 ? void 0 : any.id)
|
|
31
|
+
return any.id;
|
|
32
|
+
if (options.noAutoCreate)
|
|
33
|
+
return null;
|
|
34
|
+
const created = await accountRepo.create({
|
|
35
|
+
name: options.name || `${userEmail || userId}-${type}`,
|
|
36
|
+
type, plan, status,
|
|
37
|
+
owner: userId,
|
|
38
|
+
});
|
|
39
|
+
return created.id;
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=account-resolver.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"account-resolver.js","sourceRoot":"","sources":["../../lib/account-resolver.ts"],"names":[],"mappings":"AAAA,mCAAmC;AACnC,EAAE;AACF,oEAAoE;AACpE,mEAAmE;AACnE,qEAAqE;AACrE,gEAAgE;AAChE,EAAE;AACF,0CAA0C;AAG1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAA;AAetE;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,OAAiB,EACjB,MAAc,EACd,SAAkB,EAClB,UAAiC,EAAE;IAEnC,MAAM,WAAW,GAAG,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAA;IAElD,MAAM,IAAI,GAAK,OAAO,CAAC,IAAI,IAAM,UAAU,CAAA;IAC3C,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,QAAQ,CAAA;IACzC,MAAM,IAAI,GAAK,OAAO,CAAC,IAAI,IAAM,MAAM,CAAA;IAEvC,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAS,CAAC,CAAA;IAC1E,IAAK,QAAgB,aAAhB,QAAQ,uBAAR,QAAQ,CAAU,EAAE;QAAE,OAAQ,QAAgB,CAAC,EAAE,CAAA;IAEtD,sEAAsE;IACtE,yEAAyE;IACzE,MAAM,GAAG,GAAG,MAAM,WAAW,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,EAAS,CAAC,CAAA;IAC/D,IAAK,GAAW,aAAX,GAAG,uBAAH,GAAG,CAAU,EAAE;QAAE,OAAQ,GAAW,CAAC,EAAE,CAAA;IAE5C,IAAI,OAAO,CAAC,YAAY;QAAE,OAAO,IAAI,CAAA;IAErC,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC,MAAM,CAAC;QACvC,IAAI,EAAI,OAAO,CAAC,IAAI,IAAI,GAAG,SAAS,IAAI,MAAM,IAAI,IAAI,EAAE;QACxD,IAAI,EAAE,IAAI,EAAE,MAAM;QAClB,KAAK,EAAG,MAAM;KACR,CAAC,CAAA;IACT,OAAQ,OAAe,CAAC,EAAE,CAAA;AAC5B,CAAC"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
// repos-factory.ts — Centralized repository factory
|
|
2
|
-
// Uses @mostajs/
|
|
2
|
+
// Uses @mostajs/data-plug to get the right dialect (ORM or NET)
|
|
3
3
|
// Author: Dr Hamid MADANI drmdh@msn.com
|
|
4
4
|
let _cached = null;
|
|
5
5
|
/** Get RBAC repositories — dialect resolved by octoswitcher (ORM or NET) */
|
|
6
6
|
export async function getRbacRepos() {
|
|
7
7
|
if (_cached)
|
|
8
8
|
return _cached;
|
|
9
|
-
const { getDialect } = await import('@mostajs/
|
|
9
|
+
const { getDialect } = await import('@mostajs/data-plug');
|
|
10
10
|
const { registerSchemas } = await import('@mostajs/orm');
|
|
11
11
|
const { UserSchema } = await import('../schemas/user.schema.js');
|
|
12
12
|
const { RoleSchema } = await import('../schemas/role.schema.js');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repos-factory.js","sourceRoot":"","sources":["../../lib/repos-factory.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,
|
|
1
|
+
{"version":3,"file":"repos-factory.js","sourceRoot":"","sources":["../../lib/repos-factory.ts"],"names":[],"mappings":"AAAA,oDAAoD;AACpD,gEAAgE;AAChE,wCAAwC;AA6ExC,IAAI,OAAO,GAAqB,IAAI,CAAC;AAErC,4EAA4E;AAC5E,MAAM,CAAC,KAAK,UAAU,YAAY;IAChC,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAE5B,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAC;IAC1D,MAAM,EAAE,eAAe,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;IACzD,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;IACjE,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,2BAA2B,CAAC,CAAC;IACjE,MAAM,EAAE,gBAAgB,EAAE,GAAG,MAAM,MAAM,CAAC,iCAAiC,CAAC,CAAC;IAC7E,MAAM,EAAE,wBAAwB,EAAE,GAAG,MAAM,MAAM,CAAC,0CAA0C,CAAC,CAAC;IAC9F,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,oCAAoC,CAAC,CAAC;IAC9E,MAAM,EAAE,cAAc,EAAE,GAAG,MAAM,MAAM,CAAC,oCAAoC,CAAC,CAAC;IAC9E,MAAM,EAAE,oBAAoB,EAAE,GAAG,MAAM,MAAM,CAAC,0CAA0C,CAAC,CAAC;IAC1F,MAAM,EAAE,4BAA4B,EAAE,GAAG,MAAM,MAAM,CAAC,mDAAmD,CAAC,CAAC;IAE3G,eAAe,CAAC,CAAC,UAAU,EAAE,UAAU,EAAE,gBAAgB,EAAE,wBAAwB,CAAC,CAAC,CAAC;IACtF,MAAM,OAAO,GAAG,MAAM,UAAU,EAAE,CAAC;IACnC,2FAA2F;IAC3F,IAAI,OAAQ,OAAe,CAAC,UAAU,KAAK,UAAU,EAAE,CAAC;QACtD,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;QACvD,MAAO,OAAe,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,OAAO,GAAG;QACR,KAAK,EAAE,IAAI,cAAc,CAAC,OAAc,CAAoB;QAC5D,KAAK,EAAE,IAAI,cAAc,CAAC,OAAc,CAAoB;QAC5D,WAAW,EAAE,IAAI,oBAAoB,CAAC,OAAc,CAA0B;QAC9E,UAAU,EAAE,IAAI,4BAA4B,CAAC,OAAc,CAAkC;KAC9F,CAAC;IACF,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,8BAA8B;AAC9B,MAAM,UAAU,cAAc,KAAW,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC"}
|
package/dist/server.d.ts
CHANGED
|
@@ -14,6 +14,8 @@ export { OCTONET_RBAC_SEED, OCTONET_PERMS } from './seeds/octonet';
|
|
|
14
14
|
export { hasPermission, matchesPermission } from './helpers/permissions';
|
|
15
15
|
export { createAdmin } from './lib/create-admin';
|
|
16
16
|
export type { CreateAdminOptions, CreateAdminResult } from './lib/create-admin';
|
|
17
|
+
export { resolveUserAccountId } from './lib/account-resolver';
|
|
18
|
+
export type { ResolveAccountOptions } from './lib/account-resolver';
|
|
17
19
|
export { getSchemas, moduleInfo } from './lib/module-info';
|
|
18
20
|
export { getPermissionsForRoleFromDB } from './lib/permissions-server';
|
|
19
21
|
//# sourceMappingURL=server.d.ts.map
|
package/dist/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../server.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAA;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAGxD,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;AAC3E,OAAO,EAAE,4BAA4B,EAAE,MAAM,+CAA+C,CAAA;AAC5F,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AAGrE,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAGtD,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAGlE,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAGxE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../server.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAA;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAGxD,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;AAC3E,OAAO,EAAE,4BAA4B,EAAE,MAAM,+CAA+C,CAAA;AAC5F,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AAGrE,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAA;AAGtD,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAGlE,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAGxE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAChD,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AAI/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAC7D,YAAY,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAA;AAGnE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAG1D,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAA"}
|
package/dist/server.js
CHANGED
|
@@ -22,6 +22,9 @@ export { OCTONET_RBAC_SEED, OCTONET_PERMS } from './seeds/octonet.js';
|
|
|
22
22
|
export { hasPermission, matchesPermission } from './helpers/permissions.js';
|
|
23
23
|
// Create admin (depends on repos → ORM + bcrypt)
|
|
24
24
|
export { createAdmin } from './lib/create-admin.js';
|
|
25
|
+
// Account resolver — lookup-or-create the personal Account for a User.
|
|
26
|
+
// Centralized so portals (Octocloud, etc.) don't reimplement it.
|
|
27
|
+
export { resolveUserAccountId } from './lib/account-resolver.js';
|
|
25
28
|
// Module info (schemas, seeds, metadata — for setup discovery)
|
|
26
29
|
export { getSchemas, moduleInfo } from './lib/module-info.js';
|
|
27
30
|
// Server-side permission DB lookup (depends on repos → ORM)
|
|
@@ -31,4 +34,26 @@ export { getPermissionsForRoleFromDB } from './lib/permissions-server.js';
|
|
|
31
34
|
// import { createUsersHandler } from '@mostajs/rbac/api/users'
|
|
32
35
|
// This keeps '@mostajs/rbac/server' Next-free for pure backend runtimes
|
|
33
36
|
// (Fastify, Express, raw Node) like Octonet.
|
|
37
|
+
// API handler factories
|
|
38
|
+
//export { createUsersHandler } from './api/users.js'
|
|
39
|
+
//export { createUsersIdHandler } from './api/users-id.js'
|
|
40
|
+
//export { createRolesHandler } from './api/roles.js'
|
|
41
|
+
//export { createRolesIdHandler } from './api/roles-id.js'
|
|
42
|
+
//export { createPermissionsHandler } from './api/permissions.js'
|
|
43
|
+
//export { createPermissionsIdHandler } from './api/permissions-id.js'
|
|
44
|
+
//export { createMatrixHandler } from './api/matrix.js'
|
|
45
|
+
//export { createCategoriesHandler } from './api/categories.js'
|
|
46
|
+
//export { createCategoriesIdHandler } from './api/categories-id.js'
|
|
47
|
+
//export { createSeedHandler } from './api/seed.js'
|
|
48
|
+
// Re-//export config types
|
|
49
|
+
//export type { UsersHandlerConfig } from './api/users.js'
|
|
50
|
+
//export type { UsersIdHandlerConfig } from './api/users-id.js'
|
|
51
|
+
//export type { RolesHandlerConfig } from './api/roles.js'
|
|
52
|
+
//export type { RolesIdHandlerConfig } from './api/roles-id.js'
|
|
53
|
+
//export type { PermissionsHandlerConfig } from './api/permissions.js'
|
|
54
|
+
//export type { PermissionsIdHandlerConfig } from './api/permissions-id.js'
|
|
55
|
+
//export type { MatrixHandlerConfig } from './api/matrix.js'
|
|
56
|
+
//export type { CategoriesHandlerConfig } from './api/categories.js'
|
|
57
|
+
//export type { CategoriesIdHandlerConfig } from './api/categories-id.js'
|
|
58
|
+
//export type { SeedHandlerConfig } from './api/seed.js'
|
|
34
59
|
//# sourceMappingURL=server.js.map
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../server.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,6DAA6D;AAC7D,mEAAmE;AAEnE,wEAAwE;AACxE,kEAAkE;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAA;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAExD,wCAAwC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;AAC3E,OAAO,EAAE,4BAA4B,EAAE,MAAM,+CAA+C,CAAA;AAC5F,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AAErE,qCAAqC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAG1C,yEAAyE;AACzE,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAElE,8BAA8B;AAC9B,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAExE,iDAAiD;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAGhD,+DAA+D;AAC/D,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAE1D,4DAA4D;AAC5D,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAA;AAEtE,0EAA0E;AAC1E,6EAA6E;AAC7E,iEAAiE;AACjE,wEAAwE;AACxE,6CAA6C"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../server.ts"],"names":[],"mappings":"AAAA,wCAAwC;AACxC,6DAA6D;AAC7D,mEAAmE;AAEnE,wEAAwE;AACxE,kEAAkE;AAClE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAA;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAA;AAC9D,OAAO,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAA;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAExD,wCAAwC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAA;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAA;AAC3E,OAAO,EAAE,4BAA4B,EAAE,MAAM,+CAA+C,CAAA;AAC5F,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAA;AAErE,qCAAqC;AACrC,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAA;AAG1C,yEAAyE;AACzE,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAElE,8BAA8B;AAC9B,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAExE,iDAAiD;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAA;AAGhD,uEAAuE;AACvE,iEAAiE;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAA;AAG7D,+DAA+D;AAC/D,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAE1D,4DAA4D;AAC5D,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAA;AAEtE,0EAA0E;AAC1E,6EAA6E;AAC7E,iEAAiE;AACjE,wEAAwE;AACxE,6CAA6C;AAK7C,wBAAwB;AACxB,kDAAkD;AAClD,uDAAuD;AACvD,kDAAkD;AAClD,uDAAuD;AACvD,8DAA8D;AAC9D,mEAAmE;AACnE,oDAAoD;AACpD,4DAA4D;AAC5D,iEAAiE;AACjE,gDAAgD;AAEhD,2BAA2B;AAC3B,uDAAuD;AACvD,4DAA4D;AAC5D,uDAAuD;AACvD,4DAA4D;AAC5D,mEAAmE;AACnE,wEAAwE;AACxE,yDAAyD;AACzD,iEAAiE;AACjE,sEAAsE;AACtE,qDAAqD"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mostajs/rbac",
|
|
3
|
-
"version": "2.3.
|
|
3
|
+
"version": "2.3.5",
|
|
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": "AGPL-3.0-or-later",
|
|
@@ -193,7 +193,7 @@
|
|
|
193
193
|
"prepublishOnly": "npm run build"
|
|
194
194
|
},
|
|
195
195
|
"dependencies": {
|
|
196
|
-
"@mostajs/
|
|
196
|
+
"@mostajs/data-plug": "^1.0.0",
|
|
197
197
|
"@mostajs/orm": "^1.0.0",
|
|
198
198
|
"bcryptjs": "^3.0.3",
|
|
199
199
|
"class-variance-authority": "^0.7.0",
|