@mintplayer/ng-bootstrap 17.0.3 → 17.1.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 (422) hide show
  1. package/calendar/src/calendar.component.d.ts +5 -1
  2. package/calendar/src/calendar.module.d.ts +5 -6
  3. package/esm2022/accordion/src/accordion/accordion.component.mjs +4 -4
  4. package/esm2022/accordion/src/accordion-tab/accordion-tab.component.mjs +4 -4
  5. package/esm2022/accordion/src/accordion-tab-header/accordion-tab-header.component.mjs +3 -3
  6. package/esm2022/accordion/src/accordion.module.mjs +4 -4
  7. package/esm2022/alert/src/alert/alert.component.mjs +3 -3
  8. package/esm2022/alert/src/alert-close/alert-close.component.mjs +3 -3
  9. package/esm2022/alert/src/alert.module.mjs +4 -4
  10. package/esm2022/async-host-binding/src/async-host-binding.module.mjs +4 -4
  11. package/esm2022/async-host-binding/src/bind-event.plugin.mjs +1 -1
  12. package/esm2022/badge/src/badge.component.mjs +3 -3
  13. package/esm2022/badge/src/badge.module.mjs +4 -4
  14. package/esm2022/breadcrumb/src/breadcrumb/breadcrumb.component.mjs +3 -3
  15. package/esm2022/breadcrumb/src/breadcrumb-item/breadcrumb-item.component.mjs +3 -3
  16. package/esm2022/breadcrumb/src/breadcrumb.module.mjs +4 -4
  17. package/esm2022/button-group/src/button-group/button-group.component.mjs +3 -3
  18. package/esm2022/button-group/src/button-group.module.mjs +4 -4
  19. package/esm2022/button-type/src/button-type/button-type.directive.mjs +3 -3
  20. package/esm2022/button-type/src/button-type/button-type.module.mjs +4 -4
  21. package/esm2022/calendar/src/calendar.component.mjs +20 -10
  22. package/esm2022/calendar/src/calendar.module.mjs +5 -9
  23. package/esm2022/calendar-month/src/pipes/month-name/month-name.module.mjs +4 -4
  24. package/esm2022/calendar-month/src/pipes/month-name/month-name.pipe.mjs +4 -4
  25. package/esm2022/calendar-month/src/pipes/weekday-name/weekday-name.module.mjs +4 -4
  26. package/esm2022/calendar-month/src/pipes/weekday-name/weekday-name.pipe.mjs +3 -3
  27. package/esm2022/calendar-month/src/service/calendar-month.service.mjs +4 -4
  28. package/esm2022/card/src/card/card.component.mjs +3 -3
  29. package/esm2022/card/src/card-header/card-header.component.mjs +3 -3
  30. package/esm2022/card/src/card.module.mjs +4 -4
  31. package/esm2022/carousel/src/carousel/carousel.component.mjs +4 -4
  32. package/esm2022/carousel/src/carousel-image/carousel-image.directive.mjs +3 -3
  33. package/esm2022/carousel/src/carousel-img/carousel-img.directive.mjs +3 -3
  34. package/esm2022/carousel/src/carousel.module.mjs +4 -4
  35. package/esm2022/close/src/close.component.mjs +3 -3
  36. package/esm2022/close/src/close.module.mjs +4 -4
  37. package/esm2022/code-snippet/src/code-snippet.component.mjs +3 -3
  38. package/esm2022/code-snippet/src/code-snippet.module.mjs +4 -4
  39. package/esm2022/color-picker/color-picker.module.mjs +4 -4
  40. package/esm2022/color-picker/components/alpha-strip/alpha-strip.component.mjs +4 -4
  41. package/esm2022/color-picker/components/color-picker/color-picker.component.mjs +3 -3
  42. package/esm2022/color-picker/components/color-wheel/color-wheel.component.mjs +4 -4
  43. package/esm2022/color-picker/components/luminosity-strip/luminosity-strip.component.mjs +4 -4
  44. package/esm2022/color-picker/components/slider/slider.component.mjs +10 -10
  45. package/esm2022/color-picker/directives/color-picker-value-accessor/color-picker-value-accessor.directive.mjs +4 -4
  46. package/esm2022/container/src/container/container.component.mjs +3 -3
  47. package/esm2022/container/src/container.module.mjs +4 -4
  48. package/esm2022/context-menu/src/context-menu.directive.mjs +4 -4
  49. package/esm2022/context-menu/src/context-menu.module.mjs +4 -4
  50. package/esm2022/copy/src/copy.directive.mjs +4 -4
  51. package/esm2022/copy/src/copy.module.mjs +4 -4
  52. package/esm2022/datatable/src/datatable/datatable.component.mjs +4 -4
  53. package/esm2022/datatable/src/datatable-column/datatable-column.directive.mjs +3 -3
  54. package/esm2022/datatable/src/datatable-settings.mjs +1 -1
  55. package/esm2022/datatable/src/datatable.module.mjs +4 -4
  56. package/esm2022/datatable/src/row-template/row-template.directive.mjs +3 -3
  57. package/esm2022/datepicker/src/datepicker.component.mjs +3 -3
  58. package/esm2022/datepicker/src/datepicker.module.mjs +4 -4
  59. package/esm2022/dock/src/dock/dock.component.mjs +3 -3
  60. package/esm2022/dock/src/dock-pane-renderer/dock-pane-renderer.component.mjs +5 -5
  61. package/esm2022/dock/src/dock-panel/dock-panel.component.mjs +3 -3
  62. package/esm2022/dock/src/dock-panel-header/dock-panel-header.component.mjs +4 -4
  63. package/esm2022/dock/src/dock.module.mjs +4 -4
  64. package/esm2022/dock/src/services/dock/dock.service.mjs +4 -4
  65. package/esm2022/dropdown/src/dropdown/dropdown.directive.mjs +4 -4
  66. package/esm2022/dropdown/src/dropdown-menu/dropdown-menu.directive.mjs +4 -4
  67. package/esm2022/dropdown/src/dropdown-toggle/dropdown-toggle.directive.mjs +3 -3
  68. package/esm2022/dropdown/src/dropdown.module.mjs +4 -4
  69. package/esm2022/dropdown-divider/src/dropdown-divider.directive.mjs +3 -3
  70. package/esm2022/dropdown-divider/src/dropdown-divider.module.mjs +4 -4
  71. package/esm2022/dropdown-menu/src/dropdown-item/dropdown-item.component.mjs +3 -3
  72. package/esm2022/dropdown-menu/src/dropdown-menu/dropdown-menu.component.mjs +4 -4
  73. package/esm2022/dropdown-menu/src/dropdown-menu.module.mjs +4 -4
  74. package/esm2022/enhanced-paste/src/directive/enhanced-paste.directive.mjs +4 -4
  75. package/esm2022/enhanced-paste/src/enhanced-paste.module.mjs +4 -4
  76. package/esm2022/enum/src/service/enum.service.mjs +3 -3
  77. package/esm2022/file-upload/src/component/file-upload.component.mjs +5 -5
  78. package/esm2022/file-upload/src/directive/file-upload-template.directive.mjs +3 -3
  79. package/esm2022/file-upload/src/file-upload.module.mjs +4 -4
  80. package/esm2022/file-upload/src/pipes/format-bytes/format-bytes.pipe.mjs +4 -4
  81. package/esm2022/floating-labels/src/floating-labels/floating-label/floating-label.component.mjs +4 -4
  82. package/esm2022/floating-labels/src/floating-labels/floating-labels.module.mjs +4 -4
  83. package/esm2022/font-color/src/font-color.module.mjs +4 -4
  84. package/esm2022/font-color/src/font-color.pipe.mjs +4 -4
  85. package/esm2022/for/src/for.directive.mjs +4 -4
  86. package/esm2022/for/src/for.module.mjs +4 -4
  87. package/esm2022/form/src/form/form.component.mjs +3 -3
  88. package/esm2022/form/src/form-control/form-control.directive.mjs +3 -3
  89. package/esm2022/form/src/form-group/form-group.directive.mjs +3 -3
  90. package/esm2022/form/src/form.module.mjs +4 -4
  91. package/esm2022/grid/src/component/grid.component.mjs +4 -4
  92. package/esm2022/grid/src/directives/col-form-label/col-form-label.directive.mjs +3 -3
  93. package/esm2022/grid/src/directives/column/column.directive.mjs +4 -4
  94. package/esm2022/grid/src/directives/row/row.directive.mjs +3 -3
  95. package/esm2022/grid/src/grid.module.mjs +4 -4
  96. package/esm2022/has-overlay/src/has-overlay/has-overlay.component.mjs +4 -4
  97. package/esm2022/has-overlay/src/has-overlay/has-overlay.module.mjs +4 -4
  98. package/esm2022/has-property/src/has-property.module.mjs +4 -4
  99. package/esm2022/has-property/src/has-property.pipe.mjs +3 -3
  100. package/esm2022/in-list/src/in-list.module.mjs +4 -4
  101. package/esm2022/in-list/src/in-list.pipe.mjs +3 -3
  102. package/esm2022/input-group/src/input-group/input-group.component.mjs +3 -3
  103. package/esm2022/input-group/src/input-group.module.mjs +4 -4
  104. package/esm2022/instance-of/src/directives/instanceof-case.directive.mjs +4 -4
  105. package/esm2022/instance-of/src/directives/instanceof-default.directive.mjs +4 -4
  106. package/esm2022/instance-of/src/directives/instanceof.directive.mjs +4 -4
  107. package/esm2022/instance-of/src/directives/switch-view.mjs +1 -1
  108. package/esm2022/instance-of/src/instance-of.module.mjs +4 -4
  109. package/esm2022/instance-of/src/pipes/instance-of.pipe.mjs +3 -3
  110. package/esm2022/lazy-loading/src/lazy-load/lazy-load.directive.mjs +4 -4
  111. package/esm2022/lazy-loading/src/lazy-loading.module.mjs +4 -4
  112. package/esm2022/let/directive/let.directive.mjs +4 -4
  113. package/esm2022/let/let.module.mjs +4 -4
  114. package/esm2022/linify/src/linify.module.mjs +4 -4
  115. package/esm2022/linify/src/linify.pipe.mjs +3 -3
  116. package/esm2022/list-group/src/list-group/list-group.component.mjs +3 -3
  117. package/esm2022/list-group/src/list-group-item/list-group-item.component.mjs +3 -3
  118. package/esm2022/list-group/src/list-group.module.mjs +4 -4
  119. package/esm2022/markdown/src/bold/bold.pipe.mjs +4 -4
  120. package/esm2022/markdown/src/italic/italic.pipe.mjs +4 -4
  121. package/esm2022/markdown/src/markdown.module.mjs +4 -4
  122. package/esm2022/markdown/src/strikethrough/strikethrough.pipe.mjs +4 -4
  123. package/esm2022/markdown/src/underline/underline.pipe.mjs +4 -4
  124. package/esm2022/marquee/src/marquee/marquee.component.mjs +3 -3
  125. package/esm2022/marquee/src/marquee.module.mjs +4 -4
  126. package/esm2022/modal/src/components/modal/modal.component.mjs +5 -5
  127. package/esm2022/modal/src/components/modal-host/modal-host.component.mjs +4 -4
  128. package/esm2022/modal/src/directives/modal/modal.directive.mjs +3 -3
  129. package/esm2022/modal/src/directives/modal-body/modal-body.directive.mjs +3 -3
  130. package/esm2022/modal/src/directives/modal-close/modal-close.directive.mjs +3 -3
  131. package/esm2022/modal/src/directives/modal-footer/modal-footer.directive.mjs +3 -3
  132. package/esm2022/modal/src/directives/modal-header/modal-header.directive.mjs +3 -3
  133. package/esm2022/modal/src/modal.module.mjs +4 -4
  134. package/esm2022/multiselect/src/component/multiselect.component.mjs +4 -4
  135. package/esm2022/multiselect/src/directives/button-template/button-template.directive.mjs +3 -3
  136. package/esm2022/multiselect/src/directives/footer-template/footer-template.directive.mjs +3 -3
  137. package/esm2022/multiselect/src/directives/header-template/header-template.directive.mjs +3 -3
  138. package/esm2022/multiselect/src/multiselect.module.mjs +4 -4
  139. package/esm2022/navbar/src/dropdown-toggle/dropdown-toggle.directive.mjs +4 -4
  140. package/esm2022/navbar/src/expand-button/expand-button.directive.mjs +3 -3
  141. package/esm2022/navbar/src/nav-link/nav-link.directive.mjs +4 -4
  142. package/esm2022/navbar/src/navbar/navbar.component.mjs +4 -4
  143. package/esm2022/navbar/src/navbar-brand/navbar-brand.component.mjs +3 -3
  144. package/esm2022/navbar/src/navbar-content/navbar-content.directive.mjs +4 -4
  145. package/esm2022/navbar/src/navbar-dropdown/navbar-dropdown.component.mjs +4 -4
  146. package/esm2022/navbar/src/navbar-item/navbar-item.component.mjs +4 -4
  147. package/esm2022/navbar/src/navbar-nav/navbar-nav.component.mjs +4 -4
  148. package/esm2022/navbar/src/navbar.module.mjs +4 -4
  149. package/esm2022/navbar-toggler/src/navbar-toggler/navbar-toggler.component.mjs +5 -5
  150. package/esm2022/navbar-toggler/src/navbar-toggler.module.mjs +4 -4
  151. package/esm2022/navigation-lock/src/directive/navigation-lock.directive.mjs +4 -4
  152. package/esm2022/navigation-lock/src/guard/navigation-lock.guard.mjs +4 -4
  153. package/esm2022/navigation-lock/src/navigation-lock.module.mjs +4 -4
  154. package/esm2022/no-noscript/src/no-noscript/no-noscript.directive.mjs +4 -4
  155. package/esm2022/no-noscript/src/no-noscript.module.mjs +4 -4
  156. package/esm2022/offcanvas/src/components/offcanvas/offcanvas.component.mjs +5 -5
  157. package/esm2022/offcanvas/src/components/offcanvas-body/offcanvas-body.component.mjs +3 -3
  158. package/esm2022/offcanvas/src/components/offcanvas-header/offcanvas-header.component.mjs +3 -3
  159. package/esm2022/offcanvas/src/components/offcanvas-host/offcanvas-host.component.mjs +4 -4
  160. package/esm2022/offcanvas/src/directives/offcanvas-close/offcanvas-close.directive.mjs +3 -3
  161. package/esm2022/offcanvas/src/directives/offcanvas-content/offcanvas-content.directive.mjs +3 -3
  162. package/esm2022/offcanvas/src/directives/offcanvas-push/offcanvas-push.directive.mjs +4 -4
  163. package/esm2022/offcanvas/src/offcanvas.module.mjs +4 -4
  164. package/esm2022/ordinal-number/src/ordinal-number/ordinal-number.pipe.mjs +3 -3
  165. package/esm2022/ordinal-number/src/ordinal-number.module.mjs +4 -4
  166. package/esm2022/pagination/src/component/pagination/pagination.component.mjs +4 -4
  167. package/esm2022/pagination/src/pagination.module.mjs +4 -4
  168. package/esm2022/placeholder/src/placeholder/placeholder.component.mjs +4 -4
  169. package/esm2022/placeholder/src/placeholder-field/placeholder-field.directive.mjs +3 -3
  170. package/esm2022/placeholder/src/placeholder.module.mjs +4 -4
  171. package/esm2022/playlist-toggler/src/playlist-toggler/playlist-toggler.component.mjs +5 -5
  172. package/esm2022/playlist-toggler/src/playlist-toggler.module.mjs +4 -4
  173. package/esm2022/popover/src/component/popover.component.mjs +4 -4
  174. package/esm2022/popover/src/directives/popover/popover.directive.mjs +8 -8
  175. package/esm2022/popover/src/directives/popover-body/popover-body.directive.mjs +3 -3
  176. package/esm2022/popover/src/directives/popover-header/popover-header.directive.mjs +3 -3
  177. package/esm2022/popover/src/popover.module.mjs +4 -4
  178. package/esm2022/progress-bar/src/progress/progress.component.mjs +3 -3
  179. package/esm2022/progress-bar/src/progress-bar/progress-bar.component.mjs +3 -3
  180. package/esm2022/progress-bar/src/progress-bar.module.mjs +4 -4
  181. package/esm2022/range/src/component/range.component.mjs +4 -4
  182. package/esm2022/range/src/range.module.mjs +4 -4
  183. package/esm2022/range/src/value-accessor/range-value-accessor.mjs +4 -4
  184. package/esm2022/rating/src/component/rating.component.mjs +3 -3
  185. package/esm2022/rating/src/rating.module.mjs +4 -4
  186. package/esm2022/resizable/src/resizable/resizable.component.mjs +4 -4
  187. package/esm2022/resizable/src/resizable.module.mjs +4 -4
  188. package/esm2022/resizable/src/resize-glyph/resize-glyph.directive.mjs +4 -4
  189. package/esm2022/scheduler/src/components/resource-group-presenter/resource-group-presenter.component.mjs +17 -9
  190. package/esm2022/scheduler/src/components/scheduler/scheduler.component.mjs +21 -11
  191. package/esm2022/scheduler/src/constants/available-scales.mjs +9 -9
  192. package/esm2022/scheduler/src/pipes/bs-seconds-timespan.pipe/bs-seconds-timespan.pipe.mjs +3 -3
  193. package/esm2022/scheduler/src/pipes/bs-seconds-today-offset/bs-seconds-today-offset.pipe.mjs +3 -3
  194. package/esm2022/scheduler/src/pipes/date-offset/date-offset.pipe.mjs +3 -3
  195. package/esm2022/scheduler/src/pipes/day-of-week/day-of-week.pipe.mjs +4 -4
  196. package/esm2022/scheduler/src/scheduler.module.mjs +6 -10
  197. package/esm2022/scheduler/src/services/timeline/timeline.service.mjs +4 -4
  198. package/esm2022/scrollspy/src/component/scrollspy.component.mjs +4 -4
  199. package/esm2022/scrollspy/src/directives/scrollspy.directive.mjs +3 -3
  200. package/esm2022/scrollspy/src/scrollspy.module.mjs +4 -4
  201. package/esm2022/scrollspy/src/services/scroll-offset/scroll-offset.service.mjs +4 -4
  202. package/esm2022/searchbox/src/directives/enter-search-term.directive.mjs +3 -3
  203. package/esm2022/searchbox/src/directives/no-results.directive.mjs +3 -3
  204. package/esm2022/searchbox/src/directives/suggestion.directive.mjs +3 -3
  205. package/esm2022/searchbox/src/searchbox/searchbox.component.mjs +21 -12
  206. package/esm2022/searchbox/src/searchbox.module.mjs +5 -9
  207. package/esm2022/select/src/component/select.component.mjs +4 -4
  208. package/esm2022/select/src/select.module.mjs +4 -4
  209. package/esm2022/select/src/value-accessors/select-value-accessor.mjs +7 -7
  210. package/esm2022/select2/src/component/select2.component.mjs +4 -4
  211. package/esm2022/select2/src/directive/item-template/item-template.directive.mjs +3 -3
  212. package/esm2022/select2/src/directive/suggestion-template/suggestion-template.directive.mjs +3 -3
  213. package/esm2022/select2/src/select2.module.mjs +4 -4
  214. package/esm2022/signature-pad/src/component/signature-pad.component.mjs +4 -4
  215. package/esm2022/signature-pad/src/signature-pad.module.mjs +4 -4
  216. package/esm2022/slugify/src/slugify.module.mjs +4 -4
  217. package/esm2022/slugify/src/slugify.pipe.mjs +3 -3
  218. package/esm2022/spinner/src/spinner.component.mjs +3 -3
  219. package/esm2022/spinner/src/spinner.module.mjs +4 -4
  220. package/esm2022/split-string/src/split-string.module.mjs +4 -4
  221. package/esm2022/split-string/src/split-string.pipe.mjs +3 -3
  222. package/esm2022/splitter/src/element-at/element-at.pipe.mjs +4 -4
  223. package/esm2022/splitter/src/split-panel/split-panel.component.mjs +3 -3
  224. package/esm2022/splitter/src/splitter/splitter.component.mjs +4 -4
  225. package/esm2022/splitter/src/splitter.module.mjs +4 -4
  226. package/esm2022/sticky-footer/src/sticky-footer/sticky-footer.component.mjs +4 -4
  227. package/esm2022/sticky-footer/src/sticky-footer-parent/sticky-footer-parent.directive.mjs +3 -3
  228. package/esm2022/sticky-footer/src/sticky-footer.module.mjs +4 -4
  229. package/esm2022/tab-control/src/tab-control/tab-control.component.mjs +4 -4
  230. package/esm2022/tab-control/src/tab-control.module.mjs +4 -4
  231. package/esm2022/tab-control/src/tab-page/tab-page.component.mjs +3 -3
  232. package/esm2022/tab-control/src/tab-page-header/tab-page-header.directive.mjs +3 -3
  233. package/esm2022/table/src/component/table.component.mjs +4 -4
  234. package/esm2022/table/src/table.module.mjs +4 -4
  235. package/esm2022/timepicker/src/timepicker.component.mjs +19 -12
  236. package/esm2022/timepicker/src/timepicker.module.mjs +5 -9
  237. package/esm2022/toast/src/components/toast/toast.component.mjs +3 -3
  238. package/esm2022/toast/src/components/toast-body/toast-body.component.mjs +3 -3
  239. package/esm2022/toast/src/components/toast-container/toast-container.component.mjs +3 -3
  240. package/esm2022/toast/src/components/toast-header/toast-header.component.mjs +3 -3
  241. package/esm2022/toast/src/directives/toast-close/toast-close.directive.mjs +4 -4
  242. package/esm2022/toast/src/pipes/add-properties.pipe.mjs +3 -3
  243. package/esm2022/toast/src/services/toast/toast.service.mjs +4 -4
  244. package/esm2022/toast/src/toast.module.mjs +4 -4
  245. package/esm2022/toggle-button/src/component/toggle-button.component.mjs +4 -4
  246. package/esm2022/toggle-button/src/directives/toggle-button-group/toggle-button-group.directive.mjs +3 -3
  247. package/esm2022/toggle-button/src/toggle-button.module.mjs +4 -4
  248. package/esm2022/toggle-button/src/value-accessor/toggle-button-value-accessor.mjs +4 -4
  249. package/esm2022/tooltip/src/component/tooltip.component.mjs +4 -4
  250. package/esm2022/tooltip/src/directive/tooltip.directive.mjs +8 -8
  251. package/esm2022/tooltip/src/tooltip.module.mjs +4 -4
  252. package/esm2022/track-by/src/track-by-index.directive.mjs +3 -3
  253. package/esm2022/track-by/src/track-by.directive.mjs +3 -3
  254. package/esm2022/track-by/src/track-by.module.mjs +4 -4
  255. package/esm2022/treeview/src/treeview/treeview.component.mjs +3 -3
  256. package/esm2022/treeview/src/treeview-item/treeview-item.component.mjs +16 -9
  257. package/esm2022/treeview/src/treeview.module.mjs +6 -7
  258. package/esm2022/trust-html/src/trust-html.module.mjs +4 -4
  259. package/esm2022/trust-html/src/trust-html.pipe.mjs +3 -3
  260. package/esm2022/typeahead/src/typeahead.component.mjs +4 -4
  261. package/esm2022/typeahead/src/typeahead.module.mjs +4 -4
  262. package/esm2022/uc-first/src/uc-first.module.mjs +4 -4
  263. package/esm2022/uc-first/src/uc-first.pipe.mjs +3 -3
  264. package/esm2022/user-agent/src/directive/user-agent.directive.mjs +4 -4
  265. package/esm2022/user-agent/src/user-agent.module.mjs +4 -4
  266. package/esm2022/word-count/src/word-count.module.mjs +4 -4
  267. package/esm2022/word-count/src/word-count.pipe.mjs +4 -4
  268. package/fesm2022/mintplayer-ng-bootstrap-accordion.mjs +15 -15
  269. package/fesm2022/mintplayer-ng-bootstrap-accordion.mjs.map +1 -1
  270. package/fesm2022/mintplayer-ng-bootstrap-alert.mjs +10 -10
  271. package/fesm2022/mintplayer-ng-bootstrap-async-host-binding.mjs +4 -4
  272. package/fesm2022/mintplayer-ng-bootstrap-async-host-binding.mjs.map +1 -1
  273. package/fesm2022/mintplayer-ng-bootstrap-badge.mjs +7 -7
  274. package/fesm2022/mintplayer-ng-bootstrap-breadcrumb.mjs +10 -10
  275. package/fesm2022/mintplayer-ng-bootstrap-button-group.mjs +7 -7
  276. package/fesm2022/mintplayer-ng-bootstrap-button-type.mjs +7 -7
  277. package/fesm2022/mintplayer-ng-bootstrap-calendar-month.mjs +17 -17
  278. package/fesm2022/mintplayer-ng-bootstrap-calendar-month.mjs.map +1 -1
  279. package/fesm2022/mintplayer-ng-bootstrap-calendar.mjs +22 -17
  280. package/fesm2022/mintplayer-ng-bootstrap-calendar.mjs.map +1 -1
  281. package/fesm2022/mintplayer-ng-bootstrap-card.mjs +10 -10
  282. package/fesm2022/mintplayer-ng-bootstrap-carousel.mjs +13 -13
  283. package/fesm2022/mintplayer-ng-bootstrap-carousel.mjs.map +1 -1
  284. package/fesm2022/mintplayer-ng-bootstrap-close.mjs +7 -7
  285. package/fesm2022/mintplayer-ng-bootstrap-code-snippet.mjs +7 -7
  286. package/fesm2022/mintplayer-ng-bootstrap-color-picker.mjs +29 -29
  287. package/fesm2022/mintplayer-ng-bootstrap-color-picker.mjs.map +1 -1
  288. package/fesm2022/mintplayer-ng-bootstrap-container.mjs +7 -7
  289. package/fesm2022/mintplayer-ng-bootstrap-context-menu.mjs +7 -7
  290. package/fesm2022/mintplayer-ng-bootstrap-context-menu.mjs.map +1 -1
  291. package/fesm2022/mintplayer-ng-bootstrap-copy.mjs +7 -7
  292. package/fesm2022/mintplayer-ng-bootstrap-copy.mjs.map +1 -1
  293. package/fesm2022/mintplayer-ng-bootstrap-datatable.mjs +13 -13
  294. package/fesm2022/mintplayer-ng-bootstrap-datatable.mjs.map +1 -1
  295. package/fesm2022/mintplayer-ng-bootstrap-datepicker.mjs +7 -7
  296. package/fesm2022/mintplayer-ng-bootstrap-dock.mjs +20 -20
  297. package/fesm2022/mintplayer-ng-bootstrap-dock.mjs.map +1 -1
  298. package/fesm2022/mintplayer-ng-bootstrap-dropdown-divider.mjs +7 -7
  299. package/fesm2022/mintplayer-ng-bootstrap-dropdown-menu.mjs +10 -10
  300. package/fesm2022/mintplayer-ng-bootstrap-dropdown-menu.mjs.map +1 -1
  301. package/fesm2022/mintplayer-ng-bootstrap-dropdown.mjs +13 -13
  302. package/fesm2022/mintplayer-ng-bootstrap-dropdown.mjs.map +1 -1
  303. package/fesm2022/mintplayer-ng-bootstrap-enhanced-paste.mjs +7 -7
  304. package/fesm2022/mintplayer-ng-bootstrap-enhanced-paste.mjs.map +1 -1
  305. package/fesm2022/mintplayer-ng-bootstrap-enum.mjs +3 -3
  306. package/fesm2022/mintplayer-ng-bootstrap-file-upload.mjs +14 -14
  307. package/fesm2022/mintplayer-ng-bootstrap-file-upload.mjs.map +1 -1
  308. package/fesm2022/mintplayer-ng-bootstrap-floating-labels.mjs +7 -7
  309. package/fesm2022/mintplayer-ng-bootstrap-floating-labels.mjs.map +1 -1
  310. package/fesm2022/mintplayer-ng-bootstrap-font-color.mjs +7 -7
  311. package/fesm2022/mintplayer-ng-bootstrap-font-color.mjs.map +1 -1
  312. package/fesm2022/mintplayer-ng-bootstrap-for.mjs +7 -7
  313. package/fesm2022/mintplayer-ng-bootstrap-for.mjs.map +1 -1
  314. package/fesm2022/mintplayer-ng-bootstrap-form.mjs +13 -13
  315. package/fesm2022/mintplayer-ng-bootstrap-grid.mjs +16 -16
  316. package/fesm2022/mintplayer-ng-bootstrap-grid.mjs.map +1 -1
  317. package/fesm2022/mintplayer-ng-bootstrap-has-overlay.mjs +8 -8
  318. package/fesm2022/mintplayer-ng-bootstrap-has-overlay.mjs.map +1 -1
  319. package/fesm2022/mintplayer-ng-bootstrap-has-property.mjs +7 -7
  320. package/fesm2022/mintplayer-ng-bootstrap-in-list.mjs +7 -7
  321. package/fesm2022/mintplayer-ng-bootstrap-input-group.mjs +7 -7
  322. package/fesm2022/mintplayer-ng-bootstrap-instance-of.mjs +16 -16
  323. package/fesm2022/mintplayer-ng-bootstrap-instance-of.mjs.map +1 -1
  324. package/fesm2022/mintplayer-ng-bootstrap-lazy-loading.mjs +7 -7
  325. package/fesm2022/mintplayer-ng-bootstrap-lazy-loading.mjs.map +1 -1
  326. package/fesm2022/mintplayer-ng-bootstrap-let.mjs +7 -7
  327. package/fesm2022/mintplayer-ng-bootstrap-let.mjs.map +1 -1
  328. package/fesm2022/mintplayer-ng-bootstrap-linify.mjs +7 -7
  329. package/fesm2022/mintplayer-ng-bootstrap-list-group.mjs +10 -10
  330. package/fesm2022/mintplayer-ng-bootstrap-markdown.mjs +16 -16
  331. package/fesm2022/mintplayer-ng-bootstrap-markdown.mjs.map +1 -1
  332. package/fesm2022/mintplayer-ng-bootstrap-marquee.mjs +7 -7
  333. package/fesm2022/mintplayer-ng-bootstrap-modal.mjs +26 -26
  334. package/fesm2022/mintplayer-ng-bootstrap-modal.mjs.map +1 -1
  335. package/fesm2022/mintplayer-ng-bootstrap-multiselect.mjs +16 -16
  336. package/fesm2022/mintplayer-ng-bootstrap-multiselect.mjs.map +1 -1
  337. package/fesm2022/mintplayer-ng-bootstrap-navbar-toggler.mjs +8 -8
  338. package/fesm2022/mintplayer-ng-bootstrap-navbar-toggler.mjs.map +1 -1
  339. package/fesm2022/mintplayer-ng-bootstrap-navbar.mjs +32 -32
  340. package/fesm2022/mintplayer-ng-bootstrap-navbar.mjs.map +1 -1
  341. package/fesm2022/mintplayer-ng-bootstrap-navigation-lock.mjs +10 -10
  342. package/fesm2022/mintplayer-ng-bootstrap-navigation-lock.mjs.map +1 -1
  343. package/fesm2022/mintplayer-ng-bootstrap-no-noscript.mjs +7 -7
  344. package/fesm2022/mintplayer-ng-bootstrap-no-noscript.mjs.map +1 -1
  345. package/fesm2022/mintplayer-ng-bootstrap-offcanvas.mjs +27 -27
  346. package/fesm2022/mintplayer-ng-bootstrap-offcanvas.mjs.map +1 -1
  347. package/fesm2022/mintplayer-ng-bootstrap-ordinal-number.mjs +7 -7
  348. package/fesm2022/mintplayer-ng-bootstrap-pagination.mjs +8 -8
  349. package/fesm2022/mintplayer-ng-bootstrap-pagination.mjs.map +1 -1
  350. package/fesm2022/mintplayer-ng-bootstrap-placeholder.mjs +11 -11
  351. package/fesm2022/mintplayer-ng-bootstrap-placeholder.mjs.map +1 -1
  352. package/fesm2022/mintplayer-ng-bootstrap-playlist-toggler.mjs +8 -8
  353. package/fesm2022/mintplayer-ng-bootstrap-playlist-toggler.mjs.map +1 -1
  354. package/fesm2022/mintplayer-ng-bootstrap-popover.mjs +20 -20
  355. package/fesm2022/mintplayer-ng-bootstrap-popover.mjs.map +1 -1
  356. package/fesm2022/mintplayer-ng-bootstrap-progress-bar.mjs +11 -11
  357. package/fesm2022/mintplayer-ng-bootstrap-range.mjs +11 -11
  358. package/fesm2022/mintplayer-ng-bootstrap-range.mjs.map +1 -1
  359. package/fesm2022/mintplayer-ng-bootstrap-rating.mjs +8 -8
  360. package/fesm2022/mintplayer-ng-bootstrap-resizable.mjs +10 -10
  361. package/fesm2022/mintplayer-ng-bootstrap-resizable.mjs.map +1 -1
  362. package/fesm2022/mintplayer-ng-bootstrap-scheduler.mjs +59 -47
  363. package/fesm2022/mintplayer-ng-bootstrap-scheduler.mjs.map +1 -1
  364. package/fesm2022/mintplayer-ng-bootstrap-scrollspy.mjs +14 -14
  365. package/fesm2022/mintplayer-ng-bootstrap-scrollspy.mjs.map +1 -1
  366. package/fesm2022/mintplayer-ng-bootstrap-searchbox.mjs +32 -28
  367. package/fesm2022/mintplayer-ng-bootstrap-searchbox.mjs.map +1 -1
  368. package/fesm2022/mintplayer-ng-bootstrap-select.mjs +13 -13
  369. package/fesm2022/mintplayer-ng-bootstrap-select.mjs.map +1 -1
  370. package/fesm2022/mintplayer-ng-bootstrap-select2.mjs +13 -13
  371. package/fesm2022/mintplayer-ng-bootstrap-select2.mjs.map +1 -1
  372. package/fesm2022/mintplayer-ng-bootstrap-signature-pad.mjs +7 -7
  373. package/fesm2022/mintplayer-ng-bootstrap-signature-pad.mjs.map +1 -1
  374. package/fesm2022/mintplayer-ng-bootstrap-slugify.mjs +7 -7
  375. package/fesm2022/mintplayer-ng-bootstrap-spinner.mjs +7 -7
  376. package/fesm2022/mintplayer-ng-bootstrap-split-string.mjs +7 -7
  377. package/fesm2022/mintplayer-ng-bootstrap-splitter.mjs +13 -13
  378. package/fesm2022/mintplayer-ng-bootstrap-splitter.mjs.map +1 -1
  379. package/fesm2022/mintplayer-ng-bootstrap-sticky-footer.mjs +10 -10
  380. package/fesm2022/mintplayer-ng-bootstrap-sticky-footer.mjs.map +1 -1
  381. package/fesm2022/mintplayer-ng-bootstrap-tab-control.mjs +14 -14
  382. package/fesm2022/mintplayer-ng-bootstrap-tab-control.mjs.map +1 -1
  383. package/fesm2022/mintplayer-ng-bootstrap-table.mjs +8 -8
  384. package/fesm2022/mintplayer-ng-bootstrap-table.mjs.map +1 -1
  385. package/fesm2022/mintplayer-ng-bootstrap-timepicker.mjs +21 -19
  386. package/fesm2022/mintplayer-ng-bootstrap-timepicker.mjs.map +1 -1
  387. package/fesm2022/mintplayer-ng-bootstrap-toast.mjs +25 -25
  388. package/fesm2022/mintplayer-ng-bootstrap-toast.mjs.map +1 -1
  389. package/fesm2022/mintplayer-ng-bootstrap-toggle-button.mjs +13 -13
  390. package/fesm2022/mintplayer-ng-bootstrap-toggle-button.mjs.map +1 -1
  391. package/fesm2022/mintplayer-ng-bootstrap-tooltip.mjs +14 -14
  392. package/fesm2022/mintplayer-ng-bootstrap-tooltip.mjs.map +1 -1
  393. package/fesm2022/mintplayer-ng-bootstrap-track-by.mjs +10 -10
  394. package/fesm2022/mintplayer-ng-bootstrap-treeview.mjs +21 -16
  395. package/fesm2022/mintplayer-ng-bootstrap-treeview.mjs.map +1 -1
  396. package/fesm2022/mintplayer-ng-bootstrap-trust-html.mjs +7 -7
  397. package/fesm2022/mintplayer-ng-bootstrap-typeahead.mjs +7 -7
  398. package/fesm2022/mintplayer-ng-bootstrap-typeahead.mjs.map +1 -1
  399. package/fesm2022/mintplayer-ng-bootstrap-uc-first.mjs +7 -7
  400. package/fesm2022/mintplayer-ng-bootstrap-user-agent.mjs +7 -7
  401. package/fesm2022/mintplayer-ng-bootstrap-user-agent.mjs.map +1 -1
  402. package/fesm2022/mintplayer-ng-bootstrap-word-count.mjs +7 -7
  403. package/fesm2022/mintplayer-ng-bootstrap-word-count.mjs.map +1 -1
  404. package/package.json +7 -13
  405. package/scheduler/src/components/resource-group-presenter/resource-group-presenter.component.d.ts +5 -1
  406. package/scheduler/src/components/scheduler/scheduler.component.d.ts +5 -1
  407. package/scheduler/src/scheduler.module.d.ts +1 -2
  408. package/searchbox/src/searchbox/searchbox.component.d.ts +5 -2
  409. package/searchbox/src/searchbox.module.d.ts +6 -7
  410. package/timepicker/src/timepicker.component.d.ts +4 -1
  411. package/timepicker/src/timepicker.module.d.ts +6 -7
  412. package/treeview/src/treeview-item/treeview-item.component.d.ts +4 -1
  413. package/treeview/src/treeview.module.d.ts +1 -2
  414. package/esm2022/icon/index.mjs +0 -3
  415. package/esm2022/icon/mintplayer-ng-bootstrap-icon.mjs +0 -5
  416. package/esm2022/icon/src/icon.component.mjs +0 -34
  417. package/esm2022/icon/src/icon.module.mjs +0 -18
  418. package/fesm2022/mintplayer-ng-bootstrap-icon.mjs +0 -56
  419. package/fesm2022/mintplayer-ng-bootstrap-icon.mjs.map +0 -1
  420. package/icon/index.d.ts +0 -2
  421. package/icon/src/icon.component.d.ts +0 -12
  422. package/icon/src/icon.module.d.ts +0 -8
