@pega/angular-sdk-overrides 24.2.10 → 25.1.10

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 (257) 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 +0 -1
  4. package/lib/designSystemExtension/banner/banner.component.html +1 -1
  5. package/lib/designSystemExtension/banner/banner.component.scss +17 -3
  6. package/lib/designSystemExtension/banner/banner.component.ts +0 -1
  7. package/lib/designSystemExtension/case-create-stage/case-create-stage.component.ts +0 -1
  8. package/lib/designSystemExtension/field-group/field-group.component.ts +0 -1
  9. package/lib/designSystemExtension/material-case-summary/material-case-summary.component.html +6 -3
  10. package/lib/designSystemExtension/material-case-summary/material-case-summary.component.scss +5 -34
  11. package/lib/designSystemExtension/material-case-summary/material-case-summary.component.ts +0 -2
  12. package/lib/designSystemExtension/material-details/material-details.component.scss +0 -5
  13. package/lib/designSystemExtension/material-details/material-details.component.ts +0 -1
  14. package/lib/designSystemExtension/material-details-fields/material-details-fields.component.html +3 -3
  15. package/lib/designSystemExtension/material-details-fields/material-details-fields.component.scss +4 -3
  16. package/lib/designSystemExtension/material-details-fields/material-details-fields.component.ts +6 -1
  17. package/lib/designSystemExtension/material-summary-item/material-summary-item.component.scss +4 -17
  18. package/lib/designSystemExtension/material-summary-item/material-summary-item.component.ts +0 -1
  19. package/lib/designSystemExtension/material-summary-list/material-summary-list.component.ts +0 -1
  20. package/lib/designSystemExtension/material-utility/material-utility.component.scss +1 -2
  21. package/lib/designSystemExtension/material-vertical-tabs/material-vertical-tabs.component.scss +1 -1
  22. package/lib/designSystemExtension/material-vertical-tabs/material-vertical-tabs.component.ts +0 -1
  23. package/lib/designSystemExtension/operator/operator.component.html +2 -2
  24. package/lib/designSystemExtension/operator/operator.component.scss +13 -12
  25. package/lib/designSystemExtension/operator/operator.component.ts +4 -5
  26. package/lib/designSystemExtension/pulse/pulse.component.scss +2 -2
  27. package/lib/designSystemExtension/pulse/pulse.component.ts +0 -1
  28. package/lib/designSystemExtension/rich-text-editor/rich-text-editor.component.html +4 -17
  29. package/lib/designSystemExtension/rich-text-editor/rich-text-editor.component.scss +0 -1
  30. package/lib/designSystemExtension/rich-text-editor/rich-text-editor.component.ts +30 -1
  31. package/lib/designSystemExtension/wss-quick-create/wss-quick-create.component.scss +16 -9
  32. package/lib/designSystemExtension/wss-quick-create/wss-quick-create.component.ts +0 -1
  33. package/lib/field/auto-complete/auto-complete.component.html +0 -2
  34. package/lib/field/auto-complete/auto-complete.component.ts +48 -173
  35. package/lib/field/cancel-alert/cancel-alert.component.html +8 -12
  36. package/lib/field/cancel-alert/cancel-alert.component.scss +2 -3
  37. package/lib/field/cancel-alert/cancel-alert.component.ts +24 -37
  38. package/lib/field/check-box/check-box.component.html +17 -6
  39. package/lib/field/check-box/check-box.component.scss +0 -1
  40. package/lib/field/check-box/check-box.component.ts +25 -151
  41. package/lib/field/currency/currency.component.ts +54 -181
  42. package/lib/field/date/date.component.html +4 -3
  43. package/lib/field/date/date.component.ts +30 -151
  44. package/lib/field/date-time/date-time.component.html +2 -2
  45. package/lib/field/date-time/date-time.component.ts +47 -148
  46. package/lib/field/decimal/decimal.component.html +1 -0
  47. package/lib/field/decimal/decimal.component.ts +61 -164
  48. package/lib/field/dropdown/dropdown.component.html +1 -0
  49. package/lib/field/dropdown/dropdown.component.ts +43 -152
  50. package/lib/field/email/email.component.ts +28 -158
  51. package/lib/field/field.base.ts +149 -0
  52. package/lib/field/group/group.component.ts +7 -5
  53. package/lib/field/integer/integer.component.html +1 -1
  54. package/lib/field/integer/integer.component.ts +30 -160
  55. package/lib/field/list-view-action-buttons/list-view-action-buttons.component.html +1 -1
  56. package/lib/field/list-view-action-buttons/list-view-action-buttons.component.ts +3 -3
  57. package/lib/field/location/config-ext.json +8 -0
  58. package/lib/field/location/location.component.html +45 -0
  59. package/lib/field/location/location.component.scss +18 -0
  60. package/lib/field/location/location.component.spec.ts +22 -0
  61. package/lib/field/location/location.component.ts +280 -0
  62. package/lib/field/multiselect/multiselect.component.ts +47 -152
  63. package/lib/field/multiselect/utils.ts +55 -47
  64. package/lib/field/object-reference/object-reference.component.html +17 -0
  65. package/lib/field/object-reference/object-reference.component.scss +0 -0
  66. package/lib/field/object-reference/object-reference.component.spec.ts +22 -0
  67. package/lib/field/object-reference/object-reference.component.ts +237 -0
  68. package/lib/field/percentage/percentage.component.html +1 -1
  69. package/lib/field/percentage/percentage.component.ts +62 -170
  70. package/lib/field/phone/config-ext.json +1 -1
  71. package/lib/field/phone/phone.component.html +18 -17
  72. package/lib/field/phone/phone.component.scss +4 -0
  73. package/lib/field/phone/phone.component.ts +47 -156
  74. package/lib/field/radio-buttons/radio-buttons.component.html +17 -12
  75. package/lib/field/radio-buttons/radio-buttons.component.scss +4 -2
  76. package/lib/field/radio-buttons/radio-buttons.component.ts +37 -160
  77. package/lib/field/rich-text/rich-text.component.html +2 -0
  78. package/lib/field/rich-text/rich-text.component.scss +172 -0
  79. package/lib/field/rich-text/rich-text.component.ts +32 -93
  80. package/lib/field/scalar-list/scalar-list.component.ts +17 -73
  81. package/lib/field/selectable-card/selectable-card.component.html +70 -0
  82. package/lib/field/selectable-card/selectable-card.component.scss +11 -0
  83. package/lib/field/selectable-card/selectable-card.component.spec.ts +22 -0
  84. package/lib/field/selectable-card/selectable-card.component.ts +219 -0
  85. package/lib/field/semantic-link/semantic-link.component.html +4 -8
  86. package/lib/field/semantic-link/semantic-link.component.scss +0 -13
  87. package/lib/field/semantic-link/semantic-link.component.ts +165 -6
  88. package/lib/field/text/text.component.scss +0 -1
  89. package/lib/field/text/text.component.ts +6 -5
  90. package/lib/field/text-area/text-area.component.html +4 -2
  91. package/lib/field/text-area/text-area.component.ts +30 -155
  92. package/lib/field/text-content/text-content.component.ts +0 -1
  93. package/lib/field/text-input/text-input.component.html +1 -1
  94. package/lib/field/text-input/text-input.component.ts +28 -158
  95. package/lib/field/time/time.component.html +2 -2
  96. package/lib/field/time/time.component.ts +34 -154
  97. package/lib/field/url/url.component.html +1 -1
  98. package/lib/field/url/url.component.ts +28 -157
  99. package/lib/field/user-reference/user-reference.component.html +40 -38
  100. package/lib/field/user-reference/user-reference.component.scss +0 -1
  101. package/lib/field/user-reference/user-reference.component.ts +70 -9
  102. package/lib/infra/Containers/flow-container/flow-container.component.html +2 -2
  103. package/lib/infra/Containers/flow-container/flow-container.component.ts +24 -51
  104. package/lib/infra/Containers/flow-container/helpers.ts +2 -2
  105. package/lib/infra/Containers/hybrid-view-container/hybrid-view-container.component.ts +0 -1
  106. package/lib/infra/Containers/modal-view-container/modal-view-container.component.html +1 -11
  107. package/lib/infra/Containers/modal-view-container/modal-view-container.component.ts +5 -18
  108. package/lib/infra/Containers/view-container/helper.ts +35 -2
  109. package/lib/infra/Containers/view-container/view-container.component.ts +1 -2
  110. package/lib/infra/action-buttons/action-buttons.component.html +13 -8
  111. package/lib/infra/action-buttons/action-buttons.component.scss +23 -0
  112. package/lib/infra/action-buttons/action-buttons.component.ts +1 -3
  113. package/lib/infra/assignment/assignment.component.html +1 -1
  114. package/lib/infra/assignment/assignment.component.ts +100 -46
  115. package/lib/infra/assignment-card/assignment-card.component.html +2 -2
  116. package/lib/infra/assignment-card/assignment-card.component.scss +0 -4
  117. package/lib/infra/assignment-card/assignment-card.component.ts +21 -5
  118. package/lib/infra/dashboard-filter/dashboard-filter.component.ts +0 -1
  119. package/lib/infra/defer-load/defer-load.component.html +6 -2
  120. package/lib/infra/defer-load/defer-load.component.ts +25 -12
  121. package/lib/infra/error-boundary/error-boundary.component.ts +0 -1
  122. package/lib/infra/multi-step/multi-step.component.html +22 -38
  123. package/lib/infra/multi-step/multi-step.component.scss +14 -27
  124. package/lib/infra/multi-step/multi-step.component.ts +0 -1
  125. package/lib/infra/navbar/navbar.component.html +36 -41
  126. package/lib/infra/navbar/navbar.component.scss +22 -4
  127. package/lib/infra/navbar/navbar.component.ts +8 -6
  128. package/lib/infra/reference/reference.component.ts +82 -90
  129. package/lib/infra/region/region.component.ts +0 -1
  130. package/lib/infra/root-container/root-container.component.html +2 -15
  131. package/lib/infra/root-container/root-container.component.scss +0 -1
  132. package/lib/infra/root-container/root-container.component.ts +25 -32
  133. package/lib/infra/stages/stages.component.html +4 -3
  134. package/lib/infra/stages/stages.component.scss +12 -36
  135. package/lib/infra/stages/stages.component.ts +4 -3
  136. package/lib/infra/view/view.component.html +1 -1
  137. package/lib/infra/view/view.component.ts +3 -7
  138. package/lib/template/advanced-search/advanced-search.component.html +12 -0
  139. package/lib/template/advanced-search/advanced-search.component.scss +0 -0
  140. package/lib/template/advanced-search/advanced-search.component.spec.ts +0 -0
  141. package/lib/template/advanced-search/advanced-search.component.ts +112 -0
  142. package/lib/template/advanced-search/advanced-search.service.ts +27 -0
  143. package/lib/template/advanced-search/search-group/persist-utils.ts +56 -0
  144. package/lib/template/advanced-search/search-groups/search-groups.component.html +32 -0
  145. package/lib/template/advanced-search/search-groups/search-groups.component.scss +0 -0
  146. package/lib/template/advanced-search/search-groups/search-groups.component.spec.ts +0 -0
  147. package/lib/template/advanced-search/search-groups/search-groups.component.ts +294 -0
  148. package/lib/template/advanced-search/search-groups/utils.ts +29 -0
  149. package/lib/template/app-shell/app-shell.component.html +4 -1
  150. package/lib/template/app-shell/app-shell.component.scss +0 -3
  151. package/lib/template/app-shell/app-shell.component.ts +46 -8
  152. package/lib/template/banner-page/banner-page.component.ts +0 -1
  153. package/lib/template/base/form-template-base.ts +6 -0
  154. package/lib/template/case-summary/case-summary.component.scss +0 -2
  155. package/lib/template/case-summary/case-summary.component.ts +6 -22
  156. package/lib/template/case-view/case-view.component.html +4 -4
  157. package/lib/template/case-view/case-view.component.scss +18 -10
  158. package/lib/template/case-view/case-view.component.ts +1 -11
  159. package/lib/template/confirmation/confirmation.component.html +2 -2
  160. package/lib/template/confirmation/confirmation.component.ts +0 -1
  161. package/lib/template/data-reference/data-reference.component.html +11 -8
  162. package/lib/template/data-reference/data-reference.component.ts +346 -113
  163. package/lib/template/data-reference/search-form/search-form.component.html +39 -0
  164. package/lib/template/data-reference/search-form/search-form.component.scss +11 -0
  165. package/lib/template/data-reference/search-form/search-form.component.spec.ts +0 -0
  166. package/lib/template/data-reference/search-form/search-form.component.ts +167 -0
  167. package/lib/template/data-reference/search-form/tabsData.ts +160 -0
  168. package/lib/template/data-reference/utils.ts +92 -0
  169. package/lib/template/default-form/default-form.component.ts +45 -5
  170. package/lib/template/default-page/default-page.component.html +34 -0
  171. package/lib/template/default-page/default-page.component.scss +31 -0
  172. package/lib/template/default-page/default-page.component.spec.ts +24 -0
  173. package/lib/template/default-page/default-page.component.ts +64 -0
  174. package/lib/template/details/details.component.ts +0 -1
  175. package/lib/template/details-narrow-wide/details-narrow-wide.component.ts +0 -1
  176. package/lib/template/details-one-column/details-one-column.component.ts +0 -1
  177. package/lib/template/details-sub-tabs/details-sub-tabs.component.ts +0 -1
  178. package/lib/template/details-three-column/details-three-column.component.ts +0 -1
  179. package/lib/template/details-two-column/details-two-column.component.ts +0 -1
  180. package/lib/template/details-wide-narrow/details-wide-narrow.component.ts +0 -1
  181. package/lib/template/dynamic-tabs/dynamic-tabs.component.ts +0 -1
  182. package/lib/template/field-group-list/field-group-list.component.scss +0 -1
  183. package/lib/template/field-group-list/field-group-list.component.ts +0 -1
  184. package/lib/template/field-group-template/field-group-template.component.html +7 -7
  185. package/lib/template/field-group-template/field-group-template.component.scss +8 -0
  186. package/lib/template/field-group-template/field-group-template.component.ts +64 -55
  187. package/lib/template/field-value-list/field-value-list.component.html +2 -2
  188. package/lib/template/field-value-list/field-value-list.component.scss +4 -0
  189. package/lib/template/field-value-list/field-value-list.component.ts +0 -1
  190. package/lib/template/inline-dashboard/inline-dashboard.component.ts +0 -1
  191. package/lib/template/inline-dashboard-page/inline-dashboard-page.component.ts +1 -2
  192. package/lib/template/list-page/list-page.component.ts +0 -1
  193. package/lib/template/list-view/list-view.component.html +170 -160
  194. package/lib/template/list-view/list-view.component.scss +25 -21
  195. package/lib/template/list-view/list-view.component.ts +208 -122
  196. package/lib/template/list-view/listViewHelpers.ts +3 -9
  197. package/lib/template/list-view/utils.ts +27 -7
  198. package/lib/template/multi-reference-readonly/multi-reference-readonly.component.ts +0 -1
  199. package/lib/template/narrow-wide-form/narrow-wide-form.component.ts +0 -1
  200. package/lib/template/object-page/object-page.component.html +1 -0
  201. package/lib/template/object-page/object-page.component.scss +0 -0
  202. package/lib/template/object-page/object-page.component.spec.ts +22 -0
  203. package/lib/template/object-page/object-page.component.ts +14 -0
  204. package/lib/template/one-column/one-column.component.ts +0 -1
  205. package/lib/template/one-column-page/one-column-page.component.ts +0 -1
  206. package/lib/template/one-column-tab/one-column-tab.component.scss +1 -1
  207. package/lib/template/one-column-tab/one-column-tab.component.ts +0 -1
  208. package/lib/template/page/page.component.ts +0 -1
  209. package/lib/template/promoted-filters/promoted-filters.component.ts +0 -1
  210. package/lib/template/repeating-structures/repeating-structures.component.ts +0 -2
  211. package/lib/template/self-service-case-view/self-service-case-view.component.html +78 -0
  212. package/lib/template/self-service-case-view/self-service-case-view.component.scss +132 -0
  213. package/lib/template/self-service-case-view/self-service-case-view.component.spec.ts +24 -0
  214. package/lib/template/self-service-case-view/self-service-case-view.component.ts +207 -0
  215. package/lib/template/simple-table/simple-table.component.ts +0 -2
  216. package/lib/template/simple-table-manual/helpers.ts +126 -10
  217. package/lib/template/simple-table-manual/simple-table-manual.component.html +27 -8
  218. package/lib/template/simple-table-manual/simple-table-manual.component.scss +15 -17
  219. package/lib/template/simple-table-manual/simple-table-manual.component.ts +103 -45
  220. package/lib/template/simple-table-select/simple-table-select.component.ts +0 -1
  221. package/lib/template/single-reference-readonly/single-reference-readonly.component.html +4 -1
  222. package/lib/template/single-reference-readonly/single-reference-readonly.component.scss +21 -0
  223. package/lib/template/single-reference-readonly/single-reference-readonly.component.ts +104 -4
  224. package/lib/template/sub-tabs/sub-tabs.component.ts +0 -1
  225. package/lib/template/three-column/three-column.component.ts +0 -1
  226. package/lib/template/three-column-page/three-column-page.component.ts +0 -1
  227. package/lib/template/two-column/two-column.component.ts +0 -1
  228. package/lib/template/two-column-page/two-column-page.component.ts +0 -1
  229. package/lib/template/two-column-tab/two-column-tab.component.ts +0 -1
  230. package/lib/template/utils.ts +58 -0
  231. package/lib/template/wide-narrow-form/wide-narrow-form.component.ts +0 -1
  232. package/lib/template/wide-narrow-page/wide-narrow-page.component.ts +0 -1
  233. package/lib/template/wss-nav-bar/wss-nav-bar.component.html +6 -5
  234. package/lib/template/wss-nav-bar/wss-nav-bar.component.scss +8 -17
  235. package/lib/template/wss-nav-bar/wss-nav-bar.component.ts +1 -9
  236. package/lib/widget/app-announcement/app-announcement.component.html +1 -2
  237. package/lib/widget/app-announcement/app-announcement.component.scss +2 -2
  238. package/lib/widget/app-announcement/app-announcement.component.ts +0 -1
  239. package/lib/widget/attachment/Attachment.types.ts +92 -0
  240. package/lib/widget/attachment/AttachmentUtils.ts +287 -0
  241. package/lib/widget/attachment/attachment.component.html +3 -3
  242. package/lib/widget/attachment/attachment.component.scss +9 -12
  243. package/lib/widget/attachment/attachment.component.ts +267 -254
  244. package/lib/widget/case-history/case-history.component.ts +0 -1
  245. package/lib/widget/feed-container/feed-container.component.scss +3 -9
  246. package/lib/widget/feed-container/feed-container.component.ts +2 -5
  247. package/lib/widget/file-utility/file-utility.component.html +3 -3
  248. package/lib/widget/file-utility/file-utility.component.scss +6 -17
  249. package/lib/widget/file-utility/file-utility.component.ts +24 -9
  250. package/lib/widget/list-utility/list-utility.component.scss +4 -5
  251. package/lib/widget/list-utility/list-utility.component.ts +0 -1
  252. package/lib/widget/quick-create/quick-create.component.ts +41 -23
  253. package/lib/widget/todo/todo.component.html +12 -10
  254. package/lib/widget/todo/todo.component.scss +20 -10
  255. package/lib/widget/todo/todo.component.ts +11 -7
  256. package/lib/widget/utility/utility.component.ts +0 -1
  257. package/package.json +1 -1
