@eui/components 17.0.0-next.4 → 17.0.0-next.5

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 (510) hide show
  1. package/directives/eui-clearable.directive.d.ts.map +1 -1
  2. package/directives/eui-tooltip/eui-tooltip.directive.d.ts.map +1 -1
  3. package/esm2022/directives/eui-clearable.directive.mjs +8 -9
  4. package/esm2022/directives/eui-has-permission.directive.mjs +7 -7
  5. package/esm2022/directives/eui-loading.directive.mjs +3 -3
  6. package/esm2022/directives/eui-maxlength.directive.mjs +7 -7
  7. package/esm2022/directives/eui-resizable/eui-resizable.component.mjs +3 -3
  8. package/esm2022/directives/eui-resizable/eui-resizable.directive.mjs +4 -5
  9. package/esm2022/directives/eui-resizable/eui-resizable.module.mjs +4 -4
  10. package/esm2022/directives/eui-scroll-handler.directive.mjs +10 -10
  11. package/esm2022/directives/eui-smooth-scroll.directive.mjs +10 -10
  12. package/esm2022/directives/eui-template.directive.mjs +7 -7
  13. package/esm2022/directives/eui-tooltip/container/eui-tooltip-container.component.mjs +3 -3
  14. package/esm2022/directives/eui-tooltip/eui-tooltip.directive.mjs +58 -26
  15. package/esm2022/directives/eui-tooltip/eui-tooltip.module.mjs +4 -4
  16. package/esm2022/eui-alert/eui-alert.component.mjs +9 -8
  17. package/esm2022/eui-all/eui-all.module.mjs +9 -10
  18. package/esm2022/eui-autocomplete/eui-autocomplete.component.mjs +31 -15
  19. package/esm2022/eui-autocomplete/eui-autocomplete.module.mjs +4 -4
  20. package/esm2022/eui-autocomplete/models/eui-autocomplete-item.model.mjs +2 -1
  21. package/esm2022/eui-badge/eui-badge.component.mjs +8 -8
  22. package/esm2022/eui-block-content/eui-block-content.component.mjs +5 -5
  23. package/esm2022/eui-block-content/eui-block-content.module.mjs +4 -4
  24. package/esm2022/eui-block-document/eui-block-document.component.mjs +3 -3
  25. package/esm2022/eui-block-document/eui-block-document.module.mjs +4 -4
  26. package/esm2022/eui-button/eui-button.component.mjs +10 -10
  27. package/esm2022/eui-button-group/eui-button-group.component.mjs +7 -7
  28. package/esm2022/eui-buttons/eui-buttons.component.mjs +17 -17
  29. package/esm2022/eui-card/components/eui-card-content/eui-card-content.component.mjs +3 -3
  30. package/esm2022/eui-card/components/eui-card-footer/eui-card-footer-action-buttons.component.mjs +3 -3
  31. package/esm2022/eui-card/components/eui-card-footer/eui-card-footer-action-icons.component.mjs +3 -3
  32. package/esm2022/eui-card/components/eui-card-footer/eui-card-footer-menu-content.component.mjs +3 -3
  33. package/esm2022/eui-card/components/eui-card-footer/eui-card-footer.component.mjs +3 -3
  34. package/esm2022/eui-card/components/eui-card-header/eui-card-header-left-content.component.mjs +3 -3
  35. package/esm2022/eui-card/components/eui-card-header/eui-card-header-right-content.component.mjs +3 -3
  36. package/esm2022/eui-card/components/eui-card-header/eui-card-header-subtitle.component.mjs +3 -3
  37. package/esm2022/eui-card/components/eui-card-header/eui-card-header-title.component.mjs +3 -3
  38. package/esm2022/eui-card/components/eui-card-header/eui-card-header.component.mjs +3 -3
  39. package/esm2022/eui-card/components/eui-card-header-body/eui-card-header-body.component.mjs +3 -3
  40. package/esm2022/eui-card/components/eui-card-media/eui-card-media.component.mjs +3 -3
  41. package/esm2022/eui-card/eui-card.component.mjs +3 -3
  42. package/esm2022/eui-card/eui-card.module.mjs +4 -4
  43. package/esm2022/eui-card/services/ui-state.service.mjs +3 -3
  44. package/esm2022/eui-chip/eui-chip.component.mjs +3 -3
  45. package/esm2022/eui-chip/eui-chip.module.mjs +4 -4
  46. package/esm2022/eui-chip-list/eui-chip-list.component.mjs +9 -9
  47. package/esm2022/eui-chip-list/eui-chip-list.module.mjs +4 -4
  48. package/esm2022/eui-chip-list/services/eui-chip-list-drag.service.mjs +3 -3
  49. package/esm2022/eui-dashboard-button/eui-dashboard-button.component.mjs +15 -15
  50. package/esm2022/eui-dashboard-card/eui-dashboard-card.component.mjs +9 -8
  51. package/esm2022/eui-date-range-selector/eui-date-range-selector.component.mjs +19 -6
  52. package/esm2022/eui-date-range-selector/eui-date-range-selector.module.mjs +4 -4
  53. package/esm2022/eui-datepicker/eui-datepicker.component.mjs +21 -21
  54. package/esm2022/eui-datepicker/eui-datepicker.module.mjs +4 -4
  55. package/esm2022/eui-dialog/container/eui-dialog-container.component.mjs +3 -3
  56. package/esm2022/eui-dialog/eui-dialog.component.mjs +10 -10
  57. package/esm2022/eui-dialog/eui-dialog.module.mjs +4 -4
  58. package/esm2022/eui-dialog/services/eui-dialog.service.mjs +5 -5
  59. package/esm2022/eui-dimmer/dimmer.component.mjs +4 -4
  60. package/esm2022/eui-dimmer/dimmer.module.mjs +4 -4
  61. package/esm2022/eui-disable-content/eui-disable-content.component.mjs +10 -10
  62. package/esm2022/eui-discussion-thread/eui-discussion-thread-item.component.mjs +5 -5
  63. package/esm2022/eui-discussion-thread/eui-discussion-thread.component.mjs +3 -3
  64. package/esm2022/eui-discussion-thread/eui-discussion-thread.module.mjs +4 -4
  65. package/esm2022/eui-dropdown/directives/eui-dropdown-content.directive.mjs +3 -3
  66. package/esm2022/eui-dropdown/dropdown-item/eui-dropdown-item.component.mjs +10 -8
  67. package/esm2022/eui-dropdown/eui-dropdown.component.mjs +3 -3
  68. package/esm2022/eui-dropdown/eui-dropdown.module.mjs +8 -8
  69. package/esm2022/eui-dropdown/eui-dropdown.service.mjs +3 -3
  70. package/esm2022/eui-feedback-message/eui-feedback-message.component.mjs +3 -3
  71. package/esm2022/eui-feedback-message/eui-feedback-message.module.mjs +4 -4
  72. package/esm2022/eui-fieldset/eui-fieldset.component.mjs +9 -9
  73. package/esm2022/eui-fieldset/eui-fieldset.module.mjs +4 -4
  74. package/esm2022/eui-file-upload/eui-file-upload.component.mjs +32 -18
  75. package/esm2022/eui-file-upload/eui-file-upload.module.mjs +6 -17
  76. package/esm2022/eui-file-upload/file-preview/file-preview.component.mjs +6 -4
  77. package/esm2022/eui-file-upload/pipes/filesize.pipe.mjs +3 -3
  78. package/esm2022/eui-file-upload/progress/eui-file-upload-progress.component.mjs +3 -3
  79. package/esm2022/eui-file-upload/utils/eui-file-upload.utils.mjs +4 -4
  80. package/esm2022/eui-file-upload/utils/eui-file-upload.validators.mjs +1 -1
  81. package/esm2022/eui-file-upload/utils/mime-types.mjs +3 -1
  82. package/esm2022/eui-growl/eui-growl.component.mjs +4 -4
  83. package/esm2022/eui-growl/eui-growl.module.mjs +4 -4
  84. package/esm2022/eui-growl/services/eui-growl.service.mjs +3 -3
  85. package/esm2022/eui-icon/eui-icon-color.component.mjs +3 -3
  86. package/esm2022/eui-icon/eui-icon-svg.component.mjs +3 -3
  87. package/esm2022/eui-icon/eui-icon.component.mjs +3 -3
  88. package/esm2022/eui-icon/eui-icon.module.mjs +4 -4
  89. package/esm2022/eui-icon-toggle/eui-icon-toggle.component.mjs +3 -3
  90. package/esm2022/eui-icon-toggle/eui-icon-toggle.module.mjs +4 -4
  91. package/esm2022/eui-input-checkbox/eui-input-checkbox.component.mjs +4 -4
  92. package/esm2022/eui-input-checkbox/eui-input-checkbox.module.mjs +4 -4
  93. package/esm2022/eui-input-group/eui-input-group.component.mjs +4 -4
  94. package/esm2022/eui-input-group/eui-input-group.module.mjs +4 -4
  95. package/esm2022/eui-input-number/eui-input-number.component.mjs +4 -4
  96. package/esm2022/eui-input-number/eui-input-number.module.mjs +4 -4
  97. package/esm2022/eui-input-number/eui-number-control.directive.mjs +4 -4
  98. package/esm2022/eui-input-radio/eui-input-radio.component.mjs +9 -11
  99. package/esm2022/eui-input-radio/eui-input-radio.module.mjs +4 -4
  100. package/esm2022/eui-input-text/eui-input-text.component.mjs +5 -5
  101. package/esm2022/eui-input-text/eui-input-text.module.mjs +4 -4
  102. package/esm2022/eui-label/eui-label.component.mjs +4 -4
  103. package/esm2022/eui-label/eui-label.module.mjs +4 -4
  104. package/esm2022/eui-list/eui-list-item/eui-list-item.component.mjs +4 -4
  105. package/esm2022/eui-list/eui-list.component.mjs +3 -3
  106. package/esm2022/eui-list/eui-list.module.mjs +4 -4
  107. package/esm2022/eui-list/services/eui-list.service.mjs +3 -3
  108. package/esm2022/eui-menu/eui-menu-item.component.mjs +4 -4
  109. package/esm2022/eui-menu/eui-menu.component.mjs +5 -5
  110. package/esm2022/eui-menu/eui-menu.module.mjs +4 -4
  111. package/esm2022/eui-message-box/eui-message-box.component.mjs +9 -7
  112. package/esm2022/eui-message-box/eui-message-box.module.mjs +4 -4
  113. package/esm2022/eui-message-box/services/eui-message-box.service.mjs +3 -3
  114. package/esm2022/eui-overlay/components/eui-overlay-body/eui-overlay-body.component.mjs +5 -5
  115. package/esm2022/eui-overlay/components/eui-overlay-footer/eui-overlay-footer.component.mjs +5 -5
  116. package/esm2022/eui-overlay/components/eui-overlay-header/eui-overlay-header-title/eui-overlay-header-title.component.mjs +38 -0
  117. package/esm2022/eui-overlay/components/eui-overlay-header/eui-overlay-header.component.mjs +5 -5
  118. package/esm2022/eui-overlay/eui-overlay.component.mjs +30 -12
  119. package/esm2022/eui-overlay/index.mjs +2 -1
  120. package/esm2022/eui-page/components/eui-page-breadcrumb/eui-page-breadcrumb.component.mjs +3 -3
  121. package/esm2022/eui-page/components/eui-page-column/eui-page-column.component.mjs +21 -21
  122. package/esm2022/eui-page/components/eui-page-columns/eui-page-columns.component.mjs +3 -3
  123. package/esm2022/eui-page/components/eui-page-content/eui-page-content.component.mjs +3 -3
  124. package/esm2022/eui-page/components/eui-page-footer/eui-page-footer.component.mjs +3 -3
  125. package/esm2022/eui-page/components/eui-page-header/eui-page-header.component.mjs +9 -9
  126. package/esm2022/eui-page/components/eui-page-hero-header/eui-page-hero-header.component.mjs +3 -3
  127. package/esm2022/eui-page/components/eui-page-top-content/eui-page-top-content.component.mjs +3 -3
  128. package/esm2022/eui-page/eui-page.component.mjs +3 -3
  129. package/esm2022/eui-page/eui-page.module.mjs +4 -4
  130. package/esm2022/eui-paginator/eui-paginator.component.mjs +10 -8
  131. package/esm2022/eui-paginator/eui-paginator.module.mjs +4 -4
  132. package/esm2022/eui-picker/eui-picker.component.mjs +8 -6
  133. package/esm2022/eui-picker/eui-picker.module.mjs +4 -4
  134. package/esm2022/eui-picker/modal-picker/eui-modal-picker.component.mjs +5 -5
  135. package/esm2022/eui-popover/directives/eui-popover-arrow-position.directive.mjs +58 -0
  136. package/esm2022/eui-popover/eui-popover.component.mjs +25 -19
  137. package/esm2022/eui-popover/eui-popover.module.mjs +7 -6
  138. package/esm2022/eui-popover/models/eui-popover-position.model.mjs +18 -0
  139. package/esm2022/eui-progress-bar/eui-progress-bar.component.mjs +3 -3
  140. package/esm2022/eui-progress-bar/eui-progress-bar.module.mjs +4 -4
  141. package/esm2022/eui-progress-circle/eui-progress-circle.component.mjs +7 -7
  142. package/esm2022/eui-select/eui-select-control.directive.mjs +4 -4
  143. package/esm2022/eui-select/eui-select-multiple.directive.mjs +10 -5
  144. package/esm2022/eui-select/eui-select-mutli-option.directive.mjs +4 -4
  145. package/esm2022/eui-select/eui-select-option.directive.mjs +5 -4
  146. package/esm2022/eui-select/eui-select.component.mjs +5 -5
  147. package/esm2022/eui-select/eui-select.module.mjs +4 -4
  148. package/esm2022/eui-sidebar-menu/eui-sidebar-menu.component.mjs +6 -4
  149. package/esm2022/eui-sidebar-menu/eui-sidebar-menu.module.mjs +4 -4
  150. package/esm2022/eui-slide-toggle/eui-slide-toggle.component.mjs +4 -4
  151. package/esm2022/eui-slide-toggle/eui-slide-toggle.module.mjs +4 -4
  152. package/esm2022/eui-table/directives/eui-table-sticky-columns.directive.mjs +3 -3
  153. package/esm2022/eui-table/eui-table.component.mjs +76 -29
  154. package/esm2022/eui-table/eui-table.module.mjs +4 -4
  155. package/esm2022/eui-table/expandable-row/eui-table-expandable-row.component.mjs +3 -3
  156. package/esm2022/eui-table/filter/eui-table-filter.component.mjs +3 -3
  157. package/esm2022/eui-table/pipes/eui-table-highlight-filter.pipe.mjs +3 -3
  158. package/esm2022/eui-table/selectable-header/eui-table-selectable-header.component.mjs +3 -3
  159. package/esm2022/eui-table/selectable-row/eui-table-selectable-row.component.mjs +3 -3
  160. package/esm2022/eui-table/services/eui-table-selectable-row.service.mjs +3 -3
  161. package/esm2022/eui-table/services/eui-table-sort.service.mjs +3 -3
  162. package/esm2022/eui-table/sortable-col/eui-table-sortable-col.component.mjs +4 -4
  163. package/esm2022/eui-tabs/eui-tab/eui-tab.component.mjs +3 -3
  164. package/esm2022/eui-tabs/eui-tab-content/eui-tab-content.component.mjs +3 -3
  165. package/esm2022/eui-tabs/eui-tab-label/eui-tab-label.component.mjs +6 -6
  166. package/esm2022/eui-tabs/eui-tabs.component.mjs +7 -7
  167. package/esm2022/eui-tabs/eui-tabs.module.mjs +4 -4
  168. package/esm2022/eui-textarea/auto-resize.directive.mjs +4 -4
  169. package/esm2022/eui-textarea/eui-textarea.component.mjs +5 -5
  170. package/esm2022/eui-textarea/eui-textarea.module.mjs +4 -4
  171. package/esm2022/eui-timebar/eui-timebar-item.model.mjs +3 -1
  172. package/esm2022/eui-timebar/eui-timebar.component.mjs +9 -9
  173. package/esm2022/eui-timeline/eui-timeline-item.component.mjs +3 -3
  174. package/esm2022/eui-timeline/eui-timeline.component.mjs +3 -3
  175. package/esm2022/eui-timeline/eui-timeline.module.mjs +4 -4
  176. package/esm2022/eui-timepicker/eui-timepicker.component.mjs +3 -3
  177. package/esm2022/eui-timepicker/eui-timepicker.module.mjs +11 -11
  178. package/esm2022/eui-timepicker/models/eui-date-time-picker.config.model.mjs +1 -1
  179. package/esm2022/eui-tree/eui-dropdown-tree.directive.mjs +8 -8
  180. package/esm2022/eui-tree/eui-tree-form-control.directive.mjs +8 -8
  181. package/esm2022/eui-tree/eui-tree-helper.mjs +1 -1
  182. package/esm2022/eui-tree/eui-tree.component.mjs +29 -11
  183. package/esm2022/eui-wizard/eui-wizard-step.component.mjs +3 -3
  184. package/esm2022/eui-wizard/eui-wizard.component.mjs +16 -14
  185. package/esm2022/eui-wizard/eui-wizard.module.mjs +4 -4
  186. package/esm2022/eui-wizard/services/eui-wizard.service.mjs +3 -3
  187. package/esm2022/externals/charts/chart/chart.component.mjs +3 -3
  188. package/esm2022/externals/charts/eui-charts.module.mjs +4 -4
  189. package/esm2022/externals/eui-editor/counters/eui-editor-counters.component.mjs +3 -3
  190. package/esm2022/externals/eui-editor/directives/eui-editor-maxlength.directive.mjs +3 -3
  191. package/esm2022/externals/eui-editor/eui-editor.component.mjs +8 -8
  192. package/esm2022/externals/eui-editor/eui-editor.module.mjs +4 -4
  193. package/esm2022/externals/eui-editor/html-view/eui-editor-html-view.component.mjs +3 -3
  194. package/esm2022/externals/eui-editor/image-url-dialog/image-url-dialog.component.mjs +3 -3
  195. package/esm2022/externals/eui-editor/json-view/eui-editor-json-view.component.mjs +3 -3
  196. package/esm2022/externals/quill/quill-editor.component.mjs +3 -3
  197. package/esm2022/externals/quill/quill.module.mjs +4 -4
  198. package/esm2022/layout/eui-app/eui-app-breadcrumb/breadcrumb.component.mjs +3 -3
  199. package/esm2022/layout/eui-app/eui-app-breadcrumb/breadcrumb.module.mjs +4 -4
  200. package/esm2022/layout/eui-app/eui-app-footer/footer.component.mjs +3 -3
  201. package/esm2022/layout/eui-app/eui-app-footer/footer.module.mjs +4 -4
  202. package/esm2022/layout/eui-app/eui-app-header/header.component.mjs +3 -3
  203. package/esm2022/layout/eui-app/eui-app-header/header.module.mjs +4 -4
  204. package/esm2022/layout/eui-app/eui-app-sidebar/sidebar-body/sidebar-body.component.mjs +3 -3
  205. package/esm2022/layout/eui-app/eui-app-sidebar/sidebar-drawer/sidebar-drawer.component.mjs +3 -3
  206. package/esm2022/layout/eui-app/eui-app-sidebar/sidebar-footer/sidebar-footer.component.mjs +3 -3
  207. package/esm2022/layout/eui-app/eui-app-sidebar/sidebar-header/sidebar-header.component.mjs +3 -3
  208. package/esm2022/layout/eui-app/eui-app-sidebar/sidebar-header-user-profile/sidebar-header-user-profile.component.mjs +3 -3
  209. package/esm2022/layout/eui-app/eui-app-sidebar/sidebar-menu/sidebar-menu.component.mjs +5 -4
  210. package/esm2022/layout/eui-app/eui-app-sidebar/sidebar.component.mjs +4 -4
  211. package/esm2022/layout/eui-app/eui-app-sidebar/sidebar.module.mjs +4 -4
  212. package/esm2022/layout/eui-app/eui-app-toolbar/toolbar.component.mjs +3 -3
  213. package/esm2022/layout/eui-app/eui-app-toolbar/toolbar.module.mjs +4 -4
  214. package/esm2022/layout/eui-app/eui-app-top-message/top-message.component.mjs +5 -4
  215. package/esm2022/layout/eui-app/eui-app-top-message/top-message.module.mjs +4 -4
  216. package/esm2022/layout/eui-app/eui-app.component.mjs +6 -6
  217. package/esm2022/layout/eui-app/eui-app.module.mjs +4 -4
  218. package/esm2022/layout/eui-breadcrumb/breadcrumb.component.mjs +10 -4
  219. package/esm2022/layout/eui-breadcrumb/breadcrumb.module.mjs +4 -4
  220. package/esm2022/layout/eui-breadcrumb/breadcrumb.service.mjs +3 -3
  221. package/esm2022/layout/eui-breadcrumb/collapsed-breadcrumb/collapsed-breadcrumb.component.mjs +8 -8
  222. package/esm2022/layout/eui-breadcrumb/item/breadcrumb-item.component.mjs +6 -6
  223. package/esm2022/layout/eui-footer/footer.component.mjs +3 -3
  224. package/esm2022/layout/eui-footer/footer.module.mjs +4 -4
  225. package/esm2022/layout/eui-header/header-app/header-app.component.mjs +12 -12
  226. package/esm2022/layout/eui-header/header-app-name/header-app-name.component.mjs +4 -4
  227. package/esm2022/layout/eui-header/header-app-name-logo/header-app-name-logo.component.mjs +7 -11
  228. package/esm2022/layout/eui-header/header-app-subtitle/header-app-subtitle.component.mjs +4 -4
  229. package/esm2022/layout/eui-header/header-environment/header-environment.component.mjs +4 -4
  230. package/esm2022/layout/eui-header/header-logo/header-logo.component.mjs +4 -4
  231. package/esm2022/layout/eui-header/header-user-profile/header-user-profile.component.mjs +3 -3
  232. package/esm2022/layout/eui-header/header.component.mjs +3 -3
  233. package/esm2022/layout/eui-header/header.module.mjs +4 -4
  234. package/esm2022/layout/eui-language-selector/language-selector.component.mjs +4 -4
  235. package/esm2022/layout/eui-language-selector/language-selector.module.mjs +4 -4
  236. package/esm2022/layout/eui-language-selector/modal-selector/modal-selector.component.mjs +3 -3
  237. package/esm2022/layout/eui-layout.module.mjs +10 -5
  238. package/esm2022/layout/eui-notifications/eui-notification-item.component.mjs +5 -5
  239. package/esm2022/layout/eui-notifications/eui-notifications.component.mjs +3 -3
  240. package/esm2022/layout/eui-notifications/eui-notifications.module.mjs +4 -4
  241. package/esm2022/layout/eui-notifications-v2/eui-notification-item.component.mjs +57 -0
  242. package/esm2022/layout/eui-notifications-v2/eui-notifications.component.mjs +244 -0
  243. package/esm2022/layout/eui-notifications-v2/eui-notifications.module.mjs +25 -0
  244. package/esm2022/layout/eui-notifications-v2/index.mjs +4 -0
  245. package/esm2022/layout/eui-search/search.component.mjs +3 -3
  246. package/esm2022/layout/eui-search/search.module.mjs +4 -4
  247. package/esm2022/layout/eui-sidebar-toggle/sidebar-toggle.component.mjs +3 -3
  248. package/esm2022/layout/eui-sidebar-toggle/sidebar-toggle.module.mjs +4 -4
  249. package/esm2022/layout/eui-toolbar/toolbar-app/toolbar-app.component.mjs +3 -3
  250. package/esm2022/layout/eui-toolbar/toolbar-center/toolbar-center.component.mjs +3 -3
  251. package/esm2022/layout/eui-toolbar/toolbar-environment/toolbar-environment.component.mjs +3 -3
  252. package/esm2022/layout/eui-toolbar/toolbar-item/toolbar-item.component.mjs +3 -3
  253. package/esm2022/layout/eui-toolbar/toolbar-item-notifications/toolbar-item-notifications.component.mjs +3 -3
  254. package/esm2022/layout/eui-toolbar/toolbar-item-search/toolbar-item-search.component.mjs +3 -3
  255. package/esm2022/layout/eui-toolbar/toolbar-item-user-profile/toolbar-item-user-profile.component.mjs +3 -3
  256. package/esm2022/layout/eui-toolbar/toolbar-items/toolbar-items.component.mjs +3 -3
  257. package/esm2022/layout/eui-toolbar/toolbar-logo/toolbar-logo.component.mjs +3 -3
  258. package/esm2022/layout/eui-toolbar/toolbar-menu/toolbar-menu.component.mjs +4 -4
  259. package/esm2022/layout/eui-toolbar/toolbar.component.mjs +4 -4
  260. package/esm2022/layout/eui-toolbar/toolbar.module.mjs +4 -4
  261. package/esm2022/layout/eui-user-profile/user-profile-card/user-profile-card.component.mjs +6 -5
  262. package/esm2022/layout/eui-user-profile/user-profile-menu/user-profile-menu.component.mjs +3 -3
  263. package/esm2022/layout/eui-user-profile/user-profile-menu-item/user-profile-menu-item.component.mjs +3 -3
  264. package/esm2022/layout/eui-user-profile/user-profile.component.mjs +14 -5
  265. package/esm2022/layout/eui-user-profile/user-profile.module.mjs +4 -4
  266. package/esm2022/layout/index.mjs +2 -1
  267. package/esm2022/pipes/eui-is-empty.pipe.mjs +7 -7
  268. package/esm2022/pipes/eui-truncate.pipe.mjs +7 -7
  269. package/esm2022/shared/base/base-states.directive.mjs +3 -3
  270. package/esm2022/shared/base/base.directive.mjs +3 -3
  271. package/esm2022/shared/base/mixins/index.mjs +1 -1
  272. package/esm2022/shared/eui-common-header/common-header.component.mjs +7 -7
  273. package/esm2022/shared/eui-expand-content/eui-expand-content.component.mjs +7 -7
  274. package/esm2022/shared/input.directive.mjs +4 -4
  275. package/eui-alert/eui-alert.component.d.ts.map +1 -1
  276. package/eui-all/eui-all.module.d.ts +19 -20
  277. package/eui-all/eui-all.module.d.ts.map +1 -1
  278. package/eui-autocomplete/eui-autocomplete.component.d.ts +12 -3
  279. package/eui-autocomplete/eui-autocomplete.component.d.ts.map +1 -1
  280. package/eui-autocomplete/models/eui-autocomplete-item.model.d.ts +1 -0
  281. package/eui-autocomplete/models/eui-autocomplete-item.model.d.ts.map +1 -1
  282. package/eui-badge/eui-badge.component.d.ts.map +1 -1
  283. package/eui-block-content/eui-block-content.component.d.ts.map +1 -1
  284. package/eui-button/eui-button.component.d.ts +1 -1
  285. package/eui-button/eui-button.component.d.ts.map +1 -1
  286. package/eui-buttons/eui-buttons.component.d.ts +2 -2
  287. package/eui-buttons/eui-buttons.component.d.ts.map +1 -1
  288. package/eui-chip-list/eui-chip-list.component.d.ts.map +1 -1
  289. package/eui-dashboard-button/eui-dashboard-button.component.d.ts.map +1 -1
  290. package/eui-dashboard-card/eui-dashboard-card.component.d.ts.map +1 -1
  291. package/eui-date-range-selector/eui-date-range-selector.component.d.ts +5 -1
  292. package/eui-date-range-selector/eui-date-range-selector.component.d.ts.map +1 -1
  293. package/eui-datepicker/eui-datepicker.component.d.ts.map +1 -1
  294. package/eui-dialog/eui-dialog.component.d.ts.map +1 -1
  295. package/eui-dialog/services/eui-dialog.service.d.ts.map +1 -1
  296. package/eui-dimmer/dimmer.component.d.ts.map +1 -1
  297. package/eui-disable-content/eui-disable-content.component.d.ts +1 -1
  298. package/eui-disable-content/eui-disable-content.component.d.ts.map +1 -1
  299. package/eui-dropdown/dropdown-item/eui-dropdown-item.component.d.ts.map +1 -1
  300. package/eui-file-upload/eui-file-upload.component.d.ts +8 -5
  301. package/eui-file-upload/eui-file-upload.component.d.ts.map +1 -1
  302. package/eui-file-upload/eui-file-upload.module.d.ts +5 -6
  303. package/eui-file-upload/eui-file-upload.module.d.ts.map +1 -1
  304. package/eui-file-upload/file-preview/file-preview.component.d.ts.map +1 -1
  305. package/eui-file-upload/utils/eui-file-upload.validators.d.ts.map +1 -1
  306. package/eui-file-upload/utils/mime-types.d.ts.map +1 -1
  307. package/eui-growl/eui-growl.component.d.ts.map +1 -1
  308. package/eui-input-checkbox/eui-input-checkbox.component.d.ts +1 -1
  309. package/eui-input-checkbox/eui-input-checkbox.component.d.ts.map +1 -1
  310. package/eui-input-number/eui-number-control.directive.d.ts.map +1 -1
  311. package/eui-input-radio/eui-input-radio.component.d.ts +2 -1
  312. package/eui-input-radio/eui-input-radio.component.d.ts.map +1 -1
  313. package/eui-input-text/eui-input-text.component.d.ts +1 -1
  314. package/eui-input-text/eui-input-text.component.d.ts.map +1 -1
  315. package/eui-label/eui-label.component.d.ts.map +1 -1
  316. package/eui-list/eui-list-item/eui-list-item.component.d.ts.map +1 -1
  317. package/eui-menu/eui-menu.component.d.ts.map +1 -1
  318. package/eui-message-box/eui-message-box.component.d.ts.map +1 -1
  319. package/eui-overlay/components/eui-overlay-body/eui-overlay-body.component.d.ts.map +1 -1
  320. package/eui-overlay/components/eui-overlay-footer/eui-overlay-footer.component.d.ts.map +1 -1
  321. package/eui-overlay/components/eui-overlay-header/eui-overlay-header-title/eui-overlay-header-title.component.d.ts +15 -0
  322. package/eui-overlay/components/eui-overlay-header/eui-overlay-header-title/eui-overlay-header-title.component.d.ts.map +1 -0
  323. package/eui-overlay/components/eui-overlay-header/eui-overlay-header.component.d.ts +1 -1
  324. package/eui-overlay/components/eui-overlay-header/eui-overlay-header.component.d.ts.map +1 -1
  325. package/eui-overlay/eui-overlay.component.d.ts +4 -2
  326. package/eui-overlay/eui-overlay.component.d.ts.map +1 -1
  327. package/eui-overlay/index.d.ts +1 -0
  328. package/eui-overlay/index.d.ts.map +1 -1
  329. package/eui-paginator/eui-paginator.component.d.ts +3 -1
  330. package/eui-paginator/eui-paginator.component.d.ts.map +1 -1
  331. package/eui-picker/eui-picker.component.d.ts.map +1 -1
  332. package/eui-picker/modal-picker/eui-modal-picker.component.d.ts.map +1 -1
  333. package/eui-popover/directives/eui-popover-arrow-position.directive.d.ts +18 -0
  334. package/eui-popover/directives/eui-popover-arrow-position.directive.d.ts.map +1 -0
  335. package/eui-popover/eui-popover.component.d.ts +7 -5
  336. package/eui-popover/eui-popover.component.d.ts.map +1 -1
  337. package/eui-popover/eui-popover.module.d.ts +8 -7
  338. package/eui-popover/eui-popover.module.d.ts.map +1 -1
  339. package/eui-popover/models/eui-popover-position.model.d.ts +8 -0
  340. package/eui-popover/models/eui-popover-position.model.d.ts.map +1 -0
  341. package/eui-select/eui-select-multiple.directive.d.ts +1 -1
  342. package/eui-select/eui-select-multiple.directive.d.ts.map +1 -1
  343. package/eui-select/eui-select-mutli-option.directive.d.ts.map +1 -1
  344. package/eui-select/eui-select-option.directive.d.ts.map +1 -1
  345. package/eui-select/eui-select.component.d.ts +1 -1
  346. package/eui-select/eui-select.component.d.ts.map +1 -1
  347. package/eui-sidebar-menu/eui-sidebar-menu.component.d.ts.map +1 -1
  348. package/eui-slide-toggle/eui-slide-toggle.component.d.ts.map +1 -1
  349. package/eui-table/eui-table.component.d.ts.map +1 -1
  350. package/eui-table/sortable-col/eui-table-sortable-col.component.d.ts.map +1 -1
  351. package/eui-tabs/eui-tabs.component.d.ts.map +1 -1
  352. package/eui-textarea/auto-resize.directive.d.ts.map +1 -1
  353. package/eui-textarea/eui-textarea.component.d.ts +3 -3
  354. package/eui-textarea/eui-textarea.component.d.ts.map +1 -1
  355. package/eui-timebar/eui-timebar-item.model.d.ts +2 -2
  356. package/eui-timebar/eui-timebar-item.model.d.ts.map +1 -1
  357. package/eui-timebar/eui-timebar.component.d.ts.map +1 -1
  358. package/eui-timepicker/eui-timepicker.module.d.ts +1 -1
  359. package/eui-timepicker/eui-timepicker.module.d.ts.map +1 -1
  360. package/eui-timepicker/models/eui-date-time-picker.config.model.d.ts +1 -10
  361. package/eui-timepicker/models/eui-date-time-picker.config.model.d.ts.map +1 -1
  362. package/eui-tree/eui-dropdown-tree.directive.d.ts.map +1 -1
  363. package/eui-tree/eui-tree-form-control.directive.d.ts.map +1 -1
  364. package/eui-tree/eui-tree.component.d.ts +4 -1
  365. package/eui-tree/eui-tree.component.d.ts.map +1 -1
  366. package/eui-wizard/eui-wizard.component.d.ts.map +1 -1
  367. package/fesm2022/eui-components-directives.mjs +125 -95
  368. package/fesm2022/eui-components-directives.mjs.map +1 -1
  369. package/fesm2022/eui-components-eui-alert.mjs +8 -7
  370. package/fesm2022/eui-components-eui-alert.mjs.map +1 -1
  371. package/fesm2022/eui-components-eui-all.mjs +8 -9
  372. package/fesm2022/eui-components-eui-all.mjs.map +1 -1
  373. package/fesm2022/eui-components-eui-autocomplete.mjs +35 -18
  374. package/fesm2022/eui-components-eui-autocomplete.mjs.map +1 -1
  375. package/fesm2022/eui-components-eui-badge.mjs +7 -7
  376. package/fesm2022/eui-components-eui-badge.mjs.map +1 -1
  377. package/fesm2022/eui-components-eui-block-content.mjs +8 -8
  378. package/fesm2022/eui-components-eui-block-content.mjs.map +1 -1
  379. package/fesm2022/eui-components-eui-block-document.mjs +7 -7
  380. package/fesm2022/eui-components-eui-button-group.mjs +7 -7
  381. package/fesm2022/eui-components-eui-button.mjs +9 -9
  382. package/fesm2022/eui-components-eui-button.mjs.map +1 -1
  383. package/fesm2022/eui-components-eui-buttons.mjs +16 -16
  384. package/fesm2022/eui-components-eui-buttons.mjs.map +1 -1
  385. package/fesm2022/eui-components-eui-card.mjs +46 -46
  386. package/fesm2022/eui-components-eui-chip-list.mjs +15 -15
  387. package/fesm2022/eui-components-eui-chip-list.mjs.map +1 -1
  388. package/fesm2022/eui-components-eui-chip.mjs +7 -7
  389. package/fesm2022/eui-components-eui-dashboard-button.mjs +13 -13
  390. package/fesm2022/eui-components-eui-dashboard-button.mjs.map +1 -1
  391. package/fesm2022/eui-components-eui-dashboard-card.mjs +8 -7
  392. package/fesm2022/eui-components-eui-dashboard-card.mjs.map +1 -1
  393. package/fesm2022/eui-components-eui-date-range-selector.mjs +22 -9
  394. package/fesm2022/eui-components-eui-date-range-selector.mjs.map +1 -1
  395. package/fesm2022/eui-components-eui-datepicker.mjs +24 -24
  396. package/fesm2022/eui-components-eui-datepicker.mjs.map +1 -1
  397. package/fesm2022/eui-components-eui-dialog.mjs +20 -20
  398. package/fesm2022/eui-components-eui-dialog.mjs.map +1 -1
  399. package/fesm2022/eui-components-eui-dimmer.mjs +7 -7
  400. package/fesm2022/eui-components-eui-dimmer.mjs.map +1 -1
  401. package/fesm2022/eui-components-eui-disable-content.mjs +9 -9
  402. package/fesm2022/eui-components-eui-disable-content.mjs.map +1 -1
  403. package/fesm2022/eui-components-eui-discussion-thread.mjs +11 -11
  404. package/fesm2022/eui-components-eui-discussion-thread.mjs.map +1 -1
  405. package/fesm2022/eui-components-eui-dropdown.mjs +26 -24
  406. package/fesm2022/eui-components-eui-dropdown.mjs.map +1 -1
  407. package/fesm2022/eui-components-eui-feedback-message.mjs +7 -7
  408. package/fesm2022/eui-components-eui-fieldset.mjs +13 -13
  409. package/fesm2022/eui-components-eui-file-upload.mjs +52 -153
  410. package/fesm2022/eui-components-eui-file-upload.mjs.map +1 -1
  411. package/fesm2022/eui-components-eui-growl.mjs +10 -10
  412. package/fesm2022/eui-components-eui-growl.mjs.map +1 -1
  413. package/fesm2022/eui-components-eui-icon-toggle.mjs +7 -7
  414. package/fesm2022/eui-components-eui-icon.mjs +13 -13
  415. package/fesm2022/eui-components-eui-input-checkbox.mjs +7 -7
  416. package/fesm2022/eui-components-eui-input-checkbox.mjs.map +1 -1
  417. package/fesm2022/eui-components-eui-input-group.mjs +8 -8
  418. package/fesm2022/eui-components-eui-input-group.mjs.map +1 -1
  419. package/fesm2022/eui-components-eui-input-number.mjs +11 -11
  420. package/fesm2022/eui-components-eui-input-number.mjs.map +1 -1
  421. package/fesm2022/eui-components-eui-input-radio.mjs +12 -14
  422. package/fesm2022/eui-components-eui-input-radio.mjs.map +1 -1
  423. package/fesm2022/eui-components-eui-input-text.mjs +8 -8
  424. package/fesm2022/eui-components-eui-input-text.mjs.map +1 -1
  425. package/fesm2022/eui-components-eui-label.mjs +7 -7
  426. package/fesm2022/eui-components-eui-label.mjs.map +1 -1
  427. package/fesm2022/eui-components-eui-list.mjs +13 -13
  428. package/fesm2022/eui-components-eui-list.mjs.map +1 -1
  429. package/fesm2022/eui-components-eui-menu.mjs +12 -12
  430. package/fesm2022/eui-components-eui-menu.mjs.map +1 -1
  431. package/fesm2022/eui-components-eui-message-box.mjs +15 -13
  432. package/fesm2022/eui-components-eui-message-box.mjs.map +1 -1
  433. package/fesm2022/eui-components-eui-overlay.mjs +76 -25
  434. package/fesm2022/eui-components-eui-overlay.mjs.map +1 -1
  435. package/fesm2022/eui-components-eui-page.mjs +55 -55
  436. package/fesm2022/eui-components-eui-paginator.mjs +14 -13
  437. package/fesm2022/eui-components-eui-paginator.mjs.map +1 -1
  438. package/fesm2022/eui-components-eui-picker.mjs +15 -13
  439. package/fesm2022/eui-components-eui-picker.mjs.map +1 -1
  440. package/fesm2022/eui-components-eui-popover.mjs +104 -28
  441. package/fesm2022/eui-components-eui-popover.mjs.map +1 -1
  442. package/fesm2022/eui-components-eui-progress-bar.mjs +7 -7
  443. package/fesm2022/eui-components-eui-progress-circle.mjs +7 -7
  444. package/fesm2022/eui-components-eui-select.mjs +27 -21
  445. package/fesm2022/eui-components-eui-select.mjs.map +1 -1
  446. package/fesm2022/eui-components-eui-sidebar-menu.mjs +9 -7
  447. package/fesm2022/eui-components-eui-sidebar-menu.mjs.map +1 -1
  448. package/fesm2022/eui-components-eui-slide-toggle.mjs +7 -7
  449. package/fesm2022/eui-components-eui-slide-toggle.mjs.map +1 -1
  450. package/fesm2022/eui-components-eui-table.mjs +106 -59
  451. package/fesm2022/eui-components-eui-table.mjs.map +1 -1
  452. package/fesm2022/eui-components-eui-tabs.mjs +22 -22
  453. package/fesm2022/eui-components-eui-tabs.mjs.map +1 -1
  454. package/fesm2022/eui-components-eui-textarea.mjs +11 -11
  455. package/fesm2022/eui-components-eui-textarea.mjs.map +1 -1
  456. package/fesm2022/eui-components-eui-timebar.mjs +10 -8
  457. package/fesm2022/eui-components-eui-timebar.mjs.map +1 -1
  458. package/fesm2022/eui-components-eui-timeline.mjs +10 -10
  459. package/fesm2022/eui-components-eui-timepicker.mjs +13 -12
  460. package/fesm2022/eui-components-eui-timepicker.mjs.map +1 -1
  461. package/fesm2022/eui-components-eui-tree.mjs +42 -24
  462. package/fesm2022/eui-components-eui-tree.mjs.map +1 -1
  463. package/fesm2022/eui-components-eui-wizard.mjs +25 -23
  464. package/fesm2022/eui-components-eui-wizard.mjs.map +1 -1
  465. package/fesm2022/eui-components-externals-charts.mjs +7 -7
  466. package/fesm2022/eui-components-externals-eui-editor.mjs +27 -27
  467. package/fesm2022/eui-components-externals-eui-editor.mjs.map +1 -1
  468. package/fesm2022/eui-components-externals-quill.mjs +7 -7
  469. package/fesm2022/eui-components-layout.mjs +553 -237
  470. package/fesm2022/eui-components-layout.mjs.map +1 -1
  471. package/fesm2022/eui-components-pipes.mjs +14 -14
  472. package/fesm2022/eui-components-shared-base.mjs +6 -6
  473. package/fesm2022/eui-components-shared-base.mjs.map +1 -1
  474. package/fesm2022/eui-components-shared.mjs +17 -17
  475. package/fesm2022/eui-components-shared.mjs.map +1 -1
  476. package/layout/eui-app/eui-app-sidebar/sidebar-menu/sidebar-menu.component.d.ts.map +1 -1
  477. package/layout/eui-app/eui-app-sidebar/sidebar.component.d.ts.map +1 -1
  478. package/layout/eui-app/eui-app-top-message/top-message.component.d.ts.map +1 -1
  479. package/layout/eui-breadcrumb/breadcrumb.component.d.ts.map +1 -1
  480. package/layout/eui-breadcrumb/collapsed-breadcrumb/collapsed-breadcrumb.component.d.ts.map +1 -1
  481. package/layout/eui-breadcrumb/item/breadcrumb-item.component.d.ts +1 -1
  482. package/layout/eui-breadcrumb/item/breadcrumb-item.component.d.ts.map +1 -1
  483. package/layout/eui-header/header-app-name/header-app-name.component.d.ts.map +1 -1
  484. package/layout/eui-header/header-app-name-logo/header-app-name-logo.component.d.ts +2 -4
  485. package/layout/eui-header/header-app-name-logo/header-app-name-logo.component.d.ts.map +1 -1
  486. package/layout/eui-header/header-app-subtitle/header-app-subtitle.component.d.ts.map +1 -1
  487. package/layout/eui-header/header-environment/header-environment.component.d.ts.map +1 -1
  488. package/layout/eui-header/header-logo/header-logo.component.d.ts.map +1 -1
  489. package/layout/eui-layout.module.d.ts +10 -9
  490. package/layout/eui-layout.module.d.ts.map +1 -1
  491. package/layout/eui-notifications-v2/eui-notification-item.component.d.ts +21 -0
  492. package/layout/eui-notifications-v2/eui-notification-item.component.d.ts.map +1 -0
  493. package/layout/eui-notifications-v2/eui-notifications.component.d.ts +78 -0
  494. package/layout/eui-notifications-v2/eui-notifications.component.d.ts.map +1 -0
  495. package/layout/eui-notifications-v2/eui-notifications.module.d.ts +16 -0
  496. package/layout/eui-notifications-v2/eui-notifications.module.d.ts.map +1 -0
  497. package/layout/eui-notifications-v2/index.d.ts +4 -0
  498. package/layout/eui-notifications-v2/index.d.ts.map +1 -0
  499. package/layout/eui-toolbar/toolbar-menu/toolbar-menu.component.d.ts.map +1 -1
  500. package/layout/eui-user-profile/user-profile-card/user-profile-card.component.d.ts.map +1 -1
  501. package/layout/eui-user-profile/user-profile.component.d.ts +5 -2
  502. package/layout/eui-user-profile/user-profile.component.d.ts.map +1 -1
  503. package/layout/index.d.ts +1 -0
  504. package/layout/index.d.ts.map +1 -1
  505. package/package.json +2 -2
  506. package/shared/base/mixins/index.d.ts.map +1 -1
  507. package/shared/input.directive.d.ts.map +1 -1
  508. package/esm2022/eui-file-upload/uploaded-file/uploaded-file.component.mjs +0 -116
  509. package/eui-file-upload/uploaded-file/uploaded-file.component.d.ts +0 -51
  510. package/eui-file-upload/uploaded-file/uploaded-file.component.d.ts.map +0 -1
