UNPKG

@versatiledatakit/data-pipelines

Version:

Data Pipelines help Data Engineers develop, deploy, run, and manage data processing workloads (called 'Data Job')

34 lines 4.3 kB
/* * Copyright 2023-2025 Broadcom * SPDX-License-Identifier: Apache-2.0 */ import { get } from 'lodash'; import { CollectionsUtil } from '@versatiledatakit/shared'; /** * ** Executions Generic string filter criteria. */ export class ExecutionsStringCriteria { /** * ** Constructor. */ constructor(property, searchValue) { this._property = property; this._searchValue = searchValue; } /** * @inheritDoc */ meetCriteria(executions) { return [...(executions ?? [])].filter((execution) => { const value = get(execution, this._property); if (!CollectionsUtil.isString(this._searchValue)) { return true; } if (!CollectionsUtil.isString(value)) { return false; } return value.toLowerCase().includes(this._searchValue.toLowerCase()); }); } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhlY3V0aW9ucy1zdHJpbmcuY3JpdGVyaWEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9kYXRhLXBpcGVsaW5lcy9zcmMvbGliL2NvbXBvbmVudHMvZGF0YS1qb2IvcGFnZXMvZXhlY3V0aW9ucy9kYXRhLWpvYi1leGVjdXRpb25zLWdyaWQvY3JpdGVyaWEvc3RyaW5nL2V4ZWN1dGlvbnMtc3RyaW5nLmNyaXRlcmlhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7R0FHRztBQUVILE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFN0IsT0FBTyxFQUFFLGVBQWUsRUFBWSxNQUFNLDBCQUEwQixDQUFDO0FBSXJFOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHdCQUF3QjtJQUlqQzs7T0FFRztJQUNILFlBQ0ksUUFBb0MsRUFDcEMsV0FBb0Y7UUFFcEYsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7UUFDMUIsSUFBSSxDQUFDLFlBQVksR0FBRyxXQUFXLENBQUM7SUFDcEMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsWUFBWSxDQUFDLFVBQWtDO1FBQzNDLE9BQU8sQ0FBQyxHQUFHLENBQUMsVUFBVSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7WUFDaEQsTUFBTSxLQUFLLEdBQUcsR0FBRyxDQUFtRCxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBRS9GLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRTtnQkFDOUMsT0FBTyxJQUFJLENBQUM7YUFDZjtZQUVELElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxFQUFFO2dCQUNsQyxPQUFPLEtBQUssQ0FBQzthQUNoQjtZQUVELE9BQU8sS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7UUFDekUsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0NBQ0oiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMjMtMjAyNSBCcm9hZGNvbVxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbiAqL1xuXG5pbXBvcnQgeyBnZXQgfSBmcm9tICdsb2Rhc2gnO1xuXG5pbXBvcnQgeyBDb2xsZWN0aW9uc1V0aWwsIENyaXRlcmlhIH0gZnJvbSAnQHZlcnNhdGlsZWRhdGFraXQvc2hhcmVkJztcblxuaW1wb3J0IHsgR3JpZERhdGFKb2JFeGVjdXRpb24gfSBmcm9tICcuLi8uLi8uLi9tb2RlbCc7XG5cbi8qKlxuICogKiogRXhlY3V0aW9ucyBHZW5lcmljIHN0cmluZyBmaWx0ZXIgY3JpdGVyaWEuXG4gKi9cbmV4cG9ydCBjbGFzcyBFeGVjdXRpb25zU3RyaW5nQ3JpdGVyaWEgaW1wbGVtZW50cyBDcml0ZXJpYTxHcmlkRGF0YUpvYkV4ZWN1dGlvbj4ge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX3Byb3BlcnR5OiBrZXlvZiBHcmlkRGF0YUpvYkV4ZWN1dGlvbjtcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9zZWFyY2hWYWx1ZTogR3JpZERhdGFKb2JFeGVjdXRpb25bRXhjbHVkZTxrZXlvZiBHcmlkRGF0YUpvYkV4ZWN1dGlvbiwgJ2RlcGxveW1lbnQnPl07XG5cbiAgICAvKipcbiAgICAgKiAqKiBDb25zdHJ1Y3Rvci5cbiAgICAgKi9cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJvcGVydHk6IGtleW9mIEdyaWREYXRhSm9iRXhlY3V0aW9uLFxuICAgICAgICBzZWFyY2hWYWx1ZTogR3JpZERhdGFKb2JFeGVjdXRpb25bRXhjbHVkZTxrZXlvZiBHcmlkRGF0YUpvYkV4ZWN1dGlvbiwgJ2RlcGxveW1lbnQnPl1cbiAgICApIHtcbiAgICAgICAgdGhpcy5fcHJvcGVydHkgPSBwcm9wZXJ0eTtcbiAgICAgICAgdGhpcy5fc2VhcmNoVmFsdWUgPSBzZWFyY2hWYWx1ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAaW5oZXJpdERvY1xuICAgICAqL1xuICAgIG1lZXRDcml0ZXJpYShleGVjdXRpb25zOiBHcmlkRGF0YUpvYkV4ZWN1dGlvbltdKTogR3JpZERhdGFKb2JFeGVjdXRpb25bXSB7XG4gICAgICAgIHJldHVybiBbLi4uKGV4ZWN1dGlvbnMgPz8gW10pXS5maWx0ZXIoKGV4ZWN1dGlvbikgPT4ge1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSBnZXQ8R3JpZERhdGFKb2JFeGVjdXRpb24sIGtleW9mIEdyaWREYXRhSm9iRXhlY3V0aW9uPihleGVjdXRpb24sIHRoaXMuX3Byb3BlcnR5KTtcblxuICAgICAgICAgICAgaWYgKCFDb2xsZWN0aW9uc1V0aWwuaXNTdHJpbmcodGhpcy5fc2VhcmNoVmFsdWUpKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICghQ29sbGVjdGlvbnNVdGlsLmlzU3RyaW5nKHZhbHVlKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIHZhbHVlLnRvTG93ZXJDYXNlKCkuaW5jbHVkZXModGhpcy5fc2VhcmNoVmFsdWUudG9Mb3dlckNhc2UoKSk7XG4gICAgICAgIH0pO1xuICAgIH1cbn1cbiJdfQ==