@hmcts/opal-frontend-common 0.0.64 → 0.0.66

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (144) hide show
  1. package/fesm2022/{hmcts-opal-frontend-common-access-denied.component-CWImMW7J.mjs → hmcts-opal-frontend-common-access-denied.component-w1dJPEXZ.mjs} +4 -4
  2. package/fesm2022/{hmcts-opal-frontend-common-access-denied.component-CWImMW7J.mjs.map → hmcts-opal-frontend-common-access-denied.component-w1dJPEXZ.mjs.map} +1 -1
  3. package/fesm2022/{hmcts-opal-frontend-common-account-created.component-C-iCns7b.mjs → hmcts-opal-frontend-common-account-created.component-BGV9_IhY.mjs} +4 -4
  4. package/fesm2022/{hmcts-opal-frontend-common-account-created.component-C-iCns7b.mjs.map → hmcts-opal-frontend-common-account-created.component-BGV9_IhY.mjs.map} +1 -1
  5. package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-form-alias-base.mjs +3 -3
  6. package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-form-array-base.mjs +3 -3
  7. package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-form-array-removal-base.mjs +3 -3
  8. package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-form-base.mjs +3 -3
  9. package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-nested-form-base.mjs +3 -3
  10. package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-sortable-table-pagination.mjs +8 -8
  11. package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-sortable-table-pagination.mjs.map +1 -1
  12. package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-sortable-table.mjs +10 -10
  13. package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-sortable-table.mjs.map +1 -1
  14. package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-table-filter.mjs +10 -10
  15. package/fesm2022/hmcts-opal-frontend-common-components-abstract-abstract-table-filter.mjs.map +1 -1
  16. package/fesm2022/hmcts-opal-frontend-common-components-alphagov-alphagov-accessible-autocomplete.mjs +3 -3
  17. package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-account-information-custom-account-information-item-custom-account-information-item-label.mjs +3 -3
  18. package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-account-information-custom-account-information-item-custom-account-information-item-value.mjs +3 -3
  19. package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-account-information-custom-account-information-item.mjs +3 -3
  20. package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-account-information.mjs +3 -3
  21. package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-action-links.mjs +3 -3
  22. package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-horizontal-scroll-pane.mjs +3 -3
  23. package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-page-header.mjs +3 -3
  24. package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-scrollable-panes-custom-scrollable-panes-inner-pane.mjs +3 -3
  25. package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-scrollable-panes.mjs +3 -3
  26. package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-summary-metric-bar-custom-summary-metric-bar-item-custom-summary-metric-bar-item-label.mjs +3 -3
  27. package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-summary-metric-bar-custom-summary-metric-bar-item-custom-summary-metric-bar-item-value.mjs +3 -3
  28. package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-summary-metric-bar-custom-summary-metric-bar-item.mjs +3 -3
  29. package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-summary-metric-bar.mjs +3 -3
  30. package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-vertical-scroll-pane-custom-vertical-scroll-pane-inner-pane.mjs +3 -3
  31. package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-vertical-scroll-pane-custom-vertical-scroll-pane-outer-pane.mjs +3 -3
  32. package/fesm2022/hmcts-opal-frontend-common-components-custom-custom-vertical-scroll-pane.mjs +3 -3
  33. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-accordion.mjs +3 -3
  34. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-back-link.mjs +3 -3
  35. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-button.mjs +3 -3
  36. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-cancel-link.mjs +3 -3
  37. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-checkboxes.mjs +12 -12
  38. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-date-input.mjs +3 -3
  39. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-details.mjs +3 -3
  40. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-error-summary.mjs +3 -3
  41. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-footer.mjs +3 -3
  42. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-header.mjs +6 -6
  43. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-heading-with-caption.mjs +3 -3
  44. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-inset-text.mjs +3 -3
  45. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-list-govuk-list-link.mjs +3 -3
  46. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-list.mjs +3 -3
  47. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-notification-banner.mjs +3 -3
  48. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-pagination.mjs +5 -5
  49. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-pagination.mjs.map +1 -1
  50. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-panel.mjs +3 -3
  51. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-radio.mjs +12 -12
  52. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-select.mjs +3 -3
  53. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-summary-card-list.mjs +14 -7
  54. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-summary-card-list.mjs.map +1 -1
  55. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-summary-list.mjs +12 -12
  56. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-table.mjs +12 -12
  57. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-tabs-govuk-tabs-list-item.mjs +3 -3
  58. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-tabs-govuk-tabs-panel.mjs +3 -3
  59. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-tabs.mjs +3 -3
  60. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-tag.mjs +3 -3
  61. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-task-list.mjs +6 -6
  62. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-text-area.mjs +5 -5
  63. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-text-area.mjs.map +1 -1
  64. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-text-input-prefix-suffix.mjs +3 -3
  65. package/fesm2022/hmcts-opal-frontend-common-components-govuk-govuk-text-input.mjs +3 -3
  66. package/fesm2022/hmcts-opal-frontend-common-components-hod-hod-loading-spinner.mjs +3 -3
  67. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-alert.mjs +26 -22
  68. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-alert.mjs.map +1 -1
  69. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-badge.mjs +3 -3
  70. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-button-menu-moj-button-menu-item.mjs +3 -3
  71. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-button-menu.mjs +3 -3
  72. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-date-picker.mjs +3 -3
  73. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-filter-moj-filter-panel-moj-filter-panel-header.mjs +3 -3
  74. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-filter-moj-filter-panel-moj-filter-panel-option-moj-filter-panel-option-form-group-item.mjs +3 -3
  75. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-filter-moj-filter-panel-moj-filter-panel-option-moj-filter-panel-option-form-group-keyword.mjs +3 -3
  76. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-filter-moj-filter-panel-moj-filter-panel-option.mjs +3 -3
  77. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-filter-moj-filter-panel-moj-filter-panel-selected-moj-filter-panel-selected-tag.mjs +3 -3
  78. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-filter-moj-filter-panel-moj-filter-panel-selected.mjs +3 -3
  79. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-filter-moj-filter-panel.mjs +3 -3
  80. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-filter.mjs +3 -3
  81. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-header.mjs +6 -6
  82. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-inset-text.mjs +3 -3
  83. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-notification-badge.mjs +3 -3
  84. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-page-header.mjs +3 -3
  85. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-pagination.mjs +5 -5
  86. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-pagination.mjs.map +1 -1
  87. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-primary-navigation.mjs +6 -6
  88. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-sortable-table.mjs +18 -18
  89. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-sub-navigation.mjs +6 -6
  90. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-ticket-panel.mjs +3 -3
  91. package/fesm2022/hmcts-opal-frontend-common-components-moj-moj-timeline.mjs +6 -6
  92. package/fesm2022/{hmcts-opal-frontend-common-concurrency-failure.component-Cn-ShVc5.mjs → hmcts-opal-frontend-common-concurrency-failure.component-CusyW-5x.mjs} +4 -4
  93. package/fesm2022/{hmcts-opal-frontend-common-concurrency-failure.component-Cn-ShVc5.mjs.map → hmcts-opal-frontend-common-concurrency-failure.component-CusyW-5x.mjs.map} +1 -1
  94. package/fesm2022/hmcts-opal-frontend-common-directives-capitalisation.mjs +3 -3
  95. package/fesm2022/hmcts-opal-frontend-common-directives-govuk-button.mjs +3 -3
  96. package/fesm2022/hmcts-opal-frontend-common-directives-moj-multi-select.mjs +232 -0
  97. package/fesm2022/hmcts-opal-frontend-common-directives-moj-multi-select.mjs.map +1 -0
  98. package/fesm2022/{hmcts-opal-frontend-common-internal-server-error.component-DVPQlZoD.mjs → hmcts-opal-frontend-common-internal-server-error.component-CQy0fEO7.mjs} +5 -5
  99. package/fesm2022/{hmcts-opal-frontend-common-internal-server-error.component-DVPQlZoD.mjs.map → hmcts-opal-frontend-common-internal-server-error.component-CQy0fEO7.mjs.map} +1 -1
  100. package/fesm2022/{hmcts-opal-frontend-common-pages-access-denied.component-CWImMW7J.mjs → hmcts-opal-frontend-common-pages-access-denied.component-w1dJPEXZ.mjs} +4 -4
  101. package/fesm2022/{hmcts-opal-frontend-common-pages-access-denied.component-CWImMW7J.mjs.map → hmcts-opal-frontend-common-pages-access-denied.component-w1dJPEXZ.mjs.map} +1 -1
  102. package/fesm2022/{hmcts-opal-frontend-common-pages-account-created.component-C-iCns7b.mjs → hmcts-opal-frontend-common-pages-account-created.component-BGV9_IhY.mjs} +4 -4
  103. package/fesm2022/{hmcts-opal-frontend-common-pages-account-created.component-C-iCns7b.mjs.map → hmcts-opal-frontend-common-pages-account-created.component-BGV9_IhY.mjs.map} +1 -1
  104. package/fesm2022/{hmcts-opal-frontend-common-pages-concurrency-failure.component-Cn-ShVc5.mjs → hmcts-opal-frontend-common-pages-concurrency-failure.component-CusyW-5x.mjs} +4 -4
  105. package/fesm2022/{hmcts-opal-frontend-common-pages-concurrency-failure.component-Cn-ShVc5.mjs.map → hmcts-opal-frontend-common-pages-concurrency-failure.component-CusyW-5x.mjs.map} +1 -1
  106. package/fesm2022/hmcts-opal-frontend-common-pages-dashboard-page.mjs +4 -4
  107. package/fesm2022/hmcts-opal-frontend-common-pages-dashboard-page.mjs.map +1 -1
  108. package/fesm2022/{hmcts-opal-frontend-common-pages-internal-server-error.component-DVPQlZoD.mjs → hmcts-opal-frontend-common-pages-internal-server-error.component-CQy0fEO7.mjs} +5 -5
  109. package/fesm2022/{hmcts-opal-frontend-common-pages-internal-server-error.component-DVPQlZoD.mjs.map → hmcts-opal-frontend-common-pages-internal-server-error.component-CQy0fEO7.mjs.map} +1 -1
  110. package/fesm2022/{hmcts-opal-frontend-common-pages-permission-denied.component-CrhYr8aM.mjs → hmcts-opal-frontend-common-pages-permission-denied.component-aaJXImkm.mjs} +4 -4
  111. package/fesm2022/{hmcts-opal-frontend-common-pages-permission-denied.component-CrhYr8aM.mjs.map → hmcts-opal-frontend-common-pages-permission-denied.component-aaJXImkm.mjs.map} +1 -1
  112. package/fesm2022/{hmcts-opal-frontend-common-pages-sign-in-stub.component-CqOrm5qQ.mjs → hmcts-opal-frontend-common-pages-sign-in-stub.component-CvKDXRlr.mjs} +4 -4
  113. package/fesm2022/{hmcts-opal-frontend-common-pages-sign-in-stub.component-CqOrm5qQ.mjs.map → hmcts-opal-frontend-common-pages-sign-in-stub.component-CvKDXRlr.mjs.map} +1 -1
  114. package/fesm2022/{hmcts-opal-frontend-common-pages-sign-in.component-P8JcHzpe.mjs → hmcts-opal-frontend-common-pages-sign-in.component-kFJamxkB.mjs} +4 -4
  115. package/fesm2022/{hmcts-opal-frontend-common-pages-sign-in.component-P8JcHzpe.mjs.map → hmcts-opal-frontend-common-pages-sign-in.component-kFJamxkB.mjs.map} +1 -1
  116. package/fesm2022/hmcts-opal-frontend-common-pages.mjs +6 -6
  117. package/fesm2022/{hmcts-opal-frontend-common-permission-denied.component-CrhYr8aM.mjs → hmcts-opal-frontend-common-permission-denied.component-aaJXImkm.mjs} +4 -4
  118. package/fesm2022/{hmcts-opal-frontend-common-permission-denied.component-CrhYr8aM.mjs.map → hmcts-opal-frontend-common-permission-denied.component-aaJXImkm.mjs.map} +1 -1
  119. package/fesm2022/hmcts-opal-frontend-common-pipes-date-format.mjs +3 -3
  120. package/fesm2022/hmcts-opal-frontend-common-pipes-days-ago.mjs +3 -3
  121. package/fesm2022/hmcts-opal-frontend-common-pipes-monetary.mjs +3 -3
  122. package/fesm2022/hmcts-opal-frontend-common-pipes-national-insurance.mjs +3 -3
  123. package/fesm2022/hmcts-opal-frontend-common-resolvers-title.mjs +3 -3
  124. package/fesm2022/hmcts-opal-frontend-common-services-app-initializer-service.mjs +3 -3
  125. package/fesm2022/hmcts-opal-frontend-common-services-app-insights-service.mjs +3 -3
  126. package/fesm2022/hmcts-opal-frontend-common-services-auth-service.mjs +3 -3
  127. package/fesm2022/hmcts-opal-frontend-common-services-date-service.mjs +3 -3
  128. package/fesm2022/hmcts-opal-frontend-common-services-launch-darkly-service.mjs +3 -3
  129. package/fesm2022/hmcts-opal-frontend-common-services-opal-user-service.mjs +3 -3
  130. package/fesm2022/hmcts-opal-frontend-common-services-permissions-service.mjs +3 -3
  131. package/fesm2022/hmcts-opal-frontend-common-services-session-service.mjs +3 -3
  132. package/fesm2022/hmcts-opal-frontend-common-services-sort-service.mjs +3 -3
  133. package/fesm2022/hmcts-opal-frontend-common-services-transfer-state-service.mjs +3 -3
  134. package/fesm2022/hmcts-opal-frontend-common-services-transformation-service.mjs +3 -3
  135. package/fesm2022/hmcts-opal-frontend-common-services-utils-service.mjs +3 -3
  136. package/fesm2022/{hmcts-opal-frontend-common-sign-in-stub.component-CqOrm5qQ.mjs → hmcts-opal-frontend-common-sign-in-stub.component-CvKDXRlr.mjs} +4 -4
  137. package/fesm2022/{hmcts-opal-frontend-common-sign-in-stub.component-CqOrm5qQ.mjs.map → hmcts-opal-frontend-common-sign-in-stub.component-CvKDXRlr.mjs.map} +1 -1
  138. package/fesm2022/{hmcts-opal-frontend-common-sign-in.component-HUJ3zyjB.mjs → hmcts-opal-frontend-common-sign-in.component-CclFCycj.mjs} +4 -4
  139. package/fesm2022/{hmcts-opal-frontend-common-sign-in.component-HUJ3zyjB.mjs.map → hmcts-opal-frontend-common-sign-in.component-CclFCycj.mjs.map} +1 -1
  140. package/fesm2022/hmcts-opal-frontend-common.mjs +6 -6
  141. package/package.json +6 -1
  142. package/types/hmcts-opal-frontend-common-components-govuk-govuk-summary-card-list.d.ts +3 -1
  143. package/types/hmcts-opal-frontend-common-components-moj-moj-alert.d.ts +2 -1
  144. package/types/hmcts-opal-frontend-common-directives-moj-multi-select.d.ts +115 -0
