@igo2/common 1.8.1 → 1.9.3

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 (344) hide show
  1. package/bundles/igo2-common.umd.js +10700 -10473
  2. package/bundles/igo2-common.umd.js.map +1 -1
  3. package/esm2015/igo2-common.js +5 -5
  4. package/esm2015/lib/action/action.module.js +29 -28
  5. package/esm2015/lib/action/actionbar/actionbar-item.component.js +257 -257
  6. package/esm2015/lib/action/actionbar/actionbar.component.js +385 -387
  7. package/esm2015/lib/action/actionbar/actionbar.module.js +59 -58
  8. package/esm2015/lib/action/index.js +3 -3
  9. package/esm2015/lib/action/shared/action.enums.js +7 -7
  10. package/esm2015/lib/action/shared/action.interfaces.js +2 -1
  11. package/esm2015/lib/action/shared/index.js +4 -4
  12. package/esm2015/lib/action/shared/store.js +8 -8
  13. package/esm2015/lib/backdrop/backdrop.component.js +30 -30
  14. package/esm2015/lib/backdrop/backdrop.module.js +25 -24
  15. package/esm2015/lib/backdrop/index.js +2 -2
  16. package/esm2015/lib/badge-icon/badge-icon.directive.js +125 -121
  17. package/esm2015/lib/badge-icon/badge-icon.module.js +26 -25
  18. package/esm2015/lib/badge-icon/index.js +2 -2
  19. package/esm2015/lib/clickout/clickout.directive.js +32 -32
  20. package/esm2015/lib/clickout/clickout.module.js +24 -23
  21. package/esm2015/lib/clickout/index.js +2 -2
  22. package/esm2015/lib/clone/clone.module.js +24 -23
  23. package/esm2015/lib/clone/clone.pipe.js +24 -24
  24. package/esm2015/lib/clone/index.js +2 -2
  25. package/esm2015/lib/collapsible/collapse.directive.js +55 -55
  26. package/esm2015/lib/collapsible/collapsible.component.js +63 -63
  27. package/esm2015/lib/collapsible/collapsible.module.js +27 -26
  28. package/esm2015/lib/collapsible/index.js +3 -3
  29. package/esm2015/lib/confirm-dialog/confirm-dialog.component.js +50 -51
  30. package/esm2015/lib/confirm-dialog/confirm-dialog.module.js +29 -28
  31. package/esm2015/lib/confirm-dialog/confirm-dialog.service.js +22 -23
  32. package/esm2015/lib/confirm-dialog/index.js +3 -3
  33. package/esm2015/lib/context-menu/context-menu.directive.js +135 -89
  34. package/esm2015/lib/context-menu/context-menu.module.js +24 -23
  35. package/esm2015/lib/context-menu/index.js +2 -2
  36. package/esm2015/lib/custom-html/custom-html.component.js +32 -32
  37. package/esm2015/lib/custom-html/custom-html.module.js +49 -48
  38. package/esm2015/lib/custom-html/custom-html.pipe.js +18 -19
  39. package/esm2015/lib/custom-html/index.js +3 -3
  40. package/esm2015/lib/drag-drop/drag-drop.directive.js +88 -88
  41. package/esm2015/lib/drag-drop/drag-drop.module.js +24 -23
  42. package/esm2015/lib/drag-drop/index.js +2 -2
  43. package/esm2015/lib/dynamic-component/dynamic-component.module.js +33 -32
  44. package/esm2015/lib/dynamic-component/dynamic-outlet/dynamic-outlet.component.js +124 -125
  45. package/esm2015/lib/dynamic-component/dynamic-outlet/dynamic-outlet.module.js +30 -29
  46. package/esm2015/lib/dynamic-component/index.js +3 -3
  47. package/esm2015/lib/dynamic-component/shared/dynamic-component.interfaces.js +2 -1
  48. package/esm2015/lib/dynamic-component/shared/dynamic-component.js +174 -174
  49. package/esm2015/lib/dynamic-component/shared/dynamic-component.service.js +29 -29
  50. package/esm2015/lib/dynamic-component/shared/index.js +4 -4
  51. package/esm2015/lib/entity/entity-selector/entity-selector.component.js +201 -202
  52. package/esm2015/lib/entity/entity-selector/entity-selector.module.js +34 -33
  53. package/esm2015/lib/entity/entity-table/entity-table-row.directive.js +137 -137
  54. package/esm2015/lib/entity/entity-table/entity-table.component.js +912 -916
  55. package/esm2015/lib/entity/entity-table/entity-table.module.js +77 -76
  56. package/esm2015/lib/entity/entity-table-paginator/entity-table-paginator.component.js +138 -140
  57. package/esm2015/lib/entity/entity-table-paginator/entity-table-paginator.interface.js +2 -1
  58. package/esm2015/lib/entity/entity-table-paginator/entity-table-paginator.module.js +30 -29
  59. package/esm2015/lib/entity/entity.module.js +33 -32
  60. package/esm2015/lib/entity/index.js +6 -6
  61. package/esm2015/lib/entity/shared/entity.enums.js +27 -27
  62. package/esm2015/lib/entity/shared/entity.interfaces.js +2 -1
  63. package/esm2015/lib/entity/shared/entity.utils.js +67 -67
  64. package/esm2015/lib/entity/shared/index.js +10 -10
  65. package/esm2015/lib/entity/shared/state.js +191 -191
  66. package/esm2015/lib/entity/shared/store.js +288 -288
  67. package/esm2015/lib/entity/shared/strategies/filter-custom-function.js +79 -79
  68. package/esm2015/lib/entity/shared/strategies/filter-selection.js +84 -84
  69. package/esm2015/lib/entity/shared/strategies/index.js +4 -4
  70. package/esm2015/lib/entity/shared/strategies/strategy.js +75 -75
  71. package/esm2015/lib/entity/shared/transaction.js +316 -316
  72. package/esm2015/lib/entity/shared/view.js +315 -315
  73. package/esm2015/lib/entity/shared/watcher.js +120 -120
  74. package/esm2015/lib/flexible/flexible.component.js +158 -159
  75. package/esm2015/lib/flexible/flexible.module.js +24 -23
  76. package/esm2015/lib/flexible/flexible.type.js +2 -1
  77. package/esm2015/lib/flexible/index.js +3 -3
  78. package/esm2015/lib/form/form/form.component.js +125 -125
  79. package/esm2015/lib/form/form/form.module.js +42 -41
  80. package/esm2015/lib/form/form-field/form-field-select.component.js +132 -132
  81. package/esm2015/lib/form/form-field/form-field-text.component.js +108 -108
  82. package/esm2015/lib/form/form-field/form-field-textarea.component.js +110 -110
  83. package/esm2015/lib/form/form-field/form-field.component.js +77 -78
  84. package/esm2015/lib/form/form-field/form-field.module.js +76 -75
  85. package/esm2015/lib/form/form-field/index.js +5 -5
  86. package/esm2015/lib/form/form-group/form-group.component.js +110 -110
  87. package/esm2015/lib/form/form-group/form-group.module.js +42 -41
  88. package/esm2015/lib/form/form.module.js +51 -50
  89. package/esm2015/lib/form/index.js +5 -5
  90. package/esm2015/lib/form/shared/form-field-component.js +7 -7
  91. package/esm2015/lib/form/shared/form-field.service.js +29 -29
  92. package/esm2015/lib/form/shared/form.interfaces.js +2 -1
  93. package/esm2015/lib/form/shared/form.service.js +77 -77
  94. package/esm2015/lib/form/shared/form.utils.js +40 -40
  95. package/esm2015/lib/form/shared/index.js +6 -6
  96. package/esm2015/lib/home-button/home-button.component.js +35 -0
  97. package/esm2015/lib/home-button/home-button.module.js +43 -0
  98. package/esm2015/lib/home-button/index.js +2 -0
  99. package/esm2015/lib/image/image.module.js +24 -23
  100. package/esm2015/lib/image/index.js +2 -2
  101. package/esm2015/lib/image/secure-image.pipe.js +48 -51
  102. package/esm2015/lib/interactive-tour/index.js +5 -5
  103. package/esm2015/lib/interactive-tour/interactive-tour.component.js +140 -142
  104. package/esm2015/lib/interactive-tour/interactive-tour.interface.js +2 -1
  105. package/esm2015/lib/interactive-tour/interactive-tour.loader.js +44 -46
  106. package/esm2015/lib/interactive-tour/interactive-tour.module.js +42 -41
  107. package/esm2015/lib/interactive-tour/interactive-tour.service.js +285 -288
  108. package/esm2015/lib/json-dialog/index.js +3 -3
  109. package/esm2015/lib/json-dialog/json-dialog.component.js +116 -117
  110. package/esm2015/lib/json-dialog/json-dialog.module.js +29 -28
  111. package/esm2015/lib/json-dialog/json-dialog.service.js +24 -25
  112. package/esm2015/lib/keyvalue/index.js +2 -2
  113. package/esm2015/lib/keyvalue/keyvalue.module.js +24 -23
  114. package/esm2015/lib/keyvalue/keyvalue.pipe.js +18 -18
  115. package/esm2015/lib/list/index.js +3 -3
  116. package/esm2015/lib/list/list-item.directive.js +165 -165
  117. package/esm2015/lib/list/list.component.js +266 -266
  118. package/esm2015/lib/list/list.module.js +29 -28
  119. package/esm2015/lib/panel/index.js +2 -2
  120. package/esm2015/lib/panel/panel.component.js +67 -67
  121. package/esm2015/lib/panel/panel.module.js +19 -18
  122. package/esm2015/lib/sidenav/index.js +2 -2
  123. package/esm2015/lib/sidenav/sidenav-shim.directive.js +55 -56
  124. package/esm2015/lib/sidenav/sidenav.module.js +24 -23
  125. package/esm2015/lib/spinner/index.js +3 -3
  126. package/esm2015/lib/spinner/spinner-activity.directive.js +47 -49
  127. package/esm2015/lib/spinner/spinner.component.js +40 -40
  128. package/esm2015/lib/spinner/spinner.module.js +21 -20
  129. package/esm2015/lib/stop-propagation/index.js +3 -3
  130. package/esm2015/lib/stop-propagation/stop-drop-propagation.directive.js +22 -22
  131. package/esm2015/lib/stop-propagation/stop-propagation.directive.js +21 -21
  132. package/esm2015/lib/stop-propagation/stop-propagation.module.js +25 -24
  133. package/esm2015/lib/table/index.js +6 -6
  134. package/esm2015/lib/table/table-action-color.enum.js +7 -7
  135. package/esm2015/lib/table/table-database.js +28 -28
  136. package/esm2015/lib/table/table-datasource.js +61 -61
  137. package/esm2015/lib/table/table-model.interface.js +2 -1
  138. package/esm2015/lib/table/table.component.js +310 -311
  139. package/esm2015/lib/table/table.module.js +69 -68
  140. package/esm2015/lib/tool/index.js +3 -3
  141. package/esm2015/lib/tool/shared/index.js +6 -6
  142. package/esm2015/lib/tool/shared/tool-component.js +9 -9
  143. package/esm2015/lib/tool/shared/tool.interface.js +2 -1
  144. package/esm2015/lib/tool/shared/tool.service.js +43 -43
  145. package/esm2015/lib/tool/shared/toolbox.enums.js +7 -7
  146. package/esm2015/lib/tool/shared/toolbox.js +179 -179
  147. package/esm2015/lib/tool/tool.module.js +34 -33
  148. package/esm2015/lib/tool/toolbox/toolbox.animation.js +10 -10
  149. package/esm2015/lib/tool/toolbox/toolbox.component.js +261 -262
  150. package/esm2015/lib/tool/toolbox/toolbox.module.js +38 -37
  151. package/esm2015/lib/widget/index.js +3 -3
  152. package/esm2015/lib/widget/shared/index.js +4 -4
  153. package/esm2015/lib/widget/shared/widget.interfaces.js +2 -1
  154. package/esm2015/lib/widget/shared/widget.js +4 -4
  155. package/esm2015/lib/widget/shared/widget.service.js +20 -21
  156. package/esm2015/lib/widget/widget-outlet/widget-outlet.component.js +121 -122
  157. package/esm2015/lib/widget/widget-outlet/widget-outlet.module.js +34 -33
  158. package/esm2015/lib/widget/widget.module.js +34 -33
  159. package/esm2015/lib/workspace/index.js +4 -4
  160. package/esm2015/lib/workspace/shared/index.js +4 -4
  161. package/esm2015/lib/workspace/shared/store.js +40 -40
  162. package/esm2015/lib/workspace/shared/workspace.interfaces.js +2 -1
  163. package/esm2015/lib/workspace/shared/workspace.js +117 -117
  164. package/esm2015/lib/workspace/workspace-selector/workspace-selector.component.js +54 -55
  165. package/esm2015/lib/workspace/workspace-selector/workspace-selector.module.js +34 -33
  166. package/esm2015/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.component.js +93 -94
  167. package/esm2015/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.module.js +34 -33
  168. package/esm2015/lib/workspace/workspace.module.js +29 -28
  169. package/esm2015/public_api.js +72 -70
  170. package/fesm2015/igo2-common.js +9015 -8846
  171. package/fesm2015/igo2-common.js.map +1 -1
  172. package/igo2-common.d.ts +5 -5
  173. package/lib/action/action.module.d.ts +8 -7
  174. package/lib/action/actionbar/actionbar-item.component.d.ts +78 -78
  175. package/lib/action/actionbar/actionbar.component.d.ts +146 -146
  176. package/lib/action/actionbar/actionbar.module.d.ts +20 -19
  177. package/lib/action/index.d.ts +2 -2
  178. package/lib/action/shared/action.enums.d.ts +5 -5
  179. package/lib/action/shared/action.interfaces.d.ts +17 -17
  180. package/lib/action/shared/index.d.ts +3 -3
  181. package/lib/action/shared/store.d.ts +8 -8
  182. package/lib/backdrop/backdrop.component.d.ts +9 -9
  183. package/lib/backdrop/backdrop.module.d.ts +10 -9
  184. package/lib/backdrop/index.d.ts +1 -1
  185. package/lib/badge-icon/badge-icon.directive.d.ts +32 -27
  186. package/lib/badge-icon/badge-icon.module.d.ts +11 -10
  187. package/lib/badge-icon/index.d.ts +1 -1
  188. package/lib/clickout/clickout.directive.d.ts +10 -10
  189. package/lib/clickout/clickout.module.d.ts +9 -8
  190. package/lib/clickout/index.d.ts +1 -1
  191. package/lib/clone/clone.module.d.ts +9 -8
  192. package/lib/clone/clone.pipe.d.ts +7 -7
  193. package/lib/clone/index.d.ts +1 -1
  194. package/lib/collapsible/collapse.directive.d.ts +19 -19
  195. package/lib/collapsible/collapsible.component.d.ts +13 -13
  196. package/lib/collapsible/collapsible.module.d.ts +12 -11
  197. package/lib/collapsible/index.d.ts +2 -2
  198. package/lib/confirm-dialog/confirm-dialog.component.d.ts +9 -9
  199. package/lib/confirm-dialog/confirm-dialog.module.d.ts +12 -11
  200. package/lib/confirm-dialog/confirm-dialog.service.d.ts +10 -10
  201. package/lib/confirm-dialog/index.d.ts +2 -2
  202. package/lib/context-menu/context-menu.directive.d.ts +27 -21
  203. package/lib/context-menu/context-menu.module.d.ts +9 -8
  204. package/lib/context-menu/index.d.ts +1 -1
  205. package/lib/custom-html/custom-html.component.d.ts +9 -9
  206. package/lib/custom-html/custom-html.module.d.ts +16 -15
  207. package/lib/custom-html/custom-html.pipe.d.ts +10 -10
  208. package/lib/custom-html/index.d.ts +2 -2
  209. package/lib/drag-drop/drag-drop.directive.d.ts +14 -14
  210. package/lib/drag-drop/drag-drop.module.d.ts +9 -8
  211. package/lib/drag-drop/index.d.ts +1 -1
  212. package/lib/dynamic-component/dynamic-component.module.d.ts +8 -7
  213. package/lib/dynamic-component/dynamic-outlet/dynamic-outlet.component.d.ts +70 -70
  214. package/lib/dynamic-component/dynamic-outlet/dynamic-outlet.module.d.ts +11 -10
  215. package/lib/dynamic-component/index.d.ts +2 -2
  216. package/lib/dynamic-component/shared/dynamic-component.d.ts +88 -88
  217. package/lib/dynamic-component/shared/dynamic-component.interfaces.d.ts +3 -3
  218. package/lib/dynamic-component/shared/dynamic-component.service.d.ts +18 -18
  219. package/lib/dynamic-component/shared/index.d.ts +3 -3
  220. package/lib/entity/entity-selector/entity-selector.component.d.ts +92 -92
  221. package/lib/entity/entity-selector/entity-selector.module.d.ts +13 -12
  222. package/lib/entity/entity-table/entity-table-row.directive.d.ts +69 -69
  223. package/lib/entity/entity-table/entity-table.component.d.ts +275 -275
  224. package/lib/entity/entity-table/entity-table.module.d.ts +23 -22
  225. package/lib/entity/entity-table-paginator/entity-table-paginator.component.d.ts +49 -49
  226. package/lib/entity/entity-table-paginator/entity-table-paginator.interface.d.ts +8 -8
  227. package/lib/entity/entity-table-paginator/entity-table-paginator.module.d.ts +11 -10
  228. package/lib/entity/entity.module.d.ts +10 -9
  229. package/lib/entity/index.d.ts +5 -5
  230. package/lib/entity/shared/entity.enums.d.ts +22 -22
  231. package/lib/entity/shared/entity.interfaces.d.ts +88 -88
  232. package/lib/entity/shared/entity.utils.d.ts +49 -49
  233. package/lib/entity/shared/index.d.ts +9 -9
  234. package/lib/entity/shared/state.d.ts +103 -103
  235. package/lib/entity/shared/store.d.ts +176 -176
  236. package/lib/entity/shared/strategies/filter-custom-function.d.ts +51 -51
  237. package/lib/entity/shared/strategies/filter-selection.d.ts +48 -48
  238. package/lib/entity/shared/strategies/index.d.ts +3 -3
  239. package/lib/entity/shared/strategies/strategy.d.ts +56 -56
  240. package/lib/entity/shared/transaction.d.ts +168 -168
  241. package/lib/entity/shared/view.d.ts +193 -193
  242. package/lib/entity/shared/watcher.d.ts +72 -72
  243. package/lib/flexible/flexible.component.d.ts +41 -41
  244. package/lib/flexible/flexible.module.d.ts +9 -8
  245. package/lib/flexible/flexible.type.d.ts +2 -2
  246. package/lib/flexible/index.d.ts +2 -2
  247. package/lib/form/form/form.component.d.ts +53 -53
  248. package/lib/form/form/form.module.d.ts +12 -11
  249. package/lib/form/form-field/form-field-select.component.d.ts +48 -48
  250. package/lib/form/form-field/form-field-text.component.d.ts +41 -41
  251. package/lib/form/form-field/form-field-textarea.component.d.ts +41 -41
  252. package/lib/form/form-field/form-field.component.d.ts +34 -34
  253. package/lib/form/form-field/form-field.module.d.ts +21 -20
  254. package/lib/form/form-field/index.d.ts +4 -4
  255. package/lib/form/form-group/form-group.component.d.ts +49 -49
  256. package/lib/form/form-group/form-group.module.d.ts +14 -13
  257. package/lib/form/form.module.d.ts +13 -12
  258. package/lib/form/index.d.ts +4 -4
  259. package/lib/form/shared/form-field-component.d.ts +1 -1
  260. package/lib/form/shared/form-field.service.d.ts +19 -19
  261. package/lib/form/shared/form.interfaces.d.ts +57 -57
  262. package/lib/form/shared/form.service.d.ts +15 -15
  263. package/lib/form/shared/form.utils.d.ts +11 -11
  264. package/lib/form/shared/index.d.ts +5 -5
  265. package/lib/home-button/home-button.component.d.ts +9 -0
  266. package/lib/home-button/home-button.module.d.ts +15 -0
  267. package/lib/home-button/index.d.ts +1 -0
  268. package/lib/image/image.module.d.ts +9 -8
  269. package/lib/image/index.d.ts +1 -1
  270. package/lib/image/secure-image.pipe.d.ts +11 -11
  271. package/lib/interactive-tour/index.d.ts +4 -4
  272. package/lib/interactive-tour/interactive-tour.component.d.ts +30 -30
  273. package/lib/interactive-tour/interactive-tour.interface.d.ts +32 -32
  274. package/lib/interactive-tour/interactive-tour.loader.d.ts +18 -18
  275. package/lib/interactive-tour/interactive-tour.module.d.ts +12 -11
  276. package/lib/interactive-tour/interactive-tour.service.d.ts +29 -29
  277. package/lib/json-dialog/index.d.ts +2 -2
  278. package/lib/json-dialog/json-dialog.component.d.ts +13 -13
  279. package/lib/json-dialog/json-dialog.module.d.ts +13 -12
  280. package/lib/json-dialog/json-dialog.service.d.ts +10 -10
  281. package/lib/keyvalue/index.d.ts +1 -1
  282. package/lib/keyvalue/keyvalue.module.d.ts +9 -8
  283. package/lib/keyvalue/keyvalue.pipe.d.ts +7 -7
  284. package/lib/list/index.d.ts +2 -2
  285. package/lib/list/list-item.directive.d.ts +43 -43
  286. package/lib/list/list.component.d.ts +51 -51
  287. package/lib/list/list.module.d.ts +14 -13
  288. package/lib/panel/index.d.ts +1 -1
  289. package/lib/panel/panel.component.d.ts +11 -11
  290. package/lib/panel/panel.module.d.ts +8 -7
  291. package/lib/sidenav/index.d.ts +1 -1
  292. package/lib/sidenav/sidenav-shim.directive.d.ts +20 -20
  293. package/lib/sidenav/sidenav.module.d.ts +9 -8
  294. package/lib/spinner/index.d.ts +2 -2
  295. package/lib/spinner/spinner-activity.directive.d.ts +32 -32
  296. package/lib/spinner/spinner.component.d.ts +12 -12
  297. package/lib/spinner/spinner.module.d.ts +10 -9
  298. package/lib/stop-propagation/index.d.ts +2 -2
  299. package/lib/stop-propagation/stop-drop-propagation.directive.d.ts +6 -6
  300. package/lib/stop-propagation/stop-propagation.directive.d.ts +6 -6
  301. package/lib/stop-propagation/stop-propagation.module.d.ts +10 -9
  302. package/lib/table/index.d.ts +5 -5
  303. package/lib/table/table-action-color.enum.d.ts +5 -5
  304. package/lib/table/table-database.d.ts +10 -10
  305. package/lib/table/table-datasource.d.ts +17 -17
  306. package/lib/table/table-model.interface.d.ts +28 -28
  307. package/lib/table/table.component.d.ts +40 -40
  308. package/lib/table/table.module.d.ts +20 -19
  309. package/lib/tool/index.d.ts +2 -2
  310. package/lib/tool/shared/index.d.ts +5 -5
  311. package/lib/tool/shared/tool-component.d.ts +2 -2
  312. package/lib/tool/shared/tool.interface.d.ts +18 -18
  313. package/lib/tool/shared/tool.service.d.ts +30 -30
  314. package/lib/tool/shared/toolbox.d.ts +95 -95
  315. package/lib/tool/shared/toolbox.enums.d.ts +5 -5
  316. package/lib/tool/tool.module.d.ts +10 -9
  317. package/lib/tool/toolbox/toolbox.animation.d.ts +2 -2
  318. package/lib/tool/toolbox/toolbox.component.d.ts +127 -127
  319. package/lib/tool/toolbox/toolbox.module.d.ts +13 -12
  320. package/lib/widget/index.d.ts +2 -2
  321. package/lib/widget/shared/index.d.ts +3 -3
  322. package/lib/widget/shared/widget.d.ts +4 -4
  323. package/lib/widget/shared/widget.interfaces.d.ts +12 -12
  324. package/lib/widget/shared/widget.service.d.ts +10 -10
  325. package/lib/widget/widget-outlet/widget-outlet.component.d.ts +71 -71
  326. package/lib/widget/widget-outlet/widget-outlet.module.d.ts +12 -11
  327. package/lib/widget/widget.module.d.ts +8 -7
  328. package/lib/workspace/index.d.ts +3 -3
  329. package/lib/workspace/shared/index.d.ts +3 -3
  330. package/lib/workspace/shared/store.d.ts +20 -20
  331. package/lib/workspace/shared/workspace.d.ts +108 -108
  332. package/lib/workspace/shared/workspace.interfaces.d.ts +11 -11
  333. package/lib/workspace/workspace-selector/workspace-selector.component.d.ts +35 -35
  334. package/lib/workspace/workspace-selector/workspace-selector.module.d.ts +12 -11
  335. package/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.component.d.ts +57 -57
  336. package/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.module.d.ts +12 -11
  337. package/lib/workspace/workspace.module.d.ts +9 -8
  338. package/package.json +8 -7
  339. package/public_api.d.ts +68 -66
  340. package/style/common.theming.scss +12 -236
  341. package/style/partial/action.scss +18 -18
  342. package/style/partial/common.variables.scss +8 -8
  343. package/bundles/igo2-common.umd.min.js +0 -17
  344. package/bundles/igo2-common.umd.min.js.map +0 -1
