@igo2/common 1.15.4 → 16.0.0-rc.1

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 (476) hide show
  1. package/common-theme.scss +19 -0
  2. package/{esm2020 → esm2022}/igo2-common.mjs +4 -4
  3. package/esm2022/lib/action/action.module.mjs +20 -0
  4. package/esm2022/lib/action/actionbar/actionbar-item.component.mjs +270 -0
  5. package/esm2022/lib/action/actionbar/actionbar.component.mjs +389 -0
  6. package/{esm2020 → esm2022}/lib/action/actionbar/actionbar.module.mjs +57 -57
  7. package/{esm2020 → esm2022}/lib/action/index.mjs +3 -3
  8. package/{esm2020 → esm2022}/lib/action/shared/action.enums.mjs +7 -7
  9. package/esm2022/lib/action/shared/action.interfaces.mjs +2 -0
  10. package/{esm2020 → esm2022}/lib/action/shared/index.mjs +4 -4
  11. package/{esm2020 → esm2022}/lib/action/shared/store.mjs +8 -8
  12. package/esm2022/lib/backdrop/backdrop.component.mjs +27 -0
  13. package/{esm2020 → esm2022}/lib/backdrop/backdrop.module.mjs +25 -25
  14. package/{esm2020 → esm2022}/lib/backdrop/index.mjs +2 -2
  15. package/esm2022/lib/badge-icon/badge-icon.directive.mjs +150 -0
  16. package/{esm2020 → esm2022}/lib/badge-icon/badge-icon.module.mjs +26 -26
  17. package/{esm2020 → esm2022}/lib/badge-icon/index.mjs +2 -2
  18. package/esm2022/lib/clickout/clickout.directive.mjs +33 -0
  19. package/{esm2020 → esm2022}/lib/clickout/clickout.module.mjs +24 -24
  20. package/{esm2020 → esm2022}/lib/clickout/index.mjs +2 -2
  21. package/{esm2020 → esm2022}/lib/clone/clone.module.mjs +24 -24
  22. package/esm2022/lib/clone/clone.pipe.mjs +24 -0
  23. package/{esm2020 → esm2022}/lib/clone/index.mjs +2 -2
  24. package/esm2022/lib/collapsible/collapse.directive.mjs +58 -0
  25. package/esm2022/lib/collapsible/collapsible.component.mjs +54 -0
  26. package/{esm2020 → esm2022}/lib/collapsible/collapsible.module.mjs +27 -27
  27. package/{esm2020 → esm2022}/lib/collapsible/index.mjs +3 -3
  28. package/esm2022/lib/color-picker-form-field/color-picker-form-field.component.mjs +121 -0
  29. package/esm2022/lib/color-picker-form-field/color-picker-form-field.module.mjs +32 -0
  30. package/esm2022/lib/color-picker-form-field/index.mjs +2 -0
  31. package/esm2022/lib/confirm-dialog/confirm-dialog.component.mjs +47 -0
  32. package/{esm2020 → esm2022}/lib/confirm-dialog/confirm-dialog.module.mjs +29 -29
  33. package/esm2022/lib/confirm-dialog/confirm-dialog.service.mjs +29 -0
  34. package/{esm2020 → esm2022}/lib/confirm-dialog/index.mjs +3 -3
  35. package/esm2022/lib/context-menu/context-menu.directive.mjs +110 -0
  36. package/{esm2020 → esm2022}/lib/context-menu/context-menu.module.mjs +25 -25
  37. package/{esm2020 → esm2022}/lib/context-menu/index.mjs +3 -3
  38. package/esm2022/lib/context-menu/long-press.directive.mjs +67 -0
  39. package/esm2022/lib/custom-html/custom-html.component.mjs +27 -0
  40. package/{esm2020 → esm2022}/lib/custom-html/custom-html.module.mjs +47 -47
  41. package/esm2022/lib/custom-html/custom-html.pipe.mjs +20 -0
  42. package/{esm2020 → esm2022}/lib/custom-html/index.mjs +3 -3
  43. package/{esm2020 → esm2022}/lib/dom/dom.interfaces.mjs +2 -2
  44. package/{esm2020 → esm2022}/lib/dom/dom.module.mjs +21 -23
  45. package/esm2022/lib/dom/dom.service.mjs +35 -0
  46. package/{esm2020 → esm2022}/lib/dom/index.mjs +3 -3
  47. package/esm2022/lib/drag-drop/drag-drop.directive.mjs +85 -0
  48. package/{esm2020 → esm2022}/lib/drag-drop/drag-drop.module.mjs +24 -24
  49. package/{esm2020 → esm2022}/lib/drag-drop/index.mjs +2 -2
  50. package/esm2022/lib/dynamic-component/dynamic-component.module.mjs +20 -0
  51. package/esm2022/lib/dynamic-component/dynamic-outlet/dynamic-outlet.component.mjs +138 -0
  52. package/esm2022/lib/dynamic-component/dynamic-outlet/dynamic-outlet.module.mjs +22 -0
  53. package/{esm2020 → esm2022}/lib/dynamic-component/index.mjs +3 -3
  54. package/{esm2020 → esm2022}/lib/dynamic-component/shared/dynamic-component.interfaces.mjs +2 -2
  55. package/esm2022/lib/dynamic-component/shared/dynamic-component.mjs +183 -0
  56. package/esm2022/lib/dynamic-component/shared/dynamic-component.service.mjs +30 -0
  57. package/{esm2020 → esm2022}/lib/dynamic-component/shared/index.mjs +4 -4
  58. package/esm2022/lib/entity/entity-selector/entity-selector.component.mjs +214 -0
  59. package/esm2022/lib/entity/entity-selector/entity-selector.module.mjs +24 -0
  60. package/esm2022/lib/entity/entity-table/entity-table-row.directive.mjs +139 -0
  61. package/esm2022/lib/entity/entity-table/entity-table.component.mjs +1455 -0
  62. package/{esm2020 → esm2022}/lib/entity/entity-table/entity-table.module.mjs +96 -102
  63. package/esm2022/lib/entity/entity-table-paginator/entity-table-paginator.component.mjs +167 -0
  64. package/esm2022/lib/entity/entity-table-paginator/entity-table-paginator.interface.mjs +2 -0
  65. package/esm2022/lib/entity/entity-table-paginator/entity-table-paginator.module.mjs +22 -0
  66. package/{esm2020 → esm2022}/lib/entity/entity.module.mjs +29 -31
  67. package/{esm2020 → esm2022}/lib/entity/index.mjs +6 -6
  68. package/{esm2020 → esm2022}/lib/entity/shared/entity.enums.mjs +28 -28
  69. package/esm2022/lib/entity/shared/entity.interfaces.mjs +2 -0
  70. package/esm2022/lib/entity/shared/entity.utils.mjs +73 -0
  71. package/esm2022/lib/entity/shared/index.mjs +11 -0
  72. package/esm2022/lib/entity/shared/state.mjs +194 -0
  73. package/esm2022/lib/entity/shared/store-strategy.mjs +73 -0
  74. package/esm2022/lib/entity/shared/store.mjs +256 -0
  75. package/esm2022/lib/entity/shared/strategies/filter-custom-function.mjs +80 -0
  76. package/esm2022/lib/entity/shared/strategies/filter-selection.mjs +81 -0
  77. package/{esm2020 → esm2022}/lib/entity/shared/strategies/index.mjs +4 -4
  78. package/esm2022/lib/entity/shared/strategies/strategy.mjs +78 -0
  79. package/esm2022/lib/entity/shared/transaction.mjs +329 -0
  80. package/esm2022/lib/entity/shared/view.mjs +330 -0
  81. package/esm2022/lib/entity/shared/watcher.mjs +135 -0
  82. package/esm2022/lib/flexible/flexible.component.mjs +153 -0
  83. package/{esm2020 → esm2022}/lib/flexible/flexible.module.mjs +24 -24
  84. package/{esm2020 → esm2022}/lib/flexible/flexible.type.mjs +2 -2
  85. package/{esm2020 → esm2022}/lib/flexible/index.mjs +3 -3
  86. package/esm2022/lib/form/form/form.component.mjs +125 -0
  87. package/esm2022/lib/form/form/form.module.mjs +23 -0
  88. package/esm2022/lib/form/form-field/form-field-select.component.mjs +140 -0
  89. package/esm2022/lib/form/form-field/form-field-text.component.mjs +113 -0
  90. package/esm2022/lib/form/form-field/form-field-textarea.component.mjs +114 -0
  91. package/esm2022/lib/form/form-field/form-field.component.mjs +78 -0
  92. package/{esm2020 → esm2022}/lib/form/form-field/form-field.module.mjs +74 -74
  93. package/{esm2020 → esm2022}/lib/form/form-field/index.mjs +5 -5
  94. package/esm2022/lib/form/form-group/form-group.component.mjs +115 -0
  95. package/esm2022/lib/form/form-group/form-group.module.mjs +36 -0
  96. package/esm2022/lib/form/form.module.mjs +27 -0
  97. package/{esm2020 → esm2022}/lib/form/index.mjs +5 -5
  98. package/{esm2020 → esm2022}/lib/form/shared/form-field-component.mjs +7 -7
  99. package/esm2022/lib/form/shared/form-field.service.mjs +29 -0
  100. package/esm2022/lib/form/shared/form.interfaces.mjs +2 -0
  101. package/esm2022/lib/form/shared/form.service.mjs +82 -0
  102. package/esm2022/lib/form/shared/form.utils.mjs +40 -0
  103. package/{esm2020 → esm2022}/lib/form/shared/index.mjs +6 -6
  104. package/esm2022/lib/home-button/home-button.component.mjs +30 -0
  105. package/{esm2020 → esm2022}/lib/home-button/home-button.module.mjs +41 -41
  106. package/{esm2020 → esm2022}/lib/home-button/index.mjs +2 -2
  107. package/esm2022/lib/image/image-error.directive.mjs +36 -0
  108. package/{esm2020 → esm2022}/lib/image/image.module.mjs +25 -25
  109. package/{esm2020 → esm2022}/lib/image/index.mjs +3 -3
  110. package/esm2022/lib/image/secure-image.pipe.mjs +65 -0
  111. package/{esm2020 → esm2022}/lib/interactive-tour/index.mjs +5 -5
  112. package/esm2022/lib/interactive-tour/interactive-tour.component.mjs +161 -0
  113. package/esm2022/lib/interactive-tour/interactive-tour.interface.mjs +2 -0
  114. package/esm2022/lib/interactive-tour/interactive-tour.loader.mjs +49 -0
  115. package/{esm2020 → esm2022}/lib/interactive-tour/interactive-tour.module.mjs +40 -40
  116. package/esm2022/lib/interactive-tour/interactive-tour.service.mjs +298 -0
  117. package/{esm2020 → esm2022}/lib/json-dialog/index.mjs +3 -3
  118. package/esm2022/lib/json-dialog/json-dialog.component.mjs +114 -0
  119. package/{esm2020 → esm2022}/lib/json-dialog/json-dialog.module.mjs +29 -29
  120. package/{esm2020 → esm2022}/lib/json-dialog/json-dialog.service.mjs +26 -24
  121. package/{esm2020 → esm2022}/lib/keyvalue/index.mjs +2 -2
  122. package/{esm2020 → esm2022}/lib/keyvalue/keyvalue.module.mjs +24 -24
  123. package/{esm2020 → esm2022}/lib/keyvalue/keyvalue.pipe.mjs +18 -18
  124. package/{esm2020 → esm2022}/lib/list/index.mjs +3 -3
  125. package/esm2022/lib/list/list-item.directive.mjs +167 -0
  126. package/esm2022/lib/list/list.component.mjs +268 -0
  127. package/{esm2020 → esm2022}/lib/list/list.module.mjs +29 -29
  128. package/{esm2020 → esm2022}/lib/panel/index.mjs +2 -2
  129. package/esm2022/lib/panel/panel.component.mjs +60 -0
  130. package/{esm2020 → esm2022}/lib/panel/panel.module.mjs +19 -19
  131. package/{esm2020 → esm2022}/lib/sidenav/index.mjs +2 -2
  132. package/esm2022/lib/sidenav/sidenav-shim.directive.mjs +59 -0
  133. package/{esm2020 → esm2022}/lib/sidenav/sidenav.module.mjs +24 -24
  134. package/{esm2020 → esm2022}/lib/spinner/index.mjs +3 -3
  135. package/esm2022/lib/spinner/spinner-activity.directive.mjs +55 -0
  136. package/esm2022/lib/spinner/spinner.component.mjs +38 -0
  137. package/{esm2020 → esm2022}/lib/spinner/spinner.module.mjs +21 -21
  138. package/{esm2020 → esm2022}/lib/stop-propagation/index.mjs +3 -3
  139. package/{esm2020 → esm2022}/lib/stop-propagation/stop-drop-propagation.directive.mjs +22 -22
  140. package/{esm2020 → esm2022}/lib/stop-propagation/stop-propagation.directive.mjs +21 -21
  141. package/{esm2020 → esm2022}/lib/stop-propagation/stop-propagation.module.mjs +25 -25
  142. package/{esm2020 → esm2022}/lib/table/index.mjs +6 -6
  143. package/{esm2020 → esm2022}/lib/table/table-action-color.enum.mjs +7 -7
  144. package/esm2022/lib/table/table-database.mjs +28 -0
  145. package/esm2022/lib/table/table-datasource.mjs +64 -0
  146. package/esm2022/lib/table/table-model.interface.mjs +2 -0
  147. package/esm2022/lib/table/table.component.mjs +302 -0
  148. package/{esm2020 → esm2022}/lib/table/table.module.mjs +67 -67
  149. package/{esm2020 → esm2022}/lib/tool/index.mjs +3 -3
  150. package/{esm2020 → esm2022}/lib/tool/shared/index.mjs +6 -6
  151. package/esm2022/lib/tool/shared/tool-component.mjs +9 -0
  152. package/esm2022/lib/tool/shared/tool.interface.mjs +2 -0
  153. package/esm2022/lib/tool/shared/tool.service.mjs +43 -0
  154. package/{esm2020 → esm2022}/lib/tool/shared/toolbox.enums.mjs +7 -7
  155. package/esm2022/lib/tool/shared/toolbox.mjs +184 -0
  156. package/esm2022/lib/tool/tool.module.mjs +26 -0
  157. package/{esm2020 → esm2022}/lib/tool/toolbox/toolbox.animation.mjs +10 -10
  158. package/esm2022/lib/tool/toolbox/toolbox.component.mjs +273 -0
  159. package/esm2022/lib/tool/toolbox/toolbox.module.mjs +24 -0
  160. package/{esm2020 → esm2022}/lib/widget/index.mjs +3 -3
  161. package/{esm2020 → esm2022}/lib/widget/shared/index.mjs +4 -4
  162. package/esm2022/lib/widget/shared/widget.interfaces.mjs +2 -0
  163. package/{esm2020 → esm2022}/lib/widget/shared/widget.mjs +4 -4
  164. package/esm2022/lib/widget/shared/widget.service.mjs +22 -0
  165. package/esm2022/lib/widget/widget-outlet/widget-outlet.component.mjs +124 -0
  166. package/esm2022/lib/widget/widget-outlet/widget-outlet.module.mjs +23 -0
  167. package/esm2022/lib/widget/widget.module.mjs +21 -0
  168. package/{esm2020 → esm2022}/lib/workspace/index.mjs +4 -4
  169. package/{esm2020 → esm2022}/lib/workspace/shared/index.mjs +4 -4
  170. package/esm2022/lib/workspace/shared/store.mjs +37 -0
  171. package/esm2022/lib/workspace/shared/workspace.interfaces.mjs +2 -0
  172. package/esm2022/lib/workspace/shared/workspace.mjs +143 -0
  173. package/esm2022/lib/workspace/workspace-selector/workspace-selector.component.mjs +58 -0
  174. package/esm2022/lib/workspace/workspace-selector/workspace-selector.module.mjs +23 -0
  175. package/esm2022/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.component.mjs +94 -0
  176. package/esm2022/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.module.mjs +23 -0
  177. package/esm2022/lib/workspace/workspace.module.mjs +20 -0
  178. package/esm2022/public_api.mjs +76 -0
  179. package/{fesm2020 → fesm2022}/igo2-common.mjs +9838 -9345
  180. package/fesm2022/igo2-common.mjs.map +1 -0
  181. package/index.d.ts +5 -5
  182. package/lib/action/action.module.d.ts +8 -8
  183. package/lib/action/action.theming.scss +5 -0
  184. package/lib/action/actionbar/actionbar-item.component.d.ts +78 -78
  185. package/lib/action/actionbar/actionbar-item.theming.scss +32 -0
  186. package/lib/action/actionbar/actionbar.component.d.ts +147 -146
  187. package/lib/action/actionbar/actionbar.module.d.ts +20 -20
  188. package/lib/action/actionbar/actionbar.theming.scss +22 -0
  189. package/lib/action/index.d.ts +2 -2
  190. package/lib/action/shared/action.enums.d.ts +5 -5
  191. package/lib/action/shared/action.interfaces.d.ts +17 -17
  192. package/lib/action/shared/index.d.ts +3 -3
  193. package/lib/action/shared/store.d.ts +8 -8
  194. package/lib/backdrop/backdrop.component.d.ts +9 -9
  195. package/lib/backdrop/backdrop.module.d.ts +10 -10
  196. package/lib/backdrop/index.d.ts +1 -1
  197. package/lib/badge-icon/badge-icon.directive.d.ts +36 -36
  198. package/lib/badge-icon/badge-icon.module.d.ts +11 -11
  199. package/lib/badge-icon/index.d.ts +1 -1
  200. package/lib/clickout/clickout.directive.d.ts +10 -10
  201. package/lib/clickout/clickout.module.d.ts +9 -9
  202. package/lib/clickout/index.d.ts +1 -1
  203. package/lib/clone/clone.module.d.ts +9 -9
  204. package/lib/clone/clone.pipe.d.ts +7 -7
  205. package/lib/clone/index.d.ts +1 -1
  206. package/lib/collapsible/collapse.directive.d.ts +19 -19
  207. package/lib/collapsible/collapsible.component.d.ts +13 -13
  208. package/lib/collapsible/collapsible.module.d.ts +12 -12
  209. package/lib/collapsible/collapsible.theming.scss +22 -0
  210. package/lib/collapsible/index.d.ts +2 -2
  211. package/lib/color-picker-form-field/color-picker-form-field.component.d.ts +26 -0
  212. package/lib/color-picker-form-field/color-picker-form-field.module.d.ts +10 -0
  213. package/lib/color-picker-form-field/index.d.ts +1 -0
  214. package/lib/confirm-dialog/confirm-dialog.component.d.ts +9 -9
  215. package/lib/confirm-dialog/confirm-dialog.module.d.ts +12 -12
  216. package/lib/confirm-dialog/confirm-dialog.service.d.ts +12 -12
  217. package/lib/confirm-dialog/index.d.ts +2 -2
  218. package/lib/context-menu/context-menu.directive.d.ts +21 -21
  219. package/lib/context-menu/context-menu.module.d.ts +10 -10
  220. package/lib/context-menu/index.d.ts +2 -2
  221. package/lib/context-menu/long-press.directive.d.ts +20 -20
  222. package/lib/custom-html/custom-html.component.d.ts +9 -9
  223. package/lib/custom-html/custom-html.module.d.ts +16 -16
  224. package/lib/custom-html/custom-html.pipe.d.ts +10 -10
  225. package/lib/custom-html/index.d.ts +2 -2
  226. package/lib/dom/dom.interfaces.d.ts +10 -10
  227. package/lib/dom/dom.module.d.ts +8 -8
  228. package/lib/dom/dom.service.d.ts +10 -10
  229. package/lib/dom/index.d.ts +2 -2
  230. package/lib/drag-drop/drag-drop.directive.d.ts +14 -14
  231. package/lib/drag-drop/drag-drop.module.d.ts +9 -9
  232. package/lib/drag-drop/index.d.ts +1 -1
  233. package/lib/dynamic-component/dynamic-component.module.d.ts +8 -8
  234. package/lib/dynamic-component/dynamic-outlet/dynamic-outlet.component.d.ts +70 -70
  235. package/lib/dynamic-component/dynamic-outlet/dynamic-outlet.module.d.ts +11 -11
  236. package/lib/dynamic-component/index.d.ts +2 -2
  237. package/lib/dynamic-component/shared/dynamic-component.d.ts +88 -88
  238. package/lib/dynamic-component/shared/dynamic-component.interfaces.d.ts +3 -3
  239. package/lib/dynamic-component/shared/dynamic-component.service.d.ts +18 -18
  240. package/lib/dynamic-component/shared/index.d.ts +3 -3
  241. package/lib/entity/entity-selector/entity-selector.component.d.ts +92 -92
  242. package/lib/entity/entity-selector/entity-selector.module.d.ts +13 -13
  243. package/lib/entity/entity-selector/entity-selector.theming.scss +21 -0
  244. package/lib/entity/entity-table/entity-table-row.directive.d.ts +69 -69
  245. package/lib/entity/entity-table/entity-table.component.d.ts +327 -333
  246. package/lib/entity/entity-table/entity-table.module.d.ts +29 -29
  247. package/lib/entity/entity-table/entity-table.theming.scss +34 -0
  248. package/lib/entity/entity-table-paginator/entity-table-paginator.component.d.ts +49 -49
  249. package/lib/entity/entity-table-paginator/entity-table-paginator.interface.d.ts +8 -8
  250. package/lib/entity/entity-table-paginator/entity-table-paginator.module.d.ts +11 -11
  251. package/lib/entity/entity-table-paginator/entity-table-paginator.theming.scss +21 -0
  252. package/lib/entity/entity.module.d.ts +10 -10
  253. package/lib/entity/entity.theming.scss +10 -0
  254. package/lib/entity/index.d.ts +5 -5
  255. package/lib/entity/shared/entity.enums.d.ts +23 -23
  256. package/lib/entity/shared/entity.interfaces.d.ts +95 -114
  257. package/lib/entity/shared/entity.utils.d.ts +49 -49
  258. package/lib/entity/shared/index.d.ts +10 -9
  259. package/lib/entity/shared/state.d.ts +108 -103
  260. package/lib/entity/shared/store-strategy.d.ts +38 -0
  261. package/lib/entity/shared/store.d.ts +147 -176
  262. package/lib/entity/shared/strategies/filter-custom-function.d.ts +51 -51
  263. package/lib/entity/shared/strategies/filter-selection.d.ts +48 -48
  264. package/lib/entity/shared/strategies/index.d.ts +3 -3
  265. package/lib/entity/shared/strategies/strategy.d.ts +56 -56
  266. package/lib/entity/shared/transaction.d.ts +180 -168
  267. package/lib/entity/shared/view.d.ts +193 -193
  268. package/lib/entity/shared/watcher.d.ts +72 -72
  269. package/lib/flexible/flexible.component.d.ts +41 -41
  270. package/lib/flexible/flexible.module.d.ts +9 -9
  271. package/lib/flexible/flexible.type.d.ts +2 -2
  272. package/lib/flexible/index.d.ts +2 -2
  273. package/lib/form/form/form.component.d.ts +53 -53
  274. package/lib/form/form/form.module.d.ts +12 -12
  275. package/lib/form/form-field/form-field-select.component.d.ts +48 -48
  276. package/lib/form/form-field/form-field-text.component.d.ts +41 -41
  277. package/lib/form/form-field/form-field-textarea.component.d.ts +41 -41
  278. package/lib/form/form-field/form-field.component.d.ts +29 -34
  279. package/lib/form/form-field/form-field.module.d.ts +21 -21
  280. package/lib/form/form-field/index.d.ts +4 -4
  281. package/lib/form/form-group/form-group.component.d.ts +49 -49
  282. package/lib/form/form-group/form-group.module.d.ts +14 -14
  283. package/lib/form/form.module.d.ts +13 -13
  284. package/lib/form/index.d.ts +4 -4
  285. package/lib/form/shared/form-field-component.d.ts +1 -1
  286. package/lib/form/shared/form-field.service.d.ts +19 -19
  287. package/lib/form/shared/form.interfaces.d.ts +61 -57
  288. package/lib/form/shared/form.service.d.ts +15 -15
  289. package/lib/form/shared/form.utils.d.ts +11 -11
  290. package/lib/form/shared/index.d.ts +5 -5
  291. package/lib/home-button/home-button.component.d.ts +9 -9
  292. package/lib/home-button/home-button.module.d.ts +15 -15
  293. package/lib/home-button/home-button.theming.scss +18 -0
  294. package/lib/home-button/index.d.ts +1 -1
  295. package/lib/image/image-error.directive.d.ts +11 -11
  296. package/lib/image/image.module.d.ts +10 -10
  297. package/lib/image/index.d.ts +2 -2
  298. package/lib/image/secure-image.pipe.d.ts +13 -13
  299. package/lib/interactive-tour/index.d.ts +4 -4
  300. package/lib/interactive-tour/interactive-tour.component.d.ts +30 -30
  301. package/lib/interactive-tour/interactive-tour.interface.d.ts +33 -32
  302. package/lib/interactive-tour/interactive-tour.loader.d.ts +18 -18
  303. package/lib/interactive-tour/interactive-tour.module.d.ts +12 -12
  304. package/lib/interactive-tour/interactive-tour.service.d.ts +29 -29
  305. package/lib/interactive-tour/interactive-tour.theming.scss +32 -0
  306. package/lib/json-dialog/index.d.ts +2 -2
  307. package/lib/json-dialog/json-dialog.component.d.ts +13 -13
  308. package/lib/json-dialog/json-dialog.module.d.ts +13 -13
  309. package/lib/json-dialog/json-dialog.service.d.ts +10 -10
  310. package/lib/keyvalue/index.d.ts +1 -1
  311. package/lib/keyvalue/keyvalue.module.d.ts +9 -9
  312. package/lib/keyvalue/keyvalue.pipe.d.ts +7 -7
  313. package/lib/list/index.d.ts +2 -2
  314. package/lib/list/list-item.directive.d.ts +43 -43
  315. package/lib/list/list.component.d.ts +51 -51
  316. package/lib/list/list.module.d.ts +14 -14
  317. package/lib/list/list.theming.scss +40 -0
  318. package/lib/panel/index.d.ts +1 -1
  319. package/lib/panel/panel.component.d.ts +10 -10
  320. package/lib/panel/panel.module.d.ts +8 -8
  321. package/lib/panel/panel.theming.scss +30 -0
  322. package/lib/sidenav/index.d.ts +1 -1
  323. package/lib/sidenav/sidenav-shim.directive.d.ts +20 -20
  324. package/lib/sidenav/sidenav.module.d.ts +9 -9
  325. package/lib/spinner/index.d.ts +2 -2
  326. package/lib/spinner/spinner-activity.directive.d.ts +32 -32
  327. package/lib/spinner/spinner.component.d.ts +12 -12
  328. package/lib/spinner/spinner.module.d.ts +10 -10
  329. package/lib/stop-propagation/index.d.ts +2 -2
  330. package/lib/stop-propagation/stop-drop-propagation.directive.d.ts +6 -6
  331. package/lib/stop-propagation/stop-propagation.directive.d.ts +6 -6
  332. package/lib/stop-propagation/stop-propagation.module.d.ts +10 -10
  333. package/lib/table/index.d.ts +5 -5
  334. package/lib/table/table-action-color.enum.d.ts +5 -5
  335. package/lib/table/table-database.d.ts +10 -10
  336. package/lib/table/table-datasource.d.ts +18 -17
  337. package/lib/table/table-model.interface.d.ts +28 -28
  338. package/lib/table/table.component.d.ts +40 -40
  339. package/lib/table/table.module.d.ts +20 -20
  340. package/lib/tool/index.d.ts +2 -2
  341. package/lib/tool/shared/index.d.ts +5 -5
  342. package/lib/tool/shared/tool-component.d.ts +2 -2
  343. package/lib/tool/shared/tool.interface.d.ts +18 -18
  344. package/lib/tool/shared/tool.service.d.ts +30 -30
  345. package/lib/tool/shared/toolbox.d.ts +95 -95
  346. package/lib/tool/shared/toolbox.enums.d.ts +5 -5
  347. package/lib/tool/tool.module.d.ts +10 -10
  348. package/lib/tool/tool.theming.scss +5 -0
  349. package/lib/tool/toolbox/toolbox.animation.d.ts +2 -2
  350. package/lib/tool/toolbox/toolbox.component.d.ts +128 -127
  351. package/lib/tool/toolbox/toolbox.module.d.ts +13 -13
  352. package/lib/tool/toolbox/toolbox.theming.scss +105 -0
  353. package/lib/widget/index.d.ts +2 -2
  354. package/lib/widget/shared/index.d.ts +3 -3
  355. package/lib/widget/shared/widget.d.ts +4 -4
  356. package/lib/widget/shared/widget.interfaces.d.ts +12 -12
  357. package/lib/widget/shared/widget.service.d.ts +10 -10
  358. package/lib/widget/widget-outlet/widget-outlet.component.d.ts +71 -71
  359. package/lib/widget/widget-outlet/widget-outlet.module.d.ts +12 -12
  360. package/lib/widget/widget.module.d.ts +8 -8
  361. package/lib/workspace/index.d.ts +3 -3
  362. package/lib/workspace/shared/index.d.ts +3 -3
  363. package/lib/workspace/shared/store.d.ts +20 -20
  364. package/lib/workspace/shared/workspace.d.ts +108 -108
  365. package/lib/workspace/shared/workspace.interfaces.d.ts +11 -11
  366. package/lib/workspace/workspace-selector/workspace-selector.component.d.ts +39 -39
  367. package/lib/workspace/workspace-selector/workspace-selector.module.d.ts +12 -12
  368. package/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.component.d.ts +57 -57
  369. package/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.module.d.ts +12 -12
  370. package/lib/workspace/workspace.module.d.ts +9 -9
  371. package/locale/en.common.json +43 -0
  372. package/locale/fr.common.json +43 -0
  373. package/package.json +31 -28
  374. package/public_api.d.ts +72 -70
  375. package/style/partial/common-utils.scss +9 -0
  376. package/style/partial/common.variables.scss +8 -8
  377. package/style/style.css +204 -0
  378. package/esm2020/lib/action/action.module.mjs +0 -27
  379. package/esm2020/lib/action/actionbar/actionbar-item.component.mjs +0 -252
  380. package/esm2020/lib/action/actionbar/actionbar.component.mjs +0 -370
  381. package/esm2020/lib/action/shared/action.interfaces.mjs +0 -2
  382. package/esm2020/lib/backdrop/backdrop.component.mjs +0 -26
  383. package/esm2020/lib/badge-icon/badge-icon.directive.mjs +0 -141
  384. package/esm2020/lib/clickout/clickout.directive.mjs +0 -32
  385. package/esm2020/lib/clone/clone.pipe.mjs +0 -24
  386. package/esm2020/lib/collapsible/collapse.directive.mjs +0 -55
  387. package/esm2020/lib/collapsible/collapsible.component.mjs +0 -57
  388. package/esm2020/lib/confirm-dialog/confirm-dialog.component.mjs +0 -44
  389. package/esm2020/lib/confirm-dialog/confirm-dialog.service.mjs +0 -24
  390. package/esm2020/lib/context-menu/context-menu.directive.mjs +0 -103
  391. package/esm2020/lib/context-menu/long-press.directive.mjs +0 -67
  392. package/esm2020/lib/custom-html/custom-html.component.mjs +0 -28
  393. package/esm2020/lib/custom-html/custom-html.pipe.mjs +0 -18
  394. package/esm2020/lib/dom/dom.service.mjs +0 -30
  395. package/esm2020/lib/drag-drop/drag-drop.directive.mjs +0 -88
  396. package/esm2020/lib/dynamic-component/dynamic-component.module.mjs +0 -31
  397. package/esm2020/lib/dynamic-component/dynamic-outlet/dynamic-outlet.component.mjs +0 -122
  398. package/esm2020/lib/dynamic-component/dynamic-outlet/dynamic-outlet.module.mjs +0 -28
  399. package/esm2020/lib/dynamic-component/shared/dynamic-component.mjs +0 -174
  400. package/esm2020/lib/dynamic-component/shared/dynamic-component.service.mjs +0 -29
  401. package/esm2020/lib/entity/entity-selector/entity-selector.component.mjs +0 -194
  402. package/esm2020/lib/entity/entity-selector/entity-selector.module.mjs +0 -32
  403. package/esm2020/lib/entity/entity-table/entity-table-row.directive.mjs +0 -137
  404. package/esm2020/lib/entity/entity-table/entity-table.component.mjs +0 -1376
  405. package/esm2020/lib/entity/entity-table-paginator/entity-table-paginator.component.mjs +0 -132
  406. package/esm2020/lib/entity/entity-table-paginator/entity-table-paginator.interface.mjs +0 -2
  407. package/esm2020/lib/entity/entity-table-paginator/entity-table-paginator.module.mjs +0 -28
  408. package/esm2020/lib/entity/shared/entity.interfaces.mjs +0 -2
  409. package/esm2020/lib/entity/shared/entity.utils.mjs +0 -67
  410. package/esm2020/lib/entity/shared/index.mjs +0 -10
  411. package/esm2020/lib/entity/shared/state.mjs +0 -191
  412. package/esm2020/lib/entity/shared/store.mjs +0 -288
  413. package/esm2020/lib/entity/shared/strategies/filter-custom-function.mjs +0 -79
  414. package/esm2020/lib/entity/shared/strategies/filter-selection.mjs +0 -84
  415. package/esm2020/lib/entity/shared/strategies/strategy.mjs +0 -75
  416. package/esm2020/lib/entity/shared/transaction.mjs +0 -316
  417. package/esm2020/lib/entity/shared/view.mjs +0 -315
  418. package/esm2020/lib/entity/shared/watcher.mjs +0 -120
  419. package/esm2020/lib/flexible/flexible.component.mjs +0 -148
  420. package/esm2020/lib/form/form/form.component.mjs +0 -117
  421. package/esm2020/lib/form/form/form.module.mjs +0 -40
  422. package/esm2020/lib/form/form-field/form-field-select.component.mjs +0 -127
  423. package/esm2020/lib/form/form-field/form-field-text.component.mjs +0 -104
  424. package/esm2020/lib/form/form-field/form-field-textarea.component.mjs +0 -105
  425. package/esm2020/lib/form/form-field/form-field.component.mjs +0 -72
  426. package/esm2020/lib/form/form-group/form-group.component.mjs +0 -105
  427. package/esm2020/lib/form/form-group/form-group.module.mjs +0 -40
  428. package/esm2020/lib/form/form.module.mjs +0 -49
  429. package/esm2020/lib/form/shared/form-field.service.mjs +0 -29
  430. package/esm2020/lib/form/shared/form.interfaces.mjs +0 -2
  431. package/esm2020/lib/form/shared/form.service.mjs +0 -81
  432. package/esm2020/lib/form/shared/form.utils.mjs +0 -40
  433. package/esm2020/lib/home-button/home-button.component.mjs +0 -31
  434. package/esm2020/lib/image/image-error.directive.mjs +0 -35
  435. package/esm2020/lib/image/secure-image.pipe.mjs +0 -59
  436. package/esm2020/lib/interactive-tour/interactive-tour.component.mjs +0 -135
  437. package/esm2020/lib/interactive-tour/interactive-tour.interface.mjs +0 -2
  438. package/esm2020/lib/interactive-tour/interactive-tour.loader.mjs +0 -44
  439. package/esm2020/lib/interactive-tour/interactive-tour.service.mjs +0 -285
  440. package/esm2020/lib/json-dialog/json-dialog.component.mjs +0 -109
  441. package/esm2020/lib/list/list-item.directive.mjs +0 -165
  442. package/esm2020/lib/list/list.component.mjs +0 -262
  443. package/esm2020/lib/panel/panel.component.mjs +0 -59
  444. package/esm2020/lib/sidenav/sidenav-shim.directive.mjs +0 -55
  445. package/esm2020/lib/spinner/spinner-activity.directive.mjs +0 -47
  446. package/esm2020/lib/spinner/spinner.component.mjs +0 -35
  447. package/esm2020/lib/table/table-database.mjs +0 -28
  448. package/esm2020/lib/table/table-datasource.mjs +0 -61
  449. package/esm2020/lib/table/table-model.interface.mjs +0 -2
  450. package/esm2020/lib/table/table.component.mjs +0 -297
  451. package/esm2020/lib/tool/shared/tool-component.mjs +0 -9
  452. package/esm2020/lib/tool/shared/tool.interface.mjs +0 -2
  453. package/esm2020/lib/tool/shared/tool.service.mjs +0 -43
  454. package/esm2020/lib/tool/shared/toolbox.mjs +0 -179
  455. package/esm2020/lib/tool/tool.module.mjs +0 -32
  456. package/esm2020/lib/tool/toolbox/toolbox.component.mjs +0 -255
  457. package/esm2020/lib/tool/toolbox/toolbox.module.mjs +0 -36
  458. package/esm2020/lib/widget/shared/widget.interfaces.mjs +0 -2
  459. package/esm2020/lib/widget/shared/widget.service.mjs +0 -20
  460. package/esm2020/lib/widget/widget-outlet/widget-outlet.component.mjs +0 -116
  461. package/esm2020/lib/widget/widget-outlet/widget-outlet.module.mjs +0 -32
  462. package/esm2020/lib/widget/widget.module.mjs +0 -32
  463. package/esm2020/lib/workspace/shared/store.mjs +0 -40
  464. package/esm2020/lib/workspace/shared/workspace.interfaces.mjs +0 -2
  465. package/esm2020/lib/workspace/shared/workspace.mjs +0 -117
  466. package/esm2020/lib/workspace/workspace-selector/workspace-selector.component.mjs +0 -51
  467. package/esm2020/lib/workspace/workspace-selector/workspace-selector.module.mjs +0 -32
  468. package/esm2020/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.component.mjs +0 -88
  469. package/esm2020/lib/workspace/workspace-widget-outlet/workspace-widget-outlet.module.mjs +0 -32
  470. package/esm2020/lib/workspace/workspace.module.mjs +0 -27
  471. package/esm2020/public_api.mjs +0 -74
  472. package/fesm2015/igo2-common.mjs +0 -10329
  473. package/fesm2015/igo2-common.mjs.map +0 -1
  474. package/fesm2020/igo2-common.mjs.map +0 -1
  475. package/style/common.theming.scss +0 -12
  476. package/style/partial/action.scss +0 -18
@@ -0,0 +1,214 @@
1
+ import { Component, Input, Output, EventEmitter, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core';
2
+ import { BehaviorSubject } from 'rxjs';
3
+ import { EntityStore } from '../shared/store';
4
+ import { EntityStoreWatcher } from '../shared/watcher';
5
+ import { getEntityTitle } from '../shared/entity.utils';
6
+ import * as i0 from "@angular/core";
7
+ import * as i1 from "@angular/common";
8
+ import * as i2 from "@angular/material/form-field";
9
+ import * as i3 from "@angular/material/select";
10
+ import * as i4 from "@angular/material/core";
11
+ function EntitySelectorComponent_mat_option_3_Template(rf, ctx) { if (rf & 1) {
12
+ i0.ɵɵelementStart(0, "mat-option", 4);
13
+ i0.ɵɵtext(1);
14
+ i0.ɵɵelementEnd();
15
+ } if (rf & 2) {
16
+ const ctx_r0 = i0.ɵɵnextContext();
17
+ i0.ɵɵproperty("value", ctx_r0.emptyValue);
18
+ i0.ɵɵadvance(1);
19
+ i0.ɵɵtextInterpolate(ctx_r0.emptyText);
20
+ } }
21
+ function EntitySelectorComponent_mat_option_4_Template(rf, ctx) { if (rf & 1) {
22
+ i0.ɵɵelementStart(0, "mat-option", 4);
23
+ i0.ɵɵtext(1);
24
+ i0.ɵɵpipe(2, "async");
25
+ i0.ɵɵelementEnd();
26
+ } if (rf & 2) {
27
+ const ctx_r1 = i0.ɵɵnextContext();
28
+ i0.ɵɵproperty("value", ctx_r1.multiSelectValue);
29
+ i0.ɵɵadvance(1);
30
+ i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 2, ctx_r1.multiText$));
31
+ } }
32
+ function EntitySelectorComponent_ng_template_5_Template(rf, ctx) { if (rf & 1) {
33
+ i0.ɵɵelementStart(0, "mat-option", 4);
34
+ i0.ɵɵtext(1);
35
+ i0.ɵɵelementEnd();
36
+ } if (rf & 2) {
37
+ const record_r3 = ctx.$implicit;
38
+ const ctx_r2 = i0.ɵɵnextContext();
39
+ i0.ɵɵproperty("value", record_r3.entity);
40
+ i0.ɵɵadvance(1);
41
+ i0.ɵɵtextInterpolate1(" ", ctx_r2.titleAccessor(record_r3.entity), " ");
42
+ } }
43
+ export class EntitySelectorComponent {
44
+ cdRef;
45
+ /**
46
+ * The selected entity
47
+ * @internal
48
+ */
49
+ selected$ = new BehaviorSubject(undefined);
50
+ /**
51
+ * The current multi select option text
52
+ * @internal
53
+ */
54
+ multiText$ = new BehaviorSubject(undefined);
55
+ multiSelectValue = { id: 'IGO_MULTI_SELECT' };
56
+ emptyValue = { id: 'IGO_EMPTY_SELECT' };
57
+ /**
58
+ * Subscription to the selected entity
59
+ */
60
+ selected$$;
61
+ /**
62
+ * Store watcher
63
+ */
64
+ watcher;
65
+ /**
66
+ * Entity store
67
+ */
68
+ store;
69
+ /**
70
+ * Title accessor
71
+ */
72
+ titleAccessor = getEntityTitle;
73
+ /**
74
+ * Text to display when nothing is selected
75
+ */
76
+ emptyText = undefined;
77
+ /**
78
+ * Wheter selecting many entities is allowed
79
+ */
80
+ multi = false;
81
+ /**
82
+ * Text to display for the select all option
83
+ */
84
+ multiAllText = 'All';
85
+ /**
86
+ * Text to display for the select none option
87
+ */
88
+ multiNoneText = 'None';
89
+ /**
90
+ * Field placeholder
91
+ */
92
+ placeholder;
93
+ /**
94
+ * Wheter the selector is disabled or not
95
+ */
96
+ disabled = false;
97
+ /**
98
+ * Event emitted when the selection changes
99
+ */
100
+ selectedChange = new EventEmitter();
101
+ constructor(cdRef) {
102
+ this.cdRef = cdRef;
103
+ }
104
+ /**
105
+ * Create a store watcher and subscribe to the selected entity
106
+ * @internal
107
+ */
108
+ ngOnInit() {
109
+ this.watcher = new EntityStoreWatcher(this.store, this.cdRef);
110
+ this.selected$$ = this.store.stateView
111
+ .manyBy$((record) => record.state.selected === true)
112
+ .subscribe((records) => {
113
+ const entities = records.map((record) => record.entity);
114
+ this.onSelectFromStore(entities);
115
+ });
116
+ }
117
+ /**
118
+ * Unsubscribe to the selected entity and destroy the store watcher
119
+ * @internal
120
+ */
121
+ ngOnDestroy() {
122
+ this.watcher.destroy();
123
+ this.selected$$.unsubscribe();
124
+ }
125
+ /**
126
+ * On selection change, update the store's state and emit an event
127
+ * @internal
128
+ */
129
+ onSelectionChange(event) {
130
+ const values = event.value instanceof Array ? event.value : [event.value];
131
+ const multiSelect = values.find((_value) => _value === this.multiSelectValue);
132
+ let entities = values.filter((_value) => _value !== this.multiSelectValue);
133
+ if (multiSelect !== undefined) {
134
+ if (entities.length === this.store.count) {
135
+ entities = [];
136
+ }
137
+ else if (entities.length < this.store.count) {
138
+ entities = this.store.all();
139
+ }
140
+ }
141
+ entities = entities.filter((entity) => entity !== this.emptyValue);
142
+ if (entities.length === 0) {
143
+ this.store.state.updateAll({ selected: false });
144
+ }
145
+ else {
146
+ this.store.state.updateMany(entities, { selected: true }, true);
147
+ }
148
+ const value = this.multi ? entities : event.value;
149
+ this.selectedChange.emit({ selected: true, value });
150
+ }
151
+ onSelectFromStore(entities) {
152
+ if (this.multi === true) {
153
+ this.selected$.next(entities);
154
+ }
155
+ else {
156
+ const entity = entities.length > 0 ? entities[0] : undefined;
157
+ this.selected$.next(entity);
158
+ }
159
+ this.updateMultiToggleWithEntities(entities);
160
+ }
161
+ updateMultiToggleWithEntities(entities) {
162
+ if (entities.length === this.store.count &&
163
+ this.multiText$.value !== this.multiNoneText) {
164
+ this.multiText$.next(this.multiNoneText);
165
+ }
166
+ else if (entities.length < this.store.count &&
167
+ this.multiText$.value !== this.multiAllText) {
168
+ this.multiText$.next(this.multiAllText);
169
+ }
170
+ }
171
+ static ɵfac = function EntitySelectorComponent_Factory(t) { return new (t || EntitySelectorComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
172
+ static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: EntitySelectorComponent, selectors: [["igo-entity-selector"]], inputs: { store: "store", titleAccessor: "titleAccessor", emptyText: "emptyText", multi: "multi", multiAllText: "multiAllText", multiNoneText: "multiNoneText", placeholder: "placeholder", disabled: "disabled" }, outputs: { selectedChange: "selectedChange" }, decls: 7, vars: 11, consts: [["subscriptSizing", "dynamic", 1, "igo-entity-selector"], [3, "disabled", "value", "multiple", "placeholder", "selectionChange"], [3, "value", 4, "ngIf"], ["ngFor", "", 3, "ngForOf"], [3, "value"]], template: function EntitySelectorComponent_Template(rf, ctx) { if (rf & 1) {
173
+ i0.ɵɵelementStart(0, "mat-form-field", 0)(1, "mat-select", 1);
174
+ i0.ɵɵlistener("selectionChange", function EntitySelectorComponent_Template_mat_select_selectionChange_1_listener($event) { return ctx.onSelectionChange($event); });
175
+ i0.ɵɵpipe(2, "async");
176
+ i0.ɵɵtemplate(3, EntitySelectorComponent_mat_option_3_Template, 2, 2, "mat-option", 2);
177
+ i0.ɵɵtemplate(4, EntitySelectorComponent_mat_option_4_Template, 3, 4, "mat-option", 2);
178
+ i0.ɵɵtemplate(5, EntitySelectorComponent_ng_template_5_Template, 2, 2, "ng-template", 3);
179
+ i0.ɵɵpipe(6, "async");
180
+ i0.ɵɵelementEnd()();
181
+ } if (rf & 2) {
182
+ i0.ɵɵadvance(1);
183
+ i0.ɵɵproperty("disabled", ctx.disabled)("value", i0.ɵɵpipeBind1(2, 7, ctx.selected$))("multiple", ctx.multi)("placeholder", ctx.placeholder);
184
+ i0.ɵɵadvance(2);
185
+ i0.ɵɵproperty("ngIf", ctx.emptyText !== undefined && ctx.multi === false);
186
+ i0.ɵɵadvance(1);
187
+ i0.ɵɵproperty("ngIf", ctx.multi === true);
188
+ i0.ɵɵadvance(1);
189
+ i0.ɵɵproperty("ngForOf", i0.ɵɵpipeBind1(6, 9, ctx.store.stateView.all$()));
190
+ } }, dependencies: [i1.NgForOf, i1.NgIf, i2.MatFormField, i3.MatSelect, i4.MatOption, i1.AsyncPipe], styles: ["mat-form-field[_ngcontent-%COMP%]{width:100%}"], changeDetection: 0 });
191
+ }
192
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EntitySelectorComponent, [{
193
+ type: Component,
194
+ args: [{ selector: 'igo-entity-selector', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-form-field class=\"igo-entity-selector\" subscriptSizing=\"dynamic\">\n <mat-select\n [disabled]=\"disabled\"\n [value]=\"selected$ | async\"\n [multiple]=\"multi\"\n [placeholder]=\"placeholder\"\n (selectionChange)=\"onSelectionChange($event)\"\n >\n <mat-option\n *ngIf=\"emptyText !== undefined && multi === false\"\n [value]=\"emptyValue\"\n >{{ emptyText }}</mat-option\n >\n <mat-option *ngIf=\"multi === true\" [value]=\"multiSelectValue\">{{\n multiText$ | async\n }}</mat-option>\n <ng-template ngFor let-record [ngForOf]=\"store.stateView.all$() | async\">\n <mat-option [value]=\"record.entity\">\n {{ titleAccessor(record.entity) }}\n </mat-option>\n </ng-template>\n </mat-select>\n</mat-form-field>\n", styles: ["mat-form-field{width:100%}\n"] }]
195
+ }], function () { return [{ type: i0.ChangeDetectorRef }]; }, { store: [{
196
+ type: Input
197
+ }], titleAccessor: [{
198
+ type: Input
199
+ }], emptyText: [{
200
+ type: Input
201
+ }], multi: [{
202
+ type: Input
203
+ }], multiAllText: [{
204
+ type: Input
205
+ }], multiNoneText: [{
206
+ type: Input
207
+ }], placeholder: [{
208
+ type: Input
209
+ }], disabled: [{
210
+ type: Input
211
+ }], selectedChange: [{
212
+ type: Output
213
+ }] }); })();
214
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXNlbGVjdG9yLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvbGliL2VudGl0eS9lbnRpdHktc2VsZWN0b3IvZW50aXR5LXNlbGVjdG9yLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvbGliL2VudGl0eS9lbnRpdHktc2VsZWN0b3IvZW50aXR5LXNlbGVjdG9yLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLE1BQU0sRUFDTixZQUFZLEVBQ1osdUJBQXVCLEVBQ3ZCLGlCQUFpQixFQUdsQixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsZUFBZSxFQUFnQixNQUFNLE1BQU0sQ0FBQztBQUdyRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDOUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdkQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHdCQUF3QixDQUFDOzs7Ozs7O0lDUnBELHFDQUdHO0lBQUEsWUFBZTtJQUFBLGlCQUNqQjs7O0lBRkMseUNBQW9CO0lBQ25CLGVBQWU7SUFBZixzQ0FBZTs7O0lBRWxCLHFDQUE4RDtJQUFBLFlBRTVEOztJQUFBLGlCQUFhOzs7SUFGb0IsK0NBQTBCO0lBQUMsZUFFNUQ7SUFGNEQsNkRBRTVEOzs7SUFFQSxxQ0FBb0M7SUFDbEMsWUFDRjtJQUFBLGlCQUFhOzs7O0lBRkQsd0NBQXVCO0lBQ2pDLGVBQ0Y7SUFERSx1RUFDRjs7QURLTixNQUFNLE9BQU8sdUJBQXVCO0lBMkVkO0lBMUVwQjs7O09BR0c7SUFDTSxTQUFTLEdBQUcsSUFBSSxlQUFlLENBQVMsU0FBUyxDQUFDLENBQUM7SUFFNUQ7OztPQUdHO0lBQ00sVUFB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Q0FBQyxLQUFLLEtBQUssSUFBSSxDQUFDLGFBQWEsRUFDNUM7WUFDQSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLENBQUM7U0FDMUM7YUFBTSxJQUNMLFFBQVEsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLO1lBQ2xDLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxZQUFZLEVBQzNDO1lBQ0EsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO1NBQ3pDO0lBQ0gsQ0FBQztpRkE5SlUsdUJBQXVCOzZEQUF2Qix1QkFBdUI7WUN4QnBDLHlDQUFzRSxvQkFBQTtZQU1sRSxrSUFBbUIsNkJBQXlCLElBQUM7O1lBRTdDLHNGQUlDO1lBQ0Qsc0ZBRWU7WUFDZix3RkFJYzs7WUFDaEIsaUJBQWEsRUFBQTs7WUFuQlgsZUFBcUI7WUFBckIsdUNBQXFCLDhDQUFBLHVCQUFBLGdDQUFBO1lBT2xCLGVBQWdEO1lBQWhELHlFQUFnRDtZQUl0QyxlQUFvQjtZQUFwQix5Q0FBb0I7WUFHSCxlQUEwQztZQUExQywwRUFBMEM7Ozt1RkRRL0QsdUJBQXVCO2NBTm5DLFNBQVM7MkJBQ0UscUJBQXFCLG1CQUdkLHVCQUF1QixDQUFDLE1BQU07b0VBZ0N0QyxLQUFLO2tCQUFiLEtBQUs7WUFLRyxhQUFhO2tCQUFyQixLQUFLO1lBS0csU0FBUztrQkFBakIsS0FBSztZQUtHLEtBQUs7a0JBQWIsS0FBSztZQUtHLFlBQVk7a0JBQXBCLEtBQUs7WUFLRyxhQUFhO2tCQUFyQixLQUFLO1lBS0csV0FBVztrQkFBbkIsS0FBSztZQUtHLFFBQVE7a0JBQWhCLEtBQUs7WUFLSSxjQUFjO2tCQUF2QixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBJbnB1dCxcbiAgT3V0cHV0LFxuICBFdmVudEVtaXR0ZXIsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgT25Jbml0LFxuICBPbkRlc3Ryb3lcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbmltcG9ydCB7IEVudGl0eVJlY29yZCB9IGZyb20gJy4uL3NoYXJlZC9lbnRpdHkuaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBFbnRpdHlTdG9yZSB9IGZyb20gJy4uL3NoYXJlZC9zdG9yZSc7XG5pbXBvcnQgeyBFbnRpdHlTdG9yZVdhdGNoZXIgfSBmcm9tICcuLi9zaGFyZWQvd2F0Y2hlcic7XG5pbXBvcnQgeyBnZXRFbnRpdHlUaXRsZSB9IGZyb20gJy4uL3NoYXJlZC9lbnRpdHkudXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdpZ28tZW50aXR5LXNlbGVjdG9yJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2VudGl0eS1zZWxlY3Rvci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2VudGl0eS1zZWxlY3Rvci5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxufSlcbmV4cG9ydCBjbGFzcyBFbnRpdHlTZWxlY3RvckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95IHtcbiAgLyoqXG4gICAqIFRoZSBzZWxlY3RlZCBlbnRpdHlcbiAgICogQGludGVybmFsXG4gICAqL1xuICByZWFkb25seSBzZWxlY3RlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG9iamVjdD4odW5kZWZpbmVkKTtcblxuICAvKipcbiAgICogVGhlIGN1cnJlbnQgbXVsdGkgc2VsZWN0IG9wdGlvbiB0ZXh0XG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgcmVhZG9ubHkgbXVsdGlUZXh0JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPih1bmRlZmluZWQpO1xuXG4gIHJlYWRvbmx5IG11bHRpU2VsZWN0VmFsdWUgPSB7IGlkOiAnSUdPX01VTFRJX1NFTEVDVCcgfTtcblxuICByZWFkb25seSBlbXB0eVZhbHVlID0geyBpZDogJ0lHT19FTVBUWV9TRUxFQ1QnIH07XG5cbiAgLyoqXG4gICAqIFN1YnNjcmlwdGlvbiB0byB0aGUgc2VsZWN0ZWQgZW50aXR5XG4gICAqL1xuICBwcml2YXRlIHNlbGVjdGVkJCQ6IFN1YnNjcmlwdGlvbjtcblxuICAvKipcbiAgICogU3RvcmUgd2F0Y2hlclxuICAgKi9cbiAgcHJpdmF0ZSB3YXRjaGVyOiBFbnRpdHlTdG9yZVdhdGNoZXI8b2JqZWN0PjtcblxuICAvKipcbiAgICogRW50aXR5IHN0b3JlXG4gICAqL1xuICBASW5wdXQoKSBzdG9yZTogRW50aXR5U3RvcmU8b2JqZWN0PjtcblxuICAvKipcbiAgICogVGl0bGUgYWNjZXNzb3JcbiAgICovXG4gIEBJbnB1dCgpIHRpdGxlQWNjZXNzb3I6IChvYmplY3QpID0+IHN0cmluZyA9IGdldEVudGl0eVRpdGxlO1xuXG4gIC8qKlxuICAgKiBUZXh0IHRvIGRpc3BsYXkgd2hlbiBub3RoaW5nIGlzIHNlbGVjdGVkXG4gICAqL1xuICBASW5wdXQoKSBlbXB0eVRleHQ6IHN0cmluZyA9IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogV2hldGVyIHNlbGVjdGluZyBtYW55IGVudGl0aWVzIGlzIGFsbG93ZWRcbiAgICovXG4gIEBJbnB1dCgpIG11bHRpOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFRleHQgdG8gZGlzcGxheSBmb3IgdGhlIHNlbGVjdCBhbGwgb3B0aW9uXG4gICAqL1xuICBASW5wdXQoKSBtdWx0aUFsbFRleHQ6IHN0cmluZyA9ICdBbGwnO1xuXG4gIC8qKlxuICAgKiBUZXh0IHRvIGRpc3BsYXkgZm9yIHRoZSBzZWxlY3Qgbm9uZSBvcHRpb25cbiAgICovXG4gIEBJbnB1dCgpIG11bHRpTm9uZVRleHQ6IHN0cmluZyA9ICdOb25lJztcblxuICAvKipcbiAgICogRmllbGQgcGxhY2Vob2xkZXJcbiAgICovXG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRlciB0aGUgc2VsZWN0b3IgaXMgZGlzYWJsZWQgb3Igbm90XG4gICAqL1xuICBASW5wdXQoKSBkaXNhYmxlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBFdmVudCBlbWl0dGVkIHdoZW4gdGhlIHNlbGVjdGlvbiBjaGFuZ2VzXG4gICAqL1xuICBAT3V0cHV0KCkgc2VsZWN0ZWRDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHtcbiAgICBzZWxlY3RlZDogYm9vbGVhbjtcbiAgICB2YWx1ZTogb2JqZWN0IHwgb2JqZWN0W107XG4gIH0+KCk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBhIHN0b3JlIHdhdGNoZXIgYW5kIHN1YnNjcmliZSB0byB0aGUgc2VsZWN0ZWQgZW50aXR5XG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy53YXRjaGVyID0gbmV3IEVudGl0eVN0b3JlV2F0Y2hlcih0aGlzLnN0b3JlLCB0aGlzLmNkUmVmKTtcblxuICAgIHRoaXMuc2VsZWN0ZWQkJCA9IHRoaXMuc3RvcmUuc3RhdGVWaWV3XG4gICAgICAubWFueUJ5JCgocmVjb3JkOiBFbnRpdHlSZWNvcmQ8b2JqZWN0PikgPT4gcmVjb3JkLnN0YXRlLnNlbGVjdGVkID09PSB0cnVlKVxuICAgICAgLnN1YnNjcmliZSgocmVjb3JkczogRW50aXR5UmVjb3JkPG9iamVjdD5bXSkgPT4ge1xuICAgICAgICBjb25zdCBlbnRpdGllcyA9IHJlY29yZHMubWFwKFxuICAgICAgICAgIChyZWNvcmQ6IEVudGl0eVJlY29yZDxvYmplY3Q+KSA9PiByZWNvcmQuZW50aXR5XG4gICAgICAgICk7XG4gICAgICAgIHRoaXMub25TZWxlY3RGcm9tU3RvcmUoZW50aXRpZXMpO1xuICAgICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogVW5zdWJzY3JpYmUgdG8gdGhlIHNlbGVjdGVkIGVudGl0eSBhbmQgZGVzdHJveSB0aGUgc3RvcmUgd2F0Y2hlclxuICAgKiBAaW50ZXJuYWxcbiAgICovXG4gIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMud2F0Y2hlci5kZXN0cm95KCk7XG4gICAgdGhpcy5zZWxlY3RlZCQkLnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICAvKipcbiAgICogT24gc2VsZWN0aW9uIGNoYW5nZSwgdXBkYXRlIHRoZSBzdG9yZSdzIHN0YXRlIGFuZCBlbWl0IGFuIGV2ZW50XG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgb25TZWxlY3Rpb25DaGFuZ2UoZXZlbnQ6IHsgdmFsdWU6IG9iamVjdCB8IHVuZGVmaW5lZCB9KSB7XG4gICAgY29uc3QgdmFsdWVzID0gZXZlbnQudmFsdWUgaW5zdGFuY2VvZiBBcnJheSA/IGV2ZW50LnZhbHVlIDogW2V2ZW50LnZhbHVlXTtcblxuICAgIGNvbnN0IG11bHRpU2VsZWN0ID0gdmFsdWVzLmZpbmQoXG4gICAgICAoX3ZhbHVlOiBvYmplY3QpID0+IF92YWx1ZSA9PT0gdGhpcy5tdWx0aVNlbGVjdFZhbHVlXG4gICAgKTtcbiAgICBsZXQgZW50aXRpZXMgPSB2YWx1ZXMuZmlsdGVyKFxuICAgICAgKF92YWx1ZTogb2JqZWN0KSA9PiBfdmFsdWUgIT09IHRoaXMubXVsdGlTZWxlY3RWYWx1ZVxuICAgICk7XG4gICAgaWYgKG11bHRpU2VsZWN0ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIGlmIChlbnRpdGllcy5sZW5ndGggPT09IHRoaXMuc3RvcmUuY291bnQpIHtcbiAgICAgICAgZW50aXRpZXMgPSBbXTtcbiAgICAgIH0gZWxzZSBpZiAoZW50aXRpZXMubGVuZ3RoIDwgdGhpcy5zdG9yZS5jb3VudCkge1xuICAgICAgICBlbnRpdGllcyA9IHRoaXMuc3RvcmUuYWxsKCk7XG4gICAgICB9XG4gICAgfVxuXG4gICAgZW50aXRpZXMgPSBlbnRpdGllcy5maWx0ZXIoKGVudGl0eTogb2JqZWN0KSA9PiBlbnRpdHkgIT09IHRoaXMuZW1wdHlWYWx1ZSk7XG4gICAgaWYgKGVudGl0aWVzLmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5zdG9yZS5zdGF0ZS51cGRhdGVBbGwoeyBzZWxlY3RlZDogZmFsc2UgfSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMuc3RvcmUuc3RhdGUudXBkYXRlTWFueShlbnRpdGllcywgeyBzZWxlY3RlZDogdHJ1ZSB9LCB0cnVlKTtcbiAgICB9XG5cbiAgICBjb25zdCB2YWx1ZSA9IHRoaXMubXVsdGkgPyBlbnRpdGllcyA6IGV2ZW50LnZhbHVlO1xuICAgIHRoaXMuc2VsZWN0ZWRDaGFuZ2UuZW1pdCh7IHNlbGVjdGVkOiB0cnVlLCB2YWx1ZSB9KTtcbiAgfVxuXG4gIHByaXZhdGUgb25TZWxlY3RGcm9tU3RvcmUoZW50aXRpZXM6IG9iamVjdFtdKSB7XG4gICAgaWYgKHRoaXMubXVsdGkgPT09IHRydWUpIHtcbiAgICAgIHRoaXMuc2VsZWN0ZWQkLm5leHQoZW50aXRpZXMpO1xuICAgIH0gZWxzZSB7XG4gICAgICBjb25zdCBlbnRpdHkgPSBlbnRpdGllcy5sZW5ndGggPiAwID8gZW50aXRpZXNbMF0gOiB1bmRlZmluZWQ7XG4gICAgICB0aGlzLnNlbGVjdGVkJC5uZXh0KGVudGl0eSk7XG4gICAgfVxuXG4gICAgdGhpcy51cGRhdGVNdWx0aVRvZ2dsZVdpdGhFbnRpdGllcyhlbnRpdGllcyk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZU11bHRpVG9nZ2xlV2l0aEVudGl0aWVzKGVudGl0aWVzOiBvYmplY3RbXSkge1xuICAgIGlmIChcbiAgICAgIGVudGl0aWVzLmxlbmd0aCA9PT0gdGhpcy5zdG9yZS5jb3VudCAmJlxuICAgICAgdGhpcy5tdWx0aVRleHQkLnZhbHVlICE9PSB0aGlzLm11bHRpTm9uZVRleHRcbiAgICApIHtcbiAgICAgIHRoaXMubXVsdGlUZXh0JC5uZXh0KHRoaXMubXVsdGlOb25lVGV4dCk7XG4gICAgfSBlbHNlIGlmIChcbiAgICAgIGVudGl0aWVzLmxlbmd0aCA8IHRoaXMuc3RvcmUuY291bnQgJiZcbiAgICAgIHRoaXMubXVsdGlUZXh0JC52YWx1ZSAhPT0gdGhpcy5tdWx0aUFsbFRleHRcbiAgICApIHtcbiAgICAgIHRoaXMubXVsdGlUZXh0JC5uZXh0KHRoaXMubXVsdGlBbGxUZXh0KTtcbiAgICB9XG4gIH1cbn1cbiIsIjxtYXQtZm9ybS1maWVsZCBjbGFzcz1cImlnby1lbnRpdHktc2VsZWN0b3JcIiBzdWJzY3JpcHRTaXppbmc9XCJkeW5hbWljXCI+XG4gIDxtYXQtc2VsZWN0XG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICBbdmFsdWVdPVwic2VsZWN0ZWQkIHwgYXN5bmNcIlxuICAgIFttdWx0aXBsZV09XCJtdWx0aVwiXG4gICAgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCJcbiAgICAoc2VsZWN0aW9uQ2hhbmdlKT1cIm9uU2VsZWN0aW9uQ2hhbmdlKCRldmVudClcIlxuICA+XG4gICAgPG1hdC1vcHRpb25cbiAgICAgICpuZ0lmPVwiZW1wdHlUZXh0ICE9PSB1bmRlZmluZWQgJiYgbXVsdGkgPT09IGZhbHNlXCJcbiAgICAgIFt2YWx1ZV09XCJlbXB0eVZhbHVlXCJcbiAgICAgID57eyBlbXB0eVRleHQgfX08L21hdC1vcHRpb25cbiAgICA+XG4gICAgPG1hdC1vcHRpb24gKm5nSWY9XCJtdWx0aSA9PT0gdHJ1ZVwiIFt2YWx1ZV09XCJtdWx0aVNlbGVjdFZhbHVlXCI+e3tcbiAgICAgIG11bHRpVGV4dCQgfCBhc3luY1xuICAgIH19PC9tYXQtb3B0aW9uPlxuICAgIDxuZy10ZW1wbGF0ZSBuZ0ZvciBsZXQtcmVjb3JkIFtuZ0Zvck9mXT1cInN0b3JlLnN0YXRlVmlldy5hbGwkKCkgfCBhc3luY1wiPlxuICAgICAgPG1hdC1vcHRpb24gW3ZhbHVlXT1cInJlY29yZC5lbnRpdHlcIj5cbiAgICAgICAge3sgdGl0bGVBY2Nlc3NvcihyZWNvcmQuZW50aXR5KSB9fVxuICAgICAgPC9tYXQtb3B0aW9uPlxuICAgIDwvbmctdGVtcGxhdGU+XG4gIDwvbWF0LXNlbGVjdD5cbjwvbWF0LWZvcm0tZmllbGQ+XG4iXX0=
@@ -0,0 +1,24 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { FormsModule } from '@angular/forms';
4
+ import { MatSelectModule } from '@angular/material/select';
5
+ import { EntitySelectorComponent } from './entity-selector.component';
6
+ import * as i0 from "@angular/core";
7
+ /**
8
+ * @ignore
9
+ */
10
+ export class IgoEntitySelectorModule {
11
+ static ɵfac = function IgoEntitySelectorModule_Factory(t) { return new (t || IgoEntitySelectorModule)(); };
12
+ static ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: IgoEntitySelectorModule });
13
+ static ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule, FormsModule, MatSelectModule] });
14
+ }
15
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(IgoEntitySelectorModule, [{
16
+ type: NgModule,
17
+ args: [{
18
+ imports: [CommonModule, FormsModule, MatSelectModule],
19
+ exports: [EntitySelectorComponent],
20
+ declarations: [EntitySelectorComponent]
21
+ }]
22
+ }], null, null); })();
23
+ (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(IgoEntitySelectorModule, { declarations: [EntitySelectorComponent], imports: [CommonModule, FormsModule, MatSelectModule], exports: [EntitySelectorComponent] }); })();
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXNlbGVjdG9yLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvbGliL2VudGl0eS9lbnRpdHktc2VsZWN0b3IvZW50aXR5LXNlbGVjdG9yLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFN0MsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRTNELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDOztBQUV0RTs7R0FFRztBQU1ILE1BQU0sT0FBTyx1QkFBdUI7aUZBQXZCLHVCQUF1Qjs0REFBdkIsdUJBQXVCO2dFQUp4QixZQUFZLEVBQUUsV0FBVyxFQUFFLGVBQWU7O3VGQUl6Qyx1QkFBdUI7Y0FMbkMsUUFBUTtlQUFDO2dCQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxXQUFXLEVBQUUsZUFBZSxDQUFDO2dCQUNyRCxPQUFPLEVBQUUsQ0FBQyx1QkFBdUIsQ0FBQztnQkFDbEMsWUFBWSxFQUFFLENBQUMsdUJBQXVCLENBQUM7YUFDeEM7O3dGQUNZLHVCQUF1QixtQkFGbkIsdUJBQXVCLGFBRjVCLFlBQVksRUFBRSxXQUFXLEVBQUUsZUFBZSxhQUMxQyx1QkFBdUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuXG5pbXBvcnQgeyBNYXRTZWxlY3RNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zZWxlY3QnO1xuXG5pbXBvcnQgeyBFbnRpdHlTZWxlY3RvckNvbXBvbmVudCB9IGZyb20gJy4vZW50aXR5LXNlbGVjdG9yLmNvbXBvbmVudCc7XG5cbi8qKlxuICogQGlnbm9yZVxuICovXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLCBGb3Jtc01vZHVsZSwgTWF0U2VsZWN0TW9kdWxlXSxcbiAgZXhwb3J0czogW0VudGl0eVNlbGVjdG9yQ29tcG9uZW50XSxcbiAgZGVjbGFyYXRpb25zOiBbRW50aXR5U2VsZWN0b3JDb21wb25lbnRdXG59KVxuZXhwb3J0IGNsYXNzIElnb0VudGl0eVNlbGVjdG9yTW9kdWxlIHt9XG4iXX0=
@@ -0,0 +1,139 @@
1
+ import { Directive, Input, ElementRef, Renderer2, EventEmitter, Output, HostListener } from '@angular/core';
2
+ import scrollIntoView from 'scroll-into-view-if-needed';
3
+ import { EntityTableScrollBehavior } from '../shared/entity.enums';
4
+ import * as i0 from "@angular/core";
5
+ /**
6
+ * Directive that handles an entity table row click and selection.
7
+ */
8
+ export class EntityTableRowDirective {
9
+ renderer;
10
+ el;
11
+ /**
12
+ * Class added to a selected row
13
+ */
14
+ static selectedCls = 'igo-entity-table-row-selected';
15
+ /**
16
+ * Class added to a highlighted row
17
+ */
18
+ static highlightedCls = 'igo-entity-table-row-highlighted';
19
+ /**
20
+ * Whether a row supports selection
21
+ */
22
+ selection = false;
23
+ /**
24
+ * Whether clicking a row should select it (if selection is true)
25
+ */
26
+ selectOnClick = true;
27
+ /**
28
+ * Whether the selected row should be highlighted
29
+ */
30
+ highlightSelection = true;
31
+ /**
32
+ * Whether a row is selected
33
+ */
34
+ set selected(value) {
35
+ if (this.selection === false) {
36
+ return;
37
+ }
38
+ if (value === this._selected) {
39
+ return;
40
+ }
41
+ this.toggleSelected(value);
42
+ this.scroll();
43
+ }
44
+ get selected() {
45
+ return this._selected;
46
+ }
47
+ _selected = false;
48
+ /**
49
+ * Scroll behavior on selection
50
+ */
51
+ scrollBehavior = EntityTableScrollBehavior.Auto;
52
+ /**
53
+ * Event emitted when a row is selected
54
+ */
55
+ select = new EventEmitter();
56
+ /**
57
+ * When a row is clicked, select it if it's supported
58
+ * @ignore
59
+ */
60
+ onClick() {
61
+ if (this.selection === false || this.selectOnClick === false) {
62
+ return;
63
+ }
64
+ this.toggleSelected(true);
65
+ this.select.emit(this);
66
+ }
67
+ constructor(renderer, el) {
68
+ this.renderer = renderer;
69
+ this.el = el;
70
+ }
71
+ /**
72
+ * Select a row and add or remove the selected class from it
73
+ * @param selected Whether the row should be selected
74
+ */
75
+ toggleSelected(selected) {
76
+ this._selected = selected;
77
+ if (selected === true) {
78
+ this.addCls(EntityTableRowDirective.selectedCls);
79
+ if (this.highlightSelection === true) {
80
+ this.addCls(EntityTableRowDirective.highlightedCls);
81
+ }
82
+ }
83
+ else {
84
+ this.removeCls(EntityTableRowDirective.selectedCls);
85
+ this.removeCls(EntityTableRowDirective.highlightedCls);
86
+ }
87
+ }
88
+ /**
89
+ * Scroll to the selected row
90
+ */
91
+ scroll() {
92
+ if (this._selected === true) {
93
+ scrollIntoView(this.el.nativeElement, {
94
+ scrollMode: 'if-needed',
95
+ behavior: 'smooth',
96
+ block: 'end',
97
+ inline: 'nearest'
98
+ });
99
+ }
100
+ }
101
+ /**
102
+ * Add the selected CSS class
103
+ */
104
+ addCls(cls) {
105
+ this.renderer.addClass(this.el.nativeElement, cls);
106
+ }
107
+ /**
108
+ * Remove the selected CSS class
109
+ */
110
+ removeCls(cls) {
111
+ this.renderer.removeClass(this.el.nativeElement, cls);
112
+ }
113
+ static ɵfac = function EntityTableRowDirective_Factory(t) { return new (t || EntityTableRowDirective)(i0.ɵɵdirectiveInject(i0.Renderer2), i0.ɵɵdirectiveInject(i0.ElementRef)); };
114
+ static ɵdir = /*@__PURE__*/ i0.ɵɵdefineDirective({ type: EntityTableRowDirective, selectors: [["", "igoEntityTableRow", ""]], hostBindings: function EntityTableRowDirective_HostBindings(rf, ctx) { if (rf & 1) {
115
+ i0.ɵɵlistener("click", function EntityTableRowDirective_click_HostBindingHandler() { return ctx.onClick(); });
116
+ } }, inputs: { selection: "selection", selectOnClick: "selectOnClick", highlightSelection: "highlightSelection", selected: "selected", scrollBehavior: "scrollBehavior" }, outputs: { select: "select" } });
117
+ }
118
+ (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EntityTableRowDirective, [{
119
+ type: Directive,
120
+ args: [{
121
+ selector: '[igoEntityTableRow]'
122
+ }]
123
+ }], function () { return [{ type: i0.Renderer2 }, { type: i0.ElementRef }]; }, { selection: [{
124
+ type: Input
125
+ }], selectOnClick: [{
126
+ type: Input
127
+ }], highlightSelection: [{
128
+ type: Input
129
+ }], selected: [{
130
+ type: Input
131
+ }], scrollBehavior: [{
132
+ type: Input
133
+ }], select: [{
134
+ type: Output
135
+ }], onClick: [{
136
+ type: HostListener,
137
+ args: ['click']
138
+ }] }); })();
139
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW50aXR5LXRhYmxlLXJvdy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vc3JjL2xpYi9lbnRpdHkvZW50aXR5LXRhYmxlL2VudGl0eS10YWJsZS1yb3cuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLFVBQVUsRUFDVixTQUFTLEVBQ1QsWUFBWSxFQUNaLE1BQU0sRUFDTixZQUFZLEVBQ2IsTUFBTSxlQUFlLENBQUM7QUFFdkIsT0FBTyxjQUFjLE1BQU0sNEJBQTRCLENBQUM7QUFFeEQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sd0JBQXdCLENBQUM7O0FBRW5FOztHQUVHO0FBSUgsTUFBTSxPQUFPLHVCQUF1QjtJQXdFeEI7SUFDQTtJQXhFVjs7T0FFRztJQUNILE1BQU0sQ0FBQyxXQUFXLEdBQUcsK0JBQStCLENBQUM7SUFFckQ7O09BRUc7SUFDSCxNQUFNLENBQUMsY0FBYyxHQUFHLGtDQUFrQyxDQUFDO0lBRTNEOztPQUVHO0lBQ00sU0FBUyxHQUFHLEtBQUssQ0FBQztJQUUzQjs7T0FFRztJQUNNLGFBQWEsR0FBWSxJQUFJLENBQUM7SUFFdkM7O09BRUc7SUFDTSxrQkFBa0IsR0FBWSxJQUFJLENBQUM7SUFFNUM7O09BRUc7SUFDSCxJQUNJLFFBQVEsQ0FBQyxLQUFjO1FBQ3pCLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxLQUFLLEVBQUU7WUFDNUIsT0FBTztTQUNSO1FBQ0QsSUFBSSxLQUFLLEtBQUssSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUM1QixPQUFPO1NBQ1I7UUFFRCxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNCLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztJQUNoQixDQUFDO0lBQ0QsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQ3hCLENBQUM7SUFDTyxTQUFTLEdBQUcsS0FBSyxDQUFDO0lBRTFCOztPQUVHO0lBRUgsY0FBYyxHQUE4Qix5QkFBeUIsQ0FBQyxJQUFJLENBQUM7SUFFM0U7O09BRUc7SUFDTyxNQUFNLEdBQUcsSUFBSSxZQUFZLEVBQTJCLENBQUM7SUFFL0Q7OztPQUdHO0lBRUgsT0FBTztRQUNMLElBQUksSUFBSSxDQUFDLFNBQVMsS0FBSyxLQUFLLElBQUksSUFBSSxDQUFDLGFBQWEsS0FBSyxLQUFLLEVBQUU7WUFDNUQsT0FBTztTQUNSO1FBRUQsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMxQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRUQsWUFDVSxRQUFtQixFQUNuQixFQUFjO1FBRGQsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQUNuQixPQUFFLEdBQUYsRUFBRSxDQUFZO0lBQ3JCLENBQUM7SUFFSjs7O09BR0c7SUFDSyxjQUFjLENBQUMsUUFBaUI7UUFDdEMsSUFBSSxDQUFDLFNBQVMsR0FBRyxRQUFRLENBQUM7UUFDMUIsSUFBSSxRQUFRLEtBQUssSUFBSSxFQUFFO1lBQ3JCLElBQUksQ0FBQyxNQUFNLENBQUMsdUJBQXVCLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDakQsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEtBQUssSUFBSSxFQUFFO2dCQUNwQyxJQUFJLENBQUMsTUFBTSxDQUFDLHVCQUF1QixDQUFDLGNBQWMsQ0FBQyxDQUFDO2FBQ3JEO1NBQ0Y7YUFBTTtZQUNMLElBQUksQ0FBQyxTQUFTLENBQUMsdUJBQXVCLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDcEQsSUFBSSxDQUFDLFNBQVMsQ0FBQyx1QkFBdUIsQ0FBQyxjQUFjLENBQUMsQ0FBQztTQUN4RDtJQUNILENBQUM7SUFFRDs7T0FFRztJQUNLLE1BQU07UUFDWixJQUFJLElBQUksQ0FBQyxTQUFTLEtBQUssSUFBSSxFQUFFO1lBQzNCLGNBQWMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLGFBQWEsRUFBRTtnQkFDcEMsVUFBVSxFQUFFLFdBQVc7Z0JBQ3ZCLFFBQVEsRUFBRSxRQUFRO2dCQUNsQixLQUFLLEVBQUUsS0FBSztnQkFDWixNQUFNLEVBQUUsU0FBUzthQUNsQixDQUFDLENBQUM7U0FDSjtJQUNILENBQUM7SUFFRDs7T0FFRztJQUNLLE1BQU0sQ0FBQyxHQUFXO1FBQ3hCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFFRDs7T0FFRztJQUNLLFNBQVMsQ0FBQyxHQUFXO1FBQzNCLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsYUFBYSxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ3hELENBQUM7aUZBdkhVLHVCQUF1Qjs2REFBdkIsdUJBQXVCO3dHQUF2QixhQUFTOzs7dUZBQVQsdUJBQXVCO2NBSG5DLFNBQVM7ZUFBQztnQkFDVCxRQUFRLEVBQUUscUJBQXFCO2FBQ2hDO3FGQWVVLFNBQVM7a0JBQWpCLEtBQUs7WUFLRyxhQUFhO2tCQUFyQixLQUFLO1lBS0csa0JBQWtCO2tCQUExQixLQUFLO1lBTUYsUUFBUTtrQkFEWCxLQUFLO1lBcUJOLGNBQWM7a0JBRGIsS0FBSztZQU1JLE1BQU07a0JBQWYsTUFBTTtZQU9QLE9BQU87a0JBRE4sWUFBWTttQkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgRGlyZWN0aXZlLFxuICBJbnB1dCxcbiAgRWxlbWVudFJlZixcbiAgUmVuZGVyZXIyLFxuICBFdmVudEVtaXR0ZXIsXG4gIE91dHB1dCxcbiAgSG9zdExpc3RlbmVyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgc2Nyb2xsSW50b1ZpZXcgZnJvbSAnc2Nyb2xsLWludG8tdmlldy1pZi1uZWVkZWQnO1xuXG5pbXBvcnQgeyBFbnRpdHlUYWJsZVNjcm9sbEJlaGF2aW9yIH0gZnJvbSAnLi4vc2hhcmVkL2VudGl0eS5lbnVtcyc7XG5cbi8qKlxuICogRGlyZWN0aXZlIHRoYXQgaGFuZGxlcyBhbiBlbnRpdHkgdGFibGUgcm93IGNsaWNrIGFuZCBzZWxlY3Rpb24uXG4gKi9cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tpZ29FbnRpdHlUYWJsZVJvd10nXG59KVxuZXhwb3J0IGNsYXNzIEVudGl0eVRhYmxlUm93RGlyZWN0aXZlIHtcbiAgLyoqXG4gICAqIENsYXNzIGFkZGVkIHRvIGEgc2VsZWN0ZWQgcm93XG4gICAqL1xuICBzdGF0aWMgc2VsZWN0ZWRDbHMgPSAnaWdvLWVudGl0eS10YWJsZS1yb3ctc2VsZWN0ZWQnO1xuXG4gIC8qKlxuICAgKiBDbGFzcyBhZGRlZCB0byBhIGhpZ2hsaWdodGVkIHJvd1xuICAgKi9cbiAgc3RhdGljIGhpZ2hsaWdodGVkQ2xzID0gJ2lnby1lbnRpdHktdGFibGUtcm93LWhpZ2hsaWdodGVkJztcblxuICAvKipcbiAgICogV2hldGhlciBhIHJvdyBzdXBwb3J0cyBzZWxlY3Rpb25cbiAgICovXG4gIEBJbnB1dCgpIHNlbGVjdGlvbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIGNsaWNraW5nIGEgcm93IHNob3VsZCBzZWxlY3QgaXQgKGlmIHNlbGVjdGlvbiBpcyB0cnVlKVxuICAgKi9cbiAgQElucHV0KCkgc2VsZWN0T25DbGljazogYm9vbGVhbiA9IHRydWU7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIHNlbGVjdGVkIHJvdyBzaG91bGQgYmUgaGlnaGxpZ2h0ZWRcbiAgICovXG4gIEBJbnB1dCgpIGhpZ2hsaWdodFNlbGVjdGlvbjogYm9vbGVhbiA9IHRydWU7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgYSByb3cgaXMgc2VsZWN0ZWRcbiAgICovXG4gIEBJbnB1dCgpXG4gIHNldCBzZWxlY3RlZCh2YWx1ZTogYm9vbGVhbikge1xuICAgIGlmICh0aGlzLnNlbGVjdGlvbiA9PT0gZmFsc2UpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgaWYgKHZhbHVlID09PSB0aGlzLl9zZWxlY3RlZCkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMudG9nZ2xlU2VsZWN0ZWQodmFsdWUpO1xuICAgIHRoaXMuc2Nyb2xsKCk7XG4gIH1cbiAgZ2V0IHNlbGVjdGVkKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLl9zZWxlY3RlZDtcbiAgfVxuICBwcml2YXRlIF9zZWxlY3RlZCA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBTY3JvbGwgYmVoYXZpb3Igb24gc2VsZWN0aW9uXG4gICAqL1xuICBASW5wdXQoKVxuICBzY3JvbGxCZWhhdmlvcjogRW50aXR5VGFibGVTY3JvbGxCZWhhdmlvciA9IEVudGl0eVRhYmxlU2Nyb2xsQmVoYXZpb3IuQXV0bztcblxuICAvKipcbiAgICogRXZlbnQgZW1pdHRlZCB3aGVuIGEgcm93IGlzIHNlbGVjdGVkXG4gICAqL1xuICBAT3V0cHV0KCkgc2VsZWN0ID0gbmV3IEV2ZW50RW1pdHRlcjxFbnRpdHlUYWJsZVJvd0RpcmVjdGl2ZT4oKTtcblxuICAvKipcbiAgICogV2hlbiBhIHJvdyBpcyBjbGlja2VkLCBzZWxlY3QgaXQgaWYgaXQncyBzdXBwb3J0ZWRcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgQEhvc3RMaXN0ZW5lcignY2xpY2snKVxuICBvbkNsaWNrKCkge1xuICAgIGlmICh0aGlzLnNlbGVjdGlvbiA9PT0gZmFsc2UgfHwgdGhpcy5zZWxlY3RPbkNsaWNrID09PSBmYWxzZSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIHRoaXMudG9nZ2xlU2VsZWN0ZWQodHJ1ZSk7XG4gICAgdGhpcy5zZWxlY3QuZW1pdCh0aGlzKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMixcbiAgICBwcml2YXRlIGVsOiBFbGVtZW50UmVmXG4gICkge31cblxuICAvKipcbiAgICogU2VsZWN0IGEgcm93IGFuZCBhZGQgb3IgcmVtb3ZlIHRoZSBzZWxlY3RlZCBjbGFzcyBmcm9tIGl0XG4gICAqIEBwYXJhbSBzZWxlY3RlZCBXaGV0aGVyIHRoZSByb3cgc2hvdWxkIGJlIHNlbGVjdGVkXG4gICAqL1xuICBwcml2YXRlIHRvZ2dsZVNlbGVjdGVkKHNlbGVjdGVkOiBib29sZWFuKSB7XG4gICAgdGhpcy5fc2VsZWN0ZWQgPSBzZWxlY3RlZDtcbiAgICBpZiAoc2VsZWN0ZWQgPT09IHRydWUpIHtcbiAgICAgIHRoaXMuYWRkQ2xzKEVudGl0eVRhYmxlUm93RGlyZWN0aXZlLnNlbGVjdGVkQ2xzKTtcbiAgICAgIGlmICh0aGlzLmhpZ2hsaWdodFNlbGVjdGlvbiA9PT0gdHJ1ZSkge1xuICAgICAgICB0aGlzLmFkZENscyhFbnRpdHlUYWJsZVJvd0RpcmVjdGl2ZS5oaWdobGlnaHRlZENscyk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucmVtb3ZlQ2xzKEVudGl0eVRhYmxlUm93RGlyZWN0aXZlLnNlbGVjdGVkQ2xzKTtcbiAgICAgIHRoaXMucmVtb3ZlQ2xzKEVudGl0eVRhYmxlUm93RGlyZWN0aXZlLmhpZ2hsaWdodGVkQ2xzKTtcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogU2Nyb2xsIHRvIHRoZSBzZWxlY3RlZCByb3dcbiAgICovXG4gIHByaXZhdGUgc2Nyb2xsKCkge1xuICAgIGlmICh0aGlzLl9zZWxlY3RlZCA9PT0gdHJ1ZSkge1xuICAgICAgc2Nyb2xsSW50b1ZpZXcodGhpcy5lbC5uYXRpdmVFbGVtZW50LCB7XG4gICAgICAgIHNjcm9sbE1vZGU6ICdpZi1uZWVkZWQnLFxuICAgICAgICBiZWhhdmlvcjogJ3Ntb290aCcsXG4gICAgICAgIGJsb2NrOiAnZW5kJyxcbiAgICAgICAgaW5saW5lOiAnbmVhcmVzdCdcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgdGhlIHNlbGVjdGVkIENTUyBjbGFzc1xuICAgKi9cbiAgcHJpdmF0ZSBhZGRDbHMoY2xzOiBzdHJpbmcpIHtcbiAgICB0aGlzLnJlbmRlcmVyLmFkZENsYXNzKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgY2xzKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW1vdmUgdGhlIHNlbGVjdGVkIENTUyBjbGFzc1xuICAgKi9cbiAgcHJpdmF0ZSByZW1vdmVDbHMoY2xzOiBzdHJpbmcpIHtcbiAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuZWwubmF0aXZlRWxlbWVudCwgY2xzKTtcbiAgfVxufVxuIl19