@mintplayer/ng-bootstrap 18.2.0 → 18.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (431) hide show
  1. package/async-host-binding/index.d.ts +1 -0
  2. package/async-host-binding/src/bind-event.plugin.d.ts +1 -0
  3. package/async-host-binding/src/index.d.ts +1 -0
  4. package/async-host-binding/src/provide-async-host-bindings.d.ts +1 -0
  5. package/button-type/index.d.ts +1 -0
  6. package/button-type/src/button-type/button-type.directive.d.ts +1 -0
  7. package/button-type/src/index.d.ts +1 -0
  8. package/calendar-month/index.d.ts +1 -0
  9. package/calendar-month/src/index.d.ts +1 -0
  10. package/calendar-month/src/interfaces/date-day-of-month.d.ts +1 -0
  11. package/calendar-month/src/interfaces/first-and-last-date.d.ts +1 -0
  12. package/calendar-month/src/interfaces/index.d.ts +1 -0
  13. package/calendar-month/src/interfaces/week.d.ts +1 -0
  14. package/calendar-month/src/interfaces/weekday.d.ts +1 -0
  15. package/calendar-month/src/pipes/index.d.ts +1 -0
  16. package/calendar-month/src/pipes/month-name/month-name.pipe.d.ts +1 -0
  17. package/calendar-month/src/pipes/weekday-name/weekday-name.pipe.d.ts +1 -0
  18. package/calendar-month/src/service/calendar-month.service.d.ts +1 -0
  19. package/carousel/src/carousel.module.d.ts +3 -4
  20. package/color-picker/color-picker.module.d.ts +1 -2
  21. package/context-menu/index.d.ts +1 -0
  22. package/context-menu/src/context-menu.directive.d.ts +1 -0
  23. package/context-menu/src/context-menu.module.d.ts +1 -0
  24. package/context-menu/src/index.d.ts +1 -0
  25. package/copy/index.d.ts +1 -0
  26. package/copy/src/copy.directive.d.ts +1 -0
  27. package/copy/src/index.d.ts +1 -0
  28. package/dropdown/index.d.ts +1 -0
  29. package/dropdown/src/dropdown/dropdown.directive.d.ts +1 -0
  30. package/dropdown/src/dropdown-menu/dropdown-menu.directive.d.ts +1 -0
  31. package/dropdown/src/dropdown-toggle/dropdown-toggle.directive.d.ts +1 -0
  32. package/dropdown/src/dropdown.module.d.ts +1 -0
  33. package/dropdown/src/index.d.ts +1 -0
  34. package/dropdown-divider/index.d.ts +1 -0
  35. package/dropdown-divider/src/dropdown-divider.directive.d.ts +1 -0
  36. package/dropdown-divider/src/index.d.ts +1 -0
  37. package/enhanced-paste/index.d.ts +1 -0
  38. package/enhanced-paste/src/directive/enhanced-paste.directive.d.ts +1 -0
  39. package/enhanced-paste/src/index.d.ts +1 -0
  40. package/enhanced-paste/src/interfaces/number-overflow.d.ts +1 -0
  41. package/enum/index.d.ts +1 -0
  42. package/enum/src/index.d.ts +1 -0
  43. package/enum/src/interfaces/enum-item.d.ts +1 -0
  44. package/enum/src/interfaces/index.d.ts +1 -0
  45. package/enum/src/service/enum.service.d.ts +1 -0
  46. package/esm2022/accordion/src/accordion/accordion.component.mjs +3 -3
  47. package/esm2022/accordion/src/accordion-tab/accordion-tab.component.mjs +3 -3
  48. package/esm2022/accordion/src/accordion-tab-header/accordion-tab-header.component.mjs +3 -3
  49. package/esm2022/accordion/src/accordion.module.mjs +4 -4
  50. package/esm2022/alert/src/alert/alert.component.mjs +3 -3
  51. package/esm2022/alert/src/alert-close/alert-close.component.mjs +3 -3
  52. package/esm2022/alert/src/alert.module.mjs +4 -4
  53. package/esm2022/badge/src/badge.component.mjs +3 -3
  54. package/esm2022/breadcrumb/src/breadcrumb/breadcrumb.component.mjs +3 -3
  55. package/esm2022/breadcrumb/src/breadcrumb-item/breadcrumb-item.component.mjs +3 -3
  56. package/esm2022/breadcrumb/src/breadcrumb.module.mjs +4 -4
  57. package/esm2022/button-group/src/button-group/button-group.component.mjs +3 -3
  58. package/esm2022/button-type/src/button-type/button-type.directive.mjs +3 -3
  59. package/esm2022/calendar/src/calendar.component.mjs +5 -6
  60. package/esm2022/calendar-month/src/pipes/month-name/month-name.pipe.mjs +3 -3
  61. package/esm2022/calendar-month/src/pipes/weekday-name/weekday-name.pipe.mjs +3 -3
  62. package/esm2022/calendar-month/src/service/calendar-month.service.mjs +3 -3
  63. package/esm2022/card/src/card/card.component.mjs +3 -3
  64. package/esm2022/card/src/card-header/card-header.component.mjs +3 -3
  65. package/esm2022/card/src/card.module.mjs +4 -4
  66. package/esm2022/carousel/src/carousel/carousel.component.mjs +7 -8
  67. package/esm2022/carousel/src/carousel-image/carousel-image.directive.mjs +3 -3
  68. package/esm2022/carousel/src/carousel-img/carousel-img.directive.mjs +3 -3
  69. package/esm2022/carousel/src/carousel.module.mjs +5 -8
  70. package/esm2022/close/src/close.component.mjs +3 -3
  71. package/esm2022/code-snippet/src/code-snippet.component.mjs +3 -3
  72. package/esm2022/color-picker/color-picker.module.mjs +6 -9
  73. package/esm2022/color-picker/components/alpha-strip/alpha-strip.component.mjs +3 -3
  74. package/esm2022/color-picker/components/color-picker/color-picker.component.mjs +9 -10
  75. package/esm2022/color-picker/components/color-wheel/color-wheel.component.mjs +3 -3
  76. package/esm2022/color-picker/components/luminosity-strip/luminosity-strip.component.mjs +3 -3
  77. package/esm2022/color-picker/components/slider/slider.component.mjs +9 -9
  78. package/esm2022/color-picker/directives/color-picker-value-accessor/color-picker-value-accessor.directive.mjs +3 -3
  79. package/esm2022/container/src/container/container.component.mjs +3 -3
  80. package/esm2022/context-menu/src/context-menu.directive.mjs +3 -3
  81. package/esm2022/context-menu/src/context-menu.module.mjs +4 -4
  82. package/esm2022/copy/src/copy.directive.mjs +3 -3
  83. package/esm2022/datatable/src/datatable/datatable.component.mjs +3 -3
  84. package/esm2022/datatable/src/datatable-column/datatable-column.directive.mjs +3 -3
  85. package/esm2022/datatable/src/datatable.module.mjs +4 -4
  86. package/esm2022/datatable/src/row-template/row-template.directive.mjs +3 -3
  87. package/esm2022/datepicker/src/datepicker.component.mjs +3 -3
  88. package/esm2022/dock/src/dock/dock.component.mjs +3 -3
  89. package/esm2022/dock/src/dock-pane-renderer/dock-pane-renderer.component.mjs +3 -3
  90. package/esm2022/dock/src/dock-panel/dock-panel.component.mjs +3 -3
  91. package/esm2022/dock/src/dock-panel-header/dock-panel-header.component.mjs +3 -3
  92. package/esm2022/dock/src/dock.module.mjs +4 -4
  93. package/esm2022/dock/src/services/dock/dock.service.mjs +3 -3
  94. package/esm2022/dropdown/src/dropdown/dropdown.directive.mjs +3 -3
  95. package/esm2022/dropdown/src/dropdown-menu/dropdown-menu.directive.mjs +3 -3
  96. package/esm2022/dropdown/src/dropdown-toggle/dropdown-toggle.directive.mjs +3 -3
  97. package/esm2022/dropdown/src/dropdown.module.mjs +4 -4
  98. package/esm2022/dropdown-divider/src/dropdown-divider.directive.mjs +3 -3
  99. package/esm2022/dropdown-menu/src/dropdown-item/dropdown-item.component.mjs +3 -3
  100. package/esm2022/dropdown-menu/src/dropdown-menu/dropdown-menu.component.mjs +3 -3
  101. package/esm2022/dropdown-menu/src/dropdown-menu.module.mjs +4 -4
  102. package/esm2022/enhanced-paste/src/directive/enhanced-paste.directive.mjs +3 -3
  103. package/esm2022/enum/src/service/enum.service.mjs +3 -3
  104. package/esm2022/file-upload/src/component/file-upload.component.mjs +3 -3
  105. package/esm2022/file-upload/src/directive/file-upload-template.directive.mjs +3 -3
  106. package/esm2022/file-upload/src/file-upload.module.mjs +4 -4
  107. package/esm2022/file-upload/src/pipes/format-bytes/format-bytes.pipe.mjs +3 -3
  108. package/esm2022/floating-labels/src/floating-label/floating-label.component.mjs +3 -3
  109. package/esm2022/font-color/src/font-color.pipe.mjs +3 -3
  110. package/esm2022/for/src/for.directive.mjs +3 -3
  111. package/esm2022/form/src/form/form.component.mjs +3 -3
  112. package/esm2022/form/src/form-control/form-control.directive.mjs +3 -3
  113. package/esm2022/form/src/form-group/form-group.directive.mjs +3 -3
  114. package/esm2022/form/src/form.module.mjs +4 -4
  115. package/esm2022/grid/src/component/grid.component.mjs +3 -3
  116. package/esm2022/grid/src/directives/col-form-label/col-form-label.directive.mjs +3 -3
  117. package/esm2022/grid/src/directives/column/column.directive.mjs +6 -6
  118. package/esm2022/grid/src/directives/row/row.directive.mjs +3 -3
  119. package/esm2022/grid/src/grid.module.mjs +4 -4
  120. package/esm2022/has-overlay/src/has-overlay/has-overlay.component.mjs +3 -3
  121. package/esm2022/has-property/src/has-property.pipe.mjs +3 -3
  122. package/esm2022/in-list/src/in-list.pipe.mjs +3 -3
  123. package/esm2022/input-group/src/input-group/input-group.component.mjs +3 -3
  124. package/esm2022/instance-of/src/directives/instanceof-case.directive.mjs +3 -3
  125. package/esm2022/instance-of/src/directives/instanceof-default.directive.mjs +3 -3
  126. package/esm2022/instance-of/src/directives/instanceof.directive.mjs +3 -3
  127. package/esm2022/instance-of/src/instance-of.module.mjs +4 -4
  128. package/esm2022/instance-of/src/pipes/instance-of.pipe.mjs +3 -3
  129. package/esm2022/let/directive/let.directive.mjs +3 -3
  130. package/esm2022/linify/src/linify.pipe.mjs +3 -3
  131. package/esm2022/list-group/src/list-group/list-group.component.mjs +3 -3
  132. package/esm2022/list-group/src/list-group-item/list-group-item.component.mjs +3 -3
  133. package/esm2022/list-group/src/list-group.module.mjs +4 -4
  134. package/esm2022/markdown/src/bold/bold.pipe.mjs +3 -3
  135. package/esm2022/markdown/src/italic/italic.pipe.mjs +3 -3
  136. package/esm2022/markdown/src/strikethrough/strikethrough.pipe.mjs +3 -3
  137. package/esm2022/markdown/src/underline/underline.pipe.mjs +3 -3
  138. package/esm2022/marquee/src/marquee/marquee.component.mjs +3 -3
  139. package/esm2022/modal/src/components/modal/modal.component.mjs +3 -3
  140. package/esm2022/modal/src/components/modal-host/modal-host.component.mjs +3 -3
  141. package/esm2022/modal/src/directives/modal/modal.directive.mjs +3 -3
  142. package/esm2022/modal/src/directives/modal-body/modal-body.directive.mjs +3 -3
  143. package/esm2022/modal/src/directives/modal-close/modal-close.directive.mjs +3 -3
  144. package/esm2022/modal/src/directives/modal-footer/modal-footer.directive.mjs +3 -3
  145. package/esm2022/modal/src/directives/modal-header/modal-header.directive.mjs +3 -3
  146. package/esm2022/modal/src/modal.module.mjs +4 -4
  147. package/esm2022/multiselect/src/component/multiselect.component.mjs +3 -3
  148. package/esm2022/multiselect/src/directives/button-template/button-template.directive.mjs +3 -3
  149. package/esm2022/multiselect/src/directives/footer-template/footer-template.directive.mjs +3 -3
  150. package/esm2022/multiselect/src/directives/header-template/header-template.directive.mjs +3 -3
  151. package/esm2022/multiselect/src/multiselect.module.mjs +4 -4
  152. package/esm2022/navbar/src/dropdown-toggle/dropdown-toggle.directive.mjs +3 -3
  153. package/esm2022/navbar/src/expand-button/expand-button.directive.mjs +3 -3
  154. package/esm2022/navbar/src/nav-link/nav-link.directive.mjs +3 -3
  155. package/esm2022/navbar/src/navbar/navbar.component.mjs +3 -3
  156. package/esm2022/navbar/src/navbar-brand/navbar-brand.component.mjs +3 -3
  157. package/esm2022/navbar/src/navbar-content/navbar-content.directive.mjs +3 -3
  158. package/esm2022/navbar/src/navbar-dropdown/navbar-dropdown.component.mjs +3 -3
  159. package/esm2022/navbar/src/navbar-item/navbar-item.component.mjs +3 -3
  160. package/esm2022/navbar/src/navbar-nav/navbar-nav.component.mjs +3 -3
  161. package/esm2022/navbar/src/navbar.module.mjs +4 -4
  162. package/esm2022/navbar-toggler/src/navbar-toggler/navbar-toggler.component.mjs +3 -3
  163. package/esm2022/navigation-lock/src/directive/navigation-lock.directive.mjs +3 -3
  164. package/esm2022/navigation-lock/src/guard/navigation-lock.guard.mjs +3 -3
  165. package/esm2022/navigation-lock/src/navigation-lock.module.mjs +4 -4
  166. package/esm2022/no-noscript/src/no-noscript/no-noscript.directive.mjs +3 -3
  167. package/esm2022/offcanvas/src/components/offcanvas/offcanvas.component.mjs +3 -3
  168. package/esm2022/offcanvas/src/components/offcanvas-body/offcanvas-body.component.mjs +3 -3
  169. package/esm2022/offcanvas/src/components/offcanvas-header/offcanvas-header.component.mjs +3 -3
  170. package/esm2022/offcanvas/src/components/offcanvas-host/offcanvas-host.component.mjs +3 -3
  171. package/esm2022/offcanvas/src/directives/offcanvas-close/offcanvas-close.directive.mjs +3 -3
  172. package/esm2022/offcanvas/src/directives/offcanvas-content/offcanvas-content.directive.mjs +3 -3
  173. package/esm2022/offcanvas/src/directives/offcanvas-push/offcanvas-push.directive.mjs +3 -3
  174. package/esm2022/offcanvas/src/offcanvas.module.mjs +4 -4
  175. package/esm2022/ordinal-number/src/ordinal-number/ordinal-number.pipe.mjs +3 -3
  176. package/esm2022/pagination/src/component/pagination/pagination.component.mjs +3 -3
  177. package/esm2022/parallax/src/parallax.component.mjs +3 -3
  178. package/esm2022/placeholder/src/placeholder/placeholder.component.mjs +3 -3
  179. package/esm2022/placeholder/src/placeholder-field/placeholder-field.directive.mjs +3 -3
  180. package/esm2022/placeholder/src/placeholder.module.mjs +4 -4
  181. package/esm2022/playlist-toggler/src/playlist-toggler/playlist-toggler.component.mjs +3 -3
  182. package/esm2022/popover/src/component/popover.component.mjs +3 -3
  183. package/esm2022/popover/src/directives/popover/popover.directive.mjs +3 -3
  184. package/esm2022/popover/src/directives/popover-body/popover-body.directive.mjs +3 -3
  185. package/esm2022/popover/src/directives/popover-header/popover-header.directive.mjs +3 -3
  186. package/esm2022/popover/src/popover.module.mjs +4 -4
  187. package/esm2022/progress-bar/src/progress/progress.component.mjs +3 -3
  188. package/esm2022/progress-bar/src/progress-bar/progress-bar.component.mjs +3 -3
  189. package/esm2022/progress-bar/src/progress-bar.module.mjs +4 -4
  190. package/esm2022/range/src/component/range.component.mjs +3 -3
  191. package/esm2022/range/src/range.module.mjs +4 -4
  192. package/esm2022/range/src/value-accessor/range-value-accessor.mjs +3 -3
  193. package/esm2022/rating/src/component/rating.component.mjs +3 -3
  194. package/esm2022/resizable/src/resizable/resizable.component.mjs +3 -3
  195. package/esm2022/resizable/src/resizable.module.mjs +4 -4
  196. package/esm2022/resizable/src/resize-glyph/resize-glyph.directive.mjs +3 -3
  197. package/esm2022/scheduler/src/components/resource-group-presenter/resource-group-presenter.component.mjs +3 -3
  198. package/esm2022/scheduler/src/components/scheduler/scheduler.component.mjs +3 -3
  199. package/esm2022/scheduler/src/pipes/bs-seconds-timespan.pipe/bs-seconds-timespan.pipe.mjs +3 -3
  200. package/esm2022/scheduler/src/pipes/bs-seconds-today-offset/bs-seconds-today-offset.pipe.mjs +3 -3
  201. package/esm2022/scheduler/src/pipes/date-offset/date-offset.pipe.mjs +3 -3
  202. package/esm2022/scheduler/src/pipes/day-of-week/day-of-week.pipe.mjs +3 -3
  203. package/esm2022/scheduler/src/scheduler.module.mjs +4 -4
  204. package/esm2022/scheduler/src/services/timeline/timeline.service.mjs +3 -3
  205. package/esm2022/scrollspy/src/component/scrollspy.component.mjs +3 -3
  206. package/esm2022/scrollspy/src/directives/scrollspy.directive.mjs +3 -3
  207. package/esm2022/scrollspy/src/scrollspy.module.mjs +4 -4
  208. package/esm2022/scrollspy/src/services/scroll-offset/scroll-offset.service.mjs +3 -3
  209. package/esm2022/searchbox/src/directives/enter-search-term.directive.mjs +3 -3
  210. package/esm2022/searchbox/src/directives/no-results.directive.mjs +3 -3
  211. package/esm2022/searchbox/src/directives/suggestion.directive.mjs +3 -3
  212. package/esm2022/searchbox/src/searchbox/searchbox.component.mjs +10 -11
  213. package/esm2022/searchbox/src/searchbox.module.mjs +5 -8
  214. package/esm2022/select/src/component/select.component.mjs +3 -3
  215. package/esm2022/select/src/select.module.mjs +4 -4
  216. package/esm2022/select/src/value-accessors/select-value-accessor.mjs +6 -6
  217. package/esm2022/select2/src/component/select2.component.mjs +3 -3
  218. package/esm2022/select2/src/directive/item-template/item-template.directive.mjs +3 -3
  219. package/esm2022/select2/src/directive/suggestion-template/suggestion-template.directive.mjs +3 -3
  220. package/esm2022/select2/src/select2.module.mjs +4 -4
  221. package/esm2022/shell/src/shell/shell.component.mjs +3 -3
  222. package/esm2022/shell/src/shell-sidebar/shell-sidebar.directive.mjs +3 -3
  223. package/esm2022/shell/src/shell.module.mjs +4 -4
  224. package/esm2022/signature-pad/src/component/signature-pad.component.mjs +3 -3
  225. package/esm2022/slugify/src/slugify.pipe.mjs +3 -3
  226. package/esm2022/spinner/src/spinner.component.mjs +3 -3
  227. package/esm2022/split-string/src/split-string.pipe.mjs +3 -3
  228. package/esm2022/splitter/src/element-at/element-at.pipe.mjs +3 -3
  229. package/esm2022/splitter/src/split-panel/split-panel.component.mjs +3 -3
  230. package/esm2022/splitter/src/splitter/splitter.component.mjs +8 -9
  231. package/esm2022/splitter/src/splitter.module.mjs +6 -7
  232. package/esm2022/sticky-footer/src/sticky-footer/sticky-footer.component.mjs +3 -3
  233. package/esm2022/sticky-footer/src/sticky-footer-parent/sticky-footer-parent.directive.mjs +3 -3
  234. package/esm2022/sticky-footer/src/sticky-footer.module.mjs +4 -4
  235. package/esm2022/tab-control/src/tab-control/tab-control.component.mjs +7 -8
  236. package/esm2022/tab-control/src/tab-control.module.mjs +5 -8
  237. package/esm2022/tab-control/src/tab-page/tab-page.component.mjs +3 -3
  238. package/esm2022/tab-control/src/tab-page-header/tab-page-header.directive.mjs +3 -3
  239. package/esm2022/table/src/component/table.component.mjs +3 -3
  240. package/esm2022/timepicker/src/timepicker.component.mjs +3 -3
  241. package/esm2022/toast/src/components/toast/toast.component.mjs +3 -3
  242. package/esm2022/toast/src/components/toast-body/toast-body.component.mjs +3 -3
  243. package/esm2022/toast/src/components/toast-container/toast-container.component.mjs +3 -3
  244. package/esm2022/toast/src/components/toast-header/toast-header.component.mjs +3 -3
  245. package/esm2022/toast/src/directives/toast-close/toast-close.directive.mjs +3 -3
  246. package/esm2022/toast/src/pipes/add-properties.pipe.mjs +3 -3
  247. package/esm2022/toast/src/services/toast/toast.service.mjs +3 -3
  248. package/esm2022/toast/src/toast.module.mjs +4 -4
  249. package/esm2022/toggle-button/src/component/toggle-button.component.mjs +3 -3
  250. package/esm2022/toggle-button/src/directives/toggle-button-group/toggle-button-group.directive.mjs +3 -3
  251. package/esm2022/toggle-button/src/toggle-button.module.mjs +4 -4
  252. package/esm2022/toggle-button/src/value-accessor/toggle-button-value-accessor.mjs +3 -3
  253. package/esm2022/tooltip/src/component/tooltip.component.mjs +3 -3
  254. package/esm2022/tooltip/src/directive/tooltip.directive.mjs +3 -3
  255. package/esm2022/tooltip/src/tooltip.module.mjs +4 -4
  256. package/esm2022/treeview/src/treeview/treeview.component.mjs +3 -3
  257. package/esm2022/treeview/src/treeview-item/treeview-item.component.mjs +3 -3
  258. package/esm2022/treeview/src/treeview.module.mjs +4 -4
  259. package/esm2022/trust-html/src/trust-html.pipe.mjs +3 -3
  260. package/esm2022/typeahead/src/typeahead.component.mjs +3 -3
  261. package/esm2022/uc-first/src/uc-first.pipe.mjs +3 -3
  262. package/esm2022/user-agent/src/directive/user-agent.directive.mjs +3 -3
  263. package/esm2022/word-count/src/word-count.pipe.mjs +3 -3
  264. package/fesm2022/mintplayer-ng-bootstrap-accordion.mjs +13 -13
  265. package/fesm2022/mintplayer-ng-bootstrap-alert.mjs +10 -10
  266. package/fesm2022/mintplayer-ng-bootstrap-badge.mjs +3 -3
  267. package/fesm2022/mintplayer-ng-bootstrap-breadcrumb.mjs +10 -10
  268. package/fesm2022/mintplayer-ng-bootstrap-button-group.mjs +3 -3
  269. package/fesm2022/mintplayer-ng-bootstrap-button-type.mjs +3 -3
  270. package/fesm2022/mintplayer-ng-bootstrap-calendar-month.mjs +9 -9
  271. package/fesm2022/mintplayer-ng-bootstrap-calendar.mjs +4 -5
  272. package/fesm2022/mintplayer-ng-bootstrap-calendar.mjs.map +1 -1
  273. package/fesm2022/mintplayer-ng-bootstrap-card.mjs +10 -10
  274. package/fesm2022/mintplayer-ng-bootstrap-carousel.mjs +16 -20
  275. package/fesm2022/mintplayer-ng-bootstrap-carousel.mjs.map +1 -1
  276. package/fesm2022/mintplayer-ng-bootstrap-close.mjs +3 -3
  277. package/fesm2022/mintplayer-ng-bootstrap-code-snippet.mjs +3 -3
  278. package/fesm2022/mintplayer-ng-bootstrap-color-picker.mjs +30 -34
  279. package/fesm2022/mintplayer-ng-bootstrap-color-picker.mjs.map +1 -1
  280. package/fesm2022/mintplayer-ng-bootstrap-container.mjs +3 -3
  281. package/fesm2022/mintplayer-ng-bootstrap-context-menu.mjs +7 -7
  282. package/fesm2022/mintplayer-ng-bootstrap-copy.mjs +3 -3
  283. package/fesm2022/mintplayer-ng-bootstrap-datatable.mjs +13 -13
  284. package/fesm2022/mintplayer-ng-bootstrap-datepicker.mjs +3 -3
  285. package/fesm2022/mintplayer-ng-bootstrap-dock.mjs +19 -19
  286. package/fesm2022/mintplayer-ng-bootstrap-dropdown-divider.mjs +3 -3
  287. package/fesm2022/mintplayer-ng-bootstrap-dropdown-menu.mjs +10 -10
  288. package/fesm2022/mintplayer-ng-bootstrap-dropdown.mjs +13 -13
  289. package/fesm2022/mintplayer-ng-bootstrap-enhanced-paste.mjs +3 -3
  290. package/fesm2022/mintplayer-ng-bootstrap-enum.mjs +3 -3
  291. package/fesm2022/mintplayer-ng-bootstrap-file-upload.mjs +13 -13
  292. package/fesm2022/mintplayer-ng-bootstrap-floating-labels.mjs +3 -3
  293. package/fesm2022/mintplayer-ng-bootstrap-font-color.mjs +3 -3
  294. package/fesm2022/mintplayer-ng-bootstrap-for.mjs +3 -3
  295. package/fesm2022/mintplayer-ng-bootstrap-form.mjs +13 -13
  296. package/fesm2022/mintplayer-ng-bootstrap-grid.mjs +19 -19
  297. package/fesm2022/mintplayer-ng-bootstrap-has-overlay.mjs +3 -3
  298. package/fesm2022/mintplayer-ng-bootstrap-has-property.mjs +3 -3
  299. package/fesm2022/mintplayer-ng-bootstrap-in-list.mjs +3 -3
  300. package/fesm2022/mintplayer-ng-bootstrap-input-group.mjs +3 -3
  301. package/fesm2022/mintplayer-ng-bootstrap-instance-of.mjs +16 -16
  302. package/fesm2022/mintplayer-ng-bootstrap-let.mjs +3 -3
  303. package/fesm2022/mintplayer-ng-bootstrap-linify.mjs +3 -3
  304. package/fesm2022/mintplayer-ng-bootstrap-list-group.mjs +10 -10
  305. package/fesm2022/mintplayer-ng-bootstrap-markdown.mjs +12 -12
  306. package/fesm2022/mintplayer-ng-bootstrap-marquee.mjs +3 -3
  307. package/fesm2022/mintplayer-ng-bootstrap-modal.mjs +25 -25
  308. package/fesm2022/mintplayer-ng-bootstrap-multiselect.mjs +16 -16
  309. package/fesm2022/mintplayer-ng-bootstrap-navbar-toggler.mjs +3 -3
  310. package/fesm2022/mintplayer-ng-bootstrap-navbar.mjs +31 -31
  311. package/fesm2022/mintplayer-ng-bootstrap-navigation-lock.mjs +10 -10
  312. package/fesm2022/mintplayer-ng-bootstrap-no-noscript.mjs +3 -3
  313. package/fesm2022/mintplayer-ng-bootstrap-offcanvas.mjs +25 -25
  314. package/fesm2022/mintplayer-ng-bootstrap-ordinal-number.mjs +3 -3
  315. package/fesm2022/mintplayer-ng-bootstrap-pagination.mjs +3 -3
  316. package/fesm2022/mintplayer-ng-bootstrap-parallax.mjs +3 -3
  317. package/fesm2022/mintplayer-ng-bootstrap-placeholder.mjs +10 -10
  318. package/fesm2022/mintplayer-ng-bootstrap-playlist-toggler.mjs +3 -3
  319. package/fesm2022/mintplayer-ng-bootstrap-popover.mjs +16 -16
  320. package/fesm2022/mintplayer-ng-bootstrap-progress-bar.mjs +10 -10
  321. package/fesm2022/mintplayer-ng-bootstrap-range.mjs +10 -10
  322. package/fesm2022/mintplayer-ng-bootstrap-rating.mjs +3 -3
  323. package/fesm2022/mintplayer-ng-bootstrap-resizable.mjs +10 -10
  324. package/fesm2022/mintplayer-ng-bootstrap-scheduler.mjs +25 -25
  325. package/fesm2022/mintplayer-ng-bootstrap-scrollspy.mjs +13 -13
  326. package/fesm2022/mintplayer-ng-bootstrap-searchbox.mjs +22 -26
  327. package/fesm2022/mintplayer-ng-bootstrap-searchbox.mjs.map +1 -1
  328. package/fesm2022/mintplayer-ng-bootstrap-select.mjs +13 -13
  329. package/fesm2022/mintplayer-ng-bootstrap-select2.mjs +13 -13
  330. package/fesm2022/mintplayer-ng-bootstrap-shell.mjs +10 -10
  331. package/fesm2022/mintplayer-ng-bootstrap-signature-pad.mjs +3 -3
  332. package/fesm2022/mintplayer-ng-bootstrap-slugify.mjs +3 -3
  333. package/fesm2022/mintplayer-ng-bootstrap-spinner.mjs +3 -3
  334. package/fesm2022/mintplayer-ng-bootstrap-split-string.mjs +3 -3
  335. package/fesm2022/mintplayer-ng-bootstrap-splitter.mjs +17 -19
  336. package/fesm2022/mintplayer-ng-bootstrap-splitter.mjs.map +1 -1
  337. package/fesm2022/mintplayer-ng-bootstrap-sticky-footer.mjs +10 -10
  338. package/fesm2022/mintplayer-ng-bootstrap-tab-control.mjs +15 -19
  339. package/fesm2022/mintplayer-ng-bootstrap-tab-control.mjs.map +1 -1
  340. package/fesm2022/mintplayer-ng-bootstrap-table.mjs +3 -3
  341. package/fesm2022/mintplayer-ng-bootstrap-timepicker.mjs +3 -3
  342. package/fesm2022/mintplayer-ng-bootstrap-toast.mjs +25 -25
  343. package/fesm2022/mintplayer-ng-bootstrap-toggle-button.mjs +13 -13
  344. package/fesm2022/mintplayer-ng-bootstrap-tooltip.mjs +10 -10
  345. package/fesm2022/mintplayer-ng-bootstrap-treeview.mjs +10 -10
  346. package/fesm2022/mintplayer-ng-bootstrap-trust-html.mjs +3 -3
  347. package/fesm2022/mintplayer-ng-bootstrap-typeahead.mjs +3 -3
  348. package/fesm2022/mintplayer-ng-bootstrap-uc-first.mjs +3 -3
  349. package/fesm2022/mintplayer-ng-bootstrap-user-agent.mjs +3 -3
  350. package/fesm2022/mintplayer-ng-bootstrap-word-count.mjs +3 -3
  351. package/font-color/index.d.ts +1 -0
  352. package/font-color/src/font-color.pipe.d.ts +1 -0
  353. package/for/index.d.ts +1 -0
  354. package/for/src/for.directive.d.ts +1 -0
  355. package/for/src/index.d.ts +1 -0
  356. package/has-id/index.d.ts +1 -0
  357. package/has-id/src/has-id.d.ts +1 -0
  358. package/has-property/index.d.ts +1 -0
  359. package/has-property/src/has-property.pipe.d.ts +1 -0
  360. package/has-property/src/index.d.ts +1 -0
  361. package/in-list/index.d.ts +1 -0
  362. package/in-list/src/in-list.pipe.d.ts +1 -0
  363. package/index.d.ts +1 -0
  364. package/instance-of/index.d.ts +1 -0
  365. package/instance-of/src/directives/index.d.ts +1 -0
  366. package/instance-of/src/directives/instanceof-case.directive.d.ts +1 -0
  367. package/instance-of/src/directives/instanceof-default.directive.d.ts +1 -0
  368. package/instance-of/src/directives/instanceof.directive.d.ts +1 -0
  369. package/instance-of/src/directives/switch-view.d.ts +1 -0
  370. package/instance-of/src/index.d.ts +1 -0
  371. package/instance-of/src/instance-of.module.d.ts +1 -0
  372. package/instance-of/src/interfaces/index.d.ts +1 -0
  373. package/instance-of/src/interfaces/instance-of-context.d.ts +1 -0
  374. package/instance-of/src/pipes/index.d.ts +1 -0
  375. package/instance-of/src/pipes/instance-of.pipe.d.ts +1 -0
  376. package/instance-of/src/types/abstract.type.d.ts +1 -0
  377. package/instance-of/src/types/index.d.ts +1 -0
  378. package/let/directive/let.directive.d.ts +1 -0
  379. package/let/index.d.ts +1 -0
  380. package/let/interfaces/index.d.ts +1 -0
  381. package/let/interfaces/let-context.d.ts +1 -0
  382. package/lib/enums/color.enum.d.ts +1 -0
  383. package/lib/enums/index.d.ts +1 -0
  384. package/lib/providers/development.provider.d.ts +1 -0
  385. package/lib/providers/index.d.ts +1 -0
  386. package/lib/types/breakpoint.d.ts +1 -0
  387. package/lib/types/index.d.ts +1 -0
  388. package/lib/types/position.d.ts +1 -0
  389. package/lib/types/size.d.ts +1 -0
  390. package/linify/index.d.ts +1 -0
  391. package/linify/src/linify.pipe.d.ts +1 -0
  392. package/markdown/index.d.ts +1 -0
  393. package/markdown/src/bold/bold.pipe.d.ts +1 -0
  394. package/markdown/src/italic/italic.pipe.d.ts +1 -0
  395. package/markdown/src/strikethrough/strikethrough.pipe.d.ts +1 -0
  396. package/markdown/src/underline/underline.pipe.d.ts +1 -0
  397. package/navigation-lock/index.d.ts +1 -0
  398. package/navigation-lock/src/directive/navigation-lock.directive.d.ts +1 -0
  399. package/navigation-lock/src/guard/navigation-lock.guard.d.ts +1 -0
  400. package/navigation-lock/src/index.d.ts +1 -0
  401. package/navigation-lock/src/interface/has-navigation-lock.d.ts +1 -0
  402. package/navigation-lock/src/navigation-lock.module.d.ts +1 -0
  403. package/no-noscript/index.d.ts +1 -0
  404. package/no-noscript/src/index.d.ts +1 -0
  405. package/no-noscript/src/no-noscript/no-noscript.directive.d.ts +1 -0
  406. package/ordinal-number/index.d.ts +1 -0
  407. package/ordinal-number/src/index.d.ts +1 -0
  408. package/ordinal-number/src/ordinal-number/ordinal-number.pipe.d.ts +1 -0
  409. package/package.json +1 -1
  410. package/searchbox/src/searchbox.module.d.ts +6 -7
  411. package/slugify/index.d.ts +1 -0
  412. package/slugify/src/slugify.pipe.d.ts +1 -0
  413. package/split-string/index.d.ts +1 -0
  414. package/split-string/src/split-string.pipe.d.ts +1 -0
  415. package/splitter/src/splitter.module.d.ts +2 -3
  416. package/tab-control/src/tab-control.module.d.ts +2 -3
  417. package/trust-html/index.d.ts +1 -0
  418. package/trust-html/src/trust-html.pipe.d.ts +1 -0
  419. package/uc-first/index.d.ts +1 -0
  420. package/uc-first/src/uc-first.pipe.d.ts +1 -0
  421. package/user-agent/index.d.ts +1 -0
  422. package/user-agent/src/directive/index.d.ts +1 -0
  423. package/user-agent/src/directive/user-agent.directive.d.ts +1 -0
  424. package/user-agent/src/index.d.ts +1 -0
  425. package/user-agent/src/interfaces/index.d.ts +1 -0
  426. package/user-agent/src/interfaces/user-agent.d.ts +1 -0
  427. package/user-agent/src/types/index.d.ts +1 -0
  428. package/user-agent/src/types/operating-system.type.d.ts +1 -0
  429. package/user-agent/src/types/webbrowser.type.d.ts +1 -0
  430. package/word-count/index.d.ts +1 -0
  431. package/word-count/src/word-count.pipe.d.ts +1 -0
