barsa-sap-ui 2.0.134 → 2.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (235) hide show
  1. package/esm2022/lib/apply-conditional-formmatings.directive.mjs +4 -4
  2. package/esm2022/lib/avatar-size.pipe.mjs +4 -4
  3. package/esm2022/lib/barsa-answer-card/barsa-answer-card.component.mjs +4 -4
  4. package/esm2022/lib/barsa-asp-viewer/barsa-asp-viewer.component.mjs +4 -4
  5. package/esm2022/lib/barsa-bar-panel/barsa-bar-panel.component.mjs +4 -4
  6. package/esm2022/lib/barsa-base-panel/barsa-base-layout-panel.component.mjs +4 -4
  7. package/esm2022/lib/barsa-breadcrumbs/barsa-breadcrumbs.component.mjs +4 -4
  8. package/esm2022/lib/barsa-card-layout-panel/barsa-card-layout-panel.component.mjs +4 -4
  9. package/esm2022/lib/barsa-card-row-payam/barsa-card-row-payam.component.mjs +8 -7
  10. package/esm2022/lib/barsa-cartable-form/barsa-cartable-form.component.mjs +4 -4
  11. package/esm2022/lib/barsa-cartable-template/barsa-cartable-template.component.mjs +4 -4
  12. package/esm2022/lib/barsa-chat/barsa-chat.component.mjs +4 -4
  13. package/esm2022/lib/barsa-chat-content/barsa-chat-content.component.mjs +4 -4
  14. package/esm2022/lib/barsa-chat-content-toolbar/barsa-chat-content-toolbar.component.mjs +4 -4
  15. package/esm2022/lib/barsa-chat-list/barsa-chat-list.component.mjs +4 -4
  16. package/esm2022/lib/barsa-chat-message/barsa-chat-message.component.mjs +4 -4
  17. package/esm2022/lib/barsa-chat-thread/barsa-chat-thread.component.mjs +4 -4
  18. package/esm2022/lib/barsa-chat-threads-list/barsa-chat-threads-list.component.mjs +4 -4
  19. package/esm2022/lib/barsa-chat-threads-list-toolbar/barsa-chat-threads-list-toolbar.component.mjs +4 -4
  20. package/esm2022/lib/barsa-chip/barsa-chip.component.mjs +4 -4
  21. package/esm2022/lib/barsa-column-indicator/barsa-column-indicator.component.mjs +4 -4
  22. package/esm2022/lib/barsa-column-rownumber/barsa-column-rownumber.component.mjs +4 -4
  23. package/esm2022/lib/barsa-custom-inline-edit/barsa-custom-inline-edit.component.mjs +4 -4
  24. package/esm2022/lib/barsa-custom-inline-edit-row/barsa-custom-inline-edit-row.component.mjs +4 -4
  25. package/esm2022/lib/barsa-date-time-picker/barsa-date-time-picker.component.mjs +4 -4
  26. package/esm2022/lib/barsa-dynamic-field/barsa-dynamic-field.component.mjs +4 -4
  27. package/esm2022/lib/barsa-enum-menu-button/barsa-enum-menu-button.component.mjs +4 -4
  28. package/esm2022/lib/barsa-field-key-value/barsa-field-key-value.component.mjs +4 -4
  29. package/esm2022/lib/barsa-form-side-content/barsa-form-side-content.component.mjs +4 -4
  30. package/esm2022/lib/barsa-grid-layout-panel/barsa-grid-layout-panel.component.mjs +4 -4
  31. package/esm2022/lib/barsa-group-cartable/barsa-cartable-group.component.mjs +4 -4
  32. package/esm2022/lib/barsa-horizontal-flex-panel/barsa-horizontal-flex-panel.component.mjs +4 -4
  33. package/esm2022/lib/barsa-linkable-items-panel/barsa-linkable-items-panel.component.mjs +4 -4
  34. package/esm2022/lib/barsa-list-file-linear/barsa-list-file-linear.component.mjs +4 -4
  35. package/esm2022/lib/barsa-list-file-linear-gmail/barsa-list-file-linear-gmail.component.mjs +4 -4
  36. package/esm2022/lib/barsa-list-layout-panel/barsa-list-layout-panel.component.mjs +4 -4
  37. package/esm2022/lib/barsa-modal/barsa-modal.component.mjs +4 -4
  38. package/esm2022/lib/barsa-monaco-editor/barsa-monaco-editor.component.mjs +4 -4
  39. package/esm2022/lib/barsa-network-offline/barsa-network-offline.component.mjs +4 -4
  40. package/esm2022/lib/barsa-pishnamayesh-payam/barsa-pishnamayesh-payam.component.mjs +5 -5
  41. package/esm2022/lib/barsa-question-answer-comments-section/barsa-question-answer-comments-section.component.mjs +4 -4
  42. package/esm2022/lib/barsa-question-answer-content-actions-section/barsa-question-answer-content-actions-section.component.mjs +4 -4
  43. package/esm2022/lib/barsa-question-answer-creator-time-section/barsa-question-answer-creator-time-section.component.mjs +4 -4
  44. package/esm2022/lib/barsa-question-answer-form/barsa-question-answer-form.component.mjs +4 -4
  45. package/esm2022/lib/barsa-question-answer-form-add-comment/barsa-question-answer-form-add-comment.component.mjs +4 -4
  46. package/esm2022/lib/barsa-question-answer-vote-section/barsa-question-answer-vote-section.component.mjs +4 -4
  47. package/esm2022/lib/barsa-question-post/barsa-question-post.component.mjs +4 -4
  48. package/esm2022/lib/barsa-report-card-flex-view/barsa-report-card-flex-view.component.mjs +4 -4
  49. package/esm2022/lib/barsa-report-checkbox-switch-button/barsa-report-checkbox-switch-button.component.mjs +4 -4
  50. package/esm2022/lib/barsa-report-one-of-list/barsa-report-one-of-list.component.mjs +4 -4
  51. package/esm2022/lib/barsa-row-inline-actionlist/barsa-row-inline-actionlist.component.mjs +4 -4
  52. package/esm2022/lib/barsa-sap-ui-routing.module.mjs +5 -5
  53. package/esm2022/lib/barsa-sap-ui.module.mjs +10 -6
  54. package/esm2022/lib/barsa-search-form/barsa-search-form.component.mjs +4 -4
  55. package/esm2022/lib/barsa-simple-form/barsa-simple-form.component.mjs +4 -4
  56. package/esm2022/lib/barsa-tab-route-manager/barsa-tab-route-manager.component.mjs +4 -4
  57. package/esm2022/lib/barsa-table-column/barsa-table-column.component.mjs +4 -4
  58. package/esm2022/lib/barsa-table-header/barsa-table-header.component.mjs +4 -4
  59. package/esm2022/lib/barsa-table-row/barsa-table-row.component.mjs +4 -4
  60. package/esm2022/lib/barsa-tag-categories/barsa-tag-categories.component.mjs +4 -4
  61. package/esm2022/lib/barsa-tag-chip/barsa-tag-chip.component.mjs +4 -4
  62. package/esm2022/lib/barsa-tags-category-row/barsa-tags-category-row.component.mjs +4 -4
  63. package/esm2022/lib/barsa-text-ellipsis/barsa-text-ellipsis.component.mjs +4 -4
  64. package/esm2022/lib/barsa-tinyemce/barsa-tinyemce.component.mjs +4 -4
  65. package/esm2022/lib/barsa-toolbaritem-search/barsa-toolbaritem-search.component.mjs +4 -4
  66. package/esm2022/lib/barsa-tree-item/barsa-tree-item.component.mjs +4 -4
  67. package/esm2022/lib/barsa-tree-item/node-has-one-depth-level.pipe.mjs +4 -4
  68. package/esm2022/lib/barsa-ulv-main/barsa-ulv-main.component.mjs +4 -4
  69. package/esm2022/lib/blob-viewer/blob-viewer.component.mjs +4 -4
  70. package/esm2022/lib/breadcrumb/breadcrumb.component.mjs +4 -4
  71. package/esm2022/lib/captcha-field/captcha-field.component.mjs +4 -4
  72. package/esm2022/lib/card-item/card-item.component.mjs +4 -4
  73. package/esm2022/lib/card-view-content/card-view-content.component.mjs +4 -4
  74. package/esm2022/lib/col-renderer.directive.mjs +4 -4
  75. package/esm2022/lib/column-matrix-renderer/column-matrix-renderer.component.mjs +4 -4
  76. package/esm2022/lib/column-matrix-renderer/matrix-value.pipe.mjs +4 -4
  77. package/esm2022/lib/column-renderer/column-renderer.component.mjs +4 -4
  78. package/esm2022/lib/custom-date-time/custom-date-time.component.mjs +4 -4
  79. package/esm2022/lib/device-info-field-base.mjs +4 -4
  80. package/esm2022/lib/dialog-handler.directive.mjs +4 -4
  81. package/esm2022/lib/download-files.directive.mjs +4 -4
  82. package/esm2022/lib/dynamic-page-size.pipe.mjs +4 -4
  83. package/esm2022/lib/file-in-dialog/file-in-dialog.component.mjs +4 -4
  84. package/esm2022/lib/file-viewer/file-viewer.component.mjs +4 -4
  85. package/esm2022/lib/file-viewer-content/file-viewer-content.component.mjs +4 -4
  86. package/esm2022/lib/file-viewer-popover/file-viewer-popover.component.mjs +4 -4
  87. package/esm2022/lib/form-dialog/form-dialog.component.mjs +4 -4
  88. package/esm2022/lib/form-dialog-less/form-dialog-less.component.mjs +4 -4
  89. package/esm2022/lib/form-toolbar/form-toolbar.component.mjs +4 -4
  90. package/esm2022/lib/form-toolbar-button/form-toolbar-button.component.mjs +4 -4
  91. package/esm2022/lib/form-wizard/form-wizard.component.mjs +4 -4
  92. package/esm2022/lib/fullscreen-dialog.directive.mjs +4 -4
  93. package/esm2022/lib/fullscreen-files.directive.mjs +4 -4
  94. package/esm2022/lib/fundamental-dynamic-form/fundamental-dynamic-form.component.mjs +29 -31
  95. package/esm2022/lib/gantt-dhtml-chart-view/gantt-dhtml-chart-view.component.mjs +4 -4
  96. package/esm2022/lib/global-search/global-search.component.mjs +4 -4
  97. package/esm2022/lib/global-search-module/global-search-module.component.mjs +4 -4
  98. package/esm2022/lib/global-search-panel/global-search-panel.component.mjs +4 -4
  99. package/esm2022/lib/header-avatar/header-avatar.component.mjs +4 -4
  100. package/esm2022/lib/htree-create-new/htree-create-new.component.mjs +4 -4
  101. package/esm2022/lib/hyperlink/hyperlink.component.mjs +4 -4
  102. package/esm2022/lib/inline-save-and-cancel/inline-save-and-cancel.component.mjs +4 -4
  103. package/esm2022/lib/layout-actions/layout-actions.component.mjs +4 -4
  104. package/esm2022/lib/layout-control/layout-control.component.mjs +4 -4
  105. package/esm2022/lib/layout-wizard/layout-wizard.component.mjs +4 -4
  106. package/esm2022/lib/list-item/list-item.component.mjs +4 -4
  107. package/esm2022/lib/ly-empty-space/ly-empty-space.component.mjs +4 -4
  108. package/esm2022/lib/ly-horizontal-layout/ly-horizontal-layout.component.mjs +4 -4
  109. package/esm2022/lib/ly-label/ly-label.component.mjs +4 -4
  110. package/esm2022/lib/ly-layout-container/ly-layout-container.component.mjs +4 -4
  111. package/esm2022/lib/ly-layout-container-of-root/ly-layout-container-of-root.component.mjs +4 -4
  112. package/esm2022/lib/ly-layout-field-label/ly-layout-field-label.component.mjs +4 -4
  113. package/esm2022/lib/ly-layout-panel/ly-layout-panel.component.mjs +4 -4
  114. package/esm2022/lib/ly-line/ly-line.component.mjs +4 -4
  115. package/esm2022/lib/ly-simple-label/ly-simple-label.component.mjs +4 -4
  116. package/esm2022/lib/ly-tab-container/ly-tab-container.component.mjs +11 -18
  117. package/esm2022/lib/ly-tab-page/ly-tab-page.component.mjs +4 -4
  118. package/esm2022/lib/ly-vertical-layout/ly-vertical-layout.component.mjs +4 -4
  119. package/esm2022/lib/manage-filters-report/manage-filters-report.component.mjs +4 -4
  120. package/esm2022/lib/mask/mask.component.mjs +4 -4
  121. package/esm2022/lib/message-strip/message-strip.component.mjs +4 -4
  122. package/esm2022/lib/no-data/no-data.component.mjs +4 -4
  123. package/esm2022/lib/notification-item/notification-item.component.mjs +4 -4
  124. package/esm2022/lib/notification-popup.service.mjs +4 -4
  125. package/esm2022/lib/object-status-icon.pipe.mjs +4 -4
  126. package/esm2022/lib/progress-indicator/progress-indicator.component.mjs +4 -4
  127. package/esm2022/lib/report-navigator/report-navigator.component.mjs +4 -4
  128. package/esm2022/lib/report-new-top-form/report-new-top-form.component.mjs +4 -4
  129. package/esm2022/lib/report-search-fields-hidden-settings/report-search-fields-hidden-settings.component.mjs +4 -4
  130. package/esm2022/lib/report-search-fields-manage/report-search-fields-manage.component.mjs +4 -4
  131. package/esm2022/lib/report-search-panel-save/report-search-panel-save.component.mjs +4 -4
  132. package/esm2022/lib/report-tree-base.mjs +4 -4
  133. package/esm2022/lib/report-view-renderer.directive.mjs +4 -4
  134. package/esm2022/lib/responsive-toolbar/responsive-toolbar.component.mjs +4 -4
  135. package/esm2022/lib/responsive-toolbar-renderer/responsive-toolbar-renderer.component.mjs +4 -4
  136. package/esm2022/lib/rich-text-static/rich-text-static.component.mjs +4 -4
  137. package/esm2022/lib/sap-font-class.pipe.mjs +4 -4
  138. package/esm2022/lib/sap-font.pipe.mjs +4 -4
  139. package/esm2022/lib/sap-size.pipe.mjs +4 -4
  140. package/esm2022/lib/sap-ui-report-base.component.mjs +4 -4
  141. package/esm2022/lib/search-panel/search-panel.component.mjs +4 -4
  142. package/esm2022/lib/static-text/static-text.component.mjs +4 -4
  143. package/esm2022/lib/table-th.directive.mjs +4 -4
  144. package/esm2022/lib/title/title.component.mjs +4 -4
  145. package/esm2022/lib/ui-asp-report-viewer/ui-asp-report-viewer.component.mjs +4 -4
  146. package/esm2022/lib/ui-bpmn-viewer/ui-bpmn-viewer.component.mjs +4 -4
  147. package/esm2022/lib/ui-button/ui-button.component.mjs +4 -4
  148. package/esm2022/lib/ui-calendar/ui-calendar.component.mjs +4 -4
  149. package/esm2022/lib/ui-card-view/ui-card-view.component.mjs +7 -7
  150. package/esm2022/lib/ui-card-view-horizontal-group/ui-card-view-horizontal-group.component.mjs +6 -6
  151. package/esm2022/lib/ui-check-box/ui-check-box.component.mjs +4 -4
  152. package/esm2022/lib/ui-color-ui/ui-color-ui.component.mjs +4 -4
  153. package/esm2022/lib/ui-container-with-button/ui-container-with-button.component.mjs +4 -4
  154. package/esm2022/lib/ui-date-range-ex/ui-date-range-ex.component.mjs +4 -4
  155. package/esm2022/lib/ui-date-time/ui-date-time.component.mjs +4 -4
  156. package/esm2022/lib/ui-editable-grid/ui-editable-grid.component.mjs +4 -4
  157. package/esm2022/lib/ui-exception-form/ui-exception-form.component.mjs +4 -4
  158. package/esm2022/lib/ui-file-linear-list-box/ui-file-linear-list-box.component.mjs +4 -4
  159. package/esm2022/lib/ui-form-panel/ui-form-panel.component.mjs +4 -4
  160. package/esm2022/lib/ui-gantt-chart/ui-gantt-chart.component.mjs +4 -4
  161. package/esm2022/lib/ui-graph/ui-graph.component.mjs +4 -4
  162. package/esm2022/lib/ui-grid/ui-grid.component.mjs +4 -4
  163. package/esm2022/lib/ui-grid-columns/ui-grid-columns.component.mjs +4 -4
  164. package/esm2022/lib/ui-grid-filter-item/ui-grid-filter-item.component.mjs +4 -4
  165. package/esm2022/lib/ui-grid-filter-settings/ui-grid-filter-settings.component.mjs +4 -4
  166. package/esm2022/lib/ui-grid-sort-item/ui-grid-sort-item.component.mjs +4 -4
  167. package/esm2022/lib/ui-grid-sort-setting/ui-grid-sort-setting.component.mjs +4 -4
  168. package/esm2022/lib/ui-html-viewer/ui-html-viewer.component.mjs +4 -4
  169. package/esm2022/lib/ui-info-bar-panel/ui-info-bar-panel.component.mjs +4 -4
  170. package/esm2022/lib/ui-label/ui-label.component.mjs +4 -4
  171. package/esm2022/lib/ui-linear-list-container-with-button/ui-linear-list-container-with-button.component.mjs +4 -4
  172. package/esm2022/lib/ui-list-view/ui-list-view.component.mjs +4 -4
  173. package/esm2022/lib/ui-map/ui-map.component.mjs +4 -4
  174. package/esm2022/lib/ui-matrix-view/ui-matrix-view.component.mjs +4 -4
  175. package/esm2022/lib/ui-mo-info-combo-viewer/ui-mo-info-combo-viewer.component.mjs +4 -4
  176. package/esm2022/lib/ui-mo-info-general-object-ui/ui-mo-info-general-object-ui.component.mjs +4 -4
  177. package/esm2022/lib/ui-mo-info-sub-form-ui/ui-mo-info-sub-form-ui.component.mjs +4 -4
  178. package/esm2022/lib/ui-mo-info-ulv-combo/ui-mo-info-ulv-combo.component.mjs +4 -4
  179. package/esm2022/lib/ui-monaco-editor/ui-monaco-editor.component.mjs +4 -4
  180. package/esm2022/lib/ui-multi-select-card/ui-multi-select-card.component.mjs +4 -4
  181. package/esm2022/lib/ui-multi-select-checkbox/ui-multi-select-checkbox.component.mjs +4 -4
  182. package/esm2022/lib/ui-multi-select-combo/ui-multi-select-combo.component.mjs +4 -4
  183. package/esm2022/lib/ui-multi-select-radio/ui-multi-select-radio.component.mjs +4 -4
  184. package/esm2022/lib/ui-multi-select-slider/ui-multi-select-slider.component.mjs +4 -4
  185. package/esm2022/lib/ui-multi-select-smile/ui-multi-select-smile.component.mjs +4 -4
  186. package/esm2022/lib/ui-num-decimal-ui/ui-num-decimal-ui.component.mjs +4 -4
  187. package/esm2022/lib/ui-num-int-slider/ui-num-int-slider.component.mjs +4 -4
  188. package/esm2022/lib/ui-num-int-ui/ui-num-int-ui.component.mjs +4 -4
  189. package/esm2022/lib/ui-pdf-viewer/ui-pdf-viewer.component.mjs +4 -4
  190. package/esm2022/lib/ui-picture-file/ui-picture-file.component.mjs +4 -4
  191. package/esm2022/lib/ui-pictures-info/ui-pictures-info.component.mjs +4 -4
  192. package/esm2022/lib/ui-radio-group/ui-radio-group.component.mjs +4 -4
  193. package/esm2022/lib/ui-read-only-field/ui-read-only-field.component.mjs +4 -4
  194. package/esm2022/lib/ui-report-container/ui-report-container.component.mjs +4 -4
  195. package/esm2022/lib/ui-search-command-info-ui/ui-search-command-info-ui.component.mjs +4 -4
  196. package/esm2022/lib/ui-simple-combo/ui-simple-combo.component.mjs +4 -4
  197. package/esm2022/lib/ui-single-picture/ui-single-picture.component.mjs +4 -4
  198. package/esm2022/lib/ui-switch-button/ui-switch-button.component.mjs +4 -4
  199. package/esm2022/lib/ui-table-view/ui-table-view.component.mjs +4 -4
  200. package/esm2022/lib/ui-text-area/ui-text-area.component.mjs +4 -4
  201. package/esm2022/lib/ui-text-field/ui-text-field.component.mjs +4 -4
  202. package/esm2022/lib/ui-text-field-auto-complete/ui-text-field-auto-complete.component.mjs +4 -4
  203. package/esm2022/lib/ui-time-span/ui-time-span.component.mjs +4 -4
  204. package/esm2022/lib/ui-tinymce/ui-tinymce.component.mjs +4 -4
  205. package/esm2022/lib/ui-tree/ui-tree.component.mjs +4 -4
  206. package/esm2022/lib/ui-tree-view/ui-tree-view.component.mjs +4 -4
  207. package/esm2022/lib/ui-ulv-form-multi-select-ui/ui-ulv-form-multi-select-ui.component.mjs +4 -4
  208. package/esm2022/lib/ui-ulv-main-ui/ui-ulv-main-ui.component.mjs +4 -4
  209. package/esm2022/lib/ui-workflow-panel-ui/ui-workflow-panel-ui.component.mjs +4 -4
  210. package/esm2022/lib/ul-loading-mask-ui/ul-loading-mask-ui.component.mjs +4 -4
  211. package/esm2022/lib/ul-msg-box-adapter/ul-msg-box-adapter.component.mjs +4 -4
  212. package/esm2022/lib/ul-notify-popup/ul-notify-popup.component.mjs +4 -4
  213. package/esm2022/lib/ul-toast-adapter/ul-toast-adapter.component.mjs +4 -4
  214. package/esm2022/lib/ulv-column-settings/ulv-column-settings.component.mjs +4 -4
  215. package/esm2022/lib/ulv-context-menu/ulv-context-menu.component.mjs +4 -4
  216. package/esm2022/lib/ulv-filter-settings/ulv-filter-settings.component.mjs +4 -4
  217. package/esm2022/lib/ulv-form-multi-select/ulv-form-multi-select.component.mjs +4 -4
  218. package/esm2022/lib/ulv-groupby-settings/ulv-groupby-settings.component.mjs +4 -4
  219. package/esm2022/lib/ulv-paging/ulv-paging.component.mjs +4 -4
  220. package/esm2022/lib/ulv-selection/ulv-selection.component.mjs +4 -4
  221. package/esm2022/lib/ulv-settings/ulv-settings.component.mjs +4 -4
  222. package/esm2022/lib/ulv-sort-settings/ulv-sort-settings.component.mjs +4 -4
  223. package/esm2022/lib/ulv-toolbar/ulv-toolbar.component.mjs +4 -4
  224. package/esm2022/lib/upload-file-status.pipe.mjs +4 -4
  225. package/esm2022/lib/util-chat-time-badge.pipe.mjs +4 -4
  226. package/esm2022/lib/util-date-to-hh-mm.pipe.mjs +4 -4
  227. package/esm2022/lib/wizard-layout.directive.mjs +4 -4
  228. package/fesm2022/barsa-sap-ui.mjs +710 -715
  229. package/fesm2022/barsa-sap-ui.mjs.map +1 -1
  230. package/lib/barsa-sap-ui.module.d.ts +5 -4
  231. package/lib/fundamental-dynamic-form/fundamental-dynamic-form.component.d.ts +3 -3
  232. package/lib/ly-tab-container/ly-tab-container.component.d.ts +2 -4
  233. package/lib/ly-tab-page/ly-tab-page.component.d.ts +2 -2
  234. package/lib/report-view-renderer.directive.d.ts +1 -1
  235. package/package.json +3 -3
@@ -269,10 +269,10 @@ export class UiUlvMainUiComponent extends BaseComponent {
269
269
  }
270
270
  });
271
271
  }