@@ -1 +1 @@
1
- {"version":3,"file":"mintplayer-ng-bootstrap-datatable.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/datatable/src/datatable-settings.ts","../../../../libs/mintplayer-ng-bootstrap/datatable/src/datatable-column/datatable-column.directive.ts","../../../../libs/mintplayer-ng-bootstrap/datatable/src/datatable/datatable.component.ts","../../../../libs/mintplayer-ng-bootstrap/datatable/src/datatable/datatable.component.html","../../../../libs/mintplayer-ng-bootstrap/datatable/src/row-template/row-template.directive.ts","../../../../libs/mintplayer-ng-bootstrap/datatable/src/datatable.module.ts","../../../../libs/mintplayer-ng-bootstrap/datatable/mintplayer-ng-bootstrap-datatable.ts"],"sourcesContent":["import { PaginationRequest } from \"@mintplayer/pagination\";\n\nexport class DatatableSettings {\n constructor(data?: Partial<DatatableSettings>) {\n Object.assign(this, data);\n\n if (data && data.perPage) {\n this.perPage = data.perPage;\n } else {\n // Set default value\n this.perPage = {\n values: [10, 20, 50],\n selected: 20\n };\n }\n \n if (data && data.page) {\n this.page = data.page;\n } else {\n // Set default value\n this.page = {\n values: [1],\n selected: 1\n };\n }\n }\n\n public sortProperty = '';\n public sortDirection: 'ascending' | 'descending' = 'ascending';\n public perPage: { values: number[], selected: number };\n public page: { values: number[], selected: number };\n\n public toPagination() {\n const res = <PaginationRequest>{\n sortProperty: this.sortProperty,\n sortDirection: this.sortDirection,\n perPage: this.perPage.selected,\n page: this.page.selected\n };\n return res;\n }\n}","import { Directive, Input, TemplateRef } from '@angular/core';\n\n@Directive({\n selector: '[bsDatatableColumn]'\n})\nexport class BsDatatableColumnDirective {\n\n constructor(templateRef: TemplateRef<any>) {\n this.templateRef = templateRef;\n }\n\n templateRef: TemplateRef<any>;\n @Input('bsDatatableColumn') public name = '';\n @Input('bsDatatableColumnSortable') public sortable = true;\n\n}","import { Component, Input, ContentChildren, TemplateRef, EventEmitter, Output } from '@angular/core';\nimport { BehaviorSubject, Observable, map } from 'rxjs';\nimport { PaginationResponse } from '@mintplayer/pagination';\nimport { DatatableSettings } from '../datatable-settings';\nimport { BsDatatableColumnDirective } from '../datatable-column/datatable-column.directive';\nimport { BsRowTemplateContext } from '../row-template/row-template.directive';\n\n\n@Component({\n selector: 'bs-datatable',\n templateUrl: './datatable.component.html',\n styleUrls: ['./datatable.component.scss']\n})\nexport class BsDatatableComponent<TData> {\n\n constructor() {\n this.settings = new DatatableSettings();\n this.settings.sortProperty = '';\n this.settings.sortDirection = 'ascending';\n this.settings.perPage = { values: [10, 20, 50], selected: 20 };\n this.settings.page = { values: [1], selected: 1 };\n\n this.numberOfColumns$ = this.columns$.pipe(map(columns => columns.length));\n }\n \n //#region Columns\n columns$ = new BehaviorSubject<BsDatatableColumnDirective[]>([]);\n numberOfColumns$: Observable<number>;\n @ContentChildren(BsDatatableColumnDirective) set columns(value: BsDatatableColumnDirective[]) {\n this.columns$.next(value);\n }\n //#endregion\n\n @Input() settings: DatatableSettings;\n @Input() data?: PaginationResponse<TData>;\n rowTemplate?: TemplateRef<BsRowTemplateContext<TData>>;\n @Output() settingsChange = new EventEmitter<DatatableSettings>();\n\n columnHeaderClicked(column: BsDatatableColumnDirective) {\n if (column.sortable) {\n if (this.settings.sortProperty !== column.name) {\n this.settings.sortProperty = column.name;\n this.settings.sortDirection = 'ascending';\n } else if (this.settings.sortDirection === 'descending') {\n this.settings.sortDirection = 'ascending';\n } else {\n this.settings.sortDirection = 'descending';\n }\n this.settingsChange.emit(this.settings);\n }\n }\n\n}\n","<bs-table [isResponsive]=\"true\" [striped]=\"true\" [hover]=\"true\" class=\"mb-3\">\n <thead>\n <tr>\n <th *ngFor=\"let column of (columns$ | async)\" class=\"text-nowrap\"\n [class.sort]=\"column.sortable\"\n [class.sort-asc]=\"column.sortable && (settings.sortProperty === column.name) && (settings.sortDirection === 'ascending')\"\n [class.sort-desc]=\"column.sortable && (settings.sortProperty === column.name) && (settings.sortDirection === 'descending')\"\n (click)=\"columnHeaderClicked(column)\">\n <ng-container *ngTemplateOutlet=\"column.templateRef\"></ng-container>\n </th>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngIf=\"!!data && !!rowTemplate\">\n <ng-container *ngFor=\"let item of data.data\">\n <ng-container *ngTemplateOutlet=\"rowTemplate; context: { $implicit: item }\"></ng-container>\n </ng-container>\n </ng-container>\n </tbody>\n <tfoot>\n <tr>\n <td [colSpan]=\"numberOfColumns$ | async\">\n <bs-grid [stopFullWidthAt]=\"'never'\">\n <div bsRow>\n <div [bsColumn]=\"{md: 12}\">\n <bs-pagination class=\"float-start\" [pageNumbers]=\"settings.perPage.values\"\n [(selectedPageNumber)]=\"settings.perPage.selected\" (selectedPageNumberChange)=\"settingsChange.emit(settings)\"\n [showArrows]=\"false\"></bs-pagination>\n <bs-pagination class=\"float-end\" [pageNumbers]=\"settings.page.values\"\n [(selectedPageNumber)]=\"settings.page.selected\" (selectedPageNumberChange)=\"settingsChange.emit(settings)\"\n [showArrows]=\"true\"></bs-pagination>\n </div>\n </div>\n </bs-grid>\n </td>\n </tr>\n </tfoot>\n</bs-table>","import { Directive, Input, TemplateRef } from '@angular/core';\nimport { PaginationResponse } from '@mintplayer/pagination';\nimport { BsDatatableComponent } from '../datatable/datatable.component';\n\n@Directive({\n selector: '[bsRowTemplate]'\n})\nexport class BsRowTemplateDirective<TData> {\n\n constructor(private datatableComponent: BsDatatableComponent<TData>, templateRef: TemplateRef<BsRowTemplateContext<TData>>) {\n this.datatableComponent.rowTemplate = templateRef;\n }\n\n @Input() set bsRowTemplateOf(value: PaginationResponse<TData> | undefined) {\n this.datatableComponent.data = value;\n }\n \n public static ngTemplateContextGuard<TData>(\n dir: BsRowTemplateDirective<TData>,\n ctx: any\n ): ctx is BsRowTemplateContext<Exclude<TData, false | 0 | '' | null | undefined>> {\n return true;\n }\n}\n\nexport class BsRowTemplateContext<TData = unknown> {\n public $implicit: TData = null!;\n}","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BsGridModule } from '@mintplayer/ng-bootstrap/grid';\nimport { BsTableModule } from '@mintplayer/ng-bootstrap/table';\nimport { BsPaginationModule } from '@mintplayer/ng-bootstrap/pagination';\nimport { BsDatatableComponent } from './datatable/datatable.component';\nimport { BsDatatableColumnDirective } from './datatable-column/datatable-column.directive';\nimport { BsRowTemplateDirective } from './row-template/row-template.directive';\n\n@NgModule({\n declarations: [\n BsDatatableComponent,\n BsDatatableColumnDirective,\n BsRowTemplateDirective\n ],\n imports: [\n CommonModule,\n BsGridModule,\n BsTableModule,\n BsPaginationModule\n ],\n exports: [\n BsDatatableComponent,\n BsDatatableColumnDirective,\n BsRowTemplateDirective\n ]\n})\nexport class BsDatatableModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.BsDatatableComponent"],"mappings":"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"}
1
+ {"version":3,"file":"mintplayer-ng-bootstrap-datatable.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/datatable/src/datatable-settings.ts","../../../../libs/mintplayer-ng-bootstrap/datatable/src/datatable-column/datatable-column.directive.ts","../../../../libs/mintplayer-ng-bootstrap/datatable/src/datatable/datatable.component.ts","../../../../libs/mintplayer-ng-bootstrap/datatable/src/datatable/datatable.component.html","../../../../libs/mintplayer-ng-bootstrap/datatable/src/row-template/row-template.directive.ts","../../../../libs/mintplayer-ng-bootstrap/datatable/src/datatable.module.ts","../../../../libs/mintplayer-ng-bootstrap/datatable/mintplayer-ng-bootstrap-datatable.ts"],"sourcesContent":["import { PaginationRequest } from \"@mintplayer/pagination\";\n\nexport class DatatableSettings {\n constructor(data?: Partial<DatatableSettings>) {\n Object.assign(this, data);\n\n if (data && data.perPage) {\n this.perPage = data.perPage;\n } else {\n // Set default value\n this.perPage = {\n values: [10, 20, 50],\n selected: 20\n };\n }\n \n if (data && data.page) {\n this.page = data.page;\n } else {\n // Set default value\n this.page = {\n values: [1],\n selected: 1\n };\n }\n }\n\n public sortProperty = '';\n public sortDirection: 'ascending' | 'descending' = 'ascending';\n public perPage: { values: number[], selected: number };\n public page: { values: number[], selected: number };\n\n public toPagination() {\n const res = <PaginationRequest>{\n sortProperty: this.sortProperty,\n sortDirection: this.sortDirection,\n perPage: this.perPage.selected,\n page: this.page.selected\n };\n return res;\n }\n}","import { Directive, Input, TemplateRef } from '@angular/core';\n\n@Directive({\n selector: '[bsDatatableColumn]'\n})\nexport class BsDatatableColumnDirective {\n\n constructor(templateRef: TemplateRef<any>) {\n this.templateRef = templateRef;\n }\n\n templateRef: TemplateRef<any>;\n @Input('bsDatatableColumn') public name = '';\n @Input('bsDatatableColumnSortable') public sortable = true;\n\n}","import { Component, Input, ContentChildren, TemplateRef, EventEmitter, Output } from '@angular/core';\nimport { BehaviorSubject, Observable, map } from 'rxjs';\nimport { PaginationResponse } from '@mintplayer/pagination';\nimport { DatatableSettings } from '../datatable-settings';\nimport { BsDatatableColumnDirective } from '../datatable-column/datatable-column.directive';\nimport { BsRowTemplateContext } from '../row-template/row-template.directive';\n\n\n@Component({\n selector: 'bs-datatable',\n templateUrl: './datatable.component.html',\n styleUrls: ['./datatable.component.scss']\n})\nexport class BsDatatableComponent<TData> {\n\n constructor() {\n this.settings = new DatatableSettings();\n this.settings.sortProperty = '';\n this.settings.sortDirection = 'ascending';\n this.settings.perPage = { values: [10, 20, 50], selected: 20 };\n this.settings.page = { values: [1], selected: 1 };\n\n this.numberOfColumns$ = this.columns$.pipe(map(columns => columns.length));\n }\n \n //#region Columns\n columns$ = new BehaviorSubject<BsDatatableColumnDirective[]>([]);\n numberOfColumns$: Observable<number>;\n @ContentChildren(BsDatatableColumnDirective) set columns(value: BsDatatableColumnDirective[]) {\n this.columns$.next(value);\n }\n //#endregion\n\n @Input() settings: DatatableSettings;\n @Input() data?: PaginationResponse<TData>;\n rowTemplate?: TemplateRef<BsRowTemplateContext<TData>>;\n @Output() settingsChange = new EventEmitter<DatatableSettings>();\n\n columnHeaderClicked(column: BsDatatableColumnDirective) {\n if (column.sortable) {\n if (this.settings.sortProperty !== column.name) {\n this.settings.sortProperty = column.name;\n this.settings.sortDirection = 'ascending';\n } else if (this.settings.sortDirection === 'descending') {\n this.settings.sortDirection = 'ascending';\n } else {\n this.settings.sortDirection = 'descending';\n }\n this.settingsChange.emit(this.settings);\n }\n }\n\n}\n","<bs-table [isResponsive]=\"true\" [striped]=\"true\" [hover]=\"true\" class=\"mb-3\">\n <thead>\n <tr>\n <th *ngFor=\"let column of (columns$ | async)\" class=\"text-nowrap\"\n [class.sort]=\"column.sortable\"\n [class.sort-asc]=\"column.sortable && (settings.sortProperty === column.name) && (settings.sortDirection === 'ascending')\"\n [class.sort-desc]=\"column.sortable && (settings.sortProperty === column.name) && (settings.sortDirection === 'descending')\"\n (click)=\"columnHeaderClicked(column)\">\n <ng-container *ngTemplateOutlet=\"column.templateRef\"></ng-container>\n </th>\n </tr>\n </thead>\n <tbody>\n <ng-container *ngIf=\"!!data && !!rowTemplate\">\n <ng-container *ngFor=\"let item of data.data\">\n <ng-container *ngTemplateOutlet=\"rowTemplate; context: { $implicit: item }\"></ng-container>\n </ng-container>\n </ng-container>\n </tbody>\n <tfoot>\n <tr>\n <td [colSpan]=\"numberOfColumns$ | async\">\n <bs-grid [stopFullWidthAt]=\"'never'\">\n <div bsRow>\n <div [bsColumn]=\"{md: 12}\">\n <bs-pagination class=\"float-start\" [pageNumbers]=\"settings.perPage.values\"\n [(selectedPageNumber)]=\"settings.perPage.selected\" (selectedPageNumberChange)=\"settingsChange.emit(settings)\"\n [showArrows]=\"false\"></bs-pagination>\n <bs-pagination class=\"float-end\" [pageNumbers]=\"settings.page.values\"\n [(selectedPageNumber)]=\"settings.page.selected\" (selectedPageNumberChange)=\"settingsChange.emit(settings)\"\n [showArrows]=\"true\"></bs-pagination>\n </div>\n </div>\n </bs-grid>\n </td>\n </tr>\n </tfoot>\n</bs-table>","import { Directive, Input, TemplateRef } from '@angular/core';\nimport { PaginationResponse } from '@mintplayer/pagination';\nimport { BsDatatableComponent } from '../datatable/datatable.component';\n\n@Directive({\n selector: '[bsRowTemplate]'\n})\nexport class BsRowTemplateDirective<TData> {\n\n constructor(private datatableComponent: BsDatatableComponent<TData>, templateRef: TemplateRef<BsRowTemplateContext<TData>>) {\n this.datatableComponent.rowTemplate = templateRef;\n }\n\n @Input() set bsRowTemplateOf(value: PaginationResponse<TData> | undefined) {\n this.datatableComponent.data = value;\n }\n \n public static ngTemplateContextGuard<TData>(\n dir: BsRowTemplateDirective<TData>,\n ctx: any\n ): ctx is BsRowTemplateContext<Exclude<TData, false | 0 | '' | null | undefined>> {\n return true;\n }\n}\n\nexport class BsRowTemplateContext<TData = unknown> {\n public $implicit: TData = null!;\n}","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BsGridModule } from '@mintplayer/ng-bootstrap/grid';\nimport { BsTableModule } from '@mintplayer/ng-bootstrap/table';\nimport { BsPaginationModule } from '@mintplayer/ng-bootstrap/pagination';\nimport { BsDatatableComponent } from './datatable/datatable.component';\nimport { BsDatatableColumnDirective } from './datatable-column/datatable-column.directive';\nimport { BsRowTemplateDirective } from './row-template/row-template.directive';\n\n@NgModule({\n declarations: [\n BsDatatableComponent,\n BsDatatableColumnDirective,\n BsRowTemplateDirective\n ],\n imports: [\n CommonModule,\n BsGridModule,\n BsTableModule,\n BsPaginationModule\n ],\n exports: [\n BsDatatableComponent,\n BsDatatableColumnDirective,\n BsRowTemplateDirective\n ]\n})\nexport class BsDatatableModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.BsDatatableComponent"],"mappings":"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"}
@@ -37,10 +37,10 @@ class BsDatepickerComponent {
37
37
  this._currentMonth = value;
38
38
  this.currentMonthChange.emit(value);
39
39
  }
