@fundamental-ngx/core 0.40.4-rc.6 → 0.40.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 (814) hide show
  1. package/esm2020/action-bar/action-bar-actions/action-bar-actions.directive.mjs +3 -3
  2. package/esm2020/action-bar/action-bar-back/action-bar-back.directive.mjs +3 -3
  3. package/esm2020/action-bar/action-bar-description/action-bar-description.directive.mjs +3 -3
  4. package/esm2020/action-bar/action-bar-header/action-bar-header.directive.mjs +3 -3
  5. package/esm2020/action-bar/action-bar-mobile/action-bar-mobile.directive.mjs +3 -3
  6. package/esm2020/action-bar/action-bar-title/action-bar-title.component.mjs +3 -3
  7. package/esm2020/action-bar/action-bar.component.mjs +3 -3
  8. package/esm2020/action-bar/action-bar.module.mjs +4 -4
  9. package/esm2020/action-sheet/action-sheet-body/action-sheet-body.component.mjs +3 -3
  10. package/esm2020/action-sheet/action-sheet-control/action-sheet-control.component.mjs +3 -3
  11. package/esm2020/action-sheet/action-sheet-item/action-sheet-item.component.mjs +3 -3
  12. package/esm2020/action-sheet/action-sheet-mobile/action-sheet-mobile.component.mjs +3 -3
  13. package/esm2020/action-sheet/action-sheet-mobile/action-sheet-mobile.module.mjs +4 -4
  14. package/esm2020/action-sheet/action-sheet.component.mjs +3 -3
  15. package/esm2020/action-sheet/action-sheet.module.mjs +4 -4
  16. package/esm2020/action-sheet/deprecated-action-sheet-compact.directive.mjs +3 -3
  17. package/esm2020/alert/alert-service/alert.service.mjs +3 -3
  18. package/esm2020/alert/alert-utils/alert-container.component.mjs +3 -3
  19. package/esm2020/alert/alert.component.mjs +3 -3
  20. package/esm2020/alert/alert.module.mjs +4 -4
  21. package/esm2020/avatar/avatar.component.mjs +3 -3
  22. package/esm2020/avatar/avatar.module.mjs +4 -4
  23. package/esm2020/avatar-group/avatar-group.component.mjs +3 -3
  24. package/esm2020/avatar-group/avatar-group.module.mjs +4 -4
  25. package/esm2020/avatar-group/directives/avatar-group-focusable-avatar.directive.mjs +3 -3
  26. package/esm2020/avatar-group/directives/avatar-group-item.directive.mjs +3 -3
  27. package/esm2020/avatar-group/directives/avatar-group-overflow-body.directive.mjs +3 -3
  28. package/esm2020/avatar-group/directives/avatar-group-overflow-button-text.directive.mjs +3 -3
  29. package/esm2020/avatar-group/directives/avatar-group-overflow-button.directive.mjs +3 -3
  30. package/esm2020/avatar-group/directives/avatar-group-overflow-item.directive.mjs +3 -3
  31. package/esm2020/avatar-group/directives/avatar-group-popover-control.directive.mjs +3 -3
  32. package/esm2020/bar/bar.component.mjs +3 -3
  33. package/esm2020/bar/bar.module.mjs +4 -4
  34. package/esm2020/bar/button-bar/button-bar.component.mjs +3 -3
  35. package/esm2020/bar/deprecated-bar-button-content-density.directive.mjs +3 -3
  36. package/esm2020/bar/deprecated-bar-content-density.directive.mjs +3 -3
  37. package/esm2020/bar/directives/bar-element.directive.mjs +3 -3
  38. package/esm2020/bar/directives/bar-left.directive.mjs +3 -3
  39. package/esm2020/bar/directives/bar-middle.directive.mjs +3 -3
  40. package/esm2020/bar/directives/bar-right.directive.mjs +3 -3
  41. package/esm2020/breadcrumb/breadcrumb-item.component.mjs +3 -3
  42. package/esm2020/breadcrumb/breadcrumb.component.mjs +3 -3
  43. package/esm2020/breadcrumb/breadcrumb.module.mjs +4 -4
  44. package/esm2020/breadcrumb/deprecated-breadcrumbs-compact.directive.mjs +3 -3
  45. package/esm2020/busy-indicator/busy-indicator-extended/busy-indicator-extended.directive.mjs +3 -3
  46. package/esm2020/busy-indicator/busy-indicator.component.mjs +3 -3
  47. package/esm2020/busy-indicator/busy-indicator.module.mjs +4 -4
  48. package/esm2020/button/base-button.mjs +3 -3
  49. package/esm2020/button/button.component.mjs +3 -3
  50. package/esm2020/button/button.module.mjs +4 -4
  51. package/esm2020/button/deprecated-button-content-density.directive.mjs +3 -3
  52. package/esm2020/calendar/calendar-directives.mjs +3 -3
  53. package/esm2020/calendar/calendar-header/calendar-header.component.mjs +3 -3
  54. package/esm2020/calendar/calendar-views/calendar-aggregated-year-view/calendar-aggregated-year-view.component.mjs +3 -3
  55. package/esm2020/calendar/calendar-views/calendar-day-view/calendar-day-view.component.mjs +3 -3
  56. package/esm2020/calendar/calendar-views/calendar-month-view/calendar-month-view.component.mjs +3 -3
  57. package/esm2020/calendar/calendar-views/calendar-year-view/calendar-year-view.component.mjs +3 -3
  58. package/esm2020/calendar/calendar.component.mjs +3 -3
  59. package/esm2020/calendar/calendar.module.mjs +4 -4
  60. package/esm2020/calendar/calendar.service.mjs +3 -3
  61. package/esm2020/calendar/deprecated-calendar-content-density.directive.mjs +3 -3
  62. package/esm2020/calendar/i18n/calendar-i18n-labels.mjs +3 -3
  63. package/esm2020/card/card-content.component.mjs +3 -3
  64. package/esm2020/card/card-counter.directive.mjs +3 -3
  65. package/esm2020/card/card-footer-action-item.directive.mjs +3 -3
  66. package/esm2020/card/card-footer.component.mjs +3 -3
  67. package/esm2020/card/card-header.component.mjs +3 -3
  68. package/esm2020/card/card-loader.component.mjs +3 -3
  69. package/esm2020/card/card-second-subtitle.directive.mjs +3 -3
  70. package/esm2020/card/card-subtitle.directive.mjs +3 -3
  71. package/esm2020/card/card-title.directive.mjs +3 -3
  72. package/esm2020/card/card.component.mjs +3 -3
  73. package/esm2020/card/card.module.mjs +4 -4
  74. package/esm2020/card/deprecated-card-content-density.directive.mjs +3 -3
  75. package/esm2020/card/kpi/card-kpi-analytics-content.directive.mjs +3 -3
  76. package/esm2020/card/kpi/card-kpi-analytics-label.directive.mjs +3 -3
  77. package/esm2020/card/kpi/card-kpi-analytics.directive.mjs +3 -3
  78. package/esm2020/card/kpi/card-kpi-header.component.mjs +3 -3
  79. package/esm2020/card/kpi/card-kpi-scale-icon.directive.mjs +3 -3
  80. package/esm2020/card/kpi/card-kpi-scale-text.directive.mjs +3 -3
  81. package/esm2020/card/kpi/card-kpi-value.directive.mjs +3 -3
  82. package/esm2020/carousel/carousel-item/carousel-item.component.mjs +3 -3
  83. package/esm2020/carousel/carousel-item.directive.mjs +3 -3
  84. package/esm2020/carousel/carousel.component.mjs +3 -3
  85. package/esm2020/carousel/carousel.directive.mjs +3 -3
  86. package/esm2020/carousel/carousel.module.mjs +4 -4
  87. package/esm2020/carousel/carousel.service.mjs +3 -3
  88. package/esm2020/checkbox/checkbox/checkbox.component.mjs +3 -3
  89. package/esm2020/checkbox/checkbox.module.mjs +4 -4
  90. package/esm2020/checkbox/deprecated-checkbox-content-density.directive.mjs +3 -3
  91. package/esm2020/combobox/combobox-mobile/combobox-mobile.component.mjs +3 -3
  92. package/esm2020/combobox/combobox-mobile/combobox-mobile.module.mjs +4 -4
  93. package/esm2020/combobox/combobox.component.mjs +3 -3
  94. package/esm2020/combobox/combobox.module.mjs +4 -4
  95. package/esm2020/combobox/deprecated-combobox-content-density.directive.mjs +3 -3
  96. package/esm2020/combobox/list-group.pipe.mjs +3 -3
  97. package/esm2020/content-density/classes/deprecated-compact.directive.mjs +3 -3
  98. package/esm2020/content-density/classes/deprecated-condensed.directive.mjs +3 -3
  99. package/esm2020/content-density/classes/deprecated-content-density.directive.mjs +3 -3
  100. package/esm2020/content-density/classes/deprecated-cozy.directive.mjs +3 -3
  101. package/esm2020/content-density/content-density.module.mjs +4 -4
  102. package/esm2020/content-density/directives/content-density.directive.mjs +3 -3
  103. package/esm2020/content-density/providers/local-content-density-storage.mjs +3 -3
  104. package/esm2020/content-density/providers/memory-content-density-storage.mjs +3 -3
  105. package/esm2020/content-density/providers/url-content-density-storage.mjs +3 -3
  106. package/esm2020/content-density/services/content-density-observer.service.mjs +3 -3
  107. package/esm2020/content-density/services/deprecated-content-density.service.mjs +3 -3
  108. package/esm2020/content-density/services/global-content-density.service.mjs +3 -3
  109. package/esm2020/date-picker/date-picker.component.mjs +3 -3
  110. package/esm2020/date-picker/date-picker.module.mjs +4 -4
  111. package/esm2020/date-picker/deprecated-date-picker-compact.directive.mjs +3 -3
  112. package/esm2020/datetime/datetime-format.pipes.mjs +9 -9
  113. package/esm2020/datetime/fd-datetime-adapter.mjs +3 -3
  114. package/esm2020/datetime/fd-datetime-pipes.module.mjs +4 -4
  115. package/esm2020/datetime/fd-datetime.module.mjs +8 -8
  116. package/esm2020/datetime-picker/datetime-picker.component.mjs +3 -3
  117. package/esm2020/datetime-picker/datetime-picker.module.mjs +4 -4
  118. package/esm2020/datetime-picker/deprecated-date-time-picker-content-density.directive.mjs +3 -3
  119. package/esm2020/dialog/base/dialog-base.class.mjs +3 -3
  120. package/esm2020/dialog/base/dialog-base.service.mjs +3 -3
  121. package/esm2020/dialog/base/dialog-footer-base.class.mjs +3 -3
  122. package/esm2020/dialog/base/dialog-header-base.class.mjs +3 -3
  123. package/esm2020/dialog/dialog-body/dialog-body.component.mjs +3 -3
  124. package/esm2020/dialog/dialog-close-button/dialog-close-button.component.mjs +3 -3
  125. package/esm2020/dialog/dialog-container/dialog-container.component.mjs +3 -3
  126. package/esm2020/dialog/dialog-default/dialog-default.component.mjs +3 -3
  127. package/esm2020/dialog/dialog-footer/dialog-footer.component.mjs +3 -3
  128. package/esm2020/dialog/dialog-footer-button/dialog-footer-button.component.mjs +3 -3
  129. package/esm2020/dialog/dialog-header/dialog-header.component.mjs +3 -3
  130. package/esm2020/dialog/dialog-service/dialog.service.mjs +3 -3
  131. package/esm2020/dialog/dialog.component.mjs +3 -3
  132. package/esm2020/dialog/dialog.module.mjs +4 -4
  133. package/esm2020/dialog/directives/dialog-decisive-button.directive.mjs +3 -3
  134. package/esm2020/dialog/directives/dialog-title.directive.mjs +3 -3
  135. package/esm2020/dialog/utils/dialog-config.class.mjs +3 -3
  136. package/esm2020/dialog/utils/dialog-overlay.container.mjs +3 -3
  137. package/esm2020/dialog/utils/dialog-ref.class.mjs +3 -3
  138. package/esm2020/dynamic-page/deprecated-dynamic-page-compact.directive.mjs +3 -3
  139. package/esm2020/dynamic-page/dynamic-page-content/dynamic-page-content.component.mjs +3 -3
  140. package/esm2020/dynamic-page/dynamic-page-footer/dynamic-page-footer.component.mjs +3 -3
  141. package/esm2020/dynamic-page/dynamic-page-header/actions/dynamic-page-base-actions.mjs +3 -3
  142. package/esm2020/dynamic-page/dynamic-page-header/actions/dynamic-page-global-actions.component.mjs +3 -3
  143. package/esm2020/dynamic-page/dynamic-page-header/actions/dynamic-page-layout-actions.component.mjs +3 -3
  144. package/esm2020/dynamic-page/dynamic-page-header/actions/dynamic-page-title-content.component.mjs +4 -4
  145. package/esm2020/dynamic-page/dynamic-page-header/header/dynamic-page-header.component.mjs +3 -3
  146. package/esm2020/dynamic-page/dynamic-page-header/subheader/dynamic-page-subheader.component.mjs +3 -3
  147. package/esm2020/dynamic-page/dynamic-page-wrapper.directive.mjs +3 -3
  148. package/esm2020/dynamic-page/dynamic-page.component.mjs +3 -3
  149. package/esm2020/dynamic-page/dynamic-page.config.mjs +3 -3
  150. package/esm2020/dynamic-page/dynamic-page.module.mjs +4 -4
  151. package/esm2020/dynamic-page/dynamic-page.service.mjs +3 -3
  152. package/esm2020/dynamic-side-content/dynamic-side-content-main.component.mjs +3 -3
  153. package/esm2020/dynamic-side-content/dynamic-side-content-side.component.mjs +3 -3
  154. package/esm2020/dynamic-side-content/dynamic-side-content.component.mjs +3 -3
  155. package/esm2020/dynamic-side-content/dynamic-side-content.module.mjs +4 -4
  156. package/esm2020/facets/content/facet-content.component.mjs +3 -3
  157. package/esm2020/facets/facet/facet.component.mjs +3 -3
  158. package/esm2020/facets/facet-group.component.mjs +3 -3
  159. package/esm2020/facets/facet.module.mjs +4 -4
  160. package/esm2020/feed-input/directives/feed-input-avatar.directive.mjs +3 -3
  161. package/esm2020/feed-input/directives/feed-input-button.directive.mjs +3 -3
  162. package/esm2020/feed-input/directives/feed-input-textarea.directive.mjs +3 -3
  163. package/esm2020/feed-input/feed-input.component.mjs +3 -3
  164. package/esm2020/feed-input/feed-input.module.mjs +4 -4
  165. package/esm2020/feed-list-item/components/feed-list-action/feed-list-action.component.mjs +3 -3
  166. package/esm2020/feed-list-item/components/feed-list-avatar/feed-list-avatar.component.mjs +3 -3
  167. package/esm2020/feed-list-item/components/feed-list-footer/feed-list-footer.component.mjs +3 -3
  168. package/esm2020/feed-list-item/components/item/feed-list-item.component.mjs +3 -3
  169. package/esm2020/feed-list-item/components/list/feed-list.component.mjs +3 -3
  170. package/esm2020/feed-list-item/directives/byline.directive.mjs +3 -3
  171. package/esm2020/feed-list-item/feed-list-item.module.mjs +4 -4
  172. package/esm2020/file-uploader/deprecated-file-uploader-content-density.directive.mjs +3 -3
  173. package/esm2020/file-uploader/directives/file-uploader-dragndrop.directive.mjs +3 -3
  174. package/esm2020/file-uploader/directives/file-uploader-select.directive.mjs +3 -3
  175. package/esm2020/file-uploader/file-uploader.component.mjs +3 -3
  176. package/esm2020/file-uploader/file-uploader.module.mjs +4 -4
  177. package/esm2020/file-uploader/file-uploader.service.mjs +3 -3
  178. package/esm2020/fixed-card-layout/fixed-card-layout-item/fixed-card-layout-item.component.mjs +3 -3
  179. package/esm2020/fixed-card-layout/fixed-card-layout.component.mjs +6 -6
  180. package/esm2020/fixed-card-layout/fixed-card-layout.module.mjs +4 -4
  181. package/esm2020/flexible-column-layout/flexible-column-layout.component.mjs +3 -3
  182. package/esm2020/flexible-column-layout/flexible-column-layout.module.mjs +4 -4
  183. package/esm2020/form/fieldset/fieldset.component.mjs +3 -3
  184. package/esm2020/form/fieldset/fieldset.module.mjs +4 -4
  185. package/esm2020/form/form-control/deprecated-form-control-content-density.directive.mjs +3 -3
  186. package/esm2020/form/form-control/form-control.component.mjs +3 -3
  187. package/esm2020/form/form-control/form-control.module.mjs +4 -4
  188. package/esm2020/form/form-control/input-form-control.directive.mjs +3 -3
  189. package/esm2020/form/form-control/textarea-form-control.directive.mjs +3 -3
  190. package/esm2020/form/form-group/form-group.component.mjs +3 -3
  191. package/esm2020/form/form-group/form-group.module.mjs +4 -4
  192. package/esm2020/form/form-header/form-header.component.mjs +3 -3
  193. package/esm2020/form/form-header/form-header.module.mjs +4 -4
  194. package/esm2020/form/form-input-message-group/form-input-message-group.component.mjs +3 -3
  195. package/esm2020/form/form-input-message-group/form-input-message-group.module.mjs +4 -4
  196. package/esm2020/form/form-item/form-item.component.mjs +3 -3
  197. package/esm2020/form/form-item/form-item.module.mjs +4 -4
  198. package/esm2020/form/form-label/form-label.component.mjs +3 -3
  199. package/esm2020/form/form-label/form-label.module.mjs +4 -4
  200. package/esm2020/form/form-legend/form-legend.directive.mjs +3 -3
  201. package/esm2020/form/form-legend/form-legend.module.mjs +4 -4
  202. package/esm2020/form/form-message/form-message.component.mjs +3 -3
  203. package/esm2020/form/form-message/form-message.module.mjs +4 -4
  204. package/esm2020/form/form-message/popover-form-message.service.mjs +3 -3
  205. package/esm2020/form/form.module.mjs +4 -4
  206. package/esm2020/formatted-text/formatted-text.component.mjs +3 -3
  207. package/esm2020/formatted-text/formatted-text.module.mjs +4 -4
  208. package/esm2020/fundamental-ngx.module.mjs +4 -4
  209. package/esm2020/grid-list/components/grid-list/grid-list-base.component.mjs +3 -3
  210. package/esm2020/grid-list/components/grid-list/grid-list.component.mjs +3 -3
  211. package/esm2020/grid-list/components/grid-list-filter-bar/grid-list-filter-bar.component.mjs +3 -3
  212. package/esm2020/grid-list/components/grid-list-footer/grid-list-footer.component.mjs +3 -3
  213. package/esm2020/grid-list/components/grid-list-group-header/grid-list-group-header.component.mjs +3 -3
  214. package/esm2020/grid-list/components/grid-list-item/grid-list-item.component.mjs +3 -3
  215. package/esm2020/grid-list/components/grid-list-item-footer-bar/grid-list-item-footer-bar.component.mjs +3 -3
  216. package/esm2020/grid-list/components/grid-list-item-toolbar/grid-list-item-toolbar.component.mjs +3 -3
  217. package/esm2020/grid-list/components/grid-list-more-btn/grid-list-more-btn.component.mjs +3 -3
  218. package/esm2020/grid-list/components/grid-list-title-bar/grid-list-title-bar.component.mjs +3 -3
  219. package/esm2020/grid-list/components/grid-list-title-bar/grid-list-title-bar.directive.mjs +3 -3
  220. package/esm2020/grid-list/components/grid-list-title-bar-spacer/grid-list-title-bar-spacer.component.mjs +6 -6
  221. package/esm2020/grid-list/directives/grid-list-item-body.directive.mjs +3 -3
  222. package/esm2020/grid-list/directives/grid-list-item-image.directive.mjs +3 -3
  223. package/esm2020/grid-list/grid-list.module.mjs +4 -4
  224. package/esm2020/icon/icon.component.mjs +3 -3
  225. package/esm2020/icon/icon.module.mjs +4 -4
  226. package/esm2020/illustrated-message/components/illustrated-message-actions/illustrated-message-actions.component.mjs +3 -3
  227. package/esm2020/illustrated-message/components/illustrated-message-figcaption/illustrated-message-figcaption.component.mjs +3 -3
  228. package/esm2020/illustrated-message/directives/illustrated-message-text/illustrated-message-text.directive.mjs +3 -3
  229. package/esm2020/illustrated-message/directives/illustrated-message-title/illustrated-message-title.directive.mjs +3 -3
  230. package/esm2020/illustrated-message/illustrated-message.component.mjs +3 -3
  231. package/esm2020/illustrated-message/illustrated-message.module.mjs +4 -4
  232. package/esm2020/infinite-scroll/infinite-scroll.directive.mjs +3 -3
  233. package/esm2020/infinite-scroll/infinite-scroll.module.mjs +4 -4
  234. package/esm2020/info-label/info-label.component.mjs +3 -3
  235. package/esm2020/info-label/info-label.module.mjs +4 -4
  236. package/esm2020/inline-help/inline-help.directive.mjs +4 -11
  237. package/esm2020/inline-help/inline-help.module.mjs +4 -4
  238. package/esm2020/input-group/deprecated-input-group-compact.directive.mjs +3 -3
  239. package/esm2020/input-group/input-group-directives.mjs +12 -12
  240. package/esm2020/input-group/input-group.component.mjs +3 -3
  241. package/esm2020/input-group/input-group.module.mjs +4 -4
  242. package/esm2020/layout-grid/directives/layout-grid-col.directive.mjs +3 -3
  243. package/esm2020/layout-grid/directives/layout-grid-row.directive.mjs +3 -3
  244. package/esm2020/layout-grid/layout-grid.component.mjs +3 -3
  245. package/esm2020/layout-grid/layout-grid.module.mjs +4 -4
  246. package/esm2020/layout-panel/layout-panel-actions/layout-panel-actions.component.mjs +3 -3
  247. package/esm2020/layout-panel/layout-panel-body/layout-panel-body.component.mjs +3 -3
  248. package/esm2020/layout-panel/layout-panel-description/layout-panel-description.component.mjs +3 -3
  249. package/esm2020/layout-panel/layout-panel-filters/layout-panel-filters.component.mjs +3 -3
  250. package/esm2020/layout-panel/layout-panel-footer/layout-panel-footer.component.mjs +3 -3
  251. package/esm2020/layout-panel/layout-panel-head/layout-panel-head.component.mjs +3 -3
  252. package/esm2020/layout-panel/layout-panel-header/layout-panel-header.component.mjs +3 -3
  253. package/esm2020/layout-panel/layout-panel-title/layout-panel-title.directive.mjs +3 -3
  254. package/esm2020/layout-panel/layout-panel.component.mjs +3 -3
  255. package/esm2020/layout-panel/layout-panel.module.mjs +4 -4
  256. package/esm2020/link/link.component.mjs +3 -3
  257. package/esm2020/link/link.module.mjs +4 -4
  258. package/esm2020/list/deprecated-list-content-density,directive.mjs +3 -3
  259. package/esm2020/list/directives/byline/list-byline-left.directive.mjs +3 -3
  260. package/esm2020/list/directives/byline/list-byline-right.directive.mjs +3 -3
  261. package/esm2020/list/directives/byline/list-byline.directive.mjs +3 -3
  262. package/esm2020/list/directives/byline/list-content.directive.mjs +3 -3
  263. package/esm2020/list/directives/byline/list-thumbnail.directive.mjs +3 -3
  264. package/esm2020/list/directives/list-footer.directive.mjs +3 -3
  265. package/esm2020/list/directives/list-group-header.directive.mjs +3 -3
  266. package/esm2020/list/directives/list-icon.directive.mjs +3 -3
  267. package/esm2020/list/directives/list-link.directive.mjs +3 -3
  268. package/esm2020/list/directives/list-navigation-item-arrow.directive.mjs +7 -13
  269. package/esm2020/list/directives/list-navigation-item-text.directive.mjs +3 -3
  270. package/esm2020/list/directives/list-secondary.directive.mjs +3 -3
  271. package/esm2020/list/directives/list-title-text.directive.mjs +3 -3
  272. package/esm2020/list/directives/list-title.directive.mjs +3 -3
  273. package/esm2020/list/list-focus-item.model.mjs +3 -3
  274. package/esm2020/list/list-item/list-item.component.mjs +3 -3
  275. package/esm2020/list/list-message.directive.mjs +3 -3
  276. package/esm2020/list/list-navigation-item/list-navigation-item.component.mjs +5 -10
  277. package/esm2020/list/list.component.mjs +3 -3
  278. package/esm2020/list/list.module.mjs +4 -4
  279. package/esm2020/menu/directives/deprecated-menu-compact.directive.mjs +3 -3
  280. package/esm2020/menu/directives/menu-addon.directive.mjs +3 -3
  281. package/esm2020/menu/directives/menu-interactive.directive.mjs +3 -3
  282. package/esm2020/menu/directives/menu-shortcut.directive.mjs +3 -3
  283. package/esm2020/menu/directives/menu-title.directive.mjs +3 -3
  284. package/esm2020/menu/directives/menu-trigger.directive.mjs +3 -3
  285. package/esm2020/menu/menu-item/menu-item.component.mjs +6 -6
  286. package/esm2020/menu/menu-keyboard.service.mjs +3 -3
  287. package/esm2020/menu/menu-mobile/menu-mobile.component.mjs +3 -3
  288. package/esm2020/menu/menu-mobile/menu-mobile.module.mjs +4 -4
  289. package/esm2020/menu/menu-separator/menu-separator.component.mjs +3 -3
  290. package/esm2020/menu/menu.component.mjs +3 -3
  291. package/esm2020/menu/menu.module.mjs +4 -4
  292. package/esm2020/menu/services/menu.service.mjs +3 -3
  293. package/esm2020/message-box/directives/message-box-decisive-button.directive.mjs +3 -3
  294. package/esm2020/message-box/message-box-body/message-box-body.component.mjs +3 -3
  295. package/esm2020/message-box/message-box-container/message-box-container.component.mjs +3 -3
  296. package/esm2020/message-box/message-box-default/message-box-default.component.mjs +3 -3
  297. package/esm2020/message-box/message-box-footer/message-box-footer.component.mjs +3 -3
  298. package/esm2020/message-box/message-box-footer-button/message-box-footer-button.component.mjs +3 -3
  299. package/esm2020/message-box/message-box-header/message-box-header.component.mjs +3 -3
  300. package/esm2020/message-box/message-box-semantic-icon/message-box-semantic-icon.component.mjs +3 -3
  301. package/esm2020/message-box/message-box.component.mjs +3 -3
  302. package/esm2020/message-box/message-box.module.mjs +4 -4
  303. package/esm2020/message-box/services/message-box.service.mjs +3 -3
  304. package/esm2020/message-box/utils/message-box-config.class.mjs +3 -3
  305. package/esm2020/message-box/utils/message-box-ref.class.mjs +3 -3
  306. package/esm2020/message-page/message-page-actions/message-page-actions.component.mjs +3 -3
  307. package/esm2020/message-page/message-page-more/message-page-more.component.mjs +3 -3
  308. package/esm2020/message-page/message-page-subtitle/message-page-subtitle.component.mjs +3 -3
  309. package/esm2020/message-page/message-page-title/message-page-title.component.mjs +3 -3
  310. package/esm2020/message-page/message-page.component.mjs +3 -3
  311. package/esm2020/message-page/message-page.module.mjs +4 -4
  312. package/esm2020/message-strip/message-strip.component.mjs +3 -3
  313. package/esm2020/message-strip/message-strip.module.mjs +4 -4
  314. package/esm2020/message-toast/message-toast-service/message-toast.service.mjs +3 -3
  315. package/esm2020/message-toast/message-toast-utils/message-toast-container.component.mjs +3 -3
  316. package/esm2020/message-toast/message-toast.component.mjs +3 -3
  317. package/esm2020/message-toast/message-toast.module.mjs +4 -4
  318. package/esm2020/micro-process-flow/components/micro-process-flow/deprecated-micro-process-flow-content-density.directive.mjs +3 -3
  319. package/esm2020/micro-process-flow/components/micro-process-flow/micro-process-flow.component.mjs +3 -3
  320. package/esm2020/micro-process-flow/components/micro-process-flow-icon/micro-process-flow-icon.component.mjs +3 -3
  321. package/esm2020/micro-process-flow/components/micro-process-flow-item/micro-process-flow-item.component.mjs +3 -3
  322. package/esm2020/micro-process-flow/micro-process-flow-focusable-item.directive.mjs +3 -3
  323. package/esm2020/micro-process-flow/micro-process-flow-intermediary-item.directive.mjs +3 -3
  324. package/esm2020/micro-process-flow/micro-process-flow.module.mjs +4 -4
  325. package/esm2020/multi-combobox/base-multi-combobox.class.mjs +3 -3
  326. package/esm2020/multi-combobox/mobile/mobile-multi-combobox.component.mjs +3 -3
  327. package/esm2020/multi-combobox/mobile/mobile-multi-combobox.module.mjs +4 -4
  328. package/esm2020/multi-combobox/multi-combobox-config.mjs +3 -3
  329. package/esm2020/multi-combobox/multi-combobox.component.mjs +6 -11
  330. package/esm2020/multi-combobox/multi-combobox.module.mjs +4 -4
  331. package/esm2020/multi-input/deprecated-multi-input-compact.directive.mjs +3 -3
  332. package/esm2020/multi-input/multi-input-mobile/multi-input-mobile.component.mjs +3 -3
  333. package/esm2020/multi-input/multi-input-mobile/multi-input-mobile.module.mjs +4 -4
  334. package/esm2020/multi-input/multi-input.component.mjs +3 -3
  335. package/esm2020/multi-input/multi-input.module.mjs +4 -4
  336. package/esm2020/nested-list/deprecated-nested-list-compact.directive.mjs +3 -3
  337. package/esm2020/nested-list/nested-content/nested-list-content.directive.mjs +3 -3
  338. package/esm2020/nested-list/nested-item/nested-item.directive.mjs +3 -3
  339. package/esm2020/nested-list/nested-link/nested-link.directive.mjs +3 -3
  340. package/esm2020/nested-list/nested-list/nested-list.directive.mjs +3 -3
  341. package/esm2020/nested-list/nested-list-directives.mjs +12 -12
  342. package/esm2020/nested-list/nested-list-keyboard.service.mjs +3 -3
  343. package/esm2020/nested-list/nested-list-popover/nested-list-popover.component.mjs +3 -3
  344. package/esm2020/nested-list/nested-list-state.service.mjs +3 -3
  345. package/esm2020/nested-list/nested-list.module.mjs +4 -4
  346. package/esm2020/nested-list/prepared-nested-list/prepared-nested-list.component.mjs +3 -3
  347. package/esm2020/notification/directives/notification-footer-content.directive.mjs +3 -3
  348. package/esm2020/notification/directives/notification-indicator.directive.mjs +3 -3
  349. package/esm2020/notification/directives/notification-limit-description.directive.mjs +3 -3
  350. package/esm2020/notification/directives/notification-limit-title.directive.mjs +3 -3
  351. package/esm2020/notification/directives/notification-paragraph.directive.mjs +3 -3
  352. package/esm2020/notification/directives/notification-separator.directive.mjs +3 -3
  353. package/esm2020/notification/directives/notification-title.directive.mjs +3 -3
  354. package/esm2020/notification/notification/notification.component.mjs +3 -3
  355. package/esm2020/notification/notification-actions/notification-actions.component.mjs +3 -3
  356. package/esm2020/notification/notification-body/notification-body.component.mjs +3 -3
  357. package/esm2020/notification/notification-content/notification-content.component.mjs +3 -3
  358. package/esm2020/notification/notification-footer/notification-footer.component.mjs +3 -3
  359. package/esm2020/notification/notification-group/notification-group.component.mjs +3 -3
  360. package/esm2020/notification/notification-group-header/notification-group-header.component.mjs +3 -3
  361. package/esm2020/notification/notification-group-list/notification-group-list.component.mjs +3 -3
  362. package/esm2020/notification/notification-header/notification-header.component.mjs +3 -3
  363. package/esm2020/notification/notification-limit/notification-limit.component.mjs +3 -3
  364. package/esm2020/notification/notification-service/notification.service.mjs +3 -3
  365. package/esm2020/notification/notification-utils/notification-container.mjs +3 -3
  366. package/esm2020/notification/notification-utils/notification-group-base.mjs +3 -3
  367. package/esm2020/notification/notification.module.mjs +4 -4
  368. package/esm2020/object-identifier/object-identifier.component.mjs +3 -3
  369. package/esm2020/object-identifier/object-identifier.module.mjs +4 -4
  370. package/esm2020/object-marker/object-marker.component.mjs +3 -3
  371. package/esm2020/object-marker/object-marker.module.mjs +4 -4
  372. package/esm2020/object-number/object-number.component.mjs +3 -3
  373. package/esm2020/object-number/object-number.module.mjs +4 -4
  374. package/esm2020/object-status/object-status.component.mjs +3 -3
  375. package/esm2020/object-status/object-status.module.mjs +4 -4
  376. package/esm2020/overflow-layout/directives/overflow-expand.directive.mjs +3 -3
  377. package/esm2020/overflow-layout/directives/overflow-item-container-ref.directive.mjs +3 -3
  378. package/esm2020/overflow-layout/directives/overflow-item-ref.directive.mjs +3 -3
  379. package/esm2020/overflow-layout/directives/overflow-layout-focusable-item.directive.mjs +3 -3
  380. package/esm2020/overflow-layout/directives/overflow-layout-item-container.directive.mjs +3 -3
  381. package/esm2020/overflow-layout/directives/overflow-layout-item.directive.mjs +3 -3
  382. package/esm2020/overflow-layout/directives/overflow-layout-popover-content.directive.mjs +3 -3
  383. package/esm2020/overflow-layout/overflow-layout.component.mjs +3 -3
  384. package/esm2020/overflow-layout/overflow-layout.module.mjs +4 -4
  385. package/esm2020/overflow-layout/overflow-layout.service.mjs +22 -18
  386. package/esm2020/pagination/deprecated-pagination-compact.directive.mjs +3 -3
  387. package/esm2020/pagination/pagination.component.mjs +3 -3
  388. package/esm2020/pagination/pagination.module.mjs +4 -4
  389. package/esm2020/pagination/pagination.service.mjs +3 -3
  390. package/esm2020/panel/deprecated-panel-compact.directive.mjs +3 -3
  391. package/esm2020/panel/panel-content/panel-content.directive.mjs +3 -3
  392. package/esm2020/panel/panel-title/panel-title.directive.mjs +3 -3
  393. package/esm2020/panel/panel.component.mjs +3 -3
  394. package/esm2020/panel/panel.module.mjs +4 -4
  395. package/esm2020/popover/base/base-popover.class.mjs +4 -8
  396. package/esm2020/popover/popover-body/popover-body-directives/popover-body-footer.directive.mjs +3 -3
  397. package/esm2020/popover/popover-body/popover-body-directives/popover-body-header.directive.mjs +3 -3
  398. package/esm2020/popover/popover-body/popover-body.component.mjs +5 -9
  399. package/esm2020/popover/popover-container/popover-container.directive.mjs +3 -3
  400. package/esm2020/popover/popover-control/popover-control.component.mjs +3 -3
  401. package/esm2020/popover/popover-mobile/popover-mobile.component.mjs +3 -3
  402. package/esm2020/popover/popover-mobile/popover-mobile.module.mjs +4 -4
  403. package/esm2020/popover/popover-service/popover.service.mjs +4 -6
  404. package/esm2020/popover/popover-trigger.directive.mjs +3 -3
  405. package/esm2020/popover/popover.component.mjs +3 -3
  406. package/esm2020/popover/popover.module.mjs +4 -4
  407. package/esm2020/product-switch/product-switch/product-switch.component.mjs +3 -3
  408. package/esm2020/product-switch/product-switch-body/product-switch-body.component.mjs +3 -3
  409. package/esm2020/product-switch/product-switch.module.mjs +4 -4
  410. package/esm2020/progress-indicator/progress-indicator.component.mjs +3 -3
  411. package/esm2020/progress-indicator/progress-indicator.module.mjs +4 -4
  412. package/esm2020/quick-view/quick-view/quick-view.component.mjs +3 -3
  413. package/esm2020/quick-view/quick-view-group/quick-view-group.component.mjs +3 -3
  414. package/esm2020/quick-view/quick-view-group-item/quick-view-group-item.component.mjs +3 -3
  415. package/esm2020/quick-view/quick-view-group-item-content/quick-view-group-item-content-element.directive.mjs +3 -3
  416. package/esm2020/quick-view/quick-view-group-item-content/quick-view-group-item-content.component.mjs +3 -3
  417. package/esm2020/quick-view/quick-view-group-item-label/quick-view-group-item-label.component.mjs +3 -3
  418. package/esm2020/quick-view/quick-view-group-title/quick-view-group-title.component.mjs +3 -3
  419. package/esm2020/quick-view/quick-view-subheader/quick-view-subheader.component.mjs +3 -3
  420. package/esm2020/quick-view/quick-view-subheader-subtitle/quick-view-subheader-subtitle.component.mjs +3 -3
  421. package/esm2020/quick-view/quick-view-subheader-title/quick-view-subheader-title.component.mjs +3 -3
  422. package/esm2020/quick-view/quick-view-title/quick-view-title.component.mjs +3 -3
  423. package/esm2020/quick-view/quick-view.module.mjs +4 -4
  424. package/esm2020/radio/deprecated-radio-button-compact.directive.mjs +3 -3
  425. package/esm2020/radio/radio-button/radio-button.component.mjs +3 -3
  426. package/esm2020/radio/radio.module.mjs +4 -4
  427. package/esm2020/rating-indicator/components/rating-indicator.component.mjs +3 -3
  428. package/esm2020/rating-indicator/pipes/rating-star-label.pipe.mjs +3 -3
  429. package/esm2020/rating-indicator/rating-indicator.module.mjs +4 -4
  430. package/esm2020/resizable-card-layout/resizable-card-layout/resizable-card-item/resizable-card-item.component.mjs +3 -3
  431. package/esm2020/resizable-card-layout/resizable-card-layout/resizable-card-layout.component.mjs +3 -3
  432. package/esm2020/resizable-card-layout/resizable-card-layout.module.mjs +4 -4
  433. package/esm2020/scroll-spy/scroll-spy.directive.mjs +3 -3
  434. package/esm2020/scroll-spy/scroll-spy.module.mjs +4 -4
  435. package/esm2020/scrollbar/scrollbar.directive.mjs +3 -3
  436. package/esm2020/scrollbar/scrollbar.module.mjs +4 -4
  437. package/esm2020/segmented-button/segmented-button.component.mjs +3 -3
  438. package/esm2020/segmented-button/segmented-button.module.mjs +4 -4
  439. package/esm2020/select/deprecated-select-compact.directive.mjs +3 -3
  440. package/esm2020/select/option/option.component.mjs +3 -3
  441. package/esm2020/select/select-key-manager.service.mjs +3 -3
  442. package/esm2020/select/select-mobile/select-mobile.component.mjs +3 -3
  443. package/esm2020/select/select-mobile/select-mobile.module.mjs +4 -4
  444. package/esm2020/select/select.component.mjs +6 -7
  445. package/esm2020/select/select.module.mjs +4 -4
  446. package/esm2020/shared/services/value-state-message.service.mjs +3 -3
  447. package/esm2020/shellbar/deprecated-shellbar-compact.directive.mjs +3 -3
  448. package/esm2020/shellbar/product-menu/product-menu.component.mjs +3 -3
  449. package/esm2020/shellbar/shellbar-action/shellbar-action.component.mjs +3 -3
  450. package/esm2020/shellbar/shellbar-actions/shellbar-actions.component.mjs +3 -3
  451. package/esm2020/shellbar/shellbar-actions-mobile/shellbar-actions-mobile.component.mjs +3 -3
  452. package/esm2020/shellbar/shellbar-logo/shellbar-logo.component.mjs +3 -3
  453. package/esm2020/shellbar/shellbar-sidenav.directive.mjs +3 -3
  454. package/esm2020/shellbar/shellbar-subtitle/shellbar-subtitle.component.mjs +3 -3
  455. package/esm2020/shellbar/shellbar-title/shellbar-title.component.mjs +3 -3
  456. package/esm2020/shellbar/shellbar.component.mjs +3 -3
  457. package/esm2020/shellbar/shellbar.module.mjs +4 -4
  458. package/esm2020/shellbar/user-menu/shellbar-user-menu.component.mjs +3 -3
  459. package/esm2020/side-navigation/side-navigation-main.directive.mjs +3 -3
  460. package/esm2020/side-navigation/side-navigation-utility.directive.mjs +3 -3
  461. package/esm2020/side-navigation/side-navigation.component.mjs +3 -3
  462. package/esm2020/side-navigation/side-navigation.module.mjs +4 -4
  463. package/esm2020/skeleton/components/skeleton.component.mjs +3 -3
  464. package/esm2020/skeleton/skeleton.module.mjs +4 -4
  465. package/esm2020/slider/deprecated-slider-cozy.directive.mjs +3 -3
  466. package/esm2020/slider/slider-position.directive.mjs +3 -3
  467. package/esm2020/slider/slider.component.mjs +3 -3
  468. package/esm2020/slider/slider.module.mjs +4 -4
  469. package/esm2020/split-button/deprecated-split-button-compact.directive.mjs +3 -3
  470. package/esm2020/split-button/split-button-utils/split-button.directives.mjs +3 -3
  471. package/esm2020/split-button/split-button.component.mjs +3 -3
  472. package/esm2020/split-button/split-button.module.mjs +4 -4
  473. package/esm2020/splitter/splitter-pagination/splitter-pagination.component.mjs +3 -3
  474. package/esm2020/splitter/splitter-pane-container/splitter-pane-container.component.mjs +6 -6
  475. package/esm2020/splitter/splitter-resizer/splitter-resizer.component.mjs +3 -3
  476. package/esm2020/splitter/splitter-split-pane/splitter-split-pane.component.mjs +3 -3
  477. package/esm2020/splitter/splitter.component.mjs +3 -3
  478. package/esm2020/splitter/splitter.module.mjs +4 -4
  479. package/esm2020/status-indicator/status-indicator.component.mjs +3 -3
  480. package/esm2020/status-indicator/status-indicator.module.mjs +4 -4
  481. package/esm2020/step-input/deprecated-step-input-compact.directive.mjs +3 -3
  482. package/esm2020/step-input/step-input.component.mjs +3 -3
  483. package/esm2020/step-input/step-input.module.mjs +4 -4
  484. package/esm2020/switch/deprecated-switch-compact.directive.mjs +3 -3
  485. package/esm2020/switch/switch.component.mjs +3 -3
  486. package/esm2020/switch/switch.module.mjs +4 -4
  487. package/esm2020/table/deprecated-table-compact.directive.mjs +3 -3
  488. package/esm2020/table/deprecated-table-condensed.directive.mjs +3 -3
  489. package/esm2020/table/directives/table-body.directive.mjs +3 -3
  490. package/esm2020/table/directives/table-cell.directive.mjs +3 -3
  491. package/esm2020/table/directives/table-fixed.directive.mjs +3 -3
  492. package/esm2020/table/directives/table-footer.directive.mjs +3 -3
  493. package/esm2020/table/directives/table-header.directive.mjs +3 -3
  494. package/esm2020/table/directives/table-icon.directive.mjs +3 -3
  495. package/esm2020/table/directives/table-inner.directive.mjs +3 -3
  496. package/esm2020/table/directives/table-popover.directive.mjs +3 -3
  497. package/esm2020/table/directives/table-responsive-wrapper.directive.mjs +3 -3
  498. package/esm2020/table/directives/table-row.directive.mjs +3 -3
  499. package/esm2020/table/directives/table-status-indicator.directive.mjs +3 -3
  500. package/esm2020/table/directives/table-text.directive.mjs +3 -3
  501. package/esm2020/table/table-wrapper.component.mjs +3 -3
  502. package/esm2020/table/table.component.mjs +3 -3
  503. package/esm2020/table/table.module.mjs +7 -8
  504. package/esm2020/tabs/deprecated-tabs-compact.directive.mjs +3 -3
  505. package/esm2020/tabs/tab-item/tab-item.directive.mjs +3 -3
  506. package/esm2020/tabs/tab-item-expand/tab-item-expand.component.mjs +3 -3
  507. package/esm2020/tabs/tab-link/tab-link.directive.mjs +3 -3
  508. package/esm2020/tabs/tab-list.component.mjs +3 -3
  509. package/esm2020/tabs/tab-nav/tab-nav.component.mjs +3 -3
  510. package/esm2020/tabs/tab-panel/tab-panel.component.mjs +3 -3
  511. package/esm2020/tabs/tab-utils/tab-directives.mjs +30 -30
  512. package/esm2020/tabs/tabs.module.mjs +4 -4
  513. package/esm2020/text/text.component.mjs +3 -3
  514. package/esm2020/text/text.module.mjs +4 -4
  515. package/esm2020/theming/theming.module.mjs +4 -4
  516. package/esm2020/theming/theming.service.mjs +3 -3
  517. package/esm2020/tile/directives/numeric-content.directives.mjs +27 -27
  518. package/esm2020/tile/directives/tile.directives.mjs +69 -69
  519. package/esm2020/tile/tile.component.mjs +3 -3
  520. package/esm2020/tile/tile.module.mjs +4 -4
  521. package/esm2020/time/deprecated-time-content-density.directive.mjs +3 -3
  522. package/esm2020/time/i18n/time-i18n.mjs +3 -3
  523. package/esm2020/time/time-column/time-column.component.mjs +3 -3
  524. package/esm2020/time/time.component.mjs +3 -3
  525. package/esm2020/time/time.module.mjs +4 -4
  526. package/esm2020/time-picker/deprecated-timepicker-compact.directive.mjs +3 -3
  527. package/esm2020/time-picker/time-picker.component.mjs +3 -3
  528. package/esm2020/time-picker/time-picker.module.mjs +4 -4
  529. package/esm2020/timeline/components/timeline-node/timeline-node.component.mjs +3 -3
  530. package/esm2020/timeline/components/timeline-node-body/timeline-node-body.component.mjs +3 -3
  531. package/esm2020/timeline/components/timeline-node-footer/timeline-node-footer.component.mjs +3 -3
  532. package/esm2020/timeline/components/timeline-node-header/timeline-node-header-info/timeline-node-header-info.component.mjs +3 -3
  533. package/esm2020/timeline/components/timeline-node-header/timeline-node-header.component.mjs +3 -3
  534. package/esm2020/timeline/directives/class-bindings/timeline-header-info-sub-title.directive.mjs +3 -3
  535. package/esm2020/timeline/directives/class-bindings/timeline-node-header-info-text.directive.mjs +3 -3
  536. package/esm2020/timeline/directives/class-bindings/timeline-node-header-info-title.directive.mjs +3 -3
  537. package/esm2020/timeline/directives/timeline-first-list-outlet.directive.mjs +3 -3
  538. package/esm2020/timeline/directives/timeline-node-def.directive.mjs +3 -3
  539. package/esm2020/timeline/directives/timeline-second-list-outlet.directive.mjs +3 -3
  540. package/esm2020/timeline/services/timeline-position-control.service.mjs +3 -3
  541. package/esm2020/timeline/timeline.component.mjs +3 -3
  542. package/esm2020/timeline/timeline.module.mjs +4 -4
  543. package/esm2020/title/title.component.mjs +3 -3
  544. package/esm2020/title/title.module.mjs +4 -4
  545. package/esm2020/token/deprecated-tokenizer-content-density.directive.mjs +3 -3
  546. package/esm2020/token/token-input.directive.mjs +3 -3
  547. package/esm2020/token/token.component.mjs +3 -3
  548. package/esm2020/token/token.module.mjs +4 -4
  549. package/esm2020/token/tokenizer.component.mjs +3 -3
  550. package/esm2020/toolbar/deprecated-toolbar-size.directive.mjs +3 -3
  551. package/esm2020/toolbar/public_api.mjs +4 -3
  552. package/esm2020/toolbar/toolbar-form-label.directive.mjs +3 -3
  553. package/esm2020/toolbar/toolbar-item.directive.mjs +8 -43
  554. package/esm2020/toolbar/toolbar-label.directive.mjs +3 -3
  555. package/esm2020/toolbar/toolbar-overflow-button-menu.directive.mjs +3 -3
  556. package/esm2020/toolbar/toolbar-overflow-button.directive.mjs +3 -3
  557. package/esm2020/toolbar/toolbar-overflow-group.directive.mjs +27 -0
  558. package/esm2020/toolbar/toolbar-overflow-priority.directive.mjs +29 -0
  559. package/esm2020/toolbar/toolbar-separator.component.mjs +3 -3
  560. package/esm2020/toolbar/toolbar-spacer.component.mjs +47 -0
  561. package/esm2020/toolbar/toolbar.component.mjs +277 -159
  562. package/esm2020/toolbar/toolbar.module.mjs +19 -12
  563. package/esm2020/tree/tree-child.component.mjs +3 -3
  564. package/esm2020/tree/tree.component.mjs +3 -3
  565. package/esm2020/tree/tree.module.mjs +4 -4
  566. package/esm2020/upload-collection/upload-collection-button-group/upload-collection-button-group.component.mjs +3 -3
  567. package/esm2020/upload-collection/upload-collection-form-item/upload-collection-form-item.component.mjs +3 -3
  568. package/esm2020/upload-collection/upload-collection-item.directive.mjs +3 -3
  569. package/esm2020/upload-collection/upload-collection-simple.directives.mjs +21 -21
  570. package/esm2020/upload-collection/upload-collection.component.mjs +3 -3
  571. package/esm2020/upload-collection/upload-collection.module.mjs +4 -4
  572. package/esm2020/vertical-navigation/vertical-navigation-group-header.directive.mjs +3 -3
  573. package/esm2020/vertical-navigation/vertical-navigation-main-navigation.component.mjs +3 -3
  574. package/esm2020/vertical-navigation/vertical-navigation.component.mjs +3 -3
  575. package/esm2020/vertical-navigation/vertical-navigation.module.mjs +4 -4
  576. package/esm2020/wizard/deprecated-wizard-compact.directive.mjs +3 -3
  577. package/esm2020/wizard/wizard-content/wizard-content.component.mjs +3 -3
  578. package/esm2020/wizard/wizard-navigation/wizard-navigation.component.mjs +3 -3
  579. package/esm2020/wizard/wizard-next-step/wizard-next-step.component.mjs +3 -3
  580. package/esm2020/wizard/wizard-progress-bar/wizard-progress-bar.directive.mjs +3 -3
  581. package/esm2020/wizard/wizard-step/wizard-step.component.mjs +3 -3
  582. package/esm2020/wizard/wizard-step-indicator/wizard-step-indicator.component.mjs +3 -3
  583. package/esm2020/wizard/wizard.component.mjs +3 -3
  584. package/esm2020/wizard/wizard.module.mjs +4 -4
  585. package/esm2020/wizard/wizard.service.mjs +3 -3
  586. package/fesm2015/fundamental-ngx-core-action-bar.mjs +25 -25
  587. package/fesm2015/fundamental-ngx-core-action-sheet.mjs +26 -26
  588. package/fesm2015/fundamental-ngx-core-alert.mjs +13 -13
  589. package/fesm2015/fundamental-ngx-core-avatar-group.mjs +28 -28
  590. package/fesm2015/fundamental-ngx-core-avatar.mjs +7 -7
  591. package/fesm2015/fundamental-ngx-core-bar.mjs +28 -28
  592. package/fesm2015/fundamental-ngx-core-breadcrumb.mjs +13 -13
  593. package/fesm2015/fundamental-ngx-core-busy-indicator.mjs +10 -10
  594. package/fesm2015/fundamental-ngx-core-button.mjs +13 -13
  595. package/fesm2015/fundamental-ngx-core-calendar.mjs +34 -34
  596. package/fesm2015/fundamental-ngx-core-card.mjs +58 -58
  597. package/fesm2015/fundamental-ngx-core-carousel.mjs +19 -19
  598. package/fesm2015/fundamental-ngx-core-checkbox.mjs +10 -10
  599. package/fesm2015/fundamental-ngx-core-combobox.mjs +20 -20
  600. package/fesm2015/fundamental-ngx-core-content-density.mjs +37 -37
  601. package/fesm2015/fundamental-ngx-core-date-picker.mjs +10 -10
  602. package/fesm2015/fundamental-ngx-core-datetime-picker.mjs +10 -10
  603. package/fesm2015/fundamental-ngx-core-datetime.mjs +24 -24
  604. package/fesm2015/fundamental-ngx-core-dialog.mjs +58 -58
  605. package/fesm2015/fundamental-ngx-core-dynamic-page.mjs +44 -44
  606. package/fesm2015/fundamental-ngx-core-dynamic-page.mjs.map +1 -1
  607. package/fesm2015/fundamental-ngx-core-dynamic-side-content.mjs +13 -13
  608. package/fesm2015/fundamental-ngx-core-facets.mjs +13 -13
  609. package/fesm2015/fundamental-ngx-core-feed-input.mjs +16 -16
  610. package/fesm2015/fundamental-ngx-core-feed-list-item.mjs +22 -22
  611. package/fesm2015/fundamental-ngx-core-file-uploader.mjs +19 -19
  612. package/fesm2015/fundamental-ngx-core-fixed-card-layout.mjs +13 -13
  613. package/fesm2015/fundamental-ngx-core-flexible-column-layout.mjs +7 -7
  614. package/fesm2015/fundamental-ngx-core-form.mjs +79 -79
  615. package/fesm2015/fundamental-ngx-core-formatted-text.mjs +7 -7
  616. package/fesm2015/fundamental-ngx-core-grid-list.mjs +48 -48
  617. package/fesm2015/fundamental-ngx-core-grid-list.mjs.map +1 -1
  618. package/fesm2015/fundamental-ngx-core-icon.mjs +7 -7
  619. package/fesm2015/fundamental-ngx-core-illustrated-message.mjs +19 -19
  620. package/fesm2015/fundamental-ngx-core-infinite-scroll.mjs +7 -7
  621. package/fesm2015/fundamental-ngx-core-info-label.mjs +7 -7
  622. package/fesm2015/fundamental-ngx-core-inline-help.mjs +7 -14
  623. package/fesm2015/fundamental-ngx-core-inline-help.mjs.map +1 -1
  624. package/fesm2015/fundamental-ngx-core-input-group.mjs +22 -22
  625. package/fesm2015/fundamental-ngx-core-layout-grid.mjs +13 -13
  626. package/fesm2015/fundamental-ngx-core-layout-panel.mjs +31 -31
  627. package/fesm2015/fundamental-ngx-core-link.mjs +7 -7
  628. package/fesm2015/fundamental-ngx-core-list.mjs +67 -79
  629. package/fesm2015/fundamental-ngx-core-list.mjs.map +1 -1
  630. package/fesm2015/fundamental-ngx-core-menu.mjs +47 -47
  631. package/fesm2015/fundamental-ngx-core-message-box.mjs +40 -40
  632. package/fesm2015/fundamental-ngx-core-message-page.mjs +19 -19
  633. package/fesm2015/fundamental-ngx-core-message-strip.mjs +7 -7
  634. package/fesm2015/fundamental-ngx-core-message-toast.mjs +13 -13
  635. package/fesm2015/fundamental-ngx-core-micro-process-flow.mjs +22 -22
  636. package/fesm2015/fundamental-ngx-core-multi-combobox.mjs +23 -28
  637. package/fesm2015/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
  638. package/fesm2015/fundamental-ngx-core-multi-input.mjs +17 -17
  639. package/fesm2015/fundamental-ngx-core-nested-list.mjs +43 -43
  640. package/fesm2015/fundamental-ngx-core-notification.mjs +64 -64
  641. package/fesm2015/fundamental-ngx-core-object-identifier.mjs +7 -7
  642. package/fesm2015/fundamental-ngx-core-object-marker.mjs +7 -7
  643. package/fesm2015/fundamental-ngx-core-object-number.mjs +7 -7
  644. package/fesm2015/fundamental-ngx-core-object-status.mjs +7 -7
  645. package/fesm2015/fundamental-ngx-core-overflow-layout.mjs +49 -45
  646. package/fesm2015/fundamental-ngx-core-overflow-layout.mjs.map +1 -1
  647. package/fesm2015/fundamental-ngx-core-pagination.mjs +13 -13
  648. package/fesm2015/fundamental-ngx-core-panel.mjs +16 -16
  649. package/fesm2015/fundamental-ngx-core-popover.mjs +39 -49
  650. package/fesm2015/fundamental-ngx-core-popover.mjs.map +1 -1
  651. package/fesm2015/fundamental-ngx-core-product-switch.mjs +10 -10
  652. package/fesm2015/fundamental-ngx-core-progress-indicator.mjs +7 -7
  653. package/fesm2015/fundamental-ngx-core-quick-view.mjs +37 -37
  654. package/fesm2015/fundamental-ngx-core-radio.mjs +10 -10
  655. package/fesm2015/fundamental-ngx-core-rating-indicator.mjs +10 -10
  656. package/fesm2015/fundamental-ngx-core-resizable-card-layout.mjs +10 -10
  657. package/fesm2015/fundamental-ngx-core-scroll-spy.mjs +7 -7
  658. package/fesm2015/fundamental-ngx-core-scrollbar.mjs +7 -7
  659. package/fesm2015/fundamental-ngx-core-segmented-button.mjs +7 -7
  660. package/fesm2015/fundamental-ngx-core-select.mjs +24 -25
  661. package/fesm2015/fundamental-ngx-core-select.mjs.map +1 -1
  662. package/fesm2015/fundamental-ngx-core-shared.mjs +3 -3
  663. package/fesm2015/fundamental-ngx-core-shellbar.mjs +37 -37
  664. package/fesm2015/fundamental-ngx-core-side-navigation.mjs +13 -13
  665. package/fesm2015/fundamental-ngx-core-skeleton.mjs +7 -7
  666. package/fesm2015/fundamental-ngx-core-slider.mjs +13 -13
  667. package/fesm2015/fundamental-ngx-core-split-button.mjs +13 -13
  668. package/fesm2015/fundamental-ngx-core-splitter.mjs +22 -22
  669. package/fesm2015/fundamental-ngx-core-status-indicator.mjs +7 -7
  670. package/fesm2015/fundamental-ngx-core-step-input.mjs +10 -10
  671. package/fesm2015/fundamental-ngx-core-switch.mjs +10 -10
  672. package/fesm2015/fundamental-ngx-core-table.mjs +55 -55
  673. package/fesm2015/fundamental-ngx-core-table.mjs.map +1 -1
  674. package/fesm2015/fundamental-ngx-core-tabs.mjs +55 -55
  675. package/fesm2015/fundamental-ngx-core-text.mjs +7 -7
  676. package/fesm2015/fundamental-ngx-core-theming.mjs +7 -7
  677. package/fesm2015/fundamental-ngx-core-tile.mjs +103 -103
  678. package/fesm2015/fundamental-ngx-core-time-picker.mjs +10 -10
  679. package/fesm2015/fundamental-ngx-core-time.mjs +16 -16
  680. package/fesm2015/fundamental-ngx-core-timeline.mjs +43 -43
  681. package/fesm2015/fundamental-ngx-core-title.mjs +7 -7
  682. package/fesm2015/fundamental-ngx-core-token.mjs +16 -16
  683. package/fesm2015/fundamental-ngx-core-toolbar.mjs +416 -276
  684. package/fesm2015/fundamental-ngx-core-toolbar.mjs.map +1 -1
  685. package/fesm2015/fundamental-ngx-core-tree.mjs +10 -10
  686. package/fesm2015/fundamental-ngx-core-upload-collection.mjs +37 -37
  687. package/fesm2015/fundamental-ngx-core-vertical-navigation.mjs +13 -13
  688. package/fesm2015/fundamental-ngx-core-wizard.mjs +31 -31
  689. package/fesm2015/fundamental-ngx-core.mjs +4 -4
  690. package/fesm2020/fundamental-ngx-core-action-bar.mjs +25 -25
  691. package/fesm2020/fundamental-ngx-core-action-sheet.mjs +26 -26
  692. package/fesm2020/fundamental-ngx-core-alert.mjs +13 -13
  693. package/fesm2020/fundamental-ngx-core-avatar-group.mjs +28 -28
  694. package/fesm2020/fundamental-ngx-core-avatar.mjs +7 -7
  695. package/fesm2020/fundamental-ngx-core-bar.mjs +28 -28
  696. package/fesm2020/fundamental-ngx-core-breadcrumb.mjs +13 -13
  697. package/fesm2020/fundamental-ngx-core-busy-indicator.mjs +10 -10
  698. package/fesm2020/fundamental-ngx-core-button.mjs +13 -13
  699. package/fesm2020/fundamental-ngx-core-calendar.mjs +34 -34
  700. package/fesm2020/fundamental-ngx-core-card.mjs +58 -58
  701. package/fesm2020/fundamental-ngx-core-carousel.mjs +19 -19
  702. package/fesm2020/fundamental-ngx-core-checkbox.mjs +10 -10
  703. package/fesm2020/fundamental-ngx-core-combobox.mjs +20 -20
  704. package/fesm2020/fundamental-ngx-core-content-density.mjs +37 -37
  705. package/fesm2020/fundamental-ngx-core-date-picker.mjs +10 -10
  706. package/fesm2020/fundamental-ngx-core-datetime-picker.mjs +10 -10
  707. package/fesm2020/fundamental-ngx-core-datetime.mjs +24 -24
  708. package/fesm2020/fundamental-ngx-core-dialog.mjs +58 -58
  709. package/fesm2020/fundamental-ngx-core-dynamic-page.mjs +44 -44
  710. package/fesm2020/fundamental-ngx-core-dynamic-page.mjs.map +1 -1
  711. package/fesm2020/fundamental-ngx-core-dynamic-side-content.mjs +13 -13
  712. package/fesm2020/fundamental-ngx-core-facets.mjs +13 -13
  713. package/fesm2020/fundamental-ngx-core-feed-input.mjs +16 -16
  714. package/fesm2020/fundamental-ngx-core-feed-list-item.mjs +22 -22
  715. package/fesm2020/fundamental-ngx-core-file-uploader.mjs +19 -19
  716. package/fesm2020/fundamental-ngx-core-fixed-card-layout.mjs +13 -13
  717. package/fesm2020/fundamental-ngx-core-flexible-column-layout.mjs +7 -7
  718. package/fesm2020/fundamental-ngx-core-form.mjs +79 -79
  719. package/fesm2020/fundamental-ngx-core-formatted-text.mjs +7 -7
  720. package/fesm2020/fundamental-ngx-core-grid-list.mjs +48 -48
  721. package/fesm2020/fundamental-ngx-core-grid-list.mjs.map +1 -1
  722. package/fesm2020/fundamental-ngx-core-icon.mjs +7 -7
  723. package/fesm2020/fundamental-ngx-core-illustrated-message.mjs +19 -19
  724. package/fesm2020/fundamental-ngx-core-infinite-scroll.mjs +7 -7
  725. package/fesm2020/fundamental-ngx-core-info-label.mjs +7 -7
  726. package/fesm2020/fundamental-ngx-core-inline-help.mjs +7 -14
  727. package/fesm2020/fundamental-ngx-core-inline-help.mjs.map +1 -1
  728. package/fesm2020/fundamental-ngx-core-input-group.mjs +22 -22
  729. package/fesm2020/fundamental-ngx-core-layout-grid.mjs +13 -13
  730. package/fesm2020/fundamental-ngx-core-layout-panel.mjs +31 -31
  731. package/fesm2020/fundamental-ngx-core-link.mjs +7 -7
  732. package/fesm2020/fundamental-ngx-core-list.mjs +67 -78
  733. package/fesm2020/fundamental-ngx-core-list.mjs.map +1 -1
  734. package/fesm2020/fundamental-ngx-core-menu.mjs +47 -47
  735. package/fesm2020/fundamental-ngx-core-message-box.mjs +40 -40
  736. package/fesm2020/fundamental-ngx-core-message-page.mjs +19 -19
  737. package/fesm2020/fundamental-ngx-core-message-strip.mjs +7 -7
  738. package/fesm2020/fundamental-ngx-core-message-toast.mjs +13 -13
  739. package/fesm2020/fundamental-ngx-core-micro-process-flow.mjs +22 -22
  740. package/fesm2020/fundamental-ngx-core-multi-combobox.mjs +22 -27
  741. package/fesm2020/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
  742. package/fesm2020/fundamental-ngx-core-multi-input.mjs +17 -17
  743. package/fesm2020/fundamental-ngx-core-nested-list.mjs +43 -43
  744. package/fesm2020/fundamental-ngx-core-notification.mjs +64 -64
  745. package/fesm2020/fundamental-ngx-core-object-identifier.mjs +7 -7
  746. package/fesm2020/fundamental-ngx-core-object-marker.mjs +7 -7
  747. package/fesm2020/fundamental-ngx-core-object-number.mjs +7 -7
  748. package/fesm2020/fundamental-ngx-core-object-status.mjs +7 -7
  749. package/fesm2020/fundamental-ngx-core-overflow-layout.mjs +49 -45
  750. package/fesm2020/fundamental-ngx-core-overflow-layout.mjs.map +1 -1
  751. package/fesm2020/fundamental-ngx-core-pagination.mjs +13 -13
  752. package/fesm2020/fundamental-ngx-core-panel.mjs +16 -16
  753. package/fesm2020/fundamental-ngx-core-popover.mjs +39 -49
  754. package/fesm2020/fundamental-ngx-core-popover.mjs.map +1 -1
  755. package/fesm2020/fundamental-ngx-core-product-switch.mjs +10 -10
  756. package/fesm2020/fundamental-ngx-core-progress-indicator.mjs +7 -7
  757. package/fesm2020/fundamental-ngx-core-quick-view.mjs +37 -37
  758. package/fesm2020/fundamental-ngx-core-radio.mjs +10 -10
  759. package/fesm2020/fundamental-ngx-core-rating-indicator.mjs +10 -10
  760. package/fesm2020/fundamental-ngx-core-resizable-card-layout.mjs +10 -10
  761. package/fesm2020/fundamental-ngx-core-scroll-spy.mjs +7 -7
  762. package/fesm2020/fundamental-ngx-core-scrollbar.mjs +7 -7
  763. package/fesm2020/fundamental-ngx-core-segmented-button.mjs +7 -7
  764. package/fesm2020/fundamental-ngx-core-select.mjs +24 -25
  765. package/fesm2020/fundamental-ngx-core-select.mjs.map +1 -1
  766. package/fesm2020/fundamental-ngx-core-shared.mjs +3 -3
  767. package/fesm2020/fundamental-ngx-core-shellbar.mjs +37 -37
  768. package/fesm2020/fundamental-ngx-core-side-navigation.mjs +13 -13
  769. package/fesm2020/fundamental-ngx-core-skeleton.mjs +7 -7
  770. package/fesm2020/fundamental-ngx-core-slider.mjs +13 -13
  771. package/fesm2020/fundamental-ngx-core-split-button.mjs +13 -13
  772. package/fesm2020/fundamental-ngx-core-splitter.mjs +22 -22
  773. package/fesm2020/fundamental-ngx-core-status-indicator.mjs +7 -7
  774. package/fesm2020/fundamental-ngx-core-step-input.mjs +10 -10
  775. package/fesm2020/fundamental-ngx-core-switch.mjs +10 -10
  776. package/fesm2020/fundamental-ngx-core-table.mjs +55 -55
  777. package/fesm2020/fundamental-ngx-core-table.mjs.map +1 -1
  778. package/fesm2020/fundamental-ngx-core-tabs.mjs +55 -55
  779. package/fesm2020/fundamental-ngx-core-text.mjs +7 -7
  780. package/fesm2020/fundamental-ngx-core-theming.mjs +7 -7
  781. package/fesm2020/fundamental-ngx-core-tile.mjs +103 -103
  782. package/fesm2020/fundamental-ngx-core-time-picker.mjs +10 -10
  783. package/fesm2020/fundamental-ngx-core-time.mjs +16 -16
  784. package/fesm2020/fundamental-ngx-core-timeline.mjs +43 -43
  785. package/fesm2020/fundamental-ngx-core-title.mjs +7 -7
  786. package/fesm2020/fundamental-ngx-core-token.mjs +16 -16
  787. package/fesm2020/fundamental-ngx-core-toolbar.mjs +416 -275
  788. package/fesm2020/fundamental-ngx-core-toolbar.mjs.map +1 -1
  789. package/fesm2020/fundamental-ngx-core-tree.mjs +10 -10
  790. package/fesm2020/fundamental-ngx-core-upload-collection.mjs +37 -37
  791. package/fesm2020/fundamental-ngx-core-vertical-navigation.mjs +13 -13
  792. package/fesm2020/fundamental-ngx-core-wizard.mjs +31 -31
  793. package/fesm2020/fundamental-ngx-core.mjs +4 -4
  794. package/fundamental-ngx-core-v0.40.5.tgz +0 -0
  795. package/grid-list/components/grid-list-title-bar-spacer/grid-list-title-bar-spacer.component.d.ts +2 -2
  796. package/inline-help/inline-help.directive.d.ts +0 -2
  797. package/list/directives/list-navigation-item-arrow.directive.d.ts +0 -6
  798. package/overflow-layout/overflow-layout.service.d.ts +4 -4
  799. package/package.json +4 -4
  800. package/popover/base/base-popover.class.d.ts +0 -4
  801. package/popover/popover-body/popover-body.component.d.ts +0 -4
  802. package/schematics/add-dependencies/index.js +4 -4
  803. package/table/table.module.d.ts +1 -2
  804. package/toolbar/public_api.d.ts +3 -2
  805. package/toolbar/toolbar-item.directive.d.ts +2 -20
  806. package/toolbar/toolbar-overflow-group.directive.d.ts +14 -0
  807. package/toolbar/toolbar-overflow-priority.directive.d.ts +17 -0
  808. package/toolbar/{toolbar-spacer.directive.d.ts → toolbar-spacer.component.d.ts} +3 -3
  809. package/toolbar/toolbar.component.d.ts +70 -33
  810. package/toolbar/toolbar.module.d.ts +9 -8
  811. package/esm2020/toolbar/abstract-toolbar-item.class.mjs +0 -3
  812. package/esm2020/toolbar/toolbar-spacer.directive.mjs +0 -45
  813. package/fundamental-ngx-core-v0.40.4-rc.6.tgz +0 -0
  814. package/toolbar/abstract-toolbar-item.class.d.ts +0 -8
