@dereekb/dbx-firebase 9.20.14 → 9.20.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -51,4 +51,4 @@ export class DbxFirebaseInContextFirebaseModelServiceInstance {
51
51
  return this.roleReader$.pipe(map((x) => x.containsRoles(setIncludes, roles)), distinctUntilChanged(), shareReplay(1));
52
52
  }
53
53
  }
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuY29udGV4dC5pbnN0YW5jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL21vZGVsL3NlcnZpY2UvbW9kZWwuY29udGV4dC5pbnN0YW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsWUFBWSxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUVoRSxPQUFPLEVBQUUsR0FBRyxFQUFjLFNBQVMsRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFLckYsTUFBTSxVQUFVLHVEQUF1RCxDQUEySCxRQUF1QjtJQUN2TixPQUFPLENBQXdFLElBQXVJLEVBQUUsTUFBbUMsRUFBRSxFQUFFO1FBQzdQLE1BQU0sSUFBSSxHQUFHLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNsQyxNQUFNLGVBQWUsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUNuQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUNuQixTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ2tDLENBQUM7UUFFbEcsT0FBTyxJQUFJLGdEQUFnRCxDQUFVLGVBQWUsQ0FBQyxDQUFDO0lBQ3hGLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sT0FBTyxnREFBZ0Q7SUFDM0QsWUFBcUIsYUFBZ0c7UUFBaEcsa0JBQWEsR0FBYixhQUFhLENBQW1GO1FBRTVHLFNBQUksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxD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QVcsQ0FBQyxJQUFJLENBQzFCLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLENBQUMsRUFDMUMsb0JBQW9CLEVBQUUsRUFDdEIsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7SUFDSixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsS0FBeUI7UUFDeEMsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsS0FBeUI7UUFDeEMsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsYUFBYSxDQUFDLFdBQTRCLEVBQUUsS0FBeUI7UUFDbkUsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDMUIsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUMvQyxvQkFBb0IsRUFBRSxFQUN0QixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZpcmVzdG9yZURvY3VtZW50LCBGaXJlYmFzZVBlcm1pc3Npb25FcnJvckNvbnRleHQsIEluTW9kZWxDb250ZXh0RmlyZWJhc2VNb2RlbFNlcnZpY2UsIEZpcmVzdG9yZURvY3VtZW50RGF0YSwgRG9jdW1lbnRTbmFwc2hvdCwgRmlyZXN0b3JlQWNjZXNzb3JTdHJlYW1Nb2RlLCBTbmFwc2hvdE9wdGlvbnMsIGZpcmVzdG9yZU1vZGVsS2V5Q29sbGVjdGlvblR5cGUsIEZpcmVzdG9yZUNvbGxlY3Rpb25UeXBlLCBGaXJlYmFzZU1vZGVsU2VydmljZUNvbnRleHQsIEZpcmViYXNlTW9kZWxzU2VydmljZUZhY3RvcnksIEZpcmVzdG9yZU1vZGVsSWRlbnRpdHksIEluQ29udGV4dEZpcmViYXNlTW9kZWxzU2VydmljZSwgRmlyZXN0b3JlTW9kZWxJZGVudGl0eU1vZGVsVHlwZSwgRmlyZWJhc2VNb2RlbHNTZXJ2aWNlIH0gZnJvbSAnQGRlcmVla2IvZmlyZWJhc2UnO1xuaW1wb3J0IHsgR3JhbnRlZFJvbGUsIEdyYW50ZWRSb2xlVHJ1dGhNYXAsIEdyYW50ZWRSb2xlVHJ1dGhNYXBPYmplY3QgfSBmcm9tICdAZGVyZWVrYi9tb2RlbCc7XG5pbXBvcnQgeyBhc09ic2VydmFibGUsIE9ic2VydmFibGVPclZhbHVlIH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5pbXBvcnQgeyBTZXRJbmNsdWRlc01vZGUsIEl0ZXJhYmxlT3JWYWx1ZSwgTW9kZWxLZXkgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSwgc3dpdGNoTWFwLCBzaGFyZVJlcGxheSwgZGlzdGluY3RVbnRpbENoYW5nZWQgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERieEZpcmViYXNlSW5Db250ZXh0RmlyZWJhc2VNb2RlbEluZm9TZXJ2aWNlSW5zdGFuY2UgfSBmcm9tICcuL21vZGVsLmNvbnRleHQnO1xuXG5leHBvcnQgdHlwZSBEYnhGaXJlYmFzZUluQ29udGV4dEZpcmViYXNlTW9kZWxTZXJ2aWNlSW5zdGFuY2VGYWN0b3J5PFMgZXh0ZW5kcyBJbkNvbnRleHRGaXJlYmFzZU1vZGVsc1NlcnZpY2U8YW55PiwgQyBleHRlbmRzIEZpcmViYXNlUGVybWlzc2lvbkVycm9yQ29udGV4dCA9IEZpcmViYXNlUGVybWlzc2lvbkVycm9yQ29udGV4dD4gPSA8RCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PGFueT4sIFIgZXh0ZW5kcyBHcmFudGVkUm9sZSA9IEdyYW50ZWRSb2xlPih0eXBlOiBTIGV4dGVuZHMgSW5Db250ZXh0RmlyZWJhc2VNb2RlbHNTZXJ2aWNlPGluZmVyIFk+ID8gKFkgZXh0ZW5kcyBGaXJlYmFzZU1vZGVsc1NlcnZpY2U8aW5mZXIgWCwgaW5mZXIgQz4gPyBrZXlvZiBYIDogbmV2ZXIpIDogbmV2ZXIsIGtleU9iczogT2JzZXJ2YWJsZU9yVmFsdWU8TW9kZWxLZXk+KSA9PiBEYnhGaXJlYmFzZUluQ29udGV4dEZpcmViYXNlTW9kZWxTZXJ2aWNlSW5zdGFuY2U8RCwgUiwgQz47XG5cbmV4cG9ydCBmdW5jdGlvbiBkYnhGaXJlYmFzZUluQ29udGV4dEZpcmViYXNlTW9kZWxTZXJ2aWNlSW5zdGFuY2VGYWN0b3J5PFMgZXh0ZW5kcyBJbkNvbnRleHRGaXJlYmFzZU1vZGVsc1NlcnZpY2U8YW55PiwgQyBleHRlbmRzIEZpcmViYXNlUGVybWlzc2lvbkVycm9yQ29udGV4dCA9IEZpcmViYXNlUGVybWlzc2lvbkVycm9yQ29udGV4dD4oY29udGV4dCQ6IE9ic2VydmFibGU8Uz4pOiBEYnhGaXJlYmFzZUluQ29udGV4dEZpcmViYXNlTW9kZWxTZXJ2aWNlSW5zdGFuY2VGYWN0b3J5PFMsIEM+IHtcbiAgcmV0dXJuIDxEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8YW55PiwgUiBleHRlbmRzIEdyYW50ZWRSb2xlID0gR3JhbnRlZFJvbGU+KHR5cGU6IFMgZXh0ZW5kcyBJbkNvbnRleHRGaXJlYmFzZU1vZGVsc1NlcnZpY2U8aW5mZXIgWT4gPyAoWSBleHRlbmRzIEZpcmViYXNlTW9kZWxzU2VydmljZTxpbmZlciBYLCBpbmZlciBDPiA/IGtleW9mIFggOiBuZXZlcikgOiBuZXZlciwga2V5T2JzOiBPYnNlcnZhYmxlT3JWYWx1ZTxNb2RlbEtleT4pID0+IHtcbiAgICBjb25zdCBrZXkkID0gYXNPYnNlcnZhYmxlKGtleU9icyk7XG4gICAgY29uc3QgbW9kZWxTZXJ2aWNlT2JzID0gY29udGV4dCQucGlwZShcbiAgICAgIG1hcCgoeCkgPT4geCh0eXBlKSksXG4gICAgICBzd2l0Y2hNYXAoKHNlcnZpY2UpID0+IGtleSQucGlwZShtYXAoKGtleSkgPT4gc2VydmljZShrZXkpKSkpXG4gICAgKSBhcyB1bmtub3duIGFzIE9ic2VydmFibGU8SW5Nb2RlbENvbnRleHRGaXJlYmFzZU1vZGVsU2VydmljZTxDLCBGaXJlc3RvcmVEb2N1bWVudERhdGE8RD4sIEQsIFI+PjtcblxuICAgIHJldHVybiBuZXcgRGJ4RmlyZWJhc2VJbkNvbnRleHRGaXJlYmFzZU1vZGVsU2VydmljZUluc3RhbmNlPEQsIFIsIEM+KG1vZGVsU2VydmljZU9icyk7XG4gIH07XG59XG5cbi8qKlxuICogV3JhcHMgYW4gSW5Nb2RlbENvbnRleHRGaXJlYmFzZU1vZGVsU2VydmljZSBvYnNlcnZhYmxlIGFuZCBwcm92aWRlcyBkaWZmZXJlbnQgcGlwZWQgb2JzZXJ2YWJsZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBEYnhGaXJlYmFzZUluQ29udGV4dEZpcmViYXNlTW9kZWxTZXJ2aWNlSW5zdGFuY2U8RCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PGFueT4sIFIgZXh0ZW5kcyBHcmFudGVkUm9sZSA9IEdyYW50ZWRSb2xlLCBDIGV4dGVuZHMgRmlyZWJhc2VQZXJtaXNzaW9uRXJyb3JDb250ZXh0ID0gRmlyZWJhc2VQZXJtaXNzaW9uRXJyb3JDb250ZXh0PiBpbXBsZW1lbnRzIERieEZpcmViYXNlSW5Db250ZXh0RmlyZWJhc2VNb2RlbEluZm9TZXJ2aWNlSW5zdGFuY2U8RCwgUj4ge1xuICBjb25zdHJ1Y3RvcihyZWFkb25seSBtb2RlbFNlcnZpY2UkOiBPYnNlcnZhYmxlPEluTW9kZWxDb250ZXh0RmlyZWJhc2VNb2RlbFNlcnZpY2U8QywgRmlyZXN0b3JlRG9jdW1lbnREYXRhPEQ+LCBELCBSPj4pIHt9XG5cbiAgcmVhZG9ubHkga2V5JCA9IHRoaXMubW9kZWxTZXJ2aWNlJC5waXBlKG1hcCgoeCkgPT4geC5tb2RlbC5rZXkpKTtcblxuICAvLyBNQVJLOiBNb2RlbFxuICByZWFkb25seSBtb2RlbFR5cGUkID0gdGhpcy5tb2RlbFNlcnZpY2UkLnBpcGUoXG4gICAgbWFwKCh4KSA9PiB4Lm1vZGVsLm1vZGVsVHlwZSksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICApO1xuXG4gIHJlYWRvbmx5IG1vZGVsJCA9IHRoaXMubW9kZWxTZXJ2aWNlJC5waXBlKFxuICAgIG1hcCgoeCkgPT4geC5tb2RlbCksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKGEsIGIpID0+IGEua2V5ID09PSBiLmtleSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBzbmFwc2hvdERhdGEkID0gdGhpcy5tb2RlbCQucGlwZShcbiAgICBzd2l0Y2hNYXAoKHgpID0+IHguc25hcHNob3REYXRhKCkpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgc25hcHNob3RTdHJlYW0obW9kZTogRmlyZXN0b3JlQWNjZXNzb3JTdHJlYW1Nb2RlKTogT2JzZXJ2YWJsZTxEb2N1bWVudFNuYXBzaG90PEZpcmVzdG9yZURvY3VtZW50RGF0YTxEPj4+IHtcbiAgICByZXR1cm4gdGhpcy5tb2RlbCQucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoeCkgPT4geC5zbmFwc2hvdFN0cmVhbShtb2RlKSksXG4gICAgICBzaGFyZVJlcGxheSgxKVxuICAgICk7XG4gIH1cblxuICBzbmFwc2hvdERhdGFTdHJlYW0obW9kZTogRmlyZXN0b3JlQWNjZXNzb3JTdHJlYW1Nb2RlLCBvcHRpb25zPzogU25hcHNob3RPcHRpb25zKTogT2JzZXJ2YWJsZTxGaXJlc3RvcmVEb2N1bWVudERhdGE8RD4+IHtcbiAgICByZXR1cm4gdGhpcy5tb2RlbCQucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoeCkgPT4geC5zbmFwc2hvdERhdGFTdHJlYW0obW9kZSkpLFxuICAgICAgc2hhcmVSZXBsYXkoMSlcbiAgICApO1xuICB9XG5cbiAgLy8gTUFSSzogUm9sZXNcbiAgcmVhZG9ubHkgcm9sZVJlYWRlciQgPSB0aGlzLm1vZGVsU2VydmljZSQucGlwZShcbiAgICBzd2l0Y2hNYXAoKHgpID0+IHgucm9sZVJlYWRlcigpKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IHJvbGVNYXAkID0gdGhpcy5yb2xlUmVhZGVyJC5waXBlKFxuICAgIG1hcCgoeCkgPT4geC5yb2xlTWFwKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGhhc05vQWNjZXNzJCA9IHRoaXMucm9sZVJlYWRlciQucGlwZShcbiAgICBtYXAoKHgpID0+IHguaGFzTm9BY2Nlc3MoKSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICB0cnV0aE1hcDxNIGV4dGVuZHMgR3JhbnRlZFJvbGVUcnV0aE1hcE9iamVjdDxhbnksIFI+PihpbnB1dDogTSk6IE9ic2VydmFibGU8R3JhbnRlZFJvbGVUcnV0aE1hcDxNPj4ge1xuICAgIHJldHVybiB0aGlzLnJvbGVSZWFkZXIkLnBpcGUoXG4gICAgICBtYXAoKHgpID0+IHgudHJ1dGhNYXAoaW5wdXQpKSxcbiAgICAgIHNoYXJlUmVwbGF5KDEpXG4gICAgKTtcbiAgfVxuXG4gIGhhc0FueVJvbGVzKHJvbGVzOiBJdGVyYWJsZU9yVmFsdWU8Uj4pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5oYXNSb2xlcygnYW55Jywgcm9sZXMpO1xuICB9XG5cbiAgaGFzQWxsUm9sZXMocm9sZXM6IEl0ZXJhYmxlT3JWYWx1ZTxSPik6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmhhc1JvbGVzKCdhbGwnLCByb2xlcyk7XG4gIH1cblxuICBoYXNSb2xlcyhzZXRJbmNsdWRlczogU2V0SW5jbHVkZXNNb2RlLCByb2xlczogSXRlcmFibGVPclZhbHVlPFI+KTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMucm9sZVJlYWRlciQucGlwZShcbiAgICAgIG1hcCgoeCkgPT4geC5oYXNSb2xlcyhzZXRJbmNsdWRlcywgcm9sZXMpKSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICBzaGFyZVJlcGxheSgxKVxuICAgICk7XG4gIH1cblxuICBjb250YWluc0FueVJvbGVzKHJvbGVzOiBJdGVyYWJsZU9yVmFsdWU8Uj4pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5jb250YWluc1JvbGVzKCdhbnknLCByb2xlcyk7XG4gIH1cblxuICBjb250YWluc0FsbFJvbGVzKHJvbGVzOiBJdGVyYWJsZU9yVmFsdWU8Uj4pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5jb250YWluc1JvbGVzKCdhbGwnLCByb2xlcyk7XG4gIH1cblxuICBjb250YWluc1JvbGVzKHNldEluY2x1ZGVzOiBTZXRJbmNsdWRlc01vZGUsIHJvbGVzOiBJdGVyYWJsZU9yVmFsdWU8Uj4pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5yb2xlUmVhZGVyJC5waXBlKFxuICAgICAgbWFwKCh4KSA9PiB4LmNvbnRhaW5zUm9sZXMoc2V0SW5jbHVkZXMsIHJvbGVzKSksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgc2hhcmVSZXBsYXkoMSlcbiAgICApO1xuICB9XG59XG4iXX0=
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuY29udGV4dC5pbnN0YW5jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL21vZGVsL3NlcnZpY2UvbW9kZWwuY29udGV4dC5pbnN0YW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsWUFBWSxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUVoRSxPQUFPLEVBQUUsR0FBRyxFQUFjLFNBQVMsRUFBRSxXQUFXLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFLckYsTUFBTSxVQUFVLHVEQUF1RCxDQUEySCxRQUF1QjtJQUN2TixPQUFPLENBQXdFLElBQXVJLEVBQUUsTUFBbUMsRUFBRSxFQUFFO1FBQzdQLE1BQU0sSUFBSSxHQUFHLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNsQyxNQUFNLGVBQWUsR0FBRyxRQUFRLENBQUMsSUFBSSxDQUNuQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxFQUNuQixTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQ2tDLENBQUM7UUFFbEcsT0FBTyxJQUFJLGdEQUFnRCxDQUFVLGVBQWUsQ0FBQyxDQUFDO0lBQ3hGLENBQUMsQ0FBQztBQUNKLENBQUM7QUFFRDs7R0FFRztBQUNILE1BQU0sT0FBTyxnREFBZ0Q7SUFDM0QsWUFBcUIsYUFBZ0c7UUFBaEcsa0JBQWEsR0FBYixhQUFhLENBQW1GO1FBRTVHLFNBQUksR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxD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QVcsQ0FBQyxJQUFJLENBQzFCLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxXQUFXLEVBQUUsS0FBSyxDQUFDLENBQUMsRUFDMUMsb0JBQW9CLEVBQUUsRUFDdEIsV0FBVyxDQUFDLENBQUMsQ0FBQyxDQUNmLENBQUM7SUFDSixDQUFDO0lBRUQsZ0JBQWdCLENBQUMsS0FBeUI7UUFDeEMsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsS0FBeUI7UUFDeEMsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztJQUMxQyxDQUFDO0lBRUQsYUFBYSxDQUFDLFdBQTRCLEVBQUUsS0FBeUI7UUFDbkUsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FDMUIsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsQ0FBQyxFQUMvQyxvQkFBb0IsRUFBRSxFQUN0QixXQUFXLENBQUMsQ0FBQyxDQUFDLENBQ2YsQ0FBQztJQUNKLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZpcmVzdG9yZURvY3VtZW50LCBGaXJlYmFzZVBlcm1pc3Npb25FcnJvckNvbnRleHQsIEluTW9kZWxDb250ZXh0RmlyZWJhc2VNb2RlbFNlcnZpY2UsIEZpcmVzdG9yZURvY3VtZW50RGF0YSwgRG9jdW1lbnRTbmFwc2hvdCwgRmlyZXN0b3JlQWNjZXNzb3JTdHJlYW1Nb2RlLCBTbmFwc2hvdE9wdGlvbnMsIEluQ29udGV4dEZpcmViYXNlTW9kZWxzU2VydmljZSwgRmlyZWJhc2VNb2RlbHNTZXJ2aWNlIH0gZnJvbSAnQGRlcmVla2IvZmlyZWJhc2UnO1xuaW1wb3J0IHsgR3JhbnRlZFJvbGUsIEdyYW50ZWRSb2xlVHJ1dGhNYXAsIEdyYW50ZWRSb2xlVHJ1dGhNYXBPYmplY3QgfSBmcm9tICdAZGVyZWVrYi9tb2RlbCc7XG5pbXBvcnQgeyBhc09ic2VydmFibGUsIE9ic2VydmFibGVPclZhbHVlIH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5pbXBvcnQgeyBTZXRJbmNsdWRlc01vZGUsIEl0ZXJhYmxlT3JWYWx1ZSwgTW9kZWxLZXkgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IG1hcCwgT2JzZXJ2YWJsZSwgc3dpdGNoTWFwLCBzaGFyZVJlcGxheSwgZGlzdGluY3RVbnRpbENoYW5nZWQgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IERieEZpcmViYXNlSW5Db250ZXh0RmlyZWJhc2VNb2RlbEluZm9TZXJ2aWNlSW5zdGFuY2UgfSBmcm9tICcuL21vZGVsLmNvbnRleHQnO1xuXG5leHBvcnQgdHlwZSBEYnhGaXJlYmFzZUluQ29udGV4dEZpcmViYXNlTW9kZWxTZXJ2aWNlSW5zdGFuY2VGYWN0b3J5PFMgZXh0ZW5kcyBJbkNvbnRleHRGaXJlYmFzZU1vZGVsc1NlcnZpY2U8YW55PiwgQyBleHRlbmRzIEZpcmViYXNlUGVybWlzc2lvbkVycm9yQ29udGV4dCA9IEZpcmViYXNlUGVybWlzc2lvbkVycm9yQ29udGV4dD4gPSA8RCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PGFueT4sIFIgZXh0ZW5kcyBHcmFudGVkUm9sZSA9IEdyYW50ZWRSb2xlPih0eXBlOiBTIGV4dGVuZHMgSW5Db250ZXh0RmlyZWJhc2VNb2RlbHNTZXJ2aWNlPGluZmVyIFk+ID8gKFkgZXh0ZW5kcyBGaXJlYmFzZU1vZGVsc1NlcnZpY2U8aW5mZXIgWCwgaW5mZXIgQz4gPyBrZXlvZiBYIDogbmV2ZXIpIDogbmV2ZXIsIGtleU9iczogT2JzZXJ2YWJsZU9yVmFsdWU8TW9kZWxLZXk+KSA9PiBEYnhGaXJlYmFzZUluQ29udGV4dEZpcmViYXNlTW9kZWxTZXJ2aWNlSW5zdGFuY2U8RCwgUiwgQz47XG5cbmV4cG9ydCBmdW5jdGlvbiBkYnhGaXJlYmFzZUluQ29udGV4dEZpcmViYXNlTW9kZWxTZXJ2aWNlSW5zdGFuY2VGYWN0b3J5PFMgZXh0ZW5kcyBJbkNvbnRleHRGaXJlYmFzZU1vZGVsc1NlcnZpY2U8YW55PiwgQyBleHRlbmRzIEZpcmViYXNlUGVybWlzc2lvbkVycm9yQ29udGV4dCA9IEZpcmViYXNlUGVybWlzc2lvbkVycm9yQ29udGV4dD4oY29udGV4dCQ6IE9ic2VydmFibGU8Uz4pOiBEYnhGaXJlYmFzZUluQ29udGV4dEZpcmViYXNlTW9kZWxTZXJ2aWNlSW5zdGFuY2VGYWN0b3J5PFMsIEM+IHtcbiAgcmV0dXJuIDxEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8YW55PiwgUiBleHRlbmRzIEdyYW50ZWRSb2xlID0gR3JhbnRlZFJvbGU+KHR5cGU6IFMgZXh0ZW5kcyBJbkNvbnRleHRGaXJlYmFzZU1vZGVsc1NlcnZpY2U8aW5mZXIgWT4gPyAoWSBleHRlbmRzIEZpcmViYXNlTW9kZWxzU2VydmljZTxpbmZlciBYLCBpbmZlciBDPiA/IGtleW9mIFggOiBuZXZlcikgOiBuZXZlciwga2V5T2JzOiBPYnNlcnZhYmxlT3JWYWx1ZTxNb2RlbEtleT4pID0+IHtcbiAgICBjb25zdCBrZXkkID0gYXNPYnNlcnZhYmxlKGtleU9icyk7XG4gICAgY29uc3QgbW9kZWxTZXJ2aWNlT2JzID0gY29udGV4dCQucGlwZShcbiAgICAgIG1hcCgoeCkgPT4geCh0eXBlKSksXG4gICAgICBzd2l0Y2hNYXAoKHNlcnZpY2UpID0+IGtleSQucGlwZShtYXAoKGtleSkgPT4gc2VydmljZShrZXkpKSkpXG4gICAgKSBhcyB1bmtub3duIGFzIE9ic2VydmFibGU8SW5Nb2RlbENvbnRleHRGaXJlYmFzZU1vZGVsU2VydmljZTxDLCBGaXJlc3RvcmVEb2N1bWVudERhdGE8RD4sIEQsIFI+PjtcblxuICAgIHJldHVybiBuZXcgRGJ4RmlyZWJhc2VJbkNvbnRleHRGaXJlYmFzZU1vZGVsU2VydmljZUluc3RhbmNlPEQsIFIsIEM+KG1vZGVsU2VydmljZU9icyk7XG4gIH07XG59XG5cbi8qKlxuICogV3JhcHMgYW4gSW5Nb2RlbENvbnRleHRGaXJlYmFzZU1vZGVsU2VydmljZSBvYnNlcnZhYmxlIGFuZCBwcm92aWRlcyBkaWZmZXJlbnQgcGlwZWQgb2JzZXJ2YWJsZXMuXG4gKi9cbmV4cG9ydCBjbGFzcyBEYnhGaXJlYmFzZUluQ29udGV4dEZpcmViYXNlTW9kZWxTZXJ2aWNlSW5zdGFuY2U8RCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PGFueT4sIFIgZXh0ZW5kcyBHcmFudGVkUm9sZSA9IEdyYW50ZWRSb2xlLCBDIGV4dGVuZHMgRmlyZWJhc2VQZXJtaXNzaW9uRXJyb3JDb250ZXh0ID0gRmlyZWJhc2VQZXJtaXNzaW9uRXJyb3JDb250ZXh0PiBpbXBsZW1lbnRzIERieEZpcmViYXNlSW5Db250ZXh0RmlyZWJhc2VNb2RlbEluZm9TZXJ2aWNlSW5zdGFuY2U8RCwgUj4ge1xuICBjb25zdHJ1Y3RvcihyZWFkb25seSBtb2RlbFNlcnZpY2UkOiBPYnNlcnZhYmxlPEluTW9kZWxDb250ZXh0RmlyZWJhc2VNb2RlbFNlcnZpY2U8QywgRmlyZXN0b3JlRG9jdW1lbnREYXRhPEQ+LCBELCBSPj4pIHt9XG5cbiAgcmVhZG9ubHkga2V5JCA9IHRoaXMubW9kZWxTZXJ2aWNlJC5waXBlKG1hcCgoeCkgPT4geC5tb2RlbC5rZXkpKTtcblxuICAvLyBNQVJLOiBNb2RlbFxuICByZWFkb25seSBtb2RlbFR5cGUkID0gdGhpcy5tb2RlbFNlcnZpY2UkLnBpcGUoXG4gICAgbWFwKCh4KSA9PiB4Lm1vZGVsLm1vZGVsVHlwZSksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICApO1xuXG4gIHJlYWRvbmx5IG1vZGVsJCA9IHRoaXMubW9kZWxTZXJ2aWNlJC5waXBlKFxuICAgIG1hcCgoeCkgPT4geC5tb2RlbCksXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKGEsIGIpID0+IGEua2V5ID09PSBiLmtleSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBzbmFwc2hvdERhdGEkID0gdGhpcy5tb2RlbCQucGlwZShcbiAgICBzd2l0Y2hNYXAoKHgpID0+IHguc25hcHNob3REYXRhKCkpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgc25hcHNob3RTdHJlYW0obW9kZTogRmlyZXN0b3JlQWNjZXNzb3JTdHJlYW1Nb2RlKTogT2JzZXJ2YWJsZTxEb2N1bWVudFNuYXBzaG90PEZpcmVzdG9yZURvY3VtZW50RGF0YTxEPj4+IHtcbiAgICByZXR1cm4gdGhpcy5tb2RlbCQucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoeCkgPT4geC5zbmFwc2hvdFN0cmVhbShtb2RlKSksXG4gICAgICBzaGFyZVJlcGxheSgxKVxuICAgICk7XG4gIH1cblxuICBzbmFwc2hvdERhdGFTdHJlYW0obW9kZTogRmlyZXN0b3JlQWNjZXNzb3JTdHJlYW1Nb2RlLCBvcHRpb25zPzogU25hcHNob3RPcHRpb25zKTogT2JzZXJ2YWJsZTxGaXJlc3RvcmVEb2N1bWVudERhdGE8RD4+IHtcbiAgICByZXR1cm4gdGhpcy5tb2RlbCQucGlwZShcbiAgICAgIHN3aXRjaE1hcCgoeCkgPT4geC5zbmFwc2hvdERhdGFTdHJlYW0obW9kZSkpLFxuICAgICAgc2hhcmVSZXBsYXkoMSlcbiAgICApO1xuICB9XG5cbiAgLy8gTUFSSzogUm9sZXNcbiAgcmVhZG9ubHkgcm9sZVJlYWRlciQgPSB0aGlzLm1vZGVsU2VydmljZSQucGlwZShcbiAgICBzd2l0Y2hNYXAoKHgpID0+IHgucm9sZVJlYWRlcigpKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IHJvbGVNYXAkID0gdGhpcy5yb2xlUmVhZGVyJC5waXBlKFxuICAgIG1hcCgoeCkgPT4geC5yb2xlTWFwKSxcbiAgICBzaGFyZVJlcGxheSgxKVxuICApO1xuXG4gIHJlYWRvbmx5IGhhc05vQWNjZXNzJCA9IHRoaXMucm9sZVJlYWRlciQucGlwZShcbiAgICBtYXAoKHgpID0+IHguaGFzTm9BY2Nlc3MoKSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICB0cnV0aE1hcDxNIGV4dGVuZHMgR3JhbnRlZFJvbGVUcnV0aE1hcE9iamVjdDxhbnksIFI+PihpbnB1dDogTSk6IE9ic2VydmFibGU8R3JhbnRlZFJvbGVUcnV0aE1hcDxNPj4ge1xuICAgIHJldHVybiB0aGlzLnJvbGVSZWFkZXIkLnBpcGUoXG4gICAgICBtYXAoKHgpID0+IHgudHJ1dGhNYXAoaW5wdXQpKSxcbiAgICAgIHNoYXJlUmVwbGF5KDEpXG4gICAgKTtcbiAgfVxuXG4gIGhhc0FueVJvbGVzKHJvbGVzOiBJdGVyYWJsZU9yVmFsdWU8Uj4pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5oYXNSb2xlcygnYW55Jywgcm9sZXMpO1xuICB9XG5cbiAgaGFzQWxsUm9sZXMocm9sZXM6IEl0ZXJhYmxlT3JWYWx1ZTxSPik6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLmhhc1JvbGVzKCdhbGwnLCByb2xlcyk7XG4gIH1cblxuICBoYXNSb2xlcyhzZXRJbmNsdWRlczogU2V0SW5jbHVkZXNNb2RlLCByb2xlczogSXRlcmFibGVPclZhbHVlPFI+KTogT2JzZXJ2YWJsZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMucm9sZVJlYWRlciQucGlwZShcbiAgICAgIG1hcCgoeCkgPT4geC5oYXNSb2xlcyhzZXRJbmNsdWRlcywgcm9sZXMpKSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICBzaGFyZVJlcGxheSgxKVxuICAgICk7XG4gIH1cblxuICBjb250YWluc0FueVJvbGVzKHJvbGVzOiBJdGVyYWJsZU9yVmFsdWU8Uj4pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5jb250YWluc1JvbGVzKCdhbnknLCByb2xlcyk7XG4gIH1cblxuICBjb250YWluc0FsbFJvbGVzKHJvbGVzOiBJdGVyYWJsZU9yVmFsdWU8Uj4pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5jb250YWluc1JvbGVzKCdhbGwnLCByb2xlcyk7XG4gIH1cblxuICBjb250YWluc1JvbGVzKHNldEluY2x1ZGVzOiBTZXRJbmNsdWRlc01vZGUsIHJvbGVzOiBJdGVyYWJsZU9yVmFsdWU8Uj4pOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5yb2xlUmVhZGVyJC5waXBlKFxuICAgICAgbWFwKCh4KSA9PiB4LmNvbnRhaW5zUm9sZXMoc2V0SW5jbHVkZXMsIHJvbGVzKSksXG4gICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgc2hhcmVSZXBsYXkoMSlcbiAgICApO1xuICB9XG59XG4iXX0=
@@ -1,2 +1,2 @@
1
1
  export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL21vZGVsL3NlcnZpY2UvbW9kZWwuY29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmlyZXN0b3JlRG9jdW1lbnQsIEZpcmVzdG9yZURvY3VtZW50RGF0YSwgRG9jdW1lbnRTbmFwc2hvdCwgRmlyZXN0b3JlQWNjZXNzb3JTdHJlYW1Nb2RlLCBTbmFwc2hvdE9wdGlvbnMsIEZpcmVzdG9yZU1vZGVsS2V5LCBGaXJlc3RvcmVDb2xsZWN0aW9uVHlwZSwgRmlyZXN0b3JlTW9kZWxUeXBlIH0gZnJvbSAnQGRlcmVla2IvZmlyZWJhc2UnO1xuaW1wb3J0IHsgR3JhbnRlZFJvbGUsIEdyYW50ZWRSb2xlTWFwLCBHcmFudGVkUm9sZU1hcFJlYWRlciwgR3JhbnRlZFJvbGVUcnV0aE1hcCwgR3JhbnRlZFJvbGVUcnV0aE1hcE9iamVjdCB9IGZyb20gJ0BkZXJlZWtiL21vZGVsJztcbmltcG9ydCB7IFNldEluY2x1ZGVzTW9kZSwgSXRlcmFibGVPclZhbHVlIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbi8qKlxuICogU2VydmljZSBpbnN0YW5jZSB0aGF0IGV4cG9zZXMgcm9sZXMgZm9yIGEgc3BlY2lmaWMgbW9kZWwuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4RmlyZWJhc2VJbkNvbnRleHRGaXJlYmFzZU1vZGVsUm9sZXNTZXJ2aWNlSW5zdGFuY2U8UiBleHRlbmRzIEdyYW50ZWRSb2xlID0gR3JhbnRlZFJvbGU+IHtcbiAgcmVhZG9ubHkga2V5JDogT2JzZXJ2YWJsZTxGaXJlc3RvcmVNb2RlbEtleT47XG4gIHJlYWRvbmx5IHJvbGVSZWFkZXIkOiBPYnNlcnZhYmxlPEdyYW50ZWRSb2xlTWFwUmVhZGVyPFI+PjtcbiAgcmVhZG9ubHkgcm9sZU1hcCQ6IE9ic2VydmFibGU8R3JhbnRlZFJvbGVNYXA8Uj4+O1xuICByZWFkb25seSBoYXNOb0FjY2VzcyQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIHRydXRoTWFwPE0gZXh0ZW5kcyBHcmFudGVkUm9sZVRydXRoTWFwT2JqZWN0PGFueSwgUj4+KGlucHV0OiBNKTogT2JzZXJ2YWJsZTxHcmFudGVkUm9sZVRydXRoTWFwPE0+PjtcbiAgaGFzQW55Um9sZXMocm9sZXM6IEl0ZXJhYmxlT3JWYWx1ZTxSPik6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIGhhc0FsbFJvbGVzKHJvbGVzOiBJdGVyYWJsZU9yVmFsdWU8Uj4pOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBoYXNSb2xlcyhzZXRJbmNsdWRlczogU2V0SW5jbHVkZXNNb2RlLCByb2xlczogSXRlcmFibGVPclZhbHVlPFI+KTogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgY29udGFpbnNBbnlSb2xlcyhyb2xlczogSXRlcmFibGVPclZhbHVlPFI+KTogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgY29udGFpbnNBbGxSb2xlcyhyb2xlczogSXRlcmFibGVPclZhbHVlPFI+KTogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgY29udGFpbnNSb2xlcyhzZXRJbmNsdWRlczogU2V0SW5jbHVkZXNNb2RlLCByb2xlczogSXRlcmFibGVPclZhbHVlPFI+KTogT2JzZXJ2YWJsZTxib29sZWFuPjtcbn1cblxuLyoqXG4gKiBEYnhGaXJlYmFzZUluQ29udGV4dEZpcmViYXNlTW9kZWxSb2xlc1NlcnZpY2VJbnN0YW5jZSBleHRlbnNpb24gdGhhdCBwcm92aWRlcyBhY2Nlc3MgdG8gdGhlIHVuZGVybHlpbmcgbW9kZWwuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgRGJ4RmlyZWJhc2VJbkNvbnRleHRGaXJlYmFzZU1vZGVsSW5mb1NlcnZpY2VJbnN0YW5jZTxEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8YW55PiwgUiBleHRlbmRzIEdyYW50ZWRSb2xlID0gR3JhbnRlZFJvbGU+IGV4dGVuZHMgRGJ4RmlyZWJhc2VJbkNvbnRleHRGaXJlYmFzZU1vZGVsUm9sZXNTZXJ2aWNlSW5zdGFuY2U8Uj4ge1xuICByZWFkb25seSBtb2RlbFR5cGUkOiBPYnNlcnZhYmxlPEZpcmVzdG9yZU1vZGVsVHlwZT47XG4gIHJlYWRvbmx5IG1vZGVsJDogT2JzZXJ2YWJsZTxEPjtcbiAgLyoqXG4gICAqIFJlYWRzIHRoZSBkYXRhIGZyb20gdGhlIG1vZGVsIG9uY2UgYW5kIHJldHVybnMgdGhlIGN1cnJlbnQgc3RhdGUgd2l0aG91dCBzdHJlYW1pbmcuXG4gICAqL1xuICByZWFkb25seSBzbmFwc2hvdERhdGEkOiBPYnNlcnZhYmxlPEZpcmVzdG9yZURvY3VtZW50RGF0YTxEPj47XG4gIHNuYXBzaG90U3RyZWFtKG1vZGU6IEZpcmVzdG9yZUFjY2Vzc29yU3RyZWFtTW9kZSk6IE9ic2VydmFibGU8RG9jdW1lbnRTbmFwc2hvdDxGaXJlc3RvcmVEb2N1bWVudERhdGE8RD4+PjtcbiAgc25hcHNob3REYXRhU3RyZWFtKG1vZGU6IEZpcmVzdG9yZUFjY2Vzc29yU3RyZWFtTW9kZSwgb3B0aW9ucz86IFNuYXBzaG90T3B0aW9ucyk6IE9ic2VydmFibGU8RmlyZXN0b3JlRG9jdW1lbnREYXRhPEQ+Pjtcbn1cbiJdfQ==
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuY29udGV4dC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1maXJlYmFzZS9zcmMvbGliL21vZGVsL3NlcnZpY2UvbW9kZWwuY29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRmlyZXN0b3JlRG9jdW1lbnQsIEZpcmVzdG9yZURvY3VtZW50RGF0YSwgRG9jdW1lbnRTbmFwc2hvdCwgRmlyZXN0b3JlQWNjZXNzb3JTdHJlYW1Nb2RlLCBTbmFwc2hvdE9wdGlvbnMsIEZpcmVzdG9yZU1vZGVsS2V5LCBGaXJlc3RvcmVNb2RlbFR5cGUgfSBmcm9tICdAZGVyZWVrYi9maXJlYmFzZSc7XG5pbXBvcnQgeyBHcmFudGVkUm9sZSwgR3JhbnRlZFJvbGVNYXAsIEdyYW50ZWRSb2xlTWFwUmVhZGVyLCBHcmFudGVkUm9sZVRydXRoTWFwLCBHcmFudGVkUm9sZVRydXRoTWFwT2JqZWN0IH0gZnJvbSAnQGRlcmVla2IvbW9kZWwnO1xuaW1wb3J0IHsgU2V0SW5jbHVkZXNNb2RlLCBJdGVyYWJsZU9yVmFsdWUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcblxuLyoqXG4gKiBTZXJ2aWNlIGluc3RhbmNlIHRoYXQgZXhwb3NlcyByb2xlcyBmb3IgYSBzcGVjaWZpYyBtb2RlbC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYnhGaXJlYmFzZUluQ29udGV4dEZpcmViYXNlTW9kZWxSb2xlc1NlcnZpY2VJbnN0YW5jZTxSIGV4dGVuZHMgR3JhbnRlZFJvbGUgPSBHcmFudGVkUm9sZT4ge1xuICByZWFkb25seSBrZXkkOiBPYnNlcnZhYmxlPEZpcmVzdG9yZU1vZGVsS2V5PjtcbiAgcmVhZG9ubHkgcm9sZVJlYWRlciQ6IE9ic2VydmFibGU8R3JhbnRlZFJvbGVNYXBSZWFkZXI8Uj4+O1xuICByZWFkb25seSByb2xlTWFwJDogT2JzZXJ2YWJsZTxHcmFudGVkUm9sZU1hcDxSPj47XG4gIHJlYWRvbmx5IGhhc05vQWNjZXNzJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgdHJ1dGhNYXA8TSBleHRlbmRzIEdyYW50ZWRSb2xlVHJ1dGhNYXBPYmplY3Q8YW55LCBSPj4oaW5wdXQ6IE0pOiBPYnNlcnZhYmxlPEdyYW50ZWRSb2xlVHJ1dGhNYXA8TT4+O1xuICBoYXNBbnlSb2xlcyhyb2xlczogSXRlcmFibGVPclZhbHVlPFI+KTogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgaGFzQWxsUm9sZXMocm9sZXM6IEl0ZXJhYmxlT3JWYWx1ZTxSPik6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gIGhhc1JvbGVzKHNldEluY2x1ZGVzOiBTZXRJbmNsdWRlc01vZGUsIHJvbGVzOiBJdGVyYWJsZU9yVmFsdWU8Uj4pOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBjb250YWluc0FueVJvbGVzKHJvbGVzOiBJdGVyYWJsZU9yVmFsdWU8Uj4pOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBjb250YWluc0FsbFJvbGVzKHJvbGVzOiBJdGVyYWJsZU9yVmFsdWU8Uj4pOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICBjb250YWluc1JvbGVzKHNldEluY2x1ZGVzOiBTZXRJbmNsdWRlc01vZGUsIHJvbGVzOiBJdGVyYWJsZU9yVmFsdWU8Uj4pOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xufVxuXG4vKipcbiAqIERieEZpcmViYXNlSW5Db250ZXh0RmlyZWJhc2VNb2RlbFJvbGVzU2VydmljZUluc3RhbmNlIGV4dGVuc2lvbiB0aGF0IHByb3ZpZGVzIGFjY2VzcyB0byB0aGUgdW5kZXJseWluZyBtb2RlbC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBEYnhGaXJlYmFzZUluQ29udGV4dEZpcmViYXNlTW9kZWxJbmZvU2VydmljZUluc3RhbmNlPEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxhbnk+LCBSIGV4dGVuZHMgR3JhbnRlZFJvbGUgPSBHcmFudGVkUm9sZT4gZXh0ZW5kcyBEYnhGaXJlYmFzZUluQ29udGV4dEZpcmViYXNlTW9kZWxSb2xlc1NlcnZpY2VJbnN0YW5jZTxSPiB7XG4gIHJlYWRvbmx5IG1vZGVsVHlwZSQ6IE9ic2VydmFibGU8RmlyZXN0b3JlTW9kZWxUeXBlPjtcbiAgcmVhZG9ubHkgbW9kZWwkOiBPYnNlcnZhYmxlPEQ+O1xuICAvKipcbiAgICogUmVhZHMgdGhlIGRhdGEgZnJvbSB0aGUgbW9kZWwgb25jZSBhbmQgcmV0dXJucyB0aGUgY3VycmVudCBzdGF0ZSB3aXRob3V0IHN0cmVhbWluZy5cbiAgICovXG4gIHJlYWRvbmx5IHNuYXBzaG90RGF0YSQ6IE9ic2VydmFibGU8RmlyZXN0b3JlRG9jdW1lbnREYXRhPEQ+PjtcbiAgc25hcHNob3RTdHJlYW0obW9kZTogRmlyZXN0b3JlQWNjZXNzb3JTdHJlYW1Nb2RlKTogT2JzZXJ2YWJsZTxEb2N1bWVudFNuYXBzaG90PEZpcmVzdG9yZURvY3VtZW50RGF0YTxEPj4+O1xuICBzbmFwc2hvdERhdGFTdHJlYW0obW9kZTogRmlyZXN0b3JlQWNjZXNzb3JTdHJlYW1Nb2RlLCBvcHRpb25zPzogU25hcHNob3RPcHRpb25zKTogT2JzZXJ2YWJsZTxGaXJlc3RvcmVEb2N1bWVudERhdGE8RD4+O1xufVxuIl19
@@ -35,4 +35,4 @@ export function firebaseContextServiceEntityMap() {
35
35
  return obs.pipe(map((x) => buildFirebaseCollectionTypeModelTypeMap(x)), first(), shareReplay(1));
36
36
  };
