angular-pipes
Version:
Angular pipes library
42 lines • 5.63 kB
JavaScript
import * as tslib_1 from "tslib";
import { Pipe, NgModule } from '@angular/core';
import { isString, isNull } from '../utils/utils';
let WithPipe = class WithPipe {
transform(input, start = null, ends = null, csensitive = false) {
if (!isString(input) || (isNull(start) && isNull(ends)) || start == '' || ends == '') {
return input;
}
input = csensitive ? input : input.toLowerCase();
if (!isNull(start) && !isNull(ends)) {
let a = !input.indexOf(csensitive ? start : start.toLowerCase());
let b = input.indexOf(csensitive ? ends : ends.toLowerCase(), input.length - ends.length) !== -1;
if (a == true && b == true) {
return true;
}
else {
return false;
}
}
if (!isNull(start)) {
return !input.indexOf(csensitive ? start : start.toLowerCase());
}
if (!isNull(ends)) {
let position = input.length - ends.length;
return input.indexOf(csensitive ? ends : ends.toLowerCase(), position) !== -1;
}
}
};
WithPipe = tslib_1.__decorate([
Pipe({ name: 'with' })
], WithPipe);
export { WithPipe };
let NgWithPipeModule = class NgWithPipeModule {
};
NgWithPipeModule = tslib_1.__decorate([
NgModule({
declarations: [WithPipe],
exports: [WithPipe],
})
], NgWithPipeModule);
export { NgWithPipeModule };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l0aC5waXBlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYW5ndWxhci1waXBlcy8iLCJzb3VyY2VzIjpbInN0cmluZy93aXRoLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR2xELElBQWEsUUFBUSxHQUFyQixNQUFhLFFBQVE7SUFDbkIsU0FBUyxDQUFDLEtBQWEsRUFBRSxRQUF1QixJQUFJLEVBQUUsT0FBc0IsSUFBSSxFQUFFLGFBQXNCLEtBQUs7UUFDM0csSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxLQUFLLElBQUksRUFBRSxJQUFJLElBQUksSUFBSSxFQUFFLEVBQUU7WUFDcEYsT0FBTyxLQUFLLENBQUM7U0FDZDtRQUVELEtBQUssR0FBRyxVQUFVLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBRWpELElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUU7WUFDbkMsSUFBSSxDQUFDLEdBQVksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztZQUMxRSxJQUFJLENBQUMsR0FBWSxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLEVBQUUsS0FBSyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7WUFFMUcsSUFBSSxDQUFDLElBQUksSUFBSSxJQUFJLENBQUMsSUFBSSxJQUFJLEVBQUU7Z0JBQzFCLE9BQU8sSUFBSSxDQUFDO2FBQ2I7aUJBQU07Z0JBQ0wsT0FBTyxLQUFLLENBQUM7YUFDZDtTQUNGO1FBRUQsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNsQixPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7U0FDakU7UUFFRCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFO1lBQ2pCLElBQUksUUFBUSxHQUFRLEtBQUssQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQztZQUUvQyxPQUFPLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUUsRUFBRSxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztTQUMvRTtJQUNILENBQUM7Q0FDRixDQUFBO0FBN0JZLFFBQVE7SUFEcEIsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxDQUFDO0dBQ1YsUUFBUSxDQTZCcEI7U0E3QlksUUFBUTtBQW1DckIsSUFBYSxnQkFBZ0IsR0FBN0IsTUFBYSxnQkFBZ0I7Q0FBRyxDQUFBO0FBQW5CLGdCQUFnQjtJQUo1QixRQUFRLENBQUM7UUFDUixZQUFZLEVBQUUsQ0FBQyxRQUFRLENBQUM7UUFDeEIsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDO0tBQ3BCLENBQUM7R0FDVyxnQkFBZ0IsQ0FBRztTQUFuQixnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBpc1N0cmluZywgaXNOdWxsIH0gZnJvbSAnLi4vdXRpbHMvdXRpbHMnO1xyXG5cclxuQFBpcGUoeyBuYW1lOiAnd2l0aCcgfSlcclxuZXhwb3J0IGNsYXNzIFdpdGhQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgdHJhbnNmb3JtKGlucHV0OiBzdHJpbmcsIHN0YXJ0OiBzdHJpbmcgfCBudWxsID0gbnVsbCwgZW5kczogc3RyaW5nIHwgbnVsbCA9IG51bGwsIGNzZW5zaXRpdmU6IGJvb2xlYW4gPSBmYWxzZSk6IGFueSB7XHJcbiAgICBpZiAoIWlzU3RyaW5nKGlucHV0KSB8fCAoaXNOdWxsKHN0YXJ0KSAmJiBpc051bGwoZW5kcykpIHx8IHN0YXJ0ID09ICcnIHx8IGVuZHMgPT0gJycpIHtcclxuICAgICAgcmV0dXJuIGlucHV0O1xyXG4gICAgfVxyXG5cclxuICAgIGlucHV0ID0gY3NlbnNpdGl2ZSA/IGlucHV0IDogaW5wdXQudG9Mb3dlckNhc2UoKTtcclxuXHJcbiAgICBpZiAoIWlzTnVsbChzdGFydCkgJiYgIWlzTnVsbChlbmRzKSkge1xyXG4gICAgICBsZXQgYTogYm9vbGVhbiA9ICFpbnB1dC5pbmRleE9mKGNzZW5zaXRpdmUgPyBzdGFydCA6IHN0YXJ0LnRvTG93ZXJDYXNlKCkpO1xyXG4gICAgICBsZXQgYjogYm9vbGVhbiA9IGlucHV0LmluZGV4T2YoY3NlbnNpdGl2ZSA/IGVuZHMgOiBlbmRzLnRvTG93ZXJDYXNlKCksIGlucHV0Lmxlbmd0aCAtIGVuZHMubGVuZ3RoKSAhPT0gLTE7XHJcblxyXG4gICAgICBpZiAoYSA9PSB0cnVlICYmIGIgPT0gdHJ1ZSkge1xyXG4gICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIGlmICghaXNOdWxsKHN0YXJ0KSkge1xyXG4gICAgICByZXR1cm4gIWlucHV0LmluZGV4T2YoY3NlbnNpdGl2ZSA/IHN0YXJ0IDogc3RhcnQudG9Mb3dlckNhc2UoKSk7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKCFpc051bGwoZW5kcykpIHtcclxuICAgICAgbGV0IHBvc2l0aW9uOiBhbnkgPSBpbnB1dC5sZW5ndGggLSBlbmRzLmxlbmd0aDtcclxuXHJcbiAgICAgIHJldHVybiBpbnB1dC5pbmRleE9mKGNzZW5zaXRpdmUgPyBlbmRzIDogZW5kcy50b0xvd2VyQ2FzZSgpLCBwb3NpdGlvbikgIT09IC0xO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG5cclxuQE5nTW9kdWxlKHtcclxuICBkZWNsYXJhdGlvbnM6IFtXaXRoUGlwZV0sXHJcbiAgZXhwb3J0czogW1dpdGhQaXBlXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIE5nV2l0aFBpcGVNb2R1bGUge31cclxuIl19