@coolon/angular-ui-powerups 2.0.0-alpha.29 → 2.0.0-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (262) hide show
  1. package/CHANGELOG.md +0 -177
  2. package/assets/form.scss +4 -5
  3. package/assets/styles.scss +0 -2
  4. package/bundles/coolon-angular-ui-powerups.umd.js +339 -1152
  5. package/bundles/coolon-angular-ui-powerups.umd.js.map +1 -1
  6. package/bundles/coolon-angular-ui-powerups.umd.min.js +2 -2
  7. package/bundles/coolon-angular-ui-powerups.umd.min.js.map +1 -1
  8. package/coolon-angular-ui-powerups.d.ts +54 -64
  9. package/coolon-angular-ui-powerups.metadata.json +1 -1
  10. package/esm2015/coolon-angular-ui-powerups.js +52 -62
  11. package/esm2015/coolon-angular-ui-powerups.js.map +1 -1
  12. package/esm2015/coolon-angular-ui-powerups.metadata.json +1 -1
  13. package/esm2015/lib/angular-ui-powerups.module.ngfactory.js.map +1 -1
  14. package/esm2015/lib/components/card-container/card-container.component.js +1 -1
  15. package/esm2015/lib/components/card-container/card-container.component.metadata.json +1 -1
  16. package/esm2015/lib/components/components.module.js +14 -58
  17. package/esm2015/lib/components/components.module.js.map +1 -1
  18. package/esm2015/lib/components/components.module.metadata.json +1 -1
  19. package/esm2015/lib/components/components.module.ngfactory.js.map +1 -1
  20. package/esm2015/lib/components/forms/abstract-input.component.js +4 -12
  21. package/esm2015/lib/components/forms/abstract-input.component.js.map +1 -1
  22. package/esm2015/lib/components/forms/abstract-input.component.metadata.json +1 -1
  23. package/esm2015/lib/components/forms/abstract-list-input.component.js +6 -51
  24. package/esm2015/lib/components/forms/abstract-list-input.component.js.map +1 -1
  25. package/esm2015/lib/components/forms/abstract-list-input.component.metadata.json +1 -1
  26. package/esm2015/lib/components/forms/abstract-value-input.component.js +3 -47
  27. package/esm2015/lib/components/forms/abstract-value-input.component.js.map +1 -1
  28. package/esm2015/lib/components/forms/abstract-value-input.component.metadata.json +1 -1
  29. package/esm2015/lib/components/forms/checkbox-input/checkbox-input.component.js +6 -3
  30. package/esm2015/lib/components/forms/checkbox-input/checkbox-input.component.js.map +1 -1
  31. package/esm2015/lib/components/forms/checkbox-input/checkbox-input.component.metadata.json +1 -1
  32. package/esm2015/lib/components/forms/multiple-select-input/multiple-select-input.component.js +13 -8
  33. package/esm2015/lib/components/forms/multiple-select-input/multiple-select-input.component.js.map +1 -1
  34. package/esm2015/lib/components/forms/multiple-select-input/multiple-select-input.component.metadata.json +1 -1
  35. package/esm2015/lib/components/forms/number-input/number-input.component.js +6 -3
  36. package/esm2015/lib/components/forms/number-input/number-input.component.js.map +1 -1
  37. package/esm2015/lib/components/forms/number-input/number-input.component.metadata.json +1 -1
  38. package/esm2015/lib/components/forms/password-input/password-input.component.js +7 -4
  39. package/esm2015/lib/components/forms/password-input/password-input.component.js.map +1 -1
  40. package/esm2015/lib/components/forms/password-input/password-input.component.metadata.json +1 -1
  41. package/esm2015/lib/components/forms/select-input/select-input.component.js +5 -2
  42. package/esm2015/lib/components/forms/select-input/select-input.component.js.map +1 -1
  43. package/esm2015/lib/components/forms/select-input/select-input.component.metadata.json +1 -1
  44. package/esm2015/lib/components/forms/string-input/string-input.component.js +7 -3
  45. package/esm2015/lib/components/forms/string-input/string-input.component.js.map +1 -1
  46. package/esm2015/lib/components/forms/string-input/string-input.component.metadata.json +1 -1
  47. package/esm2015/lib/components/forms/text-input/text-input.component.js +6 -3
  48. package/esm2015/lib/components/forms/text-input/text-input.component.js.map +1 -1
  49. package/esm2015/lib/components/forms/text-input/text-input.component.metadata.json +1 -1
  50. package/esm2015/lib/components/icon/icon.component.js +4 -17
  51. package/esm2015/lib/components/icon/icon.component.js.map +1 -1
  52. package/esm2015/lib/components/icon/icon.component.metadata.json +1 -1
  53. package/esm2015/lib/components/index.js +1 -12
  54. package/esm2015/lib/components/index.js.map +1 -1
  55. package/esm2015/lib/components/index.metadata.json +1 -1
  56. package/esm2015/lib/components/table/cell-editors.js.map +1 -1
  57. package/esm2015/lib/components/table/{cell-portal-ref.js → cell-protal-ref.js} +3 -7
  58. package/esm2015/lib/components/table/cell-protal-ref.js.map +1 -0
  59. package/esm2015/lib/components/table/{cell-portal-ref.metadata.json → cell-protal-ref.metadata.json} +1 -1
  60. package/esm2015/lib/components/table/column-model.js +11 -66
  61. package/esm2015/lib/components/table/column-model.js.map +1 -1
  62. package/esm2015/lib/components/table/column-model.metadata.json +1 -1
  63. package/esm2015/lib/components/table/table-cell-renderer/table-cell-renderer.component.js +1 -1
  64. package/esm2015/lib/components/table/table-cell-renderer/table-cell-renderer.component.js.map +1 -1
  65. package/esm2015/lib/components/table/table-header-cell-renderer/table-header-cell-renderer.component.js +1 -1
  66. package/esm2015/lib/components/table/table-header-cell-renderer/table-header-cell-renderer.component.js.map +1 -1
  67. package/esm2015/lib/components/table/table-model.js +10 -11
  68. package/esm2015/lib/components/table/table-model.js.map +1 -1
  69. package/esm2015/lib/components/table/table-model.metadata.json +1 -1
  70. package/esm2015/lib/components/table/table.component.js +1 -1
  71. package/esm2015/lib/components/table/table.component.js.map +1 -1
  72. package/esm2015/lib/components/table/table.component.metadata.json +1 -1
  73. package/esm2015/lib/interaction/components/activity-container/activity-container.component.js +7 -2
  74. package/esm2015/lib/interaction/components/activity-container/activity-container.component.js.map +1 -1
  75. package/esm2015/lib/interaction/components/activity-container/activity-container.component.metadata.json +1 -1
  76. package/esm2015/lib/interaction/interaction.module.ngfactory.js.map +1 -1
  77. package/esm2015/lib/place/place-component.js +1 -1
  78. package/esm2015/lib/place/place-component.js.map +1 -1
  79. package/esm2015/lib/place/place-router.js +8 -2
  80. package/esm2015/lib/place/place-router.js.map +1 -1
  81. package/esm2015/lib/place/place-router.metadata.json +1 -1
  82. package/esm2015/lib/place/place.module.ngfactory.js.map +1 -1
  83. package/esm2015/lib/place/route/parameter-decorators.js +3 -2
  84. package/esm2015/lib/place/route/parameter-decorators.js.map +1 -1
  85. package/esm2015/lib/place/route/parameter-decorators.metadata.json +1 -1
  86. package/esm5/coolon-angular-ui-powerups.js +52 -62
  87. package/esm5/coolon-angular-ui-powerups.js.map +1 -1
  88. package/esm5/lib/angular-ui-powerups.module.ngfactory.js.map +1 -1
  89. package/esm5/lib/components/card-container/card-container.component.js +1 -1
  90. package/esm5/lib/components/components.module.js +14 -58
  91. package/esm5/lib/components/components.module.js.map +1 -1
  92. package/esm5/lib/components/components.module.ngfactory.js.map +1 -1
  93. package/esm5/lib/components/forms/abstract-input.component.js +4 -12
  94. package/esm5/lib/components/forms/abstract-input.component.js.map +1 -1
  95. package/esm5/lib/components/forms/abstract-list-input.component.js +6 -56
  96. package/esm5/lib/components/forms/abstract-list-input.component.js.map +1 -1
  97. package/esm5/lib/components/forms/abstract-value-input.component.js +3 -52
  98. package/esm5/lib/components/forms/abstract-value-input.component.js.map +1 -1
  99. package/esm5/lib/components/forms/checkbox-input/checkbox-input.component.js +6 -3
  100. package/esm5/lib/components/forms/checkbox-input/checkbox-input.component.js.map +1 -1
  101. package/esm5/lib/components/forms/multiple-select-input/multiple-select-input.component.js +13 -8
  102. package/esm5/lib/components/forms/multiple-select-input/multiple-select-input.component.js.map +1 -1
  103. package/esm5/lib/components/forms/number-input/number-input.component.js +6 -3
  104. package/esm5/lib/components/forms/number-input/number-input.component.js.map +1 -1
  105. package/esm5/lib/components/forms/password-input/password-input.component.js +7 -4
  106. package/esm5/lib/components/forms/password-input/password-input.component.js.map +1 -1
  107. package/esm5/lib/components/forms/select-input/select-input.component.js +5 -2
  108. package/esm5/lib/components/forms/select-input/select-input.component.js.map +1 -1
  109. package/esm5/lib/components/forms/string-input/string-input.component.js +7 -3
  110. package/esm5/lib/components/forms/string-input/string-input.component.js.map +1 -1
  111. package/esm5/lib/components/forms/text-input/text-input.component.js +6 -3
  112. package/esm5/lib/components/forms/text-input/text-input.component.js.map +1 -1
  113. package/esm5/lib/components/icon/icon.component.js +3 -15
  114. package/esm5/lib/components/icon/icon.component.js.map +1 -1
  115. package/esm5/lib/components/index.js +1 -12
  116. package/esm5/lib/components/index.js.map +1 -1
  117. package/esm5/lib/components/table/cell-editors.js.map +1 -1
  118. package/esm5/lib/components/table/{cell-portal-ref.js → cell-protal-ref.js} +3 -7
  119. package/esm5/lib/components/table/cell-protal-ref.js.map +1 -0
  120. package/esm5/lib/components/table/column-model.js +11 -67
  121. package/esm5/lib/components/table/column-model.js.map +1 -1
  122. package/esm5/lib/components/table/table-cell-renderer/table-cell-renderer.component.js +1 -1
  123. package/esm5/lib/components/table/table-cell-renderer/table-cell-renderer.component.js.map +1 -1
  124. package/esm5/lib/components/table/table-header-cell-renderer/table-header-cell-renderer.component.js +1 -1
  125. package/esm5/lib/components/table/table-header-cell-renderer/table-header-cell-renderer.component.js.map +1 -1
  126. package/esm5/lib/components/table/table-model.js +11 -11
  127. package/esm5/lib/components/table/table-model.js.map +1 -1
  128. package/esm5/lib/components/table/table.component.js +1 -1
  129. package/esm5/lib/components/table/table.component.js.map +1 -1
  130. package/esm5/lib/interaction/components/activity-container/activity-container.component.js +7 -2
  131. package/esm5/lib/interaction/components/activity-container/activity-container.component.js.map +1 -1
  132. package/esm5/lib/interaction/interaction.module.ngfactory.js.map +1 -1
  133. package/esm5/lib/place/place-component.js +1 -1
  134. package/esm5/lib/place/place-component.js.map +1 -1
  135. package/esm5/lib/place/place-router.js +8 -2
  136. package/esm5/lib/place/place-router.js.map +1 -1
  137. package/esm5/lib/place/place.module.ngfactory.js.map +1 -1
  138. package/esm5/lib/place/route/parameter-decorators.js +3 -2
  139. package/esm5/lib/place/route/parameter-decorators.js.map +1 -1
  140. package/fesm2015/coolon-angular-ui-powerups.js +240 -988
  141. package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
  142. package/fesm5/coolon-angular-ui-powerups.js +269 -1066
  143. package/fesm5/coolon-angular-ui-powerups.js.map +1 -1
  144. package/lib/components/forms/abstract-input.component.d.ts +2 -8
  145. package/lib/components/forms/abstract-list-input.component.d.ts +3 -10
  146. package/lib/components/forms/abstract-value-input.component.d.ts +3 -9
  147. package/lib/components/forms/checkbox-input/checkbox-input.component.d.ts +2 -0
  148. package/lib/components/forms/multiple-select-input/multiple-select-input.component.d.ts +4 -8
  149. package/lib/components/forms/number-input/number-input.component.d.ts +2 -0
  150. package/lib/components/forms/password-input/password-input.component.d.ts +2 -0
  151. package/lib/components/forms/select-input/select-input.component.d.ts +2 -2
  152. package/lib/components/forms/string-input/string-input.component.d.ts +2 -1
  153. package/lib/components/forms/text-input/text-input.component.d.ts +2 -0
  154. package/lib/components/icon/icon.component.d.ts +0 -15
  155. package/lib/components/index.d.ts +1 -13
  156. package/lib/components/table/cell-editors.d.ts +3 -3
  157. package/lib/components/table/{cell-portal-ref.d.ts → cell-protal-ref.d.ts} +4 -4
  158. package/lib/components/table/column-model.d.ts +12 -18
  159. package/lib/components/table/table-cell-renderer/table-cell-renderer.component.d.ts +1 -1
  160. package/lib/components/table/table-header-cell-renderer/table-header-cell-renderer.component.d.ts +1 -1
  161. package/lib/components/table/table-model.d.ts +4 -12
  162. package/package.json +4 -4
  163. package/assets/commands.scss +0 -3
  164. package/assets/icons.scss +0 -30
  165. package/esm2015/lib/components/commands/command-bar.component.js +0 -51
  166. package/esm2015/lib/components/commands/command-bar.component.js.map +0 -1
  167. package/esm2015/lib/components/commands/command-bar.component.metadata.json +0 -1
  168. package/esm2015/lib/components/commands/command-bar.component.ngfactory.js.map +0 -1
  169. package/esm2015/lib/components/commands/command-container.js +0 -20
  170. package/esm2015/lib/components/commands/command-container.js.map +0 -1
  171. package/esm2015/lib/components/commands/command-container.metadata.json +0 -1
  172. package/esm2015/lib/components/commands/command-face/command-face.component.js +0 -91
  173. package/esm2015/lib/components/commands/command-face/command-face.component.js.map +0 -1
  174. package/esm2015/lib/components/commands/command-face/command-face.component.metadata.json +0 -1
  175. package/esm2015/lib/components/commands/command-face/command-face.component.ngfactory.js.map +0 -1
  176. package/esm2015/lib/components/commands/command-face/command-face.component.scss.ngstyle.js.map +0 -1
  177. package/esm2015/lib/components/commands/command-face.js +0 -74
  178. package/esm2015/lib/components/commands/command-face.js.map +0 -1
  179. package/esm2015/lib/components/commands/command-face.metadata.json +0 -1
  180. package/esm2015/lib/components/commands/command.component.js +0 -38
  181. package/esm2015/lib/components/commands/command.component.js.map +0 -1
  182. package/esm2015/lib/components/commands/command.component.metadata.json +0 -1
  183. package/esm2015/lib/components/commands/command.component.ngfactory.js.map +0 -1
  184. package/esm2015/lib/components/commands/popup-menu/abstract-popup-menu.component.js +0 -57
  185. package/esm2015/lib/components/commands/popup-menu/abstract-popup-menu.component.js.map +0 -1
  186. package/esm2015/lib/components/commands/popup-menu/abstract-popup-menu.component.metadata.json +0 -1
  187. package/esm2015/lib/components/commands/popup-menu/abstract-popup-menu.component.ngfactory.js.map +0 -1
  188. package/esm2015/lib/components/commands/popup-menu/more-menu.component.js +0 -40
  189. package/esm2015/lib/components/commands/popup-menu/more-menu.component.js.map +0 -1
  190. package/esm2015/lib/components/commands/popup-menu/more-menu.component.metadata.json +0 -1
  191. package/esm2015/lib/components/commands/popup-menu/more-menu.component.ngfactory.js.map +0 -1
  192. package/esm2015/lib/components/commands/popup-menu/popup-menu.component.js +0 -49
  193. package/esm2015/lib/components/commands/popup-menu/popup-menu.component.js.map +0 -1
  194. package/esm2015/lib/components/commands/popup-menu/popup-menu.component.metadata.json +0 -1
  195. package/esm2015/lib/components/commands/popup-menu/popup-menu.component.ngfactory.js.map +0 -1
  196. package/esm2015/lib/components/commands/popup-menu-renderer/popup-menu-renderer.component.js +0 -62
  197. package/esm2015/lib/components/commands/popup-menu-renderer/popup-menu-renderer.component.js.map +0 -1
  198. package/esm2015/lib/components/commands/popup-menu-renderer/popup-menu-renderer.component.metadata.json +0 -1
  199. package/esm2015/lib/components/commands/popup-menu-renderer/popup-menu-renderer.component.ngfactory.js.map +0 -1
  200. package/esm2015/lib/components/commands/popup-menu-renderer/popup-menu-renderer.component.scss.shim.ngstyle.js.map +0 -1
  201. package/esm2015/lib/components/forms/autocomplete-input/autocomplete-input.component.js +0 -70
  202. package/esm2015/lib/components/forms/autocomplete-input/autocomplete-input.component.js.map +0 -1
  203. package/esm2015/lib/components/forms/autocomplete-input/autocomplete-input.component.metadata.json +0 -1
  204. package/esm2015/lib/components/forms/autocomplete-input/autocomplete-input.component.ngfactory.js.map +0 -1
  205. package/esm2015/lib/components/forms/autocomplete-input/autocomplete-input.component.scss.shim.ngstyle.js.map +0 -1
  206. package/esm2015/lib/components/table/cell-portal-ref.js.map +0 -1
  207. package/esm2015/lib/components/table/mutable-cell-renderer.js +0 -1
  208. package/esm2015/lib/components/table/mutable-cell-renderer.js.map +0 -1
  209. package/esm2015/lib/components/table/mutable-cell-renderer.metadata.json +0 -1
  210. package/esm2015/lib/components/table/table-row-menu/table-row-menu.component.js +0 -82
  211. package/esm2015/lib/components/table/table-row-menu/table-row-menu.component.js.map +0 -1
  212. package/esm2015/lib/components/table/table-row-menu/table-row-menu.component.metadata.json +0 -1
  213. package/esm2015/lib/components/table/table-row-menu/table-row-menu.component.ngfactory.js.map +0 -1
  214. package/esm5/lib/components/commands/command-bar.component.js +0 -31
  215. package/esm5/lib/components/commands/command-bar.component.js.map +0 -1
  216. package/esm5/lib/components/commands/command-bar.component.ngfactory.js.map +0 -1
  217. package/esm5/lib/components/commands/command-container.js +0 -30
  218. package/esm5/lib/components/commands/command-container.js.map +0 -1
  219. package/esm5/lib/components/commands/command-face/command-face.component.js +0 -122
  220. package/esm5/lib/components/commands/command-face/command-face.component.js.map +0 -1
  221. package/esm5/lib/components/commands/command-face/command-face.component.ngfactory.js.map +0 -1
  222. package/esm5/lib/components/commands/command-face/command-face.component.scss.ngstyle.js.map +0 -1
  223. package/esm5/lib/components/commands/command-face.js +0 -103
  224. package/esm5/lib/components/commands/command-face.js.map +0 -1
  225. package/esm5/lib/components/commands/command.component.js +0 -41
  226. package/esm5/lib/components/commands/command.component.js.map +0 -1
  227. package/esm5/lib/components/commands/command.component.ngfactory.js.map +0 -1
  228. package/esm5/lib/components/commands/popup-menu/abstract-popup-menu.component.js +0 -64
  229. package/esm5/lib/components/commands/popup-menu/abstract-popup-menu.component.js.map +0 -1
  230. package/esm5/lib/components/commands/popup-menu/abstract-popup-menu.component.ngfactory.js.map +0 -1
  231. package/esm5/lib/components/commands/popup-menu/more-menu.component.js +0 -35
  232. package/esm5/lib/components/commands/popup-menu/more-menu.component.js.map +0 -1
  233. package/esm5/lib/components/commands/popup-menu/more-menu.component.ngfactory.js.map +0 -1
  234. package/esm5/lib/components/commands/popup-menu/popup-menu.component.js +0 -45
  235. package/esm5/lib/components/commands/popup-menu/popup-menu.component.js.map +0 -1
  236. package/esm5/lib/components/commands/popup-menu/popup-menu.component.ngfactory.js.map +0 -1
  237. package/esm5/lib/components/commands/popup-menu-renderer/popup-menu-renderer.component.js +0 -66
  238. package/esm5/lib/components/commands/popup-menu-renderer/popup-menu-renderer.component.js.map +0 -1
  239. package/esm5/lib/components/commands/popup-menu-renderer/popup-menu-renderer.component.ngfactory.js.map +0 -1
  240. package/esm5/lib/components/commands/popup-menu-renderer/popup-menu-renderer.component.scss.shim.ngstyle.js.map +0 -1
  241. package/esm5/lib/components/forms/autocomplete-input/autocomplete-input.component.js +0 -73
  242. package/esm5/lib/components/forms/autocomplete-input/autocomplete-input.component.js.map +0 -1
  243. package/esm5/lib/components/forms/autocomplete-input/autocomplete-input.component.ngfactory.js.map +0 -1
  244. package/esm5/lib/components/forms/autocomplete-input/autocomplete-input.component.scss.shim.ngstyle.js.map +0 -1
  245. package/esm5/lib/components/table/cell-portal-ref.js.map +0 -1
  246. package/esm5/lib/components/table/mutable-cell-renderer.js +0 -1
  247. package/esm5/lib/components/table/mutable-cell-renderer.js.map +0 -1
  248. package/esm5/lib/components/table/table-row-menu/table-row-menu.component.js +0 -66
  249. package/esm5/lib/components/table/table-row-menu/table-row-menu.component.js.map +0 -1
  250. package/esm5/lib/components/table/table-row-menu/table-row-menu.component.ngfactory.js.map +0 -1
  251. package/lib/components/commands/command-bar.component.d.ts +0 -10
  252. package/lib/components/commands/command-container.d.ts +0 -15
  253. package/lib/components/commands/command-face/command-face.component.d.ts +0 -29
  254. package/lib/components/commands/command-face.d.ts +0 -24
  255. package/lib/components/commands/command.component.d.ts +0 -15
  256. package/lib/components/commands/popup-menu/abstract-popup-menu.component.d.ts +0 -18
  257. package/lib/components/commands/popup-menu/more-menu.component.d.ts +0 -9
  258. package/lib/components/commands/popup-menu/popup-menu.component.d.ts +0 -14
  259. package/lib/components/commands/popup-menu-renderer/popup-menu-renderer.component.d.ts +0 -21
  260. package/lib/components/forms/autocomplete-input/autocomplete-input.component.d.ts +0 -25
  261. package/lib/components/table/mutable-cell-renderer.d.ts +0 -6
  262. package/lib/components/table/table-row-menu/table-row-menu.component.d.ts +0 -25
@@ -1,6 +1,6 @@
1
1
  import { __decorate, __metadata, __param, __awaiter } from 'tslib';
2
2
  import { DOCUMENT, CommonModule, Location } from '@angular/common';
3
- import { ElementRef, Inject, Input, HostListener, Directive, NgZone, ɵɵdefineInjectable, ɵɵinject, Injectable, NgModule, ContentChild, TemplateRef, Component, forwardRef, Optional, HostBinding, ViewEncapsulation, EventEmitter, Output, ViewChild, ChangeDetectorRef, Self, ContentChildren, QueryList, ViewContainerRef, InjectionToken, Injector, ComponentFactoryResolver, ViewChildren, SkipSelf } from '@angular/core';
3
+ import { ElementRef, Inject, Input, HostListener, Directive, NgZone, ɵɵdefineInjectable, ɵɵinject, Injectable, NgModule, ContentChild, TemplateRef, Component, Self, HostBinding, EventEmitter, Output, ChangeDetectorRef, ContentChildren, QueryList, ViewContainerRef, InjectionToken, Injector, ComponentFactoryResolver, ViewChild, ViewChildren, Optional, SkipSelf } from '@angular/core';
4
4
  import { FormsModule } from '@angular/forms';
5
5
  import { MatFormFieldModule } from '@angular/material/form-field';
6
6
  import { MatInputModule } from '@angular/material/input';
@@ -9,21 +9,18 @@ import { MatTabsModule, MatTabGroup, MAT_TABS_CONFIG } from '@angular/material/t
9
9
  import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
10
10
  import { ComponentPortal, TemplatePortal, PortalModule } from '@angular/cdk/portal';
11
11
  import { CdkScrollableModule } from '@angular/cdk/scrolling';
12
- import { MatAutocompleteModule } from '@angular/material/autocomplete';
13
12
  import { MatButtonModule } from '@angular/material/button';
14
13
  import { MatCheckboxModule } from '@angular/material/checkbox';
15
14
  import { MatIconModule } from '@angular/material/icon';
16
- import { MatMenu, MatMenuTrigger, _MatMenuDirectivesModule, MatMenuModule } from '@angular/material/menu';
17
15
  import { MatTableModule } from '@angular/material/table';
18
- import { MatTooltipModule } from '@angular/material/tooltip';
19
- import { FaIconLibrary, FontAwesomeModule } from '@fortawesome/angular-fontawesome';
20
- import { fas } from '@fortawesome/free-solid-svg-icons';
21
- import { GarbageCollector, DelegatingValueModel, assert, UnaryCommand, lang, Dsl, Logger, TrackExternal, Command, MutableListModel, Disposable, MutableValueModel, StoreInValueModel, ListModel, FocusManager, EventListenerList, Form, Guard, Binding, DebugContext, StoreInListModel, ValueModel, MultipleSelectionModel, DirtyTrackingForm, DelegatingCommand, Deferred, Functions } from '@coolon/pectin';
16
+ import { GarbageCollector, DelegatingValueModel, assert, UnaryCommand, lang, Dsl, Logger, TrackExternal, Command, FocusManager, Form, ListModel, StoreInListModel, ValueModel, StoreInValueModel, MutableValueModel, MultipleSelectionModel, MutableListModel, DirtyTrackingForm, DelegatingCommand, Deferred, Trace, Guard, DebugContext, Binding, Functions } from '@coolon/pectin';
17
+ import { assert as assert$1, Opts, lang as lang$1, Klass } from '@coolon/typescript-utilities';
22
18
  import { Memoize } from '@typescript-plus/fast-memoize-decorator/dist/src';
23
19
  import ___default, { isEqual, isNil } from 'lodash';
24
- import { Enum } from 'typescript-string-enums';
25
- import { assert as assert$1, Opts, lang as lang$1, Klass } from '@coolon/typescript-utilities';
26
20
  import produce from 'immer';
21
+ import { FaIconLibrary, FontAwesomeModule } from '@fortawesome/angular-fontawesome';
22
+ import { fas } from '@fortawesome/free-solid-svg-icons';
23
+ import { MatTooltipModule } from '@angular/material/tooltip';
27
24
  import { FlexModule, GridModule } from '@angular/flex-layout';
28
25
  import { MatDialogModule, MatDialog, MatDialogConfig, MAT_DIALOG_DEFAULT_OPTIONS } from '@angular/material/dialog';
29
26
  import { RouterModule, UrlSegment, Router, UrlSerializer, NavigationStart, NavigationEnd, NavigationError, NavigationCancel, RouterOutlet } from '@angular/router';
@@ -372,446 +369,11 @@ CardContainerComponent = __decorate([
372
369
  Component({
373
370
  selector: 'aup-card-container',
374
371
  template: "<div class=\"card-container\">\n <ng-content></ng-content>\n\n <div class=\"add-card-container\" *ngIf=\"addCardCommand.enabled.value\" [pectinCommand]=\"addCardCommand\">\n <aup-icon icon=\"mat:add\"></aup-icon>\n </div>\n\n <div class=\"add-card-template\" *ngIf=\"addCardTemplate\">\n <ng-container [ngTemplateOutlet]=\"addCardTemplate\"></ng-container>\n </div>\n\n</div>\n",
375
- styles: [":root{--aup-default-padding:var(--default-padding, 18px);--aup-default-background:white;--command-face-icon-gap:8px;--aup-icon-width:24px;--aup-fa-icon-width:18px}.router-outlet-container>*{position:absolute;top:0;left:0;bottom:0;right:0}[no-tab-header]>mat-tab-header{display:none}[full-height-tabs] .mat-tab-body-wrapper,mat-tab-group.full-height-tabs .mat-tab-body-wrapper{flex:1}[full-height-tabs] .mat-tab-body-wrapper .mat-tab-body-content,[full-height-tabs] .mat-tab-body-wrapper mat-tab-body,mat-tab-group.full-height-tabs .mat-tab-body-wrapper .mat-tab-body-content,mat-tab-group.full-height-tabs .mat-tab-body-wrapper mat-tab-body{display:flex;flex-direction:column;justify-content:stretch}.dialog-interaction-context{max-width:95vw!important;max-height:95vh!important}.dialog-interaction-context mat-dialog-container{max-width:95vw!important;max-height:95vh!important;padding:0}.aup-popup-interaction-panel{background:var(--aup-default-background,#fff);box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);transition:box-shadow 280ms cubic-bezier(.4,0,.2,1)}.aup-input-activity{padding:calc(var(--aup-default-padding)/2)}.aup-input-component{display:block}.aup-input-component input,.aup-input-component mat-form-field{width:100%}.aup-input-component input mat-hint.faux-error,.aup-input-component mat-form-field mat-hint.faux-error{color:#f44336}.aup-input-component.dense mat-form-field .mat-form-field-infix{border-top:none}.aup-input-component.dense mat-form-field .mat-form-field-flex{padding-top:0}.aup-input-component.dense mat-form-field .mat-form-field-wrapper{padding-bottom:0;border-bottom:0}.aup-input-component.dense mat-form-field .mat-form-field-underline{bottom:0}.aup-input-component.dense mat-form-field.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label-wrapper{display:none}.aup-input-component.dense mat-form-field.mat-form-field-appearance-standard.mat-form-field-has-label .mat-select:not(.mat-select-empty) .mat-select-arrow-wrapper{transform:translateY(0)}aup-table-cell-renderer>.aup-input-component .mat-form-field-flex{padding-top:0}aup-table-cell-renderer>.aup-input-component .mat-form-field-infix{width:0}aup-table-cell-renderer>.aup-input-component .mat-form-field-label-wrapper{display:none}aup-table{--default-column-gap:var(--column-gap, 24px);--resolved-row-hover-background-color:var(--row-hover-background-color, rgba(0, 0, 0, 0.05))}aup-table .mat-table td.mat-cell:first-of-type,aup-table .mat-table td.mat-footer-cell:first-of-type,aup-table .mat-table th.mat-header-cell:first-of-type{padding-left:0}aup-table .mat-table tr.enable-hover:hover{background-color:var(--resolved-row-hover-background-color)}aup-table .mat-table td.enable-cursor{cursor:pointer}aup-table aup-table-cell-renderer,aup-table aup-table-header-cell-renderer{display:flex;flex-direction:column;align-items:stretch;justify-content:center;height:100%;min-height:47px}aup-table aup-table-cell-renderer.first-column,aup-table aup-table-cell-renderer:not(.first-column),aup-table aup-table-header-cell-renderer.first-column,aup-table aup-table-header-cell-renderer:not(.first-column){padding-left:var(--default-column-gap)}aup-table aup-table-cell-renderer.fillCell{justify-content:stretch;padding-left:0!important}aup-table aup-table-cell-renderer.padChild>:first-child{padding-left:var(--default-column-gap);flex:1}aup-icon{--fa-icon-offset:calc((var(--aup-icon-width) - var(--aup-fa-icon-width)) / 2);position:relative}aup-icon fa-icon .svg-inline--fa{position:absolute;top:var(--fa-icon-offset);left:var(--fa-icon-offset);width:var(--aup-fa-icon-width)!important;height:var(--aup-fa-icon-width)!important}.mat-menu-panel aup-icon .svg-inline--fa{opacity:.54}:host{--resolved-card-gap:var(--card-gap, 16px);--resolved-card-width:var(--card-width, 300px);--resolved-card-height:var(--card-height, auto);--resolved-card-min-height:var(--card-min-height, auto);--resolved-card-background:var(--card-background, #fcfcfb);flex:1;display:block;background:var(--resolved-card-background)}.card-container{display:-ms-grid;display:grid;grid-template-columns:repeat(auto-fill,var(--resolved-card-width));grid-template-rows:repeat(auto-fit,minmax(0,var(--resolved-card-height)));grid-gap:var(--resolved-card-gap);box-sizing:border-box;padding:var(--resolved-card-gap);min-height:calc(var(--resolved-card-height) + 2 * var(--resolved-card-gap));min-width:calc(var(--resolved-card-width) + 2 * var(--resolved-card-gap));width:calc((var(--resolved-card-width) + var(--resolved-card-gap)) * 2 + var(--grid-gap));max-width:100%}.add-card-container{width:var(--resolved-card-width);height:var(--resolved-card-height);min-height:var(--resolved-card-min-height);display:flex;flex-direction:column;align-items:center;justify-content:center;box-sizing:border-box;border:2px dashed rgba(0,0,0,.1);border-radius:6px;font-weight:300;cursor:pointer;color:rgba(0,0,0,.54);background-color:rgba(255,255,255,.8);transition:280ms cubic-bezier(.4,0,.2,1)}.add-card-container mat-icon{font-size:200%}.add-card-container:hover{transition:280ms cubic-bezier(.4,0,.2,1);border-color:transparent;background-color:#fff;color:rgba(0,0,0,.54)}.add-card-container:hover:hover{box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.add-card-template-container{width:var(--resolved-card-width);height:var(--resolved-card-height);display:flex;flex-direction:column;align-items:stretch;justify-content:stretch}"]
372
+ styles: [":root{--aup-default-padding:var(--default-padding, 18px);--aup-default-background:white}.router-outlet-container>*{position:absolute;top:0;left:0;bottom:0;right:0}[no-tab-header]>mat-tab-header{display:none}[full-height-tabs] .mat-tab-body-wrapper,mat-tab-group.full-height-tabs .mat-tab-body-wrapper{flex:1}[full-height-tabs] .mat-tab-body-wrapper .mat-tab-body-content,[full-height-tabs] .mat-tab-body-wrapper mat-tab-body,mat-tab-group.full-height-tabs .mat-tab-body-wrapper .mat-tab-body-content,mat-tab-group.full-height-tabs .mat-tab-body-wrapper mat-tab-body{display:flex;flex-direction:column;justify-content:stretch}.dialog-interaction-context{max-width:95vw!important;max-height:95vh!important}.dialog-interaction-context mat-dialog-container{max-width:95vw!important;max-height:95vh!important;padding:0}.aup-popup-interaction-panel{background:var(--aup-default-background,#fff);box-shadow:0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12);transition:box-shadow 280ms cubic-bezier(.4,0,.2,1)}.aup-input-activity{padding:calc(var(--aup-default-padding)/2)}.aup-input-component{display:block}.aup-input-component input,.aup-input-component mat-form-field{width:100%}.aup-input-component input mat-hint.faux-error,.aup-input-component mat-form-field mat-hint.faux-error{color:#f44336}.aup-input-component.dense mat-form-field .mat-form-field-infix{border-top:none}.aup-input-component.dense mat-form-field .mat-form-field-flex{padding-top:0}.aup-input-component.dense mat-form-field .mat-form-field-wrapper{padding-bottom:0;border-bottom:0}.aup-input-component.dense mat-form-field .mat-form-field-underline{bottom:0}.aup-input-component.dense mat-form-field.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label-wrapper{display:none}aup-table-cell-renderer>.aup-input-component .mat-form-field-flex{padding-top:0}aup-table-cell-renderer>.aup-input-component .mat-form-field-infix{width:0}aup-table-cell-renderer>.aup-input-component .mat-form-field-label-wrapper{display:none}aup-table{--default-column-gap:var(--column-gap, 24px);--resolved-row-hover-background-color:var(--row-hover-background-color, rgba(0, 0, 0, 0.05))}aup-table .mat-table td.mat-cell:first-of-type,aup-table .mat-table td.mat-footer-cell:first-of-type,aup-table .mat-table th.mat-header-cell:first-of-type{padding-left:0}aup-table .mat-table tr.enable-hover:hover{background-color:var(--resolved-row-hover-background-color)}aup-table .mat-table td.enable-cursor{cursor:pointer}aup-table aup-table-cell-renderer,aup-table aup-table-header-cell-renderer{display:flex;flex-direction:column;align-items:stretch;justify-content:center;height:100%;min-height:47px}aup-table aup-table-cell-renderer.first-column,aup-table aup-table-cell-renderer:not(.first-column),aup-table aup-table-header-cell-renderer.first-column,aup-table aup-table-header-cell-renderer:not(.first-column){padding-left:var(--default-column-gap)}aup-table aup-table-cell-renderer.fillCell{justify-content:stretch;padding-left:0!important}aup-table aup-table-cell-renderer.padChild>:first-child{padding-left:var(--default-column-gap);flex:1}:host{--resolved-card-gap:var(--card-gap, 16px);--resolved-card-width:var(--card-width, 300px);--resolved-card-height:var(--card-height, auto);--resolved-card-min-height:var(--card-min-height, auto);--resolved-card-background:var(--card-background, #fcfcfb);flex:1;display:block;background:var(--resolved-card-background)}.card-container{display:-ms-grid;display:grid;grid-template-columns:repeat(auto-fill,var(--resolved-card-width));grid-template-rows:repeat(auto-fit,minmax(0,var(--resolved-card-height)));grid-gap:var(--resolved-card-gap);box-sizing:border-box;padding:var(--resolved-card-gap);min-height:calc(var(--resolved-card-height) + 2 * var(--resolved-card-gap));min-width:calc(var(--resolved-card-width) + 2 * var(--resolved-card-gap));width:calc((var(--resolved-card-width) + var(--resolved-card-gap)) * 2 + var(--grid-gap));max-width:100%}.add-card-container{width:var(--resolved-card-width);height:var(--resolved-card-height);min-height:var(--resolved-card-min-height);display:flex;flex-direction:column;align-items:center;justify-content:center;box-sizing:border-box;border:2px dashed rgba(0,0,0,.1);border-radius:6px;font-weight:300;cursor:pointer;color:rgba(0,0,0,.54);background-color:rgba(255,255,255,.8);transition:280ms cubic-bezier(.4,0,.2,1)}.add-card-container mat-icon{font-size:200%}.add-card-container:hover{transition:280ms cubic-bezier(.4,0,.2,1);border-color:transparent;background-color:#fff;color:rgba(0,0,0,.54)}.add-card-container:hover:hover{box-shadow:0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)}.add-card-template-container{width:var(--resolved-card-width);height:var(--resolved-card-height);display:flex;flex-direction:column;align-items:stretch;justify-content:stretch}"]
376
373
  }),
377
374
  __metadata("design:paramtypes", [])
378
375
  ], CardContainerComponent);