272
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: UiUlvMainUiComponent, deps: [{ token: i1.DialogService }, { token: i2.UlvMainService }, { token: i0.ElementRef }, { token: i3.Router }, { token: i2.PortalService }, { token: i0.ChangeDetectorRef }, { token: i3.ActivatedRoute }, { token: i1.ContentDensityService }, { token: i2.BreadcrumbService }], target: i0.ɵɵFactoryTarget.Component }); }
273
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: UiUlvMainUiComponent, selector: "bsu-ui-ulv-main-ui", inputs: { context: "context", isReportPage: "isReportPage", inDialog: "inDialog", isMultiSelect: "isMultiSelect", layoutInfo: "layoutInfo", fullscreen: "fullscreen" }, host: { properties: { "class.control-readonly": "this.readonly", "class.control-disabled": "this.disable", "class.margin-ulv": "this.marginUlv" } }, providers: [UlvMainService], viewQueries: [{ propertyName: "_barsaUlvComponent", first: true, predicate: BarsaUlvMainComponent, descendants: true }, { propertyName: "searchPanelComponent", first: true, predicate: SearchPanelComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<bsu-barsa-ulv-main\r\n [style.margin]=\"isReportPage ? null : 'var(--fdInput_Field_Margin, .25rem 0)'\"\r\n [style.style.width]=\"!isMobile ? null : '100%'\"\r\n [layoutInfo]=\"layoutInfo\"\r\n [attr.isReportPage]=\"isReportPage\"\r\n [simpleSearchPanel]=\"simpleSearchPanel\"\r\n [viewerControl]=\"viewer$ | async\"\r\n [loading]=\"(mask$ | async) === true\"\r\n [viewerLoading]=\"(viwerMask$ | async) === true\"\r\n [standalone]=\"(standalone$ | async) === true\"\r\n [landscape]=\"(landscape$ | async) === true\"\r\n [hideUlvPageTitle]=\"(hideUlvPageTitle$ | async) === true\"\r\n [isReportPage]=\"isReportPage\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [title]=\"title\"\r\n [searchPanelUi]=\"(searchPanelUi$ | async)!!\"\r\n [breadCrumbs]=\"(breadCrumbs$ | async)!!\"\r\n [allSearchPanelSettings]=\"(allSearchPanelSettings$ | async)!!\"\r\n [isAnonymous]=\"(isAnonymous$ | async)!!\"\r\n [canSaveGridSetting]=\"(canSaveGridSetting$ | async) === true\"\r\n [rtl]=\"(rtl$ | async)!!\"\r\n [selectedSearchPanelSettings]=\"(selectedSearchPanelSettings$ | async)!!\"\r\n [searchPanelMoChanged]=\"(searchPanelMoChanged$ | async)!!\"\r\n [selectedSearchPanelSettingsId]=\"(selectedSearchPanelSettingsId$ | async)!!\"\r\n [hideSearchPanel]=\"(hideSearchPanel$ | async)!!\"\r\n [pagingSetting]=\"(pagingSetting$ | async)!!\"\r\n [context]=\"context\"\r\n [contentDensity]=\"contentDensity$ | async\"\r\n (closeEvent)=\"onClose()\"\r\n (searchPanelMoChange)=\"onSearchPanelMoChanged()\"\r\n (openManageFilters)=\"onOpenManageFilters()\"\r\n (collapsedChange)=\"onCollapsedChange($event)\"\r\n (hideSearchPanelClick)=\"onHideSearchPanelClick()\"\r\n (filterSave)=\"onFilterSave()\"\r\n (filterSaveAs)=\"onFilterSaveAs()\"\r\n (showFilterFieldsSetting)=\"onShowFilterFieldsSetting()\"\r\n (manageFilters)=\"onManageFilters()\"\r\n (clearSearch)=\"onClearSearch()\"\r\n (search)=\"onSearch()\"\r\n (pageChange)=\"onPageChange($event)\"\r\n (selectSearchPanelSettings)=\"onSelectSearchPanelSettings($event)\"\r\n>\r\n</bsu-barsa-ulv-main>\r\n", styles: [":host{width:100%;min-height:100%;height:auto;display:flex;flex-direction:column;cursor:default}.margin-ulv{margin-bottom:.25rem;margin-top:.1875rem}\n"], dependencies: [{ kind: "component", type: i4.BarsaUlvMainComponent, selector: "bsu-barsa-ulv-main", inputs: ["viewerControl", "loading", "viewerLoading", "isReportPage", "deviceSize", "title", "searchPanelUi", "breadCrumbs", "allSearchPanelSettings", "isAnonymous", "canSaveGridSetting", "rtl", "hideUlvPageTitle", "selectedSearchPanelSettings", "searchPanelMoChanged", "selectedSearchPanelSettingsId", "hideSearchPanel", "pagingSetting", "contentDensity", "context", "isMobile", "standalone", "landscape", "simpleSearchPanel", "layoutInfo"], outputs: ["closeEvent", "searchPanelMoChange", "openManageFilters", "collapsedChange", "hideSearchPanelClick", "filterSave", "filterSaveAs", "pageChange", "showFilterFieldsSetting", "manageFilters", "clearSearch", "search", "selectSearchPanelSettings"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
272
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiUlvMainUiComponent, deps: [{ token: i1.DialogService }, { token: i2.UlvMainService }, { token: i0.ElementRef }, { token: i3.Router }, { token: i2.PortalService }, { token: i0.ChangeDetectorRef }, { token: i3.ActivatedRoute }, { token: i1.ContentDensityService }, { token: i2.BreadcrumbService }], target: i0.ɵɵFactoryTarget.Component }); }
273
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UiUlvMainUiComponent, selector: "bsu-ui-ulv-main-ui", inputs: { context: "context", isReportPage: "isReportPage", inDialog: "inDialog", isMultiSelect: "isMultiSelect", layoutInfo: "layoutInfo", fullscreen: "fullscreen" }, host: { properties: { "class.control-readonly": "this.readonly", "class.control-disabled": "this.disable", "class.margin-ulv": "this.marginUlv" } }, providers: [UlvMainService], viewQueries: [{ propertyName: "_barsaUlvComponent", first: true, predicate: BarsaUlvMainComponent, descendants: true }, { propertyName: "searchPanelComponent", first: true, predicate: SearchPanelComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<bsu-barsa-ulv-main\r\n [style.margin]=\"isReportPage ? null : 'var(--fdInput_Field_Margin, .25rem 0)'\"\r\n [style.style.width]=\"!isMobile ? null : '100%'\"\r\n [layoutInfo]=\"layoutInfo\"\r\n [attr.isReportPage]=\"isReportPage\"\r\n [simpleSearchPanel]=\"simpleSearchPanel\"\r\n [viewerControl]=\"viewer$ | async\"\r\n [loading]=\"(mask$ | async) === true\"\r\n [viewerLoading]=\"(viwerMask$ | async) === true\"\r\n [standalone]=\"(standalone$ | async) === true\"\r\n [landscape]=\"(landscape$ | async) === true\"\r\n [hideUlvPageTitle]=\"(hideUlvPageTitle$ | async) === true\"\r\n [isReportPage]=\"isReportPage\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [title]=\"title\"\r\n [searchPanelUi]=\"(searchPanelUi$ | async)!!\"\r\n [breadCrumbs]=\"(breadCrumbs$ | async)!!\"\r\n [allSearchPanelSettings]=\"(allSearchPanelSettings$ | async)!!\"\r\n [isAnonymous]=\"(isAnonymous$ | async)!!\"\r\n [canSaveGridSetting]=\"(canSaveGridSetting$ | async) === true\"\r\n [rtl]=\"(rtl$ | async)!!\"\r\n [selectedSearchPanelSettings]=\"(selectedSearchPanelSettings$ | async)!!\"\r\n [searchPanelMoChanged]=\"(searchPanelMoChanged$ | async)!!\"\r\n [selectedSearchPanelSettingsId]=\"(selectedSearchPanelSettingsId$ | async)!!\"\r\n [hideSearchPanel]=\"(hideSearchPanel$ | async)!!\"\r\n [pagingSetting]=\"(pagingSetting$ | async)!!\"\r\n [context]=\"context\"\r\n [contentDensity]=\"contentDensity$ | async\"\r\n (closeEvent)=\"onClose()\"\r\n (searchPanelMoChange)=\"onSearchPanelMoChanged()\"\r\n (openManageFilters)=\"onOpenManageFilters()\"\r\n (collapsedChange)=\"onCollapsedChange($event)\"\r\n (hideSearchPanelClick)=\"onHideSearchPanelClick()\"\r\n (filterSave)=\"onFilterSave()\"\r\n (filterSaveAs)=\"onFilterSaveAs()\"\r\n (showFilterFieldsSetting)=\"onShowFilterFieldsSetting()\"\r\n (manageFilters)=\"onManageFilters()\"\r\n (clearSearch)=\"onClearSearch()\"\r\n (search)=\"onSearch()\"\r\n (pageChange)=\"onPageChange($event)\"\r\n (selectSearchPanelSettings)=\"onSelectSearchPanelSettings($event)\"\r\n>\r\n</bsu-barsa-ulv-main>\r\n", styles: [":host{width:100%;min-height:100%;height:auto;display:flex;flex-direction:column;cursor:default}.margin-ulv{margin-bottom:.25rem;margin-top:.1875rem}\n"], dependencies: [{ kind: "component", type: i4.BarsaUlvMainComponent, selector: "bsu-barsa-ulv-main", inputs: ["viewerControl", "loading", "viewerLoading", "isReportPage", "deviceSize", "title", "searchPanelUi", "breadCrumbs", "allSearchPanelSettings", "isAnonymous", "canSaveGridSetting", "rtl", "hideUlvPageTitle", "selectedSearchPanelSettings", "searchPanelMoChanged", "selectedSearchPanelSettingsId", "hideSearchPanel", "pagingSetting", "contentDensity", "context", "isMobile", "standalone", "landscape", "simpleSearchPanel", "layoutInfo"], outputs: ["closeEvent", "searchPanelMoChange", "openManageFilters", "collapsedChange", "hideSearchPanelClick", "filterSave", "filterSaveAs", "pageChange", "showFilterFieldsSetting", "manageFilters", "clearSearch", "search", "selectSearchPanelSettings"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
274
274
  }
275
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: UiUlvMainUiComponent, decorators: [{
275
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiUlvMainUiComponent, decorators: [{
276
276
  type: Component,
277
277
  args: [{ selector: 'bsu-ui-ulv-main-ui', providers: [UlvMainService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<bsu-barsa-ulv-main\r\n [style.margin]=\"isReportPage ? null : 'var(--fdInput_Field_Margin, .25rem 0)'\"\r\n [style.style.width]=\"!isMobile ? null : '100%'\"\r\n [layoutInfo]=\"layoutInfo\"\r\n [attr.isReportPage]=\"isReportPage\"\r\n [simpleSearchPanel]=\"simpleSearchPanel\"\r\n [viewerControl]=\"viewer$ | async\"\r\n [loading]=\"(mask$ | async) === true\"\r\n [viewerLoading]=\"(viwerMask$ | async) === true\"\r\n [standalone]=\"(standalone$ | async) === true\"\r\n [landscape]=\"(landscape$ | async) === true\"\r\n [hideUlvPageTitle]=\"(hideUlvPageTitle$ | async) === true\"\r\n [isReportPage]=\"isReportPage\"\r\n [deviceSize]=\"(deviceSize$ | async)!!\"\r\n [title]=\"title\"\r\n [searchPanelUi]=\"(searchPanelUi$ | async)!!\"\r\n [breadCrumbs]=\"(breadCrumbs$ | async)!!\"\r\n [allSearchPanelSettings]=\"(allSearchPanelSettings$ | async)!!\"\r\n [isAnonymous]=\"(isAnonymous$ | async)!!\"\r\n [canSaveGridSetting]=\"(canSaveGridSetting$ | async) === true\"\r\n [rtl]=\"(rtl$ | async)!!\"\r\n [selectedSearchPanelSettings]=\"(selectedSearchPanelSettings$ | async)!!\"\r\n [searchPanelMoChanged]=\"(searchPanelMoChanged$ | async)!!\"\r\n [selectedSearchPanelSettingsId]=\"(selectedSearchPanelSettingsId$ | async)!!\"\r\n [hideSearchPanel]=\"(hideSearchPanel$ | async)!!\"\r\n [pagingSetting]=\"(pagingSetting$ | async)!!\"\r\n [context]=\"context\"\r\n [contentDensity]=\"contentDensity$ | async\"\r\n (closeEvent)=\"onClose()\"\r\n (searchPanelMoChange)=\"onSearchPanelMoChanged()\"\r\n (openManageFilters)=\"onOpenManageFilters()\"\r\n (collapsedChange)=\"onCollapsedChange($event)\"\r\n (hideSearchPanelClick)=\"onHideSearchPanelClick()\"\r\n (filterSave)=\"onFilterSave()\"\r\n (filterSaveAs)=\"onFilterSaveAs()\"\r\n (showFilterFieldsSetting)=\"onShowFilterFieldsSetting()\"\r\n (manageFilters)=\"onManageFilters()\"\r\n (clearSearch)=\"onClearSearch()\"\r\n (search)=\"onSearch()\"\r\n (pageChange)=\"onPageChange($event)\"\r\n (selectSearchPanelSettings)=\"onSelectSearchPanelSettings($event)\"\r\n>\r\n</bsu-barsa-ulv-main>\r\n", styles: [":host{width:100%;min-height:100%;height:auto;display:flex;flex-direction:column;cursor:default}.margin-ulv{margin-bottom:.25rem;margin-top:.1875rem}\n"] }]
278
278
  }], ctorParameters: () => [{ type: i1.DialogService }, { type: i2.UlvMainService }, { type: i0.ElementRef }, { type: i3.Router }, { type: i2.PortalService }, { type: i0.ChangeDetectorRef }, { type: i3.ActivatedRoute }, { type: i1.ContentDensityService }, { type: i2.BreadcrumbService }], propDecorators: { context: [{
@@ -303,4 +303,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
303
303
  }], fullscreen: [{
304
304
  type: Input
305
305
  }] } });
306
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktdWx2LW1haW4tdWkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktdWx2LW1haW4tdWkvdWktdWx2LW1haW4tdWkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktdWx2LW1haW4tdWkvdWktdWx2LW1haW4tdWkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUV2QixTQUFTLEVBRVQsV0FBVyxFQUNYLEtBQUssRUFFTCxTQUFTLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSWpFLE9BQU8sRUFDSCxRQUFRLEVBQ1IsYUFBYSxFQUNiLGNBQWMsRUFRZCxpQkFBaUIsRUFFcEIsTUFBTSxzQkFBc0IsQ0FBQztBQUU5QixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUN4RyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUseUNBQXlDLEVBQUUsTUFBTSx3RkFBd0YsQ0FBQztBQUNuSixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUNoSCxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxzRUFBc0UsQ0FBQztBQUN6SCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQzs7Ozs7OztBQVNuRixNQUFNLE9BQU8sb0JBQXFCLFNBQVEsYUFBYTtJQVVuRCxJQUNJLG9CQUFvQixDQUFDLEdBQUc7UUFDeEIsSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUNOLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7UUFD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LENBQUMsQ0FBQztnQkFDUCxJQUFJLENBQUMsZUFBZSxDQUFDLHlCQUF5QixDQUFDLHNCQUFzQixDQUFDLENBQUM7WUFDM0UsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzs4R0EvVFEsb0JBQW9CO2tHQUFwQixvQkFBb0IsMFdBSGxCLENBQUMsY0FBYyxDQUFDLDhFQVNoQixxQkFBcUIsdUZBSXJCLG9CQUFvQix1RUN2RG5DLG9uRUEyQ0E7OzJGREVhLG9CQUFvQjtrQkFQaEMsU0FBUzsrQkFDSSxvQkFBb0IsYUFHbkIsQ0FBQyxjQUFjLENBQUMsbUJBQ1YsdUJBQXVCLENBQUMsTUFBTTswVEFHdEMsT0FBTztzQkFBZixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQzRCLGtCQUFrQjtzQkFBbkQsU0FBUzt1QkFBQyxxQkFBcUI7Z0JBQ08sUUFBUTtzQkFBOUMsV0FBVzt1QkFBQyx3QkFBd0I7Z0JBQ0UsT0FBTztzQkFBN0MsV0FBVzt1QkFBQyx3QkFBd0I7Z0JBQ0osU0FBUztzQkFBekMsV0FBVzt1QkFBQyxrQkFBa0I7Z0JBRTNCLG9CQUFvQjtzQkFEdkIsU0FBUzt1QkFBQyxvQkFBb0I7Z0JBT2xCLFVBQVU7c0JBQXRCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIElucHV0LFxuICAgIE9uSW5pdCxcbiAgICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IENvbnRlbnREZW5zaXR5LCBDb250ZW50RGVuc2l0eVNlcnZpY2UsIERpYWxvZ1NlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xuXG5pbXBvcnQge1xuICAgIEJhcnNhQXBpLFxuICAgIEJhc2VDb21wb25lbnQsXG4gICAgVWx2TWFpblNlcnZpY2UsXG4gICAgUGFnaW5nU2V0dGluZyxcbiAgICBQb3J0YWxTZXJ2aWNlLFxuICAgIFNlYXJjaFBhbmVsU2V0dGluZ3MsXG4gICAgQnJlYWRDcnVtYkluZm8sXG4gICAgQnJlYWRjcnVtYlNlcnZpY2UsXG4gICAgQ29sdW1uSW5mb1R5cGUsXG4gICAgQWJicmV2YXRpb25EZXZpY2VTaXplLFxuICAgIGdldERldmljZUlzTW9iaWxlLFxuICAgIExheW91dFNldHRpbmdcbn0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xuXG5pbXBvcnQgeyBNYW5hZ2VGaWx0ZXJzUmVwb3J0Q29tcG9uZW50IH0gZnJvbSAnLi4vbWFuYWdlLWZpbHRlcnMtcmVwb3J0L21hbmFnZS1maWx0ZXJzLXJlcG9ydC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2VhcmNoUGFuZWxDb21wb25lbnQgfSBmcm9tICcuLi9zZWFyY2gtcGFuZWwvc2VhcmNoLXBhbmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSZXBvcnRTZWFyY2hGaWVsZHNIaWRkZW5TZXR0aW5nc0NvbXBvbmVudCB9IGZyb20gJy4uL3JlcG9ydC1zZWFyY2gtZmllbGRzLWhpZGRlbi1zZXR0aW5ncy9yZXBvcnQtc2VhcmNoLWZpZWxkcy1oaWRkZW4tc2V0dGluZ3MuY29tcG9uZW50JztcbmltcG9ydCB7IFJlcG9ydFNlYXJjaFBhbmVsU2F2ZUNvbXBvbmVudCB9IGZyb20gJy4uL3JlcG9ydC1zZWFyY2gtcGFuZWwtc2F2ZS9yZXBvcnQtc2VhcmNoLXBhbmVsLXNhdmUuY29tcG9uZW50JztcbmltcG9ydCB7IFJlcG9ydFNlYXJjaEZpZWxkc01hbmFnZUNvbXBvbmVudCB9IGZyb20gJy4uL3JlcG9ydC1zZWFyY2gtZmllbGRzLW1hbmFnZS9yZXBvcnQtc2VhcmNoLWZpZWxkcy1tYW5hZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhVWx2TWFpbkNvbXBvbmVudCB9IGZyb20gJy4uL2JhcnNhLXVsdi1tYWluL2JhcnNhLXVsdi1tYWluLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYnN1LXVpLXVsdi1tYWluLXVpJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWktdWx2LW1haW4tdWkuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3VpLXVsdi1tYWluLXVpLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbVWx2TWFpblNlcnZpY2VdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFVpVWx2TWFpblVpQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQElucHV0KCkgY29udGV4dDogYW55O1xuICAgIEBJbnB1dCgpIGlzUmVwb3J0UGFnZTogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBpbkRpYWxvZzogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBpc011bHRpU2VsZWN0OiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGxheW91dEluZm86IExheW91dFNldHRpbmc7XG4gICAgQFZpZXdDaGlsZChCYXJzYVVsdk1haW5Db21wb25lbnQpIF9iYXJzYVVsdkNvbXBvbmVudDogQmFyc2FVbHZNYWluQ29tcG9uZW50O1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuY29udHJvbC1yZWFkb25seScpIHJlYWRvbmx5O1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuY29udHJvbC1kaXNhYmxlZCcpIGRpc2FibGU7XG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5tYXJnaW4tdWx2JykgbWFyZ2luVWx2O1xuICAgIEBWaWV3Q2hpbGQoU2VhcmNoUGFuZWxDb21wb25lbnQpXG4gICAgc2V0IHNlYXJjaFBhbmVsQ29tcG9uZW50KHZhbCkge1xuICAgICAgICBpZiAodmFsKSB7XG4gICAgICAgICAgICB0aGlzLnNlYXJjaFBhbmVsTG9hZGVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgICBASW5wdXQoKSBzZXQgZnVsbHNjcmVlbih2YWw6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fdWx2TWFpblNlcnZpY2Uuc2V0RnVsbHNjcmVlbih2YWwpO1xuICAgIH1cbiAgICBzaW1wbGVTZWFyY2hQYW5lbDogYm9vbGVhbjtcbiAgICBzZWxlY3RlZFNlYXJjaFBhbmVsU2V0dGluZ3M6IFNlYXJjaFBhbmVsU2V0dGluZ3MgfCB1bmRlZmluZWQ7XG4gICAgZmlyc3RBcHBseUF1dG9tYXRpY2FsbHkgPSB0cnVlO1xuICAgIG1hc2skOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIHZpd2VyTWFzayQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgdmlld2VyJDogT2JzZXJ2YWJsZTxhbnk+O1xuICAgIHBhZ2luZ1NldHRpbmckOiBPYnNlcnZhYmxlPFBhZ2luZ1NldHRpbmcgfCBudWxsPjtcbiAgICBjb250ZW50RGVuc2l0eSQ6IE9ic2VydmFibGU8Q29udGVudERlbnNpdHk+O1xuICAgIHNlYXJjaFBhbmVsVWkkOiBPYnNlcnZhYmxlPGFueT47XG4gICAgaGlkZVNlYXJjaFBhbmVsJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBydGwkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIHJlcG9ydElkJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICAgIHNlYXJjaFBhbmVsTW9DaGFuZ2VkJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBhbGxTZWFyY2hQYW5lbFNldHRpbmdzJDogT2JzZXJ2YWJsZTxTZWFyY2hQYW5lbFNldHRpbmdzW10+O1xuICAgIHNlbGVjdGVkU2VhcmNoUGFuZWxTZXR0aW5nc0lkJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICAgIHNlbGVjdGVkU2VhcmNoUGFuZWxTZXR0aW5ncyQ6IE9ic2VydmFibGU8U2VhcmNoUGFuZWxTZXR0aW5ncyB8IHVuZGVmaW5lZD47XG4gICAgZGV2aWNlU2l6ZSQ6IE9ic2VydmFibGU8QWJicmV2YXRpb25EZXZpY2VTaXplPjtcbiAgICBicmVhZENydW1icyQ6IE9ic2VydmFibGU8QnJlYWRDcnVtYkluZm9bXT47XG4gICAgY2FuU2F2ZUdyaWRTZXR0aW5nJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBzZWFyY2hQYW5lbExvYWRlZDogYm9vbGVhbjtcbiAgICBpc0Fub255bW91cyQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgdGl0bGU6IHN0cmluZztcbiAgICBoYXNTZWFyY2hQYW5lbDogYm9vbGVhbjtcbiAgICBpc01vYmlsZTogYm9vbGVhbjtcbiAgICBsYW5kc2NhcGUkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIHN0YW5kYWxvbmUkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIGhpZGVVbHZQYWdlVGl0bGUkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIHVpVmlld2VyU2VsZWN0b3IkOiBPYnNlcnZhYmxlPHN0cmluZz47XG5cbiAgICBwcml2YXRlIGRlZmF1bHREaWFsb2dDb25maWcgPSB7XG4gICAgICAgIHZlcnRpY2FsUGFkZGluZzogdHJ1ZSxcbiAgICAgICAgcmVzcG9uc2l2ZVBhZGRpbmc6IHRydWUsXG4gICAgICAgIHJlc2l6YWJsZTogdHJ1ZSxcbiAgICAgICAgbWluV2lkdGg6IGdldERldmljZUlzTW9iaWxlKCkgPyAnJyA6ICc1MHJlbScsXG4gICAgICAgIGJvZHlNaW5IZWlnaHQ6IGdldERldmljZUlzTW9iaWxlKCkgPyAnJyA6ICdjYWxjKDUwdmggLSA4OHB4KScsXG4gICAgICAgIG1vYmlsZTogZ2V0RGV2aWNlSXNNb2JpbGUoKVxuICAgIH07XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgX2RpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgX3Vsdk1haW5TZXJ2aWNlOiBVbHZNYWluU2VydmljZSxcbiAgICAgICAgcHVibGljIGVsOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgcHJpdmF0ZSBfcG9ydGFsU2VydmljZTogUG9ydGFsU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHJpdmF0ZSBfYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgICAgICBjb250ZW50RGVuc2l0eVNlcnZpY2U6IENvbnRlbnREZW5zaXR5U2VydmljZSxcbiAgICAgICAgX2JyYWRjcnVtYlNlcnZpY2U6IEJyZWFkY3J1bWJTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuY29udGVudERlbnNpdHkkID0gY29udGVudERlbnNpdHlTZXJ2aWNlLmNvbnRlbnREZW5zaXR5O1xuICAgICAgICB0aGlzLnJ0bCQgPSBfcG9ydGFsU2VydmljZS5ydGwkO1xuICAgICAgICB0aGlzLmJyZWFkQ3J1bWJzJCA9IF9icmFkY3J1bWJTZXJ2aWNlLmJyZWFkY3J1bWJzJDtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5pc01vYmlsZSA9IGdldERldmljZUlzTW9iaWxlKCk7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnNldEluRGlhbG9nKHRoaXMuaW5EaWFsb2cpO1xuICAgICAgICB0aGlzLl91bHZNYWluU2VydmljZS5zZXRJc011bHRpU2VsZWN0KHRoaXMuaXNNdWx0aVNlbGVjdCk7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnVpVmlld2VyU2VsZWN0b3IkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGMpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2JhcnNhVWx2Q29tcG9uZW50LlNldFVpVmlld2VyU2VsZWN0b3IoYyk7XG4gICAgICAgIH0pO1xuICAgICAgICAvLyBmcm9tRXZlbnQoZG9jdW1lbnQsICdjbGljaycpXG4gICAgICAgIC8vICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpXG4gICAgICAgIC8vICAgICAuc3Vic2NyaWJlKChlKSA9PiB7XG4gICAgICAgIC8vICAgICAgICAgaWYgKFxuICAgICAgICAvLyAgICAgICAgICAgICBlLnRhcmdldCAmJlxuICAgICAgICAvLyAgICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQgIT09IGUudGFyZ2V0ICYmXG4gICAgICAgIC8vICAgICAgICAgICAgICF0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZS50YXJnZXQpICYmXG4gICAgICAgIC8vICAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY29udGFpbnMoZS50YXJnZXQgYXMgSFRNTEVsZW1lbnQpXG4gICAgICAgIC8vICAgICAgICAgKSB7XG4gICAgICAgIC8vICAgICAgICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnNldElubGluZUVkaXQoZmFsc2UpO1xuICAgICAgICAvLyAgICAgICAgIH1cbiAgICAgICAgLy8gICAgIH0pO1xuICAgICAgICB0aGlzLl9yZW1vdmVCdWdJbkNocm9tZUNzc0FjdGl2ZSgpO1xuICAgICAgICB0aGlzLm1hcmdpblVsdiA9ICF0aGlzLmlzUmVwb3J0UGFnZTtcbiAgICAgICAgaWYgKCF0aGlzLmNvbnRleHQuU2V0dGluZy5TZWFyY2hQYW5lbCkge1xuICAgICAgICAgICAgdGhpcy5zZWFyY2hQYW5lbExvYWRlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fb2JzZXJ2ZU9uKCk7XG4gICAgICAgIHRoaXMuY29udGV4dC5maXJlRXZlbnQoJ3JlbmRlcicsIHRoaXMpO1xuICAgIH1cbiAgICBfb2JzZXJ2ZU9uKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzQW5vbnltb3VzJCA9IHRoaXMuX3BvcnRhbFNlcnZpY2UuaXNBbm9ueW1vdXMkO1xuICAgICAgICB0aGlzLmhpZGVTZWFyY2hQYW5lbCQgPSB0aGlzLl91bHZNYWluU2VydmljZS5oaWRlU2VhcmNocGFuZWwkO1xuXG4gICAgICAgIHRoaXMudGl0bGUgPSBCYXJzYUFwaS5Db21tb24uVXRpbC5UcnlHZXRWYWx1ZSh0aGlzLmNvbnRleHQsICdTZXR0aW5nLkNsYXNzTmFtZXMuQ3VzdG9tVWkuUGFyYW1ldGVycy5UaXRsZScsICcnKTtcbiAgICAgICAgdGhpcy5zaW1wbGVTZWFyY2hQYW5lbCA9IEJhcnNhQXBpLkNvbW1vbi5VdGlsLlRyeUdldFZhbHVlKFxuICAgICAgICAgICAgdGhpcy5jb250ZXh0LFxuICAgICAgICAgICAgJ1NldHRpbmcuQ2xhc3NOYW1lcy5DdXN0b21VaS5QYXJhbWV0ZXJzLlNpbXBsZVNlYXJjaFBhbmVsJyxcbiAgICAgICAgICAgIGZhbHNlXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IGhpZGVUaXRsZU1vZGUgPSBCYXJzYUFwaS5Db21tb24uVXRpbC5UcnlHZXRWYWx1ZShcbiAgICAgICAgICAgIHRoaXMuY29udGV4dCxcbiAgICAgICAgICAgICdTZXR0aW5nLkNsYXNzTmFtZXMuQ3VzdG9tVWkuUGFyYW1ldGVycy5IaWRlVGl0bGVNb2RlJyxcbiAgICAgICAgICAgICcnXG4gICAgICAgICk7XG5cbiAgICAgICAgaWYgKGhpZGVUaXRsZU1vZGUgPT09ICcyJyB8fCBoaWRlVGl0bGVNb2RlID09PSAnMycpIHtcbiAgICAgICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLmhpZGVVbHZUaXRsZVBhZ2UoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl91bHZNYWluU2VydmljZS5zZXRDb250ZXh0KHRoaXMuY29udGV4dCk7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnNldExheW91dEluZm8odGhpcy5sYXlvdXRJbmZvKTtcbiAgICAgICAgdGhpcy5fdWx2TWFpblNlcnZpY2UubG9hZFNlYXJjaFBhbmVsU2V0dGluZ3MoKTtcbiAgICAgICAgdGhpcy5tYXNrJCA9IHRoaXMuX3Vsdk1haW5TZXJ2aWNlLm1hc2skO1xuICAgICAgICB0aGlzLnZpd2VyTWFzayQgPSB0aGlzLl91bHZNYWluU2VydmljZS52aXdlck1hc2skO1xuICAgICAgICB0aGlzLmhpZGVVbHZQYWdlVGl0bGUkID0gdGhpcy5fdWx2TWFpblNlcnZpY2UuaGlkZVVsdlBhZ2VUaXRsZSQ7XG4gICAgICAgIHRoaXMuY2FuU2F2ZUdyaWRTZXR0aW5nJCA9IHRoaXMuX3Vsdk1haW5TZXJ2aWNlLmNhblNhdmVHcmlkU2V0dGluZyQ7XG4gICAgICAgIHRoaXMucGFnaW5nU2V0dGluZyQgPSB0aGlzLl91bHZNYWluU2VydmljZS5wYWdpbmdTZXR0aW5nJDtcbiAgICAgICAgdGhpcy5zZWFyY2hQYW5lbE1vQ2hhbmdlZCQgPSB0aGlzLl91bHZNYWluU2VydmljZS5zZWFyY2hQYW5lbE1vQ2hhbmdlZCQ7XG4gICAgICAgIHRoaXMuaGFzU2VhcmNoUGFuZWwgPSB0aGlzLl91bHZNYWluU2VydmljZS5zZWFyY2hQYW5lbFVpICE9PSBudWxsO1xuICAgICAgICB0aGlzLnNlYXJjaFBhbmVsVWkkID0gdGhpcy5fdWx2TWFpblNlcnZpY2Uuc2VhcmNoUGFuZWxVaSQ7XG4gICAgICAgIHRoaXMuc3RhbmRhbG9uZSQgPSB0aGlzLl9wb3J0YWxTZXJ2aWNlLnN0YW5kYWxvbmUkO1xuICAgICAgICB0aGlzLmxhbmRzY2FwZSQgPSB0aGlzLl9wb3J0YWxTZXJ2aWNlLmxhbmRzY2FwZSQ7XG4gICAgICAgIHRoaXMucmVwb3J0SWQkID0gdGhpcy5fdWx2TWFpblNlcnZpY2UucmVwb3J0SWQkO1xuICAgICAgICB0aGlzLl91bHZNYWluU2VydmljZS5yZWFkb25seSQuc3Vic2NyaWJlKChyZWFkb25seSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5yZWFkb25seSA9IHJlYWRvbmx5O1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5fdWx2TWFpblNlcnZpY2UuZW5hYmxlJC5zdWJzY3JpYmUoKGVuYWJsZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5kaXNhYmxlID0gIWVuYWJsZTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnNlbGVjdGVkU2VhcmNoUGFuZWxTZXR0aW5ncyRcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSxcbiAgICAgICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgoYSwgYikgPT4gYT8uVGl0bGUgPT09IGI/LlRpdGxlKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoc2VsZWN0ZWRTZWFyY2hQYW5lbFNldHRpbmdzKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZFNlYXJjaFBhbmVsU2V0dGluZ3MgPSBzZWxlY3RlZFNlYXJjaFBhbmVsU2V0dGluZ3M7XG4gICAgICAgICAgICAgICAgdGhpcy5fdWx2TWFpblNlcnZpY2UuYXBwbHlTZWFyY2hQYW5lbFNldHRpbmdzKHNlbGVjdGVkU2VhcmNoUGFuZWxTZXR0aW5ncyk7XG4gICAgICAgICAgICAgICAgdGhpcy5fdWx2TWFpblNlcnZpY2UudG9nZ2xlSGlkZVNlYXJjaHBhbmVsKHNlbGVjdGVkU2VhcmNoUGFuZWxTZXR0aW5ncz8uSGlkZVNlYXJjaFBhbmVsKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB0aGlzLnZpZXdlciQgPSB0aGlzLl91bHZNYWluU2VydmljZS52aWV3ZXIkO1xuICAgICAgICB0aGlzLmFsbFNlYXJjaFBhbmVsU2V0dGluZ3MkID0gdGhpcy5fdWx2TWFpblNlcnZpY2UuYWxsU2VhcmNoUGFuZWxTZXR0aW5ncyQ7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRTZWFyY2hQYW5lbFNldHRpbmdzJCA9IHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnNlbGVjdGVkU2VhcmNoUGFuZWxTZXR0aW5ncyQ7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRTZWFyY2hQYW5lbFNldHRpbmdzSWQkID0gdGhpcy5fdWx2TWFpblNlcnZpY2Uuc2VsZWN0ZWRTZWFyY2hQYW5lbFNldHRpbmdzSWQkO1xuICAgICAgICB0aGlzLmRldmljZVNpemUkID0gdGhpcy5fcG9ydGFsU2VydmljZS5kZXZpY2VTaXplJC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSk7XG4gICAgfVxuICAgIG9uQ2xvc2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShbJy4uLy4uJ10sIHsgcmVsYXRpdmVUbzogdGhpcy5fYWN0aXZhdGVkUm91dGUgfSk7XG4gICAgfVxuICAgIG9uU2VhcmNoUGFuZWxNb0NoYW5nZWQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3NldFNlYXJjaFBhbmVsTW9DaGFuZ2VkKHRydWUpO1xuICAgIH1cbiAgICBvblBhZ2VDaGFuZ2UoZTogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnBhZ2VDaGFuZ2VkKGUpO1xuICAgIH1cbiAgICBvbk9wZW5NYW5hZ2VGaWx0ZXJzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9kaWFsb2dTZXJ2aWNlLm9wZW4oTWFuYWdlRmlsdGVyc1JlcG9ydENvbXBvbmVudCwge1xuICAgICAgICAgICAgYmFja2Ryb3BDbGlja0Nsb3NlYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGRyYWdnYWJsZTogZmFsc2UsXG4gICAgICAgICAgICBlc2NLZXlDbG9zZWFibGU6IHRydWUsXG4gICAgICAgICAgICBoYXNCYWNrZHJvcDogZmFsc2UsXG4gICAgICAgICAgICBmb2N1c1RyYXBwZWQ6IHRydWUsXG4gICAgICAgICAgICBtb2JpbGU6IHRoaXMuaXNNb2JpbGVcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgb25Db2xsYXBzZWRDaGFuZ2UoY29sbGFwc2VkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnRvZ2dsZUhpZGVTZWFyY2hwYW5lbChjb2xsYXBzZWQpO1xuICAgICAgICB0aGlzLl91bHZNYWluU2VydmljZS5zZWFyY2hQYW5lbE1vQ2hhbmdlZCh0cnVlKTtcbiAgICB9XG4gICAgb25IaWRlU2VhcmNoUGFuZWxDbGljaygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdWx2TWFpblNlcnZpY2UudG9nZ2xlSGlkZVNlYXJjaHBhbmVsKCk7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnNlYXJjaFBhbmVsTW9DaGFuZ2VkKHRydWUpO1xuICAgIH1cblxuICAgIG9uRmlsdGVyU2F2ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fc2F2ZUZpbHRlcigpO1xuICAgIH1cblxuICAgIG9uRmlsdGVyU2F2ZUFzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9vcGVuU2F2ZUFzRmlsdGVyKCk7XG4gICAgfVxuXG4gICAgb25TaG93RmlsdGVyRmllbGRzU2V0dGluZygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fb3BlblNlYXJjaEZpZWxkc0hpZGRlblNldHRpbmdzKCk7XG4gICAgfVxuXG4gICAgb25NYW5hZ2VGaWx0ZXJzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9vcGVuU2VhcmNoRmlsdGVyc01hbmFnZSgpO1xuICAgIH1cblxuICAgIG9uQ2xlYXJTZWFyY2goKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLmNsZWFyU2VhcmNoKCk7XG4gICAgfVxuXG4gICAgb25TZWFyY2goKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnNlYXJjaCgpO1xuICAgIH1cblxuICAgIG9uU2VsZWN0U2VhcmNoUGFuZWxTZXR0aW5ncyhzZWxlY3RlZFNlYXJjaFBhbmVsU2V0dGluZ3NJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLmNoYW5nZVNlbGVjdGVkU2VhcmNoUGFuZWwoc2VsZWN0ZWRTZWFyY2hQYW5lbFNldHRpbmdzSWQpO1xuICAgIH1cbiAgICBwcml2YXRlIF9yZW1vdmVCdWdJbkNocm9tZUNzc0FjdGl2ZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKEJhcnNhQXBpLkNvbW1vbi5VdGlsLlJlbW92ZUJ1Z0luQ2hyb21lQ3NzQWN0aXZlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgbGV0IGxpc3Q6IHsgaTogYW55OyBuOiBhbnk7IGE6IGFueSB9W10gPSBbXTtcbiAgICAgICAgY29uc3QgaCA9IGRvY3VtZW50LmhlYWQuY2hpbGRyZW47XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgbGlzdFtpXSA9IHtcbiAgICAgICAgICAgICAgICBpLFxuICAgICAgICAgICAgICAgIG46IGhbaV0sXG4gICAgICAgICAgICAgICAgYTogaFtpXS5pbm5lckhUTUxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgICAgbGlzdCA9IGxpc3QucmV2ZXJzZSgpO1xuICAgICAgICAvKiBlc2xpbnQtZGlzYWJsZSAqL1xuICAgICAgICBjb25zdCB0ID0gYC5mZC10YWJsZV9fY2VsbC0tYWN0aXZhYmxlOmFjdGl2ZSAqLC5mZC10YWJsZV9fcm93LS1hY3RpdmFibGUuaXMtYWN0aXZlICosLmZkLXRhYmxlX19yb3ctLWFjdGl2YWJsZTphY3RpdmUgKntjb2xvcjp2YXIoLS1zYXBMaXN0X0FjdGl2ZV9UZXh0Q29sb3IpIWltcG9ydGFudH1gO1xuICAgICAgICAvKiBlc2xpbnQtZW5hYmxlICovXG4gICAgICAgIGNvbnN0IGYgPSBsaXN0LmZpbHRlcigoYykgPT4gYy5hLmluZGV4T2YodCkgPj0gMCk7XG4gICAgICAgIGlmIChmLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIEJhcnNhQXBpLkNvbW1vbi5VdGlsLlJlbW92ZUJ1Z0luQ2hyb21lQ3NzQWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgICAgIGZbMF0ubi5pbm5lckhUTUwgPSBmWzBdLmEuc2xpY2UoMCwgMTAwNTgpICsgZlswXS5hLnNsaWNlKDEwMDU4ICsgdC5sZW5ndGgsIGZbMF0uYS5sZW5ndGgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHByaXZhdGUgX3NldFNlYXJjaFBhbmVsTW9DaGFuZ2VkKGNoYW5nZTogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLl91bHZNYWluU2VydmljZS5zZWFyY2hQYW5lbE1vQ2hhbmdlZChjaGFuZ2UpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX29wZW5TZWFyY2hGaWVsZHNIaWRkZW5TZXR0aW5ncygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZmllbGRzU2V0dGluZyA9IHRoaXMuX3Vsdk1haW5TZXJ2aWNlLmdldFNlYXJjaFBhbmVsRmllbGRzU2V0dGluZygpO1xuICAgICAgICBjb25zdCBjb25maWcgPSB7XG4gICAgICAgICAgICAuLi50aGlzLmRlZmF1bHREaWFsb2dDb25maWcsXG4gICAgICAgICAgICBtaW5XaWR0aDogJzI1cmVtJyxcbiAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBmaWVsZHM6IFsuLi5maWVsZHNTZXR0aW5nXVxuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLl9kaWFsb2dTZXJ2aWNlLm9wZW4oUmVwb3J0U2VhcmNoRmllbGRzSGlkZGVuU2V0dGluZ3NDb21wb25lbnQsIGNvbmZpZyk7XG4gICAgICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChzZXR0aW5nOiBDb2x1bW5JbmZvVHlwZVtdKSA9PiB7XG4gICAgICAgICAgICBpZiAoc2V0dGluZykge1xuICAgICAgICAgICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnNldEFuZEFwcGx5U2VhcmNoUGFuZWxTZXR0aW5nRmllbGRzU2V0dGluZyhzZXR0aW5nKTtcbiAgICAgICAgICAgICAgICB0aGlzLl91bHZNYWluU2VydmljZS5zZWFyY2hQYW5lbE1vQ2hhbmdlZCh0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHByaXZhdGUgX29wZW5TYXZlQXNGaWx0ZXIoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHNlYXJjaE1vID0gdGhpcy5fdWx2TWFpblNlcnZpY2UuZ2V0U2VhcmNoUGFuZWxNbygpO1xuICAgICAgICBjb25zdCBzZWxlY3RlZFNlYXJjaFBhbmVsU2V0dGluZ3MgPSB0aGlzLnNlbGVjdGVkU2VhcmNoUGFuZWxTZXR0aW5ncztcbiAgICAgICAgY29uc3QgZmllbGRzU2V0dGluZyA9IHNlbGVjdGVkU2VhcmNoUGFuZWxTZXR0aW5ncz8uRmllbGRzU2V0dGluZztcbiAgICAgICAgY29uc3QgY29uZmlnID0ge1xuICAgICAgICAgICAgLi4udGhpcy5kZWZhdWx0RGlhbG9nQ29uZmlnLFxuICAgICAgICAgICAgbWluV2lkdGg6ICcyNXJlbScsXG4gICAgICAgICAgICByZXNpemFibGU6IGZhbHNlLFxuICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgIHNlYXJjaE1vLFxuICAgICAgICAgICAgICAgIGZpZWxkc1NldHRpbmcsXG4gICAgICAgICAgICAgICAgcmVwb3J0SWQ6IHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnJlcG9ydElkXG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuX2RpYWxvZ1NlcnZpY2Uub3BlbihSZXBvcnRTZWFyY2hQYW5lbFNhdmVDb21wb25lbnQsIGNvbmZpZyk7XG4gICAgICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChzZWFyY2hQYW5lbFNldHRpbmc6IFNlYXJjaFBhbmVsU2V0dGluZ3MpID0+IHtcbiAgICAgICAgICAgIGlmIChzZWFyY2hQYW5lbFNldHRpbmcpIHtcbiAgICAgICAgICAgICAgICBzZWFyY2hQYW5lbFNldHRpbmcuSGlkZVNlYXJjaFBhbmVsID0gdGhpcy5fdWx2TWFpblNlcnZpY2UuaGlkZVNlYXJjaHBhbmVsO1xuICAgICAgICAgICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLmFkZFNlYXJjaFBhbmVsU2V0dGluZ3Moc2VhcmNoUGFuZWxTZXR0aW5nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHByaXZhdGUgX3NhdmVGaWx0ZXIoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkU2VhcmNoUGFuZWxTZXR0aW5ncyA9IHRoaXMuc2VsZWN0ZWRTZWFyY2hQYW5lbFNldHRpbmdzO1xuICAgICAgICBpZiAoc2VsZWN0ZWRTZWFyY2hQYW5lbFNldHRpbmdzKSB7XG4gICAgICAgICAgICBzZWxlY3RlZFNlYXJjaFBhbmVsU2V0dGluZ3MuSGlkZVNlYXJjaFBhbmVsID0gdGhpcy5fdWx2TWFpblNlcnZpY2UuaGlkZVNlYXJjaHBhbmVsO1xuICAgICAgICAgICAgdGhpcy5fdWx2TWFpblNlcnZpY2Uuc2F2ZVNlYXJjaFBhbmVsU2V0dGluZyhzZWxlY3RlZFNlYXJjaFBhbmVsU2V0dGluZ3MpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHByaXZhdGUgX29wZW5TZWFyY2hGaWx0ZXJzTWFuYWdlKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBhbGxTZWFyY2hQYW5lbFNldHRpbmdzID0gdGhpcy5fdWx2TWFpblNlcnZpY2UuYWxsU2VhcmNoUGFuZWxTZXR0aW5ncztcbiAgICAgICAgY29uc3QgcmVwb3J0SWQgPSB0aGlzLl91bHZNYWluU2VydmljZS5yZXBvcnRJZDtcbiAgICAgICAgY29uc3QgY29uZmlnID0ge1xuICAgICAgICAgICAgLi4udGhpcy5kZWZhdWx0RGlhbG9nQ29uZmlnLFxuICAgICAgICAgICAgcmVzcG9uc2l2ZVBhZGRpbmc6IGZhbHNlLFxuICAgICAgICAgICAgdmVydGljYWxQYWRkaW5nOiBmYWxzZSxcbiAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBhbGxTZWFyY2hQYW5lbFNldHRpbmdzOiBhbGxTZWFyY2hQYW5lbFNldHRpbmdzLm1hcCgoYykgPT4gKHtcbiAgICAgICAgICAgICAgICAgICAgVGl0bGU6IGMuVGl0bGUsXG4gICAgICAgICAgICAgICAgICAgIElzRGVmYXVsdDogYy5Jc0RlZmF1bHQsXG4gICAgICAgICAgICAgICAgICAgIElzUHVibGljOiBjLklzUHVibGljLFxuICAgICAgICAgICAgICAgICAgICBJc1ByaW1hcnk6ICEhYy5Jc1ByaW1hcnksXG4gICAgICAgICAgICAgICAgICAgIEFwcGx5QXV0b21hdGljYWxseTogYy5BcHBseUF1dG9tYXRpY2FsbHksXG4gICAgICAgICAgICAgICAgICAgIFJlcG9ydElkOiByZXBvcnRJZCxcbiAgICAgICAgICAgICAgICAgICAgSWQ6IGMuSWRcbiAgICAgICAgICAgICAgICB9KSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5fZGlhbG9nU2VydmljZS5vcGVuKFJlcG9ydFNlYXJjaEZpZWxkc01hbmFnZUNvbXBvbmVudCwgY29uZmlnKTtcbiAgICAgICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKHNldHRpbmc6IFNlYXJjaFBhbmVsU2V0dGluZ3NbXSkgPT4ge1xuICAgICAgICAgICAgaWYgKHNldHRpbmcpIHtcbiAgICAgICAgICAgICAgICBzZXR0aW5nXG4gICAgICAgICAgICAgICAgICAgIC5maWx0ZXIoKGMpID0+ICFjLklzUHJpbWFyeSlcbiAgICAgICAgICAgICAgICAgICAgLmZvckVhY2goKG5ld1NldHRpbmcpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNwcyA9IGFsbFNlYXJjaFBhbmVsU2V0dGluZ3MuZmluZCgoYykgPT4gYy5JZCA9PT0gbmV3U2V0dGluZy5JZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoc3BzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQmFyc2FBcGkuQ29tbW9uLk1lcmdlci5NZXJnZShzcHMsIG5ld1NldHRpbmcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB0aGlzLl91bHZNYWluU2VydmljZS51cGRhdGVTZWFyY2hQYW5lbFNldHRpbmdzKGFsbFNlYXJjaFBhbmVsU2V0dGluZ3MpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8YnN1LWJhcnNhLXVsdi1tYWluXHJcbiAgICBbc3R5bGUubWFyZ2luXT1cImlzUmVwb3J0UGFnZSA/IG51bGwgOiAndmFyKC0tZmRJbnB1dF9GaWVsZF9NYXJnaW4sIC4yNXJlbSAwKSdcIlxyXG4gICAgW3N0eWxlLnN0eWxlLndpZHRoXT1cIiFpc01vYmlsZSA/IG51bGwgOiAnMTAwJSdcIlxyXG4gICAgW2xheW91dEluZm9dPVwibGF5b3V0SW5mb1wiXHJcbiAgICBbYXR0ci5pc1JlcG9ydFBhZ2VdPVwiaXNSZXBvcnRQYWdlXCJcclxuICAgIFtzaW1wbGVTZWFyY2hQYW5lbF09XCJzaW1wbGVTZWFyY2hQYW5lbFwiXHJcbiAgICBbdmlld2VyQ29udHJvbF09XCJ2aWV3ZXIkIHwgYXN5bmNcIlxyXG4gICAgW2xvYWRpbmddPVwiKG1hc2skIHwgYXN5bmMpID09PSB0cnVlXCJcclxuICAgIFt2aWV3ZXJMb2FkaW5nXT1cIih2aXdlck1hc2skIHwgYXN5bmMpID09PSB0cnVlXCJcclxuICAgIFtzdGFuZGFsb25lXT1cIihzdGFuZGFsb25lJCB8IGFzeW5jKSA9PT0gdHJ1ZVwiXHJcbiAgICBbbGFuZHNjYXBlXT1cIihsYW5kc2NhcGUkIHwgYXN5bmMpID09PSB0cnVlXCJcclxuICAgIFtoaWRlVWx2UGFnZVRpdGxlXT1cIihoaWRlVWx2UGFnZVRpdGxlJCB8IGFzeW5jKSA9PT0gdHJ1ZVwiXHJcbiAgICBbaXNSZXBvcnRQYWdlXT1cImlzUmVwb3J0UGFnZVwiXHJcbiAgICBbZGV2aWNlU2l6ZV09XCIoZGV2aWNlU2l6ZSQgfCBhc3luYykhIVwiXHJcbiAgICBbdGl0bGVdPVwidGl0bGVcIlxyXG4gICAgW3NlYXJjaFBhbmVsVWldPVwiKHNlYXJjaFBhbmVsVWkkIHwgYXN5bmMpISFcIlxyXG4gICAgW2JyZWFkQ3J1bWJzXT1cIihicmVhZENydW1icyQgfCBhc3luYykhIVwiXHJcbiAgICBbYWxsU2VhcmNoUGFuZWxTZXR0aW5nc109XCIoYWxsU2VhcmNoUGFuZWxTZXR0aW5ncyQgfCBhc3luYykhIVwiXHJcbiAgICBbaXNBbm9ueW1vdXNdPVwiKGlzQW5vbnltb3VzJCB8IGFzeW5jKSEhXCJcclxuICAgIFtjYW5TYXZlR3JpZFNldHRpbmddPVwiKGNhblNhdmVHcmlkU2V0dGluZyQgfCBhc3luYykgPT09IHRydWVcIlxyXG4gICAgW3J0bF09XCIocnRsJCB8IGFzeW5jKSEhXCJcclxuICAgIFtzZWxlY3RlZFNlYXJjaFBhbmVsU2V0dGluZ3NdPVwiKHNlbGVjdGVkU2VhcmNoUGFuZWxTZXR0aW5ncyQgfCBhc3luYykhIVwiXHJcbiAgICBbc2VhcmNoUGFuZWxNb0NoYW5nZWRdPVwiKHNlYXJjaFBhbmVsTW9DaGFuZ2VkJCB8IGFzeW5jKSEhXCJcclxuICAgIFtzZWxlY3RlZFNlYXJjaFBhbmVsU2V0dGluZ3NJZF09XCIoc2VsZWN0ZWRTZWFyY2hQYW5lbFNldHRpbmdzSWQkIHwgYXN5bmMpISFcIlxyXG4gICAgW2hpZGVTZWFyY2hQYW5lbF09XCIoaGlkZVNlYXJjaFBhbmVsJCB8IGFzeW5jKSEhXCJcclxuICAgIFtwYWdpbmdTZXR0aW5nXT1cIihwYWdpbmdTZXR0aW5nJCB8IGFzeW5jKSEhXCJcclxuICAgIFtjb250ZXh0XT1cImNvbnRleHRcIlxyXG4gICAgW2NvbnRlbnREZW5zaXR5XT1cImNvbnRlbnREZW5zaXR5JCB8IGFzeW5jXCJcclxuICAgIChjbG9zZUV2ZW50KT1cIm9uQ2xvc2UoKVwiXHJcbiAgICAoc2VhcmNoUGFuZWxNb0NoYW5nZSk9XCJvblNlYXJjaFBhbmVsTW9DaGFuZ2VkKClcIlxyXG4gICAgKG9wZW5NYW5hZ2VGaWx0ZXJzKT1cIm9uT3Blbk1hbmFnZUZpbHRlcnMoKVwiXHJcbiAgICAoY29sbGFwc2VkQ2hhbmdlKT1cIm9uQ29sbGFwc2VkQ2hhbmdlKCRldmVudClcIlxyXG4gICAgKGhpZGVTZWFyY2hQYW5lbENsaWNrKT1cIm9uSGlkZVNlYXJjaFBhbmVsQ2xpY2soKVwiXHJcbiAgICAoZmlsdGVyU2F2ZSk9XCJvbkZpbHRlclNhdmUoKVwiXHJcbiAgICAoZmlsdGVyU2F2ZUFzKT1cIm9uRmlsdGVyU2F2ZUFzKClcIlxyXG4gICAgKHNob3dGaWx0ZXJGaWVsZHNTZXR0aW5nKT1cIm9uU2hvd0ZpbHRlckZpZWxkc1NldHRpbmcoKVwiXHJcbiAgICAobWFuYWdlRmlsdGVycyk9XCJvbk1hbmFnZUZpbHRlcnMoKVwiXHJcbiAgICAoY2xlYXJTZWFyY2gpPVwib25DbGVhclNlYXJjaCgpXCJcclxuICAgIChzZWFyY2gpPVwib25TZWFyY2goKVwiXHJcbiAgICAocGFnZUNoYW5nZSk9XCJvblBhZ2VDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAoc2VsZWN0U2VhcmNoUGFuZWxTZXR0aW5ncyk9XCJvblNlbGVjdFNlYXJjaFBhbmVsU2V0dGluZ3MoJGV2ZW50KVwiXHJcbj5cclxuPC9ic3UtYmFyc2EtdWx2LW1haW4+XHJcbiJdfQ==
306
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktdWx2LW1haW4tdWkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktdWx2LW1haW4tdWkvdWktdWx2LW1haW4tdWkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktdWx2LW1haW4tdWkvdWktdWx2LW1haW4tdWkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUV2QixTQUFTLEVBRVQsV0FBVyxFQUNYLEtBQUssRUFFTCxTQUFTLEVBQ1osTUFBTSxlQUFlLENBQUM7QUFHdkIsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBSWpFLE9BQU8sRUFDSCxRQUFRLEVBQ1IsYUFBYSxFQUNiLGNBQWMsRUFRZCxpQkFBaUIsRUFFcEIsTUFBTSxzQkFBc0IsQ0FBQztBQUU5QixPQUFPLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUN4RyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUseUNBQXlDLEVBQUUsTUFBTSx3RkFBd0YsQ0FBQztBQUNuSixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUNoSCxPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSxzRUFBc0UsQ0FBQztBQUN6SCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQzs7Ozs7OztBQVNuRixNQUFNLE9BQU8sb0JBQXFCLFNBQVEsYUFBYTtJQVVuRCxJQUNJLG9CQUFvQixDQUFDLEdBQUc7UUFDeEIsSUFBSSxHQUFHLEVBQUUsQ0FBQztZQUNOLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7UUFD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LENBQUMsQ0FBQztnQkFDUCxJQUFJLENBQUMsZUFBZSxDQUFDLHlCQUF5QixDQUFDLHNCQUFzQixDQUFDLENBQUM7WUFDM0UsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQzsrR0EvVFEsb0JBQW9CO21HQUFwQixvQkFBb0IsMFdBSGxCLENBQUMsY0FBYyxDQUFDLDhFQVNoQixxQkFBcUIsdUZBSXJCLG9CQUFvQix1RUN2RG5DLG9uRUEyQ0E7OzRGREVhLG9CQUFvQjtrQkFQaEMsU0FBUzsrQkFDSSxvQkFBb0IsYUFHbkIsQ0FBQyxjQUFjLENBQUMsbUJBQ1YsdUJBQXVCLENBQUMsTUFBTTswVEFHdEMsT0FBTztzQkFBZixLQUFLO2dCQUNHLFlBQVk7c0JBQXBCLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUs7Z0JBQzRCLGtCQUFrQjtzQkFBbkQsU0FBUzt1QkFBQyxxQkFBcUI7Z0JBQ08sUUFBUTtzQkFBOUMsV0FBVzt1QkFBQyx3QkFBd0I7Z0JBQ0UsT0FBTztzQkFBN0MsV0FBVzt1QkFBQyx3QkFBd0I7Z0JBQ0osU0FBUztzQkFBekMsV0FBVzt1QkFBQyxrQkFBa0I7Z0JBRTNCLG9CQUFvQjtzQkFEdkIsU0FBUzt1QkFBQyxvQkFBb0I7Z0JBT2xCLFVBQVU7c0JBQXRCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3RCaW5kaW5nLFxuICAgIElucHV0LFxuICAgIE9uSW5pdCxcbiAgICBWaWV3Q2hpbGRcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IENvbnRlbnREZW5zaXR5LCBDb250ZW50RGVuc2l0eVNlcnZpY2UsIERpYWxvZ1NlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xuXG5pbXBvcnQge1xuICAgIEJhcnNhQXBpLFxuICAgIEJhc2VDb21wb25lbnQsXG4gICAgVWx2TWFpblNlcnZpY2UsXG4gICAgUGFnaW5nU2V0dGluZyxcbiAgICBQb3J0YWxTZXJ2aWNlLFxuICAgIFNlYXJjaFBhbmVsU2V0dGluZ3MsXG4gICAgQnJlYWRDcnVtYkluZm8sXG4gICAgQnJlYWRjcnVtYlNlcnZpY2UsXG4gICAgQ29sdW1uSW5mb1R5cGUsXG4gICAgQWJicmV2YXRpb25EZXZpY2VTaXplLFxuICAgIGdldERldmljZUlzTW9iaWxlLFxuICAgIExheW91dFNldHRpbmdcbn0gZnJvbSAnYmFyc2Etbm92aW4tcmF5LWNvcmUnO1xuXG5pbXBvcnQgeyBNYW5hZ2VGaWx0ZXJzUmVwb3J0Q29tcG9uZW50IH0gZnJvbSAnLi4vbWFuYWdlLWZpbHRlcnMtcmVwb3J0L21hbmFnZS1maWx0ZXJzLXJlcG9ydC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2VhcmNoUGFuZWxDb21wb25lbnQgfSBmcm9tICcuLi9zZWFyY2gtcGFuZWwvc2VhcmNoLXBhbmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSZXBvcnRTZWFyY2hGaWVsZHNIaWRkZW5TZXR0aW5nc0NvbXBvbmVudCB9IGZyb20gJy4uL3JlcG9ydC1zZWFyY2gtZmllbGRzLWhpZGRlbi1zZXR0aW5ncy9yZXBvcnQtc2VhcmNoLWZpZWxkcy1oaWRkZW4tc2V0dGluZ3MuY29tcG9uZW50JztcbmltcG9ydCB7IFJlcG9ydFNlYXJjaFBhbmVsU2F2ZUNvbXBvbmVudCB9IGZyb20gJy4uL3JlcG9ydC1zZWFyY2gtcGFuZWwtc2F2ZS9yZXBvcnQtc2VhcmNoLXBhbmVsLXNhdmUuY29tcG9uZW50JztcbmltcG9ydCB7IFJlcG9ydFNlYXJjaEZpZWxkc01hbmFnZUNvbXBvbmVudCB9IGZyb20gJy4uL3JlcG9ydC1zZWFyY2gtZmllbGRzLW1hbmFnZS9yZXBvcnQtc2VhcmNoLWZpZWxkcy1tYW5hZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IEJhcnNhVWx2TWFpbkNvbXBvbmVudCB9IGZyb20gJy4uL2JhcnNhLXVsdi1tYWluL2JhcnNhLXVsdi1tYWluLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYnN1LXVpLXVsdi1tYWluLXVpJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWktdWx2LW1haW4tdWkuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL3VpLXVsdi1tYWluLXVpLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbVWx2TWFpblNlcnZpY2VdLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFVpVWx2TWFpblVpQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQElucHV0KCkgY29udGV4dDogYW55O1xuICAgIEBJbnB1dCgpIGlzUmVwb3J0UGFnZTogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBpbkRpYWxvZzogYm9vbGVhbjtcbiAgICBASW5wdXQoKSBpc011bHRpU2VsZWN0OiBib29sZWFuO1xuICAgIEBJbnB1dCgpIGxheW91dEluZm86IExheW91dFNldHRpbmc7XG4gICAgQFZpZXdDaGlsZChCYXJzYVVsdk1haW5Db21wb25lbnQpIF9iYXJzYVVsdkNvbXBvbmVudDogQmFyc2FVbHZNYWluQ29tcG9uZW50O1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuY29udHJvbC1yZWFkb25seScpIHJlYWRvbmx5O1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuY29udHJvbC1kaXNhYmxlZCcpIGRpc2FibGU7XG4gICAgQEhvc3RCaW5kaW5nKCdjbGFzcy5tYXJnaW4tdWx2JykgbWFyZ2luVWx2O1xuICAgIEBWaWV3Q2hpbGQoU2VhcmNoUGFuZWxDb21wb25lbnQpXG4gICAgc2V0IHNlYXJjaFBhbmVsQ29tcG9uZW50KHZhbCkge1xuICAgICAgICBpZiAodmFsKSB7XG4gICAgICAgICAgICB0aGlzLnNlYXJjaFBhbmVsTG9hZGVkID0gdHJ1ZTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl9jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cbiAgICBASW5wdXQoKSBzZXQgZnVsbHNjcmVlbih2YWw6IGJvb2xlYW4pIHtcbiAgICAgICAgdGhpcy5fdWx2TWFpblNlcnZpY2Uuc2V0RnVsbHNjcmVlbih2YWwpO1xuICAgIH1cbiAgICBzaW1wbGVTZWFyY2hQYW5lbDogYm9vbGVhbjtcbiAgICBzZWxlY3RlZFNlYXJjaFBhbmVsU2V0dGluZ3M6IFNlYXJjaFBhbmVsU2V0dGluZ3MgfCB1bmRlZmluZWQ7XG4gICAgZmlyc3RBcHBseUF1dG9tYXRpY2FsbHkgPSB0cnVlO1xuICAgIG1hc2skOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIHZpd2VyTWFzayQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgdmlld2VyJDogT2JzZXJ2YWJsZTxhbnk+O1xuICAgIHBhZ2luZ1NldHRpbmckOiBPYnNlcnZhYmxlPFBhZ2luZ1NldHRpbmcgfCBudWxsPjtcbiAgICBjb250ZW50RGVuc2l0eSQ6IE9ic2VydmFibGU8Q29udGVudERlbnNpdHk+O1xuICAgIHNlYXJjaFBhbmVsVWkkOiBPYnNlcnZhYmxlPGFueT47XG4gICAgaGlkZVNlYXJjaFBhbmVsJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBydGwkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIHJlcG9ydElkJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICAgIHNlYXJjaFBhbmVsTW9DaGFuZ2VkJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBhbGxTZWFyY2hQYW5lbFNldHRpbmdzJDogT2JzZXJ2YWJsZTxTZWFyY2hQYW5lbFNldHRpbmdzW10+O1xuICAgIHNlbGVjdGVkU2VhcmNoUGFuZWxTZXR0aW5nc0lkJDogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICAgIHNlbGVjdGVkU2VhcmNoUGFuZWxTZXR0aW5ncyQ6IE9ic2VydmFibGU8U2VhcmNoUGFuZWxTZXR0aW5ncyB8IHVuZGVmaW5lZD47XG4gICAgZGV2aWNlU2l6ZSQ6IE9ic2VydmFibGU8QWJicmV2YXRpb25EZXZpY2VTaXplPjtcbiAgICBicmVhZENydW1icyQ6IE9ic2VydmFibGU8QnJlYWRDcnVtYkluZm9bXT47XG4gICAgY2FuU2F2ZUdyaWRTZXR0aW5nJDogT2JzZXJ2YWJsZTxib29sZWFuPjtcbiAgICBzZWFyY2hQYW5lbExvYWRlZDogYm9vbGVhbjtcbiAgICBpc0Fub255bW91cyQ6IE9ic2VydmFibGU8Ym9vbGVhbj47XG4gICAgdGl0bGU6IHN0cmluZztcbiAgICBoYXNTZWFyY2hQYW5lbDogYm9vbGVhbjtcbiAgICBpc01vYmlsZTogYm9vbGVhbjtcbiAgICBsYW5kc2NhcGUkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIHN0YW5kYWxvbmUkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIGhpZGVVbHZQYWdlVGl0bGUkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuICAgIHVpVmlld2VyU2VsZWN0b3IkOiBPYnNlcnZhYmxlPHN0cmluZz47XG5cbiAgICBwcml2YXRlIGRlZmF1bHREaWFsb2dDb25maWcgPSB7XG4gICAgICAgIHZlcnRpY2FsUGFkZGluZzogdHJ1ZSxcbiAgICAgICAgcmVzcG9uc2l2ZVBhZGRpbmc6IHRydWUsXG4gICAgICAgIHJlc2l6YWJsZTogdHJ1ZSxcbiAgICAgICAgbWluV2lkdGg6IGdldERldmljZUlzTW9iaWxlKCkgPyAnJyA6ICc1MHJlbScsXG4gICAgICAgIGJvZHlNaW5IZWlnaHQ6IGdldERldmljZUlzTW9iaWxlKCkgPyAnJyA6ICdjYWxjKDUwdmggLSA4OHB4KScsXG4gICAgICAgIG1vYmlsZTogZ2V0RGV2aWNlSXNNb2JpbGUoKVxuICAgIH07XG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgX2RpYWxvZ1NlcnZpY2U6IERpYWxvZ1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgX3Vsdk1haW5TZXJ2aWNlOiBVbHZNYWluU2VydmljZSxcbiAgICAgICAgcHVibGljIGVsOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIF9yb3V0ZXI6IFJvdXRlcixcbiAgICAgICAgcHJpdmF0ZSBfcG9ydGFsU2VydmljZTogUG9ydGFsU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBfY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHJpdmF0ZSBfYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgICAgICBjb250ZW50RGVuc2l0eVNlcnZpY2U6IENvbnRlbnREZW5zaXR5U2VydmljZSxcbiAgICAgICAgX2JyYWRjcnVtYlNlcnZpY2U6IEJyZWFkY3J1bWJTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIHRoaXMuY29udGVudERlbnNpdHkkID0gY29udGVudERlbnNpdHlTZXJ2aWNlLmNvbnRlbnREZW5zaXR5O1xuICAgICAgICB0aGlzLnJ0bCQgPSBfcG9ydGFsU2VydmljZS5ydGwkO1xuICAgICAgICB0aGlzLmJyZWFkQ3J1bWJzJCA9IF9icmFkY3J1bWJTZXJ2aWNlLmJyZWFkY3J1bWJzJDtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgc3VwZXIubmdPbkluaXQoKTtcbiAgICAgICAgdGhpcy5pc01vYmlsZSA9IGdldERldmljZUlzTW9iaWxlKCk7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnNldEluRGlhbG9nKHRoaXMuaW5EaWFsb2cpO1xuICAgICAgICB0aGlzLl91bHZNYWluU2VydmljZS5zZXRJc011bHRpU2VsZWN0KHRoaXMuaXNNdWx0aVNlbGVjdCk7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnVpVmlld2VyU2VsZWN0b3IkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKGMpID0+IHtcbiAgICAgICAgICAgIHRoaXMuX2JhcnNhVWx2Q29tcG9uZW50LlNldFVpVmlld2VyU2VsZWN0b3IoYyk7XG4gICAgICAgIH0pO1xuICAgICAgICAvLyBmcm9tRXZlbnQoZG9jdW1lbnQsICdjbGljaycpXG4gICAgICAgIC8vICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCkpXG4gICAgICAgIC8vICAgICAuc3Vic2NyaWJlKChlKSA9PiB7XG4gICAgICAgIC8vICAgICAgICAgaWYgKFxuICAgICAgICAvLyAgICAgICAgICAgICBlLnRhcmdldCAmJlxuICAgICAgICAvLyAgICAgICAgICAgICB0aGlzLmVsLm5hdGl2ZUVsZW1lbnQgIT09IGUudGFyZ2V0ICYmXG4gICAgICAgIC8vICAgICAgICAgICAgICF0aGlzLmVsLm5hdGl2ZUVsZW1lbnQuY29udGFpbnMoZS50YXJnZXQpICYmXG4gICAgICAgIC8vICAgICAgICAgICAgIGRvY3VtZW50LmJvZHkuY29udGFpbnMoZS50YXJnZXQgYXMgSFRNTEVsZW1lbnQpXG4gICAgICAgIC8vICAgICAgICAgKSB7XG4gICAgICAgIC8vICAgICAgICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnNldElubGluZUVkaXQoZmFsc2UpO1xuICAgICAgICAvLyAgICAgICAgIH1cbiAgICAgICAgLy8gICAgIH0pO1xuICAgICAgICB0aGlzLl9yZW1vdmVCdWdJbkNocm9tZUNzc0FjdGl2ZSgpO1xuICAgICAgICB0aGlzLm1hcmdpblVsdiA9ICF0aGlzLmlzUmVwb3J0UGFnZTtcbiAgICAgICAgaWYgKCF0aGlzLmNvbnRleHQuU2V0dGluZy5TZWFyY2hQYW5lbCkge1xuICAgICAgICAgICAgdGhpcy5zZWFyY2hQYW5lbExvYWRlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fb2JzZXJ2ZU9uKCk7XG4gICAgICAgIHRoaXMuY29udGV4dC5maXJlRXZlbnQoJ3JlbmRlcicsIHRoaXMpO1xuICAgIH1cbiAgICBfb2JzZXJ2ZU9uKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmlzQW5vbnltb3VzJCA9IHRoaXMuX3BvcnRhbFNlcnZpY2UuaXNBbm9ueW1vdXMkO1xuICAgICAgICB0aGlzLmhpZGVTZWFyY2hQYW5lbCQgPSB0aGlzLl91bHZNYWluU2VydmljZS5oaWRlU2VhcmNocGFuZWwkO1xuXG4gICAgICAgIHRoaXMudGl0bGUgPSBCYXJzYUFwaS5Db21tb24uVXRpbC5UcnlHZXRWYWx1ZSh0aGlzLmNvbnRleHQsICdTZXR0aW5nLkNsYXNzTmFtZXMuQ3VzdG9tVWkuUGFyYW1ldGVycy5UaXRsZScsICcnKTtcbiAgICAgICAgdGhpcy5zaW1wbGVTZWFyY2hQYW5lbCA9IEJhcnNhQXBpLkNvbW1vbi5VdGlsLlRyeUdldFZhbHVlKFxuICAgICAgICAgICAgdGhpcy5jb250ZXh0LFxuICAgICAgICAgICAgJ1NldHRpbmcuQ2xhc3NOYW1lcy5DdXN0b21VaS5QYXJhbWV0ZXJzLlNpbXBsZVNlYXJjaFBhbmVsJyxcbiAgICAgICAgICAgIGZhbHNlXG4gICAgICAgICk7XG4gICAgICAgIGNvbnN0IGhpZGVUaXRsZU1vZGUgPSBCYXJzYUFwaS5Db21tb24uVXRpbC5UcnlHZXRWYWx1ZShcbiAgICAgICAgICAgIHRoaXMuY29udGV4dCxcbiAgICAgICAgICAgICdTZXR0aW5nLkNsYXNzTmFtZXMuQ3VzdG9tVWkuUGFyYW1ldGVycy5IaWRlVGl0bGVNb2RlJyxcbiAgICAgICAgICAgICcnXG4gICAgICAgICk7XG5cbiAgICAgICAgaWYgKGhpZGVUaXRsZU1vZGUgPT09ICcyJyB8fCBoaWRlVGl0bGVNb2RlID09PSAnMycpIHtcbiAgICAgICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLmhpZGVVbHZUaXRsZVBhZ2UoKTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl91bHZNYWluU2VydmljZS5zZXRDb250ZXh0KHRoaXMuY29udGV4dCk7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnNldExheW91dEluZm8odGhpcy5sYXlvdXRJbmZvKTtcbiAgICAgICAgdGhpcy5fdWx2TWFpblNlcnZpY2UubG9hZFNlYXJjaFBhbmVsU2V0dGluZ3MoKTtcbiAgICAgICAgdGhpcy5tYXNrJCA9IHRoaXMuX3Vsdk1haW5TZXJ2aWNlLm1hc2skO1xuICAgICAgICB0aGlzLnZpd2VyTWFzayQgPSB0aGlzLl91bHZNYWluU2VydmljZS52aXdlck1hc2skO1xuICAgICAgICB0aGlzLmhpZGVVbHZQYWdlVGl0bGUkID0gdGhpcy5fdWx2TWFpblNlcnZpY2UuaGlkZVVsdlBhZ2VUaXRsZSQ7XG4gICAgICAgIHRoaXMuY2FuU2F2ZUdyaWRTZXR0aW5nJCA9IHRoaXMuX3Vsdk1haW5TZXJ2aWNlLmNhblNhdmVHcmlkU2V0dGluZyQ7XG4gICAgICAgIHRoaXMucGFnaW5nU2V0dGluZyQgPSB0aGlzLl91bHZNYWluU2VydmljZS5wYWdpbmdTZXR0aW5nJDtcbiAgICAgICAgdGhpcy5zZWFyY2hQYW5lbE1vQ2hhbmdlZCQgPSB0aGlzLl91bHZNYWluU2VydmljZS5zZWFyY2hQYW5lbE1vQ2hhbmdlZCQ7XG4gICAgICAgIHRoaXMuaGFzU2VhcmNoUGFuZWwgPSB0aGlzLl91bHZNYWluU2VydmljZS5zZWFyY2hQYW5lbFVpICE9PSBudWxsO1xuICAgICAgICB0aGlzLnNlYXJjaFBhbmVsVWkkID0gdGhpcy5fdWx2TWFpblNlcnZpY2Uuc2VhcmNoUGFuZWxVaSQ7XG4gICAgICAgIHRoaXMuc3RhbmRhbG9uZSQgPSB0aGlzLl9wb3J0YWxTZXJ2aWNlLnN0YW5kYWxvbmUkO1xuICAgICAgICB0aGlzLmxhbmRzY2FwZSQgPSB0aGlzLl9wb3J0YWxTZXJ2aWNlLmxhbmRzY2FwZSQ7XG4gICAgICAgIHRoaXMucmVwb3J0SWQkID0gdGhpcy5fdWx2TWFpblNlcnZpY2UucmVwb3J0SWQkO1xuICAgICAgICB0aGlzLl91bHZNYWluU2VydmljZS5yZWFkb25seSQuc3Vic2NyaWJlKChyZWFkb25seSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5yZWFkb25seSA9IHJlYWRvbmx5O1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5fdWx2TWFpblNlcnZpY2UuZW5hYmxlJC5zdWJzY3JpYmUoKGVuYWJsZSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5kaXNhYmxlID0gIWVuYWJsZTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnNlbGVjdGVkU2VhcmNoUGFuZWxTZXR0aW5ncyRcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSxcbiAgICAgICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgoYSwgYikgPT4gYT8uVGl0bGUgPT09IGI/LlRpdGxlKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoc2VsZWN0ZWRTZWFyY2hQYW5lbFNldHRpbmdzKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZFNlYXJjaFBhbmVsU2V0dGluZ3MgPSBzZWxlY3RlZFNlYXJjaFBhbmVsU2V0dGluZ3M7XG4gICAgICAgICAgICAgICAgdGhpcy5fdWx2TWFpblNlcnZpY2UuYXBwbHlTZWFyY2hQYW5lbFNldHRpbmdzKHNlbGVjdGVkU2VhcmNoUGFuZWxTZXR0aW5ncyk7XG4gICAgICAgICAgICAgICAgdGhpcy5fdWx2TWFpblNlcnZpY2UudG9nZ2xlSGlkZVNlYXJjaHBhbmVsKHNlbGVjdGVkU2VhcmNoUGFuZWxTZXR0aW5ncz8uSGlkZVNlYXJjaFBhbmVsKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB0aGlzLnZpZXdlciQgPSB0aGlzLl91bHZNYWluU2VydmljZS52aWV3ZXIkO1xuICAgICAgICB0aGlzLmFsbFNlYXJjaFBhbmVsU2V0dGluZ3MkID0gdGhpcy5fdWx2TWFpblNlcnZpY2UuYWxsU2VhcmNoUGFuZWxTZXR0aW5ncyQ7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRTZWFyY2hQYW5lbFNldHRpbmdzJCA9IHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnNlbGVjdGVkU2VhcmNoUGFuZWxTZXR0aW5ncyQ7XG4gICAgICAgIHRoaXMuc2VsZWN0ZWRTZWFyY2hQYW5lbFNldHRpbmdzSWQkID0gdGhpcy5fdWx2TWFpblNlcnZpY2Uuc2VsZWN0ZWRTZWFyY2hQYW5lbFNldHRpbmdzSWQkO1xuICAgICAgICB0aGlzLmRldmljZVNpemUkID0gdGhpcy5fcG9ydGFsU2VydmljZS5kZXZpY2VTaXplJC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSk7XG4gICAgfVxuICAgIG9uQ2xvc2UoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3JvdXRlci5uYXZpZ2F0ZShbJy4uLy4uJ10sIHsgcmVsYXRpdmVUbzogdGhpcy5fYWN0aXZhdGVkUm91dGUgfSk7XG4gICAgfVxuICAgIG9uU2VhcmNoUGFuZWxNb0NoYW5nZWQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3NldFNlYXJjaFBhbmVsTW9DaGFuZ2VkKHRydWUpO1xuICAgIH1cbiAgICBvblBhZ2VDaGFuZ2UoZTogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnBhZ2VDaGFuZ2VkKGUpO1xuICAgIH1cbiAgICBvbk9wZW5NYW5hZ2VGaWx0ZXJzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9kaWFsb2dTZXJ2aWNlLm9wZW4oTWFuYWdlRmlsdGVyc1JlcG9ydENvbXBvbmVudCwge1xuICAgICAgICAgICAgYmFja2Ryb3BDbGlja0Nsb3NlYWJsZTogdHJ1ZSxcbiAgICAgICAgICAgIGRyYWdnYWJsZTogZmFsc2UsXG4gICAgICAgICAgICBlc2NLZXlDbG9zZWFibGU6IHRydWUsXG4gICAgICAgICAgICBoYXNCYWNrZHJvcDogZmFsc2UsXG4gICAgICAgICAgICBmb2N1c1RyYXBwZWQ6IHRydWUsXG4gICAgICAgICAgICBtb2JpbGU6IHRoaXMuaXNNb2JpbGVcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgb25Db2xsYXBzZWRDaGFuZ2UoY29sbGFwc2VkOiBib29sZWFuKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnRvZ2dsZUhpZGVTZWFyY2hwYW5lbChjb2xsYXBzZWQpO1xuICAgICAgICB0aGlzLl91bHZNYWluU2VydmljZS5zZWFyY2hQYW5lbE1vQ2hhbmdlZCh0cnVlKTtcbiAgICB9XG4gICAgb25IaWRlU2VhcmNoUGFuZWxDbGljaygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdWx2TWFpblNlcnZpY2UudG9nZ2xlSGlkZVNlYXJjaHBhbmVsKCk7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnNlYXJjaFBhbmVsTW9DaGFuZ2VkKHRydWUpO1xuICAgIH1cblxuICAgIG9uRmlsdGVyU2F2ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fc2F2ZUZpbHRlcigpO1xuICAgIH1cblxuICAgIG9uRmlsdGVyU2F2ZUFzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9vcGVuU2F2ZUFzRmlsdGVyKCk7XG4gICAgfVxuXG4gICAgb25TaG93RmlsdGVyRmllbGRzU2V0dGluZygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fb3BlblNlYXJjaEZpZWxkc0hpZGRlblNldHRpbmdzKCk7XG4gICAgfVxuXG4gICAgb25NYW5hZ2VGaWx0ZXJzKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9vcGVuU2VhcmNoRmlsdGVyc01hbmFnZSgpO1xuICAgIH1cblxuICAgIG9uQ2xlYXJTZWFyY2goKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLmNsZWFyU2VhcmNoKCk7XG4gICAgfVxuXG4gICAgb25TZWFyY2goKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnNlYXJjaCgpO1xuICAgIH1cblxuICAgIG9uU2VsZWN0U2VhcmNoUGFuZWxTZXR0aW5ncyhzZWxlY3RlZFNlYXJjaFBhbmVsU2V0dGluZ3NJZDogc3RyaW5nKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLmNoYW5nZVNlbGVjdGVkU2VhcmNoUGFuZWwoc2VsZWN0ZWRTZWFyY2hQYW5lbFNldHRpbmdzSWQpO1xuICAgIH1cbiAgICBwcml2YXRlIF9yZW1vdmVCdWdJbkNocm9tZUNzc0FjdGl2ZSgpOiB2b2lkIHtcbiAgICAgICAgaWYgKEJhcnNhQXBpLkNvbW1vbi5VdGlsLlJlbW92ZUJ1Z0luQ2hyb21lQ3NzQWN0aXZlKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgbGV0IGxpc3Q6IHsgaTogYW55OyBuOiBhbnk7IGE6IGFueSB9W10gPSBbXTtcbiAgICAgICAgY29uc3QgaCA9IGRvY3VtZW50LmhlYWQuY2hpbGRyZW47XG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaC5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgbGlzdFtpXSA9IHtcbiAgICAgICAgICAgICAgICBpLFxuICAgICAgICAgICAgICAgIG46IGhbaV0sXG4gICAgICAgICAgICAgICAgYTogaFtpXS5pbm5lckhUTUxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgICAgbGlzdCA9IGxpc3QucmV2ZXJzZSgpO1xuICAgICAgICAvKiBlc2xpbnQtZGlzYWJsZSAqL1xuICAgICAgICBjb25zdCB0ID0gYC5mZC10YWJsZV9fY2VsbC0tYWN0aXZhYmxlOmFjdGl2ZSAqLC5mZC10YWJsZV9fcm93LS1hY3RpdmFibGUuaXMtYWN0aXZlICosLmZkLXRhYmxlX19yb3ctLWFjdGl2YWJsZTphY3RpdmUgKntjb2xvcjp2YXIoLS1zYXBMaXN0X0FjdGl2ZV9UZXh0Q29sb3IpIWltcG9ydGFudH1gO1xuICAgICAgICAvKiBlc2xpbnQtZW5hYmxlICovXG4gICAgICAgIGNvbnN0IGYgPSBsaXN0LmZpbHRlcigoYykgPT4gYy5hLmluZGV4T2YodCkgPj0gMCk7XG4gICAgICAgIGlmIChmLmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIEJhcnNhQXBpLkNvbW1vbi5VdGlsLlJlbW92ZUJ1Z0luQ2hyb21lQ3NzQWN0aXZlID0gdHJ1ZTtcbiAgICAgICAgICAgIGZbMF0ubi5pbm5lckhUTUwgPSBmWzBdLmEuc2xpY2UoMCwgMTAwNTgpICsgZlswXS5hLnNsaWNlKDEwMDU4ICsgdC5sZW5ndGgsIGZbMF0uYS5sZW5ndGgpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHByaXZhdGUgX3NldFNlYXJjaFBhbmVsTW9DaGFuZ2VkKGNoYW5nZTogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICB0aGlzLl91bHZNYWluU2VydmljZS5zZWFyY2hQYW5lbE1vQ2hhbmdlZChjaGFuZ2UpO1xuICAgIH1cblxuICAgIHByaXZhdGUgX29wZW5TZWFyY2hGaWVsZHNIaWRkZW5TZXR0aW5ncygpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgZmllbGRzU2V0dGluZyA9IHRoaXMuX3Vsdk1haW5TZXJ2aWNlLmdldFNlYXJjaFBhbmVsRmllbGRzU2V0dGluZygpO1xuICAgICAgICBjb25zdCBjb25maWcgPSB7XG4gICAgICAgICAgICAuLi50aGlzLmRlZmF1bHREaWFsb2dDb25maWcsXG4gICAgICAgICAgICBtaW5XaWR0aDogJzI1cmVtJyxcbiAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBmaWVsZHM6IFsuLi5maWVsZHNTZXR0aW5nXVxuICAgICAgICAgICAgfVxuICAgICAgICB9O1xuICAgICAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLl9kaWFsb2dTZXJ2aWNlLm9wZW4oUmVwb3J0U2VhcmNoRmllbGRzSGlkZGVuU2V0dGluZ3NDb21wb25lbnQsIGNvbmZpZyk7XG4gICAgICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChzZXR0aW5nOiBDb2x1bW5JbmZvVHlwZVtdKSA9PiB7XG4gICAgICAgICAgICBpZiAoc2V0dGluZykge1xuICAgICAgICAgICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnNldEFuZEFwcGx5U2VhcmNoUGFuZWxTZXR0aW5nRmllbGRzU2V0dGluZyhzZXR0aW5nKTtcbiAgICAgICAgICAgICAgICB0aGlzLl91bHZNYWluU2VydmljZS5zZWFyY2hQYW5lbE1vQ2hhbmdlZCh0cnVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHByaXZhdGUgX29wZW5TYXZlQXNGaWx0ZXIoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHNlYXJjaE1vID0gdGhpcy5fdWx2TWFpblNlcnZpY2UuZ2V0U2VhcmNoUGFuZWxNbygpO1xuICAgICAgICBjb25zdCBzZWxlY3RlZFNlYXJjaFBhbmVsU2V0dGluZ3MgPSB0aGlzLnNlbGVjdGVkU2VhcmNoUGFuZWxTZXR0aW5ncztcbiAgICAgICAgY29uc3QgZmllbGRzU2V0dGluZyA9IHNlbGVjdGVkU2VhcmNoUGFuZWxTZXR0aW5ncz8uRmllbGRzU2V0dGluZztcbiAgICAgICAgY29uc3QgY29uZmlnID0ge1xuICAgICAgICAgICAgLi4udGhpcy5kZWZhdWx0RGlhbG9nQ29uZmlnLFxuICAgICAgICAgICAgbWluV2lkdGg6ICcyNXJlbScsXG4gICAgICAgICAgICByZXNpemFibGU6IGZhbHNlLFxuICAgICAgICAgICAgZGF0YToge1xuICAgICAgICAgICAgICAgIHNlYXJjaE1vLFxuICAgICAgICAgICAgICAgIGZpZWxkc1NldHRpbmcsXG4gICAgICAgICAgICAgICAgcmVwb3J0SWQ6IHRoaXMuX3Vsdk1haW5TZXJ2aWNlLnJlcG9ydElkXG4gICAgICAgICAgICB9XG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMuX2RpYWxvZ1NlcnZpY2Uub3BlbihSZXBvcnRTZWFyY2hQYW5lbFNhdmVDb21wb25lbnQsIGNvbmZpZyk7XG4gICAgICAgIGRpYWxvZ1JlZi5hZnRlckNsb3NlZC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSkuc3Vic2NyaWJlKChzZWFyY2hQYW5lbFNldHRpbmc6IFNlYXJjaFBhbmVsU2V0dGluZ3MpID0+IHtcbiAgICAgICAgICAgIGlmIChzZWFyY2hQYW5lbFNldHRpbmcpIHtcbiAgICAgICAgICAgICAgICBzZWFyY2hQYW5lbFNldHRpbmcuSGlkZVNlYXJjaFBhbmVsID0gdGhpcy5fdWx2TWFpblNlcnZpY2UuaGlkZVNlYXJjaHBhbmVsO1xuICAgICAgICAgICAgICAgIHRoaXMuX3Vsdk1haW5TZXJ2aWNlLmFkZFNlYXJjaFBhbmVsU2V0dGluZ3Moc2VhcmNoUGFuZWxTZXR0aW5nKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHByaXZhdGUgX3NhdmVGaWx0ZXIoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkU2VhcmNoUGFuZWxTZXR0aW5ncyA9IHRoaXMuc2VsZWN0ZWRTZWFyY2hQYW5lbFNldHRpbmdzO1xuICAgICAgICBpZiAoc2VsZWN0ZWRTZWFyY2hQYW5lbFNldHRpbmdzKSB7XG4gICAgICAgICAgICBzZWxlY3RlZFNlYXJjaFBhbmVsU2V0dGluZ3MuSGlkZVNlYXJjaFBhbmVsID0gdGhpcy5fdWx2TWFpblNlcnZpY2UuaGlkZVNlYXJjaHBhbmVsO1xuICAgICAgICAgICAgdGhpcy5fdWx2TWFpblNlcnZpY2Uuc2F2ZVNlYXJjaFBhbmVsU2V0dGluZyhzZWxlY3RlZFNlYXJjaFBhbmVsU2V0dGluZ3MpO1xuICAgICAgICB9XG4gICAgfVxuICAgIHByaXZhdGUgX29wZW5TZWFyY2hGaWx0ZXJzTWFuYWdlKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBhbGxTZWFyY2hQYW5lbFNldHRpbmdzID0gdGhpcy5fdWx2TWFpblNlcnZpY2UuYWxsU2VhcmNoUGFuZWxTZXR0aW5ncztcbiAgICAgICAgY29uc3QgcmVwb3J0SWQgPSB0aGlzLl91bHZNYWluU2VydmljZS5yZXBvcnRJZDtcbiAgICAgICAgY29uc3QgY29uZmlnID0ge1xuICAgICAgICAgICAgLi4udGhpcy5kZWZhdWx0RGlhbG9nQ29uZmlnLFxuICAgICAgICAgICAgcmVzcG9uc2l2ZVBhZGRpbmc6IGZhbHNlLFxuICAgICAgICAgICAgdmVydGljYWxQYWRkaW5nOiBmYWxzZSxcbiAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICBhbGxTZWFyY2hQYW5lbFNldHRpbmdzOiBhbGxTZWFyY2hQYW5lbFNldHRpbmdzLm1hcCgoYykgPT4gKHtcbiAgICAgICAgICAgICAgICAgICAgVGl0bGU6IGMuVGl0bGUsXG4gICAgICAgICAgICAgICAgICAgIElzRGVmYXVsdDogYy5Jc0RlZmF1bHQsXG4gICAgICAgICAgICAgICAgICAgIElzUHVibGljOiBjLklzUHVibGljLFxuICAgICAgICAgICAgICAgICAgICBJc1ByaW1hcnk6ICEhYy5Jc1ByaW1hcnksXG4gICAgICAgICAgICAgICAgICAgIEFwcGx5QXV0b21hdGljYWxseTogYy5BcHBseUF1dG9tYXRpY2FsbHksXG4gICAgICAgICAgICAgICAgICAgIFJlcG9ydElkOiByZXBvcnRJZCxcbiAgICAgICAgICAgICAgICAgICAgSWQ6IGMuSWRcbiAgICAgICAgICAgICAgICB9KSlcbiAgICAgICAgICAgIH1cbiAgICAgICAgfTtcbiAgICAgICAgY29uc3QgZGlhbG9nUmVmID0gdGhpcy5fZGlhbG9nU2VydmljZS5vcGVuKFJlcG9ydFNlYXJjaEZpZWxkc01hbmFnZUNvbXBvbmVudCwgY29uZmlnKTtcbiAgICAgICAgZGlhbG9nUmVmLmFmdGVyQ2xvc2VkLnBpcGUodGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpKS5zdWJzY3JpYmUoKHNldHRpbmc6IFNlYXJjaFBhbmVsU2V0dGluZ3NbXSkgPT4ge1xuICAgICAgICAgICAgaWYgKHNldHRpbmcpIHtcbiAgICAgICAgICAgICAgICBzZXR0aW5nXG4gICAgICAgICAgICAgICAgICAgIC5maWx0ZXIoKGMpID0+ICFjLklzUHJpbWFyeSlcbiAgICAgICAgICAgICAgICAgICAgLmZvckVhY2goKG5ld1NldHRpbmcpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNwcyA9IGFsbFNlYXJjaFBhbmVsU2V0dGluZ3MuZmluZCgoYykgPT4gYy5JZCA9PT0gbmV3U2V0dGluZy5JZCk7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoc3BzKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgQmFyc2FBcGkuQ29tbW9uLk1lcmdlci5NZXJnZShzcHMsIG5ld1NldHRpbmcpO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB0aGlzLl91bHZNYWluU2VydmljZS51cGRhdGVTZWFyY2hQYW5lbFNldHRpbmdzKGFsbFNlYXJjaFBhbmVsU2V0dGluZ3MpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8YnN1LWJhcnNhLXVsdi1tYWluXHJcbiAgICBbc3R5bGUubWFyZ2luXT1cImlzUmVwb3J0UGFnZSA/IG51bGwgOiAndmFyKC0tZmRJbnB1dF9GaWVsZF9NYXJnaW4sIC4yNXJlbSAwKSdcIlxyXG4gICAgW3N0eWxlLnN0eWxlLndpZHRoXT1cIiFpc01vYmlsZSA/IG51bGwgOiAnMTAwJSdcIlxyXG4gICAgW2xheW91dEluZm9dPVwibGF5b3V0SW5mb1wiXHJcbiAgICBbYXR0ci5pc1JlcG9ydFBhZ2VdPVwiaXNSZXBvcnRQYWdlXCJcclxuICAgIFtzaW1wbGVTZWFyY2hQYW5lbF09XCJzaW1wbGVTZWFyY2hQYW5lbFwiXHJcbiAgICBbdmlld2VyQ29udHJvbF09XCJ2aWV3ZXIkIHwgYXN5bmNcIlxyXG4gICAgW2xvYWRpbmddPVwiKG1hc2skIHwgYXN5bmMpID09PSB0cnVlXCJcclxuICAgIFt2aWV3ZXJMb2FkaW5nXT1cIih2aXdlck1hc2skIHwgYXN5bmMpID09PSB0cnVlXCJcclxuICAgIFtzdGFuZGFsb25lXT1cIihzdGFuZGFsb25lJCB8IGFzeW5jKSA9PT0gdHJ1ZVwiXHJcbiAgICBbbGFuZHNjYXBlXT1cIihsYW5kc2NhcGUkIHwgYXN5bmMpID09PSB0cnVlXCJcclxuICAgIFtoaWRlVWx2UGFnZVRpdGxlXT1cIihoaWRlVWx2UGFnZVRpdGxlJCB8IGFzeW5jKSA9PT0gdHJ1ZVwiXHJcbiAgICBbaXNSZXBvcnRQYWdlXT1cImlzUmVwb3J0UGFnZVwiXHJcbiAgICBbZGV2aWNlU2l6ZV09XCIoZGV2aWNlU2l6ZSQgfCBhc3luYykhIVwiXHJcbiAgICBbdGl0bGVdPVwidGl0bGVcIlxyXG4gICAgW3NlYXJjaFBhbmVsVWldPVwiKHNlYXJjaFBhbmVsVWkkIHwgYXN5bmMpISFcIlxyXG4gICAgW2JyZWFkQ3J1bWJzXT1cIihicmVhZENydW1icyQgfCBhc3luYykhIVwiXHJcbiAgICBbYWxsU2VhcmNoUGFuZWxTZXR0aW5nc109XCIoYWxsU2VhcmNoUGFuZWxTZXR0aW5ncyQgfCBhc3luYykhIVwiXHJcbiAgICBbaXNBbm9ueW1vdXNdPVwiKGlzQW5vbnltb3VzJCB8IGFzeW5jKSEhXCJcclxuICAgIFtjYW5TYXZlR3JpZFNldHRpbmddPVwiKGNhblNhdmVHcmlkU2V0dGluZyQgfCBhc3luYykgPT09IHRydWVcIlxyXG4gICAgW3J0bF09XCIocnRsJCB8IGFzeW5jKSEhXCJcclxuICAgIFtzZWxlY3RlZFNlYXJjaFBhbmVsU2V0dGluZ3NdPVwiKHNlbGVjdGVkU2VhcmNoUGFuZWxTZXR0aW5ncyQgfCBhc3luYykhIVwiXHJcbiAgICBbc2VhcmNoUGFuZWxNb0NoYW5nZWRdPVwiKHNlYXJjaFBhbmVsTW9DaGFuZ2VkJCB8IGFzeW5jKSEhXCJcclxuICAgIFtzZWxlY3RlZFNlYXJjaFBhbmVsU2V0dGluZ3NJZF09XCIoc2VsZWN0ZWRTZWFyY2hQYW5lbFNldHRpbmdzSWQkIHwgYXN5bmMpISFcIlxyXG4gICAgW2hpZGVTZWFyY2hQYW5lbF09XCIoaGlkZVNlYXJjaFBhbmVsJCB8IGFzeW5jKSEhXCJcclxuICAgIFtwYWdpbmdTZXR0aW5nXT1cIihwYWdpbmdTZXR0aW5nJCB8IGFzeW5jKSEhXCJcclxuICAgIFtjb250ZXh0XT1cImNvbnRleHRcIlxyXG4gICAgW2NvbnRlbnREZW5zaXR5XT1cImNvbnRlbnREZW5zaXR5JCB8IGFzeW5jXCJcclxuICAgIChjbG9zZUV2ZW50KT1cIm9uQ2xvc2UoKVwiXHJcbiAgICAoc2VhcmNoUGFuZWxNb0NoYW5nZSk9XCJvblNlYXJjaFBhbmVsTW9DaGFuZ2VkKClcIlxyXG4gICAgKG9wZW5NYW5hZ2VGaWx0ZXJzKT1cIm9uT3Blbk1hbmFnZUZpbHRlcnMoKVwiXHJcbiAgICAoY29sbGFwc2VkQ2hhbmdlKT1cIm9uQ29sbGFwc2VkQ2hhbmdlKCRldmVudClcIlxyXG4gICAgKGhpZGVTZWFyY2hQYW5lbENsaWNrKT1cIm9uSGlkZVNlYXJjaFBhbmVsQ2xpY2soKVwiXHJcbiAgICAoZmlsdGVyU2F2ZSk9XCJvbkZpbHRlclNhdmUoKVwiXHJcbiAgICAoZmlsdGVyU2F2ZUFzKT1cIm9uRmlsdGVyU2F2ZUFzKClcIlxyXG4gICAgKHNob3dGaWx0ZXJGaWVsZHNTZXR0aW5nKT1cIm9uU2hvd0ZpbHRlckZpZWxkc1NldHRpbmcoKVwiXHJcbiAgICAobWFuYWdlRmlsdGVycyk9XCJvbk1hbmFnZUZpbHRlcnMoKVwiXHJcbiAgICAoY2xlYXJTZWFyY2gpPVwib25DbGVhclNlYXJjaCgpXCJcclxuICAgIChzZWFyY2gpPVwib25TZWFyY2goKVwiXHJcbiAgICAocGFnZUNoYW5nZSk9XCJvblBhZ2VDaGFuZ2UoJGV2ZW50KVwiXHJcbiAgICAoc2VsZWN0U2VhcmNoUGFuZWxTZXR0aW5ncyk9XCJvblNlbGVjdFNlYXJjaFBhbmVsU2V0dGluZ3MoJGV2ZW50KVwiXHJcbj5cclxuPC9ic3UtYmFyc2EtdWx2LW1haW4+XHJcbiJdfQ==
@@ -7,10 +7,10 @@ export class UiWorkflowPanelUiComponent extends BaseComponent {
7
7
  onToolClick(btn) {
8
8
  btn.handler(btn, this.context);
9
9
  }
10
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: UiWorkflowPanelUiComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
11
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: UiWorkflowPanelUiComponent, selector: "bsu-ui-workflow-panel-ui", inputs: { context: "context", infoHtml: "infoHtml", showInfoBar: "showInfoBar", buttonList: "buttonList" }, usesInheritance: true, ngImport: i0, template: "<fd-bar-element>\n @for (btn of buttonList.slice().reverse(); track btn; let i = $index) {\n <button\n fd-button\n [fdType]=\"i === 0 ? 'emphasized' : 'standard'\"\n [label]=\"btn.text\"\n [glyph]=\"btn.Data?.JsonExtraProp?.Icon\"\n (click)=\"onToolClick(btn)\"\n ></button>\n }\n</fd-bar-element>\n", styles: ["button{margin:0 5px;min-width:60px}fd-bar-element:last-child{margin-left:0}\n"], dependencies: [{ kind: "directive", type: i1.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "component", type: i2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiWorkflowPanelUiComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
11
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: UiWorkflowPanelUiComponent, selector: "bsu-ui-workflow-panel-ui", inputs: { context: "context", infoHtml: "infoHtml", showInfoBar: "showInfoBar", buttonList: "buttonList" }, usesInheritance: true, ngImport: i0, template: "<fd-bar-element>\n @for (btn of buttonList.slice().reverse(); track btn; let i = $index) {\n <button\n fd-button\n [fdType]=\"i === 0 ? 'emphasized' : 'standard'\"\n [label]=\"btn.text\"\n [glyph]=\"btn.Data?.JsonExtraProp?.Icon\"\n (click)=\"onToolClick(btn)\"\n ></button>\n }\n</fd-bar-element>\n", styles: ["button{margin:0 5px;min-width:60px}fd-bar-element:last-child{margin-left:0}\n"], dependencies: [{ kind: "directive", type: i1.BarElementDirective, selector: "fd-bar-element", inputs: ["fullWidth"] }, { kind: "component", type: i2.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
12
12
  }
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: UiWorkflowPanelUiComponent, decorators: [{
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UiWorkflowPanelUiComponent, decorators: [{
14
14
  type: Component,
15
15
  args: [{ selector: 'bsu-ui-workflow-panel-ui', changeDetection: ChangeDetectionStrategy.OnPush, template: "<fd-bar-element>\n @for (btn of buttonList.slice().reverse(); track btn; let i = $index) {\n <button\n fd-button\n [fdType]=\"i === 0 ? 'emphasized' : 'standard'\"\n [label]=\"btn.text\"\n [glyph]=\"btn.Data?.JsonExtraProp?.Icon\"\n (click)=\"onToolClick(btn)\"\n ></button>\n }\n</fd-bar-element>\n", styles: ["button{margin:0 5px;min-width:60px}fd-bar-element:last-child{margin-left:0}\n"] }]
16
16
  }], propDecorators: { context: [{
@@ -22,4 +22,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
22
22
  }], buttonList: [{
23
23
  type: Input
24
24
  }] } });
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktd29ya2Zsb3ctcGFuZWwtdWkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktd29ya2Zsb3ctcGFuZWwtdWkvdWktd29ya2Zsb3ctcGFuZWwtdWkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktd29ya2Zsb3ctcGFuZWwtdWkvdWktd29ya2Zsb3ctcGFuZWwtdWkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7O0FBT3JELE1BQU0sT0FBTywwQkFBMkIsU0FBUSxhQUFhO0lBV3pELFdBQVcsQ0FBQyxHQUFHO1FBQ1gsR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ25DLENBQUM7OEdBYlEsMEJBQTBCO2tHQUExQiwwQkFBMEIsbU1DVHZDLDhVQVdBOzsyRkRGYSwwQkFBMEI7a0JBTnRDLFNBQVM7K0JBQ0ksMEJBQTBCLG1CQUduQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2JzdS11aS13b3JrZmxvdy1wYW5lbC11aScsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWktd29ya2Zsb3ctcGFuZWwtdWkuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vdWktd29ya2Zsb3ctcGFuZWwtdWkuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVaVdvcmtmbG93UGFuZWxVaUNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQge1xyXG4gICAgQElucHV0KCkgY29udGV4dDogYW55O1xyXG4gICAgQElucHV0KCkgaW5mb0h0bWw6IHN0cmluZztcclxuICAgIEBJbnB1dCgpIHNob3dJbmZvQmFyOiBib29sZWFuO1xyXG4gICAgQElucHV0KCkgYnV0dG9uTGlzdDoge1xyXG4gICAgICAgIGhhbmRsZXI6ICgpID0+IHZvaWQ7XHJcbiAgICAgICAgdGV4dDogc3RyaW5nO1xyXG4gICAgICAgIERhdGE6IGFueTtcclxuICAgICAgICBuZXdJY29uOiBzdHJpbmc7XHJcbiAgICB9W107XHJcblxyXG4gICAgb25Ub29sQ2xpY2soYnRuKTogdm9pZCB7XHJcbiAgICAgICAgYnRuLmhhbmRsZXIoYnRuLCB0aGlzLmNvbnRleHQpO1xyXG4gICAgfVxyXG59XHJcbiIsIjxmZC1iYXItZWxlbWVudD5cbiAgQGZvciAoYnRuIG9mIGJ1dHRvbkxpc3Quc2xpY2UoKS5yZXZlcnNlKCk7IHRyYWNrIGJ0bjsgbGV0IGkgPSAkaW5kZXgpIHtcbiAgICA8YnV0dG9uXG4gICAgICBmZC1idXR0b25cbiAgICAgIFtmZFR5cGVdPVwiaSA9PT0gMCA/ICdlbXBoYXNpemVkJyA6ICdzdGFuZGFyZCdcIlxuICAgICAgW2xhYmVsXT1cImJ0bi50ZXh0XCJcbiAgICAgIFtnbHlwaF09XCJidG4uRGF0YT8uSnNvbkV4dHJhUHJvcD8uSWNvblwiXG4gICAgICAoY2xpY2spPVwib25Ub29sQ2xpY2soYnRuKVwiXG4gICAgPjwvYnV0dG9uPlxuICB9XG48L2ZkLWJhci1lbGVtZW50PlxuIl19
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWktd29ya2Zsb3ctcGFuZWwtdWkuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktd29ya2Zsb3ctcGFuZWwtdWkvdWktd29ya2Zsb3ctcGFuZWwtdWkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWktd29ya2Zsb3ctcGFuZWwtdWkvdWktd29ya2Zsb3ctcGFuZWwtdWkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFMUUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7O0FBT3JELE1BQU0sT0FBTywwQkFBMkIsU0FBUSxhQUFhO0lBV3pELFdBQVcsQ0FBQyxHQUFHO1FBQ1gsR0FBRyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ25DLENBQUM7K0dBYlEsMEJBQTBCO21HQUExQiwwQkFBMEIsbU1DVHZDLDhVQVdBOzs0RkRGYSwwQkFBMEI7a0JBTnRDLFNBQVM7K0JBQ0ksMEJBQTBCLG1CQUduQix1QkFBdUIsQ0FBQyxNQUFNOzhCQUd0QyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxXQUFXO3NCQUFuQixLQUFLO2dCQUNHLFVBQVU7c0JBQWxCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2JzdS11aS13b3JrZmxvdy1wYW5lbC11aScsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vdWktd29ya2Zsb3ctcGFuZWwtdWkuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vdWktd29ya2Zsb3ctcGFuZWwtdWkuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVaVdvcmtmbG93UGFuZWxVaUNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQge1xyXG4gICAgQElucHV0KCkgY29udGV4dDogYW55O1xyXG4gICAgQElucHV0KCkgaW5mb0h0bWw6IHN0cmluZztcclxuICAgIEBJbnB1dCgpIHNob3dJbmZvQmFyOiBib29sZWFuO1xyXG4gICAgQElucHV0KCkgYnV0dG9uTGlzdDoge1xyXG4gICAgICAgIGhhbmRsZXI6ICgpID0+IHZvaWQ7XHJcbiAgICAgICAgdGV4dDogc3RyaW5nO1xyXG4gICAgICAgIERhdGE6IGFueTtcclxuICAgICAgICBuZXdJY29uOiBzdHJpbmc7XHJcbiAgICB9W107XHJcblxyXG4gICAgb25Ub29sQ2xpY2soYnRuKTogdm9pZCB7XHJcbiAgICAgICAgYnRuLmhhbmRsZXIoYnRuLCB0aGlzLmNvbnRleHQpO1xyXG4gICAgfVxyXG59XHJcbiIsIjxmZC1iYXItZWxlbWVudD5cbiAgQGZvciAoYnRuIG9mIGJ1dHRvbkxpc3Quc2xpY2UoKS5yZXZlcnNlKCk7IHRyYWNrIGJ0bjsgbGV0IGkgPSAkaW5kZXgpIHtcbiAgICA8YnV0dG9uXG4gICAgICBmZC1idXR0b25cbiAgICAgIFtmZFR5cGVdPVwiaSA9PT0gMCA/ICdlbXBoYXNpemVkJyA6ICdzdGFuZGFyZCdcIlxuICAgICAgW2xhYmVsXT1cImJ0bi50ZXh0XCJcbiAgICAgIFtnbHlwaF09XCJidG4uRGF0YT8uSnNvbkV4dHJhUHJvcD8uSWNvblwiXG4gICAgICAoY2xpY2spPVwib25Ub29sQ2xpY2soYnRuKVwiXG4gICAgPjwvYnV0dG9uPlxuICB9XG48L2ZkLWJhci1lbGVtZW50PlxuIl19
@@ -80,14 +80,14 @@ export class UlLoadingMaskUiComponent extends BaseComponent {
80
80
  }
81
81
  return containerRef;
82
82
  }
83
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: UlLoadingMaskUiComponent, deps: [{ token: i1.DialogService }], target: i0.ɵɵFactoryTarget.Component }); }
84
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: UlLoadingMaskUiComponent, selector: "bsu-ul-loading-mask-ui", viewQueries: [{ propertyName: "waitRef", first: true, predicate: ["waitRef"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<!-- <ng-template let-dialog let-dialogConfig=\"dialogConfig\" #waitRef>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-body>\n <bsu-mask></bsu-mask>\n </fd-dialog-body>\n </fd-dialog>\n</ng-template> -->\n<ng-template [fdDialogTemplate] let-dialog let-dialogConfig=\"dialogConfig\" #waitRef>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" class=\"dialog-mask\">\n <fd-dialog-body>\n <bsu-mask></bsu-mask>\n </fd-dialog-body>\n </fd-dialog>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "component", type: i2.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i2.DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "directive", type: i2.DialogTemplateDirective, selector: "[fdDialogTemplate]", inputs: ["fdDialogTemplateConfig"] }, { kind: "component", type: i3.MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
83
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UlLoadingMaskUiComponent, deps: [{ token: i1.DialogService }], target: i0.ɵɵFactoryTarget.Component }); }
84
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UlLoadingMaskUiComponent, selector: "bsu-ul-loading-mask-ui", viewQueries: [{ propertyName: "waitRef", first: true, predicate: ["waitRef"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<!-- <ng-template let-dialog let-dialogConfig=\"dialogConfig\" #waitRef>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-body>\n <bsu-mask></bsu-mask>\n </fd-dialog-body>\n </fd-dialog>\n</ng-template> -->\n<ng-template [fdDialogTemplate] let-dialog let-dialogConfig=\"dialogConfig\" #waitRef>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" class=\"dialog-mask\">\n <fd-dialog-body>\n <bsu-mask></bsu-mask>\n </fd-dialog-body>\n </fd-dialog>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "component", type: i2.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i2.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "directive", type: i2.DialogTemplateDirective, selector: "[fdDialogTemplate]", inputs: ["fdDialogTemplateConfig"] }, { kind: "component", type: i3.MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
85
85
  }
86
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: UlLoadingMaskUiComponent, decorators: [{
86
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UlLoadingMaskUiComponent, decorators: [{
87
87
  type: Component,
88
88
  args: [{ selector: 'bsu-ul-loading-mask-ui', changeDetection: ChangeDetectionStrategy.OnPush, template: "<!-- <ng-template let-dialog let-dialogConfig=\"dialogConfig\" #waitRef>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-body>\n <bsu-mask></bsu-mask>\n </fd-dialog-body>\n </fd-dialog>\n</ng-template> -->\n<ng-template [fdDialogTemplate] let-dialog let-dialogConfig=\"dialogConfig\" #waitRef>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\" class=\"dialog-mask\">\n <fd-dialog-body>\n <bsu-mask></bsu-mask>\n </fd-dialog-body>\n </fd-dialog>\n</ng-template>\n" }]
89
89
  }], ctorParameters: () => [{ type: i1.DialogService }], propDecorators: { waitRef: [{
90
90
  type: ViewChild,
91
91
  args: ['waitRef']
92
92
  }] } });
93
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWwtbG9hZGluZy1tYXNrLXVpLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL3VsLWxvYWRpbmctbWFzay11aS91bC1sb2FkaW5nLW1hc2stdWkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWwtbG9hZGluZy1tYXNrLXVpL3VsLWxvYWRpbmctbWFzay11aS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFlLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFCLE9BQU8sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWhFLE9BQU8sRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7O0FBTy9ELE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxhQUFhO0lBR3ZELFlBQW9CLGNBQTZCO1FBQzdDLEtBQUssRUFBRSxDQUFDO1FBRFEsbUJBQWMsR0FBZCxjQUFjLENBQWU7UUFEakQsbUJBQWMsR0FBcUIsRUFBRSxDQUFDO1FBR2xDLFFBQVEsQ0FBQyxFQUFFLENBQUMsbUJBQW1CLENBQUMsRUFBRSxDQUFDO1lBQy9CLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDMUIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztZQUM5QixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ2xDLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVSxD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QUFPLENBQUM7UUFDM0IsSUFBSSxZQUFZLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDckIsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3pCLENBQUM7YUFBTSxJQUFJLFlBQVksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNoQyxZQUFZLEdBQUcsWUFBWSxDQUFDLFNBQVMsQ0FBQztRQUMxQyxDQUFDO1FBQ0QsT0FBTyxZQUFZLENBQUM7SUFDeEIsQ0FBQzs4R0E1RVEsd0JBQXdCO2tHQUF4Qix3QkFBd0IseUxDWHJDLGtrQkFjQTs7MkZESGEsd0JBQXdCO2tCQU5wQyxTQUFTOytCQUNJLHdCQUF3QixtQkFHakIsdUJBQXVCLENBQUMsTUFBTTtrRkFHekIsT0FBTztzQkFBNUIsU0FBUzt1QkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGVsYXksIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IERpYWxvZ1JlZiwgRGlhbG9nU2VydmljZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XG5pbXBvcnQgeyBCYXJzYUFwaSwgQmFzZUNvbXBvbmVudCB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYnN1LXVsLWxvYWRpbmctbWFzay11aScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3VsLWxvYWRpbmctbWFzay11aS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdWwtbG9hZGluZy1tYXNrLXVpLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgVWxMb2FkaW5nTWFza1VpQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG4gICAgQFZpZXdDaGlsZCgnd2FpdFJlZicpIHdhaXRSZWY6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgX2RpYWxvZ1JlZkxpc3Q6IERpYWxvZ1JlZjxhbnk+W10gPSBbXTtcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9kaWFsb2dTZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIEJhcnNhQXBpLlVsLkN1c3RvbUxvYWRpbmdNYXNrVWkub24oe1xuICAgICAgICAgICAgTWFzazogdGhpcy5tYXNrLmJpbmQodGhpcyksXG4gICAgICAgICAgICBVbm1hc2s6IHRoaXMudW5tYXNrLmJpbmQodGhpcyksXG4gICAgICAgICAgICBNYXNrQm9keTogdGhpcy5tYXNrQm9keS5iaW5kKHRoaXMpLFxuICAgICAgICAgICAgVW5tYXNrQm9keTogdGhpcy51bm1hc2tCb2R5LmJpbmQodGhpcyksXG4gICAgICAgICAgICBVbm1hc2tBbGw6IHRoaXMudW5tYXNrQWxsLmJpbmQodGhpcylcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIG1hc2soZWxlbWVudCwgb3B0aW9uKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNvbnRhaW5lclJlZiA9IHRoaXMucmVzb2x2ZUVsZW1lbnQoZWxlbWVudCk7XG4gICAgICAgIHRoaXMuX21hc2soY29udGFpbmVyUmVmLCBvcHRpb24pO1xuICAgIH1cbiAgICB1bm1hc2soZWxlbWVudCk6IHZvaWQge1xuICAgICAgICBjb25zdCBjb250YWluZXJSZWYgPSB0aGlzLnJlc29sdmVFbGVtZW50KGVsZW1lbnQpO1xuICAgICAgICB0aGlzLl91bm1hc2soY29udGFpbmVyUmVmKTtcbiAgICB9XG4gICAgdW5tYXNrQWxsKCk6IHZvaWQge1xuICAgICAgICAvLyB0aGlzLl9kaWFsb2dTZXJ2aWNlLmRpc21pc3NBbGwoKTtcbiAgICAgICAgdGhpcy5fZGlhbG9nUmVmTGlzdC5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgICAgICBpdGVtLmRpc21pc3MoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIG1hc2tCb2R5KGR1cmF0aW9uKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGJvZHkgPSB0aGlzLmdldEJvZHkoKTtcbiAgICAgICAgdGhpcy5fdW5tYXNrKGJvZHkpO1xuICAgICAgICB0aGlzLl9tYXNrKGJvZHksIHsgZGVsYXk6IGR1cmF0aW9uIH0pO1xuICAgIH1cbiAgICB1bm1hc2tCb2R5KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBib2R5ID0gdGhpcy5nZXRCb2R5KCk7XG4gICAgICAgIHRoaXMuX3VubWFzayhib2R5KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF91bm1hc2soY29udGFpbmVyUmVmOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgaWYgKGNvbnRhaW5lclJlZiAmJiBjb250YWluZXJSZWYubWFza0RpYWxvZz8uY2xvc2UpIHtcbiAgICAgICAgICAgIGNvbnRhaW5lclJlZi5tYXNrRGlhbG9nLmNsb3NlKCk7XG4gICAgICAgICAgICBjb250YWluZXJSZWYubWFza0RpYWxvZyA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEJvZHkoKTogYW55IHtcbiAgICAgICAgcmV0dXJuIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2JvZHknKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9tYXNrKGNvbnRhaW5lclJlZjogYW55LCBvcHRpb24/OiBhbnkpOiB2b2lkIHtcbiAgICAgICAgaWYgKGNvbnRhaW5lclJlZi5tYXNrRGlhbG9nKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbWFza0RlbGF5ID0gNTAwMDtcbiAgICAgICAgY29uc3QgeCA9IHRoaXMuX2RpYWxvZ1NlcnZpY2Uub3Blbih0aGlzLndhaXRSZWYsIHtcbiAgICAgICAgICAgIGNvbnRhaW5lcjogY29udGFpbmVyUmVmLFxuICAgICAgICAgICAgbW9iaWxlOiB0cnVlLFxuICAgICAgICAgICAgZGlhbG9nUGFuZWxDbGFzczogJ21hc2tsb2FkaW5nLWNvbnRhaW5lcidcbiAgICAgICAgfSk7XG4gICAgICAgIHguYWZ0ZXJMb2FkZWQuc3Vic2NyaWJlKCgpID0+ICgoY29udGFpbmVyUmVmLm1hc2tEaWFsb2cgPSB4KSwgdGhpcy5fZGlhbG9nUmVmTGlzdC5wdXNoKHgpKSk7XG4gICAgICAgIG9mKHRydWUpXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCksIGRlbGF5KG1hc2tEZWxheSksIGRlYm91bmNlVGltZSgyMDApKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGNvbnRhaW5lclJlZi5tYXNrRGlhbG9nPy5jbG9zZSkge1xuICAgICAgICAgICAgICAgICAgICBjb250YWluZXJSZWYubWFza0RpYWxvZy5jbG9zZSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVzb2x2ZUVsZW1lbnQoZWxlbWVudDogYW55KTogYW55IHtcbiAgICAgICAgbGV0IGNvbnRhaW5lclJlZiA9IGVsZW1lbnQ7XG4gICAgICAgIGlmIChjb250YWluZXJSZWYuZ2V0RWwpIHtcbiAgICAgICAgICAgIGNvbnRhaW5lclJlZi5nZXRFbCgpO1xuICAgICAgICB9IGVsc2UgaWYgKGNvbnRhaW5lclJlZi5jb250cm9sVWkpIHtcbiAgICAgICAgICAgIGNvbnRhaW5lclJlZiA9IGNvbnRhaW5lclJlZi5jb250cm9sVWk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGNvbnRhaW5lclJlZjtcbiAgICB9XG59XG4iLCI8IS0tIDxuZy10ZW1wbGF0ZSBsZXQtZGlhbG9nIGxldC1kaWFsb2dDb25maWc9XCJkaWFsb2dDb25maWdcIiAjd2FpdFJlZj5cbiAgICA8ZmQtZGlhbG9nIFtkaWFsb2dDb25maWddPVwiZGlhbG9nQ29uZmlnXCIgW2RpYWxvZ1JlZl09XCJkaWFsb2dcIj5cbiAgICAgICAgPGZkLWRpYWxvZy1ib2R5PlxuICAgICAgICAgICAgPGJzdS1tYXNrPjwvYnN1LW1hc2s+XG4gICAgICAgIDwvZmQtZGlhbG9nLWJvZHk+XG4gICAgPC9mZC1kaWFsb2c+XG48L25nLXRlbXBsYXRlPiAtLT5cbjxuZy10ZW1wbGF0ZSBbZmREaWFsb2dUZW1wbGF0ZV0gbGV0LWRpYWxvZyBsZXQtZGlhbG9nQ29uZmlnPVwiZGlhbG9nQ29uZmlnXCIgI3dhaXRSZWY+XG4gICAgPGZkLWRpYWxvZyBbZGlhbG9nQ29uZmlnXT1cImRpYWxvZ0NvbmZpZ1wiIFtkaWFsb2dSZWZdPVwiZGlhbG9nXCIgY2xhc3M9XCJkaWFsb2ctbWFza1wiPlxuICAgICAgICA8ZmQtZGlhbG9nLWJvZHk+XG4gICAgICAgICAgICA8YnN1LW1hc2s+PC9ic3UtbWFzaz5cbiAgICAgICAgPC9mZC1kaWFsb2ctYm9keT5cbiAgICA8L2ZkLWRpYWxvZz5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
93
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWwtbG9hZGluZy1tYXNrLXVpLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL3VsLWxvYWRpbmctbWFzay11aS91bC1sb2FkaW5nLW1hc2stdWkuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWwtbG9hZGluZy1tYXNrLXVpL3VsLWxvYWRpbmctbWFzay11aS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFlLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzRixPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzFCLE9BQU8sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWhFLE9BQU8sRUFBRSxRQUFRLEVBQUUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7Ozs7O0FBTy9ELE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxhQUFhO0lBR3ZELFlBQW9CLGNBQTZCO1FBQzdDLEtBQUssRUFBRSxDQUFDO1FBRFEsbUJBQWMsR0FBZCxjQUFjLENBQWU7UUFEakQsbUJBQWMsR0FBcUIsRUFBRSxDQUFDO1FBR2xDLFFBQVEsQ0FBQyxFQUFFLENBQUMsbUJBQW1CLENBQUMsRUFBRSxDQUFDO1lBQy9CLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUM7WUFDMUIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQztZQUM5QixRQUFRLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDO1lBQ2xDLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVSxD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QUFPLENBQUM7UUFDM0IsSUFBSSxZQUFZLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDckIsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ3pCLENBQUM7YUFBTSxJQUFJLFlBQVksQ0FBQyxTQUFTLEVBQUUsQ0FBQztZQUNoQyxZQUFZLEdBQUcsWUFBWSxDQUFDLFNBQVMsQ0FBQztRQUMxQyxDQUFDO1FBQ0QsT0FBTyxZQUFZLENBQUM7SUFDeEIsQ0FBQzsrR0E1RVEsd0JBQXdCO21HQUF4Qix3QkFBd0IseUxDWHJDLGtrQkFjQTs7NEZESGEsd0JBQXdCO2tCQU5wQyxTQUFTOytCQUNJLHdCQUF3QixtQkFHakIsdUJBQXVCLENBQUMsTUFBTTtrRkFHekIsT0FBTztzQkFBNUIsU0FBUzt1QkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgb2YgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRlYm91bmNlVGltZSwgZGVsYXksIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IERpYWxvZ1JlZiwgRGlhbG9nU2VydmljZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZSc7XG5pbXBvcnQgeyBCYXJzYUFwaSwgQmFzZUNvbXBvbmVudCB9IGZyb20gJ2JhcnNhLW5vdmluLXJheS1jb3JlJztcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYnN1LXVsLWxvYWRpbmctbWFzay11aScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3VsLWxvYWRpbmctbWFzay11aS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdWwtbG9hZGluZy1tYXNrLXVpLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgVWxMb2FkaW5nTWFza1VpQ29tcG9uZW50IGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG4gICAgQFZpZXdDaGlsZCgnd2FpdFJlZicpIHdhaXRSZWY6IFRlbXBsYXRlUmVmPGFueT47XG4gICAgX2RpYWxvZ1JlZkxpc3Q6IERpYWxvZ1JlZjxhbnk+W10gPSBbXTtcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9kaWFsb2dTZXJ2aWNlOiBEaWFsb2dTZXJ2aWNlKSB7XG4gICAgICAgIHN1cGVyKCk7XG4gICAgICAgIEJhcnNhQXBpLlVsLkN1c3RvbUxvYWRpbmdNYXNrVWkub24oe1xuICAgICAgICAgICAgTWFzazogdGhpcy5tYXNrLmJpbmQodGhpcyksXG4gICAgICAgICAgICBVbm1hc2s6IHRoaXMudW5tYXNrLmJpbmQodGhpcyksXG4gICAgICAgICAgICBNYXNrQm9keTogdGhpcy5tYXNrQm9keS5iaW5kKHRoaXMpLFxuICAgICAgICAgICAgVW5tYXNrQm9keTogdGhpcy51bm1hc2tCb2R5LmJpbmQodGhpcyksXG4gICAgICAgICAgICBVbm1hc2tBbGw6IHRoaXMudW5tYXNrQWxsLmJpbmQodGhpcylcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIG1hc2soZWxlbWVudCwgb3B0aW9uKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNvbnRhaW5lclJlZiA9IHRoaXMucmVzb2x2ZUVsZW1lbnQoZWxlbWVudCk7XG4gICAgICAgIHRoaXMuX21hc2soY29udGFpbmVyUmVmLCBvcHRpb24pO1xuICAgIH1cbiAgICB1bm1hc2soZWxlbWVudCk6IHZvaWQge1xuICAgICAgICBjb25zdCBjb250YWluZXJSZWYgPSB0aGlzLnJlc29sdmVFbGVtZW50KGVsZW1lbnQpO1xuICAgICAgICB0aGlzLl91bm1hc2soY29udGFpbmVyUmVmKTtcbiAgICB9XG4gICAgdW5tYXNrQWxsKCk6IHZvaWQge1xuICAgICAgICAvLyB0aGlzLl9kaWFsb2dTZXJ2aWNlLmRpc21pc3NBbGwoKTtcbiAgICAgICAgdGhpcy5fZGlhbG9nUmVmTGlzdC5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgICAgICBpdGVtLmRpc21pc3MoKTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIG1hc2tCb2R5KGR1cmF0aW9uKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGJvZHkgPSB0aGlzLmdldEJvZHkoKTtcbiAgICAgICAgdGhpcy5fdW5tYXNrKGJvZHkpO1xuICAgICAgICB0aGlzLl9tYXNrKGJvZHksIHsgZGVsYXk6IGR1cmF0aW9uIH0pO1xuICAgIH1cbiAgICB1bm1hc2tCb2R5KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBib2R5ID0gdGhpcy5nZXRCb2R5KCk7XG4gICAgICAgIHRoaXMuX3VubWFzayhib2R5KTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF91bm1hc2soY29udGFpbmVyUmVmOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgaWYgKGNvbnRhaW5lclJlZiAmJiBjb250YWluZXJSZWYubWFza0RpYWxvZz8uY2xvc2UpIHtcbiAgICAgICAgICAgIGNvbnRhaW5lclJlZi5tYXNrRGlhbG9nLmNsb3NlKCk7XG4gICAgICAgICAgICBjb250YWluZXJSZWYubWFza0RpYWxvZyA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEJvZHkoKTogYW55IHtcbiAgICAgICAgcmV0dXJuIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoJ2JvZHknKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIF9tYXNrKGNvbnRhaW5lclJlZjogYW55LCBvcHRpb24/OiBhbnkpOiB2b2lkIHtcbiAgICAgICAgaWYgKGNvbnRhaW5lclJlZi5tYXNrRGlhbG9nKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbWFza0RlbGF5ID0gNTAwMDtcbiAgICAgICAgY29uc3QgeCA9IHRoaXMuX2RpYWxvZ1NlcnZpY2Uub3Blbih0aGlzLndhaXRSZWYsIHtcbiAgICAgICAgICAgIGNvbnRhaW5lcjogY29udGFpbmVyUmVmLFxuICAgICAgICAgICAgbW9iaWxlOiB0cnVlLFxuICAgICAgICAgICAgZGlhbG9nUGFuZWxDbGFzczogJ21hc2tsb2FkaW5nLWNvbnRhaW5lcidcbiAgICAgICAgfSk7XG4gICAgICAgIHguYWZ0ZXJMb2FkZWQuc3Vic2NyaWJlKCgpID0+ICgoY29udGFpbmVyUmVmLm1hc2tEaWFsb2cgPSB4KSwgdGhpcy5fZGlhbG9nUmVmTGlzdC5wdXNoKHgpKSk7XG4gICAgICAgIG9mKHRydWUpXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5fb25EZXN0cm95JCksIGRlbGF5KG1hc2tEZWxheSksIGRlYm91bmNlVGltZSgyMDApKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKGNvbnRhaW5lclJlZi5tYXNrRGlhbG9nPy5jbG9zZSkge1xuICAgICAgICAgICAgICAgICAgICBjb250YWluZXJSZWYubWFza0RpYWxvZy5jbG9zZSgpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmVzb2x2ZUVsZW1lbnQoZWxlbWVudDogYW55KTogYW55IHtcbiAgICAgICAgbGV0IGNvbnRhaW5lclJlZiA9IGVsZW1lbnQ7XG4gICAgICAgIGlmIChjb250YWluZXJSZWYuZ2V0RWwpIHtcbiAgICAgICAgICAgIGNvbnRhaW5lclJlZi5nZXRFbCgpO1xuICAgICAgICB9IGVsc2UgaWYgKGNvbnRhaW5lclJlZi5jb250cm9sVWkpIHtcbiAgICAgICAgICAgIGNvbnRhaW5lclJlZiA9IGNvbnRhaW5lclJlZi5jb250cm9sVWk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGNvbnRhaW5lclJlZjtcbiAgICB9XG59XG4iLCI8IS0tIDxuZy10ZW1wbGF0ZSBsZXQtZGlhbG9nIGxldC1kaWFsb2dDb25maWc9XCJkaWFsb2dDb25maWdcIiAjd2FpdFJlZj5cbiAgICA8ZmQtZGlhbG9nIFtkaWFsb2dDb25maWddPVwiZGlhbG9nQ29uZmlnXCIgW2RpYWxvZ1JlZl09XCJkaWFsb2dcIj5cbiAgICAgICAgPGZkLWRpYWxvZy1ib2R5PlxuICAgICAgICAgICAgPGJzdS1tYXNrPjwvYnN1LW1hc2s+XG4gICAgICAgIDwvZmQtZGlhbG9nLWJvZHk+XG4gICAgPC9mZC1kaWFsb2c+XG48L25nLXRlbXBsYXRlPiAtLT5cbjxuZy10ZW1wbGF0ZSBbZmREaWFsb2dUZW1wbGF0ZV0gbGV0LWRpYWxvZyBsZXQtZGlhbG9nQ29uZmlnPVwiZGlhbG9nQ29uZmlnXCIgI3dhaXRSZWY+XG4gICAgPGZkLWRpYWxvZyBbZGlhbG9nQ29uZmlnXT1cImRpYWxvZ0NvbmZpZ1wiIFtkaWFsb2dSZWZdPVwiZGlhbG9nXCIgY2xhc3M9XCJkaWFsb2ctbWFza1wiPlxuICAgICAgICA8ZmQtZGlhbG9nLWJvZHk+XG4gICAgICAgICAgICA8YnN1LW1hc2s+PC9ic3UtbWFzaz5cbiAgICAgICAgPC9mZC1kaWFsb2ctYm9keT5cbiAgICA8L2ZkLWRpYWxvZz5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -101,10 +101,10 @@ export class UlMsgBoxAdapterComponent extends BaseComponent {
101
101
  }
102
102
  return '';
103
103
  }
104
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: UlMsgBoxAdapterComponent, deps: [{ token: i1.DialogService }, { token: i1.ContentDensityService }], target: i0.ɵɵFactoryTarget.Component }); }
105
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.5", type: UlMsgBoxAdapterComponent, selector: "bsu-ul-msg-box-adapter", inputs: { context: "context" }, viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["templateRef"], descendants: true }, { propertyName: "waitRef", first: true, predicate: ["waitRef"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #waitRef [fdDialogTemplate] let-dialog let-dialogConfig=\"dialogConfig\">\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-body\n style=\"background-color: transparent\"\n class=\"tw-flex tw-flex-col tw-items-center tw-justify-center\"\n >\n @if(dialog.data && dialog.data.title){\n <div\n _ngcontent-ng-c678863778=\"\"\n class=\"tw-flex tw-flex-col tw-justify-start tw-items-center tw-p-4\"\n style=\"\n color: white;\n min-width: 210px;\n width: auto;\n height: 160px;\n background: white;\n position: relative;\n gap: 1rem;\n border-radius: 0.625rem;\n \"\n >\n <h3 fd-title *ngIf=\"dialog.data?.title\">{{ dialog.data?.title }}</h3>\n <fd-text *ngIf=\"dialog.data?.msg\" [text]=\"dialog.data?.msg\" [whitespaces]=\"true\"></fd-text>\n <div style=\"position: relative; width: 100%\">\n <bsu-mask></bsu-mask>\n </div>\n </div>\n }@else {\n <bsu-mask></bsu-mask>\n }\n </fd-dialog-body>\n </fd-dialog>\n</ng-template>\n\n<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #templateRef>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-header>\n <h1 fd-title>\n {{ dialogConfig.title }}\n </h1>\n </fd-dialog-header>\n\n <fd-dialog-body style=\"padding: 15px; max-width: 480px\">\n <div style=\"min-height: 125px\">\n <label fd-label [type]=\"dialogConfig.iconType\" [innerHtml]=\"dialogConfig.msg\"> </label>\n </div>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n @for (btn of dialogConfig.buttons | keyvalue: keepOrder; track btn) {\n <fd-dialog-footer-button>\n <button\n fd-button\n fd-dialog-decisive-button\n style=\"padding: 0 0.825rem\"\n [fdType]=\"\n btn.key === 'ok' || btn.key === 'yes'\n ? 'emphasized'\n : btn.key === 'no'\n ? 'standard'\n : 'transparent'\n \"\n [label]=\"btn.key + '' | titlecase | bbbTranslate\"\n (click)=\"onButton(btn, dialog, dialogConfig)\"\n ></button>\n </fd-dialog-footer-button>\n }\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i4.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i4.DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "component", type: i4.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i4.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i4.DialogTemplateDirective, selector: "[fdDialogTemplate]", inputs: ["fdDialogTemplateConfig"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i6.TextComponent, selector: "fd-text", inputs: ["text", "maxLines", "whitespaces", "hyphenation", "expandable", "isCollapsed"], outputs: ["isCollapsedChange"] }, { kind: "component", type: i7.MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "pipe", type: i2.TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: i2.KeyValuePipe, name: "keyvalue" }, { kind: "pipe", type: i8.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
104
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UlMsgBoxAdapterComponent, deps: [{ token: i1.DialogService }, { token: i1.ContentDensityService }], target: i0.ɵɵFactoryTarget.Component }); }
105
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: UlMsgBoxAdapterComponent, selector: "bsu-ul-msg-box-adapter", inputs: { context: "context" }, viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["templateRef"], descendants: true }, { propertyName: "waitRef", first: true, predicate: ["waitRef"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #waitRef [fdDialogTemplate] let-dialog let-dialogConfig=\"dialogConfig\">\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-body\n style=\"background-color: transparent\"\n class=\"tw-flex tw-flex-col tw-items-center tw-justify-center\"\n >\n @if(dialog.data && dialog.data.title){\n <div\n _ngcontent-ng-c678863778=\"\"\n class=\"tw-flex tw-flex-col tw-justify-start tw-items-center tw-p-4\"\n style=\"\n color: white;\n min-width: 210px;\n width: auto;\n height: 160px;\n background: white;\n position: relative;\n gap: 1rem;\n border-radius: 0.625rem;\n \"\n >\n <h3 fd-title *ngIf=\"dialog.data?.title\">{{ dialog.data?.title }}</h3>\n <fd-text *ngIf=\"dialog.data?.msg\" [text]=\"dialog.data?.msg\" [whitespaces]=\"true\"></fd-text>\n <div style=\"position: relative; width: 100%\">\n <bsu-mask></bsu-mask>\n </div>\n </div>\n }@else {\n <bsu-mask></bsu-mask>\n }\n </fd-dialog-body>\n </fd-dialog>\n</ng-template>\n\n<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #templateRef>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-header>\n <h1 fd-title>\n {{ dialogConfig.title }}\n </h1>\n </fd-dialog-header>\n\n <fd-dialog-body style=\"padding: 15px; max-width: 480px\">\n <div style=\"min-height: 125px\">\n <label fd-label [type]=\"dialogConfig.iconType\" [innerHtml]=\"dialogConfig.msg\"> </label>\n </div>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n @for (btn of dialogConfig.buttons | keyvalue: keepOrder; track btn) {\n <fd-dialog-footer-button>\n <button\n fd-button\n fd-dialog-decisive-button\n style=\"padding: 0 0.825rem\"\n [fdType]=\"\n btn.key === 'ok' || btn.key === 'yes'\n ? 'emphasized'\n : btn.key === 'no'\n ? 'standard'\n : 'transparent'\n \"\n [label]=\"btn.key + '' | titlecase | bbbTranslate\"\n (click)=\"onButton(btn, dialog, dialogConfig)\"\n ></button>\n </fd-dialog-footer-button>\n }\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.ButtonComponent, selector: "button[fd-button], a[fd-button], span[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i4.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i4.DialogBodyComponent, selector: "fd-dialog-body", inputs: ["disablePaddings"] }, { kind: "component", type: i4.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i4.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "directive", type: i4.DialogTemplateDirective, selector: "[fdDialogTemplate]", inputs: ["fdDialogTemplateConfig"] }, { kind: "component", type: i5.TitleComponent, selector: "[fd-title], [fdTitle]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }, { kind: "component", type: i6.TextComponent, selector: "fd-text", inputs: ["text", "maxLines", "whitespaces", "hyphenation", "expandable", "isCollapsed"], outputs: ["isCollapsedChange"] }, { kind: "component", type: i7.MaskComponent, selector: "bsu-mask", inputs: ["size", "top"] }, { kind: "pipe", type: i2.TitleCasePipe, name: "titlecase" }, { kind: "pipe", type: i2.KeyValuePipe, name: "keyvalue" }, { kind: "pipe", type: i8.BbbTranslatePipe, name: "bbbTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
106
106
  }
107
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: UlMsgBoxAdapterComponent, decorators: [{
107
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UlMsgBoxAdapterComponent, decorators: [{
108
108
  type: Component,
109
109
  args: [{ selector: 'bsu-ul-msg-box-adapter', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template #waitRef [fdDialogTemplate] let-dialog let-dialogConfig=\"dialogConfig\">\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-body\n style=\"background-color: transparent\"\n class=\"tw-flex tw-flex-col tw-items-center tw-justify-center\"\n >\n @if(dialog.data && dialog.data.title){\n <div\n _ngcontent-ng-c678863778=\"\"\n class=\"tw-flex tw-flex-col tw-justify-start tw-items-center tw-p-4\"\n style=\"\n color: white;\n min-width: 210px;\n width: auto;\n height: 160px;\n background: white;\n position: relative;\n gap: 1rem;\n border-radius: 0.625rem;\n \"\n >\n <h3 fd-title *ngIf=\"dialog.data?.title\">{{ dialog.data?.title }}</h3>\n <fd-text *ngIf=\"dialog.data?.msg\" [text]=\"dialog.data?.msg\" [whitespaces]=\"true\"></fd-text>\n <div style=\"position: relative; width: 100%\">\n <bsu-mask></bsu-mask>\n </div>\n </div>\n }@else {\n <bsu-mask></bsu-mask>\n }\n </fd-dialog-body>\n </fd-dialog>\n</ng-template>\n\n<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #templateRef>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-header>\n <h1 fd-title>\n {{ dialogConfig.title }}\n </h1>\n </fd-dialog-header>\n\n <fd-dialog-body style=\"padding: 15px; max-width: 480px\">\n <div style=\"min-height: 125px\">\n <label fd-label [type]=\"dialogConfig.iconType\" [innerHtml]=\"dialogConfig.msg\"> </label>\n </div>\n </fd-dialog-body>\n\n <fd-dialog-footer>\n @for (btn of dialogConfig.buttons | keyvalue: keepOrder; track btn) {\n <fd-dialog-footer-button>\n <button\n fd-button\n fd-dialog-decisive-button\n style=\"padding: 0 0.825rem\"\n [fdType]=\"\n btn.key === 'ok' || btn.key === 'yes'\n ? 'emphasized'\n : btn.key === 'no'\n ? 'standard'\n : 'transparent'\n \"\n [label]=\"btn.key + '' | titlecase | bbbTranslate\"\n (click)=\"onButton(btn, dialog, dialogConfig)\"\n ></button>\n </fd-dialog-footer-button>\n }\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n" }]
110
110
  }], ctorParameters: () => [{ type: i1.DialogService }, { type: i1.ContentDensityService }], propDecorators: { templateRef: [{
@@ -116,4 +116,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImpor
116
116
  }], context: [{
117
117
  type: Input
118
118
  }] } });
119
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWwtbXNnLWJveC1hZGFwdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL3VsLW1zZy1ib3gtYWRhcHRlci91bC1tc2ctYm94LWFkYXB0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWwtbXNnLWJveC1hZGFwdGVyL3VsLW1zZy1ib3gtYWRhcHRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBdUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFHLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdsRCxPQUFPLEVBQUUsYUFBYSxFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7Ozs7O0FBa0IvRCxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsYUFBYTtJQUt2RCxZQUFvQixjQUE2QixFQUFVLHNCQUE2QztRQUNwRyxLQUFLLEVBQUUsQ0FBQztRQURRLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQVUsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF1QjtRQTZCeEcsU0FBSSxHQUFHLENBQUMsTUFBd0IsRUFBUSxFQUFFO1lBQ3RDLE1BQU0sQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDL0MsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtnQkFDdkMsR0FBRyxNQUFNO2dCQUNULGlCQUFpQixFQUFFLElBQUk7YUFDMUIsQ0FBQyxDQUFDO1lBQ0gs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QUMsSUFBa0I7UUFDekIsUUFBUSxJQUFJLEVBQUUsQ0FBQztZQUNYLEtBQUssUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSTtnQkFDeEIsT0FBTyxhQUFhLENBQUM7WUFDekIsS0FBSyxRQUFRLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPO2dCQUMzQixPQUFPLFNBQVMsQ0FBQztZQUNyQixLQUFLLFFBQVEsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLFFBQVE7Z0JBQzVCLE9BQU8sU0FBUyxDQUFDO1lBQ3JCLEtBQUssUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSztnQkFDekIsT0FBTyxPQUFPLENBQUM7UUFDdkIsQ0FBQztRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ3JCLENBQUM7SUFLRCxhQUFhLENBQUMsSUFBa0I7UUFDNUIsUUFBUSxJQUFJLEVBQUUsQ0FBQztZQUNYLEtBQUssSUFBSTtnQkFDTCxPQUFPLE9BQU8sQ0FBQztZQUNuQixLQUFLLFFBQVE7Z0JBQ1QsT0FBTyxRQUFRLENBQUM7WUFDcEIsS0FBSyxLQUFLO2dCQUNOLE9BQU8sS0FBSyxDQUFDO1lBQ2pCLEtBQUssSUFBSTtnQkFDTCxPQUFPLEtBQUssQ0FBQztRQUNyQixDQUFDO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDZCxDQUFDOzhHQTFHUSx3QkFBd0I7a0dBQXhCLHdCQUF3QixzVEN2QnJDLDJ4RkFzRUE7OzJGRC9DYSx3QkFBd0I7a0JBTnBDLFNBQVM7K0JBQ0ksd0JBQXdCLG1CQUdqQix1QkFBdUIsQ0FBQyxNQUFNO3NIQUdyQixXQUFXO3NCQUFwQyxTQUFTO3VCQUFDLGFBQWE7Z0JBQ0YsT0FBTztzQkFBNUIsU0FBUzt1QkFBQyxTQUFTO2dCQUNYLE9BQU87c0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZGVsYXksIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQ29udGVudERlbnNpdHksIENvbnRlbnREZW5zaXR5U2VydmljZSwgRGlhbG9nQ29uZmlnLCBEaWFsb2dSZWYsIERpYWxvZ1NlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCwgQmFyc2FBcGkgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcblxyXG5pbnRlcmZhY2UgTWVzc2FnZUJveE9iamVjdCBleHRlbmRzIERpYWxvZ0NvbmZpZyB7XHJcbiAgICBzY29wZTogYW55O1xyXG4gICAgdGl0bGU6IHN0cmluZztcclxuICAgIGRlbGF5OiBudW1iZXI7XHJcbiAgICBtc2c6IHN0cmluZztcclxuICAgIGJ1dHRvbnM6IHsgW2tleTogc3RyaW5nXTogYm9vbGVhbiB9O1xyXG4gICAgaWNvbjogc3RyaW5nO1xyXG4gICAgaWNvblR5cGU6IHN0cmluZztcclxuICAgIGZuOiAoa2V5OiBzdHJpbmcpID0+IHZvaWQ7XHJcbn1cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2JzdS11bC1tc2ctYm94LWFkYXB0ZXInLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3VsLW1zZy1ib3gtYWRhcHRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi91bC1tc2ctYm94LWFkYXB0ZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVbE1zZ0JveEFkYXB0ZXJDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBWaWV3Q2hpbGQoJ3RlbXBsYXRlUmVmJykgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgICBAVmlld0NoaWxkKCd3YWl0UmVmJykgd2FpdFJlZjogVGVtcGxhdGVSZWY8YW55PjtcclxuICAgIEBJbnB1dCgpIGNvbnRleHQ7XHJcbiAgICBjb250ZW50RGVuc2l0eSQ6IE9ic2VydmFibGU8Q29udGVudERlbnNpdHk+O1xyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSwgcHJpdmF0ZSBfY29udGVudERlbnNpdHlTZXJ2aWNlOiBDb250ZW50RGVuc2l0eVNlcnZpY2UpIHtcclxuICAgICAgICBzdXBlcigpO1xyXG4gICAgICAgIEJhcnNhQXBpLlVsLk1zZ0JveC5BZGFwdGVyLm9uKHtcclxuICAgICAgICAgICAgU2hvdzogKG1zZ0JveERhdGEpID0+IHRoaXMuc2hvdyhtc2dCb3hEYXRhKSxcclxuICAgICAgICAgICAgd2FpdDogKG1zZywgdGl0bGUsIG1zZ0JveERhdGEpID0+IHRoaXMud2FpdChtc2csIHRpdGxlLCBtc2dCb3hEYXRhKSxcclxuICAgICAgICAgICAgaGlkZTogKCkgPT4gdGhpcy5oaWRlKClcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLmNvbnRlbnREZW5zaXR5JCA9IHRoaXMuX2NvbnRlbnREZW5zaXR5U2VydmljZS5jb250ZW50RGVuc2l0eS5hc09ic2VydmFibGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgfVxyXG4gICAgb25CdXR0b24oYnRuLCBkaWFsb2c6IERpYWxvZ1JlZiwgZGlhbG9nQ29uZmlnOiBNZXNzYWdlQm94T2JqZWN0KTogdm9pZCB7XHJcbiAgICAgICAgZGlhbG9nLmNsb3NlKCk7XHJcbiAgICAgICAgZGlhbG9nQ29uZmlnLmZuLmNhbGwodGhpcywgYnRuLmtleSk7XHJcbiAgICB9XHJcbiAgICBvbkNsb3NlKGRpYWxvZywgZGlhbG9nQ29uZmlnOiBNZXNzYWdlQm94T2JqZWN0KTogdm9pZCB7XHJcbiAgICAgICAgZGlhbG9nLmNsb3NlKCk7XHJcbiAgICAgICAgZGlhbG9nQ29uZmlnLmZuLmNhbGwodGhpcywgJ2NhbmNlbCcpO1xyXG4gICAgfVxyXG4gICAgcmV2ZXJzZU9iaihvYmopOiBhbnkge1xyXG4gICAgICAgIHJldHVybiBPYmplY3Qua2V5cyhvYmopXHJcbiAgICAgICAgICAgIC5yZXZlcnNlKClcclxuICAgICAgICAgICAgLnJlZHVjZSgoYSwga2V5KSA9PiB7XHJcbiAgICAgICAgICAgICAgICBhW2tleV0gPSBvYmpba2V5XTtcclxuICAgICAgICAgICAgICAgIHJldHVybiBhO1xyXG4gICAgICAgICAgICB9LCB7fSk7XHJcbiAgICB9XHJcbiAgICBzaG93ID0gKG9iamVjdDogTWVzc2FnZUJveE9iamVjdCk6IHZvaWQgPT4ge1xyXG4gICAgICAgIG9iamVjdC5pY29uVHlwZSA9IHRoaXMuZ2V0TXNnVHlwZShvYmplY3QuaWNvbik7XHJcbiAgICAgICAgdGhpcy5fZGlhbG9nU2VydmljZS5vcGVuKHRoaXMudGVtcGxhdGVSZWYsIHtcclxuICAgICAgICAgICAgLi4ub2JqZWN0LFxyXG4gICAgICAgICAgICByZXNwb25zaXZlUGFkZGluZzogdHJ1ZVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIC8qIGVzbGludC1kaXNhYmxlICovXHJcbiAgICB9O1xyXG4gICAgd2FpdCA9IChcclxuICAgICAgICBtc2csXHJcbiAgICAgICAgdGl0bGUsXHJcbiAgICAgICAgb2JqZWN0OiB7XHJcbiAgICAgICAgICAgIGludGVydmFsOiBudW1iZXI7XHJcbiAgICAgICAgICAgIGR1cmF0aW9uOiBudW1iZXI7XHJcbiAgICAgICAgICAgIGluY3JlbWVudDogbnVtYmVyO1xyXG4gICAgICAgICAgICB0ZXh0OiBzdHJpbmc7XHJcbiAgICAgICAgICAgIGljb246IHN0cmluZztcclxuICAgICAgICAgICAgaWNvblR5cGU6IHN0cmluZztcclxuICAgICAgICAgICAgc2NvcGU6IGFueTtcclxuICAgICAgICAgICAgZm46ICgpID0+IHZvaWQ7XHJcbiAgICAgICAgfVxyXG4gICAgKSA9PiB7XHJcbiAgICAgICAgb2JqZWN0Lmljb25UeXBlID0gdGhpcy5nZXRNc2dUeXBlKG9iamVjdC5pY29uKTtcclxuICAgICAgICBjb25zdCB3YWl0RGlhbG9nID0gdGhpcy5fZGlhbG9nU2VydmljZS5vcGVuKHRoaXMud2FpdFJlZiwge1xyXG4gICAgICAgICAgICBkYXRhOiB7IC4uLm9iamVjdCwgbXNnLCB0aXRsZSB9LFxyXG4gICAgICAgICAgICByZXNwb25zaXZlUGFkZGluZzogdHJ1ZSxcclxuICAgICAgICAgICAgbW9iaWxlOiB0cnVlLFxyXG4gICAgICAgICAgICBjb250YWluZXJDbGFzczogJ3h4eHh4J1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGlmICghb2JqZWN0LmR1cmF0aW9uKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIG9mKHRydWUpXHJcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSwgZGVsYXkob2JqZWN0LmR1cmF0aW9uKSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgoYykgPT4ge1xyXG4gICAgICAgICAgICAgICAgd2FpdERpYWxvZy5jbG9zZSgpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgIH07XHJcbiAgICBoaWRlID0gKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuX2RpYWxvZ1NlcnZpY2UuZGlzbWlzc0FsbCgpO1xyXG4gICAgICAgIC8qIGVzbGludC1kaXNhYmxlICovXHJcbiAgICB9O1xyXG4gICAgZ2V0TXNnVHlwZShpY29uOiBzdHJpbmcgfCBhbnkpOiBzdHJpbmcge1xyXG4gICAgICAgIHN3aXRjaCAoaWNvbikge1xyXG4gICAgICAgICAgICBjYXNlIEJhcnNhQXBpLlVsLk1zZ0JveC5JTkZPOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuICdpbmZvcm1hdGlvbic7XHJcbiAgICAgICAgICAgIGNhc2UgQmFyc2FBcGkuVWwuTXNnQm94LldBUk5JTkc6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ3dhcm5pbmcnO1xyXG4gICAgICAgICAgICBjYXNlIEJhcnNhQXBpLlVsLk1zZ0JveC5RVUVTVElPTjpcclxuICAgICAgICAgICAgICAgIHJldHVybiAnZGVmYXVsdCc7XHJcbiAgICAgICAgICAgIGNhc2UgQmFyc2FBcGkuVWwuTXNnQm94LkVSUk9SOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuICdlcnJvcic7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiAnZGVmYXVsdCc7XHJcbiAgICB9XHJcbiAgICBrZWVwT3JkZXIgPSAoYSwgYikgPT4ge1xyXG4gICAgICAgIHJldHVybiBhO1xyXG4gICAgICAgIC8qIGVzbGludC1kaXNhYmxlICovXHJcbiAgICB9O1xyXG4gICAgZ2V0QnRuQ2FwdGlvbihuYW1lOiBzdHJpbmcgfCBhbnkpOiBzdHJpbmcge1xyXG4gICAgICAgIHN3aXRjaCAobmFtZSkge1xyXG4gICAgICAgICAgICBjYXNlICdvayc6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ9iq2KfbjNuM2K8nO1xyXG4gICAgICAgICAgICBjYXNlICdjYW5jZWwnOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuICfYp9mG2LXYsdin2YEnO1xyXG4gICAgICAgICAgICBjYXNlICd5ZXMnOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuICfYqNmE2YcnO1xyXG4gICAgICAgICAgICBjYXNlICdubyc6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ9iu24zYsSc7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxufVxyXG4iLCI8bmctdGVtcGxhdGUgI3dhaXRSZWYgW2ZkRGlhbG9nVGVtcGxhdGVdIGxldC1kaWFsb2cgbGV0LWRpYWxvZ0NvbmZpZz1cImRpYWxvZ0NvbmZpZ1wiPlxuICAgIDxmZC1kaWFsb2cgW2RpYWxvZ0NvbmZpZ109XCJkaWFsb2dDb25maWdcIiBbZGlhbG9nUmVmXT1cImRpYWxvZ1wiPlxuICAgICAgICA8ZmQtZGlhbG9nLWJvZHlcbiAgICAgICAgICAgIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnRcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0dy1mbGV4IHR3LWZsZXgtY29sIHR3LWl0ZW1zLWNlbnRlciB0dy1qdXN0aWZ5LWNlbnRlclwiXG4gICAgICAgID5cbiAgICAgICAgICAgIEBpZihkaWFsb2cuZGF0YSAmJiBkaWFsb2cuZGF0YS50aXRsZSl7XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgX25nY29udGVudC1uZy1jNjc4ODYzNzc4PVwiXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInR3LWZsZXggdHctZmxleC1jb2wgdHctanVzdGlmeS1zdGFydCB0dy1pdGVtcy1jZW50ZXIgdHctcC00XCJcbiAgICAgICAgICAgICAgICBzdHlsZT1cIlxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMjEwcHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE2MHB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNjI1cmVtO1xuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGgzIGZkLXRpdGxlICpuZ0lmPVwiZGlhbG9nLmRhdGE/LnRpdGxlXCI+e3sgZGlhbG9nLmRhdGE/LnRpdGxlIH19PC9oMz5cbiAgICAgICAgICAgICAgICA8ZmQtdGV4dCAqbmdJZj1cImRpYWxvZy5kYXRhPy5tc2dcIiBbdGV4dF09XCJkaWFsb2cuZGF0YT8ubXNnXCIgW3doaXRlc3BhY2VzXT1cInRydWVcIj48L2ZkLXRleHQ+XG4gICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cInBvc2l0aW9uOiByZWxhdGl2ZTsgd2lkdGg6IDEwMCVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGJzdS1tYXNrPjwvYnN1LW1hc2s+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1AZWxzZSB7XG4gICAgICAgICAgICA8YnN1LW1hc2s+PC9ic3UtbWFzaz5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9mZC1kaWFsb2ctYm9keT5cbiAgICA8L2ZkLWRpYWxvZz5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSBsZXQtZGlhbG9nIGxldC1kaWFsb2dDb25maWc9XCJkaWFsb2dDb25maWdcIiAjdGVtcGxhdGVSZWY+XG4gICAgPGZkLWRpYWxvZyBbZGlhbG9nQ29uZmlnXT1cImRpYWxvZ0NvbmZpZ1wiIFtkaWFsb2dSZWZdPVwiZGlhbG9nXCI+XG4gICAgICAgIDxmZC1kaWFsb2ctaGVhZGVyPlxuICAgICAgICAgICAgPGgxIGZkLXRpdGxlPlxuICAgICAgICAgICAgICAgIHt7IGRpYWxvZ0NvbmZpZy50aXRsZSB9fVxuICAgICAgICAgICAgPC9oMT5cbiAgICAgICAgPC9mZC1kaWFsb2ctaGVhZGVyPlxuXG4gICAgICAgIDxmZC1kaWFsb2ctYm9keSBzdHlsZT1cInBhZGRpbmc6IDE1cHg7IG1heC13aWR0aDogNDgwcHhcIj5cbiAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJtaW4taGVpZ2h0OiAxMjVweFwiPlxuICAgICAgICAgICAgICAgIDxsYWJlbCBmZC1sYWJlbCBbdHlwZV09XCJkaWFsb2dDb25maWcuaWNvblR5cGVcIiBbaW5uZXJIdG1sXT1cImRpYWxvZ0NvbmZpZy5tc2dcIj4gPC9sYWJlbD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2ZkLWRpYWxvZy1ib2R5PlxuXG4gICAgICAgIDxmZC1kaWFsb2ctZm9vdGVyPlxuICAgICAgICAgICAgQGZvciAoYnRuIG9mIGRpYWxvZ0NvbmZpZy5idXR0b25zIHwga2V5dmFsdWU6IGtlZXBPcmRlcjsgdHJhY2sgYnRuKSB7XG4gICAgICAgICAgICA8ZmQtZGlhbG9nLWZvb3Rlci1idXR0b24+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBmZC1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgZmQtZGlhbG9nLWRlY2lzaXZlLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBzdHlsZT1cInBhZGRpbmc6IDAgMC44MjVyZW1cIlxuICAgICAgICAgICAgICAgICAgICBbZmRUeXBlXT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgYnRuLmtleSA9PT0gJ29rJyB8fCBidG4ua2V5ID09PSAneWVzJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gJ2VtcGhhc2l6ZWQnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBidG4ua2V5ID09PSAnbm8nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyAnc3RhbmRhcmQnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAndHJhbnNwYXJlbnQnXG4gICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJidG4ua2V5ICsgJycgfCB0aXRsZWNhc2UgfCBiYmJUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25CdXR0b24oYnRuLCBkaWFsb2csIGRpYWxvZ0NvbmZpZylcIlxuICAgICAgICAgICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgICAgIDwvZmQtZGlhbG9nLWZvb3Rlci1idXR0b24+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZmQtZGlhbG9nLWZvb3Rlcj5cbiAgICA8L2ZkLWRpYWxvZz5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
119
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWwtbXNnLWJveC1hZGFwdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL3VsLW1zZy1ib3gtYWRhcHRlci91bC1tc2ctYm94LWFkYXB0ZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWwtbXNnLWJveC1hZGFwdGVyL3VsLW1zZy1ib3gtYWRhcHRlci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBdUIsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzFHLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDdEMsT0FBTyxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUdsRCxPQUFPLEVBQUUsYUFBYSxFQUFFLFFBQVEsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7Ozs7Ozs7O0FBa0IvRCxNQUFNLE9BQU8sd0JBQXlCLFNBQVEsYUFBYTtJQUt2RCxZQUFvQixjQUE2QixFQUFVLHNCQUE2QztRQUNwRyxLQUFLLEVBQUUsQ0FBQztRQURRLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQVUsMkJBQXNCLEdBQXRCLHNCQUFzQixDQUF1QjtRQTZCeEcsU0FBSSxHQUFHLENBQUMsTUFBd0IsRUFBUSxFQUFFO1lBQ3RDLE1BQU0sQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDL0MsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRTtnQkFDdkMsR0FBRyxNQUFNO2dCQUNULGlCQUFpQixFQUFFLElBQUk7YUFDMUIsQ0FBQyxDQUFDO1lBQ0gs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QUMsSUFBa0I7UUFDekIsUUFBUSxJQUFJLEVBQUUsQ0FBQztZQUNYLEtBQUssUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsSUFBSTtnQkFDeEIsT0FBTyxhQUFhLENBQUM7WUFDekIsS0FBSyxRQUFRLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxPQUFPO2dCQUMzQixPQUFPLFNBQVMsQ0FBQztZQUNyQixLQUFLLFFBQVEsQ0FBQyxFQUFFLENBQUMsTUFBTSxDQUFDLFFBQVE7Z0JBQzVCLE9BQU8sU0FBUyxDQUFDO1lBQ3JCLEtBQUssUUFBUSxDQUFDLEVBQUUsQ0FBQyxNQUFNLENBQUMsS0FBSztnQkFDekIsT0FBTyxPQUFPLENBQUM7UUFDdkIsQ0FBQztRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ3JCLENBQUM7SUFLRCxhQUFhLENBQUMsSUFBa0I7UUFDNUIsUUFBUSxJQUFJLEVBQUUsQ0FBQztZQUNYLEtBQUssSUFBSTtnQkFDTCxPQUFPLE9BQU8sQ0FBQztZQUNuQixLQUFLLFFBQVE7Z0JBQ1QsT0FBTyxRQUFRLENBQUM7WUFDcEIsS0FBSyxLQUFLO2dCQUNOLE9BQU8sS0FBSyxDQUFDO1lBQ2pCLEtBQUssSUFBSTtnQkFDTCxPQUFPLEtBQUssQ0FBQztRQUNyQixDQUFDO1FBQ0QsT0FBTyxFQUFFLENBQUM7SUFDZCxDQUFDOytHQTFHUSx3QkFBd0I7bUdBQXhCLHdCQUF3QixzVEN2QnJDLDJ4RkFzRUE7OzRGRC9DYSx3QkFBd0I7a0JBTnBDLFNBQVM7K0JBQ0ksd0JBQXdCLG1CQUdqQix1QkFBdUIsQ0FBQyxNQUFNO3NIQUdyQixXQUFXO3NCQUFwQyxTQUFTO3VCQUFDLGFBQWE7Z0JBQ0YsT0FBTztzQkFBNUIsU0FBUzt1QkFBQyxTQUFTO2dCQUNYLE9BQU87c0JBQWYsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBPbkluaXQsIFRlbXBsYXRlUmVmLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZGVsYXksIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuaW1wb3J0IHsgQ29udGVudERlbnNpdHksIENvbnRlbnREZW5zaXR5U2VydmljZSwgRGlhbG9nQ29uZmlnLCBEaWFsb2dSZWYsIERpYWxvZ1NlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCwgQmFyc2FBcGkgfSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XHJcblxyXG5pbnRlcmZhY2UgTWVzc2FnZUJveE9iamVjdCBleHRlbmRzIERpYWxvZ0NvbmZpZyB7XHJcbiAgICBzY29wZTogYW55O1xyXG4gICAgdGl0bGU6IHN0cmluZztcclxuICAgIGRlbGF5OiBudW1iZXI7XHJcbiAgICBtc2c6IHN0cmluZztcclxuICAgIGJ1dHRvbnM6IHsgW2tleTogc3RyaW5nXTogYm9vbGVhbiB9O1xyXG4gICAgaWNvbjogc3RyaW5nO1xyXG4gICAgaWNvblR5cGU6IHN0cmluZztcclxuICAgIGZuOiAoa2V5OiBzdHJpbmcpID0+IHZvaWQ7XHJcbn1cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ2JzdS11bC1tc2ctYm94LWFkYXB0ZXInLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL3VsLW1zZy1ib3gtYWRhcHRlci5jb21wb25lbnQuaHRtbCcsXHJcbiAgICBzdHlsZVVybHM6IFsnLi91bC1tc2ctYm94LWFkYXB0ZXIuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBVbE1zZ0JveEFkYXB0ZXJDb21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICAgIEBWaWV3Q2hpbGQoJ3RlbXBsYXRlUmVmJykgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT47XHJcbiAgICBAVmlld0NoaWxkKCd3YWl0UmVmJykgd2FpdFJlZjogVGVtcGxhdGVSZWY8YW55PjtcclxuICAgIEBJbnB1dCgpIGNvbnRleHQ7XHJcbiAgICBjb250ZW50RGVuc2l0eSQ6IE9ic2VydmFibGU8Q29udGVudERlbnNpdHk+O1xyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfZGlhbG9nU2VydmljZTogRGlhbG9nU2VydmljZSwgcHJpdmF0ZSBfY29udGVudERlbnNpdHlTZXJ2aWNlOiBDb250ZW50RGVuc2l0eVNlcnZpY2UpIHtcclxuICAgICAgICBzdXBlcigpO1xyXG4gICAgICAgIEJhcnNhQXBpLlVsLk1zZ0JveC5BZGFwdGVyLm9uKHtcclxuICAgICAgICAgICAgU2hvdzogKG1zZ0JveERhdGEpID0+IHRoaXMuc2hvdyhtc2dCb3hEYXRhKSxcclxuICAgICAgICAgICAgd2FpdDogKG1zZywgdGl0bGUsIG1zZ0JveERhdGEpID0+IHRoaXMud2FpdChtc2csIHRpdGxlLCBtc2dCb3hEYXRhKSxcclxuICAgICAgICAgICAgaGlkZTogKCkgPT4gdGhpcy5oaWRlKClcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLmNvbnRlbnREZW5zaXR5JCA9IHRoaXMuX2NvbnRlbnREZW5zaXR5U2VydmljZS5jb250ZW50RGVuc2l0eS5hc09ic2VydmFibGUoKTtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBzdXBlci5uZ09uSW5pdCgpO1xyXG4gICAgfVxyXG4gICAgb25CdXR0b24oYnRuLCBkaWFsb2c6IERpYWxvZ1JlZiwgZGlhbG9nQ29uZmlnOiBNZXNzYWdlQm94T2JqZWN0KTogdm9pZCB7XHJcbiAgICAgICAgZGlhbG9nLmNsb3NlKCk7XHJcbiAgICAgICAgZGlhbG9nQ29uZmlnLmZuLmNhbGwodGhpcywgYnRuLmtleSk7XHJcbiAgICB9XHJcbiAgICBvbkNsb3NlKGRpYWxvZywgZGlhbG9nQ29uZmlnOiBNZXNzYWdlQm94T2JqZWN0KTogdm9pZCB7XHJcbiAgICAgICAgZGlhbG9nLmNsb3NlKCk7XHJcbiAgICAgICAgZGlhbG9nQ29uZmlnLmZuLmNhbGwodGhpcywgJ2NhbmNlbCcpO1xyXG4gICAgfVxyXG4gICAgcmV2ZXJzZU9iaihvYmopOiBhbnkge1xyXG4gICAgICAgIHJldHVybiBPYmplY3Qua2V5cyhvYmopXHJcbiAgICAgICAgICAgIC5yZXZlcnNlKClcclxuICAgICAgICAgICAgLnJlZHVjZSgoYSwga2V5KSA9PiB7XHJcbiAgICAgICAgICAgICAgICBhW2tleV0gPSBvYmpba2V5XTtcclxuICAgICAgICAgICAgICAgIHJldHVybiBhO1xyXG4gICAgICAgICAgICB9LCB7fSk7XHJcbiAgICB9XHJcbiAgICBzaG93ID0gKG9iamVjdDogTWVzc2FnZUJveE9iamVjdCk6IHZvaWQgPT4ge1xyXG4gICAgICAgIG9iamVjdC5pY29uVHlwZSA9IHRoaXMuZ2V0TXNnVHlwZShvYmplY3QuaWNvbik7XHJcbiAgICAgICAgdGhpcy5fZGlhbG9nU2VydmljZS5vcGVuKHRoaXMudGVtcGxhdGVSZWYsIHtcclxuICAgICAgICAgICAgLi4ub2JqZWN0LFxyXG4gICAgICAgICAgICByZXNwb25zaXZlUGFkZGluZzogdHJ1ZVxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIC8qIGVzbGludC1kaXNhYmxlICovXHJcbiAgICB9O1xyXG4gICAgd2FpdCA9IChcclxuICAgICAgICBtc2csXHJcbiAgICAgICAgdGl0bGUsXHJcbiAgICAgICAgb2JqZWN0OiB7XHJcbiAgICAgICAgICAgIGludGVydmFsOiBudW1iZXI7XHJcbiAgICAgICAgICAgIGR1cmF0aW9uOiBudW1iZXI7XHJcbiAgICAgICAgICAgIGluY3JlbWVudDogbnVtYmVyO1xyXG4gICAgICAgICAgICB0ZXh0OiBzdHJpbmc7XHJcbiAgICAgICAgICAgIGljb246IHN0cmluZztcclxuICAgICAgICAgICAgaWNvblR5cGU6IHN0cmluZztcclxuICAgICAgICAgICAgc2NvcGU6IGFueTtcclxuICAgICAgICAgICAgZm46ICgpID0+IHZvaWQ7XHJcbiAgICAgICAgfVxyXG4gICAgKSA9PiB7XHJcbiAgICAgICAgb2JqZWN0Lmljb25UeXBlID0gdGhpcy5nZXRNc2dUeXBlKG9iamVjdC5pY29uKTtcclxuICAgICAgICBjb25zdCB3YWl0RGlhbG9nID0gdGhpcy5fZGlhbG9nU2VydmljZS5vcGVuKHRoaXMud2FpdFJlZiwge1xyXG4gICAgICAgICAgICBkYXRhOiB7IC4uLm9iamVjdCwgbXNnLCB0aXRsZSB9LFxyXG4gICAgICAgICAgICByZXNwb25zaXZlUGFkZGluZzogdHJ1ZSxcclxuICAgICAgICAgICAgbW9iaWxlOiB0cnVlLFxyXG4gICAgICAgICAgICBjb250YWluZXJDbGFzczogJ3h4eHh4J1xyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGlmICghb2JqZWN0LmR1cmF0aW9uKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIG9mKHRydWUpXHJcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSwgZGVsYXkob2JqZWN0LmR1cmF0aW9uKSlcclxuICAgICAgICAgICAgLnN1YnNjcmliZSgoYykgPT4ge1xyXG4gICAgICAgICAgICAgICAgd2FpdERpYWxvZy5jbG9zZSgpO1xyXG4gICAgICAgICAgICB9KTtcclxuICAgIH07XHJcbiAgICBoaWRlID0gKCkgPT4ge1xyXG4gICAgICAgIHRoaXMuX2RpYWxvZ1NlcnZpY2UuZGlzbWlzc0FsbCgpO1xyXG4gICAgICAgIC8qIGVzbGludC1kaXNhYmxlICovXHJcbiAgICB9O1xyXG4gICAgZ2V0TXNnVHlwZShpY29uOiBzdHJpbmcgfCBhbnkpOiBzdHJpbmcge1xyXG4gICAgICAgIHN3aXRjaCAoaWNvbikge1xyXG4gICAgICAgICAgICBjYXNlIEJhcnNhQXBpLlVsLk1zZ0JveC5JTkZPOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuICdpbmZvcm1hdGlvbic7XHJcbiAgICAgICAgICAgIGNhc2UgQmFyc2FBcGkuVWwuTXNnQm94LldBUk5JTkc6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ3dhcm5pbmcnO1xyXG4gICAgICAgICAgICBjYXNlIEJhcnNhQXBpLlVsLk1zZ0JveC5RVUVTVElPTjpcclxuICAgICAgICAgICAgICAgIHJldHVybiAnZGVmYXVsdCc7XHJcbiAgICAgICAgICAgIGNhc2UgQmFyc2FBcGkuVWwuTXNnQm94LkVSUk9SOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuICdlcnJvcic7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiAnZGVmYXVsdCc7XHJcbiAgICB9XHJcbiAgICBrZWVwT3JkZXIgPSAoYSwgYikgPT4ge1xyXG4gICAgICAgIHJldHVybiBhO1xyXG4gICAgICAgIC8qIGVzbGludC1kaXNhYmxlICovXHJcbiAgICB9O1xyXG4gICAgZ2V0QnRuQ2FwdGlvbihuYW1lOiBzdHJpbmcgfCBhbnkpOiBzdHJpbmcge1xyXG4gICAgICAgIHN3aXRjaCAobmFtZSkge1xyXG4gICAgICAgICAgICBjYXNlICdvayc6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ9iq2KfbjNuM2K8nO1xyXG4gICAgICAgICAgICBjYXNlICdjYW5jZWwnOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuICfYp9mG2LXYsdin2YEnO1xyXG4gICAgICAgICAgICBjYXNlICd5ZXMnOlxyXG4gICAgICAgICAgICAgICAgcmV0dXJuICfYqNmE2YcnO1xyXG4gICAgICAgICAgICBjYXNlICdubyc6XHJcbiAgICAgICAgICAgICAgICByZXR1cm4gJ9iu24zYsSc7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxufVxyXG4iLCI8bmctdGVtcGxhdGUgI3dhaXRSZWYgW2ZkRGlhbG9nVGVtcGxhdGVdIGxldC1kaWFsb2cgbGV0LWRpYWxvZ0NvbmZpZz1cImRpYWxvZ0NvbmZpZ1wiPlxuICAgIDxmZC1kaWFsb2cgW2RpYWxvZ0NvbmZpZ109XCJkaWFsb2dDb25maWdcIiBbZGlhbG9nUmVmXT1cImRpYWxvZ1wiPlxuICAgICAgICA8ZmQtZGlhbG9nLWJvZHlcbiAgICAgICAgICAgIHN0eWxlPVwiYmFja2dyb3VuZC1jb2xvcjogdHJhbnNwYXJlbnRcIlxuICAgICAgICAgICAgY2xhc3M9XCJ0dy1mbGV4IHR3LWZsZXgtY29sIHR3LWl0ZW1zLWNlbnRlciB0dy1qdXN0aWZ5LWNlbnRlclwiXG4gICAgICAgID5cbiAgICAgICAgICAgIEBpZihkaWFsb2cuZGF0YSAmJiBkaWFsb2cuZGF0YS50aXRsZSl7XG4gICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgX25nY29udGVudC1uZy1jNjc4ODYzNzc4PVwiXCJcbiAgICAgICAgICAgICAgICBjbGFzcz1cInR3LWZsZXggdHctZmxleC1jb2wgdHctanVzdGlmeS1zdGFydCB0dy1pdGVtcy1jZW50ZXIgdHctcC00XCJcbiAgICAgICAgICAgICAgICBzdHlsZT1cIlxuICAgICAgICAgICAgICAgICAgICBjb2xvcjogd2hpdGU7XG4gICAgICAgICAgICAgICAgICAgIG1pbi13aWR0aDogMjEwcHg7XG4gICAgICAgICAgICAgICAgICAgIHdpZHRoOiBhdXRvO1xuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDE2MHB4O1xuICAgICAgICAgICAgICAgICAgICBiYWNrZ3JvdW5kOiB3aGl0ZTtcbiAgICAgICAgICAgICAgICAgICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgICAgICAgICAgICAgICAgICBnYXA6IDFyZW07XG4gICAgICAgICAgICAgICAgICAgIGJvcmRlci1yYWRpdXM6IDAuNjI1cmVtO1xuICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgPGgzIGZkLXRpdGxlICpuZ0lmPVwiZGlhbG9nLmRhdGE/LnRpdGxlXCI+e3sgZGlhbG9nLmRhdGE/LnRpdGxlIH19PC9oMz5cbiAgICAgICAgICAgICAgICA8ZmQtdGV4dCAqbmdJZj1cImRpYWxvZy5kYXRhPy5tc2dcIiBbdGV4dF09XCJkaWFsb2cuZGF0YT8ubXNnXCIgW3doaXRlc3BhY2VzXT1cInRydWVcIj48L2ZkLXRleHQ+XG4gICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cInBvc2l0aW9uOiByZWxhdGl2ZTsgd2lkdGg6IDEwMCVcIj5cbiAgICAgICAgICAgICAgICAgICAgPGJzdS1tYXNrPjwvYnN1LW1hc2s+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIH1AZWxzZSB7XG4gICAgICAgICAgICA8YnN1LW1hc2s+PC9ic3UtbWFzaz5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC9mZC1kaWFsb2ctYm9keT5cbiAgICA8L2ZkLWRpYWxvZz5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSBsZXQtZGlhbG9nIGxldC1kaWFsb2dDb25maWc9XCJkaWFsb2dDb25maWdcIiAjdGVtcGxhdGVSZWY+XG4gICAgPGZkLWRpYWxvZyBbZGlhbG9nQ29uZmlnXT1cImRpYWxvZ0NvbmZpZ1wiIFtkaWFsb2dSZWZdPVwiZGlhbG9nXCI+XG4gICAgICAgIDxmZC1kaWFsb2ctaGVhZGVyPlxuICAgICAgICAgICAgPGgxIGZkLXRpdGxlPlxuICAgICAgICAgICAgICAgIHt7IGRpYWxvZ0NvbmZpZy50aXRsZSB9fVxuICAgICAgICAgICAgPC9oMT5cbiAgICAgICAgPC9mZC1kaWFsb2ctaGVhZGVyPlxuXG4gICAgICAgIDxmZC1kaWFsb2ctYm9keSBzdHlsZT1cInBhZGRpbmc6IDE1cHg7IG1heC13aWR0aDogNDgwcHhcIj5cbiAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJtaW4taGVpZ2h0OiAxMjVweFwiPlxuICAgICAgICAgICAgICAgIDxsYWJlbCBmZC1sYWJlbCBbdHlwZV09XCJkaWFsb2dDb25maWcuaWNvblR5cGVcIiBbaW5uZXJIdG1sXT1cImRpYWxvZ0NvbmZpZy5tc2dcIj4gPC9sYWJlbD5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2ZkLWRpYWxvZy1ib2R5PlxuXG4gICAgICAgIDxmZC1kaWFsb2ctZm9vdGVyPlxuICAgICAgICAgICAgQGZvciAoYnRuIG9mIGRpYWxvZ0NvbmZpZy5idXR0b25zIHwga2V5dmFsdWU6IGtlZXBPcmRlcjsgdHJhY2sgYnRuKSB7XG4gICAgICAgICAgICA8ZmQtZGlhbG9nLWZvb3Rlci1idXR0b24+XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBmZC1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgZmQtZGlhbG9nLWRlY2lzaXZlLWJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBzdHlsZT1cInBhZGRpbmc6IDAgMC44MjVyZW1cIlxuICAgICAgICAgICAgICAgICAgICBbZmRUeXBlXT1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgYnRuLmtleSA9PT0gJ29rJyB8fCBidG4ua2V5ID09PSAneWVzJ1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgID8gJ2VtcGhhc2l6ZWQnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiBidG4ua2V5ID09PSAnbm8nXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPyAnc3RhbmRhcmQnXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgOiAndHJhbnNwYXJlbnQnXG4gICAgICAgICAgICAgICAgICAgIFwiXG4gICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCJidG4ua2V5ICsgJycgfCB0aXRsZWNhc2UgfCBiYmJUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwib25CdXR0b24oYnRuLCBkaWFsb2csIGRpYWxvZ0NvbmZpZylcIlxuICAgICAgICAgICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgICAgIDwvZmQtZGlhbG9nLWZvb3Rlci1idXR0b24+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZmQtZGlhbG9nLWZvb3Rlcj5cbiAgICA8L2ZkLWRpYWxvZz5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -22,11 +22,11 @@ export class UlNotifyPopupComponent extends BaseComponent {
22
22
  onShow(e) {
23
23
  this._notificationService.ShowNotificationRelatedMo(e);
24
24
  }
25
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: UlNotifyPopupComponent, deps: [{ token: i1.NotificationRef }, { token: i2.PortalService }, { token: i2.NotificationService }], target: i0.ɵɵFactoryTarget.Component }); }
26
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.5", type: UlNotifyPopupComponent, selector: "bsu-ul-notify-popup", usesInheritance: true, ngImport: i0, template: "<bsu-notification-item\r\n [showCloseButton]=\"true\"\r\n (actionClick)=\"onActionClick($event)\"\r\n [option]=\"notification.data\"\r\n [bodyOnly]=\"true\"\r\n (closeEvent)=\"onClose($event)\"\r\n (showEvent)=\"onShow($event)\"\r\n>\r\n</bsu-notification-item>\r\n\r\n<!-- <fd-notification-body\r\n [dir]=\"notification.data?.isRtl ? 'rtl' : 'ltr'\"\r\n (click)=\"notification.close(); notification.data?.callback()\"\r\n>\r\n <fd-avatar [circle]=\"true\" size=\"xs\" [image]=\"notification.data?.image\"></fd-avatar>\r\n <fd-notification-content>\r\n <fd-notification-header>\r\n <div fd-notification-indicator type=\"success\"></div>\r\n <h2 fd-notification-title [unread]=\"true\">\r\n {{ notification.data?.title }}\r\n </h2>\r\n </fd-notification-header>\r\n\r\n <p fd-notification-paragraph [innerHtml]=\"notification.data?.msg\"></p>\r\n </fd-notification-content>\r\n\r\n <fd-notification-actions>\r\n <fd-action-sheet #sheet *ngIf=\"notification.data?.uiOptions?.OverflowButtons; else buttonsTpl\">\r\n <fd-action-sheet-control>\r\n <button\r\n role=\"menu\"\r\n [ariaLabel]=\"'More' | bbbTranslate\"\r\n [title]=\"'More' | bbbTranslate\"\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"overflow\"\r\n ></button>\r\n </fd-action-sheet-control>\r\n\r\n <fd-action-sheet-body>\r\n <li\r\n *ngFor=\"let btn of notification.data?.UiActions\"\r\n fd-action-sheet-item\r\n [glyph]=\"btn.Icon\"\r\n [label]=\"btn.Title | bbbTranslate\"\r\n \r\n ></li>\r\n </fd-action-sheet-body>\r\n </fd-action-sheet>\r\n <ng-template #buttonsTpl>\r\n <button\r\n *ngFor=\"let btn of notification.data?.UiActions\"\r\n fd-button\r\n [glyph]=\"btn.Icon\"\r\n [fdType]=\"btn.Status\"\r\n [label]=\"btn.Title | bbbTranslate\"\r\n fdCompact\r\n \r\n ></button>\r\n </ng-template>\r\n <button\r\n *ngIf=\"!notification.data?.uiOptions?.HideDeleteButton\"\r\n fd-button\r\n fdType=\"transparent\"\r\n [ariaLabel]=\"'Delete' | bbbTranslate\"\r\n [title]=\"'Delete' | bbbTranslate\"\r\n glyph=\"decline\"\r\n \r\n fdCompact\r\n ></button>\r\n <button\r\n *ngIf=\"!notification.data?.uiOptions?.HideShowButton\"\r\n fd-button\r\n fdType=\"transparent\"\r\n [ariaLabel]=\"'Show' | bbbTranslate\"\r\n [title]=\"'Show' | bbbTranslate\"\r\n glyph=\"show\"\r\n \r\n fdCompact\r\n ></button>\r\n </fd-notification-actions>\r\n</fd-notification-body> -->\r\n", styles: ["fd-notification-body{overflow-y:hidden}:host ::ng-deep .unset-positions{top:unset!important;left:unset!important;right:unset!important;bottom:unset!important}:host ::ng-deep .top-left{top:5rem!important;left:2rem!important}:host ::ng-deep .top-right{top:5rem!important;right:2rem!important}:host ::ng-deep .bottom-left{bottom:2rem!important;left:2rem!important}:host ::ng-deep .bottom-right{bottom:2rem!important;right:2rem!important}:host ::ng-deep .center-top{top:5rem!important;right:50%!important}:host ::ng-deep .center-bottom{bottom:2rem!important;right:50%!important}\n"], dependencies: [{ kind: "component", type: i3.NotificationItemComponent, selector: "bsu-notification-item", inputs: ["option", "notificationItem", "showCloseButton", "deviceSize"], outputs: ["viewed", "remove", "actionClick", "showEvent", "closeEvent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
25
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UlNotifyPopupComponent, deps: [{ token: i1.NotificationRef }, { token: i2.PortalService }, { token: i2.NotificationService }], target: i0.ɵɵFactoryTarget.Component }); }
26
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: UlNotifyPopupComponent, selector: "bsu-ul-notify-popup", usesInheritance: true, ngImport: i0, template: "<bsu-notification-item\r\n [showCloseButton]=\"true\"\r\n (actionClick)=\"onActionClick($event)\"\r\n [option]=\"notification.data\"\r\n [bodyOnly]=\"true\"\r\n (closeEvent)=\"onClose($event)\"\r\n (showEvent)=\"onShow($event)\"\r\n>\r\n</bsu-notification-item>\r\n\r\n<!-- <fd-notification-body\r\n [dir]=\"notification.data?.isRtl ? 'rtl' : 'ltr'\"\r\n (click)=\"notification.close(); notification.data?.callback()\"\r\n>\r\n <fd-avatar [circle]=\"true\" size=\"xs\" [image]=\"notification.data?.image\"></fd-avatar>\r\n <fd-notification-content>\r\n <fd-notification-header>\r\n <div fd-notification-indicator type=\"success\"></div>\r\n <h2 fd-notification-title [unread]=\"true\">\r\n {{ notification.data?.title }}\r\n </h2>\r\n </fd-notification-header>\r\n\r\n <p fd-notification-paragraph [innerHtml]=\"notification.data?.msg\"></p>\r\n </fd-notification-content>\r\n\r\n <fd-notification-actions>\r\n <fd-action-sheet #sheet *ngIf=\"notification.data?.uiOptions?.OverflowButtons; else buttonsTpl\">\r\n <fd-action-sheet-control>\r\n <button\r\n role=\"menu\"\r\n [ariaLabel]=\"'More' | bbbTranslate\"\r\n [title]=\"'More' | bbbTranslate\"\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"overflow\"\r\n ></button>\r\n </fd-action-sheet-control>\r\n\r\n <fd-action-sheet-body>\r\n <li\r\n *ngFor=\"let btn of notification.data?.UiActions\"\r\n fd-action-sheet-item\r\n [glyph]=\"btn.Icon\"\r\n [label]=\"btn.Title | bbbTranslate\"\r\n \r\n ></li>\r\n </fd-action-sheet-body>\r\n </fd-action-sheet>\r\n <ng-template #buttonsTpl>\r\n <button\r\n *ngFor=\"let btn of notification.data?.UiActions\"\r\n fd-button\r\n [glyph]=\"btn.Icon\"\r\n [fdType]=\"btn.Status\"\r\n [label]=\"btn.Title | bbbTranslate\"\r\n fdCompact\r\n \r\n ></button>\r\n </ng-template>\r\n <button\r\n *ngIf=\"!notification.data?.uiOptions?.HideDeleteButton\"\r\n fd-button\r\n fdType=\"transparent\"\r\n [ariaLabel]=\"'Delete' | bbbTranslate\"\r\n [title]=\"'Delete' | bbbTranslate\"\r\n glyph=\"decline\"\r\n \r\n fdCompact\r\n ></button>\r\n <button\r\n *ngIf=\"!notification.data?.uiOptions?.HideShowButton\"\r\n fd-button\r\n fdType=\"transparent\"\r\n [ariaLabel]=\"'Show' | bbbTranslate\"\r\n [title]=\"'Show' | bbbTranslate\"\r\n glyph=\"show\"\r\n \r\n fdCompact\r\n ></button>\r\n </fd-notification-actions>\r\n</fd-notification-body> -->\r\n", styles: ["fd-notification-body{overflow-y:hidden}:host ::ng-deep .unset-positions{top:unset!important;left:unset!important;right:unset!important;bottom:unset!important}:host ::ng-deep .top-left{top:5rem!important;left:2rem!important}:host ::ng-deep .top-right{top:5rem!important;right:2rem!important}:host ::ng-deep .bottom-left{bottom:2rem!important;left:2rem!important}:host ::ng-deep .bottom-right{bottom:2rem!important;right:2rem!important}:host ::ng-deep .center-top{top:5rem!important;right:50%!important}:host ::ng-deep .center-bottom{bottom:2rem!important;right:50%!important}\n"], dependencies: [{ kind: "component", type: i3.NotificationItemComponent, selector: "bsu-notification-item", inputs: ["option", "notificationItem", "showCloseButton", "deviceSize"], outputs: ["viewed", "remove", "actionClick", "showEvent", "closeEvent"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
27
27
  }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.5", ngImport: i0, type: UlNotifyPopupComponent, decorators: [{
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UlNotifyPopupComponent, decorators: [{
29
29
  type: Component,
30
30
  args: [{ selector: 'bsu-ul-notify-popup', changeDetection: ChangeDetectionStrategy.OnPush, template: "<bsu-notification-item\r\n [showCloseButton]=\"true\"\r\n (actionClick)=\"onActionClick($event)\"\r\n [option]=\"notification.data\"\r\n [bodyOnly]=\"true\"\r\n (closeEvent)=\"onClose($event)\"\r\n (showEvent)=\"onShow($event)\"\r\n>\r\n</bsu-notification-item>\r\n\r\n<!-- <fd-notification-body\r\n [dir]=\"notification.data?.isRtl ? 'rtl' : 'ltr'\"\r\n (click)=\"notification.close(); notification.data?.callback()\"\r\n>\r\n <fd-avatar [circle]=\"true\" size=\"xs\" [image]=\"notification.data?.image\"></fd-avatar>\r\n <fd-notification-content>\r\n <fd-notification-header>\r\n <div fd-notification-indicator type=\"success\"></div>\r\n <h2 fd-notification-title [unread]=\"true\">\r\n {{ notification.data?.title }}\r\n </h2>\r\n </fd-notification-header>\r\n\r\n <p fd-notification-paragraph [innerHtml]=\"notification.data?.msg\"></p>\r\n </fd-notification-content>\r\n\r\n <fd-notification-actions>\r\n <fd-action-sheet #sheet *ngIf=\"notification.data?.uiOptions?.OverflowButtons; else buttonsTpl\">\r\n <fd-action-sheet-control>\r\n <button\r\n role=\"menu\"\r\n [ariaLabel]=\"'More' | bbbTranslate\"\r\n [title]=\"'More' | bbbTranslate\"\r\n fd-button\r\n fdType=\"transparent\"\r\n glyph=\"overflow\"\r\n ></button>\r\n </fd-action-sheet-control>\r\n\r\n <fd-action-sheet-body>\r\n <li\r\n *ngFor=\"let btn of notification.data?.UiActions\"\r\n fd-action-sheet-item\r\n [glyph]=\"btn.Icon\"\r\n [label]=\"btn.Title | bbbTranslate\"\r\n \r\n ></li>\r\n </fd-action-sheet-body>\r\n </fd-action-sheet>\r\n <ng-template #buttonsTpl>\r\n <button\r\n *ngFor=\"let btn of notification.data?.UiActions\"\r\n fd-button\r\n [glyph]=\"btn.Icon\"\r\n [fdType]=\"btn.Status\"\r\n [label]=\"btn.Title | bbbTranslate\"\r\n fdCompact\r\n \r\n ></button>\r\n </ng-template>\r\n <button\r\n *ngIf=\"!notification.data?.uiOptions?.HideDeleteButton\"\r\n fd-button\r\n fdType=\"transparent\"\r\n [ariaLabel]=\"'Delete' | bbbTranslate\"\r\n [title]=\"'Delete' | bbbTranslate\"\r\n glyph=\"decline\"\r\n \r\n fdCompact\r\n ></button>\r\n <button\r\n *ngIf=\"!notification.data?.uiOptions?.HideShowButton\"\r\n fd-button\r\n fdType=\"transparent\"\r\n [ariaLabel]=\"'Show' | bbbTranslate\"\r\n [title]=\"'Show' | bbbTranslate\"\r\n glyph=\"show\"\r\n \r\n fdCompact\r\n ></button>\r\n </fd-notification-actions>\r\n</fd-notification-body> -->\r\n", styles: ["fd-notification-body{overflow-y:hidden}:host ::ng-deep .unset-positions{top:unset!important;left:unset!important;right:unset!important;bottom:unset!important}:host ::ng-deep .top-left{top:5rem!important;left:2rem!important}:host ::ng-deep .top-right{top:5rem!important;right:2rem!important}:host ::ng-deep .bottom-left{bottom:2rem!important;left:2rem!important}:host ::ng-deep .bottom-right{bottom:2rem!important;right:2rem!important}:host ::ng-deep .center-top{top:5rem!important;right:50%!important}:host ::ng-deep .center-bottom{bottom:2rem!important;right:50%!important}\n"] }]
31
31
  }], ctorParameters: () => [{ type: i1.NotificationRef }, { type: i2.PortalService }, { type: i2.NotificationService }] });
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWwtbm90aWZ5LXBvcHVwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL3VsLW5vdGlmeS1wb3B1cC91bC1ub3RpZnktcG9wdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWwtbm90aWZ5LXBvcHVwL3VsLW5vdGlmeS1wb3B1cC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5FLE9BQU8sRUFDSCxhQUFhLEVBTWhCLE1BQU0sc0JBQXNCLENBQUM7Ozs7O0FBUTlCLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxhQUFhO0lBQ3JELFlBQ1csWUFBNkIsRUFDNUIsY0FBNkIsRUFDN0Isb0JBQXlDO1FBRWpELEtBQUssRUFBRSxDQUFDO1FBSkQsaUJBQVksR0FBWixZQUFZLENBQWlCO1FBQzVCLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQzdCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBcUI7SUFHckQsQ0FBQztJQUNELGFBQWEsQ0FBQyxDQUFzRDtRQUNoRSxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzFCLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxjQUFjLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUNELE9BQU8sQ0FBQyxDQUFDO1FBQ0wsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBQ0QsTUFBTSxDQUFDLENBQXlEO1FBQzVELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzRCxDQUFDOzhHQWxCUSxzQkFBc0I7a0dBQXRCLHNCQUFzQixrRkNqQm5DLDRpR0FrRkE7OzJGRGpFYSxzQkFBc0I7a0JBTmxDLFNBQVM7K0JBQ0kscUJBQXFCLG1CQUdkLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25SZWYgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvbm90aWZpY2F0aW9uJztcbmltcG9ydCB7XG4gICAgQmFzZUNvbXBvbmVudCxcbiAgICBNZXRhb2JqZWN0RGF0YU1vZGVsLFxuICAgIE5vdGlmaWNhdGlvbkl0ZW0sXG4gICAgTm90aWZpY2F0aW9uQWN0aW9uLFxuICAgIFBvcnRhbFNlcnZpY2UsXG4gICAgTm90aWZpY2F0aW9uU2VydmljZVxufSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYnN1LXVsLW5vdGlmeS1wb3B1cCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3VsLW5vdGlmeS1wb3B1cC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdWwtbm90aWZ5LXBvcHVwLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgVWxOb3RpZnlQb3B1cENvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgbm90aWZpY2F0aW9uOiBOb3RpZmljYXRpb25SZWYsXG4gICAgICAgIHByaXZhdGUgX3BvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgX25vdGlmaWNhdGlvblNlcnZpY2U6IE5vdGlmaWNhdGlvblNlcnZpY2VcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG4gICAgb25BY3Rpb25DbGljayhlOiB7IGl0ZW06IE5vdGlmaWNhdGlvbkl0ZW07IGJ0bjogTm90aWZpY2F0aW9uQWN0aW9uIH0pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ub3RpZmljYXRpb24uY2xvc2UoKTtcbiAgICAgICAgY29uc3QgeyBpdGVtLCBidG4gfSA9IGU7XG4gICAgICAgIHRoaXMuX3BvcnRhbFNlcnZpY2UuRXhlY3V0ZU5vdGlmaWNhdGlvbkFjdGlvbihpdGVtLlRhZywgYnRuLlRpdGxlKTtcbiAgICB9XG4gICAgb25DbG9zZShlKTogdm9pZCB7XG4gICAgICAgIHRoaXMubm90aWZpY2F0aW9uLmNsb3NlKCk7XG4gICAgfVxuICAgIG9uU2hvdyhlOiB7IHRhZzogc3RyaW5nOyBtbzogTWV0YW9iamVjdERhdGFNb2RlbDsgbmFtYTogc3RyaW5nIH0pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fbm90aWZpY2F0aW9uU2VydmljZS5TaG93Tm90aWZpY2F0aW9uUmVsYXRlZE1vKGUpO1xuICAgIH1cbn1cbiIsIjxic3Utbm90aWZpY2F0aW9uLWl0ZW1cclxuICAgIFtzaG93Q2xvc2VCdXR0b25dPVwidHJ1ZVwiXHJcbiAgICAoYWN0aW9uQ2xpY2spPVwib25BY3Rpb25DbGljaygkZXZlbnQpXCJcclxuICAgIFtvcHRpb25dPVwibm90aWZpY2F0aW9uLmRhdGFcIlxyXG4gICAgW2JvZHlPbmx5XT1cInRydWVcIlxyXG4gICAgKGNsb3NlRXZlbnQpPVwib25DbG9zZSgkZXZlbnQpXCJcclxuICAgIChzaG93RXZlbnQpPVwib25TaG93KCRldmVudClcIlxyXG4+XHJcbjwvYnN1LW5vdGlmaWNhdGlvbi1pdGVtPlxyXG5cclxuPCEtLSA8ZmQtbm90aWZpY2F0aW9uLWJvZHlcclxuICAgIFtkaXJdPVwibm90aWZpY2F0aW9uLmRhdGE/LmlzUnRsID8gJ3J0bCcgOiAnbHRyJ1wiXHJcbiAgICAoY2xpY2spPVwibm90aWZpY2F0aW9uLmNsb3NlKCk7IG5vdGlmaWNhdGlvbi5kYXRhPy5jYWxsYmFjaygpXCJcclxuPlxyXG4gICAgPGZkLWF2YXRhciBbY2lyY2xlXT1cInRydWVcIiBzaXplPVwieHNcIiBbaW1hZ2VdPVwibm90aWZpY2F0aW9uLmRhdGE/LmltYWdlXCI+PC9mZC1hdmF0YXI+XHJcbiAgICA8ZmQtbm90aWZpY2F0aW9uLWNvbnRlbnQ+XHJcbiAgICAgICAgPGZkLW5vdGlmaWNhdGlvbi1oZWFkZXI+XHJcbiAgICAgICAgICAgIDxkaXYgZmQtbm90aWZpY2F0aW9uLWluZGljYXRvciB0eXBlPVwic3VjY2Vzc1wiPjwvZGl2PlxyXG4gICAgICAgICAgICA8aDIgZmQtbm90aWZpY2F0aW9uLXRpdGxlIFt1bnJlYWRdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAge3sgbm90aWZpY2F0aW9uLmRhdGE/LnRpdGxlIH19XHJcbiAgICAgICAgICAgIDwvaDI+XHJcbiAgICAgICAgPC9mZC1ub3RpZmljYXRpb24taGVhZGVyPlxyXG5cclxuICAgICAgICA8cCBmZC1ub3RpZmljYXRpb24tcGFyYWdyYXBoIFtpbm5lckh0bWxdPVwibm90aWZpY2F0aW9uLmRhdGE/Lm1zZ1wiPjwvcD5cclxuICAgIDwvZmQtbm90aWZpY2F0aW9uLWNvbnRlbnQ+XHJcblxyXG4gICAgPGZkLW5vdGlmaWNhdGlvbi1hY3Rpb25zPlxyXG4gICAgICAgIDxmZC1hY3Rpb24tc2hlZXQgI3NoZWV0ICpuZ0lmPVwibm90aWZpY2F0aW9uLmRhdGE/LnVpT3B0aW9ucz8uT3ZlcmZsb3dCdXR0b25zOyBlbHNlIGJ1dHRvbnNUcGxcIj5cclxuICAgICAgICAgICAgPGZkLWFjdGlvbi1zaGVldC1jb250cm9sPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgIHJvbGU9XCJtZW51XCJcclxuICAgICAgICAgICAgICAgICAgICBbYXJpYUxhYmVsXT1cIidNb3JlJyB8IGJiYlRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cIidNb3JlJyB8IGJiYlRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgZmQtYnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgZmRUeXBlPVwidHJhbnNwYXJlbnRcIlxyXG4gICAgICAgICAgICAgICAgICAgIGdseXBoPVwib3ZlcmZsb3dcIlxyXG4gICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2ZkLWFjdGlvbi1zaGVldC1jb250cm9sPlxyXG5cclxuICAgICAgICAgICAgPGZkLWFjdGlvbi1zaGVldC1ib2R5PlxyXG4gICAgICAgICAgICAgICAgPGxpXHJcbiAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGJ0biBvZiBub3RpZmljYXRpb24uZGF0YT8uVWlBY3Rpb25zXCJcclxuICAgICAgICAgICAgICAgICAgICBmZC1hY3Rpb24tc2hlZXQtaXRlbVxyXG4gICAgICAgICAgICAgICAgICAgIFtnbHlwaF09XCJidG4uSWNvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cImJ0bi5UaXRsZSB8IGJiYlRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgID48L2xpPlxyXG4gICAgICAgICAgICA8L2ZkLWFjdGlvbi1zaGVldC1ib2R5PlxyXG4gICAgICAgIDwvZmQtYWN0aW9uLXNoZWV0PlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjYnV0dG9uc1RwbD5cclxuICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGJ0biBvZiBub3RpZmljYXRpb24uZGF0YT8uVWlBY3Rpb25zXCJcclxuICAgICAgICAgICAgICAgIGZkLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgW2dseXBoXT1cImJ0bi5JY29uXCJcclxuICAgICAgICAgICAgICAgIFtmZFR5cGVdPVwiYnRuLlN0YXR1c1wiXHJcbiAgICAgICAgICAgICAgICBbbGFiZWxdPVwiYnRuLlRpdGxlIHwgYmJiVHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgIGZkQ29tcGFjdFxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgID48L2J1dHRvbj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgKm5nSWY9XCIhbm90aWZpY2F0aW9uLmRhdGE/LnVpT3B0aW9ucz8uSGlkZURlbGV0ZUJ1dHRvblwiXHJcbiAgICAgICAgICAgIGZkLWJ1dHRvblxyXG4gICAgICAgICAgICBmZFR5cGU9XCJ0cmFuc3BhcmVudFwiXHJcbiAgICAgICAgICAgIFthcmlhTGFiZWxdPVwiJ0RlbGV0ZScgfCBiYmJUcmFuc2xhdGVcIlxyXG4gICAgICAgICAgICBbdGl0bGVdPVwiJ0RlbGV0ZScgfCBiYmJUcmFuc2xhdGVcIlxyXG4gICAgICAgICAgICBnbHlwaD1cImRlY2xpbmVcIlxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgZmRDb21wYWN0XHJcbiAgICAgICAgPjwvYnV0dG9uPlxyXG4gICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgKm5nSWY9XCIhbm90aWZpY2F0aW9uLmRhdGE/LnVpT3B0aW9ucz8uSGlkZVNob3dCdXR0b25cIlxyXG4gICAgICAgICAgICBmZC1idXR0b25cclxuICAgICAgICAgICAgZmRUeXBlPVwidHJhbnNwYXJlbnRcIlxyXG4gICAgICAgICAgICBbYXJpYUxhYmVsXT1cIidTaG93JyB8IGJiYlRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgIFt0aXRsZV09XCInU2hvdycgfCBiYmJUcmFuc2xhdGVcIlxyXG4gICAgICAgICAgICBnbHlwaD1cInNob3dcIlxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgZmRDb21wYWN0XHJcbiAgICAgICAgPjwvYnV0dG9uPlxyXG4gICAgPC9mZC1ub3RpZmljYXRpb24tYWN0aW9ucz5cclxuPC9mZC1ub3RpZmljYXRpb24tYm9keT4gLS0+XHJcbiJdfQ==
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWwtbm90aWZ5LXBvcHVwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JhcnNhLXNhcC11aS9zcmMvbGliL3VsLW5vdGlmeS1wb3B1cC91bC1ub3RpZnktcG9wdXAuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmFyc2Etc2FwLXVpL3NyYy9saWIvdWwtbm90aWZ5LXBvcHVwL3VsLW5vdGlmeS1wb3B1cC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5FLE9BQU8sRUFDSCxhQUFhLEVBTWhCLE1BQU0sc0JBQXNCLENBQUM7Ozs7O0FBUTlCLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxhQUFhO0lBQ3JELFlBQ1csWUFBNkIsRUFDNUIsY0FBNkIsRUFDN0Isb0JBQXlDO1FBRWpELEtBQUssRUFBRSxDQUFDO1FBSkQsaUJBQVksR0FBWixZQUFZLENBQWlCO1FBQzVCLG1CQUFjLEdBQWQsY0FBYyxDQUFlO1FBQzdCLHlCQUFvQixHQUFwQixvQkFBb0IsQ0FBcUI7SUFHckQsQ0FBQztJQUNELGFBQWEsQ0FBQyxDQUFzRDtRQUNoRSxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzFCLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxjQUFjLENBQUMseUJBQXlCLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUNELE9BQU8sQ0FBQyxDQUFDO1FBQ0wsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUM5QixDQUFDO0lBQ0QsTUFBTSxDQUFDLENBQXlEO1FBQzVELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyx5QkFBeUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMzRCxDQUFDOytHQWxCUSxzQkFBc0I7bUdBQXRCLHNCQUFzQixrRkNqQm5DLDRpR0FrRkE7OzRGRGpFYSxzQkFBc0I7a0JBTmxDLFNBQVM7K0JBQ0kscUJBQXFCLG1CQUdkLHVCQUF1QixDQUFDLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25SZWYgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvbm90aWZpY2F0aW9uJztcbmltcG9ydCB7XG4gICAgQmFzZUNvbXBvbmVudCxcbiAgICBNZXRhb2JqZWN0RGF0YU1vZGVsLFxuICAgIE5vdGlmaWNhdGlvbkl0ZW0sXG4gICAgTm90aWZpY2F0aW9uQWN0aW9uLFxuICAgIFBvcnRhbFNlcnZpY2UsXG4gICAgTm90aWZpY2F0aW9uU2VydmljZVxufSBmcm9tICdiYXJzYS1ub3Zpbi1yYXktY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYnN1LXVsLW5vdGlmeS1wb3B1cCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3VsLW5vdGlmeS1wb3B1cC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vdWwtbm90aWZ5LXBvcHVwLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcbn0pXG5leHBvcnQgY2xhc3MgVWxOb3RpZnlQb3B1cENvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQge1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwdWJsaWMgbm90aWZpY2F0aW9uOiBOb3RpZmljYXRpb25SZWYsXG4gICAgICAgIHByaXZhdGUgX3BvcnRhbFNlcnZpY2U6IFBvcnRhbFNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgX25vdGlmaWNhdGlvblNlcnZpY2U6IE5vdGlmaWNhdGlvblNlcnZpY2VcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG4gICAgb25BY3Rpb25DbGljayhlOiB7IGl0ZW06IE5vdGlmaWNhdGlvbkl0ZW07IGJ0bjogTm90aWZpY2F0aW9uQWN0aW9uIH0pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5ub3RpZmljYXRpb24uY2xvc2UoKTtcbiAgICAgICAgY29uc3QgeyBpdGVtLCBidG4gfSA9IGU7XG4gICAgICAgIHRoaXMuX3BvcnRhbFNlcnZpY2UuRXhlY3V0ZU5vdGlmaWNhdGlvbkFjdGlvbihpdGVtLlRhZywgYnRuLlRpdGxlKTtcbiAgICB9XG4gICAgb25DbG9zZShlKTogdm9pZCB7XG4gICAgICAgIHRoaXMubm90aWZpY2F0aW9uLmNsb3NlKCk7XG4gICAgfVxuICAgIG9uU2hvdyhlOiB7IHRhZzogc3RyaW5nOyBtbzogTWV0YW9iamVjdERhdGFNb2RlbDsgbmFtYTogc3RyaW5nIH0pOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fbm90aWZpY2F0aW9uU2VydmljZS5TaG93Tm90aWZpY2F0aW9uUmVsYXRlZE1vKGUpO1xuICAgIH1cbn1cbiIsIjxic3Utbm90aWZpY2F0aW9uLWl0ZW1cclxuICAgIFtzaG93Q2xvc2VCdXR0b25dPVwidHJ1ZVwiXHJcbiAgICAoYWN0aW9uQ2xpY2spPVwib25BY3Rpb25DbGljaygkZXZlbnQpXCJcclxuICAgIFtvcHRpb25dPVwibm90aWZpY2F0aW9uLmRhdGFcIlxyXG4gICAgW2JvZHlPbmx5XT1cInRydWVcIlxyXG4gICAgKGNsb3NlRXZlbnQpPVwib25DbG9zZSgkZXZlbnQpXCJcclxuICAgIChzaG93RXZlbnQpPVwib25TaG93KCRldmVudClcIlxyXG4+XHJcbjwvYnN1LW5vdGlmaWNhdGlvbi1pdGVtPlxyXG5cclxuPCEtLSA8ZmQtbm90aWZpY2F0aW9uLWJvZHlcclxuICAgIFtkaXJdPVwibm90aWZpY2F0aW9uLmRhdGE/LmlzUnRsID8gJ3J0bCcgOiAnbHRyJ1wiXHJcbiAgICAoY2xpY2spPVwibm90aWZpY2F0aW9uLmNsb3NlKCk7IG5vdGlmaWNhdGlvbi5kYXRhPy5jYWxsYmFjaygpXCJcclxuPlxyXG4gICAgPGZkLWF2YXRhciBbY2lyY2xlXT1cInRydWVcIiBzaXplPVwieHNcIiBbaW1hZ2VdPVwibm90aWZpY2F0aW9uLmRhdGE/LmltYWdlXCI+PC9mZC1hdmF0YXI+XHJcbiAgICA8ZmQtbm90aWZpY2F0aW9uLWNvbnRlbnQ+XHJcbiAgICAgICAgPGZkLW5vdGlmaWNhdGlvbi1oZWFkZXI+XHJcbiAgICAgICAgICAgIDxkaXYgZmQtbm90aWZpY2F0aW9uLWluZGljYXRvciB0eXBlPVwic3VjY2Vzc1wiPjwvZGl2PlxyXG4gICAgICAgICAgICA8aDIgZmQtbm90aWZpY2F0aW9uLXRpdGxlIFt1bnJlYWRdPVwidHJ1ZVwiPlxyXG4gICAgICAgICAgICAgICAge3sgbm90aWZpY2F0aW9uLmRhdGE/LnRpdGxlIH19XHJcbiAgICAgICAgICAgIDwvaDI+XHJcbiAgICAgICAgPC9mZC1ub3RpZmljYXRpb24taGVhZGVyPlxyXG5cclxuICAgICAgICA8cCBmZC1ub3RpZmljYXRpb24tcGFyYWdyYXBoIFtpbm5lckh0bWxdPVwibm90aWZpY2F0aW9uLmRhdGE/Lm1zZ1wiPjwvcD5cclxuICAgIDwvZmQtbm90aWZpY2F0aW9uLWNvbnRlbnQ+XHJcblxyXG4gICAgPGZkLW5vdGlmaWNhdGlvbi1hY3Rpb25zPlxyXG4gICAgICAgIDxmZC1hY3Rpb24tc2hlZXQgI3NoZWV0ICpuZ0lmPVwibm90aWZpY2F0aW9uLmRhdGE/LnVpT3B0aW9ucz8uT3ZlcmZsb3dCdXR0b25zOyBlbHNlIGJ1dHRvbnNUcGxcIj5cclxuICAgICAgICAgICAgPGZkLWFjdGlvbi1zaGVldC1jb250cm9sPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgICAgIHJvbGU9XCJtZW51XCJcclxuICAgICAgICAgICAgICAgICAgICBbYXJpYUxhYmVsXT1cIidNb3JlJyB8IGJiYlRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3RpdGxlXT1cIidNb3JlJyB8IGJiYlRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgZmQtYnV0dG9uXHJcbiAgICAgICAgICAgICAgICAgICAgZmRUeXBlPVwidHJhbnNwYXJlbnRcIlxyXG4gICAgICAgICAgICAgICAgICAgIGdseXBoPVwib3ZlcmZsb3dcIlxyXG4gICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxyXG4gICAgICAgICAgICA8L2ZkLWFjdGlvbi1zaGVldC1jb250cm9sPlxyXG5cclxuICAgICAgICAgICAgPGZkLWFjdGlvbi1zaGVldC1ib2R5PlxyXG4gICAgICAgICAgICAgICAgPGxpXHJcbiAgICAgICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGJ0biBvZiBub3RpZmljYXRpb24uZGF0YT8uVWlBY3Rpb25zXCJcclxuICAgICAgICAgICAgICAgICAgICBmZC1hY3Rpb24tc2hlZXQtaXRlbVxyXG4gICAgICAgICAgICAgICAgICAgIFtnbHlwaF09XCJidG4uSWNvblwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cImJ0bi5UaXRsZSB8IGJiYlRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICBcclxuICAgICAgICAgICAgICAgID48L2xpPlxyXG4gICAgICAgICAgICA8L2ZkLWFjdGlvbi1zaGVldC1ib2R5PlxyXG4gICAgICAgIDwvZmQtYWN0aW9uLXNoZWV0PlxyXG4gICAgICAgIDxuZy10ZW1wbGF0ZSAjYnV0dG9uc1RwbD5cclxuICAgICAgICAgICAgPGJ1dHRvblxyXG4gICAgICAgICAgICAgICAgKm5nRm9yPVwibGV0IGJ0biBvZiBub3RpZmljYXRpb24uZGF0YT8uVWlBY3Rpb25zXCJcclxuICAgICAgICAgICAgICAgIGZkLWJ1dHRvblxyXG4gICAgICAgICAgICAgICAgW2dseXBoXT1cImJ0bi5JY29uXCJcclxuICAgICAgICAgICAgICAgIFtmZFR5cGVdPVwiYnRuLlN0YXR1c1wiXHJcbiAgICAgICAgICAgICAgICBbbGFiZWxdPVwiYnRuLlRpdGxlIHwgYmJiVHJhbnNsYXRlXCJcclxuICAgICAgICAgICAgICAgIGZkQ29tcGFjdFxyXG4gICAgICAgICAgICAgICAgXHJcbiAgICAgICAgICAgID48L2J1dHRvbj5cclxuICAgICAgICA8L25nLXRlbXBsYXRlPlxyXG4gICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgKm5nSWY9XCIhbm90aWZpY2F0aW9uLmRhdGE/LnVpT3B0aW9ucz8uSGlkZURlbGV0ZUJ1dHRvblwiXHJcbiAgICAgICAgICAgIGZkLWJ1dHRvblxyXG4gICAgICAgICAgICBmZFR5cGU9XCJ0cmFuc3BhcmVudFwiXHJcbiAgICAgICAgICAgIFthcmlhTGFiZWxdPVwiJ0RlbGV0ZScgfCBiYmJUcmFuc2xhdGVcIlxyXG4gICAgICAgICAgICBbdGl0bGVdPVwiJ0RlbGV0ZScgfCBiYmJUcmFuc2xhdGVcIlxyXG4gICAgICAgICAgICBnbHlwaD1cImRlY2xpbmVcIlxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgZmRDb21wYWN0XHJcbiAgICAgICAgPjwvYnV0dG9uPlxyXG4gICAgICAgIDxidXR0b25cclxuICAgICAgICAgICAgKm5nSWY9XCIhbm90aWZpY2F0aW9uLmRhdGE/LnVpT3B0aW9ucz8uSGlkZVNob3dCdXR0b25cIlxyXG4gICAgICAgICAgICBmZC1idXR0b25cclxuICAgICAgICAgICAgZmRUeXBlPVwidHJhbnNwYXJlbnRcIlxyXG4gICAgICAgICAgICBbYXJpYUxhYmVsXT1cIidTaG93JyB8IGJiYlRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgIFt0aXRsZV09XCInU2hvdycgfCBiYmJUcmFuc2xhdGVcIlxyXG4gICAgICAgICAgICBnbHlwaD1cInNob3dcIlxyXG4gICAgICAgICAgICBcclxuICAgICAgICAgICAgZmRDb21wYWN0XHJcbiAgICAgICAgPjwvYnV0dG9uPlxyXG4gICAgPC9mZC1ub3RpZmljYXRpb24tYWN0aW9ucz5cclxuPC9mZC1ub3RpZmljYXRpb24tYm9keT4gLS0+XHJcbiJdfQ==