@nowzoo/ngx-firebase-auth
Version:
Angular components for Firebase email-first sign in and out-of-band (oob) actions (reset password, etc).
79 lines (78 loc) • 5.3 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
*/
import { take } from 'rxjs/operators';
var NgxFirebaseAuthFormHelper = /** @class */ (function () {
function NgxFirebaseAuthFormHelper() {
}
/**
* @param {?} fc
* @param {?} key
* @param {?=} value
* @return {?}
*/
NgxFirebaseAuthFormHelper.setErrorUntilChanged = /**
* @param {?} fc
* @param {?} key
* @param {?=} value
* @return {?}
*/
function (fc, key, value) {
if (value === void 0) { value = true; }
/** @type {?} */
var error = {};
error[key] = value;
fc.setErrors(error);
fc.valueChanges.pipe(take(1)).subscribe(function () {
NgxFirebaseAuthFormHelper.clearError(fc, key);
});
};
/**
* @param {?} fc
* @param {?} key
* @return {?}
*/
NgxFirebaseAuthFormHelper.clearError = /**
* @param {?} fc
* @param {?} key
* @return {?}
*/
function (fc, key) {
/** @type {?} */
var errors = {};
if (!fc.errors) {
return;
}
Object.keys(fc.errors).forEach(function (k) {
if (k !== key) {
errors[k] = fc.errors[k];
}
});
if (Object.keys(errors).length === 0) {
fc.setErrors(null);
}
else {
fc.setErrors(errors);
}
};
/**
* @param {?} fc
* @return {?}
*/
NgxFirebaseAuthFormHelper.requiredNonEmpty = /**
* @param {?} fc
* @return {?}
*/
function (fc) {
/** @type {?} */
var value = fc.value;
if (typeof value !== 'string') {
return null;
}
return value.trim().length === 0 ? { required: true } : null;
};
return NgxFirebaseAuthFormHelper;
}());
export { NgxFirebaseAuthFormHelper };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1oZWxwZXIuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Abm93em9vL25neC1maXJlYmFzZS1hdXRoLyIsInNvdXJjZXMiOlsibGliL2Zvcm0taGVscGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFDQSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEMsSUFBQTs7Ozs7Ozs7O0lBQ1MsOENBQW9COzs7Ozs7SUFBM0IsVUFBNEIsRUFBbUIsRUFBRSxHQUFXLEVBQUUsS0FBaUI7UUFBakIsc0JBQUEsRUFBQSxZQUFpQjs7UUFDN0UsSUFBTSxLQUFLLEdBQUcsRUFBRSxDQUFDO1FBQ2pCLEtBQUssQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUM7UUFDbkIsRUFBRSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwQixFQUFFLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7WUFDdEMseUJBQXlCLENBQUMsVUFBVSxDQUFDLEVBQUUsRUFBRSxHQUFHLENBQUMsQ0FBQztTQUMvQyxDQUFDLENBQUM7S0FFSjs7Ozs7O0lBRU0sb0NBQVU7Ozs7O0lBQWpCLFVBQWtCLEVBQW1CLEVBQUUsR0FBVzs7UUFDaEQsSUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLEVBQUUsQ0FBQyxDQUFDLENBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7WUFDaEIsTUFBTSxDQUFDO1NBQ1I7UUFDRCxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxPQUFPLENBQUMsVUFBQyxDQUFDO1lBQy9CLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUNkLE1BQU0sQ0FBQyxDQUFDLENBQUMsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO2FBQzFCO1NBQ0YsQ0FBQyxDQUFDO1FBQ0gsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNyQyxFQUFFLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQ3BCO1FBQUMsSUFBSSxDQUFDLENBQUM7WUFDTixFQUFFLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQ3RCO0tBQ0Y7Ozs7O0lBRU0sMENBQWdCOzs7O0lBQXZCLFVBQXdCLEVBQW1COztRQUN6QyxJQUFNLEtBQUssR0FBRyxFQUFFLENBQUMsS0FBSyxDQUFDO1FBQ3ZCLEVBQUUsQ0FBQyxDQUFDLE9BQU8sS0FBSyxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDOUIsTUFBTSxDQUFDLElBQUksQ0FBQztTQUNiO1FBQ0QsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0tBQzVEO29DQXBDSDtJQXVDQyxDQUFBO0FBckNELHFDQXFDQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0Q29udHJvbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IHRha2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5leHBvcnQgY2xhc3MgTmd4RmlyZWJhc2VBdXRoRm9ybUhlbHBlciB7XG4gIHN0YXRpYyBzZXRFcnJvclVudGlsQ2hhbmdlZChmYzogQWJzdHJhY3RDb250cm9sLCBrZXk6IHN0cmluZywgdmFsdWU6IGFueSA9IHRydWUpIHtcbiAgICBjb25zdCBlcnJvciA9IHt9O1xuICAgIGVycm9yW2tleV0gPSB2YWx1ZTtcbiAgICBmYy5zZXRFcnJvcnMoZXJyb3IpO1xuICAgIGZjLnZhbHVlQ2hhbmdlcy5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICBOZ3hGaXJlYmFzZUF1dGhGb3JtSGVscGVyLmNsZWFyRXJyb3IoZmMsIGtleSk7XG4gICAgfSk7XG5cbiAgfVxuXG4gIHN0YXRpYyBjbGVhckVycm9yKGZjOiBBYnN0cmFjdENvbnRyb2wsIGtleTogc3RyaW5nKSB7XG4gICAgY29uc3QgZXJyb3JzID0ge307XG4gICAgaWYgKCEgZmMuZXJyb3JzKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIE9iamVjdC5rZXlzKGZjLmVycm9ycykuZm9yRWFjaCgoaykgPT4ge1xuICAgICAgaWYgKGsgIT09IGtleSkge1xuICAgICAgICBlcnJvcnNba10gPSBmYy5lcnJvcnNba107XG4gICAgICB9XG4gICAgfSk7XG4gICAgaWYgKE9iamVjdC5rZXlzKGVycm9ycykubGVuZ3RoID09PSAwKSB7XG4gICAgICBmYy5zZXRFcnJvcnMobnVsbCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGZjLnNldEVycm9ycyhlcnJvcnMpO1xuICAgIH1cbiAgfVxuXG4gIHN0YXRpYyByZXF1aXJlZE5vbkVtcHR5KGZjOiBBYnN0cmFjdENvbnRyb2wpIHtcbiAgICBjb25zdCB2YWx1ZSA9IGZjLnZhbHVlO1xuICAgIGlmICh0eXBlb2YgdmFsdWUgIT09ICdzdHJpbmcnKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgcmV0dXJuIHZhbHVlLnRyaW0oKS5sZW5ndGggPT09IDAgPyB7cmVxdWlyZWQ6IHRydWV9IDogbnVsbDtcbiAgfVxuXG5cbn1cbiJdfQ==