@merkaly/api 0.2.5-6 → 0.2.5-7

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 (196) hide show
  1. package/.output/abstracts/abstract.entity.d.ts +14 -0
  2. package/.output/abstracts/abstract.validator.d.ts +24 -0
  3. package/.output/abstracts/abstract.validator.js +118 -0
  4. package/.output/exceptions/missing-identity.exception.d.ts +5 -0
  5. package/.output/exceptions/missing-identity.exception.js +30 -0
  6. package/.output/modules/asset/files/file.entity.d.ts +9 -0
  7. package/.output/modules/asset/files/file.schema.d.ts +34 -0
  8. package/.output/modules/asset/files/file.schema.js +10 -0
  9. package/.output/modules/auth/organizations/organization.entity.d.ts +8 -0
  10. package/.output/modules/auth/users/user.entity.d.ts +9 -0
  11. package/.output/modules/auth/users/user.schema.d.ts +34 -0
  12. package/.output/modules/auth/users/user.schema.js +10 -0
  13. package/.output/modules/auth/users/user.validator.d.ts +12 -0
  14. package/.output/modules/auth/users/user.validator.js +58 -0
  15. package/.output/modules/inventory/brands/brand.entity.d.ts +6 -0
  16. package/.output/modules/inventory/brands/brand.schema.d.ts +34 -0
  17. package/.output/modules/inventory/brands/brand.schema.js +10 -0
  18. package/.output/modules/inventory/brands/brand.validator.d.ts +11 -0
  19. package/.output/modules/inventory/brands/brand.validator.js +74 -0
  20. package/.output/modules/inventory/categories/category.entity.d.ts +6 -0
  21. package/.output/modules/inventory/categories/category.schema.d.ts +34 -0
  22. package/.output/modules/inventory/categories/category.schema.js +10 -0
  23. package/.output/modules/inventory/categories/category.validator.d.ts +8 -0
  24. package/.output/modules/inventory/categories/category.validator.js +42 -0
  25. package/.output/modules/inventory/complements/complement.entity.d.ts +6 -0
  26. package/.output/modules/inventory/complements/complement.validator.d.ts +10 -0
  27. package/.output/modules/inventory/complements/complement.validator.js +52 -0
  28. package/.output/modules/inventory/products/documents/attribute.document.d.ts +5 -0
  29. package/.output/modules/inventory/products/documents/attribute.document.js +33 -0
  30. package/.output/modules/inventory/products/documents/dimension.document.d.ts +6 -0
  31. package/.output/modules/inventory/products/documents/dimension.document.js +35 -0
  32. package/.output/modules/inventory/products/product.entity.d.ts +19 -0
  33. package/.output/modules/inventory/products/product.schema.d.ts +34 -0
  34. package/.output/modules/inventory/products/product.schema.js +18 -0
  35. package/.output/modules/inventory/products/product.validator.d.ts +29 -0
  36. package/.output/modules/inventory/products/product.validator.js +179 -0
  37. package/.output/modules/inventory/products/validators/attributes.validator.d.ts +5 -0
  38. package/.output/modules/inventory/products/validators/attributes.validator.js +35 -0
  39. package/.output/modules/inventory/products/validators/dimension.validator.d.ts +6 -0
  40. package/.output/modules/inventory/products/validators/dimension.validator.js +38 -0
  41. package/.output/modules/sale/customers/customer.entity.d.ts +8 -0
  42. package/.output/modules/sale/customers/customer.schema.d.ts +34 -0
  43. package/.output/modules/sale/customers/customer.schema.js +10 -0
  44. package/.output/modules/sale/customers/customer.validator.d.ts +14 -0
  45. package/.output/modules/sale/customers/customer.validator.js +94 -0
  46. package/.output/modules/sale/orders/documents/address.document.d.ts +8 -0
  47. package/.output/modules/sale/orders/documents/address.document.js +43 -0
  48. package/.output/modules/sale/orders/documents/status.document.d.ts +8 -0
  49. package/.output/modules/sale/orders/documents/status.document.js +34 -0
  50. package/.output/modules/sale/orders/entities/item.entity.d.ts +38 -0
  51. package/.output/modules/sale/orders/enums/order.status.d.ts +6 -0
  52. package/.output/modules/sale/orders/enums/order.status.js +10 -0
  53. package/.output/modules/sale/orders/order.entity.d.ts +21 -0
  54. package/.output/modules/sale/orders/order.validator.d.ts +16 -0
  55. package/.output/modules/sale/orders/order.validator.js +86 -0
  56. package/.output/modules/sale/orders/validators/address.validator.d.ts +17 -0
  57. package/.output/modules/sale/orders/validators/address.validator.js +81 -0
  58. package/{src/modules/sale/orders/validators/billing.validator.ts → .output/modules/sale/orders/validators/billing.validator.d.ts} +4 -7
  59. package/.output/modules/sale/orders/validators/billing.validator.js +13 -0
  60. package/.output/modules/sale/orders/validators/item.validator.d.ts +5 -0
  61. package/.output/modules/sale/orders/validators/item.validator.js +32 -0
  62. package/.output/modules/sale/orders/validators/payment.validator.d.ts +10 -0
  63. package/.output/modules/sale/orders/validators/payment.validator.js +62 -0
  64. package/.output/modules/sale/orders/validators/shipping.validator.d.ts +9 -0
  65. package/.output/modules/sale/orders/validators/shipping.validator.js +14 -0
  66. package/.output/modules/sale/payments/entities/status.entity.d.ts +8 -0
  67. package/.output/modules/sale/payments/enums/billing.type.d.ts +6 -0
  68. package/.output/modules/sale/payments/enums/billing.type.js +10 -0
  69. package/.output/modules/sale/payments/enums/payment.status.d.ts +7 -0
  70. package/.output/modules/sale/payments/enums/payment.status.js +11 -0
  71. package/.output/modules/sale/payments/enums/shipping.type.d.ts +4 -0
  72. package/.output/modules/sale/payments/enums/shipping.type.js +8 -0
  73. package/.output/modules/sale/payments/payment.entity.d.ts +12 -0
  74. package/.output/modules/sale/payments/payment.schema.d.ts +34 -0
  75. package/.output/modules/sale/payments/payment.schema.js +14 -0
  76. package/.output/modules/sale/payments/payment.validator.d.ts +16 -0
  77. package/.output/modules/sale/payments/payment.validator.js +77 -0
  78. package/.output/tsconfig.package.tsbuildinfo +1 -0
  79. package/package.json +4 -1
  80. package/.bin/deploy.sh +0 -9
  81. package/.bin/package.sh +0 -12
  82. package/.docker/Dockerfile +0 -21
  83. package/.dockerignore +0 -12
  84. package/.github/dependabot.yml +0 -17
  85. package/.github/semantic.yml +0 -5
  86. package/.github/workflows/pull_request.yml +0 -35
  87. package/.prettierrc +0 -5
  88. package/app.ts +0 -11
  89. package/authCertificate.pem +0 -19
  90. package/nest-cli.json +0 -8
  91. package/src/abstracts/abstarct.repository.ts +0 -62
  92. package/src/abstracts/abstract.controller.ts +0 -18
  93. package/src/abstracts/abstract.entity.ts +0 -22
  94. package/src/abstracts/abstract.router.ts +0 -7
  95. package/src/abstracts/abstract.validator.ts +0 -61
  96. package/src/app.config.ts +0 -59
  97. package/src/app.console.ts +0 -24
  98. package/src/app.guard.ts +0 -39
  99. package/src/app.module.ts +0 -54
  100. package/src/app.strategy.ts +0 -21
  101. package/src/commands/seed.command.ts +0 -263
  102. package/src/decorators/public.decorator.ts +0 -5
  103. package/src/decorators/user.decorator.ts +0 -30
  104. package/src/exceptions/missing-identity.exception.ts +0 -11
  105. package/src/interceptors/mongoose.interceptor.ts +0 -63
  106. package/src/main.ts +0 -27
  107. package/src/middlewares/router.middleware.ts +0 -14
  108. package/src/modules/asset/asset.module.ts +0 -19
  109. package/src/modules/asset/files/file.controller.ts +0 -22
  110. package/src/modules/asset/files/file.entity.ts +0 -24
  111. package/src/modules/asset/files/file.module.ts +0 -21
  112. package/src/modules/asset/files/file.repository.ts +0 -44
  113. package/src/modules/asset/files/file.schema.ts +0 -8
  114. package/src/modules/asset/files/file.service.ts +0 -4
  115. package/src/modules/auth/auth.controller.ts +0 -57
  116. package/src/modules/auth/auth.module.ts +0 -20
  117. package/src/modules/auth/organizations/organization.controller.ts +0 -20
  118. package/src/modules/auth/organizations/organization.entity.ts +0 -22
  119. package/src/modules/auth/organizations/organization.module.ts +0 -21
  120. package/src/modules/auth/organizations/organization.repository.ts +0 -16
  121. package/src/modules/auth/organizations/organization.schema.ts +0 -8
  122. package/src/modules/auth/users/user.controller.ts +0 -23
  123. package/src/modules/auth/users/user.entity.ts +0 -25
  124. package/src/modules/auth/users/user.module.ts +0 -20
  125. package/src/modules/auth/users/user.repository.ts +0 -79
  126. package/src/modules/auth/users/user.schema.ts +0 -8
  127. package/src/modules/auth/users/user.validator.ts +0 -32
  128. package/src/modules/command.module.ts +0 -15
  129. package/src/modules/global.module.ts +0 -46
  130. package/src/modules/inventory/brands/brand.controller.ts +0 -44
  131. package/src/modules/inventory/brands/brand.entity.ts +0 -20
  132. package/src/modules/inventory/brands/brand.module.ts +0 -20
  133. package/src/modules/inventory/brands/brand.repository.ts +0 -40
  134. package/src/modules/inventory/brands/brand.schema.ts +0 -8
  135. package/src/modules/inventory/brands/brand.validator.ts +0 -31
  136. package/src/modules/inventory/categories/category.controller.ts +0 -42
  137. package/src/modules/inventory/categories/category.entity.ts +0 -15
  138. package/src/modules/inventory/categories/category.module.ts +0 -19
  139. package/src/modules/inventory/categories/category.repository.ts +0 -34
  140. package/src/modules/inventory/categories/category.schema.ts +0 -8
  141. package/src/modules/inventory/categories/category.validator.ts +0 -20
  142. package/src/modules/inventory/complements/complement.controller.ts +0 -41
  143. package/src/modules/inventory/complements/complement.entity.ts +0 -15
  144. package/src/modules/inventory/complements/complement.module.ts +0 -19
  145. package/src/modules/inventory/complements/complement.repository.ts +0 -37
  146. package/src/modules/inventory/complements/complement.schema.ts +0 -8
  147. package/src/modules/inventory/complements/complement.validator.ts +0 -28
  148. package/src/modules/inventory/inventory.module.ts +0 -23
  149. package/src/modules/inventory/products/documents/attribute.document.ts +0 -14
  150. package/src/modules/inventory/products/documents/dimension.document.ts +0 -16
  151. package/src/modules/inventory/products/product.controller.ts +0 -62
  152. package/src/modules/inventory/products/product.entity.ts +0 -46
  153. package/src/modules/inventory/products/product.module.ts +0 -19
  154. package/src/modules/inventory/products/product.repository.ts +0 -64
  155. package/src/modules/inventory/products/product.schema.ts +0 -19
  156. package/src/modules/inventory/products/product.validator.ts +0 -132
  157. package/src/modules/inventory/products/validators/attributes.validator.ts +0 -15
  158. package/src/modules/inventory/products/validators/dimension.validator.ts +0 -19
  159. package/src/modules/sale/customers/customer.controller.ts +0 -41
  160. package/src/modules/sale/customers/customer.entity.ts +0 -19
  161. package/src/modules/sale/customers/customer.module.ts +0 -18
  162. package/src/modules/sale/customers/customer.repository.ts +0 -30
  163. package/src/modules/sale/customers/customer.schema.ts +0 -8
  164. package/src/modules/sale/customers/customer.validator.ts +0 -43
  165. package/src/modules/sale/orders/documents/address.document.ts +0 -22
  166. package/src/modules/sale/orders/documents/status.document.ts +0 -17
  167. package/src/modules/sale/orders/entities/item.entity.ts +0 -24
  168. package/src/modules/sale/orders/enums/order.status.ts +0 -6
  169. package/src/modules/sale/orders/order.controller.ts +0 -65
  170. package/src/modules/sale/orders/order.entity.ts +0 -46
  171. package/src/modules/sale/orders/order.module.ts +0 -22
  172. package/src/modules/sale/orders/order.repository.ts +0 -122
  173. package/src/modules/sale/orders/order.schema.ts +0 -36
  174. package/src/modules/sale/orders/order.validator.ts +0 -44
  175. package/src/modules/sale/orders/validators/address.validator.ts +0 -50
  176. package/src/modules/sale/orders/validators/item.validator.ts +0 -14
  177. package/src/modules/sale/orders/validators/payment.validator.ts +0 -44
  178. package/src/modules/sale/orders/validators/shipping.validator.ts +0 -14
  179. package/src/modules/sale/payments/entities/status.entity.ts +0 -17
  180. package/src/modules/sale/payments/enums/billing.type.ts +0 -6
  181. package/src/modules/sale/payments/enums/payment.status.ts +0 -7
  182. package/src/modules/sale/payments/enums/shipping.type.ts +0 -4
  183. package/src/modules/sale/payments/payment.controller.ts +0 -45
  184. package/src/modules/sale/payments/payment.entity.ts +0 -25
  185. package/src/modules/sale/payments/payment.module.ts +0 -20
  186. package/src/modules/sale/payments/payment.repository.ts +0 -57
  187. package/src/modules/sale/payments/payment.schema.ts +0 -14
  188. package/src/modules/sale/payments/payment.validator.ts +0 -32
  189. package/src/modules/sale/sale.module.ts +0 -20
  190. package/src/services/auth0.service.ts +0 -49
  191. package/src/services/mongo.service.ts +0 -52
  192. package/test/auth/auth.spec.ts +0 -20
  193. package/test/main.ts +0 -12
  194. package/tsconfig.build.json +0 -4
  195. package/tsconfig.json +0 -21
  196. package/tsconfig.package.json +0 -22
