@smartbit4all/ng-client 3.3.215 → 3.3.217

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.
Files changed (183) hide show
  1. package/esm2020/lib/session/api/api/session.service.mjs +1 -1
  2. package/esm2020/lib/session/api/encoder.mjs +1 -1
  3. package/esm2020/lib/session/api/model/accountInfo.mjs +1 -1
  4. package/esm2020/lib/session/api/model/apiError.mjs +1 -1
  5. package/esm2020/lib/session/api/model/authenticationProviderData.mjs +1 -1
  6. package/esm2020/lib/session/api/model/getAuthenticationProvidersResponse.mjs +1 -1
  7. package/esm2020/lib/session/api/model/models.mjs +1 -1
  8. package/esm2020/lib/session/api/model/refreshSessionRequest.mjs +1 -1
  9. package/esm2020/lib/session/api/model/session.mjs +1 -1
  10. package/esm2020/lib/session/api/model/userActivityLog.mjs +1 -1
  11. package/esm2020/lib/session/api/param.mjs +1 -1
  12. package/esm2020/lib/session/api/variables.mjs +1 -1
  13. package/esm2020/lib/session/smart-error-catching.interceptor.mjs +51 -27
  14. package/esm2020/lib/session/smart-session.service.mjs +31 -26
  15. package/esm2020/lib/smart-component-layout/api/api/api.mjs +1 -1
  16. package/esm2020/lib/smart-component-layout/api/api/default.service.mjs +1 -1
  17. package/esm2020/lib/smart-component-layout/api/api.module.mjs +1 -1
  18. package/esm2020/lib/smart-component-layout/api/configuration.mjs +1 -1
  19. package/esm2020/lib/smart-component-layout/api/encoder.mjs +1 -1
  20. package/esm2020/lib/smart-component-layout/api/index.mjs +1 -1
  21. package/esm2020/lib/smart-component-layout/api/model/componentType.mjs +1 -1
  22. package/esm2020/lib/smart-component-layout/api/model/componentWidgetType.mjs +1 -1
  23. package/esm2020/lib/smart-component-layout/api/model/layoutDirection.mjs +1 -1
  24. package/esm2020/lib/smart-component-layout/api/model/models.mjs +1 -1
  25. package/esm2020/lib/smart-component-layout/api/model/smartComponentLayoutDefinition.mjs +1 -1
  26. package/esm2020/lib/smart-component-layout/api/model/smartComponentWidgetDefinition.mjs +1 -1
  27. package/esm2020/lib/smart-component-layout/api/param.mjs +1 -1
  28. package/esm2020/lib/smart-component-layout/api/variables.mjs +1 -1
  29. package/esm2020/lib/smart-filter/api/filter/model/filterExpressionBoolOperator.mjs +1 -1
  30. package/esm2020/lib/smart-filter/api/filter/model/filterExpressionBuilderField.mjs +1 -1
  31. package/esm2020/lib/smart-filter/api/filter/model/filterExpressionBuilderGroup.mjs +1 -1
  32. package/esm2020/lib/smart-filter/api/filter/model/filterExpressionBuilderModel.mjs +1 -1
  33. package/esm2020/lib/smart-filter/api/filter/model/filterExpressionData.mjs +1 -1
  34. package/esm2020/lib/smart-filter/api/filter/model/filterExpressionDataType.mjs +1 -1
  35. package/esm2020/lib/smart-filter/api/filter/model/filterExpressionFieldList.mjs +1 -1
  36. package/esm2020/lib/smart-filter/api/filter/model/filterExpressionFieldWidgetType.mjs +1 -1
  37. package/esm2020/lib/smart-filter/api/filter/model/filterExpressionList.mjs +1 -1
  38. package/esm2020/lib/smart-filter/api/filter/model/filterExpressionOperandData.mjs +1 -1
  39. package/esm2020/lib/smart-filter/api/filter/model/filterExpressionOperation.mjs +1 -1
  40. package/esm2020/lib/smart-filter/api/filter/model/filterExpressionOrderBy.mjs +1 -1
  41. package/esm2020/lib/smart-filter-editor/api/api/filter.service.mjs +1 -1
  42. package/esm2020/lib/smart-filter-editor/api/configuration.mjs +1 -1
  43. package/esm2020/lib/smart-filter-editor/api/encoder.mjs +1 -1
  44. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionBoolOperator.mjs +1 -1
  45. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionBuilderApiConfig.mjs +1 -1
  46. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionBuilderField.mjs +1 -1
  47. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionBuilderGroup.mjs +1 -1
  48. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionBuilderModel.mjs +1 -1
  49. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionBuilderUiModel.mjs +1 -1
  50. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionData.mjs +1 -1
  51. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionDataType.mjs +1 -1
  52. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionFieldEditor.mjs +1 -1
  53. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionFieldList.mjs +1 -1
  54. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionFieldWidgetType.mjs +1 -1
  55. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionList.mjs +1 -1
  56. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionOperandData.mjs +1 -1
  57. package/esm2020/lib/smart-filter-editor/api/model/filterExpressionOperation.mjs +1 -1
  58. package/esm2020/lib/smart-filter-editor/api/model/smartFilterType.mjs +1 -1
  59. package/esm2020/lib/smart-filter-editor/api/param.mjs +1 -1
  60. package/esm2020/lib/smart-filter-editor/api/variables.mjs +1 -1
  61. package/esm2020/lib/smart-form/api/api/api.mjs +1 -1
  62. package/esm2020/lib/smart-form/api/api/default.service.mjs +1 -1
  63. package/esm2020/lib/smart-form/api/api.module.mjs +1 -1
  64. package/esm2020/lib/smart-form/api/configuration.mjs +1 -1
  65. package/esm2020/lib/smart-form/api/encoder.mjs +1 -1
  66. package/esm2020/lib/smart-form/api/index.mjs +1 -1
  67. package/esm2020/lib/smart-form/api/model/propertyMapping.mjs +1 -1
  68. package/esm2020/lib/smart-form/api/model/selectionDefinition.mjs +1 -1
  69. package/esm2020/lib/smart-form/api/model/smartFormWidgetDirection.mjs +1 -1
  70. package/esm2020/lib/smart-form/api/model/smartFormWidgetType.mjs +1 -1
  71. package/esm2020/lib/smart-form/api/model/smartLayoutDefinition.mjs +1 -1
  72. package/esm2020/lib/smart-form/api/model/smartWidgetHint.mjs +1 -1
  73. package/esm2020/lib/smart-form/api/model/valueChangeMode.mjs +1 -1
  74. package/esm2020/lib/smart-form/api/param.mjs +1 -1
  75. package/esm2020/lib/smart-form/api/variables.mjs +1 -1
  76. package/esm2020/lib/smart-grid/api/grid-api/api/api.mjs +1 -1
  77. package/esm2020/lib/smart-grid/api/grid-api/api/grid.service.mjs +1 -1
  78. package/esm2020/lib/smart-grid/api/grid-api/api.module.mjs +1 -1
  79. package/esm2020/lib/smart-grid/api/grid-api/configuration.mjs +1 -1
  80. package/esm2020/lib/smart-grid/api/grid-api/encoder.mjs +1 -1
  81. package/esm2020/lib/smart-grid/api/grid-api/index.mjs +1 -1
  82. package/esm2020/lib/smart-grid/api/grid-api/model/gridColumnContentType.mjs +1 -1
  83. package/esm2020/lib/smart-grid/api/grid-api/model/gridColumnMeta.mjs +1 -1
  84. package/esm2020/lib/smart-grid/api/grid-api/model/gridDataAccessConfig.mjs +1 -1
  85. package/esm2020/lib/smart-grid/api/grid-api/model/gridModel.mjs +1 -1
  86. package/esm2020/lib/smart-grid/api/grid-api/model/gridPage.mjs +1 -1
  87. package/esm2020/lib/smart-grid/api/grid-api/model/gridRow.mjs +1 -1
  88. package/esm2020/lib/smart-grid/api/grid-api/model/gridSelectionChange.mjs +1 -1
  89. package/esm2020/lib/smart-grid/api/grid-api/model/gridSelectionMode.mjs +1 -1
  90. package/esm2020/lib/smart-grid/api/grid-api/model/gridSelectionType.mjs +1 -1
  91. package/esm2020/lib/smart-grid/api/grid-api/model/gridServerModel.mjs +1 -1
  92. package/esm2020/lib/smart-grid/api/grid-api/model/gridUpdateData.mjs +1 -1
  93. package/esm2020/lib/smart-grid/api/grid-api/model/gridView.mjs +1 -1
  94. package/esm2020/lib/smart-grid/api/grid-api/model/gridViewDescriptor.mjs +1 -1
  95. package/esm2020/lib/smart-grid/api/grid-api/model/models.mjs +1 -1
  96. package/esm2020/lib/smart-grid/api/grid-api/param.mjs +1 -1
  97. package/esm2020/lib/smart-grid/api/grid-api/variables.mjs +1 -1
  98. package/esm2020/lib/smart-tree/tree-api/api/tree.service.mjs +1 -1
  99. package/esm2020/lib/smart-tree/tree-api/configuration.mjs +1 -1
  100. package/esm2020/lib/smart-tree/tree-api/encoder.mjs +1 -1
  101. package/esm2020/lib/smart-tree/tree-api/param.mjs +1 -1
  102. package/esm2020/lib/smart-tree/tree-api/variables.mjs +1 -1
  103. package/esm2020/lib/view-context/api/api/api.mjs +1 -1
  104. package/esm2020/lib/view-context/api/api/view.service.mjs +1 -1
  105. package/esm2020/lib/view-context/api/api.module.mjs +1 -1
  106. package/esm2020/lib/view-context/api/configuration.mjs +1 -1
  107. package/esm2020/lib/view-context/api/encoder.mjs +1 -1
  108. package/esm2020/lib/view-context/api/index.mjs +1 -1
  109. package/esm2020/lib/view-context/api/model/closeResult.mjs +1 -1
  110. package/esm2020/lib/view-context/api/model/componentConstraint.mjs +1 -1
  111. package/esm2020/lib/view-context/api/model/componentModel.mjs +1 -1
  112. package/esm2020/lib/view-context/api/model/componentModelChange.mjs +1 -1
  113. package/esm2020/lib/view-context/api/model/dataChange.mjs +1 -1
  114. package/esm2020/lib/view-context/api/model/dataChangeEvent.mjs +1 -1
  115. package/esm2020/lib/view-context/api/model/dataChangeKind.mjs +1 -1
  116. package/esm2020/lib/view-context/api/model/downloadedFile.mjs +1 -1
  117. package/esm2020/lib/view-context/api/model/iconPosition.mjs +1 -1
  118. package/esm2020/lib/view-context/api/model/imageResource.mjs +1 -1
  119. package/esm2020/lib/view-context/api/model/link.mjs +1 -1
  120. package/esm2020/lib/view-context/api/model/messageData.mjs +1 -1
  121. package/esm2020/lib/view-context/api/model/messageOption.mjs +1 -1
  122. package/esm2020/lib/view-context/api/model/messageOptionType.mjs +1 -1
  123. package/esm2020/lib/view-context/api/model/messageResult.mjs +1 -1
  124. package/esm2020/lib/view-context/api/model/messageTextType.mjs +1 -1
  125. package/esm2020/lib/view-context/api/model/messageType.mjs +1 -1
  126. package/esm2020/lib/view-context/api/model/openPendingData.mjs +1 -1
  127. package/esm2020/lib/view-context/api/model/serverRequestExecutionStat.mjs +1 -1
  128. package/esm2020/lib/view-context/api/model/serverRequestTrack.mjs +1 -1
  129. package/esm2020/lib/view-context/api/model/serverRequestType.mjs +1 -1
  130. package/esm2020/lib/view-context/api/model/smartLinkData.mjs +1 -1
  131. package/esm2020/lib/view-context/api/model/statisticRecord.mjs +1 -1
  132. package/esm2020/lib/view-context/api/model/style.mjs +1 -1
  133. package/esm2020/lib/view-context/api/model/uiAction.mjs +1 -1
  134. package/esm2020/lib/view-context/api/model/uiActionButtonType.mjs +1 -1
  135. package/esm2020/lib/view-context/api/model/uiActionConstraint.mjs +1 -1
  136. package/esm2020/lib/view-context/api/model/uiActionDescriptor.mjs +1 -1
  137. package/esm2020/lib/view-context/api/model/uiActionDialogDescriptor.mjs +1 -1
  138. package/esm2020/lib/view-context/api/model/uiActionFeedbackType.mjs +1 -1
  139. package/esm2020/lib/view-context/api/model/uiActionInputType.mjs +1 -1
  140. package/esm2020/lib/view-context/api/model/uiActionRequest.mjs +1 -1
  141. package/esm2020/lib/view-context/api/model/uiActionTooltip.mjs +1 -1
  142. package/esm2020/lib/view-context/api/model/uiActionUploadDescriptor.mjs +1 -1
  143. package/esm2020/lib/view-context/api/model/valueSet.mjs +1 -1
  144. package/esm2020/lib/view-context/api/model/viewApiError.mjs +1 -1
  145. package/esm2020/lib/view-context/api/model/viewConstraint.mjs +1 -1
  146. package/esm2020/lib/view-context/api/model/viewContextChange.mjs +1 -1
  147. package/esm2020/lib/view-context/api/model/viewData.mjs +1 -1
  148. package/esm2020/lib/view-context/api/model/viewState.mjs +1 -1
  149. package/esm2020/lib/view-context/api/model/viewStateUpdate.mjs +1 -1
  150. package/esm2020/lib/view-context/api/model/viewType.mjs +1 -1
  151. package/esm2020/lib/view-context/api/param.mjs +1 -1
  152. package/esm2020/lib/view-context/api/variables.mjs +1 -1
  153. package/esm2020/lib/view-context/value-api/api/api.mjs +1 -1
  154. package/esm2020/lib/view-context/value-api/api/value.service.mjs +1 -1
  155. package/esm2020/lib/view-context/value-api/api.module.mjs +1 -1
  156. package/esm2020/lib/view-context/value-api/configuration.mjs +1 -1
  157. package/esm2020/lib/view-context/value-api/encoder.mjs +1 -1
  158. package/esm2020/lib/view-context/value-api/index.mjs +1 -1
  159. package/esm2020/lib/view-context/value-api/model/genericValue.mjs +1 -1
  160. package/esm2020/lib/view-context/value-api/model/models.mjs +1 -1
  161. package/esm2020/lib/view-context/value-api/model/value.mjs +1 -1
  162. package/esm2020/lib/view-context/value-api/model/valueSetDefinition.mjs +1 -1
  163. package/esm2020/lib/view-context/value-api/model/valueSetDefinitionIdentifier.mjs +1 -1
  164. package/esm2020/lib/view-context/value-api/model/valueSetOperand.mjs +1 -1
  165. package/esm2020/lib/view-context/value-api/param.mjs +1 -1
  166. package/esm2020/lib/view-context/value-api/variables.mjs +1 -1
  167. package/fesm2015/smartbit4all-ng-client.mjs +76 -48
  168. package/fesm2015/smartbit4all-ng-client.mjs.map +1 -1
  169. package/fesm2020/smartbit4all-ng-client.mjs +76 -48
  170. package/fesm2020/smartbit4all-ng-client.mjs.map +1 -1
  171. package/lib/session/smart-error-catching.interceptor.d.ts +8 -4
  172. package/lib/session/smart-session.service.d.ts +2 -0
  173. package/package.json +1 -1
  174. package/smartbit4all-ng-client-3.3.217.tgz +0 -0
  175. package/src/lib/session/api/README.md +226 -226
  176. package/src/lib/smart-component-layout/api/README.md +226 -226
  177. package/src/lib/smart-filter-editor/api/README.md +226 -226
  178. package/src/lib/smart-form/api/README.md +226 -226
  179. package/src/lib/smart-grid/api/grid-api/README.md +226 -226
  180. package/src/lib/smart-tree/tree-api/README.md +226 -226
  181. package/src/lib/view-context/api/README.md +226 -226
  182. package/src/lib/view-context/value-api/README.md +226 -226
  183. package/smartbit4all-ng-client-3.3.215.tgz +0 -0
