UNPKG

@dpkit/table

Version:

Data Package implementation in TypeScript.

15 lines 2.41 kB
import { col } from "nodejs-polars"; export function checkCellEnum(field, errorTable) { if (field.type === "string") { const rawEnum = field.constraints?.enum; if (rawEnum) { const target = col(`target:${field.name}`); const errorName = `error:cell/enum:${field.name}`; errorTable = errorTable .withColumn(target.isIn(rawEnum).not().alias(errorName)) .withColumn(col("error").or(col(errorName)).alias("error")); } } return errorTable; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW51bS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2ZpZWxkL2NoZWNrcy9lbnVtLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxlQUFlLENBQUE7QUFHbkMsTUFBTSxVQUFVLGFBQWEsQ0FBQyxLQUFZLEVBQUUsVUFBaUI7SUFDM0QsSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQzVCLE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxXQUFXLEVBQUUsSUFBSSxDQUFBO1FBRXZDLElBQUksT0FBTyxFQUFFLENBQUM7WUFDWixNQUFNLE1BQU0sR0FBRyxHQUFHLENBQUMsVUFBVSxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQTtZQUMxQyxNQUFNLFNBQVMsR0FBRyxtQkFBbUIsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFBO1lBRWpELFVBQVUsR0FBRyxVQUFVO2lCQUNwQixVQUFVLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7aUJBQ3ZELFVBQVUsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFBO1FBQy9ELENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTyxVQUFVLENBQUE7QUFDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB0eXBlIHsgRmllbGQgfSBmcm9tIFwiQGRwa2l0L2NvcmVcIlxuaW1wb3J0IHsgY29sIH0gZnJvbSBcIm5vZGVqcy1wb2xhcnNcIlxuaW1wb3J0IHR5cGUgeyBUYWJsZSB9IGZyb20gXCIuLi8uLi90YWJsZS9pbmRleC50c1wiXG5cbmV4cG9ydCBmdW5jdGlvbiBjaGVja0NlbGxFbnVtKGZpZWxkOiBGaWVsZCwgZXJyb3JUYWJsZTogVGFibGUpIHtcbiAgaWYgKGZpZWxkLnR5cGUgPT09IFwic3RyaW5nXCIpIHtcbiAgICBjb25zdCByYXdFbnVtID0gZmllbGQuY29uc3RyYWludHM/LmVudW1cblxuICAgIGlmIChyYXdFbnVtKSB7XG4gICAgICBjb25zdCB0YXJnZXQgPSBjb2woYHRhcmdldDoke2ZpZWxkLm5hbWV9YClcbiAgICAgIGNvbnN0IGVycm9yTmFtZSA9IGBlcnJvcjpjZWxsL2VudW06JHtmaWVsZC5uYW1lfWBcblxuICAgICAgZXJyb3JUYWJsZSA9IGVycm9yVGFibGVcbiAgICAgICAgLndpdGhDb2x1bW4odGFyZ2V0LmlzSW4ocmF3RW51bSkubm90KCkuYWxpYXMoZXJyb3JOYW1lKSlcbiAgICAgICAgLndpdGhDb2x1bW4oY29sKFwiZXJyb3JcIikub3IoY29sKGVycm9yTmFtZSkpLmFsaWFzKFwiZXJyb3JcIikpXG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIGVycm9yVGFibGVcbn1cbiJdfQ==