37
37
  }
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuY29udGV4dC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvbW9kZWwvc2VydmljZS9tb2RlbC5jb250ZXh0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFzQixpQ0FBaUMsRUFBRSx1Q0FBdUMsRUFBZ0ssTUFBTSxtQkFBbUIsQ0FBQztBQUNqUyxPQUFPLEVBQUUsWUFBWSxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUVoRSxPQUFPLEVBQUUsV0FBVyxFQUFFLEdBQUcsRUFBZ0MsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUl4Rjs7R0FFRztBQUNILE1BQU0sT0FBZ0IsOEJBQThCO0NBT25EO0FBU0QsTUFBTSxVQUFVLGlEQUFpRCxDQUEySCxNQUFxRTtJQUMvUCxNQUFNLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxHQUFHLE1BQU0sQ0FBQztJQUM1QyxPQUFPLENBQXdFLE1BQWlDLEVBQUUsRUFBRTtRQUNsSCxNQUFNLElBQUksR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFbEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUNkLGlDQUFpQyxFQUFFLEVBQ25DLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ2pCLE9BQU8sVUFBVSxDQUFDLElBQUksQ0FDcEIsR0FBRyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7Z0JBQ2hCLE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBdUIsQ0FBQztnQkFFM0UsSUFBSSxDQUFDLFNBQVMsRUFBRTtvQkFDZCxNQUFNLE9BQU8sR0FBRywrR0FBK0csSUFBSSxDQUFDLGNBQWMsR0FBRyxDQUFDO29CQUN0SixPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO29CQUN2QixNQUFNLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2lCQUMxQjtnQkFFRCxPQUFPLFlBQVksQ0FBQyxTQUFnQixFQUFFLElBQUksQ0FBQyxHQUFHLENBQStELENBQUM7WUFDaEgsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDLENBQUM7QUFDSixDQUFDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsTUFBTSxVQUFVLCtCQUErQjtJQUM3QyxPQUFPLENBQUMsR0FBa0IsRUFBRSxFQUFFO1FBQzVCLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FDYixHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLHVDQUF1QyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ3RELEtBQUssRUFBRSxFQUNQLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO0lBQ0osQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZpcmVzdG9yZU1vZGVsVHlwZSwgYXNGaXJlc3RvcmVNb2RlbEtleUNvbGxlY3Rpb25UeXBlLCBidWlsZEZpcmViYXNlQ29sbGVjdGlvblR5cGVNb2RlbFR5cGVNYXAsIEZpcmViYXNlUGVybWlzc2lvbkVycm9yQ29udGV4dCwgRmlyZXN0b3JlQ29sbGVjdGlvblR5cGUsIEZpcmVzdG9yZURvY3VtZW50LCBGaXJlc3RvcmVNb2RlbElkZW50aXR5VHlwZU1hcCwgRmlyZXN0b3JlTW9kZWxLZXksIEluQ29udGV4dEZpcmViYXNlTW9kZWxzU2VydmljZSB9IGZyb20gJ0BkZXJlZWtiL2ZpcmViYXNlJztcbmltcG9ydCB7IGFzT2JzZXJ2YWJsZSwgT2JzZXJ2YWJsZU9yVmFsdWUgfSBmcm9tICdAZGVyZWVrYi9yeGpzJztcbmltcG9ydCB7IEdyYW50ZWRSb2xlIH0gZnJvbSAnQGRlcmVla2IvbW9kZWwnO1xuaW1wb3J0IHsgc2hhcmVSZXBsYXksIG1hcCwgT2JzZXJ2YWJsZSwgT3BlcmF0b3JGdW5jdGlvbiwgZmlyc3QsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGJ4RmlyZWJhc2VJbkNvbnRleHRGaXJlYmFzZU1vZGVsSW5mb1NlcnZpY2VJbnN0YW5jZSB9IGZyb20gJy4vbW9kZWwuY29udGV4dCc7XG5pbXBvcnQgeyBEYnhGaXJlYmFzZUluQ29udGV4dEZpcmViYXNlTW9kZWxTZXJ2aWNlSW5zdGFuY2VGYWN0b3J5IH0gZnJvbSAnLi9tb2RlbC5jb250ZXh0Lmluc3RhbmNlJztcblxuLyoqXG4gKiBVc2VkIGZvciByZXRyaWV2aW5nIGNvbnRleHRzIGZvciBhIHNwZWNpZmljIG1vZGVsIHR5cGUvaWRlbnRpdHkuXG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBEYnhGaXJlYmFzZU1vZGVsQ29udGV4dFNlcnZpY2Uge1xuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBEYnhGaXJlYmFzZUluQ29udGV4dEZpcmViYXNlTW9kZWxJbmZvU2VydmljZUluc3RhbmNlIGZvciB0aGUgaW5wdXQgbW9kZWwga2V5LlxuICAgKlxuICAgKiBAcGFyYW0ga2V5JFxuICAgKi9cbiAgYWJzdHJhY3QgbW9kZWxJbmZvSW5zdGFuY2U8RCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PGFueT4gPSBhbnksIFIgZXh0ZW5kcyBHcmFudGVkUm9sZSA9IEdyYW50ZWRSb2xlPihrZXlPYnM6IE9ic2VydmFibGVPclZhbHVlPEZpcmVzdG9yZU1vZGVsS2V5Pik6IE9ic2VydmFibGU8RGJ4RmlyZWJhc2VJbkNvbnRleHRGaXJlYmFzZU1vZGVsSW5mb1NlcnZpY2VJbnN0YW5jZTxELCBSPj47XG59XG5cbmV4cG9ydCB0eXBlIERieEZpcmViYXNlTW9kZWxDb250ZXh0U2VydmljZUluZm9JbnN0YW5jZUZhY3RvcnkgPSA8RCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PGFueT4sIFIgZXh0ZW5kcyBHcmFudGVkUm9sZSA9IEdyYW50ZWRSb2xlPihrZXlPYnM6IE9ic2VydmFibGVPclZhbHVlPEZpcmVzdG9yZU1vZGVsS2V5PikgPT4gT2JzZXJ2YWJsZTxEYnhGaXJlYmFzZUluQ29udGV4dEZpcmViYXNlTW9kZWxJbmZvU2VydmljZUluc3RhbmNlPEQsIFI+PjtcblxuZXhwb3J0IGludGVyZmFjZSBEYnhGaXJlYmFzZU1vZGVsQ29udGV4dFNlcnZpY2VJbmZvSW5zdGFuY2VGYWN0b3J5Q29uZmlnPFMgZXh0ZW5kcyBJbkNvbnRleHRGaXJlYmFzZU1vZGVsc1NlcnZpY2U8YW55PiwgQyBleHRlbmRzIEZpcmViYXNlUGVybWlzc2lvbkVycm9yQ29udGV4dCA9IEZpcmViYXNlUGVybWlzc2lvbkVycm9yQ29udGV4dD4ge1xuICByZWFkb25seSBtb2RlbFNlcnZpY2U6IERieEZpcmViYXNlSW5Db250ZXh0RmlyZWJhc2VNb2RlbFNlcnZpY2VJbnN0YW5jZUZhY3Rvcnk8UywgQz47XG4gIHJlYWRvbmx5IGVudGl0eU1hcCQ6IE9ic2VydmFibGU8RmlyZXN0b3JlTW9kZWxJZGVudGl0eVR5cGVNYXA+O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZGJ4RmlyZWJhc2VNb2RlbENvbnRleHRTZXJ2aWNlSW5mb0luc3RhbmNlRmFjdG9yeTxTIGV4dGVuZHMgSW5Db250ZXh0RmlyZWJhc2VNb2RlbHNTZXJ2aWNlPGFueT4sIEMgZXh0ZW5kcyBGaXJlYmFzZVBlcm1pc3Npb25FcnJvckNvbnRleHQgPSBGaXJlYmFzZVBlcm1pc3Npb25FcnJvckNvbnRleHQ+KGNvbmZpZzogRGJ4RmlyZWJhc2VNb2RlbENvbnRleHRTZXJ2aWNlSW5mb0luc3RhbmNlRmFjdG9yeUNvbmZpZzxTLCBDPik6IERieEZpcmViYXNlTW9kZWxDb250ZXh0U2VydmljZUluZm9JbnN0YW5jZUZhY3Rvcnkge1xuICBjb25zdCB7IG1vZGVsU2VydmljZSwgZW50aXR5TWFwJCB9ID0gY29uZmlnO1xuICByZXR1cm4gPEQgZXh0ZW5kcyBGaXJlc3RvcmVEb2N1bWVudDxhbnk+LCBSIGV4dGVuZHMgR3JhbnRlZFJvbGUgPSBHcmFudGVkUm9sZT4oa2V5T2JzOiBPYnNlcnZhYmxlT3JWYWx1ZTxzdHJpbmc+KSA9PiB7XG4gICAgY29uc3Qga2V5JCA9IGFzT2JzZXJ2YWJsZShrZXlPYnMpO1xuXG4gICAgcmV0dXJuIGtleSQucGlwZShcbiAgICAgIGFzRmlyZXN0b3JlTW9kZWxLZXlDb2xsZWN0aW9uVHlwZSgpLFxuICAgICAgc3dpdGNoTWFwKChwYWlyKSA9PiB7XG4gICAgICAgIHJldHVybiBlbnRpdHlNYXAkLnBpcGUoXG4gICAgICAgICAgbWFwKChlbnRpdHlNYXApID0+IHtcbiAgICAgICAgICAgIGNvbnN0IG1vZGVsVHlwZSA9IGVudGl0eU1hcC5nZXQocGFpci5jb2xsZWN0aW9uVHlwZSkgYXMgRmlyZXN0b3JlTW9kZWxUeXBlO1xuXG4gICAgICAgICAgICBpZiAoIW1vZGVsVHlwZSkge1xuICAgICAgICAgICAgICBjb25zdCBtZXNzYWdlID0gYGRieEZpcmViYXNlTW9kZWxDb250ZXh0U2VydmljZUluZm9JbnN0YW5jZUZhY3RvcnkgRXJyb3I6IEZhaWxlZCB0byByZXRyaWV2ZSBtb2RlbCB0eXBlIGZvciBjb2xsZWN0aW9uIHR5cGUgXCIke3BhaXIuY29sbGVjdGlvblR5cGV9XCJgO1xuICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKG1lc3NhZ2UpO1xuICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IobWVzc2FnZSk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHJldHVybiBtb2RlbFNlcnZpY2UobW9kZWxUeXBlIGFzIGFueSwgcGFpci5rZXkpIGFzIERieEZpcmViYXNlSW5Db250ZXh0RmlyZWJhc2VNb2RlbEluZm9TZXJ2aWNlSW5zdGFuY2U8RCwgUj47XG4gICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfTtcbn1cblxuLyoqXG4gKiBPcGVyYXRvciBmdW5jdGlvbiB0aGF0IGJ1aWxkcyBhIEZpcmVzdG9yZU1vZGVsSWRlbnRpdHlUeXBlTWFwIGZyb20gdGhlIGlucHV0IGNvbnRleHQgYW5kIHNoYXJlcyB0aGUgcmVwbGF5LlxuICpcbiAqIFNpbmNlIHRoZSBvdXRwdXQgd29uJ3QgY2hhbmdlIHdpdGggZGlmZmVyZW50IGNvbnRleHRzLCB0aGUgbWFwIGlzIGJ1aWx0IG9uY2UgYW5kIHRoZW4gc2hhcmVkLlxuICpcbiAqIEByZXR1cm5zXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmaXJlYmFzZUNvbnRleHRTZXJ2aWNlRW50aXR5TWFwPFQgZXh0ZW5kcyBJbkNvbnRleHRGaXJlYmFzZU1vZGVsc1NlcnZpY2U8YW55Pj4oKTogT3BlcmF0b3JGdW5jdGlvbjxULCBGaXJlc3RvcmVNb2RlbElkZW50aXR5VHlwZU1hcD4ge1xuICByZXR1cm4gKG9iczogT2JzZXJ2YWJsZTxUPikgPT4ge1xuICAgIHJldHVybiBvYnMucGlwZShcbiAgICAgIG1hcCgoeCkgPT4gYnVpbGRGaXJlYmFzZUNvbGxlY3Rpb25UeXBlTW9kZWxUeXBlTWFwKHgpKSxcbiAgICAgIGZpcnN0KCksXG4gICAgICBzaGFyZVJlcGxheSgxKVxuICAgICk7XG4gIH07XG59XG4iXX0=
38
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuY29udGV4dC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LWZpcmViYXNlL3NyYy9saWIvbW9kZWwvc2VydmljZS9tb2RlbC5jb250ZXh0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFzQixpQ0FBaUMsRUFBRSx1Q0FBdUMsRUFBdUksTUFBTSxtQkFBbUIsQ0FBQztBQUN4USxPQUFPLEVBQUUsWUFBWSxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUVoRSxPQUFPLEVBQUUsV0FBVyxFQUFFLEdBQUcsRUFBZ0MsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUl4Rjs7R0FFRztBQUNILE1BQU0sT0FBZ0IsOEJBQThCO0NBT25EO0FBU0QsTUFBTSxVQUFVLGlEQUFpRCxDQUEySCxNQUFxRTtJQUMvUCxNQUFNLEVBQUUsWUFBWSxFQUFFLFVBQVUsRUFBRSxHQUFHLE1BQU0sQ0FBQztJQUM1QyxPQUFPLENBQXdFLE1BQWlDLEVBQUUsRUFBRTtRQUNsSCxNQUFNLElBQUksR0FBRyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFbEMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUNkLGlDQUFpQyxFQUFFLEVBQ25DLFNBQVMsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ2pCLE9BQU8sVUFBVSxDQUFDLElBQUksQ0FDcEIsR0FBRyxDQUFDLENBQUMsU0FBUyxFQUFFLEVBQUU7Z0JBQ2hCLE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBdUIsQ0FBQztnQkFFM0UsSUFBSSxDQUFDLFNBQVMsRUFBRTtvQkFDZCxNQUFNLE9BQU8sR0FBRywrR0FBK0csSUFBSSxDQUFDLGNBQWMsR0FBRyxDQUFDO29CQUN0SixPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO29CQUN2QixNQUFNLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxDQUFDO2lCQUMxQjtnQkFFRCxPQUFPLFlBQVksQ0FBQyxTQUFnQixFQUFFLElBQUksQ0FBQyxHQUFHLENBQStELENBQUM7WUFDaEgsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDLENBQUM7QUFDSixDQUFDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsTUFBTSxVQUFVLCtCQUErQjtJQUM3QyxPQUFPLENBQUMsR0FBa0IsRUFBRSxFQUFFO1FBQzVCLE9BQU8sR0FBRyxDQUFDLElBQUksQ0FDYixHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLHVDQUF1QyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQ3RELEtBQUssRUFBRSxFQUNQLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FDZixDQUFDO0lBQ0osQ0FBQyxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEZpcmVzdG9yZU1vZGVsVHlwZSwgYXNGaXJlc3RvcmVNb2RlbEtleUNvbGxlY3Rpb25UeXBlLCBidWlsZEZpcmViYXNlQ29sbGVjdGlvblR5cGVNb2RlbFR5cGVNYXAsIEZpcmViYXNlUGVybWlzc2lvbkVycm9yQ29udGV4dCwgRmlyZXN0b3JlRG9jdW1lbnQsIEZpcmVzdG9yZU1vZGVsSWRlbnRpdHlUeXBlTWFwLCBGaXJlc3RvcmVNb2RlbEtleSwgSW5Db250ZXh0RmlyZWJhc2VNb2RlbHNTZXJ2aWNlIH0gZnJvbSAnQGRlcmVla2IvZmlyZWJhc2UnO1xuaW1wb3J0IHsgYXNPYnNlcnZhYmxlLCBPYnNlcnZhYmxlT3JWYWx1ZSB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgR3JhbnRlZFJvbGUgfSBmcm9tICdAZGVyZWVrYi9tb2RlbCc7XG5pbXBvcnQgeyBzaGFyZVJlcGxheSwgbWFwLCBPYnNlcnZhYmxlLCBPcGVyYXRvckZ1bmN0aW9uLCBmaXJzdCwgc3dpdGNoTWFwIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBEYnhGaXJlYmFzZUluQ29udGV4dEZpcmViYXNlTW9kZWxJbmZvU2VydmljZUluc3RhbmNlIH0gZnJvbSAnLi9tb2RlbC5jb250ZXh0JztcbmltcG9ydCB7IERieEZpcmViYXNlSW5Db250ZXh0RmlyZWJhc2VNb2RlbFNlcnZpY2VJbnN0YW5jZUZhY3RvcnkgfSBmcm9tICcuL21vZGVsLmNvbnRleHQuaW5zdGFuY2UnO1xuXG4vKipcbiAqIFVzZWQgZm9yIHJldHJpZXZpbmcgY29udGV4dHMgZm9yIGEgc3BlY2lmaWMgbW9kZWwgdHlwZS9pZGVudGl0eS5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIERieEZpcmViYXNlTW9kZWxDb250ZXh0U2VydmljZSB7XG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IERieEZpcmViYXNlSW5Db250ZXh0RmlyZWJhc2VNb2RlbEluZm9TZXJ2aWNlSW5zdGFuY2UgZm9yIHRoZSBpbnB1dCBtb2RlbCBrZXkuXG4gICAqXG4gICAqIEBwYXJhbSBrZXkkXG4gICAqL1xuICBhYnN0cmFjdCBtb2RlbEluZm9JbnN0YW5jZTxEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8YW55PiA9IGFueSwgUiBleHRlbmRzIEdyYW50ZWRSb2xlID0gR3JhbnRlZFJvbGU+KGtleU9iczogT2JzZXJ2YWJsZU9yVmFsdWU8RmlyZXN0b3JlTW9kZWxLZXk+KTogT2JzZXJ2YWJsZTxEYnhGaXJlYmFzZUluQ29udGV4dEZpcmViYXNlTW9kZWxJbmZvU2VydmljZUluc3RhbmNlPEQsIFI+Pjtcbn1cblxuZXhwb3J0IHR5cGUgRGJ4RmlyZWJhc2VNb2RlbENvbnRleHRTZXJ2aWNlSW5mb0luc3RhbmNlRmFjdG9yeSA9IDxEIGV4dGVuZHMgRmlyZXN0b3JlRG9jdW1lbnQ8YW55PiwgUiBleHRlbmRzIEdyYW50ZWRSb2xlID0gR3JhbnRlZFJvbGU+KGtleU9iczogT2JzZXJ2YWJsZU9yVmFsdWU8RmlyZXN0b3JlTW9kZWxLZXk+KSA9PiBPYnNlcnZhYmxlPERieEZpcmViYXNlSW5Db250ZXh0RmlyZWJhc2VNb2RlbEluZm9TZXJ2aWNlSW5zdGFuY2U8RCwgUj4+O1xuXG5leHBvcnQgaW50ZXJmYWNlIERieEZpcmViYXNlTW9kZWxDb250ZXh0U2VydmljZUluZm9JbnN0YW5jZUZhY3RvcnlDb25maWc8UyBleHRlbmRzIEluQ29udGV4dEZpcmViYXNlTW9kZWxzU2VydmljZTxhbnk+LCBDIGV4dGVuZHMgRmlyZWJhc2VQZXJtaXNzaW9uRXJyb3JDb250ZXh0ID0gRmlyZWJhc2VQZXJtaXNzaW9uRXJyb3JDb250ZXh0PiB7XG4gIHJlYWRvbmx5IG1vZGVsU2VydmljZTogRGJ4RmlyZWJhc2VJbkNvbnRleHRGaXJlYmFzZU1vZGVsU2VydmljZUluc3RhbmNlRmFjdG9yeTxTLCBDPjtcbiAgcmVhZG9ubHkgZW50aXR5TWFwJDogT2JzZXJ2YWJsZTxGaXJlc3RvcmVNb2RlbElkZW50aXR5VHlwZU1hcD47XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBkYnhGaXJlYmFzZU1vZGVsQ29udGV4dFNlcnZpY2VJbmZvSW5zdGFuY2VGYWN0b3J5PFMgZXh0ZW5kcyBJbkNvbnRleHRGaXJlYmFzZU1vZGVsc1NlcnZpY2U8YW55PiwgQyBleHRlbmRzIEZpcmViYXNlUGVybWlzc2lvbkVycm9yQ29udGV4dCA9IEZpcmViYXNlUGVybWlzc2lvbkVycm9yQ29udGV4dD4oY29uZmlnOiBEYnhGaXJlYmFzZU1vZGVsQ29udGV4dFNlcnZpY2VJbmZvSW5zdGFuY2VGYWN0b3J5Q29uZmlnPFMsIEM+KTogRGJ4RmlyZWJhc2VNb2RlbENvbnRleHRTZXJ2aWNlSW5mb0luc3RhbmNlRmFjdG9yeSB7XG4gIGNvbnN0IHsgbW9kZWxTZXJ2aWNlLCBlbnRpdHlNYXAkIH0gPSBjb25maWc7XG4gIHJldHVybiA8RCBleHRlbmRzIEZpcmVzdG9yZURvY3VtZW50PGFueT4sIFIgZXh0ZW5kcyBHcmFudGVkUm9sZSA9IEdyYW50ZWRSb2xlPihrZXlPYnM6IE9ic2VydmFibGVPclZhbHVlPHN0cmluZz4pID0+IHtcbiAgICBjb25zdCBrZXkkID0gYXNPYnNlcnZhYmxlKGtleU9icyk7XG5cbiAgICByZXR1cm4ga2V5JC5waXBlKFxuICAgICAgYXNGaXJlc3RvcmVNb2RlbEtleUNvbGxlY3Rpb25UeXBlKCksXG4gICAgICBzd2l0Y2hNYXAoKHBhaXIpID0+IHtcbiAgICAgICAgcmV0dXJuIGVudGl0eU1hcCQucGlwZShcbiAgICAgICAgICBtYXAoKGVudGl0eU1hcCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgbW9kZWxUeXBlID0gZW50aXR5TWFwLmdldChwYWlyLmNvbGxlY3Rpb25UeXBlKSBhcyBGaXJlc3RvcmVNb2RlbFR5cGU7XG5cbiAgICAgICAgICAgIGlmICghbW9kZWxUeXBlKSB7XG4gICAgICAgICAgICAgIGNvbnN0IG1lc3NhZ2UgPSBgZGJ4RmlyZWJhc2VNb2RlbENvbnRleHRTZXJ2aWNlSW5mb0luc3RhbmNlRmFjdG9yeSBFcnJvcjogRmFpbGVkIHRvIHJldHJpZXZlIG1vZGVsIHR5cGUgZm9yIGNvbGxlY3Rpb24gdHlwZSBcIiR7cGFpci5jb2xsZWN0aW9uVHlwZX1cImA7XG4gICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IobWVzc2FnZSk7XG4gICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihtZXNzYWdlKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuIG1vZGVsU2VydmljZShtb2RlbFR5cGUgYXMgYW55LCBwYWlyLmtleSkgYXMgRGJ4RmlyZWJhc2VJbkNvbnRleHRGaXJlYmFzZU1vZGVsSW5mb1NlcnZpY2VJbnN0YW5jZTxELCBSPjtcbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgfSlcbiAgICApO1xuICB9O1xufVxuXG4vKipcbiAqIE9wZXJhdG9yIGZ1bmN0aW9uIHRoYXQgYnVpbGRzIGEgRmlyZXN0b3JlTW9kZWxJZGVudGl0eVR5cGVNYXAgZnJvbSB0aGUgaW5wdXQgY29udGV4dCBhbmQgc2hhcmVzIHRoZSByZXBsYXkuXG4gKlxuICogU2luY2UgdGhlIG91dHB1dCB3b24ndCBjaGFuZ2Ugd2l0aCBkaWZmZXJlbnQgY29udGV4dHMsIHRoZSBtYXAgaXMgYnVpbHQgb25jZSBhbmQgdGhlbiBzaGFyZWQuXG4gKlxuICogQHJldHVybnNcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIGZpcmViYXNlQ29udGV4dFNlcnZpY2VFbnRpdHlNYXA8VCBleHRlbmRzIEluQ29udGV4dEZpcmViYXNlTW9kZWxzU2VydmljZTxhbnk+PigpOiBPcGVyYXRvckZ1bmN0aW9uPFQsIEZpcmVzdG9yZU1vZGVsSWRlbnRpdHlUeXBlTWFwPiB7XG4gIHJldHVybiAob2JzOiBPYnNlcnZhYmxlPFQ+KSA9PiB7XG4gICAgcmV0dXJuIG9icy5waXBlKFxuICAgICAgbWFwKCh4KSA9PiBidWlsZEZpcmViYXNlQ29sbGVjdGlvblR5cGVNb2RlbFR5cGVNYXAoeCkpLFxuICAgICAgZmlyc3QoKSxcbiAgICAgIHNoYXJlUmVwbGF5KDEpXG4gICAgKTtcbiAgfTtcbn1cbiJdfQ==
@@ -1,18 +1,19 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { Injectable, Optional, InjectionToken, Inject, Component, Input, Directive, EventEmitter, Output, NgModule, Injector, ViewChild, HostListener, forwardRef, Host } from '@angular/core';
3
- import { switchMap, of, shareReplay, map, distinctUntilChanged, catchError, firstValueFrom, BehaviorSubject, combineLatest, from, first, tap, interval, exhaustMap, filter, take, startWith, EMPTY, Subject, throttleTime, NEVER, combineLatestWith } from 'rxjs';
4
- import { __awaiter, __decorate, __param, __metadata } from 'tslib';
5
3
  import { asObservable, timeoutStartWith, filterMaybe, isNot, SubscriptionObject, lazyFrom, switchMapWhileTrue, loadingStateFromObs, cleanupDestroyable, accumulatorFlattenPageListLoadingState, useFirst, pageLoadingStateFromObs, useAsObservable, distinctUntilModelKeyChange, successResult, beginLoading, errorResult, cleanup, mapLoadingState } from '@dereekb/rxjs';
