@dereekb/dbx-web 10.2.0 → 11.0.1

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 (454) hide show
  1. package/calendar/esm2022/lib/calendar.base.component.mjs +27 -30
  2. package/calendar/esm2022/lib/calendar.component.mjs +21 -24
  3. package/calendar/esm2022/lib/calendar.module.mjs +9 -9
  4. package/calendar/esm2022/lib/calendar.store.mjs +89 -89
  5. package/calendar/fesm2022/dereekb-dbx-web-calendar.mjs +137 -141
  6. package/calendar/fesm2022/dereekb-dbx-web-calendar.mjs.map +1 -1
  7. package/calendar/lib/calendar.base.component.d.ts +0 -1
  8. package/calendar/lib/calendar.component.d.ts +1 -2
  9. package/calendar/package.json +1 -1
  10. package/esm2022/calendar/lib/calendar.base.component.mjs +27 -30
  11. package/esm2022/calendar/lib/calendar.component.mjs +21 -24
  12. package/esm2022/calendar/lib/calendar.module.mjs +9 -9
  13. package/esm2022/calendar/lib/calendar.store.mjs +89 -89
  14. package/esm2022/lib/action/action.confirm.directive.mjs +8 -15
  15. package/esm2022/lib/action/action.module.mjs +4 -4
  16. package/esm2022/lib/action/key.trigger.directive.mjs +7 -11
  17. package/esm2022/lib/action/snackbar/action.snackbar.component.mjs +40 -48
  18. package/esm2022/lib/action/snackbar/action.snackbar.directive.mjs +10 -14
  19. package/esm2022/lib/action/snackbar/action.snackbar.module.mjs +4 -4
  20. package/esm2022/lib/action/snackbar/action.snackbar.service.mjs +14 -21
  21. package/esm2022/lib/action/transition/action.transition.module.mjs +4 -4
  22. package/esm2022/lib/action/transition/transition.safety.dialog.component.mjs +11 -14
  23. package/esm2022/lib/action/transition/transition.safety.directive.mjs +15 -20
  24. package/esm2022/lib/button/button.component.mjs +10 -9
  25. package/esm2022/lib/button/button.module.mjs +4 -4
  26. package/esm2022/lib/button/button.spacer.component.mjs +3 -3
  27. package/esm2022/lib/button/icon/icon.button.component.mjs +4 -4
  28. package/esm2022/lib/button/icon/icon.button.module.mjs +6 -6
  29. package/esm2022/lib/button/progress/bar.button.component.mjs +4 -7
  30. package/esm2022/lib/button/progress/base.progress.button.directive.mjs +45 -53
  31. package/esm2022/lib/button/progress/button.progress.module.mjs +4 -4
  32. package/esm2022/lib/button/progress/spinner.button.component.mjs +15 -17
  33. package/esm2022/lib/dbx-web.module.mjs +4 -4
  34. package/esm2022/lib/error/default.error.widget.component.mjs +4 -4
  35. package/esm2022/lib/error/error.action.directive.mjs +7 -14
  36. package/esm2022/lib/error/error.component.mjs +57 -62
  37. package/esm2022/lib/error/error.details.component.mjs +5 -4
  38. package/esm2022/lib/error/error.loading.directive.mjs +6 -12
  39. package/esm2022/lib/error/error.module.mjs +5 -5
  40. package/esm2022/lib/error/error.popover.component.mjs +4 -4
  41. package/esm2022/lib/error/error.snackbar.action.directive.mjs +8 -12
  42. package/esm2022/lib/error/error.snackbar.component.mjs +16 -22
  43. package/esm2022/lib/error/error.snackbar.service.mjs +12 -15
  44. package/esm2022/lib/error/error.view.component.mjs +12 -7
  45. package/esm2022/lib/error/error.widget.component.mjs +33 -36
  46. package/esm2022/lib/error/error.widget.directive.mjs +6 -11
  47. package/esm2022/lib/error/error.widget.service.mjs +4 -4
  48. package/esm2022/lib/extension/download/text/download.text.component.mjs +79 -82
  49. package/esm2022/lib/extension/download/text/download.text.module.mjs +6 -6
  50. package/esm2022/lib/extension/model/model.module.mjs +11 -11
  51. package/esm2022/lib/extension/model/model.state.service.mjs +6 -9
  52. package/esm2022/lib/extension/model/model.tracker.service.mjs +11 -13
  53. package/esm2022/lib/extension/model/model.tracker.view.storage.mjs +13 -13
  54. package/esm2022/lib/extension/model/model.types.service.mjs +34 -36
  55. package/esm2022/lib/extension/model/state/effects/tracker.effects.mjs +13 -17
  56. package/esm2022/lib/extension/structure/structure.body.directive.mjs +4 -4
  57. package/esm2022/lib/extension/structure/structure.module.mjs +6 -6
  58. package/esm2022/lib/extension/structure/structure.structure.directive.mjs +8 -10
  59. package/esm2022/lib/extension/widget/widget.component.mjs +22 -25
  60. package/esm2022/lib/extension/widget/widget.directive.mjs +6 -11
  61. package/esm2022/lib/extension/widget/widget.list.component.mjs +17 -20
  62. package/esm2022/lib/extension/widget/widget.module.mjs +6 -6
  63. package/esm2022/lib/extension/widget/widget.service.mjs +4 -6
  64. package/esm2022/lib/interaction/dialog/abstract.dialog.directive.mjs +8 -21
  65. package/esm2022/lib/interaction/dialog/dialog.action.directive.mjs +11 -10
  66. package/esm2022/lib/interaction/dialog/dialog.content.close.component.mjs +6 -8
  67. package/esm2022/lib/interaction/dialog/dialog.content.component.mjs +4 -6
  68. package/esm2022/lib/interaction/dialog/dialog.content.footer.component.mjs +7 -9
  69. package/esm2022/lib/interaction/dialog/dialog.module.mjs +4 -4
  70. package/esm2022/lib/interaction/filter/filter.module.mjs +6 -6
  71. package/esm2022/lib/interaction/filter/filter.partial.list.component.mjs +4 -4
  72. package/esm2022/lib/interaction/filter/filter.partial.menu.component.mjs +6 -9
  73. package/esm2022/lib/interaction/filter/filter.partial.mjs +24 -27
  74. package/esm2022/lib/interaction/filter/filter.popover.button.component.mjs +7 -8
  75. package/esm2022/lib/interaction/filter/filter.popover.button.directive.mjs +7 -10
  76. package/esm2022/lib/interaction/filter/filter.popover.component.mjs +52 -57
  77. package/esm2022/lib/interaction/filter/filter.preset.directive.mjs +90 -0
  78. package/esm2022/lib/interaction/filter/filter.preset.list.component.mjs +6 -6
  79. package/esm2022/lib/interaction/filter/filter.preset.menu.component.mjs +8 -11
  80. package/esm2022/lib/interaction/filter/filter.wrapper.component.mjs +15 -15
  81. package/esm2022/lib/interaction/interaction.module.mjs +4 -4
  82. package/esm2022/lib/interaction/popover/abstract.popover.directive.mjs +6 -9
  83. package/esm2022/lib/interaction/popover/abstract.popover.ref.directive.mjs +8 -10
  84. package/esm2022/lib/interaction/popover/popover.action.directive.mjs +11 -10
  85. package/esm2022/lib/interaction/popover/popover.close.component.mjs +9 -12
  86. package/esm2022/lib/interaction/popover/popover.component.mjs +27 -27
  87. package/esm2022/lib/interaction/popover/popover.content.component.mjs +8 -10
  88. package/esm2022/lib/interaction/popover/popover.content.module.mjs +4 -4
  89. package/esm2022/lib/interaction/popover/popover.controls.directive.mjs +9 -11
  90. package/esm2022/lib/interaction/popover/popover.coordinator.component.mjs +14 -17
  91. package/esm2022/lib/interaction/popover/popover.coordinator.service.mjs +5 -7
  92. package/esm2022/lib/interaction/popover/popover.header.component.mjs +15 -15
  93. package/esm2022/lib/interaction/popover/popover.module.mjs +4 -4
  94. package/esm2022/lib/interaction/popover/popover.scroll.content.component.mjs +7 -10
  95. package/esm2022/lib/interaction/popover/popover.service.mjs +8 -11
  96. package/esm2022/lib/interaction/popup/abstract.popup.directive.mjs +6 -9
  97. package/esm2022/lib/interaction/popup/popup.component.mjs +25 -24
  98. package/esm2022/lib/interaction/popup/popup.content.component.mjs +9 -12
  99. package/esm2022/lib/interaction/popup/popup.controls.buttons.component.mjs +17 -20
  100. package/esm2022/lib/interaction/popup/popup.controls.component.mjs +5 -4
  101. package/esm2022/lib/interaction/popup/popup.coordinator.component.mjs +13 -17
  102. package/esm2022/lib/interaction/popup/popup.coordinator.service.mjs +5 -7
  103. package/esm2022/lib/interaction/popup/popup.module.mjs +4 -4
  104. package/esm2022/lib/interaction/popup/popup.position.strategy.mjs +3 -2
  105. package/esm2022/lib/interaction/popup/popup.service.mjs +8 -11
  106. package/esm2022/lib/interaction/prompt/prompt.box.component.mjs +5 -7
  107. package/esm2022/lib/interaction/prompt/prompt.button.confirm.directive.mjs +12 -20
  108. package/esm2022/lib/interaction/prompt/prompt.component.mjs +6 -4
  109. package/esm2022/lib/interaction/prompt/prompt.confirm.component.mjs +6 -8
  110. package/esm2022/lib/interaction/prompt/prompt.confirm.dialog.component.mjs +4 -4
  111. package/esm2022/lib/interaction/prompt/prompt.confirm.directive.mjs +12 -15
  112. package/esm2022/lib/interaction/prompt/prompt.module.mjs +4 -4
  113. package/esm2022/lib/interaction/prompt/prompt.page.component.mjs +4 -4
  114. package/esm2022/lib/keypress/keydown.listener.directive.mjs +6 -7
  115. package/esm2022/lib/keypress/keypress.module.mjs +4 -4
  116. package/esm2022/lib/layout/bar/bar.directive.mjs +4 -3
  117. package/esm2022/lib/layout/bar/bar.header.component.mjs +7 -4
  118. package/esm2022/lib/layout/bar/bar.layout.module.mjs +4 -4
  119. package/esm2022/lib/layout/bar/pagebar.component.mjs +4 -3
  120. package/esm2022/lib/layout/block/block.layout.module.mjs +4 -4
  121. package/esm2022/lib/layout/block/two.block.component.mjs +9 -10
  122. package/esm2022/lib/layout/card/card.box.component.mjs +6 -4
  123. package/esm2022/lib/layout/card/card.box.container.component.mjs +4 -4
  124. package/esm2022/lib/layout/card/card.box.layout.module.mjs +4 -4
  125. package/esm2022/lib/layout/column/column.layout.module.mjs +4 -4
  126. package/esm2022/lib/layout/column/one/one.column.component.mjs +10 -14
  127. package/esm2022/lib/layout/column/one/one.column.module.mjs +4 -4
  128. package/esm2022/lib/layout/column/two/two.column.back.directive.mjs +7 -11
  129. package/esm2022/lib/layout/column/two/two.column.component.mjs +17 -21
  130. package/esm2022/lib/layout/column/two/two.column.context.directive.mjs +7 -10
  131. package/esm2022/lib/layout/column/two/two.column.full.left.directive.mjs +7 -10
  132. package/esm2022/lib/layout/column/two/two.column.head.component.mjs +6 -4
  133. package/esm2022/lib/layout/column/two/two.column.module.mjs +4 -4
  134. package/esm2022/lib/layout/column/two/two.column.right.component.mjs +15 -19
  135. package/esm2022/lib/layout/column/two/two.column.sref.directive.mjs +6 -9
  136. package/esm2022/lib/layout/column/two/two.column.sref.showright.directive.mjs +10 -15
  137. package/esm2022/lib/layout/column/two/two.column.store.mjs +81 -81
  138. package/esm2022/lib/layout/compact/compact.directive.mjs +7 -10
  139. package/esm2022/lib/layout/compact/compact.layout.module.mjs +4 -4
  140. package/esm2022/lib/layout/compact/compact.store.mjs +6 -6
  141. package/esm2022/lib/layout/content/content.border.directive.mjs +4 -6
  142. package/esm2022/lib/layout/content/content.box.directive.mjs +5 -7
  143. package/esm2022/lib/layout/content/content.container.directive.mjs +6 -8
  144. package/esm2022/lib/layout/content/content.directive.mjs +3 -3
  145. package/esm2022/lib/layout/content/content.elevate.directive.mjs +4 -6
  146. package/esm2022/lib/layout/content/content.layout.module.mjs +5 -5
  147. package/esm2022/lib/layout/content/content.page.directive.mjs +3 -3
  148. package/esm2022/lib/layout/content/content.pit.directive.mjs +4 -3
  149. package/esm2022/lib/layout/flag/flag.component.mjs +5 -7
  150. package/esm2022/lib/layout/flag/flag.layout.module.mjs +4 -4
  151. package/esm2022/lib/layout/flag/flag.prompt.component.mjs +6 -7
  152. package/esm2022/lib/layout/flex/flex.group.directive.mjs +14 -15
  153. package/esm2022/lib/layout/flex/flex.layout.module.mjs +4 -4
  154. package/esm2022/lib/layout/flex/flex.size.directive.mjs +4 -6
  155. package/esm2022/lib/layout/item/item.icon.component.mjs +6 -4
  156. package/esm2022/lib/layout/item/item.layout.module.mjs +4 -4
  157. package/esm2022/lib/layout/layout.module.mjs +4 -4
  158. package/esm2022/lib/layout/list/list.component.mjs +102 -103
  159. package/esm2022/lib/layout/list/list.content.empty.component.mjs +4 -4
  160. package/esm2022/lib/layout/list/list.directive.mjs +14 -15
  161. package/esm2022/lib/layout/list/list.grid.view.component.mjs +27 -39
  162. package/esm2022/lib/layout/list/list.grid.view.directive.mjs +3 -3
  163. package/esm2022/lib/layout/list/list.layout.module.mjs +5 -5
  164. package/esm2022/lib/layout/list/list.view.directive.mjs +11 -12
  165. package/esm2022/lib/layout/list/list.view.meta.icon.component.mjs +9 -19
  166. package/esm2022/lib/layout/list/list.view.selection.directive.mjs +4 -7
  167. package/esm2022/lib/layout/list/list.view.value.component.mjs +36 -43
  168. package/esm2022/lib/layout/list/list.view.value.directive.mjs +11 -17
  169. package/esm2022/lib/layout/list/list.view.value.group.title.directive.mjs +57 -59
  170. package/esm2022/lib/layout/list/list.view.value.item.directive.mjs +6 -11
  171. package/esm2022/lib/layout/list/list.view.value.modifier.directive.mjs +15 -19
  172. package/esm2022/lib/layout/list/list.view.value.modifier.ripple.directive.mjs +14 -17
  173. package/esm2022/lib/layout/list/list.view.value.modifier.selection.directive.mjs +13 -16
  174. package/esm2022/lib/layout/list/list.view.value.selection.component.mjs +20 -29
  175. package/esm2022/lib/layout/list/list.wrapper.mjs +3 -1
  176. package/esm2022/lib/layout/section/section.component.mjs +5 -8
  177. package/esm2022/lib/layout/section/section.header.component.mjs +12 -7
  178. package/esm2022/lib/layout/section/section.intro.component.mjs +7 -8
  179. package/esm2022/lib/layout/section/section.layout.module.mjs +4 -4
  180. package/esm2022/lib/layout/section/section.page.component.mjs +6 -9
  181. package/esm2022/lib/layout/section/subsection.component.mjs +4 -4
  182. package/esm2022/lib/layout/step/step.component.mjs +7 -3
  183. package/esm2022/lib/layout/step/step.layout.module.mjs +4 -4
  184. package/esm2022/lib/layout/style/spacer.directive.mjs +3 -3
  185. package/esm2022/lib/layout/style/style.body.directive.mjs +14 -15
  186. package/esm2022/lib/layout/style/style.color.directive.mjs +4 -6
  187. package/esm2022/lib/layout/style/style.directive.mjs +15 -13
  188. package/esm2022/lib/layout/style/style.layout.module.mjs +4 -4
  189. package/esm2022/lib/layout/style/style.service.mjs +19 -27
  190. package/esm2022/lib/layout/style/style.set.directive.mjs +15 -16
  191. package/esm2022/lib/layout/text/address.component.mjs +5 -4
  192. package/esm2022/lib/layout/text/compat/form.description.component.mjs +19 -0
  193. package/esm2022/lib/layout/text/compat/hint.component.mjs +19 -0
  194. package/esm2022/lib/layout/text/compat/index.mjs +10 -0
  195. package/esm2022/lib/layout/text/compat/label.component.mjs +19 -0
  196. package/esm2022/lib/layout/text/compat/note.component.mjs +19 -0
  197. package/esm2022/lib/layout/text/compat/notice.component.mjs +19 -0
  198. package/esm2022/lib/layout/text/compat/ok.component.mjs +19 -0
  199. package/esm2022/lib/layout/text/compat/success.component.mjs +19 -0
  200. package/esm2022/lib/layout/text/compat/text.compat.module.mjs +32 -0
  201. package/esm2022/lib/layout/text/compat/warn.component.mjs +19 -0
  202. package/esm2022/lib/layout/text/detail.block.component.mjs +6 -4
  203. package/esm2022/lib/layout/text/detail.block.header.component.mjs +6 -4
  204. package/esm2022/lib/layout/text/icon.spacer.component.mjs +3 -3
  205. package/esm2022/lib/layout/text/index.mjs +2 -9
  206. package/esm2022/lib/layout/text/label.block.component.mjs +7 -7
  207. package/esm2022/lib/layout/text/linkify.component.mjs +20 -23
  208. package/esm2022/lib/layout/text/text.chip.directive.mjs +5 -3
  209. package/esm2022/lib/layout/text/text.chips.component.mjs +6 -4
  210. package/esm2022/lib/layout/text/text.module.mjs +5 -13
  211. package/esm2022/lib/loading/basic-loading.component.mjs +33 -33
  212. package/esm2022/lib/loading/loading-progress.component.mjs +11 -10
  213. package/esm2022/lib/loading/loading.action.directive.mjs +8 -14
  214. package/esm2022/lib/loading/loading.component.mjs +33 -27
  215. package/esm2022/lib/loading/loading.module.mjs +4 -4
  216. package/esm2022/lib/router/layout/anchor/anchor.component.mjs +14 -17
  217. package/esm2022/lib/router/layout/anchor/anchor.content.component.mjs +14 -19
  218. package/esm2022/lib/router/layout/anchor/anchor.icon.component.mjs +5 -4
  219. package/esm2022/lib/router/layout/anchor/anchor.link.component.mjs +5 -4
  220. package/esm2022/lib/router/layout/anchor/anchor.module.mjs +4 -4
  221. package/esm2022/lib/router/layout/anchor/anchor.segue.directive.mjs +13 -16
  222. package/esm2022/lib/router/layout/anchorlist/anchorlist.component.mjs +8 -10
  223. package/esm2022/lib/router/layout/anchorlist/anchorlist.module.mjs +4 -4
  224. package/esm2022/lib/router/layout/layout.module.mjs +4 -4
  225. package/esm2022/lib/router/layout/list/list.module.mjs +4 -4
  226. package/esm2022/lib/router/layout/list/router.list.directive.mjs +16 -19
  227. package/esm2022/lib/router/layout/navbar/navbar.component.mjs +65 -70
  228. package/esm2022/lib/router/layout/navbar/navbar.module.mjs +6 -6
  229. package/esm2022/lib/router/layout/sidenav/sidenav.button.component.mjs +13 -16
  230. package/esm2022/lib/router/layout/sidenav/sidenav.component.mjs +54 -57
  231. package/esm2022/lib/router/layout/sidenav/sidenav.ifdisplaymode.directive.mjs +10 -14
  232. package/esm2022/lib/router/layout/sidenav/sidenav.module.mjs +4 -4
  233. package/esm2022/lib/router/layout/sidenav/sidenav.page.component.mjs +13 -14
  234. package/esm2022/lib/router/layout/sidenav/sidenav.pagebar.component.mjs +5 -4
  235. package/esm2022/lib/router/provider/ngrouter/anchor.component.mjs +3 -3
  236. package/esm2022/lib/router/provider/ngrouter/angular.router.module.mjs +4 -4
  237. package/esm2022/lib/router/provider/uirouter/anchor.component.mjs +5 -8
  238. package/esm2022/lib/router/provider/uirouter/uirouter.router.module.mjs +4 -4
  239. package/esm2022/lib/screen/screen.module.mjs +4 -4
  240. package/esm2022/lib/screen/screen.service.mjs +19 -12
  241. package/esm2022/mapbox/lib/mapbox.change.service.mjs +15 -18
  242. package/esm2022/mapbox/lib/mapbox.injection.component.mjs +10 -14
  243. package/esm2022/mapbox/lib/mapbox.injection.store.mjs +8 -8
  244. package/esm2022/mapbox/lib/mapbox.injection.store.provide.mjs +8 -13
  245. package/esm2022/mapbox/lib/mapbox.layout.component.mjs +47 -46
  246. package/esm2022/mapbox/lib/mapbox.layout.drawer.component.mjs +9 -12
  247. package/esm2022/mapbox/lib/mapbox.layout.resize.sync.directive.mjs +17 -23
  248. package/esm2022/mapbox/lib/mapbox.marker.component.mjs +13 -17
  249. package/esm2022/mapbox/lib/mapbox.markers.component.mjs +14 -16
  250. package/esm2022/mapbox/lib/mapbox.menu.component.mjs +14 -21
  251. package/esm2022/mapbox/lib/mapbox.module.mjs +6 -6
  252. package/esm2022/mapbox/lib/mapbox.service.mjs +10 -10
  253. package/esm2022/mapbox/lib/mapbox.store.map.directive.mjs +9 -22
  254. package/esm2022/mapbox/lib/mapbox.store.mjs +395 -399
  255. package/esm2022/mapbox/lib/mapbox.store.provide.mjs +8 -13
  256. package/esm2022/table/lib/date/date.table.column.header.component.mjs +8 -8
  257. package/esm2022/table/lib/date/daterange.table.cell.input.component.mjs +37 -43
  258. package/esm2022/table/lib/date/table.date.module.mjs +6 -6
  259. package/esm2022/table/lib/table.cell.action.component.mjs +10 -13
  260. package/esm2022/table/lib/table.cell.input.component.mjs +10 -13
  261. package/esm2022/table/lib/table.cell.summaryend.component.mjs +10 -13
  262. package/esm2022/table/lib/table.cell.summarystart.component.mjs +10 -13
  263. package/esm2022/table/lib/table.column.directive.mjs +8 -11
  264. package/esm2022/table/lib/table.column.footer.component.mjs +13 -16
  265. package/esm2022/table/lib/table.column.header.component.mjs +13 -16
  266. package/esm2022/table/lib/table.component.mjs +35 -38
  267. package/esm2022/table/lib/table.directive.mjs +6 -9
  268. package/esm2022/table/lib/table.item.action.component.mjs +13 -16
  269. package/esm2022/table/lib/table.item.cell.component.mjs +7 -10
  270. package/esm2022/table/lib/table.item.directive.mjs +8 -11
  271. package/esm2022/table/lib/table.item.header.component.mjs +5 -8
  272. package/esm2022/table/lib/table.module.mjs +6 -6
  273. package/esm2022/table/lib/table.store.mjs +36 -36
  274. package/fesm2022/dereekb-dbx-web-calendar.mjs +137 -141
  275. package/fesm2022/dereekb-dbx-web-calendar.mjs.map +1 -1
  276. package/fesm2022/dereekb-dbx-web-mapbox.mjs +552 -594
  277. package/fesm2022/dereekb-dbx-web-mapbox.mjs.map +1 -1
  278. package/fesm2022/dereekb-dbx-web-table.mjs +197 -232
  279. package/fesm2022/dereekb-dbx-web-table.mjs.map +1 -1
  280. package/fesm2022/dereekb-dbx-web.mjs +2251 -2468
  281. package/fesm2022/dereekb-dbx-web.mjs.map +1 -1
  282. package/lib/action/action.confirm.directive.d.ts +1 -3
  283. package/lib/action/key.trigger.directive.d.ts +1 -2
  284. package/lib/action/snackbar/action.snackbar.component.d.ts +4 -5
  285. package/lib/action/snackbar/action.snackbar.directive.d.ts +2 -3
  286. package/lib/action/snackbar/action.snackbar.service.d.ts +1 -2
  287. package/lib/action/transition/transition.safety.directive.d.ts +1 -2
  288. package/lib/button/progress/base.progress.button.directive.d.ts +7 -8
  289. package/lib/error/error.action.directive.d.ts +2 -3
  290. package/lib/error/error.component.d.ts +2 -3
  291. package/lib/error/error.loading.directive.d.ts +1 -2
  292. package/lib/error/error.snackbar.action.directive.d.ts +1 -2
  293. package/lib/error/error.snackbar.component.d.ts +2 -3
  294. package/lib/error/error.snackbar.service.d.ts +0 -1
  295. package/lib/error/error.widget.component.d.ts +0 -1
  296. package/lib/error/error.widget.directive.d.ts +0 -1
  297. package/lib/extension/download/text/download.text.component.d.ts +3 -6
  298. package/lib/extension/model/model.module.d.ts +3 -3
  299. package/lib/extension/model/model.state.service.d.ts +1 -3
  300. package/lib/extension/model/model.tracker.service.d.ts +1 -3
  301. package/lib/extension/model/model.tracker.view.storage.d.ts +5 -3
  302. package/lib/extension/model/model.types.service.d.ts +2 -3
  303. package/lib/extension/model/state/effects/tracker.effects.d.ts +0 -3
  304. package/lib/extension/structure/structure.structure.directive.d.ts +1 -2
  305. package/lib/extension/widget/widget.component.d.ts +0 -1
  306. package/lib/extension/widget/widget.directive.d.ts +0 -1
  307. package/lib/interaction/dialog/abstract.dialog.directive.d.ts +3 -5
  308. package/lib/interaction/dialog/dialog.action.directive.d.ts +3 -3
  309. package/lib/interaction/filter/filter.partial.d.ts +1 -2
  310. package/lib/interaction/filter/filter.popover.button.directive.d.ts +0 -2
  311. package/lib/interaction/filter/filter.popover.component.d.ts +0 -2
  312. package/lib/interaction/filter/{filter.preset.d.ts → filter.preset.directive.d.ts} +5 -6
  313. package/lib/interaction/filter/filter.preset.list.component.d.ts +2 -2
  314. package/lib/interaction/filter/filter.preset.menu.component.d.ts +2 -2
  315. package/lib/interaction/filter/filter.wrapper.component.d.ts +3 -3
  316. package/lib/interaction/popover/abstract.popover.directive.d.ts +0 -1
  317. package/lib/interaction/popover/popover.action.directive.d.ts +3 -3
  318. package/lib/interaction/popover/popover.close.component.d.ts +1 -2
  319. package/lib/interaction/popover/popover.component.d.ts +6 -7
  320. package/lib/interaction/popover/popover.controls.directive.d.ts +3 -2
  321. package/lib/interaction/popover/popover.coordinator.component.d.ts +3 -5
  322. package/lib/interaction/popover/popover.header.component.d.ts +5 -3
  323. package/lib/interaction/popover/popover.scroll.content.component.d.ts +0 -1
  324. package/lib/interaction/popover/popover.service.d.ts +0 -2
  325. package/lib/interaction/popup/abstract.popup.directive.d.ts +0 -1
  326. package/lib/interaction/popup/popup.component.d.ts +3 -5
  327. package/lib/interaction/popup/popup.content.component.d.ts +1 -3
  328. package/lib/interaction/popup/popup.controls.buttons.component.d.ts +1 -3
  329. package/lib/interaction/popup/popup.coordinator.component.d.ts +2 -5
  330. package/lib/interaction/popup/popup.service.d.ts +0 -2
  331. package/lib/interaction/prompt/prompt.button.confirm.directive.d.ts +3 -4
  332. package/lib/interaction/prompt/prompt.confirm.component.d.ts +2 -2
  333. package/lib/interaction/prompt/prompt.confirm.directive.d.ts +1 -3
  334. package/lib/layout/column/one/one.column.component.d.ts +1 -1
  335. package/lib/layout/column/two/two.column.back.directive.d.ts +0 -1
  336. package/lib/layout/column/two/two.column.component.d.ts +4 -4
  337. package/lib/layout/column/two/two.column.context.directive.d.ts +0 -1
  338. package/lib/layout/column/two/two.column.full.left.directive.d.ts +0 -2
  339. package/lib/layout/column/two/two.column.right.component.d.ts +1 -2
  340. package/lib/layout/column/two/two.column.sref.directive.d.ts +0 -2
  341. package/lib/layout/column/two/two.column.sref.showright.directive.d.ts +1 -3
  342. package/lib/layout/compact/compact.directive.d.ts +1 -2
  343. package/lib/layout/flex/flex.group.directive.d.ts +2 -3
  344. package/lib/layout/list/list.component.d.ts +3 -4
  345. package/lib/layout/list/list.directive.d.ts +4 -5
  346. package/lib/layout/list/list.grid.view.component.d.ts +3 -5
  347. package/lib/layout/list/list.view.directive.d.ts +1 -1
  348. package/lib/layout/list/list.view.meta.icon.component.d.ts +3 -2
  349. package/lib/layout/list/list.view.selection.directive.d.ts +1 -1
  350. package/lib/layout/list/list.view.value.component.d.ts +4 -5
  351. package/lib/layout/list/list.view.value.directive.d.ts +3 -4
  352. package/lib/layout/list/list.view.value.group.title.directive.d.ts +7 -3
  353. package/lib/layout/list/list.view.value.item.directive.d.ts +0 -1
  354. package/lib/layout/list/list.view.value.modifier.directive.d.ts +0 -1
  355. package/lib/layout/list/list.view.value.selection.component.d.ts +3 -4
  356. package/lib/layout/section/section.intro.component.d.ts +1 -1
  357. package/lib/layout/style/style.body.directive.d.ts +4 -4
  358. package/lib/layout/style/style.directive.d.ts +4 -5
  359. package/lib/layout/style/style.service.d.ts +4 -5
  360. package/lib/layout/style/style.set.directive.d.ts +3 -3
  361. package/lib/layout/text/compat/index.d.ts +9 -0
  362. package/lib/layout/text/compat/text.compat.module.d.ts +21 -0
  363. package/lib/layout/text/index.d.ts +1 -8
  364. package/lib/layout/text/linkify.component.d.ts +0 -2
  365. package/lib/layout/text/text.module.d.ts +9 -17
  366. package/lib/loading/loading.action.directive.d.ts +3 -4
  367. package/lib/loading/loading.component.d.ts +0 -1
  368. package/lib/router/layout/anchor/anchor.component.d.ts +0 -2
  369. package/lib/router/layout/anchor/anchor.content.component.d.ts +3 -4
  370. package/lib/router/layout/anchor/anchor.segue.directive.d.ts +0 -1
  371. package/lib/router/layout/navbar/navbar.component.d.ts +2 -4
  372. package/lib/router/layout/sidenav/sidenav.button.component.d.ts +0 -1
  373. package/lib/router/layout/sidenav/sidenav.component.d.ts +2 -4
  374. package/lib/router/layout/sidenav/sidenav.ifdisplaymode.directive.d.ts +2 -3
  375. package/lib/router/layout/sidenav/sidenav.page.component.d.ts +0 -1
  376. package/lib/screen/screen.service.d.ts +1 -2
  377. package/mapbox/esm2022/lib/mapbox.change.service.mjs +15 -18
  378. package/mapbox/esm2022/lib/mapbox.injection.component.mjs +10 -14
  379. package/mapbox/esm2022/lib/mapbox.injection.store.mjs +8 -8
  380. package/mapbox/esm2022/lib/mapbox.injection.store.provide.mjs +8 -13
  381. package/mapbox/esm2022/lib/mapbox.layout.component.mjs +47 -46
  382. package/mapbox/esm2022/lib/mapbox.layout.drawer.component.mjs +9 -12
  383. package/mapbox/esm2022/lib/mapbox.layout.resize.sync.directive.mjs +17 -23
  384. package/mapbox/esm2022/lib/mapbox.marker.component.mjs +13 -17
  385. package/mapbox/esm2022/lib/mapbox.markers.component.mjs +14 -16
  386. package/mapbox/esm2022/lib/mapbox.menu.component.mjs +14 -21
  387. package/mapbox/esm2022/lib/mapbox.module.mjs +6 -6
  388. package/mapbox/esm2022/lib/mapbox.service.mjs +10 -10
  389. package/mapbox/esm2022/lib/mapbox.store.map.directive.mjs +9 -22
  390. package/mapbox/esm2022/lib/mapbox.store.mjs +395 -399
  391. package/mapbox/esm2022/lib/mapbox.store.provide.mjs +8 -13
  392. package/mapbox/fesm2022/dereekb-dbx-web-mapbox.mjs +552 -594
  393. package/mapbox/fesm2022/dereekb-dbx-web-mapbox.mjs.map +1 -1
  394. package/mapbox/lib/mapbox.change.service.d.ts +0 -1
  395. package/mapbox/lib/mapbox.injection.component.d.ts +0 -3
  396. package/mapbox/lib/mapbox.injection.store.provide.d.ts +1 -2
  397. package/mapbox/lib/mapbox.layout.component.d.ts +10 -11
  398. package/mapbox/lib/mapbox.layout.drawer.component.d.ts +0 -1
  399. package/mapbox/lib/mapbox.layout.resize.sync.directive.d.ts +3 -4
  400. package/mapbox/lib/mapbox.marker.component.d.ts +2 -4
  401. package/mapbox/lib/mapbox.menu.component.d.ts +4 -5
  402. package/mapbox/lib/mapbox.service.d.ts +1 -2
  403. package/mapbox/lib/mapbox.store.d.ts +1 -2
  404. package/mapbox/lib/mapbox.store.map.directive.d.ts +2 -3
  405. package/mapbox/lib/mapbox.store.provide.d.ts +1 -2
  406. package/mapbox/package.json +1 -1
  407. package/package.json +1 -1
  408. package/table/esm2022/lib/date/date.table.column.header.component.mjs +8 -8
  409. package/table/esm2022/lib/date/daterange.table.cell.input.component.mjs +37 -43
  410. package/table/esm2022/lib/date/table.date.module.mjs +6 -6
  411. package/table/esm2022/lib/table.cell.action.component.mjs +10 -13
  412. package/table/esm2022/lib/table.cell.input.component.mjs +10 -13
  413. package/table/esm2022/lib/table.cell.summaryend.component.mjs +10 -13
  414. package/table/esm2022/lib/table.cell.summarystart.component.mjs +10 -13
  415. package/table/esm2022/lib/table.column.directive.mjs +8 -11
  416. package/table/esm2022/lib/table.column.footer.component.mjs +13 -16
  417. package/table/esm2022/lib/table.column.header.component.mjs +13 -16
  418. package/table/esm2022/lib/table.component.mjs +35 -38
  419. package/table/esm2022/lib/table.directive.mjs +6 -9
  420. package/table/esm2022/lib/table.item.action.component.mjs +13 -16
  421. package/table/esm2022/lib/table.item.cell.component.mjs +7 -10
  422. package/table/esm2022/lib/table.item.directive.mjs +8 -11
  423. package/table/esm2022/lib/table.item.header.component.mjs +5 -8
  424. package/table/esm2022/lib/table.module.mjs +6 -6
  425. package/table/esm2022/lib/table.store.mjs +36 -36
  426. package/table/fesm2022/dereekb-dbx-web-table.mjs +197 -232
  427. package/table/fesm2022/dereekb-dbx-web-table.mjs.map +1 -1
  428. package/table/lib/date/daterange.table.cell.input.component.d.ts +3 -6
  429. package/table/lib/table.cell.action.component.d.ts +1 -2
  430. package/table/lib/table.cell.input.component.d.ts +1 -2
  431. package/table/lib/table.cell.summaryend.component.d.ts +1 -2
  432. package/table/lib/table.cell.summarystart.component.d.ts +1 -2
  433. package/table/lib/table.column.directive.d.ts +1 -2
  434. package/table/lib/table.component.d.ts +0 -1
  435. package/table/lib/table.directive.d.ts +0 -1
  436. package/table/lib/table.item.directive.d.ts +0 -1
  437. package/table/package.json +1 -1
  438. package/esm2022/lib/interaction/filter/filter.preset.mjs +0 -94
  439. package/esm2022/lib/layout/text/form.description.component.mjs +0 -19
  440. package/esm2022/lib/layout/text/hint.component.mjs +0 -19
  441. package/esm2022/lib/layout/text/label.component.mjs +0 -19
  442. package/esm2022/lib/layout/text/note.component.mjs +0 -19
  443. package/esm2022/lib/layout/text/notice.component.mjs +0 -19
  444. package/esm2022/lib/layout/text/ok.component.mjs +0 -19
  445. package/esm2022/lib/layout/text/success.component.mjs +0 -19
  446. package/esm2022/lib/layout/text/warn.component.mjs +0 -19
  447. /package/lib/layout/text/{form.description.component.d.ts → compat/form.description.component.d.ts} +0 -0
  448. /package/lib/layout/text/{hint.component.d.ts → compat/hint.component.d.ts} +0 -0
  449. /package/lib/layout/text/{label.component.d.ts → compat/label.component.d.ts} +0 -0
  450. /package/lib/layout/text/{note.component.d.ts → compat/note.component.d.ts} +0 -0
  451. /package/lib/layout/text/{notice.component.d.ts → compat/notice.component.d.ts} +0 -0
  452. /package/lib/layout/text/{ok.component.d.ts → compat/ok.component.d.ts} +0 -0
  453. /package/lib/layout/text/{success.component.d.ts → compat/success.component.d.ts} +0 -0
  454. /package/lib/layout/text/{warn.component.d.ts → compat/warn.component.d.ts} +0 -0
@@ -1,4 +1,4 @@
1
- import { Component, ElementRef, Input, ViewChild } from '@angular/core';
1
+ import { Component, ElementRef, Input, ViewChild, inject } from '@angular/core';
2
2
  import { MatSnackBar } from '@angular/material/snack-bar';
3
3
  import { filterMaybe, loadingStateContext, successResult, valueFromFinishedLoadingState } from '@dereekb/rxjs';
4
4
  import { MS_IN_SECOND } from '@dereekb/util';
@@ -7,87 +7,46 @@ import { Clipboard } from '@angular/cdk/clipboard';
7
7
  import { DomSanitizer } from '@angular/platform-browser';
8
8
  import { AbstractSubscriptionDirective } from '@dereekb/dbx-core';
9
9
  import * as i0 from "@angular/core";
10
- import * as i1 from "@angular/cdk/clipboard";
11
- import * as i2 from "@angular/material/snack-bar";
12
- import * as i3 from "@angular/platform-browser";
13
- import * as i4 from "@angular/common";
14
- import * as i5 from "../../../loading/loading.component";
15
- import * as i6 from "@dereekb/dbx-core";
16
- import * as i7 from "../../../button/button.component";
17
- import * as i8 from "../../../button/button.spacer.component";
10
+ import * as i1 from "@angular/common";
11
+ import * as i2 from "../../../loading/loading.component";
12
+ import * as i3 from "@dereekb/dbx-core";
13
+ import * as i4 from "../../../button/button.component";
14
+ import * as i5 from "../../../button/button.spacer.component";
18
15
  /**
19
16
  * DbxStructureDirective used specifically on the body of the app.
20
17
  */
