@webiny/api-headless-cms-ddb
Version:
DynamoDB storage operations plugin for Headless CMS API.
45 lines (43 loc) • 1.45 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.createDefaultFilterCreate = void 0;
var _error = _interopRequireDefault(require("@webiny/error"));
var _CmsEntryFieldFilterPlugin = require("../../../../plugins/CmsEntryFieldFilterPlugin");
const createDefaultFilterCreate = () => {
const plugin = new _CmsEntryFieldFilterPlugin.CmsEntryFieldFilterPlugin({
fieldType: _CmsEntryFieldFilterPlugin.CmsEntryFieldFilterPlugin.ALL,
create: params => {
const {
negate,
transformValue,
field,
compareValue,
valueFilterPlugins
} = params;
const plugin = valueFilterPlugins[params.operation];
if (!plugin) {
throw new _error.default(`Missing ValueFilterPlugin for operation "${params.operation}".`, "MISSING_OPERATION_PLUGIN", {
operation: params.operation
});
}
return {
negate,
transformValue,
field,
compareValue,
fieldPathId: [...field.parents.map(f => f.fieldId), field.fieldId].join("."),
path: field.createPath({
field
}),
plugin
};
}
});
plugin.name = `headless-cms.ddb.filter.default`;
return plugin;
};
exports.createDefaultFilterCreate = createDefaultFilterCreate;
//# sourceMappingURL=defaultFilterCreate.js.map