4
+ import { switchMap, of, shareReplay, map, distinctUntilChanged, catchError, firstValueFrom, BehaviorSubject, combineLatest, first, from, tap, interval, exhaustMap, filter, take, startWith, EMPTY, Subject, throttleTime, NEVER, combineLatestWith } from 'rxjs';
5
+ import { __awaiter, __decorate, __param, __metadata } from 'tslib';
6
6
  import * as i2$2 from '@dereekb/dbx-core';
7
7
  import { loggedInObsFromIsLoggedIn, loggedOutObsFromIsLoggedIn, authUserIdentifier, DbxInjectionContext, AbstractForwardDbxInjectionContextDirective, DBX_INJECTION_COMPONENT_DATA, DbxInjectionComponentModule, DbxAuthService, AbstractSubscriptionDirective, AbstractIfDirective, DbxRouteParamReaderInstance, DbxRouteParamDefaultRedirectInstance, LockSetComponentStore } from '@dereekb/dbx-core';
8
8
  import * as i1 from '@angular/fire/auth';
9
9
  import { authState, idToken, GoogleAuthProvider, FacebookAuthProvider, TwitterAuthProvider, GithubAuthProvider, signInWithPopup, createUserWithEmailAndPassword, signInWithEmailAndPassword, signInAnonymously, reauthenticateWithPopup, provideAuth, getAuth, connectAuthEmulator } from '@angular/fire/auth';
