@coolon/angular-ui-powerups 12.4.0-alpha.78 → 12.4.0-alpha.8

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 (542) hide show
  1. package/assets/activities.scss +70 -0
  2. package/assets/form.scss +2 -10
  3. package/assets/interaction.scss +7 -10
  4. package/assets/mixins.scss +7 -5
  5. package/assets/styles.scss +15 -11
  6. package/bundles/coolon-angular-ui-powerups-cypress.umd.js +336 -741
  7. package/bundles/coolon-angular-ui-powerups-cypress.umd.js.map +1 -1
  8. package/bundles/coolon-angular-ui-powerups.umd.js +422 -1387
  9. package/bundles/coolon-angular-ui-powerups.umd.js.map +1 -1
  10. package/coolon-angular-ui-powerups.metadata.json +1 -1
  11. package/cypress/components/aup-command-face.d.ts +8 -2
  12. package/cypress/components/aup-command.d.ts +1 -2
  13. package/cypress/components/aup-empty-state.d.ts +2 -1
  14. package/cypress/components/aup-input.d.ts +5 -11
  15. package/cypress/components/aup-more-menu.d.ts +4 -0
  16. package/cypress/components/aup-popup-menu.d.ts +7 -0
  17. package/cypress/components/aup-table.d.ts +18 -5
  18. package/cypress/components/button-mixin.d.ts +19 -0
  19. package/cypress/components/button.d.ts +7 -11
  20. package/cypress/coolon-angular-ui-powerups-cypress.metadata.json +1 -1
  21. package/cypress/exports.d.ts +4 -24
  22. package/cypress/package.json +1 -1
  23. package/cypress/page-element.d.ts +12 -12
  24. package/cypress/page.d.ts +34 -8
  25. package/cypress/section.d.ts +55 -0
  26. package/esm2015/cypress/components/aup-command-face.js +22 -11
  27. package/esm2015/cypress/components/aup-command-face.js.map +1 -1
  28. package/esm2015/cypress/components/aup-command-face.metadata.json +1 -1
  29. package/esm2015/cypress/components/aup-command.js +6 -12
  30. package/esm2015/cypress/components/aup-command.js.map +1 -1
  31. package/esm2015/cypress/components/aup-command.metadata.json +1 -1
  32. package/esm2015/cypress/components/aup-empty-state.js +2 -2
  33. package/esm2015/cypress/components/aup-empty-state.js.map +1 -1
  34. package/esm2015/cypress/components/aup-empty-state.metadata.json +1 -1
  35. package/esm2015/cypress/components/aup-input.js +5 -17
  36. package/esm2015/cypress/components/aup-input.js.map +1 -1
  37. package/esm2015/cypress/components/aup-input.metadata.json +1 -1
  38. package/esm2015/cypress/components/aup-more-menu.js +7 -0
  39. package/esm2015/cypress/components/aup-more-menu.js.map +1 -0
  40. package/esm2015/cypress/components/aup-more-menu.metadata.json +1 -0
  41. package/esm2015/cypress/components/aup-navigation.js +1 -1
  42. package/esm2015/cypress/components/aup-navigation.js.map +1 -1
  43. package/esm2015/cypress/components/aup-popup-menu.js +19 -0
  44. package/esm2015/cypress/components/aup-popup-menu.js.map +1 -0
  45. package/esm2015/cypress/components/aup-popup-menu.metadata.json +1 -0
  46. package/esm2015/cypress/components/aup-table.js +33 -5
  47. package/esm2015/cypress/components/aup-table.js.map +1 -1
  48. package/esm2015/cypress/components/aup-table.metadata.json +1 -1
  49. package/esm2015/cypress/components/button-mixin.js +15 -0
  50. package/esm2015/cypress/components/button-mixin.js.map +1 -0
  51. package/esm2015/cypress/components/button-mixin.metadata.json +1 -0
  52. package/esm2015/cypress/components/button.js +10 -4
  53. package/esm2015/cypress/components/button.js.map +1 -1
  54. package/esm2015/cypress/components/button.metadata.json +1 -1
  55. package/esm2015/cypress/exports.js +4 -24
  56. package/esm2015/cypress/exports.js.map +1 -1
  57. package/esm2015/cypress/exports.metadata.json +1 -1
  58. package/esm2015/cypress/page-element.js +19 -26
  59. package/esm2015/cypress/page-element.js.map +1 -1
  60. package/esm2015/cypress/page-element.metadata.json +1 -1
  61. package/esm2015/cypress/page.js +19 -31
  62. package/esm2015/cypress/page.js.map +1 -1
  63. package/esm2015/cypress/page.metadata.json +1 -1
  64. package/esm2015/cypress/section.js +76 -0
  65. package/esm2015/cypress/section.js.map +1 -0
  66. package/esm2015/cypress/section.metadata.json +1 -0
  67. package/esm2015/lib/angular-ui-powerups.module.ngfactory.js.map +1 -1
  68. package/esm2015/lib/components/busy-overlay/busy-overlay.component.js +1 -1
  69. package/esm2015/lib/components/busy-overlay/busy-overlay.component.metadata.json +1 -1
  70. package/esm2015/lib/components/card-container/card-container.component.js +84 -0
  71. package/esm2015/lib/components/card-container/card-container.component.js.map +1 -0
  72. package/esm2015/lib/components/card-container/card-container.component.metadata.json +1 -0
  73. package/esm2015/lib/components/card-container/card-container.component.ngfactory.js.map +1 -0
  74. package/esm2015/lib/components/{labelled-value/labelled-value.component.scss.shim.ngstyle.js.map → card-container/card-container.component.scss.shim.ngstyle.js.map} +1 -1
  75. package/esm2015/lib/components/commands/command/command.component.js +1 -1
  76. package/esm2015/lib/components/commands/command/command.component.metadata.json +1 -1
  77. package/esm2015/lib/components/commands/command-face/command-face.component.js +1 -5
  78. package/esm2015/lib/components/commands/command-face/command-face.component.js.map +1 -1
  79. package/esm2015/lib/components/commands/command-face/command-face.component.metadata.json +1 -1
  80. package/esm2015/lib/components/commands/group/popup-menu/abstract-popup-menu.component.js +1 -1
  81. package/esm2015/lib/components/commands/group/popup-menu/abstract-popup-menu.component.js.map +1 -1
  82. package/esm2015/lib/components/commands/group/popup-menu/popup-menu-renderer/popup-menu-renderer.component.js +1 -1
  83. package/esm2015/lib/components/commands/group/popup-menu/popup-menu-renderer/popup-menu-renderer.component.js.map +1 -1
  84. package/esm2015/lib/components/commands/group/tool-bar/tool-bar.component.js +1 -1
  85. package/esm2015/lib/components/commands/group/tool-bar/tool-bar.component.metadata.json +1 -1
  86. package/esm2015/lib/components/components.module.js +25 -43
  87. package/esm2015/lib/components/components.module.js.map +1 -1
  88. package/esm2015/lib/components/components.module.metadata.json +1 -1
  89. package/esm2015/lib/components/components.module.ngfactory.js.map +1 -1
  90. package/esm2015/lib/components/empty-state/empty-state.component.js +1 -1
  91. package/esm2015/lib/components/empty-state/empty-state.component.metadata.json +1 -1
  92. package/esm2015/lib/components/exports.js +4 -8
  93. package/esm2015/lib/components/exports.js.map +1 -1
  94. package/esm2015/lib/components/exports.metadata.json +1 -1
  95. package/esm2015/lib/components/focus-container/focus-container.component.js +1 -1
  96. package/esm2015/lib/components/focus-container/focus-container.component.metadata.json +1 -1
  97. package/esm2015/lib/components/forms/abstract-input.component.js +0 -1
  98. package/esm2015/lib/components/forms/abstract-input.component.js.map +1 -1
  99. package/esm2015/lib/components/forms/autocomplete-input/autocomplete-input.component.js +1 -1
  100. package/esm2015/lib/components/forms/autocomplete-input/autocomplete-input.component.metadata.json +1 -1
  101. package/esm2015/lib/components/forms/checkbox-input/checkbox-input.component.js +1 -1
  102. package/esm2015/lib/components/forms/checkbox-input/checkbox-input.component.metadata.json +1 -1
  103. package/esm2015/lib/components/forms/multiple-select-input/multiple-select-input.component.js +1 -1
  104. package/esm2015/lib/components/forms/multiple-select-input/multiple-select-input.component.metadata.json +1 -1
  105. package/esm2015/lib/components/forms/select-input/select-input.component.js +2 -2
  106. package/esm2015/lib/components/forms/select-input/select-input.component.js.map +1 -1
  107. package/esm2015/lib/components/forms/select-input/select-input.component.metadata.json +1 -1
  108. package/esm2015/lib/components/forms/string-input/string-input.component.js +1 -1
  109. package/esm2015/lib/components/forms/string-input/string-input.component.metadata.json +1 -1
  110. package/esm2015/lib/components/forms/text-input/text-input.component.js +1 -1
  111. package/esm2015/lib/components/forms/text-input/text-input.component.metadata.json +1 -1
  112. package/esm2015/lib/components/icon/icon.component.js +1 -1
  113. package/esm2015/lib/components/icon/icon.component.metadata.json +1 -1
  114. package/esm2015/lib/components/noop/noop.component.js +1 -1
  115. package/esm2015/lib/components/noop/noop.component.metadata.json +1 -1
  116. package/esm2015/lib/components/scroll-container/scroll-container.component.js +1 -1
  117. package/esm2015/lib/components/scroll-container/scroll-container.component.metadata.json +1 -1
  118. package/esm2015/lib/components/section-header/section-header.component.js +5 -12
  119. package/esm2015/lib/components/section-header/section-header.component.js.map +1 -1
  120. package/esm2015/lib/components/section-header/section-header.component.metadata.json +1 -1
  121. package/esm2015/lib/components/switch-case/switch-case.component.js +1 -1
  122. package/esm2015/lib/components/switch-case/switch-case.component.metadata.json +1 -1
  123. package/esm2015/lib/components/tables/abstract-table-model.js +20 -34
  124. package/esm2015/lib/components/tables/abstract-table-model.js.map +1 -1
  125. package/esm2015/lib/components/tables/abstract-table-model.metadata.json +1 -1
  126. package/esm2015/lib/components/tables/table/cell-portal-ref.js.map +1 -1
  127. package/esm2015/lib/components/tables/table/cell-renderer.js.map +1 -1
  128. package/esm2015/lib/components/tables/table/column-model.js +10 -35
  129. package/esm2015/lib/components/tables/table/column-model.js.map +1 -1
  130. package/esm2015/lib/components/tables/table/column-model.metadata.json +1 -1
  131. package/esm2015/lib/components/tables/table/default-cell-renderer/default-cell-renderer.component.js.map +1 -1
  132. package/esm2015/lib/components/tables/table/default-cell-renderer/default-cell-renderer.component.metadata.json +1 -1
  133. package/esm2015/lib/components/tables/table/edit-row-controls/edit-row-controls.component.js +12 -19
  134. package/esm2015/lib/components/tables/table/edit-row-controls/edit-row-controls.component.js.map +1 -1
  135. package/esm2015/lib/components/tables/table/edit-row-controls/edit-row-controls.component.metadata.json +1 -1
  136. package/esm2015/lib/components/tables/table/edit-session.js.map +1 -0
  137. package/esm2015/lib/components/tables/{edit-session.metadata.json → table/edit-session.metadata.json} +1 -1
  138. package/esm2015/lib/components/tables/table/paginator/paginator.component.js +1 -1
  139. package/esm2015/lib/components/tables/table/paginator/paginator.component.metadata.json +1 -1
  140. package/esm2015/lib/components/tables/table/table-cell-renderer/table-cell-renderer.component.js +1 -1
  141. package/esm2015/lib/components/tables/table/table-cell-renderer/table-cell-renderer.component.js.map +1 -1
  142. package/esm2015/lib/components/tables/table/table-header-cell-renderer/table-header-cell-renderer.component.js +1 -1
  143. package/esm2015/lib/components/tables/table/table-header-cell-renderer/table-header-cell-renderer.component.metadata.json +1 -1
  144. package/esm2015/lib/components/tables/table/table-row-menu/table-row-menu.component.js +2 -0
  145. package/esm2015/lib/components/tables/table/table-row-menu/table-row-menu.component.js.map +1 -1
  146. package/esm2015/lib/components/tables/table/table-row-menu/table-row-menu.component.metadata.json +1 -1
  147. package/esm2015/lib/components/tables/table/table.component.js +13 -14
  148. package/esm2015/lib/components/tables/table/table.component.js.map +1 -1
  149. package/esm2015/lib/components/tables/table/table.component.metadata.json +1 -1
  150. package/esm2015/lib/components/tables/tree-table/flattened-tree-list-model.js +4 -4
  151. package/esm2015/lib/components/tables/tree-table/flattened-tree-list-model.js.map +1 -1
  152. package/esm2015/lib/components/tables/tree-table/flattened-tree-list-model.metadata.json +1 -1
  153. package/esm2015/lib/components/tables/tree-table/tree-inheritance-icon/tree-inheritance-icon.component.js +1 -1
  154. package/esm2015/lib/components/tables/tree-table/tree-inheritance-icon/tree-inheritance-icon.component.metadata.json +1 -1
  155. package/esm2015/lib/components/tables/tree-table/tree-label-cell-renderer/tree-label-cell-renderer.component.js +13 -21
  156. package/esm2015/lib/components/tables/tree-table/tree-label-cell-renderer/tree-label-cell-renderer.component.js.map +1 -1
  157. package/esm2015/lib/components/tables/tree-table/tree-label-cell-renderer/tree-label-cell-renderer.component.metadata.json +1 -1
  158. package/esm2015/lib/components/tables/tree-table/tree-label-column-model.js +1 -1
  159. package/esm2015/lib/components/tables/tree-table/tree-label-column-model.js.map +1 -1
  160. package/esm2015/lib/components/tables/tree-table/tree-label-column-model.metadata.json +1 -1
  161. package/esm2015/lib/components/tables/tree-table/tree-node.js +2 -0
  162. package/esm2015/lib/components/tables/tree-table/tree-node.js.map +1 -0
  163. package/esm2015/lib/components/tables/tree-table/tree-node.metadata.json +1 -0
  164. package/esm2015/lib/components/tables/tree-table/tree-table-component.js +1 -1
  165. package/esm2015/lib/components/tables/tree-table/tree-table-component.js.map +1 -1
  166. package/esm2015/lib/components/tables/tree-table/tree-table-component.metadata.json +1 -1
  167. package/esm2015/lib/components/tables/tree-table/tree-table-model.js +2 -3
  168. package/esm2015/lib/components/tables/tree-table/tree-table-model.js.map +1 -1
  169. package/esm2015/lib/components/tables/tree-table/tree-table-model.metadata.json +1 -1
  170. package/esm2015/lib/components/tables/tree-table/visitable.class.js +26 -0
  171. package/esm2015/lib/components/tables/tree-table/visitable.class.js.map +1 -0
  172. package/esm2015/lib/components/tables/tree-table/visitable.class.metadata.json +1 -0
  173. package/esm2015/lib/components/track-by.js +0 -12
  174. package/esm2015/lib/components/track-by.js.map +1 -1
  175. package/esm2015/lib/components/vertical-focus-container/vertical-focus-container.component.js +1 -1
  176. package/esm2015/lib/components/vertical-focus-container/vertical-focus-container.component.metadata.json +1 -1
  177. package/esm2015/lib/directives/command.directive.js +1 -1
  178. package/esm2015/lib/directives/command.directive.js.map +1 -1
  179. package/esm2015/lib/directives/directives.module.ngfactory.js.map +1 -1
  180. package/esm2015/lib/interaction/abstract-interaction-context.js +0 -7
  181. package/esm2015/lib/interaction/abstract-interaction-context.js.map +1 -1
  182. package/esm2015/lib/interaction/abstract-interaction-context.metadata.json +1 -1
  183. package/esm2015/lib/interaction/activity.js +1 -2
  184. package/esm2015/lib/interaction/activity.js.map +1 -1
  185. package/esm2015/lib/interaction/alert.js +1 -17
  186. package/esm2015/lib/interaction/alert.js.map +1 -1
  187. package/esm2015/lib/interaction/components/activity-actions/activity-actions.component.js +11 -17
  188. package/esm2015/lib/interaction/components/activity-actions/activity-actions.component.js.map +1 -1
  189. package/esm2015/lib/interaction/components/activity-actions/activity-actions.component.metadata.json +1 -1
  190. package/esm2015/lib/interaction/components/activity-container/activity-container.component.js +3 -3
  191. package/esm2015/lib/interaction/components/activity-container/activity-container.component.js.map +1 -1
  192. package/esm2015/lib/interaction/components/activity-container/activity-container.component.metadata.json +1 -1
  193. package/esm2015/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.js +1 -1
  194. package/esm2015/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.metadata.json +1 -1
  195. package/esm2015/lib/interaction/components/activity-title/activity-title.component.js +1 -1
  196. package/esm2015/lib/interaction/components/activity-title/activity-title.component.metadata.json +1 -1
  197. package/esm2015/lib/interaction/components/activity-triggers/abstract-activity-trigger.component.js +0 -4
  198. package/esm2015/lib/interaction/components/activity-triggers/abstract-activity-trigger.component.js.map +1 -1
  199. package/esm2015/lib/interaction/components/activity-triggers/abstract-activity-trigger.component.metadata.json +1 -1
  200. package/esm2015/lib/interaction/components/activity-triggers/inline-activity-trigger/inline-activity-trigger.component.js +2 -5
  201. package/esm2015/lib/interaction/components/activity-triggers/inline-activity-trigger/inline-activity-trigger.component.js.map +1 -1
  202. package/esm2015/lib/interaction/components/activity-triggers/inline-activity-trigger/inline-activity-trigger.component.metadata.json +1 -1
  203. package/esm2015/lib/interaction/components/activity-triggers/modal-activity-trigger/modal-activity-trigger.component.js +2 -5
  204. package/esm2015/lib/interaction/components/activity-triggers/modal-activity-trigger/modal-activity-trigger.component.js.map +1 -1
  205. package/esm2015/lib/interaction/components/activity-triggers/modal-activity-trigger/modal-activity-trigger.component.metadata.json +1 -1
  206. package/esm2015/lib/interaction/components/activity-triggers/popup-activity-trigger/popup-activity-trigger.component.js +2 -5
  207. package/esm2015/lib/interaction/components/activity-triggers/popup-activity-trigger/popup-activity-trigger.component.js.map +1 -1
  208. package/esm2015/lib/interaction/components/activity-triggers/popup-activity-trigger/popup-activity-trigger.component.metadata.json +1 -1
  209. package/esm2015/lib/interaction/components/add-item-interaction-context/add-item-interaction-context.component.js +1 -1
  210. package/esm2015/lib/interaction/components/add-item-interaction-context/add-item-interaction-context.component.metadata.json +1 -1
  211. package/esm2015/lib/interaction/components/alert-dialog/alert-dialog.component.js +14 -8
  212. package/esm2015/lib/interaction/components/alert-dialog/alert-dialog.component.js.map +1 -1
  213. package/esm2015/lib/interaction/components/alert-dialog/alert-dialog.component.metadata.json +1 -1
  214. package/esm2015/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.js +31 -8
  215. package/esm2015/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.js.map +1 -1
  216. package/esm2015/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.metadata.json +1 -1
  217. package/esm2015/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.js +26 -7
  218. package/esm2015/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.js.map +1 -1
  219. package/esm2015/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.metadata.json +1 -1
  220. package/esm2015/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.js +3 -10
  221. package/esm2015/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.js.map +1 -1
  222. package/esm2015/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.metadata.json +1 -1
  223. package/esm2015/lib/interaction/components/input-activities/abstract-input-activity.js +43 -0
  224. package/esm2015/lib/interaction/components/input-activities/abstract-input-activity.js.map +1 -0
  225. package/esm2015/lib/interaction/components/input-activities/abstract-input-activity.metadata.json +1 -0
  226. package/esm2015/lib/interaction/components/input-activities/abstract-input-activity.ngfactory.js.map +1 -0
  227. package/esm2015/lib/interaction/components/input-activities/input-activity-data.js +2 -0
  228. package/esm2015/lib/interaction/components/input-activities/input-activity-data.js.map +1 -0
  229. package/esm2015/lib/interaction/components/input-activities/input-activity-data.metadata.json +1 -0
  230. package/esm2015/lib/interaction/components/input-activities/select-input-activity-data.js +2 -0
  231. package/esm2015/lib/interaction/components/input-activities/select-input-activity-data.js.map +1 -0
  232. package/esm2015/lib/interaction/components/input-activities/select-input-activity-data.metadata.json +1 -0
  233. package/esm2015/lib/interaction/components/input-activities/select-input-activity.js +3 -5
  234. package/esm2015/lib/interaction/components/input-activities/select-input-activity.js.map +1 -1
  235. package/esm2015/lib/interaction/components/input-activities/select-input-activity.metadata.json +1 -1
  236. package/esm2015/lib/interaction/components/input-activities/string-input-activity.js +4 -6
  237. package/esm2015/lib/interaction/components/input-activities/string-input-activity.js.map +1 -1
  238. package/esm2015/lib/interaction/components/input-activities/string-input-activity.metadata.json +1 -1
  239. package/esm2015/lib/interaction/components/popup-interaction-context/popup-interaction-context.component.js +1 -2
  240. package/esm2015/lib/interaction/components/popup-interaction-context/popup-interaction-context.component.js.map +1 -1
  241. package/esm2015/lib/interaction/components/popup-interaction-context/popup-interaction-context.component.metadata.json +1 -1
  242. package/esm2015/lib/interaction/exports.js +4 -8
  243. package/esm2015/lib/interaction/exports.js.map +1 -1
  244. package/esm2015/lib/interaction/exports.metadata.json +1 -1
  245. package/esm2015/lib/interaction/interaction-context.js.map +1 -1
  246. package/esm2015/lib/interaction/interaction.module.js +9 -29
  247. package/esm2015/lib/interaction/interaction.module.js.map +1 -1
  248. package/esm2015/lib/interaction/interaction.module.metadata.json +1 -1
  249. package/esm2015/lib/interaction/interaction.module.ngfactory.js.map +1 -1
  250. package/esm2015/lib/interaction/result.js +4 -0
  251. package/esm2015/lib/interaction/result.js.map +1 -0
  252. package/esm2015/lib/interaction/result.metadata.json +1 -0
  253. package/esm2015/lib/interaction/services/interaction.service.js +1 -1
  254. package/esm2015/lib/interaction/services/interaction.service.js.map +1 -1
  255. package/esm2015/lib/place/components/abstract-place-navigation.component.js +1 -1
  256. package/esm2015/lib/place/components/abstract-place-navigation.component.js.map +1 -1
  257. package/esm2015/lib/place/components/list-place-nav/list-place-nav.component.js +1 -1
  258. package/esm2015/lib/place/components/list-place-nav/list-place-nav.component.metadata.json +1 -1
  259. package/esm2015/lib/place/components/not-authorised-notice/not-authorised-notice.component.js +1 -1
  260. package/esm2015/lib/place/components/not-authorised-notice/not-authorised-notice.component.metadata.json +1 -1
  261. package/esm2015/lib/place/components/place-outlet/place-outlet.component.js +1 -1
  262. package/esm2015/lib/place/components/place-outlet/place-outlet.component.metadata.json +1 -1
  263. package/esm2015/lib/place/components/side-place-navigation/side-place-navigation.component.js +1 -1
  264. package/esm2015/lib/place/components/side-place-navigation/side-place-navigation.component.metadata.json +1 -1
  265. package/esm2015/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.js +1 -1
  266. package/esm2015/lib/place/components/tabbed-place-navigation/tabbed-place-navigation.component.metadata.json +1 -1
  267. package/esm2015/lib/place/guards/consolidated-param-map.js +1 -2
  268. package/esm2015/lib/place/guards/consolidated-param-map.js.map +1 -1
  269. package/esm2015/lib/place/guards/consolidated-param-map.metadata.json +1 -1
  270. package/esm2015/lib/place/guards/place.guard.js +1 -2
  271. package/esm2015/lib/place/guards/place.guard.js.map +1 -1
  272. package/esm2015/lib/place/place-component.js +4 -31
  273. package/esm2015/lib/place/place-component.js.map +1 -1
  274. package/esm2015/lib/place/place-component.metadata.json +1 -1
  275. package/esm2015/lib/place/place-router.js +14 -11
  276. package/esm2015/lib/place/place-router.js.map +1 -1
  277. package/esm2015/lib/place/place-router.metadata.json +1 -1
  278. package/esm2015/lib/place/place.module.ngfactory.js.map +1 -1
  279. package/esm2015/lib/place/visit.js +1 -5
  280. package/esm2015/lib/place/visit.js.map +1 -1
  281. package/esm2015/lib/place/visit.metadata.json +1 -1
  282. package/esm2015/lib/services/exports.js +0 -2
  283. package/esm2015/lib/services/exports.js.map +1 -1
  284. package/esm2015/lib/services/exports.metadata.json +1 -1
  285. package/fesm2015/coolon-angular-ui-powerups-cypress.js +244 -546
  286. package/fesm2015/coolon-angular-ui-powerups-cypress.js.map +1 -1
  287. package/fesm2015/coolon-angular-ui-powerups.js +354 -1177
  288. package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
  289. package/lib/components/{cards/card-container → card-container}/card-container.component.d.ts +9 -30
  290. package/lib/components/commands/command-face/command-face.component.d.ts +0 -1
  291. package/lib/components/exports.d.ts +4 -8
  292. package/lib/components/section-header/section-header.component.d.ts +2 -5
  293. package/lib/components/tables/abstract-table-model.d.ts +7 -10
  294. package/lib/components/tables/table/cell-portal-ref.d.ts +1 -1
  295. package/lib/components/tables/table/cell-renderer.d.ts +0 -2
  296. package/lib/components/tables/table/column-model.d.ts +5 -14
  297. package/lib/components/tables/table/default-cell-renderer/default-cell-renderer.component.d.ts +1 -2
  298. package/lib/components/tables/table/edit-row-controls/edit-row-controls.component.d.ts +2 -4
  299. package/lib/components/tables/{edit-session.d.ts → table/edit-session.d.ts} +3 -3
  300. package/lib/components/tables/table/table-cell-renderer/table-cell-renderer.component.d.ts +1 -1
  301. package/lib/components/tables/table/table-row-menu/table-row-menu.component.d.ts +3 -2
  302. package/lib/components/tables/table/table.component.d.ts +12 -13
  303. package/lib/components/tables/tree-table/flattened-tree-list-model.d.ts +1 -0
  304. package/lib/components/tables/tree-table/tree-label-cell-renderer/tree-label-cell-renderer.component.d.ts +3 -2
  305. package/lib/components/tables/tree-table/tree-label-column-model.d.ts +3 -2
  306. package/lib/components/tables/tree-table/tree-node.d.ts +3 -0
  307. package/lib/components/tables/tree-table/tree-table-component.d.ts +1 -1
  308. package/lib/components/tables/tree-table/tree-table-model.d.ts +5 -4
  309. package/lib/components/tables/tree-table/visitable.class.d.ts +22 -0
  310. package/lib/components/track-by.d.ts +0 -9
  311. package/lib/interaction/abstract-interaction-context.d.ts +0 -1
  312. package/lib/interaction/alert.d.ts +1 -7
  313. package/lib/interaction/components/activity-actions/activity-actions.component.d.ts +3 -14
  314. package/lib/interaction/components/activity-triggers/abstract-activity-trigger.component.d.ts +1 -1
  315. package/lib/interaction/components/activity-triggers/inline-activity-trigger/inline-activity-trigger.component.d.ts +1 -2
  316. package/lib/interaction/components/activity-triggers/modal-activity-trigger/modal-activity-trigger.component.d.ts +1 -2
  317. package/lib/interaction/components/activity-triggers/popup-activity-trigger/popup-activity-trigger.component.d.ts +1 -2
  318. package/lib/interaction/components/alert-dialog/alert-dialog.component.d.ts +7 -2
  319. package/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.d.ts +10 -2
  320. package/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.d.ts +9 -2
  321. package/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.d.ts +0 -2
  322. package/lib/interaction/components/input-activities/abstract-input-activity.d.ts +12 -0
  323. package/lib/interaction/components/input-activities/input-activity-data.d.ts +11 -0
  324. package/lib/interaction/components/input-activities/select-input-activity-data.d.ts +8 -0
  325. package/lib/interaction/components/input-activities/select-input-activity.d.ts +3 -11
  326. package/lib/interaction/components/input-activities/string-input-activity.d.ts +2 -6
  327. package/lib/interaction/exports.d.ts +4 -8
  328. package/lib/interaction/interaction-context.d.ts +0 -1
  329. package/lib/interaction/result.d.ts +8 -0
  330. package/lib/place/place-component.d.ts +1 -6
  331. package/lib/place/place-router.d.ts +2 -2
  332. package/lib/services/exports.d.ts +0 -2
  333. package/package.json +16 -17
  334. package/schematics/activity/index.js +1 -1
  335. package/schematics/activity/index.js.map +1 -1
  336. package/schematics/activity/templates/component/__name@dasherize__.component.html.template +1 -1
  337. package/schematics/activity/templates/component/__name@dasherize__.component.ts.template +3 -5
  338. package/schematics/aup-i18n/index.js +1 -1
  339. package/schematics/aup-i18n/index.js.map +1 -1
  340. package/schematics/component/index.js +1 -1
  341. package/schematics/component/index.js.map +1 -1
  342. package/schematics/component/templates/component/__name@dasherize__.component.ts.template +1 -1
  343. package/schematics/place-routes/place-class-scanner.js +1 -3
  344. package/schematics/place-routes/place-class-scanner.js.map +1 -1
  345. package/schematics/utils/build-context.d.ts +3 -6
  346. package/schematics/utils/build-context.js +3 -3
  347. package/schematics/utils/build-context.js.map +1 -1
  348. package/schematics/utils/workspace.d.ts +0 -1
  349. package/schematics/utils/workspace.js +3 -11
  350. package/schematics/utils/workspace.js.map +1 -1
  351. package/assets/activities/activities.scss +0 -77
  352. package/assets/activities/input-activities.scss +0 -36
  353. package/assets/cards.scss +0 -17
  354. package/assets/empty-state.scss +0 -11
  355. package/assets/forms/mixins.scss +0 -6
  356. package/assets/interaction/editor/inline-string-editor.scss +0 -54
  357. package/assets/markdown.scss +0 -10
  358. package/assets/pills.scss +0 -45
  359. package/cypress/component-builder.d.ts +0 -71
  360. package/cypress/components/aup-abstract-activity.d.ts +0 -31
  361. package/cypress/components/aup-abstract-table.d.ts +0 -18
  362. package/cypress/components/aup-activity.d.ts +0 -9
  363. package/cypress/components/aup-alert-dialog.d.ts +0 -27
  364. package/cypress/components/aup-alert.d.ts +0 -9
  365. package/cypress/components/aup-confirm-dialog.d.ts +0 -27
  366. package/cypress/components/aup-confirm.d.ts +0 -11
  367. package/cypress/components/aup-modal-activity.d.ts +0 -24
  368. package/cypress/components/aup-modal-mixin.d.ts +0 -23
  369. package/cypress/components/aup-tree-table.d.ts +0 -16
  370. package/cypress/components/form-element-mixin.d.ts +0 -22
  371. package/cypress/components/mat-checkbox.d.ts +0 -31
  372. package/cypress/components/popup/aup-abstract-popup-menu.d.ts +0 -15
  373. package/cypress/components/popup/aup-more-menu.d.ts +0 -5
  374. package/cypress/components/popup/aup-popup-menu-panel.d.ts +0 -3
  375. package/cypress/components/popup/aup-popup-menu.d.ts +0 -7
  376. package/cypress/components/table/aup-table-cell.d.ts +0 -9
  377. package/cypress/components/table/aup-table-column.d.ts +0 -10
  378. package/cypress/components/table/aup-table-row.d.ts +0 -17
  379. package/cypress/components/table/aup-table-selection-cell.d.ts +0 -5
  380. package/cypress/components/table/aup-table-selection-column.d.ts +0 -5
  381. package/cypress/element-locator.d.ts +0 -8
  382. package/cypress/page-builder.d.ts +0 -9
  383. package/esm2015/cypress/component-builder.js +0 -92
  384. package/esm2015/cypress/component-builder.js.map +0 -1
  385. package/esm2015/cypress/component-builder.metadata.json +0 -1
  386. package/esm2015/cypress/components/aup-abstract-activity.js +0 -12
  387. package/esm2015/cypress/components/aup-abstract-activity.js.map +0 -1
  388. package/esm2015/cypress/components/aup-abstract-activity.metadata.json +0 -1
  389. package/esm2015/cypress/components/aup-abstract-table.js +0 -50
  390. package/esm2015/cypress/components/aup-abstract-table.js.map +0 -1
  391. package/esm2015/cypress/components/aup-abstract-table.metadata.json +0 -1
  392. package/esm2015/cypress/components/aup-activity.js +0 -13
  393. package/esm2015/cypress/components/aup-activity.js.map +0 -1
  394. package/esm2015/cypress/components/aup-activity.metadata.json +0 -1
  395. package/esm2015/cypress/components/aup-alert-dialog.js +0 -8
  396. package/esm2015/cypress/components/aup-alert-dialog.js.map +0 -1
  397. package/esm2015/cypress/components/aup-alert-dialog.metadata.json +0 -1
  398. package/esm2015/cypress/components/aup-alert.js +0 -13
  399. package/esm2015/cypress/components/aup-alert.js.map +0 -1
  400. package/esm2015/cypress/components/aup-alert.metadata.json +0 -1
  401. package/esm2015/cypress/components/aup-confirm-dialog.js +0 -8
  402. package/esm2015/cypress/components/aup-confirm-dialog.js.map +0 -1
  403. package/esm2015/cypress/components/aup-confirm-dialog.metadata.json +0 -1
  404. package/esm2015/cypress/components/aup-confirm.js +0 -19
  405. package/esm2015/cypress/components/aup-confirm.js.map +0 -1
  406. package/esm2015/cypress/components/aup-confirm.metadata.json +0 -1
  407. package/esm2015/cypress/components/aup-modal-activity.js +0 -5
  408. package/esm2015/cypress/components/aup-modal-activity.js.map +0 -1
  409. package/esm2015/cypress/components/aup-modal-activity.metadata.json +0 -1
  410. package/esm2015/cypress/components/aup-modal-mixin.js +0 -18
  411. package/esm2015/cypress/components/aup-modal-mixin.js.map +0 -1
  412. package/esm2015/cypress/components/aup-modal-mixin.metadata.json +0 -1
  413. package/esm2015/cypress/components/aup-tree-table.js +0 -34
  414. package/esm2015/cypress/components/aup-tree-table.js.map +0 -1
  415. package/esm2015/cypress/components/aup-tree-table.metadata.json +0 -1
  416. package/esm2015/cypress/components/form-element-mixin.js +0 -11
  417. package/esm2015/cypress/components/form-element-mixin.js.map +0 -1
  418. package/esm2015/cypress/components/form-element-mixin.metadata.json +0 -1
  419. package/esm2015/cypress/components/mat-checkbox.js +0 -34
  420. package/esm2015/cypress/components/mat-checkbox.js.map +0 -1
  421. package/esm2015/cypress/components/mat-checkbox.metadata.json +0 -1
  422. package/esm2015/cypress/components/popup/aup-abstract-popup-menu.js +0 -33
  423. package/esm2015/cypress/components/popup/aup-abstract-popup-menu.js.map +0 -1
  424. package/esm2015/cypress/components/popup/aup-abstract-popup-menu.metadata.json +0 -1
  425. package/esm2015/cypress/components/popup/aup-more-menu.js +0 -8
  426. package/esm2015/cypress/components/popup/aup-more-menu.js.map +0 -1
  427. package/esm2015/cypress/components/popup/aup-more-menu.metadata.json +0 -1
  428. package/esm2015/cypress/components/popup/aup-popup-menu-panel.js +0 -4
  429. package/esm2015/cypress/components/popup/aup-popup-menu-panel.js.map +0 -1
  430. package/esm2015/cypress/components/popup/aup-popup-menu-panel.metadata.json +0 -1
  431. package/esm2015/cypress/components/popup/aup-popup-menu.js +0 -12
  432. package/esm2015/cypress/components/popup/aup-popup-menu.js.map +0 -1
  433. package/esm2015/cypress/components/popup/aup-popup-menu.metadata.json +0 -1
  434. package/esm2015/cypress/components/table/aup-table-cell.js +0 -14
  435. package/esm2015/cypress/components/table/aup-table-cell.js.map +0 -1
  436. package/esm2015/cypress/components/table/aup-table-cell.metadata.json +0 -1
  437. package/esm2015/cypress/components/table/aup-table-column.js +0 -19
  438. package/esm2015/cypress/components/table/aup-table-column.js.map +0 -1
  439. package/esm2015/cypress/components/table/aup-table-column.metadata.json +0 -1
  440. package/esm2015/cypress/components/table/aup-table-row.js +0 -28
  441. package/esm2015/cypress/components/table/aup-table-row.js.map +0 -1
  442. package/esm2015/cypress/components/table/aup-table-row.metadata.json +0 -1
  443. package/esm2015/cypress/components/table/aup-table-selection-cell.js +0 -6
  444. package/esm2015/cypress/components/table/aup-table-selection-cell.js.map +0 -1
  445. package/esm2015/cypress/components/table/aup-table-selection-cell.metadata.json +0 -1
  446. package/esm2015/cypress/components/table/aup-table-selection-column.js +0 -6
  447. package/esm2015/cypress/components/table/aup-table-selection-column.js.map +0 -1
  448. package/esm2015/cypress/components/table/aup-table-selection-column.metadata.json +0 -1
  449. package/esm2015/cypress/element-locator.js +0 -16
  450. package/esm2015/cypress/element-locator.js.map +0 -1
  451. package/esm2015/cypress/element-locator.metadata.json +0 -1
  452. package/esm2015/cypress/page-builder.js +0 -16
  453. package/esm2015/cypress/page-builder.js.map +0 -1
  454. package/esm2015/cypress/page-builder.metadata.json +0 -1
  455. package/esm2015/lib/components/cards/abstract-card-container.component.js +0 -29
  456. package/esm2015/lib/components/cards/abstract-card-container.component.js.map +0 -1
  457. package/esm2015/lib/components/cards/abstract-card-container.component.metadata.json +0 -1
  458. package/esm2015/lib/components/cards/abstract-card-container.component.ngfactory.js.map +0 -1
  459. package/esm2015/lib/components/cards/card-container/card-container.component.js +0 -123
  460. package/esm2015/lib/components/cards/card-container/card-container.component.js.map +0 -1
  461. package/esm2015/lib/components/cards/card-container/card-container.component.metadata.json +0 -1
  462. package/esm2015/lib/components/cards/card-container/card-container.component.ngfactory.js.map +0 -1
  463. package/esm2015/lib/components/cards/card-container/card-container.component.scss.shim.ngstyle.js.map +0 -1
  464. package/esm2015/lib/components/cards/card-stack/card-stack.component.js +0 -78
  465. package/esm2015/lib/components/cards/card-stack/card-stack.component.js.map +0 -1
  466. package/esm2015/lib/components/cards/card-stack/card-stack.component.metadata.json +0 -1
  467. package/esm2015/lib/components/cards/card-stack/card-stack.component.ngfactory.js.map +0 -1
  468. package/esm2015/lib/components/cards/card-stack/card-stack.component.scss.shim.ngstyle.js.map +0 -1
  469. package/esm2015/lib/components/labelled-value/labelled-value.component.js +0 -22
  470. package/esm2015/lib/components/labelled-value/labelled-value.component.js.map +0 -1
  471. package/esm2015/lib/components/labelled-value/labelled-value.component.metadata.json +0 -1
  472. package/esm2015/lib/components/labelled-value/labelled-value.component.ngfactory.js.map +0 -1
  473. package/esm2015/lib/components/loading-container/loading-container.component.js +0 -45
  474. package/esm2015/lib/components/loading-container/loading-container.component.js.map +0 -1
  475. package/esm2015/lib/components/loading-container/loading-container.component.metadata.json +0 -1
  476. package/esm2015/lib/components/loading-container/loading-container.component.ngfactory.js.map +0 -1
  477. package/esm2015/lib/components/loading-container/loading-container.component.scss.shim.ngstyle.js.map +0 -1
  478. package/esm2015/lib/components/tables/edit-session.js.map +0 -1
  479. package/esm2015/lib/components/tables/table/text-search-predicate.js +0 -2
  480. package/esm2015/lib/components/tables/table/text-search-predicate.js.map +0 -1
  481. package/esm2015/lib/components/tables/table/text-search-predicate.metadata.json +0 -1
  482. package/esm2015/lib/components/text/markdown/markdown.component.js +0 -53
  483. package/esm2015/lib/components/text/markdown/markdown.component.js.map +0 -1
  484. package/esm2015/lib/components/text/markdown/markdown.component.metadata.json +0 -1
  485. package/esm2015/lib/components/text/markdown/markdown.component.ngfactory.js.map +0 -1
  486. package/esm2015/lib/components/text/markdown/markdown.component.scss.shim.ngstyle.js.map +0 -1
  487. package/esm2015/lib/interaction/components/abstract-confirm-dialog.component.js +0 -23
  488. package/esm2015/lib/interaction/components/abstract-confirm-dialog.component.js.map +0 -1
  489. package/esm2015/lib/interaction/components/abstract-confirm-dialog.component.metadata.json +0 -1
  490. package/esm2015/lib/interaction/components/abstract-confirm-dialog.component.ngfactory.js.map +0 -1
  491. package/esm2015/lib/interaction/components/abstract-dialog.component.js +0 -52
  492. package/esm2015/lib/interaction/components/abstract-dialog.component.js.map +0 -1
  493. package/esm2015/lib/interaction/components/abstract-dialog.component.metadata.json +0 -1
  494. package/esm2015/lib/interaction/components/abstract-dialog.component.ngfactory.js.map +0 -1
  495. package/esm2015/lib/interaction/components/add-card-activity/add-card-activity.component.js +0 -77
  496. package/esm2015/lib/interaction/components/add-card-activity/add-card-activity.component.js.map +0 -1
  497. package/esm2015/lib/interaction/components/add-card-activity/add-card-activity.component.metadata.json +0 -1
  498. package/esm2015/lib/interaction/components/add-card-activity/add-card-activity.component.ngfactory.js.map +0 -1
  499. package/esm2015/lib/interaction/components/add-card-activity/add-card-activity.component.scss.shim.ngstyle.js.map +0 -1
  500. package/esm2015/lib/interaction/components/confirm-then-execute-dialog/confirm-then-execute-dialog.component.js +0 -30
  501. package/esm2015/lib/interaction/components/confirm-then-execute-dialog/confirm-then-execute-dialog.component.js.map +0 -1
  502. package/esm2015/lib/interaction/components/confirm-then-execute-dialog/confirm-then-execute-dialog.component.metadata.json +0 -1
  503. package/esm2015/lib/interaction/components/confirm-then-execute-dialog/confirm-then-execute-dialog.component.ngfactory.js.map +0 -1
  504. package/esm2015/lib/interaction/components/confirm-then-execute-dialog/confirm-then-execute-dialog.component.scss.shim.ngstyle.js.map +0 -1
  505. package/esm2015/lib/interaction/components/editors/edit-context.js +0 -2
  506. package/esm2015/lib/interaction/components/editors/edit-context.js.map +0 -1
  507. package/esm2015/lib/interaction/components/editors/edit-context.metadata.json +0 -1
  508. package/esm2015/lib/interaction/components/editors/inline-string-editor/inline-editor-model.js +0 -50
  509. package/esm2015/lib/interaction/components/editors/inline-string-editor/inline-editor-model.js.map +0 -1
  510. package/esm2015/lib/interaction/components/editors/inline-string-editor/inline-editor-model.metadata.json +0 -1
  511. package/esm2015/lib/interaction/components/editors/inline-string-editor/inline-string-editor.component.js +0 -161
  512. package/esm2015/lib/interaction/components/editors/inline-string-editor/inline-string-editor.component.js.map +0 -1
  513. package/esm2015/lib/interaction/components/editors/inline-string-editor/inline-string-editor.component.metadata.json +0 -1
  514. package/esm2015/lib/interaction/components/editors/inline-string-editor/inline-string-editor.component.ngfactory.js.map +0 -1
  515. package/esm2015/lib/interaction/components/input-activities/input-activity.js +0 -95
  516. package/esm2015/lib/interaction/components/input-activities/input-activity.js.map +0 -1
  517. package/esm2015/lib/interaction/components/input-activities/input-activity.metadata.json +0 -1
  518. package/esm2015/lib/interaction/components/input-activities/input-activity.ngfactory.js.map +0 -1
  519. package/esm2015/lib/services/markdown/markdown.service.js +0 -26
  520. package/esm2015/lib/services/markdown/markdown.service.js.map +0 -1
  521. package/esm2015/lib/services/markdown/markdown.service.metadata.json +0 -1
  522. package/esm2015/lib/services/markdown/markdown.service.ngfactory.js.map +0 -1
  523. package/esm2015/lib/services/markdown/pill-plugin.js +0 -38
  524. package/esm2015/lib/services/markdown/pill-plugin.js.map +0 -1
  525. package/esm2015/lib/services/markdown/pill-plugin.metadata.json +0 -1
  526. package/lib/components/cards/abstract-card-container.component.d.ts +0 -11
  527. package/lib/components/cards/card-stack/card-stack.component.d.ts +0 -65
  528. package/lib/components/labelled-value/labelled-value.component.d.ts +0 -7
  529. package/lib/components/loading-container/loading-container.component.d.ts +0 -11
  530. package/lib/components/tables/table/text-search-predicate.d.ts +0 -1
  531. package/lib/components/text/markdown/markdown.component.d.ts +0 -14
  532. package/lib/interaction/components/abstract-confirm-dialog.component.d.ts +0 -7
  533. package/lib/interaction/components/abstract-dialog.component.d.ts +0 -17
  534. package/lib/interaction/components/add-card-activity/add-card-activity.component.d.ts +0 -39
  535. package/lib/interaction/components/confirm-then-execute-dialog/confirm-then-execute-dialog.component.d.ts +0 -12
  536. package/lib/interaction/components/editors/edit-context.d.ts +0 -3
  537. package/lib/interaction/components/editors/inline-string-editor/inline-editor-model.d.ts +0 -24
  538. package/lib/interaction/components/editors/inline-string-editor/inline-string-editor.component.d.ts +0 -57
  539. package/lib/interaction/components/input-activities/input-activity.d.ts +0 -41
  540. package/lib/services/markdown/markdown.service.d.ts +0 -6
  541. package/lib/services/markdown/pill-plugin.d.ts +0 -15
  542. /package/esm2015/lib/components/tables/{edit-session.js → table/edit-session.js} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"tree-label-cell-renderer.component.js","sourceRoot":"","sources":["../../../../../../../../../libs/angular-ui-powerups/src/lib/components/tables/tree-table/tree-label-cell-renderer/tree-label-cell-renderer.component.ts"],"names":[],"mappings":"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","sourcesContent":["import { Component, HostBinding, Input, OnInit } from '@angular/core';\nimport { Dsl, ListModelChain, MutableValueModel, StoreInValueModel, ValueModelChain } from '@coolon/pectin';\nimport { DisposableComponent } from '../../../disposable-component';\nimport { CellRenderer } from '../../table/cell-renderer';\nimport { DecoratedTreeNode } from '../decorated-tree-node';\nimport { TreeExpansionModel } from '../tree-expansion-model';\nimport { TreeInheritanceIconComponent } from '../tree-inheritance-icon/tree-inheritance-icon.component';\nimport { TreeTableModel } from '../tree-table-model';\n\n@Component({\n selector: 'aup-tree-label-cell-renderer',\n templateUrl: './tree-label-cell-renderer.component.html',\n styleUrls: ['./tree-label-cell-renderer.component.scss']\n})\nexport class TreeLabelCellRendererComponent<T> extends DisposableComponent implements CellRenderer<T>, OnInit {\n\n iconTypes: string[] = [];\n\n private nodeModel = new MutableValueModel<T>();\n\n @Input()\n @StoreInValueModel('nodeModel')\n value: T;\n\n @Input()\n label: string;\n\n @Input()\n iconFactory: TreeTableModel.IconFactory<T>;\n\n // TODO: Make this have a proper delegate so I can safely use it here..\n @Input()\n treeTableModel: TreeTableModel<T>;\n\n readonly iconList: ListModelChain<string>;\n\n canExpand: ValueModelChain<boolean>;\n canCollapse: ValueModelChain<boolean>;\n iconModel: ValueModelChain<string>;\n\n constructor() {\n super();\n const { chain } = Dsl.disposeWith(this);\n this.iconList = chain(this.nodeModel).mapToList(node => {\n const icons: string[] = DecoratedTreeNode.getDecorator(node).ancestors().slice(1).map(ancestor => {\n return DecoratedTreeNode.getDecorator(ancestor).isLastChild() ? TreeInheritanceIconComponent.Type.ICON_BLANK : TreeInheritanceIconComponent.Type.ICON_THROUGH;\n });\n if (!DecoratedTreeNode.getDecorator(node).isRoot()) {\n icons.push(DecoratedTreeNode.getDecorator(node).isLastChild() ? TreeInheritanceIconComponent.Type.ICON_INHERITED_TERMINAL : TreeInheritanceIconComponent.Type.ICON_INHERITED_THROUGH_TERMINAL);\n }\n return icons;\n });\n }\n\n ngOnInit(): void {\n const { chain } = Dsl.disposeWith(this);\n this.canExpand = chain(this.nodeModel).map(node => {\n return DecoratedTreeNode.getDecorator(node).hasChildren() && this.treeTableModel.isCollapsed(node);\n }, { dependsOn: this.treeTableModel.treeExpansionModel.isExpandedPredicate });\n\n this.canCollapse = chain(this.nodeModel).map(node => {\n return DecoratedTreeNode.getDecorator(node).hasChildren() && !this.treeTableModel.isCollapsed(node);\n }, { dependsOn: this.treeTableModel.treeExpansionModel.isExpandedPredicate });\n\n this.iconModel = chain(this.nodeModel).map(node => {\n const expanded = this.treeTableModel.treeExpansionModel.isExpanded(this.node);\n const iconFactory = this.iconFactory ?? TreeLabelCellRendererComponent.DEFAULT_ICON_FACTORY;\n return iconFactory(node, expanded, TreeLabelCellRendererComponent.DEFAULT_ICON_FACTORY(node, expanded, undefined));\n }, { dependsOn: this.treeTableModel.treeExpansionModel.isExpandedPredicate });\n }\n\n @HostBinding('class.root')\n get isRoot() {\n return DecoratedTreeNode.getDecorator(this.node).isRoot();\n }\n\n @HostBinding('class.leaf')\n get isLeaf() {\n return DecoratedTreeNode.getDecorator(this.node).isLeaf();\n }\n\n get node() {\n return this.nodeModel.value;\n }\n\n // @Trace()\n expandOrCollapse($event: MouseEvent, node: DecoratedTreeNode<T>) {\n $event.preventDefault();\n $event.stopPropagation();\n this.treeTableModel.isCollapsed(node) ? this.treeTableModel.expand(node) : this.treeTableModel.collapse(node);\n }\n}\n\nexport namespace TreeLabelCellRendererComponent {\n export const DEFAULT_ICON_FACTORY: TreeTableModel.IconFactory<any> = (node: any, expanded: boolean, defaultIcon: string) => {\n const isLeaf = DecoratedTreeNode.getDecorator(node).isLeaf();\n return isLeaf ?\n undefined :\n expanded ?\n 'mat:expand_more' :\n 'mat:chevron_right';\n };\n}\n"]}