21
18
  export class DbxDownloadTextViewComponent extends AbstractSubscriptionDirective {
22
- constructor(_clipboard, _matSnackbar, _sanitizer) {
23
- super();
24
- this._clipboard = _clipboard;
25
- this._matSnackbar = _matSnackbar;
26
- this._sanitizer = _sanitizer;
27
- this.showTitle = true;
28
- this.showPreview = true;
29
- this._downloadButton = new BehaviorSubject(undefined);
30
- this.downloadButton$ = this._downloadButton.asObservable();
31
- this._contentLoadingState = new BehaviorSubject(undefined);
32
- this.contentLoadingState$ = this._contentLoadingState.pipe(filterMaybe(), shareReplay(1));
33
- this.content$ = this._contentLoadingState.pipe(switchMap((x) => {
34
- if (x) {
35
- return this.contentLoadingState$.pipe(valueFromFinishedLoadingState());
36
- }
37
- else {
38
- return of(undefined);
39
- }
40
- }));
41
- this.contentData$ = this.content$.pipe(map((x) => x?.content));
42
- this.context = loadingStateContext({ obs: this.contentLoadingState$ });
43
- this.fileName$ = this.content$.pipe(map((x) => x?.name ?? 'File'), shareReplay(1));
44
- this.fileUrl$ = this.content$.pipe(map((content) => {
45
- let fileUrl = undefined;
46
- if (content) {
47
- const blob = new Blob([content.content], { type: content.mimeType ?? 'application/octet-stream' });
48
- fileUrl = this._sanitizer.bypassSecurityTrustResourceUrl(window.URL.createObjectURL(blob));
49
- }
50
- return fileUrl;
51
- }), shareReplay(1));
52
- this.downloadReady$ = combineLatest([this._downloadButton, this.fileName$, this.fileUrl$]).pipe(map(([button, name, url]) => Boolean(button && name && url)), distinctUntilChanged(), shareReplay(1));
53
- this.handleCopyToClipboard = () => {
54
- return this.content$.pipe(first(), switchMap((downloadTextContent) => {
55
- if (downloadTextContent) {
56
- return new Promise((resolve, reject) => {
57
- const pending = this._clipboard.beginCopy(downloadTextContent.content);
58
- let secondsRemainingForCopy = 20; // attempt to copy for up to 20 seconds
59
- const attempt = () => {
60
- const copyIsFinished = pending.copy();
61
- if (!copyIsFinished && --secondsRemainingForCopy) {
62
- setTimeout(attempt, MS_IN_SECOND);
63
- }
64
- else {
65
- // Remember to destroy when you're done!
66
- pending.destroy();
67
- if (copyIsFinished) {
68
- resolve(true);
69
- }
70
- else {
71
- reject(false);
72
- }
73
- }
74
- };
75
- attempt();
76
- });
77
- }
78
- else {
79
- return of(false);
80
- }
81
- }), tap((success) => {
82
- if (success) {
83
- this._matSnackbar.open('Copied to clipboard', undefined, { duration: 3 * MS_IN_SECOND });
84
- }
85
- else {
86
- this._matSnackbar.open('Content failed to copy...', undefined, { duration: 3 * MS_IN_SECOND });
87
- }
88
- }));
89
- };
90
- }
19
+ _clipboard = inject(Clipboard);
20
+ _matSnackbar = inject(MatSnackBar);
21
+ _sanitizer = inject(DomSanitizer);
22
+ loadingText;
23
+ linear;
24
+ showTitle = true;
25
+ showPreview = true;
26
+ _downloadButton = new BehaviorSubject(undefined);
27
+ downloadButton$ = this._downloadButton.asObservable();
28
+ _contentLoadingState = new BehaviorSubject(undefined);
29
+ contentLoadingState$ = this._contentLoadingState.pipe(filterMaybe(), shareReplay(1));
30
+ content$ = this._contentLoadingState.pipe(switchMap((x) => {
31
+ if (x) {
32
+ return this.contentLoadingState$.pipe(valueFromFinishedLoadingState());
33
+ }
34
+ else {
35
+ return of(undefined);
36
+ }
37
+ }));
38
+ contentData$ = this.content$.pipe(map((x) => x?.content));
39
+ context = loadingStateContext({ obs: this.contentLoadingState$ });
40
+ fileName$ = this.content$.pipe(map((x) => x?.name ?? 'File'), shareReplay(1));
41
+ fileUrl$ = this.content$.pipe(map((content) => {
42
+ let fileUrl = undefined;
43
+ if (content) {
44
+ const blob = new Blob([content.content], { type: content.mimeType ?? 'application/octet-stream' });
45
+ fileUrl = this._sanitizer.bypassSecurityTrustResourceUrl(window.URL.createObjectURL(blob));
46
+ }
47
+ return fileUrl;
48
+ }), shareReplay(1));
49
+ downloadReady$ = combineLatest([this._downloadButton, this.fileName$, this.fileUrl$]).pipe(map(([button, name, url]) => Boolean(button && name && url)), distinctUntilChanged(), shareReplay(1));
91
50
  set content(content) {
92
51
  this._contentLoadingState.next(content ? successResult(content) : undefined);
93
52
  }
@@ -99,15 +58,53 @@ export class DbxDownloadTextViewComponent extends AbstractSubscriptionDirective
99
58
  }
100
59
  ngOnDestroy() {
101
60
  super.ngOnDestroy();
61
+ this._downloadButton.complete();
102
62
  this._contentLoadingState.complete();
103
63
  }
