@fundamental-ngx/platform 0.43.0-rc.2 → 0.43.0-rc.21

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 (427) hide show
  1. package/esm2020/action-bar/action-bar.component.mjs +3 -3
  2. package/esm2020/action-bar/action-bar.module.mjs +4 -4
  3. package/esm2020/action-button-group/action-button-group.component.mjs +3 -3
  4. package/esm2020/action-button-group/action-button-group.module.mjs +4 -4
  5. package/esm2020/approval-flow/approval-flow-add-node/approval-flow-add-node.component.mjs +5 -5
  6. package/esm2020/approval-flow/approval-flow-approver-details/approval-flow-approver-details.component.mjs +5 -5
  7. package/esm2020/approval-flow/approval-flow-messages/approval-flow-messages.component.mjs +3 -3
  8. package/esm2020/approval-flow/approval-flow-node/approval-flow-drop-zone.directive.mjs +3 -3
  9. package/esm2020/approval-flow/approval-flow-node/approval-flow-node.component.mjs +3 -3
  10. package/esm2020/approval-flow/approval-flow-select-type/approval-flow-select-type.component.mjs +5 -5
  11. package/esm2020/approval-flow/approval-flow-team-list/approval-flow-team-list.component.mjs +3 -3
  12. package/esm2020/approval-flow/approval-flow-toolbar-actions/approval-flow-toolbar-actions.component.mjs +3 -3
  13. package/esm2020/approval-flow/approval-flow-user-details/approval-flow-user-details.component.mjs +3 -3
  14. package/esm2020/approval-flow/approval-flow-user-list/approval-flow-user-list.component.mjs +3 -3
  15. package/esm2020/approval-flow/approval-flow.component.mjs +3 -3
  16. package/esm2020/approval-flow/approval-flow.module.mjs +4 -4
  17. package/esm2020/approval-flow/services/approval-flow-add-node-view.service.mjs +3 -3
  18. package/esm2020/button/button.component.mjs +3 -3
  19. package/esm2020/button/button.module.mjs +4 -4
  20. package/esm2020/dynamic-page/directives/dynamic-page-header-subtitle.directive.mjs +3 -3
  21. package/esm2020/dynamic-page/directives/dynamic-page-header-title.directive.mjs +3 -3
  22. package/esm2020/dynamic-page/dynamic-page-content/dynamic-page-content-host.component.mjs +3 -3
  23. package/esm2020/dynamic-page/dynamic-page-content/dynamic-page-content.component.mjs +3 -3
  24. package/esm2020/dynamic-page/dynamic-page-footer/dynamic-page-footer.component.mjs +3 -3
  25. package/esm2020/dynamic-page/dynamic-page-header/actions/global-actions/dynamic-page-global-actions.component.mjs +3 -3
  26. package/esm2020/dynamic-page/dynamic-page-header/actions/layout-actions/dynamic-page-layout-actions.component.mjs +3 -3
  27. package/esm2020/dynamic-page/dynamic-page-header/header/dynamic-page-header.component.mjs +3 -3
  28. package/esm2020/dynamic-page/dynamic-page-header/key-info/dynamic-page-key-info.component.mjs +3 -3
  29. package/esm2020/dynamic-page/dynamic-page-header/title/dynamic-page-title-image.component.mjs +3 -3
  30. package/esm2020/dynamic-page/dynamic-page-header/title/dynamic-page-title.component.mjs +3 -3
  31. package/esm2020/dynamic-page/dynamic-page.component.mjs +3 -3
  32. package/esm2020/dynamic-page/dynamic-page.config.mjs +3 -3
  33. package/esm2020/dynamic-page/dynamic-page.module.mjs +4 -4
  34. package/esm2020/dynamic-page/dynamic-page.service.mjs +3 -3
  35. package/esm2020/feed-input/feed-input.component.mjs +3 -3
  36. package/esm2020/feed-input/feed-input.module.mjs +4 -4
  37. package/esm2020/form/auto-complete/auto-complete.directive.mjs +3 -3
  38. package/esm2020/form/auto-complete/auto-complete.module.mjs +4 -4
  39. package/esm2020/form/checkbox/checkbox.component.mjs +3 -3
  40. package/esm2020/form/checkbox/checkbox.module.mjs +4 -4
  41. package/esm2020/form/checkbox-group/checkbox-group.component.mjs +3 -3
  42. package/esm2020/form/checkbox-group/checkbox-group.module.mjs +4 -4
  43. package/esm2020/form/combobox/combobox/combobox.component.mjs +4 -4
  44. package/esm2020/form/combobox/combobox-mobile/combobox/combobox-mobile.component.mjs +3 -3
  45. package/esm2020/form/combobox/combobox-mobile/combobox-mobile.module.mjs +4 -4
  46. package/esm2020/form/combobox/combobox.config.mjs +3 -3
  47. package/esm2020/form/combobox/combobox.module.mjs +4 -4
  48. package/esm2020/form/combobox/commons/base-combobox.mjs +3 -3
  49. package/esm2020/form/date-picker/date-picker.component.mjs +3 -3
  50. package/esm2020/form/date-picker/date-picker.module.mjs +4 -4
  51. package/esm2020/form/datetime-picker/datetime-picker.component.mjs +3 -3
  52. package/esm2020/form/datetime-picker/datetime-picker.module.mjs +4 -4
  53. package/esm2020/form/form-generator/base-dynamic-form-generator-control.mjs +3 -3
  54. package/esm2020/form/form-generator/controls/dynamic-form-generator-checkbox/dynamic-form-generator-checkbox.component.mjs +3 -3
  55. package/esm2020/form/form-generator/controls/dynamic-form-generator-datepicker/dynamic-form-generator-datepicker.component.mjs +3 -3
  56. package/esm2020/form/form-generator/controls/dynamic-form-generator-editor/dynamic-form-generator-editor.component.mjs +3 -3
  57. package/esm2020/form/form-generator/controls/dynamic-form-generator-input/dynamic-form-generator-input.component.mjs +3 -3
  58. package/esm2020/form/form-generator/controls/dynamic-form-generator-multi-input/dynamic-form-generator-multi-input.component.mjs +3 -3
  59. package/esm2020/form/form-generator/controls/dynamic-form-generator-object-status/dynamic-form-generator-object-status.component.mjs +3 -3
  60. package/esm2020/form/form-generator/controls/dynamic-form-generator-radio/dynamic-form-generator-radio.component.mjs +3 -3
  61. package/esm2020/form/form-generator/controls/dynamic-form-generator-select/dynamic-form-generator-select.component.mjs +3 -3
  62. package/esm2020/form/form-generator/controls/dynamic-form-generator-switch/dynamic-form-generator-switch.component.mjs +3 -3
  63. package/esm2020/form/form-generator/dynamic-form-control-field.directive.mjs +3 -3
  64. package/esm2020/form/form-generator/dynamic-form-control.directive.mjs +3 -3
  65. package/esm2020/form/form-generator/fdp-form-generator.module.mjs +4 -4
  66. package/esm2020/form/form-generator/form-generator/form-generator.component.mjs +5 -5
  67. package/esm2020/form/form-generator/form-generator-components-accessor.service.mjs +3 -3
  68. package/esm2020/form/form-generator/form-generator-field/form-generator-field.component.mjs +3 -3
  69. package/esm2020/form/form-generator/form-generator.service.mjs +3 -3
  70. package/esm2020/form/form-generator/pipes/get-ordered-form-controls.pipe.mjs +3 -3
  71. package/esm2020/form/form-group/deprecated-form-group-compact.directive.mjs +3 -3
  72. package/esm2020/form/form-group/fdp-form.module.mjs +4 -4
  73. package/esm2020/form/form-group/form-field/form-field.component.mjs +3 -3
  74. package/esm2020/form/form-group/form-field-error/form-field-error-description.directive.mjs +3 -3
  75. package/esm2020/form/form-group/form-field-error/form-field-error-heading.directive.mjs +3 -3
  76. package/esm2020/form/form-group/form-field-error/form-field-error.directive.mjs +3 -3
  77. package/esm2020/form/form-group/form-field-extras/form-field-extras.component.mjs +3 -3
  78. package/esm2020/form/form-group/form-field-group/form-field-group.component.mjs +3 -3
  79. package/esm2020/form/form-group/form-group-header/form-group-header.component.mjs +3 -3
  80. package/esm2020/form/form-group/form-group.component.mjs +3 -3
  81. package/esm2020/form/form-group/pipes/field-group-row-value.pipe.mjs +3 -3
  82. package/esm2020/form/form-group/services/form-field-layout.service.mjs +3 -3
  83. package/esm2020/form/input/fdp-input.module.mjs +4 -4
  84. package/esm2020/form/input/input.component.mjs +3 -3
  85. package/esm2020/form/input-group/addon-body.component.mjs +3 -3
  86. package/esm2020/form/input-group/addon.component.mjs +3 -3
  87. package/esm2020/form/input-group/input-group.component.mjs +3 -3
  88. package/esm2020/form/input-group/input-group.config.mjs +3 -3
  89. package/esm2020/form/input-group/input-group.module.mjs +4 -4
  90. package/esm2020/form/input-group/input.component.mjs +3 -3
  91. package/esm2020/form/input-message-group-with-template/input-message-group-with-template.component.mjs +3 -3
  92. package/esm2020/form/multi-combobox/commons/base-multi-combobox.mjs +3 -3
  93. package/esm2020/form/multi-combobox/multi-combobox/multi-combobox.component.mjs +4 -4
  94. package/esm2020/form/multi-combobox/multi-combobox-mobile/multi-combobox/multi-combobox-mobile.component.mjs +3 -3
  95. package/esm2020/form/multi-combobox/multi-combobox-mobile/multi-combobox-mobile.module.mjs +4 -4
  96. package/esm2020/form/multi-combobox/multi-combobox.config.mjs +3 -3
  97. package/esm2020/form/multi-combobox/multi-combobox.module.mjs +4 -4
  98. package/esm2020/form/multi-input/base-multi-input.mjs +3 -3
  99. package/esm2020/form/multi-input/multi-input-mobile/multi-input-mobile.component.mjs +3 -3
  100. package/esm2020/form/multi-input/multi-input-mobile/multi-input-mobile.module.mjs +4 -4
  101. package/esm2020/form/multi-input/multi-input.component.mjs +4 -4
  102. package/esm2020/form/multi-input/multi-input.config.mjs +3 -3
  103. package/esm2020/form/multi-input/multi-input.module.mjs +4 -4
  104. package/esm2020/form/platform-file-uploader/platform-file-uploader.component.mjs +3 -3
  105. package/esm2020/form/platform-file-uploader/platform-file-uploader.module.mjs +4 -4
  106. package/esm2020/form/radio-group/radio/radio.component.mjs +3 -3
  107. package/esm2020/form/radio-group/radio-group.component.mjs +3 -3
  108. package/esm2020/form/radio-group/radio-group.module.mjs +4 -4
  109. package/esm2020/form/select/commons/base-select.mjs +3 -3
  110. package/esm2020/form/select/option/option.component.mjs +3 -3
  111. package/esm2020/form/select/select/select.component.mjs +3 -3
  112. package/esm2020/form/select/select.config.mjs +3 -3
  113. package/esm2020/form/select/select.module.mjs +4 -4
  114. package/esm2020/form/step-input/base.step-input.mjs +3 -3
  115. package/esm2020/form/step-input/number/number-step-input.component.mjs +3 -3
  116. package/esm2020/form/step-input/step-input-action-button.mjs +3 -3
  117. package/esm2020/form/step-input/step-input-control.directive.mjs +3 -3
  118. package/esm2020/form/step-input/step-input-decrement.directive.mjs +3 -3
  119. package/esm2020/form/step-input/step-input-increment.directive.mjs +3 -3
  120. package/esm2020/form/step-input/step-input.config.mjs +3 -3
  121. package/esm2020/form/step-input/step-input.module.mjs +4 -4
  122. package/esm2020/form/switch/switch/switch.component.mjs +3 -3
  123. package/esm2020/form/switch/switch/switch.config.mjs +3 -3
  124. package/esm2020/form/switch/switch.module.mjs +4 -4
  125. package/esm2020/form/text-area/text-area.component.mjs +3 -3
  126. package/esm2020/form/text-area/text-area.config.mjs +3 -3
  127. package/esm2020/form/text-area/text-area.module.mjs +4 -4
  128. package/esm2020/form/time-picker/time-picker.component.mjs +3 -3
  129. package/esm2020/form/time-picker/time-picker.module.mjs +4 -4
  130. package/esm2020/fundamental-ngx.module.mjs +4 -4
  131. package/esm2020/icon-tab-bar/components/icon-tab-bar-base.class.mjs +3 -3
  132. package/esm2020/icon-tab-bar/components/icon-tab-bar-filter-type/icon-tab-bar-filter-type.component.mjs +3 -3
  133. package/esm2020/icon-tab-bar/components/icon-tab-bar-icon-type/icon-tab-bar-icon-type.component.mjs +3 -3
  134. package/esm2020/icon-tab-bar/components/icon-tab-bar-process-type/icon-tab-bar-process-type.component.mjs +3 -3
  135. package/esm2020/icon-tab-bar/components/icon-tab-bar-text-type/icon-tab-bar-text-type.component.mjs +3 -3
  136. package/esm2020/icon-tab-bar/components/popovers/icon-tab-bar-popover/icon-tab-bar-popover.component.mjs +3 -3
  137. package/esm2020/icon-tab-bar/components/popovers/icon-tab-bar-popover-base.class.mjs +3 -3
  138. package/esm2020/icon-tab-bar/components/popovers/text-type-popover/text-type-popover.component.mjs +3 -3
  139. package/esm2020/icon-tab-bar/directives/dnd/icon-bar-dnd-container.directive.mjs +3 -3
  140. package/esm2020/icon-tab-bar/directives/dnd/icon-bar-dnd-item.directive.mjs +3 -3
  141. package/esm2020/icon-tab-bar/directives/dnd/icon-bar-dnd-list.directive.mjs +3 -3
  142. package/esm2020/icon-tab-bar/icon-tab-bar.component.mjs +3 -3
  143. package/esm2020/icon-tab-bar/icon-tab-bar.module.mjs +4 -4
  144. package/esm2020/info-label/info-label.component.mjs +3 -3
  145. package/esm2020/info-label/info-label.module.mjs +4 -4
  146. package/esm2020/link/link.component.mjs +3 -3
  147. package/esm2020/link/link.module.mjs +4 -4
  148. package/esm2020/list/action-list-item/action-list-item.component.mjs +3 -3
  149. package/esm2020/list/action-list-item/action-list-item.module.mjs +4 -4
  150. package/esm2020/list/base-list-item.mjs +6 -6
  151. package/esm2020/list/display-list-item/display-list-item.component.mjs +3 -3
  152. package/esm2020/list/display-list-item/display-list-item.module.mjs +4 -4
  153. package/esm2020/list/free-content-list-item/free-content-list-item.component.mjs +3 -3
  154. package/esm2020/list/list-group-footer.component.mjs +3 -3
  155. package/esm2020/list/list-group-header.component.mjs +3 -3
  156. package/esm2020/list/list.component.mjs +4 -4
  157. package/esm2020/list/list.config.mjs +3 -3
  158. package/esm2020/list/list.module.mjs +4 -4
  159. package/esm2020/list/load-more-content.directive.mjs +3 -3
  160. package/esm2020/list/object-list-item/object-list-item-row.component.mjs +3 -3
  161. package/esm2020/list/object-list-item/object-list-item.component.mjs +3 -3
  162. package/esm2020/list/object-list-item/object-list-item.module.mjs +4 -4
  163. package/esm2020/list/standard-list-item/standard-list-item.component.mjs +3 -3
  164. package/esm2020/list/standard-list-item/standard-list-item.module.mjs +4 -4
  165. package/esm2020/menu/menu-item.component.mjs +3 -3
  166. package/esm2020/menu/menu-trigger.directive.mjs +3 -3
  167. package/esm2020/menu/menu.component.mjs +3 -3
  168. package/esm2020/menu/menu.module.mjs +4 -4
  169. package/esm2020/menu-button/menu-button.component.mjs +3 -3
  170. package/esm2020/menu-button/menu-button.module.mjs +4 -4
  171. package/esm2020/message-popover/components/message-popover-form-wrapper/message-popover-form-wrapper.component.mjs +3 -3
  172. package/esm2020/message-popover/components/message-view/message-view.component.mjs +5 -5
  173. package/esm2020/message-popover/directives/message-popover-form-item.directive.mjs +3 -3
  174. package/esm2020/message-popover/message-popover.component.mjs +3 -3
  175. package/esm2020/message-popover/platform-message-popover.module.mjs +4 -4
  176. package/esm2020/object-attribute/object-attribute.component.mjs +3 -3
  177. package/esm2020/object-attribute/object-attribute.module.mjs +4 -4
  178. package/esm2020/object-marker/object-marker.component.mjs +3 -3
  179. package/esm2020/object-marker/object-marker.module.mjs +4 -4
  180. package/esm2020/object-status/object-status.component.mjs +3 -3
  181. package/esm2020/object-status/object-status.module.mjs +4 -4
  182. package/esm2020/page-footer/page-footer.component.mjs +3 -3
  183. package/esm2020/page-footer/page-footer.module.mjs +4 -4
  184. package/esm2020/panel/panel-actions.component.mjs +3 -3
  185. package/esm2020/panel/panel-content/panel-content.component.mjs +3 -3
  186. package/esm2020/panel/panel.component.mjs +3 -3
  187. package/esm2020/panel/panel.config.mjs +3 -3
  188. package/esm2020/panel/panel.module.mjs +4 -4
  189. package/esm2020/search-field/search-field-mobile/search-field/search-field-mobile.component.mjs +5 -5
  190. package/esm2020/search-field/search-field-mobile/search-field-mobile.module.mjs +4 -4
  191. package/esm2020/search-field/search-field.component.mjs +9 -9
  192. package/esm2020/search-field/search-field.module.mjs +4 -4
  193. package/esm2020/settings-generator/controls/theme-selector-list/theme-selector-list.component.mjs +7 -7
  194. package/esm2020/settings-generator/layouts/base-settings-generator-layout.mjs +3 -3
  195. package/esm2020/settings-generator/layouts/settings-generator-sidebar-layout/settings-generator-sidebar-icon/settings-generator-sidebar-icon.component.mjs +3 -3
  196. package/esm2020/settings-generator/layouts/settings-generator-sidebar-layout/settings-generator-sidebar-layout.component.mjs +3 -3
  197. package/esm2020/settings-generator/settings-generator-content/settings-generator-content.component.mjs +3 -3
  198. package/esm2020/settings-generator/settings-generator-content/settings-generator-section/settings-generator-section.component.mjs +3 -3
  199. package/esm2020/settings-generator/settings-generator-layout-accessor.service.mjs +3 -3
  200. package/esm2020/settings-generator/settings-generator.component.mjs +3 -3
  201. package/esm2020/settings-generator/settings-generator.module.mjs +4 -4
  202. package/esm2020/settings-generator/settings-generator.service.mjs +3 -3
  203. package/esm2020/shared/base.mjs +3 -3
  204. package/esm2020/shared/form/base.input.mjs +3 -3
  205. package/esm2020/shared/form/collection-base.input.mjs +3 -3
  206. package/esm2020/shared/form/inline-layout-collection-base.input.mjs +9 -9
  207. package/esm2020/shared/pipes/convert-bytes/convert-bytes.pipe.mjs +3 -3
  208. package/esm2020/shared/pipes/pipe.module.mjs +4 -4
  209. package/esm2020/shared/platform-content-density-deprecations/directives/platform-compact-deprecation.directive.mjs +3 -3
  210. package/esm2020/shared/platform-content-density-deprecations/directives/platform-content-density-deprecation.directive.mjs +3 -3
  211. package/esm2020/shared/platform-content-density-deprecations/platform-content-density-deprecations.module.mjs +4 -4
  212. package/esm2020/shared/platform.config.mjs +3 -3
  213. package/esm2020/slider/slider.component.mjs +3 -3
  214. package/esm2020/slider/slider.module.mjs +4 -4
  215. package/esm2020/smart-filter-bar/components/smart-filter-bar-condition-field/base-smart-filter-bar-condition-field.mjs +3 -3
  216. package/esm2020/smart-filter-bar/components/smart-filter-bar-condition-field/smart-filter-bar-condition-field.component.mjs +3 -3
  217. package/esm2020/smart-filter-bar/components/smart-filter-bar-conditions-dialog/smart-filter-bar-conditions-dialog.component.mjs +3 -3
  218. package/esm2020/smart-filter-bar/components/smart-filter-bar-settings-dialog/smart-filter-bar-settings-dialog.component.mjs +3 -3
  219. package/esm2020/smart-filter-bar/directives/smart-filter-bar-field-definition.directive.mjs +3 -3
  220. package/esm2020/smart-filter-bar/directives/smart-filter-bar-subject.directive.mjs +3 -3
  221. package/esm2020/smart-filter-bar/directives/smart-filter-bar-toolbar-item.directive.mjs +3 -3
  222. package/esm2020/smart-filter-bar/smart-filter-bar.class.mjs +3 -3
  223. package/esm2020/smart-filter-bar/smart-filter-bar.component.mjs +3 -3
  224. package/esm2020/smart-filter-bar/smart-filter-bar.module.mjs +4 -4
  225. package/esm2020/smart-filter-bar/smart-filter-bar.service.mjs +3 -3
  226. package/esm2020/split-menu-button/split-menu-button.component.mjs +3 -3
  227. package/esm2020/split-menu-button/split-menu-button.module.mjs +4 -4
  228. package/esm2020/table/components/no-data-wrapper/no-data-wrapper.component.mjs +3 -3
  229. package/esm2020/table/components/reset-button/reset-button.component.mjs +3 -3
  230. package/esm2020/table/components/table-cell-header-popover/table-cell-header-popover.component.mjs +5 -5
  231. package/esm2020/table/components/table-column/table-column.component.mjs +3 -3
  232. package/esm2020/table/components/table-column-resizer/table-column-resizer.component.mjs +3 -3
  233. package/esm2020/table/components/table-editable-cell/table-editable-cell.component.mjs +3 -3
  234. package/esm2020/table/components/table-group-row/table-group-row.component.mjs +3 -3
  235. package/esm2020/table/components/table-header-cell-content/table-header-cell-content.component.mjs +3 -3
  236. package/esm2020/table/components/table-header-row/table-header-row.component.mjs +10 -6
  237. package/esm2020/table/components/table-p13-dialog/columns/columns.component.mjs +3 -3
  238. package/esm2020/table/components/table-p13-dialog/filtering/filter-rule.component.mjs +3 -3
  239. package/esm2020/table/components/table-p13-dialog/filtering/filtering.component.mjs +3 -3
  240. package/esm2020/table/components/table-p13-dialog/grouping/grouping.component.mjs +3 -3
  241. package/esm2020/table/components/table-p13-dialog/sorting/sorting.component.mjs +8 -8
  242. package/esm2020/table/components/table-p13-dialog/table-p13-columns.component.mjs +3 -3
  243. package/esm2020/table/components/table-p13-dialog/table-p13-dialog.component.mjs +3 -3
  244. package/esm2020/table/components/table-p13-dialog/table-p13-filter.component.mjs +3 -3
  245. package/esm2020/table/components/table-p13-dialog/table-p13-group.component.mjs +3 -3
  246. package/esm2020/table/components/table-p13-dialog/table-p13-sort.component.mjs +3 -3
  247. package/esm2020/table/components/table-popping-row/table-popping-row.component.mjs +3 -3
  248. package/esm2020/table/components/table-row/table-row.component.mjs +3 -3
  249. package/esm2020/table/components/table-toolbar/table-toolbar-actions.component.mjs +3 -3
  250. package/esm2020/table/components/table-toolbar/table-toolbar-left-actions.component.mjs +3 -3
  251. package/esm2020/table/components/table-toolbar/table-toolbar.component.mjs +3 -3
  252. package/esm2020/table/components/table-view-settings-dialog/filtering/filter-custom.component.mjs +3 -3
  253. package/esm2020/table/components/table-view-settings-dialog/filtering/filter-multi-select.component.mjs +3 -3
  254. package/esm2020/table/components/table-view-settings-dialog/filtering/filter-single-select.component.mjs +3 -3
  255. package/esm2020/table/components/table-view-settings-dialog/filtering/filter-step.component.mjs +3 -3
  256. package/esm2020/table/components/table-view-settings-dialog/filtering/filters-list-step.component.mjs +3 -3
  257. package/esm2020/table/components/table-view-settings-dialog/filtering/filters.component.mjs +3 -3
  258. package/esm2020/table/components/table-view-settings-dialog/grouping/grouping.component.mjs +3 -3
  259. package/esm2020/table/components/table-view-settings-dialog/sorting/sorting.component.mjs +3 -3
  260. package/esm2020/table/components/table-view-settings-dialog/table-view-settings-dialog.component.mjs +3 -3
  261. package/esm2020/table/components/table-view-settings-dialog/table-view-settings-filter.component.mjs +3 -3
  262. package/esm2020/table/table.component.mjs +31 -13
  263. package/esm2020/table/table.module.mjs +4 -4
  264. package/esm2020/table-helpers/constants/index.mjs +3 -2
  265. package/esm2020/table-helpers/directives/platform-table-column-responsive.directive.mjs +3 -3
  266. package/esm2020/table-helpers/directives/table-cell-header-popover.directive.mjs +3 -3
  267. package/esm2020/table-helpers/directives/table-cell-resizable.directive.mjs +3 -3
  268. package/esm2020/table-helpers/directives/table-cell-selectable.directive.mjs +3 -3
  269. package/esm2020/table-helpers/directives/table-cell.directive.mjs +12 -12
  270. package/esm2020/table-helpers/directives/table-data-source.directive.mjs +3 -3
  271. package/esm2020/table-helpers/directives/table-draggable.directive.mjs +3 -3
  272. package/esm2020/table-helpers/directives/table-header-resizer.directive.mjs +3 -3
  273. package/esm2020/table-helpers/directives/table-header.directive.mjs +6 -6
  274. package/esm2020/table-helpers/directives/table-initial-state.directive.mjs +3 -3
  275. package/esm2020/table-helpers/directives/table-scrollable.directive.mjs +12 -4
  276. package/esm2020/table-helpers/directives/table-view-settings-filter-custom.directive.mjs +3 -3
  277. package/esm2020/table-helpers/directives/table-virtual-scroll.directive.mjs +9 -5
  278. package/esm2020/table-helpers/interfaces/table-state.interface.mjs +1 -1
  279. package/esm2020/table-helpers/pipes/cell-styles.pipe.mjs +3 -3
  280. package/esm2020/table-helpers/pipes/column-resizable-side.pipe.mjs +3 -3
  281. package/esm2020/table-helpers/pipes/row-classes.pipe.mjs +3 -3
  282. package/esm2020/table-helpers/pipes/selection-cell-styles.pipe.mjs +3 -3
  283. package/esm2020/table-helpers/services/table-column-resize.service.mjs +3 -3
  284. package/esm2020/table-helpers/services/table-responsive.service.mjs +3 -3
  285. package/esm2020/table-helpers/services/table-row.service.mjs +3 -3
  286. package/esm2020/table-helpers/services/table-scroll-dispatcher.service.mjs +4 -4
  287. package/esm2020/table-helpers/services/table.service.mjs +7 -5
  288. package/esm2020/table-helpers/table-helpers.module.mjs +4 -4
  289. package/esm2020/thumbnail/thumbnail-details/thumbnail-details.component.mjs +3 -3
  290. package/esm2020/thumbnail/thumbnail-image/thumbnail-image.component.mjs +3 -3
  291. package/esm2020/thumbnail/thumbnail.component.mjs +3 -3
  292. package/esm2020/thumbnail/thumbnail.module.mjs +4 -4
  293. package/esm2020/upload-collection/dialogs/move-to/move-to.component.mjs +3 -3
  294. package/esm2020/upload-collection/dialogs/new-folder/new-folder.component.mjs +5 -5
  295. package/esm2020/upload-collection/directives/upload-collection-dragndrop.directive.mjs +3 -3
  296. package/esm2020/upload-collection/services/files-validator.service.mjs +3 -3
  297. package/esm2020/upload-collection/upload-collection/upload-collection.component.mjs +3 -3
  298. package/esm2020/upload-collection/upload-collection.module.mjs +4 -4
  299. package/esm2020/value-help-dialog/components/base-tab/vhd-base-tab.component.mjs +3 -3
  300. package/esm2020/value-help-dialog/components/define-tab/define-tab.component.mjs +3 -3
  301. package/esm2020/value-help-dialog/components/select-tab/select-tab.component.mjs +3 -3
  302. package/esm2020/value-help-dialog/components/value-help-dialog-filter/value-help-dialog-filter.component.mjs +3 -3
  303. package/esm2020/value-help-dialog/components/value-help-dialog-search/value-help-dialog-search.component.mjs +3 -3
  304. package/esm2020/value-help-dialog/directives/condition-count-message.directive.mjs +3 -3
  305. package/esm2020/value-help-dialog/value-help-dialog/value-help-dialog.component.mjs +3 -3
  306. package/esm2020/value-help-dialog/value-help-dialog.module.mjs +4 -4
  307. package/esm2020/variant-management/components/manage-variant-item/manage-variant-item.component.mjs +3 -3
  308. package/esm2020/variant-management/components/manage-variants-dialog/manage-variants-dialog.component.mjs +3 -3
  309. package/esm2020/variant-management/components/variant-management-wrapper/variant-management-wrapper.component.mjs +3 -3
  310. package/esm2020/variant-management/directives/variant-management-dirty-label.directive.mjs +3 -3
  311. package/esm2020/variant-management/variant-management.component.mjs +4 -4
  312. package/esm2020/variant-management/variant-management.module.mjs +4 -4
  313. package/esm2020/wizard-generator/base-wizard-generator.mjs +3 -3
  314. package/esm2020/wizard-generator/components/dialog-wizard-generator/dialog-wizard-generator.component.mjs +5 -5
  315. package/esm2020/wizard-generator/components/wizard-body/wizard-body.component.mjs +3 -3
  316. package/esm2020/wizard-generator/components/wizard-generator/wizard-generator.component.mjs +3 -3
  317. package/esm2020/wizard-generator/components/wizard-generator-step/wizard-generator-step.component.mjs +3 -3
  318. package/esm2020/wizard-generator/components/wizard-summary-step/wizard-summary-section/wizard-summary-section.component.mjs +3 -3
  319. package/esm2020/wizard-generator/components/wizard-summary-step/wizard-summary-step.component.mjs +3 -3
  320. package/esm2020/wizard-generator/directives/wizard-generator-finish-button.directive.mjs +3 -3
  321. package/esm2020/wizard-generator/directives/wizard-generator-go-next-button.directive.mjs +3 -3
  322. package/esm2020/wizard-generator/directives/wizard-generator-review-button.directive.mjs +3 -3
  323. package/esm2020/wizard-generator/directives/wizard-generator-summary-step.directive.mjs +3 -3
  324. package/esm2020/wizard-generator/wizard-dialog-generator.service.mjs +3 -3
  325. package/esm2020/wizard-generator/wizard-generator.module.mjs +4 -4
  326. package/esm2020/wizard-generator/wizard-generator.service.mjs +3 -3
  327. package/fesm2015/fundamental-ngx-platform-action-bar.mjs +7 -7
  328. package/fesm2015/fundamental-ngx-platform-action-button-group.mjs +7 -7
  329. package/fesm2015/fundamental-ngx-platform-approval-flow.mjs +43 -43
  330. package/fesm2015/fundamental-ngx-platform-approval-flow.mjs.map +1 -1
  331. package/fesm2015/fundamental-ngx-platform-button.mjs +7 -7
  332. package/fesm2015/fundamental-ngx-platform-dynamic-page.mjs +46 -46
  333. package/fesm2015/fundamental-ngx-platform-dynamic-page.mjs.map +1 -1
  334. package/fesm2015/fundamental-ngx-platform-feed-input.mjs +7 -7
  335. package/fesm2015/fundamental-ngx-platform-form.mjs +305 -305
  336. package/fesm2015/fundamental-ngx-platform-form.mjs.map +1 -1
  337. package/fesm2015/fundamental-ngx-platform-icon-tab-bar.mjs +40 -40
  338. package/fesm2015/fundamental-ngx-platform-info-label.mjs +7 -7
  339. package/fesm2015/fundamental-ngx-platform-link.mjs +7 -7
  340. package/fesm2015/fundamental-ngx-platform-list.mjs +60 -60
  341. package/fesm2015/fundamental-ngx-platform-list.mjs.map +1 -1
  342. package/fesm2015/fundamental-ngx-platform-menu-button.mjs +7 -7
  343. package/fesm2015/fundamental-ngx-platform-menu.mjs +13 -13
  344. package/fesm2015/fundamental-ngx-platform-message-popover.mjs +17 -17
  345. package/fesm2015/fundamental-ngx-platform-message-popover.mjs.map +1 -1
  346. package/fesm2015/fundamental-ngx-platform-object-attribute.mjs +7 -7
  347. package/fesm2015/fundamental-ngx-platform-object-marker.mjs +7 -7
  348. package/fesm2015/fundamental-ngx-platform-object-status.mjs +7 -7
  349. package/fesm2015/fundamental-ngx-platform-page-footer.mjs +7 -7
  350. package/fesm2015/fundamental-ngx-platform-panel.mjs +16 -16
  351. package/fesm2015/fundamental-ngx-platform-search-field.mjs +21 -21
  352. package/fesm2015/fundamental-ngx-platform-search-field.mjs.map +1 -1
  353. package/fesm2015/fundamental-ngx-platform-settings-generator.mjs +34 -34
  354. package/fesm2015/fundamental-ngx-platform-settings-generator.mjs.map +1 -1
  355. package/fesm2015/fundamental-ngx-platform-shared.mjs +38 -38
  356. package/fesm2015/fundamental-ngx-platform-slider.mjs +7 -7
  357. package/fesm2015/fundamental-ngx-platform-smart-filter-bar.mjs +34 -34
  358. package/fesm2015/fundamental-ngx-platform-smart-filter-bar.mjs.map +1 -1
  359. package/fesm2015/fundamental-ngx-platform-split-menu-button.mjs +7 -7
  360. package/fesm2015/fundamental-ngx-platform-table-helpers.mjs +97 -85
  361. package/fesm2015/fundamental-ngx-platform-table-helpers.mjs.map +1 -1
  362. package/fesm2015/fundamental-ngx-platform-table.mjs +147 -125
  363. package/fesm2015/fundamental-ngx-platform-table.mjs.map +1 -1
  364. package/fesm2015/fundamental-ngx-platform-thumbnail.mjs +13 -13
  365. package/fesm2015/fundamental-ngx-platform-upload-collection.mjs +20 -20
  366. package/fesm2015/fundamental-ngx-platform-upload-collection.mjs.map +1 -1
  367. package/fesm2015/fundamental-ngx-platform-value-help-dialog.mjs +25 -25
  368. package/fesm2015/fundamental-ngx-platform-variant-management.mjs +20 -20
  369. package/fesm2015/fundamental-ngx-platform-variant-management.mjs.map +1 -1
  370. package/fesm2015/fundamental-ngx-platform-wizard-generator.mjs +44 -44
  371. package/fesm2015/fundamental-ngx-platform-wizard-generator.mjs.map +1 -1
  372. package/fesm2015/fundamental-ngx-platform.mjs +4 -4
  373. package/fesm2020/fundamental-ngx-platform-action-bar.mjs +7 -7
  374. package/fesm2020/fundamental-ngx-platform-action-button-group.mjs +7 -7
  375. package/fesm2020/fundamental-ngx-platform-approval-flow.mjs +43 -43
  376. package/fesm2020/fundamental-ngx-platform-approval-flow.mjs.map +1 -1
  377. package/fesm2020/fundamental-ngx-platform-button.mjs +7 -7
  378. package/fesm2020/fundamental-ngx-platform-dynamic-page.mjs +46 -46
  379. package/fesm2020/fundamental-ngx-platform-dynamic-page.mjs.map +1 -1
  380. package/fesm2020/fundamental-ngx-platform-feed-input.mjs +7 -7
  381. package/fesm2020/fundamental-ngx-platform-form.mjs +305 -305
  382. package/fesm2020/fundamental-ngx-platform-form.mjs.map +1 -1
  383. package/fesm2020/fundamental-ngx-platform-icon-tab-bar.mjs +40 -40
  384. package/fesm2020/fundamental-ngx-platform-info-label.mjs +7 -7
  385. package/fesm2020/fundamental-ngx-platform-link.mjs +7 -7
  386. package/fesm2020/fundamental-ngx-platform-list.mjs +60 -60
  387. package/fesm2020/fundamental-ngx-platform-list.mjs.map +1 -1
  388. package/fesm2020/fundamental-ngx-platform-menu-button.mjs +7 -7
  389. package/fesm2020/fundamental-ngx-platform-menu.mjs +13 -13
  390. package/fesm2020/fundamental-ngx-platform-message-popover.mjs +17 -17
  391. package/fesm2020/fundamental-ngx-platform-message-popover.mjs.map +1 -1
  392. package/fesm2020/fundamental-ngx-platform-object-attribute.mjs +7 -7
  393. package/fesm2020/fundamental-ngx-platform-object-marker.mjs +7 -7
  394. package/fesm2020/fundamental-ngx-platform-object-status.mjs +7 -7
  395. package/fesm2020/fundamental-ngx-platform-page-footer.mjs +7 -7
  396. package/fesm2020/fundamental-ngx-platform-panel.mjs +16 -16
  397. package/fesm2020/fundamental-ngx-platform-search-field.mjs +21 -21
  398. package/fesm2020/fundamental-ngx-platform-search-field.mjs.map +1 -1
  399. package/fesm2020/fundamental-ngx-platform-settings-generator.mjs +34 -34
  400. package/fesm2020/fundamental-ngx-platform-settings-generator.mjs.map +1 -1
  401. package/fesm2020/fundamental-ngx-platform-shared.mjs +38 -38
  402. package/fesm2020/fundamental-ngx-platform-slider.mjs +7 -7
  403. package/fesm2020/fundamental-ngx-platform-smart-filter-bar.mjs +34 -34
  404. package/fesm2020/fundamental-ngx-platform-smart-filter-bar.mjs.map +1 -1
  405. package/fesm2020/fundamental-ngx-platform-split-menu-button.mjs +7 -7
  406. package/fesm2020/fundamental-ngx-platform-table-helpers.mjs +100 -85
  407. package/fesm2020/fundamental-ngx-platform-table-helpers.mjs.map +1 -1
  408. package/fesm2020/fundamental-ngx-platform-table.mjs +147 -125
  409. package/fesm2020/fundamental-ngx-platform-table.mjs.map +1 -1
  410. package/fesm2020/fundamental-ngx-platform-thumbnail.mjs +13 -13
  411. package/fesm2020/fundamental-ngx-platform-upload-collection.mjs +20 -20
  412. package/fesm2020/fundamental-ngx-platform-upload-collection.mjs.map +1 -1
  413. package/fesm2020/fundamental-ngx-platform-value-help-dialog.mjs +25 -25
  414. package/fesm2020/fundamental-ngx-platform-variant-management.mjs +20 -20
  415. package/fesm2020/fundamental-ngx-platform-variant-management.mjs.map +1 -1
  416. package/fesm2020/fundamental-ngx-platform-wizard-generator.mjs +44 -44
  417. package/fesm2020/fundamental-ngx-platform-wizard-generator.mjs.map +1 -1
  418. package/fesm2020/fundamental-ngx-platform.mjs +4 -4
  419. package/fundamental-ngx-platform-v0.43.0-rc.21.tgz +0 -0
  420. package/package.json +5 -5
  421. package/schematics/ng-add/index.js +1 -1
  422. package/table/components/table-header-row/table-header-row.component.d.ts +3 -1
  423. package/table/table.component.d.ts +7 -1
  424. package/table-helpers/directives/table-scrollable.directive.d.ts +2 -0
  425. package/table-helpers/interfaces/table-state.interface.d.ts +1 -0
  426. package/table-helpers/services/table-scroll-dispatcher.service.d.ts +2 -0
  427. package/fundamental-ngx-platform-v0.43.0-rc.2.tgz +0 -0
