@fundamental-ngx/core 0.38.0-rc.2 → 0.38.0

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 (275) hide show
  1. package/checkbox/checkbox/checkbox.component.d.ts +3 -1
  2. package/esm2020/action-bar/action-bar.component.mjs +2 -2
  3. package/esm2020/action-sheet/action-sheet.component.mjs +2 -2
  4. package/esm2020/alert/alert.component.mjs +2 -2
  5. package/esm2020/avatar/avatar.component.mjs +2 -2
  6. package/esm2020/avatar-group/avatar-group.component.mjs +2 -2
  7. package/esm2020/bar/bar.component.mjs +2 -2
  8. package/esm2020/breadcrumb/breadcrumb.component.mjs +2 -2
  9. package/esm2020/busy-indicator/busy-indicator.component.mjs +2 -2
  10. package/esm2020/button/button.component.mjs +2 -2
  11. package/esm2020/calendar/calendar.component.mjs +2 -2
  12. package/esm2020/card/card.component.mjs +2 -2
  13. package/esm2020/carousel/carousel.component.mjs +2 -2
  14. package/esm2020/checkbox/checkbox/checkbox.component.mjs +11 -4
  15. package/esm2020/dialog/dialog.component.mjs +2 -2
  16. package/esm2020/dynamic-page/dynamic-page.component.mjs +2 -2
  17. package/esm2020/dynamic-side-content/dynamic-side-content.component.mjs +2 -2
  18. package/esm2020/facets/facet/facet.component.mjs +2 -2
  19. package/esm2020/feed-input/feed-input.component.mjs +2 -2
  20. package/esm2020/feed-list-item/components/list/feed-list.component.mjs +2 -2
  21. package/esm2020/file-uploader/file-uploader.component.mjs +2 -2
  22. package/esm2020/fixed-card-layout/fixed-card-layout.component.mjs +2 -2
  23. package/esm2020/flexible-column-layout/flexible-column-layout.component.mjs +2 -2
  24. package/esm2020/form/fieldset/fieldset.component.mjs +2 -2
  25. package/esm2020/form/form-control/form-control.component.mjs +2 -2
  26. package/esm2020/form/form-group/form-group.component.mjs +2 -2
  27. package/esm2020/form/form-header/form-header.component.mjs +2 -2
  28. package/esm2020/form/form-item/form-item.component.mjs +2 -2
  29. package/esm2020/form/form-label/form-label.component.mjs +2 -2
  30. package/esm2020/form/form-message/form-message.component.mjs +2 -2
  31. package/esm2020/grid-list/components/grid-list/grid-list.component.mjs +2 -2
  32. package/esm2020/icon/icon.component.mjs +2 -2
  33. package/esm2020/illustrated-message/illustrated-message.component.mjs +2 -2
  34. package/esm2020/info-label/info-label.component.mjs +2 -2
  35. package/esm2020/input-group/input-group.component.mjs +2 -2
  36. package/esm2020/layout-grid/layout-grid.component.mjs +2 -2
  37. package/esm2020/layout-panel/layout-panel.component.mjs +2 -2
  38. package/esm2020/link/link.component.mjs +2 -2
  39. package/esm2020/list/list-navigation-item/list-navigation-item.component.mjs +2 -2
  40. package/esm2020/list/list.component.mjs +2 -2
  41. package/esm2020/menu/menu.component.mjs +2 -2
  42. package/esm2020/message-box/message-box.component.mjs +2 -2
  43. package/esm2020/message-page/message-page.component.mjs +2 -2
  44. package/esm2020/message-strip/message-strip.component.mjs +2 -2
  45. package/esm2020/message-toast/message-toast.component.mjs +2 -2
  46. package/esm2020/multi-input/multi-input.component.mjs +1 -1
  47. package/esm2020/notification/notification/notification.component.mjs +2 -2
  48. package/esm2020/object-identifier/object-identifier.component.mjs +2 -2
  49. package/esm2020/object-marker/object-marker.component.mjs +2 -2
  50. package/esm2020/object-number/object-number.component.mjs +2 -2
  51. package/esm2020/object-status/object-status.component.mjs +2 -2
  52. package/esm2020/pagination/pagination.component.mjs +2 -2
  53. package/esm2020/panel/panel.component.mjs +2 -2
  54. package/esm2020/popover/base/base-popover.class.mjs +1 -1
  55. package/esm2020/popover/popover-body/popover-body.component.mjs +2 -2
  56. package/esm2020/popover/popover-service/popover.service.mjs +5 -2
  57. package/esm2020/product-switch/product-switch-body/product-switch-body.component.mjs +2 -2
  58. package/esm2020/progress-indicator/progress-indicator.component.mjs +2 -2
  59. package/esm2020/quick-view/quick-view/quick-view.component.mjs +2 -2
  60. package/esm2020/radio/radio-button/radio-button.component.mjs +2 -2
  61. package/esm2020/rating-indicator/components/rating-indicator.component.mjs +2 -2
  62. package/esm2020/resizable-card-layout/resizable-card-layout/resizable-card-item/resizable-card-item.component.mjs +2 -2
  63. package/esm2020/resizable-card-layout/resizable-card-layout/resizable-card-layout.component.mjs +2 -2
  64. package/esm2020/scrollbar/scrollbar.component.mjs +2 -2
  65. package/esm2020/segmented-button/segmented-button.component.mjs +2 -2
  66. package/esm2020/select/select.component.mjs +2 -2
  67. package/esm2020/shellbar/shellbar.component.mjs +2 -2
  68. package/esm2020/side-navigation/side-navigation.component.mjs +2 -2
  69. package/esm2020/slider/slider.component.mjs +2 -2
  70. package/esm2020/split-button/split-button.component.mjs +2 -2
  71. package/esm2020/splitter/splitter.component.mjs +2 -2
  72. package/esm2020/status-indicator/status-indicator.component.mjs +2 -2
  73. package/esm2020/step-input/step-input.component.mjs +2 -2
  74. package/esm2020/switch/switch.component.mjs +2 -2
  75. package/esm2020/table/table-wrapper.component.mjs +2 -2
  76. package/esm2020/table/table.component.mjs +3 -4
  77. package/esm2020/tabs/tab-list.component.mjs +2 -2
  78. package/esm2020/tabs/tab-nav/tab-nav.component.mjs +2 -2
  79. package/esm2020/text/text.component.mjs +2 -2
  80. package/esm2020/tile/tile.component.mjs +2 -2
  81. package/esm2020/time/time.component.mjs +2 -2
  82. package/esm2020/title/title.component.mjs +2 -2
  83. package/esm2020/token/token.component.mjs +2 -2
  84. package/esm2020/token/tokenizer.component.mjs +2 -2
  85. package/esm2020/toolbar/toolbar.component.mjs +2 -2
  86. package/esm2020/tree/tree.component.mjs +2 -2
  87. package/esm2020/upload-collection/upload-collection.component.mjs +2 -2
  88. package/esm2020/utils/pipes/filter-strings.pipe.mjs +30 -0
  89. package/esm2020/utils/pipes/pipe.module.mjs +10 -5
  90. package/esm2020/utils/public_api.mjs +2 -1
  91. package/esm2020/vertical-navigation/vertical-navigation-main-navigation.component.mjs +2 -2
  92. package/esm2020/vertical-navigation/vertical-navigation.component.mjs +2 -2
  93. package/esm2020/wizard/wizard.component.mjs +2 -2
  94. package/fesm2015/fundamental-ngx-core-action-bar.mjs +2 -2
  95. package/fesm2015/fundamental-ngx-core-action-sheet.mjs +2 -2
  96. package/fesm2015/fundamental-ngx-core-alert.mjs +2 -2
  97. package/fesm2015/fundamental-ngx-core-avatar-group.mjs +2 -2
  98. package/fesm2015/fundamental-ngx-core-avatar.mjs +2 -2
  99. package/fesm2015/fundamental-ngx-core-bar.mjs +2 -2
  100. package/fesm2015/fundamental-ngx-core-breadcrumb.mjs +2 -2
  101. package/fesm2015/fundamental-ngx-core-busy-indicator.mjs +2 -2
  102. package/fesm2015/fundamental-ngx-core-button.mjs +2 -2
  103. package/fesm2015/fundamental-ngx-core-calendar.mjs +2 -2
  104. package/fesm2015/fundamental-ngx-core-card.mjs +2 -2
  105. package/fesm2015/fundamental-ngx-core-carousel.mjs +2 -2
  106. package/fesm2015/fundamental-ngx-core-carousel.mjs.map +1 -1
  107. package/fesm2015/fundamental-ngx-core-checkbox.mjs +10 -3
  108. package/fesm2015/fundamental-ngx-core-checkbox.mjs.map +1 -1
  109. package/fesm2015/fundamental-ngx-core-dialog.mjs +2 -2
  110. package/fesm2015/fundamental-ngx-core-dynamic-page.mjs +2 -2
  111. package/fesm2015/fundamental-ngx-core-dynamic-side-content.mjs +2 -2
  112. package/fesm2015/fundamental-ngx-core-facets.mjs +2 -2
  113. package/fesm2015/fundamental-ngx-core-feed-input.mjs +2 -2
  114. package/fesm2015/fundamental-ngx-core-feed-list-item.mjs +2 -2
  115. package/fesm2015/fundamental-ngx-core-file-uploader.mjs +2 -2
  116. package/fesm2015/fundamental-ngx-core-fixed-card-layout.mjs +2 -2
  117. package/fesm2015/fundamental-ngx-core-flexible-column-layout.mjs +2 -2
  118. package/fesm2015/fundamental-ngx-core-form.mjs +14 -14
  119. package/fesm2015/fundamental-ngx-core-grid-list.mjs +2 -2
  120. package/fesm2015/fundamental-ngx-core-icon.mjs +2 -2
  121. package/fesm2015/fundamental-ngx-core-illustrated-message.mjs +2 -2
  122. package/fesm2015/fundamental-ngx-core-info-label.mjs +2 -2
  123. package/fesm2015/fundamental-ngx-core-input-group.mjs +2 -2
  124. package/fesm2015/fundamental-ngx-core-layout-grid.mjs +2 -2
  125. package/fesm2015/fundamental-ngx-core-layout-panel.mjs +2 -2
  126. package/fesm2015/fundamental-ngx-core-link.mjs +2 -2
  127. package/fesm2015/fundamental-ngx-core-list.mjs +4 -4
  128. package/fesm2015/fundamental-ngx-core-list.mjs.map +1 -1
  129. package/fesm2015/fundamental-ngx-core-menu.mjs +2 -2
  130. package/fesm2015/fundamental-ngx-core-message-box.mjs +2 -2
  131. package/fesm2015/fundamental-ngx-core-message-page.mjs +2 -2
  132. package/fesm2015/fundamental-ngx-core-message-strip.mjs +2 -2
  133. package/fesm2015/fundamental-ngx-core-message-toast.mjs +2 -2
  134. package/fesm2015/fundamental-ngx-core-multi-input.mjs +1 -1
  135. package/fesm2015/fundamental-ngx-core-multi-input.mjs.map +1 -1
  136. package/fesm2015/fundamental-ngx-core-notification.mjs +2 -2
  137. package/fesm2015/fundamental-ngx-core-object-identifier.mjs +2 -2
  138. package/fesm2015/fundamental-ngx-core-object-marker.mjs +2 -2
  139. package/fesm2015/fundamental-ngx-core-object-number.mjs +2 -2
  140. package/fesm2015/fundamental-ngx-core-object-status.mjs +2 -2
  141. package/fesm2015/fundamental-ngx-core-object-status.mjs.map +1 -1
  142. package/fesm2015/fundamental-ngx-core-pagination.mjs +2 -2
  143. package/fesm2015/fundamental-ngx-core-panel.mjs +2 -2
  144. package/fesm2015/fundamental-ngx-core-popover.mjs +6 -3
  145. package/fesm2015/fundamental-ngx-core-popover.mjs.map +1 -1
  146. package/fesm2015/fundamental-ngx-core-product-switch.mjs +2 -2
  147. package/fesm2015/fundamental-ngx-core-progress-indicator.mjs +2 -2
  148. package/fesm2015/fundamental-ngx-core-quick-view.mjs +2 -2
  149. package/fesm2015/fundamental-ngx-core-radio.mjs +2 -2
  150. package/fesm2015/fundamental-ngx-core-rating-indicator.mjs +2 -2
  151. package/fesm2015/fundamental-ngx-core-resizable-card-layout.mjs +4 -4
  152. package/fesm2015/fundamental-ngx-core-scrollbar.mjs +2 -2
  153. package/fesm2015/fundamental-ngx-core-segmented-button.mjs +2 -2
  154. package/fesm2015/fundamental-ngx-core-select.mjs +2 -2
  155. package/fesm2015/fundamental-ngx-core-select.mjs.map +1 -1
  156. package/fesm2015/fundamental-ngx-core-shellbar.mjs +2 -2
  157. package/fesm2015/fundamental-ngx-core-shellbar.mjs.map +1 -1
  158. package/fesm2015/fundamental-ngx-core-side-navigation.mjs +2 -2
  159. package/fesm2015/fundamental-ngx-core-slider.mjs +2 -2
  160. package/fesm2015/fundamental-ngx-core-split-button.mjs +2 -2
  161. package/fesm2015/fundamental-ngx-core-splitter.mjs +2 -2
  162. package/fesm2015/fundamental-ngx-core-status-indicator.mjs +2 -2
  163. package/fesm2015/fundamental-ngx-core-step-input.mjs +2 -2
  164. package/fesm2015/fundamental-ngx-core-switch.mjs +2 -2
  165. package/fesm2015/fundamental-ngx-core-table.mjs +4 -5
  166. package/fesm2015/fundamental-ngx-core-table.mjs.map +1 -1
  167. package/fesm2015/fundamental-ngx-core-tabs.mjs +4 -4
  168. package/fesm2015/fundamental-ngx-core-text.mjs +2 -2
  169. package/fesm2015/fundamental-ngx-core-tile.mjs +2 -2
  170. package/fesm2015/fundamental-ngx-core-time.mjs +2 -2
  171. package/fesm2015/fundamental-ngx-core-title.mjs +2 -2
  172. package/fesm2015/fundamental-ngx-core-token.mjs +4 -4
  173. package/fesm2015/fundamental-ngx-core-toolbar.mjs +2 -2
  174. package/fesm2015/fundamental-ngx-core-tree.mjs +2 -2
  175. package/fesm2015/fundamental-ngx-core-upload-collection.mjs +2 -2
  176. package/fesm2015/fundamental-ngx-core-upload-collection.mjs.map +1 -1
  177. package/fesm2015/fundamental-ngx-core-utils.mjs +37 -5
  178. package/fesm2015/fundamental-ngx-core-utils.mjs.map +1 -1
  179. package/fesm2015/fundamental-ngx-core-vertical-navigation.mjs +4 -4
  180. package/fesm2015/fundamental-ngx-core-wizard.mjs +2 -2
  181. package/fesm2020/fundamental-ngx-core-action-bar.mjs +2 -2
  182. package/fesm2020/fundamental-ngx-core-action-sheet.mjs +2 -2
  183. package/fesm2020/fundamental-ngx-core-alert.mjs +2 -2
  184. package/fesm2020/fundamental-ngx-core-avatar-group.mjs +2 -2
  185. package/fesm2020/fundamental-ngx-core-avatar.mjs +2 -2
  186. package/fesm2020/fundamental-ngx-core-bar.mjs +2 -2
  187. package/fesm2020/fundamental-ngx-core-breadcrumb.mjs +2 -2
  188. package/fesm2020/fundamental-ngx-core-busy-indicator.mjs +2 -2
  189. package/fesm2020/fundamental-ngx-core-button.mjs +2 -2
  190. package/fesm2020/fundamental-ngx-core-calendar.mjs +2 -2
  191. package/fesm2020/fundamental-ngx-core-card.mjs +2 -2
  192. package/fesm2020/fundamental-ngx-core-carousel.mjs +2 -2
  193. package/fesm2020/fundamental-ngx-core-carousel.mjs.map +1 -1
  194. package/fesm2020/fundamental-ngx-core-checkbox.mjs +10 -3
  195. package/fesm2020/fundamental-ngx-core-checkbox.mjs.map +1 -1
  196. package/fesm2020/fundamental-ngx-core-dialog.mjs +2 -2
  197. package/fesm2020/fundamental-ngx-core-dynamic-page.mjs +2 -2
  198. package/fesm2020/fundamental-ngx-core-dynamic-side-content.mjs +2 -2
  199. package/fesm2020/fundamental-ngx-core-facets.mjs +2 -2
  200. package/fesm2020/fundamental-ngx-core-feed-input.mjs +2 -2
  201. package/fesm2020/fundamental-ngx-core-feed-list-item.mjs +2 -2
  202. package/fesm2020/fundamental-ngx-core-file-uploader.mjs +2 -2
  203. package/fesm2020/fundamental-ngx-core-fixed-card-layout.mjs +2 -2
  204. package/fesm2020/fundamental-ngx-core-flexible-column-layout.mjs +2 -2
  205. package/fesm2020/fundamental-ngx-core-form.mjs +14 -14
  206. package/fesm2020/fundamental-ngx-core-grid-list.mjs +2 -2
  207. package/fesm2020/fundamental-ngx-core-icon.mjs +2 -2
  208. package/fesm2020/fundamental-ngx-core-illustrated-message.mjs +2 -2
  209. package/fesm2020/fundamental-ngx-core-info-label.mjs +2 -2
  210. package/fesm2020/fundamental-ngx-core-input-group.mjs +2 -2
  211. package/fesm2020/fundamental-ngx-core-layout-grid.mjs +2 -2
  212. package/fesm2020/fundamental-ngx-core-layout-panel.mjs +2 -2
  213. package/fesm2020/fundamental-ngx-core-link.mjs +2 -2
  214. package/fesm2020/fundamental-ngx-core-list.mjs +4 -4
  215. package/fesm2020/fundamental-ngx-core-list.mjs.map +1 -1
  216. package/fesm2020/fundamental-ngx-core-menu.mjs +2 -2
  217. package/fesm2020/fundamental-ngx-core-message-box.mjs +2 -2
  218. package/fesm2020/fundamental-ngx-core-message-page.mjs +2 -2
  219. package/fesm2020/fundamental-ngx-core-message-strip.mjs +2 -2
  220. package/fesm2020/fundamental-ngx-core-message-toast.mjs +2 -2
  221. package/fesm2020/fundamental-ngx-core-multi-input.mjs +1 -1
  222. package/fesm2020/fundamental-ngx-core-multi-input.mjs.map +1 -1
  223. package/fesm2020/fundamental-ngx-core-notification.mjs +2 -2
  224. package/fesm2020/fundamental-ngx-core-object-identifier.mjs +2 -2
  225. package/fesm2020/fundamental-ngx-core-object-marker.mjs +2 -2
  226. package/fesm2020/fundamental-ngx-core-object-number.mjs +2 -2
  227. package/fesm2020/fundamental-ngx-core-object-status.mjs +2 -2
  228. package/fesm2020/fundamental-ngx-core-object-status.mjs.map +1 -1
  229. package/fesm2020/fundamental-ngx-core-pagination.mjs +2 -2
  230. package/fesm2020/fundamental-ngx-core-panel.mjs +2 -2
  231. package/fesm2020/fundamental-ngx-core-popover.mjs +6 -3
  232. package/fesm2020/fundamental-ngx-core-popover.mjs.map +1 -1
  233. package/fesm2020/fundamental-ngx-core-product-switch.mjs +2 -2
  234. package/fesm2020/fundamental-ngx-core-progress-indicator.mjs +2 -2
  235. package/fesm2020/fundamental-ngx-core-quick-view.mjs +2 -2
  236. package/fesm2020/fundamental-ngx-core-radio.mjs +2 -2
  237. package/fesm2020/fundamental-ngx-core-rating-indicator.mjs +2 -2
  238. package/fesm2020/fundamental-ngx-core-resizable-card-layout.mjs +4 -4
  239. package/fesm2020/fundamental-ngx-core-scrollbar.mjs +2 -2
  240. package/fesm2020/fundamental-ngx-core-segmented-button.mjs +2 -2
  241. package/fesm2020/fundamental-ngx-core-select.mjs +2 -2
  242. package/fesm2020/fundamental-ngx-core-select.mjs.map +1 -1
  243. package/fesm2020/fundamental-ngx-core-shellbar.mjs +2 -2
  244. package/fesm2020/fundamental-ngx-core-shellbar.mjs.map +1 -1
  245. package/fesm2020/fundamental-ngx-core-side-navigation.mjs +2 -2
  246. package/fesm2020/fundamental-ngx-core-slider.mjs +2 -2
  247. package/fesm2020/fundamental-ngx-core-split-button.mjs +2 -2
  248. package/fesm2020/fundamental-ngx-core-splitter.mjs +2 -2
  249. package/fesm2020/fundamental-ngx-core-status-indicator.mjs +2 -2
  250. package/fesm2020/fundamental-ngx-core-step-input.mjs +2 -2
  251. package/fesm2020/fundamental-ngx-core-switch.mjs +2 -2
  252. package/fesm2020/fundamental-ngx-core-table.mjs +4 -5
  253. package/fesm2020/fundamental-ngx-core-table.mjs.map +1 -1
  254. package/fesm2020/fundamental-ngx-core-tabs.mjs +4 -4
  255. package/fesm2020/fundamental-ngx-core-text.mjs +2 -2
  256. package/fesm2020/fundamental-ngx-core-tile.mjs +2 -2
  257. package/fesm2020/fundamental-ngx-core-time.mjs +2 -2
  258. package/fesm2020/fundamental-ngx-core-title.mjs +2 -2
  259. package/fesm2020/fundamental-ngx-core-token.mjs +4 -4
  260. package/fesm2020/fundamental-ngx-core-toolbar.mjs +2 -2
  261. package/fesm2020/fundamental-ngx-core-tree.mjs +2 -2
  262. package/fesm2020/fundamental-ngx-core-upload-collection.mjs +2 -2
  263. package/fesm2020/fundamental-ngx-core-upload-collection.mjs.map +1 -1
  264. package/fesm2020/fundamental-ngx-core-utils.mjs +37 -5
  265. package/fesm2020/fundamental-ngx-core-utils.mjs.map +1 -1
  266. package/fesm2020/fundamental-ngx-core-vertical-navigation.mjs +4 -4
  267. package/fesm2020/fundamental-ngx-core-wizard.mjs +2 -2
  268. package/fundamental-ngx-core-v0.38.0.tgz +0 -0
  269. package/package.json +3 -3
  270. package/popover/base/base-popover.class.d.ts +1 -0
  271. package/schematics/add-dependencies/index.js +2 -2
  272. package/utils/pipes/filter-strings.pipe.d.ts +16 -0
  273. package/utils/pipes/pipe.module.d.ts +2 -1
  274. package/utils/public_api.d.ts +1 -0
  275. package/fundamental-ngx-core-v0.38.0-rc.2.tgz +0 -0
@@ -178,10 +178,13 @@ export class PopoverService extends BasePopoverClass {
178
178
  if (this.triggers?.length) {
179
179
  this.triggers.forEach((trigger) => {
180
180
  const triggerName = typeof trigger === 'string' ? trigger : trigger.trigger;
181
- this._eventRef.push(this._renderer.listen(this._triggerElement.nativeElement, triggerName, () => {
181
+ this._eventRef.push(this._renderer.listen(this._triggerElement.nativeElement, triggerName, (event) => {
182
182
  const closeAction = typeof trigger !== 'object' || !!trigger.closeAction;
183
183
  const openAction = typeof trigger !== 'object' || !!trigger.openAction;
184
184
  this.toggle(openAction, closeAction);
185
+ if (typeof trigger === 'object' && trigger.stopPropagation) {
186
+ event.stopImmediatePropagation();
187
+ }
185
188
  }));
186
189
  });
187
190
  }
@@ -346,4 +349,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImpor
346
349
  }] }, { type: i3.PopoverContainerDirective, decorators: [{
347
350
  type: Optional
348
351
  }] }]; } });
