@unchainedshop/core-orders 4.3.4 → 4.4.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 (84) hide show
  1. package/README.md +137 -3
  2. package/lib/db/OrderDeliveriesCollection.d.ts +8 -8
  3. package/lib/db/OrderDeliveriesCollection.js +6 -9
  4. package/lib/db/OrderDiscountsCollection.d.ts +7 -7
  5. package/lib/db/OrderDiscountsCollection.js +5 -8
  6. package/lib/db/OrderPaymentsCollection.d.ts +8 -8
  7. package/lib/db/OrderPaymentsCollection.js +6 -9
  8. package/lib/db/OrderPositionsCollection.d.ts +2 -3
  9. package/lib/db/OrderPositionsCollection.js +1 -3
  10. package/lib/db/OrdersCollection.d.ts +9 -9
  11. package/lib/db/OrdersCollection.js +7 -10
  12. package/lib/migrations/20250502111800-currency-code.d.ts +1 -2
  13. package/lib/migrations/20250502111800-currency-code.js +1 -2
  14. package/lib/module/buildFindSelector.d.ts +1 -2
  15. package/lib/module/buildFindSelector.js +1 -2
  16. package/lib/module/configureOrderDeliveriesModule.d.ts +2 -3
  17. package/lib/module/configureOrderDeliveriesModule.js +2 -7
  18. package/lib/module/configureOrderDiscountsModule.d.ts +1 -2
  19. package/lib/module/configureOrderDiscountsModule.js +2 -4
  20. package/lib/module/configureOrderPaymentsModule.d.ts +2 -3
  21. package/lib/module/configureOrderPaymentsModule.js +2 -9
  22. package/lib/module/configureOrderPositionsModule.d.ts +2 -3
  23. package/lib/module/configureOrderPositionsModule.js +1 -4
  24. package/lib/module/configureOrdersModule-mutations.d.ts +3 -4
  25. package/lib/module/configureOrdersModule-mutations.js +2 -3
  26. package/lib/module/configureOrdersModule-queries.d.ts +2 -3
  27. package/lib/module/configureOrdersModule-queries.js +3 -3
  28. package/lib/module/configureOrdersModule.d.ts +39 -40
  29. package/lib/module/configureOrdersModule.js +17 -23
  30. package/lib/orders-index.d.ts +13 -14
  31. package/lib/orders-index.js +13 -14
  32. package/lib/orders-settings.d.ts +1 -2
  33. package/lib/orders-settings.js +0 -1
  34. package/package.json +11 -10
  35. package/lib/db/OrderDeliveriesCollection.d.ts.map +0 -1
  36. package/lib/db/OrderDeliveriesCollection.js.map +0 -1
  37. package/lib/db/OrderDiscountsCollection.d.ts.map +0 -1
  38. package/lib/db/OrderDiscountsCollection.js.map +0 -1
  39. package/lib/db/OrderPaymentsCollection.d.ts.map +0 -1
  40. package/lib/db/OrderPaymentsCollection.js.map +0 -1
  41. package/lib/db/OrderPositionsCollection.d.ts.map +0 -1
  42. package/lib/db/OrderPositionsCollection.js.map +0 -1
  43. package/lib/db/OrdersCollection.d.ts.map +0 -1
  44. package/lib/db/OrdersCollection.js.map +0 -1
  45. package/lib/migrations/20250502111800-currency-code.d.ts.map +0 -1
  46. package/lib/migrations/20250502111800-currency-code.js.map +0 -1
  47. package/lib/module/buildFindSelector.d.ts.map +0 -1
  48. package/lib/module/buildFindSelector.js.map +0 -1
  49. package/lib/module/configureOrderDeliveriesModule.d.ts.map +0 -1
  50. package/lib/module/configureOrderDeliveriesModule.js.map +0 -1
  51. package/lib/module/configureOrderDiscountsModule.d.ts.map +0 -1
  52. package/lib/module/configureOrderDiscountsModule.js.map +0 -1
  53. package/lib/module/configureOrderPaymentsModule.d.ts.map +0 -1
  54. package/lib/module/configureOrderPaymentsModule.js.map +0 -1
  55. package/lib/module/configureOrderPositionsModule.d.ts.map +0 -1
  56. package/lib/module/configureOrderPositionsModule.js.map +0 -1
  57. package/lib/module/configureOrdersModule-mutations.d.ts.map +0 -1
  58. package/lib/module/configureOrdersModule-mutations.js.map +0 -1
  59. package/lib/module/configureOrdersModule-queries.d.ts.map +0 -1
  60. package/lib/module/configureOrdersModule-queries.js.map +0 -1
  61. package/lib/module/configureOrdersModule.d.ts.map +0 -1
  62. package/lib/module/configureOrdersModule.js.map +0 -1
  63. package/lib/orders-index.d.ts.map +0 -1
  64. package/lib/orders-index.js.map +0 -1
  65. package/lib/orders-settings.d.ts.map +0 -1
  66. package/lib/orders-settings.js.map +0 -1
  67. package/src/db/OrderDeliveriesCollection.ts +0 -34
  68. package/src/db/OrderDiscountsCollection.ts +0 -30
  69. package/src/db/OrderPaymentsCollection.ts +0 -35
  70. package/src/db/OrderPositionsCollection.ts +0 -32
  71. package/src/db/OrdersCollection.ts +0 -87
  72. package/src/migrations/20250502111800-currency-code.ts +0 -18
  73. package/src/module/buildFindSelector.test.ts +0 -121
  74. package/src/module/buildFindSelector.ts +0 -49
  75. package/src/module/configureOrderDeliveriesModule.ts +0 -157
  76. package/src/module/configureOrderDiscountsModule.ts +0 -95
  77. package/src/module/configureOrderPaymentsModule.ts +0 -224
  78. package/src/module/configureOrderPositionsModule.ts +0 -244
  79. package/src/module/configureOrdersModule-mutations.ts +0 -178
  80. package/src/module/configureOrdersModule-queries.ts +0 -159
  81. package/src/module/configureOrdersModule.ts +0 -257
  82. package/src/orders-index.ts +0 -13
  83. package/src/orders-settings.ts +0 -45
  84. package/tsconfig.json +0 -9
