@merkaly/api 0.4.8 → 0.5.0

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 (30) hide show
  1. package/dist/abstract.repository.d.ts +10 -4
  2. package/dist/finance/invoice/invoice.entity.d.ts +1 -1
  3. package/dist/finance/payment/payment.entity.d.ts +1 -1
  4. package/dist/finance/refund/refund.entity.d.ts +1 -1
  5. package/dist/inventory/catalog/product/product.entity.d.ts +1 -0
  6. package/dist/inventory/stock/transfer/transfer.entity.d.ts +6 -2
  7. package/dist/inventory/stock/transfer/transfer.status.enum.d.ts +1 -0
  8. package/dist/inventory/stock/transfer/transfer.status.enum.js +1 -0
  9. package/dist/inventory/stock/transfer/transfer.validator.d.ts +1 -0
  10. package/dist/inventory/stock/transfer/transfer.validator.js +7 -1
  11. package/dist/order/purchase/transaction/transaction.entity.d.ts +3 -1
  12. package/dist/order/purchase/transaction/transaction.enum.d.ts +2 -3
  13. package/dist/order/purchase/transaction/transaction.enum.js +2 -3
  14. package/dist/order/purchase/transaction/transaction.validator.d.ts +1 -3
  15. package/dist/order/purchase/transaction/transaction.validator.js +3 -13
  16. package/dist/order/sale/transaction/transaction.entity.d.ts +3 -3
  17. package/dist/order/sale/transaction/transaction.enum.d.ts +2 -3
  18. package/dist/order/sale/transaction/transaction.enum.js +2 -3
  19. package/dist/order/sale/transaction/transaction.validator.d.ts +1 -6
  20. package/dist/order/sale/transaction/transaction.validator.js +4 -24
  21. package/dist/settings/organization/organization.enum.d.ts +5 -4
  22. package/dist/settings/organization/organization.enum.js +5 -4
  23. package/package.json +1 -5
  24. package/dist/order/sale/shipping/index.d.ts +0 -3
  25. package/dist/order/sale/shipping/index.js +0 -2
  26. package/dist/order/sale/shipping/shipping.entity.d.ts +0 -18
  27. package/dist/order/sale/shipping/shipping.enum.d.ts +0 -16
  28. package/dist/order/sale/shipping/shipping.enum.js +0 -18
  29. package/dist/order/sale/shipping/shipping.validator.d.ts +0 -14
  30. package/dist/order/sale/shipping/shipping.validator.js +0 -56
@@ -1,9 +1,10 @@
1
+ import { EventEmitter2 } from '@nestjs/event-emitter';
1
2
  import { LoggerService } from './';
2
3
  import { MongoService } from './mongo.service.js';
3
4
  import { AbstractEntity } from './abstract.entity.js';
4
5
  import { AbstractSchema } from './abstract.schema.js';
5
6
  import { AbstractValidator, ReadValidator, SearchValidator } from './abstract.validator.js';
6
- import type { Document, FilterQuery, HydratedDocument, Model, RootFilterQuery, UpdateQuery } from 'mongoose';
7
+ import type { ClientSession, Document, FilterQuery, Model, RootFilterQuery, UpdateQuery } from 'mongoose';
7
8
  type Equal<X, Y> = (<T>() => T extends X ? 1 : 2) extends <T>() => T extends Y ? 1 : 2 ? true : false;
8
9
  type SystemKeys = '_id' | 'createdAt' | 'updatedAt' | 'deletedAt' | keyof Document;
9
10
  export type CreateEntityArgs<T> = {
@@ -13,6 +14,10 @@ export type CreateEntityArgs<T> = {
13
14
  -readonly [Q in K]: T[K];
14
15
  }> extends true ? K : never]: T[K] extends AbstractEntity ? CreateEntityArgs<T[K]> : T[K];
15
16
  };
17
+ export interface ReadOptions<E extends AbstractEntity = AbstractEntity> {
18
+ validator?: ReadValidator<E>;
19
+ session?: ClientSession;
20
+ }
16
21
  export interface SaveOptions<E extends AbstractEntity> {
17
22
  param?: string | RootFilterQuery<E>;
18
23
  payload: UpdateQuery<E>;
@@ -22,6 +27,7 @@ export declare abstract class AbstractRepository<E extends AbstractEntity = Abst
22
27
  protected abstract readonly $schema: AbstractSchema<E>;
23
28
  protected readonly $logger: LoggerService;
24
29
  protected readonly $mongo: MongoService<E>;
30
+ protected readonly $event: EventEmitter2;
25
31
  protected readonly $joins: Record<string, AbstractSchema<any> | null>;
26
32
  get $builder(): Model<E>;
27
33
  get $user(): any;
@@ -40,15 +46,15 @@ export declare abstract class AbstractRepository<E extends AbstractEntity = Abst
40
46
  pages: number;
41
47
  total: number;
42
48
  }>;