@@ -1,387 +1,385 @@
1
- import { Component, Input, HostBinding, ChangeDetectorRef, ChangeDetectionStrategy, ElementRef } from '@angular/core';
2
- import { MediaService, Media } from '@igo2/core';
3
- import { EntityStoreWatcher } from '../../entity';
4
- import { ActionbarMode } from '../shared/action.enums';
5
- import { ActionStore } from '../shared/store';
6
- import { Overlay } from '@angular/cdk/overlay';
7
- import { BehaviorSubject } from 'rxjs';
8
- import * as i0 from "@angular/core";
9
- import * as i1 from "@angular/cdk/overlay";
10
- import * as i2 from "@igo2/core";
11
- import * as i3 from "@angular/common";
12
- import * as i4 from "@angular/material/list";
13
- import * as i5 from "@angular/material/button";
14
- import * as i6 from "@angular/material/tooltip";
15
- import * as i7 from "@angular/material/icon";
16
- import * as i8 from "./actionbar-item.component";
17
- import * as i9 from "@angular/material/menu";
18
- import * as i10 from "@angular/material/card";
19
- import * as i11 from "@ngx-translate/core";
20
- function ActionbarComponent_mat_list_0_div_1_Template(rf, ctx) { if (rf & 1) {
21
- const _r8 = i0.ɵɵgetCurrentView();
22
- i0.ɵɵelementStart(0, "div", 5);
23
- i0.ɵɵelementStart(1, "button", 6);
24
- i0.ɵɵlistener("click", function ActionbarComponent_mat_list_0_div_1_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r8); const ctx_r7 = i0.ɵɵnextContext(2); return ctx_r7.scrollUp(); });
25
- i0.ɵɵpipe(2, "translate");
26
- i0.ɵɵelement(3, "mat-icon", 7);
27
- i0.ɵɵelementEnd();
28
- i0.ɵɵelementEnd();
29
- } if (rf & 2) {
30
- i0.ɵɵadvance(1);
31
- i0.ɵɵproperty("matTooltip", i0.ɵɵpipeBind1(2, 1, "igo.common.actionbar.scrollUp"));
32
- } }
33
- function ActionbarComponent_mat_list_0_igo_actionbar_item_2_Template(rf, ctx) { if (rf & 1) {
34
- const _r10 = i0.ɵɵgetCurrentView();
35
- i0.ɵɵelementStart(0, "igo-actionbar-item", 8);
36
- i0.ɵɵlistener("trigger", function ActionbarComponent_mat_list_0_igo_actionbar_item_2_Template_igo_actionbar_item_trigger_0_listener() { i0.ɵɵrestoreView(_r10); const ctx_r9 = i0.ɵɵnextContext(2); return ctx_r9.onTriggerAction(ctx_r9.toggleCollapseAction); });
37
- i0.ɵɵelementEnd();
38
- } if (rf & 2) {
39
- const ctx_r4 = i0.ɵɵnextContext(2);
40
- i0.ɵɵproperty("withTitle", false)("withIcon", true)("color", ctx_r4.color)("disabled", ctx_r4.store.view.empty)("action", ctx_r4.toggleCollapseAction);
41
- } }
42
- function ActionbarComponent_mat_list_0_3_ng_template_0_Template(rf, ctx) { if (rf & 1) {
43
- const _r15 = i0.ɵɵgetCurrentView();
44
- i0.ɵɵelementStart(0, "igo-actionbar-item", 11);
45
- i0.ɵɵlistener("trigger", function ActionbarComponent_mat_list_0_3_ng_template_0_Template_igo_actionbar_item_trigger_0_listener() { i0.ɵɵrestoreView(_r15); const action_r13 = ctx.$implicit; const ctx_r14 = i0.ɵɵnextContext(3); return ctx_r14.onTriggerAction(action_r13); });
46
- i0.ɵɵelementEnd();
47
- } if (rf & 2) {
48
- const action_r13 = ctx.$implicit;
49
- const ctx_r12 = i0.ɵɵnextContext(3);
50
- i0.ɵɵproperty("withTitle", ctx_r12.withTitle)("withIcon", ctx_r12.withIcon)("withTooltip", ctx_r12.withTooltip)("color", ctx_r12.color)("disabled", ctx_r12.store.state.get(action_r13).disabled)("action", action_r13);
51
- } }
52
- function ActionbarComponent_mat_list_0_3_Template(rf, ctx) { if (rf & 1) {
53
- i0.ɵɵtemplate(0, ActionbarComponent_mat_list_0_3_ng_template_0_Template, 1, 6, "ng-template", 9, 10, i0.ɵɵtemplateRefExtractor);
54
- i0.ɵɵpipe(2, "async");
55
- } if (rf & 2) {
56
- const ctx_r5 = i0.ɵɵnextContext(2);
57
- i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(2, 1, ctx_r5.store.view.all$()));
58
- } }
59
- function ActionbarComponent_mat_list_0_div_4_Template(rf, ctx) { if (rf & 1) {
60
- const _r17 = i0.ɵɵgetCurrentView();
61
- i0.ɵɵelementStart(0, "div", 12);
62
- i0.ɵɵelementStart(1, "button", 6);
63
- i0.ɵɵlistener("click", function ActionbarComponent_mat_list_0_div_4_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r17); const ctx_r16 = i0.ɵɵnextContext(2); return ctx_r16.scrollDown(); });
64
- i0.ɵɵpipe(2, "translate");
65
- i0.ɵɵelement(3, "mat-icon", 13);
66
- i0.ɵɵelementEnd();
67
- i0.ɵɵelementEnd();
68
- } if (rf & 2) {
69
- i0.ɵɵadvance(1);
70
- i0.ɵɵproperty("matTooltip", i0.ɵɵpipeBind1(2, 1, "igo.common.actionbar.scrollDown"));
71
- } }
72
- function ActionbarComponent_mat_list_0_Template(rf, ctx) { if (rf & 1) {
73
- i0.ɵɵelementStart(0, "mat-list");
74
- i0.ɵɵtemplate(1, ActionbarComponent_mat_list_0_div_1_Template, 4, 3, "div", 2);
75
- i0.ɵɵtemplate(2, ActionbarComponent_mat_list_0_igo_actionbar_item_2_Template, 1, 5, "igo-actionbar-item", 3);
76
- i0.ɵɵtemplate(3, ActionbarComponent_mat_list_0_3_Template, 3, 3, undefined, 0);
77
- i0.ɵɵtemplate(4, ActionbarComponent_mat_list_0_div_4_Template, 4, 3, "div", 4);
78
- i0.ɵɵelementEnd();
79
- } if (rf & 2) {
80
- const ctx_r0 = i0.ɵɵnextContext();
81
- i0.ɵɵadvance(1);
82
- i0.ɵɵproperty("ngIf", ctx_r0.heightCondition && ctx_r0.positionConditionTop && ctx_r0.isDesktop);
83
- i0.ɵɵadvance(1);
84
- i0.ɵɵproperty("ngIf", ctx_r0.withToggleButton);
85
- i0.ɵɵadvance(1);
86
- i0.ɵɵproperty("ngIf", !ctx_r0.collapsed);
87
- i0.ɵɵadvance(1);
88
- i0.ɵɵproperty("ngIf", ctx_r0.heightCondition && ctx_r0.positionConditionLow && ctx_r0.isDesktop);
89
- } }
90
- function ActionbarComponent_div_1_ng_template_7_Template(rf, ctx) { if (rf & 1) {
91
- const _r22 = i0.ɵɵgetCurrentView();
92
- i0.ɵɵelementStart(0, "igo-actionbar-item", 18);
93
- i0.ɵɵlistener("trigger", function ActionbarComponent_div_1_ng_template_7_Template_igo_actionbar_item_trigger_0_listener() { i0.ɵɵrestoreView(_r22); const action_r20 = ctx.$implicit; const ctx_r21 = i0.ɵɵnextContext(2); return ctx_r21.onTriggerAction(action_r20); });
94
- i0.ɵɵelementEnd();
95
- } if (rf & 2) {
96
- const action_r20 = ctx.$implicit;
97
- const ctx_r19 = i0.ɵɵnextContext(2);
98
- i0.ɵɵproperty("withTitle", ctx_r19.withTitle)("withIcon", ctx_r19.withIcon)("color", ctx_r19.color)("action", action_r20);
99
- } }
100
- function ActionbarComponent_div_1_Template(rf, ctx) { if (rf & 1) {
101
- i0.ɵɵelementStart(0, "div");
102
- i0.ɵɵelementStart(1, "button", 14);
103
- i0.ɵɵpipe(2, "translate");
104
- i0.ɵɵelement(3, "mat-icon", 15);
105
- i0.ɵɵelementEnd();
106
- i0.ɵɵelementStart(4, "mat-menu", 16, 17);
107
- i0.ɵɵelementStart(6, "mat-list");
108
- i0.ɵɵtemplate(7, ActionbarComponent_div_1_ng_template_7_Template, 1, 4, "ng-template", 9);
109
- i0.ɵɵpipe(8, "async");
110
- i0.ɵɵelementEnd();
111
- i0.ɵɵelementEnd();
112
- i0.ɵɵelementEnd();
113
- } if (rf & 2) {
114
- const _r18 = i0.ɵɵreference(5);
115
- const ctx_r1 = i0.ɵɵnextContext();
116
- i0.ɵɵadvance(1);
117
- i0.ɵɵproperty("matTooltip", i0.ɵɵpipeBind1(2, 10, "igo.common.actionbar.icon"))("matMenuTriggerFor", _r18)("disabled", ctx_r1.store.view.empty)("color", ctx_r1.iconColor);
118
- i0.ɵɵadvance(2);
119
- i0.ɵɵproperty("svgIcon", ctx_r1.icon);
120
- i0.ɵɵadvance(1);
121
- i0.ɵɵclassMap(ctx_r1.overlayClass);
122
- i0.ɵɵproperty("xPosition", ctx_r1.xPosition)("yPosition", ctx_r1.yPosition);
123
- i0.ɵɵadvance(3);
124
- i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(8, 12, ctx_r1.store.view.all$()));
125
- } }
126
- function ActionbarComponent_mat_card_2_ng_template_2_Template(rf, ctx) { if (rf & 1) {
127
- const _r26 = i0.ɵɵgetCurrentView();
128
- i0.ɵɵelementStart(0, "igo-actionbar-item", 18);
129
- i0.ɵɵlistener("trigger", function ActionbarComponent_mat_card_2_ng_template_2_Template_igo_actionbar_item_trigger_0_listener() { i0.ɵɵrestoreView(_r26); const action_r24 = ctx.$implicit; const ctx_r25 = i0.ɵɵnextContext(2); return ctx_r25.onTriggerAction(action_r24); });
130
- i0.ɵɵelementEnd();
131
- i0.ɵɵelement(1, "br");
132
- } if (rf & 2) {
133
- const action_r24 = ctx.$implicit;
134
- const ctx_r23 = i0.ɵɵnextContext(2);
135
- i0.ɵɵproperty("withTitle", ctx_r23.withTitle)("withIcon", ctx_r23.withIcon)("color", ctx_r23.color)("action", action_r24);
136
- } }
137
- function ActionbarComponent_mat_card_2_Template(rf, ctx) { if (rf & 1) {
138
- i0.ɵɵelementStart(0, "mat-card", 19);
139
- i0.ɵɵelementStart(1, "mat-list");
140
- i0.ɵɵtemplate(2, ActionbarComponent_mat_card_2_ng_template_2_Template, 2, 4, "ng-template", 9);
141
- i0.ɵɵpipe(3, "async");
142
- i0.ɵɵelementEnd();
143
- i0.ɵɵelementEnd();
144
- } if (rf & 2) {
145
- const ctx_r2 = i0.ɵɵnextContext();
146
- i0.ɵɵadvance(2);
147
- i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(3, 1, ctx_r2.store.view.all$()));
148
- } }
149
- /**
150
- * A list of action buttons.
151
- * This component can be displayed in one of two way: 'dock' or 'overlay'
152
- */
153
- export class ActionbarComponent {
154
- constructor(overlay, elRef, cdRef, mediaService) {
155
- this.overlay = overlay;
156
- this.elRef = elRef;
157
- this.cdRef = cdRef;
158
- this.mediaService = mediaService;
159
- /**
160
- * Reference to the ActionbarMode enum for use in the template
161
- * @internal
162
- */
163
- this.actionbarMode = ActionbarMode;
164
- /**
165
- * Whether the actionbar is collapsed (Dock mode)
166
- * @internal
167
- */
168
- this.collapsed = false;
169
- /**
170
- * Toggle collapse action (Dock)
171
- * @internal
172
- */
173
- this.toggleCollapseAction = {
174
- id: 'actionbar_toggle',
175
- icon: 'dots-vertical',
176
- handler: () => {
177
- this.collapsed = !this.collapsed;
178
- }
179
- };
180
- /**
181
- * Height Condition for scroll button
182
- */
183
- this.heightCondition$ = new BehaviorSubject(false);
184
- /**
185
- * Position Condition for top scroll button
186
- */
187
- this.positionConditionTop$ = new BehaviorSubject(true);
188
- /**
189
- * Position Condition for low scroll button
190
- */
191
- this.positionConditionLow$ = new BehaviorSubject(true);
192
- /**
193
- * Actionbar mode
194
- */
195
- this.mode = ActionbarMode.Dock;
196
- /**
197
- * Whether a toggle button should be displayed (Dock mode)
198
- */
199
- this.withToggleButton = false;
200
- /**
201
- * Whether a the actionbar should display buttons horizontally
202
- */
203
- this.horizontal = false;
204
- /**
205
- * Color
206
- */
207
- this.color = 'default';
208
- /**
209
- * Color of the button if action mode === overlay
210
- */
211
- this.iconColor = 'default';
212
- /**
213
- * Whether action titles are displayed
214
- */
215
- this.withTitle = true;
216
- /**
217
- * Whether action tooltips are displayed
218
- */
219
- this.withTooltip = true;
220
- /**
221
- * Whether action titles are displayed (condition for scroll button)
222
- */
223
- this.scrollActive = true;
224
- /**
225
- * Whether action icons are displayed
226
- */
227
- this.withIcon = true;
228
- /**
229
- * Which icon want to be shown
230
- */
231
- this.icon = 'dots-horizontal';
232
- /**
233
- * Overlay X position
234
- */
235
- this.xPosition = 'before';
236
- /**
237
- * Overlay Y position
238
- */
239
- this.yPosition = 'above';
240
- this._overlayClass = '';
241
- }
242
- /**
243
- * Class to add to the actionbar overlay
244
- */
245
- set overlayClass(value) {
246
- this._overlayClass = value;
247
- }
248
- get overlayClass() {
249
- return [this._overlayClass, 'igo-actionbar-overlay'].join(' ');
250
- }
251
- /**
252
- * @ignore
253
- */
254
- get withTitleClass() {
255
- return this.withTitle;
256
- }
257
- /**
258
- * @ignore
259
- */
260
- get withIconClass() {
261
- return this.withIcon;
262
- }
263
- /**
264
- * @ignore
265
- */
266
- get horizontalClass() {
267
- return this.horizontal;
268
- }
269
- get heightCondition() {
270
- const el = this.elRef.nativeElement;
271
- if (this.scrollActive === false) {
272
- if (el.clientHeight < el.scrollHeight) {
273
- return true;
274
- }
275
- }
276
- return false;
277
- }
278
- get positionConditionTop() {
279
- if (this.elRef.nativeElement.scrollTop === 0) {
280
- return false;
281
- }
282
- return true;
283
- }
284
- get positionConditionLow() {
285
- const el = this.elRef.nativeElement;
286
- if (el.scrollTop >= (el.scrollHeight - el.clientHeight)) {
287
- return false;
288
- }
289
- return true;
290
- }
291
- get isDesktop() {
292
- return this.mediaService.getMedia() === Media.Desktop;
293
- }
294
- /**
295
- * @internal
296
- */
297
- ngOnChanges(changes) {
298
- const store = changes.store;
299
- if (store && store.currentValue !== store.previousValue) {
300
- if (this.watcher !== undefined) {
301
- this.watcher.destroy();
302
- }
303
- this.watcher = new EntityStoreWatcher(this.store, this.cdRef);
304
- }
305
- }
306
- /**
307
- * @internal
308
- */
309
- ngOnDestroy() {
310
- this.watcher.destroy();
311
- }
312
- /**
313
- * Invoke the action handler
314
- * @internal
315
- */
316
- onTriggerAction(action) {
317
- const args = action.args || [];
318
- action.handler(...args);
319
- }
320
- scrollDown() {
321
- this.elRef.nativeElement.scrollBy(0, 52);
322
- }
323
- scrollUp() {
324
- this.elRef.nativeElement.scrollBy(0, -52);
325
- }
326
- }
327
- ActionbarComponent.ɵfac = function ActionbarComponent_Factory(t) { return new (t || ActionbarComponent)(i0.ɵɵdirectiveInject(i1.Overlay), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i2.MediaService)); };
328
- ActionbarComponent.ɵcmp = i0.ɵɵdefineComponent({ type: ActionbarComponent, selectors: [["igo-actionbar"]], hostVars: 6, hostBindings: function ActionbarComponent_HostBindings(rf, ctx) { if (rf & 2) {
329
- i0.ɵɵclassProp("with-title", ctx.withTitleClass)("with-icon", ctx.withIconClass)("horizontal", ctx.horizontalClass);
330
- } }, inputs: { store: "store", mode: "mode", withToggleButton: "withToggleButton", horizontal: "horizontal", color: "color", iconColor: "iconColor", withTitle: "withTitle", withTooltip: "withTooltip", scrollActive: "scrollActive", withIcon: "withIcon", icon: "icon", xPosition: "xPosition", yPosition: "yPosition", overlayClass: "overlayClass" }, features: [i0.ɵɵNgOnChangesFeature], decls: 3, vars: 3, consts: [[4, "ngIf"], ["class", "context-menu-card mat-elevation-z4", 4, "ngIf"], ["id", "topChevron", 4, "ngIf"], ["color", "accent", 3, "withTitle", "withIcon", "color", "disabled", "action", "trigger", 4, "ngIf"], ["id", "lowChevron", 4, "ngIf"], ["id", "topChevron"], ["mat-icon-button", "", "tooltip-position", "below", "matTooltipShowDelay", "500", 3, "matTooltip", "click"], ["svgIcon", "chevron-up"], ["color", "accent", 3, "withTitle", "withIcon", "color", "disabled", "action", "trigger"], ["ngFor", "", 3, "ngForOf"], ["buttonContent", ""], ["color", "accent", 3, "withTitle", "withIcon", "withTooltip", "color", "disabled", "action", "trigger"], ["id", "lowChevron"], ["svgIcon", "chevron-down"], ["mat-icon-button", "", "tooltip-position", "below", "matTooltipShowDelay", "500", 1, "buttonOverlay", 3, "matTooltip", "matMenuTriggerFor", "disabled", "color"], [3, "svgIcon"], ["overlapTrigger", "true", 1, "igo-compact-menu", "igo-no-min-width-menu", 3, "xPosition", "yPosition"], ["actionbarMenu", "matMenu"], ["color", "accent", 3, "withTitle", "withIcon", "color", "action", "trigger"], [1, "context-menu-card", "mat-elevation-z4"]], template: function ActionbarComponent_Template(rf, ctx) { if (rf & 1) {
331
- i0.ɵɵtemplate(0, ActionbarComponent_mat_list_0_Template, 5, 4, "mat-list", 0);
332
- i0.ɵɵtemplate(1, ActionbarComponent_div_1_Template, 9, 14, "div", 0);
333
- i0.ɵɵtemplate(2, ActionbarComponent_mat_card_2_Template, 4, 3, "mat-card", 1);
334
- } if (rf & 2) {
335
- i0.ɵɵproperty("ngIf", ctx.mode === ctx.actionbarMode.Dock);
336
- i0.ɵɵadvance(1);
337
- i0.ɵɵproperty("ngIf", ctx.mode === ctx.actionbarMode.Overlay);
338
- i0.ɵɵadvance(1);
339
- i0.ɵɵproperty("ngIf", ctx.mode === ctx.actionbarMode.Context);
340
- } }, directives: [i3.NgIf, i4.MatList, i5.MatButton, i6.MatTooltip, i7.MatIcon, i8.ActionbarItemComponent, i3.NgForOf, i9.MatMenuTrigger, i9._MatMenu, i10.MatCard], pipes: [i11.TranslatePipe, i3.AsyncPipe], styles: ["[_nghost-%COMP%]{display:block;height:100%;overflow:auto;position:relative}button[_ngcontent-%COMP%]{margin:4px}.buttonOverlay[_ngcontent-%COMP%]{margin:0}mat-list[_ngcontent-%COMP%]{padding-top:0}.horizontal[_nghost-%COMP%]{max-width:100%;overflow:unset}.horizontal[_nghost-%COMP%] mat-list[_ngcontent-%COMP%]{white-space:nowrap;width:auto}.horizontal[_nghost-%COMP%] igo-actionbar-item[_ngcontent-%COMP%]{display:inline-block}[_nghost-%COMP%] .mat-list .mat-list-item .mat-list-text>*{-webkit-box-orient:vertical;-webkit-line-clamp:2;display:-webkit-box;line-height:18px;max-height:36px;overflow:hidden;text-overflow:ellipsis;white-space:normal}[_nghost-%COMP%] .mat-list-base .mat-list-item.mat-list-item-with-avatar{height:46px}[_nghost-%COMP%] .mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content{display:-webkit-flex;height:46px;padding:3px}[_nghost-%COMP%] .mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content>mat-icon{padding:8px}igo-actionbar-item[_ngcontent-%COMP%] mat-list-item [mat-list-avatar]{height:auto;width:40px}igo-actionbar-item[_ngcontent-%COMP%] mat-list-item:hover{cursor:pointer}.context-menu-card[_ngcontent-%COMP%]{margin:10px;padding:8px 3px}#topChevron[_ngcontent-%COMP%]{background-color:#fff;position:-webkit-sticky;position:sticky;top:0;z-index:3}@media (-ms-high-contrast:active),(-ms-high-contrast:none){#topChevron[_ngcontent-%COMP%]{position:fixed;top:unset}}@supports (-ms-accelerator:true){#topChevron[_ngcontent-%COMP%]{position:fixed;top:unset}}#lowChevron[_ngcontent-%COMP%]{background-color:#fff;bottom:0;position:fixed;position:-webkit-sticky;position:sticky;z-index:3}"], changeDetection: 0 });
341
- /*@__PURE__*/ (function () { i0.ɵsetClassMetadata(ActionbarComponent, [{
342
- type: Component,
343
- args: [{
344
- selector: 'igo-actionbar',
345
- templateUrl: './actionbar.component.html',
346
- styleUrls: ['./actionbar.component.scss'],
347
- changeDetection: ChangeDetectionStrategy.OnPush
348
- }]
349
- }], function () { return [{ type: i1.Overlay }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i2.MediaService }]; }, { store: [{
350
- type: Input
351
- }], mode: [{
352
- type: Input
353
- }], withToggleButton: [{
354
- type: Input
355
- }], horizontal: [{
356
- type: Input
357
- }], color: [{
358
- type: Input
359
- }], iconColor: [{
360
- type: Input
361
- }], withTitle: [{
362
- type: Input
363
- }], withTooltip: [{
364
- type: Input
365
- }], scrollActive: [{
366
- type: Input
367
- }], withIcon: [{
368
- type: Input
369
- }], icon: [{
370
- type: Input
371
- }], xPosition: [{
372
- type: Input
373
- }], yPosition: [{
374
- type: Input
375
- }], overlayClass: [{
376
- type: Input
377
- }], withTitleClass: [{
378
- type: HostBinding,
379
- args: ['class.with-title']
380
- }], withIconClass: [{
381
- type: HostBinding,
382
- args: ['class.with-icon']
383
- }], horizontalClass: [{
384
- type: HostBinding,
385
- args: ['class.horizontal']
386
- }] }); })();
387
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIvc3J2L2FwcHMvaWdvMi1saWIvcGFja2FnZXMvY29tbW9uL3NyYy8iLCJzb3VyY2VzIjpbImxpYi9hY3Rpb24vYWN0aW9uYmFyL2FjdGlvbmJhci5jb21wb25lbnQudHMiLCJsaWIvYWN0aW9uL2FjdGlvbmJhci9hY3Rpb25iYXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxLQUFLLEVBQ0wsV0FBVyxFQUNYLGlCQUFpQixFQUNqQix1QkFBdUIsRUFJdkIsVUFBVSxFQUNYLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGNBQWMsQ0FBQztBQUVsRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7SUNoQm5DLDhCQUVFO0lBQUEsaUNBTUU7SUFEQSxnTUFBb0I7O0lBQ3BCLDhCQUEwQztJQUM1QyxpQkFBUztJQUNYLGlCQUFNOztJQUpGLGVBQTBEO0lBQTFELGtGQUEwRDs7OztJQU05RCw2Q0FTcUI7SUFEbkIsa1FBQWlEO0lBQ25ELGlCQUFxQjs7O0lBTm5CLGlDQUFtQixrQkFBQSx1QkFBQSxxQ0FBQSx1Q0FBQTs7OztJQVNuQiw4Q0FTcUI7SUFEbkIsZ1JBQW1DO0lBQ3JDLGlCQUFxQjs7OztJQVBuQiw2Q0FBdUIsOEJBQUEsb0NBQUEsd0JBQUEsMERBQUEsc0JBQUE7OztJQUgzQiwrSEFDRTs7OztJQUQ4RCx3RUFBcUM7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SyxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDNUMsQ0FBQzs7b0ZBMU5VLGtCQUFrQjt1REFBbEIsa0JBQWtCOzs7UUM5Qi9CLDZFQUVJO1FBa0RKLG9FQUNFO1FBaUNGLDZFQUNFOztRQXZGUSwwREFBbUM7UUFvRHhDLGVBQXNDO1FBQXRDLDZEQUFzQztRQWtDakMsZUFBc0M7UUFBdEMsNkRBQXNDOztrRER4RG5DLGtCQUFrQjtjQU45QixTQUFTO2VBQUM7Z0JBQ1QsUUFBUSxFQUFFLGVBQWU7Z0JBQ3pCLFdBQVcsRUFBRSw0QkFBNEI7Z0JBQ3pDLFNBQVMsRUFBRSxDQUFDLDRCQUE0QixDQUFDO2dCQUN6QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTthQUNoRDs4SUFtRFUsS0FBSztrQkFBYixLQUFLO1lBS0csSUFBSTtrQkFBWixLQUFLO1lBS0csZ0JBQWdCO2tCQUF4QixLQUFLO1lBS0csVUFBVTtrQkFBbEIsS0FBSztZQUtHLEtBQUs7a0JBQWIsS0FBSztZQUtHLFNBQVM7a0JBQWpCLEtBQUs7WUFLRyxTQUFTO2tCQUFqQixLQUFLO1lBS0csV0FBVztrQkFBbkIsS0FBSztZQUtHLFlBQVk7a0JBQXBCLEtBQUs7WUFLRyxRQUFRO2tCQUFoQixLQUFLO1lBS0csSUFBSTtrQkFBWixLQUFLO1lBS0csU0FBUztrQkFBakIsS0FBSztZQUtHLFNBQVM7a0JBQWpCLEtBQUs7WUFNRixZQUFZO2tCQURmLEtBQUs7WUFhRixjQUFjO2tCQURqQixXQUFXO21CQUFDLGtCQUFrQjtZQVMzQixhQUFhO2tCQURoQixXQUFXO21CQUFDLGlCQUFpQjtZQVMxQixlQUFlO2tCQURsQixXQUFXO21CQUFDLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIEhvc3RCaW5kaW5nLFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBTaW1wbGVDaGFuZ2VzLFxuICBFbGVtZW50UmVmXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBNZWRpYVNlcnZpY2UsIE1lZGlhIH0gZnJvbSAnQGlnbzIvY29yZSc7XG5pbXBvcnQgeyBFbnRpdHlTdG9yZVdhdGNoZXIgfSBmcm9tICcuLi8uLi9lbnRpdHknO1xuaW1wb3J0IHsgQWN0aW9uIH0gZnJvbSAnLi4vc2hhcmVkL2FjdGlvbi5pbnRlcmZhY2VzJztcbmltcG9ydCB7IEFjdGlvbmJhck1vZGUgfSBmcm9tICcuLi9zaGFyZWQvYWN0aW9uLmVudW1zJztcbmltcG9ydCB7IEFjdGlvblN0b3JlIH0gZnJvbSAnLi4vc2hhcmVkL3N0b3JlJztcbmltcG9ydCB7IE92ZXJsYXkgfSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QgfSBmcm9tICdyeGpzJztcblxuLyoqXG4gKiBBIGxpc3Qgb2YgYWN0aW9uIGJ1dHRvbnMuXG4gKiBUaGlzIGNvbXBvbmVudCBjYW4gYmUgZGlzcGxheWVkIGluIG9uZSBvZiB0d28gd2F5OiAnZG9jaycgb3IgJ292ZXJsYXknXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2lnby1hY3Rpb25iYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vYWN0aW9uYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vYWN0aW9uYmFyLmNvbXBvbmVudC5zY3NzJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIEFjdGlvbmJhckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSwgT25DaGFuZ2VzIHtcblxuICAvKipcbiAgICogUmVmZXJlbmNlIHRvIHRoZSBBY3Rpb25iYXJNb2RlIGVudW0gZm9yIHVzZSBpbiB0aGUgdGVtcGxhdGVcbiAgICogQGludGVybmFsXG4gICAqL1xuICBhY3Rpb25iYXJNb2RlID0gQWN0aW9uYmFyTW9kZTtcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgYWN0aW9uYmFyIGlzIGNvbGxhcHNlZCAoRG9jayBtb2RlKVxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIGNvbGxhcHNlZCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBUb2dnbGUgY29sbGFwc2UgYWN0aW9uIChEb2NrKVxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIHRvZ2dsZUNvbGxhcHNlQWN0aW9uID0ge1xuICAgIGlkOiAnYWN0aW9uYmFyX3RvZ2dsZScsXG4gICAgaWNvbjogJ2RvdHMtdmVydGljYWwnLFxuICAgIGhhbmRsZXI6ICgpID0+IHtcbiAgICAgIHRoaXMuY29sbGFwc2VkID0gIXRoaXMuY29sbGFwc2VkO1xuICAgIH1cbiAgfTtcblxuICAvKipcbiAgICogQWN0aW9uIHN0b3JlIHdhdGNoZXJcbiAgICogQGludGVybmFsXG4gICAqL1xuICBwcml2YXRlIHdhdGNoZXI6IEVudGl0eVN0b3JlV2F0Y2hlcjxBY3Rpb24+O1xuXG4gIC8qKlxuICAgKiBIZWlnaHQgQ29uZGl0aW9uIGZvciBzY3JvbGwgYnV0dG9uXG4gICAqL1xuICBoZWlnaHRDb25kaXRpb24kOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcblxuICAvKipcbiAgICogUG9zaXRpb24gQ29uZGl0aW9uIGZvciB0b3Agc2Nyb2xsIGJ1dHRvblxuICAgKi9cbiAgcG9zaXRpb25Db25kaXRpb25Ub3AkOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHRydWUpO1xuXG4gIC8qKlxuICAgKiBQb3NpdGlvbiBDb25kaXRpb24gZm9yIGxvdyBzY3JvbGwgYnV0dG9uXG4gICAqL1xuICBwb3NpdGlvbkNvbmRpdGlvbkxvdyQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4odHJ1ZSk7XG5cbiAgLyoqXG4gICAqIEFjdGlvbiBzdG9yZVxuICAgKi9cbiAgQElucHV0KCkgc3RvcmU6IEFjdGlvblN0b3JlO1xuXG4gIC8qKlxuICAgKiBBY3Rpb25iYXIgbW9kZVxuICAgKi9cbiAgQElucHV0KCkgbW9kZTogQWN0aW9uYmFyTW9kZSA9IEFjdGlvbmJhck1vZGUuRG9jaztcblxuICAvKipcbiAgICogV2hldGhlciBhIHRvZ2dsZSBidXR0b24gc2hvdWxkIGJlIGRpc3BsYXllZCAoRG9jayBtb2RlKVxuICAgKi9cbiAgQElucHV0KCkgd2l0aFRvZ2dsZUJ1dHRvbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIGEgdGhlIGFjdGlvbmJhciBzaG91bGQgZGlzcGxheSBidXR0b25zIGhvcml6b250YWxseVxuICAgKi9cbiAgQElucHV0KCkgaG9yaXpvbnRhbCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBDb2xvclxuICAgKi9cbiAgQElucHV0KCkgY29sb3IgPSAnZGVmYXVsdCc7XG5cbiAgLyoqXG4gICAqIENvbG9yIG9mIHRoZSBidXR0b24gaWYgYWN0aW9uIG1vZGUgPT09IG92ZXJsYXlcbiAgICovXG4gIEBJbnB1dCgpIGljb25Db2xvciA9ICdkZWZhdWx0JztcblxuICAvKipcbiAgICogV2hldGhlciBhY3Rpb24gdGl0bGVzIGFyZSBkaXNwbGF5ZWRcbiAgICovXG4gIEBJbnB1dCgpIHdpdGhUaXRsZSA9IHRydWU7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgYWN0aW9uIHRvb2x0aXBzIGFyZSBkaXNwbGF5ZWRcbiAgICovXG4gIEBJbnB1dCgpIHdpdGhUb29sdGlwID0gdHJ1ZTtcblxuICAvKipcbiAgICogV2hldGhlciBhY3Rpb24gdGl0bGVzIGFyZSBkaXNwbGF5ZWQgKGNvbmRpdGlvbiBmb3Igc2Nyb2xsIGJ1dHRvbilcbiAgICovXG4gIEBJbnB1dCgpIHNjcm9sbEFjdGl2ZSA9IHRydWU7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgYWN0aW9uIGljb25zIGFyZSBkaXNwbGF5ZWRcbiAgICovXG4gIEBJbnB1dCgpIHdpdGhJY29uID0gdHJ1ZTtcblxuICAvKipcbiAgICogV2hpY2ggaWNvbiB3YW50IHRvIGJlIHNob3duXG4gICAqL1xuICBASW5wdXQoKSBpY29uID0gJ2RvdHMtaG9yaXpvbnRhbCc7XG5cbiAgLyoqXG4gICAqIE92ZXJsYXkgWCBwb3NpdGlvblxuICAgKi9cbiAgQElucHV0KCkgeFBvc2l0aW9uID0gJ2JlZm9yZSc7XG5cbiAgLyoqXG4gICAqIE92ZXJsYXkgWSBwb3NpdGlvblxuICAgKi9cbiAgQElucHV0KCkgeVBvc2l0aW9uID0gJ2Fib3ZlJztcblxuICAvKipcbiAgICogQ2xhc3MgdG8gYWRkIHRvIHRoZSBhY3Rpb25iYXIgb3ZlcmxheVxuICAgKi9cbiAgQElucHV0KClcbiAgc2V0IG92ZXJsYXlDbGFzcyh2YWx1ZTogc3RyaW5nKSB7XG4gICAgdGhpcy5fb3ZlcmxheUNsYXNzID0gdmFsdWU7XG4gIH1cbiAgZ2V0IG92ZXJsYXlDbGFzcygpOiBzdHJpbmcge1xuICAgIHJldHVybiBbdGhpcy5fb3ZlcmxheUNsYXNzLCAnaWdvLWFjdGlvbmJhci1vdmVybGF5J10uam9pbignICcpO1xuICB9XG4gIHByaXZhdGUgX292ZXJsYXlDbGFzcyA9ICcnO1xuXG4gIC8qKlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLndpdGgtdGl0bGUnKVxuICBnZXQgd2l0aFRpdGxlQ2xhc3MoKSB7XG4gICAgcmV0dXJuIHRoaXMud2l0aFRpdGxlO1xuICB9XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIEBIb3N0QmluZGluZygnY2xhc3Mud2l0aC1pY29uJylcbiAgZ2V0IHdpdGhJY29uQ2xhc3MoKSB7XG4gICAgcmV0dXJuIHRoaXMud2l0aEljb247XG4gIH1cblxuICAvKipcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy5ob3Jpem9udGFsJylcbiAgZ2V0IGhvcml6b250YWxDbGFzcygpIHtcbiAgICByZXR1cm4gdGhpcy5ob3Jpem9udGFsO1xuICB9XG5cbiAgZ2V0IGhlaWdodENvbmRpdGlvbigpOiBib29sZWFuIHtcbiAgICBjb25zdCBlbCA9IHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudDtcbiAgICBpZiAodGhpcy5zY3JvbGxBY3RpdmUgPT09IGZhbHNlKSB7XG4gICAgICBpZiAoZWwuY2xpZW50SGVpZ2h0IDwgZWwuc2Nyb2xsSGVpZ2h0KSB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gZmFsc2U7XG4gIH1cblxuICBnZXQgcG9zaXRpb25Db25kaXRpb25Ub3AoKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5zY3JvbGxUb3AgPT09IDApIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBnZXQgcG9zaXRpb25Db25kaXRpb25Mb3coKTogYm9vbGVhbiB7XG4gICAgY29uc3QgZWwgPSB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQ7XG4gICAgaWYgKGVsLnNjcm9sbFRvcCA+PSAoZWwuc2Nyb2xsSGVpZ2h0IC0gZWwuY2xpZW50SGVpZ2h0KSkge1xuICAgICAgcmV0dXJuIGZhbHNlO1xuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIGdldCBpc0Rlc2t0b3AoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMubWVkaWFTZXJ2aWNlLmdldE1lZGlhKCkgPT09IE1lZGlhLkRlc2t0b3A7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgb3ZlcmxheTogT3ZlcmxheSxcbiAgICBwcml2YXRlIGVsUmVmOiBFbGVtZW50UmVmLFxuICAgIHByaXZhdGUgY2RSZWY6IENoYW5nZURldGVjdG9yUmVmLFxuICAgIHB1YmxpYyBtZWRpYVNlcnZpY2U6IE1lZGlhU2VydmljZSkge31cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKSB7XG4gICAgY29uc3Qgc3RvcmUgPSBjaGFuZ2VzLnN0b3JlO1xuICAgIGlmIChzdG9yZSAmJiBzdG9yZS5jdXJyZW50VmFsdWUgIT09IHN0b3JlLnByZXZpb3VzVmFsdWUpIHtcbiAgICAgIGlmICh0aGlzLndhdGNoZXIgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICB0aGlzLndhdGNoZXIuZGVzdHJveSgpO1xuICAgICAgfVxuICAgICAgdGhpcy53YXRjaGVyID0gbmV3IEVudGl0eVN0b3JlV2F0Y2hlcih0aGlzLnN0b3JlLCB0aGlzLmNkUmVmKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogQGludGVybmFsXG4gICAqL1xuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLndhdGNoZXIuZGVzdHJveSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEludm9rZSB0aGUgYWN0aW9uIGhhbmRsZXJcbiAgICogQGludGVybmFsXG4gICAqL1xuICBvblRyaWdnZXJBY3Rpb24oYWN0aW9uOiBBY3Rpb24pIHtcbiAgICBjb25zdCBhcmdzID0gYWN0aW9uLmFyZ3MgfHwgW107XG4gICAgYWN0aW9uLmhhbmRsZXIoLi4uYXJncyk7XG4gIH1cblxuICBzY3JvbGxEb3duKCkge1xuICAgIHRoaXMuZWxSZWYubmF0aXZlRWxlbWVudC5zY3JvbGxCeSgwLCA1Mik7XG4gIH1cblxuICBzY3JvbGxVcCgpIHtcbiAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsQnkoMCwgLTUyKTtcbiAgfVxuXG59XG4iLCI8bWF0LWxpc3QgKm5nSWY9XCJtb2RlID09PSBhY3Rpb25iYXJNb2RlLkRvY2tcIj5cblxuICAgIDxkaXYgKm5nSWY9XCJoZWlnaHRDb25kaXRpb24gJiYgcG9zaXRpb25Db25kaXRpb25Ub3AgJiYgaXNEZXNrdG9wXCJcbiAgICAgIGlkPVwidG9wQ2hldnJvblwiPlxuICAgICAgPGJ1dHRvblxuICAgICAgICBtYXQtaWNvbi1idXR0b25cbiAgICAgICAgdG9vbHRpcC1wb3NpdGlvbj1cImJlbG93XCJcbiAgICAgICAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXG4gICAgICAgIFttYXRUb29sdGlwXT1cIidpZ28uY29tbW9uLmFjdGlvbmJhci5zY3JvbGxVcCcgfCB0cmFuc2xhdGVcIlxuICAgICAgICAoY2xpY2spPVwic2Nyb2xsVXAoKVwiPlxuICAgICAgICA8bWF0LWljb24gc3ZnSWNvbj1cImNoZXZyb24tdXBcIj48L21hdC1pY29uPlxuICAgICAgPC9idXR0b24+XG4gICAgPC9kaXY+XG5cbiAgICA8aWdvLWFjdGlvbmJhci1pdGVtXG4gICAgICAqbmdJZj1cIndpdGhUb2dnbGVCdXR0b25cIlxuICAgICAgY29sb3I9XCJhY2NlbnRcIlxuICAgICAgW3dpdGhUaXRsZV09XCJmYWxzZVwiXG4gICAgICBbd2l0aEljb25dPVwidHJ1ZVwiXG4gICAgICBbY29sb3JdPVwiY29sb3JcIlxuICAgICAgW2Rpc2FibGVkXT1cInN0b3JlLnZpZXcuZW1wdHlcIlxuICAgICAgW2FjdGlvbl09XCJ0b2dnbGVDb2xsYXBzZUFjdGlvblwiXG4gICAgICAodHJpZ2dlcik9XCJvblRyaWdnZXJBY3Rpb24odG9nZ2xlQ29sbGFwc2VBY3Rpb24pXCI+XG4gICAgPC9pZ28tYWN0aW9uYmFyLWl0ZW0+XG5cbiAgICA8bmctdGVtcGxhdGUgI2J1dHRvbkNvbnRlbnQgKm5nSWY9XCIhY29sbGFwc2VkXCIgbmdGb3IgbGV0LWFjdGlvbiBbbmdGb3JPZl09XCJzdG9yZS52aWV3LmFsbCQoKSB8IGFzeW5jXCI+XG4gICAgICA8aWdvLWFjdGlvbmJhci1pdGVtXG4gICAgICAgIGNvbG9yPVwiYWNjZW50XCJcbiAgICAgICAgW3dpdGhUaXRsZV09XCJ3aXRoVGl0bGVcIlxuICAgICAgICBbd2l0aEljb25dPVwid2l0aEljb25cIlxuICAgICAgICBbd2l0aFRvb2x0aXBdPVwid2l0aFRvb2x0aXBcIlxuICAgICAgICBbY29sb3JdPVwiY29sb3JcIlxuICAgICAgICBbZGlzYWJsZWRdPVwic3RvcmUuc3RhdGUuZ2V0KGFjdGlvbikuZGlzYWJsZWRcIlxuICAgICAgICBbYWN0aW9uXT1cImFjdGlvblwiXG4gICAgICAgICh0cmlnZ2VyKT1cIm9uVHJpZ2dlckFjdGlvbihhY3Rpb24pXCI+XG4gICAgICA8L2lnby1hY3Rpb25iYXItaXRlbT5cbiAgICA8L25nLXRlbXBsYXRlPlxuXG4gICAgPGRpdiAqbmdJZj1cImhlaWdodENvbmRpdGlvbiAmJiBwb3NpdGlvbkNvbmRpdGlvbkxvdyAmJiBpc0Rlc2t0b3BcIlxuICAgICAgaWQ9XCJsb3dDaGV2cm9uXCI+XG4gICAgICA8YnV0dG9uXG4gICAgICAgIG1hdC1pY29uLWJ1dHRvblxuICAgICAgICB0b29sdGlwLXBvc2l0aW9uPVwiYmVsb3dcIlxuICAgICAgICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcbiAgICAgICAgW21hdFRvb2x0aXBdPVwiJ2lnby5jb21tb24uYWN0aW9uYmFyLnNjcm9sbERvd24nIHwgdHJhbnNsYXRlXCJcbiAgICAgICAgKGNsaWNrKT1cInNjcm9sbERvd24oKVwiPlxuICAgICAgICA8bWF0LWljb24gc3ZnSWNvbj1cImNoZXZyb24tZG93blwiPjwvbWF0LWljb24+XG4gICAgICA8L2J1dHRvbj5cbiAgICA8L2Rpdj5cblxuPC9tYXQtbGlzdD5cblxuPGRpdiAqbmdJZj1cIm1vZGUgPT09IGFjdGlvbmJhck1vZGUuT3ZlcmxheVwiPlxuICA8YnV0dG9uIGNsYXNzPVwiYnV0dG9uT3ZlcmxheVwiXG4gICAgbWF0LWljb24tYnV0dG9uXG4gICAgdG9vbHRpcC1wb3NpdGlvbj1cImJlbG93XCJcbiAgICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcbiAgICBbbWF0VG9vbHRpcF09XCInaWdvLmNvbW1vbi5hY3Rpb25iYXIuaWNvbicgfCB0cmFuc2xhdGVcIlxuICAgIFttYXRNZW51VHJpZ2dlckZvcl09XCJhY3Rpb25iYXJNZW51XCJcbiAgICBbZGlzYWJsZWRdPVwic3RvcmUudmlldy5lbXB0eVwiXG4gICAgW2NvbG9yXT1cImljb25Db2xvclwiPlxuICAgIDxtYXQtaWNvbiBbc3ZnSWNvbl09XCJpY29uXCI+PC9tYXQtaWNvbj5cbiAgPC9idXR0b24+XG5cbiAgPG1hdC1tZW51XG4gICAgI2FjdGlvbmJhck1lbnU9XCJtYXRNZW51XCJcbiAgICBjbGFzcz1cImlnby1jb21wYWN0LW1lbnUgaWdvLW5vLW1pbi13aWR0aC1tZW51XCJcbiAgICBvdmVybGFwVHJpZ2dlcj1cInRydWVcIlxuICAgIFt4UG9zaXRpb25dPVwieFBvc2l0aW9uXCJcbiAgICBbeVBvc2l0aW9uXT1cInlQb3NpdGlvblwiXG4gICAgW2NsYXNzXT1cIm92ZXJsYXlDbGFzc1wiPlxuXG4gICAgPG1hdC1saXN0PlxuICAgICAgPG5nLXRlbXBsYXRlIG5nRm9yIGxldC1hY3Rpb24gW25nRm9yT2ZdPVwic3RvcmUudmlldy5hbGwkKCkgfCBhc3luY1wiPlxuICAgICAgICA8aWdvLWFjdGlvbmJhci1pdGVtXG4gICAgICAgICAgY29sb3I9XCJhY2NlbnRcIlxuICAgICAgICAgIFt3aXRoVGl0bGVdPVwid2l0aFRpdGxlXCJcbiAgICAgICAgICBbd2l0aEljb25dPVwid2l0aEljb25cIlxuICAgICAgICAgIFtjb2xvcl09XCJjb2xvclwiXG4gICAgICAgICAgW2FjdGlvbl09XCJhY3Rpb25cIlxuICAgICAgICAgICh0cmlnZ2VyKT1cIm9uVHJpZ2dlckFjdGlvbihhY3Rpb24pXCI+XG4gICAgICAgIDwvaWdvLWFjdGlvbmJhci1pdGVtPlxuICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L21hdC1saXN0PlxuICA8L21hdC1tZW51PlxuPC9kaXY+XG48bWF0LWNhcmQgKm5nSWY9XCJtb2RlID09PSBhY3Rpb25iYXJNb2RlLkNvbnRleHRcIiBjbGFzcz1cImNvbnRleHQtbWVudS1jYXJkIG1hdC1lbGV2YXRpb24tejRcIj5cbiAgPG1hdC1saXN0PlxuICAgICAgPG5nLXRlbXBsYXRlIG5nRm9yIGxldC1hY3Rpb24gW25nRm9yT2ZdPVwic3RvcmUudmlldy5hbGwkKCkgfCBhc3luY1wiPlxuICAgICAgICAgIDxpZ28tYWN0aW9uYmFyLWl0ZW1cbiAgICAgICAgICAgIGNvbG9yPVwiYWNjZW50XCJcbiAgICAgICAgICAgIFt3aXRoVGl0bGVdPVwid2l0aFRpdGxlXCJcbiAgICAgICAgICAgIFt3aXRoSWNvbl09XCJ3aXRoSWNvblwiXG4gICAgICAgICAgICBbY29sb3JdPVwiY29sb3JcIlxuICAgICAgICAgICAgW2FjdGlvbl09XCJhY3Rpb25cIlxuICAgICAgICAgICAgKHRyaWdnZXIpPVwib25UcmlnZ2VyQWN0aW9uKGFjdGlvbilcIj5cbiAgICAgICAgICA8L2lnby1hY3Rpb25iYXItaXRlbT5cbiAgICAgICAgPGJyLz5cbiAgICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvbWF0LWxpc3Q+XG48L21hdC1jYXJkPlxuIl19
1
+ import { Component, Input, HostBinding, ChangeDetectionStrategy } from '@angular/core';
2
+ import { Media } from '@igo2/core';
3
+ import { EntityStoreWatcher } from '../../entity';
4
+ import { ActionbarMode } from '../shared/action.enums';
5
+ import { BehaviorSubject } from 'rxjs';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@angular/cdk/overlay";
8
+ import * as i2 from "@igo2/core";
9
+ import * as i3 from "@angular/common";
10
+ import * as i4 from "@angular/material/list";
11
+ import * as i5 from "@angular/material/button";
12
+ import * as i6 from "@angular/material/tooltip";
13
+ import * as i7 from "@angular/material/icon";
14
+ import * as i8 from "./actionbar-item.component";
15
+ import * as i9 from "@angular/material/menu";
16
+ import * as i10 from "@angular/material/card";
17
+ import * as i11 from "@ngx-translate/core";
18
+ function ActionbarComponent_mat_list_0_div_1_Template(rf, ctx) { if (rf & 1) {
19
+ const _r8 = i0.ɵɵgetCurrentView();
20
+ i0.ɵɵelementStart(0, "div", 5);
21
+ i0.ɵɵelementStart(1, "button", 6);
22
+ i0.ɵɵlistener("click", function ActionbarComponent_mat_list_0_div_1_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r8); const ctx_r7 = i0.ɵɵnextContext(2); return ctx_r7.scrollUp(); });
23
+ i0.ɵɵpipe(2, "translate");
24
+ i0.ɵɵelement(3, "mat-icon", 7);
25
+ i0.ɵɵelementEnd();
26
+ i0.ɵɵelementEnd();
27
+ } if (rf & 2) {
28
+ i0.ɵɵadvance(1);
29
+ i0.ɵɵproperty("matTooltip", i0.ɵɵpipeBind1(2, 1, "igo.common.actionbar.scrollUp"));
30
+ } }
31
+ function ActionbarComponent_mat_list_0_igo_actionbar_item_2_Template(rf, ctx) { if (rf & 1) {
32
+ const _r10 = i0.ɵɵgetCurrentView();
33
+ i0.ɵɵelementStart(0, "igo-actionbar-item", 8);
34
+ i0.ɵɵlistener("trigger", function ActionbarComponent_mat_list_0_igo_actionbar_item_2_Template_igo_actionbar_item_trigger_0_listener() { i0.ɵɵrestoreView(_r10); const ctx_r9 = i0.ɵɵnextContext(2); return ctx_r9.onTriggerAction(ctx_r9.toggleCollapseAction); });
35
+ i0.ɵɵelementEnd();
36
+ } if (rf & 2) {
37
+ const ctx_r4 = i0.ɵɵnextContext(2);
38
+ i0.ɵɵproperty("withTitle", false)("withIcon", true)("color", ctx_r4.color)("disabled", ctx_r4.store.view.empty)("action", ctx_r4.toggleCollapseAction);
39
+ } }
40
+ function ActionbarComponent_mat_list_0_3_ng_template_0_Template(rf, ctx) { if (rf & 1) {
41
+ const _r15 = i0.ɵɵgetCurrentView();
42
+ i0.ɵɵelementStart(0, "igo-actionbar-item", 11);
43
+ i0.ɵɵlistener("trigger", function ActionbarComponent_mat_list_0_3_ng_template_0_Template_igo_actionbar_item_trigger_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r15); const action_r13 = restoredCtx.$implicit; const ctx_r14 = i0.ɵɵnextContext(3); return ctx_r14.onTriggerAction(action_r13); });
44
+ i0.ɵɵelementEnd();
45
+ } if (rf & 2) {
46
+ const action_r13 = ctx.$implicit;
47
+ const ctx_r12 = i0.ɵɵnextContext(3);
48
+ i0.ɵɵproperty("withTitle", ctx_r12.withTitle)("withIcon", ctx_r12.withIcon)("withTooltip", ctx_r12.withTooltip)("color", ctx_r12.color)("disabled", ctx_r12.store.state.get(action_r13).disabled)("action", action_r13);
49
+ } }
50
+ function ActionbarComponent_mat_list_0_3_Template(rf, ctx) { if (rf & 1) {
51
+ i0.ɵɵtemplate(0, ActionbarComponent_mat_list_0_3_ng_template_0_Template, 1, 6, "ng-template", 9, 10, i0.ɵɵtemplateRefExtractor);
52
+ i0.ɵɵpipe(2, "async");
53
+ } if (rf & 2) {
54
+ const ctx_r5 = i0.ɵɵnextContext(2);
55
+ i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(2, 1, ctx_r5.store.view.all$()));
56
+ } }
57
+ function ActionbarComponent_mat_list_0_div_4_Template(rf, ctx) { if (rf & 1) {
58
+ const _r17 = i0.ɵɵgetCurrentView();
59
+ i0.ɵɵelementStart(0, "div", 12);
60
+ i0.ɵɵelementStart(1, "button", 6);
61
+ i0.ɵɵlistener("click", function ActionbarComponent_mat_list_0_div_4_Template_button_click_1_listener() { i0.ɵɵrestoreView(_r17); const ctx_r16 = i0.ɵɵnextContext(2); return ctx_r16.scrollDown(); });
62
+ i0.ɵɵpipe(2, "translate");
63
+ i0.ɵɵelement(3, "mat-icon", 13);
64
+ i0.ɵɵelementEnd();
65
+ i0.ɵɵelementEnd();
66
+ } if (rf & 2) {
67
+ i0.ɵɵadvance(1);
68
+ i0.ɵɵproperty("matTooltip", i0.ɵɵpipeBind1(2, 1, "igo.common.actionbar.scrollDown"));
69
+ } }
70
+ function ActionbarComponent_mat_list_0_Template(rf, ctx) { if (rf & 1) {
71
+ i0.ɵɵelementStart(0, "mat-list");
72
+ i0.ɵɵtemplate(1, ActionbarComponent_mat_list_0_div_1_Template, 4, 3, "div", 2);
73
+ i0.ɵɵtemplate(2, ActionbarComponent_mat_list_0_igo_actionbar_item_2_Template, 1, 5, "igo-actionbar-item", 3);
74
+ i0.ɵɵtemplate(3, ActionbarComponent_mat_list_0_3_Template, 3, 3, undefined, 0);
75
+ i0.ɵɵtemplate(4, ActionbarComponent_mat_list_0_div_4_Template, 4, 3, "div", 4);
76
+ i0.ɵɵelementEnd();
77
+ } if (rf & 2) {
78
+ const ctx_r0 = i0.ɵɵnextContext();
79
+ i0.ɵɵadvance(1);
80
+ i0.ɵɵproperty("ngIf", ctx_r0.heightCondition && ctx_r0.positionConditionTop && ctx_r0.isDesktop);
81
+ i0.ɵɵadvance(1);
82
+ i0.ɵɵproperty("ngIf", ctx_r0.withToggleButton);
83
+ i0.ɵɵadvance(1);
84
+ i0.ɵɵproperty("ngIf", !ctx_r0.collapsed);
85
+ i0.ɵɵadvance(1);
86
+ i0.ɵɵproperty("ngIf", ctx_r0.heightCondition && ctx_r0.positionConditionLow && ctx_r0.isDesktop);
87
+ } }
88
+ function ActionbarComponent_div_1_ng_template_7_Template(rf, ctx) { if (rf & 1) {
89
+ const _r22 = i0.ɵɵgetCurrentView();
90
+ i0.ɵɵelementStart(0, "igo-actionbar-item", 18);
91
+ i0.ɵɵlistener("trigger", function ActionbarComponent_div_1_ng_template_7_Template_igo_actionbar_item_trigger_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r22); const action_r20 = restoredCtx.$implicit; const ctx_r21 = i0.ɵɵnextContext(2); return ctx_r21.onTriggerAction(action_r20); });
92
+ i0.ɵɵelementEnd();
93
+ } if (rf & 2) {
94
+ const action_r20 = ctx.$implicit;
95
+ const ctx_r19 = i0.ɵɵnextContext(2);
96
+ i0.ɵɵproperty("withTitle", ctx_r19.withTitle)("withIcon", ctx_r19.withIcon)("color", ctx_r19.color)("action", action_r20);
97
+ } }
98
+ function ActionbarComponent_div_1_Template(rf, ctx) { if (rf & 1) {
99
+ i0.ɵɵelementStart(0, "div");
100
+ i0.ɵɵelementStart(1, "button", 14);
101
+ i0.ɵɵpipe(2, "translate");
102
+ i0.ɵɵelement(3, "mat-icon", 15);
103
+ i0.ɵɵelementEnd();
104
+ i0.ɵɵelementStart(4, "mat-menu", 16, 17);
105
+ i0.ɵɵelementStart(6, "mat-list");
106
+ i0.ɵɵtemplate(7, ActionbarComponent_div_1_ng_template_7_Template, 1, 4, "ng-template", 9);
107
+ i0.ɵɵpipe(8, "async");
108
+ i0.ɵɵelementEnd();
109
+ i0.ɵɵelementEnd();
110
+ i0.ɵɵelementEnd();
111
+ } if (rf & 2) {
112
+ const _r18 = i0.ɵɵreference(5);
113
+ const ctx_r1 = i0.ɵɵnextContext();
114
+ i0.ɵɵadvance(1);
115
+ i0.ɵɵproperty("matTooltip", i0.ɵɵpipeBind1(2, 10, "igo.common.actionbar.icon"))("matMenuTriggerFor", _r18)("disabled", ctx_r1.store.view.empty)("color", ctx_r1.iconColor);
116
+ i0.ɵɵadvance(2);
117
+ i0.ɵɵproperty("svgIcon", ctx_r1.icon);
118
+ i0.ɵɵadvance(1);
119
+ i0.ɵɵclassMap(ctx_r1.overlayClass);
120
+ i0.ɵɵproperty("xPosition", ctx_r1.xPosition)("yPosition", ctx_r1.yPosition);
121
+ i0.ɵɵadvance(3);
122
+ i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(8, 12, ctx_r1.store.view.all$()));
123
+ } }
124
+ function ActionbarComponent_mat_card_2_ng_template_2_Template(rf, ctx) { if (rf & 1) {
125
+ const _r26 = i0.ɵɵgetCurrentView();
126
+ i0.ɵɵelementStart(0, "igo-actionbar-item", 18);
127
+ i0.ɵɵlistener("trigger", function ActionbarComponent_mat_card_2_ng_template_2_Template_igo_actionbar_item_trigger_0_listener() { const restoredCtx = i0.ɵɵrestoreView(_r26); const action_r24 = restoredCtx.$implicit; const ctx_r25 = i0.ɵɵnextContext(2); return ctx_r25.onTriggerAction(action_r24); });
128
+ i0.ɵɵelementEnd();
129
+ i0.ɵɵelement(1, "br");
130
+ } if (rf & 2) {
131
+ const action_r24 = ctx.$implicit;
132
+ const ctx_r23 = i0.ɵɵnextContext(2);
133
+ i0.ɵɵproperty("withTitle", ctx_r23.withTitle)("withIcon", ctx_r23.withIcon)("color", ctx_r23.color)("action", action_r24);
134
+ } }
135
+ function ActionbarComponent_mat_card_2_Template(rf, ctx) { if (rf & 1) {
136
+ i0.ɵɵelementStart(0, "mat-card", 19);
137
+ i0.ɵɵelementStart(1, "mat-list");
138
+ i0.ɵɵtemplate(2, ActionbarComponent_mat_card_2_ng_template_2_Template, 2, 4, "ng-template", 9);
139
+ i0.ɵɵpipe(3, "async");
140
+ i0.ɵɵelementEnd();
141
+ i0.ɵɵelementEnd();
142
+ } if (rf & 2) {
143
+ const ctx_r2 = i0.ɵɵnextContext();
144
+ i0.ɵɵadvance(2);
145
+ i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(3, 1, ctx_r2.store.view.all$()));
146
+ } }
147
+ /**
148
+ * A list of action buttons.
149
+ * This component can be displayed in one of two way: 'dock' or 'overlay'
150
+ */
151
+ export class ActionbarComponent {
152
+ constructor(overlay, elRef, cdRef, mediaService) {
153
+ this.overlay = overlay;
154
+ this.elRef = elRef;
155
+ this.cdRef = cdRef;
156
+ this.mediaService = mediaService;
157
+ /**
158
+ * Reference to the ActionbarMode enum for use in the template
159
+ * @internal
160
+ */
161
+ this.actionbarMode = ActionbarMode;
162
+ /**
163
+ * Whether the actionbar is collapsed (Dock mode)
164
+ * @internal
165
+ */
166
+ this.collapsed = false;
167
+ /**
168
+ * Toggle collapse action (Dock)
169
+ * @internal
170
+ */
171
+ this.toggleCollapseAction = {
172
+ id: 'actionbar_toggle',
173
+ icon: 'dots-vertical',
174
+ handler: () => {
175
+ this.collapsed = !this.collapsed;
176
+ }
177
+ };
178
+ /**
179
+ * Height Condition for scroll button
180
+ */
181
+ this.heightCondition$ = new BehaviorSubject(false);
182
+ /**
183
+ * Position Condition for top scroll button
184
+ */
185
+ this.positionConditionTop$ = new BehaviorSubject(true);
186
+ /**
187
+ * Position Condition for low scroll button
188
+ */
189
+ this.positionConditionLow$ = new BehaviorSubject(true);
190
+ /**
191
+ * Actionbar mode
192
+ */
193
+ this.mode = ActionbarMode.Dock;
194
+ /**
195
+ * Whether a toggle button should be displayed (Dock mode)
196
+ */
197
+ this.withToggleButton = false;
198
+ /**
199
+ * Whether a the actionbar should display buttons horizontally
200
+ */
201
+ this.horizontal = false;
202
+ /**
203
+ * Color
204
+ */
205
+ this.color = 'default';
206
+ /**
207
+ * Color of the button if action mode === overlay
208
+ */
209
+ this.iconColor = 'default';
210
+ /**
211
+ * Whether action titles are displayed
212
+ */
213
+ this.withTitle = true;
214
+ /**
215
+ * Whether action tooltips are displayed
216
+ */
217
+ this.withTooltip = true;
218
+ /**
219
+ * Whether action titles are displayed (condition for scroll button)
220
+ */
221
+ this.scrollActive = true;
222
+ /**
223
+ * Whether action icons are displayed
224
+ */
225
+ this.withIcon = true;
226
+ /**
227
+ * Which icon want to be shown
228
+ */
229
+ this.icon = 'dots-horizontal';
230
+ /**
231
+ * Overlay X position
232
+ */
233
+ this.xPosition = 'before';
234
+ /**
235
+ * Overlay Y position
236
+ */
237
+ this.yPosition = 'above';
238
+ this._overlayClass = '';
239
+ }
240
+ /**
241
+ * Class to add to the actionbar overlay
242
+ */
243
+ set overlayClass(value) {
244
+ this._overlayClass = value;
245
+ }
246
+ get overlayClass() {
247
+ return [this._overlayClass, 'igo-actionbar-overlay'].join(' ');
248
+ }
249
+ /**
250
+ * @ignore
251
+ */
252
+ get withTitleClass() {
253
+ return this.withTitle;
254
+ }
255
+ /**
256
+ * @ignore
257
+ */
258
+ get withIconClass() {
259
+ return this.withIcon;
260
+ }
261
+ /**
262
+ * @ignore
263
+ */
264
+ get horizontalClass() {
265
+ return this.horizontal;
266
+ }
267
+ get heightCondition() {
268
+ const el = this.elRef.nativeElement;
269
+ if (this.scrollActive === false) {
270
+ if (el.clientHeight < el.scrollHeight) {
271
+ return true;
272
+ }
273
+ }
274
+ return false;
275
+ }
276
+ get positionConditionTop() {
277
+ if (this.elRef.nativeElement.scrollTop === 0) {
278
+ return false;
279
+ }
280
+ return true;
281
+ }
282
+ get positionConditionLow() {
283
+ const el = this.elRef.nativeElement;
284
+ if (el.scrollTop >= (el.scrollHeight - el.clientHeight)) {
285
+ return false;
286
+ }
287
+ return true;
288
+ }
289
+ get isDesktop() {
290
+ return this.mediaService.getMedia() === Media.Desktop;
291
+ }
292
+ /**
293
+ * @internal
294
+ */
295
+ ngOnChanges(changes) {
296
+ const store = changes.store;
297
+ if (store && store.currentValue !== store.previousValue) {
298
+ if (this.watcher !== undefined) {
299
+ this.watcher.destroy();
300
+ }
301
+ this.watcher = new EntityStoreWatcher(this.store, this.cdRef);
302
+ }
303
+ }
304
+ /**
305
+ * @internal
306
+ */
307
+ ngOnDestroy() {
308
+ this.watcher.destroy();
309
+ }
310
+ /**
311
+ * Invoke the action handler
312
+ * @internal
313
+ */
314
+ onTriggerAction(action) {
315
+ const args = action.args || [];
316
+ action.handler(...args);
317
+ }
318
+ scrollDown() {
319
+ this.elRef.nativeElement.scrollBy(0, 52);
320
+ }
321
+ scrollUp() {
322
+ this.elRef.nativeElement.scrollBy(0, -52);
323
+ }
324
+ }
325
+ ActionbarComponent.ɵfac = function ActionbarComponent_Factory(t) { return new (t || ActionbarComponent)(i0.ɵɵdirectiveInject(i1.Overlay), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i2.MediaService)); };
326
+ ActionbarComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ActionbarComponent, selectors: [["igo-actionbar"]], hostVars: 6, hostBindings: function ActionbarComponent_HostBindings(rf, ctx) { if (rf & 2) {
327
+ i0.ɵɵclassProp("with-title", ctx.withTitleClass)("with-icon", ctx.withIconClass)("horizontal", ctx.horizontalClass);
328
+ } }, inputs: { store: "store", mode: "mode", withToggleButton: "withToggleButton", horizontal: "horizontal", color: "color", iconColor: "iconColor", withTitle: "withTitle", withTooltip: "withTooltip", scrollActive: "scrollActive", withIcon: "withIcon", icon: "icon", xPosition: "xPosition", yPosition: "yPosition", overlayClass: "overlayClass" }, features: [i0.ɵɵNgOnChangesFeature], decls: 3, vars: 3, consts: [[4, "ngIf"], ["class", "context-menu-card mat-elevation-z4", 4, "ngIf"], ["id", "topChevron", 4, "ngIf"], ["color", "accent", 3, "withTitle", "withIcon", "color", "disabled", "action", "trigger", 4, "ngIf"], ["id", "lowChevron", 4, "ngIf"], ["id", "topChevron"], ["mat-icon-button", "", "tooltip-position", "below", "matTooltipShowDelay", "500", 3, "matTooltip", "click"], ["svgIcon", "chevron-up"], ["color", "accent", 3, "withTitle", "withIcon", "color", "disabled", "action", "trigger"], ["ngFor", "", 3, "ngForOf"], ["buttonContent", ""], ["color", "accent", 3, "withTitle", "withIcon", "withTooltip", "color", "disabled", "action", "trigger"], ["id", "lowChevron"], ["svgIcon", "chevron-down"], ["mat-icon-button", "", "tooltip-position", "below", "matTooltipShowDelay", "500", 1, "buttonOverlay", 3, "matTooltip", "matMenuTriggerFor", "disabled", "color"], [3, "svgIcon"], ["overlapTrigger", "true", 1, "igo-compact-menu", "igo-no-min-width-menu", 3, "xPosition", "yPosition"], ["actionbarMenu", "matMenu"], ["color", "accent", 3, "withTitle", "withIcon", "color", "action", "trigger"], [1, "context-menu-card", "mat-elevation-z4"]], template: function ActionbarComponent_Template(rf, ctx) { if (rf & 1) {
329
+ i0.ɵɵtemplate(0, ActionbarComponent_mat_list_0_Template, 5, 4, "mat-list", 0);
330
+ i0.ɵɵtemplate(1, ActionbarComponent_div_1_Template, 9, 14, "div", 0);
331
+ i0.ɵɵtemplate(2, ActionbarComponent_mat_card_2_Template, 4, 3, "mat-card", 1);
332
+ } if (rf & 2) {
333
+ i0.ɵɵproperty("ngIf", ctx.mode === ctx.actionbarMode.Dock);
334
+ i0.ɵɵadvance(1);
335
+ i0.ɵɵproperty("ngIf", ctx.mode === ctx.actionbarMode.Overlay);
336
+ i0.ɵɵadvance(1);
337
+ i0.ɵɵproperty("ngIf", ctx.mode === ctx.actionbarMode.Context);
338
+ } }, directives: [i3.NgIf, i4.MatList, i5.MatButton, i6.MatTooltip, i7.MatIcon, i8.ActionbarItemComponent, i3.NgForOf, i9.MatMenuTrigger, i9.MatMenu, i10.MatCard], pipes: [i11.TranslatePipe, i3.AsyncPipe], styles: ["[_nghost-%COMP%]{display:block;height:100%;overflow:auto;position:relative}button[_ngcontent-%COMP%]{margin:4px}.buttonOverlay[_ngcontent-%COMP%]{margin:0}mat-list[_ngcontent-%COMP%]{padding-top:0}.horizontal[_nghost-%COMP%]{max-width:100%;overflow:unset}.horizontal[_nghost-%COMP%] mat-list[_ngcontent-%COMP%]{width:auto;white-space:nowrap}.horizontal[_nghost-%COMP%] igo-actionbar-item[_ngcontent-%COMP%]{display:inline-block}[_nghost-%COMP%] .mat-list .mat-list-item .mat-list-text>*{white-space:normal;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;max-height:36px;line-height:18px;-webkit-box-orient:vertical;-webkit-line-clamp:2}[_nghost-%COMP%] .mat-list-base .mat-list-item.mat-list-item-with-avatar{height:46px}[_nghost-%COMP%] .mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content{display:-webkit-flex;height:46px;padding:3px}[_nghost-%COMP%] .mat-list-base .mat-list-item.mat-list-item-with-avatar .mat-list-item-content>mat-icon{padding:8px}igo-actionbar-item[_ngcontent-%COMP%] mat-list-item [mat-list-avatar]{height:auto;width:40px}igo-actionbar-item[_ngcontent-%COMP%] mat-list-item:hover{cursor:pointer}.context-menu-card[_ngcontent-%COMP%]{padding:8px 3px;margin:10px}#topChevron[_ngcontent-%COMP%]{position:sticky;top:0;background-color:#fff;z-index:3}@media all and (-ms-high-contrast: none),(-ms-high-contrast: active){#topChevron[_ngcontent-%COMP%]{position:fixed;top:unset}}@supports (-ms-accelerator: true){#topChevron[_ngcontent-%COMP%]{position:fixed;top:unset}}#lowChevron[_ngcontent-%COMP%]{position:fixed;position:sticky;bottom:0;background-color:#fff;z-index:3}"], changeDetection: 0 });
339
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ActionbarComponent, [{
340
+ type: Component,
341
+ args: [{
342
+ selector: 'igo-actionbar',
343
+ templateUrl: './actionbar.component.html',
344
+ styleUrls: ['./actionbar.component.scss'],
345
+ changeDetection: ChangeDetectionStrategy.OnPush
346
+ }]
347
+ }], function () { return [{ type: i1.Overlay }, { type: i0.ElementRef }, { type: i0.ChangeDetectorRef }, { type: i2.MediaService }]; }, { store: [{
348
+ type: Input
349
+ }], mode: [{
350
+ type: Input
351
+ }], withToggleButton: [{
352
+ type: Input
353
+ }], horizontal: [{
354
+ type: Input
355
+ }], color: [{
356
+ type: Input
357
+ }], iconColor: [{
358
+ type: Input
359
+ }], withTitle: [{
360
+ type: Input
361
+ }], withTooltip: [{
362
+ type: Input
363
+ }], scrollActive: [{
364
+ type: Input
365
+ }], withIcon: [{
366
+ type: Input
367
+ }], icon: [{
368
+ type: Input
369
+ }], xPosition: [{
370
+ type: Input
371
+ }], yPosition: [{
372
+ type: Input
373
+ }], overlayClass: [{
374
+ type: Input
375
+ }], withTitleClass: [{
376
+ type: HostBinding,
377
+ args: ['class.with-title']
378
+ }], withIconClass: [{
379
+ type: HostBinding,
380
+ args: ['class.with-icon']
381
+ }], horizontalClass: [{
382
+ type: HostBinding,
383
+ args: ['class.horizontal']
384
+ }] }); })();
385
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvbGliL2FjdGlvbi9hY3Rpb25iYXIvYWN0aW9uYmFyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvbGliL2FjdGlvbi9hY3Rpb25iYXIvYWN0aW9uYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLFdBQVcsRUFFWCx1QkFBdUIsRUFLeEIsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxFQUFnQixLQUFLLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDakQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBRWxELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUd2RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7Ozs7Ozs7Ozs7Ozs7SUNoQm5DLDhCQUNrQjtJQUNoQixpQ0FLdUI7SUFBckIsZ01BQW9COztJQUNwQiw4QkFBMEM7SUFDNUMsaUJBQVM7SUFDWCxpQkFBTTs7SUFKRixlQUEwRDtJQUExRCxrRkFBMEQ7Ozs7SUFNOUQsNkNBUW9EO0lBQWxELGtRQUFpRDtJQUNuRCxpQkFBcUI7OztJQU5uQixpQ0FBbUIsa0JBQUEsdUJBQUEscUNBQUEsdUNBQUE7Ozs7SUFTbkIsOENBUXNDO0lBQXBDLDRTQUFtQztJQUNyQyxpQkFBcUI7Ozs7SUFQbkIsNkNBQXVCLDhCQUFBLG9DQUFBLHdCQUFBLDBEQUFBLHNCQUFBOzs7SUFIM0IsK0hBV2M7Ozs7SUFYa0Qsd0VBQXFDOzs7O0lBYXJHLCtCQUNrQjtJQUNoQixpQ0FLeUI7SUFBdkIscU1BQXNCOztJQUN0QiwrQkFBNEM7SUFDOUMsaUJBQVM7SUFDWCxpQkFB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QzVDLENBQUM7O29GQTFOVSxrQkFBa0I7cUVBQWxCLGtCQUFrQjs7O1FDOUIvQiw2RUFrRFc7UUFFWCxvRUFpQ007UUFDTiw2RUFjVzs7UUFwR0EsMERBQWlDO1FBb0R0QyxlQUFvQztRQUFwQyw2REFBb0M7UUFrQy9CLGVBQW9DO1FBQXBDLDZEQUFvQzs7dUZEeERsQyxrQkFBa0I7Y0FOOUIsU0FBUztlQUFDO2dCQUNULFFBQVEsRUFBRSxlQUFlO2dCQUN6QixXQUFXLEVBQUUsNEJBQTRCO2dCQUN6QyxTQUFTLEVBQUUsQ0FBQyw0QkFBNEIsQ0FBQztnQkFDekMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07YUFDaEQ7OElBbURVLEtBQUs7a0JBQWIsS0FBSztZQUtHLElBQUk7a0JBQVosS0FBSztZQUtHLGdCQUFnQjtrQkFBeEIsS0FBSztZQUtHLFVBQVU7a0JBQWxCLEtBQUs7WUFLRyxLQUFLO2tCQUFiLEtBQUs7WUFLRyxTQUFTO2tCQUFqQixLQUFLO1lBS0csU0FBUztrQkFBakIsS0FBSztZQUtHLFdBQVc7a0JBQW5CLEtBQUs7WUFLRyxZQUFZO2tCQUFwQixLQUFLO1lBS0csUUFBUTtrQkFBaEIsS0FBSztZQUtHLElBQUk7a0JBQVosS0FBSztZQUtHLFNBQVM7a0JBQWpCLEtBQUs7WUFLRyxTQUFTO2tCQUFqQixLQUFLO1lBTUYsWUFBWTtrQkFEZixLQUFLO1lBYUYsY0FBYztrQkFEakIsV0FBVzttQkFBQyxrQkFBa0I7WUFTM0IsYUFBYTtrQkFEaEIsV0FBVzttQkFBQyxpQkFBaUI7WUFTMUIsZUFBZTtrQkFEbEIsV0FBVzttQkFBQyxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBJbnB1dCxcclxuICBIb3N0QmluZGluZyxcclxuICBDaGFuZ2VEZXRlY3RvclJlZixcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBPbkNoYW5nZXMsXHJcbiAgT25EZXN0cm95LFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbiAgRWxlbWVudFJlZlxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgTWVkaWFTZXJ2aWNlLCBNZWRpYSB9IGZyb20gJ0BpZ28yL2NvcmUnO1xyXG5pbXBvcnQgeyBFbnRpdHlTdG9yZVdhdGNoZXIgfSBmcm9tICcuLi8uLi9lbnRpdHknO1xyXG5pbXBvcnQgeyBBY3Rpb24gfSBmcm9tICcuLi9zaGFyZWQvYWN0aW9uLmludGVyZmFjZXMnO1xyXG5pbXBvcnQgeyBBY3Rpb25iYXJNb2RlIH0gZnJvbSAnLi4vc2hhcmVkL2FjdGlvbi5lbnVtcyc7XHJcbmltcG9ydCB7IEFjdGlvblN0b3JlIH0gZnJvbSAnLi4vc2hhcmVkL3N0b3JlJztcclxuaW1wb3J0IHsgT3ZlcmxheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcyc7XHJcblxyXG4vKipcclxuICogQSBsaXN0IG9mIGFjdGlvbiBidXR0b25zLlxyXG4gKiBUaGlzIGNvbXBvbmVudCBjYW4gYmUgZGlzcGxheWVkIGluIG9uZSBvZiB0d28gd2F5OiAnZG9jaycgb3IgJ292ZXJsYXknXHJcbiAqL1xyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2lnby1hY3Rpb25iYXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9hY3Rpb25iYXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2FjdGlvbmJhci5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBBY3Rpb25iYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkRlc3Ryb3ksIE9uQ2hhbmdlcyB7XHJcblxyXG4gIC8qKlxyXG4gICAqIFJlZmVyZW5jZSB0byB0aGUgQWN0aW9uYmFyTW9kZSBlbnVtIGZvciB1c2UgaW4gdGhlIHRlbXBsYXRlXHJcbiAgICogQGludGVybmFsXHJcbiAgICovXHJcbiAgYWN0aW9uYmFyTW9kZSA9IEFjdGlvbmJhck1vZGU7XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZXRoZXIgdGhlIGFjdGlvbmJhciBpcyBjb2xsYXBzZWQgKERvY2sgbW9kZSlcclxuICAgKiBAaW50ZXJuYWxcclxuICAgKi9cclxuICBjb2xsYXBzZWQgPSBmYWxzZTtcclxuXHJcbiAgLyoqXHJcbiAgICogVG9nZ2xlIGNvbGxhcHNlIGFjdGlvbiAoRG9jaylcclxuICAgKiBAaW50ZXJuYWxcclxuICAgKi9cclxuICB0b2dnbGVDb2xsYXBzZUFjdGlvbiA9IHtcclxuICAgIGlkOiAnYWN0aW9uYmFyX3RvZ2dsZScsXHJcbiAgICBpY29uOiAnZG90cy12ZXJ0aWNhbCcsXHJcbiAgICBoYW5kbGVyOiAoKSA9PiB7XHJcbiAgICAgIHRoaXMuY29sbGFwc2VkID0gIXRoaXMuY29sbGFwc2VkO1xyXG4gICAgfVxyXG4gIH07XHJcblxyXG4gIC8qKlxyXG4gICAqIEFjdGlvbiBzdG9yZSB3YXRjaGVyXHJcbiAgICogQGludGVybmFsXHJcbiAgICovXHJcbiAgcHJpdmF0ZSB3YXRjaGVyOiBFbnRpdHlTdG9yZVdhdGNoZXI8QWN0aW9uPjtcclxuXHJcbiAgLyoqXHJcbiAgICogSGVpZ2h0IENvbmRpdGlvbiBmb3Igc2Nyb2xsIGJ1dHRvblxyXG4gICAqL1xyXG4gIGhlaWdodENvbmRpdGlvbiQ6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPiA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xyXG5cclxuICAvKipcclxuICAgKiBQb3NpdGlvbiBDb25kaXRpb24gZm9yIHRvcCBzY3JvbGwgYnV0dG9uXHJcbiAgICovXHJcbiAgcG9zaXRpb25Db25kaXRpb25Ub3AkOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHRydWUpO1xyXG5cclxuICAvKipcclxuICAgKiBQb3NpdGlvbiBDb25kaXRpb24gZm9yIGxvdyBzY3JvbGwgYnV0dG9uXHJcbiAgICovXHJcbiAgcG9zaXRpb25Db25kaXRpb25Mb3ckOiBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KHRydWUpO1xyXG5cclxuICAvKipcclxuICAgKiBBY3Rpb24gc3RvcmVcclxuICAgKi9cclxuICBASW5wdXQoKSBzdG9yZTogQWN0aW9uU3RvcmU7XHJcblxyXG4gIC8qKlxyXG4gICAqIEFjdGlvbmJhciBtb2RlXHJcbiAgICovXHJcbiAgQElucHV0KCkgbW9kZTogQWN0aW9uYmFyTW9kZSA9IEFjdGlvbmJhck1vZGUuRG9jaztcclxuXHJcbiAgLyoqXHJcbiAgICogV2hldGhlciBhIHRvZ2dsZSBidXR0b24gc2hvdWxkIGJlIGRpc3BsYXllZCAoRG9jayBtb2RlKVxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHdpdGhUb2dnbGVCdXR0b24gPSBmYWxzZTtcclxuXHJcbiAgLyoqXHJcbiAgICogV2hldGhlciBhIHRoZSBhY3Rpb25iYXIgc2hvdWxkIGRpc3BsYXkgYnV0dG9ucyBob3Jpem9udGFsbHlcclxuICAgKi9cclxuICBASW5wdXQoKSBob3Jpem9udGFsID0gZmFsc2U7XHJcblxyXG4gIC8qKlxyXG4gICAqIENvbG9yXHJcbiAgICovXHJcbiAgQElucHV0KCkgY29sb3IgPSAnZGVmYXVsdCc7XHJcblxyXG4gIC8qKlxyXG4gICAqIENvbG9yIG9mIHRoZSBidXR0b24gaWYgYWN0aW9uIG1vZGUgPT09IG92ZXJsYXlcclxuICAgKi9cclxuICBASW5wdXQoKSBpY29uQ29sb3IgPSAnZGVmYXVsdCc7XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZXRoZXIgYWN0aW9uIHRpdGxlcyBhcmUgZGlzcGxheWVkXHJcbiAgICovXHJcbiAgQElucHV0KCkgd2l0aFRpdGxlID0gdHJ1ZTtcclxuXHJcbiAgLyoqXHJcbiAgICogV2hldGhlciBhY3Rpb24gdG9vbHRpcHMgYXJlIGRpc3BsYXllZFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHdpdGhUb29sdGlwID0gdHJ1ZTtcclxuXHJcbiAgLyoqXHJcbiAgICogV2hldGhlciBhY3Rpb24gdGl0bGVzIGFyZSBkaXNwbGF5ZWQgKGNvbmRpdGlvbiBmb3Igc2Nyb2xsIGJ1dHRvbilcclxuICAgKi9cclxuICBASW5wdXQoKSBzY3JvbGxBY3RpdmUgPSB0cnVlO1xyXG5cclxuICAvKipcclxuICAgKiBXaGV0aGVyIGFjdGlvbiBpY29ucyBhcmUgZGlzcGxheWVkXHJcbiAgICovXHJcbiAgQElucHV0KCkgd2l0aEljb24gPSB0cnVlO1xyXG5cclxuICAvKipcclxuICAgKiBXaGljaCBpY29uIHdhbnQgdG8gYmUgc2hvd25cclxuICAgKi9cclxuICBASW5wdXQoKSBpY29uID0gJ2RvdHMtaG9yaXpvbnRhbCc7XHJcblxyXG4gIC8qKlxyXG4gICAqIE92ZXJsYXkgWCBwb3NpdGlvblxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHhQb3NpdGlvbiA9ICdiZWZvcmUnO1xyXG5cclxuICAvKipcclxuICAgKiBPdmVybGF5IFkgcG9zaXRpb25cclxuICAgKi9cclxuICBASW5wdXQoKSB5UG9zaXRpb24gPSAnYWJvdmUnO1xyXG5cclxuICAvKipcclxuICAgKiBDbGFzcyB0byBhZGQgdG8gdGhlIGFjdGlvbmJhciBvdmVybGF5XHJcbiAgICovXHJcbiAgQElucHV0KClcclxuICBzZXQgb3ZlcmxheUNsYXNzKHZhbHVlOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuX292ZXJsYXlDbGFzcyA9IHZhbHVlO1xyXG4gIH1cclxuICBnZXQgb3ZlcmxheUNsYXNzKCk6IHN0cmluZyB7XHJcbiAgICByZXR1cm4gW3RoaXMuX292ZXJsYXlDbGFzcywgJ2lnby1hY3Rpb25iYXItb3ZlcmxheSddLmpvaW4oJyAnKTtcclxuICB9XHJcbiAgcHJpdmF0ZSBfb3ZlcmxheUNsYXNzID0gJyc7XHJcblxyXG4gIC8qKlxyXG4gICAqIEBpZ25vcmVcclxuICAgKi9cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLndpdGgtdGl0bGUnKVxyXG4gIGdldCB3aXRoVGl0bGVDbGFzcygpIHtcclxuICAgIHJldHVybiB0aGlzLndpdGhUaXRsZTtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEBpZ25vcmVcclxuICAgKi9cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLndpdGgtaWNvbicpXHJcbiAgZ2V0IHdpdGhJY29uQ2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdGhpcy53aXRoSWNvbjtcclxuICB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEBpZ25vcmVcclxuICAgKi9cclxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmhvcml6b250YWwnKVxyXG4gIGdldCBob3Jpem9udGFsQ2xhc3MoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5ob3Jpem9udGFsO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGhlaWdodENvbmRpdGlvbigpOiBib29sZWFuIHtcclxuICAgIGNvbnN0IGVsID0gdGhpcy5lbFJlZi5uYXRpdmVFbGVtZW50O1xyXG4gICAgaWYgKHRoaXMuc2Nyb2xsQWN0aXZlID09PSBmYWxzZSkge1xyXG4gICAgICBpZiAoZWwuY2xpZW50SGVpZ2h0IDwgZWwuc2Nyb2xsSGVpZ2h0KSB7XHJcbiAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBmYWxzZTtcclxuICB9XHJcblxyXG4gIGdldCBwb3NpdGlvbkNvbmRpdGlvblRvcCgpOiBib29sZWFuIHtcclxuICAgIGlmICh0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsVG9wID09PSAwKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgZ2V0IHBvc2l0aW9uQ29uZGl0aW9uTG93KCk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3QgZWwgPSB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICBpZiAoZWwuc2Nyb2xsVG9wID49IChlbC5zY3JvbGxIZWlnaHQgLSBlbC5jbGllbnRIZWlnaHQpKSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICAgIHJldHVybiB0cnVlO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGlzRGVza3RvcCgpOiBib29sZWFuIHtcclxuICAgIHJldHVybiB0aGlzLm1lZGlhU2VydmljZS5nZXRNZWRpYSgpID09PSBNZWRpYS5EZXNrdG9wO1xyXG4gIH1cclxuXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwdWJsaWMgb3ZlcmxheTogT3ZlcmxheSxcclxuICAgIHByaXZhdGUgZWxSZWY6IEVsZW1lbnRSZWYsXHJcbiAgICBwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZixcclxuICAgIHB1YmxpYyBtZWRpYVNlcnZpY2U6IE1lZGlhU2VydmljZSkge31cclxuXHJcbiAgLyoqXHJcbiAgICogQGludGVybmFsXHJcbiAgICovXHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xyXG4gICAgY29uc3Qgc3RvcmUgPSBjaGFuZ2VzLnN0b3JlO1xyXG4gICAgaWYgKHN0b3JlICYmIHN0b3JlLmN1cnJlbnRWYWx1ZSAhPT0gc3RvcmUucHJldmlvdXNWYWx1ZSkge1xyXG4gICAgICBpZiAodGhpcy53YXRjaGVyICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgICB0aGlzLndhdGNoZXIuZGVzdHJveSgpO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMud2F0Y2hlciA9IG5ldyBFbnRpdHlTdG9yZVdhdGNoZXIodGhpcy5zdG9yZSwgdGhpcy5jZFJlZik7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBAaW50ZXJuYWxcclxuICAgKi9cclxuICBuZ09uRGVzdHJveSgpIHtcclxuICAgIHRoaXMud2F0Y2hlci5kZXN0cm95KCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBJbnZva2UgdGhlIGFjdGlvbiBoYW5kbGVyXHJcbiAgICogQGludGVybmFsXHJcbiAgICovXHJcbiAgb25UcmlnZ2VyQWN0aW9uKGFjdGlvbjogQWN0aW9uKSB7XHJcbiAgICBjb25zdCBhcmdzID0gYWN0aW9uLmFyZ3MgfHwgW107XHJcbiAgICBhY3Rpb24uaGFuZGxlciguLi5hcmdzKTtcclxuICB9XHJcblxyXG4gIHNjcm9sbERvd24oKSB7XHJcbiAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsQnkoMCwgNTIpO1xyXG4gIH1cclxuXHJcbiAgc2Nyb2xsVXAoKSB7XHJcbiAgICB0aGlzLmVsUmVmLm5hdGl2ZUVsZW1lbnQuc2Nyb2xsQnkoMCwgLTUyKTtcclxuICB9XHJcblxyXG59XHJcbiIsIjxtYXQtbGlzdCAqbmdJZj1cIm1vZGUgPT09IGFjdGlvbmJhck1vZGUuRG9ja1wiPlxyXG5cclxuICAgIDxkaXYgKm5nSWY9XCJoZWlnaHRDb25kaXRpb24gJiYgcG9zaXRpb25Db25kaXRpb25Ub3AgJiYgaXNEZXNrdG9wXCJcclxuICAgICAgaWQ9XCJ0b3BDaGV2cm9uXCI+XHJcbiAgICAgIDxidXR0b25cclxuICAgICAgICBtYXQtaWNvbi1idXR0b25cclxuICAgICAgICB0b29sdGlwLXBvc2l0aW9uPVwiYmVsb3dcIlxyXG4gICAgICAgIG1hdFRvb2x0aXBTaG93RGVsYXk9XCI1MDBcIlxyXG4gICAgICAgIFttYXRUb29sdGlwXT1cIidpZ28uY29tbW9uLmFjdGlvbmJhci5zY3JvbGxVcCcgfCB0cmFuc2xhdGVcIlxyXG4gICAgICAgIChjbGljayk9XCJzY3JvbGxVcCgpXCI+XHJcbiAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJjaGV2cm9uLXVwXCI+PC9tYXQtaWNvbj5cclxuICAgICAgPC9idXR0b24+XHJcbiAgICA8L2Rpdj5cclxuXHJcbiAgICA8aWdvLWFjdGlvbmJhci1pdGVtXHJcbiAgICAgICpuZ0lmPVwid2l0aFRvZ2dsZUJ1dHRvblwiXHJcbiAgICAgIGNvbG9yPVwiYWNjZW50XCJcclxuICAgICAgW3dpdGhUaXRsZV09XCJmYWxzZVwiXHJcbiAgICAgIFt3aXRoSWNvbl09XCJ0cnVlXCJcclxuICAgICAgW2NvbG9yXT1cImNvbG9yXCJcclxuICAgICAgW2Rpc2FibGVkXT1cInN0b3JlLnZpZXcuZW1wdHlcIlxyXG4gICAgICBbYWN0aW9uXT1cInRvZ2dsZUNvbGxhcHNlQWN0aW9uXCJcclxuICAgICAgKHRyaWdnZXIpPVwib25UcmlnZ2VyQWN0aW9uKHRvZ2dsZUNvbGxhcHNlQWN0aW9uKVwiPlxyXG4gICAgPC9pZ28tYWN0aW9uYmFyLWl0ZW0+XHJcblxyXG4gICAgPG5nLXRlbXBsYXRlICNidXR0b25Db250ZW50ICpuZ0lmPVwiIWNvbGxhcHNlZFwiIG5nRm9yIGxldC1hY3Rpb24gW25nRm9yT2ZdPVwic3RvcmUudmlldy5hbGwkKCkgfCBhc3luY1wiPlxyXG4gICAgICA8aWdvLWFjdGlvbmJhci1pdGVtXHJcbiAgICAgICAgY29sb3I9XCJhY2NlbnRcIlxyXG4gICAgICAgIFt3aXRoVGl0bGVdPVwid2l0aFRpdGxlXCJcclxuICAgICAgICBbd2l0aEljb25dPVwid2l0aEljb25cIlxyXG4gICAgICAgIFt3aXRoVG9vbHRpcF09XCJ3aXRoVG9vbHRpcFwiXHJcbiAgICAgICAgW2NvbG9yXT1cImNvbG9yXCJcclxuICAgICAgICBbZGlzYWJsZWRdPVwic3RvcmUuc3RhdGUuZ2V0KGFjdGlvbikuZGlzYWJsZWRcIlxyXG4gICAgICAgIFthY3Rpb25dPVwiYWN0aW9uXCJcclxuICAgICAgICAodHJpZ2dlcik9XCJvblRyaWdnZXJBY3Rpb24oYWN0aW9uKVwiPlxyXG4gICAgICA8L2lnby1hY3Rpb25iYXItaXRlbT5cclxuICAgIDwvbmctdGVtcGxhdGU+XHJcblxyXG4gICAgPGRpdiAqbmdJZj1cImhlaWdodENvbmRpdGlvbiAmJiBwb3NpdGlvbkNvbmRpdGlvbkxvdyAmJiBpc0Rlc2t0b3BcIlxyXG4gICAgICBpZD1cImxvd0NoZXZyb25cIj5cclxuICAgICAgPGJ1dHRvblxyXG4gICAgICAgIG1hdC1pY29uLWJ1dHRvblxyXG4gICAgICAgIHRvb2x0aXAtcG9zaXRpb249XCJiZWxvd1wiXHJcbiAgICAgICAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXHJcbiAgICAgICAgW21hdFRvb2x0aXBdPVwiJ2lnby5jb21tb24uYWN0aW9uYmFyLnNjcm9sbERvd24nIHwgdHJhbnNsYXRlXCJcclxuICAgICAgICAoY2xpY2spPVwic2Nyb2xsRG93bigpXCI+XHJcbiAgICAgICAgPG1hdC1pY29uIHN2Z0ljb249XCJjaGV2cm9uLWRvd25cIj48L21hdC1pY29uPlxyXG4gICAgICA8L2J1dHRvbj5cclxuICAgIDwvZGl2PlxyXG5cclxuPC9tYXQtbGlzdD5cclxuXHJcbjxkaXYgKm5nSWY9XCJtb2RlID09PSBhY3Rpb25iYXJNb2RlLk92ZXJsYXlcIj5cclxuICA8YnV0dG9uIGNsYXNzPVwiYnV0dG9uT3ZlcmxheVwiXHJcbiAgICBtYXQtaWNvbi1idXR0b25cclxuICAgIHRvb2x0aXAtcG9zaXRpb249XCJiZWxvd1wiXHJcbiAgICBtYXRUb29sdGlwU2hvd0RlbGF5PVwiNTAwXCJcclxuICAgIFttYXRUb29sdGlwXT1cIidpZ28uY29tbW9uLmFjdGlvbmJhci5pY29uJyB8IHRyYW5zbGF0ZVwiXHJcbiAgICBbbWF0TWVudVRyaWdnZXJGb3JdPVwiYWN0aW9uYmFyTWVudVwiXHJcbiAgICBbZGlzYWJsZWRdPVwic3RvcmUudmlldy5lbXB0eVwiXHJcbiAgICBbY29sb3JdPVwiaWNvbkNvbG9yXCI+XHJcbiAgICA8bWF0LWljb24gW3N2Z0ljb25dPVwiaWNvblwiPjwvbWF0LWljb24+XHJcbiAgPC9idXR0b24+XHJcblxyXG4gIDxtYXQtbWVudVxyXG4gICAgI2FjdGlvbmJhck1lbnU9XCJtYXRNZW51XCJcclxuICAgIGNsYXNzPVwiaWdvLWNvbXBhY3QtbWVudSBpZ28tbm8tbWluLXdpZHRoLW1lbnVcIlxyXG4gICAgb3ZlcmxhcFRyaWdnZXI9XCJ0cnVlXCJcclxuICAgIFt4UG9zaXRpb25dPVwieFBvc2l0aW9uXCJcclxuICAgIFt5UG9zaXRpb25dPVwieVBvc2l0aW9uXCJcclxuICAgIFtjbGFzc109XCJvdmVybGF5Q2xhc3NcIj5cclxuXHJcbiAgICA8bWF0LWxpc3Q+XHJcbiAgICAgIDxuZy10ZW1wbGF0ZSBuZ0ZvciBsZXQtYWN0aW9uIFtuZ0Zvck9mXT1cInN0b3JlLnZpZXcuYWxsJCgpIHwgYXN5bmNcIj5cclxuICAgICAgICA8aWdvLWFjdGlvbmJhci1pdGVtXHJcbiAgICAgICAgICBjb2xvcj1cImFjY2VudFwiXHJcbiAgICAgICAgICBbd2l0aFRpdGxlXT1cIndpdGhUaXRsZVwiXHJcbiAgICAgICAgICBbd2l0aEljb25dPVwid2l0aEljb25cIlxyXG4gICAgICAgICAgW2NvbG9yXT1cImNvbG9yXCJcclxuICAgICAgICAgIFthY3Rpb25dPVwiYWN0aW9uXCJcclxuICAgICAgICAgICh0cmlnZ2VyKT1cIm9uVHJpZ2dlckFjdGlvbihhY3Rpb24pXCI+XHJcbiAgICAgICAgPC9pZ28tYWN0aW9uYmFyLWl0ZW0+XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgICA8L21hdC1saXN0PlxyXG4gIDwvbWF0LW1lbnU+XHJcbjwvZGl2PlxyXG48bWF0LWNhcmQgKm5nSWY9XCJtb2RlID09PSBhY3Rpb25iYXJNb2RlLkNvbnRleHRcIiBjbGFzcz1cImNvbnRleHQtbWVudS1jYXJkIG1hdC1lbGV2YXRpb24tejRcIj5cclxuICA8bWF0LWxpc3Q+XHJcbiAgICAgIDxuZy10ZW1wbGF0ZSBuZ0ZvciBsZXQtYWN0aW9uIFtuZ0Zvck9mXT1cInN0b3JlLnZpZXcuYWxsJCgpIHwgYXN5bmNcIj5cclxuICAgICAgICAgIDxpZ28tYWN0aW9uYmFyLWl0ZW1cclxuICAgICAgICAgICAgY29sb3I9XCJhY2NlbnRcIlxyXG4gICAgICAgICAgICBbd2l0aFRpdGxlXT1cIndpdGhUaXRsZVwiXHJcbiAgICAgICAgICAgIFt3aXRoSWNvbl09XCJ3aXRoSWNvblwiXHJcbiAgICAgICAgICAgIFtjb2xvcl09XCJjb2xvclwiXHJcbiAgICAgICAgICAgIFthY3Rpb25dPVwiYWN0aW9uXCJcclxuICAgICAgICAgICAgKHRyaWdnZXIpPVwib25UcmlnZ2VyQWN0aW9uKGFjdGlvbilcIj5cclxuICAgICAgICAgIDwvaWdvLWFjdGlvbmJhci1pdGVtPlxyXG4gICAgICAgIDxici8+XHJcbiAgICAgIDwvbmctdGVtcGxhdGU+XHJcbiAgPC9tYXQtbGlzdD5cclxuPC9tYXQtY2FyZD5cclxuIl19