@pega/angular-sdk-components 24.2.10 → 25.1.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (305) hide show
  1. package/fesm2022/pega-angular-sdk-components.mjs +5383 -3962
  2. package/fesm2022/pega-angular-sdk-components.mjs.map +1 -1
  3. package/lib/_bridge/angular-pconnect.d.ts +1 -1
  4. package/lib/_bridge/component-mapper/component-mapper.component.d.ts +1 -1
  5. package/lib/_bridge/helpers/sdk-pega-component-map.d.ts +18 -0
  6. package/lib/_components/designSystemExtension/banner/banner.component.d.ts +0 -1
  7. package/lib/_components/designSystemExtension/case-create-stage/case-create-stage.component.d.ts +0 -1
  8. package/lib/_components/designSystemExtension/material-case-summary/material-case-summary.component.d.ts +1 -1
  9. package/lib/_components/designSystemExtension/material-details-fields/material-details-fields.component.d.ts +1 -0
  10. package/lib/_components/designSystemExtension/operator/operator.component.d.ts +2 -3
  11. package/lib/_components/designSystemExtension/pulse/pulse.component.d.ts +0 -1
  12. package/lib/_components/designSystemExtension/rich-text-editor/rich-text-editor.component.d.ts +1 -0
  13. package/lib/_components/field/auto-complete/auto-complete.component.d.ts +14 -38
  14. package/lib/_components/field/cancel-alert/cancel-alert.component.d.ts +7 -6
  15. package/lib/_components/field/check-box/check-box.component.d.ts +10 -33
  16. package/lib/_components/field/currency/currency.component.d.ts +19 -35
  17. package/lib/_components/field/date/date.component.d.ts +7 -58
  18. package/lib/_components/field/date-time/date-time.component.d.ts +12 -40
  19. package/lib/_components/field/decimal/decimal.component.d.ts +17 -32
  20. package/lib/_components/field/dropdown/dropdown.component.d.ts +14 -38
  21. package/lib/_components/field/email/email.component.d.ts +7 -35
  22. package/lib/_components/field/field.base.d.ts +57 -0
  23. package/lib/_components/field/group/group.component.d.ts +5 -3
  24. package/lib/_components/field/integer/integer.component.d.ts +8 -35
  25. package/lib/_components/field/list-view-action-buttons/list-view-action-buttons.component.d.ts +1 -2
  26. package/lib/_components/field/location/location.component.d.ts +47 -0
  27. package/lib/_components/field/multiselect/multiselect.component.d.ts +7 -39
  28. package/lib/_components/field/object-reference/object-reference.component.d.ts +45 -0
  29. package/lib/_components/field/percentage/percentage.component.d.ts +19 -37
  30. package/lib/_components/field/phone/phone.component.d.ts +8 -38
  31. package/lib/_components/field/radio-buttons/radio-buttons.component.d.ts +13 -34
  32. package/lib/_components/field/rich-text/rich-text.component.d.ts +7 -31
  33. package/lib/_components/field/scalar-list/scalar-list.component.d.ts +6 -22
  34. package/lib/_components/field/selectable-card/selectable-card.component.d.ts +62 -0
  35. package/lib/_components/field/semantic-link/semantic-link.component.d.ts +21 -1
  36. package/lib/_components/field/text/text.component.d.ts +0 -1
  37. package/lib/_components/field/text-area/text-area.component.d.ts +7 -35
  38. package/lib/_components/field/text-content/text-content.component.d.ts +0 -1
  39. package/lib/_components/field/text-input/text-input.component.d.ts +7 -36
  40. package/lib/_components/field/time/time.component.d.ts +7 -36
  41. package/lib/_components/field/url/url.component.d.ts +7 -36
  42. package/lib/_components/field/user-reference/user-reference.component.d.ts +1 -2
  43. package/lib/_components/infra/Containers/flow-container/flow-container.component.d.ts +1 -2
  44. package/lib/_components/infra/Containers/flow-container/helpers.d.ts +1 -0
  45. package/lib/_components/infra/Containers/hybrid-view-container/hybrid-view-container.component.d.ts +0 -1
  46. package/lib/_components/infra/Containers/modal-view-container/modal-view-container.component.d.ts +5 -10
  47. package/lib/_components/infra/Containers/preview-view-container/preview-view-container.component.d.ts +0 -1
  48. package/lib/_components/infra/Containers/view-container/view-container.component.d.ts +0 -1
  49. package/lib/_components/infra/action-buttons/action-buttons.component.d.ts +1 -1
  50. package/lib/_components/infra/assignment/assignment.component.d.ts +8 -6
  51. package/lib/_components/infra/assignment-card/assignment-card.component.d.ts +3 -3
  52. package/lib/_components/infra/dashboard-filter/dashboard-filter.component.d.ts +0 -1
  53. package/lib/_components/infra/defer-load/defer-load.component.d.ts +7 -7
  54. package/lib/_components/infra/error-boundary/error-boundary.component.d.ts +1 -1
  55. package/lib/_components/infra/multi-step/multi-step.component.d.ts +0 -1
  56. package/lib/_components/infra/navbar/navbar.component.d.ts +0 -2
  57. package/lib/_components/infra/reference/reference.component.d.ts +23 -3
  58. package/lib/_components/infra/region/region.component.d.ts +0 -1
  59. package/lib/_components/infra/root-container/root-container.component.d.ts +3 -2
  60. package/lib/_components/infra/stages/stages.component.d.ts +2 -2
  61. package/lib/_components/infra/view/view.component.d.ts +0 -1
  62. package/lib/_components/template/advanced-search/advanced-search.component.d.ts +21 -0
  63. package/lib/_components/template/advanced-search/search-group/persist-utils.d.ts +23 -0
  64. package/lib/_components/template/advanced-search/search-groups/search-groups.component.d.ts +47 -0
  65. package/lib/_components/template/advanced-search/search-groups/utils.d.ts +15 -0
  66. package/lib/_components/template/app-shell/app-shell.component.d.ts +6 -3
  67. package/lib/_components/template/banner-page/banner-page.component.d.ts +0 -1
  68. package/lib/_components/template/base/details-template-base.d.ts +1 -2
  69. package/lib/_components/template/base/form-template-base.d.ts +3 -1
  70. package/lib/_components/template/case-summary/case-summary.component.d.ts +3 -3
  71. package/lib/_components/template/case-view/case-view.component.d.ts +0 -2
  72. package/lib/_components/template/confirmation/confirmation.component.d.ts +0 -1
  73. package/lib/_components/template/data-reference/data-reference.component.d.ts +27 -3
  74. package/lib/_components/template/data-reference/search-form/search-form.component.d.ts +39 -0
  75. package/lib/_components/template/data-reference/search-form/tabsData.d.ts +2 -0
  76. package/lib/_components/template/data-reference/utils.d.ts +14 -0
  77. package/lib/_components/template/default-form/default-form.component.d.ts +9 -4
  78. package/lib/_components/template/default-page/default-page.component.d.ts +29 -0
  79. package/lib/_components/template/details/details.component.d.ts +0 -1
  80. package/lib/_components/template/details-narrow-wide/details-narrow-wide.component.d.ts +0 -1
  81. package/lib/_components/template/details-one-column/details-one-column.component.d.ts +0 -1
  82. package/lib/_components/template/details-sub-tabs/details-sub-tabs.component.d.ts +0 -1
  83. package/lib/_components/template/details-three-column/details-three-column.component.d.ts +0 -1
  84. package/lib/_components/template/details-two-column/details-two-column.component.d.ts +0 -1
  85. package/lib/_components/template/details-wide-narrow/details-wide-narrow.component.d.ts +0 -1
  86. package/lib/_components/template/dynamic-tabs/dynamic-tabs.component.d.ts +0 -1
  87. package/lib/_components/template/field-group-template/field-group-template.component.d.ts +9 -8
  88. package/lib/_components/template/inline-dashboard/inline-dashboard.component.d.ts +0 -1
  89. package/lib/_components/template/inline-dashboard-page/inline-dashboard-page.component.d.ts +0 -1
  90. package/lib/_components/template/list-page/list-page.component.d.ts +0 -1
  91. package/lib/_components/template/list-view/list-view.component.d.ts +22 -7
  92. package/lib/_components/template/multi-reference-readonly/multi-reference-readonly.component.d.ts +0 -1
  93. package/lib/_components/template/narrow-wide-form/narrow-wide-form.component.d.ts +0 -1
  94. package/lib/_components/template/object-page/object-page.component.d.ts +8 -0
  95. package/lib/_components/template/one-column/one-column.component.d.ts +0 -1
  96. package/lib/_components/template/one-column-page/one-column-page.component.d.ts +0 -1
  97. package/lib/_components/template/one-column-tab/one-column-tab.component.d.ts +0 -1
  98. package/lib/_components/template/page/page.component.d.ts +0 -1
  99. package/lib/_components/template/promoted-filters/promoted-filters.component.d.ts +0 -1
  100. package/lib/_components/template/repeating-structures/repeating-structures.component.d.ts +0 -1
  101. package/lib/_components/template/self-service-case-view/self-service-case-view.component.d.ts +58 -0
  102. package/lib/_components/template/simple-table/simple-table.component.d.ts +0 -1
  103. package/lib/_components/template/simple-table-manual/helpers.d.ts +18 -3
  104. package/lib/_components/template/simple-table-manual/simple-table-manual.component.d.ts +9 -4
  105. package/lib/_components/template/simple-table-select/simple-table-select.component.d.ts +0 -1
  106. package/lib/_components/template/single-reference-readonly/single-reference-readonly.component.d.ts +18 -3
  107. package/lib/_components/template/sub-tabs/sub-tabs.component.d.ts +0 -1
  108. package/lib/_components/template/three-column/three-column.component.d.ts +0 -1
  109. package/lib/_components/template/three-column-page/three-column-page.component.d.ts +0 -1
  110. package/lib/_components/template/two-column/two-column.component.d.ts +0 -1
  111. package/lib/_components/template/two-column-page/two-column-page.component.d.ts +0 -1
  112. package/lib/_components/template/two-column-tab/two-column-tab.component.d.ts +0 -1
  113. package/lib/_components/template/utils.d.ts +11 -0
  114. package/lib/_components/template/wide-narrow-form/wide-narrow-form.component.d.ts +0 -1
  115. package/lib/_components/template/wide-narrow-page/wide-narrow-page.component.d.ts +0 -1
  116. package/lib/_components/template/wss-nav-bar/wss-nav-bar.component.d.ts +3 -6
  117. package/lib/_components/widget/app-announcement/app-announcement.component.d.ts +0 -1
  118. package/lib/_components/widget/attachment/Attachment.types.d.ts +87 -0
  119. package/lib/_components/widget/attachment/AttachmentUtils.d.ts +17 -0
  120. package/lib/_components/widget/attachment/attachment.component.d.ts +18 -34
  121. package/lib/_components/widget/case-history/case-history.component.d.ts +0 -1
  122. package/lib/_components/widget/feed-container/feed-container.component.d.ts +2 -3
  123. package/lib/_components/widget/file-utility/file-utility.component.d.ts +3 -2
  124. package/lib/_components/widget/quick-create/quick-create.component.d.ts +0 -1
  125. package/lib/_components/widget/todo/todo.component.d.ts +5 -4
  126. package/lib/_components/widget/utility/utility.component.d.ts +0 -1
  127. package/lib/_helpers/field-group-utils.d.ts +1 -3
  128. package/lib/_helpers/filter-utils.d.ts +1 -3
  129. package/lib/_helpers/formatters/boolean.d.ts +1 -2
  130. package/lib/_helpers/formatters/common.d.ts +1 -1
  131. package/lib/_helpers/formatters/currency.d.ts +1 -2
  132. package/lib/_helpers/formatters/date.d.ts +1 -2
  133. package/lib/_helpers/formatters/index.d.ts +1 -2
  134. package/lib/_helpers/object-utils.d.ts +8 -0
  135. package/lib/_helpers/objectReference-utils.d.ts +6 -0
  136. package/lib/_helpers/semanticLink-utils.d.ts +9 -0
  137. package/lib/_helpers/tab-utils.d.ts +4 -0
  138. package/lib/_helpers/utils.d.ts +13 -1
  139. package/lib/_services/banner.service.d.ts +8 -0
  140. package/lib/_services/case.service.d.ts +1 -1
  141. package/lib/_services/data-reference-advanced-search.service.d.ts +9 -0
  142. package/lib/_services/datapage.service.d.ts +1 -1
  143. package/lib/_services/google-maps-loader.service.d.ts +7 -0
  144. package/package.json +20 -6
  145. package/public-api.d.ts +26 -9
  146. package/esm2022/lib/_bridge/angular-pconnect.mjs +0 -428
  147. package/esm2022/lib/_bridge/component-mapper/component-mapper.component.mjs +0 -107
  148. package/esm2022/lib/_bridge/helpers/sdk-pega-component-map.mjs +0 -239
  149. package/esm2022/lib/_bridge/helpers/sdk_component_map.mjs +0 -142
  150. package/esm2022/lib/_components/designSystemExtension/alert/alert.component.mjs +0 -50
  151. package/esm2022/lib/_components/designSystemExtension/alert-banner/alert-banner.component.mjs +0 -29
  152. package/esm2022/lib/_components/designSystemExtension/banner/banner.component.mjs +0 -31
  153. package/esm2022/lib/_components/designSystemExtension/case-create-stage/case-create-stage.component.mjs +0 -51
  154. package/esm2022/lib/_components/designSystemExtension/field-group/field-group.component.mjs +0 -31
  155. package/esm2022/lib/_components/designSystemExtension/material-case-summary/material-case-summary.component.mjs +0 -83
  156. package/esm2022/lib/_components/designSystemExtension/material-details/material-details.component.mjs +0 -37
  157. package/esm2022/lib/_components/designSystemExtension/material-details-fields/material-details-fields.component.mjs +0 -34
  158. package/esm2022/lib/_components/designSystemExtension/material-summary-item/material-summary-item.component.mjs +0 -36
  159. package/esm2022/lib/_components/designSystemExtension/material-summary-list/material-summary-list.component.mjs +0 -25
  160. package/esm2022/lib/_components/designSystemExtension/material-utility/material-utility.component.mjs +0 -28
  161. package/esm2022/lib/_components/designSystemExtension/material-vertical-tabs/material-vertical-tabs.component.mjs +0 -42
  162. package/esm2022/lib/_components/designSystemExtension/operator/operator.component.mjs +0 -143
  163. package/esm2022/lib/_components/designSystemExtension/pulse/pulse.component.mjs +0 -33
  164. package/esm2022/lib/_components/designSystemExtension/rich-text-editor/rich-text-editor.component.mjs +0 -93
  165. package/esm2022/lib/_components/designSystemExtension/wss-quick-create/wss-quick-create.component.mjs +0 -18
  166. package/esm2022/lib/_components/field/auto-complete/auto-complete.component.mjs +0 -288
  167. package/esm2022/lib/_components/field/cancel-alert/cancel-alert.component.mjs +0 -96
  168. package/esm2022/lib/_components/field/check-box/check-box.component.mjs +0 -225
  169. package/esm2022/lib/_components/field/currency/currency.component.mjs +0 -190
  170. package/esm2022/lib/_components/field/date/date.component.mjs +0 -205
  171. package/esm2022/lib/_components/field/date-time/date-time.component.mjs +0 -183
  172. package/esm2022/lib/_components/field/decimal/decimal.component.mjs +0 -187
  173. package/esm2022/lib/_components/field/dropdown/dropdown.component.mjs +0 -292
  174. package/esm2022/lib/_components/field/email/email.component.mjs +0 -157
  175. package/esm2022/lib/_components/field/group/group.component.mjs +0 -64
  176. package/esm2022/lib/_components/field/integer/integer.component.mjs +0 -160
  177. package/esm2022/lib/_components/field/list-view-action-buttons/list-view-action-buttons.component.mjs +0 -44
  178. package/esm2022/lib/_components/field/multiselect/multiselect.component.mjs +0 -314
  179. package/esm2022/lib/_components/field/multiselect/utils.mjs +0 -187
  180. package/esm2022/lib/_components/field/percentage/percentage.component.mjs +0 -182
  181. package/esm2022/lib/_components/field/phone/phone.component.mjs +0 -160
  182. package/esm2022/lib/_components/field/radio-buttons/radio-buttons.component.mjs +0 -182
  183. package/esm2022/lib/_components/field/rich-text/rich-text.component.mjs +0 -102
  184. package/esm2022/lib/_components/field/scalar-list/scalar-list.component.mjs +0 -95
  185. package/esm2022/lib/_components/field/semantic-link/semantic-link.component.mjs +0 -57
  186. package/esm2022/lib/_components/field/text/text.component.mjs +0 -140
  187. package/esm2022/lib/_components/field/text-area/text-area.component.mjs +0 -157
  188. package/esm2022/lib/_components/field/text-content/text-content.component.mjs +0 -69
  189. package/esm2022/lib/_components/field/text-input/text-input.component.mjs +0 -157
  190. package/esm2022/lib/_components/field/time/time.component.mjs +0 -162
  191. package/esm2022/lib/_components/field/url/url.component.mjs +0 -157
  192. package/esm2022/lib/_components/field/user-reference/user-reference.component.mjs +0 -207
  193. package/esm2022/lib/_components/infra/Containers/base-components/flow-container-base.component.mjs +0 -18
  194. package/esm2022/lib/_components/infra/Containers/base-components/helper.mjs +0 -71
  195. package/esm2022/lib/_components/infra/Containers/flow-container/flow-container.component.mjs +0 -490
  196. package/esm2022/lib/_components/infra/Containers/flow-container/helpers.mjs +0 -68
  197. package/esm2022/lib/_components/infra/Containers/hybrid-view-container/hybrid-view-container.component.mjs +0 -24
  198. package/esm2022/lib/_components/infra/Containers/modal-view-container/modal-view-container.component.mjs +0 -342
  199. package/esm2022/lib/_components/infra/Containers/preview-view-container/preview-view-container.component.mjs +0 -32
  200. package/esm2022/lib/_components/infra/Containers/view-container/helper.mjs +0 -22
  201. package/esm2022/lib/_components/infra/Containers/view-container/view-container.component.mjs +0 -211
  202. package/esm2022/lib/_components/infra/action-buttons/action-buttons.component.mjs +0 -31
  203. package/esm2022/lib/_components/infra/assignment/assignment.component.mjs +0 -382
  204. package/esm2022/lib/_components/infra/assignment-card/assignment-card.component.mjs +0 -47
  205. package/esm2022/lib/_components/infra/dashboard-filter/dashboard-filter.component.mjs +0 -87
  206. package/esm2022/lib/_components/infra/defer-load/defer-load.component.mjs +0 -141
  207. package/esm2022/lib/_components/infra/error-boundary/error-boundary.component.mjs +0 -18
  208. package/esm2022/lib/_components/infra/multi-step/multi-step.component.mjs +0 -80
  209. package/esm2022/lib/_components/infra/navbar/navbar.component.mjs +0 -136
  210. package/esm2022/lib/_components/infra/reference/reference.component.mjs +0 -133
  211. package/esm2022/lib/_components/infra/region/region.component.mjs +0 -33
  212. package/esm2022/lib/_components/infra/root-container/root-container.component.mjs +0 -228
  213. package/esm2022/lib/_components/infra/stages/stages.component.mjs +0 -62
  214. package/esm2022/lib/_components/infra/view/view.component.mjs +0 -188
  215. package/esm2022/lib/_components/template/app-shell/app-shell.component.mjs +0 -156
  216. package/esm2022/lib/_components/template/banner-page/banner-page.component.mjs +0 -43
  217. package/esm2022/lib/_components/template/base/details-template-base.mjs +0 -56
  218. package/esm2022/lib/_components/template/base/form-template-base.mjs +0 -13
  219. package/esm2022/lib/_components/template/case-summary/case-summary.component.mjs +0 -101
  220. package/esm2022/lib/_components/template/case-view/case-view.component.mjs +0 -185
  221. package/esm2022/lib/_components/template/confirmation/confirmation.component.mjs +0 -68
  222. package/esm2022/lib/_components/template/data-reference/data-reference.component.mjs +0 -242
  223. package/esm2022/lib/_components/template/default-form/default-form.component.mjs +0 -49
  224. package/esm2022/lib/_components/template/details/details.component.mjs +0 -76
  225. package/esm2022/lib/_components/template/details-narrow-wide/details-narrow-wide.component.mjs +0 -45
  226. package/esm2022/lib/_components/template/details-one-column/details-one-column.component.mjs +0 -42
  227. package/esm2022/lib/_components/template/details-sub-tabs/details-sub-tabs.component.mjs +0 -39
  228. package/esm2022/lib/_components/template/details-three-column/details-three-column.component.mjs +0 -51
  229. package/esm2022/lib/_components/template/details-two-column/details-two-column.component.mjs +0 -48
  230. package/esm2022/lib/_components/template/details-wide-narrow/details-wide-narrow.component.mjs +0 -48
  231. package/esm2022/lib/_components/template/dynamic-tabs/dynamic-tabs.component.mjs +0 -65
  232. package/esm2022/lib/_components/template/field-group-list/field-group-list.component.mjs +0 -23
  233. package/esm2022/lib/_components/template/field-group-template/field-group-template.component.mjs +0 -122
  234. package/esm2022/lib/_components/template/field-value-list/field-value-list.component.mjs +0 -24
  235. package/esm2022/lib/_components/template/inline-dashboard/inline-dashboard.component.mjs +0 -22
  236. package/esm2022/lib/_components/template/inline-dashboard-page/inline-dashboard-page.component.mjs +0 -40
  237. package/esm2022/lib/_components/template/list-page/list-page.component.mjs +0 -14
  238. package/esm2022/lib/_components/template/list-view/DefaultViewMeta.mjs +0 -208
  239. package/esm2022/lib/_components/template/list-view/list-view.component.mjs +0 -1217
  240. package/esm2022/lib/_components/template/list-view/listViewHelpers.mjs +0 -60
  241. package/esm2022/lib/_components/template/list-view/utils.mjs +0 -662
  242. package/esm2022/lib/_components/template/multi-reference-readonly/multi-reference-readonly.component.mjs +0 -44
  243. package/esm2022/lib/_components/template/narrow-wide-form/narrow-wide-form.component.mjs +0 -30
  244. package/esm2022/lib/_components/template/one-column/one-column.component.mjs +0 -31
  245. package/esm2022/lib/_components/template/one-column-page/one-column-page.component.mjs +0 -16
  246. package/esm2022/lib/_components/template/one-column-tab/one-column-tab.component.mjs +0 -30
  247. package/esm2022/lib/_components/template/page/page.component.mjs +0 -52
  248. package/esm2022/lib/_components/template/promoted-filters/promoted-filters.component.mjs +0 -149
  249. package/esm2022/lib/_components/template/repeating-structures/repeating-structures.component.mjs +0 -138
  250. package/esm2022/lib/_components/template/simple-table/simple-table.component.mjs +0 -104
  251. package/esm2022/lib/_components/template/simple-table-manual/helpers.mjs +0 -270
  252. package/esm2022/lib/_components/template/simple-table-manual/simple-table-manual.component.mjs +0 -779
  253. package/esm2022/lib/_components/template/simple-table-select/simple-table-select.component.mjs +0 -129
  254. package/esm2022/lib/_components/template/single-reference-readonly/single-reference-readonly.component.mjs +0 -16
  255. package/esm2022/lib/_components/template/sub-tabs/sub-tabs.component.mjs +0 -67
  256. package/esm2022/lib/_components/template/three-column/three-column.component.mjs +0 -31
  257. package/esm2022/lib/_components/template/three-column-page/three-column-page.component.mjs +0 -16
  258. package/esm2022/lib/_components/template/two-column/two-column.component.mjs +0 -31
  259. package/esm2022/lib/_components/template/two-column-page/two-column-page.component.mjs +0 -40
  260. package/esm2022/lib/_components/template/two-column-tab/two-column-tab.component.mjs +0 -30
  261. package/esm2022/lib/_components/template/utils.mjs +0 -22
  262. package/esm2022/lib/_components/template/wide-narrow-form/wide-narrow-form.component.mjs +0 -31
  263. package/esm2022/lib/_components/template/wide-narrow-page/wide-narrow-page.component.mjs +0 -53
  264. package/esm2022/lib/_components/template/wss-nav-bar/wss-nav-bar.component.mjs +0 -137
  265. package/esm2022/lib/_components/widget/app-announcement/app-announcement.component.mjs +0 -24
  266. package/esm2022/lib/_components/widget/attachment/attachment.component.mjs +0 -393
  267. package/esm2022/lib/_components/widget/case-history/case-history.component.mjs +0 -80
  268. package/esm2022/lib/_components/widget/feed-container/feed-container.component.mjs +0 -521
  269. package/esm2022/lib/_components/widget/file-utility/file-utility.component.mjs +0 -638
  270. package/esm2022/lib/_components/widget/list-utility/list-utility.component.mjs +0 -57
  271. package/esm2022/lib/_components/widget/quick-create/quick-create.component.mjs +0 -75
  272. package/esm2022/lib/_components/widget/todo/todo.component.mjs +0 -228
  273. package/esm2022/lib/_components/widget/utility/utility.component.mjs +0 -34
  274. package/esm2022/lib/_directives/thousand-seperator.directive.mjs +0 -28
  275. package/esm2022/lib/_helpers/case-utils.mjs +0 -71
  276. package/esm2022/lib/_helpers/common.mjs +0 -20
  277. package/esm2022/lib/_helpers/createstage-utils.mjs +0 -15
  278. package/esm2022/lib/_helpers/currency-utils.mjs +0 -57
  279. package/esm2022/lib/_helpers/date-format-utils.mjs +0 -68
  280. package/esm2022/lib/_helpers/event-util.mjs +0 -18
  281. package/esm2022/lib/_helpers/field-group-utils.mjs +0 -47
  282. package/esm2022/lib/_helpers/filter-utils.mjs +0 -105
  283. package/esm2022/lib/_helpers/formatters/boolean.mjs +0 -20
  284. package/esm2022/lib/_helpers/formatters/common.mjs +0 -14
  285. package/esm2022/lib/_helpers/formatters/currency-map.mjs +0 -903
  286. package/esm2022/lib/_helpers/formatters/currency.mjs +0 -68
  287. package/esm2022/lib/_helpers/formatters/date.mjs +0 -69
  288. package/esm2022/lib/_helpers/formatters/format-utils.mjs +0 -68
  289. package/esm2022/lib/_helpers/formatters/index.mjs +0 -124
  290. package/esm2022/lib/_helpers/instructions-utils.mjs +0 -36
  291. package/esm2022/lib/_helpers/tab-utils.mjs +0 -59
  292. package/esm2022/lib/_helpers/template-utils.mjs +0 -56
  293. package/esm2022/lib/_helpers/utils.mjs +0 -386
  294. package/esm2022/lib/_helpers/versionHelpers.mjs +0 -12
  295. package/esm2022/lib/_messages/error-messages.service.mjs +0 -31
  296. package/esm2022/lib/_messages/progress-spinner.service.mjs +0 -30
  297. package/esm2022/lib/_messages/update-worklist.service.mjs +0 -30
  298. package/esm2022/lib/_services/case.service.mjs +0 -32
  299. package/esm2022/lib/_services/datapage.service.mjs +0 -52
  300. package/esm2022/lib/_services/endpoints.mjs +0 -60
  301. package/esm2022/lib/_services/server-config.service.mjs +0 -52
  302. package/esm2022/lib/_types/PConnProps.interface.mjs +0 -2
  303. package/esm2022/pega-angular-sdk-components.mjs +0 -5
  304. package/esm2022/public-api.mjs +0 -141
  305. package/esm2022/sdk-local-component-map.mjs +0 -9
