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,257 @@
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
+ require("reflect-metadata");
16
+ const Utils_1 = __importDefault(require("./requiments/Utils"));
17
+ const express = require("express");
18
+ const log4js = require("log4js");
19
+ const fs = require('fs');
20
+ var bodyParser = require('body-parser');
21
+ var methodOverride = require('method-override');
22
+ class BaseChyz {
23
+ constructor() {
24
+ var _a;
25
+ this._port = 3001;
26
+ this._logConfig = (_a = require('./log/config/log4js.json')) !== null && _a !== void 0 ? _a : {};
27
+ this._controllerpath = "Controllers";
28
+ }
29
+ get logConfig() {
30
+ return this._logConfig;
31
+ }
32
+ set logConfig(value) {
33
+ this._logConfig = value;
34
+ }
35
+ get controllerpath() {
36
+ return this._controllerpath;
37
+ }
38
+ set controllerpath(value) {
39
+ this._controllerpath = value;
40
+ }
41
+ init() {
42
+ this.logProvider().level = log4js.levels.ALL;
43
+ this.logProvider().configure(this._logConfig);
44
+ /**
45
+ * set request id
46
+ */
47
+ Object.defineProperty(BaseChyz.express.request, 'reqId', {
48
+ configurable: true,
49
+ enumerable: true,
50
+ writable: true
51
+ });
52
+ Object.defineProperty(BaseChyz.express.request, 'user', {
53
+ configurable: true,
54
+ enumerable: true,
55
+ writable: true
56
+ });
57
+ Object.defineProperty(BaseChyz.express.request, 'identity', {
58
+ configurable: true,
59
+ enumerable: true,
60
+ writable: true
61
+ });
62
+ /**
63
+ * server port setting
64
+ */
65
+ if (this.config.hasOwnProperty("port"))
66
+ this.port = this.config.port;
67
+ /**
68
+ * controller path
69
+ */
70
+ if (this.config.controllerpath) {
71
+ this.controllerpath = this.config.controllerpath;
72
+ }
73
+ /**
74
+ * Express Server
75
+ */
76
+ this.middleware();
77
+ /**
78
+ * Load Controller
79
+ */
80
+ this.loadController();
81
+ }
82
+ /**
83
+ * Listen port number
84
+ * Server port number get
85
+ */
86
+ get port() {
87
+ return this._port;
88
+ }
89
+ /**
90
+ * Listen port number
91
+ * Server port number setting
92
+ * @param value
93
+ */
94
+ set port(value) {
95
+ this._port = value;
96
+ }
97
+ app(config = {}) {
98
+ var _a;
99
+ /**
100
+ * Config set
101
+ */
102
+ this.config = config;
103
+ this.init();
104
+ let components = Utils_1.default.findKeyValue(config, "components");
105
+ if (components) {
106
+ for (const componentsKey in components) {
107
+ let comp = components[componentsKey];
108
+ BaseChyz.debug("Create Component ", componentsKey);
109
+ BaseChyz.components[componentsKey] = Utils_1.default.createObject(new comp.class, comp);
110
+ (_a = BaseChyz.components[componentsKey]) === null || _a === void 0 ? void 0 : _a.init();
111
+ }
112
+ }
113
+ return this;
114
+ }
115
+ logProvider() {
116
+ return log4js;
117
+ }
118
+ getLogger() {
119
+ return this.logProvider().getLogger(this.constructor.name);
120
+ }
121
+ static logs(...args) {
122
+ return log4js.getLogger(this.name);
123
+ }
124
+ static trace(...args) {
125
+ BaseChyz.logs().fatal(...arguments);
126
+ }
127
+ static debug(...args) {
128
+ BaseChyz.logs().debug(...arguments);
129
+ }
130
+ static info(...args) {
131
+ BaseChyz.logs().info(...arguments);
132
+ }
133
+ static warn(...args) {
134
+ BaseChyz.logs().warn(...arguments);
135
+ }
136
+ static error(...args) {
137
+ BaseChyz.logs().error(...arguments);
138
+ }
139
+ static fatal(...args) {
140
+ BaseChyz.logs().fatal(...arguments);
141
+ }
142
+ static warning(...args) {
143
+ BaseChyz.logs().warn(...arguments);
144
+ }
145
+ static t(text) {
146
+ return text;
147
+ }
148
+ errorLogger(error, req, res, next) {
149
+ BaseChyz.error(error);
150
+ next(error); // forward to next middleware
151
+ }
152
+ errorResponder(error, req, res, next) {
153
+ if (error.type == 'redirect')
154
+ res.redirect('/error');
155
+ else if (error.type == 'time-out') // arbitrary condition check
156
+ res.status(408).json(error);
157
+ else
158
+ next(error); // forwarding exceptional case to fail-safe middleware
159
+ }
160
+ errorHandler(err, req, res, next) {
161
+ if (res.headersSent) {
162
+ return next(err);
163
+ }
164
+ res.status(500);
165
+ res.json('error', { error: err });
166
+ }
167
+ static getComponent(key) {
168
+ var _a;
169
+ return (_a = BaseChyz.components[key]) !== null && _a !== void 0 ? _a : null;
170
+ }
171
+ /**
172
+ * load contoller
173
+ */
174
+ loadController() {
175
+ return __awaiter(this, void 0, void 0, function* () {
176
+ let articlesEndpoints = [];
177
+ fs.readdirSync(`${this._controllerpath}/`).forEach((file) => {
178
+ let controller = require(`${this._controllerpath}/${file}`);
179
+ // This is our instantiated class
180
+ const instance = new controller();
181
+ BaseChyz.controllers.push(instance);
182
+ // The prefix saved to our controller
183
+ // @ts-ignore
184
+ const prefix = Reflect.getMetadata('prefix', controller);
185
+ // Our `routes` array containing all our routes for this controller
186
+ // @ts-ignore
187
+ const routes = Reflect.getMetadata('routes', controller);
188
+ BaseChyz.logs().debug("Controller load ", controller.name, `(${prefix})`);
189
+ if (routes) {
190
+ routes.forEach(route => {
191
+ let actionId = route.path == "/" || route.path == "" ? instance.defaultAction : route.path;
192
+ route.id = actionId;
193
+ BaseChyz.logs().debug("Controller route Path", prefix + (route.path.startsWith("/") ? route.path : `/${route.path}`));
194
+ BaseChyz.express[route.requestMethod](prefix + (route.path.startsWith("/") ? route.path : `/${route.path}`), (req, res, next) => __awaiter(this, void 0, void 0, function* () {
195
+ try {
196
+ BaseChyz.debug(`Call Request id ${instance.id}`);
197
+ yield instance.beforeAction(route, req, res);
198
+ next();
199
+ }
200
+ catch (e) {
201
+ BaseChyz.error(e);
202
+ res.status(e.statusCode || 500);
203
+ res.json({ error: { code: e.statusCode || 500, name: e.name, message: e.message } });
204
+ // next(e)
205
+ }
206
+ }), (req, res, next) => __awaiter(this, void 0, void 0, function* () {
207
+ try {
208
+ // @ts-ignore
209
+ BaseChyz.debug("Request ID ", req.reqId);
210
+ // @ts-ignore
211
+ yield instance[route.methodName](req, res, next);
212
+ instance.afterAction(route, req, res);
213
+ }
214
+ catch (e) {
215
+ BaseChyz.error(e);
216
+ // next(e)
217
+ res.status(e.statusCode);
218
+ res.json({ error: { code: e.statusCode, name: e.name, message: e.message } });
219
+ }
220
+ }));
221
+ });
222
+ }
223
+ });
224
+ });
225
+ }
226
+ middleware() {
227
+ BaseChyz.express.use(bodyParser.json());
228
+ BaseChyz.express.use(bodyParser.urlencoded({ extended: true })); // support encoded bodies
229
+ BaseChyz.express.use(methodOverride());
230
+ BaseChyz.express.use(this.errorResponder);
231
+ BaseChyz.express.use(this.errorHandler);
232
+ // CORS
233
+ BaseChyz.express.use(function (req, res, next) {
234
+ // @ts-ignore
235
+ req.reqId = Utils_1.default.uniqueId("chyzzzz_");
236
+ res.setHeader('Content-Type', 'application/json');
237
+ res.setHeader("Access-Control-Allow-Origin", "*");
238
+ res.setHeader("Access-Control-Allow-Credentials", "true");
239
+ res.setHeader("Access-Control-Allow-Methods", "GET,HEAD,OPTIONS,POST,PUT");
240
+ res.setHeader("Access-Control-Allow-Headers", "Access-Control-Allow-Origin,Access-Control-Allow-Headers, Origin,Accept, X-Requested-With, Content-Type, Access-Control-Request-Method, Access-Control-Request-Headers,Authorization");
241
+ next();
242
+ });
243
+ }
244
+ Start() {
245
+ BaseChyz.info("Express Server Starting");
246
+ BaseChyz.express.listen(this._port, () => {
247
+ BaseChyz.info("Express Server Start ");
248
+ BaseChyz.info(`Liten Port ${this._port}`);
249
+ });
250
+ return this;
251
+ }
252
+ }
253
+ exports.default = BaseChyz;
254
+ BaseChyz.express = express();
255
+ BaseChyz.controllers = [];
256
+ BaseChyz.components = {};
257
+ //# sourceMappingURL=BaseChyz.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseChyz.js","sourceRoot":"","sources":["../BaseChyz.ts"],"names":[],"mappings":"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"}
package/dist/Chyz.js ADDED
@@ -0,0 +1,15 @@
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 __importDefault = (this && this.__importDefault) || function (mod) {
9
+ return (mod && mod.__esModule) ? mod : { "default": mod };
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const BaseChyz_1 = __importDefault(require("./BaseChyz"));
13
+ const Chyz = new BaseChyz_1.default();
14
+ exports.default = Chyz;
15
+ //# sourceMappingURL=Chyz.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Chyz.js","sourceRoot":"","sources":["../Chyz.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;AAEH,0DAAkC;AAClC,MAAM,IAAI,GAAG,IAAI,kBAAQ,EAAE,CAAC;AAE5B,kBAAe,IAAI,CAAC"}
@@ -0,0 +1,75 @@
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.ActionFilter = void 0;
16
+ const Utils_1 = __importDefault(require("../requiments/Utils"));
17
+ const Behavior_1 = require("./Behavior");
18
+ class ActionFilter extends Behavior_1.Behavior {
19
+ constructor() {
20
+ super(...arguments);
21
+ /**
22
+ * @var array list of action IDs that this filter should not apply to.
23
+ * @see only
24
+ */
25
+ this.except = [];
26
+ }
27
+ init() {
28
+ }
29
+ beforeFilter(route, req, res) {
30
+ return __awaiter(this, void 0, void 0, function* () {
31
+ if (!this.isActive(route.id)) {
32
+ return;
33
+ }
34
+ yield this.beforeAction(route, req, res);
35
+ });
36
+ }
37
+ isActive(action) {
38
+ let id = action.id;
39
+ let onlyMatch = false;
40
+ let exceptMatch = false;
41
+ if (Utils_1.default.isEmpty(this.only)) {
42
+ onlyMatch = true;
43
+ }
44
+ else {
45
+ onlyMatch = false;
46
+ for (const onlyKey of this.only) {
47
+ if (Utils_1.default.matchWildcard(action, onlyKey)) {
48
+ onlyMatch = true;
49
+ break;
50
+ }
51
+ }
52
+ }
53
+ for (const exceptKey in this.except) {
54
+ let pattern = this.except[exceptKey];
55
+ let match = id.match(pattern);
56
+ if (match.length > 0) {
57
+ exceptMatch = true;
58
+ }
59
+ }
60
+ return !exceptMatch && onlyMatch;
61
+ }
62
+ /**
63
+ * This method is invoked right before an action is to be executed (after all possible filters.)
64
+ * You may override this method to do last-minute preparation for the action.
65
+ * @param Action $action the action to be executed.
66
+ * @return bool whether the action should continue to be executed.
67
+ */
68
+ beforeAction(route, req, res) {
69
+ return __awaiter(this, void 0, void 0, function* () {
70
+ return true;
71
+ });
72
+ }
73
+ }
74
+ exports.ActionFilter = ActionFilter;
75
+ //# sourceMappingURL=ActionFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ActionFilter.js","sourceRoot":"","sources":["../../base/ActionFilter.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAQA,gEAAwC;AACxC,yCAAoC;AAEpC,MAAa,YAAa,SAAQ,mBAAQ;IAA1C;;QAII;;;WAGG;QACI,WAAM,GAAG,EAAE,CAAC;IAmDvB,CAAC;IAhDU,IAAI;IAEX,CAAC;IAEY,YAAY,CAAC,KAAU,EAAE,GAAY,EAAE,GAAa;;YAC7D,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE;gBAC1B,OAAO;aACV;YAED,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;QAC5C,CAAC;KAAA;IAES,QAAQ,CAAC,MAAW;QAC1B,IAAI,EAAE,GAAG,MAAM,CAAC,EAAE,CAAC;QACnB,IAAI,SAAS,GAAY,KAAK,CAAC;QAC/B,IAAI,WAAW,GAAY,KAAK,CAAC;QACjC,IAAI,eAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;YAC1B,SAAS,GAAG,IAAI,CAAC;SACpB;aAAM;YACH,SAAS,GAAG,KAAK,CAAC;YAClB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,IAAI,EAAE;gBAC7B,IAAI,eAAK,CAAC,aAAa,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE;oBACtC,SAAS,GAAG,IAAI,CAAC;oBACjB,MAAM;iBACT;aACJ;SACJ;QAED,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,MAAM,EAAE;YACjC,IAAI,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;YACrC,IAAI,KAAK,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;YAC7B,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;gBAClB,WAAW,GAAG,IAAI,CAAC;aACtB;SACJ;QAED,OAAO,CAAC,WAAW,IAAI,SAAS,CAAC;IACrC,CAAC;IAED;;;;;OAKG;IACU,YAAY,CAAC,KAAU,EAAE,GAAY,EAAE,GAAa;;YAC7D,OAAO,IAAI,CAAC;QAChB,CAAC;KAAA;CACJ;AA3DD,oCA2DC"}
@@ -0,0 +1,26 @@
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.BaseError = void 0;
10
+ class BaseError extends Error {
11
+ constructor(message) {
12
+ super(message);
13
+ this.message = message;
14
+ this.name = this.constructor.name; // good practice
15
+ this.statusCode = 500; // error code for responding to client
16
+ Error.captureStackTrace(this);
17
+ }
18
+ toString() {
19
+ return `${this.name}[${this.statusCode}] ${this.message}`;
20
+ }
21
+ toJSON() {
22
+ return { code: this === null || this === void 0 ? void 0 : this.statusCode, name: this.name, message: this.message };
23
+ }
24
+ }
25
+ exports.BaseError = BaseError;
26
+ //# sourceMappingURL=BaseError.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseError.js","sourceRoot":"","sources":["../../base/BaseError.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAEH,MAAa,SAAU,SAAQ,KAAK;IAGhC,YAAY,OAAe;QACvB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,OAAO,GAAC,OAAO,CAAC;QACrB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAA,CAAC,gBAAgB;QAClD,IAAI,CAAC,UAAU,GAAG,GAAG,CAAA,CAAC,sCAAsC;QAC5D,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAA;IACjC,CAAC;IAED,QAAQ;QACJ,OAAO,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,OAAO,EAAE,CAAA;IAC7D,CAAC;IACD,MAAM;QACF,OAAO,EAAC,IAAI,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAC,CAAA;IAC3E,CAAC;CACJ;AAjBD,8BAiBC"}
@@ -0,0 +1,20 @@
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 __importDefault = (this && this.__importDefault) || function (mod) {
9
+ return (mod && mod.__esModule) ? mod : { "default": mod };
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.BaseObject = void 0;
13
+ const BaseChyz_1 = __importDefault(require("../BaseChyz"));
14
+ class BaseObject {
15
+ init() {
16
+ BaseChyz_1.default.debug("BaseObject init.....");
17
+ }
18
+ }
19
+ exports.BaseObject = BaseObject;
20
+ //# sourceMappingURL=BaseObject.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseObject.js","sourceRoot":"","sources":["../../base/BaseObject.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;AAGH,2DAAmC;AAEnC,MAAa,UAAU;IAGZ,IAAI;QAEP,kBAAQ,CAAC,KAAK,CAAC,sBAAsB,CAAE,CAAA;IAE3C,CAAC;CACJ;AARD,gCAQC"}
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Behavior = void 0;
4
+ const BaseObject_1 = require("./BaseObject");
5
+ class Behavior extends BaseObject_1.BaseObject {
6
+ }
7
+ exports.Behavior = Behavior;
8
+ //# sourceMappingURL=Behavior.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Behavior.js","sourceRoot":"","sources":["../../base/Behavior.ts"],"names":[],"mappings":";;;AAAA,6CAAwC;AAExC,MAAa,QAAS,SAAQ,uBAAU;CAGvC;AAHD,4BAGC"}
@@ -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 __importDefault = (this && this.__importDefault) || function (mod) {
9
+ return (mod && mod.__esModule) ? mod : { "default": mod };
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.Component = void 0;
13
+ const BaseObject_1 = require("./BaseObject");
14
+ const Utils_1 = __importDefault(require("../requiments/Utils"));
15
+ class Component extends BaseObject_1.BaseObject {
16
+ constructor() {
17
+ super(...arguments);
18
+ /**
19
+ * @var array the attached event handlers (event name => handlers)
20
+ */
21
+ this._events = [];
22
+ /**
23
+ * @var Behavior[]|null the attached behaviors (behavior name => behavior). This is `null` when not initialized.
24
+ */
25
+ this._behaviors = [];
26
+ }
27
+ /**
28
+ * Returns a list of behaviors that this component should behave as.
29
+ */
30
+ behaviors() {
31
+ return [];
32
+ }
33
+ get getBehaviors() {
34
+ return this._behaviors;
35
+ }
36
+ /**
37
+ * Makes sure that the behaviors declared in [[behaviors()]] are attached to this component.
38
+ */
39
+ ensureBehaviors() {
40
+ if (this._behaviors.length == 0) {
41
+ this._behaviors = [];
42
+ if (this.behaviors().length > 0) {
43
+ this.behaviors().forEach(behavior => {
44
+ Object.keys(behavior).forEach((name) => {
45
+ this.attachBehaviorInternal(name, behavior);
46
+ });
47
+ });
48
+ }
49
+ }
50
+ }
51
+ attachBehaviorInternal(name, behavior) {
52
+ if (!this._behaviors.hasOwnProperty(name)) {
53
+ let beh = Utils_1.default.createObject(new behavior[name].class, behavior[name]);
54
+ beh.init();
55
+ this._behaviors[name] = beh;
56
+ }
57
+ return behavior;
58
+ }
59
+ }
60
+ exports.Component = Component;
61
+ //# sourceMappingURL=Component.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Component.js","sourceRoot":"","sources":["../../base/Component.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;AAEH,6CAAwC;AAExC,gEAAwC;AAExC,MAAa,SAAU,SAAQ,uBAAU;IAAzC;;QAEI;;WAEG;QACK,YAAO,GAAG,EAAE,CAAC;QAGrB;;WAEG;QAEK,eAAU,GAAwB,EAAE,CAAC;IA0CjD,CAAC;IAvCG;;OAEG;IACI,SAAS;QACZ,OAAO,EAAE,CAAC;IACd,CAAC;IAGD,IAAI,YAAY;QACZ,OAAO,IAAI,CAAC,UAAU,CAAC;IAC3B,CAAC;IAED;;OAEG;IACI,eAAe;QAClB,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,IAAI,CAAC,EAAE;YAC7B,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;YACrB,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC7B,IAAI,CAAC,SAAS,EAAE,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;oBAChC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,CAAC,IAAY,EAAE,EAAE;wBAC3C,IAAI,CAAC,sBAAsB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAA;oBAC/C,CAAC,CAAC,CAAC;gBACP,CAAC,CAAC,CAAA;aACL;SAEJ;IACL,CAAC;IAGO,sBAAsB,CAAC,IAAS,EAAE,QAAa;QACnD,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE;YACvC,IAAI,GAAG,GAAG,eAAK,CAAC,YAAY,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAA;YACtE,GAAG,CAAC,IAAI,EAAE,CAAA;YACV,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC;SAC/B;QACD,OAAO,QAAQ,CAAC;IACpB,CAAC;CAEJ;AAtDD,8BAsDC"}
@@ -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=Configurable.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Configurable.js","sourceRoot":"","sources":["../../base/Configurable.ts"],"names":[],"mappings":";AAAA;;;;;GAKG"}
@@ -0,0 +1,75 @@
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.Controller = void 0;
19
+ const Component_1 = require("./Component");
20
+ class Controller extends Component_1.Component {
21
+ constructor(config) {
22
+ super();
23
+ this.defaultAction = 'index';
24
+ this.id = this.constructor.name.replace("Controller", "").toLowerCase();
25
+ }
26
+ init() {
27
+ super.init();
28
+ }
29
+ /**
30
+ * This method is invoked right before an action is executed.
31
+ * @param $action
32
+ */
33
+ beforeAction(route, req, res) {
34
+ return __awaiter(this, void 0, void 0, function* () {
35
+ if (route.id == "" || route.id == "/")
36
+ this.id = this.defaultAction;
37
+ this.ensureBehaviors();
38
+ for (const name of Object.keys(this.getBehaviors)) {
39
+ yield this.getBehaviors[name].beforeFilter(route, req, res);
40
+ }
41
+ });
42
+ }
43
+ /**
44
+ * This method is invoked right after an action is executed.
45
+ * @param action
46
+ */
47
+ afterAction(action, req, res) {
48
+ }
49
+ /**
50
+ *
51
+
52
+ Checks the privilege of the current user.
53
+
54
+ This method should be overridden to check whether the current user has the privilege to run the specified action against the specified data model. If the user does not have access, a yii\web\ForbiddenHttpException should be thrown.
55
+
56
+ */
57
+ checkAccess(action, model = null, params = []) {
58
+ }
59
+ /**
60
+ * Send data formatted as JSON.
61
+
62
+ This method is a shortcut for sending data formatted as JSON. It will return the response application component after configuring the format and setting the data that should be formatted. A common usage will b
63
+ */
64
+ asJson(data) {
65
+ }
66
+ /**
67
+ * Send data formatted as XML.
68
+
69
+ This method is a shortcut for sending data formatted as XML. It will return the response application component after configuring the format and setting the data that should be formatted. A common usage will be:
70
+ */
71
+ asXml(data) {
72
+ }
73
+ }
74
+ exports.Controller = Controller;
75
+ //# sourceMappingURL=Controller.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Controller.js","sourceRoot":"","sources":["../../base/Controller.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;;;;;;;;;;AAEH,2CAAsC;AAItC,MAAa,UAAW,SAAQ,qBAAS;IASrC,YAAY,MAAW;QACnB,KAAK,EAAE,CAAC;QAHL,kBAAa,GAAG,OAAO,CAAC;QAI3B,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;IAC5E,CAAC;IAEM,IAAI;QACP,KAAK,CAAC,IAAI,EAAE,CAAC;IACjB,CAAC;IAGD;;;OAGG;IACU,YAAY,CAAC,KAAsB,EAAE,GAAY,EAAE,GAAa;;YACzE,IAAI,KAAK,CAAC,EAAE,IAAI,EAAE,IAAI,KAAK,CAAC,EAAE,IAAI,GAAG;gBACjC,IAAI,CAAC,EAAE,GAAG,IAAI,CAAC,aAAa,CAAA;YAEhC,IAAI,CAAC,eAAe,EAAE,CAAA;YACtB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE;gBAC/C,MAAM,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;aAC/D;QAEL,CAAC;KAAA;IAED;;;OAGG;IACI,WAAW,CAAC,MAAW,EAAE,GAAY,EAAE,GAAa;IAE3D,CAAC;IAED;;;;;;;OAOG;IACI,WAAW,CAAC,MAAW,EAAE,KAAK,GAAG,IAAI,EAAE,SAAc,EAAE;IAE9D,CAAC;IAED;;;;OAIG;IACH,MAAM,CAAC,IAAS;IAEhB,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,IAAS;IAEf,CAAC;CAEJ;AAxED,gCAwEC"}
@@ -0,0 +1,18 @@
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.DataErrorDbException = void 0;
10
+ const BaseError_1 = require("./BaseError");
11
+ class DataErrorDbException extends BaseError_1.BaseError {
12
+ constructor(message) {
13
+ super(message);
14
+ this.message = message;
15
+ }
16
+ }
17
+ exports.DataErrorDbException = DataErrorDbException;
18
+ //# sourceMappingURL=DataErrorDbException.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DataErrorDbException.js","sourceRoot":"","sources":["../../base/DataErrorDbException.ts"],"names":[],"mappings":";AAAA;;;;;GAKG;;;AAIH,2CAAsC;AAEtC,MAAa,oBAAqB,SAAQ,qBAAS;IAC/C,YAAqB,OAAe;QAChC,KAAK,CAAC,OAAO,CAAC,CAAC;QADE,YAAO,GAAP,OAAO,CAAQ;IAEpC,CAAC;CACJ;AAJD,oDAIC"}