@@ -10,10 +10,10 @@ class BsCloseComponent {
10
10
  this.click.emit();
11
11
  ev.stopImmediatePropagation();
12
12
  }
13
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsCloseComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: BsCloseComponent, isStandalone: true, selector: "bs-close", outputs: { click: "click" }, ngImport: i0, template: "<button type=\"button\" (click)=\"onClose($event)\" class=\"btn-close\" aria-label=\"Close\"></button>", styles: [":host ::ng-deep .btn-close{--bs-btn-close-color: #000;--bs-btn-close-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e\");--bs-btn-close-opacity: .5;--bs-btn-close-hover-opacity: .75;--bs-btn-close-focus-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);--bs-btn-close-focus-opacity: 1;--bs-btn-close-disabled-opacity: .25;--bs-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);box-sizing:content-box;width:1em;height:1em;padding:.25em;color:var(--bs-btn-close-color);background:transparent var(--bs-btn-close-bg) center/1em auto no-repeat;border:0;border-radius:.375rem;opacity:var(--bs-btn-close-opacity)}:host ::ng-deep .btn-close:hover{color:var(--bs-btn-close-color);text-decoration:none;opacity:var(--bs-btn-close-hover-opacity)}:host ::ng-deep .btn-close:focus{outline:0;box-shadow:var(--bs-btn-close-focus-shadow);opacity:var(--bs-btn-close-focus-opacity)}:host ::ng-deep .btn-close:disabled,:host ::ng-deep .btn-close.disabled{pointer-events:none;-webkit-user-select:none;user-select:none;opacity:var(--bs-btn-close-disabled-opacity)}:host ::ng-deep .btn-close-white{filter:var(--bs-btn-close-white-filter)}:host ::ng-deep [data-bs-theme=dark] .btn-close{filter:var(--bs-btn-close-white-filter)}\n"] }); }
13
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsCloseComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.0", type: BsCloseComponent, isStandalone: true, selector: "bs-close", outputs: { click: "click" }, ngImport: i0, template: "<button type=\"button\" (click)=\"onClose($event)\" class=\"btn-close\" aria-label=\"Close\"></button>", styles: [":host ::ng-deep .btn-close{--bs-btn-close-color: #000;--bs-btn-close-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e\");--bs-btn-close-opacity: .5;--bs-btn-close-hover-opacity: .75;--bs-btn-close-focus-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);--bs-btn-close-focus-opacity: 1;--bs-btn-close-disabled-opacity: .25;--bs-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);box-sizing:content-box;width:1em;height:1em;padding:.25em;color:var(--bs-btn-close-color);background:transparent var(--bs-btn-close-bg) center/1em auto no-repeat;border:0;border-radius:.375rem;opacity:var(--bs-btn-close-opacity)}:host ::ng-deep .btn-close:hover{color:var(--bs-btn-close-color);text-decoration:none;opacity:var(--bs-btn-close-hover-opacity)}:host ::ng-deep .btn-close:focus{outline:0;box-shadow:var(--bs-btn-close-focus-shadow);opacity:var(--bs-btn-close-focus-opacity)}:host ::ng-deep .btn-close:disabled,:host ::ng-deep .btn-close.disabled{pointer-events:none;-webkit-user-select:none;user-select:none;opacity:var(--bs-btn-close-disabled-opacity)}:host ::ng-deep .btn-close-white{filter:var(--bs-btn-close-white-filter)}:host ::ng-deep [data-bs-theme=dark] .btn-close{filter:var(--bs-btn-close-white-filter)}\n"] }); }
15
15
  }
