@pega/angular-sdk-components 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 (300) hide show
  1. package/README.md +24 -0
  2. package/_shared/styles.scss +28 -0
  3. package/esm2022/lib/_bridge/angular-pconnect.mjs +416 -0
  4. package/esm2022/lib/_bridge/component-mapper/component-mapper.component.mjs +114 -0
  5. package/esm2022/lib/_bridge/helpers/sdk-pega-component-map.mjs +228 -0
  6. package/esm2022/lib/_bridge/helpers/sdk_component_map.mjs +142 -0
  7. package/esm2022/lib/_components/designSystemExtension/alert/alert.component.mjs +50 -0
  8. package/esm2022/lib/_components/designSystemExtension/alert-banner/alert-banner.component.mjs +29 -0
  9. package/esm2022/lib/_components/designSystemExtension/banner/banner.component.mjs +31 -0
  10. package/esm2022/lib/_components/designSystemExtension/case-create-stage/case-create-stage.component.mjs +51 -0
  11. package/esm2022/lib/_components/designSystemExtension/material-case-summary/material-case-summary.component.mjs +80 -0
  12. package/esm2022/lib/_components/designSystemExtension/material-details/material-details.component.mjs +37 -0
  13. package/esm2022/lib/_components/designSystemExtension/material-details-fields/material-details-fields.component.mjs +31 -0
  14. package/esm2022/lib/_components/designSystemExtension/material-summary-item/material-summary-item.component.mjs +36 -0
  15. package/esm2022/lib/_components/designSystemExtension/material-summary-list/material-summary-list.component.mjs +25 -0
  16. package/esm2022/lib/_components/designSystemExtension/material-utility/material-utility.component.mjs +28 -0
  17. package/esm2022/lib/_components/designSystemExtension/material-vertical-tabs/material-vertical-tabs.component.mjs +42 -0
  18. package/esm2022/lib/_components/designSystemExtension/operator/operator.component.mjs +136 -0
  19. package/esm2022/lib/_components/designSystemExtension/pulse/pulse.component.mjs +33 -0
  20. package/esm2022/lib/_components/designSystemExtension/rich-text-editor/rich-text-editor.component.mjs +93 -0
  21. package/esm2022/lib/_components/designSystemExtension/wss-quick-create/wss-quick-create.component.mjs +18 -0
  22. package/esm2022/lib/_components/field/auto-complete/auto-complete.component.mjs +286 -0
  23. package/esm2022/lib/_components/field/cancel-alert/cancel-alert.component.mjs +98 -0
  24. package/esm2022/lib/_components/field/check-box/check-box.component.mjs +157 -0
  25. package/esm2022/lib/_components/field/currency/currency.component.mjs +160 -0
  26. package/esm2022/lib/_components/field/date/date.component.mjs +219 -0
  27. package/esm2022/lib/_components/field/date-time/date-time.component.mjs +200 -0
  28. package/esm2022/lib/_components/field/decimal/decimal.component.mjs +157 -0
  29. package/esm2022/lib/_components/field/dropdown/dropdown.component.mjs +197 -0
  30. package/esm2022/lib/_components/field/email/email.component.mjs +150 -0
  31. package/esm2022/lib/_components/field/integer/integer.component.mjs +155 -0
  32. package/esm2022/lib/_components/field/list-view-action-buttons/list-view-action-buttons.component.mjs +44 -0
  33. package/esm2022/lib/_components/field/percentage/percentage.component.mjs +155 -0
  34. package/esm2022/lib/_components/field/phone/phone.component.mjs +167 -0
  35. package/esm2022/lib/_components/field/radio-buttons/radio-buttons.component.mjs +189 -0
  36. package/esm2022/lib/_components/field/rich-text/rich-text.component.mjs +103 -0
  37. package/esm2022/lib/_components/field/scalar-list/scalar-list.component.mjs +95 -0
  38. package/esm2022/lib/_components/field/semantic-link/semantic-link.component.mjs +57 -0
  39. package/esm2022/lib/_components/field/text/text.component.mjs +138 -0
  40. package/esm2022/lib/_components/field/text-area/text-area.component.mjs +155 -0
  41. package/esm2022/lib/_components/field/text-content/text-content.component.mjs +69 -0
  42. package/esm2022/lib/_components/field/text-input/text-input.component.mjs +152 -0
  43. package/esm2022/lib/_components/field/time/time.component.mjs +151 -0
  44. package/esm2022/lib/_components/field/url/url.component.mjs +150 -0
  45. package/esm2022/lib/_components/field/user-reference/user-reference.component.mjs +175 -0
  46. package/esm2022/lib/_components/infra/Containers/flow-container/flow-container.component.mjs +491 -0
  47. package/esm2022/lib/_components/infra/Containers/flow-container/helpers.mjs +68 -0
  48. package/esm2022/lib/_components/infra/Containers/hybrid-view-container/hybrid-view-container.component.mjs +24 -0
  49. package/esm2022/lib/_components/infra/Containers/modal-view-container/modal-view-container.component.mjs +314 -0
  50. package/esm2022/lib/_components/infra/Containers/preview-view-container/preview-view-container.component.mjs +32 -0
  51. package/esm2022/lib/_components/infra/Containers/view-container/view-container.component.mjs +219 -0
  52. package/esm2022/lib/_components/infra/action-buttons/action-buttons.component.mjs +31 -0
  53. package/esm2022/lib/_components/infra/assignment/assignment.component.mjs +387 -0
  54. package/esm2022/lib/_components/infra/assignment-card/assignment-card.component.mjs +47 -0
  55. package/esm2022/lib/_components/infra/dashboard-filter/dashboard-filter.component.mjs +88 -0
  56. package/esm2022/lib/_components/infra/defer-load/defer-load.component.mjs +144 -0
  57. package/esm2022/lib/_components/infra/error-boundary/error-boundary.component.mjs +18 -0
  58. package/esm2022/lib/_components/infra/multi-step/multi-step.component.mjs +80 -0
  59. package/esm2022/lib/_components/infra/navbar/navbar.component.mjs +132 -0
  60. package/esm2022/lib/_components/infra/reference/reference.component.mjs +133 -0
  61. package/esm2022/lib/_components/infra/region/region.component.mjs +33 -0
  62. package/esm2022/lib/_components/infra/root-container/root-container.component.mjs +228 -0
  63. package/esm2022/lib/_components/infra/stages/stages.component.mjs +62 -0
  64. package/esm2022/lib/_components/infra/view/view.component.mjs +173 -0
  65. package/esm2022/lib/_components/template/app-shell/app-shell.component.mjs +140 -0
  66. package/esm2022/lib/_components/template/banner-page/banner-page.component.mjs +43 -0
  67. package/esm2022/lib/_components/template/case-summary/case-summary.component.mjs +72 -0
  68. package/esm2022/lib/_components/template/case-view/case-view.component.mjs +196 -0
  69. package/esm2022/lib/_components/template/confirmation/confirmation.component.mjs +68 -0
  70. package/esm2022/lib/_components/template/data-reference/data-reference.component.mjs +239 -0
  71. package/esm2022/lib/_components/template/default-form/default-form.component.mjs +61 -0
  72. package/esm2022/lib/_components/template/details/details.component.mjs +102 -0
  73. package/esm2022/lib/_components/template/details-narrow-wide/details-narrow-wide.component.mjs +72 -0
  74. package/esm2022/lib/_components/template/details-one-column/details-one-column.component.mjs +71 -0
  75. package/esm2022/lib/_components/template/details-sub-tabs/details-sub-tabs.component.mjs +66 -0
  76. package/esm2022/lib/_components/template/details-three-column/details-three-column.component.mjs +80 -0
  77. package/esm2022/lib/_components/template/details-two-column/details-two-column.component.mjs +77 -0
  78. package/esm2022/lib/_components/template/details-wide-narrow/details-wide-narrow.component.mjs +77 -0
  79. package/esm2022/lib/_components/template/dynamic-tabs/dynamic-tabs.component.mjs +65 -0
  80. package/esm2022/lib/_components/template/field-group-list/field-group-list.component.mjs +23 -0
  81. package/esm2022/lib/_components/template/field-group-template/field-group-template.component.mjs +134 -0
  82. package/esm2022/lib/_components/template/field-value-list/field-value-list.component.mjs +19 -0
  83. package/esm2022/lib/_components/template/inline-dashboard/inline-dashboard.component.mjs +22 -0
  84. package/esm2022/lib/_components/template/inline-dashboard-page/inline-dashboard-page.component.mjs +40 -0
  85. package/esm2022/lib/_components/template/list-page/list-page.component.mjs +14 -0
  86. package/esm2022/lib/_components/template/list-view/DefaultViewMeta.mjs +208 -0
  87. package/esm2022/lib/_components/template/list-view/list-view.component.mjs +1198 -0
  88. package/esm2022/lib/_components/template/list-view/listViewHelpers.mjs +61 -0
  89. package/esm2022/lib/_components/template/list-view/utils.mjs +660 -0
  90. package/esm2022/lib/_components/template/multi-reference-readonly/multi-reference-readonly.component.mjs +44 -0
  91. package/esm2022/lib/_components/template/narrow-wide-form/narrow-wide-form.component.mjs +30 -0
  92. package/esm2022/lib/_components/template/one-column/one-column.component.mjs +30 -0
  93. package/esm2022/lib/_components/template/one-column-page/one-column-page.component.mjs +16 -0
  94. package/esm2022/lib/_components/template/one-column-tab/one-column-tab.component.mjs +30 -0
  95. package/esm2022/lib/_components/template/page/page.component.mjs +52 -0
  96. package/esm2022/lib/_components/template/promoted-filters/promoted-filters.component.mjs +149 -0
  97. package/esm2022/lib/_components/template/repeating-structures/repeating-structures.component.mjs +139 -0
  98. package/esm2022/lib/_components/template/simple-table/simple-table.component.mjs +106 -0
  99. package/esm2022/lib/_components/template/simple-table-manual/helpers.mjs +270 -0
  100. package/esm2022/lib/_components/template/simple-table-manual/simple-table-manual.component.mjs +760 -0
  101. package/esm2022/lib/_components/template/simple-table-select/simple-table-select.component.mjs +131 -0
  102. package/esm2022/lib/_components/template/single-reference-readonly/single-reference-readonly.component.mjs +16 -0
  103. package/esm2022/lib/_components/template/sub-tabs/sub-tabs.component.mjs +67 -0
  104. package/esm2022/lib/_components/template/three-column/three-column.component.mjs +30 -0
  105. package/esm2022/lib/_components/template/three-column-page/three-column-page.component.mjs +16 -0
  106. package/esm2022/lib/_components/template/two-column/two-column.component.mjs +30 -0
  107. package/esm2022/lib/_components/template/two-column-page/two-column-page.component.mjs +40 -0
  108. package/esm2022/lib/_components/template/two-column-tab/two-column-tab.component.mjs +30 -0
  109. package/esm2022/lib/_components/template/utils.mjs +22 -0
  110. package/esm2022/lib/_components/template/wide-narrow-form/wide-narrow-form.component.mjs +30 -0
  111. package/esm2022/lib/_components/template/wide-narrow-page/wide-narrow-page.component.mjs +53 -0
  112. package/esm2022/lib/_components/template/wss-nav-bar/wss-nav-bar.component.mjs +135 -0
  113. package/esm2022/lib/_components/widget/app-announcement/app-announcement.component.mjs +24 -0
  114. package/esm2022/lib/_components/widget/attachment/attachment.component.mjs +588 -0
  115. package/esm2022/lib/_components/widget/case-history/case-history.component.mjs +81 -0
  116. package/esm2022/lib/_components/widget/feed-container/feed-container.component.mjs +525 -0
  117. package/esm2022/lib/_components/widget/file-utility/file-utility.component.mjs +631 -0
  118. package/esm2022/lib/_components/widget/list-utility/list-utility.component.mjs +57 -0
  119. package/esm2022/lib/_components/widget/quick-create/quick-create.component.mjs +75 -0
  120. package/esm2022/lib/_components/widget/todo/todo.component.mjs +213 -0
  121. package/esm2022/lib/_components/widget/utility/utility.component.mjs +34 -0
  122. package/esm2022/lib/_directives/thousand-seperator.directive.mjs +28 -0
  123. package/esm2022/lib/_helpers/case-utils.mjs +71 -0
  124. package/esm2022/lib/_helpers/common.mjs +20 -0
  125. package/esm2022/lib/_helpers/currency-utils.mjs +57 -0
  126. package/esm2022/lib/_helpers/date-format-utils.mjs +68 -0
  127. package/esm2022/lib/_helpers/event-util.mjs +19 -0
  128. package/esm2022/lib/_helpers/field-group-utils.mjs +47 -0
  129. package/esm2022/lib/_helpers/filter-utils.mjs +106 -0
  130. package/esm2022/lib/_helpers/formatters/currency-map.mjs +903 -0
  131. package/esm2022/lib/_helpers/formatters/format-utils.mjs +68 -0
  132. package/esm2022/lib/_helpers/tab-utils.mjs +59 -0
  133. package/esm2022/lib/_helpers/template-utils.mjs +56 -0
  134. package/esm2022/lib/_helpers/utils.mjs +386 -0
  135. package/esm2022/lib/_helpers/versionHelpers.mjs +12 -0
  136. package/esm2022/lib/_messages/error-messages.service.mjs +31 -0
  137. package/esm2022/lib/_messages/get-login-status.service.mjs +26 -0
  138. package/esm2022/lib/_messages/oauth-response.service.mjs +30 -0
  139. package/esm2022/lib/_messages/progress-spinner.service.mjs +30 -0
  140. package/esm2022/lib/_messages/reset-pconnect.service.mjs +31 -0
  141. package/esm2022/lib/_messages/update-worklist.service.mjs +30 -0
  142. package/esm2022/lib/_services/case.service.mjs +32 -0
  143. package/esm2022/lib/_services/datapage.service.mjs +52 -0
  144. package/esm2022/lib/_services/endpoints.mjs +61 -0
  145. package/esm2022/lib/_services/server-config.service.mjs +52 -0
  146. package/esm2022/lib/_types/PConnProps.interface.mjs +2 -0
  147. package/esm2022/pega-angular-sdk-components.mjs +5 -0
  148. package/esm2022/public-api.mjs +138 -0
  149. package/esm2022/sdk-local-component-map.mjs +9 -0
  150. package/fesm2022/pega-angular-sdk-components.mjs +17380 -0
  151. package/fesm2022/pega-angular-sdk-components.mjs.map +1 -0
  152. package/index.d.ts +5 -0
  153. package/lib/_bridge/angular-pconnect.d.ts +140 -0
  154. package/lib/_bridge/component-mapper/component-mapper.component.d.ts +20 -0
  155. package/lib/_bridge/helpers/sdk-pega-component-map.d.ts +213 -0
  156. package/lib/_bridge/helpers/sdk_component_map.d.ts +3 -0
  157. package/lib/_components/designSystemExtension/alert/alert.component.d.ts +12 -0
  158. package/lib/_components/designSystemExtension/alert-banner/alert-banner.component.d.ts +13 -0
  159. package/lib/_components/designSystemExtension/banner/banner.component.d.ts +15 -0
  160. package/lib/_components/designSystemExtension/case-create-stage/case-create-stage.component.d.ts +20 -0
  161. package/lib/_components/designSystemExtension/material-case-summary/material-case-summary.component.d.ts +18 -0
  162. package/lib/_components/designSystemExtension/material-details/material-details.component.d.ts +15 -0
  163. package/lib/_components/designSystemExtension/material-details-fields/material-details-fields.component.d.ts +12 -0
  164. package/lib/_components/designSystemExtension/material-summary-item/material-summary-item.component.d.ts +15 -0
  165. package/lib/_components/designSystemExtension/material-summary-list/material-summary-list.component.d.ts +9 -0
  166. package/lib/_components/designSystemExtension/material-utility/material-utility.component.d.ts +16 -0
  167. package/lib/_components/designSystemExtension/material-vertical-tabs/material-vertical-tabs.component.d.ts +11 -0
  168. package/lib/_components/designSystemExtension/operator/operator.component.d.ts +25 -0
  169. package/lib/_components/designSystemExtension/pulse/pulse.component.d.ts +16 -0
  170. package/lib/_components/designSystemExtension/rich-text-editor/rich-text-editor.component.d.ts +23 -0
  171. package/lib/_components/designSystemExtension/wss-quick-create/wss-quick-create.component.d.ts +7 -0
  172. package/lib/_components/field/auto-complete/auto-complete.component.d.ts +74 -0
  173. package/lib/_components/field/cancel-alert/cancel-alert.component.d.ts +24 -0
  174. package/lib/_components/field/check-box/check-box.component.d.ts +48 -0
  175. package/lib/_components/field/currency/currency.component.d.ts +50 -0
  176. package/lib/_components/field/date/date.component.d.ts +65 -0
  177. package/lib/_components/field/date-time/date-time.component.d.ts +55 -0
  178. package/lib/_components/field/decimal/decimal.component.d.ts +46 -0
  179. package/lib/_components/field/dropdown/dropdown.component.d.ts +60 -0
  180. package/lib/_components/field/email/email.component.d.ts +44 -0
  181. package/lib/_components/field/integer/integer.component.d.ts +44 -0
  182. package/lib/_components/field/list-view-action-buttons/list-view-action-buttons.component.d.ts +15 -0
  183. package/lib/_components/field/percentage/percentage.component.d.ts +44 -0
  184. package/lib/_components/field/phone/phone.component.d.ts +48 -0
  185. package/lib/_components/field/radio-buttons/radio-buttons.component.d.ts +60 -0
  186. package/lib/_components/field/rich-text/rich-text.component.d.ts +42 -0
  187. package/lib/_components/field/scalar-list/scalar-list.component.d.ts +37 -0
  188. package/lib/_components/field/semantic-link/semantic-link.component.d.ts +30 -0
  189. package/lib/_components/field/text/text.component.d.ts +40 -0
  190. package/lib/_components/field/text-area/text-area.component.d.ts +45 -0
  191. package/lib/_components/field/text-content/text-content.component.d.ts +30 -0
  192. package/lib/_components/field/text-input/text-input.component.d.ts +45 -0
  193. package/lib/_components/field/time/time.component.d.ts +43 -0
  194. package/lib/_components/field/url/url.component.d.ts +43 -0
  195. package/lib/_components/field/user-reference/user-reference.component.d.ts +39 -0
  196. package/lib/_components/infra/Containers/flow-container/flow-container.component.d.ts +85 -0
  197. package/lib/_components/infra/Containers/flow-container/helpers.d.ts +2 -0
  198. package/lib/_components/infra/Containers/hybrid-view-container/hybrid-view-container.component.d.ts +15 -0
  199. package/lib/_components/infra/Containers/modal-view-container/modal-view-container.component.d.ts +71 -0
  200. package/lib/_components/infra/Containers/preview-view-container/preview-view-container.component.d.ts +15 -0
  201. package/lib/_components/infra/Containers/view-container/view-container.component.d.ts +51 -0
  202. package/lib/_components/infra/action-buttons/action-buttons.component.d.ts +12 -0
  203. package/lib/_components/infra/assignment/assignment.component.d.ts +72 -0
  204. package/lib/_components/infra/assignment-card/assignment-card.component.d.ts +18 -0
  205. package/lib/_components/infra/dashboard-filter/dashboard-filter.component.d.ts +20 -0
  206. package/lib/_components/infra/defer-load/defer-load.component.d.ts +46 -0
  207. package/lib/_components/infra/error-boundary/error-boundary.component.d.ts +8 -0
  208. package/lib/_components/infra/multi-step/multi-step.component.d.ts +31 -0
  209. package/lib/_components/infra/navbar/navbar.component.d.ts +51 -0
  210. package/lib/_components/infra/reference/reference.component.d.ts +16 -0
  211. package/lib/_components/infra/region/region.component.d.ts +14 -0
  212. package/lib/_components/infra/root-container/root-container.component.d.ts +35 -0
  213. package/lib/_components/infra/stages/stages.component.d.ts +29 -0
  214. package/lib/_components/infra/view/view.component.d.ts +40 -0
  215. package/lib/_components/template/app-shell/app-shell.component.d.ts +55 -0
  216. package/lib/_components/template/banner-page/banner-page.component.d.ts +27 -0
  217. package/lib/_components/template/case-summary/case-summary.component.d.ts +34 -0
  218. package/lib/_components/template/case-view/case-view.component.d.ts +56 -0
  219. package/lib/_components/template/confirmation/confirmation.component.d.ts +38 -0
  220. package/lib/_components/template/data-reference/data-reference.component.d.ts +41 -0
  221. package/lib/_components/template/default-form/default-form.component.d.ts +21 -0
  222. package/lib/_components/template/details/details.component.d.ts +20 -0
  223. package/lib/_components/template/details-narrow-wide/details-narrow-wide.component.d.ts +21 -0
  224. package/lib/_components/template/details-one-column/details-one-column.component.d.ts +22 -0
  225. package/lib/_components/template/details-sub-tabs/details-sub-tabs.component.d.ts +24 -0
  226. package/lib/_components/template/details-three-column/details-three-column.component.d.ts +25 -0
  227. package/lib/_components/template/details-two-column/details-two-column.component.d.ts +25 -0
  228. package/lib/_components/template/details-wide-narrow/details-wide-narrow.component.d.ts +24 -0
  229. package/lib/_components/template/dynamic-tabs/dynamic-tabs.component.d.ts +20 -0
  230. package/lib/_components/template/field-group-list/field-group-list.component.d.ts +9 -0
  231. package/lib/_components/template/field-group-template/field-group-template.component.d.ts +52 -0
  232. package/lib/_components/template/field-value-list/field-value-list.component.d.ts +8 -0
  233. package/lib/_components/template/inline-dashboard/inline-dashboard.component.d.ts +16 -0
  234. package/lib/_components/template/inline-dashboard-page/inline-dashboard-page.component.d.ts +25 -0
  235. package/lib/_components/template/list-page/list-page.component.d.ts +7 -0
  236. package/lib/_components/template/list-view/DefaultViewMeta.d.ts +1 -0
  237. package/lib/_components/template/list-view/list-view.component.d.ts +157 -0
  238. package/lib/_components/template/list-view/listViewHelpers.d.ts +1 -0
  239. package/lib/_components/template/list-view/utils.d.ts +118 -0
  240. package/lib/_components/template/multi-reference-readonly/multi-reference-readonly.component.d.ts +25 -0
  241. package/lib/_components/template/narrow-wide-form/narrow-wide-form.component.d.ts +14 -0
  242. package/lib/_components/template/one-column/one-column.component.d.ts +14 -0
  243. package/lib/_components/template/one-column-page/one-column-page.component.d.ts +9 -0
  244. package/lib/_components/template/one-column-tab/one-column-tab.component.d.ts +14 -0
  245. package/lib/_components/template/page/page.component.d.ts +25 -0
  246. package/lib/_components/template/promoted-filters/promoted-filters.component.d.ts +35 -0
  247. package/lib/_components/template/repeating-structures/repeating-structures.component.d.ts +37 -0
  248. package/lib/_components/template/simple-table/simple-table.component.d.ts +43 -0
  249. package/lib/_components/template/simple-table-manual/helpers.d.ts +81 -0
  250. package/lib/_components/template/simple-table-manual/simple-table-manual.component.d.ts +159 -0
  251. package/lib/_components/template/simple-table-select/simple-table-select.component.d.ts +32 -0
  252. package/lib/_components/template/single-reference-readonly/single-reference-readonly.component.d.ts +9 -0
  253. package/lib/_components/template/sub-tabs/sub-tabs.component.d.ts +26 -0
  254. package/lib/_components/template/three-column/three-column.component.d.ts +14 -0
  255. package/lib/_components/template/three-column-page/three-column-page.component.d.ts +9 -0
  256. package/lib/_components/template/two-column/two-column.component.d.ts +14 -0
  257. package/lib/_components/template/two-column-page/two-column-page.component.d.ts +17 -0
  258. package/lib/_components/template/two-column-tab/two-column-tab.component.d.ts +14 -0
  259. package/lib/_components/template/utils.d.ts +2 -0
  260. package/lib/_components/template/wide-narrow-form/wide-narrow-form.component.d.ts +14 -0
  261. package/lib/_components/template/wide-narrow-page/wide-narrow-page.component.d.ts +20 -0
  262. package/lib/_components/template/wss-nav-bar/wss-nav-bar.component.d.ts +50 -0
  263. package/lib/_components/widget/app-announcement/app-announcement.component.d.ts +19 -0
  264. package/lib/_components/widget/attachment/attachment.component.d.ts +99 -0
  265. package/lib/_components/widget/case-history/case-history.component.d.ts +24 -0
  266. package/lib/_components/widget/feed-container/feed-container.component.d.ts +49 -0
  267. package/lib/_components/widget/file-utility/file-utility.component.d.ts +150 -0
  268. package/lib/_components/widget/list-utility/list-utility.component.d.ts +23 -0
  269. package/lib/_components/widget/quick-create/quick-create.component.d.ts +29 -0
  270. package/lib/_components/widget/todo/todo.component.d.ts +64 -0
  271. package/lib/_components/widget/utility/utility.component.d.ts +25 -0
  272. package/lib/_directives/thousand-seperator.directive.d.ts +9 -0
  273. package/lib/_helpers/case-utils.d.ts +19 -0
  274. package/lib/_helpers/common.d.ts +3 -0
  275. package/lib/_helpers/currency-utils.d.ts +10 -0
  276. package/lib/_helpers/date-format-utils.d.ts +12 -0
  277. package/lib/_helpers/event-util.d.ts +2 -0
  278. package/lib/_helpers/field-group-utils.d.ts +16 -0
  279. package/lib/_helpers/filter-utils.d.ts +46 -0
  280. package/lib/_helpers/formatters/currency-map.d.ts +1132 -0
  281. package/lib/_helpers/formatters/format-utils.d.ts +8 -0
  282. package/lib/_helpers/tab-utils.d.ts +4 -0
  283. package/lib/_helpers/template-utils.d.ts +16 -0
  284. package/lib/_helpers/utils.d.ts +32 -0
  285. package/lib/_helpers/versionHelpers.d.ts +8 -0
  286. package/lib/_messages/error-messages.service.d.ts +15 -0
  287. package/lib/_messages/get-login-status.service.d.ts +10 -0
  288. package/lib/_messages/oauth-response.service.d.ts +14 -0
  289. package/lib/_messages/progress-spinner.service.d.ts +14 -0
  290. package/lib/_messages/reset-pconnect.service.d.ts +15 -0
  291. package/lib/_messages/update-worklist.service.d.ts +14 -0
  292. package/lib/_services/case.service.d.ts +12 -0
  293. package/lib/_services/datapage.service.d.ts +14 -0
  294. package/lib/_services/endpoints.d.ts +39 -0
  295. package/lib/_services/server-config.service.d.ts +31 -0
  296. package/lib/_types/PConnProps.interface.d.ts +17 -0
  297. package/package.json +28 -0
  298. package/public-api.d.ts +133 -0
  299. package/sdk-local-component-map.d.ts +2 -0
  300. package/sdk-local-component-map.ts +12 -0