43
- read(param: string | RootFilterQuery<E>, validator?: ReadValidator): Promise<HydratedDocument<E>>;
49
+ read(param: string | RootFilterQuery<E>, options?: ReadOptions<E>): Promise<E>;
44
50
  private hasUpdateOperators;
45
51
  protected save({ param, payload, validator }: SaveOptions<E>): Promise<import("mongoose").IfAny<E, any, Document<unknown, {}, E, {}, {}> & (import("mongoose").Require_id<E> extends infer T ? T extends import("mongoose").Require_id<E> ? T extends {
46
52
  __v?: infer U;
47
53
  } ? T : T & {
48
54
  __v: number;
49
55
  } : never : never)>>;
50
- abstract create(payload: AbstractValidator, validator?: ReadValidator, doc?: Document<string, object, E>): Promise<Document<string, object, E>>;
51
- abstract update(param: string | RootFilterQuery<E>, payload: AbstractValidator, validator?: ReadValidator): Promise<Document<string, object, E>>;
56
+ abstract create(payload: AbstractValidator, validator?: ReadValidator, doc?: Document<string, object, E>): Promise<E>;
57
+ abstract update(param: string | RootFilterQuery<E>, payload: AbstractValidator, validator?: ReadValidator): Promise<E>;
52
58
  delete(param: string | RootFilterQuery<E>): Promise<void>;
53
59
  }
54
60
  export {};
@@ -8,8 +8,8 @@ export declare class FinanceInvoiceEntity extends AbstractEntity {
8
8
  tax: number;
9
9
  status: FinanceInvoiceStatusEnum;
10
10
  type: FinanceInvoiceTypeEnum;
11
- sequence: number;
12
11
  dueDate?: Date;
13
12
  notes?: string;
13
+ sequence: number;
14
14
  readonly number: string;
15
15
  }
@@ -12,8 +12,8 @@ export declare class FinancePaymentEntity extends AbstractEntity {
12
12
  total: number;
13
13
  fee: number;
14
14
  method: FinancePaymentMethodEnum;
15
- sequence: number;
16
15
  refunds: MongoEntity<FinanceRefundEntity>[];
16
+ sequence: number;
17
17
  readonly number: string;
18
18
  readonly refundedTotal: number;
19
19
  }
@@ -6,7 +6,7 @@ export declare class FinanceRefundEntity extends AbstractEntity {
6
6
  amount: number;
7
7
  status: FinanceRefundStatusEnum;
8
8
  reason: FinanceRefundReasonEnum;
9
- sequence: number;
10
9
  notes?: string;
10
+ sequence: number;
11
11
  readonly number: string;
12
12
  }
@@ -29,4 +29,5 @@ export declare class CatalogProductEntity extends AbstractEntity {
29
29
  variants: MongoEntity<CatalogVariantEntity>[];
30
30
  readonly hasVariants: boolean;
31
31
  readonly stock: number;
32
+ readonly image: MongoEntity<AssetEntity>;
32
33
  }
@@ -2,9 +2,12 @@ import { AccountUserEntity } from '../../../account/user';
2
2
  import { CatalogProductEntity } from '../../catalog/product';
3
3
  import { StockWarehouseEntity } from '../warehouse';
4
4
  import { TransferStatusEnum } from './';
5
- import { AbstractEntity, MongoEntity } from '../../..';
5
+ import { AbstractEntity } from '../../..';
6
+ import { CatalogVariantEntity } from '../../catalog/variant';
7
+ import type { MongoEntity } from '../../..';
6
8
  export declare class StockTransferItemEntity {
7
9
  product: MongoEntity<CatalogProductEntity>;
10
+ variant: MongoEntity<CatalogVariantEntity>;
8
11
  quantity: number;
9
12
  notes?: string;
10
13
  }
@@ -12,9 +15,10 @@ export declare class StockTransferEntity extends AbstractEntity {
12
15
  origin: MongoEntity<StockWarehouseEntity>;
13
16
  destination: MongoEntity<StockWarehouseEntity>;
14
17
  items: StockTransferItemEntity[];
15
- sequence: number;
16
18
  status: TransferStatusEnum;
17
19
  notes?: string;
18
20
  user: MongoEntity<AccountUserEntity>;
21
+ readonly type: 'in' | 'out';
19
22
  readonly number: string;
23
+ sequence: number;
20
24
  }
@@ -1,6 +1,7 @@
1
1
  export declare enum TransferStatusEnum {
2
2
  PENDING = "PENDING",
3
3
  IN_TRANSIT = "IN_TRANSIT",
4
+ PAUSED = "PAUSED",
4
5
  COMPLETED = "COMPLETED",
5
6
  CANCELLED = "CANCELLED"
6
7
  }
@@ -2,6 +2,7 @@ export var TransferStatusEnum;
2
2
  (function (TransferStatusEnum) {
3
3
  TransferStatusEnum["PENDING"] = "PENDING";
4
4
  TransferStatusEnum["IN_TRANSIT"] = "IN_TRANSIT";
5
+ TransferStatusEnum["PAUSED"] = "PAUSED";
5
6
  TransferStatusEnum["COMPLETED"] = "COMPLETED";
6
7
  TransferStatusEnum["CANCELLED"] = "CANCELLED";
7
8
  })(TransferStatusEnum || (TransferStatusEnum = {}));
@@ -3,6 +3,7 @@ import { TransferStatusEnum } from './';
3
3
  import { AbstractValidator, ReadValidator, SearchValidator } from '../../..';
4
4
  export declare class StockTransferItemValidator {
5
5
  product: string;
6
+ variant: string;
6
7
  quantity: number;
7
8
  notes?: string;
8
9
  }
@@ -14,6 +14,7 @@ import * as abstract_validator_1 from '../../..';
14
14
  import * as not_equal_to_decorator_1 from '../../..';
15
15
  export class StockTransferItemValidator {
16
16
  product;
17
+ variant;
17
18
  quantity;
18
19
  notes;
19
20
  }
@@ -21,6 +22,10 @@ __decorate([
21
22
  (0, class_validator_1.IsMongoId)(),
22
23
  __metadata("design:type", String)
23
24
  ], StockTransferItemValidator.prototype, "product", void 0);
25
+ __decorate([
26
+ (0, class_validator_1.IsMongoId)(),
27
+ __metadata("design:type", String)
28
+ ], StockTransferItemValidator.prototype, "variant", void 0);
24
29
  __decorate([
25
30
  (0, class_validator_1.IsNumber)(),
26
31
  (0, class_validator_1.Min)(1),
@@ -45,6 +50,7 @@ export class SaveStockTransferValidator extends abstract_validator_1.AbstractVal
45
50
  this.destination = (0, abstract_validator_1.toId)(entity.destination);
46
51
  this.items = (entity.items || []).map((item) => ({
47
52
  product: (0, abstract_validator_1.toId)(item.product),
53
+ variant: (0, abstract_validator_1.toId)(item.variant),
48
54
  quantity: item.quantity || 1,
49
55
  notes: item.notes,
50
56
  }));
@@ -53,7 +59,7 @@ export class SaveStockTransferValidator extends abstract_validator_1.AbstractVal
53
59
  }
54
60
  origin;
55
61
  destination;
56
- items = [];
62
+ items;
57
63
  notes;
58
64
  status;
59
65
  }
@@ -1,5 +1,6 @@
1
1
  import { AccountUserEntity } from '../../../account/user';
2
2
  import { FinancePaymentEntity } from '../../../finance/payment';
3
+ import { StockTransferEntity } from '../../../inventory/stock/transfer';
3
4
  import { AbstractEntity } from '../../..';
4
5
  import { PurchaseTransactionStatusEnum } from './transaction.enum.js';
5
6
  import { PurchaseItemEntity } from '../item';
@@ -8,10 +9,11 @@ import type { MongoEntity } from '../../..';
8
9
  export declare class PurchaseTransactionEntity extends AbstractEntity {
9
10
  user: MongoEntity<AccountUserEntity>;
10
11
  vendor: MongoEntity<PurchaseVendorEntity>;
12
+ transfer: MongoEntity<StockTransferEntity>;
11
13
  items: PurchaseItemEntity[];
12
- sequence: number;
13
14
  notes?: string;
14
15
  status: PurchaseTransactionStatusEnum;
16
+ sequence: number;
15
17
  readonly number: string;
16
18
  readonly total: number;
17
19
  readonly payment: FinancePaymentEntity;
@@ -1,8 +1,7 @@
1
1
  export declare enum PurchaseTransactionStatusEnum {
2
2
  DRAFT = "DRAFT",
3
- PENDING = "PENDING",
4
- CONFIRMED = "CONFIRMED",
5
- SHIPPED = "SHIPPED",
3
+ REQUESTED = "REQUESTED",
4
+ PAUSED = "PAUSED",
6
5
  RECEIVED = "RECEIVED",
7
6
  CANCELLED = "CANCELLED"
8
7
  }
@@ -1,9 +1,8 @@
1
1
  export var PurchaseTransactionStatusEnum;
2
2
  (function (PurchaseTransactionStatusEnum) {
3
3
  PurchaseTransactionStatusEnum["DRAFT"] = "DRAFT";
4
- PurchaseTransactionStatusEnum["PENDING"] = "PENDING";
5
- PurchaseTransactionStatusEnum["CONFIRMED"] = "CONFIRMED";
6
- PurchaseTransactionStatusEnum["SHIPPED"] = "SHIPPED";
4
+ PurchaseTransactionStatusEnum["REQUESTED"] = "REQUESTED";
5
+ PurchaseTransactionStatusEnum["PAUSED"] = "PAUSED";
7
6
  PurchaseTransactionStatusEnum["RECEIVED"] = "RECEIVED";
8
7
  PurchaseTransactionStatusEnum["CANCELLED"] = "CANCELLED";
9
8
  })(PurchaseTransactionStatusEnum || (PurchaseTransactionStatusEnum = {}));
@@ -1,5 +1,4 @@
1
1
  import { PurchaseTransactionEntity } from './';
2
- import { PurchaseTransactionStatusEnum } from './';
3
2
  import { AbstractValidator, ReadValidator, SearchValidator } from '../../..';
4
3
  import { PurchaseItemValidator } from '../item';
5
4
  export declare class SearchPurchaseTransactionValidator extends SearchValidator<PurchaseTransactionEntity> {
@@ -10,8 +9,7 @@ export declare class SavePurchaseTransactionValidator extends AbstractValidator
10
9
  constructor(entity?: PurchaseTransactionEntity);
11
10
  items: PurchaseItemValidator[];
12
11
  notes: string;
13
- user: string;
14
12
  vendor?: string;
15
- status: PurchaseTransactionStatusEnum;
13
+ warehouse: string;
16
14
  get total(): number;
17
15
  }
@@ -9,7 +9,6 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  };
10
10
  import * as class_transformer_1 from "class-transformer";
11
11
  import * as class_validator_1 from "class-validator";
12
- import * as transaction_enum_1 from './transaction.enum.js';
13
12
  import * as abstract_validator_1 from '../../..';
14
13
  import * as item_validator_1 from '../item';
15
14
  export class SearchPurchaseTransactionValidator extends abstract_validator_1.SearchValidator {
@@ -31,14 +30,11 @@ export class SavePurchaseTransactionValidator extends abstract_validator_1.Abstr
31
30
  }));
32
31
  this.notes = entity.notes;
33
32
  this.vendor = (0, abstract_validator_1.toId)(entity.vendor);
34
- this.user = (0, abstract_validator_1.toId)(entity.user);
35
- this.status = entity.status;
36
33
  }
37
34
  items = [];
38
35
  notes;
39
- user;
40
36
  vendor;
41
- status = transaction_enum_1.PurchaseTransactionStatusEnum.DRAFT;
37
+ warehouse;
42
38
  get total() {
43
39
  return this.items.reduce((sum, item) => sum + item.total, 0);
44
40
  }
@@ -57,18 +53,12 @@ __decorate([
57
53
  (0, class_validator_1.IsOptional)(),
58
54
  __metadata("design:type", String)
59
55
  ], SavePurchaseTransactionValidator.prototype, "notes", void 0);
60
- __decorate([
61
- (0, class_validator_1.IsString)(),
62
- (0, class_validator_1.IsOptional)({ groups: ['update'] }),
63
- __metadata("design:type", String)
64
- ], SavePurchaseTransactionValidator.prototype, "user", void 0);
65
56
  __decorate([
66
57
  (0, class_validator_1.IsMongoId)(),
67
58
  (0, class_validator_1.IsOptional)(),
68
59
  __metadata("design:type", String)
69
60
  ], SavePurchaseTransactionValidator.prototype, "vendor", void 0);
70
61
  __decorate([
71
- (0, class_validator_1.IsEnum)(transaction_enum_1.PurchaseTransactionStatusEnum),
72
- (0, class_validator_1.IsOptional)(),
62
+ (0, class_validator_1.IsMongoId)(),
73
63
  __metadata("design:type", String)
74
- ], SavePurchaseTransactionValidator.prototype, "status", void 0);
64
+ ], SavePurchaseTransactionValidator.prototype, "warehouse", void 0);
@@ -1,6 +1,6 @@
1
1
  import { AccountUserEntity } from '../../../account/user';
2
2
  import { FinancePaymentEntity } from '../../../finance/payment';
3
- import { SaleShippingEntity } from '../shipping';
3
+ import { StockTransferEntity } from '../../../inventory/stock/transfer';
4
4
  import { AbstractEntity } from '../../..';
5
5
  import { SaleTransactionStatusEnum } from './transaction.enum.js';
6
6
  import { SaleCustomerEntity } from '../customer';
@@ -9,13 +9,13 @@ import type { MongoEntity } from '../../..';
9
9
  export declare class SaleTransactionEntity extends AbstractEntity {
10
10
  user: MongoEntity<AccountUserEntity>;
11
11
  customer: MongoEntity<SaleCustomerEntity>;
12
+ transfer: MongoEntity<StockTransferEntity>;
12
13
  items: SaleItemEntity[];
13
- sequence: number;
14
14
  notes?: string;
15
15
  status: SaleTransactionStatusEnum;
16
+ sequence: number;
16
17
  readonly number: string;
17
18
  readonly subtotal: number;
18
19
  readonly total: number;
19
- readonly shipping?: MongoEntity<SaleShippingEntity>;
20
20
  readonly payment?: MongoEntity<FinancePaymentEntity>;
21
21
  }
@@ -1,8 +1,7 @@
1
1
  export declare enum SaleTransactionStatusEnum {
2
2
  PENDING = "PENDING",
3
- ACCEPTED = "ACCEPTED",
4
- IN_PROGRESS = "IN_PROGRESS",
5
- ON_HOLD = "ON_HOLD",
3
+ PROCESSING = "PROCESSING",
4
+ PAUSED = "PAUSED",
6
5
  COMPLETED = "COMPLETED",
7
6
  CANCELLED = "CANCELLED"
8
7
  }
@@ -1,9 +1,8 @@
1
1
  export var SaleTransactionStatusEnum;
2
2
  (function (SaleTransactionStatusEnum) {
3
3
  SaleTransactionStatusEnum["PENDING"] = "PENDING";
4
- SaleTransactionStatusEnum["ACCEPTED"] = "ACCEPTED";
5
- SaleTransactionStatusEnum["IN_PROGRESS"] = "IN_PROGRESS";
6
- SaleTransactionStatusEnum["ON_HOLD"] = "ON_HOLD";
4
+ SaleTransactionStatusEnum["PROCESSING"] = "PROCESSING";
5
+ SaleTransactionStatusEnum["PAUSED"] = "PAUSED";
7
6
  SaleTransactionStatusEnum["COMPLETED"] = "COMPLETED";
8
7
  SaleTransactionStatusEnum["CANCELLED"] = "CANCELLED";
9
8
  })(SaleTransactionStatusEnum || (SaleTransactionStatusEnum = {}));
@@ -1,9 +1,6 @@
1
1
  import { SaleTransactionEntity } from './';
2
- import { SaleTransactionStatusEnum } from './';
3
- import { SaveShippingValidator } from '../shipping';
4
2
  import { AbstractValidator, ReadValidator, SearchValidator } from '../../..';
5
3
  import { SaleItemValidator } from '../item';
6
- import { SalePaymentValidator } from '../payment';
7
4
  export declare class SearchSaleTransactionValidator extends SearchValidator<SaleTransactionEntity> {
8
5
  }
9
6
  export declare class ReadSaleTransactionValidator extends ReadValidator<SaleTransactionEntity> {
@@ -12,10 +9,8 @@ export declare class SaveSaleTransactionValidator extends AbstractValidator {
12
9
  constructor(entity?: SaleTransactionEntity);
13
10
  items: SaleItemValidator[];
14
11
  notes: string;
15
- shipping?: SaveShippingValidator;
16
- payment: SalePaymentValidator;
17
12
  user: string;
18
13
  customer?: string;
19
- status?: SaleTransactionStatusEnum;
14
+ warehouse: string;
20
15
  get total(): number;
21
16
  }
@@ -9,11 +9,8 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  };
10
10
  import * as class_transformer_1 from "class-transformer";
11
11
  import * as class_validator_1 from "class-validator";
12
- import * as transaction_enum_1 from './transaction.enum.js';
13
- import * as shipping_validator_1 from '../shipping';
14
12
  import * as abstract_validator_1 from '../../..';
15
13
  import * as item_validator_1 from '../item';
16
- import * as payment_validator_1 from '../payment';
17
14
  export class SearchSaleTransactionValidator extends abstract_validator_1.SearchValidator {
18
15
  }
