UNPKG

@forestadmin/datasource-toolkit

Version:
37 lines 3.61 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); function likes(getPattern, caseSensitive) { const operator = caseSensitive ? 'Like' : 'ILike'; return { dependsOn: [operator], forTypes: ['String'], replacer: leaf => leaf.override({ operator, value: getPattern(leaf.value) }), }; } function match(caseSensitive) { return { dependsOn: ['Match'], forTypes: ['String'], replacer: leaf => { let regexp = leaf.value; // eslint-disable-next-line no-useless-escape regexp = regexp.replace(/([\.\\\+\*\?\[\^\]\$\(\)\{\}\=\!\<\>\|\:\-])/g, '\\$1'); regexp = regexp.replace(/%/g, '.*').replace(/_/g, '.'); return leaf.override({ operator: 'Match', value: RegExp(`^${regexp}$`, caseSensitive ? 'g' : 'gi'), }); }, }; } exports.default = () => ({ Contains: [likes(value => `%${value}%`, true)], StartsWith: [likes(value => `${value}%`, true)], EndsWith: [likes(value => `%${value}`, true)], IContains: [likes(value => `%${value}%`, false)], IStartsWith: [likes(value => `${value}%`, false)], IEndsWith: [likes(value => `%${value}`, false)], ILike: [match(false)], Like: [match(true)], }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0dGVybi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9pbnRlcmZhY2VzL3F1ZXJ5L2NvbmRpdGlvbi10cmVlL3RyYW5zZm9ybXMvcGF0dGVybi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUdBLFNBQVMsS0FBSyxDQUFDLFVBQXVDLEVBQUUsYUFBc0I7SUFDNUUsTUFBTSxRQUFRLEdBQUcsYUFBYSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQztJQUVsRCxPQUFPO1FBQ0wsU0FBUyxFQUFFLENBQUMsUUFBUSxDQUFDO1FBQ3JCLFFBQVEsRUFBRSxDQUFDLFFBQVEsQ0FBQztRQUNwQixRQUFRLEVBQUUsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQWUsQ0FBQyxFQUFFLENBQUM7S0FDdkYsQ0FBQztBQUNKLENBQUM7QUFFRCxTQUFTLEtBQUssQ0FBQyxhQUFzQjtJQUNuQyxPQUFPO1FBQ0wsU0FBUyxFQUFFLENBQUMsT0FBTyxDQUFDO1FBQ3BCLFFBQVEsRUFBRSxDQUFDLFFBQVEsQ0FBQztRQUNwQixRQUFRLEVBQUUsSUFBSSxDQUFDLEVBQUU7WUFDZixJQUFJLE1BQU0sR0FBRyxJQUFJLENBQUMsS0FBZSxDQUFDO1lBRWxDLDZDQUE2QztZQUM3QyxNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQywrQ0FBK0MsRUFBRSxNQUFNLENBQUMsQ0FBQztZQUNqRixNQUFNLEdBQUcsTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsQ0FBQztZQUV2RCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUM7Z0JBQ25CLFFBQVEsRUFBRSxPQUFPO2dCQUNqQixLQUFLLEVBQUUsTUFBTSxDQUFDLElBQUksTUFBTSxHQUFHLEVBQUUsYUFBYSxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQzthQUN6RCxDQUFDLENBQUM7UUFDTCxDQUFDO0tBQ0YsQ0FBQztBQUNKLENBQUM7QUFFRCxrQkFBZSxHQUE2QyxFQUFFLENBQUMsQ0FBQztJQUM5RCxRQUFRLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLEtBQUssR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzlDLFVBQVUsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFDL0MsUUFBUSxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLEVBQUUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM3QyxTQUFTLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLEtBQUssR0FBRyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ2hELFdBQVcsRUFBRSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEdBQUcsS0FBSyxHQUFHLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDakQsU0FBUyxFQUFFLENBQUMsS0FBSyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxLQUFLLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMvQyxLQUFLLEVBQUUsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckIsSUFBSSxFQUFFLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO0NBQ3BCLENBQUMsQ0FBQyJ9