1
+ {"version":3,"file":"tree-label-cell-renderer.component.js","sourceRoot":"","sources":["../../../../../../../../../libs/angular-ui-powerups/src/lib/components/tables/tree-table/tree-label-cell-renderer/tree-label-cell-renderer.component.ts"],"names":[],"mappings":"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","sourcesContent":["import { Component, HostBinding, Input, OnInit } from '@angular/core';\nimport { Dsl, ListModelChain, MutableValueModel, StoreInValueModel, ValueModelChain } from '@coolon/pectin';\nimport { DisposableComponent } from '../../../disposable-component';\nimport { CellRenderer } from '../../table/cell-renderer';\nimport { DecoratedTreeNode } from '../decorated-tree-node';\nimport { TreeExpansionModel } from '../tree-expansion-model';\nimport { TreeInheritanceIconComponent } from '../tree-inheritance-icon/tree-inheritance-icon.component';\nimport { TreeTableModel } from '../tree-table-model';\n\n@Component({\n selector: 'aup-tree-label-cell-renderer',\n templateUrl: './tree-label-cell-renderer.component.html',\n styleUrls: ['./tree-label-cell-renderer.component.scss']\n})\nexport class TreeLabelCellRendererComponent<T> extends DisposableComponent implements CellRenderer<T>, OnInit {\n\n iconTypes: string[] = [];\n\n private nodeModel = new MutableValueModel<T>();\n\n @Input()\n @StoreInValueModel('nodeModel')\n value: T;\n\n @Input()\n label: string;\n\n @Input()\n iconFactory: TreeTableModel.IconFactory<T>;\n\n // TODO: Make this have a proper delegate so I can safely use it here..\n @Input()\n expansionModel: TreeExpansionModel<T>;\n\n readonly iconList: ListModelChain<string>;\n\n canExpand: ValueModelChain<boolean>;\n canCollapse: ValueModelChain<boolean>;\n iconModel: ValueModelChain<string>;\n\n constructor() {\n super();\n const { chain } = Dsl.disposeWith(this);\n this.iconList = chain(this.nodeModel).mapToList(node => {\n const icons: string[] = DecoratedTreeNode.getDecorator(node).ancestors().slice(1).map(ancestor => {\n return DecoratedTreeNode.getDecorator(ancestor).isLastChild() ? TreeInheritanceIconComponent.Type.ICON_BLANK : TreeInheritanceIconComponent.Type.ICON_THROUGH;\n });\n if (!DecoratedTreeNode.getDecorator(node).isRoot()) {\n icons.push(DecoratedTreeNode.getDecorator(node).isLastChild() ? TreeInheritanceIconComponent.Type.ICON_INHERITED_TERMINAL : TreeInheritanceIconComponent.Type.ICON_INHERITED_THROUGH_TERMINAL);\n }\n return icons;\n });\n }\n\n ngOnInit(): void {\n const { chain } = Dsl.disposeWith(this);\n this.canExpand = chain(this.nodeModel).map(node => {\n return DecoratedTreeNode.getDecorator(node).hasChildren() && this.expansionModel.isCollapsed(node);\n }, { dependsOn: this.expansionModel.isExpandedPredicate });\n\n this.canCollapse = chain(this.nodeModel).map(node => {\n return DecoratedTreeNode.getDecorator(node).hasChildren() && !this.expansionModel.isCollapsed(node);\n }, { dependsOn: this.expansionModel.isExpandedPredicate });\n\n this.iconModel = chain(this.nodeModel).map(node => {\n const expanded = this.expansionModel.isExpanded(this.node);\n const iconFactory = this.iconFactory ?? TreeLabelCellRendererComponent.DEFAULT_ICON_FACTORY;\n return iconFactory(node, expanded, TreeLabelCellRendererComponent.DEFAULT_ICON_FACTORY(node, expanded, undefined));\n }, { dependsOn: this.expansionModel.isExpandedPredicate });\n }\n\n @HostBinding('class.root')\n get isRoot() {\n return DecoratedTreeNode.getDecorator(this.node).isRoot();\n }\n\n @HostBinding('class.leaf')\n get isLeaf() {\n return DecoratedTreeNode.getDecorator(this.node).isLeaf();\n }\n\n get node() {\n return this.nodeModel.value;\n }\n\n // @Trace()\n expandOrCollapse(node: DecoratedTreeNode<T>) {\n this.expansionModel.isCollapsed(node) ? this.expansionModel.expand(node) : this.expansionModel.collapse(node);\n }\n}\n\nexport namespace TreeLabelCellRendererComponent {\n export const DEFAULT_ICON_FACTORY: TreeTableModel.IconFactory<any> = (node: any, expanded: boolean, defaultIcon: string) => expanded ? 'mat:expand_more' : 'mat:chevron_right';\n}\n"]}
@@ -1 +1 @@
1
- [{"__symbolic":"module","version":4,"metadata":{"TreeLabelCellRendererComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../../../disposable-component","name":"DisposableComponent","line":14,"character":55},"arity":1,"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"aup-tree-label-cell-renderer","template":"<div class=\"tree-icons\">\n <aup-tree-inheritance-icon *ngFor=\"let iconClass of iconList.value\" [type]=\"iconClass\"></aup-tree-inheritance-icon>\n <aup-icon *ngIf=\"iconModel.value\"\n [icon]=\"iconModel.value\"\n [class.clickable]=\"canExpand.value || canCollapse.value\"\n (click)=\"expandOrCollapse($event, node)\" ></aup-icon>\n</div>\n<div class=\"label\">{{label}}</div>\n","styles":[":host{--line-color: #ddd;--node-color: #999;display:inline-flex;flex-direction:row;align-items:stretch}:host div.label{display:flex;flex-direction:row;align-items:center;white-space:nowrap;padding-left:6px}:host div.tree-icons{display:grid;grid-auto-flow:column;grid-auto-columns:auto;grid-template-rows:1fr;align-items:stretch;justify-content:stretch}:host div.tree-icons aup-icon{align-self:center;color:var(--node-color)}:host div.tree-icons aup-icon.clickable{cursor:pointer}:host div.tree-icons aup-tree-inheritance-icon,:host div.tree-icons aup-icon{margin-left:4px}\n"]}]}],"members":{"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"StoreInValueModel","line":21,"character":3},"arguments":["nodeModel"]}]}],"label":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":3}}]}],"iconFactory":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":3}}]}],"treeTableModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":31,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"isRoot":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":71,"character":3},"arguments":["class.root"]}]}],"isLeaf":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":76,"character":3},"arguments":["class.leaf"]}]}],"expandOrCollapse":[{"__symbolic":"method"}]}}}}]
1
+ [{"__symbolic":"module","version":4,"metadata":{"TreeLabelCellRendererComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../../../disposable-component","name":"DisposableComponent","line":14,"character":55},"arity":1,"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"aup-tree-label-cell-renderer","template":"<div class=\"tree-icons\">\n <aup-tree-inheritance-icon *ngFor=\"let iconClass of iconList.value\" [type]=\"iconClass\"></aup-tree-inheritance-icon>\n <aup-icon *ngIf=\"iconModel.value\"\n [icon]=\"iconModel.value\"\n [class.clickable]=\"canExpand.value || canCollapse.value\"\n (click)=\"expandOrCollapse(node)\" ></aup-icon>\n</div>\n<div class=\"label\">{{label}}</div>\n","styles":[":host{--line-color:#ddd;--node-color:#999;display:inline-flex;flex-direction:row;align-items:stretch}:host div.label{display:flex;flex-direction:row;align-items:center;white-space:nowrap;padding-left:6px}:host div.tree-icons{display:grid;grid-auto-flow:column;grid-auto-columns:auto;grid-template-rows:1fr;align-items:stretch;justify-content:stretch}:host div.tree-icons aup-icon{align-self:center;color:var(--node-color)}:host div.tree-icons aup-icon.clickable{cursor:pointer}:host div.tree-icons aup-icon,:host div.tree-icons aup-tree-inheritance-icon{margin-left:4px}"]}]}],"members":{"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"StoreInValueModel","line":21,"character":3},"arguments":["nodeModel"]}]}],"label":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":3}}]}],"iconFactory":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":3}}]}],"expansionModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":31,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}],"isRoot":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":71,"character":3},"arguments":["class.root"]}]}],"isLeaf":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostBinding","line":76,"character":3},"arguments":["class.leaf"]}]}],"expandOrCollapse":[{"__symbolic":"method"}]}}}}]
@@ -24,7 +24,7 @@ export class TreeLabelColumnModel extends ColumnModel {
24
24
  cellRenderer(componentType) {
25
25
  this.configureCellRenderer(new ComponentCellRendererPortalRef(componentType, (component, rowData, firstTime) => {
26
26
  if (firstTime) {
27
- component.treeTableModel = this.expansionModel;
27
+ component.expansionModel = this.expansionModel;
28
28
  }
29
29
  component.value = rowData.row;
30
30
  component.label = _.isNil(this.labelProperty) ? undefined : rowData.row[this.labelProperty];
@@ -1 +1 @@
1
- {"version":3,"file":"tree-label-column-model.js","sourceRoot":"","sources":["../../../../../../../../libs/angular-ui-powerups/src/lib/components/tables/tree-table/tree-label-column-model.ts"],"names":[],"mappings":"AAEA,OAAO,CAAC,MAAM,QAAQ,CAAC;AACvB,OAAO,EAAE,8BAA8B,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,8BAA8B,EAAE,MAAM,+DAA+D,CAAC;AAG/G,MAAM,OAAO,oBAA0B,SAAQ,WAAgB;IAK7D,YAAY,QAAgB,EAChB,sBAA0D,EACjD,cAAmC;QACtD,KAAK,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAC;QADrB,mBAAc,GAAd,cAAc,CAAqB;QAEtD,IAAI,CAAC,YAAY,CAAC,8BAA8B,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAyC,QAAW;QACvD,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC;IAChC,CAAC;IAED;;;OAGG;IACH,OAAO,CAAyC,OAAwC;QACtF,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACxB,CAAC;IAED,OAAO,CAAyC,OAAwC;QACtF,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;IAC7B,CAAC;IAES,YAAY,CAAgD,aAA+B;QACnG,IAAI,CAAC,qBAAqB,CAAC,IAAI,8BAA8B,CAAC,aAAa,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE;YAC7G,IAAI,SAAS,EAAE;gBACb,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;aAChD;YACD,SAAS,CAAC,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC;YAC9B,SAAS,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC5F,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAC3C,CAAC,CAAC,CAAC,CAAC;QACJ,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,iBAAiB,CAAC,gBAAyB;QAChD,OAAO,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IACnD,CAAC;CAEF","sourcesContent":["import { ComponentType } from '@angular/cdk/overlay';\nimport { Types } from '@coolon/pectin';\nimport _ from 'lodash';\nimport { ComponentCellRendererPortalRef } from '../table/cell-portal-ref';\nimport { ColumnModel } from '../table/column-model';\nimport { TreeLabelCellRendererComponent } from './tree-label-cell-renderer/tree-label-cell-renderer.component';\nimport { TreeTableModel } from './tree-table-model';\n\nexport class TreeLabelColumnModel<Row> extends ColumnModel<Row> {\n\n private labelProperty: string | number | symbol;\n private iconFactory: TreeTableModel.IconFactory<Row>;\n\n constructor(columnId: string,\n textPropertiesProvider: ColumnModel.TextPropertiesProvider,\n readonly expansionModel: TreeTableModel<Row>) {\n super(columnId, textPropertiesProvider);\n this.cellRenderer(TreeLabelCellRendererComponent);\n }\n\n pluck<P extends Types.ValuePropertiesOf<Row>>(property: P) {\n this.labelProperty = property;\n }\n\n /**\n * @deprecated use #useIcon instead.\n * @param factory\n */\n addIcon<P extends Types.ValuePropertiesOf<Row>>(factory: TreeTableModel.IconFactory<Row>) {\n this.useIcon(factory);\n }\n\n useIcon<P extends Types.ValuePropertiesOf<Row>>(factory: TreeTableModel.IconFactory<Row>) {\n this.iconFactory = factory;\n }\n\n protected cellRenderer<C extends TreeLabelCellRendererComponent<Row>>(componentType: ComponentType<C>): this {\n this.configureCellRenderer(new ComponentCellRendererPortalRef(componentType, (component, rowData, firstTime) => {\n if (firstTime) {\n component.treeTableModel = this.expansionModel;\n }\n component.value = rowData.row;\n component.label = _.isNil(this.labelProperty) ? undefined : rowData.row[this.labelProperty];\n component.iconFactory = this.iconFactory;\n }));\n return this;\n }\n\n public _selectRowOnClick(selectOnRowClick: boolean): this {\n return super._selectRowOnClick(selectOnRowClick);\n }\n\n}\n"]}
1
+ {"version":3,"file":"tree-label-column-model.js","sourceRoot":"","sources":["../../../../../../../../libs/angular-ui-powerups/src/lib/components/tables/tree-table/tree-label-column-model.ts"],"names":[],"mappings":"AAEA,OAAO,CAAC,MAAM,QAAQ,CAAC;AACvB,OAAO,EAAE,8BAA8B,EAAE,MAAM,0BAA0B,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,OAAO,EAAE,8BAA8B,EAAE,MAAM,+DAA+D,CAAC;AAG/G,MAAM,OAAO,oBAA0B,SAAQ,WAAgB;IAK7D,YAAY,QAAgB,EAChB,sBAA0D,EACjD,cAAuC;QAC1D,KAAK,CAAC,QAAQ,EAAE,sBAAsB,CAAC,CAAC;QADrB,mBAAc,GAAd,cAAc,CAAyB;QAE1D,IAAI,CAAC,YAAY,CAAC,8BAA8B,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAyC,QAAW;QACvD,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC;IAChC,CAAC;IAED;;;OAGG;IACH,OAAO,CAAyC,OAAwC;QACtF,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACxB,CAAC;IAED,OAAO,CAAyC,OAAwC;QACtF,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC;IAC7B,CAAC;IAES,YAAY,CAAgD,aAA+B;QACnG,IAAI,CAAC,qBAAqB,CAAC,IAAI,8BAA8B,CAAC,aAAa,EAAE,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE;YAC7G,IAAI,SAAS,EAAE;gBACb,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;aAChD;YACD,SAAS,CAAC,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC;YAC9B,SAAS,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAC5F,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAC;QAC3C,CAAC,CAAC,CAAC,CAAC;QACJ,OAAO,IAAI,CAAC;IACd,CAAC;IAEM,iBAAiB,CAAC,gBAAyB;QAChD,OAAO,KAAK,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IACnD,CAAC;CAEF","sourcesContent":["import { ComponentType } from '@angular/cdk/overlay';\nimport { Types } from '@coolon/pectin';\nimport _ from 'lodash';\nimport { ComponentCellRendererPortalRef } from '../table/cell-portal-ref';\nimport { ColumnModel } from '../table/column-model';\nimport { TreeExpansionModel } from './tree-expansion-model';\nimport { TreeLabelCellRendererComponent } from './tree-label-cell-renderer/tree-label-cell-renderer.component';\nimport { TreeTableModel } from './tree-table-model';\n\nexport class TreeLabelColumnModel<Row> extends ColumnModel<Row> {\n\n private labelProperty: string | number | symbol;\n private iconFactory: TreeTableModel.IconFactory<Row>;\n\n constructor(columnId: string,\n textPropertiesProvider: ColumnModel.TextPropertiesProvider,\n readonly expansionModel: TreeExpansionModel<Row>) {\n super(columnId, textPropertiesProvider);\n this.cellRenderer(TreeLabelCellRendererComponent);\n }\n\n pluck<P extends Types.ValuePropertiesOf<Row>>(property: P) {\n this.labelProperty = property;\n }\n\n /**\n * @deprecated use #useIcon instead.\n * @param factory\n */\n addIcon<P extends Types.ValuePropertiesOf<Row>>(factory: TreeTableModel.IconFactory<Row>) {\n this.useIcon(factory);\n }\n\n useIcon<P extends Types.ValuePropertiesOf<Row>>(factory: TreeTableModel.IconFactory<Row>) {\n this.iconFactory = factory;\n }\n\n protected cellRenderer<C extends TreeLabelCellRendererComponent<Row>>(componentType: ComponentType<C>): this {\n this.configureCellRenderer(new ComponentCellRendererPortalRef(componentType, (component, rowData, firstTime) => {\n if (firstTime) {\n component.expansionModel = this.expansionModel;\n }\n component.value = rowData.row;\n component.label = _.isNil(this.labelProperty) ? undefined : rowData.row[this.labelProperty];\n component.iconFactory = this.iconFactory;\n }));\n return this;\n }\n\n public _selectRowOnClick(selectOnRowClick: boolean): this {\n return super._selectRowOnClick(selectOnRowClick);\n }\n\n}\n"]}
@@ -1 +1 @@
1
- [{"__symbolic":"module","version":4,"metadata":{"TreeLabelColumnModel":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../table/column-model","name":"ColumnModel","line":8,"character":47},"arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"select","expression":{"__symbolic":"reference","module":"../table/column-model","name":"ColumnModel","line":14,"character":38},"member":"TextPropertiesProvider"},{"__symbolic":"reference","module":"./tree-table-model","name":"TreeTableModel","line":15,"character":39,"arguments":[{"__symbolic":"error","message":"Could not resolve type","line":15,"character":54,"context":{"typeName":"Row"}}]}]}],"pluck":[{"__symbolic":"method"}],"addIcon":[{"__symbolic":"method"}],"useIcon":[{"__symbolic":"method"}],"cellRenderer":[{"__symbolic":"method"}],"_selectRowOnClick":[{"__symbolic":"method"}]}}}}]
1
+ [{"__symbolic":"module","version":4,"metadata":{"TreeLabelColumnModel":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../table/column-model","name":"ColumnModel","line":9,"character":47},"arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"string"},{"__symbolic":"select","expression":{"__symbolic":"reference","module":"../table/column-model","name":"ColumnModel","line":15,"character":38},"member":"TextPropertiesProvider"},{"__symbolic":"reference","module":"./tree-expansion-model","name":"TreeExpansionModel","line":16,"character":39,"arguments":[{"__symbolic":"error","message":"Could not resolve type","line":16,"character":58,"context":{"typeName":"Row"}}]}]}],"pluck":[{"__symbolic":"method"}],"addIcon":[{"__symbolic":"method"}],"useIcon":[{"__symbolic":"method"}],"cellRenderer":[{"__symbolic":"method"}],"_selectRowOnClick":[{"__symbolic":"method"}]}}}}]
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=tree-node.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tree-node.js","sourceRoot":"","sources":["../../../../../../../../libs/angular-ui-powerups/src/lib/components/tables/tree-table/tree-node.ts"],"names":[],"mappings":"","sourcesContent":["export interface TreeNode<T extends TreeNode<T>> {\n children: T[];\n}\n"]}
@@ -0,0 +1 @@
1
+ [{"__symbolic":"module","version":4,"metadata":{"TreeNode":{"__symbolic":"interface"}}}]
@@ -78,7 +78,7 @@ TreeTableComponent.decorators = [
78
78
  providers: [
79
79
  { provide: AbstractTableComponent, useExisting: TreeTableComponent }
80
80
  ],
81
- styles: [":host{display:flex;flex-direction:column;align-items:stretch}:host table{width:100%}:host.enable-scrolling{min-height:0}:host.enable-scrolling .scroll-container{flex:1;flex-basis:0;overflow-y:auto;display:flex;flex-direction:column;align-items:stretch}\n", "td.mat-cell{border-top-width:0!important;border-bottom-width:0!important}td.mat-column-tree-label,td.mat-column-tree-label{width:1px}aup-table-cell-renderer[column-id=tree-label]{padding-left:8px!important}aup-tree-label-cell-renderer{flex:1}\n"]
81
+ styles: [":host{display:flex;flex-direction:column;align-items:stretch}:host table{width:100%}:host.enable-scrolling{min-height:0}:host.enable-scrolling .scroll-container{flex:1;flex-basis:0;overflow-y:auto;display:flex;flex-direction:column;align-items:stretch}", "td.mat-cell{border-top-width:0!important;border-bottom-width:0!important}td.mat-column-tree-label{width:1px}aup-table-cell-renderer[column-id=tree-label]{padding-left:8px!important}aup-tree-label-cell-renderer{flex:1}"]
82
82
  },] }