@@ -1,382 +0,0 @@
1
- /* eslint-disable no-case-declarations */
2
- import { Component, Input, forwardRef } from '@angular/core';
3
- import { CommonModule } from '@angular/common';
4
- import { MatSnackBarModule } from '@angular/material/snack-bar';
5
- import { ReferenceComponent } from '../../infra/reference/reference.component';
6
- import { ComponentMapperComponent } from '../../../_bridge/component-mapper/component-mapper.component';
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "../../../_bridge/angular-pconnect";
9
- import * as i2 from "../../../_messages/progress-spinner.service";
10
- import * as i3 from "../../../_messages/error-messages.service";
11
- import * as i4 from "@angular/material/snack-bar";
12
- import * as i5 from "@angular/common";
13
- export class AssignmentComponent {
14
- constructor(angularPConnect, psService, erService, ngZone, snackBar) {
15
- this.angularPConnect = angularPConnect;
16
- this.psService = psService;
17
- this.erService = erService;
18
- this.ngZone = ngZone;
19
- this.snackBar = snackBar;
20
- this.isInModal$ = false;
21
- // For interaction with AngularPConnect
22
- this.angularPConnectData = {};
23
- this.bInitialized = false;
24
- this.bHasNavigation$ = false;
25
- this.bIsVertical$ = false;
26
- this.arCurrentStepIndicies$ = [];
27
- this.arNavigationSteps$ = [];
28
- // itemKey: string = ""; // JA - this is what Nebula/Constellation uses to pass to finishAssignment, navigateToStep
29
- this.bReInit = false;
30
- this.localeCategory = 'Assignment';
31
- }
32
- ngOnInit() {
33
- // First thing in initialization is registering and subscribing to the AngularPConnect service
34
- this.angularPConnectData = this.angularPConnect.registerAndSubscribeComponent(this, this.onStateChange);
35
- this.initComponent();
36
- this.angularPConnect.shouldComponentUpdate(this);
37
- this.bInitialized = true;
38
- this.localizedVal = PCore.getLocaleUtils().getLocaleValue;
39
- this.localeReference = `${this.pConn$.getCaseInfo().getClassName()}!CASE!${this.pConn$.getCaseInfo().getName()}`.toUpperCase();
40
- }
41
- ngOnDestroy() {
42
- if (this.angularPConnectData.unsubscribeFn) {
43
- this.angularPConnectData.unsubscribeFn();
44
- }
45
- }
46
- // Callback passed when subscribing to store change
47
- onStateChange() {
48
- this.checkAndUpdate();
49
- }
50
- checkAndUpdate() {
51
- // Should always check the bridge to see if the component should update itself (re-render)
52
- const bUpdateSelf = this.angularPConnect.shouldComponentUpdate(this);
53
- // ONLY call updateSelf when the component should update
54
- // AND removing the "gate" that was put there since shouldComponentUpdate
55
- // should be the real "gate"
56
- if (bUpdateSelf) {
57
- let loadingInfo;
58
- try {
59
- // loadingInfo = this.pConn$.getLoadingStatus();
60
- loadingInfo = this.newPConn$.getLoadingStatus();
61
- this.psService.sendMessage(loadingInfo);
62
- }
63
- catch (ex) {
64
- /* empty */
65
- }
66
- }
67
- }
68
- ngOnChanges() {
69
- if (this.bInitialized) {
70
- this.updateChanges();
71
- }
72
- }
73
- updateChanges() {
74
- // pConn$ may be a 'reference' component, so normalize it
75
- this.newPConn$ = ReferenceComponent.normalizePConn(this.pConn$);
76
- if (this.arChildren$) {
77
- this.createButtons();
78
- }
79
- }
80
- initComponent() {
81
- // pConn$ may be a 'reference' component, so normalize it
82
- // this.pConn$ = ReferenceComponent.normalizePConn(this.pConn$);
83
- this.newPConn$ = ReferenceComponent.normalizePConn(this.pConn$);
84
- // prevent re-intializing with flowContainer update unless an action is taken
85
- this.bReInit = false;
86
- this.bHasNavigation$ = false;
87
- // this.configProps$ = this.pConn$.resolveConfigProps(this.pConn$.getConfigProps());
88
- this.configProps$ = this.newPConn$.resolveConfigProps(this.newPConn$.getConfigProps());
89
- this.templateName$ = this.configProps$.template;
90
- // create pointers to functions
91
- /*
92
- let containerMgr = this.pConn$.getContainerManager();
93
- let actionsAPI = this.pConn$.getActionsApi();
94
- let baseContext = this.pConn$.getContextName();
95
- let acName = this.pConn$.getContainerName();
96
- */
97
- const actionsAPI = this.newPConn$.getActionsApi();
98
- const baseContext = this.newPConn$.getContextName();
99
- const acName = this.newPConn$.getContainerName();
100
- // for now, in general this should be overridden by updateSelf(), and not be blank
101
- if (this.itemKey$ === '') {
102
- this.itemKey$ = baseContext.concat('/').concat(acName);
103
- }
104
- // this.pConn$.isBoundToState();
105
- this.newPConn$.isBoundToState();
106
- this.init = false;
107
- // store off bound functions to above pointers
108
- this.finishAssignment = actionsAPI.finishAssignment.bind(actionsAPI);
109
- this.navigateToStep = actionsAPI.navigateToStep.bind(actionsAPI);
110
- this.saveAssignment = actionsAPI.saveAssignment.bind(actionsAPI);
111
- this.cancelAssignment = actionsAPI.cancelAssignment.bind(actionsAPI);
112
- this.showPage = actionsAPI.showPage.bind(actionsAPI);
113
- this.cancelCreateStageAssignment = actionsAPI.cancelCreateStageAssignment.bind(actionsAPI);
114
- this.approveCase = actionsAPI.approveCase?.bind(actionsAPI);
115
- this.rejectCase = actionsAPI.rejectCase?.bind(actionsAPI);
116
- if (this.arChildren$) {
117
- this.createButtons();
118
- }
119
- }
120
- createButtons() {
121
- // let oData = this.pConn$.getDataObject();
122
- const oData = this.newPConn$.getDataObject();
123
- // inside
124
- // get fist kid, get the name and displa
125
- // pass first kid to a view container, which will disperse it to a view which will use one column, two column, etc.
126
- const oWorkItem = this.arChildren$[0].getPConnect();
127
- const oWorkData = oWorkItem.getDataObject();
128
- if (oWorkData) {
129
- this.actionsAPI = oWorkItem.getActionsApi();
130
- // this.containerName$ = oWorkMeta["name"];
131
- if (oWorkData.caseInfo && oWorkData.caseInfo.assignments !== null) {
132
- this.containerName$ = oWorkData.caseInfo.assignments?.[0].name;
133
- // get caseInfo
134
- const oCaseInfo = oData.caseInfo;
135
- if (oCaseInfo && oCaseInfo.actionButtons) {
136
- this.arMainButtons$ = oCaseInfo.actionButtons.main;
137
- this.arSecondaryButtons$ = oCaseInfo.actionButtons.secondary;
138
- }
139
- if (oCaseInfo.navigation != null) {
140
- this.createButtonsForMultiStepForm(oCaseInfo);
141
- }
142
- else {
143
- this.bHasNavigation$ = false;
144
- }
145
- }
146
- }
147
- }
148
- createButtonsForMultiStepForm(oCaseInfo) {
149
- this.bHasNavigation$ = true;
150
- if ((oCaseInfo.navigation.template && oCaseInfo.navigation.template.toLowerCase() === 'standard') || oCaseInfo?.navigation?.steps?.length === 1) {
151
- this.bHasNavigation$ = false;
152
- }
153
- else if (oCaseInfo.navigation.template && oCaseInfo.navigation.template.toLowerCase() === 'vertical') {
154
- this.bIsVertical$ = true;
155
- }
156
- else {
157
- this.bIsVertical$ = false;
158
- }
159
- // iterate through steps to find current one(s)
160
- // immutable, so we want to change the local copy, so need to make a copy
161
- this.ngZone.run(() => {
162
- // what comes back now in configObject is the children of the flowContainer
163
- this.arNavigationSteps$ = JSON.parse(JSON.stringify(oCaseInfo.navigation.steps));
164
- this.arNavigationSteps$.forEach(step => {
165
- if (step.name) {
166
- step.name = PCore.getLocaleUtils().getLocaleValue(step.name, undefined, this.localeReference);
167
- }
168
- });
169
- this.arCurrentStepIndicies$ = [];
170
- this.arCurrentStepIndicies$ = this.findCurrentIndicies(this.arNavigationSteps$, this.arCurrentStepIndicies$, 0);
171
- });
172
- }
173
- findCurrentIndicies(arStepperSteps, arIndicies, depth) {
174
- let count = 0;
175
- arStepperSteps.forEach(step => {
176
- if (step.visited_status == 'current') {
177
- arIndicies[depth] = count;
178
- // add in
179
- step.step_status = '';
180
- }
181
- else if (step.visited_status == 'success') {
182
- count++;
183
- step.step_status = 'completed';
184
- }
185
- else {
186
- count++;
187
- step.step_status = '';
188
- }
189
- if (step.steps) {
190
- arIndicies = this.findCurrentIndicies(step.steps, arIndicies, depth + 1);
191
- }
192
- });
193
- return arIndicies;
194
- }
195
- onSaveActionSuccess(data) {
196
- this.actionsAPI.cancelAssignment(this.itemKey$).then(() => {
197
- this.psService.sendMessage(false);
198
- PCore.getPubSubUtils().publish(PCore.getConstants().PUB_SUB_EVENTS.CASE_EVENTS.CREATE_STAGE_SAVED, data);
199
- });
200
- }
201
- onActionButtonClick(oData) {
202
- this.buttonClick(oData.action, oData.buttonType);
203
- }
204
- buttonClick(sAction, sButtonType) {
205
- // right now, done on an individual basis, setting bReInit to true
206
- // upon the next flow container state change, will cause the flow container
207
- // to re-initialize
208
- // this.bReInit =true;
209
- /*
210
- let baseContext = this.pConn$.getContextName();
211
- let acName = this.pConn$.getContainerName();
212
- let itemID = baseContext.concat("/").concat(acName);
213
- */
214
- // const baseContext = this.newPConn$.getContextName();
215
- // const acName = this.newPConn$.getContainerName();
216
- // const itemID = baseContext.concat('/').concat(acName);
217
- if (sButtonType == 'secondary') {
218
- // const stepID = ''; // ???
219
- // need to handle cancel as this.cancel(dispatchInfo)
220
- // this.actionsAPI[sAction](dispatchInfo);
221
- switch (sAction) {
222
- case 'navigateToStep':
223
- this.erService.sendMessage('publish', '');
224
- if (this.formValid()) {
225
- this.bReInit = true;
226
- this.psService.sendMessage(true);
227
- const navigatePromise = this.navigateToStep('previous', this.itemKey$);
228
- navigatePromise
229
- .then(() => {
230
- this.updateChanges();
231
- this.psService.sendMessage(false);
232
- })
233
- .catch(() => {
234
- this.psService.sendMessage(false);
235
- this.snackBar.open(`${this.localizedVal('Navigation failed!', this.localeCategory)}`, 'Ok');
236
- });
237
- }
238
- break;
239
- case 'saveAssignment': {
240
- const caseID = this.pConn$.getCaseInfo().getKey();
241
- const assignmentID = this.pConn$.getCaseInfo().getAssignmentID();
242
- const savePromise = this.saveAssignment(this.itemKey$);
243
- savePromise
244
- .then(() => {
245
- const caseType = this.pConn$.getCaseInfo().c11nEnv.getValue(PCore.getConstants().CASE_INFO.CASE_TYPE_ID);
246
- PCore.getPubSubUtils().publish('cancelPressed');
247
- this.onSaveActionSuccess({ caseType, caseID, assignmentID });
248
- })
249
- .catch(() => {
250
- this.psService.sendMessage(false);
251
- this.snackBar.open(`${this.localizedVal('Save failed', this.localeCategory)}`, 'Ok');
252
- });
253
- break;
254
- }
255
- case 'cancelAssignment':
256
- this.bReInit = true;
257
- this.erService.sendMessage('dismiss', '');
258
- const isAssignmentInCreateStage = this.pConn$.getCaseInfo().isAssignmentInCreateStage();
259
- const isLocalAction = this.pConn$.getCaseInfo().isLocalAction() ||
260
- (PCore.getConstants().CASE_INFO.IS_LOCAL_ACTION && this.pConn$.getValue(PCore.getConstants().CASE_INFO.IS_LOCAL_ACTION));
261
- // check if create stage (modal)
262
- if (isAssignmentInCreateStage && this.isInModal$ && !isLocalAction) {
263
- const cancelPromise = this.cancelCreateStageAssignment(this.itemKey$);
264
- cancelPromise
265
- .then(() => {
266
- this.psService.sendMessage(false);
267
- // PCore.getPubSubUtils().publish(
268
- // PCore.getConstants().PUB_SUB_EVENTS.EVENT_CANCEL);
269
- })
270
- .catch(() => {
271
- this.psService.sendMessage(false);
272
- this.snackBar.open(`${this.localizedVal('Cancel failed!', this.localeCategory)}`, 'Ok');
273
- });
274
- }
275
- else {
276
- this.psService.sendMessage(true);
277
- // publish before cancel pressed, because
278
- // cancel assignment happens "after" cancel assignment happens
279
- PCore.getPubSubUtils().publish('cancelPressed');
280
- const cancelPromise = this.cancelAssignment(this.itemKey$);
281
- cancelPromise
282
- .then(() => {
283
- this.psService.sendMessage(false);
284
- PCore.getPubSubUtils().publish(PCore.getConstants().PUB_SUB_EVENTS.EVENT_CANCEL);
285
- })
286
- .catch(() => {
287
- this.psService.sendMessage(false);
288
- this.snackBar.open(`${this.localizedVal('Cancel failed!', this.localeCategory)}`, 'Ok');
289
- });
290
- }
291
- break;
292
- case 'rejectCase': {
293
- const rejectPromise = this.rejectCase(this.itemKey$);
294
- rejectPromise
295
- .then(() => { })
296
- .catch(() => {
297
- this.psService.sendMessage(false);
298
- this.snackBar.open(`${this.localizedVal('Rejection failed!', this.localeCategory)}`, 'Ok');
299
- });
300
- break;
301
- }
302
- default:
303
- break;
304
- }
305
- }
306
- else if (sButtonType == 'primary') {
307
- switch (sAction) {
308
- case 'finishAssignment':
309
- this.erService.sendMessage('publish', '');
310
- if (this.formValid()) {
311
- this.bReInit = true;
312
- this.psService.sendMessage(true);
313
- const finishPromise = this.finishAssignment(this.itemKey$); // JA - was itemID but Nebula/Constellation uses itemKey
314
- finishPromise
315
- .then(() => {
316
- this.psService.sendMessage(false);
317
- this.updateChanges();
318
- })
319
- .catch(() => {
320
- this.psService.sendMessage(false);
321
- this.snackBar.open(`${this.localizedVal('Submit failed!', this.localeCategory)}`, 'Ok');
322
- });
323
- }
324
- else {
325
- // let snackBarRef = this.snackBar.open("Please fix errors on form.", "Ok");
326
- this.erService.sendMessage('show', this.localizedVal('Please fix errors on form.', this.localeCategory));
327
- }
328
- break;
329
- case 'approveCase': {
330
- const approvePromise = this.approveCase(this.itemKey$);
331
- approvePromise
332
- .then(() => { })
333
- .catch(() => {
334
- this.psService.sendMessage(false);
335
- this.snackBar.open(`${this.localizedVal('Approve failed!', this.localeCategory)}`, 'Ok');
336
- });
337
- break;
338
- }
339
- default:
340
- break;
341
- }
342
- }
343
- }
344
- formValid() {
345
- this.touchAll();
346
- return this.formGroup$.valid;
347
- }
348
- touchAll() {
349
- Object.values(this.formGroup$.controls).forEach((control) => {
350
- control.markAsTouched();
351
- });
352
- }
353
- // eslint-disable-next-line sonarjs/no-identical-functions
354
- topViewRefresh() {
355
- Object.values(this.formGroup$.controls).forEach((control) => {
356
- control.markAsTouched();
357
- });
358
- }
359
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: AssignmentComponent, deps: [{ token: i1.AngularPConnectService }, { token: i2.ProgressSpinnerService }, { token: i3.ErrorMessagesService }, { token: i0.NgZone }, { token: i4.MatSnackBar }], target: i0.ɵɵFactoryTarget.Component }); }
360
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: AssignmentComponent, isStandalone: true, selector: "app-assignment", inputs: { pConn$: "pConn$", formGroup$: "formGroup$", arChildren$: "arChildren$", itemKey$: "itemKey$", isCreateStage$: "isCreateStage$", updateToken$: "updateToken$", isInModal$: "isInModal$", banners: "banners" }, usesOnChanges: true, ngImport: i0, template: "<div>\n <div><component-mapper name=\"AlertBanner\" [props]=\"{ banners }\" [parent]=\"this\"></component-mapper></div>\n <div *ngIf=\"bHasNavigation$\" class=\"psdk-stepper\">\n <component-mapper\n name=\"MultiStep\"\n [props]=\"{\n pConn$: newPConn$,\n formGroup$,\n arChildren$,\n arMainButtons$,\n arSecondaryButtons$,\n bIsVertical$,\n arCurrentStepIndicies$,\n arNavigationSteps$\n }\"\n [parent]=\"this\"\n [outputEvents]=\"{ actionButtonClick: onActionButtonClick }\"\n ></component-mapper>\n </div>\n <div *ngIf=\"!bHasNavigation$\">\n <component-mapper\n name=\"AssignmentCard\"\n [props]=\"{ pConn$: newPConn$, formGroup$, arChildren$, arMainButtons$, arSecondaryButtons$, updateToken$ }\"\n [parent]=\"this\"\n [outputEvents]=\"{ actionButtonClick: onActionButtonClick }\"\n ></component-mapper>\n </div>\n</div>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i5.NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatSnackBarModule) }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
361
- }
362
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: AssignmentComponent, decorators: [{
363
- type: Component,
364
- args: [{ selector: 'app-assignment', standalone: true, imports: [CommonModule, MatSnackBarModule, forwardRef(() => ComponentMapperComponent)], template: "<div>\n <div><component-mapper name=\"AlertBanner\" [props]=\"{ banners }\" [parent]=\"this\"></component-mapper></div>\n <div *ngIf=\"bHasNavigation$\" class=\"psdk-stepper\">\n <component-mapper\n name=\"MultiStep\"\n [props]=\"{\n pConn$: newPConn$,\n formGroup$,\n arChildren$,\n arMainButtons$,\n arSecondaryButtons$,\n bIsVertical$,\n arCurrentStepIndicies$,\n arNavigationSteps$\n }\"\n [parent]=\"this\"\n [outputEvents]=\"{ actionButtonClick: onActionButtonClick }\"\n ></component-mapper>\n </div>\n <div *ngIf=\"!bHasNavigation$\">\n <component-mapper\n name=\"AssignmentCard\"\n [props]=\"{ pConn$: newPConn$, formGroup$, arChildren$, arMainButtons$, arSecondaryButtons$, updateToken$ }\"\n [parent]=\"this\"\n [outputEvents]=\"{ actionButtonClick: onActionButtonClick }\"\n ></component-mapper>\n </div>\n</div>\n" }]
365
- }], ctorParameters: () => [{ type: i1.AngularPConnectService }, { type: i2.ProgressSpinnerService }, { type: i3.ErrorMessagesService }, { type: i0.NgZone }, { type: i4.MatSnackBar }], propDecorators: { pConn$: [{
366
- type: Input
367
- }], formGroup$: [{
368
- type: Input
369
- }], arChildren$: [{
370
- type: Input
371
- }], itemKey$: [{
372
- type: Input
373
- }], isCreateStage$: [{
374
- type: Input
375
- }], updateToken$: [{
376
- type: Input
377
- }], isInModal$: [{
378
- type: Input
379
- }], banners: [{
380
- type: Input
381
- }] } });
382
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzaWdubWVudC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyLXNkay1jb21wb25lbnRzL3NyYy9saWIvX2NvbXBvbmVudHMvaW5mcmEvYXNzaWdubWVudC9hc3NpZ25tZW50LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy9pbmZyYS9hc3NpZ25tZW50L2Fzc2lnbm1lbnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEseUNBQXlDO0FBQ3pDLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFVLFVBQVUsRUFBd0IsTUFBTSxlQUFlLENBQUM7QUFDbkcsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxpQkFBaUIsRUFBZSxNQUFNLDZCQUE2QixDQUFDO0FBSzdFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQy9FLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhEQUE4RCxDQUFDOzs7Ozs7O0FBY3hHLE1BQU0sT0FBTyxtQkFBbUI7SUFnRDlCLFlBQ1UsZUFBdUMsRUFDdkMsU0FBaUMsRUFDakMsU0FBK0IsRUFDL0IsTUFBYyxFQUNkLFFBQXFCO1FBSnJCLG9CQUFlLEdBQWYsZUFBZSxDQUF3QjtRQUN2QyxjQUFTLEdBQVQsU0FBUyxDQUF3QjtRQUNqQyxjQUFTLEdBQVQsU0FBUyxDQUFzQjtRQUMvQixXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsYUFBUSxHQUFSLFFBQVEsQ0FBYTtRQTlDdEIsZUFBVSxHQUFHLEtBQUssQ0FBQztRQUc1Qix1Q0FBdUM7UUFDdkMsd0JBQW1CLEdBQXdCLEVBQUUsQ0FBQztRQU05QyxpQkFBWSxHQUFHLEtBQUss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QUs7Z0JBQ0csV0FBVztzQkFBbkIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLE9BQU87c0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLWNhc2UtZGVjbGFyYXRpb25zICovXG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIE5nWm9uZSwgZm9yd2FyZFJlZiwgT25EZXN0cm95LCBPbkNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNYXRTbmFja0Jhck1vZHVsZSwgTWF0U25hY2tCYXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zbmFjay1iYXInO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQW5ndWxhclBDb25uZWN0RGF0YSwgQW5ndWxhclBDb25uZWN0U2VydmljZSB9IGZyb20gJy4uLy4uLy4uL19icmlkZ2UvYW5ndWxhci1wY29ubmVjdCc7XG5pbXBvcnQgeyBFcnJvck1lc3NhZ2VzU2VydmljZSB9IGZyb20gJy4uLy4uLy4uL19tZXNzYWdlcy9lcnJvci1tZXNzYWdlcy5zZXJ2aWNlJztcbmltcG9ydCB7IFByb2dyZXNzU3Bpbm5lclNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9fbWVzc2FnZXMvcHJvZ3Jlc3Mtc3Bpbm5lci5zZXJ2aWNlJztcbmltcG9ydCB7IFJlZmVyZW5jZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2luZnJhL3JlZmVyZW5jZS9yZWZlcmVuY2UuY29tcG9uZW50JztcbmltcG9ydCB7IENvbXBvbmVudE1hcHBlckNvbXBvbmVudCB9IGZyb20gJy4uLy4uLy4uL19icmlkZ2UvY29tcG9uZW50LW1hcHBlci9jb21wb25lbnQtbWFwcGVyLmNvbXBvbmVudCc7XG5cbmludGVyZmFjZSBBc3NpZ25tZW50UHJvcHMge1xuICAvLyBJZiBhbnksIGVudGVyIGFkZGl0aW9uYWwgcHJvcHMgdGhhdCBvbmx5IGV4aXN0IG9uIHRoaXMgY29tcG9uZW50XG4gIHRlbXBsYXRlOiBzdHJpbmc7XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1hc3NpZ25tZW50JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Fzc2lnbm1lbnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hc3NpZ25tZW50LmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIE1hdFNuYWNrQmFyTW9kdWxlLCBmb3J3YXJkUmVmKCgpID0+IENvbXBvbmVudE1hcHBlckNvbXBvbmVudCldXG59KVxuZXhwb3J0IGNsYXNzIEFzc2lnbm1lbnRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzIHtcbiAgQElucHV0KCkgcENvbm4kOiB0eXBlb2YgUENvbm5lY3Q7XG4gIEBJbnB1dCgpIGZvcm1Hcm91cCQ6IEZvcm1Hcm91cDtcbiAgQElucHV0KCkgYXJDaGlsZHJlbiQ6IGFueVtdO1xuICBASW5wdXQoKSBpdGVtS2V5JDogc3RyaW5nO1xuICBASW5wdXQoKSBpc0NyZWF0ZVN0YWdlJDogYm9vbGVhbjtcbiAgQElucHV0KCkgdXBkYXRlVG9rZW4kOiBudW1iZXI7XG4gIEBJbnB1dCgpIGlzSW5Nb2RhbCQgPSBmYWxzZTtcbiAgQElucHV0KCkgYmFubmVycztcblxuICAvLyBGb3IgaW50ZXJhY3Rpb24gd2l0aCBBbmd1bGFyUENvbm5lY3RcbiAgYW5ndWxhclBDb25uZWN0RGF0YTogQW5ndWxhclBDb25uZWN0RGF0YSA9IHt9O1xuICBjb25maWdQcm9wcyQ6IEFzc2lnbm1lbnRQcm9wcztcblxuICBuZXdQQ29ubiQ6IGFueTtcbiAgY29udGFpbmVyTmFtZSQ6IHN0cmluZztcblxuICBiSW5pdGlhbGl6ZWQgPSBmYWxzZTtcblxuICB0ZW1wbGF0ZU5hbWUkOiBzdHJpbmc7XG5cbiAgYXJNYWluQnV0dG9ucyQ6IGFueVtdO1xuICBhclNlY29uZGFyeUJ1dHRvbnMkOiBhbnlbXTtcblxuICBhY3Rpb25zQVBJOiBhbnk7XG5cbiAgYkhhc05hdmlnYXRpb24kID0gZmFsc2U7XG4gIGJJc1ZlcnRpY2FsJCA9IGZhbHNlO1xuICBhckN1cnJlbnRTdGVwSW5kaWNpZXMkOiBudW1iZXJbXSA9IFtdO1xuICBhck5hdmlnYXRpb25TdGVwcyQ6IGFueVtdID0gW107XG5cbiAgaW5pdDogYm9vbGVhbjtcbiAgZmluaXNoQXNzaWdubWVudDogYW55O1xuICBuYXZpZ2F0ZVRvU3RlcDogYW55O1xuICBzYXZlQXNzaWdubWVudDogYW55O1xuICBjYW5jZWxBc3NpZ25tZW50OiBhbnk7XG4gIGNhbmNlbENyZWF0ZVN0YWdlQXNzaWdubWVudDogYW55O1xuICBzaG93UGFnZTogYW55O1xuICBhcHByb3ZlQ2FzZTogYW55O1xuICByZWplY3RDYXNlOiBhbnk7XG5cbiAgLy8gaXRlbUtleTogc3RyaW5nID0gXCJcIjsgICAvLyBKQSAtIHRoaXMgaXMgd2hhdCBOZWJ1bGEvQ29uc3RlbGxhdGlvbiB1c2VzIHRvIHBhc3MgdG8gZmluaXNoQXNzaWdubWVudCwgbmF2aWdhdGVUb1N0ZXBcblxuICBiUmVJbml0ID0gZmFsc2U7XG4gIGxvY2FsaXplZFZhbDtcbiAgbG9jYWxlQ2F0ZWdvcnkgPSAnQXNzaWdubWVudCc7XG4gIGxvY2FsZVJlZmVyZW5jZTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGFuZ3VsYXJQQ29ubmVjdDogQW5ndWxhclBDb25uZWN0U2VydmljZSxcbiAgICBwcml2YXRlIHBzU2VydmljZTogUHJvZ3Jlc3NTcGlubmVyU2VydmljZSxcbiAgICBwcml2YXRlIGVyU2VydmljZTogRXJyb3JNZXNzYWdlc1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSxcbiAgICBwcml2YXRlIHNuYWNrQmFyOiBNYXRTbmFja0JhclxuICApIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLy8gRmlyc3QgdGhpbmcgaW4gaW5pdGlhbGl6YXRpb24gaXMgcmVnaXN0ZXJpbmcgYW5kIHN1YnNjcmliaW5nIHRvIHRoZSBBbmd1bGFyUENvbm5lY3Qgc2VydmljZVxuICAgIHRoaXMuYW5ndWxhclBDb25uZWN0RGF0YSA9IHRoaXMuYW5ndWxhclBDb25uZWN0LnJlZ2lzdGVyQW5kU3Vic2NyaWJlQ29tcG9uZW50KHRoaXMsIHRoaXMub25TdGF0ZUNoYW5nZSk7XG5cbiAgICB0aGlzLmluaXRDb21wb25lbnQoKTtcblxuICAgIHRoaXMuYW5ndWxhclBDb25uZWN0LnNob3VsZENvbXBvbmVudFVwZGF0ZSh0aGlzKTtcblxuICAgIHRoaXMuYkluaXRpYWxpemVkID0gdHJ1ZTtcbiAgICB0aGlzLmxvY2FsaXplZFZhbCA9IFBDb3JlLmdldExvY2FsZVV0aWxzKCkuZ2V0TG9jYWxlVmFsdWU7XG4gICAgdGhpcy5sb2NhbGVSZWZlcmVuY2UgPSBgJHt0aGlzLnBDb25uJC5nZXRDYXNlSW5mbygpLmdldENsYXNzTmFtZSgpfSFDQVNFISR7dGhpcy5wQ29ubiQuZ2V0Q2FzZUluZm8oKS5nZXROYW1lKCl9YC50b1VwcGVyQ2FzZSgpO1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKSB7XG4gICAgaWYgKHRoaXMuYW5ndWxhclBDb25uZWN0RGF0YS51bnN1YnNjcmliZUZuKSB7XG4gICAgICB0aGlzLmFuZ3VsYXJQQ29ubmVjdERhdGEudW5zdWJzY3JpYmVGbigpO1xuICAgIH1cbiAgfVxuXG4gIC8vIENhbGxiYWNrIHBhc3NlZCB3aGVuIHN1YnNjcmliaW5nIHRvIHN0b3JlIGNoYW5nZVxuICBvblN0YXRlQ2hhbmdlKCkge1xuICAgIHRoaXMuY2hlY2tBbmRVcGRhdGUoKTtcbiAgfVxuXG4gIGNoZWNrQW5kVXBkYXRlKCkge1xuICAgIC8vIFNob3VsZCBhbHdheXMgY2hlY2sgdGhlIGJyaWRnZSB0byBzZWUgaWYgdGhlIGNvbXBvbmVudCBzaG91bGQgdXBkYXRlIGl0c2VsZiAocmUtcmVuZGVyKVxuICAgIGNvbnN0IGJVcGRhdGVTZWxmID0gdGhpcy5hbmd1bGFyUENvbm5lY3Quc2hvdWxkQ29tcG9uZW50VXBkYXRlKHRoaXMpO1xuXG4gICAgLy8gT05MWSBjYWxsIHVwZGF0ZVNlbGYgd2hlbiB0aGUgY29tcG9uZW50IHNob3VsZCB1cGRhdGVcbiAgICAvLyAgICBBTkQgcmVtb3ZpbmcgdGhlIFwiZ2F0ZVwiIHRoYXQgd2FzIHB1dCB0aGVyZSBzaW5jZSBzaG91bGRDb21wb25lbnRVcGRhdGVcbiAgICAvLyAgICAgIHNob3VsZCBiZSB0aGUgcmVhbCBcImdhdGVcIlxuICAgIGlmIChiVXBkYXRlU2VsZikge1xuICAgICAgbGV0IGxvYWRpbmdJbmZvO1xuICAgICAgdHJ5IHtcbiAgICAgICAgLy8gbG9hZGluZ0luZm8gPSB0aGlzLnBDb25uJC5nZXRMb2FkaW5nU3RhdHVzKCk7XG4gICAgICAgIGxvYWRpbmdJbmZvID0gdGhpcy5uZXdQQ29ubiQuZ2V0TG9hZGluZ1N0YXR1cygpO1xuXG4gICAgICAgIHRoaXMucHNTZXJ2aWNlLnNlbmRNZXNzYWdlKGxvYWRpbmdJbmZvKTtcbiAgICAgIH0gY2F0Y2ggKGV4KSB7XG4gICAgICAgIC8qIGVtcHR5ICovXG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgbmdPbkNoYW5nZXMoKSB7XG4gICAgaWYgKHRoaXMuYkluaXRpYWxpemVkKSB7XG4gICAgICB0aGlzLnVwZGF0ZUNoYW5nZXMoKTtcbiAgICB9XG4gIH1cblxuICB1cGRhdGVDaGFuZ2VzKCkge1xuICAgIC8vIHBDb25uJCBtYXkgYmUgYSAncmVmZXJlbmNlJyBjb21wb25lbnQsIHNvIG5vcm1hbGl6ZSBpdFxuICAgIHRoaXMubmV3UENvbm4kID0gUmVmZXJlbmNlQ29tcG9uZW50Lm5vcm1hbGl6ZVBDb25uKHRoaXMucENvbm4kKTtcblxuICAgIGlmICh0aGlzLmFyQ2hpbGRyZW4kKSB7XG4gICAgICB0aGlzLmNyZWF0ZUJ1dHRvbnMoKTtcbiAgICB9XG4gIH1cblxuICBpbml0Q29tcG9uZW50KCkge1xuICAgIC8vIHBDb25uJCBtYXkgYmUgYSAncmVmZXJlbmNlJyBjb21wb25lbnQsIHNvIG5vcm1hbGl6ZSBpdFxuICAgIC8vIHRoaXMucENvbm4kID0gUmVmZXJlbmNlQ29tcG9uZW50Lm5vcm1hbGl6ZVBDb25uKHRoaXMucENvbm4kKTtcbiAgICB0aGlzLm5ld1BDb25uJCA9IFJlZmVyZW5jZUNvbXBvbmVudC5ub3JtYWxpemVQQ29ubih0aGlzLnBDb25uJCk7XG5cbiAgICAvLyBwcmV2ZW50IHJlLWludGlhbGl6aW5nIHdpdGggZmxvd0NvbnRhaW5lciB1cGRhdGUgdW5sZXNzIGFuIGFjdGlvbiBpcyB0YWtlblxuICAgIHRoaXMuYlJlSW5pdCA9IGZhbHNlO1xuICAgIHRoaXMuYkhhc05hdmlnYXRpb24kID0gZmFsc2U7XG5cbiAgICAvLyB0aGlzLmNvbmZpZ1Byb3BzJCA9IHRoaXMucENvbm4kLnJlc29sdmVDb25maWdQcm9wcyh0aGlzLnBDb25uJC5nZXRDb25maWdQcm9wcygpKTtcbiAgICB0aGlzLmNvbmZpZ1Byb3BzJCA9IHRoaXMubmV3UENvbm4kLnJlc29sdmVDb25maWdQcm9wcyh0aGlzLm5ld1BDb25uJC5nZXRDb25maWdQcm9wcygpKTtcblxuICAgIHRoaXMudGVtcGxhdGVOYW1lJCA9IHRoaXMuY29uZmlnUHJvcHMkLnRlbXBsYXRlO1xuXG4gICAgLy8gY3JlYXRlIHBvaW50ZXJzIHRvIGZ1bmN0aW9uc1xuICAgIC8qXG4gICAgbGV0IGNvbnRhaW5lck1nciA9IHRoaXMucENvbm4kLmdldENvbnRhaW5lck1hbmFnZXIoKTtcbiAgICBsZXQgYWN0aW9uc0FQSSA9IHRoaXMucENvbm4kLmdldEFjdGlvbnNBcGkoKTtcbiAgICBsZXQgYmFzZUNvbnRleHQgPSB0aGlzLnBDb25uJC5nZXRDb250ZXh0TmFtZSgpO1xuICAgIGxldCBhY05hbWUgPSB0aGlzLnBDb25uJC5nZXRDb250YWluZXJOYW1lKCk7XG4gICAgKi9cblxuICAgIGNvbnN0IGFjdGlvbnNBUEkgPSB0aGlzLm5ld1BDb25uJC5nZXRBY3Rpb25zQXBpKCk7XG4gICAgY29uc3QgYmFzZUNvbnRleHQgPSB0aGlzLm5ld1BDb25uJC5nZXRDb250ZXh0TmFtZSgpO1xuICAgIGNvbnN0IGFjTmFtZSA9IHRoaXMubmV3UENvbm4kLmdldENvbnRhaW5lck5hbWUoKTtcblxuICAgIC8vIGZvciBub3csIGluIGdlbmVyYWwgdGhpcyBzaG91bGQgYmUgb3ZlcnJpZGRlbiBieSB1cGRhdGVTZWxmKCksIGFuZCBub3QgYmUgYmxhbmtcbiAgICBpZiAodGhpcy5pdGVtS2V5JCA9PT0gJycpIHtcbiAgICAgIHRoaXMuaXRlbUtleSQgPSBiYXNlQ29udGV4dC5jb25jYXQoJy8nKS5jb25jYXQoYWNOYW1lKTtcbiAgICB9XG5cbiAgICAvLyB0aGlzLnBDb25uJC5pc0JvdW5kVG9TdGF0ZSgpO1xuICAgIHRoaXMubmV3UENvbm4kLmlzQm91bmRUb1N0YXRlKCk7XG5cbiAgICB0aGlzLmluaXQgPSBmYWxzZTtcblxuICAgIC8vIHN0b3JlIG9mZiBib3VuZCBmdW5jdGlvbnMgdG8gYWJvdmUgcG9pbnRlcnNcbiAgICB0aGlzLmZpbmlzaEFzc2lnbm1lbnQgPSBhY3Rpb25zQVBJLmZpbmlzaEFzc2lnbm1lbnQuYmluZChhY3Rpb25zQVBJKTtcbiAgICB0aGlzLm5hdmlnYXRlVG9TdGVwID0gYWN0aW9uc0FQSS5uYXZpZ2F0ZVRvU3RlcC5iaW5kKGFjdGlvbnNBUEkpO1xuICAgIHRoaXMuc2F2ZUFzc2lnbm1lbnQgPSBhY3Rpb25zQVBJLnNhdmVBc3NpZ25tZW50LmJpbmQoYWN0aW9uc0FQSSk7XG4gICAgdGhpcy5jYW5jZWxBc3NpZ25tZW50ID0gYWN0aW9uc0FQSS5jYW5jZWxBc3NpZ25tZW50LmJpbmQoYWN0aW9uc0FQSSk7XG4gICAgdGhpcy5zaG93UGFnZSA9IGFjdGlvbnNBUEkuc2hvd1BhZ2UuYmluZChhY3Rpb25zQVBJKTtcblxuICAgIHRoaXMuY2FuY2VsQ3JlYXRlU3RhZ2VBc3NpZ25tZW50ID0gYWN0aW9uc0FQSS5jYW5jZWxDcmVhdGVTdGFnZUFzc2lnbm1lbnQuYmluZChhY3Rpb25zQVBJKTtcbiAgICB0aGlzLmFwcHJvdmVDYXNlID0gYWN0aW9uc0FQSS5hcHByb3ZlQ2FzZT8uYmluZChhY3Rpb25zQVBJKTtcbiAgICB0aGlzLnJlamVjdENhc2UgPSBhY3Rpb25zQVBJLnJlamVjdENhc2U/LmJpbmQoYWN0aW9uc0FQSSk7XG5cbiAgICBpZiAodGhpcy5hckNoaWxkcmVuJCkge1xuICAgICAgdGhpcy5jcmVhdGVCdXR0b25zKCk7XG4gICAgfVxuICB9XG5cbiAgY3JlYXRlQnV0dG9ucygpIHtcbiAgICAvLyBsZXQgb0RhdGEgPSB0aGlzLnBDb25uJC5nZXREYXRhT2JqZWN0KCk7XG4gICAgY29uc3Qgb0RhdGEgPSB0aGlzLm5ld1BDb25uJC5nZXREYXRhT2JqZWN0KCk7XG5cbiAgICAvLyBpbnNpZGVcbiAgICAvLyBnZXQgZmlzdCBraWQsIGdldCB0aGUgbmFtZSBhbmQgZGlzcGxhXG4gICAgLy8gcGFzcyBmaXJzdCBraWQgdG8gYSB2aWV3IGNvbnRhaW5lciwgd2hpY2ggd2lsbCBkaXNwZXJzZSBpdCB0byBhIHZpZXcgd2hpY2ggd2lsbCB1c2Ugb25lIGNvbHVtbiwgdHdvIGNvbHVtbiwgZXRjLlxuICAgIGNvbnN0IG9Xb3JrSXRlbSA9IHRoaXMuYXJDaGlsZHJlbiRbMF0uZ2V0UENvbm5lY3QoKTtcbiAgICBjb25zdCBvV29ya0RhdGEgPSBvV29ya0l0ZW0uZ2V0RGF0YU9iamVjdCgpO1xuXG4gICAgaWYgKG9Xb3JrRGF0YSkge1xuICAgICAgdGhpcy5hY3Rpb25zQVBJID0gb1dvcmtJdGVtLmdldEFjdGlvbnNBcGkoKTtcblxuICAgICAgLy8gdGhpcy5jb250YWluZXJOYW1lJCA9IG9Xb3JrTWV0YVtcIm5hbWVcIl07XG5cbiAgICAgIGlmIChvV29ya0RhdGEuY2FzZUluZm8gJiYgb1dvcmtEYXRhLmNhc2VJbmZvLmFzc2lnbm1lbnRzICE9PSBudWxsKSB7XG4gICAgICAgIHRoaXMuY29udGFpbmVyTmFtZSQgPSBvV29ya0RhdGEuY2FzZUluZm8uYXNzaWdubWVudHM/LlswXS5uYW1lO1xuXG4gICAgICAgIC8vIGdldCBjYXNlSW5mb1xuICAgICAgICBjb25zdCBvQ2FzZUluZm8gPSBvRGF0YS5jYXNlSW5mbztcblxuICAgICAgICBpZiAob0Nhc2VJbmZvICYmIG9DYXNlSW5mby5hY3Rpb25CdXR0b25zKSB7XG4gICAgICAgICAgdGhpcy5hck1haW5CdXR0b25zJCA9IG9DYXNlSW5mby5hY3Rpb25CdXR0b25zLm1haW47XG4gICAgICAgICAgdGhpcy5hclNlY29uZGFyeUJ1dHRvbnMkID0gb0Nhc2VJbmZvLmFjdGlvbkJ1dHRvbnMuc2Vjb25kYXJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKG9DYXNlSW5mby5uYXZpZ2F0aW9uICE9IG51bGwpIHtcbiAgICAgICAgICB0aGlzLmNyZWF0ZUJ1dHRvbnNGb3JNdWx0aVN0ZXBGb3JtKG9DYXNlSW5mbyk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5iSGFzTmF2aWdhdGlvbiQgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIGNyZWF0ZUJ1dHRvbnNGb3JNdWx0aVN0ZXBGb3JtKG9DYXNlSW5mbykge1xuICAgIHRoaXMuYkhhc05hdmlnYXRpb24kID0gdHJ1ZTtcblxuICAgIGlmICgob0Nhc2VJbmZvLm5hdmlnYXRpb24udGVtcGxhdGUgJiYgb0Nhc2VJbmZvLm5hdmlnYXRpb24udGVtcGxhdGUudG9Mb3dlckNhc2UoKSA9PT0gJ3N0YW5kYXJkJykgfHwgb0Nhc2VJbmZvPy5uYXZpZ2F0aW9uPy5zdGVwcz8ubGVuZ3RoID09PSAxKSB7XG4gICAgICB0aGlzLmJIYXNOYXZpZ2F0aW9uJCA9IGZhbHNlO1xuICAgIH0gZWxzZSBpZiAob0Nhc2VJbmZvLm5hdmlnYXRpb24udGVtcGxhdGUgJiYgb0Nhc2VJbmZvLm5hdmlnYXRpb24udGVtcGxhdGUudG9Mb3dlckNhc2UoKSA9PT0gJ3ZlcnRpY2FsJykge1xuICAgICAgdGhpcy5iSXNWZXJ0aWNhbCQgPSB0cnVlO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmJJc1ZlcnRpY2FsJCA9IGZhbHNlO1xuICAgIH1cblxuICAgIC8vIGl0ZXJhdGUgdGhyb3VnaCBzdGVwcyB0byBmaW5kIGN1cnJlbnQgb25lKHMpXG4gICAgLy8gaW1tdXRhYmxlLCBzbyB3ZSB3YW50IHRvIGNoYW5nZSB0aGUgbG9jYWwgY29weSwgc28gbmVlZCB0byBtYWtlIGEgY29weVxuICAgIHRoaXMubmdab25lLnJ1bigoKSA9PiB7XG4gICAgICAvLyB3aGF0IGNvbWVzIGJhY2sgbm93IGluIGNvbmZpZ09iamVjdCBpcyB0aGUgY2hpbGRyZW4gb2YgdGhlIGZsb3dDb250YWluZXJcbiAgICAgIHRoaXMuYXJOYXZpZ2F0aW9uU3RlcHMkID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShvQ2FzZUluZm8ubmF2aWdhdGlvbi5zdGVwcykpO1xuICAgICAgdGhpcy5hck5hdmlnYXRpb25TdGVwcyQuZm9yRWFjaChzdGVwID0+IHtcbiAgICAgICAgaWYgKHN0ZXAubmFtZSkge1xuICAgICAgICAgIHN0ZXAubmFtZSA9IFBDb3JlLmdldExvY2FsZVV0aWxzKCkuZ2V0TG9jYWxlVmFsdWUoc3RlcC5uYW1lLCB1bmRlZmluZWQsIHRoaXMubG9jYWxlUmVmZXJlbmNlKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgICB0aGlzLmFyQ3VycmVudFN0ZXBJbmRpY2llcyQgPSBbXTtcbiAgICAgIHRoaXMuYXJDdXJyZW50U3RlcEluZGljaWVzJCA9IHRoaXMuZmluZEN1cnJlbnRJbmRpY2llcyh0aGlzLmFyTmF2aWdhdGlvblN0ZXBzJCwgdGhpcy5hckN1cnJlbnRTdGVwSW5kaWNpZXMkLCAwKTtcbiAgICB9KTtcbiAgfVxuXG4gIGZpbmRDdXJyZW50SW5kaWNpZXMoYXJTdGVwcGVyU3RlcHM6IGFueVtdLCBhckluZGljaWVzOiBudW1iZXJbXSwgZGVwdGg6IG51bWJlcik6IG51bWJlcltdIHtcbiAgICBsZXQgY291bnQgPSAwO1xuICAgIGFyU3RlcHBlclN0ZXBzLmZvckVhY2goc3RlcCA9PiB7XG4gICAgICBpZiAoc3RlcC52aXNpdGVkX3N0YXR1cyA9PSAnY3VycmVudCcpIHtcbiAgICAgICAgYXJJbmRpY2llc1tkZXB0aF0gPSBjb3VudDtcblxuICAgICAgICAvLyBhZGQgaW5cbiAgICAgICAgc3RlcC5zdGVwX3N0YXR1cyA9ICcnO1xuICAgICAgfSBlbHNlIGlmIChzdGVwLnZpc2l0ZWRfc3RhdHVzID09ICdzdWNjZXNzJykge1xuICAgICAgICBjb3VudCsrO1xuICAgICAgICBzdGVwLnN0ZXBfc3RhdHVzID0gJ2NvbXBsZXRlZCc7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb3VudCsrO1xuICAgICAgICBzdGVwLnN0ZXBfc3RhdHVzID0gJyc7XG4gICAgICB9XG5cbiAgICAgIGlmIChzdGVwLnN0ZXBzKSB7XG4gICAgICAgIGFySW5kaWNpZXMgPSB0aGlzLmZpbmRDdXJyZW50SW5kaWNpZXMoc3RlcC5zdGVwcywgYXJJbmRpY2llcywgZGVwdGggKyAxKTtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiBhckluZGljaWVzO1xuICB9XG5cbiAgb25TYXZlQWN0aW9uU3VjY2VzcyhkYXRhKSB7XG4gICAgdGhpcy5hY3Rpb25zQVBJLmNhbmNlbEFzc2lnbm1lbnQodGhpcy5pdGVtS2V5JCkudGhlbigoKSA9PiB7XG4gICAgICB0aGlzLnBzU2VydmljZS5zZW5kTWVzc2FnZShmYWxzZSk7XG4gICAgICBQQ29yZS5nZXRQdWJTdWJVdGlscygpLnB1Ymxpc2goUENvcmUuZ2V0Q29uc3RhbnRzKCkuUFVCX1NVQl9FVkVOVFMuQ0FTRV9FVkVOVFMuQ1JFQVRFX1NUQUdFX1NBVkVELCBkYXRhKTtcbiAgICB9KTtcbiAgfVxuXG4gIG9uQWN0aW9uQnV0dG9uQ2xpY2sob0RhdGE6IGFueSkge1xuICAgIHRoaXMuYnV0dG9uQ2xpY2sob0RhdGEuYWN0aW9uLCBvRGF0YS5idXR0b25UeXBlKTtcbiAgfVxuXG4gIGJ1dHRvbkNsaWNrKHNBY3Rpb24sIHNCdXR0b25UeXBlKSB7XG4gICAgLy8gcmlnaHQgbm93LCBkb25lIG9uIGFuIGluZGl2aWR1YWwgYmFzaXMsIHNldHRpbmcgYlJlSW5pdCB0byB0cnVlXG4gICAgLy8gdXBvbiB0aGUgbmV4dCBmbG93IGNvbnRhaW5lciBzdGF0ZSBjaGFuZ2UsIHdpbGwgY2F1c2UgdGhlIGZsb3cgY29udGFpbmVyXG4gICAgLy8gdG8gcmUtaW5pdGlhbGl6ZVxuICAgIC8vIHRoaXMuYlJlSW5pdCA9dHJ1ZTtcblxuICAgIC8qXG4gICAgbGV0IGJhc2VDb250ZXh0ID0gdGhpcy5wQ29ubiQuZ2V0Q29udGV4dE5hbWUoKTtcbiAgICBsZXQgYWNOYW1lID0gdGhpcy5wQ29ubiQuZ2V0Q29udGFpbmVyTmFtZSgpO1xuICAgIGxldCBpdGVtSUQgPSBiYXNlQ29udGV4dC5jb25jYXQoXCIvXCIpLmNvbmNhdChhY05hbWUpO1xuICAgICovXG5cbiAgICAvLyBjb25zdCBiYXNlQ29udGV4dCA9IHRoaXMubmV3UENvbm4kLmdldENvbnRleHROYW1lKCk7XG4gICAgLy8gY29uc3QgYWNOYW1lID0gdGhpcy5uZXdQQ29ubiQuZ2V0Q29udGFpbmVyTmFtZSgpO1xuICAgIC8vIGNvbnN0IGl0ZW1JRCA9IGJhc2VDb250ZXh0LmNvbmNhdCgnLycpLmNvbmNhdChhY05hbWUpO1xuXG4gICAgaWYgKHNCdXR0b25UeXBlID09ICdzZWNvbmRhcnknKSB7XG4gICAgICAvLyBjb25zdCBzdGVwSUQgPSAnJzsgLy8gPz8/XG5cbiAgICAgIC8vIG5lZWQgdG8gaGFuZGxlIGNhbmNlbCBhcyB0aGlzLmNhbmNlbChkaXNwYXRjaEluZm8pXG4gICAgICAvLyB0aGlzLmFjdGlvbnNBUElbc0FjdGlvbl0oZGlzcGF0Y2hJbmZvKTtcbiAgICAgIHN3aXRjaCAoc0FjdGlvbikge1xuICAgICAgICBjYXNlICduYXZpZ2F0ZVRvU3RlcCc6XG4gICAgICAgICAgdGhpcy5lclNlcnZpY2Uuc2VuZE1lc3NhZ2UoJ3B1Ymxpc2gnLCAnJyk7XG4gICAgICAgICAgaWYgKHRoaXMuZm9ybVZhbGlkKCkpIHtcbiAgICAgICAgICAgIHRoaXMuYlJlSW5pdCA9IHRydWU7XG4gICAgICAgICAgICB0aGlzLnBzU2VydmljZS5zZW5kTWVzc2FnZSh0cnVlKTtcblxuICAgICAgICAgICAgY29uc3QgbmF2aWdhdGVQcm9taXNlID0gdGhpcy5uYXZpZ2F0ZVRvU3RlcCgncHJldmlvdXMnLCB0aGlzLml0ZW1LZXkkKTtcbiAgICAgICAgICAgIG5hdmlnYXRlUHJvbWlzZVxuICAgICAgICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy51cGRhdGVDaGFuZ2VzKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5wc1NlcnZpY2Uuc2VuZE1lc3NhZ2UoZmFsc2UpO1xuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAuY2F0Y2goKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMucHNTZXJ2aWNlLnNlbmRNZXNzYWdlKGZhbHNlKTtcbiAgICAgICAgICAgICAgICB0aGlzLnNuYWNrQmFyLm9wZW4oYCR7dGhpcy5sb2NhbGl6ZWRWYWwoJ05hdmlnYXRpb24gZmFpbGVkIScsIHRoaXMubG9jYWxlQ2F0ZWdvcnkpfWAsICdPaycpO1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICB9XG4gICAgICAgICAgYnJlYWs7XG5cbiAgICAgICAgY2FzZSAnc2F2ZUFzc2lnbm1lbnQnOiB7XG4gICAgICAgICAgY29uc3QgY2FzZUlEID0gdGhpcy5wQ29ubiQuZ2V0Q2FzZUluZm8oKS5nZXRLZXkoKTtcbiAgICAgICAgICBjb25zdCBhc3NpZ25tZW50SUQgPSB0aGlzLnBDb25uJC5nZXRDYXNlSW5mbygpLmdldEFzc2lnbm1lbnRJRCgpO1xuICAgICAgICAgIGNvbnN0IHNhdmVQcm9taXNlID0gdGhpcy5zYXZlQXNzaWdubWVudCh0aGlzLml0ZW1LZXkkKTtcblxuICAgICAgICAgIHNhdmVQcm9taXNlXG4gICAgICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGNhc2VUeXBlID0gdGhpcy5wQ29ubiQuZ2V0Q2FzZUluZm8oKS5jMTFuRW52LmdldFZhbHVlKFBDb3JlLmdldENvbnN0YW50cygpLkNBU0VfSU5GTy5DQVNFX1RZUEVfSUQpO1xuICAgICAgICAgICAgICBQQ29yZS5nZXRQdWJTdWJVdGlscygpLnB1Ymxpc2goJ2NhbmNlbFByZXNzZWQnKTtcbiAgICAgICAgICAgICAgdGhpcy5vblNhdmVBY3Rpb25TdWNjZXNzKHsgY2FzZVR5cGUsIGNhc2VJRCwgYXNzaWdubWVudElEIH0pO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICAgIC5jYXRjaCgoKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMucHNTZXJ2aWNlLnNlbmRNZXNzYWdlKGZhbHNlKTtcbiAgICAgICAgICAgICAgdGhpcy5zbmFja0Jhci5vcGVuKGAke3RoaXMubG9jYWxpemVkVmFsKCdTYXZlIGZhaWxlZCcsIHRoaXMubG9jYWxlQ2F0ZWdvcnkpfWAsICdPaycpO1xuICAgICAgICAgICAgfSk7XG5cbiAgICAgICAgICBicmVhaztcbiAgICAgICAgfVxuXG4gICAgICAgIGNhc2UgJ2NhbmNlbEFzc2lnbm1lbnQnOlxuICAgICAgICAgIHRoaXMuYlJlSW5pdCA9IHRydWU7XG4gICAgICAgICAgdGhpcy5lclNlcnZpY2Uuc2VuZE1lc3NhZ2UoJ2Rpc21pc3MnLCAnJyk7XG4gICAgICAgICAgY29uc3QgaXNBc3NpZ25tZW50SW5DcmVhdGVTdGFnZSA9IHRoaXMucENvbm4kLmdldENhc2VJbmZvKCkuaXNBc3NpZ25tZW50SW5DcmVhdGVTdGFnZSgpO1xuICAgICAgICAgIGNvbnN0IGlzTG9jYWxBY3Rpb24gPVxuICAgICAgICAgICAgdGhpcy5wQ29ubiQuZ2V0Q2FzZUluZm8oKS5pc0xvY2FsQWN0aW9uKCkgfHxcbiAgICAgICAgICAgIChQQ29yZS5nZXRDb25zdGFudHMoKS5DQVNFX0lORk8uSVNfTE9DQUxfQUNUSU9OICYmIHRoaXMucENvbm4kLmdldFZhbHVlKFBDb3JlLmdldENvbnN0YW50cygpLkNBU0VfSU5GTy5JU19MT0NBTF9BQ1RJT04pKTtcbiAgICAgICAgICAvLyBjaGVjayBpZiBjcmVhdGUgc3RhZ2UgKG1vZGFsKVxuICAgICAgICAgIGlmIChpc0Fzc2lnbm1lbnRJbkNyZWF0ZVN0YWdlICYmIHRoaXMuaXNJbk1vZGFsJCAmJiAhaXNMb2NhbEFjdGlvbikge1xuICAgICAgICAgICAgY29uc3QgY2FuY2VsUHJvbWlzZSA9IHRoaXMuY2FuY2VsQ3JlYXRlU3RhZ2VBc3NpZ25tZW50KHRoaXMuaXRlbUtleSQpO1xuICAgICAgICAgICAgY2FuY2VsUHJvbWlzZVxuICAgICAgICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5wc1NlcnZpY2Uuc2VuZE1lc3NhZ2UoZmFsc2UpO1xuICAgICAgICAgICAgICAgIC8vIFBDb3JlLmdldFB1YlN1YlV0aWxzKCkucHVibGlzaChcbiAgICAgICAgICAgICAgICAvLyAgIFBDb3JlLmdldENvbnN0YW50cygpLlBVQl9TVUJfRVZFTlRTLkVWRU5UX0NBTkNFTCk7XG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIC5jYXRjaCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5wc1NlcnZpY2Uuc2VuZE1lc3NhZ2UoZmFsc2UpO1xuICAgICAgICAgICAgICAgIHRoaXMuc25hY2tCYXIub3BlbihgJHt0aGlzLmxvY2FsaXplZFZhbCgnQ2FuY2VsIGZhaWxlZCEnLCB0aGlzLmxvY2FsZUNhdGVnb3J5KX1gLCAnT2snKTtcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMucHNTZXJ2aWNlLnNlbmRNZXNzYWdlKHRydWUpO1xuXG4gICAgICAgICAgICAvLyBwdWJsaXNoIGJlZm9yZSBjYW5jZWwgcHJlc3NlZCwgYmVjYXVzZVxuICAgICAgICAgICAgLy8gY2FuY2VsIGFzc2lnbm1lbnQgaGFwcGVucyBcImFmdGVyXCIgY2FuY2VsIGFzc2lnbm1lbnQgaGFwcGVuc1xuICAgICAgICAgICAgUENvcmUuZ2V0UHViU3ViVXRpbHMoKS5wdWJsaXNoKCdjYW5jZWxQcmVzc2VkJyk7XG5cbiAgICAgICAgICAgIGNvbnN0IGNhbmNlbFByb21pc2UgPSB0aGlzLmNhbmNlbEFzc2lnbm1lbnQodGhpcy5pdGVtS2V5JCk7XG4gICAgICAgICAgICBjYW5jZWxQcm9taXNlXG4gICAgICAgICAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnBzU2VydmljZS5zZW5kTWVzc2FnZShmYWxzZSk7XG4gICAgICAgICAgICAgICAgUENvcmUuZ2V0UHViU3ViVXRpbHMoKS5wdWJsaXNoKFBDb3JlLmdldENvbnN0YW50cygpLlBVQl9TVUJfRVZFTlRTLkVWRU5UX0NBTkNFTCk7XG4gICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgIC5jYXRjaCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5wc1NlcnZpY2Uuc2VuZE1lc3NhZ2UoZmFsc2UpO1xuICAgICAgICAgICAgICAgIHRoaXMuc25hY2tCYXIub3BlbihgJHt0aGlzLmxvY2FsaXplZFZhbCgnQ2FuY2VsIGZhaWxlZCEnLCB0aGlzLmxvY2FsZUNhdGVnb3J5KX1gLCAnT2snKTtcbiAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfVxuICAgICAgICAgIGJyZWFrO1xuXG4gICAgICAgIGNhc2UgJ3JlamVjdENhc2UnOiB7XG4gICAgICAgICAgY29uc3QgcmVqZWN0UHJvbWlzZSA9IHRoaXMucmVqZWN0Q2FzZSh0aGlzLml0ZW1LZXkkKTtcblxuICAgICAgICAgIHJlamVjdFByb21pc2VcbiAgICAgICAgICAgIC50aGVuKCgpID0+IHt9KVxuICAgICAgICAgICAgLmNhdGNoKCgpID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5wc1NlcnZpY2Uuc2VuZE1lc3NhZ2UoZmFsc2UpO1xuICAgICAgICAgICAgICB0aGlzLnNuYWNrQmFyLm9wZW4oYCR7dGhpcy5sb2NhbGl6ZWRWYWwoJ1JlamVjdGlvbiBmYWlsZWQhJywgdGhpcy5sb2NhbGVDYXRlZ29yeSl9YCwgJ09rJyk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG5cbiAgICAgICAgZGVmYXVsdDpcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHNCdXR0b25UeXBlID09ICdwcmltYXJ5Jykge1xuICAgICAgc3dpdGNoIChzQWN0aW9uKSB7XG4gICAgICAgIGNhc2UgJ2ZpbmlzaEFzc2lnbm1lbnQnOlxuICAgICAgICAgIHRoaXMuZXJTZXJ2aWNlLnNlbmRNZXNzYWdlKCdwdWJsaXNoJywgJycpO1xuICAgICAgICAgIGlmICh0aGlzLmZvcm1WYWxpZCgpKSB7XG4gICAgICAgICAgICB0aGlzLmJSZUluaXQgPSB0cnVlO1xuICAgICAgICAgICAgdGhpcy5wc1NlcnZpY2Uuc2VuZE1lc3NhZ2UodHJ1ZSk7XG4gICAgICAgICAgICBjb25zdCBmaW5pc2hQcm9taXNlID0gdGhpcy5maW5pc2hBc3NpZ25tZW50KHRoaXMuaXRlbUtleSQpOyAvLyBKQSAtIHdhcyBpdGVtSUQgYnV0IE5lYnVsYS9Db25zdGVsbGF0aW9uIHVzZXMgaXRlbUtleVxuICAgICAgICAgICAgZmluaXNoUHJvbWlzZVxuICAgICAgICAgICAgICAudGhlbigoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5wc1NlcnZpY2Uuc2VuZE1lc3NhZ2UoZmFsc2UpO1xuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlQ2hhbmdlcygpO1xuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgICAuY2F0Y2goKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMucHNTZXJ2aWNlLnNlbmRNZXNzYWdlKGZhbHNlKTtcbiAgICAgICAgICAgICAgICB0aGlzLnNuYWNrQmFyLm9wZW4oYCR7dGhpcy5sb2NhbGl6ZWRWYWwoJ1N1Ym1pdCBmYWlsZWQhJywgdGhpcy5sb2NhbGVDYXRlZ29yeSl9YCwgJ09rJyk7XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAvLyBsZXQgc25hY2tCYXJSZWYgPSB0aGlzLnNuYWNrQmFyLm9wZW4oXCJQbGVhc2UgZml4IGVycm9ycyBvbiBmb3JtLlwiLCAgXCJPa1wiKTtcbiAgICAgICAgICAgIHRoaXMuZXJTZXJ2aWNlLnNlbmRNZXNzYWdlKCdzaG93JywgdGhpcy5sb2NhbGl6ZWRWYWwoJ1BsZWFzZSBmaXggZXJyb3JzIG9uIGZvcm0uJywgdGhpcy5sb2NhbGVDYXRlZ29yeSkpO1xuICAgICAgICAgIH1cbiAgICAgICAgICBicmVhaztcblxuICAgICAgICBjYXNlICdhcHByb3ZlQ2FzZSc6IHtcbiAgICAgICAgICBjb25zdCBhcHByb3ZlUHJvbWlzZSA9IHRoaXMuYXBwcm92ZUNhc2UodGhpcy5pdGVtS2V5JCk7XG5cbiAgICAgICAgICBhcHByb3ZlUHJvbWlzZVxuICAgICAgICAgICAgLnRoZW4oKCkgPT4ge30pXG4gICAgICAgICAgICAuY2F0Y2goKCkgPT4ge1xuICAgICAgICAgICAgICB0aGlzLnBzU2VydmljZS5zZW5kTWVzc2FnZShmYWxzZSk7XG4gICAgICAgICAgICAgIHRoaXMuc25hY2tCYXIub3BlbihgJHt0aGlzLmxvY2FsaXplZFZhbCgnQXBwcm92ZSBmYWlsZWQhJywgdGhpcy5sb2NhbGVDYXRlZ29yeSl9YCwgJ09rJyk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICAgIGJyZWFrO1xuICAgICAgICB9XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgZm9ybVZhbGlkKCk6IGJvb2xlYW4ge1xuICAgIHRoaXMudG91Y2hBbGwoKTtcbiAgICByZXR1cm4gdGhpcy5mb3JtR3JvdXAkLnZhbGlkO1xuICB9XG5cbiAgdG91Y2hBbGwoKTogdm9pZCB7XG4gICAgT2JqZWN0LnZhbHVlcyh0aGlzLmZvcm1Hcm91cCQuY29udHJvbHMpLmZvckVhY2goKGNvbnRyb2w6IGFueSkgPT4ge1xuICAgICAgY29udHJvbC5tYXJrQXNUb3VjaGVkKCk7XG4gICAgfSk7XG4gIH1cblxuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgc29uYXJqcy9uby1pZGVudGljYWwtZnVuY3Rpb25zXG4gIHRvcFZpZXdSZWZyZXNoKCk6IHZvaWQge1xuICAgIE9iamVjdC52YWx1ZXModGhpcy5mb3JtR3JvdXAkLmNvbnRyb2xzKS5mb3JFYWNoKChjb250cm9sOiBhbnkpID0+IHtcbiAgICAgIGNvbnRyb2wubWFya0FzVG91Y2hlZCgpO1xuICAgIH0pO1xuICB9XG59XG4iLCI8ZGl2PlxuICA8ZGl2Pjxjb21wb25lbnQtbWFwcGVyIG5hbWU9XCJBbGVydEJhbm5lclwiIFtwcm9wc109XCJ7IGJhbm5lcnMgfVwiIFtwYXJlbnRdPVwidGhpc1wiPjwvY29tcG9uZW50LW1hcHBlcj48L2Rpdj5cbiAgPGRpdiAqbmdJZj1cImJIYXNOYXZpZ2F0aW9uJFwiIGNsYXNzPVwicHNkay1zdGVwcGVyXCI+XG4gICAgPGNvbXBvbmVudC1tYXBwZXJcbiAgICAgIG5hbWU9XCJNdWx0aVN0ZXBcIlxuICAgICAgW3Byb3BzXT1cIntcbiAgICAgICAgcENvbm4kOiBuZXdQQ29ubiQsXG4gICAgICAgIGZvcm1Hcm91cCQsXG4gICAgICAgIGFyQ2hpbGRyZW4kLFxuICAgICAgICBhck1haW5CdXR0b25zJCxcbiAgICAgICAgYXJTZWNvbmRhcnlCdXR0b25zJCxcbiAgICAgICAgYklzVmVydGljYWwkLFxuICAgICAgICBhckN1cnJlbnRTdGVwSW5kaWNpZXMkLFxuICAgICAgICBhck5hdmlnYXRpb25TdGVwcyRcbiAgICAgIH1cIlxuICAgICAgW3BhcmVudF09XCJ0aGlzXCJcbiAgICAgIFtvdXRwdXRFdmVudHNdPVwieyBhY3Rpb25CdXR0b25DbGljazogb25BY3Rpb25CdXR0b25DbGljayB9XCJcbiAgICA+PC9jb21wb25lbnQtbWFwcGVyPlxuICA8L2Rpdj5cbiAgPGRpdiAqbmdJZj1cIiFiSGFzTmF2aWdhdGlvbiRcIj5cbiAgICA8Y29tcG9uZW50LW1hcHBlclxuICAgICAgbmFtZT1cIkFzc2lnbm1lbnRDYXJkXCJcbiAgICAgIFtwcm9wc109XCJ7IHBDb25uJDogbmV3UENvbm4kLCBmb3JtR3JvdXAkLCBhckNoaWxkcmVuJCwgYXJNYWluQnV0dG9ucyQsIGFyU2Vjb25kYXJ5QnV0dG9ucyQsIHVwZGF0ZVRva2VuJCB9XCJcbiAgICAgIFtwYXJlbnRdPVwidGhpc1wiXG4gICAgICBbb3V0cHV0RXZlbnRzXT1cInsgYWN0aW9uQnV0dG9uQ2xpY2s6IG9uQWN0aW9uQnV0dG9uQ2xpY2sgfVwiXG4gICAgPjwvY29tcG9uZW50LW1hcHBlcj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
@@ -1,47 +0,0 @@
1
- import { Component, Input, Output, EventEmitter, forwardRef } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { ReactiveFormsModule } from '@angular/forms';
4
- import { ReferenceComponent } from '../reference/reference.component';
5
- import { ComponentMapperComponent } from '../../../_bridge/component-mapper/component-mapper.component';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/common";
8
- import * as i2 from "@angular/forms";
9
- export class AssignmentCardComponent {
10
- constructor() {
11
- this.actionButtonClick = new EventEmitter();
12
- }
13
- ngOnInit() {
14
- // Children may contain 'reference' component, so we need to
15
- // normalize them
16
- this.arChildren$ = ReferenceComponent.normalizePConnArray(this.arChildren$);
17
- }
18
- ngOnChanges() {
19
- // Children may contain 'reference' component, so we need to
20
- // normalize them
21
- this.arChildren$ = ReferenceComponent.normalizePConnArray(this.arChildren$);
22
- }
23
- onActionButtonClick(oData) {
24
- this.actionButtonClick.emit(oData);
25
- }
26
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: AssignmentCardComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
27
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.12", type: AssignmentCardComponent, isStandalone: true, selector: "app-assignment-card", inputs: { pConn$: "pConn$", formGroup$: "formGroup$", arMainButtons$: "arMainButtons$", arSecondaryButtons$: "arSecondaryButtons$", arChildren$: "arChildren$", updateToken$: "updateToken$" }, outputs: { actionButtonClick: "actionButtonClick" }, usesOnChanges: true, ngImport: i0, template: "<form [formGroup]=\"formGroup$\" name=\"flowContainer\" class=\"psdk-flow-container\">\n <div *ngFor=\"let kid of arChildren$\">\n <div [ngSwitch]=\"kid.getPConnect().getComponentName()\">\n <component-mapper *ngSwitchCase=\"'View'\" name=\"View\" [props]=\"{ formGroup$, pConn$: kid.getPConnect() }\"></component-mapper>\n <component-mapper\n *ngSwitchCase=\"'CaseCreateStage'\"\n name=\"CaseCreateStage\"\n [props]=\"{ formGroup$, pConn$: kid.getPConnect() }\"\n ></component-mapper>\n <component-mapper *ngSwitchCase=\"'Region'\" name=\"Region\" [props]=\"{ formGroup$, pConn$: kid.getPConnect() }\"></component-mapper>\n <div *ngSwitchDefault>Assignment Card wants component not yet available: {{ kid.getPConnect().getComponentName() }}</div>\n </div>\n </div>\n</form>\n\n<div>\n <br />\n <div class=\"psdk-case-view-divider\"></div>\n\n <component-mapper\n name=\"ActionButtons\"\n [props]=\"{ arMainButtons$, arSecondaryButtons$ }\"\n [parent]=\"this\"\n [outputEvents]=\"{ actionButtonClick: onActionButtonClick }\"\n ></component-mapper>\n</div>\n", styles: [".psdk-case-view-divider{border-bottom:.0625rem solid var(--app-neutral-light-color)}.psdk-flow-container{padding:0rem 1rem}\n"], dependencies: [{ kind: "ngmodule", type: i0.forwardRef(() => CommonModule) }, { kind: "directive", type: i0.forwardRef(() => i1.NgForOf), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(() => i1.NgSwitch), selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i0.forwardRef(() => i1.NgSwitchCase), selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i0.forwardRef(() => i1.NgSwitchDefault), selector: "[ngSwitchDefault]" }, { kind: "ngmodule", type: i0.forwardRef(() => ReactiveFormsModule) }, { kind: "directive", type: i0.forwardRef(() => i2.ɵNgNoValidate), selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i0.forwardRef(() => i2.NgControlStatusGroup), selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i0.forwardRef(() => i2.FormGroupDirective), selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "component", type: i0.forwardRef(() => ComponentMapperComponent), selector: "component-mapper", inputs: ["name", "props", "errorMsg", "outputEvents", "parent"] }] }); }
28
- }
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.12", ngImport: i0, type: AssignmentCardComponent, decorators: [{
30
- type: Component,
31
- args: [{ selector: 'app-assignment-card', standalone: true, imports: [CommonModule, ReactiveFormsModule, forwardRef(() => ComponentMapperComponent)], template: "<form [formGroup]=\"formGroup$\" name=\"flowContainer\" class=\"psdk-flow-container\">\n <div *ngFor=\"let kid of arChildren$\">\n <div [ngSwitch]=\"kid.getPConnect().getComponentName()\">\n <component-mapper *ngSwitchCase=\"'View'\" name=\"View\" [props]=\"{ formGroup$, pConn$: kid.getPConnect() }\"></component-mapper>\n <component-mapper\n *ngSwitchCase=\"'CaseCreateStage'\"\n name=\"CaseCreateStage\"\n [props]=\"{ formGroup$, pConn$: kid.getPConnect() }\"\n ></component-mapper>\n <component-mapper *ngSwitchCase=\"'Region'\" name=\"Region\" [props]=\"{ formGroup$, pConn$: kid.getPConnect() }\"></component-mapper>\n <div *ngSwitchDefault>Assignment Card wants component not yet available: {{ kid.getPConnect().getComponentName() }}</div>\n </div>\n </div>\n</form>\n\n<div>\n <br />\n <div class=\"psdk-case-view-divider\"></div>\n\n <component-mapper\n name=\"ActionButtons\"\n [props]=\"{ arMainButtons$, arSecondaryButtons$ }\"\n [parent]=\"this\"\n [outputEvents]=\"{ actionButtonClick: onActionButtonClick }\"\n ></component-mapper>\n</div>\n", styles: [".psdk-case-view-divider{border-bottom:.0625rem solid var(--app-neutral-light-color)}.psdk-flow-container{padding:0rem 1rem}\n"] }]
32
- }], propDecorators: { pConn$: [{
33
- type: Input
34
- }], formGroup$: [{
35
- type: Input
36
- }], arMainButtons$: [{
37
- type: Input
38
- }], arSecondaryButtons$: [{
39
- type: Input
40
- }], arChildren$: [{
41
- type: Input
42
- }], updateToken$: [{
43
- type: Input
44
- }], actionButtonClick: [{
45
- type: Output
46
- }] } });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXNzaWdubWVudC1jYXJkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy9pbmZyYS9hc3NpZ25tZW50LWNhcmQvYXNzaWdubWVudC1jYXJkLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXItc2RrLWNvbXBvbmVudHMvc3JjL2xpYi9fY29tcG9uZW50cy9pbmZyYS9hc3NpZ25tZW50LWNhcmQvYXNzaWdubWVudC1jYXJkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVUsS0FBSyxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFhLE1BQU0sZUFBZSxDQUFDO0FBQ3RHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQWEsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQztBQUN0RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQzs7OztBQVN4RyxNQUFNLE9BQU8sdUJBQXVCO0lBUHBDO1FBZVksc0JBQWlCLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7S0FpQnJFO0lBZkMsUUFBUTtRQUNOLDREQUE0RDtRQUM1RCxrQkFBa0I7UUFDbEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxrQkFBa0IsQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDOUUsQ0FBQztJQUVELFdBQVc7UUFDVCw0REFBNEQ7UUFDNUQsa0JBQWtCO1FBQ2xCLElBQUksQ0FBQyxXQUFXLEdBQUcsa0JBQWtCLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQzlFLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxLQUFVO1FBQzVCLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDckMsQ0FBQzsrR0F4QlUsdUJBQXVCO21HQUF2Qix1QkFBdUIseVZDYnBDLHdtQ0EwQkEsME1EZlksWUFBWSxnaEJBQUUsbUJBQW1CLHlnQkFBbUIsd0JBQXdCOzs0RkFFM0UsdUJBQXVCO2tCQVBuQyxTQUFTOytCQUNFLHFCQUFxQixjQUduQixJQUFJLFdBQ1AsQ0FBQyxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHdCQUF3QixDQUFDLENBQUM7OEJBRy9FLE1BQU07c0JBQWQsS0FBSztnQkFDRyxVQUFVO3NCQUFsQixLQUFLO2dCQUNHLGNBQWM7c0JBQXRCLEtBQUs7Z0JBQ0csbUJBQW1CO3NCQUEzQixLQUFLO2dCQUNHLFdBQVc7c0JBQW5CLEtBQUs7Z0JBQ0csWUFBWTtzQkFBcEIsS0FBSztnQkFFSSxpQkFBaUI7c0JBQTFCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIE91dHB1dCwgRXZlbnRFbWl0dGVyLCBmb3J3YXJkUmVmLCBPbkNoYW5nZXMgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGb3JtR3JvdXAsIFJlYWN0aXZlRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBSZWZlcmVuY2VDb21wb25lbnQgfSBmcm9tICcuLi9yZWZlcmVuY2UvcmVmZXJlbmNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21wb25lbnRNYXBwZXJDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9fYnJpZGdlL2NvbXBvbmVudC1tYXBwZXIvY29tcG9uZW50LW1hcHBlci5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhcHAtYXNzaWdubWVudC1jYXJkJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Fzc2lnbm1lbnQtY2FyZC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2Fzc2lnbm1lbnQtY2FyZC5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBSZWFjdGl2ZUZvcm1zTW9kdWxlLCBmb3J3YXJkUmVmKCgpID0+IENvbXBvbmVudE1hcHBlckNvbXBvbmVudCldXG59KVxuZXhwb3J0IGNsYXNzIEFzc2lnbm1lbnRDYXJkQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkNoYW5nZXMge1xuICBASW5wdXQoKSBwQ29ubiQ6IHR5cGVvZiBQQ29ubmVjdDtcbiAgQElucHV0KCkgZm9ybUdyb3VwJDogRm9ybUdyb3VwO1xuICBASW5wdXQoKSBhck1haW5CdXR0b25zJDogYW55W107XG4gIEBJbnB1dCgpIGFyU2Vjb25kYXJ5QnV0dG9ucyQ6IGFueVtdO1xuICBASW5wdXQoKSBhckNoaWxkcmVuJDogYW55W107XG4gIEBJbnB1dCgpIHVwZGF0ZVRva2VuJDogbnVtYmVyO1xuXG4gIEBPdXRwdXQoKSBhY3Rpb25CdXR0b25DbGljazogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgLy8gQ2hpbGRyZW4gbWF5IGNvbnRhaW4gJ3JlZmVyZW5jZScgY29tcG9uZW50LCBzbyB3ZSBuZWVkIHRvXG4gICAgLy8gIG5vcm1hbGl6ZSB0aGVtXG4gICAgdGhpcy5hckNoaWxkcmVuJCA9IFJlZmVyZW5jZUNvbXBvbmVudC5ub3JtYWxpemVQQ29ubkFycmF5KHRoaXMuYXJDaGlsZHJlbiQpO1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoKSB7XG4gICAgLy8gQ2hpbGRyZW4gbWF5IGNvbnRhaW4gJ3JlZmVyZW5jZScgY29tcG9uZW50LCBzbyB3ZSBuZWVkIHRvXG4gICAgLy8gIG5vcm1hbGl6ZSB0aGVtXG4gICAgdGhpcy5hckNoaWxkcmVuJCA9IFJlZmVyZW5jZUNvbXBvbmVudC5ub3JtYWxpemVQQ29ubkFycmF5KHRoaXMuYXJDaGlsZHJlbiQpO1xuICB9XG5cbiAgb25BY3Rpb25CdXR0b25DbGljayhvRGF0YTogYW55KSB7XG4gICAgdGhpcy5hY3Rpb25CdXR0b25DbGljay5lbWl0KG9EYXRhKTtcbiAgfVxufVxuIiwiPGZvcm0gW2Zvcm1Hcm91cF09XCJmb3JtR3JvdXAkXCIgbmFtZT1cImZsb3dDb250YWluZXJcIiBjbGFzcz1cInBzZGstZmxvdy1jb250YWluZXJcIj5cbiAgPGRpdiAqbmdGb3I9XCJsZXQga2lkIG9mIGFyQ2hpbGRyZW4kXCI+XG4gICAgPGRpdiBbbmdTd2l0Y2hdPVwia2lkLmdldFBDb25uZWN0KCkuZ2V0Q29tcG9uZW50TmFtZSgpXCI+XG4gICAgICA8Y29tcG9uZW50LW1hcHBlciAqbmdTd2l0Y2hDYXNlPVwiJ1ZpZXcnXCIgbmFtZT1cIlZpZXdcIiBbcHJvcHNdPVwieyBmb3JtR3JvdXAkLCBwQ29ubiQ6IGtpZC5nZXRQQ29ubmVjdCgpIH1cIj48L2NvbXBvbmVudC1tYXBwZXI+XG4gICAgICA8Y29tcG9uZW50LW1hcHBlclxuICAgICAgICAqbmdTd2l0Y2hDYXNlPVwiJ0Nhc2VDcmVhdGVTdGFnZSdcIlxuICAgICAgICBuYW1lPVwiQ2FzZUNyZWF0ZVN0YWdlXCJcbiAgICAgICAgW3Byb3BzXT1cInsgZm9ybUdyb3VwJCwgcENvbm4kOiBraWQuZ2V0UENvbm5lY3QoKSB9XCJcbiAgICAgID48L2NvbXBvbmVudC1tYXBwZXI+XG4gICAgICA8Y29tcG9uZW50LW1hcHBlciAqbmdTd2l0Y2hDYXNlPVwiJ1JlZ2lvbidcIiBuYW1lPVwiUmVnaW9uXCIgW3Byb3BzXT1cInsgZm9ybUdyb3VwJCwgcENvbm4kOiBraWQuZ2V0UENvbm5lY3QoKSB9XCI+PC9jb21wb25lbnQtbWFwcGVyPlxuICAgICAgPGRpdiAqbmdTd2l0Y2hEZWZhdWx0PkFzc2lnbm1lbnQgQ2FyZCB3YW50cyBjb21wb25lbnQgbm90IHlldCBhdmFpbGFibGU6IHt7IGtpZC5nZXRQQ29ubmVjdCgpLmdldENvbXBvbmVudE5hbWUoKSB9fTwvZGl2PlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvZm9ybT5cblxuPGRpdj5cbiAgPGJyIC8+XG4gIDxkaXYgY2xhc3M9XCJwc2RrLWNhc2Utdmlldy1kaXZpZGVyXCI+PC9kaXY+XG5cbiAgPGNvbXBvbmVudC1tYXBwZXJcbiAgICBuYW1lPVwiQWN0aW9uQnV0dG9uc1wiXG4gICAgW3Byb3BzXT1cInsgYXJNYWluQnV0dG9ucyQsIGFyU2Vjb25kYXJ5QnV0dG9ucyQgfVwiXG4gICAgW3BhcmVudF09XCJ0aGlzXCJcbiAgICBbb3V0cHV0RXZlbnRzXT1cInsgYWN0aW9uQnV0dG9uQ2xpY2s6IG9uQWN0aW9uQnV0dG9uQ2xpY2sgfVwiXG4gID48L2NvbXBvbmVudC1tYXBwZXI+XG48L2Rpdj5cbiJdfQ==