349
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvcG9wb3Zlci9wb3BvdmVyLXNlcnZpY2UvcG9wb3Zlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxVQUFVLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQWlDLE1BQU0sZUFBZSxDQUFDO0FBQ3JILE9BQU8sRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEUsT0FBTyxFQUdILE9BQU8sRUFDUCxhQUFhLEVBRWIsYUFBYSxFQUVoQixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFBRSxLQUFLLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXBGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsZUFBZSxFQUFZLE1BQU0sOEJBQThCLENBQUM7QUFFN0YsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDOUUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sa0RBQWtELENBQUM7Ozs7O0FBRTdGLE1BQU0sYUFBYSxHQUFHLFFBQVEsQ0FBQztBQVMvQixNQUFNLE9BQU8sY0FBZSxTQUFRLGdCQUFnQjtJQXFDaEQsY0FBYztJQUNkLFlBQ1ksUUFBaUIsRUFDakIsU0FBb0IsRUFDcEIsY0FBNkIsRUFDN0IsU0FBbUIsRUFDUCxXQUF1QixFQUNkLGlCQUE0QztRQUV6RSxLQUFLLEVBQUUsQ0FBQztRQVBB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Q0FBQyxnQkFBZ0IsQ0FBQztRQUMvQyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDMUIsQ0FBQztJQUVELGNBQWM7SUFDTixnQkFBZ0I7UUFDcEIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUM7SUFDMUQsQ0FBQztJQUVELGNBQWM7SUFDTixlQUFlO1FBQ25CLE9BQU8sSUFBSSxDQUFDLGFBQWEsRUFBRSxXQUFXLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQztJQUNoRSxDQUFDO0lBRUQsY0FBYztJQUNOLGNBQWM7UUFDbEIsSUFBSSxJQUFJLENBQUMsZUFBZSxFQUFFLEVBQUU7WUFDeEIsSUFBSSxDQUFDLGVBQWUsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFDO1NBQzFDO0lBQ0wsQ0FBQztJQUVELGNBQWM7SUFDTiwwQkFBMEIsQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJO1FBQ3RELElBQUksZ0JBQWdCLElBQUksSUFBSSxDQUFDLGdCQUFnQixFQUFFO1lBQzNDLElBQUksQ0FBQyxrQkFBa0IsR0FBZ0IsUUFBUSxDQUFDLGFBQWEsQ0FBQztZQUM5RCxJQUFJLENBQUMsZUFBZSxFQUFFLEVBQUUsMEJBQTBCLEVBQUUsQ0FBQztTQUN4RDtJQUNMLENBQUM7SUFFRCxjQUFjO0lBQ04saUNBQWlDLENBQUMsZ0JBQWdCLEdBQUcsSUFBSTtRQUM3RCxJQUFJLGdCQUFnQixJQUFJLElBQUksQ0FBQyxnQkFBZ0IsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDdEUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssRUFBRSxDQUFDO1NBQ25DO0lBQ0wsQ0FBQzs7MkdBL1pRLGNBQWM7K0dBQWQsY0FBYzsyRkFBZCxjQUFjO2tCQUQxQixVQUFVOzswQkE0Q0YsUUFBUTs7MEJBQ1IsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEVsZW1lbnRSZWYsIEluamVjdGFibGUsIEluamVjdG9yLCBPcHRpb25hbCwgUmVuZGVyZXIyLCBUZW1wbGF0ZVJlZiwgVmlld0NvbnRhaW5lclJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tcG9uZW50UG9ydGFsLCBUZW1wbGF0ZVBvcnRhbCB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9wb3J0YWwnO1xuaW1wb3J0IHtcbiAgICBDb25uZWN0ZWRQb3NpdGlvbixcbiAgICBGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uU3RyYXRlZ3ksXG4gICAgT3ZlcmxheSxcbiAgICBPdmVybGF5Q29uZmlnLFxuICAgIE92ZXJsYXlSZWYsXG4gICAgVmlld3BvcnRSdWxlcixcbiAgICBDb25uZWN0ZWRPdmVybGF5UG9zaXRpb25DaGFuZ2Vcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgbWVyZ2UsIE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBmaWx0ZXIsIHN0YXJ0V2l0aCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5pbXBvcnQgeyBSdGxTZXJ2aWNlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3V0aWxzJztcbmltcG9ydCB7IEdldERlZmF1bHRQb3NpdGlvbiwgUG9wb3ZlclBvc2l0aW9uLCBOdWxsYWJsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9zaGFyZWQnO1xuXG5pbXBvcnQgeyBCYXNlUG9wb3ZlckNsYXNzIH0gZnJvbSAnLi4vYmFzZS9iYXNlLXBvcG92ZXIuY2xhc3MnO1xuaW1wb3J0IHsgUG9wb3ZlckJvZHlDb21wb25lbnQgfSBmcm9tICcuLi9wb3BvdmVyLWJvZHkvcG9wb3Zlci1ib2R5LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQb3BvdmVyQ29udGFpbmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vcG9wb3Zlci1jb250YWluZXIvcG9wb3Zlci1jb250YWluZXIuZGlyZWN0aXZlJztcblxuY29uc3QgTUFYX0JPRFlfU0laRSA9IDk5OTk5OTk5O1xuXG5leHBvcnQgaW50ZXJmYWNlIFBvcG92ZXJUZW1wbGF0ZSB7XG4gICAgY29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmO1xuICAgIHBvcG92ZXJCb2R5OiBQb3BvdmVyQm9keUNvbXBvbmVudDtcbiAgICB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pjtcbn1cblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIFBvcG92ZXJTZXJ2aWNlIGV4dGVuZHMgQmFzZVBvcG92ZXJDbGFzcyB7XG4gICAgLyoqIFN0cmluZyBjb250ZW50IGRpc3BsYXllZCBpbnNpZGUgcG9wb3ZlciBib2R5ICovXG4gICAgc3RyaW5nQ29udGVudDogTnVsbGFibGU8c3RyaW5nPjtcblxuICAgIC8qKiBUZW1wbGF0ZSBjb250ZW50IGRpc3BsYXllZCBpbnNpZGUgcG9wb3ZlciBib2R5ICovXG4gICAgdGVtcGxhdGVDb250ZW50OiBOdWxsYWJsZTxUZW1wbGF0ZVJlZjxhbnk+PjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX29uTG9hZCA9IG5ldyBTdWJqZWN0PEVsZW1lbnRSZWY+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2V2ZW50UmVmOiAoKCkgPT4gdm9pZClbXSA9IFtdO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9vdmVybGF5UmVmOiBPdmVybGF5UmVmO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9yZWZyZXNoJDogT2JzZXJ2YWJsZTxib29sZWFuIHwgdm9pZD47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX3BsYWNlbWVudFJlZnJlc2gkID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfcG9wb3ZlckJvZHk6IFBvcG92ZXJCb2R5Q29tcG9uZW50O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF90cmlnZ2VyRWxlbWVudDogRWxlbWVudFJlZjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfbGFzdEFjdGl2ZUVsZW1lbnQ6IEhUTUxFbGVtZW50O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF90ZW1wbGF0ZURhdGE6IE51bGxhYmxlPFBvcG92ZXJUZW1wbGF0ZT47XG5cbiAgICAvKiogQW4gUnhKUyBTdWJqZWN0IHRoYXQgd2lsbCBraWxsIHRoZSBkYXRhIHN0cmVhbSB1cG9uIGNvbXBvbmVudOKAmXMgZGVzdHJ1Y3Rpb24gKGZvciB1bnN1YnNjcmliaW5nKSAgKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9vbkRlc3Ryb3kkOiBTdWJqZWN0PHZvaWQ+ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgX292ZXJsYXk6IE92ZXJsYXksXG4gICAgICAgIHByaXZhdGUgX3JlbmRlcmVyOiBSZW5kZXJlcjIsXG4gICAgICAgIHByaXZhdGUgX3ZpZXdwb3J0UnVsZXI6IFZpZXdwb3J0UnVsZXIsXG4gICAgICAgIHByaXZhdGUgX2luamVjdG9yOiBJbmplY3RvcixcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfcnRsU2VydmljZTogUnRsU2VydmljZSxcbiAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSByZWFkb25seSBfcG9wb3ZlckNvbnRhaW5lcjogUG9wb3ZlckNvbnRhaW5lckRpcmVjdGl2ZVxuICAgICkge1xuICAgICAgICBzdXBlcigpO1xuXG4gICAgICAgIC8qKiBNZXJnZSBvYnNlcnZhYmxlcyAtIGNsb3NlIG9yIGRlc3Ryb3kgKi9cbiAgICAgICAgdGhpcy5fcmVmcmVzaCQgPSBtZXJnZSh0aGlzLmlzT3BlbkNoYW5nZSwgdGhpcy5fb25EZXN0cm95JCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogTWV0aG9kIGluaXRpYWxpc2luZyB0aGUgcG9wb3ZlciBzZXJ2aWNlIC0gc2hvdWxkIGJlIGNhbGxlZCwgYWZ0ZXIgdmlldyBpcyBpbml0aWFsaXNlZCwgcGFyYW1zOlxuICAgICAqIC0gdHJpZ2dlckVsZW1lbnQgLSBlbGVtZW50LCB3aGljaCBpcyBlcXVpdmFsZW50IGZvciBjZGtPdmVybGF5T3JpZ2luLCBvciBmZC1wb3BvdmVyLWNvbnRyb2wsXG4gICAgICogICBieSBkZWZhdWx0IHRvIHRoaXMgZWxlbWVudCB0aGUgcG9wb3ZlciBib2R5IHdpbGwgbGJlIGFwcGVuZGVkIGFuZCBldmVudHMgb24gdGhpcyBlbGVtZW50IHdpbGwgdHJpZ2dlclxuICAgICAqICAgcG9wb3ZlcidzICB0b2dnbGVcbiAgICAgKiAtIGNvbmZpZyAtIGNvbmZpZ3VyYXRpb24gb2JqZWN0IC0gaW4gdGhpcyBjYXNlIHRoZSBpbnRlbnRpb24gaXMgdG8gdXNlIGluaGVyaXRhbmNlIG9mIEJhc2VQb3BvdmVyQ2xhc3MgaW4gY29tcG9uZW50XG4gICAgICogLSB0ZW1wbGF0ZURhdGEgLSBpbiBjYXNlIG9mIGhhdmluZyBhbHJlYWR5IFBvcG92ZXJCb2R5Q29tcG9uZW50LCB0aGVyZSBpcyB3YXkgdG8gcGFzcyBjb250YWluZXIsIHRlbXBsYXRlIGNvbnRhaW5pbmdcbiAgICAgKiAgIFBvcG92ZXJDb21wb25lbnQgYW5kIFBvcG92ZXJDb21wb25lbnQgaW5zdGFuY2VcbiAgICAgKi9cbiAgICBpbml0aWFsaXNlKHRyaWdnZXJFbGVtZW50OiBFbGVtZW50UmVmLCBjb25maWc/OiBCYXNlUG9wb3ZlckNsYXNzLCB0ZW1wbGF0ZURhdGE/OiBQb3BvdmVyVGVtcGxhdGUgfCBudWxsKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3RlbXBsYXRlRGF0YSA9IHRlbXBsYXRlRGF0YTtcbiAgICAgICAgdGhpcy5fdHJpZ2dlckVsZW1lbnQgPSB0cmlnZ2VyRWxlbWVudDtcblxuICAgICAgICBpZiAoY29uZmlnKSB7XG4gICAgICAgICAgICB0aGlzLnJlZnJlc2hDb25maWd1cmF0aW9uKGNvbmZpZyk7XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9yZWZyZXNoVHJpZ2dlckxpc3RlbmVycygpO1xuXG4gICAgICAgIGlmICh0aGlzLmlzT3Blbikge1xuICAgICAgICAgICAgdGhpcy5vcGVuKCk7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJZiB3cmFwcGVyIGNvbnRhaW5lciBoZWlnaHQgY2hhbmdlcyBvdXRzaWRlLCByZWZyZXNoIHBvcG92ZXIgcG9zaXRpb24uXG4gICAgICAgIHRoaXMuX3BvcG92ZXJDb250YWluZXI/LnJlZnJlc2hQb3NpdGlvbiQucGlwZSh0YWtlVW50aWwodGhpcy5fcmVmcmVzaCQpKS5zdWJzY3JpYmUoKCkgPT4ge1xuICAgICAgICAgICAgdGhpcy5yZWZyZXNoUG9zaXRpb24oKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIENsb3NlcyB0aGUgcG9wb3Zlci4gKi9cbiAgICBjbG9zZShmb2N1c0FjdGl2ZUVsZW1lbnQgPSB0cnVlKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl9vdmVybGF5UmVmKSB7XG4gICAgICAgICAgICB0aGlzLl9vdmVybGF5UmVmLmRpc3Bvc2UoKTtcblxuICAgICAgICAgICAgY29uc3QgcHJldlN0YXRlID0gdGhpcy5pc09wZW47XG4gICAgICAgICAgICB0aGlzLmlzT3BlbiA9IGZhbHNlO1xuICAgICAgICAgICAgaWYgKHByZXZTdGF0ZSAhPT0gdGhpcy5pc09wZW4pIHtcbiAgICAgICAgICAgICAgICB0aGlzLmlzT3BlbkNoYW5nZS5lbWl0KHRoaXMuaXNPcGVuKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5fZm9jdXNMYXN0QWN0aXZlRWxlbWVudEJlZm9yZU9wZW4oZm9jdXNBY3RpdmVFbGVtZW50KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBPcGVucyB0aGUgcG9wb3Zlci4gKi9cbiAgICBvcGVuKCk6IHZvaWQge1xuICAgICAgICBpZiAoKCF0aGlzLl9vdmVybGF5UmVmIHx8ICF0aGlzLl9vdmVybGF5UmVmLmhhc0F0dGFjaGVkKCkpICYmICF0aGlzLmRpc2FibGVkICYmIHRoaXMuX3RyaWdnZXJFbGVtZW50KSB7XG4gICAgICAgICAgICBjb25zdCBwb3NpdGlvbiA9IHRoaXMuX2dldFBvc2l0aW9uU3RyYXRlZ3koKTtcbiAgICAgICAgICAgIHRoaXMuX292ZXJsYXlSZWYgPSB0aGlzLl9vdmVybGF5LmNyZWF0ZSh0aGlzLl9nZXRPdmVybGF5Q29uZmlnKHBvc2l0aW9uKSk7XG5cbiAgICAgICAgICAgIGlmICh0aGlzLl90ZW1wbGF0ZURhdGEpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9hdHRhY2hUZW1wbGF0ZSgpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9hdHRhY2hCb2R5Q29tcG9uZW50KCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIHRoaXMuX2xpc3RlbkZvclBvc2l0aW9uQ2hhbmdlKHBvc2l0aW9uLnBvc2l0aW9uQ2hhbmdlcyk7XG5cbiAgICAgICAgICAgIGlmICh0aGlzLmZpbGxDb250cm9sTW9kZSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2xpc3Rlbk9uUmVzaXplKCk7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IHByZXZTdGF0ZSA9IHRoaXMuaXNPcGVuO1xuICAgICAgICAgICAgdGhpcy5pc09wZW4gPSB0cnVlO1xuICAgICAgICAgICAgaWYgKHByZXZTdGF0ZSAhPT0gdGhpcy5pc09wZW4pIHtcbiAgICAgICAgICAgICAgICB0aGlzLmlzT3BlbkNoYW5nZS5lbWl0KHRoaXMuaXNPcGVuKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5fZGV0ZWN0Q2hhbmdlcygpO1xuXG4gICAgICAgICAgICB0aGlzLl9saXN0ZW5PbkNsb3NlKCk7XG4gICAgICAgICAgICB0aGlzLl9saXN0ZW5Pbk91dENsaWNrcygpO1xuICAgICAgICAgICAgdGhpcy5fZm9jdXNGaXJzdFRhYmJhYmxlRWxlbWVudCgpO1xuICAgICAgICAgICAgdGhpcy5fb25Mb2FkLm5leHQodGhpcy5fZ2V0UG9wb3ZlckJvZHkoKS5fZWxlbWVudFJlZik7XG4gICAgICAgICAgICB0aGlzLl9vdmVybGF5UmVmLnVwZGF0ZVBvc2l0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogbWV0aG9kIHVwZGF0aW5nIHRlbXBsYXRlIG9yIHRleHQgaW5zaWRlIHJlbmRlcmVkIFBvcG92ZXJCb2R5ICovXG4gICAgdXBkYXRlQ29udGVudChzdHJpbmdDb250ZW50OiBzdHJpbmcsIHRlbXBsYXRlQ29udGVudDogVGVtcGxhdGVSZWY8YW55PiB8IG51bGwpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5zdHJpbmdDb250ZW50ID0gc3RyaW5nQ29udGVudDtcbiAgICAgICAgdGhpcy50ZW1wbGF0ZUNvbnRlbnQgPSB0ZW1wbGF0ZUNvbnRlbnQ7XG4gICAgICAgIGlmICh0aGlzLl9nZXRQb3BvdmVyQm9keSgpKSB7XG4gICAgICAgICAgICB0aGlzLl9wYXNzVmFyaWFibGVzVG9Cb2R5KCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogVG9nZ2xlcyB0aGUgcG9wb3ZlciBvcGVuIHN0YXRlICovXG4gICAgdG9nZ2xlKG9wZW5BY3Rpb24gPSB0cnVlLCBjbG9zZUFjdGlvbiA9IHRydWUpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICAgICAgICBjbG9zZUFjdGlvbiAmJiB0aGlzLmNsb3NlKCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBvcGVuQWN0aW9uICYmIHRoaXMub3BlbigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogTWV0aG9kIGNhbGxlZCB0byBjaGFuZ2UgcG9zaXRpb24gb2YgcG9wb3ZlcixcbiAgICAgKiByZWNvbW1lbmRlZCB0byBiZSB1c2VkIG9ubHkgd2hlbiBwb3BvdmVyIGlzIG9wZW5lZCwgb3RoZXJ3aXNlIGNoYW5nZSBwb3NpdGlvbiBvciBjZGtQbGFjZW1lbnRcbiAgICAgKi9cbiAgICBhcHBseU5ld1Bvc2l0aW9uKHBvc2l0aW9uczogQ29ubmVjdGVkUG9zaXRpb25bXSk6IHZvaWQge1xuICAgICAgICBjb25zdCByZWZQb3NpdGlvbiA9IHRoaXMuX2dldFBvc2l0aW9uU3RyYXRlZ3kocG9zaXRpb25zKTtcbiAgICAgICAgdGhpcy5fbGlzdGVuRm9yUG9zaXRpb25DaGFuZ2UocmVmUG9zaXRpb24ucG9zaXRpb25DaGFuZ2VzKTtcbiAgICAgICAgdGhpcy5fb3ZlcmxheVJlZi51cGRhdGVQb3NpdGlvblN0cmF0ZWd5KHJlZlBvc2l0aW9uKTtcbiAgICB9XG5cbiAgICAvKiogTWV0aG9kIGNhbGxlZCB0byByZWZyZXNoIHBvc2l0aW9uIG9mIG9wZW5lZCBwb3BvdmVyICovXG4gICAgcmVmcmVzaFBvc2l0aW9uKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5fb3ZlcmxheVJlZikge1xuICAgICAgICAgICAgdGhpcy5fb3ZlcmxheVJlZi51cGRhdGVQb3NpdGlvbigpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEVxdWl2YWxlbnQgZm9yIG5nT25EZXN0cm95IG1ldGhvZCwgd2hldGhlciBjb21wb25lbnQgaXMgZGVzdHJveWVkLCB0aGlzIG1ldGhvZCBzaG91bGQgYmUgY2FsbGVkICovXG4gICAgb25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9vbkRlc3Ryb3kkLm5leHQoKTtcbiAgICAgICAgdGhpcy5fb25EZXN0cm95JC5jb21wbGV0ZSgpO1xuICAgICAgICB0aGlzLl9yZW1vdmVUcmlnZ2VyTGlzdGVuZXJzKCk7XG4gICAgICAgIGlmICh0aGlzLl9vdmVybGF5UmVmKSB7XG4gICAgICAgICAgICB0aGlzLl9vdmVybGF5UmVmLmRldGFjaCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogTWV0aG9kIHRoYXQgc2V0cyBjb25maWd1cmF0aW9uL29wdGlvbnMsIGl0IGRldGVjdHMgaWYgdGhlcmUgaXMgc29tZXRoaW5nIGNoYW5nZWQgYW5kIG92ZXJ3cml0ZXMgdGhlbVxuICAgICAqL1xuICAgIHJlZnJlc2hDb25maWd1cmF0aW9uKGNvbmZpZzogQmFzZVBvcG92ZXJDbGFzcyk6IHZvaWQge1xuICAgICAgICBjb25zdCBvbmx5Q2hhbmdlZCA9IE9iamVjdC5rZXlzKG5ldyBCYXNlUG9wb3ZlckNsYXNzKCkpLmZpbHRlcigoa2V5KSA9PiB0aGlzW2tleV0gIT09IGNvbmZpZ1trZXldKTtcblxuICAgICAgICBpZiAob25seUNoYW5nZWQuaW5jbHVkZXMoJ2lzT3BlbicpKSB7XG4gICAgICAgICAgICBpZiAoY29uZmlnLmlzT3Blbikge1xuICAgICAgICAgICAgICAgIHRoaXMub3BlbigpO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLmNsb3NlKCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cblxuICAgICAgICAvKiogVE9ET1xuICAgICAgICAgKiBUaGlzIG92ZXJyaWRpbmcgaXMgZGFuZ2Vyb3VzIHRoaW5nIGFuZCBsZWFkcyB0byB1bmV4cGVjdGVkIGJlaGF2aW9yXG4gICAgICAgICAqIFdlIGhhdmUgdG8gYXZvaWQgdGhpcy5cbiAgICAgICAgICovXG4gICAgICAgIG9ubHlDaGFuZ2VkLmZvckVhY2goKGtleSkgPT4gKHRoaXNba2V5XSA9IGNvbmZpZ1trZXldKSk7XG5cbiAgICAgICAgaWYgKG9ubHlDaGFuZ2VkLmluY2x1ZGVzKCd0cmlnZ2VycycpKSB7XG4gICAgICAgICAgICB0aGlzLl9yZWZyZXNoVHJpZ2dlckxpc3RlbmVycygpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVGhpcyBtZXRob2QgaXMgaW50ZW5kZWQgdG8gYmUgY2FsbGVkIGluIG9yZGVyXG4gICAgICogdG8gcG9zdHBvbmUgdGhlIG1haW4gZnVuY3Rpb25hbGl0eSBidXQgYmUgYWJsZVxuICAgICAqIHRvIGVuYWJsZSBpdCBiYWNrIGluIHRoZSBmdXR1cmUgYnkgaW5pdGlhbGlzZSgpXG4gICAgICovXG4gICAgZGVhY3RpdmF0ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fcmVtb3ZlVHJpZ2dlckxpc3RlbmVycygpO1xuICAgIH1cblxuICAgIC8qKiBSZWZyZXNoIGxpc3RlbmVycyBvbiB0cmlnZ2VyIGVsZW1lbnQgZXZlbnRzICovXG4gICAgX3JlZnJlc2hUcmlnZ2VyTGlzdGVuZXJzKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMuX3RyaWdnZXJFbGVtZW50KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9yZW1vdmVUcmlnZ2VyTGlzdGVuZXJzKCk7XG5cbiAgICAgICAgaWYgKHRoaXMudHJpZ2dlcnM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgdGhpcy50cmlnZ2Vycy5mb3JFYWNoKCh0cmlnZ2VyKSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgdHJpZ2dlck5hbWUgPSB0eXBlb2YgdHJpZ2dlciA9PT0gJ3N0cmluZycgPyB0cmlnZ2VyIDogdHJpZ2dlci50cmlnZ2VyO1xuICAgICAgICAgICAgICAgIHRoaXMuX2V2ZW50UmVmLnB1c2goXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuX3JlbmRlcmVyLmxpc3Rlbih0aGlzLl90cmlnZ2VyRWxlbWVudC5uYXRpdmVFbGVtZW50LCB0cmlnZ2VyTmFtZSwgKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3QgY2xvc2VBY3Rpb24gPSB0eXBlb2YgdHJpZ2dlciAhPT0gJ29iamVjdCcgfHwgISF0cmlnZ2VyLmNsb3NlQWN0aW9uO1xuICAgICAgICAgICAgICAgICAgICAgICAgY29uc3Qgb3BlbkFjdGlvbiA9IHR5cGVvZiB0cmlnZ2VyICE9PSAnb2JqZWN0JyB8fCAhIXRyaWdnZXIub3BlbkFjdGlvbjtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRoaXMudG9nZ2xlKG9wZW5BY3Rpb24sIGNsb3NlQWN0aW9uKTtcbiAgICAgICAgICAgICAgICAgICAgfSlcbiAgICAgICAgICAgICAgICApO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2dldE92ZXJsYXlDb25maWcocG9zaXRpb246IEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneSk6IE92ZXJsYXlDb25maWcge1xuICAgICAgICBjb25zdCBkaXJlY3Rpb24gPSB0aGlzLl9nZXREaXJlY3Rpb24oKTtcblxuICAgICAgICByZXR1cm4gbmV3IE92ZXJsYXlDb25maWcoe1xuICAgICAgICAgICAgZGlyZWN0aW9uLFxuICAgICAgICAgICAgZGlzcG9zZU9uTmF2aWdhdGlvbjogdGhpcy5jbG9zZU9uTmF2aWdhdGlvbixcbiAgICAgICAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHBvc2l0aW9uLFxuICAgICAgICAgICAgc2Nyb2xsU3RyYXRlZ3k6IHRoaXMuc2Nyb2xsU3RyYXRlZ3kgfHwgdGhpcy5fb3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLnJlcG9zaXRpb24oKVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2xpc3Rlbk9uUmVzaXplKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl92aWV3cG9ydFJ1bGVyXG4gICAgICAgICAgICAuY2hhbmdlKDE1KVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuX3JlZnJlc2gkKSwgc3RhcnRXaXRoKDEpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB0aGlzLl9hcHBseVdpZHRoT3ZlcmxheSgpKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2dldERpcmVjdGlvbigpOiAncnRsJyB8ICdsdHInIHtcbiAgICAgICAgaWYgKCF0aGlzLl9ydGxTZXJ2aWNlKSB7XG4gICAgICAgICAgICByZXR1cm4gJ2x0cic7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5fcnRsU2VydmljZS5ydGwuZ2V0VmFsdWUoKSA/ICdydGwnIDogJ2x0cic7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9nZXRQb3NpdGlvblN0cmF0ZWd5KGZvcmNlZFBvc2l0aW9ucz86IENvbm5lY3RlZFBvc2l0aW9uW10pOiBGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uU3RyYXRlZ3kge1xuICAgICAgICBsZXQgcmVzdWx0UG9zaXRpb24gPSBmb3JjZWRQb3NpdGlvbnMgPyBmb3JjZWRQb3NpdGlvbnMgOiB0aGlzLl9nZXRQb3NpdGlvbnMoKTtcblxuICAgICAgICBpZiAoIXRoaXMuZml4ZWRQb3NpdGlvbikge1xuICAgICAgICAgICAgcmVzdWx0UG9zaXRpb24gPSByZXN1bHRQb3NpdGlvbi5jb25jYXQoR2V0RGVmYXVsdFBvc2l0aW9uKHJlc3VsdFBvc2l0aW9uKSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gdGhpcy5fb3ZlcmxheVxuICAgICAgICAgICAgLnBvc2l0aW9uKClcbiAgICAgICAgICAgIC5mbGV4aWJsZUNvbm5lY3RlZFRvKHRoaXMuYXBwZW5kVG8gfHwgdGhpcy5fdHJpZ2dlckVsZW1lbnQpXG4gICAgICAgICAgICAud2l0aFBvc2l0aW9ucyhyZXN1bHRQb3NpdGlvbilcbiAgICAgICAgICAgIC53aXRoUHVzaChmYWxzZSk7XG4gICAgfVxuXG4gICAgLyoqIHJlbW92ZSBsaXN0ZW5lcnMgZnJvbSB0cmlnZ2VyIGVsZW1lbnQgZXZlbnRzICovXG4gICAgcHJpdmF0ZSBfcmVtb3ZlVHJpZ2dlckxpc3RlbmVycygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZXZlbnRSZWYuZm9yRWFjaCgoZXZlbnQpID0+IGV2ZW50KCkpO1xuICAgICAgICB0aGlzLl9ldmVudFJlZiA9IFtdO1xuICAgIH1cblxuICAgIC8qKiBBdHRhY2ggdGVtcGxhdGUgY29udGFpbmluZyBwb3BvdmVyIGJvZHkgdG8gb3ZlcmxheSAqL1xuICAgIHByaXZhdGUgX2F0dGFjaFRlbXBsYXRlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9wYXNzVmFyaWFibGVzVG9Cb2R5KCk7XG4gICAgICAgIGlmICh0aGlzLl90ZW1wbGF0ZURhdGEpIHtcbiAgICAgICAgICAgIHRoaXMuX292ZXJsYXlSZWYuYXR0YWNoKG5ldyBUZW1wbGF0ZVBvcnRhbCh0aGlzLl90ZW1wbGF0ZURhdGEudGVtcGxhdGUsIHRoaXMuX3RlbXBsYXRlRGF0YS5jb250YWluZXIpKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBDcmVhdGUgUG9wb3ZlckJvZHlDb21wb25lbnQgYW5kIGF0dGFjaCBpdCBpbnRvIG92ZXJsYXkgKi9cbiAgICBwcml2YXRlIF9hdHRhY2hCb2R5Q29tcG9uZW50KCk6IHZvaWQge1xuICAgICAgICBjb25zdCBvdmVybGF5ID0gdGhpcy5fb3ZlcmxheVJlZi5hdHRhY2gobmV3IENvbXBvbmVudFBvcnRhbChQb3BvdmVyQm9keUNvbXBvbmVudCwgbnVsbCwgdGhpcy5faW5qZWN0b3IpKTtcbiAgICAgICAgdGhpcy5fcG9wb3ZlckJvZHkgPSBvdmVybGF5Lmluc3RhbmNlO1xuICAgICAgICB0aGlzLl9wYXNzVmFyaWFibGVzVG9Cb2R5KCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9saXN0ZW5Gb3JQb3NpdGlvbkNoYW5nZShwb3NpdGlvbkNoYW5nZTogT2JzZXJ2YWJsZTxDb25uZWN0ZWRPdmVybGF5UG9zaXRpb25DaGFuZ2U+KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3BsYWNlbWVudFJlZnJlc2gkLm5leHQoKTtcbiAgICAgICAgcG9zaXRpb25DaGFuZ2VcbiAgICAgICAgICAgIC5waXBlKFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9wbGFjZW1lbnRSZWZyZXNoJCksXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuX29uRGVzdHJveSQpLFxuICAgICAgICAgICAgICAgIGZpbHRlcigoKSA9PiAhdGhpcy5ub0Fycm93ICYmICEhdGhpcy5fZ2V0UG9wb3ZlckJvZHkoKSksXG4gICAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKHByZXZpb3VzLCBjdXJyZW50KSA9PiBwcmV2aW91cy5jb25uZWN0aW9uUGFpciA9PT0gY3VycmVudC5jb25uZWN0aW9uUGFpcilcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50KSA9PiB0aGlzLl9nZXRQb3BvdmVyQm9keSgpLl9zZXRBcnJvd1N0eWxlcyhldmVudC5jb25uZWN0aW9uUGFpciwgdGhpcy5fZ2V0RGlyZWN0aW9uKCkpKTtcbiAgICB9XG5cbiAgICAvKiogU3Vic2NyaWJlIHRvIGNsb3NlIGV2ZW50cyBmcm9tIENESyBPdmVybGF5LCB0byB0aHJvdyBwcm9wZXIgZXZlbnRzLCBjaGFuZ2UgdmFsdWVzICovXG4gICAgcHJpdmF0ZSBfbGlzdGVuT25DbG9zZSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgY2xvc2VFdmVudHMkID0gbWVyZ2UodGhpcy5fb3ZlcmxheVJlZi5kZXRhY2htZW50cygpLCB0aGlzLl9nZXRQb3BvdmVyQm9keSgpLm9uQ2xvc2UpO1xuXG4gICAgICAgIGNsb3NlRXZlbnRzJC5waXBlKHRha2VVbnRpbCh0aGlzLl9yZWZyZXNoJCkpLnN1YnNjcmliZSgoKSA9PiB0aGlzLmNsb3NlKCkpO1xuICAgIH1cblxuICAgIC8qKiBMaXN0ZW5lciBmb3IgY2xpY2sgZXZlbnRzICovXG4gICAgcHJpdmF0ZSBfbGlzdGVuT25PdXRDbGlja3MoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNsb3NlRXZlbnRzJCA9IG1lcmdlKHRoaXMuX292ZXJsYXlSZWYuYmFja2Ryb3BDbGljaygpLCB0aGlzLl9vdmVybGF5UmVmLl9vdXRzaWRlUG9pbnRlckV2ZW50cyk7XG5cbiAgICAgICAgY2xvc2VFdmVudHMkXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBmaWx0ZXIoKGV2ZW50KSA9PiB0aGlzLl9zaG91bGRDbG9zZShldmVudCkpLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9yZWZyZXNoJClcbiAgICAgICAgICAgIClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jbG9zZSgpKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3Nob3VsZENsb3NlKGV2ZW50OiBNb3VzZUV2ZW50KTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzT3BlbiAmJiB0aGlzLmNsb3NlT25PdXRzaWRlQ2xpY2sgJiYgIXRoaXMuX3RyaWdnZXJDb250YWluc1RhcmdldChldmVudCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9nZXRFdmVudFRhcmdldChldmVudDogRXZlbnQpOiBFdmVudFRhcmdldCB8IG51bGwge1xuICAgICAgICByZXR1cm4gZXZlbnQuY29tcG9zZWRQYXRoID8gZXZlbnQuY29tcG9zZWRQYXRoKClbMF0gOiBldmVudC50YXJnZXQ7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF90cmlnZ2VyQ29udGFpbnNUYXJnZXQoZXZlbnQ6IEV2ZW50KTogYm9vbGVhbiB7XG4gICAgICAgIGNvbnN0IHRyaWdnZXJFbGVtZW50ID0gdGhpcy5fdHJpZ2dlckVsZW1lbnQubmF0aXZlRWxlbWVudDtcbiAgICAgICAgcmV0dXJuIHRyaWdnZXJFbGVtZW50LmNvbnRhaW5zKHRoaXMuX2dldEV2ZW50VGFyZ2V0KGV2ZW50KSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9nZXRQb3NpdGlvbnMoKTogQ29ubmVjdGVkUG9zaXRpb25bXSB7XG4gICAgICAgIGlmICh0aGlzLmNka1Bvc2l0aW9ucykge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuY2RrUG9zaXRpb25zO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHRoaXMucGxhY2VtZW50KSB7XG4gICAgICAgICAgICByZXR1cm4gW1BvcG92ZXJQb3NpdGlvbi5nZXRDZGtQbGFjZW1lbnQodGhpcy5wbGFjZW1lbnQsIHRoaXMuX2dldERpcmVjdGlvbigpKV07XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gW107XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9hcHBseVdpZHRoT3ZlcmxheSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgbWF4V2lkdGhMaW1pdCA9IHRoaXMubWF4V2lkdGggPyB0aGlzLm1heFdpZHRoIDogTUFYX0JPRFlfU0laRTtcbiAgICAgICAgY29uc3Qgd2lkdGggPSBNYXRoLm1pbih0aGlzLl9nZXRUcmlnZ2VyV2lkdGgoKSwgbWF4V2lkdGhMaW1pdCk7XG4gICAgICAgIGlmICh0aGlzLmZpbGxDb250cm9sTW9kZSA9PT0gJ2F0LWxlYXN0Jykge1xuICAgICAgICAgICAgdGhpcy5fZ2V0UG9wb3ZlckJvZHkoKS5fcG9wb3ZlckJvZHlNaW5XaWR0aCA9IHdpZHRoO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuZmlsbENvbnRyb2xNb2RlID09PSAnZXF1YWwnKSB7XG4gICAgICAgICAgICB0aGlzLl9nZXRQb3BvdmVyQm9keSgpLl9wb3BvdmVyQm9keVdpZHRoID0gd2lkdGg7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5fZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfcGFzc1ZhcmlhYmxlc1RvQm9keSgpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgYm9keSA9IHRoaXMuX2dldFBvcG92ZXJCb2R5KCk7XG4gICAgICAgIGJvZHkudGV4dCA9IHRoaXMuc3RyaW5nQ29udGVudDtcbiAgICAgICAgYm9keS5fYWRkaXRpb25hbEJvZHlDbGFzcyA9IHRoaXMuYWRkaXRpb25hbEJvZHlDbGFzcztcbiAgICAgICAgYm9keS5fZm9jdXNUcmFwcGVkID0gdGhpcy5mb2N1c1RyYXBwZWQ7XG4gICAgICAgIGJvZHkuX21heFdpZHRoID0gdGhpcy5tYXhXaWR0aDtcbiAgICAgICAgYm9keS5fbm9BcnJvdyA9IHRoaXMubm9BcnJvdztcbiAgICAgICAgYm9keS5fZm9jdXNBdXRvQ2FwdHVyZSA9IHRoaXMuZm9jdXNBdXRvQ2FwdHVyZTtcbiAgICAgICAgYm9keS5fZGlzYWJsZVNjcm9sbGJhciA9IHRoaXMuZGlzYWJsZVNjcm9sbGJhcjtcbiAgICAgICAgYm9keS5fdGFiYmFibGVTY3JvbGxiYXIgPSB0aGlzLnRhYmJhYmxlU2Nyb2xsYmFyO1xuICAgICAgICBib2R5Ll90ZW1wbGF0ZVRvRGlzcGxheSA9IHRoaXMudGVtcGxhdGVDb250ZW50ITtcbiAgICAgICAgYm9keS5fY2xvc2VPbkVzY2FwZUtleSA9IHRoaXMuY2xvc2VPbkVzY2FwZUtleTtcbiAgICAgICAgdGhpcy5fZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZ2V0VHJpZ2dlcldpZHRoKCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl90cmlnZ2VyRWxlbWVudC5uYXRpdmVFbGVtZW50Lm9mZnNldFdpZHRoO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZ2V0UG9wb3ZlckJvZHkoKTogUG9wb3ZlckJvZHlDb21wb25lbnQge1xuICAgICAgICByZXR1cm4gdGhpcy5fdGVtcGxhdGVEYXRhPy5wb3BvdmVyQm9keSB8fCB0aGlzLl9wb3BvdmVyQm9keTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2RldGVjdENoYW5nZXMoKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl9nZXRQb3BvdmVyQm9keSgpKSB7XG4gICAgICAgICAgICB0aGlzLl9nZXRQb3BvdmVyQm9keSgpLmRldGVjdENoYW5nZXMoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZm9jdXNGaXJzdFRhYmJhYmxlRWxlbWVudChmb2N1c0xhc3RFbGVtZW50ID0gdHJ1ZSk6IHZvaWQge1xuICAgICAgICBpZiAoZm9jdXNMYXN0RWxlbWVudCAmJiB0aGlzLmZvY3VzQXV0b0NhcHR1cmUpIHtcbiAgICAgICAgICAgIHRoaXMuX2xhc3RBY3RpdmVFbGVtZW50ID0gPEhUTUxFbGVtZW50PmRvY3VtZW50LmFjdGl2ZUVsZW1lbnQ7XG4gICAgICAgICAgICB0aGlzLl9nZXRQb3BvdmVyQm9keSgpPy5fZm9jdXNGaXJzdFRhYmJhYmxlRWxlbWVudCgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9mb2N1c0xhc3RBY3RpdmVFbGVtZW50QmVmb3JlT3Blbihmb2N1c0xhc3RFbGVtZW50ID0gdHJ1ZSk6IHZvaWQge1xuICAgICAgICBpZiAoZm9jdXNMYXN0RWxlbWVudCAmJiB0aGlzLmZvY3VzQXV0b0NhcHR1cmUgJiYgdGhpcy5fbGFzdEFjdGl2ZUVsZW1lbnQpIHtcbiAgICAgICAgICAgIHRoaXMuX2xhc3RBY3RpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
352
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wb3Zlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL3NyYy9saWIvcG9wb3Zlci9wb3BvdmVyLXNlcnZpY2UvcG9wb3Zlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxVQUFVLEVBQUUsUUFBUSxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQWlDLE1BQU0sZUFBZSxDQUFDO0FBQ3JILE9BQU8sRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEUsT0FBTyxFQUdILE9BQU8sRUFDUCxhQUFhLEVBRWIsYUFBYSxFQUVoQixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFBRSxLQUFLLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXBGLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsZUFBZSxFQUFZLE1BQU0sOEJBQThCLENBQUM7QUFFN0YsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDOUQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDOUUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sa0RBQWtELENBQUM7Ozs7O0FBRTdGLE1BQU0sYUFBYSxHQUFHLFFBQVEsQ0FBQztBQVMvQixNQUFNLE9BQU8sY0FBZSxTQUFRLGdCQUFnQjtJQXFDaEQsY0FBYztJQUNkLFlBQ1ksUUFBaUIsRUFDakIsU0FBb0IsRUFDcEIsY0FBNkIsRUFDN0IsU0FBbUIsRUFDUCxXQUF1QixFQUNkLGlCQUE0QztRQUV6RSxLQUFLLEVBQUUsQ0FBQztRQVBB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QUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWxlbWVudFJlZiwgSW5qZWN0YWJsZSwgSW5qZWN0b3IsIE9wdGlvbmFsLCBSZW5kZXJlcjIsIFRlbXBsYXRlUmVmLCBWaWV3Q29udGFpbmVyUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb21wb25lbnRQb3J0YWwsIFRlbXBsYXRlUG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQge1xuICAgIENvbm5lY3RlZFBvc2l0aW9uLFxuICAgIEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneSxcbiAgICBPdmVybGF5LFxuICAgIE92ZXJsYXlDb25maWcsXG4gICAgT3ZlcmxheVJlZixcbiAgICBWaWV3cG9ydFJ1bGVyLFxuICAgIENvbm5lY3RlZE92ZXJsYXlQb3NpdGlvbkNoYW5nZVxufSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBtZXJnZSwgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIGZpbHRlciwgc3RhcnRXaXRoLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFJ0bFNlcnZpY2UgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvdXRpbHMnO1xuaW1wb3J0IHsgR2V0RGVmYXVsdFBvc2l0aW9uLCBQb3BvdmVyUG9zaXRpb24sIE51bGxhYmxlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3NoYXJlZCc7XG5cbmltcG9ydCB7IEJhc2VQb3BvdmVyQ2xhc3MgfSBmcm9tICcuLi9iYXNlL2Jhc2UtcG9wb3Zlci5jbGFzcyc7XG5pbXBvcnQgeyBQb3BvdmVyQm9keUNvbXBvbmVudCB9IGZyb20gJy4uL3BvcG92ZXItYm9keS9wb3BvdmVyLWJvZHkuY29tcG9uZW50JztcbmltcG9ydCB7IFBvcG92ZXJDb250YWluZXJEaXJlY3RpdmUgfSBmcm9tICcuLi9wb3BvdmVyLWNvbnRhaW5lci9wb3BvdmVyLWNvbnRhaW5lci5kaXJlY3RpdmUnO1xuXG5jb25zdCBNQVhfQk9EWV9TSVpFID0gOTk5OTk5OTk7XG5cbmV4cG9ydCBpbnRlcmZhY2UgUG9wb3ZlclRlbXBsYXRlIHtcbiAgICBjb250YWluZXI6IFZpZXdDb250YWluZXJSZWY7XG4gICAgcG9wb3ZlckJvZHk6IFBvcG92ZXJCb2R5Q29tcG9uZW50O1xuICAgIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+O1xufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgUG9wb3ZlclNlcnZpY2UgZXh0ZW5kcyBCYXNlUG9wb3ZlckNsYXNzIHtcbiAgICAvKiogU3RyaW5nIGNvbnRlbnQgZGlzcGxheWVkIGluc2lkZSBwb3BvdmVyIGJvZHkgKi9cbiAgICBzdHJpbmdDb250ZW50OiBOdWxsYWJsZTxzdHJpbmc+O1xuXG4gICAgLyoqIFRlbXBsYXRlIGNvbnRlbnQgZGlzcGxheWVkIGluc2lkZSBwb3BvdmVyIGJvZHkgKi9cbiAgICB0ZW1wbGF0ZUNvbnRlbnQ6IE51bGxhYmxlPFRlbXBsYXRlUmVmPGFueT4+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfb25Mb2FkID0gbmV3IFN1YmplY3Q8RWxlbWVudFJlZj4oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZXZlbnRSZWY6ICgoKSA9PiB2b2lkKVtdID0gW107XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX292ZXJsYXlSZWY6IE92ZXJsYXlSZWY7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3JlZnJlc2gkOiBPYnNlcnZhYmxlPGJvb2xlYW4gfCB2b2lkPjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBfcGxhY2VtZW50UmVmcmVzaCQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9wb3BvdmVyQm9keTogUG9wb3ZlckJvZHlDb21wb25lbnQ7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3RyaWdnZXJFbGVtZW50OiBFbGVtZW50UmVmO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9sYXN0QWN0aXZlRWxlbWVudDogSFRNTEVsZW1lbnQ7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3RlbXBsYXRlRGF0YTogTnVsbGFibGU8UG9wb3ZlclRlbXBsYXRlPjtcblxuICAgIC8qKiBBbiBSeEpTIFN1YmplY3QgdGhhdCB3aWxsIGtpbGwgdGhlIGRhdGEgc3RyZWFtIHVwb24gY29tcG9uZW504oCZcyBkZXN0cnVjdGlvbiAoZm9yIHVuc3Vic2NyaWJpbmcpICAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX29uRGVzdHJveSQ6IFN1YmplY3Q8dm9pZD4gPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBfb3ZlcmxheTogT3ZlcmxheSxcbiAgICAgICAgcHJpdmF0ZSBfcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICAgICAgcHJpdmF0ZSBfdmlld3BvcnRSdWxlcjogVmlld3BvcnRSdWxlcixcbiAgICAgICAgcHJpdmF0ZSBfaW5qZWN0b3I6IEluamVjdG9yLFxuICAgICAgICBAT3B0aW9uYWwoKSBwcml2YXRlIF9ydGxTZXJ2aWNlOiBSdGxTZXJ2aWNlLFxuICAgICAgICBAT3B0aW9uYWwoKSBwcml2YXRlIHJlYWRvbmx5IF9wb3BvdmVyQ29udGFpbmVyOiBQb3BvdmVyQ29udGFpbmVyRGlyZWN0aXZlXG4gICAgKSB7XG4gICAgICAgIHN1cGVyKCk7XG5cbiAgICAgICAgLyoqIE1lcmdlIG9ic2VydmFibGVzIC0gY2xvc2Ugb3IgZGVzdHJveSAqL1xuICAgICAgICB0aGlzLl9yZWZyZXNoJCA9IG1lcmdlKHRoaXMuaXNPcGVuQ2hhbmdlLCB0aGlzLl9vbkRlc3Ryb3kkKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBNZXRob2QgaW5pdGlhbGlzaW5nIHRoZSBwb3BvdmVyIHNlcnZpY2UgLSBzaG91bGQgYmUgY2FsbGVkLCBhZnRlciB2aWV3IGlzIGluaXRpYWxpc2VkLCBwYXJhbXM6XG4gICAgICogLSB0cmlnZ2VyRWxlbWVudCAtIGVsZW1lbnQsIHdoaWNoIGlzIGVxdWl2YWxlbnQgZm9yIGNka092ZXJsYXlPcmlnaW4sIG9yIGZkLXBvcG92ZXItY29udHJvbCxcbiAgICAgKiAgIGJ5IGRlZmF1bHQgdG8gdGhpcyBlbGVtZW50IHRoZSBwb3BvdmVyIGJvZHkgd2lsbCBsYmUgYXBwZW5kZWQgYW5kIGV2ZW50cyBvbiB0aGlzIGVsZW1lbnQgd2lsbCB0cmlnZ2VyXG4gICAgICogICBwb3BvdmVyJ3MgIHRvZ2dsZVxuICAgICAqIC0gY29uZmlnIC0gY29uZmlndXJhdGlvbiBvYmplY3QgLSBpbiB0aGlzIGNhc2UgdGhlIGludGVudGlvbiBpcyB0byB1c2UgaW5oZXJpdGFuY2Ugb2YgQmFzZVBvcG92ZXJDbGFzcyBpbiBjb21wb25lbnRcbiAgICAgKiAtIHRlbXBsYXRlRGF0YSAtIGluIGNhc2Ugb2YgaGF2aW5nIGFscmVhZHkgUG9wb3ZlckJvZHlDb21wb25lbnQsIHRoZXJlIGlzIHdheSB0byBwYXNzIGNvbnRhaW5lciwgdGVtcGxhdGUgY29udGFpbmluZ1xuICAgICAqICAgUG9wb3ZlckNvbXBvbmVudCBhbmQgUG9wb3ZlckNvbXBvbmVudCBpbnN0YW5jZVxuICAgICAqL1xuICAgIGluaXRpYWxpc2UodHJpZ2dlckVsZW1lbnQ6IEVsZW1lbnRSZWYsIGNvbmZpZz86IEJhc2VQb3BvdmVyQ2xhc3MsIHRlbXBsYXRlRGF0YT86IFBvcG92ZXJUZW1wbGF0ZSB8IG51bGwpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdGVtcGxhdGVEYXRhID0gdGVtcGxhdGVEYXRhO1xuICAgICAgICB0aGlzLl90cmlnZ2VyRWxlbWVudCA9IHRyaWdnZXJFbGVtZW50O1xuXG4gICAgICAgIGlmIChjb25maWcpIHtcbiAgICAgICAgICAgIHRoaXMucmVmcmVzaENvbmZpZ3VyYXRpb24oY29uZmlnKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3JlZnJlc2hUcmlnZ2VyTGlzdGVuZXJzKCk7XG5cbiAgICAgICAgaWYgKHRoaXMuaXNPcGVuKSB7XG4gICAgICAgICAgICB0aGlzLm9wZW4oKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIElmIHdyYXBwZXIgY29udGFpbmVyIGhlaWdodCBjaGFuZ2VzIG91dHNpZGUsIHJlZnJlc2ggcG9wb3ZlciBwb3NpdGlvbi5cbiAgICAgICAgdGhpcy5fcG9wb3ZlckNvbnRhaW5lcj8ucmVmcmVzaFBvc2l0aW9uJC5waXBlKHRha2VVbnRpbCh0aGlzLl9yZWZyZXNoJCkpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnJlZnJlc2hQb3NpdGlvbigpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQ2xvc2VzIHRoZSBwb3BvdmVyLiAqL1xuICAgIGNsb3NlKGZvY3VzQWN0aXZlRWxlbWVudCA9IHRydWUpOiB2b2lkIHtcbiAgICAgICAgaWYgKHRoaXMuX292ZXJsYXlSZWYpIHtcbiAgICAgICAgICAgIHRoaXMuX292ZXJsYXlSZWYuZGlzcG9zZSgpO1xuXG4gICAgICAgICAgICBjb25zdCBwcmV2U3RhdGUgPSB0aGlzLmlzT3BlbjtcbiAgICAgICAgICAgIHRoaXMuaXNPcGVuID0gZmFsc2U7XG4gICAgICAgICAgICBpZiAocHJldlN0YXRlICE9PSB0aGlzLmlzT3Blbikge1xuICAgICAgICAgICAgICAgIHRoaXMuaXNPcGVuQ2hhbmdlLmVtaXQodGhpcy5pc09wZW4pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLl9mb2N1c0xhc3RBY3RpdmVFbGVtZW50QmVmb3JlT3Blbihmb2N1c0FjdGl2ZUVsZW1lbnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIE9wZW5zIHRoZSBwb3BvdmVyLiAqL1xuICAgIG9wZW4oKTogdm9pZCB7XG4gICAgICAgIGlmICgoIXRoaXMuX292ZXJsYXlSZWYgfHwgIXRoaXMuX292ZXJsYXlSZWYuaGFzQXR0YWNoZWQoKSkgJiYgIXRoaXMuZGlzYWJsZWQgJiYgdGhpcy5fdHJpZ2dlckVsZW1lbnQpIHtcbiAgICAgICAgICAgIGNvbnN0IHBvc2l0aW9uID0gdGhpcy5fZ2V0UG9zaXRpb25TdHJhdGVneSgpO1xuICAgICAgICAgICAgdGhpcy5fb3ZlcmxheVJlZiA9IHRoaXMuX292ZXJsYXkuY3JlYXRlKHRoaXMuX2dldE92ZXJsYXlDb25maWcocG9zaXRpb24pKTtcblxuICAgICAgICAgICAgaWYgKHRoaXMuX3RlbXBsYXRlRGF0YSkge1xuICAgICAgICAgICAgICAgIHRoaXMuX2F0dGFjaFRlbXBsYXRlKCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuX2F0dGFjaEJvZHlDb21wb25lbnQoKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5fbGlzdGVuRm9yUG9zaXRpb25DaGFuZ2UocG9zaXRpb24ucG9zaXRpb25DaGFuZ2VzKTtcblxuICAgICAgICAgICAgaWYgKHRoaXMuZmlsbENvbnRyb2xNb2RlKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fbGlzdGVuT25SZXNpemUoKTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgY29uc3QgcHJldlN0YXRlID0gdGhpcy5pc09wZW47XG4gICAgICAgICAgICB0aGlzLmlzT3BlbiA9IHRydWU7XG4gICAgICAgICAgICBpZiAocHJldlN0YXRlICE9PSB0aGlzLmlzT3Blbikge1xuICAgICAgICAgICAgICAgIHRoaXMuaXNPcGVuQ2hhbmdlLmVtaXQodGhpcy5pc09wZW4pO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB0aGlzLl9kZXRlY3RDaGFuZ2VzKCk7XG5cbiAgICAgICAgICAgIHRoaXMuX2xpc3Rlbk9uQ2xvc2UoKTtcbiAgICAgICAgICAgIHRoaXMuX2xpc3Rlbk9uT3V0Q2xpY2tzKCk7XG4gICAgICAgICAgICB0aGlzLl9mb2N1c0ZpcnN0VGFiYmFibGVFbGVtZW50KCk7XG4gICAgICAgICAgICB0aGlzLl9vbkxvYWQubmV4dCh0aGlzLl9nZXRQb3BvdmVyQm9keSgpLl9lbGVtZW50UmVmKTtcbiAgICAgICAgICAgIHRoaXMuX292ZXJsYXlSZWYudXBkYXRlUG9zaXRpb24oKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBtZXRob2QgdXBkYXRpbmcgdGVtcGxhdGUgb3IgdGV4dCBpbnNpZGUgcmVuZGVyZWQgUG9wb3ZlckJvZHkgKi9cbiAgICB1cGRhdGVDb250ZW50KHN0cmluZ0NvbnRlbnQ6IHN0cmluZywgdGVtcGxhdGVDb250ZW50OiBUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN0cmluZ0NvbnRlbnQgPSBzdHJpbmdDb250ZW50O1xuICAgICAgICB0aGlzLnRlbXBsYXRlQ29udGVudCA9IHRlbXBsYXRlQ29udGVudDtcbiAgICAgICAgaWYgKHRoaXMuX2dldFBvcG92ZXJCb2R5KCkpIHtcbiAgICAgICAgICAgIHRoaXMuX3Bhc3NWYXJpYWJsZXNUb0JvZHkoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBUb2dnbGVzIHRoZSBwb3BvdmVyIG9wZW4gc3RhdGUgKi9cbiAgICB0b2dnbGUob3BlbkFjdGlvbiA9IHRydWUsIGNsb3NlQWN0aW9uID0gdHJ1ZSk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5pc09wZW4pIHtcbiAgICAgICAgICAgIGNsb3NlQWN0aW9uICYmIHRoaXMuY2xvc2UoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIG9wZW5BY3Rpb24gJiYgdGhpcy5vcGVuKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBNZXRob2QgY2FsbGVkIHRvIGNoYW5nZSBwb3NpdGlvbiBvZiBwb3BvdmVyLFxuICAgICAqIHJlY29tbWVuZGVkIHRvIGJlIHVzZWQgb25seSB3aGVuIHBvcG92ZXIgaXMgb3BlbmVkLCBvdGhlcndpc2UgY2hhbmdlIHBvc2l0aW9uIG9yIGNka1BsYWNlbWVudFxuICAgICAqL1xuICAgIGFwcGx5TmV3UG9zaXRpb24ocG9zaXRpb25zOiBDb25uZWN0ZWRQb3NpdGlvbltdKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IHJlZlBvc2l0aW9uID0gdGhpcy5fZ2V0UG9zaXRpb25TdHJhdGVneShwb3NpdGlvbnMpO1xuICAgICAgICB0aGlzLl9saXN0ZW5Gb3JQb3NpdGlvbkNoYW5nZShyZWZQb3NpdGlvbi5wb3NpdGlvbkNoYW5nZXMpO1xuICAgICAgICB0aGlzLl9vdmVybGF5UmVmLnVwZGF0ZVBvc2l0aW9uU3RyYXRlZ3kocmVmUG9zaXRpb24pO1xuICAgIH1cblxuICAgIC8qKiBNZXRob2QgY2FsbGVkIHRvIHJlZnJlc2ggcG9zaXRpb24gb2Ygb3BlbmVkIHBvcG92ZXIgKi9cbiAgICByZWZyZXNoUG9zaXRpb24oKTogdm9pZCB7XG4gICAgICAgIGlmICh0aGlzLl9vdmVybGF5UmVmKSB7XG4gICAgICAgICAgICB0aGlzLl9vdmVybGF5UmVmLnVwZGF0ZVBvc2l0aW9uKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogRXF1aXZhbGVudCBmb3IgbmdPbkRlc3Ryb3kgbWV0aG9kLCB3aGV0aGVyIGNvbXBvbmVudCBpcyBkZXN0cm95ZWQsIHRoaXMgbWV0aG9kIHNob3VsZCBiZSBjYWxsZWQgKi9cbiAgICBvbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX29uRGVzdHJveSQubmV4dCgpO1xuICAgICAgICB0aGlzLl9vbkRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgICAgIHRoaXMuX3JlbW92ZVRyaWdnZXJMaXN0ZW5lcnMoKTtcbiAgICAgICAgaWYgKHRoaXMuX292ZXJsYXlSZWYpIHtcbiAgICAgICAgICAgIHRoaXMuX292ZXJsYXlSZWYuZGV0YWNoKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBNZXRob2QgdGhhdCBzZXRzIGNvbmZpZ3VyYXRpb24vb3B0aW9ucywgaXQgZGV0ZWN0cyBpZiB0aGVyZSBpcyBzb21ldGhpbmcgY2hhbmdlZCBhbmQgb3ZlcndyaXRlcyB0aGVtXG4gICAgICovXG4gICAgcmVmcmVzaENvbmZpZ3VyYXRpb24oY29uZmlnOiBCYXNlUG9wb3ZlckNsYXNzKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IG9ubHlDaGFuZ2VkID0gT2JqZWN0LmtleXMobmV3IEJhc2VQb3BvdmVyQ2xhc3MoKSkuZmlsdGVyKChrZXkpID0+IHRoaXNba2V5XSAhPT0gY29uZmlnW2tleV0pO1xuXG4gICAgICAgIGlmIChvbmx5Q2hhbmdlZC5pbmNsdWRlcygnaXNPcGVuJykpIHtcbiAgICAgICAgICAgIGlmIChjb25maWcuaXNPcGVuKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5vcGVuKCk7XG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8qKiBUT0RPXG4gICAgICAgICAqIFRoaXMgb3ZlcnJpZGluZyBpcyBkYW5nZXJvdXMgdGhpbmcgYW5kIGxlYWRzIHRvIHVuZXhwZWN0ZWQgYmVoYXZpb3JcbiAgICAgICAgICogV2UgaGF2ZSB0byBhdm9pZCB0aGlzLlxuICAgICAgICAgKi9cbiAgICAgICAgb25seUNoYW5nZWQuZm9yRWFjaCgoa2V5KSA9PiAodGhpc1trZXldID0gY29uZmlnW2tleV0pKTtcblxuICAgICAgICBpZiAob25seUNoYW5nZWQuaW5jbHVkZXMoJ3RyaWdnZXJzJykpIHtcbiAgICAgICAgICAgIHRoaXMuX3JlZnJlc2hUcmlnZ2VyTGlzdGVuZXJzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBUaGlzIG1ldGhvZCBpcyBpbnRlbmRlZCB0byBiZSBjYWxsZWQgaW4gb3JkZXJcbiAgICAgKiB0byBwb3N0cG9uZSB0aGUgbWFpbiBmdW5jdGlvbmFsaXR5IGJ1dCBiZSBhYmxlXG4gICAgICogdG8gZW5hYmxlIGl0IGJhY2sgaW4gdGhlIGZ1dHVyZSBieSBpbml0aWFsaXNlKClcbiAgICAgKi9cbiAgICBkZWFjdGl2YXRlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9yZW1vdmVUcmlnZ2VyTGlzdGVuZXJzKCk7XG4gICAgfVxuXG4gICAgLyoqIFJlZnJlc2ggbGlzdGVuZXJzIG9uIHRyaWdnZXIgZWxlbWVudCBldmVudHMgKi9cbiAgICBfcmVmcmVzaFRyaWdnZXJMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5fdHJpZ2dlckVsZW1lbnQpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3JlbW92ZVRyaWdnZXJMaXN0ZW5lcnMoKTtcblxuICAgICAgICBpZiAodGhpcy50cmlnZ2Vycz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICB0aGlzLnRyaWdnZXJzLmZvckVhY2goKHRyaWdnZXIpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCB0cmlnZ2VyTmFtZSA9IHR5cGVvZiB0cmlnZ2VyID09PSAnc3RyaW5nJyA/IHRyaWdnZXIgOiB0cmlnZ2VyLnRyaWdnZXI7XG4gICAgICAgICAgICAgICAgdGhpcy5fZXZlbnRSZWYucHVzaChcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5fcmVuZGVyZXIubGlzdGVuKHRoaXMuX3RyaWdnZXJFbGVtZW50Lm5hdGl2ZUVsZW1lbnQsIHRyaWdnZXJOYW1lLCAoZXZlbnQ6IEV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBjbG9zZUFjdGlvbiA9IHR5cGVvZiB0cmlnZ2VyICE9PSAnb2JqZWN0JyB8fCAhIXRyaWdnZXIuY2xvc2VBY3Rpb247XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBvcGVuQWN0aW9uID0gdHlwZW9mIHRyaWdnZXIgIT09ICdvYmplY3QnIHx8ICEhdHJpZ2dlci5vcGVuQWN0aW9uO1xuICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy50b2dnbGUob3BlbkFjdGlvbiwgY2xvc2VBY3Rpb24pO1xuXG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mIHRyaWdnZXIgPT09ICdvYmplY3QnICYmIHRyaWdnZXIuc3RvcFByb3BhZ2F0aW9uKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnQuc3RvcEltbWVkaWF0ZVByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9nZXRPdmVybGF5Q29uZmlnKHBvc2l0aW9uOiBGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uU3RyYXRlZ3kpOiBPdmVybGF5Q29uZmlnIHtcbiAgICAgICAgY29uc3QgZGlyZWN0aW9uID0gdGhpcy5fZ2V0RGlyZWN0aW9uKCk7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBPdmVybGF5Q29uZmlnKHtcbiAgICAgICAgICAgIGRpcmVjdGlvbixcbiAgICAgICAgICAgIGRpc3Bvc2VPbk5hdmlnYXRpb246IHRoaXMuY2xvc2VPbk5hdmlnYXRpb24sXG4gICAgICAgICAgICBwb3NpdGlvblN0cmF0ZWd5OiBwb3NpdGlvbixcbiAgICAgICAgICAgIHNjcm9sbFN0cmF0ZWd5OiB0aGlzLnNjcm9sbFN0cmF0ZWd5IHx8IHRoaXMuX292ZXJsYXkuc2Nyb2xsU3RyYXRlZ2llcy5yZXBvc2l0aW9uKClcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9saXN0ZW5PblJlc2l6ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdmlld3BvcnRSdWxlclxuICAgICAgICAgICAgLmNoYW5nZSgxNSlcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLl9yZWZyZXNoJCksIHN0YXJ0V2l0aCgxKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5fYXBwbHlXaWR0aE92ZXJsYXkoKSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9nZXREaXJlY3Rpb24oKTogJ3J0bCcgfCAnbHRyJyB7XG4gICAgICAgIGlmICghdGhpcy5fcnRsU2VydmljZSkge1xuICAgICAgICAgICAgcmV0dXJuICdsdHInO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuX3J0bFNlcnZpY2UucnRsLmdldFZhbHVlKCkgPyAncnRsJyA6ICdsdHInO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZ2V0UG9zaXRpb25TdHJhdGVneShmb3JjZWRQb3NpdGlvbnM/OiBDb25uZWN0ZWRQb3NpdGlvbltdKTogRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5IHtcbiAgICAgICAgbGV0IHJlc3VsdFBvc2l0aW9uID0gZm9yY2VkUG9zaXRpb25zID8gZm9yY2VkUG9zaXRpb25zIDogdGhpcy5fZ2V0UG9zaXRpb25zKCk7XG5cbiAgICAgICAgaWYgKCF0aGlzLmZpeGVkUG9zaXRpb24pIHtcbiAgICAgICAgICAgIHJlc3VsdFBvc2l0aW9uID0gcmVzdWx0UG9zaXRpb24uY29uY2F0KEdldERlZmF1bHRQb3NpdGlvbihyZXN1bHRQb3NpdGlvbikpO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuX292ZXJsYXlcbiAgICAgICAgICAgIC5wb3NpdGlvbigpXG4gICAgICAgICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyh0aGlzLmFwcGVuZFRvIHx8IHRoaXMuX3RyaWdnZXJFbGVtZW50KVxuICAgICAgICAgICAgLndpdGhQb3NpdGlvbnMocmVzdWx0UG9zaXRpb24pXG4gICAgICAgICAgICAud2l0aFB1c2goZmFsc2UpO1xuICAgIH1cblxuICAgIC8qKiByZW1vdmUgbGlzdGVuZXJzIGZyb20gdHJpZ2dlciBlbGVtZW50IGV2ZW50cyAqL1xuICAgIHByaXZhdGUgX3JlbW92ZVRyaWdnZXJMaXN0ZW5lcnMoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2V2ZW50UmVmLmZvckVhY2goKGV2ZW50KSA9PiBldmVudCgpKTtcbiAgICAgICAgdGhpcy5fZXZlbnRSZWYgPSBbXTtcbiAgICB9XG5cbiAgICAvKiogQXR0YWNoIHRlbXBsYXRlIGNvbnRhaW5pbmcgcG9wb3ZlciBib2R5IHRvIG92ZXJsYXkgKi9cbiAgICBwcml2YXRlIF9hdHRhY2hUZW1wbGF0ZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fcGFzc1ZhcmlhYmxlc1RvQm9keSgpO1xuICAgICAgICBpZiAodGhpcy5fdGVtcGxhdGVEYXRhKSB7XG4gICAgICAgICAgICB0aGlzLl9vdmVybGF5UmVmLmF0dGFjaChuZXcgVGVtcGxhdGVQb3J0YWwodGhpcy5fdGVtcGxhdGVEYXRhLnRlbXBsYXRlLCB0aGlzLl90ZW1wbGF0ZURhdGEuY29udGFpbmVyKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQ3JlYXRlIFBvcG92ZXJCb2R5Q29tcG9uZW50IGFuZCBhdHRhY2ggaXQgaW50byBvdmVybGF5ICovXG4gICAgcHJpdmF0ZSBfYXR0YWNoQm9keUNvbXBvbmVudCgpOiB2b2lkIHtcbiAgICAgICAgY29uc3Qgb3ZlcmxheSA9IHRoaXMuX292ZXJsYXlSZWYuYXR0YWNoKG5ldyBDb21wb25lbnRQb3J0YWwoUG9wb3ZlckJvZHlDb21wb25lbnQsIG51bGwsIHRoaXMuX2luamVjdG9yKSk7XG4gICAgICAgIHRoaXMuX3BvcG92ZXJCb2R5ID0gb3ZlcmxheS5pbnN0YW5jZTtcbiAgICAgICAgdGhpcy5fcGFzc1ZhcmlhYmxlc1RvQm9keSgpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfbGlzdGVuRm9yUG9zaXRpb25DaGFuZ2UocG9zaXRpb25DaGFuZ2U6IE9ic2VydmFibGU8Q29ubmVjdGVkT3ZlcmxheVBvc2l0aW9uQ2hhbmdlPik6IHZvaWQge1xuICAgICAgICB0aGlzLl9wbGFjZW1lbnRSZWZyZXNoJC5uZXh0KCk7XG4gICAgICAgIHBvc2l0aW9uQ2hhbmdlXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fcGxhY2VtZW50UmVmcmVzaCQpLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLl9vbkRlc3Ryb3kkKSxcbiAgICAgICAgICAgICAgICBmaWx0ZXIoKCkgPT4gIXRoaXMubm9BcnJvdyAmJiAhIXRoaXMuX2dldFBvcG92ZXJCb2R5KCkpLFxuICAgICAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKChwcmV2aW91cywgY3VycmVudCkgPT4gcHJldmlvdXMuY29ubmVjdGlvblBhaXIgPT09IGN1cnJlbnQuY29ubmVjdGlvblBhaXIpXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChldmVudCkgPT4gdGhpcy5fZ2V0UG9wb3ZlckJvZHkoKS5fc2V0QXJyb3dTdHlsZXMoZXZlbnQuY29ubmVjdGlvblBhaXIsIHRoaXMuX2dldERpcmVjdGlvbigpKSk7XG4gICAgfVxuXG4gICAgLyoqIFN1YnNjcmliZSB0byBjbG9zZSBldmVudHMgZnJvbSBDREsgT3ZlcmxheSwgdG8gdGhyb3cgcHJvcGVyIGV2ZW50cywgY2hhbmdlIHZhbHVlcyAqL1xuICAgIHByaXZhdGUgX2xpc3Rlbk9uQ2xvc2UoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNsb3NlRXZlbnRzJCA9IG1lcmdlKHRoaXMuX292ZXJsYXlSZWYuZGV0YWNobWVudHMoKSwgdGhpcy5fZ2V0UG9wb3ZlckJvZHkoKS5vbkNsb3NlKTtcblxuICAgICAgICBjbG9zZUV2ZW50cyQucGlwZSh0YWtlVW50aWwodGhpcy5fcmVmcmVzaCQpKS5zdWJzY3JpYmUoKCkgPT4gdGhpcy5jbG9zZSgpKTtcbiAgICB9XG5cbiAgICAvKiogTGlzdGVuZXIgZm9yIGNsaWNrIGV2ZW50cyAqL1xuICAgIHByaXZhdGUgX2xpc3Rlbk9uT3V0Q2xpY2tzKCk6IHZvaWQge1xuICAgICAgICBjb25zdCBjbG9zZUV2ZW50cyQgPSBtZXJnZSh0aGlzLl9vdmVybGF5UmVmLmJhY2tkcm9wQ2xpY2soKSwgdGhpcy5fb3ZlcmxheVJlZi5fb3V0c2lkZVBvaW50ZXJFdmVudHMpO1xuXG4gICAgICAgIGNsb3NlRXZlbnRzJFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgZmlsdGVyKChldmVudCkgPT4gdGhpcy5fc2hvdWxkQ2xvc2UoZXZlbnQpKSxcbiAgICAgICAgICAgICAgICB0YWtlVW50aWwodGhpcy5fcmVmcmVzaCQpXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHRoaXMuY2xvc2UoKSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9zaG91bGRDbG9zZShldmVudDogTW91c2VFdmVudCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gdGhpcy5pc09wZW4gJiYgdGhpcy5jbG9zZU9uT3V0c2lkZUNsaWNrICYmICF0aGlzLl90cmlnZ2VyQ29udGFpbnNUYXJnZXQoZXZlbnQpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZ2V0RXZlbnRUYXJnZXQoZXZlbnQ6IEV2ZW50KTogRXZlbnRUYXJnZXQgfCBudWxsIHtcbiAgICAgICAgcmV0dXJuIGV2ZW50LmNvbXBvc2VkUGF0aCA/IGV2ZW50LmNvbXBvc2VkUGF0aCgpWzBdIDogZXZlbnQudGFyZ2V0O1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfdHJpZ2dlckNvbnRhaW5zVGFyZ2V0KGV2ZW50OiBFdmVudCk6IGJvb2xlYW4ge1xuICAgICAgICBjb25zdCB0cmlnZ2VyRWxlbWVudCA9IHRoaXMuX3RyaWdnZXJFbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XG4gICAgICAgIHJldHVybiB0cmlnZ2VyRWxlbWVudC5jb250YWlucyh0aGlzLl9nZXRFdmVudFRhcmdldChldmVudCkpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZ2V0UG9zaXRpb25zKCk6IENvbm5lY3RlZFBvc2l0aW9uW10ge1xuICAgICAgICBpZiAodGhpcy5jZGtQb3NpdGlvbnMpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmNka1Bvc2l0aW9ucztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLnBsYWNlbWVudCkge1xuICAgICAgICAgICAgcmV0dXJuIFtQb3BvdmVyUG9zaXRpb24uZ2V0Q2RrUGxhY2VtZW50KHRoaXMucGxhY2VtZW50LCB0aGlzLl9nZXREaXJlY3Rpb24oKSldO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIFtdO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfYXBwbHlXaWR0aE92ZXJsYXkoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IG1heFdpZHRoTGltaXQgPSB0aGlzLm1heFdpZHRoID8gdGhpcy5tYXhXaWR0aCA6IE1BWF9CT0RZX1NJWkU7XG4gICAgICAgIGNvbnN0IHdpZHRoID0gTWF0aC5taW4odGhpcy5fZ2V0VHJpZ2dlcldpZHRoKCksIG1heFdpZHRoTGltaXQpO1xuICAgICAgICBpZiAodGhpcy5maWxsQ29udHJvbE1vZGUgPT09ICdhdC1sZWFzdCcpIHtcbiAgICAgICAgICAgIHRoaXMuX2dldFBvcG92ZXJCb2R5KCkuX3BvcG92ZXJCb2R5TWluV2lkdGggPSB3aWR0aDtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLmZpbGxDb250cm9sTW9kZSA9PT0gJ2VxdWFsJykge1xuICAgICAgICAgICAgdGhpcy5fZ2V0UG9wb3ZlckJvZHkoKS5fcG9wb3ZlckJvZHlXaWR0aCA9IHdpZHRoO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuX2RldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3Bhc3NWYXJpYWJsZXNUb0JvZHkoKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGJvZHkgPSB0aGlzLl9nZXRQb3BvdmVyQm9keSgpO1xuICAgICAgICBib2R5LnRleHQgPSB0aGlzLnN0cmluZ0NvbnRlbnQ7XG4gICAgICAgIGJvZHkuX2FkZGl0aW9uYWxCb2R5Q2xhc3MgPSB0aGlzLmFkZGl0aW9uYWxCb2R5Q2xhc3M7XG4gICAgICAgIGJvZHkuX2ZvY3VzVHJhcHBlZCA9IHRoaXMuZm9jdXNUcmFwcGVkO1xuICAgICAgICBib2R5Ll9tYXhXaWR0aCA9IHRoaXMubWF4V2lkdGg7XG4gICAgICAgIGJvZHkuX25vQXJyb3cgPSB0aGlzLm5vQXJyb3c7XG4gICAgICAgIGJvZHkuX2ZvY3VzQXV0b0NhcHR1cmUgPSB0aGlzLmZvY3VzQXV0b0NhcHR1cmU7XG4gICAgICAgIGJvZHkuX2Rpc2FibGVTY3JvbGxiYXIgPSB0aGlzLmRpc2FibGVTY3JvbGxiYXI7XG4gICAgICAgIGJvZHkuX3RhYmJhYmxlU2Nyb2xsYmFyID0gdGhpcy50YWJiYWJsZVNjcm9sbGJhcjtcbiAgICAgICAgYm9keS5fdGVtcGxhdGVUb0Rpc3BsYXkgPSB0aGlzLnRlbXBsYXRlQ29udGVudCE7XG4gICAgICAgIGJvZHkuX2Nsb3NlT25Fc2NhcGVLZXkgPSB0aGlzLmNsb3NlT25Fc2NhcGVLZXk7XG4gICAgICAgIHRoaXMuX2RldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2dldFRyaWdnZXJXaWR0aCgpOiBudW1iZXIge1xuICAgICAgICByZXR1cm4gdGhpcy5fdHJpZ2dlckVsZW1lbnQubmF0aXZlRWxlbWVudC5vZmZzZXRXaWR0aDtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2dldFBvcG92ZXJCb2R5KCk6IFBvcG92ZXJCb2R5Q29tcG9uZW50IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3RlbXBsYXRlRGF0YT8ucG9wb3ZlckJvZHkgfHwgdGhpcy5fcG9wb3ZlckJvZHk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9kZXRlY3RDaGFuZ2VzKCk6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5fZ2V0UG9wb3ZlckJvZHkoKSkge1xuICAgICAgICAgICAgdGhpcy5fZ2V0UG9wb3ZlckJvZHkoKS5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2ZvY3VzRmlyc3RUYWJiYWJsZUVsZW1lbnQoZm9jdXNMYXN0RWxlbWVudCA9IHRydWUpOiB2b2lkIHtcbiAgICAgICAgaWYgKGZvY3VzTGFzdEVsZW1lbnQgJiYgdGhpcy5mb2N1c0F1dG9DYXB0dXJlKSB7XG4gICAgICAgICAgICB0aGlzLl9sYXN0QWN0aXZlRWxlbWVudCA9IDxIVE1MRWxlbWVudD5kb2N1bWVudC5hY3RpdmVFbGVtZW50O1xuICAgICAgICAgICAgdGhpcy5fZ2V0UG9wb3ZlckJvZHkoKT8uX2ZvY3VzRmlyc3RUYWJiYWJsZUVsZW1lbnQoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZm9jdXNMYXN0QWN0aXZlRWxlbWVudEJlZm9yZU9wZW4oZm9jdXNMYXN0RWxlbWVudCA9IHRydWUpOiB2b2lkIHtcbiAgICAgICAgaWYgKGZvY3VzTGFzdEVsZW1lbnQgJiYgdGhpcy5mb2N1c0F1dG9DYXB0dXJlICYmIHRoaXMuX2xhc3RBY3RpdmVFbGVtZW50KSB7XG4gICAgICAgICAgICB0aGlzLl9sYXN0QWN0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
@@ -163,10 +163,10 @@ export class ProductSwitchBodyComponent {
163
163
  }
