@merkaly/api 0.6.11 → 0.7.1

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 (103) hide show
  1. package/dist/app.schemas.d.ts +3 -14
  2. package/dist/finance/payment/payment.transition.js +3 -3
  3. package/dist/index.d.ts +2 -12
  4. package/dist/index.js +2 -12
  5. package/dist/inventory/catalog/product/product.entity.d.ts +7 -23
  6. package/dist/inventory/catalog/product/request.validator.d.ts +16 -28
  7. package/dist/inventory/catalog/product/request.validator.js +48 -106
  8. package/dist/inventory/catalog/variant/index.d.ts +0 -2
  9. package/dist/inventory/catalog/variant/request.validator.d.ts +6 -13
  10. package/dist/inventory/catalog/variant/request.validator.js +26 -71
  11. package/dist/inventory/catalog/variant/variant.entity.d.ts +4 -17
  12. package/dist/order/purchase/item/item.entity.d.ts +0 -5
  13. package/dist/order/purchase/item/request.validator.d.ts +1 -1
  14. package/dist/order/purchase/item/request.validator.js +6 -6
  15. package/dist/order/purchase/transaction/request.validator.d.ts +0 -1
  16. package/dist/order/purchase/transaction/request.validator.js +0 -7
  17. package/dist/order/purchase/transaction/transaction.transition.js +3 -3
  18. package/dist/order/sale/item/item.entity.d.ts +0 -5
  19. package/dist/order/sale/item/request.validator.d.ts +1 -1
  20. package/dist/order/sale/item/request.validator.js +6 -6
  21. package/dist/order/sale/transaction/request.validator.d.ts +0 -1
  22. package/dist/order/sale/transaction/request.validator.js +0 -7
  23. package/dist/order/sale/transaction/transaction.transition.js +4 -4
  24. package/dist/{account/payment → supplier/product}/index.d.ts +1 -1
  25. package/dist/supplier/product/product.preview.d.ts +23 -0
  26. package/dist/supplier/product/request.validator.d.ts +4 -0
  27. package/dist/supplier/product/request.validator.js +20 -0
  28. package/dist/supplier/source/index.d.ts +2 -0
  29. package/dist/supplier/source/index.js +1 -0
  30. package/dist/supplier/source/provider.enum.d.ts +3 -0
  31. package/dist/supplier/source/provider.enum.js +4 -0
  32. package/dist/supplier/source/source.entity.d.ts +5 -0
  33. package/dist/transaction.entity.d.ts +6 -4
  34. package/package.json +5 -5
  35. package/dist/account/address/address.entity.d.ts +0 -7
  36. package/dist/account/address/index.d.ts +0 -2
  37. package/dist/account/address/request.validator.d.ts +0 -16
  38. package/dist/account/address/request.validator.js +0 -79
  39. package/dist/account/payment/index.js +0 -1
  40. package/dist/account/payment/payment.entity.d.ts +0 -12
  41. package/dist/account/payment/request.validator.d.ts +0 -19
  42. package/dist/account/payment/request.validator.js +0 -95
  43. package/dist/finance/invoice/index.d.ts +0 -3
  44. package/dist/finance/invoice/index.js +0 -2
  45. package/dist/finance/invoice/invoice.entity.d.ts +0 -14
  46. package/dist/finance/invoice/invoice.enum.d.ts +0 -14
  47. package/dist/finance/invoice/invoice.enum.js +0 -16
  48. package/dist/finance/invoice/request.validator.d.ts +0 -21
  49. package/dist/finance/invoice/request.validator.js +0 -103
  50. package/dist/finance/refund/index.d.ts +0 -4
  51. package/dist/finance/refund/index.js +0 -3
  52. package/dist/finance/refund/refund.entity.d.ts +0 -14
  53. package/dist/finance/refund/refund.enum.d.ts +0 -16
  54. package/dist/finance/refund/refund.enum.js +0 -18
  55. package/dist/finance/refund/refund.transition.d.ts +0 -8
  56. package/dist/finance/refund/refund.transition.js +0 -17
  57. package/dist/finance/refund/request.validator.d.ts +0 -16
  58. package/dist/finance/refund/request.validator.js +0 -69
  59. package/dist/inventory/catalog/attribute/attribute.entity.d.ts +0 -6
  60. package/dist/inventory/catalog/attribute/index.d.ts +0 -2
  61. package/dist/inventory/catalog/attribute/index.js +0 -1
  62. package/dist/inventory/catalog/attribute/request.validator.d.ts +0 -11
  63. package/dist/inventory/catalog/attribute/request.validator.js +0 -53
  64. package/dist/inventory/catalog/collection/collection.entity.d.ts +0 -7
  65. package/dist/inventory/catalog/collection/index.d.ts +0 -2
  66. package/dist/inventory/catalog/collection/index.js +0 -1
  67. package/dist/inventory/catalog/collection/request.validator.d.ts +0 -11
  68. package/dist/inventory/catalog/collection/request.validator.js +0 -50
  69. package/dist/inventory/catalog/variant/variant.identifier.entity.d.ts +0 -4
  70. package/dist/inventory/catalog/variant/variant.policy.entity.d.ts +0 -4
  71. package/dist/inventory/configuration/measurement/index.d.ts +0 -2
  72. package/dist/inventory/configuration/measurement/index.js +0 -1
  73. package/dist/inventory/configuration/measurement/measurement.entity.d.ts +0 -8
  74. package/dist/inventory/configuration/measurement/request.validator.d.ts +0 -21
  75. package/dist/inventory/configuration/measurement/request.validator.js +0 -106
  76. package/dist/inventory/configuration/unit/index.d.ts +0 -1
  77. package/dist/inventory/configuration/unit/index.js +0 -1
  78. package/dist/inventory/configuration/unit/unit.entity.d.ts +0 -8
  79. package/dist/inventory/stock/balance/balance.entity.d.ts +0 -15
  80. package/dist/inventory/stock/balance/balance.status.enum.d.ts +0 -6
  81. package/dist/inventory/stock/balance/balance.status.enum.js +0 -7
  82. package/dist/inventory/stock/balance/index.d.ts +0 -2
  83. package/dist/inventory/stock/balance/index.js +0 -1
  84. package/dist/inventory/stock/transfer/index.d.ts +0 -5
  85. package/dist/inventory/stock/transfer/index.js +0 -3
  86. package/dist/inventory/stock/transfer/request.validator.d.ts +0 -24
  87. package/dist/inventory/stock/transfer/request.validator.js +0 -112
  88. package/dist/inventory/stock/transfer/transfer.entity.d.ts +0 -25
  89. package/dist/inventory/stock/transfer/transfer.enum.d.ts +0 -5
  90. package/dist/inventory/stock/transfer/transfer.enum.js +0 -6
  91. package/dist/inventory/stock/transfer/transfer.item.entity.d.ts +0 -22
  92. package/dist/inventory/stock/transfer/transfer.transition.d.ts +0 -8
  93. package/dist/inventory/stock/transfer/transfer.transition.js +0 -18
  94. package/dist/inventory/stock/warehouse/index.d.ts +0 -2
  95. package/dist/inventory/stock/warehouse/index.js +0 -1
  96. package/dist/inventory/stock/warehouse/request.validator.d.ts +0 -14
  97. package/dist/inventory/stock/warehouse/request.validator.js +0 -82
  98. package/dist/inventory/stock/warehouse/warehouse.entity.d.ts +0 -10
  99. package/dist/order/type/index.d.ts +0 -1
  100. package/dist/order/type/index.js +0 -1
  101. package/dist/order/type/order.enum.d.ts +0 -4
  102. package/dist/order/type/order.enum.js +0 -5
  103. /package/dist/{account/address → supplier/product}/index.js +0 -0