104
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxDownloadTextViewComponent, deps: [{ token: i1.Clipboard }, { token: i2.MatSnackBar }, { token: i3.DomSanitizer }], target: i0.ɵɵFactoryTarget.Component }); }
105
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxDownloadTextViewComponent, selector: "dbx-download-text-view", inputs: { loadingText: "loadingText", linear: "linear", showTitle: "showTitle", showPreview: "showPreview", content: "content", contentState: "contentState" }, viewQueries: [{ propertyName: "downloadButton", first: true, predicate: ["downloadButton"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<div class=\"dbx-download-text-view\">\n <dbx-loading [context]=\"context\" [linear]=\"linear\" [text]=\"loadingText\">\n <ng-container *ngTemplateOutlet=\"contentView\"></ng-container>\n </dbx-loading>\n</div>\n\n<!-- Template -->\n<ng-template #contentView>\n <div class=\"dbx-download-text-view-content\">\n <div *ngIf=\"showTitle\" class=\"dbx-download-text-view-content-title dbx-mb2 mat-subtitle-2\">{{ fileName$ | async }}</div>\n <div *ngIf=\"showPreview\" class=\"dbx-download-text-preview dbx-json dbx-content-pit dbx-content-pit-scrollable dbx-mb3\">{{ contentData$ | async }}</div>\n <div class=\"dbx-download-text-view-actions\">\n <dbx-button dbxAction dbxActionValue [raised]=\"true\" [dbxActionHandler]=\"handleCopyToClipboard\" icon=\"content_copy\" dbxActionButton text=\"Copy To Clipboard\"></dbx-button>\n <dbx-button-spacer></dbx-button-spacer>\n <a #downloadButton [href]=\"fileUrl$ | async\" [attr.download]=\"fileName$ | async\"><dbx-button icon=\"download\" text=\"Download\" [raised]=\"true\" [working]=\"!(downloadReady$ | async)\" [disabled]=\"!(downloadReady$ | async)\"></dbx-button></a>\n </div>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i5.DbxLoadingComponent, selector: "dbx-loading", inputs: ["show", "text", "mode", "color", "diameter", "linear", "padding", "context", "loading", "error"] }, { kind: "directive", type: i6.DbxActionButtonDirective, selector: "[dbxActionButton]" }, { kind: "component", type: i7.DbxButtonComponent, selector: "dbx-button", inputs: ["type", "basic", "raised", "stroked", "flat", "iconOnly", "color", "spinnerColor", "customButtonColor", "customTextColor", "customSpinnerColor"] }, { kind: "directive", type: i8.DbxButtonSpacerDirective, selector: "dbx-button-spacer,[dbxButtonSpacer]" }, { kind: "directive", type: i6.DbxActionDirective, selector: "dbx-action,[dbxAction],dbx-action-context,[dbxActionContext]", exportAs: ["action", "dbxAction"] }, { kind: "directive", type: i6.DbxActionHandlerDirective, selector: "[dbxActionHandler]", inputs: ["dbxActionHandler"] }, { kind: "directive", type: i6.DbxActionValueDirective, selector: "[dbxActionValue]", inputs: ["dbxActionValue"] }, { kind: "pipe", type: i4.AsyncPipe, name: "async" }] }); }
64
+ handleCopyToClipboard = () => {
65
+ return this.content$.pipe(first(), switchMap((downloadTextContent) => {
66
+ if (downloadTextContent) {
67
+ return new Promise((resolve, reject) => {
68
+ const pending = this._clipboard.beginCopy(downloadTextContent.content);
69
+ let secondsRemainingForCopy = 20; // attempt to copy for up to 20 seconds
70
+ const attempt = () => {
71
+ const copyIsFinished = pending.copy();
72
+ if (!copyIsFinished && --secondsRemainingForCopy) {
73
+ setTimeout(attempt, MS_IN_SECOND);
74
+ }
75
+ else {
76
+ // Remember to destroy when you're done!
77
+ pending.destroy();
78
+ if (copyIsFinished) {
79
+ resolve(true);
80
+ }
81
+ else {
82
+ reject(false);
83
+ }
84
+ }
85
+ };
86
+ attempt();
87
+ });
88
+ }
89
+ else {
90
+ return of(false);
91
+ }
92
+ }), tap((success) => {
93
+ if (success) {
94
+ this._matSnackbar.open('Copied to clipboard', undefined, { duration: 3 * MS_IN_SECOND });
95
+ }
96
+ else {
97
+ this._matSnackbar.open('Content failed to copy...', undefined, { duration: 3 * MS_IN_SECOND });
98
+ }
99
+ }));
100
+ };
101
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxDownloadTextViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
102
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: DbxDownloadTextViewComponent, selector: "dbx-download-text-view", inputs: { loadingText: "loadingText", linear: "linear", showTitle: "showTitle", showPreview: "showPreview", content: "content", contentState: "contentState" }, viewQueries: [{ propertyName: "downloadButton", first: true, predicate: ["downloadButton"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<div class=\"dbx-download-text-view\">\n <dbx-loading [context]=\"context\" [linear]=\"linear\" [text]=\"loadingText\">\n <ng-container *ngTemplateOutlet=\"contentView\"></ng-container>\n </dbx-loading>\n</div>\n\n<!-- Template -->\n<ng-template #contentView>\n <div class=\"dbx-download-text-view-content\">\n <div *ngIf=\"showTitle\" class=\"dbx-download-text-view-content-title dbx-mb2 mat-subtitle-2\">{{ fileName$ | async }}</div>\n <div *ngIf=\"showPreview\" class=\"dbx-download-text-preview dbx-json dbx-content-pit dbx-content-pit-scrollable dbx-mb3\">{{ contentData$ | async }}</div>\n <div class=\"dbx-download-text-view-actions\">\n <dbx-button dbxAction dbxActionValue [raised]=\"true\" [dbxActionHandler]=\"handleCopyToClipboard\" icon=\"content_copy\" dbxActionButton text=\"Copy To Clipboard\"></dbx-button>\n <dbx-button-spacer></dbx-button-spacer>\n <a #downloadButton [href]=\"fileUrl$ | async\" [attr.download]=\"fileName$ | async\"><dbx-button icon=\"download\" text=\"Download\" [raised]=\"true\" [working]=\"!(downloadReady$ | async)\" [disabled]=\"!(downloadReady$ | async)\"></dbx-button></a>\n </div>\n </div>\n</ng-template>\n", dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i2.DbxLoadingComponent, selector: "dbx-loading", inputs: ["show", "text", "mode", "color", "diameter", "linear", "padding", "context", "loading", "error"] }, { kind: "directive", type: i3.DbxActionButtonDirective, selector: "[dbxActionButton]" }, { kind: "component", type: i4.DbxButtonComponent, selector: "dbx-button", inputs: ["type", "basic", "raised", "stroked", "flat", "iconOnly", "color", "spinnerColor", "customButtonColor", "customTextColor", "customSpinnerColor"] }, { kind: "directive", type: i5.DbxButtonSpacerDirective, selector: "dbx-button-spacer,[dbxButtonSpacer]" }, { kind: "directive", type: i3.DbxActionDirective, selector: "dbx-action,[dbxAction],dbx-action-context,[dbxActionContext]", exportAs: ["action", "dbxAction"] }, { kind: "directive", type: i3.DbxActionHandlerDirective, selector: "[dbxActionHandler]", inputs: ["dbxActionHandler"] }, { kind: "directive", type: i3.DbxActionValueDirective, selector: "[dbxActionValue]", inputs: ["dbxActionValue"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] });
106
103
  }
107
104
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxDownloadTextViewComponent, decorators: [{
108
105
  type: Component,
109
106
  args: [{ selector: 'dbx-download-text-view', template: "<div class=\"dbx-download-text-view\">\n <dbx-loading [context]=\"context\" [linear]=\"linear\" [text]=\"loadingText\">\n <ng-container *ngTemplateOutlet=\"contentView\"></ng-container>\n </dbx-loading>\n</div>\n\n<!-- Template -->\n<ng-template #contentView>\n <div class=\"dbx-download-text-view-content\">\n <div *ngIf=\"showTitle\" class=\"dbx-download-text-view-content-title dbx-mb2 mat-subtitle-2\">{{ fileName$ | async }}</div>\n <div *ngIf=\"showPreview\" class=\"dbx-download-text-preview dbx-json dbx-content-pit dbx-content-pit-scrollable dbx-mb3\">{{ contentData$ | async }}</div>\n <div class=\"dbx-download-text-view-actions\">\n <dbx-button dbxAction dbxActionValue [raised]=\"true\" [dbxActionHandler]=\"handleCopyToClipboard\" icon=\"content_copy\" dbxActionButton text=\"Copy To Clipboard\"></dbx-button>\n <dbx-button-spacer></dbx-button-spacer>\n <a #downloadButton [href]=\"fileUrl$ | async\" [attr.download]=\"fileName$ | async\"><dbx-button icon=\"download\" text=\"Download\" [raised]=\"true\" [working]=\"!(downloadReady$ | async)\" [disabled]=\"!(downloadReady$ | async)\"></dbx-button></a>\n </div>\n </div>\n</ng-template>\n" }]
110
- }], ctorParameters: function () { return [{ type: i1.Clipboard }, { type: i2.MatSnackBar }, { type: i3.DomSanitizer }]; }, propDecorators: { loadingText: [{
107
+ }], propDecorators: { loadingText: [{
111
108
  type: Input
112
109
  }], linear: [{
113
110
  type: Input
@@ -123,4 +120,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
123
120
  type: ViewChild,
124
121
  args: ['downloadButton', { read: ElementRef }]
125
122
  }] } });
126
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bmxvYWQudGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL2Rvd25sb2FkL3RleHQvZG93bmxvYWQudGV4dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL2Rvd25sb2FkL3RleHQvZG93bmxvYWQudGV4dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUMxRCxPQUFPLEVBQXNDLFdBQVcsRUFBRSxtQkFBbUIsRUFBRSxhQUFhLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbkosT0FBTyxFQUFFLFlBQVksRUFBUyxNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLEVBQUUsZUFBZSxFQUFjLGFBQWEsRUFBRSxvQkFBb0IsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLEVBQUUsRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNySSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFbkQsT0FBTyxFQUFFLFlBQVksRUFBbUIsTUFBTSwyQkFBMkIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQzs7Ozs7Ozs7OztBQUVsRTs7R0FFRztBQUtILE1BQU0sT0FBTyw0QkFBNkIsU0FBUSw2QkFBNkI7SUF5RDdFLFlBQTZCLFVBQXFCLEVBQW1CLFlBQXlCLEVBQW1CLFVBQXdCO1FBQ3ZJLEtBQUss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QyxHQUFHLFlBQVksRUFBRSxDQUFDLENBQUM7aUJBQ2hHO1lBQ0gsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUNKLENBQUMsQ0FBQztJQS9ERixDQUFDO0lBRUQsSUFDSSxPQUFPLENBQUMsT0FBbUM7UUFDN0MsSUFBSSxDQUFDLG9CQUFvQixDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0UsQ0FBQztJQUVELElBQ0ksWUFBWSxDQUFDLFlBQXNEO1FBQ3JFLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFDL0MsQ0FBQztJQUVELElBQ0ksY0FBYyxDQUFDLGNBQTBCO1FBQzNDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFUSxXQUFXO1FBQ2xCLEtBQUssQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNwQixJQUFJLENBQUMsb0JBQW9CLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDdkMsQ0FBQzsrR0EvRVUsNEJBQTRCO21HQUE1Qiw0QkFBNEIsMlRBdUVGLFVBQVUsb0RDeEZqRCxxcUNBa0JBOzs0RkREYSw0QkFBNEI7a0JBSnhDLFNBQVM7K0JBRUUsd0JBQXdCO3FKQUlsQyxXQUFXO3NCQURWLEtBQUs7Z0JBSU4sTUFBTTtzQkFETCxLQUFLO2dCQUlOLFNBQVM7c0JBRFIsS0FBSztnQkFJTixXQUFXO3NCQURWLEtBQUs7Z0JBb0RGLE9BQU87c0JBRFYsS0FBSztnQkFNRixZQUFZO3NCQURmLEtBQUs7Z0JBTUYsY0FBYztzQkFEakIsU0FBUzt1QkFBQyxnQkFBZ0IsRUFBRSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdFNuYWNrQmFyIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc25hY2stYmFyJztcbmltcG9ydCB7IFdvcmtVc2luZ09ic2VydmFibGUgLCBMb2FkaW5nU3RhdGUsIGZpbHRlck1heWJlLCBsb2FkaW5nU3RhdGVDb250ZXh0LCBzdWNjZXNzUmVzdWx0LCB2YWx1ZUZyb21GaW5pc2hlZExvYWRpbmdTdGF0ZSB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgTVNfSU5fU0VDT05ELCBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBjb21iaW5lTGF0ZXN0LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZmlyc3QsIG1hcCwgb2YsIHNoYXJlUmVwbGF5LCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ2xpcGJvYXJkIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NsaXBib2FyZCc7XG5pbXBvcnQgeyBEb3dubG9hZFRleHRDb250ZW50IH0gZnJvbSAnLi9kb3dubG9hZC50ZXh0JztcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZVJlc291cmNlVXJsIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBBYnN0cmFjdFN1YnNjcmlwdGlvbkRpcmVjdGl2ZSB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcblxuLyoqXG4gKiBEYnhTdHJ1Y3R1cmVEaXJlY3RpdmUgdXNlZCBzcGVjaWZpY2FsbHkgb24gdGhlIGJvZHkgb2YgdGhlIGFwcC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnLi9kb3dubG9hZC50ZXh0LmNvbXBvbmVudC5odG1sJyxcbiAgc2VsZWN0b3I6ICdkYngtZG93bmxvYWQtdGV4dC12aWV3J1xufSlcbmV4cG9ydCBjbGFzcyBEYnhEb3dubG9hZFRleHRWaWV3Q29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUge1xuICBASW5wdXQoKVxuICBsb2FkaW5nVGV4dD86IE1heWJlPHN0cmluZz47XG5cbiAgQElucHV0KClcbiAgbGluZWFyPzogTWF5YmU8Ym9vbGVhbj47XG5cbiAgQElucHV0KClcbiAgc2hvd1RpdGxlOiBib29sZWFuID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBzaG93UHJldmlldzogYm9vbGVhbiA9IHRydWU7XG5cbiAgcHJpdmF0ZSBfZG93bmxvYWRCdXR0b24gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1heWJlPEVsZW1lbnRSZWY+Pih1bmRlZmluZWQpO1xuICByZWFkb25seSBkb3dubG9hZEJ1dHRvbiQgPSB0aGlzLl9kb3dubG9hZEJ1dHRvbi5hc09ic2VydmFibGUoKTtcblxuICBwcml2YXRlIF9jb250ZW50TG9hZGluZ1N0YXRlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNYXliZTxMb2FkaW5nU3RhdGU8RG93bmxvYWRUZXh0Q29udGVudD4+Pih1bmRlZmluZWQpO1xuICByZWFkb25seSBjb250ZW50TG9hZGluZ1N0YXRlJCA9IHRoaXMuX2NvbnRlbnRMb2FkaW5nU3RhdGUucGlwZShmaWx0ZXJNYXliZSgpLCBzaGFyZVJlcGxheSgxKSk7XG5cbiAgcmVhZG9ubHkgY29udGVudCQgPSB0aGlzLl9jb250ZW50TG9hZGluZ1N0YXRlLnBpcGUoXG4gICAgc3dpdGNoTWFwKCh4KSA9PiB7XG4gICAgICBpZiAoeCkge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250ZW50TG9hZGluZ1N0YXRlJC5waXBlKHZhbHVlRnJvbUZpbmlzaGVkTG9hZGluZ1N0YXRlKCkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIG9mKHVuZGVmaW5lZCk7XG4gICAgICB9XG4gICAgfSlcbiAgKTtcblxuICByZWFkb25seSBjb250ZW50RGF0YSQgPSB0aGlzLmNvbnRlbnQkLnBpcGUobWFwKCh4KSA9PiB4Py5jb250ZW50KSk7XG5cbiAgcmVhZG9ubHkgY29udGV4dCA9IGxvYWRpbmdTdGF0ZUNvbnRleHQoeyBvYnM6IHRoaXMuY29udGVudExvYWRpbmdTdGF0ZSQgfSk7XG5cbiAgcmVhZG9ubHkgZmlsZU5hbWUkID0gdGhpcy5jb250ZW50JC5waXBlKFxuICAgIG1hcCgoeCkgPT4geD8ubmFtZSA/PyAnRmlsZScpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG4gIHJlYWRvbmx5IGZpbGVVcmwkOiBPYnNlcnZhYmxlPE1heWJlPFNhZmVSZXNvdXJjZVVybD4+ID0gdGhpcy5jb250ZW50JC5waXBlKFxuICAgIG1hcCgoY29udGVudCkgPT4ge1xuICAgICAgbGV0IGZpbGVVcmw6IE1heWJlPFNhZmVSZXNvdXJjZVVybD4gPSB1bmRlZmluZWQ7XG5cbiAgICAgIGlmIChjb250ZW50KSB7XG4gICAgICAgIGNvbnN0IGJsb2IgPSBuZXcgQmxvYihbY29udGVudC5jb250ZW50XSwgeyB0eXBlOiBjb250ZW50Lm1pbWVUeXBlID8/ICdhcHBsaWNhdGlvbi9vY3RldC1zdHJlYW0nIH0pO1xuICAgICAgICBmaWxlVXJsID0gdGhpcy5fc2FuaXRpemVyLmJ5cGFzc1NlY3VyaXR5VHJ1c3RSZXNvdXJjZVVybCh3aW5kb3cuVVJMLmNyZWF0ZU9iamVjdFVSTChibG9iKSk7XG4gICAgICB9XG5cbiAgICAgIHJldHVybiBmaWxlVXJsO1xuICAgIH0pLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgZG93bmxvYWRSZWFkeSQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLl9kb3dubG9hZEJ1dHRvbiwgdGhpcy5maWxlTmFtZSQsIHRoaXMuZmlsZVVybCRdKS5waXBlKFxuICAgIG1hcCgoW2J1dHRvbiwgbmFtZSwgdXJsXSkgPT4gQm9vbGVhbihidXR0b24gJiYgbmFtZSAmJiB1cmwpKSxcbiAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSBfY2xpcGJvYXJkOiBDbGlwYm9hcmQsIHByaXZhdGUgcmVhZG9ubHkgX21hdFNuYWNrYmFyOiBNYXRTbmFja0JhciwgcHJpdmF0ZSByZWFkb25seSBfc2FuaXRpemVyOiBEb21TYW5pdGl6ZXIpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IGNvbnRlbnQoY29udGVudDogTWF5YmU8RG93bmxvYWRUZXh0Q29udGVudD4pIHtcbiAgICB0aGlzLl9jb250ZW50TG9hZGluZ1N0YXRlLm5leHQoY29udGVudCA/IHN1Y2Nlc3NSZXN1bHQoY29udGVudCkgOiB1bmRlZmluZWQpO1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IGNvbnRlbnRTdGF0ZShjb250ZW50U3RhdGU6IE1heWJlPExvYWRpbmdTdGF0ZTxEb3dubG9hZFRleHRDb250ZW50Pj4pIHtcbiAgICB0aGlzLl9jb250ZW50TG9hZGluZ1N0YXRlLm5leHQoY29udGVudFN0YXRlKTtcbiAgfVxuXG4gIEBWaWV3Q2hpbGQoJ2Rvd25sb2FkQnV0dG9uJywgeyByZWFkOiBFbGVtZW50UmVmIH0pXG4gIHNldCBkb3dubG9hZEJ1dHRvbihkb3dubG9hZEJ1dHRvbjogRWxlbWVudFJlZikge1xuICAgIHRoaXMuX2Rvd25sb2FkQnV0dG9uLm5leHQoZG93bmxvYWRCdXR0b24pO1xuICB9XG5cbiAgb3ZlcnJpZGUgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgc3VwZXIubmdPbkRlc3Ryb3koKTtcbiAgICB0aGlzLl9jb250ZW50TG9hZGluZ1N0YXRlLmNvbXBsZXRlKCk7XG4gIH1cblxuICByZWFkb25seSBoYW5kbGVDb3B5VG9DbGlwYm9hcmQ6IFdvcmtVc2luZ09ic2VydmFibGUgPSAoKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuY29udGVudCQucGlwZShcbiAgICAgIGZpcnN0KCksXG4gICAgICBzd2l0Y2hNYXAoKGRvd25sb2FkVGV4dENvbnRlbnQ6IE1heWJlPERvd25sb2FkVGV4dENvbnRlbnQ+KSA9PiB7XG4gICAgICAgIGlmIChkb3dubG9hZFRleHRDb250ZW50KSB7XG4gICAgICAgICAgcmV0dXJuIG5ldyBQcm9taXNlPGJvb2xlYW4+KChyZXNvbHZlLCByZWplY3QpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IHBlbmRpbmcgPSB0aGlzLl9jbGlwYm9hcmQuYmVnaW5Db3B5KGRvd25sb2FkVGV4dENvbnRlbnQuY29udGVudCk7XG5cbiAgICAgICAgICAgIGxldCBzZWNvbmRzUmVtYWluaW5nRm9yQ29weSA9IDIwOyAvLyBhdHRlbXB0IHRvIGNvcHkgZm9yIHVwIHRvIDIwIHNlY29uZHNcblxuICAgICAgICAgICAgY29uc3QgYXR0ZW1wdCA9ICgpID0+IHtcbiAgICAgICAgICAgICAgY29uc3QgY29weUlzRmluaXNoZWQgPSBwZW5kaW5nLmNvcHkoKTtcblxuICAgICAgICAgICAgICBpZiAoIWNvcHlJc0ZpbmlzaGVkICYmIC0tc2Vjb25kc1JlbWFpbmluZ0ZvckNvcHkpIHtcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KGF0dGVtcHQsIE1TX0lOX1NFQ09ORCk7XG4gICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgLy8gUmVtZW1iZXIgdG8gZGVzdHJveSB3aGVuIHlvdSdyZSBkb25lIVxuICAgICAgICAgICAgICAgIHBlbmRpbmcuZGVzdHJveSgpO1xuXG4gICAgICAgICAgICAgICAgaWYgKGNvcHlJc0ZpbmlzaGVkKSB7XG4gICAgICAgICAgICAgICAgICByZXNvbHZlKHRydWUpO1xuICAgICAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgICByZWplY3QoZmFsc2UpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfTtcblxuICAgICAgICAgICAgYXR0ZW1wdCgpO1xuICAgICAgICAgIH0pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIHJldHVybiBvZihmYWxzZSk7XG4gICAgICAgIH1cbiAgICAgIH0pLFxuICAgICAgdGFwKChzdWNjZXNzKSA9PiB7XG4gICAgICAgIGlmIChzdWNjZXNzKSB7XG4gICAgICAgICAgdGhpcy5fbWF0U25hY2tiYXIub3BlbignQ29waWVkIHRvIGNsaXBib2FyZCcsIHVuZGVmaW5lZCwgeyBkdXJhdGlvbjogMyAqIE1TX0lOX1NFQ09ORCB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICB0aGlzLl9tYXRTbmFja2Jhci5vcGVuKCdDb250ZW50IGZhaWxlZCB0byBjb3B5Li4uJywgdW5kZWZpbmVkLCB7IGR1cmF0aW9uOiAzICogTVNfSU5fU0VDT05EIH0pO1xuICAgICAgICB9XG4gICAgICB9KVxuICAgICk7XG4gIH07XG59XG4iLCI8ZGl2IGNsYXNzPVwiZGJ4LWRvd25sb2FkLXRleHQtdmlld1wiPlxuICA8ZGJ4LWxvYWRpbmcgW2NvbnRleHRdPVwiY29udGV4dFwiIFtsaW5lYXJdPVwibGluZWFyXCIgW3RleHRdPVwibG9hZGluZ1RleHRcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwiY29udGVudFZpZXdcIj48L25nLWNvbnRhaW5lcj5cbiAgPC9kYngtbG9hZGluZz5cbjwvZGl2PlxuXG48IS0tIFRlbXBsYXRlIC0tPlxuPG5nLXRlbXBsYXRlICNjb250ZW50Vmlldz5cbiAgPGRpdiBjbGFzcz1cImRieC1kb3dubG9hZC10ZXh0LXZpZXctY29udGVudFwiPlxuICAgIDxkaXYgKm5nSWY9XCJzaG93VGl0bGVcIiBjbGFzcz1cImRieC1kb3dubG9hZC10ZXh0LXZpZXctY29udGVudC10aXRsZSBkYngtbWIyIG1hdC1zdWJ0aXRsZS0yXCI+e3sgZmlsZU5hbWUkIHwgYXN5bmMgfX08L2Rpdj5cbiAgICA8ZGl2ICpuZ0lmPVwic2hvd1ByZXZpZXdcIiBjbGFzcz1cImRieC1kb3dubG9hZC10ZXh0LXByZXZpZXcgZGJ4LWpzb24gZGJ4LWNvbnRlbnQtcGl0IGRieC1jb250ZW50LXBpdC1zY3JvbGxhYmxlIGRieC1tYjNcIj57eyBjb250ZW50RGF0YSQgfCBhc3luYyB9fTwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJkYngtZG93bmxvYWQtdGV4dC12aWV3LWFjdGlvbnNcIj5cbiAgICAgIDxkYngtYnV0dG9uIGRieEFjdGlvbiBkYnhBY3Rpb25WYWx1ZSBbcmFpc2VkXT1cInRydWVcIiBbZGJ4QWN0aW9uSGFuZGxlcl09XCJoYW5kbGVDb3B5VG9DbGlwYm9hcmRcIiBpY29uPVwiY29udGVudF9jb3B5XCIgZGJ4QWN0aW9uQnV0dG9uIHRleHQ9XCJDb3B5IFRvIENsaXBib2FyZFwiPjwvZGJ4LWJ1dHRvbj5cbiAgICAgIDxkYngtYnV0dG9uLXNwYWNlcj48L2RieC1idXR0b24tc3BhY2VyPlxuICAgICAgPGEgI2Rvd25sb2FkQnV0dG9uIFtocmVmXT1cImZpbGVVcmwkIHwgYXN5bmNcIiBbYXR0ci5kb3dubG9hZF09XCJmaWxlTmFtZSQgfCBhc3luY1wiPjxkYngtYnV0dG9uIGljb249XCJkb3dubG9hZFwiIHRleHQ9XCJEb3dubG9hZFwiIFtyYWlzZWRdPVwidHJ1ZVwiIFt3b3JraW5nXT1cIiEoZG93bmxvYWRSZWFkeSQgfCBhc3luYylcIiBbZGlzYWJsZWRdPVwiIShkb3dubG9hZFJlYWR5JCB8IGFzeW5jKVwiPjwvZGJ4LWJ1dHRvbj48L2E+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
123
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bmxvYWQudGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL2Rvd25sb2FkL3RleHQvZG93bmxvYWQudGV4dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL2Rvd25sb2FkL3RleHQvZG93bmxvYWQudGV4dC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNoRixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDMUQsT0FBTyxFQUFxQyxXQUFXLEVBQUUsbUJBQW1CLEVBQUUsYUFBYSxFQUFFLDZCQUE2QixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xKLE9BQU8sRUFBRSxZQUFZLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLGVBQWUsRUFBYyxhQUFhLEVBQUUsb0JBQW9CLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxFQUFFLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDckksT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRW5ELE9BQU8sRUFBRSxZQUFZLEVBQW1CLE1BQU0sMkJBQTJCLENBQUM7QUFDMUUsT0FBTyxFQUFFLDZCQUE2QixFQUFFLE1BQU0sbUJBQW1CLENBQUM7Ozs7Ozs7QUFFbEU7O0dBRUc7QUFLSCxNQUFNLE9BQU8sNEJBQTZCLFNBQVEsNkJBQTZCO0lBQzVELFVBQVUsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDL0Is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aW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRTbmFja0JhciB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XG5pbXBvcnQgeyBXb3JrVXNpbmdPYnNlcnZhYmxlLCBMb2FkaW5nU3RhdGUsIGZpbHRlck1heWJlLCBsb2FkaW5nU3RhdGVDb250ZXh0LCBzdWNjZXNzUmVzdWx0LCB2YWx1ZUZyb21GaW5pc2hlZExvYWRpbmdTdGF0ZSB9IGZyb20gJ0BkZXJlZWtiL3J4anMnO1xuaW1wb3J0IHsgTVNfSU5fU0VDT05ELCBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlLCBjb21iaW5lTGF0ZXN0LCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgZmlyc3QsIG1hcCwgb2YsIHNoYXJlUmVwbGF5LCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQ2xpcGJvYXJkIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NsaXBib2FyZCc7XG5pbXBvcnQgeyBEb3dubG9hZFRleHRDb250ZW50IH0gZnJvbSAnLi9kb3dubG9hZC50ZXh0JztcbmltcG9ydCB7IERvbVNhbml0aXplciwgU2FmZVJlc291cmNlVXJsIH0gZnJvbSAnQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlcic7XG5pbXBvcnQgeyBBYnN0cmFjdFN1YnNjcmlwdGlvbkRpcmVjdGl2ZSB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcblxuLyoqXG4gKiBEYnhTdHJ1Y3R1cmVEaXJlY3RpdmUgdXNlZCBzcGVjaWZpY2FsbHkgb24gdGhlIGJvZHkgb2YgdGhlIGFwcC5cbiAqL1xuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnLi9kb3dubG9hZC50ZXh0LmNvbXBvbmVudC5odG1sJyxcbiAgc2VsZWN0b3I6ICdkYngtZG93bmxvYWQtdGV4dC12aWV3J1xufSlcbmV4cG9ydCBjbGFzcyBEYnhEb3dubG9hZFRleHRWaWV3Q29tcG9uZW50IGV4dGVuZHMgQWJzdHJhY3RTdWJzY3JpcHRpb25EaXJlY3RpdmUge1xuICBwcml2YXRlIHJlYWRvbmx5IF9jbGlwYm9hcmQgPSBpbmplY3QoQ2xpcGJvYXJkKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfbWF0U25hY2tiYXIgPSBpbmplY3QoTWF0U25hY2tCYXIpO1xuICBwcml2YXRlIHJlYWRvbmx5IF9zYW5pdGl6ZXIgPSBpbmplY3QoRG9tU2FuaXRpemVyKTtcblxuICBASW5wdXQoKVxuICBsb2FkaW5nVGV4dD86IE1heWJlPHN0cmluZz47XG5cbiAgQElucHV0KClcbiAgbGluZWFyPzogTWF5YmU8Ym9vbGVhbj47XG5cbiAgQElucHV0KClcbiAgc2hvd1RpdGxlOiBib29sZWFuID0gdHJ1ZTtcblxuICBASW5wdXQoKVxuICBzaG93UHJldmlldzogYm9vbGVhbiA9IHRydWU7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfZG93bmxvYWRCdXR0b24gPSBuZXcgQmVoYXZpb3JTdWJqZWN0PE1heWJlPEVsZW1lbnRSZWY+Pih1bmRlZmluZWQpO1xuICByZWFkb25seSBkb3dubG9hZEJ1dHRvbiQgPSB0aGlzLl9kb3dubG9hZEJ1dHRvbi5hc09ic2VydmFibGUoKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IF9jb250ZW50TG9hZGluZ1N0YXRlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxNYXliZTxMb2FkaW5nU3RhdGU8RG93bmxvYWRUZXh0Q29udGVudD4+Pih1bmRlZmluZWQpO1xuICByZWFkb25seSBjb250ZW50TG9hZGluZ1N0YXRlJCA9IHRoaXMuX2NvbnRlbnRMb2FkaW5nU3RhdGUucGlwZShmaWx0ZXJNYXliZSgpLCBzaGFyZVJlcGxheSgxKSk7XG5cbiAgcmVhZG9ubHkgY29udGVudCQgPSB0aGlzLl9jb250ZW50TG9hZGluZ1N0YXRlLnBpcGUoXG4gICAgc3dpdGNoTWFwKCh4KSA9PiB7XG4gICAgICBpZiAoeCkge1xuICAgICAgICByZXR1cm4gdGhpcy5jb250ZW50TG9hZGluZ1N0YXRlJC5waXBlKHZhbHVlRnJvbUZpbmlzaGVkTG9hZGluZ1N0YXRlKCkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcmV0dXJuIG9mKHVuZGVmaW5lZCk7XG4gICAgICB9XG4gICAgfSlcbiAgKTtcblxuICByZWFkb25seSBjb250ZW50RGF0YSQgPSB0aGlzLmNvbnRlbnQkLnBpcGUobWFwKCh4KSA9PiB4Py5jb250ZW50KSk7XG5cbiAgcmVhZG9ubHkgY29udGV4dCA9IGxvYWRpbmdTdGF0ZUNvbnRleHQoeyBvYnM6IHRoaXMuY29udGVudExvYWRpbmdTdGF0ZSQgfSk7XG5cbiAgcmVhZG9ubHkgZmlsZU5hbWUkID0gdGhpcy5jb250ZW50JC5waXBlKFxuICAgIG1hcCgoeCkgPT4geD8ubmFtZSA/PyAnRmlsZScpLFxuICAgIHNoYXJlUmVwbGF5KDEpXG4gICk7XG5cbiAgcmVhZG9ubHkgZmlsZVVybCQ6IE9ic2VydmFibGU8TWF5YmU8U2FmZVJlc291cmNlVXJsPj4gPSB0aGlzLmNvbnRlbnQkLnBpcGUoXG4gICAgbWFwKChjb250ZW50KSA9PiB7XG4gICAgICBsZXQgZmlsZVVybDogTWF5YmU8U2FmZVJlc291cmNlVXJsPiA9IHVuZGVmaW5lZDtcblxuICAgICAgaWYgKGNvbnRlbnQpIHtcbiAgICAgICAgY29uc3QgYmxvYiA9IG5ldyBCbG9iKFtjb250ZW50LmNvbnRlbnRdLCB7IHR5cGU6IGNvbnRlbnQubWltZVR5cGUgPz8gJ2FwcGxpY2F0aW9uL29jdGV0LXN0cmVhbScgfSk7XG4gICAgICAgIGZpbGVVcmwgPSB0aGlzLl9zYW5pdGl6ZXIuYnlwYXNzU2VjdXJpdHlUcnVzdFJlc291cmNlVXJsKHdpbmRvdy5VUkwuY3JlYXRlT2JqZWN0VVJMKGJsb2IpKTtcbiAgICAgIH1cblxuICAgICAgcmV0dXJuIGZpbGVVcmw7XG4gICAgfSksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICByZWFkb25seSBkb3dubG9hZFJlYWR5JCA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuX2Rvd25sb2FkQnV0dG9uLCB0aGlzLmZpbGVOYW1lJCwgdGhpcy5maWxlVXJsJF0pLnBpcGUoXG4gICAgbWFwKChbYnV0dG9uLCBuYW1lLCB1cmxdKSA9PiBCb29sZWFuKGJ1dHRvbiAmJiBuYW1lICYmIHVybCkpLFxuICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgc2hhcmVSZXBsYXkoMSlcbiAgKTtcblxuICBASW5wdXQoKVxuICBzZXQgY29udGVudChjb250ZW50OiBNYXliZTxEb3dubG9hZFRleHRDb250ZW50Pikge1xuICAgIHRoaXMuX2NvbnRlbnRMb2FkaW5nU3RhdGUubmV4dChjb250ZW50ID8gc3VjY2Vzc1Jlc3VsdChjb250ZW50KSA6IHVuZGVmaW5lZCk7XG4gIH1cblxuICBASW5wdXQoKVxuICBzZXQgY29udGVudFN0YXRlKGNvbnRlbnRTdGF0ZTogTWF5YmU8TG9hZGluZ1N0YXRlPERvd25sb2FkVGV4dENvbnRlbnQ+Pikge1xuICAgIHRoaXMuX2NvbnRlbnRMb2FkaW5nU3RhdGUubmV4dChjb250ZW50U3RhdGUpO1xuICB9XG5cbiAgQFZpZXdDaGlsZCgnZG93bmxvYWRCdXR0b24nLCB7IHJlYWQ6IEVsZW1lbnRSZWYgfSlcbiAgc2V0IGRvd25sb2FkQnV0dG9uKGRvd25sb2FkQnV0dG9uOiBFbGVtZW50UmVmKSB7XG4gICAgdGhpcy5fZG93bmxvYWRCdXR0b24ubmV4dChkb3dubG9hZEJ1dHRvbik7XG4gIH1cblxuICBvdmVycmlkZSBuZ09uRGVzdHJveSgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uRGVzdHJveSgpO1xuICAgIHRoaXMuX2Rvd25sb2FkQnV0dG9uLmNvbXBsZXRlKCk7XG4gICAgdGhpcy5fY29udGVudExvYWRpbmdTdGF0ZS5jb21wbGV0ZSgpO1xuICB9XG5cbiAgcmVhZG9ubHkgaGFuZGxlQ29weVRvQ2xpcGJvYXJkOiBXb3JrVXNpbmdPYnNlcnZhYmxlID0gKCkgPT4ge1xuICAgIHJldHVybiB0aGlzLmNvbnRlbnQkLnBpcGUoXG4gICAgICBmaXJzdCgpLFxuICAgICAgc3dpdGNoTWFwKChkb3dubG9hZFRleHRDb250ZW50OiBNYXliZTxEb3dubG9hZFRleHRDb250ZW50PikgPT4ge1xuICAgICAgICBpZiAoZG93bmxvYWRUZXh0Q29udGVudCkge1xuICAgICAgICAgIHJldHVybiBuZXcgUHJvbWlzZTxib29sZWFuPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7XG4gICAgICAgICAgICBjb25zdCBwZW5kaW5nID0gdGhpcy5fY2xpcGJvYXJkLmJlZ2luQ29weShkb3dubG9hZFRleHRDb250ZW50LmNvbnRlbnQpO1xuXG4gICAgICAgICAgICBsZXQgc2Vjb25kc1JlbWFpbmluZ0ZvckNvcHkgPSAyMDsgLy8gYXR0ZW1wdCB0byBjb3B5IGZvciB1cCB0byAyMCBzZWNvbmRzXG5cbiAgICAgICAgICAgIGNvbnN0IGF0dGVtcHQgPSAoKSA9PiB7XG4gICAgICAgICAgICAgIGNvbnN0IGNvcHlJc0ZpbmlzaGVkID0gcGVuZGluZy5jb3B5KCk7XG5cbiAgICAgICAgICAgICAgaWYgKCFjb3B5SXNGaW5pc2hlZCAmJiAtLXNlY29uZHNSZW1haW5pbmdGb3JDb3B5KSB7XG4gICAgICAgICAgICAgICAgc2V0VGltZW91dChhdHRlbXB0LCBNU19JTl9TRUNPTkQpO1xuICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIC8vIFJlbWVtYmVyIHRvIGRlc3Ryb3kgd2hlbiB5b3UncmUgZG9uZSFcbiAgICAgICAgICAgICAgICBwZW5kaW5nLmRlc3Ryb3koKTtcblxuICAgICAgICAgICAgICAgIGlmIChjb3B5SXNGaW5pc2hlZCkge1xuICAgICAgICAgICAgICAgICAgcmVzb2x2ZSh0cnVlKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgcmVqZWN0KGZhbHNlKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH07XG5cbiAgICAgICAgICAgIGF0dGVtcHQoKTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gb2YoZmFsc2UpO1xuICAgICAgICB9XG4gICAgICB9KSxcbiAgICAgIHRhcCgoc3VjY2VzcykgPT4ge1xuICAgICAgICBpZiAoc3VjY2Vzcykge1xuICAgICAgICAgIHRoaXMuX21hdFNuYWNrYmFyLm9wZW4oJ0NvcGllZCB0byBjbGlwYm9hcmQnLCB1bmRlZmluZWQsIHsgZHVyYXRpb246IDMgKiBNU19JTl9TRUNPTkQgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5fbWF0U25hY2tiYXIub3BlbignQ29udGVudCBmYWlsZWQgdG8gY29weS4uLicsIHVuZGVmaW5lZCwgeyBkdXJhdGlvbjogMyAqIE1TX0lOX1NFQ09ORCB9KTtcbiAgICAgICAgfVxuICAgICAgfSlcbiAgICApO1xuICB9O1xufVxuIiwiPGRpdiBjbGFzcz1cImRieC1kb3dubG9hZC10ZXh0LXZpZXdcIj5cbiAgPGRieC1sb2FkaW5nIFtjb250ZXh0XT1cImNvbnRleHRcIiBbbGluZWFyXT1cImxpbmVhclwiIFt0ZXh0XT1cImxvYWRpbmdUZXh0XCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cImNvbnRlbnRWaWV3XCI+PC9uZy1jb250YWluZXI+XG4gIDwvZGJ4LWxvYWRpbmc+XG48L2Rpdj5cblxuPCEtLSBUZW1wbGF0ZSAtLT5cbjxuZy10ZW1wbGF0ZSAjY29udGVudFZpZXc+XG4gIDxkaXYgY2xhc3M9XCJkYngtZG93bmxvYWQtdGV4dC12aWV3LWNvbnRlbnRcIj5cbiAgICA8ZGl2ICpuZ0lmPVwic2hvd1RpdGxlXCIgY2xhc3M9XCJkYngtZG93bmxvYWQtdGV4dC12aWV3LWNvbnRlbnQtdGl0bGUgZGJ4LW1iMiBtYXQtc3VidGl0bGUtMlwiPnt7IGZpbGVOYW1lJCB8IGFzeW5jIH19PC9kaXY+XG4gICAgPGRpdiAqbmdJZj1cInNob3dQcmV2aWV3XCIgY2xhc3M9XCJkYngtZG93bmxvYWQtdGV4dC1wcmV2aWV3IGRieC1qc29uIGRieC1jb250ZW50LXBpdCBkYngtY29udGVudC1waXQtc2Nyb2xsYWJsZSBkYngtbWIzXCI+e3sgY29udGVudERhdGEkIHwgYXN5bmMgfX08L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiZGJ4LWRvd25sb2FkLXRleHQtdmlldy1hY3Rpb25zXCI+XG4gICAgICA8ZGJ4LWJ1dHRvbiBkYnhBY3Rpb24gZGJ4QWN0aW9uVmFsdWUgW3JhaXNlZF09XCJ0cnVlXCIgW2RieEFjdGlvbkhhbmRsZXJdPVwiaGFuZGxlQ29weVRvQ2xpcGJvYXJkXCIgaWNvbj1cImNvbnRlbnRfY29weVwiIGRieEFjdGlvbkJ1dHRvbiB0ZXh0PVwiQ29weSBUbyBDbGlwYm9hcmRcIj48L2RieC1idXR0b24+XG4gICAgICA8ZGJ4LWJ1dHRvbi1zcGFjZXI+PC9kYngtYnV0dG9uLXNwYWNlcj5cbiAgICAgIDxhICNkb3dubG9hZEJ1dHRvbiBbaHJlZl09XCJmaWxlVXJsJCB8IGFzeW5jXCIgW2F0dHIuZG93bmxvYWRdPVwiZmlsZU5hbWUkIHwgYXN5bmNcIj48ZGJ4LWJ1dHRvbiBpY29uPVwiZG93bmxvYWRcIiB0ZXh0PVwiRG93bmxvYWRcIiBbcmFpc2VkXT1cInRydWVcIiBbd29ya2luZ109XCIhKGRvd25sb2FkUmVhZHkkIHwgYXN5bmMpXCIgW2Rpc2FibGVkXT1cIiEoZG93bmxvYWRSZWFkeSQgfCBhc3luYylcIj48L2RieC1idXR0b24+PC9hPlxuICAgIDwvZGl2PlxuICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
@@ -8,21 +8,21 @@ import { MatSnackBarModule } from '@angular/material/snack-bar';
8
8
  import * as i0 from "@angular/core";
9
9
  const declarations = [DbxDownloadTextViewComponent];
10
10
  export class DbxDownloadTextModule {
11
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxDownloadTextModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
12
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: DbxDownloadTextModule, declarations: [DbxDownloadTextViewComponent], imports: [
11
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxDownloadTextModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
12
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: DbxDownloadTextModule, declarations: [DbxDownloadTextViewComponent], imports: [
13
13
  //
14
14
  CommonModule,
15
15
  DbxLoadingModule,
16
16
  DbxButtonModule,
17
17
  DbxActionModule,
18
- MatSnackBarModule], exports: [DbxDownloadTextViewComponent] }); }
19
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxDownloadTextModule, imports: [
18
+ MatSnackBarModule], exports: [DbxDownloadTextViewComponent] });
19
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxDownloadTextModule, imports: [
20
20
  //
21
21
  CommonModule,
22
22
  DbxLoadingModule,
23
23
  DbxButtonModule,
24
24
  DbxActionModule,
25
- MatSnackBarModule] }); }
25
+ MatSnackBarModule] });
26
26
  }
