@pega/angular-sdk-overrides 0.24.9 → 0.25.2

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 (256) hide show
  1. package/lib/designSystemExtension/alert/alert.component.scss +3 -3
  2. package/lib/designSystemExtension/alert/alert.component.ts +0 -1
  3. package/lib/designSystemExtension/alert-banner/alert-banner.component.ts +1 -2
  4. package/lib/designSystemExtension/banner/banner.component.scss +12 -2
  5. package/lib/designSystemExtension/banner/banner.component.ts +0 -1
  6. package/lib/designSystemExtension/case-create-stage/case-create-stage.component.ts +1 -2
  7. package/lib/designSystemExtension/field-group/field-group.component.ts +0 -1
  8. package/lib/designSystemExtension/material-case-summary/material-case-summary.component.html +6 -3
  9. package/lib/designSystemExtension/material-case-summary/material-case-summary.component.scss +7 -35
  10. package/lib/designSystemExtension/material-case-summary/material-case-summary.component.ts +0 -2
  11. package/lib/designSystemExtension/material-details/material-details.component.scss +0 -5
  12. package/lib/designSystemExtension/material-details/material-details.component.ts +0 -1
  13. package/lib/designSystemExtension/material-details-fields/material-details-fields.component.html +4 -4
  14. package/lib/designSystemExtension/material-details-fields/material-details-fields.component.scss +4 -3
  15. package/lib/designSystemExtension/material-details-fields/material-details-fields.component.ts +10 -2
  16. package/lib/designSystemExtension/material-summary-item/material-summary-item.component.scss +2 -17
  17. package/lib/designSystemExtension/material-summary-item/material-summary-item.component.ts +0 -1
  18. package/lib/designSystemExtension/material-summary-list/material-summary-list.component.ts +0 -1
  19. package/lib/designSystemExtension/material-utility/material-utility.component.scss +1 -2
  20. package/lib/designSystemExtension/material-vertical-tabs/material-vertical-tabs.component.scss +1 -1
  21. package/lib/designSystemExtension/material-vertical-tabs/material-vertical-tabs.component.ts +0 -1
  22. package/lib/designSystemExtension/operator/operator.component.html +2 -2
  23. package/lib/designSystemExtension/operator/operator.component.scss +13 -12
  24. package/lib/designSystemExtension/operator/operator.component.ts +5 -6
  25. package/lib/designSystemExtension/pulse/pulse.component.scss +2 -2
  26. package/lib/designSystemExtension/pulse/pulse.component.ts +7 -8
  27. package/lib/designSystemExtension/rich-text-editor/rich-text-editor.component.scss +0 -1
  28. package/lib/designSystemExtension/rich-text-editor/rich-text-editor.component.ts +0 -1
  29. package/lib/designSystemExtension/wss-quick-create/wss-quick-create.component.scss +16 -8
  30. package/lib/designSystemExtension/wss-quick-create/wss-quick-create.component.ts +0 -1
  31. package/lib/field/auto-complete/auto-complete.component.html +0 -2
  32. package/lib/field/auto-complete/auto-complete.component.ts +56 -178
  33. package/lib/field/cancel-alert/cancel-alert.component.html +8 -12
  34. package/lib/field/cancel-alert/cancel-alert.component.scss +2 -3
  35. package/lib/field/cancel-alert/cancel-alert.component.ts +24 -37
  36. package/lib/field/check-box/check-box.component.html +17 -6
  37. package/lib/field/check-box/check-box.component.scss +0 -1
  38. package/lib/field/check-box/check-box.component.ts +32 -157
  39. package/lib/field/currency/currency.component.html +4 -4
  40. package/lib/field/currency/currency.component.ts +65 -175
  41. package/lib/field/date/date.component.html +4 -8
  42. package/lib/field/date/date.component.ts +39 -177
  43. package/lib/field/date-time/date-time.component.html +3 -4
  44. package/lib/field/date-time/date-time.component.ts +46 -146
  45. package/lib/field/decimal/decimal.component.html +4 -3
  46. package/lib/field/decimal/decimal.component.ts +66 -166
  47. package/lib/field/dropdown/dropdown.component.html +1 -0
  48. package/lib/field/dropdown/dropdown.component.ts +158 -153
  49. package/lib/field/email/email.component.ts +28 -148
  50. package/lib/field/field.base.ts +149 -0
  51. package/lib/field/group/group.component.ts +9 -7
  52. package/lib/field/integer/integer.component.ts +30 -152
  53. package/lib/field/list-view-action-buttons/list-view-action-buttons.component.html +1 -1
  54. package/lib/field/list-view-action-buttons/list-view-action-buttons.component.ts +3 -3
  55. package/lib/field/location/config-ext.json +8 -0
  56. package/lib/field/location/location.component.html +45 -0
  57. package/lib/field/location/location.component.scss +18 -0
  58. package/lib/field/location/location.component.spec.ts +22 -0
  59. package/lib/field/location/location.component.ts +385 -0
  60. package/lib/field/multiselect/multiselect.component.ts +56 -151
  61. package/lib/field/multiselect/utils.ts +55 -47
  62. package/lib/field/object-reference/object-reference.component.html +17 -0
  63. package/lib/field/object-reference/object-reference.component.scss +0 -0
  64. package/lib/field/object-reference/object-reference.component.spec.ts +22 -0
  65. package/lib/field/object-reference/object-reference.component.ts +237 -0
  66. package/lib/field/percentage/percentage.component.html +3 -3
  67. package/lib/field/percentage/percentage.component.ts +68 -161
  68. package/lib/field/phone/config-ext.json +1 -1
  69. package/lib/field/phone/phone.component.html +9 -6
  70. package/lib/field/phone/phone.component.scss +9 -0
  71. package/lib/field/phone/phone.component.ts +48 -159
  72. package/lib/field/radio-buttons/radio-buttons.component.html +17 -12
  73. package/lib/field/radio-buttons/radio-buttons.component.scss +4 -2
  74. package/lib/field/radio-buttons/radio-buttons.component.ts +39 -162
  75. package/lib/field/rich-text/rich-text.component.ts +32 -93
  76. package/lib/field/scalar-list/scalar-list.component.ts +20 -77
  77. package/lib/field/selectable-card/selectable-card.component.html +70 -0
  78. package/lib/field/selectable-card/selectable-card.component.scss +11 -0
  79. package/lib/field/selectable-card/selectable-card.component.spec.ts +22 -0
  80. package/lib/field/selectable-card/selectable-card.component.ts +219 -0
  81. package/lib/field/semantic-link/semantic-link.component.html +4 -8
  82. package/lib/field/semantic-link/semantic-link.component.scss +0 -13
  83. package/lib/field/semantic-link/semantic-link.component.ts +165 -6
  84. package/lib/field/text/text.component.scss +0 -1
  85. package/lib/field/text/text.component.ts +8 -5
  86. package/lib/field/text-area/text-area.component.html +4 -1
  87. package/lib/field/text-area/text-area.component.ts +30 -148
  88. package/lib/field/text-content/text-content.component.ts +0 -1
  89. package/lib/field/text-input/text-input.component.ts +28 -150
  90. package/lib/field/time/time.component.html +2 -2
  91. package/lib/field/time/time.component.ts +39 -145
  92. package/lib/field/url/url.component.ts +28 -149
  93. package/lib/field/user-reference/user-reference.component.html +40 -46
  94. package/lib/field/user-reference/user-reference.component.scss +0 -1
  95. package/lib/field/user-reference/user-reference.component.ts +110 -21
  96. package/lib/infra/Containers/flow-container/flow-container.component.html +1 -1
  97. package/lib/infra/Containers/flow-container/flow-container.component.ts +29 -54
  98. package/lib/infra/Containers/flow-container/helpers.ts +2 -2
  99. package/lib/infra/Containers/hybrid-view-container/hybrid-view-container.component.ts +0 -1
  100. package/lib/infra/Containers/modal-view-container/modal-view-container.component.html +1 -11
  101. package/lib/infra/Containers/modal-view-container/modal-view-container.component.ts +6 -19
  102. package/lib/infra/Containers/preview-view-container/preview-view-container.component.ts +1 -1
  103. package/lib/infra/Containers/view-container/helper.ts +55 -0
  104. package/lib/infra/Containers/view-container/view-container.component.ts +6 -19
  105. package/lib/infra/action-buttons/action-buttons.component.html +13 -8
  106. package/lib/infra/action-buttons/action-buttons.component.scss +23 -0
  107. package/lib/infra/action-buttons/action-buttons.component.ts +1 -3
  108. package/lib/infra/assignment/assignment.component.html +1 -1
  109. package/lib/infra/assignment/assignment.component.ts +90 -47
  110. package/lib/infra/assignment-card/assignment-card.component.html +2 -2
  111. package/lib/infra/assignment-card/assignment-card.component.scss +0 -4
  112. package/lib/infra/assignment-card/assignment-card.component.ts +21 -5
  113. package/lib/infra/dashboard-filter/dashboard-filter.component.ts +0 -1
  114. package/lib/infra/defer-load/defer-load.component.html +6 -2
  115. package/lib/infra/defer-load/defer-load.component.ts +24 -16
  116. package/lib/infra/error-boundary/error-boundary.component.ts +0 -1
  117. package/lib/infra/multi-step/multi-step.component.scss +1 -21
  118. package/lib/infra/multi-step/multi-step.component.ts +0 -1
  119. package/lib/infra/navbar/navbar.component.html +25 -28
  120. package/lib/infra/navbar/navbar.component.scss +16 -4
  121. package/lib/infra/navbar/navbar.component.ts +11 -9
  122. package/lib/infra/reference/reference.component.ts +77 -90
  123. package/lib/infra/region/region.component.ts +0 -1
  124. package/lib/infra/root-container/root-container.component.html +2 -15
  125. package/lib/infra/root-container/root-container.component.scss +0 -1
  126. package/lib/infra/root-container/root-container.component.ts +28 -35
  127. package/lib/infra/stages/stages.component.html +2 -2
  128. package/lib/infra/stages/stages.component.scss +9 -37
  129. package/lib/infra/stages/stages.component.ts +4 -3
  130. package/lib/infra/view/view.component.html +7 -20
  131. package/lib/infra/view/view.component.ts +20 -5
  132. package/lib/template/advanced-search/advanced-search.component.html +12 -0
  133. package/lib/template/advanced-search/advanced-search.component.scss +0 -0
  134. package/lib/template/advanced-search/advanced-search.component.spec.ts +0 -0
  135. package/lib/template/advanced-search/advanced-search.component.ts +112 -0
  136. package/lib/template/advanced-search/advanced-search.service.ts +27 -0
  137. package/lib/template/advanced-search/search-group/persist-utils.ts +56 -0
  138. package/lib/template/advanced-search/search-groups/search-groups.component.html +32 -0
  139. package/lib/template/advanced-search/search-groups/search-groups.component.scss +0 -0
  140. package/lib/template/advanced-search/search-groups/search-groups.component.spec.ts +0 -0
  141. package/lib/template/advanced-search/search-groups/search-groups.component.ts +294 -0
  142. package/lib/template/advanced-search/search-groups/utils.ts +29 -0
  143. package/lib/template/app-shell/app-shell.component.html +4 -1
  144. package/lib/template/app-shell/app-shell.component.scss +0 -3
  145. package/lib/template/app-shell/app-shell.component.ts +66 -10
  146. package/lib/template/banner-page/banner-page.component.ts +0 -1
  147. package/lib/template/base/details-template-base.ts +67 -0
  148. package/lib/template/base/form-template-base.ts +16 -0
  149. package/lib/template/case-summary/case-summary.component.scss +0 -2
  150. package/lib/template/case-summary/case-summary.component.ts +7 -23
  151. package/lib/template/case-view/case-view.component.html +7 -7
  152. package/lib/template/case-view/case-view.component.scss +18 -10
  153. package/lib/template/case-view/case-view.component.ts +9 -15
  154. package/lib/template/confirmation/confirmation.component.html +1 -1
  155. package/lib/template/confirmation/confirmation.component.ts +1 -2
  156. package/lib/template/data-reference/data-reference-advanced-search.service.ts +16 -0
  157. package/lib/template/data-reference/data-reference.component.html +11 -8
  158. package/lib/template/data-reference/data-reference.component.ts +377 -148
  159. package/lib/template/data-reference/search-form/search-form.component.html +39 -0
  160. package/lib/template/data-reference/search-form/search-form.component.scss +11 -0
  161. package/lib/template/data-reference/search-form/search-form.component.spec.ts +0 -0
  162. package/lib/template/data-reference/search-form/search-form.component.ts +167 -0
  163. package/lib/template/data-reference/search-form/tabsData.ts +160 -0
  164. package/lib/template/data-reference/utils.ts +92 -0
  165. package/lib/template/default-form/default-form.component.html +0 -4
  166. package/lib/template/default-form/default-form.component.ts +50 -26
  167. package/lib/template/default-page/default-page.component.html +34 -0
  168. package/lib/template/default-page/default-page.component.scss +31 -0
  169. package/lib/template/default-page/default-page.component.spec.ts +24 -0
  170. package/lib/template/default-page/default-page.component.ts +64 -0
  171. package/lib/template/details/details.component.ts +7 -42
  172. package/lib/template/details-narrow-wide/details-narrow-wide.component.ts +6 -40
  173. package/lib/template/details-one-column/details-one-column.component.ts +7 -43
  174. package/lib/template/details-sub-tabs/details-sub-tabs.component.html +1 -2
  175. package/lib/template/details-sub-tabs/details-sub-tabs.component.ts +5 -38
  176. package/lib/template/details-three-column/details-three-column.component.ts +7 -44
  177. package/lib/template/details-two-column/details-two-column.component.ts +8 -45
  178. package/lib/template/details-wide-narrow/details-wide-narrow.component.ts +7 -43
  179. package/lib/template/dynamic-tabs/dynamic-tabs.component.html +3 -0
  180. package/lib/template/dynamic-tabs/dynamic-tabs.component.ts +8 -4
  181. package/lib/template/field-group-list/field-group-list.component.scss +0 -1
  182. package/lib/template/field-group-list/field-group-list.component.ts +0 -1
  183. package/lib/template/field-group-template/field-group-template.component.html +7 -7
  184. package/lib/template/field-group-template/field-group-template.component.scss +8 -0
  185. package/lib/template/field-group-template/field-group-template.component.ts +68 -48
  186. package/lib/template/field-value-list/field-value-list.component.html +2 -2
  187. package/lib/template/field-value-list/field-value-list.component.scss +6 -1
  188. package/lib/template/field-value-list/field-value-list.component.ts +0 -1
  189. package/lib/template/inline-dashboard/inline-dashboard.component.ts +0 -1
  190. package/lib/template/inline-dashboard-page/inline-dashboard-page.component.ts +2 -3
  191. package/lib/template/list-page/list-page.component.ts +0 -1
  192. package/lib/template/list-view/list-view.component.html +14 -4
  193. package/lib/template/list-view/list-view.component.scss +30 -19
  194. package/lib/template/list-view/list-view.component.ts +179 -95
  195. package/lib/template/list-view/listViewHelpers.ts +4 -10
  196. package/lib/template/list-view/utils.ts +27 -7
  197. package/lib/template/multi-reference-readonly/multi-reference-readonly.component.ts +0 -1
  198. package/lib/template/narrow-wide-form/narrow-wide-form.component.ts +1 -2
  199. package/lib/template/object-page/object-page.component.html +1 -0
  200. package/lib/template/object-page/object-page.component.scss +0 -0
  201. package/lib/template/object-page/object-page.component.spec.ts +22 -0
  202. package/lib/template/object-page/object-page.component.ts +14 -0
  203. package/lib/template/one-column/one-column.component.ts +4 -4
  204. package/lib/template/one-column-page/one-column-page.component.ts +0 -1
  205. package/lib/template/one-column-tab/one-column-tab.component.scss +1 -1
  206. package/lib/template/one-column-tab/one-column-tab.component.ts +1 -2
  207. package/lib/template/page/page.component.ts +1 -2
  208. package/lib/template/promoted-filters/promoted-filters.component.ts +1 -2
  209. package/lib/template/repeating-structures/repeating-structures.component.ts +1 -3
  210. package/lib/template/self-service-case-view/self-service-case-view.component.html +80 -0
  211. package/lib/template/self-service-case-view/self-service-case-view.component.scss +124 -0
  212. package/lib/template/self-service-case-view/self-service-case-view.component.spec.ts +24 -0
  213. package/lib/template/self-service-case-view/self-service-case-view.component.ts +216 -0
  214. package/lib/template/simple-table/simple-table.component.ts +0 -2
  215. package/lib/template/simple-table-manual/helpers.ts +127 -11
  216. package/lib/template/simple-table-manual/simple-table-manual.component.html +27 -8
  217. package/lib/template/simple-table-manual/simple-table-manual.component.scss +16 -17
  218. package/lib/template/simple-table-manual/simple-table-manual.component.ts +118 -58
  219. package/lib/template/simple-table-select/simple-table-select.component.ts +3 -4
  220. package/lib/template/single-reference-readonly/single-reference-readonly.component.html +4 -1
  221. package/lib/template/single-reference-readonly/single-reference-readonly.component.scss +21 -0
  222. package/lib/template/single-reference-readonly/single-reference-readonly.component.ts +104 -4
  223. package/lib/template/sub-tabs/sub-tabs.component.ts +0 -1
  224. package/lib/template/three-column/three-column.component.ts +4 -4
  225. package/lib/template/three-column-page/three-column-page.component.ts +0 -1
  226. package/lib/template/two-column/two-column.component.ts +4 -4
  227. package/lib/template/two-column-page/two-column-page.component.ts +0 -1
  228. package/lib/template/two-column-tab/two-column-tab.component.ts +1 -2
  229. package/lib/template/utils.ts +58 -0
  230. package/lib/template/wide-narrow-form/wide-narrow-form.component.ts +4 -4
  231. package/lib/template/wide-narrow-page/wide-narrow-page.component.ts +1 -2
  232. package/lib/template/wss-nav-bar/wss-nav-bar.component.html +5 -4
  233. package/lib/template/wss-nav-bar/wss-nav-bar.component.scss +2 -8
  234. package/lib/template/wss-nav-bar/wss-nav-bar.component.ts +3 -11
  235. package/lib/widget/app-announcement/app-announcement.component.html +1 -2
  236. package/lib/widget/app-announcement/app-announcement.component.scss +2 -2
  237. package/lib/widget/app-announcement/app-announcement.component.ts +0 -1
  238. package/lib/widget/attachment/Attachment.types.ts +92 -0
  239. package/lib/widget/attachment/AttachmentUtils.ts +287 -0
  240. package/lib/widget/attachment/attachment.component.html +3 -3
  241. package/lib/widget/attachment/attachment.component.scss +2 -5
  242. package/lib/widget/attachment/attachment.component.ts +256 -259
  243. package/lib/widget/case-history/case-history.component.ts +0 -1
  244. package/lib/widget/feed-container/feed-container.component.scss +3 -9
  245. package/lib/widget/feed-container/feed-container.component.ts +9 -12
  246. package/lib/widget/file-utility/file-utility.component.html +3 -3
  247. package/lib/widget/file-utility/file-utility.component.scss +5 -16
  248. package/lib/widget/file-utility/file-utility.component.ts +2 -6
  249. package/lib/widget/list-utility/list-utility.component.scss +3 -5
  250. package/lib/widget/list-utility/list-utility.component.ts +0 -1
  251. package/lib/widget/quick-create/quick-create.component.ts +0 -1
  252. package/lib/widget/todo/todo.component.html +13 -11
  253. package/lib/widget/todo/todo.component.scss +19 -11
  254. package/lib/widget/todo/todo.component.ts +101 -87
  255. package/lib/widget/utility/utility.component.ts +0 -1
  256. package/package.json +1 -1
