@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,28 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import { Utils } from '../../../_helpers/utils';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../../_helpers/utils";
5
+ export class MaterialUtilityComponent {
6
+ constructor(utils) {
7
+ this.utils = utils;
8
+ }
9
+ ngOnInit() {
10
+ this.headerSvgIcon$ = this.utils.getImageSrc(this.headerIcon$, this.headerIconUrl$);
11
+ this.settingsSvgIcon$ = this.utils.getImageSrc('plus', this.headerIconUrl$);
12
+ }
13
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaterialUtilityComponent, deps: [{ token: i1.Utils }], target: i0.ɵɵFactoryTarget.Component }); }
14
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MaterialUtilityComponent, isStandalone: true, selector: "app-material-utility", inputs: { headerText$: "headerText$", headerIcon$: "headerIcon$", headerIconUrl$: "headerIconUrl$", noItemsMessage$: "noItemsMessage$" }, providers: [Utils], ngImport: i0, template: "<div style=\"text-align: left\">\n <div class=\"psdk-utility\">\n <div class=\"header\">\n <div class=\"header-icon\">\n <img class=\"psdk-utility-svg-icon\" src=\"{{ headerSvgIcon$ }}\" />\n </div>\n <div class=\"header-text\">{{ headerText$ }}</div>\n <div style=\"flex-grow: 1\"></div>\n <div class=\"header-icon\">\n <img class=\"psdk-settings-svg-icon\" src=\"{{ settingsSvgIcon$ }}\" />\n </div>\n </div>\n <div class=\"psdk-case-view-divider\"></div>\n <br />\n <div class=\"message\">{{ noItemsMessage$ }}</div>\n </div>\n</div>\n", styles: [".psdk-icon{padding:0rem .125rem;min-width:unset}.psdk-case-view-divider{border-bottom:.0625rem solid lightgrey}.psdk-utility .header-text{font-size:1rem;font-weight:700;padding-bottom:.3125rem;text-align:left;display:inline-block}.psdk-utility .header-icon{display:inline-block}.psdk-utility{width:100%;height:6.25rem;padding:.625rem 0rem;text-align:left;background-color:#fff;border-radius:.6125rem;margin:.3125rem 0rem}.psdk-utility .header{text-align:left;display:flex;align-items:center}.psdk-utility-svg-icon{width:1.4rem;display:inline-block}.psdk-settings-svg-icon{width:1.4rem;display:inline-block;filter:invert(23%) sepia(23%) saturate(6785%) hue-rotate(250deg) brightness(93%) contrast(88%)}.psdk-utility .message{text-align:center}\n"] }); }
15
+ }
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaterialUtilityComponent, decorators: [{
17
+ type: Component,
18
+ args: [{ selector: 'app-material-utility', providers: [Utils], standalone: true, template: "<div style=\"text-align: left\">\n <div class=\"psdk-utility\">\n <div class=\"header\">\n <div class=\"header-icon\">\n <img class=\"psdk-utility-svg-icon\" src=\"{{ headerSvgIcon$ }}\" />\n </div>\n <div class=\"header-text\">{{ headerText$ }}</div>\n <div style=\"flex-grow: 1\"></div>\n <div class=\"header-icon\">\n <img class=\"psdk-settings-svg-icon\" src=\"{{ settingsSvgIcon$ }}\" />\n </div>\n </div>\n <div class=\"psdk-case-view-divider\"></div>\n <br />\n <div class=\"message\">{{ noItemsMessage$ }}</div>\n </div>\n</div>\n", styles: [".psdk-icon{padding:0rem .125rem;min-width:unset}.psdk-case-view-divider{border-bottom:.0625rem solid lightgrey}.psdk-utility .header-text{font-size:1rem;font-weight:700;padding-bottom:.3125rem;text-align:left;display:inline-block}.psdk-utility .header-icon{display:inline-block}.psdk-utility{width:100%;height:6.25rem;padding:.625rem 0rem;text-align:left;background-color:#fff;border-radius:.6125rem;margin:.3125rem 0rem}.psdk-utility .header{text-align:left;display:flex;align-items:center}.psdk-utility-svg-icon{width:1.4rem;display:inline-block}.psdk-settings-svg-icon{width:1.4rem;display:inline-block;filter:invert(23%) sepia(23%) saturate(6785%) hue-rotate(250deg) brightness(93%) contrast(88%)}.psdk-utility .message{text-align:center}\n"] }]
19
+ }], ctorParameters: function () { return [{ type: i1.Utils }]; }, propDecorators: { headerText$: [{
20
+ type: Input
21
+ }], headerIcon$: [{
22
+ type: Input
23
+ }], headerIconUrl$: [{
24
+ type: Input
25
+ }], noItemsMessage$: [{
26
+ type: Input
27
+ }] } });
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwtdXRpbGl0eS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL21hdGVyaWFsLXV0aWxpdHkvbWF0ZXJpYWwtdXRpbGl0eS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL21hdGVyaWFsLXV0aWxpdHkvbWF0ZXJpYWwtdXRpbGl0eS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0seUJBQXlCLENBQUM7OztBQVNoRCxNQUFNLE9BQU8sd0JBQXdCO0lBU25DLFlBQW9CLEtBQVk7UUFBWixVQUFLLEdBQUwsS0FBSyxDQUFPO0lBQUcsQ0FBQztJQUVwQyxRQUFRO1FBQ04sSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsV0FBVyxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztRQUNwRixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUM5RSxDQUFDOytHQWRVLHdCQUF3QjttR0FBeEIsd0JBQXdCLDZNQUh4QixDQUFDLEtBQUssQ0FBQywwQkNQcEIseWxCQWlCQTs7NEZEUGEsd0JBQXdCO2tCQVBwQyxTQUFTOytCQUNFLHNCQUFzQixhQUdyQixDQUFDLEtBQUssQ0FBQyxjQUNOLElBQUk7NEZBR1AsV0FBVztzQkFBbkIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csZUFBZTtzQkFBdkIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVXRpbHMgfSBmcm9tICcuLi8uLi8uLi9faGVscGVycy91dGlscyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1tYXRlcmlhbC11dGlsaXR5JyxcbiAgdGVtcGxhdGVVcmw6ICcuL21hdGVyaWFsLXV0aWxpdHkuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9tYXRlcmlhbC11dGlsaXR5LmNvbXBvbmVudC5zY3NzJ10sXG4gIHByb3ZpZGVyczogW1V0aWxzXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBNYXRlcmlhbFV0aWxpdHlDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSBoZWFkZXJUZXh0JDogc3RyaW5nO1xuICBASW5wdXQoKSBoZWFkZXJJY29uJDogc3RyaW5nO1xuICBASW5wdXQoKSBoZWFkZXJJY29uVXJsJDogc3RyaW5nO1xuICBASW5wdXQoKSBub0l0ZW1zTWVzc2FnZSQ6IHN0cmluZztcblxuICBoZWFkZXJTdmdJY29uJDogc3RyaW5nO1xuICBzZXR0aW5nc1N2Z0ljb24kOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSB1dGlsczogVXRpbHMpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5oZWFkZXJTdmdJY29uJCA9IHRoaXMudXRpbHMuZ2V0SW1hZ2VTcmModGhpcy5oZWFkZXJJY29uJCwgdGhpcy5oZWFkZXJJY29uVXJsJCk7XG4gICAgdGhpcy5zZXR0aW5nc1N2Z0ljb24kID0gdGhpcy51dGlscy5nZXRJbWFnZVNyYygncGx1cycsIHRoaXMuaGVhZGVySWNvblVybCQpO1xuICB9XG59XG4iLCI8ZGl2IHN0eWxlPVwidGV4dC1hbGlnbjogbGVmdFwiPlxuICA8ZGl2IGNsYXNzPVwicHNkay11dGlsaXR5XCI+XG4gICAgPGRpdiBjbGFzcz1cImhlYWRlclwiPlxuICAgICAgPGRpdiBjbGFzcz1cImhlYWRlci1pY29uXCI+XG4gICAgICAgIDxpbWcgY2xhc3M9XCJwc2RrLXV0aWxpdHktc3ZnLWljb25cIiBzcmM9XCJ7eyBoZWFkZXJTdmdJY29uJCB9fVwiIC8+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJoZWFkZXItdGV4dFwiPnt7IGhlYWRlclRleHQkIH19PC9kaXY+XG4gICAgICA8ZGl2IHN0eWxlPVwiZmxleC1ncm93OiAxXCI+PC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiaGVhZGVyLWljb25cIj5cbiAgICAgICAgPGltZyBjbGFzcz1cInBzZGstc2V0dGluZ3Mtc3ZnLWljb25cIiBzcmM9XCJ7eyBzZXR0aW5nc1N2Z0ljb24kIH19XCIgLz5cbiAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJwc2RrLWNhc2Utdmlldy1kaXZpZGVyXCI+PC9kaXY+XG4gICAgPGJyIC8+XG4gICAgPGRpdiBjbGFzcz1cIm1lc3NhZ2VcIj57eyBub0l0ZW1zTWVzc2FnZSQgfX08L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -0,0 +1,42 @@
1
+ import { Component, Input, Output, EventEmitter } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { MatBadgeModule } from '@angular/material/badge';
4
+ import { MatButtonToggleModule } from '@angular/material/button-toggle';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common";
7
+ import * as i2 from "@angular/material/button-toggle";
8
+ import * as i3 from "@angular/material/badge";
9
+ export class MaterialVerticalTabsComponent {
10
+ constructor() {
11
+ this.tabClick = new EventEmitter();
12
+ }
13
+ ngOnInit() {
14
+ // tabConfig$ [ {name: , id: , count: }]
15
+ if (this.tabConfig$) {
16
+ // seletedTabId is the first tab, unless another is selected
17
+ this.selectedTabId$ = this.tabConfig$[0]?.id;
18
+ // run through and see anything is selected
19
+ for (let i = 0; i < this.tabConfig$.length; ++i) {
20
+ const aTab = this.tabConfig$[i];
21
+ if (aTab?.selected) {
22
+ this.selectedTabId$ = aTab.id;
23
+ break;
24
+ }
25
+ }
26
+ }
27
+ }
28
+ onChange(tab) {
29
+ this.tabClick.emit(tab);
30
+ }
31
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaterialVerticalTabsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
32
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: MaterialVerticalTabsComponent, isStandalone: true, selector: "app-material-vertical-tabs", inputs: { tabConfig$: "tabConfig$" }, outputs: { tabClick: "tabClick" }, ngImport: i0, template: "<div>\n <mat-button-toggle-group vertical (change)=\"onChange($event.value)\" [value]=\"selectedTabId$\" aria-label=\"Tabs\">\n <mat-button-toggle *ngFor=\"let tab of tabConfig$\" [value]=\"tab.id\" style=\"text-align: left\">\n <div style=\"display: flex\">\n <div style=\"flex-grow: 10\">{{ tab.name }}</div>\n <div style=\"flex-grow: 1\">\n <span *ngIf=\"tab?.count\" [matBadge]=\"tab.count\" matBadgeOverlap=\"false\" matBadgePosition=\"after\" class=\"psdk-vtab-badge\">&nbsp;</span>\n </div>\n </div>\n </mat-button-toggle>\n </mat-button-toggle-group>\n</div>\n", styles: ["mat-button-toggle-group{width:100%;border-width:.0625rem 0rem}mat-button-toggle-group ::ng-deep .mat-button-toggle-appearance-standard{background-color:transparent}mat-button-toggle-group ::ng-deep .mat-button-toggle.mat-button-toggle-checked.mat-button-toggle-appearance-standard{background-color:transparent;border-right:.1875rem solid #673ab7}mat-button-toggle-group ::ng-deep .mat-button-toggle.mat-focus-indicator.mat-button-toggle-appearance-standard{background-color:transparent;border-right:.1875rem solid transparent}mat-button-toggle-group ::ng-deep .mat-button-toggle-appearance-standard .mat-button-toggle-label-content{text-align:left}.psdk-vtab-badge .mat-badge-content{top:0rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonToggleModule }, { kind: "directive", type: i2.MatButtonToggleGroup, selector: "mat-button-toggle-group", inputs: ["appearance", "name", "vertical", "value", "multiple", "disabled"], outputs: ["valueChange", "change"], exportAs: ["matButtonToggleGroup"] }, { kind: "component", type: i2.MatButtonToggle, selector: "mat-button-toggle", inputs: ["disableRipple", "aria-label", "aria-labelledby", "id", "name", "value", "tabIndex", "appearance", "checked", "disabled"], outputs: ["change"], exportAs: ["matButtonToggle"] }, { kind: "ngmodule", type: MatBadgeModule }, { kind: "directive", type: i3.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgeColor", "matBadgeOverlap", "matBadgePosition", "matBadge", "matBadgeDescription", "matBadgeSize", "matBadgeHidden"] }] }); }
33
+ }
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: MaterialVerticalTabsComponent, decorators: [{
35
+ type: Component,
36
+ args: [{ selector: 'app-material-vertical-tabs', standalone: true, imports: [CommonModule, MatButtonToggleModule, MatBadgeModule], template: "<div>\n <mat-button-toggle-group vertical (change)=\"onChange($event.value)\" [value]=\"selectedTabId$\" aria-label=\"Tabs\">\n <mat-button-toggle *ngFor=\"let tab of tabConfig$\" [value]=\"tab.id\" style=\"text-align: left\">\n <div style=\"display: flex\">\n <div style=\"flex-grow: 10\">{{ tab.name }}</div>\n <div style=\"flex-grow: 1\">\n <span *ngIf=\"tab?.count\" [matBadge]=\"tab.count\" matBadgeOverlap=\"false\" matBadgePosition=\"after\" class=\"psdk-vtab-badge\">&nbsp;</span>\n </div>\n </div>\n </mat-button-toggle>\n </mat-button-toggle-group>\n</div>\n", styles: ["mat-button-toggle-group{width:100%;border-width:.0625rem 0rem}mat-button-toggle-group ::ng-deep .mat-button-toggle-appearance-standard{background-color:transparent}mat-button-toggle-group ::ng-deep .mat-button-toggle.mat-button-toggle-checked.mat-button-toggle-appearance-standard{background-color:transparent;border-right:.1875rem solid #673ab7}mat-button-toggle-group ::ng-deep .mat-button-toggle.mat-focus-indicator.mat-button-toggle-appearance-standard{background-color:transparent;border-right:.1875rem solid transparent}mat-button-toggle-group ::ng-deep .mat-button-toggle-appearance-standard .mat-button-toggle-label-content{text-align:left}.psdk-vtab-badge .mat-badge-content{top:0rem}\n"] }]
37
+ }], propDecorators: { tabConfig$: [{
38
+ type: Input
39
+ }], tabClick: [{
40
+ type: Output
41
+ }] } });
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0ZXJpYWwtdmVydGljYWwtdGFicy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL21hdGVyaWFsLXZlcnRpY2FsLXRhYnMvbWF0ZXJpYWwtdmVydGljYWwtdGFicy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL21hdGVyaWFsLXZlcnRpY2FsLXRhYnMvbWF0ZXJpYWwtdmVydGljYWwtdGFicy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDekQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0saUNBQWlDLENBQUM7Ozs7O0FBU3hFLE1BQU0sT0FBTyw2QkFBNkI7SUFQMUM7UUFTWSxhQUFRLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7S0F5QjVEO0lBckJDLFFBQVE7UUFDTix5Q0FBeUM7UUFFekMsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ25CLDREQUE0RDtZQUM1RCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBRTdDLDJDQUEyQztZQUMzQyxLQUFLLElBQUksQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLEVBQUU7Z0JBQy9DLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLElBQUksSUFBSSxFQUFFLFFBQVEsRUFBRTtvQkFDbEIsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDO29CQUM5QixNQUFNO2lCQUNQO2FBQ0Y7U0FDRjtJQUNILENBQUM7SUFFRCxRQUFRLENBQUMsR0FBUTtRQUNmLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQzFCLENBQUM7K0dBMUJVLDZCQUE2QjttR0FBN0IsNkJBQTZCLCtKQ1oxQywwbUJBWUEsZ3ZCREZZLFlBQVksK1BBQUUscUJBQXFCLHNoQkFBRSxjQUFjOzs0RkFFbEQsNkJBQTZCO2tCQVB6QyxTQUFTOytCQUNFLDRCQUE0QixjQUcxQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUscUJBQXFCLEVBQUUsY0FBYyxDQUFDOzhCQUdyRCxVQUFVO3NCQUFsQixLQUFLO2dCQUNJLFFBQVE7c0JBQWpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTWF0QmFkZ2VNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9iYWRnZSc7XG5pbXBvcnQgeyBNYXRCdXR0b25Ub2dnbGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9idXR0b24tdG9nZ2xlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLW1hdGVyaWFsLXZlcnRpY2FsLXRhYnMnLFxuICB0ZW1wbGF0ZVVybDogJy4vbWF0ZXJpYWwtdmVydGljYWwtdGFicy5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL21hdGVyaWFsLXZlcnRpY2FsLXRhYnMuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgTWF0QnV0dG9uVG9nZ2xlTW9kdWxlLCBNYXRCYWRnZU1vZHVsZV1cbn0pXG5leHBvcnQgY2xhc3MgTWF0ZXJpYWxWZXJ0aWNhbFRhYnNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICBASW5wdXQoKSB0YWJDb25maWckOiBhbnlbXTtcbiAgQE91dHB1dCgpIHRhYkNsaWNrOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICBzZWxlY3RlZFRhYklkJDogYW55O1xuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIC8vIHRhYkNvbmZpZyQgIFsge25hbWU6ICwgaWQ6ICwgY291bnQ6IH1dXG5cbiAgICBpZiAodGhpcy50YWJDb25maWckKSB7XG4gICAgICAvLyBzZWxldGVkVGFiSWQgaXMgdGhlIGZpcnN0IHRhYiwgdW5sZXNzIGFub3RoZXIgaXMgc2VsZWN0ZWRcbiAgICAgIHRoaXMuc2VsZWN0ZWRUYWJJZCQgPSB0aGlzLnRhYkNvbmZpZyRbMF0/LmlkO1xuXG4gICAgICAvLyBydW4gdGhyb3VnaCBhbmQgc2VlIGFueXRoaW5nIGlzIHNlbGVjdGVkXG4gICAgICBmb3IgKGxldCBpID0gMDsgaSA8IHRoaXMudGFiQ29uZmlnJC5sZW5ndGg7ICsraSkge1xuICAgICAgICBjb25zdCBhVGFiID0gdGhpcy50YWJDb25maWckW2ldO1xuICAgICAgICBpZiAoYVRhYj8uc2VsZWN0ZWQpIHtcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkVGFiSWQkID0gYVRhYi5pZDtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG9uQ2hhbmdlKHRhYjogYW55KSB7XG4gICAgdGhpcy50YWJDbGljay5lbWl0KHRhYik7XG4gIH1cbn1cbiIsIjxkaXY+XG4gIDxtYXQtYnV0dG9uLXRvZ2dsZS1ncm91cCB2ZXJ0aWNhbCAoY2hhbmdlKT1cIm9uQ2hhbmdlKCRldmVudC52YWx1ZSlcIiBbdmFsdWVdPVwic2VsZWN0ZWRUYWJJZCRcIiBhcmlhLWxhYmVsPVwiVGFic1wiPlxuICAgIDxtYXQtYnV0dG9uLXRvZ2dsZSAqbmdGb3I9XCJsZXQgdGFiIG9mIHRhYkNvbmZpZyRcIiBbdmFsdWVdPVwidGFiLmlkXCIgc3R5bGU9XCJ0ZXh0LWFsaWduOiBsZWZ0XCI+XG4gICAgICA8ZGl2IHN0eWxlPVwiZGlzcGxheTogZmxleFwiPlxuICAgICAgICA8ZGl2IHN0eWxlPVwiZmxleC1ncm93OiAxMFwiPnt7IHRhYi5uYW1lIH19PC9kaXY+XG4gICAgICAgIDxkaXYgc3R5bGU9XCJmbGV4LWdyb3c6IDFcIj5cbiAgICAgICAgICA8c3BhbiAqbmdJZj1cInRhYj8uY291bnRcIiBbbWF0QmFkZ2VdPVwidGFiLmNvdW50XCIgbWF0QmFkZ2VPdmVybGFwPVwiZmFsc2VcIiBtYXRCYWRnZVBvc2l0aW9uPVwiYWZ0ZXJcIiBjbGFzcz1cInBzZGstdnRhYi1iYWRnZVwiPiZuYnNwOzwvc3Bhbj5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICA8L21hdC1idXR0b24tdG9nZ2xlPlxuICA8L21hdC1idXR0b24tdG9nZ2xlLWdyb3VwPlxuPC9kaXY+XG4iXX0=
@@ -0,0 +1,136 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { MatButtonModule } from '@angular/material/button';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../../../_helpers/utils";
6
+ import * as i2 from "@angular/common";
7
+ import * as i3 from "@angular/material/button";
8
+ export class OperatorComponent {
9
+ constructor(el, renderer, cdRef, utils) {
10
+ this.el = el;
11
+ this.renderer = renderer;
12
+ this.cdRef = cdRef;
13
+ this.utils = utils;
14
+ this.fields$ = [];
15
+ }
16
+ ngOnInit() {
17
+ this.renderer.listen('window', 'click', el => {
18
+ const clickedInside = this.el.nativeElement.contains(el.target);
19
+ if (!clickedInside) {
20
+ this.bShowPopover$ = false;
21
+ }
22
+ });
23
+ this.bShowPopover$ = false;
24
+ }
25
+ ngOnChanges(changes) {
26
+ const { pConn$ } = changes;
27
+ if (pConn$.previousValue !== pConn$.currentValue) {
28
+ this.updateSelf();
29
+ }
30
+ }
31
+ ngOnDestroy() {
32
+ this.renderer.destroy();
33
+ }
34
+ updateSelf() {
35
+ const configProps$ = this.pConn$.getConfigProps();
36
+ if (configProps$?.label?.toLowerCase() == 'create operator') {
37
+ this.name$ = configProps$.createOperator.userName;
38
+ this.id$ = configProps$.createOperator.userId;
39
+ this.label$ = configProps$.createLabel;
40
+ }
41
+ else if (configProps$?.label?.toLowerCase() == 'update operator') {
42
+ this.name$ = configProps$.updateOperator.userName;
43
+ this.id$ = configProps$.updateOperator.userId;
44
+ this.label$ = configProps$.updateLabel;
45
+ }
46
+ else if (configProps$?.label?.toLowerCase() == 'resolve operator') {
47
+ this.name$ = configProps$.resolveOperator.userName;
48
+ this.id$ = configProps$.resolveOperator.userId;
49
+ this.label$ = configProps$.resolveLabel;
50
+ }
51
+ else {
52
+ this.name$ = configProps$?.value.userName;
53
+ this.id$ = configProps$?.value.userId;
54
+ this.label$ = configProps$.label;
55
+ }
56
+ this.date$ = this.utils.generateDate(configProps$?.updateDateTime, 'DateTime-Since');
57
+ }
58
+ showOperator() {
59
+ const operatorPreviewPromise = PCore.getUserApi().getOperatorDetails(this.id$);
60
+ const localizedVal = PCore.getLocaleUtils().getLocaleValue;
61
+ const localeCategory = 'Operator';
62
+ const fillerString = '---';
63
+ operatorPreviewPromise.then((res) => {
64
+ if (res.data && res.data.pyOperatorInfo && res.data.pyOperatorInfo.pyUserName) {
65
+ this.fields$ = [
66
+ {
67
+ id: 'pyPosition',
68
+ name: localizedVal('Position', localeCategory),
69
+ value: res.data.pyOperatorInfo.pyPosition != '' ? res.data.pyOperatorInfo.pyPosition : fillerString
70
+ },
71
+ {
72
+ id: 'pyOrganization',
73
+ name: localizedVal('Organization', localeCategory),
74
+ value: res.data.pyOperatorInfo.pyOrganization != '' ? res.data.pyOperatorInfo.pyOrganization : fillerString
75
+ },
76
+ {
77
+ id: 'ReportToUserName',
78
+ name: localizedVal('Reports to', localeCategory),
79
+ value: res.data.pyOperatorInfo.pyReportToUserName != '' ? res.data.pyOperatorInfo.pyReportToUserName : fillerString
80
+ },
81
+ {
82
+ id: 'pyTelephone',
83
+ name: localizedVal('Telephone', localeCategory),
84
+ value: res.data.pyOperatorInfo.pyTelephone != '' ? res.data.pyOperatorInfo.pyTelephone : fillerString
85
+ },
86
+ {
87
+ id: 'pyEmailAddress',
88
+ name: localizedVal('Email address', localeCategory),
89
+ value: res.data.pyOperatorInfo.pyEmailAddress != '' ? res.data.pyOperatorInfo.pyEmailAddress : fillerString
90
+ }
91
+ ];
92
+ this.bShowPopover$ = true;
93
+ this.cdRef.detectChanges();
94
+ }
95
+ else {
96
+ console.log(`Operator: PCore.getUserApi().getOperatorDetails(${this.id$}); returned empty res.data.pyOperatorInfo.pyUserName - adding default`);
97
+ this.fields$ = [
98
+ {
99
+ id: 'pyPosition',
100
+ name: localizedVal('Position', localeCategory),
101
+ value: fillerString
102
+ },
103
+ {
104
+ id: 'pyOrganization',
105
+ name: localizedVal('Organization', localeCategory),
106
+ value: fillerString
107
+ },
108
+ {
109
+ id: 'ReportToUserName',
110
+ name: localizedVal('Reports to', localeCategory),
111
+ value: fillerString
112
+ },
113
+ {
114
+ id: 'pyTelephone',
115
+ name: localizedVal('Telephone', localeCategory),
116
+ value: fillerString
117
+ },
118
+ {
119
+ id: 'pyEmailAddress',
120
+ name: localizedVal('Email address', localeCategory),
121
+ value: fillerString
122
+ }
123
+ ];
124
+ }
125
+ });
126
+ }
127
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: OperatorComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i1.Utils }], target: i0.ɵɵFactoryTarget.Component }); }
128
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: OperatorComponent, isStandalone: true, selector: "app-operator", inputs: { pConn$: "pConn$" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"psdk-operator psdk-double\">\n <div class=\"psdk-label\">\n {{ label$ }}\n </div>\n <div class=\"psdk-double\">\n <button mat-button color=\"primary\" style=\"text-decoration: underline\" (click)=\"showOperator()\">{{ name$ }}</button>\n </div>\n <div>{{ date$ }}</div>\n</div>\n\n<div>\n <div *ngIf=\"bShowPopover$\" class=\"psdk-operator-popover\">\n <dl>\n <div *ngFor=\"let field of fields$; let i = index\">\n <dt class=\"psdk-operator-name\">{{ field.name }}</dt>\n <dd class=\"psdk-operator-value\">{{ field.value }}</dd>\n </div>\n </dl>\n </div>\n</div>\n", styles: [".psdk-operator{display:flex;flex-direction:row;font-size:.8rem;color:gray;align-items:center}.psdk-operator-popover{display:table;margin:auto;min-width:100px;background-color:#fff;border:1px solid black;border-radius:10px;padding:20px;box-shadow:0 0 10px 3px #777;position:absolute;z-index:99}.psdk-operator-name{color:gray}.psdk-operator-value{padding-left:5px;color:#262626;margin:0}.psdk-single{flex:1}.psdk-double{column-gap:1rem;text-align:center}.psdk-top-pad{padding-top:10px}dl{display:grid;grid-template-columns:auto 1fr;grid-column-gap:1rem;grid-row-gap:.5rem}dl:before,dl:after{box-sizing:border-box;margin:0;padding:0}dt{max-width:20ch;grid-column-start:1}dd{max-width:75ch;grid-column-start:2}.mat-mdc-button.mat-primary,.mat-mdc-icon-button.mat-primary,.mat-mdc-outlined-button.mat-primary{padding:0;line-height:unset}.psdk-label{word-break:break-word;grid-column-start:1;max-width:max-content;color:#000c}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i3.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }] }); }
129
+ }
130
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: OperatorComponent, decorators: [{
131
+ type: Component,
132
+ args: [{ selector: 'app-operator', standalone: true, imports: [CommonModule, MatButtonModule], template: "<div class=\"psdk-operator psdk-double\">\n <div class=\"psdk-label\">\n {{ label$ }}\n </div>\n <div class=\"psdk-double\">\n <button mat-button color=\"primary\" style=\"text-decoration: underline\" (click)=\"showOperator()\">{{ name$ }}</button>\n </div>\n <div>{{ date$ }}</div>\n</div>\n\n<div>\n <div *ngIf=\"bShowPopover$\" class=\"psdk-operator-popover\">\n <dl>\n <div *ngFor=\"let field of fields$; let i = index\">\n <dt class=\"psdk-operator-name\">{{ field.name }}</dt>\n <dd class=\"psdk-operator-value\">{{ field.value }}</dd>\n </div>\n </dl>\n </div>\n</div>\n", styles: [".psdk-operator{display:flex;flex-direction:row;font-size:.8rem;color:gray;align-items:center}.psdk-operator-popover{display:table;margin:auto;min-width:100px;background-color:#fff;border:1px solid black;border-radius:10px;padding:20px;box-shadow:0 0 10px 3px #777;position:absolute;z-index:99}.psdk-operator-name{color:gray}.psdk-operator-value{padding-left:5px;color:#262626;margin:0}.psdk-single{flex:1}.psdk-double{column-gap:1rem;text-align:center}.psdk-top-pad{padding-top:10px}dl{display:grid;grid-template-columns:auto 1fr;grid-column-gap:1rem;grid-row-gap:.5rem}dl:before,dl:after{box-sizing:border-box;margin:0;padding:0}dt{max-width:20ch;grid-column-start:1}dd{max-width:75ch;grid-column-start:2}.mat-mdc-button.mat-primary,.mat-mdc-icon-button.mat-primary,.mat-mdc-outlined-button.mat-primary{padding:0;line-height:unset}.psdk-label{word-break:break-word;grid-column-start:1;max-width:max-content;color:#000c}\n"] }]
133
+ }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i1.Utils }]; }, propDecorators: { pConn$: [{
134
+ type: Input
135
+ }] } });
136
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3BlcmF0b3IuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1zZGstY29tcG9uZW50cy9zcmMvbGliL19jb21wb25lbnRzL2Rlc2lnblN5c3RlbUV4dGVuc2lvbi9vcGVyYXRvci9vcGVyYXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL29wZXJhdG9yL29wZXJhdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXNCLEtBQUssRUFBcUUsTUFBTSxlQUFlLENBQUM7QUFDeEksT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7QUFVM0QsTUFBTSxPQUFPLGlCQUFpQjtJQVM1QixZQUNVLEVBQWMsRUFDZCxRQUFtQixFQUNuQixLQUF3QixFQUN4QixLQUFZO1FBSFosT0FBRSxHQUFGLEVBQUUsQ0FBWTtRQUNkLGFBQVEsR0FBUixRQUFRLENBQVc7UUFDbkIsVUFBSyxHQUFMLEtBQUssQ0FBbUI7UUFDeEIsVUFBSyxHQUFMLEtBQUssQ0FBTztRQVZ0QixZQUFPLEdBQVUsRUFBRSxDQUFDO0lBV2pCLENBQUM7SUFFSixRQUFRO1FBQ04sSUFBSSxDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsUUFBUSxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsRUFBRTtZQUMzQyxNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBRWhFLElBQUksQ0FBQyxhQUFhLEVBQUU7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VlksWUFBWSwrUEFBRSxlQUFlOzs0RkFFNUIsaUJBQWlCO2tCQVA3QixTQUFTOytCQUNFLGNBQWMsY0FHWixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDOzZLQUcvQixNQUFNO3NCQUFkLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIE9uSW5pdCwgSW5wdXQsIFJlbmRlcmVyMiwgQ2hhbmdlRGV0ZWN0b3JSZWYsIE9uQ2hhbmdlcywgU2ltcGxlQ2hhbmdlcywgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgTWF0QnV0dG9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvYnV0dG9uJztcbmltcG9ydCB7IFV0aWxzIH0gZnJvbSAnLi4vLi4vLi4vX2hlbHBlcnMvdXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtb3BlcmF0b3InLFxuICB0ZW1wbGF0ZVVybDogJy4vb3BlcmF0b3IuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9vcGVyYXRvci5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBNYXRCdXR0b25Nb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIE9wZXJhdG9yQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpIHBDb25uJDogdHlwZW9mIFBDb25uZWN0O1xuXG4gIGZpZWxkcyQ6IGFueVtdID0gW107XG4gIGJTaG93UG9wb3ZlciQ6IGJvb2xlYW47XG4gIGRhdGUkOiBzdHJpbmc7XG4gIG5hbWUkOiBzdHJpbmc7XG4gIGxhYmVsJDogc3RyaW5nO1xuICBpZCQ6IHN0cmluZztcbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBlbDogRWxlbWVudFJlZixcbiAgICBwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgcHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgcHJpdmF0ZSB1dGlsczogVXRpbHNcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMucmVuZGVyZXIubGlzdGVuKCd3aW5kb3cnLCAnY2xpY2snLCBlbCA9PiB7XG4gICAgICBjb25zdCBjbGlja2VkSW5zaWRlID0gdGhpcy5lbC5uYXRpdmVFbGVtZW50LmNvbnRhaW5zKGVsLnRhcmdldCk7XG5cbiAgICAgIGlmICghY2xpY2tlZEluc2lkZSkge1xuICAgICAgICB0aGlzLmJTaG93UG9wb3ZlciQgPSBmYWxzZTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHRoaXMuYlNob3dQb3BvdmVyJCA9IGZhbHNlO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xuICAgIGNvbnN0IHsgcENvbm4kIH0gPSBjaGFuZ2VzO1xuICAgIGlmIChwQ29ubiQucHJldmlvdXNWYWx1ZSAhPT0gcENvbm4kLmN1cnJlbnRWYWx1ZSkge1xuICAgICAgdGhpcy51cGRhdGVTZWxmKCk7XG4gICAgfVxuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5yZW5kZXJlci5kZXN0cm95KCk7XG4gIH1cblxuICB1cGRhdGVTZWxmKCk6IHZvaWQge1xuICAgIGNvbnN0IGNvbmZpZ1Byb3BzJCA9IHRoaXMucENvbm4kLmdldENvbmZpZ1Byb3BzKCkgYXMgYW55O1xuICAgIGlmIChjb25maWdQcm9wcyQ/LmxhYmVsPy50b0xvd2VyQ2FzZSgpID09ICdjcmVhdGUgb3BlcmF0b3InKSB7XG4gICAgICB0aGlzLm5hbWUkID0gY29uZmlnUHJvcHMkLmNyZWF0ZU9wZXJhdG9yLnVzZXJOYW1lO1xuICAgICAgdGhpcy5pZCQgPSBjb25maWdQcm9wcyQuY3JlYXRlT3BlcmF0b3IudXNlcklkO1xuICAgICAgdGhpcy5sYWJlbCQgPSBjb25maWdQcm9wcyQuY3JlYXRlTGFiZWw7XG4gICAgfSBlbHNlIGlmIChjb25maWdQcm9wcyQ/LmxhYmVsPy50b0xvd2VyQ2FzZSgpID09ICd1cGRhdGUgb3BlcmF0b3InKSB7XG4gICAgICB0aGlzLm5hbWUkID0gY29uZmlnUHJvcHMkLnVwZGF0ZU9wZXJhdG9yLnVzZXJOYW1lO1xuICAgICAgdGhpcy5pZCQgPSBjb25maWdQcm9wcyQudXBkYXRlT3BlcmF0b3IudXNlcklkO1xuICAgICAgdGhpcy5sYWJlbCQgPSBjb25maWdQcm9wcyQudXBkYXRlTGFiZWw7XG4gICAgfSBlbHNlIGlmIChjb25maWdQcm9wcyQ/LmxhYmVsPy50b0xvd2VyQ2FzZSgpID09ICdyZXNvbHZlIG9wZXJhdG9yJykge1xuICAgICAgdGhpcy5uYW1lJCA9IGNvbmZpZ1Byb3BzJC5yZXNvbHZlT3BlcmF0b3IudXNlck5hbWU7XG4gICAgICB0aGlzLmlkJCA9IGNvbmZpZ1Byb3BzJC5yZXNvbHZlT3BlcmF0b3IudXNlcklkO1xuICAgICAgdGhpcy5sYWJlbCQgPSBjb25maWdQcm9wcyQucmVzb2x2ZUxhYmVsO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLm5hbWUkID0gY29uZmlnUHJvcHMkPy52YWx1ZS51c2VyTmFtZTtcbiAgICAgIHRoaXMuaWQkID0gY29uZmlnUHJvcHMkPy52YWx1ZS51c2VySWQ7XG4gICAgICB0aGlzLmxhYmVsJCA9IGNvbmZpZ1Byb3BzJC5sYWJlbDtcbiAgICB9XG4gICAgdGhpcy5kYXRlJCA9IHRoaXMudXRpbHMuZ2VuZXJhdGVEYXRlKGNvbmZpZ1Byb3BzJD8udXBkYXRlRGF0ZVRpbWUsICdEYXRlVGltZS1TaW5jZScpO1xuICB9XG5cbiAgc2hvd09wZXJhdG9yKCkge1xuICAgIGNvbnN0IG9wZXJhdG9yUHJldmlld1Byb21pc2UgPSBQQ29yZS5nZXRVc2VyQXBpKCkuZ2V0T3BlcmF0b3JEZXRhaWxzKHRoaXMuaWQkKTtcbiAgICBjb25zdCBsb2NhbGl6ZWRWYWwgPSBQQ29yZS5nZXRMb2NhbGVVdGlscygpLmdldExvY2FsZVZhbHVlO1xuICAgIGNvbnN0IGxvY2FsZUNhdGVnb3J5ID0gJ09wZXJhdG9yJztcbiAgICBjb25zdCBmaWxsZXJTdHJpbmcgPSAnLS0tJztcblxuICAgIG9wZXJhdG9yUHJldmlld1Byb21pc2UudGhlbigocmVzOiBhbnkpID0+IHtcbiAgICAgIGlmIChyZXMuZGF0YSAmJiByZXMuZGF0YS5weU9wZXJhdG9ySW5mbyAmJiByZXMuZGF0YS5weU9wZXJhdG9ySW5mby5weVVzZXJOYW1lKSB7XG4gICAgICAgIHRoaXMuZmllbGRzJCA9IFtcbiAgICAgICAgICB7XG4gICAgICAgICAgICBpZDogJ3B5UG9zaXRpb24nLFxuICAgICAgICAgICAgbmFtZTogbG9jYWxpemVkVmFsKCdQb3NpdGlvbicsIGxvY2FsZUNhdGVnb3J5KSxcbiAgICAgICAgICAgIHZhbHVlOiByZXMuZGF0YS5weU9wZXJhdG9ySW5mby5weVBvc2l0aW9uICE9ICcnID8gcmVzLmRhdGEucHlPcGVyYXRvckluZm8ucHlQb3NpdGlvbiA6IGZpbGxlclN0cmluZ1xuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgaWQ6ICdweU9yZ2FuaXphdGlvbicsXG4gICAgICAgICAgICBuYW1lOiBsb2NhbGl6ZWRWYWwoJ09yZ2FuaXphdGlvbicsIGxvY2FsZUNhdGVnb3J5KSxcbiAgICAgICAgICAgIHZhbHVlOiByZXMuZGF0YS5weU9wZXJhdG9ySW5mby5weU9yZ2FuaXphdGlvbiAhPSAnJyA/IHJlcy5kYXRhLnB5T3BlcmF0b3JJbmZvLnB5T3JnYW5pemF0aW9uIDogZmlsbGVyU3RyaW5nXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBpZDogJ1JlcG9ydFRvVXNlck5hbWUnLFxuICAgICAgICAgICAgbmFtZTogbG9jYWxpemVkVmFsKCdSZXBvcnRzIHRvJywgbG9jYWxlQ2F0ZWdvcnkpLFxuICAgICAgICAgICAgdmFsdWU6IHJlcy5kYXRhLnB5T3BlcmF0b3JJbmZvLnB5UmVwb3J0VG9Vc2VyTmFtZSAhPSAnJyA/IHJlcy5kYXRhLnB5T3BlcmF0b3JJbmZvLnB5UmVwb3J0VG9Vc2VyTmFtZSA6IGZpbGxlclN0cmluZ1xuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgaWQ6ICdweVRlbGVwaG9uZScsXG4gICAgICAgICAgICBuYW1lOiBsb2NhbGl6ZWRWYWwoJ1RlbGVwaG9uZScsIGxvY2FsZUNhdGVnb3J5KSxcbiAgICAgICAgICAgIHZhbHVlOiByZXMuZGF0YS5weU9wZXJhdG9ySW5mby5weVRlbGVwaG9uZSAhPSAnJyA/IHJlcy5kYXRhLnB5T3BlcmF0b3JJbmZvLnB5VGVsZXBob25lIDogZmlsbGVyU3RyaW5nXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBpZDogJ3B5RW1haWxBZGRyZXNzJyxcbiAgICAgICAgICAgIG5hbWU6IGxvY2FsaXplZFZhbCgnRW1haWwgYWRkcmVzcycsIGxvY2FsZUNhdGVnb3J5KSxcbiAgICAgICAgICAgIHZhbHVlOiByZXMuZGF0YS5weU9wZXJhdG9ySW5mby5weUVtYWlsQWRkcmVzcyAhPSAnJyA/IHJlcy5kYXRhLnB5T3BlcmF0b3JJbmZvLnB5RW1haWxBZGRyZXNzIDogZmlsbGVyU3RyaW5nXG4gICAgICAgICAgfVxuICAgICAgICBdO1xuXG4gICAgICAgIHRoaXMuYlNob3dQb3BvdmVyJCA9IHRydWU7XG4gICAgICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgY29uc29sZS5sb2coXG4gICAgICAgICAgYE9wZXJhdG9yOiBQQ29yZS5nZXRVc2VyQXBpKCkuZ2V0T3BlcmF0b3JEZXRhaWxzKCR7dGhpcy5pZCR9KTsgcmV0dXJuZWQgZW1wdHkgcmVzLmRhdGEucHlPcGVyYXRvckluZm8ucHlVc2VyTmFtZSAtIGFkZGluZyBkZWZhdWx0YFxuICAgICAgICApO1xuICAgICAgICB0aGlzLmZpZWxkcyQgPSBbXG4gICAgICAgICAge1xuICAgICAgICAgICAgaWQ6ICdweVBvc2l0aW9uJyxcbiAgICAgICAgICAgIG5hbWU6IGxvY2FsaXplZFZhbCgnUG9zaXRpb24nLCBsb2NhbGVDYXRlZ29yeSksXG4gICAgICAgICAgICB2YWx1ZTogZmlsbGVyU3RyaW5nXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBpZDogJ3B5T3JnYW5pemF0aW9uJyxcbiAgICAgICAgICAgIG5hbWU6IGxvY2FsaXplZFZhbCgnT3JnYW5pemF0aW9uJywgbG9jYWxlQ2F0ZWdvcnkpLFxuICAgICAgICAgICAgdmFsdWU6IGZpbGxlclN0cmluZ1xuICAgICAgICAgIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgaWQ6ICdSZXBvcnRUb1VzZXJOYW1lJyxcbiAgICAgICAgICAgIG5hbWU6IGxvY2FsaXplZFZhbCgnUmVwb3J0cyB0bycsIGxvY2FsZUNhdGVnb3J5KSxcbiAgICAgICAgICAgIHZhbHVlOiBmaWxsZXJTdHJpbmdcbiAgICAgICAgICB9LFxuICAgICAgICAgIHtcbiAgICAgICAgICAgIGlkOiAncHlUZWxlcGhvbmUnLFxuICAgICAgICAgICAgbmFtZTogbG9jYWxpemVkVmFsKCdUZWxlcGhvbmUnLCBsb2NhbGVDYXRlZ29yeSksXG4gICAgICAgICAgICB2YWx1ZTogZmlsbGVyU3RyaW5nXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBpZDogJ3B5RW1haWxBZGRyZXNzJyxcbiAgICAgICAgICAgIG5hbWU6IGxvY2FsaXplZFZhbCgnRW1haWwgYWRkcmVzcycsIGxvY2FsZUNhdGVnb3J5KSxcbiAgICAgICAgICAgIHZhbHVlOiBmaWxsZXJTdHJpbmdcbiAgICAgICAgICB9XG4gICAgICAgIF07XG4gICAgICB9XG4gICAgfSk7XG4gIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJwc2RrLW9wZXJhdG9yIHBzZGstZG91YmxlXCI+XG4gIDxkaXYgY2xhc3M9XCJwc2RrLWxhYmVsXCI+XG4gICAge3sgbGFiZWwkIH19XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwicHNkay1kb3VibGVcIj5cbiAgICA8YnV0dG9uIG1hdC1idXR0b24gY29sb3I9XCJwcmltYXJ5XCIgc3R5bGU9XCJ0ZXh0LWRlY29yYXRpb246IHVuZGVybGluZVwiIChjbGljayk9XCJzaG93T3BlcmF0b3IoKVwiPnt7IG5hbWUkIH19PC9idXR0b24+XG4gIDwvZGl2PlxuICA8ZGl2Pnt7IGRhdGUkIH19PC9kaXY+XG48L2Rpdj5cblxuPGRpdj5cbiAgPGRpdiAqbmdJZj1cImJTaG93UG9wb3ZlciRcIiBjbGFzcz1cInBzZGstb3BlcmF0b3ItcG9wb3ZlclwiPlxuICAgIDxkbD5cbiAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGZpZWxkIG9mIGZpZWxkcyQ7IGxldCBpID0gaW5kZXhcIj5cbiAgICAgICAgPGR0IGNsYXNzPVwicHNkay1vcGVyYXRvci1uYW1lXCI+e3sgZmllbGQubmFtZSB9fTwvZHQ+XG4gICAgICAgIDxkZCBjbGFzcz1cInBzZGstb3BlcmF0b3ItdmFsdWVcIj57eyBmaWVsZC52YWx1ZSB9fTwvZGQ+XG4gICAgICA8L2Rpdj5cbiAgICA8L2RsPlxuICA8L2Rpdj5cbjwvZGl2PlxuIl19
@@ -0,0 +1,33 @@
1
+ import { Component, Input, forwardRef } from '@angular/core';
2
+ import { ComponentMapperComponent } from '../../../_bridge/component-mapper/component-mapper.component';
3
+ import * as i0 from "@angular/core";
4
+ export class PulseComponent {
5
+ constructor() {
6
+ this.currentUserInitials$ = '--';
7
+ }
8
+ ngOnInit() {
9
+ this.configProps$ = this.pConn$.resolveConfigProps(this.pConn$.getConfigProps());
10
+ // this.currentUser$ = this.configProps$.currentUser;
11
+ this.currentUser$ = PCore.getEnvironmentInfo().getOperatorName();
12
+ if (this.currentUser$ != '') {
13
+ this.currentUserInitials$ = this.currentUser$.charAt(0);
14
+ if (this.currentUser$.lastIndexOf(' ') > 0) {
15
+ const lastName = this.currentUser$.substring(this.currentUser$.lastIndexOf(' ') + 1);
16
+ this.currentUserInitials$ += lastName.charAt(0);
17
+ }
18
+ else if (this.currentUser$.lastIndexOf('.') > 0) {
19
+ const lastName = this.currentUser$.substring(this.currentUser$.lastIndexOf('.') + 1);
20
+ this.currentUserInitials$ += lastName.charAt(0);
21
+ }
22
+ }
23
+ }
24
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PulseComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
25
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PulseComponent, isStandalone: true, selector: "app-pulse", inputs: { pConn$: "pConn$" }, ngImport: i0, template: "<div class=\"psdk-pulse\">\n <component-mapper [name]=\"'FeedContainer'\" [props]=\"{ pConn$ }\"></component-mapper>\n</div>\n", styles: [".psdk-pulse{padding:1rem;margin:1rem;border-radius:.6125rem;border-left:6px solid;border-left-color:#7986cb;background-color:#fff}\n"], dependencies: [{ kind: "component", type: i0.forwardRef(function () { return ComponentMapperComponent; }), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
26
+ }
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PulseComponent, decorators: [{
28
+ type: Component,
29
+ args: [{ selector: 'app-pulse', standalone: true, imports: [forwardRef(() => ComponentMapperComponent)], template: "<div class=\"psdk-pulse\">\n <component-mapper [name]=\"'FeedContainer'\" [props]=\"{ pConn$ }\"></component-mapper>\n</div>\n", styles: [".psdk-pulse{padding:1rem;margin:1rem;border-radius:.6125rem;border-left:6px solid;border-left-color:#7986cb;background-color:#fff}\n"] }]
30
+ }], propDecorators: { pConn$: [{
31
+ type: Input
32
+ }] } });
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVsc2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci1zZGstY29tcG9uZW50cy9zcmMvbGliL19jb21wb25lbnRzL2Rlc2lnblN5c3RlbUV4dGVuc2lvbi9wdWxzZS9wdWxzZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL3B1bHNlL3B1bHNlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNyRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQzs7QUFjeEcsTUFBTSxPQUFPLGNBQWM7SUFQM0I7UUFZRSx5QkFBb0IsR0FBRyxJQUFJLENBQUM7S0FtQjdCO0lBakJDLFFBQVE7UUFDTixJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDO1FBQ2pGLHFEQUFxRDtRQUNyRCxJQUFJLENBQUMsWUFBWSxHQUFHLEtBQUssQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLGVBQWUsRUFBRSxDQUFDO1FBRWpFLElBQUksSUFBSSxDQUFDLFlBQVksSUFBSSxFQUFFLEVBQUU7WUFDM0IsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBRXhELElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxXQUFXLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFO2dCQUMxQyxNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztnQkFDckYsSUFBSSxDQUFDLG9CQUFvQixJQUFJLFFBQVEsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDakQ7aUJBQU0sSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ2pELE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO2dCQUNyRixJQUFJLENBQUMsb0JBQW9CLElBQUksUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQzthQUNqRDtTQUNGO0lBQ0gsQ0FBQzsrR0F2QlUsY0FBYzttR0FBZCxjQUFjLG1HQ2YzQixpSUFHQSxpT0RVNkIsd0JBQXdCOzs0RkFFeEMsY0FBYztrQkFQMUIsU0FBUzsrQkFDRSxXQUFXLGNBR1QsSUFBSSxXQUNQLENBQUMsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHdCQUF3QixDQUFDLENBQUM7OEJBRzVDLE1BQU07c0JBQWQsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0LCBJbnB1dCwgZm9yd2FyZFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50TWFwcGVyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vLi4vX2JyaWRnZS9jb21wb25lbnQtbWFwcGVyL2NvbXBvbmVudC1tYXBwZXIuY29tcG9uZW50JztcblxuaW50ZXJmYWNlIFB1bHNlUHJvcHMge1xuICAvLyBJZiBhbnksIGVudGVyIGFkZGl0aW9uYWwgcHJvcHMgdGhhdCBvbmx5IGV4aXN0IG9uIHRoaXMgY29tcG9uZW50XG4gIGNoaWxkcmVuPzogYW55W107XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1wdWxzZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9wdWxzZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3B1bHNlLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtmb3J3YXJkUmVmKCgpID0+IENvbXBvbmVudE1hcHBlckNvbXBvbmVudCldXG59KVxuZXhwb3J0IGNsYXNzIFB1bHNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KCkgcENvbm4kOiB0eXBlb2YgUENvbm5lY3Q7XG5cbiAgY29uZmlnUHJvcHMkOiBQdWxzZVByb3BzO1xuICBjdXJyZW50VXNlciQ6IHN0cmluZztcbiAgY3VycmVudFVzZXJJbml0aWFscyQgPSAnLS0nO1xuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuY29uZmlnUHJvcHMkID0gdGhpcy5wQ29ubiQucmVzb2x2ZUNvbmZpZ1Byb3BzKHRoaXMucENvbm4kLmdldENvbmZpZ1Byb3BzKCkpO1xuICAgIC8vIHRoaXMuY3VycmVudFVzZXIkID0gdGhpcy5jb25maWdQcm9wcyQuY3VycmVudFVzZXI7XG4gICAgdGhpcy5jdXJyZW50VXNlciQgPSBQQ29yZS5nZXRFbnZpcm9ubWVudEluZm8oKS5nZXRPcGVyYXRvck5hbWUoKTtcblxuICAgIGlmICh0aGlzLmN1cnJlbnRVc2VyJCAhPSAnJykge1xuICAgICAgdGhpcy5jdXJyZW50VXNlckluaXRpYWxzJCA9IHRoaXMuY3VycmVudFVzZXIkLmNoYXJBdCgwKTtcblxuICAgICAgaWYgKHRoaXMuY3VycmVudFVzZXIkLmxhc3RJbmRleE9mKCcgJykgPiAwKSB7XG4gICAgICAgIGNvbnN0IGxhc3ROYW1lID0gdGhpcy5jdXJyZW50VXNlciQuc3Vic3RyaW5nKHRoaXMuY3VycmVudFVzZXIkLmxhc3RJbmRleE9mKCcgJykgKyAxKTtcbiAgICAgICAgdGhpcy5jdXJyZW50VXNlckluaXRpYWxzJCArPSBsYXN0TmFtZS5jaGFyQXQoMCk7XG4gICAgICB9IGVsc2UgaWYgKHRoaXMuY3VycmVudFVzZXIkLmxhc3RJbmRleE9mKCcuJykgPiAwKSB7XG4gICAgICAgIGNvbnN0IGxhc3ROYW1lID0gdGhpcy5jdXJyZW50VXNlciQuc3Vic3RyaW5nKHRoaXMuY3VycmVudFVzZXIkLmxhc3RJbmRleE9mKCcuJykgKyAxKTtcbiAgICAgICAgdGhpcy5jdXJyZW50VXNlckluaXRpYWxzJCArPSBsYXN0TmFtZS5jaGFyQXQoMCk7XG4gICAgICB9XG4gICAgfVxuICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwicHNkay1wdWxzZVwiPlxuICA8Y29tcG9uZW50LW1hcHBlciBbbmFtZV09XCInRmVlZENvbnRhaW5lcidcIiBbcHJvcHNdPVwieyBwQ29ubiQgfVwiPjwvY29tcG9uZW50LW1hcHBlcj5cbjwvZGl2PlxuIl19
@@ -0,0 +1,93 @@
1
+ import { Component, Input, Output, EventEmitter } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { FormControl, ReactiveFormsModule, Validators } from '@angular/forms';
4
+ import { EditorModule, TINYMCE_SCRIPT_SRC } from '@tinymce/tinymce-angular';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/common";
7
+ import * as i2 from "@tinymce/tinymce-angular";
8
+ import * as i3 from "@angular/forms";
9
+ export class RichTextEditorComponent {
10
+ constructor() {
11
+ this.onBlur = new EventEmitter();
12
+ this.onChange = new EventEmitter();
13
+ this.richText = new FormControl();
14
+ this.filePickerCallback = cb => {
15
+ const input = document.createElement('input');
16
+ input.setAttribute('type', 'file');
17
+ input.setAttribute('accept', 'image/*');
18
+ input.addEventListener('change', (e) => {
19
+ const file = e.target.files[0];
20
+ const reader = new FileReader();
21
+ reader.addEventListener('load', () => {
22
+ /*
23
+ Note: Now we need to register the blob in TinyMCEs image blob
24
+ registry. In the next release this part hopefully won't be
25
+ necessary, as we are looking to handle it internally.
26
+ */
27
+ const blobId = `blobid${new Date().getTime()}`;
28
+ console.log('editorRef', tinymce.activeEditor);
29
+ const blobCache = tinymce.activeEditor.editorUpload.blobCache;
30
+ const base64 = reader.result.split(',')[1];
31
+ const blobInfo = blobCache.create(blobId, file, base64);
32
+ blobCache.add(blobInfo);
33
+ /* call the callback and populate the Title field with the file name */
34
+ cb(blobInfo.blobUri(), { title: file.name });
35
+ });
36
+ reader.readAsDataURL(file);
37
+ });
38
+ input.click();
39
+ };
40
+ }
41
+ ngOnChanges() {
42
+ if (this.required) {
43
+ this.richText.addValidators(Validators.required);
44
+ }
45
+ if (this.disabled) {
46
+ this.richText.disable();
47
+ }
48
+ else {
49
+ this.richText.enable();
50
+ }
51
+ if (this.value) {
52
+ this.richText.setValue(this.value);
53
+ }
54
+ }
55
+ blur() {
56
+ if (tinymce.activeEditor) {
57
+ const editorValue = tinymce.activeEditor.getContent({ format: 'html' });
58
+ this.onBlur.emit(editorValue);
59
+ }
60
+ }
61
+ change(event) {
62
+ this.onChange.emit(event);
63
+ }
64
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RichTextEditorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
65
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: RichTextEditorComponent, isStandalone: true, selector: "app-rich-text-editor", inputs: { placeholder: "placeholder", disabled: "disabled", readonly: "readonly", value: "value", label: "label", required: "required", info: "info", error: "error", testId: "testId" }, outputs: { onBlur: "onBlur", onChange: "onChange" }, providers: [{ provide: TINYMCE_SCRIPT_SRC, useValue: 'tinymce/tinymce.min.js' }], usesOnChanges: true, ngImport: i0, template: "<div [attr.data-test-id]=\"testId\">\n <label [ngClass]=\"{ 'label-required': required === true }\" class=\"rich-text-label\">{{ label }}</label>\n <div class=\"rich-text-editor\" *ngIf=\"!readonly\">\n <editor\n [formControl]=\"richText\"\n [attr.disabled]=\"disabled\"\n [initialValue]=\"value\"\n [init]=\"{\n base_url: '/tinymce',\n suffix: '.min',\n menubar: false,\n placeholder,\n statusbar: false,\n min_height: 130,\n plugins: ['lists', 'advlist', 'autolink', 'image', 'link', 'autoresize'],\n autoresize_bottom_margin: 0,\n toolbar: disabled ? false : 'blocks | bold italic strikethrough | bullist numlist outdent indent | link image',\n toolbar_location: 'bottom',\n content_style: 'body { font-family:Helvetica, Arial,sans-serif; font-size:14px }',\n branding: false,\n paste_data_images: true,\n file_picker_types: 'image',\n file_picker_callback: filePickerCallback\n }\"\n (onBlur)=\"blur()\"\n (onChange)=\"change($event)\"\n ></editor>\n <p *ngIf=\"richText.invalid\" [ngClass]=\"'text-editor-error'\">{{ info }}</p>\n </div>\n <div *ngIf=\"readonly\">\n <div class=\"readonly-richtext-editor\" style=\"margin: 10px 5px\" [innerHTML]=\"value || '--'\"></div>\n </div>\n</div>\n", styles: [".rich-text-label{margin:5px;font-size:16px}.rich-text-editor{margin:10px 0}.label-required:after{display:inline;content:\" *\";vertical-align:top;color:#262626}.text-editor-error{color:#e57373}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: EditorModule }, { kind: "component", type: i2.EditorComponent, selector: "editor", inputs: ["cloudChannel", "apiKey", "init", "id", "initialValue", "outputFormat", "inline", "tagName", "plugins", "toolbar", "modelEvents", "allowedEvents", "ignoreEvents", "disabled"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }] }); }
66
+ }
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: RichTextEditorComponent, decorators: [{
68
+ type: Component,
69
+ args: [{ selector: 'app-rich-text-editor', standalone: true, imports: [CommonModule, EditorModule, ReactiveFormsModule], providers: [{ provide: TINYMCE_SCRIPT_SRC, useValue: 'tinymce/tinymce.min.js' }], template: "<div [attr.data-test-id]=\"testId\">\n <label [ngClass]=\"{ 'label-required': required === true }\" class=\"rich-text-label\">{{ label }}</label>\n <div class=\"rich-text-editor\" *ngIf=\"!readonly\">\n <editor\n [formControl]=\"richText\"\n [attr.disabled]=\"disabled\"\n [initialValue]=\"value\"\n [init]=\"{\n base_url: '/tinymce',\n suffix: '.min',\n menubar: false,\n placeholder,\n statusbar: false,\n min_height: 130,\n plugins: ['lists', 'advlist', 'autolink', 'image', 'link', 'autoresize'],\n autoresize_bottom_margin: 0,\n toolbar: disabled ? false : 'blocks | bold italic strikethrough | bullist numlist outdent indent | link image',\n toolbar_location: 'bottom',\n content_style: 'body { font-family:Helvetica, Arial,sans-serif; font-size:14px }',\n branding: false,\n paste_data_images: true,\n file_picker_types: 'image',\n file_picker_callback: filePickerCallback\n }\"\n (onBlur)=\"blur()\"\n (onChange)=\"change($event)\"\n ></editor>\n <p *ngIf=\"richText.invalid\" [ngClass]=\"'text-editor-error'\">{{ info }}</p>\n </div>\n <div *ngIf=\"readonly\">\n <div class=\"readonly-richtext-editor\" style=\"margin: 10px 5px\" [innerHTML]=\"value || '--'\"></div>\n </div>\n</div>\n", styles: [".rich-text-label{margin:5px;font-size:16px}.rich-text-editor{margin:10px 0}.label-required:after{display:inline;content:\" *\";vertical-align:top;color:#262626}.text-editor-error{color:#e57373}\n"] }]
70
+ }], propDecorators: { placeholder: [{
71
+ type: Input
72
+ }], disabled: [{
73
+ type: Input
74
+ }], readonly: [{
75
+ type: Input
76
+ }], value: [{
77
+ type: Input
78
+ }], label: [{
79
+ type: Input
80
+ }], required: [{
81
+ type: Input
82
+ }], info: [{
83
+ type: Input
84
+ }], error: [{
85
+ type: Input
86
+ }], testId: [{
87
+ type: Input
88
+ }], onBlur: [{
89
+ type: Output
90
+ }], onChange: [{
91
+ type: Output
92
+ }] } });
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmljaC10ZXh0LWVkaXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL3JpY2gtdGV4dC1lZGl0b3IvcmljaC10ZXh0LWVkaXRvci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL3JpY2gtdGV4dC1lZGl0b3IvcmljaC10ZXh0LWVkaXRvci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLG1CQUFtQixFQUFFLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlFLE9BQU8sRUFBRSxZQUFZLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7Ozs7QUFZNUUsTUFBTSxPQUFPLHVCQUF1QjtJQVJwQztRQW1CWSxXQUFNLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDL0MsYUFBUSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBRTNELGFBQVEsR0FBRyxJQUFJLFdBQVcsRUFBRSxDQUFDO1FBa0I3Qix1QkFBa0IsR0FBRyxFQUFFLENBQUMsRUFBRTtZQUN4QixNQUFNLEtBQUssR0FBRyxRQUFRLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzlDLEtBQUssQ0FBQyxZQUFZLENBQUMsTUFBTSxFQUFFLE1BQU0s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LGtCQUFrQixFQUFFLFFBQVEsRUFBRSx3QkFBd0IsRUFBRSxDQUFDOzhCQUd2RSxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxNQUFNO3NCQUFkLEtBQUs7Z0JBRUksTUFBTTtzQkFBZixNQUFNO2dCQUNHLFFBQVE7c0JBQWpCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPdXRwdXQsIEV2ZW50RW1pdHRlciwgT25DaGFuZ2VzIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wsIFJlYWN0aXZlRm9ybXNNb2R1bGUsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBFZGl0b3JNb2R1bGUsIFRJTllNQ0VfU0NSSVBUX1NSQyB9IGZyb20gJ0B0aW55bWNlL3RpbnltY2UtYW5ndWxhcic7XG5cbmRlY2xhcmUgbGV0IHRpbnltY2U6IGFueTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXBwLXJpY2gtdGV4dC1lZGl0b3InLFxuICB0ZW1wbGF0ZVVybDogJy4vcmljaC10ZXh0LWVkaXRvci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL3JpY2gtdGV4dC1lZGl0b3IuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRWRpdG9yTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlXSxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBUSU5ZTUNFX1NDUklQVF9TUkMsIHVzZVZhbHVlOiAndGlueW1jZS90aW55bWNlLm1pbi5qcycgfV1cbn0pXG5leHBvcnQgY2xhc3MgUmljaFRleHRFZGl0b3JDb21wb25lbnQgaW1wbGVtZW50cyBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBwbGFjZWhvbGRlcjtcbiAgQElucHV0KCkgZGlzYWJsZWQ7XG4gIEBJbnB1dCgpIHJlYWRvbmx5O1xuICBASW5wdXQoKSB2YWx1ZTtcbiAgQElucHV0KCkgbGFiZWw7XG4gIEBJbnB1dCgpIHJlcXVpcmVkO1xuICBASW5wdXQoKSBpbmZvO1xuICBASW5wdXQoKSBlcnJvcjtcbiAgQElucHV0KCkgdGVzdElkO1xuXG4gIEBPdXRwdXQoKSBvbkJsdXI6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuICBAT3V0cHV0KCkgb25DaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIHJpY2hUZXh0ID0gbmV3IEZvcm1Db250cm9sKCk7XG5cbiAgbmdPbkNoYW5nZXMoKSB7XG4gICAgaWYgKHRoaXMucmVxdWlyZWQpIHtcbiAgICAgIHRoaXMucmljaFRleHQuYWRkVmFsaWRhdG9ycyhWYWxpZGF0b3JzLnJlcXVpcmVkKTtcbiAgICB9XG5cbiAgICBpZiAodGhpcy5kaXNhYmxlZCkge1xuICAgICAgdGhpcy5yaWNoVGV4dC5kaXNhYmxlKCk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucmljaFRleHQuZW5hYmxlKCk7XG4gICAgfVxuXG4gICAgaWYgKHRoaXMudmFsdWUpIHtcbiAgICAgIHRoaXMucmljaFRleHQuc2V0VmFsdWUodGhpcy52YWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgZmlsZVBpY2tlckNhbGxiYWNrID0gY2IgPT4ge1xuICAgIGNvbnN0IGlucHV0ID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgnaW5wdXQnKTtcbiAgICBpbnB1dC5zZXRBdHRyaWJ1dGUoJ3R5cGUnLCAnZmlsZScpO1xuICAgIGlucHV0LnNldEF0dHJpYnV0ZSgnYWNjZXB0JywgJ2ltYWdlLyonKTtcblxuICAgIGlucHV0LmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIChlOiBhbnkpID0+IHtcbiAgICAgIGNvbnN0IGZpbGUgPSBlLnRhcmdldC5maWxlc1swXTtcblxuICAgICAgY29uc3QgcmVhZGVyOiBhbnkgPSBuZXcgRmlsZVJlYWRlcigpO1xuICAgICAgcmVhZGVyLmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWQnLCAoKSA9PiB7XG4gICAgICAgIC8qXG4gICAgICAgICAgICBOb3RlOiBOb3cgd2UgbmVlZCB0byByZWdpc3RlciB0aGUgYmxvYiBpbiBUaW55TUNFcyBpbWFnZSBibG9iXG4gICAgICAgICAgICByZWdpc3RyeS4gSW4gdGhlIG5leHQgcmVsZWFzZSB0aGlzIHBhcnQgaG9wZWZ1bGx5IHdvbid0IGJlXG4gICAgICAgICAgICBuZWNlc3NhcnksIGFzIHdlIGFyZSBsb29raW5nIHRvIGhhbmRsZSBpdCBpbnRlcm5hbGx5LlxuICAgICAgICAqL1xuICAgICAgICBjb25zdCBibG9iSWQgPSBgYmxvYmlkJHtuZXcgRGF0ZSgpLmdldFRpbWUoKX1gO1xuICAgICAgICBjb25zb2xlLmxvZygnZWRpdG9yUmVmJywgdGlueW1jZS5hY3RpdmVFZGl0b3IpO1xuICAgICAgICBjb25zdCBibG9iQ2FjaGUgPSB0aW55bWNlLmFjdGl2ZUVkaXRvci5lZGl0b3JVcGxvYWQuYmxvYkNhY2hlO1xuICAgICAgICBjb25zdCBiYXNlNjQgPSByZWFkZXIucmVzdWx0LnNwbGl0KCcsJylbMV07XG4gICAgICAgIGNvbnN0IGJsb2JJbmZvID0gYmxvYkNhY2hlLmNyZWF0ZShibG9iSWQsIGZpbGUsIGJhc2U2NCk7XG4gICAgICAgIGJsb2JDYWNoZS5hZGQoYmxvYkluZm8pO1xuXG4gICAgICAgIC8qIGNhbGwgdGhlIGNhbGxiYWNrIGFuZCBwb3B1bGF0ZSB0aGUgVGl0bGUgZmllbGQgd2l0aCB0aGUgZmlsZSBuYW1lICovXG4gICAgICAgIGNiKGJsb2JJbmZvLmJsb2JVcmkoKSwgeyB0aXRsZTogZmlsZS5uYW1lIH0pO1xuICAgICAgfSk7XG4gICAgICByZWFkZXIucmVhZEFzRGF0YVVSTChmaWxlKTtcbiAgICB9KTtcblxuICAgIGlucHV0LmNsaWNrKCk7XG4gIH07XG5cbiAgYmx1cigpIHtcbiAgICBpZiAodGlueW1jZS5hY3RpdmVFZGl0b3IpIHtcbiAgICAgIGNvbnN0IGVkaXRvclZhbHVlID0gdGlueW1jZS5hY3RpdmVFZGl0b3IuZ2V0Q29udGVudCh7IGZvcm1hdDogJ2h0bWwnIH0pO1xuICAgICAgdGhpcy5vbkJsdXIuZW1pdChlZGl0b3JWYWx1ZSk7XG4gICAgfVxuICB9XG5cbiAgY2hhbmdlKGV2ZW50KSB7XG4gICAgdGhpcy5vbkNoYW5nZS5lbWl0KGV2ZW50KTtcbiAgfVxufVxuIiwiPGRpdiBbYXR0ci5kYXRhLXRlc3QtaWRdPVwidGVzdElkXCI+XG4gIDxsYWJlbCBbbmdDbGFzc109XCJ7ICdsYWJlbC1yZXF1aXJlZCc6IHJlcXVpcmVkID09PSB0cnVlIH1cIiBjbGFzcz1cInJpY2gtdGV4dC1sYWJlbFwiPnt7IGxhYmVsIH19PC9sYWJlbD5cbiAgPGRpdiBjbGFzcz1cInJpY2gtdGV4dC1lZGl0b3JcIiAqbmdJZj1cIiFyZWFkb25seVwiPlxuICAgIDxlZGl0b3JcbiAgICAgIFtmb3JtQ29udHJvbF09XCJyaWNoVGV4dFwiXG4gICAgICBbYXR0ci5kaXNhYmxlZF09XCJkaXNhYmxlZFwiXG4gICAgICBbaW5pdGlhbFZhbHVlXT1cInZhbHVlXCJcbiAgICAgIFtpbml0XT1cIntcbiAgICAgICAgYmFzZV91cmw6ICcvdGlueW1jZScsXG4gICAgICAgIHN1ZmZpeDogJy5taW4nLFxuICAgICAgICBtZW51YmFyOiBmYWxzZSxcbiAgICAgICAgcGxhY2Vob2xkZXIsXG4gICAgICAgIHN0YXR1c2JhcjogZmFsc2UsXG4gICAgICAgIG1pbl9oZWlnaHQ6IDEzMCxcbiAgICAgICAgcGx1Z2luczogWydsaXN0cycsICdhZHZsaXN0JywgJ2F1dG9saW5rJywgJ2ltYWdlJywgJ2xpbmsnLCAnYXV0b3Jlc2l6ZSddLFxuICAgICAgICBhdXRvcmVzaXplX2JvdHRvbV9tYXJnaW46IDAsXG4gICAgICAgIHRvb2xiYXI6IGRpc2FibGVkID8gZmFsc2UgOiAnYmxvY2tzIHwgYm9sZCBpdGFsaWMgc3RyaWtldGhyb3VnaCB8IGJ1bGxpc3QgbnVtbGlzdCBvdXRkZW50IGluZGVudCB8IGxpbmsgaW1hZ2UnLFxuICAgICAgICB0b29sYmFyX2xvY2F0aW9uOiAnYm90dG9tJyxcbiAgICAgICAgY29udGVudF9zdHlsZTogJ2JvZHkgeyBmb250LWZhbWlseTpIZWx2ZXRpY2EsIEFyaWFsLHNhbnMtc2VyaWY7IGZvbnQtc2l6ZToxNHB4IH0nLFxuICAgICAgICBicmFuZGluZzogZmFsc2UsXG4gICAgICAgIHBhc3RlX2RhdGFfaW1hZ2VzOiB0cnVlLFxuICAgICAgICBmaWxlX3BpY2tlcl90eXBlczogJ2ltYWdlJyxcbiAgICAgICAgZmlsZV9waWNrZXJfY2FsbGJhY2s6IGZpbGVQaWNrZXJDYWxsYmFja1xuICAgICAgfVwiXG4gICAgICAob25CbHVyKT1cImJsdXIoKVwiXG4gICAgICAob25DaGFuZ2UpPVwiY2hhbmdlKCRldmVudClcIlxuICAgID48L2VkaXRvcj5cbiAgICA8cCAqbmdJZj1cInJpY2hUZXh0LmludmFsaWRcIiBbbmdDbGFzc109XCIndGV4dC1lZGl0b3ItZXJyb3InXCI+e3sgaW5mbyB9fTwvcD5cbiAgPC9kaXY+XG4gIDxkaXYgKm5nSWY9XCJyZWFkb25seVwiPlxuICAgIDxkaXYgY2xhc3M9XCJyZWFkb25seS1yaWNodGV4dC1lZGl0b3JcIiBzdHlsZT1cIm1hcmdpbjogMTBweCA1cHhcIiBbaW5uZXJIVE1MXT1cInZhbHVlIHx8ICctLSdcIj48L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -0,0 +1,18 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { Component, Input } from '@angular/core';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common";
5
+ // import { Button } from '@angular/material'
6
+ export class WssQuickCreateComponent {
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: WssQuickCreateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
8
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: WssQuickCreateComponent, isStandalone: true, selector: "wss-quick-create", inputs: { actions$: "actions$", heading$: "heading$" }, ngImport: i0, template: "<div class=\"wss-quick-create-header\">\n <h1 class=\"quick-link-heading\">{{ heading$ }}</h1>\n <ul class=\"quick-link-ul-list\">\n <li *ngFor=\"let element of actions$\" class=\"quick-link-list\">\n <button mat-raised-button color=\"primary\" class=\"quick-link-button\" mat-icon-button (click)=\"element.onClick()\">\n <span class=\"quick-link-button-span\">\n <img *ngIf=\"element.icon\" class=\"quick-link-icon\" [src]=\"element.icon\" />\n <span>{{ element.label }}</span>\n </span>\n </button>\n </li>\n </ul>\n</div>\n", styles: [".quick-link-ul-list{list-style:none;padding:0;grid-template-columns:repeat(auto-fill,minmax(min(40ch,100%),1fr));display:grid;gap:1rem}.quick-link-list{background-color:#3f51b5;color:#fff;border-radius:8px}.quick-link-button{text-transform:capitalize!important;font-size:16px!important;color:#fff!important;cursor:pointer;padding:1rem!important;height:6rem;width:100%;justify-content:start!important;background-color:transparent;border:0}.quick-link-icon{width:1em;height:1em;flex-shrink:0;filter:invert(100%)}.quick-link-button-span{display:flex;align-items:center;gap:.5rem}.quick-link-heading{margin-top:8px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] }); }
9
+ }
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: WssQuickCreateComponent, decorators: [{
11
+ type: Component,
12
+ args: [{ selector: 'wss-quick-create', standalone: true, imports: [CommonModule], template: "<div class=\"wss-quick-create-header\">\n <h1 class=\"quick-link-heading\">{{ heading$ }}</h1>\n <ul class=\"quick-link-ul-list\">\n <li *ngFor=\"let element of actions$\" class=\"quick-link-list\">\n <button mat-raised-button color=\"primary\" class=\"quick-link-button\" mat-icon-button (click)=\"element.onClick()\">\n <span class=\"quick-link-button-span\">\n <img *ngIf=\"element.icon\" class=\"quick-link-icon\" [src]=\"element.icon\" />\n <span>{{ element.label }}</span>\n </span>\n </button>\n </li>\n </ul>\n</div>\n", styles: [".quick-link-ul-list{list-style:none;padding:0;grid-template-columns:repeat(auto-fill,minmax(min(40ch,100%),1fr));display:grid;gap:1rem}.quick-link-list{background-color:#3f51b5;color:#fff;border-radius:8px}.quick-link-button{text-transform:capitalize!important;font-size:16px!important;color:#fff!important;cursor:pointer;padding:1rem!important;height:6rem;width:100%;justify-content:start!important;background-color:transparent;border:0}.quick-link-icon{width:1em;height:1em;flex-shrink:0;filter:invert(100%)}.quick-link-button-span{display:flex;align-items:center;gap:.5rem}.quick-link-heading{margin-top:8px}\n"] }]
13
+ }], propDecorators: { actions$: [{
14
+ type: Input
15
+ }], heading$: [{
16
+ type: Input
17
+ }] } });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid3NzLXF1aWNrLWNyZWF0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL3dzcy1xdWljay1jcmVhdGUvd3NzLXF1aWNrLWNyZWF0ZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2NvbXBvbmVudHMvZGVzaWduU3lzdGVtRXh0ZW5zaW9uL3dzcy1xdWljay1jcmVhdGUvd3NzLXF1aWNrLWNyZWF0ZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUNqRCw2Q0FBNkM7QUFTN0MsTUFBTSxPQUFPLHVCQUF1QjsrR0FBdkIsdUJBQXVCO21HQUF2Qix1QkFBdUIsb0lDWHBDLG1rQkFhQSw4cEJESlksWUFBWTs7NEZBRVgsdUJBQXVCO2tCQVBuQyxTQUFTOytCQUNFLGtCQUFrQixjQUdoQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLENBQUM7OEJBR2QsUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbi8vIGltcG9ydCB7IEJ1dHRvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsJ1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICd3c3MtcXVpY2stY3JlYXRlJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3dzcy1xdWljay1jcmVhdGUuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi93c3MtcXVpY2stY3JlYXRlLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdXG59KVxuZXhwb3J0IGNsYXNzIFdzc1F1aWNrQ3JlYXRlQ29tcG9uZW50IHtcbiAgQElucHV0KCkgYWN0aW9ucyQ6IGFueTtcbiAgQElucHV0KCkgaGVhZGluZyQ6IGFueTtcbn1cbiIsIjxkaXYgY2xhc3M9XCJ3c3MtcXVpY2stY3JlYXRlLWhlYWRlclwiPlxuICA8aDEgY2xhc3M9XCJxdWljay1saW5rLWhlYWRpbmdcIj57eyBoZWFkaW5nJCB9fTwvaDE+XG4gIDx1bCBjbGFzcz1cInF1aWNrLWxpbmstdWwtbGlzdFwiPlxuICAgIDxsaSAqbmdGb3I9XCJsZXQgZWxlbWVudCBvZiBhY3Rpb25zJFwiIGNsYXNzPVwicXVpY2stbGluay1saXN0XCI+XG4gICAgICA8YnV0dG9uIG1hdC1yYWlzZWQtYnV0dG9uIGNvbG9yPVwicHJpbWFyeVwiIGNsYXNzPVwicXVpY2stbGluay1idXR0b25cIiBtYXQtaWNvbi1idXR0b24gKGNsaWNrKT1cImVsZW1lbnQub25DbGljaygpXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwicXVpY2stbGluay1idXR0b24tc3BhblwiPlxuICAgICAgICAgIDxpbWcgKm5nSWY9XCJlbGVtZW50Lmljb25cIiBjbGFzcz1cInF1aWNrLWxpbmstaWNvblwiIFtzcmNdPVwiZWxlbWVudC5pY29uXCIgLz5cbiAgICAgICAgICA8c3Bhbj57eyBlbGVtZW50LmxhYmVsIH19PC9zcGFuPlxuICAgICAgICA8L3NwYW4+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2xpPlxuICA8L3VsPlxuPC9kaXY+XG4iXX0=