@hmcts/ccd-case-ui-toolkit 7.3.33-exui-3345 → 7.3.34-fix-security-issue
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/README.md +0 -3
- package/fesm2022/hmcts-ccd-case-ui-toolkit.mjs +180 -158
- package/fesm2022/hmcts-ccd-case-ui-toolkit.mjs.map +1 -1
- package/index.d.ts +31 -14
- package/index.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Component, Input, EventEmitter, Output, NgModule, ViewEncapsulation, forwardRef, Pipe, ContentChildren, ViewChildren, DOCUMENT, Injectable, Inject, ChangeDetectorRef, Directive,
|
|
2
|
+
import { Component, Input, EventEmitter, Output, NgModule, ViewEncapsulation, forwardRef, Pipe, ContentChildren, ViewChildren, DOCUMENT, Injectable, Inject, InjectionToken, Optional, ChangeDetectorRef, Directive, ViewChild, ChangeDetectionStrategy, Injector, ViewContainerRef, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
|
|
3
3
|
import * as i5 from '@angular/common';
|
|
4
4
|
import { CommonModule, AsyncPipe, CurrencyPipe, formatDate } from '@angular/common';
|
|
5
5
|
import * as i1 from 'rpx-xui-translation';
|
|
@@ -37,7 +37,7 @@ import { PaymentLibModule } from '@hmcts/ccpay-web-component';
|
|
|
37
37
|
import { v4 } from 'uuid';
|
|
38
38
|
import * as i2$1 from '@angular/cdk/overlay';
|
|
39
39
|
import { OverlayModule } from '@angular/cdk/overlay';
|
|
40
|
-
import * as
|
|
40
|
+
import * as i7$1 from '@angular/cdk/tree';
|
|
41
41
|
import { NestedTreeControl, CdkTreeModule } from '@angular/cdk/tree';
|
|
42
42
|
import { cloneDeep } from 'lodash';
|
|
43
43
|
import * as i4$1 from '@angular-material-components/datetime-picker';
|
|
@@ -45,7 +45,7 @@ import { NGX_MAT_DATE_FORMATS, NgxMatDateAdapter, NgxMatDatetimePickerModule, Ng
|
|
|
45
45
|
import { NGX_MAT_MOMENT_DATE_ADAPTER_OPTIONS, NgxMatMomentAdapter } from '@angular-material-components/moment-adapter';
|
|
46
46
|
import * as i5$1 from '@angular/material/legacy-form-field';
|
|
47
47
|
import { MatLegacyFormFieldModule } from '@angular/material/legacy-form-field';
|
|
48
|
-
import * as i6$
|
|
48
|
+
import * as i6$1 from '@angular/material/datepicker';
|
|
49
49
|
import { MatDatepickerModule } from '@angular/material/datepicker';
|
|
50
50
|
import * as i15 from '@angular/material/legacy-input';
|
|
51
51
|
import { MatLegacyInputModule } from '@angular/material/legacy-input';
|
|
@@ -1637,23 +1637,89 @@ class SessionStorageService {
|
|
|
1637
1637
|
sessionStorage.clear();
|
|
1638
1638
|
}
|
|
1639
1639
|
static ɵfac = function SessionStorageService_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SessionStorageService)(); };
|
|
1640
|
-
static ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: SessionStorageService, factory: SessionStorageService.ɵfac });
|
|
1640
|
+
static ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: SessionStorageService, factory: SessionStorageService.ɵfac, providedIn: 'root' });
|
|
1641
1641
|
}
|
|
1642
1642
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SessionStorageService, [{
|
|
1643
|
-
type: Injectable
|
|
1643
|
+
type: Injectable,
|
|
1644
|
+
args: [{
|
|
1645
|
+
providedIn: 'root',
|
|
1646
|
+
}]
|
|
1644
1647
|
}], null, null); })();
|
|
1645
1648
|
|
|
1649
|
+
function safeJsonParse(value, fallback = null) {
|
|
1650
|
+
if (!value) {
|
|
1651
|
+
return fallback;
|
|
1652
|
+
}
|
|
1653
|
+
try {
|
|
1654
|
+
return JSON.parse(value);
|
|
1655
|
+
}
|
|
1656
|
+
catch (error) {
|
|
1657
|
+
// Log for diagnostics, then return fallback to avoid UI crashes.
|
|
1658
|
+
// eslint-disable-next-line no-console
|
|
1659
|
+
console.error('safeJsonParse failed to parse JSON', error);
|
|
1660
|
+
return fallback;
|
|
1661
|
+
}
|
|
1662
|
+
}
|
|
1663
|
+
|
|
1664
|
+
const SessionErrorRoute = new InjectionToken('SessionErrorRoute');
|
|
1665
|
+
const SessionJsonErrorLogger = new InjectionToken('SessionJsonErrorLogger');
|
|
1666
|
+
class SessionStorageGuard {
|
|
1667
|
+
sessionStorageService;
|
|
1668
|
+
router;
|
|
1669
|
+
errorRoute;
|
|
1670
|
+
errorLogger;
|
|
1671
|
+
constructor(sessionStorageService, router, errorRoute, errorLogger) {
|
|
1672
|
+
this.sessionStorageService = sessionStorageService;
|
|
1673
|
+
this.router = router;
|
|
1674
|
+
this.errorRoute = errorRoute;
|
|
1675
|
+
this.errorLogger = errorLogger;
|
|
1676
|
+
}
|
|
1677
|
+
canActivate() {
|
|
1678
|
+
const userInfoStr = this.sessionStorageService.getItem('userDetails');
|
|
1679
|
+
if (!userInfoStr) {
|
|
1680
|
+
return true;
|
|
1681
|
+
}
|
|
1682
|
+
const parsed = safeJsonParse(userInfoStr, null);
|
|
1683
|
+
if (parsed !== null) {
|
|
1684
|
+
return true;
|
|
1685
|
+
}
|
|
1686
|
+
const error = new Error('Invalid userDetails in session storage');
|
|
1687
|
+
if (this.errorLogger) {
|
|
1688
|
+
this.errorLogger(error);
|
|
1689
|
+
}
|
|
1690
|
+
else {
|
|
1691
|
+
// eslint-disable-next-line no-console
|
|
1692
|
+
console.error('Invalid userDetails in session storage', error);
|
|
1693
|
+
}
|
|
1694
|
+
this.router.navigate([this.errorRoute || '/session-error']);
|
|
1695
|
+
return false;
|
|
1696
|
+
}
|
|
1697
|
+
static ɵfac = function SessionStorageGuard_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SessionStorageGuard)(i0.ɵɵinject(SessionStorageService), i0.ɵɵinject(i1$1.Router), i0.ɵɵinject(SessionErrorRoute, 8), i0.ɵɵinject(SessionJsonErrorLogger, 8)); };
|
|
1698
|
+
static ɵprov = /*@__PURE__*/ i0.ɵɵdefineInjectable({ token: SessionStorageGuard, factory: SessionStorageGuard.ɵfac, providedIn: 'root' });
|
|
1699
|
+
}
|
|
1700
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SessionStorageGuard, [{
|
|
1701
|
+
type: Injectable,
|
|
1702
|
+
args: [{
|
|
1703
|
+
providedIn: 'root',
|
|
1704
|
+
}]
|
|
1705
|
+
}], () => [{ type: SessionStorageService }, { type: i1$1.Router }, { type: undefined, decorators: [{
|
|
1706
|
+
type: Optional
|
|
1707
|
+
}, {
|
|
1708
|
+
type: Inject,
|
|
1709
|
+
args: [SessionErrorRoute]
|
|
1710
|
+
}] }, { type: SessionJsonErrorLogger, decorators: [{
|
|
1711
|
+
type: Optional
|
|
1712
|
+
}, {
|
|
1713
|
+
type: Inject,
|
|
1714
|
+
args: [SessionJsonErrorLogger]
|
|
1715
|
+
}] }], null); })();
|
|
1716
|
+
|
|
1646
1717
|
const USER_DETAILS = 'userDetails';
|
|
1647
1718
|
const PUI_CASE_MANAGER = 'pui-case-manager';
|
|
1648
1719
|
const JUDGE = 'judge';
|
|
1649
1720
|
function getUserDetails(sessionStorageService) {
|
|
1650
|
-
|
|
1651
|
-
|
|
1652
|
-
return item ? JSON.parse(item) : null;
|
|
1653
|
-
}
|
|
1654
|
-
catch {
|
|
1655
|
-
return null;
|
|
1656
|
-
}
|
|
1721
|
+
const item = sessionStorageService?.getItem(USER_DETAILS);
|
|
1722
|
+
return safeJsonParse(item, null);
|
|
1657
1723
|
}
|
|
1658
1724
|
function isInternalUser(sessionStorageService) {
|
|
1659
1725
|
const userDetails = getUserDetails(sessionStorageService);
|
|
@@ -1692,8 +1758,11 @@ class ActivityService {
|
|
|
1692
1758
|
return error;
|
|
1693
1759
|
}
|
|
1694
1760
|
getOptions() {
|
|
1695
|
-
const userDetails =
|
|
1696
|
-
|
|
1761
|
+
const userDetails = safeJsonParse(this.sessionStorageService.getItem(USER_DETAILS));
|
|
1762
|
+
let headers = new HttpHeaders().set('Content-Type', 'application/json');
|
|
1763
|
+
if (userDetails?.token) {
|
|
1764
|
+
headers = headers.set('Authorization', userDetails.token);
|
|
1765
|
+
}
|
|
1697
1766
|
return {
|
|
1698
1767
|
headers,
|
|
1699
1768
|
withCredentials: true,
|
|
@@ -4501,11 +4570,8 @@ class FieldsUtils {
|
|
|
4501
4570
|
}
|
|
4502
4571
|
}
|
|
4503
4572
|
static getUserTaskFromClientContext(clientContextStr) {
|
|
4504
|
-
|
|
4505
|
-
|
|
4506
|
-
return clientContext.client_context.user_task;
|
|
4507
|
-
}
|
|
4508
|
-
return null;
|
|
4573
|
+
const clientContext = safeJsonParse(clientContextStr, null);
|
|
4574
|
+
return clientContext?.client_context?.user_task || null;
|
|
4509
4575
|
}
|
|
4510
4576
|
buildCanShowPredicate(eventTrigger, form) {
|
|
4511
4577
|
const currentState = this.getCurrentEventState(eventTrigger, form);
|
|
@@ -5965,17 +6031,15 @@ class FormValueService {
|
|
|
5965
6031
|
return form[currentFieldId + FieldsUtils.LABEL_SUFFIX].join(', ');
|
|
5966
6032
|
}
|
|
5967
6033
|
else if (FieldsUtils.isCollectionOfSimpleTypes(currentForm)) {
|
|
5968
|
-
return currentForm.map(fieldValue => fieldValue
|
|
6034
|
+
return currentForm.map((fieldValue) => fieldValue.value).join(', ');
|
|
5969
6035
|
}
|
|
5970
6036
|
else if (FieldsUtils.isCollection(currentForm)) {
|
|
5971
|
-
return this.getFieldValue(currentForm[colIndex]
|
|
6037
|
+
return this.getFieldValue(currentForm[colIndex].value, fieldIds.slice(1).join('.'), colIndex);
|
|
5972
6038
|
}
|
|
5973
6039
|
else if (FieldsUtils.isNonEmptyObject(currentForm)) {
|
|
5974
6040
|
return this.getFieldValue(currentForm, fieldIds.slice(1).join('.'), colIndex);
|
|
5975
6041
|
}
|
|
5976
|
-
|
|
5977
|
-
return currentForm;
|
|
5978
|
-
}
|
|
6042
|
+
return currentForm;
|
|
5979
6043
|
}
|
|
5980
6044
|
/**
|
|
5981
6045
|
* A recursive method to remove anything with a `---LABEL` suffix.
|
|
@@ -6013,9 +6077,7 @@ class FormValueService {
|
|
|
6013
6077
|
if (field.field_type) {
|
|
6014
6078
|
return field.field_type.type === 'Label';
|
|
6015
6079
|
}
|
|
6016
|
-
|
|
6017
|
-
return false;
|
|
6018
|
-
}
|
|
6080
|
+
return false;
|
|
6019
6081
|
}
|
|
6020
6082
|
static isEmptyData(data) {
|
|
6021
6083
|
if (data) {
|
|
@@ -6062,10 +6124,13 @@ class FormValueService {
|
|
|
6062
6124
|
return s;
|
|
6063
6125
|
}
|
|
6064
6126
|
filterCurrentPageFields(caseFields, editForm) {
|
|
6065
|
-
const cloneForm =
|
|
6066
|
-
|
|
6127
|
+
const cloneForm = {
|
|
6128
|
+
...(editForm || {}),
|
|
6129
|
+
data: { ...((editForm && editForm.data) || {}) }
|
|
6130
|
+
};
|
|
6131
|
+
Object.keys(cloneForm.data).forEach((key) => {
|
|
6067
6132
|
if (caseFields.findIndex((element) => element.id === key) < 0) {
|
|
6068
|
-
delete cloneForm
|
|
6133
|
+
delete cloneForm.data[key];
|
|
6069
6134
|
}
|
|
6070
6135
|
});
|
|
6071
6136
|
return cloneForm;
|
|
@@ -6106,7 +6171,7 @@ class FormValueService {
|
|
|
6106
6171
|
if (!rawArray) {
|
|
6107
6172
|
return rawArray;
|
|
6108
6173
|
}
|
|
6109
|
-
rawArray.forEach(item => {
|
|
6174
|
+
rawArray.forEach((item) => {
|
|
6110
6175
|
if (item && item.hasOwnProperty('value')) {
|
|
6111
6176
|
item.value = this.sanitiseValue(item.value);
|
|
6112
6177
|
}
|
|
@@ -6115,8 +6180,8 @@ class FormValueService {
|
|
|
6115
6180
|
// association of a value. In addition, if the array contains items with a "value" object property, return only
|
|
6116
6181
|
// those whose value object contains non-empty values, including for any descendant objects
|
|
6117
6182
|
return rawArray
|
|
6118
|
-
.filter(item => !!item)
|
|
6119
|
-
.filter(item => item.hasOwnProperty('value') ? FieldsUtils.containsNonEmptyValues(item.value) : true);
|
|
6183
|
+
.filter((item) => !!item)
|
|
6184
|
+
.filter((item) => item.hasOwnProperty('value') ? FieldsUtils.containsNonEmptyValues(item.value) : true);
|
|
6120
6185
|
}
|
|
6121
6186
|
sanitiseValue(rawValue) {
|
|
6122
6187
|
if (Array.isArray(rawValue)) {
|
|
@@ -6135,7 +6200,7 @@ class FormValueService {
|
|
|
6135
6200
|
}
|
|
6136
6201
|
clearNonCaseFields(data, caseFields) {
|
|
6137
6202
|
for (const dataKey in data) {
|
|
6138
|
-
if (!caseFields.find(cf => cf.id === dataKey)) {
|
|
6203
|
+
if (!caseFields.find((cf) => cf.id === dataKey)) {
|
|
6139
6204
|
delete data[dataKey];
|
|
6140
6205
|
}
|
|
6141
6206
|
}
|
|
@@ -6333,7 +6398,7 @@ class FormValueService {
|
|
|
6333
6398
|
*/
|
|
6334
6399
|
removeCaseFieldsOfType(data, caseFields, types) {
|
|
6335
6400
|
if (data && caseFields && caseFields.length > 0 && types.length > 0) {
|
|
6336
|
-
const caseFieldsToRemove = caseFields.filter(caseField => FieldsUtils.isCaseFieldOfType(caseField, types));
|
|
6401
|
+
const caseFieldsToRemove = caseFields.filter((caseField) => FieldsUtils.isCaseFieldOfType(caseField, types));
|
|
6337
6402
|
for (const caseField of caseFieldsToRemove) {
|
|
6338
6403
|
delete data[caseField.id];
|
|
6339
6404
|
}
|
|
@@ -6352,10 +6417,10 @@ class FormValueService {
|
|
|
6352
6417
|
*/
|
|
6353
6418
|
repopulateFormDataFromCaseFieldValues(data, caseFields) {
|
|
6354
6419
|
if (data && caseFields && caseFields.length > 0 &&
|
|
6355
|
-
caseFields.findIndex(caseField => FieldsUtils.isCaseFieldOfType(caseField, ['FlagLauncher'])) > -1) {
|
|
6420
|
+
caseFields.findIndex((caseField) => FieldsUtils.isCaseFieldOfType(caseField, ['FlagLauncher'])) > -1) {
|
|
6356
6421
|
// Ignore the FlagLauncher CaseField because it does not hold any values
|
|
6357
|
-
caseFields.filter(caseField => !FieldsUtils.isCaseFieldOfType(caseField, ['FlagLauncher']))
|
|
6358
|
-
.forEach(caseField => {
|
|
6422
|
+
caseFields.filter((caseField) => !FieldsUtils.isCaseFieldOfType(caseField, ['FlagLauncher']))
|
|
6423
|
+
.forEach((caseField) => {
|
|
6359
6424
|
// Ensure that the data object is populated for all CaseField keys it contains, even if for a given
|
|
6360
6425
|
// CaseField key, the data object has a falsy value (hence the use of hasOwnProperty() for the check below)
|
|
6361
6426
|
// See https://tools.hmcts.net/jira/browse/EUI-7377
|
|
@@ -6387,8 +6452,8 @@ class FormValueService {
|
|
|
6387
6452
|
*/
|
|
6388
6453
|
populateLinkedCasesDetailsFromCaseFields(data, caseFields) {
|
|
6389
6454
|
if (data && caseFields && caseFields.length > 0) {
|
|
6390
|
-
caseFields.filter(caseField => !FieldsUtils.isCaseFieldOfType(caseField, ['ComponentLauncher']))
|
|
6391
|
-
.forEach(caseField => {
|
|
6455
|
+
caseFields.filter((caseField) => !FieldsUtils.isCaseFieldOfType(caseField, ['ComponentLauncher']))
|
|
6456
|
+
.forEach((caseField) => {
|
|
6392
6457
|
if (data.hasOwnProperty('caseLinks') && caseField.value) {
|
|
6393
6458
|
data[caseField.id] = caseField.value;
|
|
6394
6459
|
}
|
|
@@ -7246,8 +7311,6 @@ class DocumentManagementService {
|
|
|
7246
7311
|
static POWERPOINT = 'powerpoint';
|
|
7247
7312
|
static TXT = 'txt';
|
|
7248
7313
|
static RTF = 'rtf';
|
|
7249
|
-
static HTML_MIME_ALLOWLIST = ['text/html'];
|
|
7250
|
-
static HTML_EXTENSION_ALLOWLIST = ['html'];
|
|
7251
7314
|
// This delay has been added to give enough time to the user on the UI to see the info messages on the document upload
|
|
7252
7315
|
// field for cases when uploads are very fast.
|
|
7253
7316
|
static RESPONSE_DELAY = 1000;
|
|
@@ -7280,35 +7343,16 @@ class DocumentManagementService {
|
|
|
7280
7343
|
this.caseTypeId = this.resolveCaseTypeId(caseInfo, currUrl);
|
|
7281
7344
|
}
|
|
7282
7345
|
getMediaViewerInfo(documentFieldValue) {
|
|
7283
|
-
const resolvedBinaryUrl = this.getDocumentBinaryUrl(documentFieldValue);
|
|
7284
|
-
const resolvedContentType = this.getContentType(documentFieldValue);
|
|
7285
7346
|
const mediaViewerInfo = {
|
|
7286
|
-
document_binary_url:
|
|
7347
|
+
document_binary_url: this.transformDocumentUrl(documentFieldValue.document_binary_url),
|
|
7287
7348
|
document_filename: documentFieldValue.document_filename,
|
|
7288
|
-
content_type:
|
|
7349
|
+
content_type: this.getContentType(documentFieldValue),
|
|
7289
7350
|
annotation_api_url: this.appConfig.getAnnotationApiUrl(),
|
|
7290
7351
|
case_id: documentFieldValue.id,
|
|
7291
7352
|
case_jurisdiction: documentFieldValue.jurisdiction
|
|
7292
7353
|
};
|
|
7293
7354
|
return JSON.stringify(mediaViewerInfo);
|
|
7294
7355
|
}
|
|
7295
|
-
getDocumentBinaryUrl(documentFieldValue) {
|
|
7296
|
-
if (!documentFieldValue?.document_binary_url) {
|
|
7297
|
-
return '';
|
|
7298
|
-
}
|
|
7299
|
-
return this.transformDocumentUrl(documentFieldValue.document_binary_url);
|
|
7300
|
-
}
|
|
7301
|
-
// keep HTML support explicit to avoid opening arbitrary MIME types directly in a browser tab
|
|
7302
|
-
isHtmlDocument(documentFieldValue) {
|
|
7303
|
-
const rawMimeType = documentFieldValue?.content_type;
|
|
7304
|
-
const mimeType = this.normaliseMimeType(rawMimeType);
|
|
7305
|
-
const isAllowedHtmlMime = DocumentManagementService.HTML_MIME_ALLOWLIST.includes(mimeType);
|
|
7306
|
-
// Some read paths (e.g. documents rendered via complex table fields) do not provide content_type.
|
|
7307
|
-
// For those, allow a narrow extension-based fallback so known .html legacy files can still open in a new tab.
|
|
7308
|
-
const fileExtension = this.getFileExtension(documentFieldValue?.document_filename);
|
|
7309
|
-
const isAllowedHtmlExtension = !mimeType && DocumentManagementService.HTML_EXTENSION_ALLOWLIST.includes(fileExtension);
|
|
7310
|
-
return isAllowedHtmlMime || isAllowedHtmlExtension;
|
|
7311
|
-
}
|
|
7312
7356
|
getContentType(documentFieldValue) {
|
|
7313
7357
|
let fileExtension = '<unknown>';
|
|
7314
7358
|
if (documentFieldValue.document_filename) {
|
|
@@ -7398,22 +7442,6 @@ class DocumentManagementService {
|
|
|
7398
7442
|
const remoteDocumentManagementPattern = new RegExp(this.appConfig.getRemoteDocumentManagementUrl());
|
|
7399
7443
|
return documentBinaryUrl.replace(remoteDocumentManagementPattern, this.getDocStoreUrl());
|
|
7400
7444
|
}
|
|
7401
|
-
normaliseMimeType(contentType) {
|
|
7402
|
-
if (!contentType) {
|
|
7403
|
-
return '';
|
|
7404
|
-
}
|
|
7405
|
-
return contentType.split(';')[0].trim().toLowerCase();
|
|
7406
|
-
}
|
|
7407
|
-
getFileExtension(fileName) {
|
|
7408
|
-
if (!fileName) {
|
|
7409
|
-
return '';
|
|
7410
|
-
}
|
|
7411
|
-
const dotIndex = fileName.lastIndexOf('.');
|
|
7412
|
-
if (dotIndex < 0 || dotIndex === fileName.length - 1) {
|
|
7413
|
-
return '';
|
|
7414
|
-
}
|
|
7415
|
-
return fileName.slice(dotIndex + 1).trim().toLowerCase();
|
|
7416
|
-
}
|
|
7417
7445
|
getDocStoreUrl() {
|
|
7418
7446
|
this.setCaseInfo();
|
|
7419
7447
|
if (this.isDocumentSecureModeEnabled()) {
|
|
@@ -8053,10 +8081,7 @@ class WindowService {
|
|
|
8053
8081
|
return window.sessionStorage.getItem(key);
|
|
8054
8082
|
}
|
|
8055
8083
|
openOnNewTab(url) {
|
|
8056
|
-
|
|
8057
|
-
if (openedWindow) {
|
|
8058
|
-
openedWindow.opener = null;
|
|
8059
|
-
}
|
|
8084
|
+
window.open(url, '_blank');
|
|
8060
8085
|
}
|
|
8061
8086
|
confirm(message) {
|
|
8062
8087
|
return window.confirm(message);
|
|
@@ -9455,7 +9480,7 @@ class CaseEditComponent {
|
|
|
9455
9480
|
ngOnInit() {
|
|
9456
9481
|
this.wizard = this.wizardFactory.create(this.eventTrigger);
|
|
9457
9482
|
this.initialUrl = this.sessionStorageService.getItem('eventUrl');
|
|
9458
|
-
this.isPageRefreshed =
|
|
9483
|
+
this.isPageRefreshed = safeJsonParse(this.sessionStorageService.getItem('isPageRefreshed'), false);
|
|
9459
9484
|
this.checkPageRefresh();
|
|
9460
9485
|
this.form = this.fb.group({
|
|
9461
9486
|
data: new FormGroup({}),
|
|
@@ -9579,15 +9604,11 @@ class CaseEditComponent {
|
|
|
9579
9604
|
const taskEventCompletionStr = this.sessionStorageService.getItem(CaseEditComponent.TASK_EVENT_COMPLETION_INFO);
|
|
9580
9605
|
const userInfoStr = this.sessionStorageService.getItem('userDetails');
|
|
9581
9606
|
const assignNeeded = this.sessionStorageService.getItem('assignNeeded');
|
|
9582
|
-
|
|
9583
|
-
|
|
9584
|
-
}
|
|
9585
|
-
if (userInfoStr) {
|
|
9586
|
-
userInfo = JSON.parse(userInfoStr);
|
|
9587
|
-
}
|
|
9607
|
+
taskEventCompletionInfo = safeJsonParse(taskEventCompletionStr, null);
|
|
9608
|
+
userInfo = safeJsonParse(userInfoStr, null);
|
|
9588
9609
|
const eventId = this.getEventId(form);
|
|
9589
9610
|
const caseId = this.getCaseId(caseDetails);
|
|
9590
|
-
const userId = userInfo
|
|
9611
|
+
const userId = userInfo?.id ? userInfo.id : userInfo?.uid;
|
|
9591
9612
|
const eventDetails = { eventId, caseId, userId, assignNeeded };
|
|
9592
9613
|
if (this.taskExistsForThisEvent(taskInSessionStorage, taskEventCompletionInfo, eventDetails)) {
|
|
9593
9614
|
this.abstractConfig.logMessage(`task ${taskInSessionStorage?.id} exist for this event for caseId and eventId as ${caseId} ${eventId}`);
|
|
@@ -9949,7 +9970,7 @@ class CaseEditComponent {
|
|
|
9949
9970
|
}], submitted: [{
|
|
9950
9971
|
type: Output
|
|
9951
9972
|
}] }); })();
|
|
9952
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CaseEditComponent, { className: "CaseEditComponent", filePath: "lib/shared/components/case-editor/case-edit/case-edit.component.ts", lineNumber:
|
|
9973
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CaseEditComponent, { className: "CaseEditComponent", filePath: "lib/shared/components/case-editor/case-edit/case-edit.component.ts", lineNumber: 39 }); })();
|
|
9953
9974
|
|
|
9954
9975
|
function convertNonASCIICharacter(character) {
|
|
9955
9976
|
if (character === '£') {
|
|
@@ -12008,6 +12029,42 @@ class CallbackErrorsComponent {
|
|
|
12008
12029
|
}] }); })();
|
|
12009
12030
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CallbackErrorsComponent, { className: "CallbackErrorsComponent", filePath: "lib/shared/components/error/callback-errors.component.ts", lineNumber: 11 }); })();
|
|
12010
12031
|
|
|
12032
|
+
class SessionErrorPageComponent {
|
|
12033
|
+
title = 'There is a problem with your session';
|
|
12034
|
+
primaryMessage = 'Go to landing page. Refreshing the page. If the problem persists, sign out and sign in again.';
|
|
12035
|
+
secondaryMessage = 'If you still cannot access the service, clear your browser data for this website.';
|
|
12036
|
+
static ɵfac = function SessionErrorPageComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || SessionErrorPageComponent)(); };
|
|
12037
|
+
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: SessionErrorPageComponent, selectors: [["ccd-session-error-page"]], inputs: { title: "title", primaryMessage: "primaryMessage", secondaryMessage: "secondaryMessage" }, decls: 10, vars: 3, consts: [[1, "govuk-width-container"], ["id", "content", "role", "main", 1, "govuk-main-wrapper", "govuk-main-wrapper--l"], [1, "govuk-grid-row"], [1, "govuk-grid-column-two-thirds"], [1, "govuk-heading-xl"], [1, "govuk-body"]], template: function SessionErrorPageComponent_Template(rf, ctx) { if (rf & 1) {
|
|
12038
|
+
i0.ɵɵdomElementStart(0, "div", 0)(1, "main", 1)(2, "div", 2)(3, "div", 3)(4, "h1", 4);
|
|
12039
|
+
i0.ɵɵtext(5);
|
|
12040
|
+
i0.ɵɵdomElementEnd();
|
|
12041
|
+
i0.ɵɵdomElementStart(6, "p", 5);
|
|
12042
|
+
i0.ɵɵtext(7);
|
|
12043
|
+
i0.ɵɵdomElementEnd();
|
|
12044
|
+
i0.ɵɵdomElementStart(8, "p", 5);
|
|
12045
|
+
i0.ɵɵtext(9);
|
|
12046
|
+
i0.ɵɵdomElementEnd()()()()();
|
|
12047
|
+
} if (rf & 2) {
|
|
12048
|
+
i0.ɵɵadvance(5);
|
|
12049
|
+
i0.ɵɵtextInterpolate(ctx.title);
|
|
12050
|
+
i0.ɵɵadvance(2);
|
|
12051
|
+
i0.ɵɵtextInterpolate(ctx.primaryMessage);
|
|
12052
|
+
i0.ɵɵadvance(2);
|
|
12053
|
+
i0.ɵɵtextInterpolate(ctx.secondaryMessage);
|
|
12054
|
+
} }, dependencies: [CommonModule], encapsulation: 2 });
|
|
12055
|
+
}
|
|
12056
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(SessionErrorPageComponent, [{
|
|
12057
|
+
type: Component,
|
|
12058
|
+
args: [{ selector: 'ccd-session-error-page', standalone: true, imports: [CommonModule], template: "<div class=\"govuk-width-container\">\n <main class=\"govuk-main-wrapper govuk-main-wrapper--l\" id=\"content\" role=\"main\">\n <div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-two-thirds\">\n <h1 class=\"govuk-heading-xl\">{{ title }}</h1>\n <p class=\"govuk-body\">{{ primaryMessage }}</p>\n <p class=\"govuk-body\">{{ secondaryMessage }}</p>\n </div>\n </div>\n </main>\n</div>\n" }]
|
|
12059
|
+
}], null, { title: [{
|
|
12060
|
+
type: Input
|
|
12061
|
+
}], primaryMessage: [{
|
|
12062
|
+
type: Input
|
|
12063
|
+
}], secondaryMessage: [{
|
|
12064
|
+
type: Input
|
|
12065
|
+
}] }); })();
|
|
12066
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(SessionErrorPageComponent, { className: "SessionErrorPageComponent", filePath: "lib/shared/components/error/session-error-page.component.ts", lineNumber: 10 }); })();
|
|
12067
|
+
|
|
12011
12068
|
function CaseEventCompletionComponent_app_case_event_completion_task_cancelled_0_Template(rf, ctx) { if (rf & 1) {
|
|
12012
12069
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
12013
12070
|
i0.ɵɵelementStart(0, "app-case-event-completion-task-cancelled", 2);
|
|
@@ -13223,7 +13280,6 @@ class CaseFileViewFieldComponent {
|
|
|
13223
13280
|
documentManagementService;
|
|
13224
13281
|
loadingService;
|
|
13225
13282
|
sessionStorageService;
|
|
13226
|
-
windowService;
|
|
13227
13283
|
caseNotifier;
|
|
13228
13284
|
abstractConfig;
|
|
13229
13285
|
static PARAM_CASE_ID = 'cid';
|
|
@@ -13238,14 +13294,13 @@ class CaseFileViewFieldComponent {
|
|
|
13238
13294
|
icp_jurisdictions = [];
|
|
13239
13295
|
icpEnabled = false;
|
|
13240
13296
|
caseId;
|
|
13241
|
-
constructor(elementRef, route, caseFileViewService, documentManagementService, loadingService, sessionStorageService,
|
|
13297
|
+
constructor(elementRef, route, caseFileViewService, documentManagementService, loadingService, sessionStorageService, caseNotifier, abstractConfig) {
|
|
13242
13298
|
this.elementRef = elementRef;
|
|
13243
13299
|
this.route = route;
|
|
13244
13300
|
this.caseFileViewService = caseFileViewService;
|
|
13245
13301
|
this.documentManagementService = documentManagementService;
|
|
13246
13302
|
this.loadingService = loadingService;
|
|
13247
13303
|
this.sessionStorageService = sessionStorageService;
|
|
13248
|
-
this.windowService = windowService;
|
|
13249
13304
|
this.caseNotifier = caseNotifier;
|
|
13250
13305
|
this.abstractConfig = abstractConfig;
|
|
13251
13306
|
}
|
|
@@ -13259,9 +13314,10 @@ class CaseFileViewFieldComponent {
|
|
|
13259
13314
|
error: _ => this.getCategoriesAndDocumentsError = true
|
|
13260
13315
|
});
|
|
13261
13316
|
// EXUI-8000
|
|
13262
|
-
const userInfo =
|
|
13317
|
+
const userInfo = safeJsonParse(this.sessionStorageService.getItem('userDetails'), null);
|
|
13318
|
+
const userRoles = userInfo?.roles || [];
|
|
13263
13319
|
// Get acls that intersects from acl roles and user roles
|
|
13264
|
-
const acls = this.caseField.acls.filter(acl =>
|
|
13320
|
+
const acls = this.caseField.acls.filter(acl => userRoles.includes(acl.role));
|
|
13265
13321
|
// As there can be more than one intersecting role, if any acls are update: true
|
|
13266
13322
|
this.allowMoving = acls.some(acl => acl.update);
|
|
13267
13323
|
this.icp_jurisdictions = this.abstractConfig.getIcpJurisdictions();
|
|
@@ -13290,20 +13346,10 @@ class CaseFileViewFieldComponent {
|
|
|
13290
13346
|
});
|
|
13291
13347
|
}
|
|
13292
13348
|
setMediaViewerFile(document) {
|
|
13293
|
-
const
|
|
13349
|
+
const mediaViewerInfo = this.documentManagementService.getMediaViewerInfo({
|
|
13294
13350
|
document_binary_url: document.document_binary_url,
|
|
13295
|
-
document_filename: document.document_filename
|
|
13296
|
-
|
|
13297
|
-
};
|
|
13298
|
-
if (this.documentManagementService.isHtmlDocument(documentDetails)) {
|
|
13299
|
-
const documentBinaryUrl = this.documentManagementService.getDocumentBinaryUrl(documentDetails);
|
|
13300
|
-
if (documentBinaryUrl) {
|
|
13301
|
-
this.currentDocument = undefined;
|
|
13302
|
-
this.windowService.openOnNewTab(documentBinaryUrl);
|
|
13303
|
-
return;
|
|
13304
|
-
}
|
|
13305
|
-
}
|
|
13306
|
-
const mediaViewerInfo = this.documentManagementService.getMediaViewerInfo(documentDetails);
|
|
13351
|
+
document_filename: document.document_filename
|
|
13352
|
+
});
|
|
13307
13353
|
this.currentDocument = JSON.parse(mediaViewerInfo);
|
|
13308
13354
|
}
|
|
13309
13355
|
moveDocument(data) {
|
|
@@ -13337,7 +13383,7 @@ class CaseFileViewFieldComponent {
|
|
|
13337
13383
|
isIcpEnabled() {
|
|
13338
13384
|
return this.icpEnabled && ((this.icp_jurisdictions?.length < 1) || this.icp_jurisdictions.includes(this.caseNotifier?.cachedCaseView?.case_type?.jurisdiction.id));
|
|
13339
13385
|
}
|
|
13340
|
-
static ɵfac = function CaseFileViewFieldComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CaseFileViewFieldComponent)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i1$1.ActivatedRoute), i0.ɵɵdirectiveInject(CaseFileViewService), i0.ɵɵdirectiveInject(DocumentManagementService), i0.ɵɵdirectiveInject(LoadingService), i0.ɵɵdirectiveInject(SessionStorageService), i0.ɵɵdirectiveInject(
|
|
13386
|
+
static ɵfac = function CaseFileViewFieldComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CaseFileViewFieldComponent)(i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i1$1.ActivatedRoute), i0.ɵɵdirectiveInject(CaseFileViewService), i0.ɵɵdirectiveInject(DocumentManagementService), i0.ɵɵdirectiveInject(LoadingService), i0.ɵɵdirectiveInject(SessionStorageService), i0.ɵɵdirectiveInject(CaseNotifier), i0.ɵɵdirectiveInject(AbstractAppConfig)); };
|
|
13341
13387
|
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CaseFileViewFieldComponent, selectors: [["ccd-case-file-view-field"]], standalone: false, decls: 3, vars: 3, consts: [[4, "ngIf"], ["class", "govuk-grid-column-two-thirds", 4, "ngIf"], ["id", "case-file-view-field-errors", "data-module", "govuk-error-summary", 1, "govuk-error-summary", "govuk-!-margin-bottom-4"], ["role", "alert"], [1, "govuk-error-summary__title"], [1, "govuk-error-summary__body"], [1, "govuk-list", "govuk-error-summary__list"], [4, "ngFor", "ngForOf"], ["type", "button", 1, "govuk-js-link"], [1, "govuk-grid-column-two-thirds"], [1, "govuk-heading-xl"], [1, "govuk-body"], [1, "govuk-heading-l"], ["id", "case-file-view", 1, "govuk-form-group"], [1, "document-tree-container"], [1, "document-tree-container__tree", 3, "clickedDocument", "moveDocument", "categoriesAndDocuments", "allowMoving"], [1, "slider"], [1, "media-viewer-container"], [3, "url", "downloadFileName", "showToolbar", "contentType", "enableAnnotations", "enableRedactions", "height", "caseId", "multimediaPlayerEnabled", "enableICP"]], template: function CaseFileViewFieldComponent_Template(rf, ctx) { if (rf & 1) {
|
|
13342
13388
|
i0.ɵɵtemplate(0, CaseFileViewFieldComponent_ng_container_0_Template, 8, 1, "ng-container", 0)(1, CaseFileViewFieldComponent_div_1_Template, 5, 0, "div", 1)(2, CaseFileViewFieldComponent_div_2_Template, 9, 3, "div", 0);
|
|
13343
13389
|
} if (rf & 2) {
|
|
@@ -13351,8 +13397,8 @@ class CaseFileViewFieldComponent {
|
|
|
13351
13397
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseFileViewFieldComponent, [{
|
|
13352
13398
|
type: Component,
|
|
13353
13399
|
args: [{ selector: 'ccd-case-file-view-field', standalone: false, template: "<ng-container *ngIf=\"errorMessages?.length\">\n <div\n id=\"case-file-view-field-errors\"\n class=\"govuk-error-summary govuk-!-margin-bottom-4\"\n data-module=\"govuk-error-summary\"\n >\n <div role=\"alert\">\n <h2 class=\"govuk-error-summary__title\">There is a problem</h2>\n <div class=\"govuk-error-summary__body\">\n <ul class=\"govuk-list govuk-error-summary__list\">\n <li *ngFor=\"let errorMessage of errorMessages\">\n <button type=\"button\" class=\"govuk-js-link\">{{ errorMessage }}</button>\n </li>\n </ul>\n </div>\n </div>\n </div>\n</ng-container>\n\n<div\n *ngIf=\"getCategoriesAndDocumentsError\"\n class=\"govuk-grid-column-two-thirds\"\n>\n <h1 class=\"govuk-heading-xl\">Sorry, there is a problem with the service</h1>\n <p class=\"govuk-body\">Try again later.</p>\n</div>\n<div *ngIf=\"!getCategoriesAndDocumentsError\">\n <h2 class=\"govuk-heading-l\">Case file</h2>\n <div class=\"govuk-form-group\" id=\"case-file-view\">\n <!-- Document tree -->\n <div class=\"document-tree-container\">\n <ccd-case-file-view-folder \n class=\"document-tree-container__tree\"\n [categoriesAndDocuments]=\"categoriesAndDocuments$\"\n (clickedDocument)=\"setMediaViewerFile($event); resetErrorMessages()\" \n (moveDocument)=\"moveDocument($event)\"\n [allowMoving]=\"allowMoving\">\n </ccd-case-file-view-folder>\n </div>\n <!-- Slider -->\n <div class=\"slider\"></div>\n <!-- Media viewer -->\n <div class=\"media-viewer-container\">\n <ng-container *ngIf=\"currentDocument\">\n <mv-media-viewer\n [url]=\"currentDocument.document_binary_url\"\n [downloadFileName]=\"currentDocument.document_filename\"\n [showToolbar]=\"true\"\n [contentType]=\"currentDocument.content_type\"\n [enableAnnotations]=\"true\"\n [enableRedactions]=\"true\"\n [height]=\"'94.5vh'\"\n [caseId]=\"caseId\"\n [multimediaPlayerEnabled]=\"true\"\n [enableICP]=\"isIcpEnabled()\"\n >\n </mv-media-viewer>\n </ng-container>\n </div>\n </div>\n</div>\n", styles: ["#case-file-view{display:flex;border:2px solid #C9C9C9;height:100vh;position:relative}#case-file-view .document-tree-container{background-color:#faf8f8;width:30%;min-height:400px;min-width:10%}#case-file-view .slider{width:.2%;background-color:#6b6b6b}#case-file-view .slider:hover,#case-file-view .slider:focus{cursor:col-resize}#case-file-view .media-viewer-container{background-color:#dee0e2;flex:1 1 0;overflow:hidden}\n"] }]
|
|
13354
|
-
}], () => [{ type: i0.ElementRef }, { type: i1$1.ActivatedRoute }, { type: CaseFileViewService }, { type: DocumentManagementService }, { type: LoadingService }, { type: SessionStorageService }, { type:
|
|
13355
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CaseFileViewFieldComponent, { className: "CaseFileViewFieldComponent", filePath: "lib/shared/components/palette/case-file-view/case-file-view-field.component.ts", lineNumber:
|
|
13400
|
+
}], () => [{ type: i0.ElementRef }, { type: i1$1.ActivatedRoute }, { type: CaseFileViewService }, { type: DocumentManagementService }, { type: LoadingService }, { type: SessionStorageService }, { type: CaseNotifier }, { type: AbstractAppConfig }], null); })();
|
|
13401
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CaseFileViewFieldComponent, { className: "CaseFileViewFieldComponent", filePath: "lib/shared/components/palette/case-file-view/case-file-view-field.component.ts", lineNumber: 19 }); })();
|
|
13356
13402
|
|
|
13357
13403
|
function ReadCaseFlagFieldComponent_ng_container_0_Template(rf, ctx) { if (rf & 1) {
|
|
13358
13404
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
@@ -15336,13 +15382,6 @@ class ReadDocumentFieldComponent extends AbstractFieldReadComponent {
|
|
|
15336
15382
|
}
|
|
15337
15383
|
}
|
|
15338
15384
|
openMediaViewer(documentFieldValue) {
|
|
15339
|
-
const documentBinaryUrl = this.documentManagement.getDocumentBinaryUrl(documentFieldValue);
|
|
15340
|
-
const isHtmlDocument = this.documentManagement.isHtmlDocument(documentFieldValue);
|
|
15341
|
-
if (isHtmlDocument && documentBinaryUrl) {
|
|
15342
|
-
// HTML files are opened directly in a separate tab; all other types continue to use media viewer.
|
|
15343
|
-
this.windowService.openOnNewTab(documentBinaryUrl);
|
|
15344
|
-
return;
|
|
15345
|
-
}
|
|
15346
15385
|
const token = FieldsUtils.createToken();
|
|
15347
15386
|
const storageKey = `${MEDIA_VIEWER_INFO}:${token}`;
|
|
15348
15387
|
const payload = this.documentManagement.getMediaViewerInfo(documentFieldValue);
|
|
@@ -20594,14 +20633,14 @@ class PaymentField extends AbstractFieldReadComponent {
|
|
|
20594
20633
|
return this.appConfig.getNotificationUrl();
|
|
20595
20634
|
}
|
|
20596
20635
|
getUserRoles() {
|
|
20597
|
-
const userDetails =
|
|
20636
|
+
const userDetails = safeJsonParse(this.sessionStorage.getItem('userDetails'), null);
|
|
20598
20637
|
if (!userDetails || !userDetails.hasOwnProperty('roles')) {
|
|
20599
20638
|
return [];
|
|
20600
20639
|
}
|
|
20601
20640
|
return userDetails.roles;
|
|
20602
20641
|
}
|
|
20603
20642
|
getUserEmail() {
|
|
20604
|
-
const userDetails =
|
|
20643
|
+
const userDetails = safeJsonParse(this.sessionStorage.getItem('userDetails'), null);
|
|
20605
20644
|
if (!userDetails || !userDetails.hasOwnProperty('sub')) {
|
|
20606
20645
|
return '';
|
|
20607
20646
|
}
|
|
@@ -21327,7 +21366,7 @@ class QueryManagementService {
|
|
|
21327
21366
|
) {
|
|
21328
21367
|
let currentUserDetails;
|
|
21329
21368
|
try {
|
|
21330
|
-
currentUserDetails =
|
|
21369
|
+
currentUserDetails = safeJsonParse(this.sessionStorageService.getItem(USER_DETAILS), {});
|
|
21331
21370
|
}
|
|
21332
21371
|
catch (e) {
|
|
21333
21372
|
console.error('Could not parse USER_DETAILS from session storage:', e);
|
|
@@ -25359,7 +25398,6 @@ class DocumentTreeNode {
|
|
|
25359
25398
|
children;
|
|
25360
25399
|
document_filename;
|
|
25361
25400
|
document_binary_url;
|
|
25362
|
-
content_type;
|
|
25363
25401
|
attribute_path;
|
|
25364
25402
|
upload_timestamp;
|
|
25365
25403
|
category_order;
|
|
@@ -25555,6 +25593,7 @@ class CaseFileViewFolderComponent {
|
|
|
25555
25593
|
router;
|
|
25556
25594
|
documentManagementService;
|
|
25557
25595
|
dialog;
|
|
25596
|
+
appConfig;
|
|
25558
25597
|
static UNCATEGORISED_DOCUMENTS_TITLE = 'Uncategorised documents';
|
|
25559
25598
|
static DOCUMENT_SEARCH_FORM_CONTROL_NAME = 'documentSearchFormControl';
|
|
25560
25599
|
static MINIMUM_SEARCH_CHARACTERS = 1;
|
|
@@ -25584,11 +25623,12 @@ class CaseFileViewFolderComponent {
|
|
|
25584
25623
|
return 0;
|
|
25585
25624
|
}
|
|
25586
25625
|
}
|
|
25587
|
-
constructor(windowService, router, documentManagementService, dialog) {
|
|
25626
|
+
constructor(windowService, router, documentManagementService, dialog, appConfig) {
|
|
25588
25627
|
this.windowService = windowService;
|
|
25589
25628
|
this.router = router;
|
|
25590
25629
|
this.documentManagementService = documentManagementService;
|
|
25591
25630
|
this.dialog = dialog;
|
|
25631
|
+
this.appConfig = appConfig;
|
|
25592
25632
|
this.nestedTreeControl = new NestedTreeControl(this.getChildren);
|
|
25593
25633
|
}
|
|
25594
25634
|
collapseAll(expand) {
|
|
@@ -25649,9 +25689,6 @@ class CaseFileViewFolderComponent {
|
|
|
25649
25689
|
documentTreeNode.type = DocumentTreeNodeType.DOCUMENT;
|
|
25650
25690
|
documentTreeNode.document_filename = document.document_filename;
|
|
25651
25691
|
documentTreeNode.document_binary_url = document.document_binary_url;
|
|
25652
|
-
if (document.content_type) {
|
|
25653
|
-
documentTreeNode.content_type = document.content_type;
|
|
25654
|
-
}
|
|
25655
25692
|
documentTreeNode.attribute_path = document.attribute_path;
|
|
25656
25693
|
documentTreeNode.upload_timestamp = document.upload_timestamp ? document.upload_timestamp.toString() : '';
|
|
25657
25694
|
documentsToReturn.push(documentTreeNode);
|
|
@@ -25666,9 +25703,6 @@ class CaseFileViewFolderComponent {
|
|
|
25666
25703
|
documentTreeNode.type = DocumentTreeNodeType.DOCUMENT;
|
|
25667
25704
|
documentTreeNode.document_filename = document.document_filename;
|
|
25668
25705
|
documentTreeNode.document_binary_url = document.document_binary_url;
|
|
25669
|
-
if (document.content_type) {
|
|
25670
|
-
documentTreeNode.content_type = document.content_type;
|
|
25671
|
-
}
|
|
25672
25706
|
documentTreeNode.attribute_path = document.attribute_path;
|
|
25673
25707
|
documentTreeNode.upload_timestamp = document.upload_timestamp ? document.upload_timestamp.toString() : '';
|
|
25674
25708
|
documents.push(documentTreeNode);
|
|
@@ -25705,25 +25739,11 @@ class CaseFileViewFolderComponent {
|
|
|
25705
25739
|
this.openMoveDialog(documentTreeNode);
|
|
25706
25740
|
break;
|
|
25707
25741
|
case ('openInANewTab'):
|
|
25708
|
-
const documentDetails = {
|
|
25709
|
-
document_binary_url: documentTreeNode.document_binary_url,
|
|
25710
|
-
document_filename: documentTreeNode.document_filename,
|
|
25711
|
-
content_type: documentTreeNode.content_type
|
|
25712
|
-
};
|
|
25713
|
-
const isHtmlDocument = this.documentManagementService.isHtmlDocument(documentDetails);
|
|
25714
|
-
if (isHtmlDocument) {
|
|
25715
|
-
const documentBinaryUrl = this.documentManagementService.getDocumentBinaryUrl(documentDetails);
|
|
25716
|
-
if (documentBinaryUrl) {
|
|
25717
|
-
this.windowService.openOnNewTab(documentBinaryUrl);
|
|
25718
|
-
return;
|
|
25719
|
-
}
|
|
25720
|
-
}
|
|
25721
25742
|
const token = FieldsUtils.createToken();
|
|
25722
25743
|
const storageKey = `${MEDIA_VIEWER_LOCALSTORAGE_KEY}:${token}`;
|
|
25723
25744
|
const payload = this.documentManagementService.getMediaViewerInfo({
|
|
25724
25745
|
document_binary_url: documentTreeNode.document_binary_url,
|
|
25725
|
-
document_filename: documentTreeNode.document_filename
|
|
25726
|
-
content_type: documentTreeNode.content_type
|
|
25746
|
+
document_filename: documentTreeNode.document_filename
|
|
25727
25747
|
});
|
|
25728
25748
|
this.windowService.setLocalStorage(storageKey, payload);
|
|
25729
25749
|
const mediaViewerUrl = this.router.createUrlTree(['/media-viewer'], { queryParams: { mvToken: token } })?.toString();
|
|
@@ -25805,7 +25825,7 @@ class CaseFileViewFolderComponent {
|
|
|
25805
25825
|
a.click();
|
|
25806
25826
|
a.remove();
|
|
25807
25827
|
}
|
|
25808
|
-
static ɵfac = function CaseFileViewFolderComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CaseFileViewFolderComponent)(i0.ɵɵdirectiveInject(WindowService), i0.ɵɵdirectiveInject(i1$1.Router), i0.ɵɵdirectiveInject(DocumentManagementService), i0.ɵɵdirectiveInject(i1$3.MatLegacyDialog)); };
|
|
25828
|
+
static ɵfac = function CaseFileViewFolderComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CaseFileViewFolderComponent)(i0.ɵɵdirectiveInject(WindowService), i0.ɵɵdirectiveInject(i1$1.Router), i0.ɵɵdirectiveInject(DocumentManagementService), i0.ɵɵdirectiveInject(i1$3.MatLegacyDialog), i0.ɵɵdirectiveInject(AbstractAppConfig)); };
|
|
25809
25829
|
static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: CaseFileViewFolderComponent, selectors: [["ccd-case-file-view-folder"]], inputs: { categoriesAndDocuments: "categoriesAndDocuments", allowMoving: "allowMoving" }, outputs: { clickedDocument: "clickedDocument", moveDocument: "moveDocument" }, standalone: false, decls: 12, vars: 3, consts: [["role", "search", 1, "document-filter-container"], [1, "form-group", "document-filter", 3, "formGroup"], ["for", "document-search", 1, "govuk-visually-hidden"], ["type", "search", "id", "document-search", "name", "documentSearchFormControl", "formControlName", "documentSearchFormControl", "placeholder", "Search by document name", 1, "form-control", "document-search"], [1, "document-folders-header"], ["id", "document-folders-header-title", "aria-hidden", "true", 1, "document-folders-header__title"], ["role", "toolbar", "aria-label", "Document list actions", "aria-labelledby", "document-folders-header-title", 1, "document-folders-header__flex"], [3, "expandAll", "collapseAll"], [3, "sortAscending", "sortDescending"], ["class", "document-tree-container", 4, "ngIf"], [1, "document-tree-container"], [4, "ngIf"], ["role", "tree", "aria-label", "Case documents", 3, "dataSource", "treeControl"], ["class", "document-tree-container__node document-tree-container__node--document", 4, "cdkTreeNodeDef"], ["class", "document-tree-container__node document-tree-container__folder", 4, "cdkTreeNodeDef", "cdkTreeNodeDefWhen"], [1, "document-tree-container__node", "document-tree-container__node--document"], ["type", "button", "role", "treeitem", "aria-expanded", "false", 1, "node", "case-file__node", 3, "click"], ["disabled", "", "aria-hidden", "true", 1, "node__icon"], ["src", "/assets/img/case-file-view/case-file-view-document.svg", "alt", "Document icon", "aria-hidden", "true", 1, "node__iconImg"], [1, "node__name", "node-name-document"], [1, "node__document-upload-timestamp"], [1, "node__document-options", "case-file__action"], [3, "changeFolderAction", "openInANewTabAction", "downloadAction", "printAction", "allowMoving"], [1, "document-tree-container__node", "document-tree-container__folder"], ["type", "button", "cdkTreeNodeToggle", "", "role", "treeitem", 1, "node"], ["aria-hidden", "true", 1, "node__icon"], ["alt", "Folder icon", "aria-hidden", "true", 1, "node__iconImg", 3, "src"], [1, "node__count"], [1, "node__name", "node__name--folder"], ["role", "group"], ["cdkTreeNodeOutlet", ""]], template: function CaseFileViewFolderComponent_Template(rf, ctx) { if (rf & 1) {
|
|
25810
25830
|
i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "label", 2);
|
|
25811
25831
|
i0.ɵɵtext(3, " Search by document name ");
|
|
@@ -25829,12 +25849,12 @@ class CaseFileViewFolderComponent {
|
|
|
25829
25849
|
i0.ɵɵtextInterpolate1(" Documents (", ctx.documentCount, ") ");
|
|
25830
25850
|
i0.ɵɵadvance(4);
|
|
25831
25851
|
i0.ɵɵproperty("ngIf", ctx.documentTreeData);
|
|
25832
|
-
} }, dependencies: [i5.NgIf, i4.DefaultValueAccessor, i4.NgControlStatus, i4.NgControlStatusGroup, i4.FormGroupDirective, i4.FormControlName,
|
|
25852
|
+
} }, dependencies: [i5.NgIf, i4.DefaultValueAccessor, i4.NgControlStatus, i4.NgControlStatusGroup, i4.FormGroupDirective, i4.FormControlName, i7$1.CdkNestedTreeNode, i7$1.CdkTreeNodeDef, i7$1.CdkTreeNodeToggle, i7$1.CdkTree, i7$1.CdkTreeNodeOutlet, CaseFileViewFolderSortComponent, CaseFileViewFolderToggleComponent, CaseFileViewFolderDocumentActionsComponent, DatePipe], styles: ["[_nghost-%COMP%]{display:flex;height:100%;flex-direction:column}[_nghost-%COMP%] .document-tree-container[_ngcontent-%COMP%]{flex:1 0}.document-filter-container[_ngcontent-%COMP%]{border-bottom:2px solid #C9C9C9}.document-filter-container[_ngcontent-%COMP%] .document-filter[_ngcontent-%COMP%]{padding:10px}.document-filter-container[_ngcontent-%COMP%] .document-filter[_ngcontent-%COMP%] .document-search[_ngcontent-%COMP%]{background:url(/assets/images/icon-search-black.svg) no-repeat right #fff;background-position-x:calc(100% - 4px);padding-right:30px;width:100%}.document-filter-container[_ngcontent-%COMP%] .documents-title[_ngcontent-%COMP%]{height:30%;margin-left:8px;font-weight:700}.document-folders-header__flex[_ngcontent-%COMP%]{display:flex;flex-direction:row}.document-tree-container[_ngcontent-%COMP%]{padding:4px;overflow-x:hidden;overflow-y:scroll}.document-tree-container__node[_ngcontent-%COMP%]{display:block}.document-tree-container__node[_ngcontent-%COMP%] .document-tree-container__node[_ngcontent-%COMP%]{padding-left:40px}.document-tree-container[_ngcontent-%COMP%] .document-tree-invisible[_ngcontent-%COMP%]{display:none}.document-tree-container[_ngcontent-%COMP%]::-webkit-scrollbar{width:7px}.document-tree-container[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{border:4px solid rgba(0,0,0,0);background-clip:padding-box;border-radius:9999px;background-color:#aaa}.document-tree-container[_ngcontent-%COMP%]::-webkit-scrollbar-button{display:none}.document-tree-container[_ngcontent-%COMP%]::-webkit-scrollbar-track-piece{background:#eee}.document-tree-container[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:#ccc}.document-folders-header[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid #C9C9C9;padding:10px}.document-folders-header__title[_ngcontent-%COMP%]{font-weight:700}.node[_ngcontent-%COMP%]{display:flex;align-items:center;width:100%;padding:10px;background:none;border:0;cursor:pointer;white-space:nowrap}.node--selected[_ngcontent-%COMP%]{background:#fff2cc}.node__icon[_ngcontent-%COMP%]{position:relative;display:inline-block}.node__count[_ngcontent-%COMP%]{color:#fff;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.875rem;padding-top:4px}.node__iconImg[_ngcontent-%COMP%]{display:block;height:30px;width:30px}.node__name[_ngcontent-%COMP%]{margin-left:6px;font-size:1rem;overflow:hidden;text-overflow:ellipsis}.node__document-options[_ngcontent-%COMP%]{margin-left:auto;margin-right:0}.node__document-upload-timestamp[_ngcontent-%COMP%]{font-size:.8rem;float:left;padding-left:10px}.node.case-file__node[_ngcontent-%COMP%]{width:80%;float:left}.node__document-options.case-file__action[_ngcontent-%COMP%]{width:15%;float:left;box-sizing:border-box;padding:12px}"] });
|
|
25833
25853
|
}
|
|
25834
25854
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(CaseFileViewFolderComponent, [{
|
|
25835
25855
|
type: Component,
|
|
25836
25856
|
args: [{ selector: 'ccd-case-file-view-folder', standalone: false, template: "<div class=\"document-filter-container\" role=\"search\">\n <div class=\"form-group document-filter\" [formGroup]=\"documentFilterFormGroup\">\n <label\n class=\"govuk-visually-hidden\"\n for=\"document-search\">\n Search by document name\n </label>\n <input\n class=\"form-control document-search\"\n type=\"search\"\n id=\"document-search\"\n name=\"documentSearchFormControl\"\n formControlName=\"documentSearchFormControl\"\n placeholder=\"Search by document name\"/>\n </div>\n</div>\n\n<div class=\"document-folders-header\">\n <div class=\"document-folders-header__title\" id=\"document-folders-header-title\" aria-hidden=\"true\">\n Documents ({{ documentCount }})\n </div>\n <div\n class=\"document-folders-header__flex\"\n role=\"toolbar\"\n aria-label=\"Document list actions\"\n aria-labelledby=\"document-folders-header-title\">\n <ccd-case-file-view-folder-toggle\n (expandAll)=\"expandAll($event)\"\n (collapseAll)=\"collapseAll($event)\">\n </ccd-case-file-view-folder-toggle>\n <ccd-case-file-view-folder-sort\n (sortAscending)=\"sortDataSourceAscending($event)\"\n (sortDescending)=\"sortDataSourceDescending($event)\">\n </ccd-case-file-view-folder-sort>\n </div>\n</div>\n\n<div class=\"document-tree-container\" *ngIf=\"documentTreeData\">\n <div *ngIf=\"!nestedDataSource || nestedDataSource.length === 0\">\n No results found\n </div>\n <div>\n <cdk-tree\n [dataSource]=\"nestedDataSource\"\n [treeControl]=\"nestedTreeControl\"\n role=\"tree\"\n aria-label=\"Case documents\">\n <!-- document -->\n <cdk-nested-tree-node class=\"document-tree-container__node document-tree-container__node--document\" *cdkTreeNodeDef=\"let node\">\n <button\n type=\"button\"\n class=\"node case-file__node\"\n role=\"treeitem\"\n aria-expanded=\"false\"\n [attr.aria-label]=\"node.name\"\n (click)=\"selectedNodeItem = node; clickedDocument.emit(node)\"\n [class.node--selected]=\"selectedNodeItem?.name === node.name\">\n <div class=\"node__icon\" disabled aria-hidden=\"true\">\n <img src=\"/assets/img/case-file-view/case-file-view-document.svg\"\n class=\"node__iconImg\"\n alt=\"Document icon\"\n aria-hidden=\"true\"\n />\n </div>\n <span class=\"node__name node-name-document\">\n {{ node.name }}\n <br />\n <span class=\"node__document-upload-timestamp\">{{\n node.upload_timestamp | ccdDate: \"local\":\"dd MMM yyyy HH:mm\"\n }}</span>\n </span>\n </button>\n <div class=\"node__document-options case-file__action\">\n <ccd-case-file-view-folder-document-actions\n (changeFolderAction)=\"triggerDocumentAction('changeFolder', node)\"\n (openInANewTabAction)=\"triggerDocumentAction('openInANewTab', node)\"\n (downloadAction)=\"triggerDocumentAction('download', node)\"\n (printAction)=\"triggerDocumentAction('print', node)\"\n [allowMoving]=\"allowMoving\"\n >\n </ccd-case-file-view-folder-document-actions>\n </div>\n </cdk-nested-tree-node>\n <!-- folder-->\n <cdk-nested-tree-node class=\"document-tree-container__node document-tree-container__folder\" *cdkTreeNodeDef=\"let node; when: nestedChildren\">\n <button\n type=\"button\"\n class=\"node\"\n cdkTreeNodeToggle\n role=\"treeitem\"\n [attr.aria-expanded]=\"nestedTreeControl.isExpanded(node)\"\n [attr.aria-label]=\"node.name + ' folder, ' + node.childDocumentCount + ' documents'\">\n <div class=\"node__icon\" aria-hidden=\"true\">\n <img class=\"node__iconImg\"\n [src]=\"nestedTreeControl.isExpanded(node)\n ? '/assets/images/folder-open.png'\n : '/assets/images/folder.png'\n \"\n alt=\"Folder icon\"\n aria-hidden=\"true\" />\n <span class=\"node__count\">{{ node.childDocumentCount }}</span>\n </div>\n <span class=\"node__name node__name--folder\">{{ node.name }}</span>\n </button>\n <div\n role=\"group\"\n [class.document-tree-invisible]=\"!nestedTreeControl.isExpanded(node)\">\n <ng-container cdkTreeNodeOutlet></ng-container>\n </div>\n </cdk-nested-tree-node>\n </cdk-tree>\n </div>\n</div>\n", styles: [":host{display:flex;height:100%;flex-direction:column}:host .document-tree-container{flex:1 0}.document-filter-container{border-bottom:2px solid #C9C9C9}.document-filter-container .document-filter{padding:10px}.document-filter-container .document-filter .document-search{background:url(/assets/images/icon-search-black.svg) no-repeat right #fff;background-position-x:calc(100% - 4px);padding-right:30px;width:100%}.document-filter-container .documents-title{height:30%;margin-left:8px;font-weight:700}.document-folders-header__flex{display:flex;flex-direction:row}.document-tree-container{padding:4px;overflow-x:hidden;overflow-y:scroll}.document-tree-container__node{display:block}.document-tree-container__node .document-tree-container__node{padding-left:40px}.document-tree-container .document-tree-invisible{display:none}.document-tree-container::-webkit-scrollbar{width:7px}.document-tree-container::-webkit-scrollbar-thumb{border:4px solid rgba(0,0,0,0);background-clip:padding-box;border-radius:9999px;background-color:#aaa}.document-tree-container::-webkit-scrollbar-button{display:none}.document-tree-container::-webkit-scrollbar-track-piece{background:#eee}.document-tree-container::-webkit-scrollbar-thumb{background:#ccc}.document-folders-header{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid #C9C9C9;padding:10px}.document-folders-header__title{font-weight:700}.node{display:flex;align-items:center;width:100%;padding:10px;background:none;border:0;cursor:pointer;white-space:nowrap}.node--selected{background:#fff2cc}.node__icon{position:relative;display:inline-block}.node__count{color:#fff;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:.875rem;padding-top:4px}.node__iconImg{display:block;height:30px;width:30px}.node__name{margin-left:6px;font-size:1rem;overflow:hidden;text-overflow:ellipsis}.node__document-options{margin-left:auto;margin-right:0}.node__document-upload-timestamp{font-size:.8rem;float:left;padding-left:10px}.node.case-file__node{width:80%;float:left}.node__document-options.case-file__action{width:15%;float:left;box-sizing:border-box;padding:12px}\n"] }]
|
|
25837
|
-
}], () => [{ type: WindowService }, { type: i1$1.Router }, { type: DocumentManagementService }, { type: i1$3.MatLegacyDialog }], { categoriesAndDocuments: [{
|
|
25857
|
+
}], () => [{ type: WindowService }, { type: i1$1.Router }, { type: DocumentManagementService }, { type: i1$3.MatLegacyDialog }, { type: AbstractAppConfig }], { categoriesAndDocuments: [{
|
|
25838
25858
|
type: Input
|
|
25839
25859
|
}], allowMoving: [{
|
|
25840
25860
|
type: Input
|
|
@@ -25843,7 +25863,7 @@ class CaseFileViewFolderComponent {
|
|
|
25843
25863
|
}], moveDocument: [{
|
|
25844
25864
|
type: Output
|
|
25845
25865
|
}] }); })();
|
|
25846
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CaseFileViewFolderComponent, { className: "CaseFileViewFolderComponent", filePath: "lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder.component.ts", lineNumber:
|
|
25866
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CaseFileViewFolderComponent, { className: "CaseFileViewFolderComponent", filePath: "lib/shared/components/palette/case-file-view/components/case-file-view-folder/case-file-view-folder.component.ts", lineNumber: 29 }); })();
|
|
25847
25867
|
|
|
25848
25868
|
const _c0$t = a0 => ({ "form-group-error": a0 });
|
|
25849
25869
|
function AddCommentsComponent_span_7_Template(rf, ctx) { if (rf & 1) {
|
|
@@ -29937,7 +29957,7 @@ class DatetimePickerComponent extends AbstractFormFieldComponent {
|
|
|
29937
29957
|
i0.ɵɵproperty("for", picker_r3);
|
|
29938
29958
|
i0.ɵɵadvance();
|
|
29939
29959
|
i0.ɵɵproperty("color", ctx.color)("touchUi", ctx.touchUi)("hideTime", ctx.hideTime)("startView", ctx.startView)("stepHour", ctx.stepHour)("stepSecond", ctx.stepSecond)("stepMinute", ctx.stepMinute)("showSeconds", ctx.showSeconds)("showSpinners", ctx.showSpinners)("disableMinute", ctx.disableMinute)("enableMeridian", ctx.enableMeridian);
|
|
29940
|
-
} }, dependencies: [i5.NgClass, i5.NgIf, i4.DefaultValueAccessor, i4.NgControlStatus, i4.FormControlDirective, i4$1.NgxMatDatetimepicker, i4$1.NgxMatDatepickerInput, i4$1.NgxMatDatepickerActions, i4$1.NgxMatDatepickerApply, i5$1.MatLegacySuffix, i6$2.MatDatepickerToggle, FieldLabelPipe, FirstErrorPipe, i1.RpxTranslatePipe], styles: ["@charset \"UTF-8\";.datepicker-container{display:inline-block;position:relative;min-width:298px}.datepicker-container .govuk-input{height:35px;min-width:298px;width:auto;padding-right:40px;border:1px solid #000}.datepicker-container .govuk-input:focus{outline:1px solid #ffdd00;border:1px solid black}.datepicker-container .govuk-input::-ms-clear{display:none}.datepicker-container .datepicker-wrapper-input{position:relative;display:inline-block;top:-20%;border:0}.datepicker-container .datepicker-wrapper-input:focus{border:0;outline:none}.datepicker-container .mat-icon-button{height:32px;width:32px}.datepicker-container .mat-icon-button:focus{outline:1px solid #ffdd00}.datepicker-container .mat-icon-button .mat-datepicker-toggle-default-icon{position:relative;top:-5px}.datepicker-container .mat-datepicker-toggle{position:absolute;right:0}.datepicker-container .mat-mdc-icon-button.mat-mdc-button-base{width:32px;height:32px;padding:5px 0 0}.datepicker-container .mat-mdc-icon-button.mat-mdc-button-base:focus{outline:1px solid #fd0}.cdk-overlay-container .mat-datepicker-content{border:1px solid black;border-radius:0;max-width:295px;background:#fff}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table{width:calc(100% - 1px);table-layout:fixed}.cdk-overlay-container .mat-datepicker-content .mat-calendar-header{height:34px;border-bottom:1px ridge #bfc1c3}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button{left:14%;min-width:125px;border-right:1px ridge #bfc1c3;border-left:1px ridge #bfc1c3;border-radius:0;top:-20px;width:200%}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button .mat-button-wrapper{text-align:center;font-weight:700}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button:focus{border:2px solid black}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button{left:-73%;top:-20px;border:2px solid transparent;border-radius:0}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button:focus{border-color:#000}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button:after{border-left-width:5px;border-top-width:5px;color:#000;padding:4px;top:-2px;left:-2px}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button{top:-20px;left:1%;border:2px solid transparent;border-radius:0}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button:focus{border-color:#000}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button:after{border-right-width:5px;border-top-width:5px;color:#000;padding:4px;top:-2px;left:-2px}.cdk-overlay-container .mat-datepicker-content .mat-button-wrapper{text-transform:capitalize!important}.cdk-overlay-container .mat-datepicker-content .mat-calendar{border-bottom:1px solid black}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header-divider{padding:0;border-bottom:none}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header-divider:after{height:0px}.cdk-overlay-container .mat-datepicker-content .mat-calendar-content{padding:0}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header{color:#000}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header th.ng-star-inserted{font-weight:700;font-size:15px;padding-top:2%;padding-bottom:2%;column-width:20px}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:nth-of-type(1) th{visibility:hidden}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:nth-of-type(1) th:after{visibility:visible;color:#000;position:relative;left:-15px}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:nth-of-type(1) th:nth-of-type(1):after{content:\"MON\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:nth-of-type(1) th:nth-of-type(2):after{left:-12px;content:\"TUE\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:nth-of-type(1) th:nth-of-type(3):after{left:-18px;content:\"WED\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:nth-of-type(1) th:nth-of-type(4):after{left:-14px;content:\"THU\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:nth-of-type(1) th:nth-of-type(5):after{left:-10px;content:\"FRI\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:nth-of-type(1) th:nth-of-type(6):after{content:\"SAT\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:nth-of-type(1) th:nth-of-type(7):after{content:\"SUN\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-label{font-weight:700;font-size:large;color:#000}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-selected{border:none;background-color:transparent;color:#fff}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-active .mat-calendar-body-today{border:none;box-shadow:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell{border:1px ridge #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell[aria-selected=true],.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell[aria-pressed=true]{background-color:#1d70b8;outline:3px solid #ffdd00;border:2px solid black;outline-offset:1px;z-index:1}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table{border-collapse:separate;border-spacing:10px}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-cell-content{border:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-selected{border:none;box-shadow:none;background-color:transparent}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell{border:1px solid #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell[aria-selected=true]{background-color:#1d70b8;outline:2px solid #ffdd00}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table{border-collapse:separate;border-spacing:20px}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table tr:nth-of-type(1){visibility:collapse}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-cell-content{border:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-selected{border:none;box-shadow:none;background-color:transparent}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell{border:1px solid #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell[aria-selected=true]{background-color:#1d70b8;outline:3px solid #ffdd00;border:2px solid black;outline-offset:1px}.cdk-overlay-container .mat-datepicker-content .time-container{height:80px;padding-top:0}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker{width:100%}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table{margin-left:0!important}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tbody{position:relative}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr mdc-icon-button mat-mdc-icon-button mat-unthemed mat-mdc-button-base .mat-icon-button .mat-button-wrapper{width:auto;height:auto}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr mdc-icon-button mat-mdc-icon-button mat-unthemed mat-mdc-button-base .mat-icon-button:focus{outline:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child{position:absolute;left:49px;top:15px;z-index:2}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child button:disabled{display:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child td:first-child [aria-label=\"expand_less icon\"]{position:absolute;left:-2px;top:25px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child td:nth-child(3) [aria-label=\"expand_less icon\"].mat-icon-button{position:absolute;left:82px!important;top:25px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child td:nth-child(5) [aria-label=\"expand_less icon\"].mat-icon-button{position:absolute;left:169px!important;top:25px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child td:nth-last-child(1) [aria-label=\"expand_less icon\"].mat-icon-button{left:153px!important}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child td:nth-last-child(2) [aria-label=\"expand_less icon\"].mat-icon-button{left:65px!important}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2){display:flex;padding:20px 0 20px 15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td{margin-right:30px;text-align:right}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td:first-child .mat-form-field{width:50px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td:first-child .mat-form-field:before{color:#000;content:\"Hours\";position:relative;top:-5px;left:-5px;font-size:15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td:nth-child(3) .mat-form-field:before{color:#000;content:\"Minutes\";position:relative;top:-5px;font-size:15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td:last-child{text-align:left;left:-15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) .mat-form-field-disabled{display:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td:nth-of-type(5) .mat-form-field:before{color:#000;content:\"Seconds\";position:relative;top:-5px;font-size:15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) .meridian{border-bottom:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) .meridian .mat-button{height:30px;top:21px;border-radius:0;color:#000;border-color:#000;background-color:#dee0e2;display:flex;justify-content:center}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) .meridian .mat-button .mat-button-wrapper{position:relative;top:-2px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(4){display:flex;padding:2rem 0 2rem 15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(4) td{margin-right:30px;text-align:right}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(4) td:last-child{text-align:left}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child{position:absolute;left:49px;top:40px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child button:disabled{display:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child td:first-child [aria-label=\"expand_more icon\"]{position:absolute;top:15px;left:-2px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child td:nth-child(3) [aria-label=\"expand_more icon\"].mat-icon-button{position:absolute;left:82px!important;top:15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child td:nth-child(5) [aria-label=\"expand_more icon\"].mat-icon-button{position:absolute;top:15px;left:169px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child td:nth-last-child(1) [aria-label=\"expand_more icon\"].mat-icon-button{left:65px!important}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child td:nth-last-child(1).ng-star-inserted [aria-label=\"expand_more icon\"].mat-icon-button{left:153px!important}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr td{padding:0;border-bottom:0;position:relative}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .spacer{display:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-icon{visibility:hidden;display:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-button-wrapper{display:block;width:15px;height:8px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-form-field-wrapper{padding-bottom:0}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-form-field{width:auto;max-width:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr [aria-label=\"expand_less icon\"].mat-icon-button .mat-button-wrapper:after{content:\" \\25b2\"}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr [aria-label=\"expand_more icon\"].mat-icon-button .mat-button-wrapper:after{content:\"\\25bc\"}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-form-field-flex{width:100%}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-form-field-flex .mat-form-field-infix{border:1px solid black;height:20px;width:37px;display:flex;justify-content:center;align-items:center}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-form-field-underline{visibility:hidden}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr input{height:33px;width:37px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr input:focus{border-color:#000}.cdk-overlay-container .mat-datepicker-content .actions{padding-bottom:20px;margin-top:20px;justify-content:flex-start}.cdk-overlay-container .mat-datepicker-content .actions .mat-button{background-color:#00823b;position:relative;display:-moz-inline-stack;display:inline-block;padding:.526315em .789473em .263157em;border:none;border-radius:0;outline:1px solid transparent;outline-offset:-1px;-webkit-appearance:none;box-shadow:0 2px #003618;font-size:1em;line-height:1.25;text-decoration:none;-webkit-font-smoothing:antialiased;color:#fff;box-sizing:border-box;vertical-align:top;width:80px;cursor:pointer}.cdk-overlay-container .mat-datepicker-content .actions .mat-button:focus{outline:2px solid #ffdd00}.cdk-overlay-container .mat-datepicker-content .actions .mat-button:hover{background-color:#006400}.cdk-overlay-container .mat-datepicker-content .actions .mat-button .mat-icon{visibility:hidden}.cdk-overlay-container .mat-datepicker-content .actions .mat-button .mat-button-wrapper:before{color:#fff;content:\"Confirm\";position:relative;font-size:15px;left:-3px}.cdk-overlay-container .mat-datepicker-content .mat-datepicker-actions{margin-top:120px;padding:8px 8px 28px;justify-content:flex-start}.cdk-overlay-container .mat-datepicker-content .mat-datepicker-actions button{background-color:#00823b;position:relative;display:-moz-inline-stack;display:inline-block;padding:.526315em .789473em .263157em;border:none;border-radius:0;outline:1px solid transparent;outline-offset:-1px;-webkit-appearance:none;box-shadow:0 2px #003618;font-size:1em;line-height:1.25;text-decoration:none;-webkit-font-smoothing:antialiased;color:#fff;box-sizing:border-box;vertical-align:top;width:80px;cursor:pointer}\n"], encapsulation: 2 });
|
|
29960
|
+
} }, dependencies: [i5.NgClass, i5.NgIf, i4.DefaultValueAccessor, i4.NgControlStatus, i4.FormControlDirective, i4$1.NgxMatDatetimepicker, i4$1.NgxMatDatepickerInput, i4$1.NgxMatDatepickerActions, i4$1.NgxMatDatepickerApply, i5$1.MatLegacySuffix, i6$1.MatDatepickerToggle, FieldLabelPipe, FirstErrorPipe, i1.RpxTranslatePipe], styles: ["@charset \"UTF-8\";.datepicker-container{display:inline-block;position:relative;min-width:298px}.datepicker-container .govuk-input{height:35px;min-width:298px;width:auto;padding-right:40px;border:1px solid #000}.datepicker-container .govuk-input:focus{outline:1px solid #ffdd00;border:1px solid black}.datepicker-container .govuk-input::-ms-clear{display:none}.datepicker-container .datepicker-wrapper-input{position:relative;display:inline-block;top:-20%;border:0}.datepicker-container .datepicker-wrapper-input:focus{border:0;outline:none}.datepicker-container .mat-icon-button{height:32px;width:32px}.datepicker-container .mat-icon-button:focus{outline:1px solid #ffdd00}.datepicker-container .mat-icon-button .mat-datepicker-toggle-default-icon{position:relative;top:-5px}.datepicker-container .mat-datepicker-toggle{position:absolute;right:0}.datepicker-container .mat-mdc-icon-button.mat-mdc-button-base{width:32px;height:32px;padding:5px 0 0}.datepicker-container .mat-mdc-icon-button.mat-mdc-button-base:focus{outline:1px solid #fd0}.cdk-overlay-container .mat-datepicker-content{border:1px solid black;border-radius:0;max-width:295px;background:#fff}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table{width:calc(100% - 1px);table-layout:fixed}.cdk-overlay-container .mat-datepicker-content .mat-calendar-header{height:34px;border-bottom:1px ridge #bfc1c3}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button{left:14%;min-width:125px;border-right:1px ridge #bfc1c3;border-left:1px ridge #bfc1c3;border-radius:0;top:-20px;width:200%}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button .mat-button-wrapper{text-align:center;font-weight:700}.cdk-overlay-container .mat-datepicker-content .mat-calendar-period-button:focus{border:2px solid black}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button{left:-73%;top:-20px;border:2px solid transparent;border-radius:0}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button:focus{border-color:#000}.cdk-overlay-container .mat-datepicker-content .mat-calendar-previous-button:after{border-left-width:5px;border-top-width:5px;color:#000;padding:4px;top:-2px;left:-2px}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button{top:-20px;left:1%;border:2px solid transparent;border-radius:0}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button:focus{border-color:#000}.cdk-overlay-container .mat-datepicker-content .mat-calendar-next-button:after{border-right-width:5px;border-top-width:5px;color:#000;padding:4px;top:-2px;left:-2px}.cdk-overlay-container .mat-datepicker-content .mat-button-wrapper{text-transform:capitalize!important}.cdk-overlay-container .mat-datepicker-content .mat-calendar{border-bottom:1px solid black}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header-divider{padding:0;border-bottom:none}.cdk-overlay-container .mat-datepicker-content .mat-calendar-table-header-divider:after{height:0px}.cdk-overlay-container .mat-datepicker-content .mat-calendar-content{padding:0}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header{color:#000}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header th.ng-star-inserted{font-weight:700;font-size:15px;padding-top:2%;padding-bottom:2%;column-width:20px}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:nth-of-type(1) th{visibility:hidden}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:nth-of-type(1) th:after{visibility:visible;color:#000;position:relative;left:-15px}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:nth-of-type(1) th:nth-of-type(1):after{content:\"MON\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:nth-of-type(1) th:nth-of-type(2):after{left:-12px;content:\"TUE\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:nth-of-type(1) th:nth-of-type(3):after{left:-18px;content:\"WED\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:nth-of-type(1) th:nth-of-type(4):after{left:-14px;content:\"THU\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:nth-of-type(1) th:nth-of-type(5):after{left:-10px;content:\"FRI\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:nth-of-type(1) th:nth-of-type(6):after{content:\"SAT\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-table-header tr:nth-of-type(1) th:nth-of-type(7):after{content:\"SUN\"}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-label{font-weight:700;font-size:large;color:#000}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-selected{border:none;background-color:transparent;color:#fff}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-active .mat-calendar-body-today{border:none;box-shadow:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell{border:1px ridge #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell[aria-selected=true],.cdk-overlay-container .mat-datepicker-content ngx-mat-month-view .mat-calendar-body-cell[aria-pressed=true]{background-color:#1d70b8;outline:3px solid #ffdd00;border:2px solid black;outline-offset:1px;z-index:1}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table{border-collapse:separate;border-spacing:10px}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-cell-content{border:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-selected{border:none;box-shadow:none;background-color:transparent}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell{border:1px solid #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-multi-year-view .mat-calendar-table .mat-calendar-body-cell[aria-selected=true]{background-color:#1d70b8;outline:2px solid #ffdd00}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table{border-collapse:separate;border-spacing:20px}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table tr:nth-of-type(1){visibility:collapse}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-active{background-color:#5694ca}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-cell-content{border:none}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell .mat-calendar-body-selected{border:none;box-shadow:none;background-color:transparent}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell{border:1px solid #bfc1c3}.cdk-overlay-container .mat-datepicker-content ngx-mat-year-view .mat-calendar-table .mat-calendar-body-cell[aria-selected=true]{background-color:#1d70b8;outline:3px solid #ffdd00;border:2px solid black;outline-offset:1px}.cdk-overlay-container .mat-datepicker-content .time-container{height:80px;padding-top:0}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker{width:100%}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table{margin-left:0!important}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tbody{position:relative}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr mdc-icon-button mat-mdc-icon-button mat-unthemed mat-mdc-button-base .mat-icon-button .mat-button-wrapper{width:auto;height:auto}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr mdc-icon-button mat-mdc-icon-button mat-unthemed mat-mdc-button-base .mat-icon-button:focus{outline:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child{position:absolute;left:49px;top:15px;z-index:2}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child button:disabled{display:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child td:first-child [aria-label=\"expand_less icon\"]{position:absolute;left:-2px;top:25px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child td:nth-child(3) [aria-label=\"expand_less icon\"].mat-icon-button{position:absolute;left:82px!important;top:25px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child td:nth-child(5) [aria-label=\"expand_less icon\"].mat-icon-button{position:absolute;left:169px!important;top:25px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child td:nth-last-child(1) [aria-label=\"expand_less icon\"].mat-icon-button{left:153px!important}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:first-child td:nth-last-child(2) [aria-label=\"expand_less icon\"].mat-icon-button{left:65px!important}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2){display:flex;padding:20px 0 20px 15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td{margin-right:30px;text-align:right}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td:first-child .mat-form-field{width:50px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td:first-child .mat-form-field:before{color:#000;content:\"Hours\";position:relative;top:-5px;left:-5px;font-size:15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td:nth-child(3) .mat-form-field:before{color:#000;content:\"Minutes\";position:relative;top:-5px;font-size:15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td:last-child{text-align:left;left:-15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) .mat-form-field-disabled{display:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) td:nth-of-type(5) .mat-form-field:before{color:#000;content:\"Seconds\";position:relative;top:-5px;font-size:15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) .meridian{border-bottom:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) .meridian .mat-button{height:30px;top:21px;border-radius:0;color:#000;border-color:#000;background-color:#dee0e2;display:flex;justify-content:center}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(2) .meridian .mat-button .mat-button-wrapper{position:relative;top:-2px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(4){display:flex;padding:2rem 0 2rem 15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(4) td{margin-right:30px;text-align:right}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:nth-child(4) td:last-child{text-align:left}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child{position:absolute;left:49px;top:40px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child button:disabled{display:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child td:first-child [aria-label=\"expand_more icon\"]{position:absolute;top:15px;left:-2px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child td:nth-child(3) [aria-label=\"expand_more icon\"].mat-icon-button{position:absolute;left:82px!important;top:15px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child td:nth-child(5) [aria-label=\"expand_more icon\"].mat-icon-button{position:absolute;top:15px;left:169px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child td:nth-last-child(1) [aria-label=\"expand_more icon\"].mat-icon-button{left:65px!important}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr:last-child td:nth-last-child(1).ng-star-inserted [aria-label=\"expand_more icon\"].mat-icon-button{left:153px!important}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr td{padding:0;border-bottom:0;position:relative}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .spacer{display:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-icon{visibility:hidden;display:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-button-wrapper{display:block;width:15px;height:8px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-form-field-wrapper{padding-bottom:0}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-form-field{width:auto;max-width:none}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr [aria-label=\"expand_less icon\"].mat-icon-button .mat-button-wrapper:after{content:\" \\25b2\"}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr [aria-label=\"expand_more icon\"].mat-icon-button .mat-button-wrapper:after{content:\"\\25bc\"}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-form-field-flex{width:100%}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-form-field-flex .mat-form-field-infix{border:1px solid black;height:20px;width:37px;display:flex;justify-content:center;align-items:center}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr .mat-form-field-underline{visibility:hidden}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr input{height:33px;width:37px}.cdk-overlay-container .mat-datepicker-content .time-container .ngx-mat-timepicker .table tr input:focus{border-color:#000}.cdk-overlay-container .mat-datepicker-content .actions{padding-bottom:20px;margin-top:20px;justify-content:flex-start}.cdk-overlay-container .mat-datepicker-content .actions .mat-button{background-color:#00823b;position:relative;display:-moz-inline-stack;display:inline-block;padding:.526315em .789473em .263157em;border:none;border-radius:0;outline:1px solid transparent;outline-offset:-1px;-webkit-appearance:none;box-shadow:0 2px #003618;font-size:1em;line-height:1.25;text-decoration:none;-webkit-font-smoothing:antialiased;color:#fff;box-sizing:border-box;vertical-align:top;width:80px;cursor:pointer}.cdk-overlay-container .mat-datepicker-content .actions .mat-button:focus{outline:2px solid #ffdd00}.cdk-overlay-container .mat-datepicker-content .actions .mat-button:hover{background-color:#006400}.cdk-overlay-container .mat-datepicker-content .actions .mat-button .mat-icon{visibility:hidden}.cdk-overlay-container .mat-datepicker-content .actions .mat-button .mat-button-wrapper:before{color:#fff;content:\"Confirm\";position:relative;font-size:15px;left:-3px}.cdk-overlay-container .mat-datepicker-content .mat-datepicker-actions{margin-top:120px;padding:8px 8px 28px;justify-content:flex-start}.cdk-overlay-container .mat-datepicker-content .mat-datepicker-actions button{background-color:#00823b;position:relative;display:-moz-inline-stack;display:inline-block;padding:.526315em .789473em .263157em;border:none;border-radius:0;outline:1px solid transparent;outline-offset:-1px;-webkit-appearance:none;box-shadow:0 2px #003618;font-size:1em;line-height:1.25;text-decoration:none;-webkit-font-smoothing:antialiased;color:#fff;box-sizing:border-box;vertical-align:top;width:80px;cursor:pointer}\n"], encapsulation: 2 });
|
|
29941
29961
|
}
|
|
29942
29962
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(DatetimePickerComponent, [{
|
|
29943
29963
|
type: Component,
|
|
@@ -30242,7 +30262,9 @@ class EventLogTableComponent {
|
|
|
30242
30262
|
}
|
|
30243
30263
|
ngOnInit() {
|
|
30244
30264
|
this.isPartOfCaseTimeline = this.onCaseHistory.observers.length > 0;
|
|
30245
|
-
|
|
30265
|
+
const userDetails = safeJsonParse(this.sessionStorage.getItem('userDetails'), null);
|
|
30266
|
+
const roles = userDetails?.roles || [];
|
|
30267
|
+
this.isUserExternal = roles.includes('pui-case-manager');
|
|
30246
30268
|
}
|
|
30247
30269
|
select(event) {
|
|
30248
30270
|
this.selected = event;
|
|
@@ -30331,7 +30353,7 @@ class EventLogTableComponent {
|
|
|
30331
30353
|
}], onCaseHistory: [{
|
|
30332
30354
|
type: Output
|
|
30333
30355
|
}] }); })();
|
|
30334
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(EventLogTableComponent, { className: "EventLogTableComponent", filePath: "lib/shared/components/palette/history/event-log/event-log-table.component.ts", lineNumber:
|
|
30356
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(EventLogTableComponent, { className: "EventLogTableComponent", filePath: "lib/shared/components/palette/history/event-log/event-log-table.component.ts", lineNumber: 13 }); })();
|
|
30335
30357
|
|
|
30336
30358
|
function EventLogComponent_ccd_event_log_table_3_Template(rf, ctx) { if (rf & 1) {
|
|
30337
30359
|
const _r1 = i0.ɵɵgetCurrentView();
|
|
@@ -35095,7 +35117,7 @@ class CaseResolver {
|
|
|
35095
35117
|
// as discussed for EUI-5456, need functionality to go to default page
|
|
35096
35118
|
goToDefaultPage() {
|
|
35097
35119
|
console.info('Going to default page!');
|
|
35098
|
-
const userDetails =
|
|
35120
|
+
const userDetails = safeJsonParse(this.sessionStorage.getItem(USER_DETAILS));
|
|
35099
35121
|
userDetails && userDetails.roles
|
|
35100
35122
|
&& !userDetails.roles.includes(PUI_CASE_MANAGER)
|
|
35101
35123
|
&&
|
|
@@ -35148,7 +35170,7 @@ class EventTriggerResolver {
|
|
|
35148
35170
|
const query = route.queryParams;
|
|
35149
35171
|
// If jurisdiction or caseType are missing, redirect to correct URL
|
|
35150
35172
|
if (!jurisdiction || !caseType) {
|
|
35151
|
-
const caseInfo =
|
|
35173
|
+
const caseInfo = safeJsonParse(this.sessionStorageService.getItem('caseInfo'), {});
|
|
35152
35174
|
const jurisdictionId = caseInfo?.jurisdiction;
|
|
35153
35175
|
const caseTypeId = caseInfo?.caseType;
|
|
35154
35176
|
const caseId = caseInfo?.caseId;
|
|
@@ -39416,7 +39438,7 @@ class CreateCaseFiltersComponent {
|
|
|
39416
39438
|
return events.filter(event => event.pre_states.length === 0);
|
|
39417
39439
|
}
|
|
39418
39440
|
retainEventsWithCreateRights(events) {
|
|
39419
|
-
const userProfile =
|
|
39441
|
+
const userProfile = safeJsonParse(this.sessionStorageService.getItem(USER_DETAILS), null);
|
|
39420
39442
|
return events.filter(event => userProfile && userProfile.roles &&
|
|
39421
39443
|
!!userProfile.roles.find(role => this.hasCreateAccess(event, role)));
|
|
39422
39444
|
}
|
|
@@ -39554,7 +39576,7 @@ class CreateCaseFiltersComponent {
|
|
|
39554
39576
|
}], selectionChanged: [{
|
|
39555
39577
|
type: Output
|
|
39556
39578
|
}] }); })();
|
|
39557
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CreateCaseFiltersComponent, { className: "CreateCaseFiltersComponent", filePath: "lib/shared/components/create-case-filters/create-case-filters.component.ts", lineNumber:
|
|
39579
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(CreateCaseFiltersComponent, { className: "CreateCaseFiltersComponent", filePath: "lib/shared/components/create-case-filters/create-case-filters.component.ts", lineNumber: 20 }); })();
|
|
39558
39580
|
|
|
39559
39581
|
class CreateCaseFiltersModule {
|
|
39560
39582
|
static ɵfac = function CreateCaseFiltersModule_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || CreateCaseFiltersModule)(); };
|
|
@@ -41175,5 +41197,5 @@ class TestRouteSnapshotBuilder {
|
|
|
41175
41197
|
* Generated bundle index. Do not edit.
|
|
41176
41198
|
*/
|
|
41177
41199
|
|
|
41178
|
-
export { AbstractAppConfig, AbstractFieldReadComponent, AbstractFieldWriteComponent, AbstractFieldWriteJourneyComponent, AbstractJourneyComponent, Activity, ActivityBannerComponent, ActivityComponent, ActivityIconComponent, ActivityInfo, ActivityModule, ActivityPollingService, ActivityService, AddCommentsComponent, AddCommentsErrorMessage, AddCommentsStep, AddressModel, AddressOption, AddressesService, Alert, AlertComponent, AlertIconClassPipe, AlertMessageType, AlertModule, AlertService, AuthService, Banner, BannersService, BeforeYouStartComponent, BodyComponent, BrowserService, CCDCaseLinkType, COMPONENT_PORTAL_INJECTION_TOKEN, CallbackErrorsComponent, CallbackErrorsContext, CaseAccessUtils, CaseBasicAccessViewComponent, CaseChallengedAccessRequestComponent, CaseChallengedAccessSuccessComponent, CaseCreateComponent, CaseDetails, CaseEditComponent, CaseEditConfirmComponent, CaseEditDataModule, CaseEditDataService, CaseEditFormComponent, CaseEditPageComponent, CaseEditSubmitComponent, CaseEditWizardGuard, CaseEditorConfig, CaseEditorModule, CaseEvent, CaseEventCompletionComponent, CaseEventCompletionTaskCancelledComponent, CaseEventCompletionTaskReassignedComponent, CaseEventData, CaseEventTrigger, CaseEventTriggerComponent, CaseField, CaseFieldService, CaseFileViewFieldComponent, CaseFileViewFolderComponent, CaseFileViewFolderDocumentActionsComponent, CaseFileViewFolderSelectorComponent, CaseFileViewFolderSortComponent, CaseFileViewFolderToggleComponent, CaseFileViewOverlayMenuComponent, CaseFileViewService, CaseFlagCheckYourAnswersPageStep, CaseFlagDisplayContextParameter, CaseFlagErrorMessage, CaseFlagFieldState, CaseFlagFormFields, CaseFlagRefdataService, CaseFlagStatus, CaseFlagSummaryListComponent, CaseFlagSummaryListDisplayMode, CaseFlagTableComponent, CaseFlagWizardStepTitle, CaseFullAccessViewComponent, CaseHeaderComponent, CaseHeaderModule, CaseHistoryViewerFieldComponent, CaseLink, CaseLinkResponse, CaseListComponent, CaseListFiltersComponent, CaseListFiltersModule, CaseListModule, CaseNotifier, CasePaymentHistoryViewerFieldComponent, CasePrintDocument, CasePrinterComponent, CaseProgressComponent, CaseReferencePipe, CaseResolver, CaseSpecificAccessRequestComponent, CaseSpecificAccessSuccessComponent, CaseState, CaseTab, CaseTimelineComponent, CaseTimelineDisplayMode, CaseTimelineModule, CaseType, CaseTypeLite, CaseView, CaseViewComponent, CaseViewEvent, CaseViewTrigger, CaseViewerComponent, CaseViewerModule, CasesService, CaseworkerService, CcdCYAPageLabelFilterPipe, CcdCaseTitlePipe, CcdCollectionTableCaseFieldsFilterPipe, CcdPageFieldsPipe, CcdTabFieldsPipe, CheckYourAnswersComponent, CloseQueryComponent, ConditionalShowFormDirective, ConditionalShowModule, ConditionalShowRegistrarService, ConfirmFlagStatusComponent, ConfirmStatusErrorMessage, ConfirmStatusStep, Confirmation, ConvertHrefToRouterService, CreateCaseFiltersComponent, CreateCaseFiltersModule, CreateCaseFiltersSelection, DRAFT_PREFIX, DRAFT_QUERY_PARAM, DashPipe, DateInputComponent, DatePipe, DateTimeFormatUtils, DatetimePickerComponent, DefinitionsModule, DefinitionsService, DeleteOrCancelDialogComponent, DialogsModule, DisplayMode, Document, DocumentData, DocumentDialogComponent, DocumentLinks, DocumentManagementService, DocumentUrlPipe, Draft, DraftService, DynamicListPipe, DynamicRadioListPipe, ESQueryType, Embedded, EnumDisplayDescriptionPipe, ErrorMessageComponent, ErrorNotifierService, EventCaseField, EventCompletionReturnStates, EventCompletionStateMachineService, EventCompletionStates, EventLogComponent, EventLogDetailsComponent, EventLogTableComponent, EventMessageModule, EventStartComponent, EventStartModule, EventStartStateMachineService, EventStatusService, EventTriggerResolver, EventTriggerService, Fee, FeeValue, Field, FieldLabelPipe, FieldReadComponent, FieldReadLabelComponent, FieldType, FieldTypeSanitiser, FieldWriteComponent, FieldsFilterPipe, FieldsPurger, FieldsUtils, FirstErrorPipe, FixedListItem, FixedListPipe, FixedRadioListPipe, FlagFieldDisplayPipe, FocusElementDirective, FocusElementModule, FooterComponent, FormDocument, FormErrorService, FormValidatorsService, FormValueService, FormatTranslatorService, GreyBarService, HRef, HeaderBarComponent, HeadersModule, HttpError, HttpErrorService, HttpService, IsCompoundPipe, IsMandatoryPipe, IsReadOnlyAndNotCollectionPipe, IsReadOnlyPipe, JudicialworkerService, Jurisdiction, JurisdictionService, LabelFieldComponent, LabelSubstitutorDirective, LabelSubstitutorModule, LanguageInterpreterDisplayPipe, LinkCaseReason, LinkCasesComponent, LinkCasesFromReasonValuePipe, LinkCasesReasonValuePipe, LinkDetails, LinkFromReason, LinkReason, LinkedCasesErrorMessages, LinkedCasesEventTriggers, LinkedCasesFromTableComponent, LinkedCasesPages, LinkedCasesResponse, LinkedCasesToTableComponent, LoadingModule, LoadingService, LoadingSpinnerComponent, LoadingSpinnerModule, MEDIA_VIEWER_LOCALSTORAGE_KEY, MULTIPLE_TASKS_FOUND, ManageCaseFlagsComponent, ManageCaseFlagsLabelDisplayPipe, MarkdownComponent, MarkdownComponentModule, MoneyGbpInputComponent, MultipageComponentStateService, MultipleTasksExistComponent, NavigationComponent, NavigationItemComponent, NavigationNotifierService, NavigationOrigin, NoLinkedCasesComponent, NoTasksAvailableComponent, NotificationBannerComponent, NotificationBannerHeaderClass, NotificationBannerType, OrderService, OrderSummary, OrganisationConverter, OrganisationService, PageValidationService, PaginationComponent, PaginationMetadata, PaginationModule, PaletteContext, PaletteModule, PaletteService, PaletteUtilsModule, Patterns, PaymentField, PhaseComponent, PipesModule, PlaceholderService, PrintUrlPipe, Profile, ProfileNotifier, ProfileService, QualifyingQuestionDetailComponent, QualifyingQuestionOptionsComponent, QualifyingQuestionService, QualifyingQuestionsErrorMessage, QueryAttachmentsReadComponent, QueryCaseDetailsHeaderComponent, QueryCheckYourAnswersComponent, QueryConfirmationComponent, QueryCreateContext, QueryDetailsComponent, QueryEventCompletionComponent, QueryItemResponseStatus, QueryListComponent, QueryListData, QueryListItem, QueryManagementService, QueryWriteAddDocumentsComponent, QueryWriteDateInputComponent, QueryWriteRaiseQueryComponent, QueryWriteRespondToQueryComponent, RaiseQueryErrorMessage, ReadCaseFlagFieldComponent, ReadCaseLinkFieldComponent, ReadCollectionFieldComponent, ReadComplexFieldCollectionTableComponent, ReadComplexFieldComponent, ReadComplexFieldRawComponent, ReadComplexFieldTableComponent, ReadCookieService, ReadDateFieldComponent, ReadDocumentFieldComponent, ReadDynamicListFieldComponent, ReadDynamicMultiSelectListFieldComponent, ReadDynamicRadioListFieldComponent, ReadEmailFieldComponent, ReadFieldsFilterPipe, ReadFixedListFieldComponent, ReadFixedRadioListFieldComponent, ReadJudicialUserFieldComponent, ReadLinkedCasesFieldComponent, ReadMoneyGbpFieldComponent, ReadMultiSelectListFieldComponent, ReadNumberFieldComponent, ReadOrderSummaryFieldComponent, ReadOrderSummaryRowComponent, ReadOrganisationFieldComponent, ReadOrganisationFieldRawComponent, ReadOrganisationFieldTableComponent, ReadPhoneUKFieldComponent, ReadQueryManagementFieldComponent, ReadTextAreaFieldComponent, ReadTextFieldComponent, ReadYesNoFieldComponent, RefdataCaseFlagType, RemoveDialogComponent, RequestOptionsBuilder, RespondToQueryErrorMessages, RetryUtil, RouterHelperService, RouterLinkComponent, SaveOrDiscardDialogComponent, SearchFiltersComponent, SearchFiltersModule, SearchFiltersWrapperComponent, SearchInput, SearchLanguageInterpreterComponent, SearchLanguageInterpreterErrorMessage, SearchLanguageInterpreterStep, SearchResultComponent, SearchResultModule, SearchResultView, SearchResultViewColumn, SearchResultViewItem, SearchResultViewItemComparatorFactory, SearchService, SelectFlagErrorMessage, SelectFlagLocationComponent, SelectFlagLocationErrorMessage, SelectFlagTypeComponent, SelectFlagTypeErrorMessage, SessionStorageService, ShowCondition, SortOrder$1 as SortOrder, SortParameters, SortSearchResultPipe, TabComponent, TableColumnConfig, TableConfig, TabsComponent, TabsModule, TaskAssignedComponent, TaskCancelledComponent, TaskConflictComponent, TaskUnassignedComponent, Terms, TestRouteSnapshotBuilder, TranslatedMarkdownDirective, TranslatedMarkdownModule, UnLinkCasesComponent, UnsupportedFieldComponent, UpdateFlagAddTranslationErrorMessage, UpdateFlagAddTranslationFormComponent, UpdateFlagAddTranslationStep, UpdateFlagComponent, UpdateFlagErrorMessage, UpdateFlagStep, UpdateFlagTitleDisplayPipe, WaysToPayFieldComponent, WindowService, Wizard, WizardFactoryService, WizardPage, WizardPageField, WorkAllocationService, WorkbasketFiltersComponent, WorkbasketFiltersModule, WorkbasketInput, WorkbasketInputFilterService, WorkbasketInputModel, WriteAddressFieldComponent, WriteCaseFlagFieldComponent, WriteCaseLinkFieldComponent, WriteCollectionFieldComponent, WriteComplexFieldComponent, WriteDateContainerFieldComponent, WriteDateFieldComponent, WriteDocumentFieldComponent, WriteDynamicListFieldComponent, WriteDynamicMultiSelectListFieldComponent, WriteDynamicRadioListFieldComponent, WriteEmailFieldComponent, WriteFixedListFieldComponent, WriteFixedRadioListFieldComponent, WriteJudicialUserFieldComponent, WriteLinkedCasesFieldComponent, WriteMoneyGbpFieldComponent, WriteMultiSelectListFieldComponent, WriteNumberFieldComponent, WriteOrderSummaryFieldComponent, WriteOrganisationComplexFieldComponent, WriteOrganisationFieldComponent, WritePhoneUKFieldComponent, WriteTextAreaFieldComponent, WriteTextFieldComponent, WriteYesNoFieldComponent, YesNoService, aCaseField, caseMessagesMockData, createACL, createCaseEventTrigger, createCaseField, createComplexFieldOverride, createFieldType, createFixedListFieldType, createHiddenComplexFieldOverride, createMultiSelectListFieldType, createWizardPage, createWizardPageField, editorRouting, initDialog, newCaseField, textFieldType, viewerRouting };
|
|
41200
|
+
export { AbstractAppConfig, AbstractFieldReadComponent, AbstractFieldWriteComponent, AbstractFieldWriteJourneyComponent, AbstractJourneyComponent, Activity, ActivityBannerComponent, ActivityComponent, ActivityIconComponent, ActivityInfo, ActivityModule, ActivityPollingService, ActivityService, AddCommentsComponent, AddCommentsErrorMessage, AddCommentsStep, AddressModel, AddressOption, AddressesService, Alert, AlertComponent, AlertIconClassPipe, AlertMessageType, AlertModule, AlertService, AuthService, Banner, BannersService, BeforeYouStartComponent, BodyComponent, BrowserService, CCDCaseLinkType, COMPONENT_PORTAL_INJECTION_TOKEN, CallbackErrorsComponent, CallbackErrorsContext, CaseAccessUtils, CaseBasicAccessViewComponent, CaseChallengedAccessRequestComponent, CaseChallengedAccessSuccessComponent, CaseCreateComponent, CaseDetails, CaseEditComponent, CaseEditConfirmComponent, CaseEditDataModule, CaseEditDataService, CaseEditFormComponent, CaseEditPageComponent, CaseEditSubmitComponent, CaseEditWizardGuard, CaseEditorConfig, CaseEditorModule, CaseEvent, CaseEventCompletionComponent, CaseEventCompletionTaskCancelledComponent, CaseEventCompletionTaskReassignedComponent, CaseEventData, CaseEventTrigger, CaseEventTriggerComponent, CaseField, CaseFieldService, CaseFileViewFieldComponent, CaseFileViewFolderComponent, CaseFileViewFolderDocumentActionsComponent, CaseFileViewFolderSelectorComponent, CaseFileViewFolderSortComponent, CaseFileViewFolderToggleComponent, CaseFileViewOverlayMenuComponent, CaseFileViewService, CaseFlagCheckYourAnswersPageStep, CaseFlagDisplayContextParameter, CaseFlagErrorMessage, CaseFlagFieldState, CaseFlagFormFields, CaseFlagRefdataService, CaseFlagStatus, CaseFlagSummaryListComponent, CaseFlagSummaryListDisplayMode, CaseFlagTableComponent, CaseFlagWizardStepTitle, CaseFullAccessViewComponent, CaseHeaderComponent, CaseHeaderModule, CaseHistoryViewerFieldComponent, CaseLink, CaseLinkResponse, CaseListComponent, CaseListFiltersComponent, CaseListFiltersModule, CaseListModule, CaseNotifier, CasePaymentHistoryViewerFieldComponent, CasePrintDocument, CasePrinterComponent, CaseProgressComponent, CaseReferencePipe, CaseResolver, CaseSpecificAccessRequestComponent, CaseSpecificAccessSuccessComponent, CaseState, CaseTab, CaseTimelineComponent, CaseTimelineDisplayMode, CaseTimelineModule, CaseType, CaseTypeLite, CaseView, CaseViewComponent, CaseViewEvent, CaseViewTrigger, CaseViewerComponent, CaseViewerModule, CasesService, CaseworkerService, CcdCYAPageLabelFilterPipe, CcdCaseTitlePipe, CcdCollectionTableCaseFieldsFilterPipe, CcdPageFieldsPipe, CcdTabFieldsPipe, CheckYourAnswersComponent, CloseQueryComponent, ConditionalShowFormDirective, ConditionalShowModule, ConditionalShowRegistrarService, ConfirmFlagStatusComponent, ConfirmStatusErrorMessage, ConfirmStatusStep, Confirmation, ConvertHrefToRouterService, CreateCaseFiltersComponent, CreateCaseFiltersModule, CreateCaseFiltersSelection, DRAFT_PREFIX, DRAFT_QUERY_PARAM, DashPipe, DateInputComponent, DatePipe, DateTimeFormatUtils, DatetimePickerComponent, DefinitionsModule, DefinitionsService, DeleteOrCancelDialogComponent, DialogsModule, DisplayMode, Document, DocumentData, DocumentDialogComponent, DocumentLinks, DocumentManagementService, DocumentUrlPipe, Draft, DraftService, DynamicListPipe, DynamicRadioListPipe, ESQueryType, Embedded, EnumDisplayDescriptionPipe, ErrorMessageComponent, ErrorNotifierService, EventCaseField, EventCompletionReturnStates, EventCompletionStateMachineService, EventCompletionStates, EventLogComponent, EventLogDetailsComponent, EventLogTableComponent, EventMessageModule, EventStartComponent, EventStartModule, EventStartStateMachineService, EventStatusService, EventTriggerResolver, EventTriggerService, Fee, FeeValue, Field, FieldLabelPipe, FieldReadComponent, FieldReadLabelComponent, FieldType, FieldTypeSanitiser, FieldWriteComponent, FieldsFilterPipe, FieldsPurger, FieldsUtils, FirstErrorPipe, FixedListItem, FixedListPipe, FixedRadioListPipe, FlagFieldDisplayPipe, FocusElementDirective, FocusElementModule, FooterComponent, FormDocument, FormErrorService, FormValidatorsService, FormValueService, FormatTranslatorService, GreyBarService, HRef, HeaderBarComponent, HeadersModule, HttpError, HttpErrorService, HttpService, IsCompoundPipe, IsMandatoryPipe, IsReadOnlyAndNotCollectionPipe, IsReadOnlyPipe, JudicialworkerService, Jurisdiction, JurisdictionService, LabelFieldComponent, LabelSubstitutorDirective, LabelSubstitutorModule, LanguageInterpreterDisplayPipe, LinkCaseReason, LinkCasesComponent, LinkCasesFromReasonValuePipe, LinkCasesReasonValuePipe, LinkDetails, LinkFromReason, LinkReason, LinkedCasesErrorMessages, LinkedCasesEventTriggers, LinkedCasesFromTableComponent, LinkedCasesPages, LinkedCasesResponse, LinkedCasesToTableComponent, LoadingModule, LoadingService, LoadingSpinnerComponent, LoadingSpinnerModule, MEDIA_VIEWER_LOCALSTORAGE_KEY, MULTIPLE_TASKS_FOUND, ManageCaseFlagsComponent, ManageCaseFlagsLabelDisplayPipe, MarkdownComponent, MarkdownComponentModule, MoneyGbpInputComponent, MultipageComponentStateService, MultipleTasksExistComponent, NavigationComponent, NavigationItemComponent, NavigationNotifierService, NavigationOrigin, NoLinkedCasesComponent, NoTasksAvailableComponent, NotificationBannerComponent, NotificationBannerHeaderClass, NotificationBannerType, OrderService, OrderSummary, OrganisationConverter, OrganisationService, PageValidationService, PaginationComponent, PaginationMetadata, PaginationModule, PaletteContext, PaletteModule, PaletteService, PaletteUtilsModule, Patterns, PaymentField, PhaseComponent, PipesModule, PlaceholderService, PrintUrlPipe, Profile, ProfileNotifier, ProfileService, QualifyingQuestionDetailComponent, QualifyingQuestionOptionsComponent, QualifyingQuestionService, QualifyingQuestionsErrorMessage, QueryAttachmentsReadComponent, QueryCaseDetailsHeaderComponent, QueryCheckYourAnswersComponent, QueryConfirmationComponent, QueryCreateContext, QueryDetailsComponent, QueryEventCompletionComponent, QueryItemResponseStatus, QueryListComponent, QueryListData, QueryListItem, QueryManagementService, QueryWriteAddDocumentsComponent, QueryWriteDateInputComponent, QueryWriteRaiseQueryComponent, QueryWriteRespondToQueryComponent, RaiseQueryErrorMessage, ReadCaseFlagFieldComponent, ReadCaseLinkFieldComponent, ReadCollectionFieldComponent, ReadComplexFieldCollectionTableComponent, ReadComplexFieldComponent, ReadComplexFieldRawComponent, ReadComplexFieldTableComponent, ReadCookieService, ReadDateFieldComponent, ReadDocumentFieldComponent, ReadDynamicListFieldComponent, ReadDynamicMultiSelectListFieldComponent, ReadDynamicRadioListFieldComponent, ReadEmailFieldComponent, ReadFieldsFilterPipe, ReadFixedListFieldComponent, ReadFixedRadioListFieldComponent, ReadJudicialUserFieldComponent, ReadLinkedCasesFieldComponent, ReadMoneyGbpFieldComponent, ReadMultiSelectListFieldComponent, ReadNumberFieldComponent, ReadOrderSummaryFieldComponent, ReadOrderSummaryRowComponent, ReadOrganisationFieldComponent, ReadOrganisationFieldRawComponent, ReadOrganisationFieldTableComponent, ReadPhoneUKFieldComponent, ReadQueryManagementFieldComponent, ReadTextAreaFieldComponent, ReadTextFieldComponent, ReadYesNoFieldComponent, RefdataCaseFlagType, RemoveDialogComponent, RequestOptionsBuilder, RespondToQueryErrorMessages, RetryUtil, RouterHelperService, RouterLinkComponent, SaveOrDiscardDialogComponent, SearchFiltersComponent, SearchFiltersModule, SearchFiltersWrapperComponent, SearchInput, SearchLanguageInterpreterComponent, SearchLanguageInterpreterErrorMessage, SearchLanguageInterpreterStep, SearchResultComponent, SearchResultModule, SearchResultView, SearchResultViewColumn, SearchResultViewItem, SearchResultViewItemComparatorFactory, SearchService, SelectFlagErrorMessage, SelectFlagLocationComponent, SelectFlagLocationErrorMessage, SelectFlagTypeComponent, SelectFlagTypeErrorMessage, SessionErrorPageComponent, SessionErrorRoute, SessionJsonErrorLogger, SessionStorageGuard, SessionStorageService, ShowCondition, SortOrder$1 as SortOrder, SortParameters, SortSearchResultPipe, TabComponent, TableColumnConfig, TableConfig, TabsComponent, TabsModule, TaskAssignedComponent, TaskCancelledComponent, TaskConflictComponent, TaskUnassignedComponent, Terms, TestRouteSnapshotBuilder, TranslatedMarkdownDirective, TranslatedMarkdownModule, UnLinkCasesComponent, UnsupportedFieldComponent, UpdateFlagAddTranslationErrorMessage, UpdateFlagAddTranslationFormComponent, UpdateFlagAddTranslationStep, UpdateFlagComponent, UpdateFlagErrorMessage, UpdateFlagStep, UpdateFlagTitleDisplayPipe, WaysToPayFieldComponent, WindowService, Wizard, WizardFactoryService, WizardPage, WizardPageField, WorkAllocationService, WorkbasketFiltersComponent, WorkbasketFiltersModule, WorkbasketInput, WorkbasketInputFilterService, WorkbasketInputModel, WriteAddressFieldComponent, WriteCaseFlagFieldComponent, WriteCaseLinkFieldComponent, WriteCollectionFieldComponent, WriteComplexFieldComponent, WriteDateContainerFieldComponent, WriteDateFieldComponent, WriteDocumentFieldComponent, WriteDynamicListFieldComponent, WriteDynamicMultiSelectListFieldComponent, WriteDynamicRadioListFieldComponent, WriteEmailFieldComponent, WriteFixedListFieldComponent, WriteFixedRadioListFieldComponent, WriteJudicialUserFieldComponent, WriteLinkedCasesFieldComponent, WriteMoneyGbpFieldComponent, WriteMultiSelectListFieldComponent, WriteNumberFieldComponent, WriteOrderSummaryFieldComponent, WriteOrganisationComplexFieldComponent, WriteOrganisationFieldComponent, WritePhoneUKFieldComponent, WriteTextAreaFieldComponent, WriteTextFieldComponent, WriteYesNoFieldComponent, YesNoService, aCaseField, caseMessagesMockData, createACL, createCaseEventTrigger, createCaseField, createComplexFieldOverride, createFieldType, createFixedListFieldType, createHiddenComplexFieldOverride, createMultiSelectListFieldType, createWizardPage, createWizardPageField, editorRouting, initDialog, newCaseField, safeJsonParse, textFieldType, viewerRouting };
|
|
41179
41201
|
//# sourceMappingURL=hmcts-ccd-case-ui-toolkit.mjs.map
|