@energycap/components 0.41.0 → 0.41.1-ECAP-27592-angular-17.20241219-1718

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 (258) hide show
  1. package/{esm2020 → esm2022}/energycap-components.mjs +4 -4
  2. package/{esm2020 → esm2022}/lib/components.module.mjs +418 -418
  3. package/{esm2020 → esm2022}/lib/controls/banner/banner.component.mjs +109 -109
  4. package/{esm2020 → esm2022}/lib/controls/button/button.component.mjs +106 -106
  5. package/{esm2020 → esm2022}/lib/controls/button/copy-button-base.directive.mjs +67 -67
  6. package/{esm2020 → esm2022}/lib/controls/button/copy-button.directive.mjs +28 -28
  7. package/{esm2020 → esm2022}/lib/controls/button/copy-table-button.directive.mjs +43 -43
  8. package/{esm2020 → esm2022}/lib/controls/calendar/calendar-item.component.mjs +59 -59
  9. package/{esm2020 → esm2022}/lib/controls/calendar/calendar.component.mjs +200 -200
  10. package/{esm2020 → esm2022}/lib/controls/calendar/calendar.types.mjs +3 -3
  11. package/{esm2020 → esm2022}/lib/controls/checkbox/checkbox.component.mjs +140 -140
  12. package/{esm2020 → esm2022}/lib/controls/collapsible-toggle/collapsible-toggle.component.mjs +38 -38
  13. package/{esm2020 → esm2022}/lib/controls/combobox/combobox.component.mjs +879 -879
  14. package/{esm2020 → esm2022}/lib/controls/date-input/date-input.component.mjs +256 -256
  15. package/{esm2020 → esm2022}/lib/controls/dropdown/dropdown.component.mjs +243 -243
  16. package/{esm2020 → esm2022}/lib/controls/file-upload/file-upload.component.mjs +261 -261
  17. package/{esm2020 → esm2022}/lib/controls/form-control/form-control.component.mjs +104 -104
  18. package/{esm2020 → esm2022}/lib/controls/form-control-base.mjs +151 -151
  19. package/{esm2020 → esm2022}/lib/controls/form-control-label/form-control-label.component.mjs +136 -136
  20. package/{esm2020 → esm2022}/lib/controls/form-group/form-group.component.mjs +261 -261
  21. package/{esm2020 → esm2022}/lib/controls/help-popover/help-popover.component.mjs +31 -31
  22. package/{esm2020 → esm2022}/lib/controls/item-picker/item-picker.component.mjs +329 -329
  23. package/{esm2020 → esm2022}/lib/controls/link-button/link-button.component.mjs +11 -11
  24. package/{esm2020 → esm2022}/lib/controls/menu/menu.component.mjs +485 -485
  25. package/{esm2020 → esm2022}/lib/controls/navigation/link-item.mjs +1 -1
  26. package/{esm2020 → esm2022}/lib/controls/navigation/nav-group.mjs +38 -38
  27. package/{esm2020 → esm2022}/lib/controls/navigation/nav-item-active.directive.mjs +92 -92
  28. package/{esm2020 → esm2022}/lib/controls/navigation/nav-item.mjs +1 -1
  29. package/{esm2020 → esm2022}/lib/controls/numericbox/numericbox.component.mjs +372 -372
  30. package/{esm2020 → esm2022}/lib/controls/popover/popover.component.mjs +117 -117
  31. package/{esm2020 → esm2022}/lib/controls/radio-button/radio-button-option.mjs +2 -2
  32. package/{esm2020 → esm2022}/lib/controls/radio-button/radio-button.component.mjs +82 -82
  33. package/{esm2020 → esm2022}/lib/controls/select/select.component.mjs +88 -88
  34. package/{esm2020 → esm2022}/lib/controls/tabs/tabs.component.mjs +47 -47
  35. package/{esm2020 → esm2022}/lib/controls/textbox/textbox.component.mjs +155 -155
  36. package/{esm2020 → esm2022}/lib/core/cache.service.mjs +105 -105
  37. package/esm2022/lib/core/custom-validators.mjs +29 -0
  38. package/esm2022/lib/core/date-time-helper.mjs +220 -0
  39. package/{esm2020 → esm2022}/lib/core/error.service.mjs +61 -61
  40. package/{esm2020 → esm2022}/lib/core/router-helper.service.mjs +111 -111
  41. package/{esm2020 → esm2022}/lib/core/scroll.service.mjs +89 -89
  42. package/{esm2020 → esm2022}/lib/core/telemetry-tracker.service.mjs +16 -16
  43. package/{esm2020 → esm2022}/lib/core/telemetry.service.mjs +38 -38
  44. package/{esm2020 → esm2022}/lib/core/validation-message.service.mjs +185 -185
  45. package/{esm2020 → esm2022}/lib/core/validation-patterns.mjs +30 -30
  46. package/{esm2020 → esm2022}/lib/core/window.service.mjs +186 -186
  47. package/{esm2020 → esm2022}/lib/display/app-bar/app-bar.component.mjs +46 -46
  48. package/esm2022/lib/display/avatar/avatar.component.mjs +67 -0
  49. package/{esm2020 → esm2022}/lib/display/avatar/avatar.service.mjs +64 -64
  50. package/{esm2020 → esm2022}/lib/display/confirm/confirm.component.mjs +168 -168
  51. package/{esm2020 → esm2022}/lib/display/dialog/dialog-content.mjs +1 -1
  52. package/{esm2020 → esm2022}/lib/display/dialog/dialog-group/dialog-group.component.mjs +63 -63
  53. package/{esm2020 → esm2022}/lib/display/dialog/dialog-types.mjs +76 -76
  54. package/{esm2020 → esm2022}/lib/display/dialog/dialog.component.mjs +281 -281
  55. package/{esm2020 → esm2022}/lib/display/dialog/dialog.service.mjs +71 -71
  56. package/{esm2020 → esm2022}/lib/display/help/help-types.mjs +1 -1
  57. package/{esm2020 → esm2022}/lib/display/hierarchy/hierarchy-base.mjs +111 -111
  58. package/{esm2020 → esm2022}/lib/display/hierarchy/hierarchy-mocks.spec.mjs +53 -53
  59. package/{esm2020 → esm2022}/lib/display/hierarchy/hierarchy-tree/hierarchy-tree.component.mjs +61 -61
  60. package/{esm2020 → esm2022}/lib/display/item-display/item-display.component.mjs +81 -81
  61. package/{esm2020 → esm2022}/lib/display/json-display/json-display.component.mjs +47 -47
  62. package/{esm2020 → esm2022}/lib/display/resizable/resizable-base.mjs +120 -120
  63. package/{esm2020 → esm2022}/lib/display/resizable/resizable.component.mjs +52 -52
  64. package/{esm2020 → esm2022}/lib/display/spinner/spinner.component.mjs +12 -12
  65. package/{esm2020 → esm2022}/lib/display/splash/splash.component.mjs +42 -42
  66. package/{esm2020 → esm2022}/lib/display/splash/splash.service.mjs +35 -35
  67. package/{esm2020 → esm2022}/lib/display/table/resizable-column.component.mjs +20 -20
  68. package/{esm2020 → esm2022}/lib/display/table/resizable-table.directive.mjs +227 -227
  69. package/{esm2020 → esm2022}/lib/display/table/searchable-table.component.mjs +342 -342
  70. package/{esm2020 → esm2022}/lib/display/table/table-detail-row.component.mjs +19 -19
  71. package/{esm2020 → esm2022}/lib/display/table/table-locked-column.component.mjs +58 -58
  72. package/{esm2020 → esm2022}/lib/display/table/table-master-header-row.component.mjs +14 -14
  73. package/{esm2020 → esm2022}/lib/display/table/table-master-row.component.mjs +163 -163
  74. package/{esm2020 → esm2022}/lib/display/table/table-pagination.component.mjs +155 -155
  75. package/{esm2020 → esm2022}/lib/display/table/table-selectable-row.component.mjs +235 -235
  76. package/{esm2020 → esm2022}/lib/display/table/table.component.mjs +249 -249
  77. package/{esm2020 → esm2022}/lib/display/tags/tag.mjs +17 -17
  78. package/{esm2020 → esm2022}/lib/display/tags/tags.component.mjs +77 -77
  79. package/{esm2020 → esm2022}/lib/display/toast/toast/toast.component.mjs +77 -77
  80. package/{esm2020 → esm2022}/lib/display/toast/toast-types.mjs +7 -7
  81. package/{esm2020 → esm2022}/lib/display/toast/toast.service.mjs +35 -35
  82. package/{esm2020 → esm2022}/lib/display/toast/toaster/toaster.component.mjs +114 -114
  83. package/{esm2020 → esm2022}/lib/display/tooltip/tooltip.component.mjs +28 -28
  84. package/{esm2020 → esm2022}/lib/display/tooltip/tooltip.service.mjs +78 -78
  85. package/{esm2020 → esm2022}/lib/display/tooltip-directive/tooltip.directive.mjs +173 -173
  86. package/{esm2020 → esm2022}/lib/display/tour/tour-types.mjs +33 -33
  87. package/{esm2020 → esm2022}/lib/display/tour/tour.component.mjs +398 -398
  88. package/{esm2020 → esm2022}/lib/display/tour/tour.service.mjs +75 -75
  89. package/{esm2020 → esm2022}/lib/display/tree/tree.component.mjs +135 -135
  90. package/{esm2020 → esm2022}/lib/display/view-overlay/view-overlay.component.mjs +58 -58
  91. package/{esm2020 → esm2022}/lib/shared/directives/click-area-for/click-area-for.directive.mjs +32 -32
  92. package/{esm2020 → esm2022}/lib/shared/directives/if-viewport-width/if-viewport-width.directive.mjs +111 -111
  93. package/esm2022/lib/shared/directives/popup/popup-container.directive.mjs +166 -0
  94. package/{esm2020 → esm2022}/lib/shared/display/pipes/date-display.pipe.mjs +50 -50
  95. package/{esm2020 → esm2022}/lib/shared/display/pipes/highlight-text.pipe.mjs +30 -30
  96. package/{esm2020 → esm2022}/lib/shared/display/pipes/relative-date.pipe.mjs +62 -62
  97. package/{esm2020 → esm2022}/lib/shared/display/pipes/row-count.pipe.mjs +48 -48
  98. package/{esm2020 → esm2022}/lib/shared/display/pipes/time-display.pipe.mjs +41 -41
  99. package/esm2022/lib/shared/display.mjs +6 -0
  100. package/esm2022/lib/shared/form-group.helper.mjs +67 -0
  101. package/{esm2020 → esm2022}/lib/shared/json-helper.mjs +18 -18
  102. package/esm2022/lib/shared/lodash-helper.mjs +52 -0
  103. package/{esm2020 → esm2022}/lib/shared/page/page-base/page-base.component.mjs +387 -387
  104. package/{esm2020 → esm2022}/lib/shared/page/page-statuses.mjs +22 -22
  105. package/{esm2020 → esm2022}/lib/shared/page/page-title/page-title.component.mjs +23 -23
  106. package/{esm2020 → esm2022}/lib/shared/page/page-view/page-view.component.mjs +147 -147
  107. package/{esm2020 → esm2022}/lib/shared/testing/copy-button-base-test-injector-factory.spec.mjs +16 -16
  108. package/{esm2020 → esm2022}/lib/shared/testing/hierarchy-base-test-injector-factory.spec.mjs +16 -16
  109. package/{esm2020 → esm2022}/lib/shared/testing/page-base-component-test-helper.spec.mjs +37 -37
  110. package/esm2022/lib/shared/testing/page-base-component-test-injector-factory.spec.mjs +98 -0
  111. package/{esm2020 → esm2022}/lib/shared/testing/public-mocks.spec.mjs +148 -148
  112. package/{esm2020 → esm2022}/lib/shared/testing/spy-factory.spec.mjs +39 -39
  113. package/{esm2020 → esm2022}/lib/shared/testing/translation-mocks.spec.mjs +56 -56
  114. package/{esm2020 → esm2022}/lib/shared/user-preference.service.mjs +17 -17
  115. package/{esm2020 → esm2022}/lib/shared/wizard/wizard-base/wizard-base.component.mjs +246 -246
  116. package/{esm2020 → esm2022}/lib/shared/wizard/wizard-buttons/wizard-buttons.component.mjs +68 -68
  117. package/{esm2020 → esm2022}/lib/shared/wizard/wizard-progress/wizard-progress.component.mjs +18 -18
  118. package/{esm2020 → esm2022}/public-api.mjs +114 -114
  119. package/{fesm2020 → fesm2022}/energycap-components.mjs +11797 -11793
  120. package/fesm2022/energycap-components.mjs.map +1 -0
  121. package/index.d.ts +5 -5
  122. package/lib/components.module.d.ts +91 -91
  123. package/lib/controls/banner/banner.component.d.ts +50 -50
  124. package/lib/controls/button/button.component.d.ts +78 -78
  125. package/lib/controls/button/copy-button-base.directive.d.ts +20 -20
  126. package/lib/controls/button/copy-button.directive.d.ts +14 -14
  127. package/lib/controls/button/copy-table-button.directive.d.ts +19 -19
  128. package/lib/controls/calendar/calendar-item.component.d.ts +17 -17
  129. package/lib/controls/calendar/calendar.component.d.ts +54 -54
  130. package/lib/controls/calendar/calendar.types.d.ts +7 -7
  131. package/lib/controls/checkbox/checkbox.component.d.ts +65 -65
  132. package/lib/controls/collapsible-toggle/collapsible-toggle.component.d.ts +25 -25
  133. package/lib/controls/combobox/combobox.component.d.ts +418 -418
  134. package/lib/controls/date-input/date-input.component.d.ts +80 -80
  135. package/lib/controls/dropdown/dropdown.component.d.ts +161 -161
  136. package/lib/controls/file-upload/file-upload.component.d.ts +124 -124
  137. package/lib/controls/form-control/form-control.component.d.ts +30 -30
  138. package/lib/controls/form-control-base.d.ts +110 -110
  139. package/lib/controls/form-control-label/form-control-label.component.d.ts +73 -73
  140. package/lib/controls/form-group/form-group.component.d.ts +105 -105
  141. package/lib/controls/help-popover/help-popover.component.d.ts +11 -11
  142. package/lib/controls/item-picker/item-picker.component.d.ts +164 -164
  143. package/lib/controls/link-button/link-button.component.d.ts +5 -5
  144. package/lib/controls/menu/menu.component.d.ts +255 -255
  145. package/lib/controls/navigation/link-item.d.ts +32 -32
  146. package/lib/controls/navigation/nav-group.d.ts +18 -18
  147. package/lib/controls/navigation/nav-item-active.directive.d.ts +42 -42
  148. package/lib/controls/navigation/nav-item.d.ts +31 -31
  149. package/lib/controls/numericbox/numericbox.component.d.ts +148 -148
  150. package/lib/controls/popover/popover.component.d.ts +51 -51
  151. package/lib/controls/radio-button/radio-button-option.d.ts +19 -19
  152. package/lib/controls/radio-button/radio-button.component.d.ts +53 -53
  153. package/lib/controls/select/select.component.d.ts +44 -44
  154. package/lib/controls/tabs/tabs.component.d.ts +30 -30
  155. package/lib/controls/textbox/textbox.component.d.ts +107 -107
  156. package/lib/core/cache.service.d.ts +33 -33
  157. package/lib/core/custom-validators.d.ts +20 -20
  158. package/lib/core/date-time-helper.d.ts +101 -101
  159. package/lib/core/error.service.d.ts +20 -20
  160. package/lib/core/router-helper.service.d.ts +48 -48
  161. package/lib/core/scroll.service.d.ts +36 -36
  162. package/lib/core/telemetry-tracker.service.d.ts +13 -13
  163. package/lib/core/telemetry.service.d.ts +31 -31
  164. package/lib/core/validation-message.service.d.ts +26 -26
  165. package/lib/core/validation-patterns.d.ts +22 -22
  166. package/lib/core/window.service.d.ts +116 -116
  167. package/lib/display/app-bar/app-bar.component.d.ts +20 -20
  168. package/lib/display/avatar/avatar.component.d.ts +35 -35
  169. package/lib/display/avatar/avatar.service.d.ts +24 -24
  170. package/lib/display/confirm/confirm.component.d.ts +123 -123
  171. package/lib/display/dialog/dialog-content.d.ts +19 -19
  172. package/lib/display/dialog/dialog-group/dialog-group.component.d.ts +32 -32
  173. package/lib/display/dialog/dialog-types.d.ts +130 -130
  174. package/lib/display/dialog/dialog.component.d.ts +120 -120
  175. package/lib/display/dialog/dialog.service.d.ts +48 -48
  176. package/lib/display/help/help-types.d.ts +33 -33
  177. package/lib/display/hierarchy/hierarchy-base.d.ts +97 -97
  178. package/lib/display/hierarchy/hierarchy-mocks.spec.d.ts +53 -53
  179. package/lib/display/hierarchy/hierarchy-tree/hierarchy-tree.component.d.ts +34 -34
  180. package/lib/display/item-display/item-display.component.d.ts +43 -43
  181. package/lib/display/json-display/json-display.component.d.ts +16 -16
  182. package/lib/display/resizable/resizable-base.d.ts +67 -67
  183. package/lib/display/resizable/resizable.component.d.ts +31 -31
  184. package/lib/display/spinner/spinner.component.d.ts +5 -5
  185. package/lib/display/splash/splash.component.d.ts +16 -16
  186. package/lib/display/splash/splash.service.d.ts +22 -22
  187. package/lib/display/table/resizable-column.component.d.ts +10 -10
  188. package/lib/display/table/resizable-table.directive.d.ts +93 -93
  189. package/lib/display/table/searchable-table.component.d.ts +206 -206
  190. package/lib/display/table/table-detail-row.component.d.ts +8 -8
  191. package/lib/display/table/table-locked-column.component.d.ts +20 -20
  192. package/lib/display/table/table-master-header-row.component.d.ts +9 -9
  193. package/lib/display/table/table-master-row.component.d.ts +113 -113
  194. package/lib/display/table/table-pagination.component.d.ts +91 -91
  195. package/lib/display/table/table-selectable-row.component.d.ts +102 -102
  196. package/lib/display/table/table.component.d.ts +121 -121
  197. package/lib/display/tags/tag.d.ts +18 -18
  198. package/lib/display/tags/tags.component.d.ts +48 -48
  199. package/lib/display/toast/toast/toast.component.d.ts +23 -23
  200. package/lib/display/toast/toast-types.d.ts +24 -24
  201. package/lib/display/toast/toast.service.d.ts +20 -20
  202. package/lib/display/toast/toaster/toaster.component.d.ts +35 -35
  203. package/lib/display/tooltip/tooltip.component.d.ts +70 -70
  204. package/lib/display/tooltip/tooltip.service.d.ts +16 -16
  205. package/lib/display/tooltip-directive/tooltip.directive.d.ts +44 -44
  206. package/lib/display/tour/tour-types.d.ts +70 -70
  207. package/lib/display/tour/tour.component.d.ts +147 -147
  208. package/lib/display/tour/tour.service.d.ts +38 -38
  209. package/lib/display/tree/tree.component.d.ts +75 -75
  210. package/lib/display/view-overlay/view-overlay.component.d.ts +38 -38
  211. package/lib/shared/directives/click-area-for/click-area-for.directive.d.ts +14 -14
  212. package/lib/shared/directives/if-viewport-width/if-viewport-width.directive.d.ts +60 -60
  213. package/lib/shared/directives/popup/popup-container.directive.d.ts +101 -101
  214. package/lib/shared/display/pipes/date-display.pipe.d.ts +21 -21
  215. package/lib/shared/display/pipes/highlight-text.pipe.d.ts +9 -9
  216. package/lib/shared/display/pipes/relative-date.pipe.d.ts +36 -36
  217. package/lib/shared/display/pipes/row-count.pipe.d.ts +23 -23
  218. package/lib/shared/display/pipes/time-display.pipe.d.ts +18 -18
  219. package/lib/shared/display.d.ts +42 -42
  220. package/lib/shared/form-group.helper.d.ts +31 -31
  221. package/lib/shared/json-helper.d.ts +7 -7
  222. package/lib/shared/lodash-helper.d.ts +18 -18
  223. package/lib/shared/page/page-base/page-base.component.d.ts +259 -259
  224. package/lib/shared/page/page-statuses.d.ts +13 -13
  225. package/lib/shared/page/page-title/page-title.component.d.ts +9 -9
  226. package/lib/shared/page/page-view/page-view.component.d.ts +102 -102
  227. package/lib/shared/testing/copy-button-base-test-injector-factory.spec.d.ts +4 -4
  228. package/lib/shared/testing/hierarchy-base-test-injector-factory.spec.d.ts +4 -4
  229. package/lib/shared/testing/page-base-component-test-helper.spec.d.ts +30 -30
  230. package/lib/shared/testing/page-base-component-test-injector-factory.spec.d.ts +28 -28
  231. package/lib/shared/testing/public-mocks.spec.d.ts +90 -90
  232. package/lib/shared/testing/spy-factory.spec.d.ts +27 -27
  233. package/lib/shared/testing/translation-mocks.spec.d.ts +30 -30
  234. package/lib/shared/user-preference.service.d.ts +13 -13
  235. package/lib/shared/wizard/wizard-base/wizard-base.component.d.ts +134 -134
  236. package/lib/shared/wizard/wizard-buttons/wizard-buttons.component.d.ts +27 -27
  237. package/lib/shared/wizard/wizard-progress/wizard-progress.component.d.ts +10 -10
  238. package/package.json +12 -18
  239. package/public-api.d.ts +111 -111
  240. package/schematics/rxjs-7-upgrade/index.d.ts +3 -3
  241. package/schematics/rxjs-7-upgrade/index.js +67 -67
  242. package/schematics/rxjs-7-upgrade/schema.d.ts +4 -4
  243. package/schematics/rxjs-7-upgrade/schema.js +2 -2
  244. package/schematics/utilities/typescript.d.ts +7 -7
  245. package/schematics/utilities/typescript.js +41 -41
  246. package/schematics/utilities/workspace.d.ts +8 -8
  247. package/schematics/utilities/workspace.js +71 -71
  248. package/esm2020/lib/core/custom-validators.mjs +0 -29
  249. package/esm2020/lib/core/date-time-helper.mjs +0 -220
  250. package/esm2020/lib/display/avatar/avatar.component.mjs +0 -67
  251. package/esm2020/lib/shared/directives/popup/popup-container.directive.mjs +0 -163
  252. package/esm2020/lib/shared/display.mjs +0 -6
  253. package/esm2020/lib/shared/form-group.helper.mjs +0 -67
  254. package/esm2020/lib/shared/lodash-helper.mjs +0 -51
  255. package/esm2020/lib/shared/testing/page-base-component-test-injector-factory.spec.mjs +0 -98
  256. package/fesm2015/energycap-components.mjs +0 -12211
  257. package/fesm2015/energycap-components.mjs.map +0 -1
  258. package/fesm2020/energycap-components.mjs.map +0 -1
