@mintplayer/ng-bootstrap 19.0.0 → 20.0.0-preview.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (672) hide show
  1. package/accordion/index.d.ts +51 -1
  2. package/alert/index.d.ts +32 -1
  3. package/async-host-binding/index.d.ts +13 -1
  4. package/badge/index.d.ts +16 -1
  5. package/breadcrumb/index.d.ts +20 -1
  6. package/button-group/index.d.ts +8 -1
  7. package/button-type/index.d.ts +12 -1
  8. package/calendar/index.d.ts +32 -1
  9. package/calendar-month/index.d.ts +54 -1
  10. package/card/index.d.ts +22 -1
  11. package/carousel/index.d.ts +64 -1
  12. package/close/index.d.ts +11 -1
  13. package/code-snippet/index.d.ts +20 -1
  14. package/color-picker/index.d.ts +196 -5
  15. package/container/index.d.ts +8 -1
  16. package/context-menu/index.d.ts +30 -1
  17. package/copy/index.d.ts +14 -1
  18. package/datatable/index.d.ts +66 -1
  19. package/datepicker/index.d.ts +20 -1
  20. package/dock/index.d.ts +177 -1
  21. package/dropdown/index.d.ts +63 -1
  22. package/dropdown-divider/index.d.ts +9 -1
  23. package/dropdown-menu/index.d.ts +32 -1
  24. package/enhanced-paste/index.d.ts +23 -1
  25. package/enum/index.d.ts +17 -1
  26. package/fesm2022/mintplayer-ng-bootstrap-accordion.mjs +15 -15
  27. package/fesm2022/mintplayer-ng-bootstrap-accordion.mjs.map +1 -1
  28. package/fesm2022/mintplayer-ng-bootstrap-alert.mjs +11 -11
  29. package/fesm2022/mintplayer-ng-bootstrap-alert.mjs.map +1 -1
  30. package/fesm2022/mintplayer-ng-bootstrap-async-host-binding.mjs.map +1 -1
  31. package/fesm2022/mintplayer-ng-bootstrap-badge.mjs +4 -4
  32. package/fesm2022/mintplayer-ng-bootstrap-badge.mjs.map +1 -1
  33. package/fesm2022/mintplayer-ng-bootstrap-breadcrumb.mjs +10 -10
  34. package/fesm2022/mintplayer-ng-bootstrap-breadcrumb.mjs.map +1 -1
  35. package/fesm2022/mintplayer-ng-bootstrap-button-group.mjs +4 -4
  36. package/fesm2022/mintplayer-ng-bootstrap-button-group.mjs.map +1 -1
  37. package/fesm2022/mintplayer-ng-bootstrap-button-type.mjs +4 -4
  38. package/fesm2022/mintplayer-ng-bootstrap-button-type.mjs.map +1 -1
  39. package/fesm2022/mintplayer-ng-bootstrap-calendar-month.mjs +9 -9
  40. package/fesm2022/mintplayer-ng-bootstrap-calendar-month.mjs.map +1 -1
  41. package/fesm2022/mintplayer-ng-bootstrap-calendar.mjs +4 -4
  42. package/fesm2022/mintplayer-ng-bootstrap-calendar.mjs.map +1 -1
  43. package/fesm2022/mintplayer-ng-bootstrap-card.mjs +12 -12
  44. package/fesm2022/mintplayer-ng-bootstrap-card.mjs.map +1 -1
  45. package/fesm2022/mintplayer-ng-bootstrap-carousel.mjs +15 -15
  46. package/fesm2022/mintplayer-ng-bootstrap-carousel.mjs.map +1 -1
  47. package/fesm2022/mintplayer-ng-bootstrap-close.mjs +5 -5
  48. package/fesm2022/mintplayer-ng-bootstrap-close.mjs.map +1 -1
  49. package/fesm2022/mintplayer-ng-bootstrap-code-snippet.mjs +6 -11
  50. package/fesm2022/mintplayer-ng-bootstrap-code-snippet.mjs.map +1 -1
  51. package/fesm2022/mintplayer-ng-bootstrap-color-picker.mjs +29 -29
  52. package/fesm2022/mintplayer-ng-bootstrap-color-picker.mjs.map +1 -1
  53. package/fesm2022/mintplayer-ng-bootstrap-container.mjs +3 -3
  54. package/fesm2022/mintplayer-ng-bootstrap-container.mjs.map +1 -1
  55. package/fesm2022/mintplayer-ng-bootstrap-context-menu.mjs +8 -8
  56. package/fesm2022/mintplayer-ng-bootstrap-context-menu.mjs.map +1 -1
  57. package/fesm2022/mintplayer-ng-bootstrap-copy.mjs +4 -4
  58. package/fesm2022/mintplayer-ng-bootstrap-copy.mjs.map +1 -1
  59. package/fesm2022/mintplayer-ng-bootstrap-datatable.mjs +14 -14
  60. package/fesm2022/mintplayer-ng-bootstrap-datatable.mjs.map +1 -1
  61. package/fesm2022/mintplayer-ng-bootstrap-datepicker.mjs +4 -4
  62. package/fesm2022/mintplayer-ng-bootstrap-datepicker.mjs.map +1 -1
  63. package/fesm2022/mintplayer-ng-bootstrap-dock.mjs +20 -20
  64. package/fesm2022/mintplayer-ng-bootstrap-dock.mjs.map +1 -1
  65. package/fesm2022/mintplayer-ng-bootstrap-dropdown-divider.mjs +4 -4
  66. package/fesm2022/mintplayer-ng-bootstrap-dropdown-divider.mjs.map +1 -1
  67. package/fesm2022/mintplayer-ng-bootstrap-dropdown-menu.mjs +11 -11
  68. package/fesm2022/mintplayer-ng-bootstrap-dropdown-menu.mjs.map +1 -1
  69. package/fesm2022/mintplayer-ng-bootstrap-dropdown.mjs +14 -14
  70. package/fesm2022/mintplayer-ng-bootstrap-dropdown.mjs.map +1 -1
  71. package/fesm2022/mintplayer-ng-bootstrap-enhanced-paste.mjs +4 -4
  72. package/fesm2022/mintplayer-ng-bootstrap-enhanced-paste.mjs.map +1 -1
  73. package/fesm2022/mintplayer-ng-bootstrap-enum.mjs +3 -3
  74. package/fesm2022/mintplayer-ng-bootstrap-enum.mjs.map +1 -1
  75. package/fesm2022/mintplayer-ng-bootstrap-file-upload.mjs +14 -14
  76. package/fesm2022/mintplayer-ng-bootstrap-file-upload.mjs.map +1 -1
  77. package/fesm2022/mintplayer-ng-bootstrap-floating-labels.mjs +5 -5
  78. package/fesm2022/mintplayer-ng-bootstrap-floating-labels.mjs.map +1 -1
  79. package/fesm2022/mintplayer-ng-bootstrap-font-color.mjs +3 -3
  80. package/fesm2022/mintplayer-ng-bootstrap-font-color.mjs.map +1 -1
  81. package/fesm2022/mintplayer-ng-bootstrap-for.mjs +4 -4
  82. package/fesm2022/mintplayer-ng-bootstrap-for.mjs.map +1 -1
  83. package/fesm2022/mintplayer-ng-bootstrap-form.mjs +15 -15
  84. package/fesm2022/mintplayer-ng-bootstrap-form.mjs.map +1 -1
  85. package/fesm2022/mintplayer-ng-bootstrap-grid.mjs +21 -21
  86. package/fesm2022/mintplayer-ng-bootstrap-grid.mjs.map +1 -1
  87. package/fesm2022/mintplayer-ng-bootstrap-has-id.mjs.map +1 -1
  88. package/fesm2022/mintplayer-ng-bootstrap-has-overlay.mjs +4 -4
  89. package/fesm2022/mintplayer-ng-bootstrap-has-overlay.mjs.map +1 -1
  90. package/fesm2022/mintplayer-ng-bootstrap-has-property.mjs +3 -3
  91. package/fesm2022/mintplayer-ng-bootstrap-has-property.mjs.map +1 -1
  92. package/fesm2022/mintplayer-ng-bootstrap-in-list.mjs +3 -3
  93. package/fesm2022/mintplayer-ng-bootstrap-in-list.mjs.map +1 -1
  94. package/fesm2022/mintplayer-ng-bootstrap-input-group.mjs +4 -4
  95. package/fesm2022/mintplayer-ng-bootstrap-input-group.mjs.map +1 -1
  96. package/fesm2022/mintplayer-ng-bootstrap-instance-of.mjs +17 -17
  97. package/fesm2022/mintplayer-ng-bootstrap-instance-of.mjs.map +1 -1
  98. package/fesm2022/mintplayer-ng-bootstrap-let.mjs +4 -4
  99. package/fesm2022/mintplayer-ng-bootstrap-let.mjs.map +1 -1
  100. package/fesm2022/mintplayer-ng-bootstrap-linify.mjs +3 -3
  101. package/fesm2022/mintplayer-ng-bootstrap-linify.mjs.map +1 -1
  102. package/fesm2022/mintplayer-ng-bootstrap-list-group.mjs +12 -12
  103. package/fesm2022/mintplayer-ng-bootstrap-list-group.mjs.map +1 -1
  104. package/fesm2022/mintplayer-ng-bootstrap-markdown.mjs +12 -12
  105. package/fesm2022/mintplayer-ng-bootstrap-markdown.mjs.map +1 -1
  106. package/fesm2022/mintplayer-ng-bootstrap-marquee.mjs +3 -3
  107. package/fesm2022/mintplayer-ng-bootstrap-marquee.mjs.map +1 -1
  108. package/fesm2022/mintplayer-ng-bootstrap-modal.mjs +27 -27
  109. package/fesm2022/mintplayer-ng-bootstrap-modal.mjs.map +1 -1
  110. package/fesm2022/mintplayer-ng-bootstrap-multiselect.mjs +17 -17
  111. package/fesm2022/mintplayer-ng-bootstrap-multiselect.mjs.map +1 -1
  112. package/fesm2022/mintplayer-ng-bootstrap-navbar-toggler.mjs +4 -4
  113. package/fesm2022/mintplayer-ng-bootstrap-navbar-toggler.mjs.map +1 -1
  114. package/fesm2022/mintplayer-ng-bootstrap-navbar.mjs +33 -33
  115. package/fesm2022/mintplayer-ng-bootstrap-navbar.mjs.map +1 -1
  116. package/fesm2022/mintplayer-ng-bootstrap-navigation-lock.mjs +11 -11
  117. package/fesm2022/mintplayer-ng-bootstrap-navigation-lock.mjs.map +1 -1
  118. package/fesm2022/mintplayer-ng-bootstrap-no-noscript.mjs +4 -4
  119. package/fesm2022/mintplayer-ng-bootstrap-no-noscript.mjs.map +1 -1
  120. package/fesm2022/mintplayer-ng-bootstrap-offcanvas.mjs +27 -27
  121. package/fesm2022/mintplayer-ng-bootstrap-offcanvas.mjs.map +1 -1
  122. package/fesm2022/mintplayer-ng-bootstrap-ordinal-number.mjs +3 -3
  123. package/fesm2022/mintplayer-ng-bootstrap-ordinal-number.mjs.map +1 -1
  124. package/fesm2022/mintplayer-ng-bootstrap-pagination.mjs +5 -5
  125. package/fesm2022/mintplayer-ng-bootstrap-pagination.mjs.map +1 -1
  126. package/fesm2022/mintplayer-ng-bootstrap-parallax.mjs +3 -3
  127. package/fesm2022/mintplayer-ng-bootstrap-parallax.mjs.map +1 -1
  128. package/fesm2022/mintplayer-ng-bootstrap-placeholder.mjs +11 -11
  129. package/fesm2022/mintplayer-ng-bootstrap-placeholder.mjs.map +1 -1
  130. package/fesm2022/mintplayer-ng-bootstrap-playlist-toggler.mjs +4 -4
  131. package/fesm2022/mintplayer-ng-bootstrap-playlist-toggler.mjs.map +1 -1
  132. package/fesm2022/mintplayer-ng-bootstrap-popover.mjs +17 -17
  133. package/fesm2022/mintplayer-ng-bootstrap-popover.mjs.map +1 -1
  134. package/fesm2022/mintplayer-ng-bootstrap-progress-bar.mjs +13 -13
  135. package/fesm2022/mintplayer-ng-bootstrap-progress-bar.mjs.map +1 -1
  136. package/fesm2022/mintplayer-ng-bootstrap-range.mjs +11 -11
  137. package/fesm2022/mintplayer-ng-bootstrap-range.mjs.map +1 -1
  138. package/fesm2022/mintplayer-ng-bootstrap-rating.mjs +4 -4
  139. package/fesm2022/mintplayer-ng-bootstrap-rating.mjs.map +1 -1
  140. package/fesm2022/mintplayer-ng-bootstrap-resizable.mjs +11 -11
  141. package/fesm2022/mintplayer-ng-bootstrap-resizable.mjs.map +1 -1
  142. package/fesm2022/mintplayer-ng-bootstrap-scheduler.mjs +26 -26
  143. package/fesm2022/mintplayer-ng-bootstrap-scheduler.mjs.map +1 -1
  144. package/fesm2022/mintplayer-ng-bootstrap-scrollspy.mjs +14 -14
  145. package/fesm2022/mintplayer-ng-bootstrap-scrollspy.mjs.map +1 -1
  146. package/fesm2022/mintplayer-ng-bootstrap-searchbox.mjs +17 -17
  147. package/fesm2022/mintplayer-ng-bootstrap-searchbox.mjs.map +1 -1
  148. package/fesm2022/mintplayer-ng-bootstrap-select.mjs +14 -14
  149. package/fesm2022/mintplayer-ng-bootstrap-select.mjs.map +1 -1
  150. package/fesm2022/mintplayer-ng-bootstrap-select2.mjs +14 -14
  151. package/fesm2022/mintplayer-ng-bootstrap-select2.mjs.map +1 -1
  152. package/fesm2022/mintplayer-ng-bootstrap-shell.mjs +11 -11
  153. package/fesm2022/mintplayer-ng-bootstrap-shell.mjs.map +1 -1
  154. package/fesm2022/mintplayer-ng-bootstrap-signature-pad.mjs +4 -4
  155. package/fesm2022/mintplayer-ng-bootstrap-signature-pad.mjs.map +1 -1
  156. package/fesm2022/mintplayer-ng-bootstrap-slugify.mjs +3 -3
  157. package/fesm2022/mintplayer-ng-bootstrap-slugify.mjs.map +1 -1
  158. package/fesm2022/mintplayer-ng-bootstrap-spinner.mjs +4 -4
  159. package/fesm2022/mintplayer-ng-bootstrap-spinner.mjs.map +1 -1
  160. package/fesm2022/mintplayer-ng-bootstrap-split-string.mjs +3 -3
  161. package/fesm2022/mintplayer-ng-bootstrap-split-string.mjs.map +1 -1
  162. package/fesm2022/mintplayer-ng-bootstrap-splitter.mjs +14 -14
  163. package/fesm2022/mintplayer-ng-bootstrap-splitter.mjs.map +1 -1
  164. package/fesm2022/mintplayer-ng-bootstrap-sticky-footer.mjs +11 -11
  165. package/fesm2022/mintplayer-ng-bootstrap-sticky-footer.mjs.map +1 -1
  166. package/fesm2022/mintplayer-ng-bootstrap-tab-control.mjs +16 -16
  167. package/fesm2022/mintplayer-ng-bootstrap-tab-control.mjs.map +1 -1
  168. package/fesm2022/mintplayer-ng-bootstrap-table.mjs +5 -5
  169. package/fesm2022/mintplayer-ng-bootstrap-table.mjs.map +1 -1
  170. package/fesm2022/mintplayer-ng-bootstrap-timepicker.mjs +4 -4
  171. package/fesm2022/mintplayer-ng-bootstrap-timepicker.mjs.map +1 -1
  172. package/fesm2022/mintplayer-ng-bootstrap-toast.mjs +26 -26
  173. package/fesm2022/mintplayer-ng-bootstrap-toast.mjs.map +1 -1
  174. package/fesm2022/mintplayer-ng-bootstrap-toggle-button.mjs +14 -14
  175. package/fesm2022/mintplayer-ng-bootstrap-toggle-button.mjs.map +1 -1
  176. package/fesm2022/mintplayer-ng-bootstrap-tooltip.mjs +11 -11
  177. package/fesm2022/mintplayer-ng-bootstrap-tooltip.mjs.map +1 -1
  178. package/fesm2022/mintplayer-ng-bootstrap-treeview.mjs +11 -11
  179. package/fesm2022/mintplayer-ng-bootstrap-treeview.mjs.map +1 -1
  180. package/fesm2022/mintplayer-ng-bootstrap-trust-html.mjs +3 -3
  181. package/fesm2022/mintplayer-ng-bootstrap-trust-html.mjs.map +1 -1
  182. package/fesm2022/mintplayer-ng-bootstrap-typeahead.mjs +4 -4
  183. package/fesm2022/mintplayer-ng-bootstrap-typeahead.mjs.map +1 -1
  184. package/fesm2022/mintplayer-ng-bootstrap-uc-first.mjs +3 -3
  185. package/fesm2022/mintplayer-ng-bootstrap-uc-first.mjs.map +1 -1
  186. package/fesm2022/mintplayer-ng-bootstrap-user-agent.mjs +4 -4
  187. package/fesm2022/mintplayer-ng-bootstrap-user-agent.mjs.map +1 -1
  188. package/fesm2022/mintplayer-ng-bootstrap-word-count.mjs +3 -3
  189. package/fesm2022/mintplayer-ng-bootstrap-word-count.mjs.map +1 -1
  190. package/fesm2022/mintplayer-ng-bootstrap.mjs.map +1 -1
  191. package/file-upload/index.d.ts +59 -1
  192. package/floating-labels/index.d.ts +10 -1
  193. package/font-color/index.d.ts +10 -1
  194. package/for/index.d.ts +13 -1
  195. package/form/index.d.ts +33 -1
  196. package/grid/index.d.ts +74 -1
  197. package/has-id/index.d.ts +5 -1
  198. package/has-overlay/index.d.ts +8 -1
  199. package/has-property/index.d.ts +10 -1
  200. package/in-list/index.d.ts +11 -1
  201. package/index.d.ts +31 -3
  202. package/input-group/index.d.ts +8 -1
  203. package/instance-of/index.d.ts +81 -1
  204. package/let/index.d.ts +45 -2
  205. package/linify/index.d.ts +10 -1
  206. package/list-group/index.d.ts +23 -1
  207. package/markdown/index.d.ts +37 -4
  208. package/marquee/index.d.ts +8 -1
  209. package/modal/index.d.ts +76 -1
  210. package/multiselect/index.d.ts +53 -1
  211. package/navbar/index.d.ts +153 -1
  212. package/navbar-toggler/index.d.ts +17 -1
  213. package/navigation-lock/index.d.ts +64 -1
  214. package/no-noscript/index.d.ts +11 -1
  215. package/offcanvas/index.d.ts +112 -1
  216. package/ordinal-number/index.d.ts +13 -1
  217. package/package.json +15 -15
  218. package/pagination/index.d.ts +56 -1
  219. package/parallax/index.d.ts +11 -1
  220. package/placeholder/index.d.ts +32 -1
  221. package/playlist-toggler/index.d.ts +17 -1
  222. package/popover/index.d.ts +67 -1
  223. package/progress-bar/index.d.ts +46 -1
  224. package/range/index.d.ts +36 -1
  225. package/rating/index.d.ts +23 -1
  226. package/resizable/index.d.ts +94 -1
  227. package/scheduler/index.d.ts +231 -1
  228. package/scrollspy/index.d.ts +46 -1
  229. package/searchbox/index.d.ts +78 -3
  230. package/select/index.d.ts +80 -1
  231. package/select2/index.d.ts +68 -1
  232. package/shell/index.d.ts +39 -4
  233. package/signature-pad/index.d.ts +41 -1
  234. package/slugify/index.d.ts +10 -1
  235. package/spinner/index.d.ts +22 -1
  236. package/split-string/index.d.ts +10 -1
  237. package/splitter/index.d.ts +81 -1
  238. package/sticky-footer/index.d.ts +29 -1
  239. package/tab-control/index.d.ts +72 -1
  240. package/table/index.d.ts +18 -1
  241. package/timepicker/index.d.ts +33 -1
  242. package/toast/index.d.ts +75 -1
  243. package/toggle-button/index.d.ts +69 -1
  244. package/tooltip/index.d.ts +47 -1
  245. package/treeview/index.d.ts +37 -1
  246. package/trust-html/index.d.ts +14 -1
  247. package/typeahead/index.d.ts +28 -1
  248. package/uc-first/index.d.ts +10 -1
  249. package/user-agent/index.d.ts +28 -1
  250. package/word-count/index.d.ts +10 -1
  251. package/accordion/src/accordion/accordion.component.d.ts +0 -16
  252. package/accordion/src/accordion-tab/accordion-tab.component.d.ts +0 -20
  253. package/accordion/src/accordion-tab-header/accordion-tab-header.component.d.ts +0 -9
  254. package/accordion/src/accordion.module.d.ts +0 -11
  255. package/accordion/src/index.d.ts +0 -4
  256. package/alert/src/alert/alert.component.d.ts +0 -15
  257. package/alert/src/alert-close/alert-close.component.d.ts +0 -9
  258. package/alert/src/alert.module.d.ts +0 -8
  259. package/alert/src/index.d.ts +0 -3
  260. package/async-host-binding/src/bind-event.plugin.d.ts +0 -7
  261. package/async-host-binding/src/index.d.ts +0 -2
  262. package/async-host-binding/src/provide-async-host-bindings.d.ts +0 -2
  263. package/badge/src/badge.component.d.ts +0 -13
  264. package/badge/src/index.d.ts +0 -1
  265. package/breadcrumb/src/breadcrumb/breadcrumb.component.d.ts +0 -5
  266. package/breadcrumb/src/breadcrumb-item/breadcrumb-item.component.d.ts +0 -6
  267. package/breadcrumb/src/breadcrumb.module.d.ts +0 -8
  268. package/breadcrumb/src/index.d.ts +0 -3
  269. package/button-group/src/button-group/button-group.component.d.ts +0 -5
  270. package/button-group/src/index.d.ts +0 -1
  271. package/button-type/src/button-type/button-type.directive.d.ts +0 -9
  272. package/button-type/src/index.d.ts +0 -1
  273. package/calendar/src/calendar.component.d.ts +0 -29
  274. package/calendar/src/index.d.ts +0 -1
  275. package/calendar-month/src/index.d.ts +0 -3
  276. package/calendar-month/src/interfaces/date-day-of-month.d.ts +0 -5
  277. package/calendar-month/src/interfaces/first-and-last-date.d.ts +0 -4
  278. package/calendar-month/src/interfaces/index.d.ts +0 -4
  279. package/calendar-month/src/interfaces/week.d.ts +0 -5
  280. package/calendar-month/src/interfaces/weekday.d.ts +0 -4
  281. package/calendar-month/src/pipes/index.d.ts +0 -2
  282. package/calendar-month/src/pipes/month-name/month-name.pipe.d.ts +0 -7
  283. package/calendar-month/src/pipes/weekday-name/weekday-name.pipe.d.ts +0 -7
  284. package/calendar-month/src/service/calendar-month.service.d.ts +0 -18
  285. package/card/src/card/card.component.d.ts +0 -6
  286. package/card/src/card-header/card-header.component.d.ts +0 -6
  287. package/card/src/card.module.d.ts +0 -9
  288. package/card/src/index.d.ts +0 -3
  289. package/carousel/src/carousel/carousel.component.d.ts +0 -35
  290. package/carousel/src/carousel-image/carousel-image.directive.d.ts +0 -13
  291. package/carousel/src/carousel-img/carousel-img.directive.d.ts +0 -8
  292. package/carousel/src/carousel.module.d.ts +0 -12
  293. package/carousel/src/index.d.ts +0 -4
  294. package/close/src/close.component.d.ts +0 -8
  295. package/close/src/index.d.ts +0 -1
  296. package/code-snippet/src/code-snippet.component.d.ts +0 -18
  297. package/code-snippet/src/index.d.ts +0 -1
  298. package/color-picker/color-picker.module.d.ts +0 -14
  299. package/color-picker/components/alpha-strip/alpha-strip.component.d.ts +0 -23
  300. package/color-picker/components/color-picker/color-picker.component.d.ts +0 -22
  301. package/color-picker/components/color-wheel/color-wheel.component.d.ts +0 -53
  302. package/color-picker/components/index.d.ts +0 -5
  303. package/color-picker/components/luminosity-strip/luminosity-strip.component.d.ts +0 -20
  304. package/color-picker/components/slider/slider.component.d.ts +0 -35
  305. package/color-picker/directives/color-picker-value-accessor/color-picker-value-accessor.directive.d.ts +0 -28
  306. package/color-picker/directives/index.d.ts +0 -1
  307. package/color-picker/interfaces/hs.d.ts +0 -4
  308. package/color-picker/interfaces/hsl-color.d.ts +0 -5
  309. package/color-picker/interfaces/index.d.ts +0 -3
  310. package/color-picker/interfaces/rgb-color.d.ts +0 -5
  311. package/color-picker/types/html-color.d.ts +0 -1
  312. package/color-picker/types/index.d.ts +0 -1
  313. package/container/src/container/container.component.d.ts +0 -5
  314. package/container/src/index.d.ts +0 -1
  315. package/context-menu/src/context-menu.directive.d.ts +0 -18
  316. package/context-menu/src/context-menu.module.d.ts +0 -10
  317. package/context-menu/src/index.d.ts +0 -2
  318. package/copy/src/copy.directive.d.ts +0 -11
  319. package/copy/src/index.d.ts +0 -1
  320. package/datatable/src/datatable/datatable.component.d.ts +0 -20
  321. package/datatable/src/datatable-column/datatable-column.directive.d.ts +0 -10
  322. package/datatable/src/datatable-settings.d.ts +0 -15
  323. package/datatable/src/datatable.module.d.ts +0 -13
  324. package/datatable/src/index.d.ts +0 -5
  325. package/datatable/src/row-template/row-template.directive.d.ts +0 -15
  326. package/datepicker/src/datepicker.component.d.ts +0 -17
  327. package/datepicker/src/index.d.ts +0 -1
  328. package/dock/src/dock/dock.component.d.ts +0 -24
  329. package/dock/src/dock-pane-renderer/dock-pane-renderer.component.d.ts +0 -31
  330. package/dock/src/dock-panel/dock-panel.component.d.ts +0 -13
  331. package/dock/src/dock-panel-header/dock-panel-header.component.d.ts +0 -26
  332. package/dock/src/dock.module.d.ts +0 -17
  333. package/dock/src/enums/index.d.ts +0 -1
  334. package/dock/src/enums/pane-type.enum.d.ts +0 -6
  335. package/dock/src/index.d.ts +0 -9
  336. package/dock/src/interfaces/dock-layout.d.ts +0 -6
  337. package/dock/src/interfaces/drag-operation.d.ts +0 -6
  338. package/dock/src/interfaces/index.d.ts +0 -5
  339. package/dock/src/interfaces/point.d.ts +0 -4
  340. package/dock/src/interfaces/remove-from-pane-result.d.ts +0 -6
  341. package/dock/src/interfaces/size.d.ts +0 -4
  342. package/dock/src/panes/content-pane.d.ts +0 -8
  343. package/dock/src/panes/dock-pane.d.ts +0 -3
  344. package/dock/src/panes/document-host-pane.d.ts +0 -7
  345. package/dock/src/panes/floating-pane.d.ts +0 -10
  346. package/dock/src/panes/index.d.ts +0 -6
  347. package/dock/src/panes/split-pane.d.ts +0 -8
  348. package/dock/src/panes/tab-group-pane.d.ts +0 -7
  349. package/dock/src/services/dock/dock.service.d.ts +0 -14
  350. package/dock/src/services/index.d.ts +0 -1
  351. package/dock/src/types/split-pane-orientation.type.d.ts +0 -1
  352. package/dropdown/src/dropdown/dropdown.directive.d.ts +0 -23
  353. package/dropdown/src/dropdown-menu/dropdown-menu.directive.d.ts +0 -22
  354. package/dropdown/src/dropdown-toggle/dropdown-toggle.directive.d.ts +0 -11
  355. package/dropdown/src/dropdown.module.d.ts +0 -13
  356. package/dropdown/src/index.d.ts +0 -4
  357. package/dropdown-divider/src/dropdown-divider.directive.d.ts +0 -6
  358. package/dropdown-divider/src/index.d.ts +0 -1
  359. package/dropdown-menu/src/dropdown-item/dropdown-item.component.d.ts +0 -7
  360. package/dropdown-menu/src/dropdown-menu/dropdown-menu.component.d.ts +0 -14
  361. package/dropdown-menu/src/dropdown-menu.module.d.ts +0 -10
  362. package/dropdown-menu/src/index.d.ts +0 -3
  363. package/enhanced-paste/src/directive/enhanced-paste.directive.d.ts +0 -14
  364. package/enhanced-paste/src/index.d.ts +0 -2
  365. package/enhanced-paste/src/interfaces/number-overflow.d.ts +0 -5
  366. package/enum/src/index.d.ts +0 -2
  367. package/enum/src/interfaces/enum-item.d.ts +0 -4
  368. package/enum/src/interfaces/index.d.ts +0 -1
  369. package/enum/src/service/enum.service.d.ts +0 -9
  370. package/file-upload/src/component/file-upload.component.d.ts +0 -21
  371. package/file-upload/src/directive/file-upload-template.directive.d.ts +0 -15
  372. package/file-upload/src/file-upload.d.ts +0 -5
  373. package/file-upload/src/file-upload.module.d.ts +0 -14
  374. package/file-upload/src/index.d.ts +0 -5
  375. package/file-upload/src/pipes/format-bytes/format-bytes.pipe.d.ts +0 -7
  376. package/file-upload/src/pipes/index.d.ts +0 -1
  377. package/floating-labels/src/floating-label/floating-label.component.d.ts +0 -7
  378. package/floating-labels/src/index.d.ts +0 -1
  379. package/font-color/src/font-color.pipe.d.ts +0 -7
  380. package/for/src/for.directive.d.ts +0 -10
  381. package/for/src/index.d.ts +0 -1
  382. package/form/src/form/form.component.d.ts +0 -10
  383. package/form/src/form-control/form-control.directive.d.ts +0 -8
  384. package/form/src/form-group/form-group.directive.d.ts +0 -6
  385. package/form/src/form.module.d.ts +0 -10
  386. package/form/src/index.d.ts +0 -4
  387. package/grid/src/component/grid.component.d.ts +0 -12
  388. package/grid/src/directives/col-form-label/col-form-label.directive.d.ts +0 -6
  389. package/grid/src/directives/column/column.directive.d.ts +0 -29
  390. package/grid/src/directives/index.d.ts +0 -3
  391. package/grid/src/directives/row/row.directive.d.ts +0 -6
  392. package/grid/src/grid.module.d.ts +0 -12
  393. package/grid/src/index.d.ts +0 -4
  394. package/grid/src/interfaces/column-definition.d.ts +0 -9
  395. package/grid/src/interfaces/index.d.ts +0 -1
  396. package/has-id/src/has-id.d.ts +0 -3
  397. package/has-overlay/src/has-overlay/has-overlay.component.d.ts +0 -5
  398. package/has-overlay/src/index.d.ts +0 -1
  399. package/has-property/src/has-property.pipe.d.ts +0 -7
  400. package/has-property/src/index.d.ts +0 -1
  401. package/in-list/src/in-list.pipe.d.ts +0 -8
  402. package/input-group/src/index.d.ts +0 -1
  403. package/input-group/src/input-group/input-group.component.d.ts +0 -5
  404. package/instance-of/src/directives/index.d.ts +0 -4
  405. package/instance-of/src/directives/instanceof-case.directive.d.ts +0 -23
  406. package/instance-of/src/directives/instanceof-default.directive.d.ts +0 -10
  407. package/instance-of/src/directives/instanceof.directive.d.ts +0 -21
  408. package/instance-of/src/directives/switch-view.d.ts +0 -12
  409. package/instance-of/src/index.d.ts +0 -5
  410. package/instance-of/src/instance-of.module.d.ts +0 -11
  411. package/instance-of/src/interfaces/index.d.ts +0 -1
  412. package/instance-of/src/interfaces/instance-of-context.d.ts +0 -4
  413. package/instance-of/src/pipes/index.d.ts +0 -1
  414. package/instance-of/src/pipes/instance-of.pipe.d.ts +0 -8
  415. package/instance-of/src/types/abstract.type.d.ts +0 -1
  416. package/instance-of/src/types/index.d.ts +0 -1
  417. package/let/directive/let.directive.d.ts +0 -31
  418. package/let/interfaces/index.d.ts +0 -1
  419. package/let/interfaces/let-context.d.ts +0 -10
  420. package/lib/enums/color.enum.d.ts +0 -13
  421. package/lib/enums/index.d.ts +0 -1
  422. package/lib/providers/development.provider.d.ts +0 -7
  423. package/lib/providers/index.d.ts +0 -1
  424. package/lib/types/breakpoint.d.ts +0 -1
  425. package/lib/types/index.d.ts +0 -3
  426. package/lib/types/position.d.ts +0 -1
  427. package/lib/types/size.d.ts +0 -1
  428. package/linify/src/linify.pipe.d.ts +0 -7
  429. package/list-group/src/index.d.ts +0 -3
  430. package/list-group/src/list-group/list-group.component.d.ts +0 -8
  431. package/list-group/src/list-group-item/list-group-item.component.d.ts +0 -6
  432. package/list-group/src/list-group.module.d.ts +0 -9
  433. package/markdown/src/bold/bold.pipe.d.ts +0 -10
  434. package/markdown/src/italic/italic.pipe.d.ts +0 -10
  435. package/markdown/src/strikethrough/strikethrough.pipe.d.ts +0 -10
  436. package/markdown/src/underline/underline.pipe.d.ts +0 -10
  437. package/marquee/src/marquee/marquee.component.d.ts +0 -5
  438. package/modal/src/components/index.d.ts +0 -2
  439. package/modal/src/components/modal/modal.component.d.ts +0 -9
  440. package/modal/src/components/modal-host/modal-host.component.d.ts +0 -25
  441. package/modal/src/directives/index.d.ts +0 -5
  442. package/modal/src/directives/modal/modal.directive.d.ts +0 -8
  443. package/modal/src/directives/modal-body/modal-body.directive.d.ts +0 -6
  444. package/modal/src/directives/modal-close/modal-close.directive.d.ts +0 -9
  445. package/modal/src/directives/modal-footer/modal-footer.directive.d.ts +0 -6
  446. package/modal/src/directives/modal-header/modal-header.directive.d.ts +0 -6
  447. package/modal/src/index.d.ts +0 -3
  448. package/modal/src/modal.module.d.ts +0 -16
  449. package/modal/src/providers/modal-content.provider.d.ts +0 -2
  450. package/modal/src/providers/portal-factory.provider.d.ts +0 -3
  451. package/multiselect/src/component/multiselect.component.d.ts +0 -15
  452. package/multiselect/src/directives/button-template/button-template.directive.d.ts +0 -12
  453. package/multiselect/src/directives/footer-template/footer-template.directive.d.ts +0 -8
  454. package/multiselect/src/directives/header-template/header-template.directive.d.ts +0 -8
  455. package/multiselect/src/directives/index.d.ts +0 -3
  456. package/multiselect/src/index.d.ts +0 -3
  457. package/multiselect/src/multiselect.module.d.ts +0 -17
  458. package/navbar/src/dropdown-toggle/dropdown-toggle.directive.d.ts +0 -13
  459. package/navbar/src/expand-button/expand-button.directive.d.ts +0 -12
  460. package/navbar/src/index.d.ts +0 -10
  461. package/navbar/src/nav-link/nav-link.directive.d.ts +0 -11
  462. package/navbar/src/navbar/navbar.component.d.ts +0 -30
  463. package/navbar/src/navbar-brand/navbar-brand.component.d.ts +0 -7
  464. package/navbar/src/navbar-content/navbar-content.directive.d.ts +0 -17
  465. package/navbar/src/navbar-dropdown/navbar-dropdown.component.d.ts +0 -31
  466. package/navbar/src/navbar-item/navbar-item.component.d.ts +0 -18
  467. package/navbar/src/navbar-nav/navbar-nav.component.d.ts +0 -16
  468. package/navbar/src/navbar.module.d.ts +0 -23
  469. package/navbar-toggler/src/index.d.ts +0 -1
  470. package/navbar-toggler/src/navbar-toggler/navbar-toggler.component.d.ts +0 -14
  471. package/navigation-lock/src/directive/navigation-lock.directive.d.ts +0 -31
  472. package/navigation-lock/src/guard/navigation-lock.guard.d.ts +0 -8
  473. package/navigation-lock/src/index.d.ts +0 -4
  474. package/navigation-lock/src/interface/has-navigation-lock.d.ts +0 -15
  475. package/navigation-lock/src/navigation-lock.module.d.ts +0 -9
  476. package/no-noscript/src/index.d.ts +0 -1
  477. package/no-noscript/src/no-noscript/no-noscript.directive.d.ts +0 -8
  478. package/offcanvas/src/components/index.d.ts +0 -4
  479. package/offcanvas/src/components/offcanvas/offcanvas.component.d.ts +0 -31
  480. package/offcanvas/src/components/offcanvas-body/offcanvas-body.component.d.ts +0 -6
  481. package/offcanvas/src/components/offcanvas-header/offcanvas-header.component.d.ts +0 -5
  482. package/offcanvas/src/components/offcanvas-host/offcanvas-host.component.d.ts +0 -36
  483. package/offcanvas/src/directives/index.d.ts +0 -3
  484. package/offcanvas/src/directives/offcanvas-close/offcanvas-close.directive.d.ts +0 -9
  485. package/offcanvas/src/directives/offcanvas-content/offcanvas-content.directive.d.ts +0 -8
  486. package/offcanvas/src/directives/offcanvas-push/offcanvas-push.directive.d.ts +0 -14
  487. package/offcanvas/src/index.d.ts +0 -3
  488. package/offcanvas/src/offcanvas.module.d.ts +0 -16
  489. package/offcanvas/src/providers/offcanvas-content.provider.d.ts +0 -2
  490. package/offcanvas/src/providers/portal-factory.provider.d.ts +0 -3
  491. package/ordinal-number/src/index.d.ts +0 -1
  492. package/ordinal-number/src/ordinal-number/ordinal-number.pipe.d.ts +0 -10
  493. package/pagination/src/component/index.d.ts +0 -1
  494. package/pagination/src/component/pagination/pagination.component.d.ts +0 -46
  495. package/pagination/src/index.d.ts +0 -3
  496. package/pagination/src/interfaces/index.d.ts +0 -1
  497. package/pagination/src/interfaces/page-with-selection.d.ts +0 -5
  498. package/pagination/src/types/index.d.ts +0 -1
  499. package/pagination/src/types/page-number.type.d.ts +0 -1
  500. package/parallax/src/parallax.component.d.ts +0 -8
  501. package/placeholder/src/index.d.ts +0 -3
  502. package/placeholder/src/placeholder/placeholder.component.d.ts +0 -11
  503. package/placeholder/src/placeholder-field/placeholder-field.directive.d.ts +0 -12
  504. package/placeholder/src/placeholder.module.d.ts +0 -9
  505. package/playlist-toggler/src/index.d.ts +0 -1
  506. package/playlist-toggler/src/playlist-toggler/playlist-toggler.component.d.ts +0 -14
  507. package/popover/src/component/popover.component.d.ts +0 -19
  508. package/popover/src/directives/index.d.ts +0 -3
  509. package/popover/src/directives/popover/popover.directive.d.ts +0 -27
  510. package/popover/src/directives/popover-body/popover-body.directive.d.ts +0 -6
  511. package/popover/src/directives/popover-header/popover-header.directive.d.ts +0 -6
  512. package/popover/src/index.d.ts +0 -3
  513. package/popover/src/popover.module.d.ts +0 -13
  514. package/popover/src/providers/popover-content.provider.d.ts +0 -2
  515. package/popover/src/providers/portal-factory.provider.d.ts +0 -3
  516. package/progress-bar/src/index.d.ts +0 -3
  517. package/progress-bar/src/progress/progress.component.d.ts +0 -8
  518. package/progress-bar/src/progress-bar/progress-bar.component.d.ts +0 -28
  519. package/progress-bar/src/progress-bar.module.d.ts +0 -9
  520. package/range/src/component/range.component.d.ts +0 -10
  521. package/range/src/index.d.ts +0 -3
  522. package/range/src/range.module.d.ts +0 -9
  523. package/range/src/value-accessor/range-value-accessor.d.ts +0 -18
  524. package/rating/src/component/rating.component.d.ts +0 -20
  525. package/rating/src/index.d.ts +0 -1
  526. package/resizable/src/index.d.ts +0 -6
  527. package/resizable/src/interfaces/index.d.ts +0 -3
  528. package/resizable/src/interfaces/pointer-data.d.ts +0 -5
  529. package/resizable/src/interfaces/preset-position.d.ts +0 -6
  530. package/resizable/src/interfaces/resize-action.d.ts +0 -18
  531. package/resizable/src/providers/index.d.ts +0 -1
  532. package/resizable/src/providers/resizable.provider.d.ts +0 -3
  533. package/resizable/src/resizable/resizable.component.d.ts +0 -29
  534. package/resizable/src/resizable.module.d.ts +0 -9
  535. package/resizable/src/resize-glyph/resize-glyph.directive.d.ts +0 -23
  536. package/resizable/src/types/index.d.ts +0 -1
  537. package/resizable/src/types/positioning.d.ts +0 -1
  538. package/scheduler/src/components/index.d.ts +0 -2
  539. package/scheduler/src/components/resource-group-presenter/resource-group-presenter.component.d.ts +0 -27
  540. package/scheduler/src/components/scheduler/scheduler.component.d.ts +0 -89
  541. package/scheduler/src/constants/available-scales.d.ts +0 -2
  542. package/scheduler/src/constants/index.d.ts +0 -1
  543. package/scheduler/src/enums/drag-operation.d.ts +0 -6
  544. package/scheduler/src/enums/index.d.ts +0 -1
  545. package/scheduler/src/enums/scheduler-mode.d.ts +0 -4
  546. package/scheduler/src/index.d.ts +0 -5
  547. package/scheduler/src/interfaces/drag-operation.d.ts +0 -7
  548. package/scheduler/src/interfaces/index.d.ts +0 -5
  549. package/scheduler/src/interfaces/preview-event.d.ts +0 -4
  550. package/scheduler/src/interfaces/resource-group.d.ts +0 -5
  551. package/scheduler/src/interfaces/resource-or-group.d.ts +0 -6
  552. package/scheduler/src/interfaces/resource.d.ts +0 -5
  553. package/scheduler/src/interfaces/scheduler-event-part.d.ts +0 -6
  554. package/scheduler/src/interfaces/scheduler-event-with-parts.d.ts +0 -6
  555. package/scheduler/src/interfaces/scheduler-event.d.ts +0 -6
  556. package/scheduler/src/interfaces/scheduler-schale.d.ts +0 -5
  557. package/scheduler/src/interfaces/scheduler-stamp-with-slots.d.ts +0 -6
  558. package/scheduler/src/interfaces/time-slot.d.ts +0 -4
  559. package/scheduler/src/interfaces/timeline-options.d.ts +0 -3
  560. package/scheduler/src/interfaces/timeline-track.d.ts +0 -5
  561. package/scheduler/src/interfaces/week-options.d.ts +0 -3
  562. package/scheduler/src/pipes/bs-seconds-timespan.pipe/bs-seconds-timespan.pipe.d.ts +0 -9
  563. package/scheduler/src/pipes/bs-seconds-today-offset/bs-seconds-today-offset.pipe.d.ts +0 -9
  564. package/scheduler/src/pipes/date-offset/date-offset.pipe.d.ts +0 -8
  565. package/scheduler/src/pipes/day-of-week/day-of-week.pipe.d.ts +0 -9
  566. package/scheduler/src/scheduler.module.d.ts +0 -13
  567. package/scheduler/src/services/timeline/timeline.service.d.ts +0 -14
  568. package/scrollspy/src/component/scrollspy.component.d.ts +0 -23
  569. package/scrollspy/src/directives/scrollspy.directive.d.ts +0 -8
  570. package/scrollspy/src/index.d.ts +0 -4
  571. package/scrollspy/src/scrollspy.module.d.ts +0 -8
  572. package/scrollspy/src/services/index.d.ts +0 -1
  573. package/scrollspy/src/services/scroll-offset/scroll-offset.service.d.ts +0 -9
  574. package/searchbox/src/directives/enter-search-term.directive.d.ts +0 -9
  575. package/searchbox/src/directives/index.d.ts +0 -3
  576. package/searchbox/src/directives/no-results.directive.d.ts +0 -9
  577. package/searchbox/src/directives/suggestion.directive.d.ts +0 -16
  578. package/searchbox/src/searchbox/searchbox.component.d.ts +0 -37
  579. package/searchbox/src/searchbox.module.d.ts +0 -18
  580. package/select/src/component/select.component.d.ts +0 -26
  581. package/select/src/index.d.ts +0 -4
  582. package/select/src/select.module.d.ts +0 -9
  583. package/select/src/types/index.d.ts +0 -1
  584. package/select/src/types/select-size.d.ts +0 -1
  585. package/select/src/value-accessors/index.d.ts +0 -1
  586. package/select/src/value-accessors/select-value-accessor.d.ts +0 -44
  587. package/select2/src/component/select2.component.d.ts +0 -27
  588. package/select2/src/directive/index.d.ts +0 -2
  589. package/select2/src/directive/item-template/item-template.directive.d.ts +0 -16
  590. package/select2/src/directive/suggestion-template/suggestion-template.directive.d.ts +0 -16
  591. package/select2/src/index.d.ts +0 -3
  592. package/select2/src/select2.module.d.ts +0 -15
  593. package/shell/src/shell/shell.component.d.ts +0 -19
  594. package/shell/src/shell-sidebar/shell-sidebar.directive.d.ts +0 -10
  595. package/shell/src/shell-state.d.ts +0 -1
  596. package/shell/src/shell.module.d.ts +0 -9
  597. package/signature-pad/src/component/signature-pad.component.d.ts +0 -25
  598. package/signature-pad/src/index.d.ts +0 -2
  599. package/signature-pad/src/interfaces/index.d.ts +0 -3
  600. package/signature-pad/src/interfaces/point.d.ts +0 -4
  601. package/signature-pad/src/interfaces/signature.d.ts +0 -4
  602. package/signature-pad/src/interfaces/stroke.d.ts +0 -4
  603. package/slugify/src/slugify.pipe.d.ts +0 -7
  604. package/spinner/src/index.d.ts +0 -1
  605. package/spinner/src/spinner.component.d.ts +0 -19
  606. package/split-string/src/split-string.pipe.d.ts +0 -7
  607. package/splitter/src/element-at/element-at.pipe.d.ts +0 -7
  608. package/splitter/src/index.d.ts +0 -5
  609. package/splitter/src/interfaces/drag-operation.d.ts +0 -12
  610. package/splitter/src/interfaces/point.d.ts +0 -4
  611. package/splitter/src/split-panel/split-panel.component.d.ts +0 -11
  612. package/splitter/src/splitter/splitter.component.d.ts +0 -37
  613. package/splitter/src/splitter.module.d.ts +0 -12
  614. package/splitter/src/types/direction.type.d.ts +0 -1
  615. package/splitter/src/types/index.d.ts +0 -1
  616. package/sticky-footer/src/index.d.ts +0 -3
  617. package/sticky-footer/src/sticky-footer/sticky-footer.component.d.ts +0 -13
  618. package/sticky-footer/src/sticky-footer-parent/sticky-footer-parent.directive.d.ts +0 -6
  619. package/sticky-footer/src/sticky-footer.module.d.ts +0 -10
  620. package/tab-control/src/index.d.ts +0 -5
  621. package/tab-control/src/tab-control/tab-control.component.d.ts +0 -40
  622. package/tab-control/src/tab-control.module.d.ts +0 -12
  623. package/tab-control/src/tab-page/tab-page.component.d.ts +0 -16
  624. package/tab-control/src/tab-page-header/tab-page-header.directive.d.ts +0 -8
  625. package/tab-control/src/tabs-position.d.ts +0 -1
  626. package/table/src/component/table.component.d.ts +0 -15
  627. package/table/src/index.d.ts +0 -1
  628. package/timepicker/src/index.d.ts +0 -1
  629. package/timepicker/src/timepicker.component.d.ts +0 -30
  630. package/toast/src/components/index.d.ts +0 -4
  631. package/toast/src/components/toast/toast.component.d.ts +0 -6
  632. package/toast/src/components/toast-body/toast-body.component.d.ts +0 -6
  633. package/toast/src/components/toast-container/toast-container.component.d.ts +0 -9
  634. package/toast/src/components/toast-header/toast-header.component.d.ts +0 -6
  635. package/toast/src/directives/index.d.ts +0 -1
  636. package/toast/src/directives/toast-close/toast-close.directive.d.ts +0 -12
  637. package/toast/src/index.d.ts +0 -5
  638. package/toast/src/pipes/add-properties.pipe.d.ts +0 -7
  639. package/toast/src/providers/portal-factory.provider.d.ts +0 -3
  640. package/toast/src/services/index.d.ts +0 -1
  641. package/toast/src/services/toast/toast.service.d.ts +0 -22
  642. package/toast/src/toast.module.d.ts +0 -15
  643. package/toggle-button/src/component/toggle-button.component.d.ts +0 -36
  644. package/toggle-button/src/directives/index.d.ts +0 -1
  645. package/toggle-button/src/directives/toggle-button-group/toggle-button-group.directive.d.ts +0 -8
  646. package/toggle-button/src/index.d.ts +0 -5
  647. package/toggle-button/src/toggle-button.module.d.ts +0 -10
  648. package/toggle-button/src/types/check-style.d.ts +0 -1
  649. package/toggle-button/src/types/index.d.ts +0 -1
  650. package/toggle-button/src/value-accessor/toggle-button-value-accessor.d.ts +0 -18
  651. package/tooltip/src/component/tooltip.component.d.ts +0 -16
  652. package/tooltip/src/directive/tooltip.directive.d.ts +0 -21
  653. package/tooltip/src/index.d.ts +0 -2
  654. package/tooltip/src/providers/tooltip-content.provider.d.ts +0 -2
  655. package/tooltip/src/tooltip.module.d.ts +0 -11
  656. package/treeview/src/index.d.ts +0 -3
  657. package/treeview/src/treeview/treeview.component.d.ts +0 -14
  658. package/treeview/src/treeview-item/treeview-item.component.d.ts +0 -13
  659. package/treeview/src/treeview.module.d.ts +0 -10
  660. package/trust-html/src/trust-html.pipe.d.ts +0 -10
  661. package/typeahead/src/index.d.ts +0 -1
  662. package/typeahead/src/typeahead.component.d.ts +0 -25
  663. package/uc-first/src/uc-first.pipe.d.ts +0 -7
  664. package/user-agent/src/directive/index.d.ts +0 -1
  665. package/user-agent/src/directive/user-agent.directive.d.ts +0 -16
  666. package/user-agent/src/index.d.ts +0 -3
  667. package/user-agent/src/interfaces/index.d.ts +0 -1
  668. package/user-agent/src/interfaces/user-agent.d.ts +0 -6
  669. package/user-agent/src/types/index.d.ts +0 -2
  670. package/user-agent/src/types/operating-system.type.d.ts +0 -1
  671. package/user-agent/src/types/webbrowser.type.d.ts +0 -1
  672. package/word-count/src/word-count.pipe.d.ts +0 -7
