axe-api 0.31.4 → 1.0.0-rc10

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 (150) 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 +3 -2
  4. package/build/index.js +6 -1
  5. package/build/src/Builders/ModelTreeBuilder.js +1 -2
  6. package/build/src/Builders/RouterBuilder.d.ts +1 -5
  7. package/build/src/Builders/RouterBuilder.js +17 -112
  8. package/build/src/Enums.d.ts +0 -7
  9. package/build/src/Enums.js +14 -22
  10. package/build/src/Handlers/DocsHTMLHandler.d.ts +3 -2
  11. package/build/src/Handlers/Helpers.d.ts +7 -7
  12. package/build/src/Handlers/MetadataHandler.d.ts +3 -2
  13. package/build/src/Handlers/RequestHandler.d.ts +3 -0
  14. package/build/src/Handlers/RequestHandler.js +99 -0
  15. package/build/src/Handlers/RoutesHandler.d.ts +3 -2
  16. package/build/src/Helpers.d.ts +1 -3
  17. package/build/src/Helpers.js +4 -68
  18. package/build/src/Interfaces.d.ts +74 -35
  19. package/build/src/Middlewares/RateLimit/AdaptorFactory.d.ts +6 -0
  20. package/build/src/Middlewares/RateLimit/AdaptorFactory.js +17 -0
  21. package/build/src/Middlewares/RateLimit/IAdaptor.d.ts +6 -0
  22. package/build/src/Middlewares/RateLimit/IAdaptor.js +2 -0
  23. package/build/src/Middlewares/RateLimit/MemoryAdaptor.d.ts +10 -0
  24. package/build/src/Middlewares/RateLimit/MemoryAdaptor.js +41 -0
  25. package/build/src/Middlewares/RateLimit/RedisAdaptor.d.ts +11 -0
  26. package/build/src/Middlewares/RateLimit/RedisAdaptor.js +35 -0
  27. package/build/src/Middlewares/RateLimit/index.d.ts +6 -0
  28. package/build/src/Middlewares/RateLimit/index.js +118 -0
  29. package/build/src/Model.d.ts +4 -4
  30. package/build/src/Phases/All/FetchPhase.d.ts +3 -0
  31. package/build/src/{Middlewares/acceptLanguageMiddleware.js → Phases/All/FetchPhase.js} +4 -10
  32. package/build/src/Phases/All/PreparePhase.d.ts +3 -0
  33. package/build/src/Phases/All/PreparePhase.js +30 -0
  34. package/build/src/Phases/All/index.d.ts +4 -0
  35. package/build/src/{Middlewares → Phases/All}/index.js +4 -3
  36. package/build/src/Phases/Delete/ActionPhase.d.ts +3 -0
  37. package/build/src/Phases/Delete/ActionPhase.js +24 -0
  38. package/build/src/Phases/Delete/PreparePhase.d.ts +3 -0
  39. package/build/src/Phases/Delete/PreparePhase.js +25 -0
  40. package/build/src/Phases/Delete/QueryPhase.d.ts +3 -0
  41. package/build/src/Phases/Delete/QueryPhase.js +22 -0
  42. package/build/src/Phases/Delete/ResponsePhase.d.ts +3 -0
  43. package/build/src/Phases/Delete/ResponsePhase.js +14 -0
  44. package/build/src/Phases/Delete/index.d.ts +7 -0
  45. package/build/src/Phases/Delete/index.js +15 -0
  46. package/build/src/Phases/ForceDelete/ActionPhase.d.ts +3 -0
  47. package/build/src/Phases/ForceDelete/ActionPhase.js +16 -0
  48. package/build/src/Phases/ForceDelete/PreparePhase.d.ts +3 -0
  49. package/build/src/Phases/ForceDelete/PreparePhase.js +30 -0
  50. package/build/src/Phases/ForceDelete/QueryPhase.d.ts +3 -0
  51. package/build/src/Phases/ForceDelete/QueryPhase.js +22 -0
  52. package/build/src/Phases/ForceDelete/index.d.ts +6 -0
  53. package/build/src/Phases/ForceDelete/index.js +13 -0
  54. package/build/src/Phases/List/RelationalPhase.d.ts +3 -0
  55. package/build/src/Phases/List/RelationalPhase.js +17 -0
  56. package/build/src/Phases/List/ResultPhase.d.ts +3 -0
  57. package/build/src/Phases/List/ResultPhase.js +14 -0
  58. package/build/src/Phases/List/SerializePhase.d.ts +3 -0
  59. package/build/src/Phases/List/SerializePhase.js +19 -0
  60. package/build/src/Phases/List/index.d.ts +6 -0
  61. package/build/src/Phases/List/index.js +13 -0
  62. package/build/src/Phases/Paginate/FetchPhase.d.ts +3 -0
  63. package/build/src/Phases/Paginate/FetchPhase.js +30 -0
  64. package/build/src/Phases/Paginate/PreparePhase.d.ts +3 -0
  65. package/build/src/Phases/Paginate/PreparePhase.js +22 -0
  66. package/build/src/Phases/Paginate/index.d.ts +5 -0
  67. package/build/src/Phases/Paginate/index.js +11 -0
  68. package/build/src/Phases/Patch/PrepareActionPhase.d.ts +3 -0
  69. package/build/src/Phases/Patch/PrepareActionPhase.js +37 -0
  70. package/build/src/Phases/Patch/index.d.ts +4 -0
  71. package/build/src/Phases/Patch/index.js +9 -0
  72. package/build/src/Phases/Show/FetchPhase.d.ts +3 -0
  73. package/build/src/Phases/Show/FetchPhase.js +35 -0
  74. package/build/src/Phases/Show/PreparePhase.d.ts +3 -0
  75. package/build/src/Phases/Show/PreparePhase.js +22 -0
  76. package/build/src/Phases/Show/index.d.ts +5 -0
  77. package/build/src/Phases/Show/index.js +11 -0
  78. package/build/src/Phases/Single/GetPhase.d.ts +3 -0
  79. package/build/src/Phases/Single/GetPhase.js +29 -0
  80. package/build/src/Phases/Single/PrepareGetPhase.d.ts +3 -0
  81. package/build/src/Phases/Single/PrepareGetPhase.js +19 -0
  82. package/build/src/Phases/Single/RelationalPhase.d.ts +3 -0
  83. package/build/src/Phases/Single/RelationalPhase.js +17 -0
  84. package/build/src/Phases/Single/ResultPhase.d.ts +3 -0
  85. package/build/src/Phases/Single/ResultPhase.js +14 -0
  86. package/build/src/Phases/Single/SerializePhase.d.ts +3 -0
  87. package/build/src/Phases/Single/SerializePhase.js +18 -0
  88. package/build/src/Phases/Single/index.d.ts +8 -0
  89. package/build/src/Phases/Single/index.js +17 -0
  90. package/build/src/Phases/Store/ActionPhase.d.ts +3 -0
  91. package/build/src/Phases/Store/ActionPhase.js +29 -0
  92. package/build/src/Phases/Store/PreparePhase.d.ts +3 -0
  93. package/build/src/Phases/Store/PreparePhase.js +46 -0
  94. package/build/src/Phases/Store/index.d.ts +5 -0
  95. package/build/src/Phases/Store/index.js +11 -0
  96. package/build/src/Phases/Update/ActionPhase.d.ts +3 -0
  97. package/build/src/Phases/Update/ActionPhase.js +22 -0
  98. package/build/src/Phases/Update/PrepareActionPhase.d.ts +3 -0
  99. package/build/src/Phases/Update/PrepareActionPhase.js +37 -0
  100. package/build/src/Phases/Update/index.d.ts +5 -0
  101. package/build/src/Phases/Update/index.js +11 -0
  102. package/build/src/Resolvers/ModelResolver.js +9 -4
  103. package/build/src/Resolvers/VersionConfigResolver.js +6 -1
  104. package/build/src/Resolvers/VersionResolver.js +1 -2
  105. package/build/src/Server.d.ts +0 -1
  106. package/build/src/Server.js +29 -24
  107. package/build/src/Services/APIService.d.ts +3 -3
  108. package/build/src/Services/APIService.js +3 -8
  109. package/build/src/Services/App.d.ts +14 -0
  110. package/build/src/Services/App.js +80 -0
  111. package/build/src/Services/AxeRequest.d.ts +26 -0
  112. package/build/src/Services/AxeRequest.js +85 -0
  113. package/build/src/Services/AxeResponse.d.ts +18 -0
  114. package/build/src/Services/AxeResponse.js +41 -0
  115. package/build/src/Services/ConverterService.d.ts +9 -0
  116. package/build/src/Services/ConverterService.js +49 -0
  117. package/build/src/Services/LogService.d.ts +8 -12
  118. package/build/src/Services/LogService.js +16 -34
  119. package/build/src/Services/ModelService.d.ts +4 -4
  120. package/build/src/Services/QueryService.d.ts +4 -4
  121. package/build/src/Services/QueryService.js +14 -11
  122. package/build/src/Services/SchemaValidatorService.js +1 -2
  123. package/build/src/Services/URLService.d.ts +29 -0
  124. package/build/src/Services/URLService.js +144 -0
  125. package/build/src/Services/index.d.ts +4 -1
  126. package/build/src/Services/index.js +7 -1
  127. package/build/src/Types.d.ts +18 -6
  128. package/build/src/constants.d.ts +12 -14
  129. package/build/src/constants.js +200 -13
  130. package/package.json +29 -20
  131. package/build/src/Handlers/AllHandler.d.ts +0 -3
  132. package/build/src/Handlers/AllHandler.js +0 -45
  133. package/build/src/Handlers/DestroyHandler.d.ts +0 -3
  134. package/build/src/Handlers/DestroyHandler.js +0 -51
  135. package/build/src/Handlers/ForceDestroyHandler.d.ts +0 -3
  136. package/build/src/Handlers/ForceDestroyHandler.js +0 -45
  137. package/build/src/Handlers/HandlerFactory.d.ts +0 -6
  138. package/build/src/Handlers/HandlerFactory.js +0 -39
  139. package/build/src/Handlers/PaginateHandler.d.ts +0 -3
  140. package/build/src/Handlers/PaginateHandler.js +0 -49
  141. package/build/src/Handlers/PatchHandler.d.ts +0 -3
  142. package/build/src/Handlers/PatchHandler.js +0 -69
  143. package/build/src/Handlers/ShowHandler.d.ts +0 -3
  144. package/build/src/Handlers/ShowHandler.js +0 -55
  145. package/build/src/Handlers/StoreHandler.d.ts +0 -3
  146. package/build/src/Handlers/StoreHandler.js +0 -65
  147. package/build/src/Handlers/UpdateHandler.d.ts +0 -3
  148. package/build/src/Handlers/UpdateHandler.js +0 -69
  149. package/build/src/Middlewares/acceptLanguageMiddleware.d.ts +0 -3
  150. package/build/src/Middlewares/index.d.ts +0 -2