@@ -1,4 +1,3 @@
1
- /* eslint-disable max-classes-per-file */
2
1
  import { Component, OnInit, Input, ViewChild, forwardRef, OnDestroy } from '@angular/core';
3
2
  import { CommonModule } from '@angular/common';
4
3
  import { FormGroup } from '@angular/forms';
@@ -10,6 +9,7 @@ import { MatMenuModule } from '@angular/material/menu';
10
9
  import { MatOptionModule } from '@angular/material/core';
11
10
  import { MatSelectModule } from '@angular/material/select';
12
11
  import { MatSort, MatSortModule } from '@angular/material/sort';
12
+ import { MatIcon } from '@angular/material/icon';
13
13
  import { MatTableDataSource, MatTableModule } from '@angular/material/table';
14
14
  import isEqual from 'fast-deep-equal';
15
15
 
@@ -18,11 +18,10 @@ import { AngularPConnectData, AngularPConnectService } from '@pega/angular-sdk-c
18
18
  import { DatapageService } from '@pega/angular-sdk-components';
19
19
  import { getReferenceList } from '@pega/angular-sdk-components';
20
20
  import { buildFieldsForTable, filterDataByCommonFields, filterDataByDate, getContext } from './helpers';
21
+ import { evaluateAllowRowAction } from '@pega/angular-sdk-components';
21
22
  import { Utils } from '@pega/angular-sdk-components';