27
27
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxDownloadTextModule, decorators: [{
28
28
  type: NgModule,
@@ -39,4 +39,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
39
39
  exports: declarations
40
40
  }]
41
41
  }] });
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bmxvYWQudGV4dC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL2Rvd25sb2FkL3RleHQvZG93bmxvYWQudGV4dC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7QUFFaEUsTUFBTSxZQUFZLEdBQUcsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO0FBY3BELE1BQU0sT0FBTyxxQkFBcUI7K0dBQXJCLHFCQUFxQjtnSEFBckIscUJBQXFCLGlCQWRaLDRCQUE0QjtZQUk5QyxFQUFFO1lBQ0YsWUFBWTtZQUNaLGdCQUFnQjtZQUNoQixlQUFlO1lBQ2YsZUFBZTtZQUNmLGlCQUFpQixhQVRDLDRCQUE0QjtnSEFjckMscUJBQXFCO1lBVjlCLEVBQUU7WUFDRixZQUFZO1lBQ1osZ0JBQWdCO1lBQ2hCLGVBQWU7WUFDZixlQUFlO1lBQ2YsaUJBQWlCOzs0RkFLUixxQkFBcUI7a0JBWmpDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLEVBQUU7d0JBQ0YsWUFBWTt3QkFDWixnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixpQkFBaUI7cUJBQ2xCO29CQUNELFlBQVk7b0JBQ1osT0FBTyxFQUFFLFlBQVk7aUJBQ3RCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYnhEb3dubG9hZFRleHRWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9kb3dubG9hZC50ZXh0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYnhCdXR0b25Nb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9idXR0b24vYnV0dG9uLm1vZHVsZSc7XG5pbXBvcnQgeyBEYnhMb2FkaW5nTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vbG9hZGluZy9sb2FkaW5nLm1vZHVsZSc7XG5pbXBvcnQgeyBEYnhBY3Rpb25Nb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9hY3Rpb24vYWN0aW9uLm1vZHVsZSc7XG5pbXBvcnQgeyBNYXRTbmFja0Jhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XG5cbmNvbnN0IGRlY2xhcmF0aW9ucyA9IFtEYnhEb3dubG9hZFRleHRWaWV3Q29tcG9uZW50XTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIC8vXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIERieExvYWRpbmdNb2R1bGUsXG4gICAgRGJ4QnV0dG9uTW9kdWxlLFxuICAgIERieEFjdGlvbk1vZHVsZSxcbiAgICBNYXRTbmFja0Jhck1vZHVsZVxuICBdLFxuICBkZWNsYXJhdGlvbnMsXG4gIGV4cG9ydHM6IGRlY2xhcmF0aW9uc1xufSlcbmV4cG9ydCBjbGFzcyBEYnhEb3dubG9hZFRleHRNb2R1bGUge31cbiJdfQ==
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZG93bmxvYWQudGV4dC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL2Rvd25sb2FkL3RleHQvZG93bmxvYWQudGV4dC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQzs7QUFFaEUsTUFBTSxZQUFZLEdBQUcsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO0FBY3BELE1BQU0sT0FBTyxxQkFBcUI7d0dBQXJCLHFCQUFxQjt5R0FBckIscUJBQXFCLGlCQWRaLDRCQUE0QjtZQUk5QyxFQUFFO1lBQ0YsWUFBWTtZQUNaLGdCQUFnQjtZQUNoQixlQUFlO1lBQ2YsZUFBZTtZQUNmLGlCQUFpQixhQVRDLDRCQUE0Qjt5R0FjckMscUJBQXFCO1lBVjlCLEVBQUU7WUFDRixZQUFZO1lBQ1osZ0JBQWdCO1lBQ2hCLGVBQWU7WUFDZixlQUFlO1lBQ2YsaUJBQWlCOzs0RkFLUixxQkFBcUI7a0JBWmpDLFFBQVE7bUJBQUM7b0JBQ1IsT0FBTyxFQUFFO3dCQUNQLEVBQUU7d0JBQ0YsWUFBWTt3QkFDWixnQkFBZ0I7d0JBQ2hCLGVBQWU7d0JBQ2YsZUFBZTt3QkFDZixpQkFBaUI7cUJBQ2xCO29CQUNELFlBQVk7b0JBQ1osT0FBTyxFQUFFLFlBQVk7aUJBQ3RCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBEYnhEb3dubG9hZFRleHRWaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9kb3dubG9hZC50ZXh0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBEYnhCdXR0b25Nb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9idXR0b24vYnV0dG9uLm1vZHVsZSc7XG5pbXBvcnQgeyBEYnhMb2FkaW5nTW9kdWxlIH0gZnJvbSAnLi4vLi4vLi4vbG9hZGluZy9sb2FkaW5nLm1vZHVsZSc7XG5pbXBvcnQgeyBEYnhBY3Rpb25Nb2R1bGUgfSBmcm9tICcuLi8uLi8uLi9hY3Rpb24vYWN0aW9uLm1vZHVsZSc7XG5pbXBvcnQgeyBNYXRTbmFja0Jhck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3NuYWNrLWJhcic7XG5cbmNvbnN0IGRlY2xhcmF0aW9ucyA9IFtEYnhEb3dubG9hZFRleHRWaWV3Q29tcG9uZW50XTtcblxuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIC8vXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIERieExvYWRpbmdNb2R1bGUsXG4gICAgRGJ4QnV0dG9uTW9kdWxlLFxuICAgIERieEFjdGlvbk1vZHVsZSxcbiAgICBNYXRTbmFja0Jhck1vZHVsZVxuICBdLFxuICBkZWNsYXJhdGlvbnMsXG4gIGV4cG9ydHM6IGRlY2xhcmF0aW9uc1xufSlcbmV4cG9ydCBjbGFzcyBEYnhEb3dubG9hZFRleHRNb2R1bGUge31cbiJdfQ==
@@ -5,17 +5,17 @@ import { EffectsModule } from '@ngrx/effects';
5
5
  import { StoreModule } from '@ngrx/store';
6
6
  import { DbxListLayoutModule } from '../../layout/list/list.layout.module';
7
7
  import { DbxModelTrackerService } from './model.tracker.service';
8
- import { DbxModelViewTrackerStorage } from './model.tracker.view.storage';
8
+ import { DBX_MODEL_VIEW_TRACKER_STORAGE_ACCESSOR_TOKEN } from './model.tracker.view.storage';
9
9
  import { fromDbxModel } from './state';
10
10
  import { DbxModelTrackerEffects } from './state/effects/tracker.effects';
11
11
  import * as i0 from "@angular/core";
12
12
  import * as i1 from "@ngrx/effects";
13
13
  import * as i2 from "@ngrx/store";