@@ -11,9 +11,9 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  import * as class_validator_1 from "class-validator";
12
12
  import * as abstract_validator_1 from '../../../abstract.validator.js';
13
13
  export class PurchaseItemRequestValidator extends abstract_validator_1.AbstractRequestValidator {
14
+ _id;
14
15
  product;
15
16
  variant;
16
- warehouse;
17
17
  quantity = 1;
18
18
  price = 0;
19
19
  notes = String();
@@ -22,9 +22,9 @@ export class PurchaseItemRequestValidator extends abstract_validator_1.AbstractR
22
22
  if (!item) {
23
23
  return;
24
24
  }
25
+ this._id = item._id;
25
26
  this.product = (item.product?._id || item.product);
26
27
  this.variant = (item.variant?._id || item.variant);
27
- this.warehouse = (item.warehouse?._id || item.warehouse);
28
28
  if (item.quantity !== undefined) {
29
29
  this.quantity = item.quantity;
30
30
  }
@@ -41,16 +41,16 @@ __decorate([
41
41
  (0, class_validator_1.IsMongoId)(),
42
42
  (0, class_validator_1.IsOptional)(),
43
43
  __metadata("design:type", String)
44
- ], PurchaseItemRequestValidator.prototype, "product", void 0);
44
+ ], PurchaseItemRequestValidator.prototype, "_id", void 0);
45
45
  __decorate([
46
46
  (0, class_validator_1.IsMongoId)(),
47
+ (0, class_validator_1.IsOptional)(),
47
48
  __metadata("design:type", String)
48
- ], PurchaseItemRequestValidator.prototype, "variant", void 0);
49
+ ], PurchaseItemRequestValidator.prototype, "product", void 0);
49
50
  __decorate([
50
51
  (0, class_validator_1.IsMongoId)(),
51
- (0, class_validator_1.IsOptional)(),
52
52
  __metadata("design:type", String)
53
- ], PurchaseItemRequestValidator.prototype, "warehouse", void 0);
53
+ ], PurchaseItemRequestValidator.prototype, "variant", void 0);
54
54
  __decorate([
55
55
  (0, class_validator_1.IsPositive)(),
56
56
  (0, class_validator_1.IsInt)(),
@@ -8,7 +8,6 @@ export declare class CreatePurchaseTransactionRequestValidator extends AbstractR
8
8
  method: FinancePaymentMethodEnum;
9
9
  notes?: string;
10
10
  vendor?: string;
11
- warehouse?: string;
12
11
  payment: FinancePaymentStatusEnum;
13
12
  status?: PurchaseTransactionStatusEnum;
14
13
  constructor(order?: PurchaseTransactionEntity);
@@ -19,7 +19,6 @@ export class CreatePurchaseTransactionRequestValidator extends abstract_validato
19
19
  method;
20
20
  notes;
21
21
  vendor;
22
- warehouse;
23
22
  payment = payment_enum_1.FinancePaymentStatusEnum.PENDING;
24
23
  status = transaction_enum_1.PurchaseTransactionStatusEnum.OPEN;
25
24
  constructor(order) {
@@ -36,7 +35,6 @@ export class CreatePurchaseTransactionRequestValidator extends abstract_validato
36
35
  if (order.payment?.status !== undefined) {
37
36
  this.payment = order.payment.status;
38
37
  }
39
- this.warehouse = (order.warehouse?._id || order.warehouse);
40
38
  this.items = order.items?.map((it) => new request_validator_1.PurchaseItemRequestValidator(it)) ?? this.items;
41
39
  }
42
40
  get total() {
@@ -68,11 +66,6 @@ __decorate([
68
66
  (0, class_validator_1.IsOptional)(),
69
67
  __metadata("design:type", String)
70
68
  ], CreatePurchaseTransactionRequestValidator.prototype, "vendor", void 0);
71
- __decorate([
72
- (0, class_validator_1.IsMongoId)(),
73
- (0, class_validator_1.IsOptional)(),
74
- __metadata("design:type", String)
75
- ], CreatePurchaseTransactionRequestValidator.prototype, "warehouse", void 0);
76
69
  __decorate([
77
70
  (0, class_validator_1.IsEnum)(payment_enum_1.FinancePaymentStatusEnum),
78
71
  (0, class_validator_1.IsDefined)(),
@@ -3,8 +3,8 @@ import * as transaction_enum_1 from './transaction.enum.js';
3
3
 
4
4
  export class PurchaseTransactionTransition extends AbstractTransition {
5
5
  $states = {
6
- [transaction_enum_1.PurchaseTransactionStatusEnum.OPEN]: [transaction_enum_1.PurchaseTransactionStatusEnum.ORDERED, transaction_enum_1.PurchaseTransactionStatusEnum.RECEIVED, transaction_enum_1.PurchaseTransactionStatusEnum.CANCELLED],
7
- [transaction_enum_1.PurchaseTransactionStatusEnum.ORDERED]: [transaction_enum_1.PurchaseTransactionStatusEnum.RECEIVED, transaction_enum_1.PurchaseTransactionStatusEnum.CANCELLED],
6
+ [transaction_enum_1.PurchaseTransactionStatusEnum.OPEN]: [],
7
+ [transaction_enum_1.PurchaseTransactionStatusEnum.ORDERED]: [],
8
8
  [transaction_enum_1.PurchaseTransactionStatusEnum.RECEIVED]: [],
9
9
  [transaction_enum_1.PurchaseTransactionStatusEnum.CANCELLED]: [],
10
10
  };
@@ -14,6 +14,6 @@ export class PurchaseTransactionTransition extends AbstractTransition {
14
14
  }
15
15
 
16
16
  get initialStates() {
17
- return [transaction_enum_1.PurchaseTransactionStatusEnum.OPEN, transaction_enum_1.PurchaseTransactionStatusEnum.ORDERED, transaction_enum_1.PurchaseTransactionStatusEnum.RECEIVED];
17
+ return [transaction_enum_1.PurchaseTransactionStatusEnum.OPEN];
18
18
  }
19
19
  }
@@ -1,7 +1,5 @@
1
1
  import { CatalogProductEntity } from '../../../inventory/catalog/product';
2
2
  import { CatalogVariantEntity } from '../../../inventory/catalog/variant';
3
- import { StockBalanceEntity } from '../../../inventory/stock/balance';
4
- import { StockWarehouseEntity } from '../../../inventory/stock/warehouse';
5
3
  import { AbstractEntity } from '../../../abstract.entity.js';
6
4
  interface ItemPricing {
7
5
  product: number;
@@ -12,13 +10,10 @@ interface ItemPricing {
12
10
  export declare class ItemEntity extends AbstractEntity {
13
11
  product?: CatalogProductEntity;
14
12
  variant: CatalogVariantEntity;
15
- warehouse: StockWarehouseEntity;
16
13
  quantity: number;
17
14
  notes: string;
18
15
  price: ItemPricing;
19
16
  readonly 'price.unit': number;
20
17
  readonly 'price.total': number;
21
- readonly balance?: StockBalanceEntity;
22
- readonly isProcessable: boolean;
23
18
  }
24
19
  export {};
@@ -1,9 +1,9 @@
1
1
  import { AbstractRequestValidator } from '../../../abstract.validator.js';
2
2
  import type { ItemEntity } from './item.entity.js';
3
3
  export declare class SaleItemRequestValidator extends AbstractRequestValidator {
4
+ _id?: string;
4
5
  product: string;
5
6
  variant: string;
6
- warehouse?: string;
7
7
  quantity: number;
8
8
  notes?: string;
9
9
  price: number;
@@ -11,9 +11,9 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  import * as class_validator_1 from "class-validator";
12
12
  import * as abstract_validator_1 from '../../../abstract.validator.js';
13
13
  export class SaleItemRequestValidator extends abstract_validator_1.AbstractRequestValidator {
14
+ _id;
14
15
  product;
15
16
  variant;
16
- warehouse;
17
17
  quantity = 1;
18
18
  notes;
19
19
  price = 0;
@@ -22,9 +22,9 @@ export class SaleItemRequestValidator extends abstract_validator_1.AbstractReque
22
22
  if (!item) {
23
23
  return;
24
24
  }
25
+ this._id = item._id;
25
26
  this.product = (item.product?._id || item.product);
26
27
  this.variant = (item.variant?._id || item.variant);
27
- this.warehouse = (item.warehouse?._id || item.warehouse);
28
28
  if (item.quantity !== undefined) {
29
29
  this.quantity = item.quantity;
30
30
  }
@@ -39,16 +39,16 @@ __decorate([
39
39
  (0, class_validator_1.IsMongoId)(),
40
40
  (0, class_validator_1.IsOptional)(),
41
41
  __metadata("design:type", String)
42
- ], SaleItemRequestValidator.prototype, "product", void 0);
42
+ ], SaleItemRequestValidator.prototype, "_id", void 0);
43
43
  __decorate([
44
44
  (0, class_validator_1.IsMongoId)(),
45
+ (0, class_validator_1.IsOptional)(),
45
46
  __metadata("design:type", String)
46
- ], SaleItemRequestValidator.prototype, "variant", void 0);
47
+ ], SaleItemRequestValidator.prototype, "product", void 0);
47
48
  __decorate([
48
49
  (0, class_validator_1.IsMongoId)(),
49
- (0, class_validator_1.IsOptional)(),
50
50
  __metadata("design:type", String)
51
- ], SaleItemRequestValidator.prototype, "warehouse", void 0);
51
+ ], SaleItemRequestValidator.prototype, "variant", void 0);
52
52
  __decorate([
53
53
  (0, class_validator_1.IsPositive)(),
54
54
  (0, class_validator_1.IsInt)(),
@@ -8,7 +8,6 @@ export declare class CreateSaleTransactionRequestValidator extends AbstractReque
8
8
  method: FinancePaymentMethodEnum;
9
9
  notes?: string;
10
10
  customer?: string;
11
- warehouse?: string;
12
11
  payment: FinancePaymentStatusEnum;
13
12
  status?: SaleTransactionStatusEnum;
14
13
  constructor(order?: SaleTransactionEntity);
@@ -19,7 +19,6 @@ export class CreateSaleTransactionRequestValidator extends abstract_validator_1.
19
19
  method;
20
20
  notes;
21
21
  customer;
22
- warehouse;
23
22
  payment = payment_enum_1.FinancePaymentStatusEnum.PENDING;
24
23
  status = transaction_enum_1.SaleTransactionStatusEnum.OPEN;
25
24
  constructor(order) {
@@ -36,7 +35,6 @@ export class CreateSaleTransactionRequestValidator extends abstract_validator_1.
36
35
  if (order.payment?.status !== undefined) {
37
36
  this.payment = order.payment.status;
38
37
  }
39
- this.warehouse = (order.warehouse?._id || order.warehouse);
40
38
  this.items = order.items?.map((it) => new request_validator_1.SaleItemRequestValidator(it)) ?? this.items;
41
39
  }
42
40
  get total() {
@@ -68,11 +66,6 @@ __decorate([
68
66
  (0, class_validator_1.IsOptional)(),
69
67
  __metadata("design:type", String)
70
68
  ], CreateSaleTransactionRequestValidator.prototype, "customer", void 0);
71
- __decorate([
72
- (0, class_validator_1.IsMongoId)(),
73
- (0, class_validator_1.IsOptional)(),
74
- __metadata("design:type", String)
75
- ], CreateSaleTransactionRequestValidator.prototype, "warehouse", void 0);
76
69
  __decorate([
77
70
  (0, class_validator_1.IsEnum)(payment_enum_1.FinancePaymentStatusEnum),
78
71
  (0, class_validator_1.IsDefined)(),
@@ -3,9 +3,9 @@ import * as transaction_enum_1 from './transaction.enum.js';
3
3
 
4
4
  export class SaleTransactionTransition extends AbstractTransition {
5
5
  $states = {
6
- [transaction_enum_1.SaleTransactionStatusEnum.OPEN]: [transaction_enum_1.SaleTransactionStatusEnum.IN_PROGRESS, transaction_enum_1.SaleTransactionStatusEnum.CANCELLED],
7
- [transaction_enum_1.SaleTransactionStatusEnum.IN_PROGRESS]: [transaction_enum_1.SaleTransactionStatusEnum.COMPLETED, transaction_enum_1.SaleTransactionStatusEnum.CANCELLED],
8
- [transaction_enum_1.SaleTransactionStatusEnum.COMPLETED]: [transaction_enum_1.SaleTransactionStatusEnum.RETURNED],
6
+ [transaction_enum_1.SaleTransactionStatusEnum.OPEN]: [],
7
+ [transaction_enum_1.SaleTransactionStatusEnum.IN_PROGRESS]: [],
8
+ [transaction_enum_1.SaleTransactionStatusEnum.COMPLETED]: [],
9
9
  [transaction_enum_1.SaleTransactionStatusEnum.CANCELLED]: [],
10
10
  [transaction_enum_1.SaleTransactionStatusEnum.RETURNED]: [],
11
11
  };
@@ -15,6 +15,6 @@ export class SaleTransactionTransition extends AbstractTransition {
15
15
  }
16
16
 
17
17
  get initialStates() {
18
- return [transaction_enum_1.SaleTransactionStatusEnum.OPEN, transaction_enum_1.SaleTransactionStatusEnum.IN_PROGRESS, transaction_enum_1.SaleTransactionStatusEnum.COMPLETED];
18
+ return [transaction_enum_1.SaleTransactionStatusEnum.OPEN];
19
19
  }
20
20
  }
@@ -1,2 +1,2 @@
1
- export * from './payment.entity';
1
+ export * from './product.preview';
2
2
  export * from './request.validator';
@@ -0,0 +1,23 @@
1
+ import type { SupplierProviderEnum } from '../source';
2
+ export interface SupplierVariantPreview {
3
+ externalVariantId: string;
4
+ name: string;
5
+ supplierPrice: number;
6
+ stock: number;
7
+ picture?: string;
8
+ }
9
+ export interface SupplierProductPreview {
10
+ provider: SupplierProviderEnum;
11
+ externalProductId: string;
12
+ name: string;
13
+ description: string;
14
+ pictures: string[];
15
+ currency: string;
16
+ deliveryDays?: number;
17
+ store?: {
18
+ name: string;
19
+ rating?: string;
20
+ };
21
+ variants: SupplierVariantPreview[];
22
+ importedProduct?: string;
23
+ }
@@ -0,0 +1,4 @@
1
+ import { AbstractRequestValidator } from '../../abstract.validator.js';
2
+ export declare class PreviewSupplierProductRequestValidator extends AbstractRequestValidator {
3
+ url: string;
4
+ }
@@ -0,0 +1,20 @@
1
+ import 'reflect-metadata';
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
+ import * as class_validator_1 from "class-validator";
12
+ import * as abstract_validator_1 from '../../abstract.validator.js';
13
+ export class PreviewSupplierProductRequestValidator extends abstract_validator_1.AbstractRequestValidator {
14
+ url;
15
+ }
16
+ __decorate([
17
+ (0, class_validator_1.IsUrl)({ require_protocol: true }),
18
+ (0, class_validator_1.Length)(0, 2048),
19
+ __metadata("design:type", String)
20
+ ], PreviewSupplierProductRequestValidator.prototype, "url", void 0);
@@ -0,0 +1,2 @@
1
+ export * from './source.entity';
2
+ export * from './provider.enum';
@@ -0,0 +1 @@
1
+ export * from './provider.enum.js';
@@ -0,0 +1,3 @@
1
+ export declare enum SupplierProviderEnum {
2
+ ALIEXPRESS = "aliexpress"
3
+ }
@@ -0,0 +1,4 @@
1
+ export var SupplierProviderEnum;
2
+ (function (SupplierProviderEnum) {
3
+ SupplierProviderEnum["ALIEXPRESS"] = "aliexpress";
4
+ })(SupplierProviderEnum || (SupplierProviderEnum = {}));
@@ -0,0 +1,5 @@
1
+ import { AbstractEntity } from '../../abstract.entity.js';
2
+ import { SupplierProviderEnum } from './provider.enum.js';
3
+ export declare class SupplierSourceEntity extends AbstractEntity {
4
+ provider: SupplierProviderEnum;
5
+ }
@@ -1,17 +1,19 @@
1
1
  import { AccountUserEntity } from './account/user';
2
2
  import { FinancePaymentEntity } from './finance/payment';
3
- import { StockWarehouseEntity } from './inventory/stock/warehouse';
4
3
  import { AbstractEntity } from './abstract.entity.js';
5
4
  import { StatusEntity } from './status.plugin.js';
6
5
  import { ITransitionable } from './transitionable.interface.js';
7
6
  import { ItemEntity } from './order/sale/item';
7
+ export interface TransactionCapabilities {
8
+ addItems: boolean;
9
+ editItems: boolean;
10
+ deleteItems: boolean;
11
+ }
8
12
  export declare class TransactionEntity<S extends string> extends AbstractEntity implements ITransitionable<S> {
9
13
  user: AccountUserEntity;
10
- warehouse: StockWarehouseEntity;
11
14
  notes?: string;
12
15
  status: S;
13
16
  items: ItemEntity[];
14
- readonly warehouses: Record<string, ItemEntity[]>;
15
17
  readonly number: string;
16
18
  readonly pricing: {
17
19
  subtotal: number;
@@ -19,6 +21,6 @@ export declare class TransactionEntity<S extends string> extends AbstractEntity
19
21
  units: number;
20
22
  };
21
23
  readonly payment: FinancePaymentEntity;
22
- readonly isProcessable: boolean;
24
+ readonly capabilities: TransactionCapabilities;
23
25
  readonly history: StatusEntity<S>[];
24
26
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@merkaly/api",
3
- "version": "0.6.11",
3
+ "version": "0.7.1",
4
4
  "type": "module",
5
5
  "description": "Shared TypeScript interfaces and enums for Merkaly API",
6
6
  "repository": {
@@ -27,11 +27,11 @@
27
27
  "reflect-metadata": "^0.2.2"
28
28
  },
29
29
  "devDependencies": {
30
- "@types/node": "^26.0.0",
30
+ "@types/node": "^26.6.1",
31
31
  "changelogen": "^0.6.2",
32
- "oxlint": "^1.70.0",
33
- "tsx": "^4.22.4",
34
- "typescript": "^6.0.3"
32
+ "oxlint": "^1.89.0",
33
+ "tsx": "^4.23.0",
34
+ "typescript": "^7.0.2"
35
35
  },
36
36
  "publishConfig": {
37
37
  "access": "public"
@@ -1,7 +0,0 @@
1
- import { AccountUserEntity } from '../user';
2
- import { AddressEntity } from '../../address.entity.js';
3
- import type { MongoEntity } from '../../abstract.entity.js';
4
- export declare class AccountAddressEntity extends AddressEntity {
5
- user: MongoEntity<AccountUserEntity>;
6
- name: string;
7
- }
@@ -1,2 +0,0 @@
1
- export * from './address.entity';
2
- export * from './request.validator';
@@ -1,16 +0,0 @@
1
- import { AbstractRequestValidator } from '../../abstract.validator.js';
2
- import type { AccountAddressEntity } from './address.entity.js';
3
- export declare class CreateAddressRequestValidator extends AbstractRequestValidator {
4
- street: string;
5
- name: string;
6
- complement?: string;
7
- country?: string;
8
- code?: string;
9
- longitude?: number;
10
- latitude?: number;
11
- constructor(address?: AccountAddressEntity);
12
- }
13
- export declare class UpdateAddressRequestValidator extends CreateAddressRequestValidator {
14
- street: string;
15
- name: string;
16
- }
@@ -1,79 +0,0 @@
1
- import 'reflect-metadata';
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
- import * as class_validator_1 from "class-validator";
12
- import * as abstract_validator_1 from '../../abstract.validator.js';
13
- export class CreateAddressRequestValidator extends abstract_validator_1.AbstractRequestValidator {
14
- street;
15
- name;
16
- complement;
17
- country;
18
- code;
19
- longitude;
20
- latitude;
21
- constructor(address) {
22
- super();
23
- if (!address) {
24
- return;
25
- }
26
- this.street = address.line1;
27
- this.name = address.name;
28
- this.complement = address.line2;
29
- this.country = address.country;
30
- this.code = address.code;
31
- this.longitude = address.location?.lng;
32
- this.latitude = address.location?.lat;
33
- }
34
- }
35
- __decorate([
36
- (0, class_validator_1.IsString)(),
37
- (0, class_validator_1.IsNotEmpty)(),
38
- __metadata("design:type", String)
39
- ], CreateAddressRequestValidator.prototype, "street", void 0);
40
- __decorate([
41
- (0, class_validator_1.IsString)(),
42
- (0, class_validator_1.IsNotEmpty)(),
43
- __metadata("design:type", String)
44
- ], CreateAddressRequestValidator.prototype, "name", void 0);
45
- __decorate([
46
- (0, class_validator_1.IsString)(),
47
- (0, class_validator_1.IsOptional)(),
48
- __metadata("design:type", String)
49
- ], CreateAddressRequestValidator.prototype, "complement", void 0);
50
- __decorate([
51
- (0, class_validator_1.IsISO31661Alpha2)(),
52
- (0, class_validator_1.IsOptional)(),
53
- __metadata("design:type", String)
54
- ], CreateAddressRequestValidator.prototype, "country", void 0);
55
- __decorate([
56
- (0, class_validator_1.IsString)(),
57
- (0, class_validator_1.IsOptional)(),
58
- __metadata("design:type", String)
59
- ], CreateAddressRequestValidator.prototype, "code", void 0);
60
- __decorate([
61
- (0, class_validator_1.IsLongitude)(),
62
- (0, class_validator_1.IsOptional)(),
63
- __metadata("design:type", Number)
64
- ], CreateAddressRequestValidator.prototype, "longitude", void 0);
65
- __decorate([
66
- (0, class_validator_1.IsLatitude)(),
67
- (0, class_validator_1.IsOptional)(),
68
- __metadata("design:type", Number)
69
- ], CreateAddressRequestValidator.prototype, "latitude", void 0);
70
- export class UpdateAddressRequestValidator extends CreateAddressRequestValidator {
71
- }
72
- __decorate([
73
- (0, class_validator_1.IsOptional)(),
74
- __metadata("design:type", String)
75
- ], UpdateAddressRequestValidator.prototype, "street", void 0);
76
- __decorate([
77
- (0, class_validator_1.IsOptional)(),
78
- __metadata("design:type", String)
79
- ], UpdateAddressRequestValidator.prototype, "name", void 0);
@@ -1 +0,0 @@
1
- export * from './request.validator.js';
@@ -1,12 +0,0 @@
1
- import { AccountUserEntity } from '../user';
2
- import { AbstractEntity } from '../../abstract.entity.js';
3
- import type { MongoEntity } from '../../abstract.entity.js';
4
- export declare class AccountPaymentEntity extends AbstractEntity {
5
- user: MongoEntity<AccountUserEntity>;
6
- hash: string;
7
- last4: string;
8
- brand: string;
9
- expMonth: number;
10
- expYear: number;
11
- holder: string;
12
- }
@@ -1,19 +0,0 @@
1
- import { AbstractRequestValidator } from '../../abstract.validator.js';
2
- import type { AccountPaymentEntity } from './payment.entity.js';
3
- export declare class CreatePaymentRequestValidator extends AbstractRequestValidator {
4
- holder: string;
5
- hash: string;
6
- last4: string;
7
- brand: string;
8
- expMonth: number;
9
- expYear: number;
10
- constructor(payment?: AccountPaymentEntity);
11
- }
12
- export declare class UpdatePaymentRequestValidator extends CreatePaymentRequestValidator {
13
- holder: string;
14
- hash: never;
15
- last4: never;
16
- brand: never;
17
- expMonth: number;
18
- expYear: number;
19
- }
@@ -1,95 +0,0 @@
1
- import 'reflect-metadata';
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
- import * as class_validator_1 from "class-validator";
12
- import * as abstract_validator_1 from '../../abstract.validator.js';
13
- export class CreatePaymentRequestValidator extends abstract_validator_1.AbstractRequestValidator {
14
- holder;
15
- hash;
16
- last4;
17
- brand;
18
- expMonth;
19
- expYear;
20
- constructor(payment) {
21
- super();
22
- if (!payment) {
23
- return;
24
- }
25
- this.holder = payment.holder;
26
- this.hash = payment.hash;
27
- this.last4 = payment.last4;
28
- this.brand = payment.brand;
29
- this.expMonth = payment.expMonth;
30
- this.expYear = payment.expYear;
31
- }
32
- }
33
- __decorate([
34
- (0, class_validator_1.IsString)(),
35
- (0, class_validator_1.IsNotEmpty)(),
36
- (0, class_validator_1.Length)(0, 100),
37
- __metadata("design:type", String)
38
- ], CreatePaymentRequestValidator.prototype, "holder", void 0);
39
- __decorate([
40
- (0, class_validator_1.IsString)(),
41
- (0, class_validator_1.IsNotEmpty)(),
42
- (0, class_validator_1.Length)(0, 255),
43
- __metadata("design:type", String)
44
- ], CreatePaymentRequestValidator.prototype, "hash", void 0);
45
- __decorate([
46
- (0, class_validator_1.IsString)(),
47
- (0, class_validator_1.Length)(4, 4),
48
- (0, class_validator_1.IsNotEmpty)(),
49
- __metadata("design:type", String)
50
- ], CreatePaymentRequestValidator.prototype, "last4", void 0);
51
- __decorate([
52
- (0, class_validator_1.IsString)(),
53
- (0, class_validator_1.IsNotEmpty)(),
54
- (0, class_validator_1.Length)(0, 50),
55
- __metadata("design:type", String)
56
- ], CreatePaymentRequestValidator.prototype, "brand", void 0);
57
- __decorate([
58
- (0, class_validator_1.IsInt)(),
59
- (0, class_validator_1.Min)(1),
60
- (0, class_validator_1.Max)(12),
61
- (0, class_validator_1.IsNotEmpty)(),
62
- __metadata("design:type", Number)
63
- ], CreatePaymentRequestValidator.prototype, "expMonth", void 0);
64
- __decorate([
65
- (0, class_validator_1.IsInt)(),
66
- (0, class_validator_1.Min)(2000),
67
- (0, class_validator_1.IsNotEmpty)(),
68
- __metadata("design:type", Number)
69
- ], CreatePaymentRequestValidator.prototype, "expYear", void 0);
70
- export class UpdatePaymentRequestValidator extends CreatePaymentRequestValidator {
71
- }
72
- __decorate([
73
- (0, class_validator_1.IsOptional)(),
74
- __metadata("design:type", String)
75
- ], UpdatePaymentRequestValidator.prototype, "holder", void 0);
76
- __decorate([
77
- (0, class_validator_1.IsOptional)(),
78
- __metadata("design:type", void 0)
79
- ], UpdatePaymentRequestValidator.prototype, "hash", void 0);
80
- __decorate([
81
- (0, class_validator_1.IsOptional)(),
82
- __metadata("design:type", void 0)
83
- ], UpdatePaymentRequestValidator.prototype, "last4", void 0);
84
- __decorate([
85
- (0, class_validator_1.IsOptional)(),
86
- __metadata("design:type", void 0)
87
- ], UpdatePaymentRequestValidator.prototype, "brand", void 0);
88
- __decorate([
89
- (0, class_validator_1.IsOptional)(),
90
- __metadata("design:type", Number)
91
- ], UpdatePaymentRequestValidator.prototype, "expMonth", void 0);
92
- __decorate([
93
- (0, class_validator_1.IsOptional)(),
94
- __metadata("design:type", Number)
95
- ], UpdatePaymentRequestValidator.prototype, "expYear", void 0);
@@ -1,3 +0,0 @@
1
- export * from './invoice.entity';
2
- export * from './invoice.enum';
3
- export * from './request.validator';
@@ -1,2 +0,0 @@
1
- export * from './invoice.enum.js';
2
- export * from './request.validator.js';
@@ -1,14 +0,0 @@
1
- import { AbstractEntity, MongoEntity } from '../../abstract.entity.js';
2
- import { FinanceInvoiceStatusEnum, FinanceInvoiceTypeEnum } from './invoice.enum.js';
3
- export declare class FinanceInvoiceEntity extends AbstractEntity {
4
- order: MongoEntity<any>;
5
- orderModel: string;
6
- total: number;
7
- subtotal: number;
8
- tax: number;
9
- status: FinanceInvoiceStatusEnum;
10
- type: FinanceInvoiceTypeEnum;
11
- dueDate?: Date;
12
- notes?: string;
13
- readonly number: string;
14
- }