@@ -0,0 +1,132 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { MatMenuModule } from '@angular/material/menu';
4
+ import { MatListModule } from '@angular/material/list';
5
+ import { logout } from '@pega/auth/lib/sdk-auth-manager';
6
+ import { Utils } from '../../../_helpers/utils';
7
+ import * as i0 from "@angular/core";
8
+ import * as i1 from "../../../_bridge/angular-pconnect";
9
+ import * as i2 from "../../../_messages/progress-spinner.service";
10
+ import * as i3 from "../../../_helpers/utils";
11
+ import * as i4 from "@angular/common";
12
+ import * as i5 from "@angular/material/list";
13
+ import * as i6 from "@angular/material/menu";
14
+ export class NavbarComponent {
15
+ constructor(angularPConnect, chRef, psService, ngZone, utils) {
16
+ this.angularPConnect = angularPConnect;
17
+ this.chRef = chRef;
18
+ this.psService = psService;
19
+ this.ngZone = ngZone;
20
+ this.utils = utils;
21
+ // For interaction with AngularPConnect
22
+ this.angularPConnectData = {};
23
+ this.bShowCaseTypes$ = false;
24
+ this.portalApp$ = '';
25
+ this.showAppName$ = false;
26
+ this.localeCategory = 'AppShell';
27
+ }
28
+ ngOnInit() {
29
+ // First thing in initialization is registering and subscribing to the AngularPConnect service
30
+ this.angularPConnectData = this.angularPConnect.registerAndSubscribeComponent(this, this.onStateChange);
31
+ this.navIcon$ = this.utils.getSDKStaticContentUrl().concat('assets/pzpega-logo-mark.svg');
32
+ // this is a dummy "get", because right now images are in http and the main screen is https
33
+ // so the images don't load automatically. This call, makes an initial hit that allows the
34
+ // rest of the images to show up
35
+ this.loadImage(this.navIcon$);
36
+ this.initComponent();
37
+ this.localizedVal = PCore.getLocaleUtils().getLocaleValue;
38
+ }
39
+ // ngOnDestroy
40
+ // unsubscribe from Store
41
+ ngOnDestroy() {
42
+ if (this.angularPConnectData.unsubscribeFn) {
43
+ this.angularPConnectData.unsubscribeFn();
44
+ }
45
+ }
46
+ loadImage(src) {
47
+ return new Promise(resolve => {
48
+ resolve(src);
49
+ });
50
+ }
51
+ // Callback passed when subscribing to store change
52
+ onStateChange() {
53
+ // Should always check the bridge to see if the component should update itself (re-render)
54
+ const bUpdateSelf = this.angularPConnect.shouldComponentUpdate(this);
55
+ // NOTE: can call angularPConnect.getState with optional args for detailed logging: bLogMsg and component object
56
+ this.angularPConnect.getState();
57
+ if (bUpdateSelf) {
58
+ this.updateSelf();
59
+ }
60
+ }
61
+ updateSelf() {
62
+ this.initComponent();
63
+ }
64
+ initComponent() {
65
+ this.ngZone.run(() => {
66
+ this.navIcon$ = this.utils.getSDKStaticContentUrl().concat('assets/pzpega-logo-mark.svg');
67
+ this.navExpandCollapse$ = this.utils.getImageSrc('plus', this.utils.getSDKStaticContentUrl());
68
+ // Then, continue on with other initialization
69
+ // making a copy, so can add info
70
+ this.navPages$ = JSON.parse(JSON.stringify(this.pages$));
71
+ this.navPages$.forEach(page => {
72
+ page.iconName = this.utils.getImageSrc(page.pxPageViewIcon, this.utils.getSDKStaticContentUrl());
73
+ });
74
+ this.actionsAPI = this.pConn$.getActionsApi();
75
+ this.createWork = this.actionsAPI.createWork.bind(this.actionsAPI);
76
+ this.showPage = this.actionsAPI.showPage.bind(this.actionsAPI);
77
+ this.configProps$ = this.pConn$.resolveConfigProps(this.pConn$.getConfigProps());
78
+ this.logout = this.actionsAPI.logout.bind(this.actionsAPI);
79
+ // const oData = this.pConn$.getDataObject();
80
+ this.portalLogoImage$ = this.utils.getSDKStaticContentUrl().concat('assets/pzpega-logo-mark.svg');
81
+ this.portalOperator$ = PCore.getEnvironmentInfo().getOperatorName();
82
+ this.portalOperatorInitials$ = this.utils.getInitials(this.portalOperator$);
83
+ this.showAppName$ = this.configProps$.showAppName;
84
+ this.portalApp$ = PCore.getEnvironmentInfo().getApplicationLabel();
85
+ });
86
+ }
87
+ navPanelButtonClick(oPageData) {
88
+ const { pyClassName, pyRuleName } = oPageData;
89
+ this.showPage(pyRuleName, pyClassName);
90
+ }
91
+ navPanelCreateButtonClick() {
92
+ if (this.navExpandCollapse$.indexOf('plus') > 0) {
93
+ this.navExpandCollapse$ = this.utils.getImageSrc('times', this.utils.getSDKStaticContentUrl());
94
+ this.bShowCaseTypes$ = true;
95
+ }
96
+ else {
97
+ this.navExpandCollapse$ = this.utils.getImageSrc('plus', this.utils.getSDKStaticContentUrl());
98
+ this.bShowCaseTypes$ = false;
99
+ }
100
+ this.chRef.detectChanges();
101
+ }
102
+ navPanelCreateCaseType(sCaseType, sFlowType) {
103
+ this.psService.sendMessage(true);
104
+ this.navPanelCreateButtonClick();
105
+ const actionInfo = {
106
+ containerName: 'primary',
107
+ flowType: sFlowType || 'pyStartCase'
108
+ };
109
+ this.createWork(sCaseType, actionInfo);
110
+ }
111
+ navPanelLogoutClick() {
112
+ logout().then(() => {
113
+ // Reload the page to kick off the login
114
+ window.location.reload();
115
+ });
116
+ }
117
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NavbarComponent, deps: [{ token: i1.AngularPConnectService }, { token: i0.ChangeDetectorRef }, { token: i2.ProgressSpinnerService }, { token: i0.NgZone }, { token: i3.Utils }], target: i0.ɵɵFactoryTarget.Component }); }
118
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: NavbarComponent, isStandalone: true, selector: "app-navbar", inputs: { pConn$: "pConn$", appName$: "appName$", pages$: "pages$", caseTypes$: "caseTypes$" }, providers: [Utils], ngImport: i0, template: "<div class=\"psdk-appshell-nav\">\n <div class=\"psdk-nav-header\">\n <div>\n <img src=\"{{ portalLogoImage$ }}\" class=\"psdk-nav-logo\" />\n </div>\n <div class=\"psdk-nav-portal-info\">\n <div class=\"psdk-nav-portal-app\">{{ portalApp$ }}</div>\n </div>\n </div>\n <div class=\"psdk-nav-divider\"></div>\n <div>\n <mat-list>\n <mat-list-item id=\"create-case-button\" (click)=\"navPanelCreateButtonClick()\">\n <div class=\"flex-box\">\n <img class=\"psdk-nav-svg-icon\" src=\"{{ navExpandCollapse$ }}\" />\n <span class=\"psdk-nav-button-span\">Create</span>\n </div>\n </mat-list-item>\n <mat-list *ngIf=\"bShowCaseTypes$\" style=\"margin-left: 40px\">\n <mat-list-item\n id=\"case-list-item\"\n *ngFor=\"let caseType of caseTypes$\"\n (click)=\"navPanelCreateCaseType(caseType.pyClassName, caseType.pyFlowType)\"\n >\n <span class=\"psdk-nav-button-span\">{{ caseType.pyLabel }}</span>\n </mat-list-item>\n </mat-list>\n </mat-list>\n </div>\n <div style=\"height: 100%\">\n <mat-list *ngFor=\"let page of navPages$\">\n <mat-list-item (click)=\"navPanelButtonClick(page)\">\n <div class=\"flex-box\">\n <img class=\"psdk-nav-svg-icon\" src=\"{{ page.iconName }}\" />\n <span class=\"psdk-nav-button-span\">{{ localizedVal(page.pyLabel, localeCategory) }}</span>\n </div>\n </mat-list-item>\n </mat-list>\n </div>\n <div class=\"psdk-nav-divider\"></div>\n <div>\n <mat-list>\n <mat-list-item [matMenuTriggerFor]=\"menu\" class=\"psdk-profile-list-item\">\n <div class=\"flex-box\">\n <div class=\"psdk-nav-oper-avatar\">{{ portalOperatorInitials$ }}</div>\n <span class=\"psdk-nav-button-span\">{{ portalOperator$ }}</span>\n </div>\n </mat-list-item>\n <mat-menu #menu=\"matMenu\">\n <button mat-menu-item>Profile</button>\n <button mat-menu-item (click)=\"navPanelLogoutClick()\">{{ localizedVal('Logoff', localeCategory) }}</button>\n </mat-menu>\n </mat-list>\n </div>\n</div>\n", styles: [".psdk-nav-divider{border-bottom:.0625rem solid #414141;width:100%;align-items:center}.psdk-nav-header{display:flex;padding-top:.625rem}.psdk-nav-logo{width:3.75rem;padding:.625rem;margin-right:1.25rem}.psdk-nav-svg-icon{filter:invert(100%) sepia(99%) saturate(0%) hue-rotate(144deg) brightness(109%) contrast(101%);width:1.6rem;padding-right:.625rem}.psdk-nav-portal-name{font-size:.875rem}.psdk-nav-portal-app{font-size:1.25rem}.psdk-appshell-nav{z-index:199;position:fixed;display:flex;flex-direction:column;justify-content:flex-start;background:#262626;width:5rem;height:100%;color:#d9d9d9;overflow-y:auto;overflow-x:hidden;white-space:nowrap;transition:width .3s cubic-bezier(.4,.6,.1,1);will-change:width}.psdk-appshell-nav:hover{width:15.625rem}.psdk-appshell-topnav{display:flex;flex-direction:column;justify-content:flex-start;background:#262626;width:5rem;height:15%;color:#d9d9d9;overflow:hidden;white-space:nowrap;transition:width .3s cubic-bezier(.4,.6,.1,1);will-change:width}.psdk-appshell-middlenav{display:flex;flex-direction:column;justify-content:space-between;background:#262626;width:5rem;height:50%;color:#d9d9d9;overflow:hidden;white-space:nowrap;transition:width .3s cubic-bezier(.4,.6,.1,1);will-change:width}.psdk-nav-ul-middle{display:block;list-style-type:none;margin:0rem;padding-inline-start:30px}.psdk-nav-li-middle{box-sizing:border-box;text-align:left}.psdk-icon{padding:0rem .125rem;min-width:unset}.psdk-nav-button-span{padding:0 1rem;color:#d9d9d9}.psdk-nav-oper-avatar{margin:0rem;padding:0rem;min-width:2.5rem;min-height:2.5rem;max-width:2.5rem;max-height:2.5rem;border-radius:50%;justify-content:center;align-items:center;text-align:center;display:inline-flex;background:grey;color:#fff;font-weight:400;font-size:1rem}mat-list{padding:0}.psdk-profile-list-item{padding-left:24px}mat-list-item{padding:20px 0 20px 30px;cursor:pointer!important;height:auto!important}mat-list-item:hover{background-color:#00000080}mat-list-item .flex-box{display:flex;align-items:center;width:100%;text-align:left}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatListModule }, { kind: "component", type: i5.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i5.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "ngmodule", type: MatMenuModule }, { kind: "component", type: i6.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "component", type: i6.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { kind: "directive", type: i6.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }] }); }
119
+ }
120
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: NavbarComponent, decorators: [{
121
+ type: Component,
122
+ args: [{ selector: 'app-navbar', providers: [Utils], standalone: true, imports: [CommonModule, MatListModule, MatMenuModule], template: "<div class=\"psdk-appshell-nav\">\n <div class=\"psdk-nav-header\">\n <div>\n <img src=\"{{ portalLogoImage$ }}\" class=\"psdk-nav-logo\" />\n </div>\n <div class=\"psdk-nav-portal-info\">\n <div class=\"psdk-nav-portal-app\">{{ portalApp$ }}</div>\n </div>\n </div>\n <div class=\"psdk-nav-divider\"></div>\n <div>\n <mat-list>\n <mat-list-item id=\"create-case-button\" (click)=\"navPanelCreateButtonClick()\">\n <div class=\"flex-box\">\n <img class=\"psdk-nav-svg-icon\" src=\"{{ navExpandCollapse$ }}\" />\n <span class=\"psdk-nav-button-span\">Create</span>\n </div>\n </mat-list-item>\n <mat-list *ngIf=\"bShowCaseTypes$\" style=\"margin-left: 40px\">\n <mat-list-item\n id=\"case-list-item\"\n *ngFor=\"let caseType of caseTypes$\"\n (click)=\"navPanelCreateCaseType(caseType.pyClassName, caseType.pyFlowType)\"\n >\n <span class=\"psdk-nav-button-span\">{{ caseType.pyLabel }}</span>\n </mat-list-item>\n </mat-list>\n </mat-list>\n </div>\n <div style=\"height: 100%\">\n <mat-list *ngFor=\"let page of navPages$\">\n <mat-list-item (click)=\"navPanelButtonClick(page)\">\n <div class=\"flex-box\">\n <img class=\"psdk-nav-svg-icon\" src=\"{{ page.iconName }}\" />\n <span class=\"psdk-nav-button-span\">{{ localizedVal(page.pyLabel, localeCategory) }}</span>\n </div>\n </mat-list-item>\n </mat-list>\n </div>\n <div class=\"psdk-nav-divider\"></div>\n <div>\n <mat-list>\n <mat-list-item [matMenuTriggerFor]=\"menu\" class=\"psdk-profile-list-item\">\n <div class=\"flex-box\">\n <div class=\"psdk-nav-oper-avatar\">{{ portalOperatorInitials$ }}</div>\n <span class=\"psdk-nav-button-span\">{{ portalOperator$ }}</span>\n </div>\n </mat-list-item>\n <mat-menu #menu=\"matMenu\">\n <button mat-menu-item>Profile</button>\n <button mat-menu-item (click)=\"navPanelLogoutClick()\">{{ localizedVal('Logoff', localeCategory) }}</button>\n </mat-menu>\n </mat-list>\n </div>\n</div>\n", styles: [".psdk-nav-divider{border-bottom:.0625rem solid #414141;width:100%;align-items:center}.psdk-nav-header{display:flex;padding-top:.625rem}.psdk-nav-logo{width:3.75rem;padding:.625rem;margin-right:1.25rem}.psdk-nav-svg-icon{filter:invert(100%) sepia(99%) saturate(0%) hue-rotate(144deg) brightness(109%) contrast(101%);width:1.6rem;padding-right:.625rem}.psdk-nav-portal-name{font-size:.875rem}.psdk-nav-portal-app{font-size:1.25rem}.psdk-appshell-nav{z-index:199;position:fixed;display:flex;flex-direction:column;justify-content:flex-start;background:#262626;width:5rem;height:100%;color:#d9d9d9;overflow-y:auto;overflow-x:hidden;white-space:nowrap;transition:width .3s cubic-bezier(.4,.6,.1,1);will-change:width}.psdk-appshell-nav:hover{width:15.625rem}.psdk-appshell-topnav{display:flex;flex-direction:column;justify-content:flex-start;background:#262626;width:5rem;height:15%;color:#d9d9d9;overflow:hidden;white-space:nowrap;transition:width .3s cubic-bezier(.4,.6,.1,1);will-change:width}.psdk-appshell-middlenav{display:flex;flex-direction:column;justify-content:space-between;background:#262626;width:5rem;height:50%;color:#d9d9d9;overflow:hidden;white-space:nowrap;transition:width .3s cubic-bezier(.4,.6,.1,1);will-change:width}.psdk-nav-ul-middle{display:block;list-style-type:none;margin:0rem;padding-inline-start:30px}.psdk-nav-li-middle{box-sizing:border-box;text-align:left}.psdk-icon{padding:0rem .125rem;min-width:unset}.psdk-nav-button-span{padding:0 1rem;color:#d9d9d9}.psdk-nav-oper-avatar{margin:0rem;padding:0rem;min-width:2.5rem;min-height:2.5rem;max-width:2.5rem;max-height:2.5rem;border-radius:50%;justify-content:center;align-items:center;text-align:center;display:inline-flex;background:grey;color:#fff;font-weight:400;font-size:1rem}mat-list{padding:0}.psdk-profile-list-item{padding-left:24px}mat-list-item{padding:20px 0 20px 30px;cursor:pointer!important;height:auto!important}mat-list-item:hover{background-color:#00000080}mat-list-item .flex-box{display:flex;align-items:center;width:100%;text-align:left}\n"] }]
123
+ }], ctorParameters: function () { return [{ type: i1.AngularPConnectService }, { type: i0.ChangeDetectorRef }, { type: i2.ProgressSpinnerService }, { type: i0.NgZone }, { type: i3.Utils }]; }, propDecorators: { pConn$: [{
124
+ type: Input
125
+ }], appName$: [{
126
+ type: Input
127
+ }], pages$: [{
128
+ type: Input
129
+ }], caseTypes$: [{
130
+ type: Input
131
+ }] } });
132
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy9pbmZyYS9uYXZiYXIvbmF2YmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy9pbmZyYS9uYXZiYXIvbmF2YmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUF3QyxNQUFNLGVBQWUsQ0FBQztBQUMvRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFHekQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLHlCQUF5QixDQUFDOzs7Ozs7OztBQWlCaEQsTUFBTSxPQUFPLGVBQWU7SUE4QjFCLFlBQ1UsZUFBdUMsRUFDdkMsS0FBd0IsRUFDeEIsU0FBaUMsRUFDakMsTUFBYyxFQUNkLEtBQVk7UUFKWixvQkFBZSxHQUFmLGVBQWUsQ0FBd0I7UUFDdkMsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFDeEIsY0FBUyxHQUFULFNBQVMsQ0FBd0I7UUFDakMsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFVBQUssR0FBTCxLQUFLLENBQU87UUE3QnRCLHVDQUF1QztRQUN2Qyx3QkFBbUIsR0FBd0IsRUFBRSxDQUFDO1FBSzlDLG9CQUFlLEdBQUcsS0FBSyxDQUFDO1FBRXhCLGVBQVUsR0FBRyxFQUFFLENBQUM7UUFF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S0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBDaGFuZ2VEZXRlY3RvclJlZiwgTmdab25lLCBPbkRlc3Ryb3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XG5pbXBvcnQgeyBNYXRMaXN0TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbGlzdCc7XG5pbXBvcnQgeyBsb2dvdXQgfSBmcm9tICdAcGVnYS9hdXRoL2xpYi9zZGstYXV0aC1tYW5hZ2VyJztcbmltcG9ydCB7IEFuZ3VsYXJQQ29ubmVjdERhdGEsIEFuZ3VsYXJQQ29ubmVjdFNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9fYnJpZGdlL2FuZ3VsYXItcGNvbm5lY3QnO1xuaW1wb3J0IHsgUHJvZ3Jlc3NTcGlubmVyU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL19tZXNzYWdlcy9wcm9ncmVzcy1zcGlubmVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgVXRpbHMgfSBmcm9tICcuLi8uLi8uLi9faGVscGVycy91dGlscyc7XG5cbmRlY2xhcmUgY29uc3Qgd2luZG93OiBhbnk7XG5cbmludGVyZmFjZSBOYXZCYXJQcm9wcyB7XG4gIC8vIElmIGFueSwgZW50ZXIgYWRkaXRpb25hbCBwcm9wcyB0aGF0IG9ubHkgZXhpc3Qgb24gdGhpcyBjb21wb25lbnRcbiAgc2hvd0FwcE5hbWU/OiBib29sZWFuO1xufVxuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtbmF2YmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL25hdmJhci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL25hdmJhci5jb21wb25lbnQuc2NzcyddLFxuICBwcm92aWRlcnM6IFtVdGlsc10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1hdExpc3RNb2R1bGUsIE1hdE1lbnVNb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIE5hdmJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgQElucHV0KCkgcENvbm4kOiB0eXBlb2YgUENvbm5lY3Q7XG4gIEBJbnB1dCgpIGFwcE5hbWUkOiBzdHJpbmc7XG4gIEBJbnB1dCgpIHBhZ2VzJDogYW55W107XG4gIEBJbnB1dCgpIGNhc2VUeXBlcyQ6IGFueVtdO1xuXG4gIC8vIEZvciBpbnRlcmFjdGlvbiB3aXRoIEFuZ3VsYXJQQ29ubmVjdFxuICBhbmd1bGFyUENvbm5lY3REYXRhOiBBbmd1bGFyUENvbm5lY3REYXRhID0ge307XG4gIGNvbmZpZ1Byb3BzJDogTmF2QmFyUHJvcHM7XG5cbiAgbmF2UGFnZXMkOiBhbnlbXTtcbiAgbmF2RXhwYW5kQ29sbGFwc2UkOiBzdHJpbmc7XG4gIGJTaG93Q2FzZVR5cGVzJCA9IGZhbHNlO1xuXG4gIHBvcnRhbEFwcCQgPSAnJztcbiAgcG9ydGFsTG9nb0ltYWdlJDogc3RyaW5nO1xuICBzaG93QXBwTmFtZSQ/OiBib29sZWFuID0gZmFsc2U7XG5cbiAgcG9ydGFsT3BlcmF0b3IkOiBzdHJpbmc7XG4gIHBvcnRhbE9wZXJhdG9ySW5pdGlhbHMkOiBzdHJpbmc7XG5cbiAgYWN0aW9uc0FQSTogYW55O1xuICBjcmVhdGVXb3JrOiBhbnk7XG4gIHNob3dQYWdlOiBhbnk7XG4gIGxvZ291dDogYW55O1xuXG4gIG5hdkljb24kOiBzdHJpbmc7XG4gIGxvY2FsaXplZFZhbDogYW55O1xuICBsb2NhbGVDYXRlZ29yeSA9ICdBcHBTaGVsbCc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBhbmd1bGFyUENvbm5lY3Q6IEFuZ3VsYXJQQ29ubmVjdFNlcnZpY2UsXG4gICAgcHJpdmF0ZSBjaFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSBwc1NlcnZpY2U6IFByb2dyZXNzU3Bpbm5lclNlcnZpY2UsXG4gICAgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSxcbiAgICBwcml2YXRlIHV0aWxzOiBVdGlsc1xuICApIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLy8gRmlyc3QgdGhpbmcgaW4gaW5pdGlhbGl6YXRpb24gaXMgcmVnaXN0ZXJpbmcgYW5kIHN1YnNjcmliaW5nIHRvIHRoZSBBbmd1bGFyUENvbm5lY3Qgc2VydmljZVxuICAgIHRoaXMuYW5ndWxhclBDb25uZWN0RGF0YSA9IHRoaXMuYW5ndWxhclBDb25uZWN0LnJlZ2lzdGVyQW5kU3Vic2NyaWJlQ29tcG9uZW50KHRoaXMsIHRoaXMub25TdGF0ZUNoYW5nZSk7XG5cbiAgICB0aGlzLm5hdkljb24kID0gdGhpcy51dGlscy5nZXRTREtTdGF0aWNDb250ZW50VXJsKCkuY29uY2F0KCdhc3NldHMvcHpwZWdhLWxvZ28tbWFyay5zdmcnKTtcblxuICAgIC8vIHRoaXMgaXMgYSBkdW1teSBcImdldFwiLCBiZWNhdXNlIHJpZ2h0IG5vdyBpbWFnZXMgYXJlIGluIGh0dHAgYW5kIHRoZSBtYWluIHNjcmVlbiBpcyBodHRwc1xuICAgIC8vIHNvIHRoZSBpbWFnZXMgZG9uJ3QgbG9hZCBhdXRvbWF0aWNhbGx5LiAgVGhpcyBjYWxsLCBtYWtlcyBhbiBpbml0aWFsIGhpdCB0aGF0IGFsbG93cyB0aGVcbiAgICAvLyByZXN0IG9mIHRoZSBpbWFnZXMgdG8gc2hvdyB1cFxuICAgIHRoaXMubG9hZEltYWdlKHRoaXMubmF2SWNvbiQpO1xuXG4gICAgdGhpcy5pbml0Q29tcG9uZW50KCk7XG4gICAgdGhpcy5sb2NhbGl6ZWRWYWwgPSBQQ29yZS5nZXRMb2NhbGVVdGlscygpLmdldExvY2FsZVZhbHVlO1xuICB9XG5cbiAgLy8gbmdPbkRlc3Ryb3lcbiAgLy8gIHVuc3Vic2NyaWJlIGZyb20gU3RvcmVcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuYW5ndWxhclBDb25uZWN0RGF0YS51bnN1YnNjcmliZUZuKSB7XG4gICAgICB0aGlzLmFuZ3VsYXJQQ29ubmVjdERhdGEudW5zdWJzY3JpYmVGbigpO1xuICAgIH1cbiAgfVxuXG4gIGxvYWRJbWFnZShzcmM6IHN0cmluZykge1xuICAgIHJldHVybiBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHtcbiAgICAgIHJlc29sdmUoc3JjKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8vIENhbGxiYWNrIHBhc3NlZCB3aGVuIHN1YnNjcmliaW5nIHRvIHN0b3JlIGNoYW5nZVxuICBvblN0YXRlQ2hhbmdlKCkge1xuICAgIC8vIFNob3VsZCBhbHdheXMgY2hlY2sgdGhlIGJyaWRnZSB0byBzZWUgaWYgdGhlIGNvbXBvbmVudCBzaG91bGQgdXBkYXRlIGl0c2VsZiAocmUtcmVuZGVyKVxuICAgIGNvbnN0IGJVcGRhdGVTZWxmID0gdGhpcy5hbmd1bGFyUENvbm5lY3Quc2hvdWxkQ29tcG9uZW50VXBkYXRlKHRoaXMpO1xuXG4gICAgLy8gTk9URTogY2FuIGNhbGwgYW5ndWxhclBDb25uZWN0LmdldFN0YXRlIHdpdGggb3B0aW9uYWwgYXJncyBmb3IgZGV0YWlsZWQgbG9nZ2luZzogYkxvZ01zZyBhbmQgY29tcG9uZW50IG9iamVjdFxuICAgIHRoaXMuYW5ndWxhclBDb25uZWN0LmdldFN0YXRlKCk7XG5cbiAgICBpZiAoYlVwZGF0ZVNlbGYpIHtcbiAgICAgIHRoaXMudXBkYXRlU2VsZigpO1xuICAgIH1cbiAgfVxuXG4gIHVwZGF0ZVNlbGYoKTogdm9pZCB7XG4gICAgdGhpcy5pbml0Q29tcG9uZW50KCk7XG4gIH1cblxuICBpbml0Q29tcG9uZW50KCkge1xuICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICB0aGlzLm5hdkljb24kID0gdGhpcy51dGlscy5nZXRTREtTdGF0aWNDb250ZW50VXJsKCkuY29uY2F0KCdhc3NldHMvcHpwZWdhLWxvZ28tbWFyay5zdmcnKTtcbiAgICAgIHRoaXMubmF2RXhwYW5kQ29sbGFwc2UkID0gdGhpcy51dGlscy5nZXRJbWFnZVNyYygncGx1cycsIHRoaXMudXRpbHMuZ2V0U0RLU3RhdGljQ29udGVudFVybCgpKTtcblxuICAgICAgLy8gVGhlbiwgY29udGludWUgb24gd2l0aCBvdGhlciBpbml0aWFsaXphdGlvblxuXG4gICAgICAvLyBtYWtpbmcgYSBjb3B5LCBzbyBjYW4gYWRkIGluZm9cbiAgICAgIHRoaXMubmF2UGFnZXMkID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeSh0aGlzLnBhZ2VzJCkpO1xuXG4gICAgICB0aGlzLm5hdlBhZ2VzJC5mb3JFYWNoKHBhZ2UgPT4ge1xuICAgICAgICBwYWdlLmljb25OYW1lID0gdGhpcy51dGlscy5nZXRJbWFnZVNyYyhwYWdlLnB4UGFnZVZpZXdJY29uLCB0aGlzLnV0aWxzLmdldFNES1N0YXRpY0NvbnRlbnRVcmwoKSk7XG4gICAgICB9KTtcblxuICAgICAgdGhpcy5hY3Rpb25zQVBJID0gdGhpcy5wQ29ubiQuZ2V0QWN0aW9uc0FwaSgpO1xuICAgICAgdGhpcy5jcmVhdGVXb3JrID0gdGhpcy5hY3Rpb25zQVBJLmNyZWF0ZVdvcmsuYmluZCh0aGlzLmFjdGlvbnNBUEkpO1xuICAgICAgdGhpcy5zaG93UGFnZSA9IHRoaXMuYWN0aW9uc0FQSS5zaG93UGFnZS5iaW5kKHRoaXMuYWN0aW9uc0FQSSk7XG4gICAgICB0aGlzLmNvbmZpZ1Byb3BzJCA9IHRoaXMucENvbm4kLnJlc29sdmVDb25maWdQcm9wcyh0aGlzLnBDb25uJC5nZXRDb25maWdQcm9wcygpKSBhcyBOYXZCYXJQcm9wcztcbiAgICAgIHRoaXMubG9nb3V0ID0gdGhpcy5hY3Rpb25zQVBJLmxvZ291dC5iaW5kKHRoaXMuYWN0aW9uc0FQSSk7XG5cbiAgICAgIC8vIGNvbnN0IG9EYXRhID0gdGhpcy5wQ29ubiQuZ2V0RGF0YU9iamVjdCgpO1xuXG4gICAgICB0aGlzLnBvcnRhbExvZ29JbWFnZSQgPSB0aGlzLnV0aWxzLmdldFNES1N0YXRpY0NvbnRlbnRVcmwoKS5jb25jYXQoJ2Fzc2V0cy9wenBlZ2EtbG9nby1tYXJrLnN2ZycpO1xuICAgICAgdGhpcy5wb3J0YWxPcGVyYXRvciQgPSBQQ29yZS5nZXRFbnZpcm9ubWVudEluZm8oKS5nZXRPcGVyYXRvck5hbWUoKTtcbiAgICAgIHRoaXMucG9ydGFsT3BlcmF0b3JJbml0aWFscyQgPSB0aGlzLnV0aWxzLmdldEluaXRpYWxzKHRoaXMucG9ydGFsT3BlcmF0b3IkKTtcbiAgICAgIHRoaXMuc2hvd0FwcE5hbWUkID0gdGhpcy5jb25maWdQcm9wcyQuc2hvd0FwcE5hbWU7XG5cbiAgICAgIHRoaXMucG9ydGFsQXBwJCA9IFBDb3JlLmdldEVudmlyb25tZW50SW5mbygpLmdldEFwcGxpY2F0aW9uTGFiZWwoKTtcbiAgICB9KTtcbiAgfVxuXG4gIG5hdlBhbmVsQnV0dG9uQ2xpY2sob1BhZ2VEYXRhOiBhbnkpIHtcbiAgICBjb25zdCB7IHB5Q2xhc3NOYW1lLCBweVJ1bGVOYW1lIH0gPSBvUGFnZURhdGE7XG5cbiAgICB0aGlzLnNob3dQYWdlKHB5UnVsZU5hbWUsIHB5Q2xhc3NOYW1lKTtcbiAgfVxuXG4gIG5hdlBhbmVsQ3JlYXRlQnV0dG9uQ2xpY2soKSB7XG4gICAgaWYgKHRoaXMubmF2RXhwYW5kQ29sbGFwc2UkLmluZGV4T2YoJ3BsdXMnKSA+IDApIHtcbiAgICAgIHRoaXMubmF2RXhwYW5kQ29sbGFwc2UkID0gdGhpcy51dGlscy5nZXRJbWFnZVNyYygndGltZXMnLCB0aGlzLnV0aWxzLmdldFNES1N0YXRpY0NvbnRlbnRVcmwoKSk7XG4gICAgICB0aGlzLmJTaG93Q2FzZVR5cGVzJCA9IHRydWU7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubmF2RXhwYW5kQ29sbGFwc2UkID0gdGhpcy51dGlscy5nZXRJbWFnZVNyYygncGx1cycsIHRoaXMudXRpbHMuZ2V0U0RLU3RhdGljQ29udGVudFVybCgpKTtcbiAgICAgIHRoaXMuYlNob3dDYXNlVHlwZXMkID0gZmFsc2U7XG4gICAgfVxuXG4gICAgdGhpcy5jaFJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBuYXZQYW5lbENyZWF0ZUNhc2VUeXBlKHNDYXNlVHlwZTogc3RyaW5nLCBzRmxvd1R5cGU6IHN0cmluZykge1xuICAgIHRoaXMucHNTZXJ2aWNlLnNlbmRNZXNzYWdlKHRydWUpO1xuICAgIHRoaXMubmF2UGFuZWxDcmVhdGVCdXR0b25DbGljaygpO1xuXG4gICAgY29uc3QgYWN0aW9uSW5mbyA9IHtcbiAgICAgIGNvbnRhaW5lck5hbWU6ICdwcmltYXJ5JyxcbiAgICAgIGZsb3dUeXBlOiBzRmxvd1R5cGUgfHwgJ3B5U3RhcnRDYXNlJ1xuICAgIH07XG4gICAgdGhpcy5jcmVhdGVXb3JrKHNDYXNlVHlwZSwgYWN0aW9uSW5mbyk7XG4gIH1cblxuICBuYXZQYW5lbExvZ291dENsaWNrKCkge1xuICAgIGxvZ291dCgpLnRoZW4oKCkgPT4ge1xuICAgICAgLy8gUmVsb2FkIHRoZSBwYWdlIHRvIGtpY2sgb2ZmIHRoZSBsb2dpblxuICAgICAgd2luZG93LmxvY2F0aW9uLnJlbG9hZCgpO1xuICAgIH0pO1xuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicHNkay1hcHBzaGVsbC1uYXZcIj5cbiAgPGRpdiBjbGFzcz1cInBzZGstbmF2LWhlYWRlclwiPlxuICAgIDxkaXY+XG4gICAgICA8aW1nIHNyYz1cInt7IHBvcnRhbExvZ29JbWFnZSQgfX1cIiBjbGFzcz1cInBzZGstbmF2LWxvZ29cIiAvPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJwc2RrLW5hdi1wb3J0YWwtaW5mb1wiPlxuICAgICAgPGRpdiBjbGFzcz1cInBzZGstbmF2LXBvcnRhbC1hcHBcIj57eyBwb3J0YWxBcHAkIH19PC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwicHNkay1uYXYtZGl2aWRlclwiPjwvZGl2PlxuICA8ZGl2PlxuICAgIDxtYXQtbGlzdD5cbiAgICAgIDxtYXQtbGlzdC1pdGVtIGlkPVwiY3JlYXRlLWNhc2UtYnV0dG9uXCIgKGNsaWNrKT1cIm5hdlBhbmVsQ3JlYXRlQnV0dG9uQ2xpY2soKVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1ib3hcIj5cbiAgICAgICAgICA8aW1nIGNsYXNzPVwicHNkay1uYXYtc3ZnLWljb25cIiBzcmM9XCJ7eyBuYXZFeHBhbmRDb2xsYXBzZSQgfX1cIiAvPlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwicHNkay1uYXYtYnV0dG9uLXNwYW5cIj5DcmVhdGU8L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9tYXQtbGlzdC1pdGVtPlxuICAgICAgPG1hdC1saXN0ICpuZ0lmPVwiYlNob3dDYXNlVHlwZXMkXCIgc3R5bGU9XCJtYXJnaW4tbGVmdDogNDBweFwiPlxuICAgICAgICA8bWF0LWxpc3QtaXRlbVxuICAgICAgICAgIGlkPVwiY2FzZS1saXN0LWl0ZW1cIlxuICAgICAgICAgICpuZ0Zvcj1cImxldCBjYXNlVHlwZSBvZiBjYXNlVHlwZXMkXCJcbiAgICAgICAgICAoY2xpY2spPVwibmF2UGFuZWxDcmVhdGVDYXNlVHlwZShjYXNlVHlwZS5weUNsYXNzTmFtZSwgY2FzZVR5cGUucHlGbG93VHlwZSlcIlxuICAgICAgICA+XG4gICAgICAgICAgPHNwYW4gY2xhc3M9XCJwc2RrLW5hdi1idXR0b24tc3BhblwiPnt7IGNhc2VUeXBlLnB5TGFiZWwgfX08L3NwYW4+XG4gICAgICAgIDwvbWF0LWxpc3QtaXRlbT5cbiAgICAgIDwvbWF0LWxpc3Q+XG4gICAgPC9tYXQtbGlzdD5cbiAgPC9kaXY+XG4gIDxkaXYgc3R5bGU9XCJoZWlnaHQ6IDEwMCVcIj5cbiAgICA8bWF0LWxpc3QgKm5nRm9yPVwibGV0IHBhZ2Ugb2YgbmF2UGFnZXMkXCI+XG4gICAgICA8bWF0LWxpc3QtaXRlbSAoY2xpY2spPVwibmF2UGFuZWxCdXR0b25DbGljayhwYWdlKVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1ib3hcIj5cbiAgICAgICAgICA8aW1nIGNsYXNzPVwicHNkay1uYXYtc3ZnLWljb25cIiBzcmM9XCJ7eyBwYWdlLmljb25OYW1lIH19XCIgLz5cbiAgICAgICAgICA8c3BhbiBjbGFzcz1cInBzZGstbmF2LWJ1dHRvbi1zcGFuXCI+e3sgbG9jYWxpemVkVmFsKHBhZ2UucHlMYWJlbCwgbG9jYWxlQ2F0ZWdvcnkpIH19PC9zcGFuPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvbWF0LWxpc3QtaXRlbT5cbiAgICA8L21hdC1saXN0PlxuICA8L2Rpdj5cbiAgPGRpdiBjbGFzcz1cInBzZGstbmF2LWRpdmlkZXJcIj48L2Rpdj5cbiAgPGRpdj5cbiAgICA8bWF0LWxpc3Q+XG4gICAgICA8bWF0LWxpc3QtaXRlbSBbbWF0TWVudVRyaWdnZXJGb3JdPVwibWVudVwiIGNsYXNzPVwicHNkay1wcm9maWxlLWxpc3QtaXRlbVwiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmxleC1ib3hcIj5cbiAgICAgICAgICA8ZGl2IGNsYXNzPVwicHNkay1uYXYtb3Blci1hdmF0YXJcIj57eyBwb3J0YWxPcGVyYXRvckluaXRpYWxzJCB9fTwvZGl2PlxuICAgICAgICAgIDxzcGFuIGNsYXNzPVwicHNkay1uYXYtYnV0dG9uLXNwYW5cIj57eyBwb3J0YWxPcGVyYXRvciQgfX08L3NwYW4+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9tYXQtbGlzdC1pdGVtPlxuICAgICAgPG1hdC1tZW51ICNtZW51PVwibWF0TWVudVwiPlxuICAgICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0+UHJvZmlsZTwvYnV0dG9uPlxuICAgICAgICA8YnV0dG9uIG1hdC1tZW51LWl0ZW0gKGNsaWNrKT1cIm5hdlBhbmVsTG9nb3V0Q2xpY2soKVwiPnt7IGxvY2FsaXplZFZhbCgnTG9nb2ZmJywgbG9jYWxlQ2F0ZWdvcnkpIH19PC9idXR0b24+XG4gICAgICA8L21hdC1tZW51PlxuICAgIDwvbWF0LWxpc3Q+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,133 @@
1
+ import { Component } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ /**
4
+ * WARNING: It is not expected that this file should be modified. It is part of infrastructure code that works with
5
+ * Redux and creation/update of Redux containers and PConnect. Modifying this code could have undesireable results and
6
+ * is totally at your own risk.
7
+ */
8
+ export class ReferenceComponent {
9
+ /* Used to toggle some class-wide logging */
10
+ static { this.bLogging = false; }
11
+ constructor() {
12
+ this.referencedComponent = null;
13
+ // With new static method approach, this shouldn't be called any more
14
+ window.alert(`in ReferenceComponent constructor!`);
15
+ console.error(`in ReferenceComponent constructor!`);
16
+ }
17
+ // onStateChange and updateSelf methods removed from original implementation
18
+ // when we moved to the static method implementation.
19
+ // STATIC method to create a normalized PConn (a fully realized View that the 'reference'
20
+ // component refers to) from the given pConn. Has to add in some stuff as in the constructor
21
+ static createFullReferencedViewFromRef(inPConn) {
22
+ // BAIL and ERROR if inPConn is NOT a reference!
23
+ if (inPConn.getComponentName() !== 'reference') {
24
+ // debugger;
25
+ console.error(`Reference component: createFullReferencedViewFromRef inPConn is NOT a reference! ${inPConn.getComponentName()}`);
26
+ }
27
+ const theResolvedConfigProps = inPConn.resolveConfigProps(inPConn.getConfigProps());
28
+ const referenceConfig = { ...inPConn.getComponentConfig() } || {};
29
+ // Since SDK-A implements Reference as static methods and we don't rely on
30
+ // the Reference component's handling of the visibility prop, we leave it in
31
+ // (and also leaving the others in for now) so the referenced View can act on
32
+ // the visibility prop. (The following 3 lines were carried over from React SDK)
33
+ delete referenceConfig?.name;
34
+ // delete referenceConfig?.type;
35
+ // delete referenceConfig?.visibility;
36
+ const viewMetadata = inPConn.getReferencedView();
37
+ if (!viewMetadata) {
38
+ console.log('View not found ', inPConn.getComponentConfig());
39
+ return null;
40
+ }
41
+ // If we get here, we have metadata for a View component...
42
+ // const referencedComponentName = viewMetadata.type;
43
+ const viewObject = {
44
+ ...viewMetadata,
45
+ config: {
46
+ ...viewMetadata.config,
47
+ ...referenceConfig
48
+ }
49
+ };
50
+ if (ReferenceComponent.bLogging) {
51
+ console.log(`Reference: about to call createComponent with pageReference: context: ${theResolvedConfigProps.context}`);
52
+ }
53
+ const viewComponent = inPConn.createComponent(viewObject, null, null, {
54
+ pageReference: theResolvedConfigProps.context
55
+ });
56
+ // updating the referencedComponent should trigger a render
57
+ const newCompPConnect = viewComponent.getPConnect();
58
+ newCompPConnect.setInheritedConfig({
59
+ ...referenceConfig,
60
+ readOnly: theResolvedConfigProps.readOnly ? theResolvedConfigProps.readOnly : false,
61
+ displayMode: theResolvedConfigProps.displayMode ? theResolvedConfigProps.displayMode : null
62
+ });
63
+ if (ReferenceComponent.bLogging) {
64
+ console.log(`Angular Reference component: createFullReferencedViewFromRef -> newCompPConnect configProps: ${JSON.stringify(newCompPConnect.getConfigProps())}`);
65
+ }
66
+ return newCompPConnect;
67
+ }
68
+ // STATIC method that other components can call to normalize
69
+ // a pConn object that might be a 'reference'. If the incoming
70
+ // pConn is a reference, return its dereferenced View PConnect's
71
+ // getPConnect. Otherwise, return the passed in pConn unchanged
72
+ // inPConn = a PConn object (ex: { getPConnect()} )
73
+ static normalizePConn(inPConn) {
74
+ // debugger;
75
+ let returnObj = false;
76
+ let thePConnType = '';
77
+ if (inPConn.getPConnect) {
78
+ // inPConn is an object (ex: { getPConnect()} ), so we want to return
79
+ // any referenced view as the object containing the
80
+ // the getPConnect function
81
+ returnObj = true;
82
+ thePConnType = inPConn.getPConnect().getComponentName();
83
+ }
84
+ else {
85
+ // inPConn is an object with the PConnect function, so we want
86
+ // to return any referenced view as the object containing the
87
+ // the c11n function
88
+ returnObj = false;
89
+ thePConnType = inPConn.getComponentName();
90
+ }
91
+ if (thePConnType === 'reference') {
92
+ if (returnObj) {
93
+ // WAS...
94
+ // const theRefViewPConn = inPConn.getPConnect().getReferencedViewPConnect(true);
95
+ // Now: ALWAYS calling createFullReferencedViewFromRef to have options, PageReference, etc.
96
+ // set correctly in the C11nEnv (PConnect) object
97
+ // debugger;
98
+ let theRefViewPConn = this.createFullReferencedViewFromRef(inPConn.getPConnect());
99
+ // now return its PConnect
100
+ theRefViewPConn = theRefViewPConn.getComponent();
101
+ // const theFullReference = theRefViewPConn.getPConnect().getFullReference();
102
+ // console.log(`theFullReference: ${theFullReference}`);
103
+ return theRefViewPConn;
104
+ }
105
+ // console.log(`created theFullRefView full reference: ${theFullRefView.getFullReference()}`);
106
+ // debugger;
107
+ return this.createFullReferencedViewFromRef(inPConn);
108
+ }
109
+ return inPConn;
110
+ }
111
+ // STATIC method that other components can call to normalize
112
+ // an array of pConn objects where any of the children might
113
+ // be a 'reference'. The array returns an array of children
114
+ // where any 'reference' is replaced with its ReferencedView
115
+ // inPConnArray is an array of PConn objects or functions.
116
+ // Its value is passed to normalizePConn
117
+ static normalizePConnArray(inPConnArray) {
118
+ if (!(inPConnArray?.length > 0)) {
119
+ // null or empty array, return what was passed in
120
+ return inPConnArray;
121
+ }
122
+ return inPConnArray.map(child => {
123
+ return ReferenceComponent.normalizePConn(child);
124
+ });
125
+ }
126
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ReferenceComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
127
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ReferenceComponent, isStandalone: true, selector: "app-reference", ngImport: i0, template: "<!-- Reference component is all static methods so .html not used -->\n", styles: [""] }); }
128
+ }
129
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ReferenceComponent, decorators: [{
130
+ type: Component,
131
+ args: [{ selector: 'app-reference', standalone: true, template: "<!-- Reference component is all static methods so .html not used -->\n" }]
132
+ }], ctorParameters: function () { return []; } });
133
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVmZXJlbmNlLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy9pbmZyYS9yZWZlcmVuY2UvcmVmZXJlbmNlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy9pbmZyYS9yZWZlcmVuY2UvcmVmZXJlbmNlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBRTFDOzs7O0dBSUc7QUFRSCxNQUFNLE9BQU8sa0JBQWtCO0lBRzdCLDRDQUE0QzthQUM3QixhQUFRLEdBQUcsS0FBSyxDQUFDO0lBRWhDO1FBTEEsd0JBQW1CLEdBQVEsSUFBSSxDQUFDO1FBTTlCLHFFQUFxRTtRQUNyRSxNQUFNLENBQUMsS0FBSyxDQUFDLG9DQUFvQyxDQUFDLENBQUM7UUFFbkQsT0FBTyxDQUFDLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO0lBQ3RELENBQUM7SUFFRCw0RUFBNEU7SUFDNUUsc0RBQXNEO0lBRXRELHlGQUF5RjtJQUN6Riw2RkFBNkY7SUFDN0YsTUFBTSxDQUFDLCtCQUErQixDQUFDLE9BQVk7UUFDakQsZ0RBQWdEO1FBQ2hELElBQUksT0FBTyxDQUFDLGdCQUFnQixFQUFFLEtBQUssV0FBVyxFQUFFO1lBQzlDLFlBQVk7WUFFWixPQUFPLENBQUMsS0FBSyxDQUFDLG9GQUFvRixPQUFPLENBQUMsZ0JBQWdCLEVBQUUsRUFBRSxDQUFDLENBQUM7U0FDakk7UUFFRCxNQUFNLHNCQUFzQixHQUFHLE9BQU8sQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFLENBQUMsQ0FBQztRQUVwRixNQUFN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QUMxQixlQUFlLEdBQUcsZUFBZSxDQUFDLFlBQVksRUFBRSxDQUFDO2dCQUVqRCw2RUFBNkU7Z0JBQzdFLHdEQUF3RDtnQkFFeEQsT0FBTyxlQUFlLENBQUM7YUFDeEI7WUFDRCw4RkFBOEY7WUFDOUYsWUFBWTtZQUVaLE9BQU8sSUFBSSxDQUFDLCtCQUErQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1NBQ3REO1FBQ0QsT0FBTyxPQUFPLENBQUM7SUFDakIsQ0FBQztJQUVELDREQUE0RDtJQUM1RCw2REFBNkQ7SUFDN0QsNERBQTREO0lBQzVELDZEQUE2RDtJQUM3RCwyREFBMkQ7SUFDM0QsMkNBQTJDO0lBRTNDLE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxZQUFpQjtRQUMxQyxJQUFJLENBQUMsQ0FBQyxZQUFZLEVBQUUsTUFBTSxHQUFHLENBQUMsQ0FBQyxFQUFFO1lBQy9CLGlEQUFpRDtZQUNqRCxPQUFPLFlBQVksQ0FBQztTQUNyQjtRQUVELE9BQU8sWUFBWSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUM5QixPQUFPLGtCQUFrQixDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNsRCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7K0dBckpVLGtCQUFrQjttR0FBbEIsa0JBQWtCLHlFQ2QvQix3RUFDQTs7NEZEYWEsa0JBQWtCO2tCQU45QixTQUFTOytCQUNFLGVBQWUsY0FHYixJQUFJIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogV0FSTklORzogSXQgaXMgbm90IGV4cGVjdGVkIHRoYXQgdGhpcyBmaWxlIHNob3VsZCBiZSBtb2RpZmllZC4gIEl0IGlzIHBhcnQgb2YgaW5mcmFzdHJ1Y3R1cmUgY29kZSB0aGF0IHdvcmtzIHdpdGhcbiAqIFJlZHV4IGFuZCBjcmVhdGlvbi91cGRhdGUgb2YgUmVkdXggY29udGFpbmVycyBhbmQgUENvbm5lY3QuICBNb2RpZnlpbmcgdGhpcyBjb2RlIGNvdWxkIGhhdmUgdW5kZXNpcmVhYmxlIHJlc3VsdHMgYW5kXG4gKiBpcyB0b3RhbGx5IGF0IHlvdXIgb3duIHJpc2suXG4gKi9cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXJlZmVyZW5jZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9yZWZlcmVuY2UuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9yZWZlcmVuY2UuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBSZWZlcmVuY2VDb21wb25lbnQge1xuICByZWZlcmVuY2VkQ29tcG9uZW50OiBhbnkgPSBudWxsO1xuXG4gIC8qIFVzZWQgdG8gdG9nZ2xlIHNvbWUgY2xhc3Mtd2lkZSBsb2dnaW5nICovXG4gIHByaXZhdGUgc3RhdGljIGJMb2dnaW5nID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgLy8gV2l0aCBuZXcgc3RhdGljIG1ldGhvZCBhcHByb2FjaCwgdGhpcyBzaG91bGRuJ3QgYmUgY2FsbGVkIGFueSBtb3JlXG4gICAgd2luZG93LmFsZXJ0KGBpbiBSZWZlcmVuY2VDb21wb25lbnQgY29uc3RydWN0b3IhYCk7XG5cbiAgICBjb25zb2xlLmVycm9yKGBpbiBSZWZlcmVuY2VDb21wb25lbnQgY29uc3RydWN0b3IhYCk7XG4gIH1cblxuICAvLyBvblN0YXRlQ2hhbmdlIGFuZCB1cGRhdGVTZWxmIG1ldGhvZHMgcmVtb3ZlZCBmcm9tIG9yaWdpbmFsIGltcGxlbWVudGF0aW9uXG4gIC8vICB3aGVuIHdlIG1vdmVkIHRvIHRoZSBzdGF0aWMgbWV0aG9kIGltcGxlbWVudGF0aW9uLlxuXG4gIC8vIFNUQVRJQyBtZXRob2QgdG8gY3JlYXRlIGEgbm9ybWFsaXplZCBQQ29ubiAoYSBmdWxseSByZWFsaXplZCBWaWV3IHRoYXQgdGhlICdyZWZlcmVuY2UnXG4gIC8vICBjb21wb25lbnQgcmVmZXJzIHRvKSBmcm9tIHRoZSBnaXZlbiBwQ29ubi4gSGFzIHRvIGFkZCBpbiBzb21lIHN0dWZmIGFzIGluIHRoZSBjb25zdHJ1Y3RvclxuICBzdGF0aWMgY3JlYXRlRnVsbFJlZmVyZW5jZWRWaWV3RnJvbVJlZihpblBDb25uOiBhbnkpIHtcbiAgICAvLyBCQUlMIGFuZCBFUlJPUiBpZiBpblBDb25uIGlzIE5PVCBhIHJlZmVyZW5jZSFcbiAgICBpZiAoaW5QQ29ubi5nZXRDb21wb25lbnROYW1lKCkgIT09ICdyZWZlcmVuY2UnKSB7XG4gICAgICAvLyBkZWJ1Z2dlcjtcblxuICAgICAgY29uc29sZS5lcnJvcihgUmVmZXJlbmNlIGNvbXBvbmVudDogY3JlYXRlRnVsbFJlZmVyZW5jZWRWaWV3RnJvbVJlZiBpblBDb25uIGlzIE5PVCBhIHJlZmVyZW5jZSEgJHtpblBDb25uLmdldENvbXBvbmVudE5hbWUoKX1gKTtcbiAgICB9XG5cbiAgICBjb25zdCB0aGVSZXNvbHZlZENvbmZpZ1Byb3BzID0gaW5QQ29ubi5yZXNvbHZlQ29uZmlnUHJvcHMoaW5QQ29ubi5nZXRDb25maWdQcm9wcygpKTtcblxuICAgIGNvbnN0IHJlZmVyZW5jZUNvbmZpZyA9IHsgLi4uaW5QQ29ubi5nZXRDb21wb25lbnRDb25maWcoKSB9IHx8IHt9O1xuXG4gICAgLy8gU2luY2UgU0RLLUEgaW1wbGVtZW50cyBSZWZlcmVuY2UgYXMgc3RhdGljIG1ldGhvZHMgYW5kIHdlIGRvbid0IHJlbHkgb25cbiAgICAvLyAgdGhlIFJlZmVyZW5jZSBjb21wb25lbnQncyBoYW5kbGluZyBvZiB0aGUgdmlzaWJpbGl0eSBwcm9wLCB3ZSBsZWF2ZSBpdCBpblxuICAgIC8vICAoYW5kIGFsc28gbGVhdmluZyB0aGUgb3RoZXJzIGluIGZvciBub3cpIHNvIHRoZSByZWZlcmVuY2VkIFZpZXcgY2FuIGFjdCBvblxuICAgIC8vICB0aGUgdmlzaWJpbGl0eSBwcm9wLiAoVGhlIGZvbGxvd2luZyAzIGxpbmVzIHdlcmUgY2FycmllZCBvdmVyIGZyb20gUmVhY3QgU0RLKVxuICAgIGRlbGV0ZSByZWZlcmVuY2VDb25maWc/Lm5hbWU7XG4gICAgLy8gZGVsZXRlIHJlZmVyZW5jZUNvbmZpZz8udHlwZTtcbiAgICAvLyBkZWxldGUgcmVmZXJlbmNlQ29uZmlnPy52aXNpYmlsaXR5O1xuXG4gICAgY29uc3Qgdmlld01ldGFkYXRhID0gaW5QQ29ubi5nZXRSZWZlcmVuY2VkVmlldygpO1xuXG4gICAgaWYgKCF2aWV3TWV0YWRhdGEpIHtcbiAgICAgIGNvbnNvbGUubG9nKCdWaWV3IG5vdCBmb3VuZCAnLCBpblBDb25uLmdldENvbXBvbmVudENvbmZpZygpKTtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cblxuICAgIC8vIElmIHdlIGdldCBoZXJlLCB3ZSBoYXZlIG1ldGFkYXRhIGZvciBhIFZpZXcgY29tcG9uZW50Li4uXG4gICAgLy8gY29uc3QgcmVmZXJlbmNlZENvbXBvbmVudE5hbWUgPSB2aWV3TWV0YWRhdGEudHlwZTtcblxuICAgIGNvbnN0IHZpZXdPYmplY3QgPSB7XG4gICAgICAuLi52aWV3TWV0YWRhdGEsXG4gICAgICBjb25maWc6IHtcbiAgICAgICAgLi4udmlld01ldGFkYXRhLmNvbmZpZyxcbiAgICAgICAgLi4ucmVmZXJlbmNlQ29uZmlnXG4gICAgICB9XG4gICAgfTtcblxuICAgIGlmIChSZWZlcmVuY2VDb21wb25lbnQuYkxvZ2dpbmcpIHtcbiAgICAgIGNvbnNvbGUubG9nKGBSZWZlcmVuY2U6IGFib3V0IHRvIGNhbGwgY3JlYXRlQ29tcG9uZW50IHdpdGggcGFnZVJlZmVyZW5jZTogY29udGV4dDogJHt0aGVSZXNvbHZlZENvbmZpZ1Byb3BzLmNvbnRleHR9YCk7XG4gICAgfVxuXG4gICAgY29uc3Qgdmlld0NvbXBvbmVudCA9IGluUENvbm4uY3JlYXRlQ29tcG9uZW50KHZpZXdPYmplY3QsIG51bGwsIG51bGwsIHtcbiAgICAgIHBhZ2VSZWZlcmVuY2U6IHRoZVJlc29sdmVkQ29uZmlnUHJvcHMuY29udGV4dFxuICAgIH0pO1xuXG4gICAgLy8gdXBkYXRpbmcgdGhlIHJlZmVyZW5jZWRDb21wb25lbnQgc2hvdWxkIHRyaWdnZXIgYSByZW5kZXJcbiAgICBjb25zdCBuZXdDb21wUENvbm5lY3QgPSB2aWV3Q29tcG9uZW50LmdldFBDb25uZWN0KCk7XG5cbiAgICBuZXdDb21wUENvbm5lY3Quc2V0SW5oZXJpdGVkQ29uZmlnKHtcbiAgICAgIC4uLnJlZmVyZW5jZUNvbmZpZyxcbiAgICAgIHJlYWRPbmx5OiB0aGVSZXNvbHZlZENvbmZpZ1Byb3BzLnJlYWRPbmx5ID8gdGhlUmVzb2x2ZWRDb25maWdQcm9wcy5yZWFkT25seSA6IGZhbHNlLFxuICAgICAgZGlzcGxheU1vZGU6IHRoZVJlc29sdmVkQ29uZmlnUHJvcHMuZGlzcGxheU1vZGUgPyB0aGVSZXNvbHZlZENvbmZpZ1Byb3BzLmRpc3BsYXlNb2RlIDogbnVsbFxuICAgIH0pO1xuXG4gICAgaWYgKFJlZmVyZW5jZUNvbXBvbmVudC5iTG9nZ2luZykge1xuICAgICAgY29uc29sZS5sb2coXG4gICAgICAgIGBBbmd1bGFyIFJlZmVyZW5jZSBjb21wb25lbnQ6IGNyZWF0ZUZ1bGxSZWZlcmVuY2VkVmlld0Zyb21SZWYgLT4gbmV3Q29tcFBDb25uZWN0IGNvbmZpZ1Byb3BzOiAke0pTT04uc3RyaW5naWZ5KFxuICAgICAgICAgIG5ld0NvbXBQQ29ubmVjdC5nZXRDb25maWdQcm9wcygpXG4gICAgICAgICl9YFxuICAgICAgKTtcbiAgICB9XG5cbiAgICByZXR1cm4gbmV3Q29tcFBDb25uZWN0O1xuICB9XG5cbiAgLy8gU1RBVElDIG1ldGhvZCB0aGF0IG90aGVyIGNvbXBvbmVudHMgY2FuIGNhbGwgdG8gbm9ybWFsaXplXG4gIC8vICBhIHBDb25uIG9iamVjdCB0aGF0IG1pZ2h0IGJlIGEgJ3JlZmVyZW5jZScuIElmIHRoZSBpbmNvbWluZ1xuICAvLyAgcENvbm4gaXMgYSByZWZlcmVuY2UsIHJldHVybiBpdHMgZGVyZWZlcmVuY2VkIFZpZXcgUENvbm5lY3Qnc1xuICAvLyAgZ2V0UENvbm5lY3QuIE90aGVyd2lzZSwgcmV0dXJuIHRoZSBwYXNzZWQgaW4gcENvbm4gdW5jaGFuZ2VkXG4gIC8vICBpblBDb25uID0gYSBQQ29ubiBvYmplY3QgKGV4OiB7IGdldFBDb25uZWN0KCl9IClcbiAgc3RhdGljIG5vcm1hbGl6ZVBDb25uKGluUENvbm46IGFueSkge1xuICAgIC8vIGRlYnVnZ2VyO1xuXG4gICAgbGV0IHJldHVybk9iaiA9IGZhbHNlO1xuICAgIGxldCB0aGVQQ29ublR5cGUgPSAnJztcblxuICAgIGlmIChpblBDb25uLmdldFBDb25uZWN0KSB7XG4gICAgICAvLyBpblBDb25uIGlzIGFuIG9iamVjdCAoZXg6IHsgZ2V0UENvbm5lY3QoKX0gKSwgc28gd2Ugd2FudCB0byByZXR1cm5cbiAgICAgIC8vICBhbnkgcmVmZXJlbmNlZCB2aWV3IGFzIHRoZSBvYmplY3QgY29udGFpbmluZyB0aGVcbiAgICAgIC8vICB0aGUgZ2V0UENvbm5lY3QgZnVuY3Rpb25cbiAgICAgIHJldHVybk9iaiA9IHRydWU7XG4gICAgICB0aGVQQ29ublR5cGUgPSBpblBDb25uLmdldFBDb25uZWN0KCkuZ2V0Q29tcG9uZW50TmFtZSgpO1xuICAgIH0gZWxzZSB7XG4gICAgICAvLyBpblBDb25uIGlzIGFuIG9iamVjdCB3aXRoIHRoZSBQQ29ubmVjdCBmdW5jdGlvbiwgc28gd2Ugd2FudFxuICAgICAgLy8gIHRvIHJldHVybiBhbnkgcmVmZXJlbmNlZCB2aWV3IGFzIHRoZSBvYmplY3QgY29udGFpbmluZyB0aGVcbiAgICAgIC8vICB0aGUgYzExbiBmdW5jdGlvblxuICAgICAgcmV0dXJuT2JqID0gZmFsc2U7XG4gICAgICB0aGVQQ29ublR5cGUgPSBpblBDb25uLmdldENvbXBvbmVudE5hbWUoKTtcbiAgICB9XG5cbiAgICBpZiAodGhlUENvbm5UeXBlID09PSAncmVmZXJlbmNlJykge1xuICAgICAgaWYgKHJldHVybk9iaikge1xuICAgICAgICAvLyAgV0FTLi4uXG4gICAgICAgIC8vIGNvbnN0IHRoZVJlZlZpZXdQQ29ubiA9IGluUENvbm4uZ2V0UENvbm5lY3QoKS5nZXRSZWZlcmVuY2VkVmlld1BDb25uZWN0KHRydWUpO1xuICAgICAgICAvLyBOb3c6IEFMV0FZUyBjYWxsaW5nIGNyZWF0ZUZ1bGxSZWZlcmVuY2VkVmlld0Zyb21SZWYgdG8gaGF2ZSBvcHRpb25zLCBQYWdlUmVmZXJlbmNlLCBldGMuXG4gICAgICAgIC8vICBzZXQgY29ycmVjdGx5IGluIHRoZSBDMTFuRW52IChQQ29ubmVjdCkgb2JqZWN0XG4gICAgICAgIC8vIGRlYnVnZ2VyO1xuICAgICAgICBsZXQgdGhlUmVmVmlld1BDb25uID0gdGhpcy5jcmVhdGVGdWxsUmVmZXJlbmNlZFZpZXdGcm9tUmVmKGluUENvbm4uZ2V0UENvbm5lY3QoKSk7XG4gICAgICAgIC8vIG5vdyByZXR1cm4gaXRzIFBDb25uZWN0XG4gICAgICAgIHRoZVJlZlZpZXdQQ29ubiA9IHRoZVJlZlZpZXdQQ29ubi5nZXRDb21wb25lbnQoKTtcblxuICAgICAgICAvLyBjb25zdCB0aGVGdWxsUmVmZXJlbmNlID0gdGhlUmVmVmlld1BDb25uLmdldFBDb25uZWN0KCkuZ2V0RnVsbFJlZmVyZW5jZSgpO1xuICAgICAgICAvLyBjb25zb2xlLmxvZyhgdGhlRnVsbFJlZmVyZW5jZTogJHt0aGVGdWxsUmVmZXJlbmNlfWApO1xuXG4gICAgICAgIHJldHVybiB0aGVSZWZWaWV3UENvbm47XG4gICAgICB9XG4gICAgICAvLyBjb25zb2xlLmxvZyhgY3JlYXRlZCB0aGVGdWxsUmVmVmlldyBmdWxsIHJlZmVyZW5jZTogJHt0aGVGdWxsUmVmVmlldy5nZXRGdWxsUmVmZXJlbmNlKCl9YCk7XG4gICAgICAvLyBkZWJ1Z2dlcjtcblxuICAgICAgcmV0dXJuIHRoaXMuY3JlYXRlRnVsbFJlZmVyZW5jZWRWaWV3RnJvbVJlZihpblBDb25uKTtcbiAgICB9XG4gICAgcmV0dXJuIGluUENvbm47XG4gIH1cblxuICAvLyBTVEFUSUMgbWV0aG9kIHRoYXQgb3RoZXIgY29tcG9uZW50cyBjYW4gY2FsbCB0byBub3JtYWxpemVcbiAgLy8gIGFuIGFycmF5IG9mIHBDb25uIG9iamVjdHMgd2hlcmUgYW55IG9mIHRoZSBjaGlsZHJlbiBtaWdodFxuICAvLyAgYmUgYSAncmVmZXJlbmNlJy4gVGhlIGFycmF5IHJldHVybnMgYW4gYXJyYXkgb2YgY2hpbGRyZW5cbiAgLy8gIHdoZXJlIGFueSAncmVmZXJlbmNlJyBpcyByZXBsYWNlZCB3aXRoIGl0cyBSZWZlcmVuY2VkVmlld1xuICAvLyAgaW5QQ29ubkFycmF5IGlzIGFuIGFycmF5IG9mIFBDb25uIG9iamVjdHMgb3IgZnVuY3Rpb25zLlxuICAvLyAgICBJdHMgdmFsdWUgaXMgcGFzc2VkIHRvIG5vcm1hbGl6ZVBDb25uXG5cbiAgc3RhdGljIG5vcm1hbGl6ZVBDb25uQXJyYXkoaW5QQ29ubkFycmF5OiBhbnkpIHtcbiAgICBpZiAoIShpblBDb25uQXJyYXk/Lmxlbmd0aCA+IDApKSB7XG4gICAgICAvLyBudWxsIG9yIGVtcHR5IGFycmF5LCByZXR1cm4gd2hhdCB3YXMgcGFzc2VkIGluXG4gICAgICByZXR1cm4gaW5QQ29ubkFycmF5O1xuICAgIH1cblxuICAgIHJldHVybiBpblBDb25uQXJyYXkubWFwKGNoaWxkID0+IHtcbiAgICAgIHJldHVybiBSZWZlcmVuY2VDb21wb25lbnQubm9ybWFsaXplUENvbm4oY2hpbGQpO1xuICAgIH0pO1xuICB9XG59XG4iLCI8IS0tIFJlZmVyZW5jZSBjb21wb25lbnQgaXMgYWxsIHN0YXRpYyBtZXRob2RzIHNvIC5odG1sIG5vdCB1c2VkIC0tPlxuIl19
@@ -0,0 +1,33 @@
1
+ import { Component, Input, forwardRef } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { ReferenceComponent } from '../reference/reference.component';
4
+ import { ComponentMapperComponent } from '../../../_bridge/component-mapper/component-mapper.component';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common";
7
+ export class RegionComponent {
8
+ ngOnInit() {
9
+ // console.log(`ngOnInit (no registerAndSubscribe!): Region`);
10
+ this.updateSelf();
11
+ }
12
+ ngOnChanges(changes) {
13
+ const { pConn$ } = changes;
14
+ if (pConn$.previousValue && pConn$.previousValue !== pConn$.currentValue) {
15
+ this.updateSelf();
16
+ }
17
+ }
18
+ updateSelf() {
19
+ // The children may contain 'reference' components, so normalize the children...
20
+ this.arChildren$ = ReferenceComponent.normalizePConnArray(this.pConn$.getChildren());
21
+ }
22
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RegionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
23
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RegionComponent, isStandalone: true, selector: "app-region", inputs: { pConn$: "pConn$", formGroup$: "formGroup$" }, usesOnChanges: true, ngImport: i0, template: "<!-- When adding a component here, add the same component in 'default-form' template as well -->\n<div *ngFor=\"let kid of arChildren$\">\n <component-mapper\n [name]=\"kid.getPConnect().getComponentName()\"\n [props]=\"{\n pConn$: kid.getPConnect(),\n formGroup$: formGroup$\n }\"\n errorMsg=\"Region wants component not yet available: {{ kid.getPConnect().getComponentName() }}\"\n ></component-mapper>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(function () { return CommonModule; }) }, { kind: "directive", type: i0.forwardRef(function () { return i1.NgForOf; }), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i0.forwardRef(function () { return ComponentMapperComponent; }), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
24
+ }
25
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RegionComponent, decorators: [{
26
+ type: Component,
27
+ args: [{ selector: 'app-region', standalone: true, imports: [CommonModule, forwardRef(() => ComponentMapperComponent)], template: "<!-- When adding a component here, add the same component in 'default-form' template as well -->\n<div *ngFor=\"let kid of arChildren$\">\n <component-mapper\n [name]=\"kid.getPConnect().getComponentName()\"\n [props]=\"{\n pConn$: kid.getPConnect(),\n formGroup$: formGroup$\n }\"\n errorMsg=\"Region wants component not yet available: {{ kid.getPConnect().getComponentName() }}\"\n ></component-mapper>\n</div>\n" }]
28
+ }], propDecorators: { pConn$: [{
29
+ type: Input
30
+ }], formGroup$: [{
31
+ type: Input
32
+ }] } });
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy9pbmZyYS9yZWdpb24vcmVnaW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy9pbmZyYS9yZWdpb24vcmVnaW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLFVBQVUsRUFBNEIsTUFBTSxlQUFlLENBQUM7QUFDL0YsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhEQUE4RCxDQUFDOzs7QUFTeEcsTUFBTSxPQUFPLGVBQWU7SUFNMUIsUUFBUTtRQUNOLDhEQUE4RDtRQUM5RCxJQUFJLENBQUMsVUFBVSxFQUFFLENBQUM7SUFDcEIsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsT0FBTyxDQUFDO1FBRTNCLElBQUksTUFBTSxDQUFDLGFBQWEsSUFBSSxNQUFNLENBQUMsYUFBYSxLQUFLLE1BQU0sQ0FBQyxZQUFZLEVBQUU7WUFDeEUsSUFBSSxDQUFDLFVBQVUsRUFBRSxDQUFDO1NBQ25CO0lBQ0gsQ0FBQztJQUVELFVBQVU7UUFDUixnRkFBZ0Y7UUFDaEYsSUFBSSxDQUFDLFdBQVcsR0FBRyxrQkFBa0IsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7SUFDdkYsQ0FBQzsrR0F0QlUsZUFBZTttR0FBZixlQUFlLG1KQ2I1Qix3YkFXQSw0RkRBWSxZQUFZLDBPQUFtQix3QkFBd0I7OzRGQUV0RCxlQUFlO2tCQVAzQixTQUFTOytCQUNFLFlBQVksY0FHVixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHdCQUF3QixDQUFDLENBQUM7OEJBRzFELE1BQU07c0JBQWQsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIElucHV0LCBmb3J3YXJkUmVmLCBPbkNoYW5nZXMsIFNpbXBsZUNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBSZWZlcmVuY2VDb21wb25lbnQgfSBmcm9tICcuLi9yZWZlcmVuY2UvcmVmZXJlbmNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21wb25lbnRNYXBwZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9fYnJpZGdlL2NvbXBvbmVudC1tYXBwZXIvY29tcG9uZW50LW1hcHBlci5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtcmVnaW9uJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3JlZ2lvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3JlZ2lvbi5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBmb3J3YXJkUmVmKCgpID0+IENvbXBvbmVudE1hcHBlckNvbXBvbmVudCldXG59KVxuZXhwb3J0IGNsYXNzIFJlZ2lvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgcENvbm4kOiB0eXBlb2YgUENvbm5lY3Q7XG4gIEBJbnB1dCgpIGZvcm1Hcm91cCQ6IEZvcm1Hcm91cDtcblxuICBhckNoaWxkcmVuJDogYW55W107XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgLy8gY29uc29sZS5sb2coYG5nT25Jbml0IChubyByZWdpc3RlckFuZFN1YnNjcmliZSEpOiBSZWdpb25gKTtcbiAgICB0aGlzLnVwZGF0ZVNlbGYoKTtcbiAgfVxuXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcbiAgICBjb25zdCB7IHBDb25uJCB9ID0gY2hhbmdlcztcblxuICAgIGlmIChwQ29ubiQucHJldmlvdXNWYWx1ZSAmJiBwQ29ubiQucHJldmlvdXNWYWx1ZSAhPT0gcENvbm4kLmN1cnJlbnRWYWx1ZSkge1xuICAgICAgdGhpcy51cGRhdGVTZWxmKCk7XG4gICAgfVxuICB9XG5cbiAgdXBkYXRlU2VsZigpIHtcbiAgICAvLyBUaGUgY2hpbGRyZW4gbWF5IGNvbnRhaW4gJ3JlZmVyZW5jZScgY29tcG9uZW50cywgc28gbm9ybWFsaXplIHRoZSBjaGlsZHJlbi4uLlxuICAgIHRoaXMuYXJDaGlsZHJlbiQgPSBSZWZlcmVuY2VDb21wb25lbnQubm9ybWFsaXplUENvbm5BcnJheSh0aGlzLnBDb25uJC5nZXRDaGlsZHJlbigpKTtcbiAgfVxufVxuIiwiPCEtLSBXaGVuIGFkZGluZyBhIGNvbXBvbmVudCBoZXJlLCBhZGQgdGhlIHNhbWUgY29tcG9uZW50IGluICdkZWZhdWx0LWZvcm0nIHRlbXBsYXRlIGFzIHdlbGwgLS0+XG48ZGl2ICpuZ0Zvcj1cImxldCBraWQgb2YgYXJDaGlsZHJlbiRcIj5cbiAgPGNvbXBvbmVudC1tYXBwZXJcbiAgICBbbmFtZV09XCJraWQuZ2V0UENvbm5lY3QoKS5nZXRDb21wb25lbnROYW1lKClcIlxuICAgIFtwcm9wc109XCJ7XG4gICAgICBwQ29ubiQ6IGtpZC5nZXRQQ29ubmVjdCgpLFxuICAgICAgZm9ybUdyb3VwJDogZm9ybUdyb3VwJFxuICAgIH1cIlxuICAgIGVycm9yTXNnPVwiUmVnaW9uIHdhbnRzIGNvbXBvbmVudCBub3QgeWV0IGF2YWlsYWJsZToge3sga2lkLmdldFBDb25uZWN0KCkuZ2V0Q29tcG9uZW50TmFtZSgpIH19XCJcbiAgPjwvY29tcG9uZW50LW1hcHBlcj5cbjwvZGl2PlxuIl19