@unchainedshop/core-orders 3.0.0-alpha7 → 3.0.0-rc.12

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 (141) hide show
  1. package/lib/db/OrderDeliveriesCollection.d.ts +21 -2
  2. package/lib/db/OrderDeliveriesCollection.d.ts.map +1 -1
  3. package/lib/db/OrderDeliveriesCollection.js +6 -0
  4. package/lib/db/OrderDeliveriesCollection.js.map +1 -1
  5. package/lib/db/OrderDiscountsCollection.d.ts +16 -2
  6. package/lib/db/OrderDiscountsCollection.d.ts.map +1 -1
  7. package/lib/db/OrderDiscountsCollection.js +5 -0
  8. package/lib/db/OrderDiscountsCollection.js.map +1 -1
  9. package/lib/db/OrderPaymentsCollection.d.ts +22 -2
  10. package/lib/db/OrderPaymentsCollection.d.ts.map +1 -1
  11. package/lib/db/OrderPaymentsCollection.js +6 -0
  12. package/lib/db/OrderPaymentsCollection.js.map +1 -1
  13. package/lib/db/OrderPositionsCollection.d.ts +22 -2
  14. package/lib/db/OrderPositionsCollection.d.ts.map +1 -1
  15. package/lib/db/OrderPositionsCollection.js.map +1 -1
  16. package/lib/db/OrdersCollection.d.ts +33 -2
  17. package/lib/db/OrdersCollection.d.ts.map +1 -1
  18. package/lib/db/OrdersCollection.js +8 -1
  19. package/lib/db/OrdersCollection.js.map +1 -1
  20. package/lib/module/buildFindSelector.d.ts +5 -0
  21. package/lib/module/buildFindSelector.d.ts.map +1 -0
  22. package/lib/module/buildFindSelector.js +18 -0
  23. package/lib/module/buildFindSelector.js.map +1 -0
  24. package/lib/module/configureOrderDeliveriesModule.d.ts +14 -27
  25. package/lib/module/configureOrderDeliveriesModule.d.ts.map +1 -1
  26. package/lib/module/configureOrderDeliveriesModule.js +8 -69
  27. package/lib/module/configureOrderDeliveriesModule.js.map +1 -1
  28. package/lib/module/configureOrderDiscountsModule.d.ts +17 -18
  29. package/lib/module/configureOrderDiscountsModule.d.ts.map +1 -1
  30. package/lib/module/configureOrderDiscountsModule.js +34 -143
  31. package/lib/module/configureOrderDiscountsModule.js.map +1 -1
  32. package/lib/module/configureOrderPaymentsModule.d.ts +17 -37
  33. package/lib/module/configureOrderPaymentsModule.d.ts.map +1 -1
  34. package/lib/module/configureOrderPaymentsModule.js +16 -124
  35. package/lib/module/configureOrderPaymentsModule.js.map +1 -1
  36. package/lib/module/configureOrderPositionsModule.d.ts +22 -41
  37. package/lib/module/configureOrderPositionsModule.d.ts.map +1 -1
  38. package/lib/module/configureOrderPositionsModule.js +22 -85
  39. package/lib/module/configureOrderPositionsModule.js.map +1 -1
  40. package/lib/module/configureOrdersModule-mutations.d.ts +5 -11
  41. package/lib/module/configureOrdersModule-mutations.d.ts.map +1 -1
  42. package/lib/module/configureOrdersModule-mutations.js +11 -50
  43. package/lib/module/configureOrdersModule-mutations.js.map +1 -1
  44. package/lib/module/configureOrdersModule-queries.d.ts +18 -6
  45. package/lib/module/configureOrdersModule-queries.d.ts.map +1 -1
  46. package/lib/module/configureOrdersModule-queries.js +35 -22
  47. package/lib/module/configureOrdersModule-queries.js.map +1 -1
  48. package/lib/module/configureOrdersModule.d.ts +11 -8
  49. package/lib/module/configureOrdersModule.d.ts.map +1 -1
  50. package/lib/module/configureOrdersModule.js +134 -154
  51. package/lib/module/configureOrdersModule.js.map +1 -1
  52. package/lib/orders-index.d.ts +11 -8
  53. package/lib/orders-index.d.ts.map +1 -1
  54. package/lib/orders-index.js +11 -8
  55. package/lib/orders-index.js.map +1 -1
  56. package/lib/orders-settings.d.ts +4 -8
  57. package/lib/orders-settings.d.ts.map +1 -1
  58. package/lib/orders-settings.js.map +1 -1
  59. package/package.json +13 -13
  60. package/src/db/OrderDeliveriesCollection.ts +25 -2
  61. package/src/db/OrderDiscountsCollection.ts +18 -2
  62. package/src/db/OrderPaymentsCollection.ts +26 -2
  63. package/src/db/OrderPositionsCollection.ts +21 -2
  64. package/src/db/OrdersCollection.ts +44 -2
  65. package/src/module/buildFindSelector.test.ts +8 -8
  66. package/src/module/buildFindSelector.ts +24 -0
  67. package/src/module/configureOrderDeliveriesModule.ts +29 -172
  68. package/src/module/configureOrderDiscountsModule.ts +46 -213
  69. package/src/module/configureOrderPaymentsModule.ts +58 -266
  70. package/src/module/configureOrderPositionsModule.ts +57 -208
  71. package/src/module/configureOrdersModule-mutations.ts +13 -85
  72. package/src/module/configureOrdersModule-queries.ts +61 -29
  73. package/src/module/configureOrdersModule.ts +181 -264
  74. package/src/orders-index.ts +11 -10
  75. package/src/orders-settings.ts +5 -7
  76. package/tsconfig.json +5 -7
  77. package/lib/db/OrderDiscountTrigger.d.ts +0 -5
  78. package/lib/db/OrderDiscountTrigger.d.ts.map +0 -1
  79. package/lib/db/OrderDiscountTrigger.js +0 -6
  80. package/lib/db/OrderDiscountTrigger.js.map +0 -1
  81. package/lib/director/OrderDiscountAdapter.d.ts +0 -4
  82. package/lib/director/OrderDiscountAdapter.d.ts.map +0 -1
  83. package/lib/director/OrderDiscountAdapter.js +0 -3
  84. package/lib/director/OrderDiscountAdapter.js.map +0 -1
  85. package/lib/director/OrderDiscountConfiguration.d.ts +0 -6
  86. package/lib/director/OrderDiscountConfiguration.d.ts.map +0 -1
  87. package/lib/director/OrderDiscountConfiguration.js +0 -2
  88. package/lib/director/OrderDiscountConfiguration.js.map +0 -1
  89. package/lib/director/OrderDiscountDirector.d.ts +0 -3
  90. package/lib/director/OrderDiscountDirector.d.ts.map +0 -1
  91. package/lib/director/OrderDiscountDirector.js +0 -3
  92. package/lib/director/OrderDiscountDirector.js.map +0 -1
  93. package/lib/director/OrderPricingAdapter.d.ts +0 -22
  94. package/lib/director/OrderPricingAdapter.d.ts.map +0 -1
  95. package/lib/director/OrderPricingAdapter.js +0 -25
  96. package/lib/director/OrderPricingAdapter.js.map +0 -1
  97. package/lib/director/OrderPricingDirector.d.ts +0 -18
  98. package/lib/director/OrderPricingDirector.d.ts.map +0 -1
  99. package/lib/director/OrderPricingDirector.js +0 -39
  100. package/lib/director/OrderPricingDirector.js.map +0 -1
  101. package/lib/director/OrderPricingSheet.d.ts +0 -36
  102. package/lib/director/OrderPricingSheet.d.ts.map +0 -1
  103. package/lib/director/OrderPricingSheet.js +0 -108
  104. package/lib/director/OrderPricingSheet.js.map +0 -1
  105. package/lib/module/configureOrdersModule-processing.d.ts +0 -32
  106. package/lib/module/configureOrdersModule-processing.d.ts.map +0 -1
  107. package/lib/module/configureOrdersModule-processing.js +0 -339
  108. package/lib/module/configureOrdersModule-processing.js.map +0 -1
  109. package/lib/module/configureOrdersModule-transformations.d.ts +0 -20
  110. package/lib/module/configureOrdersModule-transformations.d.ts.map +0 -1
  111. package/lib/module/configureOrdersModule-transformations.js +0 -111
  112. package/lib/module/configureOrdersModule-transformations.js.map +0 -1
  113. package/lib/service/migrateOrderCartService.d.ts +0 -10
  114. package/lib/service/migrateOrderCartService.d.ts.map +0 -1
  115. package/lib/service/migrateOrderCartService.js +0 -32
  116. package/lib/service/migrateOrderCartService.js.map +0 -1
  117. package/lib/service/nextUserCartService.d.ts +0 -11
  118. package/lib/service/nextUserCartService.d.ts.map +0 -1
  119. package/lib/service/nextUserCartService.js +0 -34
  120. package/lib/service/nextUserCartService.js.map +0 -1
  121. package/lib/service/orderServices.d.ts +0 -8
  122. package/lib/service/orderServices.d.ts.map +0 -1
  123. package/lib/service/orderServices.js +0 -7
  124. package/lib/service/orderServices.js.map +0 -1
  125. package/lib/types.d.ts +0 -116
  126. package/lib/types.d.ts.map +0 -1
  127. package/lib/types.js +0 -25
  128. package/lib/types.js.map +0 -1
  129. package/src/db/OrderDiscountTrigger.ts +0 -4
  130. package/src/director/OrderDiscountAdapter.ts +0 -8
  131. package/src/director/OrderDiscountConfiguration.ts +0 -5
  132. package/src/director/OrderDiscountDirector.ts +0 -5
  133. package/src/director/OrderPricingAdapter.ts +0 -61
  134. package/src/director/OrderPricingDirector.ts +0 -72
  135. package/src/director/OrderPricingSheet.ts +0 -146
  136. package/src/module/configureOrdersModule-processing.ts +0 -508
  137. package/src/module/configureOrdersModule-transformations.ts +0 -171
  138. package/src/service/migrateOrderCartService.ts +0 -53
  139. package/src/service/nextUserCartService.ts +0 -54
  140. package/src/service/orderServices.ts +0 -12
  141. package/src/types.ts +0 -129
