axe-api 0.31.3 → 1.0.0-rc1

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 (129) hide show
  1. package/build/dev-kit.d.ts +1 -0
  2. package/build/dev-kit.js +16 -0
  3. package/build/index.d.ts +2 -2
  4. package/build/index.js +4 -1
  5. package/build/src/Builders/RouterBuilder.d.ts +0 -4
  6. package/build/src/Builders/RouterBuilder.js +13 -107
  7. package/build/src/Handlers/DocsHTMLHandler.d.ts +3 -2
  8. package/build/src/Handlers/Helpers.d.ts +7 -7
  9. package/build/src/Handlers/Helpers.js +2 -1
  10. package/build/src/Handlers/MetadataHandler.d.ts +3 -2
  11. package/build/src/Handlers/RequestHandler.d.ts +3 -0
  12. package/build/src/Handlers/RequestHandler.js +89 -0
  13. package/build/src/Handlers/RoutesHandler.d.ts +3 -2
  14. package/build/src/Helpers.d.ts +1 -2
  15. package/build/src/Helpers.js +3 -15
  16. package/build/src/Interfaces.d.ts +30 -29
  17. package/build/src/Model.d.ts +3 -3
  18. package/build/src/Phases/All/FetchPhase.d.ts +3 -0
  19. package/build/src/Phases/All/FetchPhase.js +16 -0
  20. package/build/src/Phases/All/PreparePhase.d.ts +3 -0
  21. package/build/src/Phases/All/PreparePhase.js +30 -0
  22. package/build/src/Phases/All/index.d.ts +4 -0
  23. package/build/src/{Middlewares → Phases/All}/index.js +4 -3
  24. package/build/src/Phases/Delete/ActionPhase.d.ts +3 -0
  25. package/build/src/Phases/Delete/ActionPhase.js +24 -0
  26. package/build/src/Phases/Delete/PreparePhase.d.ts +3 -0
  27. package/build/src/Phases/Delete/PreparePhase.js +25 -0
  28. package/build/src/Phases/Delete/QueryPhase.d.ts +3 -0
  29. package/build/src/Phases/Delete/QueryPhase.js +20 -0
  30. package/build/src/Phases/Delete/ResponsePhase.d.ts +3 -0
  31. package/build/src/Phases/Delete/ResponsePhase.js +14 -0
  32. package/build/src/Phases/Delete/index.d.ts +7 -0
  33. package/build/src/Phases/Delete/index.js +15 -0
  34. package/build/src/Phases/ForceDelete/ActionPhase.d.ts +3 -0
  35. package/build/src/Phases/ForceDelete/ActionPhase.js +16 -0
  36. package/build/src/Phases/ForceDelete/PreparePhase.d.ts +3 -0
  37. package/build/src/Phases/ForceDelete/PreparePhase.js +28 -0
  38. package/build/src/Phases/ForceDelete/QueryPhase.d.ts +3 -0
  39. package/build/src/Phases/ForceDelete/QueryPhase.js +20 -0
  40. package/build/src/Phases/ForceDelete/index.d.ts +6 -0
  41. package/build/src/Phases/ForceDelete/index.js +13 -0
  42. package/build/src/Phases/List/RelationalPhase.d.ts +3 -0
  43. package/build/src/Phases/List/RelationalPhase.js +17 -0
  44. package/build/src/Phases/List/ResultPhase.d.ts +3 -0
  45. package/build/src/Phases/List/ResultPhase.js +14 -0
  46. package/build/src/Phases/List/SerializePhase.d.ts +3 -0
  47. package/build/src/Phases/List/SerializePhase.js +19 -0
  48. package/build/src/Phases/List/index.d.ts +6 -0
  49. package/build/src/Phases/List/index.js +13 -0
  50. package/build/src/Phases/Paginate/FetchPhase.d.ts +3 -0
  51. package/build/src/Phases/Paginate/FetchPhase.js +19 -0
  52. package/build/src/Phases/Paginate/PreparePhase.d.ts +3 -0
  53. package/build/src/Phases/Paginate/PreparePhase.js +30 -0
  54. package/build/src/Phases/Paginate/index.d.ts +5 -0
  55. package/build/src/Phases/Paginate/index.js +11 -0
  56. package/build/src/Phases/Patch/PrepareActionPhase.d.ts +3 -0
  57. package/build/src/Phases/Patch/PrepareActionPhase.js +37 -0
  58. package/build/src/Phases/Patch/index.d.ts +4 -0
  59. package/build/src/Phases/Patch/index.js +9 -0
  60. package/build/src/Phases/Show/FetchPhase.d.ts +3 -0
  61. package/build/src/Phases/Show/FetchPhase.js +23 -0
  62. package/build/src/Phases/Show/PreparePhase.d.ts +3 -0
  63. package/build/src/Phases/Show/PreparePhase.js +31 -0
  64. package/build/src/Phases/Show/index.d.ts +5 -0
  65. package/build/src/Phases/Show/index.js +11 -0
  66. package/build/src/Phases/Single/GetPhase.d.ts +3 -0
  67. package/build/src/{Middlewares/acceptLanguageMiddleware.js → Phases/Single/GetPhase.js} +15 -10
  68. package/build/src/Phases/Single/PrepareGetPhase.d.ts +3 -0
  69. package/build/src/Phases/Single/PrepareGetPhase.js +19 -0
  70. package/build/src/Phases/Single/RelationalPhase.d.ts +3 -0
  71. package/build/src/Phases/Single/RelationalPhase.js +17 -0
  72. package/build/src/Phases/Single/ResultPhase.d.ts +3 -0
  73. package/build/src/Phases/Single/ResultPhase.js +14 -0
  74. package/build/src/Phases/Single/SerializePhase.d.ts +3 -0
  75. package/build/src/Phases/Single/SerializePhase.js +18 -0
  76. package/build/src/Phases/Single/index.d.ts +8 -0
  77. package/build/src/Phases/Single/index.js +17 -0
  78. package/build/src/Phases/Store/ActionPhase.d.ts +3 -0
  79. package/build/src/Phases/Store/ActionPhase.js +29 -0
  80. package/build/src/Phases/Store/PreparePhase.d.ts +3 -0
  81. package/build/src/Phases/Store/PreparePhase.js +46 -0
  82. package/build/src/Phases/Store/index.d.ts +5 -0
  83. package/build/src/Phases/Store/index.js +11 -0
  84. package/build/src/Phases/Update/ActionPhase.d.ts +3 -0
  85. package/build/src/Phases/Update/ActionPhase.js +22 -0
  86. package/build/src/Phases/Update/PrepareActionPhase.d.ts +3 -0
  87. package/build/src/Phases/Update/PrepareActionPhase.js +37 -0
  88. package/build/src/Phases/Update/index.d.ts +5 -0
  89. package/build/src/Phases/Update/index.js +11 -0
  90. package/build/src/Server.d.ts +0 -1
  91. package/build/src/Server.js +13 -16
  92. package/build/src/Services/App.d.ts +14 -0
  93. package/build/src/Services/App.js +37 -0
  94. package/build/src/Services/AxeRequest.d.ts +24 -0
  95. package/build/src/Services/AxeRequest.js +59 -0
  96. package/build/src/Services/AxeResponse.d.ts +17 -0
  97. package/build/src/Services/AxeResponse.js +38 -0
  98. package/build/src/Services/LogService.js +4 -5
  99. package/build/src/Services/ModelService.d.ts +4 -4
  100. package/build/src/Services/QueryService.d.ts +1 -1
  101. package/build/src/Services/QueryService.js +14 -19
  102. package/build/src/Services/URLService.d.ts +29 -0
  103. package/build/src/Services/URLService.js +116 -0
  104. package/build/src/Services/index.d.ts +4 -1
  105. package/build/src/Services/index.js +7 -1
  106. package/build/src/Types.d.ts +7 -6
  107. package/build/src/constants.d.ts +10 -2
  108. package/build/src/constants.js +163 -1
  109. package/package.json +9 -1
  110. package/build/src/Handlers/AllHandler.d.ts +0 -3
  111. package/build/src/Handlers/AllHandler.js +0 -45
  112. package/build/src/Handlers/DestroyHandler.d.ts +0 -3
  113. package/build/src/Handlers/DestroyHandler.js +0 -51
  114. package/build/src/Handlers/ForceDestroyHandler.d.ts +0 -3
  115. package/build/src/Handlers/ForceDestroyHandler.js +0 -45
  116. package/build/src/Handlers/HandlerFactory.d.ts +0 -6
  117. package/build/src/Handlers/HandlerFactory.js +0 -39
  118. package/build/src/Handlers/PaginateHandler.d.ts +0 -3
  119. package/build/src/Handlers/PaginateHandler.js +0 -49
  120. package/build/src/Handlers/PatchHandler.d.ts +0 -3
  121. package/build/src/Handlers/PatchHandler.js +0 -69
  122. package/build/src/Handlers/ShowHandler.d.ts +0 -3
  123. package/build/src/Handlers/ShowHandler.js +0 -55
  124. package/build/src/Handlers/StoreHandler.d.ts +0 -3
  125. package/build/src/Handlers/StoreHandler.js +0 -65
  126. package/build/src/Handlers/UpdateHandler.d.ts +0 -3
  127. package/build/src/Handlers/UpdateHandler.js +0 -69
  128. package/build/src/Middlewares/acceptLanguageMiddleware.d.ts +0 -3
  129. package/build/src/Middlewares/index.d.ts +0 -2