83
83
  ];
84
84
  TreeTableComponent.ctorParameters = () => [
@@ -1 +1 @@
1
- {"version":3,"file":"tree-table-component.js","sourceRoot":"","sources":["../../../../../../../../libs/angular-ui-powerups/src/lib/components/tables/tree-table/tree-table-component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAG/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AASH,MAAM,OAAO,kBAA0C,SAAQ,sBAAyB;IAMtF,YAAY,UAAsB,EAAE,MAAc;QAChD,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;;;YApBF,SAAS,SAAC;gBACT,QAAQ,EAAE,gBAAgB;gBAC1B,k4DAAsC;gBAEtC,SAAS,EAAE;oBACT,EAAE,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,kBAAkB,EAAE;iBACrE;;aACF;;;YA1EmB,UAAU;YAAS,MAAM;;;6BA6E1C,KAAK;;AAEN;IADC,aAAa,EAAE;8BACA,cAAc;0DAAI","sourcesContent":["import { Component, ElementRef, Input, NgZone } from '@angular/core';\nimport { TrackExternal } from '@coolon/pectin';\nimport { TreeNode } from '@coolon/typescript-utilities';\nimport { AbstractTableModel } from '../abstract-table-model';\nimport { AbstractTableComponent } from '../abstract-table.component';\nimport { TreeTableModel } from './tree-table-model';\n\n/**\n * Create your model:\n * @example\n * this.heroTableModel = TableTreeModel.fromList(heroList, table => {\n * table.pluck(\"firstName\");\n * table.pluck(\"lastName\");\n * table.addCustomColumn(\"fullName\", hero => `${hero.firstName} ${hero.lastName}`);\n * table.addTemplateColumn(\"specialColumn\");\n * });\n *\n * Create your table\n * @example\n * <aup-tree-table [treeTableModel]=\"heroTableModel\"></aup-table>\n *\n * Column templates\n * @example\n * this.heroTableModel = TableModel.fromList(heroList, table => {\n * table.pluck(\"firstName\");\n * table.pluck(\"lastName\");\n * table.addTemplateColumn(\"specialColumn\");\n * });\n * <aup-table [tableModel]=\"heroTableModel\">\n * <div *aupColumnTemplate=\"let hero; columnId: 'specialColumn'; fillCell: true; padChild:false\">\n * {{hero.name}}\n * </div>\n * </aup-table>\n *\n * Styling\n * @example\n * // global settings\n * :root {\n * --aup-table-column-gap: 10px; // defaults to 24px\n * --aup-table-row-hover-background-color, rgba(0, 0, 0, 0.05)\n * --aup-table-row-selected-background-color: rebeccapurple; // defaults to transparent\n * --aup-table-first-column-padding-left: 18px // defaults to --column-gap\n * --aup-table-last-column-padding-right: 18px // defaults to --column-gap\n * }\n *\n * // per table settings.\n * aup-table {\n * --column-gap: 10px; // defaults to 24px\n * --row-hover-background-color, rgba(0, 0, 0, 0.05)\n * --row-selected-background-color: rebeccapurple; // defaults to transparent\n * --first-column-padding-left: 18px // defaults to --column-gap\n * --last-column-padding-right: 18px // defaults to --column-gap\n *\n * aup-table-header-cell-renderer,\n * aup-table-cell-renderer {\n * &.aup-col-my-dasherised-column-id {\n * // do stuff\n * }\n * &.first-visible-column {\n * // do stuff\n * }\n * &.last-visible-column {\n * // do stuff\n * }\n * }\n * }\n */\n@Component({\n selector: 'aup-tree-table',\n templateUrl: '../table.component.html',\n styleUrls: ['../table.component.scss', './tree-table.component.scss'],\n providers: [\n { provide: AbstractTableComponent, useExisting: TreeTableComponent }\n ]\n})\nexport class TreeTableComponent<T extends TreeNode<T>> extends AbstractTableComponent<T> {\n\n @Input()\n @TrackExternal()\n treeTableModel: TreeTableModel<T>;\n\n constructor(elementRef: ElementRef, ngZone: NgZone) {\n super(elementRef, ngZone);\n }\n\n getModel(): AbstractTableModel<T> {\n return this.treeTableModel;\n }\n\n}\n"]}
1
+ {"version":3,"file":"tree-table-component.js","sourceRoot":"","sources":["../../../../../../../../libs/angular-ui-powerups/src/lib/components/tables/tree-table/tree-table-component.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE/C,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,OAAO,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAEpD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2DG;AASH,MAAM,OAAO,kBAA0C,SAAQ,sBAAyB;IAMtF,YAAY,UAAsB,EAAE,MAAc;QAChD,KAAK,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;;;YApBF,SAAS,SAAC;gBACT,QAAQ,EAAE,gBAAgB;gBAC1B,k4DAAsC;gBAEtC,SAAS,EAAE;oBACT,EAAE,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,kBAAkB,EAAE;iBACrE;;aACF;;;YA1EmB,UAAU;YAAS,MAAM;;;6BA6E1C,KAAK;;AAEN;IADC,aAAa,EAAE;8BACA,cAAc;0DAAI","sourcesContent":["import { Component, ElementRef, Input, NgZone } from '@angular/core';\nimport { TrackExternal } from '@coolon/pectin';\nimport { AbstractTableModel } from '../abstract-table-model';\nimport { AbstractTableComponent } from '../abstract-table.component';\nimport { TreeNode } from './tree-node';\nimport { TreeTableModel } from './tree-table-model';\n\n/**\n * Create your model:\n * @example\n * this.heroTableModel = TableTreeModel.fromList(heroList, table => {\n * table.pluck(\"firstName\");\n * table.pluck(\"lastName\");\n * table.addCustomColumn(\"fullName\", hero => `${hero.firstName} ${hero.lastName}`);\n * table.addTemplateColumn(\"specialColumn\");\n * });\n *\n * Create your table\n * @example\n * <aup-tree-table [treeTableModel]=\"heroTableModel\"></aup-table>\n *\n * Column templates\n * @example\n * this.heroTableModel = TableModel.fromList(heroList, table => {\n * table.pluck(\"firstName\");\n * table.pluck(\"lastName\");\n * table.addTemplateColumn(\"specialColumn\");\n * });\n * <aup-table [tableModel]=\"heroTableModel\">\n * <div *aupColumnTemplate=\"let hero; columnId: 'specialColumn'; fillCell: true; padChild:false\">\n * {{hero.name}}\n * </div>\n * </aup-table>\n *\n * Styling\n * @example\n * // global settings\n * :root {\n * --aup-table-column-gap: 10px; // defaults to 24px\n * --aup-table-row-hover-background-color, rgba(0, 0, 0, 0.05)\n * --aup-table-row-selected-background-color: rebeccapurple; // defaults to transparent\n * --aup-table-first-column-padding-left: 18px // defaults to --column-gap\n * --aup-table-last-column-padding-right: 18px // defaults to --column-gap\n * }\n *\n * // per table settings.\n * aup-table {\n * --column-gap: 10px; // defaults to 24px\n * --row-hover-background-color, rgba(0, 0, 0, 0.05)\n * --row-selected-background-color: rebeccapurple; // defaults to transparent\n * --first-column-padding-left: 18px // defaults to --column-gap\n * --last-column-padding-right: 18px // defaults to --column-gap\n *\n * aup-table-header-cell-renderer,\n * aup-table-cell-renderer {\n * &.aup-col-my-dasherised-column-id {\n * // do stuff\n * }\n * &.first-visible-column {\n * // do stuff\n * }\n * &.last-visible-column {\n * // do stuff\n * }\n * }\n * }\n */\n@Component({\n selector: 'aup-tree-table',\n templateUrl: '../table.component.html',\n styleUrls: ['../table.component.scss', './tree-table.component.scss'],\n providers: [\n { provide: AbstractTableComponent, useExisting: TreeTableComponent }\n ]\n})\nexport class TreeTableComponent<T extends TreeNode<T>> extends AbstractTableComponent<T> {\n\n @Input()\n @TrackExternal()\n treeTableModel: TreeTableModel<T>;\n\n constructor(elementRef: ElementRef, ngZone: NgZone) {\n super(elementRef, ngZone);\n }\n\n getModel(): AbstractTableModel<T> {\n return this.treeTableModel;\n }\n\n}\n"]}
@@ -1 +1 @@
1
- [{"__symbolic":"module","version":4,"metadata":{"TreeTableComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../abstract-table.component","name":"AbstractTableComponent","line":75,"character":63},"arity":1,"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":67,"character":1},"arguments":[{"selector":"aup-tree-table","providers":[{"provide":{"__symbolic":"reference","module":"../abstract-table.component","name":"AbstractTableComponent","line":72,"character":15},"useExisting":{"__symbolic":"reference","name":"TreeTableComponent"}}],"template":"<div class=\"scroll-container\">\n <table mat-table [dataSource]=\"getModel().dataSource.value\" [trackBy]=\"getModel().trackBy\">\n\n <ng-container *ngFor=\"let column of columns.value; index as index; first as first; last as last\"\n matColumnDef=\"{{column.columnId}}\">\n <th mat-header-cell *matHeaderCellDef [class.flex]=\"column.isFlex()\" [class.hide]=\"!column.isVisible()\">\n <aup-table-header-cell-renderer [column]=\"column\"\n [attr.column-index]=\"index\"\n [attr.column-id]=\"column.columnId\"\n [class]=\"getColumnClasses(column.columnId)\"\n ></aup-table-header-cell-renderer>\n </th>\n <td mat-cell *matCellDef=\"let row\" (click)=\"notifyCellClicked(column, row)\"\n [class.enable-cursor]=\"getModel().isCursorEnabled(column)\"\n [class.flex]=\"column.isFlex()\"\n [class.hide]=\"!column.isVisible()\"\n >\n <aup-table-cell-renderer [column]=\"column\"\n [row]=\"row\"\n [tableModel]=\"getModel()\"\n [editSession]=\"getModel().getEditSessionFor(row)\"\n [attr.column-index]=\"index\"\n [attr.column-id]=\"column.columnId\"\n [class]=\"getColumnClasses(column.columnId)\"\n ></aup-table-cell-renderer>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columnIds.value\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: columnIds.value; let i = index\"\n [ngClass]=\"getModel().getRowClasses(row)\" [class.enable-hover]=\"getModel().isHoverEnabled()\"\n [attr.aup-row-id]=\"getModel().trackBy(i, row)\"\n ></tr>\n\n </table>\n</div>\n","styles":[":host{display:flex;flex-direction:column;align-items:stretch}:host table{width:100%}:host.enable-scrolling{min-height:0}:host.enable-scrolling .scroll-container{flex:1;flex-basis:0;overflow-y:auto;display:flex;flex-direction:column;align-items:stretch}\n","td.mat-cell{border-top-width:0!important;border-bottom-width:0!important}td.mat-column-tree-label,td.mat-column-tree-label{width:1px}aup-table-cell-renderer[column-id=tree-label]{padding-left:8px!important}aup-tree-label-cell-renderer{flex:1}\n"]}]}],"members":{"treeTableModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":77,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"TrackExternal","line":78,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":81,"character":26},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":81,"character":46}]}],"getModel":[{"__symbolic":"method"}]}}}}]
1
+ [{"__symbolic":"module","version":4,"metadata":{"TreeTableComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../abstract-table.component","name":"AbstractTableComponent","line":75,"character":63},"arity":1,"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":67,"character":1},"arguments":[{"selector":"aup-tree-table","providers":[{"provide":{"__symbolic":"reference","module":"../abstract-table.component","name":"AbstractTableComponent","line":72,"character":15},"useExisting":{"__symbolic":"reference","name":"TreeTableComponent"}}],"template":"<div class=\"scroll-container\">\n <table mat-table [dataSource]=\"getModel().dataSource.value\" [trackBy]=\"getModel().trackBy\">\n\n <ng-container *ngFor=\"let column of columns.value; index as index; first as first; last as last\"\n matColumnDef=\"{{column.columnId}}\">\n <th mat-header-cell *matHeaderCellDef [class.flex]=\"column.isFlex()\" [class.hide]=\"!column.isVisible()\">\n <aup-table-header-cell-renderer [column]=\"column\"\n [attr.column-index]=\"index\"\n [attr.column-id]=\"column.columnId\"\n [class]=\"getColumnClasses(column.columnId)\"\n ></aup-table-header-cell-renderer>\n </th>\n <td mat-cell *matCellDef=\"let row\" (click)=\"notifyCellClicked(column, row)\"\n [class.enable-cursor]=\"getModel().isCursorEnabled(column)\"\n [class.flex]=\"column.isFlex()\"\n [class.hide]=\"!column.isVisible()\"\n >\n <aup-table-cell-renderer [column]=\"column\"\n [row]=\"row\"\n [tableModel]=\"getModel()\"\n [editSession]=\"getModel().getEditSessionFor(row)\"\n [attr.column-index]=\"index\"\n [attr.column-id]=\"column.columnId\"\n [class]=\"getColumnClasses(column.columnId)\"\n ></aup-table-cell-renderer>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columnIds.value\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: columnIds.value; let i = index\"\n [ngClass]=\"getModel().getRowClasses(row)\" [class.enable-hover]=\"getModel().isHoverEnabled()\"\n [attr.aup-row-id]=\"getModel().trackBy(i, row)\"\n ></tr>\n\n </table>\n</div>\n","styles":[":host{display:flex;flex-direction:column;align-items:stretch}:host table{width:100%}:host.enable-scrolling{min-height:0}:host.enable-scrolling .scroll-container{flex:1;flex-basis:0;overflow-y:auto;display:flex;flex-direction:column;align-items:stretch}","td.mat-cell{border-top-width:0!important;border-bottom-width:0!important}td.mat-column-tree-label{width:1px}aup-table-cell-renderer[column-id=tree-label]{padding-left:8px!important}aup-tree-label-cell-renderer{flex:1}"]}]}],"members":{"treeTableModel":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":77,"character":3}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"TrackExternal","line":78,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":81,"character":26},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":81,"character":46}]}],"getModel":[{"__symbolic":"method"}]}}}}]
@@ -22,11 +22,10 @@ export class TreeTableModel extends AbstractTableModel {
22
22
  const childExtractor = _.isFunction(childAccessor) ? childAccessor : row => row[childAccessor];
23
23
  this.flattenedDataSource = this.registerDisposable(new FlattenedTreeListModel(source, childExtractor, this.treeExpansionModel));
24
24
  this.setDataSource(this.flattenedDataSource);
25
- this.addRowClass('aup-node-collapsed', row => this.isCollapsed(row));
26
25
  }
