chore: query inventory items by location id (#7524)

what:

- allows querying inventory items by the correct location_id
This commit is contained in:
Riqwan Thamir
2024-05-29 14:14:10 +00:00
committed by GitHub
parent a40b6aef6d
commit f0b9d5534e
3 changed files with 31 additions and 23 deletions
@@ -1,10 +1,10 @@
import { z } from "zod"
import { OptionalBooleanValidator } from "../../utils/common-validators"
import {
createFindParams,
createOperatorMap,
createSelectParams,
} from "../../utils/validators"
import { OptionalBooleanValidator } from "../../utils/common-validators"
export type AdminGetInventoryItemParamsType = z.infer<
typeof AdminGetInventoryItemParams
@@ -17,25 +17,31 @@ export type AdminGetInventoryItemsParamsType = z.infer<
export const AdminGetInventoryItemsParams = createFindParams({
limit: 20,
offset: 0,
}).merge(
z.object({
q: z.string().optional(),
id: z.union([z.string(), z.array(z.string())]).optional(),
location_id: z.union([z.string(), z.array(z.string())]).optional(),
sku: z.union([z.string(), z.array(z.string())]).optional(),
origin_country: z.union([z.string(), z.array(z.string())]).optional(),
mid_code: z.union([z.string(), z.array(z.string())]).optional(),
hs_code: z.union([z.string(), z.array(z.string())]).optional(),
material: z.union([z.string(), z.array(z.string())]).optional(),
requires_shipping: OptionalBooleanValidator,
weight: createOperatorMap(z.number(), parseFloat).optional(),
length: createOperatorMap(z.number(), parseFloat).optional(),
height: createOperatorMap(z.number(), parseFloat).optional(),
width: createOperatorMap(z.number(), parseFloat).optional(),
$and: z.lazy(() => AdminGetInventoryItemsParams.array()).optional(),
$or: z.lazy(() => AdminGetInventoryItemsParams.array()).optional(),
})
)
})
.merge(
z.object({
q: z.string().optional(),
id: z.union([z.string(), z.array(z.string())]).optional(),
sku: z.union([z.string(), z.array(z.string())]).optional(),
origin_country: z.union([z.string(), z.array(z.string())]).optional(),
mid_code: z.union([z.string(), z.array(z.string())]).optional(),
hs_code: z.union([z.string(), z.array(z.string())]).optional(),
material: z.union([z.string(), z.array(z.string())]).optional(),
requires_shipping: OptionalBooleanValidator,
weight: createOperatorMap(z.number(), parseFloat).optional(),
length: createOperatorMap(z.number(), parseFloat).optional(),
height: createOperatorMap(z.number(), parseFloat).optional(),
width: createOperatorMap(z.number(), parseFloat).optional(),
location_levels: z
.object({
location_id: z.union([z.string(), z.array(z.string())]).optional(),
})
.optional(),
$and: z.lazy(() => AdminGetInventoryItemsParams.array()).optional(),
$or: z.lazy(() => AdminGetInventoryItemsParams.array()).optional(),
})
)
.strict()
export type AdminGetInventoryLocationLevelParamsType = z.infer<
typeof AdminGetInventoryLocationLevelParams