Files
klz-cables.com/.pnpm-store/v10/files/10/30c268b0fbafe8b419e83322be8112240dc2f03c462e07cc77af2ecaa3598463533a6d6755dce6d89b6cad70fb8f23e0746e3c8bf3cadfc0288dc19fb2273f
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

91 lines
2.6 KiB
Plaintext

import { Kind } from './kinds.mjs';
export function isDefinitionNode(node) {
return (
isExecutableDefinitionNode(node) ||
isTypeSystemDefinitionNode(node) ||
isTypeSystemExtensionNode(node)
);
}
export function isExecutableDefinitionNode(node) {
return (
node.kind === Kind.OPERATION_DEFINITION ||
node.kind === Kind.FRAGMENT_DEFINITION
);
}
export function isSelectionNode(node) {
return (
node.kind === Kind.FIELD ||
node.kind === Kind.FRAGMENT_SPREAD ||
node.kind === Kind.INLINE_FRAGMENT
);
}
export function isValueNode(node) {
return (
node.kind === Kind.VARIABLE ||
node.kind === Kind.INT ||
node.kind === Kind.FLOAT ||
node.kind === Kind.STRING ||
node.kind === Kind.BOOLEAN ||
node.kind === Kind.NULL ||
node.kind === Kind.ENUM ||
node.kind === Kind.LIST ||
node.kind === Kind.OBJECT
);
}
export function isConstValueNode(node) {
return (
isValueNode(node) &&
(node.kind === Kind.LIST
? node.values.some(isConstValueNode)
: node.kind === Kind.OBJECT
? node.fields.some((field) => isConstValueNode(field.value))
: node.kind !== Kind.VARIABLE)
);
}
export function isTypeNode(node) {
return (
node.kind === Kind.NAMED_TYPE ||
node.kind === Kind.LIST_TYPE ||
node.kind === Kind.NON_NULL_TYPE
);
}
export function isTypeSystemDefinitionNode(node) {
return (
node.kind === Kind.SCHEMA_DEFINITION ||
isTypeDefinitionNode(node) ||
node.kind === Kind.DIRECTIVE_DEFINITION
);
}
export function isTypeDefinitionNode(node) {
return (
node.kind === Kind.SCALAR_TYPE_DEFINITION ||
node.kind === Kind.OBJECT_TYPE_DEFINITION ||
node.kind === Kind.INTERFACE_TYPE_DEFINITION ||
node.kind === Kind.UNION_TYPE_DEFINITION ||
node.kind === Kind.ENUM_TYPE_DEFINITION ||
node.kind === Kind.INPUT_OBJECT_TYPE_DEFINITION
);
}
export function isTypeSystemExtensionNode(node) {
return node.kind === Kind.SCHEMA_EXTENSION || isTypeExtensionNode(node);
}
export function isTypeExtensionNode(node) {
return (
node.kind === Kind.SCALAR_TYPE_EXTENSION ||
node.kind === Kind.OBJECT_TYPE_EXTENSION ||
node.kind === Kind.INTERFACE_TYPE_EXTENSION ||
node.kind === Kind.UNION_TYPE_EXTENSION ||
node.kind === Kind.ENUM_TYPE_EXTENSION ||
node.kind === Kind.INPUT_OBJECT_TYPE_EXTENSION
);
}
export function isSchemaCoordinateNode(node) {
return (
node.kind === Kind.TYPE_COORDINATE ||
node.kind === Kind.MEMBER_COORDINATE ||
node.kind === Kind.ARGUMENT_COORDINATE ||
node.kind === Kind.DIRECTIVE_COORDINATE ||
node.kind === Kind.DIRECTIVE_ARGUMENT_COORDINATE
);
}