@venizia/ignis 0.0.9-5 → 0.0.9-7
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/components/auth/authorize/adapters/drizzle-casbin.d.ts +4 -0
- package/dist/components/auth/authorize/adapters/drizzle-casbin.d.ts.map +1 -1
- package/dist/components/auth/authorize/adapters/drizzle-casbin.js +21 -5
- package/dist/components/auth/authorize/adapters/drizzle-casbin.js.map +1 -1
- package/package.json +27 -27
|
@@ -2,14 +2,17 @@ import { IDataSource } from '../../../../base/datasources';
|
|
|
2
2
|
import { BaseFilteredAdapter, type IBaseFilteredAdapterEntities, type ICasbinPolicyFilter } from './base-filtered';
|
|
3
3
|
export interface IDrizzleCasbinEntities extends IBaseFilteredAdapterEntities {
|
|
4
4
|
permission: {
|
|
5
|
+
schemaName?: string;
|
|
5
6
|
tableName: string;
|
|
6
7
|
principalType: string;
|
|
7
8
|
};
|
|
8
9
|
role: {
|
|
10
|
+
schemaName?: string;
|
|
9
11
|
tableName: string;
|
|
10
12
|
principalType: string;
|
|
11
13
|
};
|
|
12
14
|
policyDefinition: {
|
|
15
|
+
schemaName?: string;
|
|
13
16
|
tableName: string;
|
|
14
17
|
principalType: string;
|
|
15
18
|
};
|
|
@@ -20,6 +23,7 @@ export interface IDrizzleCasbinAdapterOptions {
|
|
|
20
23
|
}
|
|
21
24
|
export declare class DrizzleCasbinAdapter extends BaseFilteredAdapter<IDrizzleCasbinEntities> {
|
|
22
25
|
private dataSource;
|
|
26
|
+
private static readonly DEFAULT_SCHEMA;
|
|
23
27
|
private get connector();
|
|
24
28
|
constructor(opts: IDrizzleCasbinAdapterOptions);
|
|
25
29
|
protected buildDirectPolicies(opts: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drizzle-casbin.d.ts","sourceRoot":"","sources":["../../../../../src/components/auth/authorize/adapters/drizzle-casbin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAiB,MAAM,oBAAoB,CAAC;AAGhE,OAAO,EACL,mBAAmB,EACnB,KAAK,4BAA4B,EACjC,KAAK,mBAAmB,EAEzB,MAAM,iBAAiB,CAAC;AACzB,MAAM,WAAW,sBAAuB,SAAQ,4BAA4B;IAC1E,UAAU,EAAE;
|
|
1
|
+
{"version":3,"file":"drizzle-casbin.d.ts","sourceRoot":"","sources":["../../../../../src/components/auth/authorize/adapters/drizzle-casbin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAiB,MAAM,oBAAoB,CAAC;AAGhE,OAAO,EACL,mBAAmB,EACnB,KAAK,4BAA4B,EACjC,KAAK,mBAAmB,EAEzB,MAAM,iBAAiB,CAAC;AACzB,MAAM,WAAW,sBAAuB,SAAQ,4BAA4B;IAC1E,UAAU,EAAE;QACV,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,IAAI,EAAE;QACJ,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,gBAAgB,EAAE;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;CACH;AAED,MAAM,WAAW,4BAA4B;IAC3C,UAAU,EAAE,WAAW,CAAC;IACxB,QAAQ,EAAE,sBAAsB,CAAC;CAClC;AAID,qBAAa,oBAAqB,SAAQ,mBAAmB,CAAC,sBAAsB,CAAC;IACnF,OAAO,CAAC,UAAU,CAAc;IAEhC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,cAAc,CAAY;IAElD,OAAO,KAAK,SAAS,GAEpB;gBAEW,IAAI,EAAE,4BAA4B;cAyB9B,mBAAmB,CAAC,IAAI,EAAE;QACxC,MAAM,EAAE,mBAAmB,CAAC;QAC5B,aAAa,EAAE,MAAM,CAAC;KACvB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;cAiCL,kBAAkB,CAAC,IAAI,EAAE;QACvC,MAAM,EAAE,mBAAmB,CAAC;KAC7B,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAA;KAAE,CAAC;cAqC9C,iBAAiB,CAAC,IAAI,EAAE;QACtC,OAAO,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,CAAC;QAC7B,aAAa,EAAE,MAAM,CAAC;KACvB,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAoCtB"}
|
|
@@ -6,10 +6,26 @@ const common_1 = require("../common");
|
|
|
6
6
|
const base_filtered_1 = require("./base-filtered");
|
|
7
7
|
// Drizzle Casbin Adapter — read-only FilteredAdapter using raw SQL queries
|
|
8
8
|
class DrizzleCasbinAdapter extends base_filtered_1.BaseFilteredAdapter {
|
|
9
|
+
static { this.DEFAULT_SCHEMA = 'public'; }
|
|
9
10
|
get connector() {
|
|
10
11
|
return this.dataSource.connector;
|
|
11
12
|
}
|
|
12
13
|
constructor(opts) {
|
|
14
|
+
// set default schema
|
|
15
|
+
if (opts.entities) {
|
|
16
|
+
if (opts.entities.permission) {
|
|
17
|
+
opts.entities.permission.schemaName =
|
|
18
|
+
opts.entities.permission.schemaName ?? DrizzleCasbinAdapter.DEFAULT_SCHEMA;
|
|
19
|
+
}
|
|
20
|
+
if (opts.entities.role) {
|
|
21
|
+
opts.entities.role.schemaName =
|
|
22
|
+
opts.entities.role.schemaName ?? DrizzleCasbinAdapter.DEFAULT_SCHEMA;
|
|
23
|
+
}
|
|
24
|
+
if (opts.entities.policyDefinition) {
|
|
25
|
+
opts.entities.policyDefinition.schemaName =
|
|
26
|
+
opts.entities.policyDefinition.schemaName ?? DrizzleCasbinAdapter.DEFAULT_SCHEMA;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
13
29
|
super({ scope: DrizzleCasbinAdapter.name, entities: opts.entities });
|
|
14
30
|
this.dataSource = opts.dataSource;
|
|
15
31
|
}
|
|
@@ -21,8 +37,8 @@ class DrizzleCasbinAdapter extends base_filtered_1.BaseFilteredAdapter {
|
|
|
21
37
|
SELECT pd.variant, p.code, pd.action,
|
|
22
38
|
pd.subject_type AS "subjectType", pd.subject_id AS "subjectId",
|
|
23
39
|
pd.effect, pd.domain
|
|
24
|
-
FROM ${drizzle_orm_1.sql.identifier(pd.tableName)} pd
|
|
25
|
-
INNER JOIN ${drizzle_orm_1.sql.identifier(perm.tableName)} p ON pd.target_id = p.id
|
|
40
|
+
FROM ${drizzle_orm_1.sql.identifier(pd.schemaName)}.${drizzle_orm_1.sql.identifier(pd.tableName)} pd
|
|
41
|
+
INNER JOIN ${drizzle_orm_1.sql.identifier(perm.schemaName)}.${drizzle_orm_1.sql.identifier(perm.tableName)} p ON pd.target_id = p.id
|
|
26
42
|
WHERE pd.variant = ${common_1.CasbinRuleVariants.POLICY}
|
|
27
43
|
AND pd.subject_type = ${principalType}
|
|
28
44
|
AND pd.subject_id = ${principalValue}
|
|
@@ -46,7 +62,7 @@ class DrizzleCasbinAdapter extends base_filtered_1.BaseFilteredAdapter {
|
|
|
46
62
|
const { principalType, principalValue } = opts.filter;
|
|
47
63
|
const result = await this.connector.execute((0, drizzle_orm_1.sql) `
|
|
48
64
|
SELECT pd.target_id AS "targetId", pd.domain
|
|
49
|
-
FROM ${drizzle_orm_1.sql.identifier(pd.tableName)} pd
|
|
65
|
+
FROM ${drizzle_orm_1.sql.identifier(pd.schemaName)}.${drizzle_orm_1.sql.identifier(pd.tableName)} pd
|
|
50
66
|
WHERE pd.variant = ${common_1.CasbinRuleVariants.GROUP}
|
|
51
67
|
AND pd.subject_type = ${principalType}
|
|
52
68
|
AND pd.subject_id = ${principalValue}
|
|
@@ -74,8 +90,8 @@ class DrizzleCasbinAdapter extends base_filtered_1.BaseFilteredAdapter {
|
|
|
74
90
|
SELECT pd.variant, p.code, pd.action,
|
|
75
91
|
pd.subject_type AS "subjectType", pd.subject_id AS "subjectId",
|
|
76
92
|
pd.effect, pd.domain
|
|
77
|
-
FROM ${drizzle_orm_1.sql.identifier(pd.tableName)} pd
|
|
78
|
-
INNER JOIN ${drizzle_orm_1.sql.identifier(perm.tableName)} p ON pd.target_id = p.id
|
|
93
|
+
FROM ${drizzle_orm_1.sql.identifier(pd.schemaName)}.${drizzle_orm_1.sql.identifier(pd.tableName)} pd
|
|
94
|
+
INNER JOIN ${drizzle_orm_1.sql.identifier(perm.schemaName)}.${drizzle_orm_1.sql.identifier(perm.tableName)} p ON pd.target_id = p.id
|
|
79
95
|
WHERE pd.variant = ${common_1.CasbinRuleVariants.POLICY}
|
|
80
96
|
AND pd.subject_type = ${rol.principalType}
|
|
81
97
|
AND pd.subject_id IN (${drizzle_orm_1.sql.join(roleIds.map(id => (0, drizzle_orm_1.sql) `${id}`), (0, drizzle_orm_1.sql) `, `)})
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"drizzle-casbin.js","sourceRoot":"","sources":["../../../../../src/components/auth/authorize/adapters/drizzle-casbin.ts"],"names":[],"mappings":";;;AACA,6CAAkC;AAClC,sCAA+C;AAC/C,mDAKyB;
|
|
1
|
+
{"version":3,"file":"drizzle-casbin.js","sourceRoot":"","sources":["../../../../../src/components/auth/authorize/adapters/drizzle-casbin.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@venizia/ignis",
|
|
3
|
-
"version": "0.0.9-
|
|
3
|
+
"version": "0.0.9-7",
|
|
4
4
|
"description": "High-performance TypeScript server infrastructure combining LoopBack 4 enterprise architecture (decorator-based DI, repository pattern, component system) with Hono speed (~140k req/s). Features auto-generated OpenAPI docs, Drizzle ORM type-safe SQL, JWT/Basic authentication, Casbin authorization, convention-based bootstrapping, and pluggable components for health checks, Swagger UI, mail, Socket.IO, and static assets. Built for Bun and Node.js.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"access-control",
|
|
@@ -145,31 +145,31 @@
|
|
|
145
145
|
"prepublishOnly": "bun run rebuild"
|
|
146
146
|
},
|
|
147
147
|
"dependencies": {
|
|
148
|
-
"@venizia/ignis-boot": "^0.0.5-
|
|
149
|
-
"@venizia/ignis-helpers": "^0.0.8-
|
|
150
|
-
"@venizia/ignis-inversion": "^0.0.6-
|
|
151
|
-
"lodash": "^4.
|
|
148
|
+
"@venizia/ignis-boot": "^0.0.5-8",
|
|
149
|
+
"@venizia/ignis-helpers": "^0.0.8-9",
|
|
150
|
+
"@venizia/ignis-inversion": "^0.0.6-2",
|
|
151
|
+
"lodash": "^4.18.1",
|
|
152
152
|
"reflect-metadata": "^0.2.2"
|
|
153
153
|
},
|
|
154
154
|
"peerDependencies": {
|
|
155
155
|
"@asteasolutions/zod-to-openapi": "^8.5.0",
|
|
156
156
|
"@connectrpc/connect": "^2.1.1",
|
|
157
|
-
"@hono/node-server": "^
|
|
157
|
+
"@hono/node-server": "^2.0.3",
|
|
158
158
|
"@hono/swagger-ui": "^0.6.1",
|
|
159
|
-
"@hono/zod-openapi": "^1.
|
|
160
|
-
"@scalar/hono-api-reference": "^0.10.
|
|
161
|
-
"@socket.io/bun-engine": "^0.1.
|
|
159
|
+
"@hono/zod-openapi": "^1.4.0",
|
|
160
|
+
"@scalar/hono-api-reference": "^0.10.16",
|
|
161
|
+
"@socket.io/bun-engine": "^0.1.1",
|
|
162
162
|
"@socket.io/redis-adapter": "^8.3.0",
|
|
163
163
|
"@socket.io/redis-emitter": "^5.1.0",
|
|
164
|
-
"bullmq": "^5.
|
|
165
|
-
"casbin": "^5.
|
|
164
|
+
"bullmq": "^5.76.10",
|
|
165
|
+
"casbin": "^5.50.0",
|
|
166
166
|
"drizzle-orm": "^0.45.2",
|
|
167
167
|
"drizzle-zod": "^0.8.3",
|
|
168
|
-
"hono": "^4.12.
|
|
169
|
-
"jose": "^6.2.
|
|
170
|
-
"mailgun.js": "^
|
|
171
|
-
"nodemailer": "^
|
|
172
|
-
"pg": "^8.
|
|
168
|
+
"hono": "^4.12.21",
|
|
169
|
+
"jose": "^6.2.3",
|
|
170
|
+
"mailgun.js": "^13.0.1",
|
|
171
|
+
"nodemailer": "^8.0.7",
|
|
172
|
+
"pg": "^8.21.0",
|
|
173
173
|
"socket.io": "^4.8.1",
|
|
174
174
|
"socket.io-client": "^4.8.1"
|
|
175
175
|
},
|
|
@@ -220,20 +220,20 @@
|
|
|
220
220
|
"devDependencies": {
|
|
221
221
|
"@asteasolutions/zod-to-openapi": "^8.5.0",
|
|
222
222
|
"@connectrpc/connect": "^2.1.1",
|
|
223
|
-
"@hono/node-server": "^
|
|
223
|
+
"@hono/node-server": "^2.0.3",
|
|
224
224
|
"@hono/swagger-ui": "^0.6.1",
|
|
225
|
-
"@socket.io/bun-engine": "^0.1.
|
|
226
|
-
"casbin": "^5.
|
|
227
|
-
"@types/bun": "^1.3.
|
|
225
|
+
"@socket.io/bun-engine": "^0.1.1",
|
|
226
|
+
"casbin": "^5.50.0",
|
|
227
|
+
"@types/bun": "^1.3.14",
|
|
228
228
|
"@types/lodash": "^4.17.23",
|
|
229
|
-
"@types/nodemailer": "^
|
|
229
|
+
"@types/nodemailer": "^8.0.0",
|
|
230
230
|
"@types/pg": "^8.20.0",
|
|
231
|
-
"@venizia/dev-configs": "^0.0.7-
|
|
231
|
+
"@venizia/dev-configs": "^0.0.7-2",
|
|
232
232
|
"drizzle-kit": "^0.31.10",
|
|
233
|
-
"eslint": "^10.
|
|
234
|
-
"prettier": "^3.8.
|
|
235
|
-
"tsc-alias": "^1.8.
|
|
236
|
-
"tsx": "^4.
|
|
237
|
-
"typescript": "^6.0.
|
|
233
|
+
"eslint": "^10.4.0",
|
|
234
|
+
"prettier": "^3.8.3",
|
|
235
|
+
"tsc-alias": "^1.8.17",
|
|
236
|
+
"tsx": "^4.22.3",
|
|
237
|
+
"typescript": "^6.0.3"
|
|
238
238
|
}
|
|
239
239
|
}
|