@lunaeme/circe-core
Version:
Circe :: Angular Core Services and Tools
35 lines • 4.89 kB
JavaScript
import { __decorate } from "tslib";
import { Injectable } from '@angular/core';
import { ToolService } from '../tool/tool.service';
var CustomValidationService = /** @class */ (function () {
function CustomValidationService() {
this._customMessages = {
repeated: 'There can not be repeated values'
};
}
CustomValidationService.formArrayRepeatedValues = function (control) {
var _output = null;
var _repeatedValues = ToolService.repeatedValuesInArray(control.value);
if (_repeatedValues && Array.isArray(_repeatedValues) && _repeatedValues.length) {
_output = {
repeated: { repeatedValues: _repeatedValues.join(', ') }
};
}
return _output;
};
CustomValidationService.prototype.getCustomMessages = function (keys) {
var _this = this;
var _keys = (keys && typeof keys === 'string') ? [keys] : keys;
var _output = {};
_keys.forEach(function (e) {
_output[e] = _this._customMessages[e];
});
return _output;
};
CustomValidationService = __decorate([
Injectable()
], CustomValidationService);
return CustomValidationService;
}());
export { CustomValidationService };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLXZhbGlkYXRpb24uc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BsdW5hZW1lL2NpcmNlLWNvcmUvIiwic291cmNlcyI6WyJsaWIvY3VzdG9tLXZhbGlkYXRpb24vY3VzdG9tLXZhbGlkYXRpb24uc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFnQnJDO0lBR1o7UUFDRSxJQUFJLENBQUMsZUFBZSxHQUFHO1lBQ3JCLFFBQVEsRUFBRSxrQ0FBa0M7U0FDN0MsQ0FBQztJQUNKLENBQUM7SUFFYSwrQ0FBdUIsR0FBckMsVUFBc0MsT0FBa0I7UUFDdEQsSUFBSSxPQUFPLEdBQWdCLElBQUksQ0FBQztRQUNoQyxJQUFNLGVBQWUsR0FBd0IsV0FBVyxDQUFDLHFCQUFxQixDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5RixJQUFJLGVBQWUsSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLGVBQWUsQ0FBQyxJQUFJLGVBQWUsQ0FBQyxNQUFNLEVBQUU7WUFDL0UsT0FBTyxHQUFHO2dCQUNSLFFBQVEsRUFBRSxFQUFFLGNBQWMsRUFBRSxlQUFlLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFO2FBQ3pELENBQUM7U0FDSDtRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFTSxtREFBaUIsR0FBeEIsVUFBeUIsSUFBOEM7UUFBdkUsaUJBT0M7UUFOQyxJQUFNLEtBQUssR0FBMkIsQ0FBQyxJQUFJLElBQUksT0FBTyxJQUFJLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQThCLENBQUM7UUFDbkgsSUFBTSxPQUFPLEdBQXdCLEVBQUUsQ0FBQztRQUN4QyxLQUFLLENBQUMsT0FBTyxDQUFDLFVBQUMsQ0FBa0I7WUFDL0IsT0FBTyxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdkMsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBM0J3Qix1QkFBdUI7UUFBakQsVUFBVSxFQUFFO09BQWMsdUJBQXVCLENBNEJqRDtJQUFELDhCQUFDO0NBQUEsQUE1QmEsSUE0QmI7U0E1QjBCLHVCQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1BcnJheSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IFRvb2xTZXJ2aWNlIH0gZnJvbSAnLi4vdG9vbC90b29sLnNlcnZpY2UnO1xuaW1wb3J0IHsgQ2NTaW5nbGVEYXRhIH0gZnJvbSAnLi4vX3R5cGVzL2RhdGEudHlwZXMnO1xuXG5leHBvcnQgdHlwZSBDdXN0b21FcnJvcktleXMgPSAncmVwZWF0ZWQnO1xuZXhwb3J0IGludGVyZmFjZSBDdXN0b21FcnJvck1lc3NhZ2VzIHtcbiAgW2tleTogc3RyaW5nXTogc3RyaW5nO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEN1c3RvbUVycm9yIHtcbiAgW2tleTogc3RyaW5nXTogQ3VzdG9tRXJyb3JSZXBlYXRlZFZhbHVlcztcbn1cblxuZXhwb3J0IGludGVyZmFjZSBDdXN0b21FcnJvclJlcGVhdGVkVmFsdWVzIHtcbiAgcmVwZWF0ZWRWYWx1ZXM6IHN0cmluZztcbn1cblxuQEluamVjdGFibGUoKSBleHBvcnQgY2xhc3MgQ3VzdG9tVmFsaWRhdGlvblNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IF9jdXN0b21NZXNzYWdlczogQ3VzdG9tRXJyb3JNZXNzYWdlcztcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLl9jdXN0b21NZXNzYWdlcyA9IHtcbiAgICAgIHJlcGVhdGVkOiAnVGhlcmUgY2FuIG5vdCBiZSByZXBlYXRlZCB2YWx1ZXMnXG4gICAgfTtcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgZm9ybUFycmF5UmVwZWF0ZWRWYWx1ZXMoY29udHJvbDogRm9ybUFycmF5KTogQ3VzdG9tRXJyb3IgfCBudWxsIHtcbiAgICBsZXQgX291dHB1dDogQ3VzdG9tRXJyb3IgPSBudWxsO1xuICAgIGNvbnN0IF9yZXBlYXRlZFZhbHVlczogQXJyYXk8Q2NTaW5nbGVEYXRhPiA9IFRvb2xTZXJ2aWNlLnJlcGVhdGVkVmFsdWVzSW5BcnJheShjb250cm9sLnZhbHVlKTtcbiAgICBpZiAoX3JlcGVhdGVkVmFsdWVzICYmIEFycmF5LmlzQXJyYXkoX3JlcGVhdGVkVmFsdWVzKSAmJiBfcmVwZWF0ZWRWYWx1ZXMubGVuZ3RoKSB7XG4gICAgICBfb3V0cHV0ID0ge1xuICAgICAgICByZXBlYXRlZDogeyByZXBlYXRlZFZhbHVlczogX3JlcGVhdGVkVmFsdWVzLmpvaW4oJywgJykgfVxuICAgICAgfTtcbiAgICB9XG4gICAgcmV0dXJuIF9vdXRwdXQ7XG4gIH1cblxuICBwdWJsaWMgZ2V0Q3VzdG9tTWVzc2FnZXMoa2V5czogQ3VzdG9tRXJyb3JLZXlzIHwgQXJyYXk8Q3VzdG9tRXJyb3JLZXlzPik6IEN1c3RvbUVycm9yTWVzc2FnZXMge1xuICAgIGNvbnN0IF9rZXlzOiBBcnJheTxDdXN0b21FcnJvcktleXM+ID0gKGtleXMgJiYgdHlwZW9mIGtleXMgPT09ICdzdHJpbmcnKSA/IFtrZXlzXSA6IGtleXMgYXMgQXJyYXk8Q3VzdG9tRXJyb3JLZXlzPjtcbiAgICBjb25zdCBfb3V0cHV0OiBDdXN0b21FcnJvck1lc3NhZ2VzID0ge307XG4gICAgX2tleXMuZm9yRWFjaCgoZTogQ3VzdG9tRXJyb3JLZXlzKSA9PiB7XG4gICAgICBfb3V0cHV0W2VdID0gdGhpcy5fY3VzdG9tTWVzc2FnZXNbZV07XG4gICAgfSk7XG4gICAgcmV0dXJuIF9vdXRwdXQ7XG4gIH1cbn1cbiJdfQ==