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

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 (96) hide show
  1. package/BaseChyz.ts +76 -14
  2. package/Chyz.ts +0 -3
  3. package/Examples/Controllers/ApiController.ts +88 -30
  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 +36 -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 +50 -0
  13. package/Examples/Models/ProductToCategories.ts +35 -0
  14. package/Examples/Models/Products.ts +49 -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/index-keycloack.ts +78 -0
  19. package/Examples/index.ts +16 -15
  20. package/Examples/keycloak.json +7 -0
  21. package/Examples/log/app.log +903 -1034
  22. package/Examples/log/errors.log +79 -256
  23. package/Examples/package.json +46 -44
  24. package/Examples/tsconfig.json +1 -1
  25. package/Examples/yarn.lock +2549 -0
  26. package/README.md +118 -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/InvalidConfigException.ts +1 -1
  33. package/base/Model.ts +204 -15
  34. package/base/NotFoundHttpException.ts +1 -1
  35. package/base/RestClient.ts +28 -0
  36. package/base/UnauthorizedHttpException.ts +2 -1
  37. package/base/ValidationHttpException.ts +14 -0
  38. package/base/db/Exception.ts +14 -0
  39. package/base/index.ts +2 -0
  40. package/dist/BaseChyz.js +72 -25
  41. package/dist/BaseChyz.js.map +1 -1
  42. package/dist/Chyz.js.map +1 -1
  43. package/dist/base/ActionFilter.js +2 -2
  44. package/dist/base/ActionFilter.js.map +1 -1
  45. package/dist/base/BaseError.js +2 -2
  46. package/dist/base/BaseError.js.map +1 -1
  47. package/dist/base/DataErrorDbException.js +1 -1
  48. package/dist/base/DataErrorDbException.js.map +1 -1
  49. package/dist/base/DbConnection.js +9 -2
  50. package/dist/base/DbConnection.js.map +1 -1
  51. package/dist/base/ForbiddenHttpException.js +1 -1
  52. package/dist/base/ForbiddenHttpException.js.map +1 -1
  53. package/dist/base/InvalidConfigException.js +1 -1
  54. package/dist/base/InvalidConfigException.js.map +1 -1
  55. package/dist/base/Model.js +181 -13
  56. package/dist/base/Model.js.map +1 -1
  57. package/dist/base/NotFoundHttpException.js +1 -1
  58. package/dist/base/NotFoundHttpException.js.map +1 -1
  59. package/dist/base/RestClient.js +27 -0
  60. package/dist/base/RestClient.js.map +1 -0
  61. package/dist/base/UnauthorizedHttpException.js +1 -1
  62. package/dist/base/UnauthorizedHttpException.js.map +1 -1
  63. package/dist/base/ValidationHttpException.js +18 -0
  64. package/dist/base/ValidationHttpException.js.map +1 -0
  65. package/dist/base/db/Exception.js +16 -0
  66. package/dist/base/db/Exception.js.map +1 -0
  67. package/dist/base/index.js +2 -0
  68. package/dist/base/index.js.map +1 -1
  69. package/dist/filters/AccessControl.js +2 -2
  70. package/dist/filters/AccessControl.js.map +1 -1
  71. package/dist/filters/AccessRule.js.map +1 -1
  72. package/dist/filters/auth/AuthMethod.js +2 -2
  73. package/dist/filters/auth/AuthMethod.js.map +1 -1
  74. package/dist/filters/auth/HttpHeaderAuth.js.map +1 -1
  75. package/dist/filters/auth/JwtHttpBearerAuth.js +1 -0
  76. package/dist/filters/auth/JwtHttpBearerAuth.js.map +1 -1
  77. package/dist/filters/auth/KeyCloakHttpBearerAuth.js +117 -0
  78. package/dist/filters/auth/KeyCloakHttpBearerAuth.js.map +1 -0
  79. package/dist/index.js +29 -0
  80. package/dist/index.js.map +1 -0
  81. package/dist/web/{User.js → WebUser.js} +12 -7
  82. package/dist/web/WebUser.js.map +1 -0
  83. package/filters/AccessControl.ts +3 -3
  84. package/filters/AccessRule.ts +2 -2
  85. package/filters/auth/AuthMethod.ts +4 -4
  86. package/filters/auth/HttpHeaderAuth.ts +2 -2
  87. package/filters/auth/JwtHttpBearerAuth.ts +4 -5
  88. package/filters/auth/KeyCloakHttpBearerAuth.ts +115 -0
  89. package/index.ts +14 -0
  90. package/package.json +55 -52
  91. package/web/{User.ts → WebUser.ts} +10 -6
  92. package/.idea/Chy-Nodejs-Framework.iml +0 -12
  93. package/.idea/jsLibraryMappings.xml +0 -6
  94. package/.idea/modules.xml +0 -8
  95. package/.idea/vcs.xml +0 -6
  96. package/dist/web/User.js.map +0 -1