@@ -68,8 +68,8 @@ export class MessageViewComponent {
68
68
  }
69
69
  }
70
70
  }
71
- MessageViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: MessageViewComponent, deps: [{ token: i1.DestroyedService }, { token: i1.TabbableElementService }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component });
72
- MessageViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: MessageViewComponent, selector: "fdp-message-view", inputs: { currentScreen: "currentScreen", filteredErrors: "filteredErrors", currentEntry: "currentEntry" }, outputs: { openDetails: "openDetails", focusItem: "focusItem", closePopover: "closePopover" }, host: { properties: { "class": "this._initialClass" } }, providers: [DestroyedService, TabbableElementService], viewQueries: [{ propertyName: "_listView", first: true, predicate: ["listView"], descendants: true, read: ElementRef }, { propertyName: "_detailsView", first: true, predicate: ["detailsView"], descendants: true, read: ElementRef }], ngImport: i0, template: "<ng-template #headingTemplate let-item>\n <ng-template #directiveHeading>\n <ng-template\n [ngTemplateOutlet]=\"item.heading.message || item.description.message\"\n [ngTemplateOutletContext]=\"{ $implicit: item.heading.error }\"\n ></ng-template>\n </ng-template>\n <ng-template #i18nHeading>\n <ng-template\n [ngTemplateOutlet]=\"item.heading.message\"\n [ngTemplateOutletContext]=\"{ $implicit: item.errors }\"\n ></ng-template>\n </ng-template>\n <ng-template #stringHeading>\n {{ item.heading.message | fdTranslate : { error: item.heading.error } : item.heading.message }}\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"\n item.heading.type === 'directive'\n ? directiveHeading\n : item.heading.type === 'string'\n ? stringHeading\n : i18nHeading\n \"\n ></ng-template>\n</ng-template>\n\n<ng-template #descriptionTemplate let-item>\n <ng-template #directiveDescription>\n <ng-template\n [ngTemplateOutlet]=\"item.description.message!\"\n [ngTemplateOutletContext]=\"{ $implicit: item.description.error }\"\n ></ng-template>\n </ng-template>\n <ng-template #i18nDescription>\n <ng-template\n [ngTemplateOutlet]=\"item.description.message!\"\n [ngTemplateOutletContext]=\"{ $implicit: item.errors }\"\n ></ng-template>\n </ng-template>\n <ng-template #stringDescription>\n {{ item.description.message | fdTranslate : { error: item.description.error } : item.description.message }}\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"\n item.heading.type === 'directive'\n ? directiveDescription\n : item.heading.type === 'string'\n ? stringDescription\n : i18nDescription\n \"\n ></ng-template>\n</ng-template>\n\n<div class=\"fd-message-view\">\n <section\n class=\"fd-message-view__list\"\n tabindex=\"-1\"\n [@openCloseList]=\"currentScreen === 'list' ? 'open' : 'closed'\"\n (@openCloseList.done)=\"_onListAnimationComplete($event)\"\n fd-scrollbar\n [overrideTabindex]=\"false\"\n >\n <ul #listView fd-list class=\"message-popover__list fd-list--message-view\" [navigationIndicator]=\"true\">\n <ng-container *ngFor=\"let group of filteredErrors\">\n <li fd-list-group-header *ngIf=\"group.group\">\n <span fd-list-title>{{ group.group }}</span>\n </li>\n <ng-container *ngFor=\"let item of group.errors; let i = index\">\n <li\n fd-list-item\n [tabindex]=\"i === 0 ? 0 : -1\"\n [ngClass]=\"{ 'fd-list__item--byline': !!item.description.message }\"\n (click)=\"_showDetails(item)\"\n >\n <a fd-list-link [navigationIndicator]=\"!!item.description.message\">\n <span\n fd-object-status\n class=\"fd-list__icon\"\n [status]=\"item.state\"\n [glyph]=\"'message-' + item.type\"\n ></span>\n <span fd-list-content>\n <span fd-list-title>\n <a\n tabindex=\"0\"\n *ngIf=\"item.element && !!item.description.message; else textHeading\"\n fd-link\n (click)=\"_focusElement($event, item)\"\n >\n {{ item.fieldName }}\n </a>\n <ng-template #textHeading>\n {{ item.fieldName }}\n </ng-template>\n </span>\n <span class=\"fd-list__subtitle\">\n <ng-template\n [ngTemplateOutlet]=\"headingTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n </span>\n </span>\n </a>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </section>\n <section class=\"fd-message-view__details\" [@openCloseDetails]=\"currentScreen === 'details' ? 'open' : 'closed'\">\n <div #detailsView>\n <ng-container *ngIf=\"currentEntry\">\n <span class=\"fd-message-view__details-title\">\n <span\n fd-object-status\n class=\"fd-message-view__icon\"\n [status]=\"currentEntry.state\"\n [glyph]=\"'message-' + currentEntry.type\"\n ></span>\n <ng-template\n [ngTemplateOutlet]=\"headingTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: currentEntry }\"\n ></ng-template>\n </span>\n <span class=\"fd-message-view__details-description\" *ngIf=\"currentEntry.description.message\">\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: currentEntry }\"\n ></ng-template>\n </span>\n </ng-container>\n </div>\n </section>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "unreadIndicator"], outputs: ["focusEscapeList"] }, { kind: "component", type: i3.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "ariaDescribedBy", "noData", "action", "interactive", "growing", "counter", "unread", "selectedListItemScreenReaderText", "navigatedListItemScreenReaderText", "navigatableListItemScreenReaderText"], outputs: ["keyDown"] }, { kind: "directive", type: i3.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: i3.ListGroupHeaderDirective, selector: "[fdListGroupHeader], [fd-list-group-header]", inputs: ["nativeElementId"], outputs: ["keyDown"] }, { kind: "directive", type: i3.ListLinkDirective, selector: "[fd-list-link], [fdListLink]", inputs: ["navigationIndicator", "navigated", "focusable"] }, { kind: "directive", type: i3.ListContentDirective, selector: "[fdListContent], [fd-list-content]", inputs: ["twoCol"] }, { kind: "component", type: i4.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large"] }, { kind: "directive", type: i5.ScrollbarDirective, selector: "[fdScrollbar], [fd-scrollbar]", inputs: ["noHorizontalScroll", "noVerticalScroll", "alwaysVisible", "overrideTabindex"] }, { kind: "component", type: i6.LinkComponent, selector: "[fdLink], [fd-link], [fd-breadcrumb-link]", inputs: ["class", "emphasized", "disabled", "inverted", "subtle", "undecorated"] }, { kind: "pipe", type: i7.FdTranslatePipe, name: "fdTranslate" }], animations: [
71
+ MessageViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MessageViewComponent, deps: [{ token: i1.DestroyedService }, { token: i1.TabbableElementService }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Component });
72
+ MessageViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: MessageViewComponent, selector: "fdp-message-view", inputs: { currentScreen: "currentScreen", filteredErrors: "filteredErrors", currentEntry: "currentEntry" }, outputs: { openDetails: "openDetails", focusItem: "focusItem", closePopover: "closePopover" }, host: { properties: { "class": "this._initialClass" } }, providers: [DestroyedService, TabbableElementService], viewQueries: [{ propertyName: "_listView", first: true, predicate: ["listView"], descendants: true, read: ElementRef }, { propertyName: "_detailsView", first: true, predicate: ["detailsView"], descendants: true, read: ElementRef }], ngImport: i0, template: "<ng-template #headingTemplate let-item>\n <ng-template #directiveHeading>\n <ng-template\n [ngTemplateOutlet]=\"item.heading.message || item.description.message\"\n [ngTemplateOutletContext]=\"{ $implicit: item.heading.error }\"\n ></ng-template>\n </ng-template>\n <ng-template #i18nHeading>\n <ng-template\n [ngTemplateOutlet]=\"item.heading.message\"\n [ngTemplateOutletContext]=\"{ $implicit: item.errors }\"\n ></ng-template>\n </ng-template>\n <ng-template #stringHeading>\n {{ item.heading.message | fdTranslate : { error: item.heading.error } : item.heading.message }}\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"\n item.heading.type === 'directive'\n ? directiveHeading\n : item.heading.type === 'string'\n ? stringHeading\n : i18nHeading\n \"\n ></ng-template>\n</ng-template>\n\n<ng-template #descriptionTemplate let-item>\n <ng-template #directiveDescription>\n <ng-template\n [ngTemplateOutlet]=\"item.description.message!\"\n [ngTemplateOutletContext]=\"{ $implicit: item.description.error }\"\n ></ng-template>\n </ng-template>\n <ng-template #i18nDescription>\n <ng-template\n [ngTemplateOutlet]=\"item.description.message!\"\n [ngTemplateOutletContext]=\"{ $implicit: item.errors }\"\n ></ng-template>\n </ng-template>\n <ng-template #stringDescription>\n {{ item.description.message | fdTranslate : { error: item.description.error } : item.description.message }}\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"\n item.heading.type === 'directive'\n ? directiveDescription\n : item.heading.type === 'string'\n ? stringDescription\n : i18nDescription\n \"\n ></ng-template>\n</ng-template>\n\n<div class=\"fd-message-view\">\n <section\n class=\"fd-message-view__list\"\n tabindex=\"-1\"\n [@openCloseList]=\"currentScreen === 'list' ? 'open' : 'closed'\"\n (@openCloseList.done)=\"_onListAnimationComplete($event)\"\n fd-scrollbar\n [overrideTabindex]=\"false\"\n >\n <ul #listView fd-list class=\"message-popover__list fd-list--message-view\" [navigationIndicator]=\"true\">\n <ng-container *ngFor=\"let group of filteredErrors\">\n <li fd-list-group-header *ngIf=\"group.group\">\n <span fd-list-title>{{ group.group }}</span>\n </li>\n <ng-container *ngFor=\"let item of group.errors; let i = index\">\n <li fd-list-item [tabindex]=\"i === 0 ? 0 : -1\" [byline]=\"true\" (click)=\"_showDetails(item)\">\n <ng-template #itemIcon>\n <span\n fd-object-status\n class=\"fd-list__icon\"\n [status]=\"item.state\"\n [glyph]=\"'message-' + item.type\"\n ></span>\n </ng-template>\n <ng-template #listSubtitle>\n <span class=\"fd-list__subtitle\">\n <ng-template\n [ngTemplateOutlet]=\"headingTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n </span>\n </ng-template>\n <span\n fd-list-link\n [navigationIndicator]=\"!!item.description.message\"\n *ngIf=\"item.element && !!item.description.message; else anchorListLink\"\n >\n <ng-template [ngTemplateOutlet]=\"itemIcon\"></ng-template>\n <span fd-list-content>\n <span fd-list-title>\n <a tabindex=\"0\" fd-link (click)=\"_focusElement($event, item)\">\n {{ item.fieldName }}\n </a>\n </span>\n <ng-template [ngTemplateOutlet]=\"listSubtitle\"></ng-template>\n </span>\n </span>\n <ng-template #anchorListLink>\n <a fd-list-link [navigationIndicator]=\"!!item.description.message\">\n <ng-template [ngTemplateOutlet]=\"itemIcon\"></ng-template>\n <span fd-list-content>\n <span fd-list-title>{{ item.fieldName }}</span>\n <ng-template [ngTemplateOutlet]=\"listSubtitle\"></ng-template>\n </span>\n </a>\n </ng-template>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </section>\n <section class=\"fd-message-view__details\" [@openCloseDetails]=\"currentScreen === 'details' ? 'open' : 'closed'\">\n <div #detailsView>\n <ng-container *ngIf=\"currentEntry\">\n <span class=\"fd-message-view__details-title\">\n <span\n fd-object-status\n class=\"fd-message-view__icon\"\n [status]=\"currentEntry.state\"\n [glyph]=\"'message-' + currentEntry.type\"\n ></span>\n <ng-template\n [ngTemplateOutlet]=\"headingTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: currentEntry }\"\n ></ng-template>\n </span>\n <span class=\"fd-message-view__details-description\" *ngIf=\"currentEntry.description.message\">\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: currentEntry }\"\n ></ng-template>\n </span>\n </ng-container>\n </div>\n </section>\n</div>\n", dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3.ListComponent, selector: "[fd-list], [fdList]", inputs: ["dropdownMode", "multiInputMode", "mobileMode", "hasMessage", "noBorder", "navigationIndicator", "selection", "keyboardSupport", "byline", "unreadIndicator"], outputs: ["focusEscapeList"] }, { kind: "component", type: i3.ListItemComponent, selector: "[fdListItem] ,[fd-list-item]", inputs: ["selected", "ariaDescribedBy", "noData", "action", "interactive", "growing", "counter", "unread", "byline", "selectedListItemScreenReaderText", "navigatedListItemScreenReaderText", "navigatableListItemScreenReaderText"], outputs: ["keyDown"] }, { kind: "directive", type: i3.ListTitleDirective, selector: "[fd-list-title], [fdListTitle]", inputs: ["wrap"] }, { kind: "directive", type: i3.ListGroupHeaderDirective, selector: "[fdListGroupHeader], [fd-list-group-header]", inputs: ["nativeElementId"], outputs: ["keyDown"] }, { kind: "directive", type: i3.ListLinkDirective, selector: "[fd-list-link], [fdListLink]", inputs: ["navigationIndicator", "navigated", "focusable"] }, { kind: "directive", type: i3.ListContentDirective, selector: "[fdListContent], [fd-list-content]", inputs: ["twoCol"] }, { kind: "component", type: i4.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large"] }, { kind: "directive", type: i5.ScrollbarDirective, selector: "[fdScrollbar], [fd-scrollbar]", inputs: ["noHorizontalScroll", "noVerticalScroll", "alwaysVisible", "overrideTabindex"] }, { kind: "component", type: i6.LinkComponent, selector: "[fdLink], [fd-link], [fd-breadcrumb-link]", inputs: ["class", "emphasized", "disabled", "inverted", "subtle", "undecorated"] }, { kind: "pipe", type: i7.FdTranslatePipe, name: "fdTranslate" }], animations: [
73
73
  trigger('openCloseList', [
74
74
  // ...
75
75
  state('open', style({
@@ -115,7 +115,7 @@ MessageViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", v
115
115
  ])
116
116
  ])
117
117
  ], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
118
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: MessageViewComponent, decorators: [{
118
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MessageViewComponent, decorators: [{
119
119
  type: Component,
120
120
  args: [{ selector: 'fdp-message-view', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [DestroyedService, TabbableElementService], animations: [
121
121
  trigger('openCloseList', [
@@ -162,7 +162,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
162
162
  animate('0.1s .1s cubic-bezier(0, 0, 0.2, 1)')
163
163
  ])
164
164
  ])
165
- ], template: "<ng-template #headingTemplate let-item>\n <ng-template #directiveHeading>\n <ng-template\n [ngTemplateOutlet]=\"item.heading.message || item.description.message\"\n [ngTemplateOutletContext]=\"{ $implicit: item.heading.error }\"\n ></ng-template>\n </ng-template>\n <ng-template #i18nHeading>\n <ng-template\n [ngTemplateOutlet]=\"item.heading.message\"\n [ngTemplateOutletContext]=\"{ $implicit: item.errors }\"\n ></ng-template>\n </ng-template>\n <ng-template #stringHeading>\n {{ item.heading.message | fdTranslate : { error: item.heading.error } : item.heading.message }}\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"\n item.heading.type === 'directive'\n ? directiveHeading\n : item.heading.type === 'string'\n ? stringHeading\n : i18nHeading\n \"\n ></ng-template>\n</ng-template>\n\n<ng-template #descriptionTemplate let-item>\n <ng-template #directiveDescription>\n <ng-template\n [ngTemplateOutlet]=\"item.description.message!\"\n [ngTemplateOutletContext]=\"{ $implicit: item.description.error }\"\n ></ng-template>\n </ng-template>\n <ng-template #i18nDescription>\n <ng-template\n [ngTemplateOutlet]=\"item.description.message!\"\n [ngTemplateOutletContext]=\"{ $implicit: item.errors }\"\n ></ng-template>\n </ng-template>\n <ng-template #stringDescription>\n {{ item.description.message | fdTranslate : { error: item.description.error } : item.description.message }}\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"\n item.heading.type === 'directive'\n ? directiveDescription\n : item.heading.type === 'string'\n ? stringDescription\n : i18nDescription\n \"\n ></ng-template>\n</ng-template>\n\n<div class=\"fd-message-view\">\n <section\n class=\"fd-message-view__list\"\n tabindex=\"-1\"\n [@openCloseList]=\"currentScreen === 'list' ? 'open' : 'closed'\"\n (@openCloseList.done)=\"_onListAnimationComplete($event)\"\n fd-scrollbar\n [overrideTabindex]=\"false\"\n >\n <ul #listView fd-list class=\"message-popover__list fd-list--message-view\" [navigationIndicator]=\"true\">\n <ng-container *ngFor=\"let group of filteredErrors\">\n <li fd-list-group-header *ngIf=\"group.group\">\n <span fd-list-title>{{ group.group }}</span>\n </li>\n <ng-container *ngFor=\"let item of group.errors; let i = index\">\n <li\n fd-list-item\n [tabindex]=\"i === 0 ? 0 : -1\"\n [ngClass]=\"{ 'fd-list__item--byline': !!item.description.message }\"\n (click)=\"_showDetails(item)\"\n >\n <a fd-list-link [navigationIndicator]=\"!!item.description.message\">\n <span\n fd-object-status\n class=\"fd-list__icon\"\n [status]=\"item.state\"\n [glyph]=\"'message-' + item.type\"\n ></span>\n <span fd-list-content>\n <span fd-list-title>\n <a\n tabindex=\"0\"\n *ngIf=\"item.element && !!item.description.message; else textHeading\"\n fd-link\n (click)=\"_focusElement($event, item)\"\n >\n {{ item.fieldName }}\n </a>\n <ng-template #textHeading>\n {{ item.fieldName }}\n </ng-template>\n </span>\n <span class=\"fd-list__subtitle\">\n <ng-template\n [ngTemplateOutlet]=\"headingTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n </span>\n </span>\n </a>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </section>\n <section class=\"fd-message-view__details\" [@openCloseDetails]=\"currentScreen === 'details' ? 'open' : 'closed'\">\n <div #detailsView>\n <ng-container *ngIf=\"currentEntry\">\n <span class=\"fd-message-view__details-title\">\n <span\n fd-object-status\n class=\"fd-message-view__icon\"\n [status]=\"currentEntry.state\"\n [glyph]=\"'message-' + currentEntry.type\"\n ></span>\n <ng-template\n [ngTemplateOutlet]=\"headingTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: currentEntry }\"\n ></ng-template>\n </span>\n <span class=\"fd-message-view__details-description\" *ngIf=\"currentEntry.description.message\">\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: currentEntry }\"\n ></ng-template>\n </span>\n </ng-container>\n </div>\n </section>\n</div>\n" }]
165
+ ], template: "<ng-template #headingTemplate let-item>\n <ng-template #directiveHeading>\n <ng-template\n [ngTemplateOutlet]=\"item.heading.message || item.description.message\"\n [ngTemplateOutletContext]=\"{ $implicit: item.heading.error }\"\n ></ng-template>\n </ng-template>\n <ng-template #i18nHeading>\n <ng-template\n [ngTemplateOutlet]=\"item.heading.message\"\n [ngTemplateOutletContext]=\"{ $implicit: item.errors }\"\n ></ng-template>\n </ng-template>\n <ng-template #stringHeading>\n {{ item.heading.message | fdTranslate : { error: item.heading.error } : item.heading.message }}\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"\n item.heading.type === 'directive'\n ? directiveHeading\n : item.heading.type === 'string'\n ? stringHeading\n : i18nHeading\n \"\n ></ng-template>\n</ng-template>\n\n<ng-template #descriptionTemplate let-item>\n <ng-template #directiveDescription>\n <ng-template\n [ngTemplateOutlet]=\"item.description.message!\"\n [ngTemplateOutletContext]=\"{ $implicit: item.description.error }\"\n ></ng-template>\n </ng-template>\n <ng-template #i18nDescription>\n <ng-template\n [ngTemplateOutlet]=\"item.description.message!\"\n [ngTemplateOutletContext]=\"{ $implicit: item.errors }\"\n ></ng-template>\n </ng-template>\n <ng-template #stringDescription>\n {{ item.description.message | fdTranslate : { error: item.description.error } : item.description.message }}\n </ng-template>\n <ng-template\n [ngTemplateOutlet]=\"\n item.heading.type === 'directive'\n ? directiveDescription\n : item.heading.type === 'string'\n ? stringDescription\n : i18nDescription\n \"\n ></ng-template>\n</ng-template>\n\n<div class=\"fd-message-view\">\n <section\n class=\"fd-message-view__list\"\n tabindex=\"-1\"\n [@openCloseList]=\"currentScreen === 'list' ? 'open' : 'closed'\"\n (@openCloseList.done)=\"_onListAnimationComplete($event)\"\n fd-scrollbar\n [overrideTabindex]=\"false\"\n >\n <ul #listView fd-list class=\"message-popover__list fd-list--message-view\" [navigationIndicator]=\"true\">\n <ng-container *ngFor=\"let group of filteredErrors\">\n <li fd-list-group-header *ngIf=\"group.group\">\n <span fd-list-title>{{ group.group }}</span>\n </li>\n <ng-container *ngFor=\"let item of group.errors; let i = index\">\n <li fd-list-item [tabindex]=\"i === 0 ? 0 : -1\" [byline]=\"true\" (click)=\"_showDetails(item)\">\n <ng-template #itemIcon>\n <span\n fd-object-status\n class=\"fd-list__icon\"\n [status]=\"item.state\"\n [glyph]=\"'message-' + item.type\"\n ></span>\n </ng-template>\n <ng-template #listSubtitle>\n <span class=\"fd-list__subtitle\">\n <ng-template\n [ngTemplateOutlet]=\"headingTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: item }\"\n ></ng-template>\n </span>\n </ng-template>\n <span\n fd-list-link\n [navigationIndicator]=\"!!item.description.message\"\n *ngIf=\"item.element && !!item.description.message; else anchorListLink\"\n >\n <ng-template [ngTemplateOutlet]=\"itemIcon\"></ng-template>\n <span fd-list-content>\n <span fd-list-title>\n <a tabindex=\"0\" fd-link (click)=\"_focusElement($event, item)\">\n {{ item.fieldName }}\n </a>\n </span>\n <ng-template [ngTemplateOutlet]=\"listSubtitle\"></ng-template>\n </span>\n </span>\n <ng-template #anchorListLink>\n <a fd-list-link [navigationIndicator]=\"!!item.description.message\">\n <ng-template [ngTemplateOutlet]=\"itemIcon\"></ng-template>\n <span fd-list-content>\n <span fd-list-title>{{ item.fieldName }}</span>\n <ng-template [ngTemplateOutlet]=\"listSubtitle\"></ng-template>\n </span>\n </a>\n </ng-template>\n </li>\n </ng-container>\n </ng-container>\n </ul>\n </section>\n <section class=\"fd-message-view__details\" [@openCloseDetails]=\"currentScreen === 'details' ? 'open' : 'closed'\">\n <div #detailsView>\n <ng-container *ngIf=\"currentEntry\">\n <span class=\"fd-message-view__details-title\">\n <span\n fd-object-status\n class=\"fd-message-view__icon\"\n [status]=\"currentEntry.state\"\n [glyph]=\"'message-' + currentEntry.type\"\n ></span>\n <ng-template\n [ngTemplateOutlet]=\"headingTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: currentEntry }\"\n ></ng-template>\n </span>\n <span class=\"fd-message-view__details-description\" *ngIf=\"currentEntry.description.message\">\n <ng-template\n [ngTemplateOutlet]=\"descriptionTemplate\"\n [ngTemplateOutletContext]=\"{ $implicit: currentEntry }\"\n ></ng-template>\n </span>\n </ng-container>\n </div>\n </section>\n</div>\n" }]
166
166
  }], ctorParameters: function () { return [{ type: i1.DestroyedService }, { type: i1.TabbableElementService }, { type: Document, decorators: [{
167
167
  type: Inject,
168
168
  args: [DOCUMENT]
@@ -188,4 +188,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImpor
188
188
  type: HostBinding,
189
189
  args: ['class']
190
190
  }] } });