164
164
  }
165
165
  ProductSwitchBodyComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: ProductSwitchBodyComponent, deps: [{ token: i1.ViewportRuler }, { token: i2.RtlService, optional: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
166
- ProductSwitchBodyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: ProductSwitchBodyComponent, selector: "fd-product-switch-body", inputs: { dragAndDropEnabled: "dragAndDropEnabled", products: "products", forceListMode: "forceListMode" }, outputs: { productsChange: "productsChange", itemClicked: "itemClicked" }, ngImport: i0, template: "<div\n class=\"fd-product-switch__body\"\n [class.fd-product-switch__body--col-3]=\"_isSmallMode() && !_isListMode()\"\n [class.fd-product-switch__body--mobile]=\"_isListMode()\"\n>\n <ul\n fd-dnd-list\n class=\"fd-product-switch__list\"\n [items]=\"products\"\n [gridMode]=\"!_isListMode()\"\n (itemDropped)=\"_productSwitchItemsChangeHandle($event)\"\n >\n <li\n fd-dnd-item\n *ngFor=\"let product of products\"\n tabindex=\"0\"\n class=\"fd-product-switch__item\"\n [class.selected]=\"product.selected\"\n (keydown)=\"_keyDownHandle($event)\"\n (click)=\"_itemClick(product, $event)\"\n [draggable]=\"!product.disabledDragAndDrop && dragAndDropEnabled\"\n [stickInPlace]=\"!!product.stickToPosition\"\n >\n <i\n role=\"presentation\"\n class=\"fd-product-switch__icon\"\n [class]=\"product.icon ? 'sap-icon--' + product.icon : ''\"\n ></i>\n <div class=\"fd-product-switch__text\">\n <div class=\"fd-product-switch__title\">{{ product.title }}</div>\n <div *ngIf=\"product.subtitle\" class=\"fd-product-switch__subtitle\">{{ product.subtitle }}</div>\n </div>\n </li>\n </ul>\n</div>\n", styles: ["/*!\n * Fundamental Library Styles v0.26.0-rc.27\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.drag-placeholder{opacity:.3;position:absolute}/*!\n.fd-product-switch\n*/.fd-product-switch{-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;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-product-switch:after,.fd-product-switch:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__list{-webkit-box-sizing:border-box;-ms-flex-wrap:wrap;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;flex-wrap:wrap;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:47rem}.fd-product-switch__list:after,.fd-product-switch__list:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__item{-webkit-box-sizing:border-box;-webkit-box-align:center;-ms-flex-align:center;-webkit-box-flex:1;-ms-flex:1 0 25%;-webkit-box-shadow:var(--fdProductSwitch_Shadow);align-items:center;background-color:var(--sapList_Background);border:0;border-radius:var(--sapElement_BorderCornerRadius);box-shadow:var(--fdProductSwitch_Shadow);box-sizing:border-box;color:var(--sapTextColor);display:flex;flex:1 0 25%;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:7rem;line-height:var(--sapContent_LineHeight);margin:0 .5rem .5rem 0;max-width:11.25rem;padding:.5rem;text-align:center}.fd-product-switch__item:after,.fd-product-switch__item:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__item .fd-product-switch__title:not(:last-child){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-product-switch__item .fd-product-switch__title:after,.fd-product-switch__item .fd-product-switch__title:before{background-color:var(--sapList_Background)}.fd-product-switch__item.is-hover,.fd-product-switch__item:hover{background-color:var(--sapList_Hover_Background);border:var(--fdProductSwitch_Border);cursor:pointer}.fd-product-switch__item.is-hover .fd-product-switch__title:after,.fd-product-switch__item.is-hover .fd-product-switch__title:before,.fd-product-switch__item:hover .fd-product-switch__title:after,.fd-product-switch__item:hover .fd-product-switch__title:before{background-color:var(--sapList_Hover_Background)}.fd-product-switch__item.is-active,.fd-product-switch__item:active{background-color:var(--sapList_Active_Background);border:var(--fdProductSwitch_Border)}.fd-product-switch__item.is-active.is-focus,.fd-product-switch__item.is-active:focus,.fd-product-switch__item:active.is-focus,.fd-product-switch__item:active:focus{outline-color:var(--sapContent_FocusColor);outline-color:var(--sapContent_ContrastFocusColor);outline-offset:-.1875rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-product-switch__item.is-active .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__item.is-active .fd-product-switch__icon[class*=sap-icon],.fd-product-switch__item.is-active .fd-product-switch__subtitle,.fd-product-switch__item.is-active .fd-product-switch__title,.fd-product-switch__item:active .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__item:active .fd-product-switch__icon[class*=sap-icon],.fd-product-switch__item:active .fd-product-switch__subtitle,.fd-product-switch__item:active .fd-product-switch__title{color:var(--sapList_Active_TextColor)}.fd-product-switch__item.is-active .fd-product-switch__title:after,.fd-product-switch__item.is-active .fd-product-switch__title:before,.fd-product-switch__item.is-active.is-hover .fd-product-switch__title:after,.fd-product-switch__item.is-active.is-hover .fd-product-switch__title:before,.fd-product-switch__item.is-active:hover .fd-product-switch__title:after,.fd-product-switch__item.is-active:hover .fd-product-switch__title:before,.fd-product-switch__item:active .fd-product-switch__title:after,.fd-product-switch__item:active .fd-product-switch__title:before,.fd-product-switch__item:active.is-hover .fd-product-switch__title:after,.fd-product-switch__item:active.is-hover .fd-product-switch__title:before,.fd-product-switch__item:active:hover .fd-product-switch__title:after,.fd-product-switch__item:active:hover .fd-product-switch__title:before{background-color:var(--sapList_Active_Background)}.fd-product-switch__item.selected{border:.125rem solid var(--sapList_SelectionBorderColor)}.fd-product-switch__item.selected,.fd-product-switch__item.selected .fd-product-switch__title:after,.fd-product-switch__item.selected .fd-product-switch__title:before{background-color:var(--sapList_SelectionBackgroundColor)}.fd-product-switch__item.selected.is-hover,.fd-product-switch__item.selected.is-hover .fd-product-switch__title:after,.fd-product-switch__item.selected.is-hover .fd-product-switch__title:before,.fd-product-switch__item.selected:hover,.fd-product-switch__item.selected:hover .fd-product-switch__title:after,.fd-product-switch__item.selected:hover .fd-product-switch__title:before{background-color:var(--sapList_Hover_SelectionBackground)}.fd-product-switch__item.selected.is-active,.fd-product-switch__item.selected.is-active .fd-product-switch__title:after,.fd-product-switch__item.selected.is-active .fd-product-switch__title:before,.fd-product-switch__item.selected:active,.fd-product-switch__item.selected:active .fd-product-switch__title:after,.fd-product-switch__item.selected:active .fd-product-switch__title:before{background-color:var(--sapList_Active_Background)}.fd-product-switch__item.is-focus,.fd-product-switch__item:focus{outline-color:var(--sapContent_FocusColor);outline-offset:-.1875rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-product-switch__item.dragged{box-shadow:var(--sapContent_Shadow2);cursor:grabbing}.fd-product-switch__item.dragged,.fd-product-switch__item.dragged:active,.fd-product-switch__item.dragged:hover{background-color:var(--sapList_Background)}.fd-product-switch__item.dragged:active .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__item.dragged:active .fd-product-switch__icon[class*=sap-icon],.fd-product-switch__item.dragged:hover .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__item.dragged:hover .fd-product-switch__icon[class*=sap-icon]{color:var(--sapContent_IconColor)}.fd-product-switch__item.dragged:active .fd-product-switch__title,.fd-product-switch__item.dragged:hover .fd-product-switch__title{color:var(--sapGroup_TitleTextColor)}.fd-product-switch__item.dragged:active .fd-product-switch__subtitle,.fd-product-switch__item.dragged:hover .fd-product-switch__subtitle{color:var(--sapContent_LabelColor)}.fd-product-switch__item.dragged.selected{-webkit-box-shadow:var(--sapContent_Shadow2);border:none;box-shadow:var(--sapContent_Shadow2)}.fd-product-switch__item.dragged.is-hover,.fd-product-switch__item.dragged:hover{outline:none}.fd-product-switch__icon [class*=sap-icon],.fd-product-switch__icon[class*=sap-icon]{-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background:inherit;border-radius:inherit;color:inherit;color:var(--sapContent_IconColor);display:flex;font-size:inherit;font-size:1.5rem;justify-content:center;line-height:1;margin-bottom:.5rem;min-height:3rem;min-width:3rem}.fd-product-switch__text{-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;line-height:var(--sapContent_LineHeight);margin:0;max-height:2.5rem;overflow:hidden;padding:0;text-shadow:var(--fdProductSwitch_Text_Shadow);width:100%}.fd-product-switch__text:after,.fd-product-switch__text:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapGroup_TitleTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontHeader6Size);font-weight:400;line-height:var(--sapContent_LineHeight);line-height:1.25rem;margin:0;max-height:2.5rem;padding:0;white-space:normal;z-index:1}.fd-product-switch__title:after,.fd-product-switch__title:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__title:last-child{-webkit-box-orient:vertical;-webkit-line-clamp:2;display:-webkit-box;margin-bottom:0;margin-right:0;overflow:hidden;text-overflow:ellipsis;white-space:normal}.fd-product-switch__title:before{left:9.4rem;width:1rem;z-index:2}.fd-product-switch__title:after{left:9.4rem;width:1rem;z-index:3}.fd-product-switch__subtitle{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontSmallSize);font-weight:400;line-height:var(--sapContent_LineHeight);line-height:1.25rem;margin:0;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-product-switch__subtitle:after,.fd-product-switch__subtitle:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__body{-webkit-box-sizing:border-box;background-color:var(--sapList_Background);border:0;border-radius:var(--sapElement_BorderCornerRadius);box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;max-height:calc(100vh - 76px);overflow-y:auto;padding:1.5rem .5rem 1rem 1rem;scrollbar-color:var(--fdScrollbar_Thumb_Color) var(--fdScrollbar_Track_Color);width:-moz-fit-content;width:fit-content}.fd-product-switch__body:after,.fd-product-switch__body:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__body.is-focus,.fd-product-switch__body:focus{outline:none;z-index:5}.fd-product-switch__body::-webkit-scrollbar{height:var(--fdScrollbar_Dimension);width:var(--fdScrollbar_Dimension)}.fd-product-switch__body::-webkit-scrollbar-corner,.fd-product-switch__body::-webkit-scrollbar-track{background-color:var(--fdScrollbar_Track_Color)}.fd-product-switch__body::-webkit-scrollbar-thumb{-webkit-box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color);background-color:transparent;border:var(--fdScrollbar_Thumb_Offset) solid transparent;border-radius:calc(var(--fdScrollbar_Thumb_Border_Radius) - var(--fdScrollbar_Thumb_Offset));box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color)}.fd-product-switch__body::-webkit-scrollbar-thumb:active,.fd-product-switch__body::-webkit-scrollbar-thumb:hover{box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Hover_Color)}.fd-product-switch__body--col-3 .fd-product-switch__list{width:35.25rem}.fd-product-switch__body--mobile{border-radius:0;max-width:100vw;overflow-x:hidden;padding:0;width:100%}.fd-product-switch__body--mobile .fd-product-switch__list{display:flex;flex-direction:column;width:100%}.fd-product-switch__body--mobile .fd-product-switch__item{-webkit-box-sizing:border-box;-webkit-box-flex:1;-ms-flex:auto;border:none;border-bottom:.0625rem solid var(--sapList_GroupHeaderBorderColor);border-radius:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex:auto;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;max-height:5rem;max-width:100%;padding:1rem;text-align:left}.fd-product-switch__body--mobile .fd-product-switch__item:after,.fd-product-switch__body--mobile .fd-product-switch__item:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__title:before{background-color:var(--sapTile_Background)}.fd-product-switch__body--mobile .fd-product-switch__item.is-hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.is-hover .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item:hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item:hover .fd-product-switch__title:before{background-color:var(--sapList_Hover_Background)}.fd-product-switch__body--mobile .fd-product-switch__item.is-active .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.is-active .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item:active .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item:active .fd-product-switch__title:before{background-color:var(--sapList_SelectionBorderColor)}.fd-product-switch__body--mobile .fd-product-switch__item.is-active.is-focus,.fd-product-switch__body--mobile .fd-product-switch__item.is-active:focus,.fd-product-switch__body--mobile .fd-product-switch__item:active.is-focus,.fd-product-switch__body--mobile .fd-product-switch__item:active:focus{outline-color:var(--sapContent_FocusColor);outline-color:var(--sapContent_ContrastFocusColor);outline-offset:-.1875rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-product-switch__body--mobile .fd-product-switch__item.selected{-webkit-box-shadow:none;border-bottom-color:var(--sapList_SelectionBorderColor);box-shadow:none}.fd-product-switch__body--mobile .fd-product-switch__item.selected .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected .fd-product-switch__title:before{background-color:var(--sapList_SelectionBorderColor)}.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-hover .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected:hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected:hover .fd-product-switch__title:before{background-color:var(--sapList_Hover_SelectionBackground)}.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active.is-hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active.is-hover .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active:hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active:hover .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active.is-hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active.is-hover .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active:hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active:hover .fd-product-switch__title:before{background-color:var(--sapList_Active_Background)}.fd-product-switch__body--mobile .fd-product-switch__item.is-focus,.fd-product-switch__body--mobile .fd-product-switch__item:focus{outline-color:var(--sapContent_FocusColor);outline-offset:-.1875rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__title:before{left:21.7rem;width:1rem;z-index:2}.fd-product-switch__body--mobile .fd-product-switch__text{-webkit-box-pack:justify;-ms-flex-pack:justify;display:flex;flex-direction:column;height:100%;justify-content:space-between}.fd-product-switch__body--mobile .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__body--mobile .fd-product-switch__icon[class*=sap-icon]{margin-bottom:0;margin-right:.75rem}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__icon[class*=sap-icon],[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__icon [class*=sap-icon],[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__icon[class*=sap-icon]{margin-left:.75rem;margin-right:0}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__text,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__text{align-items:flex-start}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__text .fd-product-switch__title:not(:last-child),[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__text .fd-product-switch__title:not(:last-child){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__text .fd-product-switch__title:not(:last-child):after,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__text .fd-product-switch__title:not(:last-child):after{display:none}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__text .fd-product-switch__title:not(:last-child):before,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__text .fd-product-switch__title:not(:last-child):before{display:inline-flex}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item .fd-product-switch__title:before,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__title:before{right:21.8rem;width:2rem}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item .fd-product-switch__subtitle,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__subtitle{line-height:1.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item .fd-product-switch__subtitle:before,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__subtitle:before{right:21.8rem;text-align:right;width:2rem;z-index:2}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item .fd-product-switch__subtitle:after,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__subtitle:after{display:none;z-index:3}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item.is-active .fd-product-switch__subtitle,.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item:active .fd-product-switch__subtitle,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item.is-active .fd-product-switch__subtitle,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item:active .fd-product-switch__subtitle{color:var(--sapList_Active_TextColor)}.fd-product-switch__list{position:relative}.fd-product-switch__item.cdk-drag-dragging{outline:none;cursor:grabbing;box-shadow:0 0 0 .0625rem #00000026,0 .625rem 1.875rem #0000004d}.fd-product-switch__body--mobile .fd-product-switch__item.cdk-drag-dragging{outline:none;box-shadow:0 0 0 .0625rem #00000026,0 .625rem 1.875rem #0000004d}.fd-dnd-item{position:relative}.fd-dnd-item.fd-dnd-on-drag{background-color:#fff;background-color:var(--sapList_Background, #fff);z-index:15}.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item .fd-product-switch__title:before,.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item .fd-product-switch__title:after{background-color:#fff;background-color:var(--sapList_Background, #fff)}.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item .fd-product-switch__icon{color:#0854a0;color:var(--sapContent_IconColor, #0854a0)}.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item .fd-product-switch__title{color:#32363a;color:var(--sapGroup_TitleTextColor, #32363a)}.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item .fd-product-switch__subtitle{color:#6a6d70;color:var(--sapContent_LabelColor, #6a6d70)}.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item:active,.fd-dnd-item.fd-dnd-on-drag.selected{background-color:#fff;background-color:var(--sapList_Background, #fff)}[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__title,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__subtitle{text-align:right}\n", ".cdk-drag-dragging{z-index:15;background-color:#fff;background-color:var(--sapList_Background, #fff);opacity:.8;transition:box-shadow .2s cubic-bezier(0,0,.2,1);box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.fd-replace-indicator{position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;border-width:.125rem;border-style:solid;background-color:transparent;border-color:#0854a0;border-color:var(--sapContent_DragAndDropActiveColor)}.fd-replace-indicator:before{content:\"\";display:block;position:absolute;width:100%;height:100%;top:0;left:0;background-color:#0854a0;background-color:var(--sapContent_DragAndDropActiveColor, #0854a0);opacity:.5}.cdk-drag{cursor:grab}.cdk-drag.cdk-drag-dragging{cursor:grabbing}.cdk-drag-dragging{outline:none;cursor:grabbing;box-shadow:0 0 0 .0625rem #00000026,0 .625rem 1.875rem #0000004d}.cdk-drag-disabled{cursor:default}.fd-dnd-placeholder{top:0;left:0;position:absolute;opacity:.3;z-index:-1}.fd-dnd-item{position:relative;cursor:grab}.fd-dnd-item.fd-dnd-on-drag{background-color:#fff;background-color:var(--sapList_Background, #fff);z-index:15;cursor:grabbing}.drop-area__line{z-index:9999;position:absolute;background:#0854a0;background:var(--sapContent_DragAndDropActiveColor, #0854a0)}.drop-area__line--vertical{top:0;height:calc(100% - .5rem);width:2px}.drop-area__line--vertical.after{right:.2rem}.drop-area__line--vertical.before{left:-.3rem}.drop-area__line--vertical:before{background-color:#fff;background-color:var(--sapList_Background, #fff);content:\"\";position:absolute;left:-.2rem;top:-.5rem;border-radius:50%;width:.5rem;height:.5rem;border-width:.125rem;border-style:solid;border-color:#0854a0;border-color:var(--sapContent_DragAndDropActiveColor, #0854a0)}.drop-area__line--horizontal{left:0;width:100%;height:2px}.drop-area__line--horizontal.before{top:0}.drop-area__line--horizontal.after{bottom:0}.drop-area__line--horizontal:before{background-color:#fff;background-color:var(--sapList_Background, #fff);content:\"\";position:absolute;left:0;top:-.2rem;border-radius:50%;width:.5rem;height:.5rem;border-width:.125rem;border-style:solid;border-color:#0854a0;border-color:var(--sapContent_DragAndDropActiveColor, #0854a0)}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DndItemDirective, selector: "[fd-dnd-item]", inputs: ["applyDragItemClass", "containerSelector", "stickInPlace", "draggable", "classWhenElementDragged"], outputs: ["moved", "released", "started"] }, { kind: "directive", type: i2.DndListDirective, selector: "[fd-dnd-list]", inputs: ["gridMode", "replaceMode", "items", "draggable"], outputs: ["itemsChange", "itemDropped"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
166
+ ProductSwitchBodyComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: ProductSwitchBodyComponent, selector: "fd-product-switch-body", inputs: { dragAndDropEnabled: "dragAndDropEnabled", products: "products", forceListMode: "forceListMode" }, outputs: { productsChange: "productsChange", itemClicked: "itemClicked" }, ngImport: i0, template: "<div\n class=\"fd-product-switch__body\"\n [class.fd-product-switch__body--col-3]=\"_isSmallMode() && !_isListMode()\"\n [class.fd-product-switch__body--mobile]=\"_isListMode()\"\n>\n <ul\n fd-dnd-list\n class=\"fd-product-switch__list\"\n [items]=\"products\"\n [gridMode]=\"!_isListMode()\"\n (itemDropped)=\"_productSwitchItemsChangeHandle($event)\"\n >\n <li\n fd-dnd-item\n *ngFor=\"let product of products\"\n tabindex=\"0\"\n class=\"fd-product-switch__item\"\n [class.selected]=\"product.selected\"\n (keydown)=\"_keyDownHandle($event)\"\n (click)=\"_itemClick(product, $event)\"\n [draggable]=\"!product.disabledDragAndDrop && dragAndDropEnabled\"\n [stickInPlace]=\"!!product.stickToPosition\"\n >\n <i\n role=\"presentation\"\n class=\"fd-product-switch__icon\"\n [class]=\"product.icon ? 'sap-icon--' + product.icon : ''\"\n ></i>\n <div class=\"fd-product-switch__text\">\n <div class=\"fd-product-switch__title\">{{ product.title }}</div>\n <div *ngIf=\"product.subtitle\" class=\"fd-product-switch__subtitle\">{{ product.subtitle }}</div>\n </div>\n </li>\n </ul>\n</div>\n", styles: ["/*!\n * Fundamental Library Styles v0.26.0-rc.41\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.drag-placeholder{opacity:.3;position:absolute}/*!\n.fd-product-switch\n*/.fd-product-switch{-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;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-product-switch:after,.fd-product-switch:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__list{-webkit-box-sizing:border-box;-ms-flex-wrap:wrap;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;flex-wrap:wrap;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:47rem}.fd-product-switch__list:after,.fd-product-switch__list:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__item{-webkit-box-sizing:border-box;-webkit-box-align:center;-ms-flex-align:center;-webkit-box-flex:1;-ms-flex:1 0 25%;-webkit-box-shadow:var(--fdProductSwitch_Shadow);align-items:center;background-color:var(--sapList_Background);border:0;border-radius:var(--sapElement_BorderCornerRadius);box-shadow:var(--fdProductSwitch_Shadow);box-sizing:border-box;color:var(--sapTextColor);display:flex;flex:1 0 25%;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:7rem;line-height:var(--sapContent_LineHeight);margin:0 .5rem .5rem 0;max-width:11.25rem;padding:.5rem;text-align:center}.fd-product-switch__item:after,.fd-product-switch__item:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__item .fd-product-switch__title:not(:last-child){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-product-switch__item .fd-product-switch__title:after,.fd-product-switch__item .fd-product-switch__title:before{background-color:var(--sapList_Background)}.fd-product-switch__item.is-hover,.fd-product-switch__item:hover{background-color:var(--sapList_Hover_Background);border:var(--fdProductSwitch_Border);cursor:pointer}.fd-product-switch__item.is-hover .fd-product-switch__title:after,.fd-product-switch__item.is-hover .fd-product-switch__title:before,.fd-product-switch__item:hover .fd-product-switch__title:after,.fd-product-switch__item:hover .fd-product-switch__title:before{background-color:var(--sapList_Hover_Background)}.fd-product-switch__item.is-active,.fd-product-switch__item:active{background-color:var(--sapList_Active_Background);border:var(--fdProductSwitch_Border)}.fd-product-switch__item.is-active.is-focus,.fd-product-switch__item.is-active:focus,.fd-product-switch__item:active.is-focus,.fd-product-switch__item:active:focus{outline-color:var(--sapContent_FocusColor);outline-color:var(--sapContent_ContrastFocusColor);outline-offset:-.1875rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-product-switch__item.is-active .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__item.is-active .fd-product-switch__icon[class*=sap-icon],.fd-product-switch__item.is-active .fd-product-switch__subtitle,.fd-product-switch__item.is-active .fd-product-switch__title,.fd-product-switch__item:active .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__item:active .fd-product-switch__icon[class*=sap-icon],.fd-product-switch__item:active .fd-product-switch__subtitle,.fd-product-switch__item:active .fd-product-switch__title{color:var(--sapList_Active_TextColor)}.fd-product-switch__item.is-active .fd-product-switch__title:after,.fd-product-switch__item.is-active .fd-product-switch__title:before,.fd-product-switch__item.is-active.is-hover .fd-product-switch__title:after,.fd-product-switch__item.is-active.is-hover .fd-product-switch__title:before,.fd-product-switch__item.is-active:hover .fd-product-switch__title:after,.fd-product-switch__item.is-active:hover .fd-product-switch__title:before,.fd-product-switch__item:active .fd-product-switch__title:after,.fd-product-switch__item:active .fd-product-switch__title:before,.fd-product-switch__item:active.is-hover .fd-product-switch__title:after,.fd-product-switch__item:active.is-hover .fd-product-switch__title:before,.fd-product-switch__item:active:hover .fd-product-switch__title:after,.fd-product-switch__item:active:hover .fd-product-switch__title:before{background-color:var(--sapList_Active_Background)}.fd-product-switch__item.selected{border:.125rem solid var(--sapList_SelectionBorderColor)}.fd-product-switch__item.selected,.fd-product-switch__item.selected .fd-product-switch__title:after,.fd-product-switch__item.selected .fd-product-switch__title:before{background-color:var(--sapList_SelectionBackgroundColor)}.fd-product-switch__item.selected.is-hover,.fd-product-switch__item.selected.is-hover .fd-product-switch__title:after,.fd-product-switch__item.selected.is-hover .fd-product-switch__title:before,.fd-product-switch__item.selected:hover,.fd-product-switch__item.selected:hover .fd-product-switch__title:after,.fd-product-switch__item.selected:hover .fd-product-switch__title:before{background-color:var(--sapList_Hover_SelectionBackground)}.fd-product-switch__item.selected.is-active,.fd-product-switch__item.selected.is-active .fd-product-switch__title:after,.fd-product-switch__item.selected.is-active .fd-product-switch__title:before,.fd-product-switch__item.selected:active,.fd-product-switch__item.selected:active .fd-product-switch__title:after,.fd-product-switch__item.selected:active .fd-product-switch__title:before{background-color:var(--sapList_Active_Background)}.fd-product-switch__item.is-focus,.fd-product-switch__item:focus{outline-color:var(--sapContent_FocusColor);outline-offset:-.1875rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-product-switch__item.dragged{box-shadow:var(--sapContent_Shadow2);cursor:grabbing}.fd-product-switch__item.dragged,.fd-product-switch__item.dragged:active,.fd-product-switch__item.dragged:hover{background-color:var(--sapList_Background)}.fd-product-switch__item.dragged:active .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__item.dragged:active .fd-product-switch__icon[class*=sap-icon],.fd-product-switch__item.dragged:hover .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__item.dragged:hover .fd-product-switch__icon[class*=sap-icon]{color:var(--sapContent_IconColor)}.fd-product-switch__item.dragged:active .fd-product-switch__title,.fd-product-switch__item.dragged:hover .fd-product-switch__title{color:var(--sapGroup_TitleTextColor)}.fd-product-switch__item.dragged:active .fd-product-switch__subtitle,.fd-product-switch__item.dragged:hover .fd-product-switch__subtitle{color:var(--sapContent_LabelColor)}.fd-product-switch__item.dragged.selected{-webkit-box-shadow:var(--sapContent_Shadow2);border:none;box-shadow:var(--sapContent_Shadow2)}.fd-product-switch__item.dragged.is-hover,.fd-product-switch__item.dragged:hover{outline:none}.fd-product-switch__icon [class*=sap-icon],.fd-product-switch__icon[class*=sap-icon]{-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background:inherit;border-radius:inherit;color:inherit;color:var(--sapContent_IconColor);display:flex;font-size:inherit;font-size:1.5rem;justify-content:center;line-height:1;margin-bottom:.5rem;min-height:3rem;min-width:3rem}.fd-product-switch__text{-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;line-height:var(--sapContent_LineHeight);margin:0;max-height:2.5rem;overflow:hidden;padding:0;text-shadow:var(--fdProductSwitch_Text_Shadow);width:100%}.fd-product-switch__text:after,.fd-product-switch__text:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapGroup_TitleTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontHeader6Size);font-weight:400;line-height:var(--sapContent_LineHeight);line-height:1.25rem;margin:0;max-height:2.5rem;padding:0;white-space:normal;z-index:1}.fd-product-switch__title:after,.fd-product-switch__title:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__title:last-child{-webkit-box-orient:vertical;-webkit-line-clamp:2;display:-webkit-box;margin-bottom:0;margin-right:0;overflow:hidden;text-overflow:ellipsis;white-space:normal}.fd-product-switch__title:before{left:9.4rem;width:1rem;z-index:2}.fd-product-switch__title:after{left:9.4rem;width:1rem;z-index:3}.fd-product-switch__subtitle{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontSmallSize);font-weight:400;line-height:var(--sapContent_LineHeight);line-height:1.25rem;margin:0;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-product-switch__subtitle:after,.fd-product-switch__subtitle:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__body{-webkit-box-sizing:border-box;background-color:var(--sapList_Background);border:0;border-radius:var(--sapElement_BorderCornerRadius);box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;max-height:calc(100vh - 76px);overflow-y:auto;padding:1.5rem .5rem 1rem 1rem;scrollbar-color:var(--fdScrollbar_Thumb_Color) var(--fdScrollbar_Track_Color);width:-moz-fit-content;width:fit-content}.fd-product-switch__body:after,.fd-product-switch__body:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__body.is-focus,.fd-product-switch__body:focus{outline:none;z-index:5}.fd-product-switch__body::-webkit-scrollbar{height:var(--fdScrollbar_Dimension);width:var(--fdScrollbar_Dimension)}.fd-product-switch__body::-webkit-scrollbar-corner,.fd-product-switch__body::-webkit-scrollbar-track{background-color:var(--fdScrollbar_Track_Color)}.fd-product-switch__body::-webkit-scrollbar-thumb{-webkit-box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color);background-color:transparent;border:var(--fdScrollbar_Thumb_Offset) solid transparent;border-radius:calc(var(--fdScrollbar_Thumb_Border_Radius) - var(--fdScrollbar_Thumb_Offset));box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color)}.fd-product-switch__body::-webkit-scrollbar-thumb:active,.fd-product-switch__body::-webkit-scrollbar-thumb:hover{box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Hover_Color)}.fd-product-switch__body--col-3 .fd-product-switch__list{width:35.25rem}.fd-product-switch__body--mobile{border-radius:0;max-width:100vw;overflow-x:hidden;padding:0;width:100%}.fd-product-switch__body--mobile .fd-product-switch__list{display:flex;flex-direction:column;width:100%}.fd-product-switch__body--mobile .fd-product-switch__item{-webkit-box-sizing:border-box;-webkit-box-flex:1;-ms-flex:auto;border:none;border-bottom:.0625rem solid var(--sapList_GroupHeaderBorderColor);border-radius:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex:auto;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;max-height:5rem;max-width:100%;padding:1rem;text-align:left}.fd-product-switch__body--mobile .fd-product-switch__item:after,.fd-product-switch__body--mobile .fd-product-switch__item:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__title:before{background-color:var(--sapTile_Background)}.fd-product-switch__body--mobile .fd-product-switch__item.is-hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.is-hover .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item:hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item:hover .fd-product-switch__title:before{background-color:var(--sapList_Hover_Background)}.fd-product-switch__body--mobile .fd-product-switch__item.is-active .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.is-active .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item:active .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item:active .fd-product-switch__title:before{background-color:var(--sapList_SelectionBorderColor)}.fd-product-switch__body--mobile .fd-product-switch__item.is-active.is-focus,.fd-product-switch__body--mobile .fd-product-switch__item.is-active:focus,.fd-product-switch__body--mobile .fd-product-switch__item:active.is-focus,.fd-product-switch__body--mobile .fd-product-switch__item:active:focus{outline-color:var(--sapContent_FocusColor);outline-color:var(--sapContent_ContrastFocusColor);outline-offset:-.1875rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-product-switch__body--mobile .fd-product-switch__item.selected{-webkit-box-shadow:none;border-bottom-color:var(--sapList_SelectionBorderColor);box-shadow:none}.fd-product-switch__body--mobile .fd-product-switch__item.selected .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected .fd-product-switch__title:before{background-color:var(--sapList_SelectionBorderColor)}.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-hover .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected:hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected:hover .fd-product-switch__title:before{background-color:var(--sapList_Hover_SelectionBackground)}.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active.is-hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active.is-hover .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active:hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active:hover .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active.is-hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active.is-hover .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active:hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active:hover .fd-product-switch__title:before{background-color:var(--sapList_Active_Background)}.fd-product-switch__body--mobile .fd-product-switch__item.is-focus,.fd-product-switch__body--mobile .fd-product-switch__item:focus{outline-color:var(--sapContent_FocusColor);outline-offset:-.1875rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__title:before{left:21.7rem;width:1rem;z-index:2}.fd-product-switch__body--mobile .fd-product-switch__text{-webkit-box-pack:justify;-ms-flex-pack:justify;display:flex;flex-direction:column;height:100%;justify-content:space-between}.fd-product-switch__body--mobile .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__body--mobile .fd-product-switch__icon[class*=sap-icon]{margin-bottom:0;margin-right:.75rem}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__icon[class*=sap-icon],[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__icon [class*=sap-icon],[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__icon[class*=sap-icon]{margin-left:.75rem;margin-right:0}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__text,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__text{align-items:flex-start}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__text .fd-product-switch__title:not(:last-child),[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__text .fd-product-switch__title:not(:last-child){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__text .fd-product-switch__title:not(:last-child):after,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__text .fd-product-switch__title:not(:last-child):after{display:none}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__text .fd-product-switch__title:not(:last-child):before,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__text .fd-product-switch__title:not(:last-child):before{display:inline-flex}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item .fd-product-switch__title:before,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__title:before{right:21.8rem;width:2rem}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item .fd-product-switch__subtitle,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__subtitle{line-height:1.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item .fd-product-switch__subtitle:before,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__subtitle:before{right:21.8rem;text-align:right;width:2rem;z-index:2}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item .fd-product-switch__subtitle:after,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__subtitle:after{display:none;z-index:3}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item.is-active .fd-product-switch__subtitle,.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item:active .fd-product-switch__subtitle,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item.is-active .fd-product-switch__subtitle,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item:active .fd-product-switch__subtitle{color:var(--sapList_Active_TextColor)}.fd-product-switch__list{position:relative}.fd-product-switch__item.cdk-drag-dragging{outline:none;cursor:grabbing;box-shadow:0 0 0 .0625rem #00000026,0 .625rem 1.875rem #0000004d}.fd-product-switch__body--mobile .fd-product-switch__item.cdk-drag-dragging{outline:none;box-shadow:0 0 0 .0625rem #00000026,0 .625rem 1.875rem #0000004d}.fd-dnd-item{position:relative}.fd-dnd-item.fd-dnd-on-drag{background-color:#fff;background-color:var(--sapList_Background, #fff);z-index:15}.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item .fd-product-switch__title:before,.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item .fd-product-switch__title:after{background-color:#fff;background-color:var(--sapList_Background, #fff)}.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item .fd-product-switch__icon{color:#0854a0;color:var(--sapContent_IconColor, #0854a0)}.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item .fd-product-switch__title{color:#32363a;color:var(--sapGroup_TitleTextColor, #32363a)}.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item .fd-product-switch__subtitle{color:#6a6d70;color:var(--sapContent_LabelColor, #6a6d70)}.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item:active,.fd-dnd-item.fd-dnd-on-drag.selected{background-color:#fff;background-color:var(--sapList_Background, #fff)}[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__title,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__subtitle{text-align:right}\n", ".cdk-drag-dragging{z-index:15;background-color:#fff;background-color:var(--sapList_Background, #fff);opacity:.8;transition:box-shadow .2s cubic-bezier(0,0,.2,1);box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.fd-replace-indicator{position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;border-width:.125rem;border-style:solid;background-color:transparent;border-color:#0854a0;border-color:var(--sapContent_DragAndDropActiveColor)}.fd-replace-indicator:before{content:\"\";display:block;position:absolute;width:100%;height:100%;top:0;left:0;background-color:#0854a0;background-color:var(--sapContent_DragAndDropActiveColor, #0854a0);opacity:.5}.cdk-drag{cursor:grab}.cdk-drag.cdk-drag-dragging{cursor:grabbing}.cdk-drag-dragging{outline:none;cursor:grabbing;box-shadow:0 0 0 .0625rem #00000026,0 .625rem 1.875rem #0000004d}.cdk-drag-disabled{cursor:default}.fd-dnd-placeholder{top:0;left:0;position:absolute;opacity:.3;z-index:-1}.fd-dnd-item{position:relative;cursor:grab}.fd-dnd-item.fd-dnd-on-drag{background-color:#fff;background-color:var(--sapList_Background, #fff);z-index:15;cursor:grabbing}.drop-area__line{z-index:9999;position:absolute;background:#0854a0;background:var(--sapContent_DragAndDropActiveColor, #0854a0)}.drop-area__line--vertical{top:0;height:calc(100% - .5rem);width:2px}.drop-area__line--vertical.after{right:.2rem}.drop-area__line--vertical.before{left:-.3rem}.drop-area__line--vertical:before{background-color:#fff;background-color:var(--sapList_Background, #fff);content:\"\";position:absolute;left:-.2rem;top:-.5rem;border-radius:50%;width:.5rem;height:.5rem;border-width:.125rem;border-style:solid;border-color:#0854a0;border-color:var(--sapContent_DragAndDropActiveColor, #0854a0)}.drop-area__line--horizontal{left:0;width:100%;height:2px}.drop-area__line--horizontal.before{top:0}.drop-area__line--horizontal.after{bottom:0}.drop-area__line--horizontal:before{background-color:#fff;background-color:var(--sapList_Background, #fff);content:\"\";position:absolute;left:0;top:-.2rem;border-radius:50%;width:.5rem;height:.5rem;border-width:.125rem;border-style:solid;border-color:#0854a0;border-color:var(--sapContent_DragAndDropActiveColor, #0854a0)}\n"], dependencies: [{ kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DndItemDirective, selector: "[fd-dnd-item]", inputs: ["applyDragItemClass", "containerSelector", "stickInPlace", "draggable", "classWhenElementDragged"], outputs: ["moved", "released", "started"] }, { kind: "directive", type: i2.DndListDirective, selector: "[fd-dnd-list]", inputs: ["gridMode", "replaceMode", "items", "draggable"], outputs: ["itemsChange", "itemDropped"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
167
167
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: ProductSwitchBodyComponent, decorators: [{
168
168
  type: Component,
169
- args: [{ selector: 'fd-product-switch-body', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"fd-product-switch__body\"\n [class.fd-product-switch__body--col-3]=\"_isSmallMode() && !_isListMode()\"\n [class.fd-product-switch__body--mobile]=\"_isListMode()\"\n>\n <ul\n fd-dnd-list\n class=\"fd-product-switch__list\"\n [items]=\"products\"\n [gridMode]=\"!_isListMode()\"\n (itemDropped)=\"_productSwitchItemsChangeHandle($event)\"\n >\n <li\n fd-dnd-item\n *ngFor=\"let product of products\"\n tabindex=\"0\"\n class=\"fd-product-switch__item\"\n [class.selected]=\"product.selected\"\n (keydown)=\"_keyDownHandle($event)\"\n (click)=\"_itemClick(product, $event)\"\n [draggable]=\"!product.disabledDragAndDrop && dragAndDropEnabled\"\n [stickInPlace]=\"!!product.stickToPosition\"\n >\n <i\n role=\"presentation\"\n class=\"fd-product-switch__icon\"\n [class]=\"product.icon ? 'sap-icon--' + product.icon : ''\"\n ></i>\n <div class=\"fd-product-switch__text\">\n <div class=\"fd-product-switch__title\">{{ product.title }}</div>\n <div *ngIf=\"product.subtitle\" class=\"fd-product-switch__subtitle\">{{ product.subtitle }}</div>\n </div>\n </li>\n </ul>\n</div>\n", styles: ["/*!\n * Fundamental Library Styles v0.26.0-rc.27\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.drag-placeholder{opacity:.3;position:absolute}/*!\n.fd-product-switch\n*/.fd-product-switch{-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;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-product-switch:after,.fd-product-switch:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__list{-webkit-box-sizing:border-box;-ms-flex-wrap:wrap;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;flex-wrap:wrap;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:47rem}.fd-product-switch__list:after,.fd-product-switch__list:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__item{-webkit-box-sizing:border-box;-webkit-box-align:center;-ms-flex-align:center;-webkit-box-flex:1;-ms-flex:1 0 25%;-webkit-box-shadow:var(--fdProductSwitch_Shadow);align-items:center;background-color:var(--sapList_Background);border:0;border-radius:var(--sapElement_BorderCornerRadius);box-shadow:var(--fdProductSwitch_Shadow);box-sizing:border-box;color:var(--sapTextColor);display:flex;flex:1 0 25%;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:7rem;line-height:var(--sapContent_LineHeight);margin:0 .5rem .5rem 0;max-width:11.25rem;padding:.5rem;text-align:center}.fd-product-switch__item:after,.fd-product-switch__item:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__item .fd-product-switch__title:not(:last-child){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-product-switch__item .fd-product-switch__title:after,.fd-product-switch__item .fd-product-switch__title:before{background-color:var(--sapList_Background)}.fd-product-switch__item.is-hover,.fd-product-switch__item:hover{background-color:var(--sapList_Hover_Background);border:var(--fdProductSwitch_Border);cursor:pointer}.fd-product-switch__item.is-hover .fd-product-switch__title:after,.fd-product-switch__item.is-hover .fd-product-switch__title:before,.fd-product-switch__item:hover .fd-product-switch__title:after,.fd-product-switch__item:hover .fd-product-switch__title:before{background-color:var(--sapList_Hover_Background)}.fd-product-switch__item.is-active,.fd-product-switch__item:active{background-color:var(--sapList_Active_Background);border:var(--fdProductSwitch_Border)}.fd-product-switch__item.is-active.is-focus,.fd-product-switch__item.is-active:focus,.fd-product-switch__item:active.is-focus,.fd-product-switch__item:active:focus{outline-color:var(--sapContent_FocusColor);outline-color:var(--sapContent_ContrastFocusColor);outline-offset:-.1875rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-product-switch__item.is-active .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__item.is-active .fd-product-switch__icon[class*=sap-icon],.fd-product-switch__item.is-active .fd-product-switch__subtitle,.fd-product-switch__item.is-active .fd-product-switch__title,.fd-product-switch__item:active .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__item:active .fd-product-switch__icon[class*=sap-icon],.fd-product-switch__item:active .fd-product-switch__subtitle,.fd-product-switch__item:active .fd-product-switch__title{color:var(--sapList_Active_TextColor)}.fd-product-switch__item.is-active .fd-product-switch__title:after,.fd-product-switch__item.is-active .fd-product-switch__title:before,.fd-product-switch__item.is-active.is-hover .fd-product-switch__title:after,.fd-product-switch__item.is-active.is-hover .fd-product-switch__title:before,.fd-product-switch__item.is-active:hover .fd-product-switch__title:after,.fd-product-switch__item.is-active:hover .fd-product-switch__title:before,.fd-product-switch__item:active .fd-product-switch__title:after,.fd-product-switch__item:active .fd-product-switch__title:before,.fd-product-switch__item:active.is-hover .fd-product-switch__title:after,.fd-product-switch__item:active.is-hover .fd-product-switch__title:before,.fd-product-switch__item:active:hover .fd-product-switch__title:after,.fd-product-switch__item:active:hover .fd-product-switch__title:before{background-color:var(--sapList_Active_Background)}.fd-product-switch__item.selected{border:.125rem solid var(--sapList_SelectionBorderColor)}.fd-product-switch__item.selected,.fd-product-switch__item.selected .fd-product-switch__title:after,.fd-product-switch__item.selected .fd-product-switch__title:before{background-color:var(--sapList_SelectionBackgroundColor)}.fd-product-switch__item.selected.is-hover,.fd-product-switch__item.selected.is-hover .fd-product-switch__title:after,.fd-product-switch__item.selected.is-hover .fd-product-switch__title:before,.fd-product-switch__item.selected:hover,.fd-product-switch__item.selected:hover .fd-product-switch__title:after,.fd-product-switch__item.selected:hover .fd-product-switch__title:before{background-color:var(--sapList_Hover_SelectionBackground)}.fd-product-switch__item.selected.is-active,.fd-product-switch__item.selected.is-active .fd-product-switch__title:after,.fd-product-switch__item.selected.is-active .fd-product-switch__title:before,.fd-product-switch__item.selected:active,.fd-product-switch__item.selected:active .fd-product-switch__title:after,.fd-product-switch__item.selected:active .fd-product-switch__title:before{background-color:var(--sapList_Active_Background)}.fd-product-switch__item.is-focus,.fd-product-switch__item:focus{outline-color:var(--sapContent_FocusColor);outline-offset:-.1875rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-product-switch__item.dragged{box-shadow:var(--sapContent_Shadow2);cursor:grabbing}.fd-product-switch__item.dragged,.fd-product-switch__item.dragged:active,.fd-product-switch__item.dragged:hover{background-color:var(--sapList_Background)}.fd-product-switch__item.dragged:active .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__item.dragged:active .fd-product-switch__icon[class*=sap-icon],.fd-product-switch__item.dragged:hover .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__item.dragged:hover .fd-product-switch__icon[class*=sap-icon]{color:var(--sapContent_IconColor)}.fd-product-switch__item.dragged:active .fd-product-switch__title,.fd-product-switch__item.dragged:hover .fd-product-switch__title{color:var(--sapGroup_TitleTextColor)}.fd-product-switch__item.dragged:active .fd-product-switch__subtitle,.fd-product-switch__item.dragged:hover .fd-product-switch__subtitle{color:var(--sapContent_LabelColor)}.fd-product-switch__item.dragged.selected{-webkit-box-shadow:var(--sapContent_Shadow2);border:none;box-shadow:var(--sapContent_Shadow2)}.fd-product-switch__item.dragged.is-hover,.fd-product-switch__item.dragged:hover{outline:none}.fd-product-switch__icon [class*=sap-icon],.fd-product-switch__icon[class*=sap-icon]{-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background:inherit;border-radius:inherit;color:inherit;color:var(--sapContent_IconColor);display:flex;font-size:inherit;font-size:1.5rem;justify-content:center;line-height:1;margin-bottom:.5rem;min-height:3rem;min-width:3rem}.fd-product-switch__text{-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;line-height:var(--sapContent_LineHeight);margin:0;max-height:2.5rem;overflow:hidden;padding:0;text-shadow:var(--fdProductSwitch_Text_Shadow);width:100%}.fd-product-switch__text:after,.fd-product-switch__text:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapGroup_TitleTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontHeader6Size);font-weight:400;line-height:var(--sapContent_LineHeight);line-height:1.25rem;margin:0;max-height:2.5rem;padding:0;white-space:normal;z-index:1}.fd-product-switch__title:after,.fd-product-switch__title:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__title:last-child{-webkit-box-orient:vertical;-webkit-line-clamp:2;display:-webkit-box;margin-bottom:0;margin-right:0;overflow:hidden;text-overflow:ellipsis;white-space:normal}.fd-product-switch__title:before{left:9.4rem;width:1rem;z-index:2}.fd-product-switch__title:after{left:9.4rem;width:1rem;z-index:3}.fd-product-switch__subtitle{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontSmallSize);font-weight:400;line-height:var(--sapContent_LineHeight);line-height:1.25rem;margin:0;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-product-switch__subtitle:after,.fd-product-switch__subtitle:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__body{-webkit-box-sizing:border-box;background-color:var(--sapList_Background);border:0;border-radius:var(--sapElement_BorderCornerRadius);box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;max-height:calc(100vh - 76px);overflow-y:auto;padding:1.5rem .5rem 1rem 1rem;scrollbar-color:var(--fdScrollbar_Thumb_Color) var(--fdScrollbar_Track_Color);width:-moz-fit-content;width:fit-content}.fd-product-switch__body:after,.fd-product-switch__body:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__body.is-focus,.fd-product-switch__body:focus{outline:none;z-index:5}.fd-product-switch__body::-webkit-scrollbar{height:var(--fdScrollbar_Dimension);width:var(--fdScrollbar_Dimension)}.fd-product-switch__body::-webkit-scrollbar-corner,.fd-product-switch__body::-webkit-scrollbar-track{background-color:var(--fdScrollbar_Track_Color)}.fd-product-switch__body::-webkit-scrollbar-thumb{-webkit-box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color);background-color:transparent;border:var(--fdScrollbar_Thumb_Offset) solid transparent;border-radius:calc(var(--fdScrollbar_Thumb_Border_Radius) - var(--fdScrollbar_Thumb_Offset));box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color)}.fd-product-switch__body::-webkit-scrollbar-thumb:active,.fd-product-switch__body::-webkit-scrollbar-thumb:hover{box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Hover_Color)}.fd-product-switch__body--col-3 .fd-product-switch__list{width:35.25rem}.fd-product-switch__body--mobile{border-radius:0;max-width:100vw;overflow-x:hidden;padding:0;width:100%}.fd-product-switch__body--mobile .fd-product-switch__list{display:flex;flex-direction:column;width:100%}.fd-product-switch__body--mobile .fd-product-switch__item{-webkit-box-sizing:border-box;-webkit-box-flex:1;-ms-flex:auto;border:none;border-bottom:.0625rem solid var(--sapList_GroupHeaderBorderColor);border-radius:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex:auto;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;max-height:5rem;max-width:100%;padding:1rem;text-align:left}.fd-product-switch__body--mobile .fd-product-switch__item:after,.fd-product-switch__body--mobile .fd-product-switch__item:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__title:before{background-color:var(--sapTile_Background)}.fd-product-switch__body--mobile .fd-product-switch__item.is-hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.is-hover .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item:hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item:hover .fd-product-switch__title:before{background-color:var(--sapList_Hover_Background)}.fd-product-switch__body--mobile .fd-product-switch__item.is-active .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.is-active .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item:active .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item:active .fd-product-switch__title:before{background-color:var(--sapList_SelectionBorderColor)}.fd-product-switch__body--mobile .fd-product-switch__item.is-active.is-focus,.fd-product-switch__body--mobile .fd-product-switch__item.is-active:focus,.fd-product-switch__body--mobile .fd-product-switch__item:active.is-focus,.fd-product-switch__body--mobile .fd-product-switch__item:active:focus{outline-color:var(--sapContent_FocusColor);outline-color:var(--sapContent_ContrastFocusColor);outline-offset:-.1875rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-product-switch__body--mobile .fd-product-switch__item.selected{-webkit-box-shadow:none;border-bottom-color:var(--sapList_SelectionBorderColor);box-shadow:none}.fd-product-switch__body--mobile .fd-product-switch__item.selected .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected .fd-product-switch__title:before{background-color:var(--sapList_SelectionBorderColor)}.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-hover .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected:hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected:hover .fd-product-switch__title:before{background-color:var(--sapList_Hover_SelectionBackground)}.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active.is-hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active.is-hover .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active:hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active:hover .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active.is-hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active.is-hover .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active:hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active:hover .fd-product-switch__title:before{background-color:var(--sapList_Active_Background)}.fd-product-switch__body--mobile .fd-product-switch__item.is-focus,.fd-product-switch__body--mobile .fd-product-switch__item:focus{outline-color:var(--sapContent_FocusColor);outline-offset:-.1875rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__title:before{left:21.7rem;width:1rem;z-index:2}.fd-product-switch__body--mobile .fd-product-switch__text{-webkit-box-pack:justify;-ms-flex-pack:justify;display:flex;flex-direction:column;height:100%;justify-content:space-between}.fd-product-switch__body--mobile .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__body--mobile .fd-product-switch__icon[class*=sap-icon]{margin-bottom:0;margin-right:.75rem}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__icon[class*=sap-icon],[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__icon [class*=sap-icon],[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__icon[class*=sap-icon]{margin-left:.75rem;margin-right:0}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__text,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__text{align-items:flex-start}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__text .fd-product-switch__title:not(:last-child),[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__text .fd-product-switch__title:not(:last-child){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__text .fd-product-switch__title:not(:last-child):after,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__text .fd-product-switch__title:not(:last-child):after{display:none}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__text .fd-product-switch__title:not(:last-child):before,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__text .fd-product-switch__title:not(:last-child):before{display:inline-flex}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item .fd-product-switch__title:before,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__title:before{right:21.8rem;width:2rem}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item .fd-product-switch__subtitle,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__subtitle{line-height:1.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item .fd-product-switch__subtitle:before,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__subtitle:before{right:21.8rem;text-align:right;width:2rem;z-index:2}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item .fd-product-switch__subtitle:after,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__subtitle:after{display:none;z-index:3}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item.is-active .fd-product-switch__subtitle,.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item:active .fd-product-switch__subtitle,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item.is-active .fd-product-switch__subtitle,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item:active .fd-product-switch__subtitle{color:var(--sapList_Active_TextColor)}.fd-product-switch__list{position:relative}.fd-product-switch__item.cdk-drag-dragging{outline:none;cursor:grabbing;box-shadow:0 0 0 .0625rem #00000026,0 .625rem 1.875rem #0000004d}.fd-product-switch__body--mobile .fd-product-switch__item.cdk-drag-dragging{outline:none;box-shadow:0 0 0 .0625rem #00000026,0 .625rem 1.875rem #0000004d}.fd-dnd-item{position:relative}.fd-dnd-item.fd-dnd-on-drag{background-color:#fff;background-color:var(--sapList_Background, #fff);z-index:15}.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item .fd-product-switch__title:before,.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item .fd-product-switch__title:after{background-color:#fff;background-color:var(--sapList_Background, #fff)}.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item .fd-product-switch__icon{color:#0854a0;color:var(--sapContent_IconColor, #0854a0)}.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item .fd-product-switch__title{color:#32363a;color:var(--sapGroup_TitleTextColor, #32363a)}.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item .fd-product-switch__subtitle{color:#6a6d70;color:var(--sapContent_LabelColor, #6a6d70)}.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item:active,.fd-dnd-item.fd-dnd-on-drag.selected{background-color:#fff;background-color:var(--sapList_Background, #fff)}[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__title,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__subtitle{text-align:right}\n", ".cdk-drag-dragging{z-index:15;background-color:#fff;background-color:var(--sapList_Background, #fff);opacity:.8;transition:box-shadow .2s cubic-bezier(0,0,.2,1);box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.fd-replace-indicator{position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;border-width:.125rem;border-style:solid;background-color:transparent;border-color:#0854a0;border-color:var(--sapContent_DragAndDropActiveColor)}.fd-replace-indicator:before{content:\"\";display:block;position:absolute;width:100%;height:100%;top:0;left:0;background-color:#0854a0;background-color:var(--sapContent_DragAndDropActiveColor, #0854a0);opacity:.5}.cdk-drag{cursor:grab}.cdk-drag.cdk-drag-dragging{cursor:grabbing}.cdk-drag-dragging{outline:none;cursor:grabbing;box-shadow:0 0 0 .0625rem #00000026,0 .625rem 1.875rem #0000004d}.cdk-drag-disabled{cursor:default}.fd-dnd-placeholder{top:0;left:0;position:absolute;opacity:.3;z-index:-1}.fd-dnd-item{position:relative;cursor:grab}.fd-dnd-item.fd-dnd-on-drag{background-color:#fff;background-color:var(--sapList_Background, #fff);z-index:15;cursor:grabbing}.drop-area__line{z-index:9999;position:absolute;background:#0854a0;background:var(--sapContent_DragAndDropActiveColor, #0854a0)}.drop-area__line--vertical{top:0;height:calc(100% - .5rem);width:2px}.drop-area__line--vertical.after{right:.2rem}.drop-area__line--vertical.before{left:-.3rem}.drop-area__line--vertical:before{background-color:#fff;background-color:var(--sapList_Background, #fff);content:\"\";position:absolute;left:-.2rem;top:-.5rem;border-radius:50%;width:.5rem;height:.5rem;border-width:.125rem;border-style:solid;border-color:#0854a0;border-color:var(--sapContent_DragAndDropActiveColor, #0854a0)}.drop-area__line--horizontal{left:0;width:100%;height:2px}.drop-area__line--horizontal.before{top:0}.drop-area__line--horizontal.after{bottom:0}.drop-area__line--horizontal:before{background-color:#fff;background-color:var(--sapList_Background, #fff);content:\"\";position:absolute;left:0;top:-.2rem;border-radius:50%;width:.5rem;height:.5rem;border-width:.125rem;border-style:solid;border-color:#0854a0;border-color:var(--sapContent_DragAndDropActiveColor, #0854a0)}\n"] }]
169
+ args: [{ selector: 'fd-product-switch-body', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"fd-product-switch__body\"\n [class.fd-product-switch__body--col-3]=\"_isSmallMode() && !_isListMode()\"\n [class.fd-product-switch__body--mobile]=\"_isListMode()\"\n>\n <ul\n fd-dnd-list\n class=\"fd-product-switch__list\"\n [items]=\"products\"\n [gridMode]=\"!_isListMode()\"\n (itemDropped)=\"_productSwitchItemsChangeHandle($event)\"\n >\n <li\n fd-dnd-item\n *ngFor=\"let product of products\"\n tabindex=\"0\"\n class=\"fd-product-switch__item\"\n [class.selected]=\"product.selected\"\n (keydown)=\"_keyDownHandle($event)\"\n (click)=\"_itemClick(product, $event)\"\n [draggable]=\"!product.disabledDragAndDrop && dragAndDropEnabled\"\n [stickInPlace]=\"!!product.stickToPosition\"\n >\n <i\n role=\"presentation\"\n class=\"fd-product-switch__icon\"\n [class]=\"product.icon ? 'sap-icon--' + product.icon : ''\"\n ></i>\n <div class=\"fd-product-switch__text\">\n <div class=\"fd-product-switch__title\">{{ product.title }}</div>\n <div *ngIf=\"product.subtitle\" class=\"fd-product-switch__subtitle\">{{ product.subtitle }}</div>\n </div>\n </li>\n </ul>\n</div>\n", styles: ["/*!\n * Fundamental Library Styles v0.26.0-rc.41\n * Copyright (c) 2022 SAP SE or an SAP affiliate company.\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\n */.drag-placeholder{opacity:.3;position:absolute}/*!\n.fd-product-switch\n*/.fd-product-switch{-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;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-product-switch:after,.fd-product-switch:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__list{-webkit-box-sizing:border-box;-ms-flex-wrap:wrap;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;flex-wrap:wrap;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;padding:0;width:47rem}.fd-product-switch__list:after,.fd-product-switch__list:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__item{-webkit-box-sizing:border-box;-webkit-box-align:center;-ms-flex-align:center;-webkit-box-flex:1;-ms-flex:1 0 25%;-webkit-box-shadow:var(--fdProductSwitch_Shadow);align-items:center;background-color:var(--sapList_Background);border:0;border-radius:var(--sapElement_BorderCornerRadius);box-shadow:var(--fdProductSwitch_Shadow);box-sizing:border-box;color:var(--sapTextColor);display:flex;flex:1 0 25%;flex-direction:column;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:7rem;line-height:var(--sapContent_LineHeight);margin:0 .5rem .5rem 0;max-width:11.25rem;padding:.5rem;text-align:center}.fd-product-switch__item:after,.fd-product-switch__item:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__item .fd-product-switch__title:not(:last-child){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-product-switch__item .fd-product-switch__title:after,.fd-product-switch__item .fd-product-switch__title:before{background-color:var(--sapList_Background)}.fd-product-switch__item.is-hover,.fd-product-switch__item:hover{background-color:var(--sapList_Hover_Background);border:var(--fdProductSwitch_Border);cursor:pointer}.fd-product-switch__item.is-hover .fd-product-switch__title:after,.fd-product-switch__item.is-hover .fd-product-switch__title:before,.fd-product-switch__item:hover .fd-product-switch__title:after,.fd-product-switch__item:hover .fd-product-switch__title:before{background-color:var(--sapList_Hover_Background)}.fd-product-switch__item.is-active,.fd-product-switch__item:active{background-color:var(--sapList_Active_Background);border:var(--fdProductSwitch_Border)}.fd-product-switch__item.is-active.is-focus,.fd-product-switch__item.is-active:focus,.fd-product-switch__item:active.is-focus,.fd-product-switch__item:active:focus{outline-color:var(--sapContent_FocusColor);outline-color:var(--sapContent_ContrastFocusColor);outline-offset:-.1875rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-product-switch__item.is-active .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__item.is-active .fd-product-switch__icon[class*=sap-icon],.fd-product-switch__item.is-active .fd-product-switch__subtitle,.fd-product-switch__item.is-active .fd-product-switch__title,.fd-product-switch__item:active .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__item:active .fd-product-switch__icon[class*=sap-icon],.fd-product-switch__item:active .fd-product-switch__subtitle,.fd-product-switch__item:active .fd-product-switch__title{color:var(--sapList_Active_TextColor)}.fd-product-switch__item.is-active .fd-product-switch__title:after,.fd-product-switch__item.is-active .fd-product-switch__title:before,.fd-product-switch__item.is-active.is-hover .fd-product-switch__title:after,.fd-product-switch__item.is-active.is-hover .fd-product-switch__title:before,.fd-product-switch__item.is-active:hover .fd-product-switch__title:after,.fd-product-switch__item.is-active:hover .fd-product-switch__title:before,.fd-product-switch__item:active .fd-product-switch__title:after,.fd-product-switch__item:active .fd-product-switch__title:before,.fd-product-switch__item:active.is-hover .fd-product-switch__title:after,.fd-product-switch__item:active.is-hover .fd-product-switch__title:before,.fd-product-switch__item:active:hover .fd-product-switch__title:after,.fd-product-switch__item:active:hover .fd-product-switch__title:before{background-color:var(--sapList_Active_Background)}.fd-product-switch__item.selected{border:.125rem solid var(--sapList_SelectionBorderColor)}.fd-product-switch__item.selected,.fd-product-switch__item.selected .fd-product-switch__title:after,.fd-product-switch__item.selected .fd-product-switch__title:before{background-color:var(--sapList_SelectionBackgroundColor)}.fd-product-switch__item.selected.is-hover,.fd-product-switch__item.selected.is-hover .fd-product-switch__title:after,.fd-product-switch__item.selected.is-hover .fd-product-switch__title:before,.fd-product-switch__item.selected:hover,.fd-product-switch__item.selected:hover .fd-product-switch__title:after,.fd-product-switch__item.selected:hover .fd-product-switch__title:before{background-color:var(--sapList_Hover_SelectionBackground)}.fd-product-switch__item.selected.is-active,.fd-product-switch__item.selected.is-active .fd-product-switch__title:after,.fd-product-switch__item.selected.is-active .fd-product-switch__title:before,.fd-product-switch__item.selected:active,.fd-product-switch__item.selected:active .fd-product-switch__title:after,.fd-product-switch__item.selected:active .fd-product-switch__title:before{background-color:var(--sapList_Active_Background)}.fd-product-switch__item.is-focus,.fd-product-switch__item:focus{outline-color:var(--sapContent_FocusColor);outline-offset:-.1875rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-product-switch__item.dragged{box-shadow:var(--sapContent_Shadow2);cursor:grabbing}.fd-product-switch__item.dragged,.fd-product-switch__item.dragged:active,.fd-product-switch__item.dragged:hover{background-color:var(--sapList_Background)}.fd-product-switch__item.dragged:active .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__item.dragged:active .fd-product-switch__icon[class*=sap-icon],.fd-product-switch__item.dragged:hover .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__item.dragged:hover .fd-product-switch__icon[class*=sap-icon]{color:var(--sapContent_IconColor)}.fd-product-switch__item.dragged:active .fd-product-switch__title,.fd-product-switch__item.dragged:hover .fd-product-switch__title{color:var(--sapGroup_TitleTextColor)}.fd-product-switch__item.dragged:active .fd-product-switch__subtitle,.fd-product-switch__item.dragged:hover .fd-product-switch__subtitle{color:var(--sapContent_LabelColor)}.fd-product-switch__item.dragged.selected{-webkit-box-shadow:var(--sapContent_Shadow2);border:none;box-shadow:var(--sapContent_Shadow2)}.fd-product-switch__item.dragged.is-hover,.fd-product-switch__item.dragged:hover{outline:none}.fd-product-switch__icon [class*=sap-icon],.fd-product-switch__icon[class*=sap-icon]{-webkit-box-pack:center;-ms-flex-pack:center;align-items:center;background:inherit;border-radius:inherit;color:inherit;color:var(--sapContent_IconColor);display:flex;font-size:inherit;font-size:1.5rem;justify-content:center;line-height:1;margin-bottom:.5rem;min-height:3rem;min-width:3rem}.fd-product-switch__text{-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;line-height:var(--sapContent_LineHeight);margin:0;max-height:2.5rem;overflow:hidden;padding:0;text-shadow:var(--fdProductSwitch_Text_Shadow);width:100%}.fd-product-switch__text:after,.fd-product-switch__text:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__title{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapGroup_TitleTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontHeader6Size);font-weight:400;line-height:var(--sapContent_LineHeight);line-height:1.25rem;margin:0;max-height:2.5rem;padding:0;white-space:normal;z-index:1}.fd-product-switch__title:after,.fd-product-switch__title:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__title:last-child{-webkit-box-orient:vertical;-webkit-line-clamp:2;display:-webkit-box;margin-bottom:0;margin-right:0;overflow:hidden;text-overflow:ellipsis;white-space:normal}.fd-product-switch__title:before{left:9.4rem;width:1rem;z-index:2}.fd-product-switch__title:after{left:9.4rem;width:1rem;z-index:3}.fd-product-switch__subtitle{-webkit-box-sizing:border-box;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontSmallSize);font-weight:400;line-height:var(--sapContent_LineHeight);line-height:1.25rem;margin:0;overflow:hidden;padding:0;text-overflow:ellipsis;white-space:nowrap}.fd-product-switch__subtitle:after,.fd-product-switch__subtitle:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__body{-webkit-box-sizing:border-box;background-color:var(--sapList_Background);border:0;border-radius:var(--sapElement_BorderCornerRadius);box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;max-height:calc(100vh - 76px);overflow-y:auto;padding:1.5rem .5rem 1rem 1rem;scrollbar-color:var(--fdScrollbar_Thumb_Color) var(--fdScrollbar_Track_Color);width:-moz-fit-content;width:fit-content}.fd-product-switch__body:after,.fd-product-switch__body:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__body.is-focus,.fd-product-switch__body:focus{outline:none;z-index:5}.fd-product-switch__body::-webkit-scrollbar{height:var(--fdScrollbar_Dimension);width:var(--fdScrollbar_Dimension)}.fd-product-switch__body::-webkit-scrollbar-corner,.fd-product-switch__body::-webkit-scrollbar-track{background-color:var(--fdScrollbar_Track_Color)}.fd-product-switch__body::-webkit-scrollbar-thumb{-webkit-box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color);background-color:transparent;border:var(--fdScrollbar_Thumb_Offset) solid transparent;border-radius:calc(var(--fdScrollbar_Thumb_Border_Radius) - var(--fdScrollbar_Thumb_Offset));box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Color)}.fd-product-switch__body::-webkit-scrollbar-thumb:active,.fd-product-switch__body::-webkit-scrollbar-thumb:hover{box-shadow:inset 0 0 0 var(--fdScrollbar_Dimension) var(--fdScrollbar_Thumb_Hover_Color)}.fd-product-switch__body--col-3 .fd-product-switch__list{width:35.25rem}.fd-product-switch__body--mobile{border-radius:0;max-width:100vw;overflow-x:hidden;padding:0;width:100%}.fd-product-switch__body--mobile .fd-product-switch__list{display:flex;flex-direction:column;width:100%}.fd-product-switch__body--mobile .fd-product-switch__item{-webkit-box-sizing:border-box;-webkit-box-flex:1;-ms-flex:auto;border:none;border-bottom:.0625rem solid var(--sapList_GroupHeaderBorderColor);border-radius:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex:auto;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;max-height:5rem;max-width:100%;padding:1rem;text-align:left}.fd-product-switch__body--mobile .fd-product-switch__item:after,.fd-product-switch__body--mobile .fd-product-switch__item:before{box-sizing:inherit;font-size:inherit}.fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__title:before{background-color:var(--sapTile_Background)}.fd-product-switch__body--mobile .fd-product-switch__item.is-hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.is-hover .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item:hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item:hover .fd-product-switch__title:before{background-color:var(--sapList_Hover_Background)}.fd-product-switch__body--mobile .fd-product-switch__item.is-active .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.is-active .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item:active .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item:active .fd-product-switch__title:before{background-color:var(--sapList_SelectionBorderColor)}.fd-product-switch__body--mobile .fd-product-switch__item.is-active.is-focus,.fd-product-switch__body--mobile .fd-product-switch__item.is-active:focus,.fd-product-switch__body--mobile .fd-product-switch__item:active.is-focus,.fd-product-switch__body--mobile .fd-product-switch__item:active:focus{outline-color:var(--sapContent_FocusColor);outline-color:var(--sapContent_ContrastFocusColor);outline-offset:-.1875rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-product-switch__body--mobile .fd-product-switch__item.selected{-webkit-box-shadow:none;border-bottom-color:var(--sapList_SelectionBorderColor);box-shadow:none}.fd-product-switch__body--mobile .fd-product-switch__item.selected .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected .fd-product-switch__title:before{background-color:var(--sapList_SelectionBorderColor)}.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-hover .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected:hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected:hover .fd-product-switch__title:before{background-color:var(--sapList_Hover_SelectionBackground)}.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active.is-hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active.is-hover .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active:hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected.is-active:hover .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active.is-hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active.is-hover .fd-product-switch__title:before,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active:hover .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item.selected:active:hover .fd-product-switch__title:before{background-color:var(--sapList_Active_Background)}.fd-product-switch__body--mobile .fd-product-switch__item.is-focus,.fd-product-switch__body--mobile .fd-product-switch__item:focus{outline-color:var(--sapContent_FocusColor);outline-offset:-.1875rem;outline-style:var(--sapContent_FocusStyle);outline-width:var(--sapContent_FocusWidth)}.fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__title:after,.fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__title:before{left:21.7rem;width:1rem;z-index:2}.fd-product-switch__body--mobile .fd-product-switch__text{-webkit-box-pack:justify;-ms-flex-pack:justify;display:flex;flex-direction:column;height:100%;justify-content:space-between}.fd-product-switch__body--mobile .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__body--mobile .fd-product-switch__icon[class*=sap-icon]{margin-bottom:0;margin-right:.75rem}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__icon [class*=sap-icon],.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__icon[class*=sap-icon],[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__icon [class*=sap-icon],[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__icon[class*=sap-icon]{margin-left:.75rem;margin-right:0}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__text,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__text{align-items:flex-start}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__text .fd-product-switch__title:not(:last-child),[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__text .fd-product-switch__title:not(:last-child){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__text .fd-product-switch__title:not(:last-child):after,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__text .fd-product-switch__title:not(:last-child):after{display:none}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__text .fd-product-switch__title:not(:last-child):before,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__text .fd-product-switch__title:not(:last-child):before{display:inline-flex}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item .fd-product-switch__title:before,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__title:before{right:21.8rem;width:2rem}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item .fd-product-switch__subtitle,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__subtitle{line-height:1.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item .fd-product-switch__subtitle:before,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__subtitle:before{right:21.8rem;text-align:right;width:2rem;z-index:2}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item .fd-product-switch__subtitle:after,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item .fd-product-switch__subtitle:after{display:none;z-index:3}.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item.is-active .fd-product-switch__subtitle,.fd-product-switch__body--mobile[dir=rtl] .fd-product-switch__item:active .fd-product-switch__subtitle,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item.is-active .fd-product-switch__subtitle,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__item:active .fd-product-switch__subtitle{color:var(--sapList_Active_TextColor)}.fd-product-switch__list{position:relative}.fd-product-switch__item.cdk-drag-dragging{outline:none;cursor:grabbing;box-shadow:0 0 0 .0625rem #00000026,0 .625rem 1.875rem #0000004d}.fd-product-switch__body--mobile .fd-product-switch__item.cdk-drag-dragging{outline:none;box-shadow:0 0 0 .0625rem #00000026,0 .625rem 1.875rem #0000004d}.fd-dnd-item{position:relative}.fd-dnd-item.fd-dnd-on-drag{background-color:#fff;background-color:var(--sapList_Background, #fff);z-index:15}.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item .fd-product-switch__title:before,.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item .fd-product-switch__title:after{background-color:#fff;background-color:var(--sapList_Background, #fff)}.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item .fd-product-switch__icon{color:#0854a0;color:var(--sapContent_IconColor, #0854a0)}.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item .fd-product-switch__title{color:#32363a;color:var(--sapGroup_TitleTextColor, #32363a)}.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item .fd-product-switch__subtitle{color:#6a6d70;color:var(--sapContent_LabelColor, #6a6d70)}.fd-dnd-item.fd-dnd-on-drag.fd-product-switch__item:active,.fd-dnd-item.fd-dnd-on-drag.selected{background-color:#fff;background-color:var(--sapList_Background, #fff)}[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__title,[dir=rtl] .fd-product-switch__body--mobile .fd-product-switch__subtitle{text-align:right}\n", ".cdk-drag-dragging{z-index:15;background-color:#fff;background-color:var(--sapList_Background, #fff);opacity:.8;transition:box-shadow .2s cubic-bezier(0,0,.2,1);box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.fd-replace-indicator{position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;border-width:.125rem;border-style:solid;background-color:transparent;border-color:#0854a0;border-color:var(--sapContent_DragAndDropActiveColor)}.fd-replace-indicator:before{content:\"\";display:block;position:absolute;width:100%;height:100%;top:0;left:0;background-color:#0854a0;background-color:var(--sapContent_DragAndDropActiveColor, #0854a0);opacity:.5}.cdk-drag{cursor:grab}.cdk-drag.cdk-drag-dragging{cursor:grabbing}.cdk-drag-dragging{outline:none;cursor:grabbing;box-shadow:0 0 0 .0625rem #00000026,0 .625rem 1.875rem #0000004d}.cdk-drag-disabled{cursor:default}.fd-dnd-placeholder{top:0;left:0;position:absolute;opacity:.3;z-index:-1}.fd-dnd-item{position:relative;cursor:grab}.fd-dnd-item.fd-dnd-on-drag{background-color:#fff;background-color:var(--sapList_Background, #fff);z-index:15;cursor:grabbing}.drop-area__line{z-index:9999;position:absolute;background:#0854a0;background:var(--sapContent_DragAndDropActiveColor, #0854a0)}.drop-area__line--vertical{top:0;height:calc(100% - .5rem);width:2px}.drop-area__line--vertical.after{right:.2rem}.drop-area__line--vertical.before{left:-.3rem}.drop-area__line--vertical:before{background-color:#fff;background-color:var(--sapList_Background, #fff);content:\"\";position:absolute;left:-.2rem;top:-.5rem;border-radius:50%;width:.5rem;height:.5rem;border-width:.125rem;border-style:solid;border-color:#0854a0;border-color:var(--sapContent_DragAndDropActiveColor, #0854a0)}.drop-area__line--horizontal{left:0;width:100%;height:2px}.drop-area__line--horizontal.before{top:0}.drop-area__line--horizontal.after{bottom:0}.drop-area__line--horizontal:before{background-color:#fff;background-color:var(--sapList_Background, #fff);content:\"\";position:absolute;left:0;top:-.2rem;border-radius:50%;width:.5rem;height:.5rem;border-width:.125rem;border-style:solid;border-color:#0854a0;border-color:var(--sapContent_DragAndDropActiveColor, #0854a0)}\n"] }]
170
170
  }], ctorParameters: function () { return [{ type: i1.ViewportRuler }, { type: i2.RtlService, decorators: [{
171
171
  type: Optional
172
172
  }] }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { dragAndDropEnabled: [{
@@ -60,10 +60,10 @@ export class ProgressIndicatorComponent {
60
60
  }
61
61
  }
62
62
  ProgressIndicatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: ProgressIndicatorComponent, deps: [{ token: i0.ElementRef }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
63
- ProgressIndicatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: ProgressIndicatorComponent, selector: "fd-progress-indicator", inputs: { valueText: "valueText", unit: "unit", valueMin: "valueMin", valueMax: "valueMax", valueNow: "valueNow", state: "state", animate: "animate" }, usesOnChanges: true, ngImport: i0, template: "<div\n class=\"fd-progress-indicator\"\n tabindex=\"-1\"\n role=\"progressbar\"\n [attr.aria-valuemin]=\"valueMin\"\n [attr.aria-valuenow]=\"valueNow\"\n [attr.aria-valuemax]=\"valueMax\"\n [attr.aria-valuetext]=\"valueText\"\n [attr.aria-label]=\"valueText\"\n [class]=\"state ? 'fd-progress-indicator--' + state : ''\"\n>\n <ng-container *ngIf=\"!hasPopover\">\n <ng-container *ngTemplateOutlet=\"indicatorContainer\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"hasPopover\">\n <fd-popover [style.width.%]=\"100\" [noArrow]=\"false\" #popover>\n <fd-popover-control>\n <ng-container *ngTemplateOutlet=\"indicatorContainer\"></ng-container>\n </fd-popover-control>\n <fd-popover-body>\n <div class=\"fd-popover__wrapper\">\n <div class=\"fd-progress-indicator__overflow\">\n <span>{{ valueText }}</span>\n <span class=\"fd-progress-indicator__overflow-close\" (click)=\"popover.close()\">\n <i class=\"sap-icon sap-icon--decline\"></i>\n </span>\n </div>\n </div>\n </fd-popover-body>\n </fd-popover>\n </ng-container>\n</div>\n\n<ng-template #indicatorContainer>\n <div\n class=\"fd-progress-indicator__container\"\n *ngIf=\"calculateProgressBarWidth() === 0 || calculateProgressBarWidth() as progressBarWidth\"\n >\n <div\n *ngIf=\"progressBarWidth > 0\"\n class=\"fd-progress-indicator__progress-bar\"\n [class.fd-progress-indicator__progress-bar--animated]=\"animate\"\n [style.min-width.%]=\"progressBarWidth\"\n [style.width.%]=\"progressBarWidth\"\n >\n <ng-container *ngIf=\"progressBarWidth > 50\">\n <ng-template [ngTemplateOutlet]=\"progressBarLabel\"></ng-template>\n </ng-container>\n </div>\n <div class=\"fd-progress-indicator__remaining\" [style.min-width]=\"0\">\n <ng-container *ngIf=\"progressBarWidth <= 50\">\n <ng-template [ngTemplateOutlet]=\"progressBarLabel\"></ng-template>\n </ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #progressBarLabel>\n <span class=\"fd-progress-indicator__icon\" *ngIf=\"state\"></span>\n <span class=\"fd-progress-indicator__label\" *ngIf=\"!valueText\"> {{ valueNow }}% </span>\n <span class=\"fd-progress-indicator__label\" *ngIf=\"valueText\">\n {{ valueText }}\n </span>\n</ng-template>\n", styles: ["/*!\n * Fundamental Library Styles v0.26.0-rc.27\n * Copyright (c) 2022 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-progress-indicator{--rootMargin:.5rem 0;--progressBarBackground:var(--fdProgress_Indicator_Background_Color_Neutral);--progressBarBorderColor:var(--fdProgress_Indicator_Progress_Bar_Border_Color_Neutral,transparent);--progressBarBorderRightColor:var(--fdProgress_Indicator_Border_Right_Color,var(--progressBarBorderColor));--containerBackground:var(--fdProgress_Indicator_Container_Background_Neutral,var(--sapField_Background));--containerBorderColor:var(--fdProgress_Indicator_Container_Border_Neutral,var(--sapField_BorderColor));--iconDisplay:none;--iconContent:\"\";--labelMarginStart:var(--fdProgress_Indicator_Label_Margin_Start);--labelMarginEnd:var(--fdProgress_Indicator_Label_Margin_End);-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;height:var(--fdProgress_Indicator_Height);line-height:var(--sapContent_LineHeight);margin:0;margin:var(--rootMargin);padding:0;padding:var(--fdProgress_Indicator_Container_Margin);width:100%}.fd-progress-indicator:after,.fd-progress-indicator:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator.fd-popover{margin:var(--rootMargin)}.fd-progress-indicator--mobile{--rootMargin:.875rem 0}.fd-progress-indicator--display,.fd-progress-indicator--display.fd-popover{margin:0}.fd-progress-indicator--informative{--progressBarBackground:var(--fdProgress_Indicator_Background_Color_Informative);--progressBarBorderColor:var(--fdProgress_Indicator_Progress_Bar_Border_Color_Informative,transparent);--containerBackground:var(--fdProgress_Indicator_Container_Background_Informative,var(--sapField_Background));--containerBorderColor:var(--fdProgress_Indicator_Container_Border_Informative,var(--sapField_BorderColor));--iconContent:var(--fdProgress_Icon_Informative);--iconDisplay:inline;--iconColor:var(--fdProgress_Icon_Color_Informative,var(--fdProgress_Indicator_Label_Color));--labelMarginStart:0}.fd-progress-indicator--positive{--progressBarBackground:var(--fdProgress_Indicator_Background_Color_Positive);--progressBarBorderColor:var(--fdProgress_Indicator_Progress_Bar_Border_Color_Positive,transparent);--containerBackground:var(--fdProgress_Indicator_Container_Background_Positive,var(--sapField_Background));--containerBorderColor:var(--fdProgress_Indicator_Container_Border_Positive,var(--sapField_BorderColor));--iconContent:var(--fdProgress_Icon_Positive);--iconDisplay:inline;--iconColor:var(--fdProgress_Icon_Color_Positive,var(--fdProgress_Indicator_Label_Color));--labelMarginStart:0}.fd-progress-indicator--negative{--progressBarBackground:var(--fdProgress_Indicator_Background_Color_Negative);--progressBarBorderColor:var(--fdProgress_Indicator_Progress_Bar_Border_Color_Negative,transparent);--containerBackground:var(--fdProgress_Indicator_Container_Background_Negative,var(--sapField_Background));--containerBorderColor:var(--fdProgress_Indicator_Container_Border_Negative,var(--sapField_BorderColor));--iconContent:var(--fdProgress_Icon_Negative);--iconDisplay:inline;--iconColor:var(--fdProgress_Icon_Color_Negative,var(--fdProgress_Indicator_Label_Color));--labelMarginStart:0}.fd-progress-indicator--critical{--progressBarBackground:var(--fdProgress_Indicator_Background_Color_Critical);--progressBarBorderColor:var(--fdProgress_Indicator_Progress_Bar_Border_Color_Critical,transparent);--containerBackground:var(--fdProgress_Indicator_Container_Background_Critical,var(--sapField_Background));--containerBorderColor:var(--fdProgress_Indicator_Container_Border_Critical,var(--sapField_BorderColor));--iconContent:var(--fdProgress_Icon_Critical);--iconDisplay:inline;--iconColor:var(--fdProgress_Icon_Color_Critical,var(--fdProgress_Indicator_Label_Color));--labelMarginStart:0}.fd-progress-indicator__container{-webkit-box-sizing:border-box;background:var(--containerBackground);border:0;border:.0625rem solid var(--containerBorderColor);border-radius:.5rem;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:var(--fdProgress_Indicator_Container_Height);line-height:var(--sapContent_LineHeight);margin:0;min-height:var(--fdProgress_Indicator_Container_Height);min-width:4rem;overflow:var(--fdProgress_Indicator_Container_Overflow);padding:0;position:var(--fdProgress_Indicator_Container_Position, static);width:var(--fdProgress_Indicator_Container_Width)}.fd-progress-indicator__container:after,.fd-progress-indicator__container:before{-webkit-box-sizing:inherit;background-color:var(--progressBarBackground);border-radius:50%;box-sizing:inherit;content:\"\";display:var(--fdProgress_Indicator_Progress_Bar_Boundary_Display, none);font-size:inherit;height:.25rem;position:absolute;top:0;width:.25rem}.fd-progress-indicator__container:before{left:0}.fd-progress-indicator__container:after{right:0}.fd-progress-indicator[aria-valuenow=\"0\"] .fd-progress-indicator__progress-bar{border:none}.fd-progress-indicator[aria-valuenow=\"100\"] .fd-progress-indicator__progress-bar{right:var(--fdProgress_Indicator_Progress_Bar_Position_Left);width:auto!important}.fd-progress-indicator[aria-valuenow=\"100\"] .fd-progress-indicator__progress-bar[dir=rtl],.fd-progress-indicator__progress-bar,[dir=rtl] .fd-progress-indicator[aria-valuenow=\"100\"] .fd-progress-indicator__progress-bar{left:var(--fdProgress_Indicator_Progress_Bar_Position_Left)}.fd-progress-indicator__progress-bar{-webkit-box-sizing:border-box;-webkit-box-pack:end;-ms-flex-pack:end;background:var(--progressBarBackground);border:0;border:var(--fdProgress_Indicator_Progress_Bar_Border) var(--progressBarBorderColor);border-radius:var(--fdProgress_Indicator_Progress_Bar_Border_Radius);border-right:var(--fdProgress_Indicator_Border_Right) var(--progressBarBorderRightColor);bottom:var(--fdProgress_Indicator_Progress_Bar_Position_Bottom);box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:var(--fdProgress_Indicator_Progress_Bar_Height);justify-content:flex-end;line-height:var(--sapContent_LineHeight);margin:0;margin:var(--fdProgress_Indicator_Progress_Bar_Margin);padding:0;position:var(--fdProgress_Indicator_Progress_Bar_Position, static)}.fd-progress-indicator__progress-bar:after,.fd-progress-indicator__progress-bar:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator__progress-bar.fd-popover__control{border:var(--fdProgress_Indicator_Progress_Bar_Popover_Control_Border, 0 solid) var(--progressBarBorderColor);position:var(--fdProgress_Indicator_Progress_Bar_Position, relative)}.fd-progress-indicator__progress-bar .fd-progress-indicator__label{color:var(--fdProgress_Indicator_Label_Color_Contrast)}.fd-progress-indicator__progress-bar[dir=rtl],[dir=rtl] .fd-progress-indicator__progress-bar{border:var(--fdProgress_Indicator_Progress_Bar_Border) var(--progressBarBorderColor);border-left:var(--fdProgress_Indicator_Border_Right) var(--progressBarBorderRightColor);border-right:none;left:auto;right:var(--fdProgress_Indicator_Progress_Bar_Position_Left)}.fd-progress-indicator__remaining{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-progress-indicator__remaining:after,.fd-progress-indicator__remaining:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator__remaining.fd-popover__control{flex-grow:1;min-width:0}.fd-progress-indicator__icon{bottom:-.625rem;display:var(--iconDisplay);margin-left:var(--fdProgress_Indicator_Label_Margin_Start);margin-right:var(--fdProgress_Icon_Space_Before_Label);position:var(--fdProgress_Indicator_Icon_Position, static);right:-1.25rem}.fd-progress-indicator__icon[dir=rtl],[dir=rtl] .fd-progress-indicator__icon{left:-1.25rem;margin-left:var(--fdProgress_Icon_Space_Before_Label);margin-right:var(--fdProgress_Indicator_Label_Margin_Start);right:auto}.fd-progress-indicator__icon:before{color:var(--iconColor);content:var(--iconContent);font-family:SAP-icons;font-size:var(--fdProgress_Indicator_Icon_Font_Size);vertical-align:middle}.fd-progress-indicator__icon+.fd-progress-indicator__label{margin-left:0}.fd-progress-indicator__icon+.fd-progress-indicator__label[dir=rtl],[dir=rtl] .fd-progress-indicator__icon+.fd-progress-indicator__label{margin-left:inherit;margin-right:0}.fd-progress-indicator__label{-webkit-box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--fdProgress_Indicator_Label_Color);display:inline-block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--fdProgress_Indicator_Label_Font_Size);font-weight:400;left:0;line-height:var(--sapContent_LineHeight);line-height:normal;margin:0;margin-left:var(--labelMarginStart);margin-right:var(--labelMarginEnd);max-width:100%;overflow:hidden;padding:0;position:var(--fdProgress_Indicator_Label_Position, static);text-overflow:ellipsis;top:-1.25rem;user-select:none;white-space:nowrap}.fd-progress-indicator__label:after,.fd-progress-indicator__label:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator__label[dir=rtl],[dir=rtl] .fd-progress-indicator__label{left:auto;margin-left:var(--labelMarginEnd);margin-right:var(--labelMarginStart);right:0}.fd-progress-indicator__overflow{-webkit-box-sizing:border-box;-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:justify;-ms-flex-pack:justify;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;justify-content:space-between;line-height:var(--sapContent_LineHeight);margin:0;max-width:95vw;overflow:hidden;padding:0 0 0 .5rem;white-space:normal}.fd-progress-indicator__overflow:after,.fd-progress-indicator__overflow:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator__overflow[dir=rtl],[dir=rtl] .fd-progress-indicator__overflow{padding-left:0;padding-right:.5rem}.fd-progress-indicator__overflow-close{-webkit-box-sizing:border-box;background:transparent;border:0;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:1.375rem;line-height:var(--sapContent_LineHeight);line-height:1.6rem;margin:.125rem;padding:0;text-align:center;width:1.4375rem}.fd-progress-indicator__overflow-close:after,.fd-progress-indicator__overflow-close:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator__overflow-close[dir=rtl],[dir=rtl] .fd-progress-indicator__overflow-close{margin-left:0;margin-right:.5rem}.fd-progress-indicator__overflow-close.is-focus,.fd-progress-indicator__overflow-close:focus{outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);z-index:5}.fd-progress-indicator__overflow-close [class*=sap-icon]{color:var(--sapContent_IconColor);font-size:var(--sapFontSmallSize)}.fd-progress-indicator__progress-bar--animated{transition:min-width .5s ease-in-out,width .5s ease-in-out}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.PopoverControlComponent, selector: "fd-popover-control" }, { kind: "component", type: i2.PopoverBodyComponent, selector: "fd-popover-body" }, { kind: "component", type: i2.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
63
+ ProgressIndicatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.0.2", type: ProgressIndicatorComponent, selector: "fd-progress-indicator", inputs: { valueText: "valueText", unit: "unit", valueMin: "valueMin", valueMax: "valueMax", valueNow: "valueNow", state: "state", animate: "animate" }, usesOnChanges: true, ngImport: i0, template: "<div\n class=\"fd-progress-indicator\"\n tabindex=\"-1\"\n role=\"progressbar\"\n [attr.aria-valuemin]=\"valueMin\"\n [attr.aria-valuenow]=\"valueNow\"\n [attr.aria-valuemax]=\"valueMax\"\n [attr.aria-valuetext]=\"valueText\"\n [attr.aria-label]=\"valueText\"\n [class]=\"state ? 'fd-progress-indicator--' + state : ''\"\n>\n <ng-container *ngIf=\"!hasPopover\">\n <ng-container *ngTemplateOutlet=\"indicatorContainer\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"hasPopover\">\n <fd-popover [style.width.%]=\"100\" [noArrow]=\"false\" #popover>\n <fd-popover-control>\n <ng-container *ngTemplateOutlet=\"indicatorContainer\"></ng-container>\n </fd-popover-control>\n <fd-popover-body>\n <div class=\"fd-popover__wrapper\">\n <div class=\"fd-progress-indicator__overflow\">\n <span>{{ valueText }}</span>\n <span class=\"fd-progress-indicator__overflow-close\" (click)=\"popover.close()\">\n <i class=\"sap-icon sap-icon--decline\"></i>\n </span>\n </div>\n </div>\n </fd-popover-body>\n </fd-popover>\n </ng-container>\n</div>\n\n<ng-template #indicatorContainer>\n <div\n class=\"fd-progress-indicator__container\"\n *ngIf=\"calculateProgressBarWidth() === 0 || calculateProgressBarWidth() as progressBarWidth\"\n >\n <div\n *ngIf=\"progressBarWidth > 0\"\n class=\"fd-progress-indicator__progress-bar\"\n [class.fd-progress-indicator__progress-bar--animated]=\"animate\"\n [style.min-width.%]=\"progressBarWidth\"\n [style.width.%]=\"progressBarWidth\"\n >\n <ng-container *ngIf=\"progressBarWidth > 50\">\n <ng-template [ngTemplateOutlet]=\"progressBarLabel\"></ng-template>\n </ng-container>\n </div>\n <div class=\"fd-progress-indicator__remaining\" [style.min-width]=\"0\">\n <ng-container *ngIf=\"progressBarWidth <= 50\">\n <ng-template [ngTemplateOutlet]=\"progressBarLabel\"></ng-template>\n </ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #progressBarLabel>\n <span class=\"fd-progress-indicator__icon\" *ngIf=\"state\"></span>\n <span class=\"fd-progress-indicator__label\" *ngIf=\"!valueText\"> {{ valueNow }}% </span>\n <span class=\"fd-progress-indicator__label\" *ngIf=\"valueText\">\n {{ valueText }}\n </span>\n</ng-template>\n", styles: ["/*!\n * Fundamental Library Styles v0.26.0-rc.41\n * Copyright (c) 2022 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-progress-indicator{--rootMargin:.5rem 0;--progressBarBackground:var(--fdProgress_Indicator_Background_Color_Neutral);--progressBarBorderColor:var(--fdProgress_Indicator_Progress_Bar_Border_Color_Neutral,transparent);--progressBarBorderRightColor:var(--fdProgress_Indicator_Border_Right_Color,var(--progressBarBorderColor));--containerBackground:var(--fdProgress_Indicator_Container_Background_Neutral,var(--sapField_Background));--containerBorderColor:var(--fdProgress_Indicator_Container_Border_Neutral,var(--sapField_BorderColor));--iconDisplay:none;--iconContent:\"\";--labelMarginStart:var(--fdProgress_Indicator_Label_Margin_Start);--labelMarginEnd:var(--fdProgress_Indicator_Label_Margin_End);-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;height:var(--fdProgress_Indicator_Height);line-height:var(--sapContent_LineHeight);margin:0;margin:var(--rootMargin);padding:0;padding:var(--fdProgress_Indicator_Container_Margin);width:100%}.fd-progress-indicator:after,.fd-progress-indicator:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator.fd-popover{margin:var(--rootMargin)}.fd-progress-indicator--mobile{--rootMargin:.875rem 0}.fd-progress-indicator--display,.fd-progress-indicator--display.fd-popover{margin:0}.fd-progress-indicator--informative{--progressBarBackground:var(--fdProgress_Indicator_Background_Color_Informative);--progressBarBorderColor:var(--fdProgress_Indicator_Progress_Bar_Border_Color_Informative,transparent);--containerBackground:var(--fdProgress_Indicator_Container_Background_Informative,var(--sapField_Background));--containerBorderColor:var(--fdProgress_Indicator_Container_Border_Informative,var(--sapField_BorderColor));--iconContent:var(--fdProgress_Icon_Informative);--iconDisplay:inline;--iconColor:var(--fdProgress_Icon_Color_Informative,var(--fdProgress_Indicator_Label_Color));--labelMarginStart:0}.fd-progress-indicator--positive{--progressBarBackground:var(--fdProgress_Indicator_Background_Color_Positive);--progressBarBorderColor:var(--fdProgress_Indicator_Progress_Bar_Border_Color_Positive,transparent);--containerBackground:var(--fdProgress_Indicator_Container_Background_Positive,var(--sapField_Background));--containerBorderColor:var(--fdProgress_Indicator_Container_Border_Positive,var(--sapField_BorderColor));--iconContent:var(--fdProgress_Icon_Positive);--iconDisplay:inline;--iconColor:var(--fdProgress_Icon_Color_Positive,var(--fdProgress_Indicator_Label_Color));--labelMarginStart:0}.fd-progress-indicator--negative{--progressBarBackground:var(--fdProgress_Indicator_Background_Color_Negative);--progressBarBorderColor:var(--fdProgress_Indicator_Progress_Bar_Border_Color_Negative,transparent);--containerBackground:var(--fdProgress_Indicator_Container_Background_Negative,var(--sapField_Background));--containerBorderColor:var(--fdProgress_Indicator_Container_Border_Negative,var(--sapField_BorderColor));--iconContent:var(--fdProgress_Icon_Negative);--iconDisplay:inline;--iconColor:var(--fdProgress_Icon_Color_Negative,var(--fdProgress_Indicator_Label_Color));--labelMarginStart:0}.fd-progress-indicator--critical{--progressBarBackground:var(--fdProgress_Indicator_Background_Color_Critical);--progressBarBorderColor:var(--fdProgress_Indicator_Progress_Bar_Border_Color_Critical,transparent);--containerBackground:var(--fdProgress_Indicator_Container_Background_Critical,var(--sapField_Background));--containerBorderColor:var(--fdProgress_Indicator_Container_Border_Critical,var(--sapField_BorderColor));--iconContent:var(--fdProgress_Icon_Critical);--iconDisplay:inline;--iconColor:var(--fdProgress_Icon_Color_Critical,var(--fdProgress_Indicator_Label_Color));--labelMarginStart:0}.fd-progress-indicator__container{-webkit-box-sizing:border-box;background:var(--containerBackground);border:0;border:.0625rem solid var(--containerBorderColor);border-radius:.5rem;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:var(--fdProgress_Indicator_Container_Height);line-height:var(--sapContent_LineHeight);margin:0;min-height:var(--fdProgress_Indicator_Container_Height);min-width:4rem;overflow:var(--fdProgress_Indicator_Container_Overflow);padding:0;position:var(--fdProgress_Indicator_Container_Position, static);width:var(--fdProgress_Indicator_Container_Width)}.fd-progress-indicator__container:after,.fd-progress-indicator__container:before{-webkit-box-sizing:inherit;background-color:var(--progressBarBackground);border-radius:50%;box-sizing:inherit;content:\"\";display:var(--fdProgress_Indicator_Progress_Bar_Boundary_Display, none);font-size:inherit;height:.25rem;position:absolute;top:0;width:.25rem}.fd-progress-indicator__container:before{left:0}.fd-progress-indicator__container:after{right:0}.fd-progress-indicator[aria-valuenow=\"0\"] .fd-progress-indicator__progress-bar{border:none}.fd-progress-indicator[aria-valuenow=\"100\"] .fd-progress-indicator__progress-bar{right:var(--fdProgress_Indicator_Progress_Bar_Position_Left);width:auto!important}.fd-progress-indicator[aria-valuenow=\"100\"] .fd-progress-indicator__progress-bar[dir=rtl],.fd-progress-indicator__progress-bar,[dir=rtl] .fd-progress-indicator[aria-valuenow=\"100\"] .fd-progress-indicator__progress-bar{left:var(--fdProgress_Indicator_Progress_Bar_Position_Left)}.fd-progress-indicator__progress-bar{-webkit-box-sizing:border-box;-webkit-box-pack:end;-ms-flex-pack:end;background:var(--progressBarBackground);border:0;border:var(--fdProgress_Indicator_Progress_Bar_Border) var(--progressBarBorderColor);border-radius:var(--fdProgress_Indicator_Progress_Bar_Border_Radius);border-right:var(--fdProgress_Indicator_Border_Right) var(--progressBarBorderRightColor);bottom:var(--fdProgress_Indicator_Progress_Bar_Position_Bottom);box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:var(--fdProgress_Indicator_Progress_Bar_Height);justify-content:flex-end;line-height:var(--sapContent_LineHeight);margin:0;margin:var(--fdProgress_Indicator_Progress_Bar_Margin);padding:0;position:var(--fdProgress_Indicator_Progress_Bar_Position, static)}.fd-progress-indicator__progress-bar:after,.fd-progress-indicator__progress-bar:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator__progress-bar.fd-popover__control{border:var(--fdProgress_Indicator_Progress_Bar_Popover_Control_Border, 0 solid) var(--progressBarBorderColor);position:var(--fdProgress_Indicator_Progress_Bar_Position, relative)}.fd-progress-indicator__progress-bar .fd-progress-indicator__label{color:var(--fdProgress_Indicator_Label_Color_Contrast)}.fd-progress-indicator__progress-bar[dir=rtl],[dir=rtl] .fd-progress-indicator__progress-bar{border:var(--fdProgress_Indicator_Progress_Bar_Border) var(--progressBarBorderColor);border-left:var(--fdProgress_Indicator_Border_Right) var(--progressBarBorderRightColor);border-right:none;left:auto;right:var(--fdProgress_Indicator_Progress_Bar_Position_Left)}.fd-progress-indicator__remaining{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-progress-indicator__remaining:after,.fd-progress-indicator__remaining:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator__remaining.fd-popover__control{flex-grow:1;min-width:0}.fd-progress-indicator__icon{bottom:-.625rem;display:var(--iconDisplay);margin-left:var(--fdProgress_Indicator_Label_Margin_Start);margin-right:var(--fdProgress_Icon_Space_Before_Label);position:var(--fdProgress_Indicator_Icon_Position, static);right:-1.25rem}.fd-progress-indicator__icon[dir=rtl],[dir=rtl] .fd-progress-indicator__icon{left:-1.25rem;margin-left:var(--fdProgress_Icon_Space_Before_Label);margin-right:var(--fdProgress_Indicator_Label_Margin_Start);right:auto}.fd-progress-indicator__icon:before{color:var(--iconColor);content:var(--iconContent);font-family:SAP-icons;font-size:var(--fdProgress_Indicator_Icon_Font_Size);vertical-align:middle}.fd-progress-indicator__icon+.fd-progress-indicator__label{margin-left:0}.fd-progress-indicator__icon+.fd-progress-indicator__label[dir=rtl],[dir=rtl] .fd-progress-indicator__icon+.fd-progress-indicator__label{margin-left:inherit;margin-right:0}.fd-progress-indicator__label{-webkit-box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--fdProgress_Indicator_Label_Color);display:inline-block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--fdProgress_Indicator_Label_Font_Size);font-weight:400;left:0;line-height:var(--sapContent_LineHeight);line-height:normal;margin:0;margin-left:var(--labelMarginStart);margin-right:var(--labelMarginEnd);max-width:100%;overflow:hidden;padding:0;position:var(--fdProgress_Indicator_Label_Position, static);text-overflow:ellipsis;top:-1.25rem;user-select:none;white-space:nowrap}.fd-progress-indicator__label:after,.fd-progress-indicator__label:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator__label[dir=rtl],[dir=rtl] .fd-progress-indicator__label{left:auto;margin-left:var(--labelMarginEnd);margin-right:var(--labelMarginStart);right:0}.fd-progress-indicator__overflow{-webkit-box-sizing:border-box;-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:justify;-ms-flex-pack:justify;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;justify-content:space-between;line-height:var(--sapContent_LineHeight);margin:0;max-width:95vw;overflow:hidden;padding:0 0 0 .5rem;white-space:normal}.fd-progress-indicator__overflow:after,.fd-progress-indicator__overflow:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator__overflow[dir=rtl],[dir=rtl] .fd-progress-indicator__overflow{padding-left:0;padding-right:.5rem}.fd-progress-indicator__overflow-close{-webkit-box-sizing:border-box;background:transparent;border:0;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:1.375rem;line-height:var(--sapContent_LineHeight);line-height:1.6rem;margin:.125rem;padding:0;text-align:center;width:1.4375rem}.fd-progress-indicator__overflow-close:after,.fd-progress-indicator__overflow-close:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator__overflow-close[dir=rtl],[dir=rtl] .fd-progress-indicator__overflow-close{margin-left:0;margin-right:.5rem}.fd-progress-indicator__overflow-close.is-focus,.fd-progress-indicator__overflow-close:focus{outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);z-index:5}.fd-progress-indicator__overflow-close [class*=sap-icon]{color:var(--sapContent_IconColor);font-size:var(--sapFontSmallSize)}.fd-progress-indicator__progress-bar--animated{transition:min-width .5s ease-in-out,width .5s ease-in-out}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.PopoverControlComponent, selector: "fd-popover-control" }, { kind: "component", type: i2.PopoverBodyComponent, selector: "fd-popover-body" }, { kind: "component", type: i2.PopoverComponent, selector: "fd-popover", inputs: ["title", "trigger", "fixedPosition", "id", "mobile", "mobileConfig"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
64
64
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.0.2", ngImport: i0, type: ProgressIndicatorComponent, decorators: [{
65
65
  type: Component,
66
- args: [{ selector: 'fd-progress-indicator', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"fd-progress-indicator\"\n tabindex=\"-1\"\n role=\"progressbar\"\n [attr.aria-valuemin]=\"valueMin\"\n [attr.aria-valuenow]=\"valueNow\"\n [attr.aria-valuemax]=\"valueMax\"\n [attr.aria-valuetext]=\"valueText\"\n [attr.aria-label]=\"valueText\"\n [class]=\"state ? 'fd-progress-indicator--' + state : ''\"\n>\n <ng-container *ngIf=\"!hasPopover\">\n <ng-container *ngTemplateOutlet=\"indicatorContainer\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"hasPopover\">\n <fd-popover [style.width.%]=\"100\" [noArrow]=\"false\" #popover>\n <fd-popover-control>\n <ng-container *ngTemplateOutlet=\"indicatorContainer\"></ng-container>\n </fd-popover-control>\n <fd-popover-body>\n <div class=\"fd-popover__wrapper\">\n <div class=\"fd-progress-indicator__overflow\">\n <span>{{ valueText }}</span>\n <span class=\"fd-progress-indicator__overflow-close\" (click)=\"popover.close()\">\n <i class=\"sap-icon sap-icon--decline\"></i>\n </span>\n </div>\n </div>\n </fd-popover-body>\n </fd-popover>\n </ng-container>\n</div>\n\n<ng-template #indicatorContainer>\n <div\n class=\"fd-progress-indicator__container\"\n *ngIf=\"calculateProgressBarWidth() === 0 || calculateProgressBarWidth() as progressBarWidth\"\n >\n <div\n *ngIf=\"progressBarWidth > 0\"\n class=\"fd-progress-indicator__progress-bar\"\n [class.fd-progress-indicator__progress-bar--animated]=\"animate\"\n [style.min-width.%]=\"progressBarWidth\"\n [style.width.%]=\"progressBarWidth\"\n >\n <ng-container *ngIf=\"progressBarWidth > 50\">\n <ng-template [ngTemplateOutlet]=\"progressBarLabel\"></ng-template>\n </ng-container>\n </div>\n <div class=\"fd-progress-indicator__remaining\" [style.min-width]=\"0\">\n <ng-container *ngIf=\"progressBarWidth <= 50\">\n <ng-template [ngTemplateOutlet]=\"progressBarLabel\"></ng-template>\n </ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #progressBarLabel>\n <span class=\"fd-progress-indicator__icon\" *ngIf=\"state\"></span>\n <span class=\"fd-progress-indicator__label\" *ngIf=\"!valueText\"> {{ valueNow }}% </span>\n <span class=\"fd-progress-indicator__label\" *ngIf=\"valueText\">\n {{ valueText }}\n </span>\n</ng-template>\n", styles: ["/*!\n * Fundamental Library Styles v0.26.0-rc.27\n * Copyright (c) 2022 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-progress-indicator{--rootMargin:.5rem 0;--progressBarBackground:var(--fdProgress_Indicator_Background_Color_Neutral);--progressBarBorderColor:var(--fdProgress_Indicator_Progress_Bar_Border_Color_Neutral,transparent);--progressBarBorderRightColor:var(--fdProgress_Indicator_Border_Right_Color,var(--progressBarBorderColor));--containerBackground:var(--fdProgress_Indicator_Container_Background_Neutral,var(--sapField_Background));--containerBorderColor:var(--fdProgress_Indicator_Container_Border_Neutral,var(--sapField_BorderColor));--iconDisplay:none;--iconContent:\"\";--labelMarginStart:var(--fdProgress_Indicator_Label_Margin_Start);--labelMarginEnd:var(--fdProgress_Indicator_Label_Margin_End);-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;height:var(--fdProgress_Indicator_Height);line-height:var(--sapContent_LineHeight);margin:0;margin:var(--rootMargin);padding:0;padding:var(--fdProgress_Indicator_Container_Margin);width:100%}.fd-progress-indicator:after,.fd-progress-indicator:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator.fd-popover{margin:var(--rootMargin)}.fd-progress-indicator--mobile{--rootMargin:.875rem 0}.fd-progress-indicator--display,.fd-progress-indicator--display.fd-popover{margin:0}.fd-progress-indicator--informative{--progressBarBackground:var(--fdProgress_Indicator_Background_Color_Informative);--progressBarBorderColor:var(--fdProgress_Indicator_Progress_Bar_Border_Color_Informative,transparent);--containerBackground:var(--fdProgress_Indicator_Container_Background_Informative,var(--sapField_Background));--containerBorderColor:var(--fdProgress_Indicator_Container_Border_Informative,var(--sapField_BorderColor));--iconContent:var(--fdProgress_Icon_Informative);--iconDisplay:inline;--iconColor:var(--fdProgress_Icon_Color_Informative,var(--fdProgress_Indicator_Label_Color));--labelMarginStart:0}.fd-progress-indicator--positive{--progressBarBackground:var(--fdProgress_Indicator_Background_Color_Positive);--progressBarBorderColor:var(--fdProgress_Indicator_Progress_Bar_Border_Color_Positive,transparent);--containerBackground:var(--fdProgress_Indicator_Container_Background_Positive,var(--sapField_Background));--containerBorderColor:var(--fdProgress_Indicator_Container_Border_Positive,var(--sapField_BorderColor));--iconContent:var(--fdProgress_Icon_Positive);--iconDisplay:inline;--iconColor:var(--fdProgress_Icon_Color_Positive,var(--fdProgress_Indicator_Label_Color));--labelMarginStart:0}.fd-progress-indicator--negative{--progressBarBackground:var(--fdProgress_Indicator_Background_Color_Negative);--progressBarBorderColor:var(--fdProgress_Indicator_Progress_Bar_Border_Color_Negative,transparent);--containerBackground:var(--fdProgress_Indicator_Container_Background_Negative,var(--sapField_Background));--containerBorderColor:var(--fdProgress_Indicator_Container_Border_Negative,var(--sapField_BorderColor));--iconContent:var(--fdProgress_Icon_Negative);--iconDisplay:inline;--iconColor:var(--fdProgress_Icon_Color_Negative,var(--fdProgress_Indicator_Label_Color));--labelMarginStart:0}.fd-progress-indicator--critical{--progressBarBackground:var(--fdProgress_Indicator_Background_Color_Critical);--progressBarBorderColor:var(--fdProgress_Indicator_Progress_Bar_Border_Color_Critical,transparent);--containerBackground:var(--fdProgress_Indicator_Container_Background_Critical,var(--sapField_Background));--containerBorderColor:var(--fdProgress_Indicator_Container_Border_Critical,var(--sapField_BorderColor));--iconContent:var(--fdProgress_Icon_Critical);--iconDisplay:inline;--iconColor:var(--fdProgress_Icon_Color_Critical,var(--fdProgress_Indicator_Label_Color));--labelMarginStart:0}.fd-progress-indicator__container{-webkit-box-sizing:border-box;background:var(--containerBackground);border:0;border:.0625rem solid var(--containerBorderColor);border-radius:.5rem;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:var(--fdProgress_Indicator_Container_Height);line-height:var(--sapContent_LineHeight);margin:0;min-height:var(--fdProgress_Indicator_Container_Height);min-width:4rem;overflow:var(--fdProgress_Indicator_Container_Overflow);padding:0;position:var(--fdProgress_Indicator_Container_Position, static);width:var(--fdProgress_Indicator_Container_Width)}.fd-progress-indicator__container:after,.fd-progress-indicator__container:before{-webkit-box-sizing:inherit;background-color:var(--progressBarBackground);border-radius:50%;box-sizing:inherit;content:\"\";display:var(--fdProgress_Indicator_Progress_Bar_Boundary_Display, none);font-size:inherit;height:.25rem;position:absolute;top:0;width:.25rem}.fd-progress-indicator__container:before{left:0}.fd-progress-indicator__container:after{right:0}.fd-progress-indicator[aria-valuenow=\"0\"] .fd-progress-indicator__progress-bar{border:none}.fd-progress-indicator[aria-valuenow=\"100\"] .fd-progress-indicator__progress-bar{right:var(--fdProgress_Indicator_Progress_Bar_Position_Left);width:auto!important}.fd-progress-indicator[aria-valuenow=\"100\"] .fd-progress-indicator__progress-bar[dir=rtl],.fd-progress-indicator__progress-bar,[dir=rtl] .fd-progress-indicator[aria-valuenow=\"100\"] .fd-progress-indicator__progress-bar{left:var(--fdProgress_Indicator_Progress_Bar_Position_Left)}.fd-progress-indicator__progress-bar{-webkit-box-sizing:border-box;-webkit-box-pack:end;-ms-flex-pack:end;background:var(--progressBarBackground);border:0;border:var(--fdProgress_Indicator_Progress_Bar_Border) var(--progressBarBorderColor);border-radius:var(--fdProgress_Indicator_Progress_Bar_Border_Radius);border-right:var(--fdProgress_Indicator_Border_Right) var(--progressBarBorderRightColor);bottom:var(--fdProgress_Indicator_Progress_Bar_Position_Bottom);box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:var(--fdProgress_Indicator_Progress_Bar_Height);justify-content:flex-end;line-height:var(--sapContent_LineHeight);margin:0;margin:var(--fdProgress_Indicator_Progress_Bar_Margin);padding:0;position:var(--fdProgress_Indicator_Progress_Bar_Position, static)}.fd-progress-indicator__progress-bar:after,.fd-progress-indicator__progress-bar:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator__progress-bar.fd-popover__control{border:var(--fdProgress_Indicator_Progress_Bar_Popover_Control_Border, 0 solid) var(--progressBarBorderColor);position:var(--fdProgress_Indicator_Progress_Bar_Position, relative)}.fd-progress-indicator__progress-bar .fd-progress-indicator__label{color:var(--fdProgress_Indicator_Label_Color_Contrast)}.fd-progress-indicator__progress-bar[dir=rtl],[dir=rtl] .fd-progress-indicator__progress-bar{border:var(--fdProgress_Indicator_Progress_Bar_Border) var(--progressBarBorderColor);border-left:var(--fdProgress_Indicator_Border_Right) var(--progressBarBorderRightColor);border-right:none;left:auto;right:var(--fdProgress_Indicator_Progress_Bar_Position_Left)}.fd-progress-indicator__remaining{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-progress-indicator__remaining:after,.fd-progress-indicator__remaining:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator__remaining.fd-popover__control{flex-grow:1;min-width:0}.fd-progress-indicator__icon{bottom:-.625rem;display:var(--iconDisplay);margin-left:var(--fdProgress_Indicator_Label_Margin_Start);margin-right:var(--fdProgress_Icon_Space_Before_Label);position:var(--fdProgress_Indicator_Icon_Position, static);right:-1.25rem}.fd-progress-indicator__icon[dir=rtl],[dir=rtl] .fd-progress-indicator__icon{left:-1.25rem;margin-left:var(--fdProgress_Icon_Space_Before_Label);margin-right:var(--fdProgress_Indicator_Label_Margin_Start);right:auto}.fd-progress-indicator__icon:before{color:var(--iconColor);content:var(--iconContent);font-family:SAP-icons;font-size:var(--fdProgress_Indicator_Icon_Font_Size);vertical-align:middle}.fd-progress-indicator__icon+.fd-progress-indicator__label{margin-left:0}.fd-progress-indicator__icon+.fd-progress-indicator__label[dir=rtl],[dir=rtl] .fd-progress-indicator__icon+.fd-progress-indicator__label{margin-left:inherit;margin-right:0}.fd-progress-indicator__label{-webkit-box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--fdProgress_Indicator_Label_Color);display:inline-block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--fdProgress_Indicator_Label_Font_Size);font-weight:400;left:0;line-height:var(--sapContent_LineHeight);line-height:normal;margin:0;margin-left:var(--labelMarginStart);margin-right:var(--labelMarginEnd);max-width:100%;overflow:hidden;padding:0;position:var(--fdProgress_Indicator_Label_Position, static);text-overflow:ellipsis;top:-1.25rem;user-select:none;white-space:nowrap}.fd-progress-indicator__label:after,.fd-progress-indicator__label:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator__label[dir=rtl],[dir=rtl] .fd-progress-indicator__label{left:auto;margin-left:var(--labelMarginEnd);margin-right:var(--labelMarginStart);right:0}.fd-progress-indicator__overflow{-webkit-box-sizing:border-box;-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:justify;-ms-flex-pack:justify;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;justify-content:space-between;line-height:var(--sapContent_LineHeight);margin:0;max-width:95vw;overflow:hidden;padding:0 0 0 .5rem;white-space:normal}.fd-progress-indicator__overflow:after,.fd-progress-indicator__overflow:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator__overflow[dir=rtl],[dir=rtl] .fd-progress-indicator__overflow{padding-left:0;padding-right:.5rem}.fd-progress-indicator__overflow-close{-webkit-box-sizing:border-box;background:transparent;border:0;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:1.375rem;line-height:var(--sapContent_LineHeight);line-height:1.6rem;margin:.125rem;padding:0;text-align:center;width:1.4375rem}.fd-progress-indicator__overflow-close:after,.fd-progress-indicator__overflow-close:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator__overflow-close[dir=rtl],[dir=rtl] .fd-progress-indicator__overflow-close{margin-left:0;margin-right:.5rem}.fd-progress-indicator__overflow-close.is-focus,.fd-progress-indicator__overflow-close:focus{outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);z-index:5}.fd-progress-indicator__overflow-close [class*=sap-icon]{color:var(--sapContent_IconColor);font-size:var(--sapFontSmallSize)}.fd-progress-indicator__progress-bar--animated{transition:min-width .5s ease-in-out,width .5s ease-in-out}\n"] }]
66
+ args: [{ selector: 'fd-progress-indicator', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"fd-progress-indicator\"\n tabindex=\"-1\"\n role=\"progressbar\"\n [attr.aria-valuemin]=\"valueMin\"\n [attr.aria-valuenow]=\"valueNow\"\n [attr.aria-valuemax]=\"valueMax\"\n [attr.aria-valuetext]=\"valueText\"\n [attr.aria-label]=\"valueText\"\n [class]=\"state ? 'fd-progress-indicator--' + state : ''\"\n>\n <ng-container *ngIf=\"!hasPopover\">\n <ng-container *ngTemplateOutlet=\"indicatorContainer\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"hasPopover\">\n <fd-popover [style.width.%]=\"100\" [noArrow]=\"false\" #popover>\n <fd-popover-control>\n <ng-container *ngTemplateOutlet=\"indicatorContainer\"></ng-container>\n </fd-popover-control>\n <fd-popover-body>\n <div class=\"fd-popover__wrapper\">\n <div class=\"fd-progress-indicator__overflow\">\n <span>{{ valueText }}</span>\n <span class=\"fd-progress-indicator__overflow-close\" (click)=\"popover.close()\">\n <i class=\"sap-icon sap-icon--decline\"></i>\n </span>\n </div>\n </div>\n </fd-popover-body>\n </fd-popover>\n </ng-container>\n</div>\n\n<ng-template #indicatorContainer>\n <div\n class=\"fd-progress-indicator__container\"\n *ngIf=\"calculateProgressBarWidth() === 0 || calculateProgressBarWidth() as progressBarWidth\"\n >\n <div\n *ngIf=\"progressBarWidth > 0\"\n class=\"fd-progress-indicator__progress-bar\"\n [class.fd-progress-indicator__progress-bar--animated]=\"animate\"\n [style.min-width.%]=\"progressBarWidth\"\n [style.width.%]=\"progressBarWidth\"\n >\n <ng-container *ngIf=\"progressBarWidth > 50\">\n <ng-template [ngTemplateOutlet]=\"progressBarLabel\"></ng-template>\n </ng-container>\n </div>\n <div class=\"fd-progress-indicator__remaining\" [style.min-width]=\"0\">\n <ng-container *ngIf=\"progressBarWidth <= 50\">\n <ng-template [ngTemplateOutlet]=\"progressBarLabel\"></ng-template>\n </ng-container>\n </div>\n </div>\n</ng-template>\n\n<ng-template #progressBarLabel>\n <span class=\"fd-progress-indicator__icon\" *ngIf=\"state\"></span>\n <span class=\"fd-progress-indicator__label\" *ngIf=\"!valueText\"> {{ valueNow }}% </span>\n <span class=\"fd-progress-indicator__label\" *ngIf=\"valueText\">\n {{ valueText }}\n </span>\n</ng-template>\n", styles: ["/*!\n * Fundamental Library Styles v0.26.0-rc.41\n * Copyright (c) 2022 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-progress-indicator{--rootMargin:.5rem 0;--progressBarBackground:var(--fdProgress_Indicator_Background_Color_Neutral);--progressBarBorderColor:var(--fdProgress_Indicator_Progress_Bar_Border_Color_Neutral,transparent);--progressBarBorderRightColor:var(--fdProgress_Indicator_Border_Right_Color,var(--progressBarBorderColor));--containerBackground:var(--fdProgress_Indicator_Container_Background_Neutral,var(--sapField_Background));--containerBorderColor:var(--fdProgress_Indicator_Container_Border_Neutral,var(--sapField_BorderColor));--iconDisplay:none;--iconContent:\"\";--labelMarginStart:var(--fdProgress_Indicator_Label_Margin_Start);--labelMarginEnd:var(--fdProgress_Indicator_Label_Margin_End);-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;height:var(--fdProgress_Indicator_Height);line-height:var(--sapContent_LineHeight);margin:0;margin:var(--rootMargin);padding:0;padding:var(--fdProgress_Indicator_Container_Margin);width:100%}.fd-progress-indicator:after,.fd-progress-indicator:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator.fd-popover{margin:var(--rootMargin)}.fd-progress-indicator--mobile{--rootMargin:.875rem 0}.fd-progress-indicator--display,.fd-progress-indicator--display.fd-popover{margin:0}.fd-progress-indicator--informative{--progressBarBackground:var(--fdProgress_Indicator_Background_Color_Informative);--progressBarBorderColor:var(--fdProgress_Indicator_Progress_Bar_Border_Color_Informative,transparent);--containerBackground:var(--fdProgress_Indicator_Container_Background_Informative,var(--sapField_Background));--containerBorderColor:var(--fdProgress_Indicator_Container_Border_Informative,var(--sapField_BorderColor));--iconContent:var(--fdProgress_Icon_Informative);--iconDisplay:inline;--iconColor:var(--fdProgress_Icon_Color_Informative,var(--fdProgress_Indicator_Label_Color));--labelMarginStart:0}.fd-progress-indicator--positive{--progressBarBackground:var(--fdProgress_Indicator_Background_Color_Positive);--progressBarBorderColor:var(--fdProgress_Indicator_Progress_Bar_Border_Color_Positive,transparent);--containerBackground:var(--fdProgress_Indicator_Container_Background_Positive,var(--sapField_Background));--containerBorderColor:var(--fdProgress_Indicator_Container_Border_Positive,var(--sapField_BorderColor));--iconContent:var(--fdProgress_Icon_Positive);--iconDisplay:inline;--iconColor:var(--fdProgress_Icon_Color_Positive,var(--fdProgress_Indicator_Label_Color));--labelMarginStart:0}.fd-progress-indicator--negative{--progressBarBackground:var(--fdProgress_Indicator_Background_Color_Negative);--progressBarBorderColor:var(--fdProgress_Indicator_Progress_Bar_Border_Color_Negative,transparent);--containerBackground:var(--fdProgress_Indicator_Container_Background_Negative,var(--sapField_Background));--containerBorderColor:var(--fdProgress_Indicator_Container_Border_Negative,var(--sapField_BorderColor));--iconContent:var(--fdProgress_Icon_Negative);--iconDisplay:inline;--iconColor:var(--fdProgress_Icon_Color_Negative,var(--fdProgress_Indicator_Label_Color));--labelMarginStart:0}.fd-progress-indicator--critical{--progressBarBackground:var(--fdProgress_Indicator_Background_Color_Critical);--progressBarBorderColor:var(--fdProgress_Indicator_Progress_Bar_Border_Color_Critical,transparent);--containerBackground:var(--fdProgress_Indicator_Container_Background_Critical,var(--sapField_Background));--containerBorderColor:var(--fdProgress_Indicator_Container_Border_Critical,var(--sapField_BorderColor));--iconContent:var(--fdProgress_Icon_Critical);--iconDisplay:inline;--iconColor:var(--fdProgress_Icon_Color_Critical,var(--fdProgress_Indicator_Label_Color));--labelMarginStart:0}.fd-progress-indicator__container{-webkit-box-sizing:border-box;background:var(--containerBackground);border:0;border:.0625rem solid var(--containerBorderColor);border-radius:.5rem;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:var(--fdProgress_Indicator_Container_Height);line-height:var(--sapContent_LineHeight);margin:0;min-height:var(--fdProgress_Indicator_Container_Height);min-width:4rem;overflow:var(--fdProgress_Indicator_Container_Overflow);padding:0;position:var(--fdProgress_Indicator_Container_Position, static);width:var(--fdProgress_Indicator_Container_Width)}.fd-progress-indicator__container:after,.fd-progress-indicator__container:before{-webkit-box-sizing:inherit;background-color:var(--progressBarBackground);border-radius:50%;box-sizing:inherit;content:\"\";display:var(--fdProgress_Indicator_Progress_Bar_Boundary_Display, none);font-size:inherit;height:.25rem;position:absolute;top:0;width:.25rem}.fd-progress-indicator__container:before{left:0}.fd-progress-indicator__container:after{right:0}.fd-progress-indicator[aria-valuenow=\"0\"] .fd-progress-indicator__progress-bar{border:none}.fd-progress-indicator[aria-valuenow=\"100\"] .fd-progress-indicator__progress-bar{right:var(--fdProgress_Indicator_Progress_Bar_Position_Left);width:auto!important}.fd-progress-indicator[aria-valuenow=\"100\"] .fd-progress-indicator__progress-bar[dir=rtl],.fd-progress-indicator__progress-bar,[dir=rtl] .fd-progress-indicator[aria-valuenow=\"100\"] .fd-progress-indicator__progress-bar{left:var(--fdProgress_Indicator_Progress_Bar_Position_Left)}.fd-progress-indicator__progress-bar{-webkit-box-sizing:border-box;-webkit-box-pack:end;-ms-flex-pack:end;background:var(--progressBarBackground);border:0;border:var(--fdProgress_Indicator_Progress_Bar_Border) var(--progressBarBorderColor);border-radius:var(--fdProgress_Indicator_Progress_Bar_Border_Radius);border-right:var(--fdProgress_Indicator_Border_Right) var(--progressBarBorderRightColor);bottom:var(--fdProgress_Indicator_Progress_Bar_Position_Bottom);box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:var(--fdProgress_Indicator_Progress_Bar_Height);justify-content:flex-end;line-height:var(--sapContent_LineHeight);margin:0;margin:var(--fdProgress_Indicator_Progress_Bar_Margin);padding:0;position:var(--fdProgress_Indicator_Progress_Bar_Position, static)}.fd-progress-indicator__progress-bar:after,.fd-progress-indicator__progress-bar:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator__progress-bar.fd-popover__control{border:var(--fdProgress_Indicator_Progress_Bar_Popover_Control_Border, 0 solid) var(--progressBarBorderColor);position:var(--fdProgress_Indicator_Progress_Bar_Position, relative)}.fd-progress-indicator__progress-bar .fd-progress-indicator__label{color:var(--fdProgress_Indicator_Label_Color_Contrast)}.fd-progress-indicator__progress-bar[dir=rtl],[dir=rtl] .fd-progress-indicator__progress-bar{border:var(--fdProgress_Indicator_Progress_Bar_Border) var(--progressBarBorderColor);border-left:var(--fdProgress_Indicator_Border_Right) var(--progressBarBorderRightColor);border-right:none;left:auto;right:var(--fdProgress_Indicator_Progress_Bar_Position_Left)}.fd-progress-indicator__remaining{-webkit-box-sizing:border-box;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;flex-direction:row;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;line-height:var(--sapContent_LineHeight);margin:0;padding:0}.fd-progress-indicator__remaining:after,.fd-progress-indicator__remaining:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator__remaining.fd-popover__control{flex-grow:1;min-width:0}.fd-progress-indicator__icon{bottom:-.625rem;display:var(--iconDisplay);margin-left:var(--fdProgress_Indicator_Label_Margin_Start);margin-right:var(--fdProgress_Icon_Space_Before_Label);position:var(--fdProgress_Indicator_Icon_Position, static);right:-1.25rem}.fd-progress-indicator__icon[dir=rtl],[dir=rtl] .fd-progress-indicator__icon{left:-1.25rem;margin-left:var(--fdProgress_Icon_Space_Before_Label);margin-right:var(--fdProgress_Indicator_Label_Margin_Start);right:auto}.fd-progress-indicator__icon:before{color:var(--iconColor);content:var(--iconContent);font-family:SAP-icons;font-size:var(--fdProgress_Indicator_Icon_Font_Size);vertical-align:middle}.fd-progress-indicator__icon+.fd-progress-indicator__label{margin-left:0}.fd-progress-indicator__icon+.fd-progress-indicator__label[dir=rtl],[dir=rtl] .fd-progress-indicator__icon+.fd-progress-indicator__label{margin-left:inherit;margin-right:0}.fd-progress-indicator__label{-webkit-box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;border:0;box-sizing:border-box;color:var(--sapTextColor);color:var(--fdProgress_Indicator_Label_Color);display:inline-block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--fdProgress_Indicator_Label_Font_Size);font-weight:400;left:0;line-height:var(--sapContent_LineHeight);line-height:normal;margin:0;margin-left:var(--labelMarginStart);margin-right:var(--labelMarginEnd);max-width:100%;overflow:hidden;padding:0;position:var(--fdProgress_Indicator_Label_Position, static);text-overflow:ellipsis;top:-1.25rem;user-select:none;white-space:nowrap}.fd-progress-indicator__label:after,.fd-progress-indicator__label:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator__label[dir=rtl],[dir=rtl] .fd-progress-indicator__label{left:auto;margin-left:var(--labelMarginEnd);margin-right:var(--labelMarginStart);right:0}.fd-progress-indicator__overflow{-webkit-box-sizing:border-box;-webkit-box-align:center;-ms-flex-align:center;-webkit-box-pack:justify;-ms-flex-pack:justify;align-items:center;border:0;box-sizing:border-box;color:var(--sapTextColor);display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;justify-content:space-between;line-height:var(--sapContent_LineHeight);margin:0;max-width:95vw;overflow:hidden;padding:0 0 0 .5rem;white-space:normal}.fd-progress-indicator__overflow:after,.fd-progress-indicator__overflow:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator__overflow[dir=rtl],[dir=rtl] .fd-progress-indicator__overflow{padding-left:0;padding-right:.5rem}.fd-progress-indicator__overflow-close{-webkit-box-sizing:border-box;background:transparent;border:0;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;height:1.375rem;line-height:var(--sapContent_LineHeight);line-height:1.6rem;margin:.125rem;padding:0;text-align:center;width:1.4375rem}.fd-progress-indicator__overflow-close:after,.fd-progress-indicator__overflow-close:before{box-sizing:inherit;font-size:inherit}.fd-progress-indicator__overflow-close[dir=rtl],[dir=rtl] .fd-progress-indicator__overflow-close{margin-left:0;margin-right:.5rem}.fd-progress-indicator__overflow-close.is-focus,.fd-progress-indicator__overflow-close:focus{outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);z-index:5}.fd-progress-indicator__overflow-close [class*=sap-icon]{color:var(--sapContent_IconColor);font-size:var(--sapFontSmallSize)}.fd-progress-indicator__progress-bar--animated{transition:min-width .5s ease-in-out,width .5s ease-in-out}\n"] }]
67
67
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { valueText: [{
68
68
  type: Input
69
69
  }], unit: [{