@@ -1,23 +1,23 @@
1
- export var PageStatus;
2
- (function (PageStatus) {
3
- PageStatus["Loading"] = "loading";
4
- PageStatus["Loaded"] = "loaded";
5
- PageStatus["Saving"] = "saving";
6
- PageStatus["NoData"] = "noData";
7
- })(PageStatus || (PageStatus = {}));
8
- ;
9
- export class PageStatuses {
10
- static get loading() {
11
- return { status: "pending", message: "Loading" };
12
- }
13
- static get loaded() {
14
- return { status: "hasData", message: "" };
15
- }
16
- static get saving() {
17
- return { status: "pending", message: "Saving" };
18
- }
19
- static get noData() {
20
- return { status: "noData", message: "No data is available" };
21
- }
22
- }
1
+ export var PageStatus;
2
+ (function (PageStatus) {
3
+ PageStatus["Loading"] = "loading";
4
+ PageStatus["Loaded"] = "loaded";
5
+ PageStatus["Saving"] = "saving";
6
+ PageStatus["NoData"] = "noData";
7
+ })(PageStatus || (PageStatus = {}));
8
+ ;
9
+ export class PageStatuses {
10
+ static get loading() {
11
+ return { status: "pending", message: "Loading" };
12
+ }
13
+ static get loaded() {
14
+ return { status: "hasData", message: "" };
15
+ }
16
+ static get saving() {
17
+ return { status: "pending", message: "Saving" };
18
+ }
19
+ static get noData() {
20
+ return { status: "noData", message: "No data is available" };
21
+ }
22
+ }
23
23
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS1zdGF0dXNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9zaGFyZWQvcGFnZS9wYWdlLXN0YXR1c2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE1BQU0sQ0FBTixJQUFZLFVBS1g7QUFMRCxXQUFZLFVBQVU7SUFDcEIsaUNBQW1CLENBQUE7SUFDbkIsK0JBQWlCLENBQUE7SUFDakIsK0JBQWlCLENBQUE7SUFDakIsK0JBQWlCLENBQUE7QUFDbkIsQ0FBQyxFQUxXLFVBQVUsS0FBVixVQUFVLFFBS3JCO0FBQUEsQ0FBQztBQUVGLE1BQU0sT0FBTyxZQUFZO0lBQ2hCLE1BQU0sS0FBSyxPQUFPO1FBQ3ZCLE9BQU8sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsQ0FBQztJQUNuRCxDQUFDO0lBRU0sTUFBTSxLQUFLLE1BQU07UUFDdEIsT0FBTyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFTSxNQUFNLEtBQUssTUFBTTtRQUN0QixPQUFPLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLENBQUM7SUFDbEQsQ0FBQztJQUVNLE1BQU0sS0FBSyxNQUFNO1FBQ3RCLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxDQUFDO0lBQy9ELENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpc3BsYXlTdGF0dXMgfSBmcm9tICcuLi9kaXNwbGF5J1xyXG5cclxuZXhwb3J0IGVudW0gUGFnZVN0YXR1cyB7XHJcbiAgTG9hZGluZyA9ICdsb2FkaW5nJyxcclxuICBMb2FkZWQgPSAnbG9hZGVkJyxcclxuICBTYXZpbmcgPSAnc2F2aW5nJyxcclxuICBOb0RhdGEgPSAnbm9EYXRhJ1xyXG59O1xyXG5cclxuZXhwb3J0IGNsYXNzIFBhZ2VTdGF0dXNlcyB7XHJcbiAgcHVibGljIHN0YXRpYyBnZXQgbG9hZGluZygpOiBEaXNwbGF5U3RhdHVzIHtcclxuICAgIHJldHVybiB7IHN0YXR1czogXCJwZW5kaW5nXCIsIG1lc3NhZ2U6IFwiTG9hZGluZ1wiIH07XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIGdldCBsb2FkZWQoKTogRGlzcGxheVN0YXR1cyB7XHJcbiAgICByZXR1cm4geyBzdGF0dXM6IFwiaGFzRGF0YVwiLCBtZXNzYWdlOiBcIlwiIH07XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIGdldCBzYXZpbmcoKTogRGlzcGxheVN0YXR1cyB7XHJcbiAgICByZXR1cm4geyBzdGF0dXM6IFwicGVuZGluZ1wiLCBtZXNzYWdlOiBcIlNhdmluZ1wiIH07XHJcbiAgfVxyXG5cclxuICBwdWJsaWMgc3RhdGljIGdldCBub0RhdGEoKTogRGlzcGxheVN0YXR1cyB7XHJcbiAgICByZXR1cm4geyBzdGF0dXM6IFwibm9EYXRhXCIsIG1lc3NhZ2U6IFwiTm8gZGF0YSBpcyBhdmFpbGFibGVcIiB9O1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -1,23 +1,23 @@
1
- import { Component, Input } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/common";
4
- import * as i2 from "@angular/router";
5
- export class PageTitleComponent {
6
- }
7
- PageTitleComponentfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PageTitleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
8
- PageTitleComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: PageTitleComponent, selector: "app-page-title", inputs: { title: "title", titleIcon: "titleIcon", subTitle: "subTitle", subTitleUrl: "subTitleUrl" }, host: { classAttribute: "d-flex" }, ngImport: i0, template: "<i *ngIf=\"titleIcon\"\r\n class=\"flex-shrink mr-1 my-1 ec-icon ec-icon-md {{titleIcon}}\"></i>\r\n<div class=\"text-truncate\">\r\n <h1 *ngIf=\"title\"\r\n class=\"text-title-1 mb-0 py-1 text-truncate\"\r\n title=\"{{title}}\">{{title}}</h1>\r\n <p *ngIf=\"subTitle && !subTitleUrl\"\r\n class=\"text-caption-1 mb-0 mt-n1 text-truncate\">{{subTitle}}</p>\r\n <a *ngIf=\"subTitle && subTitleUrl\"\r\n id=\"subTitle_link\"\r\n class=\"d-block text-truncate mb-0 mt-n1 font-size-small\"\r\n routerLink=\"{{subTitleUrl}}\"\r\n target=\"_self\">\r\n {{subTitle}}\r\n </a>\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] });
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PageTitleComponent, decorators: [{
10
- type: Component,
11
- args: [{ selector: 'app-page-title', host: {
12
- class: 'd-flex'
13
- }, template: "<i *ngIf=\"titleIcon\"\r\n class=\"flex-shrink mr-1 my-1 ec-icon ec-icon-md {{titleIcon}}\"></i>\r\n<div class=\"text-truncate\">\r\n <h1 *ngIf=\"title\"\r\n class=\"text-title-1 mb-0 py-1 text-truncate\"\r\n title=\"{{title}}\">{{title}}</h1>\r\n <p *ngIf=\"subTitle && !subTitleUrl\"\r\n class=\"text-caption-1 mb-0 mt-n1 text-truncate\">{{subTitle}}</p>\r\n <a *ngIf=\"subTitle && subTitleUrl\"\r\n id=\"subTitle_link\"\r\n class=\"d-block text-truncate mb-0 mt-n1 font-size-small\"\r\n routerLink=\"{{subTitleUrl}}\"\r\n target=\"_self\">\r\n {{subTitle}}\r\n </a>\r\n</div>" }]
14
- }], propDecorators: { title: [{
15
- type: Input
16
- }], titleIcon: [{
17
- type: Input
18
- }], subTitle: [{
19
- type: Input
20
- }], subTitleUrl: [{
21
- type: Input
22
- }] } });
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS10aXRsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvc2hhcmVkL3BhZ2UvcGFnZS10aXRsZS9wYWdlLXRpdGxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9zaGFyZWQvcGFnZS9wYWdlLXRpdGxlL3BhZ2UtdGl0bGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFTakQsTUFBTSxPQUFPLGtCQUFrQjs7K0dBQWxCLGtCQUFrQjttR0FBbEIsa0JBQWtCLGdNQ1QvQix3bkJBZU07MkZETk8sa0JBQWtCO2tCQVA5QixTQUFTOytCQUNFLGdCQUFnQixRQUVwQjt3QkFDSixLQUFLLEVBQUUsUUFBUTtxQkFDaEI7OEJBR2UsS0FBSztzQkFBcEIsS0FBSztnQkFDVSxTQUFTO3NCQUF4QixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsV0FBVztzQkFBMUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXBhZ2UtdGl0bGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wYWdlLXRpdGxlLmNvbXBvbmVudC5odG1sJyxcclxuICBob3N0OiB7XHJcbiAgICBjbGFzczogJ2QtZmxleCdcclxuICB9XHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQYWdlVGl0bGVDb21wb25lbnQge1xyXG4gIEBJbnB1dCgpIHB1YmxpYyB0aXRsZT86IHN0cmluZztcclxuICBASW5wdXQoKSBwdWJsaWMgdGl0bGVJY29uPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBzdWJUaXRsZT86IHN0cmluZzsgXHJcbiAgQElucHV0KCkgcHVibGljIHN1YlRpdGxlVXJsPzogc3RyaW5nOyBcclxufVxyXG4iLCI8aSAqbmdJZj1cInRpdGxlSWNvblwiXHJcbiAgIGNsYXNzPVwiZmxleC1zaHJpbmsgbXItMSBteS0xIGVjLWljb24gZWMtaWNvbi1tZCB7e3RpdGxlSWNvbn19XCI+PC9pPlxyXG48ZGl2IGNsYXNzPVwidGV4dC10cnVuY2F0ZVwiPlxyXG4gICA8aDEgKm5nSWY9XCJ0aXRsZVwiXHJcbiAgICAgICBjbGFzcz1cInRleHQtdGl0bGUtMSBtYi0wIHB5LTEgdGV4dC10cnVuY2F0ZVwiXHJcbiAgICAgICB0aXRsZT1cInt7dGl0bGV9fVwiPnt7dGl0bGV9fTwvaDE+XHJcbiAgIDxwICpuZ0lmPVwic3ViVGl0bGUgJiYgIXN1YlRpdGxlVXJsXCJcclxuICAgICAgY2xhc3M9XCJ0ZXh0LWNhcHRpb24tMSBtYi0wIG10LW4xIHRleHQtdHJ1bmNhdGVcIj57e3N1YlRpdGxlfX08L3A+XHJcbiAgIDxhICpuZ0lmPVwic3ViVGl0bGUgJiYgc3ViVGl0bGVVcmxcIlxyXG4gICAgICBpZD1cInN1YlRpdGxlX2xpbmtcIlxyXG4gICAgICBjbGFzcz1cImQtYmxvY2sgdGV4dC10cnVuY2F0ZSBtYi0wIG10LW4xIGZvbnQtc2l6ZS1zbWFsbFwiXHJcbiAgICAgIHJvdXRlckxpbms9XCJ7e3N1YlRpdGxlVXJsfX1cIlxyXG4gICAgICB0YXJnZXQ9XCJfc2VsZlwiPlxyXG4gICAgICB7e3N1YlRpdGxlfX1cclxuICAgPC9hPlxyXG48L2Rpdj4iXX0=
1
+ import { Component, Input } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common";
4
+ import * as i2 from "@angular/router";
5
+ export class PageTitleComponent {
6
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PageTitleComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7
+ static { thiscmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PageTitleComponent, selector: "app-page-title", inputs: { title: "title", titleIcon: "titleIcon", subTitle: "subTitle", subTitleUrl: "subTitleUrl" }, host: { classAttribute: "d-flex" }, ngImport: i0, template: "<i *ngIf=\"titleIcon\"\r\n class=\"flex-shrink mr-1 my-1 ec-icon ec-icon-md {{titleIcon}}\"></i>\r\n<div class=\"text-truncate\">\r\n <h1 *ngIf=\"title\"\r\n class=\"text-title-1 mb-0 py-1 text-truncate\"\r\n title=\"{{title}}\">{{title}}</h1>\r\n <p *ngIf=\"subTitle && !subTitleUrl\"\r\n class=\"text-caption-1 mb-0 mt-n1 text-truncate\">{{subTitle}}</p>\r\n <a *ngIf=\"subTitle && subTitleUrl\"\r\n id=\"subTitle_link\"\r\n class=\"d-block text-truncate mb-0 mt-n1 font-size-small\"\r\n routerLink=\"{{subTitleUrl}}\"\r\n target=\"_self\">\r\n {{subTitle}}\r\n </a>\r\n</div>", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }] }); }
8
+ }
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PageTitleComponent, decorators: [{
10
+ type: Component,
11
+ args: [{ selector: 'app-page-title', host: {
12
+ class: 'd-flex'
13
+ }, template: "<i *ngIf=\"titleIcon\"\r\n class=\"flex-shrink mr-1 my-1 ec-icon ec-icon-md {{titleIcon}}\"></i>\r\n<div class=\"text-truncate\">\r\n <h1 *ngIf=\"title\"\r\n class=\"text-title-1 mb-0 py-1 text-truncate\"\r\n title=\"{{title}}\">{{title}}</h1>\r\n <p *ngIf=\"subTitle && !subTitleUrl\"\r\n class=\"text-caption-1 mb-0 mt-n1 text-truncate\">{{subTitle}}</p>\r\n <a *ngIf=\"subTitle && subTitleUrl\"\r\n id=\"subTitle_link\"\r\n class=\"d-block text-truncate mb-0 mt-n1 font-size-small\"\r\n routerLink=\"{{subTitleUrl}}\"\r\n target=\"_self\">\r\n {{subTitle}}\r\n </a>\r\n</div>" }]
14
+ }], propDecorators: { title: [{
15
+ type: Input
16
+ }], titleIcon: [{
17
+ type: Input
18
+ }], subTitle: [{
19
+ type: Input
20
+ }], subTitleUrl: [{
21
+ type: Input
22
+ }] } });
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS10aXRsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvc2hhcmVkL3BhZ2UvcGFnZS10aXRsZS9wYWdlLXRpdGxlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9zaGFyZWQvcGFnZS9wYWdlLXRpdGxlL3BhZ2UtdGl0bGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7QUFTakQsTUFBTSxPQUFPLGtCQUFrQjsrR0FBbEIsa0JBQWtCO21HQUFsQixrQkFBa0IsZ01DVC9CLHduQkFlTTs7NEZETk8sa0JBQWtCO2tCQVA5QixTQUFTOytCQUNFLGdCQUFnQixRQUVwQjt3QkFDSixLQUFLLEVBQUUsUUFBUTtxQkFDaEI7OEJBR2UsS0FBSztzQkFBcEIsS0FBSztnQkFDVSxTQUFTO3NCQUF4QixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsV0FBVztzQkFBMUIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYXBwLXBhZ2UtdGl0bGUnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wYWdlLXRpdGxlLmNvbXBvbmVudC5odG1sJyxcclxuICBob3N0OiB7XHJcbiAgICBjbGFzczogJ2QtZmxleCdcclxuICB9XHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBQYWdlVGl0bGVDb21wb25lbnQge1xyXG4gIEBJbnB1dCgpIHB1YmxpYyB0aXRsZT86IHN0cmluZztcclxuICBASW5wdXQoKSBwdWJsaWMgdGl0bGVJY29uPzogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBzdWJUaXRsZT86IHN0cmluZzsgXHJcbiAgQElucHV0KCkgcHVibGljIHN1YlRpdGxlVXJsPzogc3RyaW5nOyBcclxufVxyXG4iLCI8aSAqbmdJZj1cInRpdGxlSWNvblwiXHJcbiAgIGNsYXNzPVwiZmxleC1zaHJpbmsgbXItMSBteS0xIGVjLWljb24gZWMtaWNvbi1tZCB7e3RpdGxlSWNvbn19XCI+PC9pPlxyXG48ZGl2IGNsYXNzPVwidGV4dC10cnVuY2F0ZVwiPlxyXG4gICA8aDEgKm5nSWY9XCJ0aXRsZVwiXHJcbiAgICAgICBjbGFzcz1cInRleHQtdGl0bGUtMSBtYi0wIHB5LTEgdGV4dC10cnVuY2F0ZVwiXHJcbiAgICAgICB0aXRsZT1cInt7dGl0bGV9fVwiPnt7dGl0bGV9fTwvaDE+XHJcbiAgIDxwICpuZ0lmPVwic3ViVGl0bGUgJiYgIXN1YlRpdGxlVXJsXCJcclxuICAgICAgY2xhc3M9XCJ0ZXh0LWNhcHRpb24tMSBtYi0wIG10LW4xIHRleHQtdHJ1bmNhdGVcIj57e3N1YlRpdGxlfX08L3A+XHJcbiAgIDxhICpuZ0lmPVwic3ViVGl0bGUgJiYgc3ViVGl0bGVVcmxcIlxyXG4gICAgICBpZD1cInN1YlRpdGxlX2xpbmtcIlxyXG4gICAgICBjbGFzcz1cImQtYmxvY2sgdGV4dC10cnVuY2F0ZSBtYi0wIG10LW4xIGZvbnQtc2l6ZS1zbWFsbFwiXHJcbiAgICAgIHJvdXRlckxpbms9XCJ7e3N1YlRpdGxlVXJsfX1cIlxyXG4gICAgICB0YXJnZXQ9XCJfc2VsZlwiPlxyXG4gICAgICB7e3N1YlRpdGxlfX1cclxuICAgPC9hPlxyXG48L2Rpdj4iXX0=
@@ -1,147 +1,147 @@
1
- import { Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';
2
- import { Overlay } from '../../../display/view-overlay/view-overlay.component';
3
- import { DialogResult } from '../../../display/dialog/dialog-types';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "../../../display/dialog/dialog.service";
6
- import * as i2 from "@angular/common";
7
- import * as i3 from "@angular/router";
8
- import * as i4 from "@angular/cdk/scrolling";
9
- import * as i5 from "../../../controls/button/button.component";
10
- import * as i6 from "../../../display/view-overlay/view-overlay.component";
11
- import * as i7 from "../../../controls/banner/banner.component";
12
- import * as i8 from "../../../controls/dropdown/dropdown.component";
13
- import * as i9 from "../page-title/page-title.component";
14
- export class PageViewComponent {
15
- constructor(dialogService) {
16
- this.dialogService = dialogService;
17
- /**
18
- * Set to true when page-view is inside a dialog to adjust styles and hide breadcrumbs.
19
- */
20
- this.isDialog = false;
21
- /**
22
- * Set to true to enable read only mode. Only a single secondary action will be available
23
- */
24
- this.readonly = false;
25
- /**
26
- * Controls Overlay that masks the page view content. Only the header is not masked when the overlay is visible. Default is pending Overlay with no message
27
- */
28
- this.status = new Overlay('pending');
29
- /**
30
- * Set to false to hide the entire header, including breadcrumbs and error banner. Default is true.
31
- */
32
- this.showHeader = true;
33
- /**
34
- * Label for the actions dropdown in the header. Default is 'Actions'
35
- */
36
- this.moreActionsLabel = 'Actions';
37
- /**
38
- * Label for the secondary button in the header. Default is 'Cancel'
39
- */
40
- this.secondaryActionLabel = 'Cancel';
41
- this.hideSecondaryAction = false;
42
- /** Flag for hiding the tiny close button in the top-right corner of dialog while in pending state only */
43
- this.hideCloseOnPending = false;
44
- /**
45
- * Label for the primary button in the header. Default is 'Save'
46
- */
47
- this.primaryActionLabel = 'Save';
48
- this.hidePrimaryAction = false;
49
- /**
50
- * Pins the footer to the bottom of the view and overlays any overflowing content
51
- */
52
- this.stickyFooter = true;
53
- /**
54
- * Prevents content from overflowing the view. Content must manage overflow instead.
55
- */
56
- this.fitContent = false;
57
- /**
58
- * Disables the primary action button
59
- */
60
- this.disablePrimaryAction = false;
61
- /** Changes the background color for the content and overlay to white */
62
- this.bgContent = false;
63
- this.onPrimaryAction = new EventEmitter();
64
- this.onSecondaryAction = new EventEmitter();
65
- }
66
- primaryAction(event) {
67
- if (this.onPrimaryAction) {
68
- this.onPrimaryAction.emit(event);
69
- }
70
- }
71
- secondaryAction(event) {
72
- if (this.onSecondaryAction) {
73
- this.onSecondaryAction.emit(event);
74
- }
75
- }
76
- closeDialog() {
77
- this.dialogService.closeLatestDialog(new DialogResult(false));
78
- }
79
- }
80
- PageViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PageViewComponent, deps: [{ token: i1.DialogService }], target: i0.ɵɵFactoryTarget.Component });
81
- PageViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: PageViewComponent, selector: "ec-page-view", inputs: { isDialog: "isDialog", readonly: "readonly", status: "status", showHeader: "showHeader", errors: "errors", breadcrumbs: "breadcrumbs", title: "title", titleIcon: "titleIcon", subTitle: "subTitle", subTitleUrl: "subTitleUrl", moreActionsLabel: "moreActionsLabel", moreActions: "moreActions", secondaryActionLabel: "secondaryActionLabel", hideSecondaryAction: "hideSecondaryAction", hideCloseOnPending: "hideCloseOnPending", primaryActionLabel: "primaryActionLabel", hidePrimaryAction: "hidePrimaryAction", customTitleTemplate: "customTitleTemplate", customActionsTemplate: "customActionsTemplate", customHeaderTemplate: "customHeaderTemplate", footerTemplate: "footerTemplate", customErrorBannerTemplate: "customErrorBannerTemplate", stickyFooter: "stickyFooter", fitContent: "fitContent", disablePrimaryAction: "disablePrimaryAction", bgContent: "bgContent" }, outputs: { onPrimaryAction: "onPrimaryAction", onSecondaryAction: "onSecondaryAction" }, host: { properties: { "class.bg-content": "this.bgContent" }, classAttribute: "flex-grow" }, ngImport: i0, template: "<div ecOverlay\r\n [status]=\"status?.status\"\r\n [message]=\"status?.message\"\r\n [displayAsMask]=\"true\"\r\n class=\"flex-grow d-flex\"\r\n [ngClass]=\"{'bg-body': !bgContent, 'bg-content': bgContent}\">\r\n <div id=\"PageViewScrollContainer\"\r\n class=\"d-flex flex-column flex-grow scroll-y\"\r\n [class.is-dialog]=\"isDialog\"\r\n [class.fit-content]=\"fitContent\"\r\n [class.sticky-footer]=\"stickyFooter && !!footerTemplate\"\r\n [class.overlay-visible]=\"status?.status !== 'hasData'\"\r\n [class.footer-visible]=\"!!footerTemplate\"\r\n cdkScrollable>\r\n <section>\r\n <ng-content></ng-content>\r\n </section>\r\n\r\n <footer *ngIf=\"footerTemplate\">\r\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\r\n </footer>\r\n\r\n <header *ngIf=\"showHeader\">\r\n <ol id=\"breadcrumbs\"\r\n *ngIf=\"breadcrumbs?.length && !isDialog\">\r\n <li *ngFor=\"let crumb of breadcrumbs; last as isLast\">\r\n <a *ngIf=\"crumb.url; else label\"\r\n [routerLink]=\"crumb.url\">\r\n <ng-container *ngTemplateOutlet=\"label\"></ng-container>\r\n </a>\r\n <ng-template #label>{{crumb.label}}</ng-template>\r\n </li>\r\n </ol>\r\n\r\n <div class=\"titlebar\">\r\n <app-page-title *ngIf=\"!customTitleTemplate; else customTitle\"\r\n [title]=\"title\"\r\n [subTitle]=\"subTitle\"\r\n [subTitleUrl]=\"subTitleUrl\"\r\n [titleIcon]=\"titleIcon\"\r\n class=\"title text-truncate\">\r\n </app-page-title>\r\n\r\n <ng-template #customTitle>\r\n <div class=\"title\">\r\n <ng-container *ngTemplateOutlet=\"customTitleTemplate\"></ng-container>\r\n </div>\r\n </ng-template>\r\n\r\n <div class=\"actions\">\r\n <ec-button id=\"primaryAction\"\r\n class=\"ml-2\"\r\n *ngIf=\"!hidePrimaryAction && onPrimaryAction.observers?.length && !readonly\"\r\n [disabled]=\"status?.status === 'pending' || disablePrimaryAction\"\r\n type=\"primary\"\r\n [label]=\"primaryActionLabel\"\r\n (clicked)=\"primaryAction($event)\">\r\n </ec-button>\r\n <ec-button id=\"secondaryAction\"\r\n class=\"ml-2\"\r\n *ngIf=\"!hideSecondaryAction && onSecondaryAction.observers?.length\"\r\n type=\"secondary\"\r\n [label]=\"readonly ? 'Close' : secondaryActionLabel\"\r\n (clicked)=\"secondaryAction($event)\">\r\n </ec-button>\r\n <ec-dropdown id=\"moreActions\"\r\n *ngIf=\"moreActions?.length && !readonly\"\r\n [disabled]=\"status?.status === 'pending'\"\r\n class=\"ml-2\"\r\n buttonType=\"text\"\r\n [label]=\"moreActionsLabel\"\r\n [items]=\"moreActions\">\r\n </ec-dropdown>\r\n <ng-container *ngTemplateOutlet=\"customActionsTemplate\"></ng-container>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"customHeaderTemplate\"\r\n class=\"page-header\">\r\n <ng-container *ngTemplateOutlet=\"customHeaderTemplate\"></ng-container>\r\n </div>\r\n\r\n <ec-banner *ngIf=\"!customErrorBannerTemplate && errors; else customErrorBannerOutlet\"\r\n id=\"pageViewErrors\"\r\n [class.border-bottom-0]=\"!isDialog\">\r\n <div [innerHtml]=\"errors\"></div>\r\n </ec-banner>\r\n\r\n <ng-template #customErrorBannerOutlet>\r\n <ec-banner *ngIf=\"errors\"\r\n id=\"pageViewErrors\"\r\n [class.border-bottom-0]=\"!isDialog\">\r\n <ng-container *ngTemplateOutlet=\"customErrorBannerTemplate\"></ng-container>\r\n </ec-banner>\r\n </ng-template>\r\n </header>\r\n </div>\r\n\r\n <ec-button *ngIf=\"isDialog && ( (status?.status === 'pending' && !hideCloseOnPending) || status?.status === 'error')\"\r\n id=\"pageViewDialogClose\"\r\n type=\"icon\"\r\n icon=\"icon-cancel\"\r\n (clicked)=\"closeDialog()\">\r\n </ec-button>\r\n</div>", styles: [":host{flex:1 1;min-height:0;display:flex}header{background-color:var(--ec-background-color-body);position:sticky;top:0;order:1;padding:1rem 1.5rem .5rem;flex:none;z-index:var(--ec-z-index-sticky-page-header)}ol{font-size:var(--ec-font-size-label);line-height:1rem;grid-column:1/3;grid-row:1/2;list-style:none;padding:0;margin:0 0 .25rem}ol li{display:inline}ol li:not(:last-child):after{content:\" / \";display:inline;color:var(--ec-color-secondary-dark)}div[ecOverlay]{position:relative}.titlebar{display:grid;grid-template-columns:auto max-content;grid-template-rows:max-content max-content;gap:0 1rem}.title{grid-column:1/2;grid-row:2/3;align-self:center}.actions{grid-column:2/3;grid-row:2/3;display:flex;flex-direction:row-reverse}ec-banner{margin-top:1rem}section{padding:var(--ec-page-view-padding-section, .5rem 1.5rem 2rem);order:2;flex:1 0 auto;min-height:0}:not(.is-dialog)>section{z-index:0}footer{background-color:var(--ec-background-color-body);order:3;padding:0 1.5rem;height:4.5rem;flex:none;display:flex;align-items:center}.is-dialog header{padding:0}.is-dialog .titlebar{background-color:var(--ec-background-color);padding:1rem}.is-dialog ec-banner{margin:0}.is-dialog section{padding:var(--ec-page-view-padding-section, 1rem 1rem 1.5rem)}.sticky-footer section{padding-bottom:4.5rem}.sticky-footer footer{position:sticky;bottom:0;z-index:var(--ec-z-index-sticky-page-header)}.fit-content>section{flex:1 1;display:flex}.footer-visible section{padding-bottom:0}.overlay-visible header{z-index:var(--ec-z-index-overlay)1}.overlay-visible ec-banner{display:none}:host(.bg-content) header{background-color:var(--ec-background-color)}:host(.bg-content) section{background-color:var(--ec-background-color)}:host(.bg-content) footer{background-color:var(--ec-background-color)}#pageViewDialogClose{position:absolute;top:1rem;right:1rem;z-index:calc(var(--ec-z-index-overlay) + 1)}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i4.CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }, { kind: "component", type: i5.ButtonComponent, selector: "ec-button", inputs: ["id", "disabled", "icon", "label", "badge", "tabindex", "type", "pending", "pendingIcon", "customTemplate", "isSubmit", "autofocus"], outputs: ["clicked"] }, { kind: "component", type: i6.ViewOverlayComponent, selector: "[ecOverlay]", inputs: ["status", "message", "action", "noDataTemplate", "displayAsMask", "overlayClassList"] }, { kind: "component", type: i7.BannerComponent, selector: "ec-banner", inputs: ["hidden", "id", "type", "bannerStyle", "title", "text", "list", "showCloseBtn", "autoHideOnClose", "customIcon", "rememberClosed"], outputs: ["closed"] }, { kind: "component", type: i8.DropdownComponent, selector: "ec-dropdown", inputs: ["id", "autofocus", "status", "disabled", "label", "icon", "buttonType", "buttonAlignment", "buttonTitle", "tabindex", "showArrow", "items", "menuTemplateType", "menuTitle", "menuHeight", "menuWidth", "menuMinWidth", "menuPosition", "menuFooter", "popupFixed", "buttonCustomTemplate", "pending"], outputs: ["itemSelected", "popupOpened"] }, { kind: "component", type: i9.PageTitleComponent, selector: "app-page-title", inputs: ["title", "titleIcon", "subTitle", "subTitleUrl"] }] });
82
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PageViewComponent, decorators: [{
83
- type: Component,
84
- args: [{ selector: 'ec-page-view', host: {
85
- class: "flex-grow"
86
- }, template: "<div ecOverlay\r\n [status]=\"status?.status\"\r\n [message]=\"status?.message\"\r\n [displayAsMask]=\"true\"\r\n class=\"flex-grow d-flex\"\r\n [ngClass]=\"{'bg-body': !bgContent, 'bg-content': bgContent}\">\r\n <div id=\"PageViewScrollContainer\"\r\n class=\"d-flex flex-column flex-grow scroll-y\"\r\n [class.is-dialog]=\"isDialog\"\r\n [class.fit-content]=\"fitContent\"\r\n [class.sticky-footer]=\"stickyFooter && !!footerTemplate\"\r\n [class.overlay-visible]=\"status?.status !== 'hasData'\"\r\n [class.footer-visible]=\"!!footerTemplate\"\r\n cdkScrollable>\r\n <section>\r\n <ng-content></ng-content>\r\n </section>\r\n\r\n <footer *ngIf=\"footerTemplate\">\r\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\r\n </footer>\r\n\r\n <header *ngIf=\"showHeader\">\r\n <ol id=\"breadcrumbs\"\r\n *ngIf=\"breadcrumbs?.length && !isDialog\">\r\n <li *ngFor=\"let crumb of breadcrumbs; last as isLast\">\r\n <a *ngIf=\"crumb.url; else label\"\r\n [routerLink]=\"crumb.url\">\r\n <ng-container *ngTemplateOutlet=\"label\"></ng-container>\r\n </a>\r\n <ng-template #label>{{crumb.label}}</ng-template>\r\n </li>\r\n </ol>\r\n\r\n <div class=\"titlebar\">\r\n <app-page-title *ngIf=\"!customTitleTemplate; else customTitle\"\r\n [title]=\"title\"\r\n [subTitle]=\"subTitle\"\r\n [subTitleUrl]=\"subTitleUrl\"\r\n [titleIcon]=\"titleIcon\"\r\n class=\"title text-truncate\">\r\n </app-page-title>\r\n\r\n <ng-template #customTitle>\r\n <div class=\"title\">\r\n <ng-container *ngTemplateOutlet=\"customTitleTemplate\"></ng-container>\r\n </div>\r\n </ng-template>\r\n\r\n <div class=\"actions\">\r\n <ec-button id=\"primaryAction\"\r\n class=\"ml-2\"\r\n *ngIf=\"!hidePrimaryAction && onPrimaryAction.observers?.length && !readonly\"\r\n [disabled]=\"status?.status === 'pending' || disablePrimaryAction\"\r\n type=\"primary\"\r\n [label]=\"primaryActionLabel\"\r\n (clicked)=\"primaryAction($event)\">\r\n </ec-button>\r\n <ec-button id=\"secondaryAction\"\r\n class=\"ml-2\"\r\n *ngIf=\"!hideSecondaryAction && onSecondaryAction.observers?.length\"\r\n type=\"secondary\"\r\n [label]=\"readonly ? 'Close' : secondaryActionLabel\"\r\n (clicked)=\"secondaryAction($event)\">\r\n </ec-button>\r\n <ec-dropdown id=\"moreActions\"\r\n *ngIf=\"moreActions?.length && !readonly\"\r\n [disabled]=\"status?.status === 'pending'\"\r\n class=\"ml-2\"\r\n buttonType=\"text\"\r\n [label]=\"moreActionsLabel\"\r\n [items]=\"moreActions\">\r\n </ec-dropdown>\r\n <ng-container *ngTemplateOutlet=\"customActionsTemplate\"></ng-container>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"customHeaderTemplate\"\r\n class=\"page-header\">\r\n <ng-container *ngTemplateOutlet=\"customHeaderTemplate\"></ng-container>\r\n </div>\r\n\r\n <ec-banner *ngIf=\"!customErrorBannerTemplate && errors; else customErrorBannerOutlet\"\r\n id=\"pageViewErrors\"\r\n [class.border-bottom-0]=\"!isDialog\">\r\n <div [innerHtml]=\"errors\"></div>\r\n </ec-banner>\r\n\r\n <ng-template #customErrorBannerOutlet>\r\n <ec-banner *ngIf=\"errors\"\r\n id=\"pageViewErrors\"\r\n [class.border-bottom-0]=\"!isDialog\">\r\n <ng-container *ngTemplateOutlet=\"customErrorBannerTemplate\"></ng-container>\r\n </ec-banner>\r\n </ng-template>\r\n </header>\r\n </div>\r\n\r\n <ec-button *ngIf=\"isDialog && ( (status?.status === 'pending' && !hideCloseOnPending) || status?.status === 'error')\"\r\n id=\"pageViewDialogClose\"\r\n type=\"icon\"\r\n icon=\"icon-cancel\"\r\n (clicked)=\"closeDialog()\">\r\n </ec-button>\r\n</div>", styles: [":host{flex:1 1;min-height:0;display:flex}header{background-color:var(--ec-background-color-body);position:sticky;top:0;order:1;padding:1rem 1.5rem .5rem;flex:none;z-index:var(--ec-z-index-sticky-page-header)}ol{font-size:var(--ec-font-size-label);line-height:1rem;grid-column:1/3;grid-row:1/2;list-style:none;padding:0;margin:0 0 .25rem}ol li{display:inline}ol li:not(:last-child):after{content:\" / \";display:inline;color:var(--ec-color-secondary-dark)}div[ecOverlay]{position:relative}.titlebar{display:grid;grid-template-columns:auto max-content;grid-template-rows:max-content max-content;gap:0 1rem}.title{grid-column:1/2;grid-row:2/3;align-self:center}.actions{grid-column:2/3;grid-row:2/3;display:flex;flex-direction:row-reverse}ec-banner{margin-top:1rem}section{padding:var(--ec-page-view-padding-section, .5rem 1.5rem 2rem);order:2;flex:1 0 auto;min-height:0}:not(.is-dialog)>section{z-index:0}footer{background-color:var(--ec-background-color-body);order:3;padding:0 1.5rem;height:4.5rem;flex:none;display:flex;align-items:center}.is-dialog header{padding:0}.is-dialog .titlebar{background-color:var(--ec-background-color);padding:1rem}.is-dialog ec-banner{margin:0}.is-dialog section{padding:var(--ec-page-view-padding-section, 1rem 1rem 1.5rem)}.sticky-footer section{padding-bottom:4.5rem}.sticky-footer footer{position:sticky;bottom:0;z-index:var(--ec-z-index-sticky-page-header)}.fit-content>section{flex:1 1;display:flex}.footer-visible section{padding-bottom:0}.overlay-visible header{z-index:var(--ec-z-index-overlay)1}.overlay-visible ec-banner{display:none}:host(.bg-content) header{background-color:var(--ec-background-color)}:host(.bg-content) section{background-color:var(--ec-background-color)}:host(.bg-content) footer{background-color:var(--ec-background-color)}#pageViewDialogClose{position:absolute;top:1rem;right:1rem;z-index:calc(var(--ec-z-index-overlay) + 1)}\n"] }]
87
- }], ctorParameters: function () { return [{ type: i1.DialogService }]; }, propDecorators: { isDialog: [{
88
- type: Input
89
- }], readonly: [{
90
- type: Input
91
- }], status: [{
92
- type: Input
93
- }], showHeader: [{
94
- type: Input
95
- }], errors: [{
96
- type: Input
97
- }], breadcrumbs: [{
98
- type: Input
99
- }], title: [{
100
- type: Input
101
- }], titleIcon: [{
102
- type: Input
103
- }], subTitle: [{
104
- type: Input
105
- }], subTitleUrl: [{
106
- type: Input
107
- }], moreActionsLabel: [{
108
- type: Input
109
- }], moreActions: [{
110
- type: Input
111
- }], secondaryActionLabel: [{
112
- type: Input
113
- }], hideSecondaryAction: [{
114
- type: Input
115
- }], hideCloseOnPending: [{
116
- type: Input
117
- }], primaryActionLabel: [{
118
- type: Input
119
- }], hidePrimaryAction: [{
120
- type: Input
121
- }], customTitleTemplate: [{
122
- type: Input
123
- }], customActionsTemplate: [{
124
- type: Input
125
- }], customHeaderTemplate: [{
126
- type: Input
127
- }], footerTemplate: [{
128
- type: Input
129
- }], customErrorBannerTemplate: [{
130
- type: Input
131
- }], stickyFooter: [{
132
- type: Input
133
- }], fitContent: [{
134
- type: Input
135
- }], disablePrimaryAction: [{
136
- type: Input
137
- }], bgContent: [{
138
- type: HostBinding,
139
- args: ['class.bg-content']
140
- }, {
141
- type: Input
142
- }], onPrimaryAction: [{
143
- type: Output
144
- }], onSecondaryAction: [{
145
- type: Output
146
- }] } });
147
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9zaGFyZWQvcGFnZS9wYWdlLXZpZXcvcGFnZS12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9zaGFyZWQvcGFnZS9wYWdlLXZpZXcvcGFnZS12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFlLE1BQU0sZUFBZSxDQUFDO0FBSWpHLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUMvRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7Ozs7O0FBVXBFLE1BQU0sT0FBTyxpQkFBaUI7SUE4RzVCLFlBQ1UsYUFBNEI7UUFBNUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUE5R3RDOztXQUVHO1FBQ2EsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUUxQzs7V0FFRztRQUNhLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFMUM7O1dBRUc7UUFDYSxXQUFNLEdBQWEsSUFBSSxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFMUQ7O1dBRUc7UUFDYSxlQUFVLEdBQVksSUFBSSxDQUFDO1FBb0IzQzs7V0FFRztRQUNhLHFCQUFnQixHQUFZLFNBQVMsQ0FBQztRQU10RDs7V0FFRztRQUNhLHlCQUFvQixHQUFZLFFBQVEsQ0FBQztRQUN6Qyx3QkFBbUIsR0FBRyxLQUFLLENBQUM7UUFFNUMsMEdBQTBHO1FBQzFGLHVCQUFrQixHQUFZLEtBQUssQ0FBQztRQUVwRDs7V0FFRztRQUNhLHVCQUFrQixHQUFZLE1BQU0sQ0FBQztRQUNyQyxzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUEyQjFDOztXQUVHO1FBQ2EsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFFcEM7O1dBRUc7UUFDYSxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBRW5DOztXQUVHO1FBQ2EseUJBQW9CLEdBQUcsS0FBSyxDQUFDO1FBRTdDLHdFQUF3RTtRQUV4RCxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBRWpCLG9CQUFlLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDeEQsc0JBQWlCLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7SUFJdkUsQ0FBQztJQUVFLGFBQWEsQ0FBQyxLQUFVO1FBQzdCLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUN4QixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNsQztJQUNILENBQUM7SUFFTSxlQUFlLENBQUMsS0FBVTtRQUMvQixJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMxQixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3BDO0lBQ0gsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7OzhHQWhJVSxpQkFBaUI7a0dBQWpCLGlCQUFpQixnbENDZjlCLDQvSkF3R007MkZEekZPLGlCQUFpQjtrQkFSN0IsU0FBUzsrQkFDRSxjQUFjLFFBR2xCO3dCQUNKLEtBQUssRUFBRSxXQUFXO3FCQUNuQjtvR0FNZSxRQUFRO3NCQUF2QixLQUFLO2dCQUtVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBS1UsTUFBTTtzQkFBckIsS0FBSztnQkFLVSxVQUFVO3NCQUF6QixLQUFLO2dCQUtVLE1BQU07c0JBQXJCLEtBQUs7Z0JBS1UsV0FBVztzQkFBMUIsS0FBSztnQkFLVSxLQUFLO3NCQUFwQixLQUFLO2dCQUNVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxXQUFXO3NCQUExQixLQUFLO2dCQUtVLGdCQUFnQjtzQkFBL0IsS0FBSztnQkFJVSxXQUFXO3NCQUExQixLQUFLO2dCQUtVLG9CQUFvQjtzQkFBbkMsS0FBSztnQkFDVSxtQkFBbUI7c0JBQWxDLEtBQUs7Z0JBR1Usa0JBQWtCO3NCQUFqQyxLQUFLO2dCQUtVLGtCQUFrQjtzQkFBakMsS0FBSztnQkFDVSxpQkFBaUI7c0JBQWhDLEtBQUs7Z0JBS1UsbUJBQW1CO3NCQUFsQyxLQUFLO2dCQUtVLHFCQUFxQjtzQkFBcEMsS0FBSztnQkFLVSxvQkFBb0I7c0JBQW5DLEtBQUs7Z0JBS1UsY0FBYztzQkFBN0IsS0FBSztnQkFLVSx5QkFBeUI7c0JBQXhDLEtBQUs7Z0JBS1UsWUFBWTtzQkFBM0IsS0FBSztnQkFLVSxVQUFVO3NCQUF6QixLQUFLO2dCQUtVLG9CQUFvQjtzQkFBbkMsS0FBSztnQkFJVSxTQUFTO3NCQUR4QixXQUFXO3VCQUFDLGtCQUFrQjs7c0JBQzlCLEtBQUs7Z0JBRVcsZUFBZTtzQkFBL0IsTUFBTTtnQkFDVSxpQkFBaUI7c0JBQWpDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPdXRwdXQsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9kaXNwbGF5L2RpYWxvZy9kaWFsb2cuc2VydmljZSc7XHJcbmltcG9ydCB7IE1lbnVJdGVtIH0gZnJvbSAnLi4vLi4vLi4vY29udHJvbHMvbWVudS9tZW51LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE5hdkl0ZW0gfSBmcm9tICcuLi8uLi8uLi9jb250cm9scy9uYXZpZ2F0aW9uL25hdi1pdGVtJztcclxuaW1wb3J0IHsgT3ZlcmxheSB9IGZyb20gJy4uLy4uLy4uL2Rpc3BsYXkvdmlldy1vdmVybGF5L3ZpZXctb3ZlcmxheS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEaWFsb2dSZXN1bHQgfSBmcm9tICcuLi8uLi8uLi9kaXNwbGF5L2RpYWxvZy9kaWFsb2ctdHlwZXMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlYy1wYWdlLXZpZXcnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wYWdlLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3BhZ2Utdmlldy5jb21wb25lbnQuc2NzcyddLFxyXG4gIGhvc3Q6IHtcclxuICAgIGNsYXNzOiBcImZsZXgtZ3Jvd1wiXHJcbiAgfVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUGFnZVZpZXdDb21wb25lbnQge1xyXG4gIC8qKlxyXG4gICAqIFNldCB0byB0cnVlIHdoZW4gcGFnZS12aWV3IGlzIGluc2lkZSBhIGRpYWxvZyB0byBhZGp1c3Qgc3R5bGVzIGFuZCBoaWRlIGJyZWFkY3J1bWJzLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBpc0RpYWxvZzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBTZXQgdG8gdHJ1ZSB0byBlbmFibGUgcmVhZCBvbmx5IG1vZGUuIE9ubHkgYSBzaW5nbGUgc2Vjb25kYXJ5IGFjdGlvbiB3aWxsIGJlIGF2YWlsYWJsZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBDb250cm9scyBPdmVybGF5IHRoYXQgbWFza3MgdGhlIHBhZ2UgdmlldyBjb250ZW50LiBPbmx5IHRoZSBoZWFkZXIgaXMgbm90IG1hc2tlZCB3aGVuIHRoZSBvdmVybGF5IGlzIHZpc2libGUuIERlZmF1bHQgaXMgcGVuZGluZyBPdmVybGF5IHdpdGggbm8gbWVzc2FnZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBzdGF0dXM/OiBPdmVybGF5ID0gbmV3IE92ZXJsYXkoJ3BlbmRpbmcnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogU2V0IHRvIGZhbHNlIHRvIGhpZGUgdGhlIGVudGlyZSBoZWFkZXIsIGluY2x1ZGluZyBicmVhZGNydW1icyBhbmQgZXJyb3IgYmFubmVyLiBEZWZhdWx0IGlzIHRydWUuXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIHNob3dIZWFkZXI6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICAvKipcclxuICAgKiBEaXNwbGF5cyBhbiBlcnJvciBiYW5uZXIgdW5kZXIgdGhlIHRpdGxlYmFyIHdoZW4gcHJvdmlkZWQgYSB2YWx1ZS5cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgZXJyb3JzPzogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBCcmVhZGNydW1icyB0byBiZSBkaXNwbGF5ZWQgaW4gdGhlIGhlYWRlci5cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgYnJlYWRjcnVtYnM/OiBOYXZJdGVtW107XHJcblxyXG4gIC8qKlxyXG4gICAqIFRpdGxlIHNldHRpbmdzLiBQYXNzZWQgdG8gdGhlIFBhZ2VUaXRsZUNvbXBvbmVudC5cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgdGl0bGU/OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgcHVibGljIHRpdGxlSWNvbj86IHN0cmluZztcclxuICBASW5wdXQoKSBwdWJsaWMgc3ViVGl0bGU/OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgcHVibGljIHN1YlRpdGxlVXJsPzogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBMYWJlbCBmb3IgdGhlIGFjdGlvbnMgZHJvcGRvd24gaW4gdGhlIGhlYWRlci4gRGVmYXVsdCBpcyAnQWN0aW9ucydcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgbW9yZUFjdGlvbnNMYWJlbD86IHN0cmluZyA9ICdBY3Rpb25zJztcclxuICAvKipcclxuICAgKiBPcHRpb25zIGZvciB0aGUgYWN0aW9ucyBkcm9wZG93biBpbiB0aGUgaGVhZGVyLiBUaGUgZHJvcGRvd24gaXMgaGlkZGVuIGlmIG5vdCBvcHRpb25zIGFyZSBwcm92aWRlZC5cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgbW9yZUFjdGlvbnM/OiBNZW51SXRlbVtdO1xyXG5cclxuICAvKipcclxuICAgKiBMYWJlbCBmb3IgdGhlIHNlY29uZGFyeSBidXR0b24gaW4gdGhlIGhlYWRlci4gRGVmYXVsdCBpcyAnQ2FuY2VsJ1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBzZWNvbmRhcnlBY3Rpb25MYWJlbD86IHN0cmluZyA9ICdDYW5jZWwnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBoaWRlU2Vjb25kYXJ5QWN0aW9uID0gZmFsc2U7XHJcblxyXG4gIC8qKiBGbGFnIGZvciBoaWRpbmcgdGhlIHRpbnkgY2xvc2UgYnV0dG9uIGluIHRoZSB0b3AtcmlnaHQgY29ybmVyIG9mIGRpYWxvZyB3aGlsZSBpbiBwZW5kaW5nIHN0YXRlIG9ubHkgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgaGlkZUNsb3NlT25QZW5kaW5nOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIExhYmVsIGZvciB0aGUgcHJpbWFyeSBidXR0b24gaW4gdGhlIGhlYWRlci4gRGVmYXVsdCBpcyAnU2F2ZSdcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgcHJpbWFyeUFjdGlvbkxhYmVsPzogc3RyaW5nID0gJ1NhdmUnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBoaWRlUHJpbWFyeUFjdGlvbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBSZXBsYWNlcyB0aGUgdGl0bGUsIHN1YnRpdGxlIGFuZCB0aXRsZSBpY29uXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGN1c3RvbVRpdGxlVGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICAvKipcclxuICAgKiBJbnNlcnRlZCB0byB0aGUgbGVmdCBvZiB0aGUgZGVmYXVsdCBhY3Rpb25zXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGN1c3RvbUFjdGlvbnNUZW1wbGF0ZT86IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlcGxhY2VzIHRoZSB0aXRsZWJhciBhbmQgYWN0aW9ucyBvZiB0aGUgZGVmYXVsdCBoZWFkZXIuIEJyZWFkY3J1bWJzIGFuZCBlcnJvciBiYW5uZXIgYXJlIG5vdCByZXBsYWNlZC4gQ2Fubm90IGNvbnRhaW4gYSA8aGVhZGVyPiBlbGVtZW50LlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjdXN0b21IZWFkZXJUZW1wbGF0ZT86IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIC8qKlxyXG4gICAqIENvbnRlbnQgdG8gaW5jbHVkZSBpbiB0aGUgZm9vdGVyXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGZvb3RlclRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgLyoqXHJcbiAgICogUmVwbGFjZXMgdGhlIEVycm9yIEJhbm5lciBkZWZhdWx0IHRlbXBsYXRlLiBVc2VmdWwgd2hlbiB3ZSBuZWVkIHRvIHNob3cgbW9yZSB0aGFuIHRleHQgaW4gdGhlIGJhbm5lci5cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgY3VzdG9tRXJyb3JCYW5uZXJUZW1wbGF0ZT86IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIC8qKlxyXG4gICAqIFBpbnMgdGhlIGZvb3RlciB0byB0aGUgYm90dG9tIG9mIHRoZSB2aWV3IGFuZCBvdmVybGF5cyBhbnkgb3ZlcmZsb3dpbmcgY29udGVudFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBzdGlja3lGb290ZXIgPSB0cnVlO1xyXG5cclxuICAvKipcclxuICAgKiBQcmV2ZW50cyBjb250ZW50IGZyb20gb3ZlcmZsb3dpbmcgdGhlIHZpZXcuIENvbnRlbnQgbXVzdCBtYW5hZ2Ugb3ZlcmZsb3cgaW5zdGVhZC5cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgZml0Q29udGVudCA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBEaXNhYmxlcyB0aGUgcHJpbWFyeSBhY3Rpb24gYnV0dG9uXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVQcmltYXJ5QWN0aW9uID0gZmFsc2U7XHJcblxyXG4gIC8qKiBDaGFuZ2VzIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgY29udGVudCBhbmQgb3ZlcmxheSB0byB3aGl0ZSAqL1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuYmctY29udGVudCcpXHJcbiAgQElucHV0KCkgcHVibGljIGJnQ29udGVudCA9IGZhbHNlO1xyXG5cclxuICBAT3V0cHV0KCkgcHVibGljIG9uUHJpbWFyeUFjdGlvbjogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIHB1YmxpYyBvblNlY29uZGFyeUFjdGlvbjogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBkaWFsb2dTZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlXHJcbiAgKSB7IH1cclxuXHJcbiAgcHVibGljIHByaW1hcnlBY3Rpb24oZXZlbnQ6IGFueSkge1xyXG4gICAgaWYgKHRoaXMub25QcmltYXJ5QWN0aW9uKSB7XHJcbiAgICAgIHRoaXMub25QcmltYXJ5QWN0aW9uLmVtaXQoZXZlbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHNlY29uZGFyeUFjdGlvbihldmVudDogYW55KSB7XHJcbiAgICBpZiAodGhpcy5vblNlY29uZGFyeUFjdGlvbikge1xyXG4gICAgICB0aGlzLm9uU2Vjb25kYXJ5QWN0aW9uLmVtaXQoZXZlbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsb3NlRGlhbG9nKCkge1xyXG4gICAgdGhpcy5kaWFsb2dTZXJ2aWNlLmNsb3NlTGF0ZXN0RGlhbG9nKG5ldyBEaWFsb2dSZXN1bHQoZmFsc2UpKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBlY092ZXJsYXlcclxuICAgICBbc3RhdHVzXT1cInN0YXR1cz8uc3RhdHVzXCJcclxuICAgICBbbWVzc2FnZV09XCJzdGF0dXM/Lm1lc3NhZ2VcIlxyXG4gICAgIFtkaXNwbGF5QXNNYXNrXT1cInRydWVcIlxyXG4gICAgIGNsYXNzPVwiZmxleC1ncm93IGQtZmxleFwiXHJcbiAgICAgW25nQ2xhc3NdPVwieydiZy1ib2R5JzogIWJnQ29udGVudCwgJ2JnLWNvbnRlbnQnOiBiZ0NvbnRlbnR9XCI+XHJcbiAgICA8ZGl2IGlkPVwiUGFnZVZpZXdTY3JvbGxDb250YWluZXJcIlxyXG4gICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBmbGV4LWdyb3cgc2Nyb2xsLXlcIlxyXG4gICAgICAgICBbY2xhc3MuaXMtZGlhbG9nXT1cImlzRGlhbG9nXCJcclxuICAgICAgICAgW2NsYXNzLmZpdC1jb250ZW50XT1cImZpdENvbnRlbnRcIlxyXG4gICAgICAgICBbY2xhc3Muc3RpY2t5LWZvb3Rlcl09XCJzdGlja3lGb290ZXIgJiYgISFmb290ZXJUZW1wbGF0ZVwiXHJcbiAgICAgICAgIFtjbGFzcy5vdmVybGF5LXZpc2libGVdPVwic3RhdHVzPy5zdGF0dXMgIT09ICdoYXNEYXRhJ1wiXHJcbiAgICAgICAgIFtjbGFzcy5mb290ZXItdmlzaWJsZV09XCIhIWZvb3RlclRlbXBsYXRlXCJcclxuICAgICAgICAgY2RrU2Nyb2xsYWJsZT5cclxuICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gICAgICAgIDwvc2VjdGlvbj5cclxuXHJcbiAgICAgICAgPGZvb3RlciAqbmdJZj1cImZvb3RlclRlbXBsYXRlXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmb290ZXJUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvZm9vdGVyPlxyXG5cclxuICAgICAgICA8aGVhZGVyICpuZ0lmPVwic2hvd0hlYWRlclwiPlxyXG4gICAgICAgICAgICA8b2wgaWQ9XCJicmVhZGNydW1ic1wiXHJcbiAgICAgICAgICAgICAgICAqbmdJZj1cImJyZWFkY3J1bWJzPy5sZW5ndGggJiYgIWlzRGlhbG9nXCI+XHJcbiAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGNydW1iIG9mIGJyZWFkY3J1bWJzOyBsYXN0IGFzIGlzTGFzdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxhICpuZ0lmPVwiY3J1bWIudXJsOyBlbHNlIGxhYmVsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJjcnVtYi51cmxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImxhYmVsXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjbGFiZWw+e3tjcnVtYi5sYWJlbH19PC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgIDwvb2w+XHJcblxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGl0bGViYXJcIj5cclxuICAgICAgICAgICAgICAgIDxhcHAtcGFnZS10aXRsZSAqbmdJZj1cIiFjdXN0b21UaXRsZVRlbXBsYXRlOyBlbHNlIGN1c3RvbVRpdGxlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwidGl0bGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzdWJUaXRsZV09XCJzdWJUaXRsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3N1YlRpdGxlVXJsXT1cInN1YlRpdGxlVXJsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdGl0bGVJY29uXT1cInRpdGxlSWNvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0aXRsZSB0ZXh0LXRydW5jYXRlXCI+XHJcbiAgICAgICAgICAgICAgICA8L2FwcC1wYWdlLXRpdGxlPlxyXG5cclxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjY3VzdG9tVGl0bGU+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRpdGxlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjdXN0b21UaXRsZVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb25zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGVjLWJ1dHRvbiBpZD1cInByaW1hcnlBY3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtbC0yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIWhpZGVQcmltYXJ5QWN0aW9uICYmIG9uUHJpbWFyeUFjdGlvbi5vYnNlcnZlcnM/Lmxlbmd0aCAmJiAhcmVhZG9ubHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInN0YXR1cz8uc3RhdHVzID09PSAncGVuZGluZycgfHwgZGlzYWJsZVByaW1hcnlBY3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInByaW1hcnlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cInByaW1hcnlBY3Rpb25MYWJlbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2tlZCk9XCJwcmltYXJ5QWN0aW9uKCRldmVudClcIj5cclxuICAgICAgICAgICAgICAgICAgICA8L2VjLWJ1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8ZWMtYnV0dG9uIGlkPVwic2Vjb25kYXJ5QWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWwtMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFoaWRlU2Vjb25kYXJ5QWN0aW9uICYmIG9uU2Vjb25kYXJ5QWN0aW9uLm9ic2VydmVycz8ubGVuZ3RoXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJzZWNvbmRhcnlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cInJlYWRvbmx5ID8gJ0Nsb3NlJyA6IHNlY29uZGFyeUFjdGlvbkxhYmVsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGlja2VkKT1cInNlY29uZGFyeUFjdGlvbigkZXZlbnQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9lYy1idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPGVjLWRyb3Bkb3duIGlkPVwibW9yZUFjdGlvbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIm1vcmVBY3Rpb25zPy5sZW5ndGggJiYgIXJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInN0YXR1cz8uc3RhdHVzID09PSAncGVuZGluZydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1sLTJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidXR0b25UeXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJtb3JlQWN0aW9uc0xhYmVsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2l0ZW1zXT1cIm1vcmVBY3Rpb25zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9lYy1kcm9wZG93bj5cclxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY3VzdG9tQWN0aW9uc1RlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiY3VzdG9tSGVhZGVyVGVtcGxhdGVcIlxyXG4gICAgICAgICAgICAgICAgIGNsYXNzPVwicGFnZS1oZWFkZXJcIj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjdXN0b21IZWFkZXJUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDxlYy1iYW5uZXIgKm5nSWY9XCIhY3VzdG9tRXJyb3JCYW5uZXJUZW1wbGF0ZSAmJiBlcnJvcnM7IGVsc2UgY3VzdG9tRXJyb3JCYW5uZXJPdXRsZXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIGlkPVwicGFnZVZpZXdFcnJvcnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5ib3JkZXItYm90dG9tLTBdPVwiIWlzRGlhbG9nXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IFtpbm5lckh0bWxdPVwiZXJyb3JzXCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZWMtYmFubmVyPlxyXG5cclxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNjdXN0b21FcnJvckJhbm5lck91dGxldD5cclxuICAgICAgICAgICAgICAgIDxlYy1iYW5uZXIgKm5nSWY9XCJlcnJvcnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cInBhZ2VWaWV3RXJyb3JzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmJvcmRlci1ib3R0b20tMF09XCIhaXNEaWFsb2dcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY3VzdG9tRXJyb3JCYW5uZXJUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPC9lYy1iYW5uZXI+XHJcbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPC9oZWFkZXI+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZWMtYnV0dG9uICpuZ0lmPVwiaXNEaWFsb2cgJiYgKCAoc3RhdHVzPy5zdGF0dXMgPT09ICdwZW5kaW5nJyAmJiAhaGlkZUNsb3NlT25QZW5kaW5nKSB8fCBzdGF0dXM/LnN0YXR1cyA9PT0gJ2Vycm9yJylcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhZ2VWaWV3RGlhbG9nQ2xvc2VcIlxyXG4gICAgICAgICAgICAgICB0eXBlPVwiaWNvblwiXHJcbiAgICAgICAgICAgICAgIGljb249XCJpY29uLWNhbmNlbFwiXHJcbiAgICAgICAgICAgICAgIChjbGlja2VkKT1cImNsb3NlRGlhbG9nKClcIj5cclxuICAgIDwvZWMtYnV0dG9uPlxyXG48L2Rpdj4iXX0=
1
+ import { Component, EventEmitter, HostBinding, Input, Output } from '@angular/core';
2
+ import { Overlay } from '../../../display/view-overlay/view-overlay.component';
3
+ import { DialogResult } from '../../../display/dialog/dialog-types';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../../../display/dialog/dialog.service";
6
+ import * as i2 from "@angular/common";
7
+ import * as i3 from "@angular/router";
8
+ import * as i4 from "@angular/cdk/scrolling";
9
+ import * as i5 from "../../../controls/button/button.component";
10
+ import * as i6 from "../../../display/view-overlay/view-overlay.component";
11
+ import * as i7 from "../../../controls/banner/banner.component";
12
+ import * as i8 from "../../../controls/dropdown/dropdown.component";
13
+ import * as i9 from "../page-title/page-title.component";
14
+ export class PageViewComponent {
15
+ constructor(dialogService) {
16
+ this.dialogService = dialogService;
17
+ /**
18
+ * Set to true when page-view is inside a dialog to adjust styles and hide breadcrumbs.
19
+ */
20
+ this.isDialog = false;
21
+ /**
22
+ * Set to true to enable read only mode. Only a single secondary action will be available
23
+ */
24
+ this.readonly = false;
25
+ /**
26
+ * Controls Overlay that masks the page view content. Only the header is not masked when the overlay is visible. Default is pending Overlay with no message
27
+ */
28
+ this.status = new Overlay('pending');
29
+ /**
30
+ * Set to false to hide the entire header, including breadcrumbs and error banner. Default is true.
31
+ */
32
+ this.showHeader = true;
33
+ /**
34
+ * Label for the actions dropdown in the header. Default is 'Actions'
35
+ */
36
+ this.moreActionsLabel = 'Actions';
37
+ /**
38
+ * Label for the secondary button in the header. Default is 'Cancel'
39
+ */
40
+ this.secondaryActionLabel = 'Cancel';
41
+ this.hideSecondaryAction = false;
42
+ /** Flag for hiding the tiny close button in the top-right corner of dialog while in pending state only */
43
+ this.hideCloseOnPending = false;
44
+ /**
45
+ * Label for the primary button in the header. Default is 'Save'
46
+ */
47
+ this.primaryActionLabel = 'Save';
48
+ this.hidePrimaryAction = false;
49
+ /**
50
+ * Pins the footer to the bottom of the view and overlays any overflowing content
51
+ */
52
+ this.stickyFooter = true;
53
+ /**
54
+ * Prevents content from overflowing the view. Content must manage overflow instead.
55
+ */
56
+ this.fitContent = false;
57
+ /**
58
+ * Disables the primary action button
59
+ */
60
+ this.disablePrimaryAction = false;
61
+ /** Changes the background color for the content and overlay to white */
62
+ this.bgContent = false;
63
+ this.onPrimaryAction = new EventEmitter();
64
+ this.onSecondaryAction = new EventEmitter();
65
+ }
66
+ primaryAction(event) {
67
+ if (this.onPrimaryAction) {
68
+ this.onPrimaryAction.emit(event);
69
+ }
70
+ }
71
+ secondaryAction(event) {
72
+ if (this.onSecondaryAction) {
73
+ this.onSecondaryAction.emit(event);
74
+ }
75
+ }
76
+ closeDialog() {
77
+ this.dialogService.closeLatestDialog(new DialogResult(false));
78
+ }
79
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PageViewComponent, deps: [{ token: i1.DialogService }], target: i0.ɵɵFactoryTarget.Component }); }
80
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: PageViewComponent, selector: "ec-page-view", inputs: { isDialog: "isDialog", readonly: "readonly", status: "status", showHeader: "showHeader", errors: "errors", breadcrumbs: "breadcrumbs", title: "title", titleIcon: "titleIcon", subTitle: "subTitle", subTitleUrl: "subTitleUrl", moreActionsLabel: "moreActionsLabel", moreActions: "moreActions", secondaryActionLabel: "secondaryActionLabel", hideSecondaryAction: "hideSecondaryAction", hideCloseOnPending: "hideCloseOnPending", primaryActionLabel: "primaryActionLabel", hidePrimaryAction: "hidePrimaryAction", customTitleTemplate: "customTitleTemplate", customActionsTemplate: "customActionsTemplate", customHeaderTemplate: "customHeaderTemplate", footerTemplate: "footerTemplate", customErrorBannerTemplate: "customErrorBannerTemplate", stickyFooter: "stickyFooter", fitContent: "fitContent", disablePrimaryAction: "disablePrimaryAction", bgContent: "bgContent" }, outputs: { onPrimaryAction: "onPrimaryAction", onSecondaryAction: "onSecondaryAction" }, host: { properties: { "class.bg-content": "this.bgContent" }, classAttribute: "flex-grow" }, ngImport: i0, template: "<div ecOverlay\r\n [status]=\"status?.status\"\r\n [message]=\"status?.message\"\r\n [displayAsMask]=\"true\"\r\n class=\"flex-grow d-flex\"\r\n [ngClass]=\"{'bg-body': !bgContent, 'bg-content': bgContent}\">\r\n <div id=\"PageViewScrollContainer\"\r\n class=\"d-flex flex-column flex-grow scroll-y\"\r\n [class.is-dialog]=\"isDialog\"\r\n [class.fit-content]=\"fitContent\"\r\n [class.sticky-footer]=\"stickyFooter && !!footerTemplate\"\r\n [class.overlay-visible]=\"status?.status !== 'hasData'\"\r\n [class.footer-visible]=\"!!footerTemplate\"\r\n cdkScrollable>\r\n <section>\r\n <ng-content></ng-content>\r\n </section>\r\n\r\n <footer *ngIf=\"footerTemplate\">\r\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\r\n </footer>\r\n\r\n <header *ngIf=\"showHeader\">\r\n <ol id=\"breadcrumbs\"\r\n *ngIf=\"breadcrumbs?.length && !isDialog\">\r\n <li *ngFor=\"let crumb of breadcrumbs; last as isLast\">\r\n <a *ngIf=\"crumb.url; else label\"\r\n [routerLink]=\"crumb.url\">\r\n <ng-container *ngTemplateOutlet=\"label\"></ng-container>\r\n </a>\r\n <ng-template #label>{{crumb.label}}</ng-template>\r\n </li>\r\n </ol>\r\n\r\n <div class=\"titlebar\">\r\n <app-page-title *ngIf=\"!customTitleTemplate; else customTitle\"\r\n [title]=\"title\"\r\n [subTitle]=\"subTitle\"\r\n [subTitleUrl]=\"subTitleUrl\"\r\n [titleIcon]=\"titleIcon\"\r\n class=\"title text-truncate\">\r\n </app-page-title>\r\n\r\n <ng-template #customTitle>\r\n <div class=\"title\">\r\n <ng-container *ngTemplateOutlet=\"customTitleTemplate\"></ng-container>\r\n </div>\r\n </ng-template>\r\n\r\n <div class=\"actions\">\r\n <ec-button id=\"primaryAction\"\r\n class=\"ml-2\"\r\n *ngIf=\"!hidePrimaryAction && onPrimaryAction.observers?.length && !readonly\"\r\n [disabled]=\"status?.status === 'pending' || disablePrimaryAction\"\r\n type=\"primary\"\r\n [label]=\"primaryActionLabel\"\r\n (clicked)=\"primaryAction($event)\">\r\n </ec-button>\r\n <ec-button id=\"secondaryAction\"\r\n class=\"ml-2\"\r\n *ngIf=\"!hideSecondaryAction && onSecondaryAction.observers?.length\"\r\n type=\"secondary\"\r\n [label]=\"readonly ? 'Close' : secondaryActionLabel\"\r\n (clicked)=\"secondaryAction($event)\">\r\n </ec-button>\r\n <ec-dropdown id=\"moreActions\"\r\n *ngIf=\"moreActions?.length && !readonly\"\r\n [disabled]=\"status?.status === 'pending'\"\r\n class=\"ml-2\"\r\n buttonType=\"text\"\r\n [label]=\"moreActionsLabel\"\r\n [items]=\"moreActions\">\r\n </ec-dropdown>\r\n <ng-container *ngTemplateOutlet=\"customActionsTemplate\"></ng-container>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"customHeaderTemplate\"\r\n class=\"page-header\">\r\n <ng-container *ngTemplateOutlet=\"customHeaderTemplate\"></ng-container>\r\n </div>\r\n\r\n <ec-banner *ngIf=\"!customErrorBannerTemplate && errors; else customErrorBannerOutlet\"\r\n id=\"pageViewErrors\"\r\n [class.border-bottom-0]=\"!isDialog\">\r\n <div [innerHtml]=\"errors\"></div>\r\n </ec-banner>\r\n\r\n <ng-template #customErrorBannerOutlet>\r\n <ec-banner *ngIf=\"errors\"\r\n id=\"pageViewErrors\"\r\n [class.border-bottom-0]=\"!isDialog\">\r\n <ng-container *ngTemplateOutlet=\"customErrorBannerTemplate\"></ng-container>\r\n </ec-banner>\r\n </ng-template>\r\n </header>\r\n </div>\r\n\r\n <ec-button *ngIf=\"isDialog && ( (status?.status === 'pending' && !hideCloseOnPending) || status?.status === 'error')\"\r\n id=\"pageViewDialogClose\"\r\n type=\"icon\"\r\n icon=\"icon-cancel\"\r\n (clicked)=\"closeDialog()\">\r\n </ec-button>\r\n</div>", styles: [":host{flex:1 1;min-height:0;display:flex}header{background-color:var(--ec-background-color-body);position:sticky;top:0;order:1;padding:1rem 1.5rem .5rem;flex:none;z-index:var(--ec-z-index-sticky-page-header)}ol{font-size:var(--ec-font-size-label);line-height:1rem;grid-column:1/3;grid-row:1/2;list-style:none;padding:0;margin:0 0 .25rem}ol li{display:inline}ol li:not(:last-child):after{content:\" / \";display:inline;color:var(--ec-color-secondary-dark)}div[ecOverlay]{position:relative}.titlebar{display:grid;grid-template-columns:auto max-content;grid-template-rows:max-content max-content;gap:0 1rem}.title{grid-column:1/2;grid-row:2/3;align-self:center}.actions{grid-column:2/3;grid-row:2/3;display:flex;flex-direction:row-reverse}ec-banner{margin-top:1rem}section{padding:var(--ec-page-view-padding-section, .5rem 1.5rem 2rem);order:2;flex:1 0 auto;min-height:0}:not(.is-dialog)>section{z-index:0}footer{background-color:var(--ec-background-color-body);order:3;padding:0 1.5rem;height:4.5rem;flex:none;display:flex;align-items:center}.is-dialog header{padding:0}.is-dialog .titlebar{background-color:var(--ec-background-color);padding:1rem}.is-dialog ec-banner{margin:0}.is-dialog section{padding:var(--ec-page-view-padding-section, 1rem 1rem 1.5rem)}.sticky-footer section{padding-bottom:4.5rem}.sticky-footer footer{position:sticky;bottom:0;z-index:var(--ec-z-index-sticky-page-header)}.fit-content>section{flex:1 1;display:flex}.footer-visible section{padding-bottom:0}.overlay-visible header{z-index:var(--ec-z-index-overlay)1}.overlay-visible ec-banner{display:none}:host(.bg-content) header{background-color:var(--ec-background-color)}:host(.bg-content) section{background-color:var(--ec-background-color)}:host(.bg-content) footer{background-color:var(--ec-background-color)}#pageViewDialogClose{position:absolute;top:1rem;right:1rem;z-index:calc(var(--ec-z-index-overlay) + 1)}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i4.CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }, { kind: "component", type: i5.ButtonComponent, selector: "ec-button", inputs: ["id", "disabled", "icon", "label", "badge", "tabindex", "type", "pending", "pendingIcon", "customTemplate", "isSubmit", "autofocus"], outputs: ["clicked"] }, { kind: "component", type: i6.ViewOverlayComponent, selector: "[ecOverlay]", inputs: ["status", "message", "action", "noDataTemplate", "displayAsMask", "overlayClassList"] }, { kind: "component", type: i7.BannerComponent, selector: "ec-banner", inputs: ["hidden", "id", "type", "bannerStyle", "title", "text", "list", "showCloseBtn", "autoHideOnClose", "customIcon", "rememberClosed"], outputs: ["closed"] }, { kind: "component", type: i8.DropdownComponent, selector: "ec-dropdown", inputs: ["id", "autofocus", "status", "disabled", "label", "icon", "buttonType", "buttonAlignment", "buttonTitle", "tabindex", "showArrow", "items", "menuTemplateType", "menuTitle", "menuHeight", "menuWidth", "menuMinWidth", "menuPosition", "menuFooter", "popupFixed", "buttonCustomTemplate", "pending"], outputs: ["itemSelected", "popupOpened"] }, { kind: "component", type: i9.PageTitleComponent, selector: "app-page-title", inputs: ["title", "titleIcon", "subTitle", "subTitleUrl"] }] }); }
81
+ }
82
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: PageViewComponent, decorators: [{
83
+ type: Component,
84
+ args: [{ selector: 'ec-page-view', host: {
85
+ class: "flex-grow"
86
+ }, template: "<div ecOverlay\r\n [status]=\"status?.status\"\r\n [message]=\"status?.message\"\r\n [displayAsMask]=\"true\"\r\n class=\"flex-grow d-flex\"\r\n [ngClass]=\"{'bg-body': !bgContent, 'bg-content': bgContent}\">\r\n <div id=\"PageViewScrollContainer\"\r\n class=\"d-flex flex-column flex-grow scroll-y\"\r\n [class.is-dialog]=\"isDialog\"\r\n [class.fit-content]=\"fitContent\"\r\n [class.sticky-footer]=\"stickyFooter && !!footerTemplate\"\r\n [class.overlay-visible]=\"status?.status !== 'hasData'\"\r\n [class.footer-visible]=\"!!footerTemplate\"\r\n cdkScrollable>\r\n <section>\r\n <ng-content></ng-content>\r\n </section>\r\n\r\n <footer *ngIf=\"footerTemplate\">\r\n <ng-container *ngTemplateOutlet=\"footerTemplate\"></ng-container>\r\n </footer>\r\n\r\n <header *ngIf=\"showHeader\">\r\n <ol id=\"breadcrumbs\"\r\n *ngIf=\"breadcrumbs?.length && !isDialog\">\r\n <li *ngFor=\"let crumb of breadcrumbs; last as isLast\">\r\n <a *ngIf=\"crumb.url; else label\"\r\n [routerLink]=\"crumb.url\">\r\n <ng-container *ngTemplateOutlet=\"label\"></ng-container>\r\n </a>\r\n <ng-template #label>{{crumb.label}}</ng-template>\r\n </li>\r\n </ol>\r\n\r\n <div class=\"titlebar\">\r\n <app-page-title *ngIf=\"!customTitleTemplate; else customTitle\"\r\n [title]=\"title\"\r\n [subTitle]=\"subTitle\"\r\n [subTitleUrl]=\"subTitleUrl\"\r\n [titleIcon]=\"titleIcon\"\r\n class=\"title text-truncate\">\r\n </app-page-title>\r\n\r\n <ng-template #customTitle>\r\n <div class=\"title\">\r\n <ng-container *ngTemplateOutlet=\"customTitleTemplate\"></ng-container>\r\n </div>\r\n </ng-template>\r\n\r\n <div class=\"actions\">\r\n <ec-button id=\"primaryAction\"\r\n class=\"ml-2\"\r\n *ngIf=\"!hidePrimaryAction && onPrimaryAction.observers?.length && !readonly\"\r\n [disabled]=\"status?.status === 'pending' || disablePrimaryAction\"\r\n type=\"primary\"\r\n [label]=\"primaryActionLabel\"\r\n (clicked)=\"primaryAction($event)\">\r\n </ec-button>\r\n <ec-button id=\"secondaryAction\"\r\n class=\"ml-2\"\r\n *ngIf=\"!hideSecondaryAction && onSecondaryAction.observers?.length\"\r\n type=\"secondary\"\r\n [label]=\"readonly ? 'Close' : secondaryActionLabel\"\r\n (clicked)=\"secondaryAction($event)\">\r\n </ec-button>\r\n <ec-dropdown id=\"moreActions\"\r\n *ngIf=\"moreActions?.length && !readonly\"\r\n [disabled]=\"status?.status === 'pending'\"\r\n class=\"ml-2\"\r\n buttonType=\"text\"\r\n [label]=\"moreActionsLabel\"\r\n [items]=\"moreActions\">\r\n </ec-dropdown>\r\n <ng-container *ngTemplateOutlet=\"customActionsTemplate\"></ng-container>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"customHeaderTemplate\"\r\n class=\"page-header\">\r\n <ng-container *ngTemplateOutlet=\"customHeaderTemplate\"></ng-container>\r\n </div>\r\n\r\n <ec-banner *ngIf=\"!customErrorBannerTemplate && errors; else customErrorBannerOutlet\"\r\n id=\"pageViewErrors\"\r\n [class.border-bottom-0]=\"!isDialog\">\r\n <div [innerHtml]=\"errors\"></div>\r\n </ec-banner>\r\n\r\n <ng-template #customErrorBannerOutlet>\r\n <ec-banner *ngIf=\"errors\"\r\n id=\"pageViewErrors\"\r\n [class.border-bottom-0]=\"!isDialog\">\r\n <ng-container *ngTemplateOutlet=\"customErrorBannerTemplate\"></ng-container>\r\n </ec-banner>\r\n </ng-template>\r\n </header>\r\n </div>\r\n\r\n <ec-button *ngIf=\"isDialog && ( (status?.status === 'pending' && !hideCloseOnPending) || status?.status === 'error')\"\r\n id=\"pageViewDialogClose\"\r\n type=\"icon\"\r\n icon=\"icon-cancel\"\r\n (clicked)=\"closeDialog()\">\r\n </ec-button>\r\n</div>", styles: [":host{flex:1 1;min-height:0;display:flex}header{background-color:var(--ec-background-color-body);position:sticky;top:0;order:1;padding:1rem 1.5rem .5rem;flex:none;z-index:var(--ec-z-index-sticky-page-header)}ol{font-size:var(--ec-font-size-label);line-height:1rem;grid-column:1/3;grid-row:1/2;list-style:none;padding:0;margin:0 0 .25rem}ol li{display:inline}ol li:not(:last-child):after{content:\" / \";display:inline;color:var(--ec-color-secondary-dark)}div[ecOverlay]{position:relative}.titlebar{display:grid;grid-template-columns:auto max-content;grid-template-rows:max-content max-content;gap:0 1rem}.title{grid-column:1/2;grid-row:2/3;align-self:center}.actions{grid-column:2/3;grid-row:2/3;display:flex;flex-direction:row-reverse}ec-banner{margin-top:1rem}section{padding:var(--ec-page-view-padding-section, .5rem 1.5rem 2rem);order:2;flex:1 0 auto;min-height:0}:not(.is-dialog)>section{z-index:0}footer{background-color:var(--ec-background-color-body);order:3;padding:0 1.5rem;height:4.5rem;flex:none;display:flex;align-items:center}.is-dialog header{padding:0}.is-dialog .titlebar{background-color:var(--ec-background-color);padding:1rem}.is-dialog ec-banner{margin:0}.is-dialog section{padding:var(--ec-page-view-padding-section, 1rem 1rem 1.5rem)}.sticky-footer section{padding-bottom:4.5rem}.sticky-footer footer{position:sticky;bottom:0;z-index:var(--ec-z-index-sticky-page-header)}.fit-content>section{flex:1 1;display:flex}.footer-visible section{padding-bottom:0}.overlay-visible header{z-index:var(--ec-z-index-overlay)1}.overlay-visible ec-banner{display:none}:host(.bg-content) header{background-color:var(--ec-background-color)}:host(.bg-content) section{background-color:var(--ec-background-color)}:host(.bg-content) footer{background-color:var(--ec-background-color)}#pageViewDialogClose{position:absolute;top:1rem;right:1rem;z-index:calc(var(--ec-z-index-overlay) + 1)}\n"] }]
87
+ }], ctorParameters: function () { return [{ type: i1.DialogService }]; }, propDecorators: { isDialog: [{
88
+ type: Input
89
+ }], readonly: [{
90
+ type: Input
91
+ }], status: [{
92
+ type: Input
93
+ }], showHeader: [{
94
+ type: Input
95
+ }], errors: [{
96
+ type: Input
97
+ }], breadcrumbs: [{
98
+ type: Input
99
+ }], title: [{
100
+ type: Input
101
+ }], titleIcon: [{
102
+ type: Input
103
+ }], subTitle: [{
104
+ type: Input
105
+ }], subTitleUrl: [{
106
+ type: Input
107
+ }], moreActionsLabel: [{
108
+ type: Input
109
+ }], moreActions: [{
110
+ type: Input
111
+ }], secondaryActionLabel: [{
112
+ type: Input
113
+ }], hideSecondaryAction: [{
114
+ type: Input
115
+ }], hideCloseOnPending: [{
116
+ type: Input
117
+ }], primaryActionLabel: [{
118
+ type: Input
119
+ }], hidePrimaryAction: [{
120
+ type: Input
121
+ }], customTitleTemplate: [{
122
+ type: Input
123
+ }], customActionsTemplate: [{
124
+ type: Input
125
+ }], customHeaderTemplate: [{
126
+ type: Input
127
+ }], footerTemplate: [{
128
+ type: Input
129
+ }], customErrorBannerTemplate: [{
130
+ type: Input
131
+ }], stickyFooter: [{
132
+ type: Input
133
+ }], fitContent: [{
134
+ type: Input
135
+ }], disablePrimaryAction: [{
136
+ type: Input
137
+ }], bgContent: [{
138
+ type: HostBinding,
139
+ args: ['class.bg-content']
140
+ }, {
141
+ type: Input
142
+ }], onPrimaryAction: [{
143
+ type: Output
144
+ }], onSecondaryAction: [{
145
+ type: Output
146
+ }] } });
147
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnZS12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9zaGFyZWQvcGFnZS9wYWdlLXZpZXcvcGFnZS12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9zaGFyZWQvcGFnZS9wYWdlLXZpZXcvcGFnZS12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFlLE1BQU0sZUFBZSxDQUFDO0FBSWpHLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUMvRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7Ozs7Ozs7Ozs7O0FBVXBFLE1BQU0sT0FBTyxpQkFBaUI7SUE4RzVCLFlBQ1UsYUFBNEI7UUFBNUIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUE5R3RDOztXQUVHO1FBQ2EsYUFBUSxHQUFZLEtBQUssQ0FBQztRQUUxQzs7V0FFRztRQUNhLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFFMUM7O1dBRUc7UUFDYSxXQUFNLEdBQWEsSUFBSSxPQUFPLENBQUMsU0FBUyxDQUFDLENBQUM7UUFFMUQ7O1dBRUc7UUFDYSxlQUFVLEdBQVksSUFBSSxDQUFDO1FBb0IzQzs7V0FFRztRQUNhLHFCQUFnQixHQUFZLFNBQVMsQ0FBQztRQU10RDs7V0FFRztRQUNhLHlCQUFvQixHQUFZLFFBQVEsQ0FBQztRQUN6Qyx3QkFBbUIsR0FBRyxLQUFLLENBQUM7UUFFNUMsMEdBQTBHO1FBQzFGLHVCQUFrQixHQUFZLEtBQUssQ0FBQztRQUVwRDs7V0FFRztRQUNhLHVCQUFrQixHQUFZLE1BQU0sQ0FBQztRQUNyQyxzQkFBaUIsR0FBRyxLQUFLLENBQUM7UUEyQjFDOztXQUVHO1FBQ2EsaUJBQVksR0FBRyxJQUFJLENBQUM7UUFFcEM7O1dBRUc7UUFDYSxlQUFVLEdBQUcsS0FBSyxDQUFDO1FBRW5DOztXQUVHO1FBQ2EseUJBQW9CLEdBQUcsS0FBSyxDQUFDO1FBRTdDLHdFQUF3RTtRQUV4RCxjQUFTLEdBQUcsS0FBSyxDQUFDO1FBRWpCLG9CQUFlLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDeEQsc0JBQWlCLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7SUFJdkUsQ0FBQztJQUVFLGFBQWEsQ0FBQyxLQUFVO1FBQzdCLElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRTtZQUN4QixJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNsQztJQUNILENBQUM7SUFFTSxlQUFlLENBQUMsS0FBVTtRQUMvQixJQUFJLElBQUksQ0FBQyxpQkFBaUIsRUFBRTtZQUMxQixJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3BDO0lBQ0gsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLFlBQVksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ2hFLENBQUM7K0dBaElVLGlCQUFpQjttR0FBakIsaUJBQWlCLGdsQ0NmOUIsNC9KQXdHTTs7NEZEekZPLGlCQUFpQjtrQkFSN0IsU0FBUzsrQkFDRSxjQUFjLFFBR2xCO3dCQUNKLEtBQUssRUFBRSxXQUFXO3FCQUNuQjtvR0FNZSxRQUFRO3NCQUF2QixLQUFLO2dCQUtVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBS1UsTUFBTTtzQkFBckIsS0FBSztnQkFLVSxVQUFVO3NCQUF6QixLQUFLO2dCQUtVLE1BQU07c0JBQXJCLEtBQUs7Z0JBS1UsV0FBVztzQkFBMUIsS0FBSztnQkFLVSxLQUFLO3NCQUFwQixLQUFLO2dCQUNVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBQ1UsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxXQUFXO3NCQUExQixLQUFLO2dCQUtVLGdCQUFnQjtzQkFBL0IsS0FBSztnQkFJVSxXQUFXO3NCQUExQixLQUFLO2dCQUtVLG9CQUFvQjtzQkFBbkMsS0FBSztnQkFDVSxtQkFBbUI7c0JBQWxDLEtBQUs7Z0JBR1Usa0JBQWtCO3NCQUFqQyxLQUFLO2dCQUtVLGtCQUFrQjtzQkFBakMsS0FBSztnQkFDVSxpQkFBaUI7c0JBQWhDLEtBQUs7Z0JBS1UsbUJBQW1CO3NCQUFsQyxLQUFLO2dCQUtVLHFCQUFxQjtzQkFBcEMsS0FBSztnQkFLVSxvQkFBb0I7c0JBQW5DLEtBQUs7Z0JBS1UsY0FBYztzQkFBN0IsS0FBSztnQkFLVSx5QkFBeUI7c0JBQXhDLEtBQUs7Z0JBS1UsWUFBWTtzQkFBM0IsS0FBSztnQkFLVSxVQUFVO3NCQUF6QixLQUFLO2dCQUtVLG9CQUFvQjtzQkFBbkMsS0FBSztnQkFJVSxTQUFTO3NCQUR4QixXQUFXO3VCQUFDLGtCQUFrQjs7c0JBQzlCLEtBQUs7Z0JBRVcsZUFBZTtzQkFBL0IsTUFBTTtnQkFDVSxpQkFBaUI7c0JBQWpDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIElucHV0LCBPdXRwdXQsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IERpYWxvZ1NlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9kaXNwbGF5L2RpYWxvZy9kaWFsb2cuc2VydmljZSc7XHJcbmltcG9ydCB7IE1lbnVJdGVtIH0gZnJvbSAnLi4vLi4vLi4vY29udHJvbHMvbWVudS9tZW51LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE5hdkl0ZW0gfSBmcm9tICcuLi8uLi8uLi9jb250cm9scy9uYXZpZ2F0aW9uL25hdi1pdGVtJztcclxuaW1wb3J0IHsgT3ZlcmxheSB9IGZyb20gJy4uLy4uLy4uL2Rpc3BsYXkvdmlldy1vdmVybGF5L3ZpZXctb3ZlcmxheS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEaWFsb2dSZXN1bHQgfSBmcm9tICcuLi8uLi8uLi9kaXNwbGF5L2RpYWxvZy9kaWFsb2ctdHlwZXMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdlYy1wYWdlLXZpZXcnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wYWdlLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3BhZ2Utdmlldy5jb21wb25lbnQuc2NzcyddLFxyXG4gIGhvc3Q6IHtcclxuICAgIGNsYXNzOiBcImZsZXgtZ3Jvd1wiXHJcbiAgfVxyXG59KVxyXG5leHBvcnQgY2xhc3MgUGFnZVZpZXdDb21wb25lbnQge1xyXG4gIC8qKlxyXG4gICAqIFNldCB0byB0cnVlIHdoZW4gcGFnZS12aWV3IGlzIGluc2lkZSBhIGRpYWxvZyB0byBhZGp1c3Qgc3R5bGVzIGFuZCBoaWRlIGJyZWFkY3J1bWJzLlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBpc0RpYWxvZzogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBTZXQgdG8gdHJ1ZSB0byBlbmFibGUgcmVhZCBvbmx5IG1vZGUuIE9ubHkgYSBzaW5nbGUgc2Vjb25kYXJ5IGFjdGlvbiB3aWxsIGJlIGF2YWlsYWJsZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyByZWFkb25seTogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBDb250cm9scyBPdmVybGF5IHRoYXQgbWFza3MgdGhlIHBhZ2UgdmlldyBjb250ZW50LiBPbmx5IHRoZSBoZWFkZXIgaXMgbm90IG1hc2tlZCB3aGVuIHRoZSBvdmVybGF5IGlzIHZpc2libGUuIERlZmF1bHQgaXMgcGVuZGluZyBPdmVybGF5IHdpdGggbm8gbWVzc2FnZVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBzdGF0dXM/OiBPdmVybGF5ID0gbmV3IE92ZXJsYXkoJ3BlbmRpbmcnKTtcclxuXHJcbiAgLyoqXHJcbiAgICogU2V0IHRvIGZhbHNlIHRvIGhpZGUgdGhlIGVudGlyZSBoZWFkZXIsIGluY2x1ZGluZyBicmVhZGNydW1icyBhbmQgZXJyb3IgYmFubmVyLiBEZWZhdWx0IGlzIHRydWUuXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIHNob3dIZWFkZXI6IGJvb2xlYW4gPSB0cnVlO1xyXG5cclxuICAvKipcclxuICAgKiBEaXNwbGF5cyBhbiBlcnJvciBiYW5uZXIgdW5kZXIgdGhlIHRpdGxlYmFyIHdoZW4gcHJvdmlkZWQgYSB2YWx1ZS5cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgZXJyb3JzPzogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBCcmVhZGNydW1icyB0byBiZSBkaXNwbGF5ZWQgaW4gdGhlIGhlYWRlci5cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgYnJlYWRjcnVtYnM/OiBOYXZJdGVtW107XHJcblxyXG4gIC8qKlxyXG4gICAqIFRpdGxlIHNldHRpbmdzLiBQYXNzZWQgdG8gdGhlIFBhZ2VUaXRsZUNvbXBvbmVudC5cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgdGl0bGU/OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgcHVibGljIHRpdGxlSWNvbj86IHN0cmluZztcclxuICBASW5wdXQoKSBwdWJsaWMgc3ViVGl0bGU/OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgcHVibGljIHN1YlRpdGxlVXJsPzogc3RyaW5nO1xyXG5cclxuICAvKipcclxuICAgKiBMYWJlbCBmb3IgdGhlIGFjdGlvbnMgZHJvcGRvd24gaW4gdGhlIGhlYWRlci4gRGVmYXVsdCBpcyAnQWN0aW9ucydcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgbW9yZUFjdGlvbnNMYWJlbD86IHN0cmluZyA9ICdBY3Rpb25zJztcclxuICAvKipcclxuICAgKiBPcHRpb25zIGZvciB0aGUgYWN0aW9ucyBkcm9wZG93biBpbiB0aGUgaGVhZGVyLiBUaGUgZHJvcGRvd24gaXMgaGlkZGVuIGlmIG5vdCBvcHRpb25zIGFyZSBwcm92aWRlZC5cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgbW9yZUFjdGlvbnM/OiBNZW51SXRlbVtdO1xyXG5cclxuICAvKipcclxuICAgKiBMYWJlbCBmb3IgdGhlIHNlY29uZGFyeSBidXR0b24gaW4gdGhlIGhlYWRlci4gRGVmYXVsdCBpcyAnQ2FuY2VsJ1xyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBzZWNvbmRhcnlBY3Rpb25MYWJlbD86IHN0cmluZyA9ICdDYW5jZWwnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBoaWRlU2Vjb25kYXJ5QWN0aW9uID0gZmFsc2U7XHJcblxyXG4gIC8qKiBGbGFnIGZvciBoaWRpbmcgdGhlIHRpbnkgY2xvc2UgYnV0dG9uIGluIHRoZSB0b3AtcmlnaHQgY29ybmVyIG9mIGRpYWxvZyB3aGlsZSBpbiBwZW5kaW5nIHN0YXRlIG9ubHkgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgaGlkZUNsb3NlT25QZW5kaW5nOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIExhYmVsIGZvciB0aGUgcHJpbWFyeSBidXR0b24gaW4gdGhlIGhlYWRlci4gRGVmYXVsdCBpcyAnU2F2ZSdcclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgcHJpbWFyeUFjdGlvbkxhYmVsPzogc3RyaW5nID0gJ1NhdmUnO1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBoaWRlUHJpbWFyeUFjdGlvbiA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBSZXBsYWNlcyB0aGUgdGl0bGUsIHN1YnRpdGxlIGFuZCB0aXRsZSBpY29uXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGN1c3RvbVRpdGxlVGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxhbnk+O1xyXG5cclxuICAvKipcclxuICAgKiBJbnNlcnRlZCB0byB0aGUgbGVmdCBvZiB0aGUgZGVmYXVsdCBhY3Rpb25zXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGN1c3RvbUFjdGlvbnNUZW1wbGF0ZT86IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlcGxhY2VzIHRoZSB0aXRsZWJhciBhbmQgYWN0aW9ucyBvZiB0aGUgZGVmYXVsdCBoZWFkZXIuIEJyZWFkY3J1bWJzIGFuZCBlcnJvciBiYW5uZXIgYXJlIG5vdCByZXBsYWNlZC4gQ2Fubm90IGNvbnRhaW4gYSA8aGVhZGVyPiBlbGVtZW50LlxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBjdXN0b21IZWFkZXJUZW1wbGF0ZT86IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIC8qKlxyXG4gICAqIENvbnRlbnQgdG8gaW5jbHVkZSBpbiB0aGUgZm9vdGVyXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGZvb3RlclRlbXBsYXRlPzogVGVtcGxhdGVSZWY8YW55PjtcclxuXHJcbiAgLyoqXHJcbiAgICogUmVwbGFjZXMgdGhlIEVycm9yIEJhbm5lciBkZWZhdWx0IHRlbXBsYXRlLiBVc2VmdWwgd2hlbiB3ZSBuZWVkIHRvIHNob3cgbW9yZSB0aGFuIHRleHQgaW4gdGhlIGJhbm5lci5cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgY3VzdG9tRXJyb3JCYW5uZXJUZW1wbGF0ZT86IFRlbXBsYXRlUmVmPGFueT47XHJcblxyXG4gIC8qKlxyXG4gICAqIFBpbnMgdGhlIGZvb3RlciB0byB0aGUgYm90dG9tIG9mIHRoZSB2aWV3IGFuZCBvdmVybGF5cyBhbnkgb3ZlcmZsb3dpbmcgY29udGVudFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHB1YmxpYyBzdGlja3lGb290ZXIgPSB0cnVlO1xyXG5cclxuICAvKipcclxuICAgKiBQcmV2ZW50cyBjb250ZW50IGZyb20gb3ZlcmZsb3dpbmcgdGhlIHZpZXcuIENvbnRlbnQgbXVzdCBtYW5hZ2Ugb3ZlcmZsb3cgaW5zdGVhZC5cclxuICAgKi9cclxuICBASW5wdXQoKSBwdWJsaWMgZml0Q29udGVudCA9IGZhbHNlO1xyXG5cclxuICAvKipcclxuICAgKiBEaXNhYmxlcyB0aGUgcHJpbWFyeSBhY3Rpb24gYnV0dG9uXHJcbiAgICovXHJcbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVQcmltYXJ5QWN0aW9uID0gZmFsc2U7XHJcblxyXG4gIC8qKiBDaGFuZ2VzIHRoZSBiYWNrZ3JvdW5kIGNvbG9yIGZvciB0aGUgY29udGVudCBhbmQgb3ZlcmxheSB0byB3aGl0ZSAqL1xyXG4gIEBIb3N0QmluZGluZygnY2xhc3MuYmctY29udGVudCcpXHJcbiAgQElucHV0KCkgcHVibGljIGJnQ29udGVudCA9IGZhbHNlO1xyXG5cclxuICBAT3V0cHV0KCkgcHVibGljIG9uUHJpbWFyeUFjdGlvbjogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcbiAgQE91dHB1dCgpIHB1YmxpYyBvblNlY29uZGFyeUFjdGlvbjogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSBkaWFsb2dTZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlXHJcbiAgKSB7IH1cclxuXHJcbiAgcHVibGljIHByaW1hcnlBY3Rpb24oZXZlbnQ6IGFueSkge1xyXG4gICAgaWYgKHRoaXMub25QcmltYXJ5QWN0aW9uKSB7XHJcbiAgICAgIHRoaXMub25QcmltYXJ5QWN0aW9uLmVtaXQoZXZlbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIHNlY29uZGFyeUFjdGlvbihldmVudDogYW55KSB7XHJcbiAgICBpZiAodGhpcy5vblNlY29uZGFyeUFjdGlvbikge1xyXG4gICAgICB0aGlzLm9uU2Vjb25kYXJ5QWN0aW9uLmVtaXQoZXZlbnQpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgcHVibGljIGNsb3NlRGlhbG9nKCkge1xyXG4gICAgdGhpcy5kaWFsb2dTZXJ2aWNlLmNsb3NlTGF0ZXN0RGlhbG9nKG5ldyBEaWFsb2dSZXN1bHQoZmFsc2UpKTtcclxuICB9XHJcbn1cclxuIiwiPGRpdiBlY092ZXJsYXlcclxuICAgICBbc3RhdHVzXT1cInN0YXR1cz8uc3RhdHVzXCJcclxuICAgICBbbWVzc2FnZV09XCJzdGF0dXM/Lm1lc3NhZ2VcIlxyXG4gICAgIFtkaXNwbGF5QXNNYXNrXT1cInRydWVcIlxyXG4gICAgIGNsYXNzPVwiZmxleC1ncm93IGQtZmxleFwiXHJcbiAgICAgW25nQ2xhc3NdPVwieydiZy1ib2R5JzogIWJnQ29udGVudCwgJ2JnLWNvbnRlbnQnOiBiZ0NvbnRlbnR9XCI+XHJcbiAgICA8ZGl2IGlkPVwiUGFnZVZpZXdTY3JvbGxDb250YWluZXJcIlxyXG4gICAgICAgICBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBmbGV4LWdyb3cgc2Nyb2xsLXlcIlxyXG4gICAgICAgICBbY2xhc3MuaXMtZGlhbG9nXT1cImlzRGlhbG9nXCJcclxuICAgICAgICAgW2NsYXNzLmZpdC1jb250ZW50XT1cImZpdENvbnRlbnRcIlxyXG4gICAgICAgICBbY2xhc3Muc3RpY2t5LWZvb3Rlcl09XCJzdGlja3lGb290ZXIgJiYgISFmb290ZXJUZW1wbGF0ZVwiXHJcbiAgICAgICAgIFtjbGFzcy5vdmVybGF5LXZpc2libGVdPVwic3RhdHVzPy5zdGF0dXMgIT09ICdoYXNEYXRhJ1wiXHJcbiAgICAgICAgIFtjbGFzcy5mb290ZXItdmlzaWJsZV09XCIhIWZvb3RlclRlbXBsYXRlXCJcclxuICAgICAgICAgY2RrU2Nyb2xsYWJsZT5cclxuICAgICAgICA8c2VjdGlvbj5cclxuICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxyXG4gICAgICAgIDwvc2VjdGlvbj5cclxuXHJcbiAgICAgICAgPGZvb3RlciAqbmdJZj1cImZvb3RlclRlbXBsYXRlXCI+XHJcbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmb290ZXJUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvZm9vdGVyPlxyXG5cclxuICAgICAgICA8aGVhZGVyICpuZ0lmPVwic2hvd0hlYWRlclwiPlxyXG4gICAgICAgICAgICA8b2wgaWQ9XCJicmVhZGNydW1ic1wiXHJcbiAgICAgICAgICAgICAgICAqbmdJZj1cImJyZWFkY3J1bWJzPy5sZW5ndGggJiYgIWlzRGlhbG9nXCI+XHJcbiAgICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IGNydW1iIG9mIGJyZWFkY3J1bWJzOyBsYXN0IGFzIGlzTGFzdFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxhICpuZ0lmPVwiY3J1bWIudXJsOyBlbHNlIGxhYmVsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICBbcm91dGVyTGlua109XCJjcnVtYi51cmxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImxhYmVsXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9hPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjbGFiZWw+e3tjcnVtYi5sYWJlbH19PC9uZy10ZW1wbGF0ZT5cclxuICAgICAgICAgICAgICAgIDwvbGk+XHJcbiAgICAgICAgICAgIDwvb2w+XHJcblxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwidGl0bGViYXJcIj5cclxuICAgICAgICAgICAgICAgIDxhcHAtcGFnZS10aXRsZSAqbmdJZj1cIiFjdXN0b21UaXRsZVRlbXBsYXRlOyBlbHNlIGN1c3RvbVRpdGxlXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdGl0bGVdPVwidGl0bGVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzdWJUaXRsZV09XCJzdWJUaXRsZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3N1YlRpdGxlVXJsXT1cInN1YlRpdGxlVXJsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbdGl0bGVJY29uXT1cInRpdGxlSWNvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJ0aXRsZSB0ZXh0LXRydW5jYXRlXCI+XHJcbiAgICAgICAgICAgICAgICA8L2FwcC1wYWdlLXRpdGxlPlxyXG5cclxuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjY3VzdG9tVGl0bGU+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRpdGxlXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjdXN0b21UaXRsZVRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJhY3Rpb25zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGVjLWJ1dHRvbiBpZD1cInByaW1hcnlBY3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJtbC0yXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiIWhpZGVQcmltYXJ5QWN0aW9uICYmIG9uUHJpbWFyeUFjdGlvbi5vYnNlcnZlcnM/Lmxlbmd0aCAmJiAhcmVhZG9ubHlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInN0YXR1cz8uc3RhdHVzID09PSAncGVuZGluZycgfHwgZGlzYWJsZVByaW1hcnlBY3Rpb25cIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cInByaW1hcnlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cInByaW1hcnlBY3Rpb25MYWJlbFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2tlZCk9XCJwcmltYXJ5QWN0aW9uKCRldmVudClcIj5cclxuICAgICAgICAgICAgICAgICAgICA8L2VjLWJ1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgICA8ZWMtYnV0dG9uIGlkPVwic2Vjb25kYXJ5QWN0aW9uXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwibWwtMlwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIiFoaWRlU2Vjb25kYXJ5QWN0aW9uICYmIG9uU2Vjb25kYXJ5QWN0aW9uLm9ic2VydmVycz8ubGVuZ3RoXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJzZWNvbmRhcnlcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cInJlYWRvbmx5ID8gJ0Nsb3NlJyA6IHNlY29uZGFyeUFjdGlvbkxhYmVsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGlja2VkKT1cInNlY29uZGFyeUFjdGlvbigkZXZlbnQpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9lYy1idXR0b24+XHJcbiAgICAgICAgICAgICAgICAgICAgPGVjLWRyb3Bkb3duIGlkPVwibW9yZUFjdGlvbnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIm1vcmVBY3Rpb25zPy5sZW5ndGggJiYgIXJlYWRvbmx5XCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2Rpc2FibGVkXT1cInN0YXR1cz8uc3RhdHVzID09PSAncGVuZGluZydcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cIm1sLTJcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBidXR0b25UeXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJtb3JlQWN0aW9uc0xhYmVsXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2l0ZW1zXT1cIm1vcmVBY3Rpb25zXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9lYy1kcm9wZG93bj5cclxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY3VzdG9tQWN0aW9uc1RlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiY3VzdG9tSGVhZGVyVGVtcGxhdGVcIlxyXG4gICAgICAgICAgICAgICAgIGNsYXNzPVwicGFnZS1oZWFkZXJcIj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJjdXN0b21IZWFkZXJUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgIDxlYy1iYW5uZXIgKm5nSWY9XCIhY3VzdG9tRXJyb3JCYW5uZXJUZW1wbGF0ZSAmJiBlcnJvcnM7IGVsc2UgY3VzdG9tRXJyb3JCYW5uZXJPdXRsZXRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIGlkPVwicGFnZVZpZXdFcnJvcnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgIFtjbGFzcy5ib3JkZXItYm90dG9tLTBdPVwiIWlzRGlhbG9nXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IFtpbm5lckh0bWxdPVwiZXJyb3JzXCI+PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZWMtYmFubmVyPlxyXG5cclxuICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNjdXN0b21FcnJvckJhbm5lck91dGxldD5cclxuICAgICAgICAgICAgICAgIDxlYy1iYW5uZXIgKm5nSWY9XCJlcnJvcnNcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICBpZD1cInBhZ2VWaWV3RXJyb3JzXCJcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgW2NsYXNzLmJvcmRlci1ib3R0b20tMF09XCIhaXNEaWFsb2dcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY3VzdG9tRXJyb3JCYW5uZXJUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgPC9lYy1iYW5uZXI+XHJcbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICAgICAgPC9oZWFkZXI+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8ZWMtYnV0dG9uICpuZ0lmPVwiaXNEaWFsb2cgJiYgKCAoc3RhdHVzPy5zdGF0dXMgPT09ICdwZW5kaW5nJyAmJiAhaGlkZUNsb3NlT25QZW5kaW5nKSB8fCBzdGF0dXM/LnN0YXR1cyA9PT0gJ2Vycm9yJylcIlxyXG4gICAgICAgICAgICAgICBpZD1cInBhZ2VWaWV3RGlhbG9nQ2xvc2VcIlxyXG4gICAgICAgICAgICAgICB0eXBlPVwiaWNvblwiXHJcbiAgICAgICAgICAgICAgIGljb249XCJpY29uLWNhbmNlbFwiXHJcbiAgICAgICAgICAgICAgIChjbGlja2VkKT1cImNsb3NlRGlhbG9nKClcIj5cclxuICAgIDwvZWMtYnV0dG9uPlxyXG48L2Rpdj4iXX0=
@@ -1,17 +1,17 @@
1
- import { Injector } from '@angular/core';
2
- import { ClipboardService } from 'ngx-clipboard';
3
- import { SpyFactory } from './spy-factory.spec';
4
- export class CopyButtonBaseTestInjectorFactory {
5
- static getComponentInjector() {
6
- return Injector.create({
7
- providers: [
8
- {
9
- provide: ClipboardService,
10
- useFactory: () => SpyFactory.createSpy(ClipboardService),
11
- deps: []
12
- }
13
- ]
14
- });
15
- }
16
- }
1
+ import { Injector } from '@angular/core';
2
+ import { ClipboardService } from 'ngx-clipboard';
3
+ import { SpyFactory } from './spy-factory.spec';
4
+ export class CopyButtonBaseTestInjectorFactory {
5
+ static getComponentInjector() {
6
+ return Injector.create({
7
+ providers: [
8
+ {
9
+ provide: ClipboardService,
10
+ useFactory: () => SpyFactory.createSpy(ClipboardService),
11
+ deps: []
12
+ }
13
+ ]
14
+ });
15
+ }
16
+ }
17
17
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29weS1idXR0b24tYmFzZS10ZXN0LWluamVjdG9yLWZhY3Rvcnkuc3BlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9zaGFyZWQvdGVzdGluZy9jb3B5LWJ1dHRvbi1iYXNlLXRlc3QtaW5qZWN0b3ItZmFjdG9yeS5zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUVoRCxNQUFNLE9BQU8saUNBQWlDO0lBRXJDLE1BQU0sQ0FBQyxvQkFBb0I7UUFDaEMsT0FBTyxRQUFRLENBQUMsTUFBTSxDQUFDO1lBQ3JCLFNBQVMsRUFBRTtnQkFDVDtvQkFDRSxPQUFPLEVBQUUsZ0JBQWdCO29CQUN6QixVQUFVLEVBQUUsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDeEQsSUFBSSxFQUFFLEVBQUU7aUJBQ1Q7YUFDRjtTQUNGLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdG9yIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENsaXBib2FyZFNlcnZpY2UgfSBmcm9tICduZ3gtY2xpcGJvYXJkJztcclxuaW1wb3J0IHsgU3B5RmFjdG9yeSB9IGZyb20gJy4vc3B5LWZhY3Rvcnkuc3BlYyc7XHJcblxyXG5leHBvcnQgY2xhc3MgQ29weUJ1dHRvbkJhc2VUZXN0SW5qZWN0b3JGYWN0b3J5IHtcclxuXHJcbiAgcHVibGljIHN0YXRpYyBnZXRDb21wb25lbnRJbmplY3RvcigpIHtcclxuICAgIHJldHVybiBJbmplY3Rvci5jcmVhdGUoe1xyXG4gICAgICBwcm92aWRlcnM6IFtcclxuICAgICAgICB7XHJcbiAgICAgICAgICBwcm92aWRlOiBDbGlwYm9hcmRTZXJ2aWNlLFxyXG4gICAgICAgICAgdXNlRmFjdG9yeTogKCkgPT4gU3B5RmFjdG9yeS5jcmVhdGVTcHkoQ2xpcGJvYXJkU2VydmljZSksXHJcbiAgICAgICAgICBkZXBzOiBbXVxyXG4gICAgICAgIH1cclxuICAgICAgXVxyXG4gICAgfSk7XHJcbiAgfVxyXG59Il19