14
- export function appObjectViewTrackerStorageFactory(storageAccessorFactory) {
14
+ export function appObjectViewTrackerStorageAccessorFactory(storageAccessorFactory) {
15
15
  const accessor = storageAccessorFactory.createStorageAccessor({
16
16
  prefix: 'mtvs'
17
17
  });
18
- return new DbxModelViewTrackerStorage(accessor);
18
+ return accessor;
19
19
  }
20
20
  /**
21
21
  * Contains components related to displaying content related to models identified only by their model key.
@@ -27,26 +27,26 @@ export class DbxModelInfoModule {
27
27
  providers: [
28
28
  DbxModelTrackerService,
29
29
  {
30
- provide: DbxModelViewTrackerStorage,
31
- useFactory: appObjectViewTrackerStorageFactory,
30
+ provide: DBX_MODEL_VIEW_TRACKER_STORAGE_ACCESSOR_TOKEN,
31
+ useFactory: appObjectViewTrackerStorageAccessorFactory,
32
32
  deps: [SimpleStorageAccessorFactory]
33
33
  }
34
34
  ]
35
35
  };
36
36
  }
37
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxModelInfoModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
38
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: DbxModelInfoModule, imports: [
37
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxModelInfoModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
38
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "16.2.12", ngImport: i0, type: DbxModelInfoModule, imports: [
39
39
  //
40
40
  CommonModule,
41
41
  DbxListLayoutModule,
42
- DbxInjectionComponentModule, i1.EffectsFeatureModule, i2.StoreFeatureModule] }); }
43
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxModelInfoModule, imports: [
42
+ DbxInjectionComponentModule, i1.EffectsFeatureModule, i2.StoreFeatureModule] });
43
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxModelInfoModule, imports: [
44
44
  //
45
45
  CommonModule,
46
46
  DbxListLayoutModule,
47
47
  DbxInjectionComponentModule,
48
48
  EffectsModule.forFeature([DbxModelTrackerEffects]),
49
- StoreModule.forFeature(fromDbxModel.featureKey, fromDbxModel.reducers)] }); }
49
+ StoreModule.forFeature(fromDbxModel.featureKey, fromDbxModel.reducers)] });
50
50
  }
51
51
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxModelInfoModule, decorators: [{
52
52
  type: NgModule,
@@ -63,4 +63,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
63
63
  exports: []
64
64
  }]
65
65
  }] });
66
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LXdlYi9zcmMvbGliL2V4dGVuc2lvbi9tb2RlbC9tb2RlbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSw0QkFBNEIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQzlGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMxQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUUzRSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNqRSxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMxRSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sU0FBUyxDQUFDO0FBQ3ZDLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDOzs7O0FBRXpFLE1BQU0sVUFBVSxrQ0FBa0MsQ0FBQyxzQkFBb0Q7SUFDckcsTUFBTSxRQUFRLEdBQUcsc0JBQXNCLENBQUMscUJBQXFCLENBQThCO1FBQ3pGLE1BQU0sRUFBRSxNQUFNO0tBQ2YsQ0FBQyxDQUFDO0lBRUgsT0FBTyxJQUFJLDBCQUEwQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQ2xELENBQUM7QUFFRDs7R0FFRztBQWFILE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPO1lBQ0wsUUFBUSxFQUFFLGtCQUFrQjtZQUM1QixTQUFTLEVBQUU7Z0JBQ1Qsc0JBQXNCO2dCQUN0QjtvQkFDRSxPQUFPLEVBQUUsMEJBQTBCO29CQUNuQyxVQUFVLEVBQUUsa0NBQWtDO29CQUM5QyxJQUFJLEVBQUUsQ0FBQyw0QkFBNEIsQ0FBQztpQkFDckM7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDOytHQWJVLGtCQUFrQjtnSEFBbEIsa0JBQWtCO1lBVjNCLEVBQUU7WUFDRixZQUFZO1lBQ1osbUJBQW1CO1lBQ25CLDJCQUEyQjtnSEFPbEIsa0JBQWtCO1lBVjNCLEVBQUU7WUFDRixZQUFZO1lBQ1osbUJBQW1CO1lBQ25CLDJCQUEyQjtZQUMzQixhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsc0JBQXNCLENBQUMsQ0FBQztZQUNsRCxXQUFXLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsWUFBWSxDQUFDLFFBQVEsQ0FBQzs7NEZBSzdELGtCQUFrQjtrQkFaOUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsRUFBRTt3QkFDRixZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsMkJBQTJCO3dCQUMzQixhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsc0JBQXNCLENBQUMsQ0FBQzt3QkFDbEQsV0FBVyxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsVUFBVSxFQUFFLFlBQVksQ0FBQyxRQUFRLENBQUM7cUJBQ3ZFO29CQUNELFlBQVksRUFBRSxFQUFFO29CQUNoQixPQUFPLEVBQUUsRUFBRTtpQkFDWiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4SW5qZWN0aW9uQ29tcG9uZW50TW9kdWxlLCBTaW1wbGVTdG9yYWdlQWNjZXNzb3JGYWN0b3J5IH0gZnJvbSAnQGRlcmVla2IvZGJ4LWNvcmUnO1xuaW1wb3J0IHsgRWZmZWN0c01vZHVsZSB9IGZyb20gJ0BuZ3J4L2VmZmVjdHMnO1xuaW1wb3J0IHsgU3RvcmVNb2R1bGUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBEYnhMaXN0TGF5b3V0TW9kdWxlIH0gZnJvbSAnLi4vLi4vbGF5b3V0L2xpc3QvbGlzdC5sYXlvdXQubW9kdWxlJztcbmltcG9ydCB7IERieE1vZGVsVmlld1RyYWNrZXJFdmVudFNldCB9IGZyb20gJy4vbW9kZWwudHJhY2tlcic7XG5pbXBvcnQgeyBEYnhNb2RlbFRyYWNrZXJTZXJ2aWNlIH0gZnJvbSAnLi9tb2RlbC50cmFja2VyLnNlcnZpY2UnO1xuaW1wb3J0IHsgRGJ4TW9kZWxWaWV3VHJhY2tlclN0b3JhZ2UgfSBmcm9tICcuL21vZGVsLnRyYWNrZXIudmlldy5zdG9yYWdlJztcbmltcG9ydCB7IGZyb21EYnhNb2RlbCB9IGZyb20gJy4vc3RhdGUnO1xuaW1wb3J0IHsgRGJ4TW9kZWxUcmFja2VyRWZmZWN0cyB9IGZyb20gJy4vc3RhdGUvZWZmZWN0cy90cmFja2VyLmVmZmVjdHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gYXBwT2JqZWN0Vmlld1RyYWNrZXJTdG9yYWdlRmFjdG9yeShzdG9yYWdlQWNjZXNzb3JGYWN0b3J5OiBTaW1wbGVTdG9yYWdlQWNjZXNzb3JGYWN0b3J5KTogRGJ4TW9kZWxWaWV3VHJhY2tlclN0b3JhZ2Uge1xuICBjb25zdCBhY2Nlc3NvciA9IHN0b3JhZ2VBY2Nlc3NvckZhY3RvcnkuY3JlYXRlU3RvcmFnZUFjY2Vzc29yPERieE1vZGVsVmlld1RyYWNrZXJFdmVudFNldD4oe1xuICAgIHByZWZpeDogJ210dnMnXG4gIH0pO1xuXG4gIHJldHVybiBuZXcgRGJ4TW9kZWxWaWV3VHJhY2tlclN0b3JhZ2UoYWNjZXNzb3IpO1xufVxuXG4vKipcbiAqIENvbnRhaW5zIGNvbXBvbmVudHMgcmVsYXRlZCB0byBkaXNwbGF5aW5nIGNvbnRlbnQgcmVsYXRlZCB0byBtb2RlbHMgaWRlbnRpZmllZCBvbmx5IGJ5IHRoZWlyIG1vZGVsIGtleS5cbiAqL1xuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIC8vXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIERieExpc3RMYXlvdXRNb2R1bGUsXG4gICAgRGJ4SW5qZWN0aW9uQ29tcG9uZW50TW9kdWxlLFxuICAgIEVmZmVjdHNNb2R1bGUuZm9yRmVhdHVyZShbRGJ4TW9kZWxUcmFja2VyRWZmZWN0c10pLFxuICAgIFN0b3JlTW9kdWxlLmZvckZlYXR1cmUoZnJvbURieE1vZGVsLmZlYXR1cmVLZXksIGZyb21EYnhNb2RlbC5yZWR1Y2VycylcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXSxcbiAgZXhwb3J0czogW11cbn0pXG5leHBvcnQgY2xhc3MgRGJ4TW9kZWxJbmZvTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxEYnhNb2RlbEluZm9Nb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IERieE1vZGVsSW5mb01vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICBEYnhNb2RlbFRyYWNrZXJTZXJ2aWNlLFxuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogRGJ4TW9kZWxWaWV3VHJhY2tlclN0b3JhZ2UsXG4gICAgICAgICAgdXNlRmFjdG9yeTogYXBwT2JqZWN0Vmlld1RyYWNrZXJTdG9yYWdlRmFjdG9yeSxcbiAgICAgICAgICBkZXBzOiBbU2ltcGxlU3RvcmFnZUFjY2Vzc29yRmFjdG9yeV1cbiAgICAgICAgfVxuICAgICAgXVxuICAgIH07XG4gIH1cbn1cbiJdfQ==
66
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LXdlYi9zcmMvbGliL2V4dGVuc2lvbi9tb2RlbC9tb2RlbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBdUIsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSw0QkFBNEIsRUFBbUIsTUFBTSxtQkFBbUIsQ0FBQztBQUMvRyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDMUMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFFM0UsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDakUsT0FBTyxFQUFFLDZDQUE2QyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDN0YsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLFNBQVMsQ0FBQztBQUN2QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQzs7OztBQUV6RSxNQUFNLFVBQVUsMENBQTBDLENBQUMsc0JBQW9EO0lBQzdHLE1BQU0sUUFBUSxHQUFHLHNCQUFzQixDQUFDLHFCQUFxQixDQUE4QjtRQUN6RixNQUFNLEVBQUUsTUFBTTtLQUNmLENBQUMsQ0FBQztJQUVILE9BQU8sUUFBUSxDQUFDO0FBQ2xCLENBQUM7QUFFRDs7R0FFRztBQWFILE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsTUFBTSxDQUFDLE9BQU87UUFDWixPQUFPO1lBQ0wsUUFBUSxFQUFFLGtCQUFrQjtZQUM1QixTQUFTLEVBQUU7Z0JBQ1Qsc0JBQXNCO2dCQUN0QjtvQkFDRSxPQUFPLEVBQUUsNkNBQTZDO29CQUN0RCxVQUFVLEVBQUUsMENBQTBDO29CQUN0RCxJQUFJLEVBQUUsQ0FBQyw0QkFBNEIsQ0FBQztpQkFDckM7YUFDRjtTQUNGLENBQUM7SUFDSixDQUFDO3dHQWJVLGtCQUFrQjt5R0FBbEIsa0JBQWtCO1lBVjNCLEVBQUU7WUFDRixZQUFZO1lBQ1osbUJBQW1CO1lBQ25CLDJCQUEyQjt5R0FPbEIsa0JBQWtCO1lBVjNCLEVBQUU7WUFDRixZQUFZO1lBQ1osbUJBQW1CO1lBQ25CLDJCQUEyQjtZQUMzQixhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsc0JBQXNCLENBQUMsQ0FBQztZQUNsRCxXQUFXLENBQUMsVUFBVSxDQUFDLFlBQVksQ0FBQyxVQUFVLEVBQUUsWUFBWSxDQUFDLFFBQVEsQ0FBQzs7NEZBSzdELGtCQUFrQjtrQkFaOUIsUUFBUTttQkFBQztvQkFDUixPQUFPLEVBQUU7d0JBQ1AsRUFBRTt3QkFDRixZQUFZO3dCQUNaLG1CQUFtQjt3QkFDbkIsMkJBQTJCO3dCQUMzQixhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsc0JBQXNCLENBQUMsQ0FBQzt3QkFDbEQsV0FBVyxDQUFDLFVBQVUsQ0FBQyxZQUFZLENBQUMsVUFBVSxFQUFFLFlBQVksQ0FBQyxRQUFRLENBQUM7cUJBQ3ZFO29CQUNELFlBQVksRUFBRSxFQUFFO29CQUNoQixPQUFPLEVBQUUsRUFBRTtpQkFDWiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBNb2R1bGVXaXRoUHJvdmlkZXJzLCBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRGJ4SW5qZWN0aW9uQ29tcG9uZW50TW9kdWxlLCBTaW1wbGVTdG9yYWdlQWNjZXNzb3JGYWN0b3J5LCBTdG9yYWdlQWNjZXNzb3IgfSBmcm9tICdAZGVyZWVrYi9kYngtY29yZSc7XG5pbXBvcnQgeyBFZmZlY3RzTW9kdWxlIH0gZnJvbSAnQG5ncngvZWZmZWN0cyc7XG5pbXBvcnQgeyBTdG9yZU1vZHVsZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IERieExpc3RMYXlvdXRNb2R1bGUgfSBmcm9tICcuLi8uLi9sYXlvdXQvbGlzdC9saXN0LmxheW91dC5tb2R1bGUnO1xuaW1wb3J0IHsgRGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50U2V0IH0gZnJvbSAnLi9tb2RlbC50cmFja2VyJztcbmltcG9ydCB7IERieE1vZGVsVHJhY2tlclNlcnZpY2UgfSBmcm9tICcuL21vZGVsLnRyYWNrZXIuc2VydmljZSc7XG5pbXBvcnQgeyBEQlhfTU9ERUxfVklFV19UUkFDS0VSX1NUT1JBR0VfQUNDRVNTT1JfVE9LRU4gfSBmcm9tICcuL21vZGVsLnRyYWNrZXIudmlldy5zdG9yYWdlJztcbmltcG9ydCB7IGZyb21EYnhNb2RlbCB9IGZyb20gJy4vc3RhdGUnO1xuaW1wb3J0IHsgRGJ4TW9kZWxUcmFja2VyRWZmZWN0cyB9IGZyb20gJy4vc3RhdGUvZWZmZWN0cy90cmFja2VyLmVmZmVjdHMnO1xuXG5leHBvcnQgZnVuY3Rpb24gYXBwT2JqZWN0Vmlld1RyYWNrZXJTdG9yYWdlQWNjZXNzb3JGYWN0b3J5KHN0b3JhZ2VBY2Nlc3NvckZhY3Rvcnk6IFNpbXBsZVN0b3JhZ2VBY2Nlc3NvckZhY3RvcnkpOiBTdG9yYWdlQWNjZXNzb3I8RGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50U2V0PiB7XG4gIGNvbnN0IGFjY2Vzc29yID0gc3RvcmFnZUFjY2Vzc29yRmFjdG9yeS5jcmVhdGVTdG9yYWdlQWNjZXNzb3I8RGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50U2V0Pih7XG4gICAgcHJlZml4OiAnbXR2cydcbiAgfSk7XG5cbiAgcmV0dXJuIGFjY2Vzc29yO1xufVxuXG4vKipcbiAqIENvbnRhaW5zIGNvbXBvbmVudHMgcmVsYXRlZCB0byBkaXNwbGF5aW5nIGNvbnRlbnQgcmVsYXRlZCB0byBtb2RlbHMgaWRlbnRpZmllZCBvbmx5IGJ5IHRoZWlyIG1vZGVsIGtleS5cbiAqL1xuQE5nTW9kdWxlKHtcbiAgaW1wb3J0czogW1xuICAgIC8vXG4gICAgQ29tbW9uTW9kdWxlLFxuICAgIERieExpc3RMYXlvdXRNb2R1bGUsXG4gICAgRGJ4SW5qZWN0aW9uQ29tcG9uZW50TW9kdWxlLFxuICAgIEVmZmVjdHNNb2R1bGUuZm9yRmVhdHVyZShbRGJ4TW9kZWxUcmFja2VyRWZmZWN0c10pLFxuICAgIFN0b3JlTW9kdWxlLmZvckZlYXR1cmUoZnJvbURieE1vZGVsLmZlYXR1cmVLZXksIGZyb21EYnhNb2RlbC5yZWR1Y2VycylcbiAgXSxcbiAgZGVjbGFyYXRpb25zOiBbXSxcbiAgZXhwb3J0czogW11cbn0pXG5leHBvcnQgY2xhc3MgRGJ4TW9kZWxJbmZvTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxEYnhNb2RlbEluZm9Nb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IERieE1vZGVsSW5mb01vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICBEYnhNb2RlbFRyYWNrZXJTZXJ2aWNlLFxuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogREJYX01PREVMX1ZJRVdfVFJBQ0tFUl9TVE9SQUdFX0FDQ0VTU09SX1RPS0VOLFxuICAgICAgICAgIHVzZUZhY3Rvcnk6IGFwcE9iamVjdFZpZXdUcmFja2VyU3RvcmFnZUFjY2Vzc29yRmFjdG9yeSxcbiAgICAgICAgICBkZXBzOiBbU2ltcGxlU3RvcmFnZUFjY2Vzc29yRmFjdG9yeV1cbiAgICAgICAgfVxuICAgICAgXVxuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -1,25 +1,22 @@
1
- import { Injectable } from '@angular/core';
1
+ import { Injectable, inject } from '@angular/core';
2
2
  import { Store } from '@ngrx/store';
3
3
  import { onDbxModel } from './state';
4
4
  import * as i0 from "@angular/core";
5
- import * as i1 from "@ngrx/store";
6
5
  export class DbxModelObjectStateService {
7
- constructor(store) {
8
- this.store = store;
9
- }
6
+ store = inject((Store));
10
7
  /**
11
8
  * Emit a model viewed event.
12
9
  */
13
10
  emitModelViewEvent({ modelKeyTypeNamePair, context }) {
14
11
  this.store.dispatch(onDbxModel.DbxModelStateModelActions.emitObjectViewEvent({ modelKeyTypeNamePair, context }));
15
12
  }
16
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxModelObjectStateService, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Injectable }); }
17
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxModelObjectStateService, providedIn: 'root' }); }
13
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxModelObjectStateService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
14
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxModelObjectStateService, providedIn: 'root' });
18
15
  }
19
16
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxModelObjectStateService, decorators: [{
20
17
  type: Injectable,
21
18
  args: [{
22
19
  providedIn: 'root'
23
20
  }]
24
- }], ctorParameters: function () { return [{ type: i1.Store }]; } });
25
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuc3RhdGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9leHRlbnNpb24vbW9kZWwvbW9kZWwuc3RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzNDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDcEMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFNBQVMsQ0FBQzs7O0FBT3JDLE1BQU0sT0FBTywwQkFBMEI7SUFDckMsWUFBcUIsS0FBK0I7UUFBL0IsVUFBSyxHQUFMLEtBQUssQ0FBMEI7SUFBRyxDQUFDO0lBRXhEOztPQUVHO0lBQ0gsa0JBQWtCLENBQUMsRUFBRSxvQkFBb0IsRUFBRSxPQUFPLEVBQThCO1FBQzlFLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyx5QkFBeUIsQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLG9CQUFvQixFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNuSCxDQUFDOytHQVJVLDBCQUEwQjttSEFBMUIsMEJBQTBCLGNBRnpCLE1BQU07OzRGQUVQLDBCQUEwQjtrQkFIdEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IG9uRGJ4TW9kZWwgfSBmcm9tICcuL3N0YXRlJztcbmltcG9ydCB7IERieE1vZGVsT2JqZWN0Vmlld2VkUGFyYW1zIH0gZnJvbSAnLi9zdGF0ZS9hY3Rpb25zL21vZGVsLmFjdGlvbnMnO1xuaW1wb3J0IHsgRGJ4TW9kZWxGdWxsU3RhdGUgfSBmcm9tICcuL3N0YXRlL3N0YXRlJztcblxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRGJ4TW9kZWxPYmplY3RTdGF0ZVNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcihyZWFkb25seSBzdG9yZTogU3RvcmU8RGJ4TW9kZWxGdWxsU3RhdGU+KSB7fVxuXG4gIC8qKlxuICAgKiBFbWl0IGEgbW9kZWwgdmlld2VkIGV2ZW50LlxuICAgKi9cbiAgZW1pdE1vZGVsVmlld0V2ZW50KHsgbW9kZWxLZXlUeXBlTmFtZVBhaXIsIGNvbnRleHQgfTogRGJ4TW9kZWxPYmplY3RWaWV3ZWRQYXJhbXMpOiB2b2lkIHtcbiAgICB0aGlzLnN0b3JlLmRpc3BhdGNoKG9uRGJ4TW9kZWwuRGJ4TW9kZWxTdGF0ZU1vZGVsQWN0aW9ucy5lbWl0T2JqZWN0Vmlld0V2ZW50KHsgbW9kZWxLZXlUeXBlTmFtZVBhaXIsIGNvbnRleHQgfSkpO1xuICB9XG59XG4iXX0=
21
+ }] });
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwuc3RhdGUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2RieC13ZWIvc3JjL2xpYi9leHRlbnNpb24vbW9kZWwvbW9kZWwuc3RhdGUuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUNuRCxPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxTQUFTLENBQUM7O0FBT3JDLE1BQU0sT0FBTywwQkFBMEI7SUFDNUIsS0FBSyxHQUFHLE1BQU0sQ0FBQyxDQUFBLEtBQXdCLENBQUEsQ0FBQyxDQUFDO0lBRWxEOztPQUVHO0lBQ0gsa0JBQWtCLENBQUMsRUFBRSxvQkFBb0IsRUFBRSxPQUFPLEVBQThCO1FBQzlFLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyx5QkFBeUIsQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLG9CQUFvQixFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQztJQUNuSCxDQUFDO3dHQVJVLDBCQUEwQjs0R0FBMUIsMEJBQTBCLGNBRnpCLE1BQU07OzRGQUVQLDBCQUEwQjtrQkFIdEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbmplY3RhYmxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgb25EYnhNb2RlbCB9IGZyb20gJy4vc3RhdGUnO1xuaW1wb3J0IHsgRGJ4TW9kZWxPYmplY3RWaWV3ZWRQYXJhbXMgfSBmcm9tICcuL3N0YXRlL2FjdGlvbnMvbW9kZWwuYWN0aW9ucyc7XG5pbXBvcnQgeyBEYnhNb2RlbEZ1bGxTdGF0ZSB9IGZyb20gJy4vc3RhdGUvc3RhdGUnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBEYnhNb2RlbE9iamVjdFN0YXRlU2VydmljZSB7XG4gIHJlYWRvbmx5IHN0b3JlID0gaW5qZWN0KFN0b3JlPERieE1vZGVsRnVsbFN0YXRlPik7XG5cbiAgLyoqXG4gICAqIEVtaXQgYSBtb2RlbCB2aWV3ZWQgZXZlbnQuXG4gICAqL1xuICBlbWl0TW9kZWxWaWV3RXZlbnQoeyBtb2RlbEtleVR5cGVOYW1lUGFpciwgY29udGV4dCB9OiBEYnhNb2RlbE9iamVjdFZpZXdlZFBhcmFtcyk6IHZvaWQge1xuICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2gob25EYnhNb2RlbC5EYnhNb2RlbFN0YXRlTW9kZWxBY3Rpb25zLmVtaXRPYmplY3RWaWV3RXZlbnQoeyBtb2RlbEtleVR5cGVOYW1lUGFpciwgY29udGV4dCB9KSk7XG4gIH1cbn1cbiJdfQ==
@@ -1,16 +1,14 @@
1
- import { Injectable } from '@angular/core';
1
+ import { Injectable, inject } from '@angular/core';
2
2
  import { first } from 'rxjs';