@@ -0,0 +1,94 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
18
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
19
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
20
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
21
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
22
+ };
23
+ var __metadata = (this && this.__metadata) || function (k, v) {
24
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
25
+ };
26
+ Object.defineProperty(exports, "__esModule", { value: true });
27
+ exports.UpdateCustomerValidator = exports.CreateCustomerValidator = void 0;
28
+ var class_transformer_1 = require("class-transformer");
29
+ var class_validator_1 = require("class-validator");
30
+ var abstract_validator_1 = require("../../../abstracts/abstract.validator");
31
+ var address_validator_1 = require("../orders/validators/address.validator");
32
+ var CreateCustomerValidator = exports.CreateCustomerValidator = (function (_super) {
33
+ __extends(CreateCustomerValidator, _super);
34
+ function CreateCustomerValidator() {
35
+ var _this = _super !== null && _super.apply(this, arguments) || this;
36
+ _this.addresses = [];
37
+ return _this;
38
+ }
39
+ __decorate([
40
+ (0, class_validator_1.IsString)(),
41
+ __metadata("design:type", String)
42
+ ], CreateCustomerValidator.prototype, "name", void 0);
43
+ __decorate([
44
+ (0, class_validator_1.IsEmail)(),
45
+ (0, class_transformer_1.Transform)(function (_a) {
46
+ var value = _a.value;
47
+ return String(value).toLowerCase();
48
+ }),
49
+ __metadata("design:type", String)
50
+ ], CreateCustomerValidator.prototype, "email", void 0);
51
+ __decorate([
52
+ (0, class_validator_1.IsString)(),
53
+ (0, class_validator_1.IsOptional)(),
54
+ __metadata("design:type", String)
55
+ ], CreateCustomerValidator.prototype, "phone", void 0);
56
+ __decorate([
57
+ (0, class_validator_1.IsArray)(),
58
+ (0, class_transformer_1.Type)(function () { return address_validator_1.AddressValidator; }),
59
+ (0, class_validator_1.ValidateNested)(),
60
+ __metadata("design:type", Array)
61
+ ], CreateCustomerValidator.prototype, "addresses", void 0);
62
+ return CreateCustomerValidator;
63
+ }(abstract_validator_1.AbstractValidator));
64
+ var UpdateCustomerValidator = exports.UpdateCustomerValidator = (function () {
65
+ function UpdateCustomerValidator() {
66
+ }
67
+ __decorate([
68
+ (0, class_validator_1.IsString)(),
69
+ (0, class_validator_1.IsOptional)(),
70
+ __metadata("design:type", String)
71
+ ], UpdateCustomerValidator.prototype, "name", void 0);
72
+ __decorate([
73
+ (0, class_validator_1.IsEmail)(),
74
+ (0, class_transformer_1.Transform)(function (_a) {
75
+ var value = _a.value;
76
+ return String(value).toLowerCase();
77
+ }),
78
+ (0, class_validator_1.IsOptional)(),
79
+ __metadata("design:type", String)
80
+ ], UpdateCustomerValidator.prototype, "email", void 0);
81
+ __decorate([
82
+ (0, class_validator_1.IsPhoneNumber)(),
83
+ (0, class_validator_1.IsOptional)(),
84
+ __metadata("design:type", String)
85
+ ], UpdateCustomerValidator.prototype, "phone", void 0);
86
+ __decorate([
87
+ (0, class_validator_1.IsArray)(),
88
+ (0, class_transformer_1.Type)(function () { return address_validator_1.AddressValidator; }),
89
+ (0, class_validator_1.ValidateNested)(),
90
+ (0, class_validator_1.IsOptional)(),
91
+ __metadata("design:type", Array)
92
+ ], UpdateCustomerValidator.prototype, "addresses", void 0);
93
+ return UpdateCustomerValidator;
94
+ }());
@@ -0,0 +1,8 @@
1
+ export declare class AddressDocument {
2
+ line1: string;
3
+ line2: string;
4
+ state: string;
5
+ city: string;
6
+ country: string;
7
+ code: string;
8
+ }
@@ -0,0 +1,43 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.AddressDocument = void 0;
13
+ var mongoose_1 = require("@nestjs/mongoose");
14
+ var mongoose_2 = require("mongoose");
15
+ var AddressDocument = exports.AddressDocument = (function () {
16
+ function AddressDocument() {
17
+ }
18
+ __decorate([
19
+ (0, mongoose_1.Prop)({ required: true, type: mongoose_2.Schema.Types.String }),
20
+ __metadata("design:type", String)
21
+ ], AddressDocument.prototype, "line1", void 0);
22
+ __decorate([
23
+ (0, mongoose_1.Prop)({ type: mongoose_2.Schema.Types.String }),
24
+ __metadata("design:type", String)
25
+ ], AddressDocument.prototype, "line2", void 0);
26
+ __decorate([
27
+ (0, mongoose_1.Prop)({ required: true, type: mongoose_2.Schema.Types.String }),
28
+ __metadata("design:type", String)
29
+ ], AddressDocument.prototype, "state", void 0);
30
+ __decorate([
31
+ (0, mongoose_1.Prop)({ required: true, type: mongoose_2.Schema.Types.String }),
32
+ __metadata("design:type", String)
33
+ ], AddressDocument.prototype, "city", void 0);
34
+ __decorate([
35
+ (0, mongoose_1.Prop)({ type: mongoose_2.Schema.Types.String }),
36
+ __metadata("design:type", String)
37
+ ], AddressDocument.prototype, "country", void 0);
38
+ __decorate([
39
+ (0, mongoose_1.Prop)({ required: true, type: mongoose_2.Schema.Types.String }),
40
+ __metadata("design:type", String)
41
+ ], AddressDocument.prototype, "code", void 0);
42
+ return AddressDocument;
43
+ }());
@@ -0,0 +1,8 @@
1
+ import { MaybeEntity } from '../../../../abstracts/abstract.entity';
2
+ import { UserEntity } from '../../../auth/users/user.entity';
3
+ import { OrderStatus } from '../enums/order.status';
4
+ export declare class StatusDocument {
5
+ name: OrderStatus;
6
+ user: MaybeEntity<UserEntity>;
7
+ date: Date;
8
+ }
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.StatusDocument = void 0;
13
+ var mongoose_1 = require("@nestjs/mongoose");
14
+ var mongoose_2 = require("mongoose");
15
+ var user_schema_1 = require("../../../auth/users/user.schema");
16
+ var order_status_1 = require("../enums/order.status");
17
+ var StatusDocument = exports.StatusDocument = (function () {
18
+ function StatusDocument() {
19
+ this.date = new Date();
20
+ }
21
+ __decorate([
22
+ (0, mongoose_1.Prop)({ default: order_status_1.OrderStatus.CREATED, enum: order_status_1.OrderStatus, required: true, type: mongoose_2.Schema.Types.String }),
23
+ __metadata("design:type", String)
24
+ ], StatusDocument.prototype, "name", void 0);
25
+ __decorate([
26
+ (0, mongoose_1.Prop)({ ref: user_schema_1.UserSchema.name, required: true, type: mongoose_2.Schema.Types.ObjectId }),
27
+ __metadata("design:type", Object)
28
+ ], StatusDocument.prototype, "user", void 0);
29
+ __decorate([
30
+ (0, mongoose_1.Prop)({ default: function () { return new Date(); }, type: mongoose_2.Schema.Types.Date }),
31
+ __metadata("design:type", Object)
32
+ ], StatusDocument.prototype, "date", void 0);
33
+ return StatusDocument;
34
+ }());
@@ -0,0 +1,38 @@
1
+ /// <reference types="mongoose/types/aggregate" />
2
+ /// <reference types="mongoose/types/callback" />
3
+ /// <reference types="mongoose/types/collection" />
4
+ /// <reference types="mongoose/types/connection" />
5
+ /// <reference types="mongoose/types/cursor" />
6
+ /// <reference types="mongoose/types/document" />
7
+ /// <reference types="mongoose/types/error" />
8
+ /// <reference types="mongoose/types/expressions" />
9
+ /// <reference types="mongoose/types/helpers" />
10
+ /// <reference types="mongoose/types/middlewares" />
11
+ /// <reference types="mongoose/types/indexes" />
12
+ /// <reference types="mongoose/types/models" />
13
+ /// <reference types="mongoose/types/mongooseoptions" />
14
+ /// <reference types="mongoose/types/pipelinestage" />
15
+ /// <reference types="mongoose/types/populate" />
16
+ /// <reference types="mongoose/types/query" />
17
+ /// <reference types="mongoose/types/schemaoptions" />
18
+ /// <reference types="mongoose/types/schematypes" />
19
+ /// <reference types="mongoose/types/session" />
20
+ /// <reference types="mongoose/types/types" />
21
+ /// <reference types="mongoose/types/utility" />
22
+ /// <reference types="mongoose/types/validation" />
23
+ /// <reference types="mongoose/types/virtuals" />
24
+ /// <reference types="mongoose/types/inferschematype" />
25
+ import { Schema } from 'mongoose';
26
+ import type { MaybeEntity } from '../../../../abstracts/abstract.entity';
27
+ import { ProductEntity } from '../../../inventory/products/product.entity';
28
+ export declare class ItemEntity {
29
+ product: MaybeEntity<ProductEntity>;
30
+ price?: number;
31
+ quantity: number;
32
+ description: string;
33
+ }
34
+ export declare const ItemSchema: Schema<ItemEntity, import("mongoose").Model<ItemEntity, any, any, any, import("mongoose").Document<unknown, any, ItemEntity> & ItemEntity & {
35
+ _id: import("mongoose").Types.ObjectId;
36
+ }, any>, {}, {}, {}, {}, import("mongoose").DefaultSchemaOptions, ItemEntity, import("mongoose").Document<unknown, {}, import("mongoose").FlatRecord<ItemEntity>> & import("mongoose").FlatRecord<ItemEntity> & {
37
+ _id: import("mongoose").Types.ObjectId;
38
+ }>;
@@ -0,0 +1,6 @@
1
+ export declare enum OrderStatus {
2
+ CREATED = "CREATED",
3
+ ACCEPTED = "ACCEPTED",
4
+ COMPLETED = "COMPLETED",
5
+ CANCELED = "CANCELED"
6
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OrderStatus = void 0;
4
+ var OrderStatus;
5
+ (function (OrderStatus) {
6
+ OrderStatus["CREATED"] = "CREATED";
7
+ OrderStatus["ACCEPTED"] = "ACCEPTED";
8
+ OrderStatus["COMPLETED"] = "COMPLETED";
9
+ OrderStatus["CANCELED"] = "CANCELED";
10
+ })(OrderStatus || (exports.OrderStatus = OrderStatus = {}));
@@ -0,0 +1,21 @@
1
+ import type { MaybeEntity } from '../../../abstracts/abstract.entity';
2
+ import { AbstractEntity } from '../../../abstracts/abstract.entity';
3
+ import { UserEntity } from '../../auth/users/user.entity';
4
+ import { CustomerEntity } from '../customers/customer.entity';
5
+ import { PaymentEntity } from '../payments/payment.entity';
6
+ import { AddressDocument } from './documents/address.document';
7
+ import { StatusDocument } from './documents/status.document';
8
+ import { ItemEntity } from './entities/item.entity';
9
+ export declare class OrderEntity extends AbstractEntity {
10
+ number: number;
11
+ items: ItemEntity[];
12
+ status: StatusDocument[];
13
+ payment: MaybeEntity<PaymentEntity>;
14
+ customer: MaybeEntity<CustomerEntity>;
15
+ user: MaybeEntity<UserEntity>;
16
+ address: AddressDocument;
17
+ description: string;
18
+ readonly total: number;
19
+ readonly fullNumber: string;
20
+ readonly lastStatus: StatusDocument;
21
+ }
@@ -0,0 +1,16 @@
1
+ import { IdMongoValidator } from '../../../abstracts/abstract.validator';
2
+ import { OrderStatus } from './enums/order.status';
3
+ import { BillingValidator } from './validators/billing.validator';
4
+ import { CreateItemValidator } from './validators/item.validator';
5
+ import { ShippingValidator } from './validators/shipping.validator';
6
+ export declare class CreateOrderValidator {
7
+ items: CreateItemValidator[];
8
+ billing: BillingValidator;
9
+ shipping: ShippingValidator;
10
+ description: string;
11
+ }
12
+ export declare class UpdateOrderValidator extends CreateOrderValidator {
13
+ }
14
+ export declare class UpdateOrderStatusValidator extends IdMongoValidator {
15
+ type: OrderStatus;
16
+ }
@@ -0,0 +1,86 @@
1
+ "use strict";
2
+ var __extends = (this && this.__extends) || (function () {
3
+ var extendStatics = function (d, b) {
4
+ extendStatics = Object.setPrototypeOf ||
5
+ ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
6
+ function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
7
+ return extendStatics(d, b);
8
+ };
9
+ return function (d, b) {
10
+ if (typeof b !== "function" && b !== null)
11
+ throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
12
+ extendStatics(d, b);
13
+ function __() { this.constructor = d; }
14
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
+ };
16
+ })();
17
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
18
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
19
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
20
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
21
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
22
+ };
23
+ var __metadata = (this && this.__metadata) || function (k, v) {
24
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
25
+ };
26
+ Object.defineProperty(exports, "__esModule", { value: true });
27
+ exports.UpdateOrderStatusValidator = exports.UpdateOrderValidator = exports.CreateOrderValidator = void 0;
28
+ var class_transformer_1 = require("class-transformer");
29
+ var class_validator_1 = require("class-validator");
30
+ var abstract_validator_1 = require("../../../abstracts/abstract.validator");
31
+ var order_status_1 = require("./enums/order.status");
32
+ var billing_validator_1 = require("./validators/billing.validator");
33
+ var item_validator_1 = require("./validators/item.validator");
34
+ var shipping_validator_1 = require("./validators/shipping.validator");
35
+ var CreateOrderValidator = exports.CreateOrderValidator = (function () {
36
+ function CreateOrderValidator() {
37
+ this.items = [];
38
+ this.billing = new billing_validator_1.BillingValidator();
39
+ this.shipping = new shipping_validator_1.ShippingValidator();
40
+ this.description = String();
41
+ }
42
+ __decorate([
43
+ (0, class_validator_1.IsArray)(),
44
+ (0, class_validator_1.ArrayNotEmpty)(),
45
+ (0, class_transformer_1.Type)(function () { return item_validator_1.CreateItemValidator; }),
46
+ (0, class_validator_1.ValidateNested)(),
47
+ __metadata("design:type", Array)
48
+ ], CreateOrderValidator.prototype, "items", void 0);
49
+ __decorate([
50
+ (0, class_transformer_1.Type)(function () { return billing_validator_1.BillingValidator; }),
51
+ (0, class_validator_1.ValidateNested)(),
52
+ (0, class_validator_1.IsNotEmptyObject)(),
53
+ __metadata("design:type", Object)
54
+ ], CreateOrderValidator.prototype, "billing", void 0);
55
+ __decorate([
56
+ (0, class_transformer_1.Type)(function () { return shipping_validator_1.ShippingValidator; }),
57
+ (0, class_validator_1.ValidateNested)(),
58
+ (0, class_validator_1.IsNotEmptyObject)(),
59
+ __metadata("design:type", Object)
60
+ ], CreateOrderValidator.prototype, "shipping", void 0);
61
+ __decorate([
62
+ (0, class_validator_1.IsString)(),
63
+ (0, class_validator_1.IsOptional)(),
64
+ __metadata("design:type", Object)
65
+ ], CreateOrderValidator.prototype, "description", void 0);
66
+ return CreateOrderValidator;
67
+ }());
68
+ var UpdateOrderValidator = (function (_super) {
69
+ __extends(UpdateOrderValidator, _super);
70
+ function UpdateOrderValidator() {
71
+ return _super !== null && _super.apply(this, arguments) || this;
72
+ }
73
+ return UpdateOrderValidator;
74
+ }(CreateOrderValidator));
75
+ exports.UpdateOrderValidator = UpdateOrderValidator;
76
+ var UpdateOrderStatusValidator = exports.UpdateOrderStatusValidator = (function (_super) {
77
+ __extends(UpdateOrderStatusValidator, _super);
78
+ function UpdateOrderStatusValidator() {
79
+ return _super !== null && _super.apply(this, arguments) || this;
80
+ }
81
+ __decorate([
82
+ (0, class_validator_1.IsEnum)(order_status_1.OrderStatus),
83
+ __metadata("design:type", String)
84
+ ], UpdateOrderStatusValidator.prototype, "type", void 0);
85
+ return UpdateOrderStatusValidator;
86
+ }(abstract_validator_1.IdMongoValidator));
@@ -0,0 +1,17 @@
1
+ export declare class CreateAddressValidator {
2
+ street: string;
3
+ complement: string;
4
+ city: string;
5
+ state: string;
6
+ number: string;
7
+ neighborhood: string;
8
+ zipCode: string;
9
+ }
10
+ export declare class AddressValidator {
11
+ line1: string;
12
+ line2: string;
13
+ city: string;
14
+ state: string;
15
+ country: string;
16
+ code: string;
17
+ }
@@ -0,0 +1,81 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.AddressValidator = exports.CreateAddressValidator = void 0;
13
+ var class_validator_1 = require("class-validator");
14
+ var CreateAddressValidator = exports.CreateAddressValidator = (function () {
15
+ function CreateAddressValidator() {
16
+ }
17
+ __decorate([
18
+ (0, class_validator_1.IsString)(),
19
+ __metadata("design:type", String)
20
+ ], CreateAddressValidator.prototype, "street", void 0);
21
+ __decorate([
22
+ (0, class_validator_1.IsString)(),
23
+ (0, class_validator_1.IsOptional)(),
24
+ __metadata("design:type", String)
25
+ ], CreateAddressValidator.prototype, "complement", void 0);
26
+ __decorate([
27
+ (0, class_validator_1.IsString)(),
28
+ __metadata("design:type", String)
29
+ ], CreateAddressValidator.prototype, "city", void 0);
30
+ __decorate([
31
+ (0, class_validator_1.IsString)(),
32
+ __metadata("design:type", String)
33
+ ], CreateAddressValidator.prototype, "state", void 0);
34
+ __decorate([
35
+ (0, class_validator_1.IsString)(),
36
+ __metadata("design:type", String)
37
+ ], CreateAddressValidator.prototype, "number", void 0);
38
+ __decorate([
39
+ (0, class_validator_1.IsString)(),
40
+ (0, class_validator_1.IsOptional)(),
41
+ __metadata("design:type", String)
42
+ ], CreateAddressValidator.prototype, "neighborhood", void 0);
43
+ __decorate([
44
+ (0, class_validator_1.IsString)(),
45
+ (0, class_validator_1.Matches)(/[a-zA-Z0-9_-]{8}/, { message: 'zipCode must be valid' }),
46
+ __metadata("design:type", String)
47
+ ], CreateAddressValidator.prototype, "zipCode", void 0);
48
+ return CreateAddressValidator;
49
+ }());
50
+ var AddressValidator = exports.AddressValidator = (function () {
51
+ function AddressValidator() {
52
+ }
53
+ __decorate([
54
+ (0, class_validator_1.IsString)(),
55
+ __metadata("design:type", String)
56
+ ], AddressValidator.prototype, "line1", void 0);
57
+ __decorate([
58
+ (0, class_validator_1.IsString)(),
59
+ (0, class_validator_1.IsOptional)(),
60
+ __metadata("design:type", String)
61
+ ], AddressValidator.prototype, "line2", void 0);
62
+ __decorate([
63
+ (0, class_validator_1.IsString)(),
64
+ __metadata("design:type", String)
65
+ ], AddressValidator.prototype, "city", void 0);
66
+ __decorate([
67
+ (0, class_validator_1.IsString)(),
68
+ __metadata("design:type", String)
69
+ ], AddressValidator.prototype, "state", void 0);
70
+ __decorate([
71
+ (0, class_validator_1.IsString)(),
72
+ (0, class_validator_1.IsISO31661Alpha2)(),
73
+ __metadata("design:type", String)
74
+ ], AddressValidator.prototype, "country", void 0);
75
+ __decorate([
76
+ (0, class_validator_1.IsString)(),
77
+ (0, class_validator_1.Matches)(/[a-zA-Z0-9_-]{8}/, { message: 'zipCode must be valid' }),
78
+ __metadata("design:type", String)
79
+ ], AddressValidator.prototype, "code", void 0);
80
+ return AddressValidator;
81
+ }());
@@ -1,11 +1,8 @@
1
1
  import { BillingType } from '../../payments/enums/billing.type';