19
16
  export class ReadSaleTransactionValidator extends abstract_validator_1.ReadValidator {
@@ -33,15 +30,12 @@ export class SaveSaleTransactionValidator extends abstract_validator_1.AbstractV
33
30
  this.notes = entity.notes;
34
31
  this.customer = (0, abstract_validator_1.toId)(entity.customer);
35
32
  this.user = (0, abstract_validator_1.toId)(entity.user);
36
- this.status = entity.status;
37
33
  }
38
34
  items = [];
39
35
  notes;
40
- shipping;
41
- payment;
42
36
  user;
43
37
  customer;
44
- status;
38
+ warehouse;
45
39
  get total() {
46
40
  return this.items.reduce((sum, item) => sum + item.total, 0);
47
41
  }
@@ -60,20 +54,6 @@ __decorate([
60
54
  (0, class_validator_1.IsOptional)(),
61
55
  __metadata("design:type", String)
62
56
  ], SaveSaleTransactionValidator.prototype, "notes", void 0);
63
- __decorate([
64
- (0, class_transformer_1.Type)(() => shipping_validator_1.SaveShippingValidator),
65
- (0, class_validator_1.ValidateNested)(),
66
- (0, class_validator_1.IsObject)(),
67
- (0, class_validator_1.IsOptional)(),
68
- __metadata("design:type", shipping_validator_1.SaveShippingValidator)
69
- ], SaveSaleTransactionValidator.prototype, "shipping", void 0);
70
- __decorate([
71
- (0, class_transformer_1.Type)(() => payment_validator_1.SalePaymentValidator),
72
- (0, class_validator_1.ValidateNested)(),
73
- (0, class_validator_1.IsObject)(),
74
- (0, class_validator_1.IsOptional)({ groups: ['update'] }),
75
- __metadata("design:type", payment_validator_1.SalePaymentValidator)
76
- ], SaveSaleTransactionValidator.prototype, "payment", void 0);
77
57
  __decorate([
78
58
  (0, class_validator_1.IsMongoId)(),
79
59
  (0, class_validator_1.IsOptional)({ groups: ['update'] }),
@@ -85,7 +65,7 @@ __decorate([
85
65
  __metadata("design:type", String)
86
66
  ], SaveSaleTransactionValidator.prototype, "customer", void 0);
87
67
  __decorate([
88
- (0, class_validator_1.IsEnum)(transaction_enum_1.SaleTransactionStatusEnum),
89
- (0, class_validator_1.IsOptional)(),
68
+ (0, class_validator_1.IsMongoId)(),
69
+ (0, class_validator_1.IsOptional)({ groups: ['update'] }),
90
70
  __metadata("design:type", String)
91
- ], SaveSaleTransactionValidator.prototype, "status", void 0);
71
+ ], SaveSaleTransactionValidator.prototype, "warehouse", void 0);
@@ -3,11 +3,12 @@ export declare enum SettingsOrganizationEnum {
3
3
  APP_CONTACT = "app.contact",
4
4
  APP_REGIONAL = "app.regional",
5
5
  APP_ADDRESS = "app.address",
6
- ORDER_SALE_SEQUENCE = "order.sale.sequence",
6
+ ORDER_SALE_TRANSACTION_SEQUENCE = "order.sale.transaction.sequence",
7
7
  ORDER_SALE_PAYMENT_SEQUENCE = "order.sale.payment.sequence",
8
- ORDER_SALE_SHIPPING_SEQUENCE = "order.sale.shipping.sequence",
9
- ORDER_PURCHASE_SEQUENCE = "order.purchase.sequence",
8
+ ORDER_PURCHASE_TRANSACTION_SEQUENCE = "order.purchase.transaction.sequence",
10
9
  INVENTORY_STOCK_TRANSFER_SEQUENCE = "inventory.stock.transfer.sequence",
10
+ FINANCE_INVOICE_SEQUENCE = "finance.invoice.sequence",
11
+ FINANCE_PAYMENT_SEQUENCE = "finance.payment.sequence",
11
12
  FINANCE_REFUND_SEQUENCE = "finance.refund.sequence",
12
- FINANCE_INVOICE_SEQUENCE = "finance.invoice.sequence"
13
+ FINANCE_SUBSCRIPTION_SEQUENCE = "finance.subscription.sequence"
13
14
  }
@@ -4,11 +4,12 @@ export var SettingsOrganizationEnum;
4
4
  SettingsOrganizationEnum["APP_CONTACT"] = "app.contact";
5
5
  SettingsOrganizationEnum["APP_REGIONAL"] = "app.regional";
