@skyux/list-builder 5.0.2 → 5.5.0

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 (366) hide show
  1. package/README.md +6 -4
  2. package/bundles/skyux-list-builder.umd.js +95 -94
  3. package/documentation.json +681 -468
  4. package/esm2015/index.js +78 -0
  5. package/esm2015/index.js.map +1 -0
  6. package/esm2015/lib/modules/list/list-data-request.model.js +18 -0
  7. package/esm2015/lib/modules/list/list-data-request.model.js.map +1 -0
  8. package/esm2015/lib/modules/list/list-data-response.model.js +9 -0
  9. package/esm2015/lib/modules/list/list-data-response.model.js.map +1 -0
  10. package/esm2015/lib/modules/list/list-data.provider.js +7 -0
  11. package/esm2015/lib/modules/list/list-data.provider.js.map +1 -0
  12. package/esm2015/lib/modules/list/list-paging.component.js +13 -0
  13. package/esm2015/lib/modules/list/list-paging.component.js.map +1 -0
  14. package/esm2015/lib/modules/list/list-view.component.js +28 -0
  15. package/esm2015/lib/modules/list/list-view.component.js.map +1 -0
  16. package/esm2015/lib/modules/list/list.component.js +305 -0
  17. package/esm2015/lib/modules/list/list.component.js.map +1 -0
  18. package/esm2015/lib/modules/list/list.module.js +18 -0
  19. package/esm2015/lib/modules/list/list.module.js.map +1 -0
  20. package/esm2015/lib/modules/list/state/filters/filters.orchestrator.js +16 -0
  21. package/esm2015/lib/modules/list/state/filters/filters.orchestrator.js.map +1 -0
  22. package/esm2015/lib/modules/list/state/filters/update.action.js +9 -0
  23. package/esm2015/lib/modules/list/state/filters/update.action.js.map +1 -0
  24. package/esm2015/lib/modules/list/state/items/items.orchestrator.js +53 -0
  25. package/esm2015/lib/modules/list/state/items/items.orchestrator.js.map +1 -0
  26. package/esm2015/lib/modules/list/state/items/load.action.js +12 -0
  27. package/esm2015/lib/modules/list/state/items/load.action.js.map +1 -0
  28. package/esm2015/lib/modules/list/state/items/set-items-selected.action.js +13 -0
  29. package/esm2015/lib/modules/list/state/items/set-items-selected.action.js.map +1 -0
  30. package/esm2015/lib/modules/list/state/items/set-loading.action.js +9 -0
  31. package/esm2015/lib/modules/list/state/items/set-loading.action.js.map +1 -0
  32. package/esm2015/lib/modules/list/state/list-state-action.type.js +2 -0
  33. package/esm2015/lib/modules/list/state/list-state-action.type.js.map +1 -0
  34. package/esm2015/lib/modules/list/state/list-state.model.js +24 -0
  35. package/esm2015/lib/modules/list/state/list-state.model.js.map +1 -0
  36. package/esm2015/lib/modules/list/state/list-state.rxstate.js +80 -0
  37. package/esm2015/lib/modules/list/state/list-state.rxstate.js.map +1 -0
  38. package/esm2015/lib/modules/list/state/list-state.state-node.js +37 -0
  39. package/esm2015/lib/modules/list/state/list-state.state-node.js.map +1 -0
  40. package/esm2015/lib/modules/list/state/paging/paging.model.js +14 -0
  41. package/esm2015/lib/modules/list/state/paging/paging.model.js.map +1 -0
  42. package/esm2015/lib/modules/list/state/paging/paging.orchestrator.js +27 -0
  43. package/esm2015/lib/modules/list/state/paging/paging.orchestrator.js.map +1 -0
  44. package/esm2015/lib/modules/list/state/paging/set-items-per-page.action.js +9 -0
  45. package/esm2015/lib/modules/list/state/paging/set-items-per-page.action.js.map +1 -0
  46. package/esm2015/lib/modules/list/state/paging/set-max-pages.action.js +9 -0
  47. package/esm2015/lib/modules/list/state/paging/set-max-pages.action.js.map +1 -0
  48. package/esm2015/lib/modules/list/state/paging/set-page-number.action.js +9 -0
  49. package/esm2015/lib/modules/list/state/paging/set-page-number.action.js.map +1 -0
  50. package/esm2015/lib/modules/list/state/search/search.model.js +32 -0
  51. package/esm2015/lib/modules/list/state/search/search.model.js.map +1 -0
  52. package/esm2015/lib/modules/list/state/search/search.orchestrator.js +47 -0
  53. package/esm2015/lib/modules/list/state/search/search.orchestrator.js.map +1 -0
  54. package/esm2015/lib/modules/list/state/search/set-field-selectors.action.js +9 -0
  55. package/esm2015/lib/modules/list/state/search/set-field-selectors.action.js.map +1 -0
  56. package/esm2015/lib/modules/list/state/search/set-functions.action.js +9 -0
  57. package/esm2015/lib/modules/list/state/search/set-functions.action.js.map +1 -0
  58. package/esm2015/lib/modules/list/state/search/set-options.action.js +11 -0
  59. package/esm2015/lib/modules/list/state/search/set-options.action.js.map +1 -0
  60. package/esm2015/lib/modules/list/state/search/set-search-text.action.js +9 -0
  61. package/esm2015/lib/modules/list/state/search/set-search-text.action.js.map +1 -0
  62. package/esm2015/lib/modules/list/state/selected/load.action.js +9 -0
  63. package/esm2015/lib/modules/list/state/selected/load.action.js.map +1 -0
  64. package/esm2015/lib/modules/list/state/selected/selected.model.js +9 -0
  65. package/esm2015/lib/modules/list/state/selected/selected.model.js.map +1 -0
  66. package/esm2015/lib/modules/list/state/selected/selected.orchestrator.js +56 -0
  67. package/esm2015/lib/modules/list/state/selected/selected.orchestrator.js.map +1 -0
  68. package/esm2015/lib/modules/list/state/selected/set-item-selected.action.js +10 -0
  69. package/esm2015/lib/modules/list/state/selected/set-item-selected.action.js.map +1 -0
  70. package/esm2015/lib/modules/list/state/selected/set-items-selected.action.js +11 -0
  71. package/esm2015/lib/modules/list/state/selected/set-items-selected.action.js.map +1 -0
  72. package/esm2015/lib/modules/list/state/selected/set-loading.action.js +9 -0
  73. package/esm2015/lib/modules/list/state/selected/set-loading.action.js.map +1 -0
  74. package/esm2015/lib/modules/list/state/sort/label.model.js +25 -0
  75. package/esm2015/lib/modules/list/state/sort/label.model.js.map +1 -0
  76. package/esm2015/lib/modules/list/state/sort/set-available.action.js +9 -0
  77. package/esm2015/lib/modules/list/state/sort/set-available.action.js.map +1 -0
  78. package/esm2015/lib/modules/list/state/sort/set-field-selectors.action.js +9 -0
  79. package/esm2015/lib/modules/list/state/sort/set-field-selectors.action.js.map +1 -0
  80. package/esm2015/lib/modules/list/state/sort/set-global.action.js +9 -0
  81. package/esm2015/lib/modules/list/state/sort/set-global.action.js.map +1 -0
  82. package/esm2015/lib/modules/list/state/sort/sort.model.js +27 -0
  83. package/esm2015/lib/modules/list/state/sort/sort.model.js.map +1 -0
  84. package/esm2015/lib/modules/list/state/sort/sort.orchestrator.js +30 -0
  85. package/esm2015/lib/modules/list/state/sort/sort.orchestrator.js.map +1 -0
  86. package/esm2015/lib/modules/list/state/toolbar/disable.action.js +9 -0
  87. package/esm2015/lib/modules/list/state/toolbar/disable.action.js.map +1 -0
  88. package/esm2015/lib/modules/list/state/toolbar/load.action.js +10 -0
  89. package/esm2015/lib/modules/list/state/toolbar/load.action.js.map +1 -0
  90. package/esm2015/lib/modules/list/state/toolbar/remove.action.js +9 -0
  91. package/esm2015/lib/modules/list/state/toolbar/remove.action.js.map +1 -0
  92. package/esm2015/lib/modules/list/state/toolbar/set-exists.action.js +9 -0
  93. package/esm2015/lib/modules/list/state/toolbar/set-exists.action.js.map +1 -0
  94. package/esm2015/lib/modules/list/state/toolbar/set-type.action.js +9 -0
  95. package/esm2015/lib/modules/list/state/toolbar/set-type.action.js.map +1 -0
  96. package/esm2015/lib/modules/list/state/toolbar/show-multiselect-toolbar.action.js +9 -0
  97. package/esm2015/lib/modules/list/state/toolbar/show-multiselect-toolbar.action.js.map +1 -0
  98. package/esm2015/lib/modules/list/state/toolbar/toolbar-item.model.js +16 -0
  99. package/esm2015/lib/modules/list/state/toolbar/toolbar-item.model.js.map +1 -0
  100. package/esm2015/lib/modules/list/state/toolbar/toolbar.model.js +17 -0
  101. package/esm2015/lib/modules/list/state/toolbar/toolbar.model.js.map +1 -0
  102. package/esm2015/lib/modules/list/state/toolbar/toolbar.orchestrator.js +80 -0
  103. package/esm2015/lib/modules/list/state/toolbar/toolbar.orchestrator.js.map +1 -0
  104. package/esm2015/lib/modules/list/state/views/load.action.js +9 -0
  105. package/esm2015/lib/modules/list/state/views/load.action.js.map +1 -0
  106. package/esm2015/lib/modules/list/state/views/set-active.action.js +9 -0
  107. package/esm2015/lib/modules/list/state/views/set-active.action.js.map +1 -0
  108. package/esm2015/lib/modules/list/state/views/view.model.js +10 -0
  109. package/esm2015/lib/modules/list/state/views/view.model.js.map +1 -0
  110. package/esm2015/lib/modules/list/state/views/views.model.js +13 -0
  111. package/esm2015/lib/modules/list/state/views/views.model.js.map +1 -0
  112. package/esm2015/lib/modules/list/state/views/views.orchestrator.js +21 -0
  113. package/esm2015/lib/modules/list/state/views/views.orchestrator.js.map +1 -0
  114. package/esm2015/lib/modules/list-data-provider-in-memory/list-data-in-memory.provider.js +160 -0
  115. package/esm2015/lib/modules/list-data-provider-in-memory/list-data-in-memory.provider.js.map +1 -0
  116. package/esm2015/lib/modules/list-filters/filter.model.js +18 -0
  117. package/esm2015/lib/modules/list-filters/filter.model.js.map +1 -0
  118. package/esm2015/lib/modules/list-filters/list-filter-button.component.js +44 -0
  119. package/esm2015/lib/modules/list-filters/list-filter-button.component.js.map +1 -0
  120. package/esm2015/lib/modules/list-filters/list-filter-inline-item-renderer.component.js +34 -0
  121. package/esm2015/lib/modules/list-filters/list-filter-inline-item-renderer.component.js.map +1 -0
  122. package/esm2015/lib/modules/list-filters/list-filter-inline-item.component.js +45 -0
  123. package/esm2015/lib/modules/list-filters/list-filter-inline-item.component.js.map +1 -0
  124. package/esm2015/lib/modules/list-filters/list-filter-inline.component.js +74 -0
  125. package/esm2015/lib/modules/list-filters/list-filter-inline.component.js.map +1 -0
  126. package/esm2015/lib/modules/list-filters/list-filter-inline.model.js +21 -0
  127. package/esm2015/lib/modules/list-filters/list-filter-inline.model.js.map +1 -0
  128. package/esm2015/lib/modules/list-filters/list-filter-summary.component.js +60 -0
  129. package/esm2015/lib/modules/list-filters/list-filter-summary.component.js.map +1 -0
  130. package/esm2015/lib/modules/list-filters/list-filters.module.js +41 -0
  131. package/esm2015/lib/modules/list-filters/list-filters.module.js.map +1 -0
  132. package/esm2015/lib/modules/list-paging/list-paging.component.js +89 -0
  133. package/esm2015/lib/modules/list-paging/list-paging.component.js.map +1 -0
  134. package/esm2015/lib/modules/list-paging/list-paging.module.js +19 -0
  135. package/esm2015/lib/modules/list-paging/list-paging.module.js.map +1 -0
  136. package/esm2015/lib/modules/list-toolbar/list-multiselect-toolbar.component.js +153 -0
  137. package/esm2015/lib/modules/list-toolbar/list-multiselect-toolbar.component.js.map +1 -0
  138. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-action.component.js +33 -0
  139. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-action.component.js.map +1 -0
  140. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-action.js +2 -0
  141. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-action.js.map +1 -0
  142. package/esm2015/{modules → lib/modules}/list-toolbar/list-secondary-actions/list-secondary-actions-host.component.js +6 -5
  143. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions-host.component.js.map +1 -0
  144. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.component.js +45 -0
  145. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.component.js.map +1 -0
  146. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.module.js +46 -0
  147. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.module.js.map +1 -0
  148. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.service.js +36 -0
  149. package/esm2015/lib/modules/list-toolbar/list-secondary-actions/list-secondary-actions.service.js.map +1 -0
  150. package/esm2015/lib/modules/list-toolbar/list-toolbar-item-renderer.component.js +30 -0
  151. package/esm2015/lib/modules/list-toolbar/list-toolbar-item-renderer.component.js.map +1 -0
  152. package/esm2015/lib/modules/list-toolbar/list-toolbar-item.component.js +47 -0
  153. package/esm2015/lib/modules/list-toolbar/list-toolbar-item.component.js.map +1 -0
  154. package/esm2015/lib/modules/list-toolbar/list-toolbar-search-actions.component.js +19 -0
  155. package/esm2015/lib/modules/list-toolbar/list-toolbar-search-actions.component.js.map +1 -0
  156. package/esm2015/lib/modules/list-toolbar/list-toolbar-sort.component.js +25 -0
  157. package/esm2015/lib/modules/list-toolbar/list-toolbar-sort.component.js.map +1 -0
  158. package/esm2015/lib/modules/list-toolbar/list-toolbar-view-actions.component.js +21 -0
  159. package/esm2015/lib/modules/list-toolbar/list-toolbar-view-actions.component.js.map +1 -0
  160. package/esm2015/lib/modules/list-toolbar/list-toolbar.component.js +360 -0
  161. package/esm2015/lib/modules/list-toolbar/list-toolbar.component.js.map +1 -0
  162. package/esm2015/lib/modules/list-toolbar/list-toolbar.module.js +87 -0
  163. package/esm2015/lib/modules/list-toolbar/list-toolbar.module.js.map +1 -0
  164. package/esm2015/lib/modules/list-toolbar/state/config/config.model.js +14 -0
  165. package/esm2015/lib/modules/list-toolbar/state/config/config.model.js.map +1 -0
  166. package/esm2015/lib/modules/list-toolbar/state/config/config.orchestrator.js +21 -0
  167. package/esm2015/lib/modules/list-toolbar/state/config/config.orchestrator.js.map +1 -0
  168. package/esm2015/lib/modules/list-toolbar/state/config/set-search-enabled.action.js +9 -0
  169. package/esm2015/lib/modules/list-toolbar/state/config/set-search-enabled.action.js.map +1 -0
  170. package/esm2015/lib/modules/list-toolbar/state/config/set-sort-selector-enabled.action.js +10 -0
  171. package/esm2015/lib/modules/list-toolbar/state/config/set-sort-selector-enabled.action.js.map +1 -0
  172. package/esm2015/lib/modules/list-toolbar/state/toolbar-state-action.type.js +2 -0
  173. package/esm2015/lib/modules/list-toolbar/state/toolbar-state-action.type.js.map +1 -0
  174. package/esm2015/lib/modules/list-toolbar/state/toolbar-state.model.js +10 -0
  175. package/esm2015/lib/modules/list-toolbar/state/toolbar-state.model.js.map +1 -0
  176. package/esm2015/lib/modules/list-toolbar/state/toolbar-state.rxstate.js +19 -0
  177. package/esm2015/lib/modules/list-toolbar/state/toolbar-state.rxstate.js.map +1 -0
  178. package/esm2015/lib/modules/list-toolbar/state/toolbar-state.state-node.js +23 -0
  179. package/esm2015/lib/modules/list-toolbar/state/toolbar-state.state-node.js.map +1 -0
  180. package/esm2015/lib/modules/shared/sky-list-builder-resources.module.js +53 -0
  181. package/esm2015/lib/modules/shared/sky-list-builder-resources.module.js.map +1 -0
  182. package/esm2015/skyux-list-builder.js +2 -2
  183. package/esm2015/skyux-list-builder.js.map +1 -0
  184. package/fesm2015/skyux-list-builder.js +117 -116
  185. package/fesm2015/skyux-list-builder.js.map +1 -1
  186. package/index.d.ts +74 -0
  187. package/{modules → lib/modules}/list/list-data-request.model.d.ts +0 -0
  188. package/{modules → lib/modules}/list/list-data-response.model.d.ts +0 -0
  189. package/{modules → lib/modules}/list/list-data.provider.d.ts +0 -0
  190. package/{modules → lib/modules}/list/list-paging.component.d.ts +0 -0
  191. package/{modules → lib/modules}/list/list-view.component.d.ts +0 -0
  192. package/{modules → lib/modules}/list/list.component.d.ts +0 -0
  193. package/{modules → lib/modules}/list/list.module.d.ts +0 -0
  194. package/{modules → lib/modules}/list/state/filters/filters.orchestrator.d.ts +0 -0
  195. package/{modules → lib/modules}/list/state/filters/update.action.d.ts +0 -0
  196. package/{modules → lib/modules}/list/state/items/items.orchestrator.d.ts +0 -0
  197. package/{modules → lib/modules}/list/state/items/load.action.d.ts +0 -0
  198. package/{modules → lib/modules}/list/state/items/set-items-selected.action.d.ts +0 -0
  199. package/{modules → lib/modules}/list/state/items/set-loading.action.d.ts +0 -0
  200. package/{modules → lib/modules}/list/state/list-state-action.type.d.ts +0 -0
  201. package/{modules → lib/modules}/list/state/list-state.model.d.ts +0 -0
  202. package/{modules → lib/modules}/list/state/list-state.rxstate.d.ts +0 -0
  203. package/{modules → lib/modules}/list/state/list-state.state-node.d.ts +0 -0
  204. package/{modules → lib/modules}/list/state/paging/paging.model.d.ts +0 -0
  205. package/{modules → lib/modules}/list/state/paging/paging.orchestrator.d.ts +0 -0
  206. package/{modules → lib/modules}/list/state/paging/set-items-per-page.action.d.ts +0 -0
  207. package/{modules → lib/modules}/list/state/paging/set-max-pages.action.d.ts +0 -0
  208. package/{modules → lib/modules}/list/state/paging/set-page-number.action.d.ts +0 -0
  209. package/{modules → lib/modules}/list/state/search/search.model.d.ts +1 -0
  210. package/{modules → lib/modules}/list/state/search/search.orchestrator.d.ts +0 -0
  211. package/{modules → lib/modules}/list/state/search/set-field-selectors.action.d.ts +0 -0
  212. package/{modules → lib/modules}/list/state/search/set-functions.action.d.ts +0 -0
  213. package/{modules → lib/modules}/list/state/search/set-options.action.d.ts +0 -0
  214. package/{modules → lib/modules}/list/state/search/set-search-text.action.d.ts +0 -0
  215. package/{modules → lib/modules}/list/state/selected/load.action.d.ts +0 -0
  216. package/{modules → lib/modules}/list/state/selected/selected.model.d.ts +0 -0
  217. package/{modules → lib/modules}/list/state/selected/selected.orchestrator.d.ts +0 -0
  218. package/{modules → lib/modules}/list/state/selected/set-item-selected.action.d.ts +0 -0
  219. package/{modules → lib/modules}/list/state/selected/set-items-selected.action.d.ts +0 -0
  220. package/{modules → lib/modules}/list/state/selected/set-loading.action.d.ts +0 -0
  221. package/{modules → lib/modules}/list/state/sort/label.model.d.ts +0 -0
  222. package/{modules → lib/modules}/list/state/sort/set-available.action.d.ts +0 -0
  223. package/{modules → lib/modules}/list/state/sort/set-field-selectors.action.d.ts +0 -0
  224. package/{modules → lib/modules}/list/state/sort/set-global.action.d.ts +0 -0
  225. package/{modules → lib/modules}/list/state/sort/sort.model.d.ts +0 -0
  226. package/{modules → lib/modules}/list/state/sort/sort.orchestrator.d.ts +0 -0
  227. package/{modules → lib/modules}/list/state/toolbar/disable.action.d.ts +0 -0
  228. package/{modules → lib/modules}/list/state/toolbar/load.action.d.ts +0 -0
  229. package/{modules → lib/modules}/list/state/toolbar/remove.action.d.ts +0 -0
  230. package/{modules → lib/modules}/list/state/toolbar/set-exists.action.d.ts +0 -0
  231. package/{modules → lib/modules}/list/state/toolbar/set-type.action.d.ts +0 -0
  232. package/{modules → lib/modules}/list/state/toolbar/show-multiselect-toolbar.action.d.ts +0 -0
  233. package/{modules → lib/modules}/list/state/toolbar/toolbar-item.model.d.ts +0 -0
  234. package/{modules → lib/modules}/list/state/toolbar/toolbar.model.d.ts +0 -0
  235. package/{modules → lib/modules}/list/state/toolbar/toolbar.orchestrator.d.ts +0 -0
  236. package/{modules → lib/modules}/list/state/views/load.action.d.ts +0 -0
  237. package/{modules → lib/modules}/list/state/views/set-active.action.d.ts +0 -0
  238. package/{modules → lib/modules}/list/state/views/view.model.d.ts +0 -0
  239. package/{modules → lib/modules}/list/state/views/views.model.d.ts +0 -0
  240. package/{modules → lib/modules}/list/state/views/views.orchestrator.d.ts +0 -0
  241. package/{modules → lib/modules}/list-data-provider-in-memory/list-data-in-memory.provider.d.ts +0 -0
  242. package/{modules → lib/modules}/list-filters/filter.model.d.ts +0 -0
  243. package/{modules → lib/modules}/list-filters/list-filter-button.component.d.ts +0 -0
  244. package/{modules → lib/modules}/list-filters/list-filter-inline-item-renderer.component.d.ts +0 -0
  245. package/{modules → lib/modules}/list-filters/list-filter-inline-item.component.d.ts +0 -0
  246. package/{modules → lib/modules}/list-filters/list-filter-inline.component.d.ts +0 -0
  247. package/{modules → lib/modules}/list-filters/list-filter-inline.model.d.ts +0 -0
  248. package/{modules → lib/modules}/list-filters/list-filter-summary.component.d.ts +0 -0
  249. package/{modules → lib/modules}/list-filters/list-filters.module.d.ts +0 -0
  250. package/{modules → lib/modules}/list-paging/list-paging.component.d.ts +0 -0
  251. package/{modules → lib/modules}/list-paging/list-paging.module.d.ts +0 -0
  252. package/{modules → lib/modules}/list-toolbar/list-multiselect-toolbar.component.d.ts +0 -0
  253. package/{modules → lib/modules}/list-toolbar/list-secondary-actions/list-secondary-action.component.d.ts +0 -0
  254. package/{modules → lib/modules}/list-toolbar/list-secondary-actions/list-secondary-action.d.ts +0 -0
  255. package/{modules → lib/modules}/list-toolbar/list-secondary-actions/list-secondary-actions-host.component.d.ts +0 -0
  256. package/{modules → lib/modules}/list-toolbar/list-secondary-actions/list-secondary-actions.component.d.ts +0 -0
  257. package/{modules → lib/modules}/list-toolbar/list-secondary-actions/list-secondary-actions.module.d.ts +0 -0
  258. package/{modules → lib/modules}/list-toolbar/list-secondary-actions/list-secondary-actions.service.d.ts +0 -0
  259. package/{modules → lib/modules}/list-toolbar/list-toolbar-item-renderer.component.d.ts +0 -0
  260. package/{modules → lib/modules}/list-toolbar/list-toolbar-item.component.d.ts +3 -3
  261. package/{modules → lib/modules}/list-toolbar/list-toolbar-search-actions.component.d.ts +0 -0
  262. package/{modules → lib/modules}/list-toolbar/list-toolbar-sort.component.d.ts +0 -0
  263. package/{modules → lib/modules}/list-toolbar/list-toolbar-view-actions.component.d.ts +0 -0
  264. package/{modules → lib/modules}/list-toolbar/list-toolbar.component.d.ts +2 -2
  265. package/{modules → lib/modules}/list-toolbar/list-toolbar.module.d.ts +0 -0
  266. package/{modules → lib/modules}/list-toolbar/state/config/config.model.d.ts +0 -0
  267. package/{modules → lib/modules}/list-toolbar/state/config/config.orchestrator.d.ts +0 -0
  268. package/{modules → lib/modules}/list-toolbar/state/config/set-search-enabled.action.d.ts +0 -0
  269. package/{modules → lib/modules}/list-toolbar/state/config/set-sort-selector-enabled.action.d.ts +0 -0
  270. package/{modules → lib/modules}/list-toolbar/state/toolbar-state-action.type.d.ts +0 -0
  271. package/{modules → lib/modules}/list-toolbar/state/toolbar-state.model.d.ts +0 -0
  272. package/{modules → lib/modules}/list-toolbar/state/toolbar-state.rxstate.d.ts +0 -0
  273. package/{modules → lib/modules}/list-toolbar/state/toolbar-state.state-node.d.ts +0 -0
  274. package/{modules → lib/modules}/shared/sky-list-builder-resources.module.d.ts +0 -0
  275. package/package.json +27 -13
  276. package/skyux-list-builder.d.ts +1 -1
  277. package/LICENSE +0 -21
  278. package/esm2015/modules/list/list-data-request.model.js +0 -18
  279. package/esm2015/modules/list/list-data-response.model.js +0 -9
  280. package/esm2015/modules/list/list-data.provider.js +0 -7
  281. package/esm2015/modules/list/list-paging.component.js +0 -13
  282. package/esm2015/modules/list/list-view.component.js +0 -28
  283. package/esm2015/modules/list/list.component.js +0 -304
  284. package/esm2015/modules/list/list.module.js +0 -18
  285. package/esm2015/modules/list/state/filters/filters.orchestrator.js +0 -16
  286. package/esm2015/modules/list/state/filters/update.action.js +0 -9
  287. package/esm2015/modules/list/state/items/items.orchestrator.js +0 -53
  288. package/esm2015/modules/list/state/items/load.action.js +0 -12
  289. package/esm2015/modules/list/state/items/set-items-selected.action.js +0 -13
  290. package/esm2015/modules/list/state/items/set-loading.action.js +0 -9
  291. package/esm2015/modules/list/state/list-state-action.type.js +0 -2
  292. package/esm2015/modules/list/state/list-state.model.js +0 -24
  293. package/esm2015/modules/list/state/list-state.rxstate.js +0 -80
  294. package/esm2015/modules/list/state/list-state.state-node.js +0 -36
  295. package/esm2015/modules/list/state/paging/paging.model.js +0 -14
  296. package/esm2015/modules/list/state/paging/paging.orchestrator.js +0 -27
  297. package/esm2015/modules/list/state/paging/set-items-per-page.action.js +0 -9
  298. package/esm2015/modules/list/state/paging/set-max-pages.action.js +0 -9
  299. package/esm2015/modules/list/state/paging/set-page-number.action.js +0 -9
  300. package/esm2015/modules/list/state/search/search.model.js +0 -31
  301. package/esm2015/modules/list/state/search/search.orchestrator.js +0 -47
  302. package/esm2015/modules/list/state/search/set-field-selectors.action.js +0 -9
  303. package/esm2015/modules/list/state/search/set-functions.action.js +0 -9
  304. package/esm2015/modules/list/state/search/set-options.action.js +0 -11
  305. package/esm2015/modules/list/state/search/set-search-text.action.js +0 -9
  306. package/esm2015/modules/list/state/selected/load.action.js +0 -9
  307. package/esm2015/modules/list/state/selected/selected.model.js +0 -9
  308. package/esm2015/modules/list/state/selected/selected.orchestrator.js +0 -56
  309. package/esm2015/modules/list/state/selected/set-item-selected.action.js +0 -10
  310. package/esm2015/modules/list/state/selected/set-items-selected.action.js +0 -11
  311. package/esm2015/modules/list/state/selected/set-loading.action.js +0 -9
  312. package/esm2015/modules/list/state/sort/label.model.js +0 -25
  313. package/esm2015/modules/list/state/sort/set-available.action.js +0 -9
  314. package/esm2015/modules/list/state/sort/set-field-selectors.action.js +0 -9
  315. package/esm2015/modules/list/state/sort/set-global.action.js +0 -9
  316. package/esm2015/modules/list/state/sort/sort.model.js +0 -27
  317. package/esm2015/modules/list/state/sort/sort.orchestrator.js +0 -30
  318. package/esm2015/modules/list/state/toolbar/disable.action.js +0 -9
  319. package/esm2015/modules/list/state/toolbar/load.action.js +0 -10
  320. package/esm2015/modules/list/state/toolbar/remove.action.js +0 -9
  321. package/esm2015/modules/list/state/toolbar/set-exists.action.js +0 -9
  322. package/esm2015/modules/list/state/toolbar/set-type.action.js +0 -9
  323. package/esm2015/modules/list/state/toolbar/show-multiselect-toolbar.action.js +0 -9
  324. package/esm2015/modules/list/state/toolbar/toolbar-item.model.js +0 -16
  325. package/esm2015/modules/list/state/toolbar/toolbar.model.js +0 -17
  326. package/esm2015/modules/list/state/toolbar/toolbar.orchestrator.js +0 -80
  327. package/esm2015/modules/list/state/views/load.action.js +0 -9
  328. package/esm2015/modules/list/state/views/set-active.action.js +0 -9
  329. package/esm2015/modules/list/state/views/view.model.js +0 -10
  330. package/esm2015/modules/list/state/views/views.model.js +0 -13
  331. package/esm2015/modules/list/state/views/views.orchestrator.js +0 -21
  332. package/esm2015/modules/list-data-provider-in-memory/list-data-in-memory.provider.js +0 -160
  333. package/esm2015/modules/list-filters/filter.model.js +0 -18
  334. package/esm2015/modules/list-filters/list-filter-button.component.js +0 -43
  335. package/esm2015/modules/list-filters/list-filter-inline-item-renderer.component.js +0 -34
  336. package/esm2015/modules/list-filters/list-filter-inline-item.component.js +0 -45
  337. package/esm2015/modules/list-filters/list-filter-inline.component.js +0 -72
  338. package/esm2015/modules/list-filters/list-filter-inline.model.js +0 -21
  339. package/esm2015/modules/list-filters/list-filter-summary.component.js +0 -58
  340. package/esm2015/modules/list-filters/list-filters.module.js +0 -41
  341. package/esm2015/modules/list-paging/list-paging.component.js +0 -87
  342. package/esm2015/modules/list-paging/list-paging.module.js +0 -19
  343. package/esm2015/modules/list-toolbar/list-multiselect-toolbar.component.js +0 -151
  344. package/esm2015/modules/list-toolbar/list-secondary-actions/list-secondary-action.component.js +0 -32
  345. package/esm2015/modules/list-toolbar/list-secondary-actions/list-secondary-action.js +0 -2
  346. package/esm2015/modules/list-toolbar/list-secondary-actions/list-secondary-actions.component.js +0 -44
  347. package/esm2015/modules/list-toolbar/list-secondary-actions/list-secondary-actions.module.js +0 -46
  348. package/esm2015/modules/list-toolbar/list-secondary-actions/list-secondary-actions.service.js +0 -36
  349. package/esm2015/modules/list-toolbar/list-toolbar-item-renderer.component.js +0 -30
  350. package/esm2015/modules/list-toolbar/list-toolbar-item.component.js +0 -47
  351. package/esm2015/modules/list-toolbar/list-toolbar-search-actions.component.js +0 -19
  352. package/esm2015/modules/list-toolbar/list-toolbar-sort.component.js +0 -25
  353. package/esm2015/modules/list-toolbar/list-toolbar-view-actions.component.js +0 -21
  354. package/esm2015/modules/list-toolbar/list-toolbar.component.js +0 -358
  355. package/esm2015/modules/list-toolbar/list-toolbar.module.js +0 -87
  356. package/esm2015/modules/list-toolbar/state/config/config.model.js +0 -14
  357. package/esm2015/modules/list-toolbar/state/config/config.orchestrator.js +0 -21
  358. package/esm2015/modules/list-toolbar/state/config/set-search-enabled.action.js +0 -9
  359. package/esm2015/modules/list-toolbar/state/config/set-sort-selector-enabled.action.js +0 -10
  360. package/esm2015/modules/list-toolbar/state/toolbar-state-action.type.js +0 -2
  361. package/esm2015/modules/list-toolbar/state/toolbar-state.model.js +0 -10
  362. package/esm2015/modules/list-toolbar/state/toolbar-state.rxstate.js +0 -19
  363. package/esm2015/modules/list-toolbar/state/toolbar-state.state-node.js +0 -21
  364. package/esm2015/modules/shared/sky-list-builder-resources.module.js +0 -53
  365. package/esm2015/public-api.js +0 -78
  366. package/public-api.d.ts +0 -74
@@ -1,304 +0,0 @@
1
- import { combineLatest as observableCombineLatest, of as observableOf, Subject, } from 'rxjs';
2
- import { distinctUntilChanged, flatMap, map as observableMap, skip, take, takeUntil, } from 'rxjs/operators';
3
- import { ChangeDetectionStrategy, Component, ContentChildren, EventEmitter, Input, Output, } from '@angular/core';
4
- import { getValue } from '@skyux/list-builder-common';
5
- import { ListItemsLoadAction } from './state/items/load.action';
6
- import { ListItemsSetLoadingAction } from './state/items/set-loading.action';
7
- import { ListSelectedLoadAction } from './state/selected/load.action';
8
- import { ListSelectedSetLoadingAction } from './state/selected/set-loading.action';
9
- import { ListSortModel } from './state/sort/sort.model';
10
- import { ListSortSetFieldSelectorsAction } from './state/sort/set-field-selectors.action';
11
- import { ListDataRequestModel } from './list-data-request.model';
12
- import { ListDataResponseModel } from './list-data-response.model';
13
- import { SkyListInMemoryDataProvider } from '../list-data-provider-in-memory/list-data-in-memory.provider';
14
- import { ListState } from './state/list-state.state-node';
15
- import { ListStateDispatcher } from './state/list-state.rxstate';
16
- import { isObservable, ListItemModel, } from '@skyux/list-builder-common';
17
- import { ListViewComponent } from './list-view.component';
18
- import { ListPagingSetPageNumberAction } from './state/paging/set-page-number.action';
19
- import { ListViewsLoadAction } from './state/views/load.action';
20
- import { ListViewsSetActiveAction } from './state/views/set-active.action';
21
- import { ListViewModel } from './state/views/view.model';
22
- import * as i0 from "@angular/core";
23
- import * as i1 from "./state/list-state.state-node";
24
- import * as i2 from "./state/list-state.rxstate";
25
- let idIndex = 0;
26
- export class SkyListComponent {
27
- constructor(state, dispatcher) {
28
- this.state = state;
29
- this.dispatcher = dispatcher;
30
- this.id = `sky-list-cmp-${++idIndex}`;
31
- /**
32
- * Specifies the data to display. The list component requires this property or the
33
- * `dataProvider` property. For checklist or multiselect grids, each row requires an
34
- * `id` property to manage selected items with the `selectedIds` input and the
35
- * `selectedIdsChange` event. If you do not provide an `id`, the list automatically
36
- * generates one. To update data in your view outside of a `dataProvider`, you must use
37
- * an observable instead of a static array.
38
- */
39
- this.data = [];
40
- /**
41
- * Specifies a set of filters to apply to list data.
42
- * These filters create a filter summary when the list includes the
43
- * [`sky-list-filter-summary`](https://developer.blackbaud.com/skyux/components/list/filters)
44
- * component.
45
- */
46
- this.appliedFilters = [];
47
- /**
48
- * For list views that support item selection, emits the selected entries.
49
- */
50
- this.selectedIdsChange = new EventEmitter();
51
- /**
52
- * Emits the filters applied to the list.
53
- */
54
- this.appliedFiltersChange = new EventEmitter();
55
- this.dataFirstLoad = false;
56
- this.lastSelectedIds = [];
57
- this.lastFilters = [];
58
- this.ngUnsubscribe = new Subject();
59
- }
60
- ngAfterContentInit() {
61
- if (this.data && this.dataProvider && this.initialTotal) {
62
- this.dataFirstLoad = true;
63
- }
64
- if (this.listViews.length > 0) {
65
- let defaultView = this.defaultView === undefined
66
- ? this.listViews.first
67
- : this.defaultView;
68
- this.dispatcher.next(new ListViewsLoadAction(this.listViews.map((v) => new ListViewModel(v.id, v.label))));
69
- // activate the default view
70
- this.dispatcher.next(new ListViewsSetActiveAction(defaultView.id));
71
- }
72
- else {
73
- return;
74
- }
75
- // set sort fields
76
- getValue(this.sortFields, (sortFields) => {
77
- let sortArray;
78
- if (!Array.isArray(sortFields) && sortFields) {
79
- sortArray = [sortFields];
80
- }
81
- else {
82
- sortArray = sortFields;
83
- }
84
- this.dispatcher.next(new ListSortSetFieldSelectorsAction(sortArray || []));
85
- });
86
- this.displayedItems.subscribe((result) => {
87
- this.dispatcher.next(new ListItemsSetLoadingAction());
88
- this.dispatcher.next(new ListItemsLoadAction(result.items, true, true, result.count));
89
- });
90
- // Watch for selection changes.
91
- this.state
92
- .pipe(observableMap((current) => current.selected), takeUntil(this.ngUnsubscribe), distinctUntilChanged())
93
- .subscribe((selected) => {
94
- // Update lastSelectedIds to help us retain user selections.
95
- let selectedIdsList = [];
96
- selected.item.selectedIdMap.forEach((value, key) => {
97
- if (value === true) {
98
- selectedIdsList.push(key);
99
- }
100
- });
101
- // If changes are distinct, emit selectedIdsChange.
102
- const distinctChanges = !this.arraysEqual(this.lastSelectedIds, selectedIdsList);
103
- if (this.selectedIdsChange.observers.length > 0 && distinctChanges) {
104
- this.selectedIdsChange.emit(selected.item.selectedIdMap);
105
- }
106
- this.lastSelectedIds = selectedIdsList;
107
- });
108
- if (this.appliedFiltersChange.observers.length > 0) {
109
- this.state
110
- .pipe(observableMap((current) => current.filters), takeUntil(this.ngUnsubscribe), skip(1))
111
- .subscribe((filters) => {
112
- /**
113
- * We are doing this instead of a distinctUntilChange due to memory allocation issues
114
- * with the javascript array. To fix fully the array should be changed to an object in
115
- * a breaking change.
116
- */
117
- if (!this.arraysEqual(filters, this.lastFilters)) {
118
- this.lastFilters = filters.slice(0);
119
- this.appliedFiltersChange.emit(filters);
120
- }
121
- });
122
- }
123
- }
124
- ngOnChanges(changes) {
125
- if (changes['appliedFilters'] &&
126
- changes['appliedFilters'].currentValue !==
127
- changes['appliedFilters'].previousValue) {
128
- this.state.pipe(take(1)).subscribe((currentState) => {
129
- if (currentState.paging.pageNumber &&
130
- currentState.paging.pageNumber !== 1) {
131
- this.dispatcher.next(new ListPagingSetPageNumberAction(Number(1)));
132
- }
133
- this.dispatcher.filtersUpdate(this.appliedFilters);
134
- });
135
- }
136
- if (changes['selectedIds']) {
137
- // Only send selection changes to dispatcher if changes are distinct.
138
- const newSelectedIds = changes['selectedIds'].currentValue;
139
- if (!this.arraysEqual(newSelectedIds, this.lastSelectedIds)) {
140
- this.dispatcher.setSelected(newSelectedIds, true, true);
141
- }
142
- }
143
- }
144
- ngOnDestroy() {
145
- this.ngUnsubscribe.next();
146
- this.ngUnsubscribe.complete();
147
- }
148
- refreshDisplayedItems() {
149
- this.displayedItems.pipe(take(1)).subscribe((result) => {
150
- this.dispatcher.next(new ListItemsSetLoadingAction());
151
- this.dispatcher.next(new ListItemsLoadAction(result.items, true, true, result.count));
152
- });
153
- }
154
- get displayedItems() {
155
- if (!this.data && !this.dataProvider) {
156
- throw new Error('List requires data or dataProvider to be set.');
157
- }
158
- let data = this.data;
159
- if (!isObservable(data)) {
160
- data = observableOf(this.data);
161
- }
162
- if (!this.dataProvider) {
163
- this.dataProvider = new SkyListInMemoryDataProvider(data, this.searchFunction);
164
- }
165
- let selectedIds = this.selectedIds || observableOf([]);
166
- if (!isObservable(selectedIds)) {
167
- selectedIds = observableOf(selectedIds);
168
- }
169
- let selectedChanged = false;
170
- // This subject is used to cancel previous request to the list's data provider when a new change
171
- // to the list's state occurs. In a future breaking change this should be replaced or coupled
172
- // with adding a debounce time to the Observable which watches for state changes.
173
- let cancelLastRequest = new Subject();
174
- return observableCombineLatest([
175
- this.state.pipe(observableMap((s) => s.filters), distinctUntilChanged()),
176
- this.state.pipe(observableMap((s) => s.search), distinctUntilChanged()),
177
- this.state.pipe(observableMap((s) => s.sort.fieldSelectors), distinctUntilChanged()),
178
- this.state.pipe(observableMap((s) => s.paging.itemsPerPage), distinctUntilChanged()),
179
- this.state.pipe(observableMap((s) => s.paging.pageNumber), distinctUntilChanged()),
180
- this.state.pipe(observableMap((s) => s.toolbar.disabled), distinctUntilChanged()),
181
- selectedIds.pipe(distinctUntilChanged(), observableMap((selected) => {
182
- selectedChanged = true;
183
- return selected;
184
- })),
185
- data.pipe(distinctUntilChanged()),
186
- ], (filters, search, sortFieldSelectors, itemsPerPage, pageNumber, isToolbarDisabled, selected, itemsData) => {
187
- cancelLastRequest.next();
188
- cancelLastRequest.complete();
189
- if (selectedChanged) {
190
- this.dispatcher.next(new ListSelectedSetLoadingAction());
191
- this.dispatcher.next(new ListSelectedLoadAction(selected));
192
- this.dispatcher.next(new ListSelectedSetLoadingAction(false));
193
- selectedChanged = false;
194
- }
195
- let response;
196
- if (this.dataFirstLoad) {
197
- this.dataFirstLoad = false;
198
- let initialItems = itemsData.map((d) => new ListItemModel(d.id || `sky-list-item-model-${++idIndex}`, d));
199
- response = observableOf(new ListDataResponseModel({
200
- count: this.initialTotal,
201
- items: initialItems,
202
- })).pipe(takeUntil(cancelLastRequest));
203
- }
204
- else {
205
- response = this.dataProvider
206
- .get(new ListDataRequestModel({
207
- filters: filters,
208
- pageSize: itemsPerPage,
209
- pageNumber: pageNumber,
210
- search: search,
211
- sort: new ListSortModel({ fieldSelectors: sortFieldSelectors }),
212
- isToolbarDisabled: isToolbarDisabled,
213
- }))
214
- .pipe(takeUntil(cancelLastRequest));
215
- }
216
- return response;
217
- }).pipe(takeUntil(this.ngUnsubscribe),
218
- // Retain user selections from previous state.
219
- // This is only necessary for grids component (based on item.isSelected).
220
- observableMap((response) => {
221
- return response.pipe(observableMap((listDataResponseModel) => {
222
- return new ListDataResponseModel({
223
- count: listDataResponseModel.count,
224
- items: this.getItemsAndRetainSelections(listDataResponseModel.items, this.lastSelectedIds),
225
- });
226
- }));
227
- }), flatMap((value) => value));
228
- }
229
- get selectedItems() {
230
- return observableCombineLatest(this.state.pipe(observableMap((current) => current.items.items), distinctUntilChanged()), this.state.pipe(observableMap((current) => current.selected), distinctUntilChanged()), (items, selected) => {
231
- return items.filter((i) => selected.item.selectedIdMap.get(i.id));
232
- }).pipe(takeUntil(this.ngUnsubscribe));
233
- }
234
- get lastUpdate() {
235
- return this.state.pipe(takeUntil(this.ngUnsubscribe), observableMap((s) => s.items.lastUpdate ? new Date(s.items.lastUpdate) : undefined));
236
- }
237
- get views() {
238
- return this.listViews.toArray();
239
- }
240
- get itemCount() {
241
- return this.dataProvider.count();
242
- }
243
- getItemsAndRetainSelections(newList, selectedIds) {
244
- let updatedListModel = newList.slice();
245
- updatedListModel.forEach((item) => {
246
- item.isSelected = selectedIds.indexOf(item.id) > -1 ? true : false;
247
- });
248
- return updatedListModel;
249
- }
250
- arraysEqual(arrayA, arrayB) {
251
- /* istanbul ignore next */
252
- if (arrayA === arrayB) {
253
- return true;
254
- }
255
- if (arrayA === undefined || arrayB === undefined) {
256
- return false;
257
- }
258
- if (arrayA.length !== arrayB.length) {
259
- return false;
260
- }
261
- for (let i = 0; i < arrayA.length; ++i) {
262
- if (arrayA[i] !== arrayB[i]) {
263
- return false;
264
- }
265
- }
266
- return true;
267
- }
268
- }
269
- SkyListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListComponent, deps: [{ token: i1.ListState }, { token: i2.ListStateDispatcher }], target: i0.ɵɵFactoryTarget.Component });
270
- SkyListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.15", type: SkyListComponent, selector: "sky-list", inputs: { data: "data", dataProvider: "dataProvider", defaultView: "defaultView", initialTotal: "initialTotal", selectedIds: "selectedIds", sortFields: "sortFields", appliedFilters: "appliedFilters", searchFunction: ["search", "searchFunction"] }, outputs: { selectedIdsChange: "selectedIdsChange", appliedFiltersChange: "appliedFiltersChange" }, providers: [ListState, ListStateDispatcher], queries: [{ propertyName: "listViews", predicate: ListViewComponent }], usesOnChanges: true, ngImport: i0, template: '<ng-content></ng-content>', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
271
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListComponent, decorators: [{
272
- type: Component,
273
- args: [{
274
- selector: 'sky-list',
275
- template: '<ng-content></ng-content>',
276
- providers: [ListState, ListStateDispatcher],
277
- changeDetection: ChangeDetectionStrategy.OnPush,
278
- }]
279
- }], ctorParameters: function () { return [{ type: i1.ListState }, { type: i2.ListStateDispatcher }]; }, propDecorators: { data: [{
280
- type: Input
281
- }], dataProvider: [{
282
- type: Input
283
- }], defaultView: [{
284
- type: Input
285
- }], initialTotal: [{
286
- type: Input
287
- }], selectedIds: [{
288
- type: Input
289
- }], sortFields: [{
290
- type: Input
291
- }], appliedFilters: [{
292
- type: Input
293
- }], selectedIdsChange: [{
294
- type: Output
295
- }], appliedFiltersChange: [{
296
- type: Output
297
- }], searchFunction: [{
298
- type: Input,
299
- args: ['search']
300
- }], listViews: [{
301
- type: ContentChildren,
302
- args: [ListViewComponent]
303
- }] } });
304
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saXN0LWJ1aWxkZXIvc3JjL21vZHVsZXMvbGlzdC9saXN0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsYUFBYSxJQUFJLHVCQUF1QixFQUV4QyxFQUFFLElBQUksWUFBWSxFQUNsQixPQUFPLEdBQ1IsTUFBTSxNQUFNLENBQUM7QUFFZCxPQUFPLEVBQ0wsb0JBQW9CLEVBQ3BCLE9BQU8sRUFDUCxHQUFHLElBQUksYUFBYSxFQUNwQixJQUFJLEVBQ0osSUFBSSxFQUNKLFNBQVMsR0FDVixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFFTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULGVBQWUsRUFDZixZQUFZLEVBQ1osS0FBSyxFQUNMLE1BQU0sR0FLUCxNQUFNLGVBQWUsQ0FBQztBQUV2QixPQUFPLEVBQWEsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFakUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFaEUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFN0UsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFFdEUsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFJbkYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXhELE9BQU8sRUFBRSwrQkFBK0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBSTFGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBRWpFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBSW5FLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLDhEQUE4RCxDQUFDO0FBRTNH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Szt1QkFBQyxRQUFRO2dCQU1QLFNBQVM7c0JBRGhCLGVBQWU7dUJBQUMsaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgY29tYmluZUxhdGVzdCBhcyBvYnNlcnZhYmxlQ29tYmluZUxhdGVzdCxcbiAgT2JzZXJ2YWJsZSxcbiAgb2YgYXMgb2JzZXJ2YWJsZU9mLFxuICBTdWJqZWN0LFxufSBmcm9tICdyeGpzJztcblxuaW1wb3J0IHtcbiAgZGlzdGluY3RVbnRpbENoYW5nZWQsXG4gIGZsYXRNYXAsXG4gIG1hcCBhcyBvYnNlcnZhYmxlTWFwLFxuICBza2lwLFxuICB0YWtlLFxuICB0YWtlVW50aWwsXG59IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuaW1wb3J0IHtcbiAgQWZ0ZXJDb250ZW50SW5pdCxcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgQ29udGVudENoaWxkcmVuLFxuICBFdmVudEVtaXR0ZXIsXG4gIElucHV0LFxuICBPdXRwdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBRdWVyeUxpc3QsXG4gIFNpbXBsZUNoYW5nZXMsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBBc3luY0l0ZW0sIGdldFZhbHVlIH0gZnJvbSAnQHNreXV4L2xpc3QtYnVpbGRlci1jb21tb24nO1xuXG5pbXBvcnQgeyBMaXN0SXRlbXNMb2FkQWN0aW9uIH0gZnJvbSAnLi9zdGF0ZS9pdGVtcy9sb2FkLmFjdGlvbic7XG5cbmltcG9ydCB7IExpc3RJdGVtc1NldExvYWRpbmdBY3Rpb24gfSBmcm9tICcuL3N0YXRlL2l0ZW1zL3NldC1sb2FkaW5nLmFjdGlvbic7XG5cbmltcG9ydCB7IExpc3RTZWxlY3RlZExvYWRBY3Rpb24gfSBmcm9tICcuL3N0YXRlL3NlbGVjdGVkL2xvYWQuYWN0aW9uJztcblxuaW1wb3J0IHsgTGlzdFNlbGVjdGVkU2V0TG9hZGluZ0FjdGlvbiB9IGZyb20gJy4vc3RhdGUvc2VsZWN0ZWQvc2V0LWxvYWRpbmcuYWN0aW9uJztcblxuaW1wb3J0IHsgTGlzdFNlbGVjdGVkTW9kZWwgfSBmcm9tICcuL3N0YXRlL3NlbGVjdGVkL3NlbGVjdGVkLm1vZGVsJztcblxuaW1wb3J0IHsgTGlzdFNvcnRNb2RlbCB9IGZyb20gJy4vc3RhdGUvc29ydC9zb3J0Lm1vZGVsJztcblxuaW1wb3J0IHsgTGlzdFNvcnRTZXRGaWVsZFNlbGVjdG9yc0FjdGlvbiB9IGZyb20gJy4vc3RhdGUvc29ydC9zZXQtZmllbGQtc2VsZWN0b3JzLmFjdGlvbic7XG5cbmltcG9ydCB7IExpc3RGaWx0ZXJNb2RlbCB9IGZyb20gJy4uL2xpc3QtZmlsdGVycy9maWx0ZXIubW9kZWwnO1xuXG5pbXBvcnQgeyBMaXN0RGF0YVJlcXVlc3RNb2RlbCB9IGZyb20gJy4vbGlzdC1kYXRhLXJlcXVlc3QubW9kZWwnO1xuXG5pbXBvcnQgeyBMaXN0RGF0YVJlc3BvbnNlTW9kZWwgfSBmcm9tICcuL2xpc3QtZGF0YS1yZXNwb25zZS5tb2RlbCc7XG5cbmltcG9ydCB7IExpc3REYXRhUHJvdmlkZXIgfSBmcm9tICcuL2xpc3QtZGF0YS5wcm92aWRlcic7XG5cbmltcG9ydCB7IFNreUxpc3RJbk1lbW9yeURhdGFQcm92aWRlciB9IGZyb20gJy4uL2xpc3QtZGF0YS1wcm92aWRlci1pbi1tZW1vcnkvbGlzdC1kYXRhLWluLW1lbW9yeS5wcm92aWRlcic7XG5cbmltcG9ydCB7IExpc3RTdGF0ZSB9IGZyb20gJy4vc3RhdGUvbGlzdC1zdGF0ZS5zdGF0ZS1ub2RlJztcblxuaW1wb3J0IHsgTGlzdFN0YXRlRGlzcGF0Y2hlciB9IGZyb20gJy4vc3RhdGUvbGlzdC1zdGF0ZS5yeHN0YXRlJztcblxuaW1wb3J0IHtcbiAgaXNPYnNlcnZhYmxlLFxuICBMaXN0SXRlbU1vZGVsLFxuICBMaXN0U29ydEZpZWxkU2VsZWN0b3JNb2RlbCxcbn0gZnJvbSAnQHNreXV4L2xpc3QtYnVpbGRlci1jb21tb24nO1xuXG5pbXBvcnQgeyBMaXN0Vmlld0NvbXBvbmVudCB9IGZyb20gJy4vbGlzdC12aWV3LmNvbXBvbmVudCc7XG5cbmltcG9ydCB7IExpc3RQYWdpbmdTZXRQYWdlTnVtYmVyQWN0aW9uIH0gZnJvbSAnLi9zdGF0ZS9wYWdpbmcvc2V0LXBhZ2UtbnVtYmVyLmFjdGlvbic7XG5cbmltcG9ydCB7IExpc3RTZWFyY2hNb2RlbCB9IGZyb20gJy4vc3RhdGUvc2VhcmNoL3NlYXJjaC5tb2RlbCc7XG5cbmltcG9ydCB7IExpc3RWaWV3c0xvYWRBY3Rpb24gfSBmcm9tICcuL3N0YXRlL3ZpZXdzL2xvYWQuYWN0aW9uJztcblxuaW1wb3J0IHsgTGlzdFZpZXdzU2V0QWN0aXZlQWN0aW9uIH0gZnJvbSAnLi9zdGF0ZS92aWV3cy9zZXQtYWN0aXZlLmFjdGlvbic7XG5cbmltcG9ydCB7IExpc3RWaWV3TW9kZWwgfSBmcm9tICcuL3N0YXRlL3ZpZXdzL3ZpZXcubW9kZWwnO1xuXG5sZXQgaWRJbmRleCA9IDA7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3NreS1saXN0JyxcbiAgdGVtcGxhdGU6ICc8bmctY29udGVudD48L25nLWNvbnRlbnQ+JyxcbiAgcHJvdmlkZXJzOiBbTGlzdFN0YXRlLCBMaXN0U3RhdGVEaXNwYXRjaGVyXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIFNreUxpc3RDb21wb25lbnRcbiAgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkNoYW5nZXMsIE9uRGVzdHJveVxue1xuICBwdWJsaWMgaWQ6IHN0cmluZyA9IGBza3ktbGlzdC1jbXAtJHsrK2lkSW5kZXh9YDtcbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgZGF0YSB0byBkaXNwbGF5LiBUaGUgbGlzdCBjb21wb25lbnQgcmVxdWlyZXMgdGhpcyBwcm9wZXJ0eSBvciB0aGVcbiAgICogYGRhdGFQcm92aWRlcmAgcHJvcGVydHkuIEZvciBjaGVja2xpc3Qgb3IgbXVsdGlzZWxlY3QgZ3JpZHMsIGVhY2ggcm93IHJlcXVpcmVzIGFuXG4gICAqIGBpZGAgcHJvcGVydHkgdG8gbWFuYWdlIHNlbGVjdGVkIGl0ZW1zIHdpdGggdGhlIGBzZWxlY3RlZElkc2AgaW5wdXQgYW5kIHRoZVxuICAgKiBgc2VsZWN0ZWRJZHNDaGFuZ2VgIGV2ZW50LiBJZiB5b3UgZG8gbm90IHByb3ZpZGUgYW4gYGlkYCwgdGhlIGxpc3QgYXV0b21hdGljYWxseVxuICAgKiBnZW5lcmF0ZXMgb25lLiBUbyB1cGRhdGUgZGF0YSBpbiB5b3VyIHZpZXcgb3V0c2lkZSBvZiBhIGBkYXRhUHJvdmlkZXJgLCB5b3UgbXVzdCB1c2VcbiAgICogYW4gb2JzZXJ2YWJsZSBpbnN0ZWFkIG9mIGEgc3RhdGljIGFycmF5LlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGRhdGE/OiBBcnJheTxhbnk+IHwgT2JzZXJ2YWJsZTxBcnJheTxhbnk+PiA9IFtdO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgYSBkYXRhIHByb3ZpZGVyIHRvIG9idGFpbiB0aGUgZGF0YSB0byBkaXNwbGF5LiBUaGUgbGlzdCBjb21wb25lbnQgcmVxdWlyZXNcbiAgICogdGhpcyBwcm9wZXJ0eSBvciB0aGUgYGRhdGFgIHByb3BlcnR5LiBGb3IgbGlzdHMgdGhhdCB1c2UgYGRhdGFQcm92aWRlcmAgaW5zdGVhZCBvZiBgZGF0YWAsXG4gICAqIGNvbnN1bWVycyBhcmUgcmVzcG9uc2libGUgZm9yIG1hbmFnaW5nIGFsbCBgTGlzdERhdGFSZXF1ZXN0TW9kZWxgIHByb3BlcnRpZXMuXG4gICAqIEBkZWZhdWx0IFNreUxpc3RJbk1lbW9yeURhdGFQcm92aWRlclxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGRhdGFQcm92aWRlcj86IExpc3REYXRhUHJvdmlkZXI7XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbFxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGRlZmF1bHRWaWV3PzogTGlzdFZpZXdDb21wb25lbnQ7XG5cbiAgLyoqXG4gICAqIFNwZWNpZmllcyB0aGUgdG90YWwgbnVtYmVyIG9mIGl0ZW1zIGZvciB0aGUgaW5pdGlhbCBkYXRhIHNldCB3aGVuIGluaXRpYWxpemVkLiBXaGVuXG4gICAqIHVzZWQgaW4gY29uanVuY3Rpb24gd2l0aCBgZGF0YWAgYW5kIGBkYXRhUHJvdmlkZXJgLCBpdCBhbGxvd3MgYW4gaW5pdGlhbCBkYXRhIHRvIGJlXG4gICAqIHNldCB3aXRoIHRoZSBuZWVkIHRvIGNhbGwgdGhlIGBkYXRhUHJvdmlkZXJgLlxuICAgKi9cbiAgQElucHV0KClcbiAgcHVibGljIGluaXRpYWxUb3RhbD86IG51bWJlcjtcblxuICAvKipcbiAgICogU3BlY2lmaWVzIGEgc2V0IG9mIElEcyBmb3IgdGhlIGl0ZW1zIHRvIHNlbGVjdCBpbiBhIGNoZWNrbGlzdCBvciBtdWx0aXNlbGVjdCBncmlkLlxuICAgKiBUaGUgSURzIG1hdGNoIHRoZSBgaWRgIHByb3BlcnRpZXMgb2YgdGhlIGBkYXRhYCBvYmplY3RzLiBJdGVtcyB3aXRoIElEcyB0aGF0IGFyZSBub3RcbiAgICogaW5jbHVkZWQgYXJlIGRlLXNlbGVjdGVkIGluIHRoZSBjaGVja2xpc3Qgb3IgbXVsdGlzZWxlY3QgZ3JpZC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzZWxlY3RlZElkcz86IEFycmF5PHN0cmluZz4gfCBPYnNlcnZhYmxlPEFycmF5PHN0cmluZz4+O1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgYSBzZXQgb2YgZmllbGRzIHRvIHNvcnQgYnkuIElmIGFycmF5IG9mIGZpZWxkcyB0aGVuIHNvcnRlZCBieSBvcmRlciBvZiBhcnJheS5cbiAgICogRm9yIGluZm9ybWF0aW9uIGFib3V0IGBMaXN0U29ydEZpZWxkU2VsZWN0b3JNb2RlbGAsIHNlZSB0aGVcbiAgICogW3NoYXJlZCBjbGFzc2VzIGZvciBsaXN0c10oaHR0cHM6Ly9kZXZlbG9wZXIuYmxhY2tiYXVkLmNvbS9za3l1eC1saXN0LWJ1aWxkZXItY29tbW9uL2RvY3MvbGlzdC1idWlsZGVyLWNvbW1vbikuXG4gICAqL1xuICBASW5wdXQoKVxuICBwdWJsaWMgc29ydEZpZWxkcz86XG4gICAgfCBMaXN0U29ydEZpZWxkU2VsZWN0b3JNb2RlbFxuICAgIHwgQXJyYXk8TGlzdFNvcnRGaWVsZFNlbGVjdG9yTW9kZWw+XG4gICAgfCBPYnNlcnZhYmxlPEFycmF5PExpc3RTb3J0RmllbGRTZWxlY3Rvck1vZGVsPj5cbiAgICB8IE9ic2VydmFibGU8TGlzdFNvcnRGaWVsZFNlbGVjdG9yTW9kZWw+O1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgYSBzZXQgb2YgZmlsdGVycyB0byBhcHBseSB0byBsaXN0IGRhdGEuXG4gICAqIFRoZXNlIGZpbHRlcnMgY3JlYXRlIGEgZmlsdGVyIHN1bW1hcnkgd2hlbiB0aGUgbGlzdCBpbmNsdWRlcyB0aGVcbiAgICogW2Bza3ktbGlzdC1maWx0ZXItc3VtbWFyeWBdKGh0dHBzOi8vZGV2ZWxvcGVyLmJsYWNrYmF1ZC5jb20vc2t5dXgvY29tcG9uZW50cy9saXN0L2ZpbHRlcnMpXG4gICAqIGNvbXBvbmVudC5cbiAgICovXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBhcHBsaWVkRmlsdGVyczogQXJyYXk8TGlzdEZpbHRlck1vZGVsPiA9IFtdO1xuXG4gIC8qKlxuICAgKiBGb3IgbGlzdCB2aWV3cyB0aGF0IHN1cHBvcnQgaXRlbSBzZWxlY3Rpb24sIGVtaXRzIHRoZSBzZWxlY3RlZCBlbnRyaWVzLlxuICAgKi9cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBzZWxlY3RlZElkc0NoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8TWFwPHN0cmluZywgYm9vbGVhbj4+KCk7XG5cbiAgLyoqXG4gICAqIEVtaXRzIHRoZSBmaWx0ZXJzIGFwcGxpZWQgdG8gdGhlIGxpc3QuXG4gICAqL1xuICBAT3V0cHV0KClcbiAgcHVibGljIGFwcGxpZWRGaWx0ZXJzQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxBcnJheTxMaXN0RmlsdGVyTW9kZWw+PigpO1xuXG4gIC8qKlxuICAgKiBTcGVjaWZpZXMgYSBmdW5jdGlvbiB0byBhcHBseSBhcyBhIGdsb2JhbCBzb3J0IG9uIHRoZSBsaXN0LlxuICAgKi9cbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1pbnB1dC1yZW5hbWVcbiAgQElucHV0KCdzZWFyY2gnKVxuICBwdWJsaWMgc2VhcmNoRnVuY3Rpb246IChkYXRhOiBhbnksIHNlYXJjaFRleHQ6IHN0cmluZykgPT4gYm9vbGVhbjtcblxuICBwcml2YXRlIGRhdGFGaXJzdExvYWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICBAQ29udGVudENoaWxkcmVuKExpc3RWaWV3Q29tcG9uZW50KVxuICBwcml2YXRlIGxpc3RWaWV3czogUXVlcnlMaXN0PExpc3RWaWV3Q29tcG9uZW50PjtcblxuICBwcml2YXRlIGxhc3RTZWxlY3RlZElkczogc3RyaW5nW10gPSBbXTtcblxuICBwcml2YXRlIGxhc3RGaWx0ZXJzOiBMaXN0RmlsdGVyTW9kZWxbXSA9IFtdO1xuXG4gIHByaXZhdGUgbmdVbnN1YnNjcmliZSA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBzdGF0ZTogTGlzdFN0YXRlLFxuICAgIHByaXZhdGUgZGlzcGF0Y2hlcjogTGlzdFN0YXRlRGlzcGF0Y2hlclxuICApIHt9XG5cbiAgcHVibGljIG5nQWZ0ZXJDb250ZW50SW5pdCgpOiB2b2lkIHtcbiAgICBpZiAodGhpcy5kYXRhICYmIHRoaXMuZGF0YVByb3ZpZGVyICYmIHRoaXMuaW5pdGlhbFRvdGFsKSB7XG4gICAgICB0aGlzLmRhdGFGaXJzdExvYWQgPSB0cnVlO1xuICAgIH1cblxuICAgIGlmICh0aGlzLmxpc3RWaWV3cy5sZW5ndGggPiAwKSB7XG4gICAgICBsZXQgZGVmYXVsdFZpZXc6IExpc3RWaWV3Q29tcG9uZW50ID1cbiAgICAgICAgdGhpcy5kZWZhdWx0VmlldyA9PT0gdW5kZWZpbmVkXG4gICAgICAgICAgPyB0aGlzLmxpc3RWaWV3cy5maXJzdFxuICAgICAgICAgIDogdGhpcy5kZWZhdWx0VmlldztcblxuICAgICAgdGhpcy5kaXNwYXRjaGVyLm5leHQoXG4gICAgICAgIG5ldyBMaXN0Vmlld3NMb2FkQWN0aW9uKFxuICAgICAgICAgIHRoaXMubGlzdFZpZXdzLm1hcCgodikgPT4gbmV3IExpc3RWaWV3TW9kZWwodi5pZCwgdi5sYWJlbCkpXG4gICAgICAgIClcbiAgICAgICk7XG5cbiAgICAgIC8vIGFjdGl2YXRlIHRoZSBkZWZhdWx0IHZpZXdcbiAgICAgIHRoaXMuZGlzcGF0Y2hlci5uZXh0KG5ldyBMaXN0Vmlld3NTZXRBY3RpdmVBY3Rpb24oZGVmYXVsdFZpZXcuaWQpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIHNldCBzb3J0IGZpZWxkc1xuICAgIGdldFZhbHVlKFxuICAgICAgdGhpcy5zb3J0RmllbGRzLFxuICAgICAgKFxuICAgICAgICBzb3J0RmllbGRzOiBMaXN0U29ydEZpZWxkU2VsZWN0b3JNb2RlbFtdIHwgTGlzdFNvcnRGaWVsZFNlbGVjdG9yTW9kZWxcbiAgICAgICkgPT4ge1xuICAgICAgICBsZXQgc29ydEFycmF5OiBMaXN0U29ydEZpZWxkU2VsZWN0b3JNb2RlbFtdO1xuICAgICAgICBpZiAoIUFycmF5LmlzQXJyYXkoc29ydEZpZWxkcykgJiYgc29ydEZpZWxkcykge1xuICAgICAgICAgIHNvcnRBcnJheSA9IFtzb3J0RmllbGRzXTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICBzb3J0QXJyYXkgPSBzb3J0RmllbGRzIGFzIExpc3RTb3J0RmllbGRTZWxlY3Rvck1vZGVsW107XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5kaXNwYXRjaGVyLm5leHQoXG4gICAgICAgICAgbmV3IExpc3RTb3J0U2V0RmllbGRTZWxlY3RvcnNBY3Rpb24oc29ydEFycmF5IHx8IFtdKVxuICAgICAgICApO1xuICAgICAgfVxuICAgICk7XG5cbiAgICB0aGlzLmRpc3BsYXllZEl0ZW1zLnN1YnNjcmliZSgocmVzdWx0KSA9PiB7XG4gICAgICB0aGlzLmRpc3BhdGNoZXIubmV4dChuZXcgTGlzdEl0ZW1zU2V0TG9hZGluZ0FjdGlvbigpKTtcbiAgICAgIHRoaXMuZGlzcGF0Y2hlci5uZXh0KFxuICAgICAgICBuZXcgTGlzdEl0ZW1zTG9hZEFjdGlvbihyZXN1bHQuaXRlbXMsIHRydWUsIHRydWUsIHJlc3VsdC5jb3VudClcbiAgICAgICk7XG4gICAgfSk7XG5cbiAgICAvLyBXYXRjaCBmb3Igc2VsZWN0aW9uIGNoYW5nZXMuXG4gICAgdGhpcy5zdGF0ZVxuICAgICAgLnBpcGUoXG4gICAgICAgIG9ic2VydmFibGVNYXAoKGN1cnJlbnQpID0+IGN1cnJlbnQuc2VsZWN0ZWQpLFxuICAgICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSxcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICAgICAgKVxuICAgICAgLnN1YnNjcmliZSgoc2VsZWN0ZWQpID0+IHtcbiAgICAgICAgLy8gVXBkYXRlIGxhc3RTZWxlY3RlZElkcyB0byBoZWxwIHVzIHJldGFpbiB1c2VyIHNlbGVjdGlvbnMuXG4gICAgICAgIGxldCBzZWxlY3RlZElkc0xpc3Q6IHN0cmluZ1tdID0gW107XG4gICAgICAgIHNlbGVjdGVkLml0ZW0uc2VsZWN0ZWRJZE1hcC5mb3JFYWNoKCh2YWx1ZSwga2V5KSA9PiB7XG4gICAgICAgICAgaWYgKHZhbHVlID09PSB0cnVlKSB7XG4gICAgICAgICAgICBzZWxlY3RlZElkc0xpc3QucHVzaChrZXkpO1xuICAgICAgICAgIH1cbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gSWYgY2hhbmdlcyBhcmUgZGlzdGluY3QsIGVtaXQgc2VsZWN0ZWRJZHNDaGFuZ2UuXG4gICAgICAgIGNvbnN0IGRpc3RpbmN0Q2hhbmdlcyA9ICF0aGlzLmFycmF5c0VxdWFsKFxuICAgICAgICAgIHRoaXMubGFzdFNlbGVjdGVkSWRzLFxuICAgICAgICAgIHNlbGVjdGVkSWRzTGlzdFxuICAgICAgICApO1xuICAgICAgICBpZiAodGhpcy5zZWxlY3RlZElkc0NoYW5nZS5vYnNlcnZlcnMubGVuZ3RoID4gMCAmJiBkaXN0aW5jdENoYW5nZXMpIHtcbiAgICAgICAgICB0aGlzLnNlbGVjdGVkSWRzQ2hhbmdlLmVtaXQoc2VsZWN0ZWQuaXRlbS5zZWxlY3RlZElkTWFwKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMubGFzdFNlbGVjdGVkSWRzID0gc2VsZWN0ZWRJZHNMaXN0O1xuICAgICAgfSk7XG5cbiAgICBpZiAodGhpcy5hcHBsaWVkRmlsdGVyc0NoYW5nZS5vYnNlcnZlcnMubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5zdGF0ZVxuICAgICAgICAucGlwZShcbiAgICAgICAgICBvYnNlcnZhYmxlTWFwKChjdXJyZW50KSA9PiBjdXJyZW50LmZpbHRlcnMpLFxuICAgICAgICAgIHRha2VVbnRpbCh0aGlzLm5nVW5zdWJzY3JpYmUpLFxuICAgICAgICAgIHNraXAoMSlcbiAgICAgICAgKVxuICAgICAgICAuc3Vic2NyaWJlKChmaWx0ZXJzKSA9PiB7XG4gICAgICAgICAgLyoqXG4gICAgICAgICAgICogV2UgYXJlIGRvaW5nIHRoaXMgaW5zdGVhZCBvZiBhIGRpc3RpbmN0VW50aWxDaGFuZ2UgZHVlIHRvIG1lbW9yeSBhbGxvY2F0aW9uIGlzc3Vlc1xuICAgICAgICAgICAqIHdpdGggdGhlIGphdmFzY3JpcHQgYXJyYXkuIFRvIGZpeCBmdWxseSB0aGUgYXJyYXkgc2hvdWxkIGJlIGNoYW5nZWQgdG8gYW4gb2JqZWN0IGluXG4gICAgICAgICAgICogYSBicmVha2luZyBjaGFuZ2UuXG4gICAgICAgICAgICovXG4gICAgICAgICAgaWYgKCF0aGlzLmFycmF5c0VxdWFsKGZpbHRlcnMsIHRoaXMubGFzdEZpbHRlcnMpKSB7XG4gICAgICAgICAgICB0aGlzLmxhc3RGaWx0ZXJzID0gZmlsdGVycy5zbGljZSgwKTtcbiAgICAgICAgICAgIHRoaXMuYXBwbGllZEZpbHRlcnNDaGFuZ2UuZW1pdChmaWx0ZXJzKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZCB7XG4gICAgaWYgKFxuICAgICAgY2hhbmdlc1snYXBwbGllZEZpbHRlcnMnXSAmJlxuICAgICAgY2hhbmdlc1snYXBwbGllZEZpbHRlcnMnXS5jdXJyZW50VmFsdWUgIT09XG4gICAgICAgIGNoYW5nZXNbJ2FwcGxpZWRGaWx0ZXJzJ10ucHJldmlvdXNWYWx1ZVxuICAgICkge1xuICAgICAgdGhpcy5zdGF0ZS5waXBlKHRha2UoMSkpLnN1YnNjcmliZSgoY3VycmVudFN0YXRlKSA9PiB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICBjdXJyZW50U3RhdGUucGFnaW5nLnBhZ2VOdW1iZXIgJiZcbiAgICAgICAgICBjdXJyZW50U3RhdGUucGFnaW5nLnBhZ2VOdW1iZXIgIT09IDFcbiAgICAgICAgKSB7XG4gICAgICAgICAgdGhpcy5kaXNwYXRjaGVyLm5leHQobmV3IExpc3RQYWdpbmdTZXRQYWdlTnVtYmVyQWN0aW9uKE51bWJlcigxKSkpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5kaXNwYXRjaGVyLmZpbHRlcnNVcGRhdGUodGhpcy5hcHBsaWVkRmlsdGVycyk7XG4gICAgICB9KTtcbiAgICB9XG4gICAgaWYgKGNoYW5nZXNbJ3NlbGVjdGVkSWRzJ10pIHtcbiAgICAgIC8vIE9ubHkgc2VuZCBzZWxlY3Rpb24gY2hhbmdlcyB0byBkaXNwYXRjaGVyIGlmIGNoYW5nZXMgYXJlIGRpc3RpbmN0LlxuICAgICAgY29uc3QgbmV3U2VsZWN0ZWRJZHMgPSBjaGFuZ2VzWydzZWxlY3RlZElkcyddLmN1cnJlbnRWYWx1ZTtcbiAgICAgIGlmICghdGhpcy5hcnJheXNFcXVhbChuZXdTZWxlY3RlZElkcywgdGhpcy5sYXN0U2VsZWN0ZWRJZHMpKSB7XG4gICAgICAgIHRoaXMuZGlzcGF0Y2hlci5zZXRTZWxlY3RlZChuZXdTZWxlY3RlZElkcywgdHJ1ZSwgdHJ1ZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgIHRoaXMubmdVbnN1YnNjcmliZS5uZXh0KCk7XG4gICAgdGhpcy5uZ1Vuc3Vic2NyaWJlLmNvbXBsZXRlKCk7XG4gIH1cblxuICBwdWJsaWMgcmVmcmVzaERpc3BsYXllZEl0ZW1zKCk6IHZvaWQge1xuICAgIHRoaXMuZGlzcGxheWVkSXRlbXMucGlwZSh0YWtlKDEpKS5zdWJzY3JpYmUoKHJlc3VsdCkgPT4ge1xuICAgICAgdGhpcy5kaXNwYXRjaGVyLm5leHQobmV3IExpc3RJdGVtc1NldExvYWRpbmdBY3Rpb24oKSk7XG4gICAgICB0aGlzLmRpc3BhdGNoZXIubmV4dChcbiAgICAgICAgbmV3IExpc3RJdGVtc0xvYWRBY3Rpb24ocmVzdWx0Lml0ZW1zLCB0cnVlLCB0cnVlLCByZXN1bHQuY291bnQpXG4gICAgICApO1xuICAgIH0pO1xuICB9XG5cbiAgZ2V0IGRpc3BsYXllZEl0ZW1zKCk6IE9ic2VydmFibGU8TGlzdERhdGFSZXNwb25zZU1vZGVsPiB7XG4gICAgaWYgKCF0aGlzLmRhdGEgJiYgIXRoaXMuZGF0YVByb3ZpZGVyKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0xpc3QgcmVxdWlyZXMgZGF0YSBvciBkYXRhUHJvdmlkZXIgdG8gYmUgc2V0LicpO1xuICAgIH1cblxuICAgIGxldCBkYXRhOiBhbnkgPSB0aGlzLmRhdGE7XG4gICAgaWYgKCFpc09ic2VydmFibGUoZGF0YSkpIHtcbiAgICAgIGRhdGEgPSBvYnNlcnZhYmxlT2YodGhpcy5kYXRhKTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuZGF0YVByb3ZpZGVyKSB7XG4gICAgICB0aGlzLmRhdGFQcm92aWRlciA9IG5ldyBTa3lMaXN0SW5NZW1vcnlEYXRhUHJvdmlkZXIoXG4gICAgICAgIGRhdGEsXG4gICAgICAgIHRoaXMuc2VhcmNoRnVuY3Rpb25cbiAgICAgICk7XG4gICAgfVxuXG4gICAgbGV0IHNlbGVjdGVkSWRzID0gdGhpcy5zZWxlY3RlZElkcyB8fCBvYnNlcnZhYmxlT2YoW10pO1xuICAgIGlmICghaXNPYnNlcnZhYmxlKHNlbGVjdGVkSWRzKSkge1xuICAgICAgc2VsZWN0ZWRJZHMgPSBvYnNlcnZhYmxlT2Yoc2VsZWN0ZWRJZHMpO1xuICAgIH1cblxuICAgIGxldCBzZWxlY3RlZENoYW5nZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIC8vIFRoaXMgc3ViamVjdCBpcyB1c2VkIHRvIGNhbmNlbCBwcmV2aW91cyByZXF1ZXN0IHRvIHRoZSBsaXN0J3MgZGF0YSBwcm92aWRlciB3aGVuIGEgbmV3IGNoYW5nZVxuICAgIC8vIHRvIHRoZSBsaXN0J3Mgc3RhdGUgb2NjdXJzLiBJbiBhIGZ1dHVyZSBicmVha2luZyBjaGFuZ2UgdGhpcyBzaG91bGQgYmUgcmVwbGFjZWQgb3IgY291cGxlZFxuICAgIC8vIHdpdGggYWRkaW5nIGEgZGVib3VuY2UgdGltZSB0byB0aGUgT2JzZXJ2YWJsZSB3aGljaCB3YXRjaGVzIGZvciBzdGF0ZSBjaGFuZ2VzLlxuICAgIGxldCBjYW5jZWxMYXN0UmVxdWVzdCA9IG5ldyBTdWJqZWN0KCk7XG5cbiAgICByZXR1cm4gb2JzZXJ2YWJsZUNvbWJpbmVMYXRlc3QoXG4gICAgICBbXG4gICAgICAgIHRoaXMuc3RhdGUucGlwZShcbiAgICAgICAgICBvYnNlcnZhYmxlTWFwKChzKSA9PiBzLmZpbHRlcnMpLFxuICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcbiAgICAgICAgKSxcbiAgICAgICAgdGhpcy5zdGF0ZS5waXBlKFxuICAgICAgICAgIG9ic2VydmFibGVNYXAoKHMpID0+IHMuc2VhcmNoKSxcbiAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpXG4gICAgICAgICksXG4gICAgICAgIHRoaXMuc3RhdGUucGlwZShcbiAgICAgICAgICBvYnNlcnZhYmxlTWFwKChzKSA9PiBzLnNvcnQuZmllbGRTZWxlY3RvcnMpLFxuICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcbiAgICAgICAgKSxcbiAgICAgICAgdGhpcy5zdGF0ZS5waXBlKFxuICAgICAgICAgIG9ic2VydmFibGVNYXAoKHMpID0+IHMucGFnaW5nLml0ZW1zUGVyUGFnZSksXG4gICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICAgICAgICApLFxuICAgICAgICB0aGlzLnN0YXRlLnBpcGUoXG4gICAgICAgICAgb2JzZXJ2YWJsZU1hcCgocykgPT4gcy5wYWdpbmcucGFnZU51bWJlciksXG4gICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICAgICAgICApLFxuICAgICAgICB0aGlzLnN0YXRlLnBpcGUoXG4gICAgICAgICAgb2JzZXJ2YWJsZU1hcCgocykgPT4gcy50b29sYmFyLmRpc2FibGVkKSxcbiAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpXG4gICAgICAgICksXG4gICAgICAgIHNlbGVjdGVkSWRzLnBpcGUoXG4gICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgICBvYnNlcnZhYmxlTWFwKChzZWxlY3RlZCkgPT4ge1xuICAgICAgICAgICAgc2VsZWN0ZWRDaGFuZ2VkID0gdHJ1ZTtcbiAgICAgICAgICAgIHJldHVybiBzZWxlY3RlZDtcbiAgICAgICAgICB9KVxuICAgICAgICApLFxuICAgICAgICBkYXRhLnBpcGUoZGlzdGluY3RVbnRpbENoYW5nZWQoKSksXG4gICAgICBdLFxuICAgICAgKFxuICAgICAgICBmaWx0ZXJzOiBMaXN0RmlsdGVyTW9kZWxbXSxcbiAgICAgICAgc2VhcmNoOiBMaXN0U2VhcmNoTW9kZWwsXG4gICAgICAgIHNvcnRGaWVsZFNlbGVjdG9yczogQXJyYXk8TGlzdFNvcnRGaWVsZFNlbGVjdG9yTW9kZWw+LFxuICAgICAgICBpdGVtc1BlclBhZ2U6IG51bWJlcixcbiAgICAgICAgcGFnZU51bWJlcjogbnVtYmVyLFxuICAgICAgICBpc1Rvb2xiYXJEaXNhYmxlZDogYm9vbGVhbixcbiAgICAgICAgc2VsZWN0ZWQ6IEFycmF5PHN0cmluZz4sXG4gICAgICAgIGl0ZW1zRGF0YTogQXJyYXk8YW55PlxuICAgICAgKSA9PiB7XG4gICAgICAgIGNhbmNlbExhc3RSZXF1ZXN0Lm5leHQoKTtcbiAgICAgICAgY2FuY2VsTGFzdFJlcXVlc3QuY29tcGxldGUoKTtcbiAgICAgICAgaWYgKHNlbGVjdGVkQ2hhbmdlZCkge1xuICAgICAgICAgIHRoaXMuZGlzcGF0Y2hlci5uZXh0KG5ldyBMaXN0U2VsZWN0ZWRTZXRMb2FkaW5nQWN0aW9uKCkpO1xuICAgICAgICAgIHRoaXMuZGlzcGF0Y2hlci5uZXh0KG5ldyBMaXN0U2VsZWN0ZWRMb2FkQWN0aW9uKHNlbGVjdGVkKSk7XG4gICAgICAgICAgdGhpcy5kaXNwYXRjaGVyLm5leHQobmV3IExpc3RTZWxlY3RlZFNldExvYWRpbmdBY3Rpb24oZmFsc2UpKTtcbiAgICAgICAgICBzZWxlY3RlZENoYW5nZWQgPSBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGxldCByZXNwb25zZTogT2JzZXJ2YWJsZTxMaXN0RGF0YVJlc3BvbnNlTW9kZWw+O1xuICAgICAgICBpZiAodGhpcy5kYXRhRmlyc3RMb2FkKSB7XG4gICAgICAgICAgdGhpcy5kYXRhRmlyc3RMb2FkID0gZmFsc2U7XG4gICAgICAgICAgbGV0IGluaXRpYWxJdGVtcyA9IGl0ZW1zRGF0YS5tYXAoXG4gICAgICAgICAgICAoZCkgPT5cbiAgICAgICAgICAgICAgbmV3IExpc3RJdGVtTW9kZWwoZC5pZCB8fCBgc2t5LWxpc3QtaXRlbS1tb2RlbC0keysraWRJbmRleH1gLCBkKVxuICAgICAgICAgICk7XG4gICAgICAgICAgcmVzcG9uc2UgPSBvYnNlcnZhYmxlT2YoXG4gICAgICAgICAgICBuZXcgTGlzdERhdGFSZXNwb25zZU1vZGVsKHtcbiAgICAgICAgICAgICAgY291bnQ6IHRoaXMuaW5pdGlhbFRvdGFsLFxuICAgICAgICAgICAgICBpdGVtczogaW5pdGlhbEl0ZW1zLFxuICAgICAgICAgICAgfSlcbiAgICAgICAgICApLnBpcGUodGFrZVVudGlsKGNhbmNlbExhc3RSZXF1ZXN0KSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmVzcG9uc2UgPSB0aGlzLmRhdGFQcm92aWRlclxuICAgICAgICAgICAgLmdldChcbiAgICAgICAgICAgICAgbmV3IExpc3REYXRhUmVxdWVzdE1vZGVsKHtcbiAgICAgICAgICAgICAgICBmaWx0ZXJzOiBmaWx0ZXJzLFxuICAgICAgICAgICAgICAgIHBhZ2VTaXplOiBpdGVtc1BlclBhZ2UsXG4gICAgICAgICAgICAgICAgcGFnZU51bWJlcjogcGFnZU51bWJlcixcbiAgICAgICAgICAgICAgICBzZWFyY2g6IHNlYXJjaCxcbiAgICAgICAgICAgICAgICBzb3J0OiBuZXcgTGlzdFNvcnRNb2RlbCh7IGZpZWxkU2VsZWN0b3JzOiBzb3J0RmllbGRTZWxlY3RvcnMgfSksXG4gICAgICAgICAgICAgICAgaXNUb29sYmFyRGlzYWJsZWQ6IGlzVG9vbGJhckRpc2FibGVkLFxuICAgICAgICAgICAgICB9KVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKGNhbmNlbExhc3RSZXF1ZXN0KSk7XG4gICAgICAgIH1cblxuICAgICAgICByZXR1cm4gcmVzcG9uc2U7XG4gICAgICB9XG4gICAgKS5waXBlKFxuICAgICAgdGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSksXG5cbiAgICAgIC8vIFJldGFpbiB1c2VyIHNlbGVjdGlvbnMgZnJvbSBwcmV2aW91cyBzdGF0ZS5cbiAgICAgIC8vIFRoaXMgaXMgb25seSBuZWNlc3NhcnkgZm9yIGdyaWRzIGNvbXBvbmVudCAoYmFzZWQgb24gaXRlbS5pc1NlbGVjdGVkKS5cbiAgICAgIG9ic2VydmFibGVNYXAoKHJlc3BvbnNlKSA9PiB7XG4gICAgICAgIHJldHVybiByZXNwb25zZS5waXBlKFxuICAgICAgICAgIG9ic2VydmFibGVNYXAoKGxpc3REYXRhUmVzcG9uc2VNb2RlbCkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIG5ldyBMaXN0RGF0YVJlc3BvbnNlTW9kZWwoe1xuICAgICAgICAgICAgICBjb3VudDogbGlzdERhdGFSZXNwb25zZU1vZGVsLmNvdW50LFxuICAgICAgICAgICAgICBpdGVtczogdGhpcy5nZXRJdGVtc0FuZFJldGFpblNlbGVjdGlvbnMoXG4gICAgICAgICAgICAgICAgbGlzdERhdGFSZXNwb25zZU1vZGVsLml0ZW1zLFxuICAgICAgICAgICAgICAgIHRoaXMubGFzdFNlbGVjdGVkSWRzXG4gICAgICAgICAgICAgICksXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9KVxuICAgICAgICApO1xuICAgICAgfSksXG4gICAgICBmbGF0TWFwKCh2YWx1ZSkgPT4gdmFsdWUpXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgc2VsZWN0ZWRJdGVtcygpOiBPYnNlcnZhYmxlPEFycmF5PExpc3RJdGVtTW9kZWw+PiB7XG4gICAgcmV0dXJuIG9ic2VydmFibGVDb21iaW5lTGF0ZXN0KFxuICAgICAgdGhpcy5zdGF0ZS5waXBlKFxuICAgICAgICBvYnNlcnZhYmxlTWFwKChjdXJyZW50KSA9PiBjdXJyZW50Lml0ZW1zLml0ZW1zKSxcbiAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICAgICAgKSxcbiAgICAgIHRoaXMuc3RhdGUucGlwZShcbiAgICAgICAgb2JzZXJ2YWJsZU1hcCgoY3VycmVudCkgPT4gY3VycmVudC5zZWxlY3RlZCksXG4gICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKClcbiAgICAgICksXG4gICAgICAoaXRlbXM6IEFycmF5PExpc3RJdGVtTW9kZWw+LCBzZWxlY3RlZDogQXN5bmNJdGVtPExpc3RTZWxlY3RlZE1vZGVsPikgPT4ge1xuICAgICAgICByZXR1cm4gaXRlbXMuZmlsdGVyKChpKSA9PiBzZWxlY3RlZC5pdGVtLnNlbGVjdGVkSWRNYXAuZ2V0KGkuaWQpKTtcbiAgICAgIH1cbiAgICApLnBpcGUodGFrZVVudGlsKHRoaXMubmdVbnN1YnNjcmliZSkpO1xuICB9XG5cbiAgcHVibGljIGdldCBsYXN0VXBkYXRlKCk6IE9ic2VydmFibGU8RGF0ZT4ge1xuICAgIHJldHVybiB0aGlzLnN0YXRlLnBpcGUoXG4gICAgICB0YWtlVW50aWwodGhpcy5uZ1Vuc3Vic2NyaWJlKSxcbiAgICAgIG9ic2VydmFibGVNYXAoKHMpID0+XG4gICAgICAgIHMuaXRlbXMubGFzdFVwZGF0ZSA/IG5ldyBEYXRlKHMuaXRlbXMubGFzdFVwZGF0ZSkgOiB1bmRlZmluZWRcbiAgICAgIClcbiAgICApO1xuICB9XG5cbiAgcHVibGljIGdldCB2aWV3cygpOiBBcnJheTxMaXN0Vmlld0NvbXBvbmVudD4ge1xuICAgIHJldHVybiB0aGlzLmxpc3RWaWV3cy50b0FycmF5KCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGl0ZW1Db3VudCgpOiBPYnNlcnZhYmxlPG51bWJlcj4ge1xuICAgIHJldHVybiB0aGlzLmRhdGFQcm92aWRlci5jb3VudCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRJdGVtc0FuZFJldGFpblNlbGVjdGlvbnMoXG4gICAgbmV3TGlzdDogTGlzdEl0ZW1Nb2RlbFtdLFxuICAgIHNlbGVjdGVkSWRzOiBzdHJpbmdbXVxuICApOiBMaXN0SXRlbU1vZGVsW10ge1xuICAgIGxldCB1cGRhdGVkTGlzdE1vZGVsID0gbmV3TGlzdC5zbGljZSgpO1xuICAgIHVwZGF0ZWRMaXN0TW9kZWwuZm9yRWFjaCgoaXRlbSkgPT4ge1xuICAgICAgaXRlbS5pc1NlbGVjdGVkID0gc2VsZWN0ZWRJZHMuaW5kZXhPZihpdGVtLmlkKSA+IC0xID8gdHJ1ZSA6IGZhbHNlO1xuICAgIH0pO1xuICAgIHJldHVybiB1cGRhdGVkTGlzdE1vZGVsO1xuICB9XG5cbiAgcHJpdmF0ZSBhcnJheXNFcXVhbChhcnJheUE6IGFueVtdLCBhcnJheUI6IGFueVtdKTogYm9vbGVhbiB7XG4gICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICBpZiAoYXJyYXlBID09PSBhcnJheUIpIHtcbiAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbiAgICBpZiAoYXJyYXlBID09PSB1bmRlZmluZWQgfHwgYXJyYXlCID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgaWYgKGFycmF5QS5sZW5ndGggIT09IGFycmF5Qi5sZW5ndGgpIHtcbiAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCBhcnJheUEubGVuZ3RoOyArK2kpIHtcbiAgICAgIGlmIChhcnJheUFbaV0gIT09IGFycmF5QltpXSkge1xuICAgICAgICByZXR1cm4gZmFsc2U7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0cnVlO1xuICB9XG59XG4iXX0=
@@ -1,18 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { CommonModule } from '@angular/common';
3
- import { SkyListComponent } from './list.component';
4
- import * as i0 from "@angular/core";
5
- export class SkyListModule {
6
- }
7
- SkyListModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
8
- SkyListModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListModule, declarations: [SkyListComponent], imports: [CommonModule], exports: [SkyListComponent] });
9
- SkyListModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListModule, imports: [[CommonModule]] });
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.15", ngImport: i0, type: SkyListModule, decorators: [{
11
- type: NgModule,
12
- args: [{
13
- declarations: [SkyListComponent],
14
- imports: [CommonModule],
15
- exports: [SkyListComponent],
16
- }]
17
- }] });
18
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saXN0LWJ1aWxkZXIvc3JjL21vZHVsZXMvbGlzdC9saXN0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQzs7QUFPcEQsTUFBTSxPQUFPLGFBQWE7OzJHQUFiLGFBQWE7NEdBQWIsYUFBYSxpQkFKVCxnQkFBZ0IsYUFDckIsWUFBWSxhQUNaLGdCQUFnQjs0R0FFZixhQUFhLFlBSGYsQ0FBQyxZQUFZLENBQUM7NEZBR1osYUFBYTtrQkFMekIsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztvQkFDaEMsT0FBTyxFQUFFLENBQUMsWUFBWSxDQUFDO29CQUN2QixPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FBQztpQkFDNUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IFNreUxpc3RDb21wb25lbnQgfSBmcm9tICcuL2xpc3QuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbU2t5TGlzdENvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGVdLFxuICBleHBvcnRzOiBbU2t5TGlzdENvbXBvbmVudF0sXG59KVxuZXhwb3J0IGNsYXNzIFNreUxpc3RNb2R1bGUge31cbiJdfQ==
@@ -1,16 +0,0 @@
1
- import { ListStateOrchestrator } from '../list-state.rxstate';
2
- import { ListFiltersUpdateAction } from './update.action';
3
- /**
4
- * @internal
5
- */
6
- export class ListFiltersOrchestrator extends ListStateOrchestrator {
7
- /* istanbul ignore next */
8
- constructor() {
9
- super();
10
- this.register(ListFiltersUpdateAction, this.update);
11
- }
12
- update(state, action) {
13
- return [...action.filters];
14
- }
15
- }
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVycy5vcmNoZXN0cmF0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saXN0LWJ1aWxkZXIvc3JjL21vZHVsZXMvbGlzdC9zdGF0ZS9maWx0ZXJzL2ZpbHRlcnMub3JjaGVzdHJhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTlELE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTFEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHVCQUF3QixTQUFRLHFCQUU1QztJQUNDLDBCQUEwQjtJQUMxQjtRQUNFLEtBQUssRUFBRSxDQUFDO1FBRVIsSUFBSSxDQUFDLFFBQVEsQ0FBQyx1QkFBdUIsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVPLE1BQU0sQ0FDWixLQUF3QixFQUN4QixNQUErQjtRQUUvQixPQUFPLENBQUMsR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDN0IsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTGlzdFN0YXRlT3JjaGVzdHJhdG9yIH0gZnJvbSAnLi4vbGlzdC1zdGF0ZS5yeHN0YXRlJztcbmltcG9ydCB7IExpc3RGaWx0ZXJNb2RlbCB9IGZyb20gJy4uLy4uLy4uL2xpc3QtZmlsdGVycy9maWx0ZXIubW9kZWwnO1xuaW1wb3J0IHsgTGlzdEZpbHRlcnNVcGRhdGVBY3Rpb24gfSBmcm9tICcuL3VwZGF0ZS5hY3Rpb24nO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgTGlzdEZpbHRlcnNPcmNoZXN0cmF0b3IgZXh0ZW5kcyBMaXN0U3RhdGVPcmNoZXN0cmF0b3I8XG4gIExpc3RGaWx0ZXJNb2RlbFtdXG4+IHtcbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIHRoaXMucmVnaXN0ZXIoTGlzdEZpbHRlcnNVcGRhdGVBY3Rpb24sIHRoaXMudXBkYXRlKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlKFxuICAgIHN0YXRlOiBMaXN0RmlsdGVyTW9kZWxbXSxcbiAgICBhY3Rpb246IExpc3RGaWx0ZXJzVXBkYXRlQWN0aW9uXG4gICk6IExpc3RGaWx0ZXJNb2RlbFtdIHtcbiAgICByZXR1cm4gWy4uLmFjdGlvbi5maWx0ZXJzXTtcbiAgfVxufVxuIl19
@@ -1,9 +0,0 @@
1
- /**
2
- * @internal
3
- */
4
- export class ListFiltersUpdateAction {
5
- constructor(filters) {
6
- this.filters = filters;
7
- }
8
- }
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXBkYXRlLmFjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpc3QtYnVpbGRlci9zcmMvbW9kdWxlcy9saXN0L3N0YXRlL2ZpbHRlcnMvdXBkYXRlLmFjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTs7R0FFRztBQUNILE1BQU0sT0FBTyx1QkFBdUI7SUFDbEMsWUFBbUIsT0FBMEI7UUFBMUIsWUFBTyxHQUFQLE9BQU8sQ0FBbUI7SUFBRyxDQUFDO0NBQ2xEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTGlzdEZpbHRlck1vZGVsIH0gZnJvbSAnLi4vLi4vLi4vbGlzdC1maWx0ZXJzL2ZpbHRlci5tb2RlbCc7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBMaXN0RmlsdGVyc1VwZGF0ZUFjdGlvbiB7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBmaWx0ZXJzOiBMaXN0RmlsdGVyTW9kZWxbXSkge31cbn1cbiJdfQ==
@@ -1,53 +0,0 @@
1
- import { ListItemModel } from '@skyux/list-builder-common';
2
- import { AsyncList } from '@skyux/list-builder-common';
3
- import { ListStateOrchestrator } from '../list-state.rxstate';
4
- import { ListItemsLoadAction } from './load.action';
5
- import { ListItemsSetLoadingAction } from './set-loading.action';
6
- import { ListItemsSetSelectedAction } from './set-items-selected.action';
7
- /**
8
- * @internal
9
- */
10
- export class ListItemsOrchestrator extends ListStateOrchestrator {
11
- /* istanbul ignore next */
12
- constructor() {
13
- super();
14
- this.register(ListItemsSetLoadingAction, this.setLoading)
15
- .register(ListItemsLoadAction, this.load)
16
- .register(ListItemsSetSelectedAction, this.setItemsSelected);
17
- }
18
- setLoading(state, action) {
19
- return new AsyncList(state.items, state.lastUpdate, action.loading, state.count);
20
- }
21
- load(state, action) {
22
- const newListItems = action.items.map((g) => new ListItemModel(g.id, g.data, g.isSelected));
23
- const resultItems = action.refresh
24
- ? [...newListItems]
25
- : [...state.items, ...newListItems];
26
- let count = action.count === undefined ? resultItems.length : action.count;
27
- return new AsyncList(resultItems, action.dataChanged ? Date.now() : state.lastUpdate, false, count);
28
- }
29
- setItemsSelected(state, action) {
30
- /* istanbul ignore next */
31
- const newSelectedIds = action.items || [];
32
- let newListItemModels = this.cloneListItemModelArray(state.items);
33
- if (action.refresh) {
34
- newListItemModels.forEach((item) => (item.isSelected = undefined));
35
- }
36
- newSelectedIds.map((s) => {
37
- let newItem = newListItemModels.find((i) => i.id === s);
38
- /* istanbul ignore next */
39
- if (newItem) {
40
- newItem.isSelected = action.selected;
41
- }
42
- });
43
- return new AsyncList(newListItemModels, Date.now(), state.loading, state.count);
44
- }
45
- cloneListItemModelArray(source) {
46
- let newListItems = [];
47
- source.forEach((item) => {
48
- newListItems.push(new ListItemModel(item.id, Object.assign({}, item.data), item.isSelected));
49
- });
50
- return newListItems;
51
- }
52
- }
53
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaXRlbXMub3JjaGVzdHJhdG9yLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGlzdC1idWlsZGVyL3NyYy9tb2R1bGVzL2xpc3Qvc3RhdGUvaXRlbXMvaXRlbXMub3JjaGVzdHJhdG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUUzRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFdkQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFOUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXBELE9BQU8sRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRWpFLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRXpFOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHFCQUFzQixTQUFRLHFCQUUxQztJQUNDLDBCQUEwQjtJQUMxQjtRQUNFLEtBQUssRUFBRSxDQUFDO1FBRVIsSUFBSSxDQUFDLFFBQVEsQ0FBQyx5QkFBeUIsRUFBRSxJQUFJLENBQUMsVUFBVSxDQUFDO2FBQ3RELFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDO2FBQ3hDLFFBQVEsQ0FBQywwQkFBMEIsRUFBRSxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNqRSxDQUFDO0lBRU8sVUFBVSxDQUNoQixLQUErQixFQUMvQixNQUFpQztRQUVqQyxPQUFPLElBQUksU0FBUyxDQUNsQixLQUFLLENBQUMsS0FBSyxFQUNYLEtBQUssQ0FBQyxVQUFVLEVBQ2hCLE1BQU0sQ0FBQyxPQUFPLEVBQ2QsS0FBSyxDQUFDLEtBQUssQ0FDWixDQUFDO0lBQ0osQ0FBQztJQUVPLElBQUksQ0FDVixLQUErQixFQUMvQixNQUEyQjtRQUUzQixNQUFNLFlBQVksR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FDbkMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLElBQUksYUFBYSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLENBQUMsVUFBVSxDQUFDLENBQ3JELENBQUM7UUFDRixNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsT0FBTztZQUNoQyxDQUFDLENBQUMsQ0FBQyxHQUFHLFlBQVksQ0FBQztZQUNuQixDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQyxLQUFLLEVBQUUsR0FBRyxZQUFZLENBQUMsQ0FBQztRQUV0QyxJQUFJLEtBQUssR0FBRyxNQUFNLENBQUMsS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztRQUMzRSxPQUFPLElBQUksU0FBUyxDQUNsQixXQUFXLEVBQ1gsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsVUFBVSxFQUNsRCxLQUFLLEVBQ0wsS0FBSyxDQUNOLENBQUM7SUFDSixDQUFDO0lBRU8sZ0JBQWdCLENBQ3RCLEtBQStCLEVBQy9CLE1BQWtDO1FBRWxDLDBCQUEwQjtRQUMxQixNQUFNLGNBQWMsR0FBRyxNQUFNLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztRQUMxQyxJQUFJLGlCQUFpQixHQUFHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFbEUsSUFBSSxNQUFNLENBQUMsT0FBTyxFQUFFO1lBQ2xCLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQyxDQUFDLENBQUM7U0FDcEU7UUFFRCxjQUFjLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDdkIsSUFBSSxPQUFPLEdBQUcsaUJBQWlCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQyxDQUFDO1lBQ3hELDBCQUEwQjtZQUMxQixJQUFJLE9BQU8sRUFBRTtnQkFDWCxPQUFPLENBQUMsVUFBVSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUM7YUFDdEM7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUVILE9BQU8sSUFBSSxTQUFTLENBQ2xCLGlCQUFpQixFQUNqQixJQUFJLENBQUMsR0FBRyxFQUFFLEVBQ1YsS0FBSyxDQUFDLE9BQU8sRUFDYixLQUFLLENBQUMsS0FBSyxDQUNaLENBQUM7SUFDSixDQUFDO0lBRU8sdUJBQXVCLENBQzdCLE1BQTRCO1FBRTVCLElBQUksWUFBWSxHQUF5QixFQUFFLENBQUM7UUFDNUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ3RCLFlBQVksQ0FBQyxJQUFJLENBQ2YsSUFBSSxhQUFhLENBQ2YsSUFBSSxDQUFDLEVBQUUsRUFDUCxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQzVCLElBQUksQ0FBQyxVQUFVLENBQ2hCLENBQ0YsQ0FBQztRQUNKLENBQUMsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTGlzdEl0ZW1Nb2RlbCB9IGZyb20gJ0Bza3l1eC9saXN0LWJ1aWxkZXItY29tbW9uJztcblxuaW1wb3J0IHsgQXN5bmNMaXN0IH0gZnJvbSAnQHNreXV4L2xpc3QtYnVpbGRlci1jb21tb24nO1xuXG5pbXBvcnQgeyBMaXN0U3RhdGVPcmNoZXN0cmF0b3IgfSBmcm9tICcuLi9saXN0LXN0YXRlLnJ4c3RhdGUnO1xuXG5pbXBvcnQgeyBMaXN0SXRlbXNMb2FkQWN0aW9uIH0gZnJvbSAnLi9sb2FkLmFjdGlvbic7XG5cbmltcG9ydCB7IExpc3RJdGVtc1NldExvYWRpbmdBY3Rpb24gfSBmcm9tICcuL3NldC1sb2FkaW5nLmFjdGlvbic7XG5cbmltcG9ydCB7IExpc3RJdGVtc1NldFNlbGVjdGVkQWN0aW9uIH0gZnJvbSAnLi9zZXQtaXRlbXMtc2VsZWN0ZWQuYWN0aW9uJztcblxuLyoqXG4gKiBAaW50ZXJuYWxcbiAqL1xuZXhwb3J0IGNsYXNzIExpc3RJdGVtc09yY2hlc3RyYXRvciBleHRlbmRzIExpc3RTdGF0ZU9yY2hlc3RyYXRvcjxcbiAgQXN5bmNMaXN0PExpc3RJdGVtTW9kZWw+XG4+IHtcbiAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcblxuICAgIHRoaXMucmVnaXN0ZXIoTGlzdEl0ZW1zU2V0TG9hZGluZ0FjdGlvbiwgdGhpcy5zZXRMb2FkaW5nKVxuICAgICAgLnJlZ2lzdGVyKExpc3RJdGVtc0xvYWRBY3Rpb24sIHRoaXMubG9hZClcbiAgICAgIC5yZWdpc3RlcihMaXN0SXRlbXNTZXRTZWxlY3RlZEFjdGlvbiwgdGhpcy5zZXRJdGVtc1NlbGVjdGVkKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0TG9hZGluZyhcbiAgICBzdGF0ZTogQXN5bmNMaXN0PExpc3RJdGVtTW9kZWw+LFxuICAgIGFjdGlvbjogTGlzdEl0ZW1zU2V0TG9hZGluZ0FjdGlvblxuICApOiBBc3luY0xpc3Q8TGlzdEl0ZW1Nb2RlbD4ge1xuICAgIHJldHVybiBuZXcgQXN5bmNMaXN0PExpc3RJdGVtTW9kZWw+KFxuICAgICAgc3RhdGUuaXRlbXMsXG4gICAgICBzdGF0ZS5sYXN0VXBkYXRlLFxuICAgICAgYWN0aW9uLmxvYWRpbmcsXG4gICAgICBzdGF0ZS5jb3VudFxuICAgICk7XG4gIH1cblxuICBwcml2YXRlIGxvYWQoXG4gICAgc3RhdGU6IEFzeW5jTGlzdDxMaXN0SXRlbU1vZGVsPixcbiAgICBhY3Rpb246IExpc3RJdGVtc0xvYWRBY3Rpb25cbiAgKTogQXN5bmNMaXN0PExpc3RJdGVtTW9kZWw+IHtcbiAgICBjb25zdCBuZXdMaXN0SXRlbXMgPSBhY3Rpb24uaXRlbXMubWFwKFxuICAgICAgKGcpID0+IG5ldyBMaXN0SXRlbU1vZGVsKGcuaWQsIGcuZGF0YSwgZy5pc1NlbGVjdGVkKVxuICAgICk7XG4gICAgY29uc3QgcmVzdWx0SXRlbXMgPSBhY3Rpb24ucmVmcmVzaFxuICAgICAgPyBbLi4ubmV3TGlzdEl0ZW1zXVxuICAgICAgOiBbLi4uc3RhdGUuaXRlbXMsIC4uLm5ld0xpc3RJdGVtc107XG5cbiAgICBsZXQgY291bnQgPSBhY3Rpb24uY291bnQgPT09IHVuZGVmaW5lZCA/IHJlc3VsdEl0ZW1zLmxlbmd0aCA6IGFjdGlvbi5jb3VudDtcbiAgICByZXR1cm4gbmV3IEFzeW5jTGlzdDxMaXN0SXRlbU1vZGVsPihcbiAgICAgIHJlc3VsdEl0ZW1zLFxuICAgICAgYWN0aW9uLmRhdGFDaGFuZ2VkID8gRGF0ZS5ub3coKSA6IHN0YXRlLmxhc3RVcGRhdGUsXG4gICAgICBmYWxzZSxcbiAgICAgIGNvdW50XG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgc2V0SXRlbXNTZWxlY3RlZChcbiAgICBzdGF0ZTogQXN5bmNMaXN0PExpc3RJdGVtTW9kZWw+LFxuICAgIGFjdGlvbjogTGlzdEl0ZW1zU2V0U2VsZWN0ZWRBY3Rpb25cbiAgKTogQXN5bmNMaXN0PExpc3RJdGVtTW9kZWw+IHtcbiAgICAvKiBpc3RhbmJ1bCBpZ25vcmUgbmV4dCAqL1xuICAgIGNvbnN0IG5ld1NlbGVjdGVkSWRzID0gYWN0aW9uLml0ZW1zIHx8IFtdO1xuICAgIGxldCBuZXdMaXN0SXRlbU1vZGVscyA9IHRoaXMuY2xvbmVMaXN0SXRlbU1vZGVsQXJyYXkoc3RhdGUuaXRlbXMpO1xuXG4gICAgaWYgKGFjdGlvbi5yZWZyZXNoKSB7XG4gICAgICBuZXdMaXN0SXRlbU1vZGVscy5mb3JFYWNoKChpdGVtKSA9PiAoaXRlbS5pc1NlbGVjdGVkID0gdW5kZWZpbmVkKSk7XG4gICAgfVxuXG4gICAgbmV3U2VsZWN0ZWRJZHMubWFwKChzKSA9PiB7XG4gICAgICBsZXQgbmV3SXRlbSA9IG5ld0xpc3RJdGVtTW9kZWxzLmZpbmQoKGkpID0+IGkuaWQgPT09IHMpO1xuICAgICAgLyogaXN0YW5idWwgaWdub3JlIG5leHQgKi9cbiAgICAgIGlmIChuZXdJdGVtKSB7XG4gICAgICAgIG5ld0l0ZW0uaXNTZWxlY3RlZCA9IGFjdGlvbi5zZWxlY3RlZDtcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIHJldHVybiBuZXcgQXN5bmNMaXN0PExpc3RJdGVtTW9kZWw+KFxuICAgICAgbmV3TGlzdEl0ZW1Nb2RlbHMsXG4gICAgICBEYXRlLm5vdygpLFxuICAgICAgc3RhdGUubG9hZGluZyxcbiAgICAgIHN0YXRlLmNvdW50XG4gICAgKTtcbiAgfVxuXG4gIHByaXZhdGUgY2xvbmVMaXN0SXRlbU1vZGVsQXJyYXkoXG4gICAgc291cmNlOiBBcnJheTxMaXN0SXRlbU1vZGVsPlxuICApOiBMaXN0SXRlbU1vZGVsW10ge1xuICAgIGxldCBuZXdMaXN0SXRlbXM6IEFycmF5PExpc3RJdGVtTW9kZWw+ID0gW107XG4gICAgc291cmNlLmZvckVhY2goKGl0ZW0pID0+IHtcbiAgICAgIG5ld0xpc3RJdGVtcy5wdXNoKFxuICAgICAgICBuZXcgTGlzdEl0ZW1Nb2RlbChcbiAgICAgICAgICBpdGVtLmlkLFxuICAgICAgICAgIE9iamVjdC5hc3NpZ24oe30sIGl0ZW0uZGF0YSksXG4gICAgICAgICAgaXRlbS5pc1NlbGVjdGVkXG4gICAgICAgIClcbiAgICAgICk7XG4gICAgfSk7XG4gICAgcmV0dXJuIG5ld0xpc3RJdGVtcztcbiAgfVxufVxuIl19
@@ -1,12 +0,0 @@
1
- /**
2
- * @internal
3
- */
4
- export class ListItemsLoadAction {
5
- constructor(items, refresh = false, dataChanged = true, count) {
6
- this.items = items;
7
- this.refresh = refresh;
8
- this.dataChanged = dataChanged;
9
- this.count = count;
10
- }
11
- }
12
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC5hY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9saXN0LWJ1aWxkZXIvc3JjL21vZHVsZXMvbGlzdC9zdGF0ZS9pdGVtcy9sb2FkLmFjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQTs7R0FFRztBQUNILE1BQU0sT0FBTyxtQkFBbUI7SUFDOUIsWUFDUyxLQUEyQixFQUMzQixVQUFtQixLQUFLLEVBQ3hCLGNBQXVCLElBQUksRUFDM0IsS0FBYztRQUhkLFVBQUssR0FBTCxLQUFLLENBQXNCO1FBQzNCLFlBQU8sR0FBUCxPQUFPLENBQWlCO1FBQ3hCLGdCQUFXLEdBQVgsV0FBVyxDQUFnQjtRQUMzQixVQUFLLEdBQUwsS0FBSyxDQUFTO0lBQ3BCLENBQUM7Q0FDTCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExpc3RJdGVtTW9kZWwgfSBmcm9tICdAc2t5dXgvbGlzdC1idWlsZGVyLWNvbW1vbic7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBMaXN0SXRlbXNMb2FkQWN0aW9uIHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGl0ZW1zOiBBcnJheTxMaXN0SXRlbU1vZGVsPixcbiAgICBwdWJsaWMgcmVmcmVzaDogYm9vbGVhbiA9IGZhbHNlLFxuICAgIHB1YmxpYyBkYXRhQ2hhbmdlZDogYm9vbGVhbiA9IHRydWUsXG4gICAgcHVibGljIGNvdW50PzogbnVtYmVyXG4gICkge31cbn1cbiJdfQ==
@@ -1,13 +0,0 @@
1
- /**
2
- * @internal
3
- */
4
- export class ListItemsSetSelectedAction {
5
- constructor(items,
6
- /* istanbul ignore next */
7
- selected = false, refresh = true) {
8
- this.items = items;
9
- this.selected = selected;
10
- this.refresh = refresh;
11
- }
12
- }
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0LWl0ZW1zLXNlbGVjdGVkLmFjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpc3QtYnVpbGRlci9zcmMvbW9kdWxlcy9saXN0L3N0YXRlL2l0ZW1zL3NldC1pdGVtcy1zZWxlY3RlZC5hY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFDSCxNQUFNLE9BQU8sMEJBQTBCO0lBQ3JDLFlBQ1MsS0FBZTtJQUN0QiwwQkFBMEI7SUFDbkIsV0FBb0IsS0FBSyxFQUN6QixVQUFtQixJQUFJO1FBSHZCLFVBQUssR0FBTCxLQUFLLENBQVU7UUFFZixhQUFRLEdBQVIsUUFBUSxDQUFpQjtRQUN6QixZQUFPLEdBQVAsT0FBTyxDQUFnQjtJQUM3QixDQUFDO0NBQ0wiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgTGlzdEl0ZW1zU2V0U2VsZWN0ZWRBY3Rpb24ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgaXRlbXM6IHN0cmluZ1tdLFxuICAgIC8qIGlzdGFuYnVsIGlnbm9yZSBuZXh0ICovXG4gICAgcHVibGljIHNlbGVjdGVkOiBib29sZWFuID0gZmFsc2UsXG4gICAgcHVibGljIHJlZnJlc2g6IGJvb2xlYW4gPSB0cnVlXG4gICkge31cbn1cbiJdfQ==
@@ -1,9 +0,0 @@
1
- /**
2
- * @internal
3
- */
4
- export class ListItemsSetLoadingAction {
5
- constructor(loading = true) {
6
- this.loading = loading;
7
- }
8
- }
9
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0LWxvYWRpbmcuYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbGlzdC1idWlsZGVyL3NyYy9tb2R1bGVzL2xpc3Qvc3RhdGUvaXRlbXMvc2V0LWxvYWRpbmcuYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxPQUFPLHlCQUF5QjtJQUNwQyxZQUFtQixVQUFtQixJQUFJO1FBQXZCLFlBQU8sR0FBUCxPQUFPLENBQWdCO0lBQUcsQ0FBQztDQUMvQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCBjbGFzcyBMaXN0SXRlbXNTZXRMb2FkaW5nQWN0aW9uIHtcbiAgY29uc3RydWN0b3IocHVibGljIGxvYWRpbmc6IGJvb2xlYW4gPSB0cnVlKSB7fVxufVxuIl19
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1zdGF0ZS1hY3Rpb24udHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpc3QtYnVpbGRlci9zcmMvbW9kdWxlcy9saXN0L3N0YXRlL2xpc3Qtc3RhdGUtYWN0aW9uLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExpc3RJdGVtc1NldExvYWRpbmdBY3Rpb24gfSBmcm9tICcuL2l0ZW1zL3NldC1sb2FkaW5nLmFjdGlvbic7XG5pbXBvcnQgeyBMaXN0SXRlbXNMb2FkQWN0aW9uIH0gZnJvbSAnLi9pdGVtcy9sb2FkLmFjdGlvbic7XG5pbXBvcnQgeyBMaXN0SXRlbXNTZXRTZWxlY3RlZEFjdGlvbiB9IGZyb20gJy4vaXRlbXMvc2V0LWl0ZW1zLXNlbGVjdGVkLmFjdGlvbic7XG5pbXBvcnQgeyBMaXN0UGFnaW5nU2V0TWF4UGFnZXNBY3Rpb24gfSBmcm9tICcuL3BhZ2luZy9zZXQtbWF4LXBhZ2VzLmFjdGlvbic7XG5pbXBvcnQgeyBMaXN0UGFnaW5nU2V0SXRlbXNQZXJQYWdlQWN0aW9uIH0gZnJvbSAnLi9wYWdpbmcvc2V0LWl0ZW1zLXBlci1wYWdlLmFjdGlvbic7XG5pbXBvcnQgeyBMaXN0UGFnaW5nU2V0UGFnZU51bWJlckFjdGlvbiB9IGZyb20gJy4vcGFnaW5nL3NldC1wYWdlLW51bWJlci5hY3Rpb24nO1xuaW1wb3J0IHsgTGlzdFZpZXdzTG9hZEFjdGlvbiB9IGZyb20gJy4vdmlld3MvbG9hZC5hY3Rpb24nO1xuaW1wb3J0IHsgTGlzdFZpZXdzU2V0QWN0aXZlQWN0aW9uIH0gZnJvbSAnLi92aWV3cy9zZXQtYWN0aXZlLmFjdGlvbic7XG5pbXBvcnQgeyBMaXN0VG9vbGJhckl0ZW1zTG9hZEFjdGlvbiB9IGZyb20gJy4vdG9vbGJhci9sb2FkLmFjdGlvbic7XG5pbXBvcnQgeyBMaXN0VG9vbGJhclNldEV4aXN0c0FjdGlvbiB9IGZyb20gJy4vdG9vbGJhci9zZXQtZXhpc3RzLmFjdGlvbic7XG5pbXBvcnQgeyBMaXN0U2VhcmNoU2V0U2VhcmNoVGV4dEFjdGlvbiB9IGZyb20gJy4vc2VhcmNoL3NldC1zZWFyY2gtdGV4dC5hY3Rpb24nO1xuaW1wb3J0IHsgTGlzdFNlYXJjaFNldEZ1bmN0aW9uc0FjdGlvbiB9IGZyb20gJy4vc2VhcmNoL3NldC1mdW5jdGlvbnMuYWN0aW9uJztcbmltcG9ydCB7IExpc3RTZWFyY2hTZXRGaWVsZFNlbGVjdG9yc0FjdGlvbiB9IGZyb20gJy4vc2VhcmNoL3NldC1maWVsZC1zZWxlY3RvcnMuYWN0aW9uJztcbmltcG9ydCB7IExpc3RTZWFyY2hTZXRPcHRpb25zQWN0aW9uIH0gZnJvbSAnLi9zZWFyY2gvc2V0LW9wdGlvbnMuYWN0aW9uJztcbmltcG9ydCB7IExpc3RTZWxlY3RlZFNldExvYWRpbmdBY3Rpb24gfSBmcm9tICcuL3NlbGVjdGVkL3NldC1sb2FkaW5nLmFjdGlvbic7XG5pbXBvcnQgeyBMaXN0U2VsZWN0ZWRMb2FkQWN0aW9uIH0gZnJvbSAnLi9zZWxlY3RlZC9sb2FkLmFjdGlvbic7XG5pbXBvcnQgeyBMaXN0U2VsZWN0ZWRTZXRJdGVtU2VsZWN0ZWRBY3Rpb24gfSBmcm9tICcuL3NlbGVjdGVkL3NldC1pdGVtLXNlbGVjdGVkLmFjdGlvbic7XG5pbXBvcnQgeyBMaXN0U2VsZWN0ZWRTZXRJdGVtc1NlbGVjdGVkQWN0aW9uIH0gZnJvbSAnLi9zZWxlY3RlZC9zZXQtaXRlbXMtc2VsZWN0ZWQuYWN0aW9uJztcbmltcG9ydCB7IExpc3RUb29sYmFyU2V0VHlwZUFjdGlvbiB9IGZyb20gJy4vdG9vbGJhci9zZXQtdHlwZS5hY3Rpb24nO1xuaW1wb3J0IHsgTGlzdFNvcnRTZXRGaWVsZFNlbGVjdG9yc0FjdGlvbiB9IGZyb20gJy4vc29ydC9zZXQtZmllbGQtc2VsZWN0b3JzLmFjdGlvbic7XG5pbXBvcnQgeyBMaXN0U29ydFNldEF2YWlsYWJsZUFjdGlvbiB9IGZyb20gJy4vc29ydC9zZXQtYXZhaWxhYmxlLmFjdGlvbic7XG5pbXBvcnQgeyBMaXN0U29ydFNldEdsb2JhbEFjdGlvbiB9IGZyb20gJy4vc29ydC9zZXQtZ2xvYmFsLmFjdGlvbic7XG5pbXBvcnQgeyBMaXN0RmlsdGVyc1VwZGF0ZUFjdGlvbiB9IGZyb20gJy4vZmlsdGVycy91cGRhdGUuYWN0aW9uJztcbmltcG9ydCB7IExpc3RUb29sYmFySXRlbXNSZW1vdmVBY3Rpb24gfSBmcm9tICcuL3Rvb2xiYXIvcmVtb3ZlLmFjdGlvbic7XG5pbXBvcnQgeyBMaXN0VG9vbGJhckl0ZW1zRGlzYWJsZUFjdGlvbiB9IGZyb20gJy4vdG9vbGJhci9kaXNhYmxlLmFjdGlvbic7XG5cbi8qKlxuICogQGludGVybmFsXG4gKi9cbmV4cG9ydCB0eXBlIExpc3RTdGF0ZUFjdGlvbiA9XG4gIHwgTGlzdEl0ZW1zU2V0TG9hZGluZ0FjdGlvblxuICB8IExpc3RJdGVtc0xvYWRBY3Rpb25cbiAgfCBMaXN0SXRlbXNTZXRTZWxlY3RlZEFjdGlvblxuICB8IExpc3RQYWdpbmdTZXRNYXhQYWdlc0FjdGlvblxuICB8IExpc3RQYWdpbmdTZXRJdGVtc1BlclBhZ2VBY3Rpb25cbiAgfCBMaXN0UGFnaW5nU2V0UGFnZU51bWJlckFjdGlvblxuICB8IExpc3RWaWV3c0xvYWRBY3Rpb25cbiAgfCBMaXN0Vmlld3NTZXRBY3RpdmVBY3Rpb25cbiAgfCBMaXN0VG9vbGJhckl0ZW1zTG9hZEFjdGlvblxuICB8IExpc3RUb29sYmFyU2V0RXhpc3RzQWN0aW9uXG4gIHwgTGlzdFNlYXJjaFNldFNlYXJjaFRleHRBY3Rpb25cbiAgfCBMaXN0U2VhcmNoU2V0RnVuY3Rpb25zQWN0aW9uXG4gIHwgTGlzdFNlYXJjaFNldEZpZWxkU2VsZWN0b3JzQWN0aW9uXG4gIHwgTGlzdFNlYXJjaFNldE9wdGlvbnNBY3Rpb25cbiAgfCBMaXN0U2VsZWN0ZWRTZXRMb2FkaW5nQWN0aW9uXG4gIHwgTGlzdFNlbGVjdGVkTG9hZEFjdGlvblxuICB8IExpc3RTZWxlY3RlZFNldEl0ZW1TZWxlY3RlZEFjdGlvblxuICB8IExpc3RTZWxlY3RlZFNldEl0ZW1zU2VsZWN0ZWRBY3Rpb25cbiAgfCBMaXN0VG9vbGJhclNldFR5cGVBY3Rpb25cbiAgfCBMaXN0U29ydFNldEZpZWxkU2VsZWN0b3JzQWN0aW9uXG4gIHwgTGlzdFNvcnRTZXRBdmFpbGFibGVBY3Rpb25cbiAgfCBMaXN0U29ydFNldEdsb2JhbEFjdGlvblxuICB8IExpc3RGaWx0ZXJzVXBkYXRlQWN0aW9uXG4gIHwgTGlzdFRvb2xiYXJJdGVtc1JlbW92ZUFjdGlvblxuICB8IExpc3RUb29sYmFySXRlbXNEaXNhYmxlQWN0aW9uO1xuIl19
@@ -1,24 +0,0 @@
1
- import { AsyncList, AsyncItem } from '@skyux/list-builder-common';
2
- import { ListPagingModel } from './paging/paging.model';
3
- import { ListSearchModel } from './search/search.model';
4
- import { ListSelectedModel } from './selected/selected.model';
5
- import { ListSortModel } from './sort/sort.model';
6
- import { ListToolbarModel } from './toolbar/toolbar.model';
7
- import { ListViewsModel } from './views/views.model';
8
- /**
9
- * @internal
10
- */
11
- export class ListStateModel {
12
- constructor() {
13
- this.filters = [];
14
- this.items = new AsyncList();
15
- this.paging = new ListPagingModel();
16
- this.search = new ListSearchModel();
17
- this.selected = new AsyncItem();
18
- this.sort = new ListSortModel();
19
- this.toolbar = new ListToolbarModel();
20
- this.views = new ListViewsModel();
21
- this.selected.item = new ListSelectedModel();
22
- }
23
- }
24
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlzdC1zdGF0ZS5tb2RlbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2xpc3QtYnVpbGRlci9zcmMvbW9kdWxlcy9saXN0L3N0YXRlL2xpc3Qtc3RhdGUubW9kZWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUdsRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBQ3hELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzlELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFckQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sY0FBYztJQVd6QjtRQVZPLFlBQU8sR0FBc0IsRUFBRSxDQUFDO1FBQ2hDLFVBQUssR0FBNkIsSUFBSSxTQUFTLEVBQWlCLENBQUM7UUFDakUsV0FBTSxHQUFvQixJQUFJLGVBQWUsRUFBRSxDQUFDO1FBQ2hELFdBQU0sR0FBb0IsSUFBSSxlQUFlLEVBQUUsQ0FBQztRQUNoRCxhQUFRLEdBQ2IsSUFBSSxTQUFTLEVBQXFCLENBQUM7UUFDOUIsU0FBSSxHQUFrQixJQUFJLGFBQWEsRUFBRSxDQUFDO1FBQzFDLFlBQU8sR0FBcUIsSUFBSSxnQkFBZ0IsRUFBRSxDQUFDO1FBQ25ELFVBQUssR0FBbUIsSUFBSSxjQUFjLEVBQUUsQ0FBQztRQUdsRCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxJQUFJLGlCQUFpQixFQUFFLENBQUM7SUFDL0MsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTGlzdEl0ZW1Nb2RlbCB9IGZyb20gJ0Bza3l1eC9saXN0LWJ1aWxkZXItY29tbW9uJztcblxuaW1wb3J0IHsgQXN5bmNMaXN0LCBBc3luY0l0ZW0gfSBmcm9tICdAc2t5dXgvbGlzdC1idWlsZGVyLWNvbW1vbic7XG5cbmltcG9ydCB7IExpc3RGaWx0ZXJNb2RlbCB9IGZyb20gJy4uLy4uL2xpc3QtZmlsdGVycy9maWx0ZXIubW9kZWwnO1xuaW1wb3J0IHsgTGlzdFBhZ2luZ01vZGVsIH0gZnJvbSAnLi9wYWdpbmcvcGFnaW5nLm1vZGVsJztcbmltcG9ydCB7IExpc3RTZWFyY2hNb2RlbCB9IGZyb20gJy4vc2VhcmNoL3NlYXJjaC5tb2RlbCc7XG5pbXBvcnQgeyBMaXN0U2VsZWN0ZWRNb2RlbCB9IGZyb20gJy4vc2VsZWN0ZWQvc2VsZWN0ZWQubW9kZWwnO1xuaW1wb3J0IHsgTGlzdFNvcnRNb2RlbCB9IGZyb20gJy4vc29ydC9zb3J0Lm1vZGVsJztcbmltcG9ydCB7IExpc3RUb29sYmFyTW9kZWwgfSBmcm9tICcuL3Rvb2xiYXIvdG9vbGJhci5tb2RlbCc7XG5pbXBvcnQgeyBMaXN0Vmlld3NNb2RlbCB9IGZyb20gJy4vdmlld3Mvdmlld3MubW9kZWwnO1xuXG4vKipcbiAqIEBpbnRlcm5hbFxuICovXG5leHBvcnQgY2xhc3MgTGlzdFN0YXRlTW9kZWwge1xuICBwdWJsaWMgZmlsdGVyczogTGlzdEZpbHRlck1vZGVsW10gPSBbXTtcbiAgcHVibGljIGl0ZW1zOiBBc3luY0xpc3Q8TGlzdEl0ZW1Nb2RlbD4gPSBuZXcgQXN5bmNMaXN0PExpc3RJdGVtTW9kZWw+KCk7XG4gIHB1YmxpYyBwYWdpbmc6IExpc3RQYWdpbmdNb2RlbCA9IG5ldyBMaXN0UGFnaW5nTW9kZWwoKTtcbiAgcHVibGljIHNlYXJjaDogTGlzdFNlYXJjaE1vZGVsID0gbmV3IExpc3RTZWFyY2hNb2RlbCgpO1xuICBwdWJsaWMgc2VsZWN0ZWQ6IEFzeW5jSXRlbTxMaXN0U2VsZWN0ZWRNb2RlbD4gPVxuICAgIG5ldyBBc3luY0l0ZW08TGlzdFNlbGVjdGVkTW9kZWw+KCk7XG4gIHB1YmxpYyBzb3J0OiBMaXN0U29ydE1vZGVsID0gbmV3IExpc3RTb3J0TW9kZWwoKTtcbiAgcHVibGljIHRvb2xiYXI6IExpc3RUb29sYmFyTW9kZWwgPSBuZXcgTGlzdFRvb2xiYXJNb2RlbCgpO1xuICBwdWJsaWMgdmlld3M6IExpc3RWaWV3c01vZGVsID0gbmV3IExpc3RWaWV3c01vZGVsKCk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5zZWxlY3RlZC5pdGVtID0gbmV3IExpc3RTZWxlY3RlZE1vZGVsKCk7XG4gIH1cbn1cbiJdfQ==