@holoyan/adonisjs-permissions 1.3.1 → 1.3.3
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/README.md +9 -3
- package/build/src/mixins/has_permissions.d.ts +51 -47
- package/build/src/services/models/model_has_role_permissions.d.ts +13 -13
- package/build/src/services/permissions/empty_permission.d.ts +1 -1
- package/build/src/services/permissions/permission_has_model_roles.d.ts +2 -2
- package/build/src/services/permissions/permissions_service.d.ts +7 -7
- package/build/src/services/roles/empty_roles.d.ts +1 -1
- package/build/src/services/roles/role_has_model_permissions.d.ts +11 -11
- package/package.json +4 -4
package/README.md
CHANGED
|
@@ -14,8 +14,8 @@ Checkout other AdonisJS packages
|
|
|
14
14
|
|
|
15
15
|
## Release Notes
|
|
16
16
|
|
|
17
|
-
Version: >= v1.3.
|
|
18
|
-
*
|
|
17
|
+
Version: >= v1.3.2
|
|
18
|
+
* Fixed `permissionQueryHelpers()` mixin leaking internal relations (`_roles`, `_permissions`, `_model_roles`) into the public `related()` API, which caused incorrect IDE type inference on user-defined relations
|
|
19
19
|
|
|
20
20
|
## Table of Contents
|
|
21
21
|
|
|
@@ -89,9 +89,15 @@ await user.allow('delete', post)
|
|
|
89
89
|
To be able to use the full power of Acl, you should have a clear understanding of how it is structured and how it works. That's why the documentation will be divided into two parts: [Basic usage](#basic-usage) and [Advanced usage](#digging-deeper). For most applications, Basic Usage will be enough.
|
|
90
90
|
|
|
91
91
|
## Installation
|
|
92
|
-
|
|
92
|
+
|
|
93
|
+
For AdonisJS v7 (latest):
|
|
94
|
+
|
|
93
95
|
npm i @holoyan/adonisjs-permissions
|
|
94
96
|
|
|
97
|
+
For AdonisJS v6:
|
|
98
|
+
|
|
99
|
+
npm i @holoyan/adonisjs-permissions@v1-latest
|
|
100
|
+
|
|
95
101
|
|
|
96
102
|
Next publish config files
|
|
97
103
|
|
|
@@ -1,10 +1,8 @@
|
|
|
1
1
|
import type { NormalizeConstructor } from '@adonisjs/core/types/helpers';
|
|
2
2
|
import { BaseModel } from '@adonisjs/lucid/orm';
|
|
3
3
|
import { AclModel, ModelIdType } from '../types.js';
|
|
4
|
-
import type { ManyToMany, HasMany } from '@adonisjs/lucid/types/relations';
|
|
5
4
|
import Role from '../models/role.js';
|
|
6
5
|
import { LucidModel, LucidRow, ModelQueryBuilderContract } from '@adonisjs/lucid/types/model';
|
|
7
|
-
import { ModelRole, Permission } from '../../index.js';
|
|
8
6
|
import ModelPermission from '../models/model_permission.js';
|
|
9
7
|
export declare function hasPermissions(): <Model extends NormalizeConstructor<typeof BaseModel>>(superclass: Model) => {
|
|
10
8
|
new (...args: any[]): {
|
|
@@ -47,27 +45,27 @@ export declare function hasPermissions(): <Model extends NormalizeConstructor<ty
|
|
|
47
45
|
* returns list of permissions assigned to the model
|
|
48
46
|
* @param includeForbiddings
|
|
49
47
|
*/
|
|
50
|
-
permissions(includeForbiddings?: boolean): Promise<import("../models/permission.
|
|
48
|
+
permissions(includeForbiddings?: boolean): Promise<import("../models/permission.ts").default[]>;
|
|
51
49
|
/**
|
|
52
50
|
* returns list of global permissions assigned to the model
|
|
53
51
|
* @param includeForbiddings
|
|
54
52
|
*/
|
|
55
|
-
globalPermissions(includeForbiddings?: boolean): Promise<import("../models/permission.
|
|
53
|
+
globalPermissions(includeForbiddings?: boolean): Promise<import("../models/permission.ts").default[]>;
|
|
56
54
|
/**
|
|
57
55
|
* returns list of resource permissions assigned to the model
|
|
58
56
|
* @param includeForbiddings
|
|
59
57
|
*/
|
|
60
|
-
onResourcePermissions(includeForbiddings?: boolean): Promise<import("../models/permission.
|
|
58
|
+
onResourcePermissions(includeForbiddings?: boolean): Promise<import("../models/permission.ts").default[]>;
|
|
61
59
|
/**
|
|
62
60
|
* Returns list of direct permissions assigned to the model
|
|
63
61
|
* @param includeForbiddings
|
|
64
62
|
*/
|
|
65
|
-
directGlobalPermissions(includeForbiddings?: boolean): Promise<import("../models/permission.
|
|
63
|
+
directGlobalPermissions(includeForbiddings?: boolean): Promise<import("../models/permission.ts").default[]>;
|
|
66
64
|
/**
|
|
67
65
|
* Returns list of direct resource permissions assigned to the model
|
|
68
66
|
* @param includeForbiddings
|
|
69
67
|
*/
|
|
70
|
-
directResourcePermissions(includeForbiddings?: boolean): Promise<import("../models/permission.
|
|
68
|
+
directResourcePermissions(includeForbiddings?: boolean): Promise<import("../models/permission.ts").default[]>;
|
|
71
69
|
/**
|
|
72
70
|
* Check if model has "contains" permission
|
|
73
71
|
* If permission is forbidden, it will return true
|
|
@@ -227,7 +225,6 @@ export declare function hasPermissions(): <Model extends NormalizeConstructor<ty
|
|
|
227
225
|
$preloaded: {
|
|
228
226
|
[relation: string]: LucidRow | LucidRow[];
|
|
229
227
|
};
|
|
230
|
-
$columns: undefined;
|
|
231
228
|
$sideloaded: import("@adonisjs/lucid/types/model").ModelObject;
|
|
232
229
|
$primaryKeyValue?: number | string;
|
|
233
230
|
$isPersisted: boolean;
|
|
@@ -252,8 +249,8 @@ export declare function hasPermissions(): <Model extends NormalizeConstructor<ty
|
|
|
252
249
|
$getRelated(key: string, defaultValue?: any): import("@adonisjs/lucid/types/querybuilder").OneOrMany<LucidRow> | undefined | null;
|
|
253
250
|
$consumeAdapterResult(adapterResult: import("@adonisjs/lucid/types/model").ModelObject, sideloadAttributes?: import("@adonisjs/lucid/types/model").ModelObject): void;
|
|
254
251
|
$hydrateOriginals(): void;
|
|
255
|
-
fill(value: Partial<
|
|
256
|
-
merge(value: Partial<
|
|
252
|
+
fill(value: Partial<import("@adonisjs/lucid/types/model").ModelAttributes</*elided*/ any>>, allowExtraProperties?: boolean): /*elided*/ any;
|
|
253
|
+
merge(value: Partial<import("@adonisjs/lucid/types/model").ModelAttributes</*elided*/ any>>, allowExtraProperties?: boolean): /*elided*/ any;
|
|
257
254
|
isDirty(fields?: undefined[] | undefined): boolean;
|
|
258
255
|
enableForceUpdate(): /*elided*/ any;
|
|
259
256
|
save(): Promise</*elided*/ any>;
|
|
@@ -265,8 +262,8 @@ export declare function hasPermissions(): <Model extends NormalizeConstructor<ty
|
|
|
265
262
|
load: import("@adonisjs/lucid/types/model").LucidRowPreload</*elided*/ any>;
|
|
266
263
|
loadOnce: import("@adonisjs/lucid/types/model").LucidRowPreloadOnce</*elided*/ any>;
|
|
267
264
|
preload: import("@adonisjs/lucid/types/model").LucidRowPreload</*elided*/ any>;
|
|
268
|
-
loadAggregate: <Self extends /*elided*/ any, Name extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<Self>, RelatedBuilder = Self[Name] extends import("@adonisjs/lucid/types/relations").ModelRelations<LucidModel, LucidModel> ? Self[Name]["subQuery"] : never>(name: Name, callback: (builder: RelatedBuilder) => void) => import("@adonisjs/lucid/types/model").LazyLoadAggregatesContract<Self>;
|
|
269
|
-
loadCount: <Self extends /*elided*/ any, Name_1 extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<Self>, RelatedBuilder_1 = Self[Name_1] extends import("@adonisjs/lucid/types/relations").ModelRelations<LucidModel, LucidModel> ? Self[Name_1]["subQuery"] : never>(name: Name_1, callback?: ((builder: RelatedBuilder_1) => void) | undefined) => import("@adonisjs/lucid/types/model").LazyLoadAggregatesContract<Self>;
|
|
265
|
+
loadAggregate: <Self extends /*elided*/ any, Name extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<Self>, RelatedBuilder = NonNullable<Self[Name]> extends import("@adonisjs/lucid/types/relations").ModelRelations<LucidModel, LucidModel> ? (import("@adonisjs/lucid/types/relations").ModelRelations<LucidModel, LucidModel> & Self[Name] & {})["subQuery"] : never>(name: Name, callback: (builder: RelatedBuilder) => void) => import("@adonisjs/lucid/types/model").LazyLoadAggregatesContract<Self>;
|
|
266
|
+
loadCount: <Self extends /*elided*/ any, Name_1 extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<Self>, RelatedBuilder_1 = NonNullable<Self[Name_1]> extends import("@adonisjs/lucid/types/relations").ModelRelations<LucidModel, LucidModel> ? (import("@adonisjs/lucid/types/relations").ModelRelations<LucidModel, LucidModel> & Self[Name_1] & {})["subQuery"] : never>(name: Name_1, callback?: ((builder: RelatedBuilder_1) => void) | undefined) => import("@adonisjs/lucid/types/model").LazyLoadAggregatesContract<Self>;
|
|
270
267
|
serializeAttributes(fields?: import("@adonisjs/lucid/types/model").CherryPickFields, raw?: boolean): import("@adonisjs/lucid/types/model").ModelObject;
|
|
271
268
|
serializeComputed(fields?: import("@adonisjs/lucid/types/model").CherryPickFields): import("@adonisjs/lucid/types/model").ModelObject;
|
|
272
269
|
serializeRelations(fields: undefined, raw: true): {
|
|
@@ -277,18 +274,27 @@ export declare function hasPermissions(): <Model extends NormalizeConstructor<ty
|
|
|
277
274
|
serialize(cherryPick?: import("@adonisjs/lucid/types/model").CherryPick): import("@adonisjs/lucid/types/model").ModelObject;
|
|
278
275
|
toObject(): import("@adonisjs/lucid/types/model").ModelObject;
|
|
279
276
|
toJSON(): import("@adonisjs/lucid/types/model").ModelObject;
|
|
280
|
-
|
|
277
|
+
toAttributes(): Record<string, any>;
|
|
278
|
+
related<Name_2 extends undefined>(relation: Name_2): NonNullable</*elided*/ any[Name_2]> extends import("@adonisjs/lucid/types/relations").ModelRelations<LucidModel, LucidModel> ? (import("@adonisjs/lucid/types/relations").ModelRelations<LucidModel, LucidModel> & /*elided*/ any[Name_2] & {})["client"] : never;
|
|
281
279
|
};
|
|
280
|
+
connection?: string | undefined;
|
|
281
|
+
after: {
|
|
282
|
+
<Model_1 extends LucidModel>(this: Model_1, event: "fetch", handler: import("@adonisjs/lucid/types/model").HooksHandler<InstanceType<Model_1>[], "fetch">): void;
|
|
283
|
+
<Model_1 extends LucidModel>(this: Model_1, event: "paginate", handler: import("@adonisjs/lucid/types/model").HooksHandler<import("@adonisjs/lucid/types/model").ModelPaginatorContract<InstanceType<Model_1>>, "paginate">): void;
|
|
284
|
+
<Model_1 extends LucidModel, Event extends import("@adonisjs/lucid/types/model").EventsList>(this: Model_1, event: Event, handler: import("@adonisjs/lucid/types/model").HooksHandler<InstanceType<Model_1>, Event>): void;
|
|
285
|
+
};
|
|
286
|
+
query: <Model_1 extends LucidModel, Result = InstanceType<Model_1>>(this: Model_1, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions) => ModelQueryBuilderContract<Model_1, Result>;
|
|
287
|
+
truncate: (cascade?: boolean) => Promise<void>;
|
|
288
|
+
table: string;
|
|
289
|
+
transaction: import("@adonisjs/lucid/types/database").TransactionFn;
|
|
282
290
|
find: <T extends LucidModel>(this: T, value: any, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions) => Promise<null | InstanceType<T>>;
|
|
283
291
|
all: <T extends LucidModel>(this: T, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions) => Promise<InstanceType<T>[]>;
|
|
284
292
|
namingStrategy: import("@adonisjs/lucid/types/model").NamingStrategyContract;
|
|
285
|
-
connection?: string | undefined;
|
|
286
293
|
readonly booted: boolean;
|
|
287
294
|
$columnsDefinitions: Map<string, import("@adonisjs/lucid/types/model").ModelColumnOptions>;
|
|
288
295
|
$relationsDefinitions: Map<string, import("@adonisjs/lucid/types/relations").RelationshipsContract>;
|
|
289
296
|
$computedDefinitions: Map<string, import("@adonisjs/lucid/types/model").ComputedOptions>;
|
|
290
297
|
primaryKey: string;
|
|
291
|
-
table: string;
|
|
292
298
|
selfAssignPrimaryKey: boolean;
|
|
293
299
|
$adapter: import("@adonisjs/lucid/types/model").AdapterContract;
|
|
294
300
|
useAdapter: (adapter: import("@adonisjs/lucid/types/model").AdapterContract) => void;
|
|
@@ -300,31 +306,29 @@ export declare function hasPermissions(): <Model extends NormalizeConstructor<ty
|
|
|
300
306
|
columnsToSerialized: import("@adonisjs/lucid/types/model").ModelKeysContract;
|
|
301
307
|
serializedToColumns: import("@adonisjs/lucid/types/model").ModelKeysContract;
|
|
302
308
|
serializedToAttributes: import("@adonisjs/lucid/types/model").ModelKeysContract;
|
|
309
|
+
columnAliasesToAttributes: import("@adonisjs/lucid/types/model").ModelKeysContract;
|
|
303
310
|
};
|
|
304
311
|
$createFromAdapterResult: <T extends LucidModel>(this: T, result?: import("@adonisjs/lucid/types/model").ModelObject, sideloadAttributes?: import("@adonisjs/lucid/types/model").ModelObject, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions) => null | InstanceType<T>;
|
|
305
312
|
$createMultipleFromAdapterResult: <T extends LucidModel>(this: T, results: import("@adonisjs/lucid/types/model").ModelObject[], sideloadAttributes?: import("@adonisjs/lucid/types/model").ModelObject, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions) => InstanceType<T>[];
|
|
306
313
|
$addColumn: (name: string, options: Partial<import("@adonisjs/lucid/types/model").ColumnOptions>) => import("@adonisjs/lucid/types/model").ColumnOptions;
|
|
307
314
|
$hasColumn: (name: string) => boolean;
|
|
308
315
|
$getColumn: (name: string) => import("@adonisjs/lucid/types/model").ModelColumnOptions | undefined;
|
|
316
|
+
$getColumnAlias: (columnName: string) => string;
|
|
317
|
+
columnsForSelect: () => Record<string, string>;
|
|
309
318
|
$addComputed: (name: string, options: Partial<import("@adonisjs/lucid/types/model").ComputedOptions>) => import("@adonisjs/lucid/types/model").ComputedOptions;
|
|
310
319
|
$hasComputed: (name: string) => boolean;
|
|
311
320
|
$getComputed: (name: string) => import("@adonisjs/lucid/types/model").ComputedOptions | undefined;
|
|
312
321
|
$addRelation: (name: string, type: import("@adonisjs/lucid/types/relations").ModelRelationTypes["__opaque_type"], relatedModel: () => LucidModel, options: import("@adonisjs/lucid/types/model").ModelRelationOptions) => void;
|
|
313
322
|
$hasRelation: (name: string) => boolean;
|
|
314
323
|
$getRelation: {
|
|
315
|
-
<Model_1 extends LucidModel, Name_2 extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<InstanceType<Model_1>>>(this: Model_1, name: Name_2): InstanceType<Model_1>[Name_2] extends import("@adonisjs/lucid/types/relations").ModelRelations<LucidModel, LucidModel> ? InstanceType<Model_1>[Name_2]["client"]["relation"] : import("@adonisjs/lucid/types/relations").RelationshipsContract;
|
|
324
|
+
<Model_1 extends LucidModel, Name_2 extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<InstanceType<Model_1>>>(this: Model_1, name: Name_2): NonNullable<InstanceType<Model_1>[Name_2]> extends import("@adonisjs/lucid/types/relations").ModelRelations<LucidModel, LucidModel> ? NonNullable<InstanceType<Model_1>[Name_2]>["client"]["relation"] : import("@adonisjs/lucid/types/relations").RelationshipsContract;
|
|
316
325
|
<Model_1 extends LucidModel>(this: Model_1, name: string): import("@adonisjs/lucid/types/relations").RelationshipsContract;
|
|
317
326
|
};
|
|
318
327
|
$defineProperty: <Model_1 extends LucidModel, Prop extends keyof Model_1>(this: Model_1, propertyName: Prop, defaultValue: Model_1[Prop], strategy: "inherit" | "define" | ((value: Model_1[Prop]) => Model_1[Prop])) => void;
|
|
319
328
|
boot: () => void;
|
|
320
329
|
before: {
|
|
321
|
-
<Model_1 extends LucidModel,
|
|
330
|
+
<Model_1 extends LucidModel, Event_1 extends "find" | "fetch">(this: Model_1, event: Event_1, handler: import("@adonisjs/lucid/types/model").HooksHandler<ModelQueryBuilderContract<Model_1>, Event_1>): void;
|
|
322
331
|
<Model_1 extends LucidModel>(this: Model_1, event: "paginate", handler: import("@adonisjs/lucid/types/model").HooksHandler<[ModelQueryBuilderContract<Model_1>, ModelQueryBuilderContract<Model_1>], "paginate">): void;
|
|
323
|
-
<Model_1 extends LucidModel, Event_1 extends import("@adonisjs/lucid/types/model").EventsList>(this: Model_1, event: Event_1, handler: import("@adonisjs/lucid/types/model").HooksHandler<InstanceType<Model_1>, Event_1>): void;
|
|
324
|
-
};
|
|
325
|
-
after: {
|
|
326
|
-
<Model_1 extends LucidModel>(this: Model_1, event: "fetch", handler: import("@adonisjs/lucid/types/model").HooksHandler<InstanceType<Model_1>[], "fetch">): void;
|
|
327
|
-
<Model_1 extends LucidModel>(this: Model_1, event: "paginate", handler: import("@adonisjs/lucid/types/model").HooksHandler<import("@adonisjs/lucid/types/model").ModelPaginatorContract<InstanceType<Model_1>>, "paginate">): void;
|
|
328
332
|
<Model_1 extends LucidModel, Event_2 extends import("@adonisjs/lucid/types/model").EventsList>(this: Model_1, event: Event_2, handler: import("@adonisjs/lucid/types/model").HooksHandler<InstanceType<Model_1>, Event_2>): void;
|
|
329
333
|
};
|
|
330
334
|
create: <T extends LucidModel>(this: T, values: Partial<import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T>>>, options?: import("@adonisjs/lucid/types/model").ModelAssignOptions) => Promise<InstanceType<T>>;
|
|
@@ -353,17 +357,14 @@ export declare function hasPermissions(): <Model extends NormalizeConstructor<ty
|
|
|
353
357
|
fetchOrNewUpMany: <T extends LucidModel>(this: T, predicate: keyof import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T>> | (keyof import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T>>)[], payload: Partial<import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T>>>[], options?: import("@adonisjs/lucid/types/model").ModelAssignOptions) => Promise<InstanceType<T>[]>;
|
|
354
358
|
fetchOrCreateMany: <T extends LucidModel>(this: T, predicate: keyof import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T>> | (keyof import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T>>)[], payload: Partial<import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T>>>[], options?: import("@adonisjs/lucid/types/model").ModelAssignOptions) => Promise<InstanceType<T>[]>;
|
|
355
359
|
updateOrCreateMany: <T extends LucidModel>(this: T, predicate: keyof import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T>> | (keyof import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T>>)[], payload: Partial<import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T>>>[], options?: import("@adonisjs/lucid/types/model").ModelAssignOptions) => Promise<InstanceType<T>[]>;
|
|
356
|
-
query: <Model_1 extends LucidModel, Result = InstanceType<Model_1>>(this: Model_1, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions) => ModelQueryBuilderContract<Model_1, Result>;
|
|
357
|
-
transaction: import("@adonisjs/lucid/types/database").TransactionFn;
|
|
358
|
-
truncate: (cascade?: boolean) => Promise<void>;
|
|
359
360
|
} & Model;
|
|
360
361
|
export declare function permissionQueryHelpers(): <Model extends NormalizeConstructor<typeof BaseModel>>(superclass: Model) => {
|
|
361
362
|
new (...args: any[]): {
|
|
362
|
-
_roles:
|
|
363
|
+
_roles: undefined;
|
|
363
364
|
_whereRoles<TargetClass extends Model>(query: ModelQueryBuilderContract<LucidModel, LucidRow>, targetClass: TargetClass, ...roles: string[]): ModelQueryBuilderContract<LucidModel, LucidRow>;
|
|
364
|
-
_permissions:
|
|
365
|
+
_permissions: undefined;
|
|
365
366
|
_whereDirectPermissions<TargetClass extends Model>(query: ModelQueryBuilderContract<LucidModel, LucidRow>, targetClass: TargetClass, permissions: string[], target?: AclModel | Function): ModelQueryBuilderContract<LucidModel, LucidRow>;
|
|
366
|
-
_model_roles:
|
|
367
|
+
_model_roles: undefined;
|
|
367
368
|
_whereRolePermissions<TargetClass extends Model>(query: ModelQueryBuilderContract<LucidModel, LucidRow>, targetClass: TargetClass, permissions: string[], target?: AclModel | Function): ModelQueryBuilderContract<LucidModel, LucidRow>;
|
|
368
369
|
_wherePermissions<TargetClass extends Model>(query: ModelQueryBuilderContract<LucidModel, LucidRow>, targetClass: TargetClass, permissions: string[], target?: AclModel | Function): void;
|
|
369
370
|
$attributes: import("@adonisjs/lucid/types/model").ModelObject;
|
|
@@ -372,7 +373,6 @@ export declare function permissionQueryHelpers(): <Model extends NormalizeConstr
|
|
|
372
373
|
$preloaded: {
|
|
373
374
|
[relation: string]: LucidRow | LucidRow[];
|
|
374
375
|
};
|
|
375
|
-
$columns: undefined;
|
|
376
376
|
$sideloaded: import("@adonisjs/lucid/types/model").ModelObject;
|
|
377
377
|
$primaryKeyValue?: number | string;
|
|
378
378
|
$isPersisted: boolean;
|
|
@@ -397,9 +397,9 @@ export declare function permissionQueryHelpers(): <Model extends NormalizeConstr
|
|
|
397
397
|
$getRelated(key: string, defaultValue?: any): import("@adonisjs/lucid/types/querybuilder").OneOrMany<LucidRow> | undefined | null;
|
|
398
398
|
$consumeAdapterResult(adapterResult: import("@adonisjs/lucid/types/model").ModelObject, sideloadAttributes?: import("@adonisjs/lucid/types/model").ModelObject): void;
|
|
399
399
|
$hydrateOriginals(): void;
|
|
400
|
-
fill(value: Partial<
|
|
401
|
-
merge(value: Partial<
|
|
402
|
-
isDirty(fields?: undefined[] | undefined): boolean;
|
|
400
|
+
fill(value: Partial<import("@adonisjs/lucid/types/model").ModelAttributes</*elided*/ any>>, allowExtraProperties?: boolean): /*elided*/ any;
|
|
401
|
+
merge(value: Partial<import("@adonisjs/lucid/types/model").ModelAttributes</*elided*/ any>>, allowExtraProperties?: boolean): /*elided*/ any;
|
|
402
|
+
isDirty(fields?: "_roles" | "_permissions" | "_model_roles" | ("_roles" | "_permissions" | "_model_roles" | undefined)[] | undefined): boolean;
|
|
403
403
|
enableForceUpdate(): /*elided*/ any;
|
|
404
404
|
save(): Promise</*elided*/ any>;
|
|
405
405
|
saveQuietly(): Promise</*elided*/ any>;
|
|
@@ -410,8 +410,8 @@ export declare function permissionQueryHelpers(): <Model extends NormalizeConstr
|
|
|
410
410
|
load: import("@adonisjs/lucid/types/model").LucidRowPreload</*elided*/ any>;
|
|
411
411
|
loadOnce: import("@adonisjs/lucid/types/model").LucidRowPreloadOnce</*elided*/ any>;
|
|
412
412
|
preload: import("@adonisjs/lucid/types/model").LucidRowPreload</*elided*/ any>;
|
|
413
|
-
loadAggregate: <Self extends /*elided*/ any, Name extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<Self>, RelatedBuilder = Self[Name] extends import("@adonisjs/lucid/types/relations").ModelRelations<LucidModel, LucidModel> ? Self[Name]["subQuery"] : never>(name: Name, callback: (builder: RelatedBuilder) => void) => import("@adonisjs/lucid/types/model").LazyLoadAggregatesContract<Self>;
|
|
414
|
-
loadCount: <Self extends /*elided*/ any, Name_1 extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<Self>, RelatedBuilder_1 = Self[Name_1] extends import("@adonisjs/lucid/types/relations").ModelRelations<LucidModel, LucidModel> ? Self[Name_1]["subQuery"] : never>(name: Name_1, callback?: ((builder: RelatedBuilder_1) => void) | undefined) => import("@adonisjs/lucid/types/model").LazyLoadAggregatesContract<Self>;
|
|
413
|
+
loadAggregate: <Self extends /*elided*/ any, Name extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<Self>, RelatedBuilder = NonNullable<Self[Name]> extends import("@adonisjs/lucid/types/relations").ModelRelations<LucidModel, LucidModel> ? (import("@adonisjs/lucid/types/relations").ModelRelations<LucidModel, LucidModel> & Self[Name] & {})["subQuery"] : never>(name: Name, callback: (builder: RelatedBuilder) => void) => import("@adonisjs/lucid/types/model").LazyLoadAggregatesContract<Self>;
|
|
414
|
+
loadCount: <Self extends /*elided*/ any, Name_1 extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<Self>, RelatedBuilder_1 = NonNullable<Self[Name_1]> extends import("@adonisjs/lucid/types/relations").ModelRelations<LucidModel, LucidModel> ? (import("@adonisjs/lucid/types/relations").ModelRelations<LucidModel, LucidModel> & Self[Name_1] & {})["subQuery"] : never>(name: Name_1, callback?: ((builder: RelatedBuilder_1) => void) | undefined) => import("@adonisjs/lucid/types/model").LazyLoadAggregatesContract<Self>;
|
|
415
415
|
serializeAttributes(fields?: import("@adonisjs/lucid/types/model").CherryPickFields, raw?: boolean): import("@adonisjs/lucid/types/model").ModelObject;
|
|
416
416
|
serializeComputed(fields?: import("@adonisjs/lucid/types/model").CherryPickFields): import("@adonisjs/lucid/types/model").ModelObject;
|
|
417
417
|
serializeRelations(fields: undefined, raw: true): {
|
|
@@ -422,18 +422,27 @@ export declare function permissionQueryHelpers(): <Model extends NormalizeConstr
|
|
|
422
422
|
serialize(cherryPick?: import("@adonisjs/lucid/types/model").CherryPick): import("@adonisjs/lucid/types/model").ModelObject;
|
|
423
423
|
toObject(): import("@adonisjs/lucid/types/model").ModelObject;
|
|
424
424
|
toJSON(): import("@adonisjs/lucid/types/model").ModelObject;
|
|
425
|
-
|
|
425
|
+
toAttributes(): Record<string, any>;
|
|
426
|
+
related<Name_2 extends undefined>(relation: Name_2): NonNullable</*elided*/ any[Name_2]> extends import("@adonisjs/lucid/types/relations").ModelRelations<LucidModel, LucidModel> ? (import("@adonisjs/lucid/types/relations").ModelRelations<LucidModel, LucidModel> & /*elided*/ any[Name_2] & {})["client"] : never;
|
|
426
427
|
};
|
|
428
|
+
connection?: string | undefined;
|
|
429
|
+
after: {
|
|
430
|
+
<Model_1 extends LucidModel>(this: Model_1, event: "fetch", handler: import("@adonisjs/lucid/types/model").HooksHandler<InstanceType<Model_1>[], "fetch">): void;
|
|
431
|
+
<Model_1 extends LucidModel>(this: Model_1, event: "paginate", handler: import("@adonisjs/lucid/types/model").HooksHandler<import("@adonisjs/lucid/types/model").ModelPaginatorContract<InstanceType<Model_1>>, "paginate">): void;
|
|
432
|
+
<Model_1 extends LucidModel, Event extends import("@adonisjs/lucid/types/model").EventsList>(this: Model_1, event: Event, handler: import("@adonisjs/lucid/types/model").HooksHandler<InstanceType<Model_1>, Event>): void;
|
|
433
|
+
};
|
|
434
|
+
query: <Model_1 extends LucidModel, Result = InstanceType<Model_1>>(this: Model_1, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions) => ModelQueryBuilderContract<Model_1, Result>;
|
|
435
|
+
truncate: (cascade?: boolean) => Promise<void>;
|
|
436
|
+
table: string;
|
|
437
|
+
transaction: import("@adonisjs/lucid/types/database").TransactionFn;
|
|
427
438
|
find: <T extends LucidModel>(this: T, value: any, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions) => Promise<null | InstanceType<T>>;
|
|
428
439
|
all: <T extends LucidModel>(this: T, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions) => Promise<InstanceType<T>[]>;
|
|
429
440
|
namingStrategy: import("@adonisjs/lucid/types/model").NamingStrategyContract;
|
|
430
|
-
connection?: string | undefined;
|
|
431
441
|
readonly booted: boolean;
|
|
432
442
|
$columnsDefinitions: Map<string, import("@adonisjs/lucid/types/model").ModelColumnOptions>;
|
|
433
443
|
$relationsDefinitions: Map<string, import("@adonisjs/lucid/types/relations").RelationshipsContract>;
|
|
434
444
|
$computedDefinitions: Map<string, import("@adonisjs/lucid/types/model").ComputedOptions>;
|
|
435
445
|
primaryKey: string;
|
|
436
|
-
table: string;
|
|
437
446
|
selfAssignPrimaryKey: boolean;
|
|
438
447
|
$adapter: import("@adonisjs/lucid/types/model").AdapterContract;
|
|
439
448
|
useAdapter: (adapter: import("@adonisjs/lucid/types/model").AdapterContract) => void;
|
|
@@ -445,31 +454,29 @@ export declare function permissionQueryHelpers(): <Model extends NormalizeConstr
|
|
|
445
454
|
columnsToSerialized: import("@adonisjs/lucid/types/model").ModelKeysContract;
|
|
446
455
|
serializedToColumns: import("@adonisjs/lucid/types/model").ModelKeysContract;
|
|
447
456
|
serializedToAttributes: import("@adonisjs/lucid/types/model").ModelKeysContract;
|
|
457
|
+
columnAliasesToAttributes: import("@adonisjs/lucid/types/model").ModelKeysContract;
|
|
448
458
|
};
|
|
449
459
|
$createFromAdapterResult: <T extends LucidModel>(this: T, result?: import("@adonisjs/lucid/types/model").ModelObject, sideloadAttributes?: import("@adonisjs/lucid/types/model").ModelObject, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions) => null | InstanceType<T>;
|
|
450
460
|
$createMultipleFromAdapterResult: <T extends LucidModel>(this: T, results: import("@adonisjs/lucid/types/model").ModelObject[], sideloadAttributes?: import("@adonisjs/lucid/types/model").ModelObject, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions) => InstanceType<T>[];
|
|
451
461
|
$addColumn: (name: string, options: Partial<import("@adonisjs/lucid/types/model").ColumnOptions>) => import("@adonisjs/lucid/types/model").ColumnOptions;
|
|
452
462
|
$hasColumn: (name: string) => boolean;
|
|
453
463
|
$getColumn: (name: string) => import("@adonisjs/lucid/types/model").ModelColumnOptions | undefined;
|
|
464
|
+
$getColumnAlias: (columnName: string) => string;
|
|
465
|
+
columnsForSelect: () => Record<string, string>;
|
|
454
466
|
$addComputed: (name: string, options: Partial<import("@adonisjs/lucid/types/model").ComputedOptions>) => import("@adonisjs/lucid/types/model").ComputedOptions;
|
|
455
467
|
$hasComputed: (name: string) => boolean;
|
|
456
468
|
$getComputed: (name: string) => import("@adonisjs/lucid/types/model").ComputedOptions | undefined;
|
|
457
469
|
$addRelation: (name: string, type: import("@adonisjs/lucid/types/relations").ModelRelationTypes["__opaque_type"], relatedModel: () => LucidModel, options: import("@adonisjs/lucid/types/model").ModelRelationOptions) => void;
|
|
458
470
|
$hasRelation: (name: string) => boolean;
|
|
459
471
|
$getRelation: {
|
|
460
|
-
<Model_1 extends LucidModel, Name_2 extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<InstanceType<Model_1>>>(this: Model_1, name: Name_2): InstanceType<Model_1>[Name_2] extends import("@adonisjs/lucid/types/relations").ModelRelations<LucidModel, LucidModel> ? InstanceType<Model_1>[Name_2]["client"]["relation"] : import("@adonisjs/lucid/types/relations").RelationshipsContract;
|
|
472
|
+
<Model_1 extends LucidModel, Name_2 extends import("@adonisjs/lucid/types/relations").ExtractModelRelations<InstanceType<Model_1>>>(this: Model_1, name: Name_2): NonNullable<InstanceType<Model_1>[Name_2]> extends import("@adonisjs/lucid/types/relations").ModelRelations<LucidModel, LucidModel> ? NonNullable<InstanceType<Model_1>[Name_2]>["client"]["relation"] : import("@adonisjs/lucid/types/relations").RelationshipsContract;
|
|
461
473
|
<Model_1 extends LucidModel>(this: Model_1, name: string): import("@adonisjs/lucid/types/relations").RelationshipsContract;
|
|
462
474
|
};
|
|
463
475
|
$defineProperty: <Model_1 extends LucidModel, Prop extends keyof Model_1>(this: Model_1, propertyName: Prop, defaultValue: Model_1[Prop], strategy: "inherit" | "define" | ((value: Model_1[Prop]) => Model_1[Prop])) => void;
|
|
464
476
|
boot: () => void;
|
|
465
477
|
before: {
|
|
466
|
-
<Model_1 extends LucidModel,
|
|
478
|
+
<Model_1 extends LucidModel, Event_1 extends "find" | "fetch">(this: Model_1, event: Event_1, handler: import("@adonisjs/lucid/types/model").HooksHandler<ModelQueryBuilderContract<Model_1>, Event_1>): void;
|
|
467
479
|
<Model_1 extends LucidModel>(this: Model_1, event: "paginate", handler: import("@adonisjs/lucid/types/model").HooksHandler<[ModelQueryBuilderContract<Model_1>, ModelQueryBuilderContract<Model_1>], "paginate">): void;
|
|
468
|
-
<Model_1 extends LucidModel, Event_1 extends import("@adonisjs/lucid/types/model").EventsList>(this: Model_1, event: Event_1, handler: import("@adonisjs/lucid/types/model").HooksHandler<InstanceType<Model_1>, Event_1>): void;
|
|
469
|
-
};
|
|
470
|
-
after: {
|
|
471
|
-
<Model_1 extends LucidModel>(this: Model_1, event: "fetch", handler: import("@adonisjs/lucid/types/model").HooksHandler<InstanceType<Model_1>[], "fetch">): void;
|
|
472
|
-
<Model_1 extends LucidModel>(this: Model_1, event: "paginate", handler: import("@adonisjs/lucid/types/model").HooksHandler<import("@adonisjs/lucid/types/model").ModelPaginatorContract<InstanceType<Model_1>>, "paginate">): void;
|
|
473
480
|
<Model_1 extends LucidModel, Event_2 extends import("@adonisjs/lucid/types/model").EventsList>(this: Model_1, event: Event_2, handler: import("@adonisjs/lucid/types/model").HooksHandler<InstanceType<Model_1>, Event_2>): void;
|
|
474
481
|
};
|
|
475
482
|
create: <T extends LucidModel>(this: T, values: Partial<import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T>>>, options?: import("@adonisjs/lucid/types/model").ModelAssignOptions) => Promise<InstanceType<T>>;
|
|
@@ -498,7 +505,4 @@ export declare function permissionQueryHelpers(): <Model extends NormalizeConstr
|
|
|
498
505
|
fetchOrNewUpMany: <T extends LucidModel>(this: T, predicate: keyof import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T>> | (keyof import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T>>)[], payload: Partial<import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T>>>[], options?: import("@adonisjs/lucid/types/model").ModelAssignOptions) => Promise<InstanceType<T>[]>;
|
|
499
506
|
fetchOrCreateMany: <T extends LucidModel>(this: T, predicate: keyof import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T>> | (keyof import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T>>)[], payload: Partial<import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T>>>[], options?: import("@adonisjs/lucid/types/model").ModelAssignOptions) => Promise<InstanceType<T>[]>;
|
|
500
507
|
updateOrCreateMany: <T extends LucidModel>(this: T, predicate: keyof import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T>> | (keyof import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T>>)[], payload: Partial<import("@adonisjs/lucid/types/model").ModelAttributes<InstanceType<T>>>[], options?: import("@adonisjs/lucid/types/model").ModelAssignOptions) => Promise<InstanceType<T>[]>;
|
|
501
|
-
query: <Model_1 extends LucidModel, Result = InstanceType<Model_1>>(this: Model_1, options?: import("@adonisjs/lucid/types/model").ModelAdapterOptions) => ModelQueryBuilderContract<Model_1, Result>;
|
|
502
|
-
transaction: import("@adonisjs/lucid/types/database").TransactionFn;
|
|
503
|
-
truncate: (cascade?: boolean) => Promise<void>;
|
|
504
508
|
} & Model;
|
|
@@ -15,7 +15,7 @@ export declare class ModelHasRolePermissions extends BaseAdapter {
|
|
|
15
15
|
constructor(manager: ModelManager, map: MorphInterface, options: OptionsInterface, scope: Scope, model: AclModel, emitter: Emitter<any>);
|
|
16
16
|
get roleService(): RolesService;
|
|
17
17
|
get permissionService(): PermissionService;
|
|
18
|
-
roles(): import("@adonisjs/lucid/types/model").ModelQueryBuilderContract<typeof import("../../models/role.
|
|
18
|
+
roles(): import("@adonisjs/lucid/types/model").ModelQueryBuilderContract<typeof import("../../models/role.ts").default, import("../../models/role.ts").default>;
|
|
19
19
|
hasRole(role: string): Promise<boolean>;
|
|
20
20
|
hasAllRoles(...roles: string[]): Promise<boolean>;
|
|
21
21
|
hasAnyRole(...roles: string[]): Promise<boolean>;
|
|
@@ -59,24 +59,24 @@ export declare class ModelHasRolePermissions extends BaseAdapter {
|
|
|
59
59
|
* @param roles
|
|
60
60
|
*/
|
|
61
61
|
syncRolesWithoutDetaching(roles: string[]): Promise<void>;
|
|
62
|
-
permissions(includeForbiddings?: boolean): Promise<import("../../models/permission.
|
|
62
|
+
permissions(includeForbiddings?: boolean): Promise<import("../../models/permission.ts").default[]>;
|
|
63
63
|
/**
|
|
64
64
|
* returns list of global permissions assigned to the model
|
|
65
65
|
* @param includeForbiddings
|
|
66
66
|
*/
|
|
67
|
-
globalPermissions(includeForbiddings?: boolean): Promise<import("../../models/permission.
|
|
67
|
+
globalPermissions(includeForbiddings?: boolean): Promise<import("../../models/permission.ts").default[]>;
|
|
68
68
|
/**
|
|
69
69
|
* @param includeForbiddings
|
|
70
70
|
*/
|
|
71
|
-
onResourcePermissions(includeForbiddings?: boolean): Promise<import("../../models/permission.
|
|
72
|
-
directPermissions(includeForbiddings?: boolean): import("@adonisjs/lucid/types/model").ModelQueryBuilderContract<typeof import("../../models/permission.
|
|
71
|
+
onResourcePermissions(includeForbiddings?: boolean): Promise<import("../../models/permission.ts").default[]>;
|
|
72
|
+
directPermissions(includeForbiddings?: boolean): import("@adonisjs/lucid/types/model").ModelQueryBuilderContract<typeof import("../../models/permission.ts").default, import("../../models/permission.ts").default>;
|
|
73
73
|
/**
|
|
74
74
|
* Get permission through roles
|
|
75
75
|
* @param includeForbiddings
|
|
76
76
|
*/
|
|
77
|
-
rolePermissions(includeForbiddings?: boolean): Promise<import("../../models/permission.
|
|
78
|
-
directGlobalPermissions(includeForbiddings?: boolean): Promise<import("../../models/permission.
|
|
79
|
-
directResourcePermissions(includeForbiddings?: boolean): Promise<import("../../models/permission.
|
|
77
|
+
rolePermissions(includeForbiddings?: boolean): Promise<import("../../models/permission.ts").default[]>;
|
|
78
|
+
directGlobalPermissions(includeForbiddings?: boolean): Promise<import("../../models/permission.ts").default[]>;
|
|
79
|
+
directResourcePermissions(includeForbiddings?: boolean): Promise<import("../../models/permission.ts").default[]>;
|
|
80
80
|
containsPermission(permission: string): Promise<boolean>;
|
|
81
81
|
contains(permission: string): Promise<boolean>;
|
|
82
82
|
containsAllPermissions(permissions: string[]): Promise<boolean>;
|
|
@@ -125,27 +125,27 @@ export declare class ModelHasRolePermissions extends BaseAdapter {
|
|
|
125
125
|
* @param permission
|
|
126
126
|
* @param target
|
|
127
127
|
*/
|
|
128
|
-
assignDirectPermission(permission: string, target?: AclModel | Function): Promise<import("../../models/model_permission.
|
|
128
|
+
assignDirectPermission(permission: string, target?: AclModel | Function): Promise<import("../../models/model_permission.ts").default[]>;
|
|
129
129
|
/**
|
|
130
130
|
*
|
|
131
131
|
* @param permissions
|
|
132
132
|
* @param target
|
|
133
133
|
*/
|
|
134
|
-
assignDirectAllPermissions(permissions: string[], target?: AclModel | Function): Promise<import("../../models/model_permission.
|
|
134
|
+
assignDirectAllPermissions(permissions: string[], target?: AclModel | Function): Promise<import("../../models/model_permission.ts").default[]>;
|
|
135
135
|
/**
|
|
136
136
|
* Assign permission to the model
|
|
137
137
|
* calls assignDirectAllPermissions
|
|
138
138
|
* @param permission
|
|
139
139
|
* @param target
|
|
140
140
|
*/
|
|
141
|
-
allow(permission: string, target?: AclModel | Function): Promise<import("../../models/model_permission.
|
|
141
|
+
allow(permission: string, target?: AclModel | Function): Promise<import("../../models/model_permission.ts").default[]>;
|
|
142
142
|
/**
|
|
143
143
|
* Assign list of permissions to the model
|
|
144
144
|
* calls assignDirectAllPermissions
|
|
145
145
|
* @param permission
|
|
146
146
|
* @param target
|
|
147
147
|
*/
|
|
148
|
-
allowAll(permission: string[], target?: AclModel | Function): Promise<import("../../models/model_permission.
|
|
148
|
+
allowAll(permission: string[], target?: AclModel | Function): Promise<import("../../models/model_permission.ts").default[]>;
|
|
149
149
|
/**
|
|
150
150
|
* Revoke permission from the model
|
|
151
151
|
* calls revokeAllPermissions
|
|
@@ -177,7 +177,7 @@ export declare class ModelHasRolePermissions extends BaseAdapter {
|
|
|
177
177
|
* @param permissions
|
|
178
178
|
* @param target
|
|
179
179
|
*/
|
|
180
|
-
syncPermissions(permissions: string[], target?: AclModel | Function): Promise<import("../../models/model_permission.
|
|
180
|
+
syncPermissions(permissions: string[], target?: AclModel | Function): Promise<import("../../models/model_permission.ts").default[]>;
|
|
181
181
|
flush(): Promise<boolean>;
|
|
182
182
|
/**
|
|
183
183
|
* calls forbidAll
|
|
@@ -12,6 +12,6 @@ export default class EmptyPermission extends BaseAdapter {
|
|
|
12
12
|
permissionClassName: ModelManagerBindings['permission'];
|
|
13
13
|
constructor(manager: ModelManager, map: MorphInterface, options: OptionsInterface, scope: Scope, emitter: Emitter<any>);
|
|
14
14
|
get permissionQuery(): import("@adonisjs/lucid/types/model").ModelQueryBuilderContract<import("@adonisjs/lucid/types/model").LucidModel, PermissionModel<import("@adonisjs/lucid/types/model").LucidModel>>;
|
|
15
|
-
create(values: Partial<PermissionInterface>): Promise<PermissionModel<typeof import("../../models/permission.
|
|
15
|
+
create(values: Partial<PermissionInterface>): Promise<PermissionModel<typeof import("../../models/permission.ts").default>>;
|
|
16
16
|
delete(permission: string): Promise<boolean>;
|
|
17
17
|
}
|
|
@@ -23,13 +23,13 @@ export default class PermissionHasModelRoles extends BaseAdapter {
|
|
|
23
23
|
get modelService(): ModelService;
|
|
24
24
|
models(): import("@adonisjs/lucid/types/model").ModelQueryBuilderContract<import("@adonisjs/lucid/types/model").LucidModel, import("../../types.js").ModelPermissionModel<import("@adonisjs/lucid/types/model").LucidModel>>;
|
|
25
25
|
modelsFor(modelType: string): Promise<any>;
|
|
26
|
-
roles(): Promise<import("../../models/role.
|
|
26
|
+
roles(): Promise<import("../../models/role.ts").default[]>;
|
|
27
27
|
belongsToRole(role: string | number): Promise<boolean>;
|
|
28
28
|
/**
|
|
29
29
|
* @param role
|
|
30
30
|
* @param target
|
|
31
31
|
*/
|
|
32
|
-
attachToRole(role: string, target?: AclModel | Function): Promise<import("../../models/model_permission.
|
|
32
|
+
attachToRole(role: string, target?: AclModel | Function): Promise<import("../../models/model_permission.ts").default[]>;
|
|
33
33
|
/**
|
|
34
34
|
* @param role
|
|
35
35
|
*/
|
|
@@ -84,21 +84,21 @@ export default class PermissionsService extends BaseService {
|
|
|
84
84
|
/**
|
|
85
85
|
* give permission to model
|
|
86
86
|
*/
|
|
87
|
-
giveAll(modelType: string, modelId: ModelIdType, slugs: string[], entityType: string | null, entityId: ModelIdType | null, allowed: boolean): Promise<import("../../models/model_permission.
|
|
88
|
-
revokeAll(modelType: string, modelId: ModelIdType, permissions: string[], entityType: string | null, entityId: ModelIdType | null): ModelQueryBuilderContract<typeof import("../../models/model_permission.
|
|
89
|
-
flush(modelType: string, modelId: ModelIdType): ModelQueryBuilderContract<typeof import("../../models/model_permission.
|
|
87
|
+
giveAll(modelType: string, modelId: ModelIdType, slugs: string[], entityType: string | null, entityId: ModelIdType | null, allowed: boolean): Promise<import("../../models/model_permission.ts").default[]>;
|
|
88
|
+
revokeAll(modelType: string, modelId: ModelIdType, permissions: string[], entityType: string | null, entityId: ModelIdType | null): ModelQueryBuilderContract<typeof import("../../models/model_permission.ts").default, any>;
|
|
89
|
+
flush(modelType: string, modelId: ModelIdType): ModelQueryBuilderContract<typeof import("../../models/model_permission.ts").default, any>;
|
|
90
90
|
/**
|
|
91
91
|
* sync permissions, remove everything outside of the list
|
|
92
92
|
*/
|
|
93
|
-
sync(modelType: string, modelId: ModelIdType, permissionId: string[]): Promise<import("../../models/model_permission.
|
|
93
|
+
sync(modelType: string, modelId: ModelIdType, permissionId: string[]): Promise<import("../../models/model_permission.ts").default[]>;
|
|
94
94
|
/**
|
|
95
95
|
* forbid permission on model
|
|
96
96
|
*/
|
|
97
|
-
forbid(modelType: string, modelId: ModelIdType, permissionSlug: string, entityType: string | null, entityId: ModelIdType | null): Promise<import("../../models/model_permission.
|
|
97
|
+
forbid(modelType: string, modelId: ModelIdType, permissionSlug: string, entityType: string | null, entityId: ModelIdType | null): Promise<import("../../models/model_permission.ts").default[]>;
|
|
98
98
|
/**
|
|
99
99
|
* forbid permission on model
|
|
100
100
|
*/
|
|
101
|
-
forbidAll(modelType: string, modelId: ModelIdType, permissionsSlug: string[], entityType: string | null, entityId: ModelIdType | null): Promise<import("../../models/model_permission.
|
|
101
|
+
forbidAll(modelType: string, modelId: ModelIdType, permissionsSlug: string[], entityType: string | null, entityId: ModelIdType | null): Promise<import("../../models/model_permission.ts").default[]>;
|
|
102
102
|
/**
|
|
103
103
|
* to remove forbidden permission on model
|
|
104
104
|
*/
|
|
@@ -110,7 +110,7 @@ export default class PermissionsService extends BaseService {
|
|
|
110
110
|
* @deprecated
|
|
111
111
|
* @param conditions
|
|
112
112
|
*/
|
|
113
|
-
reverseModelPermissionQuery(conditions: Partial<ModelPermissionsQuery>): ModelQueryBuilderContract<typeof import("../../models/model_permission.
|
|
113
|
+
reverseModelPermissionQuery(conditions: Partial<ModelPermissionsQuery>): ModelQueryBuilderContract<typeof import("../../models/model_permission.ts").default, import("../../models/model_permission.ts").default>;
|
|
114
114
|
findAssignableEntity(permission: string[], entityClass: string | null, entityId: ModelIdType | null, allowed: boolean): ModelQueryBuilderContract<typeof Permission, Permission>;
|
|
115
115
|
private applyTargetRestriction;
|
|
116
116
|
private applyPartialTargetRestriction;
|
|
@@ -13,6 +13,6 @@ export default class EmptyRoles extends BaseAdapter {
|
|
|
13
13
|
constructor(manager: ModelManager, map: MorphInterface, options: OptionsInterface, scope: Scope, emitter: Emitter<any>);
|
|
14
14
|
get roleQuery(): import("@adonisjs/lucid/types/model").ModelQueryBuilderContract<import("@adonisjs/lucid/types/model").LucidModel, import("../../types.js").RoleModel<import("@adonisjs/lucid/types/model").LucidModel>>;
|
|
15
15
|
delete(role: string): Promise<any[]>;
|
|
16
|
-
create(values: Partial<RoleInterface>): Promise<import("../../models/role.
|
|
16
|
+
create(values: Partial<RoleInterface>): Promise<import("../../models/role.ts").default>;
|
|
17
17
|
query(): import("@adonisjs/lucid/types/model").ModelQueryBuilderContract<import("@adonisjs/lucid/types/model").LucidModel, import("../../types.js").RoleModel<import("@adonisjs/lucid/types/model").LucidModel>>;
|
|
18
18
|
}
|
|
@@ -17,9 +17,9 @@ export declare class RoleHasModelPermissions extends BaseAdapter {
|
|
|
17
17
|
get permissionService(): PermissionService;
|
|
18
18
|
models(): import("@adonisjs/lucid/types/model").ModelQueryBuilderContract<import("@adonisjs/lucid/types/model").LucidModel, import("../../types.js").ModelRoleModel<import("@adonisjs/lucid/types/model").LucidModel>>;
|
|
19
19
|
modelsFor(modelType: string): Promise<any>;
|
|
20
|
-
permissions(): Promise<import("../../models/permission.
|
|
21
|
-
globalPermissions(): Promise<import("../../models/permission.
|
|
22
|
-
onResourcePermissions(): Promise<import("../../models/permission.
|
|
20
|
+
permissions(): Promise<import("../../models/permission.ts").default[]>;
|
|
21
|
+
globalPermissions(): Promise<import("../../models/permission.ts").default[]>;
|
|
22
|
+
onResourcePermissions(): Promise<import("../../models/permission.ts").default[]>;
|
|
23
23
|
containsPermission(permission: string): Promise<boolean>;
|
|
24
24
|
/**
|
|
25
25
|
*
|
|
@@ -62,36 +62,36 @@ export declare class RoleHasModelPermissions extends BaseAdapter {
|
|
|
62
62
|
* @param permission
|
|
63
63
|
* @param target
|
|
64
64
|
*/
|
|
65
|
-
assign(permission: string, target?: AclModel | Function): Promise<import("../../models/model_permission.
|
|
65
|
+
assign(permission: string, target?: AclModel | Function): Promise<import("../../models/model_permission.ts").default[]>;
|
|
66
66
|
/**
|
|
67
67
|
* calls giveAll()
|
|
68
68
|
* @param permission
|
|
69
69
|
* @param target
|
|
70
70
|
*/
|
|
71
|
-
allow(permission: string, target?: AclModel | Function): Promise<import("../../models/model_permission.
|
|
71
|
+
allow(permission: string, target?: AclModel | Function): Promise<import("../../models/model_permission.ts").default[]>;
|
|
72
72
|
/**
|
|
73
73
|
* calls giveAll()
|
|
74
74
|
* @param permission
|
|
75
75
|
* @param target
|
|
76
76
|
*/
|
|
77
|
-
give(permission: string, target?: AclModel | Function): Promise<import("../../models/model_permission.
|
|
77
|
+
give(permission: string, target?: AclModel | Function): Promise<import("../../models/model_permission.ts").default[]>;
|
|
78
78
|
/**
|
|
79
79
|
* @param permissions
|
|
80
80
|
* @param target
|
|
81
81
|
*/
|
|
82
|
-
giveAll(permissions: string[], target?: AclModel | Function): Promise<import("../../models/model_permission.
|
|
82
|
+
giveAll(permissions: string[], target?: AclModel | Function): Promise<import("../../models/model_permission.ts").default[]>;
|
|
83
83
|
/**
|
|
84
84
|
* calls giveAll()
|
|
85
85
|
* @param permissions
|
|
86
86
|
* @param target
|
|
87
87
|
*/
|
|
88
|
-
assignAll(permissions: string[], target?: AclModel | Function): Promise<import("../../models/model_permission.
|
|
88
|
+
assignAll(permissions: string[], target?: AclModel | Function): Promise<import("../../models/model_permission.ts").default[]>;
|
|
89
89
|
/**
|
|
90
90
|
* calls giveAll()
|
|
91
91
|
* @param permissions
|
|
92
92
|
* @param target
|
|
93
93
|
*/
|
|
94
|
-
allowAll(permissions: string[], target?: AclModel | Function): Promise<import("../../models/model_permission.
|
|
94
|
+
allowAll(permissions: string[], target?: AclModel | Function): Promise<import("../../models/model_permission.ts").default[]>;
|
|
95
95
|
/**
|
|
96
96
|
* calls revokeAll()
|
|
97
97
|
* @param permission
|
|
@@ -114,7 +114,7 @@ export declare class RoleHasModelPermissions extends BaseAdapter {
|
|
|
114
114
|
* @param permissions - list of permissions
|
|
115
115
|
* @param target
|
|
116
116
|
*/
|
|
117
|
-
sync(permissions: string[], target?: AclModel | Function): Promise<import("../../models/model_permission.
|
|
118
|
-
forbid(permission: string, target?: AclModel | Function): Promise<import("../../models/model_permission.
|
|
117
|
+
sync(permissions: string[], target?: AclModel | Function): Promise<import("../../models/model_permission.ts").default[]>;
|
|
118
|
+
forbid(permission: string, target?: AclModel | Function): Promise<import("../../models/model_permission.ts").default[]>;
|
|
119
119
|
unforbid(permission: string, target?: AclModel | Function): Promise<any[]>;
|
|
120
120
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@holoyan/adonisjs-permissions",
|
|
3
3
|
"description": "AdonisJs roles and permissions system",
|
|
4
|
-
"version": "1.3.
|
|
4
|
+
"version": "1.3.3",
|
|
5
5
|
"engines": {
|
|
6
6
|
"node": ">=18.16.0"
|
|
7
7
|
},
|
|
@@ -78,12 +78,12 @@
|
|
|
78
78
|
},
|
|
79
79
|
"publishConfig": {
|
|
80
80
|
"access": "public",
|
|
81
|
-
"tag": "latest"
|
|
81
|
+
"tag": "v1-latest"
|
|
82
82
|
},
|
|
83
83
|
"np": {
|
|
84
84
|
"message": "chore(release): %s",
|
|
85
|
-
"tag": "latest",
|
|
86
|
-
"branch": "
|
|
85
|
+
"tag": "v1-latest",
|
|
86
|
+
"branch": "v1.3.x",
|
|
87
87
|
"anyBranch": false
|
|
88
88
|
},
|
|
89
89
|
"c8": {
|