6
6
  SettingsOrganizationEnum["APP_ADDRESS"] = "app.address";
7
- SettingsOrganizationEnum["ORDER_SALE_SEQUENCE"] = "order.sale.sequence";
7
+ SettingsOrganizationEnum["ORDER_SALE_TRANSACTION_SEQUENCE"] = "order.sale.transaction.sequence";
8
8
  SettingsOrganizationEnum["ORDER_SALE_PAYMENT_SEQUENCE"] = "order.sale.payment.sequence";
9
- SettingsOrganizationEnum["ORDER_SALE_SHIPPING_SEQUENCE"] = "order.sale.shipping.sequence";
10
- SettingsOrganizationEnum["ORDER_PURCHASE_SEQUENCE"] = "order.purchase.sequence";
9
+ SettingsOrganizationEnum["ORDER_PURCHASE_TRANSACTION_SEQUENCE"] = "order.purchase.transaction.sequence";
11
10
  SettingsOrganizationEnum["INVENTORY_STOCK_TRANSFER_SEQUENCE"] = "inventory.stock.transfer.sequence";
12
- SettingsOrganizationEnum["FINANCE_REFUND_SEQUENCE"] = "finance.refund.sequence";
13
11
  SettingsOrganizationEnum["FINANCE_INVOICE_SEQUENCE"] = "finance.invoice.sequence";