@@ -1,14 +1,24 @@
1
- import { Component, OnInit, Input, Output, EventEmitter, forwardRef, OnChanges } from '@angular/core';
1
+ import { Component, OnInit, Input, Output, EventEmitter, forwardRef, OnChanges, SimpleChanges } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
3
  import { FormGroup, ReactiveFormsModule } from '@angular/forms';
4
4
  import { ReferenceComponent } from '@pega/angular-sdk-components';
5
5
  import { ComponentMapperComponent } from '@pega/angular-sdk-components';
6
6
 
7
+ function isChildrenUpdated(children) {
8
+ if (!children || children.firstChange) {
9
+ return false;
10
+ }
11
+ for (let i = 0; i < children.previousValue.length; i++) {
12
+ if (!PCore.isDeepEqual(children.previousValue[i].getPConnect().getConfigProps(), children.currentValue[i].getPConnect().getConfigProps())) {
13
+ return true;
14
+ }
15
+ }
16
+ return false;
17
+ }
7
18
  @Component({
8
19
  selector: 'app-assignment-card',
9
20
  templateUrl: './assignment-card.component.html',
10
21
  styleUrls: ['./assignment-card.component.scss'],
11
- standalone: true,
12
22
  imports: [CommonModule, ReactiveFormsModule, forwardRef(() => ComponentMapperComponent)]
13
23
  })