@@ -6,9 +6,9 @@ export class PopoverBodyFooterDirective {
6
6
  this.fdPopoverBodyFooterClass = true;
7
7
  }
8
8
  }
9
- PopoverBodyFooterDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PopoverBodyFooterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
10
- PopoverBodyFooterDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.8", type: PopoverBodyFooterDirective, selector: "[fdPopoverBodyFooter], [fd-popover-body-footer]", host: { properties: { "class.fd-popover__body-footer": "this.fdPopoverBodyFooterClass" } }, ngImport: i0 });
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PopoverBodyFooterDirective, decorators: [{
9
+ PopoverBodyFooterDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: PopoverBodyFooterDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
10
+ PopoverBodyFooterDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.1", type: PopoverBodyFooterDirective, selector: "[fdPopoverBodyFooter], [fd-popover-body-footer]", host: { properties: { "class.fd-popover__body-footer": "this.fdPopoverBodyFooterClass" } }, ngImport: i0 });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: PopoverBodyFooterDirective, decorators: [{
12
12
  type: Directive,
13
13
  args: [{
14
14
  selector: '[fdPopoverBodyFooter], [fd-popover-body-footer]'
@@ -6,9 +6,9 @@ export class PopoverBodyHeaderDirective {
6
6
  this.fdPopoverBodyHeaderClass = true;
7
7
  }
8
8
  }
9
- PopoverBodyHeaderDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PopoverBodyHeaderDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
10
- PopoverBodyHeaderDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.8", type: PopoverBodyHeaderDirective, selector: "[fdPopoverBodyHeader], [fd-popover-body-header]", host: { properties: { "class.fd-popover__body-header": "this.fdPopoverBodyHeaderClass" } }, ngImport: i0 });
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PopoverBodyHeaderDirective, decorators: [{
9
+ PopoverBodyHeaderDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: PopoverBodyHeaderDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
10
+ PopoverBodyHeaderDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.1", type: PopoverBodyHeaderDirective, selector: "[fdPopoverBodyHeader], [fd-popover-body-header]", host: { properties: { "class.fd-popover__body-header": "this.fdPopoverBodyHeaderClass" } }, ngImport: i0 });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: PopoverBodyHeaderDirective, decorators: [{
12
12
  type: Directive,
13
13
  args: [{
14
14
  selector: '[fdPopoverBodyHeader], [fd-popover-body-header]'
@@ -47,10 +47,6 @@ export class PopoverBodyComponent {
47
47
  this._focusAutoCapture = false;
48
48
  /** @hidden Property bind to popover's body */
49
49
  this._closeOnEscapeKey = false;
50
- /** @hidden Aria role for the popover body */
51
- this._bodyRole = null;
52
- /** @hidden Aria role for the popover body */
53
- this._bodyId = null;
54
50
  /** Classes added to arrow element */
55
51
  this._arrowClasses = '';
56
52
  /** Additional style to put margin into body component, to give a place for arrow */
@@ -106,11 +102,11 @@ export class PopoverBodyComponent {
106
102
  }
107
103
  }
108
104
  }
109
- PopoverBodyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PopoverBodyComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.ContentDensityObserver }], target: i0.ɵɵFactoryTarget.Component });
110
- PopoverBodyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: PopoverBodyComponent, selector: "fd-popover-body", host: { listeners: { "keyup": "bodyKeyupHandler($event)" } }, providers: [contentDensityObserverProviders({ alwaysAddModifiers: true })], viewQueries: [{ propertyName: "_cdkTrapFocus", first: true, predicate: CdkTrapFocus, descendants: true }], ngImport: i0, template: "<div\n class=\"fd-popover__body fd-popover__body--static\"\n [class.fd-popover__body--no-arrow]=\"_noArrow\"\n [class]=\"_arrowClasses + (_additionalBodyClass || '')\"\n [cdkTrapFocus]=\"_focusTrapped\"\n [style]=\"_marginStyle\"\n [style.max-width.px]=\"_maxWidth\"\n [style.min-width.px]=\"_popoverBodyMinWidth\"\n [style.width.px]=\"_popoverBodyWidth\"\n [attr.role]=\"_bodyRole\"\n [attr.id]=\"_bodyId\"\n>\n <div\n fd-scrollbar\n class=\"fd-popover__wrapper\"\n [overrideTabindex]=\"_tabbableScrollbar\"\n *ngIf=\"!_disableScrollbar; else renderer\"\n >\n <ng-container *ngTemplateOutlet=\"renderer\"></ng-container>\n </div>\n</div>\n\n<ng-template #renderer>\n <ng-content select=\"[fd-popover-body-header]\"></ng-content>\n\n <ng-content select=\"[fd-popover-body-subheader]\"></ng-content>\n\n <ng-content></ng-content>\n\n {{ text }}\n\n <ng-container *ngTemplateOutlet=\"_templateToDisplay\"></ng-container>\n\n <ng-content select=\"[fd-popover-body-footer]\"></ng-content>\n</ng-template>\n", styles: ["/*!\n * Fundamental Library Styles v0.28.3\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-popover{-webkit-box-sizing:border-box;--fdPopover_Offset:100%;--fdPopover_Center_Offset:50%;border:0;box-sizing:border-box;color:var(--sapTextColor);display:inline-block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;max-width:100%;padding:0;position:relative}.fd-popover:after,.fd-popover:before{box-sizing:inherit;font-size:inherit}.fd-popover__control{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0;position:relative}.fd-popover__control:after,.fd-popover__control:before{box-sizing:inherit;font-size:inherit}.fd-popover__control:focus-visible{outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor)}.fd-popover__control.is-expanded>*,.fd-popover__control[aria-expanded=true]>*{margin-bottom:0}.fd-popover__control.is-expanded+.fd-popover__body--input-message-group,.fd-popover__control[aria-expanded=true]+.fd-popover__body--input-message-group{margin-top:0}.fd-popover__control.is-disabled,.fd-popover__control:disabled,.fd-popover__control[aria-disabled=true]{pointer-events:none}.fd-popover__wrapper{border-radius:var(--fdPopover_Border_Radius);overflow:auto;scrollbar-color:var(--fdScrollbar_Thumb_Color) var(--fdScrollbar_Track_Color)}.fd-popover__wrapper.is-focus,.fd-popover__wrapper:focus{outline:none;z-index:5}.fd-popover__wrapper::-webkit-scrollbar{height:var(--fdScrollbar_Dimension);width:var(--fdScrollbar_Dimension)}.fd-popover__wrapper::-webkit-scrollbar-corner,.fd-popover__wrapper::-webkit-scrollbar-track{background-color:var(--fdScrollbar_Track_Color)}.fd-popover__wrapper::-webkit-scrollbar-thumb{-webkit-box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color);background-color:transparent;border:var(--fdScrollbar_Thumb_Offset) solid transparent;border-radius:calc(var(--fdScrollbar_Thumb_Border_Radius) - var(--fdScrollbar_Thumb_Offset));box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color)}.fd-popover__wrapper::-webkit-scrollbar-thumb:active,.fd-popover__wrapper::-webkit-scrollbar-thumb:hover{box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Hover_Color)}.fd-popover__wrapper::-webkit-scrollbar-corner,.fd-popover__wrapper::-webkit-scrollbar-track{border-radius:0 var(--fdScrollbar_Border_Radius) var(--fdScrollbar_Border_Radius) 0}.fd-popover__wrapper[dir=rtl]::-webkit-scrollbar-corner,.fd-popover__wrapper[dir=rtl]::-webkit-scrollbar-track,[dir=rtl] .fd-popover__wrapper::-webkit-scrollbar-corner,[dir=rtl] .fd-popover__wrapper::-webkit-scrollbar-track{border-radius:var(--fdScrollbar_Border_Radius) 0 0 var(--fdScrollbar_Border_Radius)}.fd-popover__wrapper--visible{overflow:visible!important}.fd-popover__body{--fdIcon_Button_Height:2.25rem;--fdIcon_Button_Width:2.25rem;-webkit-box-sizing:border-box;-webkit-box-shadow:var(--sapContent_Shadow2);-webkit-transition:all .125s;background:var(--sapGroup_ContentBackground);border:0;border-radius:var(--fdPopover_Border_Radius);box-shadow:var(--sapContent_Shadow2);box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;opacity:1;padding:0;position:absolute;top:calc(var(--fdPopover_Offset) + .5rem);transition:all .125s;visibility:visible;white-space:nowrap;z-index:1000}.fd-popover__body:after,.fd-popover__body:before{box-sizing:inherit;content:\"\";font-size:inherit;position:absolute}.fd-popover__body:before{border-bottom:calc(.5rem - var(--fdPopover_Border_Width)) solid var(--sapGroup_ContentBackground);border-left:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;border-right:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;top:calc(-.5rem + var(--fdPopover_Border_Width));z-index:1002}.fd-popover__body:after,.fd-popover__body:before{border-top:none;display:inline-block;height:0;width:0}.fd-popover__body:after{border-bottom:.5rem solid var(--fdPopover_Border_Color);border-left:.5rem solid transparent;border-right:.5rem solid transparent;top:-.5rem;z-index:1001}.fd-popover__body>:not(.fd-popover__wrapper){overflow:hidden}.fd-popover__body ol:first-child li:first-child a:before,.fd-popover__body ol:first-child li:first-child:before,.fd-popover__body ul:first-child li:first-child a:before,.fd-popover__body ul:first-child li:first-child:before,.fd-popover__body-header>:first-child,.fd-popover__body>:first-child{border-top-left-radius:var(--fdPopover_Border_Radius);border-top-right-radius:var(--fdPopover_Border_Radius)}.fd-popover__body ol:last-child li:last-child a:before,.fd-popover__body ol:last-child li:last-child:before,.fd-popover__body ul:last-child li:last-child a:before,.fd-popover__body ul:last-child li:last-child:before,.fd-popover__body-footer>:last-child,.fd-popover__body>:last-child{border-bottom-left-radius:var(--fdPopover_Border_Radius);border-bottom-right-radius:var(--fdPopover_Border_Radius)}.fd-popover__body[class*=-compact],.fd-popover__body[class*=-condensed],[class*=-compact] .fd-popover__body:not([class*=-cozy]),[class*=-condensed] .fd-popover__body:not([class*=-cozy]){--fdIcon_Button_Height:1.625rem;--fdIcon_Button_Width:2rem}.fd-popover__body--no-arrow{box-shadow:var(--sapContent_Shadow1);top:var(--fdPopover_Offset)}.fd-popover__body--no-arrow:after,.fd-popover__body--no-arrow:before{display:none}.fd-popover__body,.fd-popover__body--left{left:0}.fd-popover__body--left[dir=rtl],.fd-popover__body[dir=rtl],[dir=rtl] .fd-popover__body,[dir=rtl] .fd-popover__body--left{left:auto;right:0}.fd-popover__body--left:before,.fd-popover__body:before{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--left:after,.fd-popover__body:after{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--left[dir=rtl]:before,.fd-popover__body[dir=rtl]:before,[dir=rtl] .fd-popover__body--left:before,[dir=rtl] .fd-popover__body:before{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--left[dir=rtl]:after,.fd-popover__body[dir=rtl]:after,[dir=rtl] .fd-popover__body--left:after,[dir=rtl] .fd-popover__body:after{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--center{-webkit-transform:translateX(calc(var(--fdPopover_Center_Offset) * -1));left:var(--fdPopover_Center_Offset);transform:translate(calc(var(--fdPopover_Center_Offset) * -1))}.fd-popover__body--center[dir=rtl],[dir=rtl] .fd-popover__body--center{-webkit-transform:translateX(var(--fdPopover_Center_Offset));left:auto;right:var(--fdPopover_Center_Offset);transform:translate(var(--fdPopover_Center_Offset))}.fd-popover__body--right{left:auto;right:0}.fd-popover__body--right[dir=rtl],[dir=rtl] .fd-popover__body--right{left:0;right:auto}.fd-popover__body--right:before{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--right:after{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--right[dir=rtl]:before,[dir=rtl] .fd-popover__body--right:before{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width));right:auto}.fd-popover__body--right[dir=rtl]:after,[dir=rtl] .fd-popover__body--right:after{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width));right:auto}.fd-popover__body--before{left:auto!important;right:var(--fdPopover_Offset)!important;top:0}.fd-popover__body--after{left:var(--fdPopover_Offset)!important;right:auto!important;top:0}.fd-popover__body--middle{-webkit-transform:translateY(calc(var(--fdPopover_Center_Offset) * -1));top:var(--fdPopover_Center_Offset);transform:translateY(calc(var(--fdPopover_Center_Offset) * -1))}.fd-popover__body--bottom{bottom:0;top:auto}.fd-popover__body--above{bottom:var(--fdPopover_Offset);top:auto}.fd-popover__body--arrow-bottom{bottom:calc(var(--fdPopover_Offset) + .5rem)!important}.fd-popover__body--arrow-bottom:before{border-bottom:none;border-left:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;border-right:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;border-top:calc(.5rem - var(--fdPopover_Border_Width)) solid var(--sapGroup_ContentBackground);display:inline-block;height:0;top:100%;width:0}.fd-popover__body--arrow-bottom:after{border-bottom:none;border-left:.5rem solid transparent;border-right:.5rem solid transparent;border-top:.5rem solid var(--fdPopover_Border_Color);display:inline-block;height:0;top:100%;width:0}.fd-popover__body--arrow-left{left:calc(var(--fdPopover_Offset) + .5rem)!important}.fd-popover__body--arrow-left:before{border-bottom:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;border-right:calc(.5rem - var(--fdPopover_Border_Width)) solid var(--sapGroup_ContentBackground);border-top:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;top:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--arrow-left:after,.fd-popover__body--arrow-left:before{border-left:none;display:inline-block;height:0;left:auto!important;right:100%!important;width:0}.fd-popover__body--arrow-left:after{border-bottom:.5rem solid transparent;border-right:.5rem solid var(--fdPopover_Border_Color);border-top:.5rem solid transparent;top:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--arrow-right{right:calc(var(--fdPopover_Offset) + .5rem)!important}.fd-popover__body--arrow-right:before{border-bottom:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;border-left:calc(.5rem - var(--fdPopover_Border_Width)) solid var(--sapGroup_ContentBackground);border-top:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;top:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--arrow-right:after,.fd-popover__body--arrow-right:before{border-right:none;display:inline-block;height:0;left:100%!important;right:auto!important;width:0}.fd-popover__body--arrow-right:after{border-bottom:.5rem solid transparent;border-left:.5rem solid var(--fdPopover_Border_Color);border-top:.5rem solid transparent;top:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--arrow-x-center:after,.fd-popover__body--arrow-x-center:before{-webkit-transform:translateX(-50%);left:50%;transform:translate(-50%)}.fd-popover__body--arrow-x-center[dir=rtl]:after,.fd-popover__body--arrow-x-center[dir=rtl]:before,[dir=rtl] .fd-popover__body--arrow-x-center:after,[dir=rtl] .fd-popover__body--arrow-x-center:before{-webkit-transform:translateX(50%);left:auto;right:50%;transform:translate(50%)}.fd-popover__body--arrow-x-end:before{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--arrow-x-end:after{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--arrow-x-end[dir=rtl]:before,[dir=rtl] .fd-popover__body--arrow-x-end:before{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width));right:auto}.fd-popover__body--arrow-x-end[dir=rtl]:after,[dir=rtl] .fd-popover__body--arrow-x-end:after{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width));right:auto}.fd-popover__body--arrow-y-center:after,.fd-popover__body--arrow-y-center:before{-webkit-transform:translateY(-50%);top:50%;transform:translateY(-50%)}.fd-popover__body--arrow-y-end:before{bottom:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width));top:auto}.fd-popover__body--arrow-y-end:after{bottom:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width));top:auto}.fd-popover__body--dropdown{width:max-content}.fd-popover__body--dropdown-fill{display:block;max-width:40rem;width:calc(100% - var(--sapGroup_BorderWidth) * 2)}.fd-popover__body--static{--fdPopover_Offset:0%;--fdPopover_Center_Offset:0%;position:relative}.fd-popover__body.is-hidden,.fd-popover__body[aria-hidden=true]{opacity:0;visibility:hidden;z-index:-1}.fd-popover__body .fd-popover__body--hidden{display:none}.fd-popover__body--input-message-group{-webkit-box-shadow:none;border:none;box-shadow:none}.fd-popover__body--inline-help{font-size:var(--sapFontSmallSize);padding:.75rem}.fd-popover__body--inline-help-icon{--fdIcon_Button_Height:1.375rem;--fdIcon_Button_Width:1.375rem}.fd-popover--input-message-group .fd-popover__body,.fd-popover--input-message-group .fd-popover__body--no-arrow{-webkit-box-shadow:none;border:none;box-shadow:none}.fd-popover--full-width{width:100%}.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;inset:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:rgba(0,0,0,0);transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;z-index:1000;display:flex;flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}fd-popover-body{max-width:100%;max-height:100%}.fd-popover-custom{display:inline-block;max-width:100%}.fd-popover-custom--disabled .fd-popover__control{cursor:auto}.fd-popover__body{max-height:100%;max-width:100%;display:flex}.fd-popover__body--hidden{display:none!important}.fd-popover__body.fd-form-message:before{width:auto;height:auto;position:relative;inset:0;border:none}.fd-popover__body>.fd-scrollbar{max-height:100%;max-width:100%;width:100%;border-radius:inherit}.fd-popover__body .fd-list{border-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-list__item:first-child{border-top-right-radius:var(--fdPopover_Border_Radius);border-top-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-list__item:last-child{border-bottom-right-radius:var(--fdPopover_Border_Radius);border-bottom-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-nested-list{border-bottom:none}.fd-popover__body .fd-nested-list__item:first-child .fd-nested-list__content{border-top-right-radius:var(--fdPopover_Border_Radius);border-top-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-nested-list__item:last-child .fd-nested-list__item:last-child .fd-nested-list__link{border-bottom-right-radius:var(--fdPopover_Border_Radius);border-bottom-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-nested-list__item:last-child .fd-nested-list__content{border-bottom-right-radius:var(--fdPopover_Border_Radius);border-bottom-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-nested-list__item:last-child .fd-nested-list__content.is-selected{border-bottom-right-radius:0;border-bottom-left-radius:0}.fd-popover__body .fd-side-nav,.fd-popover__body .fd-nested-list__item{border-right:none}.fd-popover__body .fd-side-nav:first-child,.fd-popover__body .fd-nested-list__item:first-child{border-top-right-radius:var(--fdPopover_Border_Radius);border-top-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-side-nav:last-child,.fd-popover__body .fd-nested-list__item:last-child{border-bottom-right-radius:var(--fdPopover_Border_Radius);border-bottom-left-radius:var(--fdPopover_Border_Radius)}.cdk-overlay-container{z-index:1002}.cdk-overlay-pane{max-width:100%;max-height:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "directive", type: i4.ScrollbarDirective, selector: "[fdScrollbar], [fd-scrollbar]", inputs: ["noHorizontalScroll", "noVerticalScroll", "alwaysVisible", "overrideTabindex"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
111
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PopoverBodyComponent, decorators: [{
105
+ PopoverBodyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: PopoverBodyComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }, { token: i1.ContentDensityObserver }], target: i0.ɵɵFactoryTarget.Component });
106
+ PopoverBodyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: PopoverBodyComponent, selector: "fd-popover-body", host: { listeners: { "keyup": "bodyKeyupHandler($event)" } }, providers: [contentDensityObserverProviders({ alwaysAddModifiers: true })], viewQueries: [{ propertyName: "_cdkTrapFocus", first: true, predicate: CdkTrapFocus, descendants: true }], ngImport: i0, template: "<div\n class=\"fd-popover__body fd-popover__body--static\"\n [class.fd-popover__body--no-arrow]=\"_noArrow\"\n [class]=\"_arrowClasses + (_additionalBodyClass || '')\"\n [cdkTrapFocus]=\"_focusTrapped\"\n [style]=\"_marginStyle\"\n [style.max-width.px]=\"_maxWidth\"\n [style.min-width.px]=\"_popoverBodyMinWidth\"\n [style.width.px]=\"_popoverBodyWidth\"\n>\n <div\n fd-scrollbar\n class=\"fd-popover__wrapper\"\n [overrideTabindex]=\"_tabbableScrollbar\"\n *ngIf=\"!_disableScrollbar; else renderer\"\n >\n <ng-container *ngTemplateOutlet=\"renderer\"></ng-container>\n </div>\n</div>\n\n<ng-template #renderer>\n <ng-content select=\"[fd-popover-body-header]\"></ng-content>\n\n <ng-content select=\"[fd-popover-body-subheader]\"></ng-content>\n\n <ng-content></ng-content>\n\n {{ text }}\n\n <ng-container *ngTemplateOutlet=\"_templateToDisplay\"></ng-container>\n\n <ng-content select=\"[fd-popover-body-footer]\"></ng-content>\n</ng-template>\n", styles: ["/*!\n * Fundamental Library Styles v0.28.3\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-popover{-webkit-box-sizing:border-box;--fdPopover_Offset:100%;--fdPopover_Center_Offset:50%;border:0;box-sizing:border-box;color:var(--sapTextColor);display:inline-block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;max-width:100%;padding:0;position:relative}.fd-popover:after,.fd-popover:before{box-sizing:inherit;font-size:inherit}.fd-popover__control{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0;position:relative}.fd-popover__control:after,.fd-popover__control:before{box-sizing:inherit;font-size:inherit}.fd-popover__control:focus-visible{outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor)}.fd-popover__control.is-expanded>*,.fd-popover__control[aria-expanded=true]>*{margin-bottom:0}.fd-popover__control.is-expanded+.fd-popover__body--input-message-group,.fd-popover__control[aria-expanded=true]+.fd-popover__body--input-message-group{margin-top:0}.fd-popover__control.is-disabled,.fd-popover__control:disabled,.fd-popover__control[aria-disabled=true]{pointer-events:none}.fd-popover__wrapper{border-radius:var(--fdPopover_Border_Radius);overflow:auto;scrollbar-color:var(--fdScrollbar_Thumb_Color) var(--fdScrollbar_Track_Color)}.fd-popover__wrapper.is-focus,.fd-popover__wrapper:focus{outline:none;z-index:5}.fd-popover__wrapper::-webkit-scrollbar{height:var(--fdScrollbar_Dimension);width:var(--fdScrollbar_Dimension)}.fd-popover__wrapper::-webkit-scrollbar-corner,.fd-popover__wrapper::-webkit-scrollbar-track{background-color:var(--fdScrollbar_Track_Color)}.fd-popover__wrapper::-webkit-scrollbar-thumb{-webkit-box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color);background-color:transparent;border:var(--fdScrollbar_Thumb_Offset) solid transparent;border-radius:calc(var(--fdScrollbar_Thumb_Border_Radius) - var(--fdScrollbar_Thumb_Offset));box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color)}.fd-popover__wrapper::-webkit-scrollbar-thumb:active,.fd-popover__wrapper::-webkit-scrollbar-thumb:hover{box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Hover_Color)}.fd-popover__wrapper::-webkit-scrollbar-corner,.fd-popover__wrapper::-webkit-scrollbar-track{border-radius:0 var(--fdScrollbar_Border_Radius) var(--fdScrollbar_Border_Radius) 0}.fd-popover__wrapper[dir=rtl]::-webkit-scrollbar-corner,.fd-popover__wrapper[dir=rtl]::-webkit-scrollbar-track,[dir=rtl] .fd-popover__wrapper::-webkit-scrollbar-corner,[dir=rtl] .fd-popover__wrapper::-webkit-scrollbar-track{border-radius:var(--fdScrollbar_Border_Radius) 0 0 var(--fdScrollbar_Border_Radius)}.fd-popover__wrapper--visible{overflow:visible!important}.fd-popover__body{--fdIcon_Button_Height:2.25rem;--fdIcon_Button_Width:2.25rem;-webkit-box-sizing:border-box;-webkit-box-shadow:var(--sapContent_Shadow2);-webkit-transition:all .125s;background:var(--sapGroup_ContentBackground);border:0;border-radius:var(--fdPopover_Border_Radius);box-shadow:var(--sapContent_Shadow2);box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;opacity:1;padding:0;position:absolute;top:calc(var(--fdPopover_Offset) + .5rem);transition:all .125s;visibility:visible;white-space:nowrap;z-index:1000}.fd-popover__body:after,.fd-popover__body:before{box-sizing:inherit;content:\"\";font-size:inherit;position:absolute}.fd-popover__body:before{border-bottom:calc(.5rem - var(--fdPopover_Border_Width)) solid var(--sapGroup_ContentBackground);border-left:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;border-right:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;top:calc(-.5rem + var(--fdPopover_Border_Width));z-index:1002}.fd-popover__body:after,.fd-popover__body:before{border-top:none;display:inline-block;height:0;width:0}.fd-popover__body:after{border-bottom:.5rem solid var(--fdPopover_Border_Color);border-left:.5rem solid transparent;border-right:.5rem solid transparent;top:-.5rem;z-index:1001}.fd-popover__body>:not(.fd-popover__wrapper){overflow:hidden}.fd-popover__body ol:first-child li:first-child a:before,.fd-popover__body ol:first-child li:first-child:before,.fd-popover__body ul:first-child li:first-child a:before,.fd-popover__body ul:first-child li:first-child:before,.fd-popover__body-header>:first-child,.fd-popover__body>:first-child{border-top-left-radius:var(--fdPopover_Border_Radius);border-top-right-radius:var(--fdPopover_Border_Radius)}.fd-popover__body ol:last-child li:last-child a:before,.fd-popover__body ol:last-child li:last-child:before,.fd-popover__body ul:last-child li:last-child a:before,.fd-popover__body ul:last-child li:last-child:before,.fd-popover__body-footer>:last-child,.fd-popover__body>:last-child{border-bottom-left-radius:var(--fdPopover_Border_Radius);border-bottom-right-radius:var(--fdPopover_Border_Radius)}.fd-popover__body[class*=-compact],.fd-popover__body[class*=-condensed],[class*=-compact] .fd-popover__body:not([class*=-cozy]),[class*=-condensed] .fd-popover__body:not([class*=-cozy]){--fdIcon_Button_Height:1.625rem;--fdIcon_Button_Width:2rem}.fd-popover__body--no-arrow{box-shadow:var(--sapContent_Shadow1);top:var(--fdPopover_Offset)}.fd-popover__body--no-arrow:after,.fd-popover__body--no-arrow:before{display:none}.fd-popover__body,.fd-popover__body--left{left:0}.fd-popover__body--left[dir=rtl],.fd-popover__body[dir=rtl],[dir=rtl] .fd-popover__body,[dir=rtl] .fd-popover__body--left{left:auto;right:0}.fd-popover__body--left:before,.fd-popover__body:before{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--left:after,.fd-popover__body:after{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--left[dir=rtl]:before,.fd-popover__body[dir=rtl]:before,[dir=rtl] .fd-popover__body--left:before,[dir=rtl] .fd-popover__body:before{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--left[dir=rtl]:after,.fd-popover__body[dir=rtl]:after,[dir=rtl] .fd-popover__body--left:after,[dir=rtl] .fd-popover__body:after{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--center{-webkit-transform:translateX(calc(var(--fdPopover_Center_Offset) * -1));left:var(--fdPopover_Center_Offset);transform:translate(calc(var(--fdPopover_Center_Offset) * -1))}.fd-popover__body--center[dir=rtl],[dir=rtl] .fd-popover__body--center{-webkit-transform:translateX(var(--fdPopover_Center_Offset));left:auto;right:var(--fdPopover_Center_Offset);transform:translate(var(--fdPopover_Center_Offset))}.fd-popover__body--right{left:auto;right:0}.fd-popover__body--right[dir=rtl],[dir=rtl] .fd-popover__body--right{left:0;right:auto}.fd-popover__body--right:before{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--right:after{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--right[dir=rtl]:before,[dir=rtl] .fd-popover__body--right:before{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width));right:auto}.fd-popover__body--right[dir=rtl]:after,[dir=rtl] .fd-popover__body--right:after{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width));right:auto}.fd-popover__body--before{left:auto!important;right:var(--fdPopover_Offset)!important;top:0}.fd-popover__body--after{left:var(--fdPopover_Offset)!important;right:auto!important;top:0}.fd-popover__body--middle{-webkit-transform:translateY(calc(var(--fdPopover_Center_Offset) * -1));top:var(--fdPopover_Center_Offset);transform:translateY(calc(var(--fdPopover_Center_Offset) * -1))}.fd-popover__body--bottom{bottom:0;top:auto}.fd-popover__body--above{bottom:var(--fdPopover_Offset);top:auto}.fd-popover__body--arrow-bottom{bottom:calc(var(--fdPopover_Offset) + .5rem)!important}.fd-popover__body--arrow-bottom:before{border-bottom:none;border-left:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;border-right:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;border-top:calc(.5rem - var(--fdPopover_Border_Width)) solid var(--sapGroup_ContentBackground);display:inline-block;height:0;top:100%;width:0}.fd-popover__body--arrow-bottom:after{border-bottom:none;border-left:.5rem solid transparent;border-right:.5rem solid transparent;border-top:.5rem solid var(--fdPopover_Border_Color);display:inline-block;height:0;top:100%;width:0}.fd-popover__body--arrow-left{left:calc(var(--fdPopover_Offset) + .5rem)!important}.fd-popover__body--arrow-left:before{border-bottom:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;border-right:calc(.5rem - var(--fdPopover_Border_Width)) solid var(--sapGroup_ContentBackground);border-top:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;top:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--arrow-left:after,.fd-popover__body--arrow-left:before{border-left:none;display:inline-block;height:0;left:auto!important;right:100%!important;width:0}.fd-popover__body--arrow-left:after{border-bottom:.5rem solid transparent;border-right:.5rem solid var(--fdPopover_Border_Color);border-top:.5rem solid transparent;top:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--arrow-right{right:calc(var(--fdPopover_Offset) + .5rem)!important}.fd-popover__body--arrow-right:before{border-bottom:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;border-left:calc(.5rem - var(--fdPopover_Border_Width)) solid var(--sapGroup_ContentBackground);border-top:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;top:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--arrow-right:after,.fd-popover__body--arrow-right:before{border-right:none;display:inline-block;height:0;left:100%!important;right:auto!important;width:0}.fd-popover__body--arrow-right:after{border-bottom:.5rem solid transparent;border-left:.5rem solid var(--fdPopover_Border_Color);border-top:.5rem solid transparent;top:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--arrow-x-center:after,.fd-popover__body--arrow-x-center:before{-webkit-transform:translateX(-50%);left:50%;transform:translate(-50%)}.fd-popover__body--arrow-x-center[dir=rtl]:after,.fd-popover__body--arrow-x-center[dir=rtl]:before,[dir=rtl] .fd-popover__body--arrow-x-center:after,[dir=rtl] .fd-popover__body--arrow-x-center:before{-webkit-transform:translateX(50%);left:auto;right:50%;transform:translate(50%)}.fd-popover__body--arrow-x-end:before{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--arrow-x-end:after{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--arrow-x-end[dir=rtl]:before,[dir=rtl] .fd-popover__body--arrow-x-end:before{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width));right:auto}.fd-popover__body--arrow-x-end[dir=rtl]:after,[dir=rtl] .fd-popover__body--arrow-x-end:after{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width));right:auto}.fd-popover__body--arrow-y-center:after,.fd-popover__body--arrow-y-center:before{-webkit-transform:translateY(-50%);top:50%;transform:translateY(-50%)}.fd-popover__body--arrow-y-end:before{bottom:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width));top:auto}.fd-popover__body--arrow-y-end:after{bottom:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width));top:auto}.fd-popover__body--dropdown{width:max-content}.fd-popover__body--dropdown-fill{display:block;max-width:40rem;width:calc(100% - var(--sapGroup_BorderWidth) * 2)}.fd-popover__body--static{--fdPopover_Offset:0%;--fdPopover_Center_Offset:0%;position:relative}.fd-popover__body.is-hidden,.fd-popover__body[aria-hidden=true]{opacity:0;visibility:hidden;z-index:-1}.fd-popover__body .fd-popover__body--hidden{display:none}.fd-popover__body--input-message-group{-webkit-box-shadow:none;border:none;box-shadow:none}.fd-popover__body--inline-help{font-size:var(--sapFontSmallSize);padding:.75rem}.fd-popover__body--inline-help-icon{--fdIcon_Button_Height:1.375rem;--fdIcon_Button_Width:1.375rem}.fd-popover--input-message-group .fd-popover__body,.fd-popover--input-message-group .fd-popover__body--no-arrow{-webkit-box-shadow:none;border:none;box-shadow:none}.fd-popover--full-width{width:100%}.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;inset:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:rgba(0,0,0,0);transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;z-index:1000;display:flex;flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}fd-popover-body{max-width:100%;max-height:100%}.fd-popover-custom{display:inline-block;max-width:100%}.fd-popover-custom--disabled .fd-popover__control{cursor:auto}.fd-popover__body{max-height:100%;max-width:100%;display:flex}.fd-popover__body--hidden{display:none!important}.fd-popover__body.fd-form-message:before{width:auto;height:auto;position:relative;inset:0;border:none}.fd-popover__body>.fd-scrollbar{max-height:100%;max-width:100%;width:100%;border-radius:inherit}.fd-popover__body .fd-list{border-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-list__item:first-child{border-top-right-radius:var(--fdPopover_Border_Radius);border-top-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-list__item:last-child{border-bottom-right-radius:var(--fdPopover_Border_Radius);border-bottom-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-nested-list{border-bottom:none}.fd-popover__body .fd-nested-list__item:first-child .fd-nested-list__content{border-top-right-radius:var(--fdPopover_Border_Radius);border-top-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-nested-list__item:last-child .fd-nested-list__item:last-child .fd-nested-list__link{border-bottom-right-radius:var(--fdPopover_Border_Radius);border-bottom-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-nested-list__item:last-child .fd-nested-list__content{border-bottom-right-radius:var(--fdPopover_Border_Radius);border-bottom-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-nested-list__item:last-child .fd-nested-list__content.is-selected{border-bottom-right-radius:0;border-bottom-left-radius:0}.fd-popover__body .fd-side-nav,.fd-popover__body .fd-nested-list__item{border-right:none}.fd-popover__body .fd-side-nav:first-child,.fd-popover__body .fd-nested-list__item:first-child{border-top-right-radius:var(--fdPopover_Border_Radius);border-top-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-side-nav:last-child,.fd-popover__body .fd-nested-list__item:last-child{border-bottom-right-radius:var(--fdPopover_Border_Radius);border-bottom-left-radius:var(--fdPopover_Border_Radius)}.cdk-overlay-container{z-index:1002}.cdk-overlay-pane{max-width:100%;max-height:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "directive", type: i4.ScrollbarDirective, selector: "[fdScrollbar], [fd-scrollbar]", inputs: ["noHorizontalScroll", "noVerticalScroll", "alwaysVisible", "overrideTabindex"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
107
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: PopoverBodyComponent, decorators: [{
112
108
  type: Component,
113
- args: [{ selector: 'fd-popover-body', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [contentDensityObserverProviders({ alwaysAddModifiers: true })], template: "<div\n class=\"fd-popover__body fd-popover__body--static\"\n [class.fd-popover__body--no-arrow]=\"_noArrow\"\n [class]=\"_arrowClasses + (_additionalBodyClass || '')\"\n [cdkTrapFocus]=\"_focusTrapped\"\n [style]=\"_marginStyle\"\n [style.max-width.px]=\"_maxWidth\"\n [style.min-width.px]=\"_popoverBodyMinWidth\"\n [style.width.px]=\"_popoverBodyWidth\"\n [attr.role]=\"_bodyRole\"\n [attr.id]=\"_bodyId\"\n>\n <div\n fd-scrollbar\n class=\"fd-popover__wrapper\"\n [overrideTabindex]=\"_tabbableScrollbar\"\n *ngIf=\"!_disableScrollbar; else renderer\"\n >\n <ng-container *ngTemplateOutlet=\"renderer\"></ng-container>\n </div>\n</div>\n\n<ng-template #renderer>\n <ng-content select=\"[fd-popover-body-header]\"></ng-content>\n\n <ng-content select=\"[fd-popover-body-subheader]\"></ng-content>\n\n <ng-content></ng-content>\n\n {{ text }}\n\n <ng-container *ngTemplateOutlet=\"_templateToDisplay\"></ng-container>\n\n <ng-content select=\"[fd-popover-body-footer]\"></ng-content>\n</ng-template>\n", styles: ["/*!\n * Fundamental Library Styles v0.28.3\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-popover{-webkit-box-sizing:border-box;--fdPopover_Offset:100%;--fdPopover_Center_Offset:50%;border:0;box-sizing:border-box;color:var(--sapTextColor);display:inline-block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;max-width:100%;padding:0;position:relative}.fd-popover:after,.fd-popover:before{box-sizing:inherit;font-size:inherit}.fd-popover__control{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0;position:relative}.fd-popover__control:after,.fd-popover__control:before{box-sizing:inherit;font-size:inherit}.fd-popover__control:focus-visible{outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor)}.fd-popover__control.is-expanded>*,.fd-popover__control[aria-expanded=true]>*{margin-bottom:0}.fd-popover__control.is-expanded+.fd-popover__body--input-message-group,.fd-popover__control[aria-expanded=true]+.fd-popover__body--input-message-group{margin-top:0}.fd-popover__control.is-disabled,.fd-popover__control:disabled,.fd-popover__control[aria-disabled=true]{pointer-events:none}.fd-popover__wrapper{border-radius:var(--fdPopover_Border_Radius);overflow:auto;scrollbar-color:var(--fdScrollbar_Thumb_Color) var(--fdScrollbar_Track_Color)}.fd-popover__wrapper.is-focus,.fd-popover__wrapper:focus{outline:none;z-index:5}.fd-popover__wrapper::-webkit-scrollbar{height:var(--fdScrollbar_Dimension);width:var(--fdScrollbar_Dimension)}.fd-popover__wrapper::-webkit-scrollbar-corner,.fd-popover__wrapper::-webkit-scrollbar-track{background-color:var(--fdScrollbar_Track_Color)}.fd-popover__wrapper::-webkit-scrollbar-thumb{-webkit-box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color);background-color:transparent;border:var(--fdScrollbar_Thumb_Offset) solid transparent;border-radius:calc(var(--fdScrollbar_Thumb_Border_Radius) - var(--fdScrollbar_Thumb_Offset));box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color)}.fd-popover__wrapper::-webkit-scrollbar-thumb:active,.fd-popover__wrapper::-webkit-scrollbar-thumb:hover{box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Hover_Color)}.fd-popover__wrapper::-webkit-scrollbar-corner,.fd-popover__wrapper::-webkit-scrollbar-track{border-radius:0 var(--fdScrollbar_Border_Radius) var(--fdScrollbar_Border_Radius) 0}.fd-popover__wrapper[dir=rtl]::-webkit-scrollbar-corner,.fd-popover__wrapper[dir=rtl]::-webkit-scrollbar-track,[dir=rtl] .fd-popover__wrapper::-webkit-scrollbar-corner,[dir=rtl] .fd-popover__wrapper::-webkit-scrollbar-track{border-radius:var(--fdScrollbar_Border_Radius) 0 0 var(--fdScrollbar_Border_Radius)}.fd-popover__wrapper--visible{overflow:visible!important}.fd-popover__body{--fdIcon_Button_Height:2.25rem;--fdIcon_Button_Width:2.25rem;-webkit-box-sizing:border-box;-webkit-box-shadow:var(--sapContent_Shadow2);-webkit-transition:all .125s;background:var(--sapGroup_ContentBackground);border:0;border-radius:var(--fdPopover_Border_Radius);box-shadow:var(--sapContent_Shadow2);box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;opacity:1;padding:0;position:absolute;top:calc(var(--fdPopover_Offset) + .5rem);transition:all .125s;visibility:visible;white-space:nowrap;z-index:1000}.fd-popover__body:after,.fd-popover__body:before{box-sizing:inherit;content:\"\";font-size:inherit;position:absolute}.fd-popover__body:before{border-bottom:calc(.5rem - var(--fdPopover_Border_Width)) solid var(--sapGroup_ContentBackground);border-left:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;border-right:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;top:calc(-.5rem + var(--fdPopover_Border_Width));z-index:1002}.fd-popover__body:after,.fd-popover__body:before{border-top:none;display:inline-block;height:0;width:0}.fd-popover__body:after{border-bottom:.5rem solid var(--fdPopover_Border_Color);border-left:.5rem solid transparent;border-right:.5rem solid transparent;top:-.5rem;z-index:1001}.fd-popover__body>:not(.fd-popover__wrapper){overflow:hidden}.fd-popover__body ol:first-child li:first-child a:before,.fd-popover__body ol:first-child li:first-child:before,.fd-popover__body ul:first-child li:first-child a:before,.fd-popover__body ul:first-child li:first-child:before,.fd-popover__body-header>:first-child,.fd-popover__body>:first-child{border-top-left-radius:var(--fdPopover_Border_Radius);border-top-right-radius:var(--fdPopover_Border_Radius)}.fd-popover__body ol:last-child li:last-child a:before,.fd-popover__body ol:last-child li:last-child:before,.fd-popover__body ul:last-child li:last-child a:before,.fd-popover__body ul:last-child li:last-child:before,.fd-popover__body-footer>:last-child,.fd-popover__body>:last-child{border-bottom-left-radius:var(--fdPopover_Border_Radius);border-bottom-right-radius:var(--fdPopover_Border_Radius)}.fd-popover__body[class*=-compact],.fd-popover__body[class*=-condensed],[class*=-compact] .fd-popover__body:not([class*=-cozy]),[class*=-condensed] .fd-popover__body:not([class*=-cozy]){--fdIcon_Button_Height:1.625rem;--fdIcon_Button_Width:2rem}.fd-popover__body--no-arrow{box-shadow:var(--sapContent_Shadow1);top:var(--fdPopover_Offset)}.fd-popover__body--no-arrow:after,.fd-popover__body--no-arrow:before{display:none}.fd-popover__body,.fd-popover__body--left{left:0}.fd-popover__body--left[dir=rtl],.fd-popover__body[dir=rtl],[dir=rtl] .fd-popover__body,[dir=rtl] .fd-popover__body--left{left:auto;right:0}.fd-popover__body--left:before,.fd-popover__body:before{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--left:after,.fd-popover__body:after{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--left[dir=rtl]:before,.fd-popover__body[dir=rtl]:before,[dir=rtl] .fd-popover__body--left:before,[dir=rtl] .fd-popover__body:before{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--left[dir=rtl]:after,.fd-popover__body[dir=rtl]:after,[dir=rtl] .fd-popover__body--left:after,[dir=rtl] .fd-popover__body:after{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--center{-webkit-transform:translateX(calc(var(--fdPopover_Center_Offset) * -1));left:var(--fdPopover_Center_Offset);transform:translate(calc(var(--fdPopover_Center_Offset) * -1))}.fd-popover__body--center[dir=rtl],[dir=rtl] .fd-popover__body--center{-webkit-transform:translateX(var(--fdPopover_Center_Offset));left:auto;right:var(--fdPopover_Center_Offset);transform:translate(var(--fdPopover_Center_Offset))}.fd-popover__body--right{left:auto;right:0}.fd-popover__body--right[dir=rtl],[dir=rtl] .fd-popover__body--right{left:0;right:auto}.fd-popover__body--right:before{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--right:after{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--right[dir=rtl]:before,[dir=rtl] .fd-popover__body--right:before{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width));right:auto}.fd-popover__body--right[dir=rtl]:after,[dir=rtl] .fd-popover__body--right:after{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width));right:auto}.fd-popover__body--before{left:auto!important;right:var(--fdPopover_Offset)!important;top:0}.fd-popover__body--after{left:var(--fdPopover_Offset)!important;right:auto!important;top:0}.fd-popover__body--middle{-webkit-transform:translateY(calc(var(--fdPopover_Center_Offset) * -1));top:var(--fdPopover_Center_Offset);transform:translateY(calc(var(--fdPopover_Center_Offset) * -1))}.fd-popover__body--bottom{bottom:0;top:auto}.fd-popover__body--above{bottom:var(--fdPopover_Offset);top:auto}.fd-popover__body--arrow-bottom{bottom:calc(var(--fdPopover_Offset) + .5rem)!important}.fd-popover__body--arrow-bottom:before{border-bottom:none;border-left:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;border-right:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;border-top:calc(.5rem - var(--fdPopover_Border_Width)) solid var(--sapGroup_ContentBackground);display:inline-block;height:0;top:100%;width:0}.fd-popover__body--arrow-bottom:after{border-bottom:none;border-left:.5rem solid transparent;border-right:.5rem solid transparent;border-top:.5rem solid var(--fdPopover_Border_Color);display:inline-block;height:0;top:100%;width:0}.fd-popover__body--arrow-left{left:calc(var(--fdPopover_Offset) + .5rem)!important}.fd-popover__body--arrow-left:before{border-bottom:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;border-right:calc(.5rem - var(--fdPopover_Border_Width)) solid var(--sapGroup_ContentBackground);border-top:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;top:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--arrow-left:after,.fd-popover__body--arrow-left:before{border-left:none;display:inline-block;height:0;left:auto!important;right:100%!important;width:0}.fd-popover__body--arrow-left:after{border-bottom:.5rem solid transparent;border-right:.5rem solid var(--fdPopover_Border_Color);border-top:.5rem solid transparent;top:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--arrow-right{right:calc(var(--fdPopover_Offset) + .5rem)!important}.fd-popover__body--arrow-right:before{border-bottom:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;border-left:calc(.5rem - var(--fdPopover_Border_Width)) solid var(--sapGroup_ContentBackground);border-top:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;top:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--arrow-right:after,.fd-popover__body--arrow-right:before{border-right:none;display:inline-block;height:0;left:100%!important;right:auto!important;width:0}.fd-popover__body--arrow-right:after{border-bottom:.5rem solid transparent;border-left:.5rem solid var(--fdPopover_Border_Color);border-top:.5rem solid transparent;top:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--arrow-x-center:after,.fd-popover__body--arrow-x-center:before{-webkit-transform:translateX(-50%);left:50%;transform:translate(-50%)}.fd-popover__body--arrow-x-center[dir=rtl]:after,.fd-popover__body--arrow-x-center[dir=rtl]:before,[dir=rtl] .fd-popover__body--arrow-x-center:after,[dir=rtl] .fd-popover__body--arrow-x-center:before{-webkit-transform:translateX(50%);left:auto;right:50%;transform:translate(50%)}.fd-popover__body--arrow-x-end:before{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--arrow-x-end:after{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--arrow-x-end[dir=rtl]:before,[dir=rtl] .fd-popover__body--arrow-x-end:before{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width));right:auto}.fd-popover__body--arrow-x-end[dir=rtl]:after,[dir=rtl] .fd-popover__body--arrow-x-end:after{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width));right:auto}.fd-popover__body--arrow-y-center:after,.fd-popover__body--arrow-y-center:before{-webkit-transform:translateY(-50%);top:50%;transform:translateY(-50%)}.fd-popover__body--arrow-y-end:before{bottom:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width));top:auto}.fd-popover__body--arrow-y-end:after{bottom:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width));top:auto}.fd-popover__body--dropdown{width:max-content}.fd-popover__body--dropdown-fill{display:block;max-width:40rem;width:calc(100% - var(--sapGroup_BorderWidth) * 2)}.fd-popover__body--static{--fdPopover_Offset:0%;--fdPopover_Center_Offset:0%;position:relative}.fd-popover__body.is-hidden,.fd-popover__body[aria-hidden=true]{opacity:0;visibility:hidden;z-index:-1}.fd-popover__body .fd-popover__body--hidden{display:none}.fd-popover__body--input-message-group{-webkit-box-shadow:none;border:none;box-shadow:none}.fd-popover__body--inline-help{font-size:var(--sapFontSmallSize);padding:.75rem}.fd-popover__body--inline-help-icon{--fdIcon_Button_Height:1.375rem;--fdIcon_Button_Width:1.375rem}.fd-popover--input-message-group .fd-popover__body,.fd-popover--input-message-group .fd-popover__body--no-arrow{-webkit-box-shadow:none;border:none;box-shadow:none}.fd-popover--full-width{width:100%}.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;inset:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:rgba(0,0,0,0);transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;z-index:1000;display:flex;flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}fd-popover-body{max-width:100%;max-height:100%}.fd-popover-custom{display:inline-block;max-width:100%}.fd-popover-custom--disabled .fd-popover__control{cursor:auto}.fd-popover__body{max-height:100%;max-width:100%;display:flex}.fd-popover__body--hidden{display:none!important}.fd-popover__body.fd-form-message:before{width:auto;height:auto;position:relative;inset:0;border:none}.fd-popover__body>.fd-scrollbar{max-height:100%;max-width:100%;width:100%;border-radius:inherit}.fd-popover__body .fd-list{border-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-list__item:first-child{border-top-right-radius:var(--fdPopover_Border_Radius);border-top-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-list__item:last-child{border-bottom-right-radius:var(--fdPopover_Border_Radius);border-bottom-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-nested-list{border-bottom:none}.fd-popover__body .fd-nested-list__item:first-child .fd-nested-list__content{border-top-right-radius:var(--fdPopover_Border_Radius);border-top-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-nested-list__item:last-child .fd-nested-list__item:last-child .fd-nested-list__link{border-bottom-right-radius:var(--fdPopover_Border_Radius);border-bottom-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-nested-list__item:last-child .fd-nested-list__content{border-bottom-right-radius:var(--fdPopover_Border_Radius);border-bottom-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-nested-list__item:last-child .fd-nested-list__content.is-selected{border-bottom-right-radius:0;border-bottom-left-radius:0}.fd-popover__body .fd-side-nav,.fd-popover__body .fd-nested-list__item{border-right:none}.fd-popover__body .fd-side-nav:first-child,.fd-popover__body .fd-nested-list__item:first-child{border-top-right-radius:var(--fdPopover_Border_Radius);border-top-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-side-nav:last-child,.fd-popover__body .fd-nested-list__item:last-child{border-bottom-right-radius:var(--fdPopover_Border_Radius);border-bottom-left-radius:var(--fdPopover_Border_Radius)}.cdk-overlay-container{z-index:1002}.cdk-overlay-pane{max-width:100%;max-height:100%}\n"] }]
109
+ args: [{ selector: 'fd-popover-body', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [contentDensityObserverProviders({ alwaysAddModifiers: true })], template: "<div\n class=\"fd-popover__body fd-popover__body--static\"\n [class.fd-popover__body--no-arrow]=\"_noArrow\"\n [class]=\"_arrowClasses + (_additionalBodyClass || '')\"\n [cdkTrapFocus]=\"_focusTrapped\"\n [style]=\"_marginStyle\"\n [style.max-width.px]=\"_maxWidth\"\n [style.min-width.px]=\"_popoverBodyMinWidth\"\n [style.width.px]=\"_popoverBodyWidth\"\n>\n <div\n fd-scrollbar\n class=\"fd-popover__wrapper\"\n [overrideTabindex]=\"_tabbableScrollbar\"\n *ngIf=\"!_disableScrollbar; else renderer\"\n >\n <ng-container *ngTemplateOutlet=\"renderer\"></ng-container>\n </div>\n</div>\n\n<ng-template #renderer>\n <ng-content select=\"[fd-popover-body-header]\"></ng-content>\n\n <ng-content select=\"[fd-popover-body-subheader]\"></ng-content>\n\n <ng-content></ng-content>\n\n {{ text }}\n\n <ng-container *ngTemplateOutlet=\"_templateToDisplay\"></ng-container>\n\n <ng-content select=\"[fd-popover-body-footer]\"></ng-content>\n</ng-template>\n", styles: ["/*!\n * Fundamental Library Styles v0.28.3\n * Copyright (c) 2023 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.fd-popover{-webkit-box-sizing:border-box;--fdPopover_Offset:100%;--fdPopover_Center_Offset:50%;border:0;box-sizing:border-box;color:var(--sapTextColor);display:inline-block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;max-width:100%;padding:0;position:relative}.fd-popover:after,.fd-popover:before{box-sizing:inherit;font-size:inherit}.fd-popover__control{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;padding:0;position:relative}.fd-popover__control:after,.fd-popover__control:before{box-sizing:inherit;font-size:inherit}.fd-popover__control:focus-visible{outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor)}.fd-popover__control.is-expanded>*,.fd-popover__control[aria-expanded=true]>*{margin-bottom:0}.fd-popover__control.is-expanded+.fd-popover__body--input-message-group,.fd-popover__control[aria-expanded=true]+.fd-popover__body--input-message-group{margin-top:0}.fd-popover__control.is-disabled,.fd-popover__control:disabled,.fd-popover__control[aria-disabled=true]{pointer-events:none}.fd-popover__wrapper{border-radius:var(--fdPopover_Border_Radius);overflow:auto;scrollbar-color:var(--fdScrollbar_Thumb_Color) var(--fdScrollbar_Track_Color)}.fd-popover__wrapper.is-focus,.fd-popover__wrapper:focus{outline:none;z-index:5}.fd-popover__wrapper::-webkit-scrollbar{height:var(--fdScrollbar_Dimension);width:var(--fdScrollbar_Dimension)}.fd-popover__wrapper::-webkit-scrollbar-corner,.fd-popover__wrapper::-webkit-scrollbar-track{background-color:var(--fdScrollbar_Track_Color)}.fd-popover__wrapper::-webkit-scrollbar-thumb{-webkit-box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color);background-color:transparent;border:var(--fdScrollbar_Thumb_Offset) solid transparent;border-radius:calc(var(--fdScrollbar_Thumb_Border_Radius) - var(--fdScrollbar_Thumb_Offset));box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color)}.fd-popover__wrapper::-webkit-scrollbar-thumb:active,.fd-popover__wrapper::-webkit-scrollbar-thumb:hover{box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Hover_Color)}.fd-popover__wrapper::-webkit-scrollbar-corner,.fd-popover__wrapper::-webkit-scrollbar-track{border-radius:0 var(--fdScrollbar_Border_Radius) var(--fdScrollbar_Border_Radius) 0}.fd-popover__wrapper[dir=rtl]::-webkit-scrollbar-corner,.fd-popover__wrapper[dir=rtl]::-webkit-scrollbar-track,[dir=rtl] .fd-popover__wrapper::-webkit-scrollbar-corner,[dir=rtl] .fd-popover__wrapper::-webkit-scrollbar-track{border-radius:var(--fdScrollbar_Border_Radius) 0 0 var(--fdScrollbar_Border_Radius)}.fd-popover__wrapper--visible{overflow:visible!important}.fd-popover__body{--fdIcon_Button_Height:2.25rem;--fdIcon_Button_Width:2.25rem;-webkit-box-sizing:border-box;-webkit-box-shadow:var(--sapContent_Shadow2);-webkit-transition:all .125s;background:var(--sapGroup_ContentBackground);border:0;border-radius:var(--fdPopover_Border_Radius);box-shadow:var(--sapContent_Shadow2);box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;opacity:1;padding:0;position:absolute;top:calc(var(--fdPopover_Offset) + .5rem);transition:all .125s;visibility:visible;white-space:nowrap;z-index:1000}.fd-popover__body:after,.fd-popover__body:before{box-sizing:inherit;content:\"\";font-size:inherit;position:absolute}.fd-popover__body:before{border-bottom:calc(.5rem - var(--fdPopover_Border_Width)) solid var(--sapGroup_ContentBackground);border-left:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;border-right:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;top:calc(-.5rem + var(--fdPopover_Border_Width));z-index:1002}.fd-popover__body:after,.fd-popover__body:before{border-top:none;display:inline-block;height:0;width:0}.fd-popover__body:after{border-bottom:.5rem solid var(--fdPopover_Border_Color);border-left:.5rem solid transparent;border-right:.5rem solid transparent;top:-.5rem;z-index:1001}.fd-popover__body>:not(.fd-popover__wrapper){overflow:hidden}.fd-popover__body ol:first-child li:first-child a:before,.fd-popover__body ol:first-child li:first-child:before,.fd-popover__body ul:first-child li:first-child a:before,.fd-popover__body ul:first-child li:first-child:before,.fd-popover__body-header>:first-child,.fd-popover__body>:first-child{border-top-left-radius:var(--fdPopover_Border_Radius);border-top-right-radius:var(--fdPopover_Border_Radius)}.fd-popover__body ol:last-child li:last-child a:before,.fd-popover__body ol:last-child li:last-child:before,.fd-popover__body ul:last-child li:last-child a:before,.fd-popover__body ul:last-child li:last-child:before,.fd-popover__body-footer>:last-child,.fd-popover__body>:last-child{border-bottom-left-radius:var(--fdPopover_Border_Radius);border-bottom-right-radius:var(--fdPopover_Border_Radius)}.fd-popover__body[class*=-compact],.fd-popover__body[class*=-condensed],[class*=-compact] .fd-popover__body:not([class*=-cozy]),[class*=-condensed] .fd-popover__body:not([class*=-cozy]){--fdIcon_Button_Height:1.625rem;--fdIcon_Button_Width:2rem}.fd-popover__body--no-arrow{box-shadow:var(--sapContent_Shadow1);top:var(--fdPopover_Offset)}.fd-popover__body--no-arrow:after,.fd-popover__body--no-arrow:before{display:none}.fd-popover__body,.fd-popover__body--left{left:0}.fd-popover__body--left[dir=rtl],.fd-popover__body[dir=rtl],[dir=rtl] .fd-popover__body,[dir=rtl] .fd-popover__body--left{left:auto;right:0}.fd-popover__body--left:before,.fd-popover__body:before{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--left:after,.fd-popover__body:after{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--left[dir=rtl]:before,.fd-popover__body[dir=rtl]:before,[dir=rtl] .fd-popover__body--left:before,[dir=rtl] .fd-popover__body:before{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--left[dir=rtl]:after,.fd-popover__body[dir=rtl]:after,[dir=rtl] .fd-popover__body--left:after,[dir=rtl] .fd-popover__body:after{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--center{-webkit-transform:translateX(calc(var(--fdPopover_Center_Offset) * -1));left:var(--fdPopover_Center_Offset);transform:translate(calc(var(--fdPopover_Center_Offset) * -1))}.fd-popover__body--center[dir=rtl],[dir=rtl] .fd-popover__body--center{-webkit-transform:translateX(var(--fdPopover_Center_Offset));left:auto;right:var(--fdPopover_Center_Offset);transform:translate(var(--fdPopover_Center_Offset))}.fd-popover__body--right{left:auto;right:0}.fd-popover__body--right[dir=rtl],[dir=rtl] .fd-popover__body--right{left:0;right:auto}.fd-popover__body--right:before{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--right:after{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--right[dir=rtl]:before,[dir=rtl] .fd-popover__body--right:before{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width));right:auto}.fd-popover__body--right[dir=rtl]:after,[dir=rtl] .fd-popover__body--right:after{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width));right:auto}.fd-popover__body--before{left:auto!important;right:var(--fdPopover_Offset)!important;top:0}.fd-popover__body--after{left:var(--fdPopover_Offset)!important;right:auto!important;top:0}.fd-popover__body--middle{-webkit-transform:translateY(calc(var(--fdPopover_Center_Offset) * -1));top:var(--fdPopover_Center_Offset);transform:translateY(calc(var(--fdPopover_Center_Offset) * -1))}.fd-popover__body--bottom{bottom:0;top:auto}.fd-popover__body--above{bottom:var(--fdPopover_Offset);top:auto}.fd-popover__body--arrow-bottom{bottom:calc(var(--fdPopover_Offset) + .5rem)!important}.fd-popover__body--arrow-bottom:before{border-bottom:none;border-left:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;border-right:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;border-top:calc(.5rem - var(--fdPopover_Border_Width)) solid var(--sapGroup_ContentBackground);display:inline-block;height:0;top:100%;width:0}.fd-popover__body--arrow-bottom:after{border-bottom:none;border-left:.5rem solid transparent;border-right:.5rem solid transparent;border-top:.5rem solid var(--fdPopover_Border_Color);display:inline-block;height:0;top:100%;width:0}.fd-popover__body--arrow-left{left:calc(var(--fdPopover_Offset) + .5rem)!important}.fd-popover__body--arrow-left:before{border-bottom:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;border-right:calc(.5rem - var(--fdPopover_Border_Width)) solid var(--sapGroup_ContentBackground);border-top:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;top:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--arrow-left:after,.fd-popover__body--arrow-left:before{border-left:none;display:inline-block;height:0;left:auto!important;right:100%!important;width:0}.fd-popover__body--arrow-left:after{border-bottom:.5rem solid transparent;border-right:.5rem solid var(--fdPopover_Border_Color);border-top:.5rem solid transparent;top:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--arrow-right{right:calc(var(--fdPopover_Offset) + .5rem)!important}.fd-popover__body--arrow-right:before{border-bottom:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;border-left:calc(.5rem - var(--fdPopover_Border_Width)) solid var(--sapGroup_ContentBackground);border-top:calc(.5rem - var(--fdPopover_Border_Width)) solid transparent;top:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--arrow-right:after,.fd-popover__body--arrow-right:before{border-right:none;display:inline-block;height:0;left:100%!important;right:auto!important;width:0}.fd-popover__body--arrow-right:after{border-bottom:.5rem solid transparent;border-left:.5rem solid var(--fdPopover_Border_Color);border-top:.5rem solid transparent;top:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--arrow-x-center:after,.fd-popover__body--arrow-x-center:before{-webkit-transform:translateX(-50%);left:50%;transform:translate(-50%)}.fd-popover__body--arrow-x-center[dir=rtl]:after,.fd-popover__body--arrow-x-center[dir=rtl]:before,[dir=rtl] .fd-popover__body--arrow-x-center:after,[dir=rtl] .fd-popover__body--arrow-x-center:before{-webkit-transform:translateX(50%);left:auto;right:50%;transform:translate(50%)}.fd-popover__body--arrow-x-end:before{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width))}.fd-popover__body--arrow-x-end:after{left:auto;right:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width))}.fd-popover__body--arrow-x-end[dir=rtl]:before,[dir=rtl] .fd-popover__body--arrow-x-end:before{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width));right:auto}.fd-popover__body--arrow-x-end[dir=rtl]:after,[dir=rtl] .fd-popover__body--arrow-x-end:after{left:calc(var(--fdIcon_Button_Width) * .5 - .5rem - var(--fdPopover_Border_Width));right:auto}.fd-popover__body--arrow-y-center:after,.fd-popover__body--arrow-y-center:before{-webkit-transform:translateY(-50%);top:50%;transform:translateY(-50%)}.fd-popover__body--arrow-y-end:before{bottom:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width) + var(--fdPopover_Border_Width));top:auto}.fd-popover__body--arrow-y-end:after{bottom:calc(var(--fdIcon_Button_Height) * .5 - .5rem - var(--fdPopover_Border_Width));top:auto}.fd-popover__body--dropdown{width:max-content}.fd-popover__body--dropdown-fill{display:block;max-width:40rem;width:calc(100% - var(--sapGroup_BorderWidth) * 2)}.fd-popover__body--static{--fdPopover_Offset:0%;--fdPopover_Center_Offset:0%;position:relative}.fd-popover__body.is-hidden,.fd-popover__body[aria-hidden=true]{opacity:0;visibility:hidden;z-index:-1}.fd-popover__body .fd-popover__body--hidden{display:none}.fd-popover__body--input-message-group{-webkit-box-shadow:none;border:none;box-shadow:none}.fd-popover__body--inline-help{font-size:var(--sapFontSmallSize);padding:.75rem}.fd-popover__body--inline-help-icon{--fdIcon_Button_Height:1.375rem;--fdIcon_Button_Width:1.375rem}.fd-popover--input-message-group .fd-popover__body,.fd-popover--input-message-group .fd-popover__body--no-arrow{-webkit-box-shadow:none;border:none;box-shadow:none}.fd-popover--full-width{width:100%}.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-overlay-container:empty{display:none}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000;display:flex;max-width:100%;max-height:100%}.cdk-overlay-backdrop{position:absolute;inset:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:rgba(0,0,0,0);transition:opacity .4s cubic-bezier(.25,.8,.25,1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-high-contrast-active .cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:.6}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,.32)}.cdk-overlay-transparent-backdrop{transition:visibility 1ms linear,opacity 1ms linear;visibility:hidden;opacity:1}.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0;visibility:visible}.cdk-overlay-backdrop-noop-animation{transition:none}.cdk-overlay-connected-position-bounding-box{position:absolute;z-index:1000;display:flex;flex-direction:column;min-width:1px;min-height:1px}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}fd-popover-body{max-width:100%;max-height:100%}.fd-popover-custom{display:inline-block;max-width:100%}.fd-popover-custom--disabled .fd-popover__control{cursor:auto}.fd-popover__body{max-height:100%;max-width:100%;display:flex}.fd-popover__body--hidden{display:none!important}.fd-popover__body.fd-form-message:before{width:auto;height:auto;position:relative;inset:0;border:none}.fd-popover__body>.fd-scrollbar{max-height:100%;max-width:100%;width:100%;border-radius:inherit}.fd-popover__body .fd-list{border-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-list__item:first-child{border-top-right-radius:var(--fdPopover_Border_Radius);border-top-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-list__item:last-child{border-bottom-right-radius:var(--fdPopover_Border_Radius);border-bottom-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-nested-list{border-bottom:none}.fd-popover__body .fd-nested-list__item:first-child .fd-nested-list__content{border-top-right-radius:var(--fdPopover_Border_Radius);border-top-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-nested-list__item:last-child .fd-nested-list__item:last-child .fd-nested-list__link{border-bottom-right-radius:var(--fdPopover_Border_Radius);border-bottom-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-nested-list__item:last-child .fd-nested-list__content{border-bottom-right-radius:var(--fdPopover_Border_Radius);border-bottom-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-nested-list__item:last-child .fd-nested-list__content.is-selected{border-bottom-right-radius:0;border-bottom-left-radius:0}.fd-popover__body .fd-side-nav,.fd-popover__body .fd-nested-list__item{border-right:none}.fd-popover__body .fd-side-nav:first-child,.fd-popover__body .fd-nested-list__item:first-child{border-top-right-radius:var(--fdPopover_Border_Radius);border-top-left-radius:var(--fdPopover_Border_Radius)}.fd-popover__body .fd-side-nav:last-child,.fd-popover__body .fd-nested-list__item:last-child{border-bottom-right-radius:var(--fdPopover_Border_Radius);border-bottom-left-radius:var(--fdPopover_Border_Radius)}.cdk-overlay-container{z-index:1002}.cdk-overlay-pane{max-width:100%;max-height:100%}\n"] }]
114
110
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i1.ContentDensityObserver }]; }, propDecorators: { _cdkTrapFocus: [{
115
111
  type: ViewChild,
116
112
  args: [CdkTrapFocus]
@@ -118,4 +114,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
118
114
  type: HostListener,
119
115
  args: ['keyup', ['$event']]
120
116
  }] } });
