@hmcts/ccd-case-ui-toolkit 6.19.9-rc4 → 6.19.9-restricted-case-access
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.
- package/bundles/hmcts-ccd-case-ui-toolkit.umd.js +23 -12
- package/bundles/hmcts-ccd-case-ui-toolkit.umd.js.map +1 -1
- package/bundles/hmcts-ccd-case-ui-toolkit.umd.min.js +1 -1
- package/bundles/hmcts-ccd-case-ui-toolkit.umd.min.js.map +1 -1
- package/esm2015/lib/app.config.js +1 -1
- package/esm2015/lib/shared/components/case-viewer/services/case.resolver.js +16 -9
- package/esm2015/lib/shared/domain/http/http-error.model.js +8 -1
- package/esm2015/lib/shared/services/http/http-error.service.js +4 -5
- package/fesm2015/hmcts-ccd-case-ui-toolkit.js +23 -12
- package/fesm2015/hmcts-ccd-case-ui-toolkit.js.map +1 -1
- package/lib/app.config.d.ts +2 -0
- package/lib/app.config.d.ts.map +1 -1
- package/lib/shared/components/case-viewer/services/case.resolver.d.ts +3 -1
- package/lib/shared/components/case-viewer/services/case.resolver.d.ts.map +1 -1
- package/lib/shared/domain/http/http-error.model.d.ts.map +1 -1
- package/lib/shared/services/http/http-error.service.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1985,6 +1985,13 @@
|
|
|
1985
1985
|
error[key] = response.error.hasOwnProperty(key) && response.error[key] ? response.error[key] : error[key];
|
|
1986
1986
|
});
|
|
1987
1987
|
}
|
|
1988
|
+
// Error object in HttpErrorResponse will be empty for 403 errors
|
|
1989
|
+
// Set the error properties of HttpError accordingly
|
|
1990
|
+
if ((response === null || response === void 0 ? void 0 : response.status) === 403) {
|
|
1991
|
+
error.error = response.statusText;
|
|
1992
|
+
error.status = response.status;
|
|
1993
|
+
error.message = response.message;
|
|
1994
|
+
}
|
|
1988
1995
|
return error;
|
|
1989
1996
|
};
|
|
1990
1997
|
return HttpError;
|
|
@@ -2083,14 +2090,13 @@
|
|
|
2083
2090
|
this.authService = authService;
|
|
2084
2091
|
}
|
|
2085
2092
|
HttpErrorService.convertToHttpError = function (error) {
|
|
2093
|
+
var _a;
|
|
2086
2094
|
if (error instanceof HttpError) {
|
|
2087
2095
|
return error;
|
|
2088
2096
|
}
|
|
2089
2097
|
var httpError = new HttpError();
|
|
2090
2098
|
if (error instanceof i1$2.HttpErrorResponse) {
|
|
2091
|
-
if (error.headers
|
|
2092
|
-
&& error.headers.get(HttpErrorService.CONTENT_TYPE)
|
|
2093
|
-
&& error.headers.get(HttpErrorService.CONTENT_TYPE).indexOf(HttpErrorService.JSON) !== -1) {
|
|
2099
|
+
if (((_a = error.headers) === null || _a === void 0 ? void 0 : _a.get(HttpErrorService.CONTENT_TYPE).indexOf(HttpErrorService.JSON)) !== -1) {
|
|
2094
2100
|
try {
|
|
2095
2101
|
httpError = HttpError.from(error);
|
|
2096
2102
|
}
|
|
@@ -2125,7 +2131,7 @@
|
|
|
2125
2131
|
console.error('Handling error in http error service.');
|
|
2126
2132
|
console.error(error);
|
|
2127
2133
|
var httpError = HttpErrorService.convertToHttpError(error);
|
|
2128
|
-
if (redirectIfNotAuthorised &&
|
|
2134
|
+
if (redirectIfNotAuthorised && httpError.status === 401) {
|
|
2129
2135
|
this.authService.signIn();
|
|
2130
2136
|
}
|
|
2131
2137
|
return rxjs.throwError(httpError);
|
|
@@ -31034,13 +31040,14 @@
|
|
|
31034
31040
|
i0__namespace.ɵɵsetComponentScope(CaseTimelineComponent, [i2__namespace.NgIf, i2__namespace.NgSwitch, i2__namespace.NgSwitchCase, EventLogComponent, CaseHistoryComponent], [i1__namespace.RpxTranslatePipe]);
|
|
31035
31041
|
|
|
31036
31042
|
var CaseResolver = /** @class */ (function () {
|
|
31037
|
-
function CaseResolver(caseNotifier, draftService, navigationNotifierService, router, sessionStorage) {
|
|
31043
|
+
function CaseResolver(caseNotifier, draftService, navigationNotifierService, router, sessionStorage, appConfig) {
|
|
31038
31044
|
var _this = this;
|
|
31039
31045
|
this.caseNotifier = caseNotifier;
|
|
31040
31046
|
this.draftService = draftService;
|
|
31041
31047
|
this.navigationNotifierService = navigationNotifierService;
|
|
31042
31048
|
this.router = router;
|
|
31043
31049
|
this.sessionStorage = sessionStorage;
|
|
31050
|
+
this.appConfig = appConfig;
|
|
31044
31051
|
router.events.pipe(operators.filter(function (event) { return event instanceof i1$1.NavigationEnd; }))
|
|
31045
31052
|
.subscribe(function (event) {
|
|
31046
31053
|
_this.previousUrl = event.url;
|
|
@@ -31086,7 +31093,7 @@
|
|
|
31086
31093
|
else {
|
|
31087
31094
|
console.info('getAndCacheCaseView - Path B.');
|
|
31088
31095
|
return this.caseNotifier.fetchAndRefresh(cid)
|
|
31089
|
-
.pipe(operators.catchError(function (error) { return _this.processErrorInCaseFetch(error); }))
|
|
31096
|
+
.pipe(operators.catchError(function (error) { return _this.processErrorInCaseFetch(error, cid); }))
|
|
31090
31097
|
.toPromise();
|
|
31091
31098
|
}
|
|
31092
31099
|
}
|
|
@@ -31099,9 +31106,9 @@
|
|
|
31099
31106
|
_this.caseNotifier.cachedCaseView = classTransformer.plainToClassFromExist(new CaseView(), caseView);
|
|
31100
31107
|
_this.caseNotifier.announceCase(_this.caseNotifier.cachedCaseView);
|
|
31101
31108
|
return _this.caseNotifier.cachedCaseView;
|
|
31102
|
-
}), operators.catchError(function (error) { return _this.processErrorInCaseFetch(error); })).toPromise();
|
|
31109
|
+
}), operators.catchError(function (error) { return _this.processErrorInCaseFetch(error, cid); })).toPromise();
|
|
31103
31110
|
};
|
|
31104
|
-
CaseResolver.prototype.processErrorInCaseFetch = function (error) {
|
|
31111
|
+
CaseResolver.prototype.processErrorInCaseFetch = function (error, caseReference) {
|
|
31105
31112
|
console.error('!!! processErrorInCaseFetch !!!');
|
|
31106
31113
|
console.error(error);
|
|
31107
31114
|
// TODO Should be logged to remote logging infrastructure
|
|
@@ -31109,12 +31116,16 @@
|
|
|
31109
31116
|
this.router.navigate(['/search/noresults']);
|
|
31110
31117
|
return rxjs.of(null);
|
|
31111
31118
|
}
|
|
31112
|
-
console.error(error);
|
|
31113
31119
|
if (CaseResolver.EVENT_REGEX.test(this.previousUrl) && error.status === 404) {
|
|
31114
31120
|
this.router.navigate(['/list/case']);
|
|
31115
31121
|
return rxjs.of(null);
|
|
31116
31122
|
}
|
|
31117
|
-
|
|
31123
|
+
// Error 403 and enable-restricted-case-access Launch Darkly flag is enabled, navigate to restricted case access page
|
|
31124
|
+
if (error.status === 403 && this.appConfig.getEnableRestrictedCaseAccessConfig()) {
|
|
31125
|
+
this.router.navigate(["/cases/restricted-case-access/" + caseReference]);
|
|
31126
|
+
return rxjs.of(null);
|
|
31127
|
+
}
|
|
31128
|
+
if (error.status !== 401) {
|
|
31118
31129
|
this.router.navigate(['/error']);
|
|
31119
31130
|
}
|
|
31120
31131
|
this.goToDefaultPage();
|
|
@@ -31141,12 +31152,12 @@
|
|
|
31141
31152
|
CaseResolver.CASE_CREATED_MSG = 'The case has been created successfully';
|
|
31142
31153
|
CaseResolver.defaultWAPage = '/work/my-work/list';
|
|
31143
31154
|
CaseResolver.defaultPage = '/cases';
|
|
31144
|
-
CaseResolver.ɵfac = function CaseResolver_Factory(t) { return new (t || CaseResolver)(i0__namespace.ɵɵinject(CaseNotifier), i0__namespace.ɵɵinject(DraftService), i0__namespace.ɵɵinject(NavigationNotifierService), i0__namespace.ɵɵinject(i1__namespace$1.Router), i0__namespace.ɵɵinject(SessionStorageService)); };
|
|
31155
|
+
CaseResolver.ɵfac = function CaseResolver_Factory(t) { return new (t || CaseResolver)(i0__namespace.ɵɵinject(CaseNotifier), i0__namespace.ɵɵinject(DraftService), i0__namespace.ɵɵinject(NavigationNotifierService), i0__namespace.ɵɵinject(i1__namespace$1.Router), i0__namespace.ɵɵinject(SessionStorageService), i0__namespace.ɵɵinject(AbstractAppConfig)); };
|
|
31145
31156
|
CaseResolver.ɵprov = i0__namespace.ɵɵdefineInjectable({ token: CaseResolver, factory: CaseResolver.ɵfac });
|
|
31146
31157
|
(function () {
|
|
31147
31158
|
(typeof ngDevMode === "undefined" || ngDevMode) && i0__namespace.ɵsetClassMetadata(CaseResolver, [{
|
|
31148
31159
|
type: i0.Injectable
|
|
31149
|
-
}], function () { return [{ type: CaseNotifier }, { type: DraftService }, { type: NavigationNotifierService }, { type: i1__namespace$1.Router }, { type: SessionStorageService }]; }, null);
|
|
31160
|
+
}], function () { return [{ type: CaseNotifier }, { type: DraftService }, { type: NavigationNotifierService }, { type: i1__namespace$1.Router }, { type: SessionStorageService }, { type: AbstractAppConfig }]; }, null);
|
|
31150
31161
|
})();
|
|
31151
31162
|
|
|
31152
31163
|
var EventTriggerResolver = /** @class */ (function () {
|