@@ -1,8 +1,8 @@
1
1
  import * as i0 from '@angular/core';
2
2
  import { InjectionToken, Injectable, Optional, Inject, PLATFORM_ID, NgModule, SkipSelf, Component, RendererStyleFlags2, Input, Directive, HostBinding, HostListener, ViewChild, forwardRef, EventEmitter, Output, Pipe, ViewContainerRef, ViewEncapsulation, ChangeDetectionStrategy, ViewChildren, CUSTOM_ELEMENTS_SCHEMA, NO_ERRORS_SCHEMA, ChangeDetectorRef } from '@angular/core';
3
- import { Subject, takeUntil, startWith, map, distinctUntilChanged, catchError, throwError, from, lastValueFrom } from 'rxjs';
4
3
  import * as i1 from '@angular/common/http';
5
- import { HttpHeaders, HttpContext, HttpParams, HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';
4
+ import { HttpHeaders, HttpContext, HttpErrorResponse, HttpParams, HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';
5
+ import { Subject, lastValueFrom, takeUntil, startWith, map, distinctUntilChanged, catchError, throwError, from } from 'rxjs';
6
6
  import * as i3 from '@angular/common';
7
7
  import { isPlatformBrowser, DOCUMENT, DatePipe, CommonModule } from '@angular/common';
8
8
  import * as i2 from '@angular/material/button';
@@ -829,7 +829,7 @@ class SmartSessionService {
829
829
  }
830
830
  async handleSessionError(sessionError) {
831
831
  if (this.sessionHandlerService) {
832
- await this.sessionHandlerService.handleSessionError(sessionError);
832
+ return await this.sessionHandlerService.handleSessionError(sessionError);
833
833
  }
834
834
  throw new Error(`sessionHandlerService was not initialized. Error: ${sessionError.code}`);
835
835
  }
@@ -924,11 +924,7 @@ class SmartSessionService {
924
924
  async startSession() {
925
925
  let sessionInfo = await this.apiService.startSession().toPromise();
926
926
  if (sessionInfo) {
927
- this.sessionInfoData = sessionInfo;
928
- this.token = sessionInfo.sid;
929
- this.saveTokenToLocalStorage();
930
- this.setAuthenticationStatus();
931
- this.setUpTokenForSessionService();
927
+ this.updateSessionInfo(sessionInfo);
932
928
  }
933
929
  return this.sessionInfoData;
934
930
  }
@@ -947,26 +943,34 @@ class SmartSessionService {
947
943
  if (!refreshToken) {
948
944
  return await this.startSession();
949
945
  }
950
- let sessionInfo = await this.apiService
951
- .refreshSession({
952
- refreshToken,
953
- })
954
- .toPromise()
955
- .catch(async (error) => {
956
- if (error.error &&
957
- error.error.code &&
958
- error.error.code === 'session.refreshtoken.invalid') {
959
- await this.startSession();
946
+ try {
947
+ const sessionInfo = await lastValueFrom(this.apiService.refreshSession({ refreshToken }));
948
+ if (sessionInfo) {
949
+ this.updateSessionInfo(sessionInfo);
950
+ return sessionInfo;
960
951
  }
961
- });
962
- if (sessionInfo) {
963
- this.sessionInfoData = sessionInfo;
964
- this.token = sessionInfo.sid;
965
- this.saveTokenToLocalStorage();
966
- this.setAuthenticationStatus();
967
- this.setUpTokenForSessionService();
968
952
  }
969
- return this.sessionInfoData;
953
+ catch (error) {
954
+ if (this.isInvalidRefreshTokenError(error)) {
955
+ this.clearAndStartNewSession();
956
+ // still throw the error, so the error can be handled in the caller
957
+ }
958
+ throw error;
959
+ }
960
+ // no sessionInfo returned
961
+ throw new Error('Unable to refresh session');
962
+ }
963
+ updateSessionInfo(sessionInfo) {
964
+ this.sessionInfoData = sessionInfo;
965
+ this.token = sessionInfo.sid;
966
+ this.saveTokenToLocalStorage();
967
+ this.setAuthenticationStatus();
968
+ this.setUpTokenForSessionService();
969
+ }
970
+ isInvalidRefreshTokenError(error) {
971
+ return (error instanceof HttpErrorResponse &&
972
+ error.error &&
973
+ error.error.code === 'session.refreshtoken.invalid');
970
974
  }
971
975
  async getAuthenticationProviders() {
972
976
  let providers = await this.apiService
@@ -9064,52 +9068,68 @@ class SmartErrorCatchingInterceptor {
9064
9068
  this.session = session;
9065
9069
  this.sessionErrorCodes = [
9066
9070
  {
9067
- code: "session.expired",
9071
+ code: 'session.expired',
9068
9072
  behaviour: SessionErrorBehaviour.REFRESH,
9069
9073
  },
9070
9074
  {
9071
- code: "session.refreshtoken.invalid",
9075
+ code: 'session.refreshtoken.invalid',
9072
9076
  behaviour: SessionErrorBehaviour.RESTART,
9073
9077
  },
9074
9078
  {
9075
- code: "session.badrequest.missingtoken",
9079
+ code: 'session.badrequest.missingtoken',
9076
9080
  behaviour: SessionErrorBehaviour.RESTART,
9077
9081
  },
9078
9082
  {
9079
- code: "session.security.nocontext",
9083
+ code: 'session.security.nocontext',
9080
9084
  behaviour: SessionErrorBehaviour.RESTART,
9081
9085
  },
9082
9086
  {
9083
- code: "session.invalidsessionuri",
9087
+ code: 'session.invalidsessionuri',
9084
9088
  behaviour: SessionErrorBehaviour.RESTART,
9085
9089
  },
9086
9090
  {
9087
- code: "session.notinitialized",
9091
+ code: 'session.notinitialized',
9088
9092
  behaviour: SessionErrorBehaviour.RESTART,
9089
9093
  },
9090
9094
  {
9091
- code: "session.viewcontext.missing",
9095
+ code: 'session.viewcontext.missing',
9092
9096
  behaviour: SessionErrorBehaviour.RESTART,
9093
9097
  },
9094
9098
  ];
9095
9099
  }
9096
9100
  intercept(request, next) {
9097
- return next.handle(request).pipe(catchError$1((error) => {
9098
- if (error.status === 400 && error.error.code) {
9099
- let sessionError = this.sessionErrorCodes.find((sessionError) => sessionError.code === error.error.code);
9100
- if (sessionError) {
9101
- return this.resolveError(sessionError).pipe(switchMap(() => {
9102
- this.session.headerParams.map((headerParam) => {
9103
- request = request.clone({
9104
- headers: request.headers.set(headerParam.headerName, headerParam.value),
9105
- });
9106
- });
9107
- return next.handle(request);
9108
- }));
9109
- }
9101
+ return next
9102
+ .handle(request)
9103
+ .pipe(catchError$1((error) => this.handleError(error, request, next)));
9104
+ }
9105
+ handleError(error, request, next) {
9106
+ if (this.isSessionError(error)) {
9107
+ const sessionError = this.getSessionError(error);
9108
+ if (sessionError) {
9109
+ return this.resolveError(sessionError).pipe(switchMap((resolved) => {
9110
+ if (resolved && sessionError.behaviour === SessionErrorBehaviour.REFRESH) {
9111
+ return next.handle(this.updateRequestHeaders(request));
9112
+ }
9113
+ return throwError(() => error);
9114
+ }), catchError$1((resolveError) => {
9115
+ // when the resolveError throws a restart error (in the refreshSession), rethrow the original error
9116
+ if (this.isSessionError(resolveError)) {
9117
+ const resolveSessionError = this.getSessionError(resolveError);
9118
+ if (resolveSessionError?.behaviour === SessionErrorBehaviour.RESTART) {
9119
+ return throwError(() => error);
9120
+ }
9121
+ }
9122
+ return throwError(() => resolveError);
9123
+ }));
9110
9124
  }
9111
- return throwError(error);
9112
- }));
9125
+ }
9126
+ return throwError(() => error);
9127
+ }
9128
+ isSessionError(error) {
9129
+ return error.status === 400 && error.error.code != null;
9130
+ }
9131
+ getSessionError(error) {
9132
+ return this.sessionErrorCodes.find((sessionError) => sessionError.code === error.error.code);
9113
9133
  }
9114
9134
  resolveError(sessionError) {
9115
9135
  if (sessionError.behaviour === SessionErrorBehaviour.RESTART) {
@@ -9117,6 +9137,14 @@ class SmartErrorCatchingInterceptor {
9117
9137
  }
9118
9138
  return from(this.session.refreshSession());
9119
9139
  }
9140
+ updateRequestHeaders(request) {
9141
+ this.session.headerParams.forEach((headerParam) => {
9142
+ request = request.clone({
9143
+ headers: request.headers.set(headerParam.headerName, headerParam.value),
9144
+ });
9145
+ });
9146
+ return request;
9147
+ }
9120
9148
  }
9121
9149
  SmartErrorCatchingInterceptor.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: SmartErrorCatchingInterceptor, deps: [{ token: SmartSessionService }], target: i0.ɵɵFactoryTarget.Injectable });
9122
9150
  SmartErrorCatchingInterceptor.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.4.0", ngImport: i0, type: SmartErrorCatchingInterceptor });