@@ -63,10 +63,10 @@ export class EuiFieldsetComponent extends BaseDirective {
63
63
  this.expanded.emit(this.id);
64
64
  }
65
65
  }
66
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.3", ngImport: i0, type: EuiFieldsetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
67
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.0-next.3", type: EuiFieldsetComponent, selector: "eui-fieldset", inputs: { id: "id", label: "label", iconClass: "iconClass", iconSvgName: "iconSvgName", isFirst: "isFirst", e2eAttr: "e2eAttr", hasDefaultIcon: "hasDefaultIcon", isExpandable: "isExpandable", isExpanded: "isExpanded", isLarge: "isLarge" }, outputs: { expanded: "expanded" }, host: { properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "customLabelRightContent", first: true, predicate: i0.forwardRef(function () { return EuiFieldsetLabelRightContentTagDirective; }), descendants: true }, { propertyName: "customLabelExtraContent", first: true, predicate: i0.forwardRef(function () { return EuiFieldsetLabelExtraContentTagDirective; }), descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"eui-fieldset__container\">\n <div *ngIf=\"label\" class=\"eui-fieldset__header\" (click)=\"onToggle()\">\n <div class=\"eui-fieldset__header-label\" [class.eui-fieldset__header-label--large]=\"isLarge\">\n <div *ngIf=\"iconClass\" class=\"eui-fieldset__header-icon eui-icon {{ iconClass }}\"></div>\n <!-- V15 OK-->\n <div *ngIf=\"iconSvgName\" class=\"eui-fieldset__header-icon\">\n <eui-icon-svg icon=\"{{ iconSvgName }}\" fillColor=\"{{ typeClass }}\"></eui-icon-svg>\n </div>\n <div\n *ngIf=\"!iconClass && hasDefaultIcon && (euiInfo || euiSuccess || euiWarning || euiDanger)\"\n class=\"eui-fieldset__header-icon\">\n <eui-icon-svg *ngIf=\"euiInfo\" icon=\"eui-info\" fillColor=\"info-100\"></eui-icon-svg>\n <eui-icon-svg *ngIf=\"euiSuccess\" icon=\"eui-ecl-check-filled\" fillColor=\"success-100\"></eui-icon-svg>\n <eui-icon-svg *ngIf=\"euiWarning\" icon=\"eui-ecl-warning\" fillColor=\"warning-140\"></eui-icon-svg>\n <eui-icon-svg *ngIf=\"euiDanger\" icon=\"eui-ecl-error\" fillColor=\"danger-100\"></eui-icon-svg>\n </div>\n <span euiLabel>{{ label }}</span>\n <ng-content select=\"euiFieldsetLabelExtraContent\"></ng-content>\n </div>\n <div class=\"eui-fieldset__header-right-content\">\n <ng-template [ngIf]=\"customLabelRightContent\">\n <ng-content select=\"euiFieldsetLabelRightContent\"></ng-content>\n </ng-template>\n <button\n *ngIf=\"isExpandable\"\n euiButton\n euiRounded\n euiIconButton\n euiSizeS\n euiBasicButton\n euiSecondary\n type=\"button\"\n class=\"eui-fieldset__header-expand-toggle\"\n [class.eui-fieldset__header-expand-toggle--expanded]=\"isExpanded\"\n [attr.aria-label]=\"!isExpanded ? expandMenuLabel + label : collapseMenuLabel + label\">\n <eui-icon-svg icon=\"eui-chevron-forward\"></eui-icon-svg>\n </button>\n </div>\n </div>\n <div *ngIf=\"isExpanded\" class=\"eui-fieldset__content\">\n <ng-content></ng-content>\n </div>\n</div>\n", styles: [".eui-fieldset{display:block;position:relative;width:100%}.eui-fieldset--first{margin-top:var(--eui-base-spacing-s)}.eui-fieldset__header{align-items:center;border-bottom:1px solid var(--eui-base-color-grey-20);display:flex;margin-bottom:var(--eui-base-spacing-m);min-height:calc(var(--eui-base-spacing-2xl) + var(--eui-base-spacing-2xs));text-transform:uppercase}.eui-fieldset__header-icon{align-items:center;display:inline-flex;font-size:var(--eui-base-icon-size-m);margin-right:var(--eui-base-spacing-s)}.eui-fieldset__header-label{align-items:center;display:inline-flex;font-size:var(--eui-base-font-size-s);font:normal normal 400 1rem/1.25rem var(--eui-base-font-family);font-weight:700}.eui-fieldset__header-label.eui-fieldset__header-label--large{font-size:var(--eui-base-font-size-m)}.eui-fieldset__header-right-content{align-items:center;display:flex;margin-left:auto}.eui-fieldset__header-expand-toggle{margin-left:var(--eui-base-spacing-s)!important;margin-right:calc(-1 * var(--eui-base-spacing-xs))!important;transition:all .3s linear!important}.eui-fieldset__header-expand-toggle.eui-fieldset__header-expand-toggle--expanded{transform:rotate(90deg)}.eui-fieldset__header-expand-toggle:focus,.eui-fieldset__header-expand-toggle:active{border:2px solid var(--eui-base-color-accessible-focus);outline:none;transition:border .15s ease-in-out}.eui-fieldset--highlighted .eui-fieldset__container{background-color:var(--eui-base-color-white);padding:var(--eui-base-spacing-s);z-index:var(--eui-base-z-index-highlighted)}.eui-fieldset--size-l>.eui-fieldset__header>.eui-fieldset__header-label{color:var(--eui-base-color-grey-100);font-size:var(--eui-base-font-size-l);text-transform:none;font:normal normal 400 1rem/1.25rem var(--eui-base-font-family);font-weight:300}.eui-fieldset--highlighted{z-index:var(--eui-base-z-index-highlighted)}.eui-fieldset--expandable .eui-fieldset__header{cursor:pointer;padding-bottom:var(--eui-base-spacing-xs)}.eui-fieldset.eui-fieldset--info .eui-fieldset__header-icon,.eui-fieldset.eui-fieldset--info .eui-fieldset__header-label{color:var(--eui-base-color-info-100)}.eui-fieldset.eui-fieldset--success .eui-fieldset__header-icon,.eui-fieldset.eui-fieldset--success .eui-fieldset__header-label{color:var(--eui-base-color-success-100)}.eui-fieldset.eui-fieldset--warning .eui-fieldset__header-icon,.eui-fieldset.eui-fieldset--warning .eui-fieldset__header-label{color:var(--eui-base-color-warning-140)}.eui-fieldset.eui-fieldset--danger .eui-fieldset__header-icon,.eui-fieldset.eui-fieldset--danger .eui-fieldset__header-label{color:var(--eui-base-color-danger-100)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "isLoading", "euiIconButton", "euiLineWrap"], outputs: ["buttonClick"] }, { kind: "component", type: i3.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "size", "fillColor", "set", "ariaLabelledby", "role", "style", "iconUrl", "transform", "aria-label", "ariaHidden", "focusable", "isLoading"] }], encapsulation: i0.ViewEncapsulation.None }); }
66
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiFieldsetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
67
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.0-next.4", type: EuiFieldsetComponent, selector: "eui-fieldset", inputs: { id: "id", label: "label", iconClass: "iconClass", iconSvgName: "iconSvgName", isFirst: "isFirst", e2eAttr: "e2eAttr", hasDefaultIcon: "hasDefaultIcon", isExpandable: "isExpandable", isExpanded: "isExpanded", isLarge: "isLarge" }, outputs: { expanded: "expanded" }, host: { properties: { "class": "this.cssClasses" } }, queries: [{ propertyName: "customLabelRightContent", first: true, predicate: i0.forwardRef(function () { return EuiFieldsetLabelRightContentTagDirective; }), descendants: true }, { propertyName: "customLabelExtraContent", first: true, predicate: i0.forwardRef(function () { return EuiFieldsetLabelExtraContentTagDirective; }), descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"eui-fieldset__container\">\n <div *ngIf=\"label\" class=\"eui-fieldset__header\" (click)=\"onToggle()\">\n <div class=\"eui-fieldset__header-label\" [class.eui-fieldset__header-label--large]=\"isLarge\">\n <div *ngIf=\"iconClass\" class=\"eui-fieldset__header-icon eui-icon {{ iconClass }}\"></div>\n <!-- V15 OK-->\n <div *ngIf=\"iconSvgName\" class=\"eui-fieldset__header-icon\">\n <eui-icon-svg icon=\"{{ iconSvgName }}\" fillColor=\"{{ typeClass }}\"></eui-icon-svg>\n </div>\n <div\n *ngIf=\"!iconClass && hasDefaultIcon && (euiInfo || euiSuccess || euiWarning || euiDanger)\"\n class=\"eui-fieldset__header-icon\">\n <eui-icon-svg *ngIf=\"euiInfo\" icon=\"eui-info\" fillColor=\"info-100\"></eui-icon-svg>\n <eui-icon-svg *ngIf=\"euiSuccess\" icon=\"eui-ecl-check-filled\" fillColor=\"success-100\"></eui-icon-svg>\n <eui-icon-svg *ngIf=\"euiWarning\" icon=\"eui-ecl-warning\" fillColor=\"warning-140\"></eui-icon-svg>\n <eui-icon-svg *ngIf=\"euiDanger\" icon=\"eui-ecl-error\" fillColor=\"danger-100\"></eui-icon-svg>\n </div>\n <span euiLabel>{{ label }}</span>\n <ng-content select=\"euiFieldsetLabelExtraContent\"></ng-content>\n </div>\n <div class=\"eui-fieldset__header-right-content\">\n <ng-template [ngIf]=\"customLabelRightContent\">\n <ng-content select=\"euiFieldsetLabelRightContent\"></ng-content>\n </ng-template>\n <button\n *ngIf=\"isExpandable\"\n euiButton\n euiRounded\n euiIconButton\n euiSizeS\n euiBasicButton\n euiSecondary\n type=\"button\"\n class=\"eui-fieldset__header-expand-toggle\"\n [class.eui-fieldset__header-expand-toggle--expanded]=\"isExpanded\"\n [attr.aria-label]=\"!isExpanded ? expandMenuLabel + label : collapseMenuLabel + label\">\n <eui-icon-svg icon=\"eui-chevron-forward\"></eui-icon-svg>\n </button>\n </div>\n </div>\n <div *ngIf=\"isExpanded\" class=\"eui-fieldset__content\">\n <ng-content></ng-content>\n </div>\n</div>\n", styles: [".eui-fieldset{display:block;position:relative;width:100%}.eui-fieldset--first{margin-top:var(--eui-base-spacing-s)}.eui-fieldset__header{align-items:center;border-bottom:1px solid var(--eui-base-color-grey-20);display:flex;margin-bottom:var(--eui-base-spacing-m);min-height:calc(var(--eui-base-spacing-2xl) + var(--eui-base-spacing-2xs));text-transform:uppercase}.eui-fieldset__header-icon{align-items:center;display:inline-flex;font-size:var(--eui-base-icon-size-m);margin-right:var(--eui-base-spacing-s)}.eui-fieldset__header-label{align-items:center;display:inline-flex;font-size:var(--eui-base-font-size-s);font:normal normal 400 1rem/1.25rem var(--eui-base-font-family);font-weight:700}.eui-fieldset__header-label.eui-fieldset__header-label--large{font-size:var(--eui-base-font-size-m)}.eui-fieldset__header-right-content{align-items:center;display:flex;margin-left:auto}.eui-fieldset__header-expand-toggle{margin-left:var(--eui-base-spacing-s)!important;margin-right:calc(-1 * var(--eui-base-spacing-xs))!important;transition:all .3s linear!important}.eui-fieldset__header-expand-toggle.eui-fieldset__header-expand-toggle--expanded{transform:rotate(90deg)}.eui-fieldset__header-expand-toggle:focus,.eui-fieldset__header-expand-toggle:active{border:2px solid var(--eui-base-color-accessible-focus);outline:none;transition:border .15s ease-in-out}.eui-fieldset--highlighted .eui-fieldset__container{background-color:var(--eui-base-color-white);padding:var(--eui-base-spacing-s);z-index:var(--eui-base-z-index-highlighted)}.eui-fieldset--size-l>.eui-fieldset__header>.eui-fieldset__header-label{color:var(--eui-base-color-grey-100);font-size:var(--eui-base-font-size-l);text-transform:none;font:normal normal 400 1rem/1.25rem var(--eui-base-font-family);font-weight:300}.eui-fieldset--highlighted{z-index:var(--eui-base-z-index-highlighted)}.eui-fieldset--expandable .eui-fieldset__header{cursor:pointer;padding-bottom:var(--eui-base-spacing-xs)}.eui-fieldset.eui-fieldset--info .eui-fieldset__header-icon,.eui-fieldset.eui-fieldset--info .eui-fieldset__header-label{color:var(--eui-base-color-info-100)}.eui-fieldset.eui-fieldset--success .eui-fieldset__header-icon,.eui-fieldset.eui-fieldset--success .eui-fieldset__header-label{color:var(--eui-base-color-success-100)}.eui-fieldset.eui-fieldset--warning .eui-fieldset__header-icon,.eui-fieldset.eui-fieldset--warning .eui-fieldset__header-label{color:var(--eui-base-color-warning-140)}.eui-fieldset.eui-fieldset--danger .eui-fieldset__header-icon,.eui-fieldset.eui-fieldset--danger .eui-fieldset__header-label{color:var(--eui-base-color-danger-100)}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "isLoading", "euiIconButton", "euiLineWrap"], outputs: ["buttonClick"] }, { kind: "component", type: i3.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "size", "fillColor", "set", "ariaLabelledby", "role", "style", "iconUrl", "transform", "aria-label", "ariaHidden", "focusable", "isLoading"] }], encapsulation: i0.ViewEncapsulation.None }); }
68
68
  }
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.3", ngImport: i0, type: EuiFieldsetComponent, decorators: [{
69
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiFieldsetComponent, decorators: [{
70
70
  type: Component,
71
71
  args: [{ selector: 'eui-fieldset', encapsulation: ViewEncapsulation.None, template: "<div class=\"eui-fieldset__container\">\n <div *ngIf=\"label\" class=\"eui-fieldset__header\" (click)=\"onToggle()\">\n <div class=\"eui-fieldset__header-label\" [class.eui-fieldset__header-label--large]=\"isLarge\">\n <div *ngIf=\"iconClass\" class=\"eui-fieldset__header-icon eui-icon {{ iconClass }}\"></div>\n <!-- V15 OK-->\n <div *ngIf=\"iconSvgName\" class=\"eui-fieldset__header-icon\">\n <eui-icon-svg icon=\"{{ iconSvgName }}\" fillColor=\"{{ typeClass }}\"></eui-icon-svg>\n </div>\n <div\n *ngIf=\"!iconClass && hasDefaultIcon && (euiInfo || euiSuccess || euiWarning || euiDanger)\"\n class=\"eui-fieldset__header-icon\">\n <eui-icon-svg *ngIf=\"euiInfo\" icon=\"eui-info\" fillColor=\"info-100\"></eui-icon-svg>\n <eui-icon-svg *ngIf=\"euiSuccess\" icon=\"eui-ecl-check-filled\" fillColor=\"success-100\"></eui-icon-svg>\n <eui-icon-svg *ngIf=\"euiWarning\" icon=\"eui-ecl-warning\" fillColor=\"warning-140\"></eui-icon-svg>\n <eui-icon-svg *ngIf=\"euiDanger\" icon=\"eui-ecl-error\" fillColor=\"danger-100\"></eui-icon-svg>\n </div>\n <span euiLabel>{{ label }}</span>\n <ng-content select=\"euiFieldsetLabelExtraContent\"></ng-content>\n </div>\n <div class=\"eui-fieldset__header-right-content\">\n <ng-template [ngIf]=\"customLabelRightContent\">\n <ng-content select=\"euiFieldsetLabelRightContent\"></ng-content>\n </ng-template>\n <button\n *ngIf=\"isExpandable\"\n euiButton\n euiRounded\n euiIconButton\n euiSizeS\n euiBasicButton\n euiSecondary\n type=\"button\"\n class=\"eui-fieldset__header-expand-toggle\"\n [class.eui-fieldset__header-expand-toggle--expanded]=\"isExpanded\"\n [attr.aria-label]=\"!isExpanded ? expandMenuLabel + label : collapseMenuLabel + label\">\n <eui-icon-svg icon=\"eui-chevron-forward\"></eui-icon-svg>\n </button>\n </div>\n </div>\n <div *ngIf=\"isExpanded\" class=\"eui-fieldset__content\">\n <ng-content></ng-content>\n </div>\n</div>\n", styles: [".eui-fieldset{display:block;position:relative;width:100%}.eui-fieldset--first{margin-top:var(--eui-base-spacing-s)}.eui-fieldset__header{align-items:center;border-bottom:1px solid var(--eui-base-color-grey-20);display:flex;margin-bottom:var(--eui-base-spacing-m);min-height:calc(var(--eui-base-spacing-2xl) + var(--eui-base-spacing-2xs));text-transform:uppercase}.eui-fieldset__header-icon{align-items:center;display:inline-flex;font-size:var(--eui-base-icon-size-m);margin-right:var(--eui-base-spacing-s)}.eui-fieldset__header-label{align-items:center;display:inline-flex;font-size:var(--eui-base-font-size-s);font:normal normal 400 1rem/1.25rem var(--eui-base-font-family);font-weight:700}.eui-fieldset__header-label.eui-fieldset__header-label--large{font-size:var(--eui-base-font-size-m)}.eui-fieldset__header-right-content{align-items:center;display:flex;margin-left:auto}.eui-fieldset__header-expand-toggle{margin-left:var(--eui-base-spacing-s)!important;margin-right:calc(-1 * var(--eui-base-spacing-xs))!important;transition:all .3s linear!important}.eui-fieldset__header-expand-toggle.eui-fieldset__header-expand-toggle--expanded{transform:rotate(90deg)}.eui-fieldset__header-expand-toggle:focus,.eui-fieldset__header-expand-toggle:active{border:2px solid var(--eui-base-color-accessible-focus);outline:none;transition:border .15s ease-in-out}.eui-fieldset--highlighted .eui-fieldset__container{background-color:var(--eui-base-color-white);padding:var(--eui-base-spacing-s);z-index:var(--eui-base-z-index-highlighted)}.eui-fieldset--size-l>.eui-fieldset__header>.eui-fieldset__header-label{color:var(--eui-base-color-grey-100);font-size:var(--eui-base-font-size-l);text-transform:none;font:normal normal 400 1rem/1.25rem var(--eui-base-font-family);font-weight:300}.eui-fieldset--highlighted{z-index:var(--eui-base-z-index-highlighted)}.eui-fieldset--expandable .eui-fieldset__header{cursor:pointer;padding-bottom:var(--eui-base-spacing-xs)}.eui-fieldset.eui-fieldset--info .eui-fieldset__header-icon,.eui-fieldset.eui-fieldset--info .eui-fieldset__header-label{color:var(--eui-base-color-info-100)}.eui-fieldset.eui-fieldset--success .eui-fieldset__header-icon,.eui-fieldset.eui-fieldset--success .eui-fieldset__header-label{color:var(--eui-base-color-success-100)}.eui-fieldset.eui-fieldset--warning .eui-fieldset__header-icon,.eui-fieldset.eui-fieldset--warning .eui-fieldset__header-label{color:var(--eui-base-color-warning-140)}.eui-fieldset.eui-fieldset--danger .eui-fieldset__header-icon,.eui-fieldset.eui-fieldset--danger .eui-fieldset__header-label{color:var(--eui-base-color-danger-100)}\n"] }]
72
72
  }], ctorParameters: function () { return []; }, propDecorators: { cssClasses: [{
@@ -103,18 +103,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.3",
103
103
  }] } });
104
104
  /* eslint-disable */
105
105
  export class EuiFieldsetLabelRightContentTagDirective {
106
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.3", ngImport: i0, type: EuiFieldsetLabelRightContentTagDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
107
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.0-next.3", type: EuiFieldsetLabelRightContentTagDirective, selector: "euiFieldsetLabelRightContent", ngImport: i0 }); }
106
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiFieldsetLabelRightContentTagDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
107
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.0-next.4", type: EuiFieldsetLabelRightContentTagDirective, selector: "euiFieldsetLabelRightContent", ngImport: i0 }); }
108
108
  }
109
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.3", ngImport: i0, type: EuiFieldsetLabelRightContentTagDirective, decorators: [{
109
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiFieldsetLabelRightContentTagDirective, decorators: [{
110
110
  type: Directive,
111
111
  args: [{ selector: 'euiFieldsetLabelRightContent' }]
112
112
  }] });
113
113
  export class EuiFieldsetLabelExtraContentTagDirective {
114
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.3", ngImport: i0, type: EuiFieldsetLabelExtraContentTagDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
115
- /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.0-next.3", type: EuiFieldsetLabelExtraContentTagDirective, selector: "euiFieldsetLabelExtraContent", ngImport: i0 }); }
114
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiFieldsetLabelExtraContentTagDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
115
+ /** @nocollapse */ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.0-next.4", type: EuiFieldsetLabelExtraContentTagDirective, selector: "euiFieldsetLabelExtraContent", ngImport: i0 }); }
116
116
  }
117
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.3", ngImport: i0, type: EuiFieldsetLabelExtraContentTagDirective, decorators: [{
117
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiFieldsetLabelExtraContentTagDirective, decorators: [{
118
118
  type: Directive,
119
119
  args: [{ selector: 'euiFieldsetLabelExtraContent' }]
120
120
  }] });
@@ -5,11 +5,11 @@ import { EuiIconModule } from '@eui/components/eui-icon';
5
5
  import { EuiFieldsetComponent, EuiFieldsetLabelExtraContentTagDirective, EuiFieldsetLabelRightContentTagDirective, } from './eui-fieldset.component';
6
6
  import * as i0 from "@angular/core";
7
7
  export class EuiFieldsetModule {
8
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.3", ngImport: i0, type: EuiFieldsetModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
9
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.0-next.3", ngImport: i0, type: EuiFieldsetModule, declarations: [EuiFieldsetComponent, EuiFieldsetLabelRightContentTagDirective, EuiFieldsetLabelExtraContentTagDirective], imports: [CommonModule, EuiButtonModule, EuiIconModule], exports: [EuiFieldsetComponent, EuiFieldsetLabelRightContentTagDirective, EuiFieldsetLabelExtraContentTagDirective] }); }
10
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.0-next.3", ngImport: i0, type: EuiFieldsetModule, imports: [CommonModule, EuiButtonModule, EuiIconModule] }); }
8
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiFieldsetModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
9
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiFieldsetModule, declarations: [EuiFieldsetComponent, EuiFieldsetLabelRightContentTagDirective, EuiFieldsetLabelExtraContentTagDirective], imports: [CommonModule, EuiButtonModule, EuiIconModule], exports: [EuiFieldsetComponent, EuiFieldsetLabelRightContentTagDirective, EuiFieldsetLabelExtraContentTagDirective] }); }
10
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiFieldsetModule, imports: [CommonModule, EuiButtonModule, EuiIconModule] }); }
11
11
  }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.3", ngImport: i0, type: EuiFieldsetModule, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiFieldsetModule, decorators: [{
13
13
  type: NgModule,
14
14
  args: [{
15
15
  imports: [CommonModule, EuiButtonModule, EuiIconModule],
@@ -14,12 +14,12 @@ export class EuiFileUploadComponent {
14
14
  this.accept = '*';
15
15
  // eslint-disable-next-line @angular-eslint/no-output-native
16
16
  this.drop = new EventEmitter();
17
- this.dropAreaClass = 'file-drop-area';
17
+ this.itemClick = new EventEmitter();
18
18
  this.files = [];
19
19
  this.filesTotalSize = 0;
20
20
  this.randomNumberId = Math.floor(Math.random() * 10000);
21
21
  this.uploadedFiles = [];
22
- this.itemClick = new EventEmitter();
22
+ this.dragEntered = false;
23
23
  this._isMultiple = true;
24
24
  this._hasProgressBar = true;
25
25
  this._hasPreview = true;
@@ -87,13 +87,15 @@ export class EuiFileUploadComponent {
87
87
  this._isItemsClickable = coerceBooleanProperty(value);
88
88
  }
89
89
  emitFiles(fileList) {
90
+ let i = [...this.uploadedFiles, ...this.files].length;
90
91
  for (const property in fileList) {
91
- if (fileList[property] && typeof fileList[property] === 'object') {
92
+ if (fileList[property] && typeof fileList[property] === 'object' && (!this.maxFiles || i < this.maxFiles)) {
92
93
  const fileName = fileList[property].name.split('.');
93
94
  const fileExtension = fileName[fileName.length - 1];
94
95
  if (this.accept.indexOf(fileExtension) !== -1 || this.accept === '*') {
95
96
  this.files.push(fileList[property]);
96
97
  }
98
+ i++;
97
99
  }
98
100
  }
99
101
  this.getTotalSize();
@@ -102,22 +104,32 @@ export class EuiFileUploadComponent {
102
104
  this.fileInputs.first.nativeElement.value = '';
103
105
  this.fileInputs.last.nativeElement.value = '';
104
106
  }
105
- this.dropAreaClass = 'file-drop-area';
107
+ this.dragEntered = false;
106
108
  this.drop.emit();
107
109
  }
110
+ get showResetBtn() {
111
+ return this.hasResetButton && this.isMultiple && (this.files.length > 0 || this.uploadedFiles.length > 0);
112
+ }
113
+ get isDropAreaDisabled() {
114
+ return (!this.isMultiple && this.files.length === 1) || [...this.uploadedFiles, ...this.files].length === this.maxFiles;
115
+ }
116
+ ngOnChanges(c) {
117
+ if (c?.isMultiple) {
118
+ this.maxFiles = 1;
119
+ }
120
+ }
108
121
  ngOnInit() {
109
122
  if (this.hasPreviewAsIcon) {
110
123
  this.hasPreviewAsImage = false;
111
124
  }
112
125
  }
113
- get showResetBtn() {
114
- return this.hasResetButton && (this.files.length > 0 || this.uploadedFiles.length > 0);
115
- }
116
126
  onDragEnter() {
117
- this.dropAreaClass = 'file-drop-area-active';
127
+ if (!this.isDropAreaDisabled) {
128
+ this.dragEntered = true;
129
+ }
118
130
  }
119
131
  onDragLeave() {
120
- this.dropAreaClass = 'file-drop-area';
132
+ this.dragEntered = false;
121
133
  }
122
134
  removeFromList(index) {
123
135
  this.files = this.files.filter((f, i) => i !== index);
@@ -156,7 +168,7 @@ export class EuiFileUploadComponent {
156
168
  registerOnChange(fn) {
157
169
  this.onChange = fn;
158
170
  }
159
- // eslint-disable-next-line @typescript-eslint/no-empty-function
171
+ // eslint-disable-next-line @typescript-eslint/no-empty-function, @typescript-eslint/no-unused-vars
160
172
  registerOnTouched(fn) { }
161
173
  getTotalSize() {
162
174
  this.filesTotalSize = 0;
@@ -164,16 +176,16 @@ export class EuiFileUploadComponent {
164
176
  this.filesTotalSize += f.size;
165
177
  });
166
178
  }
167
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.3", ngImport: i0, type: EuiFileUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
168
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.0-next.3", type: EuiFileUploadComponent, selector: "eui-file-upload", inputs: { e2eAttr: "e2eAttr", progress: "progress", accept: "accept", isMultiple: "isMultiple", hasProgressBar: "hasProgressBar", hasPreview: "hasPreview", hasPreviewAsImage: "hasPreviewAsImage", hasPreviewAsIcon: "hasPreviewAsIcon", hasTotalSizeDisplayed: "hasTotalSizeDisplayed", hasResetButton: "hasResetButton", hasDragArea: "hasDragArea", isItemsClickable: "isItemsClickable" }, outputs: { drop: "drop", itemClick: "itemClick" }, host: { listeners: { "change": "emitFiles($event.target.files)" } }, providers: [
179
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiFileUploadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
180
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.0-next.4", type: EuiFileUploadComponent, selector: "eui-file-upload", inputs: { e2eAttr: "e2eAttr", progress: "progress", accept: "accept", maxFiles: "maxFiles", isMultiple: "isMultiple", hasProgressBar: "hasProgressBar", hasPreview: "hasPreview", hasPreviewAsImage: "hasPreviewAsImage", hasPreviewAsIcon: "hasPreviewAsIcon", hasTotalSizeDisplayed: "hasTotalSizeDisplayed", hasResetButton: "hasResetButton", hasDragArea: "hasDragArea", isItemsClickable: "isItemsClickable" }, outputs: { drop: "drop", itemClick: "itemClick" }, host: { listeners: { "change": "emitFiles($event.target.files)" } }, providers: [
169
181
  {
170
182
  provide: NG_VALUE_ACCESSOR,
171
183
  useExisting: EuiFileUploadComponent,
172
184
  multi: true,
173
185
  },
174
- ], viewQueries: [{ propertyName: "fileInputs", predicate: ["input"], descendants: true }], ngImport: i0, template: "<div class=\"file-upload\" attr.data-e2e=\"{{ e2eAttr }}\">\n <div [class]=\"dropAreaClass\" *ngIf=\"hasDragArea\">\n <span class=\"fake-btn\">{{ 'eui.euifileupload.CHOOSE-FILE' | translate }}</span>\n <span class=\"file-msg\">{{ 'eui.euifileupload.DRAG-AND-DROP-FILE-HERE' | translate }}</span>\n <input\n #input\n class=\"file-input\"\n attr.aria-label=\"{{ 'eui.euifileupload.CHOOSE-FILE' | translate }} 'or' {{\n 'eui.euifileupload.DRAG-AND-DROP-FILE-HERE' | translate\n }}\"\n type=\"file\"\n accept=\"{{ accept }}\"\n [multiple]=\"isMultiple\"\n (dragenter)=\"onDragEnter()\"\n (dragleave)=\"onDragLeave()\" />\n </div>\n <div class=\"simple-input-file eui-u-mb-xs\" *ngIf=\"!hasDragArea\">\n <label for=\"file-{{ randomNumberId }}\">\n <button euiButton type=\"button\" (click)=\"openBrowseWindow()\">{{ 'eui.euifileupload.CHOOSE-FILE' | translate }}</button>\n </label>\n\n <input\n #input\n *ngIf=\"isMultiple\"\n aria-label=\"Choose Multiple Files\"\n class=\"file-input\"\n id=\"file-{{ randomNumberId }}\"\n type=\"file\"\n accept=\"{{ accept }}\"\n multiple />\n <input\n #input\n *ngIf=\"!isMultiple\"\n aria-label=\"Choose a single file\"\n class=\"file-input\"\n id=\"file-{{ randomNumberId }}\"\n type=\"file\"\n accept=\"{{ accept }}\" />\n </div>\n <eui-file-upload-progress *ngIf=\"hasProgressBar\" [progress]=\"progress\"></eui-file-upload-progress>\n\n <div *ngFor=\"let uploadedFile of uploadedFiles; let i = index\">\n <eui-file-preview\n [isItemsClickable]=\"isItemsClickable\"\n [index]=\"i\"\n [file]=\"uploadedFile\"\n [hasPreview]=\"hasPreview\"\n [hasPreviewAsImage]=\"hasPreviewAsImage\"\n [hasPreviewAsIcon]=\"hasPreviewAsIcon\"\n (itemClick)=\"onItemClick($event)\"\n (removeFromList)=\"removeFromUploadedList($event)\">\n </eui-file-preview>\n </div>\n\n <div *ngFor=\"let file of files; let i = index\">\n <eui-file-preview\n [isItemsClickable]=\"isItemsClickable\"\n [index]=\"i\"\n [file]=\"file\"\n [hasPreview]=\"hasPreview\"\n [hasPreviewAsImage]=\"hasPreviewAsImage\"\n [hasPreviewAsIcon]=\"hasPreviewAsIcon\"\n (itemClick)=\"onItemClick($event)\"\n (removeFromList)=\"removeFromList($event)\">\n </eui-file-preview>\n </div>\n\n <div class=\"file-upload__total-size\" *ngIf=\"filesTotalSize && hasTotalSizeDisplayed\">\n {{ filesTotalSize | filesize }} {{ 'eui.euifileupload.TOTAL-SIZE' | translate }}\n </div>\n</div>\n<ng-content></ng-content>\n<button euiButton class=\"file-upload__reset-button\" type=\"button\" (click)=\"resetList()\" *ngIf=\"showResetBtn\">\n {{ 'eui.euifileupload.RESET-LIST' | translate }}\n</button>\n", styles: [".file-upload .file-upload__total-size{font-weight:700;margin-bottom:1rem}.file-upload .file-drop-area{outline:1px dashed var(--eui-base-color-primary-75);border-radius:3px;margin:0 0 10px;padding:30px;position:relative;transition:.2s}.file-upload .file-drop-area-active{background-color:var(--eui-base-color-primary-5);outline:3px dashed var(--eui-base-color-primary-75);border-radius:3px;margin:0 0 10px;padding:30px;position:relative;transition:.2s}.file-upload .fake-btn{background-color:#fff;border:1px solid #9e9ec4;border-radius:3px;margin-right:8px;padding:8px 15px}.file-upload .file-input{cursor:pointer;height:100%;left:0;opacity:0;position:absolute;top:0;width:100%}.file-upload .simple-input-file .file-input{display:none}.file-upload .file-upload__preview{align-items:center;display:flex;flex-wrap:wrap;justify-content:space-between;margin:5px 0}.file-upload .file-upload__preview .file-upload__preview__image img{width:180px}.file-upload .file-upload__preview .file-upload__preview__image .loading-coatainer{text-align:center;width:180px}.file-upload .file-upload__preview .file-upload__preview__filename{width:50%}.file-upload .progress-bar__container{margin-bottom:var(--eui-base-spacing-2xs)}.file-upload .progress-bar__container .progress-bar{background-color:var(--eui-base-color-primary-100);height:var(--eui-base-spacing-2xs)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "isLoading", "euiIconButton", "euiLineWrap"], outputs: ["buttonClick"] }, { kind: "component", type: i3.EuiFileUploadProgressComponent, selector: "eui-file-upload-progress", inputs: ["progress"] }, { kind: "component", type: i4.EuiFilePreviewComponent, selector: "eui-file-preview", inputs: ["file", "index", "previewAsIconConfig", "hasPreview", "isFilenameDisplayed", "isFilesizeDisplayed", "isFiletypeDisplayed", "hasPreviewAsImage", "hasPreviewAsIcon", "isItemsClickable"], outputs: ["removeFromList", "itemClick"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "pipe", type: i6.EuiFileSizePipe, name: "filesize" }], encapsulation: i0.ViewEncapsulation.None }); }
186
+ ], viewQueries: [{ propertyName: "fileInputs", predicate: ["input"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"file-upload\">\n <div\n class=\"file-drop-area\"\n [class.file-drop-area--active]=\"dragEntered\"\n [class.file-drop-area--disabled]=\"isDropAreaDisabled\"\n *ngIf=\"hasDragArea\">\n <span class=\"fake-btn\">{{ 'eui.euifileupload.CHOOSE-FILE' | translate }}</span>\n <span class=\"file-msg\">{{ 'eui.euifileupload.DRAG-AND-DROP-FILE-HERE' | translate }}</span>\n <input\n #input\n class=\"file-input\"\n attr.aria-label=\"{{ 'eui.euifileupload.CHOOSE-FILE' | translate }} 'or' {{\n 'eui.euifileupload.DRAG-AND-DROP-FILE-HERE' | translate\n }}\"\n type=\"file\"\n accept=\"{{ accept }}\"\n [attr.disabled]=\"isDropAreaDisabled ? 'disabled' : null\"\n [multiple]=\"isMultiple\"\n (dragenter)=\"onDragEnter()\"\n (dragleave)=\"onDragLeave()\" />\n </div>\n <div class=\"simple-input-file eui-u-mb-xs\" *ngIf=\"!hasDragArea\">\n <label for=\"file-{{ randomNumberId }}\">\n <button euiButton type=\"button\" (click)=\"openBrowseWindow()\">{{ 'eui.euifileupload.CHOOSE-FILE' | translate }}</button>\n </label>\n\n <input\n #input\n *ngIf=\"isMultiple\"\n aria-label=\"Choose Multiple Files\"\n class=\"file-input\"\n id=\"file-{{ randomNumberId }}\"\n type=\"file\"\n accept=\"{{ accept }}\"\n multiple />\n <input\n #input\n *ngIf=\"!isMultiple\"\n aria-label=\"Choose a single file\"\n class=\"file-input\"\n id=\"file-{{ randomNumberId }}\"\n type=\"file\"\n accept=\"{{ accept }}\" />\n </div>\n <eui-file-upload-progress *ngIf=\"hasProgressBar\" [progress]=\"progress\"></eui-file-upload-progress>\n\n <div *ngFor=\"let uploadedFile of uploadedFiles; let i = index\">\n <eui-file-preview\n [isItemsClickable]=\"isItemsClickable\"\n [index]=\"i\"\n [file]=\"uploadedFile\"\n [hasPreview]=\"hasPreview\"\n [hasPreviewAsImage]=\"hasPreviewAsImage\"\n [hasPreviewAsIcon]=\"hasPreviewAsIcon\"\n (itemClick)=\"onItemClick($event)\"\n (removeFromList)=\"removeFromUploadedList($event)\">\n </eui-file-preview>\n </div>\n\n <div *ngFor=\"let file of files; let i = index\">\n <eui-file-preview\n [isItemsClickable]=\"isItemsClickable\"\n [index]=\"i\"\n [file]=\"file\"\n [hasPreview]=\"hasPreview\"\n [hasPreviewAsImage]=\"hasPreviewAsImage\"\n [hasPreviewAsIcon]=\"hasPreviewAsIcon\"\n (itemClick)=\"onItemClick($event)\"\n (removeFromList)=\"removeFromList($event)\">\n </eui-file-preview>\n </div>\n\n <div class=\"file-upload__total-size\" *ngIf=\"filesTotalSize && hasTotalSizeDisplayed\">\n {{ filesTotalSize | filesize }} {{ 'eui.euifileupload.TOTAL-SIZE' | translate }}\n </div>\n</div>\n<ng-content></ng-content>\n<button euiButton class=\"file-upload__reset-button\" type=\"button\" (click)=\"resetList()\" *ngIf=\"showResetBtn\">\n {{ 'eui.euifileupload.RESET-LIST' | translate }}\n</button>\n", styles: [".file-upload .file-upload__total-size{font-weight:700;margin-bottom:1rem}.file-upload .file-drop-area{outline:1px dashed var(--eui-base-color-primary-75);border-radius:3px;margin:0 0 10px;padding:30px;position:relative;transition:.2s}.file-upload .file-drop-area--active{background-color:var(--eui-base-color-primary-5);outline:3px dashed var(--eui-base-color-primary-75);border-radius:3px;margin:0 0 10px;padding:30px;position:relative;transition:.2s}.file-upload .file-drop-area--disabled{opacity:.5}.file-upload .file-drop-area--disabled .file-input{cursor:default}.file-upload .fake-btn{background-color:#fff;border:1px solid #9e9ec4;border-radius:3px;margin-right:8px;padding:8px 15px}.file-upload .file-input{cursor:pointer;height:100%;left:0;opacity:0;position:absolute;top:0;width:100%}.file-upload .simple-input-file .file-input{display:none}.file-upload .file-upload__preview{align-items:center;display:flex;flex-wrap:wrap;justify-content:space-between;margin:5px 0}.file-upload .file-upload__preview .file-upload__preview__image img{width:180px}.file-upload .file-upload__preview .file-upload__preview__image .loading-coatainer{text-align:center;width:180px}.file-upload .file-upload__preview .file-upload__preview__filename{width:50%}.file-upload .progress-bar__container{margin-bottom:var(--eui-base-spacing-2xs)}.file-upload .progress-bar__container .progress-bar{background-color:var(--eui-base-color-primary-100);height:var(--eui-base-spacing-2xs)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "isLoading", "euiIconButton", "euiLineWrap"], outputs: ["buttonClick"] }, { kind: "component", type: i3.EuiFileUploadProgressComponent, selector: "eui-file-upload-progress", inputs: ["progress"] }, { kind: "component", type: i4.EuiFilePreviewComponent, selector: "eui-file-preview", inputs: ["file", "index", "previewAsIconConfig", "hasPreview", "isFilenameDisplayed", "isFilesizeDisplayed", "isFiletypeDisplayed", "hasPreviewAsImage", "hasPreviewAsIcon", "isItemsClickable"], outputs: ["removeFromList", "itemClick"] }, { kind: "pipe", type: i5.TranslatePipe, name: "translate" }, { kind: "pipe", type: i6.EuiFileSizePipe, name: "filesize" }], encapsulation: i0.ViewEncapsulation.None }); }
175
187
  }
176
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.3", ngImport: i0, type: EuiFileUploadComponent, decorators: [{
188
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiFileUploadComponent, decorators: [{
177
189
  type: Component,
178
190
  args: [{ selector: 'eui-file-upload', providers: [
179
191
  {
@@ -181,20 +193,22 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.3",
181
193
  useExisting: EuiFileUploadComponent,
182
194
  multi: true,
183
195
  },
184
- ], encapsulation: ViewEncapsulation.None, template: "<div class=\"file-upload\" attr.data-e2e=\"{{ e2eAttr }}\">\n <div [class]=\"dropAreaClass\" *ngIf=\"hasDragArea\">\n <span class=\"fake-btn\">{{ 'eui.euifileupload.CHOOSE-FILE' | translate }}</span>\n <span class=\"file-msg\">{{ 'eui.euifileupload.DRAG-AND-DROP-FILE-HERE' | translate }}</span>\n <input\n #input\n class=\"file-input\"\n attr.aria-label=\"{{ 'eui.euifileupload.CHOOSE-FILE' | translate }} 'or' {{\n 'eui.euifileupload.DRAG-AND-DROP-FILE-HERE' | translate\n }}\"\n type=\"file\"\n accept=\"{{ accept }}\"\n [multiple]=\"isMultiple\"\n (dragenter)=\"onDragEnter()\"\n (dragleave)=\"onDragLeave()\" />\n </div>\n <div class=\"simple-input-file eui-u-mb-xs\" *ngIf=\"!hasDragArea\">\n <label for=\"file-{{ randomNumberId }}\">\n <button euiButton type=\"button\" (click)=\"openBrowseWindow()\">{{ 'eui.euifileupload.CHOOSE-FILE' | translate }}</button>\n </label>\n\n <input\n #input\n *ngIf=\"isMultiple\"\n aria-label=\"Choose Multiple Files\"\n class=\"file-input\"\n id=\"file-{{ randomNumberId }}\"\n type=\"file\"\n accept=\"{{ accept }}\"\n multiple />\n <input\n #input\n *ngIf=\"!isMultiple\"\n aria-label=\"Choose a single file\"\n class=\"file-input\"\n id=\"file-{{ randomNumberId }}\"\n type=\"file\"\n accept=\"{{ accept }}\" />\n </div>\n <eui-file-upload-progress *ngIf=\"hasProgressBar\" [progress]=\"progress\"></eui-file-upload-progress>\n\n <div *ngFor=\"let uploadedFile of uploadedFiles; let i = index\">\n <eui-file-preview\n [isItemsClickable]=\"isItemsClickable\"\n [index]=\"i\"\n [file]=\"uploadedFile\"\n [hasPreview]=\"hasPreview\"\n [hasPreviewAsImage]=\"hasPreviewAsImage\"\n [hasPreviewAsIcon]=\"hasPreviewAsIcon\"\n (itemClick)=\"onItemClick($event)\"\n (removeFromList)=\"removeFromUploadedList($event)\">\n </eui-file-preview>\n </div>\n\n <div *ngFor=\"let file of files; let i = index\">\n <eui-file-preview\n [isItemsClickable]=\"isItemsClickable\"\n [index]=\"i\"\n [file]=\"file\"\n [hasPreview]=\"hasPreview\"\n [hasPreviewAsImage]=\"hasPreviewAsImage\"\n [hasPreviewAsIcon]=\"hasPreviewAsIcon\"\n (itemClick)=\"onItemClick($event)\"\n (removeFromList)=\"removeFromList($event)\">\n </eui-file-preview>\n </div>\n\n <div class=\"file-upload__total-size\" *ngIf=\"filesTotalSize && hasTotalSizeDisplayed\">\n {{ filesTotalSize | filesize }} {{ 'eui.euifileupload.TOTAL-SIZE' | translate }}\n </div>\n</div>\n<ng-content></ng-content>\n<button euiButton class=\"file-upload__reset-button\" type=\"button\" (click)=\"resetList()\" *ngIf=\"showResetBtn\">\n {{ 'eui.euifileupload.RESET-LIST' | translate }}\n</button>\n", styles: [".file-upload .file-upload__total-size{font-weight:700;margin-bottom:1rem}.file-upload .file-drop-area{outline:1px dashed var(--eui-base-color-primary-75);border-radius:3px;margin:0 0 10px;padding:30px;position:relative;transition:.2s}.file-upload .file-drop-area-active{background-color:var(--eui-base-color-primary-5);outline:3px dashed var(--eui-base-color-primary-75);border-radius:3px;margin:0 0 10px;padding:30px;position:relative;transition:.2s}.file-upload .fake-btn{background-color:#fff;border:1px solid #9e9ec4;border-radius:3px;margin-right:8px;padding:8px 15px}.file-upload .file-input{cursor:pointer;height:100%;left:0;opacity:0;position:absolute;top:0;width:100%}.file-upload .simple-input-file .file-input{display:none}.file-upload .file-upload__preview{align-items:center;display:flex;flex-wrap:wrap;justify-content:space-between;margin:5px 0}.file-upload .file-upload__preview .file-upload__preview__image img{width:180px}.file-upload .file-upload__preview .file-upload__preview__image .loading-coatainer{text-align:center;width:180px}.file-upload .file-upload__preview .file-upload__preview__filename{width:50%}.file-upload .progress-bar__container{margin-bottom:var(--eui-base-spacing-2xs)}.file-upload .progress-bar__container .progress-bar{background-color:var(--eui-base-color-primary-100);height:var(--eui-base-spacing-2xs)}\n"] }]
196
+ ], encapsulation: ViewEncapsulation.None, template: "<div class=\"file-upload\">\n <div\n class=\"file-drop-area\"\n [class.file-drop-area--active]=\"dragEntered\"\n [class.file-drop-area--disabled]=\"isDropAreaDisabled\"\n *ngIf=\"hasDragArea\">\n <span class=\"fake-btn\">{{ 'eui.euifileupload.CHOOSE-FILE' | translate }}</span>\n <span class=\"file-msg\">{{ 'eui.euifileupload.DRAG-AND-DROP-FILE-HERE' | translate }}</span>\n <input\n #input\n class=\"file-input\"\n attr.aria-label=\"{{ 'eui.euifileupload.CHOOSE-FILE' | translate }} 'or' {{\n 'eui.euifileupload.DRAG-AND-DROP-FILE-HERE' | translate\n }}\"\n type=\"file\"\n accept=\"{{ accept }}\"\n [attr.disabled]=\"isDropAreaDisabled ? 'disabled' : null\"\n [multiple]=\"isMultiple\"\n (dragenter)=\"onDragEnter()\"\n (dragleave)=\"onDragLeave()\" />\n </div>\n <div class=\"simple-input-file eui-u-mb-xs\" *ngIf=\"!hasDragArea\">\n <label for=\"file-{{ randomNumberId }}\">\n <button euiButton type=\"button\" (click)=\"openBrowseWindow()\">{{ 'eui.euifileupload.CHOOSE-FILE' | translate }}</button>\n </label>\n\n <input\n #input\n *ngIf=\"isMultiple\"\n aria-label=\"Choose Multiple Files\"\n class=\"file-input\"\n id=\"file-{{ randomNumberId }}\"\n type=\"file\"\n accept=\"{{ accept }}\"\n multiple />\n <input\n #input\n *ngIf=\"!isMultiple\"\n aria-label=\"Choose a single file\"\n class=\"file-input\"\n id=\"file-{{ randomNumberId }}\"\n type=\"file\"\n accept=\"{{ accept }}\" />\n </div>\n <eui-file-upload-progress *ngIf=\"hasProgressBar\" [progress]=\"progress\"></eui-file-upload-progress>\n\n <div *ngFor=\"let uploadedFile of uploadedFiles; let i = index\">\n <eui-file-preview\n [isItemsClickable]=\"isItemsClickable\"\n [index]=\"i\"\n [file]=\"uploadedFile\"\n [hasPreview]=\"hasPreview\"\n [hasPreviewAsImage]=\"hasPreviewAsImage\"\n [hasPreviewAsIcon]=\"hasPreviewAsIcon\"\n (itemClick)=\"onItemClick($event)\"\n (removeFromList)=\"removeFromUploadedList($event)\">\n </eui-file-preview>\n </div>\n\n <div *ngFor=\"let file of files; let i = index\">\n <eui-file-preview\n [isItemsClickable]=\"isItemsClickable\"\n [index]=\"i\"\n [file]=\"file\"\n [hasPreview]=\"hasPreview\"\n [hasPreviewAsImage]=\"hasPreviewAsImage\"\n [hasPreviewAsIcon]=\"hasPreviewAsIcon\"\n (itemClick)=\"onItemClick($event)\"\n (removeFromList)=\"removeFromList($event)\">\n </eui-file-preview>\n </div>\n\n <div class=\"file-upload__total-size\" *ngIf=\"filesTotalSize && hasTotalSizeDisplayed\">\n {{ filesTotalSize | filesize }} {{ 'eui.euifileupload.TOTAL-SIZE' | translate }}\n </div>\n</div>\n<ng-content></ng-content>\n<button euiButton class=\"file-upload__reset-button\" type=\"button\" (click)=\"resetList()\" *ngIf=\"showResetBtn\">\n {{ 'eui.euifileupload.RESET-LIST' | translate }}\n</button>\n", styles: [".file-upload .file-upload__total-size{font-weight:700;margin-bottom:1rem}.file-upload .file-drop-area{outline:1px dashed var(--eui-base-color-primary-75);border-radius:3px;margin:0 0 10px;padding:30px;position:relative;transition:.2s}.file-upload .file-drop-area--active{background-color:var(--eui-base-color-primary-5);outline:3px dashed var(--eui-base-color-primary-75);border-radius:3px;margin:0 0 10px;padding:30px;position:relative;transition:.2s}.file-upload .file-drop-area--disabled{opacity:.5}.file-upload .file-drop-area--disabled .file-input{cursor:default}.file-upload .fake-btn{background-color:#fff;border:1px solid #9e9ec4;border-radius:3px;margin-right:8px;padding:8px 15px}.file-upload .file-input{cursor:pointer;height:100%;left:0;opacity:0;position:absolute;top:0;width:100%}.file-upload .simple-input-file .file-input{display:none}.file-upload .file-upload__preview{align-items:center;display:flex;flex-wrap:wrap;justify-content:space-between;margin:5px 0}.file-upload .file-upload__preview .file-upload__preview__image img{width:180px}.file-upload .file-upload__preview .file-upload__preview__image .loading-coatainer{text-align:center;width:180px}.file-upload .file-upload__preview .file-upload__preview__filename{width:50%}.file-upload .progress-bar__container{margin-bottom:var(--eui-base-spacing-2xs)}.file-upload .progress-bar__container .progress-bar{background-color:var(--eui-base-color-primary-100);height:var(--eui-base-spacing-2xs)}\n"] }]
185
197
  }], propDecorators: { e2eAttr: [{
186
198
  type: Input
187
199
  }], progress: [{
188
200
  type: Input
189
201
  }], accept: [{
190
202
  type: Input
203
+ }], maxFiles: [{
204
+ type: Input
191
205
  }], drop: [{
192
206
  type: Output
207
+ }], itemClick: [{
208
+ type: Output
193
209
  }], fileInputs: [{
194
210
  type: ViewChildren,
195
211
  args: ['input']
196
- }], itemClick: [{
197
- type: Output
198
212
  }], isMultiple: [{
199
213
  type: Input
200
214
  }], hasProgressBar: [{
@@ -217,4 +231,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.3",
217
231
  type: HostListener,
218
232
  args: ['change', ['$event.target.files']]
219
233
  }] } });
220
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLWZpbGUtdXBsb2FkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2V1aS1maWxlLXVwbG9hZC9ldWktZmlsZS11cGxvYWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vZXVpLWZpbGUtdXBsb2FkL2V1aS1maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBQ0wsaUJBQWlCLEVBRWpCLFlBQVksRUFFWixNQUFNLEVBQ04sWUFBWSxHQUNmLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxxQkFBcUIsRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RSxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7O0FBaUJ6RSxNQUFNLE9BQU8sc0JBQXNCO0lBYm5DO1FBY2EsWUFBTyxHQUFHLGlCQUFpQixDQUFDO1FBRTVCLFdBQU0sR0FBRyxHQUFHLENBQUM7UUFFdEIsNERBQTREO1FBQ2xELFNBQUksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBRXBDLGtCQUFhLEdBQUcsZ0JBQWdCLENBQUM7UUFDMUIsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUNuQixtQkFBYyxHQUFHLENBQUMsQ0FBQztRQUNuQixtQkFBYyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQyxDQUFDO1FBQ25ELGtCQUFhLEdBQXNCLEVBQUUsQ0FBQztRQUduQyxjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQWdDLENBQUM7UUFTL0QsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFRbkIsb0JBQWUsR0FBRyxJQUFJLENBQUM7UUFRdkIsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFRbkIsdUJBQWtCLEdBQUcsSUFBSSxDQUFDO1FBUTFCLHNCQUFpQixHQUFH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QUssRUFBRSxJQUFJO2FBQ2Q7U0FDSixrSEMxQkwsc2xHQTJFQTs7a0dEN0NhLHNCQUFzQjtrQkFibEMsU0FBUzsrQkFDSSxpQkFBaUIsYUFFaEI7d0JBQ1A7NEJBQ0ksT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyx3QkFBd0I7NEJBQ25DLEtBQUssRUFBRSxJQUFJO3lCQUNkO3FCQUNKLGlCQUVjLGlCQUFpQixDQUFDLElBQUk7OEJBRzVCLE9BQU87c0JBQWYsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFHSSxJQUFJO3NCQUFiLE1BQU07Z0JBT2dCLFVBQVU7c0JBQWhDLFlBQVk7dUJBQUMsT0FBTztnQkFFWCxTQUFTO3NCQUFsQixNQUFNO2dCQUdILFVBQVU7c0JBRGIsS0FBSztnQkFTRixjQUFjO3NCQURqQixLQUFLO2dCQVNGLFVBQVU7c0JBRGIsS0FBSztnQkFTRixpQkFBaUI7c0JBRHBCLEtBQUs7Z0JBU0YsZ0JBQWdCO3NCQURuQixLQUFLO2dCQVNGLHFCQUFxQjtzQkFEeEIsS0FBSztnQkFTRixjQUFjO3NCQURqQixLQUFLO2dCQVNGLFdBQVc7c0JBRGQsS0FBSztnQkFTRixnQkFBZ0I7c0JBRG5CLEtBQUs7Z0JBUzJDLFNBQVM7c0JBQXpELFlBQVk7dUJBQUMsUUFBUSxFQUFFLENBQUMscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbnB1dCxcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgICBPbkluaXQsXG4gICAgVmlld0NoaWxkcmVuLFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBPdXRwdXQsXG4gICAgRXZlbnRFbWl0dGVyLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSwgQm9vbGVhbklucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgRXVpVXBsb2FkZWRGaWxlIH0gZnJvbSAnLi9tb2RlbHMvdXBsb2FkZWQtZmlsZS5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZXVpLWZpbGUtdXBsb2FkJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZXVpLWZpbGUtdXBsb2FkLmNvbXBvbmVudC5odG1sJyxcbiAgICBwcm92aWRlcnM6IFtcbiAgICAgICAge1xuICAgICAgICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICAgICAgICB1c2VFeGlzdGluZzogRXVpRmlsZVVwbG9hZENvbXBvbmVudCxcbiAgICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgIF0sXG4gICAgc3R5bGVVcmxzOiBbJy4vc3R5bGVzL19pbmRleC5zY3NzJ10sXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgRXVpRmlsZVVwbG9hZENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBPbkluaXQge1xuICAgIEBJbnB1dCgpIGUyZUF0dHIgPSAnZXVpLWZpbGUtdXBsb2FkJztcbiAgICBASW5wdXQoKSBwcm9ncmVzczogbnVtYmVyO1xuICAgIEBJbnB1dCgpIGFjY2VwdCA9ICcqJztcblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW5hdGl2ZVxuICAgIEBPdXRwdXQoKSBkcm9wID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gICAgZHJvcEFyZWFDbGFzcyA9ICdmaWxlLWRyb3AtYXJlYSc7XG4gICAgcHVibGljIGZpbGVzOiBGaWxlW10gPSBbXTtcbiAgICBwdWJsaWMgZmlsZXNUb3RhbFNpemUgPSAwO1xuICAgIHB1YmxpYyByYW5kb21OdW1iZXJJZCA9IE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIDEwMDAwKTtcbiAgICBwdWJsaWMgdXBsb2FkZWRGaWxlczogRXVpVXBsb2FkZWRGaWxlW10gPSBbXTtcbiAgICBAVmlld0NoaWxkcmVuKCdpbnB1dCcpIGZpbGVJbnB1dHM6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+PjtcblxuICAgIEBPdXRwdXQoKSBpdGVtQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPEJsb2IgfCBFdWlVcGxvYWRlZEZpbGUgfCBhbnk+KCk7XG5cbiAgICBASW5wdXQoKVxuICAgIGdldCBpc011bHRpcGxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNNdWx0aXBsZTtcbiAgICB9XG4gICAgc2V0IGlzTXVsdGlwbGUodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9pc011bHRpcGxlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaXNNdWx0aXBsZSA9IHRydWU7XG4gICAgQElucHV0KClcbiAgICBnZXQgaGFzUHJvZ3Jlc3NCYXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9oYXNQcm9ncmVzc0JhcjtcbiAgICB9XG4gICAgc2V0IGhhc1Byb2dyZXNzQmFyKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faGFzUHJvZ3Jlc3NCYXIgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9oYXNQcm9ncmVzc0JhciA9IHRydWU7XG4gICAgQElucHV0KClcbiAgICBnZXQgaGFzUHJldmlldygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hhc1ByZXZpZXc7XG4gICAgfVxuICAgIHNldCBoYXNQcmV2aWV3KHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faGFzUHJldmlldyA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2hhc1ByZXZpZXcgPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGhhc1ByZXZpZXdBc0ltYWdlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faGFzUHJldmlld0FzSW1hZ2U7XG4gICAgfVxuICAgIHNldCBoYXNQcmV2aWV3QXNJbWFnZSh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2hhc1ByZXZpZXdBc0ltYWdlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaGFzUHJldmlld0FzSW1hZ2UgPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGhhc1ByZXZpZXdBc0ljb24oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9oYXNQcmV2aWV3QXNJY29uO1xuICAgIH1cbiAgICBzZXQgaGFzUHJldmlld0FzSWNvbih2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2hhc1ByZXZpZXdBc0ljb24gPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9oYXNQcmV2aWV3QXNJY29uID0gZmFsc2U7XG4gICAgQElucHV0KClcbiAgICBnZXQgaGFzVG90YWxTaXplRGlzcGxheWVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faGFzVG90YWxTaXplRGlzcGxheWVkO1xuICAgIH1cbiAgICBzZXQgaGFzVG90YWxTaXplRGlzcGxheWVkKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faGFzVG90YWxTaXplRGlzcGxheWVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaGFzVG90YWxTaXplRGlzcGxheWVkID0gdHJ1ZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBoYXNSZXNldEJ1dHRvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hhc1Jlc2V0QnV0dG9uO1xuICAgIH1cbiAgICBzZXQgaGFzUmVzZXRCdXR0b24odmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9oYXNSZXNldEJ1dHRvbiA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2hhc1Jlc2V0QnV0dG9uID0gdHJ1ZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBoYXNEcmFnQXJlYSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hhc0RyYWdBcmVhO1xuICAgIH1cbiAgICBzZXQgaGFzRHJhZ0FyZWEodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9oYXNEcmFnQXJlYSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2hhc0RyYWdBcmVhID0gZmFsc2U7XG4gICAgQElucHV0KClcbiAgICBnZXQgaXNJdGVtc0NsaWNrYWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzSXRlbXNDbGlja2FibGU7XG4gICAgfVxuICAgIHNldCBpc0l0ZW1zQ2xpY2thYmxlKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faXNJdGVtc0NsaWNrYWJsZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2lzSXRlbXNDbGlja2FibGUgPSBmYWxzZTtcblxuICAgIEBIb3N0TGlzdGVuZXIoJ2NoYW5nZScsIFsnJGV2ZW50LnRhcmdldC5maWxlcyddKSBlbWl0RmlsZXMoZmlsZUxpc3Q6IEZpbGVMaXN0KTogdm9pZCB7XG4gICAgICAgIGZvciAoY29uc3QgcHJvcGVydHkgaW4gZmlsZUxpc3QpIHtcbiAgICAgICAgICAgIGlmIChmaWxlTGlzdFtwcm9wZXJ0eV0gJiYgdHlwZW9mIGZpbGVMaXN0W3Byb3BlcnR5XSA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBmaWxlTmFtZSA9IGZpbGVMaXN0W3Byb3BlcnR5XS5uYW1lLnNwbGl0KCcuJyk7XG4gICAgICAgICAgICAgICAgY29uc3QgZmlsZUV4dGVuc2lvbiA9IGZpbGVOYW1lW2ZpbGVOYW1lLmxlbmd0aCAtIDFdO1xuXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuYWNjZXB0LmluZGV4T2YoZmlsZUV4dGVuc2lvbikgIT09IC0xIHx8IHRoaXMuYWNjZXB0ID09PSAnKicpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5maWxlcy5wdXNoKGZpbGVMaXN0W3Byb3BlcnR5XSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5nZXRUb3RhbFNpemUoKTtcbiAgICAgICAgdGhpcy51cGxvYWRlZEZpbGVzID8gdGhpcy5vbkNoYW5nZShbLi4udGhpcy51cGxvYWRlZEZpbGVzLCAuLi50aGlzLmZpbGVzXSkgOiB0aGlzLm9uQ2hhbmdlKHRoaXMuZmlsZXMpO1xuICAgICAgICBpZiAodGhpcy5maWxlSW5wdXRzKSB7XG4gICAgICAgICAgICB0aGlzLmZpbGVJbnB1dHMuZmlyc3QubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xuICAgICAgICAgICAgdGhpcy5maWxlSW5wdXRzLmxhc3QubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZHJvcEFyZWFDbGFzcyA9ICdmaWxlLWRyb3AtYXJlYSc7XG4gICAgICAgIHRoaXMuZHJvcC5lbWl0KCk7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmhhc1ByZXZpZXdBc0ljb24pIHtcbiAgICAgICAgICAgIHRoaXMuaGFzUHJldmlld0FzSW1hZ2UgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldCBzaG93UmVzZXRCdG4oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhhc1Jlc2V0QnV0dG9uICYmICh0aGlzLmZpbGVzLmxlbmd0aCA+IDAgfHwgdGhpcy51cGxvYWRlZEZpbGVzLmxlbmd0aCA+IDApO1xuICAgIH1cblxuICAgIG9uRHJhZ0VudGVyKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRyb3BBcmVhQ2xhc3MgPSAnZmlsZS1kcm9wLWFyZWEtYWN0aXZlJztcbiAgICB9XG5cbiAgICBvbkRyYWdMZWF2ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kcm9wQXJlYUNsYXNzID0gJ2ZpbGUtZHJvcC1hcmVhJztcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVtb3ZlRnJvbUxpc3QoaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLmZpbGVzID0gdGhpcy5maWxlcy5maWx0ZXIoKGYsIGkpID0+IGkgIT09IGluZGV4KTtcblxuICAgICAgICBpZiAodGhpcy5maWxlcy5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgIHRoaXMucHJvZ3Jlc3MgPSAwO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZ2V0VG90YWxTaXplKCk7XG4gICAgICAgIHRoaXMub25DaGFuZ2UoWy4uLnRoaXMudXBsb2FkZWRGaWxlcywgLi4udGhpcy5maWxlc10pO1xuICAgIH1cblxuICAgIHB1YmxpYyByZW1vdmVGcm9tVXBsb2FkZWRMaXN0KGluZGV4OiBudW1iZXIpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGxvYWRlZEZpbGVzID0gdGhpcy51cGxvYWRlZEZpbGVzLmZpbHRlcigoZiwgaSkgPT4gaSAhPT0gaW5kZXgpO1xuXG4gICAgICAgIGlmICh0aGlzLmZpbGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgdGhpcy5wcm9ncmVzcyA9IDA7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmdldFRvdGFsU2l6ZSgpO1xuICAgICAgICB0aGlzLm9uQ2hhbmdlKFsuLi50aGlzLnVwbG9hZGVkRmlsZXMsIC4uLnRoaXMuZmlsZXNdKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVzZXRMaXN0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmZpbGVzID0gW107XG4gICAgICAgIHRoaXMudXBsb2FkZWRGaWxlcyA9IFtdO1xuICAgICAgICB0aGlzLmdldFRvdGFsU2l6ZSgpO1xuICAgICAgICB0aGlzLnByb2dyZXNzID0gMDtcbiAgICAgICAgdGhpcy5vbkNoYW5nZShbLi4udGhpcy51cGxvYWRlZEZpbGVzLCAuLi50aGlzLmZpbGVzXSk7XG4gICAgfVxuXG4gICAgcHVibGljIG9wZW5Ccm93c2VXaW5kb3coKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZmlsZUlucHV0cy5maXJzdC5uYXRpdmVFbGVtZW50LmNsaWNrKCk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uSXRlbUNsaWNrKGU6IEJsb2IgfCBFdWlVcGxvYWRlZEZpbGUgfCBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pdGVtQ2xpY2suZW1pdChlKTtcbiAgICB9XG5cbiAgICB3cml0ZVZhbHVlKHZhbHVlOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy51cGxvYWRlZEZpbGVzID0gdmFsdWUgfHwgW107XG4gICAgICAgIHRoaXMuZmlsZXMgPSBbXTtcbiAgICAgICAgdGhpcy5nZXRUb3RhbFNpemUoKTtcbiAgICB9XG5cbiAgICByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5vbkNoYW5nZSA9IGZuO1xuICAgIH1cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgICByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZCB7fVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuICAgIHByaXZhdGUgb25DaGFuZ2U6IGFueSA9ICgpID0+IHt9O1xuXG4gICAgcHJpdmF0ZSBnZXRUb3RhbFNpemUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZmlsZXNUb3RhbFNpemUgPSAwO1xuICAgICAgICB0aGlzLmZpbGVzLmZvckVhY2goKGYpID0+IHtcbiAgICAgICAgICAgIHRoaXMuZmlsZXNUb3RhbFNpemUgKz0gZi5zaXplO1xuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmlsZS11cGxvYWRcIiBhdHRyLmRhdGEtZTJlPVwie3sgZTJlQXR0ciB9fVwiPlxuICAgIDxkaXYgW2NsYXNzXT1cImRyb3BBcmVhQ2xhc3NcIiAqbmdJZj1cImhhc0RyYWdBcmVhXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZmFrZS1idG5cIj57eyAnZXVpLmV1aWZpbGV1cGxvYWQuQ0hPT1NFLUZJTEUnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImZpbGUtbXNnXCI+e3sgJ2V1aS5ldWlmaWxldXBsb2FkLkRSQUctQU5ELURST1AtRklMRS1IRVJFJyB8IHRyYW5zbGF0ZSB9fTwvc3Bhbj5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAjaW5wdXRcbiAgICAgICAgICAgIGNsYXNzPVwiZmlsZS1pbnB1dFwiXG4gICAgICAgICAgICBhdHRyLmFyaWEtbGFiZWw9XCJ7eyAnZXVpLmV1aWZpbGV1cGxvYWQuQ0hPT1NFLUZJTEUnIHwgdHJhbnNsYXRlIH19ICdvcicge3tcbiAgICAgICAgICAgICAgICAnZXVpLmV1aWZpbGV1cGxvYWQuRFJBRy1BTkQtRFJPUC1GSUxFLUhFUkUnIHwgdHJhbnNsYXRlXG4gICAgICAgICAgICB9fVwiXG4gICAgICAgICAgICB0eXBlPVwiZmlsZVwiXG4gICAgICAgICAgICBhY2NlcHQ9XCJ7eyBhY2NlcHQgfX1cIlxuICAgICAgICAgICAgW211bHRpcGxlXT1cImlzTXVsdGlwbGVcIlxuICAgICAgICAgICAgKGRyYWdlbnRlcik9XCJvbkRyYWdFbnRlcigpXCJcbiAgICAgICAgICAgIChkcmFnbGVhdmUpPVwib25EcmFnTGVhdmUoKVwiIC8+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cInNpbXBsZS1pbnB1dC1maWxlIGV1aS11LW1iLXhzXCIgKm5nSWY9XCIhaGFzRHJhZ0FyZWFcIj5cbiAgICAgICAgPGxhYmVsIGZvcj1cImZpbGUte3sgcmFuZG9tTnVtYmVySWQgfX1cIj5cbiAgICAgICAgICAgIDxidXR0b24gZXVpQnV0dG9uIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwib3BlbkJyb3dzZVdpbmRvdygpXCI+e3sgJ2V1aS5ldWlmaWxldXBsb2FkLkNIT09TRS1GSUxFJyB8IHRyYW5zbGF0ZSB9fTwvYnV0dG9uPlxuICAgICAgICA8L2xhYmVsPlxuXG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgI2lucHV0XG4gICAgICAgICAgICAqbmdJZj1cImlzTXVsdGlwbGVcIlxuICAgICAgICAgICAgYXJpYS1sYWJlbD1cIkNob29zZSBNdWx0aXBsZSBGaWxlc1wiXG4gICAgICAgICAgICBjbGFzcz1cImZpbGUtaW5wdXRcIlxuICAgICAgICAgICAgaWQ9XCJmaWxlLXt7IHJhbmRvbU51bWJlcklkIH19XCJcbiAgICAgICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgICAgIGFjY2VwdD1cInt7IGFjY2VwdCB9fVwiXG4gICAgICAgICAgICBtdWx0aXBsZSAvPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICNpbnB1dFxuICAgICAgICAgICAgKm5nSWY9XCIhaXNNdWx0aXBsZVwiXG4gICAgICAgICAgICBhcmlhLWxhYmVsPVwiQ2hvb3NlIGEgc2luZ2xlIGZpbGVcIlxuICAgICAgICAgICAgY2xhc3M9XCJmaWxlLWlucHV0XCJcbiAgICAgICAgICAgIGlkPVwiZmlsZS17eyByYW5kb21OdW1iZXJJZCB9fVwiXG4gICAgICAgICAgICB0eXBlPVwiZmlsZVwiXG4gICAgICAgICAgICBhY2NlcHQ9XCJ7eyBhY2NlcHQgfX1cIiAvPlxuICAgIDwvZGl2PlxuICAgIDxldWktZmlsZS11cGxvYWQtcHJvZ3Jlc3MgKm5nSWY9XCJoYXNQcm9ncmVzc0JhclwiIFtwcm9ncmVzc109XCJwcm9ncmVzc1wiPjwvZXVpLWZpbGUtdXBsb2FkLXByb2dyZXNzPlxuXG4gICAgPGRpdiAqbmdGb3I9XCJsZXQgdXBsb2FkZWRGaWxlIG9mIHVwbG9hZGVkRmlsZXM7IGxldCBpID0gaW5kZXhcIj5cbiAgICAgICAgPGV1aS1maWxlLXByZXZpZXdcbiAgICAgICAgICAgIFtpc0l0ZW1zQ2xpY2thYmxlXT1cImlzSXRlbXNDbGlja2FibGVcIlxuICAgICAgICAgICAgW2luZGV4XT1cImlcIlxuICAgICAgICAgICAgW2ZpbGVdPVwidXBsb2FkZWRGaWxlXCJcbiAgICAgICAgICAgIFtoYXNQcmV2aWV3XT1cImhhc1ByZXZpZXdcIlxuICAgICAgICAgICAgW2hhc1ByZXZpZXdBc0ltYWdlXT1cImhhc1ByZXZpZXdBc0ltYWdlXCJcbiAgICAgICAgICAgIFtoYXNQcmV2aWV3QXNJY29uXT1cImhhc1ByZXZpZXdBc0ljb25cIlxuICAgICAgICAgICAgKGl0ZW1DbGljayk9XCJvbkl0ZW1DbGljaygkZXZlbnQpXCJcbiAgICAgICAgICAgIChyZW1vdmVGcm9tTGlzdCk9XCJyZW1vdmVGcm9tVXBsb2FkZWRMaXN0KCRldmVudClcIj5cbiAgICAgICAgPC9ldWktZmlsZS1wcmV2aWV3PlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiAqbmdGb3I9XCJsZXQgZmlsZSBvZiBmaWxlczsgbGV0IGkgPSBpbmRleFwiPlxuICAgICAgICA8ZXVpLWZpbGUtcHJldmlld1xuICAgICAgICAgICAgW2lzSXRlbXNDbGlja2FibGVdPVwiaXNJdGVtc0NsaWNrYWJsZVwiXG4gICAgICAgICAgICBbaW5kZXhdPVwiaVwiXG4gICAgICAgICAgICBbZmlsZV09XCJmaWxlXCJcbiAgICAgICAgICAgIFtoYXNQcmV2aWV3XT1cImhhc1ByZXZpZXdcIlxuICAgICAgICAgICAgW2hhc1ByZXZpZXdBc0ltYWdlXT1cImhhc1ByZXZpZXdBc0ltYWdlXCJcbiAgICAgICAgICAgIFtoYXNQcmV2aWV3QXNJY29uXT1cImhhc1ByZXZpZXdBc0ljb25cIlxuICAgICAgICAgICAgKGl0ZW1DbGljayk9XCJvbkl0ZW1DbGljaygkZXZlbnQpXCJcbiAgICAgICAgICAgIChyZW1vdmVGcm9tTGlzdCk9XCJyZW1vdmVGcm9tTGlzdCgkZXZlbnQpXCI+XG4gICAgICAgIDwvZXVpLWZpbGUtcHJldmlldz5cbiAgICA8L2Rpdj5cblxuICAgIDxkaXYgY2xhc3M9XCJmaWxlLXVwbG9hZF9fdG90YWwtc2l6ZVwiICpuZ0lmPVwiZmlsZXNUb3RhbFNpemUgJiYgaGFzVG90YWxTaXplRGlzcGxheWVkXCI+XG4gICAgICAgIHt7IGZpbGVzVG90YWxTaXplIHwgZmlsZXNpemUgfX0ge3sgJ2V1aS5ldWlmaWxldXBsb2FkLlRPVEFMLVNJWkUnIHwgdHJhbnNsYXRlIH19XG4gICAgPC9kaXY+XG48L2Rpdj5cbjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjxidXR0b24gZXVpQnV0dG9uIGNsYXNzPVwiZmlsZS11cGxvYWRfX3Jlc2V0LWJ1dHRvblwiIHR5cGU9XCJidXR0b25cIiAoY2xpY2spPVwicmVzZXRMaXN0KClcIiAqbmdJZj1cInNob3dSZXNldEJ0blwiPlxuICAgIHt7ICdldWkuZXVpZmlsZXVwbG9hZC5SRVNFVC1MSVNUJyB8IHRyYW5zbGF0ZSB9fVxuPC9idXR0b24+XG4iXX0=
234
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLWZpbGUtdXBsb2FkLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2V1aS1maWxlLXVwbG9hZC9ldWktZmlsZS11cGxvYWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vZXVpLWZpbGUtdXBsb2FkL2V1aS1maWxlLXVwbG9hZC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsU0FBUyxFQUVULFlBQVksRUFDWixLQUFLLEVBQ0wsaUJBQWlCLEVBRWpCLFlBQVksRUFFWixNQUFNLEVBQ04sWUFBWSxHQUVmLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxxQkFBcUIsRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQztBQUM1RSxPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7Ozs7Ozs7O0FBaUJ6RSxNQUFNLE9BQU8sc0JBQXNCO0lBYm5DO1FBY2EsWUFBTyxHQUFHLGlCQUFpQixDQUFDO1FBRTVCLFdBQU0sR0FBRyxHQUFHLENBQUM7UUFHdEIsNERBQTREO1FBQ2xELFNBQUksR0FBRyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBQzFCLGNBQVMsR0FBRyxJQUFJLFlBQVksRUFBZ0MsQ0FBQztRQUVoRSxVQUFLLEdBQVcsRUFBRSxDQUFDO1FBQ25CLG1CQUFjLEdBQUcsQ0FBQyxDQUFDO1FBQ25CLG1CQUFjLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsS0FBSyxDQUFDLENBQUM7UUFDbkQsa0JBQWEsR0FBc0IsRUFBRSxDQUFDO1FBQ3RDLGdCQUFXLEdBQUcsS0FBSyxDQUFDO1FBU25CLGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBUW5CLG9CQUFlLEdBQUcsSUFBSSxDQUFDO1FBUXZCLGdCQUFXLEdBQUcsSUFBSSxDQUFDO1FBUW5CLHVCQUFrQixHQUFHLElBQUksQ0FBQztRQVExQixzQkFBaUIsR0FBRyxL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Z0JBRVIsVUFBVTtzQkFBdEIsS0FBSztnQkFRRixjQUFjO3NCQURqQixLQUFLO2dCQVNGLFVBQVU7c0JBRGIsS0FBSztnQkFTRixpQkFBaUI7c0JBRHBCLEtBQUs7Z0JBU0YsZ0JBQWdCO3NCQURuQixLQUFLO2dCQVNGLHFCQUFxQjtzQkFEeEIsS0FBSztnQkFTRixjQUFjO3NCQURqQixLQUFLO2dCQVNGLFdBQVc7c0JBRGQsS0FBSztnQkFTRixnQkFBZ0I7c0JBRG5CLEtBQUs7Z0JBUzJDLFNBQVM7c0JBQXpELFlBQVk7dUJBQUMsUUFBUSxFQUFFLENBQUMscUJBQXFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBJbnB1dCxcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgICBPbkluaXQsXG4gICAgVmlld0NoaWxkcmVuLFxuICAgIFF1ZXJ5TGlzdCxcbiAgICBPdXRwdXQsXG4gICAgRXZlbnRFbWl0dGVyLFxuICAgIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5LCBCb29sZWFuSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBFdWlVcGxvYWRlZEZpbGUgfSBmcm9tICcuL21vZGVscy91cGxvYWRlZC1maWxlLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdldWktZmlsZS11cGxvYWQnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9ldWktZmlsZS11cGxvYWQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgICAgICAgIHVzZUV4aXN0aW5nOiBFdWlGaWxlVXBsb2FkQ29tcG9uZW50LFxuICAgICAgICAgICAgbXVsdGk6IHRydWUsXG4gICAgICAgIH0sXG4gICAgXSxcbiAgICBzdHlsZVVybHM6IFsnLi9zdHlsZXMvX2luZGV4LnNjc3MnXSxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBFdWlGaWxlVXBsb2FkQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE9uSW5pdCB7XG4gICAgQElucHV0KCkgZTJlQXR0ciA9ICdldWktZmlsZS11cGxvYWQnO1xuICAgIEBJbnB1dCgpIHByb2dyZXNzOiBudW1iZXI7XG4gICAgQElucHV0KCkgYWNjZXB0ID0gJyonO1xuICAgIEBJbnB1dCgpIG1heEZpbGVzOiBudW1iZXI7XG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L25vLW91dHB1dC1uYXRpdmVcbiAgICBAT3V0cHV0KCkgZHJvcCA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgICBAT3V0cHV0KCkgaXRlbUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcjxCbG9iIHwgRXVpVXBsb2FkZWRGaWxlIHwgYW55PigpO1xuXG4gICAgcHVibGljIGZpbGVzOiBGaWxlW10gPSBbXTtcbiAgICBwdWJsaWMgZmlsZXNUb3RhbFNpemUgPSAwO1xuICAgIHB1YmxpYyByYW5kb21OdW1iZXJJZCA9IE1hdGguZmxvb3IoTWF0aC5yYW5kb20oKSAqIDEwMDAwKTtcbiAgICBwdWJsaWMgdXBsb2FkZWRGaWxlczogRXVpVXBsb2FkZWRGaWxlW10gPSBbXTtcbiAgICBwdWJsaWMgZHJhZ0VudGVyZWQgPSBmYWxzZTtcbiAgICBAVmlld0NoaWxkcmVuKCdpbnB1dCcpIGZpbGVJbnB1dHM6IFF1ZXJ5TGlzdDxFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+PjtcblxuICAgIEBJbnB1dCgpIGdldCBpc011bHRpcGxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNNdWx0aXBsZTtcbiAgICB9XG4gICAgc2V0IGlzTXVsdGlwbGUodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9pc011bHRpcGxlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaXNNdWx0aXBsZSA9IHRydWU7XG4gICAgQElucHV0KClcbiAgICBnZXQgaGFzUHJvZ3Jlc3NCYXIoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9oYXNQcm9ncmVzc0JhcjtcbiAgICB9XG4gICAgc2V0IGhhc1Byb2dyZXNzQmFyKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faGFzUHJvZ3Jlc3NCYXIgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9oYXNQcm9ncmVzc0JhciA9IHRydWU7XG4gICAgQElucHV0KClcbiAgICBnZXQgaGFzUHJldmlldygpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hhc1ByZXZpZXc7XG4gICAgfVxuICAgIHNldCBoYXNQcmV2aWV3KHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faGFzUHJldmlldyA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2hhc1ByZXZpZXcgPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGhhc1ByZXZpZXdBc0ltYWdlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faGFzUHJldmlld0FzSW1hZ2U7XG4gICAgfVxuICAgIHNldCBoYXNQcmV2aWV3QXNJbWFnZSh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2hhc1ByZXZpZXdBc0ltYWdlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaGFzUHJldmlld0FzSW1hZ2UgPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGhhc1ByZXZpZXdBc0ljb24oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9oYXNQcmV2aWV3QXNJY29uO1xuICAgIH1cbiAgICBzZXQgaGFzUHJldmlld0FzSWNvbih2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2hhc1ByZXZpZXdBc0ljb24gPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9oYXNQcmV2aWV3QXNJY29uID0gZmFsc2U7XG4gICAgQElucHV0KClcbiAgICBnZXQgaGFzVG90YWxTaXplRGlzcGxheWVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faGFzVG90YWxTaXplRGlzcGxheWVkO1xuICAgIH1cbiAgICBzZXQgaGFzVG90YWxTaXplRGlzcGxheWVkKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faGFzVG90YWxTaXplRGlzcGxheWVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaGFzVG90YWxTaXplRGlzcGxheWVkID0gdHJ1ZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBoYXNSZXNldEJ1dHRvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hhc1Jlc2V0QnV0dG9uO1xuICAgIH1cbiAgICBzZXQgaGFzUmVzZXRCdXR0b24odmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9oYXNSZXNldEJ1dHRvbiA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2hhc1Jlc2V0QnV0dG9uID0gdHJ1ZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBoYXNEcmFnQXJlYSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hhc0RyYWdBcmVhO1xuICAgIH1cbiAgICBzZXQgaGFzRHJhZ0FyZWEodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9oYXNEcmFnQXJlYSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2hhc0RyYWdBcmVhID0gZmFsc2U7XG4gICAgQElucHV0KClcbiAgICBnZXQgaXNJdGVtc0NsaWNrYWJsZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzSXRlbXNDbGlja2FibGU7XG4gICAgfVxuICAgIHNldCBpc0l0ZW1zQ2xpY2thYmxlKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faXNJdGVtc0NsaWNrYWJsZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2lzSXRlbXNDbGlja2FibGUgPSBmYWxzZTtcblxuICAgIEBIb3N0TGlzdGVuZXIoJ2NoYW5nZScsIFsnJGV2ZW50LnRhcmdldC5maWxlcyddKSBlbWl0RmlsZXMoZmlsZUxpc3Q6IEZpbGVMaXN0KTogdm9pZCB7XG4gICAgICAgIGxldCBpID0gWy4uLnRoaXMudXBsb2FkZWRGaWxlcywgLi4udGhpcy5maWxlc10ubGVuZ3RoO1xuICAgICAgICBmb3IgKGNvbnN0IHByb3BlcnR5IGluIGZpbGVMaXN0KSB7XG4gICAgICAgICAgICBpZiAoZmlsZUxpc3RbcHJvcGVydHldICYmIHR5cGVvZiBmaWxlTGlzdFtwcm9wZXJ0eV0gPT09ICdvYmplY3QnICYmICghdGhpcy5tYXhGaWxlcyB8fCBpIDwgdGhpcy5tYXhGaWxlcykpIHtcbiAgICAgICAgICAgICAgICBjb25zdCBmaWxlTmFtZSA9IGZpbGVMaXN0W3Byb3BlcnR5XS5uYW1lLnNwbGl0KCcuJyk7XG4gICAgICAgICAgICAgICAgY29uc3QgZmlsZUV4dGVuc2lvbiA9IGZpbGVOYW1lW2ZpbGVOYW1lLmxlbmd0aCAtIDFdO1xuXG4gICAgICAgICAgICAgICAgaWYgKHRoaXMuYWNjZXB0LmluZGV4T2YoZmlsZUV4dGVuc2lvbikgIT09IC0xIHx8IHRoaXMuYWNjZXB0ID09PSAnKicpIHtcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5maWxlcy5wdXNoKGZpbGVMaXN0W3Byb3BlcnR5XSk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICAgICAgaSsrO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5nZXRUb3RhbFNpemUoKTtcbiAgICAgICAgdGhpcy51cGxvYWRlZEZpbGVzID8gdGhpcy5vbkNoYW5nZShbLi4udGhpcy51cGxvYWRlZEZpbGVzLCAuLi50aGlzLmZpbGVzXSkgOiB0aGlzLm9uQ2hhbmdlKHRoaXMuZmlsZXMpO1xuICAgICAgICBpZiAodGhpcy5maWxlSW5wdXRzKSB7XG4gICAgICAgICAgICB0aGlzLmZpbGVJbnB1dHMuZmlyc3QubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xuICAgICAgICAgICAgdGhpcy5maWxlSW5wdXRzLmxhc3QubmF0aXZlRWxlbWVudC52YWx1ZSA9ICcnO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5kcmFnRW50ZXJlZCA9IGZhbHNlO1xuICAgICAgICB0aGlzLmRyb3AuZW1pdCgpO1xuICAgIH1cblxuICAgIGdldCBzaG93UmVzZXRCdG4oKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmhhc1Jlc2V0QnV0dG9uICYmIHRoaXMuaXNNdWx0aXBsZSAmJiAodGhpcy5maWxlcy5sZW5ndGggPiAwIHx8IHRoaXMudXBsb2FkZWRGaWxlcy5sZW5ndGggPiAwKTtcbiAgICB9XG5cbiAgICBnZXQgaXNEcm9wQXJlYURpc2FibGVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gKCF0aGlzLmlzTXVsdGlwbGUgJiYgdGhpcy5maWxlcy5sZW5ndGggPT09IDEpIHx8IFsuLi50aGlzLnVwbG9hZGVkRmlsZXMsIC4uLnRoaXMuZmlsZXNdLmxlbmd0aCA9PT0gdGhpcy5tYXhGaWxlcztcbiAgICB9XG5cbiAgICBuZ09uQ2hhbmdlcyhjOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChjPy5pc011bHRpcGxlKSB7XG4gICAgICAgICAgICB0aGlzLm1heEZpbGVzID0gMTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5oYXNQcmV2aWV3QXNJY29uKSB7XG4gICAgICAgICAgICB0aGlzLmhhc1ByZXZpZXdBc0ltYWdlID0gZmFsc2U7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkRyYWdFbnRlcigpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLmlzRHJvcEFyZWFEaXNhYmxlZCkge1xuICAgICAgICAgICAgdGhpcy5kcmFnRW50ZXJlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkRyYWdMZWF2ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5kcmFnRW50ZXJlZCA9IGZhbHNlO1xuICAgIH1cblxuICAgIHB1YmxpYyByZW1vdmVGcm9tTGlzdChpbmRleDogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZmlsZXMgPSB0aGlzLmZpbGVzLmZpbHRlcigoZiwgaSkgPT4gaSAhPT0gaW5kZXgpO1xuXG4gICAgICAgIGlmICh0aGlzLmZpbGVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgICAgICAgdGhpcy5wcm9ncmVzcyA9IDA7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5nZXRUb3RhbFNpemUoKTtcbiAgICAgICAgdGhpcy5vbkNoYW5nZShbLi4udGhpcy51cGxvYWRlZEZpbGVzLCAuLi50aGlzLmZpbGVzXSk7XG4gICAgfVxuXG4gICAgcHVibGljIHJlbW92ZUZyb21VcGxvYWRlZExpc3QoaW5kZXg6IG51bWJlcik6IHZvaWQge1xuICAgICAgICB0aGlzLnVwbG9hZGVkRmlsZXMgPSB0aGlzLnVwbG9hZGVkRmlsZXMuZmlsdGVyKChmLCBpKSA9PiBpICE9PSBpbmRleCk7XG5cbiAgICAgICAgaWYgKHRoaXMuZmlsZXMubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICB0aGlzLnByb2dyZXNzID0gMDtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuZ2V0VG90YWxTaXplKCk7XG4gICAgICAgIHRoaXMub25DaGFuZ2UoWy4uLnRoaXMudXBsb2FkZWRGaWxlcywgLi4udGhpcy5maWxlc10pO1xuICAgIH1cblxuICAgIHB1YmxpYyByZXNldExpc3QoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZmlsZXMgPSBbXTtcbiAgICAgICAgdGhpcy51cGxvYWRlZEZpbGVzID0gW107XG4gICAgICAgIHRoaXMuZ2V0VG90YWxTaXplKCk7XG4gICAgICAgIHRoaXMucHJvZ3Jlc3MgPSAwO1xuICAgICAgICB0aGlzLm9uQ2hhbmdlKFsuLi50aGlzLnVwbG9hZGVkRmlsZXMsIC4uLnRoaXMuZmlsZXNdKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb3BlbkJyb3dzZVdpbmRvdygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5maWxlSW5wdXRzLmZpcnN0Lm5hdGl2ZUVsZW1lbnQuY2xpY2soKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25JdGVtQ2xpY2soZTogQmxvYiB8IEV1aVVwbG9hZGVkRmlsZSB8IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLml0ZW1DbGljay5lbWl0KGUpO1xuICAgIH1cblxuICAgIHdyaXRlVmFsdWUodmFsdWU6IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLnVwbG9hZGVkRmlsZXMgPSB2YWx1ZSB8fCBbXTtcbiAgICAgICAgdGhpcy5maWxlcyA9IFtdO1xuICAgICAgICB0aGlzLmdldFRvdGFsU2l6ZSgpO1xuICAgIH1cblxuICAgIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWQge1xuICAgICAgICB0aGlzLm9uQ2hhbmdlID0gZm47XG4gICAgfVxuXG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvbiwgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgcmVnaXN0ZXJPblRvdWNoZWQoZm46IGFueSk6IHZvaWQge31cblxuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZW1wdHktZnVuY3Rpb25cbiAgICBwcml2YXRlIG9uQ2hhbmdlOiBhbnkgPSAoKTogdm9pZCA9PiB7fTtcblxuICAgIHByaXZhdGUgZ2V0VG90YWxTaXplKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmZpbGVzVG90YWxTaXplID0gMDtcbiAgICAgICAgdGhpcy5maWxlcy5mb3JFYWNoKChmKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmZpbGVzVG90YWxTaXplICs9IGYuc2l6ZTtcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZpbGUtdXBsb2FkXCI+XG4gICAgPGRpdlxuICAgICAgICBjbGFzcz1cImZpbGUtZHJvcC1hcmVhXCJcbiAgICAgICAgW2NsYXNzLmZpbGUtZHJvcC1hcmVhLS1hY3RpdmVdPVwiZHJhZ0VudGVyZWRcIlxuICAgICAgICBbY2xhc3MuZmlsZS1kcm9wLWFyZWEtLWRpc2FibGVkXT1cImlzRHJvcEFyZWFEaXNhYmxlZFwiXG4gICAgICAgICpuZ0lmPVwiaGFzRHJhZ0FyZWFcIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJmYWtlLWJ0blwiPnt7ICdldWkuZXVpZmlsZXVwbG9hZC5DSE9PU0UtRklMRScgfCB0cmFuc2xhdGUgfX08L3NwYW4+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZmlsZS1tc2dcIj57eyAnZXVpLmV1aWZpbGV1cGxvYWQuRFJBRy1BTkQtRFJPUC1GSUxFLUhFUkUnIHwgdHJhbnNsYXRlIH19PC9zcGFuPlxuICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICNpbnB1dFxuICAgICAgICAgICAgY2xhc3M9XCJmaWxlLWlucHV0XCJcbiAgICAgICAgICAgIGF0dHIuYXJpYS1sYWJlbD1cInt7ICdldWkuZXVpZmlsZXVwbG9hZC5DSE9PU0UtRklMRScgfCB0cmFuc2xhdGUgfX0gJ29yJyB7e1xuICAgICAgICAgICAgICAgICdldWkuZXVpZmlsZXVwbG9hZC5EUkFHLUFORC1EUk9QLUZJTEUtSEVSRScgfCB0cmFuc2xhdGVcbiAgICAgICAgICAgIH19XCJcbiAgICAgICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgICAgIGFjY2VwdD1cInt7IGFjY2VwdCB9fVwiXG4gICAgICAgICAgICBbYXR0ci5kaXNhYmxlZF09XCJpc0Ryb3BBcmVhRGlzYWJsZWQgPyAnZGlzYWJsZWQnIDogbnVsbFwiXG4gICAgICAgICAgICBbbXVsdGlwbGVdPVwiaXNNdWx0aXBsZVwiXG4gICAgICAgICAgICAoZHJhZ2VudGVyKT1cIm9uRHJhZ0VudGVyKClcIlxuICAgICAgICAgICAgKGRyYWdsZWF2ZSk9XCJvbkRyYWdMZWF2ZSgpXCIgLz5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwic2ltcGxlLWlucHV0LWZpbGUgZXVpLXUtbWIteHNcIiAqbmdJZj1cIiFoYXNEcmFnQXJlYVwiPlxuICAgICAgICA8bGFiZWwgZm9yPVwiZmlsZS17eyByYW5kb21OdW1iZXJJZCB9fVwiPlxuICAgICAgICAgICAgPGJ1dHRvbiBldWlCdXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJvcGVuQnJvd3NlV2luZG93KClcIj57eyAnZXVpLmV1aWZpbGV1cGxvYWQuQ0hPT1NFLUZJTEUnIHwgdHJhbnNsYXRlIH19PC9idXR0b24+XG4gICAgICAgIDwvbGFiZWw+XG5cbiAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAjaW5wdXRcbiAgICAgICAgICAgICpuZ0lmPVwiaXNNdWx0aXBsZVwiXG4gICAgICAgICAgICBhcmlhLWxhYmVsPVwiQ2hvb3NlIE11bHRpcGxlIEZpbGVzXCJcbiAgICAgICAgICAgIGNsYXNzPVwiZmlsZS1pbnB1dFwiXG4gICAgICAgICAgICBpZD1cImZpbGUte3sgcmFuZG9tTnVtYmVySWQgfX1cIlxuICAgICAgICAgICAgdHlwZT1cImZpbGVcIlxuICAgICAgICAgICAgYWNjZXB0PVwie3sgYWNjZXB0IH19XCJcbiAgICAgICAgICAgIG11bHRpcGxlIC8+XG4gICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgI2lucHV0XG4gICAgICAgICAgICAqbmdJZj1cIiFpc011bHRpcGxlXCJcbiAgICAgICAgICAgIGFyaWEtbGFiZWw9XCJDaG9vc2UgYSBzaW5nbGUgZmlsZVwiXG4gICAgICAgICAgICBjbGFzcz1cImZpbGUtaW5wdXRcIlxuICAgICAgICAgICAgaWQ9XCJmaWxlLXt7IHJhbmRvbU51bWJlcklkIH19XCJcbiAgICAgICAgICAgIHR5cGU9XCJmaWxlXCJcbiAgICAgICAgICAgIGFjY2VwdD1cInt7IGFjY2VwdCB9fVwiIC8+XG4gICAgPC9kaXY+XG4gICAgPGV1aS1maWxlLXVwbG9hZC1wcm9ncmVzcyAqbmdJZj1cImhhc1Byb2dyZXNzQmFyXCIgW3Byb2dyZXNzXT1cInByb2dyZXNzXCI+PC9ldWktZmlsZS11cGxvYWQtcHJvZ3Jlc3M+XG5cbiAgICA8ZGl2ICpuZ0Zvcj1cImxldCB1cGxvYWRlZEZpbGUgb2YgdXBsb2FkZWRGaWxlczsgbGV0IGkgPSBpbmRleFwiPlxuICAgICAgICA8ZXVpLWZpbGUtcHJldmlld1xuICAgICAgICAgICAgW2lzSXRlbXNDbGlja2FibGVdPVwiaXNJdGVtc0NsaWNrYWJsZVwiXG4gICAgICAgICAgICBbaW5kZXhdPVwiaVwiXG4gICAgICAgICAgICBbZmlsZV09XCJ1cGxvYWRlZEZpbGVcIlxuICAgICAgICAgICAgW2hhc1ByZXZpZXddPVwiaGFzUHJldmlld1wiXG4gICAgICAgICAgICBbaGFzUHJldmlld0FzSW1hZ2VdPVwiaGFzUHJldmlld0FzSW1hZ2VcIlxuICAgICAgICAgICAgW2hhc1ByZXZpZXdBc0ljb25dPVwiaGFzUHJldmlld0FzSWNvblwiXG4gICAgICAgICAgICAoaXRlbUNsaWNrKT1cIm9uSXRlbUNsaWNrKCRldmVudClcIlxuICAgICAgICAgICAgKHJlbW92ZUZyb21MaXN0KT1cInJlbW92ZUZyb21VcGxvYWRlZExpc3QoJGV2ZW50KVwiPlxuICAgICAgICA8L2V1aS1maWxlLXByZXZpZXc+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2ICpuZ0Zvcj1cImxldCBmaWxlIG9mIGZpbGVzOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgIDxldWktZmlsZS1wcmV2aWV3XG4gICAgICAgICAgICBbaXNJdGVtc0NsaWNrYWJsZV09XCJpc0l0ZW1zQ2xpY2thYmxlXCJcbiAgICAgICAgICAgIFtpbmRleF09XCJpXCJcbiAgICAgICAgICAgIFtmaWxlXT1cImZpbGVcIlxuICAgICAgICAgICAgW2hhc1ByZXZpZXddPVwiaGFzUHJldmlld1wiXG4gICAgICAgICAgICBbaGFzUHJldmlld0FzSW1hZ2VdPVwiaGFzUHJldmlld0FzSW1hZ2VcIlxuICAgICAgICAgICAgW2hhc1ByZXZpZXdBc0ljb25dPVwiaGFzUHJldmlld0FzSWNvblwiXG4gICAgICAgICAgICAoaXRlbUNsaWNrKT1cIm9uSXRlbUNsaWNrKCRldmVudClcIlxuICAgICAgICAgICAgKHJlbW92ZUZyb21MaXN0KT1cInJlbW92ZUZyb21MaXN0KCRldmVudClcIj5cbiAgICAgICAgPC9ldWktZmlsZS1wcmV2aWV3PlxuICAgIDwvZGl2PlxuXG4gICAgPGRpdiBjbGFzcz1cImZpbGUtdXBsb2FkX190b3RhbC1zaXplXCIgKm5nSWY9XCJmaWxlc1RvdGFsU2l6ZSAmJiBoYXNUb3RhbFNpemVEaXNwbGF5ZWRcIj5cbiAgICAgICAge3sgZmlsZXNUb3RhbFNpemUgfCBmaWxlc2l6ZSB9fSB7eyAnZXVpLmV1aWZpbGV1cGxvYWQuVE9UQUwtU0laRScgfCB0cmFuc2xhdGUgfX1cbiAgICA8L2Rpdj5cbjwvZGl2PlxuPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPGJ1dHRvbiBldWlCdXR0b24gY2xhc3M9XCJmaWxlLXVwbG9hZF9fcmVzZXQtYnV0dG9uXCIgdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJyZXNldExpc3QoKVwiICpuZ0lmPVwic2hvd1Jlc2V0QnRuXCI+XG4gICAge3sgJ2V1aS5ldWlmaWxldXBsb2FkLlJFU0VULUxJU1QnIHwgdHJhbnNsYXRlIH19XG48L2J1dHRvbj5cbiJdfQ==
@@ -8,30 +8,19 @@ import { EuiFileUploadProgressComponent } from './progress/eui-file-upload-progr
8
8
  import { EuiFilePreviewComponent } from './file-preview/file-preview.component';
9
9
  import { EuiFileSizePipe } from './pipes/filesize.pipe';
10
10
  import { EuiFileUploadUtilsService } from './utils/eui-file-upload.utils';
11
- import { EuiUploadedFileComponent } from './uploaded-file/uploaded-file.component';
12
11
  import * as i0 from "@angular/core";
13
12
  export class EuiFileUploadModule {
14
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.3", ngImport: i0, type: EuiFileUploadModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
15
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.0-next.3", ngImport: i0, type: EuiFileUploadModule, declarations: [EuiFileUploadComponent,
16
- EuiFileUploadProgressComponent,
17
- EuiFilePreviewComponent,
18
- EuiFileSizePipe,
19
- EuiUploadedFileComponent], imports: [CommonModule, EuiButtonModule, EuiIconModule, TranslateModule], exports: [EuiFileUploadComponent] }); }
20
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.0-next.3", ngImport: i0, type: EuiFileUploadModule, providers: [EuiFileUploadUtilsService], imports: [CommonModule, EuiButtonModule, EuiIconModule, TranslateModule] }); }
13
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiFileUploadModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
14
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiFileUploadModule, declarations: [EuiFileUploadComponent, EuiFileUploadProgressComponent, EuiFilePreviewComponent, EuiFileSizePipe], imports: [CommonModule, EuiButtonModule, EuiIconModule, TranslateModule], exports: [EuiFileUploadComponent] }); }
15
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiFileUploadModule, providers: [EuiFileUploadUtilsService], imports: [CommonModule, EuiButtonModule, EuiIconModule, TranslateModule] }); }
21
16
  }
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.3", ngImport: i0, type: EuiFileUploadModule, decorators: [{
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiFileUploadModule, decorators: [{
23
18
  type: NgModule,
24
19
  args: [{
25
20
  imports: [CommonModule, EuiButtonModule, EuiIconModule, TranslateModule],
26
- declarations: [
27
- EuiFileUploadComponent,
28
- EuiFileUploadProgressComponent,
29
- EuiFilePreviewComponent,
30
- EuiFileSizePipe,
31
- EuiUploadedFileComponent,
32
- ],
21
+ declarations: [EuiFileUploadComponent, EuiFileUploadProgressComponent, EuiFilePreviewComponent, EuiFileSizePipe],
33
22
  providers: [EuiFileUploadUtilsService],
34
23
  exports: [EuiFileUploadComponent],
35
24
  }]
36
25
  }] });