121
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci1ib2R5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL3BvcG92ZXIvcG9wb3Zlci1ib2R5L3BvcG92ZXItYm9keS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9wb3BvdmVyL3BvcG92ZXItYm9keS9wb3BvdmVyLWJvZHkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBRVosU0FBUyxFQUNULGlCQUFpQixFQUNwQixNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWpELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHL0IsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDOzs7Ozs7QUFFaEg7Ozs7Ozs7O0dBUUc7QUFTSCxNQUFNLE9BQU8sb0JBQW9CO0lBMkQ3Qiw2QkFBNkI7SUFFN0IsZ0JBQWdCLENBQUMsS0FBb0I7UUFDakMsSUFBSSxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDNUQsMERBQTBEO1lBQzFELEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ3ZCO0lBQ0wsQ0FBQztJQUVELGNBQWM7SUFDZCxZQUNhLFdBQXVCLEVBQ3hC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RUFBRSxDQUFDO1NBQzNDO0lBQ0wsQ0FBQztJQUVELGNBQWM7SUFDZCwwQkFBMEI7UUFDdEIsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDeEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMseUJBQXlCLEVBQUUsQ0FBQztTQUM1RDtJQUNMLENBQUM7O2lIQS9IUSxvQkFBb0I7cUdBQXBCLG9CQUFvQix3R0FGbEIsQ0FBQywrQkFBK0IsQ0FBQyxFQUFFLGtCQUFrQixFQUFFLElBQUksRUFBRSxDQUFDLENBQUMseUVBVS9ELFlBQVksZ0RDOUMzQix3a0NBbUNBOzJGREdhLG9CQUFvQjtrQkFSaEMsU0FBUzsrQkFDSSxpQkFBaUIsaUJBRVosaUJBQWlCLENBQUMsSUFBSSxtQkFDcEIsdUJBQXVCLENBQUMsTUFBTSxhQUVwQyxDQUFDLCtCQUErQixDQUFDLEVBQUUsa0JBQWtCLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztzS0FXMUUsYUFBYTtzQkFEWixTQUFTO3VCQUFDLFlBQVk7Z0JBcUR2QixnQkFBZ0I7c0JBRGYsWUFBWTt1QkFBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBFbGVtZW50UmVmLFxuICAgIEhvc3RMaXN0ZW5lcixcbiAgICBUZW1wbGF0ZVJlZixcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IENvbm5lY3Rpb25Qb3NpdGlvblBhaXIgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBFU0NBUEUgfSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnO1xuaW1wb3J0IHsgQ2RrVHJhcEZvY3VzIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2ExMXknO1xuXG5pbXBvcnQgeyBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IE51bGxhYmxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgS2V5VXRpbCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IENvbnRlbnREZW5zaXR5T2JzZXJ2ZXIsIGNvbnRlbnREZW5zaXR5T2JzZXJ2ZXJQcm92aWRlcnMgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvY29udGVudC1kZW5zaXR5JztcblxuLyoqXG4gKiBBIGNvbXBvbmVudCB1c2VkIHRvIGVuZm9yY2UgYSBjZXJ0YWluIGxheW91dCBmb3IgdGhlIHBvcG92ZXIuXG4gKiBgYGBodG1sXG4gKiA8ZmQtcG9wb3Zlcj5cbiAqICAgICA8ZmQtcG9wb3Zlci1jb250cm9sPkNvbnRyb2wgRWxlbWVudDwvZmQtcG9wb3Zlci1jb250cm9sPlxuICogICAgIDxmZC1wb3BvdmVyLWJvZHk+UG9wb3ZlciBCb2R5PC9mZC1wb3BvdmVyLWJvZHk+XG4gKiA8L2ZkLXBvcG92ZXI+XG4gKiBgYGBcbiAqL1xuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdmZC1wb3BvdmVyLWJvZHknLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9wb3BvdmVyLWJvZHkuY29tcG9uZW50Lmh0bWwnLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgc3R5bGVVcmxzOiBbJy4vcG9wb3Zlci1ib2R5LmNvbXBvbmVudC5zY3NzJ10sXG4gICAgcHJvdmlkZXJzOiBbY29udGVudERlbnNpdHlPYnNlcnZlclByb3ZpZGVycyh7IGFsd2F5c0FkZE1vZGlmaWVyczogdHJ1ZSB9KV1cbn0pXG5leHBvcnQgY2xhc3MgUG9wb3ZlckJvZHlDb21wb25lbnQge1xuICAgIC8qKiBXaGV0aGVyIHRvIHdyYXAgY29udGVudCB3aXRoIGZkLXNjcm9sbGJhciBkaXJlY3RpdmUuICovXG4gICAgX2Rpc2FibGVTY3JvbGxiYXIgPSBmYWxzZTtcblxuICAgIC8qKiBTaG91bGQgZmQtc2Nyb2xsYmFyIGhhdmUgdGFiaW5kZXgqL1xuICAgIF90YWJiYWJsZVNjcm9sbGJhciA9IHRydWU7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoQ2RrVHJhcEZvY3VzKVxuICAgIF9jZGtUcmFwRm9jdXM6IENka1RyYXBGb2N1cztcblxuICAgIC8qKiBXaGV0aGVyIHRoZSBwb3BvdmVyIHNob3VsZCBoYXZlIGFuIGFycm93LiAqL1xuICAgIF9ub0Fycm93ID0gdHJ1ZTtcblxuICAgIC8qKiBXaGV0aGVyIHRoZSBwb3BvdmVyIGNvbnRhaW5lciBuZWVkcyBhbiBleHRyYSBjbGFzcyBmb3Igc3R5bGluZy4gKi9cbiAgICBfYWRkaXRpb25hbEJvZHlDbGFzczogTnVsbGFibGU8c3RyaW5nPjtcblxuICAgIC8qKiBXaGV0aGVyIHRoZSBwb3BvdmVyIHNob3VsZCBiZSBmb2N1c1RyYXBwZWQuICovXG4gICAgX2ZvY3VzVHJhcHBlZCA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogV2hldGhlciB0aGUgcG9wb3ZlciBzaG91bGQgYXV0b21hdGljYWxseSBtb3ZlIGZvY3VzIGludG8gdGhlIHRyYXBwZWQgcmVnaW9uIHVwb25cbiAgICAgKiBpbml0aWFsaXphdGlvbiBhbmQgcmV0dXJuIGZvY3VzIHRvIHRoZSBwcmV2aW91cyBhY3RpdmVFbGVtZW50IHVwb24gZGVzdHJ1Y3Rpb24uXG4gICAgICovXG4gICAgX2ZvY3VzQXV0b0NhcHR1cmUgPSBmYWxzZTtcblxuICAgIC8qKiBAaGlkZGVuIFByb3BlcnR5IGJpbmQgdG8gcG9wb3ZlcidzIGJvZHkgKi9cbiAgICBfcG9wb3ZlckJvZHlXaWR0aDogbnVtYmVyO1xuXG4gICAgLyoqIEBoaWRkZW4gUHJvcGVydHkgYmluZCB0byBwb3BvdmVyJ3MgYm9keSAqL1xuICAgIF9wb3BvdmVyQm9keU1pbldpZHRoOiBudW1iZXI7XG5cbiAgICAvKiogQGhpZGRlbiBQcm9wZXJ0eSBiaW5kIHRvIHBvcG92ZXIncyBib2R5ICovXG4gICAgX21heFdpZHRoOiBOdWxsYWJsZTxudW1iZXI+O1xuXG4gICAgLyoqIEBoaWRkZW4gUHJvcGVydHkgYmluZCB0byBwb3BvdmVyJ3MgYm9keSAqL1xuICAgIF9jbG9zZU9uRXNjYXBlS2V5ID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiBBcmlhIHJvbGUgZm9yIHRoZSBwb3BvdmVyIGJvZHkgKi9cbiAgICBfYm9keVJvbGU6IE51bGxhYmxlPHN0cmluZz4gPSBudWxsO1xuXG4gICAgLyoqIEBoaWRkZW4gQXJpYSByb2xlIGZvciB0aGUgcG9wb3ZlciBib2R5ICovXG4gICAgX2JvZHlJZDogTnVsbGFibGU8c3RyaW5nPiA9IG51bGw7XG5cbiAgICAvKiogQ2xhc3NlcyBhZGRlZCB0byBhcnJvdyBlbGVtZW50ICovXG4gICAgX2Fycm93Q2xhc3NlcyA9ICcnO1xuXG4gICAgLyoqIEFkZGl0aW9uYWwgc3R5bGUgdG8gcHV0IG1hcmdpbiBpbnRvIGJvZHkgY29tcG9uZW50LCB0byBnaXZlIGEgcGxhY2UgZm9yIGFycm93ICovXG4gICAgX21hcmdpblN0eWxlOiBOdWxsYWJsZTxzdHJpbmc+ID0gbnVsbDtcblxuICAgIC8qKiBAaGlkZGVuIHRleHQgcmVuZGVyZWQgaW5zaWRlIHBvcG92ZXIncyBib2R5ICovXG4gICAgdGV4dDogTnVsbGFibGU8c3RyaW5nPiA9IG51bGw7XG5cbiAgICAvKiogQGhpZGRlbiB0ZW1wbGF0ZSByZW5kZXJlZCBpbnNpZGUgcG9wb3ZlcidzIGJvZHkgKi9cbiAgICBfdGVtcGxhdGVUb0Rpc3BsYXk6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICAvKiogQ2xvc2UgZXZlbnQgZnJvbSBwb3BvdmVyIGJvZHkgKi9cbiAgICBvbkNsb3NlID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIC8qKiBIYW5kbGVyIGVzY2FwZSBrZXlkb3duICovXG4gICAgQEhvc3RMaXN0ZW5lcigna2V5dXAnLCBbJyRldmVudCddKVxuICAgIGJvZHlLZXl1cEhhbmRsZXIoZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKEtleVV0aWwuaXNLZXlDb2RlKGV2ZW50LCBFU0NBUEUpICYmIHRoaXMuX2Nsb3NlT25Fc2NhcGVLZXkpIHtcbiAgICAgICAgICAgIC8vIEluIGNhc2UgaWYgcG9wb3ZlciBiZWxvbmdzIHRvIHRoZSBlbGVtZW50IGluc2lkZSBkaWFsb2dcbiAgICAgICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgICAgICAgdGhpcy5vbkNsb3NlLm5leHQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHJlYWRvbmx5IF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgICAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHJlYWRvbmx5IF9jb250ZW50RGVuc2l0eU9ic2VydmVyOiBDb250ZW50RGVuc2l0eU9ic2VydmVyXG4gICAgKSB7fVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfc2V0QXJyb3dTdHlsZXMocG9zaXRpb246IENvbm5lY3Rpb25Qb3NpdGlvblBhaXIsIHJ0bDogJ3J0bCcgfCAnbHRyJyk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5fbm9BcnJvdykge1xuICAgICAgICAgICAgdGhpcy5fYXJyb3dDbGFzc2VzID0gJyc7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoXG4gICAgICAgICAgICBwb3NpdGlvbi5vdmVybGF5WSAhPT0gcG9zaXRpb24ub3JpZ2luWSAmJlxuICAgICAgICAgICAgcG9zaXRpb24ub3JpZ2luWSAhPT0gJ2NlbnRlcicgJiZcbiAgICAgICAgICAgIHBvc2l0aW9uLm92ZXJsYXlZICE9PSAnY2VudGVyJyAmJlxuICAgICAgICAgICAgcG9zaXRpb24ub3ZlcmxheVggPT09IHBvc2l0aW9uLm9yaWdpblhcbiAgICAgICAgKSB7XG4gICAgICAgICAgICB0aGlzLl9hcnJvd0NsYXNzZXMgPVxuICAgICAgICAgICAgICAgIGBmZC1wb3BvdmVyX19ib2R5LS0ke3Bvc2l0aW9uLm92ZXJsYXlZID09PSAndG9wJyA/ICdiZWxvdycgOiAnYWJvdmUnfWAgK1xuICAgICAgICAgICAgICAgIGAgZmQtcG9wb3Zlcl9fYm9keS0tYXJyb3ctJHtwb3NpdGlvbi5vdmVybGF5WX1gICtcbiAgICAgICAgICAgICAgICBgIGZkLXBvcG92ZXJfX2JvZHktLWFycm93LXgtJHtwb3NpdGlvbi5vcmlnaW5YfSBgO1xuICAgICAgICB9IGVsc2UgaWYgKFxuICAgICAgICAgICAgcG9zaXRpb24ub3ZlcmxheVggIT09IHBvc2l0aW9uLm9yaWdpblggJiZcbiAgICAgICAgICAgIHBvc2l0aW9uLm92ZXJsYXlYICE9PSAnY2VudGVyJyAmJlxuICAgICAgICAgICAgcG9zaXRpb24ub3JpZ2luWCAhPT0gJ2NlbnRlcicgJiZcbiAgICAgICAgICAgIHBvc2l0aW9uLm9yaWdpblkgPT09IHBvc2l0aW9uLm92ZXJsYXlZXG4gICAgICAgICkge1xuICAgICAgICAgICAgbGV0IG92ZXJsYXlYID0gcG9zaXRpb24ub3ZlcmxheVg7XG4gICAgICAgICAgICBpZiAocnRsID09PSAncnRsJykge1xuICAgICAgICAgICAgICAgIG92ZXJsYXlYID0gcG9zaXRpb24ub3ZlcmxheVggPT09ICdlbmQnID8gJ3N0YXJ0JyA6ICdlbmQnO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLl9hcnJvd0NsYXNzZXMgPVxuICAgICAgICAgICAgICAgIGBmZC1wb3BvdmVyX19ib2R5LS0ke292ZXJsYXlYID09PSAnc3RhcnQnID8gJ2FmdGVyJyA6ICdiZWZvcmUnfWAgK1xuICAgICAgICAgICAgICAgIGAgZmQtcG9wb3Zlcl9fYm9keS0tYXJyb3ctJHtvdmVybGF5WCA9PT0gJ3N0YXJ0JyA/ICdsZWZ0JyA6ICdyaWdodCd9YCArXG4gICAgICAgICAgICAgICAgYCBmZC1wb3BvdmVyX19ib2R5LS1hcnJvdy15LSR7cG9zaXRpb24ub3JpZ2luWX0gYDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuX2Fycm93Q2xhc3NlcyA9ICdmZC1wb3BvdmVyX19ib2R5LS1uby1hcnJvdyc7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGRldGVjdENoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWZbJ2Rlc3Ryb3llZCddKSB7XG4gICAgICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9mb2N1c0ZpcnN0VGFiYmFibGVFbGVtZW50KCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5fZm9jdXNBdXRvQ2FwdHVyZSkge1xuICAgICAgICAgICAgdGhpcy5fY2RrVHJhcEZvY3VzLmZvY3VzVHJhcC5mb2N1c0ZpcnN0VGFiYmFibGVFbGVtZW50KCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgY2xhc3M9XCJmZC1wb3BvdmVyX19ib2R5IGZkLXBvcG92ZXJfX2JvZHktLXN0YXRpY1wiXG4gICAgW2NsYXNzLmZkLXBvcG92ZXJfX2JvZHktLW5vLWFycm93XT1cIl9ub0Fycm93XCJcbiAgICBbY2xhc3NdPVwiX2Fycm93Q2xhc3NlcyArIChfYWRkaXRpb25hbEJvZHlDbGFzcyB8fCAnJylcIlxuICAgIFtjZGtUcmFwRm9jdXNdPVwiX2ZvY3VzVHJhcHBlZFwiXG4gICAgW3N0eWxlXT1cIl9tYXJnaW5TdHlsZVwiXG4gICAgW3N0eWxlLm1heC13aWR0aC5weF09XCJfbWF4V2lkdGhcIlxuICAgIFtzdHlsZS5taW4td2lkdGgucHhdPVwiX3BvcG92ZXJCb2R5TWluV2lkdGhcIlxuICAgIFtzdHlsZS53aWR0aC5weF09XCJfcG9wb3ZlckJvZHlXaWR0aFwiXG4gICAgW2F0dHIucm9sZV09XCJfYm9keVJvbGVcIlxuICAgIFthdHRyLmlkXT1cIl9ib2R5SWRcIlxuPlxuICAgIDxkaXZcbiAgICAgICAgZmQtc2Nyb2xsYmFyXG4gICAgICAgIGNsYXNzPVwiZmQtcG9wb3Zlcl9fd3JhcHBlclwiXG4gICAgICAgIFtvdmVycmlkZVRhYmluZGV4XT1cIl90YWJiYWJsZVNjcm9sbGJhclwiXG4gICAgICAgICpuZ0lmPVwiIV9kaXNhYmxlU2Nyb2xsYmFyOyBlbHNlIHJlbmRlcmVyXCJcbiAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJyZW5kZXJlclwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjcmVuZGVyZXI+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2ZkLXBvcG92ZXItYm9keS1oZWFkZXJdXCI+PC9uZy1jb250ZW50PlxuXG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2ZkLXBvcG92ZXItYm9keS1zdWJoZWFkZXJdXCI+PC9uZy1jb250ZW50PlxuXG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuXG4gICAge3sgdGV4dCB9fVxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIl90ZW1wbGF0ZVRvRGlzcGxheVwiPjwvbmctY29udGFpbmVyPlxuXG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2ZkLXBvcG92ZXItYm9keS1mb290ZXJdXCI+PC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
117
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci1ib2R5LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9zcmMvbGliL3BvcG92ZXIvcG9wb3Zlci1ib2R5L3BvcG92ZXItYm9keS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvc3JjL2xpYi9wb3BvdmVyL3BvcG92ZXItYm9keS9wb3BvdmVyLWJvZHkuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNILHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixZQUFZLEVBRVosU0FBUyxFQUNULGlCQUFpQixFQUNwQixNQUFNLGVBQWUsQ0FBQztBQUd2QixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWpELE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFHL0IsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxzQkFBc0IsRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDOzs7Ozs7QUFFaEg7Ozs7Ozs7O0dBUUc7QUFTSCxNQUFNLE9BQU8sb0JBQW9CO0lBcUQ3Qiw2QkFBNkI7SUFFN0IsZ0JBQWdCLENBQUMsS0FBb0I7UUFDakMsSUFBSSxPQUFPLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxNQUFNLENBQUMsSUFBSSxJQUFJLENBQUMsaUJBQWlCLEVBQUU7WUFDNUQsMERBQTBEO1lBQzFELEtBQUssQ0FBQyxlQUFlLEVBQUUsQ0FBQztZQUN4QixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO1NBQ3ZCO0lBQ0wsQ0FBQztJQUVELGNBQWM7SUFDZCxZQUNhLFdBQXVCLEVBQ3hC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O1lBQ3hCLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxDQUFDLHlCQUF5QixFQUFFLENBQUM7U0FDNUQ7SUFDTCxDQUFDOztpSEF6SFEsb0JBQW9CO3FHQUFwQixvQkFBb0Isd0dBRmxCLENBQUMsK0JBQStCLENBQUMsRUFBRSxrQkFBa0IsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLHlFQVUvRCxZQUFZLGdEQzlDM0IsOGdDQWlDQTsyRkRLYSxvQkFBb0I7a0JBUmhDLFNBQVM7K0JBQ0ksaUJBQWlCLGlCQUVaLGlCQUFpQixDQUFDLElBQUksbUJBQ3BCLHVCQUF1QixDQUFDLE1BQU0sYUFFcEMsQ0FBQywrQkFBK0IsQ0FBQyxFQUFFLGtCQUFrQixFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7c0tBVzFFLGFBQWE7c0JBRFosU0FBUzt1QkFBQyxZQUFZO2dCQStDdkIsZ0JBQWdCO3NCQURmLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBIb3N0TGlzdGVuZXIsXG4gICAgVGVtcGxhdGVSZWYsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBDb25uZWN0aW9uUG9zaXRpb25QYWlyIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgRVNDQVBFIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcbmltcG9ydCB7IENka1RyYXBGb2N1cyB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcblxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBOdWxsYWJsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IEtleVV0aWwgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBDb250ZW50RGVuc2l0eU9ic2VydmVyLCBjb250ZW50RGVuc2l0eU9ic2VydmVyUHJvdmlkZXJzIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2NvbnRlbnQtZGVuc2l0eSc7XG5cbi8qKlxuICogQSBjb21wb25lbnQgdXNlZCB0byBlbmZvcmNlIGEgY2VydGFpbiBsYXlvdXQgZm9yIHRoZSBwb3BvdmVyLlxuICogYGBgaHRtbFxuICogPGZkLXBvcG92ZXI+XG4gKiAgICAgPGZkLXBvcG92ZXItY29udHJvbD5Db250cm9sIEVsZW1lbnQ8L2ZkLXBvcG92ZXItY29udHJvbD5cbiAqICAgICA8ZmQtcG9wb3Zlci1ib2R5PlBvcG92ZXIgQm9keTwvZmQtcG9wb3Zlci1ib2R5PlxuICogPC9mZC1wb3BvdmVyPlxuICogYGBgXG4gKi9cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmQtcG9wb3Zlci1ib2R5JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vcG9wb3Zlci1ib2R5LmNvbXBvbmVudC5odG1sJyxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHN0eWxlVXJsczogWycuL3BvcG92ZXItYm9keS5jb21wb25lbnQuc2NzcyddLFxuICAgIHByb3ZpZGVyczogW2NvbnRlbnREZW5zaXR5T2JzZXJ2ZXJQcm92aWRlcnMoeyBhbHdheXNBZGRNb2RpZmllcnM6IHRydWUgfSldXG59KVxuZXhwb3J0IGNsYXNzIFBvcG92ZXJCb2R5Q29tcG9uZW50IHtcbiAgICAvKiogV2hldGhlciB0byB3cmFwIGNvbnRlbnQgd2l0aCBmZC1zY3JvbGxiYXIgZGlyZWN0aXZlLiAqL1xuICAgIF9kaXNhYmxlU2Nyb2xsYmFyID0gZmFsc2U7XG5cbiAgICAvKiogU2hvdWxkIGZkLXNjcm9sbGJhciBoYXZlIHRhYmluZGV4Ki9cbiAgICBfdGFiYmFibGVTY3JvbGxiYXIgPSB0cnVlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkKENka1RyYXBGb2N1cylcbiAgICBfY2RrVHJhcEZvY3VzOiBDZGtUcmFwRm9jdXM7XG5cbiAgICAvKiogV2hldGhlciB0aGUgcG9wb3ZlciBzaG91bGQgaGF2ZSBhbiBhcnJvdy4gKi9cbiAgICBfbm9BcnJvdyA9IHRydWU7XG5cbiAgICAvKiogV2hldGhlciB0aGUgcG9wb3ZlciBjb250YWluZXIgbmVlZHMgYW4gZXh0cmEgY2xhc3MgZm9yIHN0eWxpbmcuICovXG4gICAgX2FkZGl0aW9uYWxCb2R5Q2xhc3M6IE51bGxhYmxlPHN0cmluZz47XG5cbiAgICAvKiogV2hldGhlciB0aGUgcG9wb3ZlciBzaG91bGQgYmUgZm9jdXNUcmFwcGVkLiAqL1xuICAgIF9mb2N1c1RyYXBwZWQgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIFdoZXRoZXIgdGhlIHBvcG92ZXIgc2hvdWxkIGF1dG9tYXRpY2FsbHkgbW92ZSBmb2N1cyBpbnRvIHRoZSB0cmFwcGVkIHJlZ2lvbiB1cG9uXG4gICAgICogaW5pdGlhbGl6YXRpb24gYW5kIHJldHVybiBmb2N1cyB0byB0aGUgcHJldmlvdXMgYWN0aXZlRWxlbWVudCB1cG9uIGRlc3RydWN0aW9uLlxuICAgICAqL1xuICAgIF9mb2N1c0F1dG9DYXB0dXJlID0gZmFsc2U7XG5cbiAgICAvKiogQGhpZGRlbiBQcm9wZXJ0eSBiaW5kIHRvIHBvcG92ZXIncyBib2R5ICovXG4gICAgX3BvcG92ZXJCb2R5V2lkdGg6IG51bWJlcjtcblxuICAgIC8qKiBAaGlkZGVuIFByb3BlcnR5IGJpbmQgdG8gcG9wb3ZlcidzIGJvZHkgKi9cbiAgICBfcG9wb3ZlckJvZHlNaW5XaWR0aDogbnVtYmVyO1xuXG4gICAgLyoqIEBoaWRkZW4gUHJvcGVydHkgYmluZCB0byBwb3BvdmVyJ3MgYm9keSAqL1xuICAgIF9tYXhXaWR0aDogTnVsbGFibGU8bnVtYmVyPjtcblxuICAgIC8qKiBAaGlkZGVuIFByb3BlcnR5IGJpbmQgdG8gcG9wb3ZlcidzIGJvZHkgKi9cbiAgICBfY2xvc2VPbkVzY2FwZUtleSA9IGZhbHNlO1xuXG4gICAgLyoqIENsYXNzZXMgYWRkZWQgdG8gYXJyb3cgZWxlbWVudCAqL1xuICAgIF9hcnJvd0NsYXNzZXMgPSAnJztcblxuICAgIC8qKiBBZGRpdGlvbmFsIHN0eWxlIHRvIHB1dCBtYXJnaW4gaW50byBib2R5IGNvbXBvbmVudCwgdG8gZ2l2ZSBhIHBsYWNlIGZvciBhcnJvdyAqL1xuICAgIF9tYXJnaW5TdHlsZTogTnVsbGFibGU8c3RyaW5nPiA9IG51bGw7XG5cbiAgICAvKiogQGhpZGRlbiB0ZXh0IHJlbmRlcmVkIGluc2lkZSBwb3BvdmVyJ3MgYm9keSAqL1xuICAgIHRleHQ6IE51bGxhYmxlPHN0cmluZz4gPSBudWxsO1xuXG4gICAgLyoqIEBoaWRkZW4gdGVtcGxhdGUgcmVuZGVyZWQgaW5zaWRlIHBvcG92ZXIncyBib2R5ICovXG4gICAgX3RlbXBsYXRlVG9EaXNwbGF5OiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gICAgLyoqIENsb3NlIGV2ZW50IGZyb20gcG9wb3ZlciBib2R5ICovXG4gICAgb25DbG9zZSA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICAvKiogSGFuZGxlciBlc2NhcGUga2V5ZG93biAqL1xuICAgIEBIb3N0TGlzdGVuZXIoJ2tleXVwJywgWyckZXZlbnQnXSlcbiAgICBib2R5S2V5dXBIYW5kbGVyKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmIChLZXlVdGlsLmlzS2V5Q29kZShldmVudCwgRVNDQVBFKSAmJiB0aGlzLl9jbG9zZU9uRXNjYXBlS2V5KSB7XG4gICAgICAgICAgICAvLyBJbiBjYXNlIGlmIHBvcG92ZXIgYmVsb25ncyB0byB0aGUgZWxlbWVudCBpbnNpZGUgZGlhbG9nXG4gICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgIHRoaXMub25DbG9zZS5uZXh0KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICByZWFkb25seSBfZWxlbWVudFJlZjogRWxlbWVudFJlZixcbiAgICAgICAgcHJpdmF0ZSBfY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgICByZWFkb25seSBfY29udGVudERlbnNpdHlPYnNlcnZlcjogQ29udGVudERlbnNpdHlPYnNlcnZlclxuICAgICkge31cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX3NldEFycm93U3R5bGVzKHBvc2l0aW9uOiBDb25uZWN0aW9uUG9zaXRpb25QYWlyLCBydGw6ICdydGwnIHwgJ2x0cicpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuX25vQXJyb3cpIHtcbiAgICAgICAgICAgIHRoaXMuX2Fycm93Q2xhc3NlcyA9ICcnO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgcG9zaXRpb24ub3ZlcmxheVkgIT09IHBvc2l0aW9uLm9yaWdpblkgJiZcbiAgICAgICAgICAgIHBvc2l0aW9uLm9yaWdpblkgIT09ICdjZW50ZXInICYmXG4gICAgICAgICAgICBwb3NpdGlvbi5vdmVybGF5WSAhPT0gJ2NlbnRlcicgJiZcbiAgICAgICAgICAgIHBvc2l0aW9uLm92ZXJsYXlYID09PSBwb3NpdGlvbi5vcmlnaW5YXG4gICAgICAgICkge1xuICAgICAgICAgICAgdGhpcy5fYXJyb3dDbGFzc2VzID1cbiAgICAgICAgICAgICAgICBgZmQtcG9wb3Zlcl9fYm9keS0tJHtwb3NpdGlvbi5vdmVybGF5WSA9PT0gJ3RvcCcgPyAnYmVsb3cnIDogJ2Fib3ZlJ31gICtcbiAgICAgICAgICAgICAgICBgIGZkLXBvcG92ZXJfX2JvZHktLWFycm93LSR7cG9zaXRpb24ub3ZlcmxheVl9YCArXG4gICAgICAgICAgICAgICAgYCBmZC1wb3BvdmVyX19ib2R5LS1hcnJvdy14LSR7cG9zaXRpb24ub3JpZ2luWH0gYDtcbiAgICAgICAgfSBlbHNlIGlmIChcbiAgICAgICAgICAgIHBvc2l0aW9uLm92ZXJsYXlYICE9PSBwb3NpdGlvbi5vcmlnaW5YICYmXG4gICAgICAgICAgICBwb3NpdGlvbi5vdmVybGF5WCAhPT0gJ2NlbnRlcicgJiZcbiAgICAgICAgICAgIHBvc2l0aW9uLm9yaWdpblggIT09ICdjZW50ZXInICYmXG4gICAgICAgICAgICBwb3NpdGlvbi5vcmlnaW5ZID09PSBwb3NpdGlvbi5vdmVybGF5WVxuICAgICAgICApIHtcbiAgICAgICAgICAgIGxldCBvdmVybGF5WCA9IHBvc2l0aW9uLm92ZXJsYXlYO1xuICAgICAgICAgICAgaWYgKHJ0bCA9PT0gJ3J0bCcpIHtcbiAgICAgICAgICAgICAgICBvdmVybGF5WCA9IHBvc2l0aW9uLm92ZXJsYXlYID09PSAnZW5kJyA/ICdzdGFydCcgOiAnZW5kJztcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5fYXJyb3dDbGFzc2VzID1cbiAgICAgICAgICAgICAgICBgZmQtcG9wb3Zlcl9fYm9keS0tJHtvdmVybGF5WCA9PT0gJ3N0YXJ0JyA/ICdhZnRlcicgOiAnYmVmb3JlJ31gICtcbiAgICAgICAgICAgICAgICBgIGZkLXBvcG92ZXJfX2JvZHktLWFycm93LSR7b3ZlcmxheVggPT09ICdzdGFydCcgPyAnbGVmdCcgOiAncmlnaHQnfWAgK1xuICAgICAgICAgICAgICAgIGAgZmQtcG9wb3Zlcl9fYm9keS0tYXJyb3cteS0ke3Bvc2l0aW9uLm9yaWdpbll9IGA7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLl9hcnJvd0NsYXNzZXMgPSAnZmQtcG9wb3Zlcl9fYm9keS0tbm8tYXJyb3cnO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBkZXRlY3RDaGFuZ2VzKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuX2NoYW5nZURldGVjdG9yUmVmWydkZXN0cm95ZWQnXSkge1xuICAgICAgICAgICAgdGhpcy5fY2hhbmdlRGV0ZWN0b3JSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfZm9jdXNGaXJzdFRhYmJhYmxlRWxlbWVudCgpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuX2ZvY3VzQXV0b0NhcHR1cmUpIHtcbiAgICAgICAgICAgIHRoaXMuX2Nka1RyYXBGb2N1cy5mb2N1c1RyYXAuZm9jdXNGaXJzdFRhYmJhYmxlRWxlbWVudCgpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPGRpdlxuICAgIGNsYXNzPVwiZmQtcG9wb3Zlcl9fYm9keSBmZC1wb3BvdmVyX19ib2R5LS1zdGF0aWNcIlxuICAgIFtjbGFzcy5mZC1wb3BvdmVyX19ib2R5LS1uby1hcnJvd109XCJfbm9BcnJvd1wiXG4gICAgW2NsYXNzXT1cIl9hcnJvd0NsYXNzZXMgKyAoX2FkZGl0aW9uYWxCb2R5Q2xhc3MgfHwgJycpXCJcbiAgICBbY2RrVHJhcEZvY3VzXT1cIl9mb2N1c1RyYXBwZWRcIlxuICAgIFtzdHlsZV09XCJfbWFyZ2luU3R5bGVcIlxuICAgIFtzdHlsZS5tYXgtd2lkdGgucHhdPVwiX21heFdpZHRoXCJcbiAgICBbc3R5bGUubWluLXdpZHRoLnB4XT1cIl9wb3BvdmVyQm9keU1pbldpZHRoXCJcbiAgICBbc3R5bGUud2lkdGgucHhdPVwiX3BvcG92ZXJCb2R5V2lkdGhcIlxuPlxuICAgIDxkaXZcbiAgICAgICAgZmQtc2Nyb2xsYmFyXG4gICAgICAgIGNsYXNzPVwiZmQtcG9wb3Zlcl9fd3JhcHBlclwiXG4gICAgICAgIFtvdmVycmlkZVRhYmluZGV4XT1cIl90YWJiYWJsZVNjcm9sbGJhclwiXG4gICAgICAgICpuZ0lmPVwiIV9kaXNhYmxlU2Nyb2xsYmFyOyBlbHNlIHJlbmRlcmVyXCJcbiAgICA+XG4gICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJyZW5kZXJlclwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuPC9kaXY+XG5cbjxuZy10ZW1wbGF0ZSAjcmVuZGVyZXI+XG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2ZkLXBvcG92ZXItYm9keS1oZWFkZXJdXCI+PC9uZy1jb250ZW50PlxuXG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2ZkLXBvcG92ZXItYm9keS1zdWJoZWFkZXJdXCI+PC9uZy1jb250ZW50PlxuXG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuXG4gICAge3sgdGV4dCB9fVxuXG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIl90ZW1wbGF0ZVRvRGlzcGxheVwiPjwvbmctY29udGFpbmVyPlxuXG4gICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2ZkLXBvcG92ZXItYm9keS1mb290ZXJdXCI+PC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -26,9 +26,9 @@ export class PopoverContainerDirective {
26
26
  this._destroy$.complete();
27
27
  }