@@ -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 standalone: false,\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 standalone: false,\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({\n selector: '[bsThumb]',\n standalone: false,\n})\nexport class BsThumbDirective {\n @HostBinding('class.thumb')\n @HostBinding('class.position-absolute')\n thumbClass = true;\n}\n\n@Directive({\n selector: '[bsTrack]',\n standalone: false,\n})\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 standalone: false,\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 standalone: false,\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 standalone: false,\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 standalone: false,\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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"}
1
+ {"version":3,"file":"mintplayer-ng-bootstrap-color-picker.mjs","sources":["../tmp-esm2022/color-picker/components/color-wheel/color-wheel.component.js","../tmp-esm2022/color-picker/components/slider/slider.component.js","../tmp-esm2022/color-picker/components/luminosity-strip/luminosity-strip.component.js","../tmp-esm2022/color-picker/components/alpha-strip/alpha-strip.component.js","../tmp-esm2022/color-picker/components/color-picker/color-picker.component.js","../tmp-esm2022/color-picker/directives/color-picker-value-accessor/color-picker-value-accessor.directive.js","../tmp-esm2022/color-picker/color-picker.module.js","../tmp-esm2022/color-picker/mintplayer-ng-bootstrap-color-picker.js"],"sourcesContent":["import { Component, EventEmitter, HostBinding, HostListener, Input, Output, ViewChild } from '@angular/core';\nimport { BehaviorSubject, combineLatest, debounceTime, map, take, switchMap } from 'rxjs';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nexport class BsColorWheelComponent {\n constructor(element) {\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 this.element = element;\n this.positionRelative = true;\n //#region Hue/Luminosity\n this.hs$ = new BehaviorSubject({ hue: 0, saturation: 0 });\n this.hsChange = new EventEmitter();\n //#endregion\n //#region Luminosity\n this.luminosity$ = new BehaviorSubject(0);\n //#endregion\n // private resizeObserver: ResizeObserver;\n this.canvasContext = null;\n this.isPointerDown = false;\n this.width$ = new BehaviorSubject(150);\n this.height$ = new BehaviorSubject(150);\n this.diameterRatio$ = new BehaviorSubject(0);\n this.disabled$ = new BehaviorSubject(false);\n this.viewInited$ = new BehaviorSubject(false);\n this.squareSize$ = combineLatest([this.width$, this.height$])\n .pipe(map(([width, height]) => {\n if ((width === null) || (height === null)) {\n return null;\n }\n const squareSize = Math.min(width, height);\n return squareSize;\n }));\n this.shiftX$ = combineLatest([this.width$, this.height$])\n .pipe(map(([width, height]) => {\n if ((width === null) || (height === null)) {\n return null;\n }\n else if (width < height) {\n return 0;\n }\n else {\n return (width - height) / 2;\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 }\n else if (width < height) {\n return (height - width) / 2;\n }\n else {\n return 0;\n }\n }));\n this.innerRadius$ = combineLatest([this.squareSize$, this.diameterRatio$])\n .pipe(map(([squareSize, diameterRatio]) => {\n if (squareSize) {\n return squareSize / 2 * diameterRatio;\n }\n else {\n return 0;\n }\n }));\n this.outerRadius$ = combineLatest([this.squareSize$, this.diameterRatio$])\n .pipe(map(([squareSize, diameterRatio]) => {\n if (squareSize) {\n return squareSize / 2;\n }\n else {\n return 150;\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 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 gradient.addColorStop(0, `hsl(${x}, 0%, 50%)`);\n gradient.addColorStop(1, `hsl(${x}, 100%, 50%)`);\n this.canvasContext.fillStyle = gradient;\n this.canvasContext.fillRect(innerRadius, 0, outerRadius - innerRadius, outerRadius / 50);\n }\n this.canvasContext.restore();\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 this.hs$.pipe(takeUntilDestroyed())\n .subscribe((hs) => this.hsChange.emit(hs));\n }\n set diameterRatio(value) {\n this.diameterRatio$.next(value);\n }\n set width(value) {\n this.width$.next(value);\n }\n set height(value) {\n this.height$.next(value);\n }\n get hs() {\n return this.hs$.value;\n }\n set hs(value) {\n this.hs$.next(value);\n }\n get luminosity() {\n return this.luminosity$.value;\n }\n set luminosity(value) {\n this.luminosity$.next(value);\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 onPointerDown(ev) {\n if (!this.disabled$.value) {\n ev.preventDefault();\n this.isPointerDown = true;\n this.updateColor(ev, !('touches' in ev));\n }\n }\n onPointerMove(ev) {\n if (this.isPointerDown) {\n ev.preventDefault();\n ev.stopPropagation();\n this.updateColor(ev, !('touches' in ev));\n }\n }\n onMouseMove(ev) {\n this.onPointerMove(ev);\n }\n onPointerUp(ev) {\n this.isPointerDown = false;\n }\n updateColor(ev, subtract) {\n let co;\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 }\n else {\n co = {\n x: ev.clientX - (subtract ? rect.left : 0),\n y: ev.clientY - (subtract ? rect.top : 0),\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 }\n else {\n console.warn('Color is null');\n }\n });\n }\n isInsideCircle(x, y) {\n return combineLatest([this.squareSize$, this.shiftX$, this.shiftY$])\n .pipe(map(([squareSize, shiftX, shiftY]) => {\n // Position to the square\n const sx = x - (shiftX ?? 0);\n const sy = y - (shiftY ?? 0);\n // Square radius\n const sr = (squareSize ?? 0) / 2;\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 position2color(x, y) {\n return this.isInsideCircle(x, y).pipe(map((result) => {\n if (!this.canvasContext) {\n return null;\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 return { hue: result.angle * 180 / Math.PI, saturation: 1, luminosity: 0.5 };\n }));\n }\n color2position(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 const theta = hs.hue * Math.PI / 180;\n const c = {\n x: -outerRadius * Math.cos(theta),\n y: -outerRadius * Math.sin(theta)\n };\n const d = hs.saturation * (outerRadius - innerRadius) + innerRadius;\n const o = { x: outerRadius, y: outerRadius };\n return {\n x: o.x - d * (c.x / outerRadius),\n y: o.y - d * (c.y / outerRadius),\n };\n }));\n }\n rgb2Hsl(color) {\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 const max = Math.max(r01, g01, b01);\n const min = Math.min(r01, g01, b01);\n let h, s;\n const l = (max + min) / 2;\n if (max === min) {\n h = s = 0;\n }\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 {\n h = (g01 - b01) / d + ((g01 < b01) ? 6 : 0);\n }\n break;\n case g01:\n {\n h = (b01 - r01) / d + 2;\n }\n break;\n case b01:\n {\n h = (r01 - g01) / d + 4;\n }\n break;\n default: {\n throw 'Invalid operation';\n }\n }\n h /= 6;\n }\n h *= 360;\n return { hue: h, saturation: s, luminosity: l };\n }\n /**\n * Divide 1 to n, handling floating point errors.\n * Ensures that the value is in between 0 and 1.\n **/\n bound01(n, max) {\n n = Math.min(max, Math.max(0, n));\n if ((Math.abs(n - max) < 0.000001)) {\n return 1;\n }\n else {\n return (n % max) / max;\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsColorWheelComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.0-rc.2\", type: BsColorWheelComponent, isStandalone: false, 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\" }] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsColorWheelComponent, decorators: [{\n type: Component,\n args: [{ selector: 'bs-color-wheel', standalone: false, 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\"] }]\n }], ctorParameters: () => [{ type: i0.ElementRef }], propDecorators: { positionRelative: [{\n type: HostBinding,\n args: ['class.position-relative']\n }], diameterRatio: [{\n type: Input\n }], width: [{\n type: Input\n }], height: [{\n type: Input\n }], canvas: [{\n type: ViewChild,\n args: ['canvas']\n }], hsChange: [{\n type: Output\n }], hs: [{\n type: Input\n }], luminosity: [{\n type: Input\n }], onMouseMove: [{\n type: HostListener,\n args: ['document:mousemove', ['$event']]\n }], onPointerUp: [{\n type: HostListener,\n args: ['document:mouseup', ['$event']]\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3Itd2hlZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9jb2xvci1waWNrZXIvY29tcG9uZW50cy9jb2xvci13aGVlbC9jb2xvci13aGVlbC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL2NvbG9yLXBpY2tlci9jb21wb25lbnRzL2NvbG9yLXdoZWVsL2NvbG9yLXdoZWVsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFjLFlBQVksRUFBRSxXQUFXLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hJLE9BQU8sRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLFlBQVksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFjLFNBQVMsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0RyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7O0FBV2hFLE1BQU0sT0FBTyxxQkFBcUI7SUFFaEMsWUFBb0IsT0FBZ0M7UUFDbEQsMERBQTBEO1FBQzFELG1DQUFtQztRQUNuQyx5REFBeUQ7UUFDekQsd0NBQXdDO1FBQ3hDLG1EQUFtRDtRQUNuRCxxREFBcUQ7UUFDckQsZUFBZTtRQUNmLFFBQVE7UUFDUixNQUFNO1FBQ04sTUFBTTtRQVZZLFlBQU8sR0FBUCxPQUFPLENBQXlCO1FBcUdaLHFCQUFnQixHQUFHLElBQUksQ0FBQztRQWFoRSx3QkFBd0I7UUFDeEIsUUFBRyxHQUFHLElBQUksZUFBZSxDQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMvQyxhQUFRLEdBQUcsSUFBSSxZ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R0RDWSxxQkFBcUI7a0JBTmpDLFNBQVM7K0JBQ0UsZ0JBQWdCLGNBR2QsS0FBSzsrRUF5R3VCLGdCQUFnQjtzQkFBdkQsV0FBVzt1QkFBQyx5QkFBeUI7Z0JBRXpCLGFBQWE7c0JBQXpCLEtBQUs7Z0JBR08sS0FBSztzQkFBakIsS0FBSztnQkFHTyxNQUFNO3NCQUFsQixLQUFLO2dCQUdlLE1BQU07c0JBQTFCLFNBQVM7dUJBQUMsUUFBUTtnQkFJVCxRQUFRO3NCQUFqQixNQUFNO2dCQUlhLEVBQUU7c0JBQXJCLEtBQUs7Z0JBU2MsVUFBVTtzQkFBN0IsS0FBSztnQkE4Q04sV0FBVztzQkFEVixZQUFZO3VCQUFDLG9CQUFvQixFQUFFLENBQUMsUUFBUSxDQUFDO2dCQU05QyxXQUFXO3NCQURWLFlBQVk7dUJBQUMsa0JBQWtCLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIEV2ZW50RW1pdHRlciwgSG9zdEJpbmRpbmcsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE91dHB1dCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIGRlYm91bmNlVGltZSwgbWFwLCB0YWtlLCBPYnNlcnZhYmxlLCBzd2l0Y2hNYXAgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IEhTIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9ocyc7XG5pbXBvcnQgeyBIc2xDb2xvciB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvaHNsLWNvbG9yJztcbmltcG9ydCB7IFJnYkNvbG9yIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9yZ2ItY29sb3InO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdicy1jb2xvci13aGVlbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb2xvci13aGVlbC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvbG9yLXdoZWVsLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBCc0NvbG9yV2hlZWxDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlclZpZXdJbml0IHtcblxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGVsZW1lbnQ6IEVsZW1lbnRSZWY8SFRNTEVsZW1lbnQ+KSB7XG4gICAgLy8gdGhpcy5yZXNpemVPYnNlcnZlciA9IG5ldyBSZXNpemVPYnNlcnZlcigoZW50cmllcykgPT4ge1xuICAgIC8vICAgZm9yIChjb25zdCBlbnRyeSBvZiBlbnRyaWVzKSB7XG4gICAgLy8gICAgIGlmIChlbnRyeS50YXJnZXQgPT09IHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50KSB7XG4gICAgLy8gICAgICAgY29uc29sZS5sb2coZW50cnkuY29udGVudFJlY3QpO1xuICAgIC8vICAgICAgIHRoaXMud2lkdGgkLm5leHQoZW50cnkuY29udGVudFJlY3Qud2lkdGgpO1xuICAgIC8vICAgICAgIHRoaXMuaGVpZ2h0JC5uZXh0KGVudHJ5LmNvbnRlbnRSZWN0LmhlaWdodCk7XG4gICAgLy8gICAgICAgYnJlYWs7XG4gICAgLy8gICAgIH1cbiAgICAvLyAgIH1cbiAgICAvLyB9KTtcblxuICAgIHRoaXMuc3F1YXJlU2l6ZSQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLndpZHRoJCwgdGhpcy5oZWlnaHQkXSlcbiAgICAgIC5waXBlKG1hcCgoW3dpZHRoLCBoZWlnaHRdKSA9PiB7XG4gICAgICAgIGlmICgod2lkdGggPT09IG51bGwpIHx8IChoZWlnaHQgPT09IG51bGwpKSB7XG4gICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBzcXVhcmVTaXplID0gTWF0aC5taW4od2lkdGgsIGhlaWdodCk7XG4gICAgICAgIHJldHVybiBzcXVhcmVTaXplO1xuICAgICAgfSkpO1xuXG4gICAgdGhpcy5zaGlmdFgkID0gY29tYmluZUxhdGVzdChbdGhpcy53aWR0aCQsIHRoaXMuaGVpZ2h0JF0pXG4gICAgICAucGlwZShtYXAoKFt3aWR0aCwgaGVpZ2h0XSkgPT4ge1xuICAgICAgICBpZiAoKHdpZHRoID09PSBudWxsKSB8fCAoaGVpZ2h0ID09PSBudWxsKSkge1xuICAgICAgICAgIHJldHVybiBudWxsO1xuICAgICAgICB9IGVsc2UgaWYgKHdpZHRoIDwgaGVpZ2h0KSB7XG4gICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuICh3aWR0aCAtIGhlaWdodCkgLyAyO1xuICAgICAgICB9XG4gICAgICB9KSk7XG5cbiAgICB0aGlzLnNoaWZ0WSQgPSBjb21iaW5lTGF0ZXN0KFt0aGlzLndpZHRoJCwgdGhpcy5oZWlnaHQkXSlcbiAgICAgIC5waXBlKG1hcCgoW3dpZHRoLCBoZWlnaHRdKSA9PiB7XG4gICAgICAgIGlmICgod2lkdGggPT09IG51bGwpIHx8IChoZWlnaHQgPT09IG51bGwpKSB7XG4gICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH0gZWxzZSBpZiAod2lkdGggPCBoZWlnaHQpIHtcbiAgICAgICAgICByZXR1cm4gKGhlaWdodCAtIHdpZHRoKSAvIDI7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgIH1cbiAgICAgIH0pKTtcblxuICAgIHRoaXMuaW5uZXJSYWRpdXMkID0gY29tYmluZUxhdGVzdChbdGhpcy5zcXVhcmVTaXplJCwgdGhpcy5kaWFtZXRlclJhdGlvJF0pXG4gICAgICAucGlwZShtYXAoKFtzcXVhcmVTaXplLCBkaWFtZXRlclJhdGlvXSkgPT4ge1xuICAgICAgICBpZiAoc3F1YXJlU2l6ZSkge1xuICAgICAgICAgIHJldHVybiBzcXVhcmVTaXplIC8gMiAqIGRpYW1ldGVyUmF0aW87XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIDA7XG4gICAgICAgIH1cbiAgICAgIH0pKTtcblxuICAgIHRoaXMub3V0ZXJSYWRpdXMkID0gY29tYmluZUxhdGVzdChbdGhpcy5zcXVhcmVTaXplJCwgdGhpcy5kaWFtZXRlclJhdGlvJF0pXG4gICAgICAucGlwZShtYXAoKFtzcXVhcmVTaXplLCBkaWFtZXRlclJhdGlvXSkgPT4ge1xuICAgICAgICBpZiAoc3F1YXJlU2l6ZSkge1xuICAgICAgICAgIHJldHVybiBzcXVhcmVTaXplIC8gMjtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICByZXR1cm4gMTUwO1xuICAgICAgICB9XG4gICAgICB9KSk7XG4gIFxuICAgIGNvbWJpbmVMYXRlc3QoW3RoaXMuaW5uZXJSYWRpdXMkLCB0aGlzLm91dGVyUmFkaXVzJCwgdGhpcy5zaGlmdFgkLCB0aGlzLnNoaWZ0WSRdKVxuICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKDIwKSwgdGFrZVVudGlsRGVzdHJveWVkKCkpXG4gICAgICAuc3Vic2NyaWJlKChbaW5uZXJSYWRpdXMsIG91dGVyUmFkaXVzLCBzaGlmdFgsIHNoaWZ0WV0pID0+IHtcbiAgICAgICAgaWYgKHRoaXMuY2FudmFzQ29udGV4dCAmJiAoaW5uZXJSYWRpdXMgIT09IG51bGwpICYmIChvdXRlclJhZGl1cyAhPT0gbnVsbCkgJiYgKHNoaWZ0WCAhPT0gbnVsbCkgJiYgKHNoaWZ0WSAhPT0gbnVsbCkpIHtcbiAgICAgICAgICB0aGlzLmNhbnZhc0NvbnRleHQuY2xlYXJSZWN0KDAsIDAsIHRoaXMuY2FudmFzLm5hdGl2ZUVsZW1lbnQud2lkdGgsIHRoaXMuY2FudmFzLm5hdGl2ZUVsZW1lbnQuaGVpZ2h0KTtcbiAgICAgICAgICB0aGlzLmNhbnZhc0NvbnRleHQuc2F2ZSgpO1xuICAgICAgICAgIHRoaXMuY2FudmFzQ29udGV4dC50cmFuc2xhdGUoc2hpZnRYICsgb3V0ZXJSYWRpdXMsIHNoaWZ0WSArIG91dGVyUmFkaXVzKTtcblxuICAgICAgICAgIGZvciAobGV0IHggPSAwOyB4IDwgMzYwOyB4KyspIHtcbiAgICAgICAgICAgIHRoaXMuY2FudmFzQ29udGV4dC5yb3RhdGUoMSAqIE1hdGguUEkgLyAxODApO1xuICAgICAgICAgICAgY29uc3QgZ3JhZGllbnQgPSB0aGlzLmNhbnZhc0NvbnRleHQuY3JlYXRlTGluZWFyR3JhZGllbnQoaW5uZXJSYWRpdXMsIDAsIG91dGVyUmFkaXVzLCAwKTtcblxuICAgICAgICAgICAgZ3JhZGllbnQuYWRkQ29sb3JTdG9wKDAsIGBoc2woJHt4fSwgMCUsIDUwJSlgKTtcbiAgICAgICAgICAgIGdyYWRpZW50LmFkZENvbG9yU3RvcCgxLCBgaHNsKCR7eH0sIDEwMCUsIDUwJSlgKTtcblxuICAgICAgICAgICAgdGhpcy5jYW52YXNDb250ZXh0LmZpbGxTdHlsZSA9IGdyYWRpZW50O1xuICAgICAgICAgICAgdGhpcy5jYW52YXNDb250ZXh0LmZpbGxSZWN0KGlubmVyUmFkaXVzLCAwLCBvdXRlclJhZGl1cyAtIGlubmVyUmFkaXVzLCBvdXRlclJhZGl1cyAvIDUwKTtcbiAgICAgICAgICB9XG5cbiAgICAgICAgICB0aGlzLmNhbnZhc0NvbnRleHQucmVzdG9yZSgpO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgIHRoaXMubWFya2VyUG9zaXRpb24kID0gY29tYmluZUxhdGVzdChbdGhpcy5ocyQsIHRoaXMuc2hpZnRYJCwgdGhpcy5zaGlmdFkkXSlcbiAgICAgIC5waXBlKHN3aXRjaE1hcCgoW2hzLCBzaGlmdFgsIHNoaWZ0WV0pID0+IHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY29sb3IycG9zaXRpb24oaHMpXG4gICAgICAgICAgLnBpcGUobWFwKChwb3NpdGlvbikgPT4gKHtwb3NpdGlvbiwgc2hpZnRYOiAoc2hpZnRYID8/IDApLCBzaGlmdFk6IChzaGlmdFkgPz8gMCl9KSkpO1xuICAgICAgfSkpXG4gICAgICAucGlwZShtYXAoKHtwb3NpdGlvbiwgc2hpZnRYLCBzaGlmdFl9KSA9PiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgeDogcG9zaXRpb24ueCArIHNoaWZ0WCxcbiAgICAgICAgICB5OiBwb3NpdGlvbi55ICsgc2hpZnRZLFxuICAgICAgICB9O1xuICAgICAgfSkpO1xuXG4gICAgdGhpcy5ocyQucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQoKSlcbiAgICAgIC5zdWJzY3JpYmUoKGhzKSA9PiB0aGlzLmhzQ2hhbmdlLmVtaXQoaHMpKTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MucG9zaXRpb24tcmVsYXRpdmUnKSBwb3NpdGlvblJlbGF0aXZlID0gdHJ1ZTtcbiAgXG4gIEBJbnB1dCgpIHNldCBkaWFtZXRlclJhdGlvKHZhbHVlOiBudW1iZXIpIHtcbiAgICB0aGlzLmRpYW1ldGVyUmF0aW8kLm5leHQodmFsdWUpO1xuICB9XG4gIEBJbnB1dCgpIHNldCB3aWR0aCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy53aWR0aCQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgQElucHV0KCkgc2V0IGhlaWdodCh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5oZWlnaHQkLm5leHQodmFsdWUpO1xuICB9XG4gIEBWaWV3Q2hpbGQoJ2NhbnZhcycpIGNhbnZhcyE6IEVsZW1lbnRSZWY8SFRNTENhbnZhc0VsZW1lbnQ+O1xuICBcbiAgLy8jcmVnaW9uIEh1ZS9MdW1pbm9zaXR5XG4gIGhzJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8SFM+KHsgaHVlOiAwLCBzYXR1cmF0aW9uOiAwIH0pO1xuICBAT3V0cHV0KCkgaHNDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPEhTPigpO1xuICBwdWJsaWMgZ2V0IGhzKCkge1xuICAgIHJldHVybiB0aGlzLmhzJC52YWx1ZTtcbiAgfVxuICBASW5wdXQoKSBwdWJsaWMgc2V0IGhzKHZhbHVlOiBIUykge1xuICAgIHRoaXMuaHMkLm5leHQodmFsdWUpO1xuICB9XG4gIC8vI2VuZHJlZ2lvblxuICAvLyNyZWdpb24gTHVtaW5vc2l0eVxuICBsdW1pbm9zaXR5JCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPigwKTtcbiAgcHVibGljIGdldCBsdW1pbm9zaXR5KCkge1xuICAgIHJldHVybiB0aGlzLmx1bWlub3NpdHkkLnZhbHVlO1xuICB9XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXQgbHVtaW5vc2l0eSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5sdW1pbm9zaXR5JC5uZXh0KHZhbHVlKTtcbiAgfVxuICAvLyNlbmRyZWdpb25cblxuICAvLyBwcml2YXRlIHJlc2l6ZU9ic2VydmVyOiBSZXNpemVPYnNlcnZlcjtcbiAgcHJpdmF0ZSBjYW52YXNDb250ZXh0OiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQgfCBudWxsID0gbnVsbDtcbiAgcHJpdmF0ZSBpc1BvaW50ZXJEb3duID0gZmFsc2U7XG4gIHdpZHRoJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPigxNTApO1xuICBoZWlnaHQkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KDE1MCk7XG4gIGRpYW1ldGVyUmF0aW8kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KDApO1xuXG4gIHNxdWFyZVNpemUkOiBPYnNlcnZhYmxlPG51bWJlciB8IG51bGw+O1xuICBzaGlmdFgkOiBPYnNlcnZhYmxlPG51bWJlciB8IG51bGw+O1xuICBzaGlmdFkkOiBPYnNlcnZhYmxlPG51bWJlciB8IG51bGw+O1xuXG4gIGlubmVyUmFkaXVzJDogT2JzZXJ2YWJsZTxudW1iZXIgfCBudWxsPjtcbiAgb3V0ZXJSYWRpdXMkOiBPYnNlcnZhYmxlPG51bWJlciB8IG51bGw+O1xuICBtYXJrZXJQb3NpdGlvbiQ6IE9ic2VydmFibGU8e3g6IG51bWJlciwgeTogbnVtYmVyfT47XG4gIGRpc2FibGVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBcbiAgdmlld0luaXRlZCQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PGJvb2xlYW4+KGZhbHNlKTtcblxuICBuZ0FmdGVyVmlld0luaXQoKSB7XG4gICAgLy8gdGhpcy5yZXNpemVPYnNlcnZlci5vYnNlcnZlKHRoaXMuZWxlbWVudC5uYXRpdmVFbGVtZW50KTtcbiAgICB0aGlzLnZpZXdJbml0ZWQkLm5leHQodHJ1ZSk7XG4gICAgdGhpcy5jYW52YXNDb250ZXh0ID0gdGhpcy5jYW52YXMubmF0aXZlRWxlbWVudC5nZXRDb250ZXh0KCcyZCcsIHsgd2lsbFJlYWRGcmVxdWVudGx5OiB0cnVlIH0pO1xuICB9XG5cbiAgb25Qb2ludGVyRG93bihldjogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpIHtcbiAgICBpZiAoIXRoaXMuZGlzYWJsZWQkLnZhbHVlKSB7XG4gICAgICBldi5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy5pc1BvaW50ZXJEb3duID0gdHJ1ZTtcbiAgICAgIHRoaXMudXBkYXRlQ29sb3IoZXYsICEoJ3RvdWNoZXMnIGluIGV2KSk7XG4gICAgfVxuICB9XG5cbiAgb25Qb2ludGVyTW92ZShldjogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpIHtcbiAgICBpZiAodGhpcy5pc1BvaW50ZXJEb3duKSB7XG4gICAgICBldi5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgZXYuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICB0aGlzLnVwZGF0ZUNvbG9yKGV2LCAhKCd0b3VjaGVzJyBpbiBldikpO1xuICAgIH1cbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50Om1vdXNlbW92ZScsIFsnJGV2ZW50J10pXG4gIG9uTW91c2VNb3ZlKGV2OiBNb3VzZUV2ZW50KSB7XG4gICAgdGhpcy5vblBvaW50ZXJNb3ZlKGV2KTtcbiAgfVxuXG4gIEBIb3N0TGlzdGVuZXIoJ2RvY3VtZW50Om1vdXNldXAnLCBbJyRldmVudCddKVxuICBvblBvaW50ZXJVcChldjogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpIHtcbiAgICB0aGlzLmlzUG9pbnRlckRvd24gPSBmYWxzZTtcbiAgfVxuXG4gIHByaXZhdGUgdXBkYXRlQ29sb3IoZXY6IE1vdXNlRXZlbnQgfCBUb3VjaEV2ZW50LCBzdWJ0cmFjdDogYm9vbGVhbikge1xuICAgIGxldCBjbzogeyB4OiBudW1iZXIsIHk6IG51bWJlciB9O1xuICAgIGNvbnN0IHJlY3QgPSB0aGlzLmNhbnZhcy5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgIGlmICgndG91Y2hlcycgaW4gZXYpIHtcbiAgICAgIGNvID0ge1xuICAgICAgICB4OiBldi50b3VjaGVzWzBdLmNsaWVudFggLSByZWN0LmxlZnQsXG4gICAgICAgIHk6IGV2LnRvdWNoZXNbMF0uY2xpZW50WSAtIHJlY3QudG9wLFxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgY28gPSB7XG4gICAgICAgIHg6IGV2LmNsaWVudFggLSAoc3VidHJhY3QgPyByZWN0LmxlZnQgOiAwKSxcbiAgICAgICAgeTogZXYuY2xpZW50WSAtIChzdWJ0cmFjdCA/IHJlY3QudG9wIDogMCksXG4gICAgICB9O1xuICAgIH1cbiAgICBcbiAgICB0aGlzLnBvc2l0aW9uMmNvbG9yKGNvLngsIGNvLnkpLnBpcGUodGFrZSgxKSkuc3Vic2NyaWJlKChjb2xvcikgPT4ge1xuICAgICAgaWYgKGNvbG9yKSB7XG4gICAgICAgIHRoaXMuaHMkLm5leHQoeyBodWU6IGNvbG9yLmh1ZSwgc2F0dXJhdGlvbjogY29sb3Iuc2F0dXJhdGlvbiB9KTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnNvbGUud2FybignQ29sb3IgaXMgbnVsbCcpO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgcHJpdmF0ZSBpc0luc2lkZUNpcmNsZSh4OiBudW1iZXIsIHk6IG51bWJlcikge1xuICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFt0aGlzLnNxdWFyZVNpemUkLCB0aGlzLnNoaWZ0WCQsIHRoaXMuc2hpZnRZJF0pXG4gICAgICAucGlwZShtYXAoKFtzcXVhcmVTaXplLCBzaGlmdFgsIHNoaWZ0WV0pID0+IHtcbiAgICAgICAgLy8gUG9zaXRpb24gdG8gdGhlIHNxdWFyZVxuICAgICAgICBjb25zdCBzeDogbnVtYmVyID0geCAtIChzaGlmdFggPz8gMCk7XG4gICAgICAgIGNvbnN0IHN5ID0geSAtIChzaGlmdFkgPz8gMCk7XG4gICAgICAgIC8vIFNxdWFyZSByYWRpdXNcbiAgICAgICAgY29uc3Qgc3IgPSAoc3F1YXJlU2l6ZSA/PyAwKSAvIDI7XG5cbiAgICAgICAgY29uc3QgcmFkaXVzID0gTWF0aC5zcXJ0KE1hdGgucG93KHN4IC0gc3IsIDIpICsgTWF0aC5wb3coc3kgLSBzciwgMikpO1xuICAgICAgICBjb25zdCBhbmdsZSA9IChNYXRoLmF0YW4yKHNyIC0gc3ksIHNyIC0gc3gpICsgTWF0aC5QSSkgJSAzNjA7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgaW5zaWRlOiByYWRpdXMgPD0gc3IsXG4gICAgICAgICAgYW5nbGVcbiAgICAgICAgfTtcbiAgICAgIH0pKTtcbiAgfVxuXG4gIHByaXZhdGUgcG9zaXRpb24yY29sb3IoeDogbnVtYmVyLCB5OiBudW1iZXIpIHtcbiAgICByZXR1cm4gdGhpcy5pc0luc2lkZUNpcmNsZSh4LCB5KS5waXBlKG1hcCgocmVzdWx0KSA9PiB7XG4gICAgICBpZiAoIXRoaXMuY2FudmFzQ29udGV4dCkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cblxuICAgICAgaWYgKHJlc3VsdC5pbnNpZGUpIHtcbiAgICAgICAgY29uc3QgaW1hZ2VEYXRhID0gdGhpcy5jYW52YXNDb250ZXh0LmdldEltYWdlRGF0YSh4LCB5LCAxLCAxKS5kYXRhO1xuICAgICAgICBjb25zdCBoc2wgPSB0aGlzLnJnYjJIc2woeyByOiBpbWFnZURhdGFbMF0sIGc6IGltYWdlRGF0YVsxXSwgYjogaW1hZ2VEYXRhWzJdIH0pO1xuICAgICAgICByZXR1cm4gaHNsO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gPEhzbENvbG9yPnsgaHVlOiByZXN1bHQuYW5nbGUgKiAxODAgLyBNYXRoLlBJLCBzYXR1cmF0aW9uOiAxLCBsdW1pbm9zaXR5OiAwLjUgfTtcbiAgICB9KSk7XG4gIH1cblxuICBwcml2YXRlIGNvbG9yMnBvc2l0aW9uKGhzOiBIUykge1xuICAgIHJldHVybiBjb21iaW5lTGF0ZXN0KFt0aGlzLmlubmVyUmFkaXVzJCwgdGhpcy5vdXRlclJhZGl1cyRdKVxuICAgICAgLnBpcGUobWFwKChbaW5uZXJSYWRpdXMsIG91dGVyUmFkaXVzXSkgPT4ge1xuICAgICAgICBpZiAoaW5uZXJSYWRpdXMgPT09IG51bGwpIHtcbiAgICAgICAgICBpbm5lclJhZGl1cyA9IDA7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKCFvdXRlclJhZGl1cykge1xuICAgICAgICAgIG91dGVyUmFkaXVzID0gMTAwO1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgdGhldGEgPSBocy5odWUgKiBNYXRoLlBJIC8gMTgwO1xuICAgICAgICBjb25zdCBjID0ge1xuICAgICAgICAgIHg6IC1vdXRlclJhZGl1cyAqIE1hdGguY29zKHRoZXRhKSxcbiAgICAgICAgICB5OiAtb3V0ZXJSYWRpdXMgKiBNYXRoLnNpbih0aGV0YSlcbiAgICAgICAgfTtcbiAgICBcbiAgICAgICAgY29uc3QgZCA9IGhzLnNhdHVyYXRpb24gKiAob3V0ZXJSYWRpdXMgLSBpbm5lclJhZGl1cykgKyBpbm5lclJhZGl1cztcbiAgICAgICAgY29uc3QgbyA9IHsgeDogb3V0ZXJSYWRpdXMsIHk6IG91dGVyUmFkaXVzIH07XG4gICAgXG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgeDogby54IC0gZCAqIChjLnggLyBvdXRlclJhZGl1cyksXG4gICAgICAgICAgeTogby55IC0gZCAqIChjLnkgLyBvdXRlclJhZGl1cyksXG4gICAgICAgIH1cbiAgICAgIH0pKTtcbiAgfVxuICBcbiAgcHJpdmF0ZSByZ2IySHNsKGNvbG9yOiBSZ2JDb2xvcikge1xuICAgIGNvbnN0IHIwMSA9IHRoaXMuYm91bmQwMShjb2xvci5yLCAyNTUpO1xuICAgIGNvbnN0IGcwMSA9IHRoaXMuYm91bmQwMShjb2xvci5nLCAyNTUpO1xuICAgIGNvbnN0IGIwMSA9IHRoaXMuYm91bmQwMShjb2xvci5iLCAyNTUpO1xuXG4gICAgY29uc3QgbWF4ID0gTWF0aC5tYXgocjAxLCBnMDEsIGIwMSk7XG4gICAgY29uc3QgbWluID0gTWF0aC5taW4ocjAxLCBnMDEsIGIwMSk7XG5cbiAgICBsZXQgaDogbnVtYmVyLCBzOiBudW1iZXI7IGNvbnN0IGwgPSAobWF4ICsgbWluKSAvIDI7XG4gICAgaWYgKG1heCA9PT0gbWluKSB7XG4gICAgICAgIGggPSBzID0gMDtcbiAgICB9IGVsc2Uge1xuICAgICAgICBjb25zdCBkID0gbWF4IC0gbWluO1xuICAgICAgICBzID0gKGwgPiAwLjUpID8gKGQgLyAoMiAtIG1heCAtIG1pbikpIDogKGQgLyAobWF4ICsgbWluKSk7XG4gICAgICAgIHN3aXRjaCAobWF4KSB7XG4gICAgICAgICAgICBjYXNlIHIwMToge1xuICAgICAgICAgICAgICAgIGggPSAoZzAxIC0gYjAxKSAvIGQgKyAoKGcwMSA8IGIwMSkgPyA2IDogMCk7XG4gICAgICAgICAgICB9IGJyZWFrO1xuICAgICAgICAgICAgY2FzZSBnMDE6IHtcbiAgICAgICAgICAgICAgICBoID0gKGIwMSAtIHIwMSkgLyBkICsgMjtcbiAgICAgICAgICAgIH0gYnJlYWs7XG4gICAgICAgICAgICBjYXNlIGIwMToge1xuICAgICAgICAgICAgICAgIGggPSAocjAxIC0gZzAxKSAvIGQgKyA0O1xuICAgICAgICAgICAgfSBicmVhaztcbiAgICAgICAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgICAgICAgICB0aHJvdyAnSW52YWxpZCBvcGVyYXRpb24nO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIFxuICAgICAgICBoIC89IDY7XG4gICAgfVxuICAgIFxuICAgIGggKj0gMzYwO1xuXG4gICAgcmV0dXJuIDxIc2xDb2xvcj57IGh1ZTogaCwgc2F0dXJhdGlvbjogcywgbHVtaW5vc2l0eTogbCB9O1xuICB9XG5cbiAgLyoqXG4gICAqIERpdmlkZSAxIHRvIG4sIGhhbmRsaW5nIGZsb2F0aW5nIHBvaW50IGVycm9ycy5cbiAgICogRW5zdXJlcyB0aGF0IHRoZSB2YWx1ZSBpcyBpbiBiZXR3ZWVuIDAgYW5kIDEuXG4gICAqKi9cbiAgcHJpdmF0ZSBib3VuZDAxKG46IG51bWJlciwgbWF4OiBudW1iZXIpIHtcbiAgICAgIG4gPSBNYXRoLm1pbihtYXgsIE1hdGgubWF4KDAsIG4pKTtcbiAgICAgIGlmICgoTWF0aC5hYnMobiAtIG1heCkgPCAwLjAwMDAwMSkpIHtcbiAgICAgICAgICByZXR1cm4gMTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgcmV0dXJuIChuICUgbWF4KSAvIG1heDtcbiAgICAgIH1cbiAgfVxuXG59XG4iLCI8Y2FudmFzXG4gICAgY2xhc3M9XCJkLWJsb2NrXCJcbiAgICBbd2lkdGhdPVwid2lkdGgkIHwgYXN5bmNcIlxuICAgIFtoZWlnaHRdPVwiaGVpZ2h0JCB8IGFzeW5jXCJcbiAgICAobW91c2Vkb3duKT1cIm9uUG9pbnRlckRvd24oJGV2ZW50KVwiXG4gICAgKHRvdWNoc3RhcnQpPVwib25Qb2ludGVyRG93bigkZXZlbnQpXCJcbiAgICAodG91Y2htb3ZlKT1cIm9uUG9pbnRlck1vdmUoJGV2ZW50KVwiXG4gICAgKHRvdWNoZW5kKT1cIm9uUG9pbnRlclVwKCRldmVudClcIlxuICAgICNjYW52YXM+PC9jYW52YXM+XG5cbkBpZiAobWFya2VyUG9zaXRpb24kIHwgYXN5bmM7IGFzIG1hcmtlclBvc2l0aW9uKSB7XG4gICAgPGRpdiBjbGFzcz1cInRodW1iIHBvc2l0aW9uLWFic29sdXRlIHBlLW5vbmVcIiBbc3R5bGUubGVmdC5weF09XCJtYXJrZXJQb3NpdGlvbi54XCIgW3N0eWxlLnRvcC5weF09XCJtYXJrZXJQb3NpdGlvbi55XCI+PC9kaXY+XG59Il19","import { Component, Directive, EventEmitter, HostBinding, HostListener, Input, Output, ViewChild } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { BehaviorSubject, map } from 'rxjs';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/common\";\nexport class BsSliderComponent {\n constructor(element, zone) {\n this.element = element;\n this.zone = zone;\n this.dBlock = true;\n this.positionRelative = true;\n //#region Value\n this.value$ = new BehaviorSubject(0.5);\n this.valueChange = new EventEmitter();\n //#endregion\n this.isPointerDown$ = new BehaviorSubject(false);\n this.value$.pipe(takeUntilDestroyed())\n .subscribe((value) => this.valueChange.emit(value));\n this.thumbMarginLeft$ = this.value$.pipe(map((value) => {\n const res = value * element.nativeElement.clientWidth - 12;\n return res;\n }));\n this.cursorClass$ = this.isPointerDown$.pipe(map((isPointerDown) => {\n return isPointerDown ? 'cursor-grabbing' : 'cursor-grab';\n }));\n }\n get value() {\n return this.value$.value;\n }\n set value(value) {\n this.value$.next(value);\n }\n onPointerDown(ev) {\n ev.preventDefault();\n this.zone.run(() => this.isPointerDown$.next(true));\n this.updateColor(ev);\n }\n onPointerMove(ev) {\n if (this.isPointerDown$.value) {\n ev.preventDefault();\n ev.stopPropagation();\n this.updateColor(ev);\n }\n }\n onPointerUp(ev) {\n this.isPointerDown$.next(false);\n }\n updateColor(ev) {\n let co;\n const rect = this.track.nativeElement.getBoundingClientRect();\n if ('touches' in ev) {\n co = {\n x: ev.touches[0].clientX - rect.left,\n };\n }\n else {\n co = {\n x: ev.clientX - rect.left,\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 static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsSliderComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.0.0-rc.2\", type: BsSliderComponent, isStandalone: false, 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\" }] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsSliderComponent, decorators: [{\n type: Component,\n args: [{ selector: 'bs-slider', standalone: false, 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\"] }]\n }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.NgZone }], propDecorators: { dBlock: [{\n type: HostBinding,\n args: ['class.d-block']\n }], positionRelative: [{\n type: HostBinding,\n args: ['class.position-relative']\n }], track: [{\n type: ViewChild,\n args: ['track']\n }], thumb: [{\n type: ViewChild,\n args: ['thumb']\n }], valueChange: [{\n type: Output\n }], value: [{\n type: Input\n }], onPointerMove: [{\n type: HostListener,\n args: ['document:mousemove', ['$event']]\n }], onPointerUp: [{\n type: HostListener,\n args: ['document:mouseup', ['$event']]\n }] } });\nexport class BsThumbDirective {\n constructor() {\n this.thumbClass = true;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsThumbDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.0.0-rc.2\", type: BsThumbDirective, isStandalone: false, selector: \"[bsThumb]\", host: { properties: { \"class.thumb\": \"this.thumbClass\", \"class.position-absolute\": \"this.thumbClass\" } }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsThumbDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[bsThumb]',\n standalone: false,\n }]\n }], propDecorators: { thumbClass: [{\n type: HostBinding,\n args: ['class.thumb']\n }, {\n type: HostBinding,\n args: ['class.position-absolute']\n }] } });\nexport class BsTrackDirective {\n constructor() {\n this.trackClass = true;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsTrackDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.0.0-rc.2\", type: BsTrackDirective, isStandalone: false, selector: \"[bsTrack]\", host: { properties: { \"class.track\": \"this.trackClass\" } }, ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsTrackDirective, decorators: [{\n type: Directive,\n args: [{\n selector: '[bsTrack]',\n standalone: false,\n }]\n }], propDecorators: { trackClass: [{\n type: HostBinding,\n args: ['class.track']\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2xpZGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvY29sb3ItcGlja2VyL2NvbXBvbmVudHMvc2xpZGVyL3NsaWRlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL2NvbG9yLXBpY2tlci9jb21wb25lbnRzL3NsaWRlci9zbGlkZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQWMsWUFBWSxFQUFFLFdBQVcsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDNUksT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLGVBQWUsRUFBRSxHQUFHLEVBQWMsTUFBTSxNQUFNLENBQUM7OztBQVF4RCxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLFlBQW9CLE9BQWdDLEVBQVUsSUFBWTtRQUF0RCxZQUFPLEdBQVAsT0FBTyxDQUF5QjtRQUFVLFNBQUksR0FBSixJQUFJLENBQVE7UUFjNUMsV0FBTSxHQUFHLElBQUksQ0FBQztRQUNKLHFCQUFnQixHQUFHLElBQUksQ0FBQztRQUtoRSxlQUFlO1FBQ2YsV0FBTSxHQUFHLElBQUksZUFBZSxDQUFTLEdBQUcsQ0FBQyxDQUFDO1FBQ2hDLGdCQUFXLEdBQUcsSUFBSSxZQUFZLEVBQVUsQ0FBQztRQU9uRCxZQUFZO1FBRUosbUJBQWMsR0FBRyxJQUFJLGVBQWUsQ0FBVSxLQUFLLENBQUMsQ0FBQztRQTlCM0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQzthQUNuQyxTQUFTLENBQUMsQ0FBQyxLQUFLLEVBQUUs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QUMsZUFBZTtnQkFDWSxnQkFBZ0I7c0JBQXZELFdBQVc7dUJBQUMseUJBQXlCO2dCQUVsQixLQUFLO3NCQUF4QixTQUFTO3VCQUFDLE9BQU87Z0JBQ0UsS0FBSztzQkFBeEIsU0FBUzt1QkFBQyxPQUFPO2dCQUlSLFdBQVc7c0JBQXBCLE1BQU07Z0JBSWEsS0FBSztzQkFBeEIsS0FBSztnQkFlTixhQUFhO3NCQURaLFlBQVk7dUJBQUMsb0JBQW9CLEVBQUUsQ0FBQyxRQUFRLENBQUM7Z0JBVTlDLFdBQVc7c0JBRFYsWUFBWTt1QkFBQyxrQkFBa0IsRUFBRSxDQUFDLFFBQVEsQ0FBQzs7QUE0QjlDLE1BQU0sT0FBTyxnQkFBZ0I7SUFKN0I7UUFPRSxlQUFVLEdBQUcsSUFBSSxDQUFDO0tBQ25CO21IQUpZLGdCQUFnQjt1R0FBaEIsZ0JBQWdCOztnR0FBaEIsZ0JBQWdCO2tCQUo1QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxXQUFXO29CQUNyQixVQUFVLEVBQUUsS0FBSztpQkFDbEI7OEJBSUMsVUFBVTtzQkFGVCxXQUFXO3VCQUFDLGFBQWE7O3NCQUN6QixXQUFXO3VCQUFDLHlCQUF5Qjs7QUFReEMsTUFBTSxPQUFPLGdCQUFnQjtJQUo3QjtRQUs4QixlQUFVLEdBQUcsSUFBSSxDQUFDO0tBQy9DO21IQUZZLGdCQUFnQjt1R0FBaEIsZ0JBQWdCOztnR0FBaEIsZ0JBQWdCO2tCQUo1QixTQUFTO21CQUFDO29CQUNULFFBQVEsRUFBRSxXQUFXO29CQUNyQixVQUFVLEVBQUUsS0FBSztpQkFDbEI7OEJBRTZCLFVBQVU7c0JBQXJDLFdBQVc7dUJBQUMsYUFBYSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEhvc3RCaW5kaW5nLCBIb3N0TGlzdGVuZXIsIElucHV0LCBPdXRwdXQsIFZpZXdDaGlsZCwgTmdab25lIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIG1hcCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdicy1zbGlkZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vc2xpZGVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vc2xpZGVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBCc1NsaWRlckNvbXBvbmVudCB7XG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgZWxlbWVudDogRWxlbWVudFJlZjxIVE1MRWxlbWVudD4sIHByaXZhdGUgem9uZTogTmdab25lKSB7XG4gICAgdGhpcy52YWx1ZSQucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQoKSlcbiAgICAgIC5zdWJzY3JpYmUoKHZhbHVlKSA9PiB0aGlzLnZhbHVlQ2hhbmdlLmVtaXQodmFsdWUpKTtcblxuICAgIHRoaXMudGh1bWJNYXJnaW5MZWZ0JCA9IHRoaXMudmFsdWUkLnBpcGUobWFwKCh2YWx1ZSkgPT4ge1xuICAgICAgY29uc3QgcmVzID0gdmFsdWUgKiBlbGVtZW50Lm5hdGl2ZUVsZW1lbnQuY2xpZW50V2lkdGggLSAxMjtcbiAgICAgIHJldHVybiByZXM7XG4gICAgfSkpO1xuXG4gICAgdGhpcy5jdXJzb3JDbGFzcyQgPSB0aGlzLmlzUG9pbnRlckRvd24kLnBpcGUobWFwKChpc1BvaW50ZXJEb3duKSA9PiB7XG4gICAgICByZXR1cm4gaXNQb2ludGVyRG93biA/ICdjdXJzb3ItZ3JhYmJpbmcnIDogJ2N1cnNvci1ncmFiJztcbiAgICB9KSk7XG4gIH1cblxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLmQtYmxvY2snKSBkQmxvY2sgPSB0cnVlO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnBvc2l0aW9uLXJlbGF0aXZlJykgcG9zaXRpb25SZWxhdGl2ZSA9IHRydWU7XG4gIHRodW1iTWFyZ2luTGVmdCQ6IE9ic2VydmFibGU8bnVtYmVyPjtcbiAgQFZpZXdDaGlsZCgndHJhY2snKSB0cmFjayE6IEVsZW1lbnRSZWY8SFRNTERpdkVsZW1lbnQ+O1xuICBAVmlld0NoaWxkKCd0aHVtYicpIHRodW1iITogRWxlbWVudFJlZjxIVE1MRGl2RWxlbWVudD47XG5cbiAgLy8jcmVnaW9uIFZhbHVlXG4gIHZhbHVlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPigwLjUpO1xuICBAT3V0cHV0KCkgdmFsdWVDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcbiAgcHVibGljIGdldCB2YWx1ZSgpIHtcbiAgICByZXR1cm4gdGhpcy52YWx1ZSQudmFsdWU7XG4gIH1cbiAgQElucHV0KCkgcHVibGljIHNldCB2YWx1ZSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy52YWx1ZSQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgLy8jZW5kcmVnaW9uXG5cbiAgcHJpdmF0ZSBpc1BvaW50ZXJEb3duJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBjdXJzb3JDbGFzcyQ6IE9ic2VydmFibGU8c3RyaW5nPjtcblxuICBvblBvaW50ZXJEb3duKGV2OiBNb3VzZUV2ZW50IHwgVG91Y2hFdmVudCkge1xuICAgIGV2LnByZXZlbnREZWZhdWx0KCk7XG4gICAgdGhpcy56b25lLnJ1bigoKSA9PiB0aGlzLmlzUG9pbnRlckRvd24kLm5leHQodHJ1ZSkpO1xuICAgIHRoaXMudXBkYXRlQ29sb3IoZXYpO1xuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6bW91c2Vtb3ZlJywgWyckZXZlbnQnXSlcbiAgb25Qb2ludGVyTW92ZShldjogTW91c2VFdmVudCB8IFRvdWNoRXZlbnQpIHtcbiAgICBpZiAodGhpcy5pc1BvaW50ZXJEb3duJC52YWx1ZSkge1xuICAgICAgZXYucHJldmVudERlZmF1bHQoKTtcbiAgICAgIGV2LnN0b3BQcm9wYWdhdGlvbigpO1xuICAgICAgdGhpcy51cGRhdGVDb2xvcihldik7XG4gICAgfVxuICB9XG5cbiAgQEhvc3RMaXN0ZW5lcignZG9jdW1lbnQ6bW91c2V1cCcsIFsnJGV2ZW50J10pXG4gIG9uUG9pbnRlclVwKGV2OiBNb3VzZUV2ZW50IHwgVG91Y2hFdmVudCkge1xuICAgIHRoaXMuaXNQb2ludGVyRG93biQubmV4dChmYWxzZSk7XG4gIH1cblxuICBwcml2YXRlIHVwZGF0ZUNvbG9yKGV2OiBNb3VzZUV2ZW50IHwgVG91Y2hFdmVudCkge1xuICAgIGxldCBjbzogeyB4OiBudW1iZXIgfTtcbiAgICBjb25zdCByZWN0ID0gdGhpcy50cmFjay5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuICAgIGlmICgndG91Y2hlcycgaW4gZXYpIHtcbiAgICAgIGNvID0ge1xuICAgICAgICB4OiBldi50b3VjaGVzWzBdLmNsaWVudFggLSByZWN0LmxlZnQsXG4gICAgICB9O1xuICAgIH0gZWxzZSB7XG4gICAgICBjbyA9IHtcbiAgICAgICAgeDogZXYuY2xpZW50WCAtIHJlY3QubGVmdCxcbiAgICAgIH07XG4gICAgfVxuICAgIFxuICAgIGNvbnN0IHBlcmNlbnQgPSBjby54IC8gdGhpcy50cmFjay5uYXRpdmVFbGVtZW50LmNsaWVudFdpZHRoO1xuICAgIGNvbnN0IGxpbWl0ZWQgPSBNYXRoLm1heCgwLCBNYXRoLm1pbigxLCBwZXJjZW50KSk7XG4gICAgdGhpcy52YWx1ZSQubmV4dChsaW1pdGVkKTtcbiAgfVxufVxuXG5ARGlyZWN0aXZlKHtcbiAgc2VsZWN0b3I6ICdbYnNUaHVtYl0nLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgQnNUaHVtYkRpcmVjdGl2ZSB7XG4gIEBIb3N0QmluZGluZygnY2xhc3MudGh1bWInKVxuICBASG9zdEJpbmRpbmcoJ2NsYXNzLnBvc2l0aW9uLWFic29sdXRlJylcbiAgdGh1bWJDbGFzcyA9IHRydWU7XG59XG5cbkBEaXJlY3RpdmUoe1xuICBzZWxlY3RvcjogJ1tic1RyYWNrXScsXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBCc1RyYWNrRGlyZWN0aXZlIHtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcy50cmFjaycpIHRyYWNrQ2xhc3MgPSB0cnVlO1xufSIsIjxkaXYgY2xhc3M9XCJ3cmFwcGVyIGQtYmxvY2sgcG9zaXRpb24tcmVsYXRpdmVcIj5cbiAgICA8ZGl2ICN0cmFjayBjbGFzcz1cInRyYWNrMlwiXG4gICAgICAgIChtb3VzZWRvd24pPVwib25Qb2ludGVyRG93bigkZXZlbnQpXCJcbiAgICAgICAgKHRvdWNoc3RhcnQpPVwib25Qb2ludGVyRG93bigkZXZlbnQpXCJcbiAgICAgICAgKHRvdWNobW92ZSk9XCJvblBvaW50ZXJNb3ZlKCRldmVudClcIlxuICAgICAgICAodG91Y2hlbmQpPVwib25Qb2ludGVyVXAoJGV2ZW50KVwiPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbYnNUcmFja11cIj48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAjdGh1bWJcbiAgICAgICAgKG1vdXNlZG93bik9XCJvblBvaW50ZXJEb3duKCRldmVudClcIlxuICAgICAgICAodG91Y2hzdGFydCk9XCJvblBvaW50ZXJEb3duKCRldmVudClcIlxuICAgICAgICAodG91Y2htb3ZlKT1cIm9uUG9pbnRlck1vdmUoJGV2ZW50KVwiXG4gICAgICAgICh0b3VjaGVuZCk9XCJvblBvaW50ZXJVcCgkZXZlbnQpXCJcbiAgICAgICAgW2NsYXNzXT1cImN1cnNvckNsYXNzJCB8IGFzeW5jXCJcbiAgICAgICAgW3N0eWxlLm1hcmdpbi1sZWZ0LnB4XT1cInRodW1iTWFyZ2luTGVmdCQgfCBhc3luY1wiPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbYnNUaHVtYl1cIj48L25nLWNvbnRlbnQ+XG4gICAgPC9kaXY+XG48L2Rpdj4iXX0=","import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';\nimport { BehaviorSubject, combineLatest, map } from 'rxjs';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"../slider/slider.component\";\nimport * as i2 from \"@angular/common\";\nexport class BsLuminosityStripComponent {\n constructor() {\n //#region HS\n this.hs$ = new BehaviorSubject({ hue: 0, saturation: 0 });\n //#endregion\n //#region Luminosity\n this.luminosity$ = new BehaviorSubject(0.5);\n this.luminosityChange = new EventEmitter();\n //#endregion\n this.canvasContext = null;\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 // HSL\n // - H: 0 - 359\n // - S: \"0%\" - \"100%\"\n // - L: \"0%\" - \"50%\" - \"100%\"\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 this.resultBackground$ = combineLatest([this.hs$, this.luminosity$])\n .pipe(map(([hs, luminosity]) => {\n return `hsl(${hs.hue}, ${hs.saturation * 100}%, ${luminosity * 100}%)`;\n }));\n this.luminosity$.pipe(takeUntilDestroyed())\n .subscribe(luminosity => this.luminosityChange.emit(luminosity));\n }\n get hs() {\n return this.hs$.value;\n }\n set hs(value) {\n this.hs$.next(value);\n }\n get luminosity() {\n return this.luminosity$.value;\n }\n set luminosity(value) {\n this.luminosity$.next(value);\n }\n ngAfterViewInit() {\n this.canvasContext = this.canvas.nativeElement.getContext('2d', { willReadFrequently: true });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsLuminosityStripComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.0.0-rc.2\", type: BsLuminosityStripComponent, isStandalone: false, 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: i1.BsSliderComponent, selector: \"bs-slider\", inputs: [\"value\"], outputs: [\"valueChange\"] }, { kind: \"directive\", type: i1.BsThumbDirective, selector: \"[bsThumb]\" }, { kind: \"directive\", type: i1.BsTrackDirective, selector: \"[bsTrack]\" }, { kind: \"pipe\", type: i2.AsyncPipe, name: \"async\" }] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsLuminosityStripComponent, decorators: [{\n type: Component,\n args: [{ selector: 'bs-luminosity-strip', standalone: false, 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>\" }]\n }], ctorParameters: () => [], propDecorators: { hs: [{\n type: Input\n }], luminosityChange: [{\n type: Output\n }], luminosity: [{\n type: Input\n }], canvas: [{\n type: ViewChild,\n args: ['canvas']\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibHVtaW5vc2l0eS1zdHJpcC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL2NvbG9yLXBpY2tlci9jb21wb25lbnRzL2x1bWlub3NpdHktc3RyaXAvbHVtaW5vc2l0eS1zdHJpcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL2NvbG9yLXBpY2tlci9jb21wb25lbnRzL2x1bWlub3NpdHktc3RyaXAvbHVtaW5vc2l0eS1zdHJpcC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFpQixTQUFTLEVBQWMsTUFBTSxlQUFlLENBQUM7QUFDN0csT0FBTyxFQUFFLGVBQWUsRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFjLE1BQU0sTUFBTSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7O0FBU2hFLE1BQU0sT0FBTywwQkFBMEI7SUFDckM7UUE4QkEsWUFBWTtRQUNaLFFBQUcsR0FBRyxJQUFJLGVBQWUsQ0FBSyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsVUFBVSxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7UUFPekQsWUFBWTtRQUNaLG9CQUFvQjtRQUNwQixnQkFBVyxHQUFHLElBQUksZUFBZSxDQUFTLEdBQUcsQ0FBQyxDQUFDO1FBQ3JDLHFCQUFnQixHQUFHLElBQUksWUFBWSxFQUFVLENBQUM7UUFPeEQsWUFBWTtRQUVKLGtCQUFhLEdBQW9DLElBQUksQ0FBQztRQWpENUQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsa0JBQWtCLEVBQUUsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFF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QkFBMEI7a0JBTnRDLFNBQVM7K0JBQ0UscUJBQXFCLGNBR25CLEtBQUs7d0RBc0NHLEVBQUU7c0JBQXJCLEtBQUs7Z0JBTUksZ0JBQWdCO3NCQUF6QixNQUFNO2dCQUlhLFVBQVU7c0JBQTdCLEtBQUs7Z0JBTWUsTUFBTTtzQkFBMUIsU0FBUzt1QkFBQyxRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQsIEFmdGVyVmlld0luaXQsIFZpZXdDaGlsZCwgRWxlbWVudFJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBjb21iaW5lTGF0ZXN0LCBtYXAsIE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IEhTIH0gZnJvbSAnLi4vLi4vaW50ZXJmYWNlcy9ocyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2JzLWx1bWlub3NpdHktc3RyaXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vbHVtaW5vc2l0eS1zdHJpcC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2x1bWlub3NpdHktc3RyaXAuY29tcG9uZW50LnNjc3MnXSxcbiAgc3RhbmRhbG9uZTogZmFsc2UsXG59KVxuZXhwb3J0IGNsYXNzIEJzTHVtaW5vc2l0eVN0cmlwQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuaHMkLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKCkpLnN1YnNjcmliZSgoaHMpID0+IHtcbiAgICAgIGlmICh0aGlzLmNhbnZhc0NvbnRleHQpIHtcbiAgICAgICAgY29uc3Qgd2lkdGggPSB0aGlzLmNhbnZhcy5uYXRpdmVFbGVtZW50LndpZHRoLCBoZWlnaHQgPSB0aGlzLmNhbnZhcy5uYXRpdmVFbGVtZW50LmhlaWdodDtcbiAgICAgICAgdGhpcy5jYW52YXNDb250ZXh0LmNsZWFyUmVjdCgwLCAwLCB3aWR0aCwgaGVpZ2h0KTtcbiAgICAgICAgdGhpcy5jYW52YXNDb250ZXh0LnNhdmUoKTtcblxuICAgICAgICAvLyBIU0xcbiAgICAgICAgLy8gLSBIOiAwIC0gMzU5XG4gICAgICAgIC8vIC0gUzogXCIwJVwiIC0gXCIxMDAlXCJcbiAgICAgICAgLy8gLSBMOiBcIjAlXCIgLSBcIjUwJVwiIC0gXCIxMDAlXCJcblxuICAgICAgICBjb25zdCBncmFkaWVudCA9IHRoaXMuY2FudmFzQ29udGV4dC5jcmVhdGVMaW5lYXJHcmFkaWVudCgwLCAwLCB3aWR0aCwgMCk7XG4gICAgICAgIGdyYWRpZW50LmFkZENvbG9yU3RvcCgwLCBgaHNsKCR7aHMuaHVlfSwgJHtocy5zYXR1cmF0aW9uICogMTAwfSUsIDAlKWApO1xuICAgICAgICBncmFkaWVudC5hZGRDb2xvclN0b3AoMC41LCBgaHNsKCR7aHMuaHVlfSwgJHtocy5zYXR1cmF0aW9uICogMTAwfSUsIDUwJSlgKTtcbiAgICAgICAgZ3JhZGllbnQuYWRkQ29sb3JTdG9wKDEsIGBoc2woJHtocy5odWV9LCAke2hzLnNhdHVyYXRpb24gKiAxMDB9JSwgMTAwJSlgKTtcbiAgICAgICAgdGhpcy5jYW52YXNDb250ZXh0LmZpbGxTdHlsZSA9IGdyYWRpZW50O1xuICAgICAgICB0aGlzLmNhbnZhc0NvbnRleHQuZmlsbFJlY3QoMCwgMCwgd2lkdGgsIGhlaWdodCk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgXG4gICAgdGhpcy5yZXN1bHRCYWNrZ3JvdW5kJCA9IGNvbWJpbmVMYXRlc3QoW3RoaXMuaHMkLCB0aGlzLmx1bWlub3NpdHkkXSlcbiAgICAgIC5waXBlKG1hcCgoW2hzLCBsdW1pbm9zaXR5XSkgPT4ge1xuICAgICAgICByZXR1cm4gYGhzbCgke2hzLmh1ZX0sICR7aHMuc2F0dXJhdGlvbiAqIDEwMH0lLCAke2x1bWlub3NpdHkgKiAxMDB9JSlgO1xuICAgICAgfSkpO1xuICAgICAgXG4gICAgdGhpcy5sdW1pbm9zaXR5JC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCgpKVxuICAgICAgLnN1YnNjcmliZShsdW1pbm9zaXR5ID0+IHRoaXMubHVtaW5vc2l0eUNoYW5nZS5lbWl0KGx1bWlub3NpdHkpKTtcbiAgfVxuXG4gIC8vI3JlZ2lvbiBIU1xuICBocyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEhTPih7IGh1ZTogMCwgc2F0dXJhdGlvbjogMCB9KTtcbiAgcHVibGljIGdldCBocygpIHtcbiAgICByZXR1cm4gdGhpcy5ocyQudmFsdWU7XG4gIH1cbiAgQElucHV0KCkgcHVibGljIHNldCBocyh2YWx1ZTogSFMpIHtcbiAgICB0aGlzLmhzJC5uZXh0KHZhbHVlKTtcbiAgfVxuICAvLyNlbmRyZWdpb25cbiAgLy8jcmVnaW9uIEx1bWlub3NpdHlcbiAgbHVtaW5vc2l0eSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4oMC41KTtcbiAgQE91dHB1dCgpIGx1bWlub3NpdHlDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPG51bWJlcj4oKTtcbiAgcHVibGljIGdldCBsdW1pbm9zaXR5KCkge1xuICAgIHJldHVybiB0aGlzLmx1bWlub3NpdHkkLnZhbHVlO1xuICB9XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXQgbHVtaW5vc2l0eSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5sdW1pbm9zaXR5JC5uZXh0KHZhbHVlKTtcbiAgfVxuICAvLyNlbmRyZWdpb25cblxuICBwcml2YXRlIGNhbnZhc0NvbnRleHQ6IENhbnZhc1JlbmRlcmluZ0NvbnRleHQyRCB8IG51bGwgPSBudWxsO1xuICBAVmlld0NoaWxkKCdjYW52YXMnKSBjYW52YXMhOiBFbGVtZW50UmVmPEhUTUxDYW52YXNFbGVtZW50PjtcbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuY2FudmFzQ29udGV4dCA9IHRoaXMuY2FudmFzLm5hdGl2ZUVsZW1lbnQuZ2V0Q29udGV4dCgnMmQnLCB7IHdpbGxSZWFkRnJlcXVlbnRseTogdHJ1ZSB9KTtcbiAgfVxuXG4gIHJlc3VsdEJhY2tncm91bmQkOiBPYnNlcnZhYmxlPHN0cmluZz47XG59XG4iLCI8YnMtc2xpZGVyIFt2YWx1ZV09XCIobHVtaW5vc2l0eSQgfCBhc3luYykhXCIgKHZhbHVlQ2hhbmdlKT1cImx1bWlub3NpdHlDaGFuZ2UuZW1pdCgkZXZlbnQpXCI+XG4gICAgPGNhbnZhcyBic1RyYWNrIGNsYXNzPVwicG9zaXRpb24tYWJzb2x1dGUgdy0xMDBcIiAjY2FudmFzPjwvY2FudmFzPlxuICAgIDxkaXYgYnNUaHVtYiBbc3R5bGUuYmFja2dyb3VuZF09XCJyZXN1bHRCYWNrZ3JvdW5kJCB8IGFzeW5jXCI+PC9kaXY+XG48L2JzLXNsaWRlcj4iXX0=","import { Component, EventEmitter, Input, Output, ViewChild } from '@angular/core';\nimport { BehaviorSubject, combineLatest, map } from 'rxjs';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"../slider/slider.component\";\nimport * as i2 from \"@angular/common\";\nexport class BsAlphaStripComponent {\n constructor() {\n //#region HS\n this.hs$ = new BehaviorSubject({ hue: 0, saturation: 0 });\n //#endregion\n //#region Luminosity\n this.luminosity$ = new BehaviorSubject(0.5);\n //#endregion\n //#region Alpha\n this.alpha$ = new BehaviorSubject(1);\n this.alphaChange = new EventEmitter();\n //#endregion\n this.canvasContext = null;\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 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 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 this.alpha$.pipe(takeUntilDestroyed())\n .subscribe((alpha) => this.alphaChange.emit(alpha));\n }\n get hs() {\n return this.hs$.value;\n }\n set hs(value) {\n this.hs$.next(value);\n }\n get luminosity() {\n return this.luminosity$.value;\n }\n set luminosity(value) {\n this.luminosity$.next(value);\n }\n get alpha() {\n return this.alpha$.value;\n }\n set alpha(value) {\n this.alpha$.next(value);\n }\n ngAfterViewInit() {\n this.canvasContext = this.canvas.nativeElement.getContext('2d', { willReadFrequently: true });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsAlphaStripComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.0.0-rc.2\", type: BsAlphaStripComponent, isStandalone: false, 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: i1.BsSliderComponent, selector: \"bs-slider\", inputs: [\"value\"], outputs: [\"valueChange\"] }, { kind: \"directive\", type: i1.BsThumbDirective, selector: \"[bsThumb]\" }, { kind: \"directive\", type: i1.BsTrackDirective, selector: \"[bsTrack]\" }, { kind: \"pipe\", type: i2.AsyncPipe, name: \"async\" }] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsAlphaStripComponent, decorators: [{\n type: Component,\n args: [{ selector: 'bs-alpha-strip', standalone: false, 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\"] }]\n }], ctorParameters: () => [], propDecorators: { hs: [{\n type: Input\n }], luminosity: [{\n type: Input\n }], alphaChange: [{\n type: Output\n }], alpha: [{\n type: Input\n }], canvas: [{\n type: ViewChild,\n args: ['track']\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxwaGEtc3RyaXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9jb2xvci1waWNrZXIvY29tcG9uZW50cy9hbHBoYS1zdHJpcC9hbHBoYS1zdHJpcC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL2NvbG9yLXBpY2tlci9jb21wb25lbnRzL2FscGhhLXN0cmlwL2FscGhhLXN0cmlwLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWlCLFNBQVMsRUFBYyxNQUFNLGVBQWUsQ0FBQztBQUM3RyxPQUFPLEVBQUUsZUFBZSxFQUFFLGFBQWEsRUFBRSxHQUFHLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFFdkUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7Ozs7QUFRaEUsTUFBTSxPQUFPLHFCQUFxQjtJQUVoQztRQTBCQSxZQUFZO1FBQ1osUUFBRyxHQUFHLElBQUksZUFBZSxDQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQU96RCxZQUFZO1FBQ1osb0JBQW9CO1FBQ3BCLGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQVMsR0FBRyxDQUFDLENBQUM7UUFPL0MsWUFBWTtRQUNaLGVBQWU7UUFDZixXQUFNLEdBQUcsSUFBSSxlQUFlLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFDOUIsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBT25ELFlBQVk7UUFFSixrQkFBYSxHQUFvQyxJQUFJLENBQUM7UUF0RDVELGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxVQUFVLENBQUMsRUFBRSxFQUFFO1lBQ3BHLFVBQVUsQ0FBQyxHQUFHLEVBQUU7Z0JBQ2QsSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7b0JBQ3ZCLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLEtBQUssRUFBRSxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsTUFBTSxDQUFDO29CQUN6RixJQUFJLENBQUMsYUFBYSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztvQkFDbEQsSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsQ0FBQztvQkFFMUIsTUFBTSxRQUFRLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztvQkFDekUsUUFBUSxDQUFDLFlBQVksQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxVQUFVLEdBQUcsR0FBRyxNQUFNLFVBQVUsR0FBRyxHQUFHLE9BQU8sQ0FBQyxDQUFDO29CQUM5RixRQUFRLENBQUMsWUFBWSxDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLFVBQVUsR0FBRyxHQUFHLE1BQU0sVUFBVSxHQUFHLEdBQUcsT0FBTyxDQUFDLENBQUM7b0JBQzlGLElBQUksQ0FBQyxhQUFhLENBQUMsU0FBUyxHQUFHLFFBQVEsQ0FBQztvQkFDeEMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLENBQUM7Z0JBQ25ELENBQUM7WUFDSCxDQUFDLENBQUMsQ0FBQztRQUNMLENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLGlCQUFpQixHQUFHLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsSUFBSSxDQUFDLFdBQVcsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7YUFDOUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLFVBQVUsRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFO1lBQ3BDLE9BQU8sUUFBUSxFQUFFLENBQUMsR0FBRyxLQUFLLEVBQUUsQ0FBQyxVQUFVLEdBQUcsR0FBRyxNQUFNLFVBQVUsR0FBRyxHQUFHLE1BQU0sS0FBSyxHQUFHLENBQUM7UUFDcEYsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUVOLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7YUFDbkMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFJRCxJQUFXLEVBQUU7UUFDWCxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDO0lBQ3hCLENBQUM7SUFDRCxJQUFvQixFQUFFLENBQUMsS0FBUztRQUM5QixJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN2QixDQUFDO0lBSUQsSUFBVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUM7SUFDaEMsQ0FBQztJQUNELElBQW9CLFVBQVUsQ0FBQyxLQUFhO1FBQzFDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFLRCxJQUFXLEtBQUs7UUFDZCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDO0lBQzNCLENBQUM7SUFDRCxJQUFvQixLQUFLLENBQUMsS0FBYTtRQUNyQyxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQixDQUFDO0lBS0QsZUFBZTtRQUNiLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLElBQUksRUFBRSxFQUFFLGtCQUFrQixFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDaEcsQ0FBQzttSEE3RFUscUJBQXFCO3VHQUFyQixxQkFBcUIscVJDWGxDLDhUQUtZOztnR0RNQyxxQkFBcUI7a0JBTmpDLFNBQVM7K0JBQ0UsZ0JBQWdCLGNBR2QsS0FBSzt3REFtQ0csRUFBRTtzQkFBckIsS0FBSztnQkFTYyxVQUFVO3NCQUE3QixLQUFLO2dCQU1JLFdBQVc7c0JBQXBCLE1BQU07Z0JBSWEsS0FBSztzQkFBeEIsS0FBSztnQkFNYyxNQUFNO3NCQUF6QixTQUFTO3VCQUFDLE9BQU8iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCwgQWZ0ZXJWaWV3SW5pdCwgVmlld0NoaWxkLCBFbGVtZW50UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCZWhhdmlvclN1YmplY3QsIGNvbWJpbmVMYXRlc3QsIG1hcCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgSFMgfSBmcm9tICcuLi8uLi9pbnRlcmZhY2VzL2hzJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYnMtYWxwaGEtc3RyaXAnLFxuICB0ZW1wbGF0ZVVybDogJy4vYWxwaGEtc3RyaXAuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hbHBoYS1zdHJpcC5jb21wb25lbnQuc2NzcyddLFxuICBzdGFuZGFsb25lOiBmYWxzZSxcbn0pXG5leHBvcnQgY2xhc3MgQnNBbHBoYVN0cmlwQ29tcG9uZW50IGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgY29tYmluZUxhdGVzdChbdGhpcy5ocyQsIHRoaXMubHVtaW5vc2l0eSRdKS5waXBlKHRha2VVbnRpbERlc3Ryb3llZCgpKS5zdWJzY3JpYmUoKFtocywgbHVtaW5vc2l0eV0pID0+IHtcbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBpZiAodGhpcy5jYW52YXNDb250ZXh0KSB7XG4gICAgICAgICAgY29uc3Qgd2lkdGggPSB0aGlzLmNhbnZhcy5uYXRpdmVFbGVtZW50LndpZHRoLCBoZWlnaHQgPSB0aGlzLmNhbnZhcy5uYXRpdmVFbGVtZW50LmhlaWdodDtcbiAgICAgICAgICB0aGlzLmNhbnZhc0NvbnRleHQuY2xlYXJSZWN0KDAsIDAsIHdpZHRoLCBoZWlnaHQpO1xuICAgICAgICAgIHRoaXMuY2FudmFzQ29udGV4dC5zYXZlKCk7XG4gICAgICAgICAgXG4gICAgICAgICAgY29uc3QgZ3JhZGllbnQgPSB0aGlzLmNhbnZhc0NvbnRleHQuY3JlYXRlTGluZWFyR3JhZGllbnQoMCwgMCwgd2lkdGgsIDApO1xuICAgICAgICAgIGdyYWRpZW50LmFkZENvbG9yU3RvcCgwLCBgaHNsYSgke2hzLmh1ZX0sICR7aHMuc2F0dXJhdGlvbiAqIDEwMH0lLCAke2x1bWlub3NpdHkgKiAxMDB9JSwgMClgKTtcbiAgICAgICAgICBncmFkaWVudC5hZGRDb2xvclN0b3AoMSwgYGhzbGEoJHtocy5odWV9LCAke2hzLnNhdHVyYXRpb24gKiAxMDB9JSwgJHtsdW1pbm9zaXR5ICogMTAwfSUsIDEpYCk7XG4gICAgICAgICAgdGhpcy5jYW52YXNDb250ZXh0LmZpbGxTdHlsZSA9IGdyYWRpZW50O1xuICAgICAgICAgIHRoaXMuY2FudmFzQ29udGV4dC5maWxsUmVjdCgwLCAwLCB3aWR0aCwgaGVpZ2h0KTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfSk7XG5cbiAgICB0aGlzLnJlc3VsdEJhY2tncm91bmQkID0gY29tYmluZUxhdGVzdChbdGhpcy5ocyQsIHRoaXMubHVtaW5vc2l0eSQsIHRoaXMuYWxwaGEkXSlcbiAgICAgIC5waXBlKG1hcCgoW2hzLCBsdW1pbm9zaXR5LCBhbHBoYV0pID0+IHtcbiAgICAgICAgcmV0dXJuIGBoc2xhKCR7aHMuaHVlfSwgJHtocy5zYXR1cmF0aW9uICogMTAwfSUsICR7bHVtaW5vc2l0eSAqIDEwMH0lLCAke2FscGhhfSlgO1xuICAgICAgfSkpO1xuXG4gICAgdGhpcy5hbHBoYSQucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQoKSlcbiAgICAgIC5zdWJzY3JpYmUoKGFscGhhKSA9PiB0aGlzLmFscGhhQ2hhbmdlLmVtaXQoYWxwaGEpKTtcbiAgfVxuXG4gIC8vI3JlZ2lvbiBIU1xuICBocyQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PEhTPih7IGh1ZTogMCwgc2F0dXJhdGlvbjogMCB9KTtcbiAgcHVibGljIGdldCBocygpIHtcbiAgICByZXR1cm4gdGhpcy5ocyQudmFsdWU7XG4gIH1cbiAgQElucHV0KCkgcHVibGljIHNldCBocyh2YWx1ZTogSFMpIHtcbiAgICB0aGlzLmhzJC5uZXh0KHZhbHVlKTtcbiAgfVxuICAvLyNlbmRyZWdpb25cbiAgLy8jcmVnaW9uIEx1bWlub3NpdHlcbiAgbHVtaW5vc2l0eSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4oMC41KTtcbiAgcHVibGljIGdldCBsdW1pbm9zaXR5KCkge1xuICAgIHJldHVybiB0aGlzLmx1bWlub3NpdHkkLnZhbHVlO1xuICB9XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXQgbHVtaW5vc2l0eSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5sdW1pbm9zaXR5JC5uZXh0KHZhbHVlKTtcbiAgfVxuICAvLyNlbmRyZWdpb25cbiAgLy8jcmVnaW9uIEFscGhhXG4gIGFscGhhJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8bnVtYmVyPigxKTtcbiAgQE91dHB1dCgpIGFscGhhQ2hhbmdlID0gbmV3IEV2ZW50RW1pdHRlcjxudW1iZXI+KCk7XG4gIHB1YmxpYyBnZXQgYWxwaGEoKSB7XG4gICAgcmV0dXJuIHRoaXMuYWxwaGEkLnZhbHVlO1xuICB9XG4gIEBJbnB1dCgpIHB1YmxpYyBzZXQgYWxwaGEodmFsdWU6IG51bWJlcikge1xuICAgIHRoaXMuYWxwaGEkLm5leHQodmFsdWUpO1xuICB9XG4gIC8vI2VuZHJlZ2lvblxuICBcbiAgcHJpdmF0ZSBjYW52YXNDb250ZXh0OiBDYW52YXNSZW5kZXJpbmdDb250ZXh0MkQgfCBudWxsID0gbnVsbDtcbiAgQFZpZXdDaGlsZCgndHJhY2snKSBjYW52YXMhOiBFbGVtZW50UmVmPEhUTUxDYW52YXNFbGVtZW50PjtcbiAgbmdBZnRlclZpZXdJbml0KCkge1xuICAgIHRoaXMuY2FudmFzQ29udGV4dCA9IHRoaXMuY2FudmFzLm5hdGl2ZUVsZW1lbnQuZ2V0Q29udGV4dCgnMmQnLCB7IHdpbGxSZWFkRnJlcXVlbnRseTogdHJ1ZSB9KTtcbiAgfVxuXG4gIHJlc3VsdEJhY2tncm91bmQkOiBPYnNlcnZhYmxlPHN0cmluZz47XG59XG4iLCI8YnMtc2xpZGVyIFt2YWx1ZV09XCIoYWxwaGEkIHwgYXN5bmMpIVwiICh2YWx1ZUNoYW5nZSk9XCJhbHBoYUNoYW5nZS5lbWl0KCRldmVudClcIj5cbiAgICA8Y2FudmFzIGJzVHJhY2sgY2xhc3M9XCIgdHJhY2sgcG9zaXRpb24tYWJzb2x1dGUgdy0xMDBcIiAjdHJhY2s+PC9jYW52YXM+XG5cbiAgICA8IS0tIFtzdHlsZS5iYWNrZ3JvdW5kXT1cInJlc3VsdEJhY2tncm91bmQkIHwgYXN5bmNcIiAtLT5cbiAgICA8ZGl2IGJzVGh1bWIgW3N0eWxlLmJhY2tncm91bmRdPVwicmVzdWx0QmFja2dyb3VuZCQgfCBhc3luY1wiPjwvZGl2PlxuPC9icy1zbGlkZXI+Il19","import { Component, Input, ViewChild, EventEmitter, Output } from \"@angular/core\";\nimport { BehaviorSubject } from \"rxjs\";\nimport { takeUntilDestroyed } from \"@angular/core/rxjs-interop\";\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"../color-wheel/color-wheel.component\";\nimport * as i2 from \"../luminosity-strip/luminosity-strip.component\";\nimport * as i3 from \"../alpha-strip/alpha-strip.component\";\nimport * as i4 from \"@angular/common\";\nexport class BsColorPickerComponent {\n constructor() {\n this.size$ = new BehaviorSubject(150);\n this.disabled$ = new BehaviorSubject(false);\n this.allowAlpha$ = new BehaviorSubject(true);\n this.hs$ = new BehaviorSubject({ hue: 0, saturation: 0 });\n this.luminosity$ = new BehaviorSubject(0);\n //#region Alpha\n this.alpha$ = new BehaviorSubject(1);\n this.alphaChange = new EventEmitter();\n this.alpha$.pipe(takeUntilDestroyed())\n .subscribe((alpha) => this.alphaChange.emit(alpha));\n }\n set size(value) {\n this.size$.next(value);\n }\n set allowAlpha(value) {\n this.allowAlpha$.next(value);\n }\n get alpha() {\n return this.alpha$.value;\n }\n set alpha(value) {\n this.alpha$.next(value);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsColorPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.0-rc.2\", type: BsColorPickerComponent, isStandalone: false, 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: i1.BsColorWheelComponent, selector: \"bs-color-wheel\", inputs: [\"diameterRatio\", \"width\", \"height\", \"hs\", \"luminosity\"], outputs: [\"hsChange\"] }, { kind: \"component\", type: i2.BsLuminosityStripComponent, selector: \"bs-luminosity-strip\", inputs: [\"hs\", \"luminosity\"], outputs: [\"luminosityChange\"] }, { kind: \"component\", type: i3.BsAlphaStripComponent, selector: \"bs-alpha-strip\", inputs: [\"hs\", \"luminosity\", \"alpha\"], outputs: [\"alphaChange\"] }, { kind: \"pipe\", type: i4.AsyncPipe, name: \"async\" }] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsColorPickerComponent, decorators: [{\n type: Component,\n args: [{ selector: 'bs-color-picker', standalone: false, 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}\" }]\n }], ctorParameters: () => [], propDecorators: { colorWheel: [{\n type: ViewChild,\n args: ['wheel']\n }], size: [{\n type: Input\n }], allowAlpha: [{\n type: Input\n }], alphaChange: [{\n type: Output\n }], alpha: [{\n type: Input\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItcGlja2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvY29sb3ItcGlja2VyL2NvbXBvbmVudHMvY29sb3ItcGlja2VyL2NvbG9yLXBpY2tlci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9saWJzL21pbnRwbGF5ZXItbmctYm9vdHN0cmFwL2NvbG9yLXBpY2tlci9jb21wb25lbnRzL2NvbG9yLXBpY2tlci9jb2xvci1waWNrZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUd2QyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7Ozs7O0FBUWhFLE1BQU0sT0FBTyxzQkFBc0I7SUFFakM7UUFhQSxVQUFLLEdBQUcsSUFBSSxlQUFlLENBQVMsR0FBRyxDQUFDLENBQUM7UUFDekMsY0FBUyxHQUFHLElBQUksZUFBZSxDQUFVLEtBQUssQ0FBQyxDQUFDO1FBQ2hELGdCQUFXLEdBQUcsSUFBSSxlQUFlLENBQVUsSUFBSSxDQUFDLENBQUM7UUFFakQsUUFBRyxHQUFHLElBQUksZUFBZSxDQUFLLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUN6RCxnQkFBVyxHQUFHLElBQUksZUFBZSxDQUFTLENBQUMsQ0FBQyxDQUFDO1FBRTdDLGVBQWU7UUFDZixXQUFNLEdBQUcsSUFBSSxlQUFlLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFDOUIsZ0JBQVcsR0FBRyxJQUFJLFlBQVksRUFBVSxDQUFDO1FBckJqRCxJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO2FBQ25DLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBR0QsSUFBYSxJQUFJLENBQUMsS0FBYTtRQUM3QixJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBQ0QsSUFBYSxVQUFVLENBQUMsS0FBYztRQUNwQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMvQixDQUFDO0lBWUQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQztJQUMzQixDQUFDO0lBQ0QsSUFBYSxLQUFLLENBQUMsS0FBYTtRQUM5QixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQixDQUFDO21IQTlCVSxzQkFBc0I7dUdBQXRCLHNCQUFzQiw4UkNabkMsd3hCQVNDOztnR0RHWSxzQkFBc0I7a0JBTmxDLFNBQVM7K0JBQ0UsaUJBQWlCLGNBR2YsS0FBSzt3REFTRyxVQUFVO3NCQUE3QixTQUFTO3VCQUFDLE9BQU87Z0JBQ0wsSUFBSTtzQkFBaEIsS0FBSztnQkFHTyxVQUFVO3NCQUF0QixLQUFLO2dCQWFJLFdBQVc7c0JBQXBCLE1BQU07Z0JBSU0sS0FBSztzQkFBakIsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5wdXQsIFZpZXdDaGlsZCwgRXZlbnRFbWl0dGVyLCBPdXRwdXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSBcInJ4anNcIjtcbmltcG9ydCB7IEhTIH0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZXMvaHNcIjtcbmltcG9ydCB7IEJzQ29sb3JXaGVlbENvbXBvbmVudCB9IGZyb20gXCIuLi9jb2xvci13aGVlbC9jb2xvci13aGVlbC5jb21wb25lbnRcIjtcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gXCJAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcFwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdicy1jb2xvci1waWNrZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vY29sb3ItcGlja2VyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29sb3ItcGlja2VyLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IGZhbHNlLFxufSlcbmV4cG9ydCBjbGFzcyBCc0NvbG9yUGlja2VyQ29tcG9uZW50IHtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICB0aGlzLmFscGhhJC5waXBlKHRha2VVbnRpbERlc3Ryb3llZCgpKVxuICAgICAgLnN1YnNjcmliZSgoYWxwaGEpID0+IHRoaXMuYWxwaGFDaGFuZ2UuZW1pdChhbHBoYSkpO1xuICB9XG5cbiAgQFZpZXdDaGlsZCgnd2hlZWwnKSBjb2xvcldoZWVsITogQnNDb2xvcldoZWVsQ29tcG9uZW50O1xuICBASW5wdXQoKSBzZXQgc2l6ZSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5zaXplJC5uZXh0KHZhbHVlKTtcbiAgfVxuICBASW5wdXQoKSBzZXQgYWxsb3dBbHBoYSh2YWx1ZTogYm9vbGVhbikge1xuICAgIHRoaXMuYWxsb3dBbHBoYSQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgXG4gIHNpemUkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KDE1MCk7XG4gIGRpc2FibGVkJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4oZmFsc2UpO1xuICBhbGxvd0FscGhhJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Ym9vbGVhbj4odHJ1ZSk7XG5cbiAgaHMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxIUz4oeyBodWU6IDAsIHNhdHVyYXRpb246IDAgfSk7XG4gIGx1bWlub3NpdHkkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KDApO1xuXG4gIC8vI3JlZ2lvbiBBbHBoYVxuICBhbHBoYSQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PG51bWJlcj4oMSk7XG4gIEBPdXRwdXQoKSBhbHBoYUNoYW5nZSA9IG5ldyBFdmVudEVtaXR0ZXI8bnVtYmVyPigpO1xuICBnZXQgYWxwaGEoKSB7XG4gICAgcmV0dXJuIHRoaXMuYWxwaGEkLnZhbHVlO1xuICB9XG4gIEBJbnB1dCgpIHNldCBhbHBoYSh2YWx1ZTogbnVtYmVyKSB7XG4gICAgdGhpcy5hbHBoYSQubmV4dCh2YWx1ZSk7XG4gIH1cbiAgLy8jZW5kcmVnaW9uXG59XG4iLCJAbGV0IGxldERpc2FibGVkID0gKGRpc2FibGVkJCB8IGFzeW5jKSE7XG5AbGV0IGxldEhTID0gKGhzJCB8IGFzeW5jKSE7XG5AbGV0IGxldEx1bWlub3NpdHkgPSAobHVtaW5vc2l0eSQgfCBhc3luYykhO1xuQGxldCBsZXRBbHBoYSA9IChhbHBoYSQgfCBhc3luYykhO1xuXG48YnMtY29sb3Itd2hlZWwgW2hzXT1cImxldEhTXCIgKGhzQ2hhbmdlKT1cImhzJC5uZXh0KCRldmVudClcIiBbbHVtaW5vc2l0eV09XCJsZXRMdW1pbm9zaXR5XCIgW3dpZHRoXT1cIihzaXplJCB8IGFzeW5jKSA/PyAxNTBcIiBbaGVpZ2h0XT1cIihzaXplJCB8IGFzeW5jKSA/PyAxNTBcIiAjd2hlZWw+PC9icy1jb2xvci13aGVlbD5cbjxicy1sdW1pbm9zaXR5LXN0cmlwIFtoc109XCJsZXRIU1wiIFtsdW1pbm9zaXR5XT1cImxldEx1bWlub3NpdHlcIiAobHVtaW5vc2l0eUNoYW5nZSk9XCJsdW1pbm9zaXR5JC5uZXh0KCRldmVudClcIiBjbGFzcz1cImQtYmxvY2sgbXQtMlwiIFtzdHlsZS53aWR0aC5weF09XCJzaXplJCB8IGFzeW5jXCIgI3N0cmlwPjwvYnMtbHVtaW5vc2l0eS1zdHJpcD5cbkBpZiAoYWxsb3dBbHBoYSQgfCBhc3luYykge1xuICAgIDxicy1hbHBoYS1zdHJpcCBbaHNdPVwibGV0SFNcIiBbbHVtaW5vc2l0eV09XCJsZXRMdW1pbm9zaXR5XCIgW2FscGhhXT1cImxldEFscGhhXCIgKGFscGhhQ2hhbmdlKT1cImFscGhhJC5uZXh0KCRldmVudClcIiBjbGFzcz1cImQtYmxvY2sgbXQtMlwiIFtzdHlsZS53aWR0aC5weF09XCJzaXplJCB8IGFzeW5jXCIgI2FscGhhPjwvYnMtYWxwaGEtc3RyaXA+XG59Il19","import { Directive, Inject, forwardRef } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { combineLatest } from 'rxjs';\nimport { BsColorPickerComponent } from '../../components/color-picker/color-picker.component';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"../../components/color-picker/color-picker.component\";\nexport class BsColorPickerValueAccessor {\n constructor(host, destroy) {\n this.host = host;\n this.destroy = destroy;\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 hsl2rgb(h, s, l) {\n const k = (n) => (n + h / 30) % 12;\n const a = s * Math.min(l, 1 - l);\n const f = (n) => l - a * Math.max(-1, Math.min(k(n) - 3, Math.min(9 - k(n), 1)));\n const retValue = { r: 255 * f(0), g: 255 * f(8), b: 255 * f(4) };\n return retValue;\n }\n //#region ControlValueAccessor implementation\n registerOnChange(fn) {\n this.onValueChange = fn;\n }\n registerOnTouched(fn) {\n this.onTouched = fn;\n }\n writeValue(value) {\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 setDisabledState(isDisabled) {\n if (this.host && this.host.colorWheel) {\n this.host.colorWheel.disabled$.next(isDisabled);\n }\n }\n //#endregion\n //#region Color Conversion\n rgb2hex(rgb) {\n return '#' + (Math.round((rgb.r << 16) + (rgb.g << 8) + rgb.b)).toString(16).padStart(6, '0');\n }\n hex2rgb(hex) {\n const r = parseInt(hex.slice(1, 3), 16), g = parseInt(hex.slice(3, 5), 16), b = parseInt(hex.slice(5, 7), 16);\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 bound01(n, max) {\n n = Math.min(max, Math.max(0, n));\n if (Math.abs(n - max) < 0.000001) {\n return 1;\n }\n else {\n return (n % max) / max;\n }\n }\n rgb2Hsl(color) {\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 const max = Math.max(r01, g01, b01);\n const min = Math.min(r01, g01, b01);\n let h, s;\n const l = (max + min) / 2;\n if (max === min) {\n h = s = 0;\n }\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 h /= 6;\n }\n h *= 360;\n return { h, s, l };\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsColorPickerValueAccessor, deps: [{ token: forwardRef(() => BsColorPickerComponent) }, { token: i0.DestroyRef }], target: i0.ɵɵFactoryTarget.Directive }); }\n static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: \"14.0.0\", version: \"20.0.0-rc.2\", type: BsColorPickerValueAccessor, isStandalone: false, selector: \"bs-color-picker\", providers: [{\n provide: NG_VALUE_ACCESSOR,\n // useExisting: BsColorPickerValueAccessor,\n useExisting: forwardRef(() => BsColorPickerValueAccessor),\n multi: true\n }], exportAs: [\"bsColorPicker\"], ngImport: i0 }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsColorPickerValueAccessor, decorators: [{\n type: Directive,\n args: [{\n selector: 'bs-color-picker',\n standalone: false,\n providers: [{\n provide: NG_VALUE_ACCESSOR,\n // useExisting: BsColorPickerValueAccessor,\n useExisting: forwardRef(() => BsColorPickerValueAccessor),\n multi: true\n }],\n exportAs: 'bsColorPicker'\n }]\n }], ctorParameters: () => [{ type: i1.BsColorPickerComponent, decorators: [{\n type: Inject,\n args: [forwardRef(() => BsColorPickerComponent)]\n }] }, { type: i0.DestroyRef }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItcGlja2VyLXZhbHVlLWFjY2Vzc29yLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvY29sb3ItcGlja2VyL2RpcmVjdGl2ZXMvY29sb3ItcGlja2VyLXZhbHVlLWFjY2Vzc29yL2NvbG9yLXBpY2tlci12YWx1ZS1hY2Nlc3Nvci5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUE2QixNQUFNLGVBQWUsQ0FBQztBQUN6RixPQUFPLEVBQXdCLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDekUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNyQyxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUU5RixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7O0FBYWhFLE1BQU0sT0FBTywwQkFBMEI7SUFFckMsWUFBc0UsSUFBNEIsRUFBVSxPQUFtQjtRQUF6RCxTQUFJLEdBQUosSUFBSSxDQUF3QjtRQUFVLFlBQU8sR0FBUCxPQUFPLENBQVk7SUFDL0gsQ0FBQztJQUVELGVBQWU7UUFDYixhQUFhLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO2FBQ2xELElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7YUFDdEMsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLEVBQUUsRUFBRTtZQUM5QixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLFVBQVUsRUFBRSxV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b0JBQ3hCLE1BQU07Z0JBQ1IsS0FBSyxHQUFHO29CQUNOLENBQUMsR0FBRyxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxDQUFDO29CQUN4QixNQUFNO2dCQUNSLE9BQU8sQ0FBQyxDQUFDLENBQUM7b0JBQ1IsTUFBTSxtQkFBbUIsQ0FBQztnQkFDNUIsQ0FBQztZQUNILENBQUM7WUFFRCxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ1QsQ0FBQztRQUVELENBQUMsSUFBSSxHQUFHLENBQUM7UUFFVCxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQztJQUNyQixDQUFDO21IQWxIVSwwQkFBMEIsa0JBRWpCLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQzt1R0FGakQsMEJBQTBCLCtEQVIxQixDQUFDO2dCQUNWLE9BQU8sRUFBRSxpQkFBaUI7Z0JBQzFCLDJDQUEyQztnQkFDM0MsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQywwQkFBMEIsQ0FBQztnQkFDekQsS0FBSyxFQUFFLElBQUk7YUFDWixDQUFDOztnR0FHUywwQkFBMEI7a0JBWHRDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtvQkFDM0IsVUFBVSxFQUFFLEtBQUs7b0JBQ2pCLFNBQVMsRUFBRSxDQUFDOzRCQUNWLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLDJDQUEyQzs0QkFDM0MsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsMkJBQTJCLENBQUM7NEJBQ3pELEtBQUssRUFBRSxJQUFJO3lCQUNaLENBQUM7b0JBQ0YsUUFBUSxFQUFFLGVBQWU7aUJBQzFCOzswQkFHYyxNQUFNOzJCQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5qZWN0LCBmb3J3YXJkUmVmLCBBZnRlclZpZXdJbml0LCBEZXN0cm95UmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBDb250cm9sVmFsdWVBY2Nlc3NvciwgTkdfVkFMVUVfQUNDRVNTT1IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBjb21iaW5lTGF0ZXN0IH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBCc0NvbG9yUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29tcG9uZW50cy9jb2xvci1waWNrZXIvY29sb3ItcGlja2VyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSZ2JDb2xvciB9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvcmdiLWNvbG9yJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcblxuQERpcmVjdGl2ZSh7XG4gIHNlbGVjdG9yOiAnYnMtY29sb3ItcGlja2VyJyxcbiAgc3RhbmRhbG9uZTogZmFsc2UsXG4gIHByb3ZpZGVyczogW3tcbiAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAvLyB1c2VFeGlzdGluZzogQnNDb2xvclBpY2tlclZhbHVlQWNjZXNzb3IsXG4gICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQnNDb2xvclBpY2tlclZhbHVlQWNjZXNzb3IpLFxuICAgIG11bHRpOiB0cnVlXG4gIH1dLFxuICBleHBvcnRBczogJ2JzQ29sb3JQaWNrZXInXG59KVxuZXhwb3J0IGNsYXNzIEJzQ29sb3JQaWNrZXJWYWx1ZUFjY2Vzc29yIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgQ29udHJvbFZhbHVlQWNjZXNzb3Ige1xuXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoZm9yd2FyZFJlZigoKSA9PiBCc0NvbG9yUGlja2VyQ29tcG9uZW50KSkgcHJpdmF0ZSBob3N0OiBCc0NvbG9yUGlja2VyQ29tcG9uZW50LCBwcml2YXRlIGRlc3Ryb3k6IERlc3Ryb3lSZWYpIHtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICBjb21iaW5lTGF0ZXN0KFt0aGlzLmhvc3QuaHMkLCB0aGlzLmhvc3QubHVtaW5vc2l0eSRdKVxuICAgICAgLnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuZGVzdHJveSkpXG4gICAgICAuc3Vic2NyaWJlKChbaHMsIGx1bWlub3NpdHldKSA9PiB7XG4gICAgICAgIGNvbnN0IHJnYiA9IHRoaXMuaHNsMnJnYihocy5odWUsIGhzLnNhdHVyYXRpb24sIGx1bWlub3NpdHkpO1xuICAgICAgICBjb25zdCBoZXggPSB0aGlzLnJnYjJoZXgocmdiKTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLm9uVmFsdWVDaGFuZ2UgJiYgdGhpcy5vblZhbHVlQ2hhbmdlKGhleCksIDEwKTtcbiAgICAgIH0pXG4gIH1cblxuICBwdWJsaWMgaHNsMnJnYihoOiBudW1iZXIsIHM6IG51bWJlciwgbDogbnVtYmVyKSB7XG4gICAgY29uc3QgayA9IChuOiBudW1iZXIpID0+IChuICsgaCAvIDMwKSAlIDEyO1xuICAgIGNvbnN0IGEgPSBzICogTWF0aC5taW4obCwgMSAtIGwpO1xuICAgIGNvbnN0IGYgPSAobjogbnVtYmVyKSA9PiBsIC0gYSAqIE1hdGgubWF4KC0xLCBNYXRoLm1pbihrKG4pIC0gMywgTWF0aC5taW4oOSAtIGsobiksIDEpKSk7XG4gICAgY29uc3QgcmV0VmFsdWUgPSA8UmdiQ29sb3I+eyByOiAyNTUgKiBmKDApLCBnOiAyNTUgKiBmKDgpLCBiOiAyNTUgKiBmKDQpIH07XG4gICAgcmV0dXJuIHJldFZhbHVlO1xuICB9XG5cbiAgb25WYWx1ZUNoYW5nZT86ICh2YWx1ZTogc3RyaW5nKSA9PiB2b2lkO1xuICBvblRvdWNoZWQ/OiAoKSA9PiB2b2lkO1xuXG4gIC8vI3JlZ2lvbiBDb250cm9sVmFsdWVBY2Nlc3NvciBpbXBsZW1lbnRhdGlvblxuICByZWdpc3Rlck9uQ2hhbmdlKGZuOiAoXzogYW55KSA9PiB2b2lkKSB7XG4gICAgdGhpcy5vblZhbHVlQ2hhbmdlID0gZm47XG4gIH1cbiAgXG4gIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiAoKSA9PiB2b2lkKSB7XG4gICAgdGhpcy5vblRvdWNoZWQgPSBmbjtcbiAgfVxuXG4gIHdyaXRlVmFsdWUodmFsdWU6IHN0cmluZyB8IG51bGwpIHtcbiAgICBpZiAodGhpcy5ob3N0ICYmIHRoaXMuaG9zdC5jb2xvcldoZWVsKSB7XG4gICAgICBpZiAodmFsdWUpIHtcbiAgICAgICAgY29uc3QgcmdiID0gdGhpcy5oZXgycmdiKHZhbHVlKTtcbiAgICAgICAgY29uc3QgaHNsID0gdGhpcy5yZ2IySHNsKHJnYik7XG4gICAgICAgIHRoaXMuaG9zdC5ocyQubmV4dCh7IGh1ZTogaHNsLmgsIHNhdHVyYXRpb246IGhzbC5zIH0pO1xuICAgICAgICB0aGlzLmhvc3QubHVtaW5vc2l0eSQubmV4dChoc2wubCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgc2V0RGlzYWJsZWRTdGF0ZShpc0Rpc2FibGVkOiBib29sZWFuKSB7XG4gICAgaWYgKHRoaXMuaG9zdCAmJiB0aGlzLmhvc3QuY29sb3JXaGVlbCkge1xuICAgICAgdGhpcy5ob3N0LmNvbG9yV2hlZWwuZGlzYWJsZWQkLm5leHQoaXNEaXNhYmxlZCk7XG4gICAgfVxuICB9XG4gIC8vI2VuZHJlZ2lvblxuXG4gIC8vI3JlZ2lvbiBDb2xvciBDb252ZXJzaW9uXG4gIHByaXZhdGUgcmdiMmhleChyZ2I6IFJnYkNvbG9yKSB7XG4gICAgcmV0dXJuICcjJyArIChNYXRoLnJvdW5kKChyZ2IuciA8PCAxNikgKyAocmdiLmcgPDwgOCkgKyByZ2IuYikpLnRvU3RyaW5nKDE2KS5wYWRTdGFydCg2LCAnMCcpO1xuICB9XG5cbiAgcHJpdmF0ZSBoZXgycmdiKGhleDogc3RyaW5nKTogUmdiQ29sb3Ige1xuICAgIGNvbnN0IHIgPSBwYXJzZUludChoZXguc2xpY2UoMSwgMyksIDE2KSxcbiAgICAgICAgICBnID0gcGFyc2VJbnQoaGV4LnNsaWNlKDMsIDUpLCAxNiksXG4gICAgICAgICAgYiA9IHBhcnNlSW50KGhleC5zbGljZSg1LCA3KSwgMTYpO1xuXG4gICAgcmV0dXJuIHsgciwgZywgYiB9O1xuICB9XG4gIC8qKlxuICAgKiBEaXZpZGUgMSB0byBuLCBoYW5kbGluZyBmbG9hdGluZyBwb2ludCBlcnJvcnMuXG4gICAqIEVuc3VyZXMgdGhhdCB0aGUgdmFsdWUgaXMgaW4gYmV0d2VlbiAwIGFuZCAxLlxuICAgKiovXG4gIHByaXZhdGUgYm91bmQwMShuOiBudW1iZXIsIG1heDogbnVtYmVyKSB7XG4gICAgbiA9IE1hdGgubWluKG1heCwgTWF0aC5tYXgoMCwgbikpO1xuICAgIGlmIChNYXRoLmFicyhuIC0gbWF4KSA8IDAuMDAwMDAxKSB7XG4gICAgICByZXR1cm4gMTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIChuICUgbWF4KSAvIG1heDtcbiAgICB9XG4gIH1cbiAgcHJpdmF0ZSByZ2IySHNsKGNvbG9yOiBSZ2JDb2xvcikge1xuICAgIGNvbnN0IHIwMSA9IHRoaXMuYm91bmQwMShjb2xvci5yLCAyNTUpO1xuICAgIGNvbnN0IGcwMSA9IHRoaXMuYm91bmQwMShjb2xvci5nLCAyNTUpO1xuICAgIGNvbnN0IGIwMSA9IHRoaXMuYm91bmQwMShjb2xvci5iLCAyNTUpO1xuXG4gICAgY29uc3QgbWF4ID0gTWF0aC5tYXgocjAxLCBnMDEsIGIwMSk7XG4gICAgY29uc3QgbWluID0gTWF0aC5taW4ocjAxLCBnMDEsIGIwMSk7XG5cbiAgICBsZXQgaDogbnVtYmVyLCBzOiBudW1iZXI7XG4gICAgY29uc3QgbCA9IChtYXggKyBtaW4pIC8gMjtcbiAgICBpZiAobWF4ID09PSBtaW4pIHtcbiAgICAgIGggPSBzID0gMDtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc3QgZCA9IG1heCAtIG1pbjtcbiAgICAgIHMgPSBsID4gMC41ID8gZCAvICgyIC0gbWF4IC0gbWluKSA6IGQgLyAobWF4ICsgbWluKTtcblxuICAgICAgc3dpdGNoIChtYXgpIHtcbiAgICAgICAgY2FzZSByMDE6XG4gICAgICAgICAgaCA9IChnMDEgLSBiMDEpIC8gZCArIChnMDEgPCBiMDEgPyA2IDogMCk7XG4gICAgICAgICAgYnJlYWs7XG4gICAgICAgIGNhc2UgZzAxOlxuICAgICAgICAgIGggPSAoYjAxIC0gcjAxKSAvIGQgKyAyO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlIGIwMTpcbiAgICAgICAgICBoID0gKHIwMSAtIGcwMSkgLyBkICsgNDtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgZGVmYXVsdDoge1xuICAgICAgICAgIHRocm93ICdJbnZhbGlkIG9wZXJhdGlvbic7XG4gICAgICAgIH1cbiAgICAgIH1cblxuICAgICAgaCAvPSA2O1xuICAgIH1cblxuICAgIGggKj0gMzYwO1xuXG4gICAgcmV0dXJuIHsgaCwgcywgbCB9O1xuICB9XG4gIC8vI2VuZHJlZ2lvblxufVxuIl19","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';\nimport * as i0 from \"@angular/core\";\nexport class BsColorPickerModule {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsColorPickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsColorPickerModule, declarations: [BsColorPickerComponent,\n BsColorPickerValueAccessor,\n BsColorWheelComponent,\n BsLuminosityStripComponent,\n BsSliderComponent,\n BsThumbDirective,\n BsTrackDirective,\n BsAlphaStripComponent], imports: [AsyncPipe,\n FormsModule], exports: [BsColorPickerComponent,\n BsColorPickerValueAccessor,\n BsColorWheelComponent,\n BsLuminosityStripComponent,\n BsSliderComponent,\n BsThumbDirective,\n BsTrackDirective,\n BsAlphaStripComponent] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsColorPickerModule, imports: [FormsModule] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsColorPickerModule, decorators: [{\n type: NgModule,\n args: [{\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 }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sb3ItcGlja2VyLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvY29sb3ItcGlja2VyL2NvbG9yLXBpY2tlci5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDNUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLGdGQUFnRixDQUFDO0FBQzVILE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQzFGLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLDBEQUEwRCxDQUFDO0FBQ3RHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQzdHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdEQUFnRCxDQUFDOztBQTRCdkYsTUFBTSxPQUFPLG1CQUFtQjttSEFBbkIsbUJBQW1CO29IQUFuQixtQkFBbUIsaUJBeEI1QixzQkFBc0I7WUFDdEIsMEJBQTBCO1lBQzFCLHFCQUFxQjtZQUNyQiwwQkFBMEI7WUFDMUIsaUJBQWlCO1lBQ2pCLGdCQUFnQjtZQUNoQixnQkFBZ0I7WUFDaEIscUJBQXFCLGFBR3JCLFNBQVM7WUFDVCxXQUFXLGFBR1gsc0JBQXNCO1lBQ3RCLDBCQUEwQjtZQUMxQixxQkFBcUI7WUFDckIsMEJBQTBCO1lBQzFCLGlCQUFpQjtZQUNqQixnQkFBZ0I7WUFDaEIsZ0JBQWdCO1lBQ2hCLHFCQUFxQjtvSEFHWixtQkFBbUIsWUFiNUIsV0FBVzs7Z0dBYUYsbUJBQW1CO2tCQTFCL0IsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUU7d0JBQ1osc0JBQXNCO3dCQUN0QiwwQkFBMEI7d0JBQzFCLHFCQUFxQjt3QkFDckIsMEJBQTBCO3dCQUMxQixpQkFBaUI7d0JBQ2pCLGdCQUFnQjt3QkFDaEIsZ0JBQWdCO3dCQUNoQixxQkFBcUI7cUJBQ3RCO29CQUNELE9BQU8sRUFBRTt3QkFDUCxTQUFTO3dCQUNULFdBQVc7cUJBQ1o7b0JBQ0QsT0FBTyxFQUFFO3dCQUNQLHNCQUFzQjt3QkFDdEIsMEJBQTBCO3dCQUMxQixxQkFBcUI7d0JBQ3JCLDBCQUEwQjt3QkFDMUIsaUJBQWlCO3dCQUNqQixnQkFBZ0I7d0JBQ2hCLGdCQUFnQjt3QkFDaEIscUJBQXFCO3FCQUN0QjtpQkFDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBc3luY1BpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBCc0NvbG9yUGlja2VyVmFsdWVBY2Nlc3NvciB9IGZyb20gJy4vZGlyZWN0aXZlcy9jb2xvci1waWNrZXItdmFsdWUtYWNjZXNzb3IvY29sb3ItcGlja2VyLXZhbHVlLWFjY2Vzc29yLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCc0NvbG9yUGlja2VyQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2NvbG9yLXBpY2tlci9jb2xvci1waWNrZXIuY29tcG9uZW50JztcbmltcG9ydCB7IEJzQ29sb3JXaGVlbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jb2xvci13aGVlbC9jb2xvci13aGVlbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnNMdW1pbm9zaXR5U3RyaXBDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbHVtaW5vc2l0eS1zdHJpcC9sdW1pbm9zaXR5LXN0cmlwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCc1NsaWRlckNvbXBvbmVudCwgQnNUaHVtYkRpcmVjdGl2ZSwgQnNUcmFja0RpcmVjdGl2ZSB9IGZyb20gJy4vY29tcG9uZW50cy9zbGlkZXIvc2xpZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCc0FscGhhU3RyaXBDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYWxwaGEtc3RyaXAvYWxwaGEtc3RyaXAuY29tcG9uZW50JztcblxuQE5nTW9kdWxlKHtcbiAgZGVjbGFyYXRpb25zOiBbXG4gICAgQnNDb2xvclBpY2tlckNvbXBvbmVudCxcbiAgICBCc0NvbG9yUGlja2VyVmFsdWVBY2Nlc3NvcixcbiAgICBCc0NvbG9yV2hlZWxDb21wb25lbnQsXG4gICAgQnNMdW1pbm9zaXR5U3RyaXBDb21wb25lbnQsXG4gICAgQnNTbGlkZXJDb21wb25lbnQsXG4gICAgQnNUaHVtYkRpcmVjdGl2ZSxcbiAgICBCc1RyYWNrRGlyZWN0aXZlLFxuICAgIEJzQWxwaGFTdHJpcENvbXBvbmVudFxuICBdLFxuICBpbXBvcnRzOiBbXG4gICAgQXN5bmNQaXBlLFxuICAgIEZvcm1zTW9kdWxlLFxuICBdLFxuICBleHBvcnRzOiBbXG4gICAgQnNDb2xvclBpY2tlckNvbXBvbmVudCxcbiAgICBCc0NvbG9yUGlja2VyVmFsdWVBY2Nlc3NvcixcbiAgICBCc0NvbG9yV2hlZWxDb21wb25lbnQsXG4gICAgQnNMdW1pbm9zaXR5U3RyaXBDb21wb25lbnQsXG4gICAgQnNTbGlkZXJDb21wb25lbnQsXG4gICAgQnNUaHVtYkRpcmVjdGl2ZSxcbiAgICBCc1RyYWNrRGlyZWN0aXZlLFxuICAgIEJzQWxwaGFTdHJpcENvbXBvbmVudFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEJzQ29sb3JQaWNrZXJNb2R1bGUgeyB9XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWludHBsYXllci1uZy1ib290c3RyYXAtY29sb3ItcGlja2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9jb2xvci1waWNrZXIvbWludHBsYXllci1uZy1ib290c3RyYXAtY29sb3ItcGlja2VyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":["i1.BsSliderComponent","i1.BsThumbDirective","i1.BsTrackDirective","i2","i1.BsColorWheelComponent","i2.BsLuminosityStripComponent","i3.BsAlphaStripComponent","i4","i1.BsColorPickerComponent"],"mappings":"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"}
@@ -2,10 +2,10 @@ import * as i0 from '@angular/core';
2
2
  import { Component } from '@angular/core';
3
3
 
4
4
  class BsContainerComponent {
5
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: BsContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.3", type: BsContainerComponent, isStandalone: true, selector: "bs-container", ngImport: i0, template: "<ng-content></ng-content>", styles: [":host ::ng-deep .container,:host ::ng-deep .container-fluid,:host ::ng-deep .container-xxl,:host ::ng-deep .container-xl,:host ::ng-deep .container-lg,:host ::ng-deep .container-md,:host ::ng-deep .container-sm{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-right:auto;margin-left:auto}@media (min-width: 576px){:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:540px}}@media (min-width: 768px){:host ::ng-deep .container-md,:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:720px}}@media (min-width: 992px){:host ::ng-deep .container-lg,:host ::ng-deep .container-md,:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:960px}}@media (min-width: 1200px){:host ::ng-deep .container-xl,:host ::ng-deep .container-lg,:host ::ng-deep .container-md,:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:1140px}}@media (min-width: 1400px){:host ::ng-deep .container-xxl,:host ::ng-deep .container-xl,:host ::ng-deep .container-lg,:host ::ng-deep .container-md,:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:1320px}}:host{display:contents}\n"] }); }
5
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.0.0-rc.2", ngImport: i0, type: BsContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.0.0-rc.2", type: BsContainerComponent, isStandalone: true, selector: "bs-container", ngImport: i0, template: "<ng-content></ng-content>", styles: [":host ::ng-deep .container,:host ::ng-deep .container-fluid,:host ::ng-deep .container-xxl,:host ::ng-deep .container-xl,:host ::ng-deep .container-lg,:host ::ng-deep .container-md,:host ::ng-deep .container-sm{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-right:auto;margin-left:auto}@media (min-width: 576px){:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:540px}}@media (min-width: 768px){:host ::ng-deep .container-md,:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:720px}}@media (min-width: 992px){:host ::ng-deep .container-lg,:host ::ng-deep .container-md,:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:960px}}@media (min-width: 1200px){:host ::ng-deep .container-xl,:host ::ng-deep .container-lg,:host ::ng-deep .container-md,:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:1140px}}@media (min-width: 1400px){:host ::ng-deep .container-xxl,:host ::ng-deep .container-xl,:host ::ng-deep .container-lg,:host ::ng-deep .container-md,:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:1320px}}:host{display:contents}\n"] }); }
7
7
  }