@@ -1,4 +1,23 @@
1
- import { mongodb } from '@unchainedshop/mongodb';
2
- import { OrderDelivery } from '@unchainedshop/core-orders';
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
+ }
8
+ export type OrderDelivery = {
9
+ _id?: string;
10
+ orderId: string;
11
+ deliveryProviderId: string;
12
+ delivered?: Date;
13
+ status: OrderDeliveryStatus | null;
14
+ context?: any;
15
+ calculation: Array<any>;
16
+ } & LogFields & TimestampFields;
17
+ export type OrderDeliveryDiscount = Omit<Price, '_id'> & {
18
+ _id?: string;
19
+ discountId: string;
20
+ item: OrderDelivery;
21
+ };
3
22
  export declare const OrderDeliveriesCollection: (db: mongodb.Db) => Promise<mongodb.Collection<OrderDelivery>>;
4
23
  //# sourceMappingURL=OrderDeliveriesCollection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"OrderDeliveriesCollection.d.ts","sourceRoot":"","sources":["../../src/db/OrderDeliveriesCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkB,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,eAAO,MAAM,yBAAyB,OAAc,OAAO,CAAC,EAAE,+CAO7D,CAAC"}
1
+ {"version":3,"file":"OrderDeliveriesCollection.d.ts","sourceRoot":"","sources":["../../src/db/OrderDeliveriesCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkB,SAAS,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC7F,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE7C,oBAAY,mBAAmB;IAC7B,IAAI,SAAS,CAAE,sCAAsC;IACrD,SAAS,cAAc;IACvB,QAAQ,aAAa;CACtB;AAED,MAAM,MAAM,aAAa,GAAG;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACnC,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;CACzB,GAAG,SAAS,GACX,eAAe,CAAC;AAElB,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG;IACvD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,aAAa,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,yBAAyB,OAAc,OAAO,CAAC,EAAE,+CAO7D,CAAC"}
@@ -1,4 +1,10 @@
1
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 = {}));
2
8
  export const OrderDeliveriesCollection = async (db) => {
3
9
  const OrderDeliveries = db.collection('order_deliveries');
4
10
  // Order Indexes
@@ -1 +1 @@
1
- {"version":3,"file":"OrderDeliveriesCollection.js","sourceRoot":"","sources":["../../src/db/OrderDeliveriesCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGjE,MAAM,CAAC,MAAM,yBAAyB,GAAG,KAAK,EAAE,EAAc,EAAE,EAAE;IAChE,MAAM,eAAe,GAAG,EAAE,CAAC,UAAU,CAAgB,kBAAkB,CAAC,CAAC;IAEzE,gBAAgB;IAChB,MAAM,cAAc,CAAgB,eAAe,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAElF,OAAO,eAAe,CAAC;AACzB,CAAC,CAAC"}
1
+ {"version":3,"file":"OrderDeliveriesCollection.js","sourceRoot":"","sources":["../../src/db/OrderDeliveriesCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,cAAc,EAA8B,MAAM,wBAAwB,CAAC;AAG7F,MAAM,CAAN,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC7B,oCAAa,CAAA;IACb,8CAAuB,CAAA;IACvB,4CAAqB,CAAA;AACvB,CAAC,EAJW,mBAAmB,KAAnB,mBAAmB,QAI9B;AAmBD,MAAM,CAAC,MAAM,yBAAyB,GAAG,KAAK,EAAE,EAAc,EAAE,EAAE;IAChE,MAAM,eAAe,GAAG,EAAE,CAAC,UAAU,CAAgB,kBAAkB,CAAC,CAAC;IAEzE,gBAAgB;IAChB,MAAM,cAAc,CAAgB,eAAe,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAElF,OAAO,eAAe,CAAC;AACzB,CAAC,CAAC"}
@@ -1,4 +1,18 @@
1
- import { mongodb } from '@unchainedshop/mongodb';
2
- import { OrderDiscount } from '@unchainedshop/core-orders';
1
+ import { mongodb, TimestampFields } from '@unchainedshop/mongodb';
2
+ import { Price } from '@unchainedshop/utils';
3
+ export type OrderDiscount = {
4
+ _id?: string;
5
+ orderId: string;
6
+ code?: string;
7
+ total?: Price;
8
+ trigger?: OrderDiscountTrigger;
9
+ discountKey?: string;
10
+ reservation?: any;
11
+ context?: any;
12
+ } & TimestampFields;
3
13
  export declare const OrderDiscountsCollection: (db: mongodb.Db) => Promise<mongodb.Collection<OrderDiscount>>;
14
+ export declare enum OrderDiscountTrigger {
15
+ USER = "USER",
16
+ SYSTEM = "SYSTEM"
17
+ }
4
18
  //# sourceMappingURL=OrderDiscountsCollection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"OrderDiscountsCollection.d.ts","sourceRoot":"","sources":["../../src/db/OrderDiscountsCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkB,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,eAAO,MAAM,wBAAwB,OAAc,OAAO,CAAC,EAAE,+CAU5D,CAAC"}
1
+ {"version":3,"file":"OrderDiscountsCollection.d.ts","sourceRoot":"","sources":["../../src/db/OrderDiscountsCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkB,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE7C,MAAM,MAAM,aAAa,GAAG;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,OAAO,CAAC,EAAE,oBAAoB,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,OAAO,CAAC,EAAE,GAAG,CAAC;CACf,GAAG,eAAe,CAAC;AAEpB,eAAO,MAAM,wBAAwB,OAAc,OAAO,CAAC,EAAE,+CAU5D,CAAC;AAEF,oBAAY,oBAAoB;IAC9B,IAAI,SAAS;IACb,MAAM,WAAW;CAClB"}
@@ -8,4 +8,9 @@ export const OrderDiscountsCollection = async (db) => {
8
8
  ]);
9
9
  return OrderDiscounts;
10
10
  };
11
+ export var OrderDiscountTrigger;
12
+ (function (OrderDiscountTrigger) {
13
+ OrderDiscountTrigger["USER"] = "USER";
14
+ OrderDiscountTrigger["SYSTEM"] = "SYSTEM";
15
+ })(OrderDiscountTrigger || (OrderDiscountTrigger = {}));
11
16
  //# sourceMappingURL=OrderDiscountsCollection.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"OrderDiscountsCollection.js","sourceRoot":"","sources":["../../src/db/OrderDiscountsCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGjE,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,EAAE,EAAc,EAAE,EAAE;IAC/D,MAAM,cAAc,GAAG,EAAE,CAAC,UAAU,CAAgB,iBAAiB,CAAC,CAAC;IAEvE,gBAAgB;IAChB,MAAM,cAAc,CAAgB,cAAc,EAAE;QAClD,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE;QACzB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE;KAC1B,CAAC,CAAC;IAEH,OAAO,cAAc,CAAC;AACxB,CAAC,CAAC"}
1
+ {"version":3,"file":"OrderDiscountsCollection.js","sourceRoot":"","sources":["../../src/db/OrderDiscountsCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,cAAc,EAAmB,MAAM,wBAAwB,CAAC;AAclF,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,EAAE,EAAc,EAAE,EAAE;IAC/D,MAAM,cAAc,GAAG,EAAE,CAAC,UAAU,CAAgB,iBAAiB,CAAC,CAAC;IAEvE,gBAAgB;IAChB,MAAM,cAAc,CAAgB,cAAc,EAAE;QAClD,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE;QACzB,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE;KAC1B,CAAC,CAAC;IAEH,OAAO,cAAc,CAAC;AACxB,CAAC,CAAC;AAEF,MAAM,CAAN,IAAY,oBAGX;AAHD,WAAY,oBAAoB;IAC9B,qCAAa,CAAA;IACb,yCAAiB,CAAA;AACnB,CAAC,EAHW,oBAAoB,KAApB,oBAAoB,QAG/B"}
@@ -1,4 +1,24 @@
1
- import { mongodb } from '@unchainedshop/mongodb';
2
- import { OrderPayment } from '@unchainedshop/core-orders';
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
+ }
8
+ export type OrderPayment = {
9
+ _id?: string;
10
+ orderId: string;
11
+ context?: any;
12
+ paid?: Date;
13
+ transactionId?: string;
14
+ paymentProviderId?: string;
15
+ status?: OrderPaymentStatus | null;
16
+ calculation?: Array<any>;
17
+ } & LogFields & TimestampFields;
18
+ export type OrderPaymentDiscount = Omit<Price, '_id'> & {
19
+ _id?: string;
20
+ discountId: string;
21
+ item: OrderPayment;
22
+ };
3
23
  export declare const OrderPaymentsCollection: (db: mongodb.Db) => Promise<mongodb.Collection<OrderPayment>>;
4
24
  //# sourceMappingURL=OrderPaymentsCollection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"OrderPaymentsCollection.d.ts","sourceRoot":"","sources":["../../src/db/OrderPaymentsCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkB,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D,eAAO,MAAM,uBAAuB,OAAc,OAAO,CAAC,EAAE,8CAO3D,CAAC"}
1
+ {"version":3,"file":"OrderPaymentsCollection.d.ts","sourceRoot":"","sources":["../../src/db/OrderPaymentsCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkB,SAAS,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC7F,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE7C,oBAAY,kBAAkB;IAC5B,IAAI,SAAS,CAAE,sCAAsC;IACrD,IAAI,SAAS;IACb,QAAQ,aAAa;CACtB;AAED,MAAM,MAAM,YAAY,GAAG;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,MAAM,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACnC,WAAW,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;CAC1B,GAAG,SAAS,GACX,eAAe,CAAC;AAElB,MAAM,MAAM,oBAAoB,GAAG,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG;IACtD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,YAAY,CAAC;CACpB,CAAC;AAEF,eAAO,MAAM,uBAAuB,OAAc,OAAO,CAAC,EAAE,8CAO3D,CAAC"}
@@ -1,4 +1,10 @@
1
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 = {}));
2
8
  export const OrderPaymentsCollection = async (db) => {
3
9
  const OrderPayments = db.collection('order_payments');
4
10
  // Order Indexes
@@ -1 +1 @@
1
- {"version":3,"file":"OrderPaymentsCollection.js","sourceRoot":"","sources":["../../src/db/OrderPaymentsCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGjE,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,EAAE,EAAc,EAAE,EAAE;IAC9D,MAAM,aAAa,GAAG,EAAE,CAAC,UAAU,CAAe,gBAAgB,CAAC,CAAC;IAEpE,gBAAgB;IAChB,MAAM,cAAc,CAAe,aAAa,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAE/E,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC"}
1
+ {"version":3,"file":"OrderPaymentsCollection.js","sourceRoot":"","sources":["../../src/db/OrderPaymentsCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,cAAc,EAA8B,MAAM,wBAAwB,CAAC;AAG7F,MAAM,CAAN,IAAY,kBAIX;AAJD,WAAY,kBAAkB;IAC5B,mCAAa,CAAA;IACb,mCAAa,CAAA;IACb,2CAAqB,CAAA;AACvB,CAAC,EAJW,kBAAkB,KAAlB,kBAAkB,QAI7B;AAoBD,MAAM,CAAC,MAAM,uBAAuB,GAAG,KAAK,EAAE,EAAc,EAAE,EAAE;IAC9D,MAAM,aAAa,GAAG,EAAE,CAAC,UAAU,CAAe,gBAAgB,CAAC,CAAC;IAEpE,gBAAgB;IAChB,MAAM,cAAc,CAAe,aAAa,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;IAE/E,OAAO,aAAa,CAAC;AACvB,CAAC,CAAC"}
@@ -1,4 +1,24 @@
1
- import { mongodb } from '@unchainedshop/mongodb';
2
- import { OrderPosition } from '@unchainedshop/core-orders';
1
+ import { mongodb, TimestampFields } from '@unchainedshop/mongodb';
2
+ import { Price } from '@unchainedshop/utils';
3
+ export type OrderPosition = {
4
+ _id?: string;
5
+ calculation: Array<any>;
6
+ configuration: Array<{
7
+ key: string;
8
+ value: string;
9
+ }>;
10
+ context?: any;
11
+ orderId: string;
12
+ originalProductId: string;
13
+ productId: string;
14
+ quantity: number;
15
+ quotationId?: string;
16
+ scheduling: Array<any>;
17
+ } & TimestampFields;
18
+ export type OrderPositionDiscount = Omit<Price, '_id'> & {
19
+ _id?: string;
20
+ discountId: string;
21
+ item: OrderPosition;
22
+ };
3
23
  export declare const OrderPositionsCollection: (db: mongodb.Db) => Promise<mongodb.Collection<OrderPosition>>;
4
24
  //# sourceMappingURL=OrderPositionsCollection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"OrderPositionsCollection.d.ts","sourceRoot":"","sources":["../../src/db/OrderPositionsCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkB,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3D,eAAO,MAAM,wBAAwB,OAAc,OAAO,CAAC,EAAE,+CAU5D,CAAC"}
1
+ {"version":3,"file":"OrderPositionsCollection.d.ts","sourceRoot":"","sources":["../../src/db/OrderPositionsCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkB,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAClF,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE7C,MAAM,MAAM,aAAa,GAAG;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACxB,aAAa,EAAE,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACrD,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;CACxB,GAAG,eAAe,CAAC;AAEpB,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG;IACvD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,aAAa,CAAC;CACrB,CAAC;AAEF,eAAO,MAAM,wBAAwB,OAAc,OAAO,CAAC,EAAE,+CAU5D,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"OrderPositionsCollection.js","sourceRoot":"","sources":["../../src/db/OrderPositionsCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGjE,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,EAAE,EAAc,EAAE,EAAE;IAC/D,MAAM,cAAc,GAAG,EAAE,CAAC,UAAU,CAAgB,iBAAiB,CAAC,CAAC;IAEvE,gBAAgB;IAChB,MAAM,cAAc,CAAgB,cAAc,EAAE;QAClD,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE;QAC3B,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE;KAC1B,CAAC,CAAC;IAEH,OAAO,cAAc,CAAC;AACxB,CAAC,CAAC"}
1
+ {"version":3,"file":"OrderPositionsCollection.js","sourceRoot":"","sources":["../../src/db/OrderPositionsCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,cAAc,EAAmB,MAAM,wBAAwB,CAAC;AAsBlF,MAAM,CAAC,MAAM,wBAAwB,GAAG,KAAK,EAAE,EAAc,EAAE,EAAE;IAC/D,MAAM,cAAc,GAAG,EAAE,CAAC,UAAU,CAAgB,iBAAiB,CAAC,CAAC;IAEvE,gBAAgB;IAChB,MAAM,cAAc,CAAgB,cAAc,EAAE;QAClD,EAAE,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,EAAE;QAC3B,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,EAAE;KAC1B,CAAC,CAAC;IAEH,OAAO,cAAc,CAAC;AACxB,CAAC,CAAC"}
@@ -1,4 +1,35 @@
1
- import { mongodb } from '@unchainedshop/mongodb';
2
- import { Order } from '../types.js';
1
+ import { mongodb, Address, Contact, LogFields, TimestampFields } from '@unchainedshop/mongodb';
2
+ export declare enum OrderStatus {
3
+ PENDING = "PENDING",
4
+ CONFIRMED = "CONFIRMED",
5
+ FULLFILLED = "FULLFILLED",
6
+ REJECTED = "REJECTED"
7
+ }
8
+ export type Order = {
9
+ _id?: string;
10
+ billingAddress?: Address;
11
+ calculation: Array<any>;
12
+ confirmed?: Date;
13
+ rejected?: Date;
14
+ contact?: Contact;
15
+ context?: any;
16
+ countryCode: string;
17
+ currency: string;
18
+ deliveryId?: string;
19
+ fullfilled?: Date;
20
+ ordered?: Date;
21
+ orderNumber?: string;
22
+ originEnrollmentId?: string;
23
+ paymentId?: string;
24
+ status: OrderStatus | null;
25
+ userId: string;
26
+ } & LogFields & TimestampFields;
27
+ export type OrderQuery = {
28
+ includeCarts?: boolean;
29
+ orderStatus?: OrderStatus[];
30
+ queryString?: string;
31
+ status?: OrderStatus[];
32
+ userId?: string;
33
+ };
3
34
  export declare const OrdersCollection: (db: mongodb.Db) => Promise<mongodb.Collection<Order>>;
4
35
  //# sourceMappingURL=OrdersCollection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"OrdersCollection.d.ts","sourceRoot":"","sources":["../../src/db/OrdersCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAkB,MAAM,wBAAwB,CAAC;AACjE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,eAAO,MAAM,gBAAgB,OAAc,OAAO,CAAC,EAAE,uCAgCpD,CAAC"}
1
+ {"version":3,"file":"OrdersCollection.d.ts","sourceRoot":"","sources":["../../src/db/OrdersCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EAEP,OAAO,EACP,OAAO,EACP,SAAS,EACT,eAAe,EAChB,MAAM,wBAAwB,CAAC;AAEhC,oBAAY,WAAW;IACrB,OAAO,YAAY;IACnB,SAAS,cAAc;IACvB,UAAU,eAAe;IACzB,QAAQ,aAAa;CACtB;AAED,MAAM,MAAM,KAAK,GAAG;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC;IACxB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,QAAQ,CAAC,EAAE,IAAI,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,IAAI,CAAC;IAClB,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;CAChB,GAAG,SAAS,GACX,eAAe,CAAC;AAElB,MAAM,MAAM,UAAU,GAAG;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,WAAW,EAAE,CAAC;IAC5B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,WAAW,EAAE,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,eAAO,MAAM,gBAAgB,OAAc,OAAO,CAAC,EAAE,uCAgCpD,CAAC"}
@@ -1,4 +1,11 @@
1
- import { buildDbIndexes } from '@unchainedshop/mongodb';
1
+ import { buildDbIndexes, } 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 = {}));
2
9
  export const OrdersCollection = async (db) => {
3
10
  const Orders = db.collection('orders');
4
11
  // Order Indexes
@@ -1 +1 @@
1
- {"version":3,"file":"OrdersCollection.js","sourceRoot":"","sources":["../../src/db/OrdersCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAGjE,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EAAE,EAAc,EAAE,EAAE;IACvD,MAAM,MAAM,GAAG,EAAE,CAAC,UAAU,CAAQ,QAAQ,CAAC,CAAC;IAE9C,gBAAgB;IAChB,MAAM,cAAc,CAAQ,MAAM,EAAE;QAClC,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE;QACxB,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE;QACxB,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,EAAE;QAC7B;YACE,KAAK,EAAE;gBACL,GAAG,EAAE,MAAM;gBACX,MAAM,EAAE,MAAM;gBACd,WAAW,EAAE,MAAM;gBACnB,MAAM,EAAE,MAAM;gBACd,sBAAsB,EAAE,MAAM;gBAC9B,mBAAmB,EAAE,MAAM;aACrB;YACR,OAAO,EAAE;gBACP,OAAO,EAAE;oBACP,GAAG,EAAE,CAAC;oBACN,MAAM,EAAE,CAAC;oBACT,WAAW,EAAE,CAAC;oBACd,mBAAmB,EAAE,CAAC;oBACtB,sBAAsB,EAAE,CAAC;oBACzB,MAAM,EAAE,CAAC;iBACV;gBACD,IAAI,EAAE,uBAAuB;aAC9B;SACF;KACF,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC"}
1
+ {"version":3,"file":"OrdersCollection.js","sourceRoot":"","sources":["../../src/db/OrdersCollection.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,cAAc,GAKf,MAAM,wBAAwB,CAAC;AAEhC,MAAM,CAAN,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,kCAAmB,CAAA;IACnB,sCAAuB,CAAA;IACvB,wCAAyB,CAAA;IACzB,oCAAqB,CAAA;AACvB,CAAC,EALW,WAAW,KAAX,WAAW,QAKtB;AA+BD,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EAAE,EAAc,EAAE,EAAE;IACvD,MAAM,MAAM,GAAG,EAAE,CAAC,UAAU,CAAQ,QAAQ,CAAC,CAAC;IAE9C,gBAAgB;IAChB,MAAM,cAAc,CAAQ,MAAM,EAAE;QAClC,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE;QACxB,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE;QACxB,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,CAAC,EAAE,EAAE;QAC7B;YACE,KAAK,EAAE;gBACL,GAAG,EAAE,MAAM;gBACX,MAAM,EAAE,MAAM;gBACd,WAAW,EAAE,MAAM;gBACnB,MAAM,EAAE,MAAM;gBACd,sBAAsB,EAAE,MAAM;gBAC9B,mBAAmB,EAAE,MAAM;aACrB;YACR,OAAO,EAAE;gBACP,OAAO,EAAE;oBACP,GAAG,EAAE,CAAC;oBACN,MAAM,EAAE,CAAC;oBACT,WAAW,EAAE,CAAC;oBACd,mBAAmB,EAAE,CAAC;oBACtB,sBAAsB,EAAE,CAAC;oBACzB,MAAM,EAAE,CAAC;iBACV;gBACD,IAAI,EAAE,uBAAuB;aAC9B;SACF;KACF,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC"}
@@ -0,0 +1,5 @@
1
+ import { OrderQuery, Order } from '../db/OrdersCollection.js';
2
+ import { mongodb } from '@unchainedshop/mongodb';
3
+ export declare const buildFindSelector: ({ includeCarts, status, userId, queryString }: OrderQuery) => mongodb.Filter<Order>;
4
+ export default buildFindSelector;
5
+ //# sourceMappingURL=buildFindSelector.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildFindSelector.d.ts","sourceRoot":"","sources":["../../src/module/buildFindSelector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,eAAO,MAAM,iBAAiB,kDAAmD,UAAU,0BAkB1F,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -0,0 +1,18 @@
1
+ export const buildFindSelector = ({ includeCarts, status, userId, queryString }) => {
2
+ const selector = {};
3
+ if (userId) {
4
+ selector.userId = userId;
5
+ }
6
+ if (Array.isArray(status) && status?.length) {
7
+ selector.status = { $in: status };
8
+ }
9
+ else if (!includeCarts) {
10
+ selector.status = { $ne: null }; // TODO: Slow performance! IDXSCAN in common query!
11
+ }
12
+ if (queryString) {
13
+ selector.$text = { $search: queryString };
14
+ }
15
+ return selector;
16
+ };
17
+ export default buildFindSelector;
18
+ //# sourceMappingURL=buildFindSelector.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildFindSelector.js","sourceRoot":"","sources":["../../src/module/buildFindSelector.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAc,EAAE,EAAE;IAC7F,MAAM,QAAQ,GAA0B,EAAE,CAAC;IAE3C,IAAI,MAAM,EAAE,CAAC;QACX,QAAQ,CAAC,MAAM,GAAG,MAAM,CAAC;IAC3B,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,EAAE,MAAM,EAAE,CAAC;QAC5C,QAAQ,CAAC,MAAM,GAAG,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;IACpC,CAAC;SAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QACzB,QAAQ,CAAC,MAAM,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,mDAAmD;IACtF,CAAC;IAED,IAAI,WAAW,EAAE,CAAC;QACf,QAAgB,CAAC,KAAK,GAAG,EAAE,OAAO,EAAE,WAAW,EAAE,CAAC;IACrD,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC,CAAC;AAEF,eAAe,iBAAiB,CAAC"}
@@ -1,37 +1,24 @@
1
- import { UnchainedCore } from '@unchainedshop/core';
2
1
  import { mongodb } from '@unchainedshop/mongodb';
3
- import { Order, OrderDelivery, OrderDeliveryStatus, OrderDiscount } from '../types.js';
4
- import { DeliveryLocation, IDeliveryPricingSheet } from '@unchainedshop/core-delivery';
5
- import { OrderPricingDiscount } from '../director/OrderPricingDirector.js';
6
- export type OrderDeliveriesModule = {
7
- findDelivery: (params: {
2
+ import { PricingCalculation } from '@unchainedshop/utils';
3
+ import { OrderDelivery, OrderDeliveryStatus } from '../db/OrderDeliveriesCollection.js';
4
+ export declare const buildFindByIdSelector: (orderDeliveryId: string) => mongodb.Filter<OrderDelivery>;
5
+ export declare const configureOrderDeliveriesModule: ({ OrderDeliveries, }: {
6
+ OrderDeliveries: mongodb.Collection<OrderDelivery>;
7
+ }) => {
8
+ findDelivery: ({ orderDeliveryId }: {
8
9
  orderDeliveryId: string;
9
10
  }, options?: mongodb.FindOptions) => Promise<OrderDelivery>;
10
- discounts: (orderDelivery: OrderDelivery, params: {
11
- order: Order;
12
- orderDiscount: OrderDiscount;
13
- }, unchainedAPI: UnchainedCore) => Array<OrderPricingDiscount>;
14
- isBlockingOrderConfirmation: (orderDelivery: OrderDelivery, unchainedAPI: UnchainedCore) => Promise<boolean>;
15
- isBlockingOrderFullfillment: (orderDelivery: OrderDelivery) => boolean;
16
- normalizedStatus: (orderDelivery: OrderDelivery) => string;
17
- pricingSheet: (orderDelivery: OrderDelivery, currency: string, unchainedAPI: UnchainedCore) => IDeliveryPricingSheet;
11
+ normalizedStatus: (orderDelivery: OrderDelivery) => OrderDeliveryStatus;
18
12
  create: (doc: OrderDelivery) => Promise<OrderDelivery>;
19
13
  delete: (orderDeliveryId: string) => Promise<number>;
20
- markAsDelivered: (orderDelivery: OrderDelivery) => Promise<void>;
21
- activePickUpLocation: (orderDelivery: OrderDelivery, unchainedAPI: UnchainedCore) => Promise<DeliveryLocation | null>;
22
- send: (orderDelivery: OrderDelivery, params: {
23
- order: Order;
24
- deliveryContext?: any;
25
- }, unchainedAPI: UnchainedCore) => Promise<OrderDelivery>;
26
- updateContext: (orderDeliveryId: string, context: any) => Promise<OrderDelivery | null>;
27
- updateStatus: (orderDeliveryId: string, params: {
14
+ markAsDelivered: (orderDelivery: OrderDelivery) => Promise<OrderDelivery>;
15
+ updateContext: (orderDeliveryId: string, context: any) => Promise<OrderDelivery>;
16
+ updateStatus: (orderDeliveryId: string, { status, info }: {
28
17
  status: OrderDeliveryStatus;
29
18
  info?: string;
30
19
  }) => Promise<OrderDelivery>;
31
- updateCalculation: (orderDelivery: OrderDelivery, unchainedAPI: UnchainedCore) => Promise<OrderDelivery>;
20
+ updateCalculation: <T extends PricingCalculation>(orderDeliveryId: string, calculation: Array<T>) => Promise<OrderDelivery>;
21
+ deleteOrderDeliveries: (orderId: string) => Promise<number>;
32
22
  };
33
- export declare const buildFindByIdSelector: (orderDeliveryId: string) => mongodb.Filter<OrderDelivery>;
34
- export declare const configureOrderDeliveriesModule: ({ OrderDeliveries, }: {
35
- OrderDeliveries: mongodb.Collection<OrderDelivery>;
36
- }) => OrderDeliveriesModule;
23
+ export type OrderDeliveriesModule = ReturnType<typeof configureOrderDeliveriesModule>;
37
24
  //# sourceMappingURL=configureOrderDeliveriesModule.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"configureOrderDeliveriesModule.d.ts","sourceRoot":"","sources":["../../src/module/configureOrderDeliveriesModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,OAAO,EAA4C,MAAM,wBAAwB,CAAC;AAE3F,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAEvF,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAE3E,MAAM,MAAM,qBAAqB,GAAG;IAElC,YAAY,EAAE,CACZ,MAAM,EAAE;QAAE,eAAe,EAAE,MAAM,CAAA;KAAE,EACnC,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,KAC1B,OAAO,CAAC,aAAa,CAAC,CAAC;IAG5B,SAAS,EAAE,CACT,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,aAAa,EAAE,aAAa,CAAA;KAAE,EACtD,YAAY,EAAE,aAAa,KACxB,KAAK,CAAC,oBAAoB,CAAC,CAAC;IACjC,2BAA2B,EAAE,CAC3B,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,aAAa,KACxB,OAAO,CAAC,OAAO,CAAC,CAAC;IACtB,2BAA2B,EAAE,CAAC,aAAa,EAAE,aAAa,KAAK,OAAO,CAAC;IACvE,gBAAgB,EAAE,CAAC,aAAa,EAAE,aAAa,KAAK,MAAM,CAAC;IAC3D,YAAY,EAAE,CACZ,aAAa,EAAE,aAAa,EAC5B,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,aAAa,KACxB,qBAAqB,CAAC;IAG3B,MAAM,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC;IACvD,MAAM,EAAE,CAAC,eAAe,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAErD,eAAe,EAAE,CAAC,aAAa,EAAE,aAAa,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAEjE,oBAAoB,EAAE,CACpB,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,aAAa,KACxB,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IAEtC,IAAI,EAAE,CACJ,aAAa,EAAE,aAAa,EAC5B,MAAM,EAAE;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,eAAe,CAAC,EAAE,GAAG,CAAA;KAAE,EAC/C,YAAY,EAAE,aAAa,KACxB,OAAO,CAAC,aAAa,CAAC,CAAC;IAE5B,aAAa,EAAE,CAAC,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAAC;IAExF,YAAY,EAAE,CACZ,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE;QAAE,MAAM,EAAE,mBAAmB,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,KACnD,OAAO,CAAC,aAAa,CAAC,CAAC;IAE5B,iBAAiB,EAAE,CACjB,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,aAAa,KACxB,OAAO,CAAC,aAAa,CAAC,CAAC;CAC7B,CAAC;AAIF,eAAO,MAAM,qBAAqB,oBAAqB,MAAM,KAClB,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzE,eAAO,MAAM,8BAA8B,yBAExC;IACD,eAAe,EAAE,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;CACpD,KAAG,qBAuNH,CAAC"}
1
+ {"version":3,"file":"configureOrderDeliveriesModule.d.ts","sourceRoot":"","sources":["../../src/module/configureOrderDeliveriesModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAA4C,MAAM,wBAAwB,CAAC;AAE3F,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AAIxF,eAAO,MAAM,qBAAqB,oBAAqB,MAAM,KAClB,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzE,eAAO,MAAM,8BAA8B,yBAExC;IACD,eAAe,EAAE,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;CACpD;wCAqC0B;QAAE,eAAe,EAAE,MAAM,CAAA;KAAE,YACtC,OAAO,CAAC,WAAW,KAC5B,OAAO,CAAC,aAAa,CAAC;sCApCc,aAAa;kBA4ChC,aAAa,KAAG,OAAO,CAAC,aAAa,CAAC;8BAa1B,MAAM;qCAKC,aAAa;qCAUb,MAAM,WAAW,GAAG,KAAG,OAAO,CAAC,aAAa,CAAC;oCAjEnE,MAAM,oBACL;QAAE,MAAM,EAAE,mBAAmB,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,KAC/D,OAAO,CAAC,aAAa,CAAC;wBA6FG,CAAC,SAAS,kBAAkB,mBACnC,MAAM,eACV,KAAK,CAAC,CAAC,CAAC,KACpB,OAAO,CAAC,aAAa,CAAC;qCAec,MAAM;CAKhD,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,UAAU,CAAC,OAAO,8BAA8B,CAAC,CAAC"}
@@ -1,7 +1,6 @@
1
1
  import { generateDbFilterById, generateDbObjectId } from '@unchainedshop/mongodb';
2
2
  import { emit, registerEvents } from '@unchainedshop/events';
3
- import { OrderDeliveryStatus } from '../types.js';
4
- import { DeliveryDirector } from '@unchainedshop/core-delivery';
3
+ import { OrderDeliveryStatus } from '../db/OrderDeliveriesCollection.js';
5
4
  const ORDER_DELIVERY_EVENTS = ['ORDER_DELIVER', 'ORDER_UPDATE_DELIVERY'];
6
5
  export const buildFindByIdSelector = (orderDeliveryId) => generateDbFilterById(orderDeliveryId);
7
6
  export const configureOrderDeliveriesModule = ({ OrderDeliveries, }) => {
@@ -36,44 +35,7 @@ export const configureOrderDeliveriesModule = ({ OrderDeliveries, }) => {
36
35
  findDelivery: async ({ orderDeliveryId }, options) => {
37
36
  return OrderDeliveries.findOne(buildFindByIdSelector(orderDeliveryId), options);
38
37
  },
39
- // Transformations
40
- discounts: (orderDelivery, { order, orderDiscount }, context) => {
41
- const { modules } = context;
42
- if (!orderDelivery)
43
- return [];
44
- const pricingSheet = modules.orders.deliveries.pricingSheet(orderDelivery, order.currency, context);
45
- return pricingSheet.discountPrices(orderDiscount._id).map((discount) => ({
46
- delivery: orderDelivery,
47
- ...discount,
48
- }));
49
- },
50
- isBlockingOrderConfirmation: async (orderDelivery, unchainedAPI) => {
51
- const provider = await unchainedAPI.modules.delivery.findProvider({
52
- deliveryProviderId: orderDelivery.deliveryProviderId,
53
- });
54
- const isAutoReleaseAllowed = await unchainedAPI.modules.delivery.isAutoReleaseAllowed(provider, unchainedAPI);
55
- return !isAutoReleaseAllowed;
56
- },
57
- activePickUpLocation: async (orderDelivery, unchainedAPI) => {
58
- const { orderPickUpLocationId } = orderDelivery.context || {};
59
- const provider = await unchainedAPI.modules.delivery.findProvider({
60
- deliveryProviderId: orderDelivery.deliveryProviderId,
61
- });
62
- const director = await DeliveryDirector.actions(provider, { orderDelivery: orderDelivery }, unchainedAPI);
63
- return director.pickUpLocationById(orderPickUpLocationId);
64
- },
65
- isBlockingOrderFullfillment: (orderDelivery) => {
66
- if (orderDelivery.status === OrderDeliveryStatus.DELIVERED)
67
- return false;
68
- return true;
69
- },
70
38
  normalizedStatus,
71
- pricingSheet: (orderDelivery, currency, { modules }) => {
72
- return modules.delivery.pricingSheet({
73
- calculation: orderDelivery.calculation,
74
- currency,
75
- });
76
- },
77
39
  // Mutations
78
40
  create: async (doc) => {
79
41
  const { insertedId: orderDeliveryId } = await OrderDeliveries.insertOne({
@@ -98,31 +60,7 @@ export const configureOrderDeliveriesModule = ({ OrderDeliveries, }) => {
98
60
  info: 'mark delivered manually',
99
61
  });
100
62
  await emit('ORDER_DELIVER', { orderDelivery: updatedOrderDelivery });
101
- },
102
- send: async (orderDelivery, { order, deliveryContext }, unchainedAPI) => {
103
- if (normalizedStatus(orderDelivery) !== OrderDeliveryStatus.OPEN)
104
- return orderDelivery;
105
- const deliveryProvider = await unchainedAPI.modules.delivery.findProvider({
106
- deliveryProviderId: orderDelivery.deliveryProviderId,
107
- });
108
- const deliveryProviderId = deliveryProvider._id;
109
- const address = orderDelivery.context?.address || order || order.billingAddress;
110
- const arbitraryResponseData = await unchainedAPI.modules.delivery.send(deliveryProviderId, {
111
- order,
112
- orderDelivery,
113
- transactionContext: {
114
- ...(deliveryContext || {}),
115
- ...(orderDelivery.context || {}),
116
- ...(address || {}),
117
- },
118
- }, unchainedAPI);
119
- if (arbitraryResponseData) {
120
- return updateStatus(orderDelivery._id, {
121
- status: OrderDeliveryStatus.DELIVERED,
122
- info: JSON.stringify(arbitraryResponseData),
123
- });
124
- }
125
- return orderDelivery;
63
+ return updatedOrderDelivery;
126
64
  },
127
65
  updateContext: async (orderDeliveryId, context) => {
128
66
  const selector = buildFindByIdSelector(orderDeliveryId);
@@ -144,11 +82,8 @@ export const configureOrderDeliveriesModule = ({ OrderDeliveries, }) => {
144
82
  return null;
145
83
  },
146
84
  updateStatus,
147
- updateCalculation: async (orderDelivery, unchainedAPI) => {
148
- const calculation = await unchainedAPI.modules.delivery.calculate({
149
- item: orderDelivery,
150
- }, unchainedAPI);
151
- return OrderDeliveries.findOneAndUpdate(buildFindByIdSelector(orderDelivery._id), {
85
+ updateCalculation: async (orderDeliveryId, calculation) => {
86
+ return OrderDeliveries.findOneAndUpdate({ _id: orderDeliveryId }, {
152
87
  $set: {
153
88
  calculation,
154
89
  updated: new Date(),
@@ -157,6 +92,10 @@ export const configureOrderDeliveriesModule = ({ OrderDeliveries, }) => {
157
92
  returnDocument: 'after',
158
93
  });
159
94
  },
95
+ deleteOrderDeliveries: async (orderId) => {
96
+ const { deletedCount } = await OrderDeliveries.deleteMany({ orderId });
97
+ return deletedCount;
98
+ },
160
99
  };
161
100
  };
162
101
  //# sourceMappingURL=configureOrderDeliveriesModule.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"configureOrderDeliveriesModule.js","sourceRoot":"","sources":["../../src/module/configureOrderDeliveriesModule.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configureOrderDeliveriesModule.js","sourceRoot":"","sources":["../../src/module/configureOrderDeliveriesModule.ts"],"names":[],"mappings":"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"}
@@ -1,27 +1,26 @@
1
- import { UnchainedCore } from '@unchainedshop/core';
2
1
  import { mongodb } from '@unchainedshop/mongodb';
3
- import { Order, OrderDiscount } from '../types.js';
4
- import { IPricingSheet, PricingCalculation, DiscountAdapterActions, DiscountContext } from '@unchainedshop/utils';
5
- export type OrderDiscountsModule = {
6
- findOrderDiscount: (params: {
2
+ import { OrderDiscount } from '../db/OrderDiscountsCollection.js';
3
+ export declare const buildFindOrderDiscountByIdSelector: (orderDiscountId: string) => mongodb.Filter<OrderDiscount>;
4
+ export declare const configureOrderDiscountsModule: ({ OrderDiscounts, }: {
5
+ OrderDiscounts: mongodb.Collection<OrderDiscount>;
6
+ }) => {
7
+ findOrderDiscount: ({ discountId }: {
7
8
  discountId: string;
8
9
  }, options?: mongodb.FindOptions) => Promise<OrderDiscount>;
9
- findOrderDiscounts: (params: {
10
+ findOrderDiscounts: ({ orderId }: {
10
11
  orderId: string;
11
12
  }) => Promise<Array<OrderDiscount>>;
12
- interface: (orderDiscount: OrderDiscount, unchainedAPI: UnchainedCore) => Promise<DiscountAdapterActions<any>>;
13
- isValid: (orderDiscount: OrderDiscount, unchainedAPI: UnchainedCore) => Promise<boolean>;
14
- configurationForPricingAdapterKey: (orderDiscount: OrderDiscount, adapterKey: string, calculationSheet: IPricingSheet<PricingCalculation>, pricingContext: DiscountContext & UnchainedCore) => Promise<any>;
15
- createManualOrderDiscount: (params: {
16
- code: string;
17
- order: Order;
18
- }, unchainedAPI: UnchainedCore) => Promise<OrderDiscount>;
19
13
  create: (doc: OrderDiscount) => Promise<OrderDiscount>;
14
+ delete: (orderDiscountId: string) => Promise<OrderDiscount>;
15
+ isDiscountCodeUsed: ({ code, orderId }: {
16
+ code: any;
17
+ orderId: any;
18
+ }) => Promise<boolean>;
19
+ findSpareDiscount: ({ code }: {
20
+ code: any;
21
+ }) => Promise<OrderDiscount>;
20
22
  update: (orderDiscountId: string, doc: OrderDiscount) => Promise<OrderDiscount>;
21
- delete: (orderDiscountId: string, unchainedAPI: UnchainedCore) => Promise<OrderDiscount>;
23
+ deleteOrderDiscounts: (orderId: string) => Promise<number>;
22
24
  };
23
- export declare const buildFindByIdSelector: (orderDiscountId: string) => mongodb.Filter<OrderDiscount>;
24
- export declare const configureOrderDiscountsModule: ({ OrderDiscounts, }: {
25
- OrderDiscounts: mongodb.Collection<OrderDiscount>;
26
- }) => OrderDiscountsModule;
25
+ export type OrderDiscountsModule = ReturnType<typeof configureOrderDiscountsModule>;
27
26
  //# sourceMappingURL=configureOrderDiscountsModule.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"configureOrderDiscountsModule.d.ts","sourceRoot":"","sources":["../../src/module/configureOrderDiscountsModule.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAA4C,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAG3F,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EACL,aAAa,EACb,kBAAkB,EAClB,sBAAsB,EACtB,eAAe,EAChB,MAAM,sBAAsB,CAAC;AAE9B,MAAM,MAAM,oBAAoB,GAAG;IAEjC,iBAAiB,EAAE,CACjB,MAAM,EAAE;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,EAC9B,OAAO,CAAC,EAAE,OAAO,CAAC,WAAW,KAC1B,OAAO,CAAC,aAAa,CAAC,CAAC;IAC5B,kBAAkB,EAAE,CAAC,MAAM,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;IAGnF,SAAS,EAAE,CACT,aAAa,EAAE,aAAa,EAC5B,YAAY,EAAE,aAAa,KACxB,OAAO,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAC;IAE1C,OAAO,EAAE,CAAC,aAAa,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAGzF,iCAAiC,EAAE,CACjC,aAAa,EAAE,aAAa,EAC5B,UAAU,EAAE,MAAM,EAClB,gBAAgB,EAAE,aAAa,CAAC,kBAAkB,CAAC,EACnD,cAAc,EAAE,eAAe,GAAG,aAAa,KAC5C,OAAO,CAAC,GAAG,CAAC,CAAC;IAGlB,yBAAyB,EAAE,CACzB,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,EACtC,YAAY,EAAE,aAAa,KACxB,OAAO,CAAC,aAAa,CAAC,CAAC;IAE5B,MAAM,EAAE,CAAC,GAAG,EAAE,aAAa,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC;IACvD,MAAM,EAAE,CAAC,eAAe,EAAE,MAAM,EAAE,GAAG,EAAE,aAAa,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC;IAChF,MAAM,EAAE,CAAC,eAAe,EAAE,MAAM,EAAE,YAAY,EAAE,aAAa,KAAK,OAAO,CAAC,aAAa,CAAC,CAAC;CAC1F,CAAC;AAcF,eAAO,MAAM,qBAAqB,oBAAqB,MAAM,KAClB,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzE,eAAO,MAAM,6BAA6B,wBAEvC;IACD,cAAc,EAAE,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;CACnD,KAAG,oBAkMH,CAAC"}
1
+ {"version":3,"file":"configureOrderDiscountsModule.d.ts","sourceRoot":"","sources":["../../src/module/configureOrderDiscountsModule.ts"],"names":[],"mappings":"AACA,OAAO,EAA4C,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAC3F,OAAO,EAAE,aAAa,EAAwB,MAAM,mCAAmC,CAAC;AAQxF,eAAO,MAAM,kCAAkC,oBAAqB,MAAM,KAC/B,OAAO,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzE,eAAO,MAAM,6BAA6B,wBAEvC;IACD,cAAc,EAAE,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;CACnD;wCAMqB;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,YAC5B,OAAO,CAAC,WAAW,KAC5B,OAAO,CAAC,aAAa,CAAC;sCAIe;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,KAAG,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;kBAKvE,aAAa,KAAG,OAAO,CAAC,aAAa,CAAC;8BAe1B,MAAM,KAAG,OAAO,CAAC,aAAa,CAAC;;;;UAOhB,OAAO,CAAC,OAAO,CAAC;;;UAS1B,OAAO,CAAC,aAAa,CAAC;8BAO3B,MAAM,OAAO,aAAa,KAAG,OAAO,CAAC,aAAa,CAAC;oCAe7C,MAAM;CAK/C,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,UAAU,CAAC,OAAO,6BAA6B,CAAC,CAAC"}