27
26
  treeControlColumn(builder) {
28
27
  const columnId = 'tree-label';
29
- const column = new TreeLabelColumnModel(columnId, () => this.getColumnTextProperties(columnId), this);
28
+ const column = new TreeLabelColumnModel(columnId, () => this.getColumnTextProperties(columnId), this.treeExpansionModel);
30
29
  builder(column);
31
30
  this.addColumn(column);
32
31
  }
@@ -34,7 +33,7 @@ export class TreeTableModel extends AbstractTableModel {
34
33
  this.treeExpansionModel.expand(node);
35
34
  }
36
35
  collapse(node) {
37
- this.treeExpansionModel.collapse(node);
36
+ this.treeExpansionModel.expand(node);
38
37
  }
39
38
  isCollapsed(node) {
40
39
  return this.treeExpansionModel.isCollapsed(node);
@@ -1 +1 @@
1
- {"version":3,"file":"tree-table-model.js","sourceRoot":"","sources":["../../../../../../../../libs/angular-ui-powerups/src/lib/components/tables/tree-table/tree-table-model.ts"],"names":[],"mappings":"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","sourcesContent":["import { ListModel, MutableValueModel, SelectionModel, ValueModel } from '@coolon/pectin';\nimport * as _ from 'lodash';\nimport { AbstractTableModel } from '../abstract-table-model';\nimport { SelectionColumnModel } from '../table/column-model';\nimport { FlattenedTreeListModel } from './flattened-tree-list-model';\nimport { TreeExpansionModel } from './tree-expansion-model';\nimport { TreeLabelColumnModel } from './tree-label-column-model';\n\nexport type ChildArrayPropertiesOf<T> = { [K in keyof T]: T[K] extends T[] ? K : never }[keyof T];\n\n// TODO:\n// Selection Models:\n// - as simple navigation tree\n// - as editable grid (selecte all, even hidden etc?)\n// - fixing selection on underlying model changes.\n// - rendering selection: row highlighting, checkboxes (in the tree renderer or in separate column), both.\n// Expansion Models:\n// - Add ability to auto show to depth\n// - Add a predicate to check default expansion (i.e. has children of a certain type)\n//\nexport class TreeTableModel<Row> extends AbstractTableModel<Row> {\n\n readonly treeExpansionModel = new TreeExpansionModel<Row>(row => this.identityOf(row));\n private readonly flattenedDataSource: FlattenedTreeListModel<Row>;\n\n constructor(source: ListModel<Row>, childAccessor: ChildArrayPropertiesOf<Row> | ((node: Row) => Row[]), builder?: (model: TreeTableModel<Row>) => void) {\n super();\n if (builder) builder(this);\n const childExtractor = _.isFunction(childAccessor) ? childAccessor : row => row[childAccessor];\n this.flattenedDataSource = this.registerDisposable(new FlattenedTreeListModel<Row>(source, childExtractor, this.treeExpansionModel));\n this.setDataSource(this.flattenedDataSource);\n\n this.addRowClass('aup-node-collapsed', row => this.isCollapsed(row));\n }\n\n treeControlColumn(builder: (column: TreeLabelColumnModel<Row>) => void) {\n const columnId = 'tree-label';\n const column = new TreeLabelColumnModel<Row>(columnId, () => this.getColumnTextProperties(columnId), this);\n builder(column);\n this.addColumn(column);\n }\n\n expand(node: Row) {\n this.treeExpansionModel.expand(node);\n }\n\n collapse(node: Row) {\n this.treeExpansionModel.collapse(node);\n }\n\n isCollapsed(node: Row): boolean {\n return this.treeExpansionModel.isCollapsed(node);\n }\n\n ensureAncestorsAndSelfVisible(node: Row) {\n this.treeExpansionModel.ensureAncestorsAndSelfVisible(node);\n }\n\n addSelectionColumn(selectionModel?: SelectionModel<Row>, showSelectionColumn?: ValueModel<boolean> | boolean): SelectionColumnModel<Row> {\n return this._addSelectionColumn(selectionModel, showSelectionColumn);\n }\n\n // saveSelection() {\n // const selectionModel = this.getSelectionModel();\n // if (selectionModel) {\n // let ids: any[] = [];\n // const selectedArea = selectionModel.leadSelection.value;\n // if (selectedArea) {\n // ids.push(selectedArea.id);\n // ids = ids.concat(selectedArea.siblingsAfter().map(a => a.id));\n // ids = ids.concat(selectedArea.siblingsBefore().reverse().map(a => a.id));\n // ids = ids.concat(selectedArea.ancestorsToZone().reverse().map(a => a.id));\n // }\n // this._storedSelection = ids;\n // }\n // }\n //\n // restoreSelection() {\n // const all = this.rootNodeModel.value.selfAndDescendants();\n // for (let i = 0; i < this._storedSelection.length; i++) {\n // const id = this._storedSelection[i];\n // const found = all.find(area => area.id === id);\n // if (found) {\n // this.selectedAreaId.value = found.id;\n // break;\n // }\n // }\n // }\n //\n // collapseAll(areas: T[]) {\n // this.collapsedAreaIds.value = [].concat(this.collapsedAreaIds.value, areas.map(a => a.id));\n // }\n\n // disableSelection(disable: boolean = true) {\n // this._disableSelection.value = disable;\n // }\n\n\n}\n\n\nexport namespace TreeTableModel {\n\n export interface Options<T, K extends keyof T> {\n storeIdIn: MutableValueModel<K>;\n }\n\n export type IconFactory<Row> = (node: Row, expanded: boolean, defaultIcon: string) => string;\n\n}\n\n\n// export class FlattenStrategy<T extends VisitableTree<any>> extends SelfAndDescendantsVisitor<T> {\n//\n// private _areas: T[] = [];\n// private _collapsed: Set<T>;\n//\n// constructor(private collapsedIds: T[]) {\n// super();\n// this._collapsed = new Set<T>(collapsedIds);\n// }\n//\n// protected onVisit(it: T) {\n// this._areas.push(it);\n// }\n//\n// protected shouldVisitChildrenOf(it: T): boolean {\n// return !this._collapsed.has(it);\n// }\n//\n// get flattenedAreas(): T[] {\n// return this._areas;\n// }\n//\n// }\n\n// class DecoratorCache {\n//\n// private map = new Map<number, T>();\n//\n// get(area:T): T {\n//\n// if (!area) return null;\n//\n// let decoratedArea = this.map.get(area.id);\n// if (!decoratedArea) {\n// decoratedArea = TreeModel.AreaDecorator.decorate(area);\n// this.map.set(area.id, decoratedArea);\n// }\n// return decoratedArea;\n// }\n//\n// clear() {\n// this.map.clear();\n// }\n//\n//\n// }\n\n\n\n\n"]}
1
+ {"version":3,"file":"tree-table-model.js","sourceRoot":"","sources":["../../../../../../../../libs/angular-ui-powerups/src/lib/components/tables/tree-table/tree-table-model.ts"],"names":[],"mappings":"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","sourcesContent":["import { ListModel, MutableValueModel, SelectionModel, ValueModel } from '@coolon/pectin';\nimport * as _ from 'lodash';\nimport { AbstractTableModel } from '../abstract-table-model';\nimport { SelectionColumnModel } from '../table/column-model';\nimport { DecoratedTreeNode } from './decorated-tree-node';\nimport { FlattenedTreeListModel } from './flattened-tree-list-model';\nimport { TreeExpansionModel } from './tree-expansion-model';\nimport { TreeLabelColumnModel } from './tree-label-column-model';\n\nexport type ChildArrayPropertiesOf<T> = { [K in keyof T]: T[K] extends T[] ? K : never }[keyof T];\n\n// TODO:\n// Selection Models:\n// - as simple navigation tree\n// - as editable grid (selecte all, even hidden etc?)\n// - fixing selection on underlying model changes.\n// - rendering selection: row highlighting, checkboxes (in the tree renderer or in separate column), both.\n// Expansion Models:\n// - Add ability to auto show to depth\n// - Add a predicate to check default expansion (i.e. has children of a certain type)\n//\nexport class TreeTableModel<Row> extends AbstractTableModel<Row> {\n\n readonly treeExpansionModel = new TreeExpansionModel<Row>(row => this.identityOf(row));\n private readonly flattenedDataSource: FlattenedTreeListModel<Row>;\n\n constructor(source: ListModel<Row>, childAccessor: ChildArrayPropertiesOf<Row> | ((node: Row) => Row[]), builder?: (model: TreeTableModel<Row>) => void) {\n super();\n if (builder) builder(this);\n const childExtractor = _.isFunction(childAccessor) ? childAccessor : row => row[childAccessor];\n this.flattenedDataSource = this.registerDisposable(new FlattenedTreeListModel<Row>(source, childExtractor, this.treeExpansionModel));\n this.setDataSource(this.flattenedDataSource);\n }\n\n treeControlColumn(builder: (column: TreeLabelColumnModel<Row>) => void) {\n const columnId = 'tree-label';\n const column = new TreeLabelColumnModel<Row>(columnId, () => this.getColumnTextProperties(columnId), this.treeExpansionModel);\n builder(column);\n this.addColumn(column);\n }\n\n expand(node: DecoratedTreeNode<Row>) {\n this.treeExpansionModel.expand(node);\n }\n\n collapse(node: DecoratedTreeNode<Row>) {\n this.treeExpansionModel.expand(node);\n }\n\n isCollapsed(node: DecoratedTreeNode<Row>): boolean {\n return this.treeExpansionModel.isCollapsed(node);\n }\n\n ensureAncestorsAndSelfVisible(node: DecoratedTreeNode<Row>) {\n this.treeExpansionModel.ensureAncestorsAndSelfVisible(node);\n }\n\n addSelectionColumn(selectionModel?: SelectionModel<Row>, showSelectionColumn?: ValueModel<boolean> | boolean): SelectionColumnModel<Row> {\n return this._addSelectionColumn(selectionModel, showSelectionColumn);\n }\n\n // saveSelection() {\n // let ids: number[] = [];\n // const selectedArea = this._decoratedSelectionModel.leadSelection.value;\n // if (selectedArea) {\n // ids.push(selectedArea.id);\n // ids = ids.concat(selectedArea.siblingsAfter().map(a => a.id));\n // ids = ids.concat(selectedArea.siblingsBefore().reverse().map(a => a.id));\n // ids = ids.concat(selectedArea.ancestorsToZone().reverse().map(a => a.id));\n // }\n // this._storedSelection = ids;\n // }\n //\n //\n // restoreSelection() {\n // const all = this.rootNodeModel.value.selfAndDescendants();\n // for (let i = 0; i < this._storedSelection.length; i++) {\n // const id = this._storedSelection[i];\n // const found = all.find(area => area.id === id);\n // if (found) {\n // this.selectedAreaId.value = found.id;\n // break;\n // }\n // }\n // }\n //\n // collapseAll(areas: T[]) {\n // this.collapsedAreaIds.value = [].concat(this.collapsedAreaIds.value, areas.map(a => a.id));\n // }\n\n // disableSelection(disable: boolean = true) {\n // this._disableSelection.value = disable;\n // }\n\n\n}\n\n\nexport namespace TreeTableModel {\n\n export interface Options<T, K extends keyof T> {\n storeIdIn: MutableValueModel<K>\n }\n\n export type IconFactory<Row> = (node: Row, expanded: boolean, defaultIcon: string) => string;\n\n}\n\n\n// export class FlattenStrategy<T extends VisitableTree<any>> extends SelfAndDescendantsVisitor<T> {\n//\n// private _areas: T[] = [];\n// private _collapsed: Set<T>;\n//\n// constructor(private collapsedIds: T[]) {\n// super();\n// this._collapsed = new Set<T>(collapsedIds);\n// }\n//\n// protected onVisit(it: T) {\n// this._areas.push(it);\n// }\n//\n// protected shouldVisitChildrenOf(it: T): boolean {\n// return !this._collapsed.has(it);\n// }\n//\n// get flattenedAreas(): T[] {\n// return this._areas;\n// }\n//\n// }\n\n// class DecoratorCache {\n//\n// private map = new Map<number, T>();\n//\n// get(area:T): T {\n//\n// if (!area) return null;\n//\n// let decoratedArea = this.map.get(area.id);\n// if (!decoratedArea) {\n// decoratedArea = TreeModel.AreaDecorator.decorate(area);\n// this.map.set(area.id, decoratedArea);\n// }\n// return decoratedArea;\n// }\n//\n// clear() {\n// this.map.clear();\n// }\n//\n//\n// }\n\n\n\n\n"]}
@@ -1 +1 @@
1
- [{"__symbolic":"module","version":4,"metadata":{"ChildArrayPropertiesOf":{"__symbolic":"interface"},"TreeTableModel":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../abstract-table-model","name":"AbstractTableModel","line":20,"character":41},"arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@coolon/pectin","name":"ListModel","line":25,"character":22,"arguments":[{"__symbolic":"error","message":"Could not resolve type","line":25,"character":32,"context":{"typeName":"Row"}}]},{"__symbolic":"error","message":"Could not resolve type","line":25,"character":53,"context":{"typeName":"ChildArrayPropertiesOf"}},{"__symbolic":"error","message":"Expression form not supported","line":25,"character":117}]}],"treeControlColumn":[{"__symbolic":"method"}],"expand":[{"__symbolic":"method"}],"collapse":[{"__symbolic":"method"}],"isCollapsed":[{"__symbolic":"method"}],"ensureAncestorsAndSelfVisible":[{"__symbolic":"method"}],"addSelectionColumn":[{"__symbolic":"method"}]}}}}]
1
+ [{"__symbolic":"module","version":4,"metadata":{"ChildArrayPropertiesOf":{"__symbolic":"interface"},"TreeTableModel":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../abstract-table-model","name":"AbstractTableModel","line":21,"character":41},"arity":1,"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@coolon/pectin","name":"ListModel","line":26,"character":22,"arguments":[{"__symbolic":"error","message":"Could not resolve type","line":26,"character":32,"context":{"typeName":"Row"}}]},{"__symbolic":"error","message":"Could not resolve type","line":26,"character":53,"context":{"typeName":"ChildArrayPropertiesOf"}},{"__symbolic":"error","message":"Expression form not supported","line":26,"character":117}]}],"treeControlColumn":[{"__symbolic":"method"}],"expand":[{"__symbolic":"method"}],"collapse":[{"__symbolic":"method"}],"isCollapsed":[{"__symbolic":"method"}],"ensureAncestorsAndSelfVisible":[{"__symbolic":"method"}],"addSelectionColumn":[{"__symbolic":"method"}]}}}}]
@@ -0,0 +1,26 @@
1
+ export class SelfAndDescendantsVisitor {
2
+ constructor() {
3
+ }
4
+ visit(it) {
5
+ this.onVisit(it);
6
+ if (this.shouldVisitChildrenOf(it)) {
7
+ it.visitChildren(this);
8
+ }
9
+ }
10
+ shouldVisitChildrenOf(it) {
11
+ return true;
12
+ }
13
+ }
14
+ (function (SelfAndDescendantsVisitor) {
15
+ class Each extends SelfAndDescendantsVisitor {
16
+ constructor(callback) {
17
+ super();
18
+ this.callback = callback;
19
+ }
20
+ onVisit(it) {
21
+ this.callback(it);
22
+ }
23
+ }
24
+ SelfAndDescendantsVisitor.Each = Each;
25
+ })(SelfAndDescendantsVisitor || (SelfAndDescendantsVisitor = {}));
26
+ //# sourceMappingURL=visitable.class.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visitable.class.js","sourceRoot":"","sources":["../../../../../../../../libs/angular-ui-powerups/src/lib/components/tables/tree-table/visitable.class.ts"],"names":[],"mappings":"AAaA,MAAM,OAAgB,yBAAyB;IAE3C;IACA,CAAC;IAED,KAAK,CAAC,EAAK;QACP,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QACjB,IAAI,IAAI,CAAC,qBAAqB,CAAC,EAAE,CAAC,EAAE;YAChC,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;SAC1B;IACL,CAAC;IAIS,qBAAqB,CAAC,EAAK;QACjC,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AAED,WAAiB,yBAAyB;IAEtC,MAAa,IAAmC,SAAQ,yBAA4B;QAChF,YAAoB,QAAyB;YACzC,KAAK,EAAE,CAAC;YADQ,aAAQ,GAAR,QAAQ,CAAiB;QAE7C,CAAC;QACS,OAAO,CAAC,EAAK;YACnB,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;QACtB,CAAC;KACJ;IAPY,8BAAI,OAOhB,CAAA;AACL,CAAC,EAVgB,yBAAyB,KAAzB,yBAAyB,QAUzC","sourcesContent":["export interface Visitor<T> {\n visit(it: T);\n}\n\nexport interface Visitable<T> {\n visit<V extends Visitor<T>>(it: V):V;\n}\n\nexport interface VisitableTree<T> extends Visitable<T> {\n visitChildren<V extends Visitor<T>>(it: V):V;\n}\n\n\nexport abstract class SelfAndDescendantsVisitor<T extends VisitableTree<T>> implements Visitor<T> {\n\n constructor() {\n }\n\n visit(it: T) {\n this.onVisit(it);\n if (this.shouldVisitChildrenOf(it)) {\n it.visitChildren(this);\n }\n }\n\n protected abstract onVisit(it: T);\n\n protected shouldVisitChildrenOf(it: T): boolean {\n return true;\n }\n}\n\nexport namespace SelfAndDescendantsVisitor {\n\n export class Each<T extends VisitableTree<any>> extends SelfAndDescendantsVisitor<T> {\n constructor(private callback: (it: T) => void) {\n super();\n }\n protected onVisit(it: T) {\n this.callback(it);\n }\n }\n}"]}
@@ -0,0 +1 @@
1
+ [{"__symbolic":"module","version":4,"metadata":{"Visitor":{"__symbolic":"interface"},"Visitable":{"__symbolic":"interface"},"VisitableTree":{"__symbolic":"interface"},"SelfAndDescendantsVisitor":{"__symbolic":"class","arity":1,"members":{"__ctor__":[{"__symbolic":"constructor"}],"visit":[{"__symbolic":"method"}],"onVisit":[{"__symbolic":"method"}],"shouldVisitChildrenOf":[{"__symbolic":"method"}]}}}}]
@@ -1,21 +1,9 @@
1
1
  export var TrackBy;
2
2
  (function (TrackBy) {
3
3
  TrackBy.byIndex = (index, item) => index;
4
- /**
5
- * @deprecated use #track(MyType).by("property") instead.
6
- * @param property
7
- */
8
4
  function trackByProperty(property) {
9
5
  return (index, item) => item[property];
10
6
  }
11
7
  TrackBy.trackByProperty = trackByProperty;
12
- function track(type) {
13
- return {
14
- by(property) {
15
- return (index, item) => item[property];
16
- }
17
- };
18
- }
19
- TrackBy.track = track;
20
8
  })(TrackBy || (TrackBy = {}));
21
9
  //# sourceMappingURL=track-by.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"track-by.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/src/lib/components/track-by.ts"],"names":[],"mappings":"AAIA,MAAM,KAAW,OAAO,CAkBvB;AAlBD,WAAiB,OAAO;IACT,eAAO,GAAyB,CAAC,KAAa,EAAE,IAAS,EAAE,EAAE,CAAC,KAAK,CAAC;IAEjF;;;OAGG;IACH,SAAgB,eAAe,CAAuB,QAAW;QAC/D,OAAO,CAAC,KAAa,EAAE,IAAO,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpD,CAAC;IAFe,uBAAe,kBAE9B,CAAA;IAED,SAAgB,KAAK,CAAI,IAAsB;QAC7C,OAAO;YACL,EAAE,CAAiC,QAAW;gBAC5C,OAAO,CAAC,KAAa,EAAE,IAAO,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACpD,CAAC;SACF,CAAC;IACJ,CAAC;IANe,aAAK,QAMpB,CAAA;AACH,CAAC,EAlBgB,OAAO,KAAP,OAAO,QAkBvB","sourcesContent":["import { TrackByFunction } from '@angular/core';\nimport { Constructable } from '@coolon/pectin';\nimport { ValuePropertiesOf } from '@coolon/typescript-utilities';\n\nexport namespace TrackBy {\n export const byIndex: TrackByFunction<any> = (index: number, item: any) => index;\n\n /**\n * @deprecated use #track(MyType).by(\"property\") instead.\n * @param property\n */\n export function trackByProperty<T, P extends keyof T>(property: P): TrackByFunction<T> {\n return (index: number, item: T) => item[property];\n }\n\n export function track<T>(type: Constructable<T>) {\n return {\n by<P extends ValuePropertiesOf<T>>(property: P) {\n return (index: number, item: T) => item[property];\n }\n };\n }\n}\n"]}
1
+ {"version":3,"file":"track-by.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/src/lib/components/track-by.ts"],"names":[],"mappings":"AAEA,MAAM,KAAW,OAAO,CAMvB;AAND,WAAiB,OAAO;IACT,eAAO,GAAwB,CAAC,KAAY,EAAE,IAAS,EAAE,EAAE,CAAC,KAAK,CAAC;IAE/E,SAAgB,eAAe,CAAuB,QAAW;QAC/D,OAAO,CAAC,KAAY,EAAE,IAAO,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACnD,CAAC;IAFe,uBAAe,kBAE9B,CAAA;AACH,CAAC,EANgB,OAAO,KAAP,OAAO,QAMvB","sourcesContent":["import { TrackByFunction } from '@angular/core';\n\nexport namespace TrackBy {\n export const byIndex:TrackByFunction<any> = (index:number, item: any) => index;\n\n export function trackByProperty<T, P extends keyof T>(property: P):TrackByFunction<T> {\n return (index:number, item: T) => item[property];\n }\n}\n"]}
@@ -41,7 +41,7 @@ VerticalFocusContainerComponent.decorators = [
41
41
  providers: [
42
42
  { provide: FocusManager }
43
43
  ],
44
- styles: [":host{display:block}\n"]
44
+ styles: [":host{display:block}"]
45
45
  },] }
46
46
  ];
47
47
  VerticalFocusContainerComponent.ctorParameters = () => [
@@ -1 +1 @@
1
- [{"__symbolic":"module","version":4,"metadata":{"VerticalFocusContainerComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../focus-container/focus-container.component","name":"FocusContainerComponent","line":12,"character":53},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"aup-vertical-focus-container","providers":[{"provide":{"__symbolic":"reference","module":"@coolon/pectin","name":"FocusManager","line":9,"character":15}}],"template":"<ng-content></ng-content>\n","styles":[":host{display:block}\n"]}]}],"members":{"rightArrowCommand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3},"arguments":["command.arrowRight"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"TrackExternal","line":15,"character":3}}]}],"leftArrowCommand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3},"arguments":["command.arrowLeft"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"TrackExternal","line":19,"character":3}}]}],"arrowLeft":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":22,"character":3},"arguments":["keyup.arrowLeft",["$event"]]}]}],"arrowRight":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":31,"character":3},"arguments":["keyup.arrowRight",["$event"]]}]}],"arrowDown":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":40,"character":3},"arguments":["keyup.arrowDown",["$event"]]}]}],"arrowUp":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":47,"character":3},"arguments":["keyup.arrowUp",["$event"]]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Self","line":54,"character":15}}]],"parameters":[{"__symbolic":"reference","module":"@coolon/pectin","name":"FocusManager","line":54,"character":45}]}],"ngOnInit":[{"__symbolic":"method"}]}}}}]
1
+ [{"__symbolic":"module","version":4,"metadata":{"VerticalFocusContainerComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"../focus-container/focus-container.component","name":"FocusContainerComponent","line":12,"character":53},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"aup-vertical-focus-container","providers":[{"provide":{"__symbolic":"reference","module":"@coolon/pectin","name":"FocusManager","line":9,"character":15}}],"template":"<ng-content></ng-content>\n","styles":[":host{display:block}"]}]}],"members":{"rightArrowCommand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3},"arguments":["command.arrowRight"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"TrackExternal","line":15,"character":3}}]}],"leftArrowCommand":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":18,"character":3},"arguments":["command.arrowLeft"]},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@coolon/pectin","name":"TrackExternal","line":19,"character":3}}]}],"arrowLeft":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":22,"character":3},"arguments":["keyup.arrowLeft",["$event"]]}]}],"arrowRight":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":31,"character":3},"arguments":["keyup.arrowRight",["$event"]]}]}],"arrowDown":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":40,"character":3},"arguments":["keyup.arrowDown",["$event"]]}]}],"arrowUp":[{"__symbolic":"method","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"HostListener","line":47,"character":3},"arguments":["keyup.arrowUp",["$event"]]}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Self","line":54,"character":15}}]],"parameters":[{"__symbolic":"reference","module":"@coolon/pectin","name":"FocusManager","line":54,"character":45}]}],"ngOnInit":[{"__symbolic":"method"}]}}}}]
@@ -6,7 +6,7 @@ export class CommandDirective extends GarbageCollector {
6
6
  constructor(elementRef, matButton, matMenuItem) {
7
7
  super();
8
8
  this.elementRef = elementRef;
9
- this._commandEnabled = this.registerDisposable(new DelegatingValueModel().withDefault(false));
9
+ this._commandEnabled = new DelegatingValueModel().withDefault(false);
10
10
  this._commandParameterProvided = false;
11
11
  // Material buttons and menu items don't respond to the disabled binding so we
12
12
  // need to inject them from our host element and handle them manually.
@@ -1 +1 @@
1
- {"version":3,"file":"command.directive.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/src/lib/directives/command.directive.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n AfterViewInit,\n Directive,\n ElementRef,\n Host,\n HostListener,\n Inject,\n Input,\n OnDestroy,\n OnInit,\n Optional\n} from '@angular/core';\nimport { MatButton } from '@angular/material/button';\nimport { MatMenuItem } from '@angular/material/menu';\nimport { assert, Command, DelegatingValueModel, Dsl, GarbageCollector, lang, UnaryCommand } from '@coolon/pectin';\n\n@Directive({\n // tslint:disable-next-line:directive-selector\n selector: '[pectinCommand]'\n})\nexport class CommandDirective<P = any> extends GarbageCollector implements OnInit, OnDestroy, AfterViewInit {\n\n private _command: Command<any> | UnaryCommand<P>;\n private _commandEnabled = this.registerDisposable(new DelegatingValueModel<boolean>().withDefault(false));\n private matControl: MatButton | MatMenuItem;\n\n @Input()\n set pectinCommand(command: Command<any> | UnaryCommand<P>) {\n this._command = command;\n this._commandEnabled.setDelegate(command ? command.enabled : null);\n }\n\n get pectinCommand(): Command<any> | UnaryCommand<P> {\n return this._command;\n }\n\n private _commandParameter: P;\n private _commandParameterProvided = false;\n\n @Input()\n set commandParameter(value: P) {\n this._commandParameterProvided = true;\n this._commandParameter = value;\n }\n\n get commandParameter(): P {\n return this._commandParameter;\n }\n\n constructor(\n @Inject(ElementRef) private elementRef: ElementRef,\n @Host() @Optional() matButton: MatButton,\n @Host() @Optional() matMenuItem: MatMenuItem\n ) {\n super();\n // Material buttons and menu items don't respond to the disabled binding so we\n // need to inject them from our host element and handle them manually.\n this.matControl = matButton || matMenuItem;\n }\n\n ngOnInit(): void {\n assert.notNil(this.pectinCommand);\n if (this.pectinCommand instanceof UnaryCommand) {\n if (!this._commandParameterProvided) {\n lang.illegalState('UnaryCommands require the command parameter to be specified.');\n }\n } else {\n if (this._commandParameterProvided) {\n lang.illegalState('command parameters are only supported by UnaryCommands');\n }\n }\n }\n\n ngAfterViewInit(): void {\n const { when } = Dsl.disposeWith(this);\n when(this._commandEnabled).changes(enabled => this.updateEnabledState(enabled), {\n initialValue: 'triggerChange'\n });\n }\n\n updateEnabledState(enabled: boolean) {\n // for some reason mat-buttons kills the disabled host binding. It works on a regular button but for now\n // we need to do this. The set timeout is required to prevent the button getting a expression changed\n // when it's clicked.\n if (this.matControl) {\n setTimeout(() => {\n this.matControl.disabled = !enabled;\n }, 0);\n }\n if (!enabled) {\n // Note:\n // We can't use a host binding here for disabled as the directive can be used on arbitrary\n // components (e.g. divs) and the compiler will barf if we use the host binding.\n this.elementRef.nativeElement.setAttribute('disabled', 'disabled');\n if (this.elementRef.nativeElement.tagName === 'A') {\n this.elementRef.nativeElement.removeAttribute('href');\n }\n } else {\n this.elementRef.nativeElement.removeAttribute('disabled');\n if (this.elementRef.nativeElement.tagName === 'A') {\n this.elementRef.nativeElement.setAttribute('href', 'javascript:void');\n }\n }\n }\n\n ngOnDestroy(): void {\n this.dispose();\n }\n\n\n @HostListener('click', ['$event'])\n notifyClick($event: Event) {\n $event.preventDefault();\n $event.stopPropagation();\n if (this.pectinCommand.enabled.value) {\n if (this.pectinCommand instanceof UnaryCommand) {\n this.pectinCommand.withContext({ event: $event }).execute(this.commandParameter);\n } else {\n this.pectinCommand.withContext({ event: $event }).execute();\n }\n } else {\n console.warn('disabled command clicked, ignoring.');\n }\n }\n}\n"]}
1
+ {"version":3,"file":"command.directive.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/src/lib/directives/command.directive.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n AfterViewInit,\n Directive,\n ElementRef,\n Host,\n HostListener,\n Inject,\n Input,\n OnDestroy,\n OnInit,\n Optional\n} from '@angular/core';\nimport { MatButton } from '@angular/material/button';\nimport { MatMenuItem } from '@angular/material/menu';\nimport { assert, Command, DelegatingValueModel, Dsl, GarbageCollector, lang, UnaryCommand } from '@coolon/pectin';\n\n@Directive({\n // tslint:disable-next-line:directive-selector\n selector: '[pectinCommand]'\n})\nexport class CommandDirective<P = any> extends GarbageCollector implements OnInit, OnDestroy, AfterViewInit {\n\n private _command: Command<any> | UnaryCommand<P>;\n private _commandEnabled = new DelegatingValueModel<boolean>().withDefault(false);\n private matControl: MatButton | MatMenuItem;\n\n @Input()\n set pectinCommand(command: Command<any> | UnaryCommand<P>) {\n this._command = command;\n this._commandEnabled.setDelegate(command ? command.enabled : null);\n }\n\n get pectinCommand(): Command<any> | UnaryCommand<P> {\n return this._command;\n }\n\n private _commandParameter: P;\n private _commandParameterProvided = false;\n\n @Input()\n set commandParameter(value: P) {\n this._commandParameterProvided = true;\n this._commandParameter = value;\n }\n\n get commandParameter(): P {\n return this._commandParameter;\n }\n\n constructor(\n @Inject(ElementRef) private elementRef: ElementRef,\n @Host() @Optional() matButton: MatButton,\n @Host() @Optional() matMenuItem: MatMenuItem\n ) {\n super();\n // Material buttons and menu items don't respond to the disabled binding so we\n // need to inject them from our host element and handle them manually.\n this.matControl = matButton || matMenuItem;\n }\n\n ngOnInit(): void {\n assert.notNil(this.pectinCommand);\n if (this.pectinCommand instanceof UnaryCommand) {\n if (!this._commandParameterProvided) {\n lang.illegalState('UnaryCommands require the command parameter to be specified.');\n }\n } else {\n if (this._commandParameterProvided) {\n lang.illegalState('command parameters are only supported by UnaryCommands');\n }\n }\n }\n\n ngAfterViewInit(): void {\n const { when } = Dsl.disposeWith(this);\n when(this._commandEnabled).changes(enabled => this.updateEnabledState(enabled), {\n initialValue: 'triggerChange'\n });\n }\n\n updateEnabledState(enabled: boolean) {\n // for some reason mat-buttons kills the disabled host binding. It works on a regular button but for now\n // we need to do this. The set timeout is required to prevent the button getting a expression changed\n // when it's clicked.\n if (this.matControl) {\n setTimeout(() => {\n this.matControl.disabled = !enabled;\n }, 0);\n }\n if (!enabled) {\n // Note:\n // We can't use a host binding here for disabled as the directive can be used on arbitrary\n // components (e.g. divs) and the compiler will barf if we use the host binding.\n this.elementRef.nativeElement.setAttribute('disabled', 'disabled');\n if (this.elementRef.nativeElement.tagName === 'A') {\n this.elementRef.nativeElement.removeAttribute('href');\n }\n } else {\n this.elementRef.nativeElement.removeAttribute('disabled');\n if (this.elementRef.nativeElement.tagName === 'A') {\n this.elementRef.nativeElement.setAttribute('href', 'javascript:void');\n }\n }\n }\n\n ngOnDestroy(): void {\n this.dispose();\n }\n\n\n @HostListener('click', ['$event'])\n notifyClick($event: Event) {\n $event.preventDefault();\n $event.stopPropagation();\n if (this.pectinCommand.enabled.value) {\n if (this.pectinCommand instanceof UnaryCommand) {\n this.pectinCommand.withContext({ event: $event }).execute(this.commandParameter);\n } else {\n this.pectinCommand.withContext({ event: $event }).execute();\n }\n } else {\n console.warn('disabled command clicked, ignoring.');\n }\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"directives.module.ngfactory.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/src/lib/directives/directives.module.ngfactory.ts"],"names":[],"mappings":"","sourcesContent":["import * as i0 from '@angular/core';\nimport * as i1 from './directives.module';\nimport * as i2 from '@angular/common';\nimport * as i3 from '@angular/forms';\nimport * as i4 from '@angular/cdk/text-field';\nimport * as i5 from '@angular/cdk/bidi';\nimport * as i6 from '@angular/material/form-field';\nimport * as i7 from '@angular/material/input';\nimport * as i8 from '@angular/cdk/scrolling';\nimport * as i9 from '@angular/material/core';\nimport * as i10 from '@angular/material/select';\nimport * as i11 from '@angular/material/tabs';\nimport * as i12 from './command.directive';\nimport * as i13 from './focus-binding.directive';\nimport * as i14 from './highlight-text-model.directive';\nimport * as i15 from './highlight.pipe';\nimport * as i16 from '@angular/platform-browser/animations';\nexport const DirectivesModuleNgFactory:i0.NgModuleFactory<i1.DirectivesModule> = (null as any);\nvar _decl0_0:i2.NgClass = (<any>(null as any));\nvar _decl0_1:i2.NgComponentOutlet = (<any>(null as any));\nvar _decl0_2:i2.NgForOf<any,any> = (<any>(null as any));\nvar _decl0_3:i2.NgIf<any> = (<any>(null as any));\nvar _decl0_4:i2.NgTemplateOutlet = (<any>(null as any));\nvar _decl0_5:i2.NgStyle = (<any>(null as any));\nvar _decl0_6:i2.NgSwitch = (<any>(null as any));\nvar _decl0_7:i2.NgSwitchCase = (<any>(null as any));\nvar _decl0_8:i2.NgSwitchDefault = (<any>(null as any));\nvar _decl0_9:i2.NgPlural = (<any>(null as any));\nvar _decl0_10:i2.NgPluralCase = (<any>(null as any));\nvar _decl0_11:i3.ɵangular_packages_forms_forms_bc = (<any>(null as any));\nvar _decl0_12:i3.NgSelectOption = (<any>(null as any));\nvar _decl0_13:i3.ɵangular_packages_forms_forms_bb = (<any>(null as any));\nvar _decl0_14:i3.DefaultValueAccessor = (<any>(null as any));\nvar _decl0_15:i3.NumberValueAccessor = (<any>(null as any));\nvar _decl0_16:i3.RangeValueAccessor = (<any>(null as any));\nvar _decl0_17:i3.CheckboxControlValueAccessor = (<any>(null as any));\nvar _decl0_18:i3.SelectControlValueAccessor = (<any>(null as any));\nvar _decl0_19:i3.SelectMultipleControlValueAccessor = (<any>(null as any));\nvar _decl0_20:i3.RadioControlValueAccessor = (<any>(null as any));\nvar _decl0_21:i3.NgControlStatus = (<any>(null as any));\nvar _decl0_22:i3.NgControlStatusGroup = (<any>(null as any));\nvar _decl0_23:i3.RequiredValidator = (<any>(null as any));\nvar _decl0_24:i3.MinLengthValidator = (<any>(null as any));\nvar _decl0_25:i3.MaxLengthValidator = (<any>(null as any));\nvar _decl0_26:i3.PatternValidator = (<any>(null as any));\nvar _decl0_27:i3.CheckboxRequiredValidator = (<any>(null as any));\nvar _decl0_28:i3.EmailValidator = (<any>(null as any));\nvar _decl0_29:i3.MinValidator = (<any>(null as any));\nvar _decl0_30:i3.MaxValidator = (<any>(null as any));\nvar _decl0_31:i3.NgModel = (<any>(null as any));\nvar _decl0_32:i3.NgModelGroup = (<any>(null as any));\nvar _decl0_33:i3.NgForm = (<any>(null as any));\nvar _decl0_34:i4.CdkAutofill = (<any>(null as any));\nvar _decl0_35:i4.CdkTextareaAutosize = (<any>(null as any));\nvar _decl0_36:i5.Dir = (<any>(null as any));\nvar _decl0_37:i6.MatError = (<any>(null as any));\nvar _decl0_38:i6.MatFormField = (<any>(null as any));\nvar _decl0_39:i6.MatHint = (<any>(null as any));\nvar _decl0_40:i6.MatLabel = (<any>(null as any));\nvar _decl0_41:i6.MatPlaceholder = (<any>(null as any));\nvar _decl0_42:i6.MatPrefix = (<any>(null as any));\nvar _decl0_43:i6.MatSuffix = (<any>(null as any));\nvar _decl0_44:i7.MatInput = (<any>(null as any));\nvar _decl0_45:i7.MatTextareaAutosize = (<any>(null as any));\nvar _decl0_46:i8.CdkScrollable = (<any>(null as any));\nvar _decl0_47:i9.MatOption = (<any>(null as any));\nvar _decl0_48:i9.MatOptgroup = (<any>(null as any));\nvar _decl0_49:i10.MatSelect = (<any>(null as any));\nvar _decl0_50:i10.MatSelectTrigger = (<any>(null as any));\nvar _decl0_51:i11.MatTabGroup = (<any>(null as any));\nvar _decl0_52:i11.MatTabLabel = (<any>(null as any));\nvar _decl0_53:i11.MatTab = (<any>(null as any));\nvar _decl0_54:i11.MatTabNav = (<any>(null as any));\nvar _decl0_55:i11.MatTabLink = (<any>(null as any));\nvar _decl0_56:i11.MatTabContent = (<any>(null as any));\nvar _decl0_57:i12.CommandDirective<any> = (<any>(null as any));\nvar _decl0_58:i13.FocusBindingDirective = (<any>(null as any));\nvar _decl0_59:i14.HighlightTextModelDirective = (<any>(null as any));\nvar _decl0_60:i2.AsyncPipe = (<any>(null as any));\nvar _decl0_61:i2.UpperCasePipe = (<any>(null as any));\nvar _decl0_62:i2.LowerCasePipe = (<any>(null as any));\nvar _decl0_63:i2.JsonPipe = (<any>(null as any));\nvar _decl0_64:i2.SlicePipe = (<any>(null as any));\nvar _decl0_65:i2.DecimalPipe = (<any>(null as any));\nvar _decl0_66:i2.PercentPipe = (<any>(null as any));\nvar _decl0_67:i2.TitleCasePipe = (<any>(null as any));\nvar _decl0_68:i2.CurrencyPipe = (<any>(null as any));\nvar _decl0_69:i2.DatePipe = (<any>(null as any));\nvar _decl0_70:i2.I18nPluralPipe = (<any>(null as any));\nvar _decl0_71:i2.I18nSelectPipe = (<any>(null as any));\nvar _decl0_72:i2.KeyValuePipe = (<any>(null as any));\nvar _decl0_74:i15.HighlightPipe = (<any>(null as any));\nvar _decl0_75:i2.CommonModule = (<any>(null as any));\nvar _decl0_76:i16.BrowserAnimationsModule = (<any>(null as any));\nvar _decl0_77:i3.FormsModule = (<any>(null as any));\nvar _decl0_78:i7.MatInputModule = (<any>(null as any));\nvar _decl0_79:i6.MatFormFieldModule = (<any>(null as any));\nvar _decl0_80:i10.MatSelectModule = (<any>(null as any));\nvar _decl0_81:i11.MatTabsModule = (<any>(null as any));\nvar _decl0_82:i0.TemplateRef<any> = (<any>(null as any));\nvar _decl0_83:i0.ElementRef<any> = (<any>(null as any));\n"]}
1
+ {"version":3,"file":"directives.module.ngfactory.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/src/lib/directives/directives.module.ngfactory.ts"],"names":[],"mappings":"","sourcesContent":["import * as i0 from '@angular/core';\nimport * as i1 from './directives.module';\nimport * as i2 from '@angular/common';\nimport * as i3 from '@angular/forms';\nimport * as i4 from '@angular/cdk/text-field';\nimport * as i5 from '@angular/cdk/bidi';\nimport * as i6 from '@angular/material/form-field';\nimport * as i7 from '@angular/material/input';\nimport * as i8 from '@angular/cdk/scrolling';\nimport * as i9 from '@angular/material/core';\nimport * as i10 from '@angular/material/select';\nimport * as i11 from '@angular/material/tabs';\nimport * as i12 from './command.directive';\nimport * as i13 from './focus-binding.directive';\nimport * as i14 from './highlight-text-model.directive';\nimport * as i15 from './highlight.pipe';\nimport * as i16 from '@angular/platform-browser/animations';\nexport const DirectivesModuleNgFactory:i0.NgModuleFactory<i1.DirectivesModule> = (null as any);\nvar _decl0_0:i2.NgClass = (<any>(null as any));\nvar _decl0_1:i2.NgComponentOutlet = (<any>(null as any));\nvar _decl0_2:i2.NgForOf<any,any> = (<any>(null as any));\nvar _decl0_3:i2.NgIf<any> = (<any>(null as any));\nvar _decl0_4:i2.NgTemplateOutlet = (<any>(null as any));\nvar _decl0_5:i2.NgStyle = (<any>(null as any));\nvar _decl0_6:i2.NgSwitch = (<any>(null as any));\nvar _decl0_7:i2.NgSwitchCase = (<any>(null as any));\nvar _decl0_8:i2.NgSwitchDefault = (<any>(null as any));\nvar _decl0_9:i2.NgPlural = (<any>(null as any));\nvar _decl0_10:i2.NgPluralCase = (<any>(null as any));\nvar _decl0_11:i3.ɵangular_packages_forms_forms_bb = (<any>(null as any));\nvar _decl0_12:i3.NgSelectOption = (<any>(null as any));\nvar _decl0_13:i3.ɵangular_packages_forms_forms_ba = (<any>(null as any));\nvar _decl0_14:i3.DefaultValueAccessor = (<any>(null as any));\nvar _decl0_15:i3.NumberValueAccessor = (<any>(null as any));\nvar _decl0_16:i3.RangeValueAccessor = (<any>(null as any));\nvar _decl0_17:i3.CheckboxControlValueAccessor = (<any>(null as any));\nvar _decl0_18:i3.SelectControlValueAccessor = (<any>(null as any));\nvar _decl0_19:i3.SelectMultipleControlValueAccessor = (<any>(null as any));\nvar _decl0_20:i3.RadioControlValueAccessor = (<any>(null as any));\nvar _decl0_21:i3.NgControlStatus = (<any>(null as any));\nvar _decl0_22:i3.NgControlStatusGroup = (<any>(null as any));\nvar _decl0_23:i3.RequiredValidator = (<any>(null as any));\nvar _decl0_24:i3.MinLengthValidator = (<any>(null as any));\nvar _decl0_25:i3.MaxLengthValidator = (<any>(null as any));\nvar _decl0_26:i3.PatternValidator = (<any>(null as any));\nvar _decl0_27:i3.CheckboxRequiredValidator = (<any>(null as any));\nvar _decl0_28:i3.EmailValidator = (<any>(null as any));\nvar _decl0_29:i3.MinValidator = (<any>(null as any));\nvar _decl0_30:i3.MaxValidator = (<any>(null as any));\nvar _decl0_31:i3.NgModel = (<any>(null as any));\nvar _decl0_32:i3.NgModelGroup = (<any>(null as any));\nvar _decl0_33:i3.NgForm = (<any>(null as any));\nvar _decl0_34:i4.CdkAutofill = (<any>(null as any));\nvar _decl0_35:i4.CdkTextareaAutosize = (<any>(null as any));\nvar _decl0_36:i5.Dir = (<any>(null as any));\nvar _decl0_37:i6.MatError = (<any>(null as any));\nvar _decl0_38:i6.MatFormField = (<any>(null as any));\nvar _decl0_39:i6.MatHint = (<any>(null as any));\nvar _decl0_40:i6.MatLabel = (<any>(null as any));\nvar _decl0_41:i6.MatPlaceholder = (<any>(null as any));\nvar _decl0_42:i6.MatPrefix = (<any>(null as any));\nvar _decl0_43:i6.MatSuffix = (<any>(null as any));\nvar _decl0_44:i7.MatInput = (<any>(null as any));\nvar _decl0_45:i7.MatTextareaAutosize = (<any>(null as any));\nvar _decl0_46:i8.CdkScrollable = (<any>(null as any));\nvar _decl0_47:i9.MatOption = (<any>(null as any));\nvar _decl0_48:i9.MatOptgroup = (<any>(null as any));\nvar _decl0_49:i10.MatSelect = (<any>(null as any));\nvar _decl0_50:i10.MatSelectTrigger = (<any>(null as any));\nvar _decl0_51:i11.MatTabGroup = (<any>(null as any));\nvar _decl0_52:i11.MatTabLabel = (<any>(null as any));\nvar _decl0_53:i11.MatTab = (<any>(null as any));\nvar _decl0_54:i11.MatTabNav = (<any>(null as any));\nvar _decl0_55:i11.MatTabLink = (<any>(null as any));\nvar _decl0_56:i11.MatTabContent = (<any>(null as any));\nvar _decl0_57:i12.CommandDirective<any> = (<any>(null as any));\nvar _decl0_58:i13.FocusBindingDirective = (<any>(null as any));\nvar _decl0_59:i14.HighlightTextModelDirective = (<any>(null as any));\nvar _decl0_60:i2.AsyncPipe = (<any>(null as any));\nvar _decl0_61:i2.UpperCasePipe = (<any>(null as any));\nvar _decl0_62:i2.LowerCasePipe = (<any>(null as any));\nvar _decl0_63:i2.JsonPipe = (<any>(null as any));\nvar _decl0_64:i2.SlicePipe = (<any>(null as any));\nvar _decl0_65:i2.DecimalPipe = (<any>(null as any));\nvar _decl0_66:i2.PercentPipe = (<any>(null as any));\nvar _decl0_67:i2.TitleCasePipe = (<any>(null as any));\nvar _decl0_68:i2.CurrencyPipe = (<any>(null as any));\nvar _decl0_69:i2.DatePipe = (<any>(null as any));\nvar _decl0_70:i2.I18nPluralPipe = (<any>(null as any));\nvar _decl0_71:i2.I18nSelectPipe = (<any>(null as any));\nvar _decl0_72:i2.KeyValuePipe = (<any>(null as any));\nvar _decl0_74:i15.HighlightPipe = (<any>(null as any));\nvar _decl0_75:i2.CommonModule = (<any>(null as any));\nvar _decl0_76:i16.BrowserAnimationsModule = (<any>(null as any));\nvar _decl0_77:i3.FormsModule = (<any>(null as any));\nvar _decl0_78:i7.MatInputModule = (<any>(null as any));\nvar _decl0_79:i6.MatFormFieldModule = (<any>(null as any));\nvar _decl0_80:i10.MatSelectModule = (<any>(null as any));\nvar _decl0_81:i11.MatTabsModule = (<any>(null as any));\nvar _decl0_82:i0.TemplateRef<any> = (<any>(null as any));\nvar _decl0_83:i0.ElementRef<any> = (<any>(null as any));\n"]}
@@ -1,7 +1,6 @@
1
1
  import { Opts } from '@coolon/typescript-utilities';
2
2
  import { AlertDialogComponent } from './components/alert-dialog/alert-dialog.component';
3
3
  import { ConfirmThenDialogComponent } from './components/confirm-then-dialog/confirm-then-dialog.component';
4
- import { ConfirmThenExecuteDialogComponent } from './components/confirm-then-execute-dialog/confirm-then-execute-dialog.component';
5
4
  import { ConfirmationDialogComponent } from './components/confirmation-dialog/confirmation-dialog.component';
6
5
  export class AbstractInteractionContext {
7
6
  startActivity(activityType, data, options) {
@@ -33,11 +32,5 @@ export class AbstractInteractionContext {
33
32
  data: data
34
33
  }, true);
35
34
  }
36
- confirmThenExecute(confirm, operation) {
37
- return this.createAndLaunchActivity(ConfirmThenExecuteDialogComponent, {
38
- confirm,
39
- operation: operation
40
- }, true);
41
- }
42
35
  }