28
28
  }
29
- PopoverContainerDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PopoverContainerDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
30
- PopoverContainerDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.8", type: PopoverContainerDirective, selector: "[fdPopoverContainer]", ngImport: i0 });
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PopoverContainerDirective, decorators: [{
29
+ PopoverContainerDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: PopoverContainerDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
30
+ PopoverContainerDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.1.1", type: PopoverContainerDirective, selector: "[fdPopoverContainer]", ngImport: i0 });
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: PopoverContainerDirective, decorators: [{
32
32
  type: Directive,
33
33
  args: [{
34
34
  selector: '[fdPopoverContainer]'
@@ -30,9 +30,9 @@ export class PopoverControlComponent {
30
30
  }
31
31
  }
32
32
  }
33
- PopoverControlComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PopoverControlComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
34
- PopoverControlComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: PopoverControlComponent, selector: "fd-popover-control", ngImport: i0, template: "<ng-content></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PopoverControlComponent, decorators: [{
33
+ PopoverControlComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: PopoverControlComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
34
+ PopoverControlComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: PopoverControlComponent, selector: "fd-popover-control", ngImport: i0, template: "<ng-content></ng-content>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: PopoverControlComponent, decorators: [{
36
36
  type: Component,
37
37
  args: [{ selector: 'fd-popover-control', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-content></ng-content>\n" }]
38
38
  }], ctorParameters: function () { return [{ type: i0.ElementRef }]; } });
@@ -74,9 +74,9 @@ export class PopoverMobileComponent extends MobileModeBase {
74
74
  });
75
75
  }
