chyz 1.0.12-rc.14

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 (163) hide show
  1. package/BaseChyz.ts +316 -0
  2. package/Chyz.ts +11 -0
  3. package/Examples/Controllers/ApiController.ts +121 -0
  4. package/Examples/Controllers/PublicController.ts +44 -0
  5. package/Examples/Controllers/SiteController.ts +127 -0
  6. package/Examples/Models/Customer.ts +113 -0
  7. package/Examples/Models/Order.ts +48 -0
  8. package/Examples/Models/OrderItem.ts +26 -0
  9. package/Examples/Models/User.ts +80 -0
  10. package/Examples/index.ts +38 -0
  11. package/Examples/log/access.log +0 -0
  12. package/Examples/log/app.log +3264 -0
  13. package/Examples/log/errors.log +534 -0
  14. package/Examples/package.json +45 -0
  15. package/Examples/tsconfig.json +20 -0
  16. package/Examples/yarn.lock +2202 -0
  17. package/README.md +218 -0
  18. package/base/ActionFilter.ts +71 -0
  19. package/base/BaseError.ts +26 -0
  20. package/base/BaseObject.ts +19 -0
  21. package/base/Behavior.ts +6 -0
  22. package/base/Component.ts +66 -0
  23. package/base/Configurable.ts +10 -0
  24. package/base/Controller.ts +84 -0
  25. package/base/DataErrorDbException.ts +16 -0
  26. package/base/DbConnection.ts +51 -0
  27. package/base/ForbiddenHttpException.ts +15 -0
  28. package/base/InvalidConfigException.ts +16 -0
  29. package/base/Model.ts +254 -0
  30. package/base/NotFoundHttpException.ts +14 -0
  31. package/base/RestClient.ts +27 -0
  32. package/base/UnauthorizedHttpException.ts +16 -0
  33. package/base/ValidationHttpException.ts +14 -0
  34. package/base/db/Exception.ts +14 -0
  35. package/base/index.ts +16 -0
  36. package/decorator/Middleware.ts +9 -0
  37. package/decorator/controller.ts +22 -0
  38. package/decorator/enums/ControllerDecoratorParams.ts +5 -0
  39. package/decorator/get.ts +37 -0
  40. package/decorator/index.ts +3 -0
  41. package/decorator/post.ts +36 -0
  42. package/dist/BaseChyz.js +257 -0
  43. package/dist/BaseChyz.js.map +1 -0
  44. package/dist/Chyz.js +15 -0
  45. package/dist/Chyz.js.map +1 -0
  46. package/dist/base/ActionFilter.js +75 -0
  47. package/dist/base/ActionFilter.js.map +1 -0
  48. package/dist/base/BaseError.js +26 -0
  49. package/dist/base/BaseError.js.map +1 -0
  50. package/dist/base/BaseObject.js +20 -0
  51. package/dist/base/BaseObject.js.map +1 -0
  52. package/dist/base/Behavior.js +8 -0
  53. package/dist/base/Behavior.js.map +1 -0
  54. package/dist/base/Component.js +61 -0
  55. package/dist/base/Component.js.map +1 -0
  56. package/dist/base/Configurable.js +9 -0
  57. package/dist/base/Configurable.js.map +1 -0
  58. package/dist/base/Controller.js +75 -0
  59. package/dist/base/Controller.js.map +1 -0
  60. package/dist/base/DataErrorDbException.js +18 -0
  61. package/dist/base/DataErrorDbException.js.map +1 -0
  62. package/dist/base/DbConnection.js +53 -0
  63. package/dist/base/DbConnection.js.map +1 -0
  64. package/dist/base/ForbiddenHttpException.js +17 -0
  65. package/dist/base/ForbiddenHttpException.js.map +1 -0
  66. package/dist/base/InvalidConfigException.js +18 -0
  67. package/dist/base/InvalidConfigException.js.map +1 -0
  68. package/dist/base/Model.js +243 -0
  69. package/dist/base/Model.js.map +1 -0
  70. package/dist/base/NotFoundHttpException.js +18 -0
  71. package/dist/base/NotFoundHttpException.js.map +1 -0
  72. package/dist/base/RestClient.js +26 -0
  73. package/dist/base/RestClient.js.map +1 -0
  74. package/dist/base/UnauthorizedHttpException.js +18 -0
  75. package/dist/base/UnauthorizedHttpException.js.map +1 -0
  76. package/dist/base/ValidationHttpException.js +18 -0
  77. package/dist/base/ValidationHttpException.js.map +1 -0
  78. package/dist/base/db/Exception.js +16 -0
  79. package/dist/base/db/Exception.js.map +1 -0
  80. package/dist/base/index.js +29 -0
  81. package/dist/base/index.js.map +1 -0
  82. package/dist/decorator/Middleware.js +12 -0
  83. package/dist/decorator/Middleware.js.map +1 -0
  84. package/dist/decorator/controller.js +25 -0
  85. package/dist/decorator/controller.js.map +1 -0
  86. package/dist/decorator/enums/ControllerDecoratorParams.js +10 -0
  87. package/dist/decorator/enums/ControllerDecoratorParams.js.map +1 -0
  88. package/dist/decorator/get.js +37 -0
  89. package/dist/decorator/get.js.map +1 -0
  90. package/dist/decorator/index.js +16 -0
  91. package/dist/decorator/index.js.map +1 -0
  92. package/dist/decorator/post.js +37 -0
  93. package/dist/decorator/post.js.map +1 -0
  94. package/dist/filters/AccessControl.js +76 -0
  95. package/dist/filters/AccessControl.js.map +1 -0
  96. package/dist/filters/AccessRule.js +79 -0
  97. package/dist/filters/AccessRule.js.map +1 -0
  98. package/dist/filters/auth/AuthInterface.js +3 -0
  99. package/dist/filters/auth/AuthInterface.js.map +1 -0
  100. package/dist/filters/auth/AuthMethod.js +71 -0
  101. package/dist/filters/auth/AuthMethod.js.map +1 -0
  102. package/dist/filters/auth/HttpBasicAuth.js +8 -0
  103. package/dist/filters/auth/HttpBasicAuth.js.map +1 -0
  104. package/dist/filters/auth/HttpBearerAuth.js +33 -0
  105. package/dist/filters/auth/HttpBearerAuth.js.map +1 -0
  106. package/dist/filters/auth/HttpHeaderAuth.js +61 -0
  107. package/dist/filters/auth/HttpHeaderAuth.js.map +1 -0
  108. package/dist/filters/auth/JwtHttpBearerAuth.js +82 -0
  109. package/dist/filters/auth/JwtHttpBearerAuth.js.map +1 -0
  110. package/dist/filters/auth/index.js +16 -0
  111. package/dist/filters/auth/index.js.map +1 -0
  112. package/dist/filters/index.js +15 -0
  113. package/dist/filters/index.js.map +1 -0
  114. package/dist/index.js +28 -0
  115. package/dist/index.js.map +1 -0
  116. package/dist/log/config/log4js.json +55 -0
  117. package/dist/model/RouteDefinition.js +9 -0
  118. package/dist/model/RouteDefinition.js.map +1 -0
  119. package/dist/requiments/Glob.js +11 -0
  120. package/dist/requiments/Glob.js.map +1 -0
  121. package/dist/requiments/ReflectUtil.js +25 -0
  122. package/dist/requiments/ReflectUtil.js.map +1 -0
  123. package/dist/requiments/Utils.js +40 -0
  124. package/dist/requiments/Utils.js.map +1 -0
  125. package/dist/validators/BooleanValidator.js +2 -0
  126. package/dist/validators/BooleanValidator.js.map +1 -0
  127. package/dist/validators/CompareValidator.js +2 -0
  128. package/dist/validators/CompareValidator.js.map +1 -0
  129. package/dist/validators/DateValidator.js +2 -0
  130. package/dist/validators/DateValidator.js.map +1 -0
  131. package/dist/validators/EmailValidator.js +2 -0
  132. package/dist/validators/EmailValidator.js.map +1 -0
  133. package/dist/validators/Validator.js +28 -0
  134. package/dist/validators/Validator.js.map +1 -0
  135. package/dist/web/IdentityInterface.js +9 -0
  136. package/dist/web/IdentityInterface.js.map +1 -0
  137. package/dist/web/User.js +83 -0
  138. package/dist/web/User.js.map +1 -0
  139. package/filters/AccessControl.ts +64 -0
  140. package/filters/AccessRule.ts +137 -0
  141. package/filters/auth/AuthInterface.ts +34 -0
  142. package/filters/auth/AuthMethod.ts +88 -0
  143. package/filters/auth/HttpBasicAuth.ts +7 -0
  144. package/filters/auth/HttpBearerAuth.ts +31 -0
  145. package/filters/auth/HttpHeaderAuth.ts +53 -0
  146. package/filters/auth/JwtHttpBearerAuth.ts +81 -0
  147. package/filters/auth/index.ts +3 -0
  148. package/filters/index.ts +2 -0
  149. package/index.ts +14 -0
  150. package/log/config/log4js.json +55 -0
  151. package/model/RouteDefinition.ts +18 -0
  152. package/package.json +52 -0
  153. package/requiments/Glob.ts +9 -0
  154. package/requiments/ReflectUtil.ts +26 -0
  155. package/requiments/Utils.ts +57 -0
  156. package/tsconfig.json +18 -0
  157. package/validators/BooleanValidator.ts +0 -0
  158. package/validators/CompareValidator.ts +0 -0
  159. package/validators/DateValidator.ts +0 -0
  160. package/validators/EmailValidator.ts +0 -0
  161. package/validators/Validator.ts +27 -0
  162. package/web/IdentityInterface.ts +62 -0
  163. package/web/User.ts +96 -0
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.post = void 0;
4
+ /*
5
+ * Copyright (c) 2021. Chy Bilgisayar Bilisim
6
+ * Author: Cihan Ozturk
7
+ * E-mail: cihan@chy.com.tr
8
+ * Github:https://github.com/cihan53/
9
+ */
10
+ // @ts-ignore
11
+ require("reflect-metadata");
12
+ const post = (path) => {
13
+ // `target` equals our class, `propertyKey` equals our decorated method name
14
+ // @ts-ignore
15
+ return (target, propertyKey) => {
16
+ // In case this is the first route to be registered the `routes` metadata is likely to be undefined at this point.
17
+ // To prevent any further validation simply set it to an empty array here.
18
+ // @ts-ignore
19
+ if (!Reflect.hasMetadata('routes', target.constructor)) {
20
+ // @ts-ignore
21
+ Reflect.defineMetadata('routes', [], target.constructor);
22
+ }
23
+ // Get the routes stored so far, extend it by the new route and re-set the metadata.
24
+ // @ts-ignore
25
+ const routes = Reflect.getMetadata('routes', target.constructor);
26
+ routes.push({
27
+ id: "",
28
+ requestMethod: 'post',
29
+ path,
30
+ methodName: propertyKey
31
+ });
32
+ // @ts-ignore
33
+ Reflect.defineMetadata('routes', routes, target.constructor);
34
+ };
35
+ };
36
+ exports.post = post;
37
+ //# sourceMappingURL=post.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"post.js","sourceRoot":"","sources":["../../decorator/post.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACH,aAAa;AACb,4BAA2B;AAGpB,MAAM,IAAI,GAAG,CAAC,IAAY,EAAmB,EAAE;IAClD,4EAA4E;IAC5E,aAAa;IACb,OAAO,CAAC,MAAM,EAAE,WAAmB,EAAQ,EAAE;QACzC,kHAAkH;QAClH,0EAA0E;QAC1E,aAAa;QACb,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,EAAE;YACpD,aAAa;YACb,OAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,EAAE,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;SAC5D;QAED,oFAAoF;QACpF,aAAa;QACb,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,CAAC,WAAW,CAA2B,CAAC;QAE3F,MAAM,CAAC,IAAI,CAAC;YACR,EAAE,EAAC,EAAE;YACL,aAAa,EAAE,MAAM;YACrB,IAAI;YACJ,UAAU,EAAE,WAAW;SAC1B,CAAC,CAAC;QACH,aAAa;QACb,OAAO,CAAC,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;IACjE,CAAC,CAAC;AACN,CAAC,CAAC;AAzBW,QAAA,IAAI,QAyBf"}
@@ -0,0 +1,76 @@
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.AccessControl = 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 ForbiddenHttpException_1 = require("../base/ForbiddenHttpException");
24
+ const ActionFilter_1 = require("../base/ActionFilter");
25
+ const AccessRule_1 = require("./AccessRule");
26
+ const User_1 = require("../web/User");
27
+ const Utils_1 = __importDefault(require("../requiments/Utils"));
28
+ var _ = require('lodash');
29
+ class AccessControl extends ActionFilter_1.ActionFilter {
30
+ constructor() {
31
+ super(...arguments);
32
+ this.user = null;
33
+ }
34
+ init() {
35
+ var _a;
36
+ super.init();
37
+ if (this.user == undefined) {
38
+ this.user = (_a = Utils_1.default.cloneDeep(BaseChyz_1.default.getComponent("user"))) !== null && _a !== void 0 ? _a : new User_1.User();
39
+ }
40
+ this.rules.forEach((rule, index) => {
41
+ if (rule === Object(rule)) {
42
+ this.rules[index] = Utils_1.default.createObject(new AccessRule_1.AccessRule(), rule);
43
+ }
44
+ });
45
+ }
46
+ beforeAction(action, request) {
47
+ var _a, _b;
48
+ return __awaiter(this, void 0, void 0, function* () {
49
+ let allow;
50
+ // @ts-ignore
51
+ let user = (_a = request.user) !== null && _a !== void 0 ? _a : this.user;
52
+ // @ts-ignore
53
+ user.identity = (_b = request.identity) !== null && _b !== void 0 ? _b : null;
54
+ for (const rulesKey in this.rules) {
55
+ if ((allow = this.rules[rulesKey].allows(action, user, request))) {
56
+ return true;
57
+ }
58
+ else if (allow === false) {
59
+ this.denyAccess(user);
60
+ return false;
61
+ }
62
+ }
63
+ this.denyAccess(user);
64
+ return false;
65
+ });
66
+ }
67
+ denyAccess(user) {
68
+ if (user != undefined && user.getIsGuest()) {
69
+ user.loginRequired();
70
+ }
71
+ else
72
+ throw new ForbiddenHttpException_1.ForbiddenHttpException(BaseChyz_1.default.t('You are not allowed to perform this action.'));
73
+ }
74
+ }
75
+ exports.AccessControl = AccessControl;
76
+ //# sourceMappingURL=AccessControl.js.map
@@ -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,sCAAiC;AACjC,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,WAAI,EAAE,CAAC;SAC5E;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,IAAU;QACxB,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,IAAS,EAAE,OAAe;QAChD,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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=AuthInterface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthInterface.js","sourceRoot":"","sources":["../../../filters/auth/AuthInterface.ts"],"names":[],"mappings":""}
@@ -0,0 +1,71 @@
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
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
9
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
10
+ return new (P || (P = Promise))(function (resolve, reject) {
11
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
12
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
13
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
14
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
15
+ });
16
+ };
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.AuthMethod = void 0;
19
+ const ActionFilter_1 = require("../../base/ActionFilter");
20
+ const UnauthorizedHttpException_1 = require("../../base/UnauthorizedHttpException");
21
+ const User_1 = require("../../web/User");
22
+ class AuthMethod extends ActionFilter_1.ActionFilter {
23
+ constructor() {
24
+ super(...arguments);
25
+ this.optional = [];
26
+ }
27
+ beforeAction(action, request, response) {
28
+ var _a;
29
+ return __awaiter(this, void 0, void 0, function* () {
30
+ let identity = yield this.authenticate((_a = this.user) !== null && _a !== void 0 ? _a : new User_1.User(), request, response);
31
+ // @ts-ignore
32
+ request.identity = identity;
33
+ if (identity !== null) {
34
+ return true;
35
+ }
36
+ this.challenge(response);
37
+ this.handleFailure(response);
38
+ return false;
39
+ });
40
+ }
41
+ authenticate(user, request, response) {
42
+ }
43
+ // @ts-ignore
44
+ challenge(response) {
45
+ }
46
+ // @ts-ignore
47
+ handleFailure(response) {
48
+ throw new UnauthorizedHttpException_1.UnauthorizedHttpException('Your request was made with invalid credentials.');
49
+ }
50
+ getHeaderByKey(headers, findKey) {
51
+ let key = Object.keys(headers).find(key => key.toLowerCase() === findKey.toLowerCase());
52
+ if (key) {
53
+ return headers[key];
54
+ }
55
+ return null;
56
+ }
57
+ patternCheck(headerText, pattern) {
58
+ if (pattern) {
59
+ let matches = headerText.match(pattern);
60
+ if (matches && matches.length > 0) {
61
+ return matches;
62
+ }
63
+ else {
64
+ return null;
65
+ }
66
+ }
67
+ return null;
68
+ }
69
+ }
70
+ exports.AuthMethod = AuthMethod;
71
+ //# sourceMappingURL=AuthMethod.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AuthMethod.js","sourceRoot":"","sources":["../../../filters/auth/AuthMethod.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;AAEH,0DAAqD;AAErD,oFAA+E;AAC/E,yCAAoC;AAGpC,MAAsB,UAAW,SAAQ,2BAAY;IAArD;;QAkBW,aAAQ,GAAG,EAAE,CAAC;IAwDzB,CAAC;IAtDgB,YAAY,CAAC,MAAW,EAAE,OAAgB,EAAE,QAAkB;;;YACvE,IAAI,QAAQ,GAAG,MAAM,IAAI,CAAC,YAAY,CAClC,MAAA,IAAI,CAAC,IAAI,mCAAI,IAAI,WAAI,EAAE,EACvB,OAAO,EACP,QAAQ,CACX,CAAA;YAGD,aAAa;YACb,OAAO,CAAC,QAAQ,GAAG,QAAQ,CAAC;YAE5B,IAAI,QAAQ,KAAK,IAAI,EAAE;gBACnB,OAAO,IAAI,CAAC;aACf;YAED,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACzB,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YAC7B,OAAO,KAAK,CAAC;;KAChB;IAED,YAAY,CAAC,IAAU,EAAE,OAAgB,EAAE,QAAkB;IAE7D,CAAC;IAED,aAAa;IACb,SAAS,CAAC,QAAkB;IAC5B,CAAC;IAED,aAAa;IACb,aAAa,CAAC,QAAkB;QAC5B,MAAM,IAAI,qDAAyB,CAAC,iDAAiD,CAAC,CAAC;IAC3F,CAAC;IAED,cAAc,CAAC,OAAY,EAAE,OAAY;QACrC,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,OAAO,CAAC,WAAW,EAAE,CAAC,CAAA;QACvF,IAAI,GAAG,EAAE;YACL,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC;SACvB;QAED,OAAO,IAAI,CAAA;IACf,CAAC;IAED,YAAY,CAAC,UAAc,EAAE,OAAc;QACvC,IAAI,OAAO,EAAE;YACT,IAAI,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YACvC,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC/B,OAAO,OAAO,CAAC;aAClB;iBAAM;gBACH,OAAO,IAAI,CAAA;aACd;SACJ;QAED,OAAO,IAAI,CAAA;IACf,CAAC;CACJ;AA1ED,gCA0EC"}
@@ -0,0 +1,8 @@
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
+ //# sourceMappingURL=HttpBasicAuth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HttpBasicAuth.js","sourceRoot":"","sources":["../../../filters/auth/HttpBasicAuth.ts"],"names":[],"mappings":";AAAA;;;;;GAKG"}
@@ -0,0 +1,33 @@
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.HttpBearerAuth = void 0;
10
+ const HttpHeaderAuth_1 = require("./HttpHeaderAuth");
11
+ class HttpBearerAuth extends HttpHeaderAuth_1.HttpHeaderAuth {
12
+ constructor() {
13
+ super(...arguments);
14
+ /**
15
+ * {@inheritdoc}
16
+ */
17
+ this.header = 'Authorization';
18
+ // @ts-ignore
19
+ this.pattern = /^Bearer\s+(.*?)$/;
20
+ /**
21
+ * @var string the HTTP authentication realm
22
+ */
23
+ this.realm = 'api';
24
+ }
25
+ /**
26
+ * {@inheritdoc}
27
+ */
28
+ challenge(response) {
29
+ response.set('WWW-Authenticate', `Bearer realm="${this.realm}"`);
30
+ }
31
+ }
32
+ exports.HttpBearerAuth = HttpBearerAuth;
33
+ //# sourceMappingURL=HttpBearerAuth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HttpBearerAuth.js","sourceRoot":"","sources":["../../../filters/auth/HttpBearerAuth.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,qDAAgD;AAGhD,MAAa,cAAe,SAAQ,+BAAc;IAAlD;;QAEI;;WAEG;QACI,WAAM,GAAG,eAAe,CAAC;QAChC,aAAa;QACN,YAAO,GAAG,kBAAkB,CAAC;QACpC;;WAEG;QACI,UAAK,GAAG,KAAK,CAAC;IASzB,CAAC;IANG;;OAEG;IACI,SAAS,CAAC,QAAiB;QAC9B,QAAQ,CAAC,GAAG,CAAC,kBAAkB,EAAE,iBAAiB,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;IACrE,CAAC;CACJ;AApBD,wCAoBC"}
@@ -0,0 +1,61 @@
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
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
9
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
10
+ return new (P || (P = Promise))(function (resolve, reject) {
11
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
12
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
13
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
14
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
15
+ });
16
+ };
17
+ var __importDefault = (this && this.__importDefault) || function (mod) {
18
+ return (mod && mod.__esModule) ? mod : { "default": mod };
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ exports.HttpHeaderAuth = void 0;
22
+ const AuthMethod_1 = require("./AuthMethod");
23
+ const Utils_1 = __importDefault(require("../../requiments/Utils"));
24
+ class HttpHeaderAuth extends AuthMethod_1.AuthMethod {
25
+ constructor() {
26
+ super(...arguments);
27
+ /**
28
+ * @var string the HTTP header name
29
+ */
30
+ this.header = 'X-Api-Key';
31
+ }
32
+ authenticate(user, request, response) {
33
+ return __awaiter(this, void 0, void 0, function* () {
34
+ let key = Object.keys(request.headers).find(key => key.toLowerCase() === this.header.toLowerCase());
35
+ if (key) {
36
+ let authHeader = request.headers[key];
37
+ if (!Utils_1.default.isEmpty(authHeader)) {
38
+ if (this.pattern) {
39
+ //preg_match
40
+ let matches = authHeader.match(this.pattern);
41
+ if (matches && matches.length > 0) {
42
+ authHeader = matches[1];
43
+ }
44
+ else {
45
+ return null;
46
+ }
47
+ }
48
+ let identity = yield user.loginByAccessToken(authHeader, "HttpHeaderAuth");
49
+ if (identity === null) {
50
+ this.challenge(response);
51
+ this.handleFailure(response);
52
+ }
53
+ return identity;
54
+ }
55
+ }
56
+ return null;
57
+ });
58
+ }
59
+ }
60
+ exports.HttpHeaderAuth = HttpHeaderAuth;
61
+ //# sourceMappingURL=HttpHeaderAuth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HttpHeaderAuth.js","sourceRoot":"","sources":["../../../filters/auth/HttpHeaderAuth.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;;;;AAEH,6CAAwC;AAExC,mEAA2C;AAG3C,MAAa,cAAe,SAAQ,uBAAU;IAA9C;;QACI;;WAEG;QACI,WAAM,GAAG,WAAW,CAAC;IAoChC,CAAC;IA1BS,YAAY,CAAC,IAAU,EAAE,OAAe,EAAE,QAAiB;;YAC7D,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAA;YACnG,IAAI,GAAG,EAAE;gBACL,IAAI,UAAU,GAAO,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;gBAC1C,IAAI,CAAC,eAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;oBAC5B,IAAI,IAAI,CAAC,OAAO,EAAE;wBACd,YAAY;wBACZ,IAAI,OAAO,GAAG,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;wBAC5C,IAAI,OAAO,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE;4BAC/B,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;yBAC3B;6BAAM;4BACH,OAAO,IAAI,CAAC;yBACf;qBACJ;oBAED,IAAI,QAAQ,GAAG,MAAM,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;oBAC3E,IAAI,QAAQ,KAAK,IAAI,EAAE;wBACnB,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;wBACzB,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;qBAChC;oBAED,OAAO,QAAQ,CAAC;iBACnB;aACJ;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;CACJ;AAxCD,wCAwCC"}
@@ -0,0 +1,82 @@
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.JwtHttpBearerAuth = 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 JwtHttpBearerAuth 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
+ }
36
+ /**
37
+ * @throws InvalidConfigException
38
+ */
39
+ init() {
40
+ var _a;
41
+ super.init();
42
+ if (!this.pattern) {
43
+ throw new InvalidConfigException_1.InvalidConfigException('You must provide pattern to use to extract the HTTP authentication value!');
44
+ }
45
+ this.user = (_a = BaseChyz_1.default.getComponent("user")) !== null && _a !== void 0 ? _a : null;
46
+ }
47
+ authenticate(user, request, response) {
48
+ return __awaiter(this, void 0, void 0, function* () {
49
+ let autHeader = this.getHeaderByKey(request.headers, this.header);
50
+ if (autHeader == null || (autHeader = this.patternCheck(autHeader, this.pattern)) == null) {
51
+ return null;
52
+ }
53
+ let identity = null;
54
+ let token = null;
55
+ token = JsonWebToken.decode(autHeader[1], { complete: true });
56
+ if (!token) {
57
+ BaseChyz_1.default.warning("Your request was made with invalid or expired JSON Web Token.");
58
+ this.fail(response);
59
+ }
60
+ if (token !== null) {
61
+ if (this.auth != null) {
62
+ identity = yield this.auth(autHeader[1]);
63
+ }
64
+ else {
65
+ identity = yield user.loginByAccessToken(autHeader[1], "JwtHttpBearerAuth");
66
+ }
67
+ }
68
+ if (identity == null)
69
+ this.fail(response);
70
+ return identity;
71
+ });
72
+ }
73
+ /**
74
+ * @throws UnauthorizedHttpException
75
+ */
76
+ fail(response) {
77
+ this.challenge(response);
78
+ this.handleFailure(response);
79
+ }
80
+ }
81
+ exports.JwtHttpBearerAuth = JwtHttpBearerAuth;
82
+ //# sourceMappingURL=JwtHttpBearerAuth.js.map
@@ -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;IA2D3B,CAAC;IAzDG;;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,IAAS,EAAE,OAAe,EAAE,QAAiB;;YAGnE,IAAI,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,CAAA;YAEjE,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;YAGD,IAAI,QAAQ,GAAG,IAAI,CAAC;YACpB,IAAI,KAAK,GAAG,IAAI,CAAC;YAGjB,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;AAjED,8CAiEC"}
@@ -0,0 +1,16 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./JwtHttpBearerAuth"), exports);
14
+ __exportStar(require("./HttpBearerAuth"), exports);
15
+ __exportStar(require("./HttpHeaderAuth"), exports);
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../filters/auth/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,sDAAmC;AACnC,mDAAgC;AAChC,mDAAgC"}
@@ -0,0 +1,15 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./AccessControl"), exports);
14
+ __exportStar(require("./AccessRule"), exports);
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../filters/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA+B;AAC/B,+CAA4B"}
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.User = 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 User_1 = require("./web/User");
23
+ Object.defineProperty(exports, "User", { enumerable: true, get: function () { return User_1.User; } });
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,mCAAgC;AAAxB,4FAAA,IAAI,OAAA;AAEZ,0DAAkC;AAC1B,mBADD,kBAAQ,CACC;AAEhB,MAAM,IAAI,GAAG,IAAI,kBAAQ,EAAE,CAAC;AAC5B,kBAAe,IAAI,CAAC"}
@@ -0,0 +1,55 @@
1
+ {
2
+ "appenders": {
3
+ "access": {
4
+ "type": "dateFile",
5
+ "filename": "log/access.log",
6
+ "pattern": "-yyyy-MM-dd",
7
+ "category": "http",
8
+ "layout": {
9
+ "type": "pattern",
10
+ "pattern": "[%d{yyyy-MM-ddThh.mm.ss.SSS}] [%p] %c [%l] [%f] - %m"
11
+ }
12
+ },
13
+ "app": {
14
+ "type": "file",
15
+ "filename": "log/app.log",
16
+ "maxLogSize": 10485760,
17
+ "numBackups": 3,
18
+ "layout": {
19
+ "type": "pattern",
20
+ "pattern": "[%d{yyyy-MM-ddThh.mm.ss.SSS}] [%p] %c [%l] [%f] - %m"
21
+ }
22
+ },
23
+ "errorFile": {
24
+ "type": "file",
25
+ "filename": "log/errors.log",
26
+ "layout": {
27
+ "type": "pattern",
28
+ "pattern": "[%d{yyyy-MM-ddThh.mm.ss.SSS}] [%p] %c [%l] [%f] - %m"
29
+ }
30
+ },
31
+ "errors": {
32
+ "type": "logLevelFilter",
33
+ "level": "ERROR",
34
+ "appender": "errorFile",
35
+ "layout": {
36
+ "type": "pattern",
37
+ "pattern": "[%d{yyyy-MM-ddThh.mm.ss.SSS}] [%p] %c [%l] [%f] - %m"
38
+ }
39
+ },
40
+ "console": {
41
+ "type": "stdout"
42
+ }
43
+ },
44
+ "categories": {
45
+ "default": {
46
+ "appenders": ["console","app" ,"errors" ],
47
+ "level": "ALL",
48
+ "enableCallStack": true
49
+ },
50
+ "http": {
51
+ "level": "INFO",
52
+ "appenders": [ "access" ]
53
+ }
54
+ }
55
+ }
@@ -0,0 +1,9 @@
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
+ //# sourceMappingURL=RouteDefinition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RouteDefinition.js","sourceRoot":"","sources":["../../model/RouteDefinition.ts"],"names":[],"mappings":";AAAA;;;;;GAKG"}