10
10
  import { AUTH_ADMIN_ROLE, cachedGetter, urlWithoutParameters, addToSet, removeFromSet, filterMaybeValues, mapIterable, asArray, excludeValuesFromArray, containsStringAnyCase, addToSetCopy, iterableToArray, PromiseUtility, forEachKeyValue, readableError, isMaybeSo, firstValue } from '@dereekb/util';
11
11
  import { sendPasswordResetEmail } from 'firebase/auth';
12
+ import * as i3 from '@dereekb/dbx-analytics';
12
13
  import { getToken, initializeAppCheck, ReCaptchaV3Provider } from 'firebase/app-check';
13
14
  import * as i1$1 from '@angular/fire/app-check';
14
15
  import { provideAppCheck } from '@angular/fire/app-check';
15
- import * as i3 from '@angular/material/button';
16
+ import * as i3$1 from '@angular/material/button';
16
17
  import { MatButtonModule } from '@angular/material/button';
17
18
  import * as i2$1 from '@angular/material/icon';
18
19
  import { MatIconModule } from '@angular/material/icon';
@@ -329,6 +330,41 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
329
330
  }]
330
331
  }], ctorParameters: function () { return [{ type: DbxFirebaseAuthService }]; } });
331
332
 
333
+ /**
334
+ * Service that listens for DbxFirebaseAuthService changes and emits them a user events.
335
+ */
336
+ class DbxFirebaseAnalyticsUserEventsListener {
337
+ constructor(dbxFirebaseAuthService, dbxFirebaseAnalyticsUserSource, dbxAnalyticsService) {
338
+ this.dbxFirebaseAuthService = dbxFirebaseAuthService;
339
+ this.dbxFirebaseAnalyticsUserSource = dbxFirebaseAnalyticsUserSource;
340
+ this.dbxAnalyticsService = dbxAnalyticsService;
341
+ this._loginSub = new SubscriptionObject();
342
+ this._logoutSub = new SubscriptionObject();
343
+ }
344
+ init() {
345
+ this._loginSub.subscription = this.dbxFirebaseAuthService.onLogIn$.subscribe(() => {
346
+ this.dbxFirebaseAnalyticsUserSource.analyticsUser$.pipe(filterMaybe(), first()).subscribe((analyticsUser) => {
347
+ this.dbxAnalyticsService.sendUserLoginEvent(analyticsUser);
348
+ });
349
+ });
350
+ this._logoutSub.subscription = this.dbxFirebaseAuthService.onLogOut$.subscribe(() => {
351
+ this.dbxAnalyticsService.sendUserLogoutEvent();
352
+ });
353
+ }
354
+ destroy() {
355
+ this._loginSub.destroy();
356
+ this._logoutSub.destroy();
357
+ }
358
+ }
359
+ DbxFirebaseAnalyticsUserEventsListener.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFirebaseAnalyticsUserEventsListener, deps: [{ token: DbxFirebaseAuthService }, { token: DbxFirebaseAnalyticsUserSource }, { token: i3.DbxAnalyticsService }], target: i0.ɵɵFactoryTarget.Injectable });
360
+ DbxFirebaseAnalyticsUserEventsListener.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFirebaseAnalyticsUserEventsListener, providedIn: 'root' });
361
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFirebaseAnalyticsUserEventsListener, decorators: [{
362
+ type: Injectable,
363
+ args: [{
364
+ providedIn: 'root'
365
+ }]
366
+ }], ctorParameters: function () { return [{ type: DbxFirebaseAuthService }, { type: DbxFirebaseAnalyticsUserSource }, { type: i3.DbxAnalyticsService }]; } });
367
+
332
368
  /**
333
369
  * Enables debug token generation for AppCheck by setting FIREBASE_APPCHECK_DEBUG_TOKEN in the browser's self/window.
334
370
  *
@@ -1039,7 +1075,7 @@ class DbxFirebaseLoginEmailContentComponent {
1039
1075
  }
1040
1076
  }
1041
1077
  DbxFirebaseLoginEmailContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFirebaseLoginEmailContentComponent, deps: [{ token: DbxFirebaseAuthService }, { token: DBX_INJECTION_COMPONENT_DATA }], target: i0.ɵɵFactoryTarget.Component });
1042
- DbxFirebaseLoginEmailContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DbxFirebaseLoginEmailContentComponent, selector: "ng-component", ngImport: i0, template: "<div class=\"dbx-firebase-login-email-content\">\n <ng-container [ngSwitch]=\"emailMode$ | async\">\n <ng-container *ngSwitchCase=\"'login'\">\n <ng-container *ngTemplateOutlet=\"loginView\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'recover'\">\n <ng-container *ngTemplateOutlet=\"resetPassword\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'recoversent'\">\n <ng-container *ngTemplateOutlet=\"resetPasswordSent\"></ng-container>\n </ng-container>\n </ng-container>\n</div>\n\n<!-- Login View -->\n<ng-template #loginView>\n <ng-container dbxAction [dbxActionHandler]=\"handleLoginAction\">\n <dbx-firebase-email-form [config]=\"formConfig\" dbxActionForm [dbxFormSource]=\"emailFormValue\"></dbx-firebase-email-form>\n <div class=\"dbx-firebase-login-email-forgot-prompt\" *ngIf=\"isLoginMode\">\n <dbx-link [anchor]=\"forgotAnchor\">Forgot Password?</dbx-link>\n </div>\n <div class=\"dbx-flex\">\n <dbx-button class=\"dbx-wide-button\" [text]=\"buttonText\" [raised]=\"true\" color=\"primary\" dbxActionButton></dbx-button>\n <dbx-button-spacer></dbx-button-spacer>\n <span class=\"dbx-spacer\"></span>\n <button mat-flat-button (click)=\"onCancel()\">Cancel</button>\n </div>\n <dbx-error dbxActionError></dbx-error>\n </ng-container>\n</ng-template>\n\n<!-- Reset Password View -->\n<ng-template #resetPassword>\n <div class=\"dbx-firebase-login-email-content-recovery\" dbxAction [dbxActionHandler]=\"handleRecoveryAction\" [dbxActionSuccessHandler]=\"handleRecoverySuccess\">\n <dbx-firebase-email-recovery-form dbxActionForm [dbxFormSource]=\"recoveryFormValue\"></dbx-firebase-email-recovery-form>\n <p class=\"dbx-hint\">An email will be sent to the above address to help you reset your password.</p>\n <div class=\"dbx-flex\">\n <dbx-button class=\"dbx-wide-button\" text=\"Send Recovery Email\" [raised]=\"true\" color=\"primary\" dbxActionButton></dbx-button>\n <span class=\"dbx-spacer\"></span>\n <button mat-flat-button (click)=\"onCancelReset()\">Cancel Recovery</button>\n </div>\n <dbx-error dbxActionError></dbx-error>\n </div>\n</ng-template>\n\n<!-- Reset Password Sent -->\n<ng-template #resetPasswordSent>\n <div class=\"dbx-firebase-login-email-content-recovery-sent\">\n <p class=\"dbx-hint\">A recovery email was sent to the specified address. Please check your email for next steps.</p>\n <button mat-raised-button (click)=\"clickedRecoveryAcknowledged()\">Ok</button>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i1$2.DbxAnchorLinkComponent, selector: "dbx-link", inputs: ["anchor", "ref", "href"] }, { kind: "directive", type: i1$3.DbxFormSourceDirective, selector: "[dbxFormSource]", inputs: ["dbxFormSourceMode", "dbxFormSource"] }, { kind: "directive", type: i1$3.DbxActionFormDirective, selector: "[dbxActionForm]", inputs: ["dbxActionFormValidator", "dbxActionFormModified", "formDisabledOnWorking"] }, { kind: "component", type: i1$2.DbxReadableErrorComponent, selector: "dbx-error", inputs: ["error"] }, { kind: "directive", type: i1$2.DbxActionErrorDirective, selector: "[dbxActionError]" }, { kind: "directive", type: i2$2.DbxActionDirective, selector: "dbx-action,[dbxAction],dbx-action-context,[dbxActionContext]", exportAs: ["action", "dbxAction"] }, { kind: "directive", type: i2$2.DbxActionHandlerDirective, selector: "[dbxActionHandler]", inputs: ["dbxActionHandler"] }, { kind: "directive", type: i2$2.DbxActionSuccessHandlerDirective, selector: "[dbxActionSuccessHandler]", inputs: ["dbxActionSuccessHandler"] }, { kind: "directive", type: i2$2.DbxActionButtonDirective, selector: "[dbxActionButton]" }, { kind: "component", type: i1$2.DbxButtonComponent, selector: "dbx-button", inputs: ["type", "raised", "stroked", "flat", "color", "customButtonColor", "customTextColor", "customSpinnerColor"] }, { kind: "directive", type: i1$2.DbxButtonSpacerDirective, selector: "dbx-button-spacer,[dbxButtonSpacer]" }, { kind: "component", type: DbxFirebaseEmailFormComponent, selector: "dbx-firebase-email-form", inputs: ["config"] }, { kind: "component", type: DbxFirebaseEmailRecoveryFormComponent, selector: "dbx-firebase-email-recovery-form" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] });
1078
+ DbxFirebaseLoginEmailContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DbxFirebaseLoginEmailContentComponent, selector: "ng-component", ngImport: i0, template: "<div class=\"dbx-firebase-login-email-content\">\n <ng-container [ngSwitch]=\"emailMode$ | async\">\n <ng-container *ngSwitchCase=\"'login'\">\n <ng-container *ngTemplateOutlet=\"loginView\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'recover'\">\n <ng-container *ngTemplateOutlet=\"resetPassword\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'recoversent'\">\n <ng-container *ngTemplateOutlet=\"resetPasswordSent\"></ng-container>\n </ng-container>\n </ng-container>\n</div>\n\n<!-- Login View -->\n<ng-template #loginView>\n <ng-container dbxAction [dbxActionHandler]=\"handleLoginAction\">\n <dbx-firebase-email-form [config]=\"formConfig\" dbxActionForm [dbxFormSource]=\"emailFormValue\"></dbx-firebase-email-form>\n <div class=\"dbx-firebase-login-email-forgot-prompt\" *ngIf=\"isLoginMode\">\n <dbx-link [anchor]=\"forgotAnchor\">Forgot Password?</dbx-link>\n </div>\n <div class=\"dbx-flex\">\n <dbx-button class=\"dbx-wide-button\" [text]=\"buttonText\" [raised]=\"true\" color=\"primary\" dbxActionButton></dbx-button>\n <dbx-button-spacer></dbx-button-spacer>\n <span class=\"dbx-spacer\"></span>\n <button mat-flat-button (click)=\"onCancel()\">Cancel</button>\n </div>\n <dbx-error dbxActionError></dbx-error>\n </ng-container>\n</ng-template>\n\n<!-- Reset Password View -->\n<ng-template #resetPassword>\n <div class=\"dbx-firebase-login-email-content-recovery\" dbxAction [dbxActionHandler]=\"handleRecoveryAction\" [dbxActionSuccessHandler]=\"handleRecoverySuccess\">\n <dbx-firebase-email-recovery-form dbxActionForm [dbxFormSource]=\"recoveryFormValue\"></dbx-firebase-email-recovery-form>\n <p class=\"dbx-hint\">An email will be sent to the above address to help you reset your password.</p>\n <div class=\"dbx-flex\">\n <dbx-button class=\"dbx-wide-button\" text=\"Send Recovery Email\" [raised]=\"true\" color=\"primary\" dbxActionButton></dbx-button>\n <span class=\"dbx-spacer\"></span>\n <button mat-flat-button (click)=\"onCancelReset()\">Cancel Recovery</button>\n </div>\n <dbx-error dbxActionError></dbx-error>\n </div>\n</ng-template>\n\n<!-- Reset Password Sent -->\n<ng-template #resetPasswordSent>\n <div class=\"dbx-firebase-login-email-content-recovery-sent\">\n <p class=\"dbx-hint\">A recovery email was sent to the specified address. Please check your email for next steps.</p>\n <button mat-raised-button (click)=\"clickedRecoveryAcknowledged()\">Ok</button>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i2.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "component", type: i3$1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i1$2.DbxAnchorLinkComponent, selector: "dbx-link", inputs: ["anchor", "ref", "href"] }, { kind: "directive", type: i1$3.DbxFormSourceDirective, selector: "[dbxFormSource]", inputs: ["dbxFormSourceMode", "dbxFormSource"] }, { kind: "directive", type: i1$3.DbxActionFormDirective, selector: "[dbxActionForm]", inputs: ["dbxActionFormValidator", "dbxActionFormModified", "formDisabledOnWorking"] }, { kind: "component", type: i1$2.DbxReadableErrorComponent, selector: "dbx-error", inputs: ["error"] }, { kind: "directive", type: i1$2.DbxActionErrorDirective, selector: "[dbxActionError]" }, { kind: "directive", type: i2$2.DbxActionDirective, selector: "dbx-action,[dbxAction],dbx-action-context,[dbxActionContext]", exportAs: ["action", "dbxAction"] }, { kind: "directive", type: i2$2.DbxActionHandlerDirective, selector: "[dbxActionHandler]", inputs: ["dbxActionHandler"] }, { kind: "directive", type: i2$2.DbxActionSuccessHandlerDirective, selector: "[dbxActionSuccessHandler]", inputs: ["dbxActionSuccessHandler"] }, { kind: "directive", type: i2$2.DbxActionButtonDirective, selector: "[dbxActionButton]" }, { kind: "component", type: i1$2.DbxButtonComponent, selector: "dbx-button", inputs: ["type", "raised", "stroked", "flat", "color", "customButtonColor", "customTextColor", "customSpinnerColor"] }, { kind: "directive", type: i1$2.DbxButtonSpacerDirective, selector: "dbx-button-spacer,[dbxButtonSpacer]" }, { kind: "component", type: DbxFirebaseEmailFormComponent, selector: "dbx-firebase-email-form", inputs: ["config"] }, { kind: "component", type: DbxFirebaseEmailRecoveryFormComponent, selector: "dbx-firebase-email-recovery-form" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] });
1043
1079
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFirebaseLoginEmailContentComponent, decorators: [{
1044
1080
  type: Component,
1045
1081
  args: [{ template: "<div class=\"dbx-firebase-login-email-content\">\n <ng-container [ngSwitch]=\"emailMode$ | async\">\n <ng-container *ngSwitchCase=\"'login'\">\n <ng-container *ngTemplateOutlet=\"loginView\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'recover'\">\n <ng-container *ngTemplateOutlet=\"resetPassword\"></ng-container>\n </ng-container>\n <ng-container *ngSwitchCase=\"'recoversent'\">\n <ng-container *ngTemplateOutlet=\"resetPasswordSent\"></ng-container>\n </ng-container>\n </ng-container>\n</div>\n\n<!-- Login View -->\n<ng-template #loginView>\n <ng-container dbxAction [dbxActionHandler]=\"handleLoginAction\">\n <dbx-firebase-email-form [config]=\"formConfig\" dbxActionForm [dbxFormSource]=\"emailFormValue\"></dbx-firebase-email-form>\n <div class=\"dbx-firebase-login-email-forgot-prompt\" *ngIf=\"isLoginMode\">\n <dbx-link [anchor]=\"forgotAnchor\">Forgot Password?</dbx-link>\n </div>\n <div class=\"dbx-flex\">\n <dbx-button class=\"dbx-wide-button\" [text]=\"buttonText\" [raised]=\"true\" color=\"primary\" dbxActionButton></dbx-button>\n <dbx-button-spacer></dbx-button-spacer>\n <span class=\"dbx-spacer\"></span>\n <button mat-flat-button (click)=\"onCancel()\">Cancel</button>\n </div>\n <dbx-error dbxActionError></dbx-error>\n </ng-container>\n</ng-template>\n\n<!-- Reset Password View -->\n<ng-template #resetPassword>\n <div class=\"dbx-firebase-login-email-content-recovery\" dbxAction [dbxActionHandler]=\"handleRecoveryAction\" [dbxActionSuccessHandler]=\"handleRecoverySuccess\">\n <dbx-firebase-email-recovery-form dbxActionForm [dbxFormSource]=\"recoveryFormValue\"></dbx-firebase-email-recovery-form>\n <p class=\"dbx-hint\">An email will be sent to the above address to help you reset your password.</p>\n <div class=\"dbx-flex\">\n <dbx-button class=\"dbx-wide-button\" text=\"Send Recovery Email\" [raised]=\"true\" color=\"primary\" dbxActionButton></dbx-button>\n <span class=\"dbx-spacer\"></span>\n <button mat-flat-button (click)=\"onCancelReset()\">Cancel Recovery</button>\n </div>\n <dbx-error dbxActionError></dbx-error>\n </div>\n</ng-template>\n\n<!-- Reset Password Sent -->\n<ng-template #resetPasswordSent>\n <div class=\"dbx-firebase-login-email-content-recovery-sent\">\n <p class=\"dbx-hint\">A recovery email was sent to the specified address. Please check your email for next steps.</p>\n <button mat-raised-button (click)=\"clickedRecoveryAcknowledged()\">Ok</button>\n </div>\n</ng-template>\n" }]
@@ -2200,7 +2236,7 @@ class DbxFirebaseDevelopmentPopupContentComponent {
2200
2236
  }
2201
2237
  }
2202
2238
  DbxFirebaseDevelopmentPopupContentComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFirebaseDevelopmentPopupContentComponent, deps: [{ token: i1$2.TwoColumnsContextStore }, { token: i2$2.DbxAuthService }, { token: DbxFirebaseDevelopmentWidgetService }, { token: DbxFirebaseDevelopmentSchedulerService }, { token: DbxFirebaseEmulatorService }], target: i0.ɵɵFactoryTarget.Component });
2203
- DbxFirebaseDevelopmentPopupContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DbxFirebaseDevelopmentPopupContentComponent, selector: "dbx-firebase-development-popup-content", providers: [TwoColumnsContextStore], ngImport: i0, template: "<dbx-two-column class=\"dbx-firebase-development-popup-content\" [dbxTwoColumnFullLeft]=\"true\">\n <dbx-two-block left>\n <div>\n <h4>Info</h4>\n <p>Scheduler (Running): {{ schedulerRunning$ | async }} : {{ schedulerInterval$ | async }}s : {{ schedulerError$ | async }}</p>\n <div>\n <dbx-anchor [anchor]=\"emulatorUIAnchor\" *ngIf=\"showEmulatorButton\">\n <button mat-flat-button color=\"accent\">Emulator Enabled</button>\n </dbx-anchor>\n </div>\n </div>\n <div>\n <h4>Tools</h4>\n <div dbxAction dbxActionEnforceModified dbxActionAutoTrigger instantTrigger [dbxActionHandler]=\"handleFormUpdate\">\n <dbx-firebase-development-popup-content-form dbxActionForm [dbxFormSource]=\"formData$\" dbxFormSourceMode=\"always\" [dbxActionFormModified]=\"isFormModified\" [config]=\"formConfig$ | async\"></dbx-firebase-development-popup-content-form>\n </div>\n </div>\n </dbx-two-block>\n <dbx-two-column-right right [header]=\"(rightTitle$ | async) || ''\">\n <dbx-widget-view [config]=\"widgetConfig$ | async\"></dbx-widget-view>\n </dbx-two-column-right>\n</dbx-two-column>\n", styles: [".dbx-firebase-development-popup-content{height:400px;overflow:hidden}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1$2.DbxWidgetViewComponent, selector: "dbx-widget-view", inputs: ["config"] }, { kind: "component", type: i1$2.DbxTwoBlocksComponent, selector: "dbx-two-block", inputs: ["fixedTop"] }, { kind: "component", type: i1$2.DbxTwoColumnComponent, selector: "dbx-two-column", inputs: ["reverseSizing", "inSectionPage"], exportAs: ["columns"] }, { kind: "component", type: i1$2.DbxTwoColumnRightComponent, selector: "dbx-two-column-right", inputs: ["header", "block", "showBack", "minRightWidth"] }, { kind: "directive", type: i1$2.DbxTwoColumnFullLeftDirective, selector: "[dbxTwoColumnFullLeft]", inputs: ["dbxTwoColumnFullLeft"] }, { kind: "component", type: i3.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i1$2.DbxAnchorComponent, selector: "dbx-anchor, [dbx-anchor]", inputs: ["block"] }, { kind: "directive", type: i1$3.DbxFormSourceDirective, selector: "[dbxFormSource]", inputs: ["dbxFormSourceMode", "dbxFormSource"] }, { kind: "directive", type: i1$3.DbxActionFormDirective, selector: "[dbxActionForm]", inputs: ["dbxActionFormValidator", "dbxActionFormModified", "formDisabledOnWorking"] }, { kind: "directive", type: i2$2.DbxActionDirective, selector: "dbx-action,[dbxAction],dbx-action-context,[dbxActionContext]", exportAs: ["action", "dbxAction"] }, { kind: "directive", type: i2$2.DbxActionHandlerDirective, selector: "[dbxActionHandler]", inputs: ["dbxActionHandler"] }, { kind: "directive", type: i2$2.DbxActionEnforceModifiedDirective, selector: "[dbxActionEnforceModified]", inputs: ["dbxActionEnforceModified"] }, { kind: "directive", type: i2$2.DbxActionAutoTriggerDirective, selector: "dbxActionAutoTrigger, [dbxActionAutoTrigger]", inputs: ["dbxActionAutoTrigger", "triggerDebounce", "triggerThrottle", "triggerErrorThrottle", "fastTrigger", "instantTrigger", "triggerLimit"] }, { kind: "component", type: DbxFirebaseDevelopmentPopupContentFormComponent, selector: "dbx-firebase-development-popup-content-form" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] });
2239
+ DbxFirebaseDevelopmentPopupContentComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.2.12", type: DbxFirebaseDevelopmentPopupContentComponent, selector: "dbx-firebase-development-popup-content", providers: [TwoColumnsContextStore], ngImport: i0, template: "<dbx-two-column class=\"dbx-firebase-development-popup-content\" [dbxTwoColumnFullLeft]=\"true\">\n <dbx-two-block left>\n <div>\n <h4>Info</h4>\n <p>Scheduler (Running): {{ schedulerRunning$ | async }} : {{ schedulerInterval$ | async }}s : {{ schedulerError$ | async }}</p>\n <div>\n <dbx-anchor [anchor]=\"emulatorUIAnchor\" *ngIf=\"showEmulatorButton\">\n <button mat-flat-button color=\"accent\">Emulator Enabled</button>\n </dbx-anchor>\n </div>\n </div>\n <div>\n <h4>Tools</h4>\n <div dbxAction dbxActionEnforceModified dbxActionAutoTrigger instantTrigger [dbxActionHandler]=\"handleFormUpdate\">\n <dbx-firebase-development-popup-content-form dbxActionForm [dbxFormSource]=\"formData$\" dbxFormSourceMode=\"always\" [dbxActionFormModified]=\"isFormModified\" [config]=\"formConfig$ | async\"></dbx-firebase-development-popup-content-form>\n </div>\n </div>\n </dbx-two-block>\n <dbx-two-column-right right [header]=\"(rightTitle$ | async) || ''\">\n <dbx-widget-view [config]=\"widgetConfig$ | async\"></dbx-widget-view>\n </dbx-two-column-right>\n</dbx-two-column>\n", styles: [".dbx-firebase-development-popup-content{height:400px;overflow:hidden}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i1$2.DbxWidgetViewComponent, selector: "dbx-widget-view", inputs: ["config"] }, { kind: "component", type: i1$2.DbxTwoBlocksComponent, selector: "dbx-two-block", inputs: ["fixedTop"] }, { kind: "component", type: i1$2.DbxTwoColumnComponent, selector: "dbx-two-column", inputs: ["reverseSizing", "inSectionPage"], exportAs: ["columns"] }, { kind: "component", type: i1$2.DbxTwoColumnRightComponent, selector: "dbx-two-column-right", inputs: ["header", "block", "showBack", "minRightWidth"] }, { kind: "directive", type: i1$2.DbxTwoColumnFullLeftDirective, selector: "[dbxTwoColumnFullLeft]", inputs: ["dbxTwoColumnFullLeft"] }, { kind: "component", type: i3$1.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i1$2.DbxAnchorComponent, selector: "dbx-anchor, [dbx-anchor]", inputs: ["block"] }, { kind: "directive", type: i1$3.DbxFormSourceDirective, selector: "[dbxFormSource]", inputs: ["dbxFormSourceMode", "dbxFormSource"] }, { kind: "directive", type: i1$3.DbxActionFormDirective, selector: "[dbxActionForm]", inputs: ["dbxActionFormValidator", "dbxActionFormModified", "formDisabledOnWorking"] }, { kind: "directive", type: i2$2.DbxActionDirective, selector: "dbx-action,[dbxAction],dbx-action-context,[dbxActionContext]", exportAs: ["action", "dbxAction"] }, { kind: "directive", type: i2$2.DbxActionHandlerDirective, selector: "[dbxActionHandler]", inputs: ["dbxActionHandler"] }, { kind: "directive", type: i2$2.DbxActionEnforceModifiedDirective, selector: "[dbxActionEnforceModified]", inputs: ["dbxActionEnforceModified"] }, { kind: "directive", type: i2$2.DbxActionAutoTriggerDirective, selector: "dbxActionAutoTrigger, [dbxActionAutoTrigger]", inputs: ["dbxActionAutoTrigger", "triggerDebounce", "triggerThrottle", "triggerErrorThrottle", "fastTrigger", "instantTrigger", "triggerLimit"] }, { kind: "component", type: DbxFirebaseDevelopmentPopupContentFormComponent, selector: "dbx-firebase-development-popup-content-form" }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] });
2204
2240
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImport: i0, type: DbxFirebaseDevelopmentPopupContentComponent, decorators: [{
2205
2241
  type: Component,
2206
2242
  args: [{ selector: 'dbx-firebase-development-popup-content', providers: [TwoColumnsContextStore], template: "<dbx-two-column class=\"dbx-firebase-development-popup-content\" [dbxTwoColumnFullLeft]=\"true\">\n <dbx-two-block left>\n <div>\n <h4>Info</h4>\n <p>Scheduler (Running): {{ schedulerRunning$ | async }} : {{ schedulerInterval$ | async }}s : {{ schedulerError$ | async }}</p>\n <div>\n <dbx-anchor [anchor]=\"emulatorUIAnchor\" *ngIf=\"showEmulatorButton\">\n <button mat-flat-button color=\"accent\">Emulator Enabled</button>\n </dbx-anchor>\n </div>\n </div>\n <div>\n <h4>Tools</h4>\n <div dbxAction dbxActionEnforceModified dbxActionAutoTrigger instantTrigger [dbxActionHandler]=\"handleFormUpdate\">\n <dbx-firebase-development-popup-content-form dbxActionForm [dbxFormSource]=\"formData$\" dbxFormSourceMode=\"always\" [dbxActionFormModified]=\"isFormModified\" [config]=\"formConfig$ | async\"></dbx-firebase-development-popup-content-form>\n </div>\n </div>\n </dbx-two-block>\n <dbx-two-column-right right [header]=\"(rightTitle$ | async) || ''\">\n <dbx-widget-view [config]=\"widgetConfig$ | async\"></dbx-widget-view>\n </dbx-two-column-right>\n</dbx-two-column>\n", styles: [".dbx-firebase-development-popup-content{height:400px;overflow:hidden}\n"] }]
@@ -4314,5 +4350,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.2.12", ngImpo
4314
4350
  * Generated bundle index. Do not edit.
4315
4351
  */
