chyz 1.0.12-rc.7 → 1.0.13-rc.10

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.
Files changed (116) hide show
  1. package/BaseChyz.ts +118 -18
  2. package/Chyz.ts +0 -3
  3. package/Examples/Controllers/ApiController.ts +96 -29
  4. package/Examples/Controllers/KeyCloakController.ts +100 -0
  5. package/Examples/Controllers/PublicController.ts +5 -7
  6. package/Examples/Controllers/SiteController.ts +82 -32
  7. package/Examples/Models/Categories.ts +47 -0
  8. package/Examples/Models/Customer.ts +115 -0
  9. package/Examples/Models/KeycloakUser.ts +66 -0
  10. package/Examples/Models/Order.ts +64 -0
  11. package/Examples/Models/OrderItem.ts +27 -0
  12. package/Examples/Models/ProductModels.ts +49 -0
  13. package/Examples/Models/ProductToCategories.ts +46 -0
  14. package/Examples/Models/Products.ts +50 -0
  15. package/Examples/Models/Stocks.ts +60 -0
  16. package/Examples/Models/User.ts +66 -35
  17. package/Examples/Models/UserPermission.ts +37 -0
  18. package/Examples/Models/index.ts +19 -0
  19. package/Examples/index-keycloack.ts +78 -0
  20. package/Examples/index.ts +16 -14
  21. package/Examples/keycloak.json +7 -0
  22. package/Examples/log/app.log +6126 -1045
  23. package/Examples/log/errors.log +1503 -234
  24. package/Examples/package.json +46 -44
  25. package/Examples/tsconfig.json +3 -2
  26. package/README.md +116 -16
  27. package/base/ActionFilter.ts +2 -2
  28. package/base/BaseError.ts +2 -2
  29. package/base/DataErrorDbException.ts +1 -1
  30. package/base/DbConnection.ts +8 -2
  31. package/base/ForbiddenHttpException.ts +1 -1
  32. package/base/InvalidArgumentException.ts +16 -0
  33. package/base/InvalidConfigException.ts +1 -1
  34. package/base/Model.ts +206 -17
  35. package/base/ModelManager.ts +14 -0
  36. package/base/NotFoundHttpException.ts +1 -1
  37. package/base/RestClient.ts +28 -0
  38. package/base/UnauthorizedHttpException.ts +2 -1
  39. package/base/ValidationHttpException.ts +14 -0
  40. package/base/db/Exception.ts +14 -0
  41. package/base/index.ts +4 -0
  42. package/dist/BaseChyz.js +108 -23
  43. package/dist/BaseChyz.js.map +1 -1
  44. package/dist/Chyz.js.map +1 -1
  45. package/dist/base/ActionFilter.js +2 -2
  46. package/dist/base/ActionFilter.js.map +1 -1
  47. package/dist/base/BaseError.js +2 -2
  48. package/dist/base/BaseError.js.map +1 -1
  49. package/dist/base/DataErrorDbException.js +1 -1
  50. package/dist/base/DataErrorDbException.js.map +1 -1
  51. package/dist/base/DbConnection.js +9 -2
  52. package/dist/base/DbConnection.js.map +1 -1
  53. package/dist/base/ForbiddenHttpException.js +1 -1
  54. package/dist/base/ForbiddenHttpException.js.map +1 -1
  55. package/dist/base/InvalidArgumentException.js +18 -0
  56. package/dist/base/InvalidArgumentException.js.map +1 -0
  57. package/dist/base/InvalidConfigException.js +1 -1
  58. package/dist/base/InvalidConfigException.js.map +1 -1
  59. package/dist/base/Model.js +187 -15
  60. package/dist/base/Model.js.map +1 -1
  61. package/dist/base/ModelManager.js +17 -0
  62. package/dist/base/ModelManager.js.map +1 -0
  63. package/dist/base/NotFoundHttpException.js +1 -1
  64. package/dist/base/NotFoundHttpException.js.map +1 -1
  65. package/dist/base/RestClient.js +27 -0
  66. package/dist/base/RestClient.js.map +1 -0
  67. package/dist/base/UnauthorizedHttpException.js +1 -1
  68. package/dist/base/UnauthorizedHttpException.js.map +1 -1
  69. package/dist/base/ValidationHttpException.js +18 -0
  70. package/dist/base/ValidationHttpException.js.map +1 -0
  71. package/dist/base/db/Exception.js +16 -0
  72. package/dist/base/db/Exception.js.map +1 -0
  73. package/dist/base/index.js +4 -0
  74. package/dist/base/index.js.map +1 -1
  75. package/dist/filters/AccessControl.js +2 -2
  76. package/dist/filters/AccessControl.js.map +1 -1
  77. package/dist/filters/AccessRule.js.map +1 -1
  78. package/dist/filters/auth/AuthMethod.js +2 -2
  79. package/dist/filters/auth/AuthMethod.js.map +1 -1
  80. package/dist/filters/auth/HttpHeaderAuth.js.map +1 -1
  81. package/dist/filters/auth/JwtHttpBearerAuth.js +1 -0
  82. package/dist/filters/auth/JwtHttpBearerAuth.js.map +1 -1
  83. package/dist/filters/auth/KeyCloakHttpBearerAuth.js +117 -0
  84. package/dist/filters/auth/KeyCloakHttpBearerAuth.js.map +1 -0
  85. package/dist/index.js +28 -0
  86. package/dist/index.js.map +1 -0
  87. package/dist/package.json +57 -0
  88. package/dist/rbac/AuthAssignment.js +45 -0
  89. package/dist/rbac/AuthAssignment.js.map +1 -0
  90. package/dist/rbac/AuthItem.js +52 -0
  91. package/dist/rbac/AuthItem.js.map +1 -0
  92. package/dist/rbac/AuthItemChild.js +44 -0
  93. package/dist/rbac/AuthItemChild.js.map +1 -0
  94. package/dist/rbac/AuthManager.js +351 -0
  95. package/dist/rbac/AuthManager.js.map +1 -0
  96. package/dist/web/{User.js → WebUser.js} +12 -7
  97. package/dist/web/WebUser.js.map +1 -0
  98. package/filters/AccessControl.ts +3 -3
  99. package/filters/AccessRule.ts +2 -2
  100. package/filters/auth/AuthMethod.ts +4 -4
  101. package/filters/auth/HttpHeaderAuth.ts +2 -2
  102. package/filters/auth/JwtHttpBearerAuth.ts +4 -5
  103. package/filters/auth/KeyCloakHttpBearerAuth.ts +115 -0
  104. package/index.ts +14 -0
  105. package/package-lock.json +5259 -0
  106. package/package.json +57 -52
  107. package/rbac/AuthAssignment.ts +50 -0
  108. package/rbac/AuthItem.ts +57 -0
  109. package/rbac/AuthItemChild.ts +50 -0
  110. package/rbac/AuthManager.ts +388 -0
  111. package/web/{User.ts → WebUser.ts} +10 -6
  112. package/.idea/Chy-Nodejs-Framework.iml +0 -12
  113. package/.idea/jsLibraryMappings.xml +0 -6
  114. package/.idea/modules.xml +0 -8
  115. package/.idea/vcs.xml +0 -6
  116. package/dist/web/User.js.map +0 -1