191
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vc3JjL2xpYi9tZXNzYWdlLXBvcG92ZXIvY29tcG9uZW50cy9tZXNzYWdlLXZpZXcvbWVzc2FnZS12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vc3JjL2xpYi9tZXNzYWdlLXBvcG92ZXIvY29tcG9uZW50cy9tZXNzYWdlLXZpZXcvbWVzc2FnZS12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzVGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEVBQ1QsaUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3hHLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7Ozs7QUF1RS9DLE1BQU0sT0FBTyxvQkFBb0I7SUF3QzdCLGNBQWM7SUFDZCxZQUNxQixTQUEyQixFQUMzQixnQkFBd0MsRUFDdEIsU0FBbUI7UUFGckMsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IscUJBQWdCLEdBQWhCLGdCQUFnQixDQUF3QjtRQUN0QixjQUFTLEdBQVQsU0FBUyxDQUFVO1FBL0IxRCx1RkFBdUY7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TyxFQUFFLE1BQU07cUNBQ2xCLENBQUM7aUNBQ0wsQ0FBQyxDQUNMOzZCQUNKLENBQUM7NEJBQ0YsVUFBVSxDQUFDLGdCQUFnQixFQUFFO2dDQUN6QixLQUFLLENBQUM7b0NBQ0YsT0FBTyxFQUFFLE9BQU87aUNBQ25CLENBQUM7Z0NBQ0YsT0FBTyxDQUFDLHFDQUFxQyxDQUFDOzZCQUNqRCxDQUFDO3lCQUNMLENBQUM7cUJBQ0w7OzBCQThDSSxNQUFNOzJCQUFDLFFBQVE7NENBekNwQixhQUFhO3NCQURaLEtBQUs7Z0JBS04sY0FBYztzQkFEYixLQUFLO2dCQUtOLFlBQVk7c0JBRFgsS0FBSztnQkFLTixXQUFXO3NCQURWLE1BQU07Z0JBS1AsU0FBUztzQkFEUixNQUFNO2dCQUtQLFlBQVk7c0JBRFgsTUFBTTtnQkFLQyxTQUFTO3NCQURoQixTQUFTO3VCQUFDLFVBQVUsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7Z0JBS25DLFlBQVk7c0JBRG5CLFNBQVM7dUJBQUMsYUFBYSxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFLN0IsYUFBYTtzQkFEN0IsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwga2V5ZnJhbWVzLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOdWxsYWJsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IERlc3Ryb3llZFNlcnZpY2UsIHJlc2l6ZU9ic2VydmFibGUsIFRhYmJhYmxlRWxlbWVudFNlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTWVzc2FnZVBvcG92ZXJFbnRyeSwgTWVzc2FnZVBvcG92ZXJFcnJvckdyb3VwIH0gZnJvbSAnLi4vLi4vbW9kZWxzL21lc3NhZ2UtcG9wb3Zlci1lbnRyeS5pbnRlcmZhY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZkcC1tZXNzYWdlLXZpZXcnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9tZXNzYWdlLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgcHJvdmlkZXJzOiBbRGVzdHJveWVkU2VydmljZSwgVGFiYmFibGVFbGVtZW50U2VydmljZV0sXG4gICAgYW5pbWF0aW9uczogW1xuICAgICAgICB0cmlnZ2VyKCdvcGVuQ2xvc2VMaXN0JywgW1xuICAgICAgICAgICAgLy8gLi4uXG4gICAgICAgICAgICBzdGF0ZShcbiAgICAgICAgICAgICAgICAnb3BlbicsXG4gICAgICAgICAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDApJyxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgc3RhdGUoXG4gICAgICAgICAgICAgICAgJ2Nsb3NlZCcsXG4gICAgICAgICAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKC01MHB4KScsXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDBcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJ29wZW4gPT4gY2xvc2VkJywgW2FuaW1hdGUoJy4xcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKScpXSksXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCdjbG9zZWQgPT4gb3BlbicsIFthbmltYXRlKCcwLjFzIC4xcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKScpXSlcbiAgICAgICAgXSksXG4gICAgICAgIHRyaWdnZXIoJ29wZW5DbG9zZURldGFpbHMnLCBbXG4gICAgICAgICAgICBzdGF0ZShcbiAgICAgICAgICAgICAgICAnb3BlbicsXG4gICAgICAgICAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDApJyxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogJ2Jsb2NrJ1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgc3RhdGUoXG4gICAgICAgICAgICAgICAgJ2Nsb3NlZCcsXG4gICAgICAgICAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDUwcHgpJyxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgdHJhbnNpdGlvbignb3BlbiA9PiBjbG9zZWQnLCBbXG4gICAgICAgICAgICAgICAgYW5pbWF0ZShcbiAgICAgICAgICAgICAgICAgICAgJy4xcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKScsXG4gICAgICAgICAgICAgICAgICAgIGtleWZyYW1lcyhbXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgwKScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAnYmxvY2snXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDUwcHgpJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6ICdub25lJ1xuICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJ2Nsb3NlZCA9PiBvcGVuJywgW1xuICAgICAgICAgICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogJ2Jsb2NrJ1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIGFuaW1hdGUoJzAuMXMgLjFzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpJylcbiAgICAgICAgICAgIF0pXG4gICAgICAgIF0pXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBNZXNzYWdlVmlld0NvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICAgIC8qKiBDdXJyZW50IE1lc3NhZ2UgUG9wb3ZlciBzY3JlZW4uIENhbiBiZSBlaXRoZXIgYGxpc3RgIG9yIGBkZXRhaWxzYC4gKi9cbiAgICBASW5wdXQoKVxuICAgIGN1cnJlbnRTY3JlZW46ICdsaXN0JyB8ICdkZXRhaWxzJztcblxuICAgIC8qKiBGaWx0ZXJlZCBlcnJvcnMgdG8gcmVuZGVyLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgZmlsdGVyZWRFcnJvcnM6IE1lc3NhZ2VQb3BvdmVyRXJyb3JHcm91cFtdO1xuXG4gICAgLyoqIEN1cnJlbnQgZXJyb3IgZW50cnkuIFVzZWQgZm9yIGRldGFpbHMgdmlldy4gKi9cbiAgICBASW5wdXQoKVxuICAgIGN1cnJlbnRFbnRyeTogTnVsbGFibGU8TWVzc2FnZVBvcG92ZXJFbnRyeT47XG5cbiAgICAvKiogRXZlbnQgZW1pdHRlZCB3aGVuIHVzZXIgY2xpY2tzIG9uIGVycm9yIGVudHJ5IGNvbnRhaW5pbmcgYWRkaXRpb25hbCBkZXNjcmlwdGlvbi4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBvcGVuRGV0YWlscyA9IG5ldyBFdmVudEVtaXR0ZXI8TWVzc2FnZVBvcG92ZXJFbnRyeT4oKTtcblxuICAgIC8qKiBFdmVudCBlbWl0dGVkIHdoZW4gdXNlciBjbGlja3Mgb24gZXJyb3IgZW50cnkgYW5kIGl0ZW0ncyBlbGVtZW50IHNob3VsZCBiZSBmb2N1c2VkLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGZvY3VzSXRlbSA9IG5ldyBFdmVudEVtaXR0ZXI8TWVzc2FnZVBvcG92ZXJFbnRyeT4oKTtcblxuICAgIC8qKiBFdmVudCBlbWl0dGVkIHdoZW4gdXNlciBjbGlja3Mgb24gdGhlIGZpZWxkIGxpbmsgdG8gZm9jdXMgb24gdGhlIGZpZWxkIGl0c2VsZi4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBjbG9zZVBvcG92ZXIgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoJ2xpc3RWaWV3JywgeyByZWFkOiBFbGVtZW50UmVmIH0pXG4gICAgcHJpdmF0ZSBfbGlzdFZpZXc6IEVsZW1lbnRSZWY7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoJ2RldGFpbHNWaWV3JywgeyByZWFkOiBFbGVtZW50UmVmIH0pXG4gICAgcHJpdmF0ZSBfZGV0YWlsc1ZpZXc6IEVsZW1lbnRSZWY7XG5cbiAgICAvKiogQEhpZGRlbiAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2luaXRpYWxDbGFzcyA9ICdmZC1tZXNzYWdlLXBvcG92ZXJfX3ZpZXctY29udGFpbmVyJztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfYWN0aXZlTGlzdEVsZW1lbnQ6IE51bGxhYmxlPEhUTUxFbGVtZW50PiA9IG51bGw7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95JDogRGVzdHJveWVkU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBfdGFiYmFibGVTZXJ2aWNlOiBUYWJiYWJsZUVsZW1lbnRTZXJ2aWNlLFxuICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIHJlYWRvbmx5IF9kb2N1bWVudDogRG9jdW1lbnRcbiAgICApIHt9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgcmVzaXplT2JzZXJ2YWJsZSh0aGlzLl9kZXRhaWxzVmlldy5uYXRpdmVFbGVtZW50KVxuICAgICAgICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKDIwKSwgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHsgaGVpZ2h0IH0gPSB0aGlzLl9kZXRhaWxzVmlldy5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAgICAgICAgIHRoaXMuX2xpc3RWaWV3Lm5hdGl2ZUVsZW1lbnQuc3R5bGUubWluSGVpZ2h0ID0gYCR7aGVpZ2h0fXB4YDtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX3Nob3dEZXRhaWxzKGVudHJ5OiBNZXNzYWdlUG9wb3ZlckVudHJ5KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2FjdGl2ZUxpc3RFbGVtZW50ID0gdGhpcy5fZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgaWYgKCFlbnRyeS5kZXNjcmlwdGlvbi5tZXNzYWdlKSB7XG4gICAgICAgICAgICB0aGlzLl9mb2N1c0VsZW1lbnQodW5kZWZpbmVkLCBlbnRyeSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jdXJyZW50U2NyZWVuID0gJ2RldGFpbHMnO1xuICAgICAgICB0aGlzLm9wZW5EZXRhaWxzLmVtaXQoZW50cnkpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2ZvY3VzRWxlbWVudChldmVudD86IE1vdXNlRXZlbnQsIGl0ZW0/OiBNZXNzYWdlUG9wb3ZlckVudHJ5KTogdm9pZCB7XG4gICAgICAgIGlmICghaXRlbT8uZWxlbWVudD8ubmF0aXZlRWxlbWVudCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGV2ZW50Py5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTtcbiAgICAgICAgdGhpcy5jbG9zZVBvcG92ZXIuZW1pdChmYWxzZSk7XG4gICAgICAgIHRoaXMuZm9jdXNJdGVtLmVtaXQoaXRlbSk7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdGFiYmFibGVFbGVtZW50ID0gdGhpcy5fdGFiYmFibGVTZXJ2aWNlLmdldFRhYmJhYmxlRWxlbWVudChpdGVtLmVsZW1lbnQ/Lm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICAgICAgdGFiYmFibGVFbGVtZW50Py5mb2N1cygpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9vbkxpc3RBbmltYXRpb25Db21wbGV0ZShldmVudDogYW55KTogdm9pZCB7XG4gICAgICAgIGlmIChldmVudC50b1N0YXRlID09PSAnb3BlbicgJiYgdGhpcy5fYWN0aXZlTGlzdEVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMuX2FjdGl2ZUxpc3RFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgICAgICB0aGlzLl9hY3RpdmVMaXN0RWxlbWVudCA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8bmctdGVtcGxhdGUgI2hlYWRpbmdUZW1wbGF0ZSBsZXQtaXRlbT5cbiAgICA8bmctdGVtcGxhdGUgI2RpcmVjdGl2ZUhlYWRpbmc+XG4gICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiaXRlbS5oZWFkaW5nLm1lc3NhZ2UgfHwgaXRlbS5kZXNjcmlwdGlvbi5tZXNzYWdlXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogaXRlbS5oZWFkaW5nLmVycm9yIH1cIlxuICAgICAgICA+PC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZSAjaTE4bkhlYWRpbmc+XG4gICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiaXRlbS5oZWFkaW5nLm1lc3NhZ2VcIlxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtLmVycm9ycyB9XCJcbiAgICAgICAgPjwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI3N0cmluZ0hlYWRpbmc+XG4gICAgICAgIHt7IGl0ZW0uaGVhZGluZy5tZXNzYWdlIHwgZmRUcmFuc2xhdGUgOiB7IGVycm9yOiBpdGVtLmhlYWRpbmcuZXJyb3IgfSA6IGl0ZW0uaGVhZGluZy5tZXNzYWdlIH19XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiXG4gICAgICAgICAgICBpdGVtLmhlYWRpbmcudHlwZSA9PT0gJ2RpcmVjdGl2ZSdcbiAgICAgICAgICAgICAgICA/IGRpcmVjdGl2ZUhlYWRpbmdcbiAgICAgICAgICAgICAgICA6IGl0ZW0uaGVhZGluZy50eXBlID09PSAnc3RyaW5nJ1xuICAgICAgICAgICAgICAgID8gc3RyaW5nSGVhZGluZ1xuICAgICAgICAgICAgICAgIDogaTE4bkhlYWRpbmdcbiAgICAgICAgXCJcbiAgICA+PC9uZy10ZW1wbGF0ZT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZGVzY3JpcHRpb25UZW1wbGF0ZSBsZXQtaXRlbT5cbiAgICA8bmctdGVtcGxhdGUgI2RpcmVjdGl2ZURlc2NyaXB0aW9uPlxuICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIml0ZW0uZGVzY3JpcHRpb24ubWVzc2FnZSFcIlxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtLmRlc2NyaXB0aW9uLmVycm9yIH1cIlxuICAgICAgICA+PC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZSAjaTE4bkRlc2NyaXB0aW9uPlxuICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIml0ZW0uZGVzY3JpcHRpb24ubWVzc2FnZSFcIlxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtLmVycm9ycyB9XCJcbiAgICAgICAgPjwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI3N0cmluZ0Rlc2NyaXB0aW9uPlxuICAgICAgICB7eyBpdGVtLmRlc2NyaXB0aW9uLm1lc3NhZ2UgfCBmZFRyYW5zbGF0ZSA6IHsgZXJyb3I6IGl0ZW0uZGVzY3JpcHRpb24uZXJyb3IgfSA6IGl0ZW0uZGVzY3JpcHRpb24ubWVzc2FnZSB9fVxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIlxuICAgICAgICAgICAgaXRlbS5oZWFkaW5nLnR5cGUgPT09ICdkaXJlY3RpdmUnXG4gICAgICAgICAgICAgICAgPyBkaXJlY3RpdmVEZXNjcmlwdGlvblxuICAgICAgICAgICAgICAgIDogaXRlbS5oZWFkaW5nLnR5cGUgPT09ICdzdHJpbmcnXG4gICAgICAgICAgICAgICAgPyBzdHJpbmdEZXNjcmlwdGlvblxuICAgICAgICAgICAgICAgIDogaTE4bkRlc2NyaXB0aW9uXG4gICAgICAgIFwiXG4gICAgPjwvbmctdGVtcGxhdGU+XG48L25nLXRlbXBsYXRlPlxuXG48ZGl2IGNsYXNzPVwiZmQtbWVzc2FnZS12aWV3XCI+XG4gICAgPHNlY3Rpb25cbiAgICAgICAgY2xhc3M9XCJmZC1tZXNzYWdlLXZpZXdfX2xpc3RcIlxuICAgICAgICB0YWJpbmRleD1cIi0xXCJcbiAgICAgICAgW0BvcGVuQ2xvc2VMaXN0XT1cImN1cnJlbnRTY3JlZW4gPT09ICdsaXN0JyA/ICdvcGVuJyA6ICdjbG9zZWQnXCJcbiAgICAgICAgKEBvcGVuQ2xvc2VMaXN0LmRvbmUpPVwiX29uTGlzdEFuaW1hdGlvbkNvbXBsZXRlKCRldmVudClcIlxuICAgICAgICBmZC1zY3JvbGxiYXJcbiAgICAgICAgW292ZXJyaWRlVGFiaW5kZXhdPVwiZmFsc2VcIlxuICAgID5cbiAgICAgICAgPHVsICNsaXN0VmlldyBmZC1saXN0IGNsYXNzPVwibWVzc2FnZS1wb3BvdmVyX19saXN0IGZkLWxpc3QtLW1lc3NhZ2Utdmlld1wiIFtuYXZpZ2F0aW9uSW5kaWNhdG9yXT1cInRydWVcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGdyb3VwIG9mIGZpbHRlcmVkRXJyb3JzXCI+XG4gICAgICAgICAgICAgICAgPGxpIGZkLWxpc3QtZ3JvdXAtaGVhZGVyICpuZ0lmPVwiZ3JvdXAuZ3JvdXBcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gZmQtbGlzdC10aXRsZT57eyBncm91cC5ncm91cCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZ3JvdXAuZXJyb3JzOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgICAgICAgICAgICAgIDxsaVxuICAgICAgICAgICAgICAgICAgICAgICAgZmQtbGlzdC1pdGVtXG4gICAgICAgICAgICAgICAgICAgICAgICBbdGFiaW5kZXhdPVwiaSA9PT0gMCA/IDAgOiAtMVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJ7ICdmZC1saXN0X19pdGVtLS1ieWxpbmUnOiAhIWl0ZW0uZGVzY3JpcHRpb24ubWVzc2FnZSB9XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJfc2hvd0RldGFpbHMoaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICA8YSBmZC1saXN0LWxpbmsgW25hdmlnYXRpb25JbmRpY2F0b3JdPVwiISFpdGVtLmRlc2NyaXB0aW9uLm1lc3NhZ2VcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmZC1vYmplY3Qtc3RhdHVzXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmQtbGlzdF9faWNvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzdGF0dXNdPVwiaXRlbS5zdGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtnbHlwaF09XCInbWVzc2FnZS0nICsgaXRlbS50eXBlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGZkLWxpc3QtY29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gZmQtbGlzdC10aXRsZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxhXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFiaW5kZXg9XCIwXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIml0ZW0uZWxlbWVudCAmJiAhIWl0ZW0uZGVzY3JpcHRpb24ubWVzc2FnZTsgZWxzZSB0ZXh0SGVhZGluZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmQtbGlua1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJfZm9jdXNFbGVtZW50KCRldmVudCwgaXRlbSlcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGl0ZW0uZmllbGROYW1lIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI3RleHRIZWFkaW5nPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHt7IGl0ZW0uZmllbGROYW1lIH19XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZmQtbGlzdF9fc3VidGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImhlYWRpbmdUZW1wbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtIH1cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L2E+XG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC91bD5cbiAgICA8L3NlY3Rpb24+XG4gICAgPHNlY3Rpb24gY2xhc3M9XCJmZC1tZXNzYWdlLXZpZXdfX2RldGFpbHNcIiBbQG9wZW5DbG9zZURldGFpbHNdPVwiY3VycmVudFNjcmVlbiA9PT0gJ2RldGFpbHMnID8gJ29wZW4nIDogJ2Nsb3NlZCdcIj5cbiAgICAgICAgPGRpdiAjZGV0YWlsc1ZpZXc+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY3VycmVudEVudHJ5XCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmZC1tZXNzYWdlLXZpZXdfX2RldGFpbHMtdGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgICAgICAgIGZkLW9iamVjdC1zdGF0dXNcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmQtbWVzc2FnZS12aWV3X19pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzdGF0dXNdPVwiY3VycmVudEVudHJ5LnN0YXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtnbHlwaF09XCInbWVzc2FnZS0nICsgY3VycmVudEVudHJ5LnR5cGVcIlxuICAgICAgICAgICAgICAgICAgICA+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImhlYWRpbmdUZW1wbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGN1cnJlbnRFbnRyeSB9XCJcbiAgICAgICAgICAgICAgICAgICAgPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZmQtbWVzc2FnZS12aWV3X19kZXRhaWxzLWRlc2NyaXB0aW9uXCIgKm5nSWY9XCJjdXJyZW50RW50cnkuZGVzY3JpcHRpb24ubWVzc2FnZVwiPlxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImRlc2NyaXB0aW9uVGVtcGxhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBjdXJyZW50RW50cnkgfVwiXG4gICAgICAgICAgICAgICAgICAgID48L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L3NlY3Rpb24+XG48L2Rpdj5cbiJdfQ==
191
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVzc2FnZS12aWV3LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vc3JjL2xpYi9tZXNzYWdlLXBvcG92ZXIvY29tcG9uZW50cy9tZXNzYWdlLXZpZXcvbWVzc2FnZS12aWV3LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvcGxhdGZvcm0vc3JjL2xpYi9tZXNzYWdlLXBvcG92ZXIvY29tcG9uZW50cy9tZXNzYWdlLXZpZXcvbWVzc2FnZS12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzVGLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxVQUFVLEVBQ1YsWUFBWSxFQUNaLFdBQVcsRUFDWCxNQUFNLEVBQ04sS0FBSyxFQUNMLE1BQU0sRUFDTixTQUFTLEVBQ1QsaUJBQWlCLEVBQ3BCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3hHLE9BQU8sRUFBRSxZQUFZLEVBQUUsU0FBUyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7Ozs7QUF1RS9DLE1BQU0sT0FBTyxvQkFBb0I7SUF3QzdCLGNBQWM7SUFDZCxZQUNxQixTQUEyQixFQUMzQixnQkFBd0MsRUFDdEIsU0FBbUI7UUFGckMsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IscUJBQWdCLEdBQWhCLGdCQUFnQixDQUF3QjtRQUN0QixjQUFTLEdBQVQsU0FBUyxDQUFVO1FBL0IxRCx1RkFBdUY7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TyxFQUFFLE1BQU07cUNBQ2xCLENBQUM7aUNBQ0wsQ0FBQyxDQUNMOzZCQUNKLENBQUM7NEJBQ0YsVUFBVSxDQUFDLGdCQUFnQixFQUFFO2dDQUN6QixLQUFLLENBQUM7b0NBQ0YsT0FBTyxFQUFFLE9BQU87aUNBQ25CLENBQUM7Z0NBQ0YsT0FBTyxDQUFDLHFDQUFxQyxDQUFDOzZCQUNqRCxDQUFDO3lCQUNMLENBQUM7cUJBQ0w7OzBCQThDSSxNQUFNOzJCQUFDLFFBQVE7NENBekNwQixhQUFhO3NCQURaLEtBQUs7Z0JBS04sY0FBYztzQkFEYixLQUFLO2dCQUtOLFlBQVk7c0JBRFgsS0FBSztnQkFLTixXQUFXO3NCQURWLE1BQU07Z0JBS1AsU0FBUztzQkFEUixNQUFNO2dCQUtQLFlBQVk7c0JBRFgsTUFBTTtnQkFLQyxTQUFTO3NCQURoQixTQUFTO3VCQUFDLFVBQVUsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUU7Z0JBS25DLFlBQVk7c0JBRG5CLFNBQVM7dUJBQUMsYUFBYSxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRTtnQkFLN0IsYUFBYTtzQkFEN0IsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgYW5pbWF0ZSwga2V5ZnJhbWVzLCBzdGF0ZSwgc3R5bGUsIHRyYW5zaXRpb24sIHRyaWdnZXIgfSBmcm9tICdAYW5ndWxhci9hbmltYXRpb25zJztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gICAgQWZ0ZXJWaWV3SW5pdCxcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDb21wb25lbnQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5qZWN0LFxuICAgIElucHV0LFxuICAgIE91dHB1dCxcbiAgICBWaWV3Q2hpbGQsXG4gICAgVmlld0VuY2Fwc3VsYXRpb25cbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOdWxsYWJsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IERlc3Ryb3llZFNlcnZpY2UsIHJlc2l6ZU9ic2VydmFibGUsIFRhYmJhYmxlRWxlbWVudFNlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2Nkay91dGlscyc7XG5pbXBvcnQgeyBkZWJvdW5jZVRpbWUsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTWVzc2FnZVBvcG92ZXJFbnRyeSwgTWVzc2FnZVBvcG92ZXJFcnJvckdyb3VwIH0gZnJvbSAnLi4vLi4vbW9kZWxzL21lc3NhZ2UtcG9wb3Zlci1lbnRyeS5pbnRlcmZhY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZkcC1tZXNzYWdlLXZpZXcnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9tZXNzYWdlLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgcHJvdmlkZXJzOiBbRGVzdHJveWVkU2VydmljZSwgVGFiYmFibGVFbGVtZW50U2VydmljZV0sXG4gICAgYW5pbWF0aW9uczogW1xuICAgICAgICB0cmlnZ2VyKCdvcGVuQ2xvc2VMaXN0JywgW1xuICAgICAgICAgICAgLy8gLi4uXG4gICAgICAgICAgICBzdGF0ZShcbiAgICAgICAgICAgICAgICAnb3BlbicsXG4gICAgICAgICAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDApJyxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMVxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgc3RhdGUoXG4gICAgICAgICAgICAgICAgJ2Nsb3NlZCcsXG4gICAgICAgICAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKC01MHB4KScsXG4gICAgICAgICAgICAgICAgICAgIG9wYWNpdHk6IDBcbiAgICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJ29wZW4gPT4gY2xvc2VkJywgW2FuaW1hdGUoJy4xcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKScpXSksXG4gICAgICAgICAgICB0cmFuc2l0aW9uKCdjbG9zZWQgPT4gb3BlbicsIFthbmltYXRlKCcwLjFzIC4xcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKScpXSlcbiAgICAgICAgXSksXG4gICAgICAgIHRyaWdnZXIoJ29wZW5DbG9zZURldGFpbHMnLCBbXG4gICAgICAgICAgICBzdGF0ZShcbiAgICAgICAgICAgICAgICAnb3BlbicsXG4gICAgICAgICAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDApJyxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogJ2Jsb2NrJ1xuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgc3RhdGUoXG4gICAgICAgICAgICAgICAgJ2Nsb3NlZCcsXG4gICAgICAgICAgICAgICAgc3R5bGUoe1xuICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDUwcHgpJyxcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApLFxuICAgICAgICAgICAgdHJhbnNpdGlvbignb3BlbiA9PiBjbG9zZWQnLCBbXG4gICAgICAgICAgICAgICAgYW5pbWF0ZShcbiAgICAgICAgICAgICAgICAgICAgJy4xcyBjdWJpYy1iZXppZXIoMCwgMCwgMC4yLCAxKScsXG4gICAgICAgICAgICAgICAgICAgIGtleWZyYW1lcyhbXG4gICAgICAgICAgICAgICAgICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWCgwKScsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNwbGF5OiAnYmxvY2snXG4gICAgICAgICAgICAgICAgICAgICAgICB9KSxcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cmFuc2Zvcm06ICd0cmFuc2xhdGVYKDUwcHgpJyxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcGFjaXR5OiAwLFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc3BsYXk6ICdub25lJ1xuICAgICAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICAgICAgXSlcbiAgICAgICAgICAgICAgICApXG4gICAgICAgICAgICBdKSxcbiAgICAgICAgICAgIHRyYW5zaXRpb24oJ2Nsb3NlZCA9PiBvcGVuJywgW1xuICAgICAgICAgICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAgICAgICAgICAgZGlzcGxheTogJ2Jsb2NrJ1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIGFuaW1hdGUoJzAuMXMgLjFzIGN1YmljLWJlemllcigwLCAwLCAwLjIsIDEpJylcbiAgICAgICAgICAgIF0pXG4gICAgICAgIF0pXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBNZXNzYWdlVmlld0NvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICAgIC8qKiBDdXJyZW50IE1lc3NhZ2UgUG9wb3ZlciBzY3JlZW4uIENhbiBiZSBlaXRoZXIgYGxpc3RgIG9yIGBkZXRhaWxzYC4gKi9cbiAgICBASW5wdXQoKVxuICAgIGN1cnJlbnRTY3JlZW46ICdsaXN0JyB8ICdkZXRhaWxzJztcblxuICAgIC8qKiBGaWx0ZXJlZCBlcnJvcnMgdG8gcmVuZGVyLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgZmlsdGVyZWRFcnJvcnM6IE1lc3NhZ2VQb3BvdmVyRXJyb3JHcm91cFtdO1xuXG4gICAgLyoqIEN1cnJlbnQgZXJyb3IgZW50cnkuIFVzZWQgZm9yIGRldGFpbHMgdmlldy4gKi9cbiAgICBASW5wdXQoKVxuICAgIGN1cnJlbnRFbnRyeTogTnVsbGFibGU8TWVzc2FnZVBvcG92ZXJFbnRyeT47XG5cbiAgICAvKiogRXZlbnQgZW1pdHRlZCB3aGVuIHVzZXIgY2xpY2tzIG9uIGVycm9yIGVudHJ5IGNvbnRhaW5pbmcgYWRkaXRpb25hbCBkZXNjcmlwdGlvbi4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBvcGVuRGV0YWlscyA9IG5ldyBFdmVudEVtaXR0ZXI8TWVzc2FnZVBvcG92ZXJFbnRyeT4oKTtcblxuICAgIC8qKiBFdmVudCBlbWl0dGVkIHdoZW4gdXNlciBjbGlja3Mgb24gZXJyb3IgZW50cnkgYW5kIGl0ZW0ncyBlbGVtZW50IHNob3VsZCBiZSBmb2N1c2VkLiAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGZvY3VzSXRlbSA9IG5ldyBFdmVudEVtaXR0ZXI8TWVzc2FnZVBvcG92ZXJFbnRyeT4oKTtcblxuICAgIC8qKiBFdmVudCBlbWl0dGVkIHdoZW4gdXNlciBjbGlja3Mgb24gdGhlIGZpZWxkIGxpbmsgdG8gZm9jdXMgb24gdGhlIGZpZWxkIGl0c2VsZi4gKi9cbiAgICBAT3V0cHV0KClcbiAgICBjbG9zZVBvcG92ZXIgPSBuZXcgRXZlbnRFbWl0dGVyPGJvb2xlYW4+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoJ2xpc3RWaWV3JywgeyByZWFkOiBFbGVtZW50UmVmIH0pXG4gICAgcHJpdmF0ZSBfbGlzdFZpZXc6IEVsZW1lbnRSZWY7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoJ2RldGFpbHNWaWV3JywgeyByZWFkOiBFbGVtZW50UmVmIH0pXG4gICAgcHJpdmF0ZSBfZGV0YWlsc1ZpZXc6IEVsZW1lbnRSZWY7XG5cbiAgICAvKiogQEhpZGRlbiAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2luaXRpYWxDbGFzcyA9ICdmZC1tZXNzYWdlLXBvcG92ZXJfX3ZpZXctY29udGFpbmVyJztcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfYWN0aXZlTGlzdEVsZW1lbnQ6IE51bGxhYmxlPEhUTUxFbGVtZW50PiA9IG51bGw7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95JDogRGVzdHJveWVkU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSByZWFkb25seSBfdGFiYmFibGVTZXJ2aWNlOiBUYWJiYWJsZUVsZW1lbnRTZXJ2aWNlLFxuICAgICAgICBASW5qZWN0KERPQ1VNRU5UKSBwcml2YXRlIHJlYWRvbmx5IF9kb2N1bWVudDogRG9jdW1lbnRcbiAgICApIHt9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgcmVzaXplT2JzZXJ2YWJsZSh0aGlzLl9kZXRhaWxzVmlldy5uYXRpdmVFbGVtZW50KVxuICAgICAgICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKDIwKSwgdGFrZVVudGlsKHRoaXMuX2Rlc3Ryb3kkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IHsgaGVpZ2h0IH0gPSB0aGlzLl9kZXRhaWxzVmlldy5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgICAgICAgICAgICAgIHRoaXMuX2xpc3RWaWV3Lm5hdGl2ZUVsZW1lbnQuc3R5bGUubWluSGVpZ2h0ID0gYCR7aGVpZ2h0fXB4YDtcbiAgICAgICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX3Nob3dEZXRhaWxzKGVudHJ5OiBNZXNzYWdlUG9wb3ZlckVudHJ5KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2FjdGl2ZUxpc3RFbGVtZW50ID0gdGhpcy5fZG9jdW1lbnQuYWN0aXZlRWxlbWVudCBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgaWYgKCFlbnRyeS5kZXNjcmlwdGlvbi5tZXNzYWdlKSB7XG4gICAgICAgICAgICB0aGlzLl9mb2N1c0VsZW1lbnQodW5kZWZpbmVkLCBlbnRyeSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jdXJyZW50U2NyZWVuID0gJ2RldGFpbHMnO1xuICAgICAgICB0aGlzLm9wZW5EZXRhaWxzLmVtaXQoZW50cnkpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX2ZvY3VzRWxlbWVudChldmVudD86IE1vdXNlRXZlbnQsIGl0ZW0/OiBNZXNzYWdlUG9wb3ZlckVudHJ5KTogdm9pZCB7XG4gICAgICAgIGlmICghaXRlbT8uZWxlbWVudD8ubmF0aXZlRWxlbWVudCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGV2ZW50Py5zdG9wSW1tZWRpYXRlUHJvcGFnYXRpb24oKTtcbiAgICAgICAgdGhpcy5jbG9zZVBvcG92ZXIuZW1pdChmYWxzZSk7XG4gICAgICAgIHRoaXMuZm9jdXNJdGVtLmVtaXQoaXRlbSk7XG4gICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgY29uc3QgdGFiYmFibGVFbGVtZW50ID0gdGhpcy5fdGFiYmFibGVTZXJ2aWNlLmdldFRhYmJhYmxlRWxlbWVudChpdGVtLmVsZW1lbnQ/Lm5hdGl2ZUVsZW1lbnQpO1xuICAgICAgICAgICAgdGFiYmFibGVFbGVtZW50Py5mb2N1cygpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9vbkxpc3RBbmltYXRpb25Db21wbGV0ZShldmVudDogYW55KTogdm9pZCB7XG4gICAgICAgIGlmIChldmVudC50b1N0YXRlID09PSAnb3BlbicgJiYgdGhpcy5fYWN0aXZlTGlzdEVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMuX2FjdGl2ZUxpc3RFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgICAgICB0aGlzLl9hY3RpdmVMaXN0RWxlbWVudCA9IG51bGw7XG4gICAgICAgIH1cbiAgICB9XG59XG4iLCI8bmctdGVtcGxhdGUgI2hlYWRpbmdUZW1wbGF0ZSBsZXQtaXRlbT5cbiAgICA8bmctdGVtcGxhdGUgI2RpcmVjdGl2ZUhlYWRpbmc+XG4gICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiaXRlbS5oZWFkaW5nLm1lc3NhZ2UgfHwgaXRlbS5kZXNjcmlwdGlvbi5tZXNzYWdlXCJcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0Q29udGV4dF09XCJ7ICRpbXBsaWNpdDogaXRlbS5oZWFkaW5nLmVycm9yIH1cIlxuICAgICAgICA+PC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZSAjaTE4bkhlYWRpbmc+XG4gICAgICAgIDxuZy10ZW1wbGF0ZVxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiaXRlbS5oZWFkaW5nLm1lc3NhZ2VcIlxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtLmVycm9ycyB9XCJcbiAgICAgICAgPjwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI3N0cmluZ0hlYWRpbmc+XG4gICAgICAgIHt7IGl0ZW0uaGVhZGluZy5tZXNzYWdlIHwgZmRUcmFuc2xhdGUgOiB7IGVycm9yOiBpdGVtLmhlYWRpbmcuZXJyb3IgfSA6IGl0ZW0uaGVhZGluZy5tZXNzYWdlIH19XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRdPVwiXG4gICAgICAgICAgICBpdGVtLmhlYWRpbmcudHlwZSA9PT0gJ2RpcmVjdGl2ZSdcbiAgICAgICAgICAgICAgICA/IGRpcmVjdGl2ZUhlYWRpbmdcbiAgICAgICAgICAgICAgICA6IGl0ZW0uaGVhZGluZy50eXBlID09PSAnc3RyaW5nJ1xuICAgICAgICAgICAgICAgID8gc3RyaW5nSGVhZGluZ1xuICAgICAgICAgICAgICAgIDogaTE4bkhlYWRpbmdcbiAgICAgICAgXCJcbiAgICA+PC9uZy10ZW1wbGF0ZT5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjZGVzY3JpcHRpb25UZW1wbGF0ZSBsZXQtaXRlbT5cbiAgICA8bmctdGVtcGxhdGUgI2RpcmVjdGl2ZURlc2NyaXB0aW9uPlxuICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIml0ZW0uZGVzY3JpcHRpb24ubWVzc2FnZSFcIlxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtLmRlc2NyaXB0aW9uLmVycm9yIH1cIlxuICAgICAgICA+PC9uZy10ZW1wbGF0ZT5cbiAgICA8L25nLXRlbXBsYXRlPlxuICAgIDxuZy10ZW1wbGF0ZSAjaTE4bkRlc2NyaXB0aW9uPlxuICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIml0ZW0uZGVzY3JpcHRpb24ubWVzc2FnZSFcIlxuICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBpdGVtLmVycm9ycyB9XCJcbiAgICAgICAgPjwvbmctdGVtcGxhdGU+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI3N0cmluZ0Rlc2NyaXB0aW9uPlxuICAgICAgICB7eyBpdGVtLmRlc2NyaXB0aW9uLm1lc3NhZ2UgfCBmZFRyYW5zbGF0ZSA6IHsgZXJyb3I6IGl0ZW0uZGVzY3JpcHRpb24uZXJyb3IgfSA6IGl0ZW0uZGVzY3JpcHRpb24ubWVzc2FnZSB9fVxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlXG4gICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIlxuICAgICAgICAgICAgaXRlbS5oZWFkaW5nLnR5cGUgPT09ICdkaXJlY3RpdmUnXG4gICAgICAgICAgICAgICAgPyBkaXJlY3RpdmVEZXNjcmlwdGlvblxuICAgICAgICAgICAgICAgIDogaXRlbS5oZWFkaW5nLnR5cGUgPT09ICdzdHJpbmcnXG4gICAgICAgICAgICAgICAgPyBzdHJpbmdEZXNjcmlwdGlvblxuICAgICAgICAgICAgICAgIDogaTE4bkRlc2NyaXB0aW9uXG4gICAgICAgIFwiXG4gICAgPjwvbmctdGVtcGxhdGU+XG48L25nLXRlbXBsYXRlPlxuXG48ZGl2IGNsYXNzPVwiZmQtbWVzc2FnZS12aWV3XCI+XG4gICAgPHNlY3Rpb25cbiAgICAgICAgY2xhc3M9XCJmZC1tZXNzYWdlLXZpZXdfX2xpc3RcIlxuICAgICAgICB0YWJpbmRleD1cIi0xXCJcbiAgICAgICAgW0BvcGVuQ2xvc2VMaXN0XT1cImN1cnJlbnRTY3JlZW4gPT09ICdsaXN0JyA/ICdvcGVuJyA6ICdjbG9zZWQnXCJcbiAgICAgICAgKEBvcGVuQ2xvc2VMaXN0LmRvbmUpPVwiX29uTGlzdEFuaW1hdGlvbkNvbXBsZXRlKCRldmVudClcIlxuICAgICAgICBmZC1zY3JvbGxiYXJcbiAgICAgICAgW292ZXJyaWRlVGFiaW5kZXhdPVwiZmFsc2VcIlxuICAgID5cbiAgICAgICAgPHVsICNsaXN0VmlldyBmZC1saXN0IGNsYXNzPVwibWVzc2FnZS1wb3BvdmVyX19saXN0IGZkLWxpc3QtLW1lc3NhZ2Utdmlld1wiIFtuYXZpZ2F0aW9uSW5kaWNhdG9yXT1cInRydWVcIj5cbiAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGdyb3VwIG9mIGZpbHRlcmVkRXJyb3JzXCI+XG4gICAgICAgICAgICAgICAgPGxpIGZkLWxpc3QtZ3JvdXAtaGVhZGVyICpuZ0lmPVwiZ3JvdXAuZ3JvdXBcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gZmQtbGlzdC10aXRsZT57eyBncm91cC5ncm91cCB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgZ3JvdXAuZXJyb3JzOyBsZXQgaSA9IGluZGV4XCI+XG4gICAgICAgICAgICAgICAgICAgIDxsaSBmZC1saXN0LWl0ZW0gW3RhYmluZGV4XT1cImkgPT09IDAgPyAwIDogLTFcIiBbYnlsaW5lXT1cInRydWVcIiAoY2xpY2spPVwiX3Nob3dEZXRhaWxzKGl0ZW0pXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2l0ZW1JY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkLW9iamVjdC1zdGF0dXNcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmZC1saXN0X19pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3N0YXR1c109XCJpdGVtLnN0YXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2dseXBoXT1cIidtZXNzYWdlLScgKyBpdGVtLnR5cGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlICNsaXN0U3VidGl0bGU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmZC1saXN0X19zdWJ0aXRsZVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImhlYWRpbmdUZW1wbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGl0ZW0gfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgID48L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgICAgICA8c3BhblxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZkLWxpc3QtbGlua1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtuYXZpZ2F0aW9uSW5kaWNhdG9yXT1cIiEhaXRlbS5kZXNjcmlwdGlvbi5tZXNzYWdlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cIml0ZW0uZWxlbWVudCAmJiAhIWl0ZW0uZGVzY3JpcHRpb24ubWVzc2FnZTsgZWxzZSBhbmNob3JMaXN0TGlua1wiXG4gICAgICAgICAgICAgICAgICAgICAgICA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIml0ZW1JY29uXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8c3BhbiBmZC1saXN0LWNvbnRlbnQ+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGZkLWxpc3QtdGl0bGU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8YSB0YWJpbmRleD1cIjBcIiBmZC1saW5rIChjbGljayk9XCJfZm9jdXNFbGVtZW50KCRldmVudCwgaXRlbSlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyBpdGVtLmZpZWxkTmFtZSB9fVxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJsaXN0U3VidGl0bGVcIj48L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjYW5jaG9yTGlzdExpbms+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPGEgZmQtbGlzdC1saW5rIFtuYXZpZ2F0aW9uSW5kaWNhdG9yXT1cIiEhaXRlbS5kZXNjcmlwdGlvbi5tZXNzYWdlXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJpdGVtSWNvblwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGZkLWxpc3QtY29udGVudD5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGZkLWxpc3QtdGl0bGU+e3sgaXRlbS5maWVsZE5hbWUgfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwibGlzdFN1YnRpdGxlXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPC91bD5cbiAgICA8L3NlY3Rpb24+XG4gICAgPHNlY3Rpb24gY2xhc3M9XCJmZC1tZXNzYWdlLXZpZXdfX2RldGFpbHNcIiBbQG9wZW5DbG9zZURldGFpbHNdPVwiY3VycmVudFNjcmVlbiA9PT0gJ2RldGFpbHMnID8gJ29wZW4nIDogJ2Nsb3NlZCdcIj5cbiAgICAgICAgPGRpdiAjZGV0YWlsc1ZpZXc+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiY3VycmVudEVudHJ5XCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmZC1tZXNzYWdlLXZpZXdfX2RldGFpbHMtdGl0bGVcIj5cbiAgICAgICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgICAgICAgIGZkLW9iamVjdC1zdGF0dXNcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmQtbWVzc2FnZS12aWV3X19pY29uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtzdGF0dXNdPVwiY3VycmVudEVudHJ5LnN0YXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtnbHlwaF09XCInbWVzc2FnZS0nICsgY3VycmVudEVudHJ5LnR5cGVcIlxuICAgICAgICAgICAgICAgICAgICA+PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImhlYWRpbmdUZW1wbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbmdUZW1wbGF0ZU91dGxldENvbnRleHRdPVwieyAkaW1wbGljaXQ6IGN1cnJlbnRFbnRyeSB9XCJcbiAgICAgICAgICAgICAgICAgICAgPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZmQtbWVzc2FnZS12aWV3X19kZXRhaWxzLWRlc2NyaXB0aW9uXCIgKm5nSWY9XCJjdXJyZW50RW50cnkuZGVzY3JpcHRpb24ubWVzc2FnZVwiPlxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGVcbiAgICAgICAgICAgICAgICAgICAgICAgIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImRlc2NyaXB0aW9uVGVtcGxhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW25nVGVtcGxhdGVPdXRsZXRDb250ZXh0XT1cInsgJGltcGxpY2l0OiBjdXJyZW50RW50cnkgfVwiXG4gICAgICAgICAgICAgICAgICAgID48L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICA8L3NlY3Rpb24+XG48L2Rpdj5cbiJdfQ==
@@ -9,9 +9,9 @@ export class MessagePopoverFormItemDirective {
9
9
  this.control = control;
10
10
  }