package/README.md CHANGED
@@ -1,5 +1,139 @@
1
- # Orders (Unchained Engine)
1
+ [![npm version](https://img.shields.io/npm/v/@unchainedshop/core-orders.svg)](https://npmjs.com/package/@unchainedshop/core-orders)
2
+ [![License: EUPL-1.2](https://img.shields.io/badge/License-EUPL--1.2-blue.svg)](https://opensource.org/licenses/EUPL-1.2)
2
3
 
3
- This package contains business logic and database abstraction for orders in Unchained.
4
+ # @unchainedshop/core-orders
4
5
 
5
- Find documentation of available [settings](https://docs.unchained.shop/config/orders/) here
6
+ Order management module for the Unchained Engine. Handles the complete order lifecycle including positions, payments, deliveries, and discounts.
7
+
8
+ ## Installation
9
+
10
+ ```bash
11
+ npm install @unchainedshop/core-orders
12
+ ```
13
+
14
+ ## Usage
15
+
16
+ ```typescript
17
+ import { configureOrdersModule, OrderStatus } from '@unchainedshop/core-orders';
18
+
19
+ const ordersModule = await configureOrdersModule({ db });
20
+
21
+ // Create an order
22
+ const orderId = await ordersModule.create({
23
+ userId: 'user-123',
24
+ currency: 'CHF',
25
+ countryCode: 'CH',
26
+ });
27
+
28
+ // Add position to order
29
+ await ordersModule.positions.create({
30
+ orderId,
31
+ productId: 'product-456',
32
+ quantity: 2,
33
+ });
34
+
35
+ // Checkout order
36
+ await ordersModule.checkout(orderId, { paymentContext: {} });
37
+ ```
38
+
39
+ ## API Overview
40
+
41
+ ### Module Configuration
42
+
43
+ | Export | Description |
44
+ |--------|-------------|
45
+ | `configureOrdersModule` | Configure and return the orders module |
46
+
47
+ ### Queries
48
+
49
+ | Method | Description |
50
+ |--------|-------------|
51
+ | `findOrder` | Find order by ID or number |
52
+ | `findOrders` | Find orders with filtering and pagination |
53
+ | `count` | Count orders matching query |
54
+ | `orderExists` | Check if order exists |
55
+
56
+ ### Mutations
57
+
58
+ | Method | Description |
59
+ |--------|-------------|
60
+ | `create` | Create a new order |
61
+ | `update` | Update order data |
62
+ | `delete` | Delete an order |
63
+ | `checkout` | Process order checkout |
64
+ | `confirm` | Confirm an order |
65
+ | `reject` | Reject an order |
66
+ | `setPaymentProvider` | Set payment provider |
67
+ | `setDeliveryProvider` | Set delivery provider |
68
+
69
+ ### Submodules
70
+
71
+ #### Positions (`orders.positions`)
72
+ | Method | Description |
73
+ |--------|-------------|
74
+ | `findPositions` | Find order positions |
75
+ | `create` | Add position to order |
76
+ | `update` | Update position |
77
+ | `delete` | Remove position |
78
+
79
+ #### Payments (`orders.payments`)
80
+ | Method | Description |
81
+ |--------|-------------|
82
+ | `findPayment` | Find order payment |
83
+ | `create` | Create payment for order |
84
+ | `markPaid` | Mark payment as paid |
85
+ | `charge` | Charge the payment |
86
+
87
+ #### Deliveries (`orders.deliveries`)
88
+ | Method | Description |
89
+ |--------|-------------|
90
+ | `findDelivery` | Find order delivery |
91
+ | `create` | Create delivery for order |
92
+ | `markDelivered` | Mark as delivered |
93
+ | `send` | Trigger delivery |
94
+
95
+ #### Discounts (`orders.discounts`)
96
+ | Method | Description |
97
+ |--------|-------------|
98
+ | `findDiscounts` | Find order discounts |
99
+ | `create` | Add discount to order |
100
+ | `delete` | Remove discount |
101
+
102
+ ### Constants
103
+
104
+ | Export | Description |
105
+ |--------|-------------|
106
+ | `OrderStatus` | Order status values (OPEN, PENDING, CONFIRMED, FULLFILLED, REJECTED) |
107
+
108
+ ### Settings
109
+
110
+ | Export | Description |
111
+ |--------|-------------|
112
+ | `ordersSettings` | Access order module settings |
113
+
114
+ ### Types
115
+
116
+ | Export | Description |
117
+ |--------|-------------|
118
+ | `Order` | Order document type |
119
+ | `OrderPosition` | Position document type |
120
+ | `OrderPayment` | Payment document type |
121
+ | `OrderDelivery` | Delivery document type |
122
+ | `OrderDiscount` | Discount document type |
123
+ | `OrdersModule` | Module interface type |
124
+
125
+ ## Events
126
+
127
+ | Event | Description |
128
+ |-------|-------------|
129
+ | `ORDER_CREATE` | Order created |
130
+ | `ORDER_UPDATE` | Order updated |
131
+ | `ORDER_REMOVE` | Order deleted |
132
+ | `ORDER_CHECKOUT` | Order checked out |
133
+ | `ORDER_CONFIRMED` | Order confirmed |
134
+ | `ORDER_REJECTED` | Order rejected |
135
+ | `ORDER_FULLFILLED` | Order fulfilled |
136
+
137
+ ## License
138
+
139
+ EUPL-1.2
@@ -1,10 +1,11 @@
1
- import { mongodb, LogFields, TimestampFields } from '@unchainedshop/mongodb';
2
- import { Price } from '@unchainedshop/utils';
3
- export declare enum OrderDeliveryStatus {
4
- OPEN = "OPEN",// Null value is mapped to OPEN status
5
- DELIVERED = "DELIVERED",
6
- RETURNED = "RETURNED"
7
- }
1
+ import { mongodb, type LogFields, type TimestampFields } from '@unchainedshop/mongodb';
2
+ import type { Price } from '@unchainedshop/utils';
3
+ export declare const OrderDeliveryStatus: {
4
+ readonly OPEN: "OPEN";
5
+ readonly DELIVERED: "DELIVERED";
6
+ readonly RETURNED: "RETURNED";
7
+ };
8
+ export type OrderDeliveryStatus = (typeof OrderDeliveryStatus)[keyof typeof OrderDeliveryStatus];
8
9
  export type OrderDelivery = {
9
10
  _id: string;
10
11
  orderId: string;
@@ -20,4 +21,3 @@ export type OrderDeliveryDiscount = Omit<Price, '_id'> & {
20
21
  item: OrderDelivery;
21
22
  };
22
23
  export declare const OrderDeliveriesCollection: (db: mongodb.Db) => Promise<mongodb.Collection<OrderDelivery>>;
23
- //# sourceMappingURL=OrderDeliveriesCollection.d.ts.map
@@ -1,14 +1,11 @@
1
- import { buildDbIndexes } from '@unchainedshop/mongodb';
2
- export var OrderDeliveryStatus;
3
- (function (OrderDeliveryStatus) {
4
- OrderDeliveryStatus["OPEN"] = "OPEN";
5
- OrderDeliveryStatus["DELIVERED"] = "DELIVERED";
6
- OrderDeliveryStatus["RETURNED"] = "RETURNED";
7
- })(OrderDeliveryStatus || (OrderDeliveryStatus = {}));
1
+ import { mongodb, buildDbIndexes } from '@unchainedshop/mongodb';
2
+ export const OrderDeliveryStatus = {
3
+ OPEN: 'OPEN',
4
+ DELIVERED: 'DELIVERED',
5
+ RETURNED: 'RETURNED',
6
+ };
8
7
  export const OrderDeliveriesCollection = async (db) => {
9
8
  const OrderDeliveries = db.collection('order_deliveries');
10
- // Order Indexes
11
9
  await buildDbIndexes(OrderDeliveries, [{ index: { orderId: 1 } }]);
12
10
  return OrderDeliveries;
13
11
  };
14
- //# sourceMappingURL=OrderDeliveriesCollection.js.map
@@ -1,5 +1,5 @@
1
- import { mongodb, TimestampFields } from '@unchainedshop/mongodb';
2
- import { Price } from '@unchainedshop/utils';
1
+ import { mongodb, type TimestampFields } from '@unchainedshop/mongodb';
2
+ import type { Price } from '@unchainedshop/utils';
3
3
  export type OrderDiscount = {
4
4
  _id: string;
5
5
  orderId: string;
@@ -11,8 +11,8 @@ export type OrderDiscount = {
11
11
  context?: any;
12
12
  } & TimestampFields;
13
13
  export declare const OrderDiscountsCollection: (db: mongodb.Db) => Promise<mongodb.Collection<OrderDiscount>>;
14
- export declare enum OrderDiscountTrigger {
15
- USER = "USER",
16
- SYSTEM = "SYSTEM"
17
- }
18
- //# sourceMappingURL=OrderDiscountsCollection.d.ts.map
14
+ export declare const OrderDiscountTrigger: {
15
+ readonly USER: "USER";
16
+ readonly SYSTEM: "SYSTEM";
17
+ };
18
+ export type OrderDiscountTrigger = (typeof OrderDiscountTrigger)[keyof typeof OrderDiscountTrigger];
@@ -1,16 +1,13 @@
1
- import { buildDbIndexes } from '@unchainedshop/mongodb';
1
+ import { mongodb, buildDbIndexes } from '@unchainedshop/mongodb';
2
2
  export const OrderDiscountsCollection = async (db) => {
3
3
  const OrderDiscounts = db.collection('order_discounts');
4
- // Order Indexes
5
4
  await buildDbIndexes(OrderDiscounts, [
6
5
  { index: { orderId: 1 } },
7
6
  { index: { trigger: 1 } },
8
7
  ]);
9
8
  return OrderDiscounts;
10
9
  };
11
- export var OrderDiscountTrigger;
12
- (function (OrderDiscountTrigger) {
13
- OrderDiscountTrigger["USER"] = "USER";
14
- OrderDiscountTrigger["SYSTEM"] = "SYSTEM";
15
- })(OrderDiscountTrigger || (OrderDiscountTrigger = {}));
16
- //# sourceMappingURL=OrderDiscountsCollection.js.map
10
+ export const OrderDiscountTrigger = {
11
+ USER: 'USER',
12
+ SYSTEM: 'SYSTEM',
13
+ };
@@ -1,10 +1,11 @@
1
- import { mongodb, LogFields, TimestampFields } from '@unchainedshop/mongodb';
2
- import { Price } from '@unchainedshop/utils';
3
- export declare enum OrderPaymentStatus {
4
- OPEN = "OPEN",// Null value is mapped to OPEN status
5
- PAID = "PAID",
6
- REFUNDED = "REFUNDED"
7
- }
1
+ import { mongodb, type LogFields, type TimestampFields } from '@unchainedshop/mongodb';
2
+ import type { Price } from '@unchainedshop/utils';
3
+ export declare const OrderPaymentStatus: {
4
+ readonly OPEN: "OPEN";
5
+ readonly PAID: "PAID";
6
+ readonly REFUNDED: "REFUNDED";
7
+ };
8
+ export type OrderPaymentStatus = (typeof OrderPaymentStatus)[keyof typeof OrderPaymentStatus];
8
9
  export type OrderPayment = {
9
10
  _id: string;
10
11
  orderId: string;
@@ -21,4 +22,3 @@ export type OrderPaymentDiscount = Omit<Price, '_id'> & {
21
22
  item: OrderPayment;
22
23
  };
23
24
  export declare const OrderPaymentsCollection: (db: mongodb.Db) => Promise<mongodb.Collection<OrderPayment>>;
24
- //# sourceMappingURL=OrderPaymentsCollection.d.ts.map
@@ -1,14 +1,11 @@
1
- import { buildDbIndexes } from '@unchainedshop/mongodb';
2
- export var OrderPaymentStatus;
3
- (function (OrderPaymentStatus) {
4
- OrderPaymentStatus["OPEN"] = "OPEN";
5
- OrderPaymentStatus["PAID"] = "PAID";
6
- OrderPaymentStatus["REFUNDED"] = "REFUNDED";
7
- })(OrderPaymentStatus || (OrderPaymentStatus = {}));
1
+ import { mongodb, buildDbIndexes } from '@unchainedshop/mongodb';
2
+ export const OrderPaymentStatus = {
3
+ OPEN: 'OPEN',
4
+ PAID: 'PAID',
5
+ REFUNDED: 'REFUNDED',
6
+ };
8
7
  export const OrderPaymentsCollection = async (db) => {
9
8
  const OrderPayments = db.collection('order_payments');
10
- // Order Indexes
11
9
  await buildDbIndexes(OrderPayments, [{ index: { orderId: 1 } }]);
12
10
  return OrderPayments;
13
11
  };
14
- //# sourceMappingURL=OrderPaymentsCollection.js.map
@@ -1,5 +1,5 @@
1
- import { mongodb, TimestampFields } from '@unchainedshop/mongodb';
2
- import { Price } from '@unchainedshop/utils';
1
+ import { mongodb, type TimestampFields } from '@unchainedshop/mongodb';
2
+ import type { Price } from '@unchainedshop/utils';
3
3
  export type OrderPosition = {
4
4
  _id: string;
5
5
  calculation: any[];
@@ -20,4 +20,3 @@ export type OrderPositionDiscount = Omit<Price, '_id'> & {
20
20
  item: OrderPosition;
21
21
  };
22
22
  export declare const OrderPositionsCollection: (db: mongodb.Db) => Promise<mongodb.Collection<OrderPosition>>;
23
- //# sourceMappingURL=OrderPositionsCollection.d.ts.map
@@ -1,11 +1,9 @@
1
- import { buildDbIndexes } from '@unchainedshop/mongodb';
1
+ import { mongodb, buildDbIndexes } from '@unchainedshop/mongodb';
2
2
  export const OrderPositionsCollection = async (db) => {
3
3
  const OrderPositions = db.collection('order_positions');
4
- // Order Indexes
5
4
  await buildDbIndexes(OrderPositions, [
6
5
  { index: { productId: 1 } },
7
6
  { index: { orderId: 1 } },
8
7
  ]);
9
8
  return OrderPositions;
10
9
  };
11
- //# sourceMappingURL=OrderPositionsCollection.js.map
@@ -1,11 +1,12 @@
1
- import { mongodb, Address, Contact, LogFields, TimestampFields } from '@unchainedshop/mongodb';
2
- import { DateFilterInput } from '@unchainedshop/utils';
3
- export declare enum OrderStatus {
4
- PENDING = "PENDING",
5
- CONFIRMED = "CONFIRMED",
6
- FULLFILLED = "FULLFILLED",
7
- REJECTED = "REJECTED"
8
- }
1
+ import { mongodb, type Address, type Contact, type LogFields, type TimestampFields } from '@unchainedshop/mongodb';
2
+ import type { DateFilterInput } from '@unchainedshop/utils';
3
+ export declare const OrderStatus: {
4
+ readonly PENDING: "PENDING";
5
+ readonly CONFIRMED: "CONFIRMED";
6
+ readonly FULLFILLED: "FULLFILLED";
7
+ readonly REJECTED: "REJECTED";
8
+ };
9
+ export type OrderStatus = (typeof OrderStatus)[keyof typeof OrderStatus];
9
10
  export type Order = {
10
11
  _id: string;
11
12
  billingAddress?: Address;
@@ -35,4 +36,3 @@ export interface OrderQuery extends mongodb.Filter<Order> {
35
36
  dateRange?: DateFilterInput;
36
37
  }
37
38
  export declare const OrdersCollection: (db: mongodb.Db) => Promise<mongodb.Collection<Order>>;
38
- //# sourceMappingURL=OrdersCollection.d.ts.map
@@ -1,11 +1,10 @@
1
- import { buildDbIndexes, isDocumentDBCompatModeEnabled, } from '@unchainedshop/mongodb';
2
- export var OrderStatus;
3
- (function (OrderStatus) {
4
- OrderStatus["PENDING"] = "PENDING";
5
- OrderStatus["CONFIRMED"] = "CONFIRMED";
6
- OrderStatus["FULLFILLED"] = "FULLFILLED";
7
- OrderStatus["REJECTED"] = "REJECTED";
8
- })(OrderStatus || (OrderStatus = {}));
1
+ import { mongodb, buildDbIndexes, isDocumentDBCompatModeEnabled, } from '@unchainedshop/mongodb';
2
+ export const OrderStatus = {
3
+ PENDING: 'PENDING',
4
+ CONFIRMED: 'CONFIRMED',
5
+ FULLFILLED: 'FULLFILLED',
6
+ REJECTED: 'REJECTED',
7
+ };
9
8
  export const OrdersCollection = async (db) => {
10
9
  const Orders = db.collection('orders');
11
10
  if (!isDocumentDBCompatModeEnabled()) {
@@ -33,7 +32,6 @@ export const OrdersCollection = async (db) => {
33
32
  },
34
33
  ]);
35
34
  }
36
- // Order Indexes
37
35
  await buildDbIndexes(Orders, [
38
36
  { index: { userId: 1 } },
39
37
  { index: { status: 1 } },
@@ -41,4 +39,3 @@ export const OrdersCollection = async (db) => {
41
39
  ]);
42
40
  return Orders;
43
41
  };
44
- //# sourceMappingURL=OrdersCollection.js.map
@@ -1,3 +1,2 @@
1
- import { MigrationRepository } from '@unchainedshop/mongodb';
1
+ import type { MigrationRepository } from '@unchainedshop/mongodb';
2
2
  export default function renameCurrencyCode(repository: MigrationRepository): void;
3
- //# sourceMappingURL=20250502111800-currency-code.d.ts.map
@@ -1,4 +1,4 @@
1
- import { OrdersCollection } from '../orders-index.js';
1
+ import { OrdersCollection } from "../orders-index.js";
2
2
  export default function renameCurrencyCode(repository) {
3
3
  repository?.register({
4
4
  id: 20250502111800,
@@ -11,4 +11,3 @@ export default function renameCurrencyCode(repository) {
11
11
  },
12
12
  });
13
13
  }
14
- //# sourceMappingURL=20250502111800-currency-code.js.map
@@ -1,5 +1,4 @@
1
- import { OrderQuery, Order } from '../db/OrdersCollection.js';
1
+ import type { OrderQuery, Order } from '../db/OrdersCollection.ts';
2
2
  import { mongodb } from '@unchainedshop/mongodb';
3
3
  export declare const buildFindSelector: ({ includeCarts, status, userId, queryString, paymentIds, deliveryIds, dateRange, ...rest }: OrderQuery) => mongodb.Filter<Order>;
4
4
  export default buildFindSelector;
5
- //# sourceMappingURL=buildFindSelector.d.ts.map
@@ -1,4 +1,4 @@
1
- import { assertDocumentDBCompatMode } from '@unchainedshop/mongodb';
1
+ import { assertDocumentDBCompatMode, mongodb } from '@unchainedshop/mongodb';
2
2
  export const buildFindSelector = ({ includeCarts, status, userId, queryString, paymentIds, deliveryIds, dateRange, ...rest }) => {
3
3
  const selector = { ...rest };
4
4
  if (userId) {
@@ -33,4 +33,3 @@ export const buildFindSelector = ({ includeCarts, status, userId, queryString, p
33
33
  return selector;
34
34
  };
35
35
  export default buildFindSelector;
36
- //# sourceMappingURL=buildFindSelector.js.map
@@ -1,6 +1,6 @@
1
1
  import { mongodb } from '@unchainedshop/mongodb';
2
- import { PricingCalculation } from '@unchainedshop/utils';
3
- import { OrderDelivery, OrderDeliveryStatus } from '../db/OrderDeliveriesCollection.js';
2
+ import type { PricingCalculation } from '@unchainedshop/utils';
3
+ import { type OrderDelivery, OrderDeliveryStatus } from '../db/OrderDeliveriesCollection.ts';
4
4
  export declare const buildFindByIdSelector: (orderDeliveryId: string) => mongodb.Filter<OrderDelivery>;
5
5
  export declare const configureOrderDeliveriesModule: ({ OrderDeliveries, }: {
6
6
  OrderDeliveries: mongodb.Collection<OrderDelivery>;
@@ -24,4 +24,3 @@ export declare const configureOrderDeliveriesModule: ({ OrderDeliveries, }: {
24
24
  deleteOrderDeliveries: (orderId: string) => Promise<number>;
25
25
  };
26
26
  export type OrderDeliveriesModule = ReturnType<typeof configureOrderDeliveriesModule>;
27
- //# sourceMappingURL=configureOrderDeliveriesModule.d.ts.map
@@ -1,6 +1,6 @@
1
- import { generateDbFilterById, generateDbObjectId } from '@unchainedshop/mongodb';
1
+ import { mongodb, generateDbFilterById, generateDbObjectId } from '@unchainedshop/mongodb';
2
2
  import { emit, registerEvents } from '@unchainedshop/events';
3
- import { OrderDeliveryStatus } from '../db/OrderDeliveriesCollection.js';
3
+ import { OrderDeliveryStatus } from "../db/OrderDeliveriesCollection.js";
4
4
  const ORDER_DELIVERY_EVENTS = ['ORDER_DELIVER', 'ORDER_UPDATE_DELIVERY'];
5
5
  export const buildFindByIdSelector = (orderDeliveryId) => generateDbFilterById(orderDeliveryId);
6
6
  export const configureOrderDeliveriesModule = ({ OrderDeliveries, }) => {
@@ -23,15 +23,12 @@ export const configureOrderDeliveriesModule = ({ OrderDeliveries, }) => {
23
23
  },
24
24
  };
25
25
  if (status === OrderDeliveryStatus.DELIVERED) {
26
- // eslint-disable-next-line
27
- // @ts-ignore
28
26
  modifier.$set.delivered = date;
29
27
  }
30
28
  const selector = buildFindByIdSelector(orderDeliveryId);
31
29
  return OrderDeliveries.findOneAndUpdate(selector, modifier, { returnDocument: 'after' });
32
30
  };
33
31
  return {
34
- // Queries
35
32
  findDelivery: async ({ orderDeliveryId }, options) => {
36
33
  return OrderDeliveries.findOne(buildFindByIdSelector(orderDeliveryId), options);
37
34
  },
@@ -41,7 +38,6 @@ export const configureOrderDeliveriesModule = ({ OrderDeliveries, }) => {
41
38
  return OrderDeliveries.find({ deliveryProviderId: { $in: deliveryProviderIds } }, options).toArray();
42
39
  },
43
40
  normalizedStatus,
44
- // Mutations
45
41
  create: async (doc) => {
46
42
  const { insertedId: orderDeliveryId } = await OrderDeliveries.insertOne({
47
43
  _id: generateDbObjectId(),
@@ -102,4 +98,3 @@ export const configureOrderDeliveriesModule = ({ OrderDeliveries, }) => {
102
98
  },
103
99
  };
104
100
  };
105
- //# sourceMappingURL=configureOrderDeliveriesModule.js.map
@@ -1,5 +1,5 @@
1
1
  import { mongodb } from '@unchainedshop/mongodb';
2
- import { OrderDiscount } from '../db/OrderDiscountsCollection.js';
2
+ import { type OrderDiscount } from '../db/OrderDiscountsCollection.ts';
3
3
  export declare const buildFindOrderDiscountByIdSelector: (orderDiscountId: string) => mongodb.Filter<OrderDiscount>;
4
4
  export declare const configureOrderDiscountsModule: ({ OrderDiscounts, }: {
5
5
  OrderDiscounts: mongodb.Collection<OrderDiscount>;
@@ -23,4 +23,3 @@ export declare const configureOrderDiscountsModule: ({ OrderDiscounts, }: {
23
23
  deleteOrderDiscounts: (orderId: string) => Promise<number>;
24
24
  };
25
25
  export type OrderDiscountsModule = ReturnType<typeof configureOrderDiscountsModule>;
26
- //# sourceMappingURL=configureOrderDiscountsModule.d.ts.map
@@ -1,6 +1,6 @@
1
1
  import { emit, registerEvents } from '@unchainedshop/events';
2
- import { generateDbFilterById, generateDbObjectId } from '@unchainedshop/mongodb';
3
- import { OrderDiscountTrigger } from '../db/OrderDiscountsCollection.js';
2
+ import { generateDbFilterById, generateDbObjectId, mongodb } from '@unchainedshop/mongodb';
3
+ import { OrderDiscountTrigger } from "../db/OrderDiscountsCollection.js";
4
4
  const ORDER_DISCOUNT_EVENTS = [
5
5
  'ORDER_CREATE_DISCOUNT',
6
6
  'ORDER_UPDATE_DISCOUNT',
@@ -10,7 +10,6 @@ export const buildFindOrderDiscountByIdSelector = (orderDiscountId) => generateD
10
10
  export const configureOrderDiscountsModule = ({ OrderDiscounts, }) => {
11
11
  registerEvents(ORDER_DISCOUNT_EVENTS);
12
12
  return {
13
- // Queries
14
13
  findOrderDiscount: async ({ discountId }, options) => {
15
14
  return OrderDiscounts.findOne(buildFindOrderDiscountByIdSelector(discountId), options);
16
15
  },
@@ -66,4 +65,3 @@ export const configureOrderDiscountsModule = ({ OrderDiscounts, }) => {
66
65
  },
67
66
  };
68
67
  };
69
- //# sourceMappingURL=configureOrderDiscountsModule.js.map
@@ -1,6 +1,6 @@
1
1
  import { mongodb } from '@unchainedshop/mongodb';
2
- import { PricingCalculation } from '@unchainedshop/utils';
3
- import { OrderPayment, OrderPaymentStatus } from '../db/OrderPaymentsCollection.js';
2
+ import type { PricingCalculation } from '@unchainedshop/utils';
3
+ import { type OrderPayment, OrderPaymentStatus } from '../db/OrderPaymentsCollection.ts';
4
4
  export declare const buildFindOrderPaymentByIdSelector: (orderPaymentId: string) => mongodb.Filter<OrderPayment>;
5
5
  export declare const buildFindByContextDataSelector: (context: any) => mongodb.Filter<OrderPayment> | null;
6
6
  export declare const configureOrderPaymentsModule: ({ OrderPayments, }: {
@@ -32,4 +32,3 @@ export declare const configureOrderPaymentsModule: ({ OrderPayments, }: {
32
32
  deleteOrderPayments: (orderId: string) => Promise<number>;
33
33
  };
34
34
  export type OrderPaymentsModule = ReturnType<typeof configureOrderPaymentsModule>;
35
- //# sourceMappingURL=configureOrderPaymentsModule.d.ts.map
@@ -1,6 +1,6 @@
1
1
  import { emit, registerEvents } from '@unchainedshop/events';
2
- import { generateDbFilterById, generateDbObjectId } from '@unchainedshop/mongodb';
3
- import { OrderPaymentStatus } from '../db/OrderPaymentsCollection.js';
2
+ import { generateDbFilterById, generateDbObjectId, mongodb } from '@unchainedshop/mongodb';
3
+ import { OrderPaymentStatus } from "../db/OrderPaymentsCollection.js";
4
4
  const ORDER_PAYMENT_EVENTS = ['ORDER_UPDATE_PAYMENT', 'ORDER_SIGN_PAYMENT', 'ORDER_PAY'];
5
5
  export const buildFindOrderPaymentByIdSelector = (orderPaymentId) => generateDbFilterById(orderPaymentId);
6
6
  export const buildFindByContextDataSelector = (context) => {
@@ -35,20 +35,15 @@ export const configureOrderPaymentsModule = ({ OrderPayments, }) => {
35
35
  },
36
36
  };
37
37
  if (transactionId) {
38
- // eslint-disable-next-line
39
- // @ts-ignore
40
38
  modifier.$set.transactionId = transactionId;
41
39
  }
42
40
  if (status === OrderPaymentStatus.PAID) {
43
- // eslint-disable-next-line
44
- // @ts-ignore
45
41
  modifier.$set.paid = date;
46
42
  }
47
43
  const selector = buildFindOrderPaymentByIdSelector(orderPaymentId);
48
44
  return OrderPayments.findOneAndUpdate(selector, modifier, { returnDocument: 'after' });
49
45
  };
50
46
  return {
51
- // Queries
52
47
  findOrderPayment: async ({ orderPaymentId, }, options) => {
53
48
  return OrderPayments.findOne(buildFindOrderPaymentByIdSelector(orderPaymentId), options);
54
49
  },
@@ -70,7 +65,6 @@ export const configureOrderPaymentsModule = ({ OrderPayments, }) => {
70
65
  return OrderPayments.countDocuments(selector, options);
71
66
  },
72
67
  normalizedStatus,
73
- // Mutations
74
68
  create: async (doc) => {
75
69
  const { insertedId: orderPaymentId } = await OrderPayments.insertOne({
76
70
  _id: generateDbObjectId(),
@@ -140,4 +134,3 @@ export const configureOrderPaymentsModule = ({ OrderPayments, }) => {
140
134
  },
141
135
  };
142
136
  };
143
- //# sourceMappingURL=configureOrderPaymentsModule.js.map
@@ -1,6 +1,6 @@
1
1
  import { mongodb } from '@unchainedshop/mongodb';
2
- import { PricingCalculation } from '@unchainedshop/utils';
3
- import { OrderPosition } from '../db/OrderPositionsCollection.js';
2
+ import type { PricingCalculation } from '@unchainedshop/utils';
3
+ import type { OrderPosition } from '../db/OrderPositionsCollection.ts';
4
4
  export interface OrderPositionAggregateParams {
5
5
  match?: mongodb.Document;
6
6
  matchAfterGroup?: mongodb.Document;
@@ -52,4 +52,3 @@ export declare const configureOrderPositionsModule: ({ OrderPositions, }: {
52
52
  aggregatePositions: ({ match, project, group, addFields, sort, limit, pipeline, }: OrderPositionAggregateParams) => Promise<mongodb.Document[]>;
53
53
  };
54
54
  export type OrderPositionsModule = ReturnType<typeof configureOrderPositionsModule>;
55
- //# sourceMappingURL=configureOrderPositionsModule.d.ts.map
@@ -1,5 +1,5 @@
1
1
  import { emit, registerEvents } from '@unchainedshop/events';
2
- import { generateDbFilterById, generateDbObjectId } from '@unchainedshop/mongodb';
2
+ import { generateDbFilterById, generateDbObjectId, mongodb } from '@unchainedshop/mongodb';
3
3
  const ORDER_POSITION_EVENTS = [
4
4
  'ORDER_UPDATE_CART_ITEM',
5
5
  'ORDER_REMOVE_CART_ITEM',
@@ -10,7 +10,6 @@ export const buildFindOrderPositionByIdSelector = (orderPositionId, orderId) =>
10
10
  export const configureOrderPositionsModule = ({ OrderPositions, }) => {
11
11
  registerEvents(ORDER_POSITION_EVENTS);
12
12
  return {
13
- // Queries
14
13
  findOrderPosition: async ({ itemId }, options) => {
15
14
  return OrderPositions.findOne(buildFindOrderPositionByIdSelector(itemId), options);
16
15
  },
@@ -102,7 +101,6 @@ export const configureOrderPositionsModule = ({ OrderPositions, }) => {
102
101
  },
103
102
  addProductItem: async (orderPosition) => {
104
103
  const { configuration, orderId, originalProductId, productId, quantity, ...scope } = orderPosition;
105
- // Search for existing position
106
104
  const selector = {
107
105
  orderId,
108
106
  productId,
@@ -155,4 +153,3 @@ export const configureOrderPositionsModule = ({ OrderPositions, }) => {
155
153
  },
156
154
  };
157
155
  };
158
- //# sourceMappingURL=configureOrderPositionsModule.js.map
@@ -1,6 +1,6 @@
1
- import { Address, Contact, mongodb } from '@unchainedshop/mongodb';
2
- import { Order } from '../db/OrdersCollection.js';
3
- import { OrderPosition } from '../db/OrderPositionsCollection.js';
1
+ import { type Address, type Contact, mongodb } from '@unchainedshop/mongodb';
2
+ import { type Order } from '../db/OrdersCollection.ts';
3
+ import type { OrderPosition } from '../db/OrderPositionsCollection.ts';
4
4
  export declare const configureOrderModuleMutations: ({ Orders, OrderPositions, }: {
5
5
  Orders: mongodb.Collection<Order>;
6
6
  OrderPositions: mongodb.Collection<OrderPosition>;
@@ -30,4 +30,3 @@ export declare const configureOrderModuleMutations: ({ Orders, OrderPositions, }
30
30
  updateContext: (orderId: string, context: any) => Promise<mongodb.WithId<Order> | null>;
31
31
  };
32
32
  export type OrderMutations = ReturnType<typeof configureOrderModuleMutations>;
33
- //# sourceMappingURL=configureOrdersModule-mutations.d.ts.map
@@ -1,6 +1,6 @@
1
1
  import { emit, registerEvents } from '@unchainedshop/events';
2
- import { generateDbFilterById, generateDbObjectId, } from '@unchainedshop/mongodb';
3
- import { OrderStatus } from '../db/OrdersCollection.js';
2
+ import { generateDbFilterById, generateDbObjectId, mongodb, } from '@unchainedshop/mongodb';
3
+ import { OrderStatus } from "../db/OrdersCollection.js";
4
4
  const ORDER_EVENTS = [
5
5
  'ORDER_CREATE',
6
6
  'ORDER_REMOVE',
@@ -109,4 +109,3 @@ export const configureOrderModuleMutations = ({ Orders, OrderPositions, }) => {
109
109
  },
110
110
  };
111
111
  };
112
- //# sourceMappingURL=configureOrdersModule-mutations.js.map
@@ -1,6 +1,6 @@
1
- import { SortOption } from '@unchainedshop/utils';
1
+ import { type SortOption } from '@unchainedshop/utils';
2
2
  import { mongodb } from '@unchainedshop/mongodb';
3
- import { Order, OrderQuery } from '../db/OrdersCollection.js';
3
+ import { type Order, type OrderQuery } from '../db/OrdersCollection.ts';
4
4
  export interface OrderReport {
5
5
  newCount: number;
6
6
  checkoutCount: number;
@@ -51,4 +51,3 @@ export declare const configureOrdersModuleQueries: ({ Orders }: {
51
51
  aggregateOrders: ({ match, project, group, sort, limit, addFields, pipeline, }: OrderAggregateParams) => Promise<mongodb.Document[]>;
52
52
  };
53
53
  export type OrderQueries = ReturnType<typeof configureOrdersModuleQueries>;
54
- //# sourceMappingURL=configureOrdersModule-queries.d.ts.map