40
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDatepickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
41
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.3", type: BsDatepickerComponent, selector: "bs-datepicker", inputs: { selectedDate: "selectedDate", currentMonth: "currentMonth", disableDateFn: "disableDateFn" }, outputs: { selectedDateChange: "selectedDateChange", currentMonthChange: "currentMonthChange" }, ngImport: i0, template: "<!-- <bs-dropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\"></bs-dropdown> -->\n<div bsDropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\">\n <button bsDropdownToggle [color]=\"colors.primary\">{{ selectedDate | date }}</button>\n <bs-has-overlay></bs-has-overlay>\n <div *bsDropdownMenu>\n <bs-calendar [(selectedDate)]=\"selectedDate\" [(currentMonth)]=\"currentMonth\" [disableDateFn]=\"disableDateFn\"></bs-calendar>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "component", type: i1.BsCalendarComponent, selector: "bs-calendar", inputs: ["currentMonth", "selectedDate", "disableDateFn"], outputs: ["currentMonthChange", "selectedDateChange"] }, { kind: "directive", type: i2.BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "sameDropdownWidth", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i2.BsDropdownToggleDirective, selector: "[bsDropdownToggle]" }, { kind: "directive", type: i2.BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { kind: "component", type: i3.BsHasOverlayComponent, selector: "bs-has-overlay" }, { kind: "directive", type: i4.BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color],a[color]", inputs: ["color"] }, { kind: "pipe", type: i5.DatePipe, name: "date" }] }); }
40
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDatepickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
41
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: BsDatepickerComponent, selector: "bs-datepicker", inputs: { selectedDate: "selectedDate", currentMonth: "currentMonth", disableDateFn: "disableDateFn" }, outputs: { selectedDateChange: "selectedDateChange", currentMonthChange: "currentMonthChange" }, ngImport: i0, template: "<!-- <bs-dropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\"></bs-dropdown> -->\n<div bsDropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\">\n <button bsDropdownToggle [color]=\"colors.primary\">{{ selectedDate | date }}</button>\n <bs-has-overlay></bs-has-overlay>\n <div *bsDropdownMenu>\n <bs-calendar [(selectedDate)]=\"selectedDate\" [(currentMonth)]=\"currentMonth\" [disableDateFn]=\"disableDateFn\"></bs-calendar>\n </div>\n</div>", styles: [""], dependencies: [{ kind: "component", type: i1.BsCalendarComponent, selector: "bs-calendar", inputs: ["currentMonth", "selectedDate", "disableDateFn"], outputs: ["currentMonthChange", "selectedDateChange"] }, { kind: "directive", type: i2.BsDropdownDirective, selector: "[bsDropdown]", inputs: ["hasBackdrop", "sameWidth", "closeOnClickOutside", "sameDropdownWidth", "isOpen"], outputs: ["isOpenChange"] }, { kind: "directive", type: i2.BsDropdownToggleDirective, selector: "[bsDropdownToggle]" }, { kind: "directive", type: i2.BsDropdownMenuDirective, selector: "[bsDropdownMenu]" }, { kind: "component", type: i3.BsHasOverlayComponent, selector: "bs-has-overlay" }, { kind: "directive", type: i4.BsButtonTypeDirective, selector: "button[color],input[type=\"button\"][color],input[type=\"submit\"][color],a[color]", inputs: ["color"] }, { kind: "pipe", type: i5.DatePipe, name: "date" }] }); }
42
42
  }