3
3
  import { DbxModelViewTrackerStorage } from './model.tracker.view.storage';
4
4
  import * as i0 from "@angular/core";
5
- import * as i1 from "./model.tracker.view.storage";
6
5
  /**
7
6
  * Service used for tracking/logging different kinds of events on objects.
8
7
  */
9
8
  export class DbxModelTrackerService {
10
- constructor(viewTrackerStorage) {
11
- this.viewTrackerStorage = viewTrackerStorage;
12
- this.newEvent$ = this.viewTrackerStorage.newEvent$;
13
- }
9
+ _viewTrackerStorage = inject(DbxModelViewTrackerStorage);
10
+ _defaultFolder;
11
+ newEvent$ = this._viewTrackerStorage.newEvent$;
14
12
  get defaultFolder() {
15
13
  return this._defaultFolder;
16
14
  }
@@ -19,7 +17,7 @@ export class DbxModelTrackerService {
19
17
  }
20
18
  // MARK: View
21
19
  trackViewedObject(modelKeyTypeNamePair, context, folder = this._defaultFolder) {
22
- this.viewTrackerStorage
20
+ this._viewTrackerStorage
23
21
  .addTrackerEvent({
24
22
  m: modelKeyTypeNamePair,
25
23
  c: context,
@@ -29,18 +27,18 @@ export class DbxModelTrackerService {
29
27
  .subscribe();
30
28
  }
31
29
  getAllViewEvents(folder = this._defaultFolder) {
32
- return this.viewTrackerStorage.getAllEvents(folder);
30
+ return this._viewTrackerStorage.getAllEvents(folder);
33
31
  }
34
32
  getViewEventSet(folder = this._defaultFolder) {
35
- return this.viewTrackerStorage.getEventSet(folder);
33
+ return this._viewTrackerStorage.getEventSet(folder);
36
34
  }
37
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxModelTrackerService, deps: [{ token: i1.DbxModelViewTrackerStorage }], target: i0.ɵɵFactoryTarget.Injectable }); }
38
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxModelTrackerService, providedIn: 'root' }); }
35
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxModelTrackerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
36
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxModelTrackerService, providedIn: 'root' });
39
37
  }
40
38
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxModelTrackerService, decorators: [{
41
39
  type: Injectable,
42
40
  args: [{
43
41
  providedIn: 'root'
44
42
  }]
45
- }], ctorParameters: function () { return [{ type: i1.DbxModelViewTrackerStorage }]; } });
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwudHJhY2tlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LXdlYi9zcmMvbGliL2V4dGVuc2lvbi9tb2RlbC9tb2RlbC50cmFja2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUUzQyxPQUFPLEVBQUUsS0FBSyxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBRXpDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDhCQUE4QixDQUFDOzs7QUFFMUU7O0dBRUc7QUFJSCxNQUFNLE9BQU8sc0JBQXNCO0lBS2pDLFlBQTZCLGtCQUE4QztRQUE5Qyx1QkFBa0IsR0FBbEIsa0JBQWtCLENBQTRCO1FBRmxFLGNBQVMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsU0FBUyxDQUFDO0lBRXVCLENBQUM7SUFFL0UsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFJLGFBQWEsQ0FBQyxNQUFxQjtRQUNyQyxJQUFJLENBQUMsY0FBYyxHQUFHLE1BQU0sSUFBSSxTQUFTLENBQUM7SUFDNUMsQ0FBQztJQUVELGFBQWE7SUFDYixpQkFBaUIsQ0FBQyxvQkFBMEMsRUFBRSxPQUFnQixFQUFFLFNBQXdCLElBQUksQ0FBQyxjQUFjO1FBQ3pILElBQUksQ0FBQyxrQkFBa0I7YUFDcEIsZUFBZSxDQUFDO1lBQ2YsQ0FBQyxFQUFFLG9CQUFvQjtZQUN2QixDQUFDLEVBQUUsT0FBTztZQUNWLE1BQU07U0FDUCxDQUFDO2FBQ0QsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2FBQ2IsU0FBUyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVELGdCQUFnQixDQUFDLFNBQXdCLElBQUksQ0FBQyxjQUFjO1FBQzFELE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRUQsZUFBZSxDQUFDLFNBQXdCLElBQUksQ0FBQyxjQUFjO1FBQ3pELE9BQU8sSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNyRCxDQUFDOytHQWpDVSxzQkFBc0I7bUhBQXRCLHNCQUFzQixjQUZyQixNQUFNOzs0RkFFUCxzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF5YmUsIE1vZGVsS2V5VHlwZU5hbWVQYWlyIH0gZnJvbSAnQGRlcmVla2IvdXRpbCc7XG5pbXBvcnQgeyBmaXJzdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50LCBEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnRTZXQgfSBmcm9tICcuL21vZGVsLnRyYWNrZXInO1xuaW1wb3J0IHsgRGJ4TW9kZWxWaWV3VHJhY2tlclN0b3JhZ2UgfSBmcm9tICcuL21vZGVsLnRyYWNrZXIudmlldy5zdG9yYWdlJztcblxuLyoqXG4gKiBTZXJ2aWNlIHVzZWQgZm9yIHRyYWNraW5nL2xvZ2dpbmcgZGlmZmVyZW50IGtpbmRzIG9mIGV2ZW50cyBvbiBvYmplY3RzLlxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBEYnhNb2RlbFRyYWNrZXJTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBfZGVmYXVsdEZvbGRlcjogTWF5YmU8c3RyaW5nPjtcblxuICByZWFkb25seSBuZXdFdmVudCQgPSB0aGlzLnZpZXdUcmFja2VyU3RvcmFnZS5uZXdFdmVudCQ7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSByZWFkb25seSB2aWV3VHJhY2tlclN0b3JhZ2U6IERieE1vZGVsVmlld1RyYWNrZXJTdG9yYWdlKSB7fVxuXG4gIGdldCBkZWZhdWx0Rm9sZGVyKCk6IE1heWJlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLl9kZWZhdWx0Rm9sZGVyO1xuICB9XG5cbiAgc2V0IGRlZmF1bHRGb2xkZXIoZm9sZGVyOiBNYXliZTxzdHJpbmc+KSB7XG4gICAgdGhpcy5fZGVmYXVsdEZvbGRlciA9IGZvbGRlciA/PyB1bmRlZmluZWQ7XG4gIH1cblxuICAvLyBNQVJLOiBWaWV3XG4gIHRyYWNrVmlld2VkT2JqZWN0KG1vZGVsS2V5VHlwZU5hbWVQYWlyOiBNb2RlbEtleVR5cGVOYW1lUGFpciwgY29udGV4dD86IHN0cmluZywgZm9sZGVyOiBNYXliZTxzdHJpbmc+ID0gdGhpcy5fZGVmYXVsdEZvbGRlcik6IHZvaWQge1xuICAgIHRoaXMudmlld1RyYWNrZXJTdG9yYWdlXG4gICAgICAuYWRkVHJhY2tlckV2ZW50KHtcbiAgICAgICAgbTogbW9kZWxLZXlUeXBlTmFtZVBhaXIsXG4gICAgICAgIGM6IGNvbnRleHQsXG4gICAgICAgIGZvbGRlclxuICAgICAgfSlcbiAgICAgIC5waXBlKGZpcnN0KCkpXG4gICAgICAuc3Vic2NyaWJlKCk7XG4gIH1cblxuICBnZXRBbGxWaWV3RXZlbnRzKGZvbGRlcjogTWF5YmU8c3RyaW5nPiA9IHRoaXMuX2RlZmF1bHRGb2xkZXIpOiBPYnNlcnZhYmxlPERieE1vZGVsVmlld1RyYWNrZXJFdmVudFtdPiB7XG4gICAgcmV0dXJuIHRoaXMudmlld1RyYWNrZXJTdG9yYWdlLmdldEFsbEV2ZW50cyhmb2xkZXIpO1xuICB9XG5cbiAgZ2V0Vmlld0V2ZW50U2V0KGZvbGRlcjogTWF5YmU8c3RyaW5nPiA9IHRoaXMuX2RlZmF1bHRGb2xkZXIpOiBPYnNlcnZhYmxlPERieE1vZGVsVmlld1RyYWNrZXJFdmVudFNldD4ge1xuICAgIHJldHVybiB0aGlzLnZpZXdUcmFja2VyU3RvcmFnZS5nZXRFdmVudFNldChmb2xkZXIpO1xuICB9XG59XG4iXX0=
43
+ }] });
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwudHJhY2tlci5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvZGJ4LXdlYi9zcmMvbGliL2V4dGVuc2lvbi9tb2RlbC9tb2RlbC50cmFja2VyLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFFLEtBQUssRUFBYyxNQUFNLE1BQU0sQ0FBQztBQUV6QyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQzs7QUFFMUU7O0dBRUc7QUFJSCxNQUFNLE9BQU8sc0JBQXNCO0lBQ2hCLG1CQUFtQixHQUFHLE1BQU0sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0lBRWxFLGNBQWMsQ0FBZ0I7SUFFN0IsU0FBUyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLENBQUM7SUFFeEQsSUFBSSxhQUFhO1FBQ2YsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDO0lBQzdCLENBQUM7SUFFRCxJQUFJLGFBQWEsQ0FBQyxNQUFxQjtRQUNyQyxJQUFJLENBQUMsY0FBYyxHQUFHLE1BQU0sSUFBSSxTQUFTLENBQUM7SUFDNUMsQ0FBQztJQUVELGFBQWE7SUFDYixpQkFBaUIsQ0FBQyxvQkFBMEMsRUFBRSxPQUFnQixFQUFFLFNBQXdCLElBQUksQ0FBQyxjQUFjO1FBQ3pILElBQUksQ0FBQyxtQkFBbUI7YUFDckIsZUFBZSxDQUFDO1lBQ2YsQ0FBQyxFQUFFLG9CQUFvQjtZQUN2QixDQUFDLEVBQUUsT0FBTztZQUNWLE1BQU07U0FDUCxDQUFDO2FBQ0QsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2FBQ2IsU0FBUyxFQUFFLENBQUM7SUFDakIsQ0FBQztJQUVELGdCQUFnQixDQUFDLFNBQXdCLElBQUksQ0FBQyxjQUFjO1FBQzFELE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQsZUFBZSxDQUFDLFNBQXdCLElBQUksQ0FBQyxjQUFjO1FBQ3pELE9BQU8sSUFBSSxDQUFDLG1CQUFtQixDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN0RCxDQUFDO3dHQWpDVSxzQkFBc0I7NEdBQXRCLHNCQUFzQixjQUZyQixNQUFNOzs0RkFFUCxzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXliZSwgTW9kZWxLZXlUeXBlTmFtZVBhaXIgfSBmcm9tICdAZGVyZWVrYi91dGlsJztcbmltcG9ydCB7IGZpcnN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnQsIERieE1vZGVsVmlld1RyYWNrZXJFdmVudFNldCB9IGZyb20gJy4vbW9kZWwudHJhY2tlcic7XG5pbXBvcnQgeyBEYnhNb2RlbFZpZXdUcmFja2VyU3RvcmFnZSB9IGZyb20gJy4vbW9kZWwudHJhY2tlci52aWV3LnN0b3JhZ2UnO1xuXG4vKipcbiAqIFNlcnZpY2UgdXNlZCBmb3IgdHJhY2tpbmcvbG9nZ2luZyBkaWZmZXJlbnQga2luZHMgb2YgZXZlbnRzIG9uIG9iamVjdHMuXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIERieE1vZGVsVHJhY2tlclNlcnZpY2Uge1xuICBwcml2YXRlIHJlYWRvbmx5IF92aWV3VHJhY2tlclN0b3JhZ2UgPSBpbmplY3QoRGJ4TW9kZWxWaWV3VHJhY2tlclN0b3JhZ2UpO1xuXG4gIHByaXZhdGUgX2RlZmF1bHRGb2xkZXI6IE1heWJlPHN0cmluZz47XG5cbiAgcmVhZG9ubHkgbmV3RXZlbnQkID0gdGhpcy5fdmlld1RyYWNrZXJTdG9yYWdlLm5ld0V2ZW50JDtcblxuICBnZXQgZGVmYXVsdEZvbGRlcigpOiBNYXliZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5fZGVmYXVsdEZvbGRlcjtcbiAgfVxuXG4gIHNldCBkZWZhdWx0Rm9sZGVyKGZvbGRlcjogTWF5YmU8c3RyaW5nPikge1xuICAgIHRoaXMuX2RlZmF1bHRGb2xkZXIgPSBmb2xkZXIgPz8gdW5kZWZpbmVkO1xuICB9XG5cbiAgLy8gTUFSSzogVmlld1xuICB0cmFja1ZpZXdlZE9iamVjdChtb2RlbEtleVR5cGVOYW1lUGFpcjogTW9kZWxLZXlUeXBlTmFtZVBhaXIsIGNvbnRleHQ/OiBzdHJpbmcsIGZvbGRlcjogTWF5YmU8c3RyaW5nPiA9IHRoaXMuX2RlZmF1bHRGb2xkZXIpOiB2b2lkIHtcbiAgICB0aGlzLl92aWV3VHJhY2tlclN0b3JhZ2VcbiAgICAgIC5hZGRUcmFja2VyRXZlbnQoe1xuICAgICAgICBtOiBtb2RlbEtleVR5cGVOYW1lUGFpcixcbiAgICAgICAgYzogY29udGV4dCxcbiAgICAgICAgZm9sZGVyXG4gICAgICB9KVxuICAgICAgLnBpcGUoZmlyc3QoKSlcbiAgICAgIC5zdWJzY3JpYmUoKTtcbiAgfVxuXG4gIGdldEFsbFZpZXdFdmVudHMoZm9sZGVyOiBNYXliZTxzdHJpbmc+ID0gdGhpcy5fZGVmYXVsdEZvbGRlcik6IE9ic2VydmFibGU8RGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50W10+IHtcbiAgICByZXR1cm4gdGhpcy5fdmlld1RyYWNrZXJTdG9yYWdlLmdldEFsbEV2ZW50cyhmb2xkZXIpO1xuICB9XG5cbiAgZ2V0Vmlld0V2ZW50U2V0KGZvbGRlcjogTWF5YmU8c3RyaW5nPiA9IHRoaXMuX2RlZmF1bHRGb2xkZXIpOiBPYnNlcnZhYmxlPERieE1vZGVsVmlld1RyYWNrZXJFdmVudFNldD4ge1xuICAgIHJldHVybiB0aGlzLl92aWV3VHJhY2tlclN0b3JhZ2UuZ2V0RXZlbnRTZXQoZm9sZGVyKTtcbiAgfVxufVxuIl19
@@ -1,20 +1,20 @@
1
- import { Injectable } from '@angular/core';
1
+ import { Injectable, InjectionToken, inject } from '@angular/core';
2
2
  import { unixTimeNumberForNow } from '@dereekb/date';
3
- import { StorageAccessor } from '@dereekb/dbx-core';
4
3
  import { encodeModelKeyTypePair, ModelRelationUtility } from '@dereekb/util';
5
4
  import { map, mergeMap, catchError, of, Subject, tap } from 'rxjs';
6
5
  import * as i0 from "@angular/core";
7
- import * as i1 from "@dereekb/dbx-core";
6
+ export const DBX_MODEL_VIEW_TRACKER_STORAGE_ACCESSOR_TOKEN = new InjectionToken('DbxModelViewTrackerStorageAccessor');
8
7
  /**
9
8
  * Used for managing DbxModelViewTrackerEvent storage.
10
9
  */
11
10
  export class DbxModelViewTrackerStorage {
12
- static { this.OBJECT_VIEW_TRACKER_STORAGE_LIST_KEY = 'dbxModelViewTrackerEvents'; }
13
- static { this.DEFAULT_MAX_EVENTS = 100; }
14
- constructor(storageAccessor) {
15
- this.storageAccessor = storageAccessor;
16
- this._newEvent = new Subject();
17
- this.newEvent$ = this._newEvent.asObservable();
11
+ static OBJECT_VIEW_TRACKER_STORAGE_LIST_KEY = 'dbxModelViewTrackerEvents';
12
+ static DEFAULT_MAX_EVENTS = 100;
13
+ storageAccessor = inject(DBX_MODEL_VIEW_TRACKER_STORAGE_ACCESSOR_TOKEN);
14
+ _newEvent = new Subject();
15
+ newEvent$ = this._newEvent.asObservable();
16
+ ngOnDestroy() {
17
+ this._newEvent.complete();
18
18
  }
19
19
  get storageKey() {
20
20
  return DbxModelViewTrackerStorage.OBJECT_VIEW_TRACKER_STORAGE_LIST_KEY;
@@ -57,13 +57,13 @@ export class DbxModelViewTrackerStorage {
57
57
  const storageKey = `${this.storageKey}_${folder ?? 'default'}`;
58
58
  return storageKey;
59
59
  }
60
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxModelViewTrackerStorage, deps: [{ token: i1.StorageAccessor }], target: i0.ɵɵFactoryTarget.Injectable }); }
61
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxModelViewTrackerStorage, providedIn: 'root' }); }
60
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxModelViewTrackerStorage, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
61
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxModelViewTrackerStorage, providedIn: 'root' });
62
62
  }