8
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.3", ngImport: i0, type: BsContainerComponent, decorators: [{
8
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.0.0-rc.2", ngImport: i0, type: BsContainerComponent, decorators: [{
9
9
  type: Component,
10
10
  args: [{ selector: 'bs-container', standalone: true, template: "<ng-content></ng-content>", styles: [":host ::ng-deep .container,:host ::ng-deep .container-fluid,:host ::ng-deep .container-xxl,:host ::ng-deep .container-xl,:host ::ng-deep .container-lg,:host ::ng-deep .container-md,:host ::ng-deep .container-sm{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-right:auto;margin-left:auto}@media (min-width: 576px){:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:540px}}@media (min-width: 768px){:host ::ng-deep .container-md,:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:720px}}@media (min-width: 992px){:host ::ng-deep .container-lg,:host ::ng-deep .container-md,:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:960px}}@media (min-width: 1200px){:host ::ng-deep .container-xl,:host ::ng-deep .container-lg,:host ::ng-deep .container-md,:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:1140px}}@media (min-width: 1400px){:host ::ng-deep .container-xxl,:host ::ng-deep .container-xl,:host ::ng-deep .container-lg,:host ::ng-deep .container-md,:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:1320px}}:host{display:contents}\n"] }]
11
11
  }] });
@@ -1 +1 @@
1
- {"version":3,"file":"mintplayer-ng-bootstrap-container.mjs","sources":["../../../../libs/mintplayer-ng-bootstrap/container/src/container/container.component.ts","../../../../libs/mintplayer-ng-bootstrap/container/src/container/container.component.html","../../../../libs/mintplayer-ng-bootstrap/container/mintplayer-ng-bootstrap-container.ts"],"sourcesContent":["import { Component } from '@angular/core';\n\n@Component({\n selector: 'bs-container',\n templateUrl: './container.component.html',\n styleUrls: ['./container.component.scss'],\n standalone: true,\n})\nexport class BsContainerComponent {}\n","<ng-content></ng-content>","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;MAQa,oBAAoB,CAAA;8GAApB,oBAAoB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAApB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,oBAAoB,wECRjC,2BAAyB,EAAA,MAAA,EAAA,CAAA,+rCAAA,CAAA,EAAA,CAAA,CAAA;;2FDQZ,oBAAoB,EAAA,UAAA,EAAA,CAAA;kBANhC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,cAAc,cAGZ,IAAI,EAAA,QAAA,EAAA,2BAAA,EAAA,MAAA,EAAA,CAAA,+rCAAA,CAAA,EAAA;;;AENlB;;AAEG;;;;"}
1
+ {"version":3,"file":"mintplayer-ng-bootstrap-container.mjs","sources":["../tmp-esm2022/container/src/container/container.component.js","../tmp-esm2022/container/mintplayer-ng-bootstrap-container.js"],"sourcesContent":["import { Component } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class BsContainerComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.0.0-rc.2\", type: BsContainerComponent, isStandalone: true, selector: \"bs-container\", ngImport: i0, template: \"<ng-content></ng-content>\", styles: [\":host ::ng-deep .container,:host ::ng-deep .container-fluid,:host ::ng-deep .container-xxl,:host ::ng-deep .container-xl,:host ::ng-deep .container-lg,:host ::ng-deep .container-md,:host ::ng-deep .container-sm{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-right:auto;margin-left:auto}@media (min-width: 576px){:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:540px}}@media (min-width: 768px){:host ::ng-deep .container-md,:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:720px}}@media (min-width: 992px){:host ::ng-deep .container-lg,:host ::ng-deep .container-md,:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:960px}}@media (min-width: 1200px){:host ::ng-deep .container-xl,:host ::ng-deep .container-lg,:host ::ng-deep .container-md,:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:1140px}}@media (min-width: 1400px){:host ::ng-deep .container-xxl,:host ::ng-deep .container-xl,:host ::ng-deep .container-lg,:host ::ng-deep .container-md,:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:1320px}}:host{display:contents}\\n\"] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.0-rc.2\", ngImport: i0, type: BsContainerComponent, decorators: [{\n type: Component,\n args: [{ selector: 'bs-container', standalone: true, template: \"<ng-content></ng-content>\", styles: [\":host ::ng-deep .container,:host ::ng-deep .container-fluid,:host ::ng-deep .container-xxl,:host ::ng-deep .container-xl,:host ::ng-deep .container-lg,:host ::ng-deep .container-md,:host ::ng-deep .container-sm{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-right:auto;margin-left:auto}@media (min-width: 576px){:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:540px}}@media (min-width: 768px){:host ::ng-deep .container-md,:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:720px}}@media (min-width: 992px){:host ::ng-deep .container-lg,:host ::ng-deep .container-md,:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:960px}}@media (min-width: 1200px){:host ::ng-deep .container-xl,:host ::ng-deep .container-lg,:host ::ng-deep .container-md,:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:1140px}}@media (min-width: 1400px){:host ::ng-deep .container-xxl,:host ::ng-deep .container-xl,:host ::ng-deep .container-lg,:host ::ng-deep .container-md,:host ::ng-deep .container-sm,:host ::ng-deep .container{max-width:1320px}}:host{display:contents}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udGFpbmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvY29udGFpbmVyL3NyYy9jb250YWluZXIvY29udGFpbmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvbWludHBsYXllci1uZy1ib290c3RyYXAvY29udGFpbmVyL3NyYy9jb250YWluZXIvY29udGFpbmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUTFDLE1BQU0sT0FBTyxvQkFBb0I7bUhBQXBCLG9CQUFvQjt1R0FBcEIsb0JBQW9CLHdFQ1JqQywyQkFBeUI7O2dHRFFaLG9CQUFvQjtrQkFOaEMsU0FBUzsrQkFDRSxjQUFjLGNBR1osSUFBSSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdicy1jb250YWluZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vY29udGFpbmVyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29udGFpbmVyLmNvbXBvbmVudC5zY3NzJ10sXG4gIHN0YW5kYWxvbmU6IHRydWUsXG59KVxuZXhwb3J0IGNsYXNzIEJzQ29udGFpbmVyQ29tcG9uZW50IHt9XG4iLCI8bmctY29udGVudD48L25nLWNvbnRlbnQ+Il19","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWludHBsYXllci1uZy1ib290c3RyYXAtY29udGFpbmVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vbGlicy9taW50cGxheWVyLW5nLWJvb3RzdHJhcC9jb250YWluZXIvbWludHBsYXllci1uZy1ib290c3RyYXAtY29udGFpbmVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyxTQUFTLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vaW5kZXgnO1xuIl19"],"names":[],"mappings":";;;AAEO,MAAM,oBAAoB,CAAC;AAClC,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,kBAAkB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,CAAC,CAAC;AAC3L,IAAI,SAAS,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,oBAAoB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,oBAAoB,EAAE,YAAY,EAAE,IAAI,EAAE,QAAQ,EAAE,cAAc,EAAE,QAAQ,EAAE,EAAE,EAAE,QAAQ,EAAE,2BAA2B,EAAE,MAAM,EAAE,CAAC,+rCAA+rC,CAAC,EAAE,CAAC,CAAC;AAC76C;AACA,EAAE,CAAC,wBAAwB,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,UAAU,EAAE,CAAC;AACnI,YAAY,IAAI,EAAE,SAAS;AAC3B,YAAY,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,EAAE,2BAA2B,EAAE,MAAM,EAAE,CAAC,+rCAA+rC,CAAC,EAAE;AACnzC,SAAS,CAAC,EAAE,CAAC;;ACTb;AACA;AACA;;;;"}