@@ -46,10 +46,10 @@ class MojSortableTableHeaderSortIconDirective {
46
46
  svg.appendChild(path);
47
47
  }
48
48
  }
49
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojSortableTableHeaderSortIconDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
50
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.1", type: MojSortableTableHeaderSortIconDirective, isStandalone: true, selector: "[opalLibMojSortableTableHeaderSortIcon]", inputs: { sortDirection: ["opalLibMojSortableTableHeaderSortIcon", "sortDirection"] }, usesOnChanges: true, ngImport: i0 });
49
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojSortableTableHeaderSortIconDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
50
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.4", type: MojSortableTableHeaderSortIconDirective, isStandalone: true, selector: "[opalLibMojSortableTableHeaderSortIcon]", inputs: { sortDirection: ["opalLibMojSortableTableHeaderSortIcon", "sortDirection"] }, usesOnChanges: true, ngImport: i0 });
51
51
  }
52
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojSortableTableHeaderSortIconDirective, decorators: [{
52
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojSortableTableHeaderSortIconDirective, decorators: [{
53
53
  type: Directive,
54
54
  args: [{
55
55
  selector: '[opalLibMojSortableTableHeaderSortIcon]',
@@ -86,10 +86,10 @@ class MojSortableTableHeaderComponent {
86
86
  sortType: newDirection,
87
87
  });
88
88
  }
89
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojSortableTableHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
90
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: MojSortableTableHeaderComponent, isStandalone: true, selector: "opal-lib-moj-sortable-table-header, [opal-lib-moj-sortable-table-header]", inputs: { columnKey: "columnKey", sortDirection: "sortDirection", dataIndex: "dataIndex" }, outputs: { sortChange: "sortChange" }, host: { properties: { "attr.aria-sort": "this.ariaSort", "attr.scope": "this.hostScope", "class": "this.hostClass" } }, ngImport: i0, template: "<button type=\"button\" (click)=\"toggleSort()\" [attr.data-index]=\"dataIndex\">\n <ng-content></ng-content>\n <svg\n [opalLibMojSortableTableHeaderSortIcon]=\"sortDirection\"\n width=\"22\"\n height=\"22\"\n focusable=\"false\"\n aria-hidden=\"true\"\n role=\"img\"\n vviewBox=\"0 0 22 22\"\n ></svg>\n</button>\n", dependencies: [{ kind: "directive", type: MojSortableTableHeaderSortIconDirective, selector: "[opalLibMojSortableTableHeaderSortIcon]", inputs: ["opalLibMojSortableTableHeaderSortIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
89
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojSortableTableHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
90
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: MojSortableTableHeaderComponent, isStandalone: true, selector: "opal-lib-moj-sortable-table-header, [opal-lib-moj-sortable-table-header]", inputs: { columnKey: "columnKey", sortDirection: "sortDirection", dataIndex: "dataIndex" }, outputs: { sortChange: "sortChange" }, host: { properties: { "attr.aria-sort": "this.ariaSort", "attr.scope": "this.hostScope", "class": "this.hostClass" } }, ngImport: i0, template: "<button type=\"button\" (click)=\"toggleSort()\" [attr.data-index]=\"dataIndex\">\n <ng-content></ng-content>\n <svg\n [opalLibMojSortableTableHeaderSortIcon]=\"sortDirection\"\n width=\"22\"\n height=\"22\"\n focusable=\"false\"\n aria-hidden=\"true\"\n role=\"img\"\n vviewBox=\"0 0 22 22\"\n ></svg>\n</button>\n", dependencies: [{ kind: "directive", type: MojSortableTableHeaderSortIconDirective, selector: "[opalLibMojSortableTableHeaderSortIcon]", inputs: ["opalLibMojSortableTableHeaderSortIcon"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
91
91
  }
92
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojSortableTableHeaderComponent, decorators: [{
92
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojSortableTableHeaderComponent, decorators: [{
93
93
  type: Component,
94
94
  args: [{ selector: 'opal-lib-moj-sortable-table-header, [opal-lib-moj-sortable-table-header]', changeDetection: ChangeDetectionStrategy.OnPush, imports: [MojSortableTableHeaderSortIconDirective], template: "<button type=\"button\" (click)=\"toggleSort()\" [attr.data-index]=\"dataIndex\">\n <ng-content></ng-content>\n <svg\n [opalLibMojSortableTableHeaderSortIcon]=\"sortDirection\"\n width=\"22\"\n height=\"22\"\n focusable=\"false\"\n aria-hidden=\"true\"\n role=\"img\"\n vviewBox=\"0 0 22 22\"\n ></svg>\n</button>\n" }]
95
95
  }], propDecorators: { columnKey: [{
@@ -117,10 +117,10 @@ class MojSortableTableRowDataComponent {
117
117
  get hostId() {
118
118
  return this.id;
119
119
  }
120
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojSortableTableRowDataComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
121
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: MojSortableTableRowDataComponent, isStandalone: true, selector: "opal-lib-moj-sortable-table-row-data,[opal-lib-moj-sortable-table-row-data]", inputs: { id: "id" }, host: { properties: { "class": "this.hostClass", "id": "this.hostId" } }, ngImport: i0, template: "<ng-content></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
120
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojSortableTableRowDataComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
121
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: MojSortableTableRowDataComponent, isStandalone: true, selector: "opal-lib-moj-sortable-table-row-data,[opal-lib-moj-sortable-table-row-data]", inputs: { id: "id" }, host: { properties: { "class": "this.hostClass", "id": "this.hostId" } }, ngImport: i0, template: "<ng-content></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
122
122
  }
123
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojSortableTableRowDataComponent, decorators: [{
123
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojSortableTableRowDataComponent, decorators: [{
124
124
  type: Component,
125
125
  args: [{ selector: 'opal-lib-moj-sortable-table-row-data,[opal-lib-moj-sortable-table-row-data]', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n" }]
126
126
  }], propDecorators: { id: [{
@@ -139,10 +139,10 @@ class MojSortableTableRowComponent {
139
139
  get hostClass() {
140
140
  return `govuk-table__row ${this.bodyRowClasses}`;
141
141
  }
142
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojSortableTableRowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
143
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: MojSortableTableRowComponent, isStandalone: true, selector: "opal-lib-moj-sortable-table-row,[opal-lib-moj-sortable-table-row]", inputs: { bodyRowClasses: "bodyRowClasses" }, host: { properties: { "class": "this.hostClass" } }, ngImport: i0, template: "<ng-content></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
142
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojSortableTableRowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
143
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: MojSortableTableRowComponent, isStandalone: true, selector: "opal-lib-moj-sortable-table-row,[opal-lib-moj-sortable-table-row]", inputs: { bodyRowClasses: "bodyRowClasses" }, host: { properties: { "class": "this.hostClass" } }, ngImport: i0, template: "<ng-content></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
144
144
  }
145
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojSortableTableRowComponent, decorators: [{
145
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojSortableTableRowComponent, decorators: [{
146
146
  type: Component,
147
147
  args: [{ selector: 'opal-lib-moj-sortable-table-row,[opal-lib-moj-sortable-table-row]', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n" }]
148
148
  }], propDecorators: { bodyRowClasses: [{
@@ -156,10 +156,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
156
156
  class MojSortableTableStatusComponent {
157
157
  columnTitle;
158
158
  sortDirection;
159
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojSortableTableStatusComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
160
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: MojSortableTableStatusComponent, isStandalone: true, selector: "opal-lib-moj-sortable-table-status", inputs: { columnTitle: "columnTitle", sortDirection: "sortDirection" }, ngImport: i0, template: "<output aria-live=\"polite\" aria-atomic=\"true\" class=\"govuk-visually-hidden\">\n Sorted by {{ columnTitle }} ({{ sortDirection }})\n</output>\n" });
159
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojSortableTableStatusComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
160
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: MojSortableTableStatusComponent, isStandalone: true, selector: "opal-lib-moj-sortable-table-status", inputs: { columnTitle: "columnTitle", sortDirection: "sortDirection" }, ngImport: i0, template: "<output aria-live=\"polite\" aria-atomic=\"true\" class=\"govuk-visually-hidden\">\n Sorted by {{ columnTitle }} ({{ sortDirection }})\n</output>\n" });
161
161
  }
162
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojSortableTableStatusComponent, decorators: [{
162
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojSortableTableStatusComponent, decorators: [{
163
163
  type: Component,
164
164
  args: [{ selector: 'opal-lib-moj-sortable-table-status', standalone: true, template: "<output aria-live=\"polite\" aria-atomic=\"true\" class=\"govuk-visually-hidden\">\n Sorted by {{ columnTitle }} ({{ sortDirection }})\n</output>\n" }]
165
165
  }], propDecorators: { columnTitle: [{
@@ -172,10 +172,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImpor
172
172
 
173
173
  class MojSortableTableComponent {
174
174
  tableClasses;
175
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojSortableTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
176
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: MojSortableTableComponent, isStandalone: true, selector: "opal-lib-moj-sortable-table", inputs: { tableClasses: "tableClasses" }, ngImport: i0, template: "<table class=\"govuk-table {{ tableClasses }}\" data-module=\"moj-sortable-table\">\n <caption class=\"govuk-table__caption\">\n <ng-content select=\"[caption]\"></ng-content>\n </caption>\n <thead class=\"govuk-table__head\">\n <tr class=\"govuk-table__row\">\n <ng-content select=\"[head]\"></ng-content>\n </tr>\n </thead>\n <tbody class=\"govuk-table__body\">\n <ng-content select=\"[row]\"></ng-content>\n <ng-content select=\"[results]\"></ng-content>\n </tbody>\n</table>\n<ng-content select=\"[status]\"></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
175
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojSortableTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
176
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: MojSortableTableComponent, isStandalone: true, selector: "opal-lib-moj-sortable-table", inputs: { tableClasses: "tableClasses" }, ngImport: i0, template: "<table class=\"govuk-table {{ tableClasses }}\" data-module=\"moj-sortable-table\">\n <caption class=\"govuk-table__caption\">\n <ng-content select=\"[caption]\"></ng-content>\n </caption>\n <thead class=\"govuk-table__head\">\n <tr class=\"govuk-table__row\">\n <ng-content select=\"[head]\"></ng-content>\n </tr>\n </thead>\n <tbody class=\"govuk-table__body\">\n <ng-content select=\"[row]\"></ng-content>\n <ng-content select=\"[results]\"></ng-content>\n </tbody>\n</table>\n<ng-content select=\"[status]\"></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
177
177
  }
178
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojSortableTableComponent, decorators: [{
178
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojSortableTableComponent, decorators: [{
179
179
  type: Component,
180
180
  args: [{ selector: 'opal-lib-moj-sortable-table', changeDetection: ChangeDetectionStrategy.OnPush, template: "<table class=\"govuk-table {{ tableClasses }}\" data-module=\"moj-sortable-table\">\n <caption class=\"govuk-table__caption\">\n <ng-content select=\"[caption]\"></ng-content>\n </caption>\n <thead class=\"govuk-table__head\">\n <tr class=\"govuk-table__row\">\n <ng-content select=\"[head]\"></ng-content>\n </tr>\n </thead>\n <tbody class=\"govuk-table__body\">\n <ng-content select=\"[row]\"></ng-content>\n <ng-content select=\"[results]\"></ng-content>\n </tbody>\n</table>\n<ng-content select=\"[status]\"></ng-content>\n" }]
181
181
  }], propDecorators: { tableClasses: [{
@@ -22,10 +22,10 @@ class MojSubNavigationItemComponent {
22
22
  // Basically we want to mimic the behaviour of the GDS tabs component, as this is how these will be used.
23
23
  this.router.navigate(['./'], { relativeTo: this.route, fragment: item });
24
24
  }
25
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojSubNavigationItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
26
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: MojSubNavigationItemComponent, isStandalone: true, selector: "opal-lib-moj-sub-navigation-item, [opal-lib-moj-sub-navigation-item]", inputs: { subNavItemId: "subNavItemId", subNavItemFragment: "subNavItemFragment", subNavItemText: "subNavItemText", activeSubNavItemFragment: "activeSubNavItemFragment" }, host: { properties: { "class": "this.hostClass", "id": "this.hostId" } }, ngImport: i0, template: "<a\n class=\"moj-sub-navigation__link\"\n [attr.aria-current]=\"subNavItemFragment === activeSubNavItemFragment ? 'page' : ''\"\n (click)=\"handleItemClick($event, subNavItemFragment)\"\n (keyup.enter)=\"handleItemClick($event, subNavItemFragment)\"\n tabindex=\"0\"\n href=\"#\"\n>\n {{ subNavItemText }}\n <ng-content select=\"[badge]\"></ng-content>\n</a>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
25
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojSubNavigationItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
26
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: MojSubNavigationItemComponent, isStandalone: true, selector: "opal-lib-moj-sub-navigation-item, [opal-lib-moj-sub-navigation-item]", inputs: { subNavItemId: "subNavItemId", subNavItemFragment: "subNavItemFragment", subNavItemText: "subNavItemText", activeSubNavItemFragment: "activeSubNavItemFragment" }, host: { properties: { "class": "this.hostClass", "id": "this.hostId" } }, ngImport: i0, template: "<a\n class=\"moj-sub-navigation__link\"\n [attr.aria-current]=\"subNavItemFragment === activeSubNavItemFragment ? 'page' : ''\"\n (click)=\"handleItemClick($event, subNavItemFragment)\"\n (keyup.enter)=\"handleItemClick($event, subNavItemFragment)\"\n tabindex=\"0\"\n href=\"#\"\n>\n {{ subNavItemText }}\n <ng-content select=\"[badge]\"></ng-content>\n</a>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
27
27
  }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojSubNavigationItemComponent, decorators: [{
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojSubNavigationItemComponent, decorators: [{
29
29
  type: Component,
30
30
  args: [{ selector: 'opal-lib-moj-sub-navigation-item, [opal-lib-moj-sub-navigation-item]', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<a\n class=\"moj-sub-navigation__link\"\n [attr.aria-current]=\"subNavItemFragment === activeSubNavItemFragment ? 'page' : ''\"\n (click)=\"handleItemClick($event, subNavItemFragment)\"\n (keyup.enter)=\"handleItemClick($event, subNavItemFragment)\"\n tabindex=\"0\"\n href=\"#\"\n>\n {{ subNavItemText }}\n <ng-content select=\"[badge]\"></ng-content>\n</a>\n" }]
31
31
  }], propDecorators: { subNavItemId: [{
@@ -76,10 +76,10 @@ class MojSubNavigationComponent {
76
76
  this.ngUnsubscribe.next();
77
77
  this.ngUnsubscribe.complete();
78
78
  }
79
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojSubNavigationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
80
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: MojSubNavigationComponent, isStandalone: true, selector: "opal-lib-moj-sub-navigation", inputs: { subNavId: "subNavId" }, outputs: { activeSubNavItemFragment: "activeSubNavItemFragment" }, ngImport: i0, template: "<nav class=\"moj-sub-navigation\" aria-label=\"Sub navigation\" [id]=\"subNavId\">\n <ul class=\"moj-sub-navigation__list\">\n <ng-content></ng-content>\n </ul>\n</nav>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
79
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojSubNavigationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
80
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: MojSubNavigationComponent, isStandalone: true, selector: "opal-lib-moj-sub-navigation", inputs: { subNavId: "subNavId" }, outputs: { activeSubNavItemFragment: "activeSubNavItemFragment" }, ngImport: i0, template: "<nav class=\"moj-sub-navigation\" aria-label=\"Sub navigation\" [id]=\"subNavId\">\n <ul class=\"moj-sub-navigation__list\">\n <ng-content></ng-content>\n </ul>\n</nav>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
81
81
  }
82
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojSubNavigationComponent, decorators: [{
82
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojSubNavigationComponent, decorators: [{
83
83
  type: Component,
84
84
  args: [{ selector: 'opal-lib-moj-sub-navigation', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<nav class=\"moj-sub-navigation\" aria-label=\"Sub navigation\" [id]=\"subNavId\">\n <ul class=\"moj-sub-navigation__list\">\n <ng-content></ng-content>\n </ul>\n</nav>\n" }]
85
85
  }], propDecorators: { subNavId: [{
@@ -5,10 +5,10 @@ class MojTicketPanelComponent {
5
5
  componentClasses;
6
6
  sectionClasses;
7
7
  alert;
8
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojTicketPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
9
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: MojTicketPanelComponent, isStandalone: true, selector: "opal-lib-moj-ticket-panel", inputs: { componentClasses: "componentClasses", sectionClasses: "sectionClasses", alert: "alert" }, ngImport: i0, template: "<article class=\"moj-ticket-panel {{ componentClasses }}\">\n <section class=\"moj-ticket-panel__content {{ sectionClasses }}\" [attr.role]=\"alert ? 'alert' : ''\">\n <ng-content></ng-content>\n </section>\n</article>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
8
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojTicketPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
9
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: MojTicketPanelComponent, isStandalone: true, selector: "opal-lib-moj-ticket-panel", inputs: { componentClasses: "componentClasses", sectionClasses: "sectionClasses", alert: "alert" }, ngImport: i0, template: "<article class=\"moj-ticket-panel {{ componentClasses }}\">\n <section class=\"moj-ticket-panel__content {{ sectionClasses }}\" [attr.role]=\"alert ? 'alert' : ''\">\n <ng-content></ng-content>\n </section>\n</article>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
10
10
  }
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojTicketPanelComponent, decorators: [{
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojTicketPanelComponent, decorators: [{
12
12
  type: Component,
13
13
  args: [{ selector: 'opal-lib-moj-ticket-panel', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<article class=\"moj-ticket-panel {{ componentClasses }}\">\n <section class=\"moj-ticket-panel__content {{ sectionClasses }}\" [attr.role]=\"alert ? 'alert' : ''\">\n <ng-content></ng-content>\n </section>\n</article>\n" }]
14
14
  }], propDecorators: { componentClasses: [{
@@ -2,19 +2,19 @@ import * as i0 from '@angular/core';
2
2
  import { ChangeDetectionStrategy, Component } from '@angular/core';
3
3
 
4
4
  class MojTimelineItemComponent {
5
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojTimelineItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: MojTimelineItemComponent, isStandalone: true, selector: "opal-lib-moj-timeline-item", ngImport: i0, template: "<div class=\"moj-timeline__item\">\n <div class=\"moj-timeline__header\">\n <h2 class=\"moj-timeline__title\"><ng-content select=\"[title]\"></ng-content></h2>\n\n <p class=\"moj-timeline__byline\">&nbsp;by <ng-content select=\"[user]\"></ng-content></p>\n </div>\n <p class=\"moj-timeline__date\">\n <time datetime=\"\"><ng-content select=\"[date]\"></ng-content></time>\n </p>\n <div class=\"moj-timeline__description\">\n <ng-content select=\"[description]\"></ng-content>\n </div>\n</div>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
5
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojTimelineItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: MojTimelineItemComponent, isStandalone: true, selector: "opal-lib-moj-timeline-item", ngImport: i0, template: "<div class=\"moj-timeline__item\">\n <div class=\"moj-timeline__header\">\n <h2 class=\"moj-timeline__title\"><ng-content select=\"[title]\"></ng-content></h2>\n\n <p class=\"moj-timeline__byline\">&nbsp;by <ng-content select=\"[user]\"></ng-content></p>\n </div>\n <p class=\"moj-timeline__date\">\n <time datetime=\"\"><ng-content select=\"[date]\"></ng-content></time>\n </p>\n <div class=\"moj-timeline__description\">\n <ng-content select=\"[description]\"></ng-content>\n </div>\n</div>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
7
7
  }
8
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojTimelineItemComponent, decorators: [{
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojTimelineItemComponent, decorators: [{
9
9
  type: Component,
10
10
  args: [{ selector: 'opal-lib-moj-timeline-item', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"moj-timeline__item\">\n <div class=\"moj-timeline__header\">\n <h2 class=\"moj-timeline__title\"><ng-content select=\"[title]\"></ng-content></h2>\n\n <p class=\"moj-timeline__byline\">&nbsp;by <ng-content select=\"[user]\"></ng-content></p>\n </div>\n <p class=\"moj-timeline__date\">\n <time datetime=\"\"><ng-content select=\"[date]\"></ng-content></time>\n </p>\n <div class=\"moj-timeline__description\">\n <ng-content select=\"[description]\"></ng-content>\n </div>\n</div>\n" }]
11
11
  }] });
12
12
 
13
13
  class MojTimelineComponent {
14
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojTimelineComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
15
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: MojTimelineComponent, isStandalone: true, selector: "opal-lib-moj-timeline", ngImport: i0, template: "<div class=\"moj-timeline\"><ng-content></ng-content></div>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
14
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojTimelineComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
15
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: MojTimelineComponent, isStandalone: true, selector: "opal-lib-moj-timeline", ngImport: i0, template: "<div class=\"moj-timeline\"><ng-content></ng-content></div>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
16
16
  }
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: MojTimelineComponent, decorators: [{
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojTimelineComponent, decorators: [{
18
18
  type: Component,
19
19
  args: [{ selector: 'opal-lib-moj-timeline', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"moj-timeline\"><ng-content></ng-content></div>\n" }]
20
20
  }] });
@@ -2,13 +2,13 @@ import * as i0 from '@angular/core';
2
2
  import { ChangeDetectionStrategy, Component } from '@angular/core';
3
3
 
4
4
  class ConcurrencyFailureComponent {
5
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: ConcurrencyFailureComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: ConcurrencyFailureComponent, isStandalone: true, selector: "opal-lib-concurrency-failure", ngImport: i0, template: "<div class=\"govuk-grid-column-two-thirds\">\n <h1 class=\"govuk-heading-l\">Sorry, there is a problem</h1>\n <p class=\"govuk-body\">Something else was changed while you were doing this.</p>\n <p class=\"govuk-body\">Your changes have not been saved. You will need to start again.</p>\n</div>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
5
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: ConcurrencyFailureComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
6
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: ConcurrencyFailureComponent, isStandalone: true, selector: "opal-lib-concurrency-failure", ngImport: i0, template: "<div class=\"govuk-grid-column-two-thirds\">\n <h1 class=\"govuk-heading-l\">Sorry, there is a problem</h1>\n <p class=\"govuk-body\">Something else was changed while you were doing this.</p>\n <p class=\"govuk-body\">Your changes have not been saved. You will need to start again.</p>\n</div>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
7
7
  }
8
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: ConcurrencyFailureComponent, decorators: [{
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: ConcurrencyFailureComponent, decorators: [{
9
9
  type: Component,
10
10
  args: [{ selector: 'opal-lib-concurrency-failure', standalone: true, imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"govuk-grid-column-two-thirds\">\n <h1 class=\"govuk-heading-l\">Sorry, there is a problem</h1>\n <p class=\"govuk-body\">Something else was changed while you were doing this.</p>\n <p class=\"govuk-body\">Your changes have not been saved. You will need to start again.</p>\n</div>\n" }]
11
11
  }] });
12
12
 
13
13
  export { ConcurrencyFailureComponent };
14
- //# sourceMappingURL=hmcts-opal-frontend-common-concurrency-failure.component-Cn-ShVc5.mjs.map
14
+ //# sourceMappingURL=hmcts-opal-frontend-common-concurrency-failure.component-CusyW-5x.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"hmcts-opal-frontend-common-concurrency-failure.component-Cn-ShVc5.mjs","sources":["../../../projects/opal-frontend-common/pages/concurrency-failure/concurrency-failure.component.ts","../../../projects/opal-frontend-common/pages/concurrency-failure/concurrency-failure.component.html"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'opal-lib-concurrency-failure',\n standalone: true,\n imports: [],\n templateUrl: './concurrency-failure.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ConcurrencyFailureComponent {}\n","<div class=\"govuk-grid-column-two-thirds\">\n <h1 class=\"govuk-heading-l\">Sorry, there is a problem</h1>\n <p class=\"govuk-body\">Something else was changed while you were doing this.</p>\n <p class=\"govuk-body\">Your changes have not been saved. You will need to start again.</p>\n</div>\n"],"names":[],"mappings":";;;MASa,2BAA2B,CAAA;uGAA3B,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAA3B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,2BAA2B,wFCTxC,4SAKA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FDIa,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBAPvC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,8BAA8B,cAC5B,IAAI,EAAA,OAAA,EACP,EAAE,EAAA,eAAA,EAEM,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,4SAAA,EAAA;;;;;"}
1
+ {"version":3,"file":"hmcts-opal-frontend-common-concurrency-failure.component-CusyW-5x.mjs","sources":["../../../projects/opal-frontend-common/pages/concurrency-failure/concurrency-failure.component.ts","../../../projects/opal-frontend-common/pages/concurrency-failure/concurrency-failure.component.html"],"sourcesContent":["import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'opal-lib-concurrency-failure',\n standalone: true,\n imports: [],\n templateUrl: './concurrency-failure.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class ConcurrencyFailureComponent {}\n","<div class=\"govuk-grid-column-two-thirds\">\n <h1 class=\"govuk-heading-l\">Sorry, there is a problem</h1>\n <p class=\"govuk-body\">Something else was changed while you were doing this.</p>\n <p class=\"govuk-body\">Your changes have not been saved. You will need to start again.</p>\n</div>\n"],"names":[],"mappings":";;;MASa,2BAA2B,CAAA;uGAA3B,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAA3B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,2BAA2B,wFCTxC,4SAKA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FDIa,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBAPvC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,8BAA8B,cAC5B,IAAI,EAAA,OAAA,EACP,EAAE,EAAA,eAAA,EAEM,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,4SAAA,EAAA;;;;;"}
@@ -23,10 +23,10 @@ class CapitalisationDirective {
23
23
  this.destroy$.next();
24
24
  this.destroy$.complete();
25
25
  }
26
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: CapitalisationDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
27
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.1", type: CapitalisationDirective, isStandalone: true, selector: "[opalLibCapitaliseAllCharacters]", inputs: { control: ["opalLibCapitaliseAllCharacters", "control"] }, ngImport: i0 });
26
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: CapitalisationDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
27
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.4", type: CapitalisationDirective, isStandalone: true, selector: "[opalLibCapitaliseAllCharacters]", inputs: { control: ["opalLibCapitaliseAllCharacters", "control"] }, ngImport: i0 });
28
28
  }
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: CapitalisationDirective, decorators: [{
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: CapitalisationDirective, decorators: [{
30
30
  type: Directive,
31
31
  args: [{
32
32
  selector: '[opalLibCapitaliseAllCharacters]',
@@ -22,10 +22,10 @@ class GovukButtonDirective {
22
22
  handleButtonClick() {
23
23
  this.buttonClickEvent.emit(true);
24
24
  }
25
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: GovukButtonDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
26
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.1", type: GovukButtonDirective, isStandalone: true, selector: "[opalLibGovukButton]", inputs: { buttonId: "buttonId", buttonClasses: "buttonClasses", type: "type" }, outputs: { buttonClickEvent: "buttonClickEvent" }, host: { properties: { "attr.id": "this.id", "attr.type": "this.buttonType", "class": "this.classes", "attr.data-module": "this.dataModule" } }, ngImport: i0 });
25
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: GovukButtonDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
26
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.4", type: GovukButtonDirective, isStandalone: true, selector: "[opalLibGovukButton]", inputs: { buttonId: "buttonId", buttonClasses: "buttonClasses", type: "type" }, outputs: { buttonClickEvent: "buttonClickEvent" }, host: { properties: { "attr.id": "this.id", "attr.type": "this.buttonType", "class": "this.classes", "attr.data-module": "this.dataModule" } }, ngImport: i0 });
27
27
  }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: GovukButtonDirective, decorators: [{
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: GovukButtonDirective, decorators: [{
29
29
  type: Directive,
30
30
  args: [{
31
31
  selector: '[opalLibGovukButton]',
@@ -0,0 +1,232 @@
1
+ import * as i0 from '@angular/core';
2
+ import { inject, ElementRef, EventEmitter, HostListener, HostBinding, Output, Input, Directive } from '@angular/core';
3
+
4
+ /**
5
+ * Returns the first checkbox input found within a directive host element.
6
+ *
7
+ * @param hostElement - Host element containing checkbox markup.
8
+ */
9
+ const getCheckboxInputFromHost = (hostElement) => hostElement.querySelector('input[type="checkbox"]');
10
+
11
+ class MojMultiSelectBodyDirective {
12
+ hostElementRef = inject(ElementRef);
13
+ baseClasses = 'govuk-checkboxes__item moj-multi-select__checkbox body-checkbox';
14
+ rowId;
15
+ ariaLabel = '';
16
+ extraClasses = '';
17
+ selectionChange = new EventEmitter();
18
+ /**
19
+ * Synchronises the nested checkbox aria-label based on directive inputs.
20
+ */
21
+ syncInputState() {
22
+ const checkboxInput = getCheckboxInputFromHost(this.hostElementRef.nativeElement);
23
+ if (!checkboxInput) {
24
+ return;
25
+ }
26
+ const customAriaLabel = this.ariaLabel.trim();
27
+ if (customAriaLabel) {
28
+ checkboxInput.setAttribute('aria-label', customAriaLabel);
29
+ }
30
+ else {
31
+ checkboxInput.removeAttribute('aria-label');
32
+ }
33
+ }
34
+ get classes() {
35
+ return `${this.baseClasses} ${this.extraClasses}`.trim();
36
+ }
37
+ /**
38
+ * Applies initial input aria-label after directive initialisation.
39
+ */
40
+ ngOnInit() {
41
+ this.syncInputState();
42
+ }
43
+ /**
44
+ * Re-syncs checkbox aria-label when aria-related inputs change.
45
+ *
46
+ * @param changes - Angular change map for current input updates.
47
+ */
48
+ ngOnChanges(changes) {
49
+ if (changes['ariaLabel']) {
50
+ this.syncInputState();
51
+ }
52
+ }
53
+ onCheckboxChange(event) {
54
+ const target = event.target;
55
+ if (!(target instanceof HTMLInputElement)) {
56
+ return;
57
+ }
58
+ this.selectionChange.emit({ rowId: this.rowId, checked: target.checked });
59
+ }
60
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojMultiSelectBodyDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
61
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.4", type: MojMultiSelectBodyDirective, isStandalone: true, selector: "opal-lib-govuk-checkboxes-item[opalLibMojMultiSelectBody], [opal-lib-govuk-checkboxes-item][opalLibMojMultiSelectBody]", inputs: { rowId: "rowId", ariaLabel: "ariaLabel", extraClasses: "extraClasses" }, outputs: { selectionChange: "selectionChange" }, host: { listeners: { "change": "onCheckboxChange($event)" }, properties: { "class": "this.classes" } }, usesOnChanges: true, ngImport: i0 });
62
+ }
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojMultiSelectBodyDirective, decorators: [{
64
+ type: Directive,
65
+ args: [{
66
+ selector: 'opal-lib-govuk-checkboxes-item[opalLibMojMultiSelectBody], [opal-lib-govuk-checkboxes-item][opalLibMojMultiSelectBody]',
67
+ }]
68
+ }], propDecorators: { rowId: [{
69
+ type: Input,
70
+ args: [{ required: true }]
71
+ }], ariaLabel: [{
72
+ type: Input
73
+ }], extraClasses: [{
74
+ type: Input
75
+ }], selectionChange: [{
76
+ type: Output
77
+ }], classes: [{
78
+ type: HostBinding,
79
+ args: ['class']
80
+ }], onCheckboxChange: [{
81
+ type: HostListener,
82
+ args: ['change', ['$event']]
83
+ }] } });
84
+
85
+ class MojMultiSelectHeadDirective {
86
+ hostElementRef = inject(ElementRef);
87
+ baseClasses = 'govuk-checkboxes__item moj-multi-select__checkbox';
88
+ extraClasses = '';
89
+ selectAllIndeterminate = false;
90
+ ariaLabel = 'Select all rows';
91
+ toggleAll = new EventEmitter();
92
+ /**
93
+ * Synchronises the nested checkbox UI state with directive inputs.
94
+ * Updates indeterminate and aria-label when the input element is present.
95
+ */
96
+ syncInputState() {
97
+ const checkboxInput = getCheckboxInputFromHost(this.hostElementRef.nativeElement);
98
+ if (!checkboxInput) {
99
+ return;
100
+ }
101
+ checkboxInput.indeterminate = this.selectAllIndeterminate;
102
+ checkboxInput.setAttribute('aria-label', this.ariaLabel);
103
+ }
104
+ get classes() {
105
+ return `${this.baseClasses} ${this.extraClasses}`.trim();
106
+ }
107
+ /**
108
+ * Applies the initial checkbox aria and indeterminate state after init.
109
+ */
110
+ ngOnInit() {
111
+ this.syncInputState();
112
+ }
113
+ /**
114
+ * Re-syncs checkbox state when relevant inputs change.
115
+ *
116
+ * @param changes - Angular change map for current input updates.
117
+ */
118
+ ngOnChanges(changes) {
119
+ if (changes['selectAllIndeterminate'] || changes['ariaLabel']) {
120
+ this.syncInputState();
121
+ }
122
+ }
123
+ onCheckboxChange(event) {
124
+ const target = event.target;
125
+ if (!(target instanceof HTMLInputElement)) {
126
+ return;
127
+ }
128
+ this.toggleAll.emit(target.checked);
129
+ }
130
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojMultiSelectHeadDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
131
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "21.2.4", type: MojMultiSelectHeadDirective, isStandalone: true, selector: "opal-lib-govuk-checkboxes-item[opalLibMojMultiSelectHead], [opal-lib-govuk-checkboxes-item][opalLibMojMultiSelectHead]", inputs: { extraClasses: "extraClasses", selectAllIndeterminate: "selectAllIndeterminate", ariaLabel: "ariaLabel" }, outputs: { toggleAll: "toggleAll" }, host: { listeners: { "change": "onCheckboxChange($event)" }, properties: { "class": "this.classes" } }, usesOnChanges: true, ngImport: i0 });
132
+ }
133
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: MojMultiSelectHeadDirective, decorators: [{
134
+ type: Directive,
135
+ args: [{
136
+ selector: 'opal-lib-govuk-checkboxes-item[opalLibMojMultiSelectHead], [opal-lib-govuk-checkboxes-item][opalLibMojMultiSelectHead]',
137
+ }]
138
+ }], propDecorators: { extraClasses: [{
139
+ type: Input
140
+ }], selectAllIndeterminate: [{
141
+ type: Input
142
+ }], ariaLabel: [{
143
+ type: Input
144
+ }], toggleAll: [{
145
+ type: Output
146
+ }], classes: [{
147
+ type: HostBinding,
148
+ args: ['class']
149
+ }], onCheckboxChange: [{
150
+ type: HostListener,
151
+ args: ['change', ['$event']]
152
+ }] } });
153
+
154
+ /**
155
+ * Checks whether a single row is currently selected.
156
+ *
157
+ * @param row - Row object to evaluate.
158
+ * @param index - Row index passed to the id resolver.
159
+ * @param selectedRowIds - Current selected row id set.
160
+ * @param getRowId - Resolver used to extract row id.
161
+ */
162
+ const isMultiSelectRowSelected = (row, index, selectedRowIds, getRowId) => selectedRowIds.has(getRowId(row, index));
163
+ /**
164
+ * Checks whether all visible rows are selected.
165
+ * Returns false when there are no rows.
166
+ *
167
+ * @param rows - Rows currently displayed.
168
+ * @param selectedRowIds - Current selected row id set.
169
+ * @param getRowId - Resolver used to extract row id.
170
+ */
171
+ const areAllMultiSelectRowsSelected = (rows, selectedRowIds, getRowId) => rows.length > 0 && rows.every((row, index) => selectedRowIds.has(getRowId(row, index)));
172
+ /**
173
+ * Checks whether selection is partial for the current rows.
174
+ * Returns true only when at least one row is selected and at least one is unselected.
175
+ *
176
+ * @param rows - Rows currently displayed.
177
+ * @param selectedRowIds - Current selected row id set.
178
+ * @param getRowId - Resolver used to extract row id.
179
+ */
180
+ const areSomeMultiSelectRowsSelected = (rows, selectedRowIds, getRowId) => {
181
+ if (rows.length === 0) {
182
+ return false;
183
+ }
184
+ const selectedCount = rows.reduce((count, row, index) => (selectedRowIds.has(getRowId(row, index)) ? count + 1 : count), 0);
185
+ return selectedCount > 0 && selectedCount < rows.length;
186
+ };
187
+ /**
188
+ * Toggles selection for a single row id and returns a new selection set.
189
+ *
190
+ * @param selectedRowIds - Current selected row id set.
191
+ * @param rowId - Row id to add or remove.
192
+ * @param checked - True to add; false to remove.
193
+ */
194
+ const toggleMultiSelectRow = (selectedRowIds, rowId, checked) => {
195
+ const nextSelectedRowIds = new Set(selectedRowIds);
196
+ if (checked) {
197
+ nextSelectedRowIds.add(rowId);
198
+ }
199
+ else {
200
+ nextSelectedRowIds.delete(rowId);
201
+ }
202
+ return nextSelectedRowIds;
203
+ };
204
+ /**
205
+ * Toggles selection for all visible rows and returns a new selection set.
206
+ * Existing ids not present in `rows` are preserved.
207
+ *
208
+ * @param rows - Rows currently displayed.
209
+ * @param selectedRowIds - Current selected row id set.
210
+ * @param getRowId - Resolver used to extract row id.
211
+ * @param checked - True to add visible ids; false to remove visible ids.
212
+ */
213
+ const toggleAllMultiSelectRows = (rows, selectedRowIds, getRowId, checked) => {
214
+ const nextSelectedRowIds = new Set(selectedRowIds);
215
+ rows.forEach((row, index) => {
216
+ const rowId = getRowId(row, index);
217
+ if (checked) {
218
+ nextSelectedRowIds.add(rowId);
219
+ }
220
+ else {
221
+ nextSelectedRowIds.delete(rowId);
222
+ }
223
+ });
224
+ return nextSelectedRowIds;
225
+ };
226
+
227
+ /**
228
+ * Generated bundle index. Do not edit.
229
+ */
230
+
231
+ export { MojMultiSelectBodyDirective, MojMultiSelectHeadDirective, areAllMultiSelectRowsSelected, areSomeMultiSelectRowsSelected, isMultiSelectRowSelected, toggleAllMultiSelectRows, toggleMultiSelectRow };
232
+ //# sourceMappingURL=hmcts-opal-frontend-common-directives-moj-multi-select.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hmcts-opal-frontend-common-directives-moj-multi-select.mjs","sources":["../../../projects/opal-frontend-common/directives/moj-multi-select/utils/moj-multi-select-directive.utils.ts","../../../projects/opal-frontend-common/directives/moj-multi-select/moj-multi-select-body.directive.ts","../../../projects/opal-frontend-common/directives/moj-multi-select/moj-multi-select-head.directive.ts","../../../projects/opal-frontend-common/directives/moj-multi-select/utils/moj-multi-select-selection.utils.ts","../../../projects/opal-frontend-common/directives/moj-multi-select/hmcts-opal-frontend-common-directives-moj-multi-select.ts"],"sourcesContent":["/**\n * Returns the first checkbox input found within a directive host element.\n *\n * @param hostElement - Host element containing checkbox markup.\n */\nexport const getCheckboxInputFromHost = (hostElement: HTMLElement): HTMLInputElement | null =>\n hostElement.querySelector('input[type=\"checkbox\"]');\n","import {\n Directive,\n ElementRef,\n EventEmitter,\n HostBinding,\n HostListener,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n inject,\n} from '@angular/core';\nimport { MultiSelectRowIdentifier } from './types/moj-multi-select.types';\nimport { getCheckboxInputFromHost } from './utils/moj-multi-select-directive.utils';\n\n@Directive({\n selector:\n 'opal-lib-govuk-checkboxes-item[opalLibMojMultiSelectBody], [opal-lib-govuk-checkboxes-item][opalLibMojMultiSelectBody]',\n})\nexport class MojMultiSelectBodyDirective implements OnInit, OnChanges {\n private readonly hostElementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly baseClasses = 'govuk-checkboxes__item moj-multi-select__checkbox body-checkbox';\n\n @Input({ required: true }) rowId!: MultiSelectRowIdentifier;\n @Input() ariaLabel: string = '';\n @Input() extraClasses: string = '';\n\n @Output() selectionChange = new EventEmitter<{ rowId: MultiSelectRowIdentifier; checked: boolean }>();\n\n /**\n * Synchronises the nested checkbox aria-label based on directive inputs.\n */\n private syncInputState(): void {\n const checkboxInput = getCheckboxInputFromHost(this.hostElementRef.nativeElement);\n\n if (!checkboxInput) {\n return;\n }\n\n const customAriaLabel = this.ariaLabel.trim();\n\n if (customAriaLabel) {\n checkboxInput.setAttribute('aria-label', customAriaLabel);\n } else {\n checkboxInput.removeAttribute('aria-label');\n }\n }\n\n @HostBinding('class')\n /**\n * Returns the host CSS classes for the body row checkbox item.\n */\n public get classes(): string {\n return `${this.baseClasses} ${this.extraClasses}`.trim();\n }\n\n /**\n * Applies initial input aria-label after directive initialisation.\n */\n public ngOnInit(): void {\n this.syncInputState();\n }\n\n /**\n * Re-syncs checkbox aria-label when aria-related inputs change.\n *\n * @param changes - Angular change map for current input updates.\n */\n public ngOnChanges(changes: SimpleChanges): void {\n if (changes['ariaLabel']) {\n this.syncInputState();\n }\n }\n\n @HostListener('change', ['$event'])\n /**\n * Emits row id and checked state when the row checkbox changes.\n *\n * @param event - Native change event from the checkbox.\n */\n public onCheckboxChange(event: Event): void {\n const target = event.target;\n\n if (!(target instanceof HTMLInputElement)) {\n return;\n }\n\n this.selectionChange.emit({ rowId: this.rowId, checked: target.checked });\n }\n}\n","import {\n Directive,\n ElementRef,\n EventEmitter,\n HostBinding,\n HostListener,\n Input,\n OnChanges,\n OnInit,\n Output,\n SimpleChanges,\n inject,\n} from '@angular/core';\nimport { getCheckboxInputFromHost } from './utils/moj-multi-select-directive.utils';\n\n@Directive({\n selector:\n 'opal-lib-govuk-checkboxes-item[opalLibMojMultiSelectHead], [opal-lib-govuk-checkboxes-item][opalLibMojMultiSelectHead]',\n})\nexport class MojMultiSelectHeadDirective implements OnInit, OnChanges {\n private readonly hostElementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly baseClasses = 'govuk-checkboxes__item moj-multi-select__checkbox';\n\n @Input() extraClasses: string = '';\n @Input() selectAllIndeterminate: boolean = false;\n @Input() ariaLabel: string = 'Select all rows';\n\n @Output() toggleAll = new EventEmitter<boolean>();\n\n /**\n * Synchronises the nested checkbox UI state with directive inputs.\n * Updates indeterminate and aria-label when the input element is present.\n */\n private syncInputState(): void {\n const checkboxInput = getCheckboxInputFromHost(this.hostElementRef.nativeElement);\n\n if (!checkboxInput) {\n return;\n }\n\n checkboxInput.indeterminate = this.selectAllIndeterminate;\n checkboxInput.setAttribute('aria-label', this.ariaLabel);\n }\n\n @HostBinding('class')\n /**\n * Returns the host CSS classes for the select-all checkbox item.\n */\n public get classes(): string {\n return `${this.baseClasses} ${this.extraClasses}`.trim();\n }\n\n /**\n * Applies the initial checkbox aria and indeterminate state after init.\n */\n public ngOnInit(): void {\n this.syncInputState();\n }\n\n /**\n * Re-syncs checkbox state when relevant inputs change.\n *\n * @param changes - Angular change map for current input updates.\n */\n public ngOnChanges(changes: SimpleChanges): void {\n if (changes['selectAllIndeterminate'] || changes['ariaLabel']) {\n this.syncInputState();\n }\n }\n\n @HostListener('change', ['$event'])\n /**\n * Emits the latest select-all checked state when the host checkbox changes.\n *\n * @param event - Native change event from the checkbox.\n */\n public onCheckboxChange(event: Event): void {\n const target = event.target;\n\n if (!(target instanceof HTMLInputElement)) {\n return;\n }\n\n this.toggleAll.emit(target.checked);\n }\n}\n","import { MultiSelectRowIdentifier } from '../types/moj-multi-select.types';\n\n/**\n * Resolves a unique row id from a row value and its index.\n */\nexport type MultiSelectRowIdResolver<TRow, TRowId extends MultiSelectRowIdentifier> = (\n row: TRow,\n index: number,\n) => TRowId;\n\n/**\n * Checks whether a single row is currently selected.\n *\n * @param row - Row object to evaluate.\n * @param index - Row index passed to the id resolver.\n * @param selectedRowIds - Current selected row id set.\n * @param getRowId - Resolver used to extract row id.\n */\nexport const isMultiSelectRowSelected = <TRow, TRowId extends MultiSelectRowIdentifier>(\n row: TRow,\n index: number,\n selectedRowIds: ReadonlySet<TRowId>,\n getRowId: MultiSelectRowIdResolver<TRow, TRowId>,\n): boolean => selectedRowIds.has(getRowId(row, index));\n\n/**\n * Checks whether all visible rows are selected.\n * Returns false when there are no rows.\n *\n * @param rows - Rows currently displayed.\n * @param selectedRowIds - Current selected row id set.\n * @param getRowId - Resolver used to extract row id.\n */\nexport const areAllMultiSelectRowsSelected = <TRow, TRowId extends MultiSelectRowIdentifier>(\n rows: readonly TRow[],\n selectedRowIds: ReadonlySet<TRowId>,\n getRowId: MultiSelectRowIdResolver<TRow, TRowId>,\n): boolean => rows.length > 0 && rows.every((row, index) => selectedRowIds.has(getRowId(row, index)));\n\n/**\n * Checks whether selection is partial for the current rows.\n * Returns true only when at least one row is selected and at least one is unselected.\n *\n * @param rows - Rows currently displayed.\n * @param selectedRowIds - Current selected row id set.\n * @param getRowId - Resolver used to extract row id.\n */\nexport const areSomeMultiSelectRowsSelected = <TRow, TRowId extends MultiSelectRowIdentifier>(\n rows: readonly TRow[],\n selectedRowIds: ReadonlySet<TRowId>,\n getRowId: MultiSelectRowIdResolver<TRow, TRowId>,\n): boolean => {\n if (rows.length === 0) {\n return false;\n }\n\n const selectedCount = rows.reduce(\n (count, row, index) => (selectedRowIds.has(getRowId(row, index)) ? count + 1 : count),\n 0,\n );\n\n return selectedCount > 0 && selectedCount < rows.length;\n};\n\n/**\n * Toggles selection for a single row id and returns a new selection set.\n *\n * @param selectedRowIds - Current selected row id set.\n * @param rowId - Row id to add or remove.\n * @param checked - True to add; false to remove.\n */\nexport const toggleMultiSelectRow = <TRowId extends MultiSelectRowIdentifier>(\n selectedRowIds: ReadonlySet<TRowId>,\n rowId: TRowId,\n checked: boolean,\n): Set<TRowId> => {\n const nextSelectedRowIds = new Set<TRowId>(selectedRowIds);\n\n if (checked) {\n nextSelectedRowIds.add(rowId);\n } else {\n nextSelectedRowIds.delete(rowId);\n }\n\n return nextSelectedRowIds;\n};\n\n/**\n * Toggles selection for all visible rows and returns a new selection set.\n * Existing ids not present in `rows` are preserved.\n *\n * @param rows - Rows currently displayed.\n * @param selectedRowIds - Current selected row id set.\n * @param getRowId - Resolver used to extract row id.\n * @param checked - True to add visible ids; false to remove visible ids.\n */\nexport const toggleAllMultiSelectRows = <TRow, TRowId extends MultiSelectRowIdentifier>(\n rows: readonly TRow[],\n selectedRowIds: ReadonlySet<TRowId>,\n getRowId: MultiSelectRowIdResolver<TRow, TRowId>,\n checked: boolean,\n): Set<TRowId> => {\n const nextSelectedRowIds = new Set<TRowId>(selectedRowIds);\n\n rows.forEach((row, index) => {\n const rowId = getRowId(row, index);\n\n if (checked) {\n nextSelectedRowIds.add(rowId);\n } else {\n nextSelectedRowIds.delete(rowId);\n }\n });\n\n return nextSelectedRowIds;\n};\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -11,14 +11,14 @@ class InternalServerErrorComponent {
11
11
  const persistedState = this.location.getState();
12
12
  const operationId = navigationState?.operationId ?? persistedState?.operationId;
13
13
  return operationId && operationId.trim().length > 0 ? operationId : 'Unavailable';
14
- }, ...(ngDevMode ? [{ debugName: "operationIdDisplay" }] : []));
15
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: InternalServerErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
16
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: InternalServerErrorComponent, isStandalone: true, selector: "opal-lib-internal-server-error", ngImport: i0, template: "<div class=\"govuk-grid-column-two-thirds\">\n <h1 class=\"govuk-heading-l\">Sorry, there is a problem with the service</h1>\n <p class=\"govuk-body\" data-testid=\"error-code\">Error code: {{ operationIdDisplay() }}.</p>\n</div>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
14
+ }, ...(ngDevMode ? [{ debugName: "operationIdDisplay" }] : /* istanbul ignore next */ []));
15
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: InternalServerErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
16
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: InternalServerErrorComponent, isStandalone: true, selector: "opal-lib-internal-server-error", ngImport: i0, template: "<div class=\"govuk-grid-column-two-thirds\">\n <h1 class=\"govuk-heading-l\">Sorry, there is a problem with the service</h1>\n <p class=\"govuk-body\" data-testid=\"error-code\">Error code: {{ operationIdDisplay() }}.</p>\n</div>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
17
17
  }
18
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: InternalServerErrorComponent, decorators: [{
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: InternalServerErrorComponent, decorators: [{
19
19
  type: Component,
20
20
  args: [{ selector: 'opal-lib-internal-server-error', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"govuk-grid-column-two-thirds\">\n <h1 class=\"govuk-heading-l\">Sorry, there is a problem with the service</h1>\n <p class=\"govuk-body\" data-testid=\"error-code\">Error code: {{ operationIdDisplay() }}.</p>\n</div>\n" }]
21
21
  }] });
22
22
 
23
23
  export { InternalServerErrorComponent };
24
- //# sourceMappingURL=hmcts-opal-frontend-common-internal-server-error.component-DVPQlZoD.mjs.map
24
+ //# sourceMappingURL=hmcts-opal-frontend-common-internal-server-error.component-CQy0fEO7.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"hmcts-opal-frontend-common-internal-server-error.component-DVPQlZoD.mjs","sources":["../../../projects/opal-frontend-common/pages/internal-server-error/internal-server-error.component.ts","../../../projects/opal-frontend-common/pages/internal-server-error/internal-server-error.component.html"],"sourcesContent":["import { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\nimport { Location } from '@angular/common';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'opal-lib-internal-server-error',\n imports: [],\n templateUrl: './internal-server-error.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class InternalServerErrorComponent {\n private readonly router = inject(Router);\n private readonly location = inject(Location);\n\n public readonly operationIdDisplay = computed(() => {\n const navigationState = this.router.currentNavigation()?.extras?.state as { operationId?: string } | undefined;\n const persistedState = this.location.getState() as { operationId?: string } | undefined;\n const operationId = navigationState?.operationId ?? persistedState?.operationId;\n return operationId && operationId.trim().length > 0 ? operationId : 'Unavailable';\n });\n}\n","<div class=\"govuk-grid-column-two-thirds\">\n <h1 class=\"govuk-heading-l\">Sorry, there is a problem with the service</h1>\n <p class=\"govuk-body\" data-testid=\"error-code\">Error code: {{ operationIdDisplay() }}.</p>\n</div>\n"],"names":[],"mappings":";;;;;MAUa,4BAA4B,CAAA;AACtB,IAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AACvB,IAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AAE5B,IAAA,kBAAkB,GAAG,QAAQ,CAAC,MAAK;AACjD,QAAA,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,KAA6C;QAC9G,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAA0C;QACvF,MAAM,WAAW,GAAG,eAAe,EAAE,WAAW,IAAI,cAAc,EAAE,WAAW;AAC/E,QAAA,OAAO,WAAW,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,GAAG,WAAW,GAAG,aAAa;AACnF,IAAA,CAAC,8DAAC;uGATS,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAA5B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,4BAA4B,0FCVzC,2OAIA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FDMa,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBANxC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,gCAAgC,EAAA,OAAA,EACjC,EAAE,EAAA,eAAA,EAEM,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,2OAAA,EAAA;;;;;"}
1
+ {"version":3,"file":"hmcts-opal-frontend-common-internal-server-error.component-CQy0fEO7.mjs","sources":["../../../projects/opal-frontend-common/pages/internal-server-error/internal-server-error.component.ts","../../../projects/opal-frontend-common/pages/internal-server-error/internal-server-error.component.html"],"sourcesContent":["import { ChangeDetectionStrategy, Component, computed, inject } from '@angular/core';\nimport { Location } from '@angular/common';\nimport { Router } from '@angular/router';\n\n@Component({\n selector: 'opal-lib-internal-server-error',\n imports: [],\n templateUrl: './internal-server-error.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class InternalServerErrorComponent {\n private readonly router = inject(Router);\n private readonly location = inject(Location);\n\n public readonly operationIdDisplay = computed(() => {\n const navigationState = this.router.currentNavigation()?.extras?.state as { operationId?: string } | undefined;\n const persistedState = this.location.getState() as { operationId?: string } | undefined;\n const operationId = navigationState?.operationId ?? persistedState?.operationId;\n return operationId && operationId.trim().length > 0 ? operationId : 'Unavailable';\n });\n}\n","<div class=\"govuk-grid-column-two-thirds\">\n <h1 class=\"govuk-heading-l\">Sorry, there is a problem with the service</h1>\n <p class=\"govuk-body\" data-testid=\"error-code\">Error code: {{ operationIdDisplay() }}.</p>\n</div>\n"],"names":[],"mappings":";;;;;MAUa,4BAA4B,CAAA;AACtB,IAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;AACvB,IAAA,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;AAE5B,IAAA,kBAAkB,GAAG,QAAQ,CAAC,MAAK;AACjD,QAAA,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,EAAE,MAAM,EAAE,KAA6C;QAC9G,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAA0C;QACvF,MAAM,WAAW,GAAG,eAAe,EAAE,WAAW,IAAI,cAAc,EAAE,WAAW;AAC/E,QAAA,OAAO,WAAW,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,GAAG,WAAW,GAAG,aAAa;AACnF,IAAA,CAAC,yFAAC;uGATS,4BAA4B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAA5B,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,4BAA4B,0FCVzC,2OAIA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FDMa,4BAA4B,EAAA,UAAA,EAAA,CAAA;kBANxC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,gCAAgC,EAAA,OAAA,EACjC,EAAE,EAAA,eAAA,EAEM,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,2OAAA,EAAA;;;;;"}
@@ -9,13 +9,13 @@ class AccessDeniedComponent {
9
9
  // For now, test page will act as our 'Dashboard' page
10
10
  this.router.navigate(['/']);
11
11
  }
12
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AccessDeniedComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
13
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.1", type: AccessDeniedComponent, isStandalone: true, selector: "opal-lib-access-denied", ngImport: i0, template: "<div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-two-thirds\">\n <h1 class=\"govuk-heading-l\">Access Denied</h1>\n <p class=\"govuk-body\">You do not have the appropriate permissions to access this page.</p>\n <p class=\"govuk-body\">\n <opal-lib-govuk-button\n buttonClasses=\"govuk-button--secondary\"\n buttonId=\"go-back\"\n (buttonClickEvent)=\"handleGoBackButtonClick()\"\n >\n Back to dashboard</opal-lib-govuk-button\n >\n </p>\n </div>\n</div>\n", dependencies: [{ kind: "component", type: GovukButtonComponent, selector: "opal-lib-govuk-button", inputs: ["buttonId", "type", "buttonClasses"], outputs: ["buttonClickEvent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
12
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AccessDeniedComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
13
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.2.4", type: AccessDeniedComponent, isStandalone: true, selector: "opal-lib-access-denied", ngImport: i0, template: "<div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-two-thirds\">\n <h1 class=\"govuk-heading-l\">Access Denied</h1>\n <p class=\"govuk-body\">You do not have the appropriate permissions to access this page.</p>\n <p class=\"govuk-body\">\n <opal-lib-govuk-button\n buttonClasses=\"govuk-button--secondary\"\n buttonId=\"go-back\"\n (buttonClickEvent)=\"handleGoBackButtonClick()\"\n >\n Back to dashboard</opal-lib-govuk-button\n >\n </p>\n </div>\n</div>\n", dependencies: [{ kind: "component", type: GovukButtonComponent, selector: "opal-lib-govuk-button", inputs: ["buttonId", "type", "buttonClasses"], outputs: ["buttonClickEvent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
14
14
  }
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.1", ngImport: i0, type: AccessDeniedComponent, decorators: [{
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.4", ngImport: i0, type: AccessDeniedComponent, decorators: [{
16
16
  type: Component,
17
17
  args: [{ selector: 'opal-lib-access-denied', imports: [GovukButtonComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-two-thirds\">\n <h1 class=\"govuk-heading-l\">Access Denied</h1>\n <p class=\"govuk-body\">You do not have the appropriate permissions to access this page.</p>\n <p class=\"govuk-body\">\n <opal-lib-govuk-button\n buttonClasses=\"govuk-button--secondary\"\n buttonId=\"go-back\"\n (buttonClickEvent)=\"handleGoBackButtonClick()\"\n >\n Back to dashboard</opal-lib-govuk-button\n >\n </p>\n </div>\n</div>\n" }]
18
18
  }] });
19
19
 
20
20
  export { AccessDeniedComponent };
21
- //# sourceMappingURL=hmcts-opal-frontend-common-pages-access-denied.component-CWImMW7J.mjs.map
21
+ //# sourceMappingURL=hmcts-opal-frontend-common-pages-access-denied.component-w1dJPEXZ.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"hmcts-opal-frontend-common-pages-access-denied.component-CWImMW7J.mjs","sources":["../../../projects/opal-frontend-common/pages/access-denied/access-denied.component.ts","../../../projects/opal-frontend-common/pages/access-denied/access-denied.component.html"],"sourcesContent":["import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { GovukButtonComponent } from '@hmcts/opal-frontend-common/components/govuk/govuk-button';\n\n@Component({\n selector: 'opal-lib-access-denied',\n imports: [GovukButtonComponent],\n templateUrl: './access-denied.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AccessDeniedComponent {\n private readonly router = inject(Router);\n\n public handleGoBackButtonClick(): void {\n // For now, test page will act as our 'Dashboard' page\n this.router.navigate(['/']);\n }\n}\n","<div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-two-thirds\">\n <h1 class=\"govuk-heading-l\">Access Denied</h1>\n <p class=\"govuk-body\">You do not have the appropriate permissions to access this page.</p>\n <p class=\"govuk-body\">\n <opal-lib-govuk-button\n buttonClasses=\"govuk-button--secondary\"\n buttonId=\"go-back\"\n (buttonClickEvent)=\"handleGoBackButtonClick()\"\n >\n Back to dashboard</opal-lib-govuk-button\n >\n </p>\n </div>\n</div>\n"],"names":[],"mappings":";;;;;MAUa,qBAAqB,CAAA;AACf,IAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAEjC,uBAAuB,GAAA;;QAE5B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC;IAC7B;uGANW,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAArB,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECVlC,ihBAeA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDTY,oBAAoB,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,MAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAInB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBANjC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,wBAAwB,WACzB,CAAC,oBAAoB,CAAC,EAAA,eAAA,EAEd,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,ihBAAA,EAAA;;;;;"}
1
+ {"version":3,"file":"hmcts-opal-frontend-common-pages-access-denied.component-w1dJPEXZ.mjs","sources":["../../../projects/opal-frontend-common/pages/access-denied/access-denied.component.ts","../../../projects/opal-frontend-common/pages/access-denied/access-denied.component.html"],"sourcesContent":["import { ChangeDetectionStrategy, Component, inject } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { GovukButtonComponent } from '@hmcts/opal-frontend-common/components/govuk/govuk-button';\n\n@Component({\n selector: 'opal-lib-access-denied',\n imports: [GovukButtonComponent],\n templateUrl: './access-denied.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class AccessDeniedComponent {\n private readonly router = inject(Router);\n\n public handleGoBackButtonClick(): void {\n // For now, test page will act as our 'Dashboard' page\n this.router.navigate(['/']);\n }\n}\n","<div class=\"govuk-grid-row\">\n <div class=\"govuk-grid-column-two-thirds\">\n <h1 class=\"govuk-heading-l\">Access Denied</h1>\n <p class=\"govuk-body\">You do not have the appropriate permissions to access this page.</p>\n <p class=\"govuk-body\">\n <opal-lib-govuk-button\n buttonClasses=\"govuk-button--secondary\"\n buttonId=\"go-back\"\n (buttonClickEvent)=\"handleGoBackButtonClick()\"\n >\n Back to dashboard</opal-lib-govuk-button\n >\n </p>\n </div>\n</div>\n"],"names":[],"mappings":";;;;;MAUa,qBAAqB,CAAA;AACf,IAAA,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;IAEjC,uBAAuB,GAAA;;QAE5B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC;IAC7B;uGANW,qBAAqB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAArB,qBAAqB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,wBAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,ECVlC,ihBAeA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EDTY,oBAAoB,EAAA,QAAA,EAAA,uBAAA,EAAA,MAAA,EAAA,CAAA,UAAA,EAAA,MAAA,EAAA,eAAA,CAAA,EAAA,OAAA,EAAA,CAAA,kBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA;;2FAInB,qBAAqB,EAAA,UAAA,EAAA,CAAA;kBANjC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,wBAAwB,WACzB,CAAC,oBAAoB,CAAC,EAAA,eAAA,EAEd,uBAAuB,CAAC,MAAM,EAAA,QAAA,EAAA,ihBAAA,EAAA;;;;;"}