@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,68 @@
1
+ import { getLocale } from '../common';
2
+ import { currencyMap } from './currency-map';
3
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
4
+ function NumberFormatter(value, { locale = 'en-US', decPlaces = 2, style = '', currency = 'USD' } = {}) {
5
+ const currentLocale = getLocale(locale);
6
+ if (value !== null && value !== undefined) {
7
+ return Number(value).toLocaleString(currentLocale, {
8
+ minimumFractionDigits: decPlaces,
9
+ maximumFractionDigits: decPlaces
10
+ });
11
+ }
12
+ return value;
13
+ }
14
+ function CurrencyFormatter(value, { symbol = true, position = 'before', locale = 'en-US', decPlaces = 2, style = 'currency', currency = 'USD' } = {}) {
15
+ const currentLocale = getLocale(locale);
16
+ let formattedValue = value;
17
+ if (value !== null && value !== undefined && value !== '') {
18
+ formattedValue = NumberFormatter(value, {
19
+ locale: currentLocale,
20
+ decPlaces,
21
+ style,
22
+ currency
23
+ });
24
+ let countryCode = currentLocale?.split('-')[1].toUpperCase();
25
+ // If countryCode is still undefined, setting it as US
26
+ if (!countryCode) {
27
+ countryCode = 'US';
28
+ }
29
+ let code;
30
+ if (symbol) {
31
+ code = currencyMap[countryCode]?.symbolFormat;
32
+ }
33
+ else {
34
+ code = currencyMap[countryCode]?.currencyCode;
35
+ }
36
+ // if position is provided, change placeholder accordingly.
37
+ if (position && code) {
38
+ if (position.toLowerCase() === 'before' && code.indexOf('{#}') === 0) {
39
+ code = code.slice(3) + code.slice(0, 3);
40
+ }
41
+ else if (position.toLowerCase() === 'after' && code.indexOf('{#}') === code.length - 3) {
42
+ code = code.slice(-3) + code.slice(0, -3);
43
+ }
44
+ }
45
+ return code?.replace('{#}', formattedValue) || formattedValue;
46
+ }
47
+ return formattedValue;
48
+ }
49
+ function SymbolFormatter(value, { symbol = '$', suffix = true, locale = 'en-US' } = {}) {
50
+ let formattedValue = value;
51
+ if (value !== null && value !== undefined) {
52
+ formattedValue = NumberFormatter(value, { locale });
53
+ return suffix ? `${formattedValue}${symbol}` : `${symbol}${formattedValue}`;
54
+ }
55
+ return formattedValue;
56
+ }
57
+ export const formatters = {
58
+ Currency: (value, options) => CurrencyFormatter(value, options),
59
+ 'Currency-Code': (value, options) => CurrencyFormatter(value, { ...options, symbol: false }),
60
+ Decimal: (value, options) => NumberFormatter(value, options),
61
+ 'Decimal-Auto': (value, options) => NumberFormatter(value, {
62
+ ...options,
63
+ decPlaces: Number.isInteger(value) ? 0 : 2
64
+ }),
65
+ Integer: (value, options) => NumberFormatter(value, { ...options, decPlaces: 0 }),
66
+ Percentage: (value, options) => SymbolFormatter(value, { ...options, symbol: '%' })
67
+ };
68
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybWF0LXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1zZGstY29tcG9uZW50cy9zcmMvbGliL19oZWxwZXJzL2Zvcm1hdHRlcnMvZm9ybWF0LXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDdEMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRTdDLDZEQUE2RDtBQUM3RCxTQUFTLGVBQWUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxNQUFNLEdBQUcsT0FBTyxFQUFFLFNBQVMsR0FBRyxDQUFDLEVBQUUsS0FBSyxHQUFHLEVBQUUsRUFBRSxRQUFRLEdBQUcsS0FBSyxFQUFFLEdBQUcsRUFBRTtJQUNwRyxNQUFNLGFBQWEsR0FBRyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDeEMsSUFBSSxLQUFLLEtBQUssSUFBSSxJQUFJLEtBQUssS0FBSyxTQUFTLEVBQUU7UUFDekMsT0FBTyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRTtZQUNqRCxxQkFBcUIsRUFBRSxTQUFTO1lBQ2hDLHFCQUFxQixFQUFFLFNBQVM7U0FDakMsQ0FBQyxDQUFDO0tBQ0o7SUFDRCxPQUFPLEtBQUssQ0FBQztBQUNmLENBQUM7QUFFRCxTQUFTLGlCQUFpQixDQUN4QixLQUFLLEVBQ0wsRUFBRSxNQUFNLEdBQUcsSUFBSSxFQUFFLFFBQVEsR0FBRyxRQUFRLEVBQUUsTUFBTSxHQUFHLE9BQU8sRUFBRSxTQUFTLEdBQUcsQ0FBQyxFQUFFLEtBQUssR0FBRyxVQUFVLEVBQUUsUUFBUSxHQUFHLEtBQUssRUFBRSxHQUFHLEVBQUU7SUFFbEgsTUFBTSxhQUFhLEdBQUcsU0FBUyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3hDLElBQUksY0FBYyxHQUFHLEtBQUssQ0FB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LENBQ2pDLGVBQWUsQ0FBQyxLQUFLLEVBQUU7UUFDckIsR0FBRyxPQUFPO1FBQ1YsU0FBUyxFQUFFLE1BQU0sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztLQUMzQyxDQUFDO0lBQ0osT0FBTyxFQUFFLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsZUFBZSxDQUFDLEtBQUssRUFBRSxFQUFFLEdBQUcsT0FBTyxFQUFFLFNBQVMsRUFBRSxDQUFDLEVBQUUsQ0FBQztJQUNqRixVQUFVLEVBQUUsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLEVBQUUsQ0FBQyxlQUFlLENBQUMsS0FBSyxFQUFFLEVBQUUsR0FBRyxPQUFPLEVBQUUsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDO0NBQ3BGLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBnZXRMb2NhbGUgfSBmcm9tICcuLi9jb21tb24nO1xuaW1wb3J0IHsgY3VycmVuY3lNYXAgfSBmcm9tICcuL2N1cnJlbmN5LW1hcCc7XG5cbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbmZ1bmN0aW9uIE51bWJlckZvcm1hdHRlcih2YWx1ZSwgeyBsb2NhbGUgPSAnZW4tVVMnLCBkZWNQbGFjZXMgPSAyLCBzdHlsZSA9ICcnLCBjdXJyZW5jeSA9ICdVU0QnIH0gPSB7fSkge1xuICBjb25zdCBjdXJyZW50TG9jYWxlID0gZ2V0TG9jYWxlKGxvY2FsZSk7XG4gIGlmICh2YWx1ZSAhPT0gbnVsbCAmJiB2YWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgcmV0dXJuIE51bWJlcih2YWx1ZSkudG9Mb2NhbGVTdHJpbmcoY3VycmVudExvY2FsZSwge1xuICAgICAgbWluaW11bUZyYWN0aW9uRGlnaXRzOiBkZWNQbGFjZXMsXG4gICAgICBtYXhpbXVtRnJhY3Rpb25EaWdpdHM6IGRlY1BsYWNlc1xuICAgIH0pO1xuICB9XG4gIHJldHVybiB2YWx1ZTtcbn1cblxuZnVuY3Rpb24gQ3VycmVuY3lGb3JtYXR0ZXIoXG4gIHZhbHVlLFxuICB7IHN5bWJvbCA9IHRydWUsIHBvc2l0aW9uID0gJ2JlZm9yZScsIGxvY2FsZSA9ICdlbi1VUycsIGRlY1BsYWNlcyA9IDIsIHN0eWxlID0gJ2N1cnJlbmN5JywgY3VycmVuY3kgPSAnVVNEJyB9ID0ge31cbikge1xuICBjb25zdCBjdXJyZW50TG9jYWxlID0gZ2V0TG9jYWxlKGxvY2FsZSk7XG4gIGxldCBmb3JtYXR0ZWRWYWx1ZSA9IHZhbHVlO1xuICBpZiAodmFsdWUgIT09IG51bGwgJiYgdmFsdWUgIT09IHVuZGVmaW5lZCAmJiB2YWx1ZSAhPT0gJycpIHtcbiAgICBmb3JtYXR0ZWRWYWx1ZSA9IE51bWJlckZvcm1hdHRlcih2YWx1ZSwge1xuICAgICAgbG9jYWxlOiBjdXJyZW50TG9jYWxlLFxuICAgICAgZGVjUGxhY2VzLFxuICAgICAgc3R5bGUsXG4gICAgICBjdXJyZW5jeVxuICAgIH0pO1xuXG4gICAgbGV0IGNvdW50cnlDb2RlID0gY3VycmVudExvY2FsZT8uc3BsaXQoJy0nKVsxXS50b1VwcGVyQ2FzZSgpO1xuXG4gICAgLy8gSWYgY291bnRyeUNvZGUgaXMgc3RpbGwgdW5kZWZpbmVkLCBzZXR0aW5nIGl0IGFzIFVTXG4gICAgaWYgKCFjb3VudHJ5Q29kZSkge1xuICAgICAgY291bnRyeUNvZGUgPSAnVVMnO1xuICAgIH1cblxuICAgIGxldCBjb2RlO1xuICAgIGlmIChzeW1ib2wpIHtcbiAgICAgIGNvZGUgPSBjdXJyZW5jeU1hcFtjb3VudHJ5Q29kZV0/LnN5bWJvbEZvcm1hdDtcbiAgICB9IGVsc2Uge1xuICAgICAgY29kZSA9IGN1cnJlbmN5TWFwW2NvdW50cnlDb2RlXT8uY3VycmVuY3lDb2RlO1xuICAgIH1cblxuICAgIC8vIGlmIHBvc2l0aW9uIGlzIHByb3ZpZGVkLCBjaGFuZ2UgcGxhY2Vob2xkZXIgYWNjb3JkaW5nbHkuXG4gICAgaWYgKHBvc2l0aW9uICYmIGNvZGUpIHtcbiAgICAgIGlmIChwb3NpdGlvbi50b0xvd2VyQ2FzZSgpID09PSAnYmVmb3JlJyAmJiBjb2RlLmluZGV4T2YoJ3sjfScpID09PSAwKSB7XG4gICAgICAgIGNvZGUgPSBjb2RlLnNsaWNlKDMpICsgY29kZS5zbGljZSgwLCAzKTtcbiAgICAgIH0gZWxzZSBpZiAocG9zaXRpb24udG9Mb3dlckNhc2UoKSA9PT0gJ2FmdGVyJyAmJiBjb2RlLmluZGV4T2YoJ3sjfScpID09PSBjb2RlLmxlbmd0aCAtIDMpIHtcbiAgICAgICAgY29kZSA9IGNvZGUuc2xpY2UoLTMpICsgY29kZS5zbGljZSgwLCAtMyk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBjb2RlPy5yZXBsYWNlKCd7I30nLCBmb3JtYXR0ZWRWYWx1ZSkgfHwgZm9ybWF0dGVkVmFsdWU7XG4gIH1cbiAgcmV0dXJuIGZvcm1hdHRlZFZhbHVlO1xufVxuXG5mdW5jdGlvbiBTeW1ib2xGb3JtYXR0ZXIodmFsdWUsIHsgc3ltYm9sID0gJyQnLCBzdWZmaXggPSB0cnVlLCBsb2NhbGUgPSAnZW4tVVMnIH0gPSB7fSkge1xuICBsZXQgZm9ybWF0dGVkVmFsdWUgPSB2YWx1ZTtcbiAgaWYgKHZhbHVlICE9PSBudWxsICYmIHZhbHVlICE9PSB1bmRlZmluZWQpIHtcbiAgICBmb3JtYXR0ZWRWYWx1ZSA9IE51bWJlckZvcm1hdHRlcih2YWx1ZSwgeyBsb2NhbGUgfSk7XG4gICAgcmV0dXJuIHN1ZmZpeCA/IGAke2Zvcm1hdHRlZFZhbHVlfSR7c3ltYm9sfWAgOiBgJHtzeW1ib2x9JHtmb3JtYXR0ZWRWYWx1ZX1gO1xuICB9XG4gIHJldHVybiBmb3JtYXR0ZWRWYWx1ZTtcbn1cblxuZXhwb3J0IGNvbnN0IGZvcm1hdHRlcnMgPSB7XG4gIEN1cnJlbmN5OiAodmFsdWUsIG9wdGlvbnMpID0+IEN1cnJlbmN5Rm9ybWF0dGVyKHZhbHVlLCBvcHRpb25zKSxcbiAgJ0N1cnJlbmN5LUNvZGUnOiAodmFsdWUsIG9wdGlvbnMpID0+IEN1cnJlbmN5Rm9ybWF0dGVyKHZhbHVlLCB7IC4uLm9wdGlvbnMsIHN5bWJvbDogZmFsc2UgfSksXG4gIERlY2ltYWw6ICh2YWx1ZSwgb3B0aW9ucykgPT4gTnVtYmVyRm9ybWF0dGVyKHZhbHVlLCBvcHRpb25zKSxcbiAgJ0RlY2ltYWwtQXV0byc6ICh2YWx1ZSwgb3B0aW9ucykgPT5cbiAgICBOdW1iZXJGb3JtYXR0ZXIodmFsdWUsIHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBkZWNQbGFjZXM6IE51bWJlci5pc0ludGVnZXIodmFsdWUpID8gMCA6IDJcbiAgICB9KSxcbiAgSW50ZWdlcjogKHZhbHVlLCBvcHRpb25zKSA9PiBOdW1iZXJGb3JtYXR0ZXIodmFsdWUsIHsgLi4ub3B0aW9ucywgZGVjUGxhY2VzOiAwIH0pLFxuICBQZXJjZW50YWdlOiAodmFsdWUsIG9wdGlvbnMpID0+IFN5bWJvbEZvcm1hdHRlcih2YWx1ZSwgeyAuLi5vcHRpb25zLCBzeW1ib2w6ICclJyB9KVxufTtcbiJdfQ==
@@ -0,0 +1,59 @@
1
+ export const getDeferFriendlyTabs = allTabs => {
2
+ return allTabs.map(tab => {
3
+ const theTabCompConfig = tab.getPConnect().getConfigProps();
4
+ return { type: 'DeferLoad', config: theTabCompConfig };
5
+ });
6
+ };
7
+ export const getVisibleTabs = (allTabs, uuid) => {
8
+ let index = 0;
9
+ return allTabs
10
+ .getPConnect()
11
+ .getChildren()
12
+ ?.filter(child => {
13
+ // US-402838: Filter out tab entries if the config object does not contain the visibility attribute or it evaluates to the boolean true,
14
+ const config = child.getPConnect().getConfigProps();
15
+ // BUG-642335 - adding isChildDeferLoad prop
16
+ if (child.getPConnect().getComponentName() === 'DeferLoad') {
17
+ const { name: viewName, deferLoadId = `${viewName}_${uuid}_${index}` } = config;
18
+ child.getPConnect().registerAdditionalProps({
19
+ deferLoadId,
20
+ isChildDeferLoad: true
21
+ });
22
+ }
23
+ index += 1;
24
+ return !('visibility' in config) || config.visibility === true;
25
+ });
26
+ };
27
+ export const getTransientTabs = (availableTabs, currentTabId, tabItems) => {
28
+ return (availableTabs?.map((child, i) => {
29
+ const config = child.getPConnect().getConfigProps();
30
+ const tabLabel = config.label ||
31
+ config.inheritedProps?.find(obj => obj.prop === 'label')?.value ||
32
+ PCore.getLocaleUtils().getLocaleValue('No label specified in config', 'Generic');
33
+ const tabContent = () => {
34
+ if (i.toString() === currentTabId) {
35
+ return tabItems?.[i.toString()]?.content ? tabItems?.[i.toString()]?.content : child.getPConnect().getComponent();
36
+ }
37
+ return tabItems?.[i.toString()]?.content;
38
+ };
39
+ return {
40
+ name: tabLabel,
41
+ id: i.toString(),
42
+ content: tabContent()
43
+ };
44
+ }) || []);
45
+ };
46
+ export const tabClick = (id, availableTabs, currentTabId, tabItems) => {
47
+ const currentPConn = availableTabs[currentTabId].getPConnect();
48
+ const { deferLoadId } = currentPConn.getConfigProps();
49
+ PCore.getDeferLoadManager().deactivate(deferLoadId, currentPConn.getContextName());
50
+ const index = parseInt(id, 10);
51
+ if (tabItems[index]?.content === null) {
52
+ tabItems[index].content = availableTabs[index].getPConnect().getComponent();
53
+ }
54
+ const nextPConn = availableTabs[id].getPConnect();
55
+ const { deferLoadId: activeId } = nextPConn && nextPConn.getConfigProps();
56
+ PCore.getDeferLoadManager().activate(activeId, nextPConn?.getContextName());
57
+ PCore.getDeferLoadManager().refreshComponent(activeId, nextPConn?.getContextName());
58
+ };
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiLXV0aWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1zZGstY29tcG9uZW50cy9zcmMvbGliL19oZWxwZXJzL3RhYi11dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLENBQUMsTUFBTSxvQkFBb0IsR0FBRyxPQUFPLENBQUMsRUFBRTtJQUM1QyxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7UUFDdkIsTUFBTSxnQkFBZ0IsR0FBRyxHQUFHLENBQUMsV0FBVyxFQUFFLENBQUMsY0FBYyxFQUFFLENBQUM7UUFDNUQsT0FBTyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsTUFBTSxFQUFFLGdCQUFnQixFQUFFLENBQUM7SUFDekQsQ0FBQyxDQUFDLENBQUM7QUFDTCxDQUFDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsQ0FBQyxPQUFPLEVBQUUsSUFBSSxFQUFFLEVBQUU7SUFDOUMsSUFBSSxLQUFLLEdBQUcsQ0FBQyxDQUFDO0lBQ2QsT0FBTyxPQUFPO1NBQ1gsV0FBVyxFQUFFO1NBQ2IsV0FBVyxFQUFFO1FBQ2QsRUFBRSxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUU7UUFDZix3SUFBd0k7UUFDeEksTUFBTSxNQUFNLEdBQUcsS0FBSyxDQUFDLFdBQVcsRUFBRSxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBRXBELDRDQUE0QztRQUM1QyxJQUFJLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQyxnQkFBZ0IsRUFBRSxLQUFLLFdBQVcsRUFBRTtZQUMxRCxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxXQUFXLEdBQUcsR0FBRyxRQUFRLElBQUksSUFBSSxJQUFJLEtBQUssRUFBRSxFQUFFLEdBQUcsTUFBTSxDQUFDO1lBQ2hGLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztnQkFDMUMsV0FBVztnQkFD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LG1CQUFtQixFQUFFLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsQ0FBQyxDQUFDO0FBQ3RGLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjb25zdCBnZXREZWZlckZyaWVuZGx5VGFicyA9IGFsbFRhYnMgPT4ge1xuICByZXR1cm4gYWxsVGFicy5tYXAodGFiID0+IHtcbiAgICBjb25zdCB0aGVUYWJDb21wQ29uZmlnID0gdGFiLmdldFBDb25uZWN0KCkuZ2V0Q29uZmlnUHJvcHMoKTtcbiAgICByZXR1cm4geyB0eXBlOiAnRGVmZXJMb2FkJywgY29uZmlnOiB0aGVUYWJDb21wQ29uZmlnIH07XG4gIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldFZpc2libGVUYWJzID0gKGFsbFRhYnMsIHV1aWQpID0+IHtcbiAgbGV0IGluZGV4ID0gMDtcbiAgcmV0dXJuIGFsbFRhYnNcbiAgICAuZ2V0UENvbm5lY3QoKVxuICAgIC5nZXRDaGlsZHJlbigpXG4gICAgPy5maWx0ZXIoY2hpbGQgPT4ge1xuICAgICAgLy8gVVMtNDAyODM4OiBGaWx0ZXIgb3V0IHRhYiBlbnRyaWVzIGlmIHRoZSBjb25maWcgb2JqZWN0IGRvZXMgbm90IGNvbnRhaW4gdGhlIHZpc2liaWxpdHkgYXR0cmlidXRlIG9yIGl0IGV2YWx1YXRlcyB0byB0aGUgYm9vbGVhbiB0cnVlLFxuICAgICAgY29uc3QgY29uZmlnID0gY2hpbGQuZ2V0UENvbm5lY3QoKS5nZXRDb25maWdQcm9wcygpO1xuXG4gICAgICAvLyBCVUctNjQyMzM1IC0gYWRkaW5nIGlzQ2hpbGREZWZlckxvYWQgcHJvcFxuICAgICAgaWYgKGNoaWxkLmdldFBDb25uZWN0KCkuZ2V0Q29tcG9uZW50TmFtZSgpID09PSAnRGVmZXJMb2FkJykge1xuICAgICAgICBjb25zdCB7IG5hbWU6IHZpZXdOYW1lLCBkZWZlckxvYWRJZCA9IGAke3ZpZXdOYW1lfV8ke3V1aWR9XyR7aW5kZXh9YCB9ID0gY29uZmlnO1xuICAgICAgICBjaGlsZC5nZXRQQ29ubmVjdCgpLnJlZ2lzdGVyQWRkaXRpb25hbFByb3BzKHtcbiAgICAgICAgICBkZWZlckxvYWRJZCxcbiAgICAgICAgICBpc0NoaWxkRGVmZXJMb2FkOiB0cnVlXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgICAgaW5kZXggKz0gMTtcbiAgICAgIHJldHVybiAhKCd2aXNpYmlsaXR5JyBpbiBjb25maWcpIHx8IGNvbmZpZy52aXNpYmlsaXR5ID09PSB0cnVlO1xuICAgIH0pO1xufTtcblxuZXhwb3J0IGNvbnN0IGdldFRyYW5zaWVudFRhYnMgPSAoYXZhaWxhYmxlVGFicywgY3VycmVudFRhYklkLCB0YWJJdGVtcykgPT4ge1xuICByZXR1cm4gKFxuICAgIGF2YWlsYWJsZVRhYnM/Lm1hcCgoY2hpbGQsIGkpID0+IHtcbiAgICAgIGNvbnN0IGNvbmZpZyA9IGNoaWxkLmdldFBDb25uZWN0KCkuZ2V0Q29uZmlnUHJvcHMoKTtcbiAgICAgIGNvbnN0IHRhYkxhYmVsID1cbiAgICAgICAgY29uZmlnLmxhYmVsIHx8XG4gICAgICAgIGNvbmZpZy5pbmhlcml0ZWRQcm9wcz8uZmluZChvYmogPT4gb2JqLnByb3AgPT09ICdsYWJlbCcpPy52YWx1ZSB8fFxuICAgICAgICBQQ29yZS5nZXRMb2NhbGVVdGlscygpLmdldExvY2FsZVZhbHVlKCdObyBsYWJlbCBzcGVjaWZpZWQgaW4gY29uZmlnJywgJ0dlbmVyaWMnKTtcbiAgICAgIGNvbnN0IHRhYkNvbnRlbnQgPSAoKSA9PiB7XG4gICAgICAgIGlmIChpLnRvU3RyaW5nKCkgPT09IGN1cnJlbnRUYWJJZCkge1xuICAgICAgICAgIHJldHVybiB0YWJJdGVtcz8uW2kudG9TdHJpbmcoKV0/LmNvbnRlbnQgPyB0YWJJdGVtcz8uW2kudG9TdHJpbmcoKV0/LmNvbnRlbnQgOiBjaGlsZC5nZXRQQ29ubmVjdCgpLmdldENvbXBvbmVudCgpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiB0YWJJdGVtcz8uW2kudG9TdHJpbmcoKV0/LmNvbnRlbnQ7XG4gICAgICB9O1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgbmFtZTogdGFiTGFiZWwsXG4gICAgICAgIGlkOiBpLnRvU3RyaW5nKCksXG4gICAgICAgIGNvbnRlbnQ6IHRhYkNvbnRlbnQoKVxuICAgICAgfTtcbiAgICB9KSB8fCBbXVxuICApO1xufTtcblxuZXhwb3J0IGNvbnN0IHRhYkNsaWNrID0gKGlkLCBhdmFpbGFibGVUYWJzLCBjdXJyZW50VGFiSWQsIHRhYkl0ZW1zKSA9PiB7XG4gIGNvbnN0IGN1cnJlbnRQQ29ubiA9IGF2YWlsYWJsZVRhYnNbY3VycmVudFRhYklkXS5nZXRQQ29ubmVjdCgpO1xuICBjb25zdCB7IGRlZmVyTG9hZElkIH0gPSBjdXJyZW50UENvbm4uZ2V0Q29uZmlnUHJvcHMoKTtcbiAgUENvcmUuZ2V0RGVmZXJMb2FkTWFuYWdlcigpLmRlYWN0aXZhdGUoZGVmZXJMb2FkSWQsIGN1cnJlbnRQQ29ubi5nZXRDb250ZXh0TmFtZSgpKTtcblxuICBjb25zdCBpbmRleCA9IHBhcnNlSW50KGlkLCAxMCk7XG4gIGlmICh0YWJJdGVtc1tpbmRleF0/LmNvbnRlbnQgPT09IG51bGwpIHtcbiAgICB0YWJJdGVtc1tpbmRleF0uY29udGVudCA9IGF2YWlsYWJsZVRhYnNbaW5kZXhdLmdldFBDb25uZWN0KCkuZ2V0Q29tcG9uZW50KCk7XG4gIH1cblxuICBjb25zdCBuZXh0UENvbm4gPSBhdmFpbGFibGVUYWJzW2lkXS5nZXRQQ29ubmVjdCgpO1xuICBjb25zdCB7IGRlZmVyTG9hZElkOiBhY3RpdmVJZCB9ID0gbmV4dFBDb25uICYmIG5leHRQQ29ubi5nZXRDb25maWdQcm9wcygpO1xuICBQQ29yZS5nZXREZWZlckxvYWRNYW5hZ2VyKCkuYWN0aXZhdGUoYWN0aXZlSWQsIG5leHRQQ29ubj8uZ2V0Q29udGV4dE5hbWUoKSk7XG4gIFBDb3JlLmdldERlZmVyTG9hZE1hbmFnZXIoKS5yZWZyZXNoQ29tcG9uZW50KGFjdGl2ZUlkLCBuZXh0UENvbm4/LmdldENvbnRleHROYW1lKCkpO1xufTtcbiJdfQ==
@@ -0,0 +1,56 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ export class TemplateUtils {
4
+ /**
5
+ * Determine if the current view is the view of the case step/assignment.
6
+ * @param {Function} pConnect PConnect object for the component
7
+ */
8
+ getIsAssignmentView(pConnect) {
9
+ // Get caseInfo content from the store which contains the view info about the current assignment/step
10
+ // TODO To be replaced with pConnect.getCaseInfo().getCurrentAssignmentView when it's available
11
+ const assignmentViewClass = pConnect.getValue(PCore.getConstants().CASE_INFO.CASE_INFO_CLASSID);
12
+ const assignmentViewName = pConnect.getValue(PCore.getConstants().CASE_INFO.ASSIGNMENTACTION_ID);
13
+ const assignmentViewId = `${assignmentViewName}!${assignmentViewClass}`;
14
+ // Get the info about the current view from pConnect
15
+ const currentViewId = `${pConnect.getCurrentView()}!${pConnect.getCurrentClassID()}`;
16
+ return assignmentViewId === currentViewId;
17
+ }
18
+ /**
19
+ * A hook that gets the instructions content for a view.
20
+ * @param {Function} pConnect PConnect object for the component
21
+ * @param {string} [instructions="casestep"] 'casestep', 'none', or the html content of a Rule-UI-Paragraph rule (processed via core's paragraph annotation handler)
22
+ */
23
+ getInstructions(pConnect, instructions = 'casestep') {
24
+ const caseStepInstructions = PCore.getConstants().CASE_INFO.INSTRUCTIONS && pConnect.getValue(PCore.getConstants().CASE_INFO.INSTRUCTIONS);
25
+ // Determine if this view is the current assignment/step view
26
+ const isCurrentAssignmentView = this.getIsAssignmentView(pConnect);
27
+ // Case step instructions
28
+ if (instructions === 'casestep' && isCurrentAssignmentView && caseStepInstructions?.length) {
29
+ return caseStepInstructions;
30
+ }
31
+ // No instructions
32
+ if (instructions === 'none') {
33
+ return undefined;
34
+ }
35
+ // If the annotation wasn't processed correctly, don't return any instruction text
36
+ if (instructions?.startsWith('@PARAGRAPH')) {
37
+ return undefined;
38
+ }
39
+ // Custom instructions from the view
40
+ // The raw metadata for `instructions` will be something like '@PARAGRAPH .SomeParagraphRule' but
41
+ // it is evaluated by core logic to the content
42
+ if (instructions !== 'casestep' && instructions !== 'none') {
43
+ return instructions;
44
+ }
45
+ return undefined;
46
+ }
47
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TemplateUtils, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
48
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TemplateUtils, providedIn: 'root' }); }
49
+ }
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TemplateUtils, decorators: [{
51
+ type: Injectable,
52
+ args: [{
53
+ providedIn: 'root'
54
+ }]
55
+ }] });
56
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUtdXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2hlbHBlcnMvdGVtcGxhdGUtdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLM0MsTUFBTSxPQUFPLGFBQWE7SUFDeEI7OztPQUdHO0lBQ0gsbUJBQW1CLENBQUMsUUFBUTtRQUMxQixxR0FBcUc7UUFDckcsK0ZBQStGO1FBQy9GLE1BQU0sbUJBQW1CLEdBQUcsUUFBUSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUMsU0FBUyxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFDaEcsTUFBTSxrQkFBa0IsR0FBRyxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQyxTQUFTLENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUVqRyxNQUFNLGdCQUFnQixHQUFHLEdBQUcsa0JBQWtCLElBQUksbUJBQW1CLEVBQUUsQ0FBQztRQUV4RSxvREFBb0Q7UUFDcEQsTUFBTSxhQUFhLEdBQUcsR0FBRyxRQUFRLENBQUMsY0FBYyxFQUFFLElBQUksUUFBUSxDQUFDLGlCQUFpQixFQUFFLEVBQUUsQ0FBQztRQUVyRixPQUFPLGdCQUFnQixLQUFLLGFBQWEsQ0FBQztJQUM1QyxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGVBQWUsQ0FBQyxRQUFRLEVBQUUsWUFBWSxHQUFHLFVBQVU7UUFDakQsTUFBTSxvQkFBb0IsR0FBRyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUMsU0FBUyxDQUFDLFlBQVksSUFBSSxRQUFRLENBQUMsUUFBUSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFM0ksNkRBQTZEO1FBQzdELE1BQU0sdUJBQXVCLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBRW5FLHlCQUF5QjtRQUN6QixJQUFJLFlBQVksS0FBSyxVQUFVLElBQUksdUJBQXVCLElBQUksb0JBQW9CLEVBQUUsTUFBTSxFQUFFO1lBQzFGLE9BQU8sb0JBQW9CLENBQUM7U0FDN0I7UUFFRCxrQkFBa0I7UUFDbEIsSUFBSSxZQUFZLEtBQUssTUFBTSxFQUFFO1lBQzNCLE9BQU8sU0FBUyxDQUFDO1NBQ2xCO1FBRUQsa0ZBQWtGO1FBQ2xGLElBQUksWUFBWSxFQUFFLFVBQVUsQ0FBQyxZQUFZLENBQUMsRUFBRTtZQUMxQyxPQUFPLFNBQVMsQ0FBQztTQUNsQjtRQUVELG9DQUFvQztRQUNwQyxpR0FBaUc7UUFDakcsK0NBQStDO1FBQy9DLElBQUksWUFBWSxLQUFLLFVBQVUsSUFBSSxZQUFZLEtBQUssTUFBTSxFQUFFO1lBQzFELE9BQU8sWUFBWSxDQUFDO1NBQ3JCO1FBQ0QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQzsrR0FwRFUsYUFBYTttSEFBYixhQUFhLGNBRlosTUFBTTs7NEZBRVAsYUFBYTtrQkFIekIsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFRlbXBsYXRlVXRpbHMge1xuICAvKipcbiAgICogRGV0ZXJtaW5lIGlmIHRoZSBjdXJyZW50IHZpZXcgaXMgdGhlIHZpZXcgb2YgdGhlIGNhc2Ugc3RlcC9hc3NpZ25tZW50LlxuICAgKiBAcGFyYW0ge0Z1bmN0aW9ufSBwQ29ubmVjdCBQQ29ubmVjdCBvYmplY3QgZm9yIHRoZSBjb21wb25lbnRcbiAgICovXG4gIGdldElzQXNzaWdubWVudFZpZXcocENvbm5lY3QpIHtcbiAgICAvLyBHZXQgY2FzZUluZm8gY29udGVudCBmcm9tIHRoZSBzdG9yZSB3aGljaCBjb250YWlucyB0aGUgdmlldyBpbmZvIGFib3V0IHRoZSBjdXJyZW50IGFzc2lnbm1lbnQvc3RlcFxuICAgIC8vIFRPRE8gVG8gYmUgcmVwbGFjZWQgd2l0aCBwQ29ubmVjdC5nZXRDYXNlSW5mbygpLmdldEN1cnJlbnRBc3NpZ25tZW50VmlldyB3aGVuIGl0J3MgYXZhaWxhYmxlXG4gICAgY29uc3QgYXNzaWdubWVudFZpZXdDbGFzcyA9IHBDb25uZWN0LmdldFZhbHVlKFBDb3JlLmdldENvbnN0YW50cygpLkNBU0VfSU5GTy5DQVNFX0lORk9fQ0xBU1NJRCk7XG4gICAgY29uc3QgYXNzaWdubWVudFZpZXdOYW1lID0gcENvbm5lY3QuZ2V0VmFsdWUoUENvcmUuZ2V0Q29uc3RhbnRzKCkuQ0FTRV9JTkZPLkFTU0lHTk1FTlRBQ1RJT05fSUQpO1xuXG4gICAgY29uc3QgYXNzaWdubWVudFZpZXdJZCA9IGAke2Fzc2lnbm1lbnRWaWV3TmFtZX0hJHthc3NpZ25tZW50Vmlld0NsYXNzfWA7XG5cbiAgICAvLyBHZXQgdGhlIGluZm8gYWJvdXQgdGhlIGN1cnJlbnQgdmlldyBmcm9tIHBDb25uZWN0XG4gICAgY29uc3QgY3VycmVudFZpZXdJZCA9IGAke3BDb25uZWN0LmdldEN1cnJlbnRWaWV3KCl9ISR7cENvbm5lY3QuZ2V0Q3VycmVudENsYXNzSUQoKX1gO1xuXG4gICAgcmV0dXJuIGFzc2lnbm1lbnRWaWV3SWQgPT09IGN1cnJlbnRWaWV3SWQ7XG4gIH1cblxuICAvKipcbiAgICogQSBob29rIHRoYXQgZ2V0cyB0aGUgaW5zdHJ1Y3Rpb25zIGNvbnRlbnQgZm9yIGEgdmlldy5cbiAgICogQHBhcmFtIHtGdW5jdGlvbn0gcENvbm5lY3QgUENvbm5lY3Qgb2JqZWN0IGZvciB0aGUgY29tcG9uZW50XG4gICAqIEBwYXJhbSB7c3RyaW5nfSBbaW5zdHJ1Y3Rpb25zPVwiY2FzZXN0ZXBcIl0gJ2Nhc2VzdGVwJywgJ25vbmUnLCBvciB0aGUgaHRtbCBjb250ZW50IG9mIGEgUnVsZS1VSS1QYXJhZ3JhcGggcnVsZSAocHJvY2Vzc2VkIHZpYSBjb3JlJ3MgcGFyYWdyYXBoIGFubm90YXRpb24gaGFuZGxlcilcbiAgICovXG4gIGdldEluc3RydWN0aW9ucyhwQ29ubmVjdCwgaW5zdHJ1Y3Rpb25zID0gJ2Nhc2VzdGVwJykge1xuICAgIGNvbnN0IGNhc2VTdGVwSW5zdHJ1Y3Rpb25zID0gUENvcmUuZ2V0Q29uc3RhbnRzKCkuQ0FTRV9JTkZPLklOU1RSVUNUSU9OUyAmJiBwQ29ubmVjdC5nZXRWYWx1ZShQQ29yZS5nZXRDb25zdGFudHMoKS5DQVNFX0lORk8uSU5TVFJVQ1RJT05TKTtcblxuICAgIC8vIERldGVybWluZSBpZiB0aGlzIHZpZXcgaXMgdGhlIGN1cnJlbnQgYXNzaWdubWVudC9zdGVwIHZpZXdcbiAgICBjb25zdCBpc0N1cnJlbnRBc3NpZ25tZW50VmlldyA9IHRoaXMuZ2V0SXNBc3NpZ25tZW50VmlldyhwQ29ubmVjdCk7XG5cbiAgICAvLyBDYXNlIHN0ZXAgaW5zdHJ1Y3Rpb25zXG4gICAgaWYgKGluc3RydWN0aW9ucyA9PT0gJ2Nhc2VzdGVwJyAmJiBpc0N1cnJlbnRBc3NpZ25tZW50VmlldyAmJiBjYXNlU3RlcEluc3RydWN0aW9ucz8ubGVuZ3RoKSB7XG4gICAgICByZXR1cm4gY2FzZVN0ZXBJbnN0cnVjdGlvbnM7XG4gICAgfVxuXG4gICAgLy8gTm8gaW5zdHJ1Y3Rpb25zXG4gICAgaWYgKGluc3RydWN0aW9ucyA9PT0gJ25vbmUnKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIC8vIElmIHRoZSBhbm5vdGF0aW9uIHdhc24ndCBwcm9jZXNzZWQgY29ycmVjdGx5LCBkb24ndCByZXR1cm4gYW55IGluc3RydWN0aW9uIHRleHRcbiAgICBpZiAoaW5zdHJ1Y3Rpb25zPy5zdGFydHNXaXRoKCdAUEFSQUdSQVBIJykpIHtcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XG4gICAgfVxuXG4gICAgLy8gQ3VzdG9tIGluc3RydWN0aW9ucyBmcm9tIHRoZSB2aWV3XG4gICAgLy8gVGhlIHJhdyBtZXRhZGF0YSBmb3IgYGluc3RydWN0aW9uc2Agd2lsbCBiZSBzb21ldGhpbmcgbGlrZSAnQFBBUkFHUkFQSCAuU29tZVBhcmFncmFwaFJ1bGUnIGJ1dFxuICAgIC8vIGl0IGlzIGV2YWx1YXRlZCBieSBjb3JlIGxvZ2ljIHRvIHRoZSBjb250ZW50XG4gICAgaWYgKGluc3RydWN0aW9ucyAhPT0gJ2Nhc2VzdGVwJyAmJiBpbnN0cnVjdGlvbnMgIT09ICdub25lJykge1xuICAgICAgcmV0dXJuIGluc3RydWN0aW9ucztcbiAgICB9XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxufVxuIl19