@fundamental-ngx/core 0.58.2-rc.0 → 0.58.2

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 (297) hide show
  1. package/fesm2022/fundamental-ngx-core-action-bar.mjs +26 -26
  2. package/fesm2022/fundamental-ngx-core-action-bar.mjs.map +1 -1
  3. package/fesm2022/fundamental-ngx-core-action-sheet.mjs +20 -20
  4. package/fesm2022/fundamental-ngx-core-action-sheet.mjs.map +1 -1
  5. package/fesm2022/fundamental-ngx-core-avatar-group-legacy.mjs +28 -28
  6. package/fesm2022/fundamental-ngx-core-avatar-group-legacy.mjs.map +1 -1
  7. package/fesm2022/fundamental-ngx-core-avatar-group.mjs +34 -34
  8. package/fesm2022/fundamental-ngx-core-avatar-group.mjs.map +1 -1
  9. package/fesm2022/fundamental-ngx-core-avatar.mjs +10 -10
  10. package/fesm2022/fundamental-ngx-core-avatar.mjs.map +1 -1
  11. package/fesm2022/fundamental-ngx-core-bar.mjs +25 -25
  12. package/fesm2022/fundamental-ngx-core-bar.mjs.map +1 -1
  13. package/fesm2022/fundamental-ngx-core-breadcrumb.mjs +10 -10
  14. package/fesm2022/fundamental-ngx-core-breadcrumb.mjs.map +1 -1
  15. package/fesm2022/fundamental-ngx-core-busy-indicator.mjs +15 -15
  16. package/fesm2022/fundamental-ngx-core-busy-indicator.mjs.map +1 -1
  17. package/fesm2022/fundamental-ngx-core-button.mjs +15 -15
  18. package/fesm2022/fundamental-ngx-core-button.mjs.map +1 -1
  19. package/fesm2022/fundamental-ngx-core-calendar.mjs +40 -40
  20. package/fesm2022/fundamental-ngx-core-calendar.mjs.map +1 -1
  21. package/fesm2022/fundamental-ngx-core-card.mjs +130 -126
  22. package/fesm2022/fundamental-ngx-core-card.mjs.map +1 -1
  23. package/fesm2022/fundamental-ngx-core-carousel.mjs +19 -19
  24. package/fesm2022/fundamental-ngx-core-carousel.mjs.map +1 -1
  25. package/fesm2022/fundamental-ngx-core-checkbox.mjs +7 -7
  26. package/fesm2022/fundamental-ngx-core-checkbox.mjs.map +1 -1
  27. package/fesm2022/fundamental-ngx-core-combobox.mjs +16 -16
  28. package/fesm2022/fundamental-ngx-core-combobox.mjs.map +1 -1
  29. package/fesm2022/fundamental-ngx-core-content-density.mjs +25 -25
  30. package/fesm2022/fundamental-ngx-core-content-density.mjs.map +1 -1
  31. package/fesm2022/fundamental-ngx-core-date-picker.mjs +13 -13
  32. package/fesm2022/fundamental-ngx-core-date-picker.mjs.map +1 -1
  33. package/fesm2022/fundamental-ngx-core-datetime-picker.mjs +13 -13
  34. package/fesm2022/fundamental-ngx-core-datetime-picker.mjs.map +1 -1
  35. package/fesm2022/fundamental-ngx-core-datetime.mjs +30 -30
  36. package/fesm2022/fundamental-ngx-core-datetime.mjs.map +1 -1
  37. package/fesm2022/fundamental-ngx-core-dialog.mjs +64 -64
  38. package/fesm2022/fundamental-ngx-core-dialog.mjs.map +1 -1
  39. package/fesm2022/fundamental-ngx-core-dynamic-page.mjs +52 -52
  40. package/fesm2022/fundamental-ngx-core-dynamic-page.mjs.map +1 -1
  41. package/fesm2022/fundamental-ngx-core-dynamic-side-content.mjs +13 -13
  42. package/fesm2022/fundamental-ngx-core-dynamic-side-content.mjs.map +1 -1
  43. package/fesm2022/fundamental-ngx-core-facets.mjs +17 -17
  44. package/fesm2022/fundamental-ngx-core-facets.mjs.map +1 -1
  45. package/fesm2022/fundamental-ngx-core-feed-input.mjs +17 -17
  46. package/fesm2022/fundamental-ngx-core-feed-input.mjs.map +1 -1
  47. package/fesm2022/fundamental-ngx-core-feed-list-item.mjs +22 -22
  48. package/fesm2022/fundamental-ngx-core-feed-list-item.mjs.map +1 -1
  49. package/fesm2022/fundamental-ngx-core-file-uploader.mjs +16 -16
  50. package/fesm2022/fundamental-ngx-core-file-uploader.mjs.map +1 -1
  51. package/fesm2022/fundamental-ngx-core-fixed-card-layout.mjs +13 -13
  52. package/fesm2022/fundamental-ngx-core-fixed-card-layout.mjs.map +1 -1
  53. package/fesm2022/fundamental-ngx-core-flexible-column-layout.mjs +7 -7
  54. package/fesm2022/fundamental-ngx-core-flexible-column-layout.mjs.map +1 -1
  55. package/fesm2022/fundamental-ngx-core-form.mjs +70 -70
  56. package/fesm2022/fundamental-ngx-core-form.mjs.map +1 -1
  57. package/fesm2022/fundamental-ngx-core-formatted-text.mjs +8 -8
  58. package/fesm2022/fundamental-ngx-core-formatted-text.mjs.map +1 -1
  59. package/fesm2022/fundamental-ngx-core-generic-tag.mjs +7 -7
  60. package/fesm2022/fundamental-ngx-core-generic-tag.mjs.map +1 -1
  61. package/fesm2022/fundamental-ngx-core-grid-list.mjs +47 -47
  62. package/fesm2022/fundamental-ngx-core-grid-list.mjs.map +1 -1
  63. package/fesm2022/fundamental-ngx-core-icon.mjs +8 -8
  64. package/fesm2022/fundamental-ngx-core-icon.mjs.map +1 -1
  65. package/fesm2022/fundamental-ngx-core-illustrated-message.mjs +19 -19
  66. package/fesm2022/fundamental-ngx-core-illustrated-message.mjs.map +1 -1
  67. package/fesm2022/fundamental-ngx-core-infinite-scroll.mjs +10 -8
  68. package/fesm2022/fundamental-ngx-core-infinite-scroll.mjs.map +1 -1
  69. package/fesm2022/fundamental-ngx-core-info-label.mjs +7 -7
  70. package/fesm2022/fundamental-ngx-core-info-label.mjs.map +1 -1
  71. package/fesm2022/fundamental-ngx-core-inline-help.mjs +7 -7
  72. package/fesm2022/fundamental-ngx-core-inline-help.mjs.map +1 -1
  73. package/fesm2022/fundamental-ngx-core-input-group.mjs +19 -19
  74. package/fesm2022/fundamental-ngx-core-input-group.mjs.map +1 -1
  75. package/fesm2022/fundamental-ngx-core-layout-grid.mjs +17 -17
  76. package/fesm2022/fundamental-ngx-core-layout-grid.mjs.map +1 -1
  77. package/fesm2022/fundamental-ngx-core-layout-panel.mjs +31 -31
  78. package/fesm2022/fundamental-ngx-core-layout-panel.mjs.map +1 -1
  79. package/fesm2022/fundamental-ngx-core-link.mjs +7 -7
  80. package/fesm2022/fundamental-ngx-core-link.mjs.map +1 -1
  81. package/fesm2022/fundamental-ngx-core-list.mjs +80 -80
  82. package/fesm2022/fundamental-ngx-core-list.mjs.map +1 -1
  83. package/fesm2022/fundamental-ngx-core-menu.mjs +58 -56
  84. package/fesm2022/fundamental-ngx-core-menu.mjs.map +1 -1
  85. package/fesm2022/fundamental-ngx-core-message-box.mjs +37 -37
  86. package/fesm2022/fundamental-ngx-core-message-box.mjs.map +1 -1
  87. package/fesm2022/fundamental-ngx-core-message-page.mjs +19 -19
  88. package/fesm2022/fundamental-ngx-core-message-page.mjs.map +1 -1
  89. package/fesm2022/fundamental-ngx-core-message-strip.mjs +25 -25
  90. package/fesm2022/fundamental-ngx-core-message-strip.mjs.map +1 -1
  91. package/fesm2022/fundamental-ngx-core-message-toast.mjs +17 -17
  92. package/fesm2022/fundamental-ngx-core-message-toast.mjs.map +1 -1
  93. package/fesm2022/fundamental-ngx-core-micro-process-flow.mjs +19 -19
  94. package/fesm2022/fundamental-ngx-core-micro-process-flow.mjs.map +1 -1
  95. package/fesm2022/fundamental-ngx-core-mobile-mode.mjs +3 -3
  96. package/fesm2022/fundamental-ngx-core-mobile-mode.mjs.map +1 -1
  97. package/fesm2022/fundamental-ngx-core-multi-combobox.mjs +22 -22
  98. package/fesm2022/fundamental-ngx-core-multi-combobox.mjs.map +1 -1
  99. package/fesm2022/fundamental-ngx-core-multi-input.mjs +15 -15
  100. package/fesm2022/fundamental-ngx-core-multi-input.mjs.map +1 -1
  101. package/fesm2022/fundamental-ngx-core-nested-list.mjs +40 -40
  102. package/fesm2022/fundamental-ngx-core-nested-list.mjs.map +1 -1
  103. package/fesm2022/fundamental-ngx-core-notification.mjs +88 -88
  104. package/fesm2022/fundamental-ngx-core-notification.mjs.map +1 -1
  105. package/fesm2022/fundamental-ngx-core-object-attribute.mjs +7 -7
  106. package/fesm2022/fundamental-ngx-core-object-attribute.mjs.map +1 -1
  107. package/fesm2022/fundamental-ngx-core-object-identifier.mjs +11 -11
  108. package/fesm2022/fundamental-ngx-core-object-identifier.mjs.map +1 -1
  109. package/fesm2022/fundamental-ngx-core-object-marker.mjs +7 -7
  110. package/fesm2022/fundamental-ngx-core-object-marker.mjs.map +1 -1
  111. package/fesm2022/fundamental-ngx-core-object-number.mjs +7 -7
  112. package/fesm2022/fundamental-ngx-core-object-number.mjs.map +1 -1
  113. package/fesm2022/fundamental-ngx-core-object-status.mjs +7 -7
  114. package/fesm2022/fundamental-ngx-core-object-status.mjs.map +1 -1
  115. package/fesm2022/fundamental-ngx-core-overflow-layout.mjs +31 -31
  116. package/fesm2022/fundamental-ngx-core-overflow-layout.mjs.map +1 -1
  117. package/fesm2022/fundamental-ngx-core-pagination.mjs +11 -11
  118. package/fesm2022/fundamental-ngx-core-pagination.mjs.map +1 -1
  119. package/fesm2022/fundamental-ngx-core-panel.mjs +19 -19
  120. package/fesm2022/fundamental-ngx-core-panel.mjs.map +1 -1
  121. package/fesm2022/fundamental-ngx-core-popover.mjs +42 -42
  122. package/fesm2022/fundamental-ngx-core-popover.mjs.map +1 -1
  123. package/fesm2022/fundamental-ngx-core-product-switch.mjs +13 -13
  124. package/fesm2022/fundamental-ngx-core-product-switch.mjs.map +1 -1
  125. package/fesm2022/fundamental-ngx-core-progress-indicator.mjs +7 -7
  126. package/fesm2022/fundamental-ngx-core-progress-indicator.mjs.map +1 -1
  127. package/fesm2022/fundamental-ngx-core-quick-view.mjs +37 -37
  128. package/fesm2022/fundamental-ngx-core-quick-view.mjs.map +1 -1
  129. package/fesm2022/fundamental-ngx-core-radio.mjs +7 -7
  130. package/fesm2022/fundamental-ngx-core-radio.mjs.map +1 -1
  131. package/fesm2022/fundamental-ngx-core-rating-indicator.mjs +10 -10
  132. package/fesm2022/fundamental-ngx-core-rating-indicator.mjs.map +1 -1
  133. package/fesm2022/fundamental-ngx-core-resizable-card-layout.mjs +10 -10
  134. package/fesm2022/fundamental-ngx-core-resizable-card-layout.mjs.map +1 -1
  135. package/fesm2022/fundamental-ngx-core-scroll-spy.mjs +7 -7
  136. package/fesm2022/fundamental-ngx-core-scroll-spy.mjs.map +1 -1
  137. package/fesm2022/fundamental-ngx-core-scrollbar.mjs +7 -7
  138. package/fesm2022/fundamental-ngx-core-scrollbar.mjs.map +1 -1
  139. package/fesm2022/fundamental-ngx-core-segmented-button.mjs +7 -7
  140. package/fesm2022/fundamental-ngx-core-segmented-button.mjs.map +1 -1
  141. package/fesm2022/fundamental-ngx-core-select.mjs +20 -20
  142. package/fesm2022/fundamental-ngx-core-select.mjs.map +1 -1
  143. package/fesm2022/fundamental-ngx-core-settings.mjs +52 -52
  144. package/fesm2022/fundamental-ngx-core-settings.mjs.map +1 -1
  145. package/fesm2022/fundamental-ngx-core-shared.mjs +3 -3
  146. package/fesm2022/fundamental-ngx-core-shared.mjs.map +1 -1
  147. package/fesm2022/fundamental-ngx-core-shellbar.mjs +88 -75
  148. package/fesm2022/fundamental-ngx-core-shellbar.mjs.map +1 -1
  149. package/fesm2022/fundamental-ngx-core-side-navigation.mjs +13 -13
  150. package/fesm2022/fundamental-ngx-core-side-navigation.mjs.map +1 -1
  151. package/fesm2022/fundamental-ngx-core-skeleton.mjs +12 -10
  152. package/fesm2022/fundamental-ngx-core-skeleton.mjs.map +1 -1
  153. package/fesm2022/fundamental-ngx-core-slider.mjs +10 -10
  154. package/fesm2022/fundamental-ngx-core-slider.mjs.map +1 -1
  155. package/fesm2022/fundamental-ngx-core-split-button.mjs +10 -10
  156. package/fesm2022/fundamental-ngx-core-split-button.mjs.map +1 -1
  157. package/fesm2022/fundamental-ngx-core-status-indicator.mjs +7 -7
  158. package/fesm2022/fundamental-ngx-core-status-indicator.mjs.map +1 -1
  159. package/fesm2022/fundamental-ngx-core-step-input.mjs +13 -9
  160. package/fesm2022/fundamental-ngx-core-step-input.mjs.map +1 -1
  161. package/fesm2022/fundamental-ngx-core-switch.mjs +7 -7
  162. package/fesm2022/fundamental-ngx-core-switch.mjs.map +1 -1
  163. package/fesm2022/fundamental-ngx-core-table.mjs +49 -49
  164. package/fesm2022/fundamental-ngx-core-table.mjs.map +1 -1
  165. package/fesm2022/fundamental-ngx-core-tabs.mjs +52 -52
  166. package/fesm2022/fundamental-ngx-core-tabs.mjs.map +1 -1
  167. package/fesm2022/fundamental-ngx-core-tests.mjs.map +1 -1
  168. package/fesm2022/fundamental-ngx-core-text.mjs +8 -8
  169. package/fesm2022/fundamental-ngx-core-text.mjs.map +1 -1
  170. package/fesm2022/fundamental-ngx-core-theming.mjs +7 -7
  171. package/fesm2022/fundamental-ngx-core-theming.mjs.map +1 -1
  172. package/fesm2022/fundamental-ngx-core-tile.mjs +94 -94
  173. package/fesm2022/fundamental-ngx-core-tile.mjs.map +1 -1
  174. package/fesm2022/fundamental-ngx-core-time-picker.mjs +8 -8
  175. package/fesm2022/fundamental-ngx-core-time-picker.mjs.map +1 -1
  176. package/fesm2022/fundamental-ngx-core-time.mjs +11 -11
  177. package/fesm2022/fundamental-ngx-core-time.mjs.map +1 -1
  178. package/fesm2022/fundamental-ngx-core-timeline.mjs +43 -43
  179. package/fesm2022/fundamental-ngx-core-timeline.mjs.map +1 -1
  180. package/fesm2022/fundamental-ngx-core-title.mjs +8 -8
  181. package/fesm2022/fundamental-ngx-core-title.mjs.map +1 -1
  182. package/fesm2022/fundamental-ngx-core-token.mjs +19 -15
  183. package/fesm2022/fundamental-ngx-core-token.mjs.map +1 -1
  184. package/fesm2022/fundamental-ngx-core-toolbar.mjs +47 -47
  185. package/fesm2022/fundamental-ngx-core-toolbar.mjs.map +1 -1
  186. package/fesm2022/fundamental-ngx-core-tree.mjs +32 -32
  187. package/fesm2022/fundamental-ngx-core-tree.mjs.map +1 -1
  188. package/fesm2022/fundamental-ngx-core-upload-collection.mjs +37 -37
  189. package/fesm2022/fundamental-ngx-core-upload-collection.mjs.map +1 -1
  190. package/fesm2022/fundamental-ngx-core-user-menu.mjs +64 -64
  191. package/fesm2022/fundamental-ngx-core-user-menu.mjs.map +1 -1
  192. package/fesm2022/fundamental-ngx-core-vertical-navigation.mjs +13 -13
  193. package/fesm2022/fundamental-ngx-core-vertical-navigation.mjs.map +1 -1
  194. package/fesm2022/fundamental-ngx-core-wizard.mjs +28 -28
  195. package/fesm2022/fundamental-ngx-core-wizard.mjs.map +1 -1
  196. package/fesm2022/fundamental-ngx-core.mjs +4 -4
  197. package/fesm2022/fundamental-ngx-core.mjs.map +1 -1
  198. package/package.json +113 -113
  199. package/{types/fundamental-ngx-core-shellbar.d.ts → shellbar/index.d.ts} +21 -13
  200. package/{types/fundamental-ngx-core-toolbar.d.ts → toolbar/index.d.ts} +7 -8
  201. /package/{types/fundamental-ngx-core-action-bar.d.ts → action-bar/index.d.ts} +0 -0
  202. /package/{types/fundamental-ngx-core-action-sheet.d.ts → action-sheet/index.d.ts} +0 -0
  203. /package/{types/fundamental-ngx-core-avatar.d.ts → avatar/index.d.ts} +0 -0
  204. /package/{types/fundamental-ngx-core-avatar-group.d.ts → avatar-group/index.d.ts} +0 -0
  205. /package/{types/fundamental-ngx-core-avatar-group-legacy.d.ts → avatar-group-legacy/index.d.ts} +0 -0
  206. /package/{types/fundamental-ngx-core-bar.d.ts → bar/index.d.ts} +0 -0
  207. /package/{types/fundamental-ngx-core-breadcrumb.d.ts → breadcrumb/index.d.ts} +0 -0
  208. /package/{types/fundamental-ngx-core-busy-indicator.d.ts → busy-indicator/index.d.ts} +0 -0
  209. /package/{types/fundamental-ngx-core-button.d.ts → button/index.d.ts} +0 -0
  210. /package/{types/fundamental-ngx-core-calendar.d.ts → calendar/index.d.ts} +0 -0
  211. /package/{types/fundamental-ngx-core-card.d.ts → card/index.d.ts} +0 -0
  212. /package/{types/fundamental-ngx-core-carousel.d.ts → carousel/index.d.ts} +0 -0
  213. /package/{types/fundamental-ngx-core-checkbox.d.ts → checkbox/index.d.ts} +0 -0
  214. /package/{types/fundamental-ngx-core-combobox.d.ts → combobox/index.d.ts} +0 -0
  215. /package/{types/fundamental-ngx-core-content-density.d.ts → content-density/index.d.ts} +0 -0
  216. /package/{types/fundamental-ngx-core-date-picker.d.ts → date-picker/index.d.ts} +0 -0
  217. /package/{types/fundamental-ngx-core-datetime.d.ts → datetime/index.d.ts} +0 -0
  218. /package/{types/fundamental-ngx-core-datetime-picker.d.ts → datetime-picker/index.d.ts} +0 -0
  219. /package/{types/fundamental-ngx-core-dialog.d.ts → dialog/index.d.ts} +0 -0
  220. /package/{types/fundamental-ngx-core-dynamic-page.d.ts → dynamic-page/index.d.ts} +0 -0
  221. /package/{types/fundamental-ngx-core-dynamic-side-content.d.ts → dynamic-side-content/index.d.ts} +0 -0
  222. /package/{types/fundamental-ngx-core-facets.d.ts → facets/index.d.ts} +0 -0
  223. /package/{types/fundamental-ngx-core-feed-input.d.ts → feed-input/index.d.ts} +0 -0
  224. /package/{types/fundamental-ngx-core-feed-list-item.d.ts → feed-list-item/index.d.ts} +0 -0
  225. /package/{types/fundamental-ngx-core-file-uploader.d.ts → file-uploader/index.d.ts} +0 -0
  226. /package/{types/fundamental-ngx-core-fixed-card-layout.d.ts → fixed-card-layout/index.d.ts} +0 -0
  227. /package/{types/fundamental-ngx-core-flexible-column-layout.d.ts → flexible-column-layout/index.d.ts} +0 -0
  228. /package/{types/fundamental-ngx-core-form.d.ts → form/index.d.ts} +0 -0
  229. /package/{types/fundamental-ngx-core-formatted-text.d.ts → formatted-text/index.d.ts} +0 -0
  230. /package/{types/fundamental-ngx-core-generic-tag.d.ts → generic-tag/index.d.ts} +0 -0
  231. /package/{types/fundamental-ngx-core-grid-list.d.ts → grid-list/index.d.ts} +0 -0
  232. /package/{types/fundamental-ngx-core-icon.d.ts → icon/index.d.ts} +0 -0
  233. /package/{types/fundamental-ngx-core-illustrated-message.d.ts → illustrated-message/index.d.ts} +0 -0
  234. /package/{types/fundamental-ngx-core.d.ts → index.d.ts} +0 -0
  235. /package/{types/fundamental-ngx-core-infinite-scroll.d.ts → infinite-scroll/index.d.ts} +0 -0
  236. /package/{types/fundamental-ngx-core-info-label.d.ts → info-label/index.d.ts} +0 -0
  237. /package/{types/fundamental-ngx-core-inline-help.d.ts → inline-help/index.d.ts} +0 -0
  238. /package/{types/fundamental-ngx-core-input-group.d.ts → input-group/index.d.ts} +0 -0
  239. /package/{types/fundamental-ngx-core-layout-grid.d.ts → layout-grid/index.d.ts} +0 -0
  240. /package/{types/fundamental-ngx-core-layout-panel.d.ts → layout-panel/index.d.ts} +0 -0
  241. /package/{types/fundamental-ngx-core-link.d.ts → link/index.d.ts} +0 -0
  242. /package/{types/fundamental-ngx-core-list.d.ts → list/index.d.ts} +0 -0
  243. /package/{types/fundamental-ngx-core-menu.d.ts → menu/index.d.ts} +0 -0
  244. /package/{types/fundamental-ngx-core-message-box.d.ts → message-box/index.d.ts} +0 -0
  245. /package/{types/fundamental-ngx-core-message-page.d.ts → message-page/index.d.ts} +0 -0
  246. /package/{types/fundamental-ngx-core-message-strip.d.ts → message-strip/index.d.ts} +0 -0
  247. /package/{types/fundamental-ngx-core-message-toast.d.ts → message-toast/index.d.ts} +0 -0
  248. /package/{types/fundamental-ngx-core-micro-process-flow.d.ts → micro-process-flow/index.d.ts} +0 -0
  249. /package/{types/fundamental-ngx-core-mobile-mode.d.ts → mobile-mode/index.d.ts} +0 -0
  250. /package/{types/fundamental-ngx-core-multi-combobox.d.ts → multi-combobox/index.d.ts} +0 -0
  251. /package/{types/fundamental-ngx-core-multi-input.d.ts → multi-input/index.d.ts} +0 -0
  252. /package/{types/fundamental-ngx-core-nested-list.d.ts → nested-list/index.d.ts} +0 -0
  253. /package/{types/fundamental-ngx-core-notification.d.ts → notification/index.d.ts} +0 -0
  254. /package/{types/fundamental-ngx-core-object-attribute.d.ts → object-attribute/index.d.ts} +0 -0
  255. /package/{types/fundamental-ngx-core-object-identifier.d.ts → object-identifier/index.d.ts} +0 -0
  256. /package/{types/fundamental-ngx-core-object-marker.d.ts → object-marker/index.d.ts} +0 -0
  257. /package/{types/fundamental-ngx-core-object-number.d.ts → object-number/index.d.ts} +0 -0
  258. /package/{types/fundamental-ngx-core-object-status.d.ts → object-status/index.d.ts} +0 -0
  259. /package/{types/fundamental-ngx-core-overflow-layout.d.ts → overflow-layout/index.d.ts} +0 -0
  260. /package/{types/fundamental-ngx-core-pagination.d.ts → pagination/index.d.ts} +0 -0
  261. /package/{types/fundamental-ngx-core-panel.d.ts → panel/index.d.ts} +0 -0
  262. /package/{types/fundamental-ngx-core-popover.d.ts → popover/index.d.ts} +0 -0
  263. /package/{types/fundamental-ngx-core-product-switch.d.ts → product-switch/index.d.ts} +0 -0
  264. /package/{types/fundamental-ngx-core-progress-indicator.d.ts → progress-indicator/index.d.ts} +0 -0
  265. /package/{types/fundamental-ngx-core-quick-view.d.ts → quick-view/index.d.ts} +0 -0
  266. /package/{types/fundamental-ngx-core-radio.d.ts → radio/index.d.ts} +0 -0
  267. /package/{types/fundamental-ngx-core-rating-indicator.d.ts → rating-indicator/index.d.ts} +0 -0
  268. /package/{types/fundamental-ngx-core-resizable-card-layout.d.ts → resizable-card-layout/index.d.ts} +0 -0
  269. /package/{types/fundamental-ngx-core-scroll-spy.d.ts → scroll-spy/index.d.ts} +0 -0
  270. /package/{types/fundamental-ngx-core-scrollbar.d.ts → scrollbar/index.d.ts} +0 -0
  271. /package/{types/fundamental-ngx-core-segmented-button.d.ts → segmented-button/index.d.ts} +0 -0
  272. /package/{types/fundamental-ngx-core-select.d.ts → select/index.d.ts} +0 -0
  273. /package/{types/fundamental-ngx-core-settings.d.ts → settings/index.d.ts} +0 -0
  274. /package/{types/fundamental-ngx-core-shared.d.ts → shared/index.d.ts} +0 -0
  275. /package/{types/fundamental-ngx-core-side-navigation.d.ts → side-navigation/index.d.ts} +0 -0
  276. /package/{types/fundamental-ngx-core-skeleton.d.ts → skeleton/index.d.ts} +0 -0
  277. /package/{types/fundamental-ngx-core-slider.d.ts → slider/index.d.ts} +0 -0
  278. /package/{types/fundamental-ngx-core-split-button.d.ts → split-button/index.d.ts} +0 -0
  279. /package/{types/fundamental-ngx-core-status-indicator.d.ts → status-indicator/index.d.ts} +0 -0
  280. /package/{types/fundamental-ngx-core-step-input.d.ts → step-input/index.d.ts} +0 -0
  281. /package/{types/fundamental-ngx-core-switch.d.ts → switch/index.d.ts} +0 -0
  282. /package/{types/fundamental-ngx-core-table.d.ts → table/index.d.ts} +0 -0
  283. /package/{types/fundamental-ngx-core-tabs.d.ts → tabs/index.d.ts} +0 -0
  284. /package/{types/fundamental-ngx-core-tests.d.ts → tests/index.d.ts} +0 -0
  285. /package/{types/fundamental-ngx-core-text.d.ts → text/index.d.ts} +0 -0
  286. /package/{types/fundamental-ngx-core-theming.d.ts → theming/index.d.ts} +0 -0
  287. /package/{types/fundamental-ngx-core-tile.d.ts → tile/index.d.ts} +0 -0
  288. /package/{types/fundamental-ngx-core-time.d.ts → time/index.d.ts} +0 -0
  289. /package/{types/fundamental-ngx-core-time-picker.d.ts → time-picker/index.d.ts} +0 -0
  290. /package/{types/fundamental-ngx-core-timeline.d.ts → timeline/index.d.ts} +0 -0
  291. /package/{types/fundamental-ngx-core-title.d.ts → title/index.d.ts} +0 -0
  292. /package/{types/fundamental-ngx-core-token.d.ts → token/index.d.ts} +0 -0
  293. /package/{types/fundamental-ngx-core-tree.d.ts → tree/index.d.ts} +0 -0
  294. /package/{types/fundamental-ngx-core-upload-collection.d.ts → upload-collection/index.d.ts} +0 -0
  295. /package/{types/fundamental-ngx-core-user-menu.d.ts → user-menu/index.d.ts} +0 -0
  296. /package/{types/fundamental-ngx-core-vertical-navigation.d.ts → vertical-navigation/index.d.ts} +0 -0
  297. /package/{types/fundamental-ngx-core-wizard.d.ts → wizard/index.d.ts} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"fundamental-ngx-core-grid-list.mjs","sources":["../../../../libs/core/grid-list/components/grid-list-filter-bar/grid-list-filter-bar.component.ts","../../../../libs/core/grid-list/components/grid-list-filter-bar/grid-list-filter-bar.component.html","../../../../libs/core/grid-list/components/grid-list-footer/grid-list-footer.component.ts","../../../../libs/core/grid-list/components/grid-list-footer/grid-list-footer.component.html","../../../../libs/core/grid-list/components/grid-list-group-header/grid-list-group-header.component.ts","../../../../libs/core/grid-list/components/grid-list-group-header/grid-list-group-header.component.html","../../../../libs/core/grid-list/components/grid-list-item-footer-bar/grid-list-item-footer-bar.component.ts","../../../../libs/core/grid-list/components/grid-list-item-footer-bar/grid-list-item-footer-bar.component.html","../../../../libs/core/grid-list/components/grid-list-item-toolbar/grid-list-item-toolbar.component.ts","../../../../libs/core/grid-list/components/grid-list-item-toolbar/grid-list-item-toolbar.component.html","../../../../libs/core/grid-list/directives/grid-list-item-body.directive.ts","../../../../libs/core/grid-list/helpers/parse-layout-pattern.ts","../../../../libs/core/grid-list/models/grid-list-selection.models.ts","../../../../libs/core/grid-list/components/grid-list-title-bar-spacer/grid-list-title-bar-spacer.component.ts","../../../../libs/core/grid-list/components/grid-list/grid-list-base.component.ts","../../../../libs/core/grid-list/components/grid-list-item/grid-list-item.component.ts","../../../../libs/core/grid-list/components/grid-list-item/grid-list-item.component.html","../../../../libs/core/grid-list/components/grid-list-more-btn/grid-list-more-btn.component.ts","../../../../libs/core/grid-list/components/grid-list-more-btn/grid-list-more-btn.component.html","../../../../libs/core/grid-list/components/grid-list-title-bar/grid-list-title-bar.component.ts","../../../../libs/core/grid-list/components/grid-list-title-bar/grid-list-title-bar.component.html","../../../../libs/core/grid-list/components/grid-list-title-bar/grid-list-title-bar.directive.ts","../../../../libs/core/grid-list/components/grid-list/grid-list.component.ts","../../../../libs/core/grid-list/components/grid-list/grid-list.component.html","../../../../libs/core/grid-list/directives/grid-list-item-image.directive.ts","../../../../libs/core/grid-list/grid-list.module.ts","../../../../libs/core/grid-list/fundamental-ngx-core-grid-list.ts"],"sourcesContent":["import { ChangeDetectionStrategy, Component, EventEmitter, Output } from '@angular/core';\nimport { IconComponent } from '@fundamental-ngx/core/icon';\nimport { ToolbarComponent, ToolbarSpacerDirective } from '@fundamental-ngx/core/toolbar';\nimport { FdTranslatePipe } from '@fundamental-ngx/i18n';\n\n@Component({\n selector: 'fd-grid-list-filter-bar',\n templateUrl: './grid-list-filter-bar.component.html',\n host: {\n class: 'fd-col fd-col--12'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [ToolbarComponent, ToolbarSpacerDirective, IconComponent, FdTranslatePipe]\n})\nexport class GridListFilterBarComponent {\n /** Event is thrown, when the control button is clicked */\n // eslint-disable-next-line @angular-eslint/no-output-native\n @Output() readonly close = new EventEmitter<void>();\n}\n","<fd-toolbar\n fdType=\"info\"\n [active]=\"true\"\n [tabindex]=\"0\"\n class=\"fd-grid-list__filter\"\n [attr.aria-label]=\"'coreGridList.filterBarCancelButtonTitle' | fdTranslate\"\n (click)=\"close.emit()\"\n (keydown.space)=\"$event.preventDefault()\"\n (keyup.space)=\"close.emit()\"\n (keydown.enter)=\"close.emit()\"\n>\n <ng-content></ng-content>\n\n <fd-toolbar-spacer></fd-toolbar-spacer>\n\n <fd-icon glyph=\"decline\"></fd-icon>\n</fd-toolbar>\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\n\n@Component({\n selector: 'fd-grid-list-footer',\n templateUrl: './grid-list-footer.component.html',\n host: {\n class: 'fd-col fd-col--12'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true\n})\nexport class GridListFooterComponent {}\n","<div tabindex=\"0\" class=\"fd-grid-list__footer\">\n <ng-content></ng-content>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { Nullable } from '@fundamental-ngx/cdk/utils';\n@Component({\n selector: 'fd-grid-list-group-header',\n templateUrl: './grid-list-group-header.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'fd-col fd-col--12'\n },\n standalone: true\n})\nexport class GridListGroupHeaderComponent {\n /** Sets the `aria-label` attribute to the element. */\n @Input()\n ariaLabel: Nullable<string>;\n}\n","<div class=\"fd-grid-list__group-header fd-grid-list__group-header--no-margin\" [attr.aria-label]=\"ariaLabel\">\n <ng-content></ng-content>\n</div>\n","import { ChangeDetectionStrategy, Component, TemplateRef, ViewChild } from '@angular/core';\n\n@Component({\n selector: 'fd-grid-list-item-footer-bar',\n templateUrl: './grid-list-item-footer-bar.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true\n})\nexport class GridListItemFooterBarComponent {\n /** @hidden */\n @ViewChild(TemplateRef)\n contentTemplateRef: TemplateRef<any>;\n}\n","<ng-template>\n <ng-content></ng-content>\n</ng-template>\n","import { ChangeDetectionStrategy, Component, TemplateRef, ViewChild } from '@angular/core';\n\n@Component({\n selector: 'fd-grid-list-item-toolbar',\n templateUrl: './grid-list-item-toolbar.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true\n})\nexport class GridListItemToolbarComponent {\n /** @hidden */\n @ViewChild(TemplateRef)\n contentTemplateRef: TemplateRef<any>;\n}\n","<ng-template>\n <ng-content></ng-content>\n</ng-template>\n","import { Directive, TemplateRef } from '@angular/core';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-grid-list-item-body]',\n standalone: true\n})\nexport class GridListItemBodyDirective {\n /** @hidden */\n constructor(public readonly templateRef: TemplateRef<any>) {}\n}\n","interface ParseLayout {\n [key: string]: {\n pattern: string;\n value: number;\n size: string;\n };\n}\n\n/** Parse layout pattern */\nexport function parseLayoutPattern(pattern: string | undefined, isBaseLayout = true): string[] {\n const parseLayout = pattern && validateAndParseLayoutPattern(pattern, isBaseLayout);\n\n if (!parseLayout) {\n throw new Error('Invalid layoutPattern.');\n }\n\n return generateLayoutClasses(parseLayout);\n}\n\nfunction validateAndParseLayoutPattern(pattern: string, isBaseLayout: boolean): ParseLayout | undefined {\n const columnsNames = 'XL|L|M|S';\n const columnNumbers = isBaseLayout ? '12|6|4|3|2|1' : '12|11|10|9|8|7|6|5|4|3|2|1';\n const reg = new RegExp(`(?!-)((${columnsNames})(${columnNumbers}))`, 'gi');\n const match = pattern.match(reg);\n if (!match) {\n return;\n }\n\n return match.reduce((res, item) => {\n const size = item.replace(reg, '$2').toLocaleLowerCase();\n const num = +item.replace(reg, '$3');\n\n res[size] = {\n pattern: item,\n size,\n value: isBaseLayout ? 12 / num : num\n };\n\n return res;\n }, {});\n}\n\nfunction generateLayoutClasses({ xl, l, m, s }: ParseLayout): string[] {\n const classes: string[] = ['fd-col'];\n\n if (s) {\n classes.push(`fd-col--${s.value}`);\n }\n\n if (m) {\n classes.push(`fd-col-md--${m.value}`);\n }\n\n if (l) {\n classes.push(`fd-col-lg--${l.value}`);\n }\n\n if (xl) {\n classes.push(`fd-col-xl--${xl.value}`);\n }\n\n return classes;\n}\n","export type GridListSelectionMode =\n | 'none'\n | 'delete'\n | 'singleSelect'\n | 'singleSelectLeft'\n | 'singleSelectRight'\n | 'multiSelect';\n\nexport enum GridListSelectionActions {\n ADD = 'add',\n REMOVE = 'remove'\n}\n\nexport enum GridListSelectionModeEnum {\n NONE = 'none',\n DELETE = 'delete',\n SINGLE_SELECT = 'singleSelect',\n SINGLE_SELECT_LEFT = 'singleSelectLeft',\n SINGLE_SELECT_RIGHT = 'singleSelectRight',\n MULTI_SELECT = 'multiSelect'\n}\n\nexport interface GridListSelectionEvent<T> {\n /** currently selected items */\n selection: T[];\n /** items added */\n added: T[];\n /** items removed */\n removed: T[];\n /** indexes location of additions or removals */\n index: number[];\n}\n","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ToolbarSpacerDirective } from '@fundamental-ngx/core/toolbar';\n\n@Component({\n selector: 'fd-grid-list-title-bar-spacer',\n template: '',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true\n})\nexport class GridListTitleBarSpacerComponent extends ToolbarSpacerDirective {}\n","import { Directive } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { GridListSelectionActions, GridListSelectionEvent } from '../../models/grid-list-selection.models';\n\n@Directive()\nexport abstract class GridList<T> {\n /** an observable of selection state event */\n abstract _selectedItems$: Observable<GridListSelectionEvent<T>>;\n /** method to be used by list items to register the selection */\n abstract setSelectedItem(\n item: T,\n componentIndex: number,\n action?: GridListSelectionActions | null,\n event?: MouseEvent\n ): void;\n}\n","import { ENTER, ESCAPE, F2, F7, MAC_ENTER, SPACE } from '@angular/cdk/keycodes';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChild,\n ElementRef,\n EventEmitter,\n HostBinding,\n Input,\n OnDestroy,\n Output,\n Renderer2,\n ViewChild,\n ViewEncapsulation,\n booleanAttribute,\n signal\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { KeyUtil, Nullable, TabbableElementService } from '@fundamental-ngx/cdk/utils';\n\nimport { NgTemplateOutlet } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { ButtonComponent } from '@fundamental-ngx/core/button';\nimport {\n ContentDensityModule,\n ContentDensityObserver,\n contentDensityObserverProviders\n} from '@fundamental-ngx/core/content-density';\n\nimport { IconComponent } from '@fundamental-ngx/core/icon';\nimport { ObjectStatusComponent } from '@fundamental-ngx/core/object-status';\nimport { FdTranslatePipe } from '@fundamental-ngx/i18n';\nimport { GridListItemBodyDirective } from '../../directives/grid-list-item-body.directive';\nimport { parseLayoutPattern } from '../../helpers/parse-layout-pattern';\nimport {\n GridListSelectionActions,\n GridListSelectionMode,\n GridListSelectionModeEnum\n} from '../../models/grid-list-selection.models';\nimport { GridListItemFooterBarComponent } from '../grid-list-item-footer-bar/grid-list-item-footer-bar.component';\nimport { GridListItemToolbarComponent } from '../grid-list-item-toolbar/grid-list-item-toolbar.component';\nimport { GridListTitleBarSpacerComponent } from '../grid-list-title-bar-spacer/grid-list-title-bar-spacer.component';\nimport { GridList } from '../grid-list/grid-list-base.component';\n\nlet gridListItemUniqueId = 0;\n\nexport interface GridListItemOutputEvent<T> {\n index?: number;\n value?: T;\n}\n\nexport type GridListItemType = 'inactive' | 'active' | 'detail' | 'detailsAndActive' | 'navigation';\nexport type GridListItemState = 'unread' | 'locked' | 'error' | 'draft';\nexport type GridListItemStatus = 'success' | 'warning' | 'error' | 'neutral';\n\n@Component({\n selector: 'fd-grid-list-item',\n templateUrl: './grid-list-item.component.html',\n styleUrl: './grid-list-item.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [\n NgTemplateOutlet,\n GridListTitleBarSpacerComponent,\n ButtonComponent,\n IconComponent,\n FormsModule,\n ObjectStatusComponent,\n FdTranslatePipe,\n ContentDensityModule\n ],\n providers: [contentDensityObserverProviders()]\n})\nexport class GridListItemComponent<T> implements AfterViewInit, OnDestroy {\n /** id for the Element */\n @Input()\n id = `fd-grid-list-item-${gridListItemUniqueId++}`;\n\n /** width of the element */\n @Input()\n @HostBinding('style.max-width')\n @HostBinding('style.min-width')\n width: string;\n\n /**\n * specify the cell layout in the format `XLn-Ln-Mn-Sn` where n is\n * the number of occupied columns and n can be different for each size.\n */\n @Input()\n set layoutItemPattern(value: Nullable<string>) {\n this.gridLayoutClasses = value ? parseLayoutPattern(value, false) : [];\n }\n\n /**\n * Defines the status of Grid List Item\n * (Statuses: success | warning | error | neutral)\n */\n @Input()\n status?: GridListItemStatus;\n\n /** Sets number of sub items */\n @Input()\n counter: Nullable<number>;\n\n /**\n * Value field stores information for radio button value, checkbox button and for GridListSelectionEvent\n * The field is mandatory for modes like singleSelect, singleSelectLeft, singleSelectRight or multiSelect\n */\n @Input()\n value?: T;\n\n /** Whether click on the custom toolbar is disabled */\n @Input()\n disableToolbarClick = false;\n\n /** Allows an item to be selected programmatically */\n @Input({ transform: booleanAttribute })\n selected = false;\n\n /** Remove the padding from the Item body */\n @Input()\n noPadding = false;\n\n /** Sets the `aria-label` attribute to the element. */\n @Input()\n ariaLabel: Nullable<string>;\n\n /** Sets the `aria-label` attribute to the element. */\n @Input()\n ariaLabelledBy: Nullable<string>;\n\n /**\n * Defines the type of Grid List Item\n * Types:\n * - active: indicates that the item is clickable via active feedback when item is pressed\n * - detail: enables detail button of the list item that fires event.\n * - detailsAndActive: enables \"detail\" and \"active\" enumerations together\n * - inactive: indicates the list item does not have any active feedback when item is pressed\n * - navigation: indicates the list item is navigable to show extra information about the item\n * Default: inactive\n */\n @Input()\n set type(value: Nullable<GridListItemType>) {\n this._type = value ?? 'inactive';\n }\n\n get type(): GridListItemType {\n return this._type;\n }\n\n /**\n * Sets the state of Grid List Item\n * (States: unread | error | locked | draft)\n */\n @Input()\n state?: GridListItemState;\n\n /**\n * The navigated state of the list item.\n * If set to true, a navigation indicator is displayed at the end of the list item.\n */\n @Input()\n isNavigated = false;\n\n /** Title of the item */\n @Input()\n title: string;\n\n /**\n * Aria-level of the title\n * Available options: 1, 2, 3, 4, 5, 6\n * Default: 4\n */\n @Input()\n titleLevel: 1 | 2 | 3 | 4 | 5 | 6 = 4;\n\n /** Description of the item */\n @Input()\n description: string;\n\n /** When set to true the grid list item's height will be set to auto */\n @Input()\n autoHeight = false;\n\n /**\n * Event is thrown, when type is active\n * and item is pressed\n */\n @Output()\n press = new EventEmitter<GridListItemOutputEvent<T>>();\n\n /**\n * Event is thrown, when type is detail or detailsAndActive\n * and Detail button was pressed\n */\n @Output()\n detail = new EventEmitter<GridListItemOutputEvent<T>>();\n\n /**\n * Event is thrown, when mode delete\n * and Delete button was pressed\n */\n @Output()\n delete = new EventEmitter<GridListItemOutputEvent<T>>();\n\n /**\n * Event is thrown, when type is navigation\n * and Navigate button was pressed\n */\n @Output()\n navigate = new EventEmitter<GridListItemOutputEvent<T>>();\n\n /**\n * Event is thrown on grid list item click.\n */\n @Output()\n cardClick = new EventEmitter<GridListItemOutputEvent<T>>();\n\n /**\n * Event is thrown, when state is error, not used GridListItemFooterBarComponent\n * and Draft button was pressed\n */\n @Output()\n draft = new EventEmitter<GridListItemOutputEvent<T>>();\n\n /**\n * Event is thrown, when state is locked, not used GridListItemFooterBarComponent\n * and Locked button was pressed\n */\n @Output()\n locked = new EventEmitter<GridListItemOutputEvent<T>>();\n\n /** @hidden */\n @ViewChild('gridListItem')\n _gridListItem: ElementRef<HTMLDivElement>;\n\n /** @hidden */\n @ContentChild(GridListItemFooterBarComponent)\n footerBarComponent: Nullable<GridListItemFooterBarComponent>;\n /** @hidden */\n @ContentChild(GridListItemToolbarComponent)\n itemToolbarComponent: Nullable<GridListItemToolbarComponent>;\n\n /** @hidden */\n @ContentChild(GridListItemBodyDirective)\n body: Nullable<GridListItemBodyDirective>;\n\n /** @hidden\n * The active state of the list item.\n * If set to true, the whole card has active state. Becomes false only when the Edit button is clicked.\n */\n _isActive = true;\n\n /** @hidden */\n set gridLayoutClasses(value: string[]) {\n this._removeClassesNames(this._gridLayoutClasses);\n this._gridLayoutClasses = value;\n this._addClassesNames(this._gridLayoutClasses);\n }\n\n get gridLayoutClasses(): string[] {\n return this._gridLayoutClasses;\n }\n\n /** @hidden */\n _selectedItem?: T;\n\n /** @hidden */\n set selectionMode(mode: GridListSelectionMode | undefined) {\n this._selectionMode = mode;\n\n if (mode !== GridListSelectionModeEnum.DELETE && mode !== GridListSelectionModeEnum.NONE && !this.value) {\n throw new Error('Grid List Item must have [value] attribute.');\n }\n\n if (this.selected && this.value && this._index != null) {\n const action =\n this.selectionMode !== GridListSelectionModeEnum.MULTI_SELECT ? null : GridListSelectionActions.ADD;\n\n this._gridList.setSelectedItem(this.value, this._index, action);\n }\n\n this._cd.detectChanges();\n }\n\n get selectionMode(): GridListSelectionMode | undefined {\n return this._selectionMode;\n }\n\n /** @hidden */\n _index?: number;\n\n /** tabIndex of the element */\n tabIndex = signal(-1);\n\n /** @hidden */\n private _type: GridListItemType = 'inactive';\n\n /** @hidden */\n private _selectionMode?: GridListSelectionMode;\n\n /** @hidden */\n private _gridLayoutClasses: string[] = [];\n\n /** @hidden */\n private readonly subscription = new Subscription();\n\n /** @hidden */\n private _innerElementFocused = signal<boolean>(false);\n\n /** @hidden */\n constructor(\n private readonly _cd: ChangeDetectorRef,\n private readonly _elementRef: ElementRef,\n private readonly _render: Renderer2,\n private readonly _gridList: GridList<T>,\n readonly _contentDensityObserver: ContentDensityObserver,\n private readonly _tabbableElementService: TabbableElementService\n ) {\n const selectedItemsSub = this._gridList._selectedItems$.subscribe((items) => {\n this._selectedItem = items.selection.find((item) => item === this.value);\n this._cd.markForCheck();\n });\n this.subscription.add(selectedItemsSub);\n }\n\n /** @hidden */\n ngAfterViewInit(): void {\n this._cd.detectChanges();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this.subscription.unsubscribe();\n }\n\n /** Focus grid list item programmatically */\n focus(options?: FocusOptions): void {\n this._gridListItem?.nativeElement.focus(options);\n }\n\n /** @hidden */\n _setActive(event: MouseEvent, isActive: boolean): void {\n if (this._isElementCanBeClicked(event)) {\n return;\n }\n\n this._isActive = isActive;\n }\n\n /** @hidden */\n _singleSelect(event: Event): void {\n this._preventDefault(event);\n\n if (typeof this._selectedItem !== 'undefined' || !this.value || this._index == null) {\n return;\n }\n\n this._gridList.setSelectedItem(this.value, this._index);\n }\n\n /** @hidden */\n _checkboxClick(event: MouseEvent): void {\n const checked = (<HTMLInputElement>event.target).checked;\n this._selectionItem(checked, event);\n }\n\n /** @hidden */\n _checkboxEscape(): void {\n this._gridListItem.nativeElement.focus();\n }\n\n /** @hidden */\n _selectionItem(value: boolean | number | T, event?: MouseEvent): void {\n if (!this.value || this._index == null) {\n return;\n }\n const action =\n this.selectionMode !== GridListSelectionModeEnum.MULTI_SELECT\n ? null\n : value || value === 0\n ? GridListSelectionActions.ADD\n : GridListSelectionActions.REMOVE;\n\n this._gridList.setSelectedItem(this.value, this._index, action, event);\n }\n\n /** @hidden */\n _onDetail(event: MouseEvent): void {\n this._preventDefault(event);\n\n this.detail.emit(this._outputEventValue);\n }\n\n /** @hidden */\n _onNavigate(event: MouseEvent): void {\n this._preventDefault(event);\n\n this.navigate.emit(this._outputEventValue);\n }\n\n /** @hidden */\n _onDelete(event: MouseEvent): void {\n this._preventDefault(event);\n\n this.delete.emit(this._outputEventValue);\n }\n\n /** @hidden */\n _clickOnDraft(event: MouseEvent): void {\n this._preventDefault(event);\n\n this.draft.emit(this._outputEventValue);\n }\n\n /** @hidden */\n _clickOnLocked(event: MouseEvent): void {\n this._preventDefault(event);\n\n this.locked.emit(this._outputEventValue);\n }\n\n /** @hidden */\n _onClick(event: MouseEvent): void {\n if (!this._isElementCanBeClicked(event)) {\n return;\n }\n\n if (this.type !== 'active' && this.type !== 'detailsAndActive' && this.type !== 'navigation') {\n this.cardClick.emit(this._outputEventValue);\n return;\n }\n\n if (this.type === 'navigation') {\n this._onNavigate(event);\n return;\n }\n this.press.emit(this._outputEventValue);\n this.cardClick.emit(this._outputEventValue);\n }\n /** @hidden */\n _onKeyDown(event: KeyboardEvent): void {\n const activeElement = document.activeElement as HTMLElement;\n const isFocused = activeElement === this._gridListItem.nativeElement;\n const shouldFocusChild = KeyUtil.isKeyCode(event, [ENTER, MAC_ENTER, F2, F7]) && !event.shiftKey && isFocused;\n if (shouldFocusChild) {\n event.stopPropagation();\n const interactiveElements = this._gridListItem.nativeElement.querySelectorAll(\n 'a, button, input, select, textarea'\n );\n\n const firstInteractiveElement = interactiveElements[0] as HTMLElement;\n firstInteractiveElement.focus();\n interactiveElements.forEach((element) => {\n element.setAttribute('tabindex', '0');\n });\n this._innerElementFocused.set(true);\n return;\n } else if (this._innerElementFocused() && KeyUtil.isKeyCode(event, [F2, F7, ESCAPE])) {\n event.stopPropagation();\n this._gridListItem.nativeElement.focus();\n this._innerElementFocused.set(false);\n return;\n }\n const target = event.target as HTMLDivElement;\n\n const isSelectionKeyDown = KeyUtil.isKeyCode(event, [ENTER, SPACE]);\n\n if (isSelectionKeyDown && this.selectionMode === GridListSelectionModeEnum.NONE) {\n this.press.emit(this._outputEventValue);\n }\n\n if (\n !isSelectionKeyDown ||\n this.selectionMode === GridListSelectionModeEnum.NONE ||\n !target.classList.contains('fd-grid-list__item')\n ) {\n return;\n }\n\n this._preventDefault(event);\n\n if (this.selectionMode === GridListSelectionModeEnum.MULTI_SELECT) {\n this._selectionItem(!this._selectedItem);\n\n return;\n }\n\n if (typeof this._selectedItem === 'undefined') {\n this._singleSelect(event);\n }\n }\n\n /** @hidden */\n private _isElementCanBeClicked(event: MouseEvent): boolean {\n if (!event?.target) {\n return false;\n }\n\n const element = event.target as HTMLElement;\n const { classList } = element;\n\n return (\n !(this._isToolbarElement(element) && this.disableToolbarClick) &&\n !classList.contains('fd-grid-list__action-button') &&\n !classList.contains('fd-grid-list__radio-label') &&\n !classList.contains('fd-grid-list__radio-input') &&\n !classList.contains('fd-grid-list__checkbox-label') &&\n !classList.contains('fd-grid-list__checkbox-input') &&\n !classList.contains('fd-checkbox__checkmark')\n );\n }\n\n /** @hidden */\n private _isToolbarElement(element: HTMLElement): boolean {\n if (!this.itemToolbarComponent) {\n return false;\n }\n\n while (element.parentElement && !element.parentElement.classList.contains('fd-grid-list__item')) {\n if (element.classList.contains('fd-toolbar--extra-content')) {\n return true;\n }\n\n element = element.parentElement;\n }\n\n return false;\n }\n\n /** @hidden */\n private _preventDefault(event: Event): void {\n event.preventDefault();\n event.stopPropagation();\n }\n\n /** @hidden */\n private get _outputEventValue(): GridListItemOutputEvent<T> {\n return {\n value: this.value,\n index: this._index\n };\n }\n\n /** @hidden */\n private _addClassesNames(classesNames: string[]): void {\n for (const className of classesNames) {\n this._render.addClass(this._elementRef.nativeElement, className);\n }\n }\n\n /** @hidden */\n private _removeClassesNames(classesNames: string[]): void {\n for (const className of classesNames) {\n this._render.removeClass(this._elementRef.nativeElement, className);\n }\n }\n}\n","<div\n #gridListItem\n [id]=\"id\"\n [tabindex]=\"tabIndex()\"\n class=\"fd-grid-list__item\"\n role=\"option\"\n [class.is-navigated]=\"isNavigated\"\n [class.is-selected]=\"!!_selectedItem\"\n [class.fd-grid-list__item--link]=\"\n _isActive && (type === 'active' || type === 'detailsAndActive' || type === 'navigation')\n \"\n [class.fd-grid-list__item--unread]=\"state === 'unread'\"\n [class.fd-grid-list__item--locked]=\"state === 'locked'\"\n [class.fd-grid-list__item--draft]=\"state === 'draft'\"\n [class.fd-grid-list__item--error]=\"state === 'error'\"\n [class.fd-grid-list__item--height-auto]=\"autoHeight\"\n (keydown)=\"_onKeyDown($event)\"\n (click)=\"selectionMode === 'singleSelect' && _singleSelect($event); _onClick($event)\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n (mouseover)=\"_setActive($event, false)\"\n (mouseout)=\"_setActive($event, true)\"\n [attr.aria-selected]=\"selectionMode === 'none' ? null : !!_selectedItem\"\n>\n @if (status) {\n <span\n class=\"fd-grid-list__highlight\"\n [class.fd-grid-list__highlight--positive]=\"status === 'success'\"\n [class.fd-grid-list__highlight--critical]=\"status === 'warning'\"\n [class.fd-grid-list__highlight--negative]=\"status === 'error'\"\n [class.fd-grid-list__highlight--neutral]=\"status === 'neutral'\"\n [attr.aria-label]=\"'coreGridList.listItemStatusAriaLabel' | fdTranslate: { status: status }\"\n ></span>\n }\n @if (selectionMode === 'singleSelect') {\n <ng-template [ngTemplateOutlet]=\"radio\"></ng-template>\n }\n @if (\n counter ||\n itemToolbarComponent?.contentTemplateRef ||\n (type && type !== 'inactive' && type !== 'active') ||\n (selectionMode !== 'none' && selectionMode !== 'singleSelect')\n ) {\n <div class=\"fd-toolbar fd-grid-list__item-toolbar\">\n @if (selectionMode === 'singleSelectLeft') {\n <ng-template [ngTemplateOutlet]=\"radio\"></ng-template>\n }\n @if (selectionMode === 'multiSelect') {\n <ng-template [ngTemplateOutlet]=\"checkbox\"></ng-template>\n }\n @if (itemToolbarComponent?.contentTemplateRef) {\n <div class=\"fd-toolbar--extra-content\">\n <ng-template [ngTemplateOutlet]=\"itemToolbarComponent!.contentTemplateRef\"></ng-template>\n </div>\n }\n <fd-grid-list-title-bar-spacer></fd-grid-list-title-bar-spacer>\n @if (counter) {\n <span\n class=\"fd-grid-list__item-counter\"\n [attr.aria-label]=\"'coreGridList.listItemCounterAriaLabel' | fdTranslate: { count: counter }\"\n >{{ counter }}</span\n >\n }\n @if (type === 'detail' || type === 'detailsAndActive') {\n <button\n fd-button\n fdType=\"transparent\"\n glyph=\"edit\"\n class=\"fd-grid-list__action-button\"\n [attr.aria-label]=\"'coreGridList.listItemButtonDetailsTitle' | fdTranslate\"\n [title]=\"'coreGridList.listItemButtonDetailsTitle' | fdTranslate\"\n fdCompact\n (click)=\"_onDetail($event)\"\n ></button>\n }\n @if (selectionMode === 'delete') {\n <button\n fd-button\n fdType=\"transparent\"\n glyph=\"decline\"\n class=\"fd-grid-list__action-button\"\n [attr.aria-label]=\"'coreGridList.listItemButtonDeleteTitle' | fdTranslate\"\n [title]=\"'coreGridList.listItemButtonDeleteTitle' | fdTranslate\"\n title=\"Delete\"\n fdCompact\n (click)=\"_onDelete($event)\"\n ></button>\n }\n @if (type === 'navigation') {\n <span class=\"fd-grid-list__item-navigation-indicator\">\n <fd-icon glyph=\"navigation-right-arrow\"></fd-icon>\n </span>\n }\n @if (selectionMode === 'singleSelectRight') {\n <ng-template [ngTemplateOutlet]=\"radio\"></ng-template>\n }\n </div>\n }\n <div class=\"fd-grid-list__item-body\" [class.fd-grid-list__item-body--no-padding]=\"noPadding\">\n <ng-content select=\"[fd-grid-list-item-image]\"></ng-content>\n @if (title || description) {\n <div class=\"fd-grid-list__item-header\">\n @if (title) {\n <div\n role=\"heading\"\n [attr.aria-level]=\"titleLevel\"\n class=\"fd-title fd-title--h4 fd-grid-list__item-title\"\n >\n {{ title }}\n </div>\n }\n @if (description) {\n <span class=\"fd-grid-list__item-subtitle\">{{ description }}</span>\n }\n </div>\n }\n @if (body?.templateRef) {\n <div class=\"fd-grid-list__item-content\">\n <ng-template [ngTemplateOutlet]=\"body!.templateRef\"></ng-template>\n </div>\n }\n @if (state || footerBarComponent?.contentTemplateRef) {\n <ng-template [ngTemplateOutlet]=\"itemFooter\"></ng-template>\n }\n </div>\n</div>\n<ng-template #radio>\n <input\n [attr.tabindex]=\"selectionMode === 'singleSelect' ? -1 : 0\"\n type=\"radio\"\n class=\"fd-radio fd-grid-list__radio-input\"\n [style.display]=\"selectionMode === 'singleSelect' ? 'none' : ''\"\n [id]=\"id + '-radio'\"\n [name]=\"'fd-grid-list-item-toolbar-' + selectionMode\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [value]=\"value\"\n [ngModel]=\"_selectedItem\"\n (ngModelChange)=\"$event && _selectionItem($event)\"\n />\n <label\n class=\"fd-radio__label fd-grid-list__radio-label\"\n [for]=\"id + '-radio'\"\n tabindex=\"-1\"\n (mouseover)=\"_setActive($event, false)\"\n (mouseout)=\"_setActive($event, true)\"\n ></label>\n</ng-template>\n<ng-template #checkbox>\n <input\n type=\"checkbox\"\n class=\"fd-checkbox fd-grid-list__checkbox-input\"\n [id]=\"id + '-checkbox'\"\n [attr.aria-label]=\"ariaLabel\"\n [attr.aria-labelledby]=\"ariaLabelledBy\"\n [ngModel]=\"_selectedItem\"\n (click)=\"_checkboxClick($event)\"\n (keydown.escape)=\"_checkboxEscape()\"\n (keydown.shift)=\"_checkboxEscape()\"\n />\n <label class=\"fd-checkbox__label fd-grid-list__checkbox-label\" [for]=\"id + '-checkbox'\" tabindex=\"-1\">\n <span class=\"fd-checkbox__checkmark\" aria-hidden=\"true\"></span>\n </label>\n</ng-template>\n<ng-template #itemFooter>\n @if (footerBarComponent || state) {\n <div class=\"fd-grid-list__item-body-actions\">\n @if (footerBarComponent?.contentTemplateRef) {\n <ng-template [ngTemplateOutlet]=\"footerBarComponent!.contentTemplateRef\"></ng-template>\n }\n @if (!footerBarComponent?.contentTemplateRef && state) {\n @if (state === 'error') {\n <span\n fd-object-status\n status=\"negative\"\n [label]=\"'coreGridList.listItemStatusContainsErrors' | fdTranslate\"\n [attr.aria-label]=\"'coreGridList.listItemStatusContainsErrors' | fdTranslate\"\n ></span>\n }\n @if (state === 'locked') {\n <button\n class=\"fd-grid-list__action-button\"\n fd-button\n fdType=\"transparent\"\n glyph=\"private\"\n [label]=\"'coreGridList.listItemStatusLocked' | fdTranslate\"\n [attr.aria-label]=\"'coreGridList.listItemStatusLocked' | fdTranslate\"\n [attr.data-test-id]=\"'coreGridList.listItemStatusLocked' | fdTranslate\"\n fdCompact\n (click)=\"_clickOnLocked($event)\"\n ></button>\n }\n @if (state === 'draft') {\n <button\n class=\"fd-grid-list__action-button\"\n fd-button\n fdType=\"transparent\"\n [attr.aria-label]=\"'coreGridList.listItemStatusDraft' | fdTranslate\"\n [label]=\"'coreGridList.listItemStatusDraft' | fdTranslate\"\n [attr.data-test-id]=\"'coreGridList.listItemStatusDraft' | fdTranslate\"\n fdCompact\n (click)=\"_clickOnDraft($event)\"\n ></button>\n }\n }\n </div>\n }\n</ng-template>\n","import { ENTER, SPACE } from '@angular/cdk/keycodes';\nimport { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\n\nimport { KeyUtil } from '@fundamental-ngx/cdk/utils';\n\n@Component({\n selector: 'fd-grid-list-more-btn',\n templateUrl: './grid-list-more-btn.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: {\n class: 'fd-col fd-col--12'\n },\n standalone: true\n})\nexport class GridListMoreBtnComponent {\n /** Sets title of the button */\n @Input()\n title: string;\n\n /** Sets the number of total items. */\n @Input()\n totalCount: number;\n\n /** Sets the number of display items. */\n @Input()\n displayCount: number;\n\n /** Event is thrown, when the control button is clicked */\n @Output()\n showMore = new EventEmitter<void>();\n\n /** @hidden */\n _onKeyDown(event: KeyboardEvent): void {\n if (!KeyUtil.isKeyCode(event, [ENTER, SPACE])) {\n return;\n }\n\n event.preventDefault();\n\n this.showMore.emit();\n }\n}\n","<div tabindex=\"0\" role=\"button\" class=\"fd-grid-list__more\" (keydown)=\"_onKeyDown($event)\" (click)=\"showMore.emit()\">\n <h5 class=\"fd-title fd-title--h6 fd-grid-list__more-title\">{{ title }}</h5>\n <p class=\"fd-grid-list__more-description\">{{ '[ ' + displayCount + ' / ' + totalCount + ' ]' }}</p>\n</div>\n","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { ToolbarComponent, ToolbarLabelDirective } from '@fundamental-ngx/core/toolbar';\n\n@Component({\n selector: 'fd-grid-list-title-bar',\n templateUrl: './grid-list-title-bar.component.html',\n host: {\n class: 'fd-col fd-col--12'\n },\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [ToolbarComponent, ToolbarLabelDirective]\n})\nexport class GridListTitleBarComponent {\n /** Sets title of the Grid List */\n @Input()\n title: string;\n}\n","<fd-toolbar fdType=\"solid\">\n <label fd-toolbar-label>\n {{ title }}\n <ng-content select=\"[fd-grid-list-title-bar-additional-title-item]\"></ng-content>\n </label>\n\n <ng-content></ng-content>\n</fd-toolbar>\n","import { Directive } from '@angular/core';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-grid-list-title-bar-additional-title-item]',\n standalone: true\n})\nexport class GridListTitleBarAdditionalTitleItemDirective {}\n","import { DOWN_ARROW, END, HOME, LEFT_ARROW, RIGHT_ARROW, TAB, UP_ARROW } from '@angular/cdk/keycodes';\nimport {\n AfterContentInit,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n DestroyRef,\n ElementRef,\n EventEmitter,\n Input,\n OnChanges,\n OnDestroy,\n Output,\n QueryList,\n SimpleChanges,\n ViewEncapsulation,\n computed,\n inject\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { KeyUtil, KeyboardSupportService, Nullable, RangeSelector, RtlService } from '@fundamental-ngx/cdk/utils';\nimport { BehaviorSubject, Observable, Subscription, filter } from 'rxjs';\nimport { startWith } from 'rxjs/operators';\nimport { parseLayoutPattern } from '../../helpers/parse-layout-pattern';\nimport {\n GridListSelectionActions,\n GridListSelectionEvent,\n GridListSelectionMode\n} from '../../models/grid-list-selection.models';\nimport { GridListItemComponent } from '../grid-list-item/grid-list-item.component';\nimport { GridList } from './grid-list-base.component';\n\nlet gridListUniqueId = 0;\n\n@Component({\n selector: 'fd-grid-list',\n templateUrl: './grid-list.component.html',\n styleUrls: ['./grid-list.component.scss', '../../../../cdk/utils/drag-and-drop/drag-and-drop.scss'],\n encapsulation: ViewEncapsulation.None,\n providers: [KeyboardSupportService, { provide: GridList, useExisting: GridListComponent }],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true\n})\nexport class GridListComponent<T> extends GridList<T> implements OnChanges, AfterContentInit, OnDestroy {\n /** id for the Element */\n @Input()\n id = `fd-grid-list-${gridListUniqueId++}`;\n\n /** width of the element */\n @Input()\n width: string;\n\n /** Sets the `aria-label` attribute to the element. */\n @Input()\n ariaLabel: Nullable<string>;\n\n /**\n * Defines the mode of Grid List\n * Modes:\n * - none: Default mode (no selection)\n * - delete: Delete mode (only one list item can be deleted via provided delete button)\n * - singleSelect: Selected item is highlighted but no selection control is visible (only one list item can be selected)\n * - singleSelectLeft: Left-positioned single selection mode (only one list item can be selected)\n * - singleSelectRight: Right-positioned single selection mode (only one list item can be selected)\n * - multiSelect: Multi-selection mode (more than one list item can be selected)\n * */\n @Input()\n selectionMode: GridListSelectionMode = 'none';\n\n /**\n * specify the column layout in the format `XLn-Ln-Mn-Sn` where n is the number of columns and can be different for each size.\n * eg: XL2-L2-M2-S1 would create 2-column layouts for XL, L, and M sizes and single-column layout for S size.\n */\n @Input()\n layoutPattern: string;\n\n /** Event is thrown, when mode is singleSelect, singleSelectLeft, singleSelectRight or multiSelect and item was selected */\n @Output()\n selectionChange = new EventEmitter<GridListSelectionEvent<T>>();\n\n /** @hidden */\n @ContentChildren(GridListItemComponent, { descendants: true })\n set gridListItems(components: QueryList<GridListItemComponent<T>>) {\n this._gridListItems = components;\n this._updateGridListItemsProperties(components);\n }\n\n get gridListItems(): QueryList<GridListItemComponent<T>> {\n return this._gridListItems;\n }\n\n /** @hidden */\n readonly _selectedItems$: Observable<GridListSelectionEvent<T>>;\n\n /** @hidden */\n private _gridListItems: QueryList<GridListItemComponent<T>>;\n\n /** @hidden */\n private readonly _rangeSelector = new RangeSelector();\n\n /** @hidden */\n private readonly _selectedItems: GridListSelectionEvent<T> = {\n added: [],\n index: [],\n removed: [],\n selection: []\n };\n\n /** @hidden */\n private readonly _selectedItemsSubject$ = new BehaviorSubject<GridListSelectionEvent<T>>(this._selectedItems);\n\n /** @hidden */\n private readonly subscription = new Subscription();\n\n /** An RxJS Subject that will kill the data stream upon component’s destruction (for unsubscribing) */\n private readonly _destroyRef = inject(DestroyRef);\n\n /** @hidden */\n private readonly _rtlService = inject(RtlService, {\n optional: true\n });\n\n /** @hidden */\n private readonly _rtl$ = computed<boolean>(() => !!this._rtlService?.rtlSignal());\n\n /** @hidden */\n constructor(\n private readonly _cd: ChangeDetectorRef,\n private _elRef: ElementRef\n ) {\n super();\n this._selectedItems$ = this._selectedItemsSubject$.asObservable();\n const selectedItemsSub = this._selectedItems$\n .pipe(filter(() => !!this._gridListItems))\n .subscribe(this.selectionChange);\n\n this.subscription.add(selectedItemsSub);\n }\n\n /** @hidden */\n ngOnChanges(changes: SimpleChanges): void {\n if (\n changes.layoutPattern &&\n !changes.layoutPattern.firstChange &&\n changes.layoutPattern.previousValue !== changes.layoutPattern.currentValue\n ) {\n const baseLayoutItemPattern = parseLayoutPattern(this.layoutPattern);\n this._updateGridListItemsProperty('gridLayoutClasses', baseLayoutItemPattern);\n }\n\n if (\n changes.selectionMode &&\n !changes.selectionMode.firstChange &&\n changes.selectionMode.previousValue !== changes.selectionMode.currentValue\n ) {\n this._updateGridListItemsProperty('selectionMode', this.selectionMode);\n }\n }\n\n /** @hidden */\n ngAfterContentInit(): void {\n this._setFirstFocusableItem();\n this._listenOnQueryChange();\n this._cd.detectChanges();\n }\n\n /** @hidden */\n ngOnDestroy(): void {\n this.subscription.unsubscribe();\n }\n\n /**\n * Clears previous selection of the items.\n */\n clearSelection(): void {\n this._selectedItems.added = [];\n this._selectedItems.index = [];\n this._selectedItems.removed = this._selectedItems.selection;\n this._selectedItems.selection = [];\n\n this._selectedItemsSubject$.next(this._selectedItems);\n }\n\n /** @hidden */\n setSelectedItem(\n item: T,\n componentIndex: number,\n action?: GridListSelectionActions | null,\n event?: PointerEvent\n ): void {\n if (!action) {\n this._selectedItems.added = [item];\n const selectedItem = this._selectedItems.selection[0];\n if (selectedItem) {\n this._selectedItems.removed = [selectedItem];\n }\n\n this._selectedItems.selection = [item];\n this._selectedItems.index = [componentIndex];\n\n this._selectedItemsSubject$.next(this._selectedItems);\n\n return;\n }\n\n this._rangeSelector.onRangeElementToggled(componentIndex, event);\n const state = this._rangeSelector.lastRangeSelectionState;\n if (!state) {\n return;\n }\n const itemIndexes = new Array(state.to - state.from + 1).fill(null).map((e, i) => state.from + i);\n const selectedItems = itemIndexes.map((idx) => this.gridListItems.get(idx)?.value).filter((v): v is T => !!v);\n const itemsSet = new Set<T>(selectedItems);\n\n if (action === GridListSelectionActions.ADD) {\n this._selectedItems.added = [...itemsSet.values()];\n this._selectedItems.index = [...itemIndexes];\n this._selectedItems.removed = [];\n\n // remove \"itemsSet\" values from selection and add them back from \"itemsSet\"\n // this is needed to avoid duplicates as some of the items can be already selected\n this._selectedItems.selection = this._selectedItems.selection.filter((e) => !itemsSet.has(e));\n this._selectedItems.selection.push(...itemsSet.values());\n }\n\n if (action === GridListSelectionActions.REMOVE) {\n this._selectedItems.added = [];\n this._selectedItems.index = [...itemIndexes];\n this._selectedItems.removed = [...itemsSet.values()];\n\n this._selectedItems.selection = this._selectedItems.selection.filter(\n (selectedItem) => !itemsSet.has(selectedItem)\n );\n }\n\n this._selectedItemsSubject$.next(this._selectedItems);\n }\n\n /** @hidden */\n handleKeydown(event: KeyboardEvent): void {\n this._handleTabKeydown(event);\n if (KeyUtil.isKeyCode(event, [UP_ARROW, DOWN_ARROW, LEFT_ARROW, RIGHT_ARROW])) {\n if (event.shiftKey && this.selectionMode === 'multiSelect') {\n this._handleShiftArrowKeydown(event);\n } else {\n this._handleArrowKeydown(event);\n }\n } else if (event.shiftKey && this.selectionMode === 'multiSelect' && KeyUtil.isKeyCode(event, [HOME, END])) {\n this._handleHomeEndKeydown(event);\n }\n }\n /** @hidden */\n private _handleHomeEndKeydown(event: KeyboardEvent): void {\n event.preventDefault();\n let shouldSelect = false;\n let selectionAction;\n const isEndKeydown = KeyUtil.isKeyCode(event, END);\n const loopStartingIndex = isEndKeydown ? 0 : this._gridListItems.length - 1;\n /**\n * Ternary loop - if isEndKeydown is true, loop iterates from zero to the end of the grid list items.\n * If isEndKeydown is false, loop iterates backwards\n **/\n for (\n let index = loopStartingIndex;\n isEndKeydown ? index < this._gridListItems.length : index >= 0;\n isEndKeydown ? index++ : index--\n ) {\n const currentItem = this._gridListItems.toArray()[index];\n if (document.activeElement === currentItem._gridListItem.nativeElement) {\n shouldSelect = true;\n selectionAction = currentItem._selectedItem\n ? GridListSelectionActions.ADD\n : GridListSelectionActions.REMOVE;\n }\n if (shouldSelect) {\n this.setSelectedItem(currentItem as any, index, selectionAction);\n }\n }\n const itemToFocus = isEndKeydown\n ? this._gridListItems.last._gridListItem\n : this._gridListItems.first._gridListItem;\n itemToFocus.nativeElement.focus();\n }\n\n /** @hidden */\n private _handleTabKeydown(event: KeyboardEvent): void {\n if (KeyUtil.isKeyCode(event, TAB) && !event.shiftKey) {\n const isFocused = this._gridListItems\n .toArray()\n .some((item) => item._gridListItem.nativeElement.contains(document.activeElement));\n const isChildFocused = this._gridListItems\n .toArray()\n .some((item) => item._gridListItem.nativeElement.querySelector(':focus'));\n if (isFocused && !isChildFocused) {\n this._gridListItems.forEach((item) => {\n const interactiveElements = item._gridListItem.nativeElement.querySelectorAll(\n 'a, button, input, select, textarea'\n );\n\n // Set tabindex to -1 for all interactive elements in the grid\n interactiveElements.forEach((element) => {\n element.setAttribute('tabindex', '-1');\n });\n });\n return;\n } else {\n this._gridListItems.forEach((item) => {\n const interactiveElements = item._gridListItem.nativeElement.querySelectorAll(\n 'a, button, input, select, textarea'\n );\n interactiveElements.forEach((element) => {\n element.setAttribute('tabindex', '0');\n });\n });\n return;\n }\n }\n }\n\n /** @hidden */\n private _handleShiftArrowKeydown(event: KeyboardEvent): void {\n event.preventDefault();\n const activeElement = document.activeElement as HTMLElement;\n\n const currentItemIndex = this._getCurrentItemIndex(activeElement);\n if (currentItemIndex === -1) {\n return;\n }\n\n const indexToFocus = this._calculateIndexToFocus(event, currentItemIndex);\n if (indexToFocus === undefined) {\n return;\n }\n\n // Persist the selection state from the current item to the next item\n this._persistSelectionState(currentItemIndex, indexToFocus);\n\n // Focus the new item\n this._focusItemAtIndex(indexToFocus, activeElement);\n }\n\n /** @hidden */\n private _handleArrowKeydown(event: KeyboardEvent, isShiftPressed = false): void {\n event.preventDefault();\n const activeElement = document.activeElement as HTMLElement;\n\n const currentItemIndex = this._getCurrentItemIndex(activeElement);\n if (currentItemIndex === -1) {\n return;\n }\n\n const indexToFocus = this._calculateIndexToFocus(event, currentItemIndex);\n if (indexToFocus === undefined) {\n return;\n }\n\n if (isShiftPressed) {\n this._toggleSelection(indexToFocus);\n }\n\n this._focusItemAtIndex(indexToFocus, activeElement);\n }\n\n /** hidden */\n private _calculateIndexToFocus(event: KeyboardEvent, currentItemIndex: number): number | undefined {\n const itemsPerRow = this._getItemsPerRow(\n this._gridListItems.toArray()[currentItemIndex]._gridListItem.nativeElement\n );\n if (KeyUtil.isKeyCode(event, LEFT_ARROW) || (this._rtl$() && KeyUtil.isKeyCode(event, [RIGHT_ARROW]))) {\n return currentItemIndex - 1;\n } else if (KeyUtil.isKeyCode(event, RIGHT_ARROW) || (this._rtl$() && KeyUtil.isKeyCode(event, [LEFT_ARROW]))) {\n return currentItemIndex + 1;\n } else if (KeyUtil.isKeyCode(event, UP_ARROW)) {\n return currentItemIndex - itemsPerRow;\n } else if (KeyUtil.isKeyCode(event, DOWN_ARROW)) {\n return currentItemIndex + itemsPerRow;\n }\n return undefined;\n }\n\n /** hidden */\n private _persistSelectionState(currentIndex: number, indexToFocus: number): void {\n const currentItem = this._gridListItems.toArray()[currentIndex];\n const nextItem = this._gridListItems.toArray()[indexToFocus];\n\n // Persist the selection state from the current item to the next item\n if (currentItem._selectedItem) {\n // If the current item is selected, ensure the next item is selected as well\n if (!nextItem._selectedItem) {\n this.setSelectedItem(nextItem as any, indexToFocus, GridListSelectionActions.ADD);\n }\n } else {\n // If the current item is not selected, ensure the next item remains not selected\n if (nextItem._selectedItem) {\n this.setSelectedItem(nextItem as any, indexToFocus, GridListSelectionActions.REMOVE);\n }\n }\n }\n\n /** hidden */\n private _getCurrentItemIndex(activeElement: HTMLElement): number {\n return this._gridListItems\n .toArray()\n .findIndex((item) => item._gridListItem.nativeElement.contains(activeElement));\n }\n\n /** hidden */\n private _focusItemAtIndex(indexToFocus: number, activeElement: HTMLElement): void {\n if (indexToFocus >= 0 && indexToFocus < this._gridListItems.length) {\n const itemToFocus = this._gridListItems.toArray()[indexToFocus];\n if (itemToFocus && itemToFocus._gridListItem) {\n const elementToFocus = itemToFocus._gridListItem.nativeElement?.parentElement?.querySelector(\n activeElement.tagName\n ) as HTMLElement;\n if (elementToFocus) {\n elementToFocus.focus();\n }\n }\n }\n }\n\n /** hidden */\n private _toggleSelection(indexToFocus: number): void {\n const currentItem = this._gridListItems.toArray()[indexToFocus];\n const selectionAction = currentItem._selectedItem\n ? GridListSelectionActions.REMOVE\n : GridListSelectionActions.ADD;\n\n this.setSelectedItem(currentItem as any, indexToFocus, selectionAction);\n }\n\n /** @hidden */\n private _listenOnQueryChange(): void {\n this._gridListItems.changes.pipe(startWith(0), takeUntilDestroyed(this._destroyRef)).subscribe(() => {\n setTimeout(() => {\n this._setFirstFocusableItem();\n });\n });\n }\n\n /** @hidden */\n private _setFirstFocusableItem(): void {\n this._gridListItems.toArray().forEach((item, index) => {\n item.tabIndex.set(index === 0 ? 0 : -1);\n });\n }\n\n /** @hidden */\n private _getItemsPerRow(activeElement: HTMLDivElement): number {\n const itemWidth = activeElement.getBoundingClientRect().width;\n const containerWidth = this._elRef.nativeElement.getBoundingClientRect().width;\n return Math.floor(containerWidth / itemWidth);\n }\n\n /** @hidden */\n private _updateGridListItemsProperties(components: QueryList<GridListItemComponent<T>>): void {\n const layoutPattern = this.layoutPattern ? this.layoutPattern : 'XL4-L3-M2-S1';\n const baseLayoutItemPattern = parseLayoutPattern(layoutPattern);\n\n components.forEach((component, index) => {\n if (component._index !== index) {\n component._index = index;\n }\n\n if (!component.selectionMode) {\n component.selectionMode = this.selectionMode;\n }\n\n if (!component.layoutItemPattern) {\n component.gridLayoutClasses = baseLayoutItemPattern;\n }\n });\n }\n\n /** @hidden */\n private _updateGridListItemsProperty(key: string, value: string | string[]): void {\n this._gridListItems.forEach((componenet) => {\n componenet[key] = value;\n });\n }\n}\n","<div\n [id]=\"id\"\n [style.width]=\"width\"\n class=\"fd-grid-list\"\n [attr.aria-label]=\"ariaLabel\"\n [class.fd-grid-list--mode-delete]=\"selectionMode === 'delete'\"\n [class.fd-grid-list--mode-single-select]=\"selectionMode === 'singleSelect'\"\n [class.fd-grid-list--mode-single-select-left]=\"selectionMode === 'singleSelectLeft'\"\n [class.fd-grid-list--mode-single-select-right]=\"selectionMode === 'singleSelectRight'\"\n [class.fd-grid-list--mode-multi-select]=\"selectionMode === 'multiSelect'\"\n (keydown)=\"handleKeydown($event)\"\n>\n <div class=\"fd-container\" role=\"listbox\">\n <div class=\"fd-row\">\n <ng-content></ng-content>\n </div>\n </div>\n</div>\n","import { Directive } from '@angular/core';\n\n@Directive({\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-grid-list-item-image]',\n host: {\n class: 'fd-grid-list__item-image'\n },\n standalone: true\n})\nexport class GridListItemImageDirective {}\n","import { NgModule } from '@angular/core';\nimport { AvatarModule } from '@fundamental-ngx/core/avatar';\nimport { ButtonModule } from '@fundamental-ngx/core/button';\nimport { ToolbarModule } from '@fundamental-ngx/core/toolbar';\nimport { GridListFilterBarComponent } from './components/grid-list-filter-bar/grid-list-filter-bar.component';\nimport { GridListFooterComponent } from './components/grid-list-footer/grid-list-footer.component';\nimport { GridListGroupHeaderComponent } from './components/grid-list-group-header/grid-list-group-header.component';\nimport { GridListItemFooterBarComponent } from './components/grid-list-item-footer-bar/grid-list-item-footer-bar.component';\nimport { GridListItemToolbarComponent } from './components/grid-list-item-toolbar/grid-list-item-toolbar.component';\nimport { GridListItemComponent } from './components/grid-list-item/grid-list-item.component';\nimport { GridListMoreBtnComponent } from './components/grid-list-more-btn/grid-list-more-btn.component';\nimport { GridListTitleBarSpacerComponent } from './components/grid-list-title-bar-spacer/grid-list-title-bar-spacer.component';\nimport { GridListTitleBarComponent } from './components/grid-list-title-bar/grid-list-title-bar.component';\nimport { GridListTitleBarAdditionalTitleItemDirective } from './components/grid-list-title-bar/grid-list-title-bar.directive';\nimport { GridListComponent } from './components/grid-list/grid-list.component';\nimport { GridListItemBodyDirective } from './directives/grid-list-item-body.directive';\nimport { GridListItemImageDirective } from './directives/grid-list-item-image.directive';\n\n/**\n * @deprecated\n * Use direct imports of components and directives.\n */\n@NgModule({\n imports: [\n ToolbarModule,\n ButtonModule,\n AvatarModule,\n GridListComponent,\n GridListItemComponent,\n GridListTitleBarComponent,\n GridListFilterBarComponent,\n GridListMoreBtnComponent,\n GridListFooterComponent,\n GridListItemFooterBarComponent,\n GridListItemToolbarComponent,\n GridListGroupHeaderComponent,\n GridListTitleBarSpacerComponent,\n GridListTitleBarAdditionalTitleItemDirective,\n GridListItemImageDirective,\n GridListItemBodyDirective\n ],\n exports: [\n GridListComponent,\n GridListItemComponent,\n GridListTitleBarComponent,\n GridListFilterBarComponent,\n GridListMoreBtnComponent,\n GridListFooterComponent,\n GridListItemFooterBarComponent,\n GridListItemToolbarComponent,\n GridListGroupHeaderComponent,\n GridListTitleBarSpacerComponent,\n GridListTitleBarAdditionalTitleItemDirective,\n GridListItemImageDirective,\n GridListItemBodyDirective\n ]\n})\nexport class GridListModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.GridList"],"mappings":"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"}
1
+ {"version":3,"file":"fundamental-ngx-core-grid-list.mjs","sources":["../tmp-esm2022/grid-list/components/grid-list-filter-bar/grid-list-filter-bar.component.js","../tmp-esm2022/grid-list/components/grid-list-footer/grid-list-footer.component.js","../tmp-esm2022/grid-list/components/grid-list-group-header/grid-list-group-header.component.js","../tmp-esm2022/grid-list/components/grid-list-item-footer-bar/grid-list-item-footer-bar.component.js","../tmp-esm2022/grid-list/components/grid-list-item-toolbar/grid-list-item-toolbar.component.js","../tmp-esm2022/grid-list/directives/grid-list-item-body.directive.js","../tmp-esm2022/grid-list/helpers/parse-layout-pattern.js","../tmp-esm2022/grid-list/models/grid-list-selection.models.js","../tmp-esm2022/grid-list/components/grid-list-title-bar-spacer/grid-list-title-bar-spacer.component.js","../tmp-esm2022/grid-list/components/grid-list/grid-list-base.component.js","../tmp-esm2022/grid-list/components/grid-list-item/grid-list-item.component.js","../tmp-esm2022/grid-list/components/grid-list-more-btn/grid-list-more-btn.component.js","../tmp-esm2022/grid-list/components/grid-list-title-bar/grid-list-title-bar.component.js","../tmp-esm2022/grid-list/components/grid-list-title-bar/grid-list-title-bar.directive.js","../tmp-esm2022/grid-list/components/grid-list/grid-list.component.js","../tmp-esm2022/grid-list/directives/grid-list-item-image.directive.js","../tmp-esm2022/grid-list/grid-list.module.js","../tmp-esm2022/grid-list/fundamental-ngx-core-grid-list.js"],"sourcesContent":["import { ChangeDetectionStrategy, Component, EventEmitter, Output } from '@angular/core';\nimport { IconComponent } from '@fundamental-ngx/core/icon';\nimport { ToolbarComponent, ToolbarSpacerDirective } from '@fundamental-ngx/core/toolbar';\nimport { FdTranslatePipe } from '@fundamental-ngx/i18n';\nimport * as i0 from \"@angular/core\";\nexport class GridListFilterBarComponent {\n constructor() {\n /** Event is thrown, when the control button is clicked */\n // eslint-disable-next-line @angular-eslint/no-output-native\n this.close = new EventEmitter();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListFilterBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.4\", type: GridListFilterBarComponent, isStandalone: true, selector: \"fd-grid-list-filter-bar\", outputs: { close: \"close\" }, host: { classAttribute: \"fd-col fd-col--12\" }, ngImport: i0, template: \"<fd-toolbar\\n fdType=\\\"info\\\"\\n [active]=\\\"true\\\"\\n [tabindex]=\\\"0\\\"\\n class=\\\"fd-grid-list__filter\\\"\\n [attr.aria-label]=\\\"'coreGridList.filterBarCancelButtonTitle' | fdTranslate\\\"\\n (click)=\\\"close.emit()\\\"\\n (keydown.space)=\\\"$event.preventDefault()\\\"\\n (keyup.space)=\\\"close.emit()\\\"\\n (keydown.enter)=\\\"close.emit()\\\"\\n>\\n <ng-content></ng-content>\\n\\n <fd-toolbar-spacer></fd-toolbar-spacer>\\n\\n <fd-icon glyph=\\\"decline\\\"></fd-icon>\\n</fd-toolbar>\\n\", dependencies: [{ kind: \"component\", type: ToolbarComponent, selector: \"fd-toolbar\", inputs: [\"titleId\", \"class\", \"shouldOverflow\", \"fdType\", \"title\", \"active\", \"clearBorder\", \"forceOverflow\", \"tabindex\", \"headingLevel\", \"ariaLabel\", \"ariaLabelledBy\"] }, { kind: \"directive\", type: ToolbarSpacerDirective, selector: \"fd-toolbar-spacer\", inputs: [\"width\", \"class\", \"fixed\"] }, { kind: \"component\", type: IconComponent, selector: \"fd-icon\", inputs: [\"glyph\", \"font\", \"color\", \"background\", \"class\", \"ariaLabel\", \"ariaHidden\"], outputs: [\"ariaHiddenChange\"] }, { kind: \"pipe\", type: FdTranslatePipe, name: \"fdTranslate\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListFilterBarComponent, decorators: [{\n type: Component,\n args: [{ selector: 'fd-grid-list-filter-bar', host: {\n class: 'fd-col fd-col--12'\n }, changeDetection: ChangeDetectionStrategy.OnPush, imports: [ToolbarComponent, ToolbarSpacerDirective, IconComponent, FdTranslatePipe], template: \"<fd-toolbar\\n fdType=\\\"info\\\"\\n [active]=\\\"true\\\"\\n [tabindex]=\\\"0\\\"\\n class=\\\"fd-grid-list__filter\\\"\\n [attr.aria-label]=\\\"'coreGridList.filterBarCancelButtonTitle' | fdTranslate\\\"\\n (click)=\\\"close.emit()\\\"\\n (keydown.space)=\\\"$event.preventDefault()\\\"\\n (keyup.space)=\\\"close.emit()\\\"\\n (keydown.enter)=\\\"close.emit()\\\"\\n>\\n <ng-content></ng-content>\\n\\n <fd-toolbar-spacer></fd-toolbar-spacer>\\n\\n <fd-icon glyph=\\\"decline\\\"></fd-icon>\\n</fd-toolbar>\\n\" }]\n }], propDecorators: { close: [{\n type: Output\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1saXN0LWZpbHRlci1iYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL2dyaWQtbGlzdC9jb21wb25lbnRzL2dyaWQtbGlzdC1maWx0ZXItYmFyL2dyaWQtbGlzdC1maWx0ZXItYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9ncmlkLWxpc3QvY29tcG9uZW50cy9ncmlkLWxpc3QtZmlsdGVyLWJhci9ncmlkLWxpc3QtZmlsdGVyLWJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzNELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3pGLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQzs7QUFXeEQsTUFBTSxPQUFPLDBCQUEwQjtJQVR2QztRQVVJLDBEQUEwRDtRQUMxRCw0REFBNEQ7UUFDekMsVUFBSyxHQUFHLElBQUksWUFBWSxFQUFRLENBQUM7S0FDdkQ7OEdBSlksMEJBQTBCO2tHQUExQiwwQkFBMEIsK0pDZHZDLDhlQWlCQSw0Q0RMYyxnQkFBZ0IsK05BQUUsc0JBQXNCLG1HQUFFLGFBQWEsb0tBQUUsZUFBZTs7MkZBRXpFLDBCQUEwQjtrQkFUdEMsU0FBUzsrQkFDSSx5QkFBeUIsUUFFN0I7d0JBQ0YsS0FBSyxFQUFFLG1CQUFtQjtxQkFDN0IsbUJBQ2dCLHVCQUF1QixDQUFDLE1BQU0sV0FDdEMsQ0FBQyxnQkFBZ0IsRUFBRSxzQkFBc0IsRUFBRSxhQUFhLEVBQUUsZUFBZSxDQUFDOzhCQUtoRSxLQUFLO3NCQUF2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEljb25Db21wb25lbnQgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvaWNvbic7XG5pbXBvcnQgeyBUb29sYmFyQ29tcG9uZW50LCBUb29sYmFyU3BhY2VyRGlyZWN0aXZlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3Rvb2xiYXInO1xuaW1wb3J0IHsgRmRUcmFuc2xhdGVQaXBlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9pMThuJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdmZC1ncmlkLWxpc3QtZmlsdGVyLWJhcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2dyaWQtbGlzdC1maWx0ZXItYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAnZmQtY29sIGZkLWNvbC0tMTInXG4gICAgfSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBpbXBvcnRzOiBbVG9vbGJhckNvbXBvbmVudCwgVG9vbGJhclNwYWNlckRpcmVjdGl2ZSwgSWNvbkNvbXBvbmVudCwgRmRUcmFuc2xhdGVQaXBlXVxufSlcbmV4cG9ydCBjbGFzcyBHcmlkTGlzdEZpbHRlckJhckNvbXBvbmVudCB7XG4gICAgLyoqIEV2ZW50IGlzIHRocm93biwgd2hlbiB0aGUgY29udHJvbCBidXR0b24gaXMgY2xpY2tlZCAqL1xuICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvbm8tb3V0cHV0LW5hdGl2ZVxuICAgIEBPdXRwdXQoKSByZWFkb25seSBjbG9zZSA9IG5ldyBFdmVudEVtaXR0ZXI8dm9pZD4oKTtcbn1cbiIsIjxmZC10b29sYmFyXG4gICAgZmRUeXBlPVwiaW5mb1wiXG4gICAgW2FjdGl2ZV09XCJ0cnVlXCJcbiAgICBbdGFiaW5kZXhdPVwiMFwiXG4gICAgY2xhc3M9XCJmZC1ncmlkLWxpc3RfX2ZpbHRlclwiXG4gICAgW2F0dHIuYXJpYS1sYWJlbF09XCInY29yZUdyaWRMaXN0LmZpbHRlckJhckNhbmNlbEJ1dHRvblRpdGxlJyB8IGZkVHJhbnNsYXRlXCJcbiAgICAoY2xpY2spPVwiY2xvc2UuZW1pdCgpXCJcbiAgICAoa2V5ZG93bi5zcGFjZSk9XCIkZXZlbnQucHJldmVudERlZmF1bHQoKVwiXG4gICAgKGtleXVwLnNwYWNlKT1cImNsb3NlLmVtaXQoKVwiXG4gICAgKGtleWRvd24uZW50ZXIpPVwiY2xvc2UuZW1pdCgpXCJcbj5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG5cbiAgICA8ZmQtdG9vbGJhci1zcGFjZXI+PC9mZC10b29sYmFyLXNwYWNlcj5cblxuICAgIDxmZC1pY29uIGdseXBoPVwiZGVjbGluZVwiPjwvZmQtaWNvbj5cbjwvZmQtdG9vbGJhcj5cbiJdfQ==","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class GridListFooterComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.4\", type: GridListFooterComponent, isStandalone: true, selector: \"fd-grid-list-footer\", host: { classAttribute: \"fd-col fd-col--12\" }, ngImport: i0, template: \"<div tabindex=\\\"0\\\" class=\\\"fd-grid-list__footer\\\">\\n <ng-content></ng-content>\\n</div>\\n\", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListFooterComponent, decorators: [{\n type: Component,\n args: [{ selector: 'fd-grid-list-footer', host: {\n class: 'fd-col fd-col--12'\n }, changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: \"<div tabindex=\\\"0\\\" class=\\\"fd-grid-list__footer\\\">\\n <ng-content></ng-content>\\n</div>\\n\" }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1saXN0LWZvb3Rlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvZ3JpZC1saXN0L2NvbXBvbmVudHMvZ3JpZC1saXN0LWZvb3Rlci9ncmlkLWxpc3QtZm9vdGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9ncmlkLWxpc3QvY29tcG9uZW50cy9ncmlkLWxpc3QtZm9vdGVyL2dyaWQtbGlzdC1mb290ZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFXbkUsTUFBTSxPQUFPLHVCQUF1Qjs4R0FBdkIsdUJBQXVCO2tHQUF2Qix1QkFBdUIsOEhDWHBDLDhGQUdBOzsyRkRRYSx1QkFBdUI7a0JBVG5DLFNBQVM7K0JBQ0kscUJBQXFCLFFBRXpCO3dCQUNGLEtBQUssRUFBRSxtQkFBbUI7cUJBQzdCLG1CQUNnQix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUkiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmQtZ3JpZC1saXN0LWZvb3RlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2dyaWQtbGlzdC1mb290ZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdmZC1jb2wgZmQtY29sLS0xMidcbiAgICB9LFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgR3JpZExpc3RGb290ZXJDb21wb25lbnQge31cbiIsIjxkaXYgdGFiaW5kZXg9XCIwXCIgY2xhc3M9XCJmZC1ncmlkLWxpc3RfX2Zvb3RlclwiPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvZGl2PlxuIl19","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class GridListGroupHeaderComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListGroupHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.4\", type: GridListGroupHeaderComponent, isStandalone: true, selector: \"fd-grid-list-group-header\", inputs: { ariaLabel: \"ariaLabel\" }, host: { classAttribute: \"fd-col fd-col--12\" }, ngImport: i0, template: \"<div class=\\\"fd-grid-list__group-header fd-grid-list__group-header--no-margin\\\" [attr.aria-label]=\\\"ariaLabel\\\">\\n <ng-content></ng-content>\\n</div>\\n\", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListGroupHeaderComponent, decorators: [{\n type: Component,\n args: [{ selector: 'fd-grid-list-group-header', changeDetection: ChangeDetectionStrategy.OnPush, host: {\n class: 'fd-col fd-col--12'\n }, standalone: true, template: \"<div class=\\\"fd-grid-list__group-header fd-grid-list__group-header--no-margin\\\" [attr.aria-label]=\\\"ariaLabel\\\">\\n <ng-content></ng-content>\\n</div>\\n\" }]\n }], propDecorators: { ariaLabel: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1saXN0LWdyb3VwLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvZ3JpZC1saXN0L2NvbXBvbmVudHMvZ3JpZC1saXN0LWdyb3VwLWhlYWRlci9ncmlkLWxpc3QtZ3JvdXAtaGVhZGVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9ncmlkLWxpc3QvY29tcG9uZW50cy9ncmlkLWxpc3QtZ3JvdXAtaGVhZGVyL2dyaWQtbGlzdC1ncm91cC1oZWFkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBVzFFLE1BQU0sT0FBTyw0QkFBNEI7OEdBQTVCLDRCQUE0QjtrR0FBNUIsNEJBQTRCLHdLQ1h6QywySkFHQTs7MkZEUWEsNEJBQTRCO2tCQVR4QyxTQUFTOytCQUNJLDJCQUEyQixtQkFFcEIsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDRixLQUFLLEVBQUUsbUJBQW1CO3FCQUM3QixjQUNXLElBQUk7OEJBS2hCLFNBQVM7c0JBRFIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOdWxsYWJsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmQtZ3JpZC1saXN0LWdyb3VwLWhlYWRlcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2dyaWQtbGlzdC1ncm91cC1oZWFkZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdmZC1jb2wgZmQtY29sLS0xMidcbiAgICB9LFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgR3JpZExpc3RHcm91cEhlYWRlckNvbXBvbmVudCB7XG4gICAgLyoqIFNldHMgdGhlIGBhcmlhLWxhYmVsYCBhdHRyaWJ1dGUgdG8gdGhlIGVsZW1lbnQuICovXG4gICAgQElucHV0KClcbiAgICBhcmlhTGFiZWw6IE51bGxhYmxlPHN0cmluZz47XG59XG4iLCI8ZGl2IGNsYXNzPVwiZmQtZ3JpZC1saXN0X19ncm91cC1oZWFkZXIgZmQtZ3JpZC1saXN0X19ncm91cC1oZWFkZXItLW5vLW1hcmdpblwiIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsXCI+XG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+XG4iXX0=","import { ChangeDetectionStrategy, Component, TemplateRef, ViewChild } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class GridListItemFooterBarComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListItemFooterBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.4\", type: GridListItemFooterBarComponent, isStandalone: true, selector: \"fd-grid-list-item-footer-bar\", viewQueries: [{ propertyName: \"contentTemplateRef\", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: \"<ng-template>\\n <ng-content></ng-content>\\n</ng-template>\\n\", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListItemFooterBarComponent, decorators: [{\n type: Component,\n args: [{ selector: 'fd-grid-list-item-footer-bar', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: \"<ng-template>\\n <ng-content></ng-content>\\n</ng-template>\\n\" }]\n }], propDecorators: { contentTemplateRef: [{\n type: ViewChild,\n args: [TemplateRef]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1saXN0LWl0ZW0tZm9vdGVyLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvZ3JpZC1saXN0L2NvbXBvbmVudHMvZ3JpZC1saXN0LWl0ZW0tZm9vdGVyLWJhci9ncmlkLWxpc3QtaXRlbS1mb290ZXItYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9ncmlkLWxpc3QvY29tcG9uZW50cy9ncmlkLWxpc3QtaXRlbS1mb290ZXItYmFyL2dyaWQtbGlzdC1pdGVtLWZvb3Rlci1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVEzRixNQUFNLE9BQU8sOEJBQThCOzhHQUE5Qiw4QkFBOEI7a0dBQTlCLDhCQUE4Qiw0SUFFNUIsV0FBVyxnRENWMUIsZ0VBR0E7OzJGREthLDhCQUE4QjtrQkFOMUMsU0FBUzsrQkFDSSw4QkFBOEIsbUJBRXZCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSTs4QkFLaEIsa0JBQWtCO3NCQURqQixTQUFTO3VCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmQtZ3JpZC1saXN0LWl0ZW0tZm9vdGVyLWJhcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2dyaWQtbGlzdC1pdGVtLWZvb3Rlci1iYXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgR3JpZExpc3RJdGVtRm9vdGVyQmFyQ29tcG9uZW50IHtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoVGVtcGxhdGVSZWYpXG4gICAgY29udGVudFRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xufVxuIiwiPG5nLXRlbXBsYXRlPlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG4iXX0=","import { ChangeDetectionStrategy, Component, TemplateRef, ViewChild } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class GridListItemToolbarComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListItemToolbarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.4\", type: GridListItemToolbarComponent, isStandalone: true, selector: \"fd-grid-list-item-toolbar\", viewQueries: [{ propertyName: \"contentTemplateRef\", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: \"<ng-template>\\n <ng-content></ng-content>\\n</ng-template>\\n\", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListItemToolbarComponent, decorators: [{\n type: Component,\n args: [{ selector: 'fd-grid-list-item-toolbar', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: \"<ng-template>\\n <ng-content></ng-content>\\n</ng-template>\\n\" }]\n }], propDecorators: { contentTemplateRef: [{\n type: ViewChild,\n args: [TemplateRef]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1saXN0LWl0ZW0tdG9vbGJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvZ3JpZC1saXN0L2NvbXBvbmVudHMvZ3JpZC1saXN0LWl0ZW0tdG9vbGJhci9ncmlkLWxpc3QtaXRlbS10b29sYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9ncmlkLWxpc3QvY29tcG9uZW50cy9ncmlkLWxpc3QtaXRlbS10b29sYmFyL2dyaWQtbGlzdC1pdGVtLXRvb2xiYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVEzRixNQUFNLE9BQU8sNEJBQTRCOzhHQUE1Qiw0QkFBNEI7a0dBQTVCLDRCQUE0Qix5SUFFMUIsV0FBVyxnRENWMUIsZ0VBR0E7OzJGREthLDRCQUE0QjtrQkFOeEMsU0FBUzsrQkFDSSwyQkFBMkIsbUJBRXBCLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSTs4QkFLaEIsa0JBQWtCO3NCQURqQixTQUFTO3VCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBUZW1wbGF0ZVJlZiwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmQtZ3JpZC1saXN0LWl0ZW0tdG9vbGJhcicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2dyaWQtbGlzdC1pdGVtLXRvb2xiYXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgR3JpZExpc3RJdGVtVG9vbGJhckNvbXBvbmVudCB7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAVmlld0NoaWxkKFRlbXBsYXRlUmVmKVxuICAgIGNvbnRlbnRUZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55Pjtcbn1cbiIsIjxuZy10ZW1wbGF0ZT5cbiAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L25nLXRlbXBsYXRlPlxuIl19","import { Directive, TemplateRef } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class GridListItemBodyDirective {\n /** @hidden */\n constructor(templateRef) {\n this.templateRef = templateRef;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListItemBodyDirective, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.4\", type: GridListItemBodyDirective, isStandalone: true, selector: \"[fd-grid-list-item-body]\", ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListItemBodyDirective, decorators: [{\n type: Directive,\n args: [{\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-grid-list-item-body]',\n standalone: true\n }]\n }], ctorParameters: () => [{ type: i0.TemplateRef }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1saXN0LWl0ZW0tYm9keS5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvZ3JpZC1saXN0L2RpcmVjdGl2ZXMvZ3JpZC1saXN0LWl0ZW0tYm9keS5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBT3ZELE1BQU0sT0FBTyx5QkFBeUI7SUFDbEMsY0FBYztJQUNkLFlBQTRCLFdBQTZCO1FBQTdCLGdCQUFXLEdBQVgsV0FBVyxDQUFrQjtJQUFHLENBQUM7OEdBRnBELHlCQUF5QjtrR0FBekIseUJBQXlCOzsyRkFBekIseUJBQXlCO2tCQUxyQyxTQUFTO21CQUFDO29CQUNQLDhEQUE4RDtvQkFDOUQsUUFBUSxFQUFFLDBCQUEwQjtvQkFDcEMsVUFBVSxFQUFFLElBQUk7aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1zZWxlY3RvclxuICAgIHNlbGVjdG9yOiAnW2ZkLWdyaWQtbGlzdC1pdGVtLWJvZHldJyxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEdyaWRMaXN0SXRlbUJvZHlEaXJlY3RpdmUge1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IocHVibGljIHJlYWRvbmx5IHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+KSB7fVxufVxuIl19","/** Parse layout pattern */\nexport function parseLayoutPattern(pattern, isBaseLayout = true) {\n const parseLayout = pattern && validateAndParseLayoutPattern(pattern, isBaseLayout);\n if (!parseLayout) {\n throw new Error('Invalid layoutPattern.');\n }\n return generateLayoutClasses(parseLayout);\n}\nfunction validateAndParseLayoutPattern(pattern, isBaseLayout) {\n const columnsNames = 'XL|L|M|S';\n const columnNumbers = isBaseLayout ? '12|6|4|3|2|1' : '12|11|10|9|8|7|6|5|4|3|2|1';\n const reg = new RegExp(`(?!-)((${columnsNames})(${columnNumbers}))`, 'gi');\n const match = pattern.match(reg);\n if (!match) {\n return;\n }\n return match.reduce((res, item) => {\n const size = item.replace(reg, '$2').toLocaleLowerCase();\n const num = +item.replace(reg, '$3');\n res[size] = {\n pattern: item,\n size,\n value: isBaseLayout ? 12 / num : num\n };\n return res;\n }, {});\n}\nfunction generateLayoutClasses({ xl, l, m, s }) {\n const classes = ['fd-col'];\n if (s) {\n classes.push(`fd-col--${s.value}`);\n }\n if (m) {\n classes.push(`fd-col-md--${m.value}`);\n }\n if (l) {\n classes.push(`fd-col-lg--${l.value}`);\n }\n if (xl) {\n classes.push(`fd-col-xl--${xl.value}`);\n }\n return classes;\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2UtbGF5b3V0LXBhdHRlcm4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvZ3JpZC1saXN0L2hlbHBlcnMvcGFyc2UtbGF5b3V0LXBhdHRlcm4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBUUEsMkJBQTJCO0FBQzNCLE1BQU0sVUFBVSxrQkFBa0IsQ0FBQyxPQUEyQixFQUFFLFlBQVksR0FBRyxJQUFJO0lBQy9FLE1BQU0sV0FBVyxHQUFHLE9BQU8sSUFBSSw2QkFBNkIsQ0FBQyxPQUFPLEVBQUUsWUFBWSxDQUFDLENBQUM7SUFFcEYsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ2YsTUFBTSxJQUFJLEtBQUssQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO0lBQzlDLENBQUM7SUFFRCxPQUFPLHFCQUFxQixDQUFDLFdBQVcsQ0FBQyxDQUFDO0FBQzlDLENBQUM7QUFFRCxTQUFTLDZCQUE2QixDQUFDLE9BQWUsRUFBRSxZQUFxQjtJQUN6RSxNQUFNLFlBQVksR0FBRyxVQUFVLENBQUM7SUFDaEMsTUFBTSxhQUFhLEdBQUcsWUFBWSxDQUFDLENBQUMsQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLDRCQUE0QixDQUFDO0lBQ25GLE1BQU0sR0FBRyxHQUFHLElBQUksTUFBTSxDQUFDLFVBQVUsWUFBWSxLQUFLLGFBQWEsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzNFLE1BQU0sS0FBSyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDakMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ1QsT0FBTztJQUNYLENBQUM7SUFFRCxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUU7UUFDOUIsTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztRQUN6RCxNQUFNLEdBQUcsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRXJDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRztZQUNSLE9BQU8sRUFBRSxJQUFJO1lBQ2IsSUFBSTtZQUNKLEtBQUssRUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEdBQUc7U0FDdkMsQ0FBQztRQUVGLE9BQU8sR0FBRyxDQUFDO0lBQ2YsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0FBQ1gsQ0FBQztBQUVELFNBQVMscUJBQXFCLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQWU7SUFDdkQsTUFBTSxPQUFPLEdBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUVyQyxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ0osT0FBTyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ0osT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUFJLENBQUMsRUFBRSxDQUFDO1FBQ0osT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzFDLENBQUM7SUFFRCxJQUFJLEVBQUUsRUFBRSxDQUFDO1FBQ0wsT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRCxPQUFPLE9BQU8sQ0FBQztBQUNuQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW50ZXJmYWNlIFBhcnNlTGF5b3V0IHtcbiAgICBba2V5OiBzdHJpbmddOiB7XG4gICAgICAgIHBhdHRlcm46IHN0cmluZztcbiAgICAgICAgdmFsdWU6IG51bWJlcjtcbiAgICAgICAgc2l6ZTogc3RyaW5nO1xuICAgIH07XG59XG5cbi8qKiBQYXJzZSBsYXlvdXQgcGF0dGVybiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHBhcnNlTGF5b3V0UGF0dGVybihwYXR0ZXJuOiBzdHJpbmcgfCB1bmRlZmluZWQsIGlzQmFzZUxheW91dCA9IHRydWUpOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgcGFyc2VMYXlvdXQgPSBwYXR0ZXJuICYmIHZhbGlkYXRlQW5kUGFyc2VMYXlvdXRQYXR0ZXJuKHBhdHRlcm4sIGlzQmFzZUxheW91dCk7XG5cbiAgICBpZiAoIXBhcnNlTGF5b3V0KSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBsYXlvdXRQYXR0ZXJuLicpO1xuICAgIH1cblxuICAgIHJldHVybiBnZW5lcmF0ZUxheW91dENsYXNzZXMocGFyc2VMYXlvdXQpO1xufVxuXG5mdW5jdGlvbiB2YWxpZGF0ZUFuZFBhcnNlTGF5b3V0UGF0dGVybihwYXR0ZXJuOiBzdHJpbmcsIGlzQmFzZUxheW91dDogYm9vbGVhbik6IFBhcnNlTGF5b3V0IHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBjb2x1bW5zTmFtZXMgPSAnWEx8THxNfFMnO1xuICAgIGNvbnN0IGNvbHVtbk51bWJlcnMgPSBpc0Jhc2VMYXlvdXQgPyAnMTJ8Nnw0fDN8MnwxJyA6ICcxMnwxMXwxMHw5fDh8N3w2fDV8NHwzfDJ8MSc7XG4gICAgY29uc3QgcmVnID0gbmV3IFJlZ0V4cChgKD8hLSkoKCR7Y29sdW1uc05hbWVzfSkoJHtjb2x1bW5OdW1iZXJzfSkpYCwgJ2dpJyk7XG4gICAgY29uc3QgbWF0Y2ggPSBwYXR0ZXJuLm1hdGNoKHJlZyk7XG4gICAgaWYgKCFtYXRjaCkge1xuICAgICAgICByZXR1cm47XG4gICAgfVxuXG4gICAgcmV0dXJuIG1hdGNoLnJlZHVjZSgocmVzLCBpdGVtKSA9PiB7XG4gICAgICAgIGNvbnN0IHNpemUgPSBpdGVtLnJlcGxhY2UocmVnLCAnJDInKS50b0xvY2FsZUxvd2VyQ2FzZSgpO1xuICAgICAgICBjb25zdCBudW0gPSAraXRlbS5yZXBsYWNlKHJlZywgJyQzJyk7XG5cbiAgICAgICAgcmVzW3NpemVdID0ge1xuICAgICAgICAgICAgcGF0dGVybjogaXRlbSxcbiAgICAgICAgICAgIHNpemUsXG4gICAgICAgICAgICB2YWx1ZTogaXNCYXNlTGF5b3V0ID8gMTIgLyBudW0gOiBudW1cbiAgICAgICAgfTtcblxuICAgICAgICByZXR1cm4gcmVzO1xuICAgIH0sIHt9KTtcbn1cblxuZnVuY3Rpb24gZ2VuZXJhdGVMYXlvdXRDbGFzc2VzKHsgeGwsIGwsIG0sIHMgfTogUGFyc2VMYXlvdXQpOiBzdHJpbmdbXSB7XG4gICAgY29uc3QgY2xhc3Nlczogc3RyaW5nW10gPSBbJ2ZkLWNvbCddO1xuXG4gICAgaWYgKHMpIHtcbiAgICAgICAgY2xhc3Nlcy5wdXNoKGBmZC1jb2wtLSR7cy52YWx1ZX1gKTtcbiAgICB9XG5cbiAgICBpZiAobSkge1xuICAgICAgICBjbGFzc2VzLnB1c2goYGZkLWNvbC1tZC0tJHttLnZhbHVlfWApO1xuICAgIH1cblxuICAgIGlmIChsKSB7XG4gICAgICAgIGNsYXNzZXMucHVzaChgZmQtY29sLWxnLS0ke2wudmFsdWV9YCk7XG4gICAgfVxuXG4gICAgaWYgKHhsKSB7XG4gICAgICAgIGNsYXNzZXMucHVzaChgZmQtY29sLXhsLS0ke3hsLnZhbHVlfWApO1xuICAgIH1cblxuICAgIHJldHVybiBjbGFzc2VzO1xufVxuIl19","export var GridListSelectionActions;\n(function (GridListSelectionActions) {\n GridListSelectionActions[\"ADD\"] = \"add\";\n GridListSelectionActions[\"REMOVE\"] = \"remove\";\n})(GridListSelectionActions || (GridListSelectionActions = {}));\nexport var GridListSelectionModeEnum;\n(function (GridListSelectionModeEnum) {\n GridListSelectionModeEnum[\"NONE\"] = \"none\";\n GridListSelectionModeEnum[\"DELETE\"] = \"delete\";\n GridListSelectionModeEnum[\"SINGLE_SELECT\"] = \"singleSelect\";\n GridListSelectionModeEnum[\"SINGLE_SELECT_LEFT\"] = \"singleSelectLeft\";\n GridListSelectionModeEnum[\"SINGLE_SELECT_RIGHT\"] = \"singleSelectRight\";\n GridListSelectionModeEnum[\"MULTI_SELECT\"] = \"multiSelect\";\n})(GridListSelectionModeEnum || (GridListSelectionModeEnum = {}));\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1saXN0LXNlbGVjdGlvbi5tb2RlbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvZ3JpZC1saXN0L21vZGVscy9ncmlkLWxpc3Qtc2VsZWN0aW9uLm1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFRQSxNQUFNLENBQU4sSUFBWSx3QkFHWDtBQUhELFdBQVksd0JBQXdCO0lBQ2hDLHVDQUFXLENBQUE7SUFDWCw2Q0FBaUIsQ0FBQTtBQUNyQixDQUFDLEVBSFcsd0JBQXdCLEtBQXhCLHdCQUF3QixRQUduQztBQUVELE1BQU0sQ0FBTixJQUFZLHlCQU9YO0FBUEQsV0FBWSx5QkFBeUI7SUFDakMsMENBQWEsQ0FBQTtJQUNiLDhDQUFpQixDQUFBO0lBQ2pCLDJEQUE4QixDQUFBO0lBQzlCLG9FQUF1QyxDQUFBO0lBQ3ZDLHNFQUF5QyxDQUFBO0lBQ3pDLHlEQUE0QixDQUFBO0FBQ2hDLENBQUMsRUFQVyx5QkFBeUIsS0FBekIseUJBQXlCLFFBT3BDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgR3JpZExpc3RTZWxlY3Rpb25Nb2RlID1cbiAgICB8ICdub25lJ1xuICAgIHwgJ2RlbGV0ZSdcbiAgICB8ICdzaW5nbGVTZWxlY3QnXG4gICAgfCAnc2luZ2xlU2VsZWN0TGVmdCdcbiAgICB8ICdzaW5nbGVTZWxlY3RSaWdodCdcbiAgICB8ICdtdWx0aVNlbGVjdCc7XG5cbmV4cG9ydCBlbnVtIEdyaWRMaXN0U2VsZWN0aW9uQWN0aW9ucyB7XG4gICAgQUREID0gJ2FkZCcsXG4gICAgUkVNT1ZFID0gJ3JlbW92ZSdcbn1cblxuZXhwb3J0IGVudW0gR3JpZExpc3RTZWxlY3Rpb25Nb2RlRW51bSB7XG4gICAgTk9ORSA9ICdub25lJyxcbiAgICBERUxFVEUgPSAnZGVsZXRlJyxcbiAgICBTSU5HTEVfU0VMRUNUID0gJ3NpbmdsZVNlbGVjdCcsXG4gICAgU0lOR0xFX1NFTEVDVF9MRUZUID0gJ3NpbmdsZVNlbGVjdExlZnQnLFxuICAgIFNJTkdMRV9TRUxFQ1RfUklHSFQgPSAnc2luZ2xlU2VsZWN0UmlnaHQnLFxuICAgIE1VTFRJX1NFTEVDVCA9ICdtdWx0aVNlbGVjdCdcbn1cblxuZXhwb3J0IGludGVyZmFjZSBHcmlkTGlzdFNlbGVjdGlvbkV2ZW50PFQ+IHtcbiAgICAvKiogY3VycmVudGx5IHNlbGVjdGVkIGl0ZW1zICovXG4gICAgc2VsZWN0aW9uOiBUW107XG4gICAgLyoqIGl0ZW1zIGFkZGVkICovXG4gICAgYWRkZWQ6IFRbXTtcbiAgICAvKiogaXRlbXMgcmVtb3ZlZCAqL1xuICAgIHJlbW92ZWQ6IFRbXTtcbiAgICAvKiogaW5kZXhlcyBsb2NhdGlvbiBvZiBhZGRpdGlvbnMgb3IgcmVtb3ZhbHMgKi9cbiAgICBpbmRleDogbnVtYmVyW107XG59XG4iXX0=","import { ChangeDetectionStrategy, Component } from '@angular/core';\nimport { ToolbarSpacerDirective } from '@fundamental-ngx/core/toolbar';\nimport * as i0 from \"@angular/core\";\nexport class GridListTitleBarSpacerComponent extends ToolbarSpacerDirective {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListTitleBarSpacerComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.4\", type: GridListTitleBarSpacerComponent, isStandalone: true, selector: \"fd-grid-list-title-bar-spacer\", usesInheritance: true, ngImport: i0, template: '', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListTitleBarSpacerComponent, decorators: [{\n type: Component,\n args: [{\n selector: 'fd-grid-list-title-bar-spacer',\n template: '',\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: true\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1saXN0LXRpdGxlLWJhci1zcGFjZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL2dyaWQtbGlzdC9jb21wb25lbnRzL2dyaWQtbGlzdC10aXRsZS1iYXItc3BhY2VyL2dyaWQtbGlzdC10aXRsZS1iYXItc3BhY2VyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ25FLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLCtCQUErQixDQUFDOztBQVF2RSxNQUFNLE9BQU8sK0JBQWdDLFNBQVEsc0JBQXNCOzhHQUE5RCwrQkFBK0I7a0dBQS9CLCtCQUErQixnSEFKOUIsRUFBRTs7MkZBSUgsK0JBQStCO2tCQU4zQyxTQUFTO21CQUFDO29CQUNQLFFBQVEsRUFBRSwrQkFBK0I7b0JBQ3pDLFFBQVEsRUFBRSxFQUFFO29CQUNaLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO29CQUMvQyxVQUFVLEVBQUUsSUFBSTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUb29sYmFyU3BhY2VyRGlyZWN0aXZlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3Rvb2xiYXInO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZkLWdyaWQtbGlzdC10aXRsZS1iYXItc3BhY2VyJyxcbiAgICB0ZW1wbGF0ZTogJycsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBHcmlkTGlzdFRpdGxlQmFyU3BhY2VyQ29tcG9uZW50IGV4dGVuZHMgVG9vbGJhclNwYWNlckRpcmVjdGl2ZSB7fVxuIl19","import { Directive } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class GridList {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridList, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.4\", type: GridList, isStandalone: true, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridList, decorators: [{\n type: Directive\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1saXN0LWJhc2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL2dyaWQtbGlzdC9jb21wb25lbnRzL2dyaWQtbGlzdC9ncmlkLWxpc3QtYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFLMUMsTUFBTSxPQUFnQixRQUFROzhHQUFSLFFBQVE7a0dBQVIsUUFBUTs7MkZBQVIsUUFBUTtrQkFEN0IsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgR3JpZExpc3RTZWxlY3Rpb25BY3Rpb25zLCBHcmlkTGlzdFNlbGVjdGlvbkV2ZW50IH0gZnJvbSAnLi4vLi4vbW9kZWxzL2dyaWQtbGlzdC1zZWxlY3Rpb24ubW9kZWxzJztcblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgR3JpZExpc3Q8VD4ge1xuICAgIC8qKiBhbiBvYnNlcnZhYmxlIG9mIHNlbGVjdGlvbiBzdGF0ZSBldmVudCAqL1xuICAgIGFic3RyYWN0IF9zZWxlY3RlZEl0ZW1zJDogT2JzZXJ2YWJsZTxHcmlkTGlzdFNlbGVjdGlvbkV2ZW50PFQ+PjtcbiAgICAvKiogbWV0aG9kIHRvIGJlIHVzZWQgYnkgbGlzdCBpdGVtcyB0byByZWdpc3RlciB0aGUgc2VsZWN0aW9uICovXG4gICAgYWJzdHJhY3Qgc2V0U2VsZWN0ZWRJdGVtKFxuICAgICAgICBpdGVtOiBULFxuICAgICAgICBjb21wb25lbnRJbmRleDogbnVtYmVyLFxuICAgICAgICBhY3Rpb24/OiBHcmlkTGlzdFNlbGVjdGlvbkFjdGlvbnMgfCBudWxsLFxuICAgICAgICBldmVudD86IE1vdXNlRXZlbnRcbiAgICApOiB2b2lkO1xufVxuIl19","import { ENTER, ESCAPE, F2, F7, MAC_ENTER, SPACE } from '@angular/cdk/keycodes';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChild, ElementRef, EventEmitter, HostBinding, Input, Output, Renderer2, ViewChild, ViewEncapsulation, booleanAttribute, signal } from '@angular/core';\nimport { Subscription } from 'rxjs';\nimport { KeyUtil, TabbableElementService } from '@fundamental-ngx/cdk/utils';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { ButtonComponent } from '@fundamental-ngx/core/button';\nimport { ContentDensityModule, ContentDensityObserver, contentDensityObserverProviders } from '@fundamental-ngx/core/content-density';\nimport { IconComponent } from '@fundamental-ngx/core/icon';\nimport { ObjectStatusComponent } from '@fundamental-ngx/core/object-status';\nimport { FdTranslatePipe } from '@fundamental-ngx/i18n';\nimport { GridListItemBodyDirective } from '../../directives/grid-list-item-body.directive';\nimport { parseLayoutPattern } from '../../helpers/parse-layout-pattern';\nimport { GridListSelectionActions, GridListSelectionModeEnum } from '../../models/grid-list-selection.models';\nimport { GridListItemFooterBarComponent } from '../grid-list-item-footer-bar/grid-list-item-footer-bar.component';\nimport { GridListItemToolbarComponent } from '../grid-list-item-toolbar/grid-list-item-toolbar.component';\nimport { GridListTitleBarSpacerComponent } from '../grid-list-title-bar-spacer/grid-list-title-bar-spacer.component';\nimport { GridList } from '../grid-list/grid-list-base.component';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"../grid-list/grid-list-base.component\";\nimport * as i2 from \"@fundamental-ngx/core/content-density\";\nimport * as i3 from \"@fundamental-ngx/cdk/utils\";\nimport * as i4 from \"@angular/forms\";\nlet gridListItemUniqueId = 0;\nexport class GridListItemComponent {\n /**\n * specify the cell layout in the format `XLn-Ln-Mn-Sn` where n is\n * the number of occupied columns and n can be different for each size.\n */\n set layoutItemPattern(value) {\n this.gridLayoutClasses = value ? parseLayoutPattern(value, false) : [];\n }\n /**\n * Defines the type of Grid List Item\n * Types:\n * - active: indicates that the item is clickable via active feedback when item is pressed\n * - detail: enables detail button of the list item that fires event.\n * - detailsAndActive: enables \"detail\" and \"active\" enumerations together\n * - inactive: indicates the list item does not have any active feedback when item is pressed\n * - navigation: indicates the list item is navigable to show extra information about the item\n * Default: inactive\n */\n set type(value) {\n this._type = value ?? 'inactive';\n }\n get type() {\n return this._type;\n }\n /** @hidden */\n set gridLayoutClasses(value) {\n this._removeClassesNames(this._gridLayoutClasses);\n this._gridLayoutClasses = value;\n this._addClassesNames(this._gridLayoutClasses);\n }\n get gridLayoutClasses() {\n return this._gridLayoutClasses;\n }\n /** @hidden */\n set selectionMode(mode) {\n this._selectionMode = mode;\n if (mode !== GridListSelectionModeEnum.DELETE && mode !== GridListSelectionModeEnum.NONE && !this.value) {\n throw new Error('Grid List Item must have [value] attribute.');\n }\n if (this.selected && this.value && this._index != null) {\n const action = this.selectionMode !== GridListSelectionModeEnum.MULTI_SELECT ? null : GridListSelectionActions.ADD;\n this._gridList.setSelectedItem(this.value, this._index, action);\n }\n this._cd.detectChanges();\n }\n get selectionMode() {\n return this._selectionMode;\n }\n /** @hidden */\n constructor(_cd, _elementRef, _render, _gridList, _contentDensityObserver, _tabbableElementService) {\n this._cd = _cd;\n this._elementRef = _elementRef;\n this._render = _render;\n this._gridList = _gridList;\n this._contentDensityObserver = _contentDensityObserver;\n this._tabbableElementService = _tabbableElementService;\n /** id for the Element */\n this.id = `fd-grid-list-item-${gridListItemUniqueId++}`;\n /** Whether click on the custom toolbar is disabled */\n this.disableToolbarClick = false;\n /** Allows an item to be selected programmatically */\n this.selected = false;\n /** Remove the padding from the Item body */\n this.noPadding = false;\n /**\n * The navigated state of the list item.\n * If set to true, a navigation indicator is displayed at the end of the list item.\n */\n this.isNavigated = false;\n /**\n * Aria-level of the title\n * Available options: 1, 2, 3, 4, 5, 6\n * Default: 4\n */\n this.titleLevel = 4;\n /** When set to true the grid list item's height will be set to auto */\n this.autoHeight = false;\n /**\n * Event is thrown, when type is active\n * and item is pressed\n */\n this.press = new EventEmitter();\n /**\n * Event is thrown, when type is detail or detailsAndActive\n * and Detail button was pressed\n */\n this.detail = new EventEmitter();\n /**\n * Event is thrown, when mode delete\n * and Delete button was pressed\n */\n this.delete = new EventEmitter();\n /**\n * Event is thrown, when type is navigation\n * and Navigate button was pressed\n */\n this.navigate = new EventEmitter();\n /**\n * Event is thrown on grid list item click.\n */\n this.cardClick = new EventEmitter();\n /**\n * Event is thrown, when state is error, not used GridListItemFooterBarComponent\n * and Draft button was pressed\n */\n this.draft = new EventEmitter();\n /**\n * Event is thrown, when state is locked, not used GridListItemFooterBarComponent\n * and Locked button was pressed\n */\n this.locked = new EventEmitter();\n /** @hidden\n * The active state of the list item.\n * If set to true, the whole card has active state. Becomes false only when the Edit button is clicked.\n */\n this._isActive = true;\n /** tabIndex of the element */\n this.tabIndex = signal(-1, ...(ngDevMode ? [{ debugName: \"tabIndex\" }] : []));\n /** @hidden */\n this._type = 'inactive';\n /** @hidden */\n this._gridLayoutClasses = [];\n /** @hidden */\n this.subscription = new Subscription();\n /** @hidden */\n this._innerElementFocused = signal(false, ...(ngDevMode ? [{ debugName: \"_innerElementFocused\" }] : []));\n const selectedItemsSub = this._gridList._selectedItems$.subscribe((items) => {\n this._selectedItem = items.selection.find((item) => item === this.value);\n this._cd.markForCheck();\n });\n this.subscription.add(selectedItemsSub);\n }\n /** @hidden */\n ngAfterViewInit() {\n this._cd.detectChanges();\n }\n /** @hidden */\n ngOnDestroy() {\n this.subscription.unsubscribe();\n }\n /** Focus grid list item programmatically */\n focus(options) {\n this._gridListItem?.nativeElement.focus(options);\n }\n /** @hidden */\n _setActive(event, isActive) {\n if (this._isElementCanBeClicked(event)) {\n return;\n }\n this._isActive = isActive;\n }\n /** @hidden */\n _singleSelect(event) {\n this._preventDefault(event);\n if (typeof this._selectedItem !== 'undefined' || !this.value || this._index == null) {\n return;\n }\n this._gridList.setSelectedItem(this.value, this._index);\n }\n /** @hidden */\n _checkboxClick(event) {\n const checked = event.target.checked;\n this._selectionItem(checked, event);\n }\n /** @hidden */\n _checkboxEscape() {\n this._gridListItem.nativeElement.focus();\n }\n /** @hidden */\n _selectionItem(value, event) {\n if (!this.value || this._index == null) {\n return;\n }\n const action = this.selectionMode !== GridListSelectionModeEnum.MULTI_SELECT\n ? null\n : value || value === 0\n ? GridListSelectionActions.ADD\n : GridListSelectionActions.REMOVE;\n this._gridList.setSelectedItem(this.value, this._index, action, event);\n }\n /** @hidden */\n _onDetail(event) {\n this._preventDefault(event);\n this.detail.emit(this._outputEventValue);\n }\n /** @hidden */\n _onNavigate(event) {\n this._preventDefault(event);\n this.navigate.emit(this._outputEventValue);\n }\n /** @hidden */\n _onDelete(event) {\n this._preventDefault(event);\n this.delete.emit(this._outputEventValue);\n }\n /** @hidden */\n _clickOnDraft(event) {\n this._preventDefault(event);\n this.draft.emit(this._outputEventValue);\n }\n /** @hidden */\n _clickOnLocked(event) {\n this._preventDefault(event);\n this.locked.emit(this._outputEventValue);\n }\n /** @hidden */\n _onClick(event) {\n if (!this._isElementCanBeClicked(event)) {\n return;\n }\n if (this.type !== 'active' && this.type !== 'detailsAndActive' && this.type !== 'navigation') {\n this.cardClick.emit(this._outputEventValue);\n return;\n }\n if (this.type === 'navigation') {\n this._onNavigate(event);\n return;\n }\n this.press.emit(this._outputEventValue);\n this.cardClick.emit(this._outputEventValue);\n }\n /** @hidden */\n _onKeyDown(event) {\n const activeElement = document.activeElement;\n const isFocused = activeElement === this._gridListItem.nativeElement;\n const shouldFocusChild = KeyUtil.isKeyCode(event, [ENTER, MAC_ENTER, F2, F7]) && !event.shiftKey && isFocused;\n if (shouldFocusChild) {\n event.stopPropagation();\n const interactiveElements = this._gridListItem.nativeElement.querySelectorAll('a, button, input, select, textarea');\n const firstInteractiveElement = interactiveElements[0];\n firstInteractiveElement.focus();\n interactiveElements.forEach((element) => {\n element.setAttribute('tabindex', '0');\n });\n this._innerElementFocused.set(true);\n return;\n }\n else if (this._innerElementFocused() && KeyUtil.isKeyCode(event, [F2, F7, ESCAPE])) {\n event.stopPropagation();\n this._gridListItem.nativeElement.focus();\n this._innerElementFocused.set(false);\n return;\n }\n const target = event.target;\n const isSelectionKeyDown = KeyUtil.isKeyCode(event, [ENTER, SPACE]);\n if (isSelectionKeyDown && this.selectionMode === GridListSelectionModeEnum.NONE) {\n this.press.emit(this._outputEventValue);\n }\n if (!isSelectionKeyDown ||\n this.selectionMode === GridListSelectionModeEnum.NONE ||\n !target.classList.contains('fd-grid-list__item')) {\n return;\n }\n this._preventDefault(event);\n if (this.selectionMode === GridListSelectionModeEnum.MULTI_SELECT) {\n this._selectionItem(!this._selectedItem);\n return;\n }\n if (typeof this._selectedItem === 'undefined') {\n this._singleSelect(event);\n }\n }\n /** @hidden */\n _isElementCanBeClicked(event) {\n if (!event?.target) {\n return false;\n }\n const element = event.target;\n const { classList } = element;\n return (!(this._isToolbarElement(element) && this.disableToolbarClick) &&\n !classList.contains('fd-grid-list__action-button') &&\n !classList.contains('fd-grid-list__radio-label') &&\n !classList.contains('fd-grid-list__radio-input') &&\n !classList.contains('fd-grid-list__checkbox-label') &&\n !classList.contains('fd-grid-list__checkbox-input') &&\n !classList.contains('fd-checkbox__checkmark'));\n }\n /** @hidden */\n _isToolbarElement(element) {\n if (!this.itemToolbarComponent) {\n return false;\n }\n while (element.parentElement && !element.parentElement.classList.contains('fd-grid-list__item')) {\n if (element.classList.contains('fd-toolbar--extra-content')) {\n return true;\n }\n element = element.parentElement;\n }\n return false;\n }\n /** @hidden */\n _preventDefault(event) {\n event.preventDefault();\n event.stopPropagation();\n }\n /** @hidden */\n get _outputEventValue() {\n return {\n value: this.value,\n index: this._index\n };\n }\n /** @hidden */\n _addClassesNames(classesNames) {\n for (const className of classesNames) {\n this._render.addClass(this._elementRef.nativeElement, className);\n }\n }\n /** @hidden */\n _removeClassesNames(classesNames) {\n for (const className of classesNames) {\n this._render.removeClass(this._elementRef.nativeElement, className);\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListItemComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i1.GridList }, { token: i2.ContentDensityObserver }, { token: i3.TabbableElementService }], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.1.4\", type: GridListItemComponent, isStandalone: true, selector: \"fd-grid-list-item\", inputs: { id: \"id\", width: \"width\", layoutItemPattern: \"layoutItemPattern\", status: \"status\", counter: \"counter\", value: \"value\", disableToolbarClick: \"disableToolbarClick\", selected: [\"selected\", \"selected\", booleanAttribute], noPadding: \"noPadding\", ariaLabel: \"ariaLabel\", ariaLabelledBy: \"ariaLabelledBy\", type: \"type\", state: \"state\", isNavigated: \"isNavigated\", title: \"title\", titleLevel: \"titleLevel\", description: \"description\", autoHeight: \"autoHeight\" }, outputs: { press: \"press\", detail: \"detail\", delete: \"delete\", navigate: \"navigate\", cardClick: \"cardClick\", draft: \"draft\", locked: \"locked\" }, host: { properties: { \"style.max-width\": \"this.width\", \"style.min-width\": \"this.width\" } }, providers: [contentDensityObserverProviders()], queries: [{ propertyName: \"footerBarComponent\", first: true, predicate: GridListItemFooterBarComponent, descendants: true }, { propertyName: \"itemToolbarComponent\", first: true, predicate: GridListItemToolbarComponent, descendants: true }, { propertyName: \"body\", first: true, predicate: GridListItemBodyDirective, descendants: true }], viewQueries: [{ propertyName: \"_gridListItem\", first: true, predicate: [\"gridListItem\"], descendants: true }], ngImport: i0, template: \"<div\\n #gridListItem\\n [id]=\\\"id\\\"\\n [tabindex]=\\\"tabIndex()\\\"\\n class=\\\"fd-grid-list__item\\\"\\n role=\\\"option\\\"\\n [class.is-navigated]=\\\"isNavigated\\\"\\n [class.is-selected]=\\\"!!_selectedItem\\\"\\n [class.fd-grid-list__item--link]=\\\"\\n _isActive && (type === 'active' || type === 'detailsAndActive' || type === 'navigation')\\n \\\"\\n [class.fd-grid-list__item--unread]=\\\"state === 'unread'\\\"\\n [class.fd-grid-list__item--locked]=\\\"state === 'locked'\\\"\\n [class.fd-grid-list__item--draft]=\\\"state === 'draft'\\\"\\n [class.fd-grid-list__item--error]=\\\"state === 'error'\\\"\\n [class.fd-grid-list__item--height-auto]=\\\"autoHeight\\\"\\n (keydown)=\\\"_onKeyDown($event)\\\"\\n (click)=\\\"selectionMode === 'singleSelect' && _singleSelect($event); _onClick($event)\\\"\\n [attr.aria-label]=\\\"ariaLabel\\\"\\n [attr.aria-labelledby]=\\\"ariaLabelledBy\\\"\\n (mouseover)=\\\"_setActive($event, false)\\\"\\n (mouseout)=\\\"_setActive($event, true)\\\"\\n [attr.aria-selected]=\\\"selectionMode === 'none' ? null : !!_selectedItem\\\"\\n>\\n @if (status) {\\n <span\\n class=\\\"fd-grid-list__highlight\\\"\\n [class.fd-grid-list__highlight--positive]=\\\"status === 'success'\\\"\\n [class.fd-grid-list__highlight--critical]=\\\"status === 'warning'\\\"\\n [class.fd-grid-list__highlight--negative]=\\\"status === 'error'\\\"\\n [class.fd-grid-list__highlight--neutral]=\\\"status === 'neutral'\\\"\\n [attr.aria-label]=\\\"'coreGridList.listItemStatusAriaLabel' | fdTranslate: { status: status }\\\"\\n ></span>\\n }\\n @if (selectionMode === 'singleSelect') {\\n <ng-template [ngTemplateOutlet]=\\\"radio\\\"></ng-template>\\n }\\n @if (\\n counter ||\\n itemToolbarComponent?.contentTemplateRef ||\\n (type && type !== 'inactive' && type !== 'active') ||\\n (selectionMode !== 'none' && selectionMode !== 'singleSelect')\\n ) {\\n <div class=\\\"fd-toolbar fd-grid-list__item-toolbar\\\">\\n @if (selectionMode === 'singleSelectLeft') {\\n <ng-template [ngTemplateOutlet]=\\\"radio\\\"></ng-template>\\n }\\n @if (selectionMode === 'multiSelect') {\\n <ng-template [ngTemplateOutlet]=\\\"checkbox\\\"></ng-template>\\n }\\n @if (itemToolbarComponent?.contentTemplateRef) {\\n <div class=\\\"fd-toolbar--extra-content\\\">\\n <ng-template [ngTemplateOutlet]=\\\"itemToolbarComponent!.contentTemplateRef\\\"></ng-template>\\n </div>\\n }\\n <fd-grid-list-title-bar-spacer></fd-grid-list-title-bar-spacer>\\n @if (counter) {\\n <span\\n class=\\\"fd-grid-list__item-counter\\\"\\n [attr.aria-label]=\\\"'coreGridList.listItemCounterAriaLabel' | fdTranslate: { count: counter }\\\"\\n >{{ counter }}</span\\n >\\n }\\n @if (type === 'detail' || type === 'detailsAndActive') {\\n <button\\n fd-button\\n fdType=\\\"transparent\\\"\\n glyph=\\\"edit\\\"\\n class=\\\"fd-grid-list__action-button\\\"\\n [attr.aria-label]=\\\"'coreGridList.listItemButtonDetailsTitle' | fdTranslate\\\"\\n [title]=\\\"'coreGridList.listItemButtonDetailsTitle' | fdTranslate\\\"\\n fdCompact\\n (click)=\\\"_onDetail($event)\\\"\\n ></button>\\n }\\n @if (selectionMode === 'delete') {\\n <button\\n fd-button\\n fdType=\\\"transparent\\\"\\n glyph=\\\"decline\\\"\\n class=\\\"fd-grid-list__action-button\\\"\\n [attr.aria-label]=\\\"'coreGridList.listItemButtonDeleteTitle' | fdTranslate\\\"\\n [title]=\\\"'coreGridList.listItemButtonDeleteTitle' | fdTranslate\\\"\\n title=\\\"Delete\\\"\\n fdCompact\\n (click)=\\\"_onDelete($event)\\\"\\n ></button>\\n }\\n @if (type === 'navigation') {\\n <span class=\\\"fd-grid-list__item-navigation-indicator\\\">\\n <fd-icon glyph=\\\"navigation-right-arrow\\\"></fd-icon>\\n </span>\\n }\\n @if (selectionMode === 'singleSelectRight') {\\n <ng-template [ngTemplateOutlet]=\\\"radio\\\"></ng-template>\\n }\\n </div>\\n }\\n <div class=\\\"fd-grid-list__item-body\\\" [class.fd-grid-list__item-body--no-padding]=\\\"noPadding\\\">\\n <ng-content select=\\\"[fd-grid-list-item-image]\\\"></ng-content>\\n @if (title || description) {\\n <div class=\\\"fd-grid-list__item-header\\\">\\n @if (title) {\\n <div\\n role=\\\"heading\\\"\\n [attr.aria-level]=\\\"titleLevel\\\"\\n class=\\\"fd-title fd-title--h4 fd-grid-list__item-title\\\"\\n >\\n {{ title }}\\n </div>\\n }\\n @if (description) {\\n <span class=\\\"fd-grid-list__item-subtitle\\\">{{ description }}</span>\\n }\\n </div>\\n }\\n @if (body?.templateRef) {\\n <div class=\\\"fd-grid-list__item-content\\\">\\n <ng-template [ngTemplateOutlet]=\\\"body!.templateRef\\\"></ng-template>\\n </div>\\n }\\n @if (state || footerBarComponent?.contentTemplateRef) {\\n <ng-template [ngTemplateOutlet]=\\\"itemFooter\\\"></ng-template>\\n }\\n </div>\\n</div>\\n<ng-template #radio>\\n <input\\n [attr.tabindex]=\\\"selectionMode === 'singleSelect' ? -1 : 0\\\"\\n type=\\\"radio\\\"\\n class=\\\"fd-radio fd-grid-list__radio-input\\\"\\n [style.display]=\\\"selectionMode === 'singleSelect' ? 'none' : ''\\\"\\n [id]=\\\"id + '-radio'\\\"\\n [name]=\\\"'fd-grid-list-item-toolbar-' + selectionMode\\\"\\n [attr.aria-label]=\\\"ariaLabel\\\"\\n [attr.aria-labelledby]=\\\"ariaLabelledBy\\\"\\n [value]=\\\"value\\\"\\n [ngModel]=\\\"_selectedItem\\\"\\n (ngModelChange)=\\\"$event && _selectionItem($event)\\\"\\n />\\n <label\\n class=\\\"fd-radio__label fd-grid-list__radio-label\\\"\\n [for]=\\\"id + '-radio'\\\"\\n tabindex=\\\"-1\\\"\\n (mouseover)=\\\"_setActive($event, false)\\\"\\n (mouseout)=\\\"_setActive($event, true)\\\"\\n ></label>\\n</ng-template>\\n<ng-template #checkbox>\\n <input\\n type=\\\"checkbox\\\"\\n class=\\\"fd-checkbox fd-grid-list__checkbox-input\\\"\\n [id]=\\\"id + '-checkbox'\\\"\\n [attr.aria-label]=\\\"ariaLabel\\\"\\n [attr.aria-labelledby]=\\\"ariaLabelledBy\\\"\\n [ngModel]=\\\"_selectedItem\\\"\\n (click)=\\\"_checkboxClick($event)\\\"\\n (keydown.escape)=\\\"_checkboxEscape()\\\"\\n (keydown.shift)=\\\"_checkboxEscape()\\\"\\n />\\n <label class=\\\"fd-checkbox__label fd-grid-list__checkbox-label\\\" [for]=\\\"id + '-checkbox'\\\" tabindex=\\\"-1\\\">\\n <span class=\\\"fd-checkbox__checkmark\\\" aria-hidden=\\\"true\\\"></span>\\n </label>\\n</ng-template>\\n<ng-template #itemFooter>\\n @if (footerBarComponent || state) {\\n <div class=\\\"fd-grid-list__item-body-actions\\\">\\n @if (footerBarComponent?.contentTemplateRef) {\\n <ng-template [ngTemplateOutlet]=\\\"footerBarComponent!.contentTemplateRef\\\"></ng-template>\\n }\\n @if (!footerBarComponent?.contentTemplateRef && state) {\\n @if (state === 'error') {\\n <span\\n fd-object-status\\n status=\\\"negative\\\"\\n [label]=\\\"'coreGridList.listItemStatusContainsErrors' | fdTranslate\\\"\\n [attr.aria-label]=\\\"'coreGridList.listItemStatusContainsErrors' | fdTranslate\\\"\\n ></span>\\n }\\n @if (state === 'locked') {\\n <button\\n class=\\\"fd-grid-list__action-button\\\"\\n fd-button\\n fdType=\\\"transparent\\\"\\n glyph=\\\"private\\\"\\n [label]=\\\"'coreGridList.listItemStatusLocked' | fdTranslate\\\"\\n [attr.aria-label]=\\\"'coreGridList.listItemStatusLocked' | fdTranslate\\\"\\n [attr.data-test-id]=\\\"'coreGridList.listItemStatusLocked' | fdTranslate\\\"\\n fdCompact\\n (click)=\\\"_clickOnLocked($event)\\\"\\n ></button>\\n }\\n @if (state === 'draft') {\\n <button\\n class=\\\"fd-grid-list__action-button\\\"\\n fd-button\\n fdType=\\\"transparent\\\"\\n [attr.aria-label]=\\\"'coreGridList.listItemStatusDraft' | fdTranslate\\\"\\n [label]=\\\"'coreGridList.listItemStatusDraft' | fdTranslate\\\"\\n [attr.data-test-id]=\\\"'coreGridList.listItemStatusDraft' | fdTranslate\\\"\\n fdCompact\\n (click)=\\\"_clickOnDraft($event)\\\"\\n ></button>\\n }\\n }\\n </div>\\n }\\n</ng-template>\\n\", styles: [\".fd-grid-list .fd-dnd-item.fd-dnd-on-drag{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:-o-grabbing;cursor:-ms-grabbing;cursor:grabbing;background-color:transparent}.fd-grid-list .fd-dnd-item .fd-grid-list__item{overflow:visible}.fd-grid-list__item .drop-area__line--vertical{height:100%}.fd-grid-list__item .drop-area__line--vertical.before{left:-.55rem}.fd-grid-list__item .drop-area__line--vertical.after{right:-.55rem}.fd-grid-list__item .fd-checkbox__label{-webkit-user-select:none;user-select:none}\\n\"], dependencies: [{ kind: \"directive\", type: NgTemplateOutlet, selector: \"[ngTemplateOutlet]\", inputs: [\"ngTemplateOutletContext\", \"ngTemplateOutlet\", \"ngTemplateOutletInjector\"] }, { kind: \"component\", type: GridListTitleBarSpacerComponent, selector: \"fd-grid-list-title-bar-spacer\" }, { kind: \"component\", type: ButtonComponent, selector: \"button[fd-button], a[fd-button], span[fd-button]\", inputs: [\"class\", \"id\"], exportAs: [\"fd-button\"] }, { kind: \"component\", type: IconComponent, selector: \"fd-icon\", inputs: [\"glyph\", \"font\", \"color\", \"background\", \"class\", \"ariaLabel\", \"ariaHidden\"], outputs: [\"ariaHiddenChange\"] }, { kind: \"ngmodule\", type: FormsModule }, { kind: \"directive\", type: i4.DefaultValueAccessor, selector: \"input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]\" }, { kind: \"directive\", type: i4.CheckboxControlValueAccessor, selector: \"input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]\" }, { kind: \"directive\", type: i4.RadioControlValueAccessor, selector: \"input[type=radio][formControlName],input[type=radio][formControl],input[type=radio][ngModel]\", inputs: [\"name\", \"formControlName\", \"value\"] }, { kind: \"directive\", type: i4.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { kind: \"directive\", type: i4.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { kind: \"component\", type: ObjectStatusComponent, selector: \"[fd-object-status]\", inputs: [\"class\", \"status\", \"glyph\", \"glyphFont\", \"label\", \"glyphAriaLabel\", \"indicationColor\", \"clickable\", \"inverted\", \"large\", \"secondaryIndication\", \"textTemplate\"] }, { kind: \"ngmodule\", type: ContentDensityModule }, { kind: \"directive\", type: i2.ContentDensityDirective, selector: \"[fdContentDensity]:not([fdCompact]):not([fdCondensed]):not([fdCozy]), [fdCompact]:not([fdContentDensity]):not([fdCondensed]):not([fdCozy]), [fdCondensed]:not([fdContentDensity]):not([fdCompact]):not([fdCozy]), [fdCozy]:not([fdContentDensity]):not([fdCompact]):not([fdCondensed])\", inputs: [\"fdContentDensity\", \"fdCompact\", \"fdCondensed\", \"fdCozy\"], exportAs: [\"fdContentDensity\"] }, { kind: \"pipe\", type: FdTranslatePipe, name: \"fdTranslate\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListItemComponent, decorators: [{\n type: Component,\n args: [{ selector: 'fd-grid-list-item', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [\n NgTemplateOutlet,\n GridListTitleBarSpacerComponent,\n ButtonComponent,\n IconComponent,\n FormsModule,\n ObjectStatusComponent,\n FdTranslatePipe,\n ContentDensityModule\n ], providers: [contentDensityObserverProviders()], template: \"<div\\n #gridListItem\\n [id]=\\\"id\\\"\\n [tabindex]=\\\"tabIndex()\\\"\\n class=\\\"fd-grid-list__item\\\"\\n role=\\\"option\\\"\\n [class.is-navigated]=\\\"isNavigated\\\"\\n [class.is-selected]=\\\"!!_selectedItem\\\"\\n [class.fd-grid-list__item--link]=\\\"\\n _isActive && (type === 'active' || type === 'detailsAndActive' || type === 'navigation')\\n \\\"\\n [class.fd-grid-list__item--unread]=\\\"state === 'unread'\\\"\\n [class.fd-grid-list__item--locked]=\\\"state === 'locked'\\\"\\n [class.fd-grid-list__item--draft]=\\\"state === 'draft'\\\"\\n [class.fd-grid-list__item--error]=\\\"state === 'error'\\\"\\n [class.fd-grid-list__item--height-auto]=\\\"autoHeight\\\"\\n (keydown)=\\\"_onKeyDown($event)\\\"\\n (click)=\\\"selectionMode === 'singleSelect' && _singleSelect($event); _onClick($event)\\\"\\n [attr.aria-label]=\\\"ariaLabel\\\"\\n [attr.aria-labelledby]=\\\"ariaLabelledBy\\\"\\n (mouseover)=\\\"_setActive($event, false)\\\"\\n (mouseout)=\\\"_setActive($event, true)\\\"\\n [attr.aria-selected]=\\\"selectionMode === 'none' ? null : !!_selectedItem\\\"\\n>\\n @if (status) {\\n <span\\n class=\\\"fd-grid-list__highlight\\\"\\n [class.fd-grid-list__highlight--positive]=\\\"status === 'success'\\\"\\n [class.fd-grid-list__highlight--critical]=\\\"status === 'warning'\\\"\\n [class.fd-grid-list__highlight--negative]=\\\"status === 'error'\\\"\\n [class.fd-grid-list__highlight--neutral]=\\\"status === 'neutral'\\\"\\n [attr.aria-label]=\\\"'coreGridList.listItemStatusAriaLabel' | fdTranslate: { status: status }\\\"\\n ></span>\\n }\\n @if (selectionMode === 'singleSelect') {\\n <ng-template [ngTemplateOutlet]=\\\"radio\\\"></ng-template>\\n }\\n @if (\\n counter ||\\n itemToolbarComponent?.contentTemplateRef ||\\n (type && type !== 'inactive' && type !== 'active') ||\\n (selectionMode !== 'none' && selectionMode !== 'singleSelect')\\n ) {\\n <div class=\\\"fd-toolbar fd-grid-list__item-toolbar\\\">\\n @if (selectionMode === 'singleSelectLeft') {\\n <ng-template [ngTemplateOutlet]=\\\"radio\\\"></ng-template>\\n }\\n @if (selectionMode === 'multiSelect') {\\n <ng-template [ngTemplateOutlet]=\\\"checkbox\\\"></ng-template>\\n }\\n @if (itemToolbarComponent?.contentTemplateRef) {\\n <div class=\\\"fd-toolbar--extra-content\\\">\\n <ng-template [ngTemplateOutlet]=\\\"itemToolbarComponent!.contentTemplateRef\\\"></ng-template>\\n </div>\\n }\\n <fd-grid-list-title-bar-spacer></fd-grid-list-title-bar-spacer>\\n @if (counter) {\\n <span\\n class=\\\"fd-grid-list__item-counter\\\"\\n [attr.aria-label]=\\\"'coreGridList.listItemCounterAriaLabel' | fdTranslate: { count: counter }\\\"\\n >{{ counter }}</span\\n >\\n }\\n @if (type === 'detail' || type === 'detailsAndActive') {\\n <button\\n fd-button\\n fdType=\\\"transparent\\\"\\n glyph=\\\"edit\\\"\\n class=\\\"fd-grid-list__action-button\\\"\\n [attr.aria-label]=\\\"'coreGridList.listItemButtonDetailsTitle' | fdTranslate\\\"\\n [title]=\\\"'coreGridList.listItemButtonDetailsTitle' | fdTranslate\\\"\\n fdCompact\\n (click)=\\\"_onDetail($event)\\\"\\n ></button>\\n }\\n @if (selectionMode === 'delete') {\\n <button\\n fd-button\\n fdType=\\\"transparent\\\"\\n glyph=\\\"decline\\\"\\n class=\\\"fd-grid-list__action-button\\\"\\n [attr.aria-label]=\\\"'coreGridList.listItemButtonDeleteTitle' | fdTranslate\\\"\\n [title]=\\\"'coreGridList.listItemButtonDeleteTitle' | fdTranslate\\\"\\n title=\\\"Delete\\\"\\n fdCompact\\n (click)=\\\"_onDelete($event)\\\"\\n ></button>\\n }\\n @if (type === 'navigation') {\\n <span class=\\\"fd-grid-list__item-navigation-indicator\\\">\\n <fd-icon glyph=\\\"navigation-right-arrow\\\"></fd-icon>\\n </span>\\n }\\n @if (selectionMode === 'singleSelectRight') {\\n <ng-template [ngTemplateOutlet]=\\\"radio\\\"></ng-template>\\n }\\n </div>\\n }\\n <div class=\\\"fd-grid-list__item-body\\\" [class.fd-grid-list__item-body--no-padding]=\\\"noPadding\\\">\\n <ng-content select=\\\"[fd-grid-list-item-image]\\\"></ng-content>\\n @if (title || description) {\\n <div class=\\\"fd-grid-list__item-header\\\">\\n @if (title) {\\n <div\\n role=\\\"heading\\\"\\n [attr.aria-level]=\\\"titleLevel\\\"\\n class=\\\"fd-title fd-title--h4 fd-grid-list__item-title\\\"\\n >\\n {{ title }}\\n </div>\\n }\\n @if (description) {\\n <span class=\\\"fd-grid-list__item-subtitle\\\">{{ description }}</span>\\n }\\n </div>\\n }\\n @if (body?.templateRef) {\\n <div class=\\\"fd-grid-list__item-content\\\">\\n <ng-template [ngTemplateOutlet]=\\\"body!.templateRef\\\"></ng-template>\\n </div>\\n }\\n @if (state || footerBarComponent?.contentTemplateRef) {\\n <ng-template [ngTemplateOutlet]=\\\"itemFooter\\\"></ng-template>\\n }\\n </div>\\n</div>\\n<ng-template #radio>\\n <input\\n [attr.tabindex]=\\\"selectionMode === 'singleSelect' ? -1 : 0\\\"\\n type=\\\"radio\\\"\\n class=\\\"fd-radio fd-grid-list__radio-input\\\"\\n [style.display]=\\\"selectionMode === 'singleSelect' ? 'none' : ''\\\"\\n [id]=\\\"id + '-radio'\\\"\\n [name]=\\\"'fd-grid-list-item-toolbar-' + selectionMode\\\"\\n [attr.aria-label]=\\\"ariaLabel\\\"\\n [attr.aria-labelledby]=\\\"ariaLabelledBy\\\"\\n [value]=\\\"value\\\"\\n [ngModel]=\\\"_selectedItem\\\"\\n (ngModelChange)=\\\"$event && _selectionItem($event)\\\"\\n />\\n <label\\n class=\\\"fd-radio__label fd-grid-list__radio-label\\\"\\n [for]=\\\"id + '-radio'\\\"\\n tabindex=\\\"-1\\\"\\n (mouseover)=\\\"_setActive($event, false)\\\"\\n (mouseout)=\\\"_setActive($event, true)\\\"\\n ></label>\\n</ng-template>\\n<ng-template #checkbox>\\n <input\\n type=\\\"checkbox\\\"\\n class=\\\"fd-checkbox fd-grid-list__checkbox-input\\\"\\n [id]=\\\"id + '-checkbox'\\\"\\n [attr.aria-label]=\\\"ariaLabel\\\"\\n [attr.aria-labelledby]=\\\"ariaLabelledBy\\\"\\n [ngModel]=\\\"_selectedItem\\\"\\n (click)=\\\"_checkboxClick($event)\\\"\\n (keydown.escape)=\\\"_checkboxEscape()\\\"\\n (keydown.shift)=\\\"_checkboxEscape()\\\"\\n />\\n <label class=\\\"fd-checkbox__label fd-grid-list__checkbox-label\\\" [for]=\\\"id + '-checkbox'\\\" tabindex=\\\"-1\\\">\\n <span class=\\\"fd-checkbox__checkmark\\\" aria-hidden=\\\"true\\\"></span>\\n </label>\\n</ng-template>\\n<ng-template #itemFooter>\\n @if (footerBarComponent || state) {\\n <div class=\\\"fd-grid-list__item-body-actions\\\">\\n @if (footerBarComponent?.contentTemplateRef) {\\n <ng-template [ngTemplateOutlet]=\\\"footerBarComponent!.contentTemplateRef\\\"></ng-template>\\n }\\n @if (!footerBarComponent?.contentTemplateRef && state) {\\n @if (state === 'error') {\\n <span\\n fd-object-status\\n status=\\\"negative\\\"\\n [label]=\\\"'coreGridList.listItemStatusContainsErrors' | fdTranslate\\\"\\n [attr.aria-label]=\\\"'coreGridList.listItemStatusContainsErrors' | fdTranslate\\\"\\n ></span>\\n }\\n @if (state === 'locked') {\\n <button\\n class=\\\"fd-grid-list__action-button\\\"\\n fd-button\\n fdType=\\\"transparent\\\"\\n glyph=\\\"private\\\"\\n [label]=\\\"'coreGridList.listItemStatusLocked' | fdTranslate\\\"\\n [attr.aria-label]=\\\"'coreGridList.listItemStatusLocked' | fdTranslate\\\"\\n [attr.data-test-id]=\\\"'coreGridList.listItemStatusLocked' | fdTranslate\\\"\\n fdCompact\\n (click)=\\\"_clickOnLocked($event)\\\"\\n ></button>\\n }\\n @if (state === 'draft') {\\n <button\\n class=\\\"fd-grid-list__action-button\\\"\\n fd-button\\n fdType=\\\"transparent\\\"\\n [attr.aria-label]=\\\"'coreGridList.listItemStatusDraft' | fdTranslate\\\"\\n [label]=\\\"'coreGridList.listItemStatusDraft' | fdTranslate\\\"\\n [attr.data-test-id]=\\\"'coreGridList.listItemStatusDraft' | fdTranslate\\\"\\n fdCompact\\n (click)=\\\"_clickOnDraft($event)\\\"\\n ></button>\\n }\\n }\\n </div>\\n }\\n</ng-template>\\n\", styles: [\".fd-grid-list .fd-dnd-item.fd-dnd-on-drag{cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:-o-grabbing;cursor:-ms-grabbing;cursor:grabbing;background-color:transparent}.fd-grid-list .fd-dnd-item .fd-grid-list__item{overflow:visible}.fd-grid-list__item .drop-area__line--vertical{height:100%}.fd-grid-list__item .drop-area__line--vertical.before{left:-.55rem}.fd-grid-list__item .drop-area__line--vertical.after{right:-.55rem}.fd-grid-list__item .fd-checkbox__label{-webkit-user-select:none;user-select:none}\\n\"] }]\n }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i1.GridList }, { type: i2.ContentDensityObserver }, { type: i3.TabbableElementService }], propDecorators: { id: [{\n type: Input\n }], width: [{\n type: Input\n }, {\n type: HostBinding,\n args: ['style.max-width']\n }, {\n type: HostBinding,\n args: ['style.min-width']\n }], layoutItemPattern: [{\n type: Input\n }], status: [{\n type: Input\n }], counter: [{\n type: Input\n }], value: [{\n type: Input\n }], disableToolbarClick: [{\n type: Input\n }], selected: [{\n type: Input,\n args: [{ transform: booleanAttribute }]\n }], noPadding: [{\n type: Input\n }], ariaLabel: [{\n type: Input\n }], ariaLabelledBy: [{\n type: Input\n }], type: [{\n type: Input\n }], state: [{\n type: Input\n }], isNavigated: [{\n type: Input\n }], title: [{\n type: Input\n }], titleLevel: [{\n type: Input\n }], description: [{\n type: Input\n }], autoHeight: [{\n type: Input\n }], press: [{\n type: Output\n }], detail: [{\n type: Output\n }], delete: [{\n type: Output\n }], navigate: [{\n type: Output\n }], cardClick: [{\n type: Output\n }], draft: [{\n type: Output\n }], locked: [{\n type: Output\n }], _gridListItem: [{\n type: ViewChild,\n args: ['gridListItem']\n }], footerBarComponent: [{\n type: ContentChild,\n args: [GridListItemFooterBarComponent]\n }], itemToolbarComponent: [{\n type: ContentChild,\n args: [GridListItemToolbarComponent]\n }], body: [{\n type: ContentChild,\n args: [GridListItemBodyDirective]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1saXN0LWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL2dyaWQtbGlzdC9jb21wb25lbnRzL2dyaWQtbGlzdC1pdGVtL2dyaWQtbGlzdC1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9ncmlkLWxpc3QvY29tcG9uZW50cy9ncmlkLWxpc3QtaXRlbS9ncmlkLWxpc3QtaXRlbS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNoRixPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsWUFBWSxFQUNaLFVBQVUsRUFDVixZQUFZLEVBQ1osV0FBVyxFQUNYLEtBQUssRUFFTCxNQUFNLEVBQ04sU0FBUyxFQUNULFNBQVMsRUFDVCxpQkFBaUIsRUFDakIsZ0JBQWdCLEVBQ2hCLE1BQU0sRUFDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRXBDLE9BQU8sRUFBRSxPQUFPLEVBQVksc0JBQXNCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUV2RixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQy9ELE9BQU8sRUFDSCxvQkFBb0IsRUFDcEIsc0JBQXNCLEVBQ3RCLCtCQUErQixFQUNsQyxNQUFNLHVDQUF1QyxDQUFDO0FBRS9DLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFB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REosS0FBSztnQkFTTixVQUFVO3NCQURULEtBQUs7Z0JBS04sV0FBVztzQkFEVixLQUFLO2dCQUtOLFVBQVU7c0JBRFQsS0FBSztnQkFRTixLQUFLO3NCQURKLE1BQU07Z0JBUVAsTUFBTTtzQkFETCxNQUFNO2dCQVFQLE1BQU07c0JBREwsTUFBTTtnQkFRUCxRQUFRO3NCQURQLE1BQU07Z0JBT1AsU0FBUztzQkFEUixNQUFNO2dCQVFQLEtBQUs7c0JBREosTUFBTTtnQkFRUCxNQUFNO3NCQURMLE1BQU07Z0JBS1AsYUFBYTtzQkFEWixTQUFTO3VCQUFDLGNBQWM7Z0JBS3pCLGtCQUFrQjtzQkFEakIsWUFBWTt1QkFBQyw4QkFBOEI7Z0JBSTVDLG9CQUFvQjtzQkFEbkIsWUFBWTt1QkFBQyw0QkFBNEI7Z0JBSzFDLElBQUk7c0JBREgsWUFBWTt1QkFBQyx5QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFTlRFUiwgRVNDQVBFLCBGMiwgRjcsIE1BQ19FTlRFUiwgU1BBQ0UgfSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnO1xuaW1wb3J0IHtcbiAgICBBZnRlclZpZXdJbml0LFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGQsXG4gICAgRWxlbWVudFJlZixcbiAgICBFdmVudEVtaXR0ZXIsXG4gICAgSG9zdEJpbmRpbmcsXG4gICAgSW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE91dHB1dCxcbiAgICBSZW5kZXJlcjIsXG4gICAgVmlld0NoaWxkLFxuICAgIFZpZXdFbmNhcHN1bGF0aW9uLFxuICAgIGJvb2xlYW5BdHRyaWJ1dGUsXG4gICAgc2lnbmFsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEtleVV0aWwsIE51bGxhYmxlLCBUYWJiYWJsZUVsZW1lbnRTZXJ2aWNlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuXG5pbXBvcnQgeyBOZ1RlbXBsYXRlT3V0bGV0IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL2J1dHRvbic7XG5pbXBvcnQge1xuICAgIENvbnRlbnREZW5zaXR5TW9kdWxlLFxuICAgIENvbnRlbnREZW5zaXR5T2JzZXJ2ZXIsXG4gICAgY29udGVudERlbnNpdHlPYnNlcnZlclByb3ZpZGVyc1xufSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvY29udGVudC1kZW5zaXR5JztcblxuaW1wb3J0IHsgSWNvbkNvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9pY29uJztcbmltcG9ydCB7IE9iamVjdFN0YXR1c0NvbXBvbmVudCB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9vYmplY3Qtc3RhdHVzJztcbmltcG9ydCB7IEZkVHJhbnNsYXRlUGlwZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvaTE4bic7XG5pbXBvcnQgeyBHcmlkTGlzdEl0ZW1Cb2R5RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9ncmlkLWxpc3QtaXRlbS1ib2R5LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBwYXJzZUxheW91dFBhdHRlcm4gfSBmcm9tICcuLi8uLi9oZWxwZXJzL3BhcnNlLWxheW91dC1wYXR0ZXJuJztcbmltcG9ydCB7XG4gICAgR3JpZExpc3RTZWxlY3Rpb25BY3Rpb25zLFxuICAgIEdyaWRMaXN0U2VsZWN0aW9uTW9kZSxcbiAgICBHcmlkTGlzdFNlbGVjdGlvbk1vZGVFbnVtXG59IGZyb20gJy4uLy4uL21vZGVscy9ncmlkLWxpc3Qtc2VsZWN0aW9uLm1vZGVscyc7XG5pbXBvcnQgeyBHcmlkTGlzdEl0ZW1Gb290ZXJCYXJDb21wb25lbnQgfSBmcm9tICcuLi9ncmlkLWxpc3QtaXRlbS1mb290ZXItYmFyL2dyaWQtbGlzdC1pdGVtLWZvb3Rlci1iYXIuY29tcG9uZW50JztcbmltcG9ydCB7IEdyaWRMaXN0SXRlbVRvb2xiYXJDb21wb25lbnQgfSBmcm9tICcuLi9ncmlkLWxpc3QtaXRlbS10b29sYmFyL2dyaWQtbGlzdC1pdGVtLXRvb2xiYXIuY29tcG9uZW50JztcbmltcG9ydCB7IEdyaWRMaXN0VGl0bGVCYXJTcGFjZXJDb21wb25lbnQgfSBmcm9tICcuLi9ncmlkLWxpc3QtdGl0bGUtYmFyLXNwYWNlci9ncmlkLWxpc3QtdGl0bGUtYmFyLXNwYWNlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgR3JpZExpc3QgfSBmcm9tICcuLi9ncmlkLWxpc3QvZ3JpZC1saXN0LWJhc2UuY29tcG9uZW50JztcblxubGV0IGdyaWRMaXN0SXRlbVVuaXF1ZUlkID0gMDtcblxuZXhwb3J0IGludGVyZmFjZSBHcmlkTGlzdEl0ZW1PdXRwdXRFdmVudDxUPiB7XG4gICAgaW5kZXg/OiBudW1iZXI7XG4gICAgdmFsdWU/OiBUO1xufVxuXG5leHBvcnQgdHlwZSBHcmlkTGlzdEl0ZW1UeXBlID0gJ2luYWN0aXZlJyB8ICdhY3RpdmUnIHwgJ2RldGFpbCcgfCAnZGV0YWlsc0FuZEFjdGl2ZScgfCAnbmF2aWdhdGlvbic7XG5leHBvcnQgdHlwZSBHcmlkTGlzdEl0ZW1TdGF0ZSA9ICd1bnJlYWQnIHwgJ2xvY2tlZCcgfCAnZXJyb3InIHwgJ2RyYWZ0JztcbmV4cG9ydCB0eXBlIEdyaWRMaXN0SXRlbVN0YXR1cyA9ICdzdWNjZXNzJyB8ICd3YXJuaW5nJyB8ICdlcnJvcicgfCAnbmV1dHJhbCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnZmQtZ3JpZC1saXN0LWl0ZW0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9ncmlkLWxpc3QtaXRlbS5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmw6ICcuL2dyaWQtbGlzdC1pdGVtLmNvbXBvbmVudC5zY3NzJyxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgICAgICAgR3JpZExpc3RUaXRsZUJhclNwYWNlckNvbXBvbmVudCxcbiAgICAgICAgQnV0dG9uQ29tcG9uZW50LFxuICAgICAgICBJY29uQ29tcG9uZW50LFxuICAgICAgICBGb3Jtc01vZHVsZSxcbiAgICAgICAgT2JqZWN0U3RhdHVzQ29tcG9uZW50LFxuICAgICAgICBGZFRyYW5zbGF0ZVBpcGUsXG4gICAgICAgIENvbnRlbnREZW5zaXR5TW9kdWxlXG4gICAgXSxcbiAgICBwcm92aWRlcnM6IFtjb250ZW50RGVuc2l0eU9ic2VydmVyUHJvdmlkZXJzKCldXG59KVxuZXhwb3J0IGNsYXNzIEdyaWRMaXN0SXRlbUNvbXBvbmVudDxUPiBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIE9uRGVzdHJveSB7XG4gICAgLyoqIGlkIGZvciB0aGUgRWxlbWVudCAqL1xuICAgIEBJbnB1dCgpXG4gICAgaWQgPSBgZmQtZ3JpZC1saXN0LWl0ZW0tJHtncmlkTGlzdEl0ZW1VbmlxdWVJZCsrfWA7XG5cbiAgICAvKiogd2lkdGggb2YgdGhlIGVsZW1lbnQgKi9cbiAgICBASW5wdXQoKVxuICAgIEBIb3N0QmluZGluZygnc3R5bGUubWF4LXdpZHRoJylcbiAgICBASG9zdEJpbmRpbmcoJ3N0eWxlLm1pbi13aWR0aCcpXG4gICAgd2lkdGg6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIHNwZWNpZnkgdGhlIGNlbGwgbGF5b3V0IGluIHRoZSBmb3JtYXQgYFhMbi1Mbi1Nbi1TbmAgd2hlcmUgbiBpc1xuICAgICAqIHRoZSBudW1iZXIgb2Ygb2NjdXBpZWQgY29sdW1ucyBhbmQgbiBjYW4gYmUgZGlmZmVyZW50IGZvciBlYWNoIHNpemUuXG4gICAgICovXG4gICAgQElucHV0KClcbiAgICBzZXQgbGF5b3V0SXRlbVBhdHRlcm4odmFsdWU6IE51bGxhYmxlPHN0cmluZz4pIHtcbiAgICAgICAgdGhpcy5ncmlkTGF5b3V0Q2xhc3NlcyA9IHZhbHVlID8gcGFyc2VMYXlvdXRQYXR0ZXJuKHZhbHVlLCBmYWxzZSkgOiBbXTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBEZWZpbmVzIHRoZSBzdGF0dXMgb2YgR3JpZCBMaXN0IEl0ZW1cbiAgICAgKiAoU3RhdHVzZXM6IHN1Y2Nlc3MgfCB3YXJuaW5nIHwgZXJyb3IgfCBuZXV0cmFsKVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc3RhdHVzPzogR3JpZExpc3RJdGVtU3RhdHVzO1xuXG4gICAgLyoqIFNldHMgbnVtYmVyIG9mIHN1YiBpdGVtcyAqL1xuICAgIEBJbnB1dCgpXG4gICAgY291bnRlcjogTnVsbGFibGU8bnVtYmVyPjtcblxuICAgIC8qKlxuICAgICAqIFZhbHVlIGZpZWxkIHN0b3JlcyBpbmZvcm1hdGlvbiBmb3IgcmFkaW8gYnV0dG9uIHZhbHVlLCBjaGVja2JveCBidXR0b24gYW5kIGZvciBHcmlkTGlzdFNlbGVjdGlvbkV2ZW50XG4gICAgICogVGhlIGZpZWxkIGlzIG1hbmRhdG9yeSBmb3IgbW9kZXMgbGlrZSBzaW5nbGVTZWxlY3QsIHNpbmdsZVNlbGVjdExlZnQsIHNpbmdsZVNlbGVjdFJpZ2h0IG9yIG11bHRpU2VsZWN0XG4gICAgICovXG4gICAgQElucHV0KClcbiAgICB2YWx1ZT86IFQ7XG5cbiAgICAvKiogV2hldGhlciBjbGljayBvbiB0aGUgY3VzdG9tIHRvb2xiYXIgaXMgZGlzYWJsZWQgKi9cbiAgICBASW5wdXQoKVxuICAgIGRpc2FibGVUb29sYmFyQ2xpY2sgPSBmYWxzZTtcblxuICAgIC8qKiBBbGxvd3MgYW4gaXRlbSB0byBiZSBzZWxlY3RlZCBwcm9ncmFtbWF0aWNhbGx5ICovXG4gICAgQElucHV0KHsgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pXG4gICAgc2VsZWN0ZWQgPSBmYWxzZTtcblxuICAgIC8qKiBSZW1vdmUgdGhlIHBhZGRpbmcgZnJvbSB0aGUgSXRlbSBib2R5ICovXG4gICAgQElucHV0KClcbiAgICBub1BhZGRpbmcgPSBmYWxzZTtcblxuICAgIC8qKiBTZXRzIHRoZSBgYXJpYS1sYWJlbGAgYXR0cmlidXRlIHRvIHRoZSBlbGVtZW50LiAqL1xuICAgIEBJbnB1dCgpXG4gICAgYXJpYUxhYmVsOiBOdWxsYWJsZTxzdHJpbmc+O1xuXG4gICAgLyoqIFNldHMgdGhlIGBhcmlhLWxhYmVsYCBhdHRyaWJ1dGUgdG8gdGhlIGVsZW1lbnQuICovXG4gICAgQElucHV0KClcbiAgICBhcmlhTGFiZWxsZWRCeTogTnVsbGFibGU8c3RyaW5nPjtcblxuICAgIC8qKlxuICAgICAqIERlZmluZXMgdGhlIHR5cGUgb2YgR3JpZCBMaXN0IEl0ZW1cbiAgICAgKiBUeXBlczpcbiAgICAgKiAtIGFjdGl2ZTogaW5kaWNhdGVzIHRoYXQgdGhlIGl0ZW0gaXMgY2xpY2thYmxlIHZpYSBhY3RpdmUgZmVlZGJhY2sgd2hlbiBpdGVtIGlzIHByZXNzZWRcbiAgICAgKiAtIGRldGFpbDogZW5hYmxlcyBkZXRhaWwgYnV0dG9uIG9mIHRoZSBsaXN0IGl0ZW0gdGhhdCBmaXJlcyBldmVudC5cbiAgICAgKiAtIGRldGFpbHNBbmRBY3RpdmU6IGVuYWJsZXMgXCJkZXRhaWxcIiBhbmQgXCJhY3RpdmVcIiBlbnVtZXJhdGlvbnMgdG9nZXRoZXJcbiAgICAgKiAtIGluYWN0aXZlOiBpbmRpY2F0ZXMgdGhlIGxpc3QgaXRlbSBkb2VzIG5vdCBoYXZlIGFueSBhY3RpdmUgZmVlZGJhY2sgd2hlbiBpdGVtIGlzIHByZXNzZWRcbiAgICAgKiAtIG5hdmlnYXRpb246IGluZGljYXRlcyB0aGUgbGlzdCBpdGVtIGlzIG5hdmlnYWJsZSB0byBzaG93IGV4dHJhIGluZm9ybWF0aW9uIGFib3V0IHRoZSBpdGVtXG4gICAgICogRGVmYXVsdDogaW5hY3RpdmVcbiAgICAgKi9cbiAgICBASW5wdXQoKVxuICAgIHNldCB0eXBlKHZhbHVlOiBOdWxsYWJsZTxHcmlkTGlzdEl0ZW1UeXBlPikge1xuICAgICAgICB0aGlzLl90eXBlID0gdmFsdWUgPz8gJ2luYWN0aXZlJztcbiAgICB9XG5cbiAgICBnZXQgdHlwZSgpOiBHcmlkTGlzdEl0ZW1UeXBlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX3R5cGU7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogU2V0cyB0aGUgc3RhdGUgb2YgR3JpZCBMaXN0IEl0ZW1cbiAgICAgKiAoU3RhdGVzOiB1bnJlYWQgfCBlcnJvciB8IGxvY2tlZCB8IGRyYWZ0KVxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc3RhdGU/OiBHcmlkTGlzdEl0ZW1TdGF0ZTtcblxuICAgIC8qKlxuICAgICAqIFRoZSBuYXZpZ2F0ZWQgc3RhdGUgb2YgdGhlIGxpc3QgaXRlbS5cbiAgICAgKiBJZiBzZXQgdG8gdHJ1ZSwgYSBuYXZpZ2F0aW9uIGluZGljYXRvciBpcyBkaXNwbGF5ZWQgYXQgdGhlIGVuZCBvZiB0aGUgbGlzdCBpdGVtLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgaXNOYXZpZ2F0ZWQgPSBmYWxzZTtcblxuICAgIC8qKiBUaXRsZSBvZiB0aGUgaXRlbSAqL1xuICAgIEBJbnB1dCgpXG4gICAgdGl0bGU6IHN0cmluZztcblxuICAgIC8qKlxuICAgICAqIEFyaWEtbGV2ZWwgb2YgdGhlIHRpdGxlXG4gICAgICogQXZhaWxhYmxlIG9wdGlvbnM6IDEsIDIsIDMsIDQsIDUsIDZcbiAgICAgKiBEZWZhdWx0OiA0XG4gICAgICovXG4gICAgQElucHV0KClcbiAgICB0aXRsZUxldmVsOiAxIHwgMiB8IDMgfCA0IHwgNSB8IDYgPSA0O1xuXG4gICAgLyoqIERlc2NyaXB0aW9uIG9mIHRoZSBpdGVtICovXG4gICAgQElucHV0KClcbiAgICBkZXNjcmlwdGlvbjogc3RyaW5nO1xuXG4gICAgLyoqIFdoZW4gc2V0IHRvIHRydWUgdGhlIGdyaWQgbGlzdCBpdGVtJ3MgaGVpZ2h0IHdpbGwgYmUgc2V0IHRvIGF1dG8gKi9cbiAgICBASW5wdXQoKVxuICAgIGF1dG9IZWlnaHQgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEV2ZW50IGlzIHRocm93biwgd2hlbiB0eXBlIGlzIGFjdGl2ZVxuICAgICAqIGFuZCBpdGVtIGlzIHByZXNzZWRcbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICBwcmVzcyA9IG5ldyBFdmVudEVtaXR0ZXI8R3JpZExpc3RJdGVtT3V0cHV0RXZlbnQ8VD4+KCk7XG5cbiAgICAvKipcbiAgICAgKiBFdmVudCBpcyB0aHJvd24sIHdoZW4gdHlwZSBpcyBkZXRhaWwgb3IgZGV0YWlsc0FuZEFjdGl2ZVxuICAgICAqIGFuZCBEZXRhaWwgYnV0dG9uIHdhcyBwcmVzc2VkXG4gICAgICovXG4gICAgQE91dHB1dCgpXG4gICAgZGV0YWlsID0gbmV3IEV2ZW50RW1pdHRlcjxHcmlkTGlzdEl0ZW1PdXRwdXRFdmVudDxUPj4oKTtcblxuICAgIC8qKlxuICAgICAqIEV2ZW50IGlzIHRocm93biwgd2hlbiBtb2RlIGRlbGV0ZVxuICAgICAqIGFuZCBEZWxldGUgYnV0dG9uIHdhcyBwcmVzc2VkXG4gICAgICovXG4gICAgQE91dHB1dCgpXG4gICAgZGVsZXRlID0gbmV3IEV2ZW50RW1pdHRlcjxHcmlkTGlzdEl0ZW1PdXRwdXRFdmVudDxUPj4oKTtcblxuICAgIC8qKlxuICAgICAqIEV2ZW50IGlzIHRocm93biwgd2hlbiB0eXBlIGlzIG5hdmlnYXRpb25cbiAgICAgKiBhbmQgTmF2aWdhdGUgYnV0dG9uIHdhcyBwcmVzc2VkXG4gICAgICovXG4gICAgQE91dHB1dCgpXG4gICAgbmF2aWdhdGUgPSBuZXcgRXZlbnRFbWl0dGVyPEdyaWRMaXN0SXRlbU91dHB1dEV2ZW50PFQ+PigpO1xuXG4gICAgLyoqXG4gICAgICogRXZlbnQgaXMgdGhyb3duIG9uIGdyaWQgbGlzdCBpdGVtIGNsaWNrLlxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGNhcmRDbGljayA9IG5ldyBFdmVudEVtaXR0ZXI8R3JpZExpc3RJdGVtT3V0cHV0RXZlbnQ8VD4+KCk7XG5cbiAgICAvKipcbiAgICAgKiBFdmVudCBpcyB0aHJvd24sIHdoZW4gc3RhdGUgaXMgZXJyb3IsIG5vdCB1c2VkIEdyaWRMaXN0SXRlbUZvb3RlckJhckNvbXBvbmVudFxuICAgICAqIGFuZCBEcmFmdCBidXR0b24gd2FzIHByZXNzZWRcbiAgICAgKi9cbiAgICBAT3V0cHV0KClcbiAgICBkcmFmdCA9IG5ldyBFdmVudEVtaXR0ZXI8R3JpZExpc3RJdGVtT3V0cHV0RXZlbnQ8VD4+KCk7XG5cbiAgICAvKipcbiAgICAgKiBFdmVudCBpcyB0aHJvd24sIHdoZW4gc3RhdGUgaXMgbG9ja2VkLCBub3QgdXNlZCBHcmlkTGlzdEl0ZW1Gb290ZXJCYXJDb21wb25lbnRcbiAgICAgKiBhbmQgTG9ja2VkIGJ1dHRvbiB3YXMgcHJlc3NlZFxuICAgICAqL1xuICAgIEBPdXRwdXQoKVxuICAgIGxvY2tlZCA9IG5ldyBFdmVudEVtaXR0ZXI8R3JpZExpc3RJdGVtT3V0cHV0RXZlbnQ8VD4+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBWaWV3Q2hpbGQoJ2dyaWRMaXN0SXRlbScpXG4gICAgX2dyaWRMaXN0SXRlbTogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBDb250ZW50Q2hpbGQoR3JpZExpc3RJdGVtRm9vdGVyQmFyQ29tcG9uZW50KVxuICAgIGZvb3RlckJhckNvbXBvbmVudDogTnVsbGFibGU8R3JpZExpc3RJdGVtRm9vdGVyQmFyQ29tcG9uZW50PjtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBDb250ZW50Q2hpbGQoR3JpZExpc3RJdGVtVG9vbGJhckNvbXBvbmVudClcbiAgICBpdGVtVG9vbGJhckNvbXBvbmVudDogTnVsbGFibGU8R3JpZExpc3RJdGVtVG9vbGJhckNvbXBvbmVudD47XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIEBDb250ZW50Q2hpbGQoR3JpZExpc3RJdGVtQm9keURpcmVjdGl2ZSlcbiAgICBib2R5OiBOdWxsYWJsZTxHcmlkTGlzdEl0ZW1Cb2R5RGlyZWN0aXZlPjtcblxuICAgIC8qKiBAaGlkZGVuXG4gICAgICogVGhlIGFjdGl2ZSBzdGF0ZSBvZiB0aGUgbGlzdCBpdGVtLlxuICAgICAqIElmIHNldCB0byB0cnVlLCB0aGUgd2hvbGUgY2FyZCBoYXMgYWN0aXZlIHN0YXRlLiBCZWNvbWVzIGZhbHNlIG9ubHkgd2hlbiB0aGUgRWRpdCBidXR0b24gaXMgY2xpY2tlZC5cbiAgICAgKi9cbiAgICBfaXNBY3RpdmUgPSB0cnVlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBzZXQgZ3JpZExheW91dENsYXNzZXModmFsdWU6IHN0cmluZ1tdKSB7XG4gICAgICAgIHRoaXMuX3JlbW92ZUNsYXNzZXNOYW1lcyh0aGlzLl9ncmlkTGF5b3V0Q2xhc3Nlcyk7XG4gICAgICAgIHRoaXMuX2dyaWRMYXlvdXRDbGFzc2VzID0gdmFsdWU7XG4gICAgICAgIHRoaXMuX2FkZENsYXNzZXNOYW1lcyh0aGlzLl9ncmlkTGF5b3V0Q2xhc3Nlcyk7XG4gICAgfVxuXG4gICAgZ2V0IGdyaWRMYXlvdXRDbGFzc2VzKCk6IHN0cmluZ1tdIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuX2dyaWRMYXlvdXRDbGFzc2VzO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX3NlbGVjdGVkSXRlbT86IFQ7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHNldCBzZWxlY3Rpb25Nb2RlKG1vZGU6IEdyaWRMaXN0U2VsZWN0aW9uTW9kZSB8IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLl9zZWxlY3Rpb25Nb2RlID0gbW9kZTtcblxuICAgICAgICBpZiAobW9kZSAhPT0gR3JpZExpc3RTZWxlY3Rpb25Nb2RlRW51bS5ERUxFVEUgJiYgbW9kZSAhPT0gR3JpZExpc3RTZWxlY3Rpb25Nb2RlRW51bS5OT05FICYmICF0aGlzLnZhbHVlKSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0dyaWQgTGlzdCBJdGVtIG11c3QgaGF2ZSBbdmFsdWVdIGF0dHJpYnV0ZS4nKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLnNlbGVjdGVkICYmIHRoaXMudmFsdWUgJiYgdGhpcy5faW5kZXggIT0gbnVsbCkge1xuICAgICAgICAgICAgY29uc3QgYWN0aW9uID1cbiAgICAgICAgICAgICAgICB0aGlzLnNlbGVjdGlvbk1vZGUgIT09IEdyaWRMaXN0U2VsZWN0aW9uTW9kZUVudW0uTVVMVElfU0VMRUNUID8gbnVsbCA6IEdyaWRMaXN0U2VsZWN0aW9uQWN0aW9ucy5BREQ7XG5cbiAgICAgICAgICAgIHRoaXMuX2dyaWRMaXN0LnNldFNlbGVjdGVkSXRlbSh0aGlzLnZhbHVlLCB0aGlzLl9pbmRleCwgYWN0aW9uKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX2NkLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICBnZXQgc2VsZWN0aW9uTW9kZSgpOiBHcmlkTGlzdFNlbGVjdGlvbk1vZGUgfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gdGhpcy5fc2VsZWN0aW9uTW9kZTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9pbmRleD86IG51bWJlcjtcblxuICAgIC8qKiB0YWJJbmRleCBvZiB0aGUgZWxlbWVudCAqL1xuICAgIHRhYkluZGV4ID0gc2lnbmFsKC0xKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfdHlwZTogR3JpZExpc3RJdGVtVHlwZSA9ICdpbmFjdGl2ZSc7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3NlbGVjdGlvbk1vZGU/OiBHcmlkTGlzdFNlbGVjdGlvbk1vZGU7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2dyaWRMYXlvdXRDbGFzc2VzOiBzdHJpbmdbXSA9IFtdO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIHJlYWRvbmx5IHN1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfaW5uZXJFbGVtZW50Rm9jdXNlZCA9IHNpZ25hbDxib29sZWFuPihmYWxzZSk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9jZDogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgX2VsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgX3JlbmRlcjogUmVuZGVyZXIyLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9ncmlkTGlzdDogR3JpZExpc3Q8VD4sXG4gICAgICAgIHJlYWRvbmx5IF9jb250ZW50RGVuc2l0eU9ic2VydmVyOiBDb250ZW50RGVuc2l0eU9ic2VydmVyLFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF90YWJiYWJsZUVsZW1lbnRTZXJ2aWNlOiBUYWJiYWJsZUVsZW1lbnRTZXJ2aWNlXG4gICAgKSB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkSXRlbXNTdWIgPSB0aGlzLl9ncmlkTGlzdC5fc2VsZWN0ZWRJdGVtcyQuc3Vic2NyaWJlKChpdGVtcykgPT4ge1xuICAgICAgICAgICAgdGhpcy5fc2VsZWN0ZWRJdGVtID0gaXRlbXMuc2VsZWN0aW9uLmZpbmQoKGl0ZW0pID0+IGl0ZW0gPT09IHRoaXMudmFsdWUpO1xuICAgICAgICAgICAgdGhpcy5fY2QubWFya0ZvckNoZWNrKCk7XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQoc2VsZWN0ZWRJdGVtc1N1Yik7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2NkLmRldGVjdENoYW5nZXMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIC8qKiBGb2N1cyBncmlkIGxpc3QgaXRlbSBwcm9ncmFtbWF0aWNhbGx5ICovXG4gICAgZm9jdXMob3B0aW9ucz86IEZvY3VzT3B0aW9ucyk6IHZvaWQge1xuICAgICAgICB0aGlzLl9ncmlkTGlzdEl0ZW0/Lm5hdGl2ZUVsZW1lbnQuZm9jdXMob3B0aW9ucyk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBfc2V0QWN0aXZlKGV2ZW50OiBNb3VzZUV2ZW50LCBpc0FjdGl2ZTogYm9vbGVhbik6IHZvaWQge1xuICAgICAgICBpZiAodGhpcy5faXNFbGVtZW50Q2FuQmVDbGlja2VkKGV2ZW50KSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5faXNBY3RpdmUgPSBpc0FjdGl2ZTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9zaW5nbGVTZWxlY3QoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3ByZXZlbnREZWZhdWx0KGV2ZW50KTtcblxuICAgICAgICBpZiAodHlwZW9mIHRoaXMuX3NlbGVjdGVkSXRlbSAhPT0gJ3VuZGVmaW5lZCcgfHwgIXRoaXMudmFsdWUgfHwgdGhpcy5faW5kZXggPT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fZ3JpZExpc3Quc2V0U2VsZWN0ZWRJdGVtKHRoaXMudmFsdWUsIHRoaXMuX2luZGV4KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9jaGVja2JveENsaWNrKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGNoZWNrZWQgPSAoPEhUTUxJbnB1dEVsZW1lbnQ+ZXZlbnQudGFyZ2V0KS5jaGVja2VkO1xuICAgICAgICB0aGlzLl9zZWxlY3Rpb25JdGVtKGNoZWNrZWQsIGV2ZW50KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9jaGVja2JveEVzY2FwZSgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fZ3JpZExpc3RJdGVtLm5hdGl2ZUVsZW1lbnQuZm9jdXMoKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9zZWxlY3Rpb25JdGVtKHZhbHVlOiBib29sZWFuIHwgbnVtYmVyIHwgVCwgZXZlbnQ/OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy52YWx1ZSB8fCB0aGlzLl9pbmRleCA9PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgYWN0aW9uID1cbiAgICAgICAgICAgIHRoaXMuc2VsZWN0aW9uTW9kZSAhPT0gR3JpZExpc3RTZWxlY3Rpb25Nb2RlRW51bS5NVUxUSV9TRUxFQ1RcbiAgICAgICAgICAgICAgICA/IG51bGxcbiAgICAgICAgICAgICAgICA6IHZhbHVlIHx8IHZhbHVlID09PSAwXG4gICAgICAgICAgICAgICAgICA/IEdyaWRMaXN0U2VsZWN0aW9uQWN0aW9ucy5BRERcbiAgICAgICAgICAgICAgICAgIDogR3JpZExpc3RTZWxlY3Rpb25BY3Rpb25zLlJFTU9WRTtcblxuICAgICAgICB0aGlzLl9ncmlkTGlzdC5zZXRTZWxlY3RlZEl0ZW0odGhpcy52YWx1ZSwgdGhpcy5faW5kZXgsIGFjdGlvbiwgZXZlbnQpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX29uRGV0YWlsKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3ByZXZlbnREZWZhdWx0KGV2ZW50KTtcblxuICAgICAgICB0aGlzLmRldGFpbC5lbWl0KHRoaXMuX291dHB1dEV2ZW50VmFsdWUpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX29uTmF2aWdhdGUoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fcHJldmVudERlZmF1bHQoZXZlbnQpO1xuXG4gICAgICAgIHRoaXMubmF2aWdhdGUuZW1pdCh0aGlzLl9vdXRwdXRFdmVudFZhbHVlKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9vbkRlbGV0ZShldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9wcmV2ZW50RGVmYXVsdChldmVudCk7XG5cbiAgICAgICAgdGhpcy5kZWxldGUuZW1pdCh0aGlzLl9vdXRwdXRFdmVudFZhbHVlKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9jbGlja09uRHJhZnQoZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fcHJldmVudERlZmF1bHQoZXZlbnQpO1xuXG4gICAgICAgIHRoaXMuZHJhZnQuZW1pdCh0aGlzLl9vdXRwdXRFdmVudFZhbHVlKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9jbGlja09uTG9ja2VkKGV2ZW50OiBNb3VzZUV2ZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3ByZXZlbnREZWZhdWx0KGV2ZW50KTtcblxuICAgICAgICB0aGlzLmxvY2tlZC5lbWl0KHRoaXMuX291dHB1dEV2ZW50VmFsdWUpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgX29uQ2xpY2soZXZlbnQ6IE1vdXNlRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCF0aGlzLl9pc0VsZW1lbnRDYW5CZUNsaWNrZWQoZXZlbnQpKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAodGhpcy50eXBlICE9PSAnYWN0aXZlJyAmJiB0aGlzLnR5cGUgIT09ICdkZXRhaWxzQW5kQWN0aXZlJyAmJiB0aGlzLnR5cGUgIT09ICduYXZpZ2F0aW9uJykge1xuICAgICAgICAgICAgdGhpcy5jYXJkQ2xpY2suZW1pdCh0aGlzLl9vdXRwdXRFdmVudFZhbHVlKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0aGlzLnR5cGUgPT09ICduYXZpZ2F0aW9uJykge1xuICAgICAgICAgICAgdGhpcy5fb25OYXZpZ2F0ZShldmVudCk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5wcmVzcy5lbWl0KHRoaXMuX291dHB1dEV2ZW50VmFsdWUpO1xuICAgICAgICB0aGlzLmNhcmRDbGljay5lbWl0KHRoaXMuX291dHB1dEV2ZW50VmFsdWUpO1xuICAgIH1cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9vbktleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgY29uc3QgYWN0aXZlRWxlbWVudCA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgIGNvbnN0IGlzRm9jdXNlZCA9IGFjdGl2ZUVsZW1lbnQgPT09IHRoaXMuX2dyaWRMaXN0SXRlbS5uYXRpdmVFbGVtZW50O1xuICAgICAgICBjb25zdCBzaG91bGRGb2N1c0NoaWxkID0gS2V5VXRpbC5pc0tleUNvZGUoZXZlbnQsIFtFTlRFUiwgTUFDX0VOVEVSLCBGMiwgRjddKSAmJiAhZXZlbnQuc2hpZnRLZXkgJiYgaXNGb2N1c2VkO1xuICAgICAgICBpZiAoc2hvdWxkRm9jdXNDaGlsZCkge1xuICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICBjb25zdCBpbnRlcmFjdGl2ZUVsZW1lbnRzID0gdGhpcy5fZ3JpZExpc3RJdGVtLm5hdGl2ZUVsZW1lbnQucXVlcnlTZWxlY3RvckFsbChcbiAgICAgICAgICAgICAgICAnYSwgYnV0dG9uLCBpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYSdcbiAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgIGNvbnN0IGZpcnN0SW50ZXJhY3RpdmVFbGVtZW50ID0gaW50ZXJhY3RpdmVFbGVtZW50c1swXSBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgICAgIGZpcnN0SW50ZXJhY3RpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgICAgICBpbnRlcmFjdGl2ZUVsZW1lbnRzLmZvckVhY2goKGVsZW1lbnQpID0+IHtcbiAgICAgICAgICAgICAgICBlbGVtZW50LnNldEF0dHJpYnV0ZSgndGFiaW5kZXgnLCAnMCcpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLl9pbm5lckVsZW1lbnRGb2N1c2VkLnNldCh0cnVlKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfSBlbHNlIGlmICh0aGlzLl9pbm5lckVsZW1lbnRGb2N1c2VkKCkgJiYgS2V5VXRpbC5pc0tleUNvZGUoZXZlbnQsIFtGMiwgRjcsIEVTQ0FQRV0pKSB7XG4gICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgIHRoaXMuX2dyaWRMaXN0SXRlbS5uYXRpdmVFbGVtZW50LmZvY3VzKCk7XG4gICAgICAgICAgICB0aGlzLl9pbm5lckVsZW1lbnRGb2N1c2VkLnNldChmYWxzZSk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgdGFyZ2V0ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxEaXZFbGVtZW50O1xuXG4gICAgICAgIGNvbnN0IGlzU2VsZWN0aW9uS2V5RG93biA9IEtleVV0aWwuaXNLZXlDb2RlKGV2ZW50LCBbRU5URVIsIFNQQUNFXSk7XG5cbiAgICAgICAgaWYgKGlzU2VsZWN0aW9uS2V5RG93biAmJiB0aGlzLnNlbGVjdGlvbk1vZGUgPT09IEdyaWRMaXN0U2VsZWN0aW9uTW9kZUVudW0uTk9ORSkge1xuICAgICAgICAgICAgdGhpcy5wcmVzcy5lbWl0KHRoaXMuX291dHB1dEV2ZW50VmFsdWUpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgIWlzU2VsZWN0aW9uS2V5RG93biB8fFxuICAgICAgICAgICAgdGhpcy5zZWxlY3Rpb25Nb2RlID09PSBHcmlkTGlzdFNlbGVjdGlvbk1vZGVFbnVtLk5PTkUgfHxcbiAgICAgICAgICAgICF0YXJnZXQuY2xhc3NMaXN0LmNvbnRhaW5zKCdmZC1ncmlkLWxpc3RfX2l0ZW0nKVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3ByZXZlbnREZWZhdWx0KGV2ZW50KTtcblxuICAgICAgICBpZiAodGhpcy5zZWxlY3Rpb25Nb2RlID09PSBHcmlkTGlzdFNlbGVjdGlvbk1vZGVFbnVtLk1VTFRJX1NFTEVDVCkge1xuICAgICAgICAgICAgdGhpcy5fc2VsZWN0aW9uSXRlbSghdGhpcy5fc2VsZWN0ZWRJdGVtKTtcblxuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKHR5cGVvZiB0aGlzLl9zZWxlY3RlZEl0ZW0gPT09ICd1bmRlZmluZWQnKSB7XG4gICAgICAgICAgICB0aGlzLl9zaW5nbGVTZWxlY3QoZXZlbnQpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9pc0VsZW1lbnRDYW5CZUNsaWNrZWQoZXZlbnQ6IE1vdXNlRXZlbnQpOiBib29sZWFuIHtcbiAgICAgICAgaWYgKCFldmVudD8udGFyZ2V0KSB7XG4gICAgICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBlbGVtZW50ID0gZXZlbnQudGFyZ2V0IGFzIEhUTUxFbGVtZW50O1xuICAgICAgICBjb25zdCB7IGNsYXNzTGlzdCB9ID0gZWxlbWVudDtcblxuICAgICAgICByZXR1cm4gKFxuICAgICAgICAgICAgISh0aGlzLl9pc1Rvb2xiYXJFbGVtZW50KGVsZW1lbnQpICYmIHRoaXMuZGlzYWJsZVRvb2xiYXJDbGljaykgJiZcbiAgICAgICAgICAgICFjbGFzc0xpc3QuY29udGFpbnMoJ2ZkLWdyaWQtbGlzdF9fYWN0aW9uLWJ1dHRvbicpICYmXG4gICAgICAgICAgICAhY2xhc3NMaXN0LmNvbnRhaW5zKCdmZC1ncmlkLWxpc3RfX3JhZGlvLWxhYmVsJykgJiZcbiAgICAgICAgICAgICFjbGFzc0xpc3QuY29udGFpbnMoJ2ZkLWdyaWQtbGlzdF9fcmFkaW8taW5wdXQnKSAmJlxuICAgICAgICAgICAgIWNsYXNzTGlzdC5jb250YWlucygnZmQtZ3JpZC1saXN0X19jaGVja2JveC1sYWJlbCcpICYmXG4gICAgICAgICAgICAhY2xhc3NMaXN0LmNvbnRhaW5zKCdmZC1ncmlkLWxpc3RfX2NoZWNrYm94LWlucHV0JykgJiZcbiAgICAgICAgICAgICFjbGFzc0xpc3QuY29udGFpbnMoJ2ZkLWNoZWNrYm94X19jaGVja21hcmsnKVxuICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfaXNUb29sYmFyRWxlbWVudChlbGVtZW50OiBIVE1MRWxlbWVudCk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoIXRoaXMuaXRlbVRvb2xiYXJDb21wb25lbnQpIHtcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIHdoaWxlIChlbGVtZW50LnBhcmVudEVsZW1lbnQgJiYgIWVsZW1lbnQucGFyZW50RWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoJ2ZkLWdyaWQtbGlzdF9faXRlbScpKSB7XG4gICAgICAgICAgICBpZiAoZWxlbWVudC5jbGFzc0xpc3QuY29udGFpbnMoJ2ZkLXRvb2xiYXItLWV4dHJhLWNvbnRlbnQnKSkge1xuICAgICAgICAgICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBlbGVtZW50ID0gZWxlbWVudC5wYXJlbnRFbGVtZW50O1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfcHJldmVudERlZmF1bHQoZXZlbnQ6IEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGV2ZW50LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBnZXQgX291dHB1dEV2ZW50VmFsdWUoKTogR3JpZExpc3RJdGVtT3V0cHV0RXZlbnQ8VD4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgdmFsdWU6IHRoaXMudmFsdWUsXG4gICAgICAgICAgICBpbmRleDogdGhpcy5faW5kZXhcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2FkZENsYXNzZXNOYW1lcyhjbGFzc2VzTmFtZXM6IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgICAgIGZvciAoY29uc3QgY2xhc3NOYW1lIG9mIGNsYXNzZXNOYW1lcykge1xuICAgICAgICAgICAgdGhpcy5fcmVuZGVyLmFkZENsYXNzKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCwgY2xhc3NOYW1lKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfcmVtb3ZlQ2xhc3Nlc05hbWVzKGNsYXNzZXNOYW1lczogc3RyaW5nW10pOiB2b2lkIHtcbiAgICAgICAgZm9yIChjb25zdCBjbGFzc05hbWUgb2YgY2xhc3Nlc05hbWVzKSB7XG4gICAgICAgICAgICB0aGlzLl9yZW5kZXIucmVtb3ZlQ2xhc3ModGhpcy5fZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCBjbGFzc05hbWUpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPGRpdlxuICAgICNncmlkTGlzdEl0ZW1cbiAgICBbaWRdPVwiaWRcIlxuICAgIFt0YWJpbmRleF09XCJ0YWJJbmRleCgpXCJcbiAgICBjbGFzcz1cImZkLWdyaWQtbGlzdF9faXRlbVwiXG4gICAgcm9sZT1cIm9wdGlvblwiXG4gICAgW2NsYXNzLmlzLW5hdmlnYXRlZF09XCJpc05hdmlnYXRlZFwiXG4gICAgW2NsYXNzLmlzLXNlbGVjdGVkXT1cIiEhX3NlbGVjdGVkSXRlbVwiXG4gICAgW2NsYXNzLmZkLWdyaWQtbGlzdF9faXRlbS0tbGlua109XCJcbiAgICAgICAgX2lzQWN0aXZlICYmICh0eXBlID09PSAnYWN0aXZlJyB8fCB0eXBlID09PSAnZGV0YWlsc0FuZEFjdGl2ZScgfHwgdHlwZSA9PT0gJ25hdmlnYXRpb24nKVxuICAgIFwiXG4gICAgW2NsYXNzLmZkLWdyaWQtbGlzdF9faXRlbS0tdW5yZWFkXT1cInN0YXRlID09PSAndW5yZWFkJ1wiXG4gICAgW2NsYXNzLmZkLWdyaWQtbGlzdF9faXRlbS0tbG9ja2VkXT1cInN0YXRlID09PSAnbG9ja2VkJ1wiXG4gICAgW2NsYXNzLmZkLWdyaWQtbGlzdF9faXRlbS0tZHJhZnRdPVwic3RhdGUgPT09ICdkcmFmdCdcIlxuICAgIFtjbGFzcy5mZC1ncmlkLWxpc3RfX2l0ZW0tLWVycm9yXT1cInN0YXRlID09PSAnZXJyb3InXCJcbiAgICBbY2xhc3MuZmQtZ3JpZC1saXN0X19pdGVtLS1oZWlnaHQtYXV0b109XCJhdXRvSGVpZ2h0XCJcbiAgICAoa2V5ZG93bik9XCJfb25LZXlEb3duKCRldmVudClcIlxuICAgIChjbGljayk9XCJzZWxlY3Rpb25Nb2RlID09PSAnc2luZ2xlU2VsZWN0JyAmJiBfc2luZ2xlU2VsZWN0KCRldmVudCk7IF9vbkNsaWNrKCRldmVudClcIlxuICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsXCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiYXJpYUxhYmVsbGVkQnlcIlxuICAgIChtb3VzZW92ZXIpPVwiX3NldEFjdGl2ZSgkZXZlbnQsIGZhbHNlKVwiXG4gICAgKG1vdXNlb3V0KT1cIl9zZXRBY3RpdmUoJGV2ZW50LCB0cnVlKVwiXG4gICAgW2F0dHIuYXJpYS1zZWxlY3RlZF09XCJzZWxlY3Rpb25Nb2RlID09PSAnbm9uZScgPyBudWxsIDogISFfc2VsZWN0ZWRJdGVtXCJcbj5cbiAgICBAaWYgKHN0YXR1cykge1xuICAgICAgICA8c3BhblxuICAgICAgICAgICAgY2xhc3M9XCJmZC1ncmlkLWxpc3RfX2hpZ2hsaWdodFwiXG4gICAgICAgICAgICBbY2xhc3MuZmQtZ3JpZC1saXN0X19oaWdobGlnaHQtLXBvc2l0aXZlXT1cInN0YXR1cyA9PT0gJ3N1Y2Nlc3MnXCJcbiAgICAgICAgICAgIFtjbGFzcy5mZC1ncmlkLWxpc3RfX2hpZ2hsaWdodC0tY3JpdGljYWxdPVwic3RhdHVzID09PSAnd2FybmluZydcIlxuICAgICAgICAgICAgW2NsYXNzLmZkLWdyaWQtbGlzdF9faGlnaGxpZ2h0LS1uZWdhdGl2ZV09XCJzdGF0dXMgPT09ICdlcnJvcidcIlxuICAgICAgICAgICAgW2NsYXNzLmZkLWdyaWQtbGlzdF9faGlnaGxpZ2h0LS1uZXV0cmFsXT1cInN0YXR1cyA9PT0gJ25ldXRyYWwnXCJcbiAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ2NvcmVHcmlkTGlzdC5saXN0SXRlbVN0YXR1c0FyaWFMYWJlbCcgfCBmZFRyYW5zbGF0ZTogeyBzdGF0dXM6IHN0YXR1cyB9XCJcbiAgICAgICAgPjwvc3Bhbj5cbiAgICB9XG4gICAgQGlmIChzZWxlY3Rpb25Nb2RlID09PSAnc2luZ2xlU2VsZWN0Jykge1xuICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwicmFkaW9cIj48L25nLXRlbXBsYXRlPlxuICAgIH1cbiAgICBAaWYgKFxuICAgICAgICBjb3VudGVyIHx8XG4gICAgICAgIGl0ZW1Ub29sYmFyQ29tcG9uZW50Py5jb250ZW50VGVtcGxhdGVSZWYgfHxcbiAgICAgICAgKHR5cGUgJiYgdHlwZSAhPT0gJ2luYWN0aXZlJyAmJiB0eXBlICE9PSAnYWN0aXZlJykgfHxcbiAgICAgICAgKHNlbGVjdGlvbk1vZGUgIT09ICdub25lJyAmJiBzZWxlY3Rpb25Nb2RlICE9PSAnc2luZ2xlU2VsZWN0JylcbiAgICApIHtcbiAgICAgICAgPGRpdiBjbGFzcz1cImZkLXRvb2xiYXIgZmQtZ3JpZC1saXN0X19pdGVtLXRvb2xiYXJcIj5cbiAgICAgICAgICAgIEBpZiAoc2VsZWN0aW9uTW9kZSA9PT0gJ3NpbmdsZVNlbGVjdExlZnQnKSB7XG4gICAgICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInJhZGlvXCI+PC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpZiAoc2VsZWN0aW9uTW9kZSA9PT0gJ211bHRpU2VsZWN0Jykge1xuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJjaGVja2JveFwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaWYgKGl0ZW1Ub29sYmFyQ29tcG9uZW50Py5jb250ZW50VGVtcGxhdGVSZWYpIHtcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmQtdG9vbGJhci0tZXh0cmEtY29udGVudFwiPlxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwiaXRlbVRvb2xiYXJDb21wb25lbnQhLmNvbnRlbnRUZW1wbGF0ZVJlZlwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA8ZmQtZ3JpZC1saXN0LXRpdGxlLWJhci1zcGFjZXI+PC9mZC1ncmlkLWxpc3QtdGl0bGUtYmFyLXNwYWNlcj5cbiAgICAgICAgICAgIEBpZiAoY291bnRlcikge1xuICAgICAgICAgICAgICAgIDxzcGFuXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiZmQtZ3JpZC1saXN0X19pdGVtLWNvdW50ZXJcIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidjb3JlR3JpZExpc3QubGlzdEl0ZW1Db3VudGVyQXJpYUxhYmVsJyB8IGZkVHJhbnNsYXRlOiB7IGNvdW50OiBjb3VudGVyIH1cIlxuICAgICAgICAgICAgICAgICAgICA+e3sgY291bnRlciB9fTwvc3BhblxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpZiAodHlwZSA9PT0gJ2RldGFpbCcgfHwgdHlwZSA9PT0gJ2RldGFpbHNBbmRBY3RpdmUnKSB7XG4gICAgICAgICAgICAgICAgPGJ1dHRvblxuICAgICAgICAgICAgICAgICAgICBmZC1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgZmRUeXBlPVwidHJhbnNwYXJlbnRcIlxuICAgICAgICAgICAgICAgICAgICBnbHlwaD1cImVkaXRcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZkLWdyaWQtbGlzdF9fYWN0aW9uLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ2NvcmVHcmlkTGlzdC5saXN0SXRlbUJ1dHRvbkRldGFpbHNUaXRsZScgfCBmZFRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCInY29yZUdyaWRMaXN0Lmxpc3RJdGVtQnV0dG9uRGV0YWlsc1RpdGxlJyB8IGZkVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgZmRDb21wYWN0XG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJfb25EZXRhaWwoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgPjwvYnV0dG9uPlxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgQGlmIChzZWxlY3Rpb25Nb2RlID09PSAnZGVsZXRlJykge1xuICAgICAgICAgICAgICAgIDxidXR0b25cbiAgICAgICAgICAgICAgICAgICAgZmQtYnV0dG9uXG4gICAgICAgICAgICAgICAgICAgIGZkVHlwZT1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgICAgICAgICAgICAgZ2x5cGg9XCJkZWNsaW5lXCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmZC1ncmlkLWxpc3RfX2FjdGlvbi1idXR0b25cIlxuICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidjb3JlR3JpZExpc3QubGlzdEl0ZW1CdXR0b25EZWxldGVUaXRsZScgfCBmZFRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCInY29yZUdyaWRMaXN0Lmxpc3RJdGVtQnV0dG9uRGVsZXRlVGl0bGUnIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICB0aXRsZT1cIkRlbGV0ZVwiXG4gICAgICAgICAgICAgICAgICAgIGZkQ29tcGFjdFxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiX29uRGVsZXRlKCRldmVudClcIlxuICAgICAgICAgICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpZiAodHlwZSA9PT0gJ25hdmlnYXRpb24nKSB7XG4gICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmZC1ncmlkLWxpc3RfX2l0ZW0tbmF2aWdhdGlvbi1pbmRpY2F0b3JcIj5cbiAgICAgICAgICAgICAgICAgICAgPGZkLWljb24gZ2x5cGg9XCJuYXZpZ2F0aW9uLXJpZ2h0LWFycm93XCI+PC9mZC1pY29uPlxuICAgICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIEBpZiAoc2VsZWN0aW9uTW9kZSA9PT0gJ3NpbmdsZVNlbGVjdFJpZ2h0Jykge1xuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJyYWRpb1wiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICB9XG4gICAgICAgIDwvZGl2PlxuICAgIH1cbiAgICA8ZGl2IGNsYXNzPVwiZmQtZ3JpZC1saXN0X19pdGVtLWJvZHlcIiBbY2xhc3MuZmQtZ3JpZC1saXN0X19pdGVtLWJvZHktLW5vLXBhZGRpbmddPVwibm9QYWRkaW5nXCI+XG4gICAgICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltmZC1ncmlkLWxpc3QtaXRlbS1pbWFnZV1cIj48L25nLWNvbnRlbnQ+XG4gICAgICAgIEBpZiAodGl0bGUgfHwgZGVzY3JpcHRpb24pIHtcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJmZC1ncmlkLWxpc3RfX2l0ZW0taGVhZGVyXCI+XG4gICAgICAgICAgICAgICAgQGlmICh0aXRsZSkge1xuICAgICAgICAgICAgICAgICAgICA8ZGl2XG4gICAgICAgICAgICAgICAgICAgICAgICByb2xlPVwiaGVhZGluZ1wiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxldmVsXT1cInRpdGxlTGV2ZWxcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJmZC10aXRsZSBmZC10aXRsZS0taDQgZmQtZ3JpZC1saXN0X19pdGVtLXRpdGxlXCJcbiAgICAgICAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgdGl0bGUgfX1cbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIEBpZiAoZGVzY3JpcHRpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJmZC1ncmlkLWxpc3RfX2l0ZW0tc3VidGl0bGVcIj57eyBkZXNjcmlwdGlvbiB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgICBAaWYgKGJvZHk/LnRlbXBsYXRlUmVmKSB7XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmQtZ3JpZC1saXN0X19pdGVtLWNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgW25nVGVtcGxhdGVPdXRsZXRdPVwiYm9keSEudGVtcGxhdGVSZWZcIj48L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIH1cbiAgICAgICAgQGlmIChzdGF0ZSB8fCBmb290ZXJCYXJDb21wb25lbnQ/LmNvbnRlbnRUZW1wbGF0ZVJlZikge1xuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtuZ1RlbXBsYXRlT3V0bGV0XT1cIml0ZW1Gb290ZXJcIj48L25nLXRlbXBsYXRlPlxuICAgICAgICB9XG4gICAgPC9kaXY+XG48L2Rpdj5cbjxuZy10ZW1wbGF0ZSAjcmFkaW8+XG4gICAgPGlucHV0XG4gICAgICAgIFthdHRyLnRhYmluZGV4XT1cInNlbGVjdGlvbk1vZGUgPT09ICdzaW5nbGVTZWxlY3QnID8gLTEgOiAwXCJcbiAgICAgICAgdHlwZT1cInJhZGlvXCJcbiAgICAgICAgY2xhc3M9XCJmZC1yYWRpbyBmZC1ncmlkLWxpc3RfX3JhZGlvLWlucHV0XCJcbiAgICAgICAgW3N0eWxlLmRpc3BsYXldPVwic2VsZWN0aW9uTW9kZSA9PT0gJ3NpbmdsZVNlbGVjdCcgPyAnbm9uZScgOiAnJ1wiXG4gICAgICAgIFtpZF09XCJpZCArICctcmFkaW8nXCJcbiAgICAgICAgW25hbWVdPVwiJ2ZkLWdyaWQtbGlzdC1pdGVtLXRvb2xiYXItJyArIHNlbGVjdGlvbk1vZGVcIlxuICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFwiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCJhcmlhTGFiZWxsZWRCeVwiXG4gICAgICAgIFt2YWx1ZV09XCJ2YWx1ZVwiXG4gICAgICAgIFtuZ01vZGVsXT1cIl9zZWxlY3RlZEl0ZW1cIlxuICAgICAgICAobmdNb2RlbENoYW5nZSk9XCIkZXZlbnQgJiYgX3NlbGVjdGlvbkl0ZW0oJGV2ZW50KVwiXG4gICAgLz5cbiAgICA8bGFiZWxcbiAgICAgICAgY2xhc3M9XCJmZC1yYWRpb19fbGFiZWwgZmQtZ3JpZC1saXN0X19yYWRpby1sYWJlbFwiXG4gICAgICAgIFtmb3JdPVwiaWQgKyAnLXJhZGlvJ1wiXG4gICAgICAgIHRhYmluZGV4PVwiLTFcIlxuICAgICAgICAobW91c2VvdmVyKT1cIl9zZXRBY3RpdmUoJGV2ZW50LCBmYWxzZSlcIlxuICAgICAgICAobW91c2VvdXQpPVwiX3NldEFjdGl2ZSgkZXZlbnQsIHRydWUpXCJcbiAgICA+PC9sYWJlbD5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2NoZWNrYm94PlxuICAgIDxpbnB1dFxuICAgICAgICB0eXBlPVwiY2hlY2tib3hcIlxuICAgICAgICBjbGFzcz1cImZkLWNoZWNrYm94IGZkLWdyaWQtbGlzdF9fY2hlY2tib3gtaW5wdXRcIlxuICAgICAgICBbaWRdPVwiaWQgKyAnLWNoZWNrYm94J1wiXG4gICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsXCJcbiAgICAgICAgW2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImFyaWFMYWJlbGxlZEJ5XCJcbiAgICAgICAgW25nTW9kZWxdPVwiX3NlbGVjdGVkSXRlbVwiXG4gICAgICAgIChjbGljayk9XCJfY2hlY2tib3hDbGljaygkZXZlbnQpXCJcbiAgICAgICAgKGtleWRvd24uZXNjYXBlKT1cIl9jaGVja2JveEVzY2FwZSgpXCJcbiAgICAgICAgKGtleWRvd24uc2hpZnQpPVwiX2NoZWNrYm94RXNjYXBlKClcIlxuICAgIC8+XG4gICAgPGxhYmVsIGNsYXNzPVwiZmQtY2hlY2tib3hfX2xhYmVsIGZkLWdyaWQtbGlzdF9fY2hlY2tib3gtbGFiZWxcIiBbZm9yXT1cImlkICsgJy1jaGVja2JveCdcIiB0YWJpbmRleD1cIi0xXCI+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiZmQtY2hlY2tib3hfX2NoZWNrbWFya1wiIGFyaWEtaGlkZGVuPVwidHJ1ZVwiPjwvc3Bhbj5cbiAgICA8L2xhYmVsPlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjaXRlbUZvb3Rlcj5cbiAgICBAaWYgKGZvb3RlckJhckNvbXBvbmVudCB8fCBzdGF0ZSkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiZmQtZ3JpZC1saXN0X19pdGVtLWJvZHktYWN0aW9uc1wiPlxuICAgICAgICAgICAgQGlmIChmb290ZXJCYXJDb21wb25lbnQ/LmNvbnRlbnRUZW1wbGF0ZVJlZikge1xuICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbbmdUZW1wbGF0ZU91dGxldF09XCJmb290ZXJCYXJDb21wb25lbnQhLmNvbnRlbnRUZW1wbGF0ZVJlZlwiPjwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBAaWYgKCFmb290ZXJCYXJDb21wb25lbnQ/LmNvbnRlbnRUZW1wbGF0ZVJlZiAmJiBzdGF0ZSkge1xuICAgICAgICAgICAgICAgIEBpZiAoc3RhdGUgPT09ICdlcnJvcicpIHtcbiAgICAgICAgICAgICAgICAgICAgPHNwYW5cbiAgICAgICAgICAgICAgICAgICAgICAgIGZkLW9iamVjdC1zdGF0dXNcbiAgICAgICAgICAgICAgICAgICAgICAgIHN0YXR1cz1cIm5lZ2F0aXZlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInY29yZUdyaWRMaXN0Lmxpc3RJdGVtU3RhdHVzQ29udGFpbnNFcnJvcnMnIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuYXJpYS1sYWJlbF09XCInY29yZUdyaWRMaXN0Lmxpc3RJdGVtU3RhdHVzQ29udGFpbnNFcnJvcnMnIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICA+PC9zcGFuPlxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBAaWYgKHN0YXRlID09PSAnbG9ja2VkJykge1xuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZkLWdyaWQtbGlzdF9fYWN0aW9uLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBmZC1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgIGZkVHlwZT1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIGdseXBoPVwicHJpdmF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbbGFiZWxdPVwiJ2NvcmVHcmlkTGlzdC5saXN0SXRlbVN0YXR1c0xvY2tlZCcgfCBmZFRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBbYXR0ci5hcmlhLWxhYmVsXT1cIidjb3JlR3JpZExpc3QubGlzdEl0ZW1TdGF0dXNMb2NrZWQnIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuZGF0YS10ZXN0LWlkXT1cIidjb3JlR3JpZExpc3QubGlzdEl0ZW1TdGF0dXNMb2NrZWQnIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgZmRDb21wYWN0XG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiX2NsaWNrT25Mb2NrZWQoJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgID48L2J1dHRvbj5cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgQGlmIChzdGF0ZSA9PT0gJ2RyYWZ0Jykge1xuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uXG4gICAgICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImZkLWdyaWQtbGlzdF9fYWN0aW9uLWJ1dHRvblwiXG4gICAgICAgICAgICAgICAgICAgICAgICBmZC1idXR0b25cbiAgICAgICAgICAgICAgICAgICAgICAgIGZkVHlwZT1cInRyYW5zcGFyZW50XCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFthdHRyLmFyaWEtbGFiZWxdPVwiJ2NvcmVHcmlkTGlzdC5saXN0SXRlbVN0YXR1c0RyYWZ0JyB8IGZkVHJhbnNsYXRlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtsYWJlbF09XCInY29yZUdyaWRMaXN0Lmxpc3RJdGVtU3RhdHVzRHJhZnQnIHwgZmRUcmFuc2xhdGVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgW2F0dHIuZGF0YS10ZXN0LWlkXT1cIidjb3JlR3JpZExpc3QubGlzdEl0ZW1TdGF0dXNEcmFmdCcgfCBmZFRyYW5zbGF0ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICBmZENvbXBhY3RcbiAgICAgICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJfY2xpY2tPbkRyYWZ0KCRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICA+PC9idXR0b24+XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICA8L2Rpdj5cbiAgICB9XG48L25nLXRlbXBsYXRlPlxuIl19","import { ENTER, SPACE } from '@angular/cdk/keycodes';\nimport { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';\nimport { KeyUtil } from '@fundamental-ngx/cdk/utils';\nimport * as i0 from \"@angular/core\";\nexport class GridListMoreBtnComponent {\n constructor() {\n /** Event is thrown, when the control button is clicked */\n this.showMore = new EventEmitter();\n }\n /** @hidden */\n _onKeyDown(event) {\n if (!KeyUtil.isKeyCode(event, [ENTER, SPACE])) {\n return;\n }\n event.preventDefault();\n this.showMore.emit();\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListMoreBtnComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.4\", type: GridListMoreBtnComponent, isStandalone: true, selector: \"fd-grid-list-more-btn\", inputs: { title: \"title\", totalCount: \"totalCount\", displayCount: \"displayCount\" }, outputs: { showMore: \"showMore\" }, host: { classAttribute: \"fd-col fd-col--12\" }, ngImport: i0, template: \"<div tabindex=\\\"0\\\" role=\\\"button\\\" class=\\\"fd-grid-list__more\\\" (keydown)=\\\"_onKeyDown($event)\\\" (click)=\\\"showMore.emit()\\\">\\n <h5 class=\\\"fd-title fd-title--h6 fd-grid-list__more-title\\\">{{ title }}</h5>\\n <p class=\\\"fd-grid-list__more-description\\\">{{ '[ ' + displayCount + ' / ' + totalCount + ' ]' }}</p>\\n</div>\\n\", changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListMoreBtnComponent, decorators: [{\n type: Component,\n args: [{ selector: 'fd-grid-list-more-btn', changeDetection: ChangeDetectionStrategy.OnPush, host: {\n class: 'fd-col fd-col--12'\n }, standalone: true, template: \"<div tabindex=\\\"0\\\" role=\\\"button\\\" class=\\\"fd-grid-list__more\\\" (keydown)=\\\"_onKeyDown($event)\\\" (click)=\\\"showMore.emit()\\\">\\n <h5 class=\\\"fd-title fd-title--h6 fd-grid-list__more-title\\\">{{ title }}</h5>\\n <p class=\\\"fd-grid-list__more-description\\\">{{ '[ ' + displayCount + ' / ' + totalCount + ' ]' }}</p>\\n</div>\\n\" }]\n }], propDecorators: { title: [{\n type: Input\n }], totalCount: [{\n type: Input\n }], displayCount: [{\n type: Input\n }], showMore: [{\n type: Output\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1saXN0LW1vcmUtYnRuLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9ncmlkLWxpc3QvY29tcG9uZW50cy9ncmlkLWxpc3QtbW9yZS1idG4vZ3JpZC1saXN0LW1vcmUtYnRuLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9ncmlkLWxpc3QvY29tcG9uZW50cy9ncmlkLWxpc3QtbW9yZS1idG4vZ3JpZC1saXN0LW1vcmUtYnRuLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDckQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVoRyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7O0FBV3JELE1BQU0sT0FBTyx3QkFBd0I7SUFUckM7UUFzQkksMERBQTBEO1FBRTFELGFBQVEsR0FBRyxJQUFJLFlBQVksRUFBUSxDQUFDO0tBWXZDO0lBVkcsY0FBYztJQUNkLFVBQVUsQ0FBQyxLQUFvQjtRQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQzVDLE9BQU87UUFDWCxDQUFDO1FBRUQsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO1FBRXZCLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDekIsQ0FBQzs4R0ExQlEsd0JBQXdCO2tHQUF4Qix3QkFBd0IsdVBDZHJDLHdVQUlBOzsyRkRVYSx3QkFBd0I7a0JBVHBDLFNBQVM7K0JBQ0ksdUJBQXVCLG1CQUVoQix1QkFBdUIsQ0FBQyxNQUFNLFFBQ3pDO3dCQUNGLEtBQUssRUFBRSxtQkFBbUI7cUJBQzdCLGNBQ1csSUFBSTs4QkFLaEIsS0FBSztzQkFESixLQUFLO2dCQUtOLFVBQVU7c0JBRFQsS0FBSztnQkFLTixZQUFZO3NCQURYLEtBQUs7Z0JBS04sUUFBUTtzQkFEUCxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRU5URVIsIFNQQUNFIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2tleWNvZGVzJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBLZXlVdGlsIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jZGsvdXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZkLWdyaWQtbGlzdC1tb3JlLWJ0bicsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2dyaWQtbGlzdC1tb3JlLWJ0bi5jb21wb25lbnQuaHRtbCcsXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgaG9zdDoge1xuICAgICAgICBjbGFzczogJ2ZkLWNvbCBmZC1jb2wtLTEyJ1xuICAgIH0sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBHcmlkTGlzdE1vcmVCdG5Db21wb25lbnQge1xuICAgIC8qKiBTZXRzIHRpdGxlIG9mIHRoZSBidXR0b24gKi9cbiAgICBASW5wdXQoKVxuICAgIHRpdGxlOiBzdHJpbmc7XG5cbiAgICAvKiogU2V0cyB0aGUgbnVtYmVyIG9mIHRvdGFsIGl0ZW1zLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgdG90YWxDb3VudDogbnVtYmVyO1xuXG4gICAgLyoqIFNldHMgdGhlIG51bWJlciBvZiBkaXNwbGF5IGl0ZW1zLiAqL1xuICAgIEBJbnB1dCgpXG4gICAgZGlzcGxheUNvdW50OiBudW1iZXI7XG5cbiAgICAvKiogRXZlbnQgaXMgdGhyb3duLCB3aGVuIHRoZSBjb250cm9sIGJ1dHRvbiBpcyBjbGlja2VkICovXG4gICAgQE91dHB1dCgpXG4gICAgc2hvd01vcmUgPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIF9vbktleURvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgaWYgKCFLZXlVdGlsLmlzS2V5Q29kZShldmVudCwgW0VOVEVSLCBTUEFDRV0pKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG4gICAgICAgIHRoaXMuc2hvd01vcmUuZW1pdCgpO1xuICAgIH1cbn1cbiIsIjxkaXYgdGFiaW5kZXg9XCIwXCIgcm9sZT1cImJ1dHRvblwiIGNsYXNzPVwiZmQtZ3JpZC1saXN0X19tb3JlXCIgKGtleWRvd24pPVwiX29uS2V5RG93bigkZXZlbnQpXCIgKGNsaWNrKT1cInNob3dNb3JlLmVtaXQoKVwiPlxuICAgIDxoNSBjbGFzcz1cImZkLXRpdGxlIGZkLXRpdGxlLS1oNiBmZC1ncmlkLWxpc3RfX21vcmUtdGl0bGVcIj57eyB0aXRsZSB9fTwvaDU+XG4gICAgPHAgY2xhc3M9XCJmZC1ncmlkLWxpc3RfX21vcmUtZGVzY3JpcHRpb25cIj57eyAnWyAnICsgZGlzcGxheUNvdW50ICsgJyAvICcgKyB0b3RhbENvdW50ICsgJyBdJyB9fTwvcD5cbjwvZGl2PlxuIl19","import { ChangeDetectionStrategy, Component, Input } from '@angular/core';\nimport { ToolbarComponent, ToolbarLabelDirective } from '@fundamental-ngx/core/toolbar';\nimport * as i0 from \"@angular/core\";\nexport class GridListTitleBarComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListTitleBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.4\", type: GridListTitleBarComponent, isStandalone: true, selector: \"fd-grid-list-title-bar\", inputs: { title: \"title\" }, host: { classAttribute: \"fd-col fd-col--12\" }, ngImport: i0, template: \"<fd-toolbar fdType=\\\"solid\\\">\\n <label fd-toolbar-label>\\n {{ title }}\\n <ng-content select=\\\"[fd-grid-list-title-bar-additional-title-item]\\\"></ng-content>\\n </label>\\n\\n <ng-content></ng-content>\\n</fd-toolbar>\\n\", dependencies: [{ kind: \"component\", type: ToolbarComponent, selector: \"fd-toolbar\", inputs: [\"titleId\", \"class\", \"shouldOverflow\", \"fdType\", \"title\", \"active\", \"clearBorder\", \"forceOverflow\", \"tabindex\", \"headingLevel\", \"ariaLabel\", \"ariaLabelledBy\"] }, { kind: \"directive\", type: ToolbarLabelDirective, selector: \"[fd-toolbar-label]\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListTitleBarComponent, decorators: [{\n type: Component,\n args: [{ selector: 'fd-grid-list-title-bar', host: {\n class: 'fd-col fd-col--12'\n }, changeDetection: ChangeDetectionStrategy.OnPush, imports: [ToolbarComponent, ToolbarLabelDirective], template: \"<fd-toolbar fdType=\\\"solid\\\">\\n <label fd-toolbar-label>\\n {{ title }}\\n <ng-content select=\\\"[fd-grid-list-title-bar-additional-title-item]\\\"></ng-content>\\n </label>\\n\\n <ng-content></ng-content>\\n</fd-toolbar>\\n\" }]\n }], propDecorators: { title: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1saXN0LXRpdGxlLWJhci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvZ3JpZC1saXN0L2NvbXBvbmVudHMvZ3JpZC1saXN0LXRpdGxlLWJhci9ncmlkLWxpc3QtdGl0bGUtYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9ncmlkLWxpc3QvY29tcG9uZW50cy9ncmlkLWxpc3QtdGl0bGUtYmFyL2dyaWQtbGlzdC10aXRsZS1iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDMUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLHFCQUFxQixFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBV3hGLE1BQU0sT0FBTyx5QkFBeUI7OEdBQXpCLHlCQUF5QjtrR0FBekIseUJBQXlCLDZKQ1p0QywrT0FRQSw0Q0RFYyxnQkFBZ0IsK05BQUUscUJBQXFCOzsyRkFFeEMseUJBQXlCO2tCQVRyQyxTQUFTOytCQUNJLHdCQUF3QixRQUU1Qjt3QkFDRixLQUFLLEVBQUUsbUJBQW1CO3FCQUM3QixtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTSxXQUN0QyxDQUFDLGdCQUFnQixFQUFFLHFCQUFxQixDQUFDOzhCQUtsRCxLQUFLO3NCQURKLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVG9vbGJhckNvbXBvbmVudCwgVG9vbGJhckxhYmVsRGlyZWN0aXZlIH0gZnJvbSAnQGZ1bmRhbWVudGFsLW5neC9jb3JlL3Rvb2xiYXInO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZkLWdyaWQtbGlzdC10aXRsZS1iYXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9ncmlkLWxpc3QtdGl0bGUtYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgICBob3N0OiB7XG4gICAgICAgIGNsYXNzOiAnZmQtY29sIGZkLWNvbC0tMTInXG4gICAgfSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBpbXBvcnRzOiBbVG9vbGJhckNvbXBvbmVudCwgVG9vbGJhckxhYmVsRGlyZWN0aXZlXVxufSlcbmV4cG9ydCBjbGFzcyBHcmlkTGlzdFRpdGxlQmFyQ29tcG9uZW50IHtcbiAgICAvKiogU2V0cyB0aXRsZSBvZiB0aGUgR3JpZCBMaXN0ICovXG4gICAgQElucHV0KClcbiAgICB0aXRsZTogc3RyaW5nO1xufVxuIiwiPGZkLXRvb2xiYXIgZmRUeXBlPVwic29saWRcIj5cbiAgICA8bGFiZWwgZmQtdG9vbGJhci1sYWJlbD5cbiAgICAgICAge3sgdGl0bGUgfX1cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiW2ZkLWdyaWQtbGlzdC10aXRsZS1iYXItYWRkaXRpb25hbC10aXRsZS1pdGVtXVwiPjwvbmctY29udGVudD5cbiAgICA8L2xhYmVsPlxuXG4gICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9mZC10b29sYmFyPlxuIl19","import { Directive } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class GridListTitleBarAdditionalTitleItemDirective {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListTitleBarAdditionalTitleItemDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.4\", type: GridListTitleBarAdditionalTitleItemDirective, isStandalone: true, selector: \"[fd-grid-list-title-bar-additional-title-item]\", ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListTitleBarAdditionalTitleItemDirective, decorators: [{\n type: Directive,\n args: [{\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-grid-list-title-bar-additional-title-item]',\n standalone: true\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1saXN0LXRpdGxlLWJhci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvcmUvZ3JpZC1saXN0L2NvbXBvbmVudHMvZ3JpZC1saXN0LXRpdGxlLWJhci9ncmlkLWxpc3QtdGl0bGUtYmFyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQU8xQyxNQUFNLE9BQU8sNENBQTRDOzhHQUE1Qyw0Q0FBNEM7a0dBQTVDLDRDQUE0Qzs7MkZBQTVDLDRDQUE0QztrQkFMeEQsU0FBUzttQkFBQztvQkFDUCw4REFBOEQ7b0JBQzlELFFBQVEsRUFBRSxnREFBZ0Q7b0JBQzFELFVBQVUsRUFBRSxJQUFJO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ARGlyZWN0aXZlKHtcbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2RpcmVjdGl2ZS1zZWxlY3RvclxuICAgIHNlbGVjdG9yOiAnW2ZkLWdyaWQtbGlzdC10aXRsZS1iYXItYWRkaXRpb25hbC10aXRsZS1pdGVtXScsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZVxufSlcbmV4cG9ydCBjbGFzcyBHcmlkTGlzdFRpdGxlQmFyQWRkaXRpb25hbFRpdGxlSXRlbURpcmVjdGl2ZSB7fVxuIl19","import { DOWN_ARROW, END, HOME, LEFT_ARROW, RIGHT_ARROW, TAB, UP_ARROW } from '@angular/cdk/keycodes';\nimport { ChangeDetectionStrategy, ChangeDetectorRef, Component, ContentChildren, DestroyRef, ElementRef, EventEmitter, Input, Output, QueryList, ViewEncapsulation, computed, inject } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { KeyUtil, KeyboardSupportService, RangeSelector, RtlService } from '@fundamental-ngx/cdk/utils';\nimport { BehaviorSubject, Subscription, filter } from 'rxjs';\nimport { startWith } from 'rxjs/operators';\nimport { parseLayoutPattern } from '../../helpers/parse-layout-pattern';\nimport { GridListSelectionActions } from '../../models/grid-list-selection.models';\nimport { GridListItemComponent } from '../grid-list-item/grid-list-item.component';\nimport { GridList } from './grid-list-base.component';\nimport * as i0 from \"@angular/core\";\nlet gridListUniqueId = 0;\nexport class GridListComponent extends GridList {\n /** @hidden */\n set gridListItems(components) {\n this._gridListItems = components;\n this._updateGridListItemsProperties(components);\n }\n get gridListItems() {\n return this._gridListItems;\n }\n /** @hidden */\n constructor(_cd, _elRef) {\n super();\n this._cd = _cd;\n this._elRef = _elRef;\n /** id for the Element */\n this.id = `fd-grid-list-${gridListUniqueId++}`;\n /**\n * Defines the mode of Grid List\n * Modes:\n * - none: Default mode (no selection)\n * - delete: Delete mode (only one list item can be deleted via provided delete button)\n * - singleSelect: Selected item is highlighted but no selection control is visible (only one list item can be selected)\n * - singleSelectLeft: Left-positioned single selection mode (only one list item can be selected)\n * - singleSelectRight: Right-positioned single selection mode (only one list item can be selected)\n * - multiSelect: Multi-selection mode (more than one list item can be selected)\n * */\n this.selectionMode = 'none';\n /** Event is thrown, when mode is singleSelect, singleSelectLeft, singleSelectRight or multiSelect and item was selected */\n this.selectionChange = new EventEmitter();\n /** @hidden */\n this._rangeSelector = new RangeSelector();\n /** @hidden */\n this._selectedItems = {\n added: [],\n index: [],\n removed: [],\n selection: []\n };\n /** @hidden */\n this._selectedItemsSubject$ = new BehaviorSubject(this._selectedItems);\n /** @hidden */\n this.subscription = new Subscription();\n /** An RxJS Subject that will kill the data stream upon component’s destruction (for unsubscribing) */\n this._destroyRef = inject(DestroyRef);\n /** @hidden */\n this._rtlService = inject(RtlService, {\n optional: true\n });\n /** @hidden */\n this._rtl$ = computed(() => !!this._rtlService?.rtlSignal(), ...(ngDevMode ? [{ debugName: \"_rtl$\" }] : []));\n this._selectedItems$ = this._selectedItemsSubject$.asObservable();\n const selectedItemsSub = this._selectedItems$\n .pipe(filter(() => !!this._gridListItems))\n .subscribe(this.selectionChange);\n this.subscription.add(selectedItemsSub);\n }\n /** @hidden */\n ngOnChanges(changes) {\n if (changes.layoutPattern &&\n !changes.layoutPattern.firstChange &&\n changes.layoutPattern.previousValue !== changes.layoutPattern.currentValue) {\n const baseLayoutItemPattern = parseLayoutPattern(this.layoutPattern);\n this._updateGridListItemsProperty('gridLayoutClasses', baseLayoutItemPattern);\n }\n if (changes.selectionMode &&\n !changes.selectionMode.firstChange &&\n changes.selectionMode.previousValue !== changes.selectionMode.currentValue) {\n this._updateGridListItemsProperty('selectionMode', this.selectionMode);\n }\n }\n /** @hidden */\n ngAfterContentInit() {\n this._setFirstFocusableItem();\n this._listenOnQueryChange();\n this._cd.detectChanges();\n }\n /** @hidden */\n ngOnDestroy() {\n this.subscription.unsubscribe();\n }\n /**\n * Clears previous selection of the items.\n */\n clearSelection() {\n this._selectedItems.added = [];\n this._selectedItems.index = [];\n this._selectedItems.removed = this._selectedItems.selection;\n this._selectedItems.selection = [];\n this._selectedItemsSubject$.next(this._selectedItems);\n }\n /** @hidden */\n setSelectedItem(item, componentIndex, action, event) {\n if (!action) {\n this._selectedItems.added = [item];\n const selectedItem = this._selectedItems.selection[0];\n if (selectedItem) {\n this._selectedItems.removed = [selectedItem];\n }\n this._selectedItems.selection = [item];\n this._selectedItems.index = [componentIndex];\n this._selectedItemsSubject$.next(this._selectedItems);\n return;\n }\n this._rangeSelector.onRangeElementToggled(componentIndex, event);\n const state = this._rangeSelector.lastRangeSelectionState;\n if (!state) {\n return;\n }\n const itemIndexes = new Array(state.to - state.from + 1).fill(null).map((e, i) => state.from + i);\n const selectedItems = itemIndexes.map((idx) => this.gridListItems.get(idx)?.value).filter((v) => !!v);\n const itemsSet = new Set(selectedItems);\n if (action === GridListSelectionActions.ADD) {\n this._selectedItems.added = [...itemsSet.values()];\n this._selectedItems.index = [...itemIndexes];\n this._selectedItems.removed = [];\n // remove \"itemsSet\" values from selection and add them back from \"itemsSet\"\n // this is needed to avoid duplicates as some of the items can be already selected\n this._selectedItems.selection = this._selectedItems.selection.filter((e) => !itemsSet.has(e));\n this._selectedItems.selection.push(...itemsSet.values());\n }\n if (action === GridListSelectionActions.REMOVE) {\n this._selectedItems.added = [];\n this._selectedItems.index = [...itemIndexes];\n this._selectedItems.removed = [...itemsSet.values()];\n this._selectedItems.selection = this._selectedItems.selection.filter((selectedItem) => !itemsSet.has(selectedItem));\n }\n this._selectedItemsSubject$.next(this._selectedItems);\n }\n /** @hidden */\n handleKeydown(event) {\n this._handleTabKeydown(event);\n if (KeyUtil.isKeyCode(event, [UP_ARROW, DOWN_ARROW, LEFT_ARROW, RIGHT_ARROW])) {\n if (event.shiftKey && this.selectionMode === 'multiSelect') {\n this._handleShiftArrowKeydown(event);\n }\n else {\n this._handleArrowKeydown(event);\n }\n }\n else if (event.shiftKey && this.selectionMode === 'multiSelect' && KeyUtil.isKeyCode(event, [HOME, END])) {\n this._handleHomeEndKeydown(event);\n }\n }\n /** @hidden */\n _handleHomeEndKeydown(event) {\n event.preventDefault();\n let shouldSelect = false;\n let selectionAction;\n const isEndKeydown = KeyUtil.isKeyCode(event, END);\n const loopStartingIndex = isEndKeydown ? 0 : this._gridListItems.length - 1;\n /**\n * Ternary loop - if isEndKeydown is true, loop iterates from zero to the end of the grid list items.\n * If isEndKeydown is false, loop iterates backwards\n **/\n for (let index = loopStartingIndex; isEndKeydown ? index < this._gridListItems.length : index >= 0; isEndKeydown ? index++ : index--) {\n const currentItem = this._gridListItems.toArray()[index];\n if (document.activeElement === currentItem._gridListItem.nativeElement) {\n shouldSelect = true;\n selectionAction = currentItem._selectedItem\n ? GridListSelectionActions.ADD\n : GridListSelectionActions.REMOVE;\n }\n if (shouldSelect) {\n this.setSelectedItem(currentItem, index, selectionAction);\n }\n }\n const itemToFocus = isEndKeydown\n ? this._gridListItems.last._gridListItem\n : this._gridListItems.first._gridListItem;\n itemToFocus.nativeElement.focus();\n }\n /** @hidden */\n _handleTabKeydown(event) {\n if (KeyUtil.isKeyCode(event, TAB) && !event.shiftKey) {\n const isFocused = this._gridListItems\n .toArray()\n .some((item) => item._gridListItem.nativeElement.contains(document.activeElement));\n const isChildFocused = this._gridListItems\n .toArray()\n .some((item) => item._gridListItem.nativeElement.querySelector(':focus'));\n if (isFocused && !isChildFocused) {\n this._gridListItems.forEach((item) => {\n const interactiveElements = item._gridListItem.nativeElement.querySelectorAll('a, button, input, select, textarea');\n // Set tabindex to -1 for all interactive elements in the grid\n interactiveElements.forEach((element) => {\n element.setAttribute('tabindex', '-1');\n });\n });\n return;\n }\n else {\n this._gridListItems.forEach((item) => {\n const interactiveElements = item._gridListItem.nativeElement.querySelectorAll('a, button, input, select, textarea');\n interactiveElements.forEach((element) => {\n element.setAttribute('tabindex', '0');\n });\n });\n return;\n }\n }\n }\n /** @hidden */\n _handleShiftArrowKeydown(event) {\n event.preventDefault();\n const activeElement = document.activeElement;\n const currentItemIndex = this._getCurrentItemIndex(activeElement);\n if (currentItemIndex === -1) {\n return;\n }\n const indexToFocus = this._calculateIndexToFocus(event, currentItemIndex);\n if (indexToFocus === undefined) {\n return;\n }\n // Persist the selection state from the current item to the next item\n this._persistSelectionState(currentItemIndex, indexToFocus);\n // Focus the new item\n this._focusItemAtIndex(indexToFocus, activeElement);\n }\n /** @hidden */\n _handleArrowKeydown(event, isShiftPressed = false) {\n event.preventDefault();\n const activeElement = document.activeElement;\n const currentItemIndex = this._getCurrentItemIndex(activeElement);\n if (currentItemIndex === -1) {\n return;\n }\n const indexToFocus = this._calculateIndexToFocus(event, currentItemIndex);\n if (indexToFocus === undefined) {\n return;\n }\n if (isShiftPressed) {\n this._toggleSelection(indexToFocus);\n }\n this._focusItemAtIndex(indexToFocus, activeElement);\n }\n /** hidden */\n _calculateIndexToFocus(event, currentItemIndex) {\n const itemsPerRow = this._getItemsPerRow(this._gridListItems.toArray()[currentItemIndex]._gridListItem.nativeElement);\n if (KeyUtil.isKeyCode(event, LEFT_ARROW) || (this._rtl$() && KeyUtil.isKeyCode(event, [RIGHT_ARROW]))) {\n return currentItemIndex - 1;\n }\n else if (KeyUtil.isKeyCode(event, RIGHT_ARROW) || (this._rtl$() && KeyUtil.isKeyCode(event, [LEFT_ARROW]))) {\n return currentItemIndex + 1;\n }\n else if (KeyUtil.isKeyCode(event, UP_ARROW)) {\n return currentItemIndex - itemsPerRow;\n }\n else if (KeyUtil.isKeyCode(event, DOWN_ARROW)) {\n return currentItemIndex + itemsPerRow;\n }\n return undefined;\n }\n /** hidden */\n _persistSelectionState(currentIndex, indexToFocus) {\n const currentItem = this._gridListItems.toArray()[currentIndex];\n const nextItem = this._gridListItems.toArray()[indexToFocus];\n // Persist the selection state from the current item to the next item\n if (currentItem._selectedItem) {\n // If the current item is selected, ensure the next item is selected as well\n if (!nextItem._selectedItem) {\n this.setSelectedItem(nextItem, indexToFocus, GridListSelectionActions.ADD);\n }\n }\n else {\n // If the current item is not selected, ensure the next item remains not selected\n if (nextItem._selectedItem) {\n this.setSelectedItem(nextItem, indexToFocus, GridListSelectionActions.REMOVE);\n }\n }\n }\n /** hidden */\n _getCurrentItemIndex(activeElement) {\n return this._gridListItems\n .toArray()\n .findIndex((item) => item._gridListItem.nativeElement.contains(activeElement));\n }\n /** hidden */\n _focusItemAtIndex(indexToFocus, activeElement) {\n if (indexToFocus >= 0 && indexToFocus < this._gridListItems.length) {\n const itemToFocus = this._gridListItems.toArray()[indexToFocus];\n if (itemToFocus && itemToFocus._gridListItem) {\n const elementToFocus = itemToFocus._gridListItem.nativeElement?.parentElement?.querySelector(activeElement.tagName);\n if (elementToFocus) {\n elementToFocus.focus();\n }\n }\n }\n }\n /** hidden */\n _toggleSelection(indexToFocus) {\n const currentItem = this._gridListItems.toArray()[indexToFocus];\n const selectionAction = currentItem._selectedItem\n ? GridListSelectionActions.REMOVE\n : GridListSelectionActions.ADD;\n this.setSelectedItem(currentItem, indexToFocus, selectionAction);\n }\n /** @hidden */\n _listenOnQueryChange() {\n this._gridListItems.changes.pipe(startWith(0), takeUntilDestroyed(this._destroyRef)).subscribe(() => {\n setTimeout(() => {\n this._setFirstFocusableItem();\n });\n });\n }\n /** @hidden */\n _setFirstFocusableItem() {\n this._gridListItems.toArray().forEach((item, index) => {\n item.tabIndex.set(index === 0 ? 0 : -1);\n });\n }\n /** @hidden */\n _getItemsPerRow(activeElement) {\n const itemWidth = activeElement.getBoundingClientRect().width;\n const containerWidth = this._elRef.nativeElement.getBoundingClientRect().width;\n return Math.floor(containerWidth / itemWidth);\n }\n /** @hidden */\n _updateGridListItemsProperties(components) {\n const layoutPattern = this.layoutPattern ? this.layoutPattern : 'XL4-L3-M2-S1';\n const baseLayoutItemPattern = parseLayoutPattern(layoutPattern);\n components.forEach((component, index) => {\n if (component._index !== index) {\n component._index = index;\n }\n if (!component.selectionMode) {\n component.selectionMode = this.selectionMode;\n }\n if (!component.layoutItemPattern) {\n component.gridLayoutClasses = baseLayoutItemPattern;\n }\n });\n }\n /** @hidden */\n _updateGridListItemsProperty(key, value) {\n this._gridListItems.forEach((componenet) => {\n componenet[key] = value;\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.1.4\", type: GridListComponent, isStandalone: true, selector: \"fd-grid-list\", inputs: { id: \"id\", width: \"width\", ariaLabel: \"ariaLabel\", selectionMode: \"selectionMode\", layoutPattern: \"layoutPattern\" }, outputs: { selectionChange: \"selectionChange\" }, providers: [KeyboardSupportService, { provide: GridList, useExisting: GridListComponent }], queries: [{ propertyName: \"gridListItems\", predicate: GridListItemComponent, descendants: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: \"<div\\n [id]=\\\"id\\\"\\n [style.width]=\\\"width\\\"\\n class=\\\"fd-grid-list\\\"\\n [attr.aria-label]=\\\"ariaLabel\\\"\\n [class.fd-grid-list--mode-delete]=\\\"selectionMode === 'delete'\\\"\\n [class.fd-grid-list--mode-single-select]=\\\"selectionMode === 'singleSelect'\\\"\\n [class.fd-grid-list--mode-single-select-left]=\\\"selectionMode === 'singleSelectLeft'\\\"\\n [class.fd-grid-list--mode-single-select-right]=\\\"selectionMode === 'singleSelectRight'\\\"\\n [class.fd-grid-list--mode-multi-select]=\\\"selectionMode === 'multiSelect'\\\"\\n (keydown)=\\\"handleKeydown($event)\\\"\\n>\\n <div class=\\\"fd-container\\\" role=\\\"listbox\\\">\\n <div class=\\\"fd-row\\\">\\n <ng-content></ng-content>\\n </div>\\n </div>\\n</div>\\n\", styles: [\".fd-radio{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--sapField_Background);border:0;border-color:var(--sapField_BorderColor);border-radius:var(--sapField_BorderCornerRadius);border-style:solid;border-width:var(--sapField_BorderWidth);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapField_TextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;opacity:.0001;outline:none;overflow:hidden;padding-block:0;padding-inline:0;position:absolute;text-overflow:ellipsis;white-space:nowrap}.fd-radio:after,.fd-radio:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-radio::-webkit-input-placeholder{color:var(--sapField_PlaceholderTextColor);font-style:italic}.fd-radio::-moz-placeholder{color:var(--sapField_PlaceholderTextColor);font-style:italic}.fd-radio:-ms-input-placeholder{color:var(--sapField_PlaceholderTextColor);font-style:italic}.fd-radio::-ms-input-placeholder{color:var(--sapField_PlaceholderTextColor);font-style:italic}.fd-radio::placeholder{color:var(--sapField_PlaceholderTextColor);font-style:italic}.fd-radio::-moz-selection{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastTextColor)}.fd-radio::selection{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastTextColor)}.fd-radio.is-success{background:var(--sapField_SuccessBackgroundStyle);background-color:var(--sapField_SuccessBackground);border:var(--sapField_SuccessColor) var(--sapField_SuccessBorderWidth) var(--sapField_SuccessBorderStyle);-webkit-box-shadow:var(--sapField_SuccessShadow);box-shadow:var(--sapField_SuccessShadow)}.fd-radio.is-success.is-hover,.fd-radio.is-success:hover{background-color:var(--fdInput_Success_Background_Color_Hover);border-color:var(--sapField_SuccessColor);-webkit-box-shadow:var(--fdInput_Success_Box_Shadow_Hover);box-shadow:var(--fdInput_Success_Box_Shadow_Hover)}.fd-radio.is-success.is-focus,.fd-radio.is-success:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Success_Outline_Color);z-index:5}.fd-radio.is-success.is-focus.is-hover,.fd-radio.is-success.is-focus:hover,.fd-radio.is-success:focus.is-hover,.fd-radio.is-success:focus:hover{-webkit-box-shadow:none;box-shadow:none}.fd-radio.is-success.is-expanded,.fd-radio.is-success[aria-expanded=true]{background:var(--sapField_Focus_Background);-webkit-box-shadow:none;box-shadow:none;outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--fdInput_Success_Outline_Color);outline-offset:var(--fdInput_Outline_Offset)}.fd-radio.is-error{background:var(--sapField_InvalidBackgroundStyle);background-color:var(--sapField_InvalidBackground);border:var(--sapField_InvalidColor) var(--sapField_InvalidBorderWidth) var(--sapField_InvalidBorderStyle);-webkit-box-shadow:var(--sapField_InvalidShadow);box-shadow:var(--sapField_InvalidShadow)}.fd-radio.is-error.is-hover,.fd-radio.is-error:hover{background-color:var(--fdInput_Error_Background_Color_Hover);border-color:var(--sapField_InvalidColor);-webkit-box-shadow:var(--fdInput_Error_Box_Shadow_Hover);box-shadow:var(--fdInput_Error_Box_Shadow_Hover)}.fd-radio.is-error.is-focus,.fd-radio.is-error:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Error_Outline_Color);z-index:5}.fd-radio.is-error.is-focus.is-hover,.fd-radio.is-error.is-focus:hover,.fd-radio.is-error:focus.is-hover,.fd-radio.is-error:focus:hover{-webkit-box-shadow:none;box-shadow:none}.fd-radio.is-error.is-expanded,.fd-radio.is-error[aria-expanded=true]{background:var(--sapField_Focus_Background);-webkit-box-shadow:none;box-shadow:none;outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--fdInput_Error_Outline_Color);outline-offset:var(--fdInput_Outline_Offset)}.fd-radio.is-warning{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle);-webkit-box-shadow:var(--sapField_WarningShadow);box-shadow:var(--sapField_WarningShadow)}.fd-radio.is-warning.is-hover,.fd-radio.is-warning:hover{background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-radio.is-warning.is-focus,.fd-radio.is-warning:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-radio.is-warning.is-focus.is-hover,.fd-radio.is-warning.is-focus:hover,.fd-radio.is-warning:focus.is-hover,.fd-radio.is-warning:focus:hover{-webkit-box-shadow:none;box-shadow:none}.fd-radio.is-warning.is-expanded,.fd-radio.is-warning[aria-expanded=true]{background:var(--sapField_Focus_Background);-webkit-box-shadow:none;box-shadow:none;outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--fdInput_Warning_Outline_Color);outline-offset:var(--fdInput_Outline_Offset)}.fd-radio.is-alert{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-radio.is-alert.is-hover,.fd-radio.is-alert:hover{background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-radio.is-alert.is-focus,.fd-radio.is-alert:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-radio.is-alert.is-focus.is-hover,.fd-radio.is-alert.is-focus:hover,.fd-radio.is-alert:focus.is-hover,.fd-radio.is-alert:focus:hover{-webkit-box-shadow:none;box-shadow:none}.fd-radio.is-alert.is-expanded,.fd-radio.is-alert[aria-expanded=true]{background:var(--sapField_Focus_Background);-webkit-box-shadow:none;box-shadow:none;outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--fdInput_Warning_Outline_Color);outline-offset:var(--fdInput_Outline_Offset)}.fd-radio.is-information{background:var(--sapField_InformationBackgroundStyle);background-color:var(--sapField_InformationBackground);border:var(--sapField_InformationColor) var(--sapField_InformationBorderWidth) var(--sapField_InformationBorderStyle);-webkit-box-shadow:var(--sapField_InformationShadow);box-shadow:var(--sapField_InformationShadow)}.fd-radio.is-information.is-hover,.fd-radio.is-information:hover{background-color:var(--fdInput_Information_Background_Color_Hover);border-color:var(--sapField_InformationColor);-webkit-box-shadow:var(--fdInput_Information_Box_Shadow_Hover);box-shadow:var(--fdInput_Information_Box_Shadow_Hover)}.fd-radio.is-information.is-focus,.fd-radio.is-information:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Information_Outline_Color);z-index:5}.fd-radio.is-information.is-focus.is-hover,.fd-radio.is-information.is-focus:hover,.fd-radio.is-information:focus.is-hover,.fd-radio.is-information:focus:hover{-webkit-box-shadow:none;box-shadow:none}.fd-radio.is-information.is-expanded,.fd-radio.is-information[aria-expanded=true]{background:var(--sapField_Focus_Background);-webkit-box-shadow:none;box-shadow:none;outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--fdInput_Information_Outline_Color);outline-offset:var(--fdInput_Outline_Offset)}.fd-radio.is-alert.is-focus,.fd-radio.is-alert:focus,.fd-radio.is-error.is-focus,.fd-radio.is-error:focus,.fd-radio.is-information.is-focus,.fd-radio.is-information:focus,.fd-radio.is-warning.is-focus,.fd-radio.is-warning:focus{outline-offset:var(--fdInput_Outline_Offset_States);z-index:5}.fd-radio.is-disabled,.fd-radio:disabled,.fd-radio[aria-disabled=true]{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}.fd-radio.is-readonly,.fd-radio.is-readonly.is-focus,.fd-radio.is-readonly.is-hover,.fd-radio.is-readonly:focus,.fd-radio.is-readonly:hover,.fd-radio[aria-readonly=true],.fd-radio[aria-readonly=true].is-focus,.fd-radio[aria-readonly=true].is-hover,.fd-radio[aria-readonly=true]:focus,.fd-radio[aria-readonly=true]:hover,.fd-radio[readonly],.fd-radio[readonly].is-focus,.fd-radio[readonly].is-hover,.fd-radio[readonly]:focus,.fd-radio[readonly]:hover{--fdInput_Outline_Offset:-.25rem;background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);-webkit-box-shadow:none;box-shadow:none}.fd-radio.is-readonly.is-focus,.fd-radio.is-readonly:focus,.fd-radio[aria-readonly=true].is-focus,.fd-radio[aria-readonly=true]:focus,.fd-radio[readonly].is-focus,.fd-radio[readonly]:focus{z-index:5}.fd-radio__label{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;max-width:100%;padding-block:0;padding-inline:0;position:relative;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;-webkit-margin-end:.5rem;cursor:text;margin-inline-end:.5rem;-ms-flex-item-align:start;align-self:flex-start;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;line-height:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:var(--sapField_TextColor);padding-block:var(--fdRadio_Outer_Circle_Padding);padding-inline:var(--fdRadio_Outer_Circle_Padding)}.fd-radio__label:after,.fd-radio__label:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-radio__label:before{content:\\\"\\\";display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;height:var(--fdRadio_Inner_Circle_Diameter);min-width:var(--fdRadio_Inner_Circle_Diameter);width:var(--fdRadio_Inner_Circle_Diameter);-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-radius:50%;-webkit-margin-end:var(--fdRadio_Outer_Circle_Padding);background-color:var(--fdRadio_Background_Color);border:var(--fdRadio_Inner_Border_Width) var(--fdRadio_Inner_Border_Style) var(--fdRadio_Inner_Border_Color);margin-inline-end:var(--fdRadio_Outer_Circle_Padding)}.fd-radio__label:after{height:var(--fdRadio_Inner_Content_Size);left:var(--fdRadio_Inner_Content_Padding);min-width:var(--fdRadio_Inner_Content_Size);width:var(--fdRadio_Inner_Content_Size)}.fd-radio__label.is-focus,.fd-radio__label:focus{outline:none;z-index:5}.fd-radio__label.is-hover:before,.fd-radio__label:hover:before{background-color:var(--fdRadio_Hover_Background_Color);--fdRadio_Inner_Border_Width:var(--fdRadio_Inner_Border_Width_Default_Hover);--fdRadio_Inner_Border_Style:var(--fdRadio_Inner_Border_Style_Default_Hover);--fdRadio_Inner_Border_Color:var(--fdRadio_Inner_Border_Color_Default_Hover);--fdRadio_Active_Dot_Color:var(--fdRadio_Active_Dot_Color_Default_Hover);--fdRadio_Hover_Background_Color:var(--fdRadio_Background_Color_Default_Hover)}.fd-radio__label[dir=rtl]:after,[dir=rtl] .fd-radio__label:after{right:var(--fdRadio_Inner_Content_Padding)}.fd-radio__label.is-empty,.fd-radio__label:empty{margin-block:0;margin-inline:0;padding-block:var(--fdRadio_Outer_Circle_Padding);padding-inline:var(--fdRadio_Outer_Circle_Padding)}.fd-radio__label.is-empty:after,.fd-radio__label.is-empty:before,.fd-radio__label:empty:after,.fd-radio__label:empty:before{margin-inline:0}.fd-radio__label--wrap .fd-radio__text{white-space:normal}.fd-radio__label--wrap-top-aligned{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.fd-radio__label--wrap-top-aligned .fd-radio__text{white-space:normal}.fd-radio__label--wrap-top-aligned:after{top:var(--fdRadio_Inner_Content_Padding)}.fd-radio__text{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;overflow:hidden;padding-block:0;padding-inline:0;text-overflow:ellipsis;white-space:nowrap}.fd-radio__text:after,.fd-radio__text:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-radio:checked+.fd-radio__label:after{background:var(--fdRadio_Active_Dot_Color);border-radius:50%;content:\\\"\\\";position:absolute}.fd-radio.is-error+.fd-radio__label:before,.fd-radio.is-error:checked+.fd-radio__label:after{--fdRadio_Background_Color:var(--fdRadio_Background_Color_Error);--fdRadio_Inner_Border_Width:var(--fdRadio_Inner_Border_Width_Error);--fdRadio_Inner_Border_Style:var(--fdRadio_Inner_Border_Style_Error);--fdRadio_Inner_Border_Color:var(--fdRadio_Inner_Border_Color_Error);--fdRadio_Active_Dot_Color:var(--fdRadio_Active_Dot_Color_Error);--fdRadio_Hover_Background_Color:var(--fdRadio_Background_Color_Error_Hover)}.fd-radio.is-alert+.fd-radio__label:before,.fd-radio.is-alert:checked+.fd-radio__label:after,.fd-radio.is-warning+.fd-radio__label:before,.fd-radio.is-warning:checked+.fd-radio__label:after{--fdRadio_Background_Color:var(--fdRadio_Background_Color_Warning);--fdRadio_Inner_Border_Width:var(--fdRadio_Inner_Border_Width_Warning);--fdRadio_Inner_Border_Style:var(--fdRadio_Inner_Border_Style_Warning);--fdRadio_Inner_Border_Color:var(--fdRadio_Inner_Border_Color_Warning);--fdRadio_Active_Dot_Color:var(--fdRadio_Active_Dot_Color_Warning);--fdRadio_Hover_Background_Color:var(--fdRadio_Background_Color_Warning_Hover)}.fd-radio.is-success+.fd-radio__label:before,.fd-radio.is-success:checked+.fd-radio__label:after{--fdRadio_Background_Color:var(--fdRadio_Background_Color_Success);--fdRadio_Inner_Border_Width:var(--fdRadio_Inner_Border_Width_Success);--fdRadio_Inner_Border_Style:var(--fdRadio_Inner_Border_Style_Success);--fdRadio_Inner_Border_Color:var(--fdRadio_Inner_Border_Color_Success);--fdRadio_Active_Dot_Color:var(--fdRadio_Active_Dot_Color_Success);--fdRadio_Hover_Background_Color:var(--fdRadio_Background_Color_Success_Hover)}.fd-radio.is-information+.fd-radio__label:before,.fd-radio.is-information:checked+.fd-radio__label:after{--fdRadio_Background_Color:var(--fdRadio_Background_Color_Information);--fdRadio_Inner_Border_Width:var(--fdRadio_Inner_Border_Width_Information);--fdRadio_Inner_Border_Style:var(--fdRadio_Inner_Border_Style_Information);--fdRadio_Inner_Border_Color:var(--fdRadio_Inner_Border_Color_Information);--fdRadio_Active_Dot_Color:var(--fdRadio_Active_Dot_Color_Information);--fdRadio_Hover_Background_Color:var(--fdRadio_Background_Color_Information_Hover)}.fd-radio.is-readonly+.fd-radio__label:before,.fd-radio.is-readonly:checked+.fd-radio__label:after,.fd-radio[aria-readonly=true]+.fd-radio__label:before,.fd-radio[aria-readonly=true]:checked+.fd-radio__label:after,.fd-radio[readonly]+.fd-radio__label:before,.fd-radio[readonly]:checked+.fd-radio__label:after{--fdRadio_Background_Color:var(--fdRadio_Background_Color_ReadOnly);--fdRadio_Inner_Border_Width:var(--fdRadio_Inner_Border_Width_ReadOnly);--fdRadio_Inner_Border_Style:var(--fdRadio_Inner_Border_Style_ReadOnly);--fdRadio_Inner_Border_Color:var(--fdRadio_Inner_Border_Color_ReadOnly);--fdRadio_Active_Dot_Color:var(--fdRadio_Active_Dot_Color_ReadOnly);--fdRadio_Hover_Background_Color:var(--fdRadio_Background_Color_ReadOnly)}.fd-radio.is-focus,.fd-radio:focus{z-index:5}.fd-radio.is-focus+.fd-radio__label,.fd-radio:focus+.fd-radio__label{border-radius:var(--fdRadio_Outline_Border_Radius);outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);outline-offset:calc(var(--fdRadio_Focus_Outline_Offset) - var(--fdRadio_Outer_Circle_Padding))}.fd-radio.is-disabled,.fd-radio:disabled,.fd-radio[aria-disabled=true]{opacity:.0001}.fd-radio.is-disabled+.fd-radio__label,.fd-radio:disabled+.fd-radio__label,.fd-radio[aria-disabled=true]+.fd-radio__label{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}.fd-radio[class*=-compact]+.fd-radio__label,.fd-radio[class*=-condensed]+.fd-radio__label,[class*=-compact] .fd-radio:not([class*=-cozy])+.fd-radio__label,[class*=-condensed] .fd-radio:not([class*=-cozy])+.fd-radio__label{--fdRadio_Outer_Circle_Padding:var(--fdRadio_Compact_Outer_Circle_Padding);--fdRadio_Inner_Circle_Diameter:var(--fdRadio_Compact_Inner_Circle_Diameter);--fdRadio_Inner_Content_Size:var(--fdRadio_Inner_Content_Size_Compact);--fdRadio_Inner_Content_Padding:var(--fdRadio_Inner_Content_Padding_Compact)}.fd-radio[class*=-compact].is-focus,.fd-radio[class*=-compact]:focus,.fd-radio[class*=-condensed].is-focus,.fd-radio[class*=-condensed]:focus,[class*=-compact] .fd-radio:not([class*=-cozy]).is-focus,[class*=-compact] .fd-radio:not([class*=-cozy]):focus,[class*=-condensed] .fd-radio:not([class*=-cozy]).is-focus,[class*=-condensed] .fd-radio:not([class*=-cozy]):focus{z-index:5}.fd-radio[class*=-compact].is-focus+.fd-radio__label,.fd-radio[class*=-compact]:focus+.fd-radio__label,.fd-radio[class*=-condensed].is-focus+.fd-radio__label,.fd-radio[class*=-condensed]:focus+.fd-radio__label,[class*=-compact] .fd-radio:not([class*=-cozy]).is-focus+.fd-radio__label,[class*=-compact] .fd-radio:not([class*=-cozy]):focus+.fd-radio__label,[class*=-condensed] .fd-radio:not([class*=-cozy]).is-focus+.fd-radio__label,[class*=-condensed] .fd-radio:not([class*=-cozy]):focus+.fd-radio__label{--fdRadio_Outer_Circle_Padding:var(--fdRadio_Compact_Outer_Circle_Padding);--fdRadio_Outline_Border_Radius:var(--fdRadio_Compact_Outline_Border_radius)}.fd-checkbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--sapField_Background);border:0;border-color:var(--sapField_BorderColor);border-radius:var(--sapField_BorderCornerRadius);border-style:solid;border-width:var(--sapField_BorderWidth);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapField_TextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;opacity:.0001;outline:none;overflow:hidden;padding-block:0;padding-inline:0;position:absolute;text-overflow:ellipsis;white-space:nowrap}.fd-checkbox:after,.fd-checkbox:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-checkbox::-webkit-input-placeholder{color:var(--sapField_PlaceholderTextColor);font-style:italic}.fd-checkbox::-moz-placeholder{color:var(--sapField_PlaceholderTextColor);font-style:italic}.fd-checkbox:-ms-input-placeholder{color:var(--sapField_PlaceholderTextColor);font-style:italic}.fd-checkbox::-ms-input-placeholder{color:var(--sapField_PlaceholderTextColor);font-style:italic}.fd-checkbox::placeholder{color:var(--sapField_PlaceholderTextColor);font-style:italic}.fd-checkbox::-moz-selection{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastTextColor)}.fd-checkbox::selection{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastTextColor)}.fd-checkbox.is-success{background:var(--sapField_SuccessBackgroundStyle);background-color:var(--sapField_SuccessBackground);border:var(--sapField_SuccessColor) var(--sapField_SuccessBorderWidth) var(--sapField_SuccessBorderStyle);-webkit-box-shadow:var(--sapField_SuccessShadow);box-shadow:var(--sapField_SuccessShadow)}.fd-checkbox.is-success.is-hover,.fd-checkbox.is-success:hover{background-color:var(--fdInput_Success_Background_Color_Hover);border-color:var(--sapField_SuccessColor);-webkit-box-shadow:var(--fdInput_Success_Box_Shadow_Hover);box-shadow:var(--fdInput_Success_Box_Shadow_Hover)}.fd-checkbox.is-success.is-focus,.fd-checkbox.is-success:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Success_Outline_Color);z-index:5}.fd-checkbox.is-success.is-focus.is-hover,.fd-checkbox.is-success.is-focus:hover,.fd-checkbox.is-success:focus.is-hover,.fd-checkbox.is-success:focus:hover{-webkit-box-shadow:none;box-shadow:none}.fd-checkbox.is-success.is-expanded,.fd-checkbox.is-success[aria-expanded=true]{background:var(--sapField_Focus_Background);-webkit-box-shadow:none;box-shadow:none;outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--fdInput_Success_Outline_Color);outline-offset:var(--fdInput_Outline_Offset)}.fd-checkbox.is-error{background:var(--sapField_InvalidBackgroundStyle);background-color:var(--sapField_InvalidBackground);border:var(--sapField_InvalidColor) var(--sapField_InvalidBorderWidth) var(--sapField_InvalidBorderStyle);-webkit-box-shadow:var(--sapField_InvalidShadow);box-shadow:var(--sapField_InvalidShadow)}.fd-checkbox.is-error.is-hover,.fd-checkbox.is-error:hover{background-color:var(--fdInput_Error_Background_Color_Hover);border-color:var(--sapField_InvalidColor);-webkit-box-shadow:var(--fdInput_Error_Box_Shadow_Hover);box-shadow:var(--fdInput_Error_Box_Shadow_Hover)}.fd-checkbox.is-error.is-focus,.fd-checkbox.is-error:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Error_Outline_Color);z-index:5}.fd-checkbox.is-error.is-focus.is-hover,.fd-checkbox.is-error.is-focus:hover,.fd-checkbox.is-error:focus.is-hover,.fd-checkbox.is-error:focus:hover{-webkit-box-shadow:none;box-shadow:none}.fd-checkbox.is-error.is-expanded,.fd-checkbox.is-error[aria-expanded=true]{background:var(--sapField_Focus_Background);-webkit-box-shadow:none;box-shadow:none;outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--fdInput_Error_Outline_Color);outline-offset:var(--fdInput_Outline_Offset)}.fd-checkbox.is-warning{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle);-webkit-box-shadow:var(--sapField_WarningShadow);box-shadow:var(--sapField_WarningShadow)}.fd-checkbox.is-warning.is-hover,.fd-checkbox.is-warning:hover{background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-checkbox.is-warning.is-focus,.fd-checkbox.is-warning:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-checkbox.is-warning.is-focus.is-hover,.fd-checkbox.is-warning.is-focus:hover,.fd-checkbox.is-warning:focus.is-hover,.fd-checkbox.is-warning:focus:hover{-webkit-box-shadow:none;box-shadow:none}.fd-checkbox.is-warning.is-expanded,.fd-checkbox.is-warning[aria-expanded=true]{background:var(--sapField_Focus_Background);-webkit-box-shadow:none;box-shadow:none;outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--fdInput_Warning_Outline_Color);outline-offset:var(--fdInput_Outline_Offset)}.fd-checkbox.is-alert{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-checkbox.is-alert.is-hover,.fd-checkbox.is-alert:hover{background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-checkbox.is-alert.is-focus,.fd-checkbox.is-alert:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-checkbox.is-alert.is-focus.is-hover,.fd-checkbox.is-alert.is-focus:hover,.fd-checkbox.is-alert:focus.is-hover,.fd-checkbox.is-alert:focus:hover{-webkit-box-shadow:none;box-shadow:none}.fd-checkbox.is-alert.is-expanded,.fd-checkbox.is-alert[aria-expanded=true]{background:var(--sapField_Focus_Background);-webkit-box-shadow:none;box-shadow:none;outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--fdInput_Warning_Outline_Color);outline-offset:var(--fdInput_Outline_Offset)}.fd-checkbox.is-information{background:var(--sapField_InformationBackgroundStyle);background-color:var(--sapField_InformationBackground);border:var(--sapField_InformationColor) var(--sapField_InformationBorderWidth) var(--sapField_InformationBorderStyle);-webkit-box-shadow:var(--sapField_InformationShadow);box-shadow:var(--sapField_InformationShadow)}.fd-checkbox.is-information.is-hover,.fd-checkbox.is-information:hover{background-color:var(--fdInput_Information_Background_Color_Hover);border-color:var(--sapField_InformationColor);-webkit-box-shadow:var(--fdInput_Information_Box_Shadow_Hover);box-shadow:var(--fdInput_Information_Box_Shadow_Hover)}.fd-checkbox.is-information.is-focus,.fd-checkbox.is-information:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Information_Outline_Color);z-index:5}.fd-checkbox.is-information.is-focus.is-hover,.fd-checkbox.is-information.is-focus:hover,.fd-checkbox.is-information:focus.is-hover,.fd-checkbox.is-information:focus:hover{-webkit-box-shadow:none;box-shadow:none}.fd-checkbox.is-information.is-expanded,.fd-checkbox.is-information[aria-expanded=true]{background:var(--sapField_Focus_Background);-webkit-box-shadow:none;box-shadow:none;outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--fdInput_Information_Outline_Color);outline-offset:var(--fdInput_Outline_Offset)}.fd-checkbox.is-alert.is-focus,.fd-checkbox.is-alert:focus,.fd-checkbox.is-error.is-focus,.fd-checkbox.is-error:focus,.fd-checkbox.is-information.is-focus,.fd-checkbox.is-information:focus,.fd-checkbox.is-warning.is-focus,.fd-checkbox.is-warning:focus{outline-offset:var(--fdInput_Outline_Offset_States);z-index:5}.fd-checkbox.is-disabled,.fd-checkbox:disabled,.fd-checkbox[aria-disabled=true]{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}.fd-checkbox.is-readonly,.fd-checkbox.is-readonly.is-focus,.fd-checkbox.is-readonly.is-hover,.fd-checkbox.is-readonly:focus,.fd-checkbox.is-readonly:hover,.fd-checkbox[aria-readonly=true],.fd-checkbox[aria-readonly=true].is-focus,.fd-checkbox[aria-readonly=true].is-hover,.fd-checkbox[aria-readonly=true]:focus,.fd-checkbox[aria-readonly=true]:hover,.fd-checkbox[readonly],.fd-checkbox[readonly].is-focus,.fd-checkbox[readonly].is-hover,.fd-checkbox[readonly]:focus,.fd-checkbox[readonly]:hover{--fdInput_Outline_Offset:-.25rem;background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);-webkit-box-shadow:none;box-shadow:none}.fd-checkbox.is-readonly.is-focus,.fd-checkbox.is-readonly:focus,.fd-checkbox[aria-readonly=true].is-focus,.fd-checkbox[aria-readonly=true]:focus,.fd-checkbox[readonly].is-focus,.fd-checkbox[readonly]:focus{z-index:5}.fd-checkbox,.fd-checkbox.is-error,.fd-checkbox.is-information,.fd-checkbox.is-success,.fd-checkbox.is-warning{border-style:initial}.fd-checkbox__label{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;max-width:100%;overflow:hidden;padding-block:0;padding-inline:0;position:relative;text-overflow:ellipsis;white-space:nowrap;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;-webkit-margin-end:.5rem;cursor:text;margin-inline-end:.5rem;-ms-flex-item-align:start;align-self:flex-start;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:var(--fdCheckbox_Padding);line-height:1rem;margin-block:0;margin-inline:0;padding-block:var(--fdCheckbox_Padding);padding-inline:var(--fdCheckbox_Padding)}.fd-checkbox__label:after,.fd-checkbox__label:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-checkbox__label.is-hover .fd-checkbox__checkmark,.fd-checkbox__label:hover .fd-checkbox__checkmark{background-color:var(--fdCheckbox_Hover_Background_Color);--fdCheckbox_Inner_Border_Width:var(--fdCheckbox_Inner_Border_Width_Default_Hover);--fdCheckbox_Inner_Border_Style:var(--fdCheckbox_Inner_Border_Style_Default_Hover);--fdCheckbox_Inner_Border_Color:var(--fdCheckbox_Inner_Border_Color_Default_Hover);--fdCheckbox_Check_Mark_Color:var(--fdCheckbox_Check_Mark_Color_Default_Hover);--fdCheckbox_Hover_Background_Color:var(--fdCheckbox_Background_Color_Default_Hover)}.fd-checkbox__label:focus{outline:none}.fd-checkbox__label--required .fd-checkbox__text,.fd-checkbox__label[aria-required=true] .fd-checkbox__text{-webkit-padding-end:.5rem;padding-inline-end:.5rem}.fd-checkbox__label--required .fd-checkbox__text:after,.fd-checkbox__label[aria-required=true] .fd-checkbox__text:after{color:var(--sapField_RequiredColor);content:\\\"*\\\"/\\\"\\\";font-size:var(--sapFontSize);font-weight:700;position:absolute;-webkit-padding-start:.125rem;padding-inline-start:.125rem}.fd-checkbox__label--wrap .fd-checkbox__label-container{height:auto;white-space:normal}.fd-checkbox__label--wrap .fd-checkbox__text{white-space:normal}.fd-checkbox__label--wrap-top-aligned{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.fd-checkbox__label--wrap-top-aligned .fd-checkbox__label-container{height:auto;white-space:normal}.fd-checkbox__label--wrap-top-aligned .fd-checkbox__text{white-space:normal}.fd-checkbox__label-container{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:1rem;max-width:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-checkbox__label-container:after,.fd-checkbox__label-container:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-checkbox__text{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;max-width:inherit;overflow:hidden;padding-block:0;padding-inline:0;text-overflow:ellipsis;white-space:nowrap}.fd-checkbox__text:after,.fd-checkbox__text:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-checkbox__checkmark{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:var(--fdCheckbox_Background_Color);border:var(--fdCheckbox_Inner_Border_Width) var(--fdCheckbox_Inner_Border_Style) var(--fdCheckbox_Inner_Border_Color);border-radius:var(--sapField_BorderCornerRadius);color:var(--fdCheckbox_Check_Mark_Color);font-family:SAP-icons;height:var(--fdCheckbox_Dimensions);min-width:var(--fdCheckbox_Dimensions);width:var(--fdCheckbox_Dimensions)}.fd-checkbox__checkmark:after,.fd-checkbox__checkmark:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-checkbox__checkmark:before{content:\\\"\\\"}.fd-checkbox:checked+.fd-checkbox__label .fd-checkbox__checkmark:before{content:\\\"\\\\e05b\\\"}.fd-checkbox:indeterminate+.fd-checkbox__label .fd-checkbox__checkmark:after{background-color:var(--fdCheckbox_Check_Mark_Color);content:\\\"\\\";height:var(--fdCheckbox_Tristate_Size);position:absolute;width:var(--fdCheckbox_Tristate_Size)}.fd-checkbox.is-alert+.fd-checkbox__label .fd-checkbox__checkmark,.fd-checkbox.is-warning+.fd-checkbox__label .fd-checkbox__checkmark{--fdCheckbox_Background_Color:var(--fdCheckbox_Background_Color_Warning);--fdCheckbox_Inner_Border_Width:var(--fdCheckbox_Inner_Border_Width_Warning);--fdCheckbox_Inner_Border_Style:var(--fdCheckbox_Inner_Border_Style_Warning);--fdCheckbox_Inner_Border_Color:var(--fdCheckbox_Inner_Border_Color_Warning);--fdCheckbox_Check_Mark_Color:var(--fdCheckbox_Check_Mark_Color_Warning);--fdCheckbox_Hover_Background_Color:var(--fdCheckbox_Background_Color_Warning_Hover)}.fd-checkbox.is-error+.fd-checkbox__label .fd-checkbox__checkmark{--fdCheckbox_Background_Color:var(--fdCheckbox_Background_Color_Error);--fdCheckbox_Inner_Border_Width:var(--fdCheckbox_Inner_Border_Width_Error);--fdCheckbox_Inner_Border_Style:var(--fdCheckbox_Inner_Border_Style_Error);--fdCheckbox_Inner_Border_Color:var(--fdCheckbox_Inner_Border_Color_Error);--fdCheckbox_Check_Mark_Color:var(--fdCheckbox_Check_Mark_Color_Error);--fdCheckbox_Hover_Background_Color:var(--fdCheckbox_Background_Color_Error_Hover)}.fd-checkbox.is-success+.fd-checkbox__label .fd-checkbox__checkmark{--fdCheckbox_Background_Color:var(--fdCheckbox_Background_Color_Success);--fdCheckbox_Inner_Border_Width:var(--fdCheckbox_Inner_Border_Width_Success);--fdCheckbox_Inner_Border_Style:var(--fdCheckbox_Inner_Border_Style_Success);--fdCheckbox_Inner_Border_Color:var(--fdCheckbox_Inner_Border_Color_Success);--fdCheckbox_Check_Mark_Color:var(--fdCheckbox_Check_Mark_Color_Success);--fdCheckbox_Hover_Background_Color:var(--fdCheckbox_Background_Color_Success_Hover)}.fd-checkbox.is-information+.fd-checkbox__label .fd-checkbox__checkmark{--fdCheckbox_Background_Color:var(--fdCheckbox_Background_Color_Information);--fdCheckbox_Inner_Border_Width:var(--fdCheckbox_Inner_Border_Width_Information);--fdCheckbox_Inner_Border_Style:var(--fdCheckbox_Inner_Border_Style_Information);--fdCheckbox_Inner_Border_Color:var(--fdCheckbox_Inner_Border_Color_Information);--fdCheckbox_Check_Mark_Color:var(--fdCheckbox_Check_Mark_Color_Information);--fdCheckbox_Hover_Background_Color:var(--fdCheckbox_Background_Color_Information_Hover)}.fd-checkbox.is-readonly+.fd-checkbox__label .fd-checkbox__checkmark,.fd-checkbox[readonly]+.fd-checkbox__label .fd-checkbox__checkmark{--fdCheckbox_Background_Color:var(--fdCheckbox_Background_Color_ReadOnly);--fdCheckbox_Inner_Border_Width:var(--fdCheckbox_Inner_Border_Width_ReadOnly);--fdCheckbox_Inner_Border_Style:var(--fdCheckbox_Inner_Border_Style_ReadOnly);--fdCheckbox_Inner_Border_Color:var(--fdCheckbox_Inner_Border_Color_ReadOnly);--fdCheckbox_Check_Mark_Color:var(--fdCheckbox_Check_Mark_Color_ReadOnly);--fdCheckbox_Hover_Background_Color:var(--fdCheckbox_Background_Color_ReadOnly)}.fd-checkbox.is-display+.fd-checkbox__label{--fdCheckbox_Check_Mark_Color:var(--sapTextColor);gap:.5rem}.fd-checkbox.is-display+.fd-checkbox__label.is-hover .fd-checkbox__checkmark,.fd-checkbox.is-display+.fd-checkbox__label:hover .fd-checkbox__checkmark{--fdCheckbox_Check_Mark_Color:var(--sapTextColor);--fdCheckbox_Hover_Background_Color:transparent}.fd-checkbox.is-display+.fd-checkbox__label .fd-checkbox__checkmark{--fdCheckbox_Background_Color:transparent;--fdCheckbox_Dimensions:1rem;border:none}.fd-checkbox.is-display+.fd-checkbox__label .fd-checkbox__checkmark:before{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;content:\\\"\\\\e19a\\\";font-size:1rem;height:1rem;max-height:1rem;max-width:1rem;min-height:1rem;min-width:1rem;width:1rem}.fd-checkbox.is-display:checked+.fd-checkbox__label .fd-checkbox__checkmark:before{content:\\\"\\\\e03f\\\";font-size:1rem}.fd-checkbox.is-display:indeterminate+.fd-checkbox__label .fd-checkbox__checkmark:before{content:\\\"\\\\e295\\\";font-size:1rem}.fd-checkbox.is-display:indeterminate+.fd-checkbox__label .fd-checkbox__checkmark:after{content:\\\"\\\";height:0;width:0}.fd-checkbox.is-focus,.fd-checkbox:focus{z-index:5}.fd-checkbox.is-focus+.fd-checkbox__label,.fd-checkbox:focus+.fd-checkbox__label{border-radius:var(--fdCheckbox_Outline_Border_Radius);outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);outline-offset:calc(var(--fdCheckbox_Focus_Outline_Offset) - var(--fdCheckbox_Padding))}.fd-checkbox.is-disabled,.fd-checkbox:disabled,.fd-checkbox[aria-disabled=true]{opacity:.0001}.fd-checkbox.is-disabled+.fd-checkbox__label,.fd-checkbox:disabled+.fd-checkbox__label,.fd-checkbox[aria-disabled=true]+.fd-checkbox__label{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}.fd-checkbox[class*=-compact]+.fd-checkbox__label,.fd-checkbox[class*=-condensed]+.fd-checkbox__label,[class*=-compact] .fd-checkbox:not([class*=-cozy])+.fd-checkbox__label,[class*=-condensed] .fd-checkbox:not([class*=-cozy])+.fd-checkbox__label{--fdCheckbox_Dimensions:var(--fdCheckbox_Compact_Dimensions);--fdCheckbox_Padding:var(--fdCheckbox_Compact_Padding)}.fd-checkbox[class*=-compact]:indeterminate+.fd-checkbox__label,.fd-checkbox[class*=-condensed]:indeterminate+.fd-checkbox__label,[class*=-compact] .fd-checkbox:not([class*=-cozy]):indeterminate+.fd-checkbox__label,[class*=-condensed] .fd-checkbox:not([class*=-cozy]):indeterminate+.fd-checkbox__label{--fdCheckbox_Tristate_Size:var(--fdCheckbox_Tristate_Compact_Size);--fdCheckbox_Tristate_Offset:var(--fdCheckbox_Tristate_Compact_Offset)}.fd-checkbox[class*=-compact].is-focus,.fd-checkbox[class*=-compact]:focus,.fd-checkbox[class*=-condensed].is-focus,.fd-checkbox[class*=-condensed]:focus,[class*=-compact] .fd-checkbox:not([class*=-cozy]).is-focus,[class*=-compact] .fd-checkbox:not([class*=-cozy]):focus,[class*=-condensed] .fd-checkbox:not([class*=-cozy]).is-focus,[class*=-condensed] .fd-checkbox:not([class*=-cozy]):focus{z-index:5}.fd-checkbox[class*=-compact].is-focus+.fd-checkbox__label,.fd-checkbox[class*=-compact]:focus+.fd-checkbox__label,.fd-checkbox[class*=-condensed].is-focus+.fd-checkbox__label,.fd-checkbox[class*=-condensed]:focus+.fd-checkbox__label,[class*=-compact] .fd-checkbox:not([class*=-cozy]).is-focus+.fd-checkbox__label,[class*=-compact] .fd-checkbox:not([class*=-cozy]):focus+.fd-checkbox__label,[class*=-condensed] .fd-checkbox:not([class*=-cozy]).is-focus+.fd-checkbox__label,[class*=-condensed] .fd-checkbox:not([class*=-cozy]):focus+.fd-checkbox__label{--fdCheckbox_Outline_Border_Radius:var(--fdCheckbox_Compact_Outline_Border_Radius)}.fd-col,.fd-container,.fd-row{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-col:after,.fd-col:before,.fd-container:after,.fd-container:before,.fd-row:after,.fd-row:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-container{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;padding-block:0;padding-inline:.25rem;position:relative}.fd-container .fd-row{margin-inline:-.25rem;min-width:calc(100% + .5rem)}.fd-container>.fd-row>.fd-col{padding-block:.25rem}.fd-container.fd-container--no-gap .fd-row,.fd-container.fd-container--no-horizontal-gap .fd-row{margin-inline:0}.fd-container.fd-container--no-gap .fd-row .fd-col,.fd-container.fd-container--no-horizontal-gap .fd-row .fd-col{padding-inline:0}.fd-container.fd-container--no-gap>.fd-row>.fd-col,.fd-container.fd-container--no-vertical-gap>.fd-row>.fd-col{padding-block:0}.fd-container[dir=rtl],[dir=rtl] .fd-container{direction:rtl}.fd-row{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;min-width:100%;position:relative}.fd-col{max-width:100%;min-width:100%;padding-inline:.25rem}.fd-col--0{max-width:0;min-width:0%}.fd-col--offset-0{-webkit-margin-start:0;margin-inline-start:0}.fd-col--offset-after-0{-webkit-margin-end:0;margin-inline-end:0}.fd-col--1{max-width:8.3333333333%;min-width:8.3333333333%}.fd-col--offset-1{-webkit-margin-start:8.3333333333%;margin-inline-start:8.3333333333%}.fd-col--offset-after-1{-webkit-margin-end:8.3333333333%;margin-inline-end:8.3333333333%}.fd-col--2{max-width:16.6666666667%;min-width:16.6666666667%}.fd-col--offset-2{-webkit-margin-start:16.6666666667%;margin-inline-start:16.6666666667%}.fd-col--offset-after-2{-webkit-margin-end:16.6666666667%;margin-inline-end:16.6666666667%}.fd-col--3{max-width:25%;min-width:25%}.fd-col--offset-3{-webkit-margin-start:25%;margin-inline-start:25%}.fd-col--offset-after-3{-webkit-margin-end:25%;margin-inline-end:25%}.fd-col--4{max-width:33.3333333333%;min-width:33.3333333333%}.fd-col--offset-4{-webkit-margin-start:33.3333333333%;margin-inline-start:33.3333333333%}.fd-col--offset-after-4{-webkit-margin-end:33.3333333333%;margin-inline-end:33.3333333333%}.fd-col--5{max-width:41.6666666667%;min-width:41.6666666667%}.fd-col--offset-5{-webkit-margin-start:41.6666666667%;margin-inline-start:41.6666666667%}.fd-col--offset-after-5{-webkit-margin-end:41.6666666667%;margin-inline-end:41.6666666667%}.fd-col--6{max-width:50%;min-width:50%}.fd-col--offset-6{-webkit-margin-start:50%;margin-inline-start:50%}.fd-col--offset-after-6{-webkit-margin-end:50%;margin-inline-end:50%}.fd-col--7{max-width:58.3333333333%;min-width:58.3333333333%}.fd-col--offset-7{-webkit-margin-start:58.3333333333%;margin-inline-start:58.3333333333%}.fd-col--offset-after-7{-webkit-margin-end:58.3333333333%;margin-inline-end:58.3333333333%}.fd-col--8{max-width:66.6666666667%;min-width:66.6666666667%}.fd-col--offset-8{-webkit-margin-start:66.6666666667%;margin-inline-start:66.6666666667%}.fd-col--offset-after-8{-webkit-margin-end:66.6666666667%;margin-inline-end:66.6666666667%}.fd-col--9{max-width:75%;min-width:75%}.fd-col--offset-9{-webkit-margin-start:75%;margin-inline-start:75%}.fd-col--offset-after-9{-webkit-margin-end:75%;margin-inline-end:75%}.fd-col--10{max-width:83.3333333333%;min-width:83.3333333333%}.fd-col--offset-10{-webkit-margin-start:83.3333333333%;margin-inline-start:83.3333333333%}.fd-col--offset-after-10{-webkit-margin-end:83.3333333333%;margin-inline-end:83.3333333333%}.fd-col--11{max-width:91.6666666667%;min-width:91.6666666667%}.fd-col--offset-11{-webkit-margin-start:91.6666666667%;margin-inline-start:91.6666666667%}.fd-col--offset-after-11{-webkit-margin-end:91.6666666667%;margin-inline-end:91.6666666667%}.fd-col--12{max-width:100%;min-width:100%}.fd-col--offset-12{-webkit-margin-start:100%;margin-inline-start:100%}.fd-col--offset-after-12{-webkit-margin-end:100%;margin-inline-end:100%}.fd-col--full{max-width:none;min-width:8.3333333333%;-webkit-box-flex:1;-ms-flex:1;flex:1}.fd-col--wrap{-ms-flex-wrap:wrap;flex-wrap:wrap}@media(min-width:600px){.fd-container{padding-block:0;padding-inline:.5rem}.fd-container .fd-row{margin-inline:-.5rem;min-width:calc(100% + 1rem)}.fd-container>.fd-row>.fd-col{padding-block:.5rem}.fd-col{padding-inline:.5rem}.fd-col-md--0{max-width:0;min-width:0%}.fd-col-md--offset-0{-webkit-margin-start:0;margin-inline-start:0}.fd-col-md--offset-after-0{-webkit-margin-end:0;margin-inline-end:0}.fd-col-md--1{max-width:8.3333333333%;min-width:8.3333333333%}.fd-col-md--offset-1{-webkit-margin-start:8.3333333333%;margin-inline-start:8.3333333333%}.fd-col-md--offset-after-1{-webkit-margin-end:8.3333333333%;margin-inline-end:8.3333333333%}.fd-col-md--2{max-width:16.6666666667%;min-width:16.6666666667%}.fd-col-md--offset-2{-webkit-margin-start:16.6666666667%;margin-inline-start:16.6666666667%}.fd-col-md--offset-after-2{-webkit-margin-end:16.6666666667%;margin-inline-end:16.6666666667%}.fd-col-md--3{max-width:25%;min-width:25%}.fd-col-md--offset-3{-webkit-margin-start:25%;margin-inline-start:25%}.fd-col-md--offset-after-3{-webkit-margin-end:25%;margin-inline-end:25%}.fd-col-md--4{max-width:33.3333333333%;min-width:33.3333333333%}.fd-col-md--offset-4{-webkit-margin-start:33.3333333333%;margin-inline-start:33.3333333333%}.fd-col-md--offset-after-4{-webkit-margin-end:33.3333333333%;margin-inline-end:33.3333333333%}.fd-col-md--5{max-width:41.6666666667%;min-width:41.6666666667%}.fd-col-md--offset-5{-webkit-margin-start:41.6666666667%;margin-inline-start:41.6666666667%}.fd-col-md--offset-after-5{-webkit-margin-end:41.6666666667%;margin-inline-end:41.6666666667%}.fd-col-md--6{max-width:50%;min-width:50%}.fd-col-md--offset-6{-webkit-margin-start:50%;margin-inline-start:50%}.fd-col-md--offset-after-6{-webkit-margin-end:50%;margin-inline-end:50%}.fd-col-md--7{max-width:58.3333333333%;min-width:58.3333333333%}.fd-col-md--offset-7{-webkit-margin-start:58.3333333333%;margin-inline-start:58.3333333333%}.fd-col-md--offset-after-7{-webkit-margin-end:58.3333333333%;margin-inline-end:58.3333333333%}.fd-col-md--8{max-width:66.6666666667%;min-width:66.6666666667%}.fd-col-md--offset-8{-webkit-margin-start:66.6666666667%;margin-inline-start:66.6666666667%}.fd-col-md--offset-after-8{-webkit-margin-end:66.6666666667%;margin-inline-end:66.6666666667%}.fd-col-md--9{max-width:75%;min-width:75%}.fd-col-md--offset-9{-webkit-margin-start:75%;margin-inline-start:75%}.fd-col-md--offset-after-9{-webkit-margin-end:75%;margin-inline-end:75%}.fd-col-md--10{max-width:83.3333333333%;min-width:83.3333333333%}.fd-col-md--offset-10{-webkit-margin-start:83.3333333333%;margin-inline-start:83.3333333333%}.fd-col-md--offset-after-10{-webkit-margin-end:83.3333333333%;margin-inline-end:83.3333333333%}.fd-col-md--11{max-width:91.6666666667%;min-width:91.6666666667%}.fd-col-md--offset-11{-webkit-margin-start:91.6666666667%;margin-inline-start:91.6666666667%}.fd-col-md--offset-after-11{-webkit-margin-end:91.6666666667%;margin-inline-end:91.6666666667%}.fd-col-md--12{max-width:100%;min-width:100%}.fd-col-md--offset-12{-webkit-margin-start:100%;margin-inline-start:100%}.fd-col-md--offset-after-12{-webkit-margin-end:100%;margin-inline-end:100%}}@media(min-width:1024px){.fd-col-lg--0{max-width:0;min-width:0%}.fd-col-lg--offset-0{-webkit-margin-start:0;margin-inline-start:0}.fd-col-lg--offset-after-0{-webkit-margin-end:0;margin-inline-end:0}.fd-col-lg--1{max-width:8.3333333333%;min-width:8.3333333333%}.fd-col-lg--offset-1{-webkit-margin-start:8.3333333333%;margin-inline-start:8.3333333333%}.fd-col-lg--offset-after-1{-webkit-margin-end:8.3333333333%;margin-inline-end:8.3333333333%}.fd-col-lg--2{max-width:16.6666666667%;min-width:16.6666666667%}.fd-col-lg--offset-2{-webkit-margin-start:16.6666666667%;margin-inline-start:16.6666666667%}.fd-col-lg--offset-after-2{-webkit-margin-end:16.6666666667%;margin-inline-end:16.6666666667%}.fd-col-lg--3{max-width:25%;min-width:25%}.fd-col-lg--offset-3{-webkit-margin-start:25%;margin-inline-start:25%}.fd-col-lg--offset-after-3{-webkit-margin-end:25%;margin-inline-end:25%}.fd-col-lg--4{max-width:33.3333333333%;min-width:33.3333333333%}.fd-col-lg--offset-4{-webkit-margin-start:33.3333333333%;margin-inline-start:33.3333333333%}.fd-col-lg--offset-after-4{-webkit-margin-end:33.3333333333%;margin-inline-end:33.3333333333%}.fd-col-lg--5{max-width:41.6666666667%;min-width:41.6666666667%}.fd-col-lg--offset-5{-webkit-margin-start:41.6666666667%;margin-inline-start:41.6666666667%}.fd-col-lg--offset-after-5{-webkit-margin-end:41.6666666667%;margin-inline-end:41.6666666667%}.fd-col-lg--6{max-width:50%;min-width:50%}.fd-col-lg--offset-6{-webkit-margin-start:50%;margin-inline-start:50%}.fd-col-lg--offset-after-6{-webkit-margin-end:50%;margin-inline-end:50%}.fd-col-lg--7{max-width:58.3333333333%;min-width:58.3333333333%}.fd-col-lg--offset-7{-webkit-margin-start:58.3333333333%;margin-inline-start:58.3333333333%}.fd-col-lg--offset-after-7{-webkit-margin-end:58.3333333333%;margin-inline-end:58.3333333333%}.fd-col-lg--8{max-width:66.6666666667%;min-width:66.6666666667%}.fd-col-lg--offset-8{-webkit-margin-start:66.6666666667%;margin-inline-start:66.6666666667%}.fd-col-lg--offset-after-8{-webkit-margin-end:66.6666666667%;margin-inline-end:66.6666666667%}.fd-col-lg--9{max-width:75%;min-width:75%}.fd-col-lg--offset-9{-webkit-margin-start:75%;margin-inline-start:75%}.fd-col-lg--offset-after-9{-webkit-margin-end:75%;margin-inline-end:75%}.fd-col-lg--10{max-width:83.3333333333%;min-width:83.3333333333%}.fd-col-lg--offset-10{-webkit-margin-start:83.3333333333%;margin-inline-start:83.3333333333%}.fd-col-lg--offset-after-10{-webkit-margin-end:83.3333333333%;margin-inline-end:83.3333333333%}.fd-col-lg--11{max-width:91.6666666667%;min-width:91.6666666667%}.fd-col-lg--offset-11{-webkit-margin-start:91.6666666667%;margin-inline-start:91.6666666667%}.fd-col-lg--offset-after-11{-webkit-margin-end:91.6666666667%;margin-inline-end:91.6666666667%}.fd-col-lg--12{max-width:100%;min-width:100%}.fd-col-lg--offset-12{-webkit-margin-start:100%;margin-inline-start:100%}.fd-col-lg--offset-after-12{-webkit-margin-end:100%;margin-inline-end:100%}}@media(min-width:1440px){.fd-col-xl--0{max-width:0;min-width:0%}.fd-col-xl--offset-0{-webkit-margin-start:0;margin-inline-start:0}.fd-col-xl--offset-after-0{-webkit-margin-end:0;margin-inline-end:0}.fd-col-xl--1{max-width:8.3333333333%;min-width:8.3333333333%}.fd-col-xl--offset-1{-webkit-margin-start:8.3333333333%;margin-inline-start:8.3333333333%}.fd-col-xl--offset-after-1{-webkit-margin-end:8.3333333333%;margin-inline-end:8.3333333333%}.fd-col-xl--2{max-width:16.6666666667%;min-width:16.6666666667%}.fd-col-xl--offset-2{-webkit-margin-start:16.6666666667%;margin-inline-start:16.6666666667%}.fd-col-xl--offset-after-2{-webkit-margin-end:16.6666666667%;margin-inline-end:16.6666666667%}.fd-col-xl--3{max-width:25%;min-width:25%}.fd-col-xl--offset-3{-webkit-margin-start:25%;margin-inline-start:25%}.fd-col-xl--offset-after-3{-webkit-margin-end:25%;margin-inline-end:25%}.fd-col-xl--4{max-width:33.3333333333%;min-width:33.3333333333%}.fd-col-xl--offset-4{-webkit-margin-start:33.3333333333%;margin-inline-start:33.3333333333%}.fd-col-xl--offset-after-4{-webkit-margin-end:33.3333333333%;margin-inline-end:33.3333333333%}.fd-col-xl--5{max-width:41.6666666667%;min-width:41.6666666667%}.fd-col-xl--offset-5{-webkit-margin-start:41.6666666667%;margin-inline-start:41.6666666667%}.fd-col-xl--offset-after-5{-webkit-margin-end:41.6666666667%;margin-inline-end:41.6666666667%}.fd-col-xl--6{max-width:50%;min-width:50%}.fd-col-xl--offset-6{-webkit-margin-start:50%;margin-inline-start:50%}.fd-col-xl--offset-after-6{-webkit-margin-end:50%;margin-inline-end:50%}.fd-col-xl--7{max-width:58.3333333333%;min-width:58.3333333333%}.fd-col-xl--offset-7{-webkit-margin-start:58.3333333333%;margin-inline-start:58.3333333333%}.fd-col-xl--offset-after-7{-webkit-margin-end:58.3333333333%;margin-inline-end:58.3333333333%}.fd-col-xl--8{max-width:66.6666666667%;min-width:66.6666666667%}.fd-col-xl--offset-8{-webkit-margin-start:66.6666666667%;margin-inline-start:66.6666666667%}.fd-col-xl--offset-after-8{-webkit-margin-end:66.6666666667%;margin-inline-end:66.6666666667%}.fd-col-xl--9{max-width:75%;min-width:75%}.fd-col-xl--offset-9{-webkit-margin-start:75%;margin-inline-start:75%}.fd-col-xl--offset-after-9{-webkit-margin-end:75%;margin-inline-end:75%}.fd-col-xl--10{max-width:83.3333333333%;min-width:83.3333333333%}.fd-col-xl--offset-10{-webkit-margin-start:83.3333333333%;margin-inline-start:83.3333333333%}.fd-col-xl--offset-after-10{-webkit-margin-end:83.3333333333%;margin-inline-end:83.3333333333%}.fd-col-xl--11{max-width:91.6666666667%;min-width:91.6666666667%}.fd-col-xl--offset-11{-webkit-margin-start:91.6666666667%;margin-inline-start:91.6666666667%}.fd-col-xl--offset-after-11{-webkit-margin-end:91.6666666667%;margin-inline-end:91.6666666667%}.fd-col-xl--12{max-width:100%;min-width:100%}.fd-col-xl--offset-12{-webkit-margin-start:100%;margin-inline-start:100%}.fd-col-xl--offset-after-12{-webkit-margin-end:100%;margin-inline-end:100%}}.fd-grid-list{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-grid-list:after,.fd-grid-list:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list .fd-grid-list__radio-input{height:1rem;width:1rem}.fd-grid-list .fd-grid-list__radio-input+.fd-grid-list__radio-label.is-empty,.fd-grid-list .fd-grid-list__radio-input+.fd-grid-list__radio-label:empty{-ms-flex-item-align:center;align-self:center}.fd-grid-list .fd-grid-list__checkbox-input{height:1rem;width:1rem}.fd-grid-list .fd-grid-list__checkbox-input+.fd-grid-list__checkbox-label.is-empty,.fd-grid-list .fd-grid-list__checkbox-input+.fd-grid-list__checkbox-label:empty{-ms-flex-item-align:center;align-self:center}.fd-grid-list .fd-grid-list__item{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:vertical;-webkit-box-direction:normal;background-color:var(--sapList_Background);border-radius:var(--fdGrid_List_Item_Border_Radius);-webkit-box-shadow:var(--sapContent_Shadow0);box-shadow:var(--sapContent_Shadow0);color:var(--sapList_TextColor);-ms-flex-direction:column;flex-direction:column;height:100%;outline:none;overflow:hidden;position:relative}.fd-grid-list .fd-grid-list__item:after,.fd-grid-list .fd-grid-list__item:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list .fd-grid-list__item.is-focus,.fd-grid-list .fd-grid-list__item:focus{z-index:5}.fd-grid-list .fd-grid-list__item.is-focus:before,.fd-grid-list .fd-grid-list__item:focus:before{border:var(--fdGrid_List_Item_Focus_Border);border-radius:var(--fdGrid_List_Item_Border_Radius);-webkit-box-shadow:var(--fdGrid_List_Item_Focus_Box_Shadow);box-shadow:var(--fdGrid_List_Item_Focus_Box_Shadow);content:\\\"\\\";display:block;inset:var(--fdGrid_List_Item_Focus_Outline_Offset);pointer-events:none;position:absolute;z-index:1}.fd-grid-list .fd-grid-list__item--height-auto{height:auto}.fd-grid-list .fd-grid-list__item--unread .fd-grid-list__item-body *{font-weight:700}.fd-grid-list .fd-grid-list__item--link{cursor:pointer}.fd-grid-list .fd-grid-list__item--link.is-hover,.fd-grid-list .fd-grid-list__item--link:hover{background-color:var(--sapList_Hover_Background);-webkit-box-shadow:0 0 0 .0625rem var(--fdGrid_List_Item_Hover_Border_Color),var(--sapContent_Shadow2);box-shadow:0 0 0 .0625rem var(--fdGrid_List_Item_Hover_Border_Color),var(--sapContent_Shadow2)}.fd-grid-list .fd-grid-list__item--link.is-active:not([aria-selected=true],.is-selected),.fd-grid-list .fd-grid-list__item--link:active:not([aria-selected=true],.is-selected){background-color:var(--sapList_Active_Background)}.fd-grid-list .fd-grid-list__item--link.is-active:not([aria-selected=true],.is-selected) *,.fd-grid-list .fd-grid-list__item--link:active:not([aria-selected=true],.is-selected) *{color:var(--sapList_Active_TextColor)!important;text-shadow:none!important}.fd-grid-list .fd-grid-list__item--link.is-selected,.fd-grid-list .fd-grid-list__item--link[aria-selected=true]{background-color:var(--sapList_SelectionBackgroundColor);-webkit-box-shadow:0 0 0 .125rem var(--sapList_SelectionBorderColor);box-shadow:0 0 0 .125rem var(--sapList_SelectionBorderColor)}.fd-grid-list .fd-grid-list__item--link.is-selected.is-hover,.fd-grid-list .fd-grid-list__item--link.is-selected:hover,.fd-grid-list .fd-grid-list__item--link[aria-selected=true].is-hover,.fd-grid-list .fd-grid-list__item--link[aria-selected=true]:hover{background-color:var(--sapList_Hover_SelectionBackground)}.fd-grid-list .fd-grid-list__item--link.is-navigated:after{background-color:var(--sapList_SelectionBorderColor);border-radius:0 var(--fdGrid_List_Item_Border_Radius) var(--fdGrid_List_Item_Border_Radius) 0;content:\\\"\\\";display:block;height:100%;position:absolute;right:0;top:0;width:.1875rem}.fd-grid-list .fd-grid-list__item--link.is-selected:before,.fd-grid-list .fd-grid-list__item--link[aria-selected=true]:before{border-color:var(--sapList_SelectionBackgroundColor)}.fd-grid-list .fd-grid-list__item-toolbar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;--fdToolbar_Padding_Left:1rem;--fdToolbar_Padding_Right:1rem;--fdToolbar_Background:transparent;-ms-flex-negative:0;border:none;-webkit-box-shadow:var(--fdGrid_List_Item_Toolbar_Shadow);box-shadow:var(--fdGrid_List_Item_Toolbar_Shadow);flex-shrink:0}.fd-grid-list .fd-grid-list__item-body{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;height:100%;padding-block:1rem;padding-inline:1rem;word-break:break-word}.fd-grid-list .fd-grid-list__item-body:after,.fd-grid-list .fd-grid-list__item-body:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list .fd-grid-list__item-body--no-padding{padding-block:0;padding-inline:0}.fd-grid-list .fd-grid-list__item-body-actions{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-margin-before:1rem;margin-block-start:1rem;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-grid-list .fd-grid-list__item-body-actions:after,.fd-grid-list .fd-grid-list__item-body-actions:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list .fd-grid-list__item-header{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%}.fd-grid-list .fd-grid-list__item-header:after,.fd-grid-list .fd-grid-list__item-header:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list .fd-grid-list__item-header+.fd-grid-list__item-content{-webkit-padding-before:1rem;padding-block-start:1rem}.fd-grid-list .fd-grid-list__item-image{-webkit-margin-end:.75rem;margin-inline-end:.75rem}.fd-grid-list .fd-grid-list__item-image+.fd-grid-list__item-content,.fd-grid-list .fd-grid-list__item-image+.fd-grid-list__item-header{max-width:calc(100% - 3.75rem)}.fd-grid-list .fd-grid-list__item-title{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapList_TextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontLargeSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;white-space:normal;-webkit-margin-before:.125rem;margin-block-start:.125rem}.fd-grid-list .fd-grid-list__item-title:after,.fd-grid-list .fd-grid-list__item-title:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list .fd-grid-list__item-subtitle{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);display:inline-block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-block:.5rem .125rem;margin-inline:0;padding-block:0;padding-inline:0}.fd-grid-list .fd-grid-list__item-subtitle:after,.fd-grid-list .fd-grid-list__item-subtitle:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list .fd-grid-list__item-content{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapList_TextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;width:100%}.fd-grid-list .fd-grid-list__item-content:after,.fd-grid-list .fd-grid-list__item-content:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list .fd-grid-list__item-counter{color:var(--sapContent_MarkerTextColor)}.fd-grid-list .fd-grid-list__item .fd-grid-list__item-navigation-indicator{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:var(--sapContent_NonInteractiveIconColor);margin-inline:0 -1rem;width:2.5rem}.fd-grid-list .fd-grid-list__item .fd-grid-list__item-navigation-indicator[dir=rtl],[dir=rtl] .fd-grid-list .fd-grid-list__item .fd-grid-list__item-navigation-indicator{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fd-grid-list__group-header{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-margin-before:.75rem;color:var(--sapList_GroupHeaderTextColo);font-size:var(--sapFontHeader5Size);font-weight:700;line-height:2rem;margin-block-start:.75rem}.fd-grid-list__group-header:after,.fd-grid-list__group-header:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list__group-header.is-focus,.fd-grid-list__group-header:focus{outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth);outline-offset:-.1875rem}.fd-grid-list__group-header--no-margin{-webkit-margin-before:0;margin-block-start:0}.fd-grid-list__more{background-color:var(--sapGroup_ContentBackground);border:0;border-radius:var(--fdGrid_List_Item_Border_Radius);-webkit-box-shadow:var(--sapContent_Shadow0);box-shadow:var(--sapContent_Shadow0);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-block:.813rem;padding-inline:0;padding-inline:.813rem;text-align:center}.fd-grid-list__more:after,.fd-grid-list__more:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list__more.is-focus,.fd-grid-list__more:focus{outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth);outline-offset:-.1875rem}.fd-grid-list__more-title{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;font-weight:700;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-grid-list__more-title:after,.fd-grid-list__more-title:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list__more-description{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-block:.813rem 0;margin-inline:0;padding-block:0;padding-inline:0}.fd-grid-list__more-description:after,.fd-grid-list__more-description:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list__more-description,.fd-grid-list__more-title{color:var(--sapLink_Visited_Color)}.fd-grid-list__more.is-hover,.fd-grid-list__more:hover{background-color:var(--sapList_Hover_Background)}.fd-grid-list__more.is-active,.fd-grid-list__more:active{background-color:var(--sapList_Active_Background)}.fd-grid-list__more.is-active-description,.fd-grid-list__more.is-active-title,.fd-grid-list__more:active-description,.fd-grid-list__more:active-title{color:var(--sapList_Active_TextColor)}.fd-grid-list__footer{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapList_FooterTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-grid-list__footer:after,.fd-grid-list__footer:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list__footer.is-focus,.fd-grid-list__footer:focus{outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth)}.fd-grid-list__highlight{border:0;border-radius:var(--fdGrid_List_Item_Border_Radius) 0 0 var(--fdGrid_List_Item_Border_Radius);bottom:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;left:0;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;position:absolute;top:0;width:.375rem}.fd-grid-list__highlight:after,.fd-grid-list__highlight:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list__highlight[dir=rtl],[dir=rtl] .fd-grid-list__highlight{right:0}.fd-grid-list__highlight--positive{background-color:var(--sapSuccessBorderColor)}.fd-grid-list__highlight--negative{background-color:var(--sapErrorBorderColor)}.fd-grid-list__highlight--critical{background-color:var(--sapWarningBorderColor)}.fd-grid-list__highlight--neutral{background-color:var(--sapNeutralBorderColor)}.fd-grid-list--mode-multi-select .fd-grid-list__item .fd-grid-list__checkbox-label,.fd-grid-list--mode-multi-select .fd-grid-list__item .fd-grid-list__radio-label,.fd-grid-list--mode-single-select-left .fd-grid-list__item .fd-grid-list__checkbox-label,.fd-grid-list--mode-single-select-left .fd-grid-list__item .fd-grid-list__radio-label,.fd-grid-list--mode-single-select-right .fd-grid-list__item .fd-grid-list__checkbox-label,.fd-grid-list--mode-single-select-right .fd-grid-list__item .fd-grid-list__radio-label{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;color:var(--sapContent_LabelColor);-ms-flex-direction:row;flex-direction:row}.fd-grid-list--mode-multi-select .fd-grid-list__item .fd-grid-list__checkbox-label.is-empty,.fd-grid-list--mode-multi-select .fd-grid-list__item .fd-grid-list__checkbox-label:empty,.fd-grid-list--mode-multi-select .fd-grid-list__item .fd-grid-list__radio-label.is-empty,.fd-grid-list--mode-multi-select .fd-grid-list__item .fd-grid-list__radio-label:empty,.fd-grid-list--mode-single-select-left .fd-grid-list__item .fd-grid-list__checkbox-label.is-empty,.fd-grid-list--mode-single-select-left .fd-grid-list__item .fd-grid-list__checkbox-label:empty,.fd-grid-list--mode-single-select-left .fd-grid-list__item .fd-grid-list__radio-label.is-empty,.fd-grid-list--mode-single-select-left .fd-grid-list__item .fd-grid-list__radio-label:empty,.fd-grid-list--mode-single-select-right .fd-grid-list__item .fd-grid-list__checkbox-label.is-empty,.fd-grid-list--mode-single-select-right .fd-grid-list__item .fd-grid-list__checkbox-label:empty,.fd-grid-list--mode-single-select-right .fd-grid-list__item .fd-grid-list__radio-label.is-empty,.fd-grid-list--mode-single-select-right .fd-grid-list__item .fd-grid-list__radio-label:empty{-webkit-margin-start:-.5rem;margin-inline-start:-.5rem}.fd-grid-list--mode-single-select .fd-grid-list__item{cursor:pointer}.fd-grid-list--mode-single-select .fd-grid-list__item.is-hover,.fd-grid-list--mode-single-select .fd-grid-list__item:hover{background-color:var(--sapList_Hover_Background);-webkit-box-shadow:0 0 0 .0625rem var(--fdGrid_List_Item_Hover_Border_Color),var(--sapContent_Shadow2);box-shadow:0 0 0 .0625rem var(--fdGrid_List_Item_Hover_Border_Color),var(--sapContent_Shadow2)}.fd-grid-list--mode-single-select .fd-grid-list__item.is-selected,.fd-grid-list--mode-single-select .fd-grid-list__item[aria-selected=true]{background-color:var(--sapList_SelectionBackgroundColor);-webkit-box-shadow:0 0 0 .125rem var(--sapList_SelectionBorderColor);box-shadow:0 0 0 .125rem var(--sapList_SelectionBorderColor)}.fd-grid-list--mode-single-select .fd-grid-list__item.is-selected.is-hover,.fd-grid-list--mode-single-select .fd-grid-list__item.is-selected:hover,.fd-grid-list--mode-single-select .fd-grid-list__item[aria-selected=true].is-hover,.fd-grid-list--mode-single-select .fd-grid-list__item[aria-selected=true]:hover{background-color:var(--sapList_Hover_SelectionBackground)}.fd-grid-list--mode-single-select .fd-grid-list__item .fd-grid-list__radio-input{height:100%;width:100%;z-index:-1}.fd-grid-list--mode-single-select .fd-grid-list__item .fd-grid-list__radio-label{display:none}.fd-grid-list--mode-single-select .fd-grid-list__item.is-selected:before,.fd-grid-list--mode-single-select .fd-grid-list__item[aria-selected=true]:before{border-color:var(--sapList_SelectionBackgroundColor)}.fd-grid-list--mode-single-select-right .fd-grid-list__item .fd-grid-list__radio-input{right:1rem}.fd-grid-list--mode-single-select-right .fd-grid-list__item .fd-grid-list__radio-label{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-grid-list--mode-single-select-right .fd-grid-list__item .fd-grid-list__radio-label.is-empty,.fd-grid-list--mode-single-select-right .fd-grid-list__item .fd-grid-list__radio-label:empty{margin-inline:.5rem -.5rem}.fd-grid-list--mode-multi-select .fd-toolbar.fd-grid-list__item-toolbar{padding-inline:.5rem 1rem}\\n/*! Bundled license information:\\n\\nfundamental-styles/dist/grid-list.css:\\n (*!\\n * Fundamental Library Styles v0.40.1\\n * Copyright (c) 2025 SAP SE or an SAP affiliate company.\\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\\n *)\\n*/\\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)}.fd-dnd-list{position:relative}\\n\"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListComponent, decorators: [{\n type: Component,\n args: [{ selector: 'fd-grid-list', encapsulation: ViewEncapsulation.None, providers: [KeyboardSupportService, { provide: GridList, useExisting: GridListComponent }], changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, template: \"<div\\n [id]=\\\"id\\\"\\n [style.width]=\\\"width\\\"\\n class=\\\"fd-grid-list\\\"\\n [attr.aria-label]=\\\"ariaLabel\\\"\\n [class.fd-grid-list--mode-delete]=\\\"selectionMode === 'delete'\\\"\\n [class.fd-grid-list--mode-single-select]=\\\"selectionMode === 'singleSelect'\\\"\\n [class.fd-grid-list--mode-single-select-left]=\\\"selectionMode === 'singleSelectLeft'\\\"\\n [class.fd-grid-list--mode-single-select-right]=\\\"selectionMode === 'singleSelectRight'\\\"\\n [class.fd-grid-list--mode-multi-select]=\\\"selectionMode === 'multiSelect'\\\"\\n (keydown)=\\\"handleKeydown($event)\\\"\\n>\\n <div class=\\\"fd-container\\\" role=\\\"listbox\\\">\\n <div class=\\\"fd-row\\\">\\n <ng-content></ng-content>\\n </div>\\n </div>\\n</div>\\n\", styles: [\".fd-radio{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--sapField_Background);border:0;border-color:var(--sapField_BorderColor);border-radius:var(--sapField_BorderCornerRadius);border-style:solid;border-width:var(--sapField_BorderWidth);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapField_TextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;opacity:.0001;outline:none;overflow:hidden;padding-block:0;padding-inline:0;position:absolute;text-overflow:ellipsis;white-space:nowrap}.fd-radio:after,.fd-radio:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-radio::-webkit-input-placeholder{color:var(--sapField_PlaceholderTextColor);font-style:italic}.fd-radio::-moz-placeholder{color:var(--sapField_PlaceholderTextColor);font-style:italic}.fd-radio:-ms-input-placeholder{color:var(--sapField_PlaceholderTextColor);font-style:italic}.fd-radio::-ms-input-placeholder{color:var(--sapField_PlaceholderTextColor);font-style:italic}.fd-radio::placeholder{color:var(--sapField_PlaceholderTextColor);font-style:italic}.fd-radio::-moz-selection{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastTextColor)}.fd-radio::selection{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastTextColor)}.fd-radio.is-success{background:var(--sapField_SuccessBackgroundStyle);background-color:var(--sapField_SuccessBackground);border:var(--sapField_SuccessColor) var(--sapField_SuccessBorderWidth) var(--sapField_SuccessBorderStyle);-webkit-box-shadow:var(--sapField_SuccessShadow);box-shadow:var(--sapField_SuccessShadow)}.fd-radio.is-success.is-hover,.fd-radio.is-success:hover{background-color:var(--fdInput_Success_Background_Color_Hover);border-color:var(--sapField_SuccessColor);-webkit-box-shadow:var(--fdInput_Success_Box_Shadow_Hover);box-shadow:var(--fdInput_Success_Box_Shadow_Hover)}.fd-radio.is-success.is-focus,.fd-radio.is-success:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Success_Outline_Color);z-index:5}.fd-radio.is-success.is-focus.is-hover,.fd-radio.is-success.is-focus:hover,.fd-radio.is-success:focus.is-hover,.fd-radio.is-success:focus:hover{-webkit-box-shadow:none;box-shadow:none}.fd-radio.is-success.is-expanded,.fd-radio.is-success[aria-expanded=true]{background:var(--sapField_Focus_Background);-webkit-box-shadow:none;box-shadow:none;outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--fdInput_Success_Outline_Color);outline-offset:var(--fdInput_Outline_Offset)}.fd-radio.is-error{background:var(--sapField_InvalidBackgroundStyle);background-color:var(--sapField_InvalidBackground);border:var(--sapField_InvalidColor) var(--sapField_InvalidBorderWidth) var(--sapField_InvalidBorderStyle);-webkit-box-shadow:var(--sapField_InvalidShadow);box-shadow:var(--sapField_InvalidShadow)}.fd-radio.is-error.is-hover,.fd-radio.is-error:hover{background-color:var(--fdInput_Error_Background_Color_Hover);border-color:var(--sapField_InvalidColor);-webkit-box-shadow:var(--fdInput_Error_Box_Shadow_Hover);box-shadow:var(--fdInput_Error_Box_Shadow_Hover)}.fd-radio.is-error.is-focus,.fd-radio.is-error:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Error_Outline_Color);z-index:5}.fd-radio.is-error.is-focus.is-hover,.fd-radio.is-error.is-focus:hover,.fd-radio.is-error:focus.is-hover,.fd-radio.is-error:focus:hover{-webkit-box-shadow:none;box-shadow:none}.fd-radio.is-error.is-expanded,.fd-radio.is-error[aria-expanded=true]{background:var(--sapField_Focus_Background);-webkit-box-shadow:none;box-shadow:none;outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--fdInput_Error_Outline_Color);outline-offset:var(--fdInput_Outline_Offset)}.fd-radio.is-warning{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle);-webkit-box-shadow:var(--sapField_WarningShadow);box-shadow:var(--sapField_WarningShadow)}.fd-radio.is-warning.is-hover,.fd-radio.is-warning:hover{background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-radio.is-warning.is-focus,.fd-radio.is-warning:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-radio.is-warning.is-focus.is-hover,.fd-radio.is-warning.is-focus:hover,.fd-radio.is-warning:focus.is-hover,.fd-radio.is-warning:focus:hover{-webkit-box-shadow:none;box-shadow:none}.fd-radio.is-warning.is-expanded,.fd-radio.is-warning[aria-expanded=true]{background:var(--sapField_Focus_Background);-webkit-box-shadow:none;box-shadow:none;outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--fdInput_Warning_Outline_Color);outline-offset:var(--fdInput_Outline_Offset)}.fd-radio.is-alert{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-radio.is-alert.is-hover,.fd-radio.is-alert:hover{background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-radio.is-alert.is-focus,.fd-radio.is-alert:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-radio.is-alert.is-focus.is-hover,.fd-radio.is-alert.is-focus:hover,.fd-radio.is-alert:focus.is-hover,.fd-radio.is-alert:focus:hover{-webkit-box-shadow:none;box-shadow:none}.fd-radio.is-alert.is-expanded,.fd-radio.is-alert[aria-expanded=true]{background:var(--sapField_Focus_Background);-webkit-box-shadow:none;box-shadow:none;outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--fdInput_Warning_Outline_Color);outline-offset:var(--fdInput_Outline_Offset)}.fd-radio.is-information{background:var(--sapField_InformationBackgroundStyle);background-color:var(--sapField_InformationBackground);border:var(--sapField_InformationColor) var(--sapField_InformationBorderWidth) var(--sapField_InformationBorderStyle);-webkit-box-shadow:var(--sapField_InformationShadow);box-shadow:var(--sapField_InformationShadow)}.fd-radio.is-information.is-hover,.fd-radio.is-information:hover{background-color:var(--fdInput_Information_Background_Color_Hover);border-color:var(--sapField_InformationColor);-webkit-box-shadow:var(--fdInput_Information_Box_Shadow_Hover);box-shadow:var(--fdInput_Information_Box_Shadow_Hover)}.fd-radio.is-information.is-focus,.fd-radio.is-information:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Information_Outline_Color);z-index:5}.fd-radio.is-information.is-focus.is-hover,.fd-radio.is-information.is-focus:hover,.fd-radio.is-information:focus.is-hover,.fd-radio.is-information:focus:hover{-webkit-box-shadow:none;box-shadow:none}.fd-radio.is-information.is-expanded,.fd-radio.is-information[aria-expanded=true]{background:var(--sapField_Focus_Background);-webkit-box-shadow:none;box-shadow:none;outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--fdInput_Information_Outline_Color);outline-offset:var(--fdInput_Outline_Offset)}.fd-radio.is-alert.is-focus,.fd-radio.is-alert:focus,.fd-radio.is-error.is-focus,.fd-radio.is-error:focus,.fd-radio.is-information.is-focus,.fd-radio.is-information:focus,.fd-radio.is-warning.is-focus,.fd-radio.is-warning:focus{outline-offset:var(--fdInput_Outline_Offset_States);z-index:5}.fd-radio.is-disabled,.fd-radio:disabled,.fd-radio[aria-disabled=true]{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}.fd-radio.is-readonly,.fd-radio.is-readonly.is-focus,.fd-radio.is-readonly.is-hover,.fd-radio.is-readonly:focus,.fd-radio.is-readonly:hover,.fd-radio[aria-readonly=true],.fd-radio[aria-readonly=true].is-focus,.fd-radio[aria-readonly=true].is-hover,.fd-radio[aria-readonly=true]:focus,.fd-radio[aria-readonly=true]:hover,.fd-radio[readonly],.fd-radio[readonly].is-focus,.fd-radio[readonly].is-hover,.fd-radio[readonly]:focus,.fd-radio[readonly]:hover{--fdInput_Outline_Offset:-.25rem;background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);-webkit-box-shadow:none;box-shadow:none}.fd-radio.is-readonly.is-focus,.fd-radio.is-readonly:focus,.fd-radio[aria-readonly=true].is-focus,.fd-radio[aria-readonly=true]:focus,.fd-radio[readonly].is-focus,.fd-radio[readonly]:focus{z-index:5}.fd-radio__label{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;max-width:100%;padding-block:0;padding-inline:0;position:relative;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;-webkit-margin-end:.5rem;cursor:text;margin-inline-end:.5rem;-ms-flex-item-align:start;align-self:flex-start;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;line-height:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:var(--sapField_TextColor);padding-block:var(--fdRadio_Outer_Circle_Padding);padding-inline:var(--fdRadio_Outer_Circle_Padding)}.fd-radio__label:after,.fd-radio__label:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-radio__label:before{content:\\\"\\\";display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;height:var(--fdRadio_Inner_Circle_Diameter);min-width:var(--fdRadio_Inner_Circle_Diameter);width:var(--fdRadio_Inner_Circle_Diameter);-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-radius:50%;-webkit-margin-end:var(--fdRadio_Outer_Circle_Padding);background-color:var(--fdRadio_Background_Color);border:var(--fdRadio_Inner_Border_Width) var(--fdRadio_Inner_Border_Style) var(--fdRadio_Inner_Border_Color);margin-inline-end:var(--fdRadio_Outer_Circle_Padding)}.fd-radio__label:after{height:var(--fdRadio_Inner_Content_Size);left:var(--fdRadio_Inner_Content_Padding);min-width:var(--fdRadio_Inner_Content_Size);width:var(--fdRadio_Inner_Content_Size)}.fd-radio__label.is-focus,.fd-radio__label:focus{outline:none;z-index:5}.fd-radio__label.is-hover:before,.fd-radio__label:hover:before{background-color:var(--fdRadio_Hover_Background_Color);--fdRadio_Inner_Border_Width:var(--fdRadio_Inner_Border_Width_Default_Hover);--fdRadio_Inner_Border_Style:var(--fdRadio_Inner_Border_Style_Default_Hover);--fdRadio_Inner_Border_Color:var(--fdRadio_Inner_Border_Color_Default_Hover);--fdRadio_Active_Dot_Color:var(--fdRadio_Active_Dot_Color_Default_Hover);--fdRadio_Hover_Background_Color:var(--fdRadio_Background_Color_Default_Hover)}.fd-radio__label[dir=rtl]:after,[dir=rtl] .fd-radio__label:after{right:var(--fdRadio_Inner_Content_Padding)}.fd-radio__label.is-empty,.fd-radio__label:empty{margin-block:0;margin-inline:0;padding-block:var(--fdRadio_Outer_Circle_Padding);padding-inline:var(--fdRadio_Outer_Circle_Padding)}.fd-radio__label.is-empty:after,.fd-radio__label.is-empty:before,.fd-radio__label:empty:after,.fd-radio__label:empty:before{margin-inline:0}.fd-radio__label--wrap .fd-radio__text{white-space:normal}.fd-radio__label--wrap-top-aligned{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.fd-radio__label--wrap-top-aligned .fd-radio__text{white-space:normal}.fd-radio__label--wrap-top-aligned:after{top:var(--fdRadio_Inner_Content_Padding)}.fd-radio__text{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;overflow:hidden;padding-block:0;padding-inline:0;text-overflow:ellipsis;white-space:nowrap}.fd-radio__text:after,.fd-radio__text:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-radio:checked+.fd-radio__label:after{background:var(--fdRadio_Active_Dot_Color);border-radius:50%;content:\\\"\\\";position:absolute}.fd-radio.is-error+.fd-radio__label:before,.fd-radio.is-error:checked+.fd-radio__label:after{--fdRadio_Background_Color:var(--fdRadio_Background_Color_Error);--fdRadio_Inner_Border_Width:var(--fdRadio_Inner_Border_Width_Error);--fdRadio_Inner_Border_Style:var(--fdRadio_Inner_Border_Style_Error);--fdRadio_Inner_Border_Color:var(--fdRadio_Inner_Border_Color_Error);--fdRadio_Active_Dot_Color:var(--fdRadio_Active_Dot_Color_Error);--fdRadio_Hover_Background_Color:var(--fdRadio_Background_Color_Error_Hover)}.fd-radio.is-alert+.fd-radio__label:before,.fd-radio.is-alert:checked+.fd-radio__label:after,.fd-radio.is-warning+.fd-radio__label:before,.fd-radio.is-warning:checked+.fd-radio__label:after{--fdRadio_Background_Color:var(--fdRadio_Background_Color_Warning);--fdRadio_Inner_Border_Width:var(--fdRadio_Inner_Border_Width_Warning);--fdRadio_Inner_Border_Style:var(--fdRadio_Inner_Border_Style_Warning);--fdRadio_Inner_Border_Color:var(--fdRadio_Inner_Border_Color_Warning);--fdRadio_Active_Dot_Color:var(--fdRadio_Active_Dot_Color_Warning);--fdRadio_Hover_Background_Color:var(--fdRadio_Background_Color_Warning_Hover)}.fd-radio.is-success+.fd-radio__label:before,.fd-radio.is-success:checked+.fd-radio__label:after{--fdRadio_Background_Color:var(--fdRadio_Background_Color_Success);--fdRadio_Inner_Border_Width:var(--fdRadio_Inner_Border_Width_Success);--fdRadio_Inner_Border_Style:var(--fdRadio_Inner_Border_Style_Success);--fdRadio_Inner_Border_Color:var(--fdRadio_Inner_Border_Color_Success);--fdRadio_Active_Dot_Color:var(--fdRadio_Active_Dot_Color_Success);--fdRadio_Hover_Background_Color:var(--fdRadio_Background_Color_Success_Hover)}.fd-radio.is-information+.fd-radio__label:before,.fd-radio.is-information:checked+.fd-radio__label:after{--fdRadio_Background_Color:var(--fdRadio_Background_Color_Information);--fdRadio_Inner_Border_Width:var(--fdRadio_Inner_Border_Width_Information);--fdRadio_Inner_Border_Style:var(--fdRadio_Inner_Border_Style_Information);--fdRadio_Inner_Border_Color:var(--fdRadio_Inner_Border_Color_Information);--fdRadio_Active_Dot_Color:var(--fdRadio_Active_Dot_Color_Information);--fdRadio_Hover_Background_Color:var(--fdRadio_Background_Color_Information_Hover)}.fd-radio.is-readonly+.fd-radio__label:before,.fd-radio.is-readonly:checked+.fd-radio__label:after,.fd-radio[aria-readonly=true]+.fd-radio__label:before,.fd-radio[aria-readonly=true]:checked+.fd-radio__label:after,.fd-radio[readonly]+.fd-radio__label:before,.fd-radio[readonly]:checked+.fd-radio__label:after{--fdRadio_Background_Color:var(--fdRadio_Background_Color_ReadOnly);--fdRadio_Inner_Border_Width:var(--fdRadio_Inner_Border_Width_ReadOnly);--fdRadio_Inner_Border_Style:var(--fdRadio_Inner_Border_Style_ReadOnly);--fdRadio_Inner_Border_Color:var(--fdRadio_Inner_Border_Color_ReadOnly);--fdRadio_Active_Dot_Color:var(--fdRadio_Active_Dot_Color_ReadOnly);--fdRadio_Hover_Background_Color:var(--fdRadio_Background_Color_ReadOnly)}.fd-radio.is-focus,.fd-radio:focus{z-index:5}.fd-radio.is-focus+.fd-radio__label,.fd-radio:focus+.fd-radio__label{border-radius:var(--fdRadio_Outline_Border_Radius);outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);outline-offset:calc(var(--fdRadio_Focus_Outline_Offset) - var(--fdRadio_Outer_Circle_Padding))}.fd-radio.is-disabled,.fd-radio:disabled,.fd-radio[aria-disabled=true]{opacity:.0001}.fd-radio.is-disabled+.fd-radio__label,.fd-radio:disabled+.fd-radio__label,.fd-radio[aria-disabled=true]+.fd-radio__label{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}.fd-radio[class*=-compact]+.fd-radio__label,.fd-radio[class*=-condensed]+.fd-radio__label,[class*=-compact] .fd-radio:not([class*=-cozy])+.fd-radio__label,[class*=-condensed] .fd-radio:not([class*=-cozy])+.fd-radio__label{--fdRadio_Outer_Circle_Padding:var(--fdRadio_Compact_Outer_Circle_Padding);--fdRadio_Inner_Circle_Diameter:var(--fdRadio_Compact_Inner_Circle_Diameter);--fdRadio_Inner_Content_Size:var(--fdRadio_Inner_Content_Size_Compact);--fdRadio_Inner_Content_Padding:var(--fdRadio_Inner_Content_Padding_Compact)}.fd-radio[class*=-compact].is-focus,.fd-radio[class*=-compact]:focus,.fd-radio[class*=-condensed].is-focus,.fd-radio[class*=-condensed]:focus,[class*=-compact] .fd-radio:not([class*=-cozy]).is-focus,[class*=-compact] .fd-radio:not([class*=-cozy]):focus,[class*=-condensed] .fd-radio:not([class*=-cozy]).is-focus,[class*=-condensed] .fd-radio:not([class*=-cozy]):focus{z-index:5}.fd-radio[class*=-compact].is-focus+.fd-radio__label,.fd-radio[class*=-compact]:focus+.fd-radio__label,.fd-radio[class*=-condensed].is-focus+.fd-radio__label,.fd-radio[class*=-condensed]:focus+.fd-radio__label,[class*=-compact] .fd-radio:not([class*=-cozy]).is-focus+.fd-radio__label,[class*=-compact] .fd-radio:not([class*=-cozy]):focus+.fd-radio__label,[class*=-condensed] .fd-radio:not([class*=-cozy]).is-focus+.fd-radio__label,[class*=-condensed] .fd-radio:not([class*=-cozy]):focus+.fd-radio__label{--fdRadio_Outer_Circle_Padding:var(--fdRadio_Compact_Outer_Circle_Padding);--fdRadio_Outline_Border_Radius:var(--fdRadio_Compact_Outline_Border_radius)}.fd-checkbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--sapField_Background);border:0;border-color:var(--sapField_BorderColor);border-radius:var(--sapField_BorderCornerRadius);border-style:solid;border-width:var(--sapField_BorderWidth);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapField_TextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;opacity:.0001;outline:none;overflow:hidden;padding-block:0;padding-inline:0;position:absolute;text-overflow:ellipsis;white-space:nowrap}.fd-checkbox:after,.fd-checkbox:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-checkbox::-webkit-input-placeholder{color:var(--sapField_PlaceholderTextColor);font-style:italic}.fd-checkbox::-moz-placeholder{color:var(--sapField_PlaceholderTextColor);font-style:italic}.fd-checkbox:-ms-input-placeholder{color:var(--sapField_PlaceholderTextColor);font-style:italic}.fd-checkbox::-ms-input-placeholder{color:var(--sapField_PlaceholderTextColor);font-style:italic}.fd-checkbox::placeholder{color:var(--sapField_PlaceholderTextColor);font-style:italic}.fd-checkbox::-moz-selection{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastTextColor)}.fd-checkbox::selection{background-color:var(--sapSelectedColor);color:var(--sapContent_ContrastTextColor)}.fd-checkbox.is-success{background:var(--sapField_SuccessBackgroundStyle);background-color:var(--sapField_SuccessBackground);border:var(--sapField_SuccessColor) var(--sapField_SuccessBorderWidth) var(--sapField_SuccessBorderStyle);-webkit-box-shadow:var(--sapField_SuccessShadow);box-shadow:var(--sapField_SuccessShadow)}.fd-checkbox.is-success.is-hover,.fd-checkbox.is-success:hover{background-color:var(--fdInput_Success_Background_Color_Hover);border-color:var(--sapField_SuccessColor);-webkit-box-shadow:var(--fdInput_Success_Box_Shadow_Hover);box-shadow:var(--fdInput_Success_Box_Shadow_Hover)}.fd-checkbox.is-success.is-focus,.fd-checkbox.is-success:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Success_Outline_Color);z-index:5}.fd-checkbox.is-success.is-focus.is-hover,.fd-checkbox.is-success.is-focus:hover,.fd-checkbox.is-success:focus.is-hover,.fd-checkbox.is-success:focus:hover{-webkit-box-shadow:none;box-shadow:none}.fd-checkbox.is-success.is-expanded,.fd-checkbox.is-success[aria-expanded=true]{background:var(--sapField_Focus_Background);-webkit-box-shadow:none;box-shadow:none;outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--fdInput_Success_Outline_Color);outline-offset:var(--fdInput_Outline_Offset)}.fd-checkbox.is-error{background:var(--sapField_InvalidBackgroundStyle);background-color:var(--sapField_InvalidBackground);border:var(--sapField_InvalidColor) var(--sapField_InvalidBorderWidth) var(--sapField_InvalidBorderStyle);-webkit-box-shadow:var(--sapField_InvalidShadow);box-shadow:var(--sapField_InvalidShadow)}.fd-checkbox.is-error.is-hover,.fd-checkbox.is-error:hover{background-color:var(--fdInput_Error_Background_Color_Hover);border-color:var(--sapField_InvalidColor);-webkit-box-shadow:var(--fdInput_Error_Box_Shadow_Hover);box-shadow:var(--fdInput_Error_Box_Shadow_Hover)}.fd-checkbox.is-error.is-focus,.fd-checkbox.is-error:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Error_Outline_Color);z-index:5}.fd-checkbox.is-error.is-focus.is-hover,.fd-checkbox.is-error.is-focus:hover,.fd-checkbox.is-error:focus.is-hover,.fd-checkbox.is-error:focus:hover{-webkit-box-shadow:none;box-shadow:none}.fd-checkbox.is-error.is-expanded,.fd-checkbox.is-error[aria-expanded=true]{background:var(--sapField_Focus_Background);-webkit-box-shadow:none;box-shadow:none;outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--fdInput_Error_Outline_Color);outline-offset:var(--fdInput_Outline_Offset)}.fd-checkbox.is-warning{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle);-webkit-box-shadow:var(--sapField_WarningShadow);box-shadow:var(--sapField_WarningShadow)}.fd-checkbox.is-warning.is-hover,.fd-checkbox.is-warning:hover{background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-checkbox.is-warning.is-focus,.fd-checkbox.is-warning:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-checkbox.is-warning.is-focus.is-hover,.fd-checkbox.is-warning.is-focus:hover,.fd-checkbox.is-warning:focus.is-hover,.fd-checkbox.is-warning:focus:hover{-webkit-box-shadow:none;box-shadow:none}.fd-checkbox.is-warning.is-expanded,.fd-checkbox.is-warning[aria-expanded=true]{background:var(--sapField_Focus_Background);-webkit-box-shadow:none;box-shadow:none;outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--fdInput_Warning_Outline_Color);outline-offset:var(--fdInput_Outline_Offset)}.fd-checkbox.is-alert{background:var(--sapField_WarningBackgroundStyle);background-color:var(--sapField_WarningBackground);border:var(--sapField_WarningColor) var(--sapField_WarningBorderWidth) var(--sapField_WarningBorderStyle)}.fd-checkbox.is-alert.is-hover,.fd-checkbox.is-alert:hover{background-color:var(--fdInput_Warning_Background_Color_Hover);border-color:var(--sapField_WarningColor);-webkit-box-shadow:var(--fdInput_Warning_Box_Shadow_Hover);box-shadow:var(--fdInput_Warning_Box_Shadow_Hover)}.fd-checkbox.is-alert.is-focus,.fd-checkbox.is-alert:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Warning_Outline_Color);z-index:5}.fd-checkbox.is-alert.is-focus.is-hover,.fd-checkbox.is-alert.is-focus:hover,.fd-checkbox.is-alert:focus.is-hover,.fd-checkbox.is-alert:focus:hover{-webkit-box-shadow:none;box-shadow:none}.fd-checkbox.is-alert.is-expanded,.fd-checkbox.is-alert[aria-expanded=true]{background:var(--sapField_Focus_Background);-webkit-box-shadow:none;box-shadow:none;outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--fdInput_Warning_Outline_Color);outline-offset:var(--fdInput_Outline_Offset)}.fd-checkbox.is-information{background:var(--sapField_InformationBackgroundStyle);background-color:var(--sapField_InformationBackground);border:var(--sapField_InformationColor) var(--sapField_InformationBorderWidth) var(--sapField_InformationBorderStyle);-webkit-box-shadow:var(--sapField_InformationShadow);box-shadow:var(--sapField_InformationShadow)}.fd-checkbox.is-information.is-hover,.fd-checkbox.is-information:hover{background-color:var(--fdInput_Information_Background_Color_Hover);border-color:var(--sapField_InformationColor);-webkit-box-shadow:var(--fdInput_Information_Box_Shadow_Hover);box-shadow:var(--fdInput_Information_Box_Shadow_Hover)}.fd-checkbox.is-information.is-focus,.fd-checkbox.is-information:focus{background:var(--sapField_Focus_Background);outline-color:var(--fdInput_Information_Outline_Color);z-index:5}.fd-checkbox.is-information.is-focus.is-hover,.fd-checkbox.is-information.is-focus:hover,.fd-checkbox.is-information:focus.is-hover,.fd-checkbox.is-information:focus:hover{-webkit-box-shadow:none;box-shadow:none}.fd-checkbox.is-information.is-expanded,.fd-checkbox.is-information[aria-expanded=true]{background:var(--sapField_Focus_Background);-webkit-box-shadow:none;box-shadow:none;outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--fdInput_Information_Outline_Color);outline-offset:var(--fdInput_Outline_Offset)}.fd-checkbox.is-alert.is-focus,.fd-checkbox.is-alert:focus,.fd-checkbox.is-error.is-focus,.fd-checkbox.is-error:focus,.fd-checkbox.is-information.is-focus,.fd-checkbox.is-information:focus,.fd-checkbox.is-warning.is-focus,.fd-checkbox.is-warning:focus{outline-offset:var(--fdInput_Outline_Offset_States);z-index:5}.fd-checkbox.is-disabled,.fd-checkbox:disabled,.fd-checkbox[aria-disabled=true]{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}.fd-checkbox.is-readonly,.fd-checkbox.is-readonly.is-focus,.fd-checkbox.is-readonly.is-hover,.fd-checkbox.is-readonly:focus,.fd-checkbox.is-readonly:hover,.fd-checkbox[aria-readonly=true],.fd-checkbox[aria-readonly=true].is-focus,.fd-checkbox[aria-readonly=true].is-hover,.fd-checkbox[aria-readonly=true]:focus,.fd-checkbox[aria-readonly=true]:hover,.fd-checkbox[readonly],.fd-checkbox[readonly].is-focus,.fd-checkbox[readonly].is-hover,.fd-checkbox[readonly]:focus,.fd-checkbox[readonly]:hover{--fdInput_Outline_Offset:-.25rem;background:var(--sapField_ReadOnly_BackgroundStyle);background-color:var(--sapField_ReadOnly_Background);border-color:var(--sapField_ReadOnly_BorderColor);-webkit-box-shadow:none;box-shadow:none}.fd-checkbox.is-readonly.is-focus,.fd-checkbox.is-readonly:focus,.fd-checkbox[aria-readonly=true].is-focus,.fd-checkbox[aria-readonly=true]:focus,.fd-checkbox[readonly].is-focus,.fd-checkbox[readonly]:focus{z-index:5}.fd-checkbox,.fd-checkbox.is-error,.fd-checkbox.is-information,.fd-checkbox.is-success,.fd-checkbox.is-warning{border-style:initial}.fd-checkbox__label{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;max-width:100%;overflow:hidden;padding-block:0;padding-inline:0;position:relative;text-overflow:ellipsis;white-space:nowrap;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;-webkit-margin-end:.5rem;cursor:text;margin-inline-end:.5rem;-ms-flex-item-align:start;align-self:flex-start;cursor:pointer;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:var(--fdCheckbox_Padding);line-height:1rem;margin-block:0;margin-inline:0;padding-block:var(--fdCheckbox_Padding);padding-inline:var(--fdCheckbox_Padding)}.fd-checkbox__label:after,.fd-checkbox__label:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-checkbox__label.is-hover .fd-checkbox__checkmark,.fd-checkbox__label:hover .fd-checkbox__checkmark{background-color:var(--fdCheckbox_Hover_Background_Color);--fdCheckbox_Inner_Border_Width:var(--fdCheckbox_Inner_Border_Width_Default_Hover);--fdCheckbox_Inner_Border_Style:var(--fdCheckbox_Inner_Border_Style_Default_Hover);--fdCheckbox_Inner_Border_Color:var(--fdCheckbox_Inner_Border_Color_Default_Hover);--fdCheckbox_Check_Mark_Color:var(--fdCheckbox_Check_Mark_Color_Default_Hover);--fdCheckbox_Hover_Background_Color:var(--fdCheckbox_Background_Color_Default_Hover)}.fd-checkbox__label:focus{outline:none}.fd-checkbox__label--required .fd-checkbox__text,.fd-checkbox__label[aria-required=true] .fd-checkbox__text{-webkit-padding-end:.5rem;padding-inline-end:.5rem}.fd-checkbox__label--required .fd-checkbox__text:after,.fd-checkbox__label[aria-required=true] .fd-checkbox__text:after{color:var(--sapField_RequiredColor);content:\\\"*\\\"/\\\"\\\";font-size:var(--sapFontSize);font-weight:700;position:absolute;-webkit-padding-start:.125rem;padding-inline-start:.125rem}.fd-checkbox__label--wrap .fd-checkbox__label-container{height:auto;white-space:normal}.fd-checkbox__label--wrap .fd-checkbox__text{white-space:normal}.fd-checkbox__label--wrap-top-aligned{-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.fd-checkbox__label--wrap-top-aligned .fd-checkbox__label-container{height:auto;white-space:normal}.fd-checkbox__label--wrap-top-aligned .fd-checkbox__text{white-space:normal}.fd-checkbox__label-container{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:1rem;max-width:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fd-checkbox__label-container:after,.fd-checkbox__label-container:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-checkbox__text{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;max-width:inherit;overflow:hidden;padding-block:0;padding-inline:0;text-overflow:ellipsis;white-space:nowrap}.fd-checkbox__text:after,.fd-checkbox__text:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-checkbox__checkmark{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:var(--fdCheckbox_Background_Color);border:var(--fdCheckbox_Inner_Border_Width) var(--fdCheckbox_Inner_Border_Style) var(--fdCheckbox_Inner_Border_Color);border-radius:var(--sapField_BorderCornerRadius);color:var(--fdCheckbox_Check_Mark_Color);font-family:SAP-icons;height:var(--fdCheckbox_Dimensions);min-width:var(--fdCheckbox_Dimensions);width:var(--fdCheckbox_Dimensions)}.fd-checkbox__checkmark:after,.fd-checkbox__checkmark:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-checkbox__checkmark:before{content:\\\"\\\"}.fd-checkbox:checked+.fd-checkbox__label .fd-checkbox__checkmark:before{content:\\\"\\\\e05b\\\"}.fd-checkbox:indeterminate+.fd-checkbox__label .fd-checkbox__checkmark:after{background-color:var(--fdCheckbox_Check_Mark_Color);content:\\\"\\\";height:var(--fdCheckbox_Tristate_Size);position:absolute;width:var(--fdCheckbox_Tristate_Size)}.fd-checkbox.is-alert+.fd-checkbox__label .fd-checkbox__checkmark,.fd-checkbox.is-warning+.fd-checkbox__label .fd-checkbox__checkmark{--fdCheckbox_Background_Color:var(--fdCheckbox_Background_Color_Warning);--fdCheckbox_Inner_Border_Width:var(--fdCheckbox_Inner_Border_Width_Warning);--fdCheckbox_Inner_Border_Style:var(--fdCheckbox_Inner_Border_Style_Warning);--fdCheckbox_Inner_Border_Color:var(--fdCheckbox_Inner_Border_Color_Warning);--fdCheckbox_Check_Mark_Color:var(--fdCheckbox_Check_Mark_Color_Warning);--fdCheckbox_Hover_Background_Color:var(--fdCheckbox_Background_Color_Warning_Hover)}.fd-checkbox.is-error+.fd-checkbox__label .fd-checkbox__checkmark{--fdCheckbox_Background_Color:var(--fdCheckbox_Background_Color_Error);--fdCheckbox_Inner_Border_Width:var(--fdCheckbox_Inner_Border_Width_Error);--fdCheckbox_Inner_Border_Style:var(--fdCheckbox_Inner_Border_Style_Error);--fdCheckbox_Inner_Border_Color:var(--fdCheckbox_Inner_Border_Color_Error);--fdCheckbox_Check_Mark_Color:var(--fdCheckbox_Check_Mark_Color_Error);--fdCheckbox_Hover_Background_Color:var(--fdCheckbox_Background_Color_Error_Hover)}.fd-checkbox.is-success+.fd-checkbox__label .fd-checkbox__checkmark{--fdCheckbox_Background_Color:var(--fdCheckbox_Background_Color_Success);--fdCheckbox_Inner_Border_Width:var(--fdCheckbox_Inner_Border_Width_Success);--fdCheckbox_Inner_Border_Style:var(--fdCheckbox_Inner_Border_Style_Success);--fdCheckbox_Inner_Border_Color:var(--fdCheckbox_Inner_Border_Color_Success);--fdCheckbox_Check_Mark_Color:var(--fdCheckbox_Check_Mark_Color_Success);--fdCheckbox_Hover_Background_Color:var(--fdCheckbox_Background_Color_Success_Hover)}.fd-checkbox.is-information+.fd-checkbox__label .fd-checkbox__checkmark{--fdCheckbox_Background_Color:var(--fdCheckbox_Background_Color_Information);--fdCheckbox_Inner_Border_Width:var(--fdCheckbox_Inner_Border_Width_Information);--fdCheckbox_Inner_Border_Style:var(--fdCheckbox_Inner_Border_Style_Information);--fdCheckbox_Inner_Border_Color:var(--fdCheckbox_Inner_Border_Color_Information);--fdCheckbox_Check_Mark_Color:var(--fdCheckbox_Check_Mark_Color_Information);--fdCheckbox_Hover_Background_Color:var(--fdCheckbox_Background_Color_Information_Hover)}.fd-checkbox.is-readonly+.fd-checkbox__label .fd-checkbox__checkmark,.fd-checkbox[readonly]+.fd-checkbox__label .fd-checkbox__checkmark{--fdCheckbox_Background_Color:var(--fdCheckbox_Background_Color_ReadOnly);--fdCheckbox_Inner_Border_Width:var(--fdCheckbox_Inner_Border_Width_ReadOnly);--fdCheckbox_Inner_Border_Style:var(--fdCheckbox_Inner_Border_Style_ReadOnly);--fdCheckbox_Inner_Border_Color:var(--fdCheckbox_Inner_Border_Color_ReadOnly);--fdCheckbox_Check_Mark_Color:var(--fdCheckbox_Check_Mark_Color_ReadOnly);--fdCheckbox_Hover_Background_Color:var(--fdCheckbox_Background_Color_ReadOnly)}.fd-checkbox.is-display+.fd-checkbox__label{--fdCheckbox_Check_Mark_Color:var(--sapTextColor);gap:.5rem}.fd-checkbox.is-display+.fd-checkbox__label.is-hover .fd-checkbox__checkmark,.fd-checkbox.is-display+.fd-checkbox__label:hover .fd-checkbox__checkmark{--fdCheckbox_Check_Mark_Color:var(--sapTextColor);--fdCheckbox_Hover_Background_Color:transparent}.fd-checkbox.is-display+.fd-checkbox__label .fd-checkbox__checkmark{--fdCheckbox_Background_Color:transparent;--fdCheckbox_Dimensions:1rem;border:none}.fd-checkbox.is-display+.fd-checkbox__label .fd-checkbox__checkmark:before{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;content:\\\"\\\\e19a\\\";font-size:1rem;height:1rem;max-height:1rem;max-width:1rem;min-height:1rem;min-width:1rem;width:1rem}.fd-checkbox.is-display:checked+.fd-checkbox__label .fd-checkbox__checkmark:before{content:\\\"\\\\e03f\\\";font-size:1rem}.fd-checkbox.is-display:indeterminate+.fd-checkbox__label .fd-checkbox__checkmark:before{content:\\\"\\\\e295\\\";font-size:1rem}.fd-checkbox.is-display:indeterminate+.fd-checkbox__label .fd-checkbox__checkmark:after{content:\\\"\\\";height:0;width:0}.fd-checkbox.is-focus,.fd-checkbox:focus{z-index:5}.fd-checkbox.is-focus+.fd-checkbox__label,.fd-checkbox:focus+.fd-checkbox__label{border-radius:var(--fdCheckbox_Outline_Border_Radius);outline:var(--sapContent_FocusWidth) var(--sapContent_FocusStyle) var(--sapContent_FocusColor);outline-offset:calc(var(--fdCheckbox_Focus_Outline_Offset) - var(--fdCheckbox_Padding))}.fd-checkbox.is-disabled,.fd-checkbox:disabled,.fd-checkbox[aria-disabled=true]{opacity:.0001}.fd-checkbox.is-disabled+.fd-checkbox__label,.fd-checkbox:disabled+.fd-checkbox__label,.fd-checkbox[aria-disabled=true]+.fd-checkbox__label{opacity:var(--sapContent_DisabledOpacity);pointer-events:none}.fd-checkbox[class*=-compact]+.fd-checkbox__label,.fd-checkbox[class*=-condensed]+.fd-checkbox__label,[class*=-compact] .fd-checkbox:not([class*=-cozy])+.fd-checkbox__label,[class*=-condensed] .fd-checkbox:not([class*=-cozy])+.fd-checkbox__label{--fdCheckbox_Dimensions:var(--fdCheckbox_Compact_Dimensions);--fdCheckbox_Padding:var(--fdCheckbox_Compact_Padding)}.fd-checkbox[class*=-compact]:indeterminate+.fd-checkbox__label,.fd-checkbox[class*=-condensed]:indeterminate+.fd-checkbox__label,[class*=-compact] .fd-checkbox:not([class*=-cozy]):indeterminate+.fd-checkbox__label,[class*=-condensed] .fd-checkbox:not([class*=-cozy]):indeterminate+.fd-checkbox__label{--fdCheckbox_Tristate_Size:var(--fdCheckbox_Tristate_Compact_Size);--fdCheckbox_Tristate_Offset:var(--fdCheckbox_Tristate_Compact_Offset)}.fd-checkbox[class*=-compact].is-focus,.fd-checkbox[class*=-compact]:focus,.fd-checkbox[class*=-condensed].is-focus,.fd-checkbox[class*=-condensed]:focus,[class*=-compact] .fd-checkbox:not([class*=-cozy]).is-focus,[class*=-compact] .fd-checkbox:not([class*=-cozy]):focus,[class*=-condensed] .fd-checkbox:not([class*=-cozy]).is-focus,[class*=-condensed] .fd-checkbox:not([class*=-cozy]):focus{z-index:5}.fd-checkbox[class*=-compact].is-focus+.fd-checkbox__label,.fd-checkbox[class*=-compact]:focus+.fd-checkbox__label,.fd-checkbox[class*=-condensed].is-focus+.fd-checkbox__label,.fd-checkbox[class*=-condensed]:focus+.fd-checkbox__label,[class*=-compact] .fd-checkbox:not([class*=-cozy]).is-focus+.fd-checkbox__label,[class*=-compact] .fd-checkbox:not([class*=-cozy]):focus+.fd-checkbox__label,[class*=-condensed] .fd-checkbox:not([class*=-cozy]).is-focus+.fd-checkbox__label,[class*=-condensed] .fd-checkbox:not([class*=-cozy]):focus+.fd-checkbox__label{--fdCheckbox_Outline_Border_Radius:var(--fdCheckbox_Compact_Outline_Border_Radius)}.fd-col,.fd-container,.fd-row{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-col:after,.fd-col:before,.fd-container:after,.fd-container:before,.fd-row:after,.fd-row:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-container{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;padding-block:0;padding-inline:.25rem;position:relative}.fd-container .fd-row{margin-inline:-.25rem;min-width:calc(100% + .5rem)}.fd-container>.fd-row>.fd-col{padding-block:.25rem}.fd-container.fd-container--no-gap .fd-row,.fd-container.fd-container--no-horizontal-gap .fd-row{margin-inline:0}.fd-container.fd-container--no-gap .fd-row .fd-col,.fd-container.fd-container--no-horizontal-gap .fd-row .fd-col{padding-inline:0}.fd-container.fd-container--no-gap>.fd-row>.fd-col,.fd-container.fd-container--no-vertical-gap>.fd-row>.fd-col{padding-block:0}.fd-container[dir=rtl],[dir=rtl] .fd-container{direction:rtl}.fd-row{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;min-width:100%;position:relative}.fd-col{max-width:100%;min-width:100%;padding-inline:.25rem}.fd-col--0{max-width:0;min-width:0%}.fd-col--offset-0{-webkit-margin-start:0;margin-inline-start:0}.fd-col--offset-after-0{-webkit-margin-end:0;margin-inline-end:0}.fd-col--1{max-width:8.3333333333%;min-width:8.3333333333%}.fd-col--offset-1{-webkit-margin-start:8.3333333333%;margin-inline-start:8.3333333333%}.fd-col--offset-after-1{-webkit-margin-end:8.3333333333%;margin-inline-end:8.3333333333%}.fd-col--2{max-width:16.6666666667%;min-width:16.6666666667%}.fd-col--offset-2{-webkit-margin-start:16.6666666667%;margin-inline-start:16.6666666667%}.fd-col--offset-after-2{-webkit-margin-end:16.6666666667%;margin-inline-end:16.6666666667%}.fd-col--3{max-width:25%;min-width:25%}.fd-col--offset-3{-webkit-margin-start:25%;margin-inline-start:25%}.fd-col--offset-after-3{-webkit-margin-end:25%;margin-inline-end:25%}.fd-col--4{max-width:33.3333333333%;min-width:33.3333333333%}.fd-col--offset-4{-webkit-margin-start:33.3333333333%;margin-inline-start:33.3333333333%}.fd-col--offset-after-4{-webkit-margin-end:33.3333333333%;margin-inline-end:33.3333333333%}.fd-col--5{max-width:41.6666666667%;min-width:41.6666666667%}.fd-col--offset-5{-webkit-margin-start:41.6666666667%;margin-inline-start:41.6666666667%}.fd-col--offset-after-5{-webkit-margin-end:41.6666666667%;margin-inline-end:41.6666666667%}.fd-col--6{max-width:50%;min-width:50%}.fd-col--offset-6{-webkit-margin-start:50%;margin-inline-start:50%}.fd-col--offset-after-6{-webkit-margin-end:50%;margin-inline-end:50%}.fd-col--7{max-width:58.3333333333%;min-width:58.3333333333%}.fd-col--offset-7{-webkit-margin-start:58.3333333333%;margin-inline-start:58.3333333333%}.fd-col--offset-after-7{-webkit-margin-end:58.3333333333%;margin-inline-end:58.3333333333%}.fd-col--8{max-width:66.6666666667%;min-width:66.6666666667%}.fd-col--offset-8{-webkit-margin-start:66.6666666667%;margin-inline-start:66.6666666667%}.fd-col--offset-after-8{-webkit-margin-end:66.6666666667%;margin-inline-end:66.6666666667%}.fd-col--9{max-width:75%;min-width:75%}.fd-col--offset-9{-webkit-margin-start:75%;margin-inline-start:75%}.fd-col--offset-after-9{-webkit-margin-end:75%;margin-inline-end:75%}.fd-col--10{max-width:83.3333333333%;min-width:83.3333333333%}.fd-col--offset-10{-webkit-margin-start:83.3333333333%;margin-inline-start:83.3333333333%}.fd-col--offset-after-10{-webkit-margin-end:83.3333333333%;margin-inline-end:83.3333333333%}.fd-col--11{max-width:91.6666666667%;min-width:91.6666666667%}.fd-col--offset-11{-webkit-margin-start:91.6666666667%;margin-inline-start:91.6666666667%}.fd-col--offset-after-11{-webkit-margin-end:91.6666666667%;margin-inline-end:91.6666666667%}.fd-col--12{max-width:100%;min-width:100%}.fd-col--offset-12{-webkit-margin-start:100%;margin-inline-start:100%}.fd-col--offset-after-12{-webkit-margin-end:100%;margin-inline-end:100%}.fd-col--full{max-width:none;min-width:8.3333333333%;-webkit-box-flex:1;-ms-flex:1;flex:1}.fd-col--wrap{-ms-flex-wrap:wrap;flex-wrap:wrap}@media(min-width:600px){.fd-container{padding-block:0;padding-inline:.5rem}.fd-container .fd-row{margin-inline:-.5rem;min-width:calc(100% + 1rem)}.fd-container>.fd-row>.fd-col{padding-block:.5rem}.fd-col{padding-inline:.5rem}.fd-col-md--0{max-width:0;min-width:0%}.fd-col-md--offset-0{-webkit-margin-start:0;margin-inline-start:0}.fd-col-md--offset-after-0{-webkit-margin-end:0;margin-inline-end:0}.fd-col-md--1{max-width:8.3333333333%;min-width:8.3333333333%}.fd-col-md--offset-1{-webkit-margin-start:8.3333333333%;margin-inline-start:8.3333333333%}.fd-col-md--offset-after-1{-webkit-margin-end:8.3333333333%;margin-inline-end:8.3333333333%}.fd-col-md--2{max-width:16.6666666667%;min-width:16.6666666667%}.fd-col-md--offset-2{-webkit-margin-start:16.6666666667%;margin-inline-start:16.6666666667%}.fd-col-md--offset-after-2{-webkit-margin-end:16.6666666667%;margin-inline-end:16.6666666667%}.fd-col-md--3{max-width:25%;min-width:25%}.fd-col-md--offset-3{-webkit-margin-start:25%;margin-inline-start:25%}.fd-col-md--offset-after-3{-webkit-margin-end:25%;margin-inline-end:25%}.fd-col-md--4{max-width:33.3333333333%;min-width:33.3333333333%}.fd-col-md--offset-4{-webkit-margin-start:33.3333333333%;margin-inline-start:33.3333333333%}.fd-col-md--offset-after-4{-webkit-margin-end:33.3333333333%;margin-inline-end:33.3333333333%}.fd-col-md--5{max-width:41.6666666667%;min-width:41.6666666667%}.fd-col-md--offset-5{-webkit-margin-start:41.6666666667%;margin-inline-start:41.6666666667%}.fd-col-md--offset-after-5{-webkit-margin-end:41.6666666667%;margin-inline-end:41.6666666667%}.fd-col-md--6{max-width:50%;min-width:50%}.fd-col-md--offset-6{-webkit-margin-start:50%;margin-inline-start:50%}.fd-col-md--offset-after-6{-webkit-margin-end:50%;margin-inline-end:50%}.fd-col-md--7{max-width:58.3333333333%;min-width:58.3333333333%}.fd-col-md--offset-7{-webkit-margin-start:58.3333333333%;margin-inline-start:58.3333333333%}.fd-col-md--offset-after-7{-webkit-margin-end:58.3333333333%;margin-inline-end:58.3333333333%}.fd-col-md--8{max-width:66.6666666667%;min-width:66.6666666667%}.fd-col-md--offset-8{-webkit-margin-start:66.6666666667%;margin-inline-start:66.6666666667%}.fd-col-md--offset-after-8{-webkit-margin-end:66.6666666667%;margin-inline-end:66.6666666667%}.fd-col-md--9{max-width:75%;min-width:75%}.fd-col-md--offset-9{-webkit-margin-start:75%;margin-inline-start:75%}.fd-col-md--offset-after-9{-webkit-margin-end:75%;margin-inline-end:75%}.fd-col-md--10{max-width:83.3333333333%;min-width:83.3333333333%}.fd-col-md--offset-10{-webkit-margin-start:83.3333333333%;margin-inline-start:83.3333333333%}.fd-col-md--offset-after-10{-webkit-margin-end:83.3333333333%;margin-inline-end:83.3333333333%}.fd-col-md--11{max-width:91.6666666667%;min-width:91.6666666667%}.fd-col-md--offset-11{-webkit-margin-start:91.6666666667%;margin-inline-start:91.6666666667%}.fd-col-md--offset-after-11{-webkit-margin-end:91.6666666667%;margin-inline-end:91.6666666667%}.fd-col-md--12{max-width:100%;min-width:100%}.fd-col-md--offset-12{-webkit-margin-start:100%;margin-inline-start:100%}.fd-col-md--offset-after-12{-webkit-margin-end:100%;margin-inline-end:100%}}@media(min-width:1024px){.fd-col-lg--0{max-width:0;min-width:0%}.fd-col-lg--offset-0{-webkit-margin-start:0;margin-inline-start:0}.fd-col-lg--offset-after-0{-webkit-margin-end:0;margin-inline-end:0}.fd-col-lg--1{max-width:8.3333333333%;min-width:8.3333333333%}.fd-col-lg--offset-1{-webkit-margin-start:8.3333333333%;margin-inline-start:8.3333333333%}.fd-col-lg--offset-after-1{-webkit-margin-end:8.3333333333%;margin-inline-end:8.3333333333%}.fd-col-lg--2{max-width:16.6666666667%;min-width:16.6666666667%}.fd-col-lg--offset-2{-webkit-margin-start:16.6666666667%;margin-inline-start:16.6666666667%}.fd-col-lg--offset-after-2{-webkit-margin-end:16.6666666667%;margin-inline-end:16.6666666667%}.fd-col-lg--3{max-width:25%;min-width:25%}.fd-col-lg--offset-3{-webkit-margin-start:25%;margin-inline-start:25%}.fd-col-lg--offset-after-3{-webkit-margin-end:25%;margin-inline-end:25%}.fd-col-lg--4{max-width:33.3333333333%;min-width:33.3333333333%}.fd-col-lg--offset-4{-webkit-margin-start:33.3333333333%;margin-inline-start:33.3333333333%}.fd-col-lg--offset-after-4{-webkit-margin-end:33.3333333333%;margin-inline-end:33.3333333333%}.fd-col-lg--5{max-width:41.6666666667%;min-width:41.6666666667%}.fd-col-lg--offset-5{-webkit-margin-start:41.6666666667%;margin-inline-start:41.6666666667%}.fd-col-lg--offset-after-5{-webkit-margin-end:41.6666666667%;margin-inline-end:41.6666666667%}.fd-col-lg--6{max-width:50%;min-width:50%}.fd-col-lg--offset-6{-webkit-margin-start:50%;margin-inline-start:50%}.fd-col-lg--offset-after-6{-webkit-margin-end:50%;margin-inline-end:50%}.fd-col-lg--7{max-width:58.3333333333%;min-width:58.3333333333%}.fd-col-lg--offset-7{-webkit-margin-start:58.3333333333%;margin-inline-start:58.3333333333%}.fd-col-lg--offset-after-7{-webkit-margin-end:58.3333333333%;margin-inline-end:58.3333333333%}.fd-col-lg--8{max-width:66.6666666667%;min-width:66.6666666667%}.fd-col-lg--offset-8{-webkit-margin-start:66.6666666667%;margin-inline-start:66.6666666667%}.fd-col-lg--offset-after-8{-webkit-margin-end:66.6666666667%;margin-inline-end:66.6666666667%}.fd-col-lg--9{max-width:75%;min-width:75%}.fd-col-lg--offset-9{-webkit-margin-start:75%;margin-inline-start:75%}.fd-col-lg--offset-after-9{-webkit-margin-end:75%;margin-inline-end:75%}.fd-col-lg--10{max-width:83.3333333333%;min-width:83.3333333333%}.fd-col-lg--offset-10{-webkit-margin-start:83.3333333333%;margin-inline-start:83.3333333333%}.fd-col-lg--offset-after-10{-webkit-margin-end:83.3333333333%;margin-inline-end:83.3333333333%}.fd-col-lg--11{max-width:91.6666666667%;min-width:91.6666666667%}.fd-col-lg--offset-11{-webkit-margin-start:91.6666666667%;margin-inline-start:91.6666666667%}.fd-col-lg--offset-after-11{-webkit-margin-end:91.6666666667%;margin-inline-end:91.6666666667%}.fd-col-lg--12{max-width:100%;min-width:100%}.fd-col-lg--offset-12{-webkit-margin-start:100%;margin-inline-start:100%}.fd-col-lg--offset-after-12{-webkit-margin-end:100%;margin-inline-end:100%}}@media(min-width:1440px){.fd-col-xl--0{max-width:0;min-width:0%}.fd-col-xl--offset-0{-webkit-margin-start:0;margin-inline-start:0}.fd-col-xl--offset-after-0{-webkit-margin-end:0;margin-inline-end:0}.fd-col-xl--1{max-width:8.3333333333%;min-width:8.3333333333%}.fd-col-xl--offset-1{-webkit-margin-start:8.3333333333%;margin-inline-start:8.3333333333%}.fd-col-xl--offset-after-1{-webkit-margin-end:8.3333333333%;margin-inline-end:8.3333333333%}.fd-col-xl--2{max-width:16.6666666667%;min-width:16.6666666667%}.fd-col-xl--offset-2{-webkit-margin-start:16.6666666667%;margin-inline-start:16.6666666667%}.fd-col-xl--offset-after-2{-webkit-margin-end:16.6666666667%;margin-inline-end:16.6666666667%}.fd-col-xl--3{max-width:25%;min-width:25%}.fd-col-xl--offset-3{-webkit-margin-start:25%;margin-inline-start:25%}.fd-col-xl--offset-after-3{-webkit-margin-end:25%;margin-inline-end:25%}.fd-col-xl--4{max-width:33.3333333333%;min-width:33.3333333333%}.fd-col-xl--offset-4{-webkit-margin-start:33.3333333333%;margin-inline-start:33.3333333333%}.fd-col-xl--offset-after-4{-webkit-margin-end:33.3333333333%;margin-inline-end:33.3333333333%}.fd-col-xl--5{max-width:41.6666666667%;min-width:41.6666666667%}.fd-col-xl--offset-5{-webkit-margin-start:41.6666666667%;margin-inline-start:41.6666666667%}.fd-col-xl--offset-after-5{-webkit-margin-end:41.6666666667%;margin-inline-end:41.6666666667%}.fd-col-xl--6{max-width:50%;min-width:50%}.fd-col-xl--offset-6{-webkit-margin-start:50%;margin-inline-start:50%}.fd-col-xl--offset-after-6{-webkit-margin-end:50%;margin-inline-end:50%}.fd-col-xl--7{max-width:58.3333333333%;min-width:58.3333333333%}.fd-col-xl--offset-7{-webkit-margin-start:58.3333333333%;margin-inline-start:58.3333333333%}.fd-col-xl--offset-after-7{-webkit-margin-end:58.3333333333%;margin-inline-end:58.3333333333%}.fd-col-xl--8{max-width:66.6666666667%;min-width:66.6666666667%}.fd-col-xl--offset-8{-webkit-margin-start:66.6666666667%;margin-inline-start:66.6666666667%}.fd-col-xl--offset-after-8{-webkit-margin-end:66.6666666667%;margin-inline-end:66.6666666667%}.fd-col-xl--9{max-width:75%;min-width:75%}.fd-col-xl--offset-9{-webkit-margin-start:75%;margin-inline-start:75%}.fd-col-xl--offset-after-9{-webkit-margin-end:75%;margin-inline-end:75%}.fd-col-xl--10{max-width:83.3333333333%;min-width:83.3333333333%}.fd-col-xl--offset-10{-webkit-margin-start:83.3333333333%;margin-inline-start:83.3333333333%}.fd-col-xl--offset-after-10{-webkit-margin-end:83.3333333333%;margin-inline-end:83.3333333333%}.fd-col-xl--11{max-width:91.6666666667%;min-width:91.6666666667%}.fd-col-xl--offset-11{-webkit-margin-start:91.6666666667%;margin-inline-start:91.6666666667%}.fd-col-xl--offset-after-11{-webkit-margin-end:91.6666666667%;margin-inline-end:91.6666666667%}.fd-col-xl--12{max-width:100%;min-width:100%}.fd-col-xl--offset-12{-webkit-margin-start:100%;margin-inline-start:100%}.fd-col-xl--offset-after-12{-webkit-margin-end:100%;margin-inline-end:100%}}.fd-grid-list{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-grid-list:after,.fd-grid-list:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list .fd-grid-list__radio-input{height:1rem;width:1rem}.fd-grid-list .fd-grid-list__radio-input+.fd-grid-list__radio-label.is-empty,.fd-grid-list .fd-grid-list__radio-input+.fd-grid-list__radio-label:empty{-ms-flex-item-align:center;align-self:center}.fd-grid-list .fd-grid-list__checkbox-input{height:1rem;width:1rem}.fd-grid-list .fd-grid-list__checkbox-input+.fd-grid-list__checkbox-label.is-empty,.fd-grid-list .fd-grid-list__checkbox-input+.fd-grid-list__checkbox-label:empty{-ms-flex-item-align:center;align-self:center}.fd-grid-list .fd-grid-list__item{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:vertical;-webkit-box-direction:normal;background-color:var(--sapList_Background);border-radius:var(--fdGrid_List_Item_Border_Radius);-webkit-box-shadow:var(--sapContent_Shadow0);box-shadow:var(--sapContent_Shadow0);color:var(--sapList_TextColor);-ms-flex-direction:column;flex-direction:column;height:100%;outline:none;overflow:hidden;position:relative}.fd-grid-list .fd-grid-list__item:after,.fd-grid-list .fd-grid-list__item:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list .fd-grid-list__item.is-focus,.fd-grid-list .fd-grid-list__item:focus{z-index:5}.fd-grid-list .fd-grid-list__item.is-focus:before,.fd-grid-list .fd-grid-list__item:focus:before{border:var(--fdGrid_List_Item_Focus_Border);border-radius:var(--fdGrid_List_Item_Border_Radius);-webkit-box-shadow:var(--fdGrid_List_Item_Focus_Box_Shadow);box-shadow:var(--fdGrid_List_Item_Focus_Box_Shadow);content:\\\"\\\";display:block;inset:var(--fdGrid_List_Item_Focus_Outline_Offset);pointer-events:none;position:absolute;z-index:1}.fd-grid-list .fd-grid-list__item--height-auto{height:auto}.fd-grid-list .fd-grid-list__item--unread .fd-grid-list__item-body *{font-weight:700}.fd-grid-list .fd-grid-list__item--link{cursor:pointer}.fd-grid-list .fd-grid-list__item--link.is-hover,.fd-grid-list .fd-grid-list__item--link:hover{background-color:var(--sapList_Hover_Background);-webkit-box-shadow:0 0 0 .0625rem var(--fdGrid_List_Item_Hover_Border_Color),var(--sapContent_Shadow2);box-shadow:0 0 0 .0625rem var(--fdGrid_List_Item_Hover_Border_Color),var(--sapContent_Shadow2)}.fd-grid-list .fd-grid-list__item--link.is-active:not([aria-selected=true],.is-selected),.fd-grid-list .fd-grid-list__item--link:active:not([aria-selected=true],.is-selected){background-color:var(--sapList_Active_Background)}.fd-grid-list .fd-grid-list__item--link.is-active:not([aria-selected=true],.is-selected) *,.fd-grid-list .fd-grid-list__item--link:active:not([aria-selected=true],.is-selected) *{color:var(--sapList_Active_TextColor)!important;text-shadow:none!important}.fd-grid-list .fd-grid-list__item--link.is-selected,.fd-grid-list .fd-grid-list__item--link[aria-selected=true]{background-color:var(--sapList_SelectionBackgroundColor);-webkit-box-shadow:0 0 0 .125rem var(--sapList_SelectionBorderColor);box-shadow:0 0 0 .125rem var(--sapList_SelectionBorderColor)}.fd-grid-list .fd-grid-list__item--link.is-selected.is-hover,.fd-grid-list .fd-grid-list__item--link.is-selected:hover,.fd-grid-list .fd-grid-list__item--link[aria-selected=true].is-hover,.fd-grid-list .fd-grid-list__item--link[aria-selected=true]:hover{background-color:var(--sapList_Hover_SelectionBackground)}.fd-grid-list .fd-grid-list__item--link.is-navigated:after{background-color:var(--sapList_SelectionBorderColor);border-radius:0 var(--fdGrid_List_Item_Border_Radius) var(--fdGrid_List_Item_Border_Radius) 0;content:\\\"\\\";display:block;height:100%;position:absolute;right:0;top:0;width:.1875rem}.fd-grid-list .fd-grid-list__item--link.is-selected:before,.fd-grid-list .fd-grid-list__item--link[aria-selected=true]:before{border-color:var(--sapList_SelectionBackgroundColor)}.fd-grid-list .fd-grid-list__item-toolbar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;--fdToolbar_Padding_Left:1rem;--fdToolbar_Padding_Right:1rem;--fdToolbar_Background:transparent;-ms-flex-negative:0;border:none;-webkit-box-shadow:var(--fdGrid_List_Item_Toolbar_Shadow);box-shadow:var(--fdGrid_List_Item_Toolbar_Shadow);flex-shrink:0}.fd-grid-list .fd-grid-list__item-body{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-ms-flex-wrap:wrap;flex-wrap:wrap;height:100%;padding-block:1rem;padding-inline:1rem;word-break:break-word}.fd-grid-list .fd-grid-list__item-body:after,.fd-grid-list .fd-grid-list__item-body:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list .fd-grid-list__item-body--no-padding{padding-block:0;padding-inline:0}.fd-grid-list .fd-grid-list__item-body-actions{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-margin-before:1rem;margin-block-start:1rem;-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-grid-list .fd-grid-list__item-body-actions:after,.fd-grid-list .fd-grid-list__item-body-actions:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list .fd-grid-list__item-header{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%}.fd-grid-list .fd-grid-list__item-header:after,.fd-grid-list .fd-grid-list__item-header:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list .fd-grid-list__item-header+.fd-grid-list__item-content{-webkit-padding-before:1rem;padding-block-start:1rem}.fd-grid-list .fd-grid-list__item-image{-webkit-margin-end:.75rem;margin-inline-end:.75rem}.fd-grid-list .fd-grid-list__item-image+.fd-grid-list__item-content,.fd-grid-list .fd-grid-list__item-image+.fd-grid-list__item-header{max-width:calc(100% - 3.75rem)}.fd-grid-list .fd-grid-list__item-title{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapList_TextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-size:var(--sapFontLargeSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;white-space:normal;-webkit-margin-before:.125rem;margin-block-start:.125rem}.fd-grid-list .fd-grid-list__item-title:after,.fd-grid-list .fd-grid-list__item-title:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list .fd-grid-list__item-subtitle{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapContent_LabelColor);display:inline-block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-block:.5rem .125rem;margin-inline:0;padding-block:0;padding-inline:0}.fd-grid-list .fd-grid-list__item-subtitle:after,.fd-grid-list .fd-grid-list__item-subtitle:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list .fd-grid-list__item-content{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapList_TextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;width:100%}.fd-grid-list .fd-grid-list__item-content:after,.fd-grid-list .fd-grid-list__item-content:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list .fd-grid-list__item-counter{color:var(--sapContent_MarkerTextColor)}.fd-grid-list .fd-grid-list__item .fd-grid-list__item-navigation-indicator{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;color:var(--sapContent_NonInteractiveIconColor);margin-inline:0 -1rem;width:2.5rem}.fd-grid-list .fd-grid-list__item .fd-grid-list__item-navigation-indicator[dir=rtl],[dir=rtl] .fd-grid-list .fd-grid-list__item .fd-grid-list__item-navigation-indicator{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fd-grid-list__group-header{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:-webkit-box;display:-ms-flexbox;display:flex;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:2rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-margin-before:.75rem;color:var(--sapList_GroupHeaderTextColo);font-size:var(--sapFontHeader5Size);font-weight:700;line-height:2rem;margin-block-start:.75rem}.fd-grid-list__group-header:after,.fd-grid-list__group-header:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list__group-header.is-focus,.fd-grid-list__group-header:focus{outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth);outline-offset:-.1875rem}.fd-grid-list__group-header--no-margin{-webkit-margin-before:0;margin-block-start:0}.fd-grid-list__more{background-color:var(--sapGroup_ContentBackground);border:0;border-radius:var(--fdGrid_List_Item_Border_Radius);-webkit-box-shadow:var(--sapContent_Shadow0);box-shadow:var(--sapContent_Shadow0);-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);cursor:pointer;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-block:.813rem;padding-inline:0;padding-inline:.813rem;text-align:center}.fd-grid-list__more:after,.fd-grid-list__more:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list__more.is-focus,.fd-grid-list__more:focus{outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth);outline-offset:-.1875rem}.fd-grid-list__more-title{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;font-weight:700;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-grid-list__more-title:after,.fd-grid-list__more-title:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list__more-description{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-block:.813rem 0;margin-inline:0;padding-block:0;padding-inline:0}.fd-grid-list__more-description:after,.fd-grid-list__more-description:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list__more-description,.fd-grid-list__more-title{color:var(--sapLink_Visited_Color)}.fd-grid-list__more.is-hover,.fd-grid-list__more:hover{background-color:var(--sapList_Hover_Background)}.fd-grid-list__more.is-active,.fd-grid-list__more:active{background-color:var(--sapList_Active_Background)}.fd-grid-list__more.is-active-description,.fd-grid-list__more.is-active-title,.fd-grid-list__more:active-description,.fd-grid-list__more:active-title{color:var(--sapList_Active_TextColor)}.fd-grid-list__footer{border:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);color:var(--sapList_FooterTextColor);font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0}.fd-grid-list__footer:after,.fd-grid-list__footer:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list__footer.is-focus,.fd-grid-list__footer:focus{outline:var(--sapContent_FocusColor) var(--sapContent_FocusStyle) var(--sapContent_FocusWidth)}.fd-grid-list__highlight{border:0;border-radius:var(--fdGrid_List_Item_Border_Radius) 0 0 var(--fdGrid_List_Item_Border_Radius);bottom:0;-webkit-box-sizing:border-box;box-sizing:border-box;color:var(--sapTextColor);display:block;font-family:var(--sapFontFamily);font-size:var(--sapFontSize);font-weight:400;forced-color-adjust:none;left:0;line-height:normal;margin-block:0;margin-inline:0;padding-block:0;padding-inline:0;position:absolute;top:0;width:.375rem}.fd-grid-list__highlight:after,.fd-grid-list__highlight:before{-webkit-box-sizing:inherit;box-sizing:inherit;font-size:inherit}.fd-grid-list__highlight[dir=rtl],[dir=rtl] .fd-grid-list__highlight{right:0}.fd-grid-list__highlight--positive{background-color:var(--sapSuccessBorderColor)}.fd-grid-list__highlight--negative{background-color:var(--sapErrorBorderColor)}.fd-grid-list__highlight--critical{background-color:var(--sapWarningBorderColor)}.fd-grid-list__highlight--neutral{background-color:var(--sapNeutralBorderColor)}.fd-grid-list--mode-multi-select .fd-grid-list__item .fd-grid-list__checkbox-label,.fd-grid-list--mode-multi-select .fd-grid-list__item .fd-grid-list__radio-label,.fd-grid-list--mode-single-select-left .fd-grid-list__item .fd-grid-list__checkbox-label,.fd-grid-list--mode-single-select-left .fd-grid-list__item .fd-grid-list__radio-label,.fd-grid-list--mode-single-select-right .fd-grid-list__item .fd-grid-list__checkbox-label,.fd-grid-list--mode-single-select-right .fd-grid-list__item .fd-grid-list__radio-label{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;color:var(--sapContent_LabelColor);-ms-flex-direction:row;flex-direction:row}.fd-grid-list--mode-multi-select .fd-grid-list__item .fd-grid-list__checkbox-label.is-empty,.fd-grid-list--mode-multi-select .fd-grid-list__item .fd-grid-list__checkbox-label:empty,.fd-grid-list--mode-multi-select .fd-grid-list__item .fd-grid-list__radio-label.is-empty,.fd-grid-list--mode-multi-select .fd-grid-list__item .fd-grid-list__radio-label:empty,.fd-grid-list--mode-single-select-left .fd-grid-list__item .fd-grid-list__checkbox-label.is-empty,.fd-grid-list--mode-single-select-left .fd-grid-list__item .fd-grid-list__checkbox-label:empty,.fd-grid-list--mode-single-select-left .fd-grid-list__item .fd-grid-list__radio-label.is-empty,.fd-grid-list--mode-single-select-left .fd-grid-list__item .fd-grid-list__radio-label:empty,.fd-grid-list--mode-single-select-right .fd-grid-list__item .fd-grid-list__checkbox-label.is-empty,.fd-grid-list--mode-single-select-right .fd-grid-list__item .fd-grid-list__checkbox-label:empty,.fd-grid-list--mode-single-select-right .fd-grid-list__item .fd-grid-list__radio-label.is-empty,.fd-grid-list--mode-single-select-right .fd-grid-list__item .fd-grid-list__radio-label:empty{-webkit-margin-start:-.5rem;margin-inline-start:-.5rem}.fd-grid-list--mode-single-select .fd-grid-list__item{cursor:pointer}.fd-grid-list--mode-single-select .fd-grid-list__item.is-hover,.fd-grid-list--mode-single-select .fd-grid-list__item:hover{background-color:var(--sapList_Hover_Background);-webkit-box-shadow:0 0 0 .0625rem var(--fdGrid_List_Item_Hover_Border_Color),var(--sapContent_Shadow2);box-shadow:0 0 0 .0625rem var(--fdGrid_List_Item_Hover_Border_Color),var(--sapContent_Shadow2)}.fd-grid-list--mode-single-select .fd-grid-list__item.is-selected,.fd-grid-list--mode-single-select .fd-grid-list__item[aria-selected=true]{background-color:var(--sapList_SelectionBackgroundColor);-webkit-box-shadow:0 0 0 .125rem var(--sapList_SelectionBorderColor);box-shadow:0 0 0 .125rem var(--sapList_SelectionBorderColor)}.fd-grid-list--mode-single-select .fd-grid-list__item.is-selected.is-hover,.fd-grid-list--mode-single-select .fd-grid-list__item.is-selected:hover,.fd-grid-list--mode-single-select .fd-grid-list__item[aria-selected=true].is-hover,.fd-grid-list--mode-single-select .fd-grid-list__item[aria-selected=true]:hover{background-color:var(--sapList_Hover_SelectionBackground)}.fd-grid-list--mode-single-select .fd-grid-list__item .fd-grid-list__radio-input{height:100%;width:100%;z-index:-1}.fd-grid-list--mode-single-select .fd-grid-list__item .fd-grid-list__radio-label{display:none}.fd-grid-list--mode-single-select .fd-grid-list__item.is-selected:before,.fd-grid-list--mode-single-select .fd-grid-list__item[aria-selected=true]:before{border-color:var(--sapList_SelectionBackgroundColor)}.fd-grid-list--mode-single-select-right .fd-grid-list__item .fd-grid-list__radio-input{right:1rem}.fd-grid-list--mode-single-select-right .fd-grid-list__item .fd-grid-list__radio-label{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.fd-grid-list--mode-single-select-right .fd-grid-list__item .fd-grid-list__radio-label.is-empty,.fd-grid-list--mode-single-select-right .fd-grid-list__item .fd-grid-list__radio-label:empty{margin-inline:.5rem -.5rem}.fd-grid-list--mode-multi-select .fd-toolbar.fd-grid-list__item-toolbar{padding-inline:.5rem 1rem}\\n/*! Bundled license information:\\n\\nfundamental-styles/dist/grid-list.css:\\n (*!\\n * Fundamental Library Styles v0.40.1\\n * Copyright (c) 2025 SAP SE or an SAP affiliate company.\\n * Licensed under Apache License 2.0 (https://github.com/SAP/fundamental-styles/blob/main/LICENSE)\\n *)\\n*/\\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)}.fd-dnd-list{position:relative}\\n\"] }]\n }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i0.ElementRef }], propDecorators: { id: [{\n type: Input\n }], width: [{\n type: Input\n }], ariaLabel: [{\n type: Input\n }], selectionMode: [{\n type: Input\n }], layoutPattern: [{\n type: Input\n }], selectionChange: [{\n type: Output\n }], gridListItems: [{\n type: ContentChildren,\n args: [GridListItemComponent, { descendants: true }]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1saXN0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9ncmlkLWxpc3QvY29tcG9uZW50cy9ncmlkLWxpc3QvZ3JpZC1saXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9ncmlkLWxpc3QvY29tcG9uZW50cy9ncmlkLWxpc3QvZ3JpZC1saXN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUN0RyxPQUFPLEVBRUgsdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUNqQixTQUFTLEVBQ1QsZUFBZSxFQUNmLFVBQVUsRUFDVixVQUFVLEVBQ1YsWUFBWSxFQUNaLEtBQUssRUFHTCxNQUFNLEVBQ04sU0FBUyxFQUVULGlCQUFpQixFQUNqQixRQUFRLEVBQ1IsTUFBTSxFQUNULE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxPQUFPLEVBQUUsc0JBQXNCLEVBQVksYUFBYSxFQUFFLFVBQVUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ2xILE9BQU8sRUFBRSxlQUFlLEVBQWMsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN6RSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDeEUsT0FBTyxFQUNILHdCQUF3QixFQUczQixNQUFNLHlDQUF5QyxDQUFDO0FBQ2pELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRDQUE0QyxD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R0FBRyxxQkFBcUIsQ0FBQztZQUN4RCxDQUFDO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsY0FBYztJQUNOLDRCQUE0QixDQUFDLEdBQVcsRUFBRSxLQUF3QjtRQUN0RSxJQUFJLENBQUMsY0FBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDLFVBQVUsRUFBRSxFQUFFO1lBQ3ZDLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxLQUFLLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDOzhHQXBiUSxpQkFBaUI7a0dBQWpCLGlCQUFpQiwwT0FKZixDQUFDLHNCQUFzQixFQUFFLEVBQUUsT0FBTyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyx3REEwQ3pFLHFCQUFxQiw0RkNsRjFDLHF1QkFrQkE7OzJGRDBCYSxpQkFBaUI7a0JBVDdCLFNBQVM7K0JBQ0ksY0FBYyxpQkFHVCxpQkFBaUIsQ0FBQyxJQUFJLGFBQzFCLENBQUMsc0JBQXNCLEVBQUUsRUFBRSxPQUFPLEVBQUUsUUFBUSxFQUFFLFdBQVcsbUJBQW1CLEVBQUUsQ0FBQyxtQkFDekUsdUJBQXVCLENBQUMsTUFBTSxjQUNuQyxJQUFJOytHQUtoQixFQUFFO3NCQURELEtBQUs7Z0JBS04sS0FBSztzQkFESixLQUFLO2dCQUtOLFNBQVM7c0JBRFIsS0FBSztnQkFjTixhQUFhO3NCQURaLEtBQUs7Z0JBUU4sYUFBYTtzQkFEWixLQUFLO2dCQUtOLGVBQWU7c0JBRGQsTUFBTTtnQkFLSCxhQUFhO3NCQURoQixlQUFlO3VCQUFDLHFCQUFxQixFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERPV05fQVJST1csIEVORCwgSE9NRSwgTEVGVF9BUlJPVywgUklHSFRfQVJST1csIFRBQiwgVVBfQVJST1cgfSBmcm9tICdAYW5ndWxhci9jZGsva2V5Y29kZXMnO1xuaW1wb3J0IHtcbiAgICBBZnRlckNvbnRlbnRJbml0LFxuICAgIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICAgIENoYW5nZURldGVjdG9yUmVmLFxuICAgIENvbXBvbmVudCxcbiAgICBDb250ZW50Q2hpbGRyZW4sXG4gICAgRGVzdHJveVJlZixcbiAgICBFbGVtZW50UmVmLFxuICAgIEV2ZW50RW1pdHRlcixcbiAgICBJbnB1dCxcbiAgICBPbkNoYW5nZXMsXG4gICAgT25EZXN0cm95LFxuICAgIE91dHB1dCxcbiAgICBRdWVyeUxpc3QsXG4gICAgU2ltcGxlQ2hhbmdlcyxcbiAgICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgICBjb21wdXRlZCxcbiAgICBpbmplY3Rcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBLZXlVdGlsLCBLZXlib2FyZFN1cHBvcnRTZXJ2aWNlLCBOdWxsYWJsZSwgUmFuZ2VTZWxlY3RvciwgUnRsU2VydmljZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY2RrL3V0aWxzJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSwgU3Vic2NyaXB0aW9uLCBmaWx0ZXIgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHN0YXJ0V2l0aCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IHBhcnNlTGF5b3V0UGF0dGVybiB9IGZyb20gJy4uLy4uL2hlbHBlcnMvcGFyc2UtbGF5b3V0LXBhdHRlcm4nO1xuaW1wb3J0IHtcbiAgICBHcmlkTGlzdFNlbGVjdGlvbkFjdGlvbnMsXG4gICAgR3JpZExpc3RTZWxlY3Rpb25FdmVudCxcbiAgICBHcmlkTGlzdFNlbGVjdGlvbk1vZGVcbn0gZnJvbSAnLi4vLi4vbW9kZWxzL2dyaWQtbGlzdC1zZWxlY3Rpb24ubW9kZWxzJztcbmltcG9ydCB7IEdyaWRMaXN0SXRlbUNvbXBvbmVudCB9IGZyb20gJy4uL2dyaWQtbGlzdC1pdGVtL2dyaWQtbGlzdC1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHcmlkTGlzdCB9IGZyb20gJy4vZ3JpZC1saXN0LWJhc2UuY29tcG9uZW50JztcblxubGV0IGdyaWRMaXN0VW5pcXVlSWQgPSAwO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2ZkLWdyaWQtbGlzdCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2dyaWQtbGlzdC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZ3JpZC1saXN0LmNvbXBvbmVudC5zY3NzJywgJy4uLy4uLy4uLy4uL2Nkay91dGlscy9kcmFnLWFuZC1kcm9wL2RyYWctYW5kLWRyb3Auc2NzcyddLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgcHJvdmlkZXJzOiBbS2V5Ym9hcmRTdXBwb3J0U2VydmljZSwgeyBwcm92aWRlOiBHcmlkTGlzdCwgdXNlRXhpc3Rpbmc6IEdyaWRMaXN0Q29tcG9uZW50IH1dLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgR3JpZExpc3RDb21wb25lbnQ8VD4gZXh0ZW5kcyBHcmlkTGlzdDxUPiBpbXBsZW1lbnRzIE9uQ2hhbmdlcywgQWZ0ZXJDb250ZW50SW5pdCwgT25EZXN0cm95IHtcbiAgICAvKiogaWQgZm9yIHRoZSBFbGVtZW50ICovXG4gICAgQElucHV0KClcbiAgICBpZCA9IGBmZC1ncmlkLWxpc3QtJHtncmlkTGlzdFVuaXF1ZUlkKyt9YDtcblxuICAgIC8qKiB3aWR0aCBvZiB0aGUgZWxlbWVudCAqL1xuICAgIEBJbnB1dCgpXG4gICAgd2lkdGg6IHN0cmluZztcblxuICAgIC8qKiBTZXRzIHRoZSBgYXJpYS1sYWJlbGAgYXR0cmlidXRlIHRvIHRoZSBlbGVtZW50LiAqL1xuICAgIEBJbnB1dCgpXG4gICAgYXJpYUxhYmVsOiBOdWxsYWJsZTxzdHJpbmc+O1xuXG4gICAgLyoqXG4gICAgICogRGVmaW5lcyB0aGUgbW9kZSBvZiBHcmlkIExpc3RcbiAgICAgKiBNb2RlczpcbiAgICAgKiAtIG5vbmU6IERlZmF1bHQgbW9kZSAobm8gc2VsZWN0aW9uKVxuICAgICAqIC0gZGVsZXRlOiBEZWxldGUgbW9kZSAob25seSBvbmUgbGlzdCBpdGVtIGNhbiBiZSBkZWxldGVkIHZpYSBwcm92aWRlZCBkZWxldGUgYnV0dG9uKVxuICAgICAqIC0gc2luZ2xlU2VsZWN0OiBTZWxlY3RlZCBpdGVtIGlzIGhpZ2hsaWdodGVkIGJ1dCBubyBzZWxlY3Rpb24gY29udHJvbCBpcyB2aXNpYmxlIChvbmx5IG9uZSBsaXN0IGl0ZW0gY2FuIGJlIHNlbGVjdGVkKVxuICAgICAqIC0gc2luZ2xlU2VsZWN0TGVmdDogTGVmdC1wb3NpdGlvbmVkIHNpbmdsZSBzZWxlY3Rpb24gbW9kZSAob25seSBvbmUgbGlzdCBpdGVtIGNhbiBiZSBzZWxlY3RlZClcbiAgICAgKiAtIHNpbmdsZVNlbGVjdFJpZ2h0OiBSaWdodC1wb3NpdGlvbmVkIHNpbmdsZSBzZWxlY3Rpb24gbW9kZSAob25seSBvbmUgbGlzdCBpdGVtIGNhbiBiZSBzZWxlY3RlZClcbiAgICAgKiAtIG11bHRpU2VsZWN0OiBNdWx0aS1zZWxlY3Rpb24gbW9kZSAobW9yZSB0aGFuIG9uZSBsaXN0IGl0ZW0gY2FuIGJlIHNlbGVjdGVkKVxuICAgICAqICAqL1xuICAgIEBJbnB1dCgpXG4gICAgc2VsZWN0aW9uTW9kZTogR3JpZExpc3RTZWxlY3Rpb25Nb2RlID0gJ25vbmUnO1xuXG4gICAgLyoqXG4gICAgICogc3BlY2lmeSB0aGUgY29sdW1uIGxheW91dCBpbiB0aGUgZm9ybWF0IGBYTG4tTG4tTW4tU25gIHdoZXJlIG4gaXMgdGhlIG51bWJlciBvZiBjb2x1bW5zIGFuZCBjYW4gYmUgZGlmZmVyZW50IGZvciBlYWNoIHNpemUuXG4gICAgICogZWc6IFhMMi1MMi1NMi1TMSB3b3VsZCBjcmVhdGUgMi1jb2x1bW4gbGF5b3V0cyBmb3IgWEwsIEwsIGFuZCBNIHNpemVzIGFuZCBzaW5nbGUtY29sdW1uIGxheW91dCBmb3IgUyBzaXplLlxuICAgICAqL1xuICAgIEBJbnB1dCgpXG4gICAgbGF5b3V0UGF0dGVybjogc3RyaW5nO1xuXG4gICAgLyoqIEV2ZW50IGlzIHRocm93biwgd2hlbiBtb2RlIGlzIHNpbmdsZVNlbGVjdCwgc2luZ2xlU2VsZWN0TGVmdCwgc2luZ2xlU2VsZWN0UmlnaHQgb3IgbXVsdGlTZWxlY3QgYW5kIGl0ZW0gd2FzIHNlbGVjdGVkICovXG4gICAgQE91dHB1dCgpXG4gICAgc2VsZWN0aW9uQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxHcmlkTGlzdFNlbGVjdGlvbkV2ZW50PFQ+PigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBAQ29udGVudENoaWxkcmVuKEdyaWRMaXN0SXRlbUNvbXBvbmVudCwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KVxuICAgIHNldCBncmlkTGlzdEl0ZW1zKGNvbXBvbmVudHM6IFF1ZXJ5TGlzdDxHcmlkTGlzdEl0ZW1Db21wb25lbnQ8VD4+KSB7XG4gICAgICAgIHRoaXMuX2dyaWRMaXN0SXRlbXMgPSBjb21wb25lbnRzO1xuICAgICAgICB0aGlzLl91cGRhdGVHcmlkTGlzdEl0ZW1zUHJvcGVydGllcyhjb21wb25lbnRzKTtcbiAgICB9XG5cbiAgICBnZXQgZ3JpZExpc3RJdGVtcygpOiBRdWVyeUxpc3Q8R3JpZExpc3RJdGVtQ29tcG9uZW50PFQ+PiB7XG4gICAgICAgIHJldHVybiB0aGlzLl9ncmlkTGlzdEl0ZW1zO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcmVhZG9ubHkgX3NlbGVjdGVkSXRlbXMkOiBPYnNlcnZhYmxlPEdyaWRMaXN0U2VsZWN0aW9uRXZlbnQ8VD4+O1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9ncmlkTGlzdEl0ZW1zOiBRdWVyeUxpc3Q8R3JpZExpc3RJdGVtQ29tcG9uZW50PFQ+PjtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBfcmFuZ2VTZWxlY3RvciA9IG5ldyBSYW5nZVNlbGVjdG9yKCk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX3NlbGVjdGVkSXRlbXM6IEdyaWRMaXN0U2VsZWN0aW9uRXZlbnQ8VD4gPSB7XG4gICAgICAgIGFkZGVkOiBbXSxcbiAgICAgICAgaW5kZXg6IFtdLFxuICAgICAgICByZW1vdmVkOiBbXSxcbiAgICAgICAgc2VsZWN0aW9uOiBbXVxuICAgIH07XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX3NlbGVjdGVkSXRlbXNTdWJqZWN0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8R3JpZExpc3RTZWxlY3Rpb25FdmVudDxUPj4odGhpcy5fc2VsZWN0ZWRJdGVtcyk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gICAgLyoqIEFuIFJ4SlMgU3ViamVjdCB0aGF0IHdpbGwga2lsbCB0aGUgZGF0YSBzdHJlYW0gdXBvbiBjb21wb25lbnTigJlzIGRlc3RydWN0aW9uIChmb3IgdW5zdWJzY3JpYmluZykgICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBfZGVzdHJveVJlZiA9IGluamVjdChEZXN0cm95UmVmKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSByZWFkb25seSBfcnRsU2VydmljZSA9IGluamVjdChSdGxTZXJ2aWNlLCB7XG4gICAgICAgIG9wdGlvbmFsOiB0cnVlXG4gICAgfSk7XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgcmVhZG9ubHkgX3J0bCQgPSBjb21wdXRlZDxib29sZWFuPigoKSA9PiAhIXRoaXMuX3J0bFNlcnZpY2U/LnJ0bFNpZ25hbCgpKTtcblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgX2NkOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgICAgcHJpdmF0ZSBfZWxSZWY6IEVsZW1lbnRSZWZcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICAgICAgdGhpcy5fc2VsZWN0ZWRJdGVtcyQgPSB0aGlzLl9zZWxlY3RlZEl0ZW1zU3ViamVjdCQuYXNPYnNlcnZhYmxlKCk7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkSXRlbXNTdWIgPSB0aGlzLl9zZWxlY3RlZEl0ZW1zJFxuICAgICAgICAgICAgLnBpcGUoZmlsdGVyKCgpID0+ICEhdGhpcy5fZ3JpZExpc3RJdGVtcykpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHRoaXMuc2VsZWN0aW9uQ2hhbmdlKTtcblxuICAgICAgICB0aGlzLnN1YnNjcmlwdGlvbi5hZGQoc2VsZWN0ZWRJdGVtc1N1Yik7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgIGNoYW5nZXMubGF5b3V0UGF0dGVybiAmJlxuICAgICAgICAgICAgIWNoYW5nZXMubGF5b3V0UGF0dGVybi5maXJzdENoYW5nZSAmJlxuICAgICAgICAgICAgY2hhbmdlcy5sYXlvdXRQYXR0ZXJuLnByZXZpb3VzVmFsdWUgIT09IGNoYW5nZXMubGF5b3V0UGF0dGVybi5jdXJyZW50VmFsdWVcbiAgICAgICAgKSB7XG4gICAgICAgICAgICBjb25zdCBiYXNlTGF5b3V0SXRlbVBhdHRlcm4gPSBwYXJzZUxheW91dFBhdHRlcm4odGhpcy5sYXlvdXRQYXR0ZXJuKTtcbiAgICAgICAgICAgIHRoaXMuX3VwZGF0ZUdyaWRMaXN0SXRlbXNQcm9wZXJ0eSgnZ3JpZExheW91dENsYXNzZXMnLCBiYXNlTGF5b3V0SXRlbVBhdHRlcm4pO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgY2hhbmdlcy5zZWxlY3Rpb25Nb2RlICYmXG4gICAgICAgICAgICAhY2hhbmdlcy5zZWxlY3Rpb25Nb2RlLmZpcnN0Q2hhbmdlICYmXG4gICAgICAgICAgICBjaGFuZ2VzLnNlbGVjdGlvbk1vZGUucHJldmlvdXNWYWx1ZSAhPT0gY2hhbmdlcy5zZWxlY3Rpb25Nb2RlLmN1cnJlbnRWYWx1ZVxuICAgICAgICApIHtcbiAgICAgICAgICAgIHRoaXMuX3VwZGF0ZUdyaWRMaXN0SXRlbXNQcm9wZXJ0eSgnc2VsZWN0aW9uTW9kZScsIHRoaXMuc2VsZWN0aW9uTW9kZSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fc2V0Rmlyc3RGb2N1c2FibGVJdGVtKCk7XG4gICAgICAgIHRoaXMuX2xpc3Rlbk9uUXVlcnlDaGFuZ2UoKTtcbiAgICAgICAgdGhpcy5fY2QuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQ2xlYXJzIHByZXZpb3VzIHNlbGVjdGlvbiBvZiB0aGUgaXRlbXMuXG4gICAgICovXG4gICAgY2xlYXJTZWxlY3Rpb24oKTogdm9pZCB7XG4gICAgICAgIHRoaXMuX3NlbGVjdGVkSXRlbXMuYWRkZWQgPSBbXTtcbiAgICAgICAgdGhpcy5fc2VsZWN0ZWRJdGVtcy5pbmRleCA9IFtdO1xuICAgICAgICB0aGlzLl9zZWxlY3RlZEl0ZW1zLnJlbW92ZWQgPSB0aGlzLl9zZWxlY3RlZEl0ZW1zLnNlbGVjdGlvbjtcbiAgICAgICAgdGhpcy5fc2VsZWN0ZWRJdGVtcy5zZWxlY3Rpb24gPSBbXTtcblxuICAgICAgICB0aGlzLl9zZWxlY3RlZEl0ZW1zU3ViamVjdCQubmV4dCh0aGlzLl9zZWxlY3RlZEl0ZW1zKTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHNldFNlbGVjdGVkSXRlbShcbiAgICAgICAgaXRlbTogVCxcbiAgICAgICAgY29tcG9uZW50SW5kZXg6IG51bWJlcixcbiAgICAgICAgYWN0aW9uPzogR3JpZExpc3RTZWxlY3Rpb25BY3Rpb25zIHwgbnVsbCxcbiAgICAgICAgZXZlbnQ/OiBQb2ludGVyRXZlbnRcbiAgICApOiB2b2lkIHtcbiAgICAgICAgaWYgKCFhY3Rpb24pIHtcbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGVkSXRlbXMuYWRkZWQgPSBbaXRlbV07XG4gICAgICAgICAgICBjb25zdCBzZWxlY3RlZEl0ZW0gPSB0aGlzLl9zZWxlY3RlZEl0ZW1zLnNlbGVjdGlvblswXTtcbiAgICAgICAgICAgIGlmIChzZWxlY3RlZEl0ZW0pIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9zZWxlY3RlZEl0ZW1zLnJlbW92ZWQgPSBbc2VsZWN0ZWRJdGVtXTtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgdGhpcy5fc2VsZWN0ZWRJdGVtcy5zZWxlY3Rpb24gPSBbaXRlbV07XG4gICAgICAgICAgICB0aGlzLl9zZWxlY3RlZEl0ZW1zLmluZGV4ID0gW2NvbXBvbmVudEluZGV4XTtcblxuICAgICAgICAgICAgdGhpcy5fc2VsZWN0ZWRJdGVtc1N1YmplY3QkLm5leHQodGhpcy5fc2VsZWN0ZWRJdGVtcyk7XG5cbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX3JhbmdlU2VsZWN0b3Iub25SYW5nZUVsZW1lbnRUb2dnbGVkKGNvbXBvbmVudEluZGV4LCBldmVudCk7XG4gICAgICAgIGNvbnN0IHN0YXRlID0gdGhpcy5fcmFuZ2VTZWxlY3Rvci5sYXN0UmFuZ2VTZWxlY3Rpb25TdGF0ZTtcbiAgICAgICAgaWYgKCFzdGF0ZSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGl0ZW1JbmRleGVzID0gbmV3IEFycmF5KHN0YXRlLnRvIC0gc3RhdGUuZnJvbSArIDEpLmZpbGwobnVsbCkubWFwKChlLCBpKSA9PiBzdGF0ZS5mcm9tICsgaSk7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkSXRlbXMgPSBpdGVtSW5kZXhlcy5tYXAoKGlkeCkgPT4gdGhpcy5ncmlkTGlzdEl0ZW1zLmdldChpZHgpPy52YWx1ZSkuZmlsdGVyKCh2KTogdiBpcyBUID0+ICEhdik7XG4gICAgICAgIGNvbnN0IGl0ZW1zU2V0ID0gbmV3IFNldDxUPihzZWxlY3RlZEl0ZW1zKTtcblxuICAgICAgICBpZiAoYWN0aW9uID09PSBHcmlkTGlzdFNlbGVjdGlvbkFjdGlvbnMuQUREKSB7XG4gICAgICAgICAgICB0aGlzLl9zZWxlY3RlZEl0ZW1zLmFkZGVkID0gWy4uLml0ZW1zU2V0LnZhbHVlcygpXTtcbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGVkSXRlbXMuaW5kZXggPSBbLi4uaXRlbUluZGV4ZXNdO1xuICAgICAgICAgICAgdGhpcy5fc2VsZWN0ZWRJdGVtcy5yZW1vdmVkID0gW107XG5cbiAgICAgICAgICAgIC8vIHJlbW92ZSBcIml0ZW1zU2V0XCIgdmFsdWVzIGZyb20gc2VsZWN0aW9uIGFuZCBhZGQgdGhlbSBiYWNrIGZyb20gXCJpdGVtc1NldFwiXG4gICAgICAgICAgICAvLyB0aGlzIGlzIG5lZWRlZCB0byBhdm9pZCBkdXBsaWNhdGVzIGFzIHNvbWUgb2YgdGhlIGl0ZW1zIGNhbiBiZSBhbHJlYWR5IHNlbGVjdGVkXG4gICAgICAgICAgICB0aGlzLl9zZWxlY3RlZEl0ZW1zLnNlbGVjdGlvbiA9IHRoaXMuX3NlbGVjdGVkSXRlbXMuc2VsZWN0aW9uLmZpbHRlcigoZSkgPT4gIWl0ZW1zU2V0LmhhcyhlKSk7XG4gICAgICAgICAgICB0aGlzLl9zZWxlY3RlZEl0ZW1zLnNlbGVjdGlvbi5wdXNoKC4uLml0ZW1zU2V0LnZhbHVlcygpKTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmIChhY3Rpb24gPT09IEdyaWRMaXN0U2VsZWN0aW9uQWN0aW9ucy5SRU1PVkUpIHtcbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGVkSXRlbXMuYWRkZWQgPSBbXTtcbiAgICAgICAgICAgIHRoaXMuX3NlbGVjdGVkSXRlbXMuaW5kZXggPSBbLi4uaXRlbUluZGV4ZXNdO1xuICAgICAgICAgICAgdGhpcy5fc2VsZWN0ZWRJdGVtcy5yZW1vdmVkID0gWy4uLml0ZW1zU2V0LnZhbHVlcygpXTtcblxuICAgICAgICAgICAgdGhpcy5fc2VsZWN0ZWRJdGVtcy5zZWxlY3Rpb24gPSB0aGlzLl9zZWxlY3RlZEl0ZW1zLnNlbGVjdGlvbi5maWx0ZXIoXG4gICAgICAgICAgICAgICAgKHNlbGVjdGVkSXRlbSkgPT4gIWl0ZW1zU2V0LmhhcyhzZWxlY3RlZEl0ZW0pXG4gICAgICAgICAgICApO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fc2VsZWN0ZWRJdGVtc1N1YmplY3QkLm5leHQodGhpcy5fc2VsZWN0ZWRJdGVtcyk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBoYW5kbGVLZXlkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIHRoaXMuX2hhbmRsZVRhYktleWRvd24oZXZlbnQpO1xuICAgICAgICBpZiAoS2V5VXRpbC5pc0tleUNvZGUoZXZlbnQsIFtVUF9BUlJPVywgRE9XTl9BUlJPVywgTEVGVF9BUlJPVywgUklHSFRfQVJST1ddKSkge1xuICAgICAgICAgICAgaWYgKGV2ZW50LnNoaWZ0S2V5ICYmIHRoaXMuc2VsZWN0aW9uTW9kZSA9PT0gJ211bHRpU2VsZWN0Jykge1xuICAgICAgICAgICAgICAgIHRoaXMuX2hhbmRsZVNoaWZ0QXJyb3dLZXlkb3duKGV2ZW50KTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdGhpcy5faGFuZGxlQXJyb3dLZXlkb3duKGV2ZW50KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIGlmIChldmVudC5zaGlmdEtleSAmJiB0aGlzLnNlbGVjdGlvbk1vZGUgPT09ICdtdWx0aVNlbGVjdCcgJiYgS2V5VXRpbC5pc0tleUNvZGUoZXZlbnQsIFtIT01FLCBFTkRdKSkge1xuICAgICAgICAgICAgdGhpcy5faGFuZGxlSG9tZUVuZEtleWRvd24oZXZlbnQpO1xuICAgICAgICB9XG4gICAgfVxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfaGFuZGxlSG9tZUVuZEtleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQpOiB2b2lkIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgbGV0IHNob3VsZFNlbGVjdCA9IGZhbHNlO1xuICAgICAgICBsZXQgc2VsZWN0aW9uQWN0aW9uO1xuICAgICAgICBjb25zdCBpc0VuZEtleWRvd24gPSBLZXlVdGlsLmlzS2V5Q29kZShldmVudCwgRU5EKTtcbiAgICAgICAgY29uc3QgbG9vcFN0YXJ0aW5nSW5kZXggPSBpc0VuZEtleWRvd24gPyAwIDogdGhpcy5fZ3JpZExpc3RJdGVtcy5sZW5ndGggLSAxO1xuICAgICAgICAvKipcbiAgICAgICAgICogVGVybmFyeSBsb29wIC0gaWYgaXNFbmRLZXlkb3duIGlzIHRydWUsIGxvb3AgaXRlcmF0ZXMgZnJvbSB6ZXJvIHRvIHRoZSBlbmQgb2YgdGhlIGdyaWQgbGlzdCBpdGVtcy5cbiAgICAgICAgICogSWYgaXNFbmRLZXlkb3duIGlzIGZhbHNlLCBsb29wIGl0ZXJhdGVzIGJhY2t3YXJkc1xuICAgICAgICAgKiovXG4gICAgICAgIGZvciAoXG4gICAgICAgICAgICBsZXQgaW5kZXggPSBsb29wU3RhcnRpbmdJbmRleDtcbiAgICAgICAgICAgIGlzRW5kS2V5ZG93biA/IGluZGV4IDwgdGhpcy5fZ3JpZExpc3RJdGVtcy5sZW5ndGggOiBpbmRleCA+PSAwO1xuICAgICAgICAgICAgaXNFbmRLZXlkb3duID8gaW5kZXgrKyA6IGluZGV4LS1cbiAgICAgICAgKSB7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50SXRlbSA9IHRoaXMuX2dyaWRMaXN0SXRlbXMudG9BcnJheSgpW2luZGV4XTtcbiAgICAgICAgICAgIGlmIChkb2N1bWVudC5hY3RpdmVFbGVtZW50ID09PSBjdXJyZW50SXRlbS5fZ3JpZExpc3RJdGVtLm5hdGl2ZUVsZW1lbnQpIHtcbiAgICAgICAgICAgICAgICBzaG91bGRTZWxlY3QgPSB0cnVlO1xuICAgICAgICAgICAgICAgIHNlbGVjdGlvbkFjdGlvbiA9IGN1cnJlbnRJdGVtLl9zZWxlY3RlZEl0ZW1cbiAgICAgICAgICAgICAgICAgICAgPyBHcmlkTGlzdFNlbGVjdGlvbkFjdGlvbnMuQUREXG4gICAgICAgICAgICAgICAgICAgIDogR3JpZExpc3RTZWxlY3Rpb25BY3Rpb25zLlJFTU9WRTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmIChzaG91bGRTZWxlY3QpIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldFNlbGVjdGVkSXRlbShjdXJyZW50SXRlbSBhcyBhbnksIGluZGV4LCBzZWxlY3Rpb25BY3Rpb24pO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGNvbnN0IGl0ZW1Ub0ZvY3VzID0gaXNFbmRLZXlkb3duXG4gICAgICAgICAgICA/IHRoaXMuX2dyaWRMaXN0SXRlbXMubGFzdC5fZ3JpZExpc3RJdGVtXG4gICAgICAgICAgICA6IHRoaXMuX2dyaWRMaXN0SXRlbXMuZmlyc3QuX2dyaWRMaXN0SXRlbTtcbiAgICAgICAgaXRlbVRvRm9jdXMubmF0aXZlRWxlbWVudC5mb2N1cygpO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfaGFuZGxlVGFiS2V5ZG93bihldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuICAgICAgICBpZiAoS2V5VXRpbC5pc0tleUNvZGUoZXZlbnQsIFRBQikgJiYgIWV2ZW50LnNoaWZ0S2V5KSB7XG4gICAgICAgICAgICBjb25zdCBpc0ZvY3VzZWQgPSB0aGlzLl9ncmlkTGlzdEl0ZW1zXG4gICAgICAgICAgICAgICAgLnRvQXJyYXkoKVxuICAgICAgICAgICAgICAgIC5zb21lKChpdGVtKSA9PiBpdGVtLl9ncmlkTGlzdEl0ZW0ubmF0aXZlRWxlbWVudC5jb250YWlucyhkb2N1bWVudC5hY3RpdmVFbGVtZW50KSk7XG4gICAgICAgICAgICBjb25zdCBpc0NoaWxkRm9jdXNlZCA9IHRoaXMuX2dyaWRMaXN0SXRlbXNcbiAgICAgICAgICAgICAgICAudG9BcnJheSgpXG4gICAgICAgICAgICAgICAgLnNvbWUoKGl0ZW0pID0+IGl0ZW0uX2dyaWRMaXN0SXRlbS5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3IoJzpmb2N1cycpKTtcbiAgICAgICAgICAgIGlmIChpc0ZvY3VzZWQgJiYgIWlzQ2hpbGRGb2N1c2VkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5fZ3JpZExpc3RJdGVtcy5mb3JFYWNoKChpdGVtKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGludGVyYWN0aXZlRWxlbWVudHMgPSBpdGVtLl9ncmlkTGlzdEl0ZW0ubmF0aXZlRWxlbWVudC5xdWVyeVNlbGVjdG9yQWxsKFxuICAgICAgICAgICAgICAgICAgICAgICAgJ2EsIGJ1dHRvbiwgaW5wdXQsIHNlbGVjdCwgdGV4dGFyZWEnXG4gICAgICAgICAgICAgICAgICAgICk7XG5cbiAgICAgICAgICAgICAgICAgICAgLy8gU2V0IHRhYmluZGV4IHRvIC0xIGZvciBhbGwgaW50ZXJhY3RpdmUgZWxlbWVudHMgaW4gdGhlIGdyaWRcbiAgICAgICAgICAgICAgICAgICAgaW50ZXJhY3RpdmVFbGVtZW50cy5mb3JFYWNoKChlbGVtZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LnNldEF0dHJpYnV0ZSgndGFiaW5kZXgnLCAnLTEnKTtcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9ncmlkTGlzdEl0ZW1zLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgaW50ZXJhY3RpdmVFbGVtZW50cyA9IGl0ZW0uX2dyaWRMaXN0SXRlbS5uYXRpdmVFbGVtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoXG4gICAgICAgICAgICAgICAgICAgICAgICAnYSwgYnV0dG9uLCBpbnB1dCwgc2VsZWN0LCB0ZXh0YXJlYSdcbiAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgaW50ZXJhY3RpdmVFbGVtZW50cy5mb3JFYWNoKChlbGVtZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBlbGVtZW50LnNldEF0dHJpYnV0ZSgndGFiaW5kZXgnLCAnMCcpO1xuICAgICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2hhbmRsZVNoaWZ0QXJyb3dLZXlkb3duKGV2ZW50OiBLZXlib2FyZEV2ZW50KTogdm9pZCB7XG4gICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgIGNvbnN0IGFjdGl2ZUVsZW1lbnQgPSBkb2N1bWVudC5hY3RpdmVFbGVtZW50IGFzIEhUTUxFbGVtZW50O1xuXG4gICAgICAgIGNvbnN0IGN1cnJlbnRJdGVtSW5kZXggPSB0aGlzLl9nZXRDdXJyZW50SXRlbUluZGV4KGFjdGl2ZUVsZW1lbnQpO1xuICAgICAgICBpZiAoY3VycmVudEl0ZW1JbmRleCA9PT0gLTEpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGluZGV4VG9Gb2N1cyA9IHRoaXMuX2NhbGN1bGF0ZUluZGV4VG9Gb2N1cyhldmVudCwgY3VycmVudEl0ZW1JbmRleCk7XG4gICAgICAgIGlmIChpbmRleFRvRm9jdXMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gUGVyc2lzdCB0aGUgc2VsZWN0aW9uIHN0YXRlIGZyb20gdGhlIGN1cnJlbnQgaXRlbSB0byB0aGUgbmV4dCBpdGVtXG4gICAgICAgIHRoaXMuX3BlcnNpc3RTZWxlY3Rpb25TdGF0ZShjdXJyZW50SXRlbUluZGV4LCBpbmRleFRvRm9jdXMpO1xuXG4gICAgICAgIC8vIEZvY3VzIHRoZSBuZXcgaXRlbVxuICAgICAgICB0aGlzLl9mb2N1c0l0ZW1BdEluZGV4KGluZGV4VG9Gb2N1cywgYWN0aXZlRWxlbWVudCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9oYW5kbGVBcnJvd0tleWRvd24oZXZlbnQ6IEtleWJvYXJkRXZlbnQsIGlzU2hpZnRQcmVzc2VkID0gZmFsc2UpOiB2b2lkIHtcbiAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgY29uc3QgYWN0aXZlRWxlbWVudCA9IGRvY3VtZW50LmFjdGl2ZUVsZW1lbnQgYXMgSFRNTEVsZW1lbnQ7XG5cbiAgICAgICAgY29uc3QgY3VycmVudEl0ZW1JbmRleCA9IHRoaXMuX2dldEN1cnJlbnRJdGVtSW5kZXgoYWN0aXZlRWxlbWVudCk7XG4gICAgICAgIGlmIChjdXJyZW50SXRlbUluZGV4ID09PSAtMSkge1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgaW5kZXhUb0ZvY3VzID0gdGhpcy5fY2FsY3VsYXRlSW5kZXhUb0ZvY3VzKGV2ZW50LCBjdXJyZW50SXRlbUluZGV4KTtcbiAgICAgICAgaWYgKGluZGV4VG9Gb2N1cyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICBpZiAoaXNTaGlmdFByZXNzZWQpIHtcbiAgICAgICAgICAgIHRoaXMuX3RvZ2dsZVNlbGVjdGlvbihpbmRleFRvRm9jdXMpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5fZm9jdXNJdGVtQXRJbmRleChpbmRleFRvRm9jdXMsIGFjdGl2ZUVsZW1lbnQpO1xuICAgIH1cblxuICAgIC8qKiBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9jYWxjdWxhdGVJbmRleFRvRm9jdXMoZXZlbnQ6IEtleWJvYXJkRXZlbnQsIGN1cnJlbnRJdGVtSW5kZXg6IG51bWJlcik6IG51bWJlciB8IHVuZGVmaW5lZCB7XG4gICAgICAgIGNvbnN0IGl0ZW1zUGVyUm93ID0gdGhpcy5fZ2V0SXRlbXNQZXJSb3coXG4gICAgICAgICAgICB0aGlzLl9ncmlkTGlzdEl0ZW1zLnRvQXJyYXkoKVtjdXJyZW50SXRlbUluZGV4XS5fZ3JpZExpc3RJdGVtLm5hdGl2ZUVsZW1lbnRcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKEtleVV0aWwuaXNLZXlDb2RlKGV2ZW50LCBMRUZUX0FSUk9XKSB8fCAodGhpcy5fcnRsJCgpICYmIEtleVV0aWwuaXNLZXlDb2RlKGV2ZW50LCBbUklHSFRfQVJST1ddKSkpIHtcbiAgICAgICAgICAgIHJldHVybiBjdXJyZW50SXRlbUluZGV4IC0gMTtcbiAgICAgICAgfSBlbHNlIGlmIChLZXlVdGlsLmlzS2V5Q29kZShldmVudCwgUklHSFRfQVJST1cpIHx8ICh0aGlzLl9ydGwkKCkgJiYgS2V5VXRpbC5pc0tleUNvZGUoZXZlbnQsIFtMRUZUX0FSUk9XXSkpKSB7XG4gICAgICAgICAgICByZXR1cm4gY3VycmVudEl0ZW1JbmRleCArIDE7XG4gICAgICAgIH0gZWxzZSBpZiAoS2V5VXRpbC5pc0tleUNvZGUoZXZlbnQsIFVQX0FSUk9XKSkge1xuICAgICAgICAgICAgcmV0dXJuIGN1cnJlbnRJdGVtSW5kZXggLSBpdGVtc1BlclJvdztcbiAgICAgICAgfSBlbHNlIGlmIChLZXlVdGlsLmlzS2V5Q29kZShldmVudCwgRE9XTl9BUlJPVykpIHtcbiAgICAgICAgICAgIHJldHVybiBjdXJyZW50SXRlbUluZGV4ICsgaXRlbXNQZXJSb3c7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICAvKiogaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfcGVyc2lzdFNlbGVjdGlvblN0YXRlKGN1cnJlbnRJbmRleDogbnVtYmVyLCBpbmRleFRvRm9jdXM6IG51bWJlcik6IHZvaWQge1xuICAgICAgICBjb25zdCBjdXJyZW50SXRlbSA9IHRoaXMuX2dyaWRMaXN0SXRlbXMudG9BcnJheSgpW2N1cnJlbnRJbmRleF07XG4gICAgICAgIGNvbnN0IG5leHRJdGVtID0gdGhpcy5fZ3JpZExpc3RJdGVtcy50b0FycmF5KClbaW5kZXhUb0ZvY3VzXTtcblxuICAgICAgICAvLyBQZXJzaXN0IHRoZSBzZWxlY3Rpb24gc3RhdGUgZnJvbSB0aGUgY3VycmVudCBpdGVtIHRvIHRoZSBuZXh0IGl0ZW1cbiAgICAgICAgaWYgKGN1cnJlbnRJdGVtLl9zZWxlY3RlZEl0ZW0pIHtcbiAgICAgICAgICAgIC8vIElmIHRoZSBjdXJyZW50IGl0ZW0gaXMgc2VsZWN0ZWQsIGVuc3VyZSB0aGUgbmV4dCBpdGVtIGlzIHNlbGVjdGVkIGFzIHdlbGxcbiAgICAgICAgICAgIGlmICghbmV4dEl0ZW0uX3NlbGVjdGVkSXRlbSkge1xuICAgICAgICAgICAgICAgIHRoaXMuc2V0U2VsZWN0ZWRJdGVtKG5leHRJdGVtIGFzIGFueSwgaW5kZXhUb0ZvY3VzLCBHcmlkTGlzdFNlbGVjdGlvbkFjdGlvbnMuQUREKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIElmIHRoZSBjdXJyZW50IGl0ZW0gaXMgbm90IHNlbGVjdGVkLCBlbnN1cmUgdGhlIG5leHQgaXRlbSByZW1haW5zIG5vdCBzZWxlY3RlZFxuICAgICAgICAgICAgaWYgKG5leHRJdGVtLl9zZWxlY3RlZEl0ZW0pIHtcbiAgICAgICAgICAgICAgICB0aGlzLnNldFNlbGVjdGVkSXRlbShuZXh0SXRlbSBhcyBhbnksIGluZGV4VG9Gb2N1cywgR3JpZExpc3RTZWxlY3Rpb25BY3Rpb25zLlJFTU9WRSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfZ2V0Q3VycmVudEl0ZW1JbmRleChhY3RpdmVFbGVtZW50OiBIVE1MRWxlbWVudCk6IG51bWJlciB7XG4gICAgICAgIHJldHVybiB0aGlzLl9ncmlkTGlzdEl0ZW1zXG4gICAgICAgICAgICAudG9BcnJheSgpXG4gICAgICAgICAgICAuZmluZEluZGV4KChpdGVtKSA9PiBpdGVtLl9ncmlkTGlzdEl0ZW0ubmF0aXZlRWxlbWVudC5jb250YWlucyhhY3RpdmVFbGVtZW50KSk7XG4gICAgfVxuXG4gICAgLyoqIGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2ZvY3VzSXRlbUF0SW5kZXgoaW5kZXhUb0ZvY3VzOiBudW1iZXIsIGFjdGl2ZUVsZW1lbnQ6IEhUTUxFbGVtZW50KTogdm9pZCB7XG4gICAgICAgIGlmIChpbmRleFRvRm9jdXMgPj0gMCAmJiBpbmRleFRvRm9jdXMgPCB0aGlzLl9ncmlkTGlzdEl0ZW1zLmxlbmd0aCkge1xuICAgICAgICAgICAgY29uc3QgaXRlbVRvRm9jdXMgPSB0aGlzLl9ncmlkTGlzdEl0ZW1zLnRvQXJyYXkoKVtpbmRleFRvRm9jdXNdO1xuICAgICAgICAgICAgaWYgKGl0ZW1Ub0ZvY3VzICYmIGl0ZW1Ub0ZvY3VzLl9ncmlkTGlzdEl0ZW0pIHtcbiAgICAgICAgICAgICAgICBjb25zdCBlbGVtZW50VG9Gb2N1cyA9IGl0ZW1Ub0ZvY3VzLl9ncmlkTGlzdEl0ZW0ubmF0aXZlRWxlbWVudD8ucGFyZW50RWxlbWVudD8ucXVlcnlTZWxlY3RvcihcbiAgICAgICAgICAgICAgICAgICAgYWN0aXZlRWxlbWVudC50YWdOYW1lXG4gICAgICAgICAgICAgICAgKSBhcyBIVE1MRWxlbWVudDtcbiAgICAgICAgICAgICAgICBpZiAoZWxlbWVudFRvRm9jdXMpIHtcbiAgICAgICAgICAgICAgICAgICAgZWxlbWVudFRvRm9jdXMuZm9jdXMoKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKiogaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfdG9nZ2xlU2VsZWN0aW9uKGluZGV4VG9Gb2N1czogbnVtYmVyKTogdm9pZCB7XG4gICAgICAgIGNvbnN0IGN1cnJlbnRJdGVtID0gdGhpcy5fZ3JpZExpc3RJdGVtcy50b0FycmF5KClbaW5kZXhUb0ZvY3VzXTtcbiAgICAgICAgY29uc3Qgc2VsZWN0aW9uQWN0aW9uID0gY3VycmVudEl0ZW0uX3NlbGVjdGVkSXRlbVxuICAgICAgICAgICAgPyBHcmlkTGlzdFNlbGVjdGlvbkFjdGlvbnMuUkVNT1ZFXG4gICAgICAgICAgICA6IEdyaWRMaXN0U2VsZWN0aW9uQWN0aW9ucy5BREQ7XG5cbiAgICAgICAgdGhpcy5zZXRTZWxlY3RlZEl0ZW0oY3VycmVudEl0ZW0gYXMgYW55LCBpbmRleFRvRm9jdXMsIHNlbGVjdGlvbkFjdGlvbik7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9saXN0ZW5PblF1ZXJ5Q2hhbmdlKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9ncmlkTGlzdEl0ZW1zLmNoYW5nZXMucGlwZShzdGFydFdpdGgoMCksIHRha2VVbnRpbERlc3Ryb3llZCh0aGlzLl9kZXN0cm95UmVmKSkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuX3NldEZpcnN0Rm9jdXNhYmxlSXRlbSgpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIC8qKiBAaGlkZGVuICovXG4gICAgcHJpdmF0ZSBfc2V0Rmlyc3RGb2N1c2FibGVJdGVtKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl9ncmlkTGlzdEl0ZW1zLnRvQXJyYXkoKS5mb3JFYWNoKChpdGVtLCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgaXRlbS50YWJJbmRleC5zZXQoaW5kZXggPT09IDAgPyAwIDogLTEpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX2dldEl0ZW1zUGVyUm93KGFjdGl2ZUVsZW1lbnQ6IEhUTUxEaXZFbGVtZW50KTogbnVtYmVyIHtcbiAgICAgICAgY29uc3QgaXRlbVdpZHRoID0gYWN0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS53aWR0aDtcbiAgICAgICAgY29uc3QgY29udGFpbmVyV2lkdGggPSB0aGlzLl9lbFJlZi5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpLndpZHRoO1xuICAgICAgICByZXR1cm4gTWF0aC5mbG9vcihjb250YWluZXJXaWR0aCAvIGl0ZW1XaWR0aCk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF91cGRhdGVHcmlkTGlzdEl0ZW1zUHJvcGVydGllcyhjb21wb25lbnRzOiBRdWVyeUxpc3Q8R3JpZExpc3RJdGVtQ29tcG9uZW50PFQ+Pik6IHZvaWQge1xuICAgICAgICBjb25zdCBsYXlvdXRQYXR0ZXJuID0gdGhpcy5sYXlvdXRQYXR0ZXJuID8gdGhpcy5sYXlvdXRQYXR0ZXJuIDogJ1hMNC1MMy1NMi1TMSc7XG4gICAgICAgIGNvbnN0IGJhc2VMYXlvdXRJdGVtUGF0dGVybiA9IHBhcnNlTGF5b3V0UGF0dGVybihsYXlvdXRQYXR0ZXJuKTtcblxuICAgICAgICBjb21wb25lbnRzLmZvckVhY2goKGNvbXBvbmVudCwgaW5kZXgpID0+IHtcbiAgICAgICAgICAgIGlmIChjb21wb25lbnQuX2luZGV4ICE9PSBpbmRleCkge1xuICAgICAgICAgICAgICAgIGNvbXBvbmVudC5faW5kZXggPSBpbmRleDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCFjb21wb25lbnQuc2VsZWN0aW9uTW9kZSkge1xuICAgICAgICAgICAgICAgIGNvbXBvbmVudC5zZWxlY3Rpb25Nb2RlID0gdGhpcy5zZWxlY3Rpb25Nb2RlO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoIWNvbXBvbmVudC5sYXlvdXRJdGVtUGF0dGVybikge1xuICAgICAgICAgICAgICAgIGNvbXBvbmVudC5ncmlkTGF5b3V0Q2xhc3NlcyA9IGJhc2VMYXlvdXRJdGVtUGF0dGVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF91cGRhdGVHcmlkTGlzdEl0ZW1zUHJvcGVydHkoa2V5OiBzdHJpbmcsIHZhbHVlOiBzdHJpbmcgfCBzdHJpbmdbXSk6IHZvaWQge1xuICAgICAgICB0aGlzLl9ncmlkTGlzdEl0ZW1zLmZvckVhY2goKGNvbXBvbmVuZXQpID0+IHtcbiAgICAgICAgICAgIGNvbXBvbmVuZXRba2V5XSA9IHZhbHVlO1xuICAgICAgICB9KTtcbiAgICB9XG59XG4iLCI8ZGl2XG4gICAgW2lkXT1cImlkXCJcbiAgICBbc3R5bGUud2lkdGhdPVwid2lkdGhcIlxuICAgIGNsYXNzPVwiZmQtZ3JpZC1saXN0XCJcbiAgICBbYXR0ci5hcmlhLWxhYmVsXT1cImFyaWFMYWJlbFwiXG4gICAgW2NsYXNzLmZkLWdyaWQtbGlzdC0tbW9kZS1kZWxldGVdPVwic2VsZWN0aW9uTW9kZSA9PT0gJ2RlbGV0ZSdcIlxuICAgIFtjbGFzcy5mZC1ncmlkLWxpc3QtLW1vZGUtc2luZ2xlLXNlbGVjdF09XCJzZWxlY3Rpb25Nb2RlID09PSAnc2luZ2xlU2VsZWN0J1wiXG4gICAgW2NsYXNzLmZkLWdyaWQtbGlzdC0tbW9kZS1zaW5nbGUtc2VsZWN0LWxlZnRdPVwic2VsZWN0aW9uTW9kZSA9PT0gJ3NpbmdsZVNlbGVjdExlZnQnXCJcbiAgICBbY2xhc3MuZmQtZ3JpZC1saXN0LS1tb2RlLXNpbmdsZS1zZWxlY3QtcmlnaHRdPVwic2VsZWN0aW9uTW9kZSA9PT0gJ3NpbmdsZVNlbGVjdFJpZ2h0J1wiXG4gICAgW2NsYXNzLmZkLWdyaWQtbGlzdC0tbW9kZS1tdWx0aS1zZWxlY3RdPVwic2VsZWN0aW9uTW9kZSA9PT0gJ211bHRpU2VsZWN0J1wiXG4gICAgKGtleWRvd24pPVwiaGFuZGxlS2V5ZG93bigkZXZlbnQpXCJcbj5cbiAgICA8ZGl2IGNsYXNzPVwiZmQtY29udGFpbmVyXCIgcm9sZT1cImxpc3Rib3hcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZkLXJvd1wiPlxuICAgICAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L2Rpdj5cbjwvZGl2PlxuIl19","import { Directive } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class GridListItemImageDirective {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListItemImageDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.1.4\", type: GridListItemImageDirective, isStandalone: true, selector: \"[fd-grid-list-item-image]\", host: { classAttribute: \"fd-grid-list__item-image\" }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListItemImageDirective, decorators: [{\n type: Directive,\n args: [{\n // eslint-disable-next-line @angular-eslint/directive-selector\n selector: '[fd-grid-list-item-image]',\n host: {\n class: 'fd-grid-list__item-image'\n },\n standalone: true\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1saXN0LWl0ZW0taW1hZ2UuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL2dyaWQtbGlzdC9kaXJlY3RpdmVzL2dyaWQtbGlzdC1pdGVtLWltYWdlLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQVUxQyxNQUFNLE9BQU8sMEJBQTBCOzhHQUExQiwwQkFBMEI7a0dBQTFCLDBCQUEwQjs7MkZBQTFCLDBCQUEwQjtrQkFSdEMsU0FBUzttQkFBQztvQkFDUCw4REFBOEQ7b0JBQzlELFFBQVEsRUFBRSwyQkFBMkI7b0JBQ3JDLElBQUksRUFBRTt3QkFDRixLQUFLLEVBQUUsMEJBQTBCO3FCQUNwQztvQkFDRCxVQUFVLEVBQUUsSUFBSTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gICAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9kaXJlY3RpdmUtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ1tmZC1ncmlkLWxpc3QtaXRlbS1pbWFnZV0nLFxuICAgIGhvc3Q6IHtcbiAgICAgICAgY2xhc3M6ICdmZC1ncmlkLWxpc3RfX2l0ZW0taW1hZ2UnXG4gICAgfSxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEdyaWRMaXN0SXRlbUltYWdlRGlyZWN0aXZlIHt9XG4iXX0=","import { NgModule } from '@angular/core';\nimport { AvatarModule } from '@fundamental-ngx/core/avatar';\nimport { ButtonModule } from '@fundamental-ngx/core/button';\nimport { ToolbarModule } from '@fundamental-ngx/core/toolbar';\nimport { GridListFilterBarComponent } from './components/grid-list-filter-bar/grid-list-filter-bar.component';\nimport { GridListFooterComponent } from './components/grid-list-footer/grid-list-footer.component';\nimport { GridListGroupHeaderComponent } from './components/grid-list-group-header/grid-list-group-header.component';\nimport { GridListItemFooterBarComponent } from './components/grid-list-item-footer-bar/grid-list-item-footer-bar.component';\nimport { GridListItemToolbarComponent } from './components/grid-list-item-toolbar/grid-list-item-toolbar.component';\nimport { GridListItemComponent } from './components/grid-list-item/grid-list-item.component';\nimport { GridListMoreBtnComponent } from './components/grid-list-more-btn/grid-list-more-btn.component';\nimport { GridListTitleBarSpacerComponent } from './components/grid-list-title-bar-spacer/grid-list-title-bar-spacer.component';\nimport { GridListTitleBarComponent } from './components/grid-list-title-bar/grid-list-title-bar.component';\nimport { GridListTitleBarAdditionalTitleItemDirective } from './components/grid-list-title-bar/grid-list-title-bar.directive';\nimport { GridListComponent } from './components/grid-list/grid-list.component';\nimport { GridListItemBodyDirective } from './directives/grid-list-item-body.directive';\nimport { GridListItemImageDirective } from './directives/grid-list-item-image.directive';\nimport * as i0 from \"@angular/core\";\n/**\n * @deprecated\n * Use direct imports of components and directives.\n */\nexport class GridListModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListModule, imports: [ToolbarModule,\n ButtonModule,\n AvatarModule,\n GridListComponent,\n GridListItemComponent,\n GridListTitleBarComponent,\n GridListFilterBarComponent,\n GridListMoreBtnComponent,\n GridListFooterComponent,\n GridListItemFooterBarComponent,\n GridListItemToolbarComponent,\n GridListGroupHeaderComponent,\n GridListTitleBarSpacerComponent,\n GridListTitleBarAdditionalTitleItemDirective,\n GridListItemImageDirective,\n GridListItemBodyDirective], exports: [GridListComponent,\n GridListItemComponent,\n GridListTitleBarComponent,\n GridListFilterBarComponent,\n GridListMoreBtnComponent,\n GridListFooterComponent,\n GridListItemFooterBarComponent,\n GridListItemToolbarComponent,\n GridListGroupHeaderComponent,\n GridListTitleBarSpacerComponent,\n GridListTitleBarAdditionalTitleItemDirective,\n GridListItemImageDirective,\n GridListItemBodyDirective] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListModule, imports: [ToolbarModule,\n ButtonModule,\n AvatarModule,\n GridListItemComponent,\n GridListTitleBarComponent,\n GridListFilterBarComponent] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.1.4\", ngImport: i0, type: GridListModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [\n ToolbarModule,\n ButtonModule,\n AvatarModule,\n GridListComponent,\n GridListItemComponent,\n GridListTitleBarComponent,\n GridListFilterBarComponent,\n GridListMoreBtnComponent,\n GridListFooterComponent,\n GridListItemFooterBarComponent,\n GridListItemToolbarComponent,\n GridListGroupHeaderComponent,\n GridListTitleBarSpacerComponent,\n GridListTitleBarAdditionalTitleItemDirective,\n GridListItemImageDirective,\n GridListItemBodyDirective\n ],\n exports: [\n GridListComponent,\n GridListItemComponent,\n GridListTitleBarComponent,\n GridListFilterBarComponent,\n GridListMoreBtnComponent,\n GridListFooterComponent,\n GridListItemFooterBarComponent,\n GridListItemToolbarComponent,\n GridListGroupHeaderComponent,\n GridListTitleBarSpacerComponent,\n GridListTitleBarAdditionalTitleItemDirective,\n GridListItemImageDirective,\n GridListItemBodyDirective\n ]\n }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1saXN0Lm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvY29yZS9ncmlkLWxpc3QvZ3JpZC1saXN0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzlELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGtFQUFrRSxDQUFDO0FBQzlHLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQ25HLE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHNFQUFzRSxDQUFDO0FBQ3BILE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDRFQUE0RSxDQUFDO0FBQzVILE9BQU8sRUFBRSw0QkFBNEIsRUFBRSxNQUFNLHNFQUFzRSxDQUFDO0FBQ3BILE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNEQUFzRCxDQUFDO0FBQzdGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBQ3hHLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLDhFQUE4RSxDQUFDO0FBQy9ILE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLGdFQUFnRSxDQUFDO0FBQzNHLE9BQU8sRUFBRSw0Q0FBNEMsRUFBRSxNQUFNLGdFQUFnRSxDQUFDO0FBQzlILE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDOztBQUV6Rjs7O0dBR0c7QUFvQ0gsTUFBTSxPQUFPLGNBQWM7OEdBQWQsY0FBYzsrR0FBZCxjQUFjLFlBakNuQixhQUFhO1lBQ2IsWUFBWTtZQUNaLFlBQVk7WUFDWixpQkFBaUI7WUFDakIscUJBQXFCO1lBQ3JCLHlCQUF5QjtZQUN6QiwwQkFBMEI7WUFDMUIsd0JBQXdCO1lBQ3hCLHVCQUF1QjtZQUN2Qiw4QkFBOEI7WUFDOUIsNEJBQTRCO1lBQzVCLDRCQUE0QjtZQUM1QiwrQkFBK0I7WUFDL0IsNENBQTRDO1lBQzVDLDBCQUEwQjtZQUMxQix5QkFBeUIsYUFHekIsaUJBQWlCO1lBQ2pCLHFCQUFxQjtZQUNyQix5QkFBeUI7WUFDekIsMEJBQTBCO1lBQzFCLHdCQUF3QjtZQUN4Qix1QkFBdUI7WUFDdkIsOEJBQThCO1lBQzlCLDRCQUE0QjtZQUM1Qiw0QkFBNEI7WUFDNUIsK0JBQStCO1lBQy9CLDRDQUE0QztZQUM1QywwQkFBMEI7WUFDMUIseUJBQXlCOytHQUdwQixjQUFjLFlBakNuQixhQUFhO1lBQ2IsWUFBWTtZQUNaLFlBQVk7WUFFWixxQkFBcUI7WUFDckIseUJBQXlCO1lBQ3pCLDBCQUEwQjs7MkZBMkJyQixjQUFjO2tCQW5DMUIsUUFBUTttQkFBQztvQkFDTixPQUFPLEVBQUU7d0JBQ0wsYUFBYTt3QkFDYixZQUFZO3dCQUNaLFlBQVk7d0JBQ1osaUJBQWlCO3dCQUNqQixxQkFBcUI7d0JBQ3JCLHlCQUF5Qjt3QkFDekIsMEJBQTBCO3dCQUMxQix3QkFBd0I7d0JBQ3hCLHVCQUF1Qjt3QkFDdkIsOEJBQThCO3dCQUM5Qiw0QkFBNEI7d0JBQzVCLDRCQUE0Qjt3QkFDNUIsK0JBQStCO3dCQUMvQiw0Q0FBNEM7d0JBQzVDLDBCQUEwQjt3QkFDMUIseUJBQXlCO3FCQUM1QjtvQkFDRCxPQUFPLEVBQUU7d0JBQ0wsaUJBQWlCO3dCQUNqQixxQkFBcUI7d0JBQ3JCLHlCQUF5Qjt3QkFDekIsMEJBQTBCO3dCQUMxQix3QkFBd0I7d0JBQ3hCLHVCQUF1Qjt3QkFDdkIsOEJBQThCO3dCQUM5Qiw0QkFBNEI7d0JBQzVCLDRCQUE0Qjt3QkFDNUIsK0JBQStCO3dCQUMvQiw0Q0FBNEM7d0JBQzVDLDBCQUEwQjt3QkFDMUIseUJBQXlCO3FCQUM1QjtpQkFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBdmF0YXJNb2R1bGUgfSBmcm9tICdAZnVuZGFtZW50YWwtbmd4L2NvcmUvYXZhdGFyJztcbmltcG9ydCB7IEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS9idXR0b24nO1xuaW1wb3J0IHsgVG9vbGJhck1vZHVsZSB9IGZyb20gJ0BmdW5kYW1lbnRhbC1uZ3gvY29yZS90b29sYmFyJztcbmltcG9ydCB7IEdyaWRMaXN0RmlsdGVyQmFyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2dyaWQtbGlzdC1maWx0ZXItYmFyL2dyaWQtbGlzdC1maWx0ZXItYmFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHcmlkTGlzdEZvb3RlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9ncmlkLWxpc3QtZm9vdGVyL2dyaWQtbGlzdC1mb290ZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEdyaWRMaXN0R3JvdXBIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZ3JpZC1saXN0LWdyb3VwLWhlYWRlci9ncmlkLWxpc3QtZ3JvdXAtaGVhZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHcmlkTGlzdEl0ZW1Gb290ZXJCYXJDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZ3JpZC1saXN0LWl0ZW0tZm9vdGVyLWJhci9ncmlkLWxpc3QtaXRlbS1mb290ZXItYmFyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHcmlkTGlzdEl0ZW1Ub29sYmFyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2dyaWQtbGlzdC1pdGVtLXRvb2xiYXIvZ3JpZC1saXN0LWl0ZW0tdG9vbGJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgR3JpZExpc3RJdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2dyaWQtbGlzdC1pdGVtL2dyaWQtbGlzdC1pdGVtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBHcmlkTGlzdE1vcmVCdG5Db21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZ3JpZC1saXN0LW1vcmUtYnRuL2dyaWQtbGlzdC1tb3JlLWJ0bi5jb21wb25lbnQnO1xuaW1wb3J0IHsgR3JpZExpc3RUaXRsZUJhclNwYWNlckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9ncmlkLWxpc3QtdGl0bGUtYmFyLXNwYWNlci9ncmlkLWxpc3QtdGl0bGUtYmFyLXNwYWNlci5jb21wb25lbnQnO1xuaW1wb3J0IHsgR3JpZExpc3RUaXRsZUJhckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9ncmlkLWxpc3QtdGl0bGUtYmFyL2dyaWQtbGlzdC10aXRsZS1iYXIuY29tcG9uZW50JztcbmltcG9ydCB7IEdyaWRMaXN0VGl0bGVCYXJBZGRpdGlvbmFsVGl0bGVJdGVtRGlyZWN0aXZlIH0gZnJvbSAnLi9jb21wb25lbnRzL2dyaWQtbGlzdC10aXRsZS1iYXIvZ3JpZC1saXN0LXRpdGxlLWJhci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgR3JpZExpc3RDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZ3JpZC1saXN0L2dyaWQtbGlzdC5jb21wb25lbnQnO1xuaW1wb3J0IHsgR3JpZExpc3RJdGVtQm9keURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9ncmlkLWxpc3QtaXRlbS1ib2R5LmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBHcmlkTGlzdEl0ZW1JbWFnZURpcmVjdGl2ZSB9IGZyb20gJy4vZGlyZWN0aXZlcy9ncmlkLWxpc3QtaXRlbS1pbWFnZS5kaXJlY3RpdmUnO1xuXG4vKipcbiAqIEBkZXByZWNhdGVkXG4gKiBVc2UgZGlyZWN0IGltcG9ydHMgb2YgY29tcG9uZW50cyBhbmQgZGlyZWN0aXZlcy5cbiAqL1xuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIFRvb2xiYXJNb2R1bGUsXG4gICAgICAgIEJ1dHRvbk1vZHVsZSxcbiAgICAgICAgQXZhdGFyTW9kdWxlLFxuICAgICAgICBHcmlkTGlzdENvbXBvbmVudCxcbiAgICAgICAgR3JpZExpc3RJdGVtQ29tcG9uZW50LFxuICAgICAgICBHcmlkTGlzdFRpdGxlQmFyQ29tcG9uZW50LFxuICAgICAgICBHcmlkTGlzdEZpbHRlckJhckNvbXBvbmVudCxcbiAgICAgICAgR3JpZExpc3RNb3JlQnRuQ29tcG9uZW50LFxuICAgICAgICBHcmlkTGlzdEZvb3RlckNvbXBvbmVudCxcbiAgICAgICAgR3JpZExpc3RJdGVtRm9vdGVyQmFyQ29tcG9uZW50LFxuICAgICAgICBHcmlkTGlzdEl0ZW1Ub29sYmFyQ29tcG9uZW50LFxuICAgICAgICBHcmlkTGlzdEdyb3VwSGVhZGVyQ29tcG9uZW50LFxuICAgICAgICBHcmlkTGlzdFRpdGxlQmFyU3BhY2VyQ29tcG9uZW50LFxuICAgICAgICBHcmlkTGlzdFRpdGxlQmFyQWRkaXRpb25hbFRpdGxlSXRlbURpcmVjdGl2ZSxcbiAgICAgICAgR3JpZExpc3RJdGVtSW1hZ2VEaXJlY3RpdmUsXG4gICAgICAgIEdyaWRMaXN0SXRlbUJvZHlEaXJlY3RpdmVcbiAgICBdLFxuICAgIGV4cG9ydHM6IFtcbiAgICAgICAgR3JpZExpc3RDb21wb25lbnQsXG4gICAgICAgIEdyaWRMaXN0SXRlbUNvbXBvbmVudCxcbiAgICAgICAgR3JpZExpc3RUaXRsZUJhckNvbXBvbmVudCxcbiAgICAgICAgR3JpZExpc3RGaWx0ZXJCYXJDb21wb25lbnQsXG4gICAgICAgIEdyaWRMaXN0TW9yZUJ0bkNvbXBvbmVudCxcbiAgICAgICAgR3JpZExpc3RGb290ZXJDb21wb25lbnQsXG4gICAgICAgIEdyaWRMaXN0SXRlbUZvb3RlckJhckNvbXBvbmVudCxcbiAgICAgICAgR3JpZExpc3RJdGVtVG9vbGJhckNvbXBvbmVudCxcbiAgICAgICAgR3JpZExpc3RHcm91cEhlYWRlckNvbXBvbmVudCxcbiAgICAgICAgR3JpZExpc3RUaXRsZUJhclNwYWNlckNvbXBvbmVudCxcbiAgICAgICAgR3JpZExpc3RUaXRsZUJhckFkZGl0aW9uYWxUaXRsZUl0ZW1EaXJlY3RpdmUsXG4gICAgICAgIEdyaWRMaXN0SXRlbUltYWdlRGlyZWN0aXZlLFxuICAgICAgICBHcmlkTGlzdEl0ZW1Cb2R5RGlyZWN0aXZlXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBHcmlkTGlzdE1vZHVsZSB7fVxuIl19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnVuZGFtZW50YWwtbmd4LWNvcmUtZ3JpZC1saXN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9jb3JlL2dyaWQtbGlzdC9mdW5kYW1lbnRhbC1uZ3gtY29yZS1ncmlkLWxpc3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0="],"names":["i1.GridList"],"mappings":"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"}