@hmcts/rpx-xui-common-lib 2.1.3-angular-upgrade-11 → 2.1.6-angular-upgrade-11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/hmcts-rpx-xui-common-lib.umd.js +607 -392
- package/bundles/hmcts-rpx-xui-common-lib.umd.js.map +1 -1
- package/bundles/hmcts-rpx-xui-common-lib.umd.min.js +1 -1
- package/bundles/hmcts-rpx-xui-common-lib.umd.min.js.map +1 -1
- package/esm2015/hmcts-rpx-xui-common-lib.js +27 -26
- package/esm2015/lib/components/accessibility/accessibility.component.js +2 -2
- package/esm2015/lib/components/find-location/find-location.component.js +6 -2
- package/esm2015/lib/components/find-person/find-person.component.js +3 -3
- package/esm2015/lib/components/find-service/find-service.component.js +31 -0
- package/esm2015/lib/components/generic-filter/generic-filter.component.js +16 -10
- package/esm2015/lib/components/search-judicials/search-judicials.component.js +3 -3
- package/esm2015/lib/components/search-location/search-location.component.js +22 -3
- package/esm2015/lib/components/search-service/search-service.component.js +31 -0
- package/esm2015/lib/components/selected-case/selected-case.component.js +5 -7
- package/esm2015/lib/components/selected-case-confirm/selected-case-confirm.component.js +1 -1
- package/esm2015/lib/components/selected-case-list/selected-case-list.component.js +7 -3
- package/esm2015/lib/components/share-case/share-case.component.js +127 -13
- package/esm2015/lib/exui-common-lib.module.js +5 -17
- package/esm2015/lib/models/case-share.model.js +7 -2
- package/esm2015/lib/models/filter.model.js +1 -1
- package/esm2015/lib/models/index.js +2 -1
- package/esm2015/lib/models/location.model.js +7 -2
- package/esm2015/lib/models/person.model.js +3 -1
- package/esm2015/lib/services/case-sharing-state/case-sharing-state.service.js +28 -14
- package/esm2015/lib/services/find-person/find-person.service.js +3 -3
- package/esm2015/lib/services/locations/location.service.js +3 -3
- package/esm2015/lib/services/public-api.js +1 -5
- package/fesm2015/hmcts-rpx-xui-common-lib.js +525 -310
- package/fesm2015/hmcts-rpx-xui-common-lib.js.map +1 -1
- package/hmcts-rpx-xui-common-lib.d.ts +26 -25
- package/hmcts-rpx-xui-common-lib.metadata.json +1 -1
- package/lib/components/find-location/find-location.component.d.ts +3 -2
- package/lib/components/find-service/find-service.component.d.ts +14 -0
- package/lib/components/search-location/search-location.component.d.ts +5 -2
- package/lib/components/search-service/search-service.component.d.ts +13 -0
- package/lib/components/selected-case/selected-case.component.d.ts +1 -1
- package/lib/components/selected-case-list/selected-case-list.component.d.ts +1 -0
- package/lib/components/share-case/share-case.component.d.ts +37 -2
- package/lib/exui-common-lib.module.d.ts +0 -2
- package/lib/models/case-share.model.d.ts +5 -0
- package/lib/models/filter.model.d.ts +4 -1
- package/lib/models/index.d.ts +1 -0
- package/lib/models/location.model.d.ts +11 -0
- package/lib/models/person.model.d.ts +3 -0
- package/lib/services/case-sharing-state/case-sharing-state.service.d.ts +1 -1
- package/lib/services/locations/location.service.d.ts +2 -2
- package/lib/services/public-api.d.ts +0 -4
- package/package.json +4 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
(function (global, factory) {
|
|
2
|
-
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/forms'), require('rxjs'), require('rxjs/operators'), require('@angular/
|
|
3
|
-
typeof define === 'function' && define.amd ? define('@hmcts/rpx-xui-common-lib', ['exports', '@angular/core', '@angular/common', '@angular/forms', 'rxjs', 'rxjs/operators', '@angular/common/http', '@angular/material/autocomplete', '@angular/material/input', '@angular/material/tabs', '
|
|
4
|
-
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.hmcts = global.hmcts || {}, global.hmcts["rpx-xui-common-lib"] = {}), global.ng.core, global.ng.common, global.ng.forms, global.rxjs, global.rxjs.operators, global.ng.common.http, global.ng.material.autocomplete, global.ng.material.input, global.ng.material.tabs, global.
|
|
5
|
-
})(this, (function (exports, i0, i4, forms, rxjs, operators, i1, autocomplete, input, tabs,
|
|
2
|
+
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/common'), require('@angular/forms'), require('rxjs'), require('rxjs/operators'), require('@angular/router'), require('@angular/common/http'), require('@angular/material/autocomplete'), require('@angular/material/input'), require('@angular/material/tabs'), require('ngx-pagination'), require('launchdarkly-js-client-sdk'), require('@angular/platform-browser'), require('@ng-idle/core'), require('@ng-idle/keepalive')) :
|
|
3
|
+
typeof define === 'function' && define.amd ? define('@hmcts/rpx-xui-common-lib', ['exports', '@angular/core', '@angular/common', '@angular/forms', 'rxjs', 'rxjs/operators', '@angular/router', '@angular/common/http', '@angular/material/autocomplete', '@angular/material/input', '@angular/material/tabs', 'ngx-pagination', 'launchdarkly-js-client-sdk', '@angular/platform-browser', '@ng-idle/core', '@ng-idle/keepalive'], factory) :
|
|
4
|
+
(global = typeof globalThis !== 'undefined' ? globalThis : global || self, factory((global.hmcts = global.hmcts || {}, global.hmcts["rpx-xui-common-lib"] = {}), global.ng.core, global.ng.common, global.ng.forms, global.rxjs, global.rxjs.operators, global.ng.router, global.ng.common.http, global.ng.material.autocomplete, global.ng.material.input, global.ng.material.tabs, global.ngxPagination, global.LDClient, global.ng.platformBrowser, global.i1$2, global.i2$1));
|
|
5
|
+
})(this, (function (exports, i0, i4, forms, rxjs, operators, i1, i1$1, autocomplete, input, tabs, ngxPagination, LDClient, i2, i1$2, i2$1) { 'use strict';
|
|
6
6
|
|
|
7
7
|
function _interopNamespace(e) {
|
|
8
8
|
if (e && e.__esModule) return e;
|
|
@@ -24,8 +24,8 @@
|
|
|
24
24
|
|
|
25
25
|
var i0__namespace = /*#__PURE__*/_interopNamespace(i0);
|
|
26
26
|
var i4__namespace = /*#__PURE__*/_interopNamespace(i4);
|
|
27
|
-
var i1__namespace = /*#__PURE__*/_interopNamespace(i1);
|
|
28
|
-
var i1__namespace
|
|
27
|
+
var i1__namespace$1 = /*#__PURE__*/_interopNamespace(i1);
|
|
28
|
+
var i1__namespace = /*#__PURE__*/_interopNamespace(i1$1);
|
|
29
29
|
var LDClient__namespace = /*#__PURE__*/_interopNamespace(LDClient);
|
|
30
30
|
var i2__namespace = /*#__PURE__*/_interopNamespace(i2);
|
|
31
31
|
var i1__namespace$2 = /*#__PURE__*/_interopNamespace(i1$2);
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
AccessibilityComponent.decorators = [
|
|
40
40
|
{ type: i0.Component, args: [{
|
|
41
41
|
selector: 'xuilib-accessibility',
|
|
42
|
-
template: "<h1 class=\"govuk-heading-xl\" id=\"Accessibility-statement-for-Expert-UI\">Accessibility statement for Expert UI</h1>\n\n<ul class=\"govuk-list\">\n <li><a href=\"accessibility#immigration\">Immigration and Asylum</a></li>\n <li><a href=\"accessibility#family\">Family Public Law </a></li>\n</ul>\n\n<p class=\"govuk-body\">This website is run by HM Courts & Tribunals Service. We want as many people as possible to be\n able to use this website. For example, you should be able to:</p>\n\n<ul class=\"govuk-list govuk-list--bullet\">\n <li>change colours, contrast levels and fonts</li>\n <li>zoom in up to 300% without the text spilling off the screen</li>\n <li>navigate most of the website using just a keyboard</li>\n <li>navigate most of the website using speech recognition software</li>\n <li>listen to most of the website using a screen reader (including the most recent versions of JAWS, NVDA and\n VoiceOver)\n </li>\n</ul>\n\n<p class=\"govuk-body\">We\u2019ve also made the website text as simple as possible to understand.</p>\n\n<p class=\"govuk-body\"><a rel=\"noopener noreferrer\" target=\"_blank\" href=\"https://mcmw.abilitynet.org.uk/\">AbilityNet</a>\n has advice on making your device easier to use if you have a disability.</p>\n\n<h2 class=\"govuk-heading-l\" id=\"How-accessible-this-website-is\">How accessible this website is</h2>\n\n<p class=\"govuk-body\">We know some parts of the website are not fully accessible:</p>\n\n<ul class=\"govuk-list govuk-list--bullet\">\n <li>some pages are difficult to navigate using just a keyboard</li>\n <li>some pages can\u2019t be listened to in full using a screen reader</li>\n <li>some pages have problems with colour contrasts between text and background</li>\n <li>some PDFs may not be fully accessible to a screen reader</li>\n</ul>\n\n<h2 class=\"govuk-heading-l\" id=\"What-to-do-if-you-cannot-access-parts-of-this-website\">Feedback and contact\n information</h2>\n\n<p class=\"govuk-body\">If you need information on this website in a different format like accessible PDF, large print,\n easy read, audio recording or braille, you can:</p>\n\n<ul class=\"govuk-list govuk-list--bullet\">\n <li>email: <a href=\"mailto:HMCTSforms@justice.gov.uk\"> HMCTSforms@justice.gov.uk</a></li>\n <li>call: +44 (0) 300 123 1711</li>\n <li>contact your service representative</li>\n</ul>\n\n<p class=\"govuk-body\">We\u2019ll consider your request and get back to you in 10 working days.</p>\n\n<h2 class=\"govuk-heading-l\" id=\"Reporting-accessibility-problems-with-this-website\">Reporting accessibility problems\n with this website</h2>\n\n<p class=\"govuk-body\">We\u2019re always looking to improve the accessibility of this website. If you find any problems not\n listed on this page or think we\u2019re not meeting accessibility requirements, contact:</p>\n\n<ul class=\"govuk-list govuk-list--bullet\">\n <li>email: <a href=\"mailto:customer.service@justice.gov.uk\"> customer.service@justice.gov.uk</a></li>\n <li>telephone: +44 (0) 300 123 1711</li>\n</ul>\n\n<h2 class=\"govuk-heading-l\" id=\"Enforcement-procedure \">Enforcement procedure</h2>\n\n<p class=\"govuk-body\">The Equality and Human Rights Commission (EHRC) is responsible for enforcing the Public Sector\n Bodies (Websites and Mobile Applications) (No. 2) Accessibility Regulations 2018 (the \u2018accessibility\n regulations\u2019). </p>\n\n<p class=\"govuk-body\">If you\u2019re not happy with how we respond to your complaint, <a rel=\"noopener noreferrer\"\n target=\"_blank\"\n href=\"https://www.equalityadvisoryservice.com/\">contact\n the Equality Advisory and Support Service (EASS).</a></p>\n\n<h1 class=\"govuk-heading-l\" id=\"Contacting-us-by-phone-or-visiting-us-in-person\">Contacting us by phone or visiting us\n in person</h1>\n\n<p class=\"govuk-body\">We provide a text relay service for people who are D/deaf, hearing impaired or have a speech\n impediment.</p>\n\n<p class=\"govuk-body\">Our offices and tribunal venues have audio induction loops, or if you contact us before your visit\n we can arrange a British Sign Language (BSL) interpreter. You can also request step-free access or a foreign language\n interpreter.</p>\n\n<p class=\"govuk-body\">If you have a question about accessibility in our Tribunal venues, you can contact the First-tier\n Tribunal enquiry line: +44 (0) 300 123 1711. You can <a target=\"_blank\"\n href=\"https://courttribunalfinder.service.gov.uk/search/\">find\n the contact details for court and tribunal venues</a>. </p>\n\n<p class=\"govuk-body\">You can also contact your service representative for more information.</p>\n\n<h1 class=\"govuk-heading-l\" id=\"Technical-information-about-this-website\u2019s-accessibility\">Technical information about\n this website\u2019s accessibility</h1>\n\n<p class=\"govuk-body\">HMCTS is committed to making its website accessible, in accordance with the Public Sector Bodies\n (Websites and Mobile Applications) (No.2) Accessibility Regulations 2018.</p>\n\n<p class=\"govuk-body\">This website is partially compliant with the <a rel=\"noopener noreferrer\" target=\"_blank\"\n href=\"https://www.w3.org/TR/WCAG21/\">Web Content\n Accessibility Guidelines version 2.1</a>, due to the non-compliances listed below.</p>\n\n<h1 class=\"govuk-heading-l\" id=\"Non-accessible-content\">Non-accessible content </h1>\n\n<p class=\"govuk-body\">The content listed below is non-compliant for the following reasons.</p>\n\n<h2 class=\"govuk-heading-l\" id=\"Non-compliance-with-the-accessibility-regulations\">Non-compliance with the accessibility\n regulations</h2>\n\n<p class=\"govuk-body\">Some pages cannot be navigated completely using just a keyboard, so some people won\u2019t be able to\n tab through the pages. This fails WCAG 2.1 success criterion 2.1 (keyboard accessible).</p>\n\n<p class=\"govuk-body\">Some pages can\u2019t be listened to in full using a screen reader, so some people won\u2019t be able to\n access the information. This fails WCAG 2.1 success criterion 1.2.5 (audio description \u2013 prerecorded).</p>\n\n<p class=\"govuk-body\">Some of the contrast ratios don\u2019t meet the current accessibility requirements. This fails WCAG 2.1\n success criterion 1.4.3 (contrast \u2013 minimum).</p>\n\n<h3 class=\"govuk-heading-m\" id=\"immigration\">Immigration and Asylum</h3>\n\n<p class=\"govuk-body\">Some of the images on the service include text and are not accessible for some low vision users.\n We have identified a solution for this issue that we will implement as soon as possible.</p>\n\n<h3 class=\"govuk-heading-m\" id=\"family\">Family Public Law </h3>\n\n<ol class=\"govuk-list govuk-list--alpha\">\n <li>The navigation system used in family public law cannot be rendered well by screen readers, so features can\u2019t be\n listened to in full\n </li>\n <li>Some essential functions within the family public law digital service cannot be accessed properly using screen\n readers\n </li>\n <li>Some complex forms within the service will not be rendered correctly or cannot be listened to by screen readers\n </li>\n</ol>\n\n<h2 class=\"govuk-heading-m\" id=\"Disproportionate burden \">Disproportionate burden </h2>\n\n<p class=\"govuk-body\">For Manage organisation, Register organisation, Approve organisations and Manage cases, we found\n the following issues that are currently being triaged to find out if there is a disproportionate burden:</p>\n\n<ol class=\"govuk-list govuk-list--alpha\">\n <li>Screen readers can\u2019t switch between headers, read content in tabs and buttons</li>\n <li>Screen readers can\u2019t tab between radio buttons, read links or content</li>\n <li>Colour contrast ratios uneven between page background and content</li>\n <li>Some labels, fields, error messages and other content can\u2019t be clearly identified by screen readers and voice\n activation software\n </li>\n <li>Some page headings and titles don\u2019t follow a logical structure for screen readers</li>\n <li>The navigation of some pages isn\u2019t clear</li>\n <li>Some headings, links and button labels aren\u2019t clearly descriptive</li>\n</ol>\n\n<h2 class=\"govuk-heading-m\" id=\"Content-that\u2019s-not-within-the-scope-of-the-accessibility-regulations\">Content that\u2019s not\n within the scope of the accessibility regulations </h2>\n\n<p class=\"govuk-body\">PDFs, documents and attachments to email notifications published before 23 September 2018 may not\n meet accessibility standards. For example, they may not be structured so they\u2019re accessible to a screen reader.</p>\n\n<p class=\"govuk-body\">Any new PDFs or Word documents we publish will meet accessibility standards.</p>\n\n<h1 class=\"govuk-heading-l\" id=\"what-to-improve-accessibility\">What we\u2019re doing to improve accessibility</h1>\n\n<p class=\"govuk-body\">We\u2019re committed to ensuring our services are accessible to all our users and that they comply with\n level AA of the Web Content Accessibility Guidelines \u2013 WCAG 2.1.</p>\n\n<p class=\"govuk-body\">We\u2019re actively working to improve the identified issues and make them AA-compliant by 23 September\n 2020. We\u2019re also continuing to improve all other AAA-level accessibility issues as we iterate the service.</p>\n\n<h1 class=\"govuk-heading-l\" id=\"preparation-of-this-accessibility-statement\">Preparation of this accessibility\n statement</h1>\n\n<p class=\"govuk-body\">This statement was prepared on 16 September 2019. It was last reviewed on 16 September 2020.</p>\n\n<p class=\"govuk-body\">This website was last tested on 19 May 2020. The test was carried out by the <a target=\"_blank\"\n href=\"https://digitalaccessibilitycentre.org/\">Digital\n Accessibility Centre (DAC)</a>.</p>\n",
|
|
42
|
+
template: "<h1 class=\"govuk-heading-xl\" id=\"Accessibility-statement-for-Expert-UI\">Accessibility statement for Expert UI</h1>\n\n<ul class=\"govuk-list\">\n <li><a href=\"accessibility#immigration\">Immigration and Asylum</a></li>\n <li><a href=\"accessibility#family\">Family Public Law </a></li>\n</ul>\n\n<p class=\"govuk-body\">This website is run by HM Courts & Tribunals Service. We want as many people as possible to be\n able to use this website. For example, you should be able to:</p>\n\n<ul class=\"govuk-list govuk-list--bullet\">\n <li>change colours, contrast levels and fonts</li>\n <li>zoom in up to 300% without the text spilling off the screen</li>\n <li>navigate most of the website using just a keyboard</li>\n <li>navigate most of the website using speech recognition software</li>\n <li>listen to most of the website using a screen reader (including the most recent versions of JAWS, NVDA and\n VoiceOver)\n </li>\n</ul>\n\n<p class=\"govuk-body\">We\u2019ve also made the website text as simple as possible to understand.</p>\n\n<p class=\"govuk-body\"><a rel=\"noopener noreferrer\" target=\"_blank\" href=\"https://mcmw.abilitynet.org.uk/\">AbilityNet</a>\n has advice on making your device easier to use if you have a disability.</p>\n\n<h2 class=\"govuk-heading-l\" id=\"How-accessible-this-website-is\">How accessible this website is</h2>\n\n<p class=\"govuk-body\">We know some parts of the website are not fully accessible:</p>\n\n<ul class=\"govuk-list govuk-list--bullet\">\n <li>some pages are difficult to navigate using just a keyboard</li>\n <li>some pages can\u2019t be listened to in full using a screen reader</li>\n <li>some pages have problems with colour contrasts between text and background</li>\n <li>some PDFs may not be fully accessible to a screen reader</li>\n</ul>\n\n<h2 class=\"govuk-heading-l\" id=\"What-to-do-if-you-cannot-access-parts-of-this-website\">Feedback and contact\n information</h2>\n\n<p class=\"govuk-body\">If you need information on this website in a different format like accessible PDF, large print,\n easy read, audio recording or braille, you can:</p>\n\n<ul class=\"govuk-list govuk-list--bullet\">\n <li>email: <a href=\"mailto:HMCTSforms@justice.gov.uk\"> HMCTSforms@justice.gov.uk</a></li>\n <li>call: +44 (0) 300 123 1711</li>\n <li>contact your service representative</li>\n</ul>\n\n<p class=\"govuk-body\">We\u2019ll consider your request and get back to you in 10 working days.</p>\n\n<h2 class=\"govuk-heading-l\" id=\"Reporting-accessibility-problems-with-this-website\">Reporting accessibility problems\n with this website</h2>\n\n<p class=\"govuk-body\">We\u2019re always looking to improve the accessibility of this website. If you find any problems not\n listed on this page or think we\u2019re not meeting accessibility requirements, contact:</p>\n\n<ul class=\"govuk-list govuk-list--bullet\">\n <li>email: <a href=\"mailto:customer.service@justice.gov.uk\"> customer.service@justice.gov.uk</a></li>\n <li>telephone: +44 (0) 300 123 1711</li>\n</ul>\n\n<h2 class=\"govuk-heading-l\" id=\"Enforcement-procedure \">Enforcement procedure</h2>\n\n<p class=\"govuk-body\">The Equality and Human Rights Commission (EHRC) is responsible for enforcing the Public Sector\n Bodies (Websites and Mobile Applications) (No. 2) Accessibility Regulations 2018 (the \u2018accessibility\n regulations\u2019). </p>\n\n<p class=\"govuk-body\">If you\u2019re not happy with how we respond to your complaint, <a rel=\"noopener noreferrer\"\n target=\"_blank\"\n href=\"https://www.equalityadvisoryservice.com/\">contact\n the Equality Advisory and Support Service (EASS).</a></p>\n\n<h1 class=\"govuk-heading-l\" id=\"Contacting-us-by-phone-or-visiting-us-in-person\">Contacting us by phone or visiting us\n in person</h1>\n\n<p class=\"govuk-body\">We provide a text relay service for people who are D/deaf, hearing impaired or have a speech\n impediment.</p>\n\n<p class=\"govuk-body\">Our offices and tribunal venues have audio induction loops, or if you contact us before your visit\n we can arrange a British Sign Language (BSL) interpreter. You can also request step-free access or a foreign language\n interpreter.</p>\n\n<p class=\"govuk-body\">If you have a question about accessibility in our Tribunal venues, you can contact the First-tier\n Tribunal enquiry line: +44 (0) 300 123 1711. You can <a target=\"_blank\"\n href=\"https://courttribunalfinder.service.gov.uk/search/\">find\n the contact details for court and tribunal venues</a>. </p>\n\n<p class=\"govuk-body\">You can also contact your service representative for more information.</p>\n\n<h1 class=\"govuk-heading-l\" id=\"Technical-information-about-this-website\u2019s-accessibility\">Technical information about\n this website\u2019s accessibility</h1>\n\n<p class=\"govuk-body\">HMCTS is committed to making its website accessible, in accordance with the Public Sector Bodies\n (Websites and Mobile Applications) (No.2) Accessibility Regulations 2018.</p>\n\n<p class=\"govuk-body\">This website is partially compliant with the <a rel=\"noopener noreferrer\" target=\"_blank\"\n href=\"https://www.w3.org/TR/WCAG21/\">Web Content\n Accessibility Guidelines version 2.1</a>, due to the non-compliances listed below.</p>\n\n<h1 class=\"govuk-heading-l\" id=\"Non-accessible-content\">Non-accessible content </h1>\n\n<p class=\"govuk-body\">The content listed below is non-compliant for the following reasons.</p>\n\n<h2 class=\"govuk-heading-l\" id=\"Non-compliance-with-the-accessibility-regulations\">Non-compliance with the accessibility\n regulations</h2>\n\n<p class=\"govuk-body\">Some pages cannot be navigated completely using just a keyboard, so some people won\u2019t be able to\n tab through the pages. This fails WCAG 2.1 success criterion 2.1 (keyboard accessible).</p>\n\n<p class=\"govuk-body\">Some pages can\u2019t be listened to in full using a screen reader, so some people won\u2019t be able to\n access the information. This fails WCAG 2.1 success criterion 1.2.5 (audio description \u2013 prerecorded).</p>\n\n<p class=\"govuk-body\">Some of the contrast ratios don\u2019t meet the current accessibility requirements. This fails WCAG 2.1\n success criterion 1.4.3 (contrast \u2013 minimum).</p>\n\n<h3 class=\"govuk-heading-m\" id=\"immigration\">Immigration and Asylum</h3>\n\n<p class=\"govuk-body\">Some of the images on the service include text and are not accessible for some low vision users.\n We have identified a solution for this issue that we will implement as soon as possible.</p>\n\n<h3 class=\"govuk-heading-m\" id=\"family\">Family Public Law </h3>\n\n<ol class=\"govuk-list govuk-list--alpha\">\n <li>The navigation system used in family public law cannot be rendered well by screen readers, so features can\u2019t be\n listened to in full\n </li>\n <li>Some essential functions within the family public law digital service cannot be accessed properly using screen\n readers\n </li>\n <li>Some complex forms within the service will not be rendered correctly or cannot be listened to by screen readers\n </li>\n</ol>\n\n<h2 class=\"govuk-heading-m\" id=\"Disproportionate burden \">Disproportionate burden </h2>\n\n<p class=\"govuk-body\">For Manage organisation, Register organisation, Approve organisations and Manage cases, we found\n the following issues that are currently being triaged to find out if there is a disproportionate burden:</p>\n\n<ol class=\"govuk-list govuk-list--alpha\">\n <li>Screen readers can\u2019t switch between headers, read content in tabs and buttons</li>\n <li>Screen readers can\u2019t tab between radio buttons, read links or content</li>\n <li>Colour contrast ratios uneven between page background and content</li>\n <li>Some labels, fields, error messages and other content can\u2019t be clearly identified by screen readers and voice\n activation software\n </li>\n <li>Some page headings and titles don\u2019t follow a logical structure for screen readers</li>\n <li>The navigation of some pages isn\u2019t clear</li>\n <li>Some headings, links and button labels aren\u2019t clearly descriptive</li>\n</ol>\n\n<h2 class=\"govuk-heading-m\" id=\"Content-that\u2019s-not-within-the-scope-of-the-accessibility-regulations\">Content that\u2019s not\n within the scope of the accessibility regulations </h2>\n\n<p class=\"govuk-body\">PDFs, documents and attachments to email notifications published before 23 September 2018 may not\n meet accessibility standards. For example, they may not be structured so they\u2019re accessible to a screen reader.</p>\n\n<p class=\"govuk-body\">Any new PDFs or Word documents we publish will meet accessibility standards.</p>\n\n<h1 class=\"govuk-heading-l\" id=\"what-to-improve-accessibility\">What we\u2019re doing to improve accessibility</h1>\n\n<p class=\"govuk-body\">We\u2019re committed to ensuring our services are accessible to all our users and that they comply with\n level AA of the Web Content Accessibility Guidelines \u2013 WCAG 2.1.</p>\n\n<p class=\"govuk-body\">We\u2019re actively working to improve the identified issues and make them AA-compliant by 23 September\n 2020. We\u2019re also continuing to improve all other AAA-level accessibility issues as we iterate the service.</p>\n\n<h1 class=\"govuk-heading-l\" id=\"preparation-of-this-accessibility-statement\">Preparation of this accessibility\n statement</h1>\n\n<p class=\"govuk-body\">This statement was prepared on 16 September 2019. It was last reviewed on 16 September 2020.</p>\n\n<p class=\"govuk-body\">This website was last tested on 19 May 2020. The test was carried out by the <a target=\"_blank\"\n href=\"https://digitalaccessibilitycentre.org/\">Digital\n Accessibility Centre (DAC)</a>.</p>\n\n<h3 class=\"govuk-heading-m\">Family Private Law:</h3>\n\n<p class=\"govuk-body\">This service has not yet been tested for accessibility issues. In the future, we will conduct an\n accessibility audit in order to find out if there are any accessibility issues. The accessibility statement will be\n updated with any relevant changes that we find.</p>\n\n<p class=\"govuk-body\">If there are any issues with accessing information or using this website please contact:</p>\n\n<ol class=\"govuk-list govuk-list--bullet\">\n <li>Nicola Whitcher - 02380 384324</li>\n <li>Hannah Townley - 02380 384313</li>\n</ol>",
|
|
43
43
|
styles: [".govuk-list--alpha{padding-left:20px;list-style-type:lower-alpha}"]
|
|
44
44
|
},] }
|
|
45
45
|
];
|
|
@@ -1013,6 +1013,7 @@
|
|
|
1013
1013
|
}
|
|
1014
1014
|
};
|
|
1015
1015
|
GenericFilterComponent.prototype.toggleSelectAll = function (event, form, item, field) {
|
|
1016
|
+
var e_3, _a;
|
|
1016
1017
|
var isChecked = event.target.checked;
|
|
1017
1018
|
var formArray = form.get(field.name);
|
|
1018
1019
|
if (!item.selectAll) {
|
|
@@ -1039,19 +1040,35 @@
|
|
|
1039
1040
|
else if (hasSelectAllOption && !allChecked && isChecked && isAllCheckedExcludingTheSelectAllOption) {
|
|
1040
1041
|
formArray.controls[index_1].patchValue(true);
|
|
1041
1042
|
}
|
|
1042
|
-
return;
|
|
1043
1043
|
}
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1044
|
+
else {
|
|
1045
|
+
formArray.controls.forEach(function (control) {
|
|
1046
|
+
if (isChecked) {
|
|
1047
|
+
control.patchValue(true);
|
|
1048
|
+
}
|
|
1049
|
+
else {
|
|
1050
|
+
control.patchValue(false);
|
|
1051
|
+
}
|
|
1052
|
+
});
|
|
1053
|
+
}
|
|
1054
|
+
if (field.changeResetFields && field.changeResetFields.length) {
|
|
1055
|
+
try {
|
|
1056
|
+
for (var _b = __values(field.changeResetFields), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
1057
|
+
var resetField = _c.value;
|
|
1058
|
+
this.resetField(resetField, form);
|
|
1059
|
+
}
|
|
1047
1060
|
}
|
|
1048
|
-
|
|
1049
|
-
|
|
1061
|
+
catch (e_3_1) { e_3 = { error: e_3_1 }; }
|
|
1062
|
+
finally {
|
|
1063
|
+
try {
|
|
1064
|
+
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
1065
|
+
}
|
|
1066
|
+
finally { if (e_3) throw e_3.error; }
|
|
1050
1067
|
}
|
|
1051
|
-
}
|
|
1068
|
+
}
|
|
1052
1069
|
};
|
|
1053
1070
|
GenericFilterComponent.prototype.resetField = function (resetField, form) {
|
|
1054
|
-
var
|
|
1071
|
+
var e_4, _a;
|
|
1055
1072
|
var control = form.get(resetField);
|
|
1056
1073
|
var defaultValue = this.config.cancelSetting.fields.find(function (f) { return f.name === resetField; });
|
|
1057
1074
|
if (control instanceof forms.FormArray) {
|
|
@@ -1067,12 +1084,12 @@
|
|
|
1067
1084
|
this.resetField(key, control);
|
|
1068
1085
|
}
|
|
1069
1086
|
}
|
|
1070
|
-
catch (
|
|
1087
|
+
catch (e_4_1) { e_4 = { error: e_4_1 }; }
|
|
1071
1088
|
finally {
|
|
1072
1089
|
try {
|
|
1073
1090
|
if (keys_2_1 && !keys_2_1.done && (_a = keys_2.return)) _a.call(keys_2);
|
|
1074
1091
|
}
|
|
1075
|
-
finally { if (
|
|
1092
|
+
finally { if (e_4) throw e_4.error; }
|
|
1076
1093
|
}
|
|
1077
1094
|
}
|
|
1078
1095
|
else if (control instanceof forms.FormControl) {
|
|
@@ -1095,7 +1112,7 @@
|
|
|
1095
1112
|
this._settings = this.filterService.get(this.config.id);
|
|
1096
1113
|
};
|
|
1097
1114
|
GenericFilterComponent.prototype.buildForm = function (config, settings, reset) {
|
|
1098
|
-
var
|
|
1115
|
+
var e_5, _a;
|
|
1099
1116
|
var findPersonControl = this.form ? this.form.get('findPersonControl') : null;
|
|
1100
1117
|
this.form = this.fb.group({});
|
|
1101
1118
|
if (findPersonControl) {
|
|
@@ -1153,16 +1170,16 @@
|
|
|
1153
1170
|
_loop_1(field);
|
|
1154
1171
|
}
|
|
1155
1172
|
}
|
|
1156
|
-
catch (
|
|
1173
|
+
catch (e_5_1) { e_5 = { error: e_5_1 }; }
|
|
1157
1174
|
finally {
|
|
1158
1175
|
try {
|
|
1159
1176
|
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
1160
1177
|
}
|
|
1161
|
-
finally { if (
|
|
1178
|
+
finally { if (e_5) throw e_5.error; }
|
|
1162
1179
|
}
|
|
1163
1180
|
};
|
|
1164
1181
|
GenericFilterComponent.prototype.buildCheckBoxFormArray = function (field, settings) {
|
|
1165
|
-
var
|
|
1182
|
+
var e_6, _a;
|
|
1166
1183
|
var validators = GenericFilterComponent.addFormValidators(field);
|
|
1167
1184
|
var formArray = this.fb.array([], validators);
|
|
1168
1185
|
var defaultValues;
|
|
@@ -1182,17 +1199,17 @@
|
|
|
1182
1199
|
_loop_2(option);
|
|
1183
1200
|
}
|
|
1184
1201
|
}
|
|
1185
|
-
catch (
|
|
1202
|
+
catch (e_6_1) { e_6 = { error: e_6_1 }; }
|
|
1186
1203
|
finally {
|
|
1187
1204
|
try {
|
|
1188
1205
|
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
1189
1206
|
}
|
|
1190
|
-
finally { if (
|
|
1207
|
+
finally { if (e_6) throw e_6.error; }
|
|
1191
1208
|
}
|
|
1192
1209
|
return formArray;
|
|
1193
1210
|
};
|
|
1194
1211
|
GenericFilterComponent.prototype.buildFindLocationFormArray = function (field, settings) {
|
|
1195
|
-
var
|
|
1212
|
+
var e_7, _a;
|
|
1196
1213
|
var validators = GenericFilterComponent.addFormValidators(field);
|
|
1197
1214
|
var formArray = this.fb.array([], validators);
|
|
1198
1215
|
var defaultValues;
|
|
@@ -1205,12 +1222,12 @@
|
|
|
1205
1222
|
formArray.push(new forms.FormControl(defaultValue));
|
|
1206
1223
|
}
|
|
1207
1224
|
}
|
|
1208
|
-
catch (
|
|
1225
|
+
catch (e_7_1) { e_7 = { error: e_7_1 }; }
|
|
1209
1226
|
finally {
|
|
1210
1227
|
try {
|
|
1211
1228
|
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
1212
1229
|
}
|
|
1213
|
-
finally { if (
|
|
1230
|
+
finally { if (e_7) throw e_7.error; }
|
|
1214
1231
|
}
|
|
1215
1232
|
}
|
|
1216
1233
|
}
|
|
@@ -1234,7 +1251,7 @@
|
|
|
1234
1251
|
});
|
|
1235
1252
|
};
|
|
1236
1253
|
GenericFilterComponent.prototype.emitFormErrors = function (form) {
|
|
1237
|
-
var
|
|
1254
|
+
var e_8, _a;
|
|
1238
1255
|
var errors = [];
|
|
1239
1256
|
try {
|
|
1240
1257
|
for (var _b = __values(this.config.fields), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
@@ -1248,12 +1265,12 @@
|
|
|
1248
1265
|
}
|
|
1249
1266
|
}
|
|
1250
1267
|
}
|
|
1251
|
-
catch (
|
|
1268
|
+
catch (e_8_1) { e_8 = { error: e_8_1 }; }
|
|
1252
1269
|
finally {
|
|
1253
1270
|
try {
|
|
1254
1271
|
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
1255
1272
|
}
|
|
1256
|
-
finally { if (
|
|
1273
|
+
finally { if (e_8) throw e_8.error; }
|
|
1257
1274
|
}
|
|
1258
1275
|
if (errors.length) {
|
|
1259
1276
|
this.filterService.givenErrors.next(errors);
|
|
@@ -1264,7 +1281,7 @@
|
|
|
1264
1281
|
GenericFilterComponent.decorators = [
|
|
1265
1282
|
{ type: i0.Component, args: [{
|
|
1266
1283
|
selector: 'xuilib-generic-filter',
|
|
1267
|
-
template: "<form [formGroup]=\"form\" (ngSubmit)=\"applyFilter(form)\">\n <div class=\"contain-classes\" *ngFor=\"let field of config.fields\">\n <hr *ngIf=\"field.lineBreakBefore\" class=\"govuk-section-break govuk-section-break--visible elevated-break\">\n <div class=\"govuk-form-group xui-generic-filter\"\n [hidden]=\"hidden(field, form)\"\n [id]=\"field.name\"\n [ngClass]=\"{'form-group-error': submitted && (form.get(field.name).errors?.minLength || form.get(field.name).errors?.maxLength)}\">\n <h3 *ngIf=\"field.title\" class=\"govuk-heading-s\">{{field.title}}</h3>\n <p class=\"govuk-body\" *ngIf=\"field.subTitle\">{{field.subTitle}}</p>\n <span [id]=\"field.name + '-error'\" class=\"govuk-error-message\" *ngIf=\"field.displayMinSelectedError && submitted && form.get(field.name).errors?.minLength\">\n <span class=\"govuk-visually-hidden\">Error:</span> {{field.minSelectedError}}\n </span>\n <span [id]=\"field.name + '-error'\" class=\"govuk-error-message\" *ngIf=\"field.displayMaxSelectedError && submitted && form.get(field.name).errors?.maxLength\">\n <span class=\"govuk-visually-hidden\">Error:</span> {{field.maxSelectedError}}\n </span>\n <div class=\"govuk-body\" [ngSwitch]=\"field.type\">\n <ng-container *ngSwitchCase=\"'select'\">\n <select class=\"govuk-select\" (change)=\"fieldChanged(field, form)\" [attr.disabled]=\"disabled(field, form)\" [name]=\"'select_' + field.name\" [id]=\"'select_' + field.name\" [formControlName]=\"field.name\">\n <option disabled selected hidden value=\"\">{{field.disabledText}}</option>\n <option class=\"govuk-radios__item\" *ngFor=\"let item of field.options\" [value]=\"item.key\">{{item.label}}</option>\n </select>\n </ng-container>\n <ng-container *ngSwitchCase=\"'checkbox'\">\n <div class=\"govuk-checkboxes govuk-checkboxes--small\" [formGroupName]=\"field.name\" [attr.field]=\"field.name\" [id]=\"'checkbox_' + field.name\">\n <div *ngFor=\"let item of field.options; let i = index\" class=\"govuk-checkboxes__item\">\n <input type=\"checkbox\" class=\"govuk-checkboxes__input\"\n [attr.disabled]=\"disabled(field, form)\"\n [formControlName]=\"i\"\n (change)=\"toggleSelectAll($event, form, item, field)\"\n [value]=\"item.key\" [id]=\"'checkbox_' + item.key\"\n [name]=\"'checkbox_' + item.key\"\n />\n <label\n [for]=\"'checkbox_' + item.key\"\n class=\"govuk-label govuk-checkboxes__label\"\n [ngClass]=\"{'govuk-!-font-weight-bold': item.selectAll}\"\n >{{item.label}}</label>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'checkbox-large'\">\n <div class=\"govuk-checkboxes\" [formGroupName]=\"field.name\" [attr.field]=\"field.name\" [id]=\"'checkbox_' + field.name\">\n <div *ngFor=\"let item of field.options; let i = index\" class=\"govuk-checkboxes__item\">\n <input type=\"checkbox\" class=\"govuk-checkboxes__input\"\n [attr.disabled]=\"disabled(field, form)\"\n [formControlName]=\"i\"\n (change)=\"toggleSelectAll($event, form, item, field)\"\n [value]=\"item.key\" [id]=\"'checkbox_' + item.key\"\n [name]=\"'checkbox_' + item.key\"\n />\n <label\n [for]=\"'checkbox_' + item.key\"\n class=\"govuk-label govuk-checkboxes__label\"\n [ngClass]=\"{'govuk-!-font-weight-bold': item.selectAll}\"\n >{{item.label}}</label>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'radio'\">\n <div class=\"govuk-radios\">\n <div *ngFor=\"let item of field.options\" class=\"govuk-radios__item\">\n <input type=\"radio\"\n [formControlName]=\"field.name\"\n [id]=\"'radio_' + item.key\"\n [attr.disabled]=\"disabled(field, form)\"\n [checked]=\"item.key === form.get(field.name).value\"\n class=\"govuk-radios__input\"\n [value]=\"item.key\"\n (change)=\"fieldChanged(field, form)\"\n />\n <label [for]=\"'radio_' + item.key\" class=\"govuk-label govuk-radios__label\">{{item.label}}</label>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'find-person'\">\n <xuilib-find-person subTitle=\"\" (personSelected)=\"updatePersonControls($event, field)\"\n (personFieldChanged)=\"inputChanged(field)\"\n [submitted]=\"submitted\"\n [disabled]=\"disabled(field, form)\"\n [domain]=\"form.get(field.domainField)?.value\"\n [findPersonGroup]=\"form\"\n [selectedPerson]=\"form.get(field.name)?.value?.email\"\n [userIncluded]=\"false\"\n ></xuilib-find-person>\n </ng-container>\n <ng-container *ngSwitchCase=\"'find-location'\">\n <xuilib-find-location (locationFieldChanged)=\"inputChanged(field)\"\n [form]=\"form\"\n [fields]=\"config.fields\"\n [locationTitle]=\"field.locationTitle\"\n [enableAddLocationButton]=\"field.
|
|
1284
|
+
template: "<form [formGroup]=\"form\" (ngSubmit)=\"applyFilter(form)\">\n <div class=\"contain-classes\" *ngFor=\"let field of config.fields\">\n <hr *ngIf=\"field.lineBreakBefore\" class=\"govuk-section-break govuk-section-break--visible elevated-break\">\n <div class=\"govuk-form-group xui-generic-filter\"\n [hidden]=\"hidden(field, form)\"\n [id]=\"field.name\"\n [ngClass]=\"{'form-group-error': submitted && (form.get(field.name).errors?.minLength || form.get(field.name).errors?.maxLength)}\">\n <h3 *ngIf=\"field.title\" class=\"govuk-heading-s\">{{field.title}}</h3>\n <p class=\"govuk-body\" *ngIf=\"field.subTitle\">{{field.subTitle}}</p>\n <span [id]=\"field.name + '-error'\" class=\"govuk-error-message\" *ngIf=\"field.displayMinSelectedError && submitted && form.get(field.name).errors?.minLength\">\n <span class=\"govuk-visually-hidden\">Error:</span> {{field.minSelectedError}}\n </span>\n <span [id]=\"field.name + '-error'\" class=\"govuk-error-message\" *ngIf=\"field.displayMaxSelectedError && submitted && form.get(field.name).errors?.maxLength\">\n <span class=\"govuk-visually-hidden\">Error:</span> {{field.maxSelectedError}}\n </span>\n <div class=\"govuk-body\" [ngSwitch]=\"field.type\">\n <ng-container *ngSwitchCase=\"'select'\">\n <select class=\"govuk-select\" (change)=\"fieldChanged(field, form)\" [attr.disabled]=\"disabled(field, form)\" [name]=\"'select_' + field.name\" [id]=\"'select_' + field.name\" [formControlName]=\"field.name\">\n <option disabled selected hidden value=\"\">{{field.disabledText}}</option>\n <option class=\"govuk-radios__item\" *ngFor=\"let item of field.options\" [value]=\"item.key\">{{item.label}}</option>\n </select>\n </ng-container>\n <ng-container *ngSwitchCase=\"'checkbox'\">\n <div class=\"govuk-checkboxes govuk-checkboxes--small\" [formGroupName]=\"field.name\" [attr.field]=\"field.name\" [id]=\"'checkbox_' + field.name\">\n <div *ngFor=\"let item of field.options; let i = index\" class=\"govuk-checkboxes__item\">\n <input type=\"checkbox\" class=\"govuk-checkboxes__input\"\n [attr.disabled]=\"disabled(field, form)\"\n [formControlName]=\"i\"\n (change)=\"toggleSelectAll($event, form, item, field)\"\n [value]=\"item.key\" [id]=\"'checkbox_' + item.key\"\n [name]=\"'checkbox_' + item.key\"\n />\n <label\n [for]=\"'checkbox_' + item.key\"\n class=\"govuk-label govuk-checkboxes__label\"\n [ngClass]=\"{'govuk-!-font-weight-bold': item.selectAll}\"\n >{{item.label}}</label>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'checkbox-large'\">\n <div class=\"govuk-checkboxes\" [formGroupName]=\"field.name\" [attr.field]=\"field.name\" [id]=\"'checkbox_' + field.name\">\n <div *ngFor=\"let item of field.options; let i = index\" class=\"govuk-checkboxes__item\">\n <input type=\"checkbox\" class=\"govuk-checkboxes__input\"\n [attr.disabled]=\"disabled(field, form)\"\n [formControlName]=\"i\"\n (change)=\"toggleSelectAll($event, form, item, field)\"\n [value]=\"item.key\" [id]=\"'checkbox_' + item.key\"\n [name]=\"'checkbox_' + item.key\"\n />\n <label\n [for]=\"'checkbox_' + item.key\"\n class=\"govuk-label govuk-checkboxes__label\"\n [ngClass]=\"{'govuk-!-font-weight-bold': item.selectAll}\"\n >{{item.label}}</label>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'radio'\">\n <div class=\"govuk-radios\">\n <div *ngFor=\"let item of field.options\" class=\"govuk-radios__item\">\n <input type=\"radio\"\n [formControlName]=\"field.name\"\n [id]=\"'radio_' + item.key\"\n [attr.disabled]=\"disabled(field, form)\"\n [checked]=\"item.key === form.get(field.name).value\"\n class=\"govuk-radios__input\"\n [value]=\"item.key\"\n (change)=\"fieldChanged(field, form)\"\n />\n <label [for]=\"'radio_' + item.key\" class=\"govuk-label govuk-radios__label\">{{item.label}}</label>\n </div>\n </div>\n </ng-container>\n <ng-container *ngSwitchCase=\"'find-person'\">\n <xuilib-find-person subTitle=\"\" (personSelected)=\"updatePersonControls($event, field)\"\n (personFieldChanged)=\"inputChanged(field)\"\n [submitted]=\"submitted\"\n [disabled]=\"disabled(field, form)\"\n [domain]=\"form.get(field.domainField)?.value\"\n [findPersonGroup]=\"form\"\n [selectedPerson]=\"form.get(field.name)?.value?.email\"\n [userIncluded]=\"false\"\n ></xuilib-find-person>\n </ng-container>\n <ng-container *ngSwitchCase=\"'find-location'\">\n <xuilib-find-location (locationFieldChanged)=\"inputChanged(field)\"\n [form]=\"form\"\n [fields]=\"config.fields\"\n [locationTitle]=\"field.locationTitle\"\n [enableAddLocationButton]=\"field.enableAddButton\"\n [disabled]=\"disabled(field, form)\"\n [disableInputField]=\"field.disable\"\n [selectedLocations]=\"form.get(field.name)?.value\"\n [submitted]=\"submitted\"\n [services]=\"form.get(field.findLocationField)?.value\"\n [field]=\"field\"\n ></xuilib-find-location>\n </ng-container>\n <ng-container *ngSwitchCase=\"'find-service'\">\n <xuilib-find-service (serviceFieldChanged)=\"inputChanged(field)\"\n [form]=\"form\"\n [fields]=\"config.fields\"\n [title]=\"field.title\"\n [enableAddServiceButton]=\"field.enableAddButton\"\n [disabled]=\"disabled(field, form)\"\n [disableInputField]=\"field.disable\"\n [selectedServices]=\"form.get(field.name)?.value\" \n [field]=\"field\"\n ></xuilib-find-service>\n </ng-container>\n </div>\n </div>\n </div>\n <hr class=\"govuk-section-break govuk-section-break--m govuk-section-break--visible\"/>\n <div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-full\">\n <button\n class=\"govuk-button govuk-!-margin-right-1 govuk-!-margin-bottom-0\"\n type=\"submit\"\n id=\"applyFilter\"\n [disabled]=\"config.enableDisabledButton && form.invalid\"\n >{{config.applyButtonText || 'Apply'}}</button>\n <button *ngIf=\"config.showCancelFilterButton\"\n class=\"govuk-button govuk-button--secondary govuk-!-margin-bottom-0\"\n type=\"button\"\n id=\"cancelFilter\"\n (click)=\"cancelFilter()\">{{ config.cancelButtonText || 'Cancel'}}</button>\n </div>\n </div>\n</form>\n",
|
|
1268
1285
|
changeDetection: i0.ChangeDetectionStrategy.OnPush,
|
|
1269
1286
|
encapsulation: i0.ViewEncapsulation.None,
|
|
1270
1287
|
styles: [".contain-classes .elevated-break{position:relative;top:-10px}.contain-classes .xui-generic-filter .select-all{margin-bottom:10px}.contain-classes .xui-generic-filter .govuk-checkboxes{display:flex;flex-wrap:wrap}.contain-classes .xui-generic-filter .govuk-checkboxes>div{flex-grow:1;flex-shrink:0}"]
|
|
@@ -1442,26 +1459,38 @@
|
|
|
1442
1459
|
this.subject.next(newSharedCases);
|
|
1443
1460
|
return newSharedCases;
|
|
1444
1461
|
};
|
|
1445
|
-
CaseSharingStateService.prototype.requestUnshare = function (
|
|
1462
|
+
CaseSharingStateService.prototype.requestUnshare = function (user, caseId) {
|
|
1446
1463
|
var e_2, _a;
|
|
1447
1464
|
var newSharedCases = [];
|
|
1448
1465
|
try {
|
|
1449
1466
|
for (var _b = __values(this.caseState), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
1450
1467
|
var sharedCase = _c.value;
|
|
1451
|
-
|
|
1468
|
+
// If no caseId, then request unshare from all shared cases
|
|
1469
|
+
if (caseId === undefined || sharedCase.caseId === caseId) {
|
|
1452
1470
|
if (!sharedCase.pendingUnshares) {
|
|
1453
1471
|
sharedCase.pendingUnshares = [];
|
|
1454
1472
|
}
|
|
1455
1473
|
var newPendingUnshares = sharedCase.pendingUnshares.slice();
|
|
1456
|
-
|
|
1474
|
+
// If the user is pending shared access, just remove them from pendingShares
|
|
1475
|
+
var newPendingShares = void 0;
|
|
1476
|
+
var indexOfPreviouslyAddedUser = -1;
|
|
1477
|
+
if (sharedCase.pendingShares) {
|
|
1478
|
+
indexOfPreviouslyAddedUser = sharedCase.pendingShares.findIndex(function (u) { return u.idamId === user.idamId; });
|
|
1479
|
+
if (indexOfPreviouslyAddedUser > -1) {
|
|
1480
|
+
newPendingShares = sharedCase.pendingShares.slice();
|
|
1481
|
+
newPendingShares.splice(indexOfPreviouslyAddedUser, 1);
|
|
1482
|
+
}
|
|
1483
|
+
}
|
|
1484
|
+
// If the user does not exist in pendingShares, and already has shared access (i.e. exists in sharedWith),
|
|
1485
|
+
// request removal of shared access
|
|
1486
|
+
if (indexOfPreviouslyAddedUser === -1 && sharedCase.sharedWith && sharedCase.sharedWith.findIndex(function (u) { return u.idamId === user.idamId; }) > -1) {
|
|
1457
1487
|
if (!newPendingUnshares.some(function (u) { return u.email === user.email; })) {
|
|
1458
1488
|
newPendingUnshares.push(user);
|
|
1459
1489
|
}
|
|
1460
1490
|
}
|
|
1461
|
-
|
|
1462
|
-
|
|
1463
|
-
}
|
|
1464
|
-
var newSharedCase = Object.assign(Object.assign({}, sharedCase), { pendingUnshares: newPendingUnshares });
|
|
1491
|
+
var newSharedCase = Object.assign(Object.assign(Object.assign({}, sharedCase), { pendingUnshares: newPendingUnshares }), (newPendingShares && {
|
|
1492
|
+
pendingShares: newPendingShares
|
|
1493
|
+
}));
|
|
1465
1494
|
newSharedCases.push(newSharedCase);
|
|
1466
1495
|
}
|
|
1467
1496
|
else {
|
|
@@ -1477,7 +1506,7 @@
|
|
|
1477
1506
|
finally { if (e_2) throw e_2.error; }
|
|
1478
1507
|
}
|
|
1479
1508
|
this.subject.next(newSharedCases);
|
|
1480
|
-
return;
|
|
1509
|
+
return newSharedCases;
|
|
1481
1510
|
};
|
|
1482
1511
|
CaseSharingStateService.prototype.requestCancel = function (caseId, user) {
|
|
1483
1512
|
var e_3, _a;
|
|
@@ -1525,11 +1554,13 @@
|
|
|
1525
1554
|
return;
|
|
1526
1555
|
};
|
|
1527
1556
|
CaseSharingStateService.prototype.removeCase = function (caseId) {
|
|
1528
|
-
|
|
1529
|
-
|
|
1530
|
-
this.caseState.
|
|
1531
|
-
|
|
1532
|
-
|
|
1557
|
+
if (this.caseState.length > 1) {
|
|
1558
|
+
for (var i = 0, l = this.caseState.length; i < l; i++) {
|
|
1559
|
+
if (this.caseState[i].caseId === caseId) {
|
|
1560
|
+
this.caseState.splice(i, 1);
|
|
1561
|
+
this.subject.next(this.caseState);
|
|
1562
|
+
return;
|
|
1563
|
+
}
|
|
1533
1564
|
}
|
|
1534
1565
|
}
|
|
1535
1566
|
};
|
|
@@ -1578,7 +1609,7 @@
|
|
|
1578
1609
|
SelectedCaseConfirmComponent.decorators = [
|
|
1579
1610
|
{ type: i0.Component, args: [{
|
|
1580
1611
|
selector: 'xuilib-selected-case-confirm',
|
|
1581
|
-
template: "<div id=\"user-access-block-{{ sharedCase.caseId }}\" *ngIf=\"showUserAccessBlock()\">\n <h2 class=\"govuk-heading-m case-share-confirm__title\">{{ sharedCase.caseTitle }}</h2>\n <div class=\"case-share-confirm__caption-area\">\n <div class=\"govuk-caption-m case-share-confirm__caption\">\n {{ sharedCase.caseId }}\n </div>\n <a [routerLink]=\"changeLink\" class=\"case-share-confirm__change-link govuk-link govuk-!-font-size-19\">Change</a>\n </div>\n <table class=\"govuk-table\">\n <thead class=\"govuk-table__head\">\n <tr class=\"govuk-table__row\">\n <th class=\"govuk-table__header govuk-table-column-header\" scope=\"col\">Name</th>\n <th class=\"govuk-table__header govuk-table-column-header\" scope=\"col\">Email address</th>\n <th class=\"govuk-table__header govuk-table-column-actions\" scope=\"col\">Actions</th>\n </tr>\n </thead>\n <tbody class=\"govuk-table__body\">\n <tr class=\"govuk-table__row\" *ngFor=\"let user of sharedCase.pendingShares; trackBy: trackByUserId\">\n <td class=\"govuk-table__cell\">{{ user.firstName + ' ' + user.lastName }}</td>\n <td class=\"govuk-table__cell\">{{ user.email }}</td>\n <td class=\"govuk-table__cell\">\n <span class=\"hmcts-badge\">To be added</span>\n </td>\n </tr>\n <tr class=\"govuk-table__row\" *ngFor=\"let user of sharedCase.pendingUnshares; trackBy: trackByUserId\">\n <td class=\"govuk-table__cell\">{{ user.firstName + ' ' + user.lastName }}</td>\n <td class=\"govuk-table__cell\">{{ user.email }}</td>\n <td class=\"govuk-table__cell\">\n <span class=\"hmcts-badge hmcts-badge--red\">
|
|
1612
|
+
template: "<div id=\"user-access-block-{{ sharedCase.caseId }}\" *ngIf=\"showUserAccessBlock()\">\n <h2 class=\"govuk-heading-m case-share-confirm__title\">{{ sharedCase.caseTitle }}</h2>\n <div class=\"case-share-confirm__caption-area\">\n <div class=\"govuk-caption-m case-share-confirm__caption\">\n {{ sharedCase.caseId }}\n </div>\n <a [routerLink]=\"changeLink\" class=\"case-share-confirm__change-link govuk-link govuk-!-font-size-19\">Change</a>\n </div>\n <table class=\"govuk-table\">\n <thead class=\"govuk-table__head\">\n <tr class=\"govuk-table__row\">\n <th class=\"govuk-table__header govuk-table-column-header\" scope=\"col\">Name</th>\n <th class=\"govuk-table__header govuk-table-column-header\" scope=\"col\">Email address</th>\n <th class=\"govuk-table__header govuk-table-column-actions\" scope=\"col\">Actions</th>\n </tr>\n </thead>\n <tbody class=\"govuk-table__body\">\n <tr class=\"govuk-table__row\" *ngFor=\"let user of sharedCase.pendingShares; trackBy: trackByUserId\">\n <td class=\"govuk-table__cell\">{{ user.firstName + ' ' + user.lastName }}</td>\n <td class=\"govuk-table__cell\">{{ user.email }}</td>\n <td class=\"govuk-table__cell\">\n <span class=\"hmcts-badge\">To be added</span>\n </td>\n </tr>\n <tr class=\"govuk-table__row\" *ngFor=\"let user of sharedCase.pendingUnshares; trackBy: trackByUserId\">\n <td class=\"govuk-table__cell\">{{ user.firstName + ' ' + user.lastName }}</td>\n <td class=\"govuk-table__cell\">{{ user.email }}</td>\n <td class=\"govuk-table__cell\">\n <span class=\"hmcts-badge hmcts-badge--red\">To be removed</span>\n </td>\n </tr>\n </tbody>\n </table>\n</div>\n",
|
|
1582
1613
|
styles: [".case-share-confirm__title{margin-bottom:0}.case-share-confirm__caption-area{border-bottom:1px solid #b1b4b6;padding-bottom:10px;display:inline-block;width:100%;clear:both}.case-share-confirm__caption{float:left}.case-share-confirm__change-link{float:right}.govuk-table-column-header{width:45%}.govuk-table-column-actions{width:10%}"]
|
|
1583
1614
|
},] }
|
|
1584
1615
|
];
|
|
@@ -1602,10 +1633,14 @@
|
|
|
1602
1633
|
SelectedCaseListComponent.prototype.ngOnInit = function () {
|
|
1603
1634
|
var _this = this;
|
|
1604
1635
|
this.shareCases$ = this.stateService.state;
|
|
1605
|
-
this.shareCases$.subscribe(function (shareCases) {
|
|
1636
|
+
this.shareCases$.subscribe(function (shareCases) {
|
|
1637
|
+
_this.shareCases = shareCases;
|
|
1638
|
+
_this.caseCount = _this.shareCases.length;
|
|
1639
|
+
});
|
|
1606
1640
|
};
|
|
1607
1641
|
SelectedCaseListComponent.prototype.onUnselect = function (sharedCase) {
|
|
1608
1642
|
this.unselect.emit(sharedCase);
|
|
1643
|
+
this.caseCount = this.shareCases.length;
|
|
1609
1644
|
};
|
|
1610
1645
|
SelectedCaseListComponent.prototype.onSynchronizeStore = function (event) {
|
|
1611
1646
|
this.synchronizeStore.emit(event);
|
|
@@ -1618,7 +1653,7 @@
|
|
|
1618
1653
|
SelectedCaseListComponent.decorators = [
|
|
1619
1654
|
{ type: i0.Component, args: [{
|
|
1620
1655
|
selector: 'xuilib-selected-case-list',
|
|
1621
|
-
template: "<ng-container *ngIf=\"!toConfirm\">\n <xuilib-selected-case\n *ngFor=\"let sharedCase of (shareCases$ | async); trackBy: trackByCaseId\"\n [sharedCase]=\"sharedCase\"\n [removeUserFromCaseToggleOn]=\"removeUserFromCaseToggleOn\"\n (unselect)=\"onUnselect($event)\"\n (synchronizeStore)=\"onSynchronizeStore($event)\"\n >\n </xuilib-selected-case>\n</ng-container>\n\n<ng-container *ngIf=\"toConfirm\">\n <xuilib-selected-case-confirm\n *ngFor=\"let sharedCase of (shareCases$ | async); trackBy: trackByCaseId\"\n [sharedCase]=\"sharedCase\"\n [changeLink]=\"changeLink\">\n </xuilib-selected-case-confirm>\n</ng-container>\n",
|
|
1656
|
+
template: "<ng-container *ngIf=\"!toConfirm\">\n <xuilib-selected-case\n *ngFor=\"let sharedCase of (shareCases$ | async); trackBy: trackByCaseId\"\n [sharedCase]=\"sharedCase\"\n [caseCount]=\"caseCount\"\n [removeUserFromCaseToggleOn]=\"removeUserFromCaseToggleOn\"\n (unselect)=\"onUnselect($event)\"\n (synchronizeStore)=\"onSynchronizeStore($event)\"\n >\n </xuilib-selected-case>\n</ng-container>\n\n<ng-container *ngIf=\"toConfirm\">\n <xuilib-selected-case-confirm\n *ngFor=\"let sharedCase of (shareCases$ | async); trackBy: trackByCaseId\"\n [sharedCase]=\"sharedCase\"\n [changeLink]=\"changeLink\">\n </xuilib-selected-case-confirm>\n</ng-container>\n",
|
|
1622
1657
|
styles: [""]
|
|
1623
1658
|
},] }
|
|
1624
1659
|
];
|
|
@@ -1653,9 +1688,6 @@
|
|
|
1653
1688
|
this.combinedSortedShares = this.combineAndSortShares(sharedWith, pendingShares);
|
|
1654
1689
|
}
|
|
1655
1690
|
};
|
|
1656
|
-
SelectedCaseComponent.prototype.onUnselect = function () {
|
|
1657
|
-
this.unselect.emit(this.sharedCase);
|
|
1658
|
-
};
|
|
1659
1691
|
SelectedCaseComponent.prototype.onDeselect = function (c) {
|
|
1660
1692
|
this.unselect.emit(c);
|
|
1661
1693
|
};
|
|
@@ -1758,7 +1790,7 @@
|
|
|
1758
1790
|
}));
|
|
1759
1791
|
};
|
|
1760
1792
|
SelectedCaseComponent.prototype.onRemove = function (user, sharedCase) {
|
|
1761
|
-
this.stateService.requestUnshare(sharedCase.caseId
|
|
1793
|
+
this.stateService.requestUnshare(user, sharedCase.caseId);
|
|
1762
1794
|
this.synchronizeStore.emit(this.shareCases);
|
|
1763
1795
|
};
|
|
1764
1796
|
SelectedCaseComponent.prototype.onCancel = function (user, sharedCase) {
|
|
@@ -1819,8 +1851,8 @@
|
|
|
1819
1851
|
SelectedCaseComponent.decorators = [
|
|
1820
1852
|
{ type: i0.Component, args: [{
|
|
1821
1853
|
selector: 'xuilib-selected-case',
|
|
1822
|
-
template: "<div id=\"{{buildElementId('govuk-accordion__section')}}\" class=\"govuk-accordion__section\">\n <div class=\"govuk-grid-row govuk-case-header\">\n <div class=\"govuk-grid-column-three-quarters\">\n <h3 id=\"{{buildElementId('case-title')}}\" class=\"govuk-case-title\">{{ sharedCase.caseTitle }}</h3>\n <h1 id=\"{{buildElementId('case-id')}}\" class=\"govuk-case-sub-title\">{{ sharedCase.caseId }}</h1>\n </div>\n <div class=\"govuk-grid-column-twenty-percent\">\n <button id=\"{{buildElementId('btn-deselect-case')}}\" class=\"govuk-button hmcts-button--secondary\" (click)=\"onDeselect(sharedCase)\" title=\"Deselect case\">Deselect case</button>\n </div>\n <div class=\"govuk-accordion__section-header govuk-grid-column-five-percent\">\n <div class=\"govuk-accordion__section-heading\">\n <button type=\"button\" id=\"{{buildElementId('accordion-with-summary-sections-heading')}}\"\n aria-controls=\"accordion-with-summary-sections-content-1\" class=\"govuk-accordion__section-button\"\n aria-describedby=\"accordion-with-summary-sections-summary-1\" aria-expanded=\"false\" title=\"Expand or Collapse\">\n <span class=\"govuk-accordion__icon\" aria-hidden=\"true\"></span></button>\n </div>\n </div>\n </div>\n <div id=\"{{buildElementId('accordion-with-summary-sections-content')}}\" class=\"govuk-accordion__section-content\"\n aria-labelledby=\"buildElementId('accordion-with-summary-sections-heading')\" >\n <div class=\"govuk-grid-row\" *ngIf=\"showNoUsersAccessInfo()\">\n <span id=\"{{buildElementId('access-info-no-user')}}\" class=\"govuk-div-align-left\">No users from your organisation currently have access to this case.</span>\n </div>\n <div class=\"govuk-grid-row\" *ngIf=\"showUserHasAccessInfo()\">\n <span id=\"{{buildElementId('access-info-has-users')}}\" class=\"govuk-div-align-left\">Users from your organisation with access to this case.</span>\n </div>\n <table class=\"govuk-table\" *ngIf=\"showUserAccessTable()\">\n <thead class=\"govuk-table__head\">\n <tr class=\"govuk-table__row\">\n <th id=\"{{buildElementId('name-heading')}}\" class=\"govuk-table__header govuk-table-column-header\" scope=\"col\">Name</th>\n <th id=\"{{buildElementId('email-heading')}}\" class=\"govuk-table__header govuk-table-column-header\" scope=\"col\">Email address</th>\n <th id=\"{{buildElementId('action-heading')}}\" class=\"govuk-table__header govuk-table-column-actions\" scope=\"col\">Actions</th>\n <th id=\"{{buildElementId('label-heading')}}\" class=\"govuk-table__header govuk-table-column-label\" scope=\"col\"
|
|
1823
|
-
styles: [".govuk-case-header{border-top:1px solid #bfc1c3}.govuk-case-title{font-size:24px;color:#005ea5;font-weight:700}.govuk-case-sub-title,.govuk-case-title{font-family:nta,Arial,sans-serif;padding-left:0}.govuk-case-sub-title{font-size:1rem!important;color:#6f777b;font-weight:400}.govuk-grid-row{margin-left:0;margin-right:0}.govuk-grid-column-three-quarters{padding-top:5px;padding-left:0}.govuk-grid-column-twenty-percent{box-sizing:border-box;padding-top:10px;width:20%;float:left}.govuk-grid-column-five-percent{box-sizing:border-box;padding-top:15px;width:5%;float:left}.govuk-table-column-header{width:
|
|
1854
|
+
template: "<div id=\"{{buildElementId('govuk-accordion__section')}}\" class=\"govuk-accordion__section\">\n <div class=\"govuk-grid-row govuk-case-header\">\n <div class=\"govuk-grid-column-three-quarters\">\n <h3 id=\"{{buildElementId('case-title')}}\" class=\"govuk-case-title\">{{ sharedCase.caseTitle }}</h3>\n <h1 id=\"{{buildElementId('case-id')}}\" class=\"govuk-case-sub-title\">{{ sharedCase.caseId }}</h1>\n </div>\n <div class=\"govuk-grid-column-twenty-percent\">\n <button *ngIf=\"caseCount > 1\"\n id=\"{{buildElementId('btn-deselect-case')}}\" \n class=\"govuk-button hmcts-button--secondary\" \n (click)=\"onDeselect(sharedCase)\" \n title=\"Deselect case\">Deselect case\n </button>\n </div>\n <div class=\"govuk-accordion__section-header govuk-grid-column-five-percent\">\n <div class=\"govuk-accordion__section-heading\">\n <button type=\"button\" id=\"{{buildElementId('accordion-with-summary-sections-heading')}}\"\n aria-controls=\"accordion-with-summary-sections-content-1\" class=\"govuk-accordion__section-button\"\n aria-describedby=\"accordion-with-summary-sections-summary-1\" aria-expanded=\"false\" title=\"Expand or Collapse\">\n <span class=\"govuk-accordion__icon\" aria-hidden=\"true\"></span></button>\n </div>\n </div>\n </div>\n <div id=\"{{buildElementId('accordion-with-summary-sections-content')}}\" class=\"govuk-accordion__section-content\"\n aria-labelledby=\"buildElementId('accordion-with-summary-sections-heading')\" >\n <div class=\"govuk-grid-row\" *ngIf=\"showNoUsersAccessInfo()\">\n <span id=\"{{buildElementId('access-info-no-user')}}\" class=\"govuk-div-align-left\">No users from your organisation currently have access to this case.</span>\n </div>\n <div class=\"govuk-grid-row\" *ngIf=\"showUserHasAccessInfo()\">\n <span id=\"{{buildElementId('access-info-has-users')}}\" class=\"govuk-div-align-left\">Users from your organisation with access to this case.</span>\n </div>\n <table class=\"govuk-table\" *ngIf=\"showUserAccessTable()\">\n <thead class=\"govuk-table__head\">\n <tr class=\"govuk-table__row\">\n <th id=\"{{buildElementId('name-heading')}}\" class=\"govuk-table__header govuk-table-column-header\" scope=\"col\">Name</th>\n <th id=\"{{buildElementId('email-heading')}}\" class=\"govuk-table__header govuk-table-column-header\" scope=\"col\">Email address</th>\n <th id=\"{{buildElementId('action-heading')}}\" class=\"govuk-table__header govuk-table-column-actions\" scope=\"col\">Actions</th>\n <th id=\"{{buildElementId('label-heading')}}\" class=\"govuk-table__header govuk-table-column-label\" scope=\"col\">Status</th>\n </tr>\n </thead>\n <tbody class=\"govuk-table__body\">\n <tr class=\"govuk-table__row\" *ngFor=\"let user of combinedSortedShares; index as idx; trackBy: trackByUserId\">\n <td id=\"user-full-name-{{ userIdSetter(canCancel(sharedCase.caseId, user) | async, idx) }}\" class=\"govuk-table__cell\">{{ user.firstName + ' ' + user.lastName }}</td>\n <td id=\"user-email-{{ userIdSetter(canCancel(sharedCase.caseId, user) | async, idx) }}\" class=\"govuk-table__cell\">{{ user.email }}</td>\n <td class=\"govuk-table__cell\">\n <a *ngIf=\"canRemove(sharedCase.caseId, user) | async\" (click)=\"onRemove(user, sharedCase)\" href=\"javascript:void(0);\">Remove <span class=\"govuk-visually-hidden\">{{ user.firstName + ' ' + user.lastName }} from case</span></a>\n <a *ngIf=\"canCancel(sharedCase.caseId, user) | async\" (click)=\"onCancel(user, sharedCase)\" href=\"javascript:void(0);\">Cancel <span class=\"govuk-visually-hidden\">adding {{ user.firstName + ' ' + user.lastName }} to case</span></a>\n </td>\n <td class=\"govuk-table__cell\">\n <span *ngIf=\"isToBeRemoved(sharedCase.caseId, user) | async\" class=\"hmcts-badge hmcts-badge--red\">To be removed</span>\n <span *ngIf=\"isToBeAdded(sharedCase.caseId, user) | async\" class=\"hmcts-badge\">To be added</span>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n</div>\n",
|
|
1855
|
+
styles: [".govuk-case-header{border-top:1px solid #bfc1c3}.govuk-case-title{font-size:24px;color:#005ea5;font-weight:700}.govuk-case-sub-title,.govuk-case-title{font-family:nta,Arial,sans-serif;padding-left:0}.govuk-case-sub-title{font-size:1rem!important;color:#6f777b;font-weight:400}.govuk-grid-row{margin-left:0;margin-right:0}.govuk-grid-column-three-quarters{padding-top:5px;padding-left:0}.govuk-grid-column-twenty-percent{box-sizing:border-box;padding-top:10px;width:20%;float:left}.govuk-grid-column-five-percent{box-sizing:border-box;padding-top:15px;width:5%;float:left}.govuk-table-column-header{width:38%}.govuk-table-column-actions,.govuk-table-column-label{width:12%}.govuk-div-align-left{font-family:nta,Arial,sans-serif;font-size:1.1875rem!important;line-height:1.31579!important;text-align:left;margin-bottom:20px;padding-left:0;color:#0b0c0c}.govuk-accordion__section-header{border-top:0}.govuk-accordion__section-content{padding-top:0}"]
|
|
1824
1856
|
},] }
|
|
1825
1857
|
];
|
|
1826
1858
|
SelectedCaseComponent.ctorParameters = function () { return [
|
|
@@ -1831,6 +1863,7 @@
|
|
|
1831
1863
|
selectedUser: [{ type: i0.Input }],
|
|
1832
1864
|
opened: [{ type: i0.Input }],
|
|
1833
1865
|
removeUserFromCaseToggleOn: [{ type: i0.Input }],
|
|
1866
|
+
caseCount: [{ type: i0.Input }],
|
|
1834
1867
|
unselect: [{ type: i0.Output }],
|
|
1835
1868
|
synchronizeStore: [{ type: i0.Output }]
|
|
1836
1869
|
};
|
|
@@ -1967,6 +2000,13 @@
|
|
|
1967
2000
|
completeLink: [{ type: i0.Input }]
|
|
1968
2001
|
};
|
|
1969
2002
|
|
|
2003
|
+
exports.SharedCaseErrorMessages = void 0;
|
|
2004
|
+
(function (SharedCaseErrorMessages) {
|
|
2005
|
+
SharedCaseErrorMessages["OneCaseMustBeSelected"] = "At least one case must be selected";
|
|
2006
|
+
SharedCaseErrorMessages["NoChangesRequested"] = "You have not requested any changes to case sharing";
|
|
2007
|
+
SharedCaseErrorMessages["OnePersonMustBeAssigned"] = "At least one person must be assigned to each case";
|
|
2008
|
+
})(exports.SharedCaseErrorMessages || (exports.SharedCaseErrorMessages = {}));
|
|
2009
|
+
|
|
1970
2010
|
var UserSelectComponent = /** @class */ (function () {
|
|
1971
2011
|
function UserSelectComponent() {
|
|
1972
2012
|
this.selected = new i0.EventEmitter();
|
|
@@ -2025,26 +2065,55 @@
|
|
|
2025
2065
|
};
|
|
2026
2066
|
|
|
2027
2067
|
var ShareCaseComponent = /** @class */ (function () {
|
|
2028
|
-
function ShareCaseComponent(stateService) {
|
|
2068
|
+
function ShareCaseComponent(stateService, router) {
|
|
2029
2069
|
this.stateService = stateService;
|
|
2070
|
+
this.router = router;
|
|
2030
2071
|
this.shareCases = []; // cases selected for sharing
|
|
2072
|
+
this.continueAllowed = false;
|
|
2073
|
+
this.selectedUserToRemove = null;
|
|
2031
2074
|
this.removeUserFromCaseToggleOn = false;
|
|
2032
2075
|
this.users = []; // users of this organisation the cases can be shared with
|
|
2033
2076
|
this.confirmLink = '';
|
|
2077
|
+
this.cancelLink = '';
|
|
2078
|
+
this.showRemoveUsers = false;
|
|
2079
|
+
this.fnTitle = '';
|
|
2080
|
+
this.title = '';
|
|
2034
2081
|
this.unselect = new i0.EventEmitter();
|
|
2035
2082
|
this.synchronizeStore = new i0.EventEmitter();
|
|
2083
|
+
this.validationErrors = [];
|
|
2036
2084
|
}
|
|
2037
2085
|
ShareCaseComponent.prototype.ngOnInit = function () {
|
|
2038
2086
|
var _this = this;
|
|
2039
|
-
this.shareCases
|
|
2087
|
+
this.shareCases$
|
|
2088
|
+
.pipe(operators.tap(function (sharedCases) {
|
|
2089
|
+
// Update the list of users assigned to at least one case
|
|
2090
|
+
_this.getAssignedUsers(sharedCases.filter(function (sharedCase) { return sharedCase.sharedWith && sharedCase.sharedWith.length > 0; }));
|
|
2091
|
+
}))
|
|
2092
|
+
.subscribe(function (shareCases) {
|
|
2040
2093
|
_this.shareCases = shareCases;
|
|
2041
2094
|
_this.stateService.setCases(shareCases);
|
|
2095
|
+
// Set the config to be used by the xuilib-gov-uk-error-message component, in particular the element ID to
|
|
2096
|
+
// which the error message is associated
|
|
2097
|
+
if (shareCases) {
|
|
2098
|
+
_this.selectedCasesErrorMessageConfig = {
|
|
2099
|
+
id: shareCases.length > 0 ? 'cases' : 'noCaseDisplay'
|
|
2100
|
+
};
|
|
2101
|
+
}
|
|
2042
2102
|
});
|
|
2043
2103
|
this.shareCases$ = this.stateService.state;
|
|
2104
|
+
this.shareCaseErrorMessage = { isInvalid: false, messages: [] };
|
|
2044
2105
|
};
|
|
2045
2106
|
ShareCaseComponent.prototype.onUnselect = function (c) {
|
|
2046
|
-
this.
|
|
2047
|
-
this.stateService.
|
|
2107
|
+
this.validationErrors = [];
|
|
2108
|
+
if (this.stateService.getCases().length === 1) {
|
|
2109
|
+
this.validationErrors.push({ id: 'cases', message: exports.SharedCaseErrorMessages.OneCaseMustBeSelected });
|
|
2110
|
+
this.shareCaseErrorMessage = { isInvalid: true, messages: [exports.SharedCaseErrorMessages.OneCaseMustBeSelected] };
|
|
2111
|
+
window.scrollTo({ top: 0, left: 0, behavior: 'smooth' });
|
|
2112
|
+
}
|
|
2113
|
+
else {
|
|
2114
|
+
this.unselect.emit(c);
|
|
2115
|
+
this.stateService.removeCase(c.caseId);
|
|
2116
|
+
}
|
|
2048
2117
|
};
|
|
2049
2118
|
ShareCaseComponent.prototype.onSynchronizeStore = function (event) {
|
|
2050
2119
|
this.synchronizeStore.emit(event);
|
|
@@ -2059,23 +2128,39 @@
|
|
|
2059
2128
|
this.userSelect.clear();
|
|
2060
2129
|
}
|
|
2061
2130
|
this.synchronizeStore.emit(newSharedCases);
|
|
2131
|
+
// Update the list of assigned users (which includes pending users)
|
|
2132
|
+
this.getAssignedUsers(newSharedCases);
|
|
2133
|
+
};
|
|
2134
|
+
ShareCaseComponent.prototype.removeUser = function () {
|
|
2135
|
+
if (this.selectedUserToRemove) {
|
|
2136
|
+
var newSharedCases = this.stateService.requestUnshare(this.selectedUserToRemove);
|
|
2137
|
+
this.synchronizeStore.emit(newSharedCases);
|
|
2138
|
+
}
|
|
2062
2139
|
};
|
|
2063
2140
|
ShareCaseComponent.prototype.isDisabledAdd = function () {
|
|
2064
2141
|
return this.selectedUser === null || this.shareCases.length === 0;
|
|
2065
2142
|
};
|
|
2066
|
-
|
|
2067
|
-
|
|
2143
|
+
/**
|
|
2144
|
+
* Function originally used to set disabled state of "Continue" button, now called by the button click handler to
|
|
2145
|
+
* control whether navigation to the confirmation page is allowed. It is prevented if no changes have been made
|
|
2146
|
+
*/
|
|
2147
|
+
ShareCaseComponent.prototype.setContinueAllowed = function () {
|
|
2148
|
+
var _this = this;
|
|
2149
|
+
// Always start with continueAllowed = false. This covers the scenario where a user might add someone for sharing
|
|
2150
|
+
// a case (so, continueAllowed = true), then removes the same user before trying to continue. This would
|
|
2151
|
+
// erroneously leave continueAllowed as true
|
|
2152
|
+
this.continueAllowed = false;
|
|
2068
2153
|
this.shareCases$.subscribe(function (shareCases) {
|
|
2069
2154
|
var e_1, _a;
|
|
2070
2155
|
try {
|
|
2071
2156
|
for (var shareCases_1 = __values(shareCases), shareCases_1_1 = shareCases_1.next(); !shareCases_1_1.done; shareCases_1_1 = shareCases_1.next()) {
|
|
2072
2157
|
var caseState = shareCases_1_1.value;
|
|
2073
2158
|
if (caseState.pendingShares && caseState.pendingShares.length > 0) {
|
|
2074
|
-
|
|
2159
|
+
_this.continueAllowed = true;
|
|
2075
2160
|
break;
|
|
2076
2161
|
}
|
|
2077
2162
|
if (caseState.pendingUnshares && caseState.pendingUnshares.length > 0) {
|
|
2078
|
-
|
|
2163
|
+
_this.continueAllowed = true;
|
|
2079
2164
|
break;
|
|
2080
2165
|
}
|
|
2081
2166
|
}
|
|
@@ -2088,7 +2173,6 @@
|
|
|
2088
2173
|
finally { if (e_1) throw e_1.error; }
|
|
2089
2174
|
}
|
|
2090
2175
|
});
|
|
2091
|
-
return isDisabled;
|
|
2092
2176
|
};
|
|
2093
2177
|
ShareCaseComponent.prototype.onDeselect = function (sharedCase) {
|
|
2094
2178
|
var e_2, _a;
|
|
@@ -2113,23 +2197,91 @@
|
|
|
2113
2197
|
}
|
|
2114
2198
|
this.stateService.setCases(this.shareCases);
|
|
2115
2199
|
};
|
|
2200
|
+
ShareCaseComponent.prototype.onContinue = function () {
|
|
2201
|
+
this.setContinueAllowed();
|
|
2202
|
+
// If continuation is not allowed, set an error message
|
|
2203
|
+
if (!this.continueAllowed) {
|
|
2204
|
+
this.validationErrors = [];
|
|
2205
|
+
this.validationErrors.push({ id: 'cases', message: exports.SharedCaseErrorMessages.NoChangesRequested });
|
|
2206
|
+
this.shareCaseErrorMessage = { isInvalid: true, messages: [exports.SharedCaseErrorMessages.NoChangesRequested] };
|
|
2207
|
+
window.scrollTo({ top: 0, left: 0, behavior: 'smooth' });
|
|
2208
|
+
}
|
|
2209
|
+
// Navigate to confirmation page only if allowed to continue
|
|
2210
|
+
if (this.continueAllowed) {
|
|
2211
|
+
// Check that no case is left unassigned; a user can be removed only if there is another current user, or if at
|
|
2212
|
+
// least one user is to be added. Prevent navigation to confirmation page if there is at least one case left in
|
|
2213
|
+
// an unassigned state
|
|
2214
|
+
if (this.hasCasesLeftUnassigned(this.shareCases)) {
|
|
2215
|
+
this.validationErrors = [];
|
|
2216
|
+
this.validationErrors.push({ id: 'cases', message: exports.SharedCaseErrorMessages.OnePersonMustBeAssigned });
|
|
2217
|
+
this.shareCaseErrorMessage = { isInvalid: true, messages: [exports.SharedCaseErrorMessages.OnePersonMustBeAssigned] };
|
|
2218
|
+
window.scrollTo({ top: 0, left: 0, behavior: 'smooth' });
|
|
2219
|
+
}
|
|
2220
|
+
else {
|
|
2221
|
+
this.router.navigate([this.confirmLink]);
|
|
2222
|
+
}
|
|
2223
|
+
}
|
|
2224
|
+
};
|
|
2225
|
+
/**
|
|
2226
|
+
* Gets a unique list of all users that have been assigned, or are pending assigment to, at least one case
|
|
2227
|
+
* @param sharedCases The list of shared cases from which to get users these are shared with, or are to be shared with
|
|
2228
|
+
*/
|
|
2229
|
+
ShareCaseComponent.prototype.getAssignedUsers = function (sharedCases) {
|
|
2230
|
+
var users = [];
|
|
2231
|
+
sharedCases.forEach(function (sharedCase) {
|
|
2232
|
+
if (sharedCase.sharedWith) {
|
|
2233
|
+
sharedCase.sharedWith.forEach(function (user) {
|
|
2234
|
+
if (!users.some(function (existingUser) { return user.idamId === existingUser.idamId; })) {
|
|
2235
|
+
users.push(user);
|
|
2236
|
+
}
|
|
2237
|
+
});
|
|
2238
|
+
}
|
|
2239
|
+
if (sharedCase.pendingShares) {
|
|
2240
|
+
sharedCase.pendingShares.forEach(function (user) {
|
|
2241
|
+
if (!users.some(function (existingUser) { return user.idamId === existingUser.idamId; })) {
|
|
2242
|
+
users.push(user);
|
|
2243
|
+
}
|
|
2244
|
+
});
|
|
2245
|
+
}
|
|
2246
|
+
});
|
|
2247
|
+
this.assignedUsers = users;
|
|
2248
|
+
};
|
|
2249
|
+
/**
|
|
2250
|
+
* Checks if any shared cases have been left unassigned. This occurs if a shared case has a number of pending
|
|
2251
|
+
* unshares equal to the number of current shares, and there are no pending shares.
|
|
2252
|
+
* @param sharedCases The array of shared cases to check
|
|
2253
|
+
* @returns `true` if at least one case has the condition described above; `false` otherwise
|
|
2254
|
+
*/
|
|
2255
|
+
ShareCaseComponent.prototype.hasCasesLeftUnassigned = function (sharedCases) {
|
|
2256
|
+
return sharedCases.some(function (sharedCase) {
|
|
2257
|
+
return sharedCase.pendingUnshares && sharedCase.sharedWith &&
|
|
2258
|
+
sharedCase.pendingUnshares.length === sharedCase.sharedWith.length &&
|
|
2259
|
+
(!sharedCase.pendingShares || sharedCase.pendingShares.length === 0);
|
|
2260
|
+
});
|
|
2261
|
+
};
|
|
2116
2262
|
return ShareCaseComponent;
|
|
2117
2263
|
}());
|
|
2118
2264
|
ShareCaseComponent.decorators = [
|
|
2119
2265
|
{ type: i0.Component, args: [{
|
|
2120
2266
|
selector: 'xuilib-share-case',
|
|
2121
|
-
template: "<div id=\"add-user\">\n <label class=\"govuk-label govuk-!-font-weight-bold\" for=\"add-user-input\">
|
|
2122
|
-
styles: [""]
|
|
2267
|
+
template: "<xuilib-hmcts-error-summary\n [errorMessages]=\"validationErrors\"\n [header]=\"'There is a problem'\"\n></xuilib-hmcts-error-summary>\n<h1 *ngIf=\"title\" class=\"govuk-heading-xl govuk-!-margin-top-2\">\n <span *ngIf=\"fnTitle\" class=\"govuk-caption-xl\">{{fnTitle}}</span>\n {{title}}\n</h1>\n<div id=\"add-user\">\n <div class=\"govuk-form-group\">\n <label class=\"govuk-label govuk-!-font-weight-bold\" for=\"add-user-input\">{{addUserLabel}}</label>\n <span id=\"add-user-hint\" class=\"govuk-hint\">\n Search by name or email address. You can share access with as many people as you need.\n </span>\n <div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-two-thirds\">\n <xuilib-user-select\n id=\"add-user-input\"\n aria-describedby=\"add-user-hint\"\n [users]=\"users\"\n (selected)=\"onSelectedUser($event)\">\n </xuilib-user-select>\n </div>\n <div class=\"govuk-grid-column-one-thirds\">\n <button id=\"btn-add-user\" (click)=\"addUser()\" class=\"govuk-button govuk-button--secondary\" [disabled]=\"isDisabledAdd()\" title=\"Add user to selected cases\">Add</button>\n </div>\n </div>\n <details id=\"add-user-help\" class=\"govuk-details\" data-module=\"govuk-details\">\n <summary class=\"govuk-details__summary\">\n <span id=\"content-why-can-not-find-email\" class=\"govuk-details__summary-text\">\n Can't find an email address?\n </span>\n </summary>\n <div id=\"content-reason-can-not-find-email\" class=\"govuk-details__text\">\n If you can't find your colleague's email address, they will need to complete their registration. Contact your\n administrator for help.\n </div>\n </details>\n </div>\n <div class=\"govuk-form-group\" *ngIf=\"showRemoveUsers\">\n <label class=\"govuk-label govuk-!-font-weight-bold\" for=\"remove-user-input\">Remove a person from all cases</label>\n <span id=\"remove-user-hint\" class=\"govuk-hint\">\n Select a person to remove them from all selected cases.\n </span>\n <div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-two-thirds\">\n <select [(ngModel)]=\"selectedUserToRemove\" class=\"govuk-select\" id=\"remove-user-input\" aria-describedby=\"remove-user-hint\">\n <option [ngValue]=\"null\" selected>Select a person</option>\n <option *ngFor=\"let user of assignedUsers\" [ngValue]=\"user\">{{user.firstName}} {{user.lastName}} - {{user.email}}</option>\n </select>\n </div>\n <div class=\"govuk-grid-column-one-thirds\">\n <button id=\"btn-remove-user\" (click)=\"removeUser()\" class=\"govuk-button govuk-button--secondary\" title=\"Remove user from selected cases\">Remove</button>\n </div>\n </div>\n </div>\n</div>\n\n<div id=\"cases\" [ngClass]=\"{'govuk-form-group--error': shareCaseErrorMessage.messages && shareCaseErrorMessage.messages.length > 0}\">\n <h3 id=\"title-selected-cases\" class=\"govuk-heading-m\">Selected cases</h3>\n <xuilib-gov-uk-error-message [config]=\"selectedCasesErrorMessageConfig\" [errorMessage]=\"shareCaseErrorMessage\"></xuilib-gov-uk-error-message>\n <div *ngIf=\"shareCases && shareCases.length > 0\" class=\"govuk-accordion\" data-module=\"govuk-accordion\" id=\"accordion-with-summary-sections\">\n <xuilib-selected-case-list\n [shareCases$]=\"shareCases$\"\n [removeUserFromCaseToggleOn]=\"removeUserFromCaseToggleOn\"\n (unselect)=\"onUnselect($event)\"\n (synchronizeStore)=\"onSynchronizeStore($event)\"\n >\n </xuilib-selected-case-list>\n </div>\n\n <div id=\"noCaseDisplay\" *ngIf=\"shareCases && shareCases.length === 0\" class=\"govuk-hint\"\n [ngClass]=\"{'govuk-form-group--error': shareCaseErrorMessage.messages && shareCaseErrorMessage.messages.length > 0}\">\n No cases to display.\n </div>\n\n</div>\n\n<div id=\"share-case-nav\" class=\"govuk-button-group\">\n <button id=\"btn-continue\" class=\"govuk-button\" data-module=\"govuk-button\" (click)=\"onContinue()\" title=\"Continue\">Continue</button>\n <button id=\"btn-cancel\" class=\"govuk-button govuk-button--secondary\" data-module=\"govuk-button\" title=\"Cancel\" [routerLink]=\"cancelLink\">Cancel</button>\n</div>\n",
|
|
2268
|
+
styles: ["select{width:100%}"]
|
|
2123
2269
|
},] }
|
|
2124
2270
|
];
|
|
2125
2271
|
ShareCaseComponent.ctorParameters = function () { return [
|
|
2126
|
-
{ type: CaseSharingStateService }
|
|
2272
|
+
{ type: CaseSharingStateService },
|
|
2273
|
+
{ type: i1.Router }
|
|
2127
2274
|
]; };
|
|
2128
2275
|
ShareCaseComponent.propDecorators = {
|
|
2129
2276
|
removeUserFromCaseToggleOn: [{ type: i0.Input }],
|
|
2130
2277
|
shareCases$: [{ type: i0.Input }],
|
|
2131
2278
|
users: [{ type: i0.Input }],
|
|
2132
2279
|
confirmLink: [{ type: i0.Input }],
|
|
2280
|
+
cancelLink: [{ type: i0.Input }],
|
|
2281
|
+
addUserLabel: [{ type: i0.Input }],
|
|
2282
|
+
showRemoveUsers: [{ type: i0.Input }],
|
|
2283
|
+
fnTitle: [{ type: i0.Input }],
|
|
2284
|
+
title: [{ type: i0.Input }],
|
|
2133
2285
|
unselect: [{ type: i0.Output }],
|
|
2134
2286
|
synchronizeStore: [{ type: i0.Output }],
|
|
2135
2287
|
userSelect: [{ type: i0.ViewChild, args: [UserSelectComponent, { static: true },] }]
|
|
@@ -2412,6 +2564,56 @@
|
|
|
2412
2564
|
acceptanceNotifier: [{ type: i0.Output }]
|
|
2413
2565
|
};
|
|
2414
2566
|
|
|
2567
|
+
exports.BadgeColour = void 0;
|
|
2568
|
+
(function (BadgeColour) {
|
|
2569
|
+
BadgeColour["BADGE_RED"] = "hmcts-badge--red";
|
|
2570
|
+
BadgeColour["BADGE_BLUE"] = "hmcts-badge--blue";
|
|
2571
|
+
BadgeColour["BADGE_GREEN"] = "hmcts-badge--green";
|
|
2572
|
+
})(exports.BadgeColour || (exports.BadgeColour = {}));
|
|
2573
|
+
|
|
2574
|
+
var AnonymousFeatureUser = /** @class */ (function () {
|
|
2575
|
+
function AnonymousFeatureUser() {
|
|
2576
|
+
}
|
|
2577
|
+
return AnonymousFeatureUser;
|
|
2578
|
+
}());
|
|
2579
|
+
var LoggedInFeatureUser = /** @class */ (function () {
|
|
2580
|
+
function LoggedInFeatureUser() {
|
|
2581
|
+
}
|
|
2582
|
+
return LoggedInFeatureUser;
|
|
2583
|
+
}());
|
|
2584
|
+
|
|
2585
|
+
exports.BookingCheckType = void 0;
|
|
2586
|
+
(function (BookingCheckType) {
|
|
2587
|
+
BookingCheckType["NO_CHECK"] = "NO_CHECK";
|
|
2588
|
+
BookingCheckType["BOOKINGS_AND_BASE"] = "BOOKINGS_AND_BASE";
|
|
2589
|
+
BookingCheckType["POSSIBLE_BOOKINGS"] = "POSSIBLE_BOOKINGS";
|
|
2590
|
+
})(exports.BookingCheckType || (exports.BookingCheckType = {}));
|
|
2591
|
+
|
|
2592
|
+
exports.PersonRole = void 0;
|
|
2593
|
+
(function (PersonRole) {
|
|
2594
|
+
PersonRole["JUDICIAL"] = "Judicial";
|
|
2595
|
+
PersonRole["CASEWORKER"] = "Legal Ops";
|
|
2596
|
+
PersonRole["ADMIN"] = "Admin";
|
|
2597
|
+
PersonRole["CTSC"] = "CTSC User";
|
|
2598
|
+
PersonRole["ALL"] = "All";
|
|
2599
|
+
})(exports.PersonRole || (exports.PersonRole = {}));
|
|
2600
|
+
// Note: RoleCategory could replace PersonRole possibly
|
|
2601
|
+
// However a lot of webapp logic is based on current PersonRole understanding
|
|
2602
|
+
exports.RoleCategory = void 0;
|
|
2603
|
+
(function (RoleCategory) {
|
|
2604
|
+
RoleCategory["JUDICIAL"] = "JUDICIAL";
|
|
2605
|
+
RoleCategory["CASEWORKER"] = "LEGAL_OPERATIONS";
|
|
2606
|
+
RoleCategory["ADMIN"] = "ADMIN";
|
|
2607
|
+
RoleCategory["CTSC"] = "CTSC";
|
|
2608
|
+
RoleCategory["ALL"] = "ALL";
|
|
2609
|
+
})(exports.RoleCategory || (exports.RoleCategory = {}));
|
|
2610
|
+
|
|
2611
|
+
var RadioFilterFieldConfig = /** @class */ (function () {
|
|
2612
|
+
function RadioFilterFieldConfig() {
|
|
2613
|
+
}
|
|
2614
|
+
return RadioFilterFieldConfig;
|
|
2615
|
+
}());
|
|
2616
|
+
|
|
2415
2617
|
var LocationService = /** @class */ (function () {
|
|
2416
2618
|
function LocationService(http) {
|
|
2417
2619
|
this.http = http;
|
|
@@ -2423,8 +2625,8 @@
|
|
|
2423
2625
|
* @param searchTerm: any search term for postcode | site name | venue name |court name | court address etc.
|
|
2424
2626
|
* @return Observable<LocationByEPIMMSModel[]>: Array of locationModel in Observable
|
|
2425
2627
|
*/
|
|
2426
|
-
LocationService.prototype.getAllLocations = function (serviceIds, locationType, searchTerm) {
|
|
2427
|
-
return this.http.
|
|
2628
|
+
LocationService.prototype.getAllLocations = function (serviceIds, locationType, searchTerm, userLocations, bookingLocations) {
|
|
2629
|
+
return this.http.post("api/locations/getLocations", { serviceIds: serviceIds, locationType: locationType, searchTerm: searchTerm, userLocations: userLocations, bookingLocations: bookingLocations });
|
|
2428
2630
|
};
|
|
2429
2631
|
/**
|
|
2430
2632
|
* @description searchLocations from service Ids/location type/search term
|
|
@@ -2445,12 +2647,56 @@
|
|
|
2445
2647
|
},] }
|
|
2446
2648
|
];
|
|
2447
2649
|
LocationService.ctorParameters = function () { return [
|
|
2448
|
-
{ type: i1.HttpClient }
|
|
2650
|
+
{ type: i1$1.HttpClient }
|
|
2449
2651
|
]; };
|
|
2450
2652
|
|
|
2653
|
+
var SessionStorageService = /** @class */ (function () {
|
|
2654
|
+
function SessionStorageService() {
|
|
2655
|
+
}
|
|
2656
|
+
/**
|
|
2657
|
+
* Get an item from the session storage.
|
|
2658
|
+
* If remove is true, the item will be removed once read
|
|
2659
|
+
* @param removeAfterRead removed the key once it has been read
|
|
2660
|
+
*/
|
|
2661
|
+
SessionStorageService.prototype.getItem = function (key, removeAfterRead) {
|
|
2662
|
+
if (removeAfterRead === void 0) { removeAfterRead = false; }
|
|
2663
|
+
var item = sessionStorage.getItem(key);
|
|
2664
|
+
if (removeAfterRead) {
|
|
2665
|
+
this.removeItem(key);
|
|
2666
|
+
}
|
|
2667
|
+
return item;
|
|
2668
|
+
};
|
|
2669
|
+
/**
|
|
2670
|
+
* Set an item in the session storage.
|
|
2671
|
+
*/
|
|
2672
|
+
SessionStorageService.prototype.setItem = function (key, value) {
|
|
2673
|
+
sessionStorage.setItem(key, value);
|
|
2674
|
+
};
|
|
2675
|
+
/**
|
|
2676
|
+
* Remove an item in the session storage.
|
|
2677
|
+
*/
|
|
2678
|
+
SessionStorageService.prototype.removeItem = function (key) {
|
|
2679
|
+
sessionStorage.removeItem(key);
|
|
2680
|
+
};
|
|
2681
|
+
/**
|
|
2682
|
+
* Clear all the items held in session storage.
|
|
2683
|
+
*/
|
|
2684
|
+
SessionStorageService.prototype.clear = function () {
|
|
2685
|
+
sessionStorage.clear();
|
|
2686
|
+
};
|
|
2687
|
+
return SessionStorageService;
|
|
2688
|
+
}());
|
|
2689
|
+
SessionStorageService.ɵprov = i0__namespace.ɵɵdefineInjectable({ factory: function SessionStorageService_Factory() { return new SessionStorageService(); }, token: SessionStorageService, providedIn: "root" });
|
|
2690
|
+
SessionStorageService.decorators = [
|
|
2691
|
+
{ type: i0.Injectable, args: [{
|
|
2692
|
+
providedIn: 'root'
|
|
2693
|
+
},] }
|
|
2694
|
+
];
|
|
2695
|
+
|
|
2451
2696
|
var SearchLocationComponent = /** @class */ (function () {
|
|
2452
|
-
function SearchLocationComponent(locationService, fb, cd) {
|
|
2697
|
+
function SearchLocationComponent(locationService, sessionStorageService, fb, cd) {
|
|
2453
2698
|
this.locationService = locationService;
|
|
2699
|
+
this.sessionStorageService = sessionStorageService;
|
|
2454
2700
|
this.fb = fb;
|
|
2455
2701
|
this.cd = cd;
|
|
2456
2702
|
this.disabled = null;
|
|
@@ -2526,7 +2772,21 @@
|
|
|
2526
2772
|
this.searchLocationChanged.emit();
|
|
2527
2773
|
};
|
|
2528
2774
|
SearchLocationComponent.prototype.getLocations = function (term) {
|
|
2529
|
-
|
|
2775
|
+
var userLocations;
|
|
2776
|
+
var bookingLocations;
|
|
2777
|
+
// Booking type info - can create more
|
|
2778
|
+
// NO_CHECK - All work - Do not filter out locations - Default assumption
|
|
2779
|
+
// ONLY_BOOKINGS - My work - Try to only show base locations/booking locations
|
|
2780
|
+
// POSSIBLE_BOOKINGS - Create booking screen - Show only potential bookings
|
|
2781
|
+
if (this.bookingCheck === exports.BookingCheckType.BOOKINGS_AND_BASE) {
|
|
2782
|
+
userLocations = JSON.parse(this.sessionStorageService.getItem('userLocations'));
|
|
2783
|
+
bookingLocations = JSON.parse(this.sessionStorageService.getItem('bookingLocations'));
|
|
2784
|
+
}
|
|
2785
|
+
else if (this.bookingCheck === exports.BookingCheckType.POSSIBLE_BOOKINGS) {
|
|
2786
|
+
userLocations = JSON.parse(this.sessionStorageService.getItem('userLocations'));
|
|
2787
|
+
this.serviceIds = JSON.parse(this.sessionStorageService.getItem('bookableServices'));
|
|
2788
|
+
}
|
|
2789
|
+
return this.locationService.getAllLocations(this.serviceIds, this.locationType, term, userLocations, bookingLocations);
|
|
2530
2790
|
};
|
|
2531
2791
|
SearchLocationComponent.prototype.resetSearchTerm = function () {
|
|
2532
2792
|
this.form.controls.searchTerm.patchValue('', { emitEvent: false, onlySelf: true });
|
|
@@ -2549,6 +2809,7 @@
|
|
|
2549
2809
|
];
|
|
2550
2810
|
SearchLocationComponent.ctorParameters = function () { return [
|
|
2551
2811
|
{ type: LocationService },
|
|
2812
|
+
{ type: SessionStorageService },
|
|
2552
2813
|
{ type: forms.FormBuilder },
|
|
2553
2814
|
{ type: i0.ChangeDetectorRef }
|
|
2554
2815
|
]; };
|
|
@@ -2563,6 +2824,7 @@
|
|
|
2563
2824
|
form: [{ type: i0.Input }],
|
|
2564
2825
|
showAutocomplete: [{ type: i0.Input }],
|
|
2565
2826
|
locations: [{ type: i0.Input }],
|
|
2827
|
+
bookingCheck: [{ type: i0.Input }],
|
|
2566
2828
|
locationSelected: [{ type: i0.Output }],
|
|
2567
2829
|
locationInputChanged: [{ type: i0.Output }],
|
|
2568
2830
|
searchLocationChanged: [{ type: i0.Output }],
|
|
@@ -2618,6 +2880,10 @@
|
|
|
2618
2880
|
enumerable: false,
|
|
2619
2881
|
configurable: true
|
|
2620
2882
|
});
|
|
2883
|
+
FindLocationComponent.prototype.ngOnInit = function () {
|
|
2884
|
+
// implemented to get rid of undefined values
|
|
2885
|
+
this.selectedLocations = this.selectedLocations.filter(function (location) { return location.epimms_id; });
|
|
2886
|
+
};
|
|
2621
2887
|
FindLocationComponent.prototype.addLocation = function () {
|
|
2622
2888
|
if (this.tempSelectedLocation) {
|
|
2623
2889
|
this.selectedLocations = __spread(this.selectedLocations, [this.tempSelectedLocation]);
|
|
@@ -2688,7 +2954,7 @@
|
|
|
2688
2954
|
FindLocationComponent.decorators = [
|
|
2689
2955
|
{ type: i0.Component, args: [{
|
|
2690
2956
|
selector: 'xuilib-find-location',
|
|
2691
|
-
template: "<div class=\"location-picker-custom\">\n <div class=\"search-location\">\n <div>\n <label id=\"input-selected-location-label\" *ngIf=\"locationTitle\">{{locationTitle}}</label>\n </div>\n <exui-search-location class=\"search-location\"\n [locations]=\"locations\"\n [selectedLocations]=\"selectedLocations\"\n [singleMode]=\"field.maxSelected === 1\"\n [delay]=\"300\"\n [disabled]=\"disabled\"\n [serviceIds]=\"serviceIds\"\n (locationInputChanged)=\"onInputChanged($event)\"\n (locationSelected)=\"onLocationSelected($event)\"\n (searchLocationChanged)=\"onSearchInputChanged()\"\n [locationType]=\"'case-management'\"></exui-search-location>\n <a href=\"javascript:void(0)\" (click)=\"addLocation()\" class=\"govuk-button\" data-module=\"govuk-button\" *ngIf=\"enableAddLocationButton\">\n Add location\n </a>\n </div>\n <ul class=\"hmcts-filter-tags selection-container\" *ngIf=\"field.maxSelected != 1\">\n <li class=\"location-selection\" *ngFor=\"let selection of selectedLocations\">\n <a class=\"hmcts-filter__tag\" (click)=\"removeLocation(selection)\" href=\"javascript:void(0)\">\n {{ selection.site_name }}\n </a>\n </li>\n </ul>\n</div>\n",
|
|
2957
|
+
template: "<div class=\"location-picker-custom\">\n <div class=\"search-location\">\n <div>\n <label id=\"input-selected-location-label\" *ngIf=\"locationTitle\">{{locationTitle}}</label>\n </div>\n <exui-search-location class=\"search-location\"\n [locations]=\"locations\"\n [selectedLocations]=\"selectedLocations\"\n [singleMode]=\"field.maxSelected === 1\"\n [bookingCheck]=\"field.bookingCheckType\"\n [delay]=\"300\"\n [disabled]=\"disabled\"\n [serviceIds]=\"serviceIds\"\n (locationInputChanged)=\"onInputChanged($event)\"\n (locationSelected)=\"onLocationSelected($event)\"\n (searchLocationChanged)=\"onSearchInputChanged()\"\n [locationType]=\"'case-management'\"></exui-search-location>\n <a href=\"javascript:void(0)\" (click)=\"addLocation()\" class=\"govuk-button\" data-module=\"govuk-button\" *ngIf=\"enableAddLocationButton\">\n Add location\n </a>\n </div>\n <ul class=\"hmcts-filter-tags selection-container\" *ngIf=\"field.maxSelected != 1\">\n <li class=\"location-selection\" *ngFor=\"let selection of selectedLocations\">\n <a class=\"hmcts-filter__tag\" (click)=\"removeLocation(selection)\" href=\"javascript:void(0)\">\n {{ selection.site_name }}\n </a>\n </li>\n </ul>\n</div>\n",
|
|
2692
2958
|
styles: [""]
|
|
2693
2959
|
},] }
|
|
2694
2960
|
];
|
|
@@ -2883,105 +3149,21 @@
|
|
|
2883
3149
|
sessionStorageService.setItem(sessionKey, JSON.stringify(caseworkers));
|
|
2884
3150
|
};
|
|
2885
3151
|
|
|
2886
|
-
|
|
2887
|
-
|
|
2888
|
-
|
|
2889
|
-
|
|
2890
|
-
BadgeColour["BADGE_GREEN"] = "hmcts-badge--green";
|
|
2891
|
-
})(exports.BadgeColour || (exports.BadgeColour = {}));
|
|
2892
|
-
|
|
2893
|
-
var AnonymousFeatureUser = /** @class */ (function () {
|
|
2894
|
-
function AnonymousFeatureUser() {
|
|
2895
|
-
}
|
|
2896
|
-
return AnonymousFeatureUser;
|
|
2897
|
-
}());
|
|
2898
|
-
var LoggedInFeatureUser = /** @class */ (function () {
|
|
2899
|
-
function LoggedInFeatureUser() {
|
|
2900
|
-
}
|
|
2901
|
-
return LoggedInFeatureUser;
|
|
2902
|
-
}());
|
|
2903
|
-
|
|
2904
|
-
exports.PersonRole = void 0;
|
|
2905
|
-
(function (PersonRole) {
|
|
2906
|
-
PersonRole["JUDICIAL"] = "Judicial";
|
|
2907
|
-
PersonRole["CASEWORKER"] = "Legal Ops";
|
|
2908
|
-
PersonRole["ADMIN"] = "Admin";
|
|
2909
|
-
PersonRole["ALL"] = "All";
|
|
2910
|
-
})(exports.PersonRole || (exports.PersonRole = {}));
|
|
2911
|
-
// Note: RoleCategory could replace PersonRole possibly
|
|
2912
|
-
// However a lot of webapp logic is based on current PersonRole understanding
|
|
2913
|
-
exports.RoleCategory = void 0;
|
|
2914
|
-
(function (RoleCategory) {
|
|
2915
|
-
RoleCategory["JUDICIAL"] = "JUDICIAL";
|
|
2916
|
-
RoleCategory["CASEWORKER"] = "LEGAL_OPERATIONS";
|
|
2917
|
-
RoleCategory["ADMIN"] = "ADMIN";
|
|
2918
|
-
RoleCategory["ALL"] = "ALL";
|
|
2919
|
-
})(exports.RoleCategory || (exports.RoleCategory = {}));
|
|
2920
|
-
|
|
2921
|
-
var RadioFilterFieldConfig = /** @class */ (function () {
|
|
2922
|
-
function RadioFilterFieldConfig() {
|
|
2923
|
-
}
|
|
2924
|
-
return RadioFilterFieldConfig;
|
|
2925
|
-
}());
|
|
2926
|
-
|
|
2927
|
-
var SessionStorageService = /** @class */ (function () {
|
|
2928
|
-
function SessionStorageService() {
|
|
3152
|
+
var FindAPersonService = /** @class */ (function () {
|
|
3153
|
+
function FindAPersonService(http, sessionStorageService) {
|
|
3154
|
+
this.http = http;
|
|
3155
|
+
this.sessionStorageService = sessionStorageService;
|
|
2929
3156
|
}
|
|
2930
|
-
|
|
2931
|
-
|
|
2932
|
-
|
|
2933
|
-
|
|
2934
|
-
|
|
2935
|
-
|
|
2936
|
-
if (removeAfterRead === void 0) { removeAfterRead = false; }
|
|
2937
|
-
var item = sessionStorage.getItem(key);
|
|
2938
|
-
if (removeAfterRead) {
|
|
2939
|
-
this.removeItem(key);
|
|
3157
|
+
FindAPersonService.prototype.find = function (searchOptions) {
|
|
3158
|
+
var _this = this;
|
|
3159
|
+
var userInfoStr = this.sessionStorageService.getItem('userDetails');
|
|
3160
|
+
if (userInfoStr && !searchOptions.userIncluded) {
|
|
3161
|
+
var userInfo = JSON.parse(userInfoStr);
|
|
3162
|
+
this.userId = userInfo.id ? userInfo.id : userInfo.uid;
|
|
2940
3163
|
}
|
|
2941
|
-
|
|
2942
|
-
|
|
2943
|
-
|
|
2944
|
-
* Set an item in the session storage.
|
|
2945
|
-
*/
|
|
2946
|
-
SessionStorageService.prototype.setItem = function (key, value) {
|
|
2947
|
-
sessionStorage.setItem(key, value);
|
|
2948
|
-
};
|
|
2949
|
-
/**
|
|
2950
|
-
* Remove an item in the session storage.
|
|
2951
|
-
*/
|
|
2952
|
-
SessionStorageService.prototype.removeItem = function (key) {
|
|
2953
|
-
sessionStorage.removeItem(key);
|
|
2954
|
-
};
|
|
2955
|
-
/**
|
|
2956
|
-
* Clear all the items held in session storage.
|
|
2957
|
-
*/
|
|
2958
|
-
SessionStorageService.prototype.clear = function () {
|
|
2959
|
-
sessionStorage.clear();
|
|
2960
|
-
};
|
|
2961
|
-
return SessionStorageService;
|
|
2962
|
-
}());
|
|
2963
|
-
SessionStorageService.ɵprov = i0__namespace.ɵɵdefineInjectable({ factory: function SessionStorageService_Factory() { return new SessionStorageService(); }, token: SessionStorageService, providedIn: "root" });
|
|
2964
|
-
SessionStorageService.decorators = [
|
|
2965
|
-
{ type: i0.Injectable, args: [{
|
|
2966
|
-
providedIn: 'root'
|
|
2967
|
-
},] }
|
|
2968
|
-
];
|
|
2969
|
-
|
|
2970
|
-
var FindAPersonService = /** @class */ (function () {
|
|
2971
|
-
function FindAPersonService(http, sessionStorageService) {
|
|
2972
|
-
this.http = http;
|
|
2973
|
-
this.sessionStorageService = sessionStorageService;
|
|
2974
|
-
}
|
|
2975
|
-
FindAPersonService.prototype.find = function (searchOptions) {
|
|
2976
|
-
var _this = this;
|
|
2977
|
-
var userInfoStr = this.sessionStorageService.getItem('userDetails');
|
|
2978
|
-
if (userInfoStr && !searchOptions.userIncluded) {
|
|
2979
|
-
var userInfo = JSON.parse(userInfoStr);
|
|
2980
|
-
this.userId = userInfo.id ? userInfo.id : userInfo.uid;
|
|
2981
|
-
}
|
|
2982
|
-
this.assignedUser = searchOptions.assignedUser ? searchOptions.assignedUser : null;
|
|
2983
|
-
return this.http.post('/workallocation2/findPerson', { searchOptions: searchOptions })
|
|
2984
|
-
.pipe(operators.map(function (judiciary) { return judiciary.filter(function (judge) { return !([_this.assignedUser, _this.userId].includes(judge.id)); }); }));
|
|
3164
|
+
this.assignedUser = searchOptions.assignedUser ? searchOptions.assignedUser : null;
|
|
3165
|
+
return this.http.post('/workallocation/findPerson', { searchOptions: searchOptions })
|
|
3166
|
+
.pipe(operators.map(function (judiciary) { return judiciary.filter(function (judge) { return !([_this.assignedUser, _this.userId].includes(judge.id)); }); }));
|
|
2985
3167
|
};
|
|
2986
3168
|
FindAPersonService.prototype.findCaseworkers = function (searchOptions) {
|
|
2987
3169
|
var _this = this;
|
|
@@ -3011,7 +3193,7 @@
|
|
|
3011
3193
|
return rxjs.of(this.searchInCaseworkers(storedCaseworkers, searchOptions));
|
|
3012
3194
|
}
|
|
3013
3195
|
// all serviceIds passed in as node layer getting used anyway and caseworkers also stored there
|
|
3014
|
-
return this.http.post('/
|
|
3196
|
+
return this.http.post('/workallocation/retrieveCaseWorkersForServices', { fullServices: fullServices }).pipe(operators.tap(function (caseworkersByService) {
|
|
3015
3197
|
caseworkersByService.forEach(function (caseworkerListByService) {
|
|
3016
3198
|
// for any new service, ensure that they are then stored in the session
|
|
3017
3199
|
if (newServices.includes(caseworkerListByService.service)) {
|
|
@@ -3063,7 +3245,7 @@
|
|
|
3063
3245
|
},] }
|
|
3064
3246
|
];
|
|
3065
3247
|
FindAPersonService.ctorParameters = function () { return [
|
|
3066
|
-
{ type: i1.HttpClient },
|
|
3248
|
+
{ type: i1$1.HttpClient },
|
|
3067
3249
|
{ type: SessionStorageService }
|
|
3068
3250
|
]; };
|
|
3069
3251
|
|
|
@@ -3124,7 +3306,7 @@
|
|
|
3124
3306
|
_this.searchInProgress = false;
|
|
3125
3307
|
return apiFilter;
|
|
3126
3308
|
})).subscribe(function (judicial) {
|
|
3127
|
-
if (term === judicial.
|
|
3309
|
+
if (term === judicial.fullName) {
|
|
3128
3310
|
_this.formGroup.controls.selectedFormControl.setValue(judicial);
|
|
3129
3311
|
_this.displayedJudicials = [];
|
|
3130
3312
|
_this.judicialChanged.emit(judicial);
|
|
@@ -3159,7 +3341,7 @@
|
|
|
3159
3341
|
}
|
|
3160
3342
|
};
|
|
3161
3343
|
SearchJudicialsComponent.prototype.getDisplayName = function (selectedJudicial) {
|
|
3162
|
-
return selectedJudicial.
|
|
3344
|
+
return selectedJudicial.fullName + " (" + selectedJudicial.emailId + ")";
|
|
3163
3345
|
};
|
|
3164
3346
|
SearchJudicialsComponent.prototype.searchJudicials = function (term, serviceId) {
|
|
3165
3347
|
return this.judicialService.searchJudicial(term, serviceId);
|
|
@@ -3274,8 +3456,8 @@
|
|
|
3274
3456
|
if (!selectedPerson) {
|
|
3275
3457
|
return '';
|
|
3276
3458
|
}
|
|
3277
|
-
if (selectedPerson.domain === exports.PersonRole.JUDICIAL && selectedPerson.
|
|
3278
|
-
return selectedPerson.
|
|
3459
|
+
if (selectedPerson.domain === exports.PersonRole.JUDICIAL && selectedPerson.fullName) {
|
|
3460
|
+
return selectedPerson.fullName + " (" + selectedPerson.email + ")";
|
|
3279
3461
|
}
|
|
3280
3462
|
return selectedPerson.email ? selectedPerson.name + " (" + selectedPerson.email + ")" : selectedPerson.name;
|
|
3281
3463
|
};
|
|
@@ -3427,6 +3609,66 @@
|
|
|
3427
3609
|
xuilibLet: [{ type: i0.Input }]
|
|
3428
3610
|
};
|
|
3429
3611
|
|
|
3612
|
+
var FindServiceComponent = /** @class */ (function () {
|
|
3613
|
+
function FindServiceComponent() {
|
|
3614
|
+
this.serviceTitle = 'Search for a service by name';
|
|
3615
|
+
this.enableAddServiceButton = true;
|
|
3616
|
+
this.disableInputField = false;
|
|
3617
|
+
}
|
|
3618
|
+
FindServiceComponent.prototype.addService = function () {
|
|
3619
|
+
// Todo
|
|
3620
|
+
};
|
|
3621
|
+
return FindServiceComponent;
|
|
3622
|
+
}());
|
|
3623
|
+
FindServiceComponent.decorators = [
|
|
3624
|
+
{ type: i0.Component, args: [{
|
|
3625
|
+
selector: 'xuilib-find-service',
|
|
3626
|
+
template: "<div class=\"service-picker-custom\">\n <div class=\"search-service\">\n <div>\n <label id=\"input-selected-service-label\" *ngIf=\"serviceTitle\">{{serviceTitle}}</label>\n </div>\n <exui-search-service class=\"search-service\"\n [services]=\"services\"\n [selectedServices]=\"selectedServices\"\n [delay]=\"300\"\n [disabled]=\"disabled\"></exui-search-service>\n <a href=\"javascript:void(0)\" (click)=\"addService()\" class=\"govuk-button govuk-button--secondary govuk-!-margin-bottom-0\"\n data-module=\"govuk-button\" *ngIf=\"enableAddServiceButton\" id=\"add-service\">\n Add\n </a>\n </div>\n <ul class=\"hmcts-filter-tags selection-container\" *ngIf=\"field.maxSelected != 1\">\n <li class=\"service-selection\" *ngFor=\"let selection of selectedServices\">\n <a class=\"hmcts-filter__tag\" href=\"javascript:void(0)\">\n {{ selection.name }}\n </a>\n </li>\n </ul>\n </div>\n",
|
|
3627
|
+
styles: ["#add-service{background-color:#ddd}"]
|
|
3628
|
+
},] }
|
|
3629
|
+
];
|
|
3630
|
+
FindServiceComponent.propDecorators = {
|
|
3631
|
+
field: [{ type: i0.Input }],
|
|
3632
|
+
fields: [{ type: i0.Input }],
|
|
3633
|
+
serviceTitle: [{ type: i0.Input }],
|
|
3634
|
+
form: [{ type: i0.Input }],
|
|
3635
|
+
services: [{ type: i0.Input }],
|
|
3636
|
+
selectedServices: [{ type: i0.Input }],
|
|
3637
|
+
disabled: [{ type: i0.Input }],
|
|
3638
|
+
enableAddServiceButton: [{ type: i0.Input }],
|
|
3639
|
+
disableInputField: [{ type: i0.Input }]
|
|
3640
|
+
};
|
|
3641
|
+
|
|
3642
|
+
var SearchServiceComponent = /** @class */ (function () {
|
|
3643
|
+
function SearchServiceComponent() {
|
|
3644
|
+
this.showAutocomplete = false;
|
|
3645
|
+
this.minSearchCharacters = 3;
|
|
3646
|
+
this.term = '';
|
|
3647
|
+
}
|
|
3648
|
+
SearchServiceComponent.prototype.onInput = function () {
|
|
3649
|
+
// Todo
|
|
3650
|
+
};
|
|
3651
|
+
SearchServiceComponent.prototype.onSelectionChange = function () {
|
|
3652
|
+
// Todo
|
|
3653
|
+
};
|
|
3654
|
+
return SearchServiceComponent;
|
|
3655
|
+
}());
|
|
3656
|
+
SearchServiceComponent.decorators = [
|
|
3657
|
+
{ type: i0.Component, args: [{
|
|
3658
|
+
selector: 'exui-search-service',
|
|
3659
|
+
template: "<div class=\"auto-complete-container\">\n <input\n id=\"inputServiceSearch\"\n (input)=\"onInput()\"\n [formControl]=\"form?.controls.searchTerm\"\n [matAutocomplete]=\"autoSearchService\"\n class=\"govuk-input\"\n [attr.disabled]=\"disabled\">\n <mat-autocomplete class=\"mat-autocomplete-panel-extend\" autoActiveFirstOption #autoSearchService=\"matAutocomplete\">\n <mat-option *ngFor=\"let service of services\" (onSelectionChange)=\"onSelectionChange()\">\n {{ service.name }}\n </mat-option>\n <mat-option *ngIf=\"!services?.length && showAutocomplete && term && term.length >= this.minSearchCharacters\">No results found</mat-option>\n </mat-autocomplete>\n</div>\n",
|
|
3660
|
+
styles: [".autocomplete__input--show-all-values{padding:5px 34px 5px 5px;cursor:pointer}.autocomplete__dropdown-arrow-down{z-index:-1;display:inline-block;position:absolute;right:8px;width:24px;height:24px;top:10px}.autocomplete__menu{background-color:#fff;border:2px solid #0b0c0c;border-top:0;color:#0b0c0c;margin:0;max-height:342px;overflow-x:hidden;padding:0;width:100%;width:calc(100% - 4px)}.autocomplete__menu--visible{display:block}.autocomplete__menu--hidden{display:none}.autocomplete__menu--overlay{box-shadow:0 2px 6px rgba(0,0,0,.256863);left:0;position:absolute;top:100%;z-index:100}.autocomplete__menu--inline{position:relative}.autocomplete__option{border-left-width:0;border-bottom:1px solid #b1b4b6;border-right-width:0;border-top-width:1px;cursor:pointer;display:block;position:relative}.autocomplete__option>*{pointer-events:none}.autocomplete__option:first-of-type{border-top-width:0}.autocomplete__option:last-of-type{border-bottom-width:0}.autocomplete__option--odd{background-color:#fafafa}.autocomplete__option--focused,.autocomplete__option:hover{background-color:#1d70b8;border-color:#1d70b8;color:#fff;outline:0}.autocomplete__option--no-results{background-color:#fafafa;color:#646b6f;cursor:not-allowed}.autocomplete__hint,.autocomplete__input,.autocomplete__option{font-size:13px;line-height:1.25}.autocomplete__hint,.autocomplete__option{padding:5px}@media (min-width:641px){.autocomplete__hint,.autocomplete__input,.autocomplete__option{font-size:13px;line-height:1.31579}}.div-action{display:inline-block}.add-location{display:inline}.remove-location-button{margin:5px}.hide-autocomplete{display:none}.auto-complete-container{min-width:250px;display:inline-block;margin-right:4px}.autocomplete__input{line-height:24px;font-size:19px}"]
|
|
3661
|
+
},] }
|
|
3662
|
+
];
|
|
3663
|
+
SearchServiceComponent.propDecorators = {
|
|
3664
|
+
services: [{ type: i0.Input }],
|
|
3665
|
+
selectedServices: [{ type: i0.Input }],
|
|
3666
|
+
disabled: [{ type: i0.Input }],
|
|
3667
|
+
delay: [{ type: i0.Input }],
|
|
3668
|
+
form: [{ type: i0.Input }],
|
|
3669
|
+
showAutocomplete: [{ type: i0.Input }]
|
|
3670
|
+
};
|
|
3671
|
+
|
|
3430
3672
|
/*
|
|
3431
3673
|
* Gov Uk Checkbox Dumb Component responsible for
|
|
3432
3674
|
* displaying checkbox input and hint
|
|
@@ -4126,6 +4368,166 @@
|
|
|
4126
4368
|
{ type: i0.ElementRef }
|
|
4127
4369
|
]; };
|
|
4128
4370
|
|
|
4371
|
+
var COMMON_COMPONENTS = [
|
|
4372
|
+
ExuiPageWrapperComponent,
|
|
4373
|
+
TermsAndConditionsComponent,
|
|
4374
|
+
TcDisplayHtmlComponent,
|
|
4375
|
+
TcDisplayPlainComponent,
|
|
4376
|
+
TcConfirmComponent,
|
|
4377
|
+
ContactDetailsComponent,
|
|
4378
|
+
FeatureToggleDirective,
|
|
4379
|
+
LetDirective,
|
|
4380
|
+
HmctsSessionDialogComponent,
|
|
4381
|
+
UserListComponent,
|
|
4382
|
+
UserDetailsComponent,
|
|
4383
|
+
InviteUserPermissionComponent,
|
|
4384
|
+
InviteUserFormComponent,
|
|
4385
|
+
ShareCaseComponent,
|
|
4386
|
+
ShareCaseConfirmComponent,
|
|
4387
|
+
SelectedCaseListComponent,
|
|
4388
|
+
SelectedCaseComponent,
|
|
4389
|
+
SelectedCaseConfirmComponent,
|
|
4390
|
+
UserSelectComponent,
|
|
4391
|
+
TabComponent,
|
|
4392
|
+
AccessibilityComponent,
|
|
4393
|
+
DueDateComponent,
|
|
4394
|
+
CheckboxListComponent,
|
|
4395
|
+
ServiceMessageComponent,
|
|
4396
|
+
ServiceMessagesComponent,
|
|
4397
|
+
LoadingSpinnerComponent,
|
|
4398
|
+
GenericFilterComponent,
|
|
4399
|
+
CookieBannerComponent,
|
|
4400
|
+
FindPersonComponent,
|
|
4401
|
+
SearchJudicialsComponent,
|
|
4402
|
+
FindLocationComponent,
|
|
4403
|
+
SearchLocationComponent,
|
|
4404
|
+
FindServiceComponent,
|
|
4405
|
+
SearchServiceComponent,
|
|
4406
|
+
SearchVenueComponent,
|
|
4407
|
+
PaginationComponent
|
|
4408
|
+
];
|
|
4409
|
+
var GOV_UI_COMPONENTS = [
|
|
4410
|
+
HmctsIdentityBarComponent,
|
|
4411
|
+
HmctsPaginationComponent,
|
|
4412
|
+
HmctsSubNavigationComponent,
|
|
4413
|
+
HmctsPrimaryNavigationComponent,
|
|
4414
|
+
HmctsErrorSummaryComponent,
|
|
4415
|
+
HmctsMainWrapperComponent,
|
|
4416
|
+
HmctsBannerComponent,
|
|
4417
|
+
GovukTableComponent,
|
|
4418
|
+
GovUkInputComponent,
|
|
4419
|
+
GovUkCheckboxComponent,
|
|
4420
|
+
GovUkFormGroupWrapperComponent,
|
|
4421
|
+
GovUkLabelComponent,
|
|
4422
|
+
GovUkErrorMessageComponent,
|
|
4423
|
+
GovUkFieldsetComponent,
|
|
4424
|
+
GovUkDateComponent,
|
|
4425
|
+
GovUkCheckboxesComponent,
|
|
4426
|
+
GovUkRadioComponent,
|
|
4427
|
+
GovUkRadiosComponent,
|
|
4428
|
+
GovUkSelectComponent,
|
|
4429
|
+
GovUkTextareaComponent,
|
|
4430
|
+
GovUkFileUploadComponent,
|
|
4431
|
+
RemoveHostDirective
|
|
4432
|
+
];
|
|
4433
|
+
var ɵ0 = windowProvider;
|
|
4434
|
+
var ExuiCommonLibModule = /** @class */ (function () {
|
|
4435
|
+
function ExuiCommonLibModule() {
|
|
4436
|
+
}
|
|
4437
|
+
return ExuiCommonLibModule;
|
|
4438
|
+
}());
|
|
4439
|
+
ExuiCommonLibModule.decorators = [
|
|
4440
|
+
{ type: i0.NgModule, args: [{
|
|
4441
|
+
declarations: __spread(COMMON_COMPONENTS, GOV_UI_COMPONENTS),
|
|
4442
|
+
imports: [
|
|
4443
|
+
i4.CommonModule,
|
|
4444
|
+
forms.FormsModule,
|
|
4445
|
+
forms.ReactiveFormsModule,
|
|
4446
|
+
i1.RouterModule.forChild([]),
|
|
4447
|
+
autocomplete.MatAutocompleteModule,
|
|
4448
|
+
tabs.MatTabsModule,
|
|
4449
|
+
input.MatInputModule,
|
|
4450
|
+
ngxPagination.NgxPaginationModule
|
|
4451
|
+
],
|
|
4452
|
+
providers: [
|
|
4453
|
+
{ provide: windowToken, useFactory: ɵ0 }
|
|
4454
|
+
],
|
|
4455
|
+
exports: __spread(COMMON_COMPONENTS, GOV_UI_COMPONENTS, [
|
|
4456
|
+
ngxPagination.PaginatePipe
|
|
4457
|
+
])
|
|
4458
|
+
},] }
|
|
4459
|
+
];
|
|
4460
|
+
|
|
4461
|
+
var GovUiService = /** @class */ (function () {
|
|
4462
|
+
function GovUiService() {
|
|
4463
|
+
}
|
|
4464
|
+
return GovUiService;
|
|
4465
|
+
}());
|
|
4466
|
+
GovUiService.ɵprov = i0__namespace.ɵɵdefineInjectable({ factory: function GovUiService_Factory() { return new GovUiService(); }, token: GovUiService, providedIn: "root" });
|
|
4467
|
+
GovUiService.decorators = [
|
|
4468
|
+
{ type: i0.Injectable, args: [{
|
|
4469
|
+
providedIn: 'root'
|
|
4470
|
+
},] }
|
|
4471
|
+
];
|
|
4472
|
+
GovUiService.ctorParameters = function () { return []; };
|
|
4473
|
+
|
|
4474
|
+
function checkboxesBeCheckedValidator(minRequired) {
|
|
4475
|
+
if (minRequired === void 0) { minRequired = 1; }
|
|
4476
|
+
return function validate(formGroup) {
|
|
4477
|
+
var checked = 0;
|
|
4478
|
+
Object.keys(formGroup.controls).forEach(function (key) {
|
|
4479
|
+
var control = formGroup.controls[key];
|
|
4480
|
+
if (control.value === true) {
|
|
4481
|
+
checked++;
|
|
4482
|
+
}
|
|
4483
|
+
});
|
|
4484
|
+
if (checked < minRequired) {
|
|
4485
|
+
return {
|
|
4486
|
+
requireOneCheckboxToBeChecked: true,
|
|
4487
|
+
};
|
|
4488
|
+
}
|
|
4489
|
+
return null;
|
|
4490
|
+
};
|
|
4491
|
+
}
|
|
4492
|
+
|
|
4493
|
+
function dateValidator() {
|
|
4494
|
+
return function validate(formGroup) {
|
|
4495
|
+
var d = new Date(parseInt(formGroup.controls.day.value, 10), parseInt(formGroup.controls.month.value, 10) - 1, parseInt(formGroup.controls.year.value, 10) - 1);
|
|
4496
|
+
function isValidDate(val) {
|
|
4497
|
+
return val instanceof Date && !isNaN(+d);
|
|
4498
|
+
}
|
|
4499
|
+
if (!isValidDate(d)) {
|
|
4500
|
+
return {
|
|
4501
|
+
dateIsInvalid: true,
|
|
4502
|
+
};
|
|
4503
|
+
}
|
|
4504
|
+
return null;
|
|
4505
|
+
};
|
|
4506
|
+
}
|
|
4507
|
+
|
|
4508
|
+
function radioGroupValidator() {
|
|
4509
|
+
return function validate(formGroup) {
|
|
4510
|
+
if (formGroup.controls) {
|
|
4511
|
+
for (var control in formGroup.controls) {
|
|
4512
|
+
if (!formGroup.controls[control].valid) {
|
|
4513
|
+
return {
|
|
4514
|
+
isRadioGroupInvalid: true,
|
|
4515
|
+
};
|
|
4516
|
+
}
|
|
4517
|
+
}
|
|
4518
|
+
}
|
|
4519
|
+
return null;
|
|
4520
|
+
};
|
|
4521
|
+
}
|
|
4522
|
+
|
|
4523
|
+
/*
|
|
4524
|
+
* Public API Surface of gov-ui
|
|
4525
|
+
*/
|
|
4526
|
+
|
|
4527
|
+
/*
|
|
4528
|
+
* Public API Surface of gov-ui
|
|
4529
|
+
*/
|
|
4530
|
+
|
|
4129
4531
|
var FeatureToggleGuard = /** @class */ (function () {
|
|
4130
4532
|
function FeatureToggleGuard(featureToggleService, router) {
|
|
4131
4533
|
this.featureToggleService = featureToggleService;
|
|
@@ -4152,7 +4554,7 @@
|
|
|
4152
4554
|
];
|
|
4153
4555
|
FeatureToggleGuard.ctorParameters = function () { return [
|
|
4154
4556
|
{ type: FeatureToggleService },
|
|
4155
|
-
{ type: i1
|
|
4557
|
+
{ type: i1.Router }
|
|
4156
4558
|
]; };
|
|
4157
4559
|
|
|
4158
4560
|
var LaunchDarklyService = /** @class */ (function () {
|
|
@@ -4242,7 +4644,7 @@
|
|
|
4242
4644
|
var _this = this;
|
|
4243
4645
|
if (this.googleAnalyticsKey) {
|
|
4244
4646
|
this.router.events.subscribe(function (event) {
|
|
4245
|
-
if (event instanceof i1
|
|
4647
|
+
if (event instanceof i1.NavigationEnd) {
|
|
4246
4648
|
_this.window.gtag('config', _this.googleAnalyticsKey, {
|
|
4247
4649
|
page_path: event.urlAfterRedirects,
|
|
4248
4650
|
page_title: _this.title.getTitle(),
|
|
@@ -4263,7 +4665,7 @@
|
|
|
4263
4665
|
},] }
|
|
4264
4666
|
];
|
|
4265
4667
|
GoogleAnalyticsService.ctorParameters = function () { return [
|
|
4266
|
-
{ type: i1
|
|
4668
|
+
{ type: i1.Router },
|
|
4267
4669
|
{ type: i2.Title },
|
|
4268
4670
|
{ type: undefined, decorators: [{ type: i0.Inject, args: [windowToken,] }] },
|
|
4269
4671
|
{ type: undefined, decorators: [{ type: i0.Inject, args: [i4.DOCUMENT,] }] }
|
|
@@ -4299,7 +4701,7 @@
|
|
|
4299
4701
|
var _this = this;
|
|
4300
4702
|
if (this.googleTagManagerKey) {
|
|
4301
4703
|
this.router.events.subscribe(function (event) {
|
|
4302
|
-
if (event instanceof i1
|
|
4704
|
+
if (event instanceof i1.NavigationEnd) {
|
|
4303
4705
|
_this.window.dataLayer.push({
|
|
4304
4706
|
event: 'pageview',
|
|
4305
4707
|
page: {
|
|
@@ -4326,7 +4728,7 @@
|
|
|
4326
4728
|
},] }
|
|
4327
4729
|
];
|
|
4328
4730
|
GoogleTagManagerService.ctorParameters = function () { return [
|
|
4329
|
-
{ type: i1
|
|
4731
|
+
{ type: i1.Router },
|
|
4330
4732
|
{ type: i2.Title },
|
|
4331
4733
|
{ type: undefined, decorators: [{ type: i0.Inject, args: [windowToken,] }] },
|
|
4332
4734
|
{ type: undefined, decorators: [{ type: i0.Inject, args: [i4.DOCUMENT,] }] }
|
|
@@ -4517,7 +4919,7 @@
|
|
|
4517
4919
|
];
|
|
4518
4920
|
RoleGuard.ctorParameters = function () { return [
|
|
4519
4921
|
{ type: RoleService },
|
|
4520
|
-
{ type: i1
|
|
4922
|
+
{ type: i1.Router }
|
|
4521
4923
|
]; };
|
|
4522
4924
|
|
|
4523
4925
|
var HasLoadingState = /** @class */ (function () {
|
|
@@ -4571,178 +4973,6 @@
|
|
|
4571
4973
|
* Public API Surface of exui-common-lib
|
|
4572
4974
|
*/
|
|
4573
4975
|
|
|
4574
|
-
var COMMON_COMPONENTS = [
|
|
4575
|
-
ExuiPageWrapperComponent,
|
|
4576
|
-
TermsAndConditionsComponent,
|
|
4577
|
-
TcDisplayHtmlComponent,
|
|
4578
|
-
TcDisplayPlainComponent,
|
|
4579
|
-
TcConfirmComponent,
|
|
4580
|
-
ContactDetailsComponent,
|
|
4581
|
-
FeatureToggleDirective,
|
|
4582
|
-
LetDirective,
|
|
4583
|
-
HmctsSessionDialogComponent,
|
|
4584
|
-
UserListComponent,
|
|
4585
|
-
UserDetailsComponent,
|
|
4586
|
-
InviteUserPermissionComponent,
|
|
4587
|
-
InviteUserFormComponent,
|
|
4588
|
-
ShareCaseComponent,
|
|
4589
|
-
ShareCaseConfirmComponent,
|
|
4590
|
-
SelectedCaseListComponent,
|
|
4591
|
-
SelectedCaseComponent,
|
|
4592
|
-
SelectedCaseConfirmComponent,
|
|
4593
|
-
UserSelectComponent,
|
|
4594
|
-
TabComponent,
|
|
4595
|
-
AccessibilityComponent,
|
|
4596
|
-
DueDateComponent,
|
|
4597
|
-
CheckboxListComponent,
|
|
4598
|
-
ServiceMessageComponent,
|
|
4599
|
-
ServiceMessagesComponent,
|
|
4600
|
-
LoadingSpinnerComponent,
|
|
4601
|
-
GenericFilterComponent,
|
|
4602
|
-
CookieBannerComponent,
|
|
4603
|
-
FindPersonComponent,
|
|
4604
|
-
SearchJudicialsComponent,
|
|
4605
|
-
FindLocationComponent,
|
|
4606
|
-
SearchLocationComponent,
|
|
4607
|
-
SearchVenueComponent,
|
|
4608
|
-
PaginationComponent
|
|
4609
|
-
];
|
|
4610
|
-
var GOV_UI_COMPONENTS = [
|
|
4611
|
-
HmctsIdentityBarComponent,
|
|
4612
|
-
HmctsPaginationComponent,
|
|
4613
|
-
HmctsSubNavigationComponent,
|
|
4614
|
-
HmctsPrimaryNavigationComponent,
|
|
4615
|
-
HmctsErrorSummaryComponent,
|
|
4616
|
-
HmctsMainWrapperComponent,
|
|
4617
|
-
HmctsBannerComponent,
|
|
4618
|
-
GovukTableComponent,
|
|
4619
|
-
GovUkInputComponent,
|
|
4620
|
-
GovUkCheckboxComponent,
|
|
4621
|
-
GovUkFormGroupWrapperComponent,
|
|
4622
|
-
GovUkLabelComponent,
|
|
4623
|
-
GovUkErrorMessageComponent,
|
|
4624
|
-
GovUkFieldsetComponent,
|
|
4625
|
-
GovUkDateComponent,
|
|
4626
|
-
GovUkCheckboxesComponent,
|
|
4627
|
-
GovUkRadioComponent,
|
|
4628
|
-
GovUkRadiosComponent,
|
|
4629
|
-
GovUkSelectComponent,
|
|
4630
|
-
GovUkTextareaComponent,
|
|
4631
|
-
GovUkFileUploadComponent,
|
|
4632
|
-
RemoveHostDirective
|
|
4633
|
-
];
|
|
4634
|
-
var COMMON_SERVICES = [
|
|
4635
|
-
CaseSharingStateService,
|
|
4636
|
-
CookieService,
|
|
4637
|
-
LaunchDarklyService,
|
|
4638
|
-
FilterService,
|
|
4639
|
-
FindAPersonService,
|
|
4640
|
-
GoogleAnalyticsService,
|
|
4641
|
-
GoogleTagManagerService,
|
|
4642
|
-
LoadingService,
|
|
4643
|
-
LocationService,
|
|
4644
|
-
ManageSessionServices,
|
|
4645
|
-
SessionStorageService,
|
|
4646
|
-
TimeoutNotificationsService
|
|
4647
|
-
];
|
|
4648
|
-
var ɵ0 = windowProvider;
|
|
4649
|
-
var ExuiCommonLibModule = /** @class */ (function () {
|
|
4650
|
-
function ExuiCommonLibModule() {
|
|
4651
|
-
}
|
|
4652
|
-
return ExuiCommonLibModule;
|
|
4653
|
-
}());
|
|
4654
|
-
ExuiCommonLibModule.decorators = [
|
|
4655
|
-
{ type: i0.NgModule, args: [{
|
|
4656
|
-
declarations: __spread(COMMON_COMPONENTS, GOV_UI_COMPONENTS),
|
|
4657
|
-
imports: [
|
|
4658
|
-
i4.CommonModule,
|
|
4659
|
-
forms.FormsModule,
|
|
4660
|
-
forms.ReactiveFormsModule,
|
|
4661
|
-
i1$1.RouterModule.forChild([]),
|
|
4662
|
-
autocomplete.MatAutocompleteModule,
|
|
4663
|
-
tabs.MatTabsModule,
|
|
4664
|
-
input.MatInputModule,
|
|
4665
|
-
ngxPagination.NgxPaginationModule
|
|
4666
|
-
],
|
|
4667
|
-
providers: __spread(COMMON_SERVICES, [
|
|
4668
|
-
{ provide: windowToken, useFactory: ɵ0 }
|
|
4669
|
-
]),
|
|
4670
|
-
exports: __spread(COMMON_COMPONENTS, GOV_UI_COMPONENTS, [
|
|
4671
|
-
ngxPagination.PaginatePipe
|
|
4672
|
-
])
|
|
4673
|
-
},] }
|
|
4674
|
-
];
|
|
4675
|
-
|
|
4676
|
-
var GovUiService = /** @class */ (function () {
|
|
4677
|
-
function GovUiService() {
|
|
4678
|
-
}
|
|
4679
|
-
return GovUiService;
|
|
4680
|
-
}());
|
|
4681
|
-
GovUiService.ɵprov = i0__namespace.ɵɵdefineInjectable({ factory: function GovUiService_Factory() { return new GovUiService(); }, token: GovUiService, providedIn: "root" });
|
|
4682
|
-
GovUiService.decorators = [
|
|
4683
|
-
{ type: i0.Injectable, args: [{
|
|
4684
|
-
providedIn: 'root'
|
|
4685
|
-
},] }
|
|
4686
|
-
];
|
|
4687
|
-
GovUiService.ctorParameters = function () { return []; };
|
|
4688
|
-
|
|
4689
|
-
function checkboxesBeCheckedValidator(minRequired) {
|
|
4690
|
-
if (minRequired === void 0) { minRequired = 1; }
|
|
4691
|
-
return function validate(formGroup) {
|
|
4692
|
-
var checked = 0;
|
|
4693
|
-
Object.keys(formGroup.controls).forEach(function (key) {
|
|
4694
|
-
var control = formGroup.controls[key];
|
|
4695
|
-
if (control.value === true) {
|
|
4696
|
-
checked++;
|
|
4697
|
-
}
|
|
4698
|
-
});
|
|
4699
|
-
if (checked < minRequired) {
|
|
4700
|
-
return {
|
|
4701
|
-
requireOneCheckboxToBeChecked: true,
|
|
4702
|
-
};
|
|
4703
|
-
}
|
|
4704
|
-
return null;
|
|
4705
|
-
};
|
|
4706
|
-
}
|
|
4707
|
-
|
|
4708
|
-
function dateValidator() {
|
|
4709
|
-
return function validate(formGroup) {
|
|
4710
|
-
var d = new Date(parseInt(formGroup.controls.day.value, 10), parseInt(formGroup.controls.month.value, 10) - 1, parseInt(formGroup.controls.year.value, 10) - 1);
|
|
4711
|
-
function isValidDate(val) {
|
|
4712
|
-
return val instanceof Date && !isNaN(+d);
|
|
4713
|
-
}
|
|
4714
|
-
if (!isValidDate(d)) {
|
|
4715
|
-
return {
|
|
4716
|
-
dateIsInvalid: true,
|
|
4717
|
-
};
|
|
4718
|
-
}
|
|
4719
|
-
return null;
|
|
4720
|
-
};
|
|
4721
|
-
}
|
|
4722
|
-
|
|
4723
|
-
function radioGroupValidator() {
|
|
4724
|
-
return function validate(formGroup) {
|
|
4725
|
-
if (formGroup.controls) {
|
|
4726
|
-
for (var control in formGroup.controls) {
|
|
4727
|
-
if (!formGroup.controls[control].valid) {
|
|
4728
|
-
return {
|
|
4729
|
-
isRadioGroupInvalid: true,
|
|
4730
|
-
};
|
|
4731
|
-
}
|
|
4732
|
-
}
|
|
4733
|
-
}
|
|
4734
|
-
return null;
|
|
4735
|
-
};
|
|
4736
|
-
}
|
|
4737
|
-
|
|
4738
|
-
/*
|
|
4739
|
-
* Public API Surface of gov-ui
|
|
4740
|
-
*/
|
|
4741
|
-
|
|
4742
|
-
/*
|
|
4743
|
-
* Public API Surface of gov-ui
|
|
4744
|
-
*/
|
|
4745
|
-
|
|
4746
4976
|
/*
|
|
4747
4977
|
* Public API Surface of exui-common-lib
|
|
4748
4978
|
*/
|
|
@@ -4754,8 +4984,6 @@
|
|
|
4754
4984
|
exports.AccessibilityComponent = AccessibilityComponent;
|
|
4755
4985
|
exports.AnonymousFeatureUser = AnonymousFeatureUser;
|
|
4756
4986
|
exports.COMMON_COMPONENTS = COMMON_COMPONENTS;
|
|
4757
|
-
exports.COMMON_SERVICES = COMMON_SERVICES;
|
|
4758
|
-
exports.CaseSharingStateService = CaseSharingStateService;
|
|
4759
4987
|
exports.CheckboxListComponent = CheckboxListComponent;
|
|
4760
4988
|
exports.ContactDetailsComponent = ContactDetailsComponent;
|
|
4761
4989
|
exports.CookieBannerComponent = CookieBannerComponent;
|
|
@@ -4767,7 +4995,6 @@
|
|
|
4767
4995
|
exports.FeatureToggleGuard = FeatureToggleGuard;
|
|
4768
4996
|
exports.FeatureToggleService = FeatureToggleService;
|
|
4769
4997
|
exports.FilterService = FilterService;
|
|
4770
|
-
exports.FindAPersonService = FindAPersonService;
|
|
4771
4998
|
exports.FindLocationComponent = FindLocationComponent;
|
|
4772
4999
|
exports.FindPersonComponent = FindPersonComponent;
|
|
4773
5000
|
exports.GOV_UI_COMPONENTS = GOV_UI_COMPONENTS;
|
|
@@ -4806,7 +5033,6 @@
|
|
|
4806
5033
|
exports.LetDirective = LetDirective;
|
|
4807
5034
|
exports.LoadingService = LoadingService;
|
|
4808
5035
|
exports.LoadingSpinnerComponent = LoadingSpinnerComponent;
|
|
4809
|
-
exports.LocationService = LocationService;
|
|
4810
5036
|
exports.LoggedInFeatureUser = LoggedInFeatureUser;
|
|
4811
5037
|
exports.ManageSessionServices = ManageSessionServices;
|
|
4812
5038
|
exports.PaginationComponent = PaginationComponent;
|
|
@@ -4823,7 +5049,6 @@
|
|
|
4823
5049
|
exports.SelectedCaseListComponent = SelectedCaseListComponent;
|
|
4824
5050
|
exports.ServiceMessageComponent = ServiceMessageComponent;
|
|
4825
5051
|
exports.ServiceMessagesComponent = ServiceMessagesComponent;
|
|
4826
|
-
exports.SessionStorageService = SessionStorageService;
|
|
4827
5052
|
exports.ShareCaseComponent = ShareCaseComponent;
|
|
4828
5053
|
exports.ShareCaseConfirmComponent = ShareCaseConfirmComponent;
|
|
4829
5054
|
exports.TabComponent = TabComponent;
|
|
@@ -4857,43 +5082,33 @@
|
|
|
4857
5082
|
exports["ɵbl"] = FindLocationComponent;
|
|
4858
5083
|
exports["ɵbm"] = SearchLocationComponent;
|
|
4859
5084
|
exports["ɵbn"] = LocationService;
|
|
4860
|
-
exports["ɵbo"] =
|
|
4861
|
-
exports["ɵbp"] =
|
|
4862
|
-
exports["ɵbq"] =
|
|
4863
|
-
exports["ɵbr"] =
|
|
4864
|
-
exports["ɵbs"] =
|
|
4865
|
-
exports["ɵbt"] =
|
|
4866
|
-
exports["ɵbu"] =
|
|
4867
|
-
exports["ɵbv"] =
|
|
4868
|
-
exports["ɵbw"] =
|
|
4869
|
-
exports["ɵbx"] =
|
|
4870
|
-
exports["ɵby"] =
|
|
4871
|
-
exports["ɵbz"] =
|
|
5085
|
+
exports["ɵbo"] = FindServiceComponent;
|
|
5086
|
+
exports["ɵbp"] = SearchServiceComponent;
|
|
5087
|
+
exports["ɵbq"] = SearchVenueComponent;
|
|
5088
|
+
exports["ɵbr"] = PaginationComponent;
|
|
5089
|
+
exports["ɵbs"] = HmctsIdentityBarComponent;
|
|
5090
|
+
exports["ɵbt"] = HmctsPaginationComponent;
|
|
5091
|
+
exports["ɵbu"] = HmctsSubNavigationComponent;
|
|
5092
|
+
exports["ɵbv"] = HmctsPrimaryNavigationComponent;
|
|
5093
|
+
exports["ɵbw"] = HmctsErrorSummaryComponent;
|
|
5094
|
+
exports["ɵbx"] = HmctsMainWrapperComponent;
|
|
5095
|
+
exports["ɵby"] = HmctsBannerComponent;
|
|
5096
|
+
exports["ɵbz"] = GovukTableComponent;
|
|
4872
5097
|
exports["ɵc"] = TcDisplayHtmlComponent;
|
|
4873
|
-
exports["ɵca"] =
|
|
4874
|
-
exports["ɵcb"] =
|
|
4875
|
-
exports["ɵcc"] =
|
|
4876
|
-
exports["ɵcd"] =
|
|
4877
|
-
exports["ɵce"] =
|
|
4878
|
-
exports["ɵcf"] =
|
|
4879
|
-
exports["ɵcg"] =
|
|
4880
|
-
exports["ɵch"] =
|
|
4881
|
-
exports["ɵci"] =
|
|
4882
|
-
exports["ɵcj"] =
|
|
4883
|
-
exports["ɵck"] =
|
|
4884
|
-
exports["ɵcl"] =
|
|
4885
|
-
exports["ɵcm"] =
|
|
4886
|
-
exports["ɵcn"] =
|
|
4887
|
-
exports["ɵco"] = LaunchDarklyService;
|
|
4888
|
-
exports["ɵcp"] = FilterService;
|
|
4889
|
-
exports["ɵcq"] = FindAPersonService;
|
|
4890
|
-
exports["ɵcr"] = GoogleAnalyticsService;
|
|
4891
|
-
exports["ɵcs"] = GoogleTagManagerService;
|
|
4892
|
-
exports["ɵct"] = LoadingService;
|
|
4893
|
-
exports["ɵcu"] = LocationService;
|
|
4894
|
-
exports["ɵcv"] = ManageSessionServices;
|
|
4895
|
-
exports["ɵcw"] = SessionStorageService;
|
|
4896
|
-
exports["ɵcx"] = TimeoutNotificationsService;
|
|
5098
|
+
exports["ɵca"] = GovUkInputComponent;
|
|
5099
|
+
exports["ɵcb"] = GovUkCheckboxComponent;
|
|
5100
|
+
exports["ɵcc"] = GovUkFormGroupWrapperComponent;
|
|
5101
|
+
exports["ɵcd"] = GovUkLabelComponent;
|
|
5102
|
+
exports["ɵce"] = GovUkErrorMessageComponent;
|
|
5103
|
+
exports["ɵcf"] = GovUkFieldsetComponent;
|
|
5104
|
+
exports["ɵcg"] = GovUkDateComponent;
|
|
5105
|
+
exports["ɵch"] = GovUkCheckboxesComponent;
|
|
5106
|
+
exports["ɵci"] = GovUkRadioComponent;
|
|
5107
|
+
exports["ɵcj"] = GovUkRadiosComponent;
|
|
5108
|
+
exports["ɵck"] = GovUkSelectComponent;
|
|
5109
|
+
exports["ɵcl"] = GovUkTextareaComponent;
|
|
5110
|
+
exports["ɵcm"] = GovUkFileUploadComponent;
|
|
5111
|
+
exports["ɵcn"] = RemoveHostDirective;
|
|
4897
5112
|
exports["ɵd"] = TcDisplayPlainComponent;
|
|
4898
5113
|
exports["ɵe"] = TcConfirmComponent;
|
|
4899
5114
|
exports["ɵf"] = ContactDetailsComponent;
|