@authup/server-core 1.0.0-beta.3 → 1.0.0-beta.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/LICENSE +201 -21
- package/README.md +1 -1
- package/dist/commands/setup.js +2 -2
- package/dist/commands/setup.js.map +1 -1
- package/dist/commands/start.d.ts.map +1 -1
- package/dist/commands/start.js +4 -5
- package/dist/commands/start.js.map +1 -1
- package/dist/config/build.d.ts +1 -1
- package/dist/config/build.d.ts.map +1 -1
- package/dist/config/build.js +14 -6
- package/dist/config/build.js.map +1 -1
- package/dist/config/constants.d.ts +13 -6
- package/dist/config/constants.d.ts.map +1 -1
- package/dist/config/constants.js +13 -6
- package/dist/config/constants.js.map +1 -1
- package/dist/config/index.d.ts +1 -1
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +1 -1
- package/dist/config/index.js.map +1 -1
- package/dist/config/module.d.ts +1 -1
- package/dist/config/module.d.ts.map +1 -1
- package/dist/config/parse.d.ts +1 -1
- package/dist/config/parse.d.ts.map +1 -1
- package/dist/config/setup.d.ts +1 -1
- package/dist/config/setup.d.ts.map +1 -1
- package/dist/config/{type.d.ts → types.d.ts} +31 -11
- package/dist/config/types.d.ts.map +1 -0
- package/dist/config/{type.js → types.js} +1 -1
- package/dist/config/types.js.map +1 -0
- package/dist/config/utils/env.d.ts +1 -1
- package/dist/config/utils/env.d.ts.map +1 -1
- package/dist/config/utils/env.js +99 -40
- package/dist/config/utils/env.js.map +1 -1
- package/dist/core/index.d.ts +1 -0
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +1 -0
- package/dist/core/index.js.map +1 -1
- package/dist/core/ldap/index.d.ts +3 -0
- package/dist/core/ldap/index.d.ts.map +1 -0
- package/dist/core/ldap/index.js +25 -0
- package/dist/core/ldap/index.js.map +1 -0
- package/dist/core/ldap/module.d.ts +19 -0
- package/dist/core/ldap/module.d.ts.map +1 -0
- package/dist/core/ldap/module.js +192 -0
- package/dist/core/ldap/module.js.map +1 -0
- package/dist/core/ldap/types.d.ts +10 -0
- package/dist/core/ldap/types.d.ts.map +1 -0
- package/dist/core/ldap/types.js +9 -0
- package/dist/core/ldap/types.js.map +1 -0
- package/dist/core/logger/module.js +2 -2
- package/dist/core/logger/module.js.map +1 -1
- package/dist/database/seeds/module.d.ts.map +1 -1
- package/dist/database/seeds/module.js +17 -14
- package/dist/database/seeds/module.js.map +1 -1
- package/dist/domains/client/repository.d.ts +4 -3
- package/dist/domains/client/repository.d.ts.map +1 -1
- package/dist/domains/client/repository.js +28 -16
- package/dist/domains/client/repository.js.map +1 -1
- package/dist/domains/identity-provider/flow/core/index.d.ts +1 -0
- package/dist/domains/identity-provider/flow/core/index.d.ts.map +1 -1
- package/dist/domains/identity-provider/flow/core/index.js +1 -0
- package/dist/domains/identity-provider/flow/core/index.js.map +1 -1
- package/dist/domains/identity-provider/flow/core/ldap.d.ts +14 -0
- package/dist/domains/identity-provider/flow/core/ldap.d.ts.map +1 -0
- package/dist/domains/identity-provider/flow/core/ldap.js +150 -0
- package/dist/domains/identity-provider/flow/core/ldap.js.map +1 -0
- package/dist/domains/identity-provider/flow/types.d.ts +7 -3
- package/dist/domains/identity-provider/flow/types.d.ts.map +1 -1
- package/dist/domains/identity-provider/protocol/ldap/extract.d.ts.map +1 -1
- package/dist/domains/identity-provider/protocol/ldap/extract.js +31 -2
- package/dist/domains/identity-provider/protocol/ldap/extract.js.map +1 -1
- package/dist/domains/identity-provider/protocol/ldap/validation.d.ts +5 -1
- package/dist/domains/identity-provider/protocol/ldap/validation.d.ts.map +1 -1
- package/dist/domains/identity-provider/protocol/ldap/validation.js +39 -4
- package/dist/domains/identity-provider/protocol/ldap/validation.js.map +1 -1
- package/dist/domains/identity-provider/protocol/oauth2/validation.d.ts +2 -2
- package/dist/domains/identity-provider/protocol/oauth2/validation.d.ts.map +1 -1
- package/dist/domains/identity-provider/protocol/oauth2/validation.js +6 -7
- package/dist/domains/identity-provider/protocol/oauth2/validation.js.map +1 -1
- package/dist/domains/identity-provider-account/utils.d.ts +1 -1
- package/dist/domains/identity-provider-account/utils.d.ts.map +1 -1
- package/dist/domains/identity-provider-account/utils.js +43 -14
- package/dist/domains/identity-provider-account/utils.js.map +1 -1
- package/dist/domains/identity-provider-attribute/entity.d.ts.map +1 -1
- package/dist/domains/identity-provider-attribute/entity.js +13 -1
- package/dist/domains/identity-provider-attribute/entity.js.map +1 -1
- package/dist/domains/robot/repository.d.ts +8 -6
- package/dist/domains/robot/repository.d.ts.map +1 -1
- package/dist/domains/robot/repository.js +30 -16
- package/dist/domains/robot/repository.js.map +1 -1
- package/dist/domains/robot/vault.js +3 -3
- package/dist/domains/robot/vault.js.map +1 -1
- package/dist/domains/robot-permission/entity.d.ts +2 -2
- package/dist/domains/robot-permission/entity.d.ts.map +1 -1
- package/dist/domains/robot-permission/entity.js +15 -2
- package/dist/domains/robot-permission/entity.js.map +1 -1
- package/dist/domains/role/repository.d.ts +3 -3
- package/dist/domains/role/repository.d.ts.map +1 -1
- package/dist/domains/role/repository.js +1 -1
- package/dist/domains/role/repository.js.map +1 -1
- package/dist/domains/role-attribute/entity.d.ts.map +1 -1
- package/dist/domains/role-attribute/entity.js +13 -1
- package/dist/domains/role-attribute/entity.js.map +1 -1
- package/dist/domains/role-permission/entity.d.ts +2 -2
- package/dist/domains/role-permission/entity.d.ts.map +1 -1
- package/dist/domains/role-permission/entity.js +15 -2
- package/dist/domains/role-permission/entity.js.map +1 -1
- package/dist/domains/user/repository.d.ts +7 -6
- package/dist/domains/user/repository.d.ts.map +1 -1
- package/dist/domains/user/repository.js +17 -9
- package/dist/domains/user/repository.js.map +1 -1
- package/dist/domains/user-attribute/entity.d.ts.map +1 -1
- package/dist/domains/user-attribute/entity.js +13 -1
- package/dist/domains/user-attribute/entity.js.map +1 -1
- package/dist/domains/user-permission/entity.d.ts +2 -2
- package/dist/domains/user-permission/entity.d.ts.map +1 -1
- package/dist/domains/user-permission/entity.js +15 -2
- package/dist/domains/user-permission/entity.js.map +1 -1
- package/dist/domains/utils/attribute.js +1 -1
- package/dist/domains/utils/attribute.js.map +1 -1
- package/dist/http/controllers/identity-provider/handlers/custom.js +3 -3
- package/dist/http/controllers/identity-provider/handlers/custom.js.map +1 -1
- package/dist/http/controllers/identity-provider/handlers/read.js +1 -1
- package/dist/http/controllers/identity-provider/handlers/read.js.map +1 -1
- package/dist/http/controllers/identity-provider/utils/validation.d.ts.map +1 -1
- package/dist/http/controllers/identity-provider/utils/validation.js +4 -0
- package/dist/http/controllers/identity-provider/utils/validation.js.map +1 -1
- package/dist/http/controllers/permission/utils/validation.d.ts.map +1 -1
- package/dist/http/controllers/permission/utils/validation.js +0 -1
- package/dist/http/controllers/permission/utils/validation.js.map +1 -1
- package/dist/http/controllers/robot/handlers/delete.d.ts.map +1 -1
- package/dist/http/controllers/robot/handlers/delete.js +3 -1
- package/dist/http/controllers/robot/handlers/delete.js.map +1 -1
- package/dist/http/controllers/robot/handlers/integrity.d.ts.map +1 -1
- package/dist/http/controllers/robot/handlers/integrity.js +24 -15
- package/dist/http/controllers/robot/handlers/integrity.js.map +1 -1
- package/dist/http/controllers/robot/handlers/update.d.ts.map +1 -1
- package/dist/http/controllers/robot/handlers/update.js +4 -2
- package/dist/http/controllers/robot/handlers/update.js.map +1 -1
- package/dist/http/controllers/robot-permission/handlers/delete.js +1 -1
- package/dist/http/controllers/robot-permission/handlers/delete.js.map +1 -1
- package/dist/http/controllers/robot-permission/utils/validation.d.ts.map +1 -1
- package/dist/http/controllers/robot-permission/utils/validation.js +9 -4
- package/dist/http/controllers/robot-permission/utils/validation.js.map +1 -1
- package/dist/http/controllers/role/handlers/delete.js +1 -1
- package/dist/http/controllers/role/handlers/delete.js.map +1 -1
- package/dist/http/controllers/role/handlers/update.js +1 -1
- package/dist/http/controllers/role/handlers/update.js.map +1 -1
- package/dist/http/controllers/role/utils/validaiton.js +4 -4
- package/dist/http/controllers/role/utils/validaiton.js.map +1 -1
- package/dist/http/controllers/role-attribute/handlers/update.js +6 -6
- package/dist/http/controllers/role-attribute/handlers/update.js.map +1 -1
- package/dist/http/controllers/role-permission/handlers/delete.js +1 -1
- package/dist/http/controllers/role-permission/handlers/delete.js.map +1 -1
- package/dist/http/controllers/role-permission/utils/validation.d.ts.map +1 -1
- package/dist/http/controllers/role-permission/utils/validation.js +8 -3
- package/dist/http/controllers/role-permission/utils/validation.js.map +1 -1
- package/dist/http/controllers/root/authorize/handlers/run.js +1 -1
- package/dist/http/controllers/root/authorize/handlers/run.js.map +1 -1
- package/dist/http/controllers/root/status/module.js +2 -2
- package/dist/http/controllers/root/status/module.js.map +1 -1
- package/dist/http/controllers/root/token/handlers/create.js +2 -2
- package/dist/http/controllers/root/token/handlers/create.js.map +1 -1
- package/dist/http/controllers/user/handlers/update.js +1 -1
- package/dist/http/controllers/user-permission/handlers/delete.js +1 -1
- package/dist/http/controllers/user-permission/handlers/delete.js.map +1 -1
- package/dist/http/controllers/user-permission/utils/validation.d.ts.map +1 -1
- package/dist/http/controllers/user-permission/utils/validation.js +7 -2
- package/dist/http/controllers/user-permission/utils/validation.js.map +1 -1
- package/dist/http/middleware/built-in/auth/module.d.ts.map +1 -1
- package/dist/http/middleware/built-in/auth/module.js +8 -3
- package/dist/http/middleware/built-in/auth/module.js.map +1 -1
- package/dist/http/middleware/built-in/auth/verify.d.ts.map +1 -1
- package/dist/http/middleware/built-in/auth/verify.js +30 -30
- package/dist/http/middleware/built-in/auth/verify.js.map +1 -1
- package/dist/http/middleware/built-in/rate-limit.d.ts.map +1 -1
- package/dist/http/middleware/built-in/rate-limit.js +3 -1
- package/dist/http/middleware/built-in/rate-limit.js.map +1 -1
- package/dist/http/oauth2/grant-types/abstract.js +1 -1
- package/dist/http/oauth2/grant-types/abstract.js.map +1 -1
- package/dist/http/oauth2/grant-types/authorize.js +2 -2
- package/dist/http/oauth2/grant-types/authorize.js.map +1 -1
- package/dist/http/oauth2/grant-types/client-credentials.js +2 -2
- package/dist/http/oauth2/grant-types/client-credentials.js.map +1 -1
- package/dist/http/oauth2/grant-types/internal.js +2 -2
- package/dist/http/oauth2/grant-types/internal.js.map +1 -1
- package/dist/http/oauth2/grant-types/password.d.ts +2 -1
- package/dist/http/oauth2/grant-types/password.d.ts.map +1 -1
- package/dist/http/oauth2/grant-types/password.js +59 -6
- package/dist/http/oauth2/grant-types/password.js.map +1 -1
- package/dist/http/oauth2/grant-types/refresh-token.js +2 -2
- package/dist/http/oauth2/grant-types/refresh-token.js.map +1 -1
- package/dist/http/oauth2/grant-types/robot-credentials.js +2 -2
- package/dist/http/oauth2/grant-types/robot-credentials.js.map +1 -1
- package/dist/http/oauth2/token/permissions.d.ts +2 -2
- package/dist/http/oauth2/token/permissions.d.ts.map +1 -1
- package/dist/http/utils/owner.d.ts.map +1 -1
- package/dist/http/utils/owner.js +2 -3
- package/dist/http/utils/owner.js.map +1 -1
- package/dist/http/validation/utils.d.ts +2 -0
- package/dist/http/validation/utils.d.ts.map +1 -1
- package/dist/http/validation/utils.js +15 -2
- package/dist/http/validation/utils.js.map +1 -1
- package/package.json +14 -10
- package/dist/config/type.d.ts.map +0 -1
- package/dist/config/type.js.map +0 -1
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import type { OAuth2TokenGrantResponse } from '@authup/core';
|
|
2
2
|
import type { Request } from 'routup';
|
|
3
|
-
import
|
|
3
|
+
import { UserEntity } from '../../../domains';
|
|
4
4
|
import { AbstractGrant } from './abstract';
|
|
5
5
|
import type { Grant } from './type';
|
|
6
6
|
export declare class PasswordGrantType extends AbstractGrant implements Grant {
|
|
7
7
|
run(request: Request): Promise<OAuth2TokenGrantResponse>;
|
|
8
8
|
validate(request: Request): Promise<UserEntity>;
|
|
9
|
+
protected verifyCredentialsByLDAP(user: string, password: string, realmId?: string): Promise<UserEntity>;
|
|
9
10
|
}
|
|
10
11
|
//# sourceMappingURL=password.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"password.d.ts","sourceRoot":"","sources":["../../../../src/http/oauth2/grant-types/password.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"password.d.ts","sourceRoot":"","sources":["../../../../src/http/oauth2/grant-types/password.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAA2B,wBAAwB,EAAE,MAAM,cAAc,CAAC;AAKtF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAItC,OAAO,EAEuB,UAAU,EAEvC,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAC3C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,QAAQ,CAAC;AAEpC,qBAAa,iBAAkB,SAAQ,aAAc,YAAW,KAAK;IAC3D,GAAG,CAAC,OAAO,EAAE,OAAO,GAAI,OAAO,CAAC,wBAAwB,CAAC;IAsBzD,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAI,OAAO,CAAC,UAAU,CAAC;cAgCtC,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAI,OAAO,CAAC,UAAU,CAAC;CA2DlH"}
|
|
@@ -12,8 +12,8 @@ const body_1 = require("@routup/basic/body");
|
|
|
12
12
|
const routup_1 = require("routup");
|
|
13
13
|
const typeorm_extension_1 = require("typeorm-extension");
|
|
14
14
|
const domains_1 = require("../../../domains");
|
|
15
|
-
const abstract_1 = require("./abstract");
|
|
16
15
|
const response_1 = require("../response");
|
|
16
|
+
const abstract_1 = require("./abstract");
|
|
17
17
|
class PasswordGrantType extends abstract_1.AbstractGrant {
|
|
18
18
|
async run(request) {
|
|
19
19
|
const user = await this.validate(request);
|
|
@@ -28,17 +28,21 @@ class PasswordGrantType extends abstract_1.AbstractGrant {
|
|
|
28
28
|
const refreshToken = await this.issueRefreshToken(accessToken);
|
|
29
29
|
return (0, response_1.buildOAuth2BearerTokenResponse)({
|
|
30
30
|
accessToken,
|
|
31
|
-
accessTokenMaxAge: this.config.
|
|
31
|
+
accessTokenMaxAge: this.config.tokenRefreshMaxAge,
|
|
32
32
|
refreshToken,
|
|
33
|
-
refreshTokenMaxAge: this.config.
|
|
33
|
+
refreshTokenMaxAge: this.config.tokenAccessMaxAge,
|
|
34
34
|
});
|
|
35
35
|
}
|
|
36
36
|
async validate(request) {
|
|
37
|
-
const { username, password, realm_id:
|
|
38
|
-
const realm = await (0, domains_1.resolveRealm)((0, routup_1.useRequestParam)(request, 'realmId') ||
|
|
37
|
+
const { username, password, realm_id: requestRealmId } = (0, body_1.useRequestBody)(request);
|
|
38
|
+
const realm = await (0, domains_1.resolveRealm)((0, routup_1.useRequestParam)(request, 'realmId') || requestRealmId);
|
|
39
39
|
const dataSource = await (0, typeorm_extension_1.useDataSource)();
|
|
40
40
|
const repository = new domains_1.UserRepository(dataSource);
|
|
41
|
-
const
|
|
41
|
+
const realmId = (0, core_1.extractObjectProperty)(realm, 'id');
|
|
42
|
+
let entity = await repository.verifyCredentials(username, password, realmId);
|
|
43
|
+
if (!entity) {
|
|
44
|
+
entity = await this.verifyCredentialsByLDAP(username, password, realmId);
|
|
45
|
+
}
|
|
42
46
|
if (!entity) {
|
|
43
47
|
throw core_1.UserError.credentialsInvalid();
|
|
44
48
|
}
|
|
@@ -47,6 +51,55 @@ class PasswordGrantType extends abstract_1.AbstractGrant {
|
|
|
47
51
|
}
|
|
48
52
|
return entity;
|
|
49
53
|
}
|
|
54
|
+
async verifyCredentialsByLDAP(user, password, realmId) {
|
|
55
|
+
const dataSource = await (0, typeorm_extension_1.useDataSource)();
|
|
56
|
+
const repository = new domains_1.IdentityProviderRepository(dataSource);
|
|
57
|
+
let entities = [];
|
|
58
|
+
if (realmId) {
|
|
59
|
+
entities = await repository.createQueryBuilder('provider')
|
|
60
|
+
.where('provider.realm_id = :realmId', { realmId })
|
|
61
|
+
.andWhere('provider.protocol = :protocol', { protocol: core_1.IdentityProviderProtocol.LDAP })
|
|
62
|
+
.getMany();
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
entities = await repository.createQueryBuilder('provider')
|
|
66
|
+
.andWhere('provider.protocol = :protocol', { protocol: core_1.IdentityProviderProtocol.LDAP })
|
|
67
|
+
.getMany();
|
|
68
|
+
}
|
|
69
|
+
let account;
|
|
70
|
+
let identity;
|
|
71
|
+
for (let i = 0; i < entities.length; i++) {
|
|
72
|
+
const entity = await repository.extendEntity(entities[i]);
|
|
73
|
+
if (entity.protocol !== core_1.IdentityProviderProtocol.LDAP) {
|
|
74
|
+
continue;
|
|
75
|
+
}
|
|
76
|
+
const flow = new domains_1.LdapIdentityProviderFlow(entity);
|
|
77
|
+
try {
|
|
78
|
+
identity = await flow.getIdentityForCredentials(user, password);
|
|
79
|
+
await flow.unbind();
|
|
80
|
+
}
|
|
81
|
+
catch (e) {
|
|
82
|
+
await flow.unbind();
|
|
83
|
+
continue;
|
|
84
|
+
}
|
|
85
|
+
account = await (0, domains_1.createIdentityProviderAccount)(entity, identity);
|
|
86
|
+
break;
|
|
87
|
+
}
|
|
88
|
+
if (!account) {
|
|
89
|
+
return undefined;
|
|
90
|
+
}
|
|
91
|
+
if (account.user &&
|
|
92
|
+
account.user.realm) {
|
|
93
|
+
return account.user;
|
|
94
|
+
}
|
|
95
|
+
const userRepository = dataSource.getRepository(domains_1.UserEntity);
|
|
96
|
+
return userRepository.findOne({
|
|
97
|
+
where: {
|
|
98
|
+
id: account.user_id,
|
|
99
|
+
},
|
|
100
|
+
relations: ['realm'],
|
|
101
|
+
});
|
|
102
|
+
}
|
|
50
103
|
}
|
|
51
104
|
exports.PasswordGrantType = PasswordGrantType;
|
|
52
105
|
//# sourceMappingURL=password.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"password.js","sourceRoot":"","sources":["../../../../src/http/oauth2/grant-types/password.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,
|
|
1
|
+
{"version":3,"file":"password.js","sourceRoot":"","sources":["../../../../src/http/oauth2/grant-types/password.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,9 +31,9 @@ class RefreshTokenGrantType extends abstract_1.AbstractGrant {
|
|
|
31
31
|
const refreshToken = await this.issueRefreshToken(accessToken);
|
|
32
32
|
return (0, response_1.buildOAuth2BearerTokenResponse)({
|
|
33
33
|
accessToken,
|
|
34
|
-
accessTokenMaxAge: this.config.
|
|
34
|
+
accessTokenMaxAge: this.config.tokenRefreshMaxAge,
|
|
35
35
|
refreshToken,
|
|
36
|
-
refreshTokenMaxAge: this.config.
|
|
36
|
+
refreshTokenMaxAge: this.config.tokenAccessMaxAge,
|
|
37
37
|
});
|
|
38
38
|
}
|
|
39
39
|
async validate(request) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refresh-token.js","sourceRoot":"","sources":["../../../../src/http/oauth2/grant-types/refresh-token.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,uCAEsB;AACtB,6CAAoD;AAEpD,mCAAsC;AACtC,yDAAkD;AAClD,8CAA4D;AAC5D,yCAA2C;AAC3C,0CAA6D;AAE7D,oCAAkD;AAElD,MAAa,qBAAsB,SAAQ,wBAAa;IACpD,KAAK,CAAC,GAAG,CAAC,OAAgB;QACtB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE3C,MAAM,OAAO,GAAG,IAAA,+BAAwB,EAAC,KAAK,CAAC,CAAC;QAChD,MAAM,GAAG,GAAG,IAAA,2BAAoB,EAAC,KAAK,CAAC,CAAC;QAExC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC;YAC5C,aAAa,EAAE,IAAA,qBAAY,EAAC,OAAO,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;YAC1D,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,GAAG;YACH,OAAO;YACP,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE;YACvB,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;SAC9B,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAE/D,OAAO,IAAA,yCAA8B,EAAC;YAClC,WAAW;YACX,iBAAiB,EAAE,IAAI,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"refresh-token.js","sourceRoot":"","sources":["../../../../src/http/oauth2/grant-types/refresh-token.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,uCAEsB;AACtB,6CAAoD;AAEpD,mCAAsC;AACtC,yDAAkD;AAClD,8CAA4D;AAC5D,yCAA2C;AAC3C,0CAA6D;AAE7D,oCAAkD;AAElD,MAAa,qBAAsB,SAAQ,wBAAa;IACpD,KAAK,CAAC,GAAG,CAAC,OAAgB;QACtB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE3C,MAAM,OAAO,GAAG,IAAA,+BAAwB,EAAC,KAAK,CAAC,CAAC;QAChD,MAAM,GAAG,GAAG,IAAA,2BAAoB,EAAC,KAAK,CAAC,CAAC;QAExC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC;YAC5C,aAAa,EAAE,IAAA,qBAAY,EAAC,OAAO,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;YAC1D,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,GAAG;YACH,OAAO;YACP,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE;YACvB,SAAS,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;SAC9B,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QAE/D,OAAO,IAAA,yCAA8B,EAAC;YAClC,WAAW;YACX,iBAAiB,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB;YACjD,YAAY;YACZ,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC,iBAAiB;SACpD,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAgB;QAC3B,MAAM,YAAY,GAAG,IAAA,qBAAc,EAAC,OAAO,EAAE,eAAe,CAAC,CAAC;QAE9D,MAAM,OAAO,GAAG,MAAM,IAAA,8BAAsB,EAAC,YAAY,CAAC,CAAC;QAE3D,MAAM,UAAU,GAAG,MAAM,IAAA,iCAAa,GAAE,CAAC;QACzC,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,kCAAwB,CAAC,CAAC;QACtE,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;YACpC,KAAK,EAAE;gBACH,EAAE,EAAE,OAAO,CAAC,GAAG;aAClB;YACD,SAAS,EAAE,CAAC,OAAO,CAAC;SACvB,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,MAAM,iBAAU,CAAC,aAAa,CAAC,sBAAe,CAAC,OAAO,CAAC,CAAC;QAC5D,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAC3C,IAAI,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;YACvB,MAAM,iBAAU,CAAC,OAAO,CAAC,sBAAe,CAAC,OAAO,CAAC,CAAC;QACtD,CAAC;QAED,MAAM,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAEhC,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AArDD,sDAqDC"}
|
|
@@ -27,8 +27,8 @@ class RobotCredentialsGrantType extends abstract_1.AbstractGrant {
|
|
|
27
27
|
});
|
|
28
28
|
return (0, response_1.buildOAuth2BearerTokenResponse)({
|
|
29
29
|
accessToken,
|
|
30
|
-
accessTokenMaxAge: this.config.
|
|
31
|
-
refreshTokenMaxAge: this.config.
|
|
30
|
+
accessTokenMaxAge: this.config.tokenRefreshMaxAge,
|
|
31
|
+
refreshTokenMaxAge: this.config.tokenAccessMaxAge,
|
|
32
32
|
});
|
|
33
33
|
}
|
|
34
34
|
async validate(request) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"robot-credentials.js","sourceRoot":"","sources":["../../../../src/http/oauth2/grant-types/robot-credentials.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,uCAIsB;AACtB,6CAAoD;AAEpD,mCAAsC;AACtC,yDAAkD;AAElD,8CAAmD;AACnD,yCAA2C;AAC3C,0CAA6D;AAG7D,MAAa,yBAA0B,SAAQ,wBAAa;IACxD,KAAK,CAAC,GAAG,CAAC,OAAgB;QACtB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE5C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC;YAC5C,aAAa,EAAE,IAAA,qBAAY,EAAC,OAAO,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;YAC1D,KAAK,EAAE,gBAAS,CAAC,MAAM;YACvB,OAAO,EAAE,oBAAa,CAAC,KAAK;YAC5B,GAAG,EAAE,MAAM,CAAC,EAAE;YACd,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE;YACxB,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI;SAC/B,CAAC,CAAC;QAEH,OAAO,IAAA,yCAA8B,EAAC;YAClC,WAAW;YACX,iBAAiB,EAAE,IAAI,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"robot-credentials.js","sourceRoot":"","sources":["../../../../src/http/oauth2/grant-types/robot-credentials.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,uCAIsB;AACtB,6CAAoD;AAEpD,mCAAsC;AACtC,yDAAkD;AAElD,8CAAmD;AACnD,yCAA2C;AAC3C,0CAA6D;AAG7D,MAAa,yBAA0B,SAAQ,wBAAa;IACxD,KAAK,CAAC,GAAG,CAAC,OAAgB;QACtB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE5C,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC;YAC5C,aAAa,EAAE,IAAA,qBAAY,EAAC,OAAO,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC;YAC1D,KAAK,EAAE,gBAAS,CAAC,MAAM;YACvB,OAAO,EAAE,oBAAa,CAAC,KAAK;YAC5B,GAAG,EAAE,MAAM,CAAC,EAAE;YACd,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,EAAE;YACxB,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI;SAC/B,CAAC,CAAC;QAEH,OAAO,IAAA,yCAA8B,EAAC;YAClC,WAAW;YACX,iBAAiB,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB;YACjD,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC,iBAAiB;SACpD,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,OAAgB;QAC3B,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,IAAA,qBAAc,EAAC,OAAO,CAAC,CAAC;QAE/C,MAAM,UAAU,GAAG,MAAM,IAAA,iCAAa,GAAE,CAAC;QACzC,MAAM,UAAU,GAAG,IAAI,yBAAe,CAAC,UAAU,CAAC,CAAC;QACnD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,iBAAiB,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;QAE9D,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,MAAM,iBAAU,CAAC,kBAAkB,EAAE,CAAC;QAC1C,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,iBAAU,CAAC,QAAQ,EAAE,CAAC;QAChC,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ;AArCD,8DAqCC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { Ability } from '@authup/core';
|
|
2
2
|
import { OAuth2SubKind } from '@authup/core';
|
|
3
|
-
export declare function loadOAuth2SubPermissions(kind: `${OAuth2SubKind}`, id: string, scope?: string | string[]): Promise<
|
|
3
|
+
export declare function loadOAuth2SubPermissions(kind: `${OAuth2SubKind}`, id: string, scope?: string | string[]): Promise<Ability[]>;
|
|
4
4
|
//# sourceMappingURL=permissions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../../../src/http/oauth2/token/permissions.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"permissions.d.ts","sourceRoot":"","sources":["../../../../src/http/oauth2/token/permissions.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,aAAa,EAA0C,MAAM,cAAc,CAAC;AAIrF,wBAAsB,wBAAwB,CAC1C,IAAI,EAAE,GAAG,aAAa,EAAE,EACxB,EAAE,EAAE,MAAM,EACV,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GACzB,OAAO,CAAC,OAAO,EAAE,CAAC,CAwBrB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"owner.d.ts","sourceRoot":"","sources":["../../../src/http/utils/owner.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAItC,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAI,OAAO,
|
|
1
|
+
{"version":3,"file":"owner.d.ts","sourceRoot":"","sources":["../../../src/http/utils/owner.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAItC,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAI,OAAO,CAgBxD"}
|
package/dist/http/utils/owner.js
CHANGED
|
@@ -17,13 +17,12 @@ function isRequestSubOwner(req) {
|
|
|
17
17
|
}
|
|
18
18
|
const config = (0, config_1.useConfig)();
|
|
19
19
|
const user = (0, env_1.useRequestEnv)(req, 'user');
|
|
20
|
-
if (user &&
|
|
21
|
-
user.name === config.adminUsername) {
|
|
20
|
+
if (user && user.name === config.userAdminName) {
|
|
22
21
|
return true;
|
|
23
22
|
}
|
|
24
23
|
const robot = (0, env_1.useRequestEnv)(req, 'robot');
|
|
25
24
|
return robot &&
|
|
26
|
-
robot.name ===
|
|
25
|
+
robot.name.toLowerCase() === config.robotAdminName.toLowerCase();
|
|
27
26
|
}
|
|
28
27
|
exports.isRequestSubOwner = isRequestSubOwner;
|
|
29
28
|
//# sourceMappingURL=owner.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"owner.js","sourceRoot":"","sources":["../../../src/http/utils/owner.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,
|
|
1
|
+
{"version":3,"file":"owner.js","sourceRoot":"","sources":["../../../src/http/utils/owner.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,uCAAiD;AAEjD,yCAAyC;AACzC,+BAAsC;AAEtC,SAAgB,iBAAiB,CAAC,GAAY;IAC1C,MAAM,KAAK,GAAG,IAAA,mBAAa,EAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC1C,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,wBAAiB,EAAE,CAAC;QAC7C,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,MAAM,MAAM,GAAG,IAAA,kBAAS,GAAE,CAAC;IAE3B,MAAM,IAAI,GAAG,IAAA,mBAAa,EAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACxC,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,aAAa,EAAE,CAAC;QAC7C,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,MAAM,KAAK,GAAG,IAAA,mBAAa,EAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC1C,OAAO,KAAK;QACR,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,MAAM,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;AACzE,CAAC;AAhBD,8CAgBC"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import type { MatchedDataOptions } from 'express-validator';
|
|
2
2
|
import type { Request } from 'routup';
|
|
3
3
|
import type { EntityTarget } from 'typeorm';
|
|
4
|
+
import type { ZodError } from 'zod';
|
|
4
5
|
import type { ExpressValidationExtendKeys, ExpressValidationResult } from './type';
|
|
5
6
|
export declare function buildRequestValidationErrorMessage<T extends Record<string, any> = Record<string, any>>(name: keyof T | (keyof T)[]): string;
|
|
7
|
+
export declare function buildRequestValidationErrorMessageForZodError(error: ZodError): string;
|
|
6
8
|
export declare function matchedValidationData(req: Request, options?: Partial<MatchedDataOptions>): Record<string, any>;
|
|
7
9
|
export declare function initExpressValidationResult<R extends Record<string, any>, M extends Record<string, any> = Record<string, any>>(): ExpressValidationResult<R, M>;
|
|
8
10
|
export declare function extendExpressValidationResultWithRelation<R extends Record<string, any>>(result: ExpressValidationResult<R>, target: EntityTarget<any>, keys: Partial<ExpressValidationExtendKeys<R>>): Promise<ExpressValidationResult<R>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/http/validation/utils.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAG5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAG5C,OAAO,KAAK,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,MAAM,QAAQ,CAAC;AAEnF,wBAAgB,kCAAkC,CAC9C,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACjD,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,UAOhC;AAED,wBAAgB,qBAAqB,CACjC,GAAG,EAAE,OAAO,EACZ,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GACtC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAErB;AAED,wBAAgB,2BAA2B,CACvC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC7B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KACjD,uBAAuB,CAAC,CAAC,EAAE,CAAC,CAAC,CAMlC;AAED,wBAAsB,yCAAyC,CAC3D,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAE7B,MAAM,EAAE,uBAAuB,CAAC,CAAC,CAAC,EAClC,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC,EACzB,IAAI,EAAE,OAAO,CAAC,2BAA2B,CAAC,CAAC,CAAC,CAAC,GAC7C,OAAO,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAkBtC"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/http/validation/utils.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAG5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAG5C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,KAAK,EAAE,2BAA2B,EAAE,uBAAuB,EAAE,MAAM,QAAQ,CAAC;AAEnF,wBAAgB,kCAAkC,CAC9C,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EACjD,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,EAAE,UAOhC;AAED,wBAAgB,6CAA6C,CAAC,KAAK,EAAE,QAAQ,UAY5E;AAED,wBAAgB,qBAAqB,CACjC,GAAG,EAAE,OAAO,EACZ,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,GACtC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAErB;AAED,wBAAgB,2BAA2B,CACvC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAC7B,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,KACjD,uBAAuB,CAAC,CAAC,EAAE,CAAC,CAAC,CAMlC;AAED,wBAAsB,yCAAyC,CAC3D,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAE7B,MAAM,EAAE,uBAAuB,CAAC,CAAC,CAAC,EAClC,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC,EACzB,IAAI,EAAE,OAAO,CAAC,2BAA2B,CAAC,CAAC,CAAC,CAAC,GAC7C,OAAO,CAAC,uBAAuB,CAAC,CAAC,CAAC,CAAC,CAkBtC"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* view the LICENSE file that was distributed with this source code.
|
|
7
7
|
*/
|
|
8
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.extendExpressValidationResultWithRelation = exports.initExpressValidationResult = exports.matchedValidationData = exports.buildRequestValidationErrorMessage = void 0;
|
|
9
|
+
exports.extendExpressValidationResultWithRelation = exports.initExpressValidationResult = exports.matchedValidationData = exports.buildRequestValidationErrorMessageForZodError = exports.buildRequestValidationErrorMessage = void 0;
|
|
10
10
|
const express_validator_1 = require("express-validator");
|
|
11
11
|
const core_1 = require("@authup/core");
|
|
12
12
|
const smob_1 = require("smob");
|
|
@@ -15,11 +15,24 @@ const typeorm_extension_1 = require("typeorm-extension");
|
|
|
15
15
|
function buildRequestValidationErrorMessage(name) {
|
|
16
16
|
const names = (0, smob_1.distinctArray)(Array.isArray(name) ? name : [name]);
|
|
17
17
|
if (names.length > 1) {
|
|
18
|
-
return `The parameters ${names.join(', ')}
|
|
18
|
+
return `The parameters ${names.join(', ')} are invalid.`;
|
|
19
19
|
}
|
|
20
20
|
return `The parameter ${String(names[0])} is invalid.`;
|
|
21
21
|
}
|
|
22
22
|
exports.buildRequestValidationErrorMessage = buildRequestValidationErrorMessage;
|
|
23
|
+
function buildRequestValidationErrorMessageForZodError(error) {
|
|
24
|
+
const names = [];
|
|
25
|
+
for (let i = 0; i < error.issues.length; i++) {
|
|
26
|
+
for (let j = 0; j < error.issues[i].path.length; j++) {
|
|
27
|
+
names.push(`${error.issues[i].path[j]}`);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
if (names.length > 1) {
|
|
31
|
+
return `The parameters ${names.join(', ')} are invalid.`;
|
|
32
|
+
}
|
|
33
|
+
return `The parameter ${String(names[0])} is invalid.`;
|
|
34
|
+
}
|
|
35
|
+
exports.buildRequestValidationErrorMessageForZodError = buildRequestValidationErrorMessageForZodError;
|
|
23
36
|
function matchedValidationData(req, options) {
|
|
24
37
|
return (0, core_1.deleteUndefinedObjectProperties)((0, express_validator_1.matchedData)(req, options));
|
|
25
38
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/http/validation/utils.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,yDAAgD;AAChD,uCAA+D;AAE/D,+BAAqC;AAErC,qCAA6C;AAC7C,yDAAkD;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/http/validation/utils.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAGH,yDAAgD;AAChD,uCAA+D;AAE/D,+BAAqC;AAErC,qCAA6C;AAC7C,yDAAkD;AAIlD,SAAgB,kCAAkC,CAE5C,IAA2B;IAC7B,MAAM,KAAK,GAAG,IAAA,oBAAa,EAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAEjE,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnB,OAAO,kBAAkB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;IAC7D,CAAC;IACD,OAAO,iBAAiB,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;AAC3D,CAAC;AATD,gFASC;AAED,SAAgB,6CAA6C,CAAC,KAAe;IACzE,MAAM,KAAK,GAAc,EAAE,CAAC;IAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACnD,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC7C,CAAC;IACL,CAAC;IAED,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACnB,OAAO,kBAAkB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC;IAC7D,CAAC;IACD,OAAO,iBAAiB,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;AAC3D,CAAC;AAZD,sGAYC;AAED,SAAgB,qBAAqB,CACjC,GAAY,EACZ,OAAqC;IAErC,OAAO,IAAA,sCAA+B,EAAC,IAAA,+BAAW,EAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC;AACtE,CAAC;AALD,sDAKC;AAED,SAAgB,2BAA2B;IAIvC,OAAO;QACH,IAAI,EAAE,EAAE;QACR,QAAQ,EAAE,EAAE;QACZ,IAAI,EAAE,EAAO;KAChB,CAAC;AACN,CAAC;AATD,kEASC;AAEM,KAAK,UAAU,yCAAyC,CAG3D,MAAkC,EAClC,MAAyB,EACzB,IAA6C;IAE7C,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;QACvB,MAAM,UAAU,GAAG,MAAM,IAAA,iCAAa,GAAE,CAAC;QAEzC,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACpD,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;YACpC,KAAK,EAAE;gBACH,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;aAC3B;SACJ,CAAC,CAAC;QACH,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,MAAM,IAAI,sBAAe,CAAC,kCAAkC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3E,CAAC;QAED,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAsD,CAAC,GAAG,MAAM,CAAC;IAC1F,CAAC;IAED,OAAO,MAAM,CAAC;AAClB,CAAC;AAxBD,8FAwBC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@authup/server-core",
|
|
3
|
-
"version": "1.0.0-beta.
|
|
3
|
+
"version": "1.0.0-beta.5",
|
|
4
4
|
"description": "This is a standalone application.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"cli": "node dist/cli/index.js",
|
|
9
9
|
"cli-dev": "ts-node src/cli/index.ts",
|
|
10
10
|
"build": "rm -rf ./dist && tsc -p tsconfig.build.json",
|
|
11
|
-
"test": "cross-env
|
|
11
|
+
"test": "cross-env NODE_ENV=test jest --config ./test/jest.config.js --detectOpenHandles --runInBand --testTimeout=10000",
|
|
12
12
|
"test:coverage": "npm run test -- --coverage"
|
|
13
13
|
},
|
|
14
14
|
"files": [
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"email": "contact@tada5hi.net",
|
|
35
35
|
"url": "https://github.com/tada5hi"
|
|
36
36
|
},
|
|
37
|
-
"license": "
|
|
37
|
+
"license": "Apache-2.0",
|
|
38
38
|
"repository": {
|
|
39
39
|
"type": "git",
|
|
40
40
|
"url": "git+https://github.com/authup/authup.git",
|
|
@@ -45,9 +45,9 @@
|
|
|
45
45
|
},
|
|
46
46
|
"homepage": "https://github.com/authup/authup#readme",
|
|
47
47
|
"dependencies": {
|
|
48
|
-
"@authup/config": "^1.0.0-beta.
|
|
49
|
-
"@authup/core": "^1.0.0-beta.
|
|
50
|
-
"@authup/server-kit": "^1.0.0-beta.
|
|
48
|
+
"@authup/config": "^1.0.0-beta.5",
|
|
49
|
+
"@authup/core": "^1.0.0-beta.5",
|
|
50
|
+
"@authup/server-kit": "^1.0.0-beta.5",
|
|
51
51
|
"@ebec/http": "^2.3.0",
|
|
52
52
|
"@hapic/oauth2": "^2.4.1",
|
|
53
53
|
"@hapic/vault": "^2.3.2",
|
|
@@ -55,13 +55,15 @@
|
|
|
55
55
|
"@routup/decorators": "^3.3.1",
|
|
56
56
|
"@routup/prometheus": "^2.3.0",
|
|
57
57
|
"@routup/rate-limit": "^2.3.0",
|
|
58
|
-
"@routup/swagger": "^2.3.
|
|
59
|
-
"better-sqlite3": "^9.3
|
|
58
|
+
"@routup/swagger": "^2.3.5",
|
|
59
|
+
"better-sqlite3": "^9.4.3",
|
|
60
60
|
"cors": "^2.8.5",
|
|
61
|
-
"dotenv": "^16.4.
|
|
61
|
+
"dotenv": "^16.4.5",
|
|
62
62
|
"dycraft": "^1.1.0",
|
|
63
|
+
"envix": "^1.5.0",
|
|
63
64
|
"express-validator": "^7.0.1",
|
|
64
65
|
"hapic": "^2.5.0",
|
|
66
|
+
"ldapjs": "^3.0.7",
|
|
65
67
|
"locter": "^2.0.2",
|
|
66
68
|
"morgan": "^1.10.0",
|
|
67
69
|
"mysql": "^2.18.1",
|
|
@@ -72,19 +74,21 @@
|
|
|
72
74
|
"routup": "^3.2.0",
|
|
73
75
|
"smob": "^1.4.1",
|
|
74
76
|
"typeorm": "^0.3.20",
|
|
75
|
-
"typeorm-extension": "^3.
|
|
77
|
+
"typeorm-extension": "^3.5.0",
|
|
76
78
|
"winston": "^3.11.0",
|
|
77
79
|
"yargs": "^17.7.2",
|
|
78
80
|
"zod": "^3.22.4"
|
|
79
81
|
},
|
|
80
82
|
"devDependencies": {
|
|
81
83
|
"@types/cors": "^2.8.17",
|
|
84
|
+
"@types/ldapjs": "^3.0.6",
|
|
82
85
|
"@types/morgan": "^1.9.9",
|
|
83
86
|
"@types/node-cron": "^3.0.11",
|
|
84
87
|
"@types/supertest": "^6.0.2",
|
|
85
88
|
"@types/yargs": "^17.0.32",
|
|
86
89
|
"jest-serial-runner": "^1.2.1",
|
|
87
90
|
"supertest": "^6.3.4",
|
|
91
|
+
"testcontainers": "^10.7.1",
|
|
88
92
|
"ts-node": "^10.8.2"
|
|
89
93
|
},
|
|
90
94
|
"publishConfig": {
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../src/config/type.ts"],"names":[],"mappings":"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"}
|
package/dist/config/type.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"type.js","sourceRoot":"","sources":["../../src/config/type.ts"],"names":[],"mappings":";AAAA;;;;;GAKG"}
|