63
63
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: DbxModelViewTrackerStorage, decorators: [{
64
64
  type: Injectable,
65
65
  args: [{
66
66
  providedIn: 'root'
67
67
  }]
68
- }], ctorParameters: function () { return [{ type: i1.StorageAccessor }]; } });
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwudHJhY2tlci52aWV3LnN0b3JhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL21vZGVsL21vZGVsLnRyYWNrZXIudmlldy5zdG9yYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3JELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNwRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsb0JBQW9CLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFDcEYsT0FBTyxFQUFFLEdBQUcsRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFjLEVBQUUsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFHL0U7O0dBRUc7QUFJSCxNQUFNLE9BQU8sMEJBQTBCO2FBQ3JCLHlDQUFvQyxHQUFHLDJCQUEyQixBQUE5QixDQUErQjthQUNuRSx1QkFBa0IsR0FBRyxHQUFHLEFBQU4sQ0FBTztJQU16QyxZQUFxQixlQUE2RDtRQUE3RCxvQkFBZSxHQUFmLGVBQWUsQ0FBOEM7UUFKMUUsY0FBUyxHQUFHLElBQUksT0FBTyxFQUE0QixDQUFDO1FBRW5ELGNBQVMsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBRWtDLENBQUM7SUFFdEYsSUFBYyxVQUFVO1FBQ3RCLE9BQU8sMEJBQTBCLENBQUMsb0NBQW9DLENBQUM7SUFDekUsQ0FBQztJQUVELElBQWMsZUFBZTtRQUMzQixPQUFPLDBCQUEwQixDQUFDLGtCQUFrQixDQUFDO0lBQ3ZELENBQUM7SUFFRCxlQUFlLENBQUMsS0FBK0I7UUFDN0MsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUM3RCxPQUFPLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxJQUFJLENBQ3BELFFBQVEsQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFO1lBQ2YsTUFBTSxTQUFTLEdBQTZCO2dCQUMxQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsSUFBSSxvQkFBb0IsRUFBRTtnQkFDcEMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO2dCQUNWLENBQUMsRUFBRSxLQUFLLENBQUMsQ0FBQzthQUNYLENBQUM7WUFFRixNQUFNLENBQUMsR0FBRyxvQkFBb0IsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQ2xJLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDbEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUUxQyxPQUFPLElBQUksQ0FBQyxlQUFlO2lCQUN4QixHQUFHLENBQUMsVUFBVSxFQUFFO2dCQUNmLENBQUMsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLFNBQVMsQ0FBQyxDQUFXLENBQUM7Z0JBQzlDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRSxJQUFJLENBQUMsZUFBZSxDQUFDO2FBQ3BDLENBQUM7aUJBQ0QsSUFBSSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDckQsQ0FBQyxDQUFDLENBQ0gsQ0FBQztJQUNKLENBQUM7SUFFRCxZQUFZLENBQUMsTUFBc0I7UUFDakMsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRCxXQUFXLENBQUMsTUFBc0I7UUFDaEMsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLHNCQUFzQixDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZELE9BQU8sSUFBSSxDQUFDLHlCQUF5QixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFTyx5QkFBeUIsQ0FBQyxVQUFrQjtRQUNsRCxPQUFPLElBQUksQ0FBQyxlQUFlLENBQUMsR0FBRyxDQUFDLFVBQVUsQ0FBQyxDQUFDLElBQUksQ0FDOUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7WUFDZixPQUFPLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQztRQUN2QixDQUFDLENBQUMsRUFDRixHQUFHLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQzNDLENBQUM7SUFDSixDQUFDO0lBRUQsc0JBQXNCLENBQUMsTUFBc0I7UUFDM0MsTUFBTSxVQUFVLEdBQUcsR0FBRyxJQUFJLENBQUMsVUFBVSxJQUFJLE1BQU0sSUFBSSxTQUFTLEVBQUUsQ0FBQztRQUMvRCxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDOytHQS9EVSwwQkFBMEI7bUhBQTFCLDBCQUEwQixjQUZ6QixNQUFNOzs0RkFFUCwwQkFBMEI7a0JBSHRDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdW5peFRpbWVOdW1iZXJGb3JOb3cgfSBmcm9tICdAZGVyZWVrYi9kYXRlJztcbmltcG9ydCB7IFN0b3JhZ2VBY2Nlc3NvciB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IGVuY29kZU1vZGVsS2V5VHlwZVBhaXIsIE1vZGVsUmVsYXRpb25VdGlsaXR5LCBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgbWFwLCBtZXJnZU1hcCwgY2F0Y2hFcnJvciwgT2JzZXJ2YWJsZSwgb2YsIFN1YmplY3QsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50U2V0LCBEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnQgfSBmcm9tICcuL21vZGVsLnRyYWNrZXInO1xuXG4vKipcbiAqIFVzZWQgZm9yIG1hbmFnaW5nIERieE1vZGVsVmlld1RyYWNrZXJFdmVudCBzdG9yYWdlLlxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBEYnhNb2RlbFZpZXdUcmFja2VyU3RvcmFnZSB7XG4gIHN0YXRpYyByZWFkb25seSBPQkpFQ1RfVklFV19UUkFDS0VSX1NUT1JBR0VfTElTVF9LRVkgPSAnZGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50cyc7XG4gIHN0YXRpYyByZWFkb25seSBERUZBVUxUX01BWF9FVkVOVFMgPSAxMDA7XG5cbiAgcHJpdmF0ZSBfbmV3RXZlbnQgPSBuZXcgU3ViamVjdDxEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnQ+KCk7XG5cbiAgcmVhZG9ubHkgbmV3RXZlbnQkID0gdGhpcy5fbmV3RXZlbnQuYXNPYnNlcnZhYmxlKCk7XG5cbiAgY29uc3RydWN0b3IocmVhZG9ubHkgc3RvcmFnZUFjY2Vzc29yOiBTdG9yYWdlQWNjZXNzb3I8RGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50U2V0Pikge31cblxuICBwcm90ZWN0ZWQgZ2V0IHN0b3JhZ2VLZXkoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gRGJ4TW9kZWxWaWV3VHJhY2tlclN0b3JhZ2UuT0JKRUNUX1ZJRVdfVFJBQ0tFUl9TVE9SQUdFX0xJU1RfS0VZO1xuICB9XG5cbiAgcHJvdGVjdGVkIGdldCBtYXhFdmVudHNUb0tlZXAoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gRGJ4TW9kZWxWaWV3VHJhY2tlclN0b3JhZ2UuREVGQVVMVF9NQVhfRVZFTlRTO1xuICB9XG5cbiAgYWRkVHJhY2tlckV2ZW50KGV2ZW50OiBEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnQpOiBPYnNlcnZhYmxlPHZvaWQ+IHtcbiAgICBjb25zdCBzdG9yYWdlS2V5ID0gdGhpcy5nZXRTdG9yYWdlS2V5Rm9yRm9sZGVyKGV2ZW50LmZvbGRlcik7XG4gICAgcmV0dXJuIHRoaXMuX2dldEV2ZW50U2V0Rm9yU3RvcmFnZUtleShzdG9yYWdlS2V5KS5waXBlKFxuICAgICAgbWVyZ2VNYXAoKHNldCkgPT4ge1xuICAgICAgICBjb25zdCBuZXh0RXZlbnQ6IERieE1vZGVsVmlld1RyYWNrZXJFdmVudCA9IHtcbiAgICAgICAgICBkOiBldmVudC5kID8/IHVuaXhUaW1lTnVtYmVyRm9yTm93KCksXG4gICAgICAgICAgYzogZXZlbnQuYyxcbiAgICAgICAgICBtOiBldmVudC5tXG4gICAgICAgIH07XG5cbiAgICAgICAgY29uc3QgZSA9IE1vZGVsUmVsYXRpb25VdGlsaXR5LnJlbW92ZUR1cGxpY2F0ZXMoc2V0LmUsICh4KSA9PiBlbmNvZGVNb2RlbEtleVR5cGVQYWlyKHgubSksIFtlbmNvZGVNb2RlbEtleVR5cGVQYWlyKG5leHRFdmVudC5tKV0pO1xuICAgICAgICBlLnB1c2gobmV4dEV2ZW50KTtcbiAgICAgICAgZS5zb3J0KChhLCBiKSA9PiAoYi5kID8/IDApIC0gKGEuZCA/PyAwKSk7XG5cbiAgICAgICAgcmV0dXJuIHRoaXMuc3RvcmFnZUFjY2Vzc29yXG4gICAgICAgICAgLnNldChzdG9yYWdlS2V5LCB7XG4gICAgICAgICAgICBsOiBNYXRoLm1heChzZXQubCA/PyAwLCBuZXh0RXZlbnQuZCBhcyBudW1iZXIpLFxuICAgICAgICAgICAgZTogZS5zbGljZSgwLCB0aGlzLm1heEV2ZW50c1RvS2VlcClcbiAgICAgICAgICB9KVxuICAgICAgICAgIC5waXBlKHRhcCgoKSA9PiB0aGlzLl9uZXdFdmVudC5uZXh0KG5leHRFdmVudCkpKTtcbiAgICAgIH0pXG4gICAgKTtcbiAgfVxuXG4gIGdldEFsbEV2ZW50cyhmb2xkZXI/OiBNYXliZTxzdHJpbmc+KTogT2JzZXJ2YWJsZTxEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnRbXT4ge1xuICAgIHJldHVybiB0aGlzLmdldEV2ZW50U2V0KGZvbGRlcikucGlwZShtYXAoKHgpID0+IHguZSkpO1xuICB9XG5cbiAgZ2V0RXZlbnRTZXQoZm9sZGVyPzogTWF5YmU8c3RyaW5nPik6IE9ic2VydmFibGU8RGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50U2V0PiB7XG4gICAgY29uc3Qgc3RvcmFnZUtleSA9IHRoaXMuZ2V0U3RvcmFnZUtleUZvckZvbGRlcihmb2xkZXIpO1xuICAgIHJldHVybiB0aGlzLl9nZXRFdmVudFNldEZvclN0b3JhZ2VLZXkoc3RvcmFnZUtleSk7XG4gIH1cblxuICBwcml2YXRlIF9nZXRFdmVudFNldEZvclN0b3JhZ2VLZXkoc3RvcmFnZUtleTogc3RyaW5nKTogT2JzZXJ2YWJsZTxEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnRTZXQ+IHtcbiAgICByZXR1cm4gdGhpcy5zdG9yYWdlQWNjZXNzb3IuZ2V0KHN0b3JhZ2VLZXkpLnBpcGUoXG4gICAgICBjYXRjaEVycm9yKChlKSA9PiB7XG4gICAgICAgIHJldHVybiBvZih1bmRlZmluZWQpO1xuICAgICAgfSksXG4gICAgICBtYXAoKHJlc3VsdCkgPT4gcmVzdWx0ID8/IHsgZTogW10sIGw6IDAgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0U3RvcmFnZUtleUZvckZvbGRlcihmb2xkZXI/OiBNYXliZTxzdHJpbmc+KTogc3RyaW5nIHtcbiAgICBjb25zdCBzdG9yYWdlS2V5ID0gYCR7dGhpcy5zdG9yYWdlS2V5fV8ke2ZvbGRlciA/PyAnZGVmYXVsdCd9YDtcbiAgICByZXR1cm4gc3RvcmFnZUtleTtcbiAgfVxufVxuIl19
68
+ }] });
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kZWwudHJhY2tlci52aWV3LnN0b3JhZ2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9kYngtd2ViL3NyYy9saWIvZXh0ZW5zaW9uL21vZGVsL21vZGVsLnRyYWNrZXIudmlldy5zdG9yYWdlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsY0FBYyxFQUFhLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUM5RSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFckQsT0FBTyxFQUFFLHNCQUFzQixFQUFFLG9CQUFvQixFQUFTLE1BQU0sZUFBZSxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxHQUFHLEVBQUUsUUFBUSxFQUFFLFVBQVUsRUFBYyxFQUFFLEVBQUUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFHL0UsTUFBTSxDQUFDLE1BQU0sNkNBQTZDLEdBQUcsSUFBSSxjQUFjLENBQUMsb0NBQW9DLENBQUMsQ0FBQztBQUV0SDs7R0FFRztBQUlILE1BQU0sT0FBTywwQkFBMEI7SUFDckMsTUFBTSxDQUFVLG9DQUFvQyxHQUFHLDJCQUEyQixDQUFDO0lBQ25GLE1BQU0sQ0FBVSxrQkFBa0IsR0FBRyxHQUFHLENBQUM7SUFFaEMsZUFBZSxHQUFHLE1BQU0sQ0FBK0MsNkNBQTZDLENBQUMsQ0FBQztJQUV2SCxTQUFTLEdBQUcsSUFBSSxPQUFPLEVBQTRCLENBQUM7SUFFbkQsU0FBUyxHQUFHLElBQUksQ0FBQyxTQUFTLENBQUMsWUFBWSxFQUFFLENBQUM7SUFFbkQsV0FBVztRQUNULElBQUksQ0FBQyxTQUFTLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDNUIsQ0FBQztJQUVELElBQWMsVUFBVTtRQUN0QixPQUFPLDBCQUEwQixDQUFDLG9DQUFvQyxDQUFDO0lBQ3pFLENBQUM7SUFFRCxJQUFjLGVBQWU7UUFDM0Is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QUExQiwwQkFBMEIsY0FGekIsTUFBTTs7NEZBRVAsMEJBQTBCO2tCQUh0QyxVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdGlvblRva2VuLCBPbkRlc3Ryb3ksIGluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdW5peFRpbWVOdW1iZXJGb3JOb3cgfSBmcm9tICdAZGVyZWVrYi9kYXRlJztcbmltcG9ydCB7IFN0b3JhZ2VBY2Nlc3NvciB9IGZyb20gJ0BkZXJlZWtiL2RieC1jb3JlJztcbmltcG9ydCB7IGVuY29kZU1vZGVsS2V5VHlwZVBhaXIsIE1vZGVsUmVsYXRpb25VdGlsaXR5LCBNYXliZSB9IGZyb20gJ0BkZXJlZWtiL3V0aWwnO1xuaW1wb3J0IHsgbWFwLCBtZXJnZU1hcCwgY2F0Y2hFcnJvciwgT2JzZXJ2YWJsZSwgb2YsIFN1YmplY3QsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50U2V0LCBEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnQgfSBmcm9tICcuL21vZGVsLnRyYWNrZXInO1xuXG5leHBvcnQgY29uc3QgREJYX01PREVMX1ZJRVdfVFJBQ0tFUl9TVE9SQUdFX0FDQ0VTU09SX1RPS0VOID0gbmV3IEluamVjdGlvblRva2VuKCdEYnhNb2RlbFZpZXdUcmFja2VyU3RvcmFnZUFjY2Vzc29yJyk7XG5cbi8qKlxuICogVXNlZCBmb3IgbWFuYWdpbmcgRGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50IHN0b3JhZ2UuXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIERieE1vZGVsVmlld1RyYWNrZXJTdG9yYWdlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgc3RhdGljIHJlYWRvbmx5IE9CSkVDVF9WSUVXX1RSQUNLRVJfU1RPUkFHRV9MSVNUX0tFWSA9ICdkYnhNb2RlbFZpZXdUcmFja2VyRXZlbnRzJztcbiAgc3RhdGljIHJlYWRvbmx5IERFRkFVTFRfTUFYX0VWRU5UUyA9IDEwMDtcblxuICByZWFkb25seSBzdG9yYWdlQWNjZXNzb3IgPSBpbmplY3Q8U3RvcmFnZUFjY2Vzc29yPERieE1vZGVsVmlld1RyYWNrZXJFdmVudFNldD4+KERCWF9NT0RFTF9WSUVXX1RSQUNLRVJfU1RPUkFHRV9BQ0NFU1NPUl9UT0tFTik7XG5cbiAgcHJpdmF0ZSBfbmV3RXZlbnQgPSBuZXcgU3ViamVjdDxEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnQ+KCk7XG5cbiAgcmVhZG9ubHkgbmV3RXZlbnQkID0gdGhpcy5fbmV3RXZlbnQuYXNPYnNlcnZhYmxlKCk7XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5fbmV3RXZlbnQuY29tcGxldGUoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCBnZXQgc3RvcmFnZUtleSgpOiBzdHJpbmcge1xuICAgIHJldHVybiBEYnhNb2RlbFZpZXdUcmFja2VyU3RvcmFnZS5PQkpFQ1RfVklFV19UUkFDS0VSX1NUT1JBR0VfTElTVF9LRVk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IG1heEV2ZW50c1RvS2VlcCgpOiBudW1iZXIge1xuICAgIHJldHVybiBEYnhNb2RlbFZpZXdUcmFja2VyU3RvcmFnZS5ERUZBVUxUX01BWF9FVkVOVFM7XG4gIH1cblxuICBhZGRUcmFja2VyRXZlbnQoZXZlbnQ6IERieE1vZGVsVmlld1RyYWNrZXJFdmVudCk6IE9ic2VydmFibGU8dm9pZD4ge1xuICAgIGNvbnN0IHN0b3JhZ2VLZXkgPSB0aGlzLmdldFN0b3JhZ2VLZXlGb3JGb2xkZXIoZXZlbnQuZm9sZGVyKTtcbiAgICByZXR1cm4gdGhpcy5fZ2V0RXZlbnRTZXRGb3JTdG9yYWdlS2V5KHN0b3JhZ2VLZXkpLnBpcGUoXG4gICAgICBtZXJnZU1hcCgoc2V0KSA9PiB7XG4gICAgICAgIGNvbnN0IG5leHRFdmVudDogRGJ4TW9kZWxWaWV3VHJhY2tlckV2ZW50ID0ge1xuICAgICAgICAgIGQ6IGV2ZW50LmQgPz8gdW5peFRpbWVOdW1iZXJGb3JOb3coKSxcbiAgICAgICAgICBjOiBldmVudC5jLFxuICAgICAgICAgIG06IGV2ZW50Lm1cbiAgICAgICAgfTtcblxuICAgICAgICBjb25zdCBlID0gTW9kZWxSZWxhdGlvblV0aWxpdHkucmVtb3ZlRHVwbGljYXRlcyhzZXQuZSwgKHgpID0+IGVuY29kZU1vZGVsS2V5VHlwZVBhaXIoeC5tKSwgW2VuY29kZU1vZGVsS2V5VHlwZVBhaXIobmV4dEV2ZW50Lm0pXSk7XG4gICAgICAgIGUucHVzaChuZXh0RXZlbnQpO1xuICAgICAgICBlLnNvcnQoKGEsIGIpID0+IChiLmQgPz8gMCkgLSAoYS5kID8/IDApKTtcblxuICAgICAgICByZXR1cm4gdGhpcy5zdG9yYWdlQWNjZXNzb3JcbiAgICAgICAgICAuc2V0KHN0b3JhZ2VLZXksIHtcbiAgICAgICAgICAgIGw6IE1hdGgubWF4KHNldC5sID8/IDAsIG5leHRFdmVudC5kIGFzIG51bWJlciksXG4gICAgICAgICAgICBlOiBlLnNsaWNlKDAsIHRoaXMubWF4RXZlbnRzVG9LZWVwKVxuICAgICAgICAgIH0pXG4gICAgICAgICAgLnBpcGUodGFwKCgpID0+IHRoaXMuX25ld0V2ZW50Lm5leHQobmV4dEV2ZW50KSkpO1xuICAgICAgfSlcbiAgICApO1xuICB9XG5cbiAgZ2V0QWxsRXZlbnRzKGZvbGRlcj86IE1heWJlPHN0cmluZz4pOiBPYnNlcnZhYmxlPERieE1vZGVsVmlld1RyYWNrZXJFdmVudFtdPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0RXZlbnRTZXQoZm9sZGVyKS5waXBlKG1hcCgoeCkgPT4geC5lKSk7XG4gIH1cblxuICBnZXRFdmVudFNldChmb2xkZXI/OiBNYXliZTxzdHJpbmc+KTogT2JzZXJ2YWJsZTxEYnhNb2RlbFZpZXdUcmFja2VyRXZlbnRTZXQ+IHtcbiAgICBjb25zdCBzdG9yYWdlS2V5ID0gdGhpcy5nZXRTdG9yYWdlS2V5Rm9yRm9sZGVyKGZvbGRlcik7XG4gICAgcmV0dXJuIHRoaXMuX2dldEV2ZW50U2V0Rm9yU3RvcmFnZUtleShzdG9yYWdlS2V5KTtcbiAgfVxuXG4gIHByaXZhdGUgX2dldEV2ZW50U2V0Rm9yU3RvcmFnZUtleShzdG9yYWdlS2V5OiBzdHJpbmcpOiBPYnNlcnZhYmxlPERieE1vZGVsVmlld1RyYWNrZXJFdmVudFNldD4ge1xuICAgIHJldHVybiB0aGlzLnN0b3JhZ2VBY2Nlc3Nvci5nZXQoc3RvcmFnZUtleSkucGlwZShcbiAgICAgIGNhdGNoRXJyb3IoKGUpID0+IHtcbiAgICAgICAgcmV0dXJuIG9mKHVuZGVmaW5lZCk7XG4gICAgICB9KSxcbiAgICAgIG1hcCgocmVzdWx0KSA9PiByZXN1bHQgPz8geyBlOiBbXSwgbDogMCB9KVxuICAgICk7XG4gIH1cblxuICBnZXRTdG9yYWdlS2V5Rm9yRm9sZGVyKGZvbGRlcj86IE1heWJlPHN0cmluZz4pOiBzdHJpbmcge1xuICAgIGNvbnN0IHN0b3JhZ2VLZXkgPSBgJHt0aGlzLnN0b3JhZ2VLZXl9XyR7Zm9sZGVyID8/ICdkZWZhdWx0J31gO1xuICAgIHJldHVybiBzdG9yYWdlS2V5O1xuICB9XG59XG4iXX0=