@skyux/list-builder 5.7.2 → 6.0.0-beta.2

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 (277) hide show
  1. package/esm2020/index.mjs +78 -0
  2. package/esm2020/lib/modules/list/list-data-request.model.mjs +18 -0
  3. package/esm2020/lib/modules/list/list-data-response.model.mjs +9 -0
  4. package/esm2020/lib/modules/list/list-data.provider.mjs +9 -0
  5. package/esm2020/lib/modules/list/list-paging.component.mjs +13 -0
  6. package/esm2020/lib/modules/list/list-view.component.mjs +29 -0
  7. package/esm2020/lib/modules/list/list.component.mjs +305 -0
  8. package/esm2020/lib/modules/list/list.module.mjs +18 -0
  9. package/esm2020/lib/modules/list/state/filters/filters.orchestrator.mjs +16 -0
  10. package/esm2020/lib/modules/list/state/filters/update.action.mjs +9 -0
  11. package/esm2020/lib/modules/list/state/items/items.orchestrator.mjs +53 -0
  12. package/esm2020/lib/modules/list/state/items/load.action.mjs +12 -0
  13. package/esm2020/lib/modules/list/state/items/set-items-selected.action.mjs +13 -0
  14. package/esm2020/lib/modules/list/state/items/set-loading.action.mjs +9 -0
  15. package/esm2020/lib/modules/list/state/list-state-action.type.mjs +2 -0
  16. package/esm2020/lib/modules/list/state/list-state.model.mjs +24 -0
  17. package/esm2020/lib/modules/list/state/list-state.rxstate.mjs +80 -0
  18. package/esm2020/lib/modules/list/state/list-state.state-node.mjs +37 -0
  19. package/esm2020/lib/modules/list/state/paging/paging.model.mjs +14 -0
  20. package/esm2020/lib/modules/list/state/paging/paging.orchestrator.mjs +27 -0
  21. package/esm2020/lib/modules/list/state/paging/set-items-per-page.action.mjs +9 -0
  22. package/esm2020/lib/modules/list/state/paging/set-max-pages.action.mjs +9 -0
  23. package/esm2020/lib/modules/list/state/paging/set-page-number.action.mjs +9 -0
  24. package/esm2020/lib/modules/list/state/search/search.model.mjs +32 -0
  25. package/esm2020/lib/modules/list/state/search/search.orchestrator.mjs +47 -0
  26. package/esm2020/lib/modules/list/state/search/set-field-selectors.action.mjs +9 -0
  27. package/esm2020/lib/modules/list/state/search/set-functions.action.mjs +9 -0
  28. package/esm2020/lib/modules/list/state/search/set-options.action.mjs +11 -0
  29. package/esm2020/lib/modules/list/state/search/set-search-text.action.mjs +9 -0
  30. package/esm2020/lib/modules/list/state/selected/load.action.mjs +9 -0
  31. package/esm2020/lib/modules/list/state/selected/selected.model.mjs +9 -0
  32. package/esm2020/lib/modules/list/state/selected/selected.orchestrator.mjs +56 -0
  33. package/esm2020/lib/modules/list/state/selected/set-item-selected.action.mjs +10 -0
  34. package/esm2020/lib/modules/list/state/selected/set-items-selected.action.mjs +11 -0
  35. package/esm2020/lib/modules/list/state/selected/set-loading.action.mjs +9 -0
  36. package/esm2020/lib/modules/list/state/sort/label.model.mjs +25 -0
  37. package/esm2020/lib/modules/list/state/sort/set-available.action.mjs +9 -0
  38. package/esm2020/lib/modules/list/state/sort/set-field-selectors.action.mjs +9 -0
  39. package/esm2020/lib/modules/list/state/sort/set-global.action.mjs +9 -0
  40. package/esm2020/lib/modules/list/state/sort/sort.model.mjs +27 -0
  41. package/esm2020/lib/modules/list/state/sort/sort.orchestrator.mjs +30 -0
  42. package/esm2020/lib/modules/list/state/toolbar/disable.action.mjs +9 -0
  43. package/esm2020/lib/modules/list/state/toolbar/load.action.mjs +10 -0
  44. package/esm2020/lib/modules/list/state/toolbar/remove.action.mjs +9 -0
  45. package/esm2020/lib/modules/list/state/toolbar/set-exists.action.mjs +9 -0
  46. package/esm2020/lib/modules/list/state/toolbar/set-type.action.mjs +9 -0
  47. package/esm2020/lib/modules/list/state/toolbar/show-multiselect-toolbar.action.mjs +9 -0
  48. package/esm2020/lib/modules/list/state/toolbar/toolbar-item.model.mjs +16 -0
  49. package/esm2020/lib/modules/list/state/toolbar/toolbar.model.mjs +17 -0
  50. package/esm2020/lib/modules/list/state/toolbar/toolbar.orchestrator.mjs +80 -0
  51. package/esm2020/lib/modules/list/state/views/load.action.mjs +9 -0
  52. package/esm2020/lib/modules/list/state/views/set-active.action.mjs +9 -0
  53. package/esm2020/lib/modules/list/state/views/view.model.mjs +10 -0
  54. package/esm2020/lib/modules/list/state/views/views.model.mjs +13 -0
  55. package/esm2020/lib/modules/list/state/views/views.orchestrator.mjs +21 -0
  56. package/esm2020/lib/modules/list-data-provider-in-memory/list-data-in-memory.provider.mjs +160 -0
  57. package/esm2020/lib/modules/list-filters/filter.model.mjs +18 -0
  58. package/esm2020/lib/modules/list-filters/list-filter-button.component.mjs +41 -0
  59. package/esm2020/lib/modules/list-filters/list-filter-inline-item-renderer.component.mjs +34 -0
  60. package/esm2020/lib/modules/list-filters/list-filter-inline-item.component.mjs +45 -0
  61. package/esm2020/lib/modules/list-filters/list-filter-inline.component.mjs +71 -0
  62. package/esm2020/lib/modules/list-filters/list-filter-inline.model.mjs +21 -0
  63. package/esm2020/lib/modules/list-filters/list-filter-summary.component.mjs +57 -0
  64. package/esm2020/lib/modules/list-filters/list-filters.module.mjs +41 -0
  65. package/esm2020/lib/modules/list-paging/list-paging.component.mjs +84 -0
  66. package/esm2020/lib/modules/list-paging/list-paging.module.mjs +19 -0
  67. package/esm2020/lib/modules/list-toolbar/list-multiselect-toolbar.component.mjs +148 -0
  68. package/esm2020/lib/modules/list-toolbar/list-secondary-actions/list-secondary-action.component.mjs +30 -0
  69. package/esm2020/lib/modules/list-toolbar/list-secondary-actions/list-secondary-action.mjs +2 -0
  70. package/esm2020/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions-host.component.mjs +45 -0
  71. package/esm2020/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.component.mjs +40 -0
  72. package/esm2020/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.module.mjs +46 -0
  73. package/esm2020/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.service.mjs +36 -0
  74. package/esm2020/lib/modules/list-toolbar/list-toolbar-item-renderer.component.mjs +30 -0
  75. package/esm2020/lib/modules/list-toolbar/list-toolbar-item.component.mjs +47 -0
  76. package/esm2020/lib/modules/list-toolbar/list-toolbar-search-actions.component.mjs +14 -0
  77. package/esm2020/lib/modules/list-toolbar/list-toolbar-sort.component.mjs +25 -0
  78. package/esm2020/lib/modules/list-toolbar/list-toolbar-view-actions.component.mjs +17 -0
  79. package/esm2020/lib/modules/list-toolbar/list-toolbar.component.mjs +354 -0
  80. package/esm2020/lib/modules/list-toolbar/list-toolbar.module.mjs +87 -0
  81. package/esm2020/lib/modules/list-toolbar/state/config/config.model.mjs +14 -0
  82. package/esm2020/lib/modules/list-toolbar/state/config/config.orchestrator.mjs +21 -0
  83. package/esm2020/lib/modules/list-toolbar/state/config/set-search-enabled.action.mjs +9 -0
  84. package/esm2020/lib/modules/list-toolbar/state/config/set-sort-selector-enabled.action.mjs +10 -0
  85. package/esm2020/lib/modules/list-toolbar/state/toolbar-state-action.type.mjs +2 -0
  86. package/esm2020/lib/modules/list-toolbar/state/toolbar-state.model.mjs +10 -0
  87. package/esm2020/lib/modules/list-toolbar/state/toolbar-state.rxstate.mjs +19 -0
  88. package/esm2020/lib/modules/list-toolbar/state/toolbar-state.state-node.mjs +23 -0
  89. package/esm2020/lib/modules/shared/sky-list-builder-resources.module.mjs +53 -0
  90. package/esm2020/skyux-list-builder.mjs +5 -0
  91. package/fesm2015/{skyux-list-builder.js → skyux-list-builder.mjs} +104 -150
  92. package/fesm2015/skyux-list-builder.mjs.map +1 -0
  93. package/fesm2020/skyux-list-builder.mjs +2667 -0
  94. package/fesm2020/skyux-list-builder.mjs.map +1 -0
  95. package/package.json +33 -17
  96. package/bundles/skyux-list-builder.umd.js +0 -3357
  97. package/esm2015/index.js +0 -78
  98. package/esm2015/index.js.map +0 -1
  99. package/esm2015/lib/modules/list/list-data-request.model.js +0 -18
  100. package/esm2015/lib/modules/list/list-data-request.model.js.map +0 -1
  101. package/esm2015/lib/modules/list/list-data-response.model.js +0 -9
  102. package/esm2015/lib/modules/list/list-data-response.model.js.map +0 -1
  103. package/esm2015/lib/modules/list/list-data.provider.js +0 -9
  104. package/esm2015/lib/modules/list/list-data.provider.js.map +0 -1
  105. package/esm2015/lib/modules/list/list-paging.component.js +0 -13
  106. package/esm2015/lib/modules/list/list-paging.component.js.map +0 -1
  107. package/esm2015/lib/modules/list/list-view.component.js +0 -29
  108. package/esm2015/lib/modules/list/list-view.component.js.map +0 -1
  109. package/esm2015/lib/modules/list/list.component.js +0 -305
  110. package/esm2015/lib/modules/list/list.component.js.map +0 -1
  111. package/esm2015/lib/modules/list/list.module.js +0 -18
  112. package/esm2015/lib/modules/list/list.module.js.map +0 -1
  113. package/esm2015/lib/modules/list/state/filters/filters.orchestrator.js +0 -16
  114. package/esm2015/lib/modules/list/state/filters/filters.orchestrator.js.map +0 -1
  115. package/esm2015/lib/modules/list/state/filters/update.action.js +0 -9
  116. package/esm2015/lib/modules/list/state/filters/update.action.js.map +0 -1
  117. package/esm2015/lib/modules/list/state/items/items.orchestrator.js +0 -53
  118. package/esm2015/lib/modules/list/state/items/items.orchestrator.js.map +0 -1
  119. package/esm2015/lib/modules/list/state/items/load.action.js +0 -12
  120. package/esm2015/lib/modules/list/state/items/load.action.js.map +0 -1
  121. package/esm2015/lib/modules/list/state/items/set-items-selected.action.js +0 -13
  122. package/esm2015/lib/modules/list/state/items/set-items-selected.action.js.map +0 -1
  123. package/esm2015/lib/modules/list/state/items/set-loading.action.js +0 -9
  124. package/esm2015/lib/modules/list/state/items/set-loading.action.js.map +0 -1
  125. package/esm2015/lib/modules/list/state/list-state-action.type.js +0 -2
  126. package/esm2015/lib/modules/list/state/list-state-action.type.js.map +0 -1
  127. package/esm2015/lib/modules/list/state/list-state.model.js +0 -24
  128. package/esm2015/lib/modules/list/state/list-state.model.js.map +0 -1
  129. package/esm2015/lib/modules/list/state/list-state.rxstate.js +0 -80
  130. package/esm2015/lib/modules/list/state/list-state.rxstate.js.map +0 -1
  131. package/esm2015/lib/modules/list/state/list-state.state-node.js +0 -37
  132. package/esm2015/lib/modules/list/state/list-state.state-node.js.map +0 -1
  133. package/esm2015/lib/modules/list/state/paging/paging.model.js +0 -14
  134. package/esm2015/lib/modules/list/state/paging/paging.model.js.map +0 -1
  135. package/esm2015/lib/modules/list/state/paging/paging.orchestrator.js +0 -27
  136. package/esm2015/lib/modules/list/state/paging/paging.orchestrator.js.map +0 -1
  137. package/esm2015/lib/modules/list/state/paging/set-items-per-page.action.js +0 -9
  138. package/esm2015/lib/modules/list/state/paging/set-items-per-page.action.js.map +0 -1
  139. package/esm2015/lib/modules/list/state/paging/set-max-pages.action.js +0 -9
  140. package/esm2015/lib/modules/list/state/paging/set-max-pages.action.js.map +0 -1
  141. package/esm2015/lib/modules/list/state/paging/set-page-number.action.js +0 -9
  142. package/esm2015/lib/modules/list/state/paging/set-page-number.action.js.map +0 -1
  143. package/esm2015/lib/modules/list/state/search/search.model.js +0 -32
  144. package/esm2015/lib/modules/list/state/search/search.model.js.map +0 -1
  145. package/esm2015/lib/modules/list/state/search/search.orchestrator.js +0 -47
  146. package/esm2015/lib/modules/list/state/search/search.orchestrator.js.map +0 -1
  147. package/esm2015/lib/modules/list/state/search/set-field-selectors.action.js +0 -9
  148. package/esm2015/lib/modules/list/state/search/set-field-selectors.action.js.map +0 -1
  149. package/esm2015/lib/modules/list/state/search/set-functions.action.js +0 -9
  150. package/esm2015/lib/modules/list/state/search/set-functions.action.js.map +0 -1
  151. package/esm2015/lib/modules/list/state/search/set-options.action.js +0 -11
  152. package/esm2015/lib/modules/list/state/search/set-options.action.js.map +0 -1
  153. package/esm2015/lib/modules/list/state/search/set-search-text.action.js +0 -9
  154. package/esm2015/lib/modules/list/state/search/set-search-text.action.js.map +0 -1
  155. package/esm2015/lib/modules/list/state/selected/load.action.js +0 -9
  156. package/esm2015/lib/modules/list/state/selected/load.action.js.map +0 -1
  157. package/esm2015/lib/modules/list/state/selected/selected.model.js +0 -9
  158. package/esm2015/lib/modules/list/state/selected/selected.model.js.map +0 -1
  159. package/esm2015/lib/modules/list/state/selected/selected.orchestrator.js +0 -56
  160. package/esm2015/lib/modules/list/state/selected/selected.orchestrator.js.map +0 -1
  161. package/esm2015/lib/modules/list/state/selected/set-item-selected.action.js +0 -10
  162. package/esm2015/lib/modules/list/state/selected/set-item-selected.action.js.map +0 -1
  163. package/esm2015/lib/modules/list/state/selected/set-items-selected.action.js +0 -11
  164. package/esm2015/lib/modules/list/state/selected/set-items-selected.action.js.map +0 -1
  165. package/esm2015/lib/modules/list/state/selected/set-loading.action.js +0 -9
  166. package/esm2015/lib/modules/list/state/selected/set-loading.action.js.map +0 -1
  167. package/esm2015/lib/modules/list/state/sort/label.model.js +0 -25
  168. package/esm2015/lib/modules/list/state/sort/label.model.js.map +0 -1
  169. package/esm2015/lib/modules/list/state/sort/set-available.action.js +0 -9
  170. package/esm2015/lib/modules/list/state/sort/set-available.action.js.map +0 -1
  171. package/esm2015/lib/modules/list/state/sort/set-field-selectors.action.js +0 -9
  172. package/esm2015/lib/modules/list/state/sort/set-field-selectors.action.js.map +0 -1
  173. package/esm2015/lib/modules/list/state/sort/set-global.action.js +0 -9
  174. package/esm2015/lib/modules/list/state/sort/set-global.action.js.map +0 -1
  175. package/esm2015/lib/modules/list/state/sort/sort.model.js +0 -27
  176. package/esm2015/lib/modules/list/state/sort/sort.model.js.map +0 -1
  177. package/esm2015/lib/modules/list/state/sort/sort.orchestrator.js +0 -30
  178. package/esm2015/lib/modules/list/state/sort/sort.orchestrator.js.map +0 -1
  179. package/esm2015/lib/modules/list/state/toolbar/disable.action.js +0 -9
  180. package/esm2015/lib/modules/list/state/toolbar/disable.action.js.map +0 -1
  181. package/esm2015/lib/modules/list/state/toolbar/load.action.js +0 -10
  182. package/esm2015/lib/modules/list/state/toolbar/load.action.js.map +0 -1
  183. package/esm2015/lib/modules/list/state/toolbar/remove.action.js +0 -9
  184. package/esm2015/lib/modules/list/state/toolbar/remove.action.js.map +0 -1
  185. package/esm2015/lib/modules/list/state/toolbar/set-exists.action.js +0 -9
  186. package/esm2015/lib/modules/list/state/toolbar/set-exists.action.js.map +0 -1
  187. package/esm2015/lib/modules/list/state/toolbar/set-type.action.js +0 -9
  188. package/esm2015/lib/modules/list/state/toolbar/set-type.action.js.map +0 -1
  189. package/esm2015/lib/modules/list/state/toolbar/show-multiselect-toolbar.action.js +0 -9
  190. package/esm2015/lib/modules/list/state/toolbar/show-multiselect-toolbar.action.js.map +0 -1
  191. package/esm2015/lib/modules/list/state/toolbar/toolbar-item.model.js +0 -16
  192. package/esm2015/lib/modules/list/state/toolbar/toolbar-item.model.js.map +0 -1
  193. package/esm2015/lib/modules/list/state/toolbar/toolbar.model.js +0 -17
  194. package/esm2015/lib/modules/list/state/toolbar/toolbar.model.js.map +0 -1
  195. package/esm2015/lib/modules/list/state/toolbar/toolbar.orchestrator.js +0 -80
  196. package/esm2015/lib/modules/list/state/toolbar/toolbar.orchestrator.js.map +0 -1
  197. package/esm2015/lib/modules/list/state/views/load.action.js +0 -9
  198. package/esm2015/lib/modules/list/state/views/load.action.js.map +0 -1
  199. package/esm2015/lib/modules/list/state/views/set-active.action.js +0 -9
  200. package/esm2015/lib/modules/list/state/views/set-active.action.js.map +0 -1
  201. package/esm2015/lib/modules/list/state/views/view.model.js +0 -10
  202. package/esm2015/lib/modules/list/state/views/view.model.js.map +0 -1
  203. package/esm2015/lib/modules/list/state/views/views.model.js +0 -13
  204. package/esm2015/lib/modules/list/state/views/views.model.js.map +0 -1
  205. package/esm2015/lib/modules/list/state/views/views.orchestrator.js +0 -21
  206. package/esm2015/lib/modules/list/state/views/views.orchestrator.js.map +0 -1
  207. package/esm2015/lib/modules/list-data-provider-in-memory/list-data-in-memory.provider.js +0 -160
  208. package/esm2015/lib/modules/list-data-provider-in-memory/list-data-in-memory.provider.js.map +0 -1
  209. package/esm2015/lib/modules/list-filters/filter.model.js +0 -18
  210. package/esm2015/lib/modules/list-filters/filter.model.js.map +0 -1
  211. package/esm2015/lib/modules/list-filters/list-filter-button.component.js +0 -44
  212. package/esm2015/lib/modules/list-filters/list-filter-button.component.js.map +0 -1
  213. package/esm2015/lib/modules/list-filters/list-filter-inline-item-renderer.component.js +0 -34
  214. package/esm2015/lib/modules/list-filters/list-filter-inline-item-renderer.component.js.map +0 -1
  215. package/esm2015/lib/modules/list-filters/list-filter-inline-item.component.js +0 -45
  216. package/esm2015/lib/modules/list-filters/list-filter-inline-item.component.js.map +0 -1
  217. package/esm2015/lib/modules/list-filters/list-filter-inline.component.js +0 -74
  218. package/esm2015/lib/modules/list-filters/list-filter-inline.component.js.map +0 -1
  219. package/esm2015/lib/modules/list-filters/list-filter-inline.model.js +0 -21
  220. package/esm2015/lib/modules/list-filters/list-filter-inline.model.js.map +0 -1
  221. package/esm2015/lib/modules/list-filters/list-filter-summary.component.js +0 -60
  222. package/esm2015/lib/modules/list-filters/list-filter-summary.component.js.map +0 -1
  223. package/esm2015/lib/modules/list-filters/list-filters.module.js +0 -41
  224. package/esm2015/lib/modules/list-filters/list-filters.module.js.map +0 -1
  225. package/esm2015/lib/modules/list-paging/list-paging.component.js +0 -89
  226. package/esm2015/lib/modules/list-paging/list-paging.component.js.map +0 -1
  227. package/esm2015/lib/modules/list-paging/list-paging.module.js +0 -19
  228. package/esm2015/lib/modules/list-paging/list-paging.module.js.map +0 -1
  229. package/esm2015/lib/modules/list-toolbar/list-multiselect-toolbar.component.js +0 -152
  230. package/esm2015/lib/modules/list-toolbar/list-multiselect-toolbar.component.js.map +0 -1
  231. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-action.component.js +0 -33
  232. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-action.component.js.map +0 -1
  233. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-action.js +0 -2
  234. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-action.js.map +0 -1
  235. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions-host.component.js +0 -50
  236. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions-host.component.js.map +0 -1
  237. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.component.js +0 -45
  238. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.component.js.map +0 -1
  239. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.module.js +0 -46
  240. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.module.js.map +0 -1
  241. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.service.js +0 -36
  242. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.service.js.map +0 -1
  243. package/esm2015/lib/modules/list-toolbar/list-toolbar-item-renderer.component.js +0 -30
  244. package/esm2015/lib/modules/list-toolbar/list-toolbar-item-renderer.component.js.map +0 -1
  245. package/esm2015/lib/modules/list-toolbar/list-toolbar-item.component.js +0 -47
  246. package/esm2015/lib/modules/list-toolbar/list-toolbar-item.component.js.map +0 -1
  247. package/esm2015/lib/modules/list-toolbar/list-toolbar-search-actions.component.js +0 -19
  248. package/esm2015/lib/modules/list-toolbar/list-toolbar-search-actions.component.js.map +0 -1
  249. package/esm2015/lib/modules/list-toolbar/list-toolbar-sort.component.js +0 -25
  250. package/esm2015/lib/modules/list-toolbar/list-toolbar-sort.component.js.map +0 -1
  251. package/esm2015/lib/modules/list-toolbar/list-toolbar-view-actions.component.js +0 -21
  252. package/esm2015/lib/modules/list-toolbar/list-toolbar-view-actions.component.js.map +0 -1
  253. package/esm2015/lib/modules/list-toolbar/list-toolbar.component.js +0 -360
  254. package/esm2015/lib/modules/list-toolbar/list-toolbar.component.js.map +0 -1
  255. package/esm2015/lib/modules/list-toolbar/list-toolbar.module.js +0 -87
  256. package/esm2015/lib/modules/list-toolbar/list-toolbar.module.js.map +0 -1
  257. package/esm2015/lib/modules/list-toolbar/state/config/config.model.js +0 -14
  258. package/esm2015/lib/modules/list-toolbar/state/config/config.model.js.map +0 -1
  259. package/esm2015/lib/modules/list-toolbar/state/config/config.orchestrator.js +0 -21
  260. package/esm2015/lib/modules/list-toolbar/state/config/config.orchestrator.js.map +0 -1
  261. package/esm2015/lib/modules/list-toolbar/state/config/set-search-enabled.action.js +0 -9
  262. package/esm2015/lib/modules/list-toolbar/state/config/set-search-enabled.action.js.map +0 -1
  263. package/esm2015/lib/modules/list-toolbar/state/config/set-sort-selector-enabled.action.js +0 -10
  264. package/esm2015/lib/modules/list-toolbar/state/config/set-sort-selector-enabled.action.js.map +0 -1
  265. package/esm2015/lib/modules/list-toolbar/state/toolbar-state-action.type.js +0 -2
  266. package/esm2015/lib/modules/list-toolbar/state/toolbar-state-action.type.js.map +0 -1
  267. package/esm2015/lib/modules/list-toolbar/state/toolbar-state.model.js +0 -10
  268. package/esm2015/lib/modules/list-toolbar/state/toolbar-state.model.js.map +0 -1
  269. package/esm2015/lib/modules/list-toolbar/state/toolbar-state.rxstate.js +0 -19
  270. package/esm2015/lib/modules/list-toolbar/state/toolbar-state.rxstate.js.map +0 -1
  271. package/esm2015/lib/modules/list-toolbar/state/toolbar-state.state-node.js +0 -23
  272. package/esm2015/lib/modules/list-toolbar/state/toolbar-state.state-node.js.map +0 -1
  273. package/esm2015/lib/modules/shared/sky-list-builder-resources.module.js +0 -53
  274. package/esm2015/lib/modules/shared/sky-list-builder-resources.module.js.map +0 -1
  275. package/esm2015/skyux-list-builder.js +0 -5
  276. package/esm2015/skyux-list-builder.js.map +0 -1
  277. package/fesm2015/skyux-list-builder.js.map +0 -1
