@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,204 @@
1
+ .shepherd-button {
2
+ background: #3288e6;
3
+ border: 0;
4
+ border-radius: 3px;
5
+ color: hsla(0, 0%, 100%, 0.75);
6
+ cursor: pointer;
7
+ margin-right: 0.5rem;
8
+ padding: 0.5rem 1.5rem;
9
+ transition: all 0.5s ease;
10
+ }
11
+
12
+ .shepherd-button:not(:disabled):hover {
13
+ background: #196fcc;
14
+ color: hsla(0, 0%, 100%, 0.75);
15
+ }
16
+
17
+ .shepherd-button.shepherd-button-secondary {
18
+ background: #f1f2f3;
19
+ color: rgba(0, 0, 0, 0.75);
20
+ }
21
+
22
+ .shepherd-button.shepherd-button-secondary:not(:disabled):hover {
23
+ background: #d6d9db;
24
+ color: rgba(0, 0, 0, 0.75);
25
+ }
26
+
27
+ .shepherd-button:disabled {
28
+ cursor: not-allowed;
29
+ }
30
+
31
+ .shepherd-footer {
32
+ border-bottom-left-radius: 5px;
33
+ border-bottom-right-radius: 5px;
34
+ display: flex;
35
+ justify-content: flex-end;
36
+ padding: 0 0.75rem 0.75rem;
37
+ }
38
+
39
+ .shepherd-footer .shepherd-button:last-child {
40
+ margin-right: 0;
41
+ }
42
+
43
+ .shepherd-cancel-icon {
44
+ background: transparent;
45
+ border: none;
46
+ color: hsla(0, 0%, 50%, 0.75);
47
+ cursor: pointer;
48
+ font-size: 2em;
49
+ font-weight: 400;
50
+ margin: 0;
51
+ padding: 0;
52
+ transition: color 0.5s ease;
53
+ }
54
+
55
+ .shepherd-cancel-icon:hover {
56
+ color: rgba(0, 0, 0, 0.75);
57
+ }
58
+
59
+ .shepherd-has-title .shepherd-content .shepherd-cancel-icon {
60
+ color: hsla(0, 0%, 50%, 0.75);
61
+ }
62
+
63
+ .shepherd-has-title .shepherd-content .shepherd-cancel-icon:hover {
64
+ color: rgba(0, 0, 0, 0.75);
65
+ }
66
+
67
+ .shepherd-title {
68
+ color: rgba(0, 0, 0, 0.75);
69
+ display: flex;
70
+ flex: 1 0 auto;
71
+ font-size: 1rem;
72
+ font-weight: 400;
73
+ margin: 0;
74
+ padding: 0;
75
+ }
76
+
77
+ .shepherd-header {
78
+ align-items: center;
79
+ border-top-left-radius: 5px;
80
+ border-top-right-radius: 5px;
81
+ display: flex;
82
+ justify-content: flex-end;
83
+ line-height: 2em;
84
+ padding: 0.75rem 0.75rem 0;
85
+ }
86
+
87
+ .shepherd-has-title .shepherd-content .shepherd-header {
88
+ background: #e6e6e6;
89
+ padding: 1em;
90
+ }
91
+
92
+ .shepherd-text {
93
+ color: rgba(0, 0, 0, 0.75);
94
+ font-size: 1rem;
95
+ line-height: 1.3em;
96
+ padding: 0.75em;
97
+ }
98
+
99
+ .shepherd-text p {
100
+ margin-top: 0;
101
+ }
102
+
103
+ .shepherd-text p:last-child {
104
+ margin-bottom: 0;
105
+ }
106
+
107
+ .shepherd-content {
108
+ border-radius: 5px;
109
+ outline: none;
110
+ padding: 0;
111
+ }
112
+
113
+ .shepherd-element {
114
+ background: #fff;
115
+ border-radius: 5px;
116
+ box-shadow: 0 1px 4px rgba(0, 0, 0, 0.2);
117
+ max-width: 400px;
118
+ opacity: 0;
119
+ outline: none;
120
+ transition: opacity 0.3s, visibility 0.3s;
121
+ visibility: hidden;
122
+ width: 100%;
123
+ z-index: 9999;
124
+ }
125
+
126
+ .shepherd-enabled.shepherd-element {
127
+ opacity: 1;
128
+ visibility: visible;
129
+ }
130
+
131
+ .shepherd-element[data-popper-reference-hidden]:not(.shepherd-centered) {
132
+ opacity: 0;
133
+ pointer-events: none;
134
+ visibility: hidden;
135
+ }
136
+
137
+ .shepherd-element, .shepherd-element *, .shepherd-element :after, .shepherd-element :before {
138
+ box-sizing: border-box;
139
+ }
140
+
141
+ .shepherd-arrow, .shepherd-arrow:before {
142
+ height: 16px;
143
+ position: absolute;
144
+ width: 16px;
145
+ z-index: -1;
146
+ }
147
+
148
+ .shepherd-arrow:before {
149
+ background: #fff;
150
+ content: "";
151
+ transform: rotate(45deg);
152
+ }
153
+
154
+ .shepherd-element[data-popper-placement^=top] > .shepherd-arrow {
155
+ bottom: -8px;
156
+ }
157
+
158
+ .shepherd-element[data-popper-placement^=bottom] > .shepherd-arrow {
159
+ top: -8px;
160
+ }
161
+
162
+ .shepherd-element[data-popper-placement^=left] > .shepherd-arrow {
163
+ right: -8px;
164
+ }
165
+
166
+ .shepherd-element[data-popper-placement^=right] > .shepherd-arrow {
167
+ left: -8px;
168
+ }
169
+
170
+ .shepherd-element.shepherd-centered > .shepherd-arrow {
171
+ opacity: 0;
172
+ }
173
+
174
+ .shepherd-element.shepherd-has-title[data-popper-placement^=bottom] > .shepherd-arrow:before {
175
+ background-color: #e6e6e6;
176
+ }
177
+
178
+ .shepherd-target-click-disabled.shepherd-enabled.shepherd-target, .shepherd-target-click-disabled.shepherd-enabled.shepherd-target * {
179
+ pointer-events: none;
180
+ }
181
+
182
+ .shepherd-modal-overlay-container {
183
+ height: 0;
184
+ left: 0;
185
+ opacity: 0;
186
+ overflow: hidden;
187
+ pointer-events: none;
188
+ position: fixed;
189
+ top: 0;
190
+ transition: all 0.3s ease-out, height 0ms 0.3s, opacity 0.3s 0ms;
191
+ width: 100vw;
192
+ z-index: 9997;
193
+ }
194
+
195
+ .shepherd-modal-overlay-container.shepherd-modal-is-visible {
196
+ height: 100vh;
197
+ opacity: 0.5;
198
+ transform: translateZ(0);
199
+ transition: all 0.3s ease-out, height 0s 0s, opacity 0.3s 0s;
200
+ }
201
+
202
+ .shepherd-modal-overlay-container.shepherd-modal-is-visible path {
203
+ pointer-events: all;
204
+ }
@@ -1,27 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { IgoActionbarModule } from './actionbar/actionbar.module';
4
- import * as i0 from "@angular/core";
5
- export class IgoActionModule {
6
- }
7
- IgoActionModule.ɵfac = function IgoActionModule_Factory(t) { return new (t || IgoActionModule)(); };
8
- IgoActionModule.ɵmod = /*@__PURE__*/ i0.ɵɵdefineNgModule({ type: IgoActionModule });
9
- IgoActionModule.ɵinj = /*@__PURE__*/ i0.ɵɵdefineInjector({ imports: [CommonModule,
10
- IgoActionbarModule, IgoActionbarModule] });
11
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(IgoActionModule, [{
12
- type: NgModule,
13
- args: [{
14
- imports: [
15
- CommonModule,
16
- IgoActionbarModule
17
- ],
18
- exports: [
19
- IgoActionbarModule
20
- ],
21
- declarations: [],
22
- providers: []
23
- }]
24
- }], null, null); })();
25
- (function () { (typeof ngJitMode === "undefined" || ngJitMode) && i0.ɵɵsetNgModuleScope(IgoActionModule, { imports: [CommonModule,
26
- IgoActionbarModule], exports: [IgoActionbarModule] }); })();
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbW1vbi9zcmMvbGliL2FjdGlvbi9hY3Rpb24ubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRS9DLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQWFsRSxNQUFNLE9BQU8sZUFBZTs7OEVBQWYsZUFBZTtpRUFBZixlQUFlO3FFQVR4QixZQUFZO1FBQ1osa0JBQWtCLEVBR2xCLGtCQUFrQjt1RkFLVCxlQUFlO2NBWDNCLFFBQVE7ZUFBQztnQkFDUixPQUFPLEVBQUU7b0JBQ1AsWUFBWTtvQkFDWixrQkFBa0I7aUJBQ25CO2dCQUNELE9BQU8sRUFBRTtvQkFDUCxrQkFBa0I7aUJBQ25CO2dCQUNELFlBQVksRUFBRSxFQUFFO2dCQUNoQixTQUFTLEVBQUUsRUFBRTthQUNkOzt3RkFDWSxlQUFlLGNBVHhCLFlBQVk7UUFDWixrQkFBa0IsYUFHbEIsa0JBQWtCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuXHJcbmltcG9ydCB7IElnb0FjdGlvbmJhck1vZHVsZSB9IGZyb20gJy4vYWN0aW9uYmFyL2FjdGlvbmJhci5tb2R1bGUnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBbXHJcbiAgICBDb21tb25Nb2R1bGUsXHJcbiAgICBJZ29BY3Rpb25iYXJNb2R1bGVcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtcclxuICAgIElnb0FjdGlvbmJhck1vZHVsZVxyXG4gIF0sXHJcbiAgZGVjbGFyYXRpb25zOiBbXSxcclxuICBwcm92aWRlcnM6IFtdXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBJZ29BY3Rpb25Nb2R1bGUge31cclxuIl19
@@ -1,252 +0,0 @@
1
- import { Component, Input, Output, EventEmitter, ChangeDetectionStrategy } from '@angular/core';
2
- import { BehaviorSubject, isObservable } from 'rxjs';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "@angular/common";
5
- import * as i2 from "@angular/material/button";
6
- import * as i3 from "@angular/material/icon";
7
- import * as i4 from "@angular/material/tooltip";
8
- import * as i5 from "@angular/material/list";
9
- import * as i6 from "@angular/material/core";
10
- import * as i7 from "@angular/material/checkbox";
11
- import * as i8 from "@ngx-translate/core";
12
- function ActionbarItemComponent_mat_list_item_0_button_4_mat_icon_2_Template(rf, ctx) { if (rf & 1) {
13
- i0.ɵɵelement(0, "mat-icon", 7);
14
- i0.ɵɵpipe(1, "async");
15
- } if (rf & 2) {
16
- const ctx_r4 = i0.ɵɵnextContext(3);
17
- i0.ɵɵpropertyInterpolate("svgIcon", i0.ɵɵpipeBind1(1, 1, ctx_r4.icon$));
18
- } }
19
- function ActionbarItemComponent_mat_list_item_0_button_4_Template(rf, ctx) { if (rf & 1) {
20
- i0.ɵɵelementStart(0, "button", 5);
21
- i0.ɵɵpipe(1, "async");
22
- i0.ɵɵtemplate(2, ActionbarItemComponent_mat_list_item_0_button_4_mat_icon_2_Template, 2, 3, "mat-icon", 6);
23
- i0.ɵɵelementEnd();
24
- } if (rf & 2) {
25
- const ctx_r2 = i0.ɵɵnextContext(2);
26
- i0.ɵɵproperty("color", ctx_r2.color)("disabled", i0.ɵɵpipeBind1(1, 3, ctx_r2.disabled$));
27
- i0.ɵɵadvance(2);
28
- i0.ɵɵproperty("ngIf", ctx_r2.withIcon);
29
- } }
30
- function ActionbarItemComponent_mat_list_item_0_h4_5_Template(rf, ctx) { if (rf & 1) {
31
- i0.ɵɵelementStart(0, "h4", 8);
32
- i0.ɵɵtext(1);
33
- i0.ɵɵpipe(2, "translate");
34
- i0.ɵɵelementEnd();
35
- } if (rf & 2) {
36
- const ctx_r3 = i0.ɵɵnextContext(2);
37
- i0.ɵɵadvance(1);
38
- i0.ɵɵtextInterpolate(i0.ɵɵpipeBind1(2, 1, ctx_r3.title));
39
- } }
40
- function ActionbarItemComponent_mat_list_item_0_Template(rf, ctx) { if (rf & 1) {
41
- const _r6 = i0.ɵɵgetCurrentView();
42
- i0.ɵɵelementStart(0, "mat-list-item", 2);
43
- i0.ɵɵlistener("click", function ActionbarItemComponent_mat_list_item_0_Template_mat_list_item_click_0_listener() { i0.ɵɵrestoreView(_r6); const ctx_r5 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r5.onClick()); });
44
- i0.ɵɵpipe(1, "translate");
45
- i0.ɵɵpipe(2, "async");
46
- i0.ɵɵpipe(3, "async");
47
- i0.ɵɵtemplate(4, ActionbarItemComponent_mat_list_item_0_button_4_Template, 3, 5, "button", 3);
48
- i0.ɵɵtemplate(5, ActionbarItemComponent_mat_list_item_0_h4_5_Template, 3, 3, "h4", 4);
49
- i0.ɵɵelementEnd();
50
- } if (rf & 2) {
51
- const ctx_r0 = i0.ɵɵnextContext();
52
- i0.ɵɵproperty("matTooltip", ctx_r0.withTooltip ? i0.ɵɵpipeBind1(1, 4, i0.ɵɵpipeBind1(2, 6, ctx_r0.tooltip$) || ctx_r0.title) : "")("ngClass", i0.ɵɵpipeBind1(3, 8, ctx_r0.ngClass$));
53
- i0.ɵɵadvance(4);
54
- i0.ɵɵproperty("ngIf", ctx_r0.withIcon);
55
- i0.ɵɵadvance(1);
56
- i0.ɵɵproperty("ngIf", ctx_r0.withTitle);
57
- } }
58
- function ActionbarItemComponent_mat_list_item_1_mat_checkbox_4_Template(rf, ctx) { if (rf & 1) {
59
- const _r9 = i0.ɵɵgetCurrentView();
60
- i0.ɵɵelementStart(0, "mat-checkbox", 11);
61
- i0.ɵɵlistener("change", function ActionbarItemComponent_mat_list_item_1_mat_checkbox_4_Template_mat_checkbox_change_0_listener() { i0.ɵɵrestoreView(_r9); const ctx_r8 = i0.ɵɵnextContext(2); return i0.ɵɵresetView(ctx_r8.action.handler()); });
62
- i0.ɵɵpipe(1, "async");
63
- i0.ɵɵtext(2);
64
- i0.ɵɵpipe(3, "translate");
65
- i0.ɵɵelementEnd();
66
- } if (rf & 2) {
67
- const ctx_r7 = i0.ɵɵnextContext(2);
68
- i0.ɵɵproperty("checked", i0.ɵɵpipeBind1(1, 2, ctx_r7.checkCondition$));
69
- i0.ɵɵadvance(2);
70
- i0.ɵɵtextInterpolate1(" ", i0.ɵɵpipeBind1(3, 4, ctx_r7.title), " ");
71
- } }
72
- function ActionbarItemComponent_mat_list_item_1_Template(rf, ctx) { if (rf & 1) {
73
- i0.ɵɵelementStart(0, "mat-list-item", 9);
74
- i0.ɵɵpipe(1, "translate");
75
- i0.ɵɵpipe(2, "async");
76
- i0.ɵɵpipe(3, "async");
77
- i0.ɵɵtemplate(4, ActionbarItemComponent_mat_list_item_1_mat_checkbox_4_Template, 4, 6, "mat-checkbox", 10);
78
- i0.ɵɵelementEnd();
79
- } if (rf & 2) {
80
- const ctx_r1 = i0.ɵɵnextContext();
81
- i0.ɵɵproperty("matTooltip", ctx_r1.withTooltip ? i0.ɵɵpipeBind1(1, 3, i0.ɵɵpipeBind1(2, 5, ctx_r1.tooltip$) || ctx_r1.title) : "")("ngClass", i0.ɵɵpipeBind1(3, 7, ctx_r1.ngClass$));
82
- i0.ɵɵadvance(4);
83
- i0.ɵɵproperty("ngIf", ctx_r1.withTitle);
84
- } }
85
- /**
86
- * An action button
87
- */
88
- export class ActionbarItemComponent {
89
- constructor() {
90
- this.disabled$ = new BehaviorSubject(false);
91
- this.checkCondition$ = new BehaviorSubject(undefined);
92
- this.icon$ = new BehaviorSubject(undefined);
93
- this.tooltip$ = new BehaviorSubject(undefined);
94
- this.noDisplay$ = new BehaviorSubject(false);
95
- this.ngClass$ = new BehaviorSubject({});
96
- /**
97
- * Color
98
- */
99
- this.color = 'default';
100
- /**
101
- * Whether the action title is displayed
102
- */
103
- this.withTitle = true;
104
- /**
105
- * Whether the action icon is displayed
106
- */
107
- this.withIcon = true;
108
- /**
109
- * Whether a tooltip should be shown
110
- */
111
- this.withTooltip = true;
112
- /**
113
- * Event emitted when the action button is clicked
114
- */
115
- this.trigger = new EventEmitter();
116
- }
117
- /**
118
- * Whether the action is disabled
119
- */
120
- set disabled(value) { this.disabled$.next(value); }
121
- get disabled() { return this.disabled$.value; }
122
- /**
123
- * Whether the action is display or not
124
- */
125
- set noDisplay(value) { this.noDisplay$.next(value); }
126
- get noDisplay() { return this.noDisplay$.value; }
127
- /**
128
- * @internal
129
- */
130
- get title() { return this.action.title; }
131
- ngOnInit() {
132
- const args = this.action.args || [];
133
- if (this.action.ngClass !== undefined) {
134
- this.ngClass$$ = this.action.ngClass(...args)
135
- .subscribe((ngClass) => this.updateNgClass(ngClass));
136
- }
137
- if (isObservable(this.action.icon)) {
138
- this.icon$$ = this.action.icon
139
- .subscribe((icon) => this.updateIcon(icon));
140
- }
141
- else {
142
- this.updateIcon(this.action.icon);
143
- }
144
- if (isObservable(this.action.checkCondition)) {
145
- this.checkCondition$$ = this.action.checkCondition
146
- .subscribe((checkCondition) => this.updateCheckCondition(checkCondition));
147
- }
148
- else {
149
- this.updateCheckCondition(this.action.checkCondition);
150
- }
151
- if (isObservable(this.action.tooltip)) {
152
- this.tooltip$$ = this.action.tooltip
153
- .subscribe((tooltip) => this.updateTooltip(tooltip));
154
- }
155
- else {
156
- this.updateTooltip(this.action.tooltip);
157
- }
158
- if (this.action.availability !== undefined) {
159
- this.availability$$ = this.action.availability(...args)
160
- .subscribe((available) => this.disabled = !available);
161
- }
162
- this.disabled$$ = this.disabled$
163
- .subscribe((disabled) => this.updateNgClass({ 'igo-actionbar-item-disabled': disabled }));
164
- if (this.action.display !== undefined) {
165
- this.display$$ = this.action.display(...args)
166
- .subscribe((display) => this.noDisplay = !display);
167
- }
168
- this.noDisplay$$ = this.noDisplay$
169
- .subscribe((noDisplay) => this.updateNgClass({ 'igo-actionbar-item-no-display': noDisplay }));
170
- }
171
- ngOnDestroy() {
172
- if (this.ngClass$$ !== undefined) {
173
- this.ngClass$$.unsubscribe();
174
- this.ngClass$$ = undefined;
175
- }
176
- if (this.availability$$ !== undefined) {
177
- this.availability$$.unsubscribe();
178
- this.availability$$ = undefined;
179
- }
180
- if (this.display$$ !== undefined) {
181
- this.display$$.unsubscribe();
182
- this.display$$ = undefined;
183
- }
184
- if (this.checkCondition$$ !== undefined) {
185
- this.checkCondition$$.unsubscribe();
186
- this.checkCondition$$ = undefined;
187
- }
188
- if (this.icon$$ !== undefined) {
189
- this.icon$$.unsubscribe();
190
- this.icon$$ = undefined;
191
- }
192
- if (this.tooltip$$ !== undefined) {
193
- this.tooltip$$.unsubscribe();
194
- this.tooltip$$ = undefined;
195
- }
196
- this.disabled$$.unsubscribe();
197
- this.noDisplay$$.unsubscribe();
198
- }
199
- /**
200
- * When the action button is clicked, emit the 'trigger' event but don't
201
- * invoke the action handler. This is handled by the parent component.
202
- * @internal
203
- */
204
- onClick() {
205
- if (this.disabled === true) {
206
- return;
207
- }
208
- this.trigger.emit(this.action);
209
- }
210
- updateNgClass(ngClass) {
211
- this.ngClass$.next(Object.assign({}, this.ngClass$.value, ngClass));
212
- }
213
- updateTooltip(tooltip) {
214
- this.tooltip$.next(tooltip);
215
- }
216
- updateCheckCondition(checkCondition) {
217
- this.checkCondition$.next(checkCondition);
218
- }
219
- updateIcon(icon) {
220
- this.icon$.next(icon);
221
- }
222
- }
223
- ActionbarItemComponent.ɵfac = function ActionbarItemComponent_Factory(t) { return new (t || ActionbarItemComponent)(); };
224
- ActionbarItemComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: ActionbarItemComponent, selectors: [["igo-actionbar-item"]], inputs: { action: "action", color: "color", withTitle: "withTitle", withIcon: "withIcon", withTooltip: "withTooltip", disabled: "disabled", noDisplay: "noDisplay" }, outputs: { trigger: "trigger" }, decls: 2, vars: 2, consts: [["matTooltipClass", "actionbarItemTooltip", "matTooltipShowDelay", "500", 3, "matTooltip", "ngClass", "click", 4, "ngIf"], ["class", "item-checkbox", "matTooltipClass", "actionbarItemTooltip", "matTooltipShowDelay", "500", 3, "matTooltip", "ngClass", 4, "ngIf"], ["matTooltipClass", "actionbarItemTooltip", "matTooltipShowDelay", "500", 3, "matTooltip", "ngClass", "click"], ["mat-list-avatar", "", "mat-icon-button", "", 3, "color", "disabled", 4, "ngIf"], ["matLine", "", 4, "ngIf"], ["mat-list-avatar", "", "mat-icon-button", "", 3, "color", "disabled"], [3, "svgIcon", 4, "ngIf"], [3, "svgIcon"], ["matLine", ""], ["matTooltipClass", "actionbarItemTooltip", "matTooltipShowDelay", "500", 1, "item-checkbox", 3, "matTooltip", "ngClass"], [3, "checked", "change", 4, "ngIf"], [3, "checked", "change"]], template: function ActionbarItemComponent_Template(rf, ctx) { if (rf & 1) {
225
- i0.ɵɵtemplate(0, ActionbarItemComponent_mat_list_item_0_Template, 6, 10, "mat-list-item", 0);
226
- i0.ɵɵtemplate(1, ActionbarItemComponent_mat_list_item_1_Template, 5, 9, "mat-list-item", 1);
227
- } if (rf & 2) {
228
- i0.ɵɵproperty("ngIf", !ctx.action.checkbox);
229
- i0.ɵɵadvance(1);
230
- i0.ɵɵproperty("ngIf", ctx.action.checkbox);
231
- } }, dependencies: [i1.NgClass, i1.NgIf, i2.MatButton, i3.MatIcon, i4.MatTooltip, i5.MatListItem, i5.MatListAvatarCssMatStyler, i6.MatLine, i7.MatCheckbox, i1.AsyncPipe, i8.TranslatePipe], styles: ["mat-list-item.igo-actionbar-item-disabled[_ngcontent-%COMP%]{color:#00000042;cursor:default!important}mat-list-item.igo-actionbar-item-no-display[_ngcontent-%COMP%]{display:none}mat-checkbox[_ngcontent-%COMP%]{padding:12px}.item-checkbox[_ngcontent-%COMP%]{height:56px}.item-checkbox[_ngcontent-%COMP%] .mat-checkbox-label{margin-left:20px}"], changeDetection: 0 });
232
- (function () { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(ActionbarItemComponent, [{
233
- type: Component,
234
- args: [{ selector: 'igo-actionbar-item', changeDetection: ChangeDetectionStrategy.OnPush, template: "<mat-list-item *ngIf=\"!action.checkbox\"\r\n matTooltipClass=\"actionbarItemTooltip\"\r\n matTooltipShowDelay=\"500\"\r\n [matTooltip]=\"withTooltip ? ((tooltip$ | async) || title | translate) : ''\"\r\n [ngClass]=\"ngClass$ | async\"\r\n (click)=\"onClick()\">\r\n <button *ngIf=\"withIcon\"\r\n mat-list-avatar\r\n mat-icon-button\r\n [color]=\"color\"\r\n [disabled]=\"disabled$ | async\">\r\n <mat-icon *ngIf=\"withIcon\" svgIcon=\"{{icon$ | async}}\"></mat-icon>\r\n </button>\r\n <h4 *ngIf=\"withTitle\" matLine>{{title | translate}}</h4>\r\n</mat-list-item>\r\n\r\n<mat-list-item class=\"item-checkbox\" *ngIf=\"action.checkbox\"\r\n matTooltipClass=\"actionbarItemTooltip\"\r\n matTooltipShowDelay=\"500\"\r\n [matTooltip]=\"withTooltip ? ((tooltip$ | async) || title | translate) : ''\"\r\n [ngClass]=\"ngClass$ | async\">\r\n <mat-checkbox *ngIf=\"withTitle\"\r\n (change)=\"action.handler()\"\r\n [checked]=\"checkCondition$ | async\">\r\n {{title | translate}}\r\n </mat-checkbox>\r\n</mat-list-item>\r\n", styles: ["mat-list-item.igo-actionbar-item-disabled{color:#00000042;cursor:default!important}mat-list-item.igo-actionbar-item-no-display{display:none}mat-checkbox{padding:12px}.item-checkbox{height:56px}.item-checkbox ::ng-deep .mat-checkbox-label{margin-left:20px}\n"] }]
235
- }], function () { return []; }, { action: [{
236
- type: Input
237
- }], color: [{
238
- type: Input
239
- }], withTitle: [{
240
- type: Input
241
- }], withIcon: [{
242
- type: Input
243
- }], withTooltip: [{
244
- type: Input
245
- }], disabled: [{
246
- type: Input
247
- }], noDisplay: [{
248
- type: Input
249
- }], trigger: [{
250
- type: Output
251
- }] }); })();
252
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uYmFyLWl0ZW0uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tbW9uL3NyYy9saWIvYWN0aW9uL2FjdGlvbmJhci9hY3Rpb25iYXItaXRlbS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21tb24vc3JjL2xpYi9hY3Rpb24vYWN0aW9uYmFyL2FjdGlvbmJhci1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxTQUFTLEVBQ1QsS0FBSyxFQUNMLE1BQU0sRUFDTixZQUFZLEVBQ1osdUJBQXVCLEVBR3hCLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxlQUFlLEVBQWdCLFlBQVksRUFBRSxNQUFNLE1BQU0sQ0FBQzs7Ozs7Ozs7Ozs7SUNDL0QsOEJBQWtFOzs7O0lBQXZDLHVFQUEyQjs7O0lBTHhELGlDQUlpQzs7SUFDL0IsMEdBQWtFO0lBQ3BFLGlCQUFTOzs7SUFIUCxvQ0FBZSxvREFBQTtJQUVKLGVBQWM7SUFBZCxzQ0FBYzs7O0lBRTNCLDZCQUE4QjtJQUFBLFlBQXFCOztJQUFBLGlCQUFLOzs7SUFBMUIsZUFBcUI7SUFBckIsd0RBQXFCOzs7O0lBYnJELHdDQUtzQjtJQUFwQixvTEFBUyxlQUFBLGdCQUFTLENBQUEsSUFBQzs7OztJQUNuQiw2RkFNUztJQUNULHFGQUF3RDtJQUMxRCxpQkFBZ0I7OztJQVhkLGtJQUEyRSxrREFBQTtJQUdsRSxlQUFjO0lBQWQsc0NBQWM7SUFPbEIsZUFBZTtJQUFmLHVDQUFlOzs7O0lBUXBCLHdDQUV3QztJQURwQyxxTUFBVSxlQUFBLHVCQUFnQixDQUFBLElBQUM7O0lBRTNCLFlBQ0o7O0lBQUEsaUJBQWU7OztJQUZYLHNFQUFtQztJQUNuQyxlQUNKO0lBREksbUVBQ0o7OztJQVRGLHdDQUkrQjs7OztJQUM3QiwwR0FJZTtJQUNqQixp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QUFPO2tCQUFoQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgSW5wdXQsXHJcbiAgT3V0cHV0LFxyXG4gIEV2ZW50RW1pdHRlcixcclxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcclxuICBPbkluaXQsXHJcbiAgT25EZXN0cm95XHJcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIFN1YnNjcmlwdGlvbiwgaXNPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XHJcblxyXG5pbXBvcnQgeyBBY3Rpb24gfSBmcm9tICcuLi9zaGFyZWQvYWN0aW9uLmludGVyZmFjZXMnO1xyXG5cclxuIC8qKlxyXG4gICogQW4gYWN0aW9uIGJ1dHRvblxyXG4gICovXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnaWdvLWFjdGlvbmJhci1pdGVtJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vYWN0aW9uYmFyLWl0ZW0uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2FjdGlvbmJhci1pdGVtLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2hcclxufSlcclxuZXhwb3J0IGNsYXNzIEFjdGlvbmJhckl0ZW1Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XHJcblxyXG4gIHJlYWRvbmx5IGRpc2FibGVkJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XHJcblxyXG4gIHJlYWRvbmx5IGNoZWNrQ29uZGl0aW9uJDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdCh1bmRlZmluZWQpO1xyXG5cclxuICByZWFkb25seSBpY29uJDogQmVoYXZpb3JTdWJqZWN0PHN0cmluZz4gPSBuZXcgQmVoYXZpb3JTdWJqZWN0KHVuZGVmaW5lZCk7XHJcblxyXG4gIHJlYWRvbmx5IHRvb2x0aXAkOiBCZWhhdmlvclN1YmplY3Q8c3RyaW5nPiA9IG5ldyBCZWhhdmlvclN1YmplY3QodW5kZWZpbmVkKTtcclxuXHJcbiAgcmVhZG9ubHkgbm9EaXNwbGF5JDogQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+ID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XHJcblxyXG4gIHJlYWRvbmx5IG5nQ2xhc3MkOiBCZWhhdmlvclN1YmplY3Q8e1trZXk6IHN0cmluZ106IGJvb2xlYW59PiA9IG5ldyBCZWhhdmlvclN1YmplY3Qoe30pO1xyXG5cclxuICBwcml2YXRlIG5nQ2xhc3MkJDogU3Vic2NyaXB0aW9uO1xyXG5cclxuICBwcml2YXRlIGRpc2FibGVkJCQ6IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgcHJpdmF0ZSBhdmFpbGFiaWxpdHkkJDogU3Vic2NyaXB0aW9uO1xyXG5cclxuICBwcml2YXRlIGljb24kJDogU3Vic2NyaXB0aW9uO1xyXG5cclxuICBwcml2YXRlIGNoZWNrQ29uZGl0aW9uJCQ6IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgcHJpdmF0ZSB0b29sdGlwJCQ6IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgcHJpdmF0ZSBub0Rpc3BsYXkkJDogU3Vic2NyaXB0aW9uO1xyXG5cclxuICBwcml2YXRlIGRpc3BsYXkkJDogU3Vic2NyaXB0aW9uO1xyXG5cclxuICAvKipcclxuICAgKiBBY3Rpb25cclxuICAgKi9cclxuICBASW5wdXQoKSBhY3Rpb246IEFjdGlvbjtcclxuXHJcbiAgLyoqXHJcbiAgICogQ29sb3JcclxuICAgKi9cclxuICBASW5wdXQoKSBjb2xvciA9ICdkZWZhdWx0JztcclxuXHJcbiAgLyoqXHJcbiAgICogV2hldGhlciB0aGUgYWN0aW9uIHRpdGxlIGlzIGRpc3BsYXllZFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHdpdGhUaXRsZSA9IHRydWU7XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZXRoZXIgdGhlIGFjdGlvbiBpY29uIGlzIGRpc3BsYXllZFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpIHdpdGhJY29uID0gdHJ1ZTtcclxuXHJcbiAgLyoqXHJcbiAgICogV2hldGhlciBhIHRvb2x0aXAgc2hvdWxkIGJlIHNob3duXHJcbiAgICovXHJcbiAgQElucHV0KCkgd2l0aFRvb2x0aXAgPSB0cnVlO1xyXG5cclxuICAvKipcclxuICAgKiBXaGV0aGVyIHRoZSBhY3Rpb24gaXMgZGlzYWJsZWRcclxuICAgKi9cclxuICBASW5wdXQoKVxyXG4gIHNldCBkaXNhYmxlZCh2YWx1ZTogYm9vbGVhbikgeyB0aGlzLmRpc2FibGVkJC5uZXh0KHZhbHVlKTsgfVxyXG4gIGdldCBkaXNhYmxlZCgpOiBib29sZWFuIHsgcmV0dXJuIHRoaXMuZGlzYWJsZWQkLnZhbHVlOyB9XHJcblxyXG4gIC8qKlxyXG4gICAqIFdoZXRoZXIgdGhlIGFjdGlvbiBpcyBkaXNwbGF5IG9yIG5vdFxyXG4gICAqL1xyXG4gIEBJbnB1dCgpXHJcbiAgc2V0IG5vRGlzcGxheSh2YWx1ZTogYm9vbGVhbikgeyB0aGlzLm5vRGlzcGxheSQubmV4dCh2YWx1ZSk7IH1cclxuICBnZXQgbm9EaXNwbGF5KCk6IGJvb2xlYW4geyByZXR1cm4gdGhpcy5ub0Rpc3BsYXkkLnZhbHVlOyB9XHJcblxyXG4gIC8qKlxyXG4gICAqIEV2ZW50IGVtaXR0ZWQgd2hlbiB0aGUgYWN0aW9uIGJ1dHRvbiBpcyBjbGlja2VkXHJcbiAgICovXHJcbiAgQE91dHB1dCgpIHRyaWdnZXI6IEV2ZW50RW1pdHRlcjxBY3Rpb24+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICAvKipcclxuICAgKiBAaW50ZXJuYWxcclxuICAgKi9cclxuICBnZXQgdGl0bGUoKTogc3RyaW5nIHsgcmV0dXJuIHRoaXMuYWN0aW9uLnRpdGxlOyB9XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge31cclxuXHJcbiAgbmdPbkluaXQoKSB7XHJcbiAgICBjb25zdCBhcmdzID0gdGhpcy5hY3Rpb24uYXJncyB8fCBbXTtcclxuXHJcbiAgICBpZiAodGhpcy5hY3Rpb24ubmdDbGFzcyAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMubmdDbGFzcyQkID0gdGhpcy5hY3Rpb24ubmdDbGFzcyguLi5hcmdzKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKG5nQ2xhc3M6IHtba2V5OiBzdHJpbmddOiBib29sZWFufSkgPT4gdGhpcy51cGRhdGVOZ0NsYXNzKG5nQ2xhc3MpKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoaXNPYnNlcnZhYmxlKHRoaXMuYWN0aW9uLmljb24pKSB7XHJcbiAgICAgIHRoaXMuaWNvbiQkID0gdGhpcy5hY3Rpb24uaWNvblxyXG4gICAgICAgIC5zdWJzY3JpYmUoKGljb246IHN0cmluZykgPT4gdGhpcy51cGRhdGVJY29uKGljb24pKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudXBkYXRlSWNvbih0aGlzLmFjdGlvbi5pY29uKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoaXNPYnNlcnZhYmxlKHRoaXMuYWN0aW9uLmNoZWNrQ29uZGl0aW9uKSkge1xyXG4gICAgICB0aGlzLmNoZWNrQ29uZGl0aW9uJCQgPSB0aGlzLmFjdGlvbi5jaGVja0NvbmRpdGlvblxyXG4gICAgICAgIC5zdWJzY3JpYmUoKGNoZWNrQ29uZGl0aW9uOiBib29sZWFuKSA9PiB0aGlzLnVwZGF0ZUNoZWNrQ29uZGl0aW9uKGNoZWNrQ29uZGl0aW9uKSk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLnVwZGF0ZUNoZWNrQ29uZGl0aW9uKHRoaXMuYWN0aW9uLmNoZWNrQ29uZGl0aW9uKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAoaXNPYnNlcnZhYmxlKHRoaXMuYWN0aW9uLnRvb2x0aXApKSB7XHJcbiAgICAgIHRoaXMudG9vbHRpcCQkID0gdGhpcy5hY3Rpb24udG9vbHRpcFxyXG4gICAgICAgIC5zdWJzY3JpYmUoKHRvb2x0aXA6IHN0cmluZykgPT4gdGhpcy51cGRhdGVUb29sdGlwKHRvb2x0aXApKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMudXBkYXRlVG9vbHRpcCh0aGlzLmFjdGlvbi50b29sdGlwKTtcclxuICAgIH1cclxuXHJcbiAgICBpZiAodGhpcy5hY3Rpb24uYXZhaWxhYmlsaXR5ICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy5hdmFpbGFiaWxpdHkkJCA9IHRoaXMuYWN0aW9uLmF2YWlsYWJpbGl0eSguLi5hcmdzKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKGF2YWlsYWJsZTogYm9vbGVhbikgPT4gdGhpcy5kaXNhYmxlZCA9ICFhdmFpbGFibGUpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMuZGlzYWJsZWQkJCA9IHRoaXMuZGlzYWJsZWQkXHJcbiAgICAgIC5zdWJzY3JpYmUoKGRpc2FibGVkOiBib29sZWFuKSA9PiB0aGlzLnVwZGF0ZU5nQ2xhc3MoeydpZ28tYWN0aW9uYmFyLWl0ZW0tZGlzYWJsZWQnOiBkaXNhYmxlZH0pKTtcclxuXHJcbiAgICBpZiAodGhpcy5hY3Rpb24uZGlzcGxheSAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMuZGlzcGxheSQkID0gdGhpcy5hY3Rpb24uZGlzcGxheSguLi5hcmdzKVxyXG4gICAgICAgIC5zdWJzY3JpYmUoKGRpc3BsYXk6IGJvb2xlYW4pID0+IHRoaXMubm9EaXNwbGF5ID0gIWRpc3BsYXkpO1xyXG4gICAgfVxyXG5cclxuICAgIHRoaXMubm9EaXNwbGF5JCQgPSB0aGlzLm5vRGlzcGxheSRcclxuICAgICAgLnN1YnNjcmliZSgobm9EaXNwbGF5OiBib29sZWFuKSA9PiB0aGlzLnVwZGF0ZU5nQ2xhc3MoeydpZ28tYWN0aW9uYmFyLWl0ZW0tbm8tZGlzcGxheSc6IG5vRGlzcGxheX0pKTtcclxuICB9XHJcblxyXG4gIG5nT25EZXN0cm95KCkge1xyXG4gICAgaWYgKHRoaXMubmdDbGFzcyQkICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy5uZ0NsYXNzJCQudW5zdWJzY3JpYmUoKTtcclxuICAgICAgdGhpcy5uZ0NsYXNzJCQgPSB1bmRlZmluZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuYXZhaWxhYmlsaXR5JCQgIT09IHVuZGVmaW5lZCkge1xyXG4gICAgICB0aGlzLmF2YWlsYWJpbGl0eSQkLnVuc3Vic2NyaWJlKCk7XHJcbiAgICAgIHRoaXMuYXZhaWxhYmlsaXR5JCQgPSB1bmRlZmluZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuZGlzcGxheSQkICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy5kaXNwbGF5JCQudW5zdWJzY3JpYmUoKTtcclxuICAgICAgdGhpcy5kaXNwbGF5JCQgPSB1bmRlZmluZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuY2hlY2tDb25kaXRpb24kJCAhPT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgIHRoaXMuY2hlY2tDb25kaXRpb24kJC51bnN1YnNjcmliZSgpO1xyXG4gICAgICB0aGlzLmNoZWNrQ29uZGl0aW9uJCQgPSB1bmRlZmluZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMuaWNvbiQkICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy5pY29uJCQudW5zdWJzY3JpYmUoKTtcclxuICAgICAgdGhpcy5pY29uJCQgPSB1bmRlZmluZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgaWYgKHRoaXMudG9vbHRpcCQkICE9PSB1bmRlZmluZWQpIHtcclxuICAgICAgdGhpcy50b29sdGlwJCQudW5zdWJzY3JpYmUoKTtcclxuICAgICAgdGhpcy50b29sdGlwJCQgPSB1bmRlZmluZWQ7XHJcbiAgICB9XHJcblxyXG4gICAgdGhpcy5kaXNhYmxlZCQkLnVuc3Vic2NyaWJlKCk7XHJcbiAgICB0aGlzLm5vRGlzcGxheSQkLnVuc3Vic2NyaWJlKCk7XHJcbiAgfVxyXG5cclxuICAvKipcclxuICAgKiBXaGVuIHRoZSBhY3Rpb24gYnV0dG9uIGlzIGNsaWNrZWQsIGVtaXQgdGhlICd0cmlnZ2VyJyBldmVudCBidXQgZG9uJ3RcclxuICAgKiBpbnZva2UgdGhlIGFjdGlvbiBoYW5kbGVyLiBUaGlzIGlzIGhhbmRsZWQgYnkgdGhlIHBhcmVudCBjb21wb25lbnQuXHJcbiAgICogQGludGVybmFsXHJcbiAgICovXHJcbiAgb25DbGljaygpIHtcclxuICAgIGlmICh0aGlzLmRpc2FibGVkID09PSB0cnVlKSB7XHJcbiAgICAgIHJldHVybjtcclxuICAgIH1cclxuICAgIHRoaXMudHJpZ2dlci5lbWl0KHRoaXMuYWN0aW9uKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlTmdDbGFzcyhuZ0NsYXNzOiB7W2tleTogc3RyaW5nXTogYm9vbGVhbn0pIHtcclxuICAgIHRoaXMubmdDbGFzcyQubmV4dChPYmplY3QuYXNzaWduKHt9LCB0aGlzLm5nQ2xhc3MkLnZhbHVlLCBuZ0NsYXNzKSk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZVRvb2x0aXAodG9vbHRpcDogc3RyaW5nKSB7XHJcbiAgICB0aGlzLnRvb2x0aXAkLm5leHQodG9vbHRpcCk7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIHVwZGF0ZUNoZWNrQ29uZGl0aW9uKGNoZWNrQ29uZGl0aW9uOiBib29sZWFuKSB7XHJcbiAgICB0aGlzLmNoZWNrQ29uZGl0aW9uJC5uZXh0KGNoZWNrQ29uZGl0aW9uKTtcclxuICB9XHJcblxyXG4gIHByaXZhdGUgdXBkYXRlSWNvbihpY29uOiBzdHJpbmcpIHtcclxuICAgIHRoaXMuaWNvbiQubmV4dChpY29uKTtcclxuICB9XHJcbn1cclxuIiwiPG1hdC1saXN0LWl0ZW0gKm5nSWY9XCIhYWN0aW9uLmNoZWNrYm94XCJcclxuICBtYXRUb29sdGlwQ2xhc3M9XCJhY3Rpb25iYXJJdGVtVG9vbHRpcFwiXHJcbiAgbWF0VG9vbHRpcFNob3dEZWxheT1cIjUwMFwiXHJcbiAgW21hdFRvb2x0aXBdPVwid2l0aFRvb2x0aXAgPyAoKHRvb2x0aXAkIHwgYXN5bmMpIHx8IHRpdGxlIHwgdHJhbnNsYXRlKSA6ICcnXCJcclxuICBbbmdDbGFzc109XCJuZ0NsYXNzJCB8IGFzeW5jXCJcclxuICAoY2xpY2spPVwib25DbGljaygpXCI+XHJcbiAgPGJ1dHRvbiAqbmdJZj1cIndpdGhJY29uXCJcclxuICAgIG1hdC1saXN0LWF2YXRhclxyXG4gICAgbWF0LWljb24tYnV0dG9uXHJcbiAgICBbY29sb3JdPVwiY29sb3JcIlxyXG4gICAgW2Rpc2FibGVkXT1cImRpc2FibGVkJCB8IGFzeW5jXCI+XHJcbiAgICA8bWF0LWljb24gKm5nSWY9XCJ3aXRoSWNvblwiIHN2Z0ljb249XCJ7e2ljb24kIHwgYXN5bmN9fVwiPjwvbWF0LWljb24+XHJcbiAgPC9idXR0b24+XHJcbiAgPGg0ICpuZ0lmPVwid2l0aFRpdGxlXCIgbWF0TGluZT57e3RpdGxlIHwgdHJhbnNsYXRlfX08L2g0PlxyXG48L21hdC1saXN0LWl0ZW0+XHJcblxyXG48bWF0LWxpc3QtaXRlbSBjbGFzcz1cIml0ZW0tY2hlY2tib3hcIiAqbmdJZj1cImFjdGlvbi5jaGVja2JveFwiXHJcbiAgbWF0VG9vbHRpcENsYXNzPVwiYWN0aW9uYmFySXRlbVRvb2x0aXBcIlxyXG4gIG1hdFRvb2x0aXBTaG93RGVsYXk9XCI1MDBcIlxyXG4gIFttYXRUb29sdGlwXT1cIndpdGhUb29sdGlwID8gKCh0b29sdGlwJCB8IGFzeW5jKSB8fCB0aXRsZSB8IHRyYW5zbGF0ZSkgOiAnJ1wiXHJcbiAgW25nQ2xhc3NdPVwibmdDbGFzcyQgfCBhc3luY1wiPlxyXG4gIDxtYXQtY2hlY2tib3ggKm5nSWY9XCJ3aXRoVGl0bGVcIlxyXG4gICAgICAoY2hhbmdlKT1cImFjdGlvbi5oYW5kbGVyKClcIlxyXG4gICAgICBbY2hlY2tlZF09XCJjaGVja0NvbmRpdGlvbiQgfCBhc3luY1wiPlxyXG4gICAgICB7e3RpdGxlIHwgdHJhbnNsYXRlfX1cclxuICA8L21hdC1jaGVja2JveD5cclxuPC9tYXQtbGlzdC1pdGVtPlxyXG4iXX0=