37
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLWZpbGUtdXBsb2FkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2V1aS1maWxlLXVwbG9hZC9ldWktZmlsZS11cGxvYWQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXpELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQy9GLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMxRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7QUFjbkYsTUFBTSxPQUFPLG1CQUFtQjt3SUFBbkIsbUJBQW1CO3lJQUFuQixtQkFBbUIsaUJBVHhCLHNCQUFzQjtZQUN0Qiw4QkFBOEI7WUFDOUIsdUJBQXVCO1lBQ3ZCLGVBQWU7WUFDZix3QkFBd0IsYUFObEIsWUFBWSxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsZUFBZSxhQVM3RCxzQkFBc0I7eUlBRXZCLG1CQUFtQixhQUhqQixDQUFDLHlCQUF5QixDQUFDLFlBUjVCLFlBQVksRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLGVBQWU7O2tHQVc5RCxtQkFBbUI7a0JBWi9CLFFBQVE7bUJBQUM7b0JBQ04sT0FBTyxFQUFFLENBQUMsWUFBWSxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsZUFBZSxDQUFDO29CQUN4RSxZQUFZLEVBQUU7d0JBQ1Ysc0JBQXNCO3dCQUN0Qiw4QkFBOEI7d0JBQzlCLHVCQUF1Qjt3QkFDdkIsZUFBZTt3QkFDZix3QkFBd0I7cUJBQzNCO29CQUNELFNBQVMsRUFBRSxDQUFDLHlCQUF5QixDQUFDO29CQUN0QyxPQUFPLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQztpQkFDcEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFRyYW5zbGF0ZU1vZHVsZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuXG5pbXBvcnQgeyBFdWlCdXR0b25Nb2R1bGUgfSBmcm9tICdAZXVpL2NvbXBvbmVudHMvZXVpLWJ1dHRvbic7XG5pbXBvcnQgeyBFdWlJY29uTW9kdWxlIH0gZnJvbSAnQGV1aS9jb21wb25lbnRzL2V1aS1pY29uJztcblxuaW1wb3J0IHsgRXVpRmlsZVVwbG9hZENvbXBvbmVudCB9IGZyb20gJy4vZXVpLWZpbGUtdXBsb2FkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFdWlGaWxlVXBsb2FkUHJvZ3Jlc3NDb21wb25lbnQgfSBmcm9tICcuL3Byb2dyZXNzL2V1aS1maWxlLXVwbG9hZC1wcm9ncmVzcy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRXVpRmlsZVByZXZpZXdDb21wb25lbnQgfSBmcm9tICcuL2ZpbGUtcHJldmlldy9maWxlLXByZXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IEV1aUZpbGVTaXplUGlwZSB9IGZyb20gJy4vcGlwZXMvZmlsZXNpemUucGlwZSc7XG5pbXBvcnQgeyBFdWlGaWxlVXBsb2FkVXRpbHNTZXJ2aWNlIH0gZnJvbSAnLi91dGlscy9ldWktZmlsZS11cGxvYWQudXRpbHMnO1xuaW1wb3J0IHsgRXVpVXBsb2FkZWRGaWxlQ29tcG9uZW50IH0gZnJvbSAnLi91cGxvYWRlZC1maWxlL3VwbG9hZGVkLWZpbGUuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBFdWlCdXR0b25Nb2R1bGUsIEV1aUljb25Nb2R1bGUsIFRyYW5zbGF0ZU1vZHVsZV0sXG4gICAgZGVjbGFyYXRpb25zOiBbXG4gICAgICAgIEV1aUZpbGVVcGxvYWRDb21wb25lbnQsXG4gICAgICAgIEV1aUZpbGVVcGxvYWRQcm9ncmVzc0NvbXBvbmVudCxcbiAgICAgICAgRXVpRmlsZVByZXZpZXdDb21wb25lbnQsXG4gICAgICAgIEV1aUZpbGVTaXplUGlwZSxcbiAgICAgICAgRXVpVXBsb2FkZWRGaWxlQ29tcG9uZW50LFxuICAgIF0sXG4gICAgcHJvdmlkZXJzOiBbRXVpRmlsZVVwbG9hZFV0aWxzU2VydmljZV0sXG4gICAgZXhwb3J0czogW0V1aUZpbGVVcGxvYWRDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBFdWlGaWxlVXBsb2FkTW9kdWxlIHt9XG4iXX0=
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXVpLWZpbGUtdXBsb2FkLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL2V1aS1maWxlLXVwbG9hZC9ldWktZmlsZS11cGxvYWQubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUV0RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXpELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ3JFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQy9GLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN4RCxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQzs7QUFRMUUsTUFBTSxPQUFPLG1CQUFtQjt3SUFBbkIsbUJBQW1CO3lJQUFuQixtQkFBbUIsaUJBSmIsc0JBQXNCLEVBQUUsOEJBQThCLEVBQUUsdUJBQXVCLEVBQUUsZUFBZSxhQURyRyxZQUFZLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxlQUFlLGFBRzdELHNCQUFzQjt5SUFFdkIsbUJBQW1CLGFBSGpCLENBQUMseUJBQXlCLENBQUMsWUFGNUIsWUFBWSxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsZUFBZTs7a0dBSzlELG1CQUFtQjtrQkFOL0IsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxlQUFlLENBQUM7b0JBQ3hFLFlBQVksRUFBRSxDQUFDLHNCQUFzQixFQUFFLDhCQUE4QixFQUFFLHVCQUF1QixFQUFFLGVBQWUsQ0FBQztvQkFDaEgsU0FBUyxFQUFFLENBQUMseUJBQXlCLENBQUM7b0JBQ3RDLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO2lCQUNwQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgVHJhbnNsYXRlTW9kdWxlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5cbmltcG9ydCB7IEV1aUJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BldWkvY29tcG9uZW50cy9ldWktYnV0dG9uJztcbmltcG9ydCB7IEV1aUljb25Nb2R1bGUgfSBmcm9tICdAZXVpL2NvbXBvbmVudHMvZXVpLWljb24nO1xuXG5pbXBvcnQgeyBFdWlGaWxlVXBsb2FkQ29tcG9uZW50IH0gZnJvbSAnLi9ldWktZmlsZS11cGxvYWQuY29tcG9uZW50JztcbmltcG9ydCB7IEV1aUZpbGVVcGxvYWRQcm9ncmVzc0NvbXBvbmVudCB9IGZyb20gJy4vcHJvZ3Jlc3MvZXVpLWZpbGUtdXBsb2FkLXByb2dyZXNzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBFdWlGaWxlUHJldmlld0NvbXBvbmVudCB9IGZyb20gJy4vZmlsZS1wcmV2aWV3L2ZpbGUtcHJldmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRXVpRmlsZVNpemVQaXBlIH0gZnJvbSAnLi9waXBlcy9maWxlc2l6ZS5waXBlJztcbmltcG9ydCB7IEV1aUZpbGVVcGxvYWRVdGlsc1NlcnZpY2UgfSBmcm9tICcuL3V0aWxzL2V1aS1maWxlLXVwbG9hZC51dGlscyc7XG5cbkBOZ01vZHVsZSh7XG4gICAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRXVpQnV0dG9uTW9kdWxlLCBFdWlJY29uTW9kdWxlLCBUcmFuc2xhdGVNb2R1bGVdLFxuICAgIGRlY2xhcmF0aW9uczogW0V1aUZpbGVVcGxvYWRDb21wb25lbnQsIEV1aUZpbGVVcGxvYWRQcm9ncmVzc0NvbXBvbmVudCwgRXVpRmlsZVByZXZpZXdDb21wb25lbnQsIEV1aUZpbGVTaXplUGlwZV0sXG4gICAgcHJvdmlkZXJzOiBbRXVpRmlsZVVwbG9hZFV0aWxzU2VydmljZV0sXG4gICAgZXhwb3J0czogW0V1aUZpbGVVcGxvYWRDb21wb25lbnRdLFxufSlcbmV4cG9ydCBjbGFzcyBFdWlGaWxlVXBsb2FkTW9kdWxlIHt9XG4iXX0=
@@ -98,10 +98,12 @@ export class EuiFilePreviewComponent {
98
98
  this.previewData = this.getPreviewForMime(this.fileExtension);
99
99
  this.cd.detectChanges();
100
100
  };