@@ -0,0 +1,84 @@
1
+ import { ChangeDetectionStrategy, Component, Input, forwardRef, } from '@angular/core';
2
+ import { getValue } from '@skyux/list-builder-common';
3
+ import { distinctUntilChanged, map as observableMap, scan, } from 'rxjs/operators';
4
+ import { ListPagingComponent } from '../list/list-paging.component';
5
+ import { ListStateDispatcher } from '../list/state/list-state.rxstate';
6
+ import { ListState } from '../list/state/list-state.state-node';
7
+ import { ListPagingSetItemsPerPageAction } from '../list/state/paging/set-items-per-page.action';
8
+ import { ListPagingSetMaxPagesAction } from '../list/state/paging/set-max-pages.action';
9
+ import { ListPagingSetPageNumberAction } from '../list/state/paging/set-page-number.action';
10
+ import * as i0 from "@angular/core";
11
+ import * as i1 from "../list/state/list-state.state-node";
12
+ import * as i2 from "../list/state/list-state.rxstate";
13
+ import * as i3 from "@skyux/lists";
14
+ import * as i4 from "@angular/common";
15
+ /* istanbul ignore next */
16
+ const listPagingComponentRef = forwardRef(() => SkyListPagingComponent);
17
+ /**
18
+ * Displays a pagination control for a SKY UX-themed list of data.
19
+ */
20
+ export class SkyListPagingComponent extends ListPagingComponent {
21
+ constructor(state, dispatcher) {
22
+ super(state, dispatcher);
23
+ /**
24
+ * Specifies the number of list items per page.
25
+ * @default 10
26
+ */
27
+ this.pageSize = 10;
28
+ /**
29
+ * Specifies the maximum pages to display.
30
+ * @default 5
31
+ */
32
+ this.maxPages = 5;
33
+ /**
34
+ * Specifies the current page number.
35
+ * @default 1
36
+ */
37
+ this.pageNumber = 1;
38
+ }
39
+ ngOnInit() {
40
+ this.currentPageNumber = this.state.pipe(observableMap((s) => s.paging.pageNumber));
41
+ this.maxDisplayedPages = this.state.pipe(observableMap((s) => s.paging.maxDisplayedPages));
42
+ this.itemsPerPage = this.state.pipe(observableMap((s) => s.paging.itemsPerPage));
43
+ this.itemCount = this.state.pipe(observableMap((s) => {
44
+ return s.items;
45
+ }), scan((previousValue, newValue) => {
46
+ if (previousValue.lastUpdate > newValue.lastUpdate) {
47
+ return previousValue;
48
+ }
49
+ else {
50
+ return newValue;
51
+ }
52
+ }), observableMap((result) => {
53
+ return result.count;
54
+ }), distinctUntilChanged());
55
+ // subscribe to or use inputs
56
+ getValue(this.pageSize, (pageSize) => this.dispatcher.next(new ListPagingSetItemsPerPageAction(Number(pageSize))));
57
+ getValue(this.maxPages, (maxPages) => this.dispatcher.next(new ListPagingSetMaxPagesAction(Number(maxPages))));
58
+ getValue(this.pageNumber, (pageNumber) => this.dispatcher.next(new ListPagingSetPageNumberAction(Number(pageNumber))));
59
+ }
60
+ pageChange(currentPage) {
61
+ // Paging must be updated after list data has been updated.
62
+ // Adding a setTimeout will pull it out of the stream.
63
+ setTimeout(() => {
64
+ this.dispatcher.next(new ListPagingSetPageNumberAction(Number(currentPage)));
65
+ });
66
+ }
67
+ }
68
+ SkyListPagingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListPagingComponent, deps: [{ token: i1.ListState }, { token: i2.ListStateDispatcher }], target: i0.ɵɵFactoryTarget.Component });
69
+ SkyListPagingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SkyListPagingComponent, selector: "sky-list-paging", inputs: { pageSize: "pageSize", maxPages: "maxPages", pageNumber: "pageNumber" }, providers: [
70
+ { provide: ListPagingComponent, useExisting: listPagingComponentRef },
71
+ ], usesInheritance: true, ngImport: i0, template: "<sky-paging\n [pageSize]=\"itemsPerPage | async\"\n [maxPages]=\"maxDisplayedPages | async\"\n [currentPage]=\"currentPageNumber | async\"\n [itemCount]=\"itemCount | async\"\n (currentPageChange)=\"pageChange($event)\"\n>\n</sky-paging>\n", components: [{ type: i3.λ7, selector: "sky-paging", inputs: ["currentPage", "itemCount", "maxPages", "pageSize", "pagingLabel"], outputs: ["currentPageChange"] }], pipes: { "async": i4.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
72
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListPagingComponent, decorators: [{
73
+ type: Component,
74
+ args: [{ selector: 'sky-list-paging', providers: [
75
+ { provide: ListPagingComponent, useExisting: listPagingComponentRef },
76
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: "<sky-paging\n [pageSize]=\"itemsPerPage | async\"\n [maxPages]=\"maxDisplayedPages | async\"\n [currentPage]=\"currentPageNumber | async\"\n [itemCount]=\"itemCount | async\"\n (currentPageChange)=\"pageChange($event)\"\n>\n</sky-paging>\n" }]
77
+ }], ctorParameters: function () { return [{ type: i1.ListState }, { type: i2.ListStateDispatcher }]; }, propDecorators: { pageSize: [{
78
+ type: Input
79
+ }], maxPages: [{
80
+ type: Input
81
+ }], pageNumber: [{
82
+ type: Input
83
+ }] } });
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1wYWdpbmcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xpc3QtYnVpbGRlci9zcmMvbGliL21vZHVsZXMvbGlzdC1wYWdpbmcvbGlzdC1wYWdpbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xpc3QtYnVpbGRlci9zcmMvbGliL21vZHVsZXMvbGlzdC1wYWdpbmcvbGlzdC1wYWdpbmcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsS0FBSyxFQUVMLFVBQVUsR0FDWCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQTRCLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBR2hGLE9BQU8sRUFDTCxvQkFBb0IsRUFDcEIsR0FBRyxJQUFJLGFBQWEsRUFDcEIsSUFBSSxHQUNMLE1BQU0sZ0JBQWdCLENBQUM7QUFFeEIsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDcEUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdkUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ2pHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDJDQUEyQyxDQUFDO0FBQ3hGLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDOzs7Ozs7QUFFNUYsMEJBQTBCO0FBQzFCLE1BQU0sc0JBQXNCLEdBQUcsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHNCQUFzQixDQUFDLENBQUM7QUFFeEU7O0dBRUc7QUFTSCxNQUFNLE9BQU8sc0JBQ1gsU0FBUSxt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RENsQ0gsc1BBUUE7MkZENkJhLHNCQUFzQjtrQkFSbEMsU0FBUzsrQkFDRSxpQkFBaUIsYUFFaEI7d0JBQ1QsRUFBRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLHNCQUFzQixFQUFFO3FCQUN0RSxtQkFDZ0IsdUJBQXVCLENBQUMsTUFBTTtrSUFXeEMsUUFBUTtzQkFEZCxLQUFLO2dCQVFDLFFBQVE7c0JBRGQsS0FBSztnQkFRQyxVQUFVO3NCQURoQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgZm9yd2FyZFJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBc3luY0xpc3QsIExpc3RJdGVtTW9kZWwsIGdldFZhbHVlIH0gZnJvbSAnQHNreXV4L2xpc3QtYnVpbGRlci1jb21tb24nO1xuXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge1xuICBkaXN0aW5jdFVudGlsQ2hhbmdlZCxcbiAgbWFwIGFzIG9ic2VydmFibGVNYXAsXG4gIHNjYW4sXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgTGlzdFBhZ2luZ0NvbXBvbmVudCB9IGZyb20gJy4uL2xpc3QvbGlzdC1wYWdpbmcuY29tcG9uZW50JztcbmltcG9ydCB7IExpc3RTdGF0ZURpc3BhdGNoZXIgfSBmcm9tICcuLi9saXN0L3N0YXRlL2xpc3Qtc3RhdGUucnhzdGF0ZSc7XG5pbXBvcnQgeyBMaXN0U3RhdGUgfSBmcm9tICcuLi9saXN0L3N0YXRlL2xpc3Qtc3RhdGUuc3RhdGUtbm9kZSc7XG5pbXBvcnQgeyBMaXN0UGFnaW5nU2V0SXRlbXNQZXJQYWdlQWN0aW9uIH0gZnJvbSAnLi4vbGlzdC9zdGF0ZS9wYWdpbmcvc2V0LWl0ZW1zLXBlci1wYWdlLmFjdGlvbic7XG5pbXBvcnQgeyBMaXN0UGFnaW5nU2V0TWF4UGFnZXNBY3Rpb24gfSBmcm9tICcuLi9saXN0L3N0YXRlL3BhZ2luZy9zZXQtbWF4LXBhZ2VzLmFjdGlvbic7XG5pbXBvcnQgeyBMaXN0UGFnaW5nU2V0UGFnZU51bWJlckFjdGlvbiB9IGZyb20gJy4uL2xpc3Qvc3RhdGUvcGFnaW5nL3NldC1wYWdlLW51bWJlci5hY3Rpb24nO1xuXG4vKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuY29uc3QgbGlzdFBhZ2luZ0NvbXBvbmVudFJlZiA9IGZvcndhcmRSZWYoKCkgPT4gU2t5TGlzdFBhZ2luZ0NvbXBvbmVudCk7XG5cbi8qKlxuICogRGlzcGxheXMgYSBwYWdpbmF0aW9uIGNvbnRyb2wgZm9yIGEgU0tZIFVYLXRoZW1lZCBsaXN0IG9mIGRhdGEuXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1saXN0LXBhZ2luZycsXG4gIHRlbXBsYXRlVXJsOiAnLi9saXN0LXBhZ2luZy5jb21wb25lbnQuaHRtbCcsXG4gIHByb3ZpZGVyczogW1xuICAgIHsgcHJvdmlkZTogTGlzdFBhZ2luZ0NvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IGxpc3RQYWdpbmdDb21wb25lbnRSZWYgfSxcbiAgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNreUxpc3RQYWdpbmdDb21wb25lbnRcbiAgZXh0ZW5kcyBMaXN0UGFnaW5nQ29tcG9uZW50XG4gIGltcGxlbWVudHMgT25Jbml0XG57XG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgdGhlIG51bWJlciBvZiBsaXN0IGl0ZW1zIHBlciBwYWdlLlxuICAgKiBAZGVmYXVsdCAxMFxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIHBhZ2VTaXplOiBPYnNlcnZhYmxlPG51bWJlcj4gfCBudW1iZXIgPSAxMDtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBtYXhpbXVtIHBhZ2VzIHRvIGRpc3BsYXkuXG4gICAqIEBkZWZhdWx0IDVcbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBtYXhQYWdlczogT2JzZXJ2YWJsZTxudW1iZXI+IHwgbnVtYmVyID0gNTtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIHRoZSBjdXJyZW50IHBhZ2UgbnVtYmVyLlxuICAgKiBAZGVmYXVsdCAxXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgcGFnZU51bWJlcjogT2JzZXJ2YWJsZTxudW1iZXI+IHwgbnVtYmVyID0gMTtcblxuICBwdWJsaWMgY3VycmVudFBhZ2VOdW1iZXI6IE9ic2VydmFibGU8bnVtYmVyPjtcblxuICBwdWJsaWMgbWF4RGlzcGxheWVkUGFnZXM6IE9ic2VydmFibGU8bnVtYmVyPjtcblxuICBwdWJsaWMgaXRlbXNQZXJQYWdlOiBPYnNlcnZhYmxlPG51bWJlcj47XG5cbiAgcHVibGljIGl0ZW1Db3VudDogT2JzZXJ2YWJsZTxudW1iZXI+O1xuXG4gIGNvbnN0cnVjdG9yKHN0YXRlOiBMaXN0U3RhdGUsIGRpc3BhdGNoZXI6IExpc3RTdGF0ZURpc3BhdGNoZXIpIHtcbiAgICBzdXBlcihzdGF0ZSwgZGlzcGF0Y2hlcik7XG4gIH1cblxuICBwdWJsaWMgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5jdXJyZW50UGFnZU51bWJlciA9IHRoaXMuc3RhdGUucGlwZShcbiAgICAgIG9ic2VydmFibGVNYXAoKHMpID0+IHMucGFnaW5nLnBhZ2VOdW1iZXIpXG4gICAgKTtcblxuICAgIHRoaXMubWF4RGlzcGxheWVkUGFnZXMgPSB0aGlzLnN0YXRlLnBpcGUoXG4gICAgICBvYnNlcnZhYmxlTWFwKChzKSA9PiBzLnBhZ2luZy5tYXhEaXNwbGF5ZWRQYWdlcylcbiAgICApO1xuXG4gICAgdGhpcy5pdGVtc1BlclBhZ2UgPSB0aGlzLnN0YXRlLnBpcGUoXG4gICAgICBvYnNlcnZhYmxlTWFwKChzKSA9PiBzLnBhZ2luZy5pdGVtc1BlclBhZ2UpXG4gICAgKTtcblxuICAgIHRoaXMuaXRlbUNvdW50ID0gdGhpcy5zdGF0ZS5waXBlKFxuICAgICAgb2JzZXJ2YWJsZU1hcCgocykgPT4ge1xuICAgICAgICByZXR1cm4gcy5pdGVtcztcbiAgICAgIH0pLFxuICAgICAgc2NhbihcbiAgICAgICAgKFxuICAgICAgICAgIHByZXZpb3VzVmFsdWU6IEFzeW5jTGlzdDxMaXN0SXRlbU1vZGVsPixcbiAgICAgICAgICBuZXdWYWx1ZTogQXN5bmNMaXN0PExpc3RJdGVtTW9kZWw+XG4gICAgICAgICkgPT4ge1xuICAgICAgICAgIGlmIChwcmV2aW91c1ZhbHVlLmxhc3RVcGRhdGUgPiBuZXdWYWx1ZS5sYXN0VXBkYXRlKSB7XG4gICAgICAgICAgICByZXR1cm4gcHJldmlvdXNWYWx1ZTtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIG5ld1ZhbHVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgKSxcbiAgICAgIG9ic2VydmFibGVNYXAoKHJlc3VsdDogQXN5bmNMaXN0PExpc3RJdGVtTW9kZWw+KSA9PiB7XG4gICAgICAgIHJldHVybiByZXN1bHQuY291bnQ7XG4gICAgICB9KSxcbiAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcbiAgICApO1xuXG4gICAgLy8gc3Vic2NyaWJlIHRvIG9yIHVzZSBpbnB1dHNcbiAgICBnZXRWYWx1ZSh0aGlzLnBhZ2VTaXplLCAocGFnZVNpemU6IG51bWJlcikgPT5cbiAgICAgIHRoaXMuZGlzcGF0Y2hlci5uZXh0KFxuICAgICAgICBuZXcgTGlzdFBhZ2luZ1NldEl0ZW1zUGVyUGFnZUFjdGlvbihOdW1iZXIocGFnZVNpemUpKVxuICAgICAgKVxuICAgICk7XG4gICAgZ2V0VmFsdWUodGhpcy5tYXhQYWdlcywgKG1heFBhZ2VzOiBudW1iZXIpID0+XG4gICAgICB0aGlzLmRpc3BhdGNoZXIubmV4dChuZXcgTGlzdFBhZ2luZ1NldE1heFBhZ2VzQWN0aW9uKE51bWJlcihtYXhQYWdlcykpKVxuICAgICk7XG4gICAgZ2V0VmFsdWUodGhpcy5wYWdlTnVtYmVyLCAocGFnZU51bWJlcjogbnVtYmVyKSA9PlxuICAgICAgdGhpcy5kaXNwYXRjaGVyLm5leHQoXG4gICAgICAgIG5ldyBMaXN0UGFnaW5nU2V0UGFnZU51bWJlckFjdGlvbihOdW1iZXIocGFnZU51bWJlcikpXG4gICAgICApXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBwYWdlQ2hhbmdlKGN1cnJlbnRQYWdlOiBudW1iZXIpIHtcbiAgICAvLyBQYWdpbmcgbXVzdCBiZSB1cGRhdGVkIGFmdGVyIGxpc3QgZGF0YSBoYXMgYmVlbiB1cGRhdGVkLlxuICAgIC8vIEFkZGluZyBhIHNldFRpbWVvdXQgd2lsbCBwdWxsIGl0IG91dCBvZiB0aGUgc3RyZWFtLlxuICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgdGhpcy5kaXNwYXRjaGVyLm5leHQoXG4gICAgICAgIG5ldyBMaXN0UGFnaW5nU2V0UGFnZU51bWJlckFjdGlvbihOdW1iZXIoY3VycmVudFBhZ2UpKVxuICAgICAgKTtcbiAgICB9KTtcbiAgfVxufVxuIiwiPHNreS1wYWdpbmdcbiAgW3BhZ2VTaXplXT1cIml0ZW1zUGVyUGFnZSB8IGFzeW5jXCJcbiAgW21heFBhZ2VzXT1cIm1heERpc3BsYXllZFBhZ2VzIHwgYXN5bmNcIlxuICBbY3VycmVudFBhZ2VdPVwiY3VycmVudFBhZ2VOdW1iZXIgfCBhc3luY1wiXG4gIFtpdGVtQ291bnRdPVwiaXRlbUNvdW50IHwgYXN5bmNcIlxuICAoY3VycmVudFBhZ2VDaGFuZ2UpPVwicGFnZUNoYW5nZSgkZXZlbnQpXCJcbj5cbjwvc2t5LXBhZ2luZz5cbiJdfQ==
@@ -0,0 +1,19 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { SkyPagingModule } from '@skyux/lists';
4
+ import { SkyListPagingComponent } from './list-paging.component';
5
+ import * as i0 from "@angular/core";
6
+ export class SkyListPagingModule {
7
+ }
8
+ SkyListPagingModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListPagingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
9
+ SkyListPagingModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListPagingModule, declarations: [SkyListPagingComponent], imports: [CommonModule, SkyPagingModule], exports: [SkyListPagingComponent] });
10
+ SkyListPagingModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListPagingModule, imports: [[CommonModule, SkyPagingModule]] });
11
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListPagingModule, decorators: [{
12
+ type: NgModule,
13
+ args: [{
14
+ declarations: [SkyListPagingComponent],
15
+ imports: [CommonModule, SkyPagingModule],
16
+ exports: [SkyListPagingComponent],
17
+ }]
18
+ }] });
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1wYWdpbmcubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xpc3QtYnVpbGRlci9zcmMvbGliL21vZHVsZXMvbGlzdC1wYWdpbmcvbGlzdC1wYWdpbmcubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFL0MsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7O0FBT2pFLE1BQU0sT0FBTyxtQkFBbUI7O2dIQUFuQixtQkFBbUI7aUhBQW5CLG1CQUFtQixpQkFKZixzQkFBc0IsYUFDM0IsWUFBWSxFQUFFLGVBQWUsYUFDN0Isc0JBQXNCO2lIQUVyQixtQkFBbUIsWUFIckIsQ0FBQyxZQUFZLEVBQUUsZUFBZSxDQUFDOzJGQUc3QixtQkFBbUI7a0JBTC9CLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsc0JBQXNCLENBQUM7b0JBQ3RDLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxlQUFlLENBQUM7b0JBQ3hDLE9BQU8sRUFBRSxDQUFDLHNCQUFzQixDQUFDO2lCQUNsQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5UGFnaW5nTW9kdWxlIH0gZnJvbSAnQHNreXV4L2xpc3RzJztcblxuaW1wb3J0IHsgU2t5TGlzdFBhZ2luZ0NvbXBvbmVudCB9IGZyb20gJy4vbGlzdC1wYWdpbmcuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbU2t5TGlzdFBhZ2luZ0NvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIFNreVBhZ2luZ01vZHVsZV0sXG4gIGV4cG9ydHM6IFtTa3lMaXN0UGFnaW5nQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5TGlzdFBhZ2luZ01vZHVsZSB7fVxuIl19
@@ -0,0 +1,148 @@
1
+ import { Component, Input } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import { distinctUntilChanged, map as observableMap, take, takeUntil, } from 'rxjs/operators';
4
+ import { ListFilterModel } from '../list-filters/filter.model';
5
+ import { ListStateDispatcher } from '../list/state/list-state.rxstate';
6
+ import { ListState } from '../list/state/list-state.state-node';
7
+ import { ListPagingSetPageNumberAction } from '../list/state/paging/set-page-number.action';
8
+ import * as i0 from "@angular/core";
9
+ import * as i1 from "../list/state/list-state.state-node";
10
+ import * as i2 from "../list/state/list-state.rxstate";
11
+ import * as i3 from "@skyux/layout";
12
+ import * as i4 from "./list-toolbar-item-renderer.component";
13
+ import * as i5 from "@skyux/forms";
14
+ import * as i6 from "@angular/common";
15
+ import * as i7 from "@skyux/i18n";
16
+ let uniqueId = 0;
17
+ /**
18
+ * @internal
19
+ */
20
+ export class SkyListMultiselectToolbarComponent {
21
+ constructor(state, dispatcher) {
22
+ this.state = state;
23
+ this.dispatcher = dispatcher;
24
+ this.showOnlySelected = false;
25
+ this.multiselectToolbarId = `sky-list-multiselect-toolbar-${uniqueId++}`;
26
+ this.selectedIdMap = new Map();
27
+ this.ngUnsubscribe = new Subject();
28
+ }
29
+ ngOnInit() {
30
+ this.state
31
+ .pipe(observableMap((t) => t.selected.item), takeUntil(this.ngUnsubscribe), distinctUntilChanged(this.selectedMapEqual))
32
+ .subscribe((model) => {
33
+ this.selectedIdMap = model.selectedIdMap;
34
+ if (this.showOnlySelected) {
35
+ this.reapplyFilter(true);
36
+ }
37
+ });
38
+ // If 'show-selected' filter is programatically set from a child component (e.g. checkilst),
39
+ // make sure the checked state of the 'show-selected' checkbox stays in sync.
40
+ this.state
41
+ .pipe(observableMap((t) => t.filters), takeUntil(this.ngUnsubscribe), distinctUntilChanged(this.showSelectedValuesEqual))
42
+ .subscribe((filters) => {
43
+ const showSelectedFilter = filters.find((filter) => filter.name === 'show-selected');
44
+ if (showSelectedFilter) {
45
+ this.showOnlySelected = showSelectedFilter.value === 'true';
46
+ }
47
+ });
48
+ }
49
+ ngOnDestroy() {
50
+ this.ngUnsubscribe.next();
51
+ this.ngUnsubscribe.complete();
52
+ }
53
+ selectAll() {
54
+ this.state
55
+ .pipe(observableMap((state) => state.items.items), take(1))
56
+ .subscribe((items) => {
57
+ this.dispatcher.setSelected(items.map((item) => item.id), true);
58
+ if (this.showOnlySelected) {
59
+ this.reapplyFilter(this.showOnlySelected);
60
+ }
61
+ });
62
+ }
63
+ clearSelections() {
64
+ this.state
65
+ .pipe(observableMap((state) => state.items.items), take(1))
66
+ .subscribe((items) => {
67
+ this.dispatcher.setSelected(items.map((item) => item.id), false);
68
+ if (this.showOnlySelected) {
69
+ this.reapplyFilter(this.showOnlySelected);
70
+ }
71
+ });
72
+ }
73
+ changeVisibleItems(change) {
74
+ this.showOnlySelected = change.checked;
75
+ this.reapplyFilter(change.checked);
76
+ }
77
+ reapplyFilter(isSelected) {
78
+ this.state
79
+ .pipe(observableMap((state) => state.filters), take(1))
80
+ .subscribe((filters) => {
81
+ filters = filters.filter((filter) => filter.name !== 'show-selected');
82
+ filters.push(this.getShowSelectedFilter(isSelected));
83
+ this.dispatcher.filtersUpdate(filters);
84
+ });
85
+ // If "show selected" is checked and paging is enabled, go to page one.
86
+ /* istanbul ignore else */
87
+ if (isSelected) {
88
+ this.state.pipe(take(1)).subscribe((currentState) => {
89
+ if (currentState.paging.pageNumber &&
90
+ currentState.paging.pageNumber !== 1) {
91
+ this.dispatcher.next(new ListPagingSetPageNumberAction(Number(1)));
92
+ }
93
+ });
94
+ }
95
+ this.dispatcher.toolbarSetDisabled(isSelected);
96
+ }
97
+ getShowSelectedFilter(isSelected) {
98
+ return new ListFilterModel({
99
+ name: 'show-selected',
100
+ value: isSelected.toString(),
101
+ filterFunction: (model, showOnlySelected) => {
102
+ /* istanbul ignore else */
103
+ if (showOnlySelected.toString() !== false.toString()) {
104
+ return this.selectedIdMap.get(model.id);
105
+ }
106
+ },
107
+ defaultValue: false.toString(),
108
+ });
109
+ }
110
+ showSelectedValuesEqual(prev, next) {
111
+ const prevShowSelectedFilter = prev.find((filter) => filter.name === 'show-selected');
112
+ const nextShowSelectedFilter = next.find((filter) => filter.name === 'show-selected');
113
+ // Both undefined.
114
+ if (!prevShowSelectedFilter && !nextShowSelectedFilter) {
115
+ return true;
116
+ }
117
+ // Only one undefined.
118
+ if ((prevShowSelectedFilter && !nextShowSelectedFilter) ||
119
+ (!prevShowSelectedFilter && nextShowSelectedFilter)) {
120
+ return false;
121
+ }
122
+ // Defined, but with different "value".
123
+ return prevShowSelectedFilter.value === nextShowSelectedFilter.value;
124
+ }
125
+ selectedMapEqual(prev, next) {
126
+ if (prev.selectedIdMap.size !== next.selectedIdMap.size) {
127
+ return false;
128
+ }
129
+ for (let i = 0; i < next.selectedIdMap.size; i++) {
130
+ const key = Array.from(next.selectedIdMap.keys())[i];
131
+ const value = next.selectedIdMap.get(key);
132
+ /* istanbul ignore next */
133
+ if (value !== prev.selectedIdMap.get(key)) {
134
+ return false;
135
+ }
136
+ }
137
+ return true;
138
+ }
139
+ }
140
+ SkyListMultiselectToolbarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListMultiselectToolbarComponent, deps: [{ token: i1.ListState }, { token: i2.ListStateDispatcher }], target: i0.ɵɵFactoryTarget.Component });
141
+ SkyListMultiselectToolbarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SkyListMultiselectToolbarComponent, selector: "sky-list-multiselect-toolbar", inputs: { showOnlySelected: "showOnlySelected" }, ngImport: i0, template: "<sky-toolbar class=\"sky-list-multiselect-toolbar\">\n <sky-toolbar-section>\n <sky-toolbar-item>\n <sky-list-toolbar-item-renderer [template]=\"selectAllTemplate\">\n </sky-list-toolbar-item-renderer>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <sky-list-toolbar-item-renderer [template]=\"clearSelectionsTemplate\">\n </sky-list-toolbar-item-renderer>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <ng-container *ngTemplateOutlet=\"showSelectedTemplate\"></ng-container>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n</sky-toolbar>\n\n<ng-template #selectAllTemplate>\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n [attr.id]=\"multiselectToolbarId + '-select-all'\"\n (click)=\"selectAll(); $event.preventDefault()\"\n >\n {{ 'skyux_list_mutliselect_select_all' | skyLibResources }}\n </button>\n</ng-template>\n\n<ng-template #clearSelectionsTemplate>\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n [attr.id]=\"multiselectToolbarId + '-clear-all'\"\n (click)=\"clearSelections(); $event.preventDefault()\"\n >\n {{ 'skyux_list_multiselect_clear_all' | skyLibResources }}\n </button>\n</ng-template>\n\n<ng-template #showSelectedTemplate>\n <sky-checkbox\n [attr.id]=\"multiselectToolbarId + '-show-selected'\"\n [checked]=\"showOnlySelected\"\n (change)=\"changeVisibleItems($event)\"\n >\n <sky-checkbox-label>\n {{ 'skyux_list_mutliselect_show_selected' | skyLibResources }}\n </sky-checkbox-label>\n </sky-checkbox>\n</ng-template>\n", styles: [":host-context(sky-toolbar +) .sky-list-multiselect-toolbar ::ng-deep .sky-toolbar-container,:host-context(.sky-list-toolbar-search +) .sky-list-multiselect-toolbar ::ng-deep .sky-toolbar-container{border-top:none}\n"], components: [{ type: i3.λ37, selector: "sky-toolbar" }, { type: i3.λ38, selector: "sky-toolbar-section" }, { type: i3.λ39, selector: "sky-toolbar-item" }, { type: i4.SkyListToolbarItemRendererComponent, selector: "sky-list-toolbar-item-renderer", inputs: ["template"] }, { type: i3.λ40, selector: "sky-toolbar-view-actions" }, { type: i5.λ3, selector: "sky-checkbox", inputs: ["label", "labelledBy", "id", "disabled", "tabindex", "name", "icon", "checkboxType", "checked", "required"], outputs: ["change", "checkedChange", "disabledChange"] }, { type: i5.λ4, selector: "sky-checkbox-label" }], directives: [{ type: i6.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "skyLibResources": i7.SkyLibResourcesPipe } });
142
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListMultiselectToolbarComponent, decorators: [{
143
+ type: Component,
144
+ args: [{ selector: 'sky-list-multiselect-toolbar', template: "<sky-toolbar class=\"sky-list-multiselect-toolbar\">\n <sky-toolbar-section>\n <sky-toolbar-item>\n <sky-list-toolbar-item-renderer [template]=\"selectAllTemplate\">\n </sky-list-toolbar-item-renderer>\n </sky-toolbar-item>\n <sky-toolbar-item>\n <sky-list-toolbar-item-renderer [template]=\"clearSelectionsTemplate\">\n </sky-list-toolbar-item-renderer>\n </sky-toolbar-item>\n <sky-toolbar-view-actions>\n <ng-container *ngTemplateOutlet=\"showSelectedTemplate\"></ng-container>\n </sky-toolbar-view-actions>\n </sky-toolbar-section>\n</sky-toolbar>\n\n<ng-template #selectAllTemplate>\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n [attr.id]=\"multiselectToolbarId + '-select-all'\"\n (click)=\"selectAll(); $event.preventDefault()\"\n >\n {{ 'skyux_list_mutliselect_select_all' | skyLibResources }}\n </button>\n</ng-template>\n\n<ng-template #clearSelectionsTemplate>\n <button\n class=\"sky-btn sky-btn-link\"\n type=\"button\"\n [attr.id]=\"multiselectToolbarId + '-clear-all'\"\n (click)=\"clearSelections(); $event.preventDefault()\"\n >\n {{ 'skyux_list_multiselect_clear_all' | skyLibResources }}\n </button>\n</ng-template>\n\n<ng-template #showSelectedTemplate>\n <sky-checkbox\n [attr.id]=\"multiselectToolbarId + '-show-selected'\"\n [checked]=\"showOnlySelected\"\n (change)=\"changeVisibleItems($event)\"\n >\n <sky-checkbox-label>\n {{ 'skyux_list_mutliselect_show_selected' | skyLibResources }}\n </sky-checkbox-label>\n </sky-checkbox>\n</ng-template>\n", styles: [":host-context(sky-toolbar +) .sky-list-multiselect-toolbar ::ng-deep .sky-toolbar-container,:host-context(.sky-list-toolbar-search +) .sky-list-multiselect-toolbar ::ng-deep .sky-toolbar-container{border-top:none}\n"] }]
145
+ }], ctorParameters: function () { return [{ type: i1.ListState }, { type: i2.ListStateDispatcher }]; }, propDecorators: { showOnlySelected: [{
146
+ type: Input
147
+ }] } });
148
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1tdWx0aXNlbGVjdC10b29sYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9saXN0LWJ1aWxkZXIvc3JjL2xpYi9tb2R1bGVzL2xpc3QtdG9vbGJhci9saXN0LW11bHRpc2VsZWN0LXRvb2xiYXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xpc3QtYnVpbGRlci9zcmMvbGliL21vZHVsZXMvbGlzdC10b29sYmFyL2xpc3QtbXVsdGlzZWxlY3QtdG9vbGJhci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFJcEUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMvQixPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLEdBQUcsSUFBSSxhQUFhLEVBQ3BCLElBQUksRUFDSixTQUFTLEdBQ1YsTUFBTSxnQkFBZ0IsQ0FBQztBQUV4QixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDL0QsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdkUsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSw2QkFBNkIsRUFBRSxNQUFNLDZDQUE2QyxDQUFDOzs7Ozs7Ozs7QUFHNUYsSUFBSSxRQUFRLEdBQUcsQ0FBQyxDQUFDO0FBRWpCOztHQUVHO0FBTUgsTUFBTSxPQUFPLGtDQUFrQztJQVU3QyxZQUNVLEtBQWdCLEVBQ2hCLFVBQStCO1FBRC9CLFVBQUssR0FBTCxLQUFLLENBQVc7UUFDaEIsZUFBVSxHQUFWLFVBQVUsQ0FBcUI7UUFWbEMscUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBRXpC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c0IsSUFBSSxDQUFDLHNCQUFzQixDQUFDO1lBQ25ELENBQUMsQ0FBQyxzQkFBc0IsSUFBSSxzQkFBc0IsQ0FBQyxFQUNuRDtZQUNBLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFFRCx1Q0FBdUM7UUFDdkMsT0FBTyxzQkFBc0IsQ0FBQyxLQUFLLEtBQUssc0JBQXNCLENBQUMsS0FBSyxDQUFDO0lBQ3ZFLENBQUM7SUFFTyxnQkFBZ0IsQ0FDdEIsSUFBdUIsRUFDdkIsSUFBdUI7UUFFdkIsSUFBSSxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksS0FBSyxJQUFJLENBQUMsYUFBYSxDQUFDLElBQUksRUFBRTtZQUN2RCxPQUFPLEtBQUssQ0FBQztTQUNkO1FBRUQsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBQ2hELE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ3JELE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQzFDLDBCQUEwQjtZQUMxQixJQUFJLEtBQUssS0FBSyxJQUFJLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRTtnQkFDekMsT0FBTyxLQUFLLENBQUM7YUFDZDtTQUNGO1FBRUQsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDOzsrSEFuTFUsa0NBQWtDO21IQUFsQyxrQ0FBa0Msc0hDNUIvQywyakRBaURBOzJGRHJCYSxrQ0FBa0M7a0JBTDlDLFNBQVM7K0JBQ0UsOEJBQThCO2tJQU1qQyxnQkFBZ0I7c0JBRHRCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIElucHV0LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5Q2hlY2tib3hDaGFuZ2UgfSBmcm9tICdAc2t5dXgvZm9ybXMnO1xuaW1wb3J0IHsgTGlzdEl0ZW1Nb2RlbCB9IGZyb20gJ0Bza3l1eC9saXN0LWJ1aWxkZXItY29tbW9uJztcblxuaW1wb3J0IHsgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIG1hcCBhcyBvYnNlcnZhYmxlTWFwLFxuICB0YWtlLFxuICB0YWtlVW50aWwsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHsgTGlzdEZpbHRlck1vZGVsIH0gZnJvbSAnLi4vbGlzdC1maWx0ZXJzL2ZpbHRlci5tb2RlbCc7XG5pbXBvcnQgeyBMaXN0U3RhdGVEaXNwYXRjaGVyIH0gZnJvbSAnLi4vbGlzdC9zdGF0ZS9saXN0LXN0YXRlLnJ4c3RhdGUnO1xuaW1wb3J0IHsgTGlzdFN0YXRlIH0gZnJvbSAnLi4vbGlzdC9zdGF0ZS9saXN0LXN0YXRlLnN0YXRlLW5vZGUnO1xuaW1wb3J0IHsgTGlzdFBhZ2luZ1NldFBhZ2VOdW1iZXJBY3Rpb24gfSBmcm9tICcuLi9saXN0L3N0YXRlL3BhZ2luZy9zZXQtcGFnZS1udW1iZXIuYWN0aW9uJztcbmltcG9ydCB7IExpc3RTZWxlY3RlZE1vZGVsIH0gZnJvbSAnLi4vbGlzdC9zdGF0ZS9zZWxlY3RlZC9zZWxlY3RlZC5tb2RlbCc7XG5cbmxldCB1bmlxdWVJZCA9IDA7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1saXN0LW11bHRpc2VsZWN0LXRvb2xiYXInLFxuICB0ZW1wbGF0ZVVybDogJy4vbGlzdC1tdWx0aXNlbGVjdC10b29sYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vbGlzdC1tdWx0aXNlbGVjdC10b29sYmFyLmNvbXBvbmVudC5zY3NzJ10sXG59KVxuZXhwb3J0IGNsYXNzIFNreUxpc3RNdWx0aXNlbGVjdFRvb2xiYXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaG93T25seVNlbGVjdGVkID0gZmFsc2U7XG5cbiAgcHVibGljIG11bHRpc2VsZWN0VG9vbGJhcklkID0gYHNreS1saXN0LW11bHRpc2VsZWN0LXRvb2xiYXItJHt1bmlxdWVJZCsrfWA7XG5cbiAgcHJpdmF0ZSBzZWxlY3RlZElkTWFwID0gbmV3IE1hcDxzdHJpbmcsIGJvb2xlYW4+KCk7XG5cbiAgcHJpdmF0ZSBuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3QoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHN0YXRlOiBMaXN0U3RhdGUsXG4gICAgcHJpdmF0ZSBkaXNwYXRjaGVyOiBMaXN0U3RhdGVEaXNwYXRjaGVyXG4gICkge31cblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZVxuICAgICAgLnBpcGUoXG4gICAgICAgIG9ic2VydmFibGVNYXAoKHQpID0+IHQuc2VsZWN0ZWQuaXRlbSksXG4gICAgICAgIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpLFxuICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCh0aGlzLnNlbGVjdGVkTWFwRXF1YWwpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChtb2RlbDogTGlzdFNlbGVjdGVkTW9kZWwpID0+IHtcbiAgICAgICAgdGhpcy5zZWxlY3RlZElkTWFwID0gbW9kZWwuc2VsZWN0ZWRJZE1hcDtcblxuICAgICAgICBpZiAodGhpcy5zaG93T25seVNlbGVjdGVkKSB7XG4gICAgICAgICAgdGhpcy5yZWFwcGx5RmlsdGVyKHRydWUpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIC8vIElmICdzaG93LXNlbGVjdGVkJyBmaWx0ZXIgaXMgcHJvZ3JhbWF0aWNhbGx5IHNldCBmcm9tIGEgY2hpbGQgY29tcG9uZW50IChlLmcuIGNoZWNraWxzdCksXG4gICAgLy8gbWFrZSBzdXJlIHRoZSBjaGVja2VkIHN0YXRlIG9mIHRoZSAnc2hvdy1zZWxlY3RlZCcgY2hlY2tib3ggc3RheXMgaW4gc3luYy5cbiAgICB0aGlzLnN0YXRlXG4gICAgICAucGlwZShcbiAgICAgICAgb2JzZXJ2YWJsZU1hcCgodCkgPT4gdC5maWx0ZXJzKSxcbiAgICAgICAgdGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKHRoaXMuc2hvd1NlbGVjdGVkVmFsdWVzRXF1YWwpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChmaWx0ZXJzOiBMaXN0RmlsdGVyTW9kZWxbXSkgPT4ge1xuICAgICAgICBjb25zdCBzaG93U2VsZWN0ZWRGaWx0ZXIgPSBmaWx0ZXJzLmZpbmQoXG4gICAgICAgICAgKGZpbHRlcikgPT4gZmlsdGVyLm5hbWUgPT09ICdzaG93LXNlbGVjdGVkJ1xuICAgICAgICApO1xuICAgICAgICBpZiAoc2hvd1NlbGVjdGVkRmlsdGVyKSB7XG4gICAgICAgICAgdGhpcy5zaG93T25seVNlbGVjdGVkID0gc2hvd1NlbGVjdGVkRmlsdGVyLnZhbHVlID09PSAndHJ1ZSc7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMubmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgc2VsZWN0QWxsKCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGVcbiAgICAgIC5waXBlKFxuICAgICAgICBvYnNlcnZhYmxlTWFwKChzdGF0ZSkgPT4gc3RhdGUuaXRlbXMuaXRlbXMpLFxuICAgICAgICB0YWtlKDEpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChpdGVtcykgPT4ge1xuICAgICAgICB0aGlzLmRpc3BhdGNoZXIuc2V0U2VsZWN0ZWQoXG4gICAgICAgICAgaXRlbXMubWFwKChpdGVtKSA9PiBpdGVtLmlkKSxcbiAgICAgICAgICB0cnVlXG4gICAgICAgICk7XG4gICAgICAgIGlmICh0aGlzLnNob3dPbmx5U2VsZWN0ZWQpIHtcbiAgICAgICAgICB0aGlzLnJlYXBwbHlGaWx0ZXIodGhpcy5zaG93T25seVNlbGVjdGVkKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgY2xlYXJTZWxlY3Rpb25zKCk6IHZvaWQge1xuICAgIHRoaXMuc3RhdGVcbiAgICAgIC5waXBlKFxuICAgICAgICBvYnNlcnZhYmxlTWFwKChzdGF0ZSkgPT4gc3RhdGUuaXRlbXMuaXRlbXMpLFxuICAgICAgICB0YWtlKDEpXG4gICAgICApXG4gICAgICAuc3Vic2NyaWJlKChpdGVtcykgPT4ge1xuICAgICAgICB0aGlzLmRpc3BhdGNoZXIuc2V0U2VsZWN0ZWQoXG4gICAgICAgICAgaXRlbXMubWFwKChpdGVtKSA9PiBpdGVtLmlkKSxcbiAgICAgICAgICBmYWxzZVxuICAgICAgICApO1xuICAgICAgICBpZiAodGhpcy5zaG93T25seVNlbGVjdGVkKSB7XG4gICAgICAgICAgdGhpcy5yZWFwcGx5RmlsdGVyKHRoaXMuc2hvd09ubHlTZWxlY3RlZCk7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICB9XG5cbiAgcHVibGljIGNoYW5nZVZpc2libGVJdGVtcyhjaGFuZ2U6IFNreUNoZWNrYm94Q2hhbmdlKTogdm9pZCB7XG4gICAgdGhpcy5zaG93T25seVNlbGVjdGVkID0gY2hhbmdlLmNoZWNrZWQ7XG4gICAgdGhpcy5yZWFwcGx5RmlsdGVyKGNoYW5nZS5jaGVja2VkKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVhcHBseUZpbHRlcihpc1NlbGVjdGVkOiBib29sZWFuKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0ZVxuICAgICAgLnBpcGUoXG4gICAgICAgIG9ic2VydmFibGVNYXAoKHN0YXRlKSA9PiBzdGF0ZS5maWx0ZXJzKSxcbiAgICAgICAgdGFrZSgxKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoZmlsdGVyczogTGlzdEZpbHRlck1vZGVsW10pID0+IHtcbiAgICAgICAgZmlsdGVycyA9IGZpbHRlcnMuZmlsdGVyKChmaWx0ZXIpID0+IGZpbHRlci5uYW1lICE9PSAnc2hvdy1zZWxlY3RlZCcpO1xuICAgICAgICBmaWx0ZXJzLnB1c2godGhpcy5nZXRTaG93U2VsZWN0ZWRGaWx0ZXIoaXNTZWxlY3RlZCkpO1xuICAgICAgICB0aGlzLmRpc3BhdGNoZXIuZmlsdGVyc1VwZGF0ZShmaWx0ZXJzKTtcbiAgICAgIH0pO1xuXG4gICAgLy8gSWYgXCJzaG93IHNlbGVjdGVkXCIgaXMgY2hlY2tlZCBhbmQgcGFnaW5nIGlzIGVuYWJsZWQsIGdvIHRvIHBhZ2Ugb25lLlxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBlbHNlICovXG4gICAgaWYgKGlzU2VsZWN0ZWQpIHtcbiAgICAgIHRoaXMuc3RhdGUucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKGN1cnJlbnRTdGF0ZSkgPT4ge1xuICAgICAgICBpZiAoXG4gICAgICAgICAgY3VycmVudFN0YXRlLnBhZ2luZy5wYWdlTnVtYmVyICYmXG4gICAgICAgICAgY3VycmVudFN0YXRlLnBhZ2luZy5wYWdlTnVtYmVyICE9PSAxXG4gICAgICAgICkge1xuICAgICAgICAgIHRoaXMuZGlzcGF0Y2hlci5uZXh0KG5ldyBMaXN0UGFnaW5nU2V0UGFnZU51bWJlckFjdGlvbihOdW1iZXIoMSkpKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICAgIHRoaXMuZGlzcGF0Y2hlci50b29sYmFyU2V0RGlzYWJsZWQoaXNTZWxlY3RlZCk7XG4gIH1cblxuICBwcml2YXRlIGdldFNob3dTZWxlY3RlZEZpbHRlcihpc1NlbGVjdGVkOiBib29sZWFuKTogTGlzdEZpbHRlck1vZGVsIHtcbiAgICByZXR1cm4gbmV3IExpc3RGaWx0ZXJNb2RlbCh7XG4gICAgICBuYW1lOiAnc2hvdy1zZWxlY3RlZCcsXG4gICAgICB2YWx1ZTogaXNTZWxlY3RlZC50b1N0cmluZygpLFxuICAgICAgZmlsdGVyRnVuY3Rpb246IChtb2RlbDogTGlzdEl0ZW1Nb2RlbCwgc2hvd09ubHlTZWxlY3RlZDogYm9vbGVhbikgPT4ge1xuICAgICAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgZWxzZSAqL1xuICAgICAgICBpZiAoc2hvd09ubHlTZWxlY3RlZC50b1N0cmluZygpICE9PSBmYWxzZS50b1N0cmluZygpKSB7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuc2VsZWN0ZWRJZE1hcC5nZXQobW9kZWwuaWQpO1xuICAgICAgICB9XG4gICAgICB9LFxuICAgICAgZGVmYXVsdFZhbHVlOiBmYWxzZS50b1N0cmluZygpLFxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBzaG93U2VsZWN0ZWRWYWx1ZXNFcXVhbChcbiAgICBwcmV2OiBMaXN0RmlsdGVyTW9kZWxbXSxcbiAgICBuZXh0OiBMaXN0RmlsdGVyTW9kZWxbXVxuICApOiBib29sZWFuIHtcbiAgICBjb25zdCBwcmV2U2hvd1NlbGVjdGVkRmlsdGVyID0gcHJldi5maW5kKFxuICAgICAgKGZpbHRlcikgPT4gZmlsdGVyLm5hbWUgPT09ICdzaG93LXNlbGVjdGVkJ1xuICAgICk7XG4gICAgY29uc3QgbmV4dFNob3dTZWxlY3RlZEZpbHRlciA9IG5leHQuZmluZChcbiAgICAgIChmaWx0ZXIpID0+IGZpbHRlci5uYW1lID09PSAnc2hvdy1zZWxlY3RlZCdcbiAgICApO1xuXG4gICAgLy8gQm90aCB1bmRlZmluZWQuXG4gICAgaWYgKCFwcmV2U2hvd1NlbGVjdGVkRmlsdGVyICYmICFuZXh0U2hvd1NlbGVjdGVkRmlsdGVyKSB7XG4gICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG5cbiAgICAvLyBPbmx5IG9uZSB1bmRlZmluZWQuXG4gICAgaWYgKFxuICAgICAgKHByZXZTaG93U2VsZWN0ZWRGaWx0ZXIgJiYgIW5leHRTaG93U2VsZWN0ZWRGaWx0ZXIpIHx8XG4gICAgICAoIXByZXZTaG93U2VsZWN0ZWRGaWx0ZXIgJiYgbmV4dFNob3dTZWxlY3RlZEZpbHRlcilcbiAgICApIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICAvLyBEZWZpbmVkLCBidXQgd2l0aCBkaWZmZXJlbnQgXCJ2YWx1ZVwiLlxuICAgIHJldHVybiBwcmV2U2hvd1NlbGVjdGVkRmlsdGVyLnZhbHVlID09PSBuZXh0U2hvd1NlbGVjdGVkRmlsdGVyLnZhbHVlO1xuICB9XG5cbiAgcHJpdmF0ZSBzZWxlY3RlZE1hcEVxdWFsKFxuICAgIHByZXY6IExpc3RTZWxlY3RlZE1vZGVsLFxuICAgIG5leHQ6IExpc3RTZWxlY3RlZE1vZGVsXG4gICk6IGJvb2xlYW4ge1xuICAgIGlmIChwcmV2LnNlbGVjdGVkSWRNYXAuc2l6ZSAhPT0gbmV4dC5zZWxlY3RlZElkTWFwLnNpemUpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IG5leHQuc2VsZWN0ZWRJZE1hcC5zaXplOyBpKyspIHtcbiAgICAgIGNvbnN0IGtleSA9IEFycmF5LmZyb20obmV4dC5zZWxlY3RlZElkTWFwLmtleXMoKSlbaV07XG4gICAgICBjb25zdCB2YWx1ZSA9IG5leHQuc2VsZWN0ZWRJZE1hcC5nZXQoa2V5KTtcbiAgICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgICBpZiAodmFsdWUgIT09IHByZXYuc2VsZWN0ZWRJZE1hcC5nZXQoa2V5KSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHRydWU7XG4gIH1cbn1cbiIsIjxza3ktdG9vbGJhciBjbGFzcz1cInNreS1saXN0LW11bHRpc2VsZWN0LXRvb2xiYXJcIj5cbiAgPHNreS10b29sYmFyLXNlY3Rpb24+XG4gICAgPHNreS10b29sYmFyLWl0ZW0+XG4gICAgICA8c2t5LWxpc3QtdG9vbGJhci1pdGVtLXJlbmRlcmVyIFt0ZW1wbGF0ZV09XCJzZWxlY3RBbGxUZW1wbGF0ZVwiPlxuICAgICAgPC9za3ktbGlzdC10b29sYmFyLWl0ZW0tcmVuZGVyZXI+XG4gICAgPC9za3ktdG9vbGJhci1pdGVtPlxuICAgIDxza3ktdG9vbGJhci1pdGVtPlxuICAgICAgPHNreS1saXN0LXRvb2xiYXItaXRlbS1yZW5kZXJlciBbdGVtcGxhdGVdPVwiY2xlYXJTZWxlY3Rpb25zVGVtcGxhdGVcIj5cbiAgICAgIDwvc2t5LWxpc3QtdG9vbGJhci1pdGVtLXJlbmRlcmVyPlxuICAgIDwvc2t5LXRvb2xiYXItaXRlbT5cbiAgICA8c2t5LXRvb2xiYXItdmlldy1hY3Rpb25zPlxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cInNob3dTZWxlY3RlZFRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9za3ktdG9vbGJhci12aWV3LWFjdGlvbnM+XG4gIDwvc2t5LXRvb2xiYXItc2VjdGlvbj5cbjwvc2t5LXRvb2xiYXI+XG5cbjxuZy10ZW1wbGF0ZSAjc2VsZWN0QWxsVGVtcGxhdGU+XG4gIDxidXR0b25cbiAgICBjbGFzcz1cInNreS1idG4gc2t5LWJ0bi1saW5rXCJcbiAgICB0eXBlPVwiYnV0dG9uXCJcbiAgICBbYXR0ci5pZF09XCJtdWx0aXNlbGVjdFRvb2xiYXJJZCArICctc2VsZWN0LWFsbCdcIlxuICAgIChjbGljayk9XCJzZWxlY3RBbGwoKTsgJGV2ZW50LnByZXZlbnREZWZhdWx0KClcIlxuICA+XG4gICAge3sgJ3NreXV4X2xpc3RfbXV0bGlzZWxlY3Rfc2VsZWN0X2FsbCcgfCBza3lMaWJSZXNvdXJjZXMgfX1cbiAgPC9idXR0b24+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI2NsZWFyU2VsZWN0aW9uc1RlbXBsYXRlPlxuICA8YnV0dG9uXG4gICAgY2xhc3M9XCJza3ktYnRuIHNreS1idG4tbGlua1wiXG4gICAgdHlwZT1cImJ1dHRvblwiXG4gICAgW2F0dHIuaWRdPVwibXVsdGlzZWxlY3RUb29sYmFySWQgKyAnLWNsZWFyLWFsbCdcIlxuICAgIChjbGljayk9XCJjbGVhclNlbGVjdGlvbnMoKTsgJGV2ZW50LnByZXZlbnREZWZhdWx0KClcIlxuICA+XG4gICAge3sgJ3NreXV4X2xpc3RfbXVsdGlzZWxlY3RfY2xlYXJfYWxsJyB8IHNreUxpYlJlc291cmNlcyB9fVxuICA8L2J1dHRvbj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjc2hvd1NlbGVjdGVkVGVtcGxhdGU+XG4gIDxza3ktY2hlY2tib3hcbiAgICBbYXR0ci5pZF09XCJtdWx0aXNlbGVjdFRvb2xiYXJJZCArICctc2hvdy1zZWxlY3RlZCdcIlxuICAgIFtjaGVja2VkXT1cInNob3dPbmx5U2VsZWN0ZWRcIlxuICAgIChjaGFuZ2UpPVwiY2hhbmdlVmlzaWJsZUl0ZW1zKCRldmVudClcIlxuICA+XG4gICAgPHNreS1jaGVja2JveC1sYWJlbD5cbiAgICAgIHt7ICdza3l1eF9saXN0X211dGxpc2VsZWN0X3Nob3dfc2VsZWN0ZWQnIHwgc2t5TGliUmVzb3VyY2VzIH19XG4gICAgPC9za3ktY2hlY2tib3gtbGFiZWw+XG4gIDwvc2t5LWNoZWNrYm94PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -0,0 +1,30 @@
1
+ import { Component, TemplateRef, ViewChild, } from '@angular/core';
2
+ import { SkyListSecondaryActionsService } from './list-secondary-actions.service';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "./list-secondary-actions.service";
5
+ /**
6
+ * Adds actions to the secondary actions dropdown in the list toolbar.
7
+ */
8
+ export class SkyListSecondaryActionComponent {
9
+ constructor(actionService) {
10
+ this.actionService = actionService;
11
+ }
12
+ ngAfterContentInit() {
13
+ this.actionService.addSecondaryAction({
14
+ template: this.templateRef,
15
+ });
16
+ }
17
+ }
18
+ SkyListSecondaryActionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListSecondaryActionComponent, deps: [{ token: i1.SkyListSecondaryActionsService }], target: i0.ɵɵFactoryTarget.Component });
19
+ SkyListSecondaryActionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SkyListSecondaryActionComponent, selector: "sky-list-secondary-action", viewQueries: [{ propertyName: "templateRef", first: true, predicate: ["listSecondaryAction"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: "<ng-template #listSecondaryAction>\n <ng-content></ng-content>\n</ng-template>\n" });
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListSecondaryActionComponent, decorators: [{
21
+ type: Component,
22
+ args: [{ selector: 'sky-list-secondary-action', template: "<ng-template #listSecondaryAction>\n <ng-content></ng-content>\n</ng-template>\n" }]
23
+ }], ctorParameters: function () { return [{ type: i1.SkyListSecondaryActionsService }]; }, propDecorators: { templateRef: [{
24
+ type: ViewChild,
25
+ args: ['listSecondaryAction', {
26
+ read: TemplateRef,
27
+ static: true,
28
+ }]
29
+ }] } });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1zZWNvbmRhcnktYWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9saXN0LWJ1aWxkZXIvc3JjL2xpYi9tb2R1bGVzL2xpc3QtdG9vbGJhci9saXN0LXNlY29uZGFyeS1hY3Rpb25zL2xpc3Qtc2Vjb25kYXJ5LWFjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGlzdC1idWlsZGVyL3NyYy9saWIvbW9kdWxlcy9saXN0LXRvb2xiYXIvbGlzdC1zZWNvbmRhcnktYWN0aW9ucy9saXN0LXNlY29uZGFyeS1hY3Rpb24uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFNBQVMsRUFDVCxXQUFXLEVBQ1gsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7QUFFbEY7O0dBRUc7QUFLSCxNQUFNLE9BQU8sK0JBQStCO0lBTzFDLFlBQW9CLGFBQTZDO1FBQTdDLGtCQUFhLEdBQWIsYUFBYSxDQUFnQztJQUFHLENBQUM7SUFFOUQsa0JBQWtCO1FBQ3ZCLElBQUksQ0FBQyxhQUFhLENBQUMsa0JBQWtCLENBQUM7WUFDcEMsUUFBUSxFQUFFLElBQUksQ0FBQyxXQUFXO1NBQzNCLENBQUMsQ0FBQztJQUNMLENBQUM7OzRIQWJVLCtCQUErQjtnSEFBL0IsK0JBQStCLGdLQUVsQyxXQUFXLDJDQ2xCckIsbUZBR0E7MkZEYWEsK0JBQStCO2tCQUozQyxTQUFTOytCQUNFLDJCQUEyQjtxSEFRN0IsV0FBVztzQkFKbEIsU0FBUzt1QkFBQyxxQkFBcUIsRUFBRTt3QkFDaEMsSUFBSSxFQUFFLFdBQVc7d0JBQ2pCLE1BQU0sRUFBRSxJQUFJO3FCQUNiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ29tcG9uZW50LFxuICBUZW1wbGF0ZVJlZixcbiAgVmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgU2t5TGlzdFNlY29uZGFyeUFjdGlvbnNTZXJ2aWNlIH0gZnJvbSAnLi9saXN0LXNlY29uZGFyeS1hY3Rpb25zLnNlcnZpY2UnO1xuXG4vKipcbiAqIEFkZHMgYWN0aW9ucyB0byB0aGUgc2Vjb25kYXJ5IGFjdGlvbnMgZHJvcGRvd24gaW4gdGhlIGxpc3QgdG9vbGJhci5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWxpc3Qtc2Vjb25kYXJ5LWFjdGlvbicsXG4gIHRlbXBsYXRlVXJsOiAnLi9saXN0LXNlY29uZGFyeS1hY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lMaXN0U2Vjb25kYXJ5QWN0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJDb250ZW50SW5pdCB7XG4gIEBWaWV3Q2hpbGQoJ2xpc3RTZWNvbmRhcnlBY3Rpb24nLCB7XG4gICAgcmVhZDogVGVtcGxhdGVSZWYsXG4gICAgc3RhdGljOiB0cnVlLFxuICB9KVxuICBwcml2YXRlIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+O1xuXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgYWN0aW9uU2VydmljZTogU2t5TGlzdFNlY29uZGFyeUFjdGlvbnNTZXJ2aWNlKSB7fVxuXG4gIHB1YmxpYyBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgdGhpcy5hY3Rpb25TZXJ2aWNlLmFkZFNlY29uZGFyeUFjdGlvbih7XG4gICAgICB0ZW1wbGF0ZTogdGhpcy50ZW1wbGF0ZVJlZixcbiAgICB9KTtcbiAgfVxufVxuIiwiPG5nLXRlbXBsYXRlICNsaXN0U2Vjb25kYXJ5QWN0aW9uPlxuICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1zZWNvbmRhcnktYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xpc3QtYnVpbGRlci9zcmMvbGliL21vZHVsZXMvbGlzdC10b29sYmFyL2xpc3Qtc2Vjb25kYXJ5LWFjdGlvbnMvbGlzdC1zZWNvbmRhcnktYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgaW50ZXJmYWNlIFNreUxpc3RTZWNvbmRhcnlBY3Rpb24ge1xuICB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55Pjtcbn1cbiJdfQ==
@@ -0,0 +1,45 @@
1
+ import { ChangeDetectionStrategy, ChangeDetectorRef, Component, } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import { distinctUntilChanged, takeUntil } from 'rxjs/operators';
4
+ import { SkyListSecondaryActionsService } from './list-secondary-actions.service';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "./list-secondary-actions.service";
7
+ import * as i2 from "@skyux/popovers";
8
+ import * as i3 from "@skyux/indicators";
9
+ import * as i4 from "@angular/common";
10
+ import * as i5 from "@skyux/i18n";
11
+ // Note: this component is needed to ensure any reactive styles placed in the element have
12
+ // their host to be based off of. Without this component the host is not written via the dispatcher.
13
+ /**
14
+ * @internal
15
+ */
16
+ export class SkyListSecondaryActionsHostComponent {
17
+ constructor(changeDetector, actionService) {
18
+ this.changeDetector = changeDetector;
19
+ this.actionService = actionService;
20
+ this.dropdownHidden = false;
21
+ this.actions = [];
22
+ this.ngUnsubscribe = new Subject();
23
+ }
24
+ ngOnInit() {
25
+ this.actionService.actionsStream
26
+ .pipe(takeUntil(this.ngUnsubscribe), distinctUntilChanged())
27
+ .subscribe((actions) => {
28
+ const hasSecondaryActions = actions.length > 0;
29
+ this.dropdownHidden = !hasSecondaryActions;
30
+ this.actions = actions;
31
+ this.changeDetector.detectChanges();
32
+ });
33
+ }
34
+ ngOnDestroy() {
35
+ this.ngUnsubscribe.next();
36
+ this.ngUnsubscribe.complete();
37
+ }
38
+ }
39
+ SkyListSecondaryActionsHostComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListSecondaryActionsHostComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.SkyListSecondaryActionsService }], target: i0.ɵɵFactoryTarget.Component });
40
+ SkyListSecondaryActionsHostComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SkyListSecondaryActionsHostComponent, selector: "sky-list-secondary-actions-host", ngImport: i0, template: "<div\n class=\"sky-list-secondary-actions\"\n [ngClass]=\"{ 'sky-list-secondary-actions-hidden': dropdownHidden }\"\n>\n <sky-dropdown\n [attr.title]=\"'skyux_list_show_secondary_actions_button' | skyLibResources\"\n [label]=\"'skyux_list_show_secondary_actions_button' | skyLibResources\"\n >\n <sky-dropdown-button>\n <sky-icon icon=\"ellipsis-h\"> </sky-icon>\n <span class=\"sky-list-secondary-actions-btn-text\">\n {{ 'skyux_list_show_secondary_actions_button' | skyLibResources }}\n </span>\n </sky-dropdown-button>\n <sky-dropdown-menu>\n <sky-dropdown-item *ngFor=\"let action of actions\">\n <ng-container *ngTemplateOutlet=\"action.template\"> </ng-container>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n </sky-dropdown>\n</div>\n<ng-content> </ng-content>\n", styles: [".sky-list-secondary-actions ::ng-deep .sky-dropdown-button-type-select{padding:6px 12px}.sky-list-secondary-actions ::ng-deep .sky-dropdown-button-type-select sky-icon[icon=ellipsis-h]{font-size:1.33333em;line-height:.75em;vertical-align:-15%}.sky-list-secondary-actions-hidden{display:none}:host .sky-list-secondary-actions-btn-text{display:none}:host .sky-list-secondary-actions ::ng-deep .sky-dropdown-caret{display:none}:host-context(.sky-responsive-container-xs) .sky-list-secondary-actions-btn-text,:host-context(.sky-responsive-container-sm) .sky-list-secondary-actions-btn-text,:host-context(.sky-responsive-container-md) .sky-list-secondary-actions-btn-text,:host-context(.sky-responsive-container-lg) .sky-list-secondary-actions-btn-text{display:none}:host-context(.sky-responsive-container-xs) .sky-list-secondary-actions ::ng-deep .sky-dropdown-caret,:host-context(.sky-responsive-container-sm) .sky-list-secondary-actions ::ng-deep .sky-dropdown-caret,:host-context(.sky-responsive-container-md) .sky-list-secondary-actions ::ng-deep .sky-dropdown-caret,:host-context(.sky-responsive-container-lg) .sky-list-secondary-actions ::ng-deep .sky-dropdown-caret{display:none}@media (min-width: 768px){:host .sky-list-secondary-actions-btn-text{display:inline}:host .sky-list-secondary-actions ::ng-deep .sky-dropdown-caret{display:inline-block}}:host-context(.sky-responsive-container-sm) .sky-list-secondary-actions-btn-text,:host-context(.sky-responsive-container-md) .sky-list-secondary-actions-btn-text,:host-context(.sky-responsive-container-lg) .sky-list-secondary-actions-btn-text{display:inline}:host-context(.sky-responsive-container-sm) .sky-list-secondary-actions ::ng-deep .sky-dropdown-caret,:host-context(.sky-responsive-container-md) .sky-list-secondary-actions ::ng-deep .sky-dropdown-caret,:host-context(.sky-responsive-container-lg) .sky-list-secondary-actions ::ng-deep .sky-dropdown-caret{display:inline-block}\n"], components: [{ type: i2.λ3, selector: "sky-dropdown", inputs: ["buttonStyle", "buttonType", "disabled", "dismissOnBlur", "label", "horizontalAlignment", "messageStream", "title", "trigger"] }, { type: i2.λ2, selector: "sky-dropdown-button" }, { type: i3.λ4, selector: "sky-icon", inputs: ["icon", "iconType", "size", "fixedWidth", "variant"] }, { type: i2.λ4, selector: "sky-dropdown-menu", inputs: ["ariaLabelledBy", "ariaRole", "useNativeFocus"], outputs: ["menuChanges"] }, { type: i2.λ1, selector: "sky-dropdown-item", inputs: ["ariaRole"] }], directives: [{ type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "skyLibResources": i5.SkyLibResourcesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
41
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListSecondaryActionsHostComponent, decorators: [{
42
+ type: Component,
43
+ args: [{ selector: 'sky-list-secondary-actions-host', changeDetection: ChangeDetectionStrategy.OnPush, template: "<div\n class=\"sky-list-secondary-actions\"\n [ngClass]=\"{ 'sky-list-secondary-actions-hidden': dropdownHidden }\"\n>\n <sky-dropdown\n [attr.title]=\"'skyux_list_show_secondary_actions_button' | skyLibResources\"\n [label]=\"'skyux_list_show_secondary_actions_button' | skyLibResources\"\n >\n <sky-dropdown-button>\n <sky-icon icon=\"ellipsis-h\"> </sky-icon>\n <span class=\"sky-list-secondary-actions-btn-text\">\n {{ 'skyux_list_show_secondary_actions_button' | skyLibResources }}\n </span>\n </sky-dropdown-button>\n <sky-dropdown-menu>\n <sky-dropdown-item *ngFor=\"let action of actions\">\n <ng-container *ngTemplateOutlet=\"action.template\"> </ng-container>\n </sky-dropdown-item>\n </sky-dropdown-menu>\n </sky-dropdown>\n</div>\n<ng-content> </ng-content>\n", styles: [".sky-list-secondary-actions ::ng-deep .sky-dropdown-button-type-select{padding:6px 12px}.sky-list-secondary-actions ::ng-deep .sky-dropdown-button-type-select sky-icon[icon=ellipsis-h]{font-size:1.33333em;line-height:.75em;vertical-align:-15%}.sky-list-secondary-actions-hidden{display:none}:host .sky-list-secondary-actions-btn-text{display:none}:host .sky-list-secondary-actions ::ng-deep .sky-dropdown-caret{display:none}:host-context(.sky-responsive-container-xs) .sky-list-secondary-actions-btn-text,:host-context(.sky-responsive-container-sm) .sky-list-secondary-actions-btn-text,:host-context(.sky-responsive-container-md) .sky-list-secondary-actions-btn-text,:host-context(.sky-responsive-container-lg) .sky-list-secondary-actions-btn-text{display:none}:host-context(.sky-responsive-container-xs) .sky-list-secondary-actions ::ng-deep .sky-dropdown-caret,:host-context(.sky-responsive-container-sm) .sky-list-secondary-actions ::ng-deep .sky-dropdown-caret,:host-context(.sky-responsive-container-md) .sky-list-secondary-actions ::ng-deep .sky-dropdown-caret,:host-context(.sky-responsive-container-lg) .sky-list-secondary-actions ::ng-deep .sky-dropdown-caret{display:none}@media (min-width: 768px){:host .sky-list-secondary-actions-btn-text{display:inline}:host .sky-list-secondary-actions ::ng-deep .sky-dropdown-caret{display:inline-block}}:host-context(.sky-responsive-container-sm) .sky-list-secondary-actions-btn-text,:host-context(.sky-responsive-container-md) .sky-list-secondary-actions-btn-text,:host-context(.sky-responsive-container-lg) .sky-list-secondary-actions-btn-text{display:inline}:host-context(.sky-responsive-container-sm) .sky-list-secondary-actions ::ng-deep .sky-dropdown-caret,:host-context(.sky-responsive-container-md) .sky-list-secondary-actions ::ng-deep .sky-dropdown-caret,:host-context(.sky-responsive-container-lg) .sky-list-secondary-actions ::ng-deep .sky-dropdown-caret{display:inline-block}\n"] }]
44
+ }], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }, { type: i1.SkyListSecondaryActionsService }]; } });
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1zZWNvbmRhcnktYWN0aW9ucy1ob3N0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9saXN0LWJ1aWxkZXIvc3JjL2xpYi9tb2R1bGVzL2xpc3QtdG9vbGJhci9saXN0LXNlY29uZGFyeS1hY3Rpb25zL2xpc3Qtc2Vjb25kYXJ5LWFjdGlvbnMtaG9zdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGlzdC1idWlsZGVyL3NyYy9saWIvbW9kdWxlcy9saXN0LXRvb2xiYXIvbGlzdC1zZWNvbmRhcnktYWN0aW9ucy9saXN0LXNlY29uZGFyeS1hY3Rpb25zLWhvc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxHQUdWLE1BQU0sZUFBZSxDQUFDO0FBRXZCLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDL0IsT0FBTyxFQUFFLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBR2pFLE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDOzs7Ozs7O0FBRWxGLDBGQUEwRjtBQUMxRixvR0FBb0c7QUFFcEc7O0dBRUc7QUFPSCxNQUFNLE9BQU8sb0NBQW9DO0lBTS9DLFlBQ1UsY0FBaUMsRUFDakMsYUFBNkM7UUFEN0MsbUJBQWMsR0FBZCxjQUFjLENBQW1CO1FBQ2pDLGtCQUFhLEdBQWIsYUFBYSxDQUFnQztRQVBoRCxtQkFBYyxHQUFHLEtBQUssQ0FBQztRQUN2QixZQUFPLEdBQVUsRUFBRSxDQUFDO1FBRW5CLGtCQUFhLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztJQUtuQyxDQUFDO0lBRUcsUUFBUTtRQUNiLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYTthQUM3QixJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsRUFBRSxvQkFBb0IsRUFBRSxDQUFDO2FBQzNELFNBQVMsQ0FBQyxDQUFDLE9BQWlDLEVBQUUsRUFBRTtZQUMvQyxNQUFNLG1CQUFtQixHQUFHLE9BQU8sQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1lBQy9DLElBQUksQ0FBQyxjQUFjLEdBQUcsQ0FBQyxtQkFBbUIsQ0FBQztZQUMzQyxJQUFJLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQztZQUN2QixJQUFJLENBQUMsY0FBYyxDQUFDLGFBQWEsRUFBRSxDQUFDO1FBQ3RDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVNLFdBQVc7UUFDaEIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUMxQixJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2hDLENBQUM7O2lJQXpCVSxvQ0FBb0M7cUhBQXBDLG9DQUFvQyx1RUMxQmpELG0wQkFzQkE7MkZESWEsb0NBQW9DO2tCQU5oRCxTQUFTOytCQUNFLGlDQUFpQyxtQkFHMUIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgQ29tcG9uZW50LFxuICBPbkRlc3Ryb3ksXG4gIE9uSW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5cbmltcG9ydCB7IFNreUxpc3RTZWNvbmRhcnlBY3Rpb24gfSBmcm9tICcuL2xpc3Qtc2Vjb25kYXJ5LWFjdGlvbic7XG5pbXBvcnQgeyBTa3lMaXN0U2Vjb25kYXJ5QWN0aW9uc1NlcnZpY2UgfSBmcm9tICcuL2xpc3Qtc2Vjb25kYXJ5LWFjdGlvbnMuc2VydmljZSc7XG5cbi8vIE5vdGU6IHRoaXMgY29tcG9uZW50IGlzIG5lZWRlZCB0byBlbnN1cmUgYW55IHJlYWN0aXZlIHN0eWxlcyBwbGFjZWQgaW4gdGhlIGVsZW1lbnQgaGF2ZVxuLy8gdGhlaXIgaG9zdCB0byBiZSBiYXNlZCBvZmYgb2YuIFdpdGhvdXQgdGhpcyBjb21wb25lbnQgdGhlIGhvc3QgaXMgbm90IHdyaXR0ZW4gdmlhIHRoZSBkaXNwYXRjaGVyLlxuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdza3ktbGlzdC1zZWNvbmRhcnktYWN0aW9ucy1ob3N0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xpc3Qtc2Vjb25kYXJ5LWFjdGlvbnMtaG9zdC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2xpc3Qtc2Vjb25kYXJ5LWFjdGlvbnMtaG9zdC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgU2t5TGlzdFNlY29uZGFyeUFjdGlvbnNIb3N0Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwdWJsaWMgZHJvcGRvd25IaWRkZW4gPSBmYWxzZTtcbiAgcHVibGljIGFjdGlvbnM6IGFueVtdID0gW107XG5cbiAgcHJpdmF0ZSBuZ1Vuc3Vic2NyaWJlID0gbmV3IFN1YmplY3QoKTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGNoYW5nZURldGVjdG9yOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwcml2YXRlIGFjdGlvblNlcnZpY2U6IFNreUxpc3RTZWNvbmRhcnlBY3Rpb25zU2VydmljZVxuICApIHt9XG5cbiAgcHVibGljIG5nT25Jbml0KCkge1xuICAgIHRoaXMuYWN0aW9uU2VydmljZS5hY3Rpb25zU3RyZWFtXG4gICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSwgZGlzdGluY3RVbnRpbENoYW5nZWQoKSlcbiAgICAgIC5zdWJzY3JpYmUoKGFjdGlvbnM6IFNreUxpc3RTZWNvbmRhcnlBY3Rpb25bXSkgPT4ge1xuICAgICAgICBjb25zdCBoYXNTZWNvbmRhcnlBY3Rpb25zID0gYWN0aW9ucy5sZW5ndGggPiAwO1xuICAgICAgICB0aGlzLmRyb3Bkb3duSGlkZGVuID0gIWhhc1NlY29uZGFyeUFjdGlvbnM7XG4gICAgICAgIHRoaXMuYWN0aW9ucyA9IGFjdGlvbnM7XG4gICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfSk7XG4gIH1cblxuICBwdWJsaWMgbmdPbkRlc3Ryb3koKSB7XG4gICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLm5leHQoKTtcbiAgICB0aGlzLm5nVW5zdWJzY3JpYmUuY29tcGxldGUoKTtcbiAgfVxufVxuIiwiPGRpdlxuICBjbGFzcz1cInNreS1saXN0LXNlY29uZGFyeS1hY3Rpb25zXCJcbiAgW25nQ2xhc3NdPVwieyAnc2t5LWxpc3Qtc2Vjb25kYXJ5LWFjdGlvbnMtaGlkZGVuJzogZHJvcGRvd25IaWRkZW4gfVwiXG4+XG4gIDxza3ktZHJvcGRvd25cbiAgICBbYXR0ci50aXRsZV09XCInc2t5dXhfbGlzdF9zaG93X3NlY29uZGFyeV9hY3Rpb25zX2J1dHRvbicgfCBza3lMaWJSZXNvdXJjZXNcIlxuICAgIFtsYWJlbF09XCInc2t5dXhfbGlzdF9zaG93X3NlY29uZGFyeV9hY3Rpb25zX2J1dHRvbicgfCBza3lMaWJSZXNvdXJjZXNcIlxuICA+XG4gICAgPHNreS1kcm9wZG93bi1idXR0b24+XG4gICAgICA8c2t5LWljb24gaWNvbj1cImVsbGlwc2lzLWhcIj4gPC9za3ktaWNvbj5cbiAgICAgIDxzcGFuIGNsYXNzPVwic2t5LWxpc3Qtc2Vjb25kYXJ5LWFjdGlvbnMtYnRuLXRleHRcIj5cbiAgICAgICAge3sgJ3NreXV4X2xpc3Rfc2hvd19zZWNvbmRhcnlfYWN0aW9uc19idXR0b24nIHwgc2t5TGliUmVzb3VyY2VzIH19XG4gICAgICA8L3NwYW4+XG4gICAgPC9za3ktZHJvcGRvd24tYnV0dG9uPlxuICAgIDxza3ktZHJvcGRvd24tbWVudT5cbiAgICAgIDxza3ktZHJvcGRvd24taXRlbSAqbmdGb3I9XCJsZXQgYWN0aW9uIG9mIGFjdGlvbnNcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImFjdGlvbi50ZW1wbGF0ZVwiPiA8L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvc2t5LWRyb3Bkb3duLWl0ZW0+XG4gICAgPC9za3ktZHJvcGRvd24tbWVudT5cbiAgPC9za3ktZHJvcGRvd24+XG48L2Rpdj5cbjxuZy1jb250ZW50PiA8L25nLWNvbnRlbnQ+XG4iXX0=
@@ -0,0 +1,40 @@
1
+ import { ChangeDetectionStrategy, Component, TemplateRef, ViewChild, } from '@angular/core';
2
+ import { ListStateDispatcher } from '../../list/state/list-state.rxstate';
3
+ import { ListToolbarItemModel } from '../../list/state/toolbar/toolbar-item.model';
4
+ import { SkyListSecondaryActionsService } from './list-secondary-actions.service';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "../../list/state/list-state.rxstate";
7
+ import * as i2 from "./list-secondary-actions-host.component";
8
+ /**
9
+ * Adds a dropdown to the list toolbar for secondary actions. If the dropdown does not
10
+ * include actions, the secondary actions dropdown is hidden.
11
+ */
12
+ export class SkyListSecondaryActionsComponent {
13
+ constructor(dispatcher) {
14
+ this.dispatcher = dispatcher;
15
+ this.actions = [];
16
+ this.secondaryActionsItemToolbarIndex = 5000;
17
+ }
18
+ ngAfterViewInit() {
19
+ const secondaryActionItem = new ListToolbarItemModel({
20
+ id: 'secondary-actions',
21
+ template: this.secondaryActionsTemplate,
22
+ location: 'center',
23
+ index: this.secondaryActionsItemToolbarIndex,
24
+ });
25
+ this.dispatcher.toolbarAddItems([secondaryActionItem]);
26
+ }
27
+ }
28
+ SkyListSecondaryActionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListSecondaryActionsComponent, deps: [{ token: i1.ListStateDispatcher }], target: i0.ɵɵFactoryTarget.Component });
29
+ SkyListSecondaryActionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SkyListSecondaryActionsComponent, selector: "sky-list-secondary-actions", providers: [SkyListSecondaryActionsService], viewQueries: [{ propertyName: "secondaryActionsTemplate", first: true, predicate: ["secondaryActions"], descendants: true, read: TemplateRef, static: true }], ngImport: i0, template: "<ng-template #secondaryActions>\n <sky-list-secondary-actions-host>\n <ng-content></ng-content>\n </sky-list-secondary-actions-host>\n</ng-template>\n", components: [{ type: i2.SkyListSecondaryActionsHostComponent, selector: "sky-list-secondary-actions-host" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
30
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListSecondaryActionsComponent, decorators: [{
31
+ type: Component,
32
+ args: [{ selector: 'sky-list-secondary-actions', providers: [SkyListSecondaryActionsService], changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template #secondaryActions>\n <sky-list-secondary-actions-host>\n <ng-content></ng-content>\n </sky-list-secondary-actions-host>\n</ng-template>\n" }]
33
+ }], ctorParameters: function () { return [{ type: i1.ListStateDispatcher }]; }, propDecorators: { secondaryActionsTemplate: [{
34
+ type: ViewChild,
35
+ args: ['secondaryActions', {
36
+ read: TemplateRef,
37
+ static: true,
38
+ }]
39
+ }] } });
40
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1zZWNvbmRhcnktYWN0aW9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGlzdC1idWlsZGVyL3NyYy9saWIvbW9kdWxlcy9saXN0LXRvb2xiYXIvbGlzdC1zZWNvbmRhcnktYWN0aW9ucy9saXN0LXNlY29uZGFyeS1hY3Rpb25zLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9saXN0LWJ1aWxkZXIvc3JjL2xpYi9tb2R1bGVzL2xpc3QtdG9vbGJhci9saXN0LXNlY29uZGFyeS1hY3Rpb25zL2xpc3Qtc2Vjb25kYXJ5LWFjdGlvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLHVCQUF1QixFQUN2QixTQUFTLEVBQ1QsV0FBVyxFQUNYLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQztBQUVuRixPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7OztBQUVsRjs7O0dBR0c7QUFPSCxNQUFNLE9BQU8sZ0NBQWdDO0lBVzNDLFlBQW9CLFVBQStCO1FBQS9CLGVBQVUsR0FBVixVQUFVLENBQXFCO1FBVjVDLFlBQU8sR0FBVSxFQUFFLENBQUM7UUFRbkIscUNBQWdDLEdBQUcsSUFBSSxDQUFDO0lBRU0sQ0FBQztJQUVoRCxlQUFlO1FBQ3BCLE1BQU0sbUJBQW1CLEdBQUcsSUFBSSxvQkFBb0IsQ0FBQztZQUNuRCxFQUFFLEVBQUUsbUJBQW1CO1lBQ3ZCLFFBQVEsRUFBRSxJQUFJLENBQUMsd0JBQXdCO1lBQ3ZDLFFBQVEsRUFBRSxRQUFRO1lBQ2xCLEtBQUssRUFBRSxJQUFJLENBQUMsZ0NBQWdDO1NBQzdDLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLENBQUMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDO0lBQ3pELENBQUM7OzZIQXRCVSxnQ0FBZ0M7aUhBQWhDLGdDQUFnQyxxREFIaEMsQ0FBQyw4QkFBOEIsQ0FBQyxtSUFPbkMsV0FBVywyQ0MzQnJCLDZKQUtBOzJGRGtCYSxnQ0FBZ0M7a0JBTjVDLFNBQVM7K0JBQ0UsNEJBQTRCLGFBRTNCLENBQUMsOEJBQThCLENBQUMsbUJBQzFCLHVCQUF1QixDQUFDLE1BQU07MEdBU3ZDLHdCQUF3QjtzQkFKL0IsU0FBUzt1QkFBQyxrQkFBa0IsRUFBRTt3QkFDN0IsSUFBSSxFQUFFLFdBQVc7d0JBQ2pCLE1BQU0sRUFBRSxJQUFJO3FCQUNiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQWZ0ZXJWaWV3SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IExpc3RTdGF0ZURpc3BhdGNoZXIgfSBmcm9tICcuLi8uLi9saXN0L3N0YXRlL2xpc3Qtc3RhdGUucnhzdGF0ZSc7XG5pbXBvcnQgeyBMaXN0VG9vbGJhckl0ZW1Nb2RlbCB9IGZyb20gJy4uLy4uL2xpc3Qvc3RhdGUvdG9vbGJhci90b29sYmFyLWl0ZW0ubW9kZWwnO1xuXG5pbXBvcnQgeyBTa3lMaXN0U2Vjb25kYXJ5QWN0aW9uc1NlcnZpY2UgfSBmcm9tICcuL2xpc3Qtc2Vjb25kYXJ5LWFjdGlvbnMuc2VydmljZSc7XG5cbi8qKlxuICogQWRkcyBhIGRyb3Bkb3duIHRvIHRoZSBsaXN0IHRvb2xiYXIgZm9yIHNlY29uZGFyeSBhY3Rpb25zLiBJZiB0aGUgZHJvcGRvd24gZG9lcyBub3RcbiAqIGluY2x1ZGUgYWN0aW9ucywgdGhlIHNlY29uZGFyeSBhY3Rpb25zIGRyb3Bkb3duIGlzIGhpZGRlbi5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnc2t5LWxpc3Qtc2Vjb25kYXJ5LWFjdGlvbnMnLFxuICB0ZW1wbGF0ZVVybDogJy4vbGlzdC1zZWNvbmRhcnktYWN0aW9ucy5jb21wb25lbnQuaHRtbCcsXG4gIHByb3ZpZGVyczogW1NreUxpc3RTZWNvbmRhcnlBY3Rpb25zU2VydmljZV0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lMaXN0U2Vjb25kYXJ5QWN0aW9uc0NvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQge1xuICBwdWJsaWMgYWN0aW9uczogYW55W10gPSBbXTtcblxuICBAVmlld0NoaWxkKCdzZWNvbmRhcnlBY3Rpb25zJywge1xuICAgIHJlYWQ6IFRlbXBsYXRlUmVmLFxuICAgIHN0YXRpYzogdHJ1ZSxcbiAgfSlcbiAgcHJpdmF0ZSBzZWNvbmRhcnlBY3Rpb25zVGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgcHJpdmF0ZSBzZWNvbmRhcnlBY3Rpb25zSXRlbVRvb2xiYXJJbmRleCA9IDUwMDA7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBkaXNwYXRjaGVyOiBMaXN0U3RhdGVEaXNwYXRjaGVyKSB7fVxuXG4gIHB1YmxpYyBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgY29uc3Qgc2Vjb25kYXJ5QWN0aW9uSXRlbSA9IG5ldyBMaXN0VG9vbGJhckl0ZW1Nb2RlbCh7XG4gICAgICBpZDogJ3NlY29uZGFyeS1hY3Rpb25zJyxcbiAgICAgIHRlbXBsYXRlOiB0aGlzLnNlY29uZGFyeUFjdGlvbnNUZW1wbGF0ZSxcbiAgICAgIGxvY2F0aW9uOiAnY2VudGVyJyxcbiAgICAgIGluZGV4OiB0aGlzLnNlY29uZGFyeUFjdGlvbnNJdGVtVG9vbGJhckluZGV4LFxuICAgIH0pO1xuXG4gICAgdGhpcy5kaXNwYXRjaGVyLnRvb2xiYXJBZGRJdGVtcyhbc2Vjb25kYXJ5QWN0aW9uSXRlbV0pO1xuICB9XG59XG4iLCI8bmctdGVtcGxhdGUgI3NlY29uZGFyeUFjdGlvbnM+XG4gIDxza3ktbGlzdC1zZWNvbmRhcnktYWN0aW9ucy1ob3N0PlxuICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgPC9za3ktbGlzdC1zZWNvbmRhcnktYWN0aW9ucy1ob3N0PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -0,0 +1,46 @@
1
+ import { CommonModule } from '@angular/common';
2
+ import { NgModule } from '@angular/core';
3
+ import { SkyI18nModule } from '@skyux/i18n';
4
+ import { SkyIconModule } from '@skyux/indicators';
5
+ import { SkyDropdownModule } from '@skyux/popovers';
6
+ import { SkyListBuilderResourcesModule } from '../../shared/sky-list-builder-resources.module';
7
+ import { SkyListSecondaryActionComponent } from './list-secondary-action.component';
8
+ import { SkyListSecondaryActionsHostComponent } from './list-secondary-actions-host.component';
9
+ import { SkyListSecondaryActionsComponent } from './list-secondary-actions.component';
10
+ import * as i0 from "@angular/core";
11
+ export class SkyListSecondaryActionsModule {
12
+ }
13
+ SkyListSecondaryActionsModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListSecondaryActionsModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
14
+ SkyListSecondaryActionsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListSecondaryActionsModule, declarations: [SkyListSecondaryActionsComponent,
15
+ SkyListSecondaryActionsHostComponent,
16
+ SkyListSecondaryActionComponent], imports: [CommonModule,
17
+ SkyDropdownModule,
18
+ SkyI18nModule,
19
+ SkyIconModule,
20
+ SkyListBuilderResourcesModule], exports: [SkyListSecondaryActionsComponent, SkyListSecondaryActionComponent] });
21
+ SkyListSecondaryActionsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListSecondaryActionsModule, imports: [[
22
+ CommonModule,
23
+ SkyDropdownModule,
24
+ SkyI18nModule,
25
+ SkyIconModule,
26
+ SkyListBuilderResourcesModule,
27
+ ]] });
28
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListSecondaryActionsModule, decorators: [{
29
+ type: NgModule,
30
+ args: [{
31
+ declarations: [
32
+ SkyListSecondaryActionsComponent,
33
+ SkyListSecondaryActionsHostComponent,
34
+ SkyListSecondaryActionComponent,
35
+ ],
36
+ imports: [
37
+ CommonModule,
38
+ SkyDropdownModule,
39
+ SkyI18nModule,
40
+ SkyIconModule,
41
+ SkyListBuilderResourcesModule,
42
+ ],
43
+ exports: [SkyListSecondaryActionsComponent, SkyListSecondaryActionComponent],
44
+ }]
45
+ }] });
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1zZWNvbmRhcnktYWN0aW9ucy5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL2NvbXBvbmVudHMvbGlzdC1idWlsZGVyL3NyYy9saWIvbW9kdWxlcy9saXN0LXRvb2xiYXIvbGlzdC1zZWNvbmRhcnktYWN0aW9ucy9saXN0LXNlY29uZGFyeS1hY3Rpb25zLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDL0MsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUVwRCxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUUvRixPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUNwRixPQUFPLEVBQUUsb0NBQW9DLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUMvRixPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQzs7QUFpQnRGLE1BQU0sT0FBTyw2QkFBNkI7OzBIQUE3Qiw2QkFBNkI7MkhBQTdCLDZCQUE2QixpQkFidEMsZ0NBQWdDO1FBQ2hDLG9DQUFvQztRQUNwQywrQkFBK0IsYUFHL0IsWUFBWTtRQUNaLGlCQUFpQjtRQUNqQixhQUFhO1FBQ2IsYUFBYTtRQUNiLDZCQUE2QixhQUVyQixnQ0FBZ0MsRUFBRSwrQkFBK0I7MkhBRWhFLDZCQUE2QixZQVQvQjtZQUNQLFlBQVk7WUFDWixpQkFBaUI7WUFDakIsYUFBYTtZQUNiLGFBQWE7WUFDYiw2QkFBNkI7U0FDOUI7MkZBR1UsNkJBQTZCO2tCQWZ6QyxRQUFRO21CQUFDO29CQUNSLFlBQVksRUFBRTt3QkFDWixnQ0FBZ0M7d0JBQ2hDLG9DQUFvQzt3QkFDcEMsK0JBQStCO3FCQUNoQztvQkFDRCxPQUFPLEVBQUU7d0JBQ1AsWUFBWTt3QkFDWixpQkFBaUI7d0JBQ2pCLGFBQWE7d0JBQ2IsYUFBYTt3QkFDYiw2QkFBNkI7cUJBQzlCO29CQUNELE9BQU8sRUFBRSxDQUFDLGdDQUFnQyxFQUFFLCtCQUErQixDQUFDO2lCQUM3RSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU2t5STE4bk1vZHVsZSB9IGZyb20gJ0Bza3l1eC9pMThuJztcbmltcG9ydCB7IFNreUljb25Nb2R1bGUgfSBmcm9tICdAc2t5dXgvaW5kaWNhdG9ycyc7XG5pbXBvcnQgeyBTa3lEcm9wZG93bk1vZHVsZSB9IGZyb20gJ0Bza3l1eC9wb3BvdmVycyc7XG5cbmltcG9ydCB7IFNreUxpc3RCdWlsZGVyUmVzb3VyY2VzTW9kdWxlIH0gZnJvbSAnLi4vLi4vc2hhcmVkL3NreS1saXN0LWJ1aWxkZXItcmVzb3VyY2VzLm1vZHVsZSc7XG5cbmltcG9ydCB7IFNreUxpc3RTZWNvbmRhcnlBY3Rpb25Db21wb25lbnQgfSBmcm9tICcuL2xpc3Qtc2Vjb25kYXJ5LWFjdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2t5TGlzdFNlY29uZGFyeUFjdGlvbnNIb3N0Q29tcG9uZW50IH0gZnJvbSAnLi9saXN0LXNlY29uZGFyeS1hY3Rpb25zLWhvc3QuY29tcG9uZW50JztcbmltcG9ydCB7IFNreUxpc3RTZWNvbmRhcnlBY3Rpb25zQ29tcG9uZW50IH0gZnJvbSAnLi9saXN0LXNlY29uZGFyeS1hY3Rpb25zLmNvbXBvbmVudCc7XG5cbkBOZ01vZHVsZSh7XG4gIGRlY2xhcmF0aW9uczogW1xuICAgIFNreUxpc3RTZWNvbmRhcnlBY3Rpb25zQ29tcG9uZW50LFxuICAgIFNreUxpc3RTZWNvbmRhcnlBY3Rpb25zSG9zdENvbXBvbmVudCxcbiAgICBTa3lMaXN0U2Vjb25kYXJ5QWN0aW9uQ29tcG9uZW50LFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIFNreURyb3Bkb3duTW9kdWxlLFxuICAgIFNreUkxOG5Nb2R1bGUsXG4gICAgU2t5SWNvbk1vZHVsZSxcbiAgICBTa3lMaXN0QnVpbGRlclJlc291cmNlc01vZHVsZSxcbiAgXSxcbiAgZXhwb3J0czogW1NreUxpc3RTZWNvbmRhcnlBY3Rpb25zQ29tcG9uZW50LCBTa3lMaXN0U2Vjb25kYXJ5QWN0aW9uQ29tcG9uZW50XSxcbn0pXG5leHBvcnQgY2xhc3MgU2t5TGlzdFNlY29uZGFyeUFjdGlvbnNNb2R1bGUge31cbiJdfQ==
@@ -0,0 +1,36 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { BehaviorSubject } from 'rxjs';
3
+ import * as i0 from "@angular/core";
4
+ /**
5
+ * @internal
6
+ */
7
+ export class SkyListSecondaryActionsService {
8
+ constructor() {
9
+ this.secondaryActionsCount = 0;
10
+ this.secondaryActionsSubject = new BehaviorSubject(0);
11
+ this.actionsStream = new BehaviorSubject([]);
12
+ this.actions = [];
13
+ }
14
+ addSecondaryAction(action) {
15
+ this.secondaryActionsCount++;
16
+ this.secondaryActionsSubject.next(this.secondaryActionsCount);
17
+ this.actions.push(action);
18
+ this.actionsStream.next(this.actions);
19
+ }
20
+ removeSecondaryAction(action) {
21
+ this.secondaryActionsCount--;
22
+ this.secondaryActionsSubject.next(this.secondaryActionsCount);
23
+ this.actions = this.actions.filter((existingItem) => existingItem !== action);
24
+ this.actionsStream.next(this.actions);
25
+ }
26
+ ngOnDestroy() {
27
+ this.secondaryActionsSubject.complete();
28
+ this.actionsStream.complete();
29
+ }
30
+ }
31
+ SkyListSecondaryActionsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListSecondaryActionsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
32
+ SkyListSecondaryActionsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListSecondaryActionsService });
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListSecondaryActionsService, decorators: [{
34
+ type: Injectable
35
+ }] });
36
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1zZWNvbmRhcnktYWN0aW9ucy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xpc3QtYnVpbGRlci9zcmMvbGliL21vZHVsZXMvbGlzdC10b29sYmFyL2xpc3Qtc2Vjb25kYXJ5LWFjdGlvbnMvbGlzdC1zZWNvbmRhcnktYWN0aW9ucy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFFdEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFJdkM7O0dBRUc7QUFFSCxNQUFNLE9BQU8sOEJBQThCO0lBRDNDO1FBRVMsMEJBQXFCLEdBQUcsQ0FBQyxDQUFDO1FBQzFCLDRCQUF1QixHQUFHLElBQUksZUFBZSxDQUFTLENBQUMsQ0FBQyxDQUFDO1FBQ3pELGtCQUFhLEdBQUcsSUFBSSxlQUFlLENBQTJCLEVBQUUsQ0FBQyxDQUFDO1FBQ2pFLFlBQU8sR0FBNkIsRUFBRSxDQUFDO0tBc0JoRDtJQXBCUSxrQkFBa0IsQ0FBQyxNQUE4QjtRQUN0RCxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQzFCLElBQUksQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN4QyxDQUFDO0lBRU0scUJBQXFCLENBQUMsTUFBVztRQUN0QyxJQUFJLENBQUMscUJBQXFCLEVBQUUsQ0FBQztRQUM3QixJQUFJLENBQUMsdUJBQXVCLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQzlELElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQ2hDLENBQUMsWUFBWSxFQUFFLEVBQUUsQ0FBQyxZQUFZLEtBQUssTUFBTSxDQUMxQyxDQUFDO1FBQ0YsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFTSxXQUFXO1FBQ2hCLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN4QyxJQUFJLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ2hDLENBQUM7OzJIQXpCVSw4QkFBOEI7K0hBQTlCLDhCQUE4QjsyRkFBOUIsOEJBQThCO2tCQUQxQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgT25EZXN0cm95IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuXG5pbXBvcnQgeyBTa3lMaXN0U2Vjb25kYXJ5QWN0aW9uIH0gZnJvbSAnLi9saXN0LXNlY29uZGFyeS1hY3Rpb24nO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgU2t5TGlzdFNlY29uZGFyeUFjdGlvbnNTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgcHVibGljIHNlY29uZGFyeUFjdGlvbnNDb3VudCA9IDA7XG4gIHB1YmxpYyBzZWNvbmRhcnlBY3Rpb25zU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPigwKTtcbiAgcHVibGljIGFjdGlvbnNTdHJlYW0gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFNreUxpc3RTZWNvbmRhcnlBY3Rpb25bXT4oW10pO1xuICBwcml2YXRlIGFjdGlvbnM6IFNreUxpc3RTZWNvbmRhcnlBY3Rpb25bXSA9IFtdO1xuXG4gIHB1YmxpYyBhZGRTZWNvbmRhcnlBY3Rpb24oYWN0aW9uOiBTa3lMaXN0U2Vjb25kYXJ5QWN0aW9uKSB7XG4gICAgdGhpcy5zZWNvbmRhcnlBY3Rpb25zQ291bnQrKztcbiAgICB0aGlzLnNlY29uZGFyeUFjdGlvbnNTdWJqZWN0Lm5leHQodGhpcy5zZWNvbmRhcnlBY3Rpb25zQ291bnQpO1xuICAgIHRoaXMuYWN0aW9ucy5wdXNoKGFjdGlvbik7XG4gICAgdGhpcy5hY3Rpb25zU3RyZWFtLm5leHQodGhpcy5hY3Rpb25zKTtcbiAgfVxuXG4gIHB1YmxpYyByZW1vdmVTZWNvbmRhcnlBY3Rpb24oYWN0aW9uOiBhbnkpIHtcbiAgICB0aGlzLnNlY29uZGFyeUFjdGlvbnNDb3VudC0tO1xuICAgIHRoaXMuc2Vjb25kYXJ5QWN0aW9uc1N1YmplY3QubmV4dCh0aGlzLnNlY29uZGFyeUFjdGlvbnNDb3VudCk7XG4gICAgdGhpcy5hY3Rpb25zID0gdGhpcy5hY3Rpb25zLmZpbHRlcihcbiAgICAgIChleGlzdGluZ0l0ZW0pID0+IGV4aXN0aW5nSXRlbSAhPT0gYWN0aW9uXG4gICAgKTtcbiAgICB0aGlzLmFjdGlvbnNTdHJlYW0ubmV4dCh0aGlzLmFjdGlvbnMpO1xuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCkge1xuICAgIHRoaXMuc2Vjb25kYXJ5QWN0aW9uc1N1YmplY3QuY29tcGxldGUoKTtcbiAgICB0aGlzLmFjdGlvbnNTdHJlYW0uY29tcGxldGUoKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,30 @@
1
+ import { Component, Input, TemplateRef, ViewChild, ViewContainerRef, } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ /**
4
+ * @internal
5
+ */
6
+ export class SkyListToolbarItemRendererComponent {
7
+ ngOnInit() {
8
+ if (this.template !== undefined) {
9
+ this.container.createEmbeddedView(this.template, this);
10
+ }
11
+ }
12
+ }
13
+ SkyListToolbarItemRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListToolbarItemRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
14
+ SkyListToolbarItemRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.7", type: SkyListToolbarItemRendererComponent, selector: "sky-list-toolbar-item-renderer", inputs: { template: "template" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["container"], descendants: true, read: ViewContainerRef, static: true }], ngImport: i0, template: '<ng-template #container></ng-template>', isInline: true });
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.7", ngImport: i0, type: SkyListToolbarItemRendererComponent, decorators: [{
16
+ type: Component,
17
+ args: [{
18
+ selector: 'sky-list-toolbar-item-renderer',
19
+ template: '<ng-template #container></ng-template>',
20
+ }]
21
+ }], propDecorators: { template: [{
22
+ type: Input
23
+ }], container: [{
24
+ type: ViewChild,
25
+ args: ['container', {
26
+ read: ViewContainerRef,
27
+ static: true,
28
+ }]
29
+ }] } });
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC10b29sYmFyLWl0ZW0tcmVuZGVyZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2xpc3QtYnVpbGRlci9zcmMvbGliL21vZHVsZXMvbGlzdC10b29sYmFyL2xpc3QtdG9vbGJhci1pdGVtLXJlbmRlcmVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFFTCxXQUFXLEVBQ1gsU0FBUyxFQUNULGdCQUFnQixHQUNqQixNQUFNLGVBQWUsQ0FBQzs7QUFFdkI7O0dBRUc7QUFLSCxNQUFNLE9BQU8sbUNBQW1DO0lBVXZDLFFBQVE7UUFDYixJQUFJLElBQUksQ0FBQyxRQUFRLEtBQUssU0FBUyxFQUFFO1lBQy9CLElBQUksQ0FBQyxTQUFTLENBQUMsa0JBQWtCLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxJQUFJLENBQUMsQ0FBQztTQUN4RDtJQUNILENBQUM7O2dJQWRVLG1DQUFtQztvSEFBbkMsbUNBQW1DLDJMQUt0QyxnQkFBZ0IsMkNBUGQsd0NBQXdDOzJGQUV2QyxtQ0FBbUM7a0JBSi9DLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGdDQUFnQztvQkFDMUMsUUFBUSxFQUFFLHdDQUF3QztpQkFDbkQ7OEJBR1EsUUFBUTtzQkFEZCxLQUFLO2dCQU9FLFNBQVM7c0JBSmhCLFNBQVM7dUJBQUMsV0FBVyxFQUFFO3dCQUN0QixJQUFJLEVBQUUsZ0JBQWdCO3dCQUN0QixNQUFNLEVBQUUsSUFBSTtxQkFDYiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudCxcbiAgSW5wdXQsXG4gIE9uSW5pdCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0NvbnRhaW5lclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1saXN0LXRvb2xiYXItaXRlbS1yZW5kZXJlcicsXG4gIHRlbXBsYXRlOiAnPG5nLXRlbXBsYXRlICNjb250YWluZXI+PC9uZy10ZW1wbGF0ZT4nLFxufSlcbmV4cG9ydCBjbGFzcyBTa3lMaXN0VG9vbGJhckl0ZW1SZW5kZXJlckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpXG4gIHB1YmxpYyB0ZW1wbGF0ZTogVGVtcGxhdGVSZWY8YW55PjtcblxuICBAVmlld0NoaWxkKCdjb250YWluZXInLCB7XG4gICAgcmVhZDogVmlld0NvbnRhaW5lclJlZixcbiAgICBzdGF0aWM6IHRydWUsXG4gIH0pXG4gIHByaXZhdGUgY29udGFpbmVyOiBWaWV3Q29udGFpbmVyUmVmO1xuXG4gIHB1YmxpYyBuZ09uSW5pdCgpIHtcbiAgICBpZiAodGhpcy50ZW1wbGF0ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aGlzLmNvbnRhaW5lci5jcmVhdGVFbWJlZGRlZFZpZXcodGhpcy50ZW1wbGF0ZSwgdGhpcyk7XG4gICAgfVxuICB9XG59XG4iXX0=