12
+ SettingsOrganizationEnum["FINANCE_PAYMENT_SEQUENCE"] = "finance.payment.sequence";
13
+ SettingsOrganizationEnum["FINANCE_REFUND_SEQUENCE"] = "finance.refund.sequence";
14
+ SettingsOrganizationEnum["FINANCE_SUBSCRIPTION_SEQUENCE"] = "finance.subscription.sequence";
14
15
  })(SettingsOrganizationEnum || (SettingsOrganizationEnum = {}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@merkaly/api",
3
- "version": "0.4.8",
3
+ "version": "0.5.0",
4
4
  "type": "module",
5
5
  "description": "Shared TypeScript interfaces and enums for Merkaly API",
6
6
  "exports": {
@@ -68,10 +68,6 @@
68
68
  "types": "./dist/order/purchase/item/index.d.ts",
69
69
  "default": "./dist/order/purchase/item/index.js"
70
70
  },
71
- "./order/sale/shipping": {
72
- "types": "./dist/order/sale/shipping/index.d.ts",
73
- "default": "./dist/order/sale/shipping/index.js"
74
- },
75
71
  "./finance/payment": {
76
72
  "types": "./dist/finance/payment/index.d.ts",
77
73
  "default": "./dist/finance/payment/index.js"
@@ -1,3 +0,0 @@
1
- export * from './shipping.entity';
2
- export * from './shipping.validator';
3
- export * from './shipping.enum';
@@ -1,2 +0,0 @@
1
- export * from './shipping.validator.js';
2
- export * from './shipping.enum.js';
@@ -1,18 +0,0 @@
1
- import { SaleTransactionEntity } from '../transaction';
2
- import { AbstractEntity } from '../../..';
3
- import { CreateEntityArgs } from '../../..';
4
- import { AddressEntity } from '../../..';
5
- import { SaleShippingStatusEnum, SaleShippingTypeEnum } from './shipping.enum.js';
6
- import type { MongoEntity } from '../../..';
7
- export declare class SaleShippingEntity extends AbstractEntity {
8
- order: MongoEntity<SaleTransactionEntity>;
9
- status: SaleShippingStatusEnum;
10
- date: Date;
11
- destinationAddress: CreateEntityArgs<AddressEntity>;
12
- originAddress: AddressEntity;
13
- cost: number;
14
- distance: number;
15
- type: SaleShippingTypeEnum;
16
- sequence: number;
17
- readonly number: string;
18
- }
@@ -1,16 +0,0 @@
1
- export declare enum SaleShippingStatusEnum {
2
- OPEN = "OPEN",
3
- NOT_REQUIRED = "NOT_REQUIRED",
4
- PROCESSING = "PROCESSING",
5
- SHIPPED = "SHIPPED",
6
- IN_TRANSIT = "IN_TRANSIT",
7
- DELIVERED = "DELIVERED",
8
- FAILED = "FAILED",
9
- RETURNED = "RETURNED",
10
- CANCELLED = "CANCELLED"
11
- }
12
- export declare enum SaleShippingTypeEnum {
13
- PICKUP = "PICKUP",
14
- DELIVERY = "DELIVERY",
15
- DROPOFF = "DROPOFF"
16
- }
@@ -1,18 +0,0 @@
1
- export var SaleShippingStatusEnum;
2
- (function (SaleShippingStatusEnum) {
3
- SaleShippingStatusEnum["OPEN"] = "OPEN";
4
- SaleShippingStatusEnum["NOT_REQUIRED"] = "NOT_REQUIRED";
5
- SaleShippingStatusEnum["PROCESSING"] = "PROCESSING";
6
- SaleShippingStatusEnum["SHIPPED"] = "SHIPPED";
7
- SaleShippingStatusEnum["IN_TRANSIT"] = "IN_TRANSIT";
8
- SaleShippingStatusEnum["DELIVERED"] = "DELIVERED";
9
- SaleShippingStatusEnum["FAILED"] = "FAILED";
10
- SaleShippingStatusEnum["RETURNED"] = "RETURNED";
11
- SaleShippingStatusEnum["CANCELLED"] = "CANCELLED";
12
- })(SaleShippingStatusEnum || (SaleShippingStatusEnum = {}));
13
- export var SaleShippingTypeEnum;
14
- (function (SaleShippingTypeEnum) {
15
- SaleShippingTypeEnum["PICKUP"] = "PICKUP";
16
- SaleShippingTypeEnum["DELIVERY"] = "DELIVERY";
17
- SaleShippingTypeEnum["DROPOFF"] = "DROPOFF";
18
- })(SaleShippingTypeEnum || (SaleShippingTypeEnum = {}));
@@ -1,14 +0,0 @@
1
- import { SaleShippingStatusEnum, SaleShippingTypeEnum } from './';
2
- import { AbstractValidator, ReadValidator } from '../../..';
3
- import { AddressValidator } from '../../..';
4
- import type { SaleShippingEntity } from './';
5
- export declare class SaveShippingValidator extends AbstractValidator {
6
- order?: string;
7
- warehouse?: string;
8
- type: SaleShippingTypeEnum;
9
- address: AddressValidator;
10
- cost?: number;
11
- status: SaleShippingStatusEnum;
12
- }
13
- export declare class ReadShippingValidator extends ReadValidator<SaleShippingEntity> {
14
- }
@@ -1,56 +0,0 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- 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;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- var __metadata = (this && this.__metadata) || function (k, v) {
8
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
9
- };
10
- import * as class_transformer_1 from "class-transformer";
11
- import * as class_validator_1 from "class-validator";
12
- import * as shipping_enum_1 from './shipping.enum.js';
13
- import * as abstract_validator_1 from '../../..';
14
- import * as address_validator_1 from '../../..';
15
- export class SaveShippingValidator extends abstract_validator_1.AbstractValidator {
16
- order;
17
- warehouse;
18
- type;
19
- address;
20
- cost;
21
- status;
22
- }
23
- __decorate([
24
- (0, class_validator_1.IsMongoId)(),
25
- (0, class_validator_1.IsOptional)(),
26
- __metadata("design:type", String)
27
- ], SaveShippingValidator.prototype, "order", void 0);
28
- __decorate([
29
- (0, class_validator_1.IsMongoId)(),
30
- (0, class_validator_1.IsOptional)(),
31
- __metadata("design:type", String)
32
- ], SaveShippingValidator.prototype, "warehouse", void 0);
33
- __decorate([
34
- (0, class_validator_1.IsEnum)(shipping_enum_1.SaleShippingTypeEnum),
35
- (0, class_validator_1.IsOptional)({ groups: ['update'] }),
36
- __metadata("design:type", String)
37
- ], SaveShippingValidator.prototype, "type", void 0);
38
- __decorate([
39
- (0, class_transformer_1.Type)(() => address_validator_1.AddressValidator),
40
- (0, class_validator_1.ValidateNested)(),
41
- (0, class_validator_1.IsObject)(),
42
- (0, class_validator_1.IsOptional)({ groups: ['update'] }),
43
- __metadata("design:type", address_validator_1.AddressValidator)
44
- ], SaveShippingValidator.prototype, "address", void 0);
45
- __decorate([
46
- (0, class_validator_1.IsPositive)(),
47
- (0, class_validator_1.IsOptional)(),
48
- __metadata("design:type", Number)
49
- ], SaveShippingValidator.prototype, "cost", void 0);
50
- __decorate([
51
- (0, class_validator_1.IsEnum)(shipping_enum_1.SaleShippingStatusEnum),
52
- (0, class_validator_1.IsDefined)({ groups: ['update:status'] }),
53
- __metadata("design:type", String)
54
- ], SaveShippingValidator.prototype, "status", void 0);
55
- export class ReadShippingValidator extends abstract_validator_1.ReadValidator {
56
- }