43
36
  //# sourceMappingURL=abstract-interaction-context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"abstract-interaction-context.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/src/lib/interaction/abstract-interaction-context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AAGpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,0BAA0B,EAAE,MAAM,gEAAgE,CAAC;AAC5G,OAAO,EAAE,iCAAiC,EAAE,MAAM,gFAAgF,CAAC;AACnI,OAAO,EAAE,2BAA2B,EAAE,MAAM,gEAAgE,CAAC;AAK7G,MAAM,OAAgB,0BAA0B;IAa9C,aAAa,CAAU,YAA8C,EAAE,IAAQ,EAAE,OAAoC;QACnH,OAAO,IAAI,CAAC,uBAAuB,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC,CAAC;IAChH,CAAC;IAED,OAAO,CAAC,OAAgB;QACtB,0EAA0E;QAC1E,yEAAyE;QACzE,0CAA0C;QAC1C,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAAC,KAAY;QAChB,oCAAoC;QACpC,OAAO,IAAI,CAAC,uBAAuB,CAAC,oBAAoB,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAC1E,CAAC;IAED,eAAe,CAAC,OAAgB;QAC9B,OAAO,IAAI,CAAC,uBAAuB,CAAC,2BAA2B,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAClF,CAAC;IAED;;;;;OAKG;IACH,WAAW,CAAU,OAAgB,EAAE,YAA8C,EAAE,IAAQ;QAC7F,OAAO,IAAI,CAAC,uBAAuB,CAAiD,0BAA0B,EAAE;YAC9G,OAAO;YACP,YAAY,EAAE,YAAY;YAC1B,IAAI,EAAE,IAAI;SACX,EAAE,IAAI,CAAC,CAAC;IACX,CAAC;IAED,kBAAkB,CAAI,OAAgB,EAAE,SAAsE;QAC5G,OAAO,IAAI,CAAC,uBAAuB,CAAiE,iCAAiC,EAAE;YACrI,OAAO;YACP,SAAS,EAAE,SAAS;SACrB,EAAE,IAAI,CAAC,CAAC;IAEX,CAAC;CAIF","sourcesContent":["import { Constructable, Disposable } from '@coolon/pectin';\nimport { Opts } from '@coolon/typescript-utilities';\nimport { Activity } from './activity';\nimport { Alert } from './alert';\nimport { AlertDialogComponent } from './components/alert-dialog/alert-dialog.component';\nimport { ConfirmThenDialogComponent } from './components/confirm-then-dialog/confirm-then-dialog.component';\nimport { ConfirmThenExecuteDialogComponent } from './components/confirm-then-execute-dialog/confirm-then-execute-dialog.component';\nimport { ConfirmationDialogComponent } from './components/confirmation-dialog/confirmation-dialog.component';\nimport { Confirm } from './confirm';\nimport { InteractionContext } from './interaction-context';\nimport * as _ from 'lodash';\n\nexport abstract class AbstractInteractionContext implements InteractionContext {\n abstract readonly identifier: string;\n\n abstract cancelActiveActivity(): Promise<boolean>;\n\n abstract dispose(): void;\n\n abstract registerDisposable<T extends Disposable>(disposable: T): T;\n\n abstract isActive(): boolean;\n\n protected abstract createAndLaunchActivity<D, R, E>(activityType: Constructable<Activity<D, R, E>>, data: D, disableClose: boolean): Promise<R>;\n\n startActivity<D, R, E>(activityType: Constructable<Activity<D, R, E>>, data?: D, options?: InteractionContext.Options): Promise<R> {\n return this.createAndLaunchActivity(activityType, data, Opts.get(options).getOptional('disableClose', false));\n }\n\n confirm(confirm: Confirm): Promise<boolean> {\n // Important: we have to implement confirmOrReject as the main entry point\n // as the canDeactivation guards need to be able to cancel an interaction\n // without caring about returning a value.\n return this.confirmOrReject(confirm).then(() => true).catch(() => false);\n }\n\n alert(alert: Alert): Promise<void> {\n // TODO: Test disableClose === false\n return this.createAndLaunchActivity(AlertDialogComponent, alert, false);\n }\n\n confirmOrReject(confirm: Confirm): Promise<void> {\n return this.createAndLaunchActivity(ConfirmationDialogComponent, confirm, true);\n }\n\n /**\n * Presents the confirmation to the user and runs the activity only if the user confirms.\n * @param confirm:Confirm the confirmation to display.\n * @param activityType the activity to run if confirmed.\n * @param data the activity data.\n */\n confirmThen<D, R, E>(confirm: Confirm, activityType: Constructable<Activity<D, R, E>>, data?: D): Promise<R> {\n return this.createAndLaunchActivity<ConfirmThenDialogComponent.Data<D, R, E>, R, E>(ConfirmThenDialogComponent, {\n confirm,\n activityType: activityType,\n data: data\n }, true);\n }\n\n confirmThenExecute<R>(confirm: Confirm, operation: (interactionContext:InteractionContext) => (Promise<R> | R)): Promise<R> {\n return this.createAndLaunchActivity<ConfirmThenExecuteDialogComponent.Data<R, unknown>, R, unknown>(ConfirmThenExecuteDialogComponent, {\n confirm,\n operation: operation\n }, true);\n\n }\n\n\n\n}\n"]}
