UNPKG

dt-compare-equal-validator

Version:

這個套件主要可以提供 Angular 7+ 專案使用進行欄位驗證,目前提供的驗證器為 dt-compare-equal-validator,可以用來比對一個 FormGroup 下的兩個欄位內容是否一致,較常見的使用情境是用在註冊會員時「設定密碼」與「確認密碼」欄位的時候。

125 lines (115 loc) 4.91 kB
(function (global, factory) { typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/forms')) : typeof define === 'function' && define.amd ? define('dt-compare-equal-validator', ['exports', '@angular/core', '@angular/forms'], factory) : (factory((global['dt-compare-equal-validator'] = {}),global.ng.core,global.ng.forms)); }(this, (function (exports,i0,forms) { 'use strict'; /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ var DtCompareEqualValidatorService = /** @class */ (function () { function DtCompareEqualValidatorService() { } DtCompareEqualValidatorService.decorators = [ { type: i0.Injectable, args: [{ providedIn: 'root' },] } ]; /** @nocollapse */ DtCompareEqualValidatorService.ctorParameters = function () { return []; }; /** @nocollapse */ DtCompareEqualValidatorService.ngInjectableDef = i0.defineInjectable({ factory: function DtCompareEqualValidatorService_Factory() { return new DtCompareEqualValidatorService(); }, token: DtCompareEqualValidatorService, providedIn: "root" }); return DtCompareEqualValidatorService; }()); /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** * @param {?} controlName * @return {?} */ function compareEqual(controlName) { return ( /** * @param {?} control * @return {?} */function (control) { if (!control.parent || control.parent.get(controlName).value === control.value) { return null; } else { return { compareEqual: true }; } }); } /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** @type {?} */ var COMPARE_EQUAL_VALIDATOR = { provide: forms.NG_VALIDATORS, useExisting: i0.forwardRef(( /** * @return {?} */function () { return CompareEqualDirective; })), multi: true }; var CompareEqualDirective = /** @class */ (function () { function CompareEqualDirective() { } /** * @param {?} control * @return {?} */ CompareEqualDirective.prototype.validate = /** * @param {?} control * @return {?} */ function (control) { return compareEqual(this.dtCompareEqual)(control); }; CompareEqualDirective.decorators = [ { type: i0.Directive, args: [{ selector: '[dtCompareEqual]', providers: [COMPARE_EQUAL_VALIDATOR] },] } ]; /** @nocollapse */ CompareEqualDirective.ctorParameters = function () { return []; }; CompareEqualDirective.propDecorators = { dtCompareEqual: [{ type: i0.Input }] }; return CompareEqualDirective; }()); /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ var DtCompareEqualValidatorModule = /** @class */ (function () { function DtCompareEqualValidatorModule() { } DtCompareEqualValidatorModule.decorators = [ { type: i0.NgModule, args: [{ declarations: [CompareEqualDirective], imports: [ forms.FormsModule ], exports: [CompareEqualDirective] },] } ]; return DtCompareEqualValidatorModule; }()); /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ /** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ exports.DtCompareEqualValidatorService = DtCompareEqualValidatorService; exports.DtCompareEqualValidatorModule = DtCompareEqualValidatorModule; exports.compareEqual = compareEqual; exports.CompareEqualDirective = CompareEqualDirective; Object.defineProperty(exports, '__esModule', { value: true }); }))); //# sourceMappingURL=dt-compare-equal-validator.umd.js.map