43
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDatepickerComponent, decorators: [{
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDatepickerComponent, decorators: [{
44
44
  type: Component,
45
45
  args: [{ selector: 'bs-datepicker', template: "<!-- <bs-dropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\"></bs-dropdown> -->\n<div bsDropdown [hasBackdrop]=\"true\" [closeOnClickOutside]=\"true\">\n <button bsDropdownToggle [color]=\"colors.primary\">{{ selectedDate | date }}</button>\n <bs-has-overlay></bs-has-overlay>\n <div *bsDropdownMenu>\n <bs-calendar [(selectedDate)]=\"selectedDate\" [(currentMonth)]=\"currentMonth\" [disableDateFn]=\"disableDateFn\"></bs-calendar>\n </div>\n</div>" }]
46
46
  }], propDecorators: { selectedDateChange: [{
@@ -56,19 +56,19 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImpor
56
56
  }] } });
57
57
 
58
58
  class BsDatepickerModule {
59
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDatepickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
60
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.3", ngImport: i0, type: BsDatepickerModule, declarations: [BsDatepickerComponent], imports: [CommonModule,
59
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDatepickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
60
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.1", ngImport: i0, type: BsDatepickerModule, declarations: [BsDatepickerComponent], imports: [CommonModule,
61
61
  BsCalendarModule,
62
62
  BsDropdownModule,
63
63
  BsButtonTypeModule,
64
64
  BsHasOverlayModule], exports: [BsDatepickerComponent] }); }
65
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDatepickerModule, imports: [CommonModule,
65
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDatepickerModule, imports: [CommonModule,
66
66
  BsCalendarModule,
67
67
  BsDropdownModule,
68
68
  BsButtonTypeModule,
69
69
  BsHasOverlayModule] }); }
70
70
  }