@@ -0,0 +1,24 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.default = (context) => __awaiter(void 0, void 0, void 0, function* () {
13
+ if (context.query) {
14
+ // If there is a deletedAtColumn, it means that this table support soft-delete
15
+ if (context.model.instance.deletedAtColumn) {
16
+ yield context.query.update({
17
+ [context.model.instance.deletedAtColumn]: new Date(),
18
+ });
19
+ }
20
+ else {
21
+ yield context.query.delete();
22
+ }
23
+ }
24
+ });
@@ -0,0 +1,3 @@
1
+ import { IRequestPack } from "../../Interfaces";
2
+ declare const _default: (context: IRequestPack) => Promise<void>;
3
+ export default _default;
@@ -0,0 +1,25 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const Helpers_1 = require("../../Handlers/Helpers");
13
+ exports.default = (context) => __awaiter(void 0, void 0, void 0, function* () {
14
+ // We should check the parameter type
15
+ const value = context.req.params[context.model.instance.primaryKey];
16
+ (0, Helpers_1.checkPrimaryKeyValueType)(context.model, value);
17
+ // Adding the main query
18
+ context.query = context.database
19
+ .from(context.model.instance.table)
20
+ .where(context.model.instance.primaryKey, value);
21
+ // If there is a deletedAtColumn, it means that this table support soft-delete
22
+ (0, Helpers_1.addSoftDeleteQuery)(context.model, null, context.query);
23
+ // If there is a relation, we should bind it
24
+ (0, Helpers_1.addForeignKeyQuery)(context.req, context.query, context.relation, context.parentModel);
25
+ });
@@ -0,0 +1,3 @@
1
+ import { IRequestPack } from "../../Interfaces";
2
+ declare const _default: (context: IRequestPack) => Promise<void>;
3
+ export default _default;
@@ -0,0 +1,20 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const Enums_1 = require("../../Enums");
13
+ exports.default = (context) => __awaiter(void 0, void 0, void 0, function* () {
14
+ if (context.query) {
15
+ context.item = yield context.query.first();
16
+ if (!context.item) {
17
+ context.res.json({ error: `The item is not found on ${context.model.name}.` }, Enums_1.StatusCodes.NOT_FOUND);
18
+ }
19
+ }
20
+ });
@@ -0,0 +1,3 @@
1
+ import { IRequestPack } from "../../Interfaces";
2
+ declare const _default: (context: IRequestPack) => Promise<void>;
3
+ export default _default;
@@ -0,0 +1,14 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.default = (context) => __awaiter(void 0, void 0, void 0, function* () {
13
+ context.res.noContent();
14
+ });
@@ -0,0 +1,7 @@
1
+ declare const _default: {
2
+ ActionPhase: (context: import("../../Interfaces").IRequestPack) => Promise<void>;
3
+ PreparePhase: (context: import("../../Interfaces").IRequestPack) => Promise<void>;
4
+ QueryPhase: (context: import("../../Interfaces").IRequestPack) => Promise<void>;
5
+ ResponsePhase: (context: import("../../Interfaces").IRequestPack) => Promise<void>;
6
+ };
7
+ export default _default;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const ActionPhase_1 = __importDefault(require("./ActionPhase"));
7
+ const PreparePhase_1 = __importDefault(require("./PreparePhase"));
8
+ const QueryPhase_1 = __importDefault(require("./QueryPhase"));
9
+ const ResponsePhase_1 = __importDefault(require("./ResponsePhase"));
10
+ exports.default = {
11
+ ActionPhase: ActionPhase_1.default,
12
+ PreparePhase: PreparePhase_1.default,
13
+ QueryPhase: QueryPhase_1.default,
14
+ ResponsePhase: ResponsePhase_1.default,
15
+ };
@@ -0,0 +1,3 @@
1
+ import { IRequestPack } from "../../Interfaces";
2
+ declare const _default: (context: IRequestPack) => Promise<void>;
3
+ export default _default;
@@ -0,0 +1,16 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.default = (context) => __awaiter(void 0, void 0, void 0, function* () {
13
+ if (context.query) {
14
+ yield context.query.delete();
15
+ }
16
+ });
@@ -0,0 +1,3 @@
1
+ import { IRequestPack } from "../../Interfaces";
2
+ declare const _default: (context: IRequestPack) => Promise<void>;
3
+ export default _default;
@@ -0,0 +1,28 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const Helpers_1 = require("../../Handlers/Helpers");
13
+ const Enums_1 = require("../../Enums");
14
+ exports.default = (context) => __awaiter(void 0, void 0, void 0, function* () {
15
+ // We should check the parameter type
16
+ const value = context.req.params[context.model.instance.primaryKey];
17
+ (0, Helpers_1.checkPrimaryKeyValueType)(context.model, value);
18
+ // Adding the main query
19
+ context.query = context.database
20
+ .from(context.model.instance.table)
21
+ .where(context.model.instance.primaryKey, value);
22
+ // If there is a deletedAtColumn, it means that this table support soft-delete
23
+ if (context.model.instance.deletedAtColumn === null) {
24
+ return context.res.json({ error: "You can use force delete only soft-delete supported models." }, Enums_1.StatusCodes.NOT_FOUND);
25
+ }
26
+ // If there is a relation, we should bind it
27
+ (0, Helpers_1.addForeignKeyQuery)(context.req, context.query, context.relation, context.parentModel);
28
+ });
@@ -0,0 +1,3 @@
1
+ import { IRequestPack } from "../../Interfaces";
2
+ declare const _default: (context: IRequestPack) => Promise<void>;
3
+ export default _default;
@@ -0,0 +1,20 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const Enums_1 = require("../../Enums");
13
+ exports.default = (context) => __awaiter(void 0, void 0, void 0, function* () {
14
+ if (context.query) {
15
+ context.item = yield context.query.first();
16
+ if (!context.item) {
17
+ context.res.json({ error: `The item is not found on ${context.model.name}.` }, Enums_1.StatusCodes.NOT_FOUND);
18
+ }
19
+ }
20
+ });
@@ -0,0 +1,6 @@
1
+ declare const _default: {
2
+ ActionPhase: (context: import("../../Interfaces").IRequestPack) => Promise<void>;
3
+ PreparePhase: (context: import("../../Interfaces").IRequestPack) => Promise<void>;
4
+ QueryPhase: (context: import("../../Interfaces").IRequestPack) => Promise<void>;
5
+ };
6
+ export default _default;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const PreparePhase_1 = __importDefault(require("./PreparePhase"));
7
+ const QueryPhase_1 = __importDefault(require("./QueryPhase"));
8
+ const ActionPhase_1 = __importDefault(require("./ActionPhase"));
9
+ exports.default = {
10
+ ActionPhase: ActionPhase_1.default,
11
+ PreparePhase: PreparePhase_1.default,
12
+ QueryPhase: QueryPhase_1.default,
13
+ };
@@ -0,0 +1,3 @@
1
+ import { IRequestPack } from "../../Interfaces";
2
+ declare const _default: (context: IRequestPack) => Promise<void>;
3
+ export default _default;
@@ -0,0 +1,17 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const Helpers_1 = require("../../Handlers/Helpers");
13
+ exports.default = (context) => __awaiter(void 0, void 0, void 0, function* () {
14
+ var _a, _b;
15
+ // We should try to get related data if there is any
16
+ yield (0, Helpers_1.getRelatedData)(context.version, ((_a = context.result) === null || _a === void 0 ? void 0 : _a.data) || context.result || [], ((_b = context.conditions) === null || _b === void 0 ? void 0 : _b.with) || [], context.model, context.version.modelList, context.database, context.handlerType, context.req);
17
+ });
@@ -0,0 +1,3 @@
1
+ import { IRequestPack } from "../../Interfaces";
2
+ declare const _default: (context: IRequestPack) => Promise<void>;
3
+ export default _default;
@@ -0,0 +1,14 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.default = (context) => __awaiter(void 0, void 0, void 0, function* () {
13
+ context.res.json(context.result);
14
+ });
@@ -0,0 +1,3 @@
1
+ import { IRequestPack } from "../../Interfaces";
2
+ declare const _default: (context: IRequestPack) => Promise<void>;
3
+ export default _default;
@@ -0,0 +1,19 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const Helpers_1 = require("../../Handlers/Helpers");
13
+ exports.default = (context) => __awaiter(void 0, void 0, void 0, function* () {
14
+ var _a;
15
+ // Serializing the data by the model's serialize method
16
+ context.result.data = yield (0, Helpers_1.serializeData)(context.version, ((_a = context.result) === null || _a === void 0 ? void 0 : _a.data) || context.result || [], context.model.serialize, context.handlerType, context.req);
17
+ // Filtering hidden fields from the response data.
18
+ (0, Helpers_1.filterHiddenFields)(context.result.data, context.model.instance.hiddens);
19
+ });
@@ -0,0 +1,6 @@
1
+ declare const _default: {
2
+ RelationalPhase: (context: import("../../Interfaces").IRequestPack) => Promise<void>;
3
+ ResultPhase: (context: import("../../Interfaces").IRequestPack) => Promise<void>;
4
+ SerializePhase: (context: import("../../Interfaces").IRequestPack) => Promise<void>;
5
+ };
6
+ export default _default;
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const RelationalPhase_1 = __importDefault(require("./RelationalPhase"));
7
+ const ResultPhase_1 = __importDefault(require("./ResultPhase"));
8
+ const SerializePhase_1 = __importDefault(require("./SerializePhase"));
9
+ exports.default = {
10
+ RelationalPhase: RelationalPhase_1.default,
11
+ ResultPhase: ResultPhase_1.default,
12
+ SerializePhase: SerializePhase_1.default,
13
+ };
@@ -0,0 +1,3 @@
1
+ import { IRequestPack } from "../../Interfaces";
2
+ declare const _default: (context: IRequestPack) => Promise<void>;
3
+ export default _default;
@@ -0,0 +1,19 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.default = (context) => __awaiter(void 0, void 0, void 0, function* () {
13
+ var _a, _b;
14
+ context.result = yield context.query.paginate({
15
+ perPage: ((_a = context.conditions) === null || _a === void 0 ? void 0 : _a.per_page) || 10,
16
+ currentPage: ((_b = context.conditions) === null || _b === void 0 ? void 0 : _b.page) || 1,
17
+ isLengthAware: true,
18
+ });
19
+ });
@@ -0,0 +1,3 @@
1
+ import { IRequestPack } from "../../Interfaces";
2
+ declare const _default: (context: IRequestPack) => Promise<void>;
3
+ export default _default;
@@ -0,0 +1,30 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const Services_1 = require("../../Services");
13
+ const Helpers_1 = require("../../Handlers/Helpers");
14
+ exports.default = (context) => __awaiter(void 0, void 0, void 0, function* () {
15
+ context.queryParser = new Services_1.QueryService(context.model, context.version.modelList.get(), context.version.config);
16
+ // We should parse URL query string to use as condition in Lucid query
17
+ context.conditions = context.queryParser.get(context.req.query);
18
+ // Creating a new database query
19
+ context.query = context.database.from(context.model.instance.table);
20
+ // If there is a deletedAtColumn, it means that this table support soft-delete
21
+ (0, Helpers_1.addSoftDeleteQuery)(context.model, context.conditions, context.query);
22
+ // Users should be able to select some fields to show.
23
+ context.queryParser.applyFields(context.query, context.conditions.fields);
24
+ // Binding parent id if there is.
25
+ (0, Helpers_1.addForeignKeyQuery)(context.req, context.query, context.relation, context.parentModel);
26
+ // Users should be able to filter records
27
+ context.queryParser.applyWheres(context.query, context.conditions.q);
28
+ // User should be able to select sorting fields and types
29
+ context.queryParser.applySorting(context.query, context.conditions.sort);
30
+ });
@@ -0,0 +1,5 @@
1
+ declare const _default: {
2
+ PreparePhase: (context: import("../../Interfaces").IRequestPack) => Promise<void>;
3
+ FetchPhase: (context: import("../../Interfaces").IRequestPack) => Promise<void>;
4
+ };
5
+ export default _default;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const PreparePhase_1 = __importDefault(require("./PreparePhase"));
7
+ const FetchPhase_1 = __importDefault(require("./FetchPhase"));
8
+ exports.default = {
9
+ PreparePhase: PreparePhase_1.default,
10
+ FetchPhase: FetchPhase_1.default,
11
+ };
@@ -0,0 +1,3 @@
1
+ import { IRequestPack } from "../../Interfaces";
2
+ declare const _default: (context: IRequestPack) => Promise<void>;
3
+ export default _default;
@@ -0,0 +1,37 @@
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
+ const validatorjs_1 = __importDefault(require("validatorjs"));
16
+ const Enums_1 = require("../../Enums");
17
+ const Helpers_1 = require("../../Handlers/Helpers");
18
+ exports.default = (context) => __awaiter(void 0, void 0, void 0, function* () {
19
+ const requestMethod = context.req
20
+ .method;
21
+ const fillables = context.model.instance.getFillableFields(requestMethod);
22
+ context.formData = Object.assign(Object.assign({}, context.item), (0, Helpers_1.getMergedFormData)(context.req, fillables));
23
+ const validationRules = context.model.instance.getValidationRules(requestMethod);
24
+ if (validationRules) {
25
+ // The validation language should be set
26
+ validatorjs_1.default.useLang(context.req.currentLanguage.language);
27
+ // Validate the data
28
+ const validation = new validatorjs_1.default(context.formData, validationRules);
29
+ if (validation.fails()) {
30
+ return context.res.json(validation.errors, 400);
31
+ }
32
+ }
33
+ // We should bind the timestamp values
34
+ (0, Helpers_1.bindTimestampValues)(context.formData, context.model, [
35
+ Enums_1.TimestampColumns.UPDATED_AT,
36
+ ]);
37
+ });
@@ -0,0 +1,4 @@
1
+ declare const _default: {
2
+ PrepareActionPhase: (context: import("../../Interfaces").IRequestPack) => Promise<void>;
3
+ };
4
+ export default _default;
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const PrepareActionPhase_1 = __importDefault(require("./PrepareActionPhase"));
7
+ exports.default = {
8
+ PrepareActionPhase: PrepareActionPhase_1.default,
9
+ };
@@ -0,0 +1,3 @@
1
+ import { IRequestPack } from "../../Interfaces";
2
+ declare const _default: (context: IRequestPack) => Promise<void>;
3
+ export default _default;
@@ -0,0 +1,23 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const Enums_1 = require("../../Enums");
13
+ exports.default = (context) => __awaiter(void 0, void 0, void 0, function* () {
14
+ var _a;
15
+ if (context.queryParser && context.query) {
16
+ // Users should be able to filter records
17
+ context.queryParser.applyWheres(context.query, ((_a = context.conditions) === null || _a === void 0 ? void 0 : _a.q) || []);
18
+ context.item = yield context.query.first();
19
+ if (!context.item) {
20
+ context.res.json({ error: `The item is not found on ${context.model.name}.` }, Enums_1.StatusCodes.NOT_FOUND);
21
+ }
22
+ }
23
+ });
@@ -0,0 +1,3 @@
1
+ import { IRequestPack } from "../../Interfaces";
2
+ declare const _default: (context: IRequestPack) => Promise<void>;
3
+ export default _default;
@@ -0,0 +1,31 @@
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
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ const Services_1 = require("../../Services");
13
+ const Helpers_1 = require("../../Handlers/Helpers");
14
+ exports.default = (context) => __awaiter(void 0, void 0, void 0, function* () {
15
+ context.queryParser = new Services_1.QueryService(context.model, context.version.modelList.get(), context.version.config);
16
+ // We should parse URL query string to use as condition in Lucid query
17
+ context.conditions = context.queryParser.get(context.req.query);
18
+ // Fetching item
19
+ context.query = context.database.from(context.model.instance.table);
20
+ // If there is a deletedAtColumn, it means that this table support soft-delete
21
+ (0, Helpers_1.addSoftDeleteQuery)(context.model, context.conditions, context.query);
22
+ // Users should be able to select some fields to show.
23
+ context.queryParser.applyFields(context.query, context.conditions.fields);
24
+ // If there is a relation, we should bind it
25
+ (0, Helpers_1.addForeignKeyQuery)(context.req, context.query, context.relation, context.parentModel);
26
+ // We should check the parameter type
27
+ const value = context.params[context.model.instance.primaryKey];
28
+ (0, Helpers_1.checkPrimaryKeyValueType)(context.model, value);
29
+ // Adding the main query
30
+ context.query.where(context.model.instance.primaryKey, value);
31
+ });
@@ -0,0 +1,5 @@
1
+ declare const _default: {
2
+ PreparePhase: (context: import("../../Interfaces").IRequestPack) => Promise<void>;
3
+ FetchPhase: (context: import("../../Interfaces").IRequestPack) => Promise<void>;
4
+ };
5
+ export default _default;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const PreparePhase_1 = __importDefault(require("./PreparePhase"));
7
+ const FetchPhase_1 = __importDefault(require("./FetchPhase"));
8
+ exports.default = {
9
+ PreparePhase: PreparePhase_1.default,
10
+ FetchPhase: FetchPhase_1.default,
11
+ };
@@ -0,0 +1,3 @@
1
+ import { IRequestPack } from "../../Interfaces";
2
+ declare const _default: (context: IRequestPack) => Promise<void>;
3
+ export default _default;
@@ -9,14 +9,19 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- const Resolvers_1 = require("../Resolvers");
13
- const Helpers_1 = require("../Helpers");
14
- exports.default = (req, res, next) => __awaiter(void 0, void 0, void 0, function* () {
15
- // Application configuration is need for the default setting.
16
- const version = yield (0, Helpers_1.getVersionByRequest)(req);
17
- // Setting the current language by the supported, default and the client prefences
18
- req.currentLanguage = Resolvers_1.AcceptLanguageResolver.resolve(req.get("accept-language") || "", version.config.supportedLanguages || ["en"], version.config.defaultLanguage || "en");
19
- // Adding the `Content-Language` header to the response object
20
- res.setHeader("Content-Language", req.currentLanguage.title);
21
- next();
12
+ const Helpers_1 = require("../../Handlers/Helpers");
13
+ const Enums_1 = require("../../Enums");
14
+ exports.default = (context) => __awaiter(void 0, void 0, void 0, function* () {
15
+ // We should check the parameter type
16
+ const value = context.req.params[context.model.instance.primaryKey];
17
+ (0, Helpers_1.checkPrimaryKeyValueType)(context.model, value);
18
+ if (context.query) {
19
+ // Adding the main query
20
+ context.item = yield context.query
21
+ .where(context.model.instance.primaryKey, value)
22
+ .first();
23
+ if (!context.item) {
24
+ context.res.json({ error: `The item is not found on ${context.model.name}.` }, Enums_1.StatusCodes.NOT_FOUND);
25
+ }
26
+ }
22
27
  });
@@ -0,0 +1,3 @@
1
+ import { IRequestPack } from "../../Interfaces";
2
+ declare const _default: (context: IRequestPack) => Promise<void>;
3
+ export default _default;