@@ -0,0 +1,78 @@
1
+ /*
2
+ * Copyright (c) 2021. Chy Bilgisayar Bilisim
3
+ * Author: Cihan Ozturk
4
+ * E-mail: cihan@chy.com.tr
5
+ * Github:https://github.com/cihan53/
6
+ */
7
+
8
+
9
+ require('dotenv-flow').config();
10
+
11
+ process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0";
12
+
13
+ import Chyz from "../Chyz";
14
+ import {WebUser} from "../web/WebUser";
15
+ import {KeycloakUser as Identity} from "./Models/KeycloakUser";
16
+ // @ts-ignore
17
+ import {DbConnection} from "../base/DbConnection";
18
+
19
+ var Keycloak = require('keycloak-connect');
20
+ var session = require('express-session');
21
+ var memoryStore = new session.MemoryStore();
22
+
23
+
24
+ var keycloakConfig = {
25
+ "realm": "CameraBox",
26
+ "auth-server-url": "https://keycloak.hubbox.io:8080/auth/",
27
+ //"ssl-required": "external",
28
+ "resource": "izanami",
29
+ "verify-token-audience": true,
30
+ "bearerOnly": true,
31
+ "confidential-port":0,
32
+ "policy-enforcer":{},
33
+ "credentials": {
34
+ "secret": "0b476571-28ab-49b1-9968-90fce6294d5a"
35
+ }
36
+
37
+ };
38
+
39
+
40
+
41
+ Keycloak.prototype.accessDenied = function () {
42
+ return null;
43
+ }
44
+
45
+ var keycloak = new Keycloak({scope: 'offline_access'}, keycloakConfig);
46
+
47
+
48
+ let config = {
49
+ port: 3000,
50
+ controllerpath: "C:\\PROJELER\\github\\Chy-Nodejs-Framework\\Examples\\Controllers",
51
+ components: {
52
+ db: {
53
+ class: DbConnection,
54
+ database: process.env.DBDATABASE,
55
+ username: process.env.DBUSER,
56
+ password: process.env.DBPASS,
57
+ options: {
58
+ host: process.env.DBHOST,
59
+ dialect: 'postgres', /* one of 'mysql' | 'mariadb' | 'postgres' | 'mssql' */
60
+ // disable logging; default: console.log
61
+ logging: false
62
+ }
63
+ },
64
+ user: {
65
+ 'class': WebUser,
66
+ 'identityClass': Identity
67
+ }
68
+ },
69
+ middlewares: {
70
+ keycloak: {
71
+ keycloak: keycloak,
72
+ config: {
73
+ logout: '/logout'
74
+ }
75
+ }
76
+ }
77
+ }
78
+ Chyz.app(config).Start();
package/Examples/index.ts CHANGED
@@ -6,33 +6,34 @@
6
6
  */
7
7
 
8
8
 
9
+ import {BaseChyz} from "../index";
10
+ require('dotenv-flow').config();
9
11
  import Chyz from "../Chyz";
10
- import {User} from "../web/User";
11
- import {User as Identity } from "./Models/User";
12
- // @ts-ignore
13
- import {DbConnection} from "../base/DbConnection";
14
-
12
+ import {WebUser} from "../web/WebUser";
13
+ import {User} from "./Models/User";
14
+ import {DbConnection} from "../base";
15
15
 
16
16
  let config = {
17
- port: 3000,
18
- controllerpath:"C:\\PROJELER\\github\\Chy-Nodejs-Framework\\Examples\\Controllers",
17
+ port: process.env.PORT,
18
+ controllerpath: "C:\\PROJELER\\github\\Chy-Nodejs-Framework\\Examples\\Controllers",
19
19
  components: {
20
- db:{
21
- class:DbConnection,
20
+ db: {
21
+ class: DbConnection,
22
22
  database: process.env.DBDATABASE,
23
- username:process.env.DBUSER,
24
- password:process.env.DBPASS,
25
- options:{
23
+ username: process.env.DBUSER,
24
+ password: process.env.DBPASS,
25
+ options: {
26
26
  host: process.env.DBHOST,
27
27
  dialect: 'postgres', /* one of 'mysql' | 'mariadb' | 'postgres' | 'mssql' */
28
28
  // disable logging; default: console.log
29
- logging: false
29
+ logging: (msg: any) => BaseChyz.debug(msg)
30
30
  }
31
31
  },
32
32
  user: {
33
- 'class': User,
34
- 'identityClass':Identity
33
+ 'class': WebUser,
34
+ 'identityClass': User
35
35
  }
36
36
  }
37
+
37
38
  }
38
39
  Chyz.app(config).Start();
@@ -0,0 +1,7 @@
1
+ {
2
+ "realm": "quickstart",
3
+ "bearer-only": true,
4
+ "auth-server-url": "http://localhost:8180/auth",
5
+ "ssl-required": "external",
6
+ "resource": "service-nodejs"
7
+ }