11
11
  }
12
- MessagePopoverFormItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: MessagePopoverFormItemDirective, deps: [{ token: i0.ElementRef }, { token: i1.NgControl, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
13
- MessagePopoverFormItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.8", type: MessagePopoverFormItemDirective, selector: "[fdpMessagePopoverFormItem]", inputs: { label: ["fdpMessagePopoverFormItem", "label"] }, ngImport: i0 });
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: MessagePopoverFormItemDirective, decorators: [{
12
+ MessagePopoverFormItemDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MessagePopoverFormItemDirective, deps: [{ token: i0.ElementRef }, { token: i1.NgControl, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
13
+ MessagePopoverFormItemDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "15.2.9", type: MessagePopoverFormItemDirective, selector: "[fdpMessagePopoverFormItem]", inputs: { label: ["fdpMessagePopoverFormItem", "label"] }, ngImport: i0 });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MessagePopoverFormItemDirective, decorators: [{
15
15
  type: Directive,
16
16
  args: [{
17
17
  selector: '[fdpMessagePopoverFormItem]'
@@ -91,9 +91,9 @@ export class MessagePopoverComponent {
91
91
  });
92
92
  }
93
93
  }
94
- MessagePopoverComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: MessagePopoverComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.DestroyedService }], target: i0.ɵɵFactoryTarget.Component });
95
- MessagePopoverComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: MessagePopoverComponent, selector: "fdp-message-popover", inputs: { wrapper: "wrapper" }, outputs: { focusItem: "focusItem" }, providers: [DestroyedService], viewQueries: [{ propertyName: "_popover", first: true, predicate: ["popover"], descendants: true }], ngImport: i0, template: "<fd-popover\n #popover\n placement=\"top-start\"\n *ngIf=\"_errorTypes.length > 0\"\n [focusTrapped]=\"true\"\n [focusAutoCapture]=\"true\"\n [disableScrollbar]=\"true\"\n>\n <fd-popover-control>\n <button\n fd-button\n type=\"button\"\n class=\"fd-message-popover__trigger fd-message-popover__trigger\"\n [ngClass]=\"'fd-message-popover__trigger--' + _priorityState\"\n [glyph]=\"'message-' + _priorityFormState\"\n [label]=\"_priorityStateItemsCount.toString()\"\n ></button>\n </fd-popover-control>\n <div>\n <div fd-popover-body-header>\n <div fd-bar barDesign=\"header\" class=\"fd-bar--growing\">\n <div fd-bar-left>\n <fd-segmented-button\n [(ngModel)]=\"_currentErrorType\"\n *ngIf=\"currentScreen === 'list'\"\n (ngModelChange)=\"_filterErrors()\"\n >\n <button\n fd-button\n [label]=\"'platformMessagePopover.allErrors' | fdTranslate\"\n value=\"all\"\n ></button>\n <button fd-button *ngFor=\"let type of _errorTypes\" [value]=\"type.group\">\n <span fd-object-status [status]=\"type.state\" [glyph]=\"'message-' + type.group\"></span>\n <span class=\"fd-button__text\">{{ type.count }}</span>\n </button>\n </fd-segmented-button>\n <button\n *ngIf=\"currentScreen === 'details'\"\n fd-button\n fdInitialFocus\n fdType=\"transparent\"\n glyph=\"navigation-left-arrow\"\n title=\"Go back\"\n (click)=\"_showList()\"\n ></button>\n </div>\n <div fd-bar-right>\n <button fd-button fdType=\"transparent\" (click)=\"popover.close()\" glyph=\"decline\"></button>\n </div>\n </div>\n </div>\n <fdp-message-view\n [currentScreen]=\"currentScreen\"\n [filteredErrors]=\"_filteredErrors\"\n [currentEntry]=\"currentEntry\"\n (openDetails)=\"_showDetails($event)\"\n (closePopover)=\"_closePopover($event)\"\n (focusItem)=\"focusItem.emit($event)\"\n ></fdp-message-view>\n </div>\n</fd-popover>\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-message-view{-webkit-box-sizing:border-box;border:0;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;overflow:hidden;padding:0;position:relative}.fd-message-view:after,.fd-message-view:before{box-sizing:inherit;font-size:inherit}.fd-message-view__list{-webkit-box-sizing:border-box;border:0;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;max-height:50vh;max-width:26rem;padding:0}.fd-message-view__list:after,.fd-message-view__list:before{box-sizing:inherit;font-size:inherit}.fd-message-view__list--hidden{opacity:0}.fd-message-view__details{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);display:none;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;inset:0;line-height:var(--sapContent_LineHeight);margin:0;padding:1rem 1rem 1rem 3.5rem;position:absolute}.fd-message-view__details:after,.fd-message-view__details:before{box-sizing:inherit;font-size:inherit}.fd-message-view__details[dir=rtl],[dir=rtl] .fd-message-view__details{padding:1rem 3.5rem 1rem 1rem}.fd-message-view__details-title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapGroup_TitleTextColor);display:block;font-family:var(--sapFontFamily);font-family:var(--sapFontHeaderFamily);font-size:var(--sapFontSize);font-size:var(--sapFontHeader5Size);font-weight:400;font-weight:var(--sapFontHeaderWeight);forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0 0 1rem;padding:0;white-space:normal}.fd-message-view__details-title:after,.fd-message-view__details-title:before{box-sizing:inherit;font-size:inherit}.fd-message-view__details-title .fd-message-view__icon{font-size:1rem;margin:0 .5rem 0 -2rem}.fd-message-view__details-title .fd-message-view__icon[dir=rtl],[dir=rtl] .fd-message-view__details-title .fd-message-view__icon{margin:0 -2rem 0 .5rem}.fd-message-view__details-description{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);display:block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1.4;margin:0 0 1rem;padding:0;white-space:normal}.fd-message-view__details-description:after,.fd-message-view__details-description:before{box-sizing:inherit;font-size:inherit}.fd-message-view__details--visible{display:block}.fd-message-popover__trigger.is-focus,.fd-message-popover__trigger:focus{outline-color:var(--sapContent_ContrastFocusColor);z-index:5}.fd-message-popover__trigger--critical{--fdButtonColor:var(--sapButton_Critical_TextColor);--fdButtonBackgroundColor:var(--sapButton_Critical_Background);--fdButtonBorderColor:var(--sapButton_Critical_BorderColor)}.fd-message-popover__trigger--critical.is-hover,.fd-message-popover__trigger--critical:hover{--fdButtonColor:var(--sapButton_Critical_Hover_TextColor);--fdButtonBackgroundColor:var(--sapButton_Critical_Hover_Background);--fdButtonBorderColor:var(--sapButton_Critical_Hover_BorderColor)}.fd-message-popover__trigger--critical.is-active,.fd-message-popover__trigger--critical:active{--fdButtonColor:var(--sapButton_Critical_Active_TextColor);--fdButtonBackgroundColor:var(--sapButton_Critical_Active_Background);--fdButtonBorderColor:var(--sapButton_Critical_Active_BorderColor)}.fd-message-popover__trigger--negative{--fdButtonColor:var(--sapButton_Negative_TextColor);--fdButtonBackgroundColor:var(--sapButton_Negative_Background);--fdButtonBorderColor:var(--sapButton_Negative_BorderColor)}.fd-message-popover__trigger--negative.is-hover,.fd-message-popover__trigger--negative:hover{--fdButtonColor:var(--sapButton_Negative_Hover_TextColor);--fdButtonBackgroundColor:var(--sapButton_Negative_Hover_Background);--fdButtonBorderColor:var(--sapButton_Negative_Hover_BorderColor)}.fd-message-popover__trigger--negative.is-active,.fd-message-popover__trigger--negative:active{--fdButtonColor:var(--sapButton_Negative_Active_TextColor);--fdButtonBackgroundColor:var(--sapButton_Negative_Active_Background);--fdButtonBorderColor:var(--sapButton_Negative_Active_BorderColor)}.fd-message-popover__trigger--success{--fdButtonColor:var(--sapButton_Success_TextColor);--fdButtonBackgroundColor:var(--sapButton_Success_Background);--fdButtonBorderColor:var(--sapButton_Success_BorderColor)}.fd-message-popover__trigger--success.is-hover,.fd-message-popover__trigger--success:hover{--fdButtonColor:var(--sapButton_Success_Hover_TextColor);--fdButtonBackgroundColor:var(--sapButton_Success_Hover_Background);--fdButtonBorderColor:var(--sapButton_Success_Hover_BorderColor)}.fd-message-popover__trigger--success.is-active,.fd-message-popover__trigger--success:active{--fdButtonColor:var(--sapButton_Success_Active_TextColor);--fdButtonBackgroundColor:var(--sapButton_Success_Active_Background);--fdButtonBorderColor:var(--sapButton_Success_Active_BorderColor)}.fd-message-popover__trigger--information{--fdButtonColor:var(--sapButton_Neutral_TextColor);--fdButtonBackgroundColor:var(--sapButton_Neutral_Background);--fdButtonBorderColor:var(--sapButton_Neutral_BorderColor)}.fd-message-popover__trigger--information.is-hover,.fd-message-popover__trigger--information:hover{--fdButtonColor:var(--sapButton_Neutral_Hover_TextColor);--fdButtonBackgroundColor:var(--sapButton_Neutral_Hover_Background);--fdButtonBorderColor:var(--sapButton_Neutral_Hover_BorderColor)}.fd-message-popover__trigger--information.is-active,.fd-message-popover__trigger--information:active{--fdButtonColor:var(--sapButton_Neutral_Active_TextColor);--fdButtonBackgroundColor:var(--sapButton_Neutral_Active_Background);--fdButtonBorderColor:var(--sapButton_Neutral_Active_BorderColor)}.fd-message-popover__view-container{border-bottom-left-radius:var(--fdPopover_Border_Radius);border-bottom-right-radius:var(--fdPopover_Border_Radius);overflow:hidden;display:block;max-height:40vh}.fd-message-popover__view-container .fd-message-view .fd-list__item:first-child{border-top-left-radius:0;border-top-right-radius:0}.fd-message-popover__view-container .fd-message-view .fd-list__item:first-child:before{border-top-left-radius:0;border-top-right-radius:0}.fd-message-popover__view-container .fd-message-view .fd-list__item:last-child{border-bottom-left-radius:0;border-bottom-right-radius:0}.fd-message-popover__view-container .fd-message-view .fd-list__item:last-child:before{border-bottom-left-radius:0;border-bottom-right-radius:0}.fd-message-view__list{min-width:20rem;min-height:10rem;max-height:40vh}.fd-message-view__list .fd-link{font-size:inherit}.fd-message-view__list .fd-list__link:active,.fd-message-view__list .fd-list__link.is-active{--sapLinkColor: var(--sapList_Active_TextColor);--sapLink_Active_Color: var(--sapList_Active_TextColor)}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.PopoverControlComponent, selector: "fd-popover-control" }, { kind: "directive", type: i3.PopoverBodyHeaderDirective, selector: "[fdPopoverBodyHeader], [fd-popover-body-header]" }, { kind: "component", type: i3.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig"] }, { kind: "component", type: i4.BarComponent, selector: "[fd-bar]", inputs: ["class", "barDesign", "inPage", "inHomePage", "size"] }, { kind: "directive", type: i4.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i4.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "component", type: i5.SegmentedButtonComponent, selector: "fd-segmented-button", inputs: ["toggle"] }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i7.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i8.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large"] }, { kind: "directive", type: i1.InitialFocusDirective, selector: "[fdkInitialFocus], [fdInitialFocus], [fd-initial-focus]", inputs: ["fd-initial-focus", "enabled", "focusLastElement"] }, { kind: "directive", type: i1.DeprecatedInitialFocusDirective, selector: "[fdInitialFocus], [fd-initial-focus]" }, { kind: "component", type: i9.MessageViewComponent, selector: "fdp-message-view", inputs: ["currentScreen", "filteredErrors", "currentEntry"], outputs: ["openDetails", "focusItem", "closePopover"] }, { kind: "pipe", type: i10.FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
96
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: MessagePopoverComponent, decorators: [{
94
+ MessagePopoverComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MessagePopoverComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.DestroyedService }], target: i0.ɵɵFactoryTarget.Component });
95
+ MessagePopoverComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: MessagePopoverComponent, selector: "fdp-message-popover", inputs: { wrapper: "wrapper" }, outputs: { focusItem: "focusItem" }, providers: [DestroyedService], viewQueries: [{ propertyName: "_popover", first: true, predicate: ["popover"], descendants: true }], ngImport: i0, template: "<fd-popover\n #popover\n placement=\"top-start\"\n *ngIf=\"_errorTypes.length > 0\"\n [focusTrapped]=\"true\"\n [focusAutoCapture]=\"true\"\n [disableScrollbar]=\"true\"\n>\n <fd-popover-control>\n <button\n fd-button\n type=\"button\"\n class=\"fd-message-popover__trigger fd-message-popover__trigger\"\n [ngClass]=\"'fd-message-popover__trigger--' + _priorityState\"\n [glyph]=\"'message-' + _priorityFormState\"\n [label]=\"_priorityStateItemsCount.toString()\"\n ></button>\n </fd-popover-control>\n <div>\n <div fd-popover-body-header>\n <div fd-bar barDesign=\"header\" class=\"fd-bar--growing\">\n <div fd-bar-left>\n <fd-segmented-button\n [(ngModel)]=\"_currentErrorType\"\n *ngIf=\"currentScreen === 'list'\"\n (ngModelChange)=\"_filterErrors()\"\n >\n <button\n fd-button\n [label]=\"'platformMessagePopover.allErrors' | fdTranslate\"\n value=\"all\"\n ></button>\n <button fd-button *ngFor=\"let type of _errorTypes\" [value]=\"type.group\">\n <span fd-object-status [status]=\"type.state\" [glyph]=\"'message-' + type.group\"></span>\n <span class=\"fd-button__text\">{{ type.count }}</span>\n </button>\n </fd-segmented-button>\n <button\n *ngIf=\"currentScreen === 'details'\"\n fd-button\n fdInitialFocus\n fdType=\"transparent\"\n glyph=\"navigation-left-arrow\"\n title=\"Go back\"\n (click)=\"_showList()\"\n ></button>\n </div>\n <div fd-bar-right>\n <button fd-button fdType=\"transparent\" (click)=\"popover.close()\" glyph=\"decline\"></button>\n </div>\n </div>\n </div>\n <fdp-message-view\n [currentScreen]=\"currentScreen\"\n [filteredErrors]=\"_filteredErrors\"\n [currentEntry]=\"currentEntry\"\n (openDetails)=\"_showDetails($event)\"\n (closePopover)=\"_closePopover($event)\"\n (focusItem)=\"focusItem.emit($event)\"\n ></fdp-message-view>\n </div>\n</fd-popover>\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-message-view{-webkit-box-sizing:border-box;border:0;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;overflow:hidden;padding:0;position:relative}.fd-message-view:after,.fd-message-view:before{box-sizing:inherit;font-size:inherit}.fd-message-view__list{-webkit-box-sizing:border-box;border:0;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;max-height:50vh;max-width:26rem;padding:0}.fd-message-view__list:after,.fd-message-view__list:before{box-sizing:inherit;font-size:inherit}.fd-message-view__list--hidden{opacity:0}.fd-message-view__details{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);display:none;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;inset:0;line-height:var(--sapContent_LineHeight);margin:0;padding:1rem 1rem 1rem 3.5rem;position:absolute}.fd-message-view__details:after,.fd-message-view__details:before{box-sizing:inherit;font-size:inherit}.fd-message-view__details[dir=rtl],[dir=rtl] .fd-message-view__details{padding:1rem 3.5rem 1rem 1rem}.fd-message-view__details-title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapGroup_TitleTextColor);display:block;font-family:var(--sapFontFamily);font-family:var(--sapFontHeaderFamily);font-size:var(--sapFontSize);font-size:var(--sapFontHeader5Size);font-weight:400;font-weight:var(--sapFontHeaderWeight);forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0 0 1rem;padding:0;white-space:normal}.fd-message-view__details-title:after,.fd-message-view__details-title:before{box-sizing:inherit;font-size:inherit}.fd-message-view__details-title .fd-message-view__icon{font-size:1rem;margin:0 .5rem 0 -2rem}.fd-message-view__details-title .fd-message-view__icon[dir=rtl],[dir=rtl] .fd-message-view__details-title .fd-message-view__icon{margin:0 -2rem 0 .5rem}.fd-message-view__details-description{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);display:block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1.4;margin:0 0 1rem;padding:0;white-space:normal}.fd-message-view__details-description:after,.fd-message-view__details-description:before{box-sizing:inherit;font-size:inherit}.fd-message-view__details--visible{display:block}.fd-message-popover__trigger.is-focus,.fd-message-popover__trigger:focus{outline-color:var(--sapContent_ContrastFocusColor);z-index:5}.fd-message-popover__trigger--critical{--fdButtonColor:var(--sapButton_Critical_TextColor);--fdButtonBackgroundColor:var(--sapButton_Critical_Background);--fdButtonBorderColor:var(--sapButton_Critical_BorderColor)}.fd-message-popover__trigger--critical.is-hover,.fd-message-popover__trigger--critical:hover{--fdButtonColor:var(--sapButton_Critical_Hover_TextColor);--fdButtonBackgroundColor:var(--sapButton_Critical_Hover_Background);--fdButtonBorderColor:var(--sapButton_Critical_Hover_BorderColor)}.fd-message-popover__trigger--critical.is-active,.fd-message-popover__trigger--critical:active{--fdButtonColor:var(--sapButton_Critical_Active_TextColor);--fdButtonBackgroundColor:var(--sapButton_Critical_Active_Background);--fdButtonBorderColor:var(--sapButton_Critical_Active_BorderColor)}.fd-message-popover__trigger--negative{--fdButtonColor:var(--sapButton_Negative_TextColor);--fdButtonBackgroundColor:var(--sapButton_Negative_Background);--fdButtonBorderColor:var(--sapButton_Negative_BorderColor)}.fd-message-popover__trigger--negative.is-hover,.fd-message-popover__trigger--negative:hover{--fdButtonColor:var(--sapButton_Negative_Hover_TextColor);--fdButtonBackgroundColor:var(--sapButton_Negative_Hover_Background);--fdButtonBorderColor:var(--sapButton_Negative_Hover_BorderColor)}.fd-message-popover__trigger--negative.is-active,.fd-message-popover__trigger--negative:active{--fdButtonColor:var(--sapButton_Negative_Active_TextColor);--fdButtonBackgroundColor:var(--sapButton_Negative_Active_Background);--fdButtonBorderColor:var(--sapButton_Negative_Active_BorderColor)}.fd-message-popover__trigger--success{--fdButtonColor:var(--sapButton_Success_TextColor);--fdButtonBackgroundColor:var(--sapButton_Success_Background);--fdButtonBorderColor:var(--sapButton_Success_BorderColor)}.fd-message-popover__trigger--success.is-hover,.fd-message-popover__trigger--success:hover{--fdButtonColor:var(--sapButton_Success_Hover_TextColor);--fdButtonBackgroundColor:var(--sapButton_Success_Hover_Background);--fdButtonBorderColor:var(--sapButton_Success_Hover_BorderColor)}.fd-message-popover__trigger--success.is-active,.fd-message-popover__trigger--success:active{--fdButtonColor:var(--sapButton_Success_Active_TextColor);--fdButtonBackgroundColor:var(--sapButton_Success_Active_Background);--fdButtonBorderColor:var(--sapButton_Success_Active_BorderColor)}.fd-message-popover__trigger--information{--fdButtonColor:var(--sapButton_Neutral_TextColor);--fdButtonBackgroundColor:var(--sapButton_Neutral_Background);--fdButtonBorderColor:var(--sapButton_Neutral_BorderColor)}.fd-message-popover__trigger--information.is-hover,.fd-message-popover__trigger--information:hover{--fdButtonColor:var(--sapButton_Neutral_Hover_TextColor);--fdButtonBackgroundColor:var(--sapButton_Neutral_Hover_Background);--fdButtonBorderColor:var(--sapButton_Neutral_Hover_BorderColor)}.fd-message-popover__trigger--information.is-active,.fd-message-popover__trigger--information:active{--fdButtonColor:var(--sapButton_Neutral_Active_TextColor);--fdButtonBackgroundColor:var(--sapButton_Neutral_Active_Background);--fdButtonBorderColor:var(--sapButton_Neutral_Active_BorderColor)}.fd-message-popover__view-container{border-bottom-left-radius:var(--fdPopover_Border_Radius);border-bottom-right-radius:var(--fdPopover_Border_Radius);overflow:hidden;display:block;max-height:40vh}.fd-message-popover__view-container .fd-message-view .fd-list__item:first-child{border-top-left-radius:0;border-top-right-radius:0}.fd-message-popover__view-container .fd-message-view .fd-list__item:first-child:before{border-top-left-radius:0;border-top-right-radius:0}.fd-message-popover__view-container .fd-message-view .fd-list__item:last-child{border-bottom-left-radius:0;border-bottom-right-radius:0}.fd-message-popover__view-container .fd-message-view .fd-list__item:last-child:before{border-bottom-left-radius:0;border-bottom-right-radius:0}.fd-message-view__list{min-width:20rem;min-height:10rem;max-height:40vh}.fd-message-view__list .fd-link{font-size:inherit}.fd-message-view__list .fd-list__link:active,.fd-message-view__list .fd-list__link.is-active{--sapLinkColor: var(--sapList_Active_TextColor);--sapLink_Active_Color: var(--sapList_Active_TextColor)}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i3.PopoverControlComponent, selector: "fd-popover-control" }, { kind: "directive", type: i3.PopoverBodyHeaderDirective, selector: "[fdPopoverBodyHeader], [fd-popover-body-header]" }, { kind: "component", type: i3.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig"] }, { kind: "component", type: i4.BarComponent, selector: "[fd-bar]", inputs: ["class", "barDesign", "inPage", "inHomePage", "size"] }, { kind: "directive", type: i4.BarLeftDirective, selector: "[fd-bar-left]" }, { kind: "directive", type: i4.BarRightDirective, selector: "[fd-bar-right]" }, { kind: "component", type: i5.SegmentedButtonComponent, selector: "fd-segmented-button", inputs: ["toggle"] }, { kind: "directive", type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i7.ButtonComponent, selector: "button[fd-button], a[fd-button]", inputs: ["class"], exportAs: ["fd-button"] }, { kind: "component", type: i8.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large"] }, { kind: "directive", type: i1.InitialFocusDirective, selector: "[fdkInitialFocus], [fdInitialFocus], [fd-initial-focus]", inputs: ["fdkInitialFocus", "enabled", "focusLastElement"] }, { kind: "directive", type: i1.DeprecatedInitialFocusDirective, selector: "[fdInitialFocus], [fd-initial-focus]", inputs: ["fd-initial-focus"] }, { kind: "component", type: i9.MessageViewComponent, selector: "fdp-message-view", inputs: ["currentScreen", "filteredErrors", "currentEntry"], outputs: ["openDetails", "focusItem", "closePopover"] }, { kind: "pipe", type: i10.FdTranslatePipe, name: "fdTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
96
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: MessagePopoverComponent, decorators: [{
97
97
  type: Component,
98
98
  args: [{ selector: 'fdp-message-popover', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [DestroyedService], template: "<fd-popover\n #popover\n placement=\"top-start\"\n *ngIf=\"_errorTypes.length > 0\"\n [focusTrapped]=\"true\"\n [focusAutoCapture]=\"true\"\n [disableScrollbar]=\"true\"\n>\n <fd-popover-control>\n <button\n fd-button\n type=\"button\"\n class=\"fd-message-popover__trigger fd-message-popover__trigger\"\n [ngClass]=\"'fd-message-popover__trigger--' + _priorityState\"\n [glyph]=\"'message-' + _priorityFormState\"\n [label]=\"_priorityStateItemsCount.toString()\"\n ></button>\n </fd-popover-control>\n <div>\n <div fd-popover-body-header>\n <div fd-bar barDesign=\"header\" class=\"fd-bar--growing\">\n <div fd-bar-left>\n <fd-segmented-button\n [(ngModel)]=\"_currentErrorType\"\n *ngIf=\"currentScreen === 'list'\"\n (ngModelChange)=\"_filterErrors()\"\n >\n <button\n fd-button\n [label]=\"'platformMessagePopover.allErrors' | fdTranslate\"\n value=\"all\"\n ></button>\n <button fd-button *ngFor=\"let type of _errorTypes\" [value]=\"type.group\">\n <span fd-object-status [status]=\"type.state\" [glyph]=\"'message-' + type.group\"></span>\n <span class=\"fd-button__text\">{{ type.count }}</span>\n </button>\n </fd-segmented-button>\n <button\n *ngIf=\"currentScreen === 'details'\"\n fd-button\n fdInitialFocus\n fdType=\"transparent\"\n glyph=\"navigation-left-arrow\"\n title=\"Go back\"\n (click)=\"_showList()\"\n ></button>\n </div>\n <div fd-bar-right>\n <button fd-button fdType=\"transparent\" (click)=\"popover.close()\" glyph=\"decline\"></button>\n </div>\n </div>\n </div>\n <fdp-message-view\n [currentScreen]=\"currentScreen\"\n [filteredErrors]=\"_filteredErrors\"\n [currentEntry]=\"currentEntry\"\n (openDetails)=\"_showDetails($event)\"\n (closePopover)=\"_closePopover($event)\"\n (focusItem)=\"focusItem.emit($event)\"\n ></fdp-message-view>\n </div>\n</fd-popover>\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-message-view{-webkit-box-sizing:border-box;border:0;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;overflow:hidden;padding:0;position:relative}.fd-message-view:after,.fd-message-view:before{box-sizing:inherit;font-size:inherit}.fd-message-view__list{-webkit-box-sizing:border-box;border:0;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;max-height:50vh;max-width:26rem;padding:0}.fd-message-view__list:after,.fd-message-view__list:before{box-sizing:inherit;font-size:inherit}.fd-message-view__list--hidden{opacity:0}.fd-message-view__details{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);display:none;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;inset:0;line-height:var(--sapContent_LineHeight);margin:0;padding:1rem 1rem 1rem 3.5rem;position:absolute}.fd-message-view__details:after,.fd-message-view__details:before{box-sizing:inherit;font-size:inherit}.fd-message-view__details[dir=rtl],[dir=rtl] .fd-message-view__details{padding:1rem 3.5rem 1rem 1rem}.fd-message-view__details-title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapGroup_TitleTextColor);display:block;font-family:var(--sapFontFamily);font-family:var(--sapFontHeaderFamily);font-size:var(--sapFontSize);font-size:var(--sapFontHeader5Size);font-weight:400;font-weight:var(--sapFontHeaderWeight);forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0 0 1rem;padding:0;white-space:normal}.fd-message-view__details-title:after,.fd-message-view__details-title:before{box-sizing:inherit;font-size:inherit}.fd-message-view__details-title .fd-message-view__icon{font-size:1rem;margin:0 .5rem 0 -2rem}.fd-message-view__details-title .fd-message-view__icon[dir=rtl],[dir=rtl] .fd-message-view__details-title .fd-message-view__icon{margin:0 -2rem 0 .5rem}.fd-message-view__details-description{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);display:block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);line-height:1.4;margin:0 0 1rem;padding:0;white-space:normal}.fd-message-view__details-description:after,.fd-message-view__details-description:before{box-sizing:inherit;font-size:inherit}.fd-message-view__details--visible{display:block}.fd-message-popover__trigger.is-focus,.fd-message-popover__trigger:focus{outline-color:var(--sapContent_ContrastFocusColor);z-index:5}.fd-message-popover__trigger--critical{--fdButtonColor:var(--sapButton_Critical_TextColor);--fdButtonBackgroundColor:var(--sapButton_Critical_Background);--fdButtonBorderColor:var(--sapButton_Critical_BorderColor)}.fd-message-popover__trigger--critical.is-hover,.fd-message-popover__trigger--critical:hover{--fdButtonColor:var(--sapButton_Critical_Hover_TextColor);--fdButtonBackgroundColor:var(--sapButton_Critical_Hover_Background);--fdButtonBorderColor:var(--sapButton_Critical_Hover_BorderColor)}.fd-message-popover__trigger--critical.is-active,.fd-message-popover__trigger--critical:active{--fdButtonColor:var(--sapButton_Critical_Active_TextColor);--fdButtonBackgroundColor:var(--sapButton_Critical_Active_Background);--fdButtonBorderColor:var(--sapButton_Critical_Active_BorderColor)}.fd-message-popover__trigger--negative{--fdButtonColor:var(--sapButton_Negative_TextColor);--fdButtonBackgroundColor:var(--sapButton_Negative_Background);--fdButtonBorderColor:var(--sapButton_Negative_BorderColor)}.fd-message-popover__trigger--negative.is-hover,.fd-message-popover__trigger--negative:hover{--fdButtonColor:var(--sapButton_Negative_Hover_TextColor);--fdButtonBackgroundColor:var(--sapButton_Negative_Hover_Background);--fdButtonBorderColor:var(--sapButton_Negative_Hover_BorderColor)}.fd-message-popover__trigger--negative.is-active,.fd-message-popover__trigger--negative:active{--fdButtonColor:var(--sapButton_Negative_Active_TextColor);--fdButtonBackgroundColor:var(--sapButton_Negative_Active_Background);--fdButtonBorderColor:var(--sapButton_Negative_Active_BorderColor)}.fd-message-popover__trigger--success{--fdButtonColor:var(--sapButton_Success_TextColor);--fdButtonBackgroundColor:var(--sapButton_Success_Background);--fdButtonBorderColor:var(--sapButton_Success_BorderColor)}.fd-message-popover__trigger--success.is-hover,.fd-message-popover__trigger--success:hover{--fdButtonColor:var(--sapButton_Success_Hover_TextColor);--fdButtonBackgroundColor:var(--sapButton_Success_Hover_Background);--fdButtonBorderColor:var(--sapButton_Success_Hover_BorderColor)}.fd-message-popover__trigger--success.is-active,.fd-message-popover__trigger--success:active{--fdButtonColor:var(--sapButton_Success_Active_TextColor);--fdButtonBackgroundColor:var(--sapButton_Success_Active_Background);--fdButtonBorderColor:var(--sapButton_Success_Active_BorderColor)}.fd-message-popover__trigger--information{--fdButtonColor:var(--sapButton_Neutral_TextColor);--fdButtonBackgroundColor:var(--sapButton_Neutral_Background);--fdButtonBorderColor:var(--sapButton_Neutral_BorderColor)}.fd-message-popover__trigger--information.is-hover,.fd-message-popover__trigger--information:hover{--fdButtonColor:var(--sapButton_Neutral_Hover_TextColor);--fdButtonBackgroundColor:var(--sapButton_Neutral_Hover_Background);--fdButtonBorderColor:var(--sapButton_Neutral_Hover_BorderColor)}.fd-message-popover__trigger--information.is-active,.fd-message-popover__trigger--information:active{--fdButtonColor:var(--sapButton_Neutral_Active_TextColor);--fdButtonBackgroundColor:var(--sapButton_Neutral_Active_Background);--fdButtonBorderColor:var(--sapButton_Neutral_Active_BorderColor)}.fd-message-popover__view-container{border-bottom-left-radius:var(--fdPopover_Border_Radius);border-bottom-right-radius:var(--fdPopover_Border_Radius);overflow:hidden;display:block;max-height:40vh}.fd-message-popover__view-container .fd-message-view .fd-list__item:first-child{border-top-left-radius:0;border-top-right-radius:0}.fd-message-popover__view-container .fd-message-view .fd-list__item:first-child:before{border-top-left-radius:0;border-top-right-radius:0}.fd-message-popover__view-container .fd-message-view .fd-list__item:last-child{border-bottom-left-radius:0;border-bottom-right-radius:0}.fd-message-popover__view-container .fd-message-view .fd-list__item:last-child:before{border-bottom-left-radius:0;border-bottom-right-radius:0}.fd-message-view__list{min-width:20rem;min-height:10rem;max-height:40vh}.fd-message-view__list .fd-link{font-size:inherit}.fd-message-view__list .fd-list__link:active,.fd-message-view__list .fd-list__link.is-active{--sapLinkColor: var(--sapList_Active_TextColor);--sapLink_Active_Color: var(--sapList_Active_TextColor)}\n"] }]
99
99
  }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.DestroyedService }]; }, propDecorators: { wrapper: [{
@@ -49,8 +49,8 @@ export class PlatformMessagePopoverModule {
49
49
  };
50
50
  }
51
51
  }
52
- PlatformMessagePopoverModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PlatformMessagePopoverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
53
- PlatformMessagePopoverModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: PlatformMessagePopoverModule, declarations: [MessagePopoverComponent,
52
+ PlatformMessagePopoverModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PlatformMessagePopoverModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
53
+ PlatformMessagePopoverModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: PlatformMessagePopoverModule, declarations: [MessagePopoverComponent,
54
54
  MessagePopoverFormWrapperComponent,
55
55
  MessageViewComponent,
56
56
  MessagePopoverFormItemDirective], imports: [CommonModule,
@@ -71,7 +71,7 @@ PlatformMessagePopoverModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.
71
71
  MessagePopoverFormWrapperComponent,
72
72
  MessageViewComponent,
73
73
  MessagePopoverFormItemDirective] });
