Files
klz-cables.com/.pnpm-store/v10/files/f1/9061316a757a65f737a1d02ae755438df16bd5fa0b57c14b91cd3b709e9dc1ec908a0a2e7dd6fc44e0b384539195cf7916f592e188e0e1890e819551e855ad
Marc Mintel 5397309103
Some checks failed
Build & Deploy / 🔍 Prepare (push) Successful in 20s
Build & Deploy / 🧪 QA (push) Failing after 34s
Build & Deploy / 🏗️ Build (push) Has started running
Build & Deploy / 🚀 Deploy (push) Has been cancelled
Build & Deploy / 🧪 Smoke Test (push) Has been cancelled
Build & Deploy / ⚡ Lighthouse (push) Has been cancelled
Build & Deploy / 🔔 Notify (push) Has been cancelled
fix(products): fix breadcrumbs and product filtering (backport from main)
2026-02-24 16:04:21 +01:00

25 lines
671 B
Plaintext

import type {MacroKeywordDefinition} from "ajv"
import type {GetDefinition} from "./_types"
type RequiredKwd = "anyRequired" | "oneRequired"
export default function getRequiredDef(
keyword: RequiredKwd
): GetDefinition<MacroKeywordDefinition> {
return () => ({
keyword,
type: "object",
schemaType: "array",
macro(schema: string[]) {
if (schema.length === 0) return true
if (schema.length === 1) return {required: schema}
const comb = keyword === "anyRequired" ? "anyOf" : "oneOf"
return {[comb]: schema.map((p) => ({required: [p]}))}
},
metaSchema: {
type: "array",
items: {type: "string"},
},
})
}