@dereekb/dbx-core 9.5.5 → 9.6.0

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.
@@ -7,7 +7,7 @@ import { timeoutStartWith } from '@dereekb/rxjs';
7
7
  * This generates a TransitionHookFn that can be used with redirecting routes.
8
8
  */
9
9
  export function makeAuthTransitionHook(config) {
10
- const { defaultRedirectTarget, errorRedirectTarget = defaultRedirectTarget } = config;
10
+ const { defaultRedirectTarget, errorRedirectTarget = defaultRedirectTarget, timeoutTime = 1000 } = config;
11
11
  // https://ui-router.github.io/ng2/docs/latest/modules/transition.html#hookresult
12
12
  const assertIsAuthenticated = (transition) => {
13
13
  const injector = transition.injector();
@@ -46,8 +46,8 @@ export function makeAuthTransitionHook(config) {
46
46
  return redirectToObs;
47
47
  }
48
48
  const resultObs = decisionObs.pipe(
49
- // after 10 seconds of no transition working, redirect with a false decision
50
- timeoutStartWith(false, 10 * 1000), first(), switchMap((decision) => {
49
+ // after the timeoutTime seconds of no transition working, redirect with a false decision
50
+ timeoutStartWith(false, timeoutTime), first(), switchMap((decision) => {
51
51
  if (typeof decision === 'boolean') {
52
52
  if (decision) {
53
53
  return of(true);
@@ -61,11 +61,11 @@ export function makeAuthTransitionHook(config) {
61
61
  return of($state.target(asSegueRefString(segueRef.ref), segueRef.refParams, segueRef.refOptions));
62
62
  }
63
63
  }), catchError((x) => {
64
- console.warn('Encountered error in auth transition hook.', x);
64
+ console.warn(`Encountered error in auth transition hook. Attempting redirect to ${errorRedirectTarget}.`, x);
65
65
  return of($state.target(errorRedirectTarget, { location: true })); // Redirect to home
66
66
  }));
67
67
  return firstValueFrom(resultObs);
68
68
  };
69
69
  return assertIsAuthenticated;
70
70
  }
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9vay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1jb3JlL3NyYy9saWIvYXV0aC9yb3V0ZXIvcHJvdmlkZXIvdWlyb3V0ZXIvaG9vay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFjLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDekYsT0FBTyxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsRUFBZ0MsTUFBTSw0QkFBNEIsQ0FBQztBQUN4RyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDL0QsT0FBTyxFQUE0QixrQkFBa0IsRUFBRSxRQUFRLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFFOUYsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBOENqRDs7R0FFRztBQUNILE1BQU0sVUFBVSxzQkFBc0IsQ0FBQyxNQUFnQztJQUNyRSxNQUFNLEVBQUUscUJBQXFCLEVBQUUsbUJBQW1CLEdBQUcscUJBQXFCLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFFdEYsaUZBQWlGO0lBQ2pGLE1BQU0scUJBQXFCLEdBQXFCLENBQUMsVUFBc0IsRUFBYyxFQUFFO1FBQ3JGLE1BQU0sUUFBUSxHQUFHLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN2QyxNQUFNLFdBQVcsR0FBbUIsUUFBUSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNqRSxNQUFNLE1BQU0sR0FBaUIsVUFBVSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUM7UUFDNUQsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxXQUFXLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFFL0UsU0FBUyxXQUFXO1lBQ2xCLE1BQU0sU0FBUyxHQUE0QixVQUFVLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUMsSUFBSSxDQUFDO1lBQ2pGLE1BQU0sVUFBVSxHQUFHLFNBQVMsRUFBRSxVQUFVLENBQUM7WUFFekMsSUFBSSxhQUFxQyxDQUFDO1lBRTFDLElBQUksVUFBVSxFQUFFO2dCQUNkLElBQUksU0FBMEQsQ0FBQztnQkFFL0QsSUFBSSxRQUFRLENBQStCLFVBQVUsQ0FBQyxFQUFFO29CQUN0RCxTQUFTLEdBQUcsa0JBQWtCLENBQUMsVUFBVSxFQUFFLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQXVDLENBQUMsQ0FBQztpQkFDeEg7cUJBQU07b0JBQ0wsU0FBUyxHQUFHLEVBQUUsQ0FBQyxVQUEwQyxDQUFDLENBQUM7aUJBQzVEO2dCQUVELGFBQWEsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUM1QixHQUFHLENBQUMsQ0FBQyxhQUFrRCxFQUFFLEVBQUU7b0JBQ3pELE1BQU0sUUFBUSxHQUFHLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQztvQkFFM0MsSUFBSSxjQUFjLENBQUM7b0JBQ25CLElBQUksY0FBYyxDQUFDO29CQUVuQixJQUFJLFFBQVEsRUFBRTt3QkFDWixjQUFjLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQzt3QkFDOUIsY0FBYyxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUM7cUJBQ3JDO29CQUVELElBQUksQ0FBQyxjQUFjLEVBQUU7d0JBQ25CLGNBQWMsR0FBRyxxQkFBcUIsQ0FBQztxQkFDeEM7b0JBRUQsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxjQUFjLENBQUMsQ0FBQztnQkFDdkQsQ0FBQyxDQUFDLENBQ0gsQ0FBQzthQUNIO2lCQUFNO2dCQUNMLGFBQWEsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUM7YUFDMUQ7WUFFRCxPQUFPLGFBQWEsQ0FBQztRQUN2QixDQUFDO1FBRUQsTUFBTSxTQUFTLEdBQUcsV0FBVyxDQUFDLElBQUk7UUFDaEMsNEVBQTRFO1FBQzVFLGdCQUFnQixDQUFDLEtBQStCLEVBQUUsRUFBRSxHQUFHLElBQUksQ0FBQyxFQUM1RCxLQUFLLEVBQUUsRUFDUCxTQUFTLENBQUMsQ0FBQyxRQUFnQyxFQUEwQixFQUFFO1lBQ3JFLElBQUksT0FBTyxRQUFRLEtBQUssU0FBUyxFQUFFO2dCQUNqQyxJQUFJLFFBQVEsRUFBRTtvQkFDWixPQUFPLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQztpQkFDakI7cUJBQU07b0JBQ0wsT0FBTyxXQUFXLEVBQUUsQ0FBQztpQkFDdEI7YUFDRjtpQkFBTTtnQkFDTCxNQUFNLFFBQVEsR0FBRyxVQUFVLENBQUMsUUFBUSxDQUFDLENBQUM7Z0JBQ3RDLE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxTQUFzQixFQUFFLFFBQVEsQ0FBQyxVQUErQixDQUFDLENBQUMsQ0FBQzthQUNySTtRQUNILENBQUMsQ0FBQyxFQUNGLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ2YsT0FBTyxDQUFDLElBQUksQ0FBQyw0Q0FBNEMsRUFBRSxDQUFDLENBQUMsQ0FBQztZQUM5RCxPQUFPLEVBQUUsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLG1CQUFtQixFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLG1CQUFtQjtRQUN4RixDQUFDLENBQUMsQ0FDSCxDQUFDO1FBRUYsT0FBTyxjQUFjLENBQUMsU0FBUyxDQUFlLENBQUM7SUFDakQsQ0FBQyxDQUFDO0lBRUYsT0FBTyxxQkFBcUIsQ0FBQztBQUMvQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVHJhbnNpdGlvbkhvb2tGbiwgVHJhbnNpdGlvbiwgSG9va1Jlc3VsdCwgU3RhdGVTZXJ2aWNlLCBVSUluamVjdG9yLCBUcmFuc2l0aW9uT3B0aW9ucywgUmF3UGFyYW1zIH0gZnJvbSAnQHVpcm91dGVyL2NvcmUnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgbWFwLCBmaXJzdCwgZmlyc3RWYWx1ZUZyb20sIE9ic2VydmFibGUsIG9mLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGFzU2VndWVSZWYsIGFzU2VndWVSZWZTdHJpbmcsIFNlZ3VlUmVmT3JTZWd1ZVJlZlJvdXRlckxpbmsgfSBmcm9tICcuLy4uLy4uLy4uLy4uL3JvdXRlci9zZWd1ZSc7XG5pbXBvcnQgeyBEYnhBdXRoU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL3NlcnZpY2UvYXV0aC5zZXJ2aWNlJztcbmltcG9ydCB7IEZhY3RvcnlXaXRoUmVxdWlyZWRJbnB1dCwgZ2V0VmFsdWVGcm9tR2V0dGVyLCBpc0dldHRlciwgTWF5YmUgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0aW1lb3V0U3RhcnRXaXRoIH0gZnJvbSAnQGRlcmVla2Ivcnhqcyc7XG5cbi8qKlxuICogYXV0aFRyYW5zaXRpb25Ib29rRm4oKSBjb25maWd1cmF0aW9uLiBUaGUgdmFsdWVzIGFyZSBoYW5kbGVkIGFzOlxuICogLSB0cnVlOiBjb250aW51ZSB0byB0aGUgc3RhdGUuXG4gKiAtIGZhbHNlOiByZWRpcmVjdCB0byB0aGUgbG9naW4gcGFnZS5cbiAqIC0gU3RhdGVPck5hbWU6IHJlZGlyZWN0IHRvIHRoZSB0YXJnZXQgcGFnZSBpbnN0ZWFkLlxuICovXG5leHBvcnQgdHlwZSBBdXRoVHJhbnNpdGlvbkRlY2lzaW9uID0gdHJ1ZSB8IGZhbHNlIHwgU2VndWVSZWZPclNlZ3VlUmVmUm91dGVyTGluaztcblxuZXhwb3J0IGludGVyZmFjZSBBdXRoVHJhbnNpdGlvbkRlY2lzaW9uR2V0dGVySW5wdXQge1xuICByZWFkb25seSB0cmFuc2l0aW9uOiBUcmFuc2l0aW9uO1xuICByZWFkb25seSBpbmplY3RvcjogSW5qZWN0b3I7XG4gIHJlYWRvbmx5IGF1dGhTZXJ2aWNlOiBEYnhBdXRoU2VydmljZTtcbn1cblxuZXhwb3J0IHR5cGUgQXV0aFRyYW5zaXRpb25SZWRpcmVjdFRhcmdldCA9IE9ic2VydmFibGU8TWF5YmU8U2VndWVSZWZPclNlZ3VlUmVmUm91dGVyTGluaz4+O1xuZXhwb3J0IHR5cGUgQXV0aFRyYW5zaXRpb25SZWRpcmVjdFRhcmdldEdldHRlciA9IEZhY3RvcnlXaXRoUmVxdWlyZWRJbnB1dDxBdXRoVHJhbnNpdGlvblJlZGlyZWN0VGFyZ2V0LCBBdXRoVHJhbnNpdGlvbkRlY2lzaW9uR2V0dGVySW5wdXQ+O1xuZXhwb3J0IHR5cGUgQXV0aFRyYW5zaXRpb25SZWRpcmVjdFRhcmdldE9yR2V0dGVyID0gTWF5YmU8U2VndWVSZWZPclNlZ3VlUmVmUm91dGVyTGluaz4gfCBBdXRoVHJhbnNpdGlvblJlZGlyZWN0VGFyZ2V0R2V0dGVyO1xuXG5leHBvcnQgaW50ZXJmYWNlIEF1dGhUcmFuc2l0aW9uSG9va09wdGlvbnMge1xuICAvKipcbiAgICogVGhlIHN0YXRlIHRvIHJlZGlyZWN0IHRoZSB1c2VyIHRvIHdoZW4gdGhlaXIgYXV0aCBmYWlscy5cbiAgICovXG4gIGRlZmF1bHRSZWRpcmVjdFRhcmdldDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RhdGUgdG8gcmVkaXJlY3QgdGhlIHVzZXIgdG8uIERlZmF1bHRzIHRvIGRlZmF1bHRSZWRpcmVjdFRhcmdldC5cbiAgICovXG4gIGVycm9yUmVkaXJlY3RUYXJnZXQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXV0aFRyYW5zaXRpb25Ib29rQ29uZmlnIGV4dGVuZHMgQXV0aFRyYW5zaXRpb25Ib29rT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBDcmVhdGVzIHRoZSBkZWNpc2lvbiBvYnNlcnZhYmxlIGZvciB0aGUgdHJhbnNpdGlvbiB0aGF0IGRlY2lkZXMgd2hldGhlciBvciBub3QgdG8gcmVkaXJlY3Qgb3IgY29udGludWUuXG4gICAqL1xuICBtYWtlRGVjaXNpb25zT2JzOiAodHJhbnNpdGlvbjogVHJhbnNpdGlvbiwgYXV0aFNlcnZpY2U6IERieEF1dGhTZXJ2aWNlLCBpbmplY3RvcjogVUlJbmplY3RvcikgPT4gT2JzZXJ2YWJsZTxBdXRoVHJhbnNpdGlvbkRlY2lzaW9uPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBBdXRoVHJhbnNpdGlvblN0YXRlRGF0YSB7XG4gIC8qKlxuICAgKiBPcHRpb25hbCBnZXR0ZXIvZGVjaXNpb24gbWFrZXIgd2hlbiBhIHJvbGUgbmVlZHMgdG8gYmVcbiAgICovXG4gIHJlZGlyZWN0VG8/OiBBdXRoVHJhbnNpdGlvblJlZGlyZWN0VGFyZ2V0T3JHZXR0ZXI7XG59XG5cbi8qKlxuICogVGhpcyBnZW5lcmF0ZXMgYSBUcmFuc2l0aW9uSG9va0ZuIHRoYXQgY2FuIGJlIHVzZWQgd2l0aCByZWRpcmVjdGluZyByb3V0ZXMuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBtYWtlQXV0aFRyYW5zaXRpb25Ib29rKGNvbmZpZzogQXV0aFRyYW5zaXRpb25Ib29rQ29uZmlnKTogVHJhbnNpdGlvbkhvb2tGbiB7XG4gIGNvbnN0IHsgZGVmYXVsdFJlZGlyZWN0VGFyZ2V0LCBlcnJvclJlZGlyZWN0VGFyZ2V0ID0gZGVmYXVsdFJlZGlyZWN0VGFyZ2V0IH0gPSBjb25maWc7XG5cbiAgLy8gaHR0cHM6Ly91aS1yb3V0ZXIuZ2l0aHViLmlvL25nMi9kb2NzL2xhdGVzdC9tb2R1bGVzL3RyYW5zaXRpb24uaHRtbCNob29rcmVzdWx0XG4gIGNvbnN0IGFzc2VydElzQXV0aGVudGljYXRlZDogVHJhbnNpdGlvbkhvb2tGbiA9ICh0cmFuc2l0aW9uOiBUcmFuc2l0aW9uKTogSG9va1Jlc3VsdCA9PiB7XG4gICAgY29uc3QgaW5qZWN0b3IgPSB0cmFuc2l0aW9uLmluamVjdG9yKCk7XG4gICAgY29uc3QgYXV0aFNlcnZpY2U6IERieEF1dGhTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KERieEF1dGhTZXJ2aWNlKTtcbiAgICBjb25zdCAkc3RhdGU6IFN0YXRlU2VydmljZSA9IHRyYW5zaXRpb24ucm91dGVyLnN0YXRlU2VydmljZTtcbiAgICBjb25zdCBkZWNpc2lvbk9icyA9IGNvbmZpZy5tYWtlRGVjaXNpb25zT2JzKHRyYW5zaXRpb24sIGF1dGhTZXJ2aWNlLCBpbmplY3Rvcik7XG5cbiAgICBmdW5jdGlvbiByZWRpcmVjdE91dCgpOiBPYnNlcnZhYmxlPEhvb2tSZXN1bHQ+IHtcbiAgICAgIGNvbnN0IHN0YXRlRGF0YTogQXV0aFRyYW5zaXRpb25TdGF0ZURhdGEgPSB0cmFuc2l0aW9uLnRhcmdldFN0YXRlKCkuc3RhdGUoKS5kYXRhO1xuICAgICAgY29uc3QgcmVkaXJlY3RUbyA9IHN0YXRlRGF0YT8ucmVkaXJlY3RUbztcblxuICAgICAgbGV0IHJlZGlyZWN0VG9PYnM6IE9ic2VydmFibGU8SG9va1Jlc3VsdD47XG5cbiAgICAgIGlmIChyZWRpcmVjdFRvKSB7XG4gICAgICAgIGxldCByZXN1bHRPYnM6IE9ic2VydmFibGU8TWF5YmU8U2VndWVSZWZPclNlZ3VlUmVmUm91dGVyTGluaz4+O1xuXG4gICAgICAgIGlmIChpc0dldHRlcjxBdXRoVHJhbnNpdGlvblJlZGlyZWN0VGFyZ2V0PihyZWRpcmVjdFRvKSkge1xuICAgICAgICAgIHJlc3VsdE9icyA9IGdldFZhbHVlRnJvbUdldHRlcihyZWRpcmVjdFRvLCB7IGF1dGhTZXJ2aWNlLCBpbmplY3RvciwgdHJhbnNpdGlvbiB9IGFzIEF1dGhUcmFuc2l0aW9uRGVjaXNpb25HZXR0ZXJJbnB1dCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmVzdWx0T2JzID0gb2YocmVkaXJlY3RUbyBhcyBTZWd1ZVJlZk9yU2VndWVSZWZSb3V0ZXJMaW5rKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJlZGlyZWN0VG9PYnMgPSByZXN1bHRPYnMucGlwZShcbiAgICAgICAgICBtYXAoKGlucHV0U3RhdGVSZWY6IE1heWJlPFNlZ3VlUmVmT3JTZWd1ZVJlZlJvdXRlckxpbms+KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzdGF0ZVJlZiA9IGFzU2VndWVSZWYoaW5wdXRTdGF0ZVJlZik7XG5cbiAgICAgICAgICAgIGxldCByZWRpcmVjdFRhcmdldDtcbiAgICAgICAgICAgIGxldCByZWRpcmVjdFBhcmFtcztcblxuICAgICAgICAgICAgaWYgKHN0YXRlUmVmKSB7XG4gICAgICAgICAgICAgIHJlZGlyZWN0VGFyZ2V0ID0gc3RhdGVSZWYucmVmO1xuICAgICAgICAgICAgICByZWRpcmVjdFBhcmFtcyA9IHN0YXRlUmVmLnJlZlBhcmFtcztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCFyZWRpcmVjdFRhcmdldCkge1xuICAgICAgICAgICAgICByZWRpcmVjdFRhcmdldCA9IGRlZmF1bHRSZWRpcmVjdFRhcmdldDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuICRzdGF0ZS50YXJnZXQocmVkaXJlY3RUYXJnZXQsIHJlZGlyZWN0UGFyYW1zKTtcbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVkaXJlY3RUb09icyA9IG9mKCRzdGF0ZS50YXJnZXQoZGVmYXVsdFJlZGlyZWN0VGFyZ2V0KSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByZWRpcmVjdFRvT2JzO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc3VsdE9icyA9IGRlY2lzaW9uT2JzLnBpcGUoXG4gICAgICAvLyBhZnRlciAxMCBzZWNvbmRzIG9mIG5vIHRyYW5zaXRpb24gd29ya2luZywgcmVkaXJlY3Qgd2l0aCBhIGZhbHNlIGRlY2lzaW9uXG4gICAgICB0aW1lb3V0U3RhcnRXaXRoKGZhbHNlIGFzIEF1dGhUcmFuc2l0aW9uRGVjaXNpb24sIDEwICogMTAwMCksXG4gICAgICBmaXJzdCgpLFxuICAgICAgc3dpdGNoTWFwKChkZWNpc2lvbjogQXV0aFRyYW5zaXRpb25EZWNpc2lvbik6IE9ic2VydmFibGU8SG9va1Jlc3VsdD4gPT4ge1xuICAgICAgICBpZiAodHlwZW9mIGRlY2lzaW9uID09PSAnYm9vbGVhbicpIHtcbiAgICAgICAgICBpZiAoZGVjaXNpb24pIHtcbiAgICAgICAgICAgIHJldHVybiBvZih0cnVlKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHJlZGlyZWN0T3V0KCk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IHNlZ3VlUmVmID0gYXNTZWd1ZVJlZihkZWNpc2lvbik7XG4gICAgICAgICAgcmV0dXJuIG9mKCRzdGF0ZS50YXJnZXQoYXNTZWd1ZVJlZlN0cmluZyhzZWd1ZVJlZi5yZWYpLCBzZWd1ZVJlZi5yZWZQYXJhbXMgYXMgUmF3UGFyYW1zLCBzZWd1ZVJlZi5yZWZPcHRpb25zIGFzIFRyYW5zaXRpb25PcHRpb25zKSk7XG4gICAgICAgIH1cbiAgICAgIH0pLFxuICAgICAgY2F0Y2hFcnJvcigoeCkgPT4ge1xuICAgICAgICBjb25zb2xlLndhcm4oJ0VuY291bnRlcmVkIGVycm9yIGluIGF1dGggdHJhbnNpdGlvbiBob29rLicsIHgpO1xuICAgICAgICByZXR1cm4gb2YoJHN0YXRlLnRhcmdldChlcnJvclJlZGlyZWN0VGFyZ2V0LCB7IGxvY2F0aW9uOiB0cnVlIH0pKTsgLy8gUmVkaXJlY3QgdG8gaG9tZVxuICAgICAgfSlcbiAgICApO1xuXG4gICAgcmV0dXJuIGZpcnN0VmFsdWVGcm9tKHJlc3VsdE9icykgYXMgSG9va1Jlc3VsdDtcbiAgfTtcblxuICByZXR1cm4gYXNzZXJ0SXNBdXRoZW50aWNhdGVkO1xufVxuIl19
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9vay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC1jb3JlL3NyYy9saWIvYXV0aC9yb3V0ZXIvcHJvdmlkZXIvdWlyb3V0ZXIvaG9vay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLEdBQUcsRUFBRSxLQUFLLEVBQUUsY0FBYyxFQUFjLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDekYsT0FBTyxFQUFFLFVBQVUsRUFBRSxnQkFBZ0IsRUFBZ0MsTUFBTSw0QkFBNEIsQ0FBQztBQUN4RyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDL0QsT0FBTyxFQUE0QixrQkFBa0IsRUFBRSxRQUFRLEVBQXVCLE1BQU0sZUFBZSxDQUFDO0FBRTVHLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQW1EakQ7O0dBRUc7QUFDSCxNQUFNLFVBQVUsc0JBQXNCLENBQUMsTUFBZ0M7SUFDckUsTUFBTSxFQUFFLHFCQUFxQixFQUFFLG1CQUFtQixHQUFHLHFCQUFxQixFQUFFLFdBQVcsR0FBRyxJQUFJLEVBQUUsR0FBRyxNQUFNLENBQUM7SUFFMUcsaUZBQWlGO0lBQ2pGLE1BQU0scUJBQXFCLEdBQXFCLENBQUMsVUFBc0IsRUFBYyxFQUFFO1FBQ3JGLE1BQU0sUUFBUSxHQUFHLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN2QyxNQUFNLFdBQVcsR0FBbUIsUUFBUSxDQUFDLEdBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNqRSxNQUFNLE1BQU0sR0FBaUIsVUFBVSxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUM7UUFDNUQsTUFBTSxXQUFXLEdBQUcsTUFBTSxDQUFDLGdCQUFnQixDQUFDLFVBQVUsRUFBRSxXQUFXLEVBQUUsUUFBUSxDQUFDLENBQUM7UUFFL0UsU0FBUyxXQUFXO1lBQ2xCLE1BQU0sU0FBUyxHQUE0QixVQUFVLENBQUMsV0FBVyxFQUFFLENBQUMsS0FBSyxFQUFFLENBQUMsSUFBSSxDQUFDO1lBQ2pGLE1BQU0sVUFBVSxHQUFHLFNBQVMsRUFBRSxVQUFVLENBQUM7WUFFekMsSUFBSSxhQUFxQyxDQUFDO1lBRTFDLElBQUksVUFBVSxFQUFFO2dCQUNkLElBQUksU0FBMEQsQ0FBQztnQkFFL0QsSUFBSSxRQUFRLENBQStCLFVBQVUsQ0FBQyxFQUFFO29CQUN0RCxTQUFTLEdBQUcsa0JBQWtCLENBQUMsVUFBVSxFQUFFLEVBQUUsV0FBVyxFQUFFLFFBQVEsRUFBRSxVQUFVLEVBQXVDLENBQUMsQ0FBQztpQkFDeEg7cUJBQU07b0JBQ0wsU0FBUyxHQUFHLEVBQUUsQ0FBQyxVQUEwQyxDQUFDLENBQUM7aUJBQzVEO2dCQUVELGFBQWEsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUM1QixHQUFHLENBQUMsQ0FBQyxhQUFrRCxFQUFFLEVBQUU7b0JBQ3pELE1BQU0sUUFBUSxHQUFHLFVBQVUsQ0FBQyxhQUFhLENBQUMsQ0FBQztvQkFFM0MsSUFBSSxjQUFjLENBQUM7b0JBQ25CLElBQUksY0FBYyxDQUFDO29CQUVuQixJQUFJLFFBQVEsRUFBRTt3QkFDWixjQUFjLEdBQUcsUUFBUSxDQUFDLEdBQUcsQ0FBQzt3QkFDOUIsY0FBYyxHQUFHLFFBQVEsQ0FBQyxTQUFTLENBQUM7cUJBQ3JDO29CQUVELElBQUksQ0FBQyxjQUFjLEVBQUU7d0JBQ25CLGNBQWMsR0FBRyxxQkFBcUIsQ0FBQztxQkFDeEM7b0JBRUQsT0FBTyxNQUFNLENBQUMsTUFBTSxDQUFDLGNBQWMsRUFBRSxjQUFjLENBQUMsQ0FBQztnQkFDdkQsQ0FBQyxDQUFDLENBQ0gsQ0FBQzthQUNIO2lCQUFNO2dCQUNMLGFBQWEsR0FBRyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUM7YUFDMUQ7WUFFRCxPQUFPLGFBQWEsQ0FBQztRQUN2QixDQUFDO1FBRUQsTUFBTSxTQUFTLEdBQUcsV0FBVyxDQUFDLElBQUk7UUFDaEMseUZBQXlGO1FBQ3pGLGdCQUFnQixDQUFDLEtBQStCLEVBQUUsV0FBVyxDQUFDLEVBQzlELEtBQUssRUFBRSxFQUNQLFNBQVMsQ0FBQyxDQUFDLFFBQWdDLEVBQTBCLEVBQUU7WUFDckUsSUFBSSxPQUFPLFFBQVEsS0FBSyxTQUFTLEVBQUU7Z0JBQ2pDLElBQUksUUFBUSxFQUFFO29CQUNaLE9BQU8sRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUNqQjtxQkFBTTtvQkFDTCxPQUFPLFdBQVcsRUFBRSxDQUFDO2lCQUN0QjthQUNGO2lCQUFNO2dCQUNMLE1BQU0sUUFBUSxHQUFHLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDdEMsT0FBTyxFQUFFLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLEVBQUUsUUFBUSxDQUFDLFNBQXNCLEVBQUUsUUFBUSxDQUFDLFVBQStCLENBQUMsQ0FBQyxDQUFDO2FBQ3JJO1FBQ0gsQ0FBQyxDQUFDLEVBQ0YsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDZixPQUFPLENBQUMsSUFBSSxDQUFDLHFFQUFxRSxtQkFBbUIsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQzdHLE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsbUJBQW1CLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsbUJBQW1CO1FBQ3hGLENBQUMsQ0FBQyxDQUNILENBQUM7UUFFRixPQUFPLGNBQWMsQ0FBQyxTQUFTLENBQWUsQ0FBQztJQUNqRCxDQUFDLENBQUM7SUFFRixPQUFPLHFCQUFxQixDQUFDO0FBQy9CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUcmFuc2l0aW9uSG9va0ZuLCBUcmFuc2l0aW9uLCBIb29rUmVzdWx0LCBTdGF0ZVNlcnZpY2UsIFVJSW5qZWN0b3IsIFRyYW5zaXRpb25PcHRpb25zLCBSYXdQYXJhbXMgfSBmcm9tICdAdWlyb3V0ZXIvY29yZSc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBtYXAsIGZpcnN0LCBmaXJzdFZhbHVlRnJvbSwgT2JzZXJ2YWJsZSwgb2YsIHN3aXRjaE1hcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgYXNTZWd1ZVJlZiwgYXNTZWd1ZVJlZlN0cmluZywgU2VndWVSZWZPclNlZ3VlUmVmUm91dGVyTGluayB9IGZyb20gJy4vLi4vLi4vLi4vLi4vcm91dGVyL3NlZ3VlJztcbmltcG9ydCB7IERieEF1dGhTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vc2VydmljZS9hdXRoLnNlcnZpY2UnO1xuaW1wb3J0IHsgRmFjdG9yeVdpdGhSZXF1aXJlZElucHV0LCBnZXRWYWx1ZUZyb21HZXR0ZXIsIGlzR2V0dGVyLCBNYXliZSwgTWlsbGlzZWNvbmRzIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdGltZW91dFN0YXJ0V2l0aCB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuXG4vKipcbiAqIGF1dGhUcmFuc2l0aW9uSG9va0ZuKCkgY29uZmlndXJhdGlvbi4gVGhlIHZhbHVlcyBhcmUgaGFuZGxlZCBhczpcbiAqIC0gdHJ1ZTogY29udGludWUgdG8gdGhlIHN0YXRlLlxuICogLSBmYWxzZTogcmVkaXJlY3QgdG8gdGhlIGxvZ2luIHBhZ2UuXG4gKiAtIFN0YXRlT3JOYW1lOiByZWRpcmVjdCB0byB0aGUgdGFyZ2V0IHBhZ2UgaW5zdGVhZC5cbiAqL1xuZXhwb3J0IHR5cGUgQXV0aFRyYW5zaXRpb25EZWNpc2lvbiA9IHRydWUgfCBmYWxzZSB8IFNlZ3VlUmVmT3JTZWd1ZVJlZlJvdXRlckxpbms7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXV0aFRyYW5zaXRpb25EZWNpc2lvbkdldHRlcklucHV0IHtcbiAgcmVhZG9ubHkgdHJhbnNpdGlvbjogVHJhbnNpdGlvbjtcbiAgcmVhZG9ubHkgaW5qZWN0b3I6IEluamVjdG9yO1xuICByZWFkb25seSBhdXRoU2VydmljZTogRGJ4QXV0aFNlcnZpY2U7XG59XG5cbmV4cG9ydCB0eXBlIEF1dGhUcmFuc2l0aW9uUmVkaXJlY3RUYXJnZXQgPSBPYnNlcnZhYmxlPE1heWJlPFNlZ3VlUmVmT3JTZWd1ZVJlZlJvdXRlckxpbms+PjtcbmV4cG9ydCB0eXBlIEF1dGhUcmFuc2l0aW9uUmVkaXJlY3RUYXJnZXRHZXR0ZXIgPSBGYWN0b3J5V2l0aFJlcXVpcmVkSW5wdXQ8QXV0aFRyYW5zaXRpb25SZWRpcmVjdFRhcmdldCwgQXV0aFRyYW5zaXRpb25EZWNpc2lvbkdldHRlcklucHV0PjtcbmV4cG9ydCB0eXBlIEF1dGhUcmFuc2l0aW9uUmVkaXJlY3RUYXJnZXRPckdldHRlciA9IE1heWJlPFNlZ3VlUmVmT3JTZWd1ZVJlZlJvdXRlckxpbms+IHwgQXV0aFRyYW5zaXRpb25SZWRpcmVjdFRhcmdldEdldHRlcjtcblxuZXhwb3J0IGludGVyZmFjZSBBdXRoVHJhbnNpdGlvbkhvb2tPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBzdGF0ZSB0byByZWRpcmVjdCB0aGUgdXNlciB0byB3aGVuIHRoZWlyIGF1dGggZmFpbHMuXG4gICAqL1xuICBkZWZhdWx0UmVkaXJlY3RUYXJnZXQ6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHN0YXRlIHRvIHJlZGlyZWN0IHRoZSB1c2VyIHRvLiBEZWZhdWx0cyB0byBkZWZhdWx0UmVkaXJlY3RUYXJnZXQuXG4gICAqL1xuICBlcnJvclJlZGlyZWN0VGFyZ2V0Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaW1lb3V0IHRpbWUgZm9yIHRoZSBkZWNpc2lvbiBvYnMuIERlZmF1bHRzIHRvIDEwMDBtcy5cbiAgICovXG4gIHRpbWVvdXRUaW1lPzogTWlsbGlzZWNvbmRzO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEF1dGhUcmFuc2l0aW9uSG9va0NvbmZpZyBleHRlbmRzIEF1dGhUcmFuc2l0aW9uSG9va09wdGlvbnMge1xuICAvKipcbiAgICogQ3JlYXRlcyB0aGUgZGVjaXNpb24gb2JzZXJ2YWJsZSBmb3IgdGhlIHRyYW5zaXRpb24gdGhhdCBkZWNpZGVzIHdoZXRoZXIgb3Igbm90IHRvIHJlZGlyZWN0IG9yIGNvbnRpbnVlLlxuICAgKi9cbiAgbWFrZURlY2lzaW9uc09iczogKHRyYW5zaXRpb246IFRyYW5zaXRpb24sIGF1dGhTZXJ2aWNlOiBEYnhBdXRoU2VydmljZSwgaW5qZWN0b3I6IFVJSW5qZWN0b3IpID0+IE9ic2VydmFibGU8QXV0aFRyYW5zaXRpb25EZWNpc2lvbj47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXV0aFRyYW5zaXRpb25TdGF0ZURhdGEge1xuICAvKipcbiAgICogT3B0aW9uYWwgZ2V0dGVyL2RlY2lzaW9uIG1ha2VyIHdoZW4gYSByb2xlIG5lZWRzIHRvIGJlXG4gICAqL1xuICByZWRpcmVjdFRvPzogQXV0aFRyYW5zaXRpb25SZWRpcmVjdFRhcmdldE9yR2V0dGVyO1xufVxuXG4vKipcbiAqIFRoaXMgZ2VuZXJhdGVzIGEgVHJhbnNpdGlvbkhvb2tGbiB0aGF0IGNhbiBiZSB1c2VkIHdpdGggcmVkaXJlY3Rpbmcgcm91dGVzLlxuICovXG5leHBvcnQgZnVuY3Rpb24gbWFrZUF1dGhUcmFuc2l0aW9uSG9vayhjb25maWc6IEF1dGhUcmFuc2l0aW9uSG9va0NvbmZpZyk6IFRyYW5zaXRpb25Ib29rRm4ge1xuICBjb25zdCB7IGRlZmF1bHRSZWRpcmVjdFRhcmdldCwgZXJyb3JSZWRpcmVjdFRhcmdldCA9IGRlZmF1bHRSZWRpcmVjdFRhcmdldCwgdGltZW91dFRpbWUgPSAxMDAwIH0gPSBjb25maWc7XG5cbiAgLy8gaHR0cHM6Ly91aS1yb3V0ZXIuZ2l0aHViLmlvL25nMi9kb2NzL2xhdGVzdC9tb2R1bGVzL3RyYW5zaXRpb24uaHRtbCNob29rcmVzdWx0XG4gIGNvbnN0IGFzc2VydElzQXV0aGVudGljYXRlZDogVHJhbnNpdGlvbkhvb2tGbiA9ICh0cmFuc2l0aW9uOiBUcmFuc2l0aW9uKTogSG9va1Jlc3VsdCA9PiB7XG4gICAgY29uc3QgaW5qZWN0b3IgPSB0cmFuc2l0aW9uLmluamVjdG9yKCk7XG4gICAgY29uc3QgYXV0aFNlcnZpY2U6IERieEF1dGhTZXJ2aWNlID0gaW5qZWN0b3IuZ2V0KERieEF1dGhTZXJ2aWNlKTtcbiAgICBjb25zdCAkc3RhdGU6IFN0YXRlU2VydmljZSA9IHRyYW5zaXRpb24ucm91dGVyLnN0YXRlU2VydmljZTtcbiAgICBjb25zdCBkZWNpc2lvbk9icyA9IGNvbmZpZy5tYWtlRGVjaXNpb25zT2JzKHRyYW5zaXRpb24sIGF1dGhTZXJ2aWNlLCBpbmplY3Rvcik7XG5cbiAgICBmdW5jdGlvbiByZWRpcmVjdE91dCgpOiBPYnNlcnZhYmxlPEhvb2tSZXN1bHQ+IHtcbiAgICAgIGNvbnN0IHN0YXRlRGF0YTogQXV0aFRyYW5zaXRpb25TdGF0ZURhdGEgPSB0cmFuc2l0aW9uLnRhcmdldFN0YXRlKCkuc3RhdGUoKS5kYXRhO1xuICAgICAgY29uc3QgcmVkaXJlY3RUbyA9IHN0YXRlRGF0YT8ucmVkaXJlY3RUbztcblxuICAgICAgbGV0IHJlZGlyZWN0VG9PYnM6IE9ic2VydmFibGU8SG9va1Jlc3VsdD47XG5cbiAgICAgIGlmIChyZWRpcmVjdFRvKSB7XG4gICAgICAgIGxldCByZXN1bHRPYnM6IE9ic2VydmFibGU8TWF5YmU8U2VndWVSZWZPclNlZ3VlUmVmUm91dGVyTGluaz4+O1xuXG4gICAgICAgIGlmIChpc0dldHRlcjxBdXRoVHJhbnNpdGlvblJlZGlyZWN0VGFyZ2V0PihyZWRpcmVjdFRvKSkge1xuICAgICAgICAgIHJlc3VsdE9icyA9IGdldFZhbHVlRnJvbUdldHRlcihyZWRpcmVjdFRvLCB7IGF1dGhTZXJ2aWNlLCBpbmplY3RvciwgdHJhbnNpdGlvbiB9IGFzIEF1dGhUcmFuc2l0aW9uRGVjaXNpb25HZXR0ZXJJbnB1dCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmVzdWx0T2JzID0gb2YocmVkaXJlY3RUbyBhcyBTZWd1ZVJlZk9yU2VndWVSZWZSb3V0ZXJMaW5rKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJlZGlyZWN0VG9PYnMgPSByZXN1bHRPYnMucGlwZShcbiAgICAgICAgICBtYXAoKGlucHV0U3RhdGVSZWY6IE1heWJlPFNlZ3VlUmVmT3JTZWd1ZVJlZlJvdXRlckxpbms+KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBzdGF0ZVJlZiA9IGFzU2VndWVSZWYoaW5wdXRTdGF0ZVJlZik7XG5cbiAgICAgICAgICAgIGxldCByZWRpcmVjdFRhcmdldDtcbiAgICAgICAgICAgIGxldCByZWRpcmVjdFBhcmFtcztcblxuICAgICAgICAgICAgaWYgKHN0YXRlUmVmKSB7XG4gICAgICAgICAgICAgIHJlZGlyZWN0VGFyZ2V0ID0gc3RhdGVSZWYucmVmO1xuICAgICAgICAgICAgICByZWRpcmVjdFBhcmFtcyA9IHN0YXRlUmVmLnJlZlBhcmFtcztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCFyZWRpcmVjdFRhcmdldCkge1xuICAgICAgICAgICAgICByZWRpcmVjdFRhcmdldCA9IGRlZmF1bHRSZWRpcmVjdFRhcmdldDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgcmV0dXJuICRzdGF0ZS50YXJnZXQocmVkaXJlY3RUYXJnZXQsIHJlZGlyZWN0UGFyYW1zKTtcbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmVkaXJlY3RUb09icyA9IG9mKCRzdGF0ZS50YXJnZXQoZGVmYXVsdFJlZGlyZWN0VGFyZ2V0KSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiByZWRpcmVjdFRvT2JzO1xuICAgIH1cblxuICAgIGNvbnN0IHJlc3VsdE9icyA9IGRlY2lzaW9uT2JzLnBpcGUoXG4gICAgICAvLyBhZnRlciB0aGUgdGltZW91dFRpbWUgc2Vjb25kcyBvZiBubyB0cmFuc2l0aW9uIHdvcmtpbmcsIHJlZGlyZWN0IHdpdGggYSBmYWxzZSBkZWNpc2lvblxuICAgICAgdGltZW91dFN0YXJ0V2l0aChmYWxzZSBhcyBBdXRoVHJhbnNpdGlvbkRlY2lzaW9uLCB0aW1lb3V0VGltZSksXG4gICAgICBmaXJzdCgpLFxuICAgICAgc3dpdGNoTWFwKChkZWNpc2lvbjogQXV0aFRyYW5zaXRpb25EZWNpc2lvbik6IE9ic2VydmFibGU8SG9va1Jlc3VsdD4gPT4ge1xuICAgICAgICBpZiAodHlwZW9mIGRlY2lzaW9uID09PSAnYm9vbGVhbicpIHtcbiAgICAgICAgICBpZiAoZGVjaXNpb24pIHtcbiAgICAgICAgICAgIHJldHVybiBvZih0cnVlKTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHJlZGlyZWN0T3V0KCk7XG4gICAgICAgICAgfVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIGNvbnN0IHNlZ3VlUmVmID0gYXNTZWd1ZVJlZihkZWNpc2lvbik7XG4gICAgICAgICAgcmV0dXJuIG9mKCRzdGF0ZS50YXJnZXQoYXNTZWd1ZVJlZlN0cmluZyhzZWd1ZVJlZi5yZWYpLCBzZWd1ZVJlZi5yZWZQYXJhbXMgYXMgUmF3UGFyYW1zLCBzZWd1ZVJlZi5yZWZPcHRpb25zIGFzIFRyYW5zaXRpb25PcHRpb25zKSk7XG4gICAgICAgIH1cbiAgICAgIH0pLFxuICAgICAgY2F0Y2hFcnJvcigoeCkgPT4ge1xuICAgICAgICBjb25zb2xlLndhcm4oYEVuY291bnRlcmVkIGVycm9yIGluIGF1dGggdHJhbnNpdGlvbiBob29rLiBBdHRlbXB0aW5nIHJlZGlyZWN0IHRvICR7ZXJyb3JSZWRpcmVjdFRhcmdldH0uYCwgeCk7XG4gICAgICAgIHJldHVybiBvZigkc3RhdGUudGFyZ2V0KGVycm9yUmVkaXJlY3RUYXJnZXQsIHsgbG9jYXRpb246IHRydWUgfSkpOyAvLyBSZWRpcmVjdCB0byBob21lXG4gICAgICB9KVxuICAgICk7XG5cbiAgICByZXR1cm4gZmlyc3RWYWx1ZUZyb20ocmVzdWx0T2JzKSBhcyBIb29rUmVzdWx0O1xuICB9O1xuXG4gIHJldHVybiBhc3NlcnRJc0F1dGhlbnRpY2F0ZWQ7XG59XG4iXX0=
@@ -1709,7 +1709,7 @@ class DbxAuthService {
1709
1709
  * This generates a TransitionHookFn that can be used with redirecting routes.
1710
1710
  */
1711
1711
  function makeAuthTransitionHook(config) {
1712
- const { defaultRedirectTarget, errorRedirectTarget = defaultRedirectTarget } = config;
1712
+ const { defaultRedirectTarget, errorRedirectTarget = defaultRedirectTarget, timeoutTime = 1000 } = config;
1713
1713
  // https://ui-router.github.io/ng2/docs/latest/modules/transition.html#hookresult
1714
1714
  const assertIsAuthenticated = (transition) => {
1715
1715
  const injector = transition.injector();
@@ -1748,8 +1748,8 @@ function makeAuthTransitionHook(config) {
1748
1748
  return redirectToObs;
1749
1749
  }
1750
1750
  const resultObs = decisionObs.pipe(
1751
- // after 10 seconds of no transition working, redirect with a false decision
1752
- timeoutStartWith(false, 10 * 1000), first(), switchMap((decision) => {
1751
+ // after the timeoutTime seconds of no transition working, redirect with a false decision
1752
+ timeoutStartWith(false, timeoutTime), first(), switchMap((decision) => {
1753
1753
  if (typeof decision === 'boolean') {
1754
1754
  if (decision) {
1755
1755
  return of(true);
@@ -1763,7 +1763,7 @@ function makeAuthTransitionHook(config) {
1763
1763
  return of($state.target(asSegueRefString(segueRef.ref), segueRef.refParams, segueRef.refOptions));
1764
1764
  }
1765
1765
  }), catchError((x) => {
1766
- console.warn('Encountered error in auth transition hook.', x);
1766
+ console.warn(`Encountered error in auth transition hook. Attempting redirect to ${errorRedirectTarget}.`, x);
1767
1767
  return of($state.target(errorRedirectTarget, { location: true })); // Redirect to home
1768
1768
  }));
1769
1769
  return firstValueFrom(resultObs);