74
- PlatformMessagePopoverModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PlatformMessagePopoverModule, providers: [
74
+ PlatformMessagePopoverModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PlatformMessagePopoverModule, providers: [
75
75
  {
76
76
  provide: FDP_MESSAGE_POPOVER_CONFIG,
77
77
  useValue: FDP_MESSAGE_POPOVER_DEFAULT_CONFIG
@@ -91,7 +91,7 @@ PlatformMessagePopoverModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.
91
91
  PlatformButtonModule,
92
92
  I18nModule,
93
93
  InitialFocusModule] });
94
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PlatformMessagePopoverModule, decorators: [{
94
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PlatformMessagePopoverModule, decorators: [{
95
95
  type: NgModule,
96
96
  args: [{
97
97
  imports: [
@@ -26,9 +26,9 @@ export class ObjectAttributeComponent {
26
26
  }
27
27
  }
28
28
  }
29
- ObjectAttributeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: ObjectAttributeComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
30
- ObjectAttributeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: ObjectAttributeComponent, selector: "fdp-object-attribute", inputs: { label: "label", linkText: "linkText", islink: "islink", disabled: "disabled" }, outputs: { objectAttributeclick: "objectAttributeclick" }, ngImport: i0, template: "{{ label }}\n<ng-content></ng-content>\n<ng-container *ngIf=\"linkText !== null && linkText !== undefined\">\n <span\n (click)=\"onObjectAttributeClick($event)\"\n [attr.tabindex]=\"disabled ? '-1' : '0'\"\n [attr.aria-label]=\"linkText\"\n [attr.title]=\"linkText\"\n [class.fd-object-attribute--link]=\"islink\"\n role=\"link\"\n [attr.aria-disabled]=\"disabled\"\n (keydown.enter)=\"onObjectAttributeClick($event)\"\n >\n {{ linkText }}\n </span>\n</ng-container>\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-object-attribute{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);display:block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-object-attribute:after,.fd-object-attribute:before{box-sizing:inherit;font-size:inherit}.fd-object-attribute--link{color:var(--sapLinkColor);cursor:pointer;text-decoration:none}.fd-object-attribute--link:visited{color:var(--sapLink_Visited_Color)}.fd-object-attribute--link.is-hover,.fd-object-attribute--link:hover{color:var(--sapLink_Hover_Color);text-decoration:underline}.fd-object-attribute--link.is-focus,.fd-object-attribute--link:focus{outline-color:var(--sapContent_FocusColor);outline-offset:-.0625rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth);z-index:5}.fd-object-attribute--link.is-disabled,.fd-object-attribute--link:disabled,.fd-object-attribute--link[aria-disabled=true]{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
31
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: ObjectAttributeComponent, decorators: [{
29
+ ObjectAttributeComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ObjectAttributeComponent, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
30
+ ObjectAttributeComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: ObjectAttributeComponent, selector: "fdp-object-attribute", inputs: { label: "label", linkText: "linkText", islink: "islink", disabled: "disabled" }, outputs: { objectAttributeclick: "objectAttributeclick" }, ngImport: i0, template: "{{ label }}\n<ng-content></ng-content>\n<ng-container *ngIf=\"linkText !== null && linkText !== undefined\">\n <span\n (click)=\"onObjectAttributeClick($event)\"\n [attr.tabindex]=\"disabled ? '-1' : '0'\"\n [attr.aria-label]=\"linkText\"\n [attr.title]=\"linkText\"\n [class.fd-object-attribute--link]=\"islink\"\n role=\"link\"\n [attr.aria-disabled]=\"disabled\"\n (keydown.enter)=\"onObjectAttributeClick($event)\"\n >\n {{ linkText }}\n </span>\n</ng-container>\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-object-attribute{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);display:block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-object-attribute:after,.fd-object-attribute:before{box-sizing:inherit;font-size:inherit}.fd-object-attribute--link{color:var(--sapLinkColor);cursor:pointer;text-decoration:none}.fd-object-attribute--link:visited{color:var(--sapLink_Visited_Color)}.fd-object-attribute--link.is-hover,.fd-object-attribute--link:hover{color:var(--sapLink_Hover_Color);text-decoration:underline}.fd-object-attribute--link.is-focus,.fd-object-attribute--link:focus{outline-color:var(--sapContent_FocusColor);outline-offset:-.0625rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth);z-index:5}.fd-object-attribute--link.is-disabled,.fd-object-attribute--link:disabled,.fd-object-attribute--link[aria-disabled=true]{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ObjectAttributeComponent, decorators: [{
32
32
  type: Component,
33
33
  args: [{ selector: 'fdp-object-attribute', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "{{ label }}\n<ng-content></ng-content>\n<ng-container *ngIf=\"linkText !== null && linkText !== undefined\">\n <span\n (click)=\"onObjectAttributeClick($event)\"\n [attr.tabindex]=\"disabled ? '-1' : '0'\"\n [attr.aria-label]=\"linkText\"\n [attr.title]=\"linkText\"\n [class.fd-object-attribute--link]=\"islink\"\n role=\"link\"\n [attr.aria-disabled]=\"disabled\"\n (keydown.enter)=\"onObjectAttributeClick($event)\"\n >\n {{ linkText }}\n </span>\n</ng-container>\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-object-attribute{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);display:block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-object-attribute:after,.fd-object-attribute:before{box-sizing:inherit;font-size:inherit}.fd-object-attribute--link{color:var(--sapLinkColor);cursor:pointer;text-decoration:none}.fd-object-attribute--link:visited{color:var(--sapLink_Visited_Color)}.fd-object-attribute--link.is-hover,.fd-object-attribute--link:hover{color:var(--sapLink_Hover_Color);text-decoration:underline}.fd-object-attribute--link.is-focus,.fd-object-attribute--link:focus{outline-color:var(--sapContent_FocusColor);outline-offset:-.0625rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth);z-index:5}.fd-object-attribute--link.is-disabled,.fd-object-attribute--link:disabled,.fd-object-attribute--link[aria-disabled=true]{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}\n"] }]
34
34
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.Renderer2 }]; }, propDecorators: { label: [{
@@ -5,10 +5,10 @@ import { ObjectAttributeComponent } from './object-attribute.component';
5
5
  import * as i0 from "@angular/core";
6
6
  export class PlatformObjectAttributeModule {
7
7
  }
8
- PlatformObjectAttributeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PlatformObjectAttributeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- PlatformObjectAttributeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: PlatformObjectAttributeModule, declarations: [ObjectAttributeComponent], imports: [CommonModule, RouterModule], exports: [ObjectAttributeComponent] });
10
- PlatformObjectAttributeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PlatformObjectAttributeModule, imports: [CommonModule, RouterModule] });
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PlatformObjectAttributeModule, decorators: [{
8
+ PlatformObjectAttributeModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PlatformObjectAttributeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ PlatformObjectAttributeModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: PlatformObjectAttributeModule, declarations: [ObjectAttributeComponent], imports: [CommonModule, RouterModule], exports: [ObjectAttributeComponent] });
10
+ PlatformObjectAttributeModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PlatformObjectAttributeModule, imports: [CommonModule, RouterModule] });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PlatformObjectAttributeModule, decorators: [{
12
12
  type: NgModule,
13
13
  args: [{
14
14
  imports: [CommonModule, RouterModule],
@@ -4,9 +4,9 @@ import * as i1 from "@angular/common";
4
4
  import * as i2 from "@fundamental-ngx/core/object-marker";
5
5
  export class PlatformObjectMarkerComponent {
6
6
  }
7
- PlatformObjectMarkerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PlatformObjectMarkerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
8
- PlatformObjectMarkerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: PlatformObjectMarkerComponent, selector: "fdp-object-marker", inputs: { glyph: "glyph", clickable: "clickable", label: "label", link: "link", ariaLabel: "ariaLabel", ariaHidden: "ariaHidden", title: "title" }, ngImport: i0, template: "<span\n fd-object-marker\n [glyph]=\"glyph\"\n *ngIf=\"!clickable\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-hidden]=\"ariaHidden\"\n [attr.title]=\"title\"\n [label]=\"label\"\n>\n <ng-content></ng-content>\n</span>\n<a\n *ngIf=\"clickable\"\n [attr.href]=\"link\"\n fd-object-marker\n [glyph]=\"glyph\"\n [clickable]=\"clickable\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-hidden]=\"ariaHidden\"\n [attr.title]=\"title\"\n [label]=\"label\"\n>\n <ng-content></ng-content>\n</a>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ObjectMarkerComponent, selector: "[fd-object-marker]", inputs: ["class", "glyph", "clickable", "label"] }] });
9
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PlatformObjectMarkerComponent, decorators: [{
7
+ PlatformObjectMarkerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PlatformObjectMarkerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
8
+ PlatformObjectMarkerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: PlatformObjectMarkerComponent, selector: "fdp-object-marker", inputs: { glyph: "glyph", clickable: "clickable", label: "label", link: "link", ariaLabel: "ariaLabel", ariaHidden: "ariaHidden", title: "title" }, ngImport: i0, template: "<span\n fd-object-marker\n [glyph]=\"glyph\"\n *ngIf=\"!clickable\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-hidden]=\"ariaHidden\"\n [attr.title]=\"title\"\n [label]=\"label\"\n>\n <ng-content></ng-content>\n</span>\n<a\n *ngIf=\"clickable\"\n [attr.href]=\"link\"\n fd-object-marker\n [glyph]=\"glyph\"\n [clickable]=\"clickable\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-hidden]=\"ariaHidden\"\n [attr.title]=\"title\"\n [label]=\"label\"\n>\n <ng-content></ng-content>\n</a>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ObjectMarkerComponent, selector: "[fd-object-marker]", inputs: ["class", "glyph", "clickable", "label"] }] });
9
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PlatformObjectMarkerComponent, decorators: [{
10
10
  type: Component,
11
11
  args: [{ selector: 'fdp-object-marker', template: "<span\n fd-object-marker\n [glyph]=\"glyph\"\n *ngIf=\"!clickable\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-hidden]=\"ariaHidden\"\n [attr.title]=\"title\"\n [label]=\"label\"\n>\n <ng-content></ng-content>\n</span>\n<a\n *ngIf=\"clickable\"\n [attr.href]=\"link\"\n fd-object-marker\n [glyph]=\"glyph\"\n [clickable]=\"clickable\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-hidden]=\"ariaHidden\"\n [attr.title]=\"title\"\n [label]=\"label\"\n>\n <ng-content></ng-content>\n</a>\n" }]
12
12
  }], propDecorators: { glyph: [{
@@ -5,10 +5,10 @@ import { PlatformObjectMarkerComponent } from './object-marker.component';
5
5
  import * as i0 from "@angular/core";
6
6
  export class PlatformObjectMarkerModule {
7
7
  }
8
- PlatformObjectMarkerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PlatformObjectMarkerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- PlatformObjectMarkerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: PlatformObjectMarkerModule, declarations: [PlatformObjectMarkerComponent], imports: [CommonModule, ObjectMarkerModule], exports: [PlatformObjectMarkerComponent] });
10
- PlatformObjectMarkerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PlatformObjectMarkerModule, imports: [CommonModule, ObjectMarkerModule] });
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PlatformObjectMarkerModule, decorators: [{
8
+ PlatformObjectMarkerModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PlatformObjectMarkerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ PlatformObjectMarkerModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: PlatformObjectMarkerModule, declarations: [PlatformObjectMarkerComponent], imports: [CommonModule, ObjectMarkerModule], exports: [PlatformObjectMarkerComponent] });
10
+ PlatformObjectMarkerModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PlatformObjectMarkerModule, imports: [CommonModule, ObjectMarkerModule] });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PlatformObjectMarkerModule, decorators: [{
12
12
  type: NgModule,
13
13
  args: [{
14
14
  declarations: [PlatformObjectMarkerComponent],
@@ -24,9 +24,9 @@ export class ObjectStatusComponent {
24
24
  }
25
25
  }
26
26
  }
27
- ObjectStatusComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: ObjectStatusComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
28
- ObjectStatusComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: ObjectStatusComponent, selector: "fdp-object-status", inputs: { status: "status", glyph: "glyph", indicationColor: "indicationColor", clickable: "clickable", inverted: "inverted", large: "large", label: "label", ariaLabel: "ariaLabel", title: "title" }, outputs: { objectStatusClick: "objectStatusClick" }, host: { listeners: { "keydown": "_onKeydown($event)" } }, ngImport: i0, template: "<span\n fd-object-status\n [attr.role]=\"clickable ? 'button' : null\"\n [status]=\"status\"\n [glyph]=\"glyph\"\n [indicationColor]=\"indicationColor\"\n [clickable]=\"clickable\"\n [inverted]=\"inverted\"\n [large]=\"large\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.title]=\"title ? title : label\"\n (click)=\"onObjectStatusClick($event)\"\n [label]=\"label\"\n>\n <ng-content></ng-content>\n</span>\n", dependencies: [{ kind: "component", type: i1.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: ObjectStatusComponent, decorators: [{
27
+ ObjectStatusComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ObjectStatusComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
28
+ ObjectStatusComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: ObjectStatusComponent, selector: "fdp-object-status", inputs: { status: "status", glyph: "glyph", indicationColor: "indicationColor", clickable: "clickable", inverted: "inverted", large: "large", label: "label", ariaLabel: "ariaLabel", title: "title" }, outputs: { objectStatusClick: "objectStatusClick" }, host: { listeners: { "keydown": "_onKeydown($event)" } }, ngImport: i0, template: "<span\n fd-object-status\n [attr.role]=\"clickable ? 'button' : null\"\n [status]=\"status\"\n [glyph]=\"glyph\"\n [indicationColor]=\"indicationColor\"\n [clickable]=\"clickable\"\n [inverted]=\"inverted\"\n [large]=\"large\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.title]=\"title ? title : label\"\n (click)=\"onObjectStatusClick($event)\"\n [label]=\"label\"\n>\n <ng-content></ng-content>\n</span>\n", dependencies: [{ kind: "component", type: i1.ObjectStatusComponent, selector: "[fd-object-status]", inputs: ["class", "status", "glyph", "label", "glyphAriaLabel", "indicationColor", "clickable", "inverted", "large"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: ObjectStatusComponent, decorators: [{
30
30
  type: Component,
31
31
  args: [{ selector: 'fdp-object-status', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<span\n fd-object-status\n [attr.role]=\"clickable ? 'button' : null\"\n [status]=\"status\"\n [glyph]=\"glyph\"\n [indicationColor]=\"indicationColor\"\n [clickable]=\"clickable\"\n [inverted]=\"inverted\"\n [large]=\"large\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.title]=\"title ? title : label\"\n (click)=\"onObjectStatusClick($event)\"\n [label]=\"label\"\n>\n <ng-content></ng-content>\n</span>\n" }]
32
32
  }], propDecorators: { status: [{
@@ -5,10 +5,10 @@ import { ObjectStatusComponent } from './object-status.component';
5
5
  import * as i0 from "@angular/core";
6
6
  export class PlatformObjectStatusModule {
7
7
  }
8
- PlatformObjectStatusModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PlatformObjectStatusModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
- PlatformObjectStatusModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: PlatformObjectStatusModule, declarations: [ObjectStatusComponent], imports: [CommonModule, ObjectStatusModule], exports: [ObjectStatusComponent] });
10
- PlatformObjectStatusModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PlatformObjectStatusModule, imports: [CommonModule, ObjectStatusModule] });
11
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PlatformObjectStatusModule, decorators: [{
8
+ PlatformObjectStatusModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PlatformObjectStatusModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ PlatformObjectStatusModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: PlatformObjectStatusModule, declarations: [ObjectStatusComponent], imports: [CommonModule, ObjectStatusModule], exports: [ObjectStatusComponent] });
10
+ PlatformObjectStatusModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PlatformObjectStatusModule, imports: [CommonModule, ObjectStatusModule] });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PlatformObjectStatusModule, decorators: [{
12
12
  type: NgModule,
13
13
  args: [{
14
14
  declarations: [ObjectStatusComponent],
@@ -30,9 +30,9 @@ export class PlatformFooterComponent {
30
30
  }
31
31
  }
32
32
  }
33
- PlatformFooterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PlatformFooterComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
34
- PlatformFooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.8", type: PlatformFooterComponent, selector: "fdp-page-footer", inputs: { logo: "logo", content: "content" }, host: { listeners: { "window:resize": "onResize($event)" } }, ngImport: i0, template: "<div\n class=\"fd-page-footer\"\n [class.fd-page-footer--xl]=\"size === 'xl'\"\n [class.fd-page-footer--lg]=\"size === 'lg'\"\n [class.fd-page-footer--md]=\"size === 'md'\"\n [class.fd-page-footer--sm]=\"size === 'sm'\"\n>\n <div class=\"fd-page-footer__logo\">\n <ng-content *ngTemplateOutlet=\"logo\"></ng-content>\n </div>\n <div class=\"fd-page-footer__container\">\n <ng-content *ngTemplateOutlet=\"content\"></ng-content>\n </div>\n</div>\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-page-footer{-webkit-box-sizing:border-box;background:var(--sapBaseColor);border:0;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;padding:1.5rem 0 2rem;position:relative}.fd-page-footer:after,.fd-page-footer:before{box-sizing:inherit;font-size:inherit}.fd-page-footer__logo{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:1.5rem;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0;width:3rem}.fd-page-footer__logo:after,.fd-page-footer__logo:before{box-sizing:inherit;font-size:inherit}.fd-page-footer__row{-webkit-box-sizing:border-box;border:0;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;padding:0;width:70%;word-break:break-all}.fd-page-footer__row:after,.fd-page-footer__row:before{box-sizing:inherit;font-size:inherit}.fd-page-footer__row-item{margin-right:1.5rem}.fd-page-footer__row-item[dir=rtl],[dir=rtl] .fd-page-footer__row-item{margin-left:1.5rem;margin-right:0}.fd-page-footer__row-image{display:block}.fd-page-footer__row:not(:first-child){padding-top:.25rem}.fd-page-footer__text{-webkit-box-sizing:border-box;align-self:flex-end;border:0;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;overflow:hidden;padding:0;position:absolute;text-align:right;text-overflow:ellipsis;white-space:nowrap;width:30%}.fd-page-footer__text:after,.fd-page-footer__text:before{box-sizing:inherit;font-size:inherit}.fd-page-footer__text[dir=rtl],[dir=rtl] .fd-page-footer__text{text-align:left}.fd-page-footer--xl{padding-left:3rem;padding-right:3rem}.fd-page-footer--xl .fd-page-footer__container{display:flex;flex-direction:column;padding-top:.75rem}.fd-page-footer--lg{padding-left:2rem;padding-right:2rem}.fd-page-footer--lg .fd-page-footer__container{display:flex;flex-direction:column;padding-top:.75rem}.fd-page-footer--md{padding-left:1rem;padding-right:1rem}.fd-page-footer--md .fd-page-footer__container{display:flex;flex-direction:column;padding-top:.75rem}.fd-page-footer--sm{padding-left:.5rem;padding-right:.5rem}.fd-page-footer--sm .fd-page-footer__container{display:flex;flex-direction:column;padding-top:.75rem}@media (max-width: 768px){.fd-page-footer .fd-page-footer__row{margin-right:0;width:100%}.fd-page-footer .fd-page-footer__row:not(:first-child){padding-top:0}.fd-page-footer .fd-page-footer__row-item{padding-top:.25rem}.fd-page-footer .fd-page-footer__text{padding-top:.75rem;text-align:left;width:90%}.fd-page-footer .fd-page-footer__container{display:inline-block;flex-direction:row;width:100%}}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], encapsulation: i0.ViewEncapsulation.None });
35
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PlatformFooterComponent, decorators: [{
33
+ PlatformFooterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PlatformFooterComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
34
+ PlatformFooterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: PlatformFooterComponent, selector: "fdp-page-footer", inputs: { logo: "logo", content: "content" }, host: { listeners: { "window:resize": "onResize($event)" } }, ngImport: i0, template: "<div\n class=\"fd-page-footer\"\n [class.fd-page-footer--xl]=\"size === 'xl'\"\n [class.fd-page-footer--lg]=\"size === 'lg'\"\n [class.fd-page-footer--md]=\"size === 'md'\"\n [class.fd-page-footer--sm]=\"size === 'sm'\"\n>\n <div class=\"fd-page-footer__logo\">\n <ng-content *ngTemplateOutlet=\"logo\"></ng-content>\n </div>\n <div class=\"fd-page-footer__container\">\n <ng-content *ngTemplateOutlet=\"content\"></ng-content>\n </div>\n</div>\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-page-footer{-webkit-box-sizing:border-box;background:var(--sapBaseColor);border:0;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;padding:1.5rem 0 2rem;position:relative}.fd-page-footer:after,.fd-page-footer:before{box-sizing:inherit;font-size:inherit}.fd-page-footer__logo{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:1.5rem;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0;width:3rem}.fd-page-footer__logo:after,.fd-page-footer__logo:before{box-sizing:inherit;font-size:inherit}.fd-page-footer__row{-webkit-box-sizing:border-box;border:0;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;padding:0;width:70%;word-break:break-all}.fd-page-footer__row:after,.fd-page-footer__row:before{box-sizing:inherit;font-size:inherit}.fd-page-footer__row-item{margin-right:1.5rem}.fd-page-footer__row-item[dir=rtl],[dir=rtl] .fd-page-footer__row-item{margin-left:1.5rem;margin-right:0}.fd-page-footer__row-image{display:block}.fd-page-footer__row:not(:first-child){padding-top:.25rem}.fd-page-footer__text{-webkit-box-sizing:border-box;align-self:flex-end;border:0;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;overflow:hidden;padding:0;position:absolute;text-align:right;text-overflow:ellipsis;white-space:nowrap;width:30%}.fd-page-footer__text:after,.fd-page-footer__text:before{box-sizing:inherit;font-size:inherit}.fd-page-footer__text[dir=rtl],[dir=rtl] .fd-page-footer__text{text-align:left}.fd-page-footer--xl{padding-left:3rem;padding-right:3rem}.fd-page-footer--xl .fd-page-footer__container{display:flex;flex-direction:column;padding-top:.75rem}.fd-page-footer--lg{padding-left:2rem;padding-right:2rem}.fd-page-footer--lg .fd-page-footer__container{display:flex;flex-direction:column;padding-top:.75rem}.fd-page-footer--md{padding-left:1rem;padding-right:1rem}.fd-page-footer--md .fd-page-footer__container{display:flex;flex-direction:column;padding-top:.75rem}.fd-page-footer--sm{padding-left:.5rem;padding-right:.5rem}.fd-page-footer--sm .fd-page-footer__container{display:flex;flex-direction:column;padding-top:.75rem}@media (max-width: 768px){.fd-page-footer .fd-page-footer__row{margin-right:0;width:100%}.fd-page-footer .fd-page-footer__row:not(:first-child){padding-top:0}.fd-page-footer .fd-page-footer__row-item{padding-top:.25rem}.fd-page-footer .fd-page-footer__text{padding-top:.75rem;text-align:left;width:90%}.fd-page-footer .fd-page-footer__container{display:inline-block;flex-direction:row;width:100%}}\n"], dependencies: [{ kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], encapsulation: i0.ViewEncapsulation.None });
35
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PlatformFooterComponent, decorators: [{
36
36
  type: Component,
37
37
  args: [{ selector: 'fdp-page-footer', encapsulation: ViewEncapsulation.None, template: "<div\n class=\"fd-page-footer\"\n [class.fd-page-footer--xl]=\"size === 'xl'\"\n [class.fd-page-footer--lg]=\"size === 'lg'\"\n [class.fd-page-footer--md]=\"size === 'md'\"\n [class.fd-page-footer--sm]=\"size === 'sm'\"\n>\n <div class=\"fd-page-footer__logo\">\n <ng-content *ngTemplateOutlet=\"logo\"></ng-content>\n </div>\n <div class=\"fd-page-footer__container\">\n <ng-content *ngTemplateOutlet=\"content\"></ng-content>\n </div>\n</div>\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-page-footer{-webkit-box-sizing:border-box;background:var(--sapBaseColor);border:0;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;padding:1.5rem 0 2rem;position:relative}.fd-page-footer:after,.fd-page-footer:before{box-sizing:inherit;font-size:inherit}.fd-page-footer__logo{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;height:1.5rem;line-height:var(--sapContent_LineHeight);margin:0;overflow:hidden;padding:0;width:3rem}.fd-page-footer__logo:after,.fd-page-footer__logo:before{box-sizing:inherit;font-size:inherit}.fd-page-footer__row{-webkit-box-sizing:border-box;border:0;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;padding:0;width:70%;word-break:break-all}.fd-page-footer__row:after,.fd-page-footer__row:before{box-sizing:inherit;font-size:inherit}.fd-page-footer__row-item{margin-right:1.5rem}.fd-page-footer__row-item[dir=rtl],[dir=rtl] .fd-page-footer__row-item{margin-left:1.5rem;margin-right:0}.fd-page-footer__row-image{display:block}.fd-page-footer__row:not(:first-child){padding-top:.25rem}.fd-page-footer__text{-webkit-box-sizing:border-box;align-self:flex-end;border:0;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;overflow:hidden;padding:0;position:absolute;text-align:right;text-overflow:ellipsis;white-space:nowrap;width:30%}.fd-page-footer__text:after,.fd-page-footer__text:before{box-sizing:inherit;font-size:inherit}.fd-page-footer__text[dir=rtl],[dir=rtl] .fd-page-footer__text{text-align:left}.fd-page-footer--xl{padding-left:3rem;padding-right:3rem}.fd-page-footer--xl .fd-page-footer__container{display:flex;flex-direction:column;padding-top:.75rem}.fd-page-footer--lg{padding-left:2rem;padding-right:2rem}.fd-page-footer--lg .fd-page-footer__container{display:flex;flex-direction:column;padding-top:.75rem}.fd-page-footer--md{padding-left:1rem;padding-right:1rem}.fd-page-footer--md .fd-page-footer__container{display:flex;flex-direction:column;padding-top:.75rem}.fd-page-footer--sm{padding-left:.5rem;padding-right:.5rem}.fd-page-footer--sm .fd-page-footer__container{display:flex;flex-direction:column;padding-top:.75rem}@media (max-width: 768px){.fd-page-footer .fd-page-footer__row{margin-right:0;width:100%}.fd-page-footer .fd-page-footer__row:not(:first-child){padding-top:0}.fd-page-footer .fd-page-footer__row-item{padding-top:.25rem}.fd-page-footer .fd-page-footer__text{padding-top:.75rem;text-align:left;width:90%}.fd-page-footer .fd-page-footer__container{display:inline-block;flex-direction:row;width:100%}}\n"] }]
38
38
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { logo: [{
@@ -4,10 +4,10 @@ import { PlatformFooterComponent } from './page-footer.component';
4
4
  import * as i0 from "@angular/core";
5
5
  export class PlatformPageFooterModule {
6
6
  }
7
- PlatformPageFooterModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PlatformPageFooterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
- PlatformPageFooterModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.8", ngImport: i0, type: PlatformPageFooterModule, declarations: [PlatformFooterComponent], imports: [CommonModule], exports: [PlatformFooterComponent] });
9
- PlatformPageFooterModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PlatformPageFooterModule, imports: [CommonModule] });
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.8", ngImport: i0, type: PlatformPageFooterModule, decorators: [{
7
+ PlatformPageFooterModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PlatformPageFooterModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
+ PlatformPageFooterModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "15.2.9", ngImport: i0, type: PlatformPageFooterModule, declarations: [PlatformFooterComponent], imports: [CommonModule], exports: [PlatformFooterComponent] });
9
+ PlatformPageFooterModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PlatformPageFooterModule, imports: [CommonModule] });
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: PlatformPageFooterModule, decorators: [{
11
11
  type: NgModule,
12
12
  args: [{
13
13
  declarations: [PlatformFooterComponent],