14
24
  export class AssignmentCardComponent implements OnInit, OnChanges {
@@ -19,18 +29,24 @@ export class AssignmentCardComponent implements OnInit, OnChanges {
19
29
  @Input() arChildren$: any[];
20
30
  @Input() updateToken$: number;
21
31
 
32
+ childrenArray: any[] = [];
33
+
22
34
  @Output() actionButtonClick: EventEmitter<any> = new EventEmitter();
23
35
 
24
36
  ngOnInit(): void {
25
37
  // Children may contain 'reference' component, so we need to
26
38
  // normalize them
27
- this.arChildren$ = ReferenceComponent.normalizePConnArray(this.arChildren$);
39
+ this.childrenArray = ReferenceComponent.normalizePConnArray(this.arChildren$);
28
40
  }
29
41
 
30
- ngOnChanges() {
42
+ ngOnChanges(changes: SimpleChanges) {
31
43
  // Children may contain 'reference' component, so we need to
32
44
  // normalize them
33
- this.arChildren$ = ReferenceComponent.normalizePConnArray(this.arChildren$);
45
+
46
+ const { arChildren$ } = changes;
47
+ if (isChildrenUpdated(arChildren$)) {
48
+ this.childrenArray = ReferenceComponent.normalizePConnArray(this.arChildren$);
49
+ }
34
50
  }
35
51
 
36
52
  onActionButtonClick(oData: any) {
@@ -14,7 +14,6 @@ import { getFilterExpression, getFormattedDate, createFilter, combineFilters } f
14
14
  selector: 'app-dashboard-filter',
15
15
  templateUrl: './dashboard-filter.component.html',
16
16
  styleUrls: ['./dashboard-filter.component.scss'],
17
- standalone: true,
18
17
  imports: [
19
18
  CommonModule,
20
19
  MatFormFieldModule,
@@ -1,3 +1,7 @@
1
- <div *ngIf="loadedPConn$">
2
- <component-mapper [name]="componentName$" [props]="{ pConn$: loadedPConn$ }" errorMsg="Defer Load Missing: {{ componentName$ }}"></component-mapper>
1
+ <div *ngIf="childComponentPConnect">
2
+ <component-mapper
3
+ [name]="childComponentPConnect.getComponentName()"
4
+ [props]="{ pConn$: childComponentPConnect, formGroup$ }"
5
+ errorMsg="Defer Load Missing: {{ childComponentPConnect.getComponentName() }}"
6
+ ></component-mapper>
3
7
  </div>
@@ -1,4 +1,4 @@
1
- import { Component, OnInit, Input, forwardRef, OnDestroy, OnChanges } from '@angular/core';
1
+ import { Component, OnInit, Input, forwardRef, OnDestroy, OnChanges, SimpleChanges } from '@angular/core';
2
2
  import { CommonModule } from '@angular/common';
3
3
  import { publicConstants } from '@pega/pcore-pconnect-typedefs/constants';
4
4
  import { ReferenceComponent } from '@pega/angular-sdk-components';
@@ -15,16 +15,14 @@ import { AngularPConnectData, AngularPConnectService } from '@pega/angular-sdk-c
15
15
  selector: 'app-defer-load',
16
16
  templateUrl: './defer-load.component.html',
17
17
  styleUrls: ['./defer-load.component.scss'],
18
- standalone: true,
19
18
  imports: [CommonModule, forwardRef(() => ComponentMapperComponent)]
20
19
  })
21
20
  export class DeferLoadComponent implements OnInit, OnDestroy, OnChanges {
22
21
  @Input() pConn$: typeof PConnect;
23
- @Input() loadData$: any;
22
+ @Input() formGroup$;
24
23
  @Input() name;
25
24
 
26
- componentName$: string;
27
- loadedPConn$: any;
25
+ childComponentPConnect: typeof PConnect;
28
26
  bShowDefer$ = false;
29
27
 
30
28
  angularPConnectData: AngularPConnectData = {};
@@ -38,6 +36,7 @@ export class DeferLoadComponent implements OnInit, OnDestroy, OnChanges {
38
36
  CASE: any;
39
37
  PAGE: any;
40
38
  DATA: any;
39
+ lastUpdateCaseTime;
41
40
  constructor(private angularPConnect: AngularPConnectService) {
42
41
  this.constants = PCore.getConstants();
43
42
  }
@@ -45,7 +44,7 @@ export class DeferLoadComponent implements OnInit, OnDestroy, OnChanges {
45
44
  ngOnInit(): void {
46
45
  this.angularPConnectData = this.angularPConnect.registerAndSubscribeComponent(this, this.onStateChange);
47
46
  // The below call is causing an error while creating/opening a case, hence commenting it out
48
- // this.loadActiveTab();
47
+ this.updateSelf();
49
48
  }
50
49
 
51
50
  ngOnDestroy(): void {
@@ -58,13 +57,21 @@ export class DeferLoadComponent implements OnInit, OnDestroy, OnChanges {
58
57
  // Should always check the bridge to see if the component should
59
58
  // update itself (re-render)
60
59
  const theRequestedAssignment = this.pConn$.getValue(PCore.getConstants().CASE_INFO.ASSIGNMENT_LABEL);
61
- if (theRequestedAssignment !== this.currentLoadedAssignment) {
60
+ const lastUpdateCaseTime = this.pConn$.getValue('caseInfo.lastUpdateTime');
61
+ if (theRequestedAssignment !== this.currentLoadedAssignment || (lastUpdateCaseTime && lastUpdateCaseTime !== this.lastUpdateCaseTime)) {
62
62
  this.currentLoadedAssignment = theRequestedAssignment;
63
- this.loadActiveTab();
63
+ this.lastUpdateCaseTime = lastUpdateCaseTime;
64
+ this.updateSelf();
64
65
  }
65
66
  }
66
67
 
67
- ngOnChanges() {
68
+ ngOnChanges(changes: SimpleChanges) {
69
+ if (!Object.values(changes).every(val => val.firstChange === true)) {
70
+ this.updateSelf();
71
+ }
72
+ }
73
+
74
+ updateSelf() {
68
75
  this.loadViewCaseID = this.pConn$.getValue(this.constants.PZINSKEY) || this.pConn$.getValue(this.constants.CASE_INFO.CASE_INFO_ID);
69
76
  let containerItemData;
70
77
  const targetName = this.pConn$.getTarget();
@@ -81,7 +88,7 @@ export class DeferLoadComponent implements OnInit, OnDestroy, OnChanges {
81
88
  this.resourceType = resourceType;
82
89
  this.isContainerPreview = /preview_[0-9]*/g.test(this.pConn$.getContextName());
83
90
 
84
- const theConfigProps: any = this.pConn$.getConfigProps();
91
+ const theConfigProps = this.pConn$.getConfigProps();
85
92
  this.deferLoadId = theConfigProps.deferLoadId;
86
93
  this.name = this.name || theConfigProps.name;
87
94
 
@@ -90,9 +97,9 @@ export class DeferLoadComponent implements OnInit, OnDestroy, OnChanges {
90
97
 
91
98
  getViewOptions = () => ({
92
99
  viewContext: this.resourceType,
93
- pageClass: this.loadViewCaseID ? '' : this.pConn$.getDataObject().pyPortal.classID,
94
- container: this.isContainerPreview ? 'preview' : null,
95
- containerName: this.isContainerPreview ? 'preview' : null,
100
+ pageClass: this.loadViewCaseID ? '' : this.pConn$.getDataObject()?.pyPortal?.classID,
101
+ container: this.isContainerPreview ? 'preview' : undefined,
102
+ containerName: this.isContainerPreview ? 'preview' : undefined,
96
103
  updateData: this.isContainerPreview
97
104
  });
98
105
 
@@ -116,9 +123,10 @@ export class DeferLoadComponent implements OnInit, OnDestroy, OnChanges {
116
123
  }
117
124
  };
118
125
  const configObject = PCore.createPConnect(config);
119
- configObject.getPConnect().setInheritedProp('displayMode', 'LABELS_LEFT');
120
- this.loadedPConn$ = ReferenceComponent.normalizePConn(configObject.getPConnect());
121
- this.componentName$ = this.loadedPConn$.getComponentName();
126
+ configObject.getPConnect().setInheritedProp('displayMode', 'DISPLAY_ONLY');
127
+
128
+ this.childComponentPConnect = ReferenceComponent.normalizePConn(configObject.getPConnect());
129
+
122
130
  if (this.deferLoadId) {
123
131
  PCore.getDeferLoadManager().stop(this.deferLoadId, this.pConn$.getContextName());
124
132
  }
@@ -5,7 +5,6 @@ import { CommonModule } from '@angular/common';
5
5
  selector: 'app-error-boundary',
6
6
  templateUrl: './error-boundary.component.html',
7
7
  styleUrls: ['./error-boundary.component.scss'],
8
- standalone: true,
9
8
  imports: [CommonModule]
10
9
  })
11
10
  export class ErrorBoundaryComponent {
@@ -1,5 +1,5 @@
1
1
  .psdk-case-view-divider {
2
- border-bottom: 0.0625rem solid var(--app-neutral-light-color);
2
+ border-bottom: 0.0625rem solid var(--mat-sys-outline-variant);
3
3
  }
4
4
 
5
5
  .psdk-icon {
@@ -8,11 +8,9 @@
8
8
  }
9
9
 
10
10
  .psdk-icon-current {
11
- color: var(--app-primary-color);
12
11
  }
13
12
 
14
13
  .psdk-icon-not-current {
15
- color: var(--app-neutral-color);
16
14
  }
17
15
 
18
16
  .psdk-current-svg-icon {
@@ -35,16 +33,13 @@ mat-horizontal-stepper {
35
33
  .psdk-sub-step-current {
36
34
  padding-left: 0.625rem;
37
35
  font-weight: bold;
38
- color: var(--app-label-selected-color);
39
36
  }
40
37
 
41
38
  .psdk-sub-step-not-current {
42
39
  padding-left: 0.625rem;
43
- color: var(--app-label-color);
44
40
  }
45
41
 
46
42
  .psdk-flow-container-top {
47
- background-color: var(--app-form-color);
48
43
  padding: 0rem 0.625rem;
49
44
  border-radius: 0.3125rem;
50
45
  }
@@ -81,8 +76,6 @@ mat-horizontal-stepper {
81
76
 
82
77
  .psdk-vertical-step-icon {
83
78
  margin-right: 12px;
84
- background-color: var(--app-neutral-color);
85
- color: var(--app-form-color);
86
79
  border-radius: 50%;
87
80
  height: 24px;
88
81
  width: 24px;
@@ -95,13 +88,10 @@ mat-horizontal-stepper {
95
88
  top: 50%;
96
89
  left: 50%;
97
90
  transform: translate(-50%, -50%);
98
- color: var(--app-form-color);
99
91
  }
100
92
 
101
93
  .psdk-vertical-step-icon-selected {
102
94
  margin-right: 12px;
103
- background-color: var(--app-primary-color);
104
- color: var(--app-form-color);
105
95
  border-radius: 50%;
106
96
  height: 24px;
107
97
  width: 24px;
@@ -110,7 +100,6 @@ mat-horizontal-stepper {
110
100
  }
111
101
 
112
102
  .psdk-vertical-step-label {
113
- color: var(--app-label-color);
114
103
  display: inline-block;
115
104
  white-space: nowrap;
116
105
  overflow: hidden;
@@ -122,7 +111,6 @@ mat-horizontal-stepper {
122
111
  }
123
112
 
124
113
  .psdk-vertical-step-label-selected {
125
- color: var(--app-label-selected-color);
126
114
  display: inline-block;
127
115
  white-space: nowrap;
128
116
  overflow: hidden;
@@ -152,7 +140,6 @@ mat-horizontal-stepper {
152
140
  border-left-style: solid;
153
141
  top: -16px;
154
142
  bottom: -16px;
155
- border-left-color: var(--app-multi-step-border-color);
156
143
  }
157
144
 
158
145
  .psdk-horizontal-stepper {
@@ -182,8 +169,6 @@ mat-horizontal-stepper {
182
169
  }
183
170
 
184
171
  .psdk-horizontal-step-icon {
185
- background-color: var(--app-neutral-color);
186
- color: var(--app-form-color);
187
172
  border-radius: 50%;
188
173
  height: 24px;
189
174
  width: 24px;
@@ -203,8 +188,6 @@ mat-horizontal-stepper {
203
188
  }
204
189
 
205
190
  .psdk-horizontal-step-icon-selected {
206
- background-color: var(--app-primary-color);
207
- color: var(--app-form-color);
208
191
  border-radius: 50%;
209
192
  height: 24px;
210
193
  width: 24px;
@@ -216,7 +199,6 @@ mat-horizontal-stepper {
216
199
  }
217
200
 
218
201
  .psdk-horizontal-step-label {
219
- color: var(--app-label-color);
220
202
  display: inline-block;
221
203
  min-width: 50px;
222
204
  vertical-align: middle;
@@ -226,7 +208,6 @@ mat-horizontal-stepper {
226
208
  }
227
209
 
228
210
  .psdk-horizontal-step-label-selected {
229
- color: var(--app-label-selected-color);
230
211
  display: inline-block;
231
212
  min-width: 50px;
232
213
  vertical-align: middle;
@@ -236,7 +217,6 @@ mat-horizontal-stepper {
236
217
  }
237
218
 
238
219
  .psdk-horizontal-step-line {
239
- border-top-color: var(--app-multi-step-border-color);
240
220
  border-top-width: 1px;
241
221
  border-top-style: solid;
242
222
  flex: auto;
@@ -9,7 +9,6 @@ import { ComponentMapperComponent } from '@pega/angular-sdk-components';
9
9
  templateUrl: './multi-step.component.html',
10
10
  styleUrls: ['./multi-step.component.scss'],
11
11
  providers: [Utils],
12
- standalone: true,
13
12
  imports: [CommonModule, forwardRef(() => ComponentMapperComponent)]
14
13
  })
15
14
  export class MultiStepComponent implements OnInit {
@@ -8,35 +8,33 @@
8
8
  </div>
9
9
  </div>
10
10
  <div class="psdk-nav-divider"></div>
11
- <div>
12
- <mat-list>
13
- <mat-list-item id="create-case-button" (click)="navPanelCreateButtonClick()">
14
- <div class="flex-box">
15
- <img class="psdk-nav-svg-icon" src="{{ navExpandCollapse$ }}" />
16
- <span class="psdk-nav-button-span">Create</span>
17
- </div>
11
+ <mat-list>
12
+ <mat-list-item id="create-case-button" (click)="navPanelCreateButtonClick()">
13
+ <div class="flex-box">
14
+ <img class="psdk-nav-svg-icon" src="{{ navExpandCollapse$ }}" />
15
+ <span class="psdk-nav-button-span">Create</span>
16
+ </div>
17
+ </mat-list-item>
18
+ <mat-list *ngIf="bShowCaseTypes$" style="margin-left: 40px">
19
+ <mat-list-item
20
+ id="case-list-item"
21
+ *ngFor="let caseType of caseTypes$"
22
+ (click)="navPanelCreateCaseType(caseType.pyClassName, caseType.pyFlowType)"
23
+ >
24
+ <span class="psdk-nav-button-span">{{
25
+ localeUtils.getLocaleValue(caseType.pyLabel, '', localeUtils.getCaseLocaleReference(caseType.pyClassName))
26
+ }}</span>
18
27
  </mat-list-item>
19
- <mat-list *ngIf="bShowCaseTypes$" style="margin-left: 40px">
20
- <mat-list-item
21
- id="case-list-item"
22
- *ngFor="let caseType of caseTypes$"
23
- (click)="navPanelCreateCaseType(caseType.pyClassName, caseType.pyFlowType)"
24
- >
25
- <span class="psdk-nav-button-span">{{ localeUtils.getLocaleValue(caseType.pyLabel, '', localeReference) }}</span>
26
- </mat-list-item>
27
- </mat-list>
28
28
  </mat-list>
29
- </div>
30
- <div style="height: 100%">
31
- <mat-list *ngFor="let page of navPages$">
32
- <mat-list-item (click)="navPanelButtonClick(page)">
33
- <div class="flex-box">
34
- <img class="psdk-nav-svg-icon" src="{{ page.iconName }}" />
35
- <span class="psdk-nav-button-span">{{ localeUtils.getLocaleValue(page.pyLabel, '', localeReference) }}</span>
36
- </div>
37
- </mat-list-item>
38
- </mat-list>
39
- </div>
29
+ </mat-list>
30
+ <mat-list *ngFor="let page of navPages$">
31
+ <mat-list-item (click)="navPanelButtonClick(page)">
32
+ <div class="flex-box">
33
+ <img class="psdk-nav-svg-icon" src="{{ page.iconName }}" />
34
+ <span class="psdk-nav-button-span">{{ page.name }}</span>
35
+ </div>
36
+ </mat-list-item>
37
+ </mat-list>
40
38
  <div class="psdk-nav-divider"></div>
41
39
  <div>
42
40
  <mat-list id="profile">
@@ -47,7 +45,6 @@
47
45
  </div>
48
46
  </mat-list-item>
49
47
  <mat-menu #menu="matMenu">
50
- <button mat-menu-item>Profile</button>
51
48
  <button mat-menu-item (click)="navPanelLogoutClick()">{{ localizedVal('Log off', localeCategory) }}</button>
52
49
  </mat-menu>
53
50
  </mat-list>
@@ -5,7 +5,7 @@ $transition-fast: 0.1s !default;
5
5
  $natural-ease: cubic-bezier(0.4, 0.6, 0.1, 1) !default;
6
6
 
7
7
  .psdk-nav-divider {
8
- border-bottom: 0.0625rem solid var(--app-divider-color);
8
+ border-bottom: 0.0625rem solid var(--mat-sys-outline-variant);
9
9
  width: 100%;
10
10
  align-items: center;
11
11
  }
@@ -119,8 +119,8 @@ $natural-ease: cubic-bezier(0.4, 0.6, 0.1, 1) !default;
119
119
  align-items: center;
120
120
  text-align: center;
121
121
  display: inline-flex;
122
- background: var(--app-neutral-color);
123
- color: var(--app-form-color);
122
+ background: var(--mat-sys-background);
123
+ color: var(--mat-sys-on-background);
124
124
  font-weight: normal;
125
125
  font-size: 1rem;
126
126
  }
@@ -140,7 +140,7 @@ mat-list-item {
140
140
  height: auto !important;
141
141
 
142
142
  &:hover {
143
- background-color: var(--app-label-color);
143
+ background-color: rgba(0, 0, 0, 0.54);
144
144
  }
145
145
 
146
146
  .flex-box {
@@ -150,3 +150,15 @@ mat-list-item {
150
150
  text-align: left;
151
151
  }
152
152
  }
153
+
154
+ .theme-menu-item {
155
+ display: flex;
156
+ align-items: center;
157
+ gap: 12px;
158
+ }
159
+
160
+ .color-preview {
161
+ width: 24px;
162
+ height: 24px;
163
+ border-radius: 50%;
164
+ }
@@ -7,8 +7,6 @@ import { AngularPConnectData, AngularPConnectService } from '@pega/angular-sdk-c
7
7
  import { ProgressSpinnerService } from '@pega/angular-sdk-components';
8
8
  import { Utils } from '@pega/angular-sdk-components';
9
9
 
10
- declare const window: any;
11
-
12
10
  interface NavBarProps {
13
11
  // If any, enter additional props that only exist on this component
14
12
  showAppName?: boolean;
@@ -19,7 +17,6 @@ interface NavBarProps {
19
17
  templateUrl: './navbar.component.html',
20
18
  styleUrls: ['./navbar.component.scss'],
21
19
  providers: [Utils],
22
- standalone: true,
23
20
  imports: [CommonModule, MatListModule, MatMenuModule]
24
21
  })
25
22
  export class NavbarComponent implements OnInit, OnDestroy {
@@ -36,11 +33,11 @@ export class NavbarComponent implements OnInit, OnDestroy {
36
33
  navExpandCollapse$: string;
37
34
  bShowCaseTypes$ = false;
38
35
 
39
- portalApp$ = '';
36
+ portalApp$: string | undefined = '';
40
37
  portalLogoImage$: string;
41
38
  showAppName$?: boolean = false;
42
39
 
43
- portalOperator$: string;
40
+ portalOperator$: string | undefined;
44
41
  portalOperatorInitials$: string;
45
42
 
46
43
  actionsAPI: any;
@@ -52,7 +49,6 @@ export class NavbarComponent implements OnInit, OnDestroy {
52
49
  localizedVal: any;
53
50
  localeCategory = 'AppShell';
54
51
  localeUtils = PCore.getLocaleUtils();
55
- localeReference: any;
56
52
  constructor(
57
53
  private angularPConnect: AngularPConnectService,
58
54
  private chRef: ChangeDetectorRef,
@@ -116,11 +112,17 @@ export class NavbarComponent implements OnInit, OnDestroy {
116
112
 
117
113
  // making a copy, so can add info
118
114
  this.navPages$ = JSON.parse(JSON.stringify(this.pages$));
119
-
115
+ // @ts-ignore
116
+ const localeReference = PCore.getLocaleUtils().getPortalLocaleReference() || this.pConn$.getValue('.pyLocaleReference');
120
117
  this.navPages$.forEach(page => {
118
+ const destinationObject: any = {};
119
+ this.pConn$.resolveConfigProps(
120
+ { defaultHeading: page.pyDefaultHeading || page.pyLabel, localeReference: page.pyLocalizationReference },
121
+ destinationObject
122
+ );
123
+ page.name = this.localeUtils.getLocaleValue(destinationObject.defaultHeading, '', destinationObject.localeReference || localeReference);
121
124
  page.iconName = this.utils.getImageSrc(page.pxPageViewIcon, this.utils.getSDKStaticContentUrl());
122
125
  });
123
- this.localeReference = this.pConn$.getValue('.pyLocaleReference');
124
126
  this.actionsAPI = this.pConn$.getActionsApi();
125
127
  this.createWork = this.actionsAPI.createWork.bind(this.actionsAPI);
126
128
  this.showPage = this.actionsAPI.showPage.bind(this.actionsAPI);
@@ -131,7 +133,7 @@ export class NavbarComponent implements OnInit, OnDestroy {
131
133
 
132
134
  this.portalLogoImage$ = this.utils.getSDKStaticContentUrl().concat('assets/pzpega-logo-mark.svg');
133
135
  this.portalOperator$ = PCore.getEnvironmentInfo().getOperatorName();
134
- this.portalOperatorInitials$ = this.utils.getInitials(this.portalOperator$);
136
+ this.portalOperatorInitials$ = this.utils.getInitials(this.portalOperator$ ?? '');
135
137
  this.showAppName$ = this.configProps$.showAppName;
136
138
 
137
139
  this.portalApp$ = PCore.getEnvironmentInfo().getApplicationLabel();