wapplr 1.0.43 → 1.0.44

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.
@@ -1,446 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault")["default"];
4
-
5
- Object.defineProperty(exports, "__esModule", {
6
- value: true
7
- });
8
- exports.createDefaultRouter = createDefaultRouter;
9
- exports["default"] = createRouter;
10
-
11
- var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
12
-
13
- var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
14
-
15
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
16
-
17
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
18
-
19
- var _utils = require("./utils");
20
-
21
- var _excluded = ["action"],
22
- _excluded2 = ["wapp"];
23
-
24
- function createDefaultRouter() {
25
- var p = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
26
- var wapp = p.wapp,
27
- routes = p.routes;
28
-
29
- function match() {
30
- var p = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
31
- var path = p.path;
32
- var routes = router.routes;
33
- var route = null;
34
- var params = {};
35
- routes.forEach(function (r) {
36
- if (path && r.path) {
37
- var _match = false;
38
- var thisParams = {};
39
-
40
- try {
41
- var rPath = r.path.slice(-1) === "/" ? r.path.slice(0, -1) : r.path;
42
- var sPath = path.slice(-1) === "/" ? path.slice(0, -1) : path;
43
- var rpa = rPath.split("/");
44
- var pa = sPath.split("/");
45
- var allPartIsMatch = true;
46
- var wasAllowChar = false;
47
- rpa.forEach(function (rpas, i) {
48
- var param = rpas && rpas.slice(0, 1) === ":";
49
- var allow = rpas === "*";
50
-
51
- if (allow) {
52
- wasAllowChar = true;
53
- }
54
-
55
- if (typeof pa[i] == "string") {
56
- if (pa[i] === rpas || param || allow) {} else {
57
- allPartIsMatch = false;
58
- }
59
-
60
- if (param) {
61
- thisParams[rpas.slice(1)] = pa[i];
62
- }
63
- }
64
- });
65
-
66
- if (pa.length > rpa.length && !wasAllowChar) {
67
- allPartIsMatch = false;
68
- }
69
-
70
- if (allPartIsMatch) {
71
- _match = true;
72
- }
73
- } catch (e) {}
74
-
75
- if (_match && !route) {
76
- params = thisParams;
77
- route = r;
78
- }
79
- }
80
- });
81
- return route ? (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, route), {}, {
82
- params: params
83
- }) : route;
84
- }
85
-
86
- function getRoute() {
87
- var p = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
88
- var path = p.path;
89
- var r = {
90
- requestPath: null,
91
- status: null
92
- };
93
-
94
- if (path) {
95
- var routeByPath = router.match({
96
- path: path
97
- });
98
-
99
- if (routeByPath) {
100
- r = (0, _objectSpread2["default"])({
101
- requestPath: path,
102
- status: 200
103
- }, routeByPath);
104
- }
105
- }
106
-
107
- if (!r.status) {
108
- var notFoundPath = router.match({
109
- path: "/404"
110
- });
111
- var homePath = router.match({
112
- path: "/home"
113
- });
114
- homePath = homePath || router.match({
115
- path: "/"
116
- });
117
- var firstPath = router.routes[0] && router.routes[0].path ? router.match({
118
- path: router.routes[0].path
119
- }) : null;
120
- var foundPath = notFoundPath ? notFoundPath : homePath ? homePath : firstPath ? firstPath : (0, _objectSpread2["default"])({}, r);
121
-
122
- if (foundPath) {
123
- r = (0, _objectSpread2["default"])({
124
- requestPath: path,
125
- status: 404
126
- }, foundPath);
127
- }
128
- }
129
-
130
- return r;
131
- }
132
-
133
- function defaultResolve() {
134
- return _defaultResolve.apply(this, arguments);
135
- }
136
-
137
- function _defaultResolve() {
138
- _defaultResolve = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee() {
139
- var p,
140
- path,
141
- req,
142
- res,
143
- _router$getRoute,
144
- _router$getRoute$acti,
145
- action,
146
- rest,
147
- r,
148
- _args = arguments;
149
-
150
- return _regenerator["default"].wrap(function _callee$(_context) {
151
- while (1) {
152
- switch (_context.prev = _context.next) {
153
- case 0:
154
- p = _args.length > 0 && _args[0] !== undefined ? _args[0] : {};
155
- path = p.path, req = p.req, res = p.res;
156
- _router$getRoute = router.getRoute({
157
- path: path
158
- }), _router$getRoute$acti = _router$getRoute.action, action = _router$getRoute$acti === void 0 ? defaultAction : _router$getRoute$acti, rest = (0, _objectWithoutProperties2["default"])(_router$getRoute, _excluded);
159
- _context.next = 5;
160
- return action((0, _objectSpread2["default"])({
161
- wapp: wapp,
162
- req: req,
163
- res: res
164
- }, rest));
165
-
166
- case 5:
167
- r = _context.sent;
168
- _context.next = 8;
169
- return router.action((0, _objectSpread2["default"])({
170
- wapp: wapp,
171
- req: req,
172
- res: res
173
- }, r));
174
-
175
- case 8:
176
- r = _context.sent;
177
- return _context.abrupt("return", r);
178
-
179
- case 10:
180
- case "end":
181
- return _context.stop();
182
- }
183
- }
184
- }, _callee);
185
- }));
186
- return _defaultResolve.apply(this, arguments);
187
- }
188
-
189
- function defaultAction() {
190
- return _defaultAction.apply(this, arguments);
191
- }
192
-
193
- function _defaultAction() {
194
- _defaultAction = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee2() {
195
- var p,
196
- wapp,
197
- rest,
198
- _args2 = arguments;
199
- return _regenerator["default"].wrap(function _callee2$(_context2) {
200
- while (1) {
201
- switch (_context2.prev = _context2.next) {
202
- case 0:
203
- p = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : {};
204
- wapp = p.wapp, rest = (0, _objectWithoutProperties2["default"])(p, _excluded2);
205
- return _context2.abrupt("return", (0, _objectSpread2["default"])({}, rest));
206
-
207
- case 3:
208
- case "end":
209
- return _context2.stop();
210
- }
211
- }
212
- }, _callee2);
213
- }));
214
- return _defaultAction.apply(this, arguments);
215
- }
216
-
217
- function defaultAdd(obj) {
218
- if (typeof obj === "object" && obj.length) {
219
- obj.forEach(function (route) {
220
- if (typeof route == "object" && route.path) {
221
- var foundRoute = false;
222
- router.routes.forEach(function (aRoute) {
223
- if (aRoute.path === route.path) {
224
- foundRoute = true;
225
- }
226
- });
227
-
228
- if (!foundRoute) {
229
- router.routes.push(route);
230
- }
231
- }
232
- });
233
- } else {
234
- if (typeof obj == "object" && obj.path) {
235
- var foundRoute = false;
236
- router.routes.forEach(function (aRoute) {
237
- if (aRoute.path === obj.path) {
238
- foundRoute = true;
239
- }
240
- });
241
-
242
- if (!foundRoute) {
243
- router.routes.push(obj);
244
- }
245
- }
246
- }
247
- }
248
-
249
- function defaultReplace(obj) {
250
- if (typeof obj === "object" && obj.length) {
251
- obj.forEach(function (objRoute) {
252
- if (typeof objRoute == "object" && objRoute.path) {
253
- var replaced = false;
254
- router.routes.forEach(function (route, i) {
255
- if (route.path === objRoute.path) {
256
- router.routes[i] = objRoute;
257
- replaced = true;
258
- }
259
- });
260
-
261
- if (!replaced) {
262
- router.routes.push(objRoute);
263
- }
264
- }
265
- });
266
- } else {
267
- if (typeof obj == "object" && obj.path) {
268
- var replaced = false;
269
- router.routes.forEach(function (route, i) {
270
- if (route.path === obj.path) {
271
- router.routes[i] = obj;
272
- replaced = true;
273
- }
274
- });
275
-
276
- if (!replaced) {
277
- router.routes.push(obj);
278
- }
279
- }
280
- }
281
- }
282
-
283
- var defaultRoutes = routes || [{
284
- path: "/",
285
- contentName: "log"
286
- }];
287
- var router = Object.create(Object.prototype, {
288
- wapp: (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, _utils.defaultDescriptor), {}, {
289
- writable: false,
290
- enumerable: false,
291
- value: wapp
292
- }),
293
- match: (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, _utils.defaultDescriptor), {}, {
294
- value: match
295
- }),
296
- getRoute: (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, _utils.defaultDescriptor), {}, {
297
- value: getRoute
298
- }),
299
- resolve: (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, _utils.defaultDescriptor), {}, {
300
- value: defaultResolve
301
- }),
302
- action: (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, _utils.defaultDescriptor), {}, {
303
- value: defaultAction
304
- }),
305
- routes: (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, _utils.defaultDescriptor), {}, {
306
- writable: false,
307
- value: defaultRoutes
308
- }),
309
- add: (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, _utils.defaultDescriptor), {}, {
310
- value: defaultAdd
311
- }),
312
- replace: (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, _utils.defaultDescriptor), {}, {
313
- value: defaultReplace
314
- })
315
- });
316
- return router;
317
- }
318
-
319
- function createRouter() {
320
- var p = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
321
- var wapp = p.wapp,
322
- _p$routeManager = p.routeManager,
323
- routeManager = _p$routeManager === void 0 ? createDefaultRouter(p) : _p$routeManager;
324
-
325
- function defaultHandle(_x, _x2, _x3) {
326
- return _defaultHandle.apply(this, arguments);
327
- }
328
-
329
- function _defaultHandle() {
330
- _defaultHandle = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee3(req, res, next) {
331
- var wappResponse, wappRequest, routerRes, path, route;
332
- return _regenerator["default"].wrap(function _callee3$(_context3) {
333
- while (1) {
334
- switch (_context3.prev = _context3.next) {
335
- case 0:
336
- wappResponse = res.wappResponse;
337
- wappRequest = req.wappRequest;
338
- routerRes = routerMiddleware.routeManager.resolve;
339
- path = wappRequest.path || wappRequest.url;
340
- _context3.next = 6;
341
- return routerRes({
342
- path: path,
343
- req: req,
344
- res: res
345
- });
346
-
347
- case 6:
348
- route = _context3.sent;
349
- wappResponse.statusCode = wappResponse.statusCode === 200 || !wappResponse.statusCode ? route.status : wappResponse.statusCode;
350
- wappResponse.route = route;
351
-
352
- if (wappResponse.statusCode) {
353
- wappResponse.status(wappResponse.statusCode);
354
- }
355
-
356
- if (!(wappRequest.path === "/500" && wappResponse.statusCode === 404)) {
357
- _context3.next = 13;
358
- break;
359
- }
360
-
361
- //test an error
362
- wappResponse.route.contentName = "";
363
- throw new Error("Internal Server Error (Test)");
364
-
365
- case 13:
366
- return _context3.abrupt("return", next());
367
-
368
- case 14:
369
- case "end":
370
- return _context3.stop();
371
- }
372
- }
373
- }, _callee3);
374
- }));
375
- return _defaultHandle.apply(this, arguments);
376
- }
377
-
378
- function defaultAdd(p) {
379
- return routerMiddleware.routeManager.add(p);
380
- }
381
-
382
- function defaultReplace(p) {
383
- return routerMiddleware.routeManager.replace(p);
384
- }
385
-
386
- var routerMiddlewareProperties = Object.create(Object.prototype, {
387
- handle: (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, _utils.defaultDescriptor), {}, {
388
- value: defaultHandle
389
- }),
390
- routeManager: (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, _utils.defaultDescriptor), {}, {
391
- value: routeManager
392
- }),
393
- add: (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, _utils.defaultDescriptor), {}, {
394
- value: defaultAdd
395
- }),
396
- replace: (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, _utils.defaultDescriptor), {}, {
397
- value: defaultReplace
398
- })
399
- });
400
-
401
- function routerMiddleware(_x4, _x5, _x6) {
402
- return _routerMiddleware.apply(this, arguments);
403
- }
404
-
405
- function _routerMiddleware() {
406
- _routerMiddleware = (0, _asyncToGenerator2["default"])( /*#__PURE__*/_regenerator["default"].mark(function _callee4(req, res, next) {
407
- return _regenerator["default"].wrap(function _callee4$(_context4) {
408
- while (1) {
409
- switch (_context4.prev = _context4.next) {
410
- case 0:
411
- if (!(typeof routerMiddleware.handle === "function")) {
412
- _context4.next = 4;
413
- break;
414
- }
415
-
416
- _context4.next = 3;
417
- return routerMiddleware.handle(req, res, next);
418
-
419
- case 3:
420
- return _context4.abrupt("return", _context4.sent);
421
-
422
- case 4:
423
- return _context4.abrupt("return", routerMiddleware);
424
-
425
- case 5:
426
- case "end":
427
- return _context4.stop();
428
- }
429
- }
430
- }, _callee4);
431
- }));
432
- return _routerMiddleware.apply(this, arguments);
433
- }
434
-
435
- (0, _utils.mergeProperties)(routerMiddleware, routerMiddlewareProperties);
436
- Object.defineProperty(routerMiddleware, "wapp", (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, _utils.defaultDescriptor), {}, {
437
- writable: false,
438
- enumerable: false,
439
- value: wapp
440
- }));
441
- Object.defineProperty(wapp, "router", (0, _objectSpread2["default"])((0, _objectSpread2["default"])({}, _utils.defaultDescriptor), {}, {
442
- writable: false,
443
- value: routerMiddleware
444
- }));
445
- return routerMiddleware;
446
- }