101
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
101
102
  reader.onloadstart = (event) => {
102
103
  this.isLoading = true;
103
104
  this.cd.detectChanges();
104
105
  };
106
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
105
107
  reader.onloadend = (event) => {
106
108
  this.isLoading = false;
107
109
  this.cd.detectChanges();
@@ -136,10 +138,10 @@ export class EuiFilePreviewComponent {
136
138
  const f = fileExtension.toLowerCase();
137
139
  return !this.previewAsIconConfig[f] ? 'eui-icon-filetype-unknown' : this.previewAsIconConfig[f];
138
140
  }
139
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.3", ngImport: i0, type: EuiFilePreviewComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
140
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.0-next.3", type: EuiFilePreviewComponent, selector: "eui-file-preview", inputs: { file: "file", index: "index", previewAsIconConfig: "previewAsIconConfig", hasPreview: "hasPreview", isFilenameDisplayed: "isFilenameDisplayed", isFilesizeDisplayed: "isFilesizeDisplayed", isFiletypeDisplayed: "isFiletypeDisplayed", hasPreviewAsImage: "hasPreviewAsImage", hasPreviewAsIcon: "hasPreviewAsIcon", isItemsClickable: "isItemsClickable" }, outputs: { removeFromList: "removeFromList", itemClick: "itemClick" }, ngImport: i0, template: "<div class=\"file-upload__preview\">\n <div class=\"file-upload__preview__image\" *ngIf=\"hasPreview && hasPreviewAsImage\">\n <img [src]=\"previewData.display\" *ngIf=\"url && previewData.image\" />\n <span\n *ngIf=\"previewData && !previewData.image\"\n class=\"eui-icon eui-icon-color {{ previewData.display }}\"\n euiIconColored\n euiSize5XL></span>\n <div *ngIf=\"isLoading\" class=\"loading-coatainer\">\n <eui-icon euiSecondary iconClass=\"eui-icon-spinner eui-icon-3x eui-icon--spin\"></eui-icon>\n </div>\n </div>\n <div class=\"file-upload__preview__icon\" *ngIf=\"hasPreview && hasPreviewAsIcon\">\n <span class=\"eui-icon eui-icon-color {{ icon }}\" euiIconColored euiSize5XL></span>\n </div>\n <div class=\"file-upload__preview__filename\" *ngIf=\"isFilenameDisplayed\">\n <ng-container *ngIf=\"!isItemsClickable\">\n {{ file.name }}\n </ng-container>\n <ng-container *ngIf=\"isItemsClickable\">\n <a href=\"#\" (click)=\"onItemClick($event)\">{{ file.name }}</a>\n </ng-container>\n </div>\n <div class=\"file-upload__preview__filesize\" *ngIf=\"isFilesizeDisplayed\">{{ file.size | filesize }}</div>\n <div class=\"file-upload__preview__filetype\" *ngIf=\"isFiletypeDisplayed\">{{ file.type }}</div>\n <div class=\"file-upload__preview__actions\">\n <div class=\"file-upload__preview__actions-container\">\n <button euiButton euiPrimary euiRounded euiIconButton euiSizeL euiBasicButton type=\"button\" (click)=\"onRemoveFromList()\">\n <eui-icon-svg icon=\"eui-close\"></eui-icon-svg>\n </button>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "isLoading", "euiIconButton", "euiLineWrap"], outputs: ["buttonClick"] }, { kind: "component", type: i3.EuiIconComponent, selector: "div[euiIcon], span[euiIcon], i[euiIcon], eui-icon", inputs: ["aria-label", "iconClass", "isLoading"] }, { kind: "component", type: i3.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "size", "fillColor", "set", "ariaLabelledby", "role", "style", "iconUrl", "transform", "aria-label", "ariaHidden", "focusable", "isLoading"] }, { kind: "component", type: i3.EuiIconColorComponent, selector: "eui-icon-colored, span[euiIconColored], [euiIconColored]", inputs: ["iconClass"] }, { kind: "pipe", type: i4.EuiFileSizePipe, name: "filesize" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
141
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiFilePreviewComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
142
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.0-next.4", type: EuiFilePreviewComponent, selector: "eui-file-preview", inputs: { file: "file", index: "index", previewAsIconConfig: "previewAsIconConfig", hasPreview: "hasPreview", isFilenameDisplayed: "isFilenameDisplayed", isFilesizeDisplayed: "isFilesizeDisplayed", isFiletypeDisplayed: "isFiletypeDisplayed", hasPreviewAsImage: "hasPreviewAsImage", hasPreviewAsIcon: "hasPreviewAsIcon", isItemsClickable: "isItemsClickable" }, outputs: { removeFromList: "removeFromList", itemClick: "itemClick" }, ngImport: i0, template: "<div class=\"file-upload__preview\">\n <div class=\"file-upload__preview__image\" *ngIf=\"hasPreview && hasPreviewAsImage\">\n <img [src]=\"previewData.display\" *ngIf=\"url && previewData.image\" />\n <span\n *ngIf=\"previewData && !previewData.image\"\n class=\"eui-icon eui-icon-color {{ previewData.display }}\"\n euiIconColored\n euiSize5XL></span>\n <div *ngIf=\"isLoading\" class=\"loading-coatainer\">\n <eui-icon euiSecondary iconClass=\"eui-icon-spinner eui-icon-3x eui-icon--spin\"></eui-icon>\n </div>\n </div>\n <div class=\"file-upload__preview__icon\" *ngIf=\"hasPreview && hasPreviewAsIcon\">\n <span class=\"eui-icon eui-icon-color {{ icon }}\" euiIconColored euiSize5XL></span>\n </div>\n <div class=\"file-upload__preview__filename\" *ngIf=\"isFilenameDisplayed\">\n <ng-container *ngIf=\"!isItemsClickable\">\n {{ file.name }}\n </ng-container>\n <ng-container *ngIf=\"isItemsClickable\">\n <a href=\"#\" (click)=\"onItemClick($event)\">{{ file.name }}</a>\n </ng-container>\n </div>\n <div class=\"file-upload__preview__filesize\" *ngIf=\"isFilesizeDisplayed\">{{ file.size | filesize }}</div>\n <div class=\"file-upload__preview__filetype\" *ngIf=\"isFiletypeDisplayed\">{{ file.type }}</div>\n <div class=\"file-upload__preview__actions\">\n <div class=\"file-upload__preview__actions-container\">\n <button euiButton euiPrimary euiRounded euiIconButton euiSizeL euiBasicButton type=\"button\" (click)=\"onRemoveFromList()\">\n <eui-icon-svg icon=\"eui-close\"></eui-icon-svg>\n </button>\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.EuiButtonComponent, selector: "button[euiButton], a[euiButton]", inputs: ["e2eAttr", "id", "euiBasicButton", "euiButtonCall", "euiBlockButton", "isLoading", "euiIconButton", "euiLineWrap"], outputs: ["buttonClick"] }, { kind: "component", type: i3.EuiIconComponent, selector: "div[euiIcon], span[euiIcon], i[euiIcon], eui-icon", inputs: ["aria-label", "iconClass", "isLoading"] }, { kind: "component", type: i3.EuiIconSvgComponent, selector: "eui-icon-svg, span[euiIconSvg], i[euiIconSvg]", inputs: ["icon", "size", "fillColor", "set", "ariaLabelledby", "role", "style", "iconUrl", "transform", "aria-label", "ariaHidden", "focusable", "isLoading"] }, { kind: "component", type: i3.EuiIconColorComponent, selector: "eui-icon-colored, span[euiIconColored], [euiIconColored]", inputs: ["iconClass"] }, { kind: "pipe", type: i4.EuiFileSizePipe, name: "filesize" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
141
143
  }