16
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsCloseComponent, decorators: [{
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsCloseComponent, decorators: [{
17
17
  type: Component,
18
18
  args: [{ selector: 'bs-close', standalone: true, template: "<button type=\"button\" (click)=\"onClose($event)\" class=\"btn-close\" aria-label=\"Close\"></button>", styles: [":host ::ng-deep .btn-close{--bs-btn-close-color: #000;--bs-btn-close-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e\");--bs-btn-close-opacity: .5;--bs-btn-close-hover-opacity: .75;--bs-btn-close-focus-shadow: 0 0 0 .25rem rgba(13, 110, 253, .25);--bs-btn-close-focus-opacity: 1;--bs-btn-close-disabled-opacity: .25;--bs-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);box-sizing:content-box;width:1em;height:1em;padding:.25em;color:var(--bs-btn-close-color);background:transparent var(--bs-btn-close-bg) center/1em auto no-repeat;border:0;border-radius:.375rem;opacity:var(--bs-btn-close-opacity)}:host ::ng-deep .btn-close:hover{color:var(--bs-btn-close-color);text-decoration:none;opacity:var(--bs-btn-close-hover-opacity)}:host ::ng-deep .btn-close:focus{outline:0;box-shadow:var(--bs-btn-close-focus-shadow);opacity:var(--bs-btn-close-focus-opacity)}:host ::ng-deep .btn-close:disabled,:host ::ng-deep .btn-close.disabled{pointer-events:none;-webkit-user-select:none;user-select:none;opacity:var(--bs-btn-close-disabled-opacity)}:host ::ng-deep .btn-close-white{filter:var(--bs-btn-close-white-filter)}:host ::ng-deep [data-bs-theme=dark] .btn-close{filter:var(--bs-btn-close-white-filter)}\n"] }]
19
19
  }], ctorParameters: () => [], propDecorators: { click: [{
@@ -27,10 +27,10 @@ class BsCodeSnippetComponent {
27
27
  onHighlighted(result) {
28
28
  this.language$.next(result.language ?? 'code');
29
29
  }
30
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsCodeSnippetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
31
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: BsCodeSnippetComponent, isStandalone: true, selector: "bs-code-snippet", inputs: { codeToCopy: "codeToCopy", languages: "languages", lineNumbers: "lineNumbers" }, outputs: { detectedLanguage: "detectedLanguage" }, viewQueries: [{ propertyName: "copiedTemplate", first: true, predicate: ["copiedTemplate"], descendants: true }], ngImport: i0, template: "<div class=\"position-relative\">\n <button #copyBtn [bsCopy]=\"codeToCopy\" (bsCopied)=\"copiedHtml()\" class=\"btn btn-link rounded-0 text-light position-absolute copy-btn\">\n Copy {{ language$ | async }}\n </button>\n <pre class=\"white-space-normal\">\n <code class=\"d-block white-space-pre\" [highlight]=\"codeToCopy\" [lineNumbers]=\"lineNumbers\" [languages]=\"languages ?? undefined!\" (highlighted)=\"onHighlighted($event)\"></code>\n </pre>\n <bs-offcanvas [(isVisible)]=\"offcanvasVisible\" [position]=\"'bottom'\">\n <div *bsOffcanvasContent class=\"p-3 bg-dark text-light\">Copied!</div>\n </bs-offcanvas>\n</div>", styles: [".copy-btn{right:0}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: BsCopyDirective, selector: "[bsCopy]", inputs: ["bsCopy"], outputs: ["bsCopied"] }, { kind: "ngmodule", type: BsOffcanvasModule }, { kind: "directive", type: i1.BsOffcanvasContentDirective, selector: "[bsOffcanvasContent]" }, { kind: "component", type: i1.BsOffcanvasHostComponent, selector: "bs-offcanvas", inputs: ["isVisible", "position", "size", "hasBackdrop"], outputs: ["backdropClick", "isVisibleChange"] }, { kind: "ngmodule", type: HighlightModule }, { kind: "directive", type: i2.Highlight, selector: "[highlight]", inputs: ["highlight", "languages", "lineNumbers"], outputs: ["highlighted"] }] }); }
30
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsCodeSnippetComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
31
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.0", type: BsCodeSnippetComponent, isStandalone: true, selector: "bs-code-snippet", inputs: { codeToCopy: "codeToCopy", languages: "languages", lineNumbers: "lineNumbers" }, outputs: { detectedLanguage: "detectedLanguage" }, viewQueries: [{ propertyName: "copiedTemplate", first: true, predicate: ["copiedTemplate"], descendants: true }], ngImport: i0, template: "<div class=\"position-relative\">\n <button #copyBtn [bsCopy]=\"codeToCopy\" (bsCopied)=\"copiedHtml()\" class=\"btn btn-link rounded-0 text-light position-absolute copy-btn\">\n Copy {{ language$ | async }}\n </button>\n <pre class=\"white-space-normal\">\n <code class=\"d-block white-space-pre\" [highlight]=\"codeToCopy\" [lineNumbers]=\"lineNumbers\" [languages]=\"languages ?? undefined!\" (highlighted)=\"onHighlighted($event)\"></code>\n </pre>\n <bs-offcanvas [(isVisible)]=\"offcanvasVisible\" [position]=\"'bottom'\">\n <div *bsOffcanvasContent class=\"p-3 bg-dark text-light\">Copied!</div>\n </bs-offcanvas>\n</div>", styles: [".copy-btn{right:0}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "directive", type: BsCopyDirective, selector: "[bsCopy]", inputs: ["bsCopy"], outputs: ["bsCopied"] }, { kind: "ngmodule", type: BsOffcanvasModule }, { kind: "directive", type: i1.BsOffcanvasContentDirective, selector: "[bsOffcanvasContent]" }, { kind: "component", type: i1.BsOffcanvasHostComponent, selector: "bs-offcanvas", inputs: ["isVisible", "position", "size", "hasBackdrop"], outputs: ["backdropClick", "isVisibleChange"] }, { kind: "ngmodule", type: HighlightModule }, { kind: "directive", type: i2.Highlight, selector: "[highlight]", inputs: ["highlight", "languages", "lineNumbers"], outputs: ["highlighted"] }] }); }
32
32
  }
33
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsCodeSnippetComponent, decorators: [{
33
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsCodeSnippetComponent, decorators: [{
34
34
  type: Component,
35
35
  args: [{ selector: 'bs-code-snippet', standalone: true, imports: [AsyncPipe, BsCopyDirective, BsOffcanvasModule, HighlightModule], template: "<div class=\"position-relative\">\n <button #copyBtn [bsCopy]=\"codeToCopy\" (bsCopied)=\"copiedHtml()\" class=\"btn btn-link rounded-0 text-light position-absolute copy-btn\">\n Copy {{ language$ | async }}\n </button>\n <pre class=\"white-space-normal\">\n <code class=\"d-block white-space-pre\" [highlight]=\"codeToCopy\" [lineNumbers]=\"lineNumbers\" [languages]=\"languages ?? undefined!\" (highlighted)=\"onHighlighted($event)\"></code>\n </pre>\n <bs-offcanvas [(isVisible)]=\"offcanvasVisible\" [position]=\"'bottom'\">\n <div *bsOffcanvasContent class=\"p-3 bg-dark text-light\">Copied!</div>\n </bs-offcanvas>\n</div>", styles: [".copy-btn{right:0}\n"] }]
36
36
  }], ctorParameters: () => [], propDecorators: { codeToCopy: [{
@@ -3,8 +3,6 @@ import { EventEmitter, Component, HostBinding, Input, ViewChild, Output, HostLis
3
3
  import * as i1 from '@angular/common';
4
4
  import { AsyncPipe } from '@angular/common';
5
5
  import { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';
6
- import * as i1$1 from '@mintplayer/ng-bootstrap/let';
7
- import { BsLetDirective } from '@mintplayer/ng-bootstrap/let';
8
6
  import { BehaviorSubject, combineLatest, map, debounceTime, switchMap, take } from 'rxjs';
9
7
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
10
8
 
@@ -292,10 +290,10 @@ class BsColorWheelComponent {
292
290
  return (n % max) / max;
293
291
  }
294
292
  }
295
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsColorWheelComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
296
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.1", type: BsColorWheelComponent, selector: "bs-color-wheel", inputs: { diameterRatio: "diameterRatio", width: "width", height: "height", hs: "hs", luminosity: "luminosity" }, outputs: { hsChange: "hsChange" }, host: { listeners: { "document:mousemove": "onMouseMove($event)", "document:mouseup": "onPointerUp($event)" }, properties: { "class.position-relative": "this.positionRelative" } }, viewQueries: [{ propertyName: "canvas", first: true, predicate: ["canvas"], descendants: true }], ngImport: i0, template: "<canvas\n class=\"d-block\"\n [width]=\"width$ | async\"\n [height]=\"height$ | async\"\n (mousedown)=\"onPointerDown($event)\"\n (touchstart)=\"onPointerDown($event)\"\n (touchmove)=\"onPointerMove($event)\"\n (touchend)=\"onPointerUp($event)\"\n #canvas></canvas>\n\n@if (markerPosition$ | async; as markerPosition) {\n <div class=\"thumb position-absolute pe-none\" [style.left.px]=\"markerPosition.x\" [style.top.px]=\"markerPosition.y\"></div>\n}", styles: [".thumb{width:30px;height:30px;border-radius:15px;margin-top:-15px;margin-left:-15px;box-sizing:border-box;border:2px solid white;box-shadow:#0000001a 0 0 10px 5px}\n"], dependencies: [{ kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
293
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsColorWheelComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }
294
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.0", type: BsColorWheelComponent, selector: "bs-color-wheel", inputs: { diameterRatio: "diameterRatio", width: "width", height: "height", hs: "hs", luminosity: "luminosity" }, outputs: { hsChange: "hsChange" }, host: { listeners: { "document:mousemove": "onMouseMove($event)", "document:mouseup": "onPointerUp($event)" }, properties: { "class.position-relative": "this.positionRelative" } }, viewQueries: [{ propertyName: "canvas", first: true, predicate: ["canvas"], descendants: true }], ngImport: i0, template: "<canvas\n class=\"d-block\"\n [width]=\"width$ | async\"\n [height]=\"height$ | async\"\n (mousedown)=\"onPointerDown($event)\"\n (touchstart)=\"onPointerDown($event)\"\n (touchmove)=\"onPointerMove($event)\"\n (touchend)=\"onPointerUp($event)\"\n #canvas></canvas>\n\n@if (markerPosition$ | async; as markerPosition) {\n <div class=\"thumb position-absolute pe-none\" [style.left.px]=\"markerPosition.x\" [style.top.px]=\"markerPosition.y\"></div>\n}", styles: [".thumb{width:30px;height:30px;border-radius:15px;margin-top:-15px;margin-left:-15px;box-sizing:border-box;border:2px solid white;box-shadow:#0000001a 0 0 10px 5px}\n"], dependencies: [{ kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
297
295
  }
298
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsColorWheelComponent, decorators: [{
296
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsColorWheelComponent, decorators: [{
299
297
  type: Component,
300
298
  args: [{ selector: 'bs-color-wheel', template: "<canvas\n class=\"d-block\"\n [width]=\"width$ | async\"\n [height]=\"height$ | async\"\n (mousedown)=\"onPointerDown($event)\"\n (touchstart)=\"onPointerDown($event)\"\n (touchmove)=\"onPointerMove($event)\"\n (touchend)=\"onPointerUp($event)\"\n #canvas></canvas>\n\n@if (markerPosition$ | async; as markerPosition) {\n <div class=\"thumb position-absolute pe-none\" [style.left.px]=\"markerPosition.x\" [style.top.px]=\"markerPosition.y\"></div>\n}", styles: [".thumb{width:30px;height:30px;border-radius:15px;margin-top:-15px;margin-left:-15px;box-sizing:border-box;border:2px solid white;box-shadow:#0000001a 0 0 10px 5px}\n"] }]
301
299
  }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { positionRelative: [{
@@ -383,10 +381,10 @@ class BsSliderComponent {
383
381
  const limited = Math.max(0, Math.min(1, percent));
384
382
  this.value$.next(limited);
385
383
  }
386
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsSliderComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
387
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: BsSliderComponent, selector: "bs-slider", inputs: { value: "value" }, outputs: { valueChange: "valueChange" }, host: { listeners: { "document:mousemove": "onPointerMove($event)", "document:mouseup": "onPointerUp($event)" }, properties: { "class.d-block": "this.dBlock", "class.position-relative": "this.positionRelative" } }, viewQueries: [{ propertyName: "track", first: true, predicate: ["track"], descendants: true }, { propertyName: "thumb", first: true, predicate: ["thumb"], descendants: true }], ngImport: i0, template: "<div class=\"wrapper d-block position-relative\">\n <div #track class=\"track2\"\n (mousedown)=\"onPointerDown($event)\"\n (touchstart)=\"onPointerDown($event)\"\n (touchmove)=\"onPointerMove($event)\"\n (touchend)=\"onPointerUp($event)\">\n <ng-content select=\"[bsTrack]\"></ng-content>\n </div>\n <div #thumb\n (mousedown)=\"onPointerDown($event)\"\n (touchstart)=\"onPointerDown($event)\"\n (touchmove)=\"onPointerMove($event)\"\n (touchend)=\"onPointerUp($event)\"\n [class]=\"cursorClass$ | async\"\n [style.margin-left.px]=\"thumbMarginLeft$ | async\">\n <ng-content select=\"[bsThumb]\"></ng-content>\n </div>\n</div>", styles: [".track2{height:8px}.wrapper{padding-top:8px;padding-bottom:8px}::ng-deep .thumb{width:24px;height:24px;top:0;border-radius:50%;box-shadow:0 0 0 .1rem #646b7240}::ng-deep .track{height:8px;border-radius:8px}\n"], dependencies: [{ kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
384
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsSliderComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }
385
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.0", type: BsSliderComponent, selector: "bs-slider", inputs: { value: "value" }, outputs: { valueChange: "valueChange" }, host: { listeners: { "document:mousemove": "onPointerMove($event)", "document:mouseup": "onPointerUp($event)" }, properties: { "class.d-block": "this.dBlock", "class.position-relative": "this.positionRelative" } }, viewQueries: [{ propertyName: "track", first: true, predicate: ["track"], descendants: true }, { propertyName: "thumb", first: true, predicate: ["thumb"], descendants: true }], ngImport: i0, template: "<div class=\"wrapper d-block position-relative\">\n <div #track class=\"track2\"\n (mousedown)=\"onPointerDown($event)\"\n (touchstart)=\"onPointerDown($event)\"\n (touchmove)=\"onPointerMove($event)\"\n (touchend)=\"onPointerUp($event)\">\n <ng-content select=\"[bsTrack]\"></ng-content>\n </div>\n <div #thumb\n (mousedown)=\"onPointerDown($event)\"\n (touchstart)=\"onPointerDown($event)\"\n (touchmove)=\"onPointerMove($event)\"\n (touchend)=\"onPointerUp($event)\"\n [class]=\"cursorClass$ | async\"\n [style.margin-left.px]=\"thumbMarginLeft$ | async\">\n <ng-content select=\"[bsThumb]\"></ng-content>\n </div>\n</div>", styles: [".track2{height:8px}.wrapper{padding-top:8px;padding-bottom:8px}::ng-deep .thumb{width:24px;height:24px;top:0;border-radius:50%;box-shadow:0 0 0 .1rem #646b7240}::ng-deep .track{height:8px;border-radius:8px}\n"], dependencies: [{ kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
388
386
  }
389
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsSliderComponent, decorators: [{
387
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsSliderComponent, decorators: [{
390
388
  type: Component,
391
389
  args: [{ selector: 'bs-slider', template: "<div class=\"wrapper d-block position-relative\">\n <div #track class=\"track2\"\n (mousedown)=\"onPointerDown($event)\"\n (touchstart)=\"onPointerDown($event)\"\n (touchmove)=\"onPointerMove($event)\"\n (touchend)=\"onPointerUp($event)\">\n <ng-content select=\"[bsTrack]\"></ng-content>\n </div>\n <div #thumb\n (mousedown)=\"onPointerDown($event)\"\n (touchstart)=\"onPointerDown($event)\"\n (touchmove)=\"onPointerMove($event)\"\n (touchend)=\"onPointerUp($event)\"\n [class]=\"cursorClass$ | async\"\n [style.margin-left.px]=\"thumbMarginLeft$ | async\">\n <ng-content select=\"[bsThumb]\"></ng-content>\n </div>\n</div>", styles: [".track2{height:8px}.wrapper{padding-top:8px;padding-bottom:8px}::ng-deep .thumb{width:24px;height:24px;top:0;border-radius:50%;box-shadow:0 0 0 .1rem #646b7240}::ng-deep .track{height:8px;border-radius:8px}\n"] }]
392
390
  }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { dBlock: [{
@@ -416,10 +414,10 @@ class BsThumbDirective {
416
414
  constructor() {
417
415
  this.thumbClass = true;
418
416
  }
419
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsThumbDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
420
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.1", type: BsThumbDirective, selector: "[bsThumb]", host: { properties: { "class.thumb": "this.thumbClass", "class.position-absolute": "this.thumbClass" } }, ngImport: i0 }); }
417
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsThumbDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
418
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.0", type: BsThumbDirective, selector: "[bsThumb]", host: { properties: { "class.thumb": "this.thumbClass", "class.position-absolute": "this.thumbClass" } }, ngImport: i0 }); }
421
419
  }
422
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsThumbDirective, decorators: [{
420
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsThumbDirective, decorators: [{
423
421
  type: Directive,
424
422
  args: [{ selector: '[bsThumb]' }]
425
423
  }], propDecorators: { thumbClass: [{
@@ -433,10 +431,10 @@ class BsTrackDirective {
433
431
  constructor() {
434
432
  this.trackClass = true;
435
433
  }
436
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsTrackDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
437
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.1", type: BsTrackDirective, selector: "[bsTrack]", host: { properties: { "class.track": "this.trackClass" } }, ngImport: i0 }); }
434
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsTrackDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
435
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.0", type: BsTrackDirective, selector: "[bsTrack]", host: { properties: { "class.track": "this.trackClass" } }, ngImport: i0 }); }
438
436
  }
439
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsTrackDirective, decorators: [{
437
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsTrackDirective, decorators: [{
440
438
  type: Directive,
441
439
  args: [{ selector: '[bsTrack]' }]
442
440
  }], propDecorators: { trackClass: [{
@@ -493,10 +491,10 @@ class BsLuminosityStripComponent {
493
491
  ngAfterViewInit() {
494
492
  this.canvasContext = this.canvas.nativeElement.getContext('2d', { willReadFrequently: true });
495
493
  }
496
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsLuminosityStripComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
497
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: BsLuminosityStripComponent, selector: "bs-luminosity-strip", inputs: { hs: "hs", luminosity: "luminosity" }, outputs: { luminosityChange: "luminosityChange" }, viewQueries: [{ propertyName: "canvas", first: true, predicate: ["canvas"], descendants: true }], ngImport: i0, template: "<bs-slider [value]=\"(luminosity$ | async)!\" (valueChange)=\"luminosityChange.emit($event)\">\n <canvas bsTrack class=\"position-absolute w-100\" #canvas></canvas>\n <div bsThumb [style.background]=\"resultBackground$ | async\"></div>\n</bs-slider>", styles: [""], dependencies: [{ kind: "component", type: BsSliderComponent, selector: "bs-slider", inputs: ["value"], outputs: ["valueChange"] }, { kind: "directive", type: BsThumbDirective, selector: "[bsThumb]" }, { kind: "directive", type: BsTrackDirective, selector: "[bsTrack]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
494
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsLuminosityStripComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
495
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.0", type: BsLuminosityStripComponent, selector: "bs-luminosity-strip", inputs: { hs: "hs", luminosity: "luminosity" }, outputs: { luminosityChange: "luminosityChange" }, viewQueries: [{ propertyName: "canvas", first: true, predicate: ["canvas"], descendants: true }], ngImport: i0, template: "<bs-slider [value]=\"(luminosity$ | async)!\" (valueChange)=\"luminosityChange.emit($event)\">\n <canvas bsTrack class=\"position-absolute w-100\" #canvas></canvas>\n <div bsThumb [style.background]=\"resultBackground$ | async\"></div>\n</bs-slider>", styles: [""], dependencies: [{ kind: "component", type: BsSliderComponent, selector: "bs-slider", inputs: ["value"], outputs: ["valueChange"] }, { kind: "directive", type: BsThumbDirective, selector: "[bsThumb]" }, { kind: "directive", type: BsTrackDirective, selector: "[bsTrack]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
498
496
  }
499
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsLuminosityStripComponent, decorators: [{
497
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsLuminosityStripComponent, decorators: [{
500
498
  type: Component,
501
499
  args: [{ selector: 'bs-luminosity-strip', template: "<bs-slider [value]=\"(luminosity$ | async)!\" (valueChange)=\"luminosityChange.emit($event)\">\n <canvas bsTrack class=\"position-absolute w-100\" #canvas></canvas>\n <div bsThumb [style.background]=\"resultBackground$ | async\"></div>\n</bs-slider>" }]
502
500
  }], ctorParameters: () => [], propDecorators: { hs: [{
@@ -565,10 +563,10 @@ class BsAlphaStripComponent {
565
563
  ngAfterViewInit() {
566
564
  this.canvasContext = this.canvas.nativeElement.getContext('2d', { willReadFrequently: true });
567
565
  }
568
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsAlphaStripComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
569
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: BsAlphaStripComponent, selector: "bs-alpha-strip", inputs: { hs: "hs", luminosity: "luminosity", alpha: "alpha" }, outputs: { alphaChange: "alphaChange" }, viewQueries: [{ propertyName: "canvas", first: true, predicate: ["track"], descendants: true }], ngImport: i0, template: "<bs-slider [value]=\"(alpha$ | async)!\" (valueChange)=\"alphaChange.emit($event)\">\n <canvas bsTrack class=\" track position-absolute w-100\" #track></canvas>\n\n <!-- [style.background]=\"resultBackground$ | async\" -->\n <div bsThumb [style.background]=\"resultBackground$ | async\"></div>\n</bs-slider>", styles: [".track{background-image:linear-gradient(45deg,#C0C0C0 25%,transparent 25%),linear-gradient(-45deg,#C0C0C0 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#C0C0C0 75%),linear-gradient(-45deg,transparent 75%,#C0C0C0 75%);background-size:10px 10px;background-position:0 0,0 5px,5px -5px,-5px 0px}\n"], dependencies: [{ kind: "component", type: BsSliderComponent, selector: "bs-slider", inputs: ["value"], outputs: ["valueChange"] }, { kind: "directive", type: BsThumbDirective, selector: "[bsThumb]" }, { kind: "directive", type: BsTrackDirective, selector: "[bsTrack]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
566
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsAlphaStripComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
567
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.0", type: BsAlphaStripComponent, selector: "bs-alpha-strip", inputs: { hs: "hs", luminosity: "luminosity", alpha: "alpha" }, outputs: { alphaChange: "alphaChange" }, viewQueries: [{ propertyName: "canvas", first: true, predicate: ["track"], descendants: true }], ngImport: i0, template: "<bs-slider [value]=\"(alpha$ | async)!\" (valueChange)=\"alphaChange.emit($event)\">\n <canvas bsTrack class=\" track position-absolute w-100\" #track></canvas>\n\n <!-- [style.background]=\"resultBackground$ | async\" -->\n <div bsThumb [style.background]=\"resultBackground$ | async\"></div>\n</bs-slider>", styles: [".track{background-image:linear-gradient(45deg,#C0C0C0 25%,transparent 25%),linear-gradient(-45deg,#C0C0C0 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#C0C0C0 75%),linear-gradient(-45deg,transparent 75%,#C0C0C0 75%);background-size:10px 10px;background-position:0 0,0 5px,5px -5px,-5px 0px}\n"], dependencies: [{ kind: "component", type: BsSliderComponent, selector: "bs-slider", inputs: ["value"], outputs: ["valueChange"] }, { kind: "directive", type: BsThumbDirective, selector: "[bsThumb]" }, { kind: "directive", type: BsTrackDirective, selector: "[bsTrack]" }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
570
568
  }
571
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsAlphaStripComponent, decorators: [{
569
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsAlphaStripComponent, decorators: [{
572
570
  type: Component,
573
571
  args: [{ selector: 'bs-alpha-strip', template: "<bs-slider [value]=\"(alpha$ | async)!\" (valueChange)=\"alphaChange.emit($event)\">\n <canvas bsTrack class=\" track position-absolute w-100\" #track></canvas>\n\n <!-- [style.background]=\"resultBackground$ | async\" -->\n <div bsThumb [style.background]=\"resultBackground$ | async\"></div>\n</bs-slider>", styles: [".track{background-image:linear-gradient(45deg,#C0C0C0 25%,transparent 25%),linear-gradient(-45deg,#C0C0C0 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#C0C0C0 75%),linear-gradient(-45deg,transparent 75%,#C0C0C0 75%);background-size:10px 10px;background-position:0 0,0 5px,5px -5px,-5px 0px}\n"] }]
574
572
  }], ctorParameters: () => [], propDecorators: { hs: [{
@@ -609,12 +607,12 @@ class BsColorPickerComponent {
609
607
  set alpha(value) {
610
608
  this.alpha$.next(value);
611
609
  }
612
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsColorPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
613
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.0.1", type: BsColorPickerComponent, selector: "bs-color-picker", inputs: { size: "size", allowAlpha: "allowAlpha", alpha: "alpha" }, outputs: { alphaChange: "alphaChange" }, viewQueries: [{ propertyName: "colorWheel", first: true, predicate: ["wheel"], descendants: true }], ngImport: i0, template: "<ng-container *bsLet=\"(disabled$ | async)!; let letDisabled\">\n <ng-container *bsLet=\"(hs$ | async)!; let letHS\">\n <ng-container *bsLet=\"(luminosity$ | async)!; let letLuminosity\">\n <ng-container *bsLet=\"(alpha$ | async)!; let letAlpha\">\n <bs-color-wheel [hs]=\"letHS\" (hsChange)=\"hs$.next($event)\" [luminosity]=\"letLuminosity\" [width]=\"(size$ | async) ?? 150\" [height]=\"(size$ | async) ?? 150\" #wheel></bs-color-wheel>\n <bs-luminosity-strip [hs]=\"letHS\" [luminosity]=\"letLuminosity\" (luminosityChange)=\"luminosity$.next($event)\" class=\"d-block mt-2\" [style.width.px]=\"size$ | async\" #strip></bs-luminosity-strip>\n @if (allowAlpha$ | async) {\n <bs-alpha-strip [hs]=\"letHS\" [luminosity]=\"letLuminosity\" [alpha]=\"letAlpha\" (alphaChange)=\"alpha$.next($event)\" class=\"d-block mt-2\" [style.width.px]=\"size$ | async\" #alpha></bs-alpha-strip>\n }\n </ng-container>\n </ng-container>\n </ng-container>\n</ng-container>", styles: [""], dependencies: [{ kind: "directive", type: i1$1.BsLetDirective, selector: "[bsLet]", inputs: ["bsLet"] }, { kind: "component", type: BsColorWheelComponent, selector: "bs-color-wheel", inputs: ["diameterRatio", "width", "height", "hs", "luminosity"], outputs: ["hsChange"] }, { kind: "component", type: BsLuminosityStripComponent, selector: "bs-luminosity-strip", inputs: ["hs", "luminosity"], outputs: ["luminosityChange"] }, { kind: "component", type: BsAlphaStripComponent, selector: "bs-alpha-strip", inputs: ["hs", "luminosity", "alpha"], outputs: ["alphaChange"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
610
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsColorPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
611
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.0", type: BsColorPickerComponent, selector: "bs-color-picker", inputs: { size: "size", allowAlpha: "allowAlpha", alpha: "alpha" }, outputs: { alphaChange: "alphaChange" }, viewQueries: [{ propertyName: "colorWheel", first: true, predicate: ["wheel"], descendants: true }], ngImport: i0, template: "@let letDisabled = (disabled$ | async)!;\n@let letHS = (hs$ | async)!;\n@let letLuminosity = (luminosity$ | async)!;\n@let letAlpha = (alpha$ | async)!;\n\n<bs-color-wheel [hs]=\"letHS\" (hsChange)=\"hs$.next($event)\" [luminosity]=\"letLuminosity\" [width]=\"(size$ | async) ?? 150\" [height]=\"(size$ | async) ?? 150\" #wheel></bs-color-wheel>\n<bs-luminosity-strip [hs]=\"letHS\" [luminosity]=\"letLuminosity\" (luminosityChange)=\"luminosity$.next($event)\" class=\"d-block mt-2\" [style.width.px]=\"size$ | async\" #strip></bs-luminosity-strip>\n@if (allowAlpha$ | async) {\n <bs-alpha-strip [hs]=\"letHS\" [luminosity]=\"letLuminosity\" [alpha]=\"letAlpha\" (alphaChange)=\"alpha$.next($event)\" class=\"d-block mt-2\" [style.width.px]=\"size$ | async\" #alpha></bs-alpha-strip>\n}", styles: [""], dependencies: [{ kind: "component", type: BsColorWheelComponent, selector: "bs-color-wheel", inputs: ["diameterRatio", "width", "height", "hs", "luminosity"], outputs: ["hsChange"] }, { kind: "component", type: BsLuminosityStripComponent, selector: "bs-luminosity-strip", inputs: ["hs", "luminosity"], outputs: ["luminosityChange"] }, { kind: "component", type: BsAlphaStripComponent, selector: "bs-alpha-strip", inputs: ["hs", "luminosity", "alpha"], outputs: ["alphaChange"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); }
614
612
  }
615
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsColorPickerComponent, decorators: [{
613
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsColorPickerComponent, decorators: [{
616
614
  type: Component,
617
- args: [{ selector: 'bs-color-picker', template: "<ng-container *bsLet=\"(disabled$ | async)!; let letDisabled\">\n <ng-container *bsLet=\"(hs$ | async)!; let letHS\">\n <ng-container *bsLet=\"(luminosity$ | async)!; let letLuminosity\">\n <ng-container *bsLet=\"(alpha$ | async)!; let letAlpha\">\n <bs-color-wheel [hs]=\"letHS\" (hsChange)=\"hs$.next($event)\" [luminosity]=\"letLuminosity\" [width]=\"(size$ | async) ?? 150\" [height]=\"(size$ | async) ?? 150\" #wheel></bs-color-wheel>\n <bs-luminosity-strip [hs]=\"letHS\" [luminosity]=\"letLuminosity\" (luminosityChange)=\"luminosity$.next($event)\" class=\"d-block mt-2\" [style.width.px]=\"size$ | async\" #strip></bs-luminosity-strip>\n @if (allowAlpha$ | async) {\n <bs-alpha-strip [hs]=\"letHS\" [luminosity]=\"letLuminosity\" [alpha]=\"letAlpha\" (alphaChange)=\"alpha$.next($event)\" class=\"d-block mt-2\" [style.width.px]=\"size$ | async\" #alpha></bs-alpha-strip>\n }\n </ng-container>\n </ng-container>\n </ng-container>\n</ng-container>" }]
615
+ args: [{ selector: 'bs-color-picker', template: "@let letDisabled = (disabled$ | async)!;\n@let letHS = (hs$ | async)!;\n@let letLuminosity = (luminosity$ | async)!;\n@let letAlpha = (alpha$ | async)!;\n\n<bs-color-wheel [hs]=\"letHS\" (hsChange)=\"hs$.next($event)\" [luminosity]=\"letLuminosity\" [width]=\"(size$ | async) ?? 150\" [height]=\"(size$ | async) ?? 150\" #wheel></bs-color-wheel>\n<bs-luminosity-strip [hs]=\"letHS\" [luminosity]=\"letLuminosity\" (luminosityChange)=\"luminosity$.next($event)\" class=\"d-block mt-2\" [style.width.px]=\"size$ | async\" #strip></bs-luminosity-strip>\n@if (allowAlpha$ | async) {\n <bs-alpha-strip [hs]=\"letHS\" [luminosity]=\"letLuminosity\" [alpha]=\"letAlpha\" (alphaChange)=\"alpha$.next($event)\" class=\"d-block mt-2\" [style.width.px]=\"size$ | async\" #alpha></bs-alpha-strip>\n}" }]
618
616
  }], ctorParameters: () => [], propDecorators: { colorWheel: [{
619
617
  type: ViewChild,
620
618
  args: ['wheel']
@@ -726,15 +724,15 @@ class BsColorPickerValueAccessor {
726
724
  h *= 360;
727
725
  return { h, s, l };
728
726
  }
729
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsColorPickerValueAccessor, deps: [{ token: forwardRef(() => BsColorPickerComponent) }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Directive }); }
730
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.1", type: BsColorPickerValueAccessor, selector: "bs-color-picker", providers: [{
727
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsColorPickerValueAccessor, deps: [{ token: forwardRef(() => BsColorPickerComponent) }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Directive }); }
728
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.1.0", type: BsColorPickerValueAccessor, selector: "bs-color-picker", providers: [{
731
729
  provide: NG_VALUE_ACCESSOR,
732
730
  // useExisting: BsColorPickerValueAccessor,
733
731
  useExisting: forwardRef(() => BsColorPickerValueAccessor),
734
732
  multi: true
735
733
  }], exportAs: ["bsColorPicker"], ngImport: i0 }); }
736
734
  }
737
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsColorPickerValueAccessor, decorators: [{
735
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsColorPickerValueAccessor, decorators: [{
738
736
  type: Directive,
739
737
  args: [{
740
738
  selector: 'bs-color-picker',
@@ -752,8 +750,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImpor
752
750
  }] }, { type: i0.DestroyRef }] });
753
751
 
754
752
  class BsColorPickerModule {
755
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsColorPickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
756
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.1", ngImport: i0, type: BsColorPickerModule, declarations: [BsColorPickerComponent,
753
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsColorPickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
754
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.1.0", ngImport: i0, type: BsColorPickerModule, declarations: [BsColorPickerComponent,
757
755
  BsColorPickerValueAccessor,
758
756
  BsColorWheelComponent,
759
757
  BsLuminosityStripComponent,
@@ -761,8 +759,7 @@ class BsColorPickerModule {
761
759
  BsThumbDirective,
762
760
  BsTrackDirective,
763
761
  BsAlphaStripComponent], imports: [AsyncPipe,
764
- FormsModule,
765
- BsLetDirective], exports: [BsColorPickerComponent,
762
+ FormsModule], exports: [BsColorPickerComponent,
766
763
  BsColorPickerValueAccessor,
767
764
  BsColorWheelComponent,
768
765
  BsLuminosityStripComponent,
@@ -770,9 +767,9 @@ class BsColorPickerModule {
770
767
  BsThumbDirective,
771
768
  BsTrackDirective,
772
769
  BsAlphaStripComponent] }); }
773
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsColorPickerModule, imports: [FormsModule] }); }
770
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsColorPickerModule, imports: [FormsModule] }); }
774
771
  }
775
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BsColorPickerModule, decorators: [{
772
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BsColorPickerModule, decorators: [{
776
773
  type: NgModule,
777
774
  args: [{
778
775
  declarations: [
@@ -788,7 +785,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImpor
788
785
  imports: [
789
786
  AsyncPipe,
790
787
  FormsModule,
791
- BsLetDirective
792
788
  ],
793
789
  exports: [
794
790
  BsColorPickerComponent,
@@ -1 +1 @@
1
- {"version":3,"file":"mintplayer-ng-bootstrap-color-picker.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/color-picker/components/color-wheel/color-wheel.component.ts","../../../../libs/mintplayer-ng-bootstrap/color-picker/components/color-wheel/color-wheel.component.html","../../../../libs/mintplayer-ng-bootstrap/color-picker/components/slider/slider.component.ts","../../../../libs/mintplayer-ng-bootstrap/color-picker/components/slider/slider.component.html","../../../../libs/mintplayer-ng-bootstrap/color-picker/components/luminosity-strip/luminosity-strip.component.ts","../../../../libs/mintplayer-ng-bootstrap/color-picker/components/luminosity-strip/luminosity-strip.component.html","../../../../libs/mintplayer-ng-bootstrap/color-picker/components/alpha-strip/alpha-strip.component.ts","../../../../libs/mintplayer-ng-bootstrap/color-picker/components/alpha-strip/alpha-strip.component.html","../../../../libs/mintplayer-ng-bootstrap/color-picker/components/color-picker/color-picker.component.ts","../../../../libs/mintplayer-ng-bootstrap/color-picker/components/color-picker/color-picker.component.html","../../../../libs/mintplayer-ng-bootstrap/color-picker/directives/color-picker-value-accessor/color-picker-value-accessor.directive.ts","../../../../libs/mintplayer-ng-bootstrap/color-picker/color-picker.module.ts","../../../../libs/mintplayer-ng-bootstrap/color-picker/mintplayer-ng-bootstrap-color-picker.ts"],"sourcesContent":["import { AfterViewInit, Component, ElementRef, EventEmitter, HostBinding, HostListener, Input, Output, ViewChild } from '@angular/core';\nimport { BehaviorSubject, combineLatest, debounceTime, map, take, Observable, switchMap } from 'rxjs';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { HS } from '../../interfaces/hs';\nimport { HslColor } from '../../interfaces/hsl-color';\nimport { RgbColor } from '../../interfaces/rgb-color';\n\n@Component({\n selector: 'bs-color-wheel',\n templateUrl: './color-wheel.component.html',\n styleUrls: ['./color-wheel.component.scss']\n})\nexport class BsColorWheelComponent implements AfterViewInit {\n\n constructor(private element: ElementRef<HTMLElement>) {\n // this.resizeObserver = new ResizeObserver((entries) => {\n // for (const entry of entries) {\n // if (entry.target === this.element.nativeElement) {\n // console.log(entry.contentRect);\n // this.width$.next(entry.contentRect.width);\n // this.height$.next(entry.contentRect.height);\n // break;\n // }\n // }\n // });\n\n this.squareSize$ = combineLatest([this.width$, this.height$])\n .pipe(map(([width, height]) => {\n if ((width === null) || (height === null)) {\n return null;\n }\n\n const squareSize = Math.min(width, height);\n return squareSize;\n }));\n\n this.shiftX$ = combineLatest([this.width$, this.height$])\n .pipe(map(([width, height]) => {\n if ((width === null) || (height === null)) {\n return null;\n } else if (width < height) {\n return 0;\n } else {\n return (width - height) / 2;\n }\n }));\n\n this.shiftY$ = combineLatest([this.width$, this.height$])\n .pipe(map(([width, height]) => {\n if ((width === null) || (height === null)) {\n return null;\n } else if (width < height) {\n return (height - width) / 2;\n } else {\n return 0;\n }\n }));\n\n this.innerRadius$ = combineLatest([this.squareSize$, this.diameterRatio$])\n .pipe(map(([squareSize, diameterRatio]) => {\n if (squareSize) {\n return squareSize / 2 * diameterRatio;\n } else {\n return 0;\n }\n }));\n\n this.outerRadius$ = combineLatest([this.squareSize$, this.diameterRatio$])\n .pipe(map(([squareSize, diameterRatio]) => {\n if (squareSize) {\n return squareSize / 2;\n } else {\n return 150;\n }\n }));\n \n combineLatest([this.innerRadius$, this.outerRadius$, this.shiftX$, this.shiftY$])\n .pipe(debounceTime(20), takeUntilDestroyed())\n .subscribe(([innerRadius, outerRadius, shiftX, shiftY]) => {\n if (this.canvasContext && (innerRadius !== null) && (outerRadius !== null) && (shiftX !== null) && (shiftY !== null)) {\n this.canvasContext.clearRect(0, 0, this.canvas.nativeElement.width, this.canvas.nativeElement.height);\n this.canvasContext.save();\n this.canvasContext.translate(shiftX + outerRadius, shiftY + outerRadius);\n\n for (let x = 0; x < 360; x++) {\n this.canvasContext.rotate(1 * Math.PI / 180);\n const gradient = this.canvasContext.createLinearGradient(innerRadius, 0, outerRadius, 0);\n\n gradient.addColorStop(0, `hsl(${x}, 0%, 50%)`);\n gradient.addColorStop(1, `hsl(${x}, 100%, 50%)`);\n\n this.canvasContext.fillStyle = gradient;\n this.canvasContext.fillRect(innerRadius, 0, outerRadius - innerRadius, outerRadius / 50);\n }\n\n this.canvasContext.restore();\n }\n });\n\n this.markerPosition$ = combineLatest([this.hs$, this.shiftX$, this.shiftY$])\n .pipe(switchMap(([hs, shiftX, shiftY]) => {\n return this.color2position(hs)\n .pipe(map((position) => ({position, shiftX: (shiftX ?? 0), shiftY: (shiftY ?? 0)})));\n }))\n .pipe(map(({position, shiftX, shiftY}) => {\n return {\n x: position.x + shiftX,\n y: position.y + shiftY,\n };\n }));\n\n this.hs$.pipe(takeUntilDestroyed())\n .subscribe((hs) => this.hsChange.emit(hs));\n }\n\n @HostBinding('class.position-relative') positionRelative = true;\n \n @Input() set diameterRatio(value: number) {\n this.diameterRatio$.next(value);\n }\n @Input() set width(value: number) {\n this.width$.next(value);\n }\n @Input() set height(value: number) {\n this.height$.next(value);\n }\n @ViewChild('canvas') canvas!: ElementRef<HTMLCanvasElement>;\n \n //#region Hue/Luminosity\n hs$ = new BehaviorSubject<HS>({ hue: 0, saturation: 0 });\n @Output() hsChange = new EventEmitter<HS>();\n public get hs() {\n return this.hs$.value;\n }\n @Input() public set hs(value: HS) {\n this.hs$.next(value);\n }\n //#endregion\n //#region Luminosity\n luminosity$ = new BehaviorSubject<number>(0);\n public get luminosity() {\n return this.luminosity$.value;\n }\n @Input() public set luminosity(value: number) {\n this.luminosity$.next(value);\n }\n //#endregion\n\n // private resizeObserver: ResizeObserver;\n private canvasContext: CanvasRenderingContext2D | null = null;\n private isPointerDown = false;\n width$ = new BehaviorSubject<number>(150);\n height$ = new BehaviorSubject<number>(150);\n diameterRatio$ = new BehaviorSubject<number>(0);\n\n squareSize$: Observable<number | null>;\n shiftX$: Observable<number | null>;\n shiftY$: Observable<number | null>;\n\n innerRadius$: Observable<number | null>;\n outerRadius$: Observable<number | null>;\n markerPosition$: Observable<{x: number, y: number}>;\n disabled$ = new BehaviorSubject<boolean>(false);\n \n viewInited$ = new BehaviorSubject<boolean>(false);\n\n ngAfterViewInit() {\n // this.resizeObserver.observe(this.element.nativeElement);\n this.viewInited$.next(true);\n this.canvasContext = this.canvas.nativeElement.getContext('2d', { willReadFrequently: true });\n }\n\n onPointerDown(ev: MouseEvent | TouchEvent) {\n if (!this.disabled$.value) {\n ev.preventDefault();\n this.isPointerDown = true;\n this.updateColor(ev, !('touches' in ev));\n }\n }\n\n onPointerMove(ev: MouseEvent | TouchEvent) {\n if (this.isPointerDown) {\n ev.preventDefault();\n ev.stopPropagation();\n this.updateColor(ev, !('touches' in ev));\n }\n }\n\n @HostListener('document:mousemove', ['$event'])\n onMouseMove(ev: MouseEvent) {\n this.onPointerMove(ev);\n }\n\n @HostListener('document:mouseup', ['$event'])\n onPointerUp(ev: MouseEvent | TouchEvent) {\n this.isPointerDown = false;\n }\n\n private updateColor(ev: MouseEvent | TouchEvent, subtract: boolean) {\n let co: { x: number, y: number };\n const rect = this.canvas.nativeElement.getBoundingClientRect();\n if ('touches' in ev) {\n co = {\n x: ev.touches[0].clientX - rect.left,\n y: ev.touches[0].clientY - rect.top,\n };\n } else {\n co = {\n x: ev.clientX - (subtract ? rect.left : 0),\n y: ev.clientY - (subtract ? rect.top : 0),\n };\n }\n \n this.position2color(co.x, co.y).pipe(take(1)).subscribe((color) => {\n if (color) {\n this.hs$.next({ hue: color.hue, saturation: color.saturation });\n } else {\n console.warn('Color is null');\n }\n });\n }\n\n private isInsideCircle(x: number, y: number) {\n return combineLatest([this.squareSize$, this.shiftX$, this.shiftY$])\n .pipe(map(([squareSize, shiftX, shiftY]) => {\n // Position to the square\n const sx: number = x - (shiftX ?? 0);\n const sy = y - (shiftY ?? 0);\n // Square radius\n const sr = (squareSize ?? 0) / 2;\n\n const radius = Math.sqrt(Math.pow(sx - sr, 2) + Math.pow(sy - sr, 2));\n const angle = (Math.atan2(sr - sy, sr - sx) + Math.PI) % 360;\n return {\n inside: radius <= sr,\n angle\n };\n }));\n }\n\n private position2color(x: number, y: number) {\n return this.isInsideCircle(x, y).pipe(map((result) => {\n if (!this.canvasContext) {\n return null;\n }\n\n if (result.inside) {\n const imageData = this.canvasContext.getImageData(x, y, 1, 1).data;\n const hsl = this.rgb2Hsl({ r: imageData[0], g: imageData[1], b: imageData[2] });\n return hsl;\n }\n\n return <HslColor>{ hue: result.angle * 180 / Math.PI, saturation: 1, luminosity: 0.5 };\n }));\n }\n\n private color2position(hs: HS) {\n return combineLatest([this.innerRadius$, this.outerRadius$])\n .pipe(map(([innerRadius, outerRadius]) => {\n if (innerRadius === null) {\n innerRadius = 0;\n }\n if (!outerRadius) {\n outerRadius = 100;\n }\n\n const theta = hs.hue * Math.PI / 180;\n const c = {\n x: -outerRadius * Math.cos(theta),\n y: -outerRadius * Math.sin(theta)\n };\n \n const d = hs.saturation * (outerRadius - innerRadius) + innerRadius;\n const o = { x: outerRadius, y: outerRadius };\n \n return {\n x: o.x - d * (c.x / outerRadius),\n y: o.y - d * (c.y / outerRadius),\n }\n }));\n }\n \n private rgb2Hsl(color: RgbColor) {\n const r01 = this.bound01(color.r, 255);\n const g01 = this.bound01(color.g, 255);\n const b01 = this.bound01(color.b, 255);\n\n const max = Math.max(r01, g01, b01);\n const min = Math.min(r01, g01, b01);\n\n let h: number, s: number; const l = (max + min) / 2;\n if (max === min) {\n h = s = 0;\n } else {\n const d = max - min;\n s = (l > 0.5) ? (d / (2 - max - min)) : (d / (max + min));\n switch (max) {\n case r01: {\n h = (g01 - b01) / d + ((g01 < b01) ? 6 : 0);\n } break;\n case g01: {\n h = (b01 - r01) / d + 2;\n } break;\n case b01: {\n h = (r01 - g01) / d + 4;\n } break;\n default: {\n throw 'Invalid operation';\n }\n }\n \n h /= 6;\n }\n \n h *= 360;\n\n return <HslColor>{ hue: h, saturation: s, luminosity: l };\n }\n\n /**\n * Divide 1 to n, handling floating point errors.\n * Ensures that the value is in between 0 and 1.\n **/\n private bound01(n: number, max: number) {\n n = Math.min(max, Math.max(0, n));\n if ((Math.abs(n - max) < 0.000001)) {\n return 1;\n } else {\n return (n % max) / max;\n }\n }\n\n}\n","<canvas\n class=\"d-block\"\n [width]=\"width$ | async\"\n [height]=\"height$ | async\"\n (mousedown)=\"onPointerDown($event)\"\n (touchstart)=\"onPointerDown($event)\"\n (touchmove)=\"onPointerMove($event)\"\n (touchend)=\"onPointerUp($event)\"\n #canvas></canvas>\n\n@if (markerPosition$ | async; as markerPosition) {\n <div class=\"thumb position-absolute pe-none\" [style.left.px]=\"markerPosition.x\" [style.top.px]=\"markerPosition.y\"></div>\n}","import { Component, Directive, ElementRef, EventEmitter, HostBinding, HostListener, Input, Output, ViewChild, NgZone } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { BehaviorSubject, map, Observable } from 'rxjs';\n\n@Component({\n selector: 'bs-slider',\n templateUrl: './slider.component.html',\n styleUrls: ['./slider.component.scss']\n})\nexport class BsSliderComponent {\n constructor(private element: ElementRef<HTMLElement>, private zone: NgZone) {\n this.value$.pipe(takeUntilDestroyed())\n .subscribe((value) => this.valueChange.emit(value));\n\n this.thumbMarginLeft$ = this.value$.pipe(map((value) => {\n const res = value * element.nativeElement.clientWidth - 12;\n return res;\n }));\n\n this.cursorClass$ = this.isPointerDown$.pipe(map((isPointerDown) => {\n return isPointerDown ? 'cursor-grabbing' : 'cursor-grab';\n }));\n }\n\n @HostBinding('class.d-block') dBlock = true;\n @HostBinding('class.position-relative') positionRelative = true;\n thumbMarginLeft$: Observable<number>;\n @ViewChild('track') track!: ElementRef<HTMLDivElement>;\n @ViewChild('thumb') thumb!: ElementRef<HTMLDivElement>;\n\n //#region Value\n value$ = new BehaviorSubject<number>(0.5);\n @Output() valueChange = new EventEmitter<number>();\n public get value() {\n return this.value$.value;\n }\n @Input() public set value(value: number) {\n this.value$.next(value);\n }\n //#endregion\n\n private isPointerDown$ = new BehaviorSubject<boolean>(false);\n cursorClass$: Observable<string>;\n\n onPointerDown(ev: MouseEvent | TouchEvent) {\n ev.preventDefault();\n this.zone.run(() => this.isPointerDown$.next(true));\n this.updateColor(ev);\n }\n\n @HostListener('document:mousemove', ['$event'])\n onPointerMove(ev: MouseEvent | TouchEvent) {\n if (this.isPointerDown$.value) {\n ev.preventDefault();\n ev.stopPropagation();\n this.updateColor(ev);\n }\n }\n\n @HostListener('document:mouseup', ['$event'])\n onPointerUp(ev: MouseEvent | TouchEvent) {\n this.isPointerDown$.next(false);\n }\n\n private updateColor(ev: MouseEvent | TouchEvent) {\n let co: { x: number };\n const rect = this.track.nativeElement.getBoundingClientRect();\n if ('touches' in ev) {\n co = {\n x: ev.touches[0].clientX - rect.left,\n };\n } else {\n co = {\n x: ev.clientX - rect.left,\n };\n }\n \n const percent = co.x / this.track.nativeElement.clientWidth;\n const limited = Math.max(0, Math.min(1, percent));\n this.value$.next(limited);\n }\n}\n\n@Directive({ selector: '[bsThumb]' })\nexport class BsThumbDirective {\n @HostBinding('class.thumb')\n @HostBinding('class.position-absolute')\n thumbClass = true;\n}\n\n@Directive({ selector: '[bsTrack]' })\nexport class BsTrackDirective {\n @HostBinding('class.track') trackClass = true;\n}","<div class=\"wrapper d-block position-relative\">\n <div #track class=\"track2\"\n (mousedown)=\"onPointerDown($event)\"\n (touchstart)=\"onPointerDown($event)\"\n (touchmove)=\"onPointerMove($event)\"\n (touchend)=\"onPointerUp($event)\">\n <ng-content select=\"[bsTrack]\"></ng-content>\n </div>\n <div #thumb\n (mousedown)=\"onPointerDown($event)\"\n (touchstart)=\"onPointerDown($event)\"\n (touchmove)=\"onPointerMove($event)\"\n (touchend)=\"onPointerUp($event)\"\n [class]=\"cursorClass$ | async\"\n [style.margin-left.px]=\"thumbMarginLeft$ | async\">\n <ng-content select=\"[bsThumb]\"></ng-content>\n </div>\n</div>","import { Component, EventEmitter, Input, Output, AfterViewInit, ViewChild, ElementRef } from '@angular/core';\nimport { BehaviorSubject, combineLatest, map, Observable } from 'rxjs';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { HS } from '../../interfaces/hs';\n\n@Component({\n selector: 'bs-luminosity-strip',\n templateUrl: './luminosity-strip.component.html',\n styleUrls: ['./luminosity-strip.component.scss']\n})\nexport class BsLuminosityStripComponent implements AfterViewInit {\n constructor() {\n this.hs$.pipe(takeUntilDestroyed()).subscribe((hs) => {\n if (this.canvasContext) {\n const width = this.canvas.nativeElement.width, height = this.canvas.nativeElement.height;\n this.canvasContext.clearRect(0, 0, width, height);\n this.canvasContext.save();\n\n // HSL\n // - H: 0 - 359\n // - S: \"0%\" - \"100%\"\n // - L: \"0%\" - \"50%\" - \"100%\"\n\n const gradient = this.canvasContext.createLinearGradient(0, 0, width, 0);\n gradient.addColorStop(0, `hsl(${hs.hue}, ${hs.saturation * 100}%, 0%)`);\n gradient.addColorStop(0.5, `hsl(${hs.hue}, ${hs.saturation * 100}%, 50%)`);\n gradient.addColorStop(1, `hsl(${hs.hue}, ${hs.saturation * 100}%, 100%)`);\n this.canvasContext.fillStyle = gradient;\n this.canvasContext.fillRect(0, 0, width, height);\n }\n });\n \n this.resultBackground$ = combineLatest([this.hs$, this.luminosity$])\n .pipe(map(([hs, luminosity]) => {\n return `hsl(${hs.hue}, ${hs.saturation * 100}%, ${luminosity * 100}%)`;\n }));\n \n this.luminosity$.pipe(takeUntilDestroyed())\n .subscribe(luminosity => this.luminosityChange.emit(luminosity));\n }\n\n //#region HS\n hs$ = new BehaviorSubject<HS>({ hue: 0, saturation: 0 });\n public get hs() {\n return this.hs$.value;\n }\n @Input() public set hs(value: HS) {\n this.hs$.next(value);\n }\n //#endregion\n //#region Luminosity\n luminosity$ = new BehaviorSubject<number>(0.5);\n @Output() luminosityChange = new EventEmitter<number>();\n public get luminosity() {\n return this.luminosity$.value;\n }\n @Input() public set luminosity(value: number) {\n this.luminosity$.next(value);\n }\n //#endregion\n\n private canvasContext: CanvasRenderingContext2D | null = null;\n @ViewChild('canvas') canvas!: ElementRef<HTMLCanvasElement>;\n ngAfterViewInit() {\n this.canvasContext = this.canvas.nativeElement.getContext('2d', { willReadFrequently: true });\n }\n\n resultBackground$: Observable<string>;\n}\n","<bs-slider [value]=\"(luminosity$ | async)!\" (valueChange)=\"luminosityChange.emit($event)\">\n <canvas bsTrack class=\"position-absolute w-100\" #canvas></canvas>\n <div bsThumb [style.background]=\"resultBackground$ | async\"></div>\n</bs-slider>","import { Component, EventEmitter, Input, Output, AfterViewInit, ViewChild, ElementRef } from '@angular/core';\nimport { BehaviorSubject, combineLatest, map, Observable } from 'rxjs';\nimport { HS } from '../../interfaces/hs';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\n@Component({\n selector: 'bs-alpha-strip',\n templateUrl: './alpha-strip.component.html',\n styleUrls: ['./alpha-strip.component.scss']\n})\nexport class BsAlphaStripComponent implements AfterViewInit {\n\n constructor() {\n combineLatest([this.hs$, this.luminosity$]).pipe(takeUntilDestroyed()).subscribe(([hs, luminosity]) => {\n setTimeout(() => {\n if (this.canvasContext) {\n const width = this.canvas.nativeElement.width, height = this.canvas.nativeElement.height;\n this.canvasContext.clearRect(0, 0, width, height);\n this.canvasContext.save();\n \n const gradient = this.canvasContext.createLinearGradient(0, 0, width, 0);\n gradient.addColorStop(0, `hsla(${hs.hue}, ${hs.saturation * 100}%, ${luminosity * 100}%, 0)`);\n gradient.addColorStop(1, `hsla(${hs.hue}, ${hs.saturation * 100}%, ${luminosity * 100}%, 1)`);\n this.canvasContext.fillStyle = gradient;\n this.canvasContext.fillRect(0, 0, width, height);\n }\n });\n });\n\n this.resultBackground$ = combineLatest([this.hs$, this.luminosity$, this.alpha$])\n .pipe(map(([hs, luminosity, alpha]) => {\n return `hsla(${hs.hue}, ${hs.saturation * 100}%, ${luminosity * 100}%, ${alpha})`;\n }));\n\n this.alpha$.pipe(takeUntilDestroyed())\n .subscribe((alpha) => this.alphaChange.emit(alpha));\n }\n\n //#region HS\n hs$ = new BehaviorSubject<HS>({ hue: 0, saturation: 0 });\n public get hs() {\n return this.hs$.value;\n }\n @Input() public set hs(value: HS) {\n this.hs$.next(value);\n }\n //#endregion\n //#region Luminosity\n luminosity$ = new BehaviorSubject<number>(0.5);\n public get luminosity() {\n return this.luminosity$.value;\n }\n @Input() public set luminosity(value: number) {\n this.luminosity$.next(value);\n }\n //#endregion\n //#region Alpha\n alpha$ = new BehaviorSubject<number>(1);\n @Output() alphaChange = new EventEmitter<number>();\n public get alpha() {\n return this.alpha$.value;\n }\n @Input() public set alpha(value: number) {\n this.alpha$.next(value);\n }\n //#endregion\n \n private canvasContext: CanvasRenderingContext2D | null = null;\n @ViewChild('track') canvas!: ElementRef<HTMLCanvasElement>;\n ngAfterViewInit() {\n this.canvasContext = this.canvas.nativeElement.getContext('2d', { willReadFrequently: true });\n }\n\n resultBackground$: Observable<string>;\n}\n","<bs-slider [value]=\"(alpha$ | async)!\" (valueChange)=\"alphaChange.emit($event)\">\n <canvas bsTrack class=\" track position-absolute w-100\" #track></canvas>\n\n <!-- [style.background]=\"resultBackground$ | async\" -->\n <div bsThumb [style.background]=\"resultBackground$ | async\"></div>\n</bs-slider>","import { Component, Input, ViewChild, EventEmitter, Output } from \"@angular/core\";\nimport { BehaviorSubject } from \"rxjs\";\nimport { HS } from \"../../interfaces/hs\";\nimport { BsColorWheelComponent } from \"../color-wheel/color-wheel.component\";\nimport { takeUntilDestroyed } from \"@angular/core/rxjs-interop\";\n\n@Component({\n selector: 'bs-color-picker',\n templateUrl: './color-picker.component.html',\n styleUrls: ['./color-picker.component.scss']\n})\nexport class BsColorPickerComponent {\n\n constructor() {\n this.alpha$.pipe(takeUntilDestroyed())\n .subscribe((alpha) => this.alphaChange.emit(alpha));\n }\n\n @ViewChild('wheel') colorWheel!: BsColorWheelComponent;\n @Input() set size(value: number) {\n this.size$.next(value);\n }\n @Input() set allowAlpha(value: boolean) {\n this.allowAlpha$.next(value);\n }\n \n size$ = new BehaviorSubject<number>(150);\n disabled$ = new BehaviorSubject<boolean>(false);\n allowAlpha$ = new BehaviorSubject<boolean>(true);\n\n hs$ = new BehaviorSubject<HS>({ hue: 0, saturation: 0 });\n luminosity$ = new BehaviorSubject<number>(0);\n\n //#region Alpha\n alpha$ = new BehaviorSubject<number>(1);\n @Output() alphaChange = new EventEmitter<number>();\n get alpha() {\n return this.alpha$.value;\n }\n @Input() set alpha(value: number) {\n this.alpha$.next(value);\n }\n //#endregion\n}\n","<ng-container *bsLet=\"(disabled$ | async)!; let letDisabled\">\n <ng-container *bsLet=\"(hs$ | async)!; let letHS\">\n <ng-container *bsLet=\"(luminosity$ | async)!; let letLuminosity\">\n <ng-container *bsLet=\"(alpha$ | async)!; let letAlpha\">\n <bs-color-wheel [hs]=\"letHS\" (hsChange)=\"hs$.next($event)\" [luminosity]=\"letLuminosity\" [width]=\"(size$ | async) ?? 150\" [height]=\"(size$ | async) ?? 150\" #wheel></bs-color-wheel>\n <bs-luminosity-strip [hs]=\"letHS\" [luminosity]=\"letLuminosity\" (luminosityChange)=\"luminosity$.next($event)\" class=\"d-block mt-2\" [style.width.px]=\"size$ | async\" #strip></bs-luminosity-strip>\n @if (allowAlpha$ | async) {\n <bs-alpha-strip [hs]=\"letHS\" [luminosity]=\"letLuminosity\" [alpha]=\"letAlpha\" (alphaChange)=\"alpha$.next($event)\" class=\"d-block mt-2\" [style.width.px]=\"size$ | async\" #alpha></bs-alpha-strip>\n }\n </ng-container>\n </ng-container>\n </ng-container>\n</ng-container>","import { Directive, Inject, forwardRef, AfterViewInit, DestroyRef } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { combineLatest } from 'rxjs';\nimport { BsColorPickerComponent } from '../../components/color-picker/color-picker.component';\nimport { RgbColor } from '../../interfaces/rgb-color';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\n@Directive({\n selector: 'bs-color-picker',\n providers: [{\n provide: NG_VALUE_ACCESSOR,\n // useExisting: BsColorPickerValueAccessor,\n useExisting: forwardRef(() => BsColorPickerValueAccessor),\n multi: true\n }],\n exportAs: 'bsColorPicker'\n})\nexport class BsColorPickerValueAccessor implements AfterViewInit, ControlValueAccessor {\n\n constructor(@Inject(forwardRef(() => BsColorPickerComponent)) private host: BsColorPickerComponent, private destroy: DestroyRef) {\n }\n\n ngAfterViewInit() {\n combineLatest([this.host.hs$, this.host.luminosity$])\n .pipe(takeUntilDestroyed(this.destroy))\n .subscribe(([hs, luminosity]) => {\n const rgb = this.hsl2rgb(hs.hue, hs.saturation, luminosity);\n const hex = this.rgb2hex(rgb);\n setTimeout(() => this.onValueChange && this.onValueChange(hex), 10);\n })\n }\n\n public hsl2rgb(h: number, s: number, l: number) {\n const k = (n: number) => (n + h / 30) % 12;\n const a = s * Math.min(l, 1 - l);\n const f = (n: number) => l - a * Math.max(-1, Math.min(k(n) - 3, Math.min(9 - k(n), 1)));\n const retValue = <RgbColor>{ r: 255 * f(0), g: 255 * f(8), b: 255 * f(4) };\n return retValue;\n }\n\n onValueChange?: (value: string) => void;\n onTouched?: () => void;\n\n //#region ControlValueAccessor implementation\n registerOnChange(fn: (_: any) => void) {\n this.onValueChange = fn;\n }\n \n registerOnTouched(fn: () => void) {\n this.onTouched = fn;\n }\n\n writeValue(value: string | null) {\n if (this.host && this.host.colorWheel) {\n if (value) {\n const rgb = this.hex2rgb(value);\n const hsl = this.rgb2Hsl(rgb);\n this.host.hs$.next({ hue: hsl.h, saturation: hsl.s });\n this.host.luminosity$.next(hsl.l);\n }\n }\n }\n\n setDisabledState(isDisabled: boolean) {\n if (this.host && this.host.colorWheel) {\n this.host.colorWheel.disabled$.next(isDisabled);\n }\n }\n //#endregion\n\n //#region Color Conversion\n private rgb2hex(rgb: RgbColor) {\n return '#' + (Math.round((rgb.r << 16) + (rgb.g << 8) + rgb.b)).toString(16).padStart(6, '0');\n }\n\n private hex2rgb(hex: string): RgbColor {\n const r = parseInt(hex.slice(1, 3), 16),\n g = parseInt(hex.slice(3, 5), 16),\n b = parseInt(hex.slice(5, 7), 16);\n\n return { r, g, b };\n }\n /**\n * Divide 1 to n, handling floating point errors.\n * Ensures that the value is in between 0 and 1.\n **/\n private bound01(n: number, max: number) {\n n = Math.min(max, Math.max(0, n));\n if (Math.abs(n - max) < 0.000001) {\n return 1;\n } else {\n return (n % max) / max;\n }\n }\n private rgb2Hsl(color: RgbColor) {\n const r01 = this.bound01(color.r, 255);\n const g01 = this.bound01(color.g, 255);\n const b01 = this.bound01(color.b, 255);\n\n const max = Math.max(r01, g01, b01);\n const min = Math.min(r01, g01, b01);\n\n let h: number, s: number;\n const l = (max + min) / 2;\n if (max === min) {\n h = s = 0;\n } else {\n const d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n\n switch (max) {\n case r01:\n h = (g01 - b01) / d + (g01 < b01 ? 6 : 0);\n break;\n case g01:\n h = (b01 - r01) / d + 2;\n break;\n case b01:\n h = (r01 - g01) / d + 4;\n break;\n default: {\n throw 'Invalid operation';\n }\n }\n\n h /= 6;\n }\n\n h *= 360;\n\n return { h, s, l };\n }\n //#endregion\n}\n","import { NgModule } from '@angular/core';\nimport { AsyncPipe } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { BsLetDirective } from '@mintplayer/ng-bootstrap/let';\nimport { BsColorPickerValueAccessor } from './directives/color-picker-value-accessor/color-picker-value-accessor.directive';\nimport { BsColorPickerComponent } from './components/color-picker/color-picker.component';\nimport { BsColorWheelComponent } from './components/color-wheel/color-wheel.component';\nimport { BsLuminosityStripComponent } from './components/luminosity-strip/luminosity-strip.component';\nimport { BsSliderComponent, BsThumbDirective, BsTrackDirective } from './components/slider/slider.component';\nimport { BsAlphaStripComponent } from './components/alpha-strip/alpha-strip.component';\n\n@NgModule({\n declarations: [\n BsColorPickerComponent,\n BsColorPickerValueAccessor,\n BsColorWheelComponent,\n BsLuminosityStripComponent,\n BsSliderComponent,\n BsThumbDirective,\n BsTrackDirective,\n BsAlphaStripComponent\n ],\n imports: [\n AsyncPipe,\n FormsModule,\n BsLetDirective\n ],\n exports: [\n BsColorPickerComponent,\n BsColorPickerValueAccessor,\n BsColorWheelComponent,\n BsLuminosityStripComponent,\n BsSliderComponent,\n BsThumbDirective,\n BsTrackDirective,\n BsAlphaStripComponent\n ]\n})\nexport class BsColorPickerModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.BsSliderComponent","i1.BsThumbDirective","i1.BsTrackDirective","i2","i1","i2.BsColorWheelComponent","i3.BsLuminosityStripComponent","i4.BsAlphaStripComponent","i5"],"mappings":"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"}
1
+ {"version":3,"file":"mintplayer-ng-bootstrap-color-picker.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/color-picker/components/color-wheel/color-wheel.component.ts","../../../../libs/mintplayer-ng-bootstrap/color-picker/components/color-wheel/color-wheel.component.html","../../../../libs/mintplayer-ng-bootstrap/color-picker/components/slider/slider.component.ts","../../../../libs/mintplayer-ng-bootstrap/color-picker/components/slider/slider.component.html","../../../../libs/mintplayer-ng-bootstrap/color-picker/components/luminosity-strip/luminosity-strip.component.ts","../../../../libs/mintplayer-ng-bootstrap/color-picker/components/luminosity-strip/luminosity-strip.component.html","../../../../libs/mintplayer-ng-bootstrap/color-picker/components/alpha-strip/alpha-strip.component.ts","../../../../libs/mintplayer-ng-bootstrap/color-picker/components/alpha-strip/alpha-strip.component.html","../../../../libs/mintplayer-ng-bootstrap/color-picker/components/color-picker/color-picker.component.ts","../../../../libs/mintplayer-ng-bootstrap/color-picker/components/color-picker/color-picker.component.html","../../../../libs/mintplayer-ng-bootstrap/color-picker/directives/color-picker-value-accessor/color-picker-value-accessor.directive.ts","../../../../libs/mintplayer-ng-bootstrap/color-picker/color-picker.module.ts","../../../../libs/mintplayer-ng-bootstrap/color-picker/mintplayer-ng-bootstrap-color-picker.ts"],"sourcesContent":["import { AfterViewInit, Component, ElementRef, EventEmitter, HostBinding, HostListener, Input, Output, ViewChild } from '@angular/core';\nimport { BehaviorSubject, combineLatest, debounceTime, map, take, Observable, switchMap } from 'rxjs';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { HS } from '../../interfaces/hs';\nimport { HslColor } from '../../interfaces/hsl-color';\nimport { RgbColor } from '../../interfaces/rgb-color';\n\n@Component({\n selector: 'bs-color-wheel',\n templateUrl: './color-wheel.component.html',\n styleUrls: ['./color-wheel.component.scss']\n})\nexport class BsColorWheelComponent implements AfterViewInit {\n\n constructor(private element: ElementRef<HTMLElement>) {\n // this.resizeObserver = new ResizeObserver((entries) => {\n // for (const entry of entries) {\n // if (entry.target === this.element.nativeElement) {\n // console.log(entry.contentRect);\n // this.width$.next(entry.contentRect.width);\n // this.height$.next(entry.contentRect.height);\n // break;\n // }\n // }\n // });\n\n this.squareSize$ = combineLatest([this.width$, this.height$])\n .pipe(map(([width, height]) => {\n if ((width === null) || (height === null)) {\n return null;\n }\n\n const squareSize = Math.min(width, height);\n return squareSize;\n }));\n\n this.shiftX$ = combineLatest([this.width$, this.height$])\n .pipe(map(([width, height]) => {\n if ((width === null) || (height === null)) {\n return null;\n } else if (width < height) {\n return 0;\n } else {\n return (width - height) / 2;\n }\n }));\n\n this.shiftY$ = combineLatest([this.width$, this.height$])\n .pipe(map(([width, height]) => {\n if ((width === null) || (height === null)) {\n return null;\n } else if (width < height) {\n return (height - width) / 2;\n } else {\n return 0;\n }\n }));\n\n this.innerRadius$ = combineLatest([this.squareSize$, this.diameterRatio$])\n .pipe(map(([squareSize, diameterRatio]) => {\n if (squareSize) {\n return squareSize / 2 * diameterRatio;\n } else {\n return 0;\n }\n }));\n\n this.outerRadius$ = combineLatest([this.squareSize$, this.diameterRatio$])\n .pipe(map(([squareSize, diameterRatio]) => {\n if (squareSize) {\n return squareSize / 2;\n } else {\n return 150;\n }\n }));\n \n combineLatest([this.innerRadius$, this.outerRadius$, this.shiftX$, this.shiftY$])\n .pipe(debounceTime(20), takeUntilDestroyed())\n .subscribe(([innerRadius, outerRadius, shiftX, shiftY]) => {\n if (this.canvasContext && (innerRadius !== null) && (outerRadius !== null) && (shiftX !== null) && (shiftY !== null)) {\n this.canvasContext.clearRect(0, 0, this.canvas.nativeElement.width, this.canvas.nativeElement.height);\n this.canvasContext.save();\n this.canvasContext.translate(shiftX + outerRadius, shiftY + outerRadius);\n\n for (let x = 0; x < 360; x++) {\n this.canvasContext.rotate(1 * Math.PI / 180);\n const gradient = this.canvasContext.createLinearGradient(innerRadius, 0, outerRadius, 0);\n\n gradient.addColorStop(0, `hsl(${x}, 0%, 50%)`);\n gradient.addColorStop(1, `hsl(${x}, 100%, 50%)`);\n\n this.canvasContext.fillStyle = gradient;\n this.canvasContext.fillRect(innerRadius, 0, outerRadius - innerRadius, outerRadius / 50);\n }\n\n this.canvasContext.restore();\n }\n });\n\n this.markerPosition$ = combineLatest([this.hs$, this.shiftX$, this.shiftY$])\n .pipe(switchMap(([hs, shiftX, shiftY]) => {\n return this.color2position(hs)\n .pipe(map((position) => ({position, shiftX: (shiftX ?? 0), shiftY: (shiftY ?? 0)})));\n }))\n .pipe(map(({position, shiftX, shiftY}) => {\n return {\n x: position.x + shiftX,\n y: position.y + shiftY,\n };\n }));\n\n this.hs$.pipe(takeUntilDestroyed())\n .subscribe((hs) => this.hsChange.emit(hs));\n }\n\n @HostBinding('class.position-relative') positionRelative = true;\n \n @Input() set diameterRatio(value: number) {\n this.diameterRatio$.next(value);\n }\n @Input() set width(value: number) {\n this.width$.next(value);\n }\n @Input() set height(value: number) {\n this.height$.next(value);\n }\n @ViewChild('canvas') canvas!: ElementRef<HTMLCanvasElement>;\n \n //#region Hue/Luminosity\n hs$ = new BehaviorSubject<HS>({ hue: 0, saturation: 0 });\n @Output() hsChange = new EventEmitter<HS>();\n public get hs() {\n return this.hs$.value;\n }\n @Input() public set hs(value: HS) {\n this.hs$.next(value);\n }\n //#endregion\n //#region Luminosity\n luminosity$ = new BehaviorSubject<number>(0);\n public get luminosity() {\n return this.luminosity$.value;\n }\n @Input() public set luminosity(value: number) {\n this.luminosity$.next(value);\n }\n //#endregion\n\n // private resizeObserver: ResizeObserver;\n private canvasContext: CanvasRenderingContext2D | null = null;\n private isPointerDown = false;\n width$ = new BehaviorSubject<number>(150);\n height$ = new BehaviorSubject<number>(150);\n diameterRatio$ = new BehaviorSubject<number>(0);\n\n squareSize$: Observable<number | null>;\n shiftX$: Observable<number | null>;\n shiftY$: Observable<number | null>;\n\n innerRadius$: Observable<number | null>;\n outerRadius$: Observable<number | null>;\n markerPosition$: Observable<{x: number, y: number}>;\n disabled$ = new BehaviorSubject<boolean>(false);\n \n viewInited$ = new BehaviorSubject<boolean>(false);\n\n ngAfterViewInit() {\n // this.resizeObserver.observe(this.element.nativeElement);\n this.viewInited$.next(true);\n this.canvasContext = this.canvas.nativeElement.getContext('2d', { willReadFrequently: true });\n }\n\n onPointerDown(ev: MouseEvent | TouchEvent) {\n if (!this.disabled$.value) {\n ev.preventDefault();\n this.isPointerDown = true;\n this.updateColor(ev, !('touches' in ev));\n }\n }\n\n onPointerMove(ev: MouseEvent | TouchEvent) {\n if (this.isPointerDown) {\n ev.preventDefault();\n ev.stopPropagation();\n this.updateColor(ev, !('touches' in ev));\n }\n }\n\n @HostListener('document:mousemove', ['$event'])\n onMouseMove(ev: MouseEvent) {\n this.onPointerMove(ev);\n }\n\n @HostListener('document:mouseup', ['$event'])\n onPointerUp(ev: MouseEvent | TouchEvent) {\n this.isPointerDown = false;\n }\n\n private updateColor(ev: MouseEvent | TouchEvent, subtract: boolean) {\n let co: { x: number, y: number };\n const rect = this.canvas.nativeElement.getBoundingClientRect();\n if ('touches' in ev) {\n co = {\n x: ev.touches[0].clientX - rect.left,\n y: ev.touches[0].clientY - rect.top,\n };\n } else {\n co = {\n x: ev.clientX - (subtract ? rect.left : 0),\n y: ev.clientY - (subtract ? rect.top : 0),\n };\n }\n \n this.position2color(co.x, co.y).pipe(take(1)).subscribe((color) => {\n if (color) {\n this.hs$.next({ hue: color.hue, saturation: color.saturation });\n } else {\n console.warn('Color is null');\n }\n });\n }\n\n private isInsideCircle(x: number, y: number) {\n return combineLatest([this.squareSize$, this.shiftX$, this.shiftY$])\n .pipe(map(([squareSize, shiftX, shiftY]) => {\n // Position to the square\n const sx: number = x - (shiftX ?? 0);\n const sy = y - (shiftY ?? 0);\n // Square radius\n const sr = (squareSize ?? 0) / 2;\n\n const radius = Math.sqrt(Math.pow(sx - sr, 2) + Math.pow(sy - sr, 2));\n const angle = (Math.atan2(sr - sy, sr - sx) + Math.PI) % 360;\n return {\n inside: radius <= sr,\n angle\n };\n }));\n }\n\n private position2color(x: number, y: number) {\n return this.isInsideCircle(x, y).pipe(map((result) => {\n if (!this.canvasContext) {\n return null;\n }\n\n if (result.inside) {\n const imageData = this.canvasContext.getImageData(x, y, 1, 1).data;\n const hsl = this.rgb2Hsl({ r: imageData[0], g: imageData[1], b: imageData[2] });\n return hsl;\n }\n\n return <HslColor>{ hue: result.angle * 180 / Math.PI, saturation: 1, luminosity: 0.5 };\n }));\n }\n\n private color2position(hs: HS) {\n return combineLatest([this.innerRadius$, this.outerRadius$])\n .pipe(map(([innerRadius, outerRadius]) => {\n if (innerRadius === null) {\n innerRadius = 0;\n }\n if (!outerRadius) {\n outerRadius = 100;\n }\n\n const theta = hs.hue * Math.PI / 180;\n const c = {\n x: -outerRadius * Math.cos(theta),\n y: -outerRadius * Math.sin(theta)\n };\n \n const d = hs.saturation * (outerRadius - innerRadius) + innerRadius;\n const o = { x: outerRadius, y: outerRadius };\n \n return {\n x: o.x - d * (c.x / outerRadius),\n y: o.y - d * (c.y / outerRadius),\n }\n }));\n }\n \n private rgb2Hsl(color: RgbColor) {\n const r01 = this.bound01(color.r, 255);\n const g01 = this.bound01(color.g, 255);\n const b01 = this.bound01(color.b, 255);\n\n const max = Math.max(r01, g01, b01);\n const min = Math.min(r01, g01, b01);\n\n let h: number, s: number; const l = (max + min) / 2;\n if (max === min) {\n h = s = 0;\n } else {\n const d = max - min;\n s = (l > 0.5) ? (d / (2 - max - min)) : (d / (max + min));\n switch (max) {\n case r01: {\n h = (g01 - b01) / d + ((g01 < b01) ? 6 : 0);\n } break;\n case g01: {\n h = (b01 - r01) / d + 2;\n } break;\n case b01: {\n h = (r01 - g01) / d + 4;\n } break;\n default: {\n throw 'Invalid operation';\n }\n }\n \n h /= 6;\n }\n \n h *= 360;\n\n return <HslColor>{ hue: h, saturation: s, luminosity: l };\n }\n\n /**\n * Divide 1 to n, handling floating point errors.\n * Ensures that the value is in between 0 and 1.\n **/\n private bound01(n: number, max: number) {\n n = Math.min(max, Math.max(0, n));\n if ((Math.abs(n - max) < 0.000001)) {\n return 1;\n } else {\n return (n % max) / max;\n }\n }\n\n}\n","<canvas\n class=\"d-block\"\n [width]=\"width$ | async\"\n [height]=\"height$ | async\"\n (mousedown)=\"onPointerDown($event)\"\n (touchstart)=\"onPointerDown($event)\"\n (touchmove)=\"onPointerMove($event)\"\n (touchend)=\"onPointerUp($event)\"\n #canvas></canvas>\n\n@if (markerPosition$ | async; as markerPosition) {\n <div class=\"thumb position-absolute pe-none\" [style.left.px]=\"markerPosition.x\" [style.top.px]=\"markerPosition.y\"></div>\n}","import { Component, Directive, ElementRef, EventEmitter, HostBinding, HostListener, Input, Output, ViewChild, NgZone } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { BehaviorSubject, map, Observable } from 'rxjs';\n\n@Component({\n selector: 'bs-slider',\n templateUrl: './slider.component.html',\n styleUrls: ['./slider.component.scss']\n})\nexport class BsSliderComponent {\n constructor(private element: ElementRef<HTMLElement>, private zone: NgZone) {\n this.value$.pipe(takeUntilDestroyed())\n .subscribe((value) => this.valueChange.emit(value));\n\n this.thumbMarginLeft$ = this.value$.pipe(map((value) => {\n const res = value * element.nativeElement.clientWidth - 12;\n return res;\n }));\n\n this.cursorClass$ = this.isPointerDown$.pipe(map((isPointerDown) => {\n return isPointerDown ? 'cursor-grabbing' : 'cursor-grab';\n }));\n }\n\n @HostBinding('class.d-block') dBlock = true;\n @HostBinding('class.position-relative') positionRelative = true;\n thumbMarginLeft$: Observable<number>;\n @ViewChild('track') track!: ElementRef<HTMLDivElement>;\n @ViewChild('thumb') thumb!: ElementRef<HTMLDivElement>;\n\n //#region Value\n value$ = new BehaviorSubject<number>(0.5);\n @Output() valueChange = new EventEmitter<number>();\n public get value() {\n return this.value$.value;\n }\n @Input() public set value(value: number) {\n this.value$.next(value);\n }\n //#endregion\n\n private isPointerDown$ = new BehaviorSubject<boolean>(false);\n cursorClass$: Observable<string>;\n\n onPointerDown(ev: MouseEvent | TouchEvent) {\n ev.preventDefault();\n this.zone.run(() => this.isPointerDown$.next(true));\n this.updateColor(ev);\n }\n\n @HostListener('document:mousemove', ['$event'])\n onPointerMove(ev: MouseEvent | TouchEvent) {\n if (this.isPointerDown$.value) {\n ev.preventDefault();\n ev.stopPropagation();\n this.updateColor(ev);\n }\n }\n\n @HostListener('document:mouseup', ['$event'])\n onPointerUp(ev: MouseEvent | TouchEvent) {\n this.isPointerDown$.next(false);\n }\n\n private updateColor(ev: MouseEvent | TouchEvent) {\n let co: { x: number };\n const rect = this.track.nativeElement.getBoundingClientRect();\n if ('touches' in ev) {\n co = {\n x: ev.touches[0].clientX - rect.left,\n };\n } else {\n co = {\n x: ev.clientX - rect.left,\n };\n }\n \n const percent = co.x / this.track.nativeElement.clientWidth;\n const limited = Math.max(0, Math.min(1, percent));\n this.value$.next(limited);\n }\n}\n\n@Directive({ selector: '[bsThumb]' })\nexport class BsThumbDirective {\n @HostBinding('class.thumb')\n @HostBinding('class.position-absolute')\n thumbClass = true;\n}\n\n@Directive({ selector: '[bsTrack]' })\nexport class BsTrackDirective {\n @HostBinding('class.track') trackClass = true;\n}","<div class=\"wrapper d-block position-relative\">\n <div #track class=\"track2\"\n (mousedown)=\"onPointerDown($event)\"\n (touchstart)=\"onPointerDown($event)\"\n (touchmove)=\"onPointerMove($event)\"\n (touchend)=\"onPointerUp($event)\">\n <ng-content select=\"[bsTrack]\"></ng-content>\n </div>\n <div #thumb\n (mousedown)=\"onPointerDown($event)\"\n (touchstart)=\"onPointerDown($event)\"\n (touchmove)=\"onPointerMove($event)\"\n (touchend)=\"onPointerUp($event)\"\n [class]=\"cursorClass$ | async\"\n [style.margin-left.px]=\"thumbMarginLeft$ | async\">\n <ng-content select=\"[bsThumb]\"></ng-content>\n </div>\n</div>","import { Component, EventEmitter, Input, Output, AfterViewInit, ViewChild, ElementRef } from '@angular/core';\nimport { BehaviorSubject, combineLatest, map, Observable } from 'rxjs';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { HS } from '../../interfaces/hs';\n\n@Component({\n selector: 'bs-luminosity-strip',\n templateUrl: './luminosity-strip.component.html',\n styleUrls: ['./luminosity-strip.component.scss']\n})\nexport class BsLuminosityStripComponent implements AfterViewInit {\n constructor() {\n this.hs$.pipe(takeUntilDestroyed()).subscribe((hs) => {\n if (this.canvasContext) {\n const width = this.canvas.nativeElement.width, height = this.canvas.nativeElement.height;\n this.canvasContext.clearRect(0, 0, width, height);\n this.canvasContext.save();\n\n // HSL\n // - H: 0 - 359\n // - S: \"0%\" - \"100%\"\n // - L: \"0%\" - \"50%\" - \"100%\"\n\n const gradient = this.canvasContext.createLinearGradient(0, 0, width, 0);\n gradient.addColorStop(0, `hsl(${hs.hue}, ${hs.saturation * 100}%, 0%)`);\n gradient.addColorStop(0.5, `hsl(${hs.hue}, ${hs.saturation * 100}%, 50%)`);\n gradient.addColorStop(1, `hsl(${hs.hue}, ${hs.saturation * 100}%, 100%)`);\n this.canvasContext.fillStyle = gradient;\n this.canvasContext.fillRect(0, 0, width, height);\n }\n });\n \n this.resultBackground$ = combineLatest([this.hs$, this.luminosity$])\n .pipe(map(([hs, luminosity]) => {\n return `hsl(${hs.hue}, ${hs.saturation * 100}%, ${luminosity * 100}%)`;\n }));\n \n this.luminosity$.pipe(takeUntilDestroyed())\n .subscribe(luminosity => this.luminosityChange.emit(luminosity));\n }\n\n //#region HS\n hs$ = new BehaviorSubject<HS>({ hue: 0, saturation: 0 });\n public get hs() {\n return this.hs$.value;\n }\n @Input() public set hs(value: HS) {\n this.hs$.next(value);\n }\n //#endregion\n //#region Luminosity\n luminosity$ = new BehaviorSubject<number>(0.5);\n @Output() luminosityChange = new EventEmitter<number>();\n public get luminosity() {\n return this.luminosity$.value;\n }\n @Input() public set luminosity(value: number) {\n this.luminosity$.next(value);\n }\n //#endregion\n\n private canvasContext: CanvasRenderingContext2D | null = null;\n @ViewChild('canvas') canvas!: ElementRef<HTMLCanvasElement>;\n ngAfterViewInit() {\n this.canvasContext = this.canvas.nativeElement.getContext('2d', { willReadFrequently: true });\n }\n\n resultBackground$: Observable<string>;\n}\n","<bs-slider [value]=\"(luminosity$ | async)!\" (valueChange)=\"luminosityChange.emit($event)\">\n <canvas bsTrack class=\"position-absolute w-100\" #canvas></canvas>\n <div bsThumb [style.background]=\"resultBackground$ | async\"></div>\n</bs-slider>","import { Component, EventEmitter, Input, Output, AfterViewInit, ViewChild, ElementRef } from '@angular/core';\nimport { BehaviorSubject, combineLatest, map, Observable } from 'rxjs';\nimport { HS } from '../../interfaces/hs';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\n@Component({\n selector: 'bs-alpha-strip',\n templateUrl: './alpha-strip.component.html',\n styleUrls: ['./alpha-strip.component.scss']\n})\nexport class BsAlphaStripComponent implements AfterViewInit {\n\n constructor() {\n combineLatest([this.hs$, this.luminosity$]).pipe(takeUntilDestroyed()).subscribe(([hs, luminosity]) => {\n setTimeout(() => {\n if (this.canvasContext) {\n const width = this.canvas.nativeElement.width, height = this.canvas.nativeElement.height;\n this.canvasContext.clearRect(0, 0, width, height);\n this.canvasContext.save();\n \n const gradient = this.canvasContext.createLinearGradient(0, 0, width, 0);\n gradient.addColorStop(0, `hsla(${hs.hue}, ${hs.saturation * 100}%, ${luminosity * 100}%, 0)`);\n gradient.addColorStop(1, `hsla(${hs.hue}, ${hs.saturation * 100}%, ${luminosity * 100}%, 1)`);\n this.canvasContext.fillStyle = gradient;\n this.canvasContext.fillRect(0, 0, width, height);\n }\n });\n });\n\n this.resultBackground$ = combineLatest([this.hs$, this.luminosity$, this.alpha$])\n .pipe(map(([hs, luminosity, alpha]) => {\n return `hsla(${hs.hue}, ${hs.saturation * 100}%, ${luminosity * 100}%, ${alpha})`;\n }));\n\n this.alpha$.pipe(takeUntilDestroyed())\n .subscribe((alpha) => this.alphaChange.emit(alpha));\n }\n\n //#region HS\n hs$ = new BehaviorSubject<HS>({ hue: 0, saturation: 0 });\n public get hs() {\n return this.hs$.value;\n }\n @Input() public set hs(value: HS) {\n this.hs$.next(value);\n }\n //#endregion\n //#region Luminosity\n luminosity$ = new BehaviorSubject<number>(0.5);\n public get luminosity() {\n return this.luminosity$.value;\n }\n @Input() public set luminosity(value: number) {\n this.luminosity$.next(value);\n }\n //#endregion\n //#region Alpha\n alpha$ = new BehaviorSubject<number>(1);\n @Output() alphaChange = new EventEmitter<number>();\n public get alpha() {\n return this.alpha$.value;\n }\n @Input() public set alpha(value: number) {\n this.alpha$.next(value);\n }\n //#endregion\n \n private canvasContext: CanvasRenderingContext2D | null = null;\n @ViewChild('track') canvas!: ElementRef<HTMLCanvasElement>;\n ngAfterViewInit() {\n this.canvasContext = this.canvas.nativeElement.getContext('2d', { willReadFrequently: true });\n }\n\n resultBackground$: Observable<string>;\n}\n","<bs-slider [value]=\"(alpha$ | async)!\" (valueChange)=\"alphaChange.emit($event)\">\n <canvas bsTrack class=\" track position-absolute w-100\" #track></canvas>\n\n <!-- [style.background]=\"resultBackground$ | async\" -->\n <div bsThumb [style.background]=\"resultBackground$ | async\"></div>\n</bs-slider>","import { Component, Input, ViewChild, EventEmitter, Output } from \"@angular/core\";\nimport { BehaviorSubject } from \"rxjs\";\nimport { HS } from \"../../interfaces/hs\";\nimport { BsColorWheelComponent } from \"../color-wheel/color-wheel.component\";\nimport { takeUntilDestroyed } from \"@angular/core/rxjs-interop\";\n\n@Component({\n selector: 'bs-color-picker',\n templateUrl: './color-picker.component.html',\n styleUrls: ['./color-picker.component.scss']\n})\nexport class BsColorPickerComponent {\n\n constructor() {\n this.alpha$.pipe(takeUntilDestroyed())\n .subscribe((alpha) => this.alphaChange.emit(alpha));\n }\n\n @ViewChild('wheel') colorWheel!: BsColorWheelComponent;\n @Input() set size(value: number) {\n this.size$.next(value);\n }\n @Input() set allowAlpha(value: boolean) {\n this.allowAlpha$.next(value);\n }\n \n size$ = new BehaviorSubject<number>(150);\n disabled$ = new BehaviorSubject<boolean>(false);\n allowAlpha$ = new BehaviorSubject<boolean>(true);\n\n hs$ = new BehaviorSubject<HS>({ hue: 0, saturation: 0 });\n luminosity$ = new BehaviorSubject<number>(0);\n\n //#region Alpha\n alpha$ = new BehaviorSubject<number>(1);\n @Output() alphaChange = new EventEmitter<number>();\n get alpha() {\n return this.alpha$.value;\n }\n @Input() set alpha(value: number) {\n this.alpha$.next(value);\n }\n //#endregion\n}\n","@let letDisabled = (disabled$ | async)!;\n@let letHS = (hs$ | async)!;\n@let letLuminosity = (luminosity$ | async)!;\n@let letAlpha = (alpha$ | async)!;\n\n<bs-color-wheel [hs]=\"letHS\" (hsChange)=\"hs$.next($event)\" [luminosity]=\"letLuminosity\" [width]=\"(size$ | async) ?? 150\" [height]=\"(size$ | async) ?? 150\" #wheel></bs-color-wheel>\n<bs-luminosity-strip [hs]=\"letHS\" [luminosity]=\"letLuminosity\" (luminosityChange)=\"luminosity$.next($event)\" class=\"d-block mt-2\" [style.width.px]=\"size$ | async\" #strip></bs-luminosity-strip>\n@if (allowAlpha$ | async) {\n <bs-alpha-strip [hs]=\"letHS\" [luminosity]=\"letLuminosity\" [alpha]=\"letAlpha\" (alphaChange)=\"alpha$.next($event)\" class=\"d-block mt-2\" [style.width.px]=\"size$ | async\" #alpha></bs-alpha-strip>\n}","import { Directive, Inject, forwardRef, AfterViewInit, DestroyRef } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { combineLatest } from 'rxjs';\nimport { BsColorPickerComponent } from '../../components/color-picker/color-picker.component';\nimport { RgbColor } from '../../interfaces/rgb-color';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\n@Directive({\n selector: 'bs-color-picker',\n providers: [{\n provide: NG_VALUE_ACCESSOR,\n // useExisting: BsColorPickerValueAccessor,\n useExisting: forwardRef(() => BsColorPickerValueAccessor),\n multi: true\n }],\n exportAs: 'bsColorPicker'\n})\nexport class BsColorPickerValueAccessor implements AfterViewInit, ControlValueAccessor {\n\n constructor(@Inject(forwardRef(() => BsColorPickerComponent)) private host: BsColorPickerComponent, private destroy: DestroyRef) {\n }\n\n ngAfterViewInit() {\n combineLatest([this.host.hs$, this.host.luminosity$])\n .pipe(takeUntilDestroyed(this.destroy))\n .subscribe(([hs, luminosity]) => {\n const rgb = this.hsl2rgb(hs.hue, hs.saturation, luminosity);\n const hex = this.rgb2hex(rgb);\n setTimeout(() => this.onValueChange && this.onValueChange(hex), 10);\n })\n }\n\n public hsl2rgb(h: number, s: number, l: number) {\n const k = (n: number) => (n + h / 30) % 12;\n const a = s * Math.min(l, 1 - l);\n const f = (n: number) => l - a * Math.max(-1, Math.min(k(n) - 3, Math.min(9 - k(n), 1)));\n const retValue = <RgbColor>{ r: 255 * f(0), g: 255 * f(8), b: 255 * f(4) };\n return retValue;\n }\n\n onValueChange?: (value: string) => void;\n onTouched?: () => void;\n\n //#region ControlValueAccessor implementation\n registerOnChange(fn: (_: any) => void) {\n this.onValueChange = fn;\n }\n \n registerOnTouched(fn: () => void) {\n this.onTouched = fn;\n }\n\n writeValue(value: string | null) {\n if (this.host && this.host.colorWheel) {\n if (value) {\n const rgb = this.hex2rgb(value);\n const hsl = this.rgb2Hsl(rgb);\n this.host.hs$.next({ hue: hsl.h, saturation: hsl.s });\n this.host.luminosity$.next(hsl.l);\n }\n }\n }\n\n setDisabledState(isDisabled: boolean) {\n if (this.host && this.host.colorWheel) {\n this.host.colorWheel.disabled$.next(isDisabled);\n }\n }\n //#endregion\n\n //#region Color Conversion\n private rgb2hex(rgb: RgbColor) {\n return '#' + (Math.round((rgb.r << 16) + (rgb.g << 8) + rgb.b)).toString(16).padStart(6, '0');\n }\n\n private hex2rgb(hex: string): RgbColor {\n const r = parseInt(hex.slice(1, 3), 16),\n g = parseInt(hex.slice(3, 5), 16),\n b = parseInt(hex.slice(5, 7), 16);\n\n return { r, g, b };\n }\n /**\n * Divide 1 to n, handling floating point errors.\n * Ensures that the value is in between 0 and 1.\n **/\n private bound01(n: number, max: number) {\n n = Math.min(max, Math.max(0, n));\n if (Math.abs(n - max) < 0.000001) {\n return 1;\n } else {\n return (n % max) / max;\n }\n }\n private rgb2Hsl(color: RgbColor) {\n const r01 = this.bound01(color.r, 255);\n const g01 = this.bound01(color.g, 255);\n const b01 = this.bound01(color.b, 255);\n\n const max = Math.max(r01, g01, b01);\n const min = Math.min(r01, g01, b01);\n\n let h: number, s: number;\n const l = (max + min) / 2;\n if (max === min) {\n h = s = 0;\n } else {\n const d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n\n switch (max) {\n case r01:\n h = (g01 - b01) / d + (g01 < b01 ? 6 : 0);\n break;\n case g01:\n h = (b01 - r01) / d + 2;\n break;\n case b01:\n h = (r01 - g01) / d + 4;\n break;\n default: {\n throw 'Invalid operation';\n }\n }\n\n h /= 6;\n }\n\n h *= 360;\n\n return { h, s, l };\n }\n //#endregion\n}\n","import { NgModule } from '@angular/core';\nimport { AsyncPipe } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { BsColorPickerValueAccessor } from './directives/color-picker-value-accessor/color-picker-value-accessor.directive';\nimport { BsColorPickerComponent } from './components/color-picker/color-picker.component';\nimport { BsColorWheelComponent } from './components/color-wheel/color-wheel.component';\nimport { BsLuminosityStripComponent } from './components/luminosity-strip/luminosity-strip.component';\nimport { BsSliderComponent, BsThumbDirective, BsTrackDirective } from './components/slider/slider.component';\nimport { BsAlphaStripComponent } from './components/alpha-strip/alpha-strip.component';\n\n@NgModule({\n declarations: [\n BsColorPickerComponent,\n BsColorPickerValueAccessor,\n BsColorWheelComponent,\n BsLuminosityStripComponent,\n BsSliderComponent,\n BsThumbDirective,\n BsTrackDirective,\n BsAlphaStripComponent\n ],\n imports: [\n AsyncPipe,\n FormsModule,\n ],\n exports: [\n BsColorPickerComponent,\n BsColorPickerValueAccessor,\n BsColorWheelComponent,\n BsLuminosityStripComponent,\n BsSliderComponent,\n BsThumbDirective,\n BsTrackDirective,\n BsAlphaStripComponent\n ]\n})\nexport class BsColorPickerModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.BsSliderComponent","i1.BsThumbDirective","i1.BsTrackDirective","i2","i1.BsColorWheelComponent","i2.BsLuminosityStripComponent","i3.BsAlphaStripComponent","i4"],"mappings":"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"}