@@ -0,0 +1,117 @@
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.KeyCloakHttpBearerAuth = 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 HttpBearerAuth_1 = require("./HttpBearerAuth");
24
+ const InvalidConfigException_1 = require("../../base/InvalidConfigException");
25
+ const JsonWebToken = require("jsonwebtoken");
26
+ class KeyCloakHttpBearerAuth extends HttpBearerAuth_1.HttpBearerAuth {
27
+ constructor() {
28
+ super(...arguments);
29
+ /**
30
+ * @var string|array<string, mixed>|Jwt application component ID of the JWT handler, configuration array, or JWT handler object
31
+ * itself. By default it's assumes that component of ID "jwt" has been configured.
32
+ */
33
+ this.jwt = 'jwt';
34
+ this.auth = null;
35
+ this.keycloak = null;
36
+ }
37
+ /**
38
+ * @throws InvalidConfigException
39
+ */
40
+ init() {
41
+ var _a, _b;
42
+ super.init();
43
+ if (!this.pattern) {
44
+ throw new InvalidConfigException_1.InvalidConfigException('You must provide pattern to use to extract the HTTP authentication value!');
45
+ }
46
+ this.keycloak = (_a = BaseChyz_1.default.getMiddlewares("keycloak").keycloak) !== null && _a !== void 0 ? _a : null;
47
+ this.user = (_b = BaseChyz_1.default.getComponent("user")) !== null && _b !== void 0 ? _b : null;
48
+ this.auth = this.KeyCloakCheck;
49
+ }
50
+ KeyCloakCheck(token, request, response) {
51
+ return __awaiter(this, void 0, void 0, function* () {
52
+ if (this.keycloak == null)
53
+ return false;
54
+ // return await this.keycloak.protect('realm:user')(request, response, () => true /*next*/)
55
+ return yield this.keycloak.protect()(request, response, () => true /*next*/);
56
+ });
57
+ }
58
+ authenticate(user, request, response) {
59
+ return __awaiter(this, void 0, void 0, function* () {
60
+ let identity = null;
61
+ let token = null;
62
+ let autHeader = this.getHeaderByKey(request.headers, this.header);
63
+ if (autHeader == null || (autHeader = this.patternCheck(autHeader, this.pattern)) == null) {
64
+ return null;
65
+ }
66
+ token = JsonWebToken.decode(autHeader[1], { complete: true });
67
+ if (!token) {
68
+ BaseChyz_1.default.warning("Your request was made with invalid or expired JSON Web Token.");
69
+ this.fail(response);
70
+ }
71
+ if (token !== null) {
72
+ identity = yield this.KeyCloakCheck(autHeader[1], request, response);
73
+ BaseChyz_1.default.debug("KeyCloakCheck Result:", identity);
74
+ }
75
+ if (identity == null || identity == false)
76
+ this.fail(response);
77
+ return identity;
78
+ /* let autHeader = this.getHeaderByKey(request.headers, this.header)
79
+ if (autHeader == null || (autHeader = this.patternCheck(autHeader, this.pattern)) == null) {
80
+ return null;
81
+ }
82
+
83
+ BaseChyz.debug("JSON Web Token.",autHeader);
84
+ let identity = null;
85
+ let token = null;
86
+
87
+ token = JsonWebToken.decode(autHeader[1], {complete: true})
88
+ if (!token) {
89
+ BaseChyz.warning("Your request was made with invalid or expired JSON Web Token.");
90
+ this.fail(response);
91
+ }
92
+
93
+ if (token !== null) {
94
+ if (this.auth != null) {
95
+ identity = await this.auth(autHeader[1])
96
+ } else {
97
+ identity = await user.loginByAccessToken(autHeader[1], "JwtHttpBearerAuth")
98
+ }
99
+ }
100
+
101
+ if (identity == null) this.fail(response)
102
+
103
+
104
+
105
+ return identity;*/
106
+ });
107
+ }
108
+ /**
109
+ * @throws UnauthorizedHttpException
110
+ */
111
+ fail(response) {
112
+ // this.challenge(response)
113
+ // this.handleFailure(response);
114
+ }
115
+ }
116
+ exports.KeyCloakHttpBearerAuth = KeyCloakHttpBearerAuth;
117
+ //# sourceMappingURL=KeyCloakHttpBearerAuth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"KeyCloakHttpBearerAuth.js","sourceRoot":"","sources":["../../../filters/auth/KeyCloakHttpBearerAuth.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA;;;;;GAKG;AACH,8DAAsC;AACtC,qDAAgD;AAChD,8EAAyE;AAKzE,MAAM,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;AAE7C,MAAa,sBAAuB,SAAQ,+BAAc;IAA1D;;QACI;;;WAGG;QACI,QAAG,GAAG,KAAK,CAAA;QACX,SAAI,GAAQ,IAAI,CAAC;QACjB,aAAQ,GAAQ,IAAI,CAAC;IA4FhC,CAAC;IAzFG;;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,QAAQ,GAAG,MAAA,kBAAQ,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,QAAQ,mCAAI,IAAI,CAAC;QACrE,IAAI,CAAC,IAAI,GAAG,MAAA,kBAAQ,CAAC,YAAY,CAAC,MAAM,CAAC,mCAAI,IAAI,CAAC;QAClD,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC;IAGnC,CAAC;IAEY,aAAa,CAAC,KAAa,EAAE,OAAgB,EAAE,QAAkB;;YAC1E,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI;gBAAE,OAAO,KAAK,CAAC;YACxC,2FAA2F;YAC3F,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACjF,CAAC;KAAA;IAGY,YAAY,CAAC,IAAa,EAAE,OAAgB,EAAE,QAAkB;;YAGzE,IAAI,QAAQ,GAAG,IAAI,CAAC;YACpB,IAAI,KAAK,GAAG,IAAI,CAAC;YAEjB,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,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,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;gBACpE,kBAAQ,CAAC,KAAK,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAA;aACpD;YAED,IAAI,QAAQ,IAAI,IAAI,IAAI,QAAQ,IAAI,KAAK;gBAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAE9D,OAAO,QAAQ,CAAC;YAEhB;;;;;;;;;;;;;;;;;;;;;;;;;;;+BA2BmB;QACvB,CAAC;KAAA;IAGD;;OAEG;IACI,IAAI,CAAC,QAAkB;QAC1B,2BAA2B;QAC3B,gCAAgC;IACpC,CAAC;CAEJ;AAnGD,wDAmGC"}
package/dist/index.js ADDED
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
+ };
12
+ var __importDefault = (this && this.__importDefault) || function (mod) {
13
+ return (mod && mod.__esModule) ? mod : { "default": mod };
14
+ };
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.BaseChyz = exports.WebUser = void 0;
17
+ __exportStar(require("./base"), exports);
18
+ __exportStar(require("./filters"), exports);
19
+ __exportStar(require("./filters/auth"), exports);
20
+ __exportStar(require("./decorator"), exports);
21
+ __exportStar(require("./requiments/Utils"), exports);
22
+ var WebUser_1 = require("./web/WebUser");
23
+ Object.defineProperty(exports, "WebUser", { enumerable: true, get: function () { return WebUser_1.WebUser; } });
24
+ const BaseChyz_1 = __importDefault(require("./BaseChyz"));
25
+ exports.BaseChyz = BaseChyz_1.default;
26
+ const Chyz = new BaseChyz_1.default();
27
+ exports.default = Chyz;
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,yCAAuB;AACvB,4CAA0B;AAC1B,iDAA+B;AAC/B,8CAA4B;AAC5B,qDAAmC;AAEnC,yCAAsC;AAA9B,kGAAA,OAAO,OAAA;AAEf,0DAAkC;AAC1B,mBADD,kBAAQ,CACC;AAEhB,MAAM,IAAI,GAAG,IAAI,kBAAQ,EAAE,CAAC;AAC5B,kBAAe,IAAI,CAAC"}
@@ -0,0 +1,57 @@
1
+ {
2
+ "name": "chyz",
3
+ "version": " 1.0.13-rc.10",
4
+ "description": "Nodejs Micro service Framework",
5
+ "main": "dist/index.js",
6
+ "scripts": {
7
+ "dev": "nodemon -t --trace-warnings index.ts",
8
+ "debug": "ts-node index.ts",
9
+ "build": "rmdir /S /Q .\\dist && npx tsc && xcopy .\\log .\\dist\\log /e /i /h /Y && copy .\\package.json .\\dist\\package.json",
10
+ "publish": "cd dist && npm publish",
11
+ "test": "echo \"Error: no test specified\" && exit 1",
12
+ "postversion": "git push && git push --tags"
13
+ },
14
+ "repository": {
15
+ "type": "git",
16
+ "url": "git+https://github.com/cihan53/Chy-Nodejs-Framework.git"
17
+ },
18
+ "author": "Cihan Ozturk",
19
+ "license": "MIT",
20
+ "bugs": {
21
+ "url": "https://github.com/cihan53/Chy-Nodejs-Framework/issues"
22
+ },
23
+ "homepage": "https://github.com/cihan53/Chy-Nodejs-Framework#readme",
24
+ "dependencies": {
25
+ "axios": "^0.23.0",
26
+ "babel-plugin-transform-decorators-legacy": "^1.3.5",
27
+ "body-parser": "^1.19.0",
28
+ "dotenv-flow": "^3.2.0",
29
+ "express": "^4.17.1",
30
+ "express-session": "^1.17.2",
31
+ "glob": "^7.1.7",
32
+ "ip": "^1.1.5",
33
+ "jsonwebtoken": "^8.5.1",
34
+ "lodash": "^4.17.21",
35
+ "log4js": "^6.3.0",
36
+ "method-override": "^3.0.0",
37
+ "passport": "^0.4.1",
38
+ "pg": "^8.7.1",
39
+ "pg-hstore": "^2.3.4",
40
+ "reflect-metadata": "^0.1.13",
41
+ "sequelize": "^6.6.5",
42
+ "validate.js": "^0.13.1"
43
+ },
44
+ "devDependencies": {
45
+ "@types/express": "^4.17.13",
46
+ "@types/node": "^16.6.1",
47
+ "@types/validator": "^13.6.3",
48
+ "nodemon": "^2.0.12",
49
+ "ts-node": "^10.2.0",
50
+ "typescript": "^4.3.5"
51
+ },
52
+ "keywords": [
53
+ "Framework",
54
+ "RespAPI",
55
+ "microservice"
56
+ ]
57
+ }
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2021. Chy Bilgisayar Bilisim
4
+ * Author: Cihan Ozturk
5
+ * E-mail: cihan@chy.com.tr
6
+ * Github:https://github.com/cihan53/
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.AuthAssignmentClass = void 0;
10
+ const base_1 = require("../base");
11
+ class AuthAssignmentClass extends base_1.Model {
12
+ tableName() {
13
+ return 'auth_assignment';
14
+ }
15
+ attributes() {
16
+ return {
17
+ // Model attributes are defined here
18
+ item_name: {
19
+ type: base_1.DataTypes.STRING,
20
+ primaryKey: true,
21
+ allowNull: false
22
+ },
23
+ user_id: {
24
+ type: base_1.DataTypes.STRING,
25
+ allowNull: false
26
+ }
27
+ };
28
+ }
29
+ init() {
30
+ super.init();
31
+ this.model().removeAttribute('id');
32
+ }
33
+ relations() {
34
+ return [
35
+ {
36
+ type: "hasMany",
37
+ foreignKey: "name",
38
+ sourceKey: 'item_name',
39
+ model: base_1.ModelManager.AuthItem.model()
40
+ }
41
+ ];
42
+ }
43
+ }
44
+ exports.AuthAssignmentClass = AuthAssignmentClass;
45
+ //# sourceMappingURL=AuthAssignment.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthAssignment.js","sourceRoot":"","sources":["../../rbac/AuthAssignment.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,kCAAiE;AAEjE,MAAa,mBAAoB,SAAQ,YAAK;IAG1C,SAAS;QACL,OAAO,iBAAiB,CAAC;IAC7B,CAAC;IACD,UAAU;QACN,OAAO;YAEH,oCAAoC;YACpC,SAAS,EAAE;gBACP,IAAI,EAAE,gBAAS,CAAC,MAAM;gBACtB,UAAU,EAAC,IAAI;gBACf,SAAS,EAAE,KAAK;aACnB;YACD,OAAO,EAAG;gBACN,IAAI,EAAE,gBAAS,CAAC,MAAM;gBACtB,SAAS,EAAE,KAAK;aACnB;SAEJ,CAAA;IACL,CAAC;IAED,IAAI;QACA,KAAK,CAAC,IAAI,EAAE,CAAC;QACb,IAAI,CAAC,KAAK,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;IACtC,CAAC;IAED,SAAS;QACL,OAAO;YACH;gBACI,IAAI,EAAE,SAAS;gBACf,UAAU,EAAE,MAAM;gBAClB,SAAS,EAAC,WAAW;gBACrB,KAAK,EAAE,mBAAY,CAAC,QAAQ,CAAC,KAAK,EAAE;aACvC;SACJ,CAAA;IACL,CAAC;CAEJ;AAvCD,kDAuCC"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2021. Chy Bilgisayar Bilisim
4
+ * Author: Cihan Ozturk
5
+ * E-mail: cihan@chy.com.tr
6
+ * Github:https://github.com/cihan53/
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.AuthItemClass = void 0;
10
+ const base_1 = require("../base");
11
+ class AuthItemClass extends base_1.Model {
12
+ tableName() {
13
+ return 'auth_item';
14
+ }
15
+ attributes() {
16
+ return {
17
+ // Model attributes are defined here
18
+ name: {
19
+ type: base_1.DataTypes.STRING,
20
+ primaryKey: true,
21
+ allowNull: false
22
+ },
23
+ type: {
24
+ type: base_1.DataTypes.INTEGER,
25
+ allowNull: false
26
+ },
27
+ description: {
28
+ type: base_1.DataTypes.STRING,
29
+ allowNull: false
30
+ },
31
+ rule_name: {
32
+ type: base_1.DataTypes.STRING,
33
+ allowNull: false
34
+ }
35
+ };
36
+ }
37
+ init() {
38
+ super.init();
39
+ this.model().removeAttribute('id');
40
+ }
41
+ relations() {
42
+ return [
43
+ {
44
+ type: "hasOne",
45
+ foreignKey: "item_name",
46
+ model: base_1.ModelManager.AuthAssignment.model()
47
+ }
48
+ ];
49
+ }
50
+ }
51
+ exports.AuthItemClass = AuthItemClass;
52
+ //# sourceMappingURL=AuthItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthItem.js","sourceRoot":"","sources":["../../rbac/AuthItem.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,kCAAiE;AAEjE,MAAa,aAAc,SAAQ,YAAK;IAGpC,SAAS;QACL,OAAO,WAAW,CAAC;IACvB,CAAC;IAED,UAAU;QACN,OAAO;YACH,oCAAoC;YACpC,IAAI,EAAE;gBACF,IAAI,EAAE,gBAAS,CAAC,MAAM;gBACtB,UAAU,EAAC,IAAI;gBACf,SAAS,EAAE,KAAK;aACnB;YACD,IAAI,EAAE;gBACF,IAAI,EAAE,gBAAS,CAAC,OAAO;gBACvB,SAAS,EAAE,KAAK;aACnB;YACD,WAAW,EAAE;gBACT,IAAI,EAAE,gBAAS,CAAC,MAAM;gBACtB,SAAS,EAAE,KAAK;aACnB;YACD,SAAS,EAAE;gBACP,IAAI,EAAE,gBAAS,CAAC,MAAM;gBACtB,SAAS,EAAE,KAAK;aACnB;SAEJ,CAAA;IACL,CAAC;IAED,IAAI;QACA,KAAK,CAAC,IAAI,EAAE,CAAC;QACb,IAAI,CAAC,KAAK,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;IACtC,CAAC;IAED,SAAS;QACL,OAAO;YACH;gBACI,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,WAAW;gBACvB,KAAK,EAAE,mBAAY,CAAC,cAAc,CAAC,KAAK,EAAE;aAC7C;SACJ,CAAA;IACL,CAAC;CAEJ;AA9CD,sCA8CC"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright (c) 2021. Chy Bilgisayar Bilisim
4
+ * Author: Cihan Ozturk
5
+ * E-mail: cihan@chy.com.tr
6
+ * Github:https://github.com/cihan53/
7
+ */
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.AuthItemChildClass = void 0;
10
+ const base_1 = require("../base");
11
+ class AuthItemChildClass extends base_1.Model {
12
+ tableName() {
13
+ return 'auth_item_child';
14
+ }
15
+ attributes() {
16
+ return {
17
+ // Model attributes are defined here
18
+ parent: {
19
+ type: base_1.DataTypes.STRING,
20
+ primaryKey: true,
21
+ allowNull: false
22
+ },
23
+ child: {
24
+ type: base_1.DataTypes.STRING,
25
+ allowNull: false
26
+ }
27
+ };
28
+ }
29
+ init() {
30
+ super.init();
31
+ this.model().removeAttribute('id');
32
+ }
33
+ relations() {
34
+ return [
35
+ {
36
+ type: "hasOne",
37
+ foreignKey: "item_name",
38
+ model: base_1.ModelManager.AuthAssignment.model()
39
+ }
40
+ ];
41
+ }
42
+ }
43
+ exports.AuthItemChildClass = AuthItemChildClass;
44
+ //# sourceMappingURL=AuthItemChild.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthItemChild.js","sourceRoot":"","sources":["../../rbac/AuthItemChild.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAIH,kCAAiE;AAEjE,MAAa,kBAAmB,SAAQ,YAAK;IAGzC,SAAS;QACL,OAAO,iBAAiB,CAAC;IAC7B,CAAC;IAED,UAAU;QACN,OAAO;YACH,oCAAoC;YACpC,MAAM,EAAE;gBACJ,IAAI,EAAE,gBAAS,CAAC,MAAM;gBACtB,UAAU,EAAC,IAAI;gBACf,SAAS,EAAE,KAAK;aACnB;YACD,KAAK,EAAE;gBACH,IAAI,EAAE,gBAAS,CAAC,MAAM;gBACtB,SAAS,EAAE,KAAK;aACnB;SACJ,CAAA;IACL,CAAC;IAED,IAAI;QACA,KAAK,CAAC,IAAI,EAAE,CAAC;QACb,IAAI,CAAC,KAAK,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAA;IACtC,CAAC;IAED,SAAS;QACL,OAAO;YACH;gBACI,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,WAAW;gBACvB,KAAK,EAAE,mBAAY,CAAC,cAAc,CAAC,KAAK,EAAE;aAC7C;SACJ,CAAA;IACL,CAAC;CAEJ;AArCD,gDAqCC"}