2
2
  import { AddressValidator } from './address.validator';
3
3
  import { PaymentValidator } from './payment.validator';
4
-
5
- export class BillingValidator {
6
- public type: BillingType;
7
-
8
- public payload = new PaymentValidator();
9
-
10
- public address = new AddressValidator();
4
+ export declare class BillingValidator {
5
+ type: BillingType;
6
+ payload: PaymentValidator;
7
+ address: AddressValidator;
11
8
  }
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BillingValidator = void 0;
4
+ var address_validator_1 = require("./address.validator");
5
+ var payment_validator_1 = require("./payment.validator");
6
+ var BillingValidator = (function () {
7
+ function BillingValidator() {
8
+ this.payload = new payment_validator_1.PaymentValidator();
9
+ this.address = new address_validator_1.AddressValidator();
10
+ }
11
+ return BillingValidator;
12
+ }());
13
+ exports.BillingValidator = BillingValidator;
@@ -0,0 +1,5 @@
1
+ export declare class CreateItemValidator {
2
+ product: string;
3
+ quantity: number;
4
+ description?: string;
5
+ }
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.CreateItemValidator = void 0;
13
+ var class_validator_1 = require("class-validator");
14
+ var CreateItemValidator = exports.CreateItemValidator = (function () {
15
+ function CreateItemValidator() {
16
+ }
17
+ __decorate([
18
+ (0, class_validator_1.IsMongoId)(),
19
+ __metadata("design:type", String)
20
+ ], CreateItemValidator.prototype, "product", void 0);
21
+ __decorate([
22
+ (0, class_validator_1.IsPositive)(),
23
+ (0, class_validator_1.IsInt)(),
24
+ __metadata("design:type", Number)
25
+ ], CreateItemValidator.prototype, "quantity", void 0);
26
+ __decorate([
27
+ (0, class_validator_1.IsString)(),
28
+ (0, class_validator_1.IsOptional)(),
29
+ __metadata("design:type", String)
30
+ ], CreateItemValidator.prototype, "description", void 0);
31
+ return CreateItemValidator;
32
+ }());
@@ -0,0 +1,10 @@
1
+ export declare class PaymentCardValidator {
2
+ number: string;
3
+ name: string;
4
+ expMonth: number;
5
+ expYear: number;
6
+ cvv: string;
7
+ }
8
+ export declare class PaymentValidator {
9
+ card: PaymentCardValidator;
10
+ }
@@ -0,0 +1,62 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.PaymentValidator = exports.PaymentCardValidator = void 0;
13
+ var class_transformer_1 = require("class-transformer");
14
+ var class_validator_1 = require("class-validator");
15
+ var PaymentCardValidator = exports.PaymentCardValidator = (function () {
16
+ function PaymentCardValidator() {
17
+ this.number = String();
18
+ this.name = String();
19
+ this.cvv = String();
20
+ }
21
+ __decorate([
22
+ (0, class_validator_1.IsString)(),
23
+ (0, class_validator_1.IsNotEmpty)(),
24
+ __metadata("design:type", Object)
25
+ ], PaymentCardValidator.prototype, "number", void 0);
26
+ __decorate([
27
+ (0, class_validator_1.IsString)(),
28
+ (0, class_validator_1.IsNotEmpty)(),
29
+ __metadata("design:type", Object)
30
+ ], PaymentCardValidator.prototype, "name", void 0);
31
+ __decorate([
32
+ (0, class_validator_1.IsPositive)(),
33
+ (0, class_validator_1.Min)(1),
34
+ (0, class_validator_1.Max)(12),
35
+ __metadata("design:type", Number)
36
+ ], PaymentCardValidator.prototype, "expMonth", void 0);
37
+ __decorate([
38
+ (0, class_validator_1.IsPositive)(),
39
+ (0, class_validator_1.Min)(new Date().getFullYear()),
40
+ (0, class_validator_1.IsNotEmpty)(),
41
+ __metadata("design:type", Number)
42
+ ], PaymentCardValidator.prototype, "expYear", void 0);
43
+ __decorate([
44
+ (0, class_validator_1.IsNumberString)(),
45
+ (0, class_validator_1.Length)(3, 4),
46
+ (0, class_validator_1.IsNotEmpty)(),
47
+ __metadata("design:type", Object)
48
+ ], PaymentCardValidator.prototype, "cvv", void 0);
49
+ return PaymentCardValidator;
50
+ }());
51
+ var PaymentValidator = exports.PaymentValidator = (function () {
52
+ function PaymentValidator() {
53
+ this.card = new PaymentCardValidator();
54
+ }
55
+ __decorate([
56
+ (0, class_validator_1.ValidateNested)(),
57
+ (0, class_transformer_1.Type)(function () { return PaymentCardValidator; }),
58
+ (0, class_validator_1.IsOptional)(),
59
+ __metadata("design:type", Object)
60
+ ], PaymentValidator.prototype, "card", void 0);
61
+ return PaymentValidator;
62
+ }());
@@ -0,0 +1,9 @@
1
+ import { ShippingType } from '../../payments/enums/shipping.type';
2
+ import { AddressValidator } from './address.validator';
3
+ export declare class ShippingValidator {
4
+ address: AddressValidator;
5
+ type: ShippingType;
6
+ name: string;
7
+ phone: string;
8
+ email: string;
9
+ }
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ShippingValidator = void 0;
4
+ var address_validator_1 = require("./address.validator");
5
+ var ShippingValidator = (function () {
6
+ function ShippingValidator() {
7
+ this.address = new address_validator_1.AddressValidator();
8
+ this.name = String();
9
+ this.phone = String();
10
+ this.email = String();
11
+ }
12
+ return ShippingValidator;
13
+ }());
14
+ exports.ShippingValidator = ShippingValidator;