@elderbyte/ngx-starter 18.11.0 → 18.12.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 (629) hide show
  1. package/_index.scss +38 -33
  2. package/esm2022/lib/common/arrays.mjs +1 -1
  3. package/esm2022/lib/common/async/public_api.mjs +1 -1
  4. package/esm2022/lib/common/async/refreshing-entity.mjs +5 -3
  5. package/esm2022/lib/common/csv/csv-serializer.mjs +5 -5
  6. package/esm2022/lib/common/csv/csv-spec.mjs +2 -2
  7. package/esm2022/lib/common/csv/public_api.mjs +1 -1
  8. package/esm2022/lib/common/data/continuable-listing.mjs +1 -1
  9. package/esm2022/lib/common/data/data-context/data-context-active-page.mjs +5 -4
  10. package/esm2022/lib/common/data/data-context/data-context-auto-starter.mjs +7 -5
  11. package/esm2022/lib/common/data/data-context/data-context-base.mjs +19 -12
  12. package/esm2022/lib/common/data/data-context/data-context-builder.mjs +5 -7
  13. package/esm2022/lib/common/data/data-context/data-context-continuable-base.mjs +5 -7
  14. package/esm2022/lib/common/data/data-context/data-context-continuable-paged.mjs +2 -2
  15. package/esm2022/lib/common/data/data-context/data-context-continuable-token.mjs +17 -7
  16. package/esm2022/lib/common/data/data-context/data-context-life-cycle-binding.mjs +2 -2
  17. package/esm2022/lib/common/data/data-context/data-context-simple.mjs +5 -4
  18. package/esm2022/lib/common/data/data-context/data-context-source-event-binding.mjs +25 -8
  19. package/esm2022/lib/common/data/data-context/data-context-status.mjs +1 -1
  20. package/esm2022/lib/common/data/data-context/data-context.mjs +5 -5
  21. package/esm2022/lib/common/data/data-context/indexed-entities.mjs +2 -2
  22. package/esm2022/lib/common/data/data-context/mat-table-data-context-binding.mjs +14 -8
  23. package/esm2022/lib/common/data/data-context/public_api.mjs +1 -1
  24. package/esm2022/lib/common/data/datasource/data-source-adapter.mjs +9 -5
  25. package/esm2022/lib/common/data/datasource/data-source-base.mjs +1 -1
  26. package/esm2022/lib/common/data/datasource/data-source-change-event.mjs +20 -10
  27. package/esm2022/lib/common/data/datasource/data-source-processor.mjs +14 -15
  28. package/esm2022/lib/common/data/datasource/data-source.mjs +4 -4
  29. package/esm2022/lib/common/data/datasource/entity-id-util.mjs +2 -2
  30. package/esm2022/lib/common/data/datasource/fetcher/delegate-data-source.mjs +2 -2
  31. package/esm2022/lib/common/data/datasource/local/local-list-data-source.mjs +9 -11
  32. package/esm2022/lib/common/data/datasource/local/local-paged-data-source.mjs +4 -2
  33. package/esm2022/lib/common/data/datasource/patch/deep-partial-patcher.mjs +58 -0
  34. package/esm2022/lib/common/data/datasource/public_api.mjs +1 -1
  35. package/esm2022/lib/common/data/datasource/rest/public_api.mjs +1 -1
  36. package/esm2022/lib/common/data/datasource/rest/rest-client.mjs +44 -39
  37. package/esm2022/lib/common/data/entity-set-patch.mjs +6 -9
  38. package/esm2022/lib/common/data/field-comparator.mjs +2 -2
  39. package/esm2022/lib/common/data/filters/filter-commons.mjs +1 -1
  40. package/esm2022/lib/common/data/filters/filter-context.mjs +9 -9
  41. package/esm2022/lib/common/data/filters/filter-value.mjs +1 -1
  42. package/esm2022/lib/common/data/filters/filter.mjs +2 -2
  43. package/esm2022/lib/common/data/http-params-builder.mjs +5 -7
  44. package/esm2022/lib/common/data/page.mjs +1 -1
  45. package/esm2022/lib/common/data/public_api.mjs +1 -1
  46. package/esm2022/lib/common/data/required-filter-evaluator.mjs +7 -10
  47. package/esm2022/lib/common/data/sort-context.mjs +4 -6
  48. package/esm2022/lib/common/data/sort.mjs +1 -1
  49. package/esm2022/lib/common/data/token-chunk-request.mjs +1 -1
  50. package/esm2022/lib/common/enums/elder-enum-translation.service.mjs +9 -9
  51. package/esm2022/lib/common/enums/public_api.mjs +1 -1
  52. package/esm2022/lib/common/errors/exception-detail.mjs +1 -1
  53. package/esm2022/lib/common/errors/public_api.mjs +1 -1
  54. package/esm2022/lib/common/errors/standard-error-detail.mjs +1 -1
  55. package/esm2022/lib/common/format/bytes-format.mjs +2 -9
  56. package/esm2022/lib/common/format/bytes-per-second-format.mjs +1 -1
  57. package/esm2022/lib/common/format/curency-format-util.mjs +1 -1
  58. package/esm2022/lib/common/format/duration-format-util.mjs +1 -1
  59. package/esm2022/lib/common/format/iso-interval-format-util.mjs +6 -4
  60. package/esm2022/lib/common/format/public_api.mjs +1 -1
  61. package/esm2022/lib/common/forms/elder-entity-value-accessor.mjs +7 -7
  62. package/esm2022/lib/common/forms/elder-form-field-control-base.directive.mjs +7 -7
  63. package/esm2022/lib/common/forms/elder-from-field-base.mjs +3 -3
  64. package/esm2022/lib/common/forms/elder-from-field-customizable-base.mjs +1 -1
  65. package/esm2022/lib/common/forms/elder-from-field-entity-base.mjs +5 -5
  66. package/esm2022/lib/common/forms/elder-from-field-multi-entity-base.mjs +7 -7
  67. package/esm2022/lib/common/forms/elder-multi-entity-value-accessor.mjs +7 -7
  68. package/esm2022/lib/common/forms/form-field-base.component.mjs +3 -4
  69. package/esm2022/lib/common/forms/multi-model-base.component.mjs +2 -2
  70. package/esm2022/lib/common/forms/public_api.mjs +1 -1
  71. package/esm2022/lib/common/forms/template-composite-control.mjs +17 -13
  72. package/esm2022/lib/common/forms/value-accessor-base.mjs +3 -3
  73. package/esm2022/lib/common/forms/view-providers.mjs +1 -1
  74. package/esm2022/lib/common/http/http-client-builder.service.mjs +2 -2
  75. package/esm2022/lib/common/http/http-client-pristine.mjs +2 -2
  76. package/esm2022/lib/common/http/public_api.mjs +1 -1
  77. package/esm2022/lib/common/http/transfer/data-transfer-base.mjs +2 -2
  78. package/esm2022/lib/common/http/transfer/data-transfer-factory.mjs +4 -4
  79. package/esm2022/lib/common/http/transfer/data-transfer-progress-aggregate.mjs +6 -5
  80. package/esm2022/lib/common/http/transfer/data-transfer-progress.mjs +1 -1
  81. package/esm2022/lib/common/http/transfer/data-transfer-state.mjs +1 -1
  82. package/esm2022/lib/common/http/transfer/data-transfer-status.mjs +1 -1
  83. package/esm2022/lib/common/http/transfer/data-transfer.mjs +1 -1
  84. package/esm2022/lib/common/http/transfer/http-data-transfer.mjs +9 -9
  85. package/esm2022/lib/common/http/transfer/public_api.mjs +1 -1
  86. package/esm2022/lib/common/http/upload/file-upload-client.mjs +2 -2
  87. package/esm2022/lib/common/i18n/entity/impl/i18n-base.mjs +1 -1
  88. package/esm2022/lib/common/i18n/entity/impl/i18n-text.mjs +1 -1
  89. package/esm2022/lib/common/i18n/entity/impl/translated.mjs +1 -1
  90. package/esm2022/lib/common/i18n/entity/language-tag.mjs +1 -1
  91. package/esm2022/lib/common/i18n/entity/locale.mjs +1 -1
  92. package/esm2022/lib/common/i18n/entity/localisation-picker.mjs +4 -4
  93. package/esm2022/lib/common/i18n/entity/localized.mjs +1 -1
  94. package/esm2022/lib/common/i18n/entity/public_api.mjs +1 -1
  95. package/esm2022/lib/common/i18n/entity/translated-converter.mjs +4 -4
  96. package/esm2022/lib/common/i18n/entity/translated.mjs +1 -1
  97. package/esm2022/lib/common/i18n/public_api.mjs +1 -1
  98. package/esm2022/lib/common/json-map.mjs +3 -4
  99. package/esm2022/lib/common/objects.mjs +1 -1
  100. package/esm2022/lib/common/public_api.mjs +1 -1
  101. package/esm2022/lib/common/reactive-map.mjs +5 -5
  102. package/esm2022/lib/common/rxjs/operators/lazy-sample.mjs +2 -2
  103. package/esm2022/lib/common/rxjs/public_api.mjs +1 -1
  104. package/esm2022/lib/common/selection/public_api.mjs +1 -1
  105. package/esm2022/lib/common/selection/selection-model.mjs +8 -8
  106. package/esm2022/lib/common/sets.mjs +3 -2
  107. package/esm2022/lib/common/suggestion-provider.mjs +1 -1
  108. package/esm2022/lib/common/templates/template-slot-manager.mjs +2 -2
  109. package/esm2022/lib/common/theme-sizes.mjs +1 -1
  110. package/esm2022/lib/common/time/date-util.mjs +8 -10
  111. package/esm2022/lib/common/time/interval-coerce.mjs +3 -3
  112. package/esm2022/lib/common/time/interval.mjs +19 -16
  113. package/esm2022/lib/common/time/period-duration.mjs +1 -1
  114. package/esm2022/lib/common/time/public_api.mjs +1 -1
  115. package/esm2022/lib/common/time/temporal-plain-date-interval.mjs +1 -1
  116. package/esm2022/lib/common/time/temporal-util.mjs +7 -1
  117. package/esm2022/lib/common/time/time-util.mjs +3 -6
  118. package/esm2022/lib/common/url/elder-router.service.mjs +2 -2
  119. package/esm2022/lib/common/url/elder-url-fragment-params.service.mjs +4 -6
  120. package/esm2022/lib/common/url/public_api.mjs +1 -1
  121. package/esm2022/lib/common/url/url-query-params.mjs +2 -2
  122. package/esm2022/lib/common/utils/batcher.mjs +2 -2
  123. package/esm2022/lib/common/utils/collection-util.mjs +7 -5
  124. package/esm2022/lib/common/utils/filter-util.mjs +10 -8
  125. package/esm2022/lib/common/utils/focus-util.mjs +1 -1
  126. package/esm2022/lib/common/utils/input-utils.mjs +1 -1
  127. package/esm2022/lib/common/utils/next-number-util.mjs +4 -3
  128. package/esm2022/lib/common/utils/ng-zone-utils.mjs +2 -2
  129. package/esm2022/lib/common/utils/parse-util.mjs +1 -1
  130. package/esm2022/lib/common/utils/property-path-util.mjs +2 -2
  131. package/esm2022/lib/common/utils/public_api.mjs +1 -1
  132. package/esm2022/lib/common/utils/query-list-binding.mjs +5 -4
  133. package/esm2022/lib/common/utils/sort-util.mjs +2 -2
  134. package/esm2022/lib/common/utils/url-builder.mjs +1 -1
  135. package/esm2022/lib/common/utils/uuid-util.mjs +3 -4
  136. package/esm2022/lib/common/utils/value-wrapper.mjs +1 -1
  137. package/esm2022/lib/components/access-denied/elder-access-denied.component.mjs +4 -5
  138. package/esm2022/lib/components/access-denied/elder-access-denied.module.mjs +5 -15
  139. package/esm2022/lib/components/auditing/audited-entity/elder-audited-entity.component.mjs +16 -6
  140. package/esm2022/lib/components/auditing/elder-audit.module.mjs +4 -6
  141. package/esm2022/lib/components/auditing/i-audited-entity.mjs +1 -1
  142. package/esm2022/lib/components/badge/elder-badge/elder-badge.component.mjs +18 -12
  143. package/esm2022/lib/components/badge/elder-badge.directive.mjs +7 -7
  144. package/esm2022/lib/components/badge/elder-badge.module.mjs +4 -4
  145. package/esm2022/lib/components/button-group/elder-button-group/elder-button-group.component.mjs +3 -5
  146. package/esm2022/lib/components/button-group/elder-button-group.module.mjs +5 -20
  147. package/esm2022/lib/components/card-organizer/card-organizer/elder-card-organizer.component.mjs +4 -5
  148. package/esm2022/lib/components/card-organizer/card-organizer/elder-stack-card.directive.mjs +2 -2
  149. package/esm2022/lib/components/card-organizer/card-organizer-data.mjs +7 -7
  150. package/esm2022/lib/components/card-organizer/card-stack/elder-card-stack.component.mjs +24 -12
  151. package/esm2022/lib/components/card-organizer/card-stack.mjs +3 -3
  152. package/esm2022/lib/components/card-organizer/elder-card-organizer.module.mjs +18 -7
  153. package/esm2022/lib/components/cards/elder-card/elder-card-header/elder-card-header.component.mjs +3 -3
  154. package/esm2022/lib/components/cards/elder-card/elder-card.component.mjs +9 -9
  155. package/esm2022/lib/components/cards/elder-card/elder-card.module.mjs +16 -10
  156. package/esm2022/lib/components/chips/elder-chip-label.directive.mjs +3 -3
  157. package/esm2022/lib/components/chips/elder-chips.module.mjs +3 -5
  158. package/esm2022/lib/components/connectivity/elder-connectivity.module.mjs +9 -8
  159. package/esm2022/lib/components/connectivity/elder-connectivity.service.mjs +10 -12
  160. package/esm2022/lib/components/connectivity/offline-indicator/elder-offline-indicator.component.mjs +3 -3
  161. package/esm2022/lib/components/connectivity/public_api.mjs +1 -1
  162. package/esm2022/lib/components/containers/elder-containers.module.mjs +4 -10
  163. package/esm2022/lib/components/containers/elder-scroll-container/elder-scroll-container.component.mjs +4 -4
  164. package/esm2022/lib/components/containers/public_api.mjs +1 -1
  165. package/esm2022/lib/components/csv/elder-csv-export-btn/elder-csv-export-btn.component.mjs +6 -6
  166. package/esm2022/lib/components/csv/elder-csv-stream-exporter-builder.mjs +2 -4
  167. package/esm2022/lib/components/csv/elder-csv-stream-exporter-builder.service.mjs +2 -2
  168. package/esm2022/lib/components/csv/elder-csv-stream-exporter.mjs +12 -12
  169. package/esm2022/lib/components/csv/elder-csv.module.mjs +6 -19
  170. package/esm2022/lib/components/currency/elder-currency.module.mjs +6 -18
  171. package/esm2022/lib/components/currency/elder-currency.pipe.mjs +2 -2
  172. package/esm2022/lib/components/currency/model/currency-code.mjs +1 -1
  173. package/esm2022/lib/components/currency/model/currency-unit-registry.mjs +1 -1
  174. package/esm2022/lib/components/currency/model/currency-unit.mjs +1 -1
  175. package/esm2022/lib/components/currency/model/currency.mjs +1 -1
  176. package/esm2022/lib/components/currency/public_api.mjs +1 -1
  177. package/esm2022/lib/components/data-transfer/elder-data-transfer.module.mjs +28 -16
  178. package/esm2022/lib/components/data-transfer/elder-data-transfer.service.mjs +12 -10
  179. package/esm2022/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.mjs +23 -12
  180. package/esm2022/lib/components/data-transfer/http-data-transfer-aggregate/http-data-transfer-aggregate.component.mjs +3 -3
  181. package/esm2022/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.mjs +13 -3
  182. package/esm2022/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.mjs +11 -3
  183. package/esm2022/lib/components/data-view/base/data-view-options-provider-binding.mjs +4 -2
  184. package/esm2022/lib/components/data-view/base/elder-data-view-base.mjs +4 -5
  185. package/esm2022/lib/components/data-view/base/elder-data-view-options-provider.mjs +1 -1
  186. package/esm2022/lib/components/data-view/base/elder-data-view-options.mjs +1 -1
  187. package/esm2022/lib/components/data-view/base/elder-data-view.mjs +1 -1
  188. package/esm2022/lib/components/data-view/base/public_api.mjs +1 -1
  189. package/esm2022/lib/components/data-view/common/composite-sort/composite-sort-context.mjs +2 -2
  190. package/esm2022/lib/components/data-view/common/composite-sort/composite-sort-dc.directive.mjs +5 -7
  191. package/esm2022/lib/components/data-view/common/composite-sort/composite-sort.mjs +4 -5
  192. package/esm2022/lib/components/data-view/common/composite-sort/elder-composite-sort/elder-composite-sort.component.mjs +6 -6
  193. package/esm2022/lib/components/data-view/common/data-context-state-indicator/data-context-state-indicator.component.mjs +4 -5
  194. package/esm2022/lib/components/data-view/common/elder-data-common.module.mjs +38 -20
  195. package/esm2022/lib/components/data-view/common/elder-data-toolbar/elder-data-toolbar.component.mjs +5 -13
  196. package/esm2022/lib/components/data-view/common/elder-single-sort/elder-single-sort.component.mjs +16 -6
  197. package/esm2022/lib/components/data-view/common/selection/data-context-selection.directive.mjs +6 -4
  198. package/esm2022/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.mjs +4 -5
  199. package/esm2022/lib/components/data-view/common/selection/master-selection-state.mjs +1 -1
  200. package/esm2022/lib/components/data-view/elder-data-view-interaction-mode.mjs +1 -1
  201. package/esm2022/lib/components/data-view/grid/elder-grid/elder-grid.component.mjs +46 -26
  202. package/esm2022/lib/components/data-view/grid/elder-grid.module.mjs +30 -21
  203. package/esm2022/lib/components/data-view/master-detail/elder-detail-dialog/elder-detail-dialog.component.mjs +15 -9
  204. package/esm2022/lib/components/data-view/master-detail/elder-detail.directive.mjs +5 -7
  205. package/esm2022/lib/components/data-view/master-detail/elder-master-activation.directive.mjs +8 -6
  206. package/esm2022/lib/components/data-view/master-detail/elder-master-detail-provider.mjs +2 -2
  207. package/esm2022/lib/components/data-view/master-detail/elder-master-detail.component.mjs +19 -25
  208. package/esm2022/lib/components/data-view/master-detail/elder-master-detail.module.mjs +4 -4
  209. package/esm2022/lib/components/data-view/master-detail/elder-master-detail.service.mjs +5 -4
  210. package/esm2022/lib/components/data-view/master-detail/elder-master.directive.mjs +2 -2
  211. package/esm2022/lib/components/data-view/master-detail/master-detail-activation-event.mjs +1 -1
  212. package/esm2022/lib/components/data-view/public_api.mjs +1 -1
  213. package/esm2022/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.component.mjs +4 -5
  214. package/esm2022/lib/components/data-view/simple/elder-simple-selection-view/elder-simple-selection-view.module.mjs +41 -16
  215. package/esm2022/lib/components/data-view/table/activation/activation-event-source.mjs +1 -1
  216. package/esm2022/lib/components/data-view/table/activation/elder-activation-context.mjs +1 -1
  217. package/esm2022/lib/components/data-view/table/activation/elder-delete-active.directive.mjs +6 -6
  218. package/esm2022/lib/components/data-view/table/activation/elder-table-activation-options.mjs +1 -1
  219. package/esm2022/lib/components/data-view/table/activation/elder-table-activation.directive.mjs +23 -15
  220. package/esm2022/lib/components/data-view/table/activation/item-activation-event.mjs +1 -1
  221. package/esm2022/lib/components/data-view/table/activation/item-activation-options.mjs +1 -1
  222. package/esm2022/lib/components/data-view/table/activation/public_api.mjs +1 -1
  223. package/esm2022/lib/components/data-view/table/elder-center-cell.directive.mjs +4 -5
  224. package/esm2022/lib/components/data-view/table/elder-number-cell.directive.mjs +3 -3
  225. package/esm2022/lib/components/data-view/table/elder-paginator-intl.mjs +8 -7
  226. package/esm2022/lib/components/data-view/table/elder-table/elder-table-toolbar.directive.mjs +2 -2
  227. package/esm2022/lib/components/data-view/table/elder-table/elder-table.component.mjs +54 -38
  228. package/esm2022/lib/components/data-view/table/elder-table-column.directive.mjs +2 -2
  229. package/esm2022/lib/components/data-view/table/elder-table-extension.directive.mjs +6 -11
  230. package/esm2022/lib/components/data-view/table/elder-table-root.directive.mjs +4 -8
  231. package/esm2022/lib/components/data-view/table/elder-table-row.directive.mjs +8 -6
  232. package/esm2022/lib/components/data-view/table/elder-table-sort.directive.mjs +2 -2
  233. package/esm2022/lib/components/data-view/table/elder-table.module.mjs +57 -25
  234. package/esm2022/lib/components/data-view/table/model/elder-column-layout.mjs +7 -7
  235. package/esm2022/lib/components/data-view/table/model/elder-table-model-cdk-table-binding.mjs +15 -11
  236. package/esm2022/lib/components/data-view/table/model/elder-table-model-provider.mjs +4 -4
  237. package/esm2022/lib/components/data-view/table/model/elder-table-model-query-group.mjs +11 -9
  238. package/esm2022/lib/components/data-view/table/model/elder-table-model.mjs +7 -5
  239. package/esm2022/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.mjs +13 -3
  240. package/esm2022/lib/components/dialogs/elder-dialog-config.mjs +1 -1
  241. package/esm2022/lib/components/dialogs/elder-dialog.module.mjs +34 -13
  242. package/esm2022/lib/components/dialogs/elder-dialog.service.mjs +19 -22
  243. package/esm2022/lib/components/dialogs/question-dialog/elder-question-dialog.component.mjs +17 -5
  244. package/esm2022/lib/components/dialogs/selection-dialog/elder-selection-dialog/elder-selection-dialog.component.mjs +4 -5
  245. package/esm2022/lib/components/dialogs/selection-dialog/elder-selection-dialog.directive.mjs +5 -5
  246. package/esm2022/lib/components/errors/elder-error.module.mjs +4 -6
  247. package/esm2022/lib/components/errors/error-util.mjs +4 -4
  248. package/esm2022/lib/components/errors/exception-detail/elder-exception-detail.component.mjs +17 -6
  249. package/esm2022/lib/components/expand-toggle-button/elder-expand-toggle-button.component.mjs +3 -3
  250. package/esm2022/lib/components/expand-toggle-button/elder-expand-toggle-button.module.mjs +15 -8
  251. package/esm2022/lib/components/files/blob-url.mjs +1 -1
  252. package/esm2022/lib/components/files/blob-viewer/elder-blob-viewer.component.mjs +16 -11
  253. package/esm2022/lib/components/files/drag-n-drop/elder-drop-zone/elder-drop-zone.component.mjs +3 -3
  254. package/esm2022/lib/components/files/drag-n-drop/global-drag-drop.service.mjs +4 -4
  255. package/esm2022/lib/components/files/elder-file-drop-zone.directive.mjs +7 -7
  256. package/esm2022/lib/components/files/elder-file-select-input.mjs +3 -3
  257. package/esm2022/lib/components/files/elder-file-select.directive.mjs +14 -16
  258. package/esm2022/lib/components/files/elder-file.module.mjs +16 -10
  259. package/esm2022/lib/components/files/file-select/file-select.component.mjs +5 -6
  260. package/esm2022/lib/components/files/file-system-api.mjs +2 -2
  261. package/esm2022/lib/components/files/file-upload/file-upload.component.mjs +16 -3
  262. package/esm2022/lib/components/files/listing/file-entry.mjs +3 -3
  263. package/esm2022/lib/components/files/listing/file-listing-rx.mjs +5 -5
  264. package/esm2022/lib/components/files/listing/file-listing-system-handle.mjs +3 -3
  265. package/esm2022/lib/components/files/listing/file-listing-webkit.mjs +10 -11
  266. package/esm2022/lib/components/forms/clipboard/elder-clipboard.service.mjs +2 -2
  267. package/esm2022/lib/components/forms/directives/base/elder-class-hostbinding-base.mjs +1 -1
  268. package/esm2022/lib/components/forms/directives/elder-clipboard-put.directive.mjs +5 -3
  269. package/esm2022/lib/components/forms/directives/elder-delayed-focus.directive.mjs +2 -2
  270. package/esm2022/lib/components/forms/directives/elder-form-field-dense.directive.mjs +1 -1
  271. package/esm2022/lib/components/forms/directives/elder-form-field-label.directive.mjs +2 -2
  272. package/esm2022/lib/components/forms/directives/elder-form-field-no-hint.directive.mjs +2 -2
  273. package/esm2022/lib/components/forms/directives/elder-form-field-no-spinner.directive.mjs +2 -2
  274. package/esm2022/lib/components/forms/directives/elder-forms-directives.module.mjs +13 -6
  275. package/esm2022/lib/components/forms/directives/elder-initial-value.directive.mjs +5 -5
  276. package/esm2022/lib/components/forms/directives/elder-input-pattern.directive.mjs +2 -2
  277. package/esm2022/lib/components/forms/directives/elder-key-event.directive.mjs +2 -2
  278. package/esm2022/lib/components/forms/directives/elder-next-focusable.directive.mjs +3 -3
  279. package/esm2022/lib/components/forms/directives/elder-plug-parent-form.directive.mjs +6 -6
  280. package/esm2022/lib/components/forms/directives/elder-stop-event-propagation.directive.mjs +2 -2
  281. package/esm2022/lib/components/forms/directives/elder-tab-focus-trap.directive.mjs +13 -10
  282. package/esm2022/lib/components/forms/directives/elder-touched.directive.mjs +2 -2
  283. package/esm2022/lib/components/forms/directives/elder-triple-state-checkbox.directive.mjs +4 -4
  284. package/esm2022/lib/components/forms/directives/validation/elder-validation-error.directive.mjs +5 -3
  285. package/esm2022/lib/components/forms/directives/validation/strategies/common-validation-message-strategy.mjs +2 -2
  286. package/esm2022/lib/components/forms/directives/validation/strategies/dynamic-validation-message-strategy.mjs +2 -2
  287. package/esm2022/lib/components/forms/directives/validation/strategies/fallback-validation-message-strategy.mjs +1 -1
  288. package/esm2022/lib/components/forms/directives/validation/validation-message-renderer.service.mjs +4 -6
  289. package/esm2022/lib/components/forms/directives/validation/validation-message-strategy.mjs +1 -1
  290. package/esm2022/lib/components/forms/directives/validation/validators/elder-max.validator.mjs +4 -9
  291. package/esm2022/lib/components/forms/directives/validation/validators/elder-min.validator.mjs +4 -9
  292. package/esm2022/lib/components/forms/directives/validation/validators/elder-multiple-of.validator.mjs +12 -11
  293. package/esm2022/lib/components/forms/directives/validation/validators/elder-required-ignore-zero.validator.mjs +4 -4
  294. package/esm2022/lib/components/forms/elder-forms.module.mjs +1 -1
  295. package/esm2022/lib/components/forms/public_api.mjs +1 -1
  296. package/esm2022/lib/components/forms/search/domain/context/search-context.mjs +7 -3
  297. package/esm2022/lib/components/forms/search/domain/context/search-context.service.mjs +2 -2
  298. package/esm2022/lib/components/forms/search/domain/input/input-value.mjs +1 -1
  299. package/esm2022/lib/components/forms/search/domain/input/search-input-state.mjs +2 -2
  300. package/esm2022/lib/components/forms/search/domain/input/search-input.mjs +1 -1
  301. package/esm2022/lib/components/forms/search/domain/input/simple-search-input.mjs +1 -1
  302. package/esm2022/lib/components/forms/search/domain/url/elder-search-url.directive.mjs +14 -8
  303. package/esm2022/lib/components/forms/search/domain/url/elder-search-url.service.mjs +15 -12
  304. package/esm2022/lib/components/forms/search/domain/url/search-query-params-parser.mjs +3 -3
  305. package/esm2022/lib/components/forms/search/elder-search-context.directive.mjs +30 -25
  306. package/esm2022/lib/components/forms/search/elder-search-input.directive.mjs +14 -19
  307. package/esm2022/lib/components/forms/search/elder-search.module.mjs +24 -13
  308. package/esm2022/lib/components/forms/search/filter/default-input-filter-converter.mjs +2 -4
  309. package/esm2022/lib/components/forms/search/filter/input-filter-converter.mjs +1 -1
  310. package/esm2022/lib/components/forms/search/search-box/elder-search-box.component.mjs +27 -8
  311. package/esm2022/lib/components/forms/search/search-box/elder-search-panel.component.mjs +4 -4
  312. package/esm2022/lib/components/global-search/elder-global-search.component.mjs +19 -10
  313. package/esm2022/lib/components/global-search/elder-global-search.module.mjs +24 -6
  314. package/esm2022/lib/components/global-search/elder-global-search.service.mjs +8 -6
  315. package/esm2022/lib/components/graph/elder-progress-bar/elder-progress-bar.component.mjs +6 -6
  316. package/esm2022/lib/components/graph/elder-progress-bar/elder-progress-bar.module.mjs +4 -10
  317. package/esm2022/lib/components/graph/elder-progress-bar/sub-bar.mjs +1 -1
  318. package/esm2022/lib/components/graph/public_api.mjs +1 -1
  319. package/esm2022/lib/components/headers/elder-header/elder-header.component.mjs +3 -3
  320. package/esm2022/lib/components/headers/elder-header.module.mjs +12 -14
  321. package/esm2022/lib/components/http-support/elder-http-client.service.mjs +4 -9
  322. package/esm2022/lib/components/http-support/public_api.mjs +1 -1
  323. package/esm2022/lib/components/i18n/entities/elder-i18n-entities.module.mjs +3 -3
  324. package/esm2022/lib/components/i18n/entities/elder-localized-input/elder-localized-input.component.mjs +31 -20
  325. package/esm2022/lib/components/i18n/entities/elder-localized-input-dialog/elder-localized-input-dialog.component.mjs +14 -5
  326. package/esm2022/lib/components/i18n/entities/elder-localized-input-dialog.service.mjs +4 -4
  327. package/esm2022/lib/components/i18n/entities/elder-localized-input-table/elder-localized-input-table.component.mjs +42 -19
  328. package/esm2022/lib/components/i18n/entities/elder-localized-text-column.directive.mjs +2 -2
  329. package/esm2022/lib/components/i18n/entities/elder-localized-texts.directive.mjs +4 -5
  330. package/esm2022/lib/components/i18n/entities/picker/i18n-pick-async.pipe.mjs +3 -3
  331. package/esm2022/lib/components/i18n/entities/picker/i18n-pick.pipe.mjs +2 -2
  332. package/esm2022/lib/components/i18n/entities/picker/localisation-picker.service.mjs +6 -6
  333. package/esm2022/lib/components/i18n/language/elder-language-config.mjs +1 -1
  334. package/esm2022/lib/components/i18n/language/elder-language-interceptor.mjs +8 -7
  335. package/esm2022/lib/components/i18n/language/elder-language.module.mjs +11 -10
  336. package/esm2022/lib/components/i18n/language/elder-language.service.mjs +3 -4
  337. package/esm2022/lib/components/i18n/language/language-switcher/elder-language-switcher.component.mjs +17 -5
  338. package/esm2022/lib/components/i18n/locales/elder-locales-de-ch.module.mjs +7 -7
  339. package/esm2022/lib/components/i18n/public_api.mjs +1 -1
  340. package/esm2022/lib/components/iframes/data-view/data-view-iframe/data-view-iframe.component.mjs +13 -13
  341. package/esm2022/lib/components/iframes/data-view/data-view-iframe-adapter.directive.mjs +13 -11
  342. package/esm2022/lib/components/iframes/elder-iframe.module.mjs +4 -4
  343. package/esm2022/lib/components/iframes/iframe-close.directive.mjs +2 -3
  344. package/esm2022/lib/components/iframes/iframe-dialog/iframe-dialog.component.mjs +3 -3
  345. package/esm2022/lib/components/iframes/iframe-host/iframe-host.component.mjs +12 -4
  346. package/esm2022/lib/components/iframes/iframe-messages.mjs +1 -1
  347. package/esm2022/lib/components/iframes/iframe-side-content/iframe-side-content.component.mjs +11 -9
  348. package/esm2022/lib/components/iframes/iframe.service.mjs +7 -5
  349. package/esm2022/lib/components/iframes/typed-event-message.mjs +1 -1
  350. package/esm2022/lib/components/infinitescroll/elder-infinite-autocomplete.directive.mjs +10 -6
  351. package/esm2022/lib/components/infinitescroll/elder-infinite-scroll.directive.mjs +12 -7
  352. package/esm2022/lib/components/infinitescroll/elder-infinite-scroll.module.mjs +4 -10
  353. package/esm2022/lib/components/input/autocomplete/elder-autocomplete/elder-autocomplete-option-selected.mjs +1 -1
  354. package/esm2022/lib/components/input/autocomplete/elder-autocomplete/elder-suggestion-panel.component.mjs +26 -17
  355. package/esm2022/lib/components/input/autocomplete/elder-autocomplete-many.directive.mjs +11 -7
  356. package/esm2022/lib/components/input/autocomplete/elder-autocomplete.directive.mjs +8 -6
  357. package/esm2022/lib/components/input/autocomplete/elder-autocomplete.module.mjs +9 -6
  358. package/esm2022/lib/components/input/autocomplete/many/word-position-finder.mjs +1 -1
  359. package/esm2022/lib/components/input/public_api.mjs +1 -1
  360. package/esm2022/lib/components/labels/elder-labels.module.mjs +26 -8
  361. package/esm2022/lib/components/labels/labels-input/labels-input.component.mjs +28 -11
  362. package/esm2022/lib/components/measures/dimensions/dimensions-input/elder-dimensions-input.component.mjs +22 -21
  363. package/esm2022/lib/components/measures/dimensions/validation/elder-required-dimensions.validator.mjs +4 -4
  364. package/esm2022/lib/components/measures/directives/elder-unit-select.directive.mjs +2 -2
  365. package/esm2022/lib/components/measures/elder-measures.module.mjs +7 -19
  366. package/esm2022/lib/components/measures/elder-quantity-transform.pipe.mjs +2 -2
  367. package/esm2022/lib/components/measures/elder-quantity.pipe.mjs +2 -2
  368. package/esm2022/lib/components/measures/elder-unit.service.mjs +4 -6
  369. package/esm2022/lib/components/measures/model/dimensions.mjs +1 -1
  370. package/esm2022/lib/components/measures/model/quantity.mjs +1 -1
  371. package/esm2022/lib/components/measures/model/unit-dimension.mjs +1 -1
  372. package/esm2022/lib/components/measures/model/unit-registry.mjs +1 -1
  373. package/esm2022/lib/components/measures/model/unit.mjs +1 -1
  374. package/esm2022/lib/components/measures/public_api.mjs +1 -1
  375. package/esm2022/lib/components/measures/quantity-input/quantity-form-field/elder-quantity-form-field.component.mjs +13 -3
  376. package/esm2022/lib/components/measures/quantity-input/quantity-input-control/elder-quantity-input-control.component.mjs +18 -16
  377. package/esm2022/lib/components/measures/quantity-input/validation/elder-quantity-range.validator.mjs +4 -8
  378. package/esm2022/lib/components/measures/quantity-input/validation/elder-required-quantity.validator.mjs +4 -8
  379. package/esm2022/lib/components/measures/util/elder-quantity.service.mjs +15 -10
  380. package/esm2022/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.mjs +26 -6
  381. package/esm2022/lib/components/navigation/bread-crumbs/elder-bread-crumbs.module.mjs +12 -8
  382. package/esm2022/lib/components/navigation/bread-crumbs/path/path.mjs +1 -1
  383. package/esm2022/lib/components/navigation/nav/elder-nav.module.mjs +26 -20
  384. package/esm2022/lib/components/navigation/nav/nav-group/elder-nav-group.component.mjs +15 -21
  385. package/esm2022/lib/components/navigation/nav/nav-link/elder-nav-link.component.mjs +20 -7
  386. package/esm2022/lib/components/navigation/nav/nav-list/elder-nav-list.component.mjs +3 -3
  387. package/esm2022/lib/components/navigation/public_api.mjs +1 -1
  388. package/esm2022/lib/components/navigation/toolbar/elder-toolbar-column.directive.mjs +2 -2
  389. package/esm2022/lib/components/navigation/toolbar/elder-toolbar.module.mjs +26 -20
  390. package/esm2022/lib/components/navigation/toolbar/elder-toolbar.service.mjs +2 -2
  391. package/esm2022/lib/components/navigation/toolbar/toolbar/elder-toolbar.component.mjs +12 -7
  392. package/esm2022/lib/components/navigation/toolbar/toolbar-column-position.mjs +1 -1
  393. package/esm2022/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.mjs +4 -5
  394. package/esm2022/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.service.mjs +5 -4
  395. package/esm2022/lib/components/overlays/elder-overlay-origin.directive.mjs +2 -2
  396. package/esm2022/lib/components/overlays/elder-overlay-ref.mjs +1 -1
  397. package/esm2022/lib/components/overlays/elder-overlay-trigger.directive.mjs +3 -3
  398. package/esm2022/lib/components/overlays/elder-overlay.component.mjs +23 -14
  399. package/esm2022/lib/components/overlays/elder-overlay.module.mjs +4 -10
  400. package/esm2022/lib/components/page/exit-guard/page-exit-guard.module.mjs +5 -12
  401. package/esm2022/lib/components/page/exit-guard/page-exit-guard.service.mjs +6 -6
  402. package/esm2022/lib/components/page/exit-guard/page-exit-lock/page-exit-lock.component.mjs +3 -5
  403. package/esm2022/lib/components/page/exit-guard/page-exit-lock-indicator/page-exit-lock-indicator.component.mjs +3 -8
  404. package/esm2022/lib/components/page/exit-guard/page-exit-lock-overview/page-exit-lock-overview.component.mjs +3 -7
  405. package/esm2022/lib/components/panels/card-panel/elder-card-panel.component.mjs +3 -3
  406. package/esm2022/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.mjs +3 -3
  407. package/esm2022/lib/components/panels/elder-panel.module.mjs +10 -7
  408. package/esm2022/lib/components/panels/flat/elder-panel.component.mjs +4 -4
  409. package/esm2022/lib/components/panels/toggle-panel/elder-toggle-panel-trigger.directive.mjs +2 -2
  410. package/esm2022/lib/components/panels/toggle-panel/elder-toggle-panel.component.mjs +6 -6
  411. package/esm2022/lib/components/public_api.mjs +1 -1
  412. package/esm2022/lib/components/scrollbar/elder-scrollbar.directive.mjs +2 -2
  413. package/esm2022/lib/components/scrollbar/elder-scrollbar.module.mjs +2 -2
  414. package/esm2022/lib/components/select/auto/elder-auto-select-first.directive.mjs +5 -8
  415. package/esm2022/lib/components/select/auto/elder-auto-select-first.service.mjs +1 -1
  416. package/esm2022/lib/components/select/auto/elder-auto-select-suggest-first.directive.mjs +7 -9
  417. package/esm2022/lib/components/select/auto/elder-select-first-util.mjs +7 -4
  418. package/esm2022/lib/components/select/elder-select-base.mjs +12 -13
  419. package/esm2022/lib/components/select/elder-select-chip.directive.mjs +4 -4
  420. package/esm2022/lib/components/select/elder-select-on-tab.directive.mjs +10 -5
  421. package/esm2022/lib/components/select/elder-select-value.directive.mjs +2 -2
  422. package/esm2022/lib/components/select/elder-select.module.mjs +65 -29
  423. package/esm2022/lib/components/select/filter/elder-chip-filter-style-resolver.mjs +9 -9
  424. package/esm2022/lib/components/select/filter/elder-chips-include-exclude.directive.mjs +19 -15
  425. package/esm2022/lib/components/select/filter/elder-filter-chip-template/elder-filter-chip-template.component.mjs +3 -3
  426. package/esm2022/lib/components/select/filter/include-exclude-model-filter-adapter.mjs +6 -8
  427. package/esm2022/lib/components/select/filter/include-exclude-selection-model.mjs +7 -11
  428. package/esm2022/lib/components/select/multi/elder-chip-select-option/elder-select-option.component.mjs +2 -3
  429. package/esm2022/lib/components/select/multi/elder-multi-select-base.mjs +29 -27
  430. package/esm2022/lib/components/select/multi/elder-multi-select-chip-options/chip-options-provider.mjs +12 -10
  431. package/esm2022/lib/components/select/multi/elder-multi-select-chip-options/elder-multi-select-chip-options.component.mjs +40 -29
  432. package/esm2022/lib/components/select/multi/elder-multi-select-chip-options/select-option-chip-spec.mjs +4 -4
  433. package/esm2022/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.mjs +41 -21
  434. package/esm2022/lib/components/select/multi/elder-multi-select-chips/select-chip-spec.mjs +4 -4
  435. package/esm2022/lib/components/select/multi/elder-multi-select-form-field.mjs +2 -2
  436. package/esm2022/lib/components/select/multi/elder-mutli-select-all-directive.mjs +7 -8
  437. package/esm2022/lib/components/select/multi/elder-search-include-exclude.directive.mjs +8 -10
  438. package/esm2022/lib/components/select/popup/selection-model-popup-trigger-adapter.directive.mjs +7 -5
  439. package/esm2022/lib/components/select/popup/selection-model-popup.directive.mjs +13 -13
  440. package/esm2022/lib/components/select/popup/templated-selection-dialog/templated-selection-dialog.component.mjs +15 -5
  441. package/esm2022/lib/components/select/public_api.mjs +1 -1
  442. package/esm2022/lib/components/select/single/elder-clear-select.directive.mjs +5 -3
  443. package/esm2022/lib/components/select/single/elder-select/elder-select.component.mjs +39 -29
  444. package/esm2022/lib/components/select/single/elder-select-form-field.mjs +1 -1
  445. package/esm2022/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.mjs +11 -12
  446. package/esm2022/lib/components/select-chip-list/elder-chip-list-select.module.mjs +3 -5
  447. package/esm2022/lib/components/shell/drawers/drawer-outlet-binding.mjs +8 -4
  448. package/esm2022/lib/components/shell/drawers/elder-route-outlet-drawer.service.mjs +6 -4
  449. package/esm2022/lib/components/shell/drawers/elder-router-outlet.service.mjs +7 -7
  450. package/esm2022/lib/components/shell/elder-shell-slot.directive.mjs +2 -2
  451. package/esm2022/lib/components/shell/elder-shell.module.mjs +10 -7
  452. package/esm2022/lib/components/shell/elder-shell.service.mjs +6 -9
  453. package/esm2022/lib/components/shell/header/elder-app-header/elder-app-header.component.mjs +6 -6
  454. package/esm2022/lib/components/shell/shell/elder-shell.component.mjs +34 -14
  455. package/esm2022/lib/components/shell/shell-content-slot.mjs +1 -1
  456. package/esm2022/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.mjs +5 -5
  457. package/esm2022/lib/components/tabs/elder-tab/elder-tab.directive.mjs +2 -2
  458. package/esm2022/lib/components/tabs/elder-tab-group-routing/elder-tab-group-routing.directive.mjs +12 -12
  459. package/esm2022/lib/components/tabs/elder-tab.module.mjs +4 -14
  460. package/esm2022/lib/components/theme/elder-theme-applier.directive.mjs +5 -6
  461. package/esm2022/lib/components/theme/elder-theme-preference.service.mjs +3 -4
  462. package/esm2022/lib/components/theme/elder-theme-toggle/elder-theme-toggle.component.mjs +6 -7
  463. package/esm2022/lib/components/theme/elder-theme.directive.mjs +5 -3
  464. package/esm2022/lib/components/theme/elder-theme.module.mjs +9 -15
  465. package/esm2022/lib/components/theme/elder-theme.service.mjs +7 -9
  466. package/esm2022/lib/components/theme/known-elder-themes.mjs +1 -1
  467. package/esm2022/lib/components/theme/public_api.mjs +1 -1
  468. package/esm2022/lib/components/theme/theme-spec.mjs +3 -7
  469. package/esm2022/lib/components/time/date-adapters/custom-date-adapter.mjs +1 -1
  470. package/esm2022/lib/components/time/date-formats/locale-date-formats.mjs +2 -2
  471. package/esm2022/lib/components/time/duration/duration-bucket.mjs +3 -2
  472. package/esm2022/lib/components/time/duration/duration-format.mjs +1 -1
  473. package/esm2022/lib/components/time/duration/elder-duration-input/elder-duration-input.component.mjs +6 -12
  474. package/esm2022/lib/components/time/duration/iso-duration-str.mjs +1 -1
  475. package/esm2022/lib/components/time/elder-date-switcher/elder-date-switcher.component.mjs +13 -7
  476. package/esm2022/lib/components/time/elder-date-time-input/elder-date-time-input.component.mjs +7 -13
  477. package/esm2022/lib/components/time/elder-interval-input/elder-interval-input.component.mjs +27 -27
  478. package/esm2022/lib/components/time/elder-interval-picker/elder-interval-picker-binding.directive.mjs +1 -1
  479. package/esm2022/lib/components/time/elder-interval-picker/elder-interval-picker-toggle/elder-interval-picker-toggle.component.mjs +15 -18
  480. package/esm2022/lib/components/time/elder-interval-picker/elder-interval-picker.component.mjs +8 -11
  481. package/esm2022/lib/components/time/elder-interval-picker/elder-interval-picker.service.mjs +16 -11
  482. package/esm2022/lib/components/time/elder-local-date-input/elder-local-date-input.component.mjs +22 -13
  483. package/esm2022/lib/components/time/elder-local-time-input/elder-local-time-input.component.mjs +7 -13
  484. package/esm2022/lib/components/time/elder-time.module.mjs +29 -21
  485. package/esm2022/lib/components/time/period/elder-period-input/elder-period-input.component.mjs +6 -12
  486. package/esm2022/lib/components/time/period/period-bucket.mjs +1 -1
  487. package/esm2022/lib/components/time/period/period-format.mjs +1 -1
  488. package/esm2022/lib/components/time/pipes/to-iso-date-string.pipe.mjs +2 -2
  489. package/esm2022/lib/components/time/public_api.mjs +1 -1
  490. package/esm2022/lib/components/toasts/elder-toast.module.mjs +18 -4
  491. package/esm2022/lib/components/toasts/elder-toast.service.mjs +9 -10
  492. package/esm2022/lib/components/toasts/standard-toast/standard-toast.component.mjs +21 -14
  493. package/esm2022/lib/components/toasts/toast-type.mjs +1 -1
  494. package/esm2022/lib/components/toasts/toast.mjs +1 -1
  495. package/esm2022/lib/components/url-fragment/elder-url-fragment.mjs +1 -1
  496. package/esm2022/lib/components/url-fragment/elder-url-fragment.module.mjs +3 -5
  497. package/esm2022/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.mjs +16 -5
  498. package/esm2022/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.mjs +3 -4
  499. package/esm2022/lib/components/viewers/elder-viewers.module.mjs +4 -10
  500. package/esm2022/lib/features/event-source/fetch/public_api.mjs +1 -1
  501. package/esm2022/lib/features/event-source/fetch/reactive-fetch-event-source.mjs +14 -14
  502. package/esm2022/lib/features/event-source/fetch/reactive-fetch-event-source.service.mjs +2 -2
  503. package/esm2022/lib/features/event-source/public_api.mjs +1 -1
  504. package/esm2022/lib/features/event-source/standard/elder-event-source.service.mjs +2 -2
  505. package/esm2022/lib/features/event-source/standard/public_api.mjs +1 -1
  506. package/esm2022/lib/features/event-source/standard/reactive-event-source.mjs +8 -7
  507. package/esm2022/lib/features/kafent/access-token-provider.mjs +1 -1
  508. package/esm2022/lib/features/kafent/kafent-config.mjs +1 -1
  509. package/esm2022/lib/features/kafent/kafent-event-stream.mjs +1 -1
  510. package/esm2022/lib/features/kafent/kafent-event.mjs +1 -1
  511. package/esm2022/lib/features/kafent/kafent-event.service.mjs +16 -8
  512. package/esm2022/lib/features/kafent/kafent-live-event-request.mjs +1 -1
  513. package/esm2022/lib/features/kafent/kafent.module.mjs +10 -13
  514. package/esm2022/lib/features/kafent/sse/kafent-event-stream-sse.service.mjs +12 -9
  515. package/esm2022/lib/features/kafent/sse/kafent-topic-sse.mjs +2 -3
  516. package/esm2022/lib/features/public_api.mjs +1 -1
  517. package/esm2022/lib/pipes/bytes.pipe.mjs +2 -2
  518. package/esm2022/lib/pipes/elder-pipes.module.mjs +52 -8
  519. package/esm2022/lib/pipes/elder-repeat.pipe.mjs +2 -2
  520. package/esm2022/lib/pipes/elder-round.pipe.mjs +2 -2
  521. package/esm2022/lib/pipes/elder-safe-url.pipe.mjs +2 -2
  522. package/esm2022/lib/pipes/elder-truncate.pipe.mjs +3 -3
  523. package/esm2022/lib/pipes/iso-duration.pipe.mjs +2 -2
  524. package/esm2022/lib/pipes/iso-interval-parse.pipe.mjs +4 -5
  525. package/esm2022/lib/pipes/iso-interval.pipe.mjs +2 -2
  526. package/esm2022/lib/pipes/public_api.mjs +1 -1
  527. package/esm2022/lib/pipes/time-ago.pipe.mjs +12 -7
  528. package/esm2022/lib/pipes/time-duration.pipe.mjs +6 -4
  529. package/esm2022/lib/pipes/weight.pipe.mjs +4 -3
  530. package/esm2022/public_api.mjs +1 -1
  531. package/fesm2022/elderbyte-ngx-starter.mjs +3054 -2329
  532. package/fesm2022/elderbyte-ngx-starter.mjs.map +1 -1
  533. package/lib/common/arrays.d.ts +1 -1
  534. package/lib/common/data/data-context/data-context-active-page.d.ts +1 -1
  535. package/lib/common/data/data-context/data-context-base.d.ts +1 -1
  536. package/lib/common/data/data-context/data-context-builder.d.ts +2 -2
  537. package/lib/common/data/data-context/data-context-continuable-base.d.ts +1 -1
  538. package/lib/common/data/data-context/data-context-continuable-paged.d.ts +1 -1
  539. package/lib/common/data/data-context/data-context-continuable-token.d.ts +1 -1
  540. package/lib/common/data/data-context/data-context-simple.d.ts +1 -1
  541. package/lib/common/data/data-context/data-context-source-event-binding.d.ts +2 -5
  542. package/lib/common/data/datasource/data-source-change-event.d.ts +14 -5
  543. package/lib/common/data/datasource/local/local-list-data-source.d.ts +3 -3
  544. package/lib/common/data/datasource/local/local-paged-data-source.d.ts +1 -1
  545. package/lib/common/data/datasource/patch/deep-partial-patcher.d.ts +28 -0
  546. package/lib/common/json-map.d.ts +1 -1
  547. package/lib/common/selection/selection-model.d.ts +2 -2
  548. package/lib/common/time/interval.d.ts +4 -4
  549. package/lib/common/time/temporal-util.d.ts +2 -0
  550. package/lib/common/utils/collection-util.d.ts +1 -1
  551. package/lib/components/card-organizer/card-organizer-data.d.ts +3 -3
  552. package/lib/components/card-organizer/card-stack.d.ts +2 -2
  553. package/lib/components/data-view/base/elder-data-view-options-provider.d.ts +1 -1
  554. package/lib/components/data-view/common/elder-data-common.module.d.ts +1 -1
  555. package/lib/components/data-view/elder-data-view-interaction-mode.d.ts +2 -2
  556. package/lib/components/data-view/grid/elder-grid.module.d.ts +1 -1
  557. package/lib/components/forms/search/elder-search-input.directive.d.ts +1 -1
  558. package/lib/components/navigation/toolbar/elder-toolbar.module.d.ts +1 -1
  559. package/lib/components/navigation/toolbar/toolbar-column-position.d.ts +3 -3
  560. package/lib/components/select/elder-select.module.d.ts +1 -1
  561. package/lib/components/time/elder-interval-input/elder-interval-input.component.d.ts +4 -4
  562. package/lib/components/time/elder-interval-picker/elder-interval-picker-toggle/elder-interval-picker-toggle.component.d.ts +2 -2
  563. package/lib/components/time/elder-interval-picker/elder-interval-picker.component.d.ts +2 -1
  564. package/lib/components/time/elder-interval-picker/elder-interval-picker.service.d.ts +4 -2
  565. package/package.json +1 -1
  566. package/src/assets/i18n/de.json +0 -1
  567. package/src/assets/i18n/en.json +0 -1
  568. package/src/lib/components/access-denied/elder-access-denied.component.scss +1 -5
  569. package/src/lib/components/auditing/audited-entity/elder-audited-entity.component.scss +0 -1
  570. package/src/lib/components/badge/elder-badge/elder-badge.component.scss +2 -7
  571. package/src/lib/components/card-organizer/card-organizer/elder-card-organizer.component.scss +0 -1
  572. package/src/lib/components/card-organizer/card-stack/elder-card-stack.component.scss +4 -14
  573. package/src/lib/components/cards/elder-card/elder-card.component.scss +3 -9
  574. package/src/lib/components/chips/_elder-chip-theme.scss +5 -9
  575. package/src/lib/components/containers/elder-scroll-container/elder-scroll-container.component.scss +0 -1
  576. package/src/lib/components/data-transfer/http-data-transfer/http-data-transfer.component.scss +0 -1
  577. package/src/lib/components/data-transfer/http-data-transfer-indicator/http-data-transfer-indicator.component.scss +0 -1
  578. package/src/lib/components/data-transfer/http-data-transfer-overview/http-data-transfer-overview.component.scss +4 -5
  579. package/src/lib/components/data-view/common/selection/elder-selection-master-checkbox/elder-selection-master-checkbox.component.scss +1 -1
  580. package/src/lib/components/data-view/grid/elder-grid/elder-grid.component.scss +21 -13
  581. package/src/lib/components/data-view/table/elder-table/elder-table.component.scss +12 -21
  582. package/src/lib/components/dialogs/confirm-dialog/elder-confirm-dialog.component.scss +2 -3
  583. package/src/lib/components/errors/exception-detail/elder-exception-detail.component.scss +2 -4
  584. package/src/lib/components/expand-toggle-button/elder-expand-toggle-button.component.scss +0 -4
  585. package/src/lib/components/files/blob-viewer/elder-blob-viewer.component.scss +2 -4
  586. package/src/lib/components/files/drag-n-drop/elder-drop-zone/elder-drop-zone.component.scss +2 -7
  587. package/src/lib/components/forms/search/search-box/elder-search-box.component.scss +0 -2
  588. package/src/lib/components/global-search/elder-global-search.component.scss +1 -2
  589. package/src/lib/components/graph/elder-progress-bar/elder-progress-bar.component.scss +0 -1
  590. package/src/lib/components/iframes/iframe-host/iframe-host.component.scss +0 -1
  591. package/src/lib/components/labels/labels-input/labels-input.component.scss +0 -2
  592. package/src/lib/components/navigation/bread-crumbs/bread-crumbs/elder-bread-crumbs.component.scss +0 -2
  593. package/src/lib/components/navigation/nav/_elder-nav-theme.scss +4 -8
  594. package/src/lib/components/navigation/nav/nav-group/elder-nav-group.component.scss +6 -6
  595. package/src/lib/components/navigation/nav/nav-list/elder-nav-list.component.scss +0 -1
  596. package/src/lib/components/navigation/toolbar/toolbar-title/elder-toolbar-title.component.scss +1 -2
  597. package/src/lib/components/panels/card-panel/elder-card-panel.component.scss +0 -3
  598. package/src/lib/components/panels/elder-dialog-panel/elder-dialog-panel.component.scss +0 -1
  599. package/src/lib/components/panels/flat/_elder-panel-theme.scss +0 -2
  600. package/src/lib/components/panels/flat/elder-panel.component.scss +1 -2
  601. package/src/lib/components/select/_elder-select-base.scss +0 -1
  602. package/src/lib/components/select/filter/elder-filter-chip-template/elder-filter-chip-template.component.scss +7 -7
  603. package/src/lib/components/select/multi/elder-multi-select-chip-options/elder-multi-select-chip-options.component.scss +3 -4
  604. package/src/lib/components/select/multi/elder-multi-select-chips/elder-multi-select-chips.component.scss +7 -7
  605. package/src/lib/components/select/single/elder-select/elder-select.component.scss +1 -1
  606. package/src/lib/components/select-chip-list/chip-list-select/elder-chip-list-select.component.scss +2 -3
  607. package/src/lib/components/shell/header/elder-app-header/elder-app-header.component.scss +1 -2
  608. package/src/lib/components/shell/shell/elder-shell.component.scss +0 -1
  609. package/src/lib/components/shell/shell-navigation-toggle/elder-shell-navigation-toggle.component.scss +1 -2
  610. package/src/lib/components/time/_elder-time-input.theme.scss +2 -2
  611. package/src/lib/components/time/duration/elder-duration-input/elder-duration-input.component.scss +0 -4
  612. package/src/lib/components/time/elder-date-time-input/elder-date-time-input.component.scss +1 -3
  613. package/src/lib/components/time/elder-interval-input/elder-interval-input.component.scss +0 -1
  614. package/src/lib/components/time/elder-local-date-input/elder-local-date-input.component.scss +2 -5
  615. package/src/lib/components/time/period/elder-period-input/elder-period-input.component.scss +0 -4
  616. package/src/lib/components/toasts/standard-toast/standard-toast.component.scss +0 -1
  617. package/src/lib/components/url-fragment/url-fragment-switcher/elder-url-fragment-switcher.component.scss +0 -5
  618. package/src/lib/components/viewers/elder-svg-viewer/elder-svg-viewer.component.scss +0 -1
  619. package/theming/_elder-common.scss +10 -11
  620. package/theming/_elder-defaults.scss +2 -4
  621. package/theming/_elder-flex-layout.scss +7 -8
  622. package/theming/_elder-mdc-support.scss +22 -19
  623. package/theming/_elder-palettes.scss +28 -25
  624. package/theming/_elder-scrollbar-theme.scss +0 -2
  625. package/theming/_elder-style-fixes.scss +10 -7
  626. package/theming/_elder-theme.scss +6 -1
  627. package/theming/_elder-toast-theme.scss +0 -2
  628. package/theming/_mat-icon-button-size.scss +3 -2
  629. package/theming/_mixins.scss +11 -9