1
+ {"version":3,"file":"abstract-interaction-context.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/src/lib/interaction/abstract-interaction-context.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,8BAA8B,CAAC;AAGpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kDAAkD,CAAC;AACxF,OAAO,EAAE,0BAA0B,EAAE,MAAM,gEAAgE,CAAC;AAC5G,OAAO,EAAE,2BAA2B,EAAE,MAAM,gEAAgE,CAAC;AAI7G,MAAM,OAAgB,0BAA0B;IAa9C,aAAa,CAAU,YAA8C,EAAE,IAAQ,EAAE,OAAoC;QACnH,OAAO,IAAI,CAAC,uBAAuB,CAAC,YAAY,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,WAAW,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC,CAAC;IAChH,CAAC;IAED,OAAO,CAAC,OAAgB;QACtB,0EAA0E;QAC1E,yEAAyE;QACzE,0CAA0C;QAC1C,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAAC,KAAY;QAChB,oCAAoC;QACpC,OAAO,IAAI,CAAC,uBAAuB,CAAC,oBAAoB,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;IAC1E,CAAC;IAED,eAAe,CAAC,OAAgB;QAC9B,OAAO,IAAI,CAAC,uBAAuB,CAAC,2BAA2B,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAClF,CAAC;IAED;;;;;OAKG;IACH,WAAW,CAAU,OAAgB,EAAE,YAA8C,EAAE,IAAQ;QAC7F,OAAO,IAAI,CAAC,uBAAuB,CAAiD,0BAA0B,EAAE;YAC9G,OAAO;YACP,YAAY,EAAE,YAAY;YAC1B,IAAI,EAAE,IAAI;SACX,EAAE,IAAI,CAAC,CAAC;IACX,CAAC;CAEF","sourcesContent":["import { Constructable, Disposable } from '@coolon/pectin';\nimport { Opts } from '@coolon/typescript-utilities';\nimport { Activity } from './activity';\nimport { Alert } from './alert';\nimport { AlertDialogComponent } from './components/alert-dialog/alert-dialog.component';\nimport { ConfirmThenDialogComponent } from './components/confirm-then-dialog/confirm-then-dialog.component';\nimport { ConfirmationDialogComponent } from './components/confirmation-dialog/confirmation-dialog.component';\nimport { Confirm } from './confirm';\nimport { InteractionContext } from './interaction-context';\n\nexport abstract class AbstractInteractionContext implements InteractionContext {\n abstract readonly identifier: string;\n\n abstract cancelActiveActivity(): Promise<boolean>;\n\n abstract dispose(): void;\n\n abstract registerDisposable<T extends Disposable>(disposable: T): T;\n\n abstract isActive(): boolean;\n\n protected abstract createAndLaunchActivity<D, R, E>(activityType: Constructable<Activity<D, R, E>>, data: D, disableClose: boolean): Promise<R>;\n\n startActivity<D, R, E>(activityType: Constructable<Activity<D, R, E>>, data?: D, options?: InteractionContext.Options): Promise<R> {\n return this.createAndLaunchActivity(activityType, data, Opts.get(options).getOptional('disableClose', false));\n }\n\n confirm(confirm: Confirm): Promise<boolean> {\n // Important: we have to implement confirmOrReject as the main entry point\n // as the canDeactivation guards need to be able to cancel an interaction\n // without caring about returning a value.\n return this.confirmOrReject(confirm).then(() => true).catch(() => false);\n }\n\n alert(alert: Alert): Promise<void> {\n // TODO: Test disableClose === false\n return this.createAndLaunchActivity(AlertDialogComponent, alert, false);\n }\n\n confirmOrReject(confirm: Confirm): Promise<void> {\n return this.createAndLaunchActivity(ConfirmationDialogComponent, confirm, true);\n }\n\n /**\n * Presents the confirmation to the user and runs the activity only if the user confirms.\n * @param confirm:Confirm the confirmation to display.\n * @param activityType the activity to run if confirmed.\n * @param data the activity data.\n */\n confirmThen<D, R, E>(confirm: Confirm, activityType: Constructable<Activity<D, R, E>>, data?: D): Promise<R> {\n return this.createAndLaunchActivity<ConfirmThenDialogComponent.Data<D, R, E>, R, E>(ConfirmThenDialogComponent, {\n confirm,\n activityType: activityType,\n data: data\n }, true);\n }\n\n}\n"]}
@@ -1 +1 @@
1
- [{"__symbolic":"module","version":4,"metadata":{"AbstractInteractionContext":{"__symbolic":"class","members":{"cancelActiveActivity":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}],"registerDisposable":[{"__symbolic":"method"}],"isActive":[{"__symbolic":"method"}],"createAndLaunchActivity":[{"__symbolic":"method"}],"startActivity":[{"__symbolic":"method"}],"confirm":[{"__symbolic":"method"}],"alert":[{"__symbolic":"method"}],"confirmOrReject":[{"__symbolic":"method"}],"confirmThen":[{"__symbolic":"method"}],"confirmThenExecute":[{"__symbolic":"method"}]}}}}]
1
+ [{"__symbolic":"module","version":4,"metadata":{"AbstractInteractionContext":{"__symbolic":"class","members":{"cancelActiveActivity":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}],"registerDisposable":[{"__symbolic":"method"}],"isActive":[{"__symbolic":"method"}],"createAndLaunchActivity":[{"__symbolic":"method"}],"startActivity":[{"__symbolic":"method"}],"confirm":[{"__symbolic":"method"}],"alert":[{"__symbolic":"method"}],"confirmOrReject":[{"__symbolic":"method"}],"confirmThen":[{"__symbolic":"method"}]}}}}]
@@ -8,10 +8,9 @@ export const ACTIVITY_DATA = new InjectionToken('InteractionActivityData');
8
8
  export class Activity extends DisposableComponent {
9
9
  constructor() {
10
10
  super();
11
- this._busyModel = this.registerDisposable(new DelegatingValueModel().withDefault(false));
11
+ this._busyModel = new DelegatingValueModel().withDefault(false);
12
12
  this._focusedModel = this.registerDisposable(new DelegatingValueModel());
13
13
  this.class = 'aup-activity';
14
- this.busyWhile(this.confirmCommand.busy);
15
14
  }
16
15
  get isFocused() {
17
16
  return this._focusedModel.value;
@@ -1 +1 @@
1
- {"version":3,"file":"activity.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/src/lib/interaction/activity.ts"],"names":[],"mappings":"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","sourcesContent":["import { AfterViewInit, Component, forwardRef, HostBinding, InjectionToken, ViewChild } from '@angular/core';\nimport { Command, DelegatingValueModel, Dsl, Trace, TrackExternal, ValueModel } from '@coolon/pectin';\nimport { assert } from '@coolon/typescript-utilities';\nimport { DisposableComponent } from '../components/disposable-component';\nimport { ActivityActionsComponent } from './components/activity-actions/activity-actions.component';\nimport { InteractionContext } from './interaction-context';\n\nexport const ACTIVITY_DATA = new InjectionToken<any>('InteractionActivityData');\n\n@Component({\n template: ''\n})\nexport class Activity<D, R, E = any> extends DisposableComponent implements AfterViewInit {\n\n private readonly _busyModel = this.registerDisposable(new DelegatingValueModel<boolean>().withDefault(false));\n private _focusedModel = this.registerDisposable(new DelegatingValueModel<boolean>());\n private _activityContext: Activity.Context<R, E>;\n\n @ViewChild(ActivityActionsComponent)\n protected activityActions: ActivityActionsComponent;\n\n @TrackExternal()\n public confirmCommand: Command<unknown>;\n\n @TrackExternal()\n public cancelCommand: Command<unknown>;\n\n // @Trace()\n private _interactionContext: InteractionContext;\n\n @HostBinding('class') class = 'aup-activity';\n\n @HostBinding('attr.focused')\n get isFocused() {\n return this._focusedModel.value;\n }\n\n constructor() {\n super();\n this.busyWhile(this.confirmCommand.busy);\n }\n\n initialise(nestedInteractionContext: InteractionContext, activityContext: Activity.Context<R, E>): void {\n const { chain, when } = Dsl.disposeWith(this);\n assert.isNil(this._activityContext);\n this._activityContext = activityContext;\n this._interactionContext = nestedInteractionContext;\n this._focusedModel.setDelegate(activityContext.focused);\n when(this._focusedModel).becomesTruthy(() => {\n this.onActivityReady();\n });\n }\n\n ngAfterViewInit() {\n this.activityActions?.initCommands(this);\n }\n\n get interactionContext() {\n assert.isTruthy(this.isInitialised());\n return this._interactionContext;\n }\n\n done(result?: R): void {\n return this._activityContext.onDone(result);\n }\n\n cancel(error?: E): void {\n this._activityContext.onCancel(error);\n }\n\n // @Trace()\n onActivityReady() {\n }\n\n get busy(): ValueModel<boolean> {\n return this._busyModel.readonly;\n }\n\n get focused(): ValueModel<boolean> {\n return this._focusedModel.readonly;\n }\n\n busyWhile(busyModel: ValueModel<boolean>) {\n this._busyModel.setDelegate(busyModel);\n }\n\n isBusy() {\n return this._busyModel.value;\n }\n\n isInitialised() {\n return !!this._activityContext;\n }\n}\n\nexport namespace Activity {\n\n export interface Context<R, E> {\n onDone: (result: R) => void,\n onCancel: (error: E) => void,\n focused: ValueModel<boolean>\n }\n}\n"]}
1
+ {"version":3,"file":"activity.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/src/lib/interaction/activity.ts"],"names":[],"mappings":";AAAA,OAAO,EAAiB,SAAS,EAAc,WAAW,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC7G,OAAO,EAAE,OAAO,EAAE,oBAAoB,EAAE,GAAG,EAAS,aAAa,EAAc,MAAM,gBAAgB,CAAC;AACtG,OAAO,EAAE,MAAM,EAAE,MAAM,8BAA8B,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAE,wBAAwB,EAAE,MAAM,0DAA0D,CAAC;AAGpG,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,cAAc,CAAM,yBAAyB,CAAC,CAAC;AAKhF,MAAM,OAAO,QAAwB,SAAQ,mBAAmB;IAyB9D;QACE,KAAK,EAAE,CAAC;QAxBO,eAAU,GAAG,IAAI,oBAAoB,EAAW,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC7E,kBAAa,GAAG,IAAI,CAAC,kBAAkB,CAAC,IAAI,oBAAoB,EAAW,CAAC,CAAC;QAe/D,UAAK,GAAG,cAAc,CAAC;IAS7C,CAAC;IAPD,IACI,SAAS;QACX,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC;IAClC,CAAC;IAMD,UAAU,CAAC,wBAA4C,EAAE,eAAuC;QAC9F,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACpC,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;QACxC,IAAI,CAAC,mBAAmB,GAAG,wBAAwB,CAAC;QACpD,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QACxD,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,aAAa,CAAC,GAAG,EAAE;YAC1C,IAAI,CAAC,eAAe,EAAE,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,eAAe;;QACb,MAAA,IAAI,CAAC,eAAe,0CAAE,YAAY,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;IAED,IAAI,kBAAkB;QACpB,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;QACtC,OAAO,IAAI,CAAC,mBAAmB,CAAC;IAClC,CAAC;IAED,IAAI,CAAC,MAAU;QACb,OAAO,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,CAAC,KAAS;QACd,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAED,WAAW;IACX,eAAe;IACf,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC;IAClC,CAAC;IAED,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;IACrC,CAAC;IAED,SAAS,CAAC,SAA8B;QACtC,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IACzC,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;IAC/B,CAAC;IAED,aAAa;QACX,OAAO,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC;IACjC,CAAC;;;YAlFF,SAAS,SAAC;gBACT,QAAQ,EAAE,EAAE;aACb;;;;8BAOE,SAAS,SAAC,wBAAwB;oBAYlC,WAAW,SAAC,OAAO;wBAEnB,WAAW,SAAC,cAAc;;AAV3B;IADC,aAAa,EAAE;8BACO,OAAO;gDAAU;AAGxC;IADC,aAAa,EAAE;8BACM,OAAO;+CAAU","sourcesContent":["import { AfterViewInit, Component, forwardRef, HostBinding, InjectionToken, ViewChild } from '@angular/core';\nimport { Command, DelegatingValueModel, Dsl, Trace, TrackExternal, ValueModel } from '@coolon/pectin';\nimport { assert } from '@coolon/typescript-utilities';\nimport { DisposableComponent } from '../components/disposable-component';\nimport { ActivityActionsComponent } from './components/activity-actions/activity-actions.component';\nimport { InteractionContext } from './interaction-context';\n\nexport const ACTIVITY_DATA = new InjectionToken<any>('InteractionActivityData');\n\n@Component({\n template: ''\n})\nexport class Activity<D, R, E = any> extends DisposableComponent implements AfterViewInit {\n\n private readonly _busyModel = new DelegatingValueModel<boolean>().withDefault(false);\n private _focusedModel = this.registerDisposable(new DelegatingValueModel<boolean>());\n private _activityContext: Activity.Context<R, E>;\n\n @ViewChild(ActivityActionsComponent)\n protected activityActions: ActivityActionsComponent;\n\n @TrackExternal()\n public confirmCommand: Command<unknown>;\n\n @TrackExternal()\n public cancelCommand: Command<unknown>;\n\n // @Trace()\n private _interactionContext: InteractionContext;\n\n @HostBinding('class') class = 'aup-activity';\n\n @HostBinding('attr.focused')\n get isFocused() {\n return this._focusedModel.value;\n }\n\n constructor() {\n super();\n }\n\n initialise(nestedInteractionContext: InteractionContext, activityContext: Activity.Context<R, E>): void {\n const { chain, when } = Dsl.disposeWith(this);\n assert.isNil(this._activityContext);\n this._activityContext = activityContext;\n this._interactionContext = nestedInteractionContext;\n this._focusedModel.setDelegate(activityContext.focused);\n when(this._focusedModel).becomesTruthy(() => {\n this.onActivityReady();\n });\n }\n\n ngAfterViewInit() {\n this.activityActions?.initCommands(this);\n }\n\n get interactionContext() {\n assert.isTruthy(this.isInitialised());\n return this._interactionContext;\n }\n\n done(result?: R): void {\n return this._activityContext.onDone(result);\n }\n\n cancel(error?: E): void {\n this._activityContext.onCancel(error);\n }\n\n // @Trace()\n onActivityReady() {\n }\n\n get busy(): ValueModel<boolean> {\n return this._busyModel.readonly;\n }\n\n get focused(): ValueModel<boolean> {\n return this._focusedModel.readonly;\n }\n\n busyWhile(busyModel: ValueModel<boolean>) {\n this._busyModel.setDelegate(busyModel);\n }\n\n isBusy() {\n return this._busyModel.value;\n }\n\n isInitialised() {\n return !!this._activityContext;\n }\n}\n\nexport namespace Activity {\n\n export interface Context<R, E> {\n onDone: (result: R) => void,\n onCancel: (error: E) => void,\n focused: ValueModel<boolean>\n }\n}\n"]}
@@ -1,18 +1,2 @@
1
- import * as _ from 'lodash';
2
- export var Alert;
3
- (function (Alert) {
4
- function getContent(alert) {
5
- const content = alert.content();
6
- return Array.isArray(content) ? content : [content];
7
- }
8
- Alert.getContent = getContent;
9
- function getTitle(alert) {
10
- return _.isFunction(alert.title) ? alert.title() : undefined;
11
- }
12
- Alert.getTitle = getTitle;
13
- function getColor(alert) {
14
- return _.isFunction(alert.color) ? alert.color() : undefined;
15
- }
16
- Alert.getColor = getColor;
17
- })(Alert || (Alert = {}));
1
+ export {};
18
2
  //# sourceMappingURL=alert.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"alert.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/src/lib/interaction/alert.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAY5B,MAAM,KAAW,KAAK,CAcrB;AAdD,WAAiB,KAAK;IAEpB,SAAgB,UAAU,CAAC,KAAY;QACrC,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,EAAE,CAAC;QAChC,OAAO,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACtD,CAAC;IAHe,gBAAU,aAGzB,CAAA;IAED,SAAgB,QAAQ,CAAC,KAAY;QACnC,OAAO,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/D,CAAC;IAFe,cAAQ,WAEvB,CAAA;IAED,SAAgB,QAAQ,CAAC,KAAY;QACnC,OAAO,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/D,CAAC;IAFe,cAAQ,WAEvB,CAAA;AACH,CAAC,EAdgB,KAAK,KAAL,KAAK,QAcrB","sourcesContent":["import * as _ from 'lodash';\n\nexport interface Alert {\n title?(): string;\n\n color?(): 'primary' | 'accent' | 'warn';\n\n content(): string | string[];\n\n ok(): string;\n}\n\nexport namespace Alert {\n\n export function getContent(alert: Alert): string[] {\n const content = alert.content();\n return Array.isArray(content) ? content : [content];\n }\n\n export function getTitle(alert: Alert): string {\n return _.isFunction(alert.title) ? alert.title() : undefined;\n }\n\n export function getColor(alert: Alert): 'primary' | 'accent' | 'warn' {\n return _.isFunction(alert.color) ? alert.color() : undefined;\n }\n}\n"]}
1
+ {"version":3,"file":"alert.js","sourceRoot":"","sources":["../../../../../../libs/angular-ui-powerups/src/lib/interaction/alert.ts"],"names":[],"mappings":"","sourcesContent":["export interface Alert {\n title?(): string;\n\n content(): string[];\n\n ok(): string;\n}\n"]}