142
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.3", ngImport: i0, type: EuiFilePreviewComponent, decorators: [{
144
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.4", ngImport: i0, type: EuiFilePreviewComponent, decorators: [{
143
145
  type: Component,
144
146
  args: [{ selector: 'eui-file-preview', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<div class=\"file-upload__preview\">\n <div class=\"file-upload__preview__image\" *ngIf=\"hasPreview && hasPreviewAsImage\">\n <img [src]=\"previewData.display\" *ngIf=\"url && previewData.image\" />\n <span\n *ngIf=\"previewData && !previewData.image\"\n class=\"eui-icon eui-icon-color {{ previewData.display }}\"\n euiIconColored\n euiSize5XL></span>\n <div *ngIf=\"isLoading\" class=\"loading-coatainer\">\n <eui-icon euiSecondary iconClass=\"eui-icon-spinner eui-icon-3x eui-icon--spin\"></eui-icon>\n </div>\n </div>\n <div class=\"file-upload__preview__icon\" *ngIf=\"hasPreview && hasPreviewAsIcon\">\n <span class=\"eui-icon eui-icon-color {{ icon }}\" euiIconColored euiSize5XL></span>\n </div>\n <div class=\"file-upload__preview__filename\" *ngIf=\"isFilenameDisplayed\">\n <ng-container *ngIf=\"!isItemsClickable\">\n {{ file.name }}\n </ng-container>\n <ng-container *ngIf=\"isItemsClickable\">\n <a href=\"#\" (click)=\"onItemClick($event)\">{{ file.name }}</a>\n </ng-container>\n </div>\n <div class=\"file-upload__preview__filesize\" *ngIf=\"isFilesizeDisplayed\">{{ file.size | filesize }}</div>\n <div class=\"file-upload__preview__filetype\" *ngIf=\"isFiletypeDisplayed\">{{ file.type }}</div>\n <div class=\"file-upload__preview__actions\">\n <div class=\"file-upload__preview__actions-container\">\n <button euiButton euiPrimary euiRounded euiIconButton euiSizeL euiBasicButton type=\"button\" (click)=\"onRemoveFromList()\">\n <eui-icon-svg icon=\"eui-close\"></eui-icon-svg>\n </button>\n </div>\n </div>\n</div>\n" }]
145
147
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { file: [{
@@ -167,4 +169,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.0-next.3",
167
169
  }], isItemsClickable: [{
168
170
  type: Input
169
171
  }] } });