4316
4352
 
4317
- export { AbstractConfiguredDbxFirebaseLoginButtonDirective, AbstractDbxFirebaseCollectionStore, AbstractDbxFirebaseCollectionWithParentStore, AbstractDbxFirebaseDocumentStore, AbstractDbxFirebaseDocumentWithParentStore, AbstractRootSingleItemDbxFirebaseDocument, AbstractSingleItemDbxFirebaseDocument, AbstractSystemStateDocumentStoreAccessor, DBX_FIREBASE_ID_ROUTER_PARAM_DEFAULT_ID_PARAM_KEY, DBX_FIREBASE_ID_ROUTER_PARAM_DEFAULT_KEY_PARAM_KEY, DBX_FIREBASE_ID_ROUTER_PARAM_DEFAULT_USE_PARAM_VALUE, DBX_FIREBASE_MODEL_DOES_NOT_EXIST_ERROR, DBX_FIREBASE_OPTIONS_TOKEN, DBX_FIREBASE_STORAGE_CONTEXT_CONFIG_TOKEN, DBX_FIREBASE_STORAGE_CONTEXT_TOKEN, DBX_FIRESTORE_CONTEXT_TOKEN, DEFAULT_CONFIGURED_DBX_FIREBASE_LOGIN_BUTTON_TEMPLATE, DEFAULT_DBX_FIREBASE_ANALYTICS_USER_PROPERTIES_FACTORY, DEFAULT_DBX_FIREBASE_AUTH_SERVICE_DELEGATE, DEFAULT_FIREBASE_AUTH_LOGIN_PASSWORD_CONFIG, DEFAULT_FIREBASE_AUTH_LOGIN_PASSWORD_CONFIG_TOKEN, DEFAULT_FIREBASE_AUTH_LOGIN_PROVIDERS_TOKEN, DEFAULT_FIREBASE_AUTH_LOGIN_TERMS_COMPONENT_CLASS_TOKEN, DEFAULT_FIREBASE_COLLECTION_CHANGE_TRIGGER_FUNCTION, DEFAULT_FIREBASE_DEVELOPMENT_ENABLED_TOKEN, DEFAULT_FIREBASE_DEVELOPMENT_POPUP_KEY, DEFAULT_FIREBASE_DEVELOPMENT_SCHEDULER_ENABLED_TOKEN, DEFAULT_FIREBASE_DEVELOPMENT_WIDGET_PROVIDERS_TOKEN, DEFAULT_FIREBASE_LOGIN_METHOD_CATEGORY, DEVELOPMENT_FIREBASE_SERVER_SCHEDULER_WIDGET_KEY, DbxFirebaseAnalyticsUserSource, DbxFirebaseAppCheckHttpInterceptor, DbxFirebaseAuthContextInfo, DbxFirebaseAuthLoginService, DbxFirebaseAuthModule, DbxFirebaseAuthService, DbxFirebaseAuthServiceDelegate, DbxFirebaseCollectionChangeDirective, DbxFirebaseCollectionChangeTriggerInstance, DbxFirebaseCollectionChangeWatcherInstance, DbxFirebaseCollectionHasChangeDirective, DbxFirebaseCollectionListDirective, DbxFirebaseCollectionLoaderInstance, DbxFirebaseCollectionStoreDirective, DbxFirebaseCollectionWithParentStoreDirective, DbxFirebaseDefaultAppCheckProviderModule, DbxFirebaseDefaultAuthProviderModule, DbxFirebaseDefaultFirebaseProvidersModule, DbxFirebaseDefaultFirestoreProviderModule, DbxFirebaseDefaultFunctionsProviderModule, DbxFirebaseDefaultStorageProviderModule, DbxFirebaseDevelopmentDirective, DbxFirebaseDevelopmentModule, DbxFirebaseDevelopmentModuleRootConfig, DbxFirebaseDevelopmentPopupComponent, DbxFirebaseDevelopmentPopupContentComponent, DbxFirebaseDevelopmentPopupContentFormComponent, DbxFirebaseDevelopmentSchedulerListComponent, DbxFirebaseDevelopmentSchedulerListViewComponent, DbxFirebaseDevelopmentSchedulerListViewItemComponent, DbxFirebaseDevelopmentSchedulerService, DbxFirebaseDevelopmentSchedulerWidgetComponent, DbxFirebaseDevelopmentService, DbxFirebaseDevelopmentWidgetService, DbxFirebaseDocumentAuthIdDirective, DbxFirebaseDocumentLoaderInstance, DbxFirebaseDocumentStoreDirective, DbxFirebaseDocumentStoreRouteIdDirective, DbxFirebaseDocumentStoreRouteKeyDirective, DbxFirebaseEmailFormComponent, DbxFirebaseEmailRecoveryFormComponent, DbxFirebaseEmulatorModule, DbxFirebaseEmulatorService, DbxFirebaseFirestoreCollectionModule, DbxFirebaseFunctionsModule, DbxFirebaseIdRouteParamRedirectInstance, DbxFirebaseInContextFirebaseModelServiceInstance, DbxFirebaseLoginAnonymousComponent, DbxFirebaseLoginAppleComponent, DbxFirebaseLoginButtonComponent, DbxFirebaseLoginButtonContainerComponent, DbxFirebaseLoginComponent, DbxFirebaseLoginContext, DbxFirebaseLoginContextBackButtonComponent, DbxFirebaseLoginContextDirective, DbxFirebaseLoginEmailComponent, DbxFirebaseLoginEmailContentComponent, DbxFirebaseLoginFacebookComponent, DbxFirebaseLoginGitHubComponent, DbxFirebaseLoginGoogleComponent, DbxFirebaseLoginListComponent, DbxFirebaseLoginMicrosoftComponent, DbxFirebaseLoginModule, DbxFirebaseLoginModuleRootConfig, DbxFirebaseLoginTermsComponent, DbxFirebaseLoginTermsSimpleComponent, DbxFirebaseLoginTwitterComponent, DbxFirebaseModelContextService, DbxFirebaseModelModule, DbxFirebaseModelStoreModule, DbxFirebaseModelTrackerService, DbxFirebaseModelTypeInstanceComponent, DbxFirebaseModelTypeInstanceViewComponent, DbxFirebaseModelTypeInstanceViewItemComponent, DbxFirebaseModelTypesModule, DbxFirebaseModelTypesService, DbxFirebaseModelTypesServiceConfig, DbxFirebaseModelTypesServiceInstance, DbxFirebaseModule, DbxFirebaseParsedEmulatorsConfig, DbxFirebaseRegisterComponent, DbxFirebaseRegisterEmailComponent, DbxFirebaseStorageModule, DbxFirebaseStorageService, DbxFirebaseSystemStateCollectionStoreDirective, DbxFirebaseSystemStateDocumentStoreDirective, DbxFirestoreContextService, DbxLimitedFirebaseDocumentLoaderInstance, DbxfirebaseModelViewedEventDirective, OAUTH_FIREBASE_LOGIN_METHOD_CATEGORY, SystemStateCollectionStore, SystemStateDocumentStore, authRolesObsWithClaimsService, authUserInfoFromAuthUser, authUserStateFromFirebaseAuthServiceFunction, dbxFirebaseCollectionChangeTrigger, dbxFirebaseCollectionChangeTriggerForStore, dbxFirebaseCollectionChangeTriggerForWatcher, dbxFirebaseCollectionChangeWatcher, dbxFirebaseCollectionLoaderInstance, dbxFirebaseCollectionLoaderInstanceWithCollection, dbxFirebaseDocumentLoaderInstance, dbxFirebaseDocumentLoaderInstanceWithAccessor, dbxFirebaseIdRouteParamRedirect, dbxFirebaseInContextFirebaseModelServiceInstanceFactory, dbxFirebaseKeyRouteParamRedirect, dbxFirebaseModelContextServiceInfoInstanceFactory, dbxFirebaseModelTypesServiceInstancePairForKeysFactory, dbxFirebaseStorageModuleContextConfigFactory, dbxLimitedFirebaseDocumentLoaderInstance, dbxLimitedFirebaseDocumentLoaderInstanceWithAccessor, defaultDbxFirebaseAuthServiceDelegateWithClaimsService, defaultFirebaseAuthLoginProvidersFactory, developmentFirebaseServerSchedulerWidgetEntry, enableAppCheckDebugTokenGeneration, firebaseAuthTokenFromUser, firebaseContextServiceEntityMap, firebaseDocumentStoreCreateFunction, firebaseDocumentStoreCrudFunction, firebaseDocumentStoreDeleteFunction, firebaseDocumentStoreReadFunction, firebaseDocumentStoreUpdateFunction, modelDoesNotExistError, provideDbxFirebaseCollectionStoreDirective, provideDbxFirebaseCollectionWithParentStoreDirective, provideDbxFirebaseDocumentStoreDirective, provideSystemStateFirestoreCollections, readDbxAnalyticsUserPropertiesFromAuthUserInfo, readValueFromIdToken, setParentStoreEffect, stateFromTokenForLoggedInUserFunction };
4353
+ export { AbstractConfiguredDbxFirebaseLoginButtonDirective, AbstractDbxFirebaseCollectionStore, AbstractDbxFirebaseCollectionWithParentStore, AbstractDbxFirebaseDocumentStore, AbstractDbxFirebaseDocumentWithParentStore, AbstractRootSingleItemDbxFirebaseDocument, AbstractSingleItemDbxFirebaseDocument, AbstractSystemStateDocumentStoreAccessor, DBX_FIREBASE_ID_ROUTER_PARAM_DEFAULT_ID_PARAM_KEY, DBX_FIREBASE_ID_ROUTER_PARAM_DEFAULT_KEY_PARAM_KEY, DBX_FIREBASE_ID_ROUTER_PARAM_DEFAULT_USE_PARAM_VALUE, DBX_FIREBASE_MODEL_DOES_NOT_EXIST_ERROR, DBX_FIREBASE_OPTIONS_TOKEN, DBX_FIREBASE_STORAGE_CONTEXT_CONFIG_TOKEN, DBX_FIREBASE_STORAGE_CONTEXT_TOKEN, DBX_FIRESTORE_CONTEXT_TOKEN, DEFAULT_CONFIGURED_DBX_FIREBASE_LOGIN_BUTTON_TEMPLATE, DEFAULT_DBX_FIREBASE_ANALYTICS_USER_PROPERTIES_FACTORY, DEFAULT_DBX_FIREBASE_AUTH_SERVICE_DELEGATE, DEFAULT_FIREBASE_AUTH_LOGIN_PASSWORD_CONFIG, DEFAULT_FIREBASE_AUTH_LOGIN_PASSWORD_CONFIG_TOKEN, DEFAULT_FIREBASE_AUTH_LOGIN_PROVIDERS_TOKEN, DEFAULT_FIREBASE_AUTH_LOGIN_TERMS_COMPONENT_CLASS_TOKEN, DEFAULT_FIREBASE_COLLECTION_CHANGE_TRIGGER_FUNCTION, DEFAULT_FIREBASE_DEVELOPMENT_ENABLED_TOKEN, DEFAULT_FIREBASE_DEVELOPMENT_POPUP_KEY, DEFAULT_FIREBASE_DEVELOPMENT_SCHEDULER_ENABLED_TOKEN, DEFAULT_FIREBASE_DEVELOPMENT_WIDGET_PROVIDERS_TOKEN, DEFAULT_FIREBASE_LOGIN_METHOD_CATEGORY, DEVELOPMENT_FIREBASE_SERVER_SCHEDULER_WIDGET_KEY, DbxFirebaseAnalyticsUserEventsListener, DbxFirebaseAnalyticsUserSource, DbxFirebaseAppCheckHttpInterceptor, DbxFirebaseAuthContextInfo, DbxFirebaseAuthLoginService, DbxFirebaseAuthModule, DbxFirebaseAuthService, DbxFirebaseAuthServiceDelegate, DbxFirebaseCollectionChangeDirective, DbxFirebaseCollectionChangeTriggerInstance, DbxFirebaseCollectionChangeWatcherInstance, DbxFirebaseCollectionHasChangeDirective, DbxFirebaseCollectionListDirective, DbxFirebaseCollectionLoaderInstance, DbxFirebaseCollectionStoreDirective, DbxFirebaseCollectionWithParentStoreDirective, DbxFirebaseDefaultAppCheckProviderModule, DbxFirebaseDefaultAuthProviderModule, DbxFirebaseDefaultFirebaseProvidersModule, DbxFirebaseDefaultFirestoreProviderModule, DbxFirebaseDefaultFunctionsProviderModule, DbxFirebaseDefaultStorageProviderModule, DbxFirebaseDevelopmentDirective, DbxFirebaseDevelopmentModule, DbxFirebaseDevelopmentModuleRootConfig, DbxFirebaseDevelopmentPopupComponent, DbxFirebaseDevelopmentPopupContentComponent, DbxFirebaseDevelopmentPopupContentFormComponent, DbxFirebaseDevelopmentSchedulerListComponent, DbxFirebaseDevelopmentSchedulerListViewComponent, DbxFirebaseDevelopmentSchedulerListViewItemComponent, DbxFirebaseDevelopmentSchedulerService, DbxFirebaseDevelopmentSchedulerWidgetComponent, DbxFirebaseDevelopmentService, DbxFirebaseDevelopmentWidgetService, DbxFirebaseDocumentAuthIdDirective, DbxFirebaseDocumentLoaderInstance, DbxFirebaseDocumentStoreDirective, DbxFirebaseDocumentStoreRouteIdDirective, DbxFirebaseDocumentStoreRouteKeyDirective, DbxFirebaseEmailFormComponent, DbxFirebaseEmailRecoveryFormComponent, DbxFirebaseEmulatorModule, DbxFirebaseEmulatorService, DbxFirebaseFirestoreCollectionModule, DbxFirebaseFunctionsModule, DbxFirebaseIdRouteParamRedirectInstance, DbxFirebaseInContextFirebaseModelServiceInstance, DbxFirebaseLoginAnonymousComponent, DbxFirebaseLoginAppleComponent, DbxFirebaseLoginButtonComponent, DbxFirebaseLoginButtonContainerComponent, DbxFirebaseLoginComponent, DbxFirebaseLoginContext, DbxFirebaseLoginContextBackButtonComponent, DbxFirebaseLoginContextDirective, DbxFirebaseLoginEmailComponent, DbxFirebaseLoginEmailContentComponent, DbxFirebaseLoginFacebookComponent, DbxFirebaseLoginGitHubComponent, DbxFirebaseLoginGoogleComponent, DbxFirebaseLoginListComponent, DbxFirebaseLoginMicrosoftComponent, DbxFirebaseLoginModule, DbxFirebaseLoginModuleRootConfig, DbxFirebaseLoginTermsComponent, DbxFirebaseLoginTermsSimpleComponent, DbxFirebaseLoginTwitterComponent, DbxFirebaseModelContextService, DbxFirebaseModelModule, DbxFirebaseModelStoreModule, DbxFirebaseModelTrackerService, DbxFirebaseModelTypeInstanceComponent, DbxFirebaseModelTypeInstanceViewComponent, DbxFirebaseModelTypeInstanceViewItemComponent, DbxFirebaseModelTypesModule, DbxFirebaseModelTypesService, DbxFirebaseModelTypesServiceConfig, DbxFirebaseModelTypesServiceInstance, DbxFirebaseModule, DbxFirebaseParsedEmulatorsConfig, DbxFirebaseRegisterComponent, DbxFirebaseRegisterEmailComponent, DbxFirebaseStorageModule, DbxFirebaseStorageService, DbxFirebaseSystemStateCollectionStoreDirective, DbxFirebaseSystemStateDocumentStoreDirective, DbxFirestoreContextService, DbxLimitedFirebaseDocumentLoaderInstance, DbxfirebaseModelViewedEventDirective, OAUTH_FIREBASE_LOGIN_METHOD_CATEGORY, SystemStateCollectionStore, SystemStateDocumentStore, authRolesObsWithClaimsService, authUserInfoFromAuthUser, authUserStateFromFirebaseAuthServiceFunction, dbxFirebaseCollectionChangeTrigger, dbxFirebaseCollectionChangeTriggerForStore, dbxFirebaseCollectionChangeTriggerForWatcher, dbxFirebaseCollectionChangeWatcher, dbxFirebaseCollectionLoaderInstance, dbxFirebaseCollectionLoaderInstanceWithCollection, dbxFirebaseDocumentLoaderInstance, dbxFirebaseDocumentLoaderInstanceWithAccessor, dbxFirebaseIdRouteParamRedirect, dbxFirebaseInContextFirebaseModelServiceInstanceFactory, dbxFirebaseKeyRouteParamRedirect, dbxFirebaseModelContextServiceInfoInstanceFactory, dbxFirebaseModelTypesServiceInstancePairForKeysFactory, dbxFirebaseStorageModuleContextConfigFactory, dbxLimitedFirebaseDocumentLoaderInstance, dbxLimitedFirebaseDocumentLoaderInstanceWithAccessor, defaultDbxFirebaseAuthServiceDelegateWithClaimsService, defaultFirebaseAuthLoginProvidersFactory, developmentFirebaseServerSchedulerWidgetEntry, enableAppCheckDebugTokenGeneration, firebaseAuthTokenFromUser, firebaseContextServiceEntityMap, firebaseDocumentStoreCreateFunction, firebaseDocumentStoreCrudFunction, firebaseDocumentStoreDeleteFunction, firebaseDocumentStoreReadFunction, firebaseDocumentStoreUpdateFunction, modelDoesNotExistError, provideDbxFirebaseCollectionStoreDirective, provideDbxFirebaseCollectionWithParentStoreDirective, provideDbxFirebaseDocumentStoreDirective, provideSystemStateFirestoreCollections, readDbxAnalyticsUserPropertiesFromAuthUserInfo, readValueFromIdToken, setParentStoreEffect, stateFromTokenForLoggedInUserFunction };
4318
4354
  //# sourceMappingURL=dereekb-dbx-firebase.mjs.map