379
376
 
380
- var CommandFace;
381
- (function (CommandFace) {
382
- let Position;
383
- (function (Position) {
384
- Position["START"] = "start";
385
- Position["END"] = "end";
386
- })(Position = CommandFace.Position || (CommandFace.Position = {}));
387
- class Adapter {
388
- constructor(face) {
389
- this.face = face;
390
- }
391
- get text() {
392
- return ___default.isFunction(this.face.text) ? this.face.text() : undefined;
393
- }
394
- get icon() {
395
- return ___default.isFunction(this.face.icon) ? this.face.icon() : undefined;
396
- }
397
- get iconPosition() {
398
- return ___default.isFunction(this.face.iconPosition) ? this.face.iconPosition() : undefined;
399
- }
400
- get tooltip() {
401
- return ___default.isFunction(this.face.tooltip) ? this.face.tooltip() : undefined;
402
- }
403
- get iconPositionStart() {
404
- return this.iconPosition === CommandFace.Position.START;
405
- }
406
- get iconPositionEnd() {
407
- return this.iconPosition === CommandFace.Position.END;
408
- }
409
- get destructive() {
410
- return ___default.isFunction(this.face.destructive) ? this.face.destructive() : false;
411
- }
412
- }
413
- __decorate([
414
- Memoize(),
415
- __metadata("design:type", Object),
416
- __metadata("design:paramtypes", [])
417
- ], Adapter.prototype, "text", null);
418
- __decorate([
419
- Memoize(),
420
- __metadata("design:type", Object),
421
- __metadata("design:paramtypes", [])
422
- ], Adapter.prototype, "icon", null);
423
- __decorate([
424
- Memoize(),
425
- __metadata("design:type", Object),
426
- __metadata("design:paramtypes", [])
427
- ], Adapter.prototype, "iconPosition", null);
428
- __decorate([
429
- Memoize(),
430
- __metadata("design:type", Object),
431
- __metadata("design:paramtypes", [])
432
- ], Adapter.prototype, "tooltip", null);
433
- __decorate([
434
- Memoize(),
435
- __metadata("design:type", Boolean),
436
- __metadata("design:paramtypes", [])
437
- ], Adapter.prototype, "iconPositionStart", null);
438
- __decorate([
439
- Memoize(),
440
- __metadata("design:type", Boolean),
441
- __metadata("design:paramtypes", [])
442
- ], Adapter.prototype, "iconPositionEnd", null);
443
- __decorate([
444
- Memoize(),
445
- __metadata("design:type", Boolean),
446
- __metadata("design:paramtypes", [])
447
- ], Adapter.prototype, "destructive", null);
448
- CommandFace.Adapter = Adapter;
449
- })(CommandFace || (CommandFace = {}));
450
-
451
- class CommandContainer extends GarbageCollector {
452
- constructor() {
453
- super();
454
- this._commandRegistrations = new MutableListModel();
455
- }
456
- get commandRegistrations() {
457
- return this._commandRegistrations.readonly;
458
- }
459
- registerCommand(command, face) {
460
- const registration = { command, faceAdapter: new CommandFace.Adapter(face) };
461
- this._commandRegistrations.push(registration);
462
- return Disposable.disposableThatRuns(() => this._commandRegistrations.remove(registration));
463
- }
464
- getDefaultIconPosition() {
465
- return CommandFace.Position.START;
466
- }
467
- }
468
-
469
- var CommandBarComponent_1;
470
- /**
471
- *
472
- */
473
- let CommandBarComponent = CommandBarComponent_1 = class CommandBarComponent extends CommandContainer {
474
- constructor() {
475
- super();
476
- }
477
- ngOnInit() {
478
- }
479
- getButtonColor(registration) {
480
- return registration.faceAdapter.destructive ? 'warn' : undefined;
481
- }
482
- };
483
- CommandBarComponent = CommandBarComponent_1 = __decorate([
484
- Component({
485
- selector: 'aup-command-bar',
486
- template: `
487
- <ng-container *ngFor="let registration of commandRegistrations.value">
488
- <button *ngIf="registration.faceAdapter.icon && !registration.faceAdapter.text"
489
- mat-icon-button
490
- [color]="getButtonColor(registration)"
491
- [pectinCommand]="registration.command"
492
- [matTooltip]="registration.faceAdapter.tooltip"
493
- >
494
- <aup-command-face [face]="registration.faceAdapter.face"></aup-command-face>
495
- </button>
496
- <button *ngIf="registration.faceAdapter.text"
497
- [color]="getButtonColor(registration)"
498
- mat-button
499
- [pectinCommand]="registration.command"
500
- [matTooltip]="registration.tooltip"
501
- >
502
- <aup-command-face [face]="registration.faceAdapter.face"></aup-command-face>
503
- </button>
504
- </ng-container>
505
- `,
506
- providers: [{ provide: CommandContainer, useExisting: forwardRef(() => CommandBarComponent_1) }],
507
- styles: [`:host {
508
- display: inline-flex;
509
- flex-direction: row;
510
- align-items: center;
511
- }`]
512
- }),
513
- __metadata("design:paramtypes", [])
514
- ], CommandBarComponent);
515
-
516
- /**
517
- *
518
- */
519
- let CommandFaceComponent = class CommandFaceComponent extends DisposableComponent {
520
- constructor(commandContainer) {
521
- super();
522
- this.commandContainer = commandContainer;
523
- this.faceModel = new MutableValueModel();
524
- this.ignoreIcon = false;
525
- this.ignoreText = false;
526
- this.includeMissingIconInLayout = false;
527
- const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);
528
- // overkill /c: when all you have is a hammer...
529
- const faceAdapter = chain(this.faceModel).map(face => new CommandFace.Adapter(face));
530
- this.iconModel = faceAdapter.pluck('icon');
531
- this.textModel = faceAdapter.pluck('text');
532
- this.positionModel = faceAdapter.pluck('iconPosition');
533
- this.destructiveModel = faceAdapter.pluck('destructive');
534
- }
535
- get requiresMissingIconInLayout() {
536
- return this.includeMissingIconInLayout && !this.iconModel.value;
537
- }
538
- ngOnInit() {
539
- }
540
- get iconPosition() {
541
- var _a, _b, _c;
542
- return (_c = (_a = this.positionModel.value) !== null && _a !== void 0 ? _a : (_b = this.commandContainer) === null || _b === void 0 ? void 0 : _b.getDefaultIconPosition()) !== null && _c !== void 0 ? _c : CommandFace.Position.START;
543
- }
544
- get shouldIncludeIcon() {
545
- return (!this.ignoreIcon && this.iconModel.value) || this.includeMissingIconInLayout;
546
- }
547
- get iconStart() {
548
- return this.shouldIncludeIcon && this.iconPosition === CommandFace.Position.START;
549
- }
550
- get iconEnd() {
551
- return this.shouldIncludeIcon && this.iconPosition === CommandFace.Position.END;
552
- }
553
- get text() {
554
- return this.ignoreText ? undefined : this.textModel.value;
555
- }
556
- get destructive() {
557
- return this.destructiveModel.value;
558
- }
559
- };
560
- CommandFaceComponent.ctorParameters = () => [
561
- { type: CommandContainer, decorators: [{ type: Optional }] }
562
- ];
563
- __decorate([
564
- Input('face'), StoreInValueModel('faceModel'),
565
- __metadata("design:type", Object)
566
- ], CommandFaceComponent.prototype, "_rawFace", void 0);
567
- __decorate([
568
- Input(),
569
- __metadata("design:type", Object)
570
- ], CommandFaceComponent.prototype, "ignoreIcon", void 0);
571
- __decorate([
572
- Input(),
573
- __metadata("design:type", Object)
574
- ], CommandFaceComponent.prototype, "ignoreText", void 0);
575
- __decorate([
576
- Input(),
577
- __metadata("design:type", Object)
578
- ], CommandFaceComponent.prototype, "includeMissingIconInLayout", void 0);
579
- __decorate([
580
- HostBinding('class.hide-icon'),
581
- __metadata("design:type", Object),
582
- __metadata("design:paramtypes", [])
583
- ], CommandFaceComponent.prototype, "requiresMissingIconInLayout", null);
584
- __decorate([
585
- HostBinding('class.destructive'),
586
- __metadata("design:type", Boolean),
587
- __metadata("design:paramtypes", [])
588
- ], CommandFaceComponent.prototype, "destructive", null);
589
- CommandFaceComponent = __decorate([
590
- Component({
591
- selector: 'aup-command-face',
592
- template: "<aup-icon *ngIf=\"iconStart\" [icon]=\"iconModel.value\"></aup-icon>\n<span *ngIf=\"this.text\">{{this.text}}</span>\n<aup-icon *ngIf=\"iconEnd\" [icon]=\"iconModel.value\"></aup-icon>\n",
593
- encapsulation: ViewEncapsulation.None,
594
- styles: ["aup-command-face{--icon-gap:var(--command-face-icon-gap);display:inline-flex;flex-direction:row;align-items:center}aup-command-face *+*{margin-left:var(--icon-gap)}aup-command-face.hide-icon aup-icon{visibility:hidden}"]
595
- }),
596
- __param(0, Optional()),
597
- __metadata("design:paramtypes", [CommandContainer])
598
- ], CommandFaceComponent);
599
-
600
- /**
601
- *
602
- */
603
- let CommandComponent = class CommandComponent extends DisposableComponent {
604
- constructor(commandContainer) {
605
- super();
606
- this.commandContainer = commandContainer;
607
- }
608
- ngOnInit() {
609
- this.registerDisposable(this.commandContainer.registerCommand(this.command, this.face));
610
- }
611
- };
612
- CommandComponent.ctorParameters = () => [
613
- { type: CommandContainer }
614
- ];
615
- __decorate([
616
- Input(), TrackExternal(),
617
- __metadata("design:type", Command)
618
- ], CommandComponent.prototype, "command", void 0);
619
- __decorate([
620
- Input(),
621
- __metadata("design:type", Object)
622
- ], CommandComponent.prototype, "face", void 0);
623
- CommandComponent = __decorate([
624
- Component({
625
- selector: 'aup-command',
626
- template: ``
627
- }),
628
- __metadata("design:paramtypes", [CommandContainer])
629
- ], CommandComponent);
630
-
631
- /**
632
- *
633
- */
634
- let PopupMenuRendererComponent = class PopupMenuRendererComponent extends DisposableComponent {
635
- constructor() {
636
- super();
637
- this.xPosition = 'after';
638
- this.yPosition = 'below';
639
- this.commandExecuted = new EventEmitter();
640
- const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);
641
- const registrations = chain(this.commandRegistrations);
642
- const iconCount = registrations.select(r => !!r.faceAdapter.icon).count();
643
- this.hasMixedIcons = valueOf.all(iconCount.isGreaterThan(0), iconCount.doesNotEqual(registrations.length)).areTruthy();
644
- }
645
- ngOnInit() {
646
- }
647
- getPopupMenuCommandFor(item) {
648
- const { when } = Dsl.disposeWith(this);
649
- when(item.command.busy).becomesFalsey(() => {
650
- this.commandExecuted.emit();
651
- });
652
- return item.command;
653
- }
654
- getButtonColor(registration) {
655
- return registration.faceAdapter.destructive ? 'warn' : undefined;
656
- }
657
- };
658
- __decorate([
659
- Input(), TrackExternal(),
660
- __metadata("design:type", ListModel)
661
- ], PopupMenuRendererComponent.prototype, "commandRegistrations", void 0);
662
- __decorate([
663
- Input(),
664
- __metadata("design:type", String)
665
- ], PopupMenuRendererComponent.prototype, "xPosition", void 0);
666
- __decorate([
667
- Input(),
668
- __metadata("design:type", String)
669
- ], PopupMenuRendererComponent.prototype, "yPosition", void 0);
670
- __decorate([
671
- Output(),
672
- __metadata("design:type", Object)
673
- ], PopupMenuRendererComponent.prototype, "commandExecuted", void 0);
674
- __decorate([
675
- ViewChild(MatMenu),
676
- __metadata("design:type", MatMenu)
677
- ], PopupMenuRendererComponent.prototype, "matMenu", void 0);
678
- PopupMenuRendererComponent = __decorate([
679
- Component({
680
- selector: 'aup-popup-menu-renderer',
681
- template: "<mat-menu [xPosition]=\"xPosition\" [yPosition]=\"yPosition\" >\n <button *ngFor=\"let registration of commandRegistrations.value\"\n mat-menu-item\n [pectinCommand]=\"getPopupMenuCommandFor(registration)\"\n >\n <aup-command-face [face]=\"registration.faceAdapter.face\" [includeMissingIconInLayout]=\"hasMixedIcons.value\"></aup-command-face>\n </button>\n</mat-menu>\n",
682
- styles: [":host{display:inline-flex;flex-direction:row;align-items:center}"]
683
- }),
684
- __metadata("design:paramtypes", [])
685
- ], PopupMenuRendererComponent);
686
-
687
- /**
688
- *
689
- */
690
- let AbstractPopupMenuComponent = class AbstractPopupMenuComponent extends CommandContainer {
691
- constructor(cdr) {
692
- super();
693
- this.cdr = cdr;
694
- this.xPosition = 'after';
695
- this.yPosition = 'below';
696
- }
697
- ngAfterViewInit() {
698
- this.cdr.detectChanges();
699
- }
700
- get matMenuComponent() {
701
- var _a;
702
- return (_a = this.popupMenu) === null || _a === void 0 ? void 0 : _a.matMenu;
703
- }
704
- closeMenu() {
705
- this.menuTrigger.closeMenu();
706
- }
707
- getButtonColor(registration) {
708
- return registration.faceAdapter.destructive ? 'warn' : undefined;
709
- }
710
- };
711
- AbstractPopupMenuComponent.ctorParameters = () => [
712
- { type: ChangeDetectorRef }
713
- ];
714
- __decorate([
715
- Input(),
716
- __metadata("design:type", String)
717
- ], AbstractPopupMenuComponent.prototype, "xPosition", void 0);
718
- __decorate([
719
- Input(),
720
- __metadata("design:type", String)
721
- ], AbstractPopupMenuComponent.prototype, "yPosition", void 0);
722
- __decorate([
723
- ViewChild(PopupMenuRendererComponent),
724
- __metadata("design:type", PopupMenuRendererComponent)
725
- ], AbstractPopupMenuComponent.prototype, "popupMenu", void 0);
726
- __decorate([
727
- ViewChild(MatMenuTrigger),
728
- __metadata("design:type", MatMenuTrigger)
729
- ], AbstractPopupMenuComponent.prototype, "menuTrigger", void 0);
730
- AbstractPopupMenuComponent = __decorate([
731
- Component({
732
- selector: 'aup-abstract-popup-menu',
733
- template: ''
734
- }),
735
- __metadata("design:paramtypes", [ChangeDetectorRef])
736
- ], AbstractPopupMenuComponent);
737
-
738
- var PopupMenuComponent_1;
739
- /**
740
- *
741
- */
742
- let PopupMenuComponent = PopupMenuComponent_1 = class PopupMenuComponent extends AbstractPopupMenuComponent {
743
- constructor(cdr) {
744
- super(cdr);
745
- this.faceModel = new MutableValueModel();
746
- const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);
747
- const faceAdapterModel = chain(this.faceModel).map(face => new CommandFace.Adapter(face));
748
- this.faceTooltipModel = faceAdapterModel.pluck('tooltip');
749
- }
750
- getTooltip() {
751
- return this.faceTooltipModel.value;
752
- }
753
- ngOnInit() {
754
- }
755
- };
756
- PopupMenuComponent.ctorParameters = () => [
757
- { type: ChangeDetectorRef }
758
- ];
759
- __decorate([
760
- Input(), StoreInValueModel('faceModel'),
761
- __metadata("design:type", Object)
762
- ], PopupMenuComponent.prototype, "face", void 0);
763
- PopupMenuComponent = PopupMenuComponent_1 = __decorate([
764
- Component({
765
- selector: 'aup-popup-menu',
766
- template: `
767
- <!-- we can only render the button after th popup menu has initialised and rendered it's menu component -->
768
- <button *ngIf="matMenuComponent" mat-icon-button [matMenuTriggerFor]="matMenuComponent" [matTooltip]="getTooltip()">
769
- <aup-command-face [face]="face"></aup-command-face>
770
- </button>
771
- <aup-popup-menu-renderer [commandRegistrations]="commandRegistrations" [yPosition]="yPosition"
772
- [xPosition]="xPosition"
773
- (commandExecuted)="closeMenu()"></aup-popup-menu-renderer>
774
- `,
775
- providers: [{ provide: CommandContainer, useExisting: forwardRef(() => PopupMenuComponent_1) }]
776
- }),
777
- __metadata("design:paramtypes", [ChangeDetectorRef])
778
- ], PopupMenuComponent);
779
-
780
- var MoreMenuComponent_1;
781
- /**
782
- *
783
- */
784
- let MoreMenuComponent = MoreMenuComponent_1 = class MoreMenuComponent extends AbstractPopupMenuComponent {
785
- constructor(cdr) {
786
- super(cdr);
787
- this.xPosition = "before"; // this should be the default unless overriden by the user.
788
- }
789
- };
790
- MoreMenuComponent.ctorParameters = () => [
791
- { type: ChangeDetectorRef }
792
- ];
793
- __decorate([
794
- Input(),
795
- __metadata("design:type", String)
796
- ], MoreMenuComponent.prototype, "tooltip", void 0);
797
- MoreMenuComponent = MoreMenuComponent_1 = __decorate([
798
- Component({
799
- selector: 'aup-more-menu',
800
- template: `
801
- <!-- we can only render the button after th popup menu has initialised and rendered it's menu component -->
802
- <button *ngIf="matMenuComponent" mat-icon-button [matMenuTriggerFor]="matMenuComponent" [matTooltip]="tooltip">
803
- <mat-icon>more_vert</mat-icon>
804
- </button>
805
- <aup-popup-menu-renderer [commandRegistrations]="commandRegistrations"
806
- [xPosition]="xPosition"
807
- [yPosition]="yPosition"
808
- (commandExecuted)="closeMenu()"></aup-popup-menu-renderer>
809
- `,
810
- providers: [{ provide: CommandContainer, useExisting: forwardRef(() => MoreMenuComponent_1) }]
811
- }),
812
- __metadata("design:paramtypes", [ChangeDetectorRef])
813
- ], MoreMenuComponent);
814
-
815
377
  let FocusContainerComponent = class FocusContainerComponent extends DisposableComponent {
816
378
  constructor(focusManager) {
817
379
  super();
@@ -905,7 +467,6 @@ FocusableComponent = __decorate([
905
467
  let AbstractInputComponent = class AbstractInputComponent extends DisposableComponent {
906
468
  constructor() {
907
469
  super();
908
- this.onValueEditedListeners = new EventListenerList();
909
470
  this.dense = false;
910
471
  // TODO: fix this.
911
472
  // tslint:disable-next-line:no-output-native
@@ -954,19 +515,19 @@ let AbstractInputComponent = class AbstractInputComponent extends DisposableComp
954
515
  return this.enabled.value;
955
516
  }
956
517
  get enabled() {
957
- return this.formValueModel.enabled;
518
+ return this.inputModel.enabled;
958
519
  }
959
520
  hasErrors() {
960
521
  return !this.errorList.query().isEmpty();
961
522
  }
962
523
  get errorList() {
963
- return this.formValueModel.errorList;
524
+ return this.inputModel.errorList;
964
525
  }
965
526
  get firstError() {
966
527
  return this.hasErrors() ? this.errorList.value[0] : null;
967
528
  }
968
529
  get focusContext() {
969
- return this.formValueModel.focusContext;
530
+ return this.inputModel.focusContext;
970
531
  }
971
532
  get floatLabel() {
972
533
  return this.dense ? 'never' : this.userFloatLabel;
@@ -974,13 +535,6 @@ let AbstractInputComponent = class AbstractInputComponent extends DisposableComp
974
535
  get showHint() {
975
536
  return this.dense ? false : !!this.hint;
976
537
  }
977
- /**
978
- * Invokes the callback when this components value is changed by a user edit.
979
- * @param callback
980
- */
981
- onValueEdited(callback) {
982
- return this.onValueEditedListeners.add(callback);
983
- }
984
538
  };
985
539
  __decorate([
986
540
  Input(),
@@ -1068,7 +622,7 @@ AbstractInputComponent = __decorate([
1068
622
 
1069
623
  let AbstractListInputComponent = class AbstractListInputComponent extends AbstractInputComponent {
1070
624
  constructor() {
1071
- super();
625
+ super(...arguments);
1072
626
  /**
1073
627
  * A backing model for all our @Input() valueModel properties which should be defined as follows.
1074
628
  *
@@ -1080,56 +634,11 @@ let AbstractListInputComponent = class AbstractListInputComponent extends Abstra
1080
634
  * gets told it's an Object and can't scan for a base type annotated with @DelegateUsing(..).
1081
635
  */
1082
636
  // We have to register it as a disposable so it ditches any listeners when we're disposed.
1083
- this.formValueModel = this.registerDisposable(new Form.DelegatingListModel());
1084
- this.componentListModel = new MutableListModel();
1085
- this.setValueIsInProgress = new Guard();
1086
- this.valueChange = new EventEmitter();
1087
- const { when, valueOf, chain } = Dsl.disposeWith(this);
1088
- const binding = new Binding.Identity(this.formValueModel, this.componentListModel).writeRight();
1089
- const inExternalChange = valueOf.any(this.setValueIsInProgress, chain(binding.direction).equals(Binding.Direction.RIGHT)).areTruthy();
1090
- when(this.componentListModel).changes((is, was) => {
1091
- this.valueChange.emit(is);
1092
- this.onValueEditedListeners.fire(l => l(is, was));
1093
- }, {
1094
- initialValue: 'ignore',
1095
- // we never fire events during an external changes to the value. This allows
1096
- // the component to behave when used in the conventional angular
1097
- // fashion, i.e. [(value)]="..."
1098
- unless: inExternalChange
1099
- });
1100
- DebugContext.tag(this.formValueModel, `${this.constructor.name}.formValueModel`);
1101
- }
1102
- // We add support for simple direct display of values by allowing components to be used
1103
- // by `component.value = ...` This use of the component without a value model in tables
1104
- // and the like.
1105
- set value(value) {
1106
- this.setValueIsInProgress.whileTrue(() => {
1107
- if (!this.listHolder) {
1108
- this.listHolder = new MutableListModel(value);
1109
- this.listModel = this.listHolder;
1110
- }
1111
- else {
1112
- this.listHolder.value = value;
1113
- }
1114
- });
637
+ this.inputModel = this.registerDisposable(new Form.DelegatingListModel());
1115
638
  }
1116
639
  };
1117
- __decorate([
1118
- Input(), TrackExternal({ delegateTo: 'formValueModel' }),
1119
- __metadata("design:type", Object)
1120
- ], AbstractListInputComponent.prototype, "listModel", void 0);
1121
- __decorate([
1122
- Input(),
1123
- __metadata("design:type", Array),
1124
- __metadata("design:paramtypes", [Array])
1125
- ], AbstractListInputComponent.prototype, "value", null);
1126
- __decorate([
1127
- Output(),
1128
- __metadata("design:type", Object)
1129
- ], AbstractListInputComponent.prototype, "valueChange", void 0);
1130
640
  AbstractListInputComponent = __decorate([
1131
- Component({ template: '' }),
1132
- __metadata("design:paramtypes", [])
641
+ Component({ template: '' })
1133
642
  ], AbstractListInputComponent);
1134
643
 
1135
644
  let AbstractValueInputComponent = class AbstractValueInputComponent extends AbstractInputComponent {
@@ -1146,133 +655,27 @@ let AbstractValueInputComponent = class AbstractValueInputComponent extends Abst
1146
655
  * gets told it's an Object and can't scan for a base type annotated with @DelegateUsing(..).
1147
656
  */
1148
657
  // We have to register it as a disposable so it ditches any listeners when we're disposed.
1149
- this.formValueModel = this.registerDisposable(new Form.DelegatingValueModel());
1150
- this.setValueInProgress = new Guard();
1151
- this.componentValueModel = new MutableValueModel();
1152
- this.valueChange = new EventEmitter();
1153
- const { when, chain, valueOf } = Dsl.disposeWith(this);
1154
- const binding = new Binding.Identity(this.formValueModel, this.componentValueModel).writeRight();
1155
- const inExternalChange = valueOf.any(this.setValueInProgress, chain(binding.direction).equals(Binding.Direction.RIGHT)).areTruthy();
1156
- when(this.componentValueModel).changes((is, was) => {
1157
- this.valueChange.emit(is);
1158
- this.onValueEditedListeners.fire(l => l(is, was));
1159
- }, {
1160
- initialValue: 'ignore',
1161
- // we never fire events during an external set value operation. This allows
1162
- // the component to behave when used in the conventional angular
1163
- // fashion, i.e. [(value)]="..."
1164
- unless: inExternalChange
1165
- });
1166
- DebugContext.tag(this.formValueModel, `${this.constructor.name}.formValueModel`);
1167
- }
1168
- // We add support for simple direct display of values by allowing components to be used
1169
- // by `component.value = ...` This use of the component without a value model in tables
1170
- // and the like.
1171
- set value(value) {
1172
- this.setValueInProgress.whileTrue(() => {
1173
- if (!this.plainValueHolder) {
1174
- this.plainValueHolder = new MutableValueModel(value);
1175
- this.valueModel = this.plainValueHolder;
1176
- }
1177
- else {
1178
- this.plainValueHolder.value = value;
1179
- }
1180
- });
658
+ this.inputModel = this.registerDisposable(new Form.DelegatingValueModel());
1181
659
  }
1182
660
  };
1183
- __decorate([
1184
- Input(), TrackExternal({ delegateTo: 'formValueModel' }),
1185
- __metadata("design:type", Object)
1186
- ], AbstractValueInputComponent.prototype, "valueModel", void 0);
1187
- __decorate([
1188
- Input(),
1189
- __metadata("design:type", Object),
1190
- __metadata("design:paramtypes", [Object])
1191
- ], AbstractValueInputComponent.prototype, "value", null);
1192
- __decorate([
1193
- Output(),
1194
- __metadata("design:type", Object)
1195
- ], AbstractValueInputComponent.prototype, "valueChange", void 0);
1196
661
  AbstractValueInputComponent = __decorate([
1197
662
  Component({ template: '' }),
1198
663
  __metadata("design:paramtypes", [])
1199
664
  ], AbstractValueInputComponent);
1200
665
 
1201
- /**
1202
- * Using templates (not only supported for nil values:
1203
- * <aup-autocomplete-input [valueModel]="myModel" [options]="myOptions">
1204
- * <ng-template #nilOptionTemplate let-option>{{option.thePropertyYouWant}}</ng-template>
1205
- * </aup-autocomplete-input>
1206
- */
1207
- let AutocompleteInputComponent = class AutocompleteInputComponent extends AbstractValueInputComponent {
1208
- constructor() {
1209
- super();
1210
- this.filterValue = new MutableValueModel();
1211
- this.optionLabelFormat = (option) => (option && this.optionLabel) ? option[this.optionLabel] : option;
1212
- const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);
1213
- const lowerCaseFilterValue = chain(this.filterValue)
1214
- .map(v => ___default.isString(v) ? v.toLowerCase() : '');
1215
- this.filteredOptions = chain(this.optionsModel)
1216
- .select(option => {
1217
- return ___default.isEmpty(this.filterValue.value) || this.optionLabelFormat(option).toString().toLowerCase().includes(lowerCaseFilterValue.value);
1218
- }, { dependsOn: lowerCaseFilterValue });
1219
- }
1220
- ngOnInit() {
1221
- }
1222
- formatOption(option) {
1223
- return this.optionLabelFormat(option);
1224
- }
1225
- updateFilter($event) {
1226
- this.filterValue.value = $event;
1227
- }
1228
- onSelect($event) {
1229
- this.valueModel.value = $event.option.value;
1230
- }
1231
- };
1232
- __decorate([
1233
- Input(), TrackExternal(),
1234
- __metadata("design:type", ListModel)
1235
- ], AutocompleteInputComponent.prototype, "optionsModel", void 0);
1236
- __decorate([
1237
- Input(), StoreInListModel('optionsModel'),
1238
- __metadata("design:type", Array)
1239
- ], AutocompleteInputComponent.prototype, "options", void 0);
1240
- __decorate([
1241
- Input(),
1242
- __metadata("design:type", Object)
1243
- ], AutocompleteInputComponent.prototype, "optionLabel", void 0);
1244
- __decorate([
1245
- Input(),
1246
- __metadata("design:type", Boolean)
1247
- ], AutocompleteInputComponent.prototype, "allowNil", void 0);
1248
- __decorate([
1249
- ContentChild('nilOptionTemplate'),
1250
- __metadata("design:type", TemplateRef)
1251
- ], AutocompleteInputComponent.prototype, "nilOptionTemplateRef", void 0);
1252
- __decorate([
1253
- Input(),
1254
- __metadata("design:type", Function)
1255
- ], AutocompleteInputComponent.prototype, "optionLabelFormat", void 0);
1256
- AutocompleteInputComponent = __decorate([
1257
- Component({
1258
- selector: 'aup-autocomplete-input',
1259
- template: "<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input type=\"string\"\n matInput\n [matAutocomplete]=\"autocomplete\"\n placeholder=\"{{placeholder}}\"\n [ngModel]=\"componentValueModel.value\"\n (ngModelChange)=\"updateFilter($event)\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-autocomplete #autocomplete [displayWith]=\"optionLabelFormat\" [autoActiveFirstOption]=\"true\" (optionSelected)=\"onSelect($event)\">\n <mat-option *ngFor=\"let option of filteredOptions.value; let i = index\"\n [value]=\"option\"\n >{{formatOption(option)}}</mat-option>\n <mat-option *ngIf=\"allowNil\">{{placeholder}}</mat-option>\n </mat-autocomplete>\n\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n",
1260
- styles: [":host{display:inline-block}mat-form-field{width:100%}"]
1261
- }),
1262
- __metadata("design:paramtypes", [])
1263
- ], AutocompleteInputComponent);
1264
-
1265
666
  let CheckboxInputComponent = class CheckboxInputComponent extends AbstractValueInputComponent {
1266
667
  constructor() {
1267
668
  super();
1268
- // @Input() @TrackExternal({ delegateTo: 'inputModel' })
1269
- // valueModel: Form.ValueModelBase<boolean> | IMutableValueModel<boolean>;
1270
669
  this.color = 'accent';
1271
670
  this.labelPosition = 'after';
1272
671
  }
1273
672
  ngOnInit() {
1274
673
  }
1275
674
  };
675
+ __decorate([
676
+ Input(), TrackExternal({ delegateTo: 'inputModel' }),
677
+ __metadata("design:type", Object)
678
+ ], CheckboxInputComponent.prototype, "valueModel", void 0);
1276
679
  __decorate([
1277
680
  Input(),
1278
681
  __metadata("design:type", String)
@@ -1284,67 +687,25 @@ __decorate([
1284
687
  CheckboxInputComponent = __decorate([
1285
688
  Component({
1286
689
  selector: 'aup-checkbox-input',
1287
- template: "<!-- TODO: add focus binding -->\n<mat-checkbox\n [(ngModel)]=\"componentValueModel.value\"\n [color]=\"color\"\n [labelPosition]=\"labelPosition\"\n [disabled]=\"!isEnabled()\"\n>{{label}}</mat-checkbox>\n<mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n<mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n",
690
+ template: "<!-- TODO: add focus binding -->\n<mat-checkbox\n [(ngModel)]=\"valueModel.value\"\n [color]=\"color\"\n [labelPosition]=\"labelPosition\"\n [disabled]=\"!isEnabled()\"\n>{{label}}</mat-checkbox>\n<mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n<mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n",
1288
691
  styles: [":host{display:inline-flex;flex-direction:column;padding:24px 0 16px}:host.dense{padding:6px 0 2px}mat-error,mat-hint{margin-top:4px;margin-left:24px;font-size:12px;font-weight:400;line-height:13.5px}"]
1289
692
  }),
1290
693
  __metadata("design:paramtypes", [])
1291
694
  ], CheckboxInputComponent);
1292
695
 
1293
- /**
1294
- * Using templates:
1295
- * <aup-multiple-select-input [valueModel]="myModel" [options]="myOptions">
1296
- * <ng-template #optionTemplate let-option>{{option.thePropertyYouWant}}</ng-template>
1297
- * <ng-template #nilOptionTemplate let-option>{{option.thePropertyYouWant}}</ng-template>
1298
- * </aup-multiple-select_input>
1299
- */
1300
- let MultipleSelectInputComponent = class MultipleSelectInputComponent extends AbstractListInputComponent {
1301
- constructor() {
1302
- super();
1303
- this.optionLabelFormat = (option) => (option && this.optionLabel) ? option[this.optionLabel] : option;
1304
- }
1305
- ngOnInit() {
1306
- }
1307
- };
1308
- __decorate([
1309
- Input(), TrackExternal(),
1310
- __metadata("design:type", ListModel)
1311
- ], MultipleSelectInputComponent.prototype, "optionsModel", void 0);
1312
- __decorate([
1313
- Input(), StoreInListModel('optionsModel'),
1314
- __metadata("design:type", Array)
1315
- ], MultipleSelectInputComponent.prototype, "options", void 0);
1316
- __decorate([
1317
- Input(),
1318
- __metadata("design:type", Object)
1319
- ], MultipleSelectInputComponent.prototype, "optionLabel", void 0);
1320
- __decorate([
1321
- ContentChild('optionTemplate'),
1322
- __metadata("design:type", TemplateRef)
1323
- ], MultipleSelectInputComponent.prototype, "optionTemplateRef", void 0);
1324
- __decorate([
1325
- Input(),
1326
- __metadata("design:type", Function)
1327
- ], MultipleSelectInputComponent.prototype, "optionLabelFormat", void 0);
1328
- MultipleSelectInputComponent = __decorate([
1329
- Component({
1330
- selector: 'aup-multiple-select-input',
1331
- template: "<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-select placeholder=\"{{placeholder}}\"\n multiple\n [(ngModel)]=\"componentListModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-option *ngFor=\"let option of optionsModel.value; let i = index\" [value]=\"option\">\n <ng-container *ngIf=\"!optionTemplateRef\">{{optionLabelFormat(option)}}</ng-container>\n <ng-container *ngIf=\"optionTemplateRef\"\n [ngTemplateOutlet]=\"optionTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: option, index: i }\"\n >\n </ng-container>\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n",
1332
- styles: [":host{display:inline-block}mat-form-field{width:100%}"]
1333
- }),
1334
- __metadata("design:paramtypes", [])
1335
- ], MultipleSelectInputComponent);
1336
-
1337
696
  let NumberInputComponent = class NumberInputComponent extends AbstractValueInputComponent {
1338
697
  constructor() {
1339
698
  super();
1340
- // @Input() @TrackExternal({ delegateTo: 'inputModel' })
1341
- // valueModel: Form.ValueModelBase<number> | IMutableValueModel<number>;
1342
699
  this.min = Number.MIN_SAFE_INTEGER;
1343
700
  this.max = Number.MAX_SAFE_INTEGER;
1344
701
  }
1345
702
  ngOnInit() {
1346
703
  }
1347
704
  };
705
+ __decorate([
706
+ Input(), TrackExternal({ delegateTo: 'inputModel' }),
707
+ __metadata("design:type", Object)
708
+ ], NumberInputComponent.prototype, "valueModel", void 0);
1348
709
  __decorate([
1349
710
  Input(),
1350
711
  __metadata("design:type", Object)
@@ -1356,25 +717,27 @@ __decorate([
1356
717
  NumberInputComponent = __decorate([
1357
718
  Component({
1358
719
  selector: 'aup-number-input',
1359
- template: "<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input type=\"number\"\n matInput\n placeholder=\"{{placeholder}}\"\n [(ngModel)]=\"componentValueModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n [min]=\"min\"\n [max]=\"max\"\n >\n <mat-hint *ngIf=\"hint && !dense\" >{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n",
720
+ template: "<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input type=\"number\"\n matInput\n placeholder=\"{{placeholder}}\"\n [(ngModel)]=\"valueModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n [min]=\"min\"\n [max]=\"max\"\n >\n <mat-hint *ngIf=\"hint && !dense\" >{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n",
1360
721
  styles: [""]
1361
722
  }),
1362
723
  __metadata("design:paramtypes", [])
1363
724
  ], NumberInputComponent);
1364
725
 
1365
726
  let PasswordInputComponent = class PasswordInputComponent extends AbstractValueInputComponent {
1366
- // @Input() @TrackExternal({ delegateTo: 'inputModel' })
1367
- // valueModel: Form.ValueModelBase<string> | IMutableValueModel<string>;
1368
727
  constructor() {
1369
728
  super();
1370
729
  }
1371
730
  ngOnInit() {
1372
731
  }
1373
732
  };
733
+ __decorate([
734
+ Input(), TrackExternal({ delegateTo: 'inputModel' }),
735
+ __metadata("design:type", Object)
736
+ ], PasswordInputComponent.prototype, "valueModel", void 0);
1374
737
  PasswordInputComponent = __decorate([
1375
738
  Component({
1376
739
  selector: 'aup-password-input',
1377
- template: "<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input type=\"password\"\n matInput\n placeholder=\"{{placeholder}}\"\n [(ngModel)]=\"componentValueModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n\n",
740
+ template: "<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input type=\"password\"\n matInput\n placeholder=\"{{placeholder}}\"\n [(ngModel)]=\"valueModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n\n",
1378
741
  styles: [""]
1379
742
  }),
1380
743
  __metadata("design:paramtypes", [])
@@ -1384,7 +747,6 @@ PasswordInputComponent = __decorate([
1384
747
  * Using templates:
1385
748
  * <aup-select-input [valueModel]="myModel" [options]="myOptions">
1386
749
  * <ng-template #optionTemplate let-option>{{option.thePropertyYouWant}}</ng-template>
1387
- * <ng-template #nilOptionTemplate let-option>{{option.thePropertyYouWant}}</ng-template>
1388
750
  * </aup-select_input>
1389
751
  */
1390
752
  let SelectInputComponent = class SelectInputComponent extends AbstractValueInputComponent {
@@ -1395,6 +757,10 @@ let SelectInputComponent = class SelectInputComponent extends AbstractValueInput
1395
757
  ngOnInit() {
1396
758
  }
1397
759
  };
760
+ __decorate([
761
+ Input(), TrackExternal({ delegateTo: 'inputModel' }),
762
+ __metadata("design:type", Object)
763
+ ], SelectInputComponent.prototype, "valueModel", void 0);
1398
764
  __decorate([
1399
765
  Input(), TrackExternal(),
1400
766
  __metadata("design:type", ListModel)
@@ -1426,7 +792,7 @@ __decorate([
1426
792
  SelectInputComponent = __decorate([
1427
793
  Component({
1428
794
  selector: 'aup-select-input',
1429
- template: "<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-select placeholder=\"{{placeholder}}\"\n [(ngModel)]=\"componentValueModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-option *ngIf=\"allowNil\">\n <ng-container *ngIf=\"!nilOptionTemplateRef\">{{placeholder}}</ng-container>\n <ng-container *ngIf=\"nilOptionTemplateRef\" [ngTemplateOutlet]=\"nilOptionTemplateRef\"></ng-container>\n </mat-option>\n <mat-option *ngFor=\"let option of optionsModel.value; let i = index\" [value]=\"option\">\n <ng-container *ngIf=\"!optionTemplateRef\">{{optionLabelFormat(option)}}</ng-container>\n <ng-container *ngIf=\"optionTemplateRef\"\n [ngTemplateOutlet]=\"optionTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: option, index: i }\"\n >\n </ng-container>\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n",
795
+ template: "<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-select placeholder=\"{{placeholder}}\"\n [(ngModel)]=\"valueModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-option *ngIf=\"allowNil\">{{placeholder}}</mat-option>\n <mat-option *ngFor=\"let option of optionsModel.value; let i = index\" [value]=\"option\">\n <ng-container *ngIf=\"!optionTemplateRef\">{{optionLabelFormat(option)}}</ng-container>\n <ng-container *ngIf=\"optionTemplateRef\"\n [ngTemplateOutlet]=\"optionTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: option, index: i }\"\n >\n </ng-container>\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n",
1430
796
  styles: [":host{display:inline-block}mat-form-field{width:100%}"]
1431
797
  }),
1432
798
  __metadata("design:paramtypes", [])
@@ -1437,13 +803,17 @@ let StringInputComponent = class StringInputComponent extends AbstractValueInput
1437
803
  super();
1438
804
  const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);
1439
805
  this.clearCommand = Command.create(() => {
1440
- this.componentValueModel.value = null;
806
+ this.valueModel.value = null;
1441
807
  });
1442
- this.clearCommand.disableWhile(chain.stringValue(this.componentValueModel).isBlank());
808
+ this.clearCommand.disableWhile(chain.stringValue(this.valueModel).isBlank());
1443
809
  }
1444
810
  ngOnInit() {
1445
811
  }
1446
812
  };
813
+ __decorate([
814
+ Input(), TrackExternal({ delegateTo: 'inputModel' }),
815
+ __metadata("design:type", Object)
816
+ ], StringInputComponent.prototype, "valueModel", void 0);
1447
817
  __decorate([
1448
818
  Input(), TrackExternal({ defaultValue: false }),
1449
819
  __metadata("design:type", ValueModel)
@@ -1455,7 +825,7 @@ __decorate([
1455
825
  StringInputComponent = __decorate([
1456
826
  Component({
1457
827
  selector: 'aup-string-input',
1458
- template: "<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input matInput\n placeholder=\"{{placeholder}}\"\n [(ngModel)]=\"componentValueModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n <button mat-button mat-icon-button matSuffix *ngIf=\"enableClear\" [pectinCommand]=\"clearCommand\">\n <aup-icon icon=\"mat:close\"></aup-icon>\n </button>\n</mat-form-field>\n\n",
828
+ template: "<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input matInput\n placeholder=\"{{placeholder}}\"\n [(ngModel)]=\"valueModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n <button mat-button mat-icon-button matSuffix *ngIf=\"enableClear\" [pectinCommand]=\"clearCommand\">\n <aup-icon icon=\"mat:close\"></aup-icon>\n </button>\n</mat-form-field>\n\n",
1459
829
  styles: ["button[disabled]{visibility:hidden}"]
1460
830
  }),
1461
831
  __metadata("design:paramtypes", [])
@@ -1464,14 +834,16 @@ StringInputComponent = __decorate([
1464
834
  let TextInputComponent = class TextInputComponent extends AbstractValueInputComponent {
1465
835
  constructor() {
1466
836
  super();
1467
- // @Input() @TrackExternal({ delegateTo: 'inputModel' })
1468
- // valueModel: Form.ValueModelBase<string> | IMutableValueModel<string>;
1469
837
  this.rows = 2;
1470
838
  // const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);
1471
839
  }
1472
840
  ngOnInit() {
1473
841
  }
1474
842
  };
843
+ __decorate([
844
+ Input(), TrackExternal({ delegateTo: 'inputModel' }),
845
+ __metadata("design:type", Object)
846
+ ], TextInputComponent.prototype, "valueModel", void 0);
1475
847
  __decorate([
1476
848
  Input(),
1477
849
  __metadata("design:type", Object)
@@ -1483,59 +855,12 @@ __decorate([
1483
855
  TextInputComponent = __decorate([
1484
856
  Component({
1485
857
  selector: 'aup-text-input',
1486
- template: "<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <textarea matInput\n placeholder=\"{{placeholder}}\"\n [(ngModel)]=\"componentValueModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n [rows]=\"rows\"\n [cols]=\"cols\"\n >\n </textarea>\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n\n",
858
+ template: "<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <textarea matInput\n placeholder=\"{{placeholder}}\"\n [(ngModel)]=\"valueModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n [rows]=\"rows\"\n [cols]=\"cols\"\n >\n </textarea>\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n\n",
1487
859
  styles: ["button[disabled]{visibility:hidden}textarea{overflow:auto}"]
1488
860
  }),
1489
861
  __metadata("design:paramtypes", [])
1490
862
  ], TextInputComponent);
1491
863
 
1492
- var IconComponent_1;
1493
- let IconComponent = IconComponent_1 = class IconComponent {
1494
- constructor() {
1495
- this.allowedPrefixes = Enum.values(IconComponent_1.IconPrefix).map(p => `${p}:`);
1496
- this.iconPrefix = IconComponent_1.IconPrefix;
1497
- }
1498
- set icon(iconName) {
1499
- this._icon = iconName;
1500
- if (!iconName) {
1501
- this.errorMessage = 'icon is nil';
1502
- this.prefix = undefined;
1503
- return;
1504
- }
1505
- const colonIndex = iconName.indexOf(':');
1506
- if (colonIndex > 0) {
1507
- this.prefix = this.icon.slice(0, colonIndex);
1508
- this.suffix = this.icon.slice(colonIndex + 1);
1509
- }
1510
- if (this.prefix) {
1511
- this.errorMessage = `Unknown icon "${iconName}"`;
1512
- }
1513
- this.errorMessage = `Unknown icon prefix, expected one of [${this.allowedPrefixes.join(',')}] got "${this.prefix}:"`;
1514
- }
1515
- get icon() {
1516
- return this._icon;
1517
- }
1518
- };
1519
- __decorate([
1520
- Input(),
1521
- __metadata("design:type", String),
1522
- __metadata("design:paramtypes", [String])
1523
- ], IconComponent.prototype, "icon", null);
1524
- IconComponent = IconComponent_1 = __decorate([
1525
- Component({
1526
- selector: 'aup-icon',
1527
- template: "<ng-container [ngSwitch]=\"prefix\">\n\n <mat-icon *ngSwitchCase=\"iconPrefix.SVG\"\n [svgIcon]=\"suffix\"\n class=\"svgIcon\">\n </mat-icon>\n\n <mat-icon *ngSwitchCase=\"iconPrefix.MATERIAL\">\n {{suffix}}\n </mat-icon>\n\n <div *ngSwitchCase=\"iconPrefix.FONT_AWESOME\"\n class=\"faIconWrapper\">\n <fa-icon [icon]=\"suffix\">\n </fa-icon>\n </div>\n\n <mat-icon *ngSwitchDefault\n [matTooltip]=\"errorMessage\">\n bug_report\n </mat-icon>\n\n</ng-container>\n\n",
1528
- styles: [":host{display:inline-flex;width:24px}fa-icon{vertical-align:middle}.faIconWrapper{text-align:center;width:24px;height:24px}.svgIcon{width:24px;height:24px}:host(.mat-chip-remove) mat-icon{font-size:18px}mat-icon{width:inherit;height:inherit}"]
1529
- })
1530
- ], IconComponent);
1531
- (function (IconComponent) {
1532
- IconComponent.IconPrefix = Enum({
1533
- SVG: 'svg',
1534
- FONT_AWESOME: 'fa',
1535
- MATERIAL: 'mat'
1536
- });
1537
- })(IconComponent || (IconComponent = {}));
1538
-
1539
864
  let NoopComponent = class NoopComponent {
1540
865
  constructor() {
1541
866
  }
@@ -1720,7 +1045,6 @@ class CellHeaderPortalRef extends CellPortalRef {
1720
1045
  assert$1.isTruthy(host);
1721
1046
  host[HEADER_CELL_RENDERER_PORTAL] = new ComponentPortal(this.componentType);
1722
1047
  }
1723
- // @Trace()
1724
1048
  onPortalAttached(host, portalComponent) {
1725
1049
  this.initialiseHeader(portalComponent, host.column);
1726
1050
  }
@@ -1736,15 +1060,13 @@ class ComponentCellRendererPortalRef extends CellRendererPortalRef {
1736
1060
  initialiseHost(host, columnModel) {
1737
1061
  host[CELL_RENDERER_PORTAL] = new ComponentPortal(this.componentType);
1738
1062
  }
1739
- // @Trace()
1740
1063
  onPortalAttached(host, portalComponent) {
1741
1064
  host[PORTAL_RENDERER_COMPONENT] = portalComponent;
1742
- this.updateComponent(portalComponent, host.getRowData(), true);
1065
+ this.updateComponent(portalComponent, host.getRowData());
1743
1066
  }
1744
- // @Trace()
1745
1067
  pushState(host) {
1746
1068
  if (host[PORTAL_RENDERER_COMPONENT]) {
1747
- this.updateComponent(host[PORTAL_RENDERER_COMPONENT], host.getRowData(), false);
1069
+ this.updateComponent(host[PORTAL_RENDERER_COMPONENT], host.getRowData());
1748
1070
  }
1749
1071
  }
1750
1072
  }
@@ -1781,7 +1103,6 @@ class TemplateCellRendererPortalRef extends CellRendererPortalRef {
1781
1103
  onPortalAttached(host, portalComponent) {
1782
1104
  // don't care
1783
1105
  }
1784
- // @Trace()
1785
1106
  pushState(host) {
1786
1107
  host[CELL_RENDERER_PORTAL] = this.createPortal(host.getRowData());
1787
1108
  host.fillCell = this.fillCell;
@@ -1950,7 +1271,6 @@ SelectHeaderCellRendererComponent = __decorate([
1950
1271
  const noop = () => {
1951
1272
  };
1952
1273
  const ɵ0 = noop;
1953
- const CELL_RENDERER_COMPONENT_ROW_CACHE = Symbol("aup-cell-renderer:row-data-cache");
1954
1274
  class ColumnModel {
1955
1275
  constructor(columnId, defaults) {
1956
1276
  this.columnId = columnId;
@@ -2039,62 +1359,21 @@ __decorate([
2039
1359
  __metadata("design:returntype", Object)
2040
1360
  ], ColumnModel.prototype, "getColumnTextProperties", null);
2041
1361
  class PropertyColumnModel extends ColumnModel {
2042
- constructor(id, property, defaults) {
2043
- super(id, defaults);
1362
+ constructor(property, defaults) {
1363
+ super(property.toString(), defaults);
2044
1364
  this.property = property;
2045
1365
  this._format = (value) => value;
2046
1366
  this.cellRenderer(DefaultCellRendererComponent);
2047
1367
  }
2048
- cellRenderer(componentType, onComponentInitOrOptions) {
2049
- this.configureCellRenderer(new ComponentCellRendererPortalRef(componentType, (component, rowData, firstTime) => {
2050
- if (firstTime) {
2051
- if (___default.isFunction(onComponentInitOrOptions)) {
2052
- onComponentInitOrOptions(component);
2053
- }
2054
- else {
2055
- if (___default.isFunction(onComponentInitOrOptions === null || onComponentInitOrOptions === void 0 ? void 0 : onComponentInitOrOptions.onComponentInit)) {
2056
- onComponentInitOrOptions.onComponentInit(component);
2057
- }
2058
- }
2059
- }
1368
+ cellRenderer(componentType) {
1369
+ this.configureCellRenderer(new ComponentCellRendererPortalRef(componentType, (component, rowData) => {
2060
1370
  component.value = this._format(rowData.row[this.property]);
2061
- if (!___default.isFunction(onComponentInitOrOptions) && ___default.isFunction(onComponentInitOrOptions === null || onComponentInitOrOptions === void 0 ? void 0 : onComponentInitOrOptions.onRowUpdate)) {
2062
- onComponentInitOrOptions.onRowUpdate(component, rowData.row);
2063
- }
2064
- }));
2065
- return this;
2066
- }
2067
- mutableCellRenderer(componentType, options) {
2068
- this.configureCellRenderer(new ComponentCellRendererPortalRef(componentType, (component, rowData, firstTime) => {
2069
- // keep a local copy most recent row value so it's available to teh
2070
- // edit callback without having to add/remove subscribers all the time.
2071
- component[CELL_RENDERER_COMPONENT_ROW_CACHE] = rowData.row;
2072
- let disableEditCallback = false;
2073
- if (firstTime) {
2074
- if (___default.isFunction(options === null || options === void 0 ? void 0 : options.onComponentInit)) {
2075
- options.onComponentInit(component);
2076
- }
2077
- // install our edit callback
2078
- component.onValueEdited((is, was) => {
2079
- if (!disableEditCallback) {
2080
- options.onValueEdit(component[CELL_RENDERER_COMPONENT_ROW_CACHE], is, was);
2081
- }
2082
- });
2083
- }
2084
- // now push the value the component and disable the callback just incase the component misbehaves
2085
- // and fires a value change during the operation.
2086
- disableEditCallback = true;
2087
- component.value = rowData.row[this.property];
2088
- disableEditCallback = false;
2089
- if (!___default.isFunction(options) && ___default.isFunction(options === null || options === void 0 ? void 0 : options.onRowUpdate)) {
2090
- options.onRowUpdate(component, rowData.row);
2091
- }
2092
1371
  }));
2093
1372
  return this;
2094
1373
  }
2095
- cellEditor(editor, validatorsOrInitialiser, onComponentInit) {
1374
+ cellEditor(editor, validatorsOrInitialiser, initialiseComponent) {
2096
1375
  const validators = Array.isArray(validatorsOrInitialiser) ? validatorsOrInitialiser : undefined;
2097
- const initialiser = ___default.isFunction(validatorsOrInitialiser) ? validatorsOrInitialiser : onComponentInit;
1376
+ const initialiser = ___default.isFunction(validatorsOrInitialiser) ? validatorsOrInitialiser : initialiseComponent;
2098
1377
  this.configureCellEditor(new CellEditorPortalRef(editor, (component, editSession) => {
2099
1378
  const formValueModel = editSession.form.pluck(this.property);
2100
1379
  if (validators) {
@@ -2117,8 +1396,8 @@ class PropertyColumnModel extends ColumnModel {
2117
1396
  }
2118
1397
  }
2119
1398
  class ListPropertyColumnModel extends ColumnModel {
2120
- constructor(id, property, defaults) {
2121
- super(id, defaults);
1399
+ constructor(property, defaults) {
1400
+ super(property.toString(), defaults);
2122
1401
  this.property = property;
2123
1402
  this._format = (value) => value.map(v => v === null || v === void 0 ? void 0 : v.toString()).join(', ');
2124
1403
  this.cellRenderer(DefaultCellRendererComponent);
@@ -2158,23 +1437,10 @@ class CustomValueColumnModel extends ColumnModel {
2158
1437
  super(columnId, defaults);
2159
1438
  this.getValue = getValue;
2160
1439
  this.cellRenderer(DefaultCellRendererComponent);
2161
- }
2162
- cellRenderer(componentType, onComponentInitOrOptions) {
2163
- this.configureCellRenderer(new ComponentCellRendererPortalRef(componentType, (component, rowData, firstTime) => {
2164
- if (firstTime) {
2165
- if (___default.isFunction(onComponentInitOrOptions)) {
2166
- onComponentInitOrOptions(component);
2167
- }
2168
- else {
2169
- if (___default.isFunction(onComponentInitOrOptions === null || onComponentInitOrOptions === void 0 ? void 0 : onComponentInitOrOptions.onComponentInit)) {
2170
- onComponentInitOrOptions.onComponentInit(component);
2171
- }
2172
- }
2173
- }
1440
+ }
1441
+ cellRenderer(componentType) {
1442
+ this.configureCellRenderer(new ComponentCellRendererPortalRef(componentType, (component, rowData) => {
2174
1443
  component.value = this.getValue(rowData.row);
2175
- if (!___default.isFunction(onComponentInitOrOptions) && ___default.isFunction(onComponentInitOrOptions === null || onComponentInitOrOptions === void 0 ? void 0 : onComponentInitOrOptions.onRowUpdate)) {
2176
- onComponentInitOrOptions.onRowUpdate(component, rowData.row);
2177
- }
2178
1444
  }));
2179
1445
  return this;
2180
1446
  }
@@ -2336,9 +1602,6 @@ let TableModel = TableModel_1 = class TableModel {
2336
1602
  this._editorSessions = new MutableListModel();
2337
1603
  this.rowClassNamePredicates = [];
2338
1604
  this._createForm = (row) => new DirtyTrackingForm();
2339
- this.trackBy = (index, item) => {
2340
- return this.identityOf ? this.identityOf(item) : index;
2341
- };
2342
1605
  this.identityOf = sourceOfTruth.identityOf;
2343
1606
  const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this._garbage);
2344
1607
  this._columnsById = chain(this._columns).indexBy('columnId');
@@ -2350,7 +1613,7 @@ let TableModel = TableModel_1 = class TableModel {
2350
1613
  this.dataSource = chain(this.sourceOfTruth).replaceAll(this.rowsBeingEdited);
2351
1614
  this.firstEditableColumn = chain(this.columns).select(c => c.hasEditorPortal()).first();
2352
1615
  this.hasColumnsWithRowSelectionExplicitlyEnabled = chain(this._columns).findIndex(column => column.isRowSelectionExplicitlyEnabled()).isGreaterThanOrEqualTo(0);
2353
- this.addRowClass('enable-hover', () => this.isRowSelectionEnabled());
1616
+ this.addRowClass("enable-hover", () => this.isRowSelectionEnabled());
2354
1617
  }
2355
1618
  static fromList(sourceOfTruth, builder) {
2356
1619
  const model = new TableModel_1(sourceOfTruth);
@@ -2360,14 +1623,19 @@ let TableModel = TableModel_1 = class TableModel {
2360
1623
  get rowsBeingEdited() {
2361
1624
  return this._rowsBeingEdited.readonly;
2362
1625
  }
1626
+ getTrackByFunction() {
1627
+ return (index, item) => {
1628
+ return this.identityOf ? this.identityOf(item) : index;
1629
+ };
1630
+ }
2363
1631
  get columns() {
2364
1632
  return this._columns.readonly;
2365
1633
  }
2366
- pluck(property, options) {
2367
- return this.addColumn(new PropertyColumnModel((options === null || options === void 0 ? void 0 : options.columnId) || property.toString(), property, this));
1634
+ pluck(property) {
1635
+ return this.addColumn(new PropertyColumnModel(property, this));
2368
1636
  }
2369
- pluckList(property, options) {
2370
- return this.addColumn(new ListPropertyColumnModel((options === null || options === void 0 ? void 0 : options.columnId) || property.toString(), property, this));
1637
+ pluckList(property) {
1638
+ return this.addColumn(new ListPropertyColumnModel(property, this));
2371
1639
  }
2372
1640
  addSelectionColumn(selectionModel) {
2373
1641
  assert.isNil(this.selectionColumnModel);
@@ -2381,9 +1649,6 @@ let TableModel = TableModel_1 = class TableModel {
2381
1649
  addCustomColumn(columnId, dataAccessor) {
2382
1650
  return this.addColumn(new CustomValueColumnModel(columnId, this, dataAccessor));
2383
1651
  }
2384
- addComponentColumn(columnId, component, onComponentInitOrOptions) {
2385
- return this.addColumn(new CustomValueColumnModel(columnId, this, row => row)).cellRenderer(component, onComponentInitOrOptions);
2386
- }
2387
1652
  addTemplateColumn(columnId) {
2388
1653
  return this.addColumn(new CustomTemplateColumnModel(columnId, this));
2389
1654
  }
@@ -2531,7 +1796,7 @@ __decorate([
2531
1796
  TableComponent = __decorate([
2532
1797
  Component({
2533
1798
  selector: 'aup-table',
2534
- template: "<table mat-table [dataSource]=\"tableModel.dataSource.value\" [trackBy]=\"tableModel.trackBy\">\n\n <ng-container *ngFor=\"let column of columns.value; index as index; first as first; last as last\" matColumnDef=\"{{column.columnId}}\">\n <th mat-header-cell *matHeaderCellDef>\n <aup-table-header-cell-renderer [column]=\"column\"\n [attr.column-index]=\"index\"\n [attr.column-id]=\"column.columnId\"\n [class.first-column]=\"first\"\n [class.last-column]=\"last\"\n ></aup-table-header-cell-renderer>\n </th>\n <td mat-cell *matCellDef=\"let row\" (click)=\"onCellClicked(column, row)\" [class.enable-cursor]=\"tableModel.isRowSelectionEnabledFor(column)\">\n <aup-table-cell-renderer [column]=\"column\"\n [row]=\"row\"\n [tableModel]=\"tableModel\"\n [editSession]=\"tableModel.getEditSessionFor(row)\"\n [attr.column-index]=\"index\"\n [attr.column-id]=\"column.columnId\"\n [class.first-column]=\"first\"\n [class.last-column]=\"last\"\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]=\"tableModel.getRowClasses(row)\" [attr.trackBy]=\"tableModel.trackBy(i, row)\"\n ></tr>\n\n</table>\n",
1799
+ template: "<table mat-table [dataSource]=\"tableModel.dataSource.value\" [trackBy]=\"tableModel.getTrackByFunction()\">\n\n <ng-container *ngFor=\"let column of columns.value; index as index; first as first; last as last\" matColumnDef=\"{{column.columnId}}\">\n <th mat-header-cell *matHeaderCellDef>\n <aup-table-header-cell-renderer [column]=\"column\"\n [attr.column-index]=\"index\"\n [attr.column-id]=\"column.columnId\"\n [class.first-column]=\"first\"\n [class.last-column]=\"last\"\n ></aup-table-header-cell-renderer>\n </th>\n <td mat-cell *matCellDef=\"let row\" (click)=\"onCellClicked(column, row)\" [class.enable-cursor]=\"tableModel.isRowSelectionEnabledFor(column)\">\n <aup-table-cell-renderer [column]=\"column\"\n [row]=\"row\"\n [tableModel]=\"tableModel\"\n [editSession]=\"tableModel.getEditSessionFor(row)\"\n [attr.column-index]=\"index\"\n [attr.column-id]=\"column.columnId\"\n [class.first-column]=\"first\"\n [class.last-column]=\"last\"\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;\"\n [ngClass]=\"tableModel.getRowClasses(row)\"\n ></tr>\n\n</table>\n",
2535
1800
  styles: [":host{display:flex;flex-direction:column;align-items:stretch}:host table{flex:1}"]
2536
1801
  }),
2537
1802
  __metadata("design:paramtypes", [])
@@ -2706,81 +1971,6 @@ TableHeaderCellRendererComponent = __decorate([
2706
1971
  __metadata("design:paramtypes", [])
2707
1972
  ], TableHeaderCellRendererComponent);
2708
1973
 
2709
- class MenuItemData extends CommandFace.Adapter {
2710
- constructor(factory, face) {
2711
- super(face);
2712
- this.factory = factory;
2713
- }
2714
- }
2715
- /**
2716
- *
2717
- */
2718
- let TableRowMenuComponent = class TableRowMenuComponent extends DisposableComponent {
2719
- constructor() {
2720
- super();
2721
- this.actions = [];
2722
- this.moreActions = [];
2723
- }
2724
- registerAction(commandFactory, properties) {
2725
- this.actions.push(new MenuItemData(commandFactory, properties));
2726
- }
2727
- registerMoreAction(commandFactory, properties) {
2728
- this.moreActions.push(new MenuItemData(commandFactory, properties));
2729
- }
2730
- ngOnInit() {
2731
- }
2732
- createMoreMenuCommand(item, value) {
2733
- const { when } = Dsl.disposeWith(this);
2734
- const command = item.factory.create(value);
2735
- when(command.busy).becomesFalsey(() => {
2736
- this.closeMoreMenu();
2737
- });
2738
- return command;
2739
- }
2740
- closeMoreMenu() {
2741
- this.menu.closeMenu();
2742
- }
2743
- };
2744
- __decorate([
2745
- Input(),
2746
- __metadata("design:type", Object)
2747
- ], TableRowMenuComponent.prototype, "value", void 0);
2748
- __decorate([
2749
- ViewChild(MatMenuTrigger),
2750
- __metadata("design:type", MatMenuTrigger)
2751
- ], TableRowMenuComponent.prototype, "menu", void 0);
2752
- TableRowMenuComponent = __decorate([
2753
- Component({
2754
- selector: 'aup-table-row-menu',
2755
- template: `
2756
- <button mat-icon-button *ngFor="let action of actions" [pectinCommand]="action.factory.create(value)">
2757
- <aup-icon [icon]="action.icon"></aup-icon>
2758
- </button>
2759
- <ng-container *ngIf="moreActions.length > 0">
2760
- <button #trigger mat-icon-button [matMenuTriggerFor]="menu">
2761
- <aup-icon icon="mat:more_vert"></aup-icon>
2762
- </button>
2763
- <mat-menu #menu="matMenu" xPosition="before" matTooltip="More options...">
2764
- <button *ngFor="let action of moreActions"
2765
- mat-menu-item
2766
- [pectinCommand]="createMoreMenuCommand(action, value)"
2767
- >
2768
- <aup-icon *ngIf="action.icon && action.iconPositionStart" [icon]="action.icon"></aup-icon>
2769
- {{action.text}}
2770
- <aup-icon *ngIf="action.icon && action.iconPositionEnd" [icon]="action.icon"></aup-icon>
2771
- </button>
2772
- </mat-menu>
2773
- </ng-container>
2774
- `,
2775
- styles: [`:host {
2776
- display: inline-flex;
2777
- flex-direction: row;
2778
- align-items: center;
2779
- }`]
2780
- }),
2781
- __metadata("design:paramtypes", [])
2782
- ], TableRowMenuComponent);
2783
-
2784
1974
  let VerticalFocusContainerComponent = class VerticalFocusContainerComponent extends FocusContainerComponent {
2785
1975
  constructor(focusManager) {
2786
1976
  super(focusManager);
@@ -2863,6 +2053,90 @@ VerticalFocusContainerComponent = __decorate([
2863
2053
  __metadata("design:paramtypes", [FocusManager])
2864
2054
  ], VerticalFocusContainerComponent);
2865
2055
 
2056
+ let MultipleSelectInputComponent = class MultipleSelectInputComponent extends AbstractListInputComponent {
2057
+ constructor() {
2058
+ super();
2059
+ this.optionLabelFormat = (option) => (option && this.optionLabel) ? option[this.optionLabel] : option;
2060
+ }
2061
+ ngOnInit() {
2062
+ }
2063
+ };
2064
+ __decorate([
2065
+ Input(), TrackExternal({ delegateTo: 'inputModel' }),
2066
+ __metadata("design:type", Object)
2067
+ ], MultipleSelectInputComponent.prototype, "listModel", void 0);
2068
+ __decorate([
2069
+ Input(), TrackExternal(),
2070
+ __metadata("design:type", ListModel)
2071
+ ], MultipleSelectInputComponent.prototype, "optionsModel", void 0);
2072
+ __decorate([
2073
+ Input(), StoreInListModel('optionsModel'),
2074
+ __metadata("design:type", Array)
2075
+ ], MultipleSelectInputComponent.prototype, "options", void 0);
2076
+ __decorate([
2077
+ Input(),
2078
+ __metadata("design:type", Object)
2079
+ ], MultipleSelectInputComponent.prototype, "optionLabel", void 0);
2080
+ __decorate([
2081
+ Input(),
2082
+ __metadata("design:type", Boolean)
2083
+ ], MultipleSelectInputComponent.prototype, "allowNil", void 0);
2084
+ __decorate([
2085
+ ContentChild('optionTemplate'),
2086
+ __metadata("design:type", TemplateRef)
2087
+ ], MultipleSelectInputComponent.prototype, "optionTemplateRef", void 0);
2088
+ __decorate([
2089
+ ContentChild('nilOptionTemplate'),
2090
+ __metadata("design:type", TemplateRef)
2091
+ ], MultipleSelectInputComponent.prototype, "nilOptionTemplateRef", void 0);
2092
+ __decorate([
2093
+ Input(),
2094
+ __metadata("design:type", Function)
2095
+ ], MultipleSelectInputComponent.prototype, "optionLabelFormat", void 0);
2096
+ MultipleSelectInputComponent = __decorate([
2097
+ Component({
2098
+ selector: 'aup-multiple-select-input',
2099
+ template: "<mat-form-field appearance=\"standard\" [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-select placeholder=\"{{placeholder}}\"\n multiple\n [(ngModel)]=\"listModel.value\"\n [disabled]=\"!enabled.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-option *ngIf=\"allowNil\">{{placeholder}}</mat-option>\n <mat-option *ngFor=\"let option of optionsModel.value; let i = index\" [value]=\"option\">\n <ng-container *ngIf=\"!optionTemplateRef\">{{optionLabelFormat(option)}}</ng-container>\n <ng-container *ngIf=\"optionTemplateRef\"\n [ngTemplateOutlet]=\"optionTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: option, index: i }\"\n >\n </ng-container>\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n",
2100
+ styles: [":host{display:inline-block}mat-form-field{width:100%}"]
2101
+ }),
2102
+ __metadata("design:paramtypes", [])
2103
+ ], MultipleSelectInputComponent);
2104
+
2105
+ let IconComponent = class IconComponent {
2106
+ set icon(iconName) {
2107
+ this._icon = iconName;
2108
+ if (!iconName) {
2109
+ this.errorMessage = 'icon is nil';
2110
+ this.prefix = undefined;
2111
+ return;
2112
+ }
2113
+ const colonIndex = iconName.indexOf(':');
2114
+ if (colonIndex > 0) {
2115
+ this.prefix = this.icon.slice(0, colonIndex);
2116
+ this.suffix = this.icon.slice(colonIndex + 1);
2117
+ }
2118
+ if (this.prefix) {
2119
+ this.errorMessage = `Unknown icon "${iconName}"`;
2120
+ }
2121
+ this.errorMessage = `Unknown icon prefix "${this.prefix}"`;
2122
+ }
2123
+ get icon() {
2124
+ return this._icon;
2125
+ }
2126
+ };
2127
+ __decorate([
2128
+ Input(),
2129
+ __metadata("design:type", String),
2130
+ __metadata("design:paramtypes", [String])
2131
+ ], IconComponent.prototype, "icon", null);
2132
+ IconComponent = __decorate([
2133
+ Component({
2134
+ selector: 'aup-icon',
2135
+ template: "<ng-container [ngSwitch]=\"prefix\">\n\n <mat-icon *ngSwitchCase=\"'svg'\"\n [svgIcon]=\"suffix\"\n class=\"svgIcon\">\n </mat-icon>\n\n <mat-icon *ngSwitchCase=\"'mat'\">\n {{suffix}}\n </mat-icon>\n\n <div *ngSwitchCase=\"'fab'\"\n class=\"faIconWrapper\">\n <fa-icon [icon]=\"suffix\">\n </fa-icon>\n </div>\n\n <mat-icon *ngSwitchDefault\n [matTooltip]=\"errorMessage\">\n bug_report\n </mat-icon>\n\n</ng-container>\n\n",
2136
+ styles: [":host{display:inline-flex;width:24px}fa-icon{vertical-align:middle}.faIconWrapper{text-align:center;width:24px;height:24px}.svgIcon{width:24px;height:24px}:host(.mat-chip-remove) mat-icon{font-size:18px}mat-icon{width:inherit;height:inherit}"]
2137
+ })
2138
+ ], IconComponent);
2139
+
2866
2140
  let ComponentsModule = class ComponentsModule {
2867
2141
  constructor(faIconLibrary) {
2868
2142
  faIconLibrary.addIconPacks(fas);
@@ -2882,8 +2156,6 @@ ComponentsModule = __decorate([
2882
2156
  TextInputComponent,
2883
2157
  PasswordInputComponent,
2884
2158
  SelectInputComponent,
2885
- MultipleSelectInputComponent,
2886
- AutocompleteInputComponent,
2887
2159
  CheckboxInputComponent,
2888
2160
  ScrollContainerComponent,
2889
2161
  NoopComponent,
@@ -2903,16 +2175,9 @@ ComponentsModule = __decorate([
2903
2175
  SelectHeaderCellRendererComponent,
2904
2176
  DefaultHeaderCellRendererComponent,
2905
2177
  TableHeaderCellRendererComponent,
2178
+ MultipleSelectInputComponent,
2906
2179
  IconComponent,
2907
- SectionHeaderComponent,
2908
- TableRowMenuComponent,
2909
- CommandBarComponent,
2910
- CommandComponent,
2911
- PopupMenuComponent,
2912
- CommandFaceComponent,
2913
- AbstractPopupMenuComponent,
2914
- PopupMenuRendererComponent,
2915
- MoreMenuComponent
2180
+ SectionHeaderComponent
2916
2181
  ],
2917
2182
  imports: [
2918
2183
  CommonModule,
@@ -2930,10 +2195,7 @@ ComponentsModule = __decorate([
2930
2195
  PortalModule,
2931
2196
  CdkScrollableModule,
2932
2197
  FontAwesomeModule,
2933
- MatTooltipModule,
2934
- MatAutocompleteModule,
2935
- _MatMenuDirectivesModule,
2936
- MatMenuModule
2198
+ MatTooltipModule
2937
2199
  ],
2938
2200
  exports: [
2939
2201
  NumberInputComponent,
@@ -2942,8 +2204,6 @@ ComponentsModule = __decorate([
2942
2204
  PasswordInputComponent,
2943
2205
  CheckboxInputComponent,
2944
2206
  SelectInputComponent,
2945
- MultipleSelectInputComponent,
2946
- AutocompleteInputComponent,
2947
2207
  ScrollContainerComponent,
2948
2208
  NoopComponent,
2949
2209
  SwitchCaseComponent,
@@ -2956,31 +2216,12 @@ ComponentsModule = __decorate([
2956
2216
  TableComponent,
2957
2217
  EditRowControls,
2958
2218
  ColumnTemplateDirective,
2219
+ MultipleSelectInputComponent,
2959
2220
  IconComponent,
2960
- SectionHeaderComponent,
2961
- TableRowMenuComponent,
2962
- CommandBarComponent,
2963
- CommandComponent,
2964
- AbstractPopupMenuComponent,
2965
- PopupMenuComponent,
2966
- CommandFaceComponent,
2967
- PopupMenuRendererComponent,
2968
- MoreMenuComponent
2221
+ SectionHeaderComponent
2969
2222
  ],
2970
2223
  providers: [
2971
- FocusBindingFactory
2972
- // {
2973
- // provide: CELL_EDITOR_REGISTRATION, useValue: {
2974
- // type: 'string',
2975
- // editorClass: StringInputComponent
2976
- // }, multi: true
2977
- // },
2978
- // {
2979
- // provide: CELL_EDITOR_REGISTRATION, useValue: {
2980
- // type: 'number',
2981
- // editorClass: NumberInputComponent
2982
- // }, multi: true
2983
- // }
2224
+ FocusBindingFactory,
2984
2225
  ]
2985
2226
  }),
2986
2227
  __metadata("design:paramtypes", [FaIconLibrary])
@@ -3353,7 +2594,6 @@ let ActivityContainerComponent = class ActivityContainerComponent extends Abstra
3353
2594
  registerDisposable(disposable) {
3354
2595
  return this.garbage.registerDisposable(disposable);
3355
2596
  }
3356
- // @Trace()
3357
2597
  dispose() {
3358
2598
  // TODO: think about auto cancelling any outstanding activity on dispose.
3359
2599
  // See NavigationState.Navigating for a use-case.
@@ -3493,6 +2733,12 @@ __decorate([
3493
2733
  ViewChildren(ActivityOutletComponent),
3494
2734
  __metadata("design:type", QueryList)
3495
2735
  ], ActivityContainerComponent.prototype, "activityOutlets", void 0);
2736
+ __decorate([
2737
+ Trace(),
2738
+ __metadata("design:type", Function),
2739
+ __metadata("design:paramtypes", []),
2740
+ __metadata("design:returntype", void 0)
2741
+ ], ActivityContainerComponent.prototype, "dispose", null);
3496
2742
  ActivityContainerComponent = __decorate([
3497
2743
  Component({
3498
2744
  selector: 'aup-activity-container',
@@ -4479,7 +3725,7 @@ let PlaceComponent = PlaceComponent_1 = class PlaceComponent extends DisposableC
4479
3725
  assert.isNil(this.visitModel.value);
4480
3726
  const { when } = Dsl.disposeWith(this);
4481
3727
  this.visitModel.value = visit;
4482
- DebugContext.getOrCreate(this.visitModel).tag(`${this.placeDefinition.component.name}.visitModel`);
3728
+ DebugContext.get(this.visitModel).tag(`${this.placeDefinition.component.name}.visitModel`);
4483
3729
  this.placeDefinition.getVisitParameterDefs().forEach(parameterDef => this.installBinding(parameterDef));
4484
3730
  when.valueOf(this.visitModel).changes((current, previous) => {
4485
3731
  notifyVisitChanged(current, previous);
@@ -5519,6 +4765,70 @@ UrlService = __decorate([
5519
4765
  __metadata("design:paramtypes", [Router, Location, UrlSerializer])
5520
4766
  ], UrlService);
5521
4767
 
4768
+ class Visit {
4769
+ constructor(placeDefinition, visitParameters = {}) {
4770
+ this.placeDefinition = placeDefinition;
4771
+ this.visitParameters = visitParameters;
4772
+ }
4773
+ // @Trace()
4774
+ getRouteId() {
4775
+ return this.placeDefinition.getRouteIdFrom(this);
4776
+ }
4777
+ // @Trace()
4778
+ hasRouteId() {
4779
+ return !isNil(this.getRouteId());
4780
+ }
4781
+ /**
4782
+ * Returns the value of the place parameter with the specified name. The parameter
4783
+ * name is taken from the `as` option, e.g. {as: 'aCustomName'} otherwise it is the
4784
+ * same as the the ValueModel property name.
4785
+ * @param parameterName the field name of the property model or the `as` option if specified.
4786
+ */
4787
+ getParameter(parameterName) {
4788
+ return this.visitParameters[parameterName];
4789
+ }
4790
+ // @Trace()
4791
+ hasParameter(parameterName) {
4792
+ return Object.keys(this.visitParameters).includes(parameterName);
4793
+ }
4794
+ replace(parameter, value) {
4795
+ return new Visit(this.placeDefinition, Object.assign(Object.assign({}, this.visitParameters), { [parameter.name]: value }));
4796
+ }
4797
+ mergeRouteParameters(routeParams) {
4798
+ // todo: whitelist parameters.
4799
+ const routeParameterKeys = Object.keys(routeParams);
4800
+ const params = {};
4801
+ this.placeDefinition.getVisitParameterDefs().forEach(def => {
4802
+ if (def.isRouteId || def.isRouteParameter) {
4803
+ if (routeParameterKeys.includes(def.name)) {
4804
+ params[def.name] = routeParams[def.name];
4805
+ }
4806
+ }
4807
+ else {
4808
+ // copy non route params as is, but only if they already exist otherwise we'll inject nil values and break the
4809
+ // defaults and remember sanitisation process.
4810
+ const value = this.getParameter(def.name);
4811
+ if (this.hasParameter(def.name)) {
4812
+ params[def.name] = value;
4813
+ }
4814
+ }
4815
+ });
4816
+ return new Visit(this.placeDefinition, params);
4817
+ }
4818
+ hasRoutingChangedFrom(other) {
4819
+ const samePlace = other.placeDefinition === this.placeDefinition;
4820
+ const sameRouteParameters = isEqual(this.placeDefinition.getFormattedRouteParameters(this, true), this.placeDefinition.getFormattedRouteParameters(other, true));
4821
+ return !samePlace || !sameRouteParameters;
4822
+ }
4823
+ hasChangedFrom(other) {
4824
+ const sameNonRouteParameters = isEqual(this.placeDefinition.getNonRouteParameters(this), this.placeDefinition.getNonRouteParameters(other));
4825
+ return !sameNonRouteParameters || this.hasRoutingChangedFrom(other);
4826
+ }
4827
+ toDebugString() {
4828
+ return Object.keys(this.visitParameters).map(k => `${k}=${this.visitParameters[k]}`).join(",");
4829
+ }
4830
+ }
4831
+
5522
4832
  let PlaceRouter = class PlaceRouter extends GarbageCollector {
5523
4833
  constructor(angularRouter, angularLocation, interactionService, urlService, placeHistory) {
5524
4834
  super();
@@ -5680,7 +4990,6 @@ let PlaceRouter = class PlaceRouter extends GarbageCollector {
5680
4990
  get activeVisits() {
5681
4991
  return this._activeVisits.readonly;
5682
4992
  }
5683
- // @Trace()
5684
4993
  pushVisitChangesToRoute(previous, next) {
5685
4994
  return __awaiter(this, void 0, void 0, function* () {
5686
4995
  this.placeHistory.updateVisit(next);
@@ -5777,6 +5086,12 @@ PlaceRouter.ctorParameters = () => [
5777
5086
  { type: PlaceHistory }
5778
5087
  ];
5779
5088
  PlaceRouter.ɵprov = ɵɵdefineInjectable({ factory: function PlaceRouter_Factory() { return new PlaceRouter(ɵɵinject(Router), ɵɵinject(Location), ɵɵinject(InteractionService), ɵɵinject(UrlService), ɵɵinject(PlaceHistory)); }, token: PlaceRouter, providedIn: "root" });
5089
+ __decorate([
5090
+ Trace(),
5091
+ __metadata("design:type", Function),
5092
+ __metadata("design:paramtypes", [Visit, Visit]),
5093
+ __metadata("design:returntype", Promise)
5094
+ ], PlaceRouter.prototype, "pushVisitChangesToRoute", null);
5780
5095
  PlaceRouter = __decorate([
5781
5096
  Injectable({
5782
5097
  providedIn: 'root'
@@ -5788,70 +5103,6 @@ PlaceRouter = __decorate([
5788
5103
  PlaceHistory])
5789
5104
  ], PlaceRouter);
5790
5105
 
5791
- class Visit {
5792
- constructor(placeDefinition, visitParameters = {}) {
5793
- this.placeDefinition = placeDefinition;
5794
- this.visitParameters = visitParameters;
5795
- }
5796
- // @Trace()
5797
- getRouteId() {
5798
- return this.placeDefinition.getRouteIdFrom(this);
5799
- }
5800
- // @Trace()
5801
- hasRouteId() {
5802
- return !isNil(this.getRouteId());
5803
- }
5804
- /**
5805
- * Returns the value of the place parameter with the specified name. The parameter
5806
- * name is taken from the `as` option, e.g. {as: 'aCustomName'} otherwise it is the
5807
- * same as the the ValueModel property name.
5808
- * @param parameterName the field name of the property model or the `as` option if specified.
5809
- */
5810
- getParameter(parameterName) {
5811
- return this.visitParameters[parameterName];
5812
- }
5813
- // @Trace()
5814
- hasParameter(parameterName) {
5815
- return Object.keys(this.visitParameters).includes(parameterName);
5816
- }
5817
- replace(parameter, value) {
5818
- return new Visit(this.placeDefinition, Object.assign(Object.assign({}, this.visitParameters), { [parameter.name]: value }));
5819
- }
5820
- mergeRouteParameters(routeParams) {
5821
- // todo: whitelist parameters.
5822
- const routeParameterKeys = Object.keys(routeParams);
5823
- const params = {};
5824
- this.placeDefinition.getVisitParameterDefs().forEach(def => {
5825
- if (def.isRouteId || def.isRouteParameter) {
5826
- if (routeParameterKeys.includes(def.name)) {
5827
- params[def.name] = routeParams[def.name];
5828
- }
5829
- }
5830
- else {
5831
- // copy non route params as is, but only if they already exist otherwise we'll inject nil values and break the
5832
- // defaults and remember sanitisation process.
5833
- const value = this.getParameter(def.name);
5834
- if (this.hasParameter(def.name)) {
5835
- params[def.name] = value;
5836
- }
5837
- }
5838
- });
5839
- return new Visit(this.placeDefinition, params);
5840
- }
5841
- hasRoutingChangedFrom(other) {
5842
- const samePlace = other.placeDefinition === this.placeDefinition;
5843
- const sameRouteParameters = isEqual(this.placeDefinition.getFormattedRouteParameters(this, true), this.placeDefinition.getFormattedRouteParameters(other, true));
5844
- return !samePlace || !sameRouteParameters;
5845
- }
5846
- hasChangedFrom(other) {
5847
- const sameNonRouteParameters = isEqual(this.placeDefinition.getNonRouteParameters(this), this.placeDefinition.getNonRouteParameters(other));
5848
- return !sameNonRouteParameters || this.hasRoutingChangedFrom(other);
5849
- }
5850
- toDebugString() {
5851
- return Object.keys(this.visitParameters).map(k => `${k}=${this.visitParameters[k]}`).join(",");
5852
- }
5853
- }
5854
-
5855
5106
  const AUP_PLACE_CONFIG = new InjectionToken('AUP_PLACE_CONFIG');
5856
5107
 
5857
5108
  // Freezes the state of the components at the start of the animation.
@@ -6737,7 +5988,8 @@ function installMechanics(prototype, propertyKey, backingModel, tagPrefix, isEmp
6737
5988
  binding: null
6738
5989
  };
6739
5990
  const tag = `${tagPrefix}(${prototype.constructor.name}.${propertyKey.toString()})`;
6740
- DebugContext.getOrCreate(mechanics.backingModel).tag(tag);
5991
+ DebugContext.get(mechanics.backingModel).tag(tag);
5992
+ Logger.get(mechanics.backingModel).tag(tag);
6741
5993
  Object.defineProperty(prototype, propertyKey, {
6742
5994
  get: function () {
6743
5995
  return mechanics.backingModel;
@@ -6799,5 +6051,5 @@ function VisitParameterList(options) {
6799
6051
  * Generated bundle index. Do not edit.
6800
6052
  */
6801
6053
 
6802
- export { ACTIVITY_DATA, AUP_PLACE_CONFIG, AbstractInputActivity, AbstractInputComponent, AbstractInteractionContext, AbstractListInputComponent, AbstractPlaceNavigationComponent, AbstractPopStateNavigation, AbstractPopupMenuComponent, AbstractValueInputComponent, Activity, ActivityActionsComponent, ActivityContainerComponent, ActivityOutletComponent, ActivityRef, AddItemInteractionContextComponent, AlertDialogComponent, AngularUiPowerupsModule, AutocompleteInputComponent, Bounds, BusyOverlayComponent, CELL_EDITOR_PORTAL, CELL_RENDERER_PORTAL, CardContainerComponent, CellEditorPortalRef, CellHeaderPortalRef, CellPortalRef, CellRendererPortalRef, CheckboxInputComponent, ColumnModel, ColumnTemplateDirective, CommandBarComponent, CommandComponent, CommandContainer, CommandDirective, CommandFace, CommandFaceComponent, ComponentCellRendererPortalRef, ComponentsModule, ConfirmThenDialogComponent, ConfirmationDialogComponent, ConsolidatedParameterMap, CustomTemplateColumnModel, CustomValueColumnModel, DEFINITION_META_DATA_KEY, DIALOG_INTERACTION_SERVICE_DEFAULTS, DefaultCellRendererComponent, DefaultHeaderCellRendererComponent, DialogInteractionContext, DialogInteractionContextFactory, Dimension, DirectivesModule, DisposableComponent, EditRowControls, EditSession, EditorControlColumnModel, EmptyStateComponent, EventCleanUpSession, FocusBinding, FocusBindingDirective, FocusBindingFactory, FocusContainerComponent, FocusableComponent, Formatter, HEADER_CELL_RENDERER_PORTAL, IconComponent, InPlaceInteractionContextComponent, InteractionContextTriggerFor, InteractionModule, InteractionService, InteractionServiceRoutingAdapter, LEFT_RIGHT_PLACE_ANIMATION, ListPlaceNavComponent, ListPropertyColumnModel, ModalInteractionContextFactory, MoreMenuComponent, MultipleSelectInputComponent, Navigating, NavigatingDuringInteraction, NavigationContext, NavigationSession, NoopAuthGuard, NoopComponent, NumberInputComponent, PORTAL_EDITOR_COMPONENT, PORTAL_RENDERER_COMPONENT, ParameterDefinition, PasswordInputComponent, Place, PlaceComponent, PlaceComponentDeactivationHandler, PlaceDefinition, PlaceGuard, PlaceHistory, PlaceModule, PlaceOutletComponent, PlaceRouter, Point, PopStateDuringInteractionNavigation, PopStateNavigation, PopupInteractionContextComponent, PopupMenuComponent, PopupMenuRendererComponent, PropertyColumnModel, ROUTE_PARAMETER_LIST_KEY, RemoveLastInteractionFromUrlNavigationSession, ResizeAwareComponent, RouteId, ScrollContainerComponent, SectionHeaderComponent, SelectCellRendererComponent, SelectHeaderCellRendererComponent, SelectInputActivity, SelectInputComponent, SelectionColumnModel, SidePlaceNavigationComponent, StringInputActivity, StringInputComponent, SwitchCaseComponent, SwitchCaseDefaultDirective, SwitchCaseOption, SwitchCaseWhenDirective, SynchroniseInteractionContextIdsWithRoute, TabbedPlaceNavigationComponent, TableCellRendererComponent, TableComponent, TableHeaderCellRendererComponent, TableModel, TableRowMenuComponent, TemplateCellRendererPortalRef, TextInputComponent, UrlService, UrlSnapshot, VerticalFocusContainerComponent, Visit, VisitParameter, VisitParameterList, VisitSanitiser, WaitUntilLeavingInteractionTransitionCancelled, WaitUntilLinkTriggeredNavigationInteractionCancellationEventsFinish, WaitUntilPopStateDuringCanDeactivateInteractionFinishes, leftRightPlaceAnimation, slideDownOnEnterAnimation, slideRightOnEnterAnimation, ɵ0, DirectivesModule as ɵa, CommandDirective as ɵb, CardContainerComponent as ɵba, TableComponent as ɵbb, EditRowControls as ɵbc, ColumnTemplateDirective as ɵbd, DefaultCellRendererComponent as ɵbe, TableCellRendererComponent as ɵbf, SelectCellRendererComponent as ɵbg, SelectHeaderCellRendererComponent as ɵbh, DefaultHeaderCellRendererComponent as ɵbi, TableHeaderCellRendererComponent as ɵbj, IconComponent as ɵbk, SectionHeaderComponent as ɵbl, TableRowMenuComponent as ɵbm, CommandBarComponent as ɵbn, CommandContainer as ɵbo, CommandComponent as ɵbp, PopupMenuComponent as ɵbq, AbstractPopupMenuComponent as ɵbr, PopupMenuRendererComponent as ɵbs, CommandFaceComponent as ɵbt, MoreMenuComponent as ɵbu, PlaceModule as ɵbv, ComponentsModule as ɵbw, EmptyStateComponent as ɵbx, BusyOverlayComponent as ɵby, PlaceOutletComponent as ɵbz, FocusBindingDirective as ɵc, leftRightPlaceAnimation as ɵca, LEFT_RIGHT_PLACE_ANIMATION as ɵcb, AUP_PLACE_CONFIG as ɵcc, PlaceRouter as ɵce, InteractionService as ɵcf, ModalInteractionContextFactory as ɵcg, UrlService as ɵch, PlaceHistory as ɵci, TabbedPlaceNavigationComponent as ɵcj, AbstractPlaceNavigationComponent as ɵck, ListPlaceNavComponent as ɵcl, SidePlaceNavigationComponent as ɵcm, InteractionModule as ɵcn, ActivityContainerComponent as ɵco, AbstractInteractionContext as ɵcp, ActivityOutletComponent as ɵcq, ConfirmationDialogComponent as ɵcr, ACTIVITY_DATA as ɵcs, Activity as ɵct, ConfirmThenDialogComponent as ɵcv, AlertDialogComponent as ɵcw, InPlaceInteractionContextComponent as ɵcy, AddItemInteractionContextComponent as ɵcz, DisposableComponent as ɵd, ActivityActionsComponent as ɵda, PopupInteractionContextComponent as ɵdb, StringInputActivity as ɵdc, AbstractInputActivity as ɵdd, SelectInputActivity as ɵde, InteractionContextTriggerFor as ɵdf, FocusBindingFactory as ɵe, ComponentsModule as ɵf, AbstractInputComponent as ɵg, AbstractValueInputComponent as ɵh, AbstractListInputComponent as ɵi, NumberInputComponent as ɵj, StringInputComponent as ɵk, TextInputComponent as ɵl, PasswordInputComponent as ɵm, SelectInputComponent as ɵn, MultipleSelectInputComponent as ɵo, AutocompleteInputComponent as ɵp, CheckboxInputComponent as ɵq, ScrollContainerComponent as ɵr, NoopComponent as ɵs, SwitchCaseOption as ɵt, SwitchCaseWhenDirective as ɵu, SwitchCaseDefaultDirective as ɵv, SwitchCaseComponent as ɵw, FocusContainerComponent as ɵx, VerticalFocusContainerComponent as ɵy, FocusableComponent as ɵz };
6054
+ export { ACTIVITY_DATA, AUP_PLACE_CONFIG, AbstractInputActivity, AbstractInputComponent, AbstractInteractionContext, AbstractListInputComponent, AbstractPlaceNavigationComponent, AbstractPopStateNavigation, AbstractValueInputComponent, Activity, ActivityActionsComponent, ActivityContainerComponent, ActivityOutletComponent, ActivityRef, AddItemInteractionContextComponent, AlertDialogComponent, AngularUiPowerupsModule, Bounds, BusyOverlayComponent, CELL_EDITOR_PORTAL, CELL_RENDERER_PORTAL, CardContainerComponent, CellEditorPortalRef, CellHeaderPortalRef, CellPortalRef, CellRendererPortalRef, CheckboxInputComponent, ColumnModel, ColumnTemplateDirective, CommandDirective, ComponentCellRendererPortalRef, ComponentsModule, ConfirmThenDialogComponent, ConfirmationDialogComponent, ConsolidatedParameterMap, CustomTemplateColumnModel, CustomValueColumnModel, DEFINITION_META_DATA_KEY, DIALOG_INTERACTION_SERVICE_DEFAULTS, DefaultCellRendererComponent, DefaultHeaderCellRendererComponent, DialogInteractionContext, DialogInteractionContextFactory, Dimension, DirectivesModule, DisposableComponent, EditRowControls, EditSession, EditorControlColumnModel, EmptyStateComponent, EventCleanUpSession, FocusBinding, FocusBindingDirective, FocusBindingFactory, FocusContainerComponent, FocusableComponent, Formatter, HEADER_CELL_RENDERER_PORTAL, IconComponent, InPlaceInteractionContextComponent, InteractionContextTriggerFor, InteractionModule, InteractionService, InteractionServiceRoutingAdapter, LEFT_RIGHT_PLACE_ANIMATION, ListPlaceNavComponent, ListPropertyColumnModel, ModalInteractionContextFactory, MultipleSelectInputComponent, Navigating, NavigatingDuringInteraction, NavigationContext, NavigationSession, NoopAuthGuard, NoopComponent, NumberInputComponent, PORTAL_EDITOR_COMPONENT, PORTAL_RENDERER_COMPONENT, ParameterDefinition, PasswordInputComponent, Place, PlaceComponent, PlaceComponentDeactivationHandler, PlaceDefinition, PlaceGuard, PlaceHistory, PlaceModule, PlaceOutletComponent, PlaceRouter, Point, PopStateDuringInteractionNavigation, PopStateNavigation, PopupInteractionContextComponent, PropertyColumnModel, ROUTE_PARAMETER_LIST_KEY, RemoveLastInteractionFromUrlNavigationSession, ResizeAwareComponent, RouteId, ScrollContainerComponent, SectionHeaderComponent, SelectCellRendererComponent, SelectHeaderCellRendererComponent, SelectInputActivity, SelectInputComponent, SelectionColumnModel, SidePlaceNavigationComponent, StringInputActivity, StringInputComponent, SwitchCaseComponent, SwitchCaseDefaultDirective, SwitchCaseOption, SwitchCaseWhenDirective, SynchroniseInteractionContextIdsWithRoute, TabbedPlaceNavigationComponent, TableCellRendererComponent, TableComponent, TableHeaderCellRendererComponent, TableModel, TemplateCellRendererPortalRef, TextInputComponent, UrlService, UrlSnapshot, VerticalFocusContainerComponent, Visit, VisitParameter, VisitParameterList, VisitSanitiser, WaitUntilLeavingInteractionTransitionCancelled, WaitUntilLinkTriggeredNavigationInteractionCancellationEventsFinish, WaitUntilPopStateDuringCanDeactivateInteractionFinishes, leftRightPlaceAnimation, slideDownOnEnterAnimation, slideRightOnEnterAnimation, ɵ0, DirectivesModule as ɵa, CommandDirective as ɵb, EditRowControls as ɵba, ColumnTemplateDirective as ɵbb, DefaultCellRendererComponent as ɵbc, TableCellRendererComponent as ɵbd, SelectCellRendererComponent as ɵbe, SelectHeaderCellRendererComponent as ɵbf, DefaultHeaderCellRendererComponent as ɵbg, TableHeaderCellRendererComponent as ɵbh, MultipleSelectInputComponent as ɵbi, IconComponent as ɵbj, SectionHeaderComponent as ɵbk, PlaceModule as ɵbl, ComponentsModule as ɵbm, EmptyStateComponent as ɵbn, BusyOverlayComponent as ɵbo, PlaceOutletComponent as ɵbp, leftRightPlaceAnimation as ɵbq, LEFT_RIGHT_PLACE_ANIMATION as ɵbr, AUP_PLACE_CONFIG as ɵbs, PlaceRouter as ɵbu, InteractionService as ɵbv, ModalInteractionContextFactory as ɵbw, UrlService as ɵbx, PlaceHistory as ɵby, TabbedPlaceNavigationComponent as ɵbz, FocusBindingDirective as ɵc, AbstractPlaceNavigationComponent as ɵca, ListPlaceNavComponent as ɵcb, SidePlaceNavigationComponent as ɵcc, InteractionModule as ɵcd, ActivityContainerComponent as ɵce, AbstractInteractionContext as ɵcf, ActivityOutletComponent as ɵcg, ConfirmationDialogComponent as ɵch, ACTIVITY_DATA as ɵci, Activity as ɵcj, ConfirmThenDialogComponent as ɵcl, AlertDialogComponent as ɵcm, InPlaceInteractionContextComponent as ɵco, AddItemInteractionContextComponent as ɵcp, ActivityActionsComponent as ɵcq, PopupInteractionContextComponent as ɵcr, StringInputActivity as ɵcs, AbstractInputActivity as ɵct, SelectInputActivity as ɵcu, InteractionContextTriggerFor as ɵcv, DisposableComponent as ɵd, FocusBindingFactory as ɵe, ComponentsModule as ɵf, AbstractInputComponent as ɵg, AbstractValueInputComponent as ɵh, AbstractListInputComponent as ɵi, NumberInputComponent as ɵj, StringInputComponent as ɵk, TextInputComponent as ɵl, PasswordInputComponent as ɵm, SelectInputComponent as ɵn, CheckboxInputComponent as ɵo, ScrollContainerComponent as ɵp, NoopComponent as ɵq, SwitchCaseOption as ɵr, SwitchCaseWhenDirective as ɵs, SwitchCaseDefaultDirective as ɵt, SwitchCaseComponent as ɵu, FocusContainerComponent as ɵv, VerticalFocusContainerComponent as ɵw, FocusableComponent as ɵx, CardContainerComponent as ɵy, TableComponent as ɵz };
6803
6055
  //# sourceMappingURL=coolon-angular-ui-powerups.js.map