76
76
  }
77
- PopoverMobileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PopoverMobileComponent, deps: [{ token: i0.ElementRef }, { token: i1.DialogService }, { token: i0.ChangeDetectorRef }, { token: POPOVER_COMPONENT }, { token: MOBILE_MODE_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Component });
78
- PopoverMobileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: PopoverMobileComponent, selector: "fd-popover-mobile", viewQueries: [{ propertyName: "_dialogTemplate", first: true, predicate: ["dialogTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #dialogTemplate>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-header>\n <h1 fd-title [id]=\"titleId\">{{ title }}</h1>\n <button fd-dialog-close-button *ngIf=\"this.mobileConfig.hasCloseButton\" (click)=\"close()\"></button>\n </fd-dialog-header>\n\n <fd-dialog-body>\n <ng-container *ngTemplateOutlet=\"viewBody\"></ng-container>\n </fd-dialog-body>\n\n <fd-dialog-footer *ngIf=\"viewFooter\">\n <ng-container *ngTemplateOutlet=\"viewFooter\"></ng-container>\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i1.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i1.DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "component", type: i1.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i1.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "component", type: i1.DialogCloseButtonComponent, selector: "[fd-dialog-close-button]", inputs: ["mobile", "title"] }, { kind: "component", type: i3.TitleComponent, selector: "h1[fd-title], h2[fd-title], h3[fd-title], h4[fd-title], h5[fd-title], h6[fd-title]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
79
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PopoverMobileComponent, decorators: [{
77
+ PopoverMobileComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: PopoverMobileComponent, deps: [{ token: i0.ElementRef }, { token: i1.DialogService }, { token: i0.ChangeDetectorRef }, { token: POPOVER_COMPONENT }, { token: MOBILE_MODE_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Component });
78
+ PopoverMobileComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.1.1", type: PopoverMobileComponent, selector: "fd-popover-mobile", viewQueries: [{ propertyName: "_dialogTemplate", first: true, predicate: ["dialogTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #dialogTemplate>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-header>\n <h1 fd-title [id]=\"titleId\">{{ title }}</h1>\n <button fd-dialog-close-button *ngIf=\"this.mobileConfig.hasCloseButton\" (click)=\"close()\"></button>\n </fd-dialog-header>\n\n <fd-dialog-body>\n <ng-container *ngTemplateOutlet=\"viewBody\"></ng-container>\n </fd-dialog-body>\n\n <fd-dialog-footer *ngIf=\"viewFooter\">\n <ng-container *ngTemplateOutlet=\"viewFooter\"></ng-container>\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i1.DialogComponent, selector: "fd-dialog", inputs: ["class", "dialogRef", "dialogConfig"] }, { kind: "component", type: i1.DialogBodyComponent, selector: "fd-dialog-body" }, { kind: "component", type: i1.DialogFooterComponent, selector: "fd-dialog-footer" }, { kind: "component", type: i1.DialogHeaderComponent, selector: "fd-dialog-header" }, { kind: "component", type: i1.DialogCloseButtonComponent, selector: "[fd-dialog-close-button]", inputs: ["mobile", "title"] }, { kind: "component", type: i3.TitleComponent, selector: "h1[fd-title], h2[fd-title], h3[fd-title], h4[fd-title], h5[fd-title], h6[fd-title]", inputs: ["headerSize", "wrap"], exportAs: ["fd-title"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
79
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: PopoverMobileComponent, decorators: [{
80
80
  type: Component,
81
81
  args: [{ selector: 'fd-popover-mobile', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, template: "<ng-template let-dialog let-dialogConfig=\"dialogConfig\" #dialogTemplate>\n <fd-dialog [dialogConfig]=\"dialogConfig\" [dialogRef]=\"dialog\">\n <fd-dialog-header>\n <h1 fd-title [id]=\"titleId\">{{ title }}</h1>\n <button fd-dialog-close-button *ngIf=\"this.mobileConfig.hasCloseButton\" (click)=\"close()\"></button>\n </fd-dialog-header>\n\n <fd-dialog-body>\n <ng-container *ngTemplateOutlet=\"viewBody\"></ng-container>\n </fd-dialog-body>\n\n <fd-dialog-footer *ngIf=\"viewFooter\">\n <ng-container *ngTemplateOutlet=\"viewFooter\"></ng-container>\n </fd-dialog-footer>\n </fd-dialog>\n</ng-template>\n" }]
82
82
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.DialogService }, { type: i0.ChangeDetectorRef }, { type: undefined, decorators: [{
@@ -7,10 +7,10 @@ import { PopoverMobileComponent } from './popover-mobile.component';
7
7
  import * as i0 from "@angular/core";
8
8
  export class PopoverMobileModule {
9
9
  }
10
- PopoverMobileModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PopoverMobileModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
- PopoverMobileModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: PopoverMobileModule, declarations: [PopoverMobileComponent], imports: [CommonModule, DialogModule, ButtonModule], exports: [PopoverMobileComponent] });
12
- PopoverMobileModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PopoverMobileModule, providers: [DynamicComponentService], imports: [CommonModule, DialogModule, ButtonModule] });
13
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PopoverMobileModule, decorators: [{
10
+ PopoverMobileModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: PopoverMobileModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
11
+ PopoverMobileModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.1.1", ngImport: i0, type: PopoverMobileModule, declarations: [PopoverMobileComponent], imports: [CommonModule, DialogModule, ButtonModule], exports: [PopoverMobileComponent] });
12
+ PopoverMobileModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: PopoverMobileModule, providers: [DynamicComponentService], imports: [CommonModule, DialogModule, ButtonModule] });
13
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: PopoverMobileModule, decorators: [{
14
14
  type: NgModule,
15
15
  args: [{
16
16
  declarations: [PopoverMobileComponent],
@@ -332,8 +332,6 @@ export class PopoverService extends BasePopoverClass {
332
332
  body._tabbableScrollbar = this.tabbableScrollbar;
333
333
  body._templateToDisplay = this.templateContent;
334
334
  body._closeOnEscapeKey = this.closeOnEscapeKey;
335
- body._bodyRole = this._bodyRole;
336
- body._bodyId = this._bodyId;
337
335
  this._detectChanges();
338
336
  }
339
337
  /** @hidden */
@@ -364,13 +362,13 @@ export class PopoverService extends BasePopoverClass {
364
362
  }
365
363
  }
366
364
  }
367
- PopoverService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PopoverService, deps: [{ token: i1.Overlay }, { token: i0.Renderer2 }, { token: i1.ViewportRuler }, { token: i0.Injector }, { token: i2.RtlService, optional: true }, { token: i3.PopoverContainerDirective, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
368
- PopoverService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PopoverService });
369
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PopoverService, decorators: [{
365
+ PopoverService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: PopoverService, deps: [{ token: i1.Overlay }, { token: i0.Renderer2 }, { token: i1.ViewportRuler }, { token: i0.Injector }, { token: i2.RtlService, optional: true }, { token: i3.PopoverContainerDirective, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
366
+ PopoverService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: PopoverService });
367
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.1.1", ngImport: i0, type: PopoverService, decorators: [{
370
368
  type: Injectable
371
369
  }], ctorParameters: function () { return [{ type: i1.Overlay }, { type: i0.Renderer2 }, { type: i1.ViewportRuler }, { type: i0.Injector }, { type: i2.RtlService, decorators: [{
372
370
  type: Optional
373
371
  }] }, { type: i3.PopoverContainerDirective, decorators: [{
374
372
  type: Optional
375
373
  }] }]; } });
376
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvcG9wb3Zlci9wb3BvdmVyLXNlcnZpY2UvcG9wb3Zlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxVQUFVLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQWlDLE1BQU0sZUFBZSxDQUFDO0FBQ3JILE9BQU8sRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEUsT0FBTyxFQUdILE9BQU8sRUFDUCxhQUFhLEVBRWIsYUFBYSxFQUVoQixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFBRSxLQUFLLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXBGLE9BQU8sRUFBRSxVQUFVLEVBQVksS0FBSyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDekUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRW5GLE9BQU8sRUFBRSxnQkFBZ0IsRUFBaUIsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQzs7Ozs7QUFFN0YsTUFBTSxhQUFhLEdBQUcsUUFBUSxDQUFDO0FBUy9CLE1BQU0sT0FBTyxjQUFlLFNBQVEsZ0JBQWdCO0lBcUNoRCxjQUFjO0lBQ2QsWUFDWSxRQUFpQixFQUNqQixTQUFvQixFQUNwQixjQUE2QixFQUM3QixTQUFtQixFQUNQLFdBQXVCLEVBQ2QsaUJBQTRDO1FBRXpFLEtBQUssRUFB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LEVBQUU7WUFDeEIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQzFDO0lBQ0wsQ0FBQztJQUVELGNBQWM7SUFDTiwwQkFBMEIsQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJO1FBQ3RELElBQUksZ0JBQWdCLElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQzNDLElBQUksQ0FBQyxrQkFBa0IsR0FBZ0IsUUFBUSxDQUFDLGFBQWEsQ0FBQztZQUM5RCxJQUFJLENBQUMsZUFBZSxFQUFFLEVBQUUsMEJBQTBCLEVBQUUsQ0FBQztTQUN4RDtJQUNMLENBQUM7SUFFRCxjQUFjO0lBQ04saUNBQWlDLENBQUMsZ0JBQWdCLEdBQUcsSUFBSTtRQUM3RCxJQUFJLGdCQUFnQixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDdEUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ25DO0lBQ0wsQ0FBQzs7MkdBL2JRLGNBQWM7K0dBQWQsY0FBYzsyRkFBZCxjQUFjO2tCQUQxQixVQUFVOzswQkE0Q0YsUUFBUTs7MEJBQ1IsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVsZW1lbnRSZWYsIEluamVjdGFibGUsIEluamVjdG9yLCBPcHRpb25hbCwgUmVuZGVyZXIyLCBUZW1wbGF0ZVJlZiwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsLCBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHtcbiAgICBDb25uZWN0ZWRQb3NpdGlvbixcbiAgICBGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uU3RyYXRlZ3ksXG4gICAgT3ZlcmxheSxcbiAgICBPdmVybGF5Q29uZmlnLFxuICAgIE92ZXJsYXlSZWYsXG4gICAgVmlld3BvcnRSdWxlcixcbiAgICBDb25uZWN0ZWRPdmVybGF5UG9zaXRpb25DaGFuZ2Vcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgbWVyZ2UsIE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIHN0YXJ0V2l0aCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBSdGxTZXJ2aWNlLCBOdWxsYWJsZSwgaXNPZGQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBHZXREZWZhdWx0UG9zaXRpb24sIFBvcG92ZXJQb3NpdGlvbiB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9zaGFyZWQnO1xuXG5pbXBvcnQgeyBCYXNlUG9wb3ZlckNsYXNzLCBUcmlnZ2VyQ29uZmlnIH0gZnJvbSAnLi4vYmFzZS9iYXNlLXBvcG92ZXIuY2xhc3MnO1xuaW1wb3J0IHsgUG9wb3ZlckJvZHlDb21wb25lbnQgfSBmcm9tICcuLi9wb3BvdmVyLWJvZHkvcG9wb3Zlci1ib2R5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQb3BvdmVyQ29udGFpbmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vcG9wb3Zlci1jb250YWluZXIvcG9wb3Zlci1jb250YWluZXIuZGlyZWN0aXZlJztcblxuY29uc3QgTUFYX0JPRFlfU0laRSA9IDk5OTk5OTk5O1xuXG5leHBvcnQgaW50ZXJmYWNlIFBvcG92ZXJUZW1wbGF0ZSB7XG4gICAgY29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmO1xuICAgIHBvcG92ZXJCb2R5OiBQb3BvdmVyQm9keUNvbXBvbmVudDtcbiAgICB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pjtcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFBvcG92ZXJTZXJ2aWNlIGV4dGVuZHMgQmFzZVBvcG92ZXJDbGFzcyB7XG4gICAgLyoqIFN0cmluZyBjb250ZW50IGRpc3BsYXllZCBpbnNpZGUgcG9wb3ZlciBib2R5ICovXG4gICAgc3RyaW5nQ29udGVudDogTnVsbGFibGU8c3RyaW5nPjtcblxuICAgIC8qKiBUZW1wbGF0ZSBjb250ZW50IGRpc3BsYXllZCBpbnNpZGUgcG9wb3ZlciBib2R5ICovXG4gICAgdGVtcGxhdGVDb250ZW50OiBOdWxsYWJsZTxUZW1wbGF0ZVJlZjxhbnk+PjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX29uTG9hZCA9IG5ldyBTdWJqZWN0PEVsZW1lbnRSZWY+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2V2ZW50UmVmOiAoKCkgPT4gdm9pZClbXSA9IFtdO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9vdmVybGF5UmVmOiBPdmVybGF5UmVmO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9yZWZyZXNoJDogT2JzZXJ2YWJsZTxib29sZWFuIHwgdm9pZD47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX3BsYWNlbWVudFJlZnJlc2gkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfcG9wb3ZlckJvZHk6IFBvcG92ZXJCb2R5Q29tcG9uZW50O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF90cmlnZ2VyRWxlbWVudDogRWxlbWVudFJlZjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfbGFzdEFjdGl2ZUVsZW1lbnQ6IEhUTUxFbGVtZW50O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF90ZW1wbGF0ZURhdGE6IE51bGxhYmxlPFBvcG92ZXJUZW1wbGF0ZT47XG5cbiAgICAvKiogQW4gUnhKUyBTdWJqZWN0IHRoYXQgd2lsbCBraWxsIHRoZSBkYXRhIHN0cmVhbSB1cG9uIGNvbXBvbmVudOKAmXMgZGVzdHJ1Y3Rpb24gKGZvciB1bnN1YnNjcmliaW5nKSAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9vbkRlc3Ryb3kkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgX292ZXJsYXk6IE92ZXJsYXksXG4gICAgICAgIHByaXZhdGUgX3JlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgICAgIHByaXZhdGUgX3ZpZXdwb3J0UnVsZXI6IFZpZXdwb3J0UnVsZXIsXG4gICAgICAgIHByaXZhdGUgX2luamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfcnRsU2VydmljZTogUnRsU2VydmljZSxcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSByZWFkb25seSBfcG9wb3ZlckNvbnRhaW5lcjogUG9wb3ZlckNvbnRhaW5lckRpcmVjdGl2ZVxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuXG4gICAgICAgIC8qKiBNZXJnZSBvYnNlcnZhYmxlcyAtIGNsb3NlIG9yIGRlc3Ryb3kgKi9cbiAgICAgICAgdGhpcy5fcmVmcmVzaCQgPSBtZXJnZSh0aGlzLmlzT3BlbkNoYW5nZSwgdGhpcy5fb25EZXN0cm95JCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogTWV0aG9kIGluaXRpYWxpc2luZyB0aGUgcG9wb3ZlciBzZXJ2aWNlIC0gc2hvdWxkIGJlIGNhbGxlZCwgYWZ0ZXIgdmlldyBpcyBpbml0aWFsaXNlZCwgcGFyYW1zOlxuICAgICAqIC0gdHJpZ2dlckVsZW1lbnQgLSBlbGVtZW50LCB3aGljaCBpcyBlcXVpdmFsZW50IGZvciBjZGtPdmVybGF5T3JpZ2luLCBvciBmZC1wb3BvdmVyLWNvbnRyb2wsXG4gICAgICogICBieSBkZWZhdWx0IHRvIHRoaXMgZWxlbWVudCB0aGUgcG9wb3ZlciBib2R5IHdpbGwgbGJlIGFwcGVuZGVkIGFuZCBldmVudHMgb24gdGhpcyBlbGVtZW50IHdpbGwgdHJpZ2dlclxuICAgICAqICAgcG9wb3ZlcidzICB0b2dnbGVcbiAgICAgKiAtIGNvbmZpZyAtIGNvbmZpZ3VyYXRpb24gb2JqZWN0IC0gaW4gdGhpcyBjYXNlIHRoZSBpbnRlbnRpb24gaXMgdG8gdXNlIGluaGVyaXRhbmNlIG9mIEJhc2VQb3BvdmVyQ2xhc3MgaW4gY29tcG9uZW50XG4gICAgICogLSB0ZW1wbGF0ZURhdGEgLSBpbiBjYXNlIG9mIGhhdmluZyBhbHJlYWR5IFBvcG92ZXJCb2R5Q29tcG9uZW50LCB0aGVyZSBpcyB3YXkgdG8gcGFzcyBjb250YWluZXIsIHRlbXBsYXRlIGNvbnRhaW5pbmdcbiAgICAgKiAgIFBvcG92ZXJDb21wb25lbnQgYW5kIFBvcG92ZXJDb21wb25lbnQgaW5zdGFuY2VcbiAgICAgKi9cbiAgICBpbml0aWFsaXNlKHRyaWdnZXJFbGVtZW50OiBFbGVtZW50UmVmLCBjb25maWc/OiBCYXNlUG9wb3ZlckNsYXNzLCB0ZW1wbGF0ZURhdGE/OiBQb3BvdmVyVGVtcGxhdGUgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3RlbXBsYXRlRGF0YSA9IHRlbXBsYXRlRGF0YTtcbiAgICAgICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQgPSB0cmlnZ2VyRWxlbWVudDtcblxuICAgICAgICBpZiAoY29uZmlnKSB7XG4gICAgICAgICAgICB0aGlzLnJlZnJlc2hDb25maWd1cmF0aW9uKGNvbmZpZyk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9yZWZyZXNoVHJpZ2dlckxpc3RlbmVycygpO1xuXG4gICAgICAgIGlmICh0aGlzLmlzT3Blbikge1xuICAgICAgICAgICAgdGhpcy5vcGVuKCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJZiB3cmFwcGVyIGNvbnRhaW5lciBoZWlnaHQgY2hhbmdlcyBvdXRzaWRlLCByZWZyZXNoIHBvcG92ZXIgcG9zaXRpb24uXG4gICAgICAgIHRoaXMuX3BvcG92ZXJDb250YWluZXI/LnJlZnJlc2hQb3NpdGlvbiQucGlwZSh0YWtlVW50aWwodGhpcy5fcmVmcmVzaCQpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5yZWZyZXNoUG9zaXRpb24oKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIENsb3NlcyB0aGUgcG9wb3Zlci4gKi9cbiAgICBjbG9zZShmb2N1c0FjdGl2ZUVsZW1lbnQgPSB0cnVlKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl9vdmVybGF5UmVmKSB7XG4gICAgICAgICAgICB0aGlzLl9vdmVybGF5UmVmLmRpc3Bvc2UoKTtcblxuICAgICAgICAgICAgY29uc3QgcHJldlN0YXRlID0gdGhpcy5pc09wZW47XG4gICAgICAgICAgICB0aGlzLmlzT3BlbiA9IGZhbHNlO1xuICAgICAgICAgICAgaWYgKHByZXZTdGF0ZSAhPT0gdGhpcy5pc09wZW4pIHtcbiAgICAgICAgICAgICAgICB0aGlzLmlzT3BlbkNoYW5nZS5lbWl0KHRoaXMuaXNPcGVuKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5fZm9jdXNMYXN0QWN0aXZlRWxlbWVudEJlZm9yZU9wZW4oZm9jdXNBY3RpdmVFbGVtZW50KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBPcGVucyB0aGUgcG9wb3Zlci4gKi9cbiAgICBvcGVuKCk6IHZvaWQge1xuICAgICAgICBpZiAoKCF0aGlzLl9vdmVybGF5UmVmIHx8ICF0aGlzLl9vdmVybGF5UmVmLmhhc0F0dGFjaGVkKCkpICYmICF0aGlzLmRpc2FibGVkICYmIHRoaXMuX3RyaWdnZXJFbGVtZW50KSB7XG4gICAgICAgICAgICBjb25zdCBwb3NpdGlvbiA9IHRoaXMuX2dldFBvc2l0aW9uU3RyYXRlZ3koKTtcbiAgICAgICAgICAgIHRoaXMuX292ZXJsYXlSZWYgPSB0aGlzLl9vdmVybGF5LmNyZWF0ZSh0aGlzLl9nZXRPdmVybGF5Q29uZmlnKHBvc2l0aW9uKSk7XG5cbiAgICAgICAgICAgIGlmICh0aGlzLl90ZW1wbGF0ZURhdGEpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9hdHRhY2hUZW1wbGF0ZSgpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9hdHRhY2hCb2R5Q29tcG9uZW50KCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuX2xpc3RlbkZvclBvc2l0aW9uQ2hhbmdlKHBvc2l0aW9uLnBvc2l0aW9uQ2hhbmdlcyk7XG5cbiAgICAgICAgICAgIGlmICh0aGlzLmZpbGxDb250cm9sTW9kZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2xpc3Rlbk9uUmVzaXplKCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IHByZXZTdGF0ZSA9IHRoaXMuaXNPcGVuO1xuICAgICAgICAgICAgdGhpcy5pc09wZW4gPSB0cnVlO1xuICAgICAgICAgICAgaWYgKHByZXZTdGF0ZSAhPT0gdGhpcy5pc09wZW4pIHtcbiAgICAgICAgICAgICAgICB0aGlzLmlzT3BlbkNoYW5nZS5lbWl0KHRoaXMuaXNPcGVuKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5fZGV0ZWN0Q2hhbmdlcygpO1xuXG4gICAgICAgICAgICB0aGlzLl9saXN0ZW5PbkNsb3NlKCk7XG4gICAgICAgICAgICB0aGlzLl9saXN0ZW5Pbk91dENsaWNrcygpO1xuICAgICAgICAgICAgdGhpcy5fZm9jdXNGaXJzdFRhYmJhYmxlRWxlbWVudCgpO1xuICAgICAgICAgICAgdGhpcy5fb25Mb2FkLm5leHQodGhpcy5fZ2V0UG9wb3ZlckJvZHkoKS5fZWxlbWVudFJlZik7XG4gICAgICAgICAgICB0aGlzLl9vdmVybGF5UmVmLnVwZGF0ZVBvc2l0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogbWV0aG9kIHVwZGF0aW5nIHRlbXBsYXRlIG9yIHRleHQgaW5zaWRlIHJlbmRlcmVkIFBvcG92ZXJCb2R5ICovXG4gICAgdXBkYXRlQ29udGVudChzdHJpbmdDb250ZW50OiBOdWxsYWJsZTxzdHJpbmc+LCB0ZW1wbGF0ZUNvbnRlbnQ6IE51bGxhYmxlPFRlbXBsYXRlUmVmPGFueT4+KTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3RyaW5nQ29udGVudCA9IHN0cmluZ0NvbnRlbnQ7XG4gICAgICAgIHRoaXMudGVtcGxhdGVDb250ZW50ID0gdGVtcGxhdGVDb250ZW50O1xuICAgICAgICBpZiAodGhpcy5fZ2V0UG9wb3ZlckJvZHkoKSkge1xuICAgICAgICAgICAgdGhpcy5fcGFzc1ZhcmlhYmxlc1RvQm9keSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIFRvZ2dsZXMgdGhlIHBvcG92ZXIgb3BlbiBzdGF0ZSAqL1xuICAgIHRvZ2dsZShvcGVuQWN0aW9uID0gdHJ1ZSwgY2xvc2VBY3Rpb24gPSB0cnVlKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLmlzT3Blbikge1xuICAgICAgICAgICAgY2xvc2VBY3Rpb24gJiYgdGhpcy5jbG9zZSgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgb3BlbkFjdGlvbiAmJiB0aGlzLm9wZW4oKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIE1ldGhvZCBjYWxsZWQgdG8gY2hhbmdlIHBvc2l0aW9uIG9mIHBvcG92ZXIsXG4gICAgICogcmVjb21tZW5kZWQgdG8gYmUgdXNlZCBvbmx5IHdoZW4gcG9wb3ZlciBpcyBvcGVuZWQsIG90aGVyd2lzZSBjaGFuZ2UgcG9zaXRpb24gb3IgY2RrUGxhY2VtZW50XG4gICAgICovXG4gICAgYXBwbHlOZXdQb3NpdGlvbihwb3NpdGlvbnM6IENvbm5lY3RlZFBvc2l0aW9uW10pOiB2b2lkIHtcbiAgICAgICAgY29uc3QgcmVmUG9zaXRpb24gPSB0aGlzLl9nZXRQb3NpdGlvblN0cmF0ZWd5KHBvc2l0aW9ucyk7XG4gICAgICAgIHRoaXMuX2xpc3RlbkZvclBvc2l0aW9uQ2hhbmdlKHJlZlBvc2l0aW9uLnBvc2l0aW9uQ2hhbmdlcyk7XG4gICAgICAgIHRoaXMuX292ZXJsYXlSZWYudXBkYXRlUG9zaXRpb25TdHJhdGVneShyZWZQb3NpdGlvbik7XG4gICAgfVxuXG4gICAgLyoqIE1ldGhvZCBjYWxsZWQgdG8gcmVmcmVzaCBwb3NpdGlvbiBvZiBvcGVuZWQgcG9wb3ZlciAqL1xuICAgIHJlZnJlc2hQb3NpdGlvbigpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuX292ZXJsYXlSZWYpIHtcbiAgICAgICAgICAgIHRoaXMuX292ZXJsYXlSZWYudXBkYXRlUG9zaXRpb24oKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBFcXVpdmFsZW50IGZvciBuZ09uRGVzdHJveSBtZXRob2QsIHdoZXRoZXIgY29tcG9uZW50IGlzIGRlc3Ryb3llZCwgdGhpcyBtZXRob2Qgc2hvdWxkIGJlIGNhbGxlZCAqL1xuICAgIG9uRGVzdHJveSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fb25EZXN0cm95JC5uZXh0KCk7XG4gICAgICAgIHRoaXMuX29uRGVzdHJveSQuY29tcGxldGUoKTtcbiAgICAgICAgdGhpcy5fcmVtb3ZlVHJpZ2dlckxpc3RlbmVycygpO1xuICAgICAgICBpZiAodGhpcy5fb3ZlcmxheVJlZikge1xuICAgICAgICAgICAgdGhpcy5fb3ZlcmxheVJlZi5kZXRhY2goKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIE1ldGhvZCB0aGF0IHNldHMgY29uZmlndXJhdGlvbi9vcHRpb25zLCBpdCBkZXRlY3RzIGlmIHRoZXJlIGlzIHNvbWV0aGluZyBjaGFuZ2VkIGFuZCBvdmVyd3JpdGVzIHRoZW1cbiAgICAgKi9cbiAgICByZWZyZXNoQ29uZmlndXJhdGlvbihjb25maWc6IEJhc2VQb3BvdmVyQ2xhc3MpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgb25seUNoYW5nZWQgPSBPYmplY3Qua2V5cyhuZXcgQmFzZVBvcG92ZXJDbGFzcygpKS5maWx0ZXIoKGtleSkgPT4gdGhpc1trZXldICE9PSBjb25maWdba2V5XSk7XG5cbiAgICAgICAgaWYgKG9ubHlDaGFuZ2VkLmluY2x1ZGVzKCdpc09wZW4nKSkge1xuICAgICAgICAgICAgaWYgKGNvbmZpZy5pc09wZW4pIHtcbiAgICAgICAgICAgICAgICB0aGlzLm9wZW4oKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLyoqIFRPRE9cbiAgICAgICAgICogVGhpcyBvdmVycmlkaW5nIGlzIGRhbmdlcm91cyB0aGluZyBhbmQgbGVhZHMgdG8gdW5leHBlY3RlZCBiZWhhdmlvclxuICAgICAgICAgKiBXZSBoYXZlIHRvIGF2b2lkIHRoaXMuXG4gICAgICAgICAqL1xuICAgICAgICBvbmx5Q2hhbmdlZC5mb3JFYWNoKChrZXkpID0+ICh0aGlzW2tleV0gPSBjb25maWdba2V5XSkpO1xuXG4gICAgICAgIGlmIChvbmx5Q2hhbmdlZC5pbmNsdWRlcygndHJpZ2dlcnMnKSkge1xuICAgICAgICAgICAgdGhpcy5fcmVmcmVzaFRyaWdnZXJMaXN0ZW5lcnMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRoaXMgbWV0aG9kIGlzIGludGVuZGVkIHRvIGJlIGNhbGxlZCBpbiBvcmRlclxuICAgICAqIHRvIHBvc3Rwb25lIHRoZSBtYWluIGZ1bmN0aW9uYWxpdHkgYnV0IGJlIGFibGVcbiAgICAgKiB0byBlbmFibGUgaXQgYmFjayBpbiB0aGUgZnV0dXJlIGJ5IGluaXRpYWxpc2UoKVxuICAgICAqL1xuICAgIGRlYWN0aXZhdGUoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3JlbW92ZVRyaWdnZXJMaXN0ZW5lcnMoKTtcbiAgICB9XG5cbiAgICAvKiogUmVmcmVzaCBsaXN0ZW5lcnMgb24gdHJpZ2dlciBlbGVtZW50IGV2ZW50cyAqL1xuICAgIF9yZWZyZXNoVHJpZ2dlckxpc3RlbmVycygpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLl90cmlnZ2VyRWxlbWVudCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fcmVtb3ZlVHJpZ2dlckxpc3RlbmVycygpO1xuXG4gICAgICAgIGlmICh0aGlzLnRyaWdnZXJzPy5sZW5ndGgpIHtcbiAgICAgICAgICAgIHRoaXMuX25vcm1hbGl6ZVRyaWdnZXJzKCkuZm9yRWFjaCgodHJpZ2dlcikgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX2V2ZW50UmVmLnB1c2goXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyLmxpc3Rlbih0aGlzLl90cmlnZ2VyRWxlbWVudC5uYXRpdmVFbGVtZW50LCB0cmlnZ2VyLnRyaWdnZXIsIChldmVudDogRXZlbnQpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGNsb3NlQWN0aW9uID0gISF0cmlnZ2VyLmNsb3NlQWN0aW9uO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgb3BlbkFjdGlvbiA9ICEhdHJpZ2dlci5vcGVuQWN0aW9uO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy50b2dnbGUob3BlbkFjdGlvbiwgY2xvc2VBY3Rpb24pO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodHJpZ2dlci5zdG9wUHJvcGFnYXRpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudC5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBVcGRhdGVzIHRyaWdnZXIgZWxlbWVudCBhbmQgcmVmcmVzaGVzIHRoZSBsaXN0ZW5lcnMuXG4gICAgICogQHBhcmFtIHRyaWdnZXIgVHJpZ2dlciBlbGVtZW50IHJlZi5cbiAgICAgKi9cbiAgICB1cGRhdGVUcmlnZ2VyRWxlbWVudCh0cmlnZ2VyOiBFbGVtZW50UmVmKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50ID0gdHJpZ2dlcjtcbiAgICAgICAgdGhpcy5fcmVmcmVzaFRyaWdnZXJMaXN0ZW5lcnMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX25vcm1hbGl6ZVRyaWdnZXJzKCk6IFRyaWdnZXJDb25maWdbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLnRyaWdnZXJzLm1hcCgodHJpZ2dlciwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgdHJpZ2dlciA9PT0gJ29iamVjdCcgJiYgdHJpZ2dlci50cmlnZ2VyKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRyaWdnZXI7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IG9kZE51bWJlciA9IGlzT2RkKGluZGV4ICsgMSk7XG5cbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgdHJpZ2dlcixcbiAgICAgICAgICAgICAgICBvcGVuQWN0aW9uOiB0aGlzLnRyaWdnZXJzLmxlbmd0aCA9PT0gMSB8fCBvZGROdW1iZXIsXG4gICAgICAgICAgICAgICAgY2xvc2VBY3Rpb246IHRoaXMudHJpZ2dlcnMubGVuZ3RoID09PSAxIHx8ICFvZGROdW1iZXIsXG4gICAgICAgICAgICAgICAgc3RvcFByb3BhZ2F0aW9uOiBmYWxzZVxuICAgICAgICAgICAgfSBhcyBUcmlnZ2VyQ29uZmlnO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2dldE92ZXJsYXlDb25maWcocG9zaXRpb246IEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneSk6IE92ZXJsYXlDb25maWcge1xuICAgICAgICBjb25zdCBkaXJlY3Rpb24gPSB0aGlzLl9nZXREaXJlY3Rpb24oKTtcblxuICAgICAgICByZXR1cm4gbmV3IE92ZXJsYXlDb25maWcoe1xuICAgICAgICAgICAgZGlyZWN0aW9uLFxuICAgICAgICAgICAgZGlzcG9zZU9uTmF2aWdhdGlvbjogdGhpcy5jbG9zZU9uTmF2aWdhdGlvbixcbiAgICAgICAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHBvc2l0aW9uLFxuICAgICAgICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMuc2Nyb2xsU3RyYXRlZ3kgfHwgdGhpcy5fb3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLnJlcG9zaXRpb24oKVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2xpc3Rlbk9uUmVzaXplKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl92aWV3cG9ydFJ1bGVyXG4gICAgICAgICAgICAuY2hhbmdlKDE1KVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX3JlZnJlc2gkKSwgc3RhcnRXaXRoKDEpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLl9hcHBseVdpZHRoT3ZlcmxheSgpKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2dldERpcmVjdGlvbigpOiAncnRsJyB8ICdsdHInIHtcbiAgICAgICAgaWYgKCF0aGlzLl9ydGxTZXJ2aWNlKSB7XG4gICAgICAgICAgICByZXR1cm4gJ2x0cic7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5fcnRsU2VydmljZS5ydGwuZ2V0VmFsdWUoKSA/ICdydGwnIDogJ2x0cic7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9nZXRQb3NpdGlvblN0cmF0ZWd5KGZvcmNlZFBvc2l0aW9ucz86IENvbm5lY3RlZFBvc2l0aW9uW10pOiBGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uU3RyYXRlZ3kge1xuICAgICAgICBsZXQgcmVzdWx0UG9zaXRpb24gPSBmb3JjZWRQb3NpdGlvbnMgPyBmb3JjZWRQb3NpdGlvbnMgOiB0aGlzLl9nZXRQb3NpdGlvbnMoKTtcblxuICAgICAgICBpZiAoIXRoaXMuZml4ZWRQb3NpdGlvbikge1xuICAgICAgICAgICAgcmVzdWx0UG9zaXRpb24gPSByZXN1bHRQb3NpdGlvbi5jb25jYXQoR2V0RGVmYXVsdFBvc2l0aW9uKHJlc3VsdFBvc2l0aW9uKSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5fb3ZlcmxheVxuICAgICAgICAgICAgLnBvc2l0aW9uKClcbiAgICAgICAgICAgIC5mbGV4aWJsZUNvbm5lY3RlZFRvKHRoaXMuYXBwZW5kVG8gfHwgdGhpcy5fdHJpZ2dlckVsZW1lbnQpXG4gICAgICAgICAgICAud2l0aFBvc2l0aW9ucyhyZXN1bHRQb3NpdGlvbilcbiAgICAgICAgICAgIC53aXRoUHVzaChmYWxzZSk7XG4gICAgfVxuXG4gICAgLyoqIHJlbW92ZSBsaXN0ZW5lcnMgZnJvbSB0cmlnZ2VyIGVsZW1lbnQgZXZlbnRzICovXG4gICAgcHJpdmF0ZSBfcmVtb3ZlVHJpZ2dlckxpc3RlbmVycygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZXZlbnRSZWYuZm9yRWFjaCgoZXZlbnQpID0+IGV2ZW50KCkpO1xuICAgICAgICB0aGlzLl9ldmVudFJlZiA9IFtdO1xuICAgIH1cblxuICAgIC8qKiBBdHRhY2ggdGVtcGxhdGUgY29udGFpbmluZyBwb3BvdmVyIGJvZHkgdG8gb3ZlcmxheSAqL1xuICAgIHByaXZhdGUgX2F0dGFjaFRlbXBsYXRlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9wYXNzVmFyaWFibGVzVG9Cb2R5KCk7XG4gICAgICAgIGlmICh0aGlzLl90ZW1wbGF0ZURhdGEpIHtcbiAgICAgICAgICAgIHRoaXMuX292ZXJsYXlSZWYuYXR0YWNoKG5ldyBUZW1wbGF0ZVBvcnRhbCh0aGlzLl90ZW1wbGF0ZURhdGEudGVtcGxhdGUsIHRoaXMuX3RlbXBsYXRlRGF0YS5jb250YWluZXIpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBDcmVhdGUgUG9wb3ZlckJvZHlDb21wb25lbnQgYW5kIGF0dGFjaCBpdCBpbnRvIG92ZXJsYXkgKi9cbiAgICBwcml2YXRlIF9hdHRhY2hCb2R5Q29tcG9uZW50KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBvdmVybGF5ID0gdGhpcy5fb3ZlcmxheVJlZi5hdHRhY2gobmV3IENvbXBvbmVudFBvcnRhbChQb3BvdmVyQm9keUNvbXBvbmVudCwgbnVsbCwgdGhpcy5faW5qZWN0b3IpKTtcbiAgICAgICAgdGhpcy5fcG9wb3ZlckJvZHkgPSBvdmVybGF5Lmluc3RhbmNlO1xuICAgICAgICB0aGlzLl9wYXNzVmFyaWFibGVzVG9Cb2R5KCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9saXN0ZW5Gb3JQb3NpdGlvbkNoYW5nZShwb3NpdGlvbkNoYW5nZTogT2JzZXJ2YWJsZTxDb25uZWN0ZWRPdmVybGF5UG9zaXRpb25DaGFuZ2U+KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3BsYWNlbWVudFJlZnJlc2gkLm5leHQoKTtcbiAgICAgICAgcG9zaXRpb25DaGFuZ2VcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9wbGFjZW1lbnRSZWZyZXNoJCksXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpLFxuICAgICAgICAgICAgICAgIGZpbHRlcigoKSA9PiAhdGhpcy5ub0Fycm93ICYmICEhdGhpcy5fZ2V0UG9wb3ZlckJvZHkoKSksXG4gICAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKHByZXZpb3VzLCBjdXJyZW50KSA9PiBwcmV2aW91cy5jb25uZWN0aW9uUGFpciA9PT0gY3VycmVudC5jb25uZWN0aW9uUGFpcilcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB0aGlzLl9nZXRQb3BvdmVyQm9keSgpLl9zZXRBcnJvd1N0eWxlcyhldmVudC5jb25uZWN0aW9uUGFpciwgdGhpcy5fZ2V0RGlyZWN0aW9uKCkpKTtcbiAgICB9XG5cbiAgICAvKiogU3Vic2NyaWJlIHRvIGNsb3NlIGV2ZW50cyBmcm9tIENESyBPdmVybGF5LCB0byB0aHJvdyBwcm9wZXIgZXZlbnRzLCBjaGFuZ2UgdmFsdWVzICovXG4gICAgcHJpdmF0ZSBfbGlzdGVuT25DbG9zZSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY2xvc2VFdmVudHMkID0gbWVyZ2UodGhpcy5fb3ZlcmxheVJlZi5kZXRhY2htZW50cygpLCB0aGlzLl9nZXRQb3BvdmVyQm9keSgpLm9uQ2xvc2UpO1xuXG4gICAgICAgIGNsb3NlRXZlbnRzJC5waXBlKHRha2VVbnRpbCh0aGlzLl9yZWZyZXNoJCkpLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNsb3NlKCkpO1xuICAgIH1cblxuICAgIC8qKiBMaXN0ZW5lciBmb3IgY2xpY2sgZXZlbnRzICovXG4gICAgcHJpdmF0ZSBfbGlzdGVuT25PdXRDbGlja3MoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNsb3NlRXZlbnRzJCA9IG1lcmdlKHRoaXMuX292ZXJsYXlSZWYuYmFja2Ryb3BDbGljaygpLCB0aGlzLl9vdmVybGF5UmVmLl9vdXRzaWRlUG9pbnRlckV2ZW50cyk7XG5cbiAgICAgICAgY2xvc2VFdmVudHMkXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBmaWx0ZXIoKGV2ZW50KSA9PiB0aGlzLl9zaG91bGRDbG9zZShldmVudCkpLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9yZWZyZXNoJClcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jbG9zZSgpKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3Nob3VsZENsb3NlKGV2ZW50OiBNb3VzZUV2ZW50KTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzT3BlbiAmJiB0aGlzLmNsb3NlT25PdXRzaWRlQ2xpY2sgJiYgIXRoaXMuX3RyaWdnZXJDb250YWluc1RhcmdldChldmVudCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9nZXRFdmVudFRhcmdldChldmVudDogRXZlbnQpOiBFdmVudFRhcmdldCB8IG51bGwge1xuICAgICAgICByZXR1cm4gZXZlbnQuY29tcG9zZWRQYXRoID8gZXZlbnQuY29tcG9zZWRQYXRoKClbMF0gOiBldmVudC50YXJnZXQ7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF90cmlnZ2VyQ29udGFpbnNUYXJnZXQoZXZlbnQ6IEV2ZW50KTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IHRyaWdnZXJFbGVtZW50ID0gdGhpcy5fdHJpZ2dlckVsZW1lbnQubmF0aXZlRWxlbWVudDtcbiAgICAgICAgcmV0dXJuIHRyaWdnZXJFbGVtZW50LmNvbnRhaW5zKHRoaXMuX2dldEV2ZW50VGFyZ2V0KGV2ZW50KSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9nZXRQb3NpdGlvbnMoKTogQ29ubmVjdGVkUG9zaXRpb25bXSB7XG4gICAgICAgIGlmICh0aGlzLmNka1Bvc2l0aW9ucykge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY2RrUG9zaXRpb25zO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMucGxhY2VtZW50KSB7XG4gICAgICAgICAgICByZXR1cm4gW1BvcG92ZXJQb3NpdGlvbi5nZXRDZGtQbGFjZW1lbnQodGhpcy5wbGFjZW1lbnQsIHRoaXMuX2dldERpcmVjdGlvbigpKV07XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9hcHBseVdpZHRoT3ZlcmxheSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgbWF4V2lkdGhMaW1pdCA9IHRoaXMubWF4V2lkdGggPyB0aGlzLm1heFdpZHRoIDogTUFYX0JPRFlfU0laRTtcbiAgICAgICAgY29uc3Qgd2lkdGggPSBNYXRoLm1pbih0aGlzLl9nZXRUcmlnZ2VyV2lkdGgoKSwgbWF4V2lkdGhMaW1pdCk7XG4gICAgICAgIGlmICh0aGlzLmZpbGxDb250cm9sTW9kZSA9PT0gJ2F0LWxlYXN0Jykge1xuICAgICAgICAgICAgdGhpcy5fZ2V0UG9wb3ZlckJvZHkoKS5fcG9wb3ZlckJvZHlNaW5XaWR0aCA9IHdpZHRoO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZmlsbENvbnRyb2xNb2RlID09PSAnZXF1YWwnKSB7XG4gICAgICAgICAgICB0aGlzLl9nZXRQb3BvdmVyQm9keSgpLl9wb3BvdmVyQm9keVdpZHRoID0gd2lkdGg7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfcGFzc1ZhcmlhYmxlc1RvQm9keSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgYm9keSA9IHRoaXMuX2dldFBvcG92ZXJCb2R5KCk7XG4gICAgICAgIGJvZHkudGV4dCA9IHRoaXMuc3RyaW5nQ29udGVudDtcbiAgICAgICAgYm9keS5fYWRkaXRpb25hbEJvZHlDbGFzcyA9IHRoaXMuYWRkaXRpb25hbEJvZHlDbGFzcztcbiAgICAgICAgYm9keS5fZm9jdXNUcmFwcGVkID0gdGhpcy5mb2N1c1RyYXBwZWQ7XG4gICAgICAgIGJvZHkuX21heFdpZHRoID0gdGhpcy5tYXhXaWR0aDtcbiAgICAgICAgYm9keS5fbm9BcnJvdyA9IHRoaXMubm9BcnJvdztcbiAgICAgICAgYm9keS5fZm9jdXNBdXRvQ2FwdHVyZSA9IHRoaXMuZm9jdXNBdXRvQ2FwdHVyZTtcbiAgICAgICAgYm9keS5fZGlzYWJsZVNjcm9sbGJhciA9IHRoaXMuZGlzYWJsZVNjcm9sbGJhcjtcbiAgICAgICAgYm9keS5fdGFiYmFibGVTY3JvbGxiYXIgPSB0aGlzLnRhYmJhYmxlU2Nyb2xsYmFyO1xuICAgICAgICBib2R5Ll90ZW1wbGF0ZVRvRGlzcGxheSA9IHRoaXMudGVtcGxhdGVDb250ZW50ITtcbiAgICAgICAgYm9keS5fY2xvc2VPbkVzY2FwZUtleSA9IHRoaXMuY2xvc2VPbkVzY2FwZUtleTtcbiAgICAgICAgYm9keS5fYm9keVJvbGUgPSB0aGlzLl9ib2R5Um9sZTtcbiAgICAgICAgYm9keS5fYm9keUlkID0gdGhpcy5fYm9keUlkO1xuICAgICAgICB0aGlzLl9kZXRlY3RDaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9nZXRUcmlnZ2VyV2lkdGgoKTogbnVtYmVyIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RyaWdnZXJFbGVtZW50Lm5hdGl2ZUVsZW1lbnQub2Zmc2V0V2lkdGg7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9nZXRQb3BvdmVyQm9keSgpOiBQb3BvdmVyQm9keUNvbXBvbmVudCB7XG4gICAgICAgIHJldHVybiB0aGlzLl90ZW1wbGF0ZURhdGE/LnBvcG92ZXJCb2R5IHx8IHRoaXMuX3BvcG92ZXJCb2R5O1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZGV0ZWN0Q2hhbmdlcygpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuX2dldFBvcG92ZXJCb2R5KCkpIHtcbiAgICAgICAgICAgIHRoaXMuX2dldFBvcG92ZXJCb2R5KCkuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9mb2N1c0ZpcnN0VGFiYmFibGVFbGVtZW50KGZvY3VzTGFzdEVsZW1lbnQgPSB0cnVlKTogdm9pZCB7XG4gICAgICAgIGlmIChmb2N1c0xhc3RFbGVtZW50ICYmIHRoaXMuZm9jdXNBdXRvQ2FwdHVyZSkge1xuICAgICAgICAgICAgdGhpcy5fbGFzdEFjdGl2ZUVsZW1lbnQgPSA8SFRNTEVsZW1lbnQ+ZG9jdW1lbnQuYWN0aXZlRWxlbWVudDtcbiAgICAgICAgICAgIHRoaXMuX2dldFBvcG92ZXJCb2R5KCk/Ll9mb2N1c0ZpcnN0VGFiYmFibGVFbGVtZW50KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2ZvY3VzTGFzdEFjdGl2ZUVsZW1lbnRCZWZvcmVPcGVuKGZvY3VzTGFzdEVsZW1lbnQgPSB0cnVlKTogdm9pZCB7XG4gICAgICAgIGlmIChmb2N1c0xhc3RFbGVtZW50ICYmIHRoaXMuZm9jdXNBdXRvQ2FwdHVyZSAmJiB0aGlzLl9sYXN0QWN0aXZlRWxlbWVudCkge1xuICAgICAgICAgICAgdGhpcy5fbGFzdEFjdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
374
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvcG9wb3Zlci9wb3BvdmVyLXNlcnZpY2UvcG9wb3Zlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxVQUFVLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQWlDLE1BQU0sZUFBZSxDQUFDO0FBQ3JILE9BQU8sRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEUsT0FBTyxFQUdILE9BQU8sRUFDUCxhQUFhLEVBRWIsYUFBYSxFQUVoQixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFBRSxLQUFLLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXBGLE9BQU8sRUFBRSxVQUFVLEVBQVksS0FBSyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDekUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRW5GLE9BQU8sRUFBRSxnQkFBZ0IsRUFBaUIsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3Q0FBd0MsQ0FBQztBQUM5RSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQzs7Ozs7QUFFN0YsTUFBTSxhQUFhLEdBQUcsUUFBUSxDQUFDO0FBUy9CLE1BQU0sT0FBTyxjQUFlLFNBQVEsZ0JBQWdCO0lBcUNoRCxjQUFjO0lBQ2QsWUFDWSxRQUFpQixFQUNqQixTQUFvQixFQUNwQixjQUE2QixFQUM3QixTQUFtQixFQUNQLFdBQXVCLEVBQ2QsaUJBQTRDO1FBRXpFLEtBQUssRUFB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QUMsZ0JBQWdCLEdBQUcsSUFBSTtRQUN0RCxJQUFJLGdCQUFnQixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsRUFBRTtZQUMzQyxJQUFJLENBQUMsa0JBQWtCLEdBQWdCLFFBQVEsQ0FBQyxhQUFhLENBQUM7WUFDOUQsSUFBSSxDQUFDLGVBQWUsRUFBRSxFQUFFLDBCQUEwQixFQUFFLENBQUM7U0FDeEQ7SUFDTCxDQUFDO0lBRUQsY0FBYztJQUNOLGlDQUFpQyxDQUFDLGdCQUFnQixHQUFHLElBQUk7UUFDN0QsSUFBSSxnQkFBZ0IsSUFBSSxJQUFJLENBQUMsZ0JBQWdCLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFO1lBQ3RFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQztTQUNuQztJQUNMLENBQUM7OzJHQTdiUSxjQUFjOytHQUFkLGNBQWM7MkZBQWQsY0FBYztrQkFEMUIsVUFBVTs7MEJBNENGLFFBQVE7OzBCQUNSLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbGVtZW50UmVmLCBJbmplY3RhYmxlLCBJbmplY3RvciwgT3B0aW9uYWwsIFJlbmRlcmVyMiwgVGVtcGxhdGVSZWYsIFZpZXdDb250YWluZXJSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbXBvbmVudFBvcnRhbCwgVGVtcGxhdGVQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7XG4gICAgQ29ubmVjdGVkUG9zaXRpb24sXG4gICAgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5LFxuICAgIE92ZXJsYXksXG4gICAgT3ZlcmxheUNvbmZpZyxcbiAgICBPdmVybGF5UmVmLFxuICAgIFZpZXdwb3J0UnVsZXIsXG4gICAgQ29ubmVjdGVkT3ZlcmxheVBvc2l0aW9uQ2hhbmdlXG59IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IG1lcmdlLCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZmlsdGVyLCBzdGFydFdpdGgsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgUnRsU2VydmljZSwgTnVsbGFibGUsIGlzT2RkIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuaW1wb3J0IHsgR2V0RGVmYXVsdFBvc2l0aW9uLCBQb3BvdmVyUG9zaXRpb24gfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvc2hhcmVkJztcblxuaW1wb3J0IHsgQmFzZVBvcG92ZXJDbGFzcywgVHJpZ2dlckNvbmZpZyB9IGZyb20gJy4uL2Jhc2UvYmFzZS1wb3BvdmVyLmNsYXNzJztcbmltcG9ydCB7IFBvcG92ZXJCb2R5Q29tcG9uZW50IH0gZnJvbSAnLi4vcG9wb3Zlci1ib2R5L3BvcG92ZXItYm9keS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUG9wb3ZlckNvbnRhaW5lckRpcmVjdGl2ZSB9IGZyb20gJy4uL3BvcG92ZXItY29udGFpbmVyL3BvcG92ZXItY29udGFpbmVyLmRpcmVjdGl2ZSc7XG5cbmNvbnN0IE1BWF9CT0RZX1NJWkUgPSA5OTk5OTk5OTtcblxuZXhwb3J0IGludGVyZmFjZSBQb3BvdmVyVGVtcGxhdGUge1xuICAgIGNvbnRhaW5lcjogVmlld0NvbnRhaW5lclJlZjtcbiAgICBwb3BvdmVyQm9keTogUG9wb3ZlckJvZHlDb21wb25lbnQ7XG4gICAgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG59XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBQb3BvdmVyU2VydmljZSBleHRlbmRzIEJhc2VQb3BvdmVyQ2xhc3Mge1xuICAgIC8qKiBTdHJpbmcgY29udGVudCBkaXNwbGF5ZWQgaW5zaWRlIHBvcG92ZXIgYm9keSAqL1xuICAgIHN0cmluZ0NvbnRlbnQ6IE51bGxhYmxlPHN0cmluZz47XG5cbiAgICAvKiogVGVtcGxhdGUgY29udGVudCBkaXNwbGF5ZWQgaW5zaWRlIHBvcG92ZXIgYm9keSAqL1xuICAgIHRlbXBsYXRlQ29udGVudDogTnVsbGFibGU8VGVtcGxhdGVSZWY8YW55Pj47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9vbkxvYWQgPSBuZXcgU3ViamVjdDxFbGVtZW50UmVmPigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9ldmVudFJlZjogKCgpID0+IHZvaWQpW10gPSBbXTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfb3ZlcmxheVJlZjogT3ZlcmxheVJlZjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfcmVmcmVzaCQ6IE9ic2VydmFibGU8Ym9vbGVhbiB8IHZvaWQ+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9wbGFjZW1lbnRSZWZyZXNoJCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3BvcG92ZXJCb2R5OiBQb3BvdmVyQm9keUNvbXBvbmVudDtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfdHJpZ2dlckVsZW1lbnQ6IEVsZW1lbnRSZWY7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2xhc3RBY3RpdmVFbGVtZW50OiBIVE1MRWxlbWVudDtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfdGVtcGxhdGVEYXRhOiBOdWxsYWJsZTxQb3BvdmVyVGVtcGxhdGU+O1xuXG4gICAgLyoqIEFuIFJ4SlMgU3ViamVjdCB0aGF0IHdpbGwga2lsbCB0aGUgZGF0YSBzdHJlYW0gdXBvbiBjb21wb25lbnTigJlzIGRlc3RydWN0aW9uIChmb3IgdW5zdWJzY3JpYmluZykgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBfb25EZXN0cm95JDogU3ViamVjdDx2b2lkPiA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIF9vdmVybGF5OiBPdmVybGF5LFxuICAgICAgICBwcml2YXRlIF9yZW5kZXJlcjogUmVuZGVyZXIyLFxuICAgICAgICBwcml2YXRlIF92aWV3cG9ydFJ1bGVyOiBWaWV3cG9ydFJ1bGVyLFxuICAgICAgICBwcml2YXRlIF9pbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgX3J0bFNlcnZpY2U6IFJ0bFNlcnZpY2UsXG4gICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgcmVhZG9ubHkgX3BvcG92ZXJDb250YWluZXI6IFBvcG92ZXJDb250YWluZXJEaXJlY3RpdmVcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcblxuICAgICAgICAvKiogTWVyZ2Ugb2JzZXJ2YWJsZXMgLSBjbG9zZSBvciBkZXN0cm95ICovXG4gICAgICAgIHRoaXMuX3JlZnJlc2gkID0gbWVyZ2UodGhpcy5pc09wZW5DaGFuZ2UsIHRoaXMuX29uRGVzdHJveSQpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIE1ldGhvZCBpbml0aWFsaXNpbmcgdGhlIHBvcG92ZXIgc2VydmljZSAtIHNob3VsZCBiZSBjYWxsZWQsIGFmdGVyIHZpZXcgaXMgaW5pdGlhbGlzZWQsIHBhcmFtczpcbiAgICAgKiAtIHRyaWdnZXJFbGVtZW50IC0gZWxlbWVudCwgd2hpY2ggaXMgZXF1aXZhbGVudCBmb3IgY2RrT3ZlcmxheU9yaWdpbiwgb3IgZmQtcG9wb3Zlci1jb250cm9sLFxuICAgICAqICAgYnkgZGVmYXVsdCB0byB0aGlzIGVsZW1lbnQgdGhlIHBvcG92ZXIgYm9keSB3aWxsIGxiZSBhcHBlbmRlZCBhbmQgZXZlbnRzIG9uIHRoaXMgZWxlbWVudCB3aWxsIHRyaWdnZXJcbiAgICAgKiAgIHBvcG92ZXIncyAgdG9nZ2xlXG4gICAgICogLSBjb25maWcgLSBjb25maWd1cmF0aW9uIG9iamVjdCAtIGluIHRoaXMgY2FzZSB0aGUgaW50ZW50aW9uIGlzIHRvIHVzZSBpbmhlcml0YW5jZSBvZiBCYXNlUG9wb3ZlckNsYXNzIGluIGNvbXBvbmVudFxuICAgICAqIC0gdGVtcGxhdGVEYXRhIC0gaW4gY2FzZSBvZiBoYXZpbmcgYWxyZWFkeSBQb3BvdmVyQm9keUNvbXBvbmVudCwgdGhlcmUgaXMgd2F5IHRvIHBhc3MgY29udGFpbmVyLCB0ZW1wbGF0ZSBjb250YWluaW5nXG4gICAgICogICBQb3BvdmVyQ29tcG9uZW50IGFuZCBQb3BvdmVyQ29tcG9uZW50IGluc3RhbmNlXG4gICAgICovXG4gICAgaW5pdGlhbGlzZSh0cmlnZ2VyRWxlbWVudDogRWxlbWVudFJlZiwgY29uZmlnPzogQmFzZVBvcG92ZXJDbGFzcywgdGVtcGxhdGVEYXRhPzogUG9wb3ZlclRlbXBsYXRlIHwgbnVsbCk6IHZvaWQge1xuICAgICAgICB0aGlzLl90ZW1wbGF0ZURhdGEgPSB0ZW1wbGF0ZURhdGE7XG4gICAgICAgIHRoaXMuX3RyaWdnZXJFbGVtZW50ID0gdHJpZ2dlckVsZW1lbnQ7XG5cbiAgICAgICAgaWYgKGNvbmZpZykge1xuICAgICAgICAgICAgdGhpcy5yZWZyZXNoQ29uZmlndXJhdGlvbihjb25maWcpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fcmVmcmVzaFRyaWdnZXJMaXN0ZW5lcnMoKTtcblxuICAgICAgICBpZiAodGhpcy5pc09wZW4pIHtcbiAgICAgICAgICAgIHRoaXMub3BlbigpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSWYgd3JhcHBlciBjb250YWluZXIgaGVpZ2h0IGNoYW5nZXMgb3V0c2lkZSwgcmVmcmVzaCBwb3BvdmVyIHBvc2l0aW9uLlxuICAgICAgICB0aGlzLl9wb3BvdmVyQ29udGFpbmVyPy5yZWZyZXNoUG9zaXRpb24kLnBpcGUodGFrZVVudGlsKHRoaXMuX3JlZnJlc2gkKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMucmVmcmVzaFBvc2l0aW9uKCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKiBDbG9zZXMgdGhlIHBvcG92ZXIuICovXG4gICAgY2xvc2UoZm9jdXNBY3RpdmVFbGVtZW50ID0gdHJ1ZSk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5fb3ZlcmxheVJlZikge1xuICAgICAgICAgICAgdGhpcy5fb3ZlcmxheVJlZi5kaXNwb3NlKCk7XG5cbiAgICAgICAgICAgIGNvbnN0IHByZXZTdGF0ZSA9IHRoaXMuaXNPcGVuO1xuICAgICAgICAgICAgdGhpcy5pc09wZW4gPSBmYWxzZTtcbiAgICAgICAgICAgIGlmIChwcmV2U3RhdGUgIT09IHRoaXMuaXNPcGVuKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5pc09wZW5DaGFuZ2UuZW1pdCh0aGlzLmlzT3Blbik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuX2ZvY3VzTGFzdEFjdGl2ZUVsZW1lbnRCZWZvcmVPcGVuKGZvY3VzQWN0aXZlRWxlbWVudCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogT3BlbnMgdGhlIHBvcG92ZXIuICovXG4gICAgb3BlbigpOiB2b2lkIHtcbiAgICAgICAgaWYgKCghdGhpcy5fb3ZlcmxheVJlZiB8fCAhdGhpcy5fb3ZlcmxheVJlZi5oYXNBdHRhY2hlZCgpKSAmJiAhdGhpcy5kaXNhYmxlZCAmJiB0aGlzLl90cmlnZ2VyRWxlbWVudCkge1xuICAgICAgICAgICAgY29uc3QgcG9zaXRpb24gPSB0aGlzLl9nZXRQb3NpdGlvblN0cmF0ZWd5KCk7XG4gICAgICAgICAgICB0aGlzLl9vdmVybGF5UmVmID0gdGhpcy5fb3ZlcmxheS5jcmVhdGUodGhpcy5fZ2V0T3ZlcmxheUNvbmZpZyhwb3NpdGlvbikpO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5fdGVtcGxhdGVEYXRhKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fYXR0YWNoVGVtcGxhdGUoKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fYXR0YWNoQm9keUNvbXBvbmVudCgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLl9saXN0ZW5Gb3JQb3NpdGlvbkNoYW5nZShwb3NpdGlvbi5wb3NpdGlvbkNoYW5nZXMpO1xuXG4gICAgICAgICAgICBpZiAodGhpcy5maWxsQ29udHJvbE1vZGUpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9saXN0ZW5PblJlc2l6ZSgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCBwcmV2U3RhdGUgPSB0aGlzLmlzT3BlbjtcbiAgICAgICAgICAgIHRoaXMuaXNPcGVuID0gdHJ1ZTtcbiAgICAgICAgICAgIGlmIChwcmV2U3RhdGUgIT09IHRoaXMuaXNPcGVuKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5pc09wZW5DaGFuZ2UuZW1pdCh0aGlzLmlzT3Blbik7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuX2RldGVjdENoYW5nZXMoKTtcblxuICAgICAgICAgICAgdGhpcy5fbGlzdGVuT25DbG9zZSgpO1xuICAgICAgICAgICAgdGhpcy5fbGlzdGVuT25PdXRDbGlja3MoKTtcbiAgICAgICAgICAgIHRoaXMuX2ZvY3VzRmlyc3RUYWJiYWJsZUVsZW1lbnQoKTtcbiAgICAgICAgICAgIHRoaXMuX29uTG9hZC5uZXh0KHRoaXMuX2dldFBvcG92ZXJCb2R5KCkuX2VsZW1lbnRSZWYpO1xuICAgICAgICAgICAgdGhpcy5fb3ZlcmxheVJlZi51cGRhdGVQb3NpdGlvbigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIG1ldGhvZCB1cGRhdGluZyB0ZW1wbGF0ZSBvciB0ZXh0IGluc2lkZSByZW5kZXJlZCBQb3BvdmVyQm9keSAqL1xuICAgIHVwZGF0ZUNvbnRlbnQoc3RyaW5nQ29udGVudDogTnVsbGFibGU8c3RyaW5nPiwgdGVtcGxhdGVDb250ZW50OiBOdWxsYWJsZTxUZW1wbGF0ZVJlZjxhbnk+Pik6IHZvaWQge1xuICAgICAgICB0aGlzLnN0cmluZ0NvbnRlbnQgPSBzdHJpbmdDb250ZW50O1xuICAgICAgICB0aGlzLnRlbXBsYXRlQ29udGVudCA9IHRlbXBsYXRlQ29udGVudDtcbiAgICAgICAgaWYgKHRoaXMuX2dldFBvcG92ZXJCb2R5KCkpIHtcbiAgICAgICAgICAgIHRoaXMuX3Bhc3NWYXJpYWJsZXNUb0JvZHkoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBUb2dnbGVzIHRoZSBwb3BvdmVyIG9wZW4gc3RhdGUgKi9cbiAgICB0b2dnbGUob3BlbkFjdGlvbiA9IHRydWUsIGNsb3NlQWN0aW9uID0gdHJ1ZSk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc09wZW4pIHtcbiAgICAgICAgICAgIGNsb3NlQWN0aW9uICYmIHRoaXMuY2xvc2UoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG9wZW5BY3Rpb24gJiYgdGhpcy5vcGVuKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBNZXRob2QgY2FsbGVkIHRvIGNoYW5nZSBwb3NpdGlvbiBvZiBwb3BvdmVyLFxuICAgICAqIHJlY29tbWVuZGVkIHRvIGJlIHVzZWQgb25seSB3aGVuIHBvcG92ZXIgaXMgb3BlbmVkLCBvdGhlcndpc2UgY2hhbmdlIHBvc2l0aW9uIG9yIGNka1BsYWNlbWVudFxuICAgICAqL1xuICAgIGFwcGx5TmV3UG9zaXRpb24ocG9zaXRpb25zOiBDb25uZWN0ZWRQb3NpdGlvbltdKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHJlZlBvc2l0aW9uID0gdGhpcy5fZ2V0UG9zaXRpb25TdHJhdGVneShwb3NpdGlvbnMpO1xuICAgICAgICB0aGlzLl9saXN0ZW5Gb3JQb3NpdGlvbkNoYW5nZShyZWZQb3NpdGlvbi5wb3NpdGlvbkNoYW5nZXMpO1xuICAgICAgICB0aGlzLl9vdmVybGF5UmVmLnVwZGF0ZVBvc2l0aW9uU3RyYXRlZ3kocmVmUG9zaXRpb24pO1xuICAgIH1cblxuICAgIC8qKiBNZXRob2QgY2FsbGVkIHRvIHJlZnJlc2ggcG9zaXRpb24gb2Ygb3BlbmVkIHBvcG92ZXIgKi9cbiAgICByZWZyZXNoUG9zaXRpb24oKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl9vdmVybGF5UmVmKSB7XG4gICAgICAgICAgICB0aGlzLl9vdmVybGF5UmVmLnVwZGF0ZVBvc2l0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogRXF1aXZhbGVudCBmb3IgbmdPbkRlc3Ryb3kgbWV0aG9kLCB3aGV0aGVyIGNvbXBvbmVudCBpcyBkZXN0cm95ZWQsIHRoaXMgbWV0aG9kIHNob3VsZCBiZSBjYWxsZWQgKi9cbiAgICBvbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX29uRGVzdHJveSQubmV4dCgpO1xuICAgICAgICB0aGlzLl9vbkRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgICAgIHRoaXMuX3JlbW92ZVRyaWdnZXJMaXN0ZW5lcnMoKTtcbiAgICAgICAgaWYgKHRoaXMuX292ZXJsYXlSZWYpIHtcbiAgICAgICAgICAgIHRoaXMuX292ZXJsYXlSZWYuZGV0YWNoKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBNZXRob2QgdGhhdCBzZXRzIGNvbmZpZ3VyYXRpb24vb3B0aW9ucywgaXQgZGV0ZWN0cyBpZiB0aGVyZSBpcyBzb21ldGhpbmcgY2hhbmdlZCBhbmQgb3ZlcndyaXRlcyB0aGVtXG4gICAgICovXG4gICAgcmVmcmVzaENvbmZpZ3VyYXRpb24oY29uZmlnOiBCYXNlUG9wb3ZlckNsYXNzKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IG9ubHlDaGFuZ2VkID0gT2JqZWN0LmtleXMobmV3IEJhc2VQb3BvdmVyQ2xhc3MoKSkuZmlsdGVyKChrZXkpID0+IHRoaXNba2V5XSAhPT0gY29uZmlnW2tleV0pO1xuXG4gICAgICAgIGlmIChvbmx5Q2hhbmdlZC5pbmNsdWRlcygnaXNPcGVuJykpIHtcbiAgICAgICAgICAgIGlmIChjb25maWcuaXNPcGVuKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5vcGVuKCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8qKiBUT0RPXG4gICAgICAgICAqIFRoaXMgb3ZlcnJpZGluZyBpcyBkYW5nZXJvdXMgdGhpbmcgYW5kIGxlYWRzIHRvIHVuZXhwZWN0ZWQgYmVoYXZpb3JcbiAgICAgICAgICogV2UgaGF2ZSB0byBhdm9pZCB0aGlzLlxuICAgICAgICAgKi9cbiAgICAgICAgb25seUNoYW5nZWQuZm9yRWFjaCgoa2V5KSA9PiAodGhpc1trZXldID0gY29uZmlnW2tleV0pKTtcblxuICAgICAgICBpZiAob25seUNoYW5nZWQuaW5jbHVkZXMoJ3RyaWdnZXJzJykpIHtcbiAgICAgICAgICAgIHRoaXMuX3JlZnJlc2hUcmlnZ2VyTGlzdGVuZXJzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGlzIG1ldGhvZCBpcyBpbnRlbmRlZCB0byBiZSBjYWxsZWQgaW4gb3JkZXJcbiAgICAgKiB0byBwb3N0cG9uZSB0aGUgbWFpbiBmdW5jdGlvbmFsaXR5IGJ1dCBiZSBhYmxlXG4gICAgICogdG8gZW5hYmxlIGl0IGJhY2sgaW4gdGhlIGZ1dHVyZSBieSBpbml0aWFsaXNlKClcbiAgICAgKi9cbiAgICBkZWFjdGl2YXRlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9yZW1vdmVUcmlnZ2VyTGlzdGVuZXJzKCk7XG4gICAgfVxuXG4gICAgLyoqIFJlZnJlc2ggbGlzdGVuZXJzIG9uIHRyaWdnZXIgZWxlbWVudCBldmVudHMgKi9cbiAgICBfcmVmcmVzaFRyaWdnZXJMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5fdHJpZ2dlckVsZW1lbnQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3JlbW92ZVRyaWdnZXJMaXN0ZW5lcnMoKTtcblxuICAgICAgICBpZiAodGhpcy50cmlnZ2Vycz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLl9ub3JtYWxpemVUcmlnZ2VycygpLmZvckVhY2goKHRyaWdnZXIpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLl9ldmVudFJlZi5wdXNoKFxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9yZW5kZXJlci5saXN0ZW4odGhpcy5fdHJpZ2dlckVsZW1lbnQubmF0aXZlRWxlbWVudCwgdHJpZ2dlci50cmlnZ2VyLCAoZXZlbnQ6IEV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjbG9zZUFjdGlvbiA9ICEhdHJpZ2dlci5jbG9zZUFjdGlvbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IG9wZW5BY3Rpb24gPSAhIXRyaWdnZXIub3BlbkFjdGlvbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudG9nZ2xlKG9wZW5BY3Rpb24sIGNsb3NlQWN0aW9uKTtcblxuICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRyaWdnZXIuc3RvcFByb3BhZ2F0aW9uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVXBkYXRlcyB0cmlnZ2VyIGVsZW1lbnQgYW5kIHJlZnJlc2hlcyB0aGUgbGlzdGVuZXJzLlxuICAgICAqIEBwYXJhbSB0cmlnZ2VyIFRyaWdnZXIgZWxlbWVudCByZWYuXG4gICAgICovXG4gICAgdXBkYXRlVHJpZ2dlckVsZW1lbnQodHJpZ2dlcjogRWxlbWVudFJlZik6IHZvaWQge1xuICAgICAgICB0aGlzLl90cmlnZ2VyRWxlbWVudCA9IHRyaWdnZXI7XG4gICAgICAgIHRoaXMuX3JlZnJlc2hUcmlnZ2VyTGlzdGVuZXJzKCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9ub3JtYWxpemVUcmlnZ2VycygpOiBUcmlnZ2VyQ29uZmlnW10ge1xuICAgICAgICByZXR1cm4gdGhpcy50cmlnZ2Vycy5tYXAoKHRyaWdnZXIsIGluZGV4KSA9PiB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIHRyaWdnZXIgPT09ICdvYmplY3QnICYmIHRyaWdnZXIudHJpZ2dlcikge1xuICAgICAgICAgICAgICAgIHJldHVybiB0cmlnZ2VyO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCBvZGROdW1iZXIgPSBpc09kZChpbmRleCArIDEpO1xuXG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHRyaWdnZXIsXG4gICAgICAgICAgICAgICAgb3BlbkFjdGlvbjogdGhpcy50cmlnZ2Vycy5sZW5ndGggPT09IDEgfHwgb2RkTnVtYmVyLFxuICAgICAgICAgICAgICAgIGNsb3NlQWN0aW9uOiB0aGlzLnRyaWdnZXJzLmxlbmd0aCA9PT0gMSB8fCAhb2RkTnVtYmVyLFxuICAgICAgICAgICAgICAgIHN0b3BQcm9wYWdhdGlvbjogZmFsc2VcbiAgICAgICAgICAgIH0gYXMgVHJpZ2dlckNvbmZpZztcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9nZXRPdmVybGF5Q29uZmlnKHBvc2l0aW9uOiBGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uU3RyYXRlZ3kpOiBPdmVybGF5Q29uZmlnIHtcbiAgICAgICAgY29uc3QgZGlyZWN0aW9uID0gdGhpcy5fZ2V0RGlyZWN0aW9uKCk7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBPdmVybGF5Q29uZmlnKHtcbiAgICAgICAgICAgIGRpcmVjdGlvbixcbiAgICAgICAgICAgIGRpc3Bvc2VPbk5hdmlnYXRpb246IHRoaXMuY2xvc2VPbk5hdmlnYXRpb24sXG4gICAgICAgICAgICBwb3NpdGlvblN0cmF0ZWd5OiBwb3NpdGlvbixcbiAgICAgICAgICAgIHNjcm9sbFN0cmF0ZWd5OiB0aGlzLnNjcm9sbFN0cmF0ZWd5IHx8IHRoaXMuX292ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5yZXBvc2l0aW9uKClcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9saXN0ZW5PblJlc2l6ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdmlld3BvcnRSdWxlclxuICAgICAgICAgICAgLmNoYW5nZSgxNSlcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9yZWZyZXNoJCksIHN0YXJ0V2l0aCgxKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fYXBwbHlXaWR0aE92ZXJsYXkoKSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9nZXREaXJlY3Rpb24oKTogJ3J0bCcgfCAnbHRyJyB7XG4gICAgICAgIGlmICghdGhpcy5fcnRsU2VydmljZSkge1xuICAgICAgICAgICAgcmV0dXJuICdsdHInO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuX3J0bFNlcnZpY2UucnRsLmdldFZhbHVlKCkgPyAncnRsJyA6ICdsdHInO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZ2V0UG9zaXRpb25TdHJhdGVneShmb3JjZWRQb3NpdGlvbnM/OiBDb25uZWN0ZWRQb3NpdGlvbltdKTogRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5IHtcbiAgICAgICAgbGV0IHJlc3VsdFBvc2l0aW9uID0gZm9yY2VkUG9zaXRpb25zID8gZm9yY2VkUG9zaXRpb25zIDogdGhpcy5fZ2V0UG9zaXRpb25zKCk7XG5cbiAgICAgICAgaWYgKCF0aGlzLmZpeGVkUG9zaXRpb24pIHtcbiAgICAgICAgICAgIHJlc3VsdFBvc2l0aW9uID0gcmVzdWx0UG9zaXRpb24uY29uY2F0KEdldERlZmF1bHRQb3NpdGlvbihyZXN1bHRQb3NpdGlvbikpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuX292ZXJsYXlcbiAgICAgICAgICAgIC5wb3NpdGlvbigpXG4gICAgICAgICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyh0aGlzLmFwcGVuZFRvIHx8IHRoaXMuX3RyaWdnZXJFbGVtZW50KVxuICAgICAgICAgICAgLndpdGhQb3NpdGlvbnMocmVzdWx0UG9zaXRpb24pXG4gICAgICAgICAgICAud2l0aFB1c2goZmFsc2UpO1xuICAgIH1cblxuICAgIC8qKiByZW1vdmUgbGlzdGVuZXJzIGZyb20gdHJpZ2dlciBlbGVtZW50IGV2ZW50cyAqL1xuICAgIHByaXZhdGUgX3JlbW92ZVRyaWdnZXJMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2V2ZW50UmVmLmZvckVhY2goKGV2ZW50KSA9PiBldmVudCgpKTtcbiAgICAgICAgdGhpcy5fZXZlbnRSZWYgPSBbXTtcbiAgICB9XG5cbiAgICAvKiogQXR0YWNoIHRlbXBsYXRlIGNvbnRhaW5pbmcgcG9wb3ZlciBib2R5IHRvIG92ZXJsYXkgKi9cbiAgICBwcml2YXRlIF9hdHRhY2hUZW1wbGF0ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fcGFzc1ZhcmlhYmxlc1RvQm9keSgpO1xuICAgICAgICBpZiAodGhpcy5fdGVtcGxhdGVEYXRhKSB7XG4gICAgICAgICAgICB0aGlzLl9vdmVybGF5UmVmLmF0dGFjaChuZXcgVGVtcGxhdGVQb3J0YWwodGhpcy5fdGVtcGxhdGVEYXRhLnRlbXBsYXRlLCB0aGlzLl90ZW1wbGF0ZURhdGEuY29udGFpbmVyKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQ3JlYXRlIFBvcG92ZXJCb2R5Q29tcG9uZW50IGFuZCBhdHRhY2ggaXQgaW50byBvdmVybGF5ICovXG4gICAgcHJpdmF0ZSBfYXR0YWNoQm9keUNvbXBvbmVudCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgb3ZlcmxheSA9IHRoaXMuX292ZXJsYXlSZWYuYXR0YWNoKG5ldyBDb21wb25lbnRQb3J0YWwoUG9wb3ZlckJvZHlDb21wb25lbnQsIG51bGwsIHRoaXMuX2luamVjdG9yKSk7XG4gICAgICAgIHRoaXMuX3BvcG92ZXJCb2R5ID0gb3ZlcmxheS5pbnN0YW5jZTtcbiAgICAgICAgdGhpcy5fcGFzc1ZhcmlhYmxlc1RvQm9keSgpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfbGlzdGVuRm9yUG9zaXRpb25DaGFuZ2UocG9zaXRpb25DaGFuZ2U6IE9ic2VydmFibGU8Q29ubmVjdGVkT3ZlcmxheVBvc2l0aW9uQ2hhbmdlPik6IHZvaWQge1xuICAgICAgICB0aGlzLl9wbGFjZW1lbnRSZWZyZXNoJC5uZXh0KCk7XG4gICAgICAgIHBvc2l0aW9uQ2hhbmdlXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fcGxhY2VtZW50UmVmcmVzaCQpLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSxcbiAgICAgICAgICAgICAgICBmaWx0ZXIoKCkgPT4gIXRoaXMubm9BcnJvdyAmJiAhIXRoaXMuX2dldFBvcG92ZXJCb2R5KCkpLFxuICAgICAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKChwcmV2aW91cywgY3VycmVudCkgPT4gcHJldmlvdXMuY29ubmVjdGlvblBhaXIgPT09IGN1cnJlbnQuY29ubmVjdGlvblBhaXIpXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChldmVudCkgPT4gdGhpcy5fZ2V0UG9wb3ZlckJvZHkoKS5fc2V0QXJyb3dTdHlsZXMoZXZlbnQuY29ubmVjdGlvblBhaXIsIHRoaXMuX2dldERpcmVjdGlvbigpKSk7XG4gICAgfVxuXG4gICAgLyoqIFN1YnNjcmliZSB0byBjbG9zZSBldmVudHMgZnJvbSBDREsgT3ZlcmxheSwgdG8gdGhyb3cgcHJvcGVyIGV2ZW50cywgY2hhbmdlIHZhbHVlcyAqL1xuICAgIHByaXZhdGUgX2xpc3Rlbk9uQ2xvc2UoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNsb3NlRXZlbnRzJCA9IG1lcmdlKHRoaXMuX292ZXJsYXlSZWYuZGV0YWNobWVudHMoKSwgdGhpcy5fZ2V0UG9wb3ZlckJvZHkoKS5vbkNsb3NlKTtcblxuICAgICAgICBjbG9zZUV2ZW50cyQucGlwZSh0YWtlVW50aWwodGhpcy5fcmVmcmVzaCQpKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jbG9zZSgpKTtcbiAgICB9XG5cbiAgICAvKiogTGlzdGVuZXIgZm9yIGNsaWNrIGV2ZW50cyAqL1xuICAgIHByaXZhdGUgX2xpc3Rlbk9uT3V0Q2xpY2tzKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBjbG9zZUV2ZW50cyQgPSBtZXJnZSh0aGlzLl9vdmVybGF5UmVmLmJhY2tkcm9wQ2xpY2soKSwgdGhpcy5fb3ZlcmxheVJlZi5fb3V0c2lkZVBvaW50ZXJFdmVudHMpO1xuXG4gICAgICAgIGNsb3NlRXZlbnRzJFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgZmlsdGVyKChldmVudCkgPT4gdGhpcy5fc2hvdWxkQ2xvc2UoZXZlbnQpKSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fcmVmcmVzaCQpXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMuY2xvc2UoKSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zaG91bGRDbG9zZShldmVudDogTW91c2VFdmVudCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pc09wZW4gJiYgdGhpcy5jbG9zZU9uT3V0c2lkZUNsaWNrICYmICF0aGlzLl90cmlnZ2VyQ29udGFpbnNUYXJnZXQoZXZlbnQpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZ2V0RXZlbnRUYXJnZXQoZXZlbnQ6IEV2ZW50KTogRXZlbnRUYXJnZXQgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIGV2ZW50LmNvbXBvc2VkUGF0aCA/IGV2ZW50LmNvbXBvc2VkUGF0aCgpWzBdIDogZXZlbnQudGFyZ2V0O1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfdHJpZ2dlckNvbnRhaW5zVGFyZ2V0KGV2ZW50OiBFdmVudCk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCB0cmlnZ2VyRWxlbWVudCA9IHRoaXMuX3RyaWdnZXJFbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIHJldHVybiB0cmlnZ2VyRWxlbWVudC5jb250YWlucyh0aGlzLl9nZXRFdmVudFRhcmdldChldmVudCkpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZ2V0UG9zaXRpb25zKCk6IENvbm5lY3RlZFBvc2l0aW9uW10ge1xuICAgICAgICBpZiAodGhpcy5jZGtQb3NpdGlvbnMpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmNka1Bvc2l0aW9ucztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLnBsYWNlbWVudCkge1xuICAgICAgICAgICAgcmV0dXJuIFtQb3BvdmVyUG9zaXRpb24uZ2V0Q2RrUGxhY2VtZW50KHRoaXMucGxhY2VtZW50LCB0aGlzLl9nZXREaXJlY3Rpb24oKSldO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIFtdO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfYXBwbHlXaWR0aE92ZXJsYXkoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IG1heFdpZHRoTGltaXQgPSB0aGlzLm1heFdpZHRoID8gdGhpcy5tYXhXaWR0aCA6IE1BWF9CT0RZX1NJWkU7XG4gICAgICAgIGNvbnN0IHdpZHRoID0gTWF0aC5taW4odGhpcy5fZ2V0VHJpZ2dlcldpZHRoKCksIG1heFdpZHRoTGltaXQpO1xuICAgICAgICBpZiAodGhpcy5maWxsQ29udHJvbE1vZGUgPT09ICdhdC1sZWFzdCcpIHtcbiAgICAgICAgICAgIHRoaXMuX2dldFBvcG92ZXJCb2R5KCkuX3BvcG92ZXJCb2R5TWluV2lkdGggPSB3aWR0aDtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmZpbGxDb250cm9sTW9kZSA9PT0gJ2VxdWFsJykge1xuICAgICAgICAgICAgdGhpcy5fZ2V0UG9wb3ZlckJvZHkoKS5fcG9wb3ZlckJvZHlXaWR0aCA9IHdpZHRoO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2RldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3Bhc3NWYXJpYWJsZXNUb0JvZHkoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGJvZHkgPSB0aGlzLl9nZXRQb3BvdmVyQm9keSgpO1xuICAgICAgICBib2R5LnRleHQgPSB0aGlzLnN0cmluZ0NvbnRlbnQ7XG4gICAgICAgIGJvZHkuX2FkZGl0aW9uYWxCb2R5Q2xhc3MgPSB0aGlzLmFkZGl0aW9uYWxCb2R5Q2xhc3M7XG4gICAgICAgIGJvZHkuX2ZvY3VzVHJhcHBlZCA9IHRoaXMuZm9jdXNUcmFwcGVkO1xuICAgICAgICBib2R5Ll9tYXhXaWR0aCA9IHRoaXMubWF4V2lkdGg7XG4gICAgICAgIGJvZHkuX25vQXJyb3cgPSB0aGlzLm5vQXJyb3c7XG4gICAgICAgIGJvZHkuX2ZvY3VzQXV0b0NhcHR1cmUgPSB0aGlzLmZvY3VzQXV0b0NhcHR1cmU7XG4gICAgICAgIGJvZHkuX2Rpc2FibGVTY3JvbGxiYXIgPSB0aGlzLmRpc2FibGVTY3JvbGxiYXI7XG4gICAgICAgIGJvZHkuX3RhYmJhYmxlU2Nyb2xsYmFyID0gdGhpcy50YWJiYWJsZVNjcm9sbGJhcjtcbiAgICAgICAgYm9keS5fdGVtcGxhdGVUb0Rpc3BsYXkgPSB0aGlzLnRlbXBsYXRlQ29udGVudCE7XG4gICAgICAgIGJvZHkuX2Nsb3NlT25Fc2NhcGVLZXkgPSB0aGlzLmNsb3NlT25Fc2NhcGVLZXk7XG4gICAgICAgIHRoaXMuX2RldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2dldFRyaWdnZXJXaWR0aCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5fdHJpZ2dlckVsZW1lbnQubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2dldFBvcG92ZXJCb2R5KCk6IFBvcG92ZXJCb2R5Q29tcG9uZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RlbXBsYXRlRGF0YT8ucG9wb3ZlckJvZHkgfHwgdGhpcy5fcG9wb3ZlckJvZHk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9kZXRlY3RDaGFuZ2VzKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5fZ2V0UG9wb3ZlckJvZHkoKSkge1xuICAgICAgICAgICAgdGhpcy5fZ2V0UG9wb3ZlckJvZHkoKS5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2ZvY3VzRmlyc3RUYWJiYWJsZUVsZW1lbnQoZm9jdXNMYXN0RWxlbWVudCA9IHRydWUpOiB2b2lkIHtcbiAgICAgICAgaWYgKGZvY3VzTGFzdEVsZW1lbnQgJiYgdGhpcy5mb2N1c0F1dG9DYXB0dXJlKSB7XG4gICAgICAgICAgICB0aGlzLl9sYXN0QWN0aXZlRWxlbWVudCA9IDxIVE1MRWxlbWVudD5kb2N1bWVudC5hY3RpdmVFbGVtZW50O1xuICAgICAgICAgICAgdGhpcy5fZ2V0UG9wb3ZlckJvZHkoKT8uX2ZvY3VzRmlyc3RUYWJiYWJsZUVsZW1lbnQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZm9jdXNMYXN0QWN0aXZlRWxlbWVudEJlZm9yZU9wZW4oZm9jdXNMYXN0RWxlbWVudCA9IHRydWUpOiB2b2lkIHtcbiAgICAgICAgaWYgKGZvY3VzTGFzdEVsZW1lbnQgJiYgdGhpcy5mb2N1c0F1dG9DYXB0dXJlICYmIHRoaXMuX2xhc3RBY3RpdmVFbGVtZW50KSB7XG4gICAgICAgICAgICB0aGlzLl9sYXN0QWN0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19