@mercurjs/b2c-core 1.4.3 → 1.4.4
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.
- package/.medusa/server/src/admin/index.js +3 -1
- package/.medusa/server/src/admin/index.mjs +3 -1
- package/.medusa/server/src/api/admin/attributes/validators.d.ts +355 -59
- package/.medusa/server/src/api/admin/configuration/validators.d.ts +3 -2
- package/.medusa/server/src/api/admin/notifications/route.js +8 -2
- package/.medusa/server/src/api/admin/order-sets/validators.d.ts +5 -3
- package/.medusa/server/src/api/admin/products/validators.d.ts +909 -500
- package/.medusa/server/src/api/admin/sellers/validators.d.ts +20 -16
- package/.medusa/server/src/api/store/carts/[id]/promotions/route.d.ts +3 -0
- package/.medusa/server/src/api/store/carts/[id]/promotions/route.js +34 -0
- package/.medusa/server/src/api/store/order-set/validators.d.ts +3 -2
- package/.medusa/server/src/api/store/returns/validators.d.ts +3 -2
- package/.medusa/server/src/api/store/seller/validators.d.ts +3 -2
- package/.medusa/server/src/api/store/shipping-options/validators.d.ts +24 -26
- package/.medusa/server/src/api/store/wishlist/validators.d.ts +3 -2
- package/.medusa/server/src/api/vendor/attributes/validators.d.ts +9 -7
- package/.medusa/server/src/api/vendor/campaigns/[id]/promotions/route.d.ts +76 -0
- package/.medusa/server/src/api/vendor/campaigns/[id]/promotions/route.js +89 -0
- package/.medusa/server/src/api/vendor/campaigns/middlewares.js +11 -2
- package/.medusa/server/src/api/vendor/campaigns/route.d.ts +6 -0
- package/.medusa/server/src/api/vendor/campaigns/route.js +10 -4
- package/.medusa/server/src/api/vendor/campaigns/validators.d.ts +20 -12
- package/.medusa/server/src/api/vendor/campaigns/validators.js +10 -4
- package/.medusa/server/src/api/vendor/customer-groups/route.d.ts +2 -2
- package/.medusa/server/src/api/vendor/customer-groups/route.js +5 -5
- package/.medusa/server/src/api/vendor/customer-groups/validators.d.ts +604 -2
- package/.medusa/server/src/api/vendor/customer-groups/validators.js +37 -2
- package/.medusa/server/src/api/vendor/customers/validators.d.ts +6 -4
- package/.medusa/server/src/api/vendor/fulfillment-providers/validators.d.ts +3 -2
- package/.medusa/server/src/api/vendor/fulfillment-sets/validators.d.ts +22 -6
- package/.medusa/server/src/api/vendor/inventory-items/[id]/route.d.ts +23 -0
- package/.medusa/server/src/api/vendor/inventory-items/[id]/route.js +48 -2
- package/.medusa/server/src/api/vendor/inventory-items/middlewares.js +12 -1
- package/.medusa/server/src/api/vendor/inventory-items/validators.d.ts +37 -104
- package/.medusa/server/src/api/vendor/invites/validators.d.ts +3 -2
- package/.medusa/server/src/api/vendor/members/validators.d.ts +7 -6
- package/.medusa/server/src/api/vendor/notifications/validators.d.ts +3 -2
- package/.medusa/server/src/api/vendor/orders/validators.d.ts +13 -11
- package/.medusa/server/src/api/vendor/payouts/validators.d.ts +3 -2
- package/.medusa/server/src/api/vendor/price-lists/validators.d.ts +18 -16
- package/.medusa/server/src/api/vendor/price-preferences/validators.d.ts +37 -29
- package/.medusa/server/src/api/vendor/product-categories/validators.d.ts +317 -26
- package/.medusa/server/src/api/vendor/product-collections/validators.d.ts +6 -4
- package/.medusa/server/src/api/vendor/product-tags/route.js +8 -2
- package/.medusa/server/src/api/vendor/product-tags/validators.d.ts +31 -29
- package/.medusa/server/src/api/vendor/product-types/validators.d.ts +3 -2
- package/.medusa/server/src/api/vendor/products/route.js +7 -3
- package/.medusa/server/src/api/vendor/products/utils.d.ts +4 -1
- package/.medusa/server/src/api/vendor/products/utils.js +40 -2
- package/.medusa/server/src/api/vendor/products/validators.d.ts +905 -377
- package/.medusa/server/src/api/vendor/promotions/validators.d.ts +57 -53
- package/.medusa/server/src/api/vendor/regions/validators.d.ts +3 -2
- package/.medusa/server/src/api/vendor/reservations/validators.d.ts +7 -6
- package/.medusa/server/src/api/vendor/returns/validators.d.ts +9 -8
- package/.medusa/server/src/api/vendor/sellers/validators.d.ts +20 -20
- package/.medusa/server/src/api/vendor/shipping-options/validators.d.ts +27 -26
- package/.medusa/server/src/api/vendor/shipping-profiles/validators.d.ts +5 -4
- package/.medusa/server/src/api/vendor/stock-locations/validators.d.ts +49 -59
- package/.medusa/server/src/links/seller-campaign.js +1 -1
- package/.medusa/server/src/links/seller-customer-group.js +1 -1
- package/.medusa/server/src/modules/attribute/migrations/Migration20250617080244.d.ts +1 -1
- package/.medusa/server/src/modules/attribute/migrations/Migration20250617080244.js +2 -2
- package/.medusa/server/src/modules/attribute/migrations/Migration20250620110849.d.ts +1 -1
- package/.medusa/server/src/modules/attribute/migrations/Migration20250620110849.js +2 -2
- package/.medusa/server/src/modules/attribute/migrations/Migration20250828065431.d.ts +1 -1
- package/.medusa/server/src/modules/attribute/migrations/Migration20250828065431.js +2 -2
- package/.medusa/server/src/modules/attribute/service.d.ts +1 -1
- package/.medusa/server/src/modules/configuration/migrations/Migration20250114063624.d.ts +1 -1
- package/.medusa/server/src/modules/configuration/migrations/Migration20250114063624.js +2 -2
- package/.medusa/server/src/modules/configuration/migrations/Migration20250324131111.d.ts +1 -1
- package/.medusa/server/src/modules/configuration/migrations/Migration20250324131111.js +2 -2
- package/.medusa/server/src/modules/marketplace/migrations/Migration20241207151814.d.ts +1 -1
- package/.medusa/server/src/modules/marketplace/migrations/Migration20241207151814.js +2 -2
- package/.medusa/server/src/modules/payout/migrations/Migration20250317090626.d.ts +1 -1
- package/.medusa/server/src/modules/payout/migrations/Migration20250317090626.js +2 -2
- package/.medusa/server/src/modules/payout/migrations/Migration20250612144913.d.ts +1 -1
- package/.medusa/server/src/modules/payout/migrations/Migration20250612144913.js +2 -2
- package/.medusa/server/src/modules/payout/service.d.ts +1 -1
- package/.medusa/server/src/modules/secondary_categories/migrations/Migration20251014102054.d.ts +1 -1
- package/.medusa/server/src/modules/secondary_categories/migrations/Migration20251014102054.js +2 -2
- package/.medusa/server/src/modules/seller/migrations/Migration20241206125415.d.ts +1 -1
- package/.medusa/server/src/modules/seller/migrations/Migration20241206125415.js +2 -2
- package/.medusa/server/src/modules/seller/migrations/Migration20250212131627.d.ts +1 -1
- package/.medusa/server/src/modules/seller/migrations/Migration20250212131627.js +2 -2
- package/.medusa/server/src/modules/seller/migrations/Migration20250225083755.d.ts +1 -1
- package/.medusa/server/src/modules/seller/migrations/Migration20250225083755.js +2 -2
- package/.medusa/server/src/modules/seller/migrations/Migration20250225094708.d.ts +1 -1
- package/.medusa/server/src/modules/seller/migrations/Migration20250225094708.js +2 -2
- package/.medusa/server/src/modules/seller/migrations/Migration20250307091819.d.ts +1 -1
- package/.medusa/server/src/modules/seller/migrations/Migration20250307091819.js +2 -2
- package/.medusa/server/src/modules/seller/migrations/Migration20250313065552.d.ts +1 -1
- package/.medusa/server/src/modules/seller/migrations/Migration20250313065552.js +2 -2
- package/.medusa/server/src/modules/seller/migrations/Migration20250530111528.d.ts +1 -1
- package/.medusa/server/src/modules/seller/migrations/Migration20250530111528.js +2 -2
- package/.medusa/server/src/modules/seller/utils.d.ts +4 -0
- package/.medusa/server/src/modules/seller/utils.js +18 -1
- package/.medusa/server/src/modules/split-order-payment/migrations/Migration20250516075429.d.ts +1 -1
- package/.medusa/server/src/modules/split-order-payment/migrations/Migration20250516075429.js +2 -2
- package/.medusa/server/src/modules/taxcode/migrations/Migration20250116135408.d.ts +1 -1
- package/.medusa/server/src/modules/taxcode/migrations/Migration20250116135408.js +2 -2
- package/.medusa/server/src/modules/wishlist/migrations/Migration20250424110903.d.ts +1 -1
- package/.medusa/server/src/modules/wishlist/migrations/Migration20250424110903.js +2 -2
- package/.medusa/server/src/workflows/cart/workflows/split-and-complete-cart.js +2 -2
- package/.medusa/server/src/workflows/order/steps/calculate-payout-for-order.d.ts +1 -1
- package/.medusa/server/src/workflows/promotions/steps/register-usage-step.d.ts +7 -2
- package/.medusa/server/src/workflows/promotions/steps/register-usage-step.js +6 -6
- package/.medusa/server/src/workflows/seller/steps/validate-products-to-import.d.ts +10 -10
- package/package.json +15 -28
|
@@ -12,49 +12,51 @@ export declare const VendorGetProductTagsParamsFields: z.ZodObject<{
|
|
|
12
12
|
id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
|
|
13
13
|
value: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
|
|
14
14
|
}, "strip", z.ZodTypeAny, {
|
|
15
|
-
q?: string | undefined;
|
|
16
|
-
id?: string | string[] | undefined;
|
|
17
15
|
value?: string | string[] | undefined;
|
|
18
|
-
}, {
|
|
19
|
-
q?: string | undefined;
|
|
20
16
|
id?: string | string[] | undefined;
|
|
17
|
+
q?: string | undefined;
|
|
18
|
+
}, {
|
|
21
19
|
value?: string | string[] | undefined;
|
|
20
|
+
id?: string | string[] | undefined;
|
|
21
|
+
q?: string | undefined;
|
|
22
22
|
}>;
|
|
23
23
|
export type VendorGetProductTagsParamsType = z.infer<typeof VendorGetProductTagsParams>;
|
|
24
|
-
export declare const VendorGetProductTagsParams: z.ZodObject<{
|
|
24
|
+
export declare const VendorGetProductTagsParams: z.ZodObject<{} & {
|
|
25
25
|
[x: string]: any;
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
26
|
+
$and: z.ZodOptional<z.ZodLazy<z.ZodArray<z.ZodObject<{
|
|
27
|
+
q: z.ZodOptional<z.ZodString>;
|
|
28
|
+
id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
|
|
29
|
+
value: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
|
|
30
|
+
}, "strip", z.ZodTypeAny, {
|
|
31
|
+
value?: string | string[] | undefined;
|
|
32
|
+
id?: string | string[] | undefined;
|
|
33
|
+
q?: string | undefined;
|
|
30
34
|
}, {
|
|
31
|
-
|
|
35
|
+
value?: string | string[] | undefined;
|
|
36
|
+
id?: string | string[] | undefined;
|
|
37
|
+
q?: string | undefined;
|
|
32
38
|
}>, "many">>>;
|
|
33
|
-
$or: z.ZodOptional<z.ZodLazy<z.ZodArray<z.ZodObject<
|
|
34
|
-
|
|
39
|
+
$or: z.ZodOptional<z.ZodLazy<z.ZodArray<z.ZodObject<{
|
|
40
|
+
q: z.ZodOptional<z.ZodString>;
|
|
41
|
+
id: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
|
|
42
|
+
value: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
|
|
43
|
+
}, "strip", z.ZodTypeAny, {
|
|
44
|
+
value?: string | string[] | undefined;
|
|
45
|
+
id?: string | string[] | undefined;
|
|
46
|
+
q?: string | undefined;
|
|
35
47
|
}, {
|
|
36
|
-
|
|
48
|
+
value?: string | string[] | undefined;
|
|
49
|
+
id?: string | string[] | undefined;
|
|
50
|
+
q?: string | undefined;
|
|
37
51
|
}>, "many">>>;
|
|
38
52
|
}, "strip", z.ZodTypeAny, {
|
|
39
53
|
[x: string]: any;
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
$and?: {
|
|
43
|
-
[x: string]: any;
|
|
44
|
-
}[] | undefined;
|
|
45
|
-
$or?: {
|
|
46
|
-
[x: string]: any;
|
|
47
|
-
}[] | undefined;
|
|
54
|
+
$and?: unknown;
|
|
55
|
+
$or?: unknown;
|
|
48
56
|
}, {
|
|
49
57
|
[x: string]: any;
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
$and?: {
|
|
53
|
-
[x: string]: any;
|
|
54
|
-
}[] | undefined;
|
|
55
|
-
$or?: {
|
|
56
|
-
[x: string]: any;
|
|
57
|
-
}[] | undefined;
|
|
58
|
+
$and?: unknown;
|
|
59
|
+
$or?: unknown;
|
|
58
60
|
}>;
|
|
59
61
|
/**
|
|
60
62
|
* @schema VendorCreateProductTag
|
|
@@ -2,6 +2,7 @@ import { z } from 'zod';
|
|
|
2
2
|
export type VendorGetProductTypesParamsType = z.infer<typeof VendorGetProductTypesParams>;
|
|
3
3
|
export declare const VendorGetProductTypesParams: z.ZodObject<{
|
|
4
4
|
fields: z.ZodOptional<z.ZodString>;
|
|
5
|
+
} & {
|
|
5
6
|
offset: z.ZodEffects<z.ZodDefault<z.ZodOptional<z.ZodNumber>>, number, unknown>;
|
|
6
7
|
limit: z.ZodEffects<z.ZodDefault<z.ZodOptional<z.ZodNumber>>, number, unknown>;
|
|
7
8
|
order: z.ZodOptional<z.ZodString> | z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
@@ -9,13 +10,13 @@ export declare const VendorGetProductTypesParams: z.ZodObject<{
|
|
|
9
10
|
}, "strip", z.ZodTypeAny, {
|
|
10
11
|
offset: number;
|
|
11
12
|
limit: number;
|
|
12
|
-
fields?: string | undefined;
|
|
13
13
|
order?: string | undefined;
|
|
14
|
+
fields?: string | undefined;
|
|
14
15
|
with_deleted?: boolean | undefined;
|
|
15
16
|
}, {
|
|
17
|
+
order?: string | undefined;
|
|
16
18
|
fields?: string | undefined;
|
|
17
19
|
offset?: unknown;
|
|
18
20
|
limit?: unknown;
|
|
19
|
-
order?: string | undefined;
|
|
20
21
|
with_deleted?: unknown;
|
|
21
22
|
}>;
|
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.POST = exports.GET = void 0;
|
|
4
4
|
const utils_1 = require("@medusajs/framework/utils");
|
|
5
|
-
const utils_2 = require("../../../shared/infra/http/utils");
|
|
6
5
|
const core_flows_1 = require("@medusajs/medusa/core-flows");
|
|
7
6
|
const framework_1 = require("@mercurjs/framework");
|
|
7
|
+
const utils_2 = require("../../../shared/infra/http/utils");
|
|
8
8
|
const utils_3 = require("./utils");
|
|
9
9
|
/**
|
|
10
10
|
* @oas [get] /vendor/products
|
|
@@ -66,19 +66,23 @@ const utils_3 = require("./utils");
|
|
|
66
66
|
*/
|
|
67
67
|
const GET = async (req, res) => {
|
|
68
68
|
const query = req.scope.resolve(utils_1.ContainerRegistrationKeys.QUERY);
|
|
69
|
-
const { productIds, count } = await (0, utils_3.filterProductsBySeller)(req.scope, req.filterableFields.seller_id, req.queryConfig.pagination?.skip || 0, req.queryConfig.pagination?.take || 10, req.filterableFields.sales_channel_id);
|
|
69
|
+
const { productIds, count } = await (0, utils_3.filterProductsBySeller)(req.scope, req.filterableFields.seller_id, req.queryConfig.pagination?.skip || 0, req.queryConfig.pagination?.take || 10, req.filterableFields.sales_channel_id, req.queryConfig.pagination?.order);
|
|
70
70
|
const { data: sellerProducts } = await query.graph({
|
|
71
71
|
entity: "product",
|
|
72
72
|
fields: req.queryConfig.fields,
|
|
73
73
|
filters: {
|
|
74
74
|
id: productIds,
|
|
75
75
|
},
|
|
76
|
+
pagination: {
|
|
77
|
+
order: req.queryConfig.pagination?.order
|
|
78
|
+
}
|
|
76
79
|
});
|
|
77
80
|
res.json({
|
|
78
81
|
products: sellerProducts,
|
|
79
82
|
count: count,
|
|
80
83
|
offset: req.queryConfig.pagination?.skip || 0,
|
|
81
84
|
limit: req.queryConfig.pagination?.take || 10,
|
|
85
|
+
order: req.queryConfig.pagination?.order
|
|
82
86
|
});
|
|
83
87
|
};
|
|
84
88
|
exports.GET = GET;
|
|
@@ -150,4 +154,4 @@ const POST = async (req, res) => {
|
|
|
150
154
|
res.status(201).json({ product });
|
|
151
155
|
};
|
|
152
156
|
exports.POST = POST;
|
|
153
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
157
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicm91dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3ZlbmRvci9wcm9kdWN0cy9yb3V0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFLQSxxREFBK0U7QUFFL0UsNERBQXFFO0FBQ3JFLG1EQUFpRTtBQUNqRSw0REFBNEU7QUFDNUUsbUNBQThEO0FBTTlEOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0F5REc7QUFDSSxNQUFNLEdBQUcsR0FBRyxLQUFLLEVBQ3RCLEdBQThDLEVBQzlDLEdBQW1CLEVBQ25CLEVBQUU7SUFDRixNQUFNLEtBQUssR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxpQ0FBeUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUVqRSxNQUFNLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxHQUFHLE1BQU0sSUFBQSw4QkFBc0IsRUFDeEQsR0FBRyxDQUFDLEtBQUssRUFDVCxHQUFHLENBQUMsZ0JBQWdCLENBQUMsU0FBbUIsRUFDeEMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxVQUFVLEVBQUUsSUFBSSxJQUFJLENBQUMsRUFDckMsR0FBRyxDQUFDLFdBQVcsQ0FBQyxVQUFVLEVBQUUsSUFBSSxJQUFJLEVBQUUsRUFDdEMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLGdCQUEwQixFQUMvQyxHQUFHLENBQUMsV0FBVyxDQUFDLFVBQVUsRUFBRSxLQUFnQyxDQUM3RCxDQUFDO0lBRUYsTUFBTSxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLENBQUM7UUFDakQsTUFBTSxFQUFFLFNBQVM7UUFDakIsTUFBTSxFQUFFLEdBQUcsQ0FBQyxXQUFXLENBQUMsTUFBTTtRQUM5QixPQUFPLEVBQUU7WUFDUCxFQUFFLEVBQUUsVUFBVTtTQUNmO1FBQ0QsVUFBVSxFQUFFO1lBQ1YsS0FB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
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import { MedusaContainer } from '@medusajs/framework';
|
|
2
|
-
|
|
2
|
+
type OrderDirection = 'ASC' | 'DESC' | 'asc' | 'desc';
|
|
3
|
+
export type OrderObject = Record<string, OrderDirection | Record<string, OrderDirection>>;
|
|
4
|
+
export declare const filterProductsBySeller: (container: MedusaContainer, sellerId: string, skip: number, take: number, salesChannelId?: string, order?: OrderObject) => Promise<{
|
|
3
5
|
productIds: any[];
|
|
4
6
|
count: number;
|
|
5
7
|
}>;
|
|
8
|
+
export {};
|
|
@@ -2,7 +2,36 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.filterProductsBySeller = void 0;
|
|
4
4
|
const utils_1 = require("@medusajs/framework/utils");
|
|
5
|
-
const
|
|
5
|
+
const cleanKey = (key) => {
|
|
6
|
+
return key.split('=').pop()?.replace(/^\*/, '') || key;
|
|
7
|
+
};
|
|
8
|
+
const normalizeDirection = (direction) => {
|
|
9
|
+
return direction.toLowerCase() === 'desc' ? 'desc' : 'asc';
|
|
10
|
+
};
|
|
11
|
+
const addOrderEntry = (orderBy, key, direction) => {
|
|
12
|
+
const column = key.includes('.') ? key : `product.${key}`;
|
|
13
|
+
orderBy.push({ column, order: normalizeDirection(direction) });
|
|
14
|
+
};
|
|
15
|
+
const parseOrderForKnex = (order) => {
|
|
16
|
+
if (!order || typeof order !== 'object') {
|
|
17
|
+
return [];
|
|
18
|
+
}
|
|
19
|
+
const orderBy = [];
|
|
20
|
+
for (const [key, value] of Object.entries(order)) {
|
|
21
|
+
if (typeof value === 'string') {
|
|
22
|
+
addOrderEntry(orderBy, cleanKey(key), value);
|
|
23
|
+
}
|
|
24
|
+
else if (value && typeof value === 'object') {
|
|
25
|
+
for (const [nestedKey, nestedValue] of Object.entries(value)) {
|
|
26
|
+
if (typeof nestedValue === 'string') {
|
|
27
|
+
addOrderEntry(orderBy, nestedKey, nestedValue);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return orderBy;
|
|
33
|
+
};
|
|
34
|
+
const filterProductsBySeller = async (container, sellerId, skip, take, salesChannelId, order) => {
|
|
6
35
|
const knex = container.resolve(utils_1.ContainerRegistrationKeys.PG_CONNECTION);
|
|
7
36
|
let baseQuery = knex('product')
|
|
8
37
|
.distinct('product.id')
|
|
@@ -23,6 +52,15 @@ const filterProductsBySeller = async (container, sellerId, skip, take, salesChan
|
|
|
23
52
|
.count('product.id as count');
|
|
24
53
|
const [{ count }] = await countQuery;
|
|
25
54
|
const totalCount = parseInt(count, 10);
|
|
55
|
+
if (order) {
|
|
56
|
+
const parsedOrder = parseOrderForKnex(order);
|
|
57
|
+
if (parsedOrder.length > 0) {
|
|
58
|
+
const orderColumns = parsedOrder.map(o => o.column);
|
|
59
|
+
const selectColumns = ['product.id', ...orderColumns.filter(col => col !== 'product.id')];
|
|
60
|
+
baseQuery = baseQuery.distinct(...selectColumns);
|
|
61
|
+
baseQuery = baseQuery.orderBy(parsedOrder);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
26
64
|
const productIds = await baseQuery
|
|
27
65
|
.offset(skip)
|
|
28
66
|
.limit(take)
|
|
@@ -30,4 +68,4 @@ const filterProductsBySeller = async (container, sellerId, skip, take, salesChan
|
|
|
30
68
|
return { productIds, count: totalCount };
|
|
31
69
|
};
|
|
32
70
|
exports.filterProductsBySeller = filterProductsBySeller;
|
|
33
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
71
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBpL3ZlbmRvci9wcm9kdWN0cy91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFDQSxxREFBc0U7QUFLdEUsTUFBTSxRQUFRLEdBQUcsQ0FBQyxHQUFXLEVBQVUsRUFBRTtJQUN2QyxPQUFPLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxHQUFHLENBQUM7QUFDekQsQ0FBQyxDQUFDO0FBRUYsTUFBTSxrQkFBa0IsR0FBRyxDQUFDLFNBQWlCLEVBQWtCLEVBQUU7SUFDL0QsT0FBTyxTQUFTLENBQUMsV0FBVyxFQUFFLEtBQUssTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztBQUM3RCxDQUFDLENBQUM7QUFFRixNQUFNLGFBQWEsR0FBRyxDQUNwQixPQUF5RCxFQUN6RCxHQUFXLEVBQ1gsU0FBaUIsRUFDWCxFQUFFO0lBQ1IsTUFBTSxNQUFNLEdBQUcsR0FBRyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxXQUFXLEdBQUcsRUFBRSxDQUFDO0lBQzFELE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxFQUFFLENBQUMsQ0FBQztBQUNqRSxDQUFDLENBQUM7QUFFRixNQUFNLGlCQUFpQixHQUFHLENBQ3hCLEtBQXFDLEVBQ2EsRUFBRTtJQUNwRCxJQUFJLENBQUMsS0FBSyxJQUFJLE9BQU8sS0FBSyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQ3hDLE9BQU8sRUFBRSxDQUFDO0lBQ1osQ0FBQztJQUVELE1BQU0sT0FBTyxHQUFxRCxFQUFFLENBQUM7SUFFckUs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
|