Files
atlas-seller-kit/apps/extension/lib/collection-payload-validation.ts

12 lines
577 B
TypeScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import { collectedProductPayloadSchema } from '@atlas/contracts';
/** 先按共享契约校验采集载荷,失败时保留字段路径,不丢弃或截断真实 SKU。 */
export function validateCollectedPayload(payload: unknown) {
const result = collectedProductPayloadSchema.safeParse(payload);
if (result.success) return result.data;
const details = result.error.issues.slice(0, 3).map((issue) =>
`${issue.path.join('.') || '采集数据'}:${issue.message}`,
);
throw new Error(`采集数据不符合要求(${details.join(';')})`);
}