chyz 1.0.13-rc.19 → 1.0.13-rc.4
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/BaseChyz.js → BaseChyz.js} +8 -46
- package/BaseChyz.js.map +1 -0
- package/{dist/Chyz.js → Chyz.js} +0 -0
- package/{dist/Chyz.js.map → Chyz.js.map} +0 -0
- package/README.md +16 -267
- package/{dist/base → base}/ActionFilter.js +1 -1
- package/{dist/base → base}/ActionFilter.js.map +1 -1
- package/{dist/base → base}/BaseError.js +1 -5
- package/base/BaseError.js.map +1 -0
- package/{dist/base → base}/BaseObject.js +0 -0
- package/{dist/base → base}/BaseObject.js.map +0 -0
- package/{dist/base → base}/Behavior.js +0 -0
- package/{dist/base → base}/Behavior.js.map +0 -0
- package/{dist/base → base}/Component.js +0 -0
- package/{dist/base → base}/Component.js.map +0 -0
- package/{dist/base → base}/Configurable.js +0 -0
- package/{dist/base → base}/Configurable.js.map +0 -0
- package/{dist/base → base}/Controller.js +0 -0
- package/{dist/base → base}/Controller.js.map +0 -0
- package/{dist/base → base}/DataErrorDbException.js +0 -0
- package/{dist/base → base}/DataErrorDbException.js.map +0 -0
- package/{dist/base → base}/DbConnection.js +0 -0
- package/{dist/base → base}/DbConnection.js.map +0 -0
- package/{dist/base → base}/ForbiddenHttpException.js +0 -0
- package/{dist/base → base}/ForbiddenHttpException.js.map +0 -0
- package/{dist/base → base}/InvalidConfigException.js +0 -0
- package/{dist/base → base}/InvalidConfigException.js.map +0 -0
- package/{dist/base → base}/Model.js +30 -37
- package/base/Model.js.map +1 -0
- package/{dist/base → base}/NotFoundHttpException.js +0 -0
- package/{dist/base → base}/NotFoundHttpException.js.map +0 -0
- package/{dist/base → base}/RestClient.js +4 -4
- package/base/RestClient.js.map +1 -0
- package/{dist/base → base}/UnauthorizedHttpException.js +0 -0
- package/{dist/base → base}/UnauthorizedHttpException.js.map +0 -0
- package/{dist/base → base}/ValidationHttpException.js +1 -1
- package/{dist/base → base}/ValidationHttpException.js.map +0 -0
- package/{dist/base → base}/db/Exception.js +0 -0
- package/{dist/base → base}/db/Exception.js.map +0 -0
- package/{dist/base → base}/index.js +0 -2
- package/{dist/base → base}/index.js.map +1 -1
- package/{dist/decorator → decorator}/Middleware.js +0 -0
- package/{dist/decorator → decorator}/Middleware.js.map +0 -0
- package/{dist/decorator → decorator}/controller.js +0 -0
- package/{dist/decorator → decorator}/controller.js.map +0 -0
- package/{dist/decorator → decorator}/enums/ControllerDecoratorParams.js +0 -0
- package/{dist/decorator → decorator}/enums/ControllerDecoratorParams.js.map +0 -0
- package/{dist/decorator → decorator}/get.js +0 -0
- package/{dist/decorator → decorator}/get.js.map +0 -0
- package/{dist/decorator → decorator}/index.js +0 -0
- package/{dist/decorator → decorator}/index.js.map +0 -0
- package/{dist/decorator → decorator}/post.js +0 -0
- package/{dist/decorator → decorator}/post.js.map +0 -0
- package/{dist/filters → filters}/AccessControl.js +3 -15
- package/filters/AccessControl.js.map +1 -0
- package/filters/AccessRule.js +79 -0
- package/filters/AccessRule.js.map +1 -0
- package/{dist/filters → filters}/auth/AuthInterface.js +0 -0
- package/{dist/filters → filters}/auth/AuthInterface.js.map +0 -0
- package/{dist/filters → filters}/auth/AuthMethod.js +0 -0
- package/{dist/filters → filters}/auth/AuthMethod.js.map +0 -0
- package/{requiments/Glob.ts → filters/auth/HttpBasicAuth.js} +2 -3
- package/filters/auth/HttpBasicAuth.js.map +1 -0
- package/{dist/filters → filters}/auth/HttpBearerAuth.js +0 -0
- package/{dist/filters → filters}/auth/HttpBearerAuth.js.map +0 -0
- package/{dist/filters → filters}/auth/HttpHeaderAuth.js +0 -0
- package/{dist/filters → filters}/auth/HttpHeaderAuth.js.map +0 -0
- package/{dist/filters → filters}/auth/JwtHttpBearerAuth.js +1 -1
- package/filters/auth/JwtHttpBearerAuth.js.map +1 -0
- package/{dist/filters → filters}/auth/KeyCloakHttpBearerAuth.js +0 -0
- package/{dist/filters → filters}/auth/KeyCloakHttpBearerAuth.js.map +0 -0
- package/{dist/filters → filters}/auth/index.js +0 -1
- package/{dist/filters → filters}/auth/index.js.map +1 -1
- package/{dist/filters → filters}/index.js +0 -0
- package/{dist/filters → filters}/index.js.map +0 -0
- package/{dist/index.js → index.js} +0 -0
- package/{dist/index.js.map → index.js.map} +0 -0
- package/{dist/model → model}/RouteDefinition.js +0 -0
- package/{dist/model → model}/RouteDefinition.js.map +0 -0
- package/package.json +7 -6
- package/{dist/requiments → requiments}/Glob.js +0 -0
- package/{dist/requiments → requiments}/Glob.js.map +0 -0
- package/{dist/requiments → requiments}/ReflectUtil.js +0 -0
- package/{dist/requiments → requiments}/ReflectUtil.js.map +0 -0
- package/{dist/requiments → requiments}/Utils.js +0 -0
- package/{dist/requiments → requiments}/Utils.js.map +0 -0
- package/{dist/validators → validators}/BooleanValidator.js +0 -0
- package/{dist/validators → validators}/BooleanValidator.js.map +0 -0
- package/{dist/validators → validators}/CompareValidator.js +0 -0
- package/{dist/validators → validators}/CompareValidator.js.map +0 -0
- package/{dist/validators → validators}/DateValidator.js +0 -0
- package/{dist/validators → validators}/DateValidator.js.map +0 -0
- package/{dist/validators → validators}/EmailValidator.js +0 -0
- package/{dist/validators → validators}/EmailValidator.js.map +0 -0
- package/{dist/validators → validators}/Validator.js +0 -0
- package/{dist/validators → validators}/Validator.js.map +0 -0
- package/{dist/web → web}/IdentityInterface.js +0 -0
- package/{dist/web → web}/IdentityInterface.js.map +0 -0
- package/web/WebUser.js +88 -0
- package/web/WebUser.js.map +1 -0
- package/BaseChyz.ts +0 -399
- package/Chyz.ts +0 -11
- package/Doc/Moel kullanma.md +0 -13
- package/Examples/Controllers/ApiController.ts +0 -140
- package/Examples/Controllers/BasicApiController.ts +0 -121
- package/Examples/Controllers/KeyCloakController.ts +0 -100
- package/Examples/Controllers/PublicController.ts +0 -42
- package/Examples/Controllers/SiteController.ts +0 -149
- package/Examples/Models/AuthAssignment.ts +0 -50
- package/Examples/Models/AuthItem.ts +0 -59
- package/Examples/Models/AuthItemChild.ts +0 -49
- package/Examples/Models/Categories.ts +0 -47
- package/Examples/Models/Customer.ts +0 -115
- package/Examples/Models/KeycloakUser.ts +0 -70
- package/Examples/Models/Order.ts +0 -64
- package/Examples/Models/OrderItem.ts +0 -27
- package/Examples/Models/ProductModels.ts +0 -49
- package/Examples/Models/ProductToCategories.ts +0 -46
- package/Examples/Models/Products.ts +0 -50
- package/Examples/Models/Stocks.ts +0 -60
- package/Examples/Models/User.ts +0 -107
- package/Examples/Models/UserPermission.ts +0 -37
- package/Examples/Models/index.ts +0 -19
- package/Examples/index-keycloack.ts +0 -78
- package/Examples/index.ts +0 -45
- package/Examples/keycloak.json +0 -7
- package/Examples/log/access.log +0 -0
- package/Examples/log/app.log +0 -10379
- package/Examples/log/errors.log +0 -1984
- package/Examples/package.json +0 -46
- package/Examples/tsconfig.json +0 -21
- package/base/ActionFilter.ts +0 -71
- package/base/BaseError.ts +0 -28
- package/base/BaseObject.ts +0 -19
- package/base/Behavior.ts +0 -6
- package/base/Component.ts +0 -66
- package/base/Configurable.ts +0 -10
- package/base/Controller.ts +0 -84
- package/base/DataErrorDbException.ts +0 -16
- package/base/DbConnection.ts +0 -51
- package/base/ForbiddenHttpException.ts +0 -15
- package/base/InvalidArgumentException.ts +0 -16
- package/base/InvalidConfigException.ts +0 -16
- package/base/Model.ts +0 -363
- package/base/ModelManager.ts +0 -19
- package/base/NotFoundHttpException.ts +0 -14
- package/base/RestClient.ts +0 -28
- package/base/UnauthorizedHttpException.ts +0 -17
- package/base/ValidationHttpException.ts +0 -14
- package/base/db/Exception.ts +0 -14
- package/base/index.ts +0 -18
- package/decorator/Middleware.ts +0 -9
- package/decorator/controller.ts +0 -22
- package/decorator/enums/ControllerDecoratorParams.ts +0 -5
- package/decorator/get.ts +0 -37
- package/decorator/index.ts +0 -3
- package/decorator/post.ts +0 -36
- package/dist/BaseChyz.js.map +0 -1
- package/dist/base/BaseError.js.map +0 -1
- package/dist/base/InvalidArgumentException.js +0 -18
- package/dist/base/InvalidArgumentException.js.map +0 -1
- package/dist/base/Model.js.map +0 -1
- package/dist/base/ModelManager.js +0 -9
- package/dist/base/ModelManager.js.map +0 -1
- package/dist/base/RestClient.js.map +0 -1
- package/dist/filters/AccessControl.js.map +0 -1
- package/dist/filters/AccessRule.js +0 -140
- package/dist/filters/AccessRule.js.map +0 -1
- package/dist/filters/auth/HttpBasicAuth.js +0 -73
- package/dist/filters/auth/HttpBasicAuth.js.map +0 -1
- package/dist/filters/auth/JwtHttpBearerAuth.js.map +0 -1
- package/dist/log/config/log4js.json +0 -55
- package/dist/package.json +0 -55
- package/dist/rbac/AuthAssignment.js +0 -45
- package/dist/rbac/AuthAssignment.js.map +0 -1
- package/dist/rbac/AuthItem.js +0 -52
- package/dist/rbac/AuthItem.js.map +0 -1
- package/dist/rbac/AuthItemChild.js +0 -44
- package/dist/rbac/AuthItemChild.js.map +0 -1
- package/dist/rbac/AuthManager.js +0 -359
- package/dist/rbac/AuthManager.js.map +0 -1
- package/dist/web/WebUser.js +0 -166
- package/dist/web/WebUser.js.map +0 -1
- package/filters/AccessControl.ts +0 -77
- package/filters/AccessRule.ts +0 -182
- package/filters/auth/AuthInterface.ts +0 -34
- package/filters/auth/AuthMethod.ts +0 -88
- package/filters/auth/HttpBasicAuth.ts +0 -75
- package/filters/auth/HttpBearerAuth.ts +0 -31
- package/filters/auth/HttpHeaderAuth.ts +0 -53
- package/filters/auth/JwtHttpBearerAuth.ts +0 -80
- package/filters/auth/KeyCloakHttpBearerAuth.ts +0 -115
- package/filters/auth/index.ts +0 -4
- package/filters/index.ts +0 -2
- package/index.ts +0 -14
- package/model/RouteDefinition.ts +0 -18
- package/package-lock.json +0 -5259
- package/rbac/AuthAssignment.ts +0 -50
- package/rbac/AuthItem.ts +0 -57
- package/rbac/AuthItemChild.ts +0 -50
- package/rbac/AuthManager.ts +0 -398
- package/requiments/ReflectUtil.ts +0 -26
- package/requiments/Utils.ts +0 -57
- package/tsconfig.json +0 -18
- package/validators/BooleanValidator.ts +0 -0
- package/validators/CompareValidator.ts +0 -0
- package/validators/DateValidator.ts +0 -0
- package/validators/EmailValidator.ts +0 -0
- package/validators/Validator.ts +0 -27
- package/web/IdentityInterface.ts +0 -68
- package/web/WebUser.ts +0 -187
|
@@ -86,24 +86,48 @@ class Model extends Component_1.Component {
|
|
|
86
86
|
super();
|
|
87
87
|
this._attributes = {};
|
|
88
88
|
this._errors = {};
|
|
89
|
-
this._tableName = this.
|
|
89
|
+
this._tableName = this.constructor.name;
|
|
90
90
|
// this._sequelize = BaseChyz.getComponent("db").db;
|
|
91
91
|
if (sequelize != null)
|
|
92
92
|
this._sequelize = sequelize;
|
|
93
93
|
else
|
|
94
94
|
this._sequelize = BaseChyz_1.default.getComponent("db").db;
|
|
95
95
|
if (!Utils_1.default.isEmpty(this.attributes())) {
|
|
96
|
-
this._model = this._sequelize.define(this.
|
|
96
|
+
this._model = this._sequelize.define(this.constructor.name, this.attributes(), {
|
|
97
97
|
tableName: this.tableName(),
|
|
98
|
-
timestamps: false
|
|
99
|
-
createdAt: false,
|
|
100
|
-
updateAt: false
|
|
98
|
+
timestamps: false
|
|
101
99
|
});
|
|
100
|
+
/**
|
|
101
|
+
* init buraya
|
|
102
|
+
*/
|
|
103
|
+
for (const relation of this.relations()) {
|
|
104
|
+
let m = relation.model;
|
|
105
|
+
if (relation.type == "hasOne") {
|
|
106
|
+
// @ts-ignore
|
|
107
|
+
delete relation.model;
|
|
108
|
+
this.model().hasOne(m, relation);
|
|
109
|
+
}
|
|
110
|
+
if (relation.type == "hasMany") {
|
|
111
|
+
// @ts-ignore
|
|
112
|
+
delete relation.model;
|
|
113
|
+
this.model().hasMany(m, relation);
|
|
114
|
+
}
|
|
115
|
+
if (relation.type == "belongsTo") {
|
|
116
|
+
// @ts-ignore
|
|
117
|
+
delete relation.model;
|
|
118
|
+
this.model().belongsTo(m, relation);
|
|
119
|
+
}
|
|
120
|
+
if (relation.type == "belongsToMany") {
|
|
121
|
+
// @ts-ignore
|
|
122
|
+
delete relation.model;
|
|
123
|
+
this.model().belongsToMany(m, relation);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
102
126
|
}
|
|
103
127
|
else {
|
|
104
128
|
throw new InvalidConfigException_1.InvalidConfigException(BaseChyz_1.default.t("Invalid model configuration, is not emty attributes"));
|
|
105
129
|
}
|
|
106
|
-
|
|
130
|
+
this.init();
|
|
107
131
|
}
|
|
108
132
|
/**
|
|
109
133
|
* Returns the database connection used by this AR class.
|
|
@@ -131,37 +155,6 @@ class Model extends Component_1.Component {
|
|
|
131
155
|
}
|
|
132
156
|
init() {
|
|
133
157
|
BaseChyz_1.default.debug("Model init....", this.constructor.name);
|
|
134
|
-
/**
|
|
135
|
-
* init buraya
|
|
136
|
-
*/
|
|
137
|
-
BaseChyz_1.default.debug("Relation init....", this.constructor.name);
|
|
138
|
-
for (const relation of this.relations()) {
|
|
139
|
-
let m = relation.model;
|
|
140
|
-
if (relation.type == "hasOne") {
|
|
141
|
-
// @ts-ignore
|
|
142
|
-
delete relation.model;
|
|
143
|
-
this.model().hasOne(m, relation);
|
|
144
|
-
}
|
|
145
|
-
//
|
|
146
|
-
if (relation.type == "hasMany") {
|
|
147
|
-
// @ts-ignore
|
|
148
|
-
delete relation.model;
|
|
149
|
-
this.model().hasMany(m, relation);
|
|
150
|
-
}
|
|
151
|
-
if (relation.type == "belongsTo") {
|
|
152
|
-
// @ts-ignore
|
|
153
|
-
delete relation.model;
|
|
154
|
-
this.model().belongsTo(m, relation);
|
|
155
|
-
}
|
|
156
|
-
if (relation.type == "belongsToMany") {
|
|
157
|
-
// @ts-ignore
|
|
158
|
-
delete relation.model;
|
|
159
|
-
this.model().belongsToMany(m, relation);
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
}
|
|
163
|
-
alias() {
|
|
164
|
-
return this.constructor.name;
|
|
165
158
|
}
|
|
166
159
|
tableName() {
|
|
167
160
|
return this._tableName;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Model.js","sourceRoot":"","sources":["../../base/Model.ts"],"names":[],"mappings":"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"}
|
|
File without changes
|
|
File without changes
|
|
@@ -12,11 +12,11 @@ exports.RestClient = void 0;
|
|
|
12
12
|
const Component_1 = require("./Component");
|
|
13
13
|
const axios = require('axios');
|
|
14
14
|
class RestClient extends Component_1.Component {
|
|
15
|
-
post(url, args
|
|
16
|
-
return axios.post(url, args
|
|
15
|
+
post(url, args) {
|
|
16
|
+
return axios.post(url, args);
|
|
17
17
|
}
|
|
18
|
-
get(url, args
|
|
19
|
-
return axios.post(url, args
|
|
18
|
+
get(url, args) {
|
|
19
|
+
return axios.post(url, args);
|
|
20
20
|
}
|
|
21
21
|
Rest(params) {
|
|
22
22
|
return axios(params);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RestClient.js","sourceRoot":"","sources":["../../base/RestClient.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAGH,2CAAsC;AAEtC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;AAE9B,MAAa,UAAW,SAAQ,qBAAS;IAC9B,IAAI,CAAC,GAAW,EAAE,IAAW;QAChC,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAChC,CAAC;IAEM,GAAG,CAAC,GAAW,EAAE,IAAW;QAC/B,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;IAChC,CAAC;IAEM,IAAI,CAAC,MAAW;QACnB,OAAO,KAAK,CAAC,MAAM,CAAC,CAAA;IACxB,CAAC;CACJ;AAZD,gCAYC;AACD,kBAAe,IAAI,UAAU,EAAE,CAAC"}
|
|
File without changes
|
|
File without changes
|
|
@@ -10,7 +10,7 @@ exports.ValidationHttpException = void 0;
|
|
|
10
10
|
const BaseError_1 = require("./BaseError");
|
|
11
11
|
class ValidationHttpException extends BaseError_1.BaseError {
|
|
12
12
|
constructor(message) {
|
|
13
|
-
super(message,
|
|
13
|
+
super(message, 401);
|
|
14
14
|
this.message = message;
|
|
15
15
|
}
|
|
16
16
|
}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -20,12 +20,10 @@ __exportStar(require("./Controller"), exports);
|
|
|
20
20
|
__exportStar(require("./DbConnection"), exports);
|
|
21
21
|
__exportStar(require("./ForbiddenHttpException"), exports);
|
|
22
22
|
__exportStar(require("./InvalidConfigException"), exports);
|
|
23
|
-
__exportStar(require("./InvalidArgumentException"), exports);
|
|
24
23
|
__exportStar(require("./NotFoundHttpException"), exports);
|
|
25
24
|
__exportStar(require("./UnauthorizedHttpException"), exports);
|
|
26
25
|
__exportStar(require("./DataErrorDbException"), exports);
|
|
27
26
|
__exportStar(require("./ValidationHttpException"), exports);
|
|
28
27
|
__exportStar(require("./Model"), exports);
|
|
29
28
|
__exportStar(require("./RestClient"), exports);
|
|
30
|
-
__exportStar(require("./ModelManager"), exports);
|
|
31
29
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../base/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iDAA8B;AAC9B,+CAA4B;AAC5B,8CAA2B;AAC3B,6CAA0B;AAC1B,8CAA2B;AAC3B,iDAA8B;AAC9B,+CAA4B;AAC5B,iDAA8B;AAC9B,2DAAwC;AACxC,2DAAwC;AACxC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../base/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iDAA8B;AAC9B,+CAA4B;AAC5B,8CAA2B;AAC3B,6CAA0B;AAC1B,8CAA2B;AAC3B,iDAA8B;AAC9B,+CAA4B;AAC5B,iDAA8B;AAC9B,2DAAwC;AACxC,2DAAwC;AACxC,0DAAuC;AACvC,8DAA2C;AAC3C,yDAAsC;AACtC,4DAAyC;AACzC,0CAAuB;AACvB,+CAA4B"}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -30,7 +30,6 @@ class AccessControl extends ActionFilter_1.ActionFilter {
|
|
|
30
30
|
constructor() {
|
|
31
31
|
super(...arguments);
|
|
32
32
|
this.user = null;
|
|
33
|
-
this.denyCallback = null;
|
|
34
33
|
}
|
|
35
34
|
init() {
|
|
36
35
|
var _a;
|
|
@@ -53,26 +52,15 @@ class AccessControl extends ActionFilter_1.ActionFilter {
|
|
|
53
52
|
// @ts-ignore
|
|
54
53
|
user.identity = (_b = request.identity) !== null && _b !== void 0 ? _b : null;
|
|
55
54
|
for (const rulesKey in this.rules) {
|
|
56
|
-
|
|
57
|
-
if ((allow = yield rule.allows(action, user, request))) {
|
|
55
|
+
if ((allow = this.rules[rulesKey].allows(action, user, request))) {
|
|
58
56
|
return true;
|
|
59
57
|
}
|
|
60
58
|
else if (allow === false) {
|
|
61
|
-
|
|
62
|
-
rule.denyCallback.apply(rule, action);
|
|
63
|
-
}
|
|
64
|
-
else {
|
|
65
|
-
this.denyAccess(user);
|
|
66
|
-
}
|
|
59
|
+
this.denyAccess(user);
|
|
67
60
|
return false;
|
|
68
61
|
}
|
|
69
62
|
}
|
|
70
|
-
|
|
71
|
-
this.denyCallback.apply(null, action);
|
|
72
|
-
}
|
|
73
|
-
else {
|
|
74
|
-
this.denyAccess(user);
|
|
75
|
-
}
|
|
63
|
+
this.denyAccess(user);
|
|
76
64
|
return false;
|
|
77
65
|
});
|
|
78
66
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AccessControl.js","sourceRoot":"","sources":["../../filters/AccessControl.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;GAKG;AACH,2DAAmC;AACnC,2EAAsE;AACtE,uDAAkD;AAClD,6CAAwC;AACxC,4CAAuC;AACvC,gEAAwC;AAGxC,IAAI,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AAG1B,MAAa,aAAc,SAAQ,2BAAY;IAA/C;;QAEW,SAAI,GAAQ,IAAI,CAAC;IA4C5B,CAAC;IAzCU,IAAI;;QACP,KAAK,CAAC,IAAI,EAAE,CAAA;QAEZ,IAAI,IAAI,CAAC,IAAI,IAAI,SAAS,EAAE;YACxB,IAAI,CAAC,IAAI,GAAG,MAAA,eAAK,CAAC,SAAS,CAAC,kBAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,mCAAI,IAAI,iBAAO,EAAE,CAAC;SAC/E;QAED,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAQ,EAAE,KAAY,EAAE,EAAE;YAC1C,IAAI,IAAI,KAAK,MAAM,CAAC,IAAI,CAAC,EAAE;gBACvB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,eAAK,CAAC,YAAY,CAAC,IAAI,uBAAU,EAAE,EAAE,IAAI,CAAC,CAAC;aAClE;QACL,CAAC,CAAC,CAAA;IACN,CAAC;IAGY,YAAY,CAAC,MAAU,EAAE,OAAe;;;YACjD,IAAI,KAAK,CAAC;YACV,aAAa;YACb,IAAI,IAAI,GAAG,MAAA,OAAO,CAAC,IAAI,mCAAI,IAAI,CAAC,IAAI,CAAC;YACrC,aAAa;YACb,IAAI,CAAC,QAAQ,GAAG,MAAA,OAAO,CAAC,QAAQ,mCAAI,IAAI,CAAC;YAEzC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,KAAK,EAAE;gBAC/B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,EAAE;oBAC9D,OAAO,IAAI,CAAC;iBACf;qBAAM,IAAI,KAAK,KAAK,KAAK,EAAE;oBACxB,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;oBAEtB,OAAO,KAAK,CAAC;iBAChB;aACJ;YACD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACtB,OAAO,KAAK,CAAC;;KAChB;IAEM,UAAU,CAAC,IAAa;QAC3B,IAAI,IAAI,IAAI,SAAS,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;YACxC,IAAI,CAAC,aAAa,EAAE,CAAC;SACxB;;YAAM,MAAM,IAAI,+CAAsB,CAAC,kBAAQ,CAAC,CAAC,CAAC,6CAA6C,CAAC,CAAC,CAAC;IACvG,CAAC;CAEJ;AA9CD,sCA8CC"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AccessRule = void 0;
|
|
4
|
+
var _ = require('lodash');
|
|
5
|
+
const Component_1 = require("../base/Component");
|
|
6
|
+
const InvalidConfigException_1 = require("../base/InvalidConfigException");
|
|
7
|
+
class AccessRule extends Component_1.Component {
|
|
8
|
+
allows(action, user, request) {
|
|
9
|
+
if (this.matchAction(action)
|
|
10
|
+
&& this.matchRole(user)) {
|
|
11
|
+
return this.allow;
|
|
12
|
+
}
|
|
13
|
+
// if (this.matchAction($action)
|
|
14
|
+
// && this.matchRole($user)
|
|
15
|
+
// && this.matchIP($request->getUserIP())
|
|
16
|
+
// && this.matchVerb($request->getMethod())
|
|
17
|
+
// && this.matchController($action->controller)
|
|
18
|
+
// && this.matchCustom($action)
|
|
19
|
+
// ) {
|
|
20
|
+
// return $this->allow ? true : false;
|
|
21
|
+
// }
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* @param Action $action the action
|
|
26
|
+
* @return bool whether the rule applies to the action
|
|
27
|
+
*/
|
|
28
|
+
matchAction(action) {
|
|
29
|
+
return _.isEmpty(this.actions) || this.actions.includes(action.id);
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* @param Controller $controller the controller
|
|
33
|
+
* @return bool whether the rule applies to the controller
|
|
34
|
+
*/
|
|
35
|
+
matchController(controller) {
|
|
36
|
+
// if (empty($this->controllers)) {
|
|
37
|
+
// return true;
|
|
38
|
+
// }
|
|
39
|
+
//
|
|
40
|
+
// $id = $controller->getUniqueId();
|
|
41
|
+
// foreach ($this->controllers as $pattern) {
|
|
42
|
+
// if (StringHelper::matchWildcard($pattern, $id)) {
|
|
43
|
+
// return true;
|
|
44
|
+
// }
|
|
45
|
+
// }
|
|
46
|
+
return false;
|
|
47
|
+
}
|
|
48
|
+
matchRole(user) {
|
|
49
|
+
let items = _.isEmpty(this.roles) ? [] : this.roles;
|
|
50
|
+
if (!_.isEmpty(this.permissions)) {
|
|
51
|
+
items = _.merge(items, this.permissions);
|
|
52
|
+
}
|
|
53
|
+
if (_.isEmpty(items)) {
|
|
54
|
+
return true;
|
|
55
|
+
}
|
|
56
|
+
if (user === false) {
|
|
57
|
+
throw new InvalidConfigException_1.InvalidConfigException('The user application component must be available to specify roles in AccessRule.');
|
|
58
|
+
}
|
|
59
|
+
for (const itemsKey in items) {
|
|
60
|
+
let item = items[itemsKey];
|
|
61
|
+
if (item === '?') {
|
|
62
|
+
if (user.getIsGuest()) {
|
|
63
|
+
return true;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
else if (item === '@') {
|
|
67
|
+
if (!user.getIsGuest()) {
|
|
68
|
+
return true;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
//roleparams
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
return false;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
exports.AccessRule = AccessRule;
|
|
79
|
+
//# sourceMappingURL=AccessRule.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AccessRule.js","sourceRoot":"","sources":["../../filters/AccessRule.ts"],"names":[],"mappings":";;;AAQA,IAAI,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;AAC1B,iDAA4C;AAC5C,2EAAsE;AAGtE,MAAa,UAAW,SAAQ,qBAAS;IAwC9B,MAAM,CAAC,MAAU,EAAE,IAAY,EAAE,OAAe;QACnD,IACI,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;eACrB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EACzB;YACE,OAAO,IAAI,CAAC,KAAK,CAAA;SACpB;QACD,oCAAoC;QACpC,mCAAmC;QACnC,yCAAyC;QACzC,2CAA2C;QAC3C,+CAA+C;QAC/C,+BAA+B;QAC/B,MAAM;QACN,0CAA0C;QAC1C,IAAI;QAEJ,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;OAGG;IACO,WAAW,CAAC,MAAU;QAC5B,OAAO,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACvE,CAAC;IAED;;;OAGG;IACO,eAAe,CAAC,UAAc;QACpC,uCAAuC;QACvC,uBAAuB;QACvB,QAAQ;QACR,EAAE;QACF,wCAAwC;QACxC,iDAAiD;QACjD,wDAAwD;QACxD,uBAAuB;QACvB,QAAQ;QACR,IAAI;QAEJ,OAAO,KAAK,CAAC;IACjB,CAAC;IAES,SAAS,CAAC,IAAQ;QACxB,IAAI,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC;QAEpD,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE;YAC9B,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;SAC5C;QAED,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAClB,OAAO,IAAI,CAAC;SACf;QAGD,IAAI,IAAI,KAAK,KAAK,EAAE;YAChB,MAAM,IAAI,+CAAsB,CAAC,kFAAkF,CAAC,CAAC;SACxH;QAED,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE;YAC1B,IAAI,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC;YAC3B,IAAI,IAAI,KAAK,GAAG,EAAE;gBACd,IAAI,IAAI,CAAC,UAAU,EAAE,EAAE;oBACnB,OAAO,IAAI,CAAC;iBACf;aACJ;iBAAM,IAAI,IAAI,KAAK,GAAG,EAAE;gBACrB,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,EAAE;oBACpB,OAAO,IAAI,CAAC;iBACf;aACJ;iBAAM;gBACH,YAAY;aACf;SACJ;QAGD,OAAO,KAAK,CAAC;IACjB,CAAC;CAGJ;AA3HD,gCA2HC"}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
1
2
|
/*
|
|
2
3
|
* Copyright (c) 2021. Chy Bilgisayar Bilisim
|
|
3
4
|
* Author: Cihan Ozturk
|
|
4
5
|
* E-mail: cihan@chy.com.tr
|
|
5
6
|
* Github:https://github.com/cihan53/
|
|
6
7
|
*/
|
|
7
|
-
|
|
8
|
-
const Glob = require("glob");
|
|
9
|
-
export default Glob;
|
|
8
|
+
//# sourceMappingURL=HttpBasicAuth.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"HttpBasicAuth.js","sourceRoot":"","sources":["../../../filters/auth/HttpBasicAuth.ts"],"names":[],"mappings":";AAAA;;;;;GAKG"}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
@@ -50,7 +50,7 @@ class JwtHttpBearerAuth extends HttpBearerAuth_1.HttpBearerAuth {
|
|
|
50
50
|
if (autHeader == null || (autHeader = this.patternCheck(autHeader, this.pattern)) == null) {
|
|
51
51
|
return null;
|
|
52
52
|
}
|
|
53
|
-
|
|
53
|
+
BaseChyz_1.default.debug("JSON Web Token.", autHeader);
|
|
54
54
|
let identity = null;
|
|
55
55
|
let token = null;
|
|
56
56
|
token = JsonWebToken.decode(autHeader[1], { complete: true });
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"JwtHttpBearerAuth.js","sourceRoot":"","sources":["../../../filters/auth/JwtHttpBearerAuth.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;GAKG;AACH,8DAAsC;AACtC,qDAAgD;AAChD,8EAAyE;AAKzE,MAAM,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAE7C,MAAa,iBAAkB,SAAQ,+BAAc;IAArD;;QACI;;;WAGG;QACI,QAAG,GAAG,KAAK,CAAA;QACX,SAAI,GAAO,IAAI,CAAC;IA0D3B,CAAC;IAvDG;;OAEG;IACI,IAAI;;QACP,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,MAAM,IAAI,+CAAsB,CAAC,2EAA2E,CAAC,CAAC;SACjH;QAED,IAAI,CAAC,IAAI,GAAG,MAAA,kBAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,mCAAI,IAAI,CAAC;IACtD,CAAC;IAGY,YAAY,CAAC,IAAY,EAAE,OAAe,EAAE,QAAiB;;YAGtE,IAAI,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YACjE,IAAI,SAAS,IAAI,IAAI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,IAAI,EAAE;gBACvF,OAAO,IAAI,CAAC;aACf;YAED,kBAAQ,CAAC,KAAK,CAAC,iBAAiB,EAAC,SAAS,CAAC,CAAC;YAC5C,IAAI,QAAQ,GAAG,IAAI,CAAC;YACpB,IAAI,KAAK,GAAG,IAAI,CAAC;YAEjB,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAA;YAC3D,IAAI,CAAC,KAAK,EAAE;gBACR,kBAAQ,CAAC,OAAO,CAAC,+DAA+D,CAAC,CAAC;gBAClF,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aACvB;YAED,IAAI,KAAK,KAAK,IAAI,EAAE;gBAChB,IAAI,IAAI,CAAC,IAAI,IAAI,IAAI,EAAE;oBACnB,QAAQ,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAA;iBAC3C;qBAAM;oBACH,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,mBAAmB,CAAC,CAAA;iBAC9E;aACJ;YAED,IAAI,QAAQ,IAAI,IAAI;gBAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAGzC,OAAO,QAAQ,CAAC;QACpB,CAAC;KAAA;IAGD;;OAEG;IACI,IAAI,CAAC,QAAiB;QACzB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAA;QACxB,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;CAEJ;AAhED,8CAgEC"}
|
|
File without changes
|
|
File without changes
|
|
@@ -13,5 +13,4 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
13
13
|
__exportStar(require("./JwtHttpBearerAuth"), exports);
|
|
14
14
|
__exportStar(require("./HttpBearerAuth"), exports);
|
|
15
15
|
__exportStar(require("./HttpHeaderAuth"), exports);
|
|
16
|
-
__exportStar(require("./HttpBasicAuth"), exports);
|
|
17
16
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../filters/auth/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sDAAmC;AACnC,mDAAgC;AAChC,mDAAgC
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../filters/auth/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sDAAmC;AACnC,mDAAgC;AAChC,mDAAgC"}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/package.json
CHANGED
|
@@ -1,11 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "chyz",
|
|
3
|
-
"version": "
|
|
4
|
-
"description": "Nodejs
|
|
3
|
+
"version": "1.0.13-rc.4",
|
|
4
|
+
"description": "Nodejs MicroServis Framework",
|
|
5
|
+
"main": "index.js",
|
|
5
6
|
"scripts": {
|
|
6
|
-
"dev": "nodemon
|
|
7
|
+
"dev": "nodemon index.ts",
|
|
7
8
|
"debug": "ts-node index.ts",
|
|
8
|
-
"build": "rmdir /S /Q .\\dist && npx tsc && xcopy .\\log .\\dist\\log /e /i /h /Y && copy .\\package.json .\\dist\\package.json",
|
|
9
|
+
"build": "rmdir /S /Q .\\dist && npx tsc && xcopy .\\log .\\dist\\log /e /i /h /Y && copy .\\package.json .\\dist\\package.json && copy .\\README.md .\\dist\\README.md ",
|
|
10
|
+
"publish": "cd dist && npm publish",
|
|
9
11
|
"test": "echo \"Error: no test specified\" && exit 1",
|
|
10
12
|
"postversion": "git push && git push --tags"
|
|
11
13
|
},
|
|
@@ -36,8 +38,7 @@
|
|
|
36
38
|
"pg": "^8.7.1",
|
|
37
39
|
"pg-hstore": "^2.3.4",
|
|
38
40
|
"reflect-metadata": "^0.1.13",
|
|
39
|
-
"sequelize": "^6.6.5"
|
|
40
|
-
"validate.js": "^0.13.1"
|
|
41
|
+
"sequelize": "^6.6.5"
|
|
41
42
|
},
|
|
42
43
|
"devDependencies": {
|
|
43
44
|
"@types/express": "^4.17.13",
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/web/WebUser.js
ADDED
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
+
};
|
|
14
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
exports.WebUser = void 0;
|
|
16
|
+
/*
|
|
17
|
+
* Copyright (c) 2021. Chy Bilgisayar Bilisim
|
|
18
|
+
* Author: Cihan Ozturk
|
|
19
|
+
* E-mail: cihan@chy.com.tr
|
|
20
|
+
* Github:https://github.com/cihan53/
|
|
21
|
+
*/
|
|
22
|
+
const BaseChyz_1 = __importDefault(require("../BaseChyz"));
|
|
23
|
+
const Component_1 = require("../base/Component");
|
|
24
|
+
const ForbiddenHttpException_1 = require("../base/ForbiddenHttpException");
|
|
25
|
+
const InvalidConfigException_1 = require("../base/InvalidConfigException");
|
|
26
|
+
class WebUser extends Component_1.Component {
|
|
27
|
+
get identity() {
|
|
28
|
+
return this._identity;
|
|
29
|
+
}
|
|
30
|
+
set identity(value) {
|
|
31
|
+
this._identity = value;
|
|
32
|
+
}
|
|
33
|
+
init() {
|
|
34
|
+
super.init();
|
|
35
|
+
if (this.identityClass === null) {
|
|
36
|
+
throw new InvalidConfigException_1.InvalidConfigException('User::identityClass must be set.');
|
|
37
|
+
}
|
|
38
|
+
this.identityClass = new this.identityClass();
|
|
39
|
+
}
|
|
40
|
+
getIsGuest() {
|
|
41
|
+
return this.getIdentity() === null;
|
|
42
|
+
}
|
|
43
|
+
getIdentity(autoRenew = true) {
|
|
44
|
+
return this._identity;
|
|
45
|
+
}
|
|
46
|
+
loginRequired() {
|
|
47
|
+
throw new ForbiddenHttpException_1.ForbiddenHttpException(BaseChyz_1.default.t('Login Required'));
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Regenerates CSRF token
|
|
51
|
+
*
|
|
52
|
+
* @since 2.0.14.2
|
|
53
|
+
*/
|
|
54
|
+
regenerateCsrfToken() {
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Logs in a user by the given access token.
|
|
58
|
+
* @param token
|
|
59
|
+
* @param type
|
|
60
|
+
*/
|
|
61
|
+
loginByAccessToken(token, type = null) {
|
|
62
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
63
|
+
let $class = this.identityClass;
|
|
64
|
+
if ($class.findIdentityByAccessToken) {
|
|
65
|
+
this.identity = yield $class.findIdentityByAccessToken(token, type);
|
|
66
|
+
if (this.identity && this.login(this.identity)) {
|
|
67
|
+
return this.identity;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
else {
|
|
71
|
+
BaseChyz_1.default.error("WebUser::findIdentityByAccessToken undefined");
|
|
72
|
+
}
|
|
73
|
+
return null;
|
|
74
|
+
});
|
|
75
|
+
}
|
|
76
|
+
login(identity, duration = 0) {
|
|
77
|
+
if (this.beforeLogin(identity, false, duration)) {
|
|
78
|
+
}
|
|
79
|
+
return !this.getIsGuest();
|
|
80
|
+
}
|
|
81
|
+
beforeLogin(identity, cookieBased, duration) {
|
|
82
|
+
return true;
|
|
83
|
+
}
|
|
84
|
+
afterLogin() {
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
exports.WebUser = WebUser;
|
|
88
|
+
//# sourceMappingURL=WebUser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WebUser.js","sourceRoot":"","sources":["../../web/WebUser.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;GAKG;AACH,2DAAmC;AACnC,iDAA4C;AAC5C,2EAAsE;AACtE,2EAAsE;AAGtE,MAAa,OAAQ,SAAQ,qBAAS;IASlC,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,IAAI,QAAQ,CAAC,KAAK;QACd,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;IAC3B,CAAC;IAEM,IAAI;QACP,KAAK,CAAC,IAAI,EAAE,CAAC;QAEb,IAAI,IAAI,CAAC,aAAa,KAAK,IAAI,EAAE;YAC7B,MAAM,IAAI,+CAAsB,CAAC,kCAAkC,CAAC,CAAC;SACxE;QAGD,IAAI,CAAC,aAAa,GAAG,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;IAElD,CAAC;IAEM,UAAU;QACb,OAAO,IAAI,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC;IACvC,CAAC;IAEM,WAAW,CAAC,SAAS,GAAG,IAAI;QAC/B,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAEM,aAAa;QAEhB,MAAM,IAAI,+CAAsB,CAAC,kBAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC;IACnE,CAAC;IAGD;;;;OAIG;IACO,mBAAmB;IAE7B,CAAC;IAED;;;;OAIG;IACU,kBAAkB,CAAC,KAAU,EAAE,OAAY,IAAI;;YAExD,IAAI,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC;YAChC,IAAI,MAAM,CAAC,yBAAyB,EAAE;gBAClC,IAAI,CAAC,QAAQ,GAAG,MAAM,MAAM,CAAC,yBAAyB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAA;gBACnE,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;oBAC5C,OAAO,IAAI,CAAC,QAAQ,CAAC;iBACxB;aACJ;iBAAI;gBACD,kBAAQ,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAA;aACjE;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;IAEM,KAAK,CAAC,QAA2B,EAAE,QAAQ,GAAG,CAAC;QAElD,IAAI,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE;SAEhD;QACD,OAAO,CAAC,IAAI,CAAC,UAAU,EAAE,CAAA;IAC7B,CAAC;IAEM,WAAW,CAAC,QAAa,EAAE,WAAoB,EAAE,QAAgB;QAEpE,OAAO,IAAI,CAAC;IAChB,CAAC;IAEM,UAAU;IAEjB,CAAC;CACJ;AAvFD,0BAuFC"}
|