@c8y/ngx-components
Version:
Angular modules for Cumulocity IoT applications
39 lines • 4.11 kB
JavaScript
import { Directive } from '@angular/core';
import { NG_VALIDATORS, Validators } from '@angular/forms';
import * as i0 from "@angular/core";
const SIMPLE_JSON_PATH_REGEX = /^[^.\s]+(\.\S+)*$/;
export function simpleJsonPathValidator(control) {
const errors = Validators.pattern(SIMPLE_JSON_PATH_REGEX)(control);
return !!errors
? {
simpleJsonPath: errors.pattern
}
: null;
}
export class SimpleJsonPathValidatorDirective {
validate(control) {
return simpleJsonPathValidator(control);
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SimpleJsonPathValidatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: SimpleJsonPathValidatorDirective, selector: "[simpleJsonPath]", providers: [
{
provide: NG_VALIDATORS,
useExisting: SimpleJsonPathValidatorDirective,
multi: true
}
], ngImport: i0 }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: SimpleJsonPathValidatorDirective, decorators: [{
type: Directive,
args: [{
selector: '[simpleJsonPath]',
providers: [
{
provide: NG_VALIDATORS,
useExisting: SimpleJsonPathValidatorDirective,
multi: true
}
]
}]
}] });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2ltcGxlLWpzb24tcGF0aC12YWxpZGF0b3IuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vY29yZS9mb3Jtcy9zaW1wbGUtanNvbi1wYXRoLXZhbGlkYXRvci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxQyxPQUFPLEVBRUwsYUFBYSxFQUdiLFVBQVUsRUFDWCxNQUFNLGdCQUFnQixDQUFDOztBQUV4QixNQUFNLHNCQUFzQixHQUFHLG1CQUFtQixDQUFDO0FBRW5ELE1BQU0sVUFBVSx1QkFBdUIsQ0FBQyxPQUF3QjtJQUM5RCxNQUFNLE1BQU0sR0FBRyxVQUFVLENBQUMsT0FBTyxDQUFDLHNCQUFzQixDQUFDLENBQUMsT0FBTyxDQUFDLENBQUM7SUFFbkUsT0FBTyxDQUFDLENBQUMsTUFBTTtRQUNiLENBQUMsQ0FBQztZQUNFLGNBQWMsRUFBRSxNQUFNLENBQUMsT0FBTztTQUMvQjtRQUNILENBQUMsQ0FBQyxJQUFJLENBQUM7QUFDWCxDQUFDO0FBWUQsTUFBTSxPQUFPLGdDQUFnQztJQUMzQyxRQUFRLENBQUMsT0FBa0M7UUFDekMsT0FBTyx1QkFBdUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUMxQyxDQUFDOytHQUhVLGdDQUFnQzttR0FBaEMsZ0NBQWdDLDJDQVJoQztZQUNUO2dCQUNFLE9BQU8sRUFBRSxhQUFhO2dCQUN0QixXQUFXLEVBQUUsZ0NBQWdDO2dCQUM3QyxLQUFLLEVBQUUsSUFBSTthQUNaO1NBQ0Y7OzRGQUVVLGdDQUFnQztrQkFWNUMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsa0JBQWtCO29CQUM1QixTQUFTLEVBQUU7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLGFBQWE7NEJBQ3RCLFdBQVcsa0NBQWtDOzRCQUM3QyxLQUFLLEVBQUUsSUFBSTt5QkFDWjtxQkFDRjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtcbiAgQWJzdHJhY3RDb250cm9sLFxuICBOR19WQUxJREFUT1JTLFxuICBWYWxpZGF0aW9uRXJyb3JzLFxuICBWYWxpZGF0b3IsXG4gIFZhbGlkYXRvcnNcbn0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5jb25zdCBTSU1QTEVfSlNPTl9QQVRIX1JFR0VYID0gL15bXi5cXHNdKyhcXC5cXFMrKSokLztcblxuZXhwb3J0IGZ1bmN0aW9uIHNpbXBsZUpzb25QYXRoVmFsaWRhdG9yKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxsIHtcbiAgY29uc3QgZXJyb3JzID0gVmFsaWRhdG9ycy5wYXR0ZXJuKFNJTVBMRV9KU09OX1BBVEhfUkVHRVgpKGNvbnRyb2wpO1xuXG4gIHJldHVybiAhIWVycm9yc1xuICAgID8ge1xuICAgICAgICBzaW1wbGVKc29uUGF0aDogZXJyb3JzLnBhdHRlcm5cbiAgICAgIH1cbiAgICA6IG51bGw7XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tzaW1wbGVKc29uUGF0aF0nLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxJREFUT1JTLFxuICAgICAgdXNlRXhpc3Rpbmc6IFNpbXBsZUpzb25QYXRoVmFsaWRhdG9yRGlyZWN0aXZlLFxuICAgICAgbXVsdGk6IHRydWVcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgU2ltcGxlSnNvblBhdGhWYWxpZGF0b3JEaXJlY3RpdmUgaW1wbGVtZW50cyBWYWxpZGF0b3Ige1xuICB2YWxpZGF0ZShjb250cm9sOiBBYnN0cmFjdENvbnRyb2w8YW55LCBhbnk+KTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGwge1xuICAgIHJldHVybiBzaW1wbGVKc29uUGF0aFZhbGlkYXRvcihjb250cm9sKTtcbiAgfVxufVxuIl19