@pega/angular-sdk-overrides 0.23.1

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 (495) hide show
  1. package/lib/designSystemExtension/alert/alert.component.html +19 -0
  2. package/lib/designSystemExtension/alert/alert.component.scss +52 -0
  3. package/lib/designSystemExtension/alert/alert.component.spec.ts +22 -0
  4. package/lib/designSystemExtension/alert/alert.component.ts +43 -0
  5. package/lib/designSystemExtension/alert-banner/alert-banner.component.html +12 -0
  6. package/lib/designSystemExtension/alert-banner/alert-banner.component.scss +0 -0
  7. package/lib/designSystemExtension/alert-banner/alert-banner.component.spec.ts +22 -0
  8. package/lib/designSystemExtension/alert-banner/alert-banner.component.ts +27 -0
  9. package/lib/designSystemExtension/banner/banner.component.html +28 -0
  10. package/lib/designSystemExtension/banner/banner.component.scss +64 -0
  11. package/lib/designSystemExtension/banner/banner.component.spec.ts +22 -0
  12. package/lib/designSystemExtension/banner/banner.component.ts +26 -0
  13. package/lib/designSystemExtension/case-create-stage/case-create-stage.component.html +12 -0
  14. package/lib/designSystemExtension/case-create-stage/case-create-stage.component.scss +0 -0
  15. package/lib/designSystemExtension/case-create-stage/case-create-stage.component.spec.ts +24 -0
  16. package/lib/designSystemExtension/case-create-stage/case-create-stage.component.ts +58 -0
  17. package/lib/designSystemExtension/material-case-summary/material-case-summary.component.html +52 -0
  18. package/lib/designSystemExtension/material-case-summary/material-case-summary.component.scss +142 -0
  19. package/lib/designSystemExtension/material-case-summary/material-case-summary.component.spec.ts +24 -0
  20. package/lib/designSystemExtension/material-case-summary/material-case-summary.component.ts +80 -0
  21. package/lib/designSystemExtension/material-details/material-details.component.html +40 -0
  22. package/lib/designSystemExtension/material-details/material-details.component.scss +121 -0
  23. package/lib/designSystemExtension/material-details/material-details.component.spec.ts +24 -0
  24. package/lib/designSystemExtension/material-details/material-details.component.ts +32 -0
  25. package/lib/designSystemExtension/material-details-fields/material-details-fields.component.html +23 -0
  26. package/lib/designSystemExtension/material-details-fields/material-details-fields.component.scss +33 -0
  27. package/lib/designSystemExtension/material-details-fields/material-details-fields.component.spec.ts +22 -0
  28. package/lib/designSystemExtension/material-details-fields/material-details-fields.component.ts +29 -0
  29. package/lib/designSystemExtension/material-summary-item/material-summary-item.component.html +37 -0
  30. package/lib/designSystemExtension/material-summary-item/material-summary-item.component.scss +127 -0
  31. package/lib/designSystemExtension/material-summary-item/material-summary-item.component.spec.ts +24 -0
  32. package/lib/designSystemExtension/material-summary-item/material-summary-item.component.ts +32 -0
  33. package/lib/designSystemExtension/material-summary-list/material-summary-list.component.html +3 -0
  34. package/lib/designSystemExtension/material-summary-list/material-summary-list.component.scss +1 -0
  35. package/lib/designSystemExtension/material-summary-list/material-summary-list.component.spec.ts +24 -0
  36. package/lib/designSystemExtension/material-summary-list/material-summary-list.component.ts +17 -0
  37. package/lib/designSystemExtension/material-utility/material-utility.component.html +17 -0
  38. package/lib/designSystemExtension/material-utility/material-utility.component.scss +52 -0
  39. package/lib/designSystemExtension/material-utility/material-utility.component.spec.ts +24 -0
  40. package/lib/designSystemExtension/material-utility/material-utility.component.ts +26 -0
  41. package/lib/designSystemExtension/material-vertical-tabs/material-vertical-tabs.component.html +12 -0
  42. package/lib/designSystemExtension/material-vertical-tabs/material-vertical-tabs.component.scss +28 -0
  43. package/lib/designSystemExtension/material-vertical-tabs/material-vertical-tabs.component.spec.ts +24 -0
  44. package/lib/designSystemExtension/material-vertical-tabs/material-vertical-tabs.component.ts +40 -0
  45. package/lib/designSystemExtension/operator/operator.component.html +20 -0
  46. package/lib/designSystemExtension/operator/operator.component.scss +83 -0
  47. package/lib/designSystemExtension/operator/operator.component.spec.ts +24 -0
  48. package/lib/designSystemExtension/operator/operator.component.ts +146 -0
  49. package/lib/designSystemExtension/pulse/pulse.component.html +3 -0
  50. package/lib/designSystemExtension/pulse/pulse.component.scss +8 -0
  51. package/lib/designSystemExtension/pulse/pulse.component.spec.ts +24 -0
  52. package/lib/designSystemExtension/pulse/pulse.component.ts +40 -0
  53. package/lib/designSystemExtension/rich-text-editor/rich-text-editor.component.html +33 -0
  54. package/lib/designSystemExtension/rich-text-editor/rich-text-editor.component.scss +20 -0
  55. package/lib/designSystemExtension/rich-text-editor/rich-text-editor.component.spec.ts +24 -0
  56. package/lib/designSystemExtension/rich-text-editor/rich-text-editor.component.ts +89 -0
  57. package/lib/designSystemExtension/wss-quick-create/wss-quick-create.component.html +13 -0
  58. package/lib/designSystemExtension/wss-quick-create/wss-quick-create.component.scss +43 -0
  59. package/lib/designSystemExtension/wss-quick-create/wss-quick-create.component.spec.ts +22 -0
  60. package/lib/designSystemExtension/wss-quick-create/wss-quick-create.component.ts +15 -0
  61. package/lib/field/auto-complete/auto-complete.component.html +32 -0
  62. package/lib/field/auto-complete/auto-complete.component.scss +20 -0
  63. package/lib/field/auto-complete/auto-complete.component.spec.ts +24 -0
  64. package/lib/field/auto-complete/auto-complete.component.ts +345 -0
  65. package/lib/field/auto-complete/config-ext.json +10 -0
  66. package/lib/field/cancel-alert/cancel-alert.component.html +18 -0
  67. package/lib/field/cancel-alert/cancel-alert.component.scss +24 -0
  68. package/lib/field/cancel-alert/cancel-alert.component.spec.ts +24 -0
  69. package/lib/field/cancel-alert/cancel-alert.component.ts +107 -0
  70. package/lib/field/check-box/check-box.component.html +41 -0
  71. package/lib/field/check-box/check-box.component.scss +24 -0
  72. package/lib/field/check-box/check-box.component.spec.ts +24 -0
  73. package/lib/field/check-box/check-box.component.ts +188 -0
  74. package/lib/field/check-box/config-ext.json +9 -0
  75. package/lib/field/currency/config-ext.json +9 -0
  76. package/lib/field/currency/currency.component.html +31 -0
  77. package/lib/field/currency/currency.component.scss +28 -0
  78. package/lib/field/currency/currency.component.spec.ts +24 -0
  79. package/lib/field/currency/currency.component.ts +197 -0
  80. package/lib/field/date/config-ext.json +9 -0
  81. package/lib/field/date/date.component.html +31 -0
  82. package/lib/field/date/date.component.scss +24 -0
  83. package/lib/field/date/date.component.spec.ts +24 -0
  84. package/lib/field/date/date.component.ts +245 -0
  85. package/lib/field/date-time/config-ext.json +8 -0
  86. package/lib/field/date-time/date-time.component.html +29 -0
  87. package/lib/field/date-time/date-time.component.scss +80 -0
  88. package/lib/field/date-time/date-time.component.spec.ts +24 -0
  89. package/lib/field/date-time/date-time.component.ts +224 -0
  90. package/lib/field/decimal/config-ext.json +8 -0
  91. package/lib/field/decimal/decimal.component.html +28 -0
  92. package/lib/field/decimal/decimal.component.scss +20 -0
  93. package/lib/field/decimal/decimal.component.spec.ts +24 -0
  94. package/lib/field/decimal/decimal.component.ts +187 -0
  95. package/lib/field/dropdown/config-ext.json +8 -0
  96. package/lib/field/dropdown/dropdown.component.html +31 -0
  97. package/lib/field/dropdown/dropdown.component.scss +25 -0
  98. package/lib/field/dropdown/dropdown.component.spec.ts +24 -0
  99. package/lib/field/dropdown/dropdown.component.ts +247 -0
  100. package/lib/field/email/config-ext.json +8 -0
  101. package/lib/field/email/email.component.html +27 -0
  102. package/lib/field/email/email.component.scss +20 -0
  103. package/lib/field/email/email.component.spec.ts +24 -0
  104. package/lib/field/email/email.component.ts +180 -0
  105. package/lib/field/integer/config-ext.json +8 -0
  106. package/lib/field/integer/integer.component.html +28 -0
  107. package/lib/field/integer/integer.component.scss +20 -0
  108. package/lib/field/integer/integer.component.spec.ts +24 -0
  109. package/lib/field/integer/integer.component.ts +185 -0
  110. package/lib/field/list-view-action-buttons/list-view-action-buttons.component.html +12 -0
  111. package/lib/field/list-view-action-buttons/list-view-action-buttons.component.scss +1 -0
  112. package/lib/field/list-view-action-buttons/list-view-action-buttons.component.spec.ts +22 -0
  113. package/lib/field/list-view-action-buttons/list-view-action-buttons.component.ts +40 -0
  114. package/lib/field/percentage/config-ext.json +8 -0
  115. package/lib/field/percentage/percentage.component.html +29 -0
  116. package/lib/field/percentage/percentage.component.scss +20 -0
  117. package/lib/field/percentage/percentage.component.spec.ts +24 -0
  118. package/lib/field/percentage/percentage.component.ts +181 -0
  119. package/lib/field/phone/config-ext.json +8 -0
  120. package/lib/field/phone/phone.component.html +26 -0
  121. package/lib/field/phone/phone.component.scss +81 -0
  122. package/lib/field/phone/phone.component.spec.ts +24 -0
  123. package/lib/field/phone/phone.component.ts +199 -0
  124. package/lib/field/radio-buttons/config-ext.json +8 -0
  125. package/lib/field/radio-buttons/radio-buttons.component.html +37 -0
  126. package/lib/field/radio-buttons/radio-buttons.component.scss +39 -0
  127. package/lib/field/radio-buttons/radio-buttons.component.spec.ts +24 -0
  128. package/lib/field/radio-buttons/radio-buttons.component.ts +241 -0
  129. package/lib/field/rich-text/rich-text.component.html +20 -0
  130. package/lib/field/rich-text/rich-text.component.scss +0 -0
  131. package/lib/field/rich-text/rich-text.component.spec.ts +24 -0
  132. package/lib/field/rich-text/rich-text.component.ts +131 -0
  133. package/lib/field/scalar-list/config-ext.json +8 -0
  134. package/lib/field/scalar-list/scalar-list.component.html +9 -0
  135. package/lib/field/scalar-list/scalar-list.component.scss +0 -0
  136. package/lib/field/scalar-list/scalar-list.component.spec.ts +22 -0
  137. package/lib/field/scalar-list/scalar-list.component.ts +119 -0
  138. package/lib/field/semantic-link/config-ext.json +7 -0
  139. package/lib/field/semantic-link/semantic-link.component.html +10 -0
  140. package/lib/field/semantic-link/semantic-link.component.scss +16 -0
  141. package/lib/field/semantic-link/semantic-link.component.spec.ts +0 -0
  142. package/lib/field/semantic-link/semantic-link.component.ts +70 -0
  143. package/lib/field/text/text.component.html +14 -0
  144. package/lib/field/text/text.component.scss +30 -0
  145. package/lib/field/text/text.component.spec.ts +24 -0
  146. package/lib/field/text/text.component.ts +158 -0
  147. package/lib/field/text-area/config-ext.json +8 -0
  148. package/lib/field/text-area/text-area.component.html +29 -0
  149. package/lib/field/text-area/text-area.component.scss +20 -0
  150. package/lib/field/text-area/text-area.component.spec.ts +24 -0
  151. package/lib/field/text-area/text-area.component.ts +186 -0
  152. package/lib/field/text-content/config-ext.json +7 -0
  153. package/lib/field/text-content/text-content.component.html +7 -0
  154. package/lib/field/text-content/text-content.component.scss +4 -0
  155. package/lib/field/text-content/text-content.component.spec.ts +24 -0
  156. package/lib/field/text-content/text-content.component.ts +89 -0
  157. package/lib/field/text-input/config-ext.json +8 -0
  158. package/lib/field/text-input/text-input.component.html +27 -0
  159. package/lib/field/text-input/text-input.component.scss +20 -0
  160. package/lib/field/text-input/text-input.component.spec.ts +24 -0
  161. package/lib/field/text-input/text-input.component.ts +183 -0
  162. package/lib/field/time/config-ext.json +8 -0
  163. package/lib/field/time/time.component.html +26 -0
  164. package/lib/field/time/time.component.scss +20 -0
  165. package/lib/field/time/time.component.spec.ts +24 -0
  166. package/lib/field/time/time.component.ts +177 -0
  167. package/lib/field/url/config-ext.json +8 -0
  168. package/lib/field/url/url.component.html +26 -0
  169. package/lib/field/url/url.component.scss +20 -0
  170. package/lib/field/url/url.component.spec.ts +24 -0
  171. package/lib/field/url/url.component.ts +179 -0
  172. package/lib/field/user-reference/config-ext.json +7 -0
  173. package/lib/field/user-reference/user-reference.component.html +48 -0
  174. package/lib/field/user-reference/user-reference.component.scss +30 -0
  175. package/lib/field/user-reference/user-reference.component.spec.ts +24 -0
  176. package/lib/field/user-reference/user-reference.component.ts +213 -0
  177. package/lib/infra/Containers/flow-container/flow-container.component.html +39 -0
  178. package/lib/infra/Containers/flow-container/flow-container.component.scss +33 -0
  179. package/lib/infra/Containers/flow-container/flow-container.component.spec.ts +24 -0
  180. package/lib/infra/Containers/flow-container/flow-container.component.ts +633 -0
  181. package/lib/infra/Containers/flow-container/helpers.ts +79 -0
  182. package/lib/infra/Containers/hybrid-view-container/hybrid-view-container.component.html +1 -0
  183. package/lib/infra/Containers/hybrid-view-container/hybrid-view-container.component.scss +0 -0
  184. package/lib/infra/Containers/hybrid-view-container/hybrid-view-container.component.spec.ts +24 -0
  185. package/lib/infra/Containers/hybrid-view-container/hybrid-view-container.component.ts +24 -0
  186. package/lib/infra/Containers/modal-view-container/modal-view-container.component.html +35 -0
  187. package/lib/infra/Containers/modal-view-container/modal-view-container.component.scss +29 -0
  188. package/lib/infra/Containers/modal-view-container/modal-view-container.component.spec.ts +24 -0
  189. package/lib/infra/Containers/modal-view-container/modal-view-container.component.ts +394 -0
  190. package/lib/infra/Containers/preview-view-container/preview-view-container.component.html +1 -0
  191. package/lib/infra/Containers/preview-view-container/preview-view-container.component.scss +0 -0
  192. package/lib/infra/Containers/preview-view-container/preview-view-container.component.spec.ts +24 -0
  193. package/lib/infra/Containers/preview-view-container/preview-view-container.component.ts +35 -0
  194. package/lib/infra/Containers/view-container/view-container.component.html +31 -0
  195. package/lib/infra/Containers/view-container/view-container.component.scss +7 -0
  196. package/lib/infra/Containers/view-container/view-container.component.spec.ts +24 -0
  197. package/lib/infra/Containers/view-container/view-container.component.ts +289 -0
  198. package/lib/infra/action-buttons/action-buttons.component.html +12 -0
  199. package/lib/infra/action-buttons/action-buttons.component.scss +1 -0
  200. package/lib/infra/action-buttons/action-buttons.component.spec.ts +24 -0
  201. package/lib/infra/action-buttons/action-buttons.component.ts +25 -0
  202. package/lib/infra/assignment/assignment.component.html +28 -0
  203. package/lib/infra/assignment/assignment.component.scss +0 -0
  204. package/lib/infra/assignment/assignment.component.spec.ts +24 -0
  205. package/lib/infra/assignment/assignment.component.ts +463 -0
  206. package/lib/infra/assignment-card/assignment-card.component.html +26 -0
  207. package/lib/infra/assignment-card/assignment-card.component.scss +9 -0
  208. package/lib/infra/assignment-card/assignment-card.component.spec.ts +24 -0
  209. package/lib/infra/assignment-card/assignment-card.component.ts +39 -0
  210. package/lib/infra/dashboard-filter/dashboard-filter.component.html +35 -0
  211. package/lib/infra/dashboard-filter/dashboard-filter.component.scss +14 -0
  212. package/lib/infra/dashboard-filter/dashboard-filter.component.spec.ts +24 -0
  213. package/lib/infra/dashboard-filter/dashboard-filter.component.ts +90 -0
  214. package/lib/infra/defer-load/defer-load.component.html +3 -0
  215. package/lib/infra/defer-load/defer-load.component.scss +0 -0
  216. package/lib/infra/defer-load/defer-load.component.spec.ts +24 -0
  217. package/lib/infra/defer-load/defer-load.component.ts +169 -0
  218. package/lib/infra/error-boundary/error-boundary.component.html +1 -0
  219. package/lib/infra/error-boundary/error-boundary.component.scss +0 -0
  220. package/lib/infra/error-boundary/error-boundary.component.spec.ts +22 -0
  221. package/lib/infra/error-boundary/error-boundary.component.ts +16 -0
  222. package/lib/infra/multi-step/multi-step.component.html +98 -0
  223. package/lib/infra/multi-step/multi-step.component.scss +247 -0
  224. package/lib/infra/multi-step/multi-step.component.spec.ts +24 -0
  225. package/lib/infra/multi-step/multi-step.component.ts +85 -0
  226. package/lib/infra/navbar/navbar.component.html +55 -0
  227. package/lib/infra/navbar/navbar.component.scss +154 -0
  228. package/lib/infra/navbar/navbar.component.spec.ts +24 -0
  229. package/lib/infra/navbar/navbar.component.ts +175 -0
  230. package/lib/infra/reference/reference.component.html +1 -0
  231. package/lib/infra/reference/reference.component.scss +0 -0
  232. package/lib/infra/reference/reference.component.ts +165 -0
  233. package/lib/infra/region/region.component.html +11 -0
  234. package/lib/infra/region/region.component.scss +0 -0
  235. package/lib/infra/region/region.component.spec.ts +24 -0
  236. package/lib/infra/region/region.component.ts +37 -0
  237. package/lib/infra/root-container/root-container.component.html +36 -0
  238. package/lib/infra/root-container/root-container.component.scss +20 -0
  239. package/lib/infra/root-container/root-container.component.spec.ts +24 -0
  240. package/lib/infra/root-container/root-container.component.ts +256 -0
  241. package/lib/infra/stages/stages.component.html +15 -0
  242. package/lib/infra/stages/stages.component.scss +109 -0
  243. package/lib/infra/stages/stages.component.spec.ts +24 -0
  244. package/lib/infra/stages/stages.component.ts +83 -0
  245. package/lib/infra/view/view.component.html +38 -0
  246. package/lib/infra/view/view.component.scss +16 -0
  247. package/lib/infra/view/view.component.spec.ts +24 -0
  248. package/lib/infra/view/view.component.ts +214 -0
  249. package/lib/template/app-shell/app-shell.component.html +15 -0
  250. package/lib/template/app-shell/app-shell.component.scss +51 -0
  251. package/lib/template/app-shell/app-shell.component.spec.ts +24 -0
  252. package/lib/template/app-shell/app-shell.component.ts +192 -0
  253. package/lib/template/banner-page/banner-page.component.html +12 -0
  254. package/lib/template/banner-page/banner-page.component.scss +0 -0
  255. package/lib/template/banner-page/banner-page.component.spec.ts +22 -0
  256. package/lib/template/banner-page/banner-page.component.ts +65 -0
  257. package/lib/template/case-summary/case-summary.component.html +1 -0
  258. package/lib/template/case-summary/case-summary.component.scss +44 -0
  259. package/lib/template/case-summary/case-summary.component.spec.ts +24 -0
  260. package/lib/template/case-summary/case-summary.component.ts +100 -0
  261. package/lib/template/case-summary/config-ext.json +8 -0
  262. package/lib/template/case-view/case-view.component.html +89 -0
  263. package/lib/template/case-view/case-view.component.scss +107 -0
  264. package/lib/template/case-view/case-view.component.spec.ts +24 -0
  265. package/lib/template/case-view/case-view.component.ts +242 -0
  266. package/lib/template/case-view/config-ext.json +8 -0
  267. package/lib/template/confirmation/config-ext.json +11 -0
  268. package/lib/template/confirmation/confirmation.component.html +23 -0
  269. package/lib/template/confirmation/confirmation.component.scss +10 -0
  270. package/lib/template/confirmation/confirmation.component.spec.ts +23 -0
  271. package/lib/template/confirmation/confirmation.component.ts +91 -0
  272. package/lib/template/data-reference/config-ext.json +8 -0
  273. package/lib/template/data-reference/data-reference.component.html +13 -0
  274. package/lib/template/data-reference/data-reference.component.scss +0 -0
  275. package/lib/template/data-reference/data-reference.component.spec.ts +24 -0
  276. package/lib/template/data-reference/data-reference.component.ts +275 -0
  277. package/lib/template/default-form/config-ext.json +8 -0
  278. package/lib/template/default-form/default-form.component.html +19 -0
  279. package/lib/template/default-form/default-form.component.scss +38 -0
  280. package/lib/template/default-form/default-form.component.spec.ts +24 -0
  281. package/lib/template/default-form/default-form.component.ts +76 -0
  282. package/lib/template/details/config-ext.json +9 -0
  283. package/lib/template/details/details.component.html +3 -0
  284. package/lib/template/details/details.component.scss +7 -0
  285. package/lib/template/details/details.component.spec.ts +24 -0
  286. package/lib/template/details/details.component.ts +113 -0
  287. package/lib/template/details-narrow-wide/config-ext.json +8 -0
  288. package/lib/template/details-narrow-wide/details-narrow-wide.component.html +4 -0
  289. package/lib/template/details-narrow-wide/details-narrow-wide.component.scss +7 -0
  290. package/lib/template/details-narrow-wide/details-narrow-wide.component.spec.ts +24 -0
  291. package/lib/template/details-narrow-wide/details-narrow-wide.component.ts +82 -0
  292. package/lib/template/details-one-column/config-ext.json +9 -0
  293. package/lib/template/details-one-column/details-one-column.component.html +1 -0
  294. package/lib/template/details-one-column/details-one-column.component.scss +0 -0
  295. package/lib/template/details-one-column/details-one-column.component.spec.ts +24 -0
  296. package/lib/template/details-one-column/details-one-column.component.ts +85 -0
  297. package/lib/template/details-sub-tabs/config-ext.json +8 -0
  298. package/lib/template/details-sub-tabs/details-sub-tabs.component.html +15 -0
  299. package/lib/template/details-sub-tabs/details-sub-tabs.component.scss +0 -0
  300. package/lib/template/details-sub-tabs/details-sub-tabs.component.spec.ts +24 -0
  301. package/lib/template/details-sub-tabs/details-sub-tabs.component.ts +73 -0
  302. package/lib/template/details-three-column/config-ext.json +8 -0
  303. package/lib/template/details-three-column/details-three-column.component.html +4 -0
  304. package/lib/template/details-three-column/details-three-column.component.scss +7 -0
  305. package/lib/template/details-three-column/details-three-column.component.spec.ts +24 -0
  306. package/lib/template/details-three-column/details-three-column.component.ts +94 -0
  307. package/lib/template/details-two-column/config-ext.json +8 -0
  308. package/lib/template/details-two-column/details-two-column.component.html +4 -0
  309. package/lib/template/details-two-column/details-two-column.component.scss +7 -0
  310. package/lib/template/details-two-column/details-two-column.component.spec.ts +24 -0
  311. package/lib/template/details-two-column/details-two-column.component.ts +92 -0
  312. package/lib/template/details-wide-narrow/config-ext.json +8 -0
  313. package/lib/template/details-wide-narrow/details-wide-narrow.component.html +4 -0
  314. package/lib/template/details-wide-narrow/details-wide-narrow.component.scss +7 -0
  315. package/lib/template/details-wide-narrow/details-wide-narrow.component.spec.ts +24 -0
  316. package/lib/template/details-wide-narrow/details-wide-narrow.component.ts +88 -0
  317. package/lib/template/dynamic-tabs/config-ext.json +36 -0
  318. package/lib/template/dynamic-tabs/dynamic-tabs.component.html +5 -0
  319. package/lib/template/dynamic-tabs/dynamic-tabs.component.scss +0 -0
  320. package/lib/template/dynamic-tabs/dynamic-tabs.component.spec.ts +22 -0
  321. package/lib/template/dynamic-tabs/dynamic-tabs.component.ts +78 -0
  322. package/lib/template/field-group-list/field-group-list.component.html +8 -0
  323. package/lib/template/field-group-list/field-group-list.component.scss +12 -0
  324. package/lib/template/field-group-list/field-group-list.component.spec.ts +22 -0
  325. package/lib/template/field-group-list/field-group-list.component.ts +18 -0
  326. package/lib/template/field-group-template/field-group-template.component.html +33 -0
  327. package/lib/template/field-group-template/field-group-template.component.scss +8 -0
  328. package/lib/template/field-group-template/field-group-template.component.spec.ts +22 -0
  329. package/lib/template/field-group-template/field-group-template.component.ts +168 -0
  330. package/lib/template/field-value-list/field-value-list.component.html +15 -0
  331. package/lib/template/field-value-list/field-value-list.component.scss +18 -0
  332. package/lib/template/field-value-list/field-value-list.component.spec.ts +22 -0
  333. package/lib/template/field-value-list/field-value-list.component.ts +15 -0
  334. package/lib/template/inline-dashboard/inline-dashboard.component.html +19 -0
  335. package/lib/template/inline-dashboard/inline-dashboard.component.scss +31 -0
  336. package/lib/template/inline-dashboard/inline-dashboard.component.spec.ts +24 -0
  337. package/lib/template/inline-dashboard/inline-dashboard.component.ts +24 -0
  338. package/lib/template/inline-dashboard-page/inline-dashboard-page.component.html +1 -0
  339. package/lib/template/inline-dashboard-page/inline-dashboard-page.component.scss +0 -0
  340. package/lib/template/inline-dashboard-page/inline-dashboard-page.component.spec.ts +24 -0
  341. package/lib/template/inline-dashboard-page/inline-dashboard-page.component.ts +55 -0
  342. package/lib/template/list-page/config-ext.json +7 -0
  343. package/lib/template/list-page/list-page.component.html +1 -0
  344. package/lib/template/list-page/list-page.component.scss +0 -0
  345. package/lib/template/list-page/list-page.component.spec.ts +24 -0
  346. package/lib/template/list-page/list-page.component.ts +13 -0
  347. package/lib/template/list-view/DefaultViewMeta.ts +220 -0
  348. package/lib/template/list-view/config-ext.json +8 -0
  349. package/lib/template/list-view/list-view.component.html +253 -0
  350. package/lib/template/list-view/list-view.component.scss +169 -0
  351. package/lib/template/list-view/list-view.component.spec.ts +24 -0
  352. package/lib/template/list-view/list-view.component.ts +1408 -0
  353. package/lib/template/list-view/listViewHelpers.ts +87 -0
  354. package/lib/template/list-view/utils.ts +745 -0
  355. package/lib/template/multi-reference-readonly/multi-reference-readonly.component.html +4 -0
  356. package/lib/template/multi-reference-readonly/multi-reference-readonly.component.scss +0 -0
  357. package/lib/template/multi-reference-readonly/multi-reference-readonly.component.spec.ts +22 -0
  358. package/lib/template/multi-reference-readonly/multi-reference-readonly.component.ts +54 -0
  359. package/lib/template/narrow-wide-form/config-ext.json +8 -0
  360. package/lib/template/narrow-wide-form/narrow-wide-form.component.html +16 -0
  361. package/lib/template/narrow-wide-form/narrow-wide-form.component.scss +20 -0
  362. package/lib/template/narrow-wide-form/narrow-wide-form.component.spec.ts +24 -0
  363. package/lib/template/narrow-wide-form/narrow-wide-form.component.ts +34 -0
  364. package/lib/template/one-column/config-ext.json +8 -0
  365. package/lib/template/one-column/one-column.component.html +11 -0
  366. package/lib/template/one-column/one-column.component.scss +3 -0
  367. package/lib/template/one-column/one-column.component.spec.ts +24 -0
  368. package/lib/template/one-column/one-column.component.ts +34 -0
  369. package/lib/template/one-column-page/config-ext.json +8 -0
  370. package/lib/template/one-column-page/one-column-page.component.html +1 -0
  371. package/lib/template/one-column-page/one-column-page.component.scss +0 -0
  372. package/lib/template/one-column-page/one-column-page.component.spec.ts +24 -0
  373. package/lib/template/one-column-page/one-column-page.component.ts +15 -0
  374. package/lib/template/one-column-tab/config-ext.json +8 -0
  375. package/lib/template/one-column-tab/one-column-tab.component.html +9 -0
  376. package/lib/template/one-column-tab/one-column-tab.component.scss +9 -0
  377. package/lib/template/one-column-tab/one-column-tab.component.ts +34 -0
  378. package/lib/template/page/page.component.html +12 -0
  379. package/lib/template/page/page.component.scss +3 -0
  380. package/lib/template/page/page.component.spec.ts +24 -0
  381. package/lib/template/page/page.component.ts +68 -0
  382. package/lib/template/promoted-filters/promoted-filters.component.html +27 -0
  383. package/lib/template/promoted-filters/promoted-filters.component.scss +7 -0
  384. package/lib/template/promoted-filters/promoted-filters.component.spec.ts +24 -0
  385. package/lib/template/promoted-filters/promoted-filters.component.ts +157 -0
  386. package/lib/template/repeating-structures/repeating-structures.component.html +21 -0
  387. package/lib/template/repeating-structures/repeating-structures.component.scss +17 -0
  388. package/lib/template/repeating-structures/repeating-structures.component.spec.ts +24 -0
  389. package/lib/template/repeating-structures/repeating-structures.component.ts +155 -0
  390. package/lib/template/simple-table/config-ext.json +7 -0
  391. package/lib/template/simple-table/simple-table.component.html +13 -0
  392. package/lib/template/simple-table/simple-table.component.scss +0 -0
  393. package/lib/template/simple-table/simple-table.component.spec.ts +24 -0
  394. package/lib/template/simple-table/simple-table.component.ts +171 -0
  395. package/lib/template/simple-table-manual/helpers.ts +294 -0
  396. package/lib/template/simple-table-manual/simple-table-manual.component.html +147 -0
  397. package/lib/template/simple-table-manual/simple-table-manual.component.scss +185 -0
  398. package/lib/template/simple-table-manual/simple-table-manual.component.spec.ts +24 -0
  399. package/lib/template/simple-table-manual/simple-table-manual.component.ts +950 -0
  400. package/lib/template/simple-table-select/simple-table-select.component.html +14 -0
  401. package/lib/template/simple-table-select/simple-table-select.component.scss +0 -0
  402. package/lib/template/simple-table-select/simple-table-select.component.spec.ts +24 -0
  403. package/lib/template/simple-table-select/simple-table-select.component.ts +151 -0
  404. package/lib/template/single-reference-readonly/single-reference-readonly.component.html +1 -0
  405. package/lib/template/single-reference-readonly/single-reference-readonly.component.scss +0 -0
  406. package/lib/template/single-reference-readonly/single-reference-readonly.component.spec.ts +22 -0
  407. package/lib/template/single-reference-readonly/single-reference-readonly.component.ts +15 -0
  408. package/lib/template/sub-tabs/config-ext.json +8 -0
  409. package/lib/template/sub-tabs/sub-tabs.component.html +12 -0
  410. package/lib/template/sub-tabs/sub-tabs.component.scss +3 -0
  411. package/lib/template/sub-tabs/sub-tabs.component.spec.ts +24 -0
  412. package/lib/template/sub-tabs/sub-tabs.component.ts +76 -0
  413. package/lib/template/three-column/config-ext.json +8 -0
  414. package/lib/template/three-column/three-column.component.html +13 -0
  415. package/lib/template/three-column/three-column.component.scss +16 -0
  416. package/lib/template/three-column/three-column.component.spec.ts +24 -0
  417. package/lib/template/three-column/three-column.component.ts +34 -0
  418. package/lib/template/three-column-page/config-ext.json +8 -0
  419. package/lib/template/three-column-page/three-column-page.component.html +1 -0
  420. package/lib/template/three-column-page/three-column-page.component.scss +0 -0
  421. package/lib/template/three-column-page/three-column-page.component.spec.ts +24 -0
  422. package/lib/template/three-column-page/three-column-page.component.ts +15 -0
  423. package/lib/template/two-column/config-ext.json +8 -0
  424. package/lib/template/two-column/two-column.component.html +16 -0
  425. package/lib/template/two-column/two-column.component.scss +28 -0
  426. package/lib/template/two-column/two-column.component.spec.ts +24 -0
  427. package/lib/template/two-column/two-column.component.ts +34 -0
  428. package/lib/template/two-column-page/config-ext.json +8 -0
  429. package/lib/template/two-column-page/two-column-page.component.html +1 -0
  430. package/lib/template/two-column-page/two-column-page.component.scss +0 -0
  431. package/lib/template/two-column-page/two-column-page.component.spec.ts +24 -0
  432. package/lib/template/two-column-page/two-column-page.component.ts +43 -0
  433. package/lib/template/two-column-tab/config-ext.json +8 -0
  434. package/lib/template/two-column-tab/two-column-tab.component.html +16 -0
  435. package/lib/template/two-column-tab/two-column-tab.component.scss +28 -0
  436. package/lib/template/two-column-tab/two-column-tab.component.spec.ts +24 -0
  437. package/lib/template/two-column-tab/two-column-tab.component.ts +34 -0
  438. package/lib/template/utils.ts +23 -0
  439. package/lib/template/wide-narrow-form/config-ext.json +8 -0
  440. package/lib/template/wide-narrow-form/wide-narrow-form.component.html +16 -0
  441. package/lib/template/wide-narrow-form/wide-narrow-form.component.scss +20 -0
  442. package/lib/template/wide-narrow-form/wide-narrow-form.component.spec.ts +24 -0
  443. package/lib/template/wide-narrow-form/wide-narrow-form.component.ts +34 -0
  444. package/lib/template/wide-narrow-page/config-ext.json +8 -0
  445. package/lib/template/wide-narrow-page/wide-narrow-page.component.html +6 -0
  446. package/lib/template/wide-narrow-page/wide-narrow-page.component.scss +0 -0
  447. package/lib/template/wide-narrow-page/wide-narrow-page.component.ts +61 -0
  448. package/lib/template/wss-nav-bar/wss-nav-bar.component.html +32 -0
  449. package/lib/template/wss-nav-bar/wss-nav-bar.component.scss +166 -0
  450. package/lib/template/wss-nav-bar/wss-nav-bar.component.spec.ts +22 -0
  451. package/lib/template/wss-nav-bar/wss-nav-bar.component.ts +172 -0
  452. package/lib/widget/app-announcement/app-announcement.component.html +13 -0
  453. package/lib/widget/app-announcement/app-announcement.component.scss +21 -0
  454. package/lib/widget/app-announcement/app-announcement.component.spec.ts +24 -0
  455. package/lib/widget/app-announcement/app-announcement.component.ts +35 -0
  456. package/lib/widget/app-announcement/config-ext.json +8 -0
  457. package/lib/widget/attachment/attachment.component.html +31 -0
  458. package/lib/widget/attachment/attachment.component.scss +57 -0
  459. package/lib/widget/attachment/attachment.component.spec.ts +24 -0
  460. package/lib/widget/attachment/attachment.component.ts +705 -0
  461. package/lib/widget/attachment/config-ext.json +7 -0
  462. package/lib/widget/case-history/case-history.component.html +12 -0
  463. package/lib/widget/case-history/case-history.component.scss +22 -0
  464. package/lib/widget/case-history/case-history.component.spec.ts +24 -0
  465. package/lib/widget/case-history/case-history.component.ts +104 -0
  466. package/lib/widget/case-history/config-ext.json +8 -0
  467. package/lib/widget/feed-container/config-ext.json +12 -0
  468. package/lib/widget/feed-container/feed-api.ts +410 -0
  469. package/lib/widget/feed-container/feed-container.component.html +137 -0
  470. package/lib/widget/feed-container/feed-container.component.scss +188 -0
  471. package/lib/widget/feed-container/feed-container.component.spec.ts +24 -0
  472. package/lib/widget/feed-container/feed-container.component.ts +616 -0
  473. package/lib/widget/file-utility/config-ext.json +8 -0
  474. package/lib/widget/file-utility/file-utility.component.html +100 -0
  475. package/lib/widget/file-utility/file-utility.component.scss +107 -0
  476. package/lib/widget/file-utility/file-utility.component.spec.ts +24 -0
  477. package/lib/widget/file-utility/file-utility.component.ts +759 -0
  478. package/lib/widget/list-utility/list-utility.component.html +32 -0
  479. package/lib/widget/list-utility/list-utility.component.scss +135 -0
  480. package/lib/widget/list-utility/list-utility.component.spec.ts +24 -0
  481. package/lib/widget/list-utility/list-utility.component.ts +47 -0
  482. package/lib/widget/quick-create/quick-create.component.html +1 -0
  483. package/lib/widget/quick-create/quick-create.component.scss +0 -0
  484. package/lib/widget/quick-create/quick-create.component.spec.ts +22 -0
  485. package/lib/widget/quick-create/quick-create.component.ts +96 -0
  486. package/lib/widget/todo/config-ext.json +8 -0
  487. package/lib/widget/todo/todo.component.html +47 -0
  488. package/lib/widget/todo/todo.component.scss +98 -0
  489. package/lib/widget/todo/todo.component.spec.ts +24 -0
  490. package/lib/widget/todo/todo.component.ts +265 -0
  491. package/lib/widget/utility/utility.component.html +1 -0
  492. package/lib/widget/utility/utility.component.scss +0 -0
  493. package/lib/widget/utility/utility.component.spec.ts +24 -0
  494. package/lib/widget/utility/utility.component.ts +50 -0
  495. package/package.json +14 -0