@@ -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,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 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.status(Enums_1.StatusCodes.NOT_FOUND).json({
25
+ error: "You can use force delete only soft-delete supported models.",
26
+ });
27
+ }
28
+ // If there is a relation, we should bind it
29
+ (0, Helpers_1.addForeignKeyQuery)(context.req, context.query, context.relation, context.parentModel);
30
+ });
@@ -0,0 +1,3 @@
1
+ import { IRequestPack } from "../../Interfaces";
2
+ declare const _default: (context: IRequestPack) => Promise<void>;
3
+ export default _default;
@@ -0,0 +1,22 @@
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
18
+ .status(Enums_1.StatusCodes.NOT_FOUND)
19
+ .json({ error: `The item is not found on ${context.model.name}.` });
20
+ }
21
+ }
22
+ });
@@ -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,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 Helpers_1 = require("../../Handlers/Helpers");
13
+ exports.default = (context) => __awaiter(void 0, void 0, void 0, function* () {
14
+ var _a, _b;
15
+ if (context.query && context.queryParser && context.conditions) {
16
+ // Users should be able to select some fields to show.
17
+ context.queryParser.applyFields(context.query, context.conditions.fields);
18
+ // Binding parent id if there is.
19
+ (0, Helpers_1.addForeignKeyQuery)(context.req, context.query, context.relation, context.parentModel);
20
+ // Users should be able to filter records
21
+ context.queryParser.applyWheres(context.query, context.conditions.q);
22
+ // User should be able to select sorting fields and types
23
+ context.queryParser.applySorting(context.query, context.conditions.sort);
24
+ }
25
+ context.result = yield context.query.paginate({
26
+ perPage: ((_a = context.conditions) === null || _a === void 0 ? void 0 : _a.per_page) || 10,
27
+ currentPage: ((_b = context.conditions) === null || _b === void 0 ? void 0 : _b.page) || 1,
28
+ isLengthAware: true,
29
+ });
30
+ });
@@ -0,0 +1,3 @@
1
+ import { IRequestPack } from "../../Interfaces";
2
+ declare const _default: (context: IRequestPack) => Promise<void>;
3
+ export default _default;
@@ -0,0 +1,22 @@
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
+ });
@@ -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.status(400).json(validation.errors);
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,35 @@
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
+ const Helpers_1 = require("../../Handlers/Helpers");
14
+ exports.default = (context) => __awaiter(void 0, void 0, void 0, function* () {
15
+ var _a;
16
+ if (context.queryParser && context.query && context.conditions) {
17
+ // Users should be able to filter records
18
+ context.queryParser.applyWheres(context.query, ((_a = context.conditions) === null || _a === void 0 ? void 0 : _a.q) || []);
19
+ // Users should be able to select some fields to show.
20
+ context.queryParser.applyFields(context.query, context.conditions.fields);
21
+ // If there is a relation, we should bind it
22
+ (0, Helpers_1.addForeignKeyQuery)(context.req, context.query, context.relation, context.parentModel);
23
+ // We should check the parameter type
24
+ const value = context.params[context.model.instance.primaryKey];
25
+ (0, Helpers_1.checkPrimaryKeyValueType)(context.model, value);
26
+ // Adding the main query
27
+ context.query.where(context.model.instance.primaryKey, value);
28
+ context.item = yield context.query.first();
29
+ if (!context.item) {
30
+ context.res
31
+ .status(Enums_1.StatusCodes.NOT_FOUND)
32
+ .json({ error: `The item is not found on ${context.model.name}.` });
33
+ }
34
+ }
35
+ });
@@ -0,0 +1,3 @@
1
+ import { IRequestPack } from "../../Interfaces";
2
+ declare const _default: (context: IRequestPack) => Promise<void>;
3
+ export default _default;
@@ -0,0 +1,22 @@
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
+ });
@@ -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,29 @@
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
+ 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
25
+ .status(Enums_1.StatusCodes.NOT_FOUND)
26
+ .json({ error: `The item is not found on ${context.model.name}.` });
27
+ }
28
+ }
29
+ });
@@ -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
+ context.query = context.database.from(context.model.instance.table);
15
+ // If there is a relation, we should bind it
16
+ (0, Helpers_1.addForeignKeyQuery)(context.req, context.query, context.relation, context.parentModel);
17
+ // If there is a deletedAtColumn, it means that this table support soft-delete
18
+ (0, Helpers_1.addSoftDeleteQuery)(context.model, null, context.query);
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,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;
15
+ // We should try to get related data if there is any
16
+ yield (0, Helpers_1.getRelatedData)(context.version, [context.item], ((_a = context.conditions) === null || _a === void 0 ? void 0 : _a.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.item);
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,18 @@
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
+ // Serializing the data by the model's serialize method
15
+ context.item = yield (0, Helpers_1.serializeData)(context.version, context.item, context.model.serialize, context.handlerType, context.req);
16
+ // Filtering hidden fields from the response data.
17
+ (0, Helpers_1.filterHiddenFields)([context.item], context.model.instance.hiddens);
18
+ });
@@ -0,0 +1,8 @@
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
+ PrepareGetPhase: (context: import("../../Interfaces").IRequestPack) => Promise<void>;
6
+ GetPhase: (context: import("../../Interfaces").IRequestPack) => Promise<void>;
7
+ };
8
+ export default _default;