71
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDatepickerModule, decorators: [{
71
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDatepickerModule, decorators: [{
72
72
  type: NgModule,
73
73
  args: [{
74
74
  declarations: [
@@ -26,10 +26,10 @@ class BsDockPanelComponent {
26
26
  this.headerPortal = new DomPortal(this.headerElement.nativeElement);
27
27
  this.contentPortal = new DomPortal(this.contentElement.nativeElement);
28
28
  }
29
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDockPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
30
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.3", type: BsDockPanelComponent, selector: "bs-dock-panel", inputs: { panelId: "panelId" }, viewQueries: [{ propertyName: "headerElement", first: true, predicate: ["headerElement"], descendants: true }, { propertyName: "contentElement", first: true, predicate: ["contentElement"], descendants: true }], ngImport: i0, template: "<!-- <bs-split-panel> -->\n<div #headerElement class=\"dock-header\">\n <ng-content select=\"bs-dock-panel-header\"></ng-content>\n</div>\n<div #contentElement>\n <ng-content></ng-content>\n</div>\n<!-- </bs-split-panel> -->", styles: [".dock-header{padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);margin:calc(-1 * var(--bs-nav-link-padding-y)) calc(-1 * var(--bs-nav-link-padding-x))}\n"] }); }
29
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDockPanelComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
30
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: BsDockPanelComponent, selector: "bs-dock-panel", inputs: { panelId: "panelId" }, viewQueries: [{ propertyName: "headerElement", first: true, predicate: ["headerElement"], descendants: true }, { propertyName: "contentElement", first: true, predicate: ["contentElement"], descendants: true }], ngImport: i0, template: "<!-- <bs-split-panel> -->\n<div #headerElement class=\"dock-header\">\n <ng-content select=\"bs-dock-panel-header\"></ng-content>\n</div>\n<div #contentElement>\n <ng-content></ng-content>\n</div>\n<!-- </bs-split-panel> -->", styles: [".dock-header{padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);margin:calc(-1 * var(--bs-nav-link-padding-y)) calc(-1 * var(--bs-nav-link-padding-x))}\n"] }); }
31
31
  }
32
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDockPanelComponent, decorators: [{
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDockPanelComponent, decorators: [{
33
33
  type: Component,
34
34
  args: [{ selector: 'bs-dock-panel', template: "<!-- <bs-split-panel> -->\n<div #headerElement class=\"dock-header\">\n <ng-content select=\"bs-dock-panel-header\"></ng-content>\n</div>\n<div #contentElement>\n <ng-content></ng-content>\n</div>\n<!-- </bs-split-panel> -->", styles: [".dock-header{padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);margin:calc(-1 * var(--bs-nav-link-padding-y)) calc(-1 * var(--bs-nav-link-padding-x))}\n"] }]
35
35
  }], propDecorators: { headerElement: [{
@@ -138,12 +138,12 @@ class BsDockPaneRendererComponent {
138
138
  this.overlayRef = undefined;
139
139
  }
140
140
  }
141
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDockPaneRendererComponent, deps: [{ token: i1.Overlay }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
142
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.3", type: BsDockPaneRendererComponent, selector: "bs-dock-pane-renderer", inputs: { layout: "layout" }, ngImport: i0, template: "<!-- <ng-content></ng-content> -->\n<ng-container [bsInstanceof]=\"layout$ | async\">\n <div *bsInstanceofCase=\"BsDocumentHostType; let documentHost\" data-hello>\n <bs-dock-pane-renderer [layout]=\"documentHost\"></bs-dock-pane-renderer>\n </div>\n <bs-tab-control *bsInstanceofCase=\"BsTabGroupType; let tabGroup\" [allowDragDrop]=\"false\" class=\"d-flex flex-column h-100 dock-tabs\">\n <bs-tab-page *ngFor=\"let tab of tabGroup.panes\">\n <ng-container *bsTabPageHeader>\n <ng-template [cdkPortalOutlet]=\"tab.dockPanel.headerPortal\"></ng-template>\n </ng-container>\n <bs-dock-pane-renderer [layout]=\"tab\"></bs-dock-pane-renderer>\n </bs-tab-page>\n </bs-tab-control>\n <bs-splitter *bsInstanceofCase=\"BsSplitterType; let splitter\" [orientation]=\"splitter.orientation\">\n <bs-split-panel *ngFor=\"let panel of splitter.panes\">\n <bs-dock-pane-renderer [layout]=\"panel\"></bs-dock-pane-renderer>\n </bs-split-panel>\n </bs-splitter>\n <ng-container *bsInstanceofCase=\"BsContentPaneType; let content\">\n <ng-template [cdkPortalOutlet]=\"content.dockPanel.contentPortal\"></ng-template>\n </ng-container>\n <ng-container *bsInstanceofCase=\"BsFloatingPaneType; let floating\">\n <bs-resizable *ngIf=\"floating.pane\" [positioning]=\"'absolute'\" [presetPosition]=\"{ left: floating.location?.x ?? 0, top: floating.location?.y ?? 0, width: floating.size?.width ?? 200, height: floating.size?.height ?? 100 }\">\n <bs-dock-pane-renderer [layout]=\"floating.pane\"></bs-dock-pane-renderer>\n </bs-resizable>\n </ng-container>\n <div *bsInstanceofDefault>\n No match\n </div>\n</ng-container>", styles: [".dock-tabs{background:#F3F3F3}:host ::ng-deep .tab-page-content{background:#FFF;min-height:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "directive", type: i4.BsInstanceOfDirective, selector: "[bsInstanceof]", inputs: ["bsInstanceof"] }, { kind: "directive", type: i4.BsInstanceofCaseDirective, selector: "[bsInstanceofCase]", inputs: ["bsInstanceofCase"] }, { kind: "directive", type: i4.BsInstanceOfDefaultDirective, selector: "[bsInstanceofDefault]" }, { kind: "component", type: i5.BsSplitterComponent, selector: "bs-splitter", inputs: ["orientation"] }, { kind: "component", type: i5.BsSplitPanelComponent, selector: "bs-split-panel" }, { kind: "component", type: i6.BsTabControlComponent, selector: "bs-tab-control", inputs: ["border", "restrictDragging", "selectFirstTab", "tabsPosition", "allowDragDrop"] }, { kind: "component", type: i6.BsTabPageComponent, selector: "bs-tab-page", inputs: ["disabled"] }, { kind: "directive", type: i6.BsTabPageHeaderDirective, selector: "[bsTabPageHeader]" }, { kind: "component", type: i7.BsResizableComponent, selector: "bs-resizable", inputs: ["positioning", "presetPosition"] }, { kind: "component", type: BsDockPaneRendererComponent, selector: "bs-dock-pane-renderer", inputs: ["layout"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
141
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDockPaneRendererComponent, deps: [{ token: i1.Overlay }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
142
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: BsDockPaneRendererComponent, selector: "bs-dock-pane-renderer", inputs: { layout: "layout" }, ngImport: i0, template: "<!-- <ng-content></ng-content> -->\n<ng-container [bsInstanceof]=\"layout$ | async\">\n <div *bsInstanceofCase=\"BsDocumentHostType; let documentHost\" data-hello>\n <bs-dock-pane-renderer [layout]=\"documentHost\"></bs-dock-pane-renderer>\n </div>\n <bs-tab-control *bsInstanceofCase=\"BsTabGroupType; let tabGroup\" [allowDragDrop]=\"false\" class=\"d-flex flex-column h-100 dock-tabs\">\n <bs-tab-page *ngFor=\"let tab of tabGroup.panes\">\n <ng-container *bsTabPageHeader>\n <ng-template [cdkPortalOutlet]=\"tab.dockPanel.headerPortal\"></ng-template>\n </ng-container>\n <bs-dock-pane-renderer [layout]=\"tab\"></bs-dock-pane-renderer>\n </bs-tab-page>\n </bs-tab-control>\n <bs-splitter *bsInstanceofCase=\"BsSplitterType; let splitter\" [orientation]=\"splitter.orientation\">\n <bs-split-panel *ngFor=\"let panel of splitter.panes\">\n <bs-dock-pane-renderer [layout]=\"panel\"></bs-dock-pane-renderer>\n </bs-split-panel>\n </bs-splitter>\n <ng-container *bsInstanceofCase=\"BsContentPaneType; let content\">\n <ng-template [cdkPortalOutlet]=\"content.dockPanel.contentPortal\"></ng-template>\n </ng-container>\n <ng-container *bsInstanceofCase=\"BsFloatingPaneType; let floating\">\n <bs-resizable *ngIf=\"floating.pane\" [positioning]=\"'absolute'\" [presetPosition]=\"{ left: floating.location?.x ?? 0, top: floating.location?.y ?? 0, width: floating.size?.width ?? 200, height: floating.size?.height ?? 100 }\">\n <bs-dock-pane-renderer [layout]=\"floating.pane\"></bs-dock-pane-renderer>\n </bs-resizable>\n </ng-container>\n <div *bsInstanceofDefault>\n No match\n </div>\n</ng-container>", styles: [".dock-tabs{background:#f3f3f3}:host ::ng-deep .tab-page-content{background:#fff;min-height:100%}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "directive", type: i4.BsInstanceOfDirective, selector: "[bsInstanceof]", inputs: ["bsInstanceof"] }, { kind: "directive", type: i4.BsInstanceofCaseDirective, selector: "[bsInstanceofCase]", inputs: ["bsInstanceofCase"] }, { kind: "directive", type: i4.BsInstanceOfDefaultDirective, selector: "[bsInstanceofDefault]" }, { kind: "component", type: i5.BsSplitterComponent, selector: "bs-splitter", inputs: ["orientation"] }, { kind: "component", type: i5.BsSplitPanelComponent, selector: "bs-split-panel" }, { kind: "component", type: i6.BsTabControlComponent, selector: "bs-tab-control", inputs: ["border", "restrictDragging", "selectFirstTab", "tabsPosition", "allowDragDrop"] }, { kind: "component", type: i6.BsTabPageComponent, selector: "bs-tab-page", inputs: ["disabled"] }, { kind: "directive", type: i6.BsTabPageHeaderDirective, selector: "[bsTabPageHeader]" }, { kind: "component", type: i7.BsResizableComponent, selector: "bs-resizable", inputs: ["positioning", "presetPosition"] }, { kind: "component", type: BsDockPaneRendererComponent, selector: "bs-dock-pane-renderer", inputs: ["layout"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
143
143
  }
144
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDockPaneRendererComponent, decorators: [{
144
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDockPaneRendererComponent, decorators: [{
145
145
  type: Component,
146
- args: [{ selector: 'bs-dock-pane-renderer', template: "<!-- <ng-content></ng-content> -->\n<ng-container [bsInstanceof]=\"layout$ | async\">\n <div *bsInstanceofCase=\"BsDocumentHostType; let documentHost\" data-hello>\n <bs-dock-pane-renderer [layout]=\"documentHost\"></bs-dock-pane-renderer>\n </div>\n <bs-tab-control *bsInstanceofCase=\"BsTabGroupType; let tabGroup\" [allowDragDrop]=\"false\" class=\"d-flex flex-column h-100 dock-tabs\">\n <bs-tab-page *ngFor=\"let tab of tabGroup.panes\">\n <ng-container *bsTabPageHeader>\n <ng-template [cdkPortalOutlet]=\"tab.dockPanel.headerPortal\"></ng-template>\n </ng-container>\n <bs-dock-pane-renderer [layout]=\"tab\"></bs-dock-pane-renderer>\n </bs-tab-page>\n </bs-tab-control>\n <bs-splitter *bsInstanceofCase=\"BsSplitterType; let splitter\" [orientation]=\"splitter.orientation\">\n <bs-split-panel *ngFor=\"let panel of splitter.panes\">\n <bs-dock-pane-renderer [layout]=\"panel\"></bs-dock-pane-renderer>\n </bs-split-panel>\n </bs-splitter>\n <ng-container *bsInstanceofCase=\"BsContentPaneType; let content\">\n <ng-template [cdkPortalOutlet]=\"content.dockPanel.contentPortal\"></ng-template>\n </ng-container>\n <ng-container *bsInstanceofCase=\"BsFloatingPaneType; let floating\">\n <bs-resizable *ngIf=\"floating.pane\" [positioning]=\"'absolute'\" [presetPosition]=\"{ left: floating.location?.x ?? 0, top: floating.location?.y ?? 0, width: floating.size?.width ?? 200, height: floating.size?.height ?? 100 }\">\n <bs-dock-pane-renderer [layout]=\"floating.pane\"></bs-dock-pane-renderer>\n </bs-resizable>\n </ng-container>\n <div *bsInstanceofDefault>\n No match\n </div>\n</ng-container>", styles: [".dock-tabs{background:#F3F3F3}:host ::ng-deep .tab-page-content{background:#FFF;min-height:100%}\n"] }]
146
+ args: [{ selector: 'bs-dock-pane-renderer', template: "<!-- <ng-content></ng-content> -->\n<ng-container [bsInstanceof]=\"layout$ | async\">\n <div *bsInstanceofCase=\"BsDocumentHostType; let documentHost\" data-hello>\n <bs-dock-pane-renderer [layout]=\"documentHost\"></bs-dock-pane-renderer>\n </div>\n <bs-tab-control *bsInstanceofCase=\"BsTabGroupType; let tabGroup\" [allowDragDrop]=\"false\" class=\"d-flex flex-column h-100 dock-tabs\">\n <bs-tab-page *ngFor=\"let tab of tabGroup.panes\">\n <ng-container *bsTabPageHeader>\n <ng-template [cdkPortalOutlet]=\"tab.dockPanel.headerPortal\"></ng-template>\n </ng-container>\n <bs-dock-pane-renderer [layout]=\"tab\"></bs-dock-pane-renderer>\n </bs-tab-page>\n </bs-tab-control>\n <bs-splitter *bsInstanceofCase=\"BsSplitterType; let splitter\" [orientation]=\"splitter.orientation\">\n <bs-split-panel *ngFor=\"let panel of splitter.panes\">\n <bs-dock-pane-renderer [layout]=\"panel\"></bs-dock-pane-renderer>\n </bs-split-panel>\n </bs-splitter>\n <ng-container *bsInstanceofCase=\"BsContentPaneType; let content\">\n <ng-template [cdkPortalOutlet]=\"content.dockPanel.contentPortal\"></ng-template>\n </ng-container>\n <ng-container *bsInstanceofCase=\"BsFloatingPaneType; let floating\">\n <bs-resizable *ngIf=\"floating.pane\" [positioning]=\"'absolute'\" [presetPosition]=\"{ left: floating.location?.x ?? 0, top: floating.location?.y ?? 0, width: floating.size?.width ?? 200, height: floating.size?.height ?? 100 }\">\n <bs-dock-pane-renderer [layout]=\"floating.pane\"></bs-dock-pane-renderer>\n </bs-resizable>\n </ng-container>\n <div *bsInstanceofDefault>\n No match\n </div>\n</ng-container>", styles: [".dock-tabs{background:#f3f3f3}:host ::ng-deep .tab-page-content{background:#fff;min-height:100%}\n"] }]
147
147
  }], ctorParameters: () => [{ type: i1.Overlay }, { type: i0.ElementRef }], propDecorators: { layout: [{
148
148
  type: Input
149
149
  }] } });
@@ -192,10 +192,10 @@ class BsDockComponent {
192
192
  ngOnDestroy() {
193
193
  this.floating$.value.forEach(panel => panel.disposeOverlay());
194
194
  }
195
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDockComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
196
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.3", type: BsDockComponent, selector: "bs-dock", inputs: { layout: "layout" }, host: { properties: { "class.position-absolute": "this.positionAbsolute", "style.top": "this.positionPx", "style.left": "this.positionPx", "style.bottom": "this.positionPx", "style.right": "this.positionPx" } }, queries: [{ propertyName: "panels", predicate: BsDockPanelComponent }], viewQueries: [{ propertyName: "floatingPanes", predicate: ["floating"], descendants: true }], ngImport: i0, template: "<ng-content></ng-content>\n<ng-container *ngIf=\"(layout$ | async) as layout\">\n <bs-dock-pane-renderer [layout]=\"layout.rootPane\"></bs-dock-pane-renderer>\n\n <ng-container *ngFor=\"let pane of layout.floatingPanes\">\n <bs-dock-pane-renderer #floating *ngIf=\"pane.pane\" [layout]=\"pane\"></bs-dock-pane-renderer>\n </ng-container>\n</ng-container>\n<!-- <bs-splitter>\n <ng-content></ng-content>\n <ng-container *ngFor=\"let panel of (panels$ | async)\">\n <bs-split-panel>\n <ng-template [cdkPortalOutlet]=\"panel.portal\"></ng-template>\n </bs-split-panel>\n </ng-container>\n</bs-splitter> -->\n", styles: [":host ::ng-deep .tab-content{max-height:calc(100% - 41px);overflow:auto}:host ::ng-deep bs-dock-pane-renderer{min-width:100%;min-height:100%}:host ::ng-deep>bs-dock-panel>*{display:none}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: BsDockPaneRendererComponent, selector: "bs-dock-pane-renderer", inputs: ["layout"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
195
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDockComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
196
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: BsDockComponent, selector: "bs-dock", inputs: { layout: "layout" }, host: { properties: { "class.position-absolute": "this.positionAbsolute", "style.top": "this.positionPx", "style.left": "this.positionPx", "style.bottom": "this.positionPx", "style.right": "this.positionPx" } }, queries: [{ propertyName: "panels", predicate: BsDockPanelComponent }], viewQueries: [{ propertyName: "floatingPanes", predicate: ["floating"], descendants: true }], ngImport: i0, template: "<ng-content></ng-content>\n<ng-container *ngIf=\"(layout$ | async) as layout\">\n <bs-dock-pane-renderer [layout]=\"layout.rootPane\"></bs-dock-pane-renderer>\n\n <ng-container *ngFor=\"let pane of layout.floatingPanes\">\n <bs-dock-pane-renderer #floating *ngIf=\"pane.pane\" [layout]=\"pane\"></bs-dock-pane-renderer>\n </ng-container>\n</ng-container>\n<!-- <bs-splitter>\n <ng-content></ng-content>\n <ng-container *ngFor=\"let panel of (panels$ | async)\">\n <bs-split-panel>\n <ng-template [cdkPortalOutlet]=\"panel.portal\"></ng-template>\n </bs-split-panel>\n </ng-container>\n</bs-splitter> -->\n", styles: [":host ::ng-deep .tab-content{max-height:calc(100% - 41px);overflow:auto}:host ::ng-deep bs-dock-pane-renderer{min-width:100%;min-height:100%}:host ::ng-deep>bs-dock-panel>*{display:none}\n"], dependencies: [{ kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: BsDockPaneRendererComponent, selector: "bs-dock-pane-renderer", inputs: ["layout"] }, { kind: "pipe", type: i2.AsyncPipe, name: "async" }] }); }
197
197
  }
198
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDockComponent, decorators: [{
198
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDockComponent, decorators: [{
199
199
  type: Component,
200
200
  args: [{ selector: 'bs-dock', template: "<ng-content></ng-content>\n<ng-container *ngIf=\"(layout$ | async) as layout\">\n <bs-dock-pane-renderer [layout]=\"layout.rootPane\"></bs-dock-pane-renderer>\n\n <ng-container *ngFor=\"let pane of layout.floatingPanes\">\n <bs-dock-pane-renderer #floating *ngIf=\"pane.pane\" [layout]=\"pane\"></bs-dock-pane-renderer>\n </ng-container>\n</ng-container>\n<!-- <bs-splitter>\n <ng-content></ng-content>\n <ng-container *ngFor=\"let panel of (panels$ | async)\">\n <bs-split-panel>\n <ng-template [cdkPortalOutlet]=\"panel.portal\"></ng-template>\n </bs-split-panel>\n </ng-container>\n</bs-splitter> -->\n", styles: [":host ::ng-deep .tab-content{max-height:calc(100% - 41px);overflow:auto}:host ::ng-deep bs-dock-pane-renderer{min-width:100%;min-height:100%}:host ::ng-deep>bs-dock-panel>*{display:none}\n"] }]
201
201
  }], ctorParameters: () => [], propDecorators: { panels: [{
@@ -262,10 +262,10 @@ class BsDockService {
262
262
  return [];
263
263
  }
264
264
  }
265
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDockService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
266
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDockService, providedIn: 'root' }); }
265
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDockService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
266
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDockService, providedIn: 'root' }); }
267
267
  }
268
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDockService, decorators: [{
268
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDockService, decorators: [{
269
269
  type: Injectable,
270
270
  args: [{
271
271
  providedIn: 'root'
@@ -515,10 +515,10 @@ class BsDockPanelHeaderComponent {
515
515
  this.isDragging = false;
516
516
  this.dragOperation = undefined;
517
517
  }
518
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDockPanelHeaderComponent, deps: [{ token: BsDockPanelComponent }, { token: BsDockComponent }, { token: BsDockService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
519
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.3", type: BsDockPanelHeaderComponent, selector: "bs-dock-panel-header", host: { listeners: { "mousedown": "onMouseDown($event)", "document:mousemove": "onMouseMove($event)", "document:mouseup": "onMouseUp($event)" }, properties: { "class.d-block": "this.dBlock" } }, ngImport: i0, template: "<ng-content></ng-content>", styles: [":host{padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);margin:calc(-1 * var(--bs-nav-link-padding-y)) calc(-1 * var(--bs-nav-link-padding-x))}\n"] }); }
518
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDockPanelHeaderComponent, deps: [{ token: BsDockPanelComponent }, { token: BsDockComponent }, { token: BsDockService }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
519
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: BsDockPanelHeaderComponent, selector: "bs-dock-panel-header", host: { listeners: { "mousedown": "onMouseDown($event)", "document:mousemove": "onMouseMove($event)", "document:mouseup": "onMouseUp($event)" }, properties: { "class.d-block": "this.dBlock" } }, ngImport: i0, template: "<ng-content></ng-content>", styles: [":host{padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);margin:calc(-1 * var(--bs-nav-link-padding-y)) calc(-1 * var(--bs-nav-link-padding-x))}\n"] }); }
520
520
  }
521
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDockPanelHeaderComponent, decorators: [{
521
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDockPanelHeaderComponent, decorators: [{
522
522
  type: Component,
523
523
  args: [{ selector: 'bs-dock-panel-header', template: "<ng-content></ng-content>", styles: [":host{padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);margin:calc(-1 * var(--bs-nav-link-padding-y)) calc(-1 * var(--bs-nav-link-padding-x))}\n"] }]
524
524
  }], ctorParameters: () => [{ type: BsDockPanelComponent }, { type: BsDockComponent }, { type: BsDockService }, { type: i0.ElementRef }], propDecorators: { onMouseDown: [{
@@ -536,8 +536,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImpor
536
536
  }] } });
537
537
 
538
538
  class BsDockModule {
539
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDockModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
540
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.3", ngImport: i0, type: BsDockModule, declarations: [BsDockComponent,
539
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDockModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
540
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.1", ngImport: i0, type: BsDockModule, declarations: [BsDockComponent,
541
541
  BsDockPanelComponent,
542
542
  BsDockPanelHeaderComponent,
543
543
  BsDockPaneRendererComponent], imports: [CommonModule,
@@ -550,7 +550,7 @@ class BsDockModule {
550
550
  BsDockPanelComponent,
551
551
  BsDockPanelHeaderComponent,
552
552
  BsDockPaneRendererComponent] }); }
553
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDockModule, imports: [CommonModule,
553
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDockModule, imports: [CommonModule,
554
554
  PortalModule,
555
555
  BsCardModule,
556
556
  BsInstanceOfModule,
@@ -558,7 +558,7 @@ class BsDockModule {
558
558
  BsTabControlModule,
559
559
  BsResizableModule] }); }
560
560
  }
561
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDockModule, decorators: [{
561
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDockModule, decorators: [{
562
562
  type: NgModule,
563
563
  args: [{
564
564
  declarations: [
@@ -1 +1 @@
1
- {"version":3,"file":"mintplayer-ng-bootstrap-dock.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-panel/dock-panel.component.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-panel/dock-panel.component.html","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/dock-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/tab-group-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/document-host-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/content-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/floating-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/split-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/enums/pane-type.enum.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-pane-renderer/dock-pane-renderer.component.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-pane-renderer/dock-pane-renderer.component.html","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock/dock.component.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock/dock.component.html","../../../../libs/mintplayer-ng-bootstrap/dock/src/services/dock/dock.service.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-panel-header/dock-panel-header.component.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-panel-header/dock-panel-header.component.html","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock.module.ts","../../../../libs/mintplayer-ng-bootstrap/dock/mintplayer-ng-bootstrap-dock.ts"],"sourcesContent":["import { DomPortal } from '@angular/cdk/portal';\nimport { Component, ElementRef, Input, AfterViewInit, ViewChild, Inject, Optional, forwardRef } from '@angular/core';\nimport { BsTabControlComponent } from '@mintplayer/ng-bootstrap/tab-control';\n\n@Component({\n selector: 'bs-dock-panel',\n templateUrl: './dock-panel.component.html',\n styleUrls: ['./dock-panel.component.scss']\n})\nexport class BsDockPanelComponent implements AfterViewInit {\n\n @ViewChild('headerElement') headerElement!: ElementRef<HTMLDivElement>;\n @ViewChild('contentElement') contentElement!: ElementRef<HTMLDivElement>;\n headerPortal?: DomPortal;\n contentPortal?: DomPortal;\n @Input() panelId = '';\n\n ngAfterViewInit() {\n this.headerPortal = new DomPortal(this.headerElement.nativeElement);\n this.contentPortal = new DomPortal(this.contentElement.nativeElement);\n }\n}\n","<!-- <bs-split-panel> -->\n<div #headerElement class=\"dock-header\">\n <ng-content select=\"bs-dock-panel-header\"></ng-content>\n</div>\n<div #contentElement>\n <ng-content></ng-content>\n</div>\n<!-- </bs-split-panel> -->","export abstract class BsDockPane {\n abstract get isEmpty(): boolean;\n}","import { BsContentPane } from \"./content-pane\";\nimport { BsDockPane } from \"./dock-pane\";\n\nexport class BsTabGroupPane extends BsDockPane {\n constructor(data?: Partial<BsTabGroupPane>) {\n super();\n Object.assign(this, data);\n }\n\n panes: BsContentPane[] = [];\n \n override get isEmpty() {\n return this.panes.length === 0;\n }\n}","import { BsDockPane } from \"./dock-pane\";\nimport { BsTabGroupPane } from \"./tab-group-pane\";\n\nexport class BsDocumentHost extends BsDockPane {\n constructor(data?: Partial<BsDocumentHost>) {\n super();\n Object.assign(this, data);\n }\n\n rootPane?: BsTabGroupPane\n\n override get isEmpty() {\n return this.rootPane?.isEmpty ?? true;\n }\n}","import { BsDockPanelComponent } from \"../dock-panel/dock-panel.component\";\nimport { BsDockPane } from \"./dock-pane\";\n\nexport class BsContentPane extends BsDockPane {\n constructor(data?: Partial<BsContentPane>) {\n super();\n Object.assign(this, data);\n }\n\n dockPanel!: BsDockPanelComponent;\n isPinned?: boolean;\n\n override get isEmpty() {\n return false;\n }\n}","import { BsDockPane } from \"./dock-pane\";\nimport { Point } from \"../interfaces/point\";\nimport { Size } from \"../interfaces/size\";\n\nexport class BsFloatingPane extends BsDockPane {\n constructor(data?: Partial<BsFloatingPane>) {\n super();\n Object.assign(this, data);\n }\n \n pane?: BsDockPane;\n size?: Size;\n location?: Point;\n\n override get isEmpty() {\n return this.pane?.isEmpty ?? true;\n }\n}","import { SplitPaneOrientation } from \"../types/split-pane-orientation.type\";\nimport { BsDockPane } from \"./dock-pane\";\n\nexport class BsSplitPane extends BsDockPane {\n constructor(data?: Partial<BsSplitPane>) {\n super();\n Object.assign(this, data);\n }\n\n orientation: SplitPaneOrientation = 'horizontal';\n panes: BsDockPane[] = [];\n\n override get isEmpty() {\n return this.panes.length === 0;\n }\n}","export enum EPaneType {\n documentHost = 1,\n splitPane = 2,\n contentPane = 3,\n tabGroupPane = 4,\n}","import { Component, ElementRef, HostBinding, Input } from '@angular/core';\nimport { DomPortal } from '@angular/cdk/portal';\nimport { BehaviorSubject, Observable, map } from 'rxjs';\nimport { BsDockPane } from '../panes/dock-pane';\nimport { EPaneType } from '../enums/pane-type.enum';\nimport { BsSplitPane } from '../panes/split-pane';\nimport { BsContentPane } from '../panes/content-pane';\nimport { BsDocumentHost } from '../panes/document-host-pane';\nimport { BsTabGroupPane } from '../panes/tab-group-pane';\nimport { BsFloatingPane } from '../panes/floating-pane';\nimport { Overlay, OverlayRef } from '@angular/cdk/overlay';\n\n@Component({\n selector: 'bs-dock-pane-renderer',\n templateUrl: './dock-pane-renderer.component.html',\n styleUrls: ['./dock-pane-renderer.component.scss']\n})\nexport class BsDockPaneRendererComponent {\n\n constructor(private overlay: Overlay, element: ElementRef) {\n this.portal = new DomPortal(element);\n }\n\n portal: DomPortal;\n\n paneTypes = EPaneType;\n readonly BsDocumentHostType = BsDocumentHost;\n readonly BsTabGroupType = BsTabGroupPane;\n readonly BsSplitterType = BsSplitPane;\n readonly BsContentPaneType = BsContentPane;\n readonly BsFloatingPaneType = BsFloatingPane;\n\n //#region Layout\n layout$ = new BehaviorSubject<BsDockPane | null>(null);\n public get layout() {\n return this.layout$.value;\n }\n @Input() public set layout(value: BsDockPane | null) {\n this.layout$.next(value);\n }\n //#endregion\n\n private overlayRef?: OverlayRef;\n public moveToOverlay() {\n if (!this.overlayRef && !this.portal.isAttached) {\n this.overlayRef = this.overlay.create({});\n this.portal.attach(this.overlayRef);\n }\n }\n\n public disposeOverlay() {\n if (this.overlayRef) {\n this.portal.detach();\n this.overlayRef.dispose();\n this.overlayRef = undefined;\n }\n }\n}\n","<!-- <ng-content></ng-content> -->\n<ng-container [bsInstanceof]=\"layout$ | async\">\n <div *bsInstanceofCase=\"BsDocumentHostType; let documentHost\" data-hello>\n <bs-dock-pane-renderer [layout]=\"documentHost\"></bs-dock-pane-renderer>\n </div>\n <bs-tab-control *bsInstanceofCase=\"BsTabGroupType; let tabGroup\" [allowDragDrop]=\"false\" class=\"d-flex flex-column h-100 dock-tabs\">\n <bs-tab-page *ngFor=\"let tab of tabGroup.panes\">\n <ng-container *bsTabPageHeader>\n <ng-template [cdkPortalOutlet]=\"tab.dockPanel.headerPortal\"></ng-template>\n </ng-container>\n <bs-dock-pane-renderer [layout]=\"tab\"></bs-dock-pane-renderer>\n </bs-tab-page>\n </bs-tab-control>\n <bs-splitter *bsInstanceofCase=\"BsSplitterType; let splitter\" [orientation]=\"splitter.orientation\">\n <bs-split-panel *ngFor=\"let panel of splitter.panes\">\n <bs-dock-pane-renderer [layout]=\"panel\"></bs-dock-pane-renderer>\n </bs-split-panel>\n </bs-splitter>\n <ng-container *bsInstanceofCase=\"BsContentPaneType; let content\">\n <ng-template [cdkPortalOutlet]=\"content.dockPanel.contentPortal\"></ng-template>\n </ng-container>\n <ng-container *bsInstanceofCase=\"BsFloatingPaneType; let floating\">\n <bs-resizable *ngIf=\"floating.pane\" [positioning]=\"'absolute'\" [presetPosition]=\"{ left: floating.location?.x ?? 0, top: floating.location?.y ?? 0, width: floating.size?.width ?? 200, height: floating.size?.height ?? 100 }\">\n <bs-dock-pane-renderer [layout]=\"floating.pane\"></bs-dock-pane-renderer>\n </bs-resizable>\n </ng-container>\n <div *bsInstanceofDefault>\n No match\n </div>\n</ng-container>","import { Component, ContentChildren, ViewChildren, Input, OnDestroy, QueryList, HostBinding } from '@angular/core';\nimport { BehaviorSubject, map, Observable } from 'rxjs';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Parentified, deepClone } from '@mintplayer/parentify';\nimport { BsDockPanelComponent } from '../dock-panel/dock-panel.component';\nimport { BsDockLayout } from '../interfaces/dock-layout';\nimport { BsTabGroupPane } from '../panes/tab-group-pane';\nimport { BsDocumentHost } from '../panes/document-host-pane';\nimport { BsContentPane } from '../panes/content-pane';\nimport { BsFloatingPane } from '../panes/floating-pane';\nimport { BsSplitPane } from '../panes/split-pane';\nimport { BsDockPaneRendererComponent } from '../dock-pane-renderer/dock-pane-renderer.component';\n\n@Component({\n selector: 'bs-dock',\n templateUrl: './dock.component.html',\n styleUrls: ['./dock.component.scss']\n})\nexport class BsDockComponent implements OnDestroy {\n constructor() {\n const tabs = new BsTabGroupPane();\n const docHost = new BsDocumentHost();\n docHost.rootPane = tabs;\n\n this.layout$ = new BehaviorSubject<BsDockLayout>({\n rootPane: docHost,\n floatingPanes: []\n });\n\n this.floating$.pipe(takeUntilDestroyed())\n .subscribe((floating) => {\n floating.forEach((panel) => panel.moveToOverlay());\n });\n \n this.parentifiedLayout$ = this.layout$.pipe(map(layout => {\n const clone = deepClone(\n layout, true,\n // []\n [BsContentPane, BsDocumentHost, BsFloatingPane, BsSplitPane, BsTabGroupPane],\n true,\n this.paneCache);\n\n // this.paneCache = clone.cache;\n\n console.log('parentify', { layout, result: clone.result });\n\n return clone.result;\n }));\n\n this.parentifiedLayout$.pipe(takeUntilDestroyed()).subscribe(console.log);\n }\n\n private paneCache?: Map<any, any>;\n\n //#region Panels\n panels$ = new BehaviorSubject<BsDockPanelComponent[]>([]);\n @ContentChildren(BsDockPanelComponent) set panels(value: QueryList<BsDockPanelComponent>) {\n this.panels$.next(value.toArray());\n }\n //#endregion\n //#region Layout\n layout$: BehaviorSubject<BsDockLayout>;\n public get layout() {\n return this.layout$.value;\n }\n @Input() public set layout(value: BsDockLayout) {\n this.layout$.next(value);\n }\n //#endregion\n\n floating$ = new BehaviorSubject<BsDockPaneRendererComponent[]>([]);\n @ViewChildren('floating') set floatingPanes(value: QueryList<BsDockPaneRendererComponent>) {\n this.floating$.next(value.toArray());\n }\n\n @HostBinding('class.position-absolute')\n positionAbsolute = true;\n\n @HostBinding('style.top')\n @HostBinding('style.left')\n @HostBinding('style.bottom')\n @HostBinding('style.right')\n positionPx = 0;\n\n parentifiedLayout$: Observable<Parentified<BsDockLayout>>;\n\n ngOnDestroy() {\n this.floating$.value.forEach(panel => panel.disposeOverlay());\n }\n}\n","<ng-content></ng-content>\n<ng-container *ngIf=\"(layout$ | async) as layout\">\n <bs-dock-pane-renderer [layout]=\"layout.rootPane\"></bs-dock-pane-renderer>\n\n <ng-container *ngFor=\"let pane of layout.floatingPanes\">\n <bs-dock-pane-renderer #floating *ngIf=\"pane.pane\" [layout]=\"pane\"></bs-dock-pane-renderer>\n </ng-container>\n</ng-container>\n<!-- <bs-splitter>\n <ng-content></ng-content>\n <ng-container *ngFor=\"let panel of (panels$ | async)\">\n <bs-split-panel>\n <ng-template [cdkPortalOutlet]=\"panel.portal\"></ng-template>\n </bs-split-panel>\n </ng-container>\n</bs-splitter> -->\n","import { Injectable } from '@angular/core';\nimport { BsDockPane } from '../../panes/dock-pane';\nimport { BsSplitPane } from '../../panes/split-pane';\nimport { BsContentPane } from '../../panes/content-pane';\nimport { BsTabGroupPane } from '../../panes/tab-group-pane';\nimport { BsFloatingPane } from '../../panes/floating-pane';\nimport { BsDocumentHost } from '../../panes/document-host-pane';\nimport { BsDockLayout } from '../../interfaces/dock-layout';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BsDockService {\n public buildTraces(layout: BsDockLayout) {\n const result = [layout.rootPane, ...layout.floatingPanes].map(pane => this.buildTracesPrivate([pane]));\n // const result = this.buildTracesPrivate([layout.rootPane]);\n return result.flatMap(traceGroup => traceGroup);\n }\n\n private buildTracesPrivate(currentSequence: BsDockPane[]): PaneTraceResult[] {\n const children = this.getChildPanes(currentSequence[currentSequence.length - 1]);\n if (children.length === 0) {\n return [{\n finished: true,\n trace: currentSequence\n }];\n } else {\n const result = children.map(child => this.buildTracesPrivate([...currentSequence, child]));\n return result.flatMap(r => r);\n }\n }\n\n private getChildPanes(pane: BsDockPane): BsDockPane[] {\n if (pane instanceof BsContentPane) {\n return [];\n } else if (pane instanceof BsTabGroupPane) {\n return (<BsDockPane[]>pane.panes);\n } else if (pane instanceof BsSplitPane) {\n return pane.panes;\n } else if (pane instanceof BsFloatingPane) {\n return pane.pane ? [pane.pane] : [];\n } else if (pane instanceof BsDocumentHost) {\n return pane.rootPane ? [pane.rootPane] : [];\n } else {\n return [];\n }\n }\n}\n\nexport interface PaneTraceResult {\n trace: BsDockPane[];\n finished: boolean;\n}","import { Component, ElementRef, HostBinding, HostListener, Inject, Optional, forwardRef } from '@angular/core';\nimport { take } from 'rxjs';\nimport { BsTabControlComponent } from '@mintplayer/ng-bootstrap/tab-control';\nimport { Parentified } from '@mintplayer/parentify';\nimport { BsDockPanelComponent } from '../dock-panel/dock-panel.component';\nimport { BsDockComponent } from '../dock/dock.component';\nimport { BsDockPane } from '../panes/dock-pane';\nimport { BsSplitPane } from '../panes/split-pane';\nimport { BsContentPane } from '../panes/content-pane';\nimport { BsFloatingPane } from '../panes/floating-pane';\nimport { BsTabGroupPane } from '../panes/tab-group-pane';\nimport { BsDocumentHost } from '../panes/document-host-pane';\nimport { RemoveFromPaneResult } from '../interfaces/remove-from-pane-result';\nimport { DragOperation } from '../interfaces/drag-operation';\nimport { BsDockService } from '../services/dock/dock.service';\n\n@Component({\n selector: 'bs-dock-panel-header',\n templateUrl: './dock-panel-header.component.html',\n styleUrls: ['./dock-panel-header.component.scss']\n})\nexport class BsDockPanelHeaderComponent {\n constructor(private dockPanel: BsDockPanelComponent, private dock: BsDockComponent, private dockService: BsDockService, private element: ElementRef<HTMLElement>) {}\n\n isMouseDown = false;\n dragOperation?: DragOperation;\n isDragging = false;\n @HostListener('mousedown', ['$event']) onMouseDown(ev: MouseEvent) {\n ev.preventDefault();\n this.isMouseDown = true;\n }\n\n @HostListener('document:mousemove', ['$event']) onMouseMove(ev: MouseEvent) {\n if (this.isMouseDown) {\n if (!this.isDragging) {\n this.isDragging = true;\n \n this.dock.parentifiedLayout$.pipe(take(1)).subscribe((parentifiedLayout) => {\n // this.dock.layout$.pipe(take(1)).subscribe((layout) => {\n const traces = this.dockService.buildTraces(parentifiedLayout);\n console.log('traces', {parentifiedLayout, traces});\n const matching = traces.filter(t => {\n const lastPane = t.trace[t.trace.length - 1];\n // return (lastPane instanceof BsContentPane) && (lastPane.dockPanel === this.dockPanel);\n return (lastPane instanceof BsContentPane) && (lastPane.dockPanel === this.dockPanel);\n });\n console.log('matching', matching);\n if (matching.length !== 1) {\n return;\n }\n\n // const tabs = matching[0].trace.filter(pane => pane instanceof BsTabGroupPane);\n // const lastTabGroup = tabs[tabs.length - 1];\n // // console.log('last tabgroup', lastTabGroup);\n\n let tabControlEl = this.element.nativeElement;\n do {\n if (tabControlEl.parentElement) {\n tabControlEl = tabControlEl!.parentElement;\n } else {\n throw 'No more parents';\n }\n } while (tabControlEl.tagName.toUpperCase() !== 'BS-TAB-CONTROL');\n\n const coords = {\n width: tabControlEl.clientWidth,\n height: tabControlEl.clientHeight,\n left: ev.clientX - ev.offsetX,\n top: ev.clientY - ev.offsetY,\n };\n\n // this.dockPanel.headerPortal?.isAttached && this.dockPanel.headerPortal?.detach();\n // this.dockPanel.contentPortal?.isAttached && this.dockPanel.contentPortal?.detach();\n this.removeFromPane(parentifiedLayout.$original.rootPane, this.dockPanel);\n\n const trace = [...matching[0].trace];\n\n this.dockPanel.headerPortal?.isAttached && this.dockPanel.headerPortal?.detach();\n this.dockPanel.contentPortal?.isAttached && this.dockPanel.contentPortal?.detach();\n \n \n for (let index = trace.length - 1; index >= 0; index--) {\n if (index > 0) {\n this.removeFromPaneBis(trace[index - 1], trace[index]);\n if (!trace[index - 1].isEmpty) break;\n } else {\n const floatingIndex = parentifiedLayout.floatingPanes.indexOf(trace[0]);\n if (trace[0].isEmpty && (floatingIndex > -1)) {\n parentifiedLayout.$original.floatingPanes.splice(floatingIndex, 1);\n }\n }\n }\n\n\n\n // this.removeFromPane((<any>matching[0].trace[0])['$original'], this.dockPanel);\n\n const floatingPane = new BsFloatingPane({\n pane: new BsTabGroupPane({\n panes: [\n new BsContentPane({\n dockPanel: this.dockPanel\n })\n ]\n }),\n size: {\n width: coords.width,\n height: coords.height,\n },\n location: {\n x: coords.left,\n y: coords.top,\n }\n });\n this.dragOperation = {\n offsetX: ev.offsetX,\n offsetY: ev.offsetY,\n floatingPane\n };\n parentifiedLayout.$original.floatingPanes.push(floatingPane);\n // debugger;\n setTimeout(() => this.dock.layout$.next(parentifiedLayout.$original), 5);\n // console.log('traces', { traces, matching, dockPanel: this.dockPanel, equals: traces[2].trace[3] });\n\n // let element: HTMLElement | null = this.element.nativeElement;\n // let tree: HTMLElement[] = [];\n // do {\n // tree.push(element!);\n // element = element!.parentElement;\n // } while (element);\n\n // const tabControls = tree.filter(el => el.tagName.toUpperCase() === 'BS-TAB-CONTROL');\n // if (tabControls.length > 0) {\n // const coords = {\n // width: tabControls[0].clientWidth,\n // height: tabControls[0].clientHeight,\n // left: ev.clientX - ev.offsetX,\n // top: ev.clientY - ev.offsetY,\n // };\n\n // this.dockPanel.headerPortal?.isAttached && this.dockPanel.headerPortal?.detach();\n // this.dockPanel.contentPortal?.isAttached && this.dockPanel.contentPortal?.detach();\n // this.removeFromPane(layout.rootPane, this.dockPanel);\n\n // const floatingPane = new BsFloatingPane({\n // pane: new BsTabGroupPane({\n // panes: [\n // new BsContentPane({\n // dockPanel: this.dockPanel\n // })\n // ]\n // }),\n // size: {\n // width: coords.width,\n // height: coords.height,\n // },\n // location: {\n // x: coords.left,\n // y: coords.top,\n // }\n // });\n \n // this.dragOperation = {\n // offsetX: ev.offsetX,\n // offsetY: ev.offsetY,\n // floatingPane\n // };\n\n // layout.floatingPanes.push(floatingPane);\n // this.dock.layout$.next(layout);\n // }\n });\n } else {\n if (this.dragOperation) {\n if (this.dragOperation.floatingPane.location) {\n this.dragOperation.floatingPane.location.x = ev.clientX - this.dragOperation.offsetX;\n this.dragOperation.floatingPane.location.y = ev.clientY - this.dragOperation.offsetY;\n }\n // } else {\n // const traces = this.dockService.buildTraces(this.dock.layout);\n // const matchingTrace = traces.filter(trace => {\n // const pane = trace.trace[trace.trace.length - 1];\n // return (pane instanceof BsContentPane) && (pane.dockPanel === this.dockPanel);\n // });\n\n // console.log('matching', { traces, matchingTrace });\n // // this.dragOperation = {\n \n // // }\n }\n }\n }\n }\n\n removeFromPaneBis(host: BsDockPane, pane: BsDockPane) {\n if (host instanceof BsContentPane) {\n } else if (host instanceof BsDocumentHost) {\n // Actually documentHost should never be removed\n } else if (host instanceof BsTabGroupPane) {\n if (pane instanceof BsContentPane) {\n const index = host.panes.indexOf(pane);\n host.panes.splice(index, 1);\n }\n } else if (host instanceof BsSplitPane) {\n const index = host.panes.indexOf(pane);\n host.panes.splice(index, 1);\n } else if (host instanceof BsFloatingPane) {\n } else {\n throw 'Unknown pane type';\n }\n }\n\n removeFromPane(host: BsDockPane, panel: BsDockPanelComponent /*, parents: BsDockPane[] */): RemoveFromPaneResult {\n if (host instanceof BsContentPane) {\n return { paneRemoved: false, hostIsEmpty: false };\n } else if (host instanceof BsDocumentHost) {\n // Actually documentHost should never be removed\n\n if (!host.rootPane) {\n return { paneRemoved: false, hostIsEmpty: true };\n }\n\n const result = this.removeFromPane(host.rootPane, panel);\n return { paneRemoved: result.paneRemoved, hostIsEmpty: result.hostIsEmpty };\n\n } else if (host instanceof BsTabGroupPane) {\n\n\n\n const matching = host.panes.filter(p => p.dockPanel === panel);\n if (matching.length > 0) {\n host.panes.splice(host.panes.findIndex(p => p.dockPanel === panel), 1);\n return { paneRemoved: true, hostIsEmpty: host.panes.length === 0 };\n } else {\n // ATM. all panes are ContentPanes anyway.\n // So unless you'd want to have splitters inside the tabs,\n // This code will not be hit.\n\n // const result = host.panes\n // .map(parentPane => this.removeFromPane(parentPane, panel))\n // .filter(r => r.paneRemoved);\n //\n // if (result.length > 0) {\n // return { paneRemoved: true, hostIsEmpty: }\n // }\n return { paneRemoved: false, hostIsEmpty: host.panes.length === 0 };\n }\n\n\n\n\n } else if (host instanceof BsSplitPane) {\n const matching = host.panes\n .filter(p => p instanceof BsContentPane)\n .map(p => <BsContentPane>p)\n .filter(p => p.dockPanel === panel);\n \n if (matching.length > 0) {\n host.panes.splice(host.panes.findIndex(p => (p instanceof BsContentPane) && matching.includes(p)), 1);\n\n // TODO: Remove splitter if only 1 pane left?\n return { paneRemoved: true, hostIsEmpty: host.panes.length === 0 };\n } else {\n\n\n for (let splitPane of host.panes) {\n const result = this.removeFromPane(splitPane, panel);\n if (result.paneRemoved && result.hostIsEmpty) {\n // splitPane is empty now, so we can remove it from this splitter\n host.panes.splice(host.panes.indexOf(splitPane), 1);\n return { paneRemoved: true, hostIsEmpty: host.panes.length === 0 };\n }\n }\n }\n\n return { paneRemoved: false, hostIsEmpty: host.panes.length === 0 };\n } else {\n throw 'unknown host type';\n }\n }\n\n @HostListener('document:mouseup', ['$event']) onMouseUp(ev: Event) {\n this.isMouseDown = false;\n this.isDragging = false;\n this.dragOperation = undefined;\n }\n\n @HostBinding('class.d-block') dBlock = true;\n}\n","<ng-content></ng-content>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { BsCardModule } from '@mintplayer/ng-bootstrap/card';\nimport { BsSplitterModule } from '@mintplayer/ng-bootstrap/splitter';\nimport { BsResizableModule } from '@mintplayer/ng-bootstrap/resizable';\nimport { BsTabControlModule } from '@mintplayer/ng-bootstrap/tab-control';\nimport { BsInstanceOfModule } from '@mintplayer/ng-bootstrap/instance-of';\nimport { BsDockComponent } from './dock/dock.component';\nimport { BsDockPanelComponent } from './dock-panel/dock-panel.component';\nimport { BsDockPanelHeaderComponent } from './dock-panel-header/dock-panel-header.component';\nimport { BsDockPaneRendererComponent } from './dock-pane-renderer/dock-pane-renderer.component';\n\n@NgModule({\n declarations: [\n BsDockComponent,\n BsDockPanelComponent,\n BsDockPanelHeaderComponent,\n BsDockPaneRendererComponent\n ],\n imports: [\n CommonModule,\n PortalModule,\n BsCardModule,\n BsInstanceOfModule,\n BsSplitterModule,\n BsTabControlModule,\n BsResizableModule\n ],\n exports: [\n BsDockComponent,\n BsDockPanelComponent,\n BsDockPanelHeaderComponent,\n BsDockPaneRendererComponent\n ]\n})\nexport class BsDockModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.BsDockPaneRendererComponent","i1.BsDockPanelComponent","i2.BsDockComponent","i3.BsDockService"],"mappings":"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"}
1
+ {"version":3,"file":"mintplayer-ng-bootstrap-dock.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-panel/dock-panel.component.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-panel/dock-panel.component.html","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/dock-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/tab-group-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/document-host-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/content-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/floating-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/panes/split-pane.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/enums/pane-type.enum.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-pane-renderer/dock-pane-renderer.component.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-pane-renderer/dock-pane-renderer.component.html","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock/dock.component.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock/dock.component.html","../../../../libs/mintplayer-ng-bootstrap/dock/src/services/dock/dock.service.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-panel-header/dock-panel-header.component.ts","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock-panel-header/dock-panel-header.component.html","../../../../libs/mintplayer-ng-bootstrap/dock/src/dock.module.ts","../../../../libs/mintplayer-ng-bootstrap/dock/mintplayer-ng-bootstrap-dock.ts"],"sourcesContent":["import { DomPortal } from '@angular/cdk/portal';\nimport { Component, ElementRef, Input, AfterViewInit, ViewChild, Inject, Optional, forwardRef } from '@angular/core';\nimport { BsTabControlComponent } from '@mintplayer/ng-bootstrap/tab-control';\n\n@Component({\n selector: 'bs-dock-panel',\n templateUrl: './dock-panel.component.html',\n styleUrls: ['./dock-panel.component.scss']\n})\nexport class BsDockPanelComponent implements AfterViewInit {\n\n @ViewChild('headerElement') headerElement!: ElementRef<HTMLDivElement>;\n @ViewChild('contentElement') contentElement!: ElementRef<HTMLDivElement>;\n headerPortal?: DomPortal;\n contentPortal?: DomPortal;\n @Input() panelId = '';\n\n ngAfterViewInit() {\n this.headerPortal = new DomPortal(this.headerElement.nativeElement);\n this.contentPortal = new DomPortal(this.contentElement.nativeElement);\n }\n}\n","<!-- <bs-split-panel> -->\n<div #headerElement class=\"dock-header\">\n <ng-content select=\"bs-dock-panel-header\"></ng-content>\n</div>\n<div #contentElement>\n <ng-content></ng-content>\n</div>\n<!-- </bs-split-panel> -->","export abstract class BsDockPane {\n abstract get isEmpty(): boolean;\n}","import { BsContentPane } from \"./content-pane\";\nimport { BsDockPane } from \"./dock-pane\";\n\nexport class BsTabGroupPane extends BsDockPane {\n constructor(data?: Partial<BsTabGroupPane>) {\n super();\n Object.assign(this, data);\n }\n\n panes: BsContentPane[] = [];\n \n override get isEmpty() {\n return this.panes.length === 0;\n }\n}","import { BsDockPane } from \"./dock-pane\";\nimport { BsTabGroupPane } from \"./tab-group-pane\";\n\nexport class BsDocumentHost extends BsDockPane {\n constructor(data?: Partial<BsDocumentHost>) {\n super();\n Object.assign(this, data);\n }\n\n rootPane?: BsTabGroupPane\n\n override get isEmpty() {\n return this.rootPane?.isEmpty ?? true;\n }\n}","import { BsDockPanelComponent } from \"../dock-panel/dock-panel.component\";\nimport { BsDockPane } from \"./dock-pane\";\n\nexport class BsContentPane extends BsDockPane {\n constructor(data?: Partial<BsContentPane>) {\n super();\n Object.assign(this, data);\n }\n\n dockPanel!: BsDockPanelComponent;\n isPinned?: boolean;\n\n override get isEmpty() {\n return false;\n }\n}","import { BsDockPane } from \"./dock-pane\";\nimport { Point } from \"../interfaces/point\";\nimport { Size } from \"../interfaces/size\";\n\nexport class BsFloatingPane extends BsDockPane {\n constructor(data?: Partial<BsFloatingPane>) {\n super();\n Object.assign(this, data);\n }\n \n pane?: BsDockPane;\n size?: Size;\n location?: Point;\n\n override get isEmpty() {\n return this.pane?.isEmpty ?? true;\n }\n}","import { SplitPaneOrientation } from \"../types/split-pane-orientation.type\";\nimport { BsDockPane } from \"./dock-pane\";\n\nexport class BsSplitPane extends BsDockPane {\n constructor(data?: Partial<BsSplitPane>) {\n super();\n Object.assign(this, data);\n }\n\n orientation: SplitPaneOrientation = 'horizontal';\n panes: BsDockPane[] = [];\n\n override get isEmpty() {\n return this.panes.length === 0;\n }\n}","export enum EPaneType {\n documentHost = 1,\n splitPane = 2,\n contentPane = 3,\n tabGroupPane = 4,\n}","import { Component, ElementRef, HostBinding, Input } from '@angular/core';\nimport { DomPortal } from '@angular/cdk/portal';\nimport { BehaviorSubject, Observable, map } from 'rxjs';\nimport { BsDockPane } from '../panes/dock-pane';\nimport { EPaneType } from '../enums/pane-type.enum';\nimport { BsSplitPane } from '../panes/split-pane';\nimport { BsContentPane } from '../panes/content-pane';\nimport { BsDocumentHost } from '../panes/document-host-pane';\nimport { BsTabGroupPane } from '../panes/tab-group-pane';\nimport { BsFloatingPane } from '../panes/floating-pane';\nimport { Overlay, OverlayRef } from '@angular/cdk/overlay';\n\n@Component({\n selector: 'bs-dock-pane-renderer',\n templateUrl: './dock-pane-renderer.component.html',\n styleUrls: ['./dock-pane-renderer.component.scss']\n})\nexport class BsDockPaneRendererComponent {\n\n constructor(private overlay: Overlay, element: ElementRef) {\n this.portal = new DomPortal(element);\n }\n\n portal: DomPortal;\n\n paneTypes = EPaneType;\n readonly BsDocumentHostType = BsDocumentHost;\n readonly BsTabGroupType = BsTabGroupPane;\n readonly BsSplitterType = BsSplitPane;\n readonly BsContentPaneType = BsContentPane;\n readonly BsFloatingPaneType = BsFloatingPane;\n\n //#region Layout\n layout$ = new BehaviorSubject<BsDockPane | null>(null);\n public get layout() {\n return this.layout$.value;\n }\n @Input() public set layout(value: BsDockPane | null) {\n this.layout$.next(value);\n }\n //#endregion\n\n private overlayRef?: OverlayRef;\n public moveToOverlay() {\n if (!this.overlayRef && !this.portal.isAttached) {\n this.overlayRef = this.overlay.create({});\n this.portal.attach(this.overlayRef);\n }\n }\n\n public disposeOverlay() {\n if (this.overlayRef) {\n this.portal.detach();\n this.overlayRef.dispose();\n this.overlayRef = undefined;\n }\n }\n}\n","<!-- <ng-content></ng-content> -->\n<ng-container [bsInstanceof]=\"layout$ | async\">\n <div *bsInstanceofCase=\"BsDocumentHostType; let documentHost\" data-hello>\n <bs-dock-pane-renderer [layout]=\"documentHost\"></bs-dock-pane-renderer>\n </div>\n <bs-tab-control *bsInstanceofCase=\"BsTabGroupType; let tabGroup\" [allowDragDrop]=\"false\" class=\"d-flex flex-column h-100 dock-tabs\">\n <bs-tab-page *ngFor=\"let tab of tabGroup.panes\">\n <ng-container *bsTabPageHeader>\n <ng-template [cdkPortalOutlet]=\"tab.dockPanel.headerPortal\"></ng-template>\n </ng-container>\n <bs-dock-pane-renderer [layout]=\"tab\"></bs-dock-pane-renderer>\n </bs-tab-page>\n </bs-tab-control>\n <bs-splitter *bsInstanceofCase=\"BsSplitterType; let splitter\" [orientation]=\"splitter.orientation\">\n <bs-split-panel *ngFor=\"let panel of splitter.panes\">\n <bs-dock-pane-renderer [layout]=\"panel\"></bs-dock-pane-renderer>\n </bs-split-panel>\n </bs-splitter>\n <ng-container *bsInstanceofCase=\"BsContentPaneType; let content\">\n <ng-template [cdkPortalOutlet]=\"content.dockPanel.contentPortal\"></ng-template>\n </ng-container>\n <ng-container *bsInstanceofCase=\"BsFloatingPaneType; let floating\">\n <bs-resizable *ngIf=\"floating.pane\" [positioning]=\"'absolute'\" [presetPosition]=\"{ left: floating.location?.x ?? 0, top: floating.location?.y ?? 0, width: floating.size?.width ?? 200, height: floating.size?.height ?? 100 }\">\n <bs-dock-pane-renderer [layout]=\"floating.pane\"></bs-dock-pane-renderer>\n </bs-resizable>\n </ng-container>\n <div *bsInstanceofDefault>\n No match\n </div>\n</ng-container>","import { Component, ContentChildren, ViewChildren, Input, OnDestroy, QueryList, HostBinding } from '@angular/core';\nimport { BehaviorSubject, map, Observable } from 'rxjs';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Parentified, deepClone } from '@mintplayer/parentify';\nimport { BsDockPanelComponent } from '../dock-panel/dock-panel.component';\nimport { BsDockLayout } from '../interfaces/dock-layout';\nimport { BsTabGroupPane } from '../panes/tab-group-pane';\nimport { BsDocumentHost } from '../panes/document-host-pane';\nimport { BsContentPane } from '../panes/content-pane';\nimport { BsFloatingPane } from '../panes/floating-pane';\nimport { BsSplitPane } from '../panes/split-pane';\nimport { BsDockPaneRendererComponent } from '../dock-pane-renderer/dock-pane-renderer.component';\n\n@Component({\n selector: 'bs-dock',\n templateUrl: './dock.component.html',\n styleUrls: ['./dock.component.scss']\n})\nexport class BsDockComponent implements OnDestroy {\n constructor() {\n const tabs = new BsTabGroupPane();\n const docHost = new BsDocumentHost();\n docHost.rootPane = tabs;\n\n this.layout$ = new BehaviorSubject<BsDockLayout>({\n rootPane: docHost,\n floatingPanes: []\n });\n\n this.floating$.pipe(takeUntilDestroyed())\n .subscribe((floating) => {\n floating.forEach((panel) => panel.moveToOverlay());\n });\n \n this.parentifiedLayout$ = this.layout$.pipe(map(layout => {\n const clone = deepClone(\n layout, true,\n // []\n [BsContentPane, BsDocumentHost, BsFloatingPane, BsSplitPane, BsTabGroupPane],\n true,\n this.paneCache);\n\n // this.paneCache = clone.cache;\n\n console.log('parentify', { layout, result: clone.result });\n\n return clone.result;\n }));\n\n this.parentifiedLayout$.pipe(takeUntilDestroyed()).subscribe(console.log);\n }\n\n private paneCache?: Map<any, any>;\n\n //#region Panels\n panels$ = new BehaviorSubject<BsDockPanelComponent[]>([]);\n @ContentChildren(BsDockPanelComponent) set panels(value: QueryList<BsDockPanelComponent>) {\n this.panels$.next(value.toArray());\n }\n //#endregion\n //#region Layout\n layout$: BehaviorSubject<BsDockLayout>;\n public get layout() {\n return this.layout$.value;\n }\n @Input() public set layout(value: BsDockLayout) {\n this.layout$.next(value);\n }\n //#endregion\n\n floating$ = new BehaviorSubject<BsDockPaneRendererComponent[]>([]);\n @ViewChildren('floating') set floatingPanes(value: QueryList<BsDockPaneRendererComponent>) {\n this.floating$.next(value.toArray());\n }\n\n @HostBinding('class.position-absolute')\n positionAbsolute = true;\n\n @HostBinding('style.top')\n @HostBinding('style.left')\n @HostBinding('style.bottom')\n @HostBinding('style.right')\n positionPx = 0;\n\n parentifiedLayout$: Observable<Parentified<BsDockLayout>>;\n\n ngOnDestroy() {\n this.floating$.value.forEach(panel => panel.disposeOverlay());\n }\n}\n","<ng-content></ng-content>\n<ng-container *ngIf=\"(layout$ | async) as layout\">\n <bs-dock-pane-renderer [layout]=\"layout.rootPane\"></bs-dock-pane-renderer>\n\n <ng-container *ngFor=\"let pane of layout.floatingPanes\">\n <bs-dock-pane-renderer #floating *ngIf=\"pane.pane\" [layout]=\"pane\"></bs-dock-pane-renderer>\n </ng-container>\n</ng-container>\n<!-- <bs-splitter>\n <ng-content></ng-content>\n <ng-container *ngFor=\"let panel of (panels$ | async)\">\n <bs-split-panel>\n <ng-template [cdkPortalOutlet]=\"panel.portal\"></ng-template>\n </bs-split-panel>\n </ng-container>\n</bs-splitter> -->\n","import { Injectable } from '@angular/core';\nimport { BsDockPane } from '../../panes/dock-pane';\nimport { BsSplitPane } from '../../panes/split-pane';\nimport { BsContentPane } from '../../panes/content-pane';\nimport { BsTabGroupPane } from '../../panes/tab-group-pane';\nimport { BsFloatingPane } from '../../panes/floating-pane';\nimport { BsDocumentHost } from '../../panes/document-host-pane';\nimport { BsDockLayout } from '../../interfaces/dock-layout';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class BsDockService {\n public buildTraces(layout: BsDockLayout) {\n const result = [layout.rootPane, ...layout.floatingPanes].map(pane => this.buildTracesPrivate([pane]));\n // const result = this.buildTracesPrivate([layout.rootPane]);\n return result.flatMap(traceGroup => traceGroup);\n }\n\n private buildTracesPrivate(currentSequence: BsDockPane[]): PaneTraceResult[] {\n const children = this.getChildPanes(currentSequence[currentSequence.length - 1]);\n if (children.length === 0) {\n return [{\n finished: true,\n trace: currentSequence\n }];\n } else {\n const result = children.map(child => this.buildTracesPrivate([...currentSequence, child]));\n return result.flatMap(r => r);\n }\n }\n\n private getChildPanes(pane: BsDockPane): BsDockPane[] {\n if (pane instanceof BsContentPane) {\n return [];\n } else if (pane instanceof BsTabGroupPane) {\n return (<BsDockPane[]>pane.panes);\n } else if (pane instanceof BsSplitPane) {\n return pane.panes;\n } else if (pane instanceof BsFloatingPane) {\n return pane.pane ? [pane.pane] : [];\n } else if (pane instanceof BsDocumentHost) {\n return pane.rootPane ? [pane.rootPane] : [];\n } else {\n return [];\n }\n }\n}\n\nexport interface PaneTraceResult {\n trace: BsDockPane[];\n finished: boolean;\n}","import { Component, ElementRef, HostBinding, HostListener, Inject, Optional, forwardRef } from '@angular/core';\nimport { take } from 'rxjs';\nimport { BsTabControlComponent } from '@mintplayer/ng-bootstrap/tab-control';\nimport { Parentified } from '@mintplayer/parentify';\nimport { BsDockPanelComponent } from '../dock-panel/dock-panel.component';\nimport { BsDockComponent } from '../dock/dock.component';\nimport { BsDockPane } from '../panes/dock-pane';\nimport { BsSplitPane } from '../panes/split-pane';\nimport { BsContentPane } from '../panes/content-pane';\nimport { BsFloatingPane } from '../panes/floating-pane';\nimport { BsTabGroupPane } from '../panes/tab-group-pane';\nimport { BsDocumentHost } from '../panes/document-host-pane';\nimport { RemoveFromPaneResult } from '../interfaces/remove-from-pane-result';\nimport { DragOperation } from '../interfaces/drag-operation';\nimport { BsDockService } from '../services/dock/dock.service';\n\n@Component({\n selector: 'bs-dock-panel-header',\n templateUrl: './dock-panel-header.component.html',\n styleUrls: ['./dock-panel-header.component.scss']\n})\nexport class BsDockPanelHeaderComponent {\n constructor(private dockPanel: BsDockPanelComponent, private dock: BsDockComponent, private dockService: BsDockService, private element: ElementRef<HTMLElement>) {}\n\n isMouseDown = false;\n dragOperation?: DragOperation;\n isDragging = false;\n @HostListener('mousedown', ['$event']) onMouseDown(ev: MouseEvent) {\n ev.preventDefault();\n this.isMouseDown = true;\n }\n\n @HostListener('document:mousemove', ['$event']) onMouseMove(ev: MouseEvent) {\n if (this.isMouseDown) {\n if (!this.isDragging) {\n this.isDragging = true;\n \n this.dock.parentifiedLayout$.pipe(take(1)).subscribe((parentifiedLayout) => {\n // this.dock.layout$.pipe(take(1)).subscribe((layout) => {\n const traces = this.dockService.buildTraces(parentifiedLayout);\n console.log('traces', {parentifiedLayout, traces});\n const matching = traces.filter(t => {\n const lastPane = t.trace[t.trace.length - 1];\n // return (lastPane instanceof BsContentPane) && (lastPane.dockPanel === this.dockPanel);\n return (lastPane instanceof BsContentPane) && (lastPane.dockPanel === this.dockPanel);\n });\n console.log('matching', matching);\n if (matching.length !== 1) {\n return;\n }\n\n // const tabs = matching[0].trace.filter(pane => pane instanceof BsTabGroupPane);\n // const lastTabGroup = tabs[tabs.length - 1];\n // // console.log('last tabgroup', lastTabGroup);\n\n let tabControlEl = this.element.nativeElement;\n do {\n if (tabControlEl.parentElement) {\n tabControlEl = tabControlEl!.parentElement;\n } else {\n throw 'No more parents';\n }\n } while (tabControlEl.tagName.toUpperCase() !== 'BS-TAB-CONTROL');\n\n const coords = {\n width: tabControlEl.clientWidth,\n height: tabControlEl.clientHeight,\n left: ev.clientX - ev.offsetX,\n top: ev.clientY - ev.offsetY,\n };\n\n // this.dockPanel.headerPortal?.isAttached && this.dockPanel.headerPortal?.detach();\n // this.dockPanel.contentPortal?.isAttached && this.dockPanel.contentPortal?.detach();\n this.removeFromPane(parentifiedLayout.$original.rootPane, this.dockPanel);\n\n const trace = [...matching[0].trace];\n\n this.dockPanel.headerPortal?.isAttached && this.dockPanel.headerPortal?.detach();\n this.dockPanel.contentPortal?.isAttached && this.dockPanel.contentPortal?.detach();\n \n \n for (let index = trace.length - 1; index >= 0; index--) {\n if (index > 0) {\n this.removeFromPaneBis(trace[index - 1], trace[index]);\n if (!trace[index - 1].isEmpty) break;\n } else {\n const floatingIndex = parentifiedLayout.floatingPanes.indexOf(trace[0]);\n if (trace[0].isEmpty && (floatingIndex > -1)) {\n parentifiedLayout.$original.floatingPanes.splice(floatingIndex, 1);\n }\n }\n }\n\n\n\n // this.removeFromPane((<any>matching[0].trace[0])['$original'], this.dockPanel);\n\n const floatingPane = new BsFloatingPane({\n pane: new BsTabGroupPane({\n panes: [\n new BsContentPane({\n dockPanel: this.dockPanel\n })\n ]\n }),\n size: {\n width: coords.width,\n height: coords.height,\n },\n location: {\n x: coords.left,\n y: coords.top,\n }\n });\n this.dragOperation = {\n offsetX: ev.offsetX,\n offsetY: ev.offsetY,\n floatingPane\n };\n parentifiedLayout.$original.floatingPanes.push(floatingPane);\n // debugger;\n setTimeout(() => this.dock.layout$.next(parentifiedLayout.$original), 5);\n // console.log('traces', { traces, matching, dockPanel: this.dockPanel, equals: traces[2].trace[3] });\n\n // let element: HTMLElement | null = this.element.nativeElement;\n // let tree: HTMLElement[] = [];\n // do {\n // tree.push(element!);\n // element = element!.parentElement;\n // } while (element);\n\n // const tabControls = tree.filter(el => el.tagName.toUpperCase() === 'BS-TAB-CONTROL');\n // if (tabControls.length > 0) {\n // const coords = {\n // width: tabControls[0].clientWidth,\n // height: tabControls[0].clientHeight,\n // left: ev.clientX - ev.offsetX,\n // top: ev.clientY - ev.offsetY,\n // };\n\n // this.dockPanel.headerPortal?.isAttached && this.dockPanel.headerPortal?.detach();\n // this.dockPanel.contentPortal?.isAttached && this.dockPanel.contentPortal?.detach();\n // this.removeFromPane(layout.rootPane, this.dockPanel);\n\n // const floatingPane = new BsFloatingPane({\n // pane: new BsTabGroupPane({\n // panes: [\n // new BsContentPane({\n // dockPanel: this.dockPanel\n // })\n // ]\n // }),\n // size: {\n // width: coords.width,\n // height: coords.height,\n // },\n // location: {\n // x: coords.left,\n // y: coords.top,\n // }\n // });\n \n // this.dragOperation = {\n // offsetX: ev.offsetX,\n // offsetY: ev.offsetY,\n // floatingPane\n // };\n\n // layout.floatingPanes.push(floatingPane);\n // this.dock.layout$.next(layout);\n // }\n });\n } else {\n if (this.dragOperation) {\n if (this.dragOperation.floatingPane.location) {\n this.dragOperation.floatingPane.location.x = ev.clientX - this.dragOperation.offsetX;\n this.dragOperation.floatingPane.location.y = ev.clientY - this.dragOperation.offsetY;\n }\n // } else {\n // const traces = this.dockService.buildTraces(this.dock.layout);\n // const matchingTrace = traces.filter(trace => {\n // const pane = trace.trace[trace.trace.length - 1];\n // return (pane instanceof BsContentPane) && (pane.dockPanel === this.dockPanel);\n // });\n\n // console.log('matching', { traces, matchingTrace });\n // // this.dragOperation = {\n \n // // }\n }\n }\n }\n }\n\n removeFromPaneBis(host: BsDockPane, pane: BsDockPane) {\n if (host instanceof BsContentPane) {\n } else if (host instanceof BsDocumentHost) {\n // Actually documentHost should never be removed\n } else if (host instanceof BsTabGroupPane) {\n if (pane instanceof BsContentPane) {\n const index = host.panes.indexOf(pane);\n host.panes.splice(index, 1);\n }\n } else if (host instanceof BsSplitPane) {\n const index = host.panes.indexOf(pane);\n host.panes.splice(index, 1);\n } else if (host instanceof BsFloatingPane) {\n } else {\n throw 'Unknown pane type';\n }\n }\n\n removeFromPane(host: BsDockPane, panel: BsDockPanelComponent /*, parents: BsDockPane[] */): RemoveFromPaneResult {\n if (host instanceof BsContentPane) {\n return { paneRemoved: false, hostIsEmpty: false };\n } else if (host instanceof BsDocumentHost) {\n // Actually documentHost should never be removed\n\n if (!host.rootPane) {\n return { paneRemoved: false, hostIsEmpty: true };\n }\n\n const result = this.removeFromPane(host.rootPane, panel);\n return { paneRemoved: result.paneRemoved, hostIsEmpty: result.hostIsEmpty };\n\n } else if (host instanceof BsTabGroupPane) {\n\n\n\n const matching = host.panes.filter(p => p.dockPanel === panel);\n if (matching.length > 0) {\n host.panes.splice(host.panes.findIndex(p => p.dockPanel === panel), 1);\n return { paneRemoved: true, hostIsEmpty: host.panes.length === 0 };\n } else {\n // ATM. all panes are ContentPanes anyway.\n // So unless you'd want to have splitters inside the tabs,\n // This code will not be hit.\n\n // const result = host.panes\n // .map(parentPane => this.removeFromPane(parentPane, panel))\n // .filter(r => r.paneRemoved);\n //\n // if (result.length > 0) {\n // return { paneRemoved: true, hostIsEmpty: }\n // }\n return { paneRemoved: false, hostIsEmpty: host.panes.length === 0 };\n }\n\n\n\n\n } else if (host instanceof BsSplitPane) {\n const matching = host.panes\n .filter(p => p instanceof BsContentPane)\n .map(p => <BsContentPane>p)\n .filter(p => p.dockPanel === panel);\n \n if (matching.length > 0) {\n host.panes.splice(host.panes.findIndex(p => (p instanceof BsContentPane) && matching.includes(p)), 1);\n\n // TODO: Remove splitter if only 1 pane left?\n return { paneRemoved: true, hostIsEmpty: host.panes.length === 0 };\n } else {\n\n\n for (let splitPane of host.panes) {\n const result = this.removeFromPane(splitPane, panel);\n if (result.paneRemoved && result.hostIsEmpty) {\n // splitPane is empty now, so we can remove it from this splitter\n host.panes.splice(host.panes.indexOf(splitPane), 1);\n return { paneRemoved: true, hostIsEmpty: host.panes.length === 0 };\n }\n }\n }\n\n return { paneRemoved: false, hostIsEmpty: host.panes.length === 0 };\n } else {\n throw 'unknown host type';\n }\n }\n\n @HostListener('document:mouseup', ['$event']) onMouseUp(ev: Event) {\n this.isMouseDown = false;\n this.isDragging = false;\n this.dragOperation = undefined;\n }\n\n @HostBinding('class.d-block') dBlock = true;\n}\n","<ng-content></ng-content>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PortalModule } from '@angular/cdk/portal';\nimport { BsCardModule } from '@mintplayer/ng-bootstrap/card';\nimport { BsSplitterModule } from '@mintplayer/ng-bootstrap/splitter';\nimport { BsResizableModule } from '@mintplayer/ng-bootstrap/resizable';\nimport { BsTabControlModule } from '@mintplayer/ng-bootstrap/tab-control';\nimport { BsInstanceOfModule } from '@mintplayer/ng-bootstrap/instance-of';\nimport { BsDockComponent } from './dock/dock.component';\nimport { BsDockPanelComponent } from './dock-panel/dock-panel.component';\nimport { BsDockPanelHeaderComponent } from './dock-panel-header/dock-panel-header.component';\nimport { BsDockPaneRendererComponent } from './dock-pane-renderer/dock-pane-renderer.component';\n\n@NgModule({\n declarations: [\n BsDockComponent,\n BsDockPanelComponent,\n BsDockPanelHeaderComponent,\n BsDockPaneRendererComponent\n ],\n imports: [\n CommonModule,\n PortalModule,\n BsCardModule,\n BsInstanceOfModule,\n BsSplitterModule,\n BsTabControlModule,\n BsResizableModule\n ],\n exports: [\n BsDockComponent,\n BsDockPanelComponent,\n BsDockPanelHeaderComponent,\n BsDockPaneRendererComponent\n ]\n})\nexport class BsDockModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1","i2.BsDockPaneRendererComponent","i1.BsDockPanelComponent","i2.BsDockComponent","i3.BsDockService"],"mappings":"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"}
@@ -6,10 +6,10 @@ class BsDropdownDividerDirective {
6
6
  constructor() {
7
7
  this.dropdownDividerClass = true;
8
8
  }
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDropdownDividerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
10
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.0.3", type: BsDropdownDividerDirective, selector: "[bsDropdownDivider]", host: { properties: { "class.dropdown-divider": "this.dropdownDividerClass" } }, ngImport: i0 }); }
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownDividerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
10
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.1", type: BsDropdownDividerDirective, selector: "[bsDropdownDivider]", host: { properties: { "class.dropdown-divider": "this.dropdownDividerClass" } }, ngImport: i0 }); }
11
11
  }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDropdownDividerDirective, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownDividerDirective, decorators: [{
13
13
  type: Directive,
14
14
  args: [{
15
15
  selector: '[bsDropdownDivider]'
@@ -20,11 +20,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImpor
20
20
  }] } });
21
21
 
22
22
  class BsDropdownDividerModule {
23
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDropdownDividerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
24
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.0.3", ngImport: i0, type: BsDropdownDividerModule, declarations: [BsDropdownDividerDirective], imports: [CommonModule], exports: [BsDropdownDividerDirective] }); }
25
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDropdownDividerModule, imports: [CommonModule] }); }
23
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownDividerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
24
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownDividerModule, declarations: [BsDropdownDividerDirective], imports: [CommonModule], exports: [BsDropdownDividerDirective] }); }
25
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownDividerModule, imports: [CommonModule] }); }
26
26
  }
27
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.3", ngImport: i0, type: BsDropdownDividerModule, decorators: [{
27
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BsDropdownDividerModule, decorators: [{
28
28
  type: NgModule,
29
29
  args: [{
30
30
  declarations: [BsDropdownDividerDirective],