@simpleapps-com/augur-api
Version:
TypeScript client library for Augur microservices API endpoints
103 lines • 5.46 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.ItemRefreshResponseSchema = exports.ItemOperationResponseSchema = exports.ItemUpdateRequestSchema = exports.ItemDetailResponseSchema = exports.ItemDetailSchema = exports.ItemsListResponseSchema = exports.ItemsListDataSchema = exports.ItemDocumentSchema = exports.ItemsListParamsSchema = void 0;
const zod_1 = require("zod");
const schemas_1 = require("../../../core/schemas");
const common_1 = require("./common");
// Items list schemas
exports.ItemsListParamsSchema = schemas_1.BaseGetParamsSchema.extend({
itemId: zod_1.z.string().optional(),
online: common_1.OnlineStatusSchema.optional(),
statusCd: common_1.StatusCdSchema.optional(),
});
// Item document structure for list endpoints (snake_case naming)
exports.ItemDocumentSchema = zod_1.z.object({
inv_mast_uid: zod_1.z.number(),
item_id: zod_1.z.string().nullable().optional(),
online: common_1.OnlineStatusSchema,
item_desc: zod_1.z.string().nullable().optional(),
extended_desc: zod_1.z.string().nullable().optional(),
display_desc: zod_1.z.string().nullable().optional(),
class_id1: zod_1.z.string().nullable().optional(),
class_id2: zod_1.z.string().nullable().optional(),
class_id3: zod_1.z.string().nullable().optional(),
class_id4: zod_1.z.string().nullable().optional(),
class_id5: zod_1.z.string().nullable().optional(),
price1: zod_1.z.number().nullable().optional(),
price2: zod_1.z.number().nullable().optional(),
price3: zod_1.z.number().nullable().optional(),
price4: zod_1.z.number().nullable().optional(),
price5: zod_1.z.number().nullable().optional(),
price6: zod_1.z.number().nullable().optional(),
price7: zod_1.z.number().nullable().optional(),
price8: zod_1.z.number().nullable().optional(),
price9: zod_1.z.number().nullable().optional(),
price10: zod_1.z.number().nullable().optional(),
keywords: zod_1.z.string().nullable().optional(),
brand_name: zod_1.z.string().nullable().optional(),
manufacturer_name: zod_1.z.string().nullable().optional(),
part_number: zod_1.z.string().nullable().optional(),
unspsc_code: zod_1.z.string().nullable().optional(),
upc_or_ean_id: zod_1.z.string().nullable().optional(),
supplier_name: zod_1.z.string().nullable().optional(),
qty_shipped_in_past_12_months: zod_1.z.number().nullable().optional(),
order_in_past_12_months: zod_1.z.number().nullable().optional(),
customer_part_numbers: zod_1.z.union([zod_1.z.array(zod_1.z.string()), zod_1.z.string()]).optional(),
supplier_part_numbers: zod_1.z.string().nullable().optional(),
alternate_codes: zod_1.z.string().nullable().optional(),
stock_status: zod_1.z.union([zod_1.z.literal('in_stock'), zod_1.z.literal('out_of_stock')]),
item_categories: zod_1.z.array(zod_1.z.number()).optional(),
item_category_tree: zod_1.z.array(zod_1.z.string()).optional(),
category_score: zod_1.z.number().optional(),
attributes: zod_1.z
.array(zod_1.z.object({
name_string: zod_1.z.string(),
value_string: zod_1.z.string(),
value_original: zod_1.z.string().nullable().optional(),
}))
.optional(),
user_defined_fields: zod_1.z
.array(zod_1.z.object({
name_string: zod_1.z.string(),
value_string: zod_1.z.string(),
}))
.optional(),
tags: zod_1.z.array(zod_1.z.string()).optional(),
names: zod_1.z.array(zod_1.z.string()).optional(),
combo: zod_1.z.string(),
combo_hash: zod_1.z.string(),
});
exports.ItemsListDataSchema = zod_1.z.array(exports.ItemDocumentSchema);
exports.ItemsListResponseSchema = (0, schemas_1.BaseResponseSchema)(exports.ItemsListDataSchema);
// Individual item schemas (camelCase naming)
exports.ItemDetailSchema = zod_1.z.object({
invMastUid: zod_1.z.number(),
itemId: zod_1.z.string().max(40).nullable().optional(),
online: common_1.OnlineStatusSchema,
updateCd: zod_1.z.number(),
doc: zod_1.z.string().nullable().optional(),
indexCd: zod_1.z.number(),
statusCd: zod_1.z.number(),
processCd: zod_1.z.number(),
indexStatusCd: zod_1.z.number(),
dateCreated: zod_1.z.string(), // ISO 8601 format
dateLastModified: zod_1.z.string(), // ISO 8601 format
classId5: zod_1.z.string().max(8).nullable().optional(),
dateLastChecked: zod_1.z.string(), // ISO 8601 format
embeddingCd: zod_1.z.number(),
docHash: zod_1.z.string().max(64).nullable().optional(),
indexHash: zod_1.z.string().max(64).nullable().optional(),
location: zod_1.z.string().max(65).nullable().optional(),
uuid: zod_1.z.string().max(36).nullable().optional(),
});
exports.ItemDetailResponseSchema = (0, schemas_1.BaseResponseSchema)(exports.ItemDetailSchema);
// Item update request schema
exports.ItemUpdateRequestSchema = zod_1.z.object({
statusCd: zod_1.z.union([zod_1.z.literal(700), zod_1.z.literal(704), zod_1.z.literal(705)]).optional(),
processCd: zod_1.z.union([zod_1.z.literal(700), zod_1.z.literal(704), zod_1.z.literal(705), zod_1.z.literal(1185)]).optional(),
});
// Item update/refresh response schemas
exports.ItemOperationResponseSchema = (0, schemas_1.BaseResponseSchema)(exports.ItemDetailSchema);
// Refresh response schemas (same structure as item detail)
exports.ItemRefreshResponseSchema = (0, schemas_1.BaseResponseSchema)(exports.ItemDetailSchema);
//# sourceMappingURL=items.js.map