170
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1wcmV2aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2V1aS1maWxlLXVwbG9hZC9maWxlLXByZXZpZXcvZmlsZS1wcmV2aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL2V1aS1maWxlLXVwbG9hZC9maWxlLXByZXZpZXcvZmlsZS1wcmV2aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBRVQsS0FBSyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFFakIsTUFBTSxFQUNOLFlBQVksR0FDZixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUscUJBQXFCLEVBQWdCLE1BQU0sdUJBQXVCLENBQUM7Ozs7OztBQVU1RSxNQUFNLE9BQU8sdUJBQXVCO0lBc0NoQyxJQUNJLFVBQVU7UUFDVixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQztJQUNELElBQUksVUFBVSxDQUFDLEtBQW1CO1FBQzlCLElBQUksQ0FBQyxXQUFXLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELElBQ0ksbUJBQW1CO1FBQ25CLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDO0lBQ3JDLENBQUM7SUFDRCxJQUFJLG1CQUFtQixDQUFDLEtBQW1CO1FBQ3ZDLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsSUFDSSxtQkFBbUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUM7SUFDckMsQ0FBQztJQUNELElBQUksbUJBQW1CLENBQUMsS0FBbUI7UUFDdkMsSUFBSSxDQUFDLG9CQUFvQixHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRCxJQUNJLG1CQUFtQjtRQUNuQixPQUFPLElBQUks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Q0FBQyxDQUFDLDJCQUEyQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDcEcsQ0FBQzt3SUEzSlEsdUJBQXVCOzRIQUF2Qix1QkFBdUIsdWVDcEJwQyxrdURBaUNBOztrR0RiYSx1QkFBdUI7a0JBTm5DLFNBQVM7K0JBQ0ksa0JBQWtCLG1CQUVYLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUk7d0dBRzVCLElBQUk7c0JBQVosS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBRUcsbUJBQW1CO3NCQUEzQixLQUFLO2dCQXdCSSxjQUFjO3NCQUF2QixNQUFNO2dCQVFHLFNBQVM7c0JBQWxCLE1BQU07Z0JBR0gsVUFBVTtzQkFEYixLQUFLO2dCQVNGLG1CQUFtQjtzQkFEdEIsS0FBSztnQkFTRixtQkFBbUI7c0JBRHRCLEtBQUs7Z0JBU0YsbUJBQW1CO3NCQUR0QixLQUFLO2dCQVNGLGlCQUFpQjtzQkFEcEIsS0FBSztnQkFTRixnQkFBZ0I7c0JBRG5CLEtBQUs7Z0JBU0YsZ0JBQWdCO3NCQURuQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnQsXG4gICAgT25Jbml0LFxuICAgIElucHV0LFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIE91dHB1dCxcbiAgICBFdmVudEVtaXR0ZXIsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgY29lcmNlQm9vbGVhblByb3BlcnR5LCBCb29sZWFuSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuXG5pbXBvcnQgeyBFdWlVcGxvYWRlZEZpbGUgfSBmcm9tICcuLi9tb2RlbHMvdXBsb2FkZWQtZmlsZS5tb2RlbCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZXVpLWZpbGUtcHJldmlldycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2ZpbGUtcHJldmlldy5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgRXVpRmlsZVByZXZpZXdDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xuICAgIEBJbnB1dCgpIGZpbGU6IEJsb2IgfCBFdWlVcGxvYWRlZEZpbGUgfCBhbnk7XG4gICAgQElucHV0KCkgaW5kZXg6IG51bWJlcjtcblxuICAgIEBJbnB1dCgpIHByZXZpZXdBc0ljb25Db25maWcgPSB7XG4gICAgICAgIGF2aTogJ2V1aS1pY29uLWZpbGV0eXBlLWF2aScsXG4gICAgICAgIGh0bWw6ICdldWktaWNvbi1maWxldHlwZS1odG1sJyxcbiAgICAgICAgaHRtOiAnZXVpLWljb24tZmlsZXR5cGUtaHRtbCcsXG4gICAgICAgIGpzOiAnZXVpLWljb24tZmlsZXR5cGUtanMnLFxuICAgICAgICBqc29uOiAnZXVpLWljb24tZmlsZXR5cGUtanNvbicsXG4gICAgICAgIG1wNDogJ2V1aS1pY29uLWZpbGV0eXBlLW1wNCcsXG4gICAgICAgIHBkZjogJ2V1aS1pY29uLWZpbGV0eXBlLXBkZicsXG4gICAgICAgIHBuZzogJ2V1aS1pY29uLWZpbGV0eXBlLXBuZycsXG4gICAgICAgIHN2ZzogJ2V1aS1pY29uLWZpbGV0eXBlLXN2ZycsXG4gICAgICAgIHR4dDogJ2V1aS1pY29uLWZpbGV0eXBlLXR4dCcsXG4gICAgICAgIHhtbDogJ2V1aS1pY29uLWZpbGV0eXBlLXhtbCcsXG4gICAgICAgIGpwZWc6ICdldWktaWNvbi1maWxldHlwZS1qcGcnLFxuICAgICAgICBqcGc6ICdldWktaWNvbi1maWxldHlwZS1qcGcnLFxuICAgICAgICB6aXA6ICdldWktaWNvbi1maWxldHlwZS16aXAnLFxuICAgICAgICBkb2M6ICdldWktaWNvbi1maWxldHlwZS1kb2MnLFxuICAgICAgICBkb2N4OiAnZXVpLWljb24tZmlsZXR5cGUtZG9jJyxcbiAgICAgICAgeGxzOiAnZXVpLWljb24tZmlsZXR5cGUteGxzJyxcbiAgICAgICAgeGxzeDogJ2V1aS1pY29uLWZpbGV0eXBlLXhscycsXG4gICAgICAgIHBwdDogJ2V1aS1pY29uLWZpbGV0eXBlLXBwdCcsXG4gICAgICAgIGNzdjogJ2V1aS1pY29uLWZpbGV0eXBlLWNzdicsXG4gICAgICAgIHJ0ZjogJ2V1aS1pY29uLWZpbGV0eXBlLXJ0ZicsXG4gICAgfTtcblxuICAgIEBPdXRwdXQoKSByZW1vdmVGcm9tTGlzdCA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuXG4gICAgcHVibGljIHVybDogc3RyaW5nO1xuICAgIHB1YmxpYyBpY29uOiBzdHJpbmc7XG4gICAgcHVibGljIGZpbGVFeHRlbnNpb246IHN0cmluZztcbiAgICBwdWJsaWMgcHJldmlld0RhdGE6IHsgaW1hZ2U6IGJvb2xlYW47IGRpc3BsYXk6IHN0cmluZyB9O1xuICAgIHB1YmxpYyBpc0xvYWRpbmcgPSBmYWxzZTtcblxuICAgIEBPdXRwdXQoKSBpdGVtQ2xpY2sgPSBuZXcgRXZlbnRFbWl0dGVyPEJsb2IgfCBFdWlVcGxvYWRlZEZpbGUgfCBhbnk+KCk7XG5cbiAgICBASW5wdXQoKVxuICAgIGdldCBoYXNQcmV2aWV3KCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faGFzUHJldmlldztcbiAgICB9XG4gICAgc2V0IGhhc1ByZXZpZXcodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9oYXNQcmV2aWV3ID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaGFzUHJldmlldyA9IHRydWU7XG4gICAgQElucHV0KClcbiAgICBnZXQgaXNGaWxlbmFtZURpc3BsYXllZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzRmlsZW5hbWVEaXNwbGF5ZWQ7XG4gICAgfVxuICAgIHNldCBpc0ZpbGVuYW1lRGlzcGxheWVkKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faXNGaWxlbmFtZURpc3BsYXllZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2lzRmlsZW5hbWVEaXNwbGF5ZWQgPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGlzRmlsZXNpemVEaXNwbGF5ZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc0ZpbGVzaXplRGlzcGxheWVkO1xuICAgIH1cbiAgICBzZXQgaXNGaWxlc2l6ZURpc3BsYXllZCh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2lzRmlsZXNpemVEaXNwbGF5ZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9pc0ZpbGVzaXplRGlzcGxheWVkID0gdHJ1ZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBpc0ZpbGV0eXBlRGlzcGxheWVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNGaWxldHlwZURpc3BsYXllZDtcbiAgICB9XG4gICAgc2V0IGlzRmlsZXR5cGVEaXNwbGF5ZWQodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9pc0ZpbGV0eXBlRGlzcGxheWVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaXNGaWxldHlwZURpc3BsYXllZCA9IHRydWU7XG4gICAgQElucHV0KClcbiAgICBnZXQgaGFzUHJldmlld0FzSW1hZ2UoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9oYXNQcmV2aWV3QXNJbWFnZTtcbiAgICB9XG4gICAgc2V0IGhhc1ByZXZpZXdBc0ltYWdlKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faGFzUHJldmlld0FzSW1hZ2UgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9oYXNQcmV2aWV3QXNJbWFnZSA9IHRydWU7XG4gICAgQElucHV0KClcbiAgICBnZXQgaGFzUHJldmlld0FzSWNvbigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hhc1ByZXZpZXdBc0ljb247XG4gICAgfVxuICAgIHNldCBoYXNQcmV2aWV3QXNJY29uKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faGFzUHJldmlld0FzSWNvbiA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2hhc1ByZXZpZXdBc0ljb24gPSBmYWxzZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBpc0l0ZW1zQ2xpY2thYmxlKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNJdGVtc0NsaWNrYWJsZTtcbiAgICB9XG4gICAgc2V0IGlzSXRlbXNDbGlja2FibGUodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9pc0l0ZW1zQ2xpY2thYmxlID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaXNJdGVtc0NsaWNrYWJsZSA9IGZhbHNlO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBjZDogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaGFzUHJldmlld0FzSWNvbikge1xuICAgICAgICAgICAgdGhpcy5oYXNQcmV2aWV3QXNJbWFnZSA9IGZhbHNlO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMuZmlsZSBpbnN0YW5jZW9mIEJsb2IpIHtcbiAgICAgICAgICAgIGNvbnN0IHJlYWRlciA9IG5ldyBGaWxlUmVhZGVyKCk7XG4gICAgICAgICAgICByZWFkZXIucmVhZEFzRGF0YVVSTCh0aGlzLmZpbGUgYXMgQmxvYik7XG4gICAgICAgICAgICByZWFkZXIub25sb2FkID0gKGV2ZW50OiBhbnkpOiB2b2lkID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLnVybCA9IGV2ZW50LnRhcmdldC5yZXN1bHQ7XG4gICAgICAgICAgICAgICAgdGhpcy5maWxlRXh0ZW5zaW9uID0gdGhpcy5nZXRGaWxlRXh0ZW5zaW9uKHRoaXMuZmlsZS5uYW1lKTtcbiAgICAgICAgICAgICAgICB0aGlzLmljb24gPSB0aGlzLmdldEljb25Gb3JNaW1lKHRoaXMuZmlsZUV4dGVuc2lvbik7XG4gICAgICAgICAgICAgICAgdGhpcy5wcmV2aWV3RGF0YSA9IHRoaXMuZ2V0UHJldmlld0Zvck1pbWUodGhpcy5maWxlRXh0ZW5zaW9uKTtcbiAgICAgICAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICByZWFkZXIub25sb2Fkc3RhcnQgPSAoZXZlbnQ6IFByb2dyZXNzRXZlbnQpOiB2b2lkID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IHRydWU7XG4gICAgICAgICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgICB9O1xuICAgICAgICAgICAgcmVhZGVyLm9ubG9hZGVuZCA9IChldmVudDogUHJvZ3Jlc3NFdmVudCk6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gZmFsc2U7XG4gICAgICAgICAgICAgICAgdGhpcy5jZC5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgICAgICB9O1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy51cmwgPSAodGhpcy5maWxlIGFzIEV1aVVwbG9hZGVkRmlsZSkudXJsO1xuICAgICAgICAgICAgdGhpcy5maWxlRXh0ZW5zaW9uID0gdGhpcy5nZXRGaWxlRXh0ZW5zaW9uKHRoaXMuZmlsZS5uYW1lKTtcbiAgICAgICAgICAgIHRoaXMuaWNvbiA9IHRoaXMuZ2V0SWNvbkZvck1pbWUodGhpcy5maWxlRXh0ZW5zaW9uKTtcbiAgICAgICAgICAgIHRoaXMucHJldmlld0RhdGEgPSB0aGlzLmdldFByZXZpZXdGb3JNaW1lKHRoaXMuZmlsZUV4dGVuc2lvbik7XG4gICAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHB1YmxpYyBvblJlbW92ZUZyb21MaXN0KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnJlbW92ZUZyb21MaXN0LmVtaXQodGhpcy5pbmRleCk7XG4gICAgfVxuXG4gICAgcHVibGljIG9uSXRlbUNsaWNrKGU6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuaXRlbUNsaWNrLmVtaXQodGhpcy5maWxlKTtcbiAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0RmlsZUV4dGVuc2lvbihmaWxlTmFtZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgZXh0ID0gZmlsZU5hbWUuc3BsaXQoJy4nKTtcblxuICAgICAgICByZXR1cm4gZXh0W2V4dC5sZW5ndGggLSAxXTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFByZXZpZXdGb3JNaW1lKGZpbGVFeHRlbnNpb246IHN0cmluZyk6IHsgaW1hZ2U6IGJvb2xlYW47IGRpc3BsYXk6IHN0cmluZyB9IHtcbiAgICAgICAgY29uc3QgZiA9IGZpbGVFeHRlbnNpb24udG9Mb3dlckNhc2UoKTtcbiAgICAgICAgY29uc3QgaW1hZ2UgPSBmID09PSAnanBlZycgfHwgZiA9PT0gJ2pwZycgfHwgZiA9PT0gJ3BuZycgfHwgZiA9PT0gJ2dpZicgPyB0cnVlIDogZmFsc2U7XG4gICAgICAgIGNvbnN0IGRpc3BsYXkgPSBmID09PSAnanBlZycgfHwgZiA9PT0gJ2pwZycgfHwgZiA9PT0gJ3BuZycgfHwgZiA9PT0gJ2dpZicgPyB0aGlzLnVybCA6IHRoaXMuZ2V0SWNvbkZvck1pbWUoZik7XG5cbiAgICAgICAgcmV0dXJuIHsgaW1hZ2UsIGRpc3BsYXkgfTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldEljb25Gb3JNaW1lKGZpbGVFeHRlbnNpb246IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IGYgPSBmaWxlRXh0ZW5zaW9uLnRvTG93ZXJDYXNlKCk7XG4gICAgICAgIHJldHVybiAhdGhpcy5wcmV2aWV3QXNJY29uQ29uZmlnW2ZdID8gJ2V1aS1pY29uLWZpbGV0eXBlLXVua25vd24nIDogdGhpcy5wcmV2aWV3QXNJY29uQ29uZmlnW2ZdO1xuICAgIH1cbn1cbiIsIjxkaXYgY2xhc3M9XCJmaWxlLXVwbG9hZF9fcHJldmlld1wiPlxuICAgIDxkaXYgY2xhc3M9XCJmaWxlLXVwbG9hZF9fcHJldmlld19faW1hZ2VcIiAqbmdJZj1cImhhc1ByZXZpZXcgJiYgaGFzUHJldmlld0FzSW1hZ2VcIj5cbiAgICAgICAgPGltZyBbc3JjXT1cInByZXZpZXdEYXRhLmRpc3BsYXlcIiAqbmdJZj1cInVybCAmJiBwcmV2aWV3RGF0YS5pbWFnZVwiIC8+XG4gICAgICAgIDxzcGFuXG4gICAgICAgICAgICAqbmdJZj1cInByZXZpZXdEYXRhICYmICFwcmV2aWV3RGF0YS5pbWFnZVwiXG4gICAgICAgICAgICBjbGFzcz1cImV1aS1pY29uIGV1aS1pY29uLWNvbG9yIHt7IHByZXZpZXdEYXRhLmRpc3BsYXkgfX1cIlxuICAgICAgICAgICAgZXVpSWNvbkNvbG9yZWRcbiAgICAgICAgICAgIGV1aVNpemU1WEw+PC9zcGFuPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwiaXNMb2FkaW5nXCIgY2xhc3M9XCJsb2FkaW5nLWNvYXRhaW5lclwiPlxuICAgICAgICAgICAgPGV1aS1pY29uIGV1aVNlY29uZGFyeSBpY29uQ2xhc3M9XCJldWktaWNvbi1zcGlubmVyIGV1aS1pY29uLTN4IGV1aS1pY29uLS1zcGluXCI+PC9ldWktaWNvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZpbGUtdXBsb2FkX19wcmV2aWV3X19pY29uXCIgKm5nSWY9XCJoYXNQcmV2aWV3ICYmIGhhc1ByZXZpZXdBc0ljb25cIj5cbiAgICAgICAgPHNwYW4gY2xhc3M9XCJldWktaWNvbiBldWktaWNvbi1jb2xvciB7eyBpY29uIH19XCIgZXVpSWNvbkNvbG9yZWQgZXVpU2l6ZTVYTD48L3NwYW4+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZpbGUtdXBsb2FkX19wcmV2aWV3X19maWxlbmFtZVwiICpuZ0lmPVwiaXNGaWxlbmFtZURpc3BsYXllZFwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzSXRlbXNDbGlja2FibGVcIj5cbiAgICAgICAgICAgIHt7IGZpbGUubmFtZSB9fVxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzSXRlbXNDbGlja2FibGVcIj5cbiAgICAgICAgICAgIDxhIGhyZWY9XCIjXCIgKGNsaWNrKT1cIm9uSXRlbUNsaWNrKCRldmVudClcIj57eyBmaWxlLm5hbWUgfX08L2E+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmaWxlLXVwbG9hZF9fcHJldmlld19fZmlsZXNpemVcIiAqbmdJZj1cImlzRmlsZXNpemVEaXNwbGF5ZWRcIj57eyBmaWxlLnNpemUgfCBmaWxlc2l6ZSB9fTwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmaWxlLXVwbG9hZF9fcHJldmlld19fZmlsZXR5cGVcIiAqbmdJZj1cImlzRmlsZXR5cGVEaXNwbGF5ZWRcIj57eyBmaWxlLnR5cGUgfX08L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZmlsZS11cGxvYWRfX3ByZXZpZXdfX2FjdGlvbnNcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZpbGUtdXBsb2FkX19wcmV2aWV3X19hY3Rpb25zLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgPGJ1dHRvbiBldWlCdXR0b24gZXVpUHJpbWFyeSBldWlSb3VuZGVkIGV1aUljb25CdXR0b24gZXVpU2l6ZUwgZXVpQmFzaWNCdXR0b24gdHlwZT1cImJ1dHRvblwiIChjbGljayk9XCJvblJlbW92ZUZyb21MaXN0KClcIj5cbiAgICAgICAgICAgICAgICA8ZXVpLWljb24tc3ZnIGljb249XCJldWktY2xvc2VcIj48L2V1aS1pY29uLXN2Zz5cbiAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19
172
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZS1wcmV2aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL2V1aS1maWxlLXVwbG9hZC9maWxlLXByZXZpZXcvZmlsZS1wcmV2aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL2V1aS1maWxlLXVwbG9hZC9maWxlLXByZXZpZXcvZmlsZS1wcmV2aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDSCxTQUFTLEVBRVQsS0FBSyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFFakIsTUFBTSxFQUNOLFlBQVksR0FDZixNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUscUJBQXFCLEVBQWdCLE1BQU0sdUJBQXVCLENBQUM7Ozs7OztBQVU1RSxNQUFNLE9BQU8sdUJBQXVCO0lBc0NoQyxJQUNJLFVBQVU7UUFDVixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUM7SUFDNUIsQ0FBQztJQUNELElBQUksVUFBVSxDQUFDLEtBQW1CO1FBQzlCLElBQUksQ0FBQyxXQUFXLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELElBQ0ksbUJBQW1CO1FBQ25CLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDO0lBQ3JDLENBQUM7SUFDRCxJQUFJLG1CQUFtQixDQUFDLEtBQW1CO1FBQ3ZDLElBQUksQ0FBQyxvQkFBb0IsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsSUFDSSxtQkFBbUI7UUFDbkIsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUM7SUFDckMsQ0FBQztJQUNELElBQUksbUJBQW1CLENBQUMsS0FBbUI7UUFDdkMsSUFBSSxDQUFDLG9CQUFvQixHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzdELENBQUM7SUFFRCxJQUNJLG1CQUFtQjtRQUNuQixPQUFPLElBQUksQ0FBQyxvQkFBb0IsQ0FBQztJQUNyQyxDQUFDO0lBQ0QsSUFBSSxtQkFBbUIsQ0FBQyxLQUFtQjtRQUN2QyxJQUFJLENBQUMsb0JBQW9CLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDN0QsQ0FBQztJQUVELElBQ0ksaUJBQWlCO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDO0lBQ25DLENBQUM7SUFDRCxJQUFJLGlCQUFpQixDQUFDLEtBQW1CO1FBQ3JDLElBQUksQ0FBQyxrQkFBa0IsR0FBRyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzRCxDQUFDO0lBRUQsSUFDSSxnQkFBZ0I7UUFDaEIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUM7SUFDbEMsQ0FBQztJQUNELElBQUksZ0JBQWdCLENBQUMsS0FBbUI7UUFDcEMsSUFBSSxDQUFDLGlCQUFpQixHQUFHLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFELENBQUM7SUFFRCxJQUNJLGdCQUFnQjtRQUNoQixPQUFPLElBQUksQ0FBQyxpQkFBaUIsQ0FBQztJQUNsQyxDQUFDO0lBQ0QsSUFBSSxnQkFBZ0IsQ0FBQyxLQUFtQjtRQUNwQyxJQUFJLENBQUMsaUJBQWlCLEdBQUcscUJBQXFCLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDMUQsQ0FBQztJQUdELFlBQW9CLEVBQXFCO1FBQXJCLE9BQUUsR0FBRixFQUFFLENBQW1CO1FBM0ZoQyx3QkFBbUIsR0FBRztZQUMzQixHQUFHLEVBQUUsdUJBQXVCO1lBQzVCLElBQUksRUFBRSx3QkFBd0I7WUFDOUIsR0FBRyxFQUFFLHdCQUF3QjtZQUM3QixFQUFFLEVBQUUsc0JBQXNCO1lBQzFCLElBQUksRUFBRSx3QkFBd0I7WUFDOUIsR0FBRyxFQUFFLHVCQUF1QjtZQUM1QixHQUFHLEVBQUUsdUJBQXVCO1lBQzVCLEdBQUcsRUFBRSx1QkFBdUI7WUFDNUIsR0FBRyxFQUFFLHVCQUF1QjtZQUM1QixHQUFHLEVBQUUsdUJBQXVCO1lBQzVCLEdBQUcsRUFBRSx1QkFBdUI7WUFDNUIsSUFBSSxFQUFFLHVCQUF1QjtZQUM3QixHQUFHLEVBQUUsdUJBQXVCO1lBQzVCLEdBQUcsRUFBRSx1QkFBdUI7WUFDNUIsR0FBRyxFQUFFLHVCQUF1QjtZQUM1QixJQUFJLEVBQUUsdUJBQXVCO1lBQzdCLEdBQUcsRUFBRSx1QkFBdUI7WUFDNUIsSUFBSSxFQUFFLHVCQUF1QjtZQUM3QixHQUFHLEVBQUUsdUJBQXVCO1lBQzVCLEdBQUcsRUFBRSx1QkFBdUI7WUFDNUIsR0FBRyxFQUFFLHVCQUF1QjtTQUMvQixDQUFDO1FBRVEsbUJBQWMsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBTS9DLGNBQVMsR0FBRyxLQUFLLENBQUM7UUFFZixjQUFTLEdBQUcsSUFBSSxZQUFZLEVBQWdDLENBQUM7UUFTL0QsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFRbkIseUJBQW9CLEdBQUcsSUFBSSxDQUFDO1FBUTVCLHlCQUFvQixHQUFHLElBQUksQ0FBQztRQVE1Qix5QkFBb0IsR0FBRyxJQUFJLENBQUM7UUFRNUIsdUJBQWtCLEdBQUcsSUFBSSxDQUFDO1FBUTFCLHNCQUFpQixHQUFHLEtBQUssQ0FBQztRQVExQixzQkFBaUIsR0FBRyxLQUFLLENBQUM7SUFFVSxDQUFDO0lBRTdDLFFBQVE7UUFDSixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUN2QixJQUFJLENBQUMsaUJBQWlCLEdBQUcsS0FBSyxDQUFDO1NBQ2xDO1FBRUQsSUFBSSxJQUFJLENBQUMsSUFBSSxZQUFZLElBQUksRUFBRTtZQUMzQixNQUFNLE1BQU0sR0FBRyxJQUFJLFVBQVUsRUFBRSxDQUFDO1lBQ2hDLE1BQU0sQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQVksQ0FBQyxDQUFDO1lBQ3hDLE1BQU0sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxLQUFVLEVBQVEsRUFBRTtnQkFDakMsSUFBSSxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztnQkFDL0IsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDM0QsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztnQkFDcEQsSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO2dCQUM5RCxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQzVCLENBQUMsQ0FBQztZQUNGLDZEQUE2RDtZQUM3RCxNQUFNLENBQUMsV0FBVyxHQUFHLENBQUMsS0FBb0IsRUFBUSxFQUFFO2dCQUNoRCxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztnQkFDdEIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUM1QixDQUFDLENBQUM7WUFDRiw2REFBNkQ7WUFDN0QsTUFBTSxDQUFDLFNBQVMsR0FBRyxDQUFDLEtBQW9CLEVBQVEsRUFBRTtnQkFDOUMsSUFBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7Z0JBQ3ZCLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDNUIsQ0FBQyxDQUFDO1NBQ0w7YUFBTTtZQUNILElBQUksQ0FBQyxHQUFHLEdBQUksSUFBSSxDQUFDLElBQXdCLENBQUMsR0FBRyxDQUFDO1lBQzlDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDM0QsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztZQUNwRCxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7WUFDOUQsSUFBSSxDQUFDLEVBQUUsQ0FBQyxhQUFhLEVBQUUsQ0FBQztTQUMzQjtJQUNMLENBQUM7SUFFTSxnQkFBZ0I7UUFDbkIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pDLENBQUM7SUFFTSxXQUFXLENBQUMsQ0FBUTtRQUN2QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDL0IsQ0FBQyxDQUFDLGNBQWMsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFTyxnQkFBZ0IsQ0FBQyxRQUFnQjtRQUNyQyxNQUFNLEdBQUcsR0FBRyxRQUFRLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBRWhDLE9BQU8sR0FBRyxDQUFDLEdBQUcsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVPLGlCQUFpQixDQUFDLGFBQXFCO1FBQzNDLE1BQU0sQ0FBQyxHQUFHLGFBQWEsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUN0QyxNQUFNLEtBQUssR0FBRyxDQUFDLEtBQUssTUFBTSxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQztRQUN2RixNQUFNLE9BQU8sR0FBRyxDQUFDLEtBQUssTUFBTSxJQUFJLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBRTlHLE9BQU8sRUFBRSxLQUFLLEVBQUUsT0FBTyxFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVPLGNBQWMsQ0FBQyxhQUFxQjtRQUN4QyxNQUFNLENBQUMsR0FBRyxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUM7UUFDdEMsT0FBTyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsMkJBQTJCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNwRyxDQUFDO3dJQTdKUSx1QkFBdUI7NEhBQXZCLHVCQUF1Qix1ZUNwQnBDLGt1REFpQ0E7O2tHRGJhLHVCQUF1QjtrQkFObkMsU0FBUzsrQkFDSSxrQkFBa0IsbUJBRVgsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSTt3R0FHNUIsSUFBSTtzQkFBWixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFFRyxtQkFBbUI7c0JBQTNCLEtBQUs7Z0JBd0JJLGNBQWM7c0JBQXZCLE1BQU07Z0JBUUcsU0FBUztzQkFBbEIsTUFBTTtnQkFHSCxVQUFVO3NCQURiLEtBQUs7Z0JBU0YsbUJBQW1CO3NCQUR0QixLQUFLO2dCQVNGLG1CQUFtQjtzQkFEdEIsS0FBSztnQkFTRixtQkFBbUI7c0JBRHRCLEtBQUs7Z0JBU0YsaUJBQWlCO3NCQURwQixLQUFLO2dCQVNGLGdCQUFnQjtzQkFEbkIsS0FBSztnQkFTRixnQkFBZ0I7c0JBRG5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENvbXBvbmVudCxcbiAgICBPbkluaXQsXG4gICAgSW5wdXQsXG4gICAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gICAgVmlld0VuY2Fwc3VsYXRpb24sXG4gICAgQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgT3V0cHV0LFxuICAgIEV2ZW50RW1pdHRlcixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBjb2VyY2VCb29sZWFuUHJvcGVydHksIEJvb2xlYW5JbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9jb2VyY2lvbic7XG5cbmltcG9ydCB7IEV1aVVwbG9hZGVkRmlsZSB9IGZyb20gJy4uL21vZGVscy91cGxvYWRlZC1maWxlLm1vZGVsJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdldWktZmlsZS1wcmV2aWV3JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZmlsZS1wcmV2aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBFdWlGaWxlUHJldmlld0NvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gICAgQElucHV0KCkgZmlsZTogQmxvYiB8IEV1aVVwbG9hZGVkRmlsZSB8IGFueTtcbiAgICBASW5wdXQoKSBpbmRleDogbnVtYmVyO1xuXG4gICAgQElucHV0KCkgcHJldmlld0FzSWNvbkNvbmZpZyA9IHtcbiAgICAgICAgYXZpOiAnZXVpLWljb24tZmlsZXR5cGUtYXZpJyxcbiAgICAgICAgaHRtbDogJ2V1aS1pY29uLWZpbGV0eXBlLWh0bWwnLFxuICAgICAgICBodG06ICdldWktaWNvbi1maWxldHlwZS1odG1sJyxcbiAgICAgICAganM6ICdldWktaWNvbi1maWxldHlwZS1qcycsXG4gICAgICAgIGpzb246ICdldWktaWNvbi1maWxldHlwZS1qc29uJyxcbiAgICAgICAgbXA0OiAnZXVpLWljb24tZmlsZXR5cGUtbXA0JyxcbiAgICAgICAgcGRmOiAnZXVpLWljb24tZmlsZXR5cGUtcGRmJyxcbiAgICAgICAgcG5nOiAnZXVpLWljb24tZmlsZXR5cGUtcG5nJyxcbiAgICAgICAgc3ZnOiAnZXVpLWljb24tZmlsZXR5cGUtc3ZnJyxcbiAgICAgICAgdHh0OiAnZXVpLWljb24tZmlsZXR5cGUtdHh0JyxcbiAgICAgICAgeG1sOiAnZXVpLWljb24tZmlsZXR5cGUteG1sJyxcbiAgICAgICAganBlZzogJ2V1aS1pY29uLWZpbGV0eXBlLWpwZycsXG4gICAgICAgIGpwZzogJ2V1aS1pY29uLWZpbGV0eXBlLWpwZycsXG4gICAgICAgIHppcDogJ2V1aS1pY29uLWZpbGV0eXBlLXppcCcsXG4gICAgICAgIGRvYzogJ2V1aS1pY29uLWZpbGV0eXBlLWRvYycsXG4gICAgICAgIGRvY3g6ICdldWktaWNvbi1maWxldHlwZS1kb2MnLFxuICAgICAgICB4bHM6ICdldWktaWNvbi1maWxldHlwZS14bHMnLFxuICAgICAgICB4bHN4OiAnZXVpLWljb24tZmlsZXR5cGUteGxzJyxcbiAgICAgICAgcHB0OiAnZXVpLWljb24tZmlsZXR5cGUtcHB0JyxcbiAgICAgICAgY3N2OiAnZXVpLWljb24tZmlsZXR5cGUtY3N2JyxcbiAgICAgICAgcnRmOiAnZXVpLWljb24tZmlsZXR5cGUtcnRmJyxcbiAgICB9O1xuXG4gICAgQE91dHB1dCgpIHJlbW92ZUZyb21MaXN0ID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG5cbiAgICBwdWJsaWMgdXJsOiBzdHJpbmc7XG4gICAgcHVibGljIGljb246IHN0cmluZztcbiAgICBwdWJsaWMgZmlsZUV4dGVuc2lvbjogc3RyaW5nO1xuICAgIHB1YmxpYyBwcmV2aWV3RGF0YTogeyBpbWFnZTogYm9vbGVhbjsgZGlzcGxheTogc3RyaW5nIH07XG4gICAgcHVibGljIGlzTG9hZGluZyA9IGZhbHNlO1xuXG4gICAgQE91dHB1dCgpIGl0ZW1DbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8QmxvYiB8IEV1aVVwbG9hZGVkRmlsZSB8IGFueT4oKTtcblxuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGhhc1ByZXZpZXcoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9oYXNQcmV2aWV3O1xuICAgIH1cbiAgICBzZXQgaGFzUHJldmlldyh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2hhc1ByZXZpZXcgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9oYXNQcmV2aWV3ID0gdHJ1ZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBpc0ZpbGVuYW1lRGlzcGxheWVkKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faXNGaWxlbmFtZURpc3BsYXllZDtcbiAgICB9XG4gICAgc2V0IGlzRmlsZW5hbWVEaXNwbGF5ZWQodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9pc0ZpbGVuYW1lRGlzcGxheWVkID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaXNGaWxlbmFtZURpc3BsYXllZCA9IHRydWU7XG4gICAgQElucHV0KClcbiAgICBnZXQgaXNGaWxlc2l6ZURpc3BsYXllZCgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2lzRmlsZXNpemVEaXNwbGF5ZWQ7XG4gICAgfVxuICAgIHNldCBpc0ZpbGVzaXplRGlzcGxheWVkKHZhbHVlOiBCb29sZWFuSW5wdXQpIHtcbiAgICAgICAgdGhpcy5faXNGaWxlc2l6ZURpc3BsYXllZCA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2lzRmlsZXNpemVEaXNwbGF5ZWQgPSB0cnVlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGlzRmlsZXR5cGVEaXNwbGF5ZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc0ZpbGV0eXBlRGlzcGxheWVkO1xuICAgIH1cbiAgICBzZXQgaXNGaWxldHlwZURpc3BsYXllZCh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2lzRmlsZXR5cGVEaXNwbGF5ZWQgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9pc0ZpbGV0eXBlRGlzcGxheWVkID0gdHJ1ZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBoYXNQcmV2aWV3QXNJbWFnZSgpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2hhc1ByZXZpZXdBc0ltYWdlO1xuICAgIH1cbiAgICBzZXQgaGFzUHJldmlld0FzSW1hZ2UodmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9oYXNQcmV2aWV3QXNJbWFnZSA9IGNvZXJjZUJvb2xlYW5Qcm9wZXJ0eSh2YWx1ZSk7XG4gICAgfVxuICAgIHByaXZhdGUgX2hhc1ByZXZpZXdBc0ltYWdlID0gdHJ1ZTtcbiAgICBASW5wdXQoKVxuICAgIGdldCBoYXNQcmV2aWV3QXNJY29uKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5faGFzUHJldmlld0FzSWNvbjtcbiAgICB9XG4gICAgc2V0IGhhc1ByZXZpZXdBc0ljb24odmFsdWU6IEJvb2xlYW5JbnB1dCkge1xuICAgICAgICB0aGlzLl9oYXNQcmV2aWV3QXNJY29uID0gY29lcmNlQm9vbGVhblByb3BlcnR5KHZhbHVlKTtcbiAgICB9XG4gICAgcHJpdmF0ZSBfaGFzUHJldmlld0FzSWNvbiA9IGZhbHNlO1xuICAgIEBJbnB1dCgpXG4gICAgZ2V0IGlzSXRlbXNDbGlja2FibGUoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9pc0l0ZW1zQ2xpY2thYmxlO1xuICAgIH1cbiAgICBzZXQgaXNJdGVtc0NsaWNrYWJsZSh2YWx1ZTogQm9vbGVhbklucHV0KSB7XG4gICAgICAgIHRoaXMuX2lzSXRlbXNDbGlja2FibGUgPSBjb2VyY2VCb29sZWFuUHJvcGVydHkodmFsdWUpO1xuICAgIH1cbiAgICBwcml2YXRlIF9pc0l0ZW1zQ2xpY2thYmxlID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkOiBDaGFuZ2VEZXRlY3RvclJlZikge31cblxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5oYXNQcmV2aWV3QXNJY29uKSB7XG4gICAgICAgICAgICB0aGlzLmhhc1ByZXZpZXdBc0ltYWdlID0gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy5maWxlIGluc3RhbmNlb2YgQmxvYikge1xuICAgICAgICAgICAgY29uc3QgcmVhZGVyID0gbmV3IEZpbGVSZWFkZXIoKTtcbiAgICAgICAgICAgIHJlYWRlci5yZWFkQXNEYXRhVVJMKHRoaXMuZmlsZSBhcyBCbG9iKTtcbiAgICAgICAgICAgIHJlYWRlci5vbmxvYWQgPSAoZXZlbnQ6IGFueSk6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMudXJsID0gZXZlbnQudGFyZ2V0LnJlc3VsdDtcbiAgICAgICAgICAgICAgICB0aGlzLmZpbGVFeHRlbnNpb24gPSB0aGlzLmdldEZpbGVFeHRlbnNpb24odGhpcy5maWxlLm5hbWUpO1xuICAgICAgICAgICAgICAgIHRoaXMuaWNvbiA9IHRoaXMuZ2V0SWNvbkZvck1pbWUodGhpcy5maWxlRXh0ZW5zaW9uKTtcbiAgICAgICAgICAgICAgICB0aGlzLnByZXZpZXdEYXRhID0gdGhpcy5nZXRQcmV2aWV3Rm9yTWltZSh0aGlzLmZpbGVFeHRlbnNpb24pO1xuICAgICAgICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbiAgICAgICAgICAgIHJlYWRlci5vbmxvYWRzdGFydCA9IChldmVudDogUHJvZ3Jlc3NFdmVudCk6IHZvaWQgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgIH07XG4gICAgICAgICAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG4gICAgICAgICAgICByZWFkZXIub25sb2FkZW5kID0gKGV2ZW50OiBQcm9ncmVzc0V2ZW50KTogdm9pZCA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICB0aGlzLmNkLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgICAgIH07XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLnVybCA9ICh0aGlzLmZpbGUgYXMgRXVpVXBsb2FkZWRGaWxlKS51cmw7XG4gICAgICAgICAgICB0aGlzLmZpbGVFeHRlbnNpb24gPSB0aGlzLmdldEZpbGVFeHRlbnNpb24odGhpcy5maWxlLm5hbWUpO1xuICAgICAgICAgICAgdGhpcy5pY29uID0gdGhpcy5nZXRJY29uRm9yTWltZSh0aGlzLmZpbGVFeHRlbnNpb24pO1xuICAgICAgICAgICAgdGhpcy5wcmV2aWV3RGF0YSA9IHRoaXMuZ2V0UHJldmlld0Zvck1pbWUodGhpcy5maWxlRXh0ZW5zaW9uKTtcbiAgICAgICAgICAgIHRoaXMuY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHVibGljIG9uUmVtb3ZlRnJvbUxpc3QoKTogdm9pZCB7XG4gICAgICAgIHRoaXMucmVtb3ZlRnJvbUxpc3QuZW1pdCh0aGlzLmluZGV4KTtcbiAgICB9XG5cbiAgICBwdWJsaWMgb25JdGVtQ2xpY2soZTogRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5pdGVtQ2xpY2suZW1pdCh0aGlzLmZpbGUpO1xuICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRGaWxlRXh0ZW5zaW9uKGZpbGVOYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBleHQgPSBmaWxlTmFtZS5zcGxpdCgnLicpO1xuXG4gICAgICAgIHJldHVybiBleHRbZXh0Lmxlbmd0aCAtIDFdO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0UHJldmlld0Zvck1pbWUoZmlsZUV4dGVuc2lvbjogc3RyaW5nKTogeyBpbWFnZTogYm9vbGVhbjsgZGlzcGxheTogc3RyaW5nIH0ge1xuICAgICAgICBjb25zdCBmID0gZmlsZUV4dGVuc2lvbi50b0xvd2VyQ2FzZSgpO1xuICAgICAgICBjb25zdCBpbWFnZSA9IGYgPT09ICdqcGVnJyB8fCBmID09PSAnanBnJyB8fCBmID09PSAncG5nJyB8fCBmID09PSAnZ2lmJyA/IHRydWUgOiBmYWxzZTtcbiAgICAgICAgY29uc3QgZGlzcGxheSA9IGYgPT09ICdqcGVnJyB8fCBmID09PSAnanBnJyB8fCBmID09PSAncG5nJyB8fCBmID09PSAnZ2lmJyA/IHRoaXMudXJsIDogdGhpcy5nZXRJY29uRm9yTWltZShmKTtcblxuICAgICAgICByZXR1cm4geyBpbWFnZSwgZGlzcGxheSB9O1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0SWNvbkZvck1pbWUoZmlsZUV4dGVuc2lvbjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgZiA9IGZpbGVFeHRlbnNpb24udG9Mb3dlckNhc2UoKTtcbiAgICAgICAgcmV0dXJuICF0aGlzLnByZXZpZXdBc0ljb25Db25maWdbZl0gPyAnZXVpLWljb24tZmlsZXR5cGUtdW5rbm93bicgOiB0aGlzLnByZXZpZXdBc0ljb25Db25maWdbZl07XG4gICAgfVxufVxuIiwiPGRpdiBjbGFzcz1cImZpbGUtdXBsb2FkX19wcmV2aWV3XCI+XG4gICAgPGRpdiBjbGFzcz1cImZpbGUtdXBsb2FkX19wcmV2aWV3X19pbWFnZVwiICpuZ0lmPVwiaGFzUHJldmlldyAmJiBoYXNQcmV2aWV3QXNJbWFnZVwiPlxuICAgICAgICA8aW1nIFtzcmNdPVwicHJldmlld0RhdGEuZGlzcGxheVwiICpuZ0lmPVwidXJsICYmIHByZXZpZXdEYXRhLmltYWdlXCIgLz5cbiAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICpuZ0lmPVwicHJldmlld0RhdGEgJiYgIXByZXZpZXdEYXRhLmltYWdlXCJcbiAgICAgICAgICAgIGNsYXNzPVwiZXVpLWljb24gZXVpLWljb24tY29sb3Ige3sgcHJldmlld0RhdGEuZGlzcGxheSB9fVwiXG4gICAgICAgICAgICBldWlJY29uQ29sb3JlZFxuICAgICAgICAgICAgZXVpU2l6ZTVYTD48L3NwYW4+XG4gICAgICAgIDxkaXYgKm5nSWY9XCJpc0xvYWRpbmdcIiBjbGFzcz1cImxvYWRpbmctY29hdGFpbmVyXCI+XG4gICAgICAgICAgICA8ZXVpLWljb24gZXVpU2Vjb25kYXJ5IGljb25DbGFzcz1cImV1aS1pY29uLXNwaW5uZXIgZXVpLWljb24tM3ggZXVpLWljb24tLXNwaW5cIj48L2V1aS1pY29uPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZmlsZS11cGxvYWRfX3ByZXZpZXdfX2ljb25cIiAqbmdJZj1cImhhc1ByZXZpZXcgJiYgaGFzUHJldmlld0FzSWNvblwiPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImV1aS1pY29uIGV1aS1pY29uLWNvbG9yIHt7IGljb24gfX1cIiBldWlJY29uQ29sb3JlZCBldWlTaXplNVhMPjwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZmlsZS11cGxvYWRfX3ByZXZpZXdfX2ZpbGVuYW1lXCIgKm5nSWY9XCJpc0ZpbGVuYW1lRGlzcGxheWVkXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCIhaXNJdGVtc0NsaWNrYWJsZVwiPlxuICAgICAgICAgICAge3sgZmlsZS5uYW1lIH19XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNJdGVtc0NsaWNrYWJsZVwiPlxuICAgICAgICAgICAgPGEgaHJlZj1cIiNcIiAoY2xpY2spPVwib25JdGVtQ2xpY2soJGV2ZW50KVwiPnt7IGZpbGUubmFtZSB9fTwvYT5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZpbGUtdXBsb2FkX19wcmV2aWV3X19maWxlc2l6ZVwiICpuZ0lmPVwiaXNGaWxlc2l6ZURpc3BsYXllZFwiPnt7IGZpbGUuc2l6ZSB8IGZpbGVzaXplIH19PC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImZpbGUtdXBsb2FkX19wcmV2aWV3X19maWxldHlwZVwiICpuZ0lmPVwiaXNGaWxldHlwZURpc3BsYXllZFwiPnt7IGZpbGUudHlwZSB9fTwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJmaWxlLXVwbG9hZF9fcHJldmlld19fYWN0aW9uc1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZmlsZS11cGxvYWRfX3ByZXZpZXdfX2FjdGlvbnMtY29udGFpbmVyXCI+XG4gICAgICAgICAgICA8YnV0dG9uIGV1aUJ1dHRvbiBldWlQcmltYXJ5IGV1aVJvdW5kZWQgZXVpSWNvbkJ1dHRvbiBldWlTaXplTCBldWlCYXNpY0J1dHRvbiB0eXBlPVwiYnV0dG9uXCIgKGNsaWNrKT1cIm9uUmVtb3ZlRnJvbUxpc3QoKVwiPlxuICAgICAgICAgICAgICAgIDxldWktaWNvbi1zdmcgaWNvbj1cImV1aS1jbG9zZVwiPjwvZXVpLWljb24tc3ZnPlxuICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvZGl2PlxuPC9kaXY+XG4iXX0=