@@ -0,0 +1,633 @@
1
+ import { Component, OnInit, Input, ChangeDetectorRef, NgZone, forwardRef, OnDestroy } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { FormBuilder, FormGroup } from '@angular/forms';
4
+ import { MatCardModule } from '@angular/material/card';
5
+ import { publicConstants } from '@pega/pcore-pconnect-typedefs/constants';
6
+ import { AngularPConnectData, AngularPConnectService } from '@pega/angular-sdk-components';
7
+ import { ProgressSpinnerService } from '@pega/angular-sdk-components';
8
+ import { ReferenceComponent } from '@pega/angular-sdk-components';
9
+ import { Utils } from '@pega/angular-sdk-components';
10
+ import { getToDoAssignments, showBanner } from './helpers';
11
+ import { ComponentMapperComponent } from '@pega/angular-sdk-components';
12
+
13
+ /**
14
+ * WARNING: It is not expected that this file should be modified. It is part of infrastructure code that works with
15
+ * Redux and creation/update of Redux containers and PConnect. Modifying this code could have undesireable results and
16
+ * is totally at your own risk.
17
+ */
18
+
19
+ interface FlowContainerProps {
20
+ // If any, enter additional props that only exist on this component
21
+ children?: any[];
22
+ name?: string;
23
+ routingInfo?: any;
24
+ pageMessages: any[];
25
+ }
26
+
27
+ @Component({
28
+ selector: 'app-flow-container',
29
+ templateUrl: './flow-container.component.html',
30
+ styleUrls: ['./flow-container.component.scss'],
31
+ providers: [Utils],
32
+ standalone: true,
33
+ imports: [CommonModule, MatCardModule, forwardRef(() => ComponentMapperComponent)]
34
+ })
35
+ export class FlowContainerComponent implements OnInit, OnDestroy {
36
+ @Input() pConn$: typeof PConnect;
37
+
38
+ // For interaction with AngularPConnect
39
+ angularPConnectData: AngularPConnectData = {};
40
+ pCoreConstants: typeof publicConstants;
41
+ configProps$: FlowContainerProps;
42
+
43
+ formGroup$: FormGroup;
44
+ arChildren$: any[];
45
+ itemKey$ = '';
46
+ containerName$: string;
47
+ buildName$: string;
48
+
49
+ // todo
50
+ todo_showTodo$ = false;
51
+ todo_caseInfoID$: string;
52
+ todo_showTodoList$ = false;
53
+ todo_datasource$: any;
54
+ todo_headerText$ = 'To do';
55
+ todo_type$: string;
56
+ todo_context$: string;
57
+ todo_pConn$: typeof PConnect;
58
+
59
+ bHasCancel = false;
60
+
61
+ // messages
62
+ caseMessages$: string;
63
+ bHasCaseMessages$ = false;
64
+ checkSvg$: string;
65
+ TODO: any;
66
+ bShowConfirm = false;
67
+ bShowBanner: boolean;
68
+ confirm_pconn: any;
69
+ localizedVal: any;
70
+ localeCategory = 'Messages';
71
+ localeReference: any;
72
+ banners: any[];
73
+ // itemKey: string = ""; // JA - this is what Nebula/Constellation uses to pass to finishAssignment, navigateToStep
74
+
75
+ constructor(
76
+ private angularPConnect: AngularPConnectService,
77
+ private cdRef: ChangeDetectorRef,
78
+ private psService: ProgressSpinnerService,
79
+ private fb: FormBuilder,
80
+ private ngZone: NgZone,
81
+ private utils: Utils
82
+ ) {
83
+ // create the formGroup
84
+ this.formGroup$ = this.fb.group({ hideRequired: false });
85
+ }
86
+
87
+ ngOnInit() {
88
+ // First thing in initialization is registering and subscribing to the AngularPConnect service
89
+ this.angularPConnectData = this.angularPConnect.registerAndSubscribeComponent(this, this.onStateChange);
90
+
91
+ this.localizedVal = PCore.getLocaleUtils().getLocaleValue;
92
+ const caseInfo = this.pConn$.getCaseInfo();
93
+ this.localeReference = `${caseInfo?.getClassName()}!CASE!${caseInfo.getName()}`.toUpperCase();
94
+
95
+ // Then, continue on with other initialization
96
+
97
+ // get the PCore constants
98
+ this.pCoreConstants = PCore.getConstants();
99
+ const { TODO } = this.pCoreConstants;
100
+ this.TODO = TODO;
101
+ // with init, force children to be loaded of global pConn
102
+ this.initComponent(true);
103
+
104
+ this.initContainer();
105
+
106
+ PCore.getPubSubUtils().subscribe(
107
+ PCore.getConstants().PUB_SUB_EVENTS.EVENT_CANCEL,
108
+ () => {
109
+ this.handleCancel();
110
+ },
111
+ 'cancelAssignment'
112
+ );
113
+
114
+ PCore.getPubSubUtils().subscribe(
115
+ 'cancelPressed',
116
+ () => {
117
+ this.handleCancelPressed();
118
+ },
119
+ 'cancelPressed'
120
+ );
121
+ }
122
+
123
+ ngOnDestroy() {
124
+ if (this.angularPConnectData.unsubscribeFn) {
125
+ this.angularPConnectData.unsubscribeFn();
126
+ }
127
+
128
+ PCore.getPubSubUtils().unsubscribe(PCore.getConstants().PUB_SUB_EVENTS.EVENT_CANCEL, 'cancelAssignment');
129
+
130
+ PCore.getPubSubUtils().unsubscribe('cancelPressed', 'cancelPressed');
131
+ }
132
+
133
+ handleCancel() {
134
+ // cancel happened, so ok to initialize the flow container
135
+ sessionStorage.setItem('okToInitFlowContainer', 'true');
136
+ }
137
+
138
+ handleCancelPressed() {
139
+ this.bHasCancel = true;
140
+ }
141
+
142
+ // Callback passed when subscribing to store change
143
+ onStateChange() {
144
+ this.checkAndUpdate();
145
+ }
146
+
147
+ checkAndUpdate() {
148
+ // Should always check the bridge to see if the component should update itself (re-render)
149
+ const bUpdateSelf = this.angularPConnect.shouldComponentUpdate(this);
150
+
151
+ // ONLY call updateSelf when the component should update
152
+ // AND removing the "gate" that was put there since shouldComponentUpdate
153
+ // should be the real "gate"
154
+ if (bUpdateSelf) {
155
+ // don't want to redraw the flow container when there are page messages, because
156
+ // the redraw causes us to loose the errors on the elements
157
+ const completeProps = this.angularPConnect.getCurrentCompleteProps(this) as FlowContainerProps;
158
+ if (!completeProps.pageMessages || completeProps.pageMessages.length == 0) {
159
+ // with a cancel, need to timeout so todo will update correctly
160
+ if (this.bHasCancel) {
161
+ this.bHasCancel = false;
162
+ setTimeout(() => {
163
+ this.updateSelf();
164
+ }, 500);
165
+ } else {
166
+ this.updateSelf();
167
+ }
168
+ } else {
169
+ this.showPageMessages(completeProps);
170
+ }
171
+ }
172
+ }
173
+
174
+ showPageMessages(completeProps: FlowContainerProps) {
175
+ this.ngZone.run(() => {
176
+ const pageMessages = completeProps.pageMessages;
177
+ this.banners = [{ messages: pageMessages?.map(msg => this.localizedVal(msg.message, 'Messages')), variant: 'urgent' }];
178
+ });
179
+ }
180
+
181
+ getTodoVisibilty() {
182
+ // @ts-ignore - second parameter pageReference for getValue method should be optional
183
+ const caseViewMode = this.pConn$.getValue('context_data.caseViewMode');
184
+ if (caseViewMode && caseViewMode === 'review') {
185
+ const kid = this.pConn$.getChildren()[0];
186
+ const todoKid = kid.getPConnect().getChildren()[0];
187
+
188
+ this.todo_pConn$ = todoKid.getPConnect();
189
+
190
+ return true;
191
+ }
192
+
193
+ return !(caseViewMode && caseViewMode === 'perform');
194
+ }
195
+
196
+ initContainer() {
197
+ const containerMgr: any = this.pConn$.getContainerManager();
198
+ const baseContext = this.pConn$.getContextName();
199
+ const containerName = this.pConn$.getContainerName();
200
+ const containerType = 'single';
201
+
202
+ const flowContainerTarget = `${baseContext}/${containerName}`;
203
+ const isContainerItemAvailable = PCore.getContainerUtils().getActiveContainerItemName(flowContainerTarget);
204
+
205
+ // clear out since we are initializing
206
+ sessionStorage.setItem('okToInitFlowContainer', 'false');
207
+
208
+ if (!isContainerItemAvailable) {
209
+ containerMgr.initializeContainers({
210
+ type: containerType
211
+ });
212
+
213
+ /* remove commented out code when update React/WC
214
+ *** instead of getting values here to pass to addContainerItem, we call the function below "addContainerItem"
215
+ *** which comes from flow container helpers in Nebula
216
+ */
217
+ // containerMgr.addContainerItem({
218
+ // semanticURL: "",
219
+ // key: this.pConn$.getValue("key"),
220
+ // flowName: this.pConn$.getValue("flowName"),
221
+ // caseViewMode: "perform",
222
+ // data: this.pConn$.getDataObject(baseContext),
223
+ // containerType
224
+ // });
225
+
226
+ this.addContainerItem(this.pConn$);
227
+ }
228
+ }
229
+
230
+ initComponent(bLoadChildren: boolean) {
231
+ this.configProps$ = this.pConn$.resolveConfigProps(this.pConn$.getConfigProps()) as FlowContainerProps;
232
+ this.showPageMessages(this.configProps$);
233
+
234
+ // when true, update arChildren from pConn, otherwise, arChilren will be updated in updateSelf()
235
+ if (bLoadChildren) {
236
+ this.arChildren$ = this.pConn$.getChildren() as any[];
237
+ }
238
+
239
+ // const oData = this.pConn$.getDataObject();
240
+
241
+ // const activeActionLabel: string = '';
242
+ // const { getPConnect } = this.arChildren$[0].getPConnect();
243
+
244
+ this.todo_showTodo$ = this.getTodoVisibilty();
245
+
246
+ // create pointers to functions
247
+ // const containerMgr = this.pConn$.getContainerManager();
248
+ // const actionsAPI = this.pConn$.getActionsApi();
249
+ const baseContext = this.pConn$.getContextName();
250
+ const acName = this.pConn$.getContainerName();
251
+
252
+ if (this.itemKey$ === '') {
253
+ this.itemKey$ = baseContext.concat('/').concat(acName);
254
+ }
255
+
256
+ this.pConn$.isBoundToState();
257
+
258
+ // inside
259
+ // get fist kid, get the name and display
260
+ // pass first kid to a view container, which will disperse it to a view which will use one column, two column, etc.
261
+ const oWorkItem = this.arChildren$[0].getPConnect();
262
+ // const oWorkMeta = oWorkItem.getRawMetadata();
263
+ const oWorkData = oWorkItem.getDataObject();
264
+
265
+ // this.containerName$ = oWorkMeta["name"];
266
+ if (bLoadChildren && oWorkData) {
267
+ this.containerName$ = this.localizedVal(this.getActiveViewLabel() || oWorkData.caseInfo.assignments[0].name, undefined, this.localeReference);
268
+ }
269
+
270
+ // turn off spinner
271
+ this.psService.sendMessage(false);
272
+ }
273
+
274
+ hasAssignments() {
275
+ let hasAssignments = false;
276
+ // @ts-ignore - second parameter pageReference for getValue method should be optional
277
+ const assignmentsList = this.pConn$.getValue(this.pCoreConstants.CASE_INFO.D_CASE_ASSIGNMENTS_RESULTS);
278
+ const thisOperator = PCore.getEnvironmentInfo().getOperatorIdentifier();
279
+ // 8.7 includes assignments in Assignments List that may be assigned to
280
+ // a different operator. So, see if there are any assignments for
281
+ // the current operator
282
+ let bAssignmentsForThisOperator = false;
283
+
284
+ // Bail if there is no assignmentsList
285
+ if (!assignmentsList) {
286
+ return hasAssignments;
287
+ }
288
+
289
+ for (const assignment of assignmentsList) {
290
+ if ((assignment as any).assigneeInfo.ID === thisOperator) {
291
+ bAssignmentsForThisOperator = true;
292
+ }
293
+ }
294
+
295
+ const hasChildCaseAssignments = this.hasChildCaseAssignments();
296
+
297
+ if (bAssignmentsForThisOperator || hasChildCaseAssignments || this.isCaseWideLocalAction()) {
298
+ hasAssignments = true;
299
+ }
300
+
301
+ return hasAssignments;
302
+ }
303
+
304
+ isCaseWideLocalAction() {
305
+ // @ts-ignore - second parameter pageReference for getValue method should be optional
306
+ const actionID = this.pConn$.getValue(this.pCoreConstants.CASE_INFO.ACTIVE_ACTION_ID);
307
+ // @ts-ignore - second parameter pageReference for getValue method should be optional
308
+ const caseActions = this.pConn$.getValue(this.pCoreConstants.CASE_INFO.AVAILABLEACTIONS) as any[];
309
+ let bCaseWideAction = false;
310
+ if (caseActions && actionID) {
311
+ const actionObj = caseActions.find(caseAction => caseAction.ID === actionID);
312
+ if (actionObj) {
313
+ bCaseWideAction = actionObj.type === 'Case';
314
+ }
315
+ }
316
+ return bCaseWideAction;
317
+ }
318
+
319
+ hasChildCaseAssignments() {
320
+ // @ts-ignore - second parameter pageReference for getValue method should be optional
321
+ const childCases = this.pConn$.getValue(this.pCoreConstants.CASE_INFO.CHILD_ASSIGNMENTS);
322
+
323
+ return childCases && childCases.length > 0;
324
+ }
325
+
326
+ getActiveViewLabel() {
327
+ let activeActionLabel = '';
328
+
329
+ const { CASE_INFO: CASE_CONSTS } = PCore.getConstants();
330
+
331
+ // @ts-ignore - second parameter pageReference for getValue method should be optional
332
+ const caseActions = this.pConn$.getValue(CASE_CONSTS.CASE_INFO_ACTIONS) as any[];
333
+ // @ts-ignore - second parameter pageReference for getValue method should be optional
334
+ const activeActionID = this.pConn$.getValue(CASE_CONSTS.ACTIVE_ACTION_ID);
335
+ const activeAction = caseActions?.find(action => action.ID === activeActionID);
336
+ if (activeAction) {
337
+ activeActionLabel = activeAction.name;
338
+ }
339
+ return activeActionLabel;
340
+ }
341
+
342
+ findCurrentIndicies(arStepperSteps: any[], arIndicies: number[], depth: number): number[] {
343
+ let count = 0;
344
+ arStepperSteps.forEach(step => {
345
+ if (step.visited_status == 'current') {
346
+ arIndicies[depth] = count;
347
+
348
+ // add in
349
+ step.step_status = '';
350
+ } else if (step.visited_status == 'success') {
351
+ count++;
352
+ step.step_status = 'completed';
353
+ } else {
354
+ count++;
355
+ step.step_status = '';
356
+ }
357
+
358
+ if (step.steps) {
359
+ arIndicies = this.findCurrentIndicies(step.steps, arIndicies, depth + 1);
360
+ }
361
+ });
362
+
363
+ return arIndicies;
364
+ }
365
+
366
+ // Called when bridge shouldComponentUpdate indicates that this component
367
+ // should update itself (re-render)
368
+ updateSelf() {
369
+ // for now
370
+ // const { getPConnect } = this.arChildren$[0].getPConnect();
371
+ const localPConn = this.arChildren$[0].getPConnect();
372
+
373
+ // @ts-ignore - second parameter pageReference for getValue method should be optional
374
+ const caseViewMode = this.pConn$.getValue('context_data.caseViewMode');
375
+ this.bShowBanner = showBanner(this.pConn$);
376
+
377
+ if (caseViewMode && caseViewMode == 'review') {
378
+ this.loadReviewPage(localPConn);
379
+
380
+ // in Nebula/Constellation, when cancel is called, somehow the constructor for flowContainer is called which
381
+ // does init/add of containers. This mimics that
382
+ if (sessionStorage.getItem('okToInitFlowContainer') == 'true') {
383
+ this.initContainer();
384
+ }
385
+ } else if (caseViewMode && caseViewMode === 'perform') {
386
+ // perform
387
+ this.todo_showTodo$ = false;
388
+
389
+ // this is different than Angular SDK, as we need to initContainer if root container reloaded
390
+ if (sessionStorage.getItem('okToInitFlowContainer') == 'true') {
391
+ this.initContainer();
392
+ }
393
+ }
394
+
395
+ // if have caseMessage show message and end
396
+ this.showCaseMessages();
397
+
398
+ this.updateFlowContainerChildren();
399
+ }
400
+
401
+ loadReviewPage(localPConn) {
402
+ const { CASE_INFO: CASE_CONSTS } = PCore.getConstants();
403
+
404
+ setTimeout(() => {
405
+ this.ngZone.run(() => {
406
+ /*
407
+ *** renove this commmented out code when React/WC is updated
408
+ *** this code is replace with the call to "getToDoAssigments" function below
409
+
410
+ const assignmentsList = localPConn.getValue(
411
+ CASE_CONSTS.D_CASE_ASSIGNMENTS_RESULTS
412
+ );
413
+ // add status
414
+ const status = localPConn.getValue("caseInfo.status");
415
+
416
+ let localAssignment = JSON.parse(JSON.stringify(assignmentsList[0]));
417
+ localAssignment.status = status;
418
+ let locaAssignmentsList: Array<any> = [];
419
+ locaAssignmentsList.push(localAssignment);
420
+
421
+ const caseActions = localPConn.getValue(CASE_CONSTS.CASE_INFO_ACTIONS);
422
+ */
423
+
424
+ const todoAssignments = getToDoAssignments(this.pConn$);
425
+
426
+ if (todoAssignments && todoAssignments.length > 0) {
427
+ // @ts-ignore - second parameter pageReference for getValue method should be optional
428
+ this.todo_caseInfoID$ = this.pConn$.getValue(CASE_CONSTS.CASE_INFO_ID);
429
+ this.todo_datasource$ = { source: todoAssignments };
430
+ }
431
+
432
+ /* remove this commented out code when update React/WC */
433
+ // let kid = this.pConn$.getChildren()[0];
434
+
435
+ // kid.getPConnect() can be a Reference component. So normalize it just in case
436
+ // let todoKid = ReferenceComponent.normalizePConn(kid.getPConnect()).getChildren()[0];
437
+
438
+ // this.todo_pConn$ = todoKid.getPConnect();
439
+
440
+ /* code change here to note for React/WC */
441
+ // todo now needs pConn to open the work item on click "go"
442
+ this.todo_pConn$ = this.pConn$;
443
+
444
+ // still needs the context of the original work item
445
+ this.todo_context$ = localPConn.getContextName();
446
+
447
+ this.todo_showTodo$ = true;
448
+
449
+ this.psService.sendMessage(false);
450
+ });
451
+ });
452
+ }
453
+
454
+ showCaseMessages() {
455
+ // @ts-ignore - second parameter pageReference for getValue method should be optional
456
+ this.caseMessages$ = this.localizedVal(this.pConn$.getValue('caseMessages'), this.localeCategory);
457
+ if (this.caseMessages$ || !this.hasAssignments()) {
458
+ this.bHasCaseMessages$ = true;
459
+ this.bShowConfirm = true;
460
+ this.checkSvg$ = this.utils.getImageSrc('check', this.utils.getSDKStaticContentUrl());
461
+ // Temp fix for 8.7 change: confirmationNote no longer coming through in caseMessages$.
462
+ // So, if we get here and caseMessages$ is empty, use default value in DX API response
463
+ if (!this.caseMessages$) {
464
+ this.caseMessages$ = this.localizedVal('Thank you! The next step in this case has been routed appropriately.', this.localeCategory);
465
+ }
466
+
467
+ // publish this "assignmentFinished" for mashup, need to get approved as a standard
468
+ // @ts-ignore - second parameter “payload” for publish method should be optional
469
+ PCore.getPubSubUtils().publish('assignmentFinished');
470
+
471
+ this.psService.sendMessage(false);
472
+ } else if (this.bHasCaseMessages$) {
473
+ this.bHasCaseMessages$ = false;
474
+ this.bShowConfirm = false;
475
+ }
476
+ }
477
+
478
+ updateFlowContainerChildren() {
479
+ // routingInfo was added as component prop in populateAdditionalProps
480
+ const routingInfo = this.angularPConnect.getComponentProp(this, 'routingInfo');
481
+
482
+ let loadingInfo: any;
483
+ try {
484
+ // @ts-ignore - Property 'getLoadingStatus' is private and only accessible within class 'C11nEnv'
485
+ loadingInfo = this.pConn$.getLoadingStatus();
486
+ } catch (ex) {
487
+ /* empty */
488
+ }
489
+
490
+ // this check in routingInfo, mimic Nebula/Constellation (React) to check and get the internals of the
491
+ // flowContainer and force updates to pConnect/redux
492
+ if (routingInfo && loadingInfo !== undefined) {
493
+ const currentOrder = routingInfo.accessedOrder;
494
+ const currentItems = routingInfo.items;
495
+ const type = routingInfo.type;
496
+ if (currentOrder && currentItems) {
497
+ // JA - making more similar to Nebula/Constellation
498
+ const key = currentOrder[currentOrder.length - 1];
499
+
500
+ // save off itemKey to be used for finishAssignment, etc.
501
+ // timeout and detectChanges to avoid ExpressionChangedAfterItHasBeenCheckedError
502
+ setTimeout(() => {
503
+ if (key && key != '') {
504
+ this.itemKey$ = key;
505
+ this.cdRef.detectChanges();
506
+ }
507
+ });
508
+
509
+ // eslint-disable-next-line sonarjs/no-collapsible-if
510
+ if (currentOrder.length > 0) {
511
+ if (currentItems[key] && currentItems[key].view && type === 'single' && Object.keys(currentItems[key].view).length > 0) {
512
+ // when we get here, it it because the flow action data has changed
513
+ // from the server, and need to add to pConnect and update children
514
+
515
+ this.addPConnectAndUpdateChildren(currentItems[key], key);
516
+ }
517
+ }
518
+ }
519
+ }
520
+ }
521
+
522
+ addPConnectAndUpdateChildren(currentItem, key) {
523
+ const localPConn = this.arChildren$[0].getPConnect();
524
+
525
+ const rootView = currentItem.view;
526
+ const { context, name: ViewName } = rootView.config;
527
+ const config: any = { meta: rootView };
528
+
529
+ // Don't go ahead if View doesn't exist
530
+ if (!ViewName) {
531
+ return;
532
+ }
533
+
534
+ this.todo_context$ = currentItem.context;
535
+
536
+ config.options = {
537
+ context: currentItem.context,
538
+ pageReference: context || localPConn.getPageReference(),
539
+ hasForm: true,
540
+ isFlowContainer: true,
541
+ containerName: localPConn.getContainerName(),
542
+ containerItemName: key,
543
+ parentPageReference: localPConn.getPageReference()
544
+ };
545
+
546
+ const configObject = PCore.createPConnect(config);
547
+ this.confirm_pconn = configObject.getPConnect();
548
+ // 8.7 - config might be a Reference component so, need to normalize it to get
549
+ // the View if it is a Reference component. And need to pass in the getPConnect
550
+ // to have normalize do a c11Env createComponent (that makes sure options.hasForm
551
+ // is passed along to all the component's children)
552
+ const normalizedConfigObject = ReferenceComponent.normalizePConn(configObject.getPConnect());
553
+ // We want the children to be the PConnect itself, not the result of calling getPConnect(),
554
+ // So need to get the PConnect of the normalized component we just created...
555
+ const normalizedConfigObjectAsPConnect = normalizedConfigObject.getComponent();
556
+
557
+ // makes sure Angular tracks these changes
558
+ this.ngZone.run(() => {
559
+ this.buildName$ = this.getBuildName();
560
+ // what comes back now in configObject is the children of the flowContainer
561
+
562
+ this.arChildren$ = [];
563
+ this.arChildren$.push(normalizedConfigObjectAsPConnect);
564
+
565
+ this.psService.sendMessage(false);
566
+
567
+ const oWorkItem = configObject.getPConnect();
568
+ // @ts-ignore - parameter “contextName” for getDataObject method should be optional
569
+ const oWorkData: any = oWorkItem.getDataObject();
570
+
571
+ this.containerName$ = this.localizedVal(this.getActiveViewLabel() || oWorkData.caseInfo.assignments?.[0].name, undefined, this.localeReference);
572
+ });
573
+ }
574
+
575
+ getBuildName(): string {
576
+ // let { getPConnect, name } = this.pConn$.props;
577
+ const context = this.pConn$.getContextName();
578
+ let viewContainerName = this.pConn$.getContainerName();
579
+
580
+ if (!viewContainerName) viewContainerName = '';
581
+ return `${context.toUpperCase()}/${viewContainerName.toUpperCase()}`;
582
+ }
583
+
584
+ formValid(): boolean {
585
+ this.touchAll();
586
+ return this.formGroup$.valid;
587
+ }
588
+
589
+ touchAll(): void {
590
+ Object.values(this.formGroup$.controls).forEach(control => {
591
+ control.markAsTouched();
592
+ });
593
+ }
594
+
595
+ // eslint-disable-next-line sonarjs/no-identical-functions
596
+ topViewRefresh(): void {
597
+ Object.values(this.formGroup$.controls).forEach(control => {
598
+ control.markAsTouched();
599
+ });
600
+ }
601
+
602
+ // helpers - copyied from flow container helpers.js
603
+
604
+ addContainerItem(pConnect) {
605
+ // copied from flow container helper.js
606
+ const containerManager = pConnect.getContainerManager();
607
+ const contextName = pConnect.getContextName(); // here we will get parent context name, as flow container is child of view container
608
+ const caseViewMode = pConnect.getValue('context_data.caseViewMode');
609
+
610
+ let key;
611
+ let flowName;
612
+
613
+ if (caseViewMode !== 'review') {
614
+ const target = contextName.substring(0, contextName.lastIndexOf('_'));
615
+ const activeContainerItemID = PCore.getContainerUtils().getActiveContainerItemName(target);
616
+ const containerItemData = PCore.getContainerUtils().getContainerItemData(target, activeContainerItemID);
617
+
618
+ if (containerItemData) {
619
+ ({ key, flowName } = containerItemData);
620
+ }
621
+ }
622
+
623
+ containerManager.addContainerItem({
624
+ semanticURL: '',
625
+ key,
626
+ flowName,
627
+ caseViewMode: 'perform',
628
+ resourceType: 'ASSIGNMENT',
629
+ data: pConnect.getDataObject(contextName)
630
+ });
631
+ }
632
+ // helpers end
633
+ }