22
23
  import { getSeconds } from '@pega/angular-sdk-components';
23
24
 
24
- declare const window: any;
25
-
26
25
  interface SimpleTableManualProps {
27
26
  // If any, enter additional props that only exist on this component
28
27
  visibility?: boolean;
@@ -37,7 +36,9 @@ interface SimpleTableManualProps {
37
36
  contextClass?: string;
38
37
  propertyLabel?: string;
39
38
  fieldMetadata?: any;
39
+ allowActions?: any;
40
40
  allowTableEdit?: boolean;
41
+ allowRowDelete?: any;
41
42
  editMode?: string;
42
43
  addAndEditRowsWithin?: any;
43
44
  viewForAddAndEditModal?: any;
@@ -62,7 +63,6 @@ class Group {
62
63
  selector: 'app-simple-table-manual',
63
64
  templateUrl: './simple-table-manual.component.html',
64
65
  styleUrls: ['./simple-table-manual.component.scss'],
65
- standalone: true,
66
66
  imports: [
67
67
  CommonModule,
68
68
  MatTableModule,
@@ -74,8 +74,10 @@ class Group {
74
74
  MatOptionModule,
75
75
  MatSelectModule,
76
76
  MatInputModule,
77
+ MatIcon,
77
78
  forwardRef(() => ComponentMapperComponent)
78
- ]
79
+ ],
80
+ providers: [DatapageService]
79
81
  })
80
82
  export class SimpleTableManualComponent implements OnInit, OnDestroy {
81
83
  @ViewChild(MatSort) sort: MatSort;
@@ -104,6 +106,7 @@ export class SimpleTableManualComponent implements OnInit, OnDestroy {
104
106
  showAddRowButton: boolean;
105
107
  prevReferenceList: any[] = [];
106
108
  elementsData: MatTableDataSource<any>;
109
+ originalElementsData: MatTableDataSource<any>;
107
110
  rawFields: any;
108
111
  label?: string = '';
109
112
  searchIcon$: string;
@@ -160,14 +163,16 @@ export class SimpleTableManualComponent implements OnInit, OnDestroy {
160
163
 
161
164
  isInitialized = false;
162
165
  targetClassLabel: string;
163
-
166
+ localizedVal = PCore.getLocaleUtils().getLocaleValue;
167
+ localeCategory = 'SimpleTable';
164
168
  constructor(
165
169
  private angularPConnect: AngularPConnectService,
166
- private utils: Utils,
170
+ public utils: Utils,
167
171
  private dataPageService: DatapageService
168
172
  ) {}
169
173
 
170
174
  ngOnInit(): void {
175
+ this.elementsData = new MatTableDataSource<any>([]);
171
176
  this.isInitialized = true;
172
177
  // First thing in initialization is registering and subscribing to the AngularPConnect service
173
178
  this.angularPConnectData = this.angularPConnect.registerAndSubscribeComponent(this, this.onStateChange);
@@ -213,7 +218,6 @@ export class SimpleTableManualComponent implements OnInit, OnDestroy {
213
218
  this.configProps$ = this.pConn$.resolveConfigProps(this.pConn$.getConfigProps()) as SimpleTableManualProps;
214
219
 
215
220
  if (this.configProps$.visibility != null) {
216
- // eslint-disable-next-line no-multi-assign
217
221
  this.bVisible$ = this.bVisible$ = this.utils.getBooleanValue(this.configProps$.visibility);
218
222
  }
219
223
 
@@ -229,7 +233,9 @@ export class SimpleTableManualComponent implements OnInit, OnDestroy {
229
233
  renderMode,
230
234
  children, // destructure children into an array var: "resolvedFields"
231
235
  presets,
236
+ allowActions,
232
237
  allowTableEdit,
238
+ allowRowDelete,
233
239
  label: labelProp,
234
240
  propertyLabel,
235
241
  fieldMetadata,
@@ -243,12 +249,22 @@ export class SimpleTableManualComponent implements OnInit, OnDestroy {
243
249
  targetClassLabel
244
250
  } = this.configProps$;
245
251
 
252
+ const simpleTableManualProps: any = {};
253
+ if (this.checkIfAllowActionsOrRowEditingExist(allowActions) && editMode) {
254
+ simpleTableManualProps.hideAddRow = allowActions?.allowAdd === false;
255
+ simpleTableManualProps.hideDeleteRow = allowActions?.allowDelete === false;
256
+ simpleTableManualProps.hideEditRow = allowActions?.allowEdit === false;
257
+ simpleTableManualProps.disableDragDrop = allowActions?.allowDragDrop === false;
258
+ } else if (allowTableEdit === false) {
259
+ simpleTableManualProps.hideAddRow = true;
260
+ simpleTableManualProps.hideDeleteRow = true;
261
+ simpleTableManualProps.disableDragDrop = true;
262
+ }
263
+
246
264
  this.referenceListStr = getContext(this.pConn$).referenceListStr;
247
265
  this.label = labelProp || propertyLabel;
248
266
  this.parameters = fieldMetadata?.datasource?.parameters;
249
267
  this.targetClassLabel = targetClassLabel;
250
- const hideAddRow = allowTableEdit === false;
251
- const hideDeleteRow = allowTableEdit === false;
252
268
  let { contextClass } = this.configProps$;
253
269
  this.referenceList = referenceList;
254
270
  if (!contextClass) {
@@ -285,13 +301,14 @@ export class SimpleTableManualComponent implements OnInit, OnDestroy {
285
301
  this.readOnlyMode = renderMode === 'ReadOnly';
286
302
  this.editableMode = renderMode === 'Editable';
287
303
  const isDisplayModeEnabled = displayMode === 'DISPLAY_ONLY';
288
- this.showAddRowButton = !this.readOnlyMode && !hideAddRow;
304
+ this.showAddRowButton = !this.readOnlyMode && !simpleTableManualProps.hideAddRow;
289
305
  this.allowEditingInModal =
290
306
  (editMode ? editMode === 'modal' : addAndEditRowsWithin === 'modal') && !(renderMode === 'ReadOnly' || isDisplayModeEnabled);
291
- const showDeleteButton = this.editableMode && !hideDeleteRow;
307
+ const showDeleteButton = this.editableMode && !simpleTableManualProps.hideDeleteRow && evaluateAllowRowAction(allowRowDelete, this.rowData);
292
308
  this.defaultView = editModeConfig ? editModeConfig.defaultView : viewForAddAndEditModal;
293
309
  this.bUseSeparateViewForEdit = editModeConfig ? editModeConfig.useSeparateViewForEdit : useSeparateViewForEdit;
294
310
  this.editView = editModeConfig ? editModeConfig.editView : viewForEditModal;
311
+ const primaryFieldsViewIndex = resolvedFields.findIndex(field => field.config.value === 'pyPrimaryFields');
295
312
  // const showDeleteButton = !this.readOnlyMode && !hideDeleteRow;
296
313
 
297
314
  // Nebula has other handling for isReadOnlyMode but has Cosmos-specific code
@@ -302,8 +319,11 @@ export class SimpleTableManualComponent implements OnInit, OnDestroy {
302
319
  // Nebula does). It will also have the "label", and "meta" contains the original,
303
320
  // unchanged config info. For now, much of the info here is carried over from
304
321
  // Nebula and we may not end up using it all.
305
- this.fieldDefs = buildFieldsForTable(rawFields, resolvedFields, showDeleteButton);
306
-
322
+ this.fieldDefs = buildFieldsForTable(rawFields, this.pConn$, showDeleteButton, {
323
+ primaryFieldsViewIndex,
324
+ fields: resolvedFields
325
+ });
326
+ this.fieldDefs = this.fieldDefs?.filter(field => !(field.meta?.config?.hide === true));
307
327
  this.initializeDefaultPageInstructions();
308
328
 
309
329
  // end of from Nebula
@@ -319,15 +339,20 @@ export class SimpleTableManualComponent implements OnInit, OnDestroy {
319
339
  // from from the fieldDefs. This "name" is the value that
320
340
  // we'll share to connect things together in the table.
321
341
 
342
+ const labelsMap = this.fieldDefs.reduce((acc, curr) => {
343
+ return { ...acc, [curr.name]: curr.label };
344
+ }, {});
345
+
322
346
  this.processedFields = [];
323
347
 
324
348
  this.processedFields = resolvedFields.map((field, i) => {
325
349
  field.config.name = this.displayedColumns[i]; // .config["value"].replace(/ ./g,"_"); // replace space dot with underscore
350
+ field.config.label = labelsMap[field.config.name] || field.config.label;
326
351
  return field;
327
352
  });
328
353
 
329
354
  // for adding rows to table when editable and not modal view
330
- if (this.prevReferenceList.length !== this.referenceList.length && this.editableMode && !this.allowEditingInModal) {
355
+ if (this.prevReferenceList.length !== this.referenceList.length) {
331
356
  this.buildElementsForTable();
332
357
  }
333
358
 
@@ -354,6 +379,10 @@ export class SimpleTableManualComponent implements OnInit, OnDestroy {
354
379
  // ties the 3 data structures together.
355
380
  }
356
381
 
382
+ checkIfAllowActionsOrRowEditingExist(newflagobject) {
383
+ return (newflagobject && Object.keys(newflagobject).length > 0) || this.pConn$.getComponentConfig().allowRowEdit;
384
+ }
385
+
357
386
  initializeDefaultPageInstructions() {
358
387
  if (this.isInitialized) {
359
388
  this.isInitialized = false;
@@ -375,8 +404,8 @@ export class SimpleTableManualComponent implements OnInit, OnDestroy {
375
404
  }
376
405
 
377
406
  sortCompare(a, b): number {
378
- let aValue = a[this.compareRef];
379
- let bValue = b[this.compareRef];
407
+ let aValue = a[0][this.compareRef];
408
+ let bValue = b[0][this.compareRef];
380
409
 
381
410
  if (this.compareType == 'Date' || this.compareType == 'DateTime') {
382
411
  aValue = getSeconds(aValue);
@@ -499,17 +528,20 @@ export class SimpleTableManualComponent implements OnInit, OnDestroy {
499
528
  // run through list of elements in path, if menu not in th path, then want to
500
529
  // hide (toggle) the menu
501
530
  const eventPath = event.path;
502
- for (let eventIndex = 0; eventIndex < eventPath.length; eventIndex++) {
503
- if (
504
- eventPath[eventIndex].className == 'psdk-modal-file-top' ||
505
- eventPath[eventIndex].tagName == 'BUTTON' ||
506
- eventPath[eventIndex].tagName == 'MAT-OPTION' ||
507
- eventPath[eventIndex].tagName == 'MAT-INPUT'
508
- ) {
509
- bInPopUp = true;
510
- break;
531
+ if (eventPath) {
532
+ for (let eventIndex = 0; eventIndex < eventPath.length; eventIndex++) {
533
+ if (
534
+ eventPath[eventIndex].className == 'psdk-modal-file-top' ||
535
+ eventPath[eventIndex].tagName == 'BUTTON' ||
536
+ eventPath[eventIndex].tagName == 'MAT-OPTION' ||
537
+ eventPath[eventIndex].tagName == 'MAT-INPUT'
538
+ ) {
539
+ bInPopUp = true;
540
+ break;
541
+ }
511
542
  }
512
543
  }
544
+
513
545
  if (!bInPopUp) {
514
546
  // this.bShowFilterPopover$ = false;
515
547
 
@@ -628,7 +660,8 @@ export class SimpleTableManualComponent implements OnInit, OnDestroy {
628
660
  }
629
661
  }
630
662
 
631
- filterData(item: any) {
663
+ filterData(element: any) {
664
+ const item = element[0];
632
665
  let bKeep = true;
633
666
  for (const filterObj of this.filterByColumns) {
634
667
  if (filterObj.containsFilterValue != '' || filterObj.containsFilter == 'null' || filterObj.containsFilter == 'notnull') {
@@ -642,6 +675,8 @@ export class SimpleTableManualComponent implements OnInit, OnDestroy {
642
675
  bKeep = filterDataByCommonFields(item, filterObj);
643
676
  break;
644
677
  }
678
+ } else if (filterObj.containsFilterValue === '') {
679
+ bKeep = true;
645
680
  }
646
681
 
647
682
  // if don't keep stop filtering
@@ -654,14 +689,22 @@ export class SimpleTableManualComponent implements OnInit, OnDestroy {
654
689
  }
655
690
 
656
691
  filterSortGroupBy() {
657
- let theData = this.originalData.slice();
692
+ let theData = this.originalData.slice().map((item, index) => {
693
+ return [item, index];
694
+ });
658
695
 
659
696
  // last filter config data is global
660
697
  theData = theData.filter(this.filterData.bind(this));
661
698
 
662
699
  // last sort config data is global
663
700
  theData.sort(this.sortCompare.bind(this));
664
- this.rowData.data = theData;
701
+ this.rowData.data = theData.map(item => item[0]);
702
+
703
+ const newElements: any = new Array(this.rowData.data.length);
704
+ theData.forEach((item, index) => {
705
+ newElements[index] = this.originalElementsData[item[1]];
706
+ });
707
+ this.elementsData = newElements;
665
708
  }
666
709
 
667
710
  _headerSortClick(event, columnData) {
@@ -784,7 +827,7 @@ export class SimpleTableManualComponent implements OnInit, OnDestroy {
784
827
  const seen = {};
785
828
  return a.filter(item => {
786
829
  const k = key(item);
787
- // eslint-disable-next-line no-return-assign, no-prototype-builtins
830
+ // eslint-disable-next-line no-prototype-builtins
788
831
  return seen.hasOwnProperty(k) ? false : (seen[k] = true);
789
832
  });
790
833
  }
@@ -875,7 +918,7 @@ export class SimpleTableManualComponent implements OnInit, OnDestroy {
875
918
 
876
919
  // return the value that should be shown as the contents for the given row data
877
920
  // of the given row field
878
- getRowValue(inRowData: Object, inColKey: string): any {
921
+ getRowValue(inRowData: object, inColKey: string): any {
879
922
  // See what data (if any) we have to display
880
923
  const refKeys: string[] = inColKey.split('.');
881
924
  let valBuilder = inRowData;
@@ -918,6 +961,7 @@ export class SimpleTableManualComponent implements OnInit, OnDestroy {
918
961
  if (this.allowEditingInModal && this.defaultView) {
919
962
  this.pConn$
920
963
  .getActionsApi()
964
+ // @ts-expect-error
921
965
  .openEmbeddedDataModal(
922
966
  this.defaultView,
923
967
  this.pConn$ as any,
@@ -939,6 +983,7 @@ export class SimpleTableManualComponent implements OnInit, OnDestroy {
939
983
  if (data) {
940
984
  this.pConn$
941
985
  .getActionsApi()
986
+ // @ts-expect-error
942
987
  .openEmbeddedDataModal(
943
988
  this.bUseSeparateViewForEdit ? this.editView : this.defaultView,
944
989
  this.pConn$ as any,
@@ -960,23 +1005,36 @@ export class SimpleTableManualComponent implements OnInit, OnDestroy {
960
1005
  this.referenceList.forEach((element, index) => {
961
1006
  const data: any = [];
962
1007
  this.rawFields?.forEach(item => {
963
- const referenceListData = getReferenceList(this.pConn$);
964
- const isDatapage = referenceListData.startsWith('D_');
965
- const pageReferenceValue = isDatapage ? `${referenceListData}[${index}]` : `${this.pConn$.getPageReference()}${referenceListData}[${index}]`;
966
- const config = {
967
- meta: item,
968
- options: {
969
- context,
970
- pageReference: pageReferenceValue,
971
- referenceList: referenceListData,
972
- hasForm: true
973
- }
974
- };
975
- const view = PCore.createPConnect(config);
976
- data.push(view);
1008
+ if (!item?.config?.hide) {
1009
+ item = {
1010
+ ...item,
1011
+ config: {
1012
+ ...item.config,
1013
+ label: '',
1014
+ displayMode: this.readOnlyMode || this.allowEditingInModal ? 'DISPLAY_ONLY' : undefined
1015
+ }
1016
+ };
1017
+ const referenceListData = getReferenceList(this.pConn$);
1018
+ const isDatapage = referenceListData.startsWith('D_');
1019
+ const pageReferenceValue = isDatapage
1020
+ ? `${referenceListData}[${index}]`
1021
+ : `${this.pConn$.getPageReference()}${referenceListData}[${index}]`;
1022
+ const config = {
1023
+ meta: item,
1024
+ options: {
1025
+ context,
1026
+ pageReference: pageReferenceValue,
1027
+ referenceList: referenceListData,
1028
+ hasForm: true
1029
+ }
1030
+ };
1031
+ const view = PCore.createPConnect(config);
1032
+ data.push(view);
1033
+ }
977
1034
  });
978
1035
  eleData.push(data);
979
1036
  });
1037
+ this.originalElementsData = eleData;
980
1038
  this.elementsData = eleData;
981
1039
  }
982
1040
  }
@@ -8,7 +8,6 @@ import { ComponentMapperComponent } from '@pega/angular-sdk-components';
8
8
  selector: 'app-simple-table-select',
9
9
  templateUrl: './simple-table-select.component.html',
10
10
  styleUrls: ['./simple-table-select.component.scss'],
11
- standalone: true,
12
11
  imports: [CommonModule, forwardRef(() => ComponentMapperComponent)]
13
12
  })
14
13
  export class SimpleTableSelectComponent implements OnInit, OnDestroy {
@@ -1 +1,4 @@
1
- <component-mapper name="SemanticLink" [props]="{ pConn$ }"></component-mapper>
1
+ <div [ngClass]="displayMode ? 'psdk-grid-display' : 'psdk-grid-nondisplay'">
2
+ <div *ngIf="label" class="psdk-grid-label">{{ label }}</div>
3
+ <component-mapper name="SemanticLink" [props]="{ pConn$: newPconn, formGroup$ }"></component-mapper>
4
+ </div>
@@ -0,0 +1,21 @@
1
+ .psdk-grid-display {
2
+ display: grid;
3
+ grid-template-columns: repeat(2, minmax(0, 1fr));
4
+ column-gap: calc(2 * 0.5rem);
5
+ row-gap: calc(2 * 0.5rem);
6
+ align-items: center;
7
+ margin-top: 1rem;
8
+ }
9
+
10
+ .psdk-grid-nondisplay {
11
+ margin-top: 1rem;
12
+ }
13
+
14
+ .psdk-label {
15
+ color: var(--app-label-color);
16
+ margin: 8px 0px;
17
+ }
18
+
19
+ .psdk-value {
20
+ margin: 8px 0px;
21
+ }
@@ -1,15 +1,115 @@
1
- import { Component, Input, forwardRef } from '@angular/core';
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, Input, forwardRef, OnInit, OnDestroy } from '@angular/core';
2
3
  import { FormGroup } from '@angular/forms';
4
+ import { AngularPConnectData, AngularPConnectService } from '@pega/angular-sdk-components';
3
5
  import { ComponentMapperComponent } from '@pega/angular-sdk-components';
6
+ import { getDataRelationshipContextFromKey } from '@pega/angular-sdk-components';
4
7
 
5
8
  @Component({
6
9
  selector: 'app-single-reference-readonly',
7
10
  templateUrl: './single-reference-readonly.component.html',
8
11
  styleUrls: ['./single-reference-readonly.component.scss'],
9
- standalone: true,
10
- imports: [forwardRef(() => ComponentMapperComponent)]
12
+ imports: [CommonModule, forwardRef(() => ComponentMapperComponent)]
11
13
  })
12
- export class SingleReferenceReadonlyComponent {
14
+ export class SingleReferenceReadonlyComponent implements OnInit, OnDestroy {
13
15
  @Input() pConn$: typeof PConnect;
14
16
  @Input() formGroup$: FormGroup;
17
+ @Input() dataRelationshipContext?: any;
18
+
19
+ angularPConnectData: AngularPConnectData = {};
20
+ configProps: any;
21
+ component: any;
22
+ label: string;
23
+ newPconn: typeof PConnect;
24
+ displayMode: string;
25
+
26
+ constructor(private angularPConnect: AngularPConnectService) {}
27
+
28
+ ngOnInit(): void {
29
+ // First thing in initialization is registering and subscribing to the AngularPConnect service
30
+ this.angularPConnectData = this.angularPConnect.registerAndSubscribeComponent(this, this.onStateChange);
31
+ this.checkAndUpdate();
32
+ }
33
+
34
+ ngOnDestroy(): void {
35
+ if (this.angularPConnectData.unsubscribeFn) {
36
+ this.angularPConnectData.unsubscribeFn();
37
+ }
38
+ }
39
+
40
+ // Callback passed when subscribing to store change
41
+ onStateChange() {
42
+ this.checkAndUpdate();
43
+ }
44
+
45
+ checkAndUpdate() {
46
+ // Should always check the bridge to see if the component should
47
+ // update itself (re-render)
48
+ const bUpdateSelf = this.angularPConnect.shouldComponentUpdate(this);
49
+
50
+ // ONLY call updateSelf when the component should update
51
+ if (bUpdateSelf) {
52
+ this.updateSelf();
53
+ }
54
+ }
55
+
56
+ updateSelf() {
57
+ this.configProps = this.pConn$.resolveConfigProps(this.pConn$.getConfigProps());
58
+ const rawViewMetadata = this.pConn$.getRawMetadata();
59
+ const label = this.configProps.label;
60
+ const showLabel = this.configProps.showLabel;
61
+ const propsToUse = { label, showLabel, ...this.pConn$.getInheritedProps() };
62
+ const type = (rawViewMetadata?.config as any)?.componentType;
63
+ this.displayMode = this.configProps.displayMode;
64
+ const targetObjectType = this.configProps.targetObjectType;
65
+ const referenceType = targetObjectType === 'case' ? 'Case' : 'Data';
66
+ const hideLabel = this.configProps.hideLabel;
67
+ // const additionalFields = this.configProps.additionalFields;
68
+ const displayAs = this.configProps.displayAs ?? 'readonly';
69
+ const dataRelationshipContext = (rawViewMetadata?.config as any)?.displayField
70
+ ? getDataRelationshipContextFromKey((rawViewMetadata?.config as any)?.displayField)
71
+ : this.dataRelationshipContext;
72
+ if (propsToUse.showLabel === false) {
73
+ propsToUse.label = '';
74
+ }
75
+ this.label = propsToUse.label;
76
+
77
+ const editableComponents = ['AutoComplete', 'SimpleTableSelect', 'Dropdown', 'RadioButtons'];
78
+ const config: any = {
79
+ ...rawViewMetadata?.config,
80
+ primaryField: (rawViewMetadata?.config as any)?.displayField,
81
+ label: this.label
82
+ };
83
+
84
+ const activeViewRuleClass = (rawViewMetadata?.config as any)?.targetObjectClass;
85
+ if (editableComponents.includes(type)) {
86
+ config.caseClass = activeViewRuleClass;
87
+ config.text = config.primaryField;
88
+ config.caseID = config.value;
89
+ config.contextPage = `@P .${dataRelationshipContext}`;
90
+ config.resourceParams = {
91
+ workID: displayAs === 'table' ? (config as any)?.selectionKey : config.value
92
+ };
93
+ config.resourcePayload = {
94
+ caseClassName: activeViewRuleClass
95
+ };
96
+ }
97
+
98
+ this.component = this.pConn$.createComponent(
99
+ {
100
+ type: 'SemanticLink',
101
+ config: {
102
+ ...config,
103
+ displayMode: this.displayMode,
104
+ referenceType,
105
+ hideLabel,
106
+ dataRelationshipContext
107
+ }
108
+ },
109
+ '',
110
+ 0,
111
+ {}
112
+ );
113
+ this.newPconn = this.component.getPConnect();
114
+ }
15
115
  }
@@ -10,7 +10,6 @@ import { ComponentMapperComponent } from '@pega/angular-sdk-components';
10
10
  selector: 'app-sub-tabs',
11
11
  templateUrl: './sub-tabs.component.html',
12
12
  styleUrls: ['./sub-tabs.component.scss'],
13
- standalone: true,
14
13
  imports: [MatTabsModule, CommonModule, forwardRef(() => ComponentMapperComponent)]
15
14
  })
16
15
  export class SubTabsComponent implements OnInit, OnDestroy {
@@ -8,7 +8,6 @@ import { FormTemplateBase } from '@pega/angular-sdk-components';
8
8
  selector: 'app-three-column',
9
9
  templateUrl: './three-column.component.html',
10
10
  styleUrls: ['./three-column.component.scss'],
11
- standalone: true,
12
11
  imports: [CommonModule, forwardRef(() => ComponentMapperComponent)]
13
12
  })
14
13
  export class ThreeColumnComponent extends FormTemplateBase implements OnInit, OnChanges {
@@ -6,7 +6,6 @@ import { ComponentMapperComponent } from '@pega/angular-sdk-components';
6
6
  selector: 'app-three-column-page',
7
7
  templateUrl: './three-column-page.component.html',
8
8
  styleUrls: ['./three-column-page.component.scss'],
9
- standalone: true,
10
9
  imports: [forwardRef(() => ComponentMapperComponent)]
11
10
  })
12
11
  export class ThreeColumnPageComponent {
@@ -8,7 +8,6 @@ import { FormTemplateBase } from '@pega/angular-sdk-components';
8
8
  selector: 'app-two-column',
9
9
  templateUrl: './two-column.component.html',
10
10
  styleUrls: ['./two-column.component.scss'],
11
- standalone: true,
12
11
  imports: [CommonModule, forwardRef(() => ComponentMapperComponent)]
13
12
  })
14
13
  export class TwoColumnComponent extends FormTemplateBase implements OnInit, OnChanges {
@@ -7,7 +7,6 @@ import { ComponentMapperComponent } from '@pega/angular-sdk-components';
7
7
  selector: 'app-two-column-page',
8
8
  templateUrl: './two-column-page.component.html',
9
9
  styleUrls: ['./two-column-page.component.scss'],
10
- standalone: true,
11
10
  imports: [forwardRef(() => ComponentMapperComponent)]
12
11
  })
13
12
  export class TwoColumnPageComponent implements OnInit, OnDestroy {
@@ -7,7 +7,6 @@ import { ComponentMapperComponent } from '@pega/angular-sdk-components';
7
7
  selector: 'app-two-column-tab',
8
8
  templateUrl: './two-column-tab.component.html',
9
9
  styleUrls: ['./two-column-tab.component.scss'],
10
- standalone: true,
11
10
  imports: [CommonModule, forwardRef(() => ComponentMapperComponent)]
12
11
  })
13
12
  export class TwoColumnTabComponent implements OnInit, OnChanges {
@@ -21,3 +21,61 @@ export function filterForFieldValueList(fields: any) {
21
21
  value
22
22
  }));
23
23
  }
24
+
25
+ /**
26
+ * This method evaluates whether a row action is allowed based on the provided conditions.
27
+ * @param {string|boolean|undefined} allowRowDelete - The condition for allowing row deletion.
28
+ * @param {object} rowData - The data of the row being evaluated.
29
+ * @returns {boolean} - Returns true if the row action is allowed, false otherwise.
30
+ */
31
+ export const evaluateAllowRowAction = (allowRowDelete, rowData) => {
32
+ if (allowRowDelete === undefined || allowRowDelete === true) return true;
33
+ if (allowRowDelete.startsWith?.('@E ')) {
34
+ const expression = allowRowDelete.replace('@E ', '');
35
+ // @ts-ignore - Expected 3 arguments, but got 2
36
+ return PCore.getExpressionEngine().evaluate(expression, rowData);
37
+ }
38
+ return false;
39
+ };
40
+
41
+ export function prepareCaseSummaryData(caseSummaryRegion, portalSpecificVisibilityChecker?) {
42
+ const filterVisibleChildren = children => {
43
+ return children
44
+ ?.getPConnect()
45
+ ?.getChildren()
46
+ ?.filter(child => {
47
+ const configProps = child.getPConnect().getConfigProps();
48
+ const defaultVisibilityCn = !('visibility' in configProps) || configProps.visibility === true;
49
+ return defaultVisibilityCn && (portalSpecificVisibilityChecker?.(configProps) ?? true);
50
+ });
51
+ };
52
+ const convertChildrenToSummaryData = children => {
53
+ return children?.map(childItem => {
54
+ const childPConnData = childItem.getPConnect().resolveConfigProps(childItem.getPConnect().getRawMetadata());
55
+ childPConnData.kid = childItem.getPConnect();
56
+ return childPConnData;
57
+ });
58
+ };
59
+
60
+ const summaryFieldChildren = caseSummaryRegion
61
+ .getPConnect()
62
+ .getChildren()[0]
63
+ ?.getPConnect()
64
+ ?.getReferencedViewPConnect()
65
+ ?.getPConnect()
66
+ ?.getChildren();
67
+
68
+ const primarySummaryFields =
69
+ summaryFieldChildren && summaryFieldChildren.length > 0
70
+ ? convertChildrenToSummaryData(filterVisibleChildren(summaryFieldChildren[0]))
71
+ : undefined;
72
+ const secondarySummaryFields =
73
+ summaryFieldChildren && summaryFieldChildren.length > 1
74
+ ? convertChildrenToSummaryData(filterVisibleChildren(summaryFieldChildren[1]))
75
+ : undefined;
76
+
77
+ return {
78
+ primarySummaryFields,
79
+ secondarySummaryFields
80
+ };
81
+ }
@@ -8,7 +8,6 @@ import { FormTemplateBase } from '@pega/angular-sdk-components';
8
8
  selector: 'app-wide-narrow-form',
9
9
  templateUrl: './wide-narrow-form.component.html',
10
10
  styleUrls: ['./wide-narrow-form.component.scss'],
11
- standalone: true,
12
11
  imports: [CommonModule, forwardRef(() => ComponentMapperComponent)]
13
12
  })
14
13
  export class WideNarrowFormComponent extends FormTemplateBase implements OnInit, OnChanges {
@@ -8,7 +8,6 @@ import { ComponentMapperComponent } from '@pega/angular-sdk-components';
8
8
  selector: 'app-wide-narrow-page',
9
9
  templateUrl: './wide-narrow-page.component.html',
10
10
  styleUrls: ['./wide-narrow-page.component.scss'],
11
- standalone: true,
12
11
  imports: [CommonModule, forwardRef(() => ComponentMapperComponent)]
13
12
  })
14
13
  export class WideNarrowPageComponent implements OnInit, OnDestroy {