@palmares/schemas
Version:
This defines a default schema definition for validation of data, it abstract popular schema validation libraries like zod, yup, valibot and others"
83 lines (79 loc) • 2.34 kB
JavaScript
var __defProp = Object.defineProperty;
var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
// src/exceptions.ts
var SchemaAdapterNotImplementedError = class extends Error {
static {
__name(this, "SchemaAdapterNotImplementedError");
}
constructor(args) {
super(`Schema adapter did not implement ${args.functionName} in ${args.className}`);
}
};
// src/adapter/fields/index.ts
var FieldAdapter = class {
static {
__name(this, "FieldAdapter");
}
translate(_fieldAdapter, _args, _base) {
throw new SchemaAdapterNotImplementedError({
className: this.constructor.name,
functionName: "translate"
});
}
parse(_adapter, _fieldAdapter, _schema, _value, _args) {
throw new SchemaAdapterNotImplementedError({
className: this.constructor.name,
functionName: "parse"
});
}
toString(_adapter, _fieldAdapter, _args, _base) {
throw new SchemaAdapterNotImplementedError({
className: this.constructor.name,
functionName: "toString"
});
}
// eslint-disable-next-line ts/require-await
async formatError(_adapter, _fieldAdapter, _schema, _error, _metadata) {
throw new SchemaAdapterNotImplementedError({
className: this.constructor.name,
functionName: "formatError"
});
}
};
// src/adapter/fields/object.ts
function objectFieldAdapter(args) {
let CustomObjectFieldAdapter = class CustomObjectFieldAdapter extends ObjectFieldAdapter {
static {
__name(this, "CustomObjectFieldAdapter");
}
translate = args.translate;
toString = args.toString;
formatError = args.formatError;
parse = args.parse;
};
return CustomObjectFieldAdapter;
}
__name(objectFieldAdapter, "objectFieldAdapter");
var ObjectFieldAdapter = class extends FieldAdapter {
static {
__name(this, "ObjectFieldAdapter");
}
translate(_fieldAdapter, _args) {
}
parse(_adapter, _fieldAdapter, _result, _value, _args) {
throw new SchemaAdapterNotImplementedError({
className: this.constructor.name,
functionName: "parse"
});
}
toString(_adapter, _fieldAdapter, _args, _base) {
throw new SchemaAdapterNotImplementedError({
className: this.constructor.name,
functionName: "toString"
});
}
};
export {
ObjectFieldAdapter,
objectFieldAdapter
};