@@ -75,22 +75,26 @@ export class DataContextContinuableToken extends DataContextContinuableBase {
75
75
  const subject = new Subject();
76
76
  nextToken = nextToken ? nextToken : undefined;
77
77
  if (this._chunkCache.has(nextToken)) {
78
- this.logger.debug(this.id + ': Skipping fetching chunk for token "' + nextToken + '" since its already in observable cache.');
78
+ this.logger.debug(this.id +
79
+ ': Skipping fetching chunk for token "' +
80
+ nextToken +
81
+ '" since its already in observable cache.');
79
82
  subject.complete();
80
83
  }
81
84
  else {
82
85
  this.onLoading();
83
86
  this._chunkCache.add(nextToken);
84
- this.dataSource.findAllContinuable(new TokenChunkRequest(nextToken, this.filter.filtersSnapshot, this.sort.sortsSnapshot))
87
+ this.dataSource
88
+ .findAllContinuable(new TokenChunkRequest(nextToken, this.filter.filtersSnapshot, this.sort.sortsSnapshot))
85
89
  .pipe(first())
86
- .subscribe(chunk => {
90
+ .subscribe((chunk) => {
87
91
  this.logger.debug(this.id + ': Got next chunk data:', chunk);
88
92
  this._hasMoreData.next(chunk.hasMore);
89
93
  this.chunkSize = chunk.chunkSize;
90
94
  this.populateChunkData(chunk);
91
95
  subject.next(chunk);
92
96
  this.onIdle();
93
- }, err => {
97
+ }, (err) => {
94
98
  this.onError(err);
95
99
  this.logger.error(this.id + ': Failed to query data', err);
96
100
  this.clearData();
@@ -122,8 +126,14 @@ export class DataContextContinuableToken extends DataContextContinuableBase {
122
126
  this._expectedChunkToken = chunk.nextContinuationToken;
123
127
  }
124
128
  else {
125
- this.logger.warn(this.id + ': Discarding continuable chunk (items: ' + chunk.content.length + ', token: ' + chunk.continuationToken + ' )' +
126
- ' as it does not match the expected contiunation-token: ' + this._expectedChunkToken);
129
+ this.logger.warn(this.id +
130
+ ': Discarding continuable chunk (items: ' +
131
+ chunk.content.length +
132
+ ', token: ' +
133
+ chunk.continuationToken +
134
+ ' )' +
135
+ ' as it does not match the expected contiunation-token: ' +
136
+ this._expectedChunkToken);
127
137
  }
128
138
  }
129
139
  areTokenEqual(token1, token2) {
@@ -133,4 +143,4 @@ export class DataContextContinuableToken extends DataContextContinuableBase {
133
143
  return token1 === token2;
134
144
  }
135
145
  }
136
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb250ZXh0LWNvbnRpbnVhYmxlLXRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tbW9uL2RhdGEvZGF0YS1jb250ZXh0L2RhdGEtY29udGV4dC1jb250aW51YWJsZS10b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVMsYUFBYSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFM0QsT0FBTyxFQUFDLDBCQUEwQixFQUFDLE1BQU0saUNBQWlDLENBQUM7QUFDM0UsT0FBTyxFQUFDLGVBQWUsRUFBRSxLQUFLLEVBQWMsT0FBTyxFQUFDLE1BQU0sTUFBTSxDQUFDO0FBQ2pFLE9BQU8sRUFBQyxLQUFLLEVBQUUsSUFBSSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0MsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFJekQsTUFBTSxPQUFPLDJCQUErQixTQUFRLDBCQUE2QjtJQWdCL0UsNENBQTRDO0lBRTVDOzs7O2dGQUk0RTtJQUU1RSxZQUNFLFVBQXFDLEVBQ3JDLFNBQWlCLEVBQ2pCLE9BQTJCLEVBQzNCLFVBQWdDLEVBQ2hDLFNBQThDO1FBRTlDLEtBQUssQ0FBQyxVQUFVLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsU0FBUyxDQUFDLENBQUM7UUE1Qi9EOzs7O29GQUk0RTtRQUUzRCxXQUFNLEdBQVcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBRWhFLGlCQUFZLEdBQUcsSUFBSSxlQUFlLENBQVUsS0FBSyxDQUFDLENBQUM7UUFDbkQsZ0JBQVcsR0FBMEIsSUFBSSxHQUFHLEVBQUUsQ0FBQztJQW9CaEUsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUU1RSxJQUFXLFVBQVU7UUFDbkIs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LElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ2xCLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUUsc0NBQXNDLEVBQUUsS0FBSyxFQUFFLEdBQUcsQ0FBQyxDQUFDO1lBQ2pGLENBQUM7WUFDRCxJQUFJLENBQUMsbUJBQW1CLEdBQUcsS0FBSyxDQUFDLHFCQUFxQixDQUFDO1FBQ3pELENBQUM7YUFBTSxDQUFDO1lBQ04sSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRSx5Q0FBeUMsR0FBRyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxXQUFXLEdBQUcsS0FBSyxDQUFDLGlCQUFpQixHQUFHLElBQUk7Z0JBQ3ZJLHlEQUF5RCxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDO1FBQzFGLENBQUM7SUFDSCxDQUFDO0lBRU8sYUFBYSxDQUFDLE1BQWUsRUFBRSxNQUFlO1FBQ3BELElBQUksQ0FBQyxNQUFNLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUFDLE9BQU8sSUFBSSxDQUFDO1FBQUMsQ0FBQztRQUN4QyxPQUFPLE1BQU0sS0FBSyxNQUFNLENBQUM7SUFDM0IsQ0FBQztDQUdGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtMb2dnZXIsIExvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcbmltcG9ydCB7Q29udGludWFibGVMaXN0aW5nfSBmcm9tICcuLi9jb250aW51YWJsZS1saXN0aW5nJztcbmltcG9ydCB7RGF0YUNvbnRleHRDb250aW51YWJsZUJhc2V9IGZyb20gJy4vZGF0YS1jb250ZXh0LWNvbnRpbnVhYmxlLWJhc2UnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIEVNUFRZLCBPYnNlcnZhYmxlLCBTdWJqZWN0fSBmcm9tICdyeGpzJztcbmltcG9ydCB7Zmlyc3QsIHRha2V9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7VG9rZW5DaHVua1JlcXVlc3R9IGZyb20gJy4uL3Rva2VuLWNodW5rLXJlcXVlc3QnO1xuaW1wb3J0IHtTb3J0fSBmcm9tICcuLi9zb3J0JztcbmltcG9ydCB7SUNvbnRpbnVhYmxlRGF0YVNvdXJjZX0gZnJvbSAnLi4vZGF0YXNvdXJjZS9kYXRhLXNvdXJjZSc7XG5cbmV4cG9ydCBjbGFzcyBEYXRhQ29udGV4dENvbnRpbnVhYmxlVG9rZW48VD4gZXh0ZW5kcyBEYXRhQ29udGV4dENvbnRpbnVhYmxlQmFzZTxUPiB7XG5cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlcjogTG9nZ2VyID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9oYXNNb3JlRGF0YSA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9jaHVua0NhY2hlOiBTZXQ8c3RyaW5nfHVuZGVmaW5lZD4gPSBuZXcgU2V0KCk7XG5cbiAgcHJpdmF0ZSBfZXhwZWN0ZWRDaHVua1Rva2VuPzogc3RyaW5nO1xuXG4gIC8vIHByb3RlY3RlZCBuZXh0Q29udGludWF0aW9uVG9rZW4/OiBzdHJpbmc7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgZGF0YVNvdXJjZTogSUNvbnRpbnVhYmxlRGF0YVNvdXJjZTxUPixcbiAgICBjaHVua1NpemU6IG51bWJlcixcbiAgICBpbmRleEZuOiAoKGl0ZW06IFQpID0+IGFueSksXG4gICAgbG9jYWxBcHBseTogKChkYXRhOiBUW10pID0+IFRbXSksXG4gICAgbG9jYWxTb3J0OiAoKGRhdGE6IFRbXSwgc29ydHM6IFNvcnRbXSkgPT4gVFtdKVxuICApIHtcbiAgICBzdXBlcihkYXRhU291cmNlLCBjaHVua1NpemUsIGluZGV4Rm4sIGxvY2FsQXBwbHksIGxvY2FsU29ydCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgZ2V0IGRhdGFTb3VyY2UoKTogSUNvbnRpbnVhYmxlRGF0YVNvdXJjZTxUPiB7XG4gICAgcmV0dXJuIDxJQ29udGludWFibGVEYXRhU291cmNlPFQ+PnN1cGVyLmRhdGFTb3VyY2U7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgZ2V0IGhhc01vcmVEYXRhU25hcHNob3QoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2hhc01vcmVEYXRhLmdldFZhbHVlKCk7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGhhc01vcmVEYXRhKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLl9oYXNNb3JlRGF0YS5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBsb2FkTW9yZSgpOiBPYnNlcnZhYmxlPGFueT4ge1xuXG4gICAgaWYgKHRoaXMubG9hZGluZ1NuYXBzaG90KSB7XG4gICAgICB0aGlzLmxvZ2dlci5kZWJ1Zyh0aGlzLmlkICsgJzogU2tpcHBpbmcgbG9hZC1tb3JlIHNpbmNlIGFscmVhZHkgbG9hZGluZyBhIGNodW5rIScpO1xuICAgICAgcmV0dXJuIEVNUFRZO1xuICAgIH1cblxuICAgIGNvbnN0IHRva2VuID0gdGhpcy5fZXhwZWN0ZWRDaHVua1Rva2VuO1xuXG4gICAgaWYgKHRva2VuICYmIHRva2VuLmxlbmd0aCA+IDApIHtcbiAgICAgIHJldHVybiB0aGlzLmZldGNoTmV4dENodW5rKHRva2VuKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5sb2dnZXIuZGVidWcodGhpcy5pZCArICc6IENhbm5vdCBsb2FkIG1vcmUgZGF0YSwgc2luY2Ugbm8gbW9yZSBkYXRhIGF2YWlsYWJsZS4nKTtcbiAgICAgIHJldHVybiBFTVBUWTtcbiAgICB9XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvdGVjdCBBUEkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcm90ZWN0ZWQgY2xlYXJBbGwoc2lsZW50ID0gZmFsc2UpOiB2b2lkIHtcbiAgICBzdXBlci5jbGVhckFsbChzaWxlbnQpO1xuICAgIHRoaXMuX2NodW5rQ2FjaGUuY2xlYXIoKTtcbiAgICB0aGlzLl9oYXNNb3JlRGF0YS5uZXh0KHRydWUpO1xuICAgIHRoaXMuX2V4cGVjdGVkQ2h1bmtUb2tlbiA9IHVuZGVmaW5lZDtcbiAgfVxuXG4gIHByb3RlY3RlZCByZWxvYWRJbnRlcm5hbCgpOiBPYnNlcnZhYmxlPGFueT4ge1xuXG4gICAgLy8gU2luY2UgY29udGludWFibGUgZGF0YS1jb250ZXh0cyBhcmUgYXBwZW5kaW5nIGRhdGEsXG4gICAgLy8gd2UgbmVlZCB0byBjbGVhciBpdCBmb3IgYSByZWxvYWQuXG4gICAgdGhpcy5jbGVhckFsbCh0cnVlKTtcblxuICAgIHJldHVybiB0aGlzLmZldGNoTmV4dENodW5rKHVuZGVmaW5lZCk7XG4gIH1cblxuICBwcml2YXRlIGZldGNoTmV4dENodW5rKG5leHRUb2tlbj86IHN0cmluZyk6IE9ic2VydmFibGU8Q29udGludWFibGVMaXN0aW5nPFQ+PiB7XG5cbiAgICBjb25zdCBzdWJqZWN0ID0gbmV3IFN1YmplY3Q8Q29udGludWFibGVMaXN0aW5nPFQ+PigpO1xuXG4gICAgbmV4dFRva2VuID0gbmV4dFRva2VuID8gbmV4dFRva2VuIDogdW5kZWZpbmVkO1xuXG4gICAgaWYgKHRoaXMuX2NodW5rQ2FjaGUuaGFzKG5leHRUb2tlbikpIHtcbiAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKHRoaXMuaWQgKyAnOiBTa2lwcGluZyBmZXRjaGluZyBjaHVuayBmb3IgdG9rZW4gXCInICsgbmV4dFRva2VuICsgJ1wiIHNpbmNlIGl0cyBhbHJlYWR5IGluIG9ic2VydmFibGUgY2FjaGUuJyk7XG4gICAgICBzdWJqZWN0LmNvbXBsZXRlKCk7XG4gICAgfSBlbHNlIHtcblxuICAgICAgdGhpcy5vbkxvYWRpbmcoKTtcblxuICAgICAgdGhpcy5fY2h1bmtDYWNoZS5hZGQobmV4dFRva2VuKTtcblxuICAgICAgdGhpcy5kYXRhU291cmNlLmZpbmRBbGxDb250aW51YWJsZShuZXcgVG9rZW5DaHVua1JlcXVlc3QobmV4dFRva2VuLCB0aGlzLmZpbHRlci5maWx0ZXJzU25hcHNob3QsIHRoaXMuc29ydC5zb3J0c1NuYXBzaG90KSlcbiAgICAgICAgLnBpcGUoZmlyc3QoKSlcbiAgICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgICBjaHVuayA9PiB7XG4gICAgICAgICAgICB0aGlzLmxvZ2dlci5kZWJ1Zyh0aGlzLmlkICsgJzogR290IG5leHQgY2h1bmsgZGF0YTonLCBjaHVuayk7XG4gICAgICAgICAgICB0aGlzLl9oYXNNb3JlRGF0YS5uZXh0KGNodW5rLmhhc01vcmUpO1xuICAgICAgICAgICAgdGhpcy5jaHVua1NpemUgPSBjaHVuay5jaHVua1NpemU7XG4gICAgICAgICAgICB0aGlzLnBvcHVsYXRlQ2h1bmtEYXRhKGNodW5rKTtcbiAgICAgICAgICAgIHN1YmplY3QubmV4dChjaHVuayk7XG4gICAgICAgICAgICB0aGlzLm9uSWRsZSgpO1xuICAgICAgICAgIH0sIGVyciA9PiB7XG4gICAgICAgICAgICB0aGlzLm9uRXJyb3IoZXJyKTtcbiAgICAgICAgICAgIHRoaXMubG9nZ2VyLmVycm9yKHRoaXMuaWQgKyc6IEZhaWxlZCB0byBxdWVyeSBkYXRhJywgZXJyKTtcbiAgICAgICAgICAgIHRoaXMuY2xlYXJEYXRhKCk7XG4gICAgICAgICAgICB0aGlzLnNldFRvdGFsKDApO1xuICAgICAgICAgICAgc3ViamVjdC5lcnJvcihlcnIpO1xuICAgICAgICAgIH1cbiAgICAgICAgKTtcbiAgICB9XG4gICAgcmV0dXJuIHN1YmplY3QucGlwZSh0YWtlKDEpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2FkIHRoZSBkYXRhIGZyb20gdGhlIGdpdmVuIHBhZ2UgaW50byB0aGUgY3VycmVudCBkYXRhIGNvbnRleHRcbiAgICovXG4gIHByaXZhdGUgcG9wdWxhdGVDaHVua0RhdGEoY2h1bms6IENvbnRpbnVhYmxlTGlzdGluZzxUPik6IHZvaWQge1xuICAgIGlmICh0aGlzLmFyZVRva2VuRXF1YWwoY2h1bmsuY29udGludWF0aW9uVG9rZW4sIHRoaXMuX2V4cGVjdGVkQ2h1bmtUb2tlbikpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHRoaXMuc2V0VG90YWwoY2h1bmsudG90YWwpO1xuXG4gICAgICAgIGlmIChjaHVuay5jb250aW51YXRpb25Ub2tlbikge1xuICAgICAgICAgIC8vIFdlIGhhZCBwcmV2aW91cyBjaHVua3Mgc28gYXBwZW5kIHRvIGN1cnJlbnQgZGF0YS5cbiAgICAgICAgICB0aGlzLmFwcGVuZERhdGEoY2h1bmsuY29udGVudCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5zZXREYXRhKGNodW5rLmNvbnRlbnQpO1xuICAgICAgICB9XG5cbiAgICAgIH0gY2F0Y2ggKGVycikge1xuICAgICAgICB0aGlzLm9uRXJyb3IoZXJyKTtcbiAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IodGhpcy5pZCArJzogRmFpbGVkIHRvIHBvcHVsYXRlIGRhdGEgd2l0aCBjaHVuaycsIGNodW5rLCBlcnIpO1xuICAgICAgfVxuICAgICAgdGhpcy5fZXhwZWN0ZWRDaHVua1Rva2VuID0gY2h1bmsubmV4dENvbnRpbnVhdGlvblRva2VuO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmxvZ2dlci53YXJuKHRoaXMuaWQgKyc6IERpc2NhcmRpbmcgY29udGludWFibGUgY2h1bmsgKGl0ZW1zOiAnICsgY2h1bmsuY29udGVudC5sZW5ndGggKyAnLCB0b2tlbjogJyArIGNodW5rLmNvbnRpbnVhdGlvblRva2VuICsgJyApJyArXG4gICAgICAgICcgYXMgaXQgZG9lcyBub3QgbWF0Y2ggdGhlIGV4cGVjdGVkIGNvbnRpdW5hdGlvbi10b2tlbjogJyArIHRoaXMuX2V4cGVjdGVkQ2h1bmtUb2tlbik7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBhcmVUb2tlbkVxdWFsKHRva2VuMT86IHN0cmluZywgdG9rZW4yPzogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgaWYgKCF0b2tlbjEgJiYgIXRva2VuMikgeyByZXR1cm4gdHJ1ZTsgfVxuICAgIHJldHVybiB0b2tlbjEgPT09IHRva2VuMjtcbiAgfVxuXG5cbn1cbiJdfQ==
146
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb250ZXh0LWNvbnRpbnVhYmxlLXRva2VuLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tbW9uL2RhdGEvZGF0YS1jb250ZXh0L2RhdGEtY29udGV4dC1jb250aW51YWJsZS10b2tlbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQVUsYUFBYSxFQUFFLE1BQU0sc0JBQXNCLENBQUE7QUFFNUQsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUNBQWlDLENBQUE7QUFDNUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxLQUFLLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ2xFLE9BQU8sRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDNUMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sd0JBQXdCLENBQUE7QUFJMUQsTUFBTSxPQUFPLDJCQUErQixTQUFRLDBCQUE2QjtJQWMvRSw0Q0FBNEM7SUFFNUM7Ozs7Z0ZBSTRFO0lBRTVFLFlBQ0UsVUFBcUMsRUFDckMsU0FBaUIsRUFDakIsT0FBeUIsRUFDekIsVUFBOEIsRUFDOUIsU0FBNEM7UUFFNUMsS0FBSyxDQUFDLFVBQVUsRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLENBQUMsQ0FBQTtRQTVCOUQ7Ozs7b0ZBSTRFO1FBRTNELFdBQU0sR0FBVyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUE7UUFFL0QsaUJBQVksR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQTtRQUNsRCxnQkFBVyxHQUE0QixJQUFJLEdBQUcsRUFBRSxDQUFBO0lBb0JqRSxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRTVFLElBQVcsVUFBVTtRQUNuQixP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QUFFLENBQUM7Z0JBQ2IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQTtnQkFDakIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLEVBQUUsR0FBRyxzQ0FBc0MsRUFBRSxLQUFLLEVBQUUsR0FBRyxDQUFDLENBQUE7WUFDakYsQ0FBQztZQUNELElBQUksQ0FBQyxtQkFBbUIsR0FBRyxLQUFLLENBQUMscUJBQXFCLENBQUE7UUFDeEQsQ0FBQzthQUFNLENBQUM7WUFDTixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FDZCxJQUFJLENBQUMsRUFBRTtnQkFDTCx5Q0FBeUM7Z0JBQ3pDLEtBQUssQ0FBQyxPQUFPLENBQUMsTUFBTTtnQkFDcEIsV0FBVztnQkFDWCxLQUFLLENBQUMsaUJBQWlCO2dCQUN2QixJQUFJO2dCQUNKLHlEQUF5RDtnQkFDekQsSUFBSSxDQUFDLG1CQUFtQixDQUMzQixDQUFBO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFTyxhQUFhLENBQUMsTUFBZSxFQUFFLE1BQWU7UUFDcEQsSUFBSSxDQUFDLE1BQU0sSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3ZCLE9BQU8sSUFBSSxDQUFBO1FBQ2IsQ0FBQztRQUNELE9BQU8sTUFBTSxLQUFLLE1BQU0sQ0FBQTtJQUMxQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBMb2dnZXIsIExvZ2dlckZhY3RvcnkgfSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcidcbmltcG9ydCB7IENvbnRpbnVhYmxlTGlzdGluZyB9IGZyb20gJy4uL2NvbnRpbnVhYmxlLWxpc3RpbmcnXG5pbXBvcnQgeyBEYXRhQ29udGV4dENvbnRpbnVhYmxlQmFzZSB9IGZyb20gJy4vZGF0YS1jb250ZXh0LWNvbnRpbnVhYmxlLWJhc2UnXG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIEVNUFRZLCBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcydcbmltcG9ydCB7IGZpcnN0LCB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQgeyBUb2tlbkNodW5rUmVxdWVzdCB9IGZyb20gJy4uL3Rva2VuLWNodW5rLXJlcXVlc3QnXG5pbXBvcnQgeyBTb3J0IH0gZnJvbSAnLi4vc29ydCdcbmltcG9ydCB7IElDb250aW51YWJsZURhdGFTb3VyY2UgfSBmcm9tICcuLi9kYXRhc291cmNlL2RhdGEtc291cmNlJ1xuXG5leHBvcnQgY2xhc3MgRGF0YUNvbnRleHRDb250aW51YWJsZVRva2VuPFQ+IGV4dGVuZHMgRGF0YUNvbnRleHRDb250aW51YWJsZUJhc2U8VD4ge1xuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlcjogTG9nZ2VyID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgX2hhc01vcmVEYXRhID0gbmV3IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPihmYWxzZSlcbiAgcHJpdmF0ZSByZWFkb25seSBfY2h1bmtDYWNoZTogU2V0PHN0cmluZyB8IHVuZGVmaW5lZD4gPSBuZXcgU2V0KClcblxuICBwcml2YXRlIF9leHBlY3RlZENodW5rVG9rZW4/OiBzdHJpbmdcblxuICAvLyBwcm90ZWN0ZWQgbmV4dENvbnRpbnVhdGlvblRva2VuPzogc3RyaW5nO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGRhdGFTb3VyY2U6IElDb250aW51YWJsZURhdGFTb3VyY2U8VD4sXG4gICAgY2h1bmtTaXplOiBudW1iZXIsXG4gICAgaW5kZXhGbjogKGl0ZW06IFQpID0+IGFueSxcbiAgICBsb2NhbEFwcGx5OiAoZGF0YTogVFtdKSA9PiBUW10sXG4gICAgbG9jYWxTb3J0OiAoZGF0YTogVFtdLCBzb3J0czogU29ydFtdKSA9PiBUW11cbiAgKSB7XG4gICAgc3VwZXIoZGF0YVNvdXJjZSwgY2h1bmtTaXplLCBpbmRleEZuLCBsb2NhbEFwcGx5LCBsb2NhbFNvcnQpXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgZ2V0IGRhdGFTb3VyY2UoKTogSUNvbnRpbnVhYmxlRGF0YVNvdXJjZTxUPiB7XG4gICAgcmV0dXJuIDxJQ29udGludWFibGVEYXRhU291cmNlPFQ+PnN1cGVyLmRhdGFTb3VyY2VcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBnZXQgaGFzTW9yZURhdGFTbmFwc2hvdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5faGFzTW9yZURhdGEuZ2V0VmFsdWUoKVxuICB9XG5cbiAgcHVibGljIGdldCBoYXNNb3JlRGF0YSgpOiBPYnNlcnZhYmxlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5faGFzTW9yZURhdGEuYXNPYnNlcnZhYmxlKClcbiAgfVxuXG4gIHB1YmxpYyBsb2FkTW9yZSgpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIGlmICh0aGlzLmxvYWRpbmdTbmFwc2hvdCkge1xuICAgICAgdGhpcy5sb2dnZXIuZGVidWcodGhpcy5pZCArICc6IFNraXBwaW5nIGxvYWQtbW9yZSBzaW5jZSBhbHJlYWR5IGxvYWRpbmcgYSBjaHVuayEnKVxuICAgICAgcmV0dXJuIEVNUFRZXG4gICAgfVxuXG4gICAgY29uc3QgdG9rZW4gPSB0aGlzLl9leHBlY3RlZENodW5rVG9rZW5cblxuICAgIGlmICh0b2tlbiAmJiB0b2tlbi5sZW5ndGggPiAwKSB7XG4gICAgICByZXR1cm4gdGhpcy5mZXRjaE5leHRDaHVuayh0b2tlbilcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5sb2dnZXIuZGVidWcodGhpcy5pZCArICc6IENhbm5vdCBsb2FkIG1vcmUgZGF0YSwgc2luY2Ugbm8gbW9yZSBkYXRhIGF2YWlsYWJsZS4nKVxuICAgICAgcmV0dXJuIEVNUFRZXG4gICAgfVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3RlY3QgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJvdGVjdGVkIGNsZWFyQWxsKHNpbGVudCA9IGZhbHNlKTogdm9pZCB7XG4gICAgc3VwZXIuY2xlYXJBbGwoc2lsZW50KVxuICAgIHRoaXMuX2NodW5rQ2FjaGUuY2xlYXIoKVxuICAgIHRoaXMuX2hhc01vcmVEYXRhLm5leHQodHJ1ZSlcbiAgICB0aGlzLl9leHBlY3RlZENodW5rVG9rZW4gPSB1bmRlZmluZWRcbiAgfVxuXG4gIHByb3RlY3RlZCByZWxvYWRJbnRlcm5hbCgpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIC8vIFNpbmNlIGNvbnRpbnVhYmxlIGRhdGEtY29udGV4dHMgYXJlIGFwcGVuZGluZyBkYXRhLFxuICAgIC8vIHdlIG5lZWQgdG8gY2xlYXIgaXQgZm9yIGEgcmVsb2FkLlxuICAgIHRoaXMuY2xlYXJBbGwodHJ1ZSlcblxuICAgIHJldHVybiB0aGlzLmZldGNoTmV4dENodW5rKHVuZGVmaW5lZClcbiAgfVxuXG4gIHByaXZhdGUgZmV0Y2hOZXh0Q2h1bmsobmV4dFRva2VuPzogc3RyaW5nKTogT2JzZXJ2YWJsZTxDb250aW51YWJsZUxpc3Rpbmc8VD4+IHtcbiAgICBjb25zdCBzdWJqZWN0ID0gbmV3IFN1YmplY3Q8Q29udGludWFibGVMaXN0aW5nPFQ+PigpXG5cbiAgICBuZXh0VG9rZW4gPSBuZXh0VG9rZW4gPyBuZXh0VG9rZW4gOiB1bmRlZmluZWRcblxuICAgIGlmICh0aGlzLl9jaHVua0NhY2hlLmhhcyhuZXh0VG9rZW4pKSB7XG4gICAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhcbiAgICAgICAgdGhpcy5pZCArXG4gICAgICAgICAgJzogU2tpcHBpbmcgZmV0Y2hpbmcgY2h1bmsgZm9yIHRva2VuIFwiJyArXG4gICAgICAgICAgbmV4dFRva2VuICtcbiAgICAgICAgICAnXCIgc2luY2UgaXRzIGFscmVhZHkgaW4gb2JzZXJ2YWJsZSBjYWNoZS4nXG4gICAgICApXG4gICAgICBzdWJqZWN0LmNvbXBsZXRlKClcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5vbkxvYWRpbmcoKVxuXG4gICAgICB0aGlzLl9jaHVua0NhY2hlLmFkZChuZXh0VG9rZW4pXG5cbiAgICAgIHRoaXMuZGF0YVNvdXJjZVxuICAgICAgICAuZmluZEFsbENvbnRpbnVhYmxlKFxuICAgICAgICAgIG5ldyBUb2tlbkNodW5rUmVxdWVzdChuZXh0VG9rZW4sIHRoaXMuZmlsdGVyLmZpbHRlcnNTbmFwc2hvdCwgdGhpcy5zb3J0LnNvcnRzU25hcHNob3QpXG4gICAgICAgIClcbiAgICAgICAgLnBpcGUoZmlyc3QoKSlcbiAgICAgICAgLnN1YnNjcmliZShcbiAgICAgICAgICAoY2h1bmspID0+IHtcbiAgICAgICAgICAgIHRoaXMubG9nZ2VyLmRlYnVnKHRoaXMuaWQgKyAnOiBHb3QgbmV4dCBjaHVuayBkYXRhOicsIGNodW5rKVxuICAgICAgICAgICAgdGhpcy5faGFzTW9yZURhdGEubmV4dChjaHVuay5oYXNNb3JlKVxuICAgICAgICAgICAgdGhpcy5jaHVua1NpemUgPSBjaHVuay5jaHVua1NpemVcbiAgICAgICAgICAgIHRoaXMucG9wdWxhdGVDaHVua0RhdGEoY2h1bmspXG4gICAgICAgICAgICBzdWJqZWN0Lm5leHQoY2h1bmspXG4gICAgICAgICAgICB0aGlzLm9uSWRsZSgpXG4gICAgICAgICAgfSxcbiAgICAgICAgICAoZXJyKSA9PiB7XG4gICAgICAgICAgICB0aGlzLm9uRXJyb3IoZXJyKVxuICAgICAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IodGhpcy5pZCArICc6IEZhaWxlZCB0byBxdWVyeSBkYXRhJywgZXJyKVxuICAgICAgICAgICAgdGhpcy5jbGVhckRhdGEoKVxuICAgICAgICAgICAgdGhpcy5zZXRUb3RhbCgwKVxuICAgICAgICAgICAgc3ViamVjdC5lcnJvcihlcnIpXG4gICAgICAgICAgfVxuICAgICAgICApXG4gICAgfVxuICAgIHJldHVybiBzdWJqZWN0LnBpcGUodGFrZSgxKSlcbiAgfVxuXG4gIC8qKlxuICAgKiBMb2FkIHRoZSBkYXRhIGZyb20gdGhlIGdpdmVuIHBhZ2UgaW50byB0aGUgY3VycmVudCBkYXRhIGNvbnRleHRcbiAgICovXG4gIHByaXZhdGUgcG9wdWxhdGVDaHVua0RhdGEoY2h1bms6IENvbnRpbnVhYmxlTGlzdGluZzxUPik6IHZvaWQge1xuICAgIGlmICh0aGlzLmFyZVRva2VuRXF1YWwoY2h1bmsuY29udGludWF0aW9uVG9rZW4sIHRoaXMuX2V4cGVjdGVkQ2h1bmtUb2tlbikpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHRoaXMuc2V0VG90YWwoY2h1bmsudG90YWwpXG5cbiAgICAgICAgaWYgKGNodW5rLmNvbnRpbnVhdGlvblRva2VuKSB7XG4gICAgICAgICAgLy8gV2UgaGFkIHByZXZpb3VzIGNodW5rcyBzbyBhcHBlbmQgdG8gY3VycmVudCBkYXRhLlxuICAgICAgICAgIHRoaXMuYXBwZW5kRGF0YShjaHVuay5jb250ZW50KVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMuc2V0RGF0YShjaHVuay5jb250ZW50KVxuICAgICAgICB9XG4gICAgICB9IGNhdGNoIChlcnIpIHtcbiAgICAgICAgdGhpcy5vbkVycm9yKGVycilcbiAgICAgICAgdGhpcy5sb2dnZXIuZXJyb3IodGhpcy5pZCArICc6IEZhaWxlZCB0byBwb3B1bGF0ZSBkYXRhIHdpdGggY2h1bmsnLCBjaHVuaywgZXJyKVxuICAgICAgfVxuICAgICAgdGhpcy5fZXhwZWN0ZWRDaHVua1Rva2VuID0gY2h1bmsubmV4dENvbnRpbnVhdGlvblRva2VuXG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMubG9nZ2VyLndhcm4oXG4gICAgICAgIHRoaXMuaWQgK1xuICAgICAgICAgICc6IERpc2NhcmRpbmcgY29udGludWFibGUgY2h1bmsgKGl0ZW1zOiAnICtcbiAgICAgICAgICBjaHVuay5jb250ZW50Lmxlbmd0aCArXG4gICAgICAgICAgJywgdG9rZW46ICcgK1xuICAgICAgICAgIGNodW5rLmNvbnRpbnVhdGlvblRva2VuICtcbiAgICAgICAgICAnICknICtcbiAgICAgICAgICAnIGFzIGl0IGRvZXMgbm90IG1hdGNoIHRoZSBleHBlY3RlZCBjb250aXVuYXRpb24tdG9rZW46ICcgK1xuICAgICAgICAgIHRoaXMuX2V4cGVjdGVkQ2h1bmtUb2tlblxuICAgICAgKVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYXJlVG9rZW5FcXVhbCh0b2tlbjE/OiBzdHJpbmcsIHRva2VuMj86IHN0cmluZyk6IGJvb2xlYW4ge1xuICAgIGlmICghdG9rZW4xICYmICF0b2tlbjIpIHtcbiAgICAgIHJldHVybiB0cnVlXG4gICAgfVxuICAgIHJldHVybiB0b2tlbjEgPT09IHRva2VuMlxuICB9XG59XG4iXX0=
@@ -14,7 +14,7 @@ export class DataContextLifeCycleBinding {
14
14
  throw new Error('dataContext must not be null!');
15
15
  }
16
16
  this._dataContext.data.subscribe({
17
- complete: () => this.unsubscribe()
17
+ complete: () => this.unsubscribe(),
18
18
  });
19
19
  }
20
20
  /***************************************************************************
@@ -29,4 +29,4 @@ export class DataContextLifeCycleBinding {
29
29
  }
30
30
  }
31
31
  }
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb250ZXh0LWxpZmUtY3ljbGUtYmluZGluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbW1vbi9kYXRhL2RhdGEtY29udGV4dC9kYXRhLWNvbnRleHQtbGlmZS1jeWNsZS1iaW5kaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBOzs7R0FHRztBQUNILE1BQU0sT0FBZ0IsMkJBQTJCO0lBVS9DOzs7O2dGQUk0RTtJQUU1RSxZQUNxQixZQUErQjtRQUEvQixpQkFBWSxHQUFaLFlBQVksQ0FBbUI7UUFFbEQsSUFBSSxZQUFZLElBQUksSUFBSSxFQUFFLENBQUM7WUFDekIsTUFBTSxJQUFJLEtBQUssQ0FBQywrQkFBK0IsQ0FBQyxDQUFDO1FBQ25ELENBQUM7UUFFRCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQzlCO1lBQ0UsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUU7U0FDbkMsQ0FDRixDQUFDO0lBQ0osQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVyRSxXQUFXO1FBQ2hCLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDakMsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUM7UUFDNUIsQ0FBQztJQUNILENBQUM7Q0FVRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7U3Vic2NyaXB0aW9uLCBVbnN1YnNjcmliYWJsZX0gZnJvbSAncnhqcyc7XG5pbXBvcnQge0lEYXRhQ29udGV4dH0gZnJvbSAnLi9kYXRhLWNvbnRleHQnO1xuXG4vKipcbiAqIEFsbG93cyBtYWtpbmcgYW55IGtpbmQgb2Ygc3Vic2NyaXB0aW9uIHdoaWNoIHdpbGwgYmUgYXV0b21hdGljYWxseSB1bnN1YnNjcmliZWRcbiAqIHVwb24gZGF0YSBjb250ZXh0IGNsb3NpbmcvY2xlYW51cC5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIERhdGFDb250ZXh0TGlmZUN5Y2xlQmluZGluZyBpbXBsZW1lbnRzIFVuc3Vic2NyaWJhYmxlIHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcm90ZWN0ZWQgX3N1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByb3RlY3RlZCBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgX2RhdGFDb250ZXh0OiBJRGF0YUNvbnRleHQ8YW55PlxuICApIHtcbiAgICBpZiAoX2RhdGFDb250ZXh0ID09IG51bGwpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignZGF0YUNvbnRleHQgbXVzdCBub3QgYmUgbnVsbCEnKTtcbiAgICB9XG5cbiAgICB0aGlzLl9kYXRhQ29udGV4dC5kYXRhLnN1YnNjcmliZShcbiAgICAgIHtcbiAgICAgICAgY29tcGxldGU6ICgpID0+IHRoaXMudW5zdWJzY3JpYmUoKVxuICAgICAgfVxuICAgICk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgdW5zdWJzY3JpYmUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3N1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XG4gICAgICB0aGlzLl9zdWJzY3JpcHRpb24gPSBudWxsO1xuICAgIH1cbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm90ZWN0ZWQgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByb3RlY3RlZCBhYnN0cmFjdCBzdWJzY3JpYmUoKTogdm9pZDtcblxufVxuIl19
32
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb250ZXh0LWxpZmUtY3ljbGUtYmluZGluZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbW1vbi9kYXRhL2RhdGEtY29udGV4dC9kYXRhLWNvbnRleHQtbGlmZS1jeWNsZS1iaW5kaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBOzs7R0FHRztBQUNILE1BQU0sT0FBZ0IsMkJBQTJCO0lBUy9DOzs7O2dGQUk0RTtJQUU1RSxZQUF5QyxZQUErQjtRQUEvQixpQkFBWSxHQUFaLFlBQVksQ0FBbUI7UUFDdEUsSUFBSSxZQUFZLElBQUksSUFBSSxFQUFFLENBQUM7WUFDekIsTUFBTSxJQUFJLEtBQUssQ0FBQywrQkFBK0IsQ0FBQyxDQUFBO1FBQ2xELENBQUM7UUFFRCxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUM7WUFDL0IsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLEVBQUU7U0FDbkMsQ0FBQyxDQUFBO0lBQ0osQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVyRSxXQUFXO1FBQ2hCLElBQUksSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO1lBQ3ZCLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLENBQUE7WUFDaEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUE7UUFDM0IsQ0FBQztJQUNILENBQUM7Q0FTRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFN1YnNjcmlwdGlvbiwgVW5zdWJzY3JpYmFibGUgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgSURhdGFDb250ZXh0IH0gZnJvbSAnLi9kYXRhLWNvbnRleHQnXG5cbi8qKlxuICogQWxsb3dzIG1ha2luZyBhbnkga2luZCBvZiBzdWJzY3JpcHRpb24gd2hpY2ggd2lsbCBiZSBhdXRvbWF0aWNhbGx5IHVuc3Vic2NyaWJlZFxuICogdXBvbiBkYXRhIGNvbnRleHQgY2xvc2luZy9jbGVhbnVwLlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgRGF0YUNvbnRleHRMaWZlQ3ljbGVCaW5kaW5nIGltcGxlbWVudHMgVW5zdWJzY3JpYmFibGUge1xuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcm90ZWN0ZWQgX3N1YnNjcmlwdGlvbjogU3Vic2NyaXB0aW9uXG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJvdGVjdGVkIGNvbnN0cnVjdG9yKHByb3RlY3RlZCByZWFkb25seSBfZGF0YUNvbnRleHQ6IElEYXRhQ29udGV4dDxhbnk+KSB7XG4gICAgaWYgKF9kYXRhQ29udGV4dCA9PSBudWxsKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2RhdGFDb250ZXh0IG11c3Qgbm90IGJlIG51bGwhJylcbiAgICB9XG5cbiAgICB0aGlzLl9kYXRhQ29udGV4dC5kYXRhLnN1YnNjcmliZSh7XG4gICAgICBjb21wbGV0ZTogKCkgPT4gdGhpcy51bnN1YnNjcmliZSgpLFxuICAgIH0pXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHVibGljIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgdW5zdWJzY3JpYmUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX3N1YnNjcmlwdGlvbikge1xuICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKClcbiAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbiA9IG51bGxcbiAgICB9XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvdGVjdGVkICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcm90ZWN0ZWQgYWJzdHJhY3Qgc3Vic2NyaWJlKCk6IHZvaWRcbn1cbiJdfQ==
@@ -34,15 +34,16 @@ export class DataContextSimple extends DataContextBase {
34
34
  const subject = new Subject();
35
35
  if (this.dataSource) {
36
36
  this.onLoading();
37
- this.dataSource.findAllFiltered(this.filter.filtersSnapshot, this.sort.sortsSnapshot)
37
+ this.dataSource
38
+ .findAllFiltered(this.filter.filtersSnapshot, this.sort.sortsSnapshot)
38
39
  .pipe(first())
39
- .subscribe(list => {
40
+ .subscribe((list) => {
40
41
  this.onIdle();
41
42
  this.setTotal(list.length);
42
43
  this.setData(list);
43
44
  this.log.debug(this.id + ': Got list data: ' + list.length);
44
45
  subject.next();
45
- }, err => {
46
+ }, (err) => {
46
47
  this.onError(err);
47
48
  this.clearAll();
48
49
  this.log.error(this.id + ': Failed to query data', err);
@@ -57,4 +58,4 @@ export class DataContextSimple extends DataContextBase {
57
58
  return subject.pipe(first());
58
59
  }
59
60
  }
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb250ZXh0LXNpbXBsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbW1vbi9kYXRhL2RhdGEtY29udGV4dC9kYXRhLWNvbnRleHQtc2ltcGxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBUyxhQUFhLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUMzRCxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0scUJBQXFCLENBQUM7QUFFcEQsT0FBTyxFQUFhLE9BQU8sRUFBQyxNQUFNLE1BQU0sQ0FBQztBQUN6QyxPQUFPLEVBQUMsS0FBSyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFHckMsTUFBTSxPQUFPLGlCQUFxQixTQUFRLGVBQWtCO0lBVTFEOzs7O2dGQUk0RTtJQUU1RSxZQUNFLFVBQThCLEVBQzlCLE9BQTJCLEVBQzNCLFVBQWdDLEVBQ2hDLFNBQThDO1FBRTlDLEtBQUssQ0FBQyxVQUFVLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLENBQUMsQ0FBQztRQXBCcEQ7Ozs7b0ZBSTRFO1FBRTNELFFBQUcsR0FBVyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7SUFlOUUsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUU1RSxJQUFXLFVBQVU7UUFDbkIsT0FBMkIsS0FBSyxDQUFDLFVBQVUsQ0FBQztJQUM5QyxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRWxFLGNBQWM7UUFFdEIsTUFBTSxPQUFPLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztRQUVwQyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUVwQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFFakIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUM7aUJBQ2xGLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQztpQkFDYixTQUFTLENBQ1IsSUFBSSxDQUFDLEVBQUU7Z0JBQ0wsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO2dCQUNkLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2dCQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNuQixJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLG1CQUFtQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztnQkFFNUQsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2pCLENBQUMsRUFBRSxHQUFHLENBQUMsRUFBRTtnQkFDUCxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO2dCQUNsQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7Z0JBQ2hCLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUUsd0JBQXdCLEVBQUUsR0FBRyxDQUFDLENBQUM7Z0JBQ3ZELE9BQU8sQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDckIsQ0FBQyxDQUFDLENBQUM7UUFDVCxDQUFDO2FBQU0sQ0FBQztZQUNOLE1BQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxFQUFFLEdBQUcseURBQXlELENBQUM7WUFDckYsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7WUFDeEIsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDO1FBQ3JDLENBQUM7UUFFRCxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztJQUMvQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0xvZ2dlciwgTG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtEYXRhQ29udGV4dEJhc2V9IGZyb20gJy4vZGF0YS1jb250ZXh0LWJhc2UnO1xuaW1wb3J0IHtTb3J0fSBmcm9tICcuLi9zb3J0JztcbmltcG9ydCB7T2JzZXJ2YWJsZSwgU3ViamVjdH0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2ZpcnN0fSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0lMaXN0RGF0YVNvdXJjZX0gZnJvbSAnLi4vZGF0YXNvdXJjZS9kYXRhLXNvdXJjZSc7XG5cbmV4cG9ydCBjbGFzcyBEYXRhQ29udGV4dFNpbXBsZTxUPiBleHRlbmRzIERhdGFDb250ZXh0QmFzZTxUPiB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2c6IExvZ2dlciA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSk7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgZGF0YVNvdXJjZTogSUxpc3REYXRhU291cmNlPFQ+LFxuICAgIGluZGV4Rm46ICgoaXRlbTogVCkgPT4gYW55KSxcbiAgICBsb2NhbEFwcGx5OiAoKGRhdGE6IFRbXSkgPT4gVFtdKSxcbiAgICBsb2NhbFNvcnQ6ICgoZGF0YTogVFtdLCBzb3J0czogU29ydFtdKSA9PiBUW10pXG4gICkge1xuICAgIHN1cGVyKGRhdGFTb3VyY2UsIGluZGV4Rm4sIGxvY2FsQXBwbHksIGxvY2FsU29ydCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgZ2V0IGRhdGFTb3VyY2UoKTogSUxpc3REYXRhU291cmNlPFQ+IHtcbiAgICByZXR1cm4gPElMaXN0RGF0YVNvdXJjZTxUPj5zdXBlci5kYXRhU291cmNlO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJvdGVjdGVkIHJlbG9hZEludGVybmFsKCk6IE9ic2VydmFibGU8YW55PiB7XG5cbiAgICBjb25zdCBzdWJqZWN0ID0gbmV3IFN1YmplY3Q8dm9pZD4oKTtcblxuICAgIGlmICh0aGlzLmRhdGFTb3VyY2UpIHtcblxuICAgICAgdGhpcy5vbkxvYWRpbmcoKTtcblxuICAgICAgdGhpcy5kYXRhU291cmNlLmZpbmRBbGxGaWx0ZXJlZCh0aGlzLmZpbHRlci5maWx0ZXJzU25hcHNob3QsIHRoaXMuc29ydC5zb3J0c1NuYXBzaG90KVxuICAgICAgICAucGlwZShmaXJzdCgpKVxuICAgICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAgIGxpc3QgPT4ge1xuICAgICAgICAgICAgdGhpcy5vbklkbGUoKTtcbiAgICAgICAgICAgIHRoaXMuc2V0VG90YWwobGlzdC5sZW5ndGgpO1xuICAgICAgICAgICAgdGhpcy5zZXREYXRhKGxpc3QpO1xuICAgICAgICAgICAgdGhpcy5sb2cuZGVidWcodGhpcy5pZCArICc6IEdvdCBsaXN0IGRhdGE6ICcgKyBsaXN0Lmxlbmd0aCk7XG5cbiAgICAgICAgICAgIHN1YmplY3QubmV4dCgpO1xuICAgICAgICAgIH0sIGVyciA9PiB7XG4gICAgICAgICAgICB0aGlzLm9uRXJyb3IoZXJyKTtcbiAgICAgICAgICAgIHRoaXMuY2xlYXJBbGwoKTtcbiAgICAgICAgICAgIHRoaXMubG9nLmVycm9yKHRoaXMuaWQgKyc6IEZhaWxlZCB0byBxdWVyeSBkYXRhJywgZXJyKTtcbiAgICAgICAgICAgIHN1YmplY3QuZXJyb3IoZXJyKTtcbiAgICAgICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgZXJyb3JNc2cgPSB0aGlzLmlkICsgJzogU2tpcHBpbmcgZGF0YSBjb250ZXh0IGxvYWQgLSBubyBsaXN0IGZldGNoZXIgcHJlc2VudCEnO1xuICAgICAgdGhpcy5sb2cud2FybihlcnJvck1zZyk7XG4gICAgICBzdWJqZWN0LmVycm9yKG5ldyBFcnJvcihlcnJvck1zZykpO1xuICAgIH1cblxuICAgIHJldHVybiBzdWJqZWN0LnBpcGUoZmlyc3QoKSk7XG4gIH1cbn1cbiJdfQ==
61
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb250ZXh0LXNpbXBsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbW1vbi9kYXRhL2RhdGEtY29udGV4dC9kYXRhLWNvbnRleHQtc2ltcGxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBVSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQTtBQUM1RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUE7QUFFckQsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQTtBQUMxQyxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFHdEMsTUFBTSxPQUFPLGlCQUFxQixTQUFRLGVBQWtCO0lBUzFEOzs7O2dGQUk0RTtJQUU1RSxZQUNFLFVBQThCLEVBQzlCLE9BQXlCLEVBQ3pCLFVBQThCLEVBQzlCLFNBQTRDO1FBRTVDLEtBQUssQ0FBQyxVQUFVLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxTQUFTLENBQUMsQ0FBQTtRQXBCbkQ7Ozs7b0ZBSTRFO1FBRTNELFFBQUcsR0FBVyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUE7SUFlN0UsQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUU1RSxJQUFXLFVBQVU7UUFDbkIsT0FBMkIsS0FBSyxDQUFDLFVBQVUsQ0FBQTtJQUM3QyxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRWxFLGNBQWM7UUFDdEIsTUFBTSxPQUFPLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQTtRQUVuQyxJQUFJLElBQUksQ0FBQyxVQUFVLEVBQUUsQ0FBQztZQUNwQixJQUFJLENBQUMsU0FBUyxFQUFFLENBQUE7WUFFaEIsSUFBSSxDQUFDLFVBQVU7aUJBQ1osZUFBZSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDO2lCQUNyRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7aUJBQ2IsU0FBUyxDQUNSLENBQUMsSUFBSSxFQUFFLEVBQUU7Z0JBQ1AsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFBO2dCQUNiLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFBO2dCQUMxQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFBO2dCQUNsQixJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLG1CQUFtQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtnQkFFM0QsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFBO1lBQ2hCLENBQUMsRUFDRCxDQUFDLEdBQUcsRUFBRSxFQUFFO2dCQUNOLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUE7Z0JBQ2pCLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQTtnQkFDZixJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsRUFBRSxHQUFHLHdCQUF3QixFQUFFLEdBQUcsQ0FBQyxDQUFBO2dCQUN2RCxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFBO1lBQ3BCLENBQUMsQ0FDRixDQUFBO1FBQ0wsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsRUFBRSxHQUFHLHlEQUF5RCxDQUFBO1lBQ3BGLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFBO1lBQ3ZCLE9BQU8sQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQTtRQUNwQyxDQUFDO1FBRUQsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUE7SUFDOUIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTG9nZ2VyLCBMb2dnZXJGYWN0b3J5IH0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInXG5pbXBvcnQgeyBEYXRhQ29udGV4dEJhc2UgfSBmcm9tICcuL2RhdGEtY29udGV4dC1iYXNlJ1xuaW1wb3J0IHsgU29ydCB9IGZyb20gJy4uL3NvcnQnXG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBTdWJqZWN0IH0gZnJvbSAncnhqcydcbmltcG9ydCB7IGZpcnN0IH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5pbXBvcnQgeyBJTGlzdERhdGFTb3VyY2UgfSBmcm9tICcuLi9kYXRhc291cmNlL2RhdGEtc291cmNlJ1xuXG5leHBvcnQgY2xhc3MgRGF0YUNvbnRleHRTaW1wbGU8VD4gZXh0ZW5kcyBEYXRhQ29udGV4dEJhc2U8VD4ge1xuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZzogTG9nZ2VyID0gTG9nZ2VyRmFjdG9yeS5nZXRMb2dnZXIodGhpcy5jb25zdHJ1Y3Rvci5uYW1lKVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGRhdGFTb3VyY2U6IElMaXN0RGF0YVNvdXJjZTxUPixcbiAgICBpbmRleEZuOiAoaXRlbTogVCkgPT4gYW55LFxuICAgIGxvY2FsQXBwbHk6IChkYXRhOiBUW10pID0+IFRbXSxcbiAgICBsb2NhbFNvcnQ6IChkYXRhOiBUW10sIHNvcnRzOiBTb3J0W10pID0+IFRbXVxuICApIHtcbiAgICBzdXBlcihkYXRhU291cmNlLCBpbmRleEZuLCBsb2NhbEFwcGx5LCBsb2NhbFNvcnQpXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgZ2V0IGRhdGFTb3VyY2UoKTogSUxpc3REYXRhU291cmNlPFQ+IHtcbiAgICByZXR1cm4gPElMaXN0RGF0YVNvdXJjZTxUPj5zdXBlci5kYXRhU291cmNlXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcm90ZWN0ZWQgcmVsb2FkSW50ZXJuYWwoKTogT2JzZXJ2YWJsZTxhbnk+IHtcbiAgICBjb25zdCBzdWJqZWN0ID0gbmV3IFN1YmplY3Q8dm9pZD4oKVxuXG4gICAgaWYgKHRoaXMuZGF0YVNvdXJjZSkge1xuICAgICAgdGhpcy5vbkxvYWRpbmcoKVxuXG4gICAgICB0aGlzLmRhdGFTb3VyY2VcbiAgICAgICAgLmZpbmRBbGxGaWx0ZXJlZCh0aGlzLmZpbHRlci5maWx0ZXJzU25hcHNob3QsIHRoaXMuc29ydC5zb3J0c1NuYXBzaG90KVxuICAgICAgICAucGlwZShmaXJzdCgpKVxuICAgICAgICAuc3Vic2NyaWJlKFxuICAgICAgICAgIChsaXN0KSA9PiB7XG4gICAgICAgICAgICB0aGlzLm9uSWRsZSgpXG4gICAgICAgICAgICB0aGlzLnNldFRvdGFsKGxpc3QubGVuZ3RoKVxuICAgICAgICAgICAgdGhpcy5zZXREYXRhKGxpc3QpXG4gICAgICAgICAgICB0aGlzLmxvZy5kZWJ1Zyh0aGlzLmlkICsgJzogR290IGxpc3QgZGF0YTogJyArIGxpc3QubGVuZ3RoKVxuXG4gICAgICAgICAgICBzdWJqZWN0Lm5leHQoKVxuICAgICAgICAgIH0sXG4gICAgICAgICAgKGVycikgPT4ge1xuICAgICAgICAgICAgdGhpcy5vbkVycm9yKGVycilcbiAgICAgICAgICAgIHRoaXMuY2xlYXJBbGwoKVxuICAgICAgICAgICAgdGhpcy5sb2cuZXJyb3IodGhpcy5pZCArICc6IEZhaWxlZCB0byBxdWVyeSBkYXRhJywgZXJyKVxuICAgICAgICAgICAgc3ViamVjdC5lcnJvcihlcnIpXG4gICAgICAgICAgfVxuICAgICAgICApXG4gICAgfSBlbHNlIHtcbiAgICAgIGNvbnN0IGVycm9yTXNnID0gdGhpcy5pZCArICc6IFNraXBwaW5nIGRhdGEgY29udGV4dCBsb2FkIC0gbm8gbGlzdCBmZXRjaGVyIHByZXNlbnQhJ1xuICAgICAgdGhpcy5sb2cud2FybihlcnJvck1zZylcbiAgICAgIHN1YmplY3QuZXJyb3IobmV3IEVycm9yKGVycm9yTXNnKSlcbiAgICB9XG5cbiAgICByZXR1cm4gc3ViamVjdC5waXBlKGZpcnN0KCkpXG4gIH1cbn1cbiJdfQ==
@@ -1,10 +1,6 @@
1
1
  import { DataContextLifeCycleBinding } from './data-context-life-cycle-binding';
2
+ import { DeepPartialPatcher } from '../datasource/patch/deep-partial-patcher';
2
3
  export class DataContextSourceEventBinding extends DataContextLifeCycleBinding {
3
- /***************************************************************************
4
- * *
5
- * Fields *
6
- * *
7
- **************************************************************************/
8
4
  /***************************************************************************
9
5
  * *
10
6
  * Constructor *
@@ -22,7 +18,7 @@ export class DataContextSourceEventBinding extends DataContextLifeCycleBinding {
22
18
  * *
23
19
  **************************************************************************/
24
20
  subscribe() {
25
- this._subscription = this.dataApi.dataChanged.subscribe(event => this.handleDataChangeEvent(event));
21
+ this._subscription = this.dataApi.dataChanged.subscribe((event) => this.handleDataChangeEvent(event));
26
22
  }
27
23
  /***************************************************************************
28
24
  * *
@@ -36,11 +32,32 @@ export class DataContextSourceEventBinding extends DataContextLifeCycleBinding {
36
32
  }
37
33
  // We might also be able to perform deletions locally, and avoid reload data
38
34
  if (event.modified) {
39
- this._dataContext.update(event.modified);
35
+ this.updateExisting(event.modified);
36
+ }
37
+ if (event.patches) {
38
+ this.updateExisting(this.buildPatchUpdates(event.patches));
39
+ }
40
+ }
41
+ updateExisting(entities) {
42
+ if (entities.length > 0) {
43
+ this._dataContext.update(entities);
40
44
  }
41
45
  }
42
46
  isReloadDesirable(event) {
43
47
  return event.unknownChanges || event.created || event.deletedIds;
44
48
  }
49
+ buildPatchUpdates(patches) {
50
+ return patches
51
+ .map((patch) => {
52
+ const existing = this._dataContext.findById(patch.entityId);
53
+ if (existing) {
54
+ return DeepPartialPatcher.patchShallowCopy(existing, patch.patch);
55
+ }
56
+ else {
57
+ return null;
58
+ }
59
+ })
60
+ .filter((update) => !!update);
61
+ }
45
62
  }
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb250ZXh0LXNvdXJjZS1ldmVudC1iaW5kaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tbW9uL2RhdGEvZGF0YS1jb250ZXh0L2RhdGEtY29udGV4dC1zb3VyY2UtZXZlbnQtYmluZGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUMsMkJBQTJCLEVBQUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUc5RSxNQUFNLE9BQU8sNkJBQXVDLFNBQVEsMkJBQTJCO0lBRXJGOzs7O2dGQUk0RTtJQUU1RTs7OztnRkFJNEU7SUFFNUUsWUFDRSxXQUE0QixFQUNYLE9BQXVCLEVBQ3ZCLGVBQXdCO1FBRXpDLEtBQUssQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUhGLFlBQU8sR0FBUCxPQUFPLENBQWdCO1FBQ3ZCLG9CQUFlLEdBQWYsZUFBZSxDQUFTO1FBR3pDLElBQUksQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRWxFLFNBQVM7UUFDakIsSUFBSSxDQUFDLGFBQWEsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQ3JELEtBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLEtBQUssQ0FBQyxDQUMzQyxDQUFDO0lBQ0osQ0FBQztJQUVEOzs7O2dGQUk0RTtJQUVwRSxxQkFBcUIsQ0FBQyxLQUErQjtRQUUzRCxJQUFJLElBQUksQ0FBQyxlQUFlLElBQUksSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDMUQsSUFBSSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsdUJBQXVCLENBQUMsQ0FBQztZQUNsRCxPQUFPO1FBQ1QsQ0FBQztRQUVELDRFQUE0RTtRQUU1RSxJQUFJLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDM0MsQ0FBQztJQUNILENBQUM7SUFFTyxpQkFBaUIsQ0FBQyxLQUErQjtRQUN2RCxPQUFPLEtBQUssQ0FBQyxjQUFjLElBQUksS0FBSyxDQUFDLE9BQU8sSUFBSSxLQUFLLENBQUMsVUFBVSxDQUFDO0lBQ25FLENBQUM7Q0FFRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SURhdGFDb250ZXh0fSBmcm9tICcuL2RhdGEtY29udGV4dCc7XG5pbXBvcnQge0lEYXRhU291cmNlfSBmcm9tICcuLi9kYXRhc291cmNlL2RhdGEtc291cmNlJztcbmltcG9ydCB7RGF0YUNvbnRleHRMaWZlQ3ljbGVCaW5kaW5nfSBmcm9tICcuL2RhdGEtY29udGV4dC1saWZlLWN5Y2xlLWJpbmRpbmcnO1xuaW1wb3J0IHtEYXRhU291cmNlQ2hhbmdlRXZlbnR9IGZyb20gJy4uL2RhdGFzb3VyY2UvZGF0YS1zb3VyY2UtY2hhbmdlLWV2ZW50JztcblxuZXhwb3J0IGNsYXNzIERhdGFDb250ZXh0U291cmNlRXZlbnRCaW5kaW5nPFQgPSBhbnk+IGV4dGVuZHMgRGF0YUNvbnRleHRMaWZlQ3ljbGVCaW5kaW5nIHtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3IgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBkYXRhQ29udGV4dDogSURhdGFDb250ZXh0PFQ+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgZGF0YUFwaTogSURhdGFTb3VyY2U8VD4sXG4gICAgcHJpdmF0ZSByZWFkb25seSByZWxvYWRPbkNoYW5nZXM6IGJvb2xlYW5cbiAgKSB7XG4gICAgc3VwZXIoZGF0YUNvbnRleHQpO1xuICAgIHRoaXMuc3Vic2NyaWJlKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogSW50ZXJuYWwgSW1wbCAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcm90ZWN0ZWQgc3Vic2NyaWJlKCk6IHZvaWQge1xuICAgIHRoaXMuX3N1YnNjcmlwdGlvbiA9IHRoaXMuZGF0YUFwaS5kYXRhQ2hhbmdlZC5zdWJzY3JpYmUoXG4gICAgICBldmVudCA9PiB0aGlzLmhhbmRsZURhdGFDaGFuZ2VFdmVudChldmVudClcbiAgICApO1xuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSBoYW5kbGVEYXRhQ2hhbmdlRXZlbnQoZXZlbnQ6IERhdGFTb3VyY2VDaGFuZ2VFdmVudDxUPik6IHZvaWQge1xuXG4gICAgaWYgKHRoaXMucmVsb2FkT25DaGFuZ2VzICYmIHRoaXMuaXNSZWxvYWREZXNpcmFibGUoZXZlbnQpKSB7XG4gICAgICB0aGlzLl9kYXRhQ29udGV4dC5yZWxvYWQoJ0RhdGFTb3VyY2VDaGFuZ2VFdmVudCcpO1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIC8vIFdlIG1pZ2h0IGFsc28gYmUgYWJsZSB0byBwZXJmb3JtIGRlbGV0aW9ucyBsb2NhbGx5LCBhbmQgYXZvaWQgcmVsb2FkIGRhdGFcblxuICAgIGlmIChldmVudC5tb2RpZmllZCkge1xuICAgICAgdGhpcy5fZGF0YUNvbnRleHQudXBkYXRlKGV2ZW50Lm1vZGlmaWVkKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGlzUmVsb2FkRGVzaXJhYmxlKGV2ZW50OiBEYXRhU291cmNlQ2hhbmdlRXZlbnQ8VD4pIHtcbiAgICByZXR1cm4gZXZlbnQudW5rbm93bkNoYW5nZXMgfHwgZXZlbnQuY3JlYXRlZCB8fCBldmVudC5kZWxldGVkSWRzO1xuICB9XG5cbn1cbiJdfQ==
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb250ZXh0LXNvdXJjZS1ldmVudC1iaW5kaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tbW9uL2RhdGEvZGF0YS1jb250ZXh0L2RhdGEtY29udGV4dC1zb3VyY2UtZXZlbnQtYmluZGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQTtBQUsvRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQTtBQUU3RSxNQUFNLE9BQU8sNkJBQXVDLFNBQVEsMkJBQTJCO0lBQ3JGOzs7O2dGQUk0RTtJQUU1RSxZQUNFLFdBQTRCLEVBQ1gsT0FBdUIsRUFDdkIsZUFBd0I7UUFFekMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFBO1FBSEQsWUFBTyxHQUFQLE9BQU8sQ0FBZ0I7UUFDdkIsb0JBQWUsR0FBZixlQUFlLENBQVM7UUFHekMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFBO0lBQ2xCLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFbEUsU0FBUztRQUNqQixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQ2hFLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLENBQUMsQ0FDbEMsQ0FBQTtJQUNILENBQUM7SUFFRDs7OztnRkFJNEU7SUFFcEUscUJBQXFCLENBQUMsS0FBK0I7UUFDM0QsSUFBSSxJQUFJLENBQUMsZUFBZSxJQUFJLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQzFELElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLHVCQUF1QixDQUFDLENBQUE7WUFDakQsT0FBTTtRQUNSLENBQUM7UUFFRCw0RUFBNEU7UUFFNUUsSUFBSSxLQUFLLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUE7UUFDckMsQ0FBQztRQUVELElBQUksS0FBSyxDQUFDLE9BQU8sRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFBO1FBQzVELENBQUM7SUFDSCxDQUFDO0lBRU8sY0FBYyxDQUFDLFFBQWE7UUFDbEMsSUFBSSxRQUFRLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3hCLElBQUksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBQ3BDLENBQUM7SUFDSCxDQUFDO0lBRU8saUJBQWlCLENBQUMsS0FBK0I7UUFDdkQsT0FBTyxLQUFLLENBQUMsY0FBYyxJQUFJLEtBQUssQ0FBQyxPQUFPLElBQUksS0FBSyxDQUFDLFVBQVUsQ0FBQTtJQUNsRSxDQUFDO0lBRU8saUJBQWlCLENBQUMsT0FBbUM7UUFDM0QsT0FBTyxPQUFPO2FBQ1gsR0FBRyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDYixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLENBQUE7WUFDM0QsSUFBSSxRQUFRLEVBQUUsQ0FBQztnQkFDYixPQUFPLGtCQUFrQixDQUFDLGdCQUFnQixDQUFDLFFBQVEsRUFBRSxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUE7WUFDbkUsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLE9BQU8sSUFBSSxDQUFBO1lBQ2IsQ0FBQztRQUNILENBQUMsQ0FBQzthQUNELE1BQU0sQ0FBQyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFBO0lBQ2pDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IElEYXRhQ29udGV4dCB9IGZyb20gJy4vZGF0YS1jb250ZXh0J1xuaW1wb3J0IHsgSURhdGFTb3VyY2UgfSBmcm9tICcuLi9kYXRhc291cmNlL2RhdGEtc291cmNlJ1xuaW1wb3J0IHsgRGF0YUNvbnRleHRMaWZlQ3ljbGVCaW5kaW5nIH0gZnJvbSAnLi9kYXRhLWNvbnRleHQtbGlmZS1jeWNsZS1iaW5kaW5nJ1xuaW1wb3J0IHtcbiAgRGF0YVNvdXJjZUNoYW5nZUV2ZW50LFxuICBEYXRhU291cmNlRW50aXR5UGF0Y2gsXG59IGZyb20gJy4uL2RhdGFzb3VyY2UvZGF0YS1zb3VyY2UtY2hhbmdlLWV2ZW50J1xuaW1wb3J0IHsgRGVlcFBhcnRpYWxQYXRjaGVyIH0gZnJvbSAnLi4vZGF0YXNvdXJjZS9wYXRjaC9kZWVwLXBhcnRpYWwtcGF0Y2hlcidcblxuZXhwb3J0IGNsYXNzIERhdGFDb250ZXh0U291cmNlRXZlbnRCaW5kaW5nPFQgPSBhbnk+IGV4dGVuZHMgRGF0YUNvbnRleHRMaWZlQ3ljbGVCaW5kaW5nIHtcbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgZGF0YUNvbnRleHQ6IElEYXRhQ29udGV4dDxUPixcbiAgICBwcml2YXRlIHJlYWRvbmx5IGRhdGFBcGk6IElEYXRhU291cmNlPFQ+LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgcmVsb2FkT25DaGFuZ2VzOiBib29sZWFuXG4gICkge1xuICAgIHN1cGVyKGRhdGFDb250ZXh0KVxuICAgIHRoaXMuc3Vic2NyaWJlKClcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBJbnRlcm5hbCBJbXBsICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHByb3RlY3RlZCBzdWJzY3JpYmUoKTogdm9pZCB7XG4gICAgdGhpcy5fc3Vic2NyaXB0aW9uID0gdGhpcy5kYXRhQXBpLmRhdGFDaGFuZ2VkLnN1YnNjcmliZSgoZXZlbnQpID0+XG4gICAgICB0aGlzLmhhbmRsZURhdGFDaGFuZ2VFdmVudChldmVudClcbiAgICApXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIGhhbmRsZURhdGFDaGFuZ2VFdmVudChldmVudDogRGF0YVNvdXJjZUNoYW5nZUV2ZW50PFQ+KTogdm9pZCB7XG4gICAgaWYgKHRoaXMucmVsb2FkT25DaGFuZ2VzICYmIHRoaXMuaXNSZWxvYWREZXNpcmFibGUoZXZlbnQpKSB7XG4gICAgICB0aGlzLl9kYXRhQ29udGV4dC5yZWxvYWQoJ0RhdGFTb3VyY2VDaGFuZ2VFdmVudCcpXG4gICAgICByZXR1cm5cbiAgICB9XG5cbiAgICAvLyBXZSBtaWdodCBhbHNvIGJlIGFibGUgdG8gcGVyZm9ybSBkZWxldGlvbnMgbG9jYWxseSwgYW5kIGF2b2lkIHJlbG9hZCBkYXRhXG5cbiAgICBpZiAoZXZlbnQubW9kaWZpZWQpIHtcbiAgICAgIHRoaXMudXBkYXRlRXhpc3RpbmcoZXZlbnQubW9kaWZpZWQpXG4gICAgfVxuXG4gICAgaWYgKGV2ZW50LnBhdGNoZXMpIHtcbiAgICAgIHRoaXMudXBkYXRlRXhpc3RpbmcodGhpcy5idWlsZFBhdGNoVXBkYXRlcyhldmVudC5wYXRjaGVzKSlcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZUV4aXN0aW5nKGVudGl0aWVzOiBUW10pOiB2b2lkIHtcbiAgICBpZiAoZW50aXRpZXMubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5fZGF0YUNvbnRleHQudXBkYXRlKGVudGl0aWVzKVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgaXNSZWxvYWREZXNpcmFibGUoZXZlbnQ6IERhdGFTb3VyY2VDaGFuZ2VFdmVudDxUPikge1xuICAgIHJldHVybiBldmVudC51bmtub3duQ2hhbmdlcyB8fCBldmVudC5jcmVhdGVkIHx8IGV2ZW50LmRlbGV0ZWRJZHNcbiAgfVxuXG4gIHByaXZhdGUgYnVpbGRQYXRjaFVwZGF0ZXMocGF0Y2hlczogRGF0YVNvdXJjZUVudGl0eVBhdGNoPFQ+W10pOiBUW10ge1xuICAgIHJldHVybiBwYXRjaGVzXG4gICAgICAubWFwKChwYXRjaCkgPT4ge1xuICAgICAgICBjb25zdCBleGlzdGluZyA9IHRoaXMuX2RhdGFDb250ZXh0LmZpbmRCeUlkKHBhdGNoLmVudGl0eUlkKVxuICAgICAgICBpZiAoZXhpc3RpbmcpIHtcbiAgICAgICAgICByZXR1cm4gRGVlcFBhcnRpYWxQYXRjaGVyLnBhdGNoU2hhbGxvd0NvcHkoZXhpc3RpbmcsIHBhdGNoLnBhdGNoKVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBudWxsXG4gICAgICAgIH1cbiAgICAgIH0pXG4gICAgICAuZmlsdGVyKCh1cGRhdGUpID0+ICEhdXBkYXRlKVxuICB9XG59XG4iXX0=
@@ -43,4 +43,4 @@ export class DataContextStatus {
43
43
  return !!this._error;
44
44
  }
45
45
  }
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb250ZXh0LXN0YXR1cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbW1vbi9kYXRhL2RhdGEtY29udGV4dC9kYXRhLWNvbnRleHQtc3RhdHVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGlCQUFpQjtJQUUxQjs7OztnRkFJNEU7SUFFckUsTUFBTSxDQUFDLElBQUk7UUFDaEIsT0FBTyxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFFTSxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQVU7UUFDMUIsT0FBTyxJQUFJLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3hDLENBQUM7SUFFTSxNQUFNLENBQUMsT0FBTztRQUNuQixPQUFPLElBQUksaUJBQWlCLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzNDLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFNUUsWUFDcUIsTUFBVyxFQUNYLFdBQVcsS0FBSztRQURoQixXQUFNLEdBQU4sTUFBTSxDQUFLO1FBQ1gsYUFBUSxHQUFSLFFBQVEsQ0FBUTtJQUNsQyxDQUFDO0lBRUo7Ozs7Z0ZBSTRFO0lBRTVFLElBQVcsSUFBSTtRQUNiLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQsSUFBVyxLQUFLO1FBQ1osT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDZixPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDO0lBQ3pCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogUmVwcmVzZW50cyB0aGUgc3RhdHVzIG9mIGEgZGF0YS1jb250ZXh0XG4gKi9cbmV4cG9ydCBjbGFzcyBEYXRhQ29udGV4dFN0YXR1cyB7XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqIFN0YXRpYyBidWlsZGVycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgcHVibGljIHN0YXRpYyBpZGxlKCk6IERhdGFDb250ZXh0U3RhdHVzIHtcbiAgICAgIHJldHVybiBuZXcgRGF0YUNvbnRleHRTdGF0dXMobnVsbCk7XG4gICAgfVxuXG4gICAgcHVibGljIHN0YXRpYyBlcnJvcihlcnJvcjogYW55KTogRGF0YUNvbnRleHRTdGF0dXMge1xuICAgICAgICByZXR1cm4gbmV3IERhdGFDb250ZXh0U3RhdHVzKGVycm9yKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgc3RhdGljIGxvYWRpbmcoKTogRGF0YUNvbnRleHRTdGF0dXMge1xuICAgICAgcmV0dXJuIG5ldyBEYXRhQ29udGV4dFN0YXR1cyhudWxsLCB0cnVlKTtcbiAgICB9XG5cbiAgICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqIENvbnN0cnVjdG9ycyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgX2Vycm9yOiBhbnksXG4gICAgICAgIHByaXZhdGUgcmVhZG9ubHkgX2xvYWRpbmcgPSBmYWxzZVxuICAgICkge31cblxuICAgIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgICBwdWJsaWMgZ2V0IGlkbGUoKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gIXRoaXMubG9hZGluZyAmJiAhdGhpcy5lcnJvcjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGxvYWRpbmcoKTogYm9vbGVhbiB7XG4gICAgICByZXR1cm4gdGhpcy5fbG9hZGluZztcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGVycm9yKCk6IGFueSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9lcnJvcjtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0IGhhc0Vycm9yKCk6IGJvb2xlYW4ge1xuICAgICAgICByZXR1cm4gISF0aGlzLl9lcnJvcjtcbiAgICB9XG59XG4iXX0=
46
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb250ZXh0LXN0YXR1cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbW1vbi9kYXRhL2RhdGEtY29udGV4dC9kYXRhLWNvbnRleHQtc3RhdHVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxPQUFPLGlCQUFpQjtJQUM1Qjs7OztnRkFJNEU7SUFFckUsTUFBTSxDQUFDLElBQUk7UUFDaEIsT0FBTyxJQUFJLGlCQUFpQixDQUFDLElBQUksQ0FBQyxDQUFBO0lBQ3BDLENBQUM7SUFFTSxNQUFNLENBQUMsS0FBSyxDQUFDLEtBQVU7UUFDNUIsT0FBTyxJQUFJLGlCQUFpQixDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ3JDLENBQUM7SUFFTSxNQUFNLENBQUMsT0FBTztRQUNuQixPQUFPLElBQUksaUJBQWlCLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFBO0lBQzFDLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFNUUsWUFDbUIsTUFBVyxFQUNYLFdBQVcsS0FBSztRQURoQixXQUFNLEdBQU4sTUFBTSxDQUFLO1FBQ1gsYUFBUSxHQUFSLFFBQVEsQ0FBUTtJQUNoQyxDQUFDO0lBRUo7Ozs7Z0ZBSTRFO0lBRTVFLElBQVcsSUFBSTtRQUNiLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQTtJQUNyQyxDQUFDO0lBRUQsSUFBVyxPQUFPO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQTtJQUN0QixDQUFDO0lBRUQsSUFBVyxLQUFLO1FBQ2QsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFBO0lBQ3BCLENBQUM7SUFFRCxJQUFXLFFBQVE7UUFDakIsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQTtJQUN0QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIFJlcHJlc2VudHMgdGhlIHN0YXR1cyBvZiBhIGRhdGEtY29udGV4dFxuICovXG5leHBvcnQgY2xhc3MgRGF0YUNvbnRleHRTdGF0dXMge1xuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogU3RhdGljIGJ1aWxkZXJzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwdWJsaWMgc3RhdGljIGlkbGUoKTogRGF0YUNvbnRleHRTdGF0dXMge1xuICAgIHJldHVybiBuZXcgRGF0YUNvbnRleHRTdGF0dXMobnVsbClcbiAgfVxuXG4gIHB1YmxpYyBzdGF0aWMgZXJyb3IoZXJyb3I6IGFueSk6IERhdGFDb250ZXh0U3RhdHVzIHtcbiAgICByZXR1cm4gbmV3IERhdGFDb250ZXh0U3RhdHVzKGVycm9yKVxuICB9XG5cbiAgcHVibGljIHN0YXRpYyBsb2FkaW5nKCk6IERhdGFDb250ZXh0U3RhdHVzIHtcbiAgICByZXR1cm4gbmV3IERhdGFDb250ZXh0U3RhdHVzKG51bGwsIHRydWUpXG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQ29uc3RydWN0b3JzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9lcnJvcjogYW55LFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2xvYWRpbmcgPSBmYWxzZVxuICApIHt9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGdldCBpZGxlKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5sb2FkaW5nICYmICF0aGlzLmVycm9yXG4gIH1cblxuICBwdWJsaWMgZ2V0IGxvYWRpbmcoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuX2xvYWRpbmdcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZXJyb3IoKTogYW55IHtcbiAgICByZXR1cm4gdGhpcy5fZXJyb3JcbiAgfVxuXG4gIHB1YmxpYyBnZXQgaGFzRXJyb3IoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICEhdGhpcy5fZXJyb3JcbiAgfVxufVxuIl19
@@ -16,10 +16,10 @@ export function isDataContext(object) {
16
16
  if (!object) {
17
17
  return false;
18
18
  }
19
- return object.data !== undefined
20
- && object.start !== undefined
21
- && object.reload !== undefined
22
- && object.refresh !== undefined;
19
+ return (object.data !== undefined &&
20
+ object.start !== undefined &&
21
+ object.reload !== undefined &&
22
+ object.refresh !== undefined);
23
23
  }
24
24
  export function isContinuableDataContext(object) {
25
25
  return object.loadMore !== undefined;
@@ -27,4 +27,4 @@ export function isContinuableDataContext(object) {
27
27
  export function isActivePagedDataContext(object) {
28
28
  return object.setActivePage !== undefined;
29
29
  }
30
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb250ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tbW9uL2RhdGEvZGF0YS1jb250ZXh0L2RhdGEtY29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFVQSxNQUFNLE9BQU8sbUJBQW1CO0lBQzlCLFlBQ2tCLElBQVMsRUFDVCxPQUFnQixFQUNoQixTQUFrQixFQUNsQixLQUF5QixFQUN6QixNQUF5QjtRQUp6QixTQUFJLEdBQUosSUFBSSxDQUFLO1FBQ1QsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNoQixjQUFTLEdBQVQsU0FBUyxDQUFTO1FBQ2xCLFVBQUssR0FBTCxLQUFLLENBQW9CO1FBQ3pCLFdBQU0sR0FBTixNQUFNLENBQW1CO0lBQ3ZDLENBQUM7Q0FDTjtBQXVMRDs7Ozs0RUFJNEU7QUFFNUUsTUFBTSxVQUFVLGFBQWEsQ0FBQyxNQUFXO0lBRXZDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUFDLE9BQU8sS0FBSyxDQUFDO0lBQUMsQ0FBQztJQUU5QixPQUFRLE1BQTRCLENBQUMsSUFBSSxLQUFLLFNBQVM7V0FDakQsTUFBNEIsQ0FBQyxLQUFLLEtBQUssU0FBUztXQUNoRCxNQUE0QixDQUFDLE1BQU0sS0FBSyxTQUFTO1dBQ2pELE1BQTRCLENBQUMsT0FBTyxLQUFLLFNBQVMsQ0FBQztBQUMzRCxDQUFDO0FBRUQsTUFBTSxVQUFVLHdCQUF3QixDQUFDLE1BQXlCO0lBQ2hFLE9BQVEsTUFBdUMsQ0FBQyxRQUFRLEtBQUssU0FBUyxDQUFDO0FBQ3pFLENBQUM7QUFFRCxNQUFNLFVBQVUsd0JBQXdCLENBQUMsTUFBeUI7SUFDaEUsT0FBUSxNQUFzQyxDQUFDLGFBQWEsS0FBSyxTQUFTLENBQUM7QUFDN0UsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7RGF0YUNvbnRleHRTdGF0dXN9IGZyb20gJy4vZGF0YS1jb250ZXh0LXN0YXR1cyc7XG5pbXBvcnQge09ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtTb3J0fSBmcm9tICcuLi9zb3J0JztcbmltcG9ydCB7RmlsdGVyfSBmcm9tICcuLi9maWx0ZXJzL2ZpbHRlcic7XG5pbXBvcnQge0ZpbHRlckNvbnRleHR9IGZyb20gJy4uL2ZpbHRlcnMvZmlsdGVyLWNvbnRleHQnO1xuaW1wb3J0IHtQYWdlUmVxdWVzdH0gZnJvbSAnLi4vcGFnZSc7XG5pbXBvcnQge1NvcnRDb250ZXh0fSBmcm9tICcuLi9zb3J0LWNvbnRleHQnO1xuaW1wb3J0IHtJRGF0YVNvdXJjZX0gZnJvbSAnLi4vZGF0YXNvdXJjZS9kYXRhLXNvdXJjZSc7XG5cblxuZXhwb3J0IGNsYXNzIERhdGFDb250ZXh0U25hcHNob3Q8VD4ge1xuICBjb25zdHJ1Y3RvcihcbiAgICBwdWJsaWMgcmVhZG9ubHkgZGF0YTogVFtdLFxuICAgIHB1YmxpYyByZWFkb25seSBpc0VtcHR5OiBib29sZWFuLFxuICAgIHB1YmxpYyByZWFkb25seSBpc0xvYWRpbmc6IGJvb2xlYW4sXG4gICAgcHVibGljIHJlYWRvbmx5IHRvdGFsOiBudW1iZXIgfCB1bmRlZmluZWQsXG4gICAgcHVibGljIHJlYWRvbmx5IHN0YXR1czogRGF0YUNvbnRleHRTdGF0dXNcbiAgKSB7IH1cbn1cblxuLyoqXG4gKiBNYW5hZ2VzIGEgc2V0IG9mIGRhdGEgKHJvd3MpIHdoaWNoIGFyZSB0byBiZSBkaXNwbGF5ZWQgaW4gYSBVSSBDb21wb25lbnQuXG4gKlxuICovXG5leHBvcnQgaW50ZXJmYWNlIElEYXRhQ29udGV4dDxUPiB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgLyoqXG4gICAqIEFuIGF1dG8gZ2VuZXJhdGVkIGlkIG9mIHRoaXMgRGF0YUNvbnRleHQgaW5zdGFuY2UuXG4gICAqIE1vc3RseSBmb3IgZGVidWdnaW5nIHB1cnBvc2VzLlxuICAgKi9cbiAgcmVhZG9ubHkgaWQ6IHN0cmluZztcblxuICAvKipcbiAgICogR2V0cyB0aGUgdW5kZXJseWluZyBEYXRhU291cmNlIG9mIHRoaXMgRGF0YUNvbnRleHQuXG4gICAqL1xuICByZWFkb25seSBkYXRhU291cmNlOiBJRGF0YVNvdXJjZTxUPjtcblxuICAvKipcbiAgICogR2V0cyBhIHNuYXBzaG90IG9mIHRoZSBjdXJyZW50IHN0YXRlIGluIHRoaXMgZGF0YS1jb250ZXh0XG4gICAqL1xuICByZWFkb25seSBzbmFwc2hvdDogRGF0YUNvbnRleHRTbmFwc2hvdDxUPjtcblxuICAvKipcbiAgICogT2JzZXJ2YWJsZSB3aGljaCBlbWl0cyB0aGUgY3VycmVudCBkYXRhIG92ZXIgdGltZS5cbiAgICovXG4gIHJlYWRvbmx5IGRhdGE6IE9ic2VydmFibGU8VFtdPjtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSBjb250ZXh0IGN1cnJlbnRseSBob2xkcyBubyBkYXRhXG4gICAqL1xuICByZWFkb25seSBpc0VtcHR5OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGNvbnRleHQgaGFzIGJlZW4gc3RhcnRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGlzU3RhcnRlZDogYm9vbGVhbjtcblxuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSBjb250ZXh0IGhhcyBiZWVuIHN0YXJ0ZWQuXG4gICAqL1xuICByZWFkb25seSBpc1N0YXJ0ZWQkOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGNvbnRleHQgaGFzIGJlZW4gY2xvc2VkLlxuICAgKiBEZXBlbmRpbmcgb24gdGhlIGltcGxlbWVudGF0aW9uLCByZXN0YXJ0aW5nIG1pZ2h0IG5vdCBiZSBwb3NzaWJsZS5cbiAgICovXG4gIHJlYWRvbmx5IGlzQ2xvc2VkOiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgZGF0YSBpcyBsb2FkaW5nIG92ZXIgdGltZVxuICAgKi9cbiAgcmVhZG9ubHkgbG9hZGluZzogT2JzZXJ2YWJsZTxib29sZWFuPjtcblxuICAvKipcbiAgICogVGhlIHRvdGFsIGNvdW50IG9mIGFsbCBlbGVtZW50cyBvdmVyIHRpbWVcbiAgICogKEkuZS4gdGhlIGV4cGVjdGVkIGNvdW50IHdoZW4gdGhlIGRhdGEgY29udGV4dCBpcyBjb21wbGV0ZWQpXG4gICAqL1xuICByZWFkb25seSB0b3RhbDogT2JzZXJ2YWJsZTxudW1iZXIgfCB1bmRlZmluZWQ+O1xuXG4gIC8qKlxuICAgKiBPYnNlcnZhYmxlIHdoaWNoIGVtaXRzIHdoZW4gdGhlIHN0YXR1cyBjaGFuZ2VzIChpLmUuIGVycm9yKVxuICAgKi9cbiAgcmVhZG9ubHkgc3RhdHVzOiBPYnNlcnZhYmxlPERhdGFDb250ZXh0U3RhdHVzPjtcblxuICAvKipcbiAgICogR2V0cyB0aGUgc29ydCBjb250ZXh0LiBDaGFuZ2VzIGluIHRoaXMgY29udGV4dCBhcmUgcmVmbGVjdGVkIGJ5IHRoZSBkYXRhLWNvbnRleHQuXG4gICAqL1xuICByZWFkb25seSBzb3J0OiBTb3J0Q29udGV4dDtcblxuICAvKipcbiAgICogR2V0cyB0aGUgZmlsdGVyIGNvbnRleHQuIENoYW5nZXMgaW4gdGhpcyBjb250ZXh0IGFyZSByZWZsZWN0ZWQgYnkgdGhlIGRhdGEtY29udGV4dC5cbiAgICovXG4gIHJlYWRvbmx5IGZpbHRlcjogRmlsdGVyQ29udGV4dDtcblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAvKipcbiAgICogU3RhcnRzIHBvcHVsYXRpbmcgZGF0YSBjb250ZXh0IGJ5IGxvYWRpbmcgZmlyc3RcbiAgICogYmF0Y2ggb2YgZGF0YS5cbiAgICovXG4gIHN0YXJ0KHNvcnRzPzogU29ydFtdLCBmaWx0ZXJzPzogRmlsdGVyW10pOiBPYnNlcnZhYmxlPGFueT47XG5cbiAgLyoqXG4gICAqIFJlcXVlc3RzIGEgcmVsb2FkIG9mIHRoZSBjdXJyZW50IGRhdGEgLyBjaHVuay5cbiAgICogQXR0ZW1wdHMgdG8ga2VlcCB0aGUgY3VycmVudCBwb3NpdGlvbi5cbiAgICovXG4gIHJlbG9hZChyZWFzb24/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT47XG5cbiAgLyoqXG4gICAqIFJlZnJlc2ggdGhlIGRhdGEgdmlldyBmcm9tIHRoZSBsb2NhbCBkYXRhIG1vZGVsLiAoRG9lcyBub3QgcmVxdWVzdCBuZXcgZGF0YSBmcm9tIHRoZSBzZXJ2ZXIpXG4gICAqIFVzZWZ1bCBpZiB0aGUgZGF0YSBtb2RlbCBoYXMgY2hhbmdlcyB0aGF0IG5lZWQgdG8gYmUgcmVmbGVjdGVkIGluIHRoZSBVSS5cbiAgICovXG4gIHJlZnJlc2goKTogdm9pZDtcblxuICAvKipcbiAgICogQ2xvc2VzIHRoZSBkYXRhLWNvbnRleHQgYW5kIGNsZWFucyB1cCByZXNvdXJjZXNcbiAgICovXG4gIGNsb3NlKCk6IHZvaWQ7XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGl0ZW0gYnkgYSBjdXN0b20gaW5kZXgga2V5LlxuICAgKiBSZXF1aXJlcyB0aGF0IGN1c3RvbSBpbmRleCBmdW5jdGlvbmFsaXR5IGlzIGVuYWJsZWQuXG4gICAqXG4gICAqIEZvciBpZCBiYXNlZCBsb29rdXAsIHJlZmVyIHRvIGZpbmRCeUlkKCkuXG4gICAqXG4gICAqIEBwYXJhbSBrZXlcbiAgICovXG4gIGZpbmRCeUluZGV4KGtleTogYW55KTogVCB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogTG9va3VwIGFuIGVudGl0eSBieSBpdHMgaWQuIFRoaXMgbWV0aG9kIGlzIGd1YXJhbnRlZWQgdG8gYmUgYmFja2VkIGJ5IGEgZmFzdCBpbmRleC5cbiAgICogQHBhcmFtIGlkIFRoZSBFbnRpdHkgSWQuXG4gICAqL1xuICBmaW5kQnlJZChpZDogYW55KTogVCB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogVXBkYXRlIHRoZSBnaXZlbiBlbnRpdGllcyBpbiB0aGlzIGRhdGEtY29udGV4dFxuICAgKi9cbiAgdXBkYXRlKGVudGl0aWVzOiBUW10pOiB2b2lkO1xuXG59XG5cbi8qKlxuICogUmVwcmVzZW50cyBhIGRhdGEtY29udGV4dCB3aGljaCBiYWNrcyBhIGluZmluaXRlIGxpa2UgZGF0YSBzdHJlYW1cbiAqIHdoZXJlIG1vcmUgZGF0YSB3aWxsIGJlIGxvYWRlZCBhbmQgYWRkZWQgdG8gdGhlIGJhY2tpbmcgcm93cy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJRGF0YUNvbnRleHRDb250aW51YWJsZTxUPiBleHRlbmRzIElEYXRhQ29udGV4dDxUPiB7XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdHJ1ZSBpZiB0aGlzIGRhdGEtY29udGV4dCBjYW4gbG9hZCBtb3JlIGRhdGFcbiAgICovXG4gIHJlYWRvbmx5IGhhc01vcmVEYXRhU25hcHNob3Q6IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIFJldHVybnMgdHJ1ZSBpZiB0aGlzIGRhdGEtY29udGV4dCBjYW4gbG9hZCBtb3JlIGRhdGEgb3ZlciB0aW1lXG4gICAqL1xuICByZWFkb25seSBoYXNNb3JlRGF0YTogT2JzZXJ2YWJsZTxib29sZWFuPjtcblxuICAvKipcbiAgICogTG9hZHMgbW9yZSBkYXRhIGlmIGFueSBhdmFpbGFibGUuXG4gICAqIEUuZy4gbmV4dCBwYWdlLlxuICAgKlxuICAgKi9cbiAgbG9hZE1vcmUoKTogT2JzZXJ2YWJsZTxhbnk+O1xuXG4gIC8qKlxuICAgKiBMb2FkcyBhbGwgYXZhaWxhYmxlIGRhdGEuIEluIGNhc2Ugb2ZcbiAgICogcGFnZWQgY29udGV4dCBsb2FkcyBwYWdlIGJ5IHBhZ2UgdW50aWwgZmluaXNoZWQuXG4gICAqL1xuICBsb2FkQWxsKHNvcnRzPzogU29ydFtdLCBmaWx0ZXJzPzogRmlsdGVyW10pOiB2b2lkO1xuXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSURhdGFDb250ZXh0QWN0aXZlUGFnZTxUPiBleHRlbmRzIElEYXRhQ29udGV4dDxUPiB7XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGFjdGl2ZSBwYWdlIG92ZXIgdGltZVxuICAgKi9cbiAgcmVhZG9ubHkgcGFnZTogT2JzZXJ2YWJsZTxQYWdlUmVxdWVzdD47XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIGN1cnJlbnQgYWN0aXZlIHBhZ2VcbiAgICovXG4gIHJlYWRvbmx5IHBhZ2VTbmFwc2hvdDogUGFnZVJlcXVlc3Q7XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGFjdGl2ZSBwYWdlXG4gICAqL1xuICBzZXRBY3RpdmVQYWdlKHBhZ2U6IFBhZ2VSZXF1ZXN0KTogdm9pZDtcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICogVHlwZSBQcmVkaWNhdGVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5leHBvcnQgZnVuY3Rpb24gaXNEYXRhQ29udGV4dChvYmplY3Q6IGFueSk6IG9iamVjdCBpcyBJRGF0YUNvbnRleHQ8YW55PiB7XG5cbiAgaWYgKCFvYmplY3QpIHsgcmV0dXJuIGZhbHNlOyB9XG5cbiAgcmV0dXJuIChvYmplY3QgYXMgSURhdGFDb250ZXh0PGFueT4pLmRhdGEgIT09IHVuZGVmaW5lZFxuICAgICYmIChvYmplY3QgYXMgSURhdGFDb250ZXh0PGFueT4pLnN0YXJ0ICE9PSB1bmRlZmluZWRcbiAgICAmJiAob2JqZWN0IGFzIElEYXRhQ29udGV4dDxhbnk+KS5yZWxvYWQgIT09IHVuZGVmaW5lZFxuICAgICYmIChvYmplY3QgYXMgSURhdGFDb250ZXh0PGFueT4pLnJlZnJlc2ggIT09IHVuZGVmaW5lZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzQ29udGludWFibGVEYXRhQ29udGV4dChvYmplY3Q6IElEYXRhQ29udGV4dDxhbnk+KTogb2JqZWN0IGlzIElEYXRhQ29udGV4dENvbnRpbnVhYmxlPGFueT4ge1xuICByZXR1cm4gKG9iamVjdCBhcyBJRGF0YUNvbnRleHRDb250aW51YWJsZTxhbnk+KS5sb2FkTW9yZSAhPT0gdW5kZWZpbmVkO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNBY3RpdmVQYWdlZERhdGFDb250ZXh0KG9iamVjdDogSURhdGFDb250ZXh0PGFueT4pOiBvYmplY3QgaXMgSURhdGFDb250ZXh0QWN0aXZlUGFnZTxhbnk+IHtcbiAgcmV0dXJuIChvYmplY3QgYXMgSURhdGFDb250ZXh0QWN0aXZlUGFnZTxhbnk+KS5zZXRBY3RpdmVQYWdlICE9PSB1bmRlZmluZWQ7XG59XG4iXX0=
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS1jb250ZXh0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tbW9uL2RhdGEvZGF0YS1jb250ZXh0L2RhdGEtY29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFTQSxNQUFNLE9BQU8sbUJBQW1CO0lBQzlCLFlBQ2tCLElBQVMsRUFDVCxPQUFnQixFQUNoQixTQUFrQixFQUNsQixLQUF5QixFQUN6QixNQUF5QjtRQUp6QixTQUFJLEdBQUosSUFBSSxDQUFLO1FBQ1QsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNoQixjQUFTLEdBQVQsU0FBUyxDQUFTO1FBQ2xCLFVBQUssR0FBTCxLQUFLLENBQW9CO1FBQ3pCLFdBQU0sR0FBTixNQUFNLENBQW1CO0lBQ3hDLENBQUM7Q0FDTDtBQWtMRDs7Ozs0RUFJNEU7QUFFNUUsTUFBTSxVQUFVLGFBQWEsQ0FBQyxNQUFXO0lBQ3ZDLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNaLE9BQU8sS0FBSyxDQUFBO0lBQ2QsQ0FBQztJQUVELE9BQU8sQ0FDSixNQUE0QixDQUFDLElBQUksS0FBSyxTQUFTO1FBQy9DLE1BQTRCLENBQUMsS0FBSyxLQUFLLFNBQVM7UUFDaEQsTUFBNEIsQ0FBQyxNQUFNLEtBQUssU0FBUztRQUNqRCxNQUE0QixDQUFDLE9BQU8sS0FBSyxTQUFTLENBQ3BELENBQUE7QUFDSCxDQUFDO0FBRUQsTUFBTSxVQUFVLHdCQUF3QixDQUN0QyxNQUF5QjtJQUV6QixPQUFRLE1BQXVDLENBQUMsUUFBUSxLQUFLLFNBQVMsQ0FBQTtBQUN4RSxDQUFDO0FBRUQsTUFBTSxVQUFVLHdCQUF3QixDQUN0QyxNQUF5QjtJQUV6QixPQUFRLE1BQXNDLENBQUMsYUFBYSxLQUFLLFNBQVMsQ0FBQTtBQUM1RSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGF0YUNvbnRleHRTdGF0dXMgfSBmcm9tICcuL2RhdGEtY29udGV4dC1zdGF0dXMnXG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcydcbmltcG9ydCB7IFNvcnQgfSBmcm9tICcuLi9zb3J0J1xuaW1wb3J0IHsgRmlsdGVyIH0gZnJvbSAnLi4vZmlsdGVycy9maWx0ZXInXG5pbXBvcnQgeyBGaWx0ZXJDb250ZXh0IH0gZnJvbSAnLi4vZmlsdGVycy9maWx0ZXItY29udGV4dCdcbmltcG9ydCB7IFBhZ2VSZXF1ZXN0IH0gZnJvbSAnLi4vcGFnZSdcbmltcG9ydCB7IFNvcnRDb250ZXh0IH0gZnJvbSAnLi4vc29ydC1jb250ZXh0J1xuaW1wb3J0IHsgSURhdGFTb3VyY2UgfSBmcm9tICcuLi9kYXRhc291cmNlL2RhdGEtc291cmNlJ1xuXG5leHBvcnQgY2xhc3MgRGF0YUNvbnRleHRTbmFwc2hvdDxUPiB7XG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyByZWFkb25seSBkYXRhOiBUW10sXG4gICAgcHVibGljIHJlYWRvbmx5IGlzRW1wdHk6IGJvb2xlYW4sXG4gICAgcHVibGljIHJlYWRvbmx5IGlzTG9hZGluZzogYm9vbGVhbixcbiAgICBwdWJsaWMgcmVhZG9ubHkgdG90YWw6IG51bWJlciB8IHVuZGVmaW5lZCxcbiAgICBwdWJsaWMgcmVhZG9ubHkgc3RhdHVzOiBEYXRhQ29udGV4dFN0YXR1c1xuICApIHt9XG59XG5cbi8qKlxuICogTWFuYWdlcyBhIHNldCBvZiBkYXRhIChyb3dzKSB3aGljaCBhcmUgdG8gYmUgZGlzcGxheWVkIGluIGEgVUkgQ29tcG9uZW50LlxuICpcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJRGF0YUNvbnRleHQ8VD4ge1xuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJvcGVydGllcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICAvKipcbiAgICogQW4gYXV0byBnZW5lcmF0ZWQgaWQgb2YgdGhpcyBEYXRhQ29udGV4dCBpbnN0YW5jZS5cbiAgICogTW9zdGx5IGZvciBkZWJ1Z2dpbmcgcHVycG9zZXMuXG4gICAqL1xuICByZWFkb25seSBpZDogc3RyaW5nXG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHVuZGVybHlpbmcgRGF0YVNvdXJjZSBvZiB0aGlzIERhdGFDb250ZXh0LlxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YVNvdXJjZTogSURhdGFTb3VyY2U8VD5cblxuICAvKipcbiAgICogR2V0cyBhIHNuYXBzaG90IG9mIHRoZSBjdXJyZW50IHN0YXRlIGluIHRoaXMgZGF0YS1jb250ZXh0XG4gICAqL1xuICByZWFkb25seSBzbmFwc2hvdDogRGF0YUNvbnRleHRTbmFwc2hvdDxUPlxuXG4gIC8qKlxuICAgKiBPYnNlcnZhYmxlIHdoaWNoIGVtaXRzIHRoZSBjdXJyZW50IGRhdGEgb3ZlciB0aW1lLlxuICAgKi9cbiAgcmVhZG9ubHkgZGF0YTogT2JzZXJ2YWJsZTxUW10+XG5cbiAgLyoqXG4gICAqIEluZGljYXRlcyBpZiB0aGUgY29udGV4dCBjdXJyZW50bHkgaG9sZHMgbm8gZGF0YVxuICAgKi9cbiAgcmVhZG9ubHkgaXNFbXB0eTogYm9vbGVhblxuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGNvbnRleHQgaGFzIGJlZW4gc3RhcnRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGlzU3RhcnRlZDogYm9vbGVhblxuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgdGhlIGNvbnRleHQgaGFzIGJlZW4gc3RhcnRlZC5cbiAgICovXG4gIHJlYWRvbmx5IGlzU3RhcnRlZCQ6IE9ic2VydmFibGU8Ym9vbGVhbj5cblxuICAvKipcbiAgICogSW5kaWNhdGVzIGlmIHRoZSBjb250ZXh0IGhhcyBiZWVuIGNsb3NlZC5cbiAgICogRGVwZW5kaW5nIG9uIHRoZSBpbXBsZW1lbnRhdGlvbiwgcmVzdGFydGluZyBtaWdodCBub3QgYmUgcG9zc2libGUuXG4gICAqL1xuICByZWFkb25seSBpc0Nsb3NlZDogYm9vbGVhblxuXG4gIC8qKlxuICAgKiBJbmRpY2F0ZXMgaWYgZGF0YSBpcyBsb2FkaW5nIG92ZXIgdGltZVxuICAgKi9cbiAgcmVhZG9ubHkgbG9hZGluZzogT2JzZXJ2YWJsZTxib29sZWFuPlxuXG4gIC8qKlxuICAgKiBUaGUgdG90YWwgY291bnQgb2YgYWxsIGVsZW1lbnRzIG92ZXIgdGltZVxuICAgKiAoSS5lLiB0aGUgZXhwZWN0ZWQgY291bnQgd2hlbiB0aGUgZGF0YSBjb250ZXh0IGlzIGNvbXBsZXRlZClcbiAgICovXG4gIHJlYWRvbmx5IHRvdGFsOiBPYnNlcnZhYmxlPG51bWJlciB8IHVuZGVmaW5lZD5cblxuICAvKipcbiAgICogT2JzZXJ2YWJsZSB3aGljaCBlbWl0cyB3aGVuIHRoZSBzdGF0dXMgY2hhbmdlcyAoaS5lLiBlcnJvcilcbiAgICovXG4gIHJlYWRvbmx5IHN0YXR1czogT2JzZXJ2YWJsZTxEYXRhQ29udGV4dFN0YXR1cz5cblxuICAvKipcbiAgICogR2V0cyB0aGUgc29ydCBjb250ZXh0LiBDaGFuZ2VzIGluIHRoaXMgY29udGV4dCBhcmUgcmVmbGVjdGVkIGJ5IHRoZSBkYXRhLWNvbnRleHQuXG4gICAqL1xuICByZWFkb25seSBzb3J0OiBTb3J0Q29udGV4dFxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSBmaWx0ZXIgY29udGV4dC4gQ2hhbmdlcyBpbiB0aGlzIGNvbnRleHQgYXJlIHJlZmxlY3RlZCBieSB0aGUgZGF0YS1jb250ZXh0LlxuICAgKi9cbiAgcmVhZG9ubHkgZmlsdGVyOiBGaWx0ZXJDb250ZXh0XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEFQSSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgLyoqXG4gICAqIFN0YXJ0cyBwb3B1bGF0aW5nIGRhdGEgY29udGV4dCBieSBsb2FkaW5nIGZpcnN0XG4gICAqIGJhdGNoIG9mIGRhdGEuXG4gICAqL1xuICBzdGFydChzb3J0cz86IFNvcnRbXSwgZmlsdGVycz86IEZpbHRlcltdKTogT2JzZXJ2YWJsZTxhbnk+XG5cbiAgLyoqXG4gICAqIFJlcXVlc3RzIGEgcmVsb2FkIG9mIHRoZSBjdXJyZW50IGRhdGEgLyBjaHVuay5cbiAgICogQXR0ZW1wdHMgdG8ga2VlcCB0aGUgY3VycmVudCBwb3NpdGlvbi5cbiAgICovXG4gIHJlbG9hZChyZWFzb24/OiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT5cblxuICAvKipcbiAgICogUmVmcmVzaCB0aGUgZGF0YSB2aWV3IGZyb20gdGhlIGxvY2FsIGRhdGEgbW9kZWwuIChEb2VzIG5vdCByZXF1ZXN0IG5ldyBkYXRhIGZyb20gdGhlIHNlcnZlcilcbiAgICogVXNlZnVsIGlmIHRoZSBkYXRhIG1vZGVsIGhhcyBjaGFuZ2VzIHRoYXQgbmVlZCB0byBiZSByZWZsZWN0ZWQgaW4gdGhlIFVJLlxuICAgKi9cbiAgcmVmcmVzaCgpOiB2b2lkXG5cbiAgLyoqXG4gICAqIENsb3NlcyB0aGUgZGF0YS1jb250ZXh0IGFuZCBjbGVhbnMgdXAgcmVzb3VyY2VzXG4gICAqL1xuICBjbG9zZSgpOiB2b2lkXG5cbiAgLyoqXG4gICAqIFJldHVybnMgdGhlIGl0ZW0gYnkgYSBjdXN0b20gaW5kZXgga2V5LlxuICAgKiBSZXF1aXJlcyB0aGF0IGN1c3RvbSBpbmRleCBmdW5jdGlvbmFsaXR5IGlzIGVuYWJsZWQuXG4gICAqXG4gICAqIEZvciBpZCBiYXNlZCBsb29rdXAsIHJlZmVyIHRvIGZpbmRCeUlkKCkuXG4gICAqXG4gICAqIEBwYXJhbSBrZXlcbiAgICovXG4gIGZpbmRCeUluZGV4KGtleTogYW55KTogVCB8IHVuZGVmaW5lZFxuXG4gIC8qKlxuICAgKiBMb29rdXAgYW4gZW50aXR5IGJ5IGl0cyBpZC4gVGhpcyBtZXRob2QgaXMgZ3VhcmFudGVlZCB0byBiZSBiYWNrZWQgYnkgYSBmYXN0IGluZGV4LlxuICAgKiBAcGFyYW0gaWQgVGhlIEVudGl0eSBJZC5cbiAgICovXG4gIGZpbmRCeUlkKGlkOiBhbnkpOiBUIHwgdW5kZWZpbmVkXG5cbiAgLyoqXG4gICAqIFVwZGF0ZSB0aGUgZ2l2ZW4gZW50aXRpZXMgaW4gdGhpcyBkYXRhLWNvbnRleHRcbiAgICovXG4gIHVwZGF0ZShlbnRpdGllczogVFtdKTogdm9pZFxufVxuXG4vKipcbiAqIFJlcHJlc2VudHMgYSBkYXRhLWNvbnRleHQgd2hpY2ggYmFja3MgYSBpbmZpbml0ZSBsaWtlIGRhdGEgc3RyZWFtXG4gKiB3aGVyZSBtb3JlIGRhdGEgd2lsbCBiZSBsb2FkZWQgYW5kIGFkZGVkIHRvIHRoZSBiYWNraW5nIHJvd3MuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSURhdGFDb250ZXh0Q29udGludWFibGU8VD4gZXh0ZW5kcyBJRGF0YUNvbnRleHQ8VD4ge1xuICAvKipcbiAgICogUmV0dXJucyB0cnVlIGlmIHRoaXMgZGF0YS1jb250ZXh0IGNhbiBsb2FkIG1vcmUgZGF0YVxuICAgKi9cbiAgcmVhZG9ubHkgaGFzTW9yZURhdGFTbmFwc2hvdDogYm9vbGVhblxuXG4gIC8qKlxuICAgKiBSZXR1cm5zIHRydWUgaWYgdGhpcyBkYXRhLWNvbnRleHQgY2FuIGxvYWQgbW9yZSBkYXRhIG92ZXIgdGltZVxuICAgKi9cbiAgcmVhZG9ubHkgaGFzTW9yZURhdGE6IE9ic2VydmFibGU8Ym9vbGVhbj5cblxuICAvKipcbiAgICogTG9hZHMgbW9yZSBkYXRhIGlmIGFueSBhdmFpbGFibGUuXG4gICAqIEUuZy4gbmV4dCBwYWdlLlxuICAgKlxuICAgKi9cbiAgbG9hZE1vcmUoKTogT2JzZXJ2YWJsZTxhbnk+XG5cbiAgLyoqXG4gICAqIExvYWRzIGFsbCBhdmFpbGFibGUgZGF0YS4gSW4gY2FzZSBvZlxuICAgKiBwYWdlZCBjb250ZXh0IGxvYWRzIHBhZ2UgYnkgcGFnZSB1bnRpbCBmaW5pc2hlZC5cbiAgICovXG4gIGxvYWRBbGwoc29ydHM/OiBTb3J0W10sIGZpbHRlcnM/OiBGaWx0ZXJbXSk6IHZvaWRcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJRGF0YUNvbnRleHRBY3RpdmVQYWdlPFQ+IGV4dGVuZHMgSURhdGFDb250ZXh0PFQ+IHtcbiAgLyoqXG4gICAqIEdldHMgdGhlIGFjdGl2ZSBwYWdlIG92ZXIgdGltZVxuICAgKi9cbiAgcmVhZG9ubHkgcGFnZTogT2JzZXJ2YWJsZTxQYWdlUmVxdWVzdD5cblxuICAvKipcbiAgICogR2V0cyB0aGUgY3VycmVudCBhY3RpdmUgcGFnZVxuICAgKi9cbiAgcmVhZG9ubHkgcGFnZVNuYXBzaG90OiBQYWdlUmVxdWVzdFxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBhY3RpdmUgcGFnZVxuICAgKi9cbiAgc2V0QWN0aXZlUGFnZShwYWdlOiBQYWdlUmVxdWVzdCk6IHZvaWRcbn1cblxuLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICogVHlwZSBQcmVkaWNhdGVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG5leHBvcnQgZnVuY3Rpb24gaXNEYXRhQ29udGV4dChvYmplY3Q6IGFueSk6IG9iamVjdCBpcyBJRGF0YUNvbnRleHQ8YW55PiB7XG4gIGlmICghb2JqZWN0KSB7XG4gICAgcmV0dXJuIGZhbHNlXG4gIH1cblxuICByZXR1cm4gKFxuICAgIChvYmplY3QgYXMgSURhdGFDb250ZXh0PGFueT4pLmRhdGEgIT09IHVuZGVmaW5lZCAmJlxuICAgIChvYmplY3QgYXMgSURhdGFDb250ZXh0PGFueT4pLnN0YXJ0ICE9PSB1bmRlZmluZWQgJiZcbiAgICAob2JqZWN0IGFzIElEYXRhQ29udGV4dDxhbnk+KS5yZWxvYWQgIT09IHVuZGVmaW5lZCAmJlxuICAgIChvYmplY3QgYXMgSURhdGFDb250ZXh0PGFueT4pLnJlZnJlc2ggIT09IHVuZGVmaW5lZFxuICApXG59XG5cbmV4cG9ydCBmdW5jdGlvbiBpc0NvbnRpbnVhYmxlRGF0YUNvbnRleHQoXG4gIG9iamVjdDogSURhdGFDb250ZXh0PGFueT5cbik6IG9iamVjdCBpcyBJRGF0YUNvbnRleHRDb250aW51YWJsZTxhbnk+IHtcbiAgcmV0dXJuIChvYmplY3QgYXMgSURhdGFDb250ZXh0Q29udGludWFibGU8YW55PikubG9hZE1vcmUgIT09IHVuZGVmaW5lZFxufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNBY3RpdmVQYWdlZERhdGFDb250ZXh0KFxuICBvYmplY3Q6IElEYXRhQ29udGV4dDxhbnk+XG4pOiBvYmplY3QgaXMgSURhdGFDb250ZXh0QWN0aXZlUGFnZTxhbnk+IHtcbiAgcmV0dXJuIChvYmplY3QgYXMgSURhdGFDb250ZXh0QWN0aXZlUGFnZTxhbnk+KS5zZXRBY3RpdmVQYWdlICE9PSB1bmRlZmluZWRcbn1cbiJdfQ==
@@ -53,7 +53,7 @@ export class IndexedEntities {
53
53
  */
54
54
  updateSome(updated) {
55
55
  const newData = [...this.entitiesSnapshot];
56
- updated.forEach(update => {
56
+ updated.forEach((update) => {
57
57
  const id = this.getItemId(update);
58
58
  const index = this.indexById(id);
59
59
  if (index != -1) {
@@ -139,4 +139,4 @@ export class IndexedEntities {
139
139
  }
140
140
  }
141
141
  }
142
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXhlZC1lbnRpdGllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbW1vbi9kYXRhL2RhdGEtY29udGV4dC9pbmRleGVkLWVudGl0aWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxlQUFlLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFHakQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBRW5ELE1BQU0sT0FBTyxlQUFlO0lBYTFCOzs7O2dGQUk0RTtJQUU1RSxZQUNtQixJQUFtQixFQUNuQixXQUE0RCxFQUM1RCxXQUF3QjtRQUZ4QixTQUFJLEdBQUosSUFBSSxDQUFlO1FBQ25CLGdCQUFXLEdBQVgsV0FBVyxDQUFpRDtRQUM1RCxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQXBCM0M7Ozs7b0ZBSTRFO1FBRTNELFFBQUcsR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLGlCQUFpQixDQUFDLENBQUM7UUFFakQsZUFBVSxHQUFHLElBQUksZUFBZSxDQUFNLEVBQUUsQ0FBQyxDQUFDO1FBQzFDLG9CQUFlLEdBQUcsSUFBSSxHQUFHLEVBQWUsQ0FBQztJQVl0RCxDQUFDO0lBRUw7Ozs7Z0ZBSTRFO0lBRTVFLElBQVcsU0FBUztRQUNsQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVELElBQVcsZ0JBQWdCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRTVFOzs7T0FHRztJQUNJLFVBQVUsQ0FBQyxjQUFtQixFQUFFO1FBQ3JDLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3JCLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFdB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RUFBRSxDQUFDLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRU8sV0FBVyxDQUFDLFFBQWEsRUFBRSxVQUFrQjtRQUNuRCxLQUFLLElBQUksQ0FBQyxHQUFHLFVBQVUsRUFBRSxDQUFDLEdBQUcsUUFBUSxDQUFDLE1BQU0sRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDO1lBQ2xELE1BQU0sTUFBTSxHQUFHLFFBQVEsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMzQixJQUFJLE1BQU0sRUFBRSxDQUFDO2dCQUNYLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDdEQsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRU8sU0FBUyxDQUFDLEVBQU87UUFDdkIsT0FBTyxJQUFJLENBQUMsZUFBZSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRU8sU0FBUyxDQUFDLElBQU87UUFDdkIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3pCLENBQUM7SUFFTyxXQUFXLENBQUMsUUFBYTtRQUMvQixJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxLQUFLLENBQUMsSUFBSSxRQUFRLENBQUMsTUFBTSxLQUFLLENBQUMsQ0FBQyxFQUFFLENBQUM7WUFDbkUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsb0JBQW9CLEdBQUcsUUFBUSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQztZQUNqRSxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNqQyxDQUFDO0lBQ0gsQ0FBQztDQUVGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGV9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtTb3J0fSBmcm9tICcuLi9zb3J0JztcbmltcG9ydCB7U29ydENvbnRleHR9IGZyb20gJy4uL3NvcnQtY29udGV4dCc7XG5pbXBvcnQge0xvZ2dlckZhY3Rvcnl9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJztcblxuZXhwb3J0IGNsYXNzIEluZGV4ZWRFbnRpdGllczxULCBUSWQ9YW55PiB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcignSW5kZXhlZEVudGl0aWVzJyk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfZW50aXRpZXMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxUW10+KFtdKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfaWRUb0FycmF5SW5kZXggPSBuZXcgTWFwPFRJZCwgbnVtYmVyPigpO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaWRGbjogKGU6IFQpID0+IFRJZCxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxvY2FsU29ydEZuOiAoKGRhdGE6IFRbXSwgc29ydHM6IFNvcnRbXSkgPT4gVFtdKSB8IHVuZGVmaW5lZCxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNvcnRDb250ZXh0OiBTb3J0Q29udGV4dFxuICApIHsgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQcm9wZXJ0aWVzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBnZXQgZW50aXRpZXMkKCk6IE9ic2VydmFibGU8VFtdPiB7XG4gICAgcmV0dXJuIHRoaXMuX2VudGl0aWVzJC5hc09ic2VydmFibGUoKTtcbiAgfVxuXG4gIHB1YmxpYyBnZXQgZW50aXRpZXNTbmFwc2hvdCgpOiBUW10ge1xuICAgIHJldHVybiB0aGlzLl9lbnRpdGllcyQuZ2V0VmFsdWUoKTtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBSZXBsYWNlcyBhbGwgZXhpc3RpbmcgZW50aXRpZXMgd2l0aCB0aGUgbmV3IG9uZXMuXG4gICAqIFRoZSBpbmRleCBpcyByZWJ1aWx0LiBPKG4pXG4gICAqL1xuICBwdWJsaWMgcmVwbGFjZUFsbChuZXdFbnRpdGllczogVFtdID0gW10pIHtcbiAgICBpZiAodGhpcy5sb2NhbFNvcnRGbikge1xuICAgICAgbmV3RW50aXRpZXMgPSB0aGlzLmxvY2FsU29ydEZuKG5ld0VudGl0aWVzLCB0aGlzLnNvcnRDb250ZXh0LnNvcnRzU25hcHNob3QpO1xuICAgIH1cbiAgICB0aGlzLnJlYnVpbGRJbmRleChuZXdFbnRpdGllcyk7XG4gICAgdGhpcy5zZXRFbnRpdGllcyhuZXdFbnRpdGllcyk7XG4gIH1cblxuICAvKipcbiAgICogS2VlcHMgYWxsIGV4aXN0aW5nIGVudGl0aWVzLCBidXQgcmVwbGFjZXMgdGhvc2Ugd2hpY2ggYXJlIHVwZGF0ZWQgd2l0aCB0aGUgbmV3IGRhdGEuXG4gICAqIFByb3ZpZGVkIHVwZGF0ZWQgZW50aXRpZXMgd2hpY2ggYXJlIGN1cnJlbnRseSBub3QgaW4gdGhpcyBpbmRleCBhcmUgaWdub3JlZC5cbiAgICogQHBhcmFtIHVwZGF0ZWRcbiAgICovXG4gIHB1YmxpYyB1cGRhdGVTb21lKHVwZGF0ZWQ6IFRbXSkge1xuICAgIGNvbnN0IG5ld0RhdGEgPSBbLi4udGhpcy5lbnRpdGllc1NuYXBzaG90XTtcbiAgICB1cGRhdGVkLmZvckVhY2goXG4gICAgICB1cGRhdGUgPT4ge1xuICAgICAgICBjb25zdCBpZCA9IHRoaXMuZ2V0SXRlbUlkKHVwZGF0ZSk7XG4gICAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5pbmRleEJ5SWQoaWQpO1xuICAgICAgICBpZiAoaW5kZXggIT0gLTEpIHtcbiAgICAgICAgICBuZXdEYXRhW2luZGV4XSA9IHVwZGF0ZTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgICk7XG4gICAgdGhpcy5zZXRFbnRpdGllcyhuZXdEYXRhKTtcbiAgfVxuXG5cbiAgcHVibGljIGFwcGVuZChhcHBlbmQ6IFRbXSk6IHZvaWQge1xuICAgIHRoaXMuaW5zZXJ0KGFwcGVuZCwgdGhpcy5lbnRpdGllc1NuYXBzaG90Lmxlbmd0aCk7XG4gIH1cblxuICAvKipcbiAgICogQXBwZW5kcyB0aGUgZ2l2ZW4gZW50aXRpZXMgdG8gdGhpcyBpbmRleC5cbiAgICogVGhlIG5ldyBhcHBlbmRlZCBlbnRpdGllcyBhcmUgaW5jbHVkZWQgaW4gdGhlIGluZGV4LlxuICAgKiBPKG4pIHdoZXJlIG4gPSBudW1iZXIgb2YgYXBwZW5kZWQgZW50aXRpZXNcbiAgICogQHBhcmFtIGluc2VydGVkXG4gICAqIEBwYXJhbSBvZmZzZXRcbiAgICovXG4gIHB1YmxpYyBpbnNlcnQoaW5zZXJ0ZWQ6IFRbXSwgb2Zmc2V0OiBudW1iZXIpOiB2b2lkIHtcbiAgICBpZiAoaW5zZXJ0ZWQgJiYgaW5zZXJ0ZWQubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3QgZW50aXRpZXMgPSB0aGlzLmVudGl0aWVzU25hcHNob3Q7XG4gICAgICBjb25zdCBuZXdEYXRhID0gWy4uLmVudGl0aWVzXTtcblxuICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBpbnNlcnRlZC5sZW5ndGg7IGkrKykge1xuICAgICAgICBuZXdEYXRhW2kgKyBvZmZzZXRdID0gaW5zZXJ0ZWRbaV07XG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLmxvY2FsU29ydEZuKSB7XG4gICAgICAgIC8vIGxvY2FsIHNvcnQgY2FuIHJlLW9yZGVyIGFsbCBpdGVtc1xuICAgICAgICB0aGlzLnJlcGxhY2VBbGwobmV3RGF0YSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBXaXRob3V0IGEgc29ydCwgd2UgY2FuIG9wdGltaXplIGluZGV4aW5nXG4gICAgICAgIHRoaXMucmVJbmRleEZyb20obmV3RGF0YSwgb2Zmc2V0KTtcbiAgICAgICAgdGhpcy5zZXRFbnRpdGllcyhuZXdEYXRhKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTG9va3VwIGFuIGVudGl0eSBieSBpdHMgaWQuXG4gICAqIFRoaXMgd2lsbCB1c2UgYW4gaW5kZXggTygxKVxuICAgKiBAcGFyYW0gaWRcbiAgICovXG4gIHB1YmxpYyBnZXRCeUlkKGlkOiBUSWQpOiBUIHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBlbnRpdGllcyA9IHRoaXMuZW50aXRpZXNTbmFwc2hvdDtcbiAgICBjb25zdCBpbmRleCA9IHRoaXMuaW5kZXhCeUlkKGlkKTtcbiAgICBpZiAoaW5kZXggIT0gLTEpIHtcbiAgICAgIHJldHVybiBlbnRpdGllc1tpbmRleF07XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5vdGlmeSgpOiB2b2lkIHtcbiAgICB0aGlzLl9lbnRpdGllcyQubmV4dChcbiAgICAgIHRoaXMuX2VudGl0aWVzJC5nZXRWYWx1ZSgpXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBkZXN0cm95KCkge1xuICAgIHRoaXMuX2VudGl0aWVzJC5jb21wbGV0ZSgpO1xuICAgIHRoaXMuX2lkVG9BcnJheUluZGV4LmNsZWFyKCk7XG4gIH1cblxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYnVpbGRJbmRleChlbnRpdGllczogVFtdKTogdm9pZCB7XG4gICAgdGhpcy5faWRUb0FycmF5SW5kZXguY2xlYXIoKTtcbiAgICB0aGlzLnJlSW5kZXhGcm9tKGVudGl0aWVzLCAwKTtcbiAgfVxuXG4gIHByaXZhdGUgcmVJbmRleEZyb20oZW50aXRpZXM6IFRbXSwgc3RhcnRJbmRleDogbnVtYmVyKSB7XG4gICAgZm9yIChsZXQgaSA9IHN0YXJ0SW5kZXg7IGkgPCBlbnRpdGllcy5sZW5ndGg7IGkrKykge1xuICAgICAgY29uc3QgZW50aXR5ID0gZW50aXRpZXNbaV07XG4gICAgICBpZiAoZW50aXR5KSB7XG4gICAgICAgIHRoaXMuX2lkVG9BcnJheUluZGV4LnNldCh0aGlzLmdldEl0ZW1JZChlbnRpdHkpLCBpKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGluZGV4QnlJZChpZDogVElkKTogbnVtYmVyIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5faWRUb0FycmF5SW5kZXguZ2V0KGlkKSA/PyAtMTtcbiAgfVxuXG4gIHByaXZhdGUgZ2V0SXRlbUlkKGl0ZW06IFQpOiBUSWQge1xuICAgIHJldHVybiB0aGlzLmlkRm4oaXRlbSk7XG4gIH1cblxuICBwcml2YXRlIHNldEVudGl0aWVzKGVudGl0aWVzOiBUW10pOiB2b2lkIHtcbiAgICBpZiAoISh0aGlzLmVudGl0aWVzU25hcHNob3QubGVuZ3RoID09PSAwICYmIGVudGl0aWVzLmxlbmd0aCA9PT0gMCkpIHtcbiAgICAgIHRoaXMubG9nLmRlYnVnKCdFbnRpdGllcyBjaGFuZ2VkOiAnICsgZW50aXRpZXMubGVuZ3RoLCBlbnRpdGllcyk7XG4gICAgICB0aGlzLl9lbnRpdGllcyQubmV4dChlbnRpdGllcyk7XG4gICAgfVxuICB9XG5cbn1cbiJdfQ==
142
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXhlZC1lbnRpdGllcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbW1vbi9kYXRhL2RhdGEtY29udGV4dC9pbmRleGVkLWVudGl0aWVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUE7QUFHbEQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBRXBELE1BQU0sT0FBTyxlQUFlO0lBWTFCOzs7O2dGQUk0RTtJQUU1RSxZQUNtQixJQUFtQixFQUNuQixXQUE0RCxFQUM1RCxXQUF3QjtRQUZ4QixTQUFJLEdBQUosSUFBSSxDQUFlO1FBQ25CLGdCQUFXLEdBQVgsV0FBVyxDQUFpRDtRQUM1RCxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQXBCM0M7Ozs7b0ZBSTRFO1FBRTNELFFBQUcsR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLGlCQUFpQixDQUFDLENBQUE7UUFFaEQsZUFBVSxHQUFHLElBQUksZUFBZSxDQUFNLEVBQUUsQ0FBQyxDQUFBO1FBQ3pDLG9CQUFlLEdBQUcsSUFBSSxHQUFHLEVBQWUsQ0FBQTtJQVl0RCxDQUFDO0lBRUo7Ozs7Z0ZBSTRFO0lBRTVFLElBQVcsU0FBUztRQUNsQixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxFQUFFLENBQUE7SUFDdkMsQ0FBQztJQUVELElBQVcsZ0JBQWdCO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQTtJQUNuQyxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRTVFOzs7T0FHRztJQUNJLFVBQVUsQ0FBQyxjQUFtQixFQUFFO1FBQ3JDLElBQUksSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3JCLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLFdB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UUFBUSxFQUFFLENBQUMsQ0FBQyxDQUFBO0lBQy9CLENBQUM7SUFFTyxXQUFXLENBQUMsUUFBYSxFQUFFLFVBQWtCO1FBQ25ELEtBQUssSUFBSSxDQUFDLEdBQUcsVUFBVSxFQUFFLENBQUMsR0FBRyxRQUFRLENBQUMsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUM7WUFDbEQsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFBO1lBQzFCLElBQUksTUFBTSxFQUFFLENBQUM7Z0JBQ1gsSUFBSSxDQUFDLGVBQWUsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQTtZQUNyRCxDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFTyxTQUFTLENBQUMsRUFBTztRQUN2QixPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFBO0lBQzNDLENBQUM7SUFFTyxTQUFTLENBQUMsSUFBTztRQUN2QixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDeEIsQ0FBQztJQUVPLFdBQVcsQ0FBQyxRQUFhO1FBQy9CLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEtBQUssQ0FBQyxJQUFJLFFBQVEsQ0FBQyxNQUFNLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNuRSxJQUFJLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxvQkFBb0IsR0FBRyxRQUFRLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxDQUFBO1lBQ2hFLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFBO1FBQ2hDLENBQUM7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgU29ydCB9IGZyb20gJy4uL3NvcnQnXG5pbXBvcnQgeyBTb3J0Q29udGV4dCB9IGZyb20gJy4uL3NvcnQtY29udGV4dCdcbmltcG9ydCB7IExvZ2dlckZhY3RvcnkgfSBmcm9tICdAZWxkZXJieXRlL3RzLWxvZ2dlcidcblxuZXhwb3J0IGNsYXNzIEluZGV4ZWRFbnRpdGllczxULCBUSWQgPSBhbnk+IHtcbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2cgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcignSW5kZXhlZEVudGl0aWVzJylcblxuICBwcml2YXRlIHJlYWRvbmx5IF9lbnRpdGllcyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PFRbXT4oW10pXG4gIHByaXZhdGUgcmVhZG9ubHkgX2lkVG9BcnJheUluZGV4ID0gbmV3IE1hcDxUSWQsIG51bWJlcj4oKVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgaWRGbjogKGU6IFQpID0+IFRJZCxcbiAgICBwcml2YXRlIHJlYWRvbmx5IGxvY2FsU29ydEZuOiAoKGRhdGE6IFRbXSwgc29ydHM6IFNvcnRbXSkgPT4gVFtdKSB8IHVuZGVmaW5lZCxcbiAgICBwcml2YXRlIHJlYWRvbmx5IHNvcnRDb250ZXh0OiBTb3J0Q29udGV4dFxuICApIHt9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByb3BlcnRpZXMgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIGdldCBlbnRpdGllcyQoKTogT2JzZXJ2YWJsZTxUW10+IHtcbiAgICByZXR1cm4gdGhpcy5fZW50aXRpZXMkLmFzT2JzZXJ2YWJsZSgpXG4gIH1cblxuICBwdWJsaWMgZ2V0IGVudGl0aWVzU25hcHNob3QoKTogVFtdIHtcbiAgICByZXR1cm4gdGhpcy5fZW50aXRpZXMkLmdldFZhbHVlKClcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIC8qKlxuICAgKiBSZXBsYWNlcyBhbGwgZXhpc3RpbmcgZW50aXRpZXMgd2l0aCB0aGUgbmV3IG9uZXMuXG4gICAqIFRoZSBpbmRleCBpcyByZWJ1aWx0LiBPKG4pXG4gICAqL1xuICBwdWJsaWMgcmVwbGFjZUFsbChuZXdFbnRpdGllczogVFtdID0gW10pIHtcbiAgICBpZiAodGhpcy5sb2NhbFNvcnRGbikge1xuICAgICAgbmV3RW50aXRpZXMgPSB0aGlzLmxvY2FsU29ydEZuKG5ld0VudGl0aWVzLCB0aGlzLnNvcnRDb250ZXh0LnNvcnRzU25hcHNob3QpXG4gICAgfVxuICAgIHRoaXMucmVidWlsZEluZGV4KG5ld0VudGl0aWVzKVxuICAgIHRoaXMuc2V0RW50aXRpZXMobmV3RW50aXRpZXMpXG4gIH1cblxuICAvKipcbiAgICogS2VlcHMgYWxsIGV4aXN0aW5nIGVudGl0aWVzLCBidXQgcmVwbGFjZXMgdGhvc2Ugd2hpY2ggYXJlIHVwZGF0ZWQgd2l0aCB0aGUgbmV3IGRhdGEuXG4gICAqIFByb3ZpZGVkIHVwZGF0ZWQgZW50aXRpZXMgd2hpY2ggYXJlIGN1cnJlbnRseSBub3QgaW4gdGhpcyBpbmRleCBhcmUgaWdub3JlZC5cbiAgICogQHBhcmFtIHVwZGF0ZWRcbiAgICovXG4gIHB1YmxpYyB1cGRhdGVTb21lKHVwZGF0ZWQ6IFRbXSkge1xuICAgIGNvbnN0IG5ld0RhdGEgPSBbLi4udGhpcy5lbnRpdGllc1NuYXBzaG90XVxuICAgIHVwZGF0ZWQuZm9yRWFjaCgodXBkYXRlKSA9PiB7XG4gICAgICBjb25zdCBpZCA9IHRoaXMuZ2V0SXRlbUlkKHVwZGF0ZSlcbiAgICAgIGNvbnN0IGluZGV4ID0gdGhpcy5pbmRleEJ5SWQoaWQpXG4gICAgICBpZiAoaW5kZXggIT0gLTEpIHtcbiAgICAgICAgbmV3RGF0YVtpbmRleF0gPSB1cGRhdGVcbiAgICAgIH1cbiAgICB9KVxuICAgIHRoaXMuc2V0RW50aXRpZXMobmV3RGF0YSlcbiAgfVxuXG4gIHB1YmxpYyBhcHBlbmQoYXBwZW5kOiBUW10pOiB2b2lkIHtcbiAgICB0aGlzLmluc2VydChhcHBlbmQsIHRoaXMuZW50aXRpZXNTbmFwc2hvdC5sZW5ndGgpXG4gIH1cblxuICAvKipcbiAgICogQXBwZW5kcyB0aGUgZ2l2ZW4gZW50aXRpZXMgdG8gdGhpcyBpbmRleC5cbiAgICogVGhlIG5ldyBhcHBlbmRlZCBlbnRpdGllcyBhcmUgaW5jbHVkZWQgaW4gdGhlIGluZGV4LlxuICAgKiBPKG4pIHdoZXJlIG4gPSBudW1iZXIgb2YgYXBwZW5kZWQgZW50aXRpZXNcbiAgICogQHBhcmFtIGluc2VydGVkXG4gICAqIEBwYXJhbSBvZmZzZXRcbiAgICovXG4gIHB1YmxpYyBpbnNlcnQoaW5zZXJ0ZWQ6IFRbXSwgb2Zmc2V0OiBudW1iZXIpOiB2b2lkIHtcbiAgICBpZiAoaW5zZXJ0ZWQgJiYgaW5zZXJ0ZWQubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3QgZW50aXRpZXMgPSB0aGlzLmVudGl0aWVzU25hcHNob3RcbiAgICAgIGNvbnN0IG5ld0RhdGEgPSBbLi4uZW50aXRpZXNdXG5cbiAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgaW5zZXJ0ZWQubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgbmV3RGF0YVtpICsgb2Zmc2V0XSA9IGluc2VydGVkW2ldXG4gICAgICB9XG5cbiAgICAgIGlmICh0aGlzLmxvY2FsU29ydEZuKSB7XG4gICAgICAgIC8vIGxvY2FsIHNvcnQgY2FuIHJlLW9yZGVyIGFsbCBpdGVtc1xuICAgICAgICB0aGlzLnJlcGxhY2VBbGwobmV3RGF0YSlcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIC8vIFdpdGhvdXQgYSBzb3J0LCB3ZSBjYW4gb3B0aW1pemUgaW5kZXhpbmdcbiAgICAgICAgdGhpcy5yZUluZGV4RnJvbShuZXdEYXRhLCBvZmZzZXQpXG4gICAgICAgIHRoaXMuc2V0RW50aXRpZXMobmV3RGF0YSlcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTG9va3VwIGFuIGVudGl0eSBieSBpdHMgaWQuXG4gICAqIFRoaXMgd2lsbCB1c2UgYW4gaW5kZXggTygxKVxuICAgKiBAcGFyYW0gaWRcbiAgICovXG4gIHB1YmxpYyBnZXRCeUlkKGlkOiBUSWQpOiBUIHwgdW5kZWZpbmVkIHtcbiAgICBjb25zdCBlbnRpdGllcyA9IHRoaXMuZW50aXRpZXNTbmFwc2hvdFxuICAgIGNvbnN0IGluZGV4ID0gdGhpcy5pbmRleEJ5SWQoaWQpXG4gICAgaWYgKGluZGV4ICE9IC0xKSB7XG4gICAgICByZXR1cm4gZW50aXRpZXNbaW5kZXhdXG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5vdGlmeSgpOiB2b2lkIHtcbiAgICB0aGlzLl9lbnRpdGllcyQubmV4dCh0aGlzLl9lbnRpdGllcyQuZ2V0VmFsdWUoKSlcbiAgfVxuXG4gIHB1YmxpYyBkZXN0cm95KCkge1xuICAgIHRoaXMuX2VudGl0aWVzJC5jb21wbGV0ZSgpXG4gICAgdGhpcy5faWRUb0FycmF5SW5kZXguY2xlYXIoKVxuICB9XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWJ1aWxkSW5kZXgoZW50aXRpZXM6IFRbXSk6IHZvaWQge1xuICAgIHRoaXMuX2lkVG9BcnJheUluZGV4LmNsZWFyKClcbiAgICB0aGlzLnJlSW5kZXhGcm9tKGVudGl0aWVzLCAwKVxuICB9XG5cbiAgcHJpdmF0ZSByZUluZGV4RnJvbShlbnRpdGllczogVFtdLCBzdGFydEluZGV4OiBudW1iZXIpIHtcbiAgICBmb3IgKGxldCBpID0gc3RhcnRJbmRleDsgaSA8IGVudGl0aWVzLmxlbmd0aDsgaSsrKSB7XG4gICAgICBjb25zdCBlbnRpdHkgPSBlbnRpdGllc1tpXVxuICAgICAgaWYgKGVudGl0eSkge1xuICAgICAgICB0aGlzLl9pZFRvQXJyYXlJbmRleC5zZXQodGhpcy5nZXRJdGVtSWQoZW50aXR5KSwgaSlcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGluZGV4QnlJZChpZDogVElkKTogbnVtYmVyIHwgdW5kZWZpbmVkIHtcbiAgICByZXR1cm4gdGhpcy5faWRUb0FycmF5SW5kZXguZ2V0KGlkKSA/PyAtMVxuICB9XG5cbiAgcHJpdmF0ZSBnZXRJdGVtSWQoaXRlbTogVCk6IFRJZCB7XG4gICAgcmV0dXJuIHRoaXMuaWRGbihpdGVtKVxuICB9XG5cbiAgcHJpdmF0ZSBzZXRFbnRpdGllcyhlbnRpdGllczogVFtdKTogdm9pZCB7XG4gICAgaWYgKCEodGhpcy5lbnRpdGllc1NuYXBzaG90Lmxlbmd0aCA9PT0gMCAmJiBlbnRpdGllcy5sZW5ndGggPT09IDApKSB7XG4gICAgICB0aGlzLmxvZy5kZWJ1ZygnRW50aXRpZXMgY2hhbmdlZDogJyArIGVudGl0aWVzLmxlbmd0aCwgZW50aXRpZXMpXG4gICAgICB0aGlzLl9lbnRpdGllcyQubmV4dChlbnRpdGllcylcbiAgICB9XG4gIH1cbn1cbiJdfQ==
@@ -72,8 +72,10 @@ export class MatTableDataContextBinding {
72
72
  }
73
73
  }
74
74
  bindDataContextToMatSortsUntil(matSorts$, destroy$) {
75
- const dcSorts$ = this._dataContext$.pipe(filter(dc => !!dc), switchMap(dc => dc.sort.sorts));
76
- combineLatest([dcSorts$, matSorts$]).pipe(takeUntil(destroy$)).subscribe(([dcSorts, matSorts]) => {
75
+ const dcSorts$ = this._dataContext$.pipe(filter((dc) => !!dc), switchMap((dc) => dc.sort.sorts));
76
+ combineLatest([dcSorts$, matSorts$])
77
+ .pipe(takeUntil(destroy$))
78
+ .subscribe(([dcSorts, matSorts]) => {
77
79
  if (dcSorts.length >= 1) {
78
80
  // At least one sort active
79
81
  const sort = dcSorts[0];
@@ -88,7 +90,7 @@ export class MatTableDataContextBinding {
88
90
  updateMatSorts(dcSort, matSorts) {
89
91
  const active = dcSort.prop;
90
92
  const direction = this.toMatDirection(dcSort.dir);
91
- matSorts.forEach(matSort => this.updateMatSort(active, direction, matSort));
93
+ matSorts.forEach((matSort) => this.updateMatSort(active, direction, matSort));
92
94
  }
93
95
  updateMatSort(activeProp, direction, matSort) {
94
96
  if (activeProp) {
@@ -105,18 +107,22 @@ export class MatTableDataContextBinding {
105
107
  }
106
108
  }
107
109
  bindMatSortsToDataContextUntil(sorts$, destroy$) {
108
- const sortChanges$ = sorts$.pipe(mergeMap(sorts => merge(...sorts.map(s => s.sortChange))), map(matSort => {
110
+ const sortChanges$ = sorts$.pipe(mergeMap((sorts) => merge(...sorts.map((s) => s.sortChange))), map((matSort) => {
109
111
  return new Sort(matSort.active, this.fromMatDirection(matSort.direction));
110
112
  }));
111
- combineLatest([this._dataContext$, sortChanges$]).pipe(takeUntil(destroy$)).subscribe(([dc, sortRequest]) => {
113
+ combineLatest([this._dataContext$, sortChanges$])
114
+ .pipe(takeUntil(destroy$))
115
+ .subscribe(([dc, sortRequest]) => {
112
116
  if (dc) {
113
117
  dc.sort.updateSort(sortRequest);
114
118
  }
115
119
  });
116
120
  }
117
121
  bindPaginatorUntil(paginator$, destroy$) {
118
- const pageRequest$ = paginator$.pipe(filter(paginator => !!paginator), switchMap(paginator => paginator.page), map(pageEvent => new PageRequest(pageEvent.pageIndex, pageEvent.pageSize)));
119
- combineLatest([this._dataContext$, pageRequest$]).pipe(takeUntil(destroy$)).subscribe(([dc, pageRequest]) => {
122
+ const pageRequest$ = paginator$.pipe(filter((paginator) => !!paginator), switchMap((paginator) => paginator.page), map((pageEvent) => new PageRequest(pageEvent.pageIndex, pageEvent.pageSize)));
123
+ combineLatest([this._dataContext$, pageRequest$])
124
+ .pipe(takeUntil(destroy$))
125
+ .subscribe(([dc, pageRequest]) => {
120
126
  if (dc) {
121
127
  if (isActivePagedDataContext(dc)) {
122
128
  const pagedDc = dc;
@@ -136,4 +142,4 @@ export class MatTableDataContextBinding {
136
142
  return matSortDirection;
137
143
  }
138
144
  }
139
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0LXRhYmxlLWRhdGEtY29udGV4dC1iaW5kaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tbW9uL2RhdGEvZGF0YS1jb250ZXh0L21hdC10YWJsZS1kYXRhLWNvbnRleHQtYmluZGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQXVDLHdCQUF3QixFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUYsT0FBTyxFQUFDLGFBQWEsRUFBRSxLQUFLLEVBQWEsTUFBTSxNQUFNLENBQUM7QUFDdEQsT0FBTyxFQUFDLGFBQWEsRUFBQyxNQUFNLHNCQUFzQixDQUFDO0FBQ25ELE9BQU8sRUFBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDM0UsT0FBTyxFQUFDLElBQUksRUFBZ0IsTUFBTSxTQUFTLENBQUM7QUFDNUMsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLFNBQVMsQ0FBQztBQUdwQyxNQUFNLE9BQU8saUNBQWlDO0lBYzVDOzs7O2dGQUk0RTtJQUVyRSxNQUFNLENBQUMsS0FBSyxDQUFDLFlBQTJDO1FBQzdELE9BQU8sSUFBSSxpQ0FBaUMsQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUM3RCxDQUFDO0lBRUQsWUFBWSxZQUEyQztRQXRCdkQ7Ozs7b0ZBSTRFO1FBRTNELFdBQU0sR0FBRyxhQUFhLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLENBQUM7UUFpQnZFLElBQUksQ0FBQyxhQUFhLEdBQUcsWUFBWSxDQUFDO0lBQ3BDLENBQUM7SUFFRDs7OztnRkFJNEU7SUFFckUsU0FBUyxDQUFDLE1BQTZCO1FBQzVDLElBQUksQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1FBQ3RCLE9BQU8sSUFB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QztJQUVPLGNBQWMsQ0FBQyxTQUF3QjtRQUM3QyxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRU8sZ0JBQWdCLENBQUMsZ0JBQWtDO1FBQ3pELE9BQU8sZ0JBQWdCLENBQUM7SUFDMUIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtNYXRQYWdpbmF0b3J9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvcic7XG5pbXBvcnQge01hdFNvcnQsIFNvcnREaXJlY3Rpb24gYXMgTWF0U29ydERpcmVjdGlvbn0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc29ydCc7XG5pbXBvcnQge0lEYXRhQ29udGV4dCwgSURhdGFDb250ZXh0QWN0aXZlUGFnZSwgaXNBY3RpdmVQYWdlZERhdGFDb250ZXh0fSBmcm9tICcuL2RhdGEtY29udGV4dCc7XG5pbXBvcnQge2NvbWJpbmVMYXRlc3QsIG1lcmdlLCBPYnNlcnZhYmxlfSBmcm9tICdyeGpzJztcbmltcG9ydCB7TG9nZ2VyRmFjdG9yeX0gZnJvbSAnQGVsZGVyYnl0ZS90cy1sb2dnZXInO1xuaW1wb3J0IHtmaWx0ZXIsIG1hcCwgbWVyZ2VNYXAsIHN3aXRjaE1hcCwgdGFrZVVudGlsfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge1NvcnQsIFNvcnREaXJlY3Rpb259IGZyb20gJy4uL3NvcnQnO1xuaW1wb3J0IHtQYWdlUmVxdWVzdH0gZnJvbSAnLi4vcGFnZSc7XG5cblxuZXhwb3J0IGNsYXNzIE1hdFRhYmxlRGF0YUNvbnRleHRCaW5kaW5nQnVpbGRlciB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIHByaXZhdGUgX2RhdGFDb250ZXh0JDogT2JzZXJ2YWJsZTxJRGF0YUNvbnRleHQ8YW55Pj47XG4gIHByaXZhdGUgX3NvcnRzJDogT2JzZXJ2YWJsZTxNYXRTb3J0W10+O1xuICBwcml2YXRlIF9tYXRQYWdpbmF0b3IkOiBPYnNlcnZhYmxlPE1hdFBhZ2luYXRvcj47XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFN0YXRpYyBCdWlsZGVyICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHVibGljIHN0YXRpYyBzdGFydChkYXRhQ29udGV4dCQ6IE9ic2VydmFibGU8SURhdGFDb250ZXh0PGFueT4+KTogTWF0VGFibGVEYXRhQ29udGV4dEJpbmRpbmdCdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IE1hdFRhYmxlRGF0YUNvbnRleHRCaW5kaW5nQnVpbGRlcihkYXRhQ29udGV4dCQpO1xuICB9XG5cbiAgY29uc3RydWN0b3IoZGF0YUNvbnRleHQkOiBPYnNlcnZhYmxlPElEYXRhQ29udGV4dDxhbnk+Pikge1xuICAgIHRoaXMuX2RhdGFDb250ZXh0JCA9IGRhdGFDb250ZXh0JDtcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyB3aXRoU29ydHMoc29ydHMkOiBPYnNlcnZhYmxlPE1hdFNvcnRbXT4pOiB0aGlzIHtcbiAgICB0aGlzLl9zb3J0cyQgPSBzb3J0cyQ7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICBwdWJsaWMgd2l0aFBhZ2luYXRvcihwYWdpbmF0b3IkOiBPYnNlcnZhYmxlPE1hdFBhZ2luYXRvcj4pOiB0aGlzIHtcbiAgICB0aGlzLl9tYXRQYWdpbmF0b3IkID0gcGFnaW5hdG9yJDtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIHB1YmxpYyBiaW5kVW50aWwoZGVzdHJveSQ6IE9ic2VydmFibGU8YW55Pik6IE1hdFRhYmxlRGF0YUNvbnRleHRCaW5kaW5nIHtcbiAgICByZXR1cm4gbmV3IE1hdFRhYmxlRGF0YUNvbnRleHRCaW5kaW5nKFxuICAgICAgdGhpcy5fZGF0YUNvbnRleHQkLFxuICAgICAgdGhpcy5fc29ydHMkLFxuICAgICAgdGhpcy5fbWF0UGFnaW5hdG9yJCxcbiAgICAgIGRlc3Ryb3kkXG4gICAgKTtcbiAgfVxuXG59XG5cbmV4cG9ydCBjbGFzcyBNYXRUYWJsZURhdGFDb250ZXh0QmluZGluZyB7XG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpO1xuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBDb25zdHJ1Y3RvciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX2RhdGFDb250ZXh0JDogT2JzZXJ2YWJsZTxJRGF0YUNvbnRleHQ8YW55Pj4sXG4gICAgcHJpdmF0ZSByZWFkb25seSBfbWF0U29ydHMkOiBPYnNlcnZhYmxlPE1hdFNvcnRbXT4gfCBudWxsLFxuICAgIHByaXZhdGUgcmVhZG9ubHkgX21hdFBhZ2luYXRvciQ6IE9ic2VydmFibGU8TWF0UGFnaW5hdG9yPiB8IG51bGwsXG4gICAgZGVzdHJveSQ6IE9ic2VydmFibGU8YW55PlxuICApIHtcbiAgICB0aGlzLnN1YnNjcmliZVVudGlsKGRlc3Ryb3kkKTtcbiAgfVxuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogUHJpdmF0ZSBtZXRob2RzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHN1YnNjcmliZVVudGlsKGRlc3Ryb3kkOiBPYnNlcnZhYmxlPGFueT4pOiB2b2lkIHtcbiAgICBpZiAodGhpcy5fbWF0U29ydHMkKSB7XG4gICAgICB0aGlzLmJpbmRNYXRTb3J0c1RvRGF0YUNvbnRleHRVbnRpbCh0aGlzLl9tYXRTb3J0cyQsIGRlc3Ryb3kkKTtcbiAgICAgIHRoaXMuYmluZERhdGFDb250ZXh0VG9NYXRTb3J0c1VudGlsKHRoaXMuX21hdFNvcnRzJCwgZGVzdHJveSQpO1xuICAgIH1cblxuICAgIGlmICh0aGlzLl9tYXRQYWdpbmF0b3IkKSB7XG4gICAgICB0aGlzLmJpbmRQYWdpbmF0b3JVbnRpbCh0aGlzLl9tYXRQYWdpbmF0b3IkLCBkZXN0cm95JCk7XG4gICAgfVxuICB9XG5cbiAgcHJpdmF0ZSBiaW5kRGF0YUNvbnRleHRUb01hdFNvcnRzVW50aWwobWF0U29ydHMkOiBPYnNlcnZhYmxlPE1hdFNvcnRbXT4sIGRlc3Ryb3kkOiBPYnNlcnZhYmxlPGFueT4pOiB2b2lkIHtcblxuICAgIGNvbnN0IGRjU29ydHMkID0gdGhpcy5fZGF0YUNvbnRleHQkLnBpcGUoXG4gICAgICBmaWx0ZXIoZGMgPT4gISFkYyksXG4gICAgICBzd2l0Y2hNYXAoZGMgPT4gZGMuc29ydC5zb3J0cylcbiAgICApO1xuXG4gICAgY29tYmluZUxhdGVzdChbZGNTb3J0cyQsIG1hdFNvcnRzJF0pLnBpcGUoXG4gICAgICB0YWtlVW50aWwoZGVzdHJveSQpLFxuICAgICkuc3Vic2NyaWJlKChbZGNTb3J0cywgbWF0U29ydHNdKSA9PiB7XG5cbiAgICAgIGlmIChkY1NvcnRzLmxlbmd0aCA+PSAxKSB7XG4gICAgICAgIC8vIEF0IGxlYXN0IG9uZSBzb3J0IGFjdGl2ZVxuICAgICAgICBjb25zdCBzb3J0ID0gZGNTb3J0c1swXTtcbiAgICAgICAgdGhpcy51cGRhdGVNYXRTb3J0cyhzb3J0LCBtYXRTb3J0cyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBObyBzb3J0IGFjdGl2ZVxuICAgICAgICB0aGlzLnVwZGF0ZU1hdFNvcnRzKFNvcnQuTk9ORSwgbWF0U29ydHMpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVNYXRTb3J0cyhkY1NvcnQ6IFNvcnQsIG1hdFNvcnRzOiBNYXRTb3J0W10pOiB2b2lkIHtcbiAgICBjb25zdCBhY3RpdmUgPSBkY1NvcnQucHJvcDtcbiAgICBjb25zdCBkaXJlY3Rpb24gPSB0aGlzLnRvTWF0RGlyZWN0aW9uKGRjU29ydC5kaXIpO1xuICAgIG1hdFNvcnRzLmZvckVhY2gobWF0U29ydCA9PiB0aGlzLnVwZGF0ZU1hdFNvcnQoYWN0aXZlLCBkaXJlY3Rpb24sIG1hdFNvcnQpKTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlTWF0U29ydChcbiAgICBhY3RpdmVQcm9wOiBzdHJpbmcsXG4gICAgZGlyZWN0aW9uOiBNYXRTb3J0RGlyZWN0aW9uLFxuICAgIG1hdFNvcnQ6IE1hdFNvcnRcbiAgKTogdm9pZCB7XG5cbiAgICBpZiAoYWN0aXZlUHJvcCkge1xuICAgICAgaWYgKCFtYXRTb3J0LnNvcnRhYmxlcy5oYXMoYWN0aXZlUHJvcCkpIHtcbiAgICAgICAgLy8gVGhlIGN1cnJlbnQgc29ydCBwcm9wZXJ0eSBpcyBub3QgcGFydCBvZiB0aGlzIE1hdFNvcnQuXG4gICAgICAgIGFjdGl2ZVByb3AgPSBTb3J0Lk5PTkUucHJvcDsgLy8gRm9yY2Ugbm8gc29ydCBpbiB0aGlzIG1hdCBjb250ZXh0XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKG1hdFNvcnQuYWN0aXZlICE9PSBhY3RpdmVQcm9wIHx8IG1hdFNvcnQuZGlyZWN0aW9uICE9PSBkaXJlY3Rpb24pIHtcbiAgICAgIC8vIFdlIGRvIG9ubHkgdXBkYXRlIG1hdFNvcnQgd2hlbiB0aGVyZSB3YXMgYSByZWFsIGNoYW5nZVxuICAgICAgbWF0U29ydC5hY3RpdmUgPSBhY3RpdmVQcm9wO1xuICAgICAgbWF0U29ydC5kaXJlY3Rpb24gPSBkaXJlY3Rpb247XG4gICAgICBtYXRTb3J0Ll9zdGF0ZUNoYW5nZXMubmV4dCgpO1xuICAgIH1cbiAgfVxuXG5cblxuICBwcml2YXRlIGJpbmRNYXRTb3J0c1RvRGF0YUNvbnRleHRVbnRpbChzb3J0cyQ6IE9ic2VydmFibGU8TWF0U29ydFtdPiwgZGVzdHJveSQ6IE9ic2VydmFibGU8YW55Pik6IHZvaWQge1xuXG4gICAgY29uc3Qgc29ydENoYW5nZXMkID0gc29ydHMkLnBpcGUoXG4gICAgICBtZXJnZU1hcChzb3J0cyA9PiBtZXJnZSguLi5zb3J0cy5tYXAocyA9PiBzLnNvcnRDaGFuZ2UpKSksXG4gICAgICBtYXAobWF0U29ydCA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgU29ydChcbiAgICAgICAgICBtYXRTb3J0LmFjdGl2ZSxcbiAgICAgICAgICB0aGlzLmZyb21NYXREaXJlY3Rpb24obWF0U29ydC5kaXJlY3Rpb24pXG4gICAgICAgICk7XG4gICAgICB9KVxuICAgICk7XG5cbiAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLl9kYXRhQ29udGV4dCQsIHNvcnRDaGFuZ2VzJF0pLnBpcGUoXG4gICAgICB0YWtlVW50aWwoZGVzdHJveSQpLFxuICAgICkuc3Vic2NyaWJlKChbZGMsIHNvcnRSZXF1ZXN0XSkgPT4ge1xuICAgICAgaWYgKGRjKSB7XG4gICAgICAgIGRjLnNvcnQudXBkYXRlU29ydChzb3J0UmVxdWVzdCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGJpbmRQYWdpbmF0b3JVbnRpbChwYWdpbmF0b3IkOiBPYnNlcnZhYmxlPE1hdFBhZ2luYXRvcj4sIGRlc3Ryb3kkOiBPYnNlcnZhYmxlPGFueT4pOiB2b2lkIHtcblxuICAgIGNvbnN0IHBhZ2VSZXF1ZXN0JCA9IHBhZ2luYXRvciQucGlwZShcbiAgICAgIGZpbHRlcihwYWdpbmF0b3IgPT4gISFwYWdpbmF0b3IpLFxuICAgICAgc3dpdGNoTWFwKHBhZ2luYXRvciA9PiBwYWdpbmF0b3IucGFnZSksXG4gICAgICBtYXAocGFnZUV2ZW50ID0+IG5ldyBQYWdlUmVxdWVzdChwYWdlRXZlbnQucGFnZUluZGV4LCBwYWdlRXZlbnQucGFnZVNpemUpKVxuICAgICk7XG5cbiAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLl9kYXRhQ29udGV4dCQsIHBhZ2VSZXF1ZXN0JF0pLnBpcGUoXG4gICAgICB0YWtlVW50aWwoZGVzdHJveSQpLFxuICAgICkuc3Vic2NyaWJlKChbZGMsIHBhZ2VSZXF1ZXN0XSkgPT4ge1xuICAgICAgaWYgKGRjKSB7XG4gICAgICAgIGlmIChpc0FjdGl2ZVBhZ2VkRGF0YUNvbnRleHQoZGMpKSB7XG4gICAgICAgICAgY29uc3QgcGFnZWREYyA9IGRjIGFzIElEYXRhQ29udGV4dEFjdGl2ZVBhZ2U8YW55PjtcbiAgICAgICAgICBwYWdlZERjLnNldEFjdGl2ZVBhZ2UocGFnZVJlcXVlc3QpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHRoaXMubG9nZ2VyLndhcm4oJ0NhbiBub3QgYmluZCB0aGUgZ2l2ZW4gcGFnaW5hdG9yIHRvIHRoZSBnaXZlbiBkYXRhLWNvbnRleHQsJyArXG4gICAgICAgICAgICAnIGFzIHRoZSBkYXRhY29udGV4dCBkb2VzIG5vdCBzdXBwb3J0IHBhZ2luYXRpb24hJywgZGMpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIHRvTWF0RGlyZWN0aW9uKGRpcmVjdGlvbjogU29ydERpcmVjdGlvbik6IE1hdFNvcnREaXJlY3Rpb24ge1xuICAgIHJldHVybiBkaXJlY3Rpb247XG4gIH1cblxuICBwcml2YXRlIGZyb21NYXREaXJlY3Rpb24obWF0U29ydERpcmVjdGlvbjogTWF0U29ydERpcmVjdGlvbik6IFNvcnREaXJlY3Rpb24ge1xuICAgIHJldHVybiBtYXRTb3J0RGlyZWN0aW9uO1xuICB9XG59XG4iXX0=
145
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWF0LXRhYmxlLWRhdGEtY29udGV4dC1iaW5kaW5nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWxkZXJieXRlL25neC1zdGFydGVyL3NyYy9saWIvY29tbW9uL2RhdGEvZGF0YS1jb250ZXh0L21hdC10YWJsZS1kYXRhLWNvbnRleHQtYmluZGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQXdDLHdCQUF3QixFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDL0YsT0FBTyxFQUFFLGFBQWEsRUFBRSxLQUFLLEVBQWMsTUFBTSxNQUFNLENBQUE7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFBO0FBQ3BELE9BQU8sRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUE7QUFDNUUsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxTQUFTLENBQUE7QUFDN0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFNBQVMsQ0FBQTtBQUVyQyxNQUFNLE9BQU8saUNBQWlDO0lBYTVDOzs7O2dGQUk0RTtJQUVyRSxNQUFNLENBQUMsS0FBSyxDQUNqQixZQUEyQztRQUUzQyxPQUFPLElBQUksaUNBQWlDLENBQUMsWUFBWSxDQUFDLENBQUE7SUFDNUQsQ0FBQztJQUVELFlBQVksWUFBMkM7UUF4QnZEOzs7O29GQUk0RTtRQUUzRCxXQUFNLEdBQUcsYUFBYSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFBO1FBbUJ0RSxJQUFJLENBQUMsYUFBYSxHQUFHLFlBQVksQ0FBQTtJQUNuQyxDQUFDO0lBRUQ7Ozs7Z0ZBSTRFO0lBRXJFLFNBQVMsQ0FBQyxNQUE2QjtRQUM1QyxJQUFJLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQTtRQUNyQixPQUFPLElB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Z0JBQ0gsQ0FBQztZQUNILENBQUM7UUFDSCxDQUFDLENBQUMsQ0FBQTtJQUNOLENBQUM7SUFFTyxjQUFjLENBQUMsU0FBd0I7UUFDN0MsT0FBTyxTQUFTLENBQUE7SUFDbEIsQ0FBQztJQUVPLGdCQUFnQixDQUFDLGdCQUFrQztRQUN6RCxPQUFPLGdCQUFnQixDQUFBO0lBQ3pCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1hdFBhZ2luYXRvciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvcidcbmltcG9ydCB7IE1hdFNvcnQsIFNvcnREaXJlY3Rpb24gYXMgTWF0U29ydERpcmVjdGlvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NvcnQnXG5pbXBvcnQgeyBJRGF0YUNvbnRleHQsIElEYXRhQ29udGV4dEFjdGl2ZVBhZ2UsIGlzQWN0aXZlUGFnZWREYXRhQ29udGV4dCB9IGZyb20gJy4vZGF0YS1jb250ZXh0J1xuaW1wb3J0IHsgY29tYmluZUxhdGVzdCwgbWVyZ2UsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgTG9nZ2VyRmFjdG9yeSB9IGZyb20gJ0BlbGRlcmJ5dGUvdHMtbG9nZ2VyJ1xuaW1wb3J0IHsgZmlsdGVyLCBtYXAsIG1lcmdlTWFwLCBzd2l0Y2hNYXAsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJ1xuaW1wb3J0IHsgU29ydCwgU29ydERpcmVjdGlvbiB9IGZyb20gJy4uL3NvcnQnXG5pbXBvcnQgeyBQYWdlUmVxdWVzdCB9IGZyb20gJy4uL3BhZ2UnXG5cbmV4cG9ydCBjbGFzcyBNYXRUYWJsZURhdGFDb250ZXh0QmluZGluZ0J1aWxkZXIge1xuICAvKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogRmllbGRzICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKi9cblxuICBwcml2YXRlIHJlYWRvbmx5IGxvZ2dlciA9IExvZ2dlckZhY3RvcnkuZ2V0TG9nZ2VyKHRoaXMuY29uc3RydWN0b3IubmFtZSlcblxuICBwcml2YXRlIF9kYXRhQ29udGV4dCQ6IE9ic2VydmFibGU8SURhdGFDb250ZXh0PGFueT4+XG4gIHByaXZhdGUgX3NvcnRzJDogT2JzZXJ2YWJsZTxNYXRTb3J0W10+XG4gIHByaXZhdGUgX21hdFBhZ2luYXRvciQ6IE9ic2VydmFibGU8TWF0UGFnaW5hdG9yPlxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBTdGF0aWMgQnVpbGRlciAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyBzdGF0aWMgc3RhcnQoXG4gICAgZGF0YUNvbnRleHQkOiBPYnNlcnZhYmxlPElEYXRhQ29udGV4dDxhbnk+PlxuICApOiBNYXRUYWJsZURhdGFDb250ZXh0QmluZGluZ0J1aWxkZXIge1xuICAgIHJldHVybiBuZXcgTWF0VGFibGVEYXRhQ29udGV4dEJpbmRpbmdCdWlsZGVyKGRhdGFDb250ZXh0JClcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKGRhdGFDb250ZXh0JDogT2JzZXJ2YWJsZTxJRGF0YUNvbnRleHQ8YW55Pj4pIHtcbiAgICB0aGlzLl9kYXRhQ29udGV4dCQgPSBkYXRhQ29udGV4dCRcbiAgfVxuXG4gIC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKipcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKiBQdWJsaWMgQVBJICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqL1xuXG4gIHB1YmxpYyB3aXRoU29ydHMoc29ydHMkOiBPYnNlcnZhYmxlPE1hdFNvcnRbXT4pOiB0aGlzIHtcbiAgICB0aGlzLl9zb3J0cyQgPSBzb3J0cyRcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgcHVibGljIHdpdGhQYWdpbmF0b3IocGFnaW5hdG9yJDogT2JzZXJ2YWJsZTxNYXRQYWdpbmF0b3I+KTogdGhpcyB7XG4gICAgdGhpcy5fbWF0UGFnaW5hdG9yJCA9IHBhZ2luYXRvciRcbiAgICByZXR1cm4gdGhpc1xuICB9XG5cbiAgcHVibGljIGJpbmRVbnRpbChkZXN0cm95JDogT2JzZXJ2YWJsZTxhbnk+KTogTWF0VGFibGVEYXRhQ29udGV4dEJpbmRpbmcge1xuICAgIHJldHVybiBuZXcgTWF0VGFibGVEYXRhQ29udGV4dEJpbmRpbmcoXG4gICAgICB0aGlzLl9kYXRhQ29udGV4dCQsXG4gICAgICB0aGlzLl9zb3J0cyQsXG4gICAgICB0aGlzLl9tYXRQYWdpbmF0b3IkLFxuICAgICAgZGVzdHJveSRcbiAgICApXG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIE1hdFRhYmxlRGF0YUNvbnRleHRCaW5kaW5nIHtcbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIEZpZWxkcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSByZWFkb25seSBsb2dnZXIgPSBMb2dnZXJGYWN0b3J5LmdldExvZ2dlcih0aGlzLmNvbnN0cnVjdG9yLm5hbWUpXG5cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIENvbnN0cnVjdG9yICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSByZWFkb25seSBfZGF0YUNvbnRleHQkOiBPYnNlcnZhYmxlPElEYXRhQ29udGV4dDxhbnk+PixcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9tYXRTb3J0cyQ6IE9ic2VydmFibGU8TWF0U29ydFtdPiB8IG51bGwsXG4gICAgcHJpdmF0ZSByZWFkb25seSBfbWF0UGFnaW5hdG9yJDogT2JzZXJ2YWJsZTxNYXRQYWdpbmF0b3I+IHwgbnVsbCxcbiAgICBkZXN0cm95JDogT2JzZXJ2YWJsZTxhbnk+XG4gICkge1xuICAgIHRoaXMuc3Vic2NyaWJlVW50aWwoZGVzdHJveSQpXG4gIH1cbiAgLyoqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKlxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAqXG4gICAqIFByaXZhdGUgbWV0aG9kcyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICpcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKlxuICAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovXG5cbiAgcHJpdmF0ZSBzdWJzY3JpYmVVbnRpbChkZXN0cm95JDogT2JzZXJ2YWJsZTxhbnk+KTogdm9pZCB7XG4gICAgaWYgKHRoaXMuX21hdFNvcnRzJCkge1xuICAgICAgdGhpcy5iaW5kTWF0U29ydHNUb0RhdGFDb250ZXh0VW50aWwodGhpcy5fbWF0U29ydHMkLCBkZXN0cm95JClcbiAgICAgIHRoaXMuYmluZERhdGFDb250ZXh0VG9NYXRTb3J0c1VudGlsKHRoaXMuX21hdFNvcnRzJCwgZGVzdHJveSQpXG4gICAgfVxuXG4gICAgaWYgKHRoaXMuX21hdFBhZ2luYXRvciQpIHtcbiAgICAgIHRoaXMuYmluZFBhZ2luYXRvclVudGlsKHRoaXMuX21hdFBhZ2luYXRvciQsIGRlc3Ryb3kkKVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYmluZERhdGFDb250ZXh0VG9NYXRTb3J0c1VudGlsKFxuICAgIG1hdFNvcnRzJDogT2JzZXJ2YWJsZTxNYXRTb3J0W10+LFxuICAgIGRlc3Ryb3kkOiBPYnNlcnZhYmxlPGFueT5cbiAgKTogdm9pZCB7XG4gICAgY29uc3QgZGNTb3J0cyQgPSB0aGlzLl9kYXRhQ29udGV4dCQucGlwZShcbiAgICAgIGZpbHRlcigoZGMpID0+ICEhZGMpLFxuICAgICAgc3dpdGNoTWFwKChkYykgPT4gZGMuc29ydC5zb3J0cylcbiAgICApXG5cbiAgICBjb21iaW5lTGF0ZXN0KFtkY1NvcnRzJCwgbWF0U29ydHMkXSlcbiAgICAgIC5waXBlKHRha2VVbnRpbChkZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKChbZGNTb3J0cywgbWF0U29ydHNdKSA9PiB7XG4gICAgICAgIGlmIChkY1NvcnRzLmxlbmd0aCA+PSAxKSB7XG4gICAgICAgICAgLy8gQXQgbGVhc3Qgb25lIHNvcnQgYWN0aXZlXG4gICAgICAgICAgY29uc3Qgc29ydCA9IGRjU29ydHNbMF1cbiAgICAgICAgICB0aGlzLnVwZGF0ZU1hdFNvcnRzKHNvcnQsIG1hdFNvcnRzKVxuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIE5vIHNvcnQgYWN0aXZlXG4gICAgICAgICAgdGhpcy51cGRhdGVNYXRTb3J0cyhTb3J0Lk5PTkUsIG1hdFNvcnRzKVxuICAgICAgICB9XG4gICAgICB9KVxuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVNYXRTb3J0cyhkY1NvcnQ6IFNvcnQsIG1hdFNvcnRzOiBNYXRTb3J0W10pOiB2b2lkIHtcbiAgICBjb25zdCBhY3RpdmUgPSBkY1NvcnQucHJvcFxuICAgIGNvbnN0IGRpcmVjdGlvbiA9IHRoaXMudG9NYXREaXJlY3Rpb24oZGNTb3J0LmRpcilcbiAgICBtYXRTb3J0cy5mb3JFYWNoKChtYXRTb3J0KSA9PiB0aGlzLnVwZGF0ZU1hdFNvcnQoYWN0aXZlLCBkaXJlY3Rpb24sIG1hdFNvcnQpKVxuICB9XG5cbiAgcHJpdmF0ZSB1cGRhdGVNYXRTb3J0KGFjdGl2ZVByb3A6IHN0cmluZywgZGlyZWN0aW9uOiBNYXRTb3J0RGlyZWN0aW9uLCBtYXRTb3J0OiBNYXRTb3J0KTogdm9pZCB7XG4gICAgaWYgKGFjdGl2ZVByb3ApIHtcbiAgICAgIGlmICghbWF0U29ydC5zb3J0YWJsZXMuaGFzKGFjdGl2ZVByb3ApKSB7XG4gICAgICAgIC8vIFRoZSBjdXJyZW50IHNvcnQgcHJvcGVydHkgaXMgbm90IHBhcnQgb2YgdGhpcyBNYXRTb3J0LlxuICAgICAgICBhY3RpdmVQcm9wID0gU29ydC5OT05FLnByb3AgLy8gRm9yY2Ugbm8gc29ydCBpbiB0aGlzIG1hdCBjb250ZXh0XG4gICAgICB9XG4gICAgfVxuXG4gICAgaWYgKG1hdFNvcnQuYWN0aXZlICE9PSBhY3RpdmVQcm9wIHx8IG1hdFNvcnQuZGlyZWN0aW9uICE9PSBkaXJlY3Rpb24pIHtcbiAgICAgIC8vIFdlIGRvIG9ubHkgdXBkYXRlIG1hdFNvcnQgd2hlbiB0aGVyZSB3YXMgYSByZWFsIGNoYW5nZVxuICAgICAgbWF0U29ydC5hY3RpdmUgPSBhY3RpdmVQcm9wXG4gICAgICBtYXRTb3J0LmRpcmVjdGlvbiA9IGRpcmVjdGlvblxuICAgICAgbWF0U29ydC5fc3RhdGVDaGFuZ2VzLm5leHQoKVxuICAgIH1cbiAgfVxuXG4gIHByaXZhdGUgYmluZE1hdFNvcnRzVG9EYXRhQ29udGV4dFVudGlsKFxuICAgIHNvcnRzJDogT2JzZXJ2YWJsZTxNYXRTb3J0W10+LFxuICAgIGRlc3Ryb3kkOiBPYnNlcnZhYmxlPGFueT5cbiAgKTogdm9pZCB7XG4gICAgY29uc3Qgc29ydENoYW5nZXMkID0gc29ydHMkLnBpcGUoXG4gICAgICBtZXJnZU1hcCgoc29ydHMpID0+IG1lcmdlKC4uLnNvcnRzLm1hcCgocykgPT4gcy5zb3J0Q2hhbmdlKSkpLFxuICAgICAgbWFwKChtYXRTb3J0KSA9PiB7XG4gICAgICAgIHJldHVybiBuZXcgU29ydChtYXRTb3J0LmFjdGl2ZSwgdGhpcy5mcm9tTWF0RGlyZWN0aW9uKG1hdFNvcnQuZGlyZWN0aW9uKSlcbiAgICAgIH0pXG4gICAgKVxuXG4gICAgY29tYmluZUxhdGVzdChbdGhpcy5fZGF0YUNvbnRleHQkLCBzb3J0Q2hhbmdlcyRdKVxuICAgICAgLnBpcGUodGFrZVVudGlsKGRlc3Ryb3kkKSlcbiAgICAgIC5zdWJzY3JpYmUoKFtkYywgc29ydFJlcXVlc3RdKSA9PiB7XG4gICAgICAgIGlmIChkYykge1xuICAgICAgICAgIGRjLnNvcnQudXBkYXRlU29ydChzb3J0UmVxdWVzdClcbiAgICAgICAgfVxuICAgICAgfSlcbiAgfVxuXG4gIHByaXZhdGUgYmluZFBhZ2luYXRvclVudGlsKFxuICAgIHBhZ2luYXRvciQ6IE9ic2VydmFibGU8TWF0UGFnaW5hdG9yPixcbiAgICBkZXN0cm95JDogT2JzZXJ2YWJsZTxhbnk+XG4gICk6IHZvaWQge1xuICAgIGNvbnN0IHBhZ2VSZXF1ZXN0JCA9IHBhZ2luYXRvciQucGlwZShcbiAgICAgIGZpbHRlcigocGFnaW5hdG9yKSA9PiAhIXBhZ2luYXRvciksXG4gICAgICBzd2l0Y2hNYXAoKHBhZ2luYXRvcikgPT4gcGFnaW5hdG9yLnBhZ2UpLFxuICAgICAgbWFwKChwYWdlRXZlbnQpID0+IG5ldyBQYWdlUmVxdWVzdChwYWdlRXZlbnQucGFnZUluZGV4LCBwYWdlRXZlbnQucGFnZVNpemUpKVxuICAgIClcblxuICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMuX2RhdGFDb250ZXh0JCwgcGFnZVJlcXVlc3QkXSlcbiAgICAgIC5waXBlKHRha2VVbnRpbChkZXN0cm95JCkpXG4gICAgICAuc3Vic2NyaWJlKChbZGMsIHBhZ2VSZXF1ZXN0XSkgPT4ge1xuICAgICAgICBpZiAoZGMpIHtcbiAgICAgICAgICBpZiAoaXNBY3RpdmVQYWdlZERhdGFDb250ZXh0KGRjKSkge1xuICAgICAgICAgICAgY29uc3QgcGFnZWREYyA9IGRjIGFzIElEYXRhQ29udGV4dEFjdGl2ZVBhZ2U8YW55PlxuICAgICAgICAgICAgcGFnZWREYy5zZXRBY3RpdmVQYWdlKHBhZ2VSZXF1ZXN0KVxuICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmxvZ2dlci53YXJuKFxuICAgICAgICAgICAgICAnQ2FuIG5vdCBiaW5kIHRoZSBnaXZlbiBwYWdpbmF0b3IgdG8gdGhlIGdpdmVuIGRhdGEtY29udGV4dCwnICtcbiAgICAgICAgICAgICAgICAnIGFzIHRoZSBkYXRhY29udGV4dCBkb2VzIG5vdCBzdXBwb3J0IHBhZ2luYXRpb24hJyxcbiAgICAgICAgICAgICAgZGNcbiAgICAgICAgICAgIClcbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIH0pXG4gIH1cblxuICBwcml2YXRlIHRvTWF0RGlyZWN0aW9uKGRpcmVjdGlvbjogU29ydERpcmVjdGlvbik6IE1hdFNvcnREaXJlY3Rpb24ge1xuICAgIHJldHVybiBkaXJlY3Rpb25cbiAgfVxuXG4gIHByaXZhdGUgZnJvbU1hdERpcmVjdGlvbihtYXRTb3J0RGlyZWN0aW9uOiBNYXRTb3J0RGlyZWN0aW9uKTogU29ydERpcmVjdGlvbiB7XG4gICAgcmV0dXJuIG1hdFNvcnREaXJlY3Rpb25cbiAgfVxufVxuIl19
@@ -12,4 +12,4 @@ export * from './data-context-life-cycle-binding';
12
12
  export * from './data-context-auto-starter';
13
13
  export * from './data-context-source-event-binding';
14
14
  export * from './data-context-builder';
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbW1vbi9kYXRhL2RhdGEtY29udGV4dC9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsb0JBQW9CLENBQUM7QUFFbkMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLGlDQUFpQyxDQUFDO0FBQ2hELGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLDRCQUE0QixDQUFDO0FBRTNDLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMscUNBQXFDLENBQUM7QUFFcEQsY0FBYyx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vaW5kZXhlZC1lbnRpdGllcyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZGF0YS1jb250ZXh0LXN0YXR1cyc7XG5leHBvcnQgKiBmcm9tICcuL2RhdGEtY29udGV4dCc7XG5leHBvcnQgKiBmcm9tICcuL2RhdGEtY29udGV4dC1iYXNlJztcbmV4cG9ydCAqIGZyb20gJy4vZGF0YS1jb250ZXh0LXNpbXBsZSc7XG5leHBvcnQgKiBmcm9tICcuL2RhdGEtY29udGV4dC1jb250aW51YWJsZS1iYXNlJztcbmV4cG9ydCAqIGZyb20gJy4vZGF0YS1jb250ZXh0LWNvbnRpbnVhYmxlLXBhZ2VkJztcbmV4cG9ydCAqIGZyb20gJy4vZGF0YS1jb250ZXh0LWNvbnRpbnVhYmxlLXRva2VuJztcbmV4cG9ydCAqIGZyb20gJy4vZGF0YS1jb250ZXh0LWFjdGl2ZS1wYWdlJztcblxuZXhwb3J0ICogZnJvbSAnLi9tYXQtdGFibGUtZGF0YS1jb250ZXh0LWJpbmRpbmcnO1xuZXhwb3J0ICogZnJvbSAnLi9kYXRhLWNvbnRleHQtbGlmZS1jeWNsZS1iaW5kaW5nJztcbmV4cG9ydCAqIGZyb20gJy4vZGF0YS1jb250ZXh0LWF1dG8tc3RhcnRlcic7XG5leHBvcnQgKiBmcm9tICcuL2RhdGEtY29udGV4dC1zb3VyY2UtZXZlbnQtYmluZGluZyc7XG5cbmV4cG9ydCAqIGZyb20gJy4vZGF0YS1jb250ZXh0LWJ1aWxkZXInO1xuXG5cblxuIl19
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VsZGVyYnl0ZS9uZ3gtc3RhcnRlci9zcmMvbGliL2NvbW1vbi9kYXRhL2RhdGEtY29udGV4dC9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsb0JBQW9CLENBQUE7QUFFbEMsY0FBYyx1QkFBdUIsQ0FBQTtBQUNyQyxjQUFjLGdCQUFnQixDQUFBO0FBQzlCLGNBQWMscUJBQXFCLENBQUE7QUFDbkMsY0FBYyx1QkFBdUIsQ0FBQTtBQUNyQyxjQUFjLGlDQUFpQyxDQUFBO0FBQy9DLGNBQWMsa0NBQWtDLENBQUE7QUFDaEQsY0FBYyxrQ0FBa0MsQ0FBQTtBQUNoRCxjQUFjLDRCQUE0QixDQUFBO0FBRTFDLGNBQWMsa0NBQWtDLENBQUE7QUFDaEQsY0FBYyxtQ0FBbUMsQ0FBQTtBQUNqRCxjQUFjLDZCQUE2QixDQUFBO0FBQzNDLGNBQWMscUNBQXFDLENBQUE7QUFFbkQsY0FBYyx3QkFBd0IsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vaW5kZXhlZC1lbnRpdGllcydcblxuZXhwb3J0ICogZnJvbSAnLi9kYXRhLWNvbnRleHQtc3RhdHVzJ1xuZXhwb3J0ICogZnJvbSAnLi9kYXRhLWNvbnRleHQnXG5leHBvcnQgKiBmcm9tICcuL2RhdGEtY29udGV4dC1iYXNlJ1xuZXhwb3J0ICogZnJvbSAnLi9kYXRhLWNvbnRleHQtc2ltcGxlJ1xuZXhwb3J0ICogZnJvbSAnLi9kYXRhLWNvbnRleHQtY29udGludWFibGUtYmFzZSdcbmV4cG9ydCAqIGZyb20gJy4vZGF0YS1jb250ZXh0LWNvbnRpbnVhYmxlLXBhZ2VkJ1xuZXhwb3J0ICogZnJvbSAnLi9kYXRhLWNvbnRleHQtY29udGludWFibGUtdG9rZW4nXG5leHBvcnQgKiBmcm9tICcuL2RhdGEtY29udGV4dC1hY3RpdmUtcGFnZSdcblxuZXhwb3J0ICogZnJvbSAnLi9tYXQtdGFibGUtZGF0YS1jb250ZXh0LWJpbmRpbmcnXG5leHBvcnQgKiBmcm9tICcuL2RhdGEtY29udGV4dC1saWZlLWN5Y2xlLWJpbmRpbmcnXG5leHBvcnQgKiBmcm9tICcuL2RhdGEtY29udGV4dC1hdXRvLXN0YXJ0ZXInXG5leHBvcnQgKiBmcm9tICcuL2RhdGEtY29udGV4dC1zb3VyY2UtZXZlbnQtYmluZGluZydcblxuZXhwb3J0ICogZnJvbSAnLi9kYXRhLWNvbnRleHQtYnVpbGRlcidcbiJdfQ==