@ng-nest/ui 18.0.11 → 19.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (883) hide show
  1. package/README.md +1 -1
  2. package/affix/affix.property.d.ts +1 -1
  3. package/alert/alert.property.d.ts +1 -1
  4. package/anchor/anchor.property.d.ts +2 -2
  5. package/auto-complete/auto-complete.property.d.ts +16 -19
  6. package/avatar/avatar.property.d.ts +2 -2
  7. package/back-top/back-top.property.d.ts +1 -1
  8. package/badge/badge.property.d.ts +1 -1
  9. package/base-form/base-form.property.d.ts +2 -2
  10. package/button/button.property.d.ts +2 -2
  11. package/calendar/calendar.property.d.ts +1 -1
  12. package/card/card.property.d.ts +1 -1
  13. package/carousel/carousel.property.d.ts +2 -2
  14. package/cascade/cascade.property.d.ts +16 -27
  15. package/checkbox/checkbox.property.d.ts +16 -22
  16. package/collapse/collapse.property.d.ts +2 -2
  17. package/color/color.property.d.ts +1 -1
  18. package/color-picker/color-picker-portal.component.d.ts +10 -10
  19. package/color-picker/color-picker.property.d.ts +15 -15
  20. package/comment/comment.property.d.ts +2 -2
  21. package/container/container.property.d.ts +4 -4
  22. package/crumb/crumb.property.d.ts +1 -1
  23. package/date-picker/date-picker-portal.component.d.ts +1 -1
  24. package/date-picker/date-picker.property.d.ts +34 -34
  25. package/date-picker/date-range-portal.component.d.ts +5 -5
  26. package/description/description.property.d.ts +2 -2
  27. package/dialog/dialog-portal.component.d.ts +0 -2
  28. package/dialog/dialog-portal.directives.d.ts +2 -3
  29. package/dialog/dialog-ref.d.ts +4 -2
  30. package/dialog/dialog.component.d.ts +0 -5
  31. package/dialog/dialog.property.d.ts +14 -10
  32. package/drag/drag.property.d.ts +1 -1
  33. package/drawer/drawer.property.d.ts +2 -2
  34. package/dropdown/dropdown.property.d.ts +1 -1
  35. package/empty/empty.property.d.ts +1 -1
  36. package/fesm2022/ng-nest-ui-affix.mjs +14 -12
  37. package/fesm2022/ng-nest-ui-affix.mjs.map +1 -1
  38. package/fesm2022/ng-nest-ui-alert.mjs +14 -12
  39. package/fesm2022/ng-nest-ui-alert.mjs.map +1 -1
  40. package/fesm2022/ng-nest-ui-anchor.mjs +23 -20
  41. package/fesm2022/ng-nest-ui-anchor.mjs.map +1 -1
  42. package/fesm2022/ng-nest-ui-api.mjs +8 -8
  43. package/fesm2022/ng-nest-ui-api.mjs.map +1 -1
  44. package/fesm2022/ng-nest-ui-auto-complete.mjs +16 -16
  45. package/fesm2022/ng-nest-ui-auto-complete.mjs.map +1 -1
  46. package/fesm2022/ng-nest-ui-avatar.mjs +18 -18
  47. package/fesm2022/ng-nest-ui-avatar.mjs.map +1 -1
  48. package/fesm2022/ng-nest-ui-back-top.mjs +13 -12
  49. package/fesm2022/ng-nest-ui-back-top.mjs.map +1 -1
  50. package/fesm2022/ng-nest-ui-badge.mjs +11 -11
  51. package/fesm2022/ng-nest-ui-badge.mjs.map +1 -1
  52. package/fesm2022/ng-nest-ui-base-form.mjs +10 -10
  53. package/fesm2022/ng-nest-ui-base-form.mjs.map +1 -1
  54. package/fesm2022/ng-nest-ui-button.mjs +18 -18
  55. package/fesm2022/ng-nest-ui-button.mjs.map +1 -1
  56. package/fesm2022/ng-nest-ui-calendar.mjs +14 -15
  57. package/fesm2022/ng-nest-ui-calendar.mjs.map +1 -1
  58. package/fesm2022/ng-nest-ui-card.mjs +11 -12
  59. package/fesm2022/ng-nest-ui-card.mjs.map +1 -1
  60. package/fesm2022/ng-nest-ui-carousel.mjs +20 -19
  61. package/fesm2022/ng-nest-ui-carousel.mjs.map +1 -1
  62. package/fesm2022/ng-nest-ui-cascade.mjs +16 -16
  63. package/fesm2022/ng-nest-ui-cascade.mjs.map +1 -1
  64. package/fesm2022/ng-nest-ui-checkbox.mjs +12 -12
  65. package/fesm2022/ng-nest-ui-checkbox.mjs.map +1 -1
  66. package/fesm2022/ng-nest-ui-collapse.mjs +18 -18
  67. package/fesm2022/ng-nest-ui-collapse.mjs.map +1 -1
  68. package/fesm2022/ng-nest-ui-color-picker.mjs +15 -15
  69. package/fesm2022/ng-nest-ui-color-picker.mjs.map +1 -1
  70. package/fesm2022/ng-nest-ui-color.mjs +11 -11
  71. package/fesm2022/ng-nest-ui-color.mjs.map +1 -1
  72. package/fesm2022/ng-nest-ui-comment.mjs +18 -18
  73. package/fesm2022/ng-nest-ui-comment.mjs.map +1 -1
  74. package/fesm2022/ng-nest-ui-container.mjs +36 -36
  75. package/fesm2022/ng-nest-ui-container.mjs.map +1 -1
  76. package/fesm2022/ng-nest-ui-core.mjs +15 -15
  77. package/fesm2022/ng-nest-ui-core.mjs.map +1 -1
  78. package/fesm2022/ng-nest-ui-crumb.mjs +11 -11
  79. package/fesm2022/ng-nest-ui-crumb.mjs.map +1 -1
  80. package/fesm2022/ng-nest-ui-date-picker.mjs +57 -57
  81. package/fesm2022/ng-nest-ui-date-picker.mjs.map +1 -1
  82. package/fesm2022/ng-nest-ui-description.mjs +18 -18
  83. package/fesm2022/ng-nest-ui-description.mjs.map +1 -1
  84. package/fesm2022/ng-nest-ui-dialog.mjs +70 -144
  85. package/fesm2022/ng-nest-ui-dialog.mjs.map +1 -1
  86. package/fesm2022/ng-nest-ui-doc.mjs +8 -8
  87. package/fesm2022/ng-nest-ui-doc.mjs.map +1 -1
  88. package/fesm2022/ng-nest-ui-drag.mjs +11 -11
  89. package/fesm2022/ng-nest-ui-drag.mjs.map +1 -1
  90. package/fesm2022/ng-nest-ui-drawer.mjs +38 -41
  91. package/fesm2022/ng-nest-ui-drawer.mjs.map +1 -1
  92. package/fesm2022/ng-nest-ui-dropdown.mjs +15 -16
  93. package/fesm2022/ng-nest-ui-dropdown.mjs.map +1 -1
  94. package/fesm2022/ng-nest-ui-empty.mjs +11 -11
  95. package/fesm2022/ng-nest-ui-empty.mjs.map +1 -1
  96. package/fesm2022/ng-nest-ui-examples.mjs +8 -8
  97. package/fesm2022/ng-nest-ui-examples.mjs.map +1 -1
  98. package/fesm2022/ng-nest-ui-find.mjs +11 -11
  99. package/fesm2022/ng-nest-ui-find.mjs.map +1 -1
  100. package/fesm2022/ng-nest-ui-form.mjs +21 -40
  101. package/fesm2022/ng-nest-ui-form.mjs.map +1 -1
  102. package/fesm2022/ng-nest-ui-highlight.mjs +14 -14
  103. package/fesm2022/ng-nest-ui-highlight.mjs.map +1 -1
  104. package/fesm2022/ng-nest-ui-i18n.mjs +15 -17
  105. package/fesm2022/ng-nest-ui-i18n.mjs.map +1 -1
  106. package/fesm2022/ng-nest-ui-icon.mjs +14 -14
  107. package/fesm2022/ng-nest-ui-icon.mjs.map +1 -1
  108. package/fesm2022/ng-nest-ui-image.mjs +24 -24
  109. package/fesm2022/ng-nest-ui-image.mjs.map +1 -1
  110. package/fesm2022/ng-nest-ui-inner.mjs +11 -11
  111. package/fesm2022/ng-nest-ui-inner.mjs.map +1 -1
  112. package/fesm2022/ng-nest-ui-input-number.mjs +11 -11
  113. package/fesm2022/ng-nest-ui-input-number.mjs.map +1 -1
  114. package/fesm2022/ng-nest-ui-input.mjs +19 -19
  115. package/fesm2022/ng-nest-ui-input.mjs.map +1 -1
  116. package/fesm2022/ng-nest-ui-keyword.mjs +12 -13
  117. package/fesm2022/ng-nest-ui-keyword.mjs.map +1 -1
  118. package/fesm2022/ng-nest-ui-layout.mjs +18 -18
  119. package/fesm2022/ng-nest-ui-layout.mjs.map +1 -1
  120. package/fesm2022/ng-nest-ui-link.mjs +11 -11
  121. package/fesm2022/ng-nest-ui-link.mjs.map +1 -1
  122. package/fesm2022/ng-nest-ui-list.mjs +22 -23
  123. package/fesm2022/ng-nest-ui-list.mjs.map +1 -1
  124. package/fesm2022/ng-nest-ui-loading.mjs +12 -12
  125. package/fesm2022/ng-nest-ui-loading.mjs.map +1 -1
  126. package/fesm2022/ng-nest-ui-menu.mjs +19 -20
  127. package/fesm2022/ng-nest-ui-menu.mjs.map +1 -1
  128. package/fesm2022/ng-nest-ui-message-box.mjs +11 -13
  129. package/fesm2022/ng-nest-ui-message-box.mjs.map +1 -1
  130. package/fesm2022/ng-nest-ui-message.mjs +11 -11
  131. package/fesm2022/ng-nest-ui-message.mjs.map +1 -1
  132. package/fesm2022/ng-nest-ui-notification.mjs +11 -11
  133. package/fesm2022/ng-nest-ui-notification.mjs.map +1 -1
  134. package/fesm2022/ng-nest-ui-outlet.mjs +8 -8
  135. package/fesm2022/ng-nest-ui-outlet.mjs.map +1 -1
  136. package/fesm2022/ng-nest-ui-page-header.mjs +11 -11
  137. package/fesm2022/ng-nest-ui-page-header.mjs.map +1 -1
  138. package/fesm2022/ng-nest-ui-pagination.mjs +11 -11
  139. package/fesm2022/ng-nest-ui-pagination.mjs.map +1 -1
  140. package/fesm2022/ng-nest-ui-pattern.mjs +8 -8
  141. package/fesm2022/ng-nest-ui-pattern.mjs.map +1 -1
  142. package/fesm2022/ng-nest-ui-popconfirm.mjs +11 -11
  143. package/fesm2022/ng-nest-ui-popconfirm.mjs.map +1 -1
  144. package/fesm2022/ng-nest-ui-popover.mjs +15 -15
  145. package/fesm2022/ng-nest-ui-popover.mjs.map +1 -1
  146. package/fesm2022/ng-nest-ui-portal.mjs +7 -7
  147. package/fesm2022/ng-nest-ui-portal.mjs.map +1 -1
  148. package/fesm2022/ng-nest-ui-progress.mjs +11 -11
  149. package/fesm2022/ng-nest-ui-progress.mjs.map +1 -1
  150. package/fesm2022/ng-nest-ui-radio.mjs +11 -11
  151. package/fesm2022/ng-nest-ui-radio.mjs.map +1 -1
  152. package/fesm2022/ng-nest-ui-rate.mjs +11 -12
  153. package/fesm2022/ng-nest-ui-rate.mjs.map +1 -1
  154. package/fesm2022/ng-nest-ui-resizable.mjs +16 -14
  155. package/fesm2022/ng-nest-ui-resizable.mjs.map +1 -1
  156. package/fesm2022/ng-nest-ui-result.mjs +11 -11
  157. package/fesm2022/ng-nest-ui-result.mjs.map +1 -1
  158. package/fesm2022/ng-nest-ui-ripple.mjs +37 -27
  159. package/fesm2022/ng-nest-ui-ripple.mjs.map +1 -1
  160. package/fesm2022/ng-nest-ui-select.mjs +32 -17
  161. package/fesm2022/ng-nest-ui-select.mjs.map +1 -1
  162. package/fesm2022/ng-nest-ui-skeleton.mjs +13 -11
  163. package/fesm2022/ng-nest-ui-skeleton.mjs.map +1 -1
  164. package/fesm2022/ng-nest-ui-slider-select.mjs +15 -21
  165. package/fesm2022/ng-nest-ui-slider-select.mjs.map +1 -1
  166. package/fesm2022/ng-nest-ui-slider.mjs +11 -11
  167. package/fesm2022/ng-nest-ui-slider.mjs.map +1 -1
  168. package/fesm2022/ng-nest-ui-statistic.mjs +18 -18
  169. package/fesm2022/ng-nest-ui-statistic.mjs.map +1 -1
  170. package/fesm2022/ng-nest-ui-steps.mjs +11 -11
  171. package/fesm2022/ng-nest-ui-steps.mjs.map +1 -1
  172. package/fesm2022/ng-nest-ui-switch.mjs +11 -11
  173. package/fesm2022/ng-nest-ui-switch.mjs.map +1 -1
  174. package/fesm2022/ng-nest-ui-table.mjs +33 -33
  175. package/fesm2022/ng-nest-ui-table.mjs.map +1 -1
  176. package/fesm2022/ng-nest-ui-tabs.mjs +30 -32
  177. package/fesm2022/ng-nest-ui-tabs.mjs.map +1 -1
  178. package/fesm2022/ng-nest-ui-tag.mjs +11 -11
  179. package/fesm2022/ng-nest-ui-tag.mjs.map +1 -1
  180. package/fesm2022/ng-nest-ui-text-retract.mjs +11 -11
  181. package/fesm2022/ng-nest-ui-text-retract.mjs.map +1 -1
  182. package/fesm2022/ng-nest-ui-textarea.mjs +11 -11
  183. package/fesm2022/ng-nest-ui-textarea.mjs.map +1 -1
  184. package/fesm2022/ng-nest-ui-theme.mjs +13 -14
  185. package/fesm2022/ng-nest-ui-theme.mjs.map +1 -1
  186. package/fesm2022/ng-nest-ui-time-ago.mjs +8 -8
  187. package/fesm2022/ng-nest-ui-time-ago.mjs.map +1 -1
  188. package/fesm2022/ng-nest-ui-time-picker.mjs +19 -19
  189. package/fesm2022/ng-nest-ui-time-picker.mjs.map +1 -1
  190. package/fesm2022/ng-nest-ui-time-range.mjs +8 -8
  191. package/fesm2022/ng-nest-ui-time-range.mjs.map +1 -1
  192. package/fesm2022/ng-nest-ui-timeline.mjs +11 -11
  193. package/fesm2022/ng-nest-ui-timeline.mjs.map +1 -1
  194. package/fesm2022/ng-nest-ui-tooltip.mjs +15 -15
  195. package/fesm2022/ng-nest-ui-tooltip.mjs.map +1 -1
  196. package/fesm2022/ng-nest-ui-transfer.mjs +12 -13
  197. package/fesm2022/ng-nest-ui-transfer.mjs.map +1 -1
  198. package/fesm2022/ng-nest-ui-tree-file.mjs +12 -20
  199. package/fesm2022/ng-nest-ui-tree-file.mjs.map +1 -1
  200. package/fesm2022/ng-nest-ui-tree-select.mjs +15 -15
  201. package/fesm2022/ng-nest-ui-tree-select.mjs.map +1 -1
  202. package/fesm2022/ng-nest-ui-tree.mjs +21 -21
  203. package/fesm2022/ng-nest-ui-tree.mjs.map +1 -1
  204. package/fesm2022/ng-nest-ui-typography.mjs +11 -11
  205. package/fesm2022/ng-nest-ui-typography.mjs.map +1 -1
  206. package/fesm2022/ng-nest-ui-upload.mjs +15 -15
  207. package/fesm2022/ng-nest-ui-upload.mjs.map +1 -1
  208. package/find/find.property.d.ts +12 -18
  209. package/form/form.property.d.ts +10 -21
  210. package/highlight/highlight.property.d.ts +1 -1
  211. package/icon/icon.property.d.ts +1 -1
  212. package/image/image.property.d.ts +2 -2
  213. package/inner/inner.property.d.ts +1 -1
  214. package/input/input.property.d.ts +17 -20
  215. package/input-number/input-number.property.d.ts +13 -13
  216. package/layout/layout.property.d.ts +2 -2
  217. package/link/link.property.d.ts +1 -1
  218. package/list/list.property.d.ts +12 -12
  219. package/loading/loading.property.d.ts +1 -1
  220. package/menu/menu.property.d.ts +2 -2
  221. package/package.json +108 -282
  222. package/page-header/page-header.property.d.ts +1 -1
  223. package/pagination/pagination.property.d.ts +1 -1
  224. package/popconfirm/popconfirm.property.d.ts +1 -1
  225. package/popover/popover.property.d.ts +1 -1
  226. package/progress/progress.property.d.ts +1 -1
  227. package/radio/radio.property.d.ts +13 -16
  228. package/rate/rate.property.d.ts +14 -22
  229. package/result/result.property.d.ts +1 -1
  230. package/ripple/ripple.directive.d.ts +7 -3
  231. package/ripple/ripple.property.d.ts +1 -1
  232. package/select/select-portal.component.d.ts +3 -2
  233. package/select/select.component.d.ts +1 -0
  234. package/select/select.property.d.ts +20 -15
  235. package/skeleton/skeleton.property.d.ts +1 -1
  236. package/slider/slider.property.d.ts +1 -1
  237. package/slider-select/slider-select.property.d.ts +13 -17
  238. package/statistic/statistic.property.d.ts +2 -2
  239. package/steps/steps.property.d.ts +1 -1
  240. package/style/core/index.css +87 -174
  241. package/style/core/index.css.map +1 -1
  242. package/style/core/index.scss +32 -5
  243. package/style/directives/index.scss +3 -3
  244. package/style/directives/keyword/index.scss +3 -2
  245. package/style/directives/keyword/mixin.scss +9 -11
  246. package/style/directives/keyword/param.scss +2 -1
  247. package/style/directives/resizable/index.scss +3 -2
  248. package/style/directives/resizable/mixin.scss +122 -16
  249. package/style/directives/resizable/param.scss +2 -1
  250. package/style/directives/ripple/index.scss +3 -2
  251. package/style/directives/ripple/mixin.scss +12 -12
  252. package/style/directives/ripple/param.scss +2 -1
  253. package/style/mixins/compatibility.scss +7 -5
  254. package/style/mixins/form.scss +6 -4
  255. package/style/mixins/hidden.scss +5 -2
  256. package/style/params/index.scss +282 -3
  257. package/switch/switch.property.d.ts +14 -14
  258. package/table/table.property.d.ts +4 -4
  259. package/tabs/tabs.property.d.ts +2 -2
  260. package/tag/tag.property.d.ts +1 -1
  261. package/text-retract/text-retract.property.d.ts +1 -1
  262. package/textarea/textarea.property.d.ts +14 -17
  263. package/theme/theme.property.d.ts +6 -10
  264. package/time-picker/time-picker.property.d.ts +17 -23
  265. package/timeline/timeline.property.d.ts +1 -1
  266. package/tooltip/tooltip.property.d.ts +1 -1
  267. package/transfer/transfer.property.d.ts +9 -13
  268. package/tree/tree.property.d.ts +2 -2
  269. package/tree-file/tree-file.property.d.ts +1 -1
  270. package/tree-select/tree-select-portal.component.d.ts +1 -1
  271. package/tree-select/tree-select.property.d.ts +15 -15
  272. package/typography/typography.property.d.ts +1 -1
  273. package/upload/upload.property.d.ts +9 -9
  274. package/esm2022/affix/affix.component.mjs +0 -12
  275. package/esm2022/affix/affix.module.mjs +0 -16
  276. package/esm2022/affix/affix.property.mjs +0 -51
  277. package/esm2022/affix/ng-nest-ui-affix.mjs +0 -5
  278. package/esm2022/affix/public-api.mjs +0 -4
  279. package/esm2022/alert/alert.component.mjs +0 -73
  280. package/esm2022/alert/alert.module.mjs +0 -16
  281. package/esm2022/alert/alert.property.mjs +0 -313
  282. package/esm2022/alert/ng-nest-ui-alert.mjs +0 -5
  283. package/esm2022/alert/public-api.mjs +0 -4
  284. package/esm2022/anchor/anchor-inner.component.mjs +0 -18
  285. package/esm2022/anchor/anchor.component.mjs +0 -160
  286. package/esm2022/anchor/anchor.module.mjs +0 -17
  287. package/esm2022/anchor/anchor.property.mjs +0 -121
  288. package/esm2022/anchor/ng-nest-ui-anchor.mjs +0 -5
  289. package/esm2022/anchor/public-api.mjs +0 -5
  290. package/esm2022/api/api.component.mjs +0 -18
  291. package/esm2022/api/api.module.mjs +0 -16
  292. package/esm2022/api/api.property.mjs +0 -7
  293. package/esm2022/api/ng-nest-ui-api.mjs +0 -5
  294. package/esm2022/api/public-api.mjs +0 -4
  295. package/esm2022/auto-complete/auto-complete-portal.component.mjs +0 -80
  296. package/esm2022/auto-complete/auto-complete.component.mjs +0 -306
  297. package/esm2022/auto-complete/auto-complete.module.mjs +0 -16
  298. package/esm2022/auto-complete/auto-complete.property.mjs +0 -172
  299. package/esm2022/auto-complete/ng-nest-ui-auto-complete.mjs +0 -5
  300. package/esm2022/auto-complete/public-api.mjs +0 -5
  301. package/esm2022/avatar/avatar-group.component.mjs +0 -19
  302. package/esm2022/avatar/avatar.component.mjs +0 -109
  303. package/esm2022/avatar/avatar.module.mjs +0 -17
  304. package/esm2022/avatar/avatar.property.mjs +0 -143
  305. package/esm2022/avatar/ng-nest-ui-avatar.mjs +0 -5
  306. package/esm2022/avatar/public-api.mjs +0 -5
  307. package/esm2022/back-top/back-top.component.mjs +0 -104
  308. package/esm2022/back-top/back-top.module.mjs +0 -16
  309. package/esm2022/back-top/back-top.property.mjs +0 -50
  310. package/esm2022/back-top/ng-nest-ui-back-top.mjs +0 -5
  311. package/esm2022/back-top/public-api.mjs +0 -4
  312. package/esm2022/badge/badge.component.mjs +0 -63
  313. package/esm2022/badge/badge.module.mjs +0 -16
  314. package/esm2022/badge/badge.property.mjs +0 -133
  315. package/esm2022/badge/ng-nest-ui-badge.mjs +0 -5
  316. package/esm2022/badge/public-api.mjs +0 -4
  317. package/esm2022/base-form/base-form.component.mjs +0 -101
  318. package/esm2022/base-form/base-form.module.mjs +0 -15
  319. package/esm2022/base-form/base-form.property.mjs +0 -237
  320. package/esm2022/base-form/ng-nest-ui-base-form.mjs +0 -5
  321. package/esm2022/base-form/public-api.mjs +0 -4
  322. package/esm2022/button/button.component.mjs +0 -71
  323. package/esm2022/button/button.module.mjs +0 -17
  324. package/esm2022/button/button.property.mjs +0 -331
  325. package/esm2022/button/buttons.component.mjs +0 -55
  326. package/esm2022/button/ng-nest-ui-button.mjs +0 -5
  327. package/esm2022/button/public-api.mjs +0 -5
  328. package/esm2022/calendar/calendar.component.mjs +0 -117
  329. package/esm2022/calendar/calendar.module.mjs +0 -16
  330. package/esm2022/calendar/calendar.property.mjs +0 -110
  331. package/esm2022/calendar/ng-nest-ui-calendar.mjs +0 -5
  332. package/esm2022/calendar/public-api.mjs +0 -4
  333. package/esm2022/card/card.component.mjs +0 -22
  334. package/esm2022/card/card.module.mjs +0 -16
  335. package/esm2022/card/card.property.mjs +0 -77
  336. package/esm2022/card/ng-nest-ui-card.mjs +0 -5
  337. package/esm2022/card/public-api.mjs +0 -4
  338. package/esm2022/carousel/carousel-panel.component.mjs +0 -157
  339. package/esm2022/carousel/carousel.component.mjs +0 -95
  340. package/esm2022/carousel/carousel.module.mjs +0 -17
  341. package/esm2022/carousel/carousel.property.mjs +0 -256
  342. package/esm2022/carousel/ng-nest-ui-carousel.mjs +0 -5
  343. package/esm2022/carousel/public-api.mjs +0 -5
  344. package/esm2022/cascade/cascade-portal.component.mjs +0 -141
  345. package/esm2022/cascade/cascade.component.mjs +0 -238
  346. package/esm2022/cascade/cascade.module.mjs +0 -16
  347. package/esm2022/cascade/cascade.property.mjs +0 -167
  348. package/esm2022/cascade/ng-nest-ui-cascade.mjs +0 -5
  349. package/esm2022/cascade/public-api.mjs +0 -5
  350. package/esm2022/checkbox/checkbox.component.mjs +0 -102
  351. package/esm2022/checkbox/checkbox.module.mjs +0 -16
  352. package/esm2022/checkbox/checkbox.property.mjs +0 -136
  353. package/esm2022/checkbox/ng-nest-ui-checkbox.mjs +0 -5
  354. package/esm2022/checkbox/public-api.mjs +0 -4
  355. package/esm2022/collapse/collapse-panel.component.mjs +0 -55
  356. package/esm2022/collapse/collapse.component.mjs +0 -49
  357. package/esm2022/collapse/collapse.module.mjs +0 -17
  358. package/esm2022/collapse/collapse.property.mjs +0 -189
  359. package/esm2022/collapse/ng-nest-ui-collapse.mjs +0 -5
  360. package/esm2022/collapse/public-api.mjs +0 -5
  361. package/esm2022/color/color.component.mjs +0 -35
  362. package/esm2022/color/color.module.mjs +0 -16
  363. package/esm2022/color/color.property.mjs +0 -71
  364. package/esm2022/color/ng-nest-ui-color.mjs +0 -5
  365. package/esm2022/color/public-api.mjs +0 -4
  366. package/esm2022/color-picker/color-picker-portal.component.mjs +0 -396
  367. package/esm2022/color-picker/color-picker.component.mjs +0 -191
  368. package/esm2022/color-picker/color-picker.module.mjs +0 -16
  369. package/esm2022/color-picker/color-picker.property.mjs +0 -142
  370. package/esm2022/color-picker/ng-nest-ui-color-picker.mjs +0 -5
  371. package/esm2022/color-picker/public-api.mjs +0 -5
  372. package/esm2022/comment/comment-reply.component.mjs +0 -24
  373. package/esm2022/comment/comment.component.mjs +0 -55
  374. package/esm2022/comment/comment.module.mjs +0 -17
  375. package/esm2022/comment/comment.property.mjs +0 -90
  376. package/esm2022/comment/ng-nest-ui-comment.mjs +0 -5
  377. package/esm2022/comment/public-api.mjs +0 -5
  378. package/esm2022/container/aside.component.mjs +0 -25
  379. package/esm2022/container/container.component.mjs +0 -31
  380. package/esm2022/container/container.module.mjs +0 -20
  381. package/esm2022/container/container.property.mjs +0 -115
  382. package/esm2022/container/footer.component.mjs +0 -35
  383. package/esm2022/container/header.component.mjs +0 -35
  384. package/esm2022/container/main.component.mjs +0 -18
  385. package/esm2022/container/ng-nest-ui-container.mjs +0 -5
  386. package/esm2022/container/public-api.mjs +0 -8
  387. package/esm2022/core/animation/badge.mjs +0 -53
  388. package/esm2022/core/animation/connect.mjs +0 -31
  389. package/esm2022/core/animation/consts.mjs +0 -11
  390. package/esm2022/core/animation/drop.mjs +0 -13
  391. package/esm2022/core/animation/fade.mjs +0 -24
  392. package/esm2022/core/animation/move.mjs +0 -179
  393. package/esm2022/core/animation/opacity.mjs +0 -13
  394. package/esm2022/core/animation/public-api.mjs +0 -9
  395. package/esm2022/core/animation/slide.mjs +0 -17
  396. package/esm2022/core/config/config.mjs +0 -3
  397. package/esm2022/core/config/config.service.mjs +0 -54
  398. package/esm2022/core/config/index.mjs +0 -2
  399. package/esm2022/core/config/public-api.mjs +0 -3
  400. package/esm2022/core/functions/chunk.mjs +0 -25
  401. package/esm2022/core/functions/clone-deep.mjs +0 -28
  402. package/esm2022/core/functions/convert.mjs +0 -230
  403. package/esm2022/core/functions/csspx.mjs +0 -17
  404. package/esm2022/core/functions/date.mjs +0 -223
  405. package/esm2022/core/functions/drop.mjs +0 -20
  406. package/esm2022/core/functions/flex.mjs +0 -25
  407. package/esm2022/core/functions/group-by.mjs +0 -14
  408. package/esm2022/core/functions/guid.mjs +0 -11
  409. package/esm2022/core/functions/has-in.mjs +0 -8
  410. package/esm2022/core/functions/order-by.mjs +0 -56
  411. package/esm2022/core/functions/parent-path.mjs +0 -27
  412. package/esm2022/core/functions/property.mjs +0 -20
  413. package/esm2022/core/functions/public-api.mjs +0 -16
  414. package/esm2022/core/functions/remove.mjs +0 -19
  415. package/esm2022/core/functions/resize.mjs +0 -22
  416. package/esm2022/core/interfaces/data.type.mjs +0 -164
  417. package/esm2022/core/interfaces/identify.type.mjs +0 -7
  418. package/esm2022/core/interfaces/index.mjs +0 -2
  419. package/esm2022/core/interfaces/layout.type.mjs +0 -2
  420. package/esm2022/core/interfaces/public-api.mjs +0 -5
  421. package/esm2022/core/interfaces/result-list.type.mjs +0 -2
  422. package/esm2022/core/ng-nest-ui-core.mjs +0 -5
  423. package/esm2022/core/public-api.mjs +0 -8
  424. package/esm2022/core/services/http.service.mjs +0 -58
  425. package/esm2022/core/services/preloading-strategy.service.mjs +0 -24
  426. package/esm2022/core/services/public-api.mjs +0 -6
  427. package/esm2022/core/services/repository.service.mjs +0 -29
  428. package/esm2022/core/services/reuse-strategy.service.mjs +0 -47
  429. package/esm2022/core/services/storage.service.mjs +0 -75
  430. package/esm2022/core/theme/index.mjs +0 -2
  431. package/esm2022/core/theme/public-api.mjs +0 -3
  432. package/esm2022/core/theme/theme.mjs +0 -89
  433. package/esm2022/core/theme/theme.service.mjs +0 -270
  434. package/esm2022/core/util/animation.mjs +0 -26
  435. package/esm2022/core/util/camel-to-kebab.mjs +0 -16
  436. package/esm2022/core/util/check.mjs +0 -15
  437. package/esm2022/core/util/computed-style.mjs +0 -20
  438. package/esm2022/core/util/host.mjs +0 -14
  439. package/esm2022/core/util/html.mjs +0 -12
  440. package/esm2022/core/util/index.mjs +0 -2
  441. package/esm2022/core/util/kebab-to-camel.mjs +0 -16
  442. package/esm2022/core/util/log.mjs +0 -15
  443. package/esm2022/core/util/option.mjs +0 -14
  444. package/esm2022/core/util/public-api.mjs +0 -11
  445. package/esm2022/core/util/sleep.mjs +0 -8
  446. package/esm2022/crumb/crumb.component.mjs +0 -25
  447. package/esm2022/crumb/crumb.module.mjs +0 -16
  448. package/esm2022/crumb/crumb.property.mjs +0 -45
  449. package/esm2022/crumb/ng-nest-ui-crumb.mjs +0 -5
  450. package/esm2022/crumb/public-api.mjs +0 -4
  451. package/esm2022/date-picker/date-picker-portal.component.mjs +0 -196
  452. package/esm2022/date-picker/date-picker.component.mjs +0 -320
  453. package/esm2022/date-picker/date-picker.module.mjs +0 -17
  454. package/esm2022/date-picker/date-picker.property.mjs +0 -770
  455. package/esm2022/date-picker/date-quarter.pipe.mjs +0 -19
  456. package/esm2022/date-picker/date-range-portal.component.mjs +0 -349
  457. package/esm2022/date-picker/date-range.component.mjs +0 -432
  458. package/esm2022/date-picker/ng-nest-ui-date-picker.mjs +0 -5
  459. package/esm2022/date-picker/picker-date.component.mjs +0 -334
  460. package/esm2022/date-picker/picker-month.component.mjs +0 -232
  461. package/esm2022/date-picker/picker-quarter.component.mjs +0 -237
  462. package/esm2022/date-picker/picker-year.component.mjs +0 -233
  463. package/esm2022/date-picker/public-api.mjs +0 -12
  464. package/esm2022/description/description-item.component.mjs +0 -24
  465. package/esm2022/description/description.component.mjs +0 -48
  466. package/esm2022/description/description.module.mjs +0 -17
  467. package/esm2022/description/description.property.mjs +0 -219
  468. package/esm2022/description/ng-nest-ui-description.mjs +0 -5
  469. package/esm2022/description/public-api.mjs +0 -5
  470. package/esm2022/dialog/dialog-container.component.mjs +0 -29
  471. package/esm2022/dialog/dialog-portal.component.mjs +0 -97
  472. package/esm2022/dialog/dialog-portal.directives.mjs +0 -119
  473. package/esm2022/dialog/dialog-ref.mjs +0 -100
  474. package/esm2022/dialog/dialog.component.mjs +0 -282
  475. package/esm2022/dialog/dialog.module.mjs +0 -50
  476. package/esm2022/dialog/dialog.property.mjs +0 -207
  477. package/esm2022/dialog/dialog.service.mjs +0 -122
  478. package/esm2022/dialog/ng-nest-ui-dialog.mjs +0 -5
  479. package/esm2022/dialog/public-api.mjs +0 -9
  480. package/esm2022/doc/doc.component.mjs +0 -18
  481. package/esm2022/doc/doc.module.mjs +0 -16
  482. package/esm2022/doc/doc.property.mjs +0 -7
  483. package/esm2022/doc/ng-nest-ui-doc.mjs +0 -5
  484. package/esm2022/doc/public-api.mjs +0 -4
  485. package/esm2022/drag/drag.directive.mjs +0 -57
  486. package/esm2022/drag/drag.module.mjs +0 -16
  487. package/esm2022/drag/drag.property.mjs +0 -25
  488. package/esm2022/drag/ng-nest-ui-drag.mjs +0 -5
  489. package/esm2022/drag/public-api.mjs +0 -4
  490. package/esm2022/drawer/drawer-container.component.mjs +0 -29
  491. package/esm2022/drawer/drawer-portal.component.mjs +0 -50
  492. package/esm2022/drawer/drawer-portal.directives.mjs +0 -58
  493. package/esm2022/drawer/drawer-ref.mjs +0 -17
  494. package/esm2022/drawer/drawer.component.mjs +0 -95
  495. package/esm2022/drawer/drawer.module.mjs +0 -38
  496. package/esm2022/drawer/drawer.property.mjs +0 -84
  497. package/esm2022/drawer/drawer.service.mjs +0 -65
  498. package/esm2022/drawer/ng-nest-ui-drawer.mjs +0 -5
  499. package/esm2022/drawer/public-api.mjs +0 -10
  500. package/esm2022/dropdown/dropdown-portal.component.mjs +0 -204
  501. package/esm2022/dropdown/dropdown.component.mjs +0 -179
  502. package/esm2022/dropdown/dropdown.module.mjs +0 -16
  503. package/esm2022/dropdown/dropdown.property.mjs +0 -96
  504. package/esm2022/dropdown/ng-nest-ui-dropdown.mjs +0 -5
  505. package/esm2022/dropdown/public-api.mjs +0 -5
  506. package/esm2022/empty/empty.component.mjs +0 -15
  507. package/esm2022/empty/empty.module.mjs +0 -16
  508. package/esm2022/empty/empty.property.mjs +0 -54
  509. package/esm2022/empty/ng-nest-ui-empty.mjs +0 -5
  510. package/esm2022/empty/public-api.mjs +0 -4
  511. package/esm2022/examples/examples.component.mjs +0 -18
  512. package/esm2022/examples/examples.module.mjs +0 -16
  513. package/esm2022/examples/examples.property.mjs +0 -7
  514. package/esm2022/examples/ng-nest-ui-examples.mjs +0 -5
  515. package/esm2022/examples/public-api.mjs +0 -4
  516. package/esm2022/find/find.component.mjs +0 -331
  517. package/esm2022/find/find.module.mjs +0 -16
  518. package/esm2022/find/find.property.mjs +0 -260
  519. package/esm2022/find/ng-nest-ui-find.mjs +0 -5
  520. package/esm2022/find/public-api.mjs +0 -4
  521. package/esm2022/form/control.component.mjs +0 -249
  522. package/esm2022/form/form.component.mjs +0 -116
  523. package/esm2022/form/form.module.mjs +0 -17
  524. package/esm2022/form/form.property.mjs +0 -202
  525. package/esm2022/form/ng-nest-ui-form.mjs +0 -5
  526. package/esm2022/form/public-api.mjs +0 -5
  527. package/esm2022/highlight/highlight.component.mjs +0 -85
  528. package/esm2022/highlight/highlight.module.mjs +0 -16
  529. package/esm2022/highlight/highlight.property.mjs +0 -45
  530. package/esm2022/highlight/highlight.service.mjs +0 -17
  531. package/esm2022/highlight/ng-nest-ui-highlight.mjs +0 -5
  532. package/esm2022/highlight/public-api.mjs +0 -5
  533. package/esm2022/i18n/i18n.directive.mjs +0 -29
  534. package/esm2022/i18n/i18n.module.mjs +0 -17
  535. package/esm2022/i18n/i18n.pipe.mjs +0 -28
  536. package/esm2022/i18n/i18n.property.mjs +0 -9
  537. package/esm2022/i18n/i18n.service.mjs +0 -57
  538. package/esm2022/i18n/languages/ar_EG.mjs +0 -169
  539. package/esm2022/i18n/languages/bg_BG.mjs +0 -172
  540. package/esm2022/i18n/languages/ca_ES.mjs +0 -172
  541. package/esm2022/i18n/languages/cs_CZ.mjs +0 -172
  542. package/esm2022/i18n/languages/da_DK.mjs +0 -172
  543. package/esm2022/i18n/languages/de_DE.mjs +0 -172
  544. package/esm2022/i18n/languages/el_GR.mjs +0 -172
  545. package/esm2022/i18n/languages/en_GB.mjs +0 -181
  546. package/esm2022/i18n/languages/en_US.mjs +0 -181
  547. package/esm2022/i18n/languages/es_ES.mjs +0 -172
  548. package/esm2022/i18n/languages/et_EE.mjs +0 -172
  549. package/esm2022/i18n/languages/fa_IR.mjs +0 -172
  550. package/esm2022/i18n/languages/fi_FI.mjs +0 -172
  551. package/esm2022/i18n/languages/fr_BE.mjs +0 -172
  552. package/esm2022/i18n/languages/fr_FR.mjs +0 -172
  553. package/esm2022/i18n/languages/he_IL.mjs +0 -169
  554. package/esm2022/i18n/languages/hi_IN.mjs +0 -172
  555. package/esm2022/i18n/languages/hr_HR.mjs +0 -172
  556. package/esm2022/i18n/languages/hu_HU.mjs +0 -172
  557. package/esm2022/i18n/languages/hy_AM.mjs +0 -172
  558. package/esm2022/i18n/languages/id_ID.mjs +0 -172
  559. package/esm2022/i18n/languages/is_IS.mjs +0 -172
  560. package/esm2022/i18n/languages/it_IT.mjs +0 -172
  561. package/esm2022/i18n/languages/ja_JP.mjs +0 -172
  562. package/esm2022/i18n/languages/ka_GE.mjs +0 -172
  563. package/esm2022/i18n/languages/kn_IN.mjs +0 -172
  564. package/esm2022/i18n/languages/ko_KR.mjs +0 -180
  565. package/esm2022/i18n/languages/ku_IQ.mjs +0 -156
  566. package/esm2022/i18n/languages/lv_LV.mjs +0 -180
  567. package/esm2022/i18n/languages/mn_MN.mjs +0 -180
  568. package/esm2022/i18n/languages/ms_MY.mjs +0 -180
  569. package/esm2022/i18n/languages/nb_NO.mjs +0 -180
  570. package/esm2022/i18n/languages/ne_NP.mjs +0 -180
  571. package/esm2022/i18n/languages/nl_BE.mjs +0 -180
  572. package/esm2022/i18n/languages/nl_NL.mjs +0 -180
  573. package/esm2022/i18n/languages/pl_PL.mjs +0 -180
  574. package/esm2022/i18n/languages/pt_BR.mjs +0 -180
  575. package/esm2022/i18n/languages/pt_PT.mjs +0 -180
  576. package/esm2022/i18n/languages/ro_RO.mjs +0 -180
  577. package/esm2022/i18n/languages/ru_RU.mjs +0 -180
  578. package/esm2022/i18n/languages/sk_SK.mjs +0 -171
  579. package/esm2022/i18n/languages/sl_SI.mjs +0 -172
  580. package/esm2022/i18n/languages/sr_RS.mjs +0 -172
  581. package/esm2022/i18n/languages/sv_SE.mjs +0 -172
  582. package/esm2022/i18n/languages/ta_IN.mjs +0 -180
  583. package/esm2022/i18n/languages/th_TH.mjs +0 -180
  584. package/esm2022/i18n/languages/tr_TR.mjs +0 -180
  585. package/esm2022/i18n/languages/uk_UA.mjs +0 -180
  586. package/esm2022/i18n/languages/vi_VN.mjs +0 -180
  587. package/esm2022/i18n/languages/zh_CN.mjs +0 -180
  588. package/esm2022/i18n/languages/zh_TW.mjs +0 -180
  589. package/esm2022/i18n/ng-nest-ui-i18n.mjs +0 -5
  590. package/esm2022/i18n/public-api.mjs +0 -57
  591. package/esm2022/icon/icon.component.mjs +0 -158
  592. package/esm2022/icon/icon.module.mjs +0 -16
  593. package/esm2022/icon/icon.property.mjs +0 -65
  594. package/esm2022/icon/icon.service.mjs +0 -89
  595. package/esm2022/icon/ng-nest-ui-icon.mjs +0 -5
  596. package/esm2022/icon/public-api.mjs +0 -5
  597. package/esm2022/image/image-group.component.mjs +0 -27
  598. package/esm2022/image/image-preview.component.mjs +0 -135
  599. package/esm2022/image/image.component.mjs +0 -75
  600. package/esm2022/image/image.module.mjs +0 -18
  601. package/esm2022/image/image.property.mjs +0 -196
  602. package/esm2022/image/ng-nest-ui-image.mjs +0 -5
  603. package/esm2022/image/public-api.mjs +0 -6
  604. package/esm2022/index.mjs +0 -106
  605. package/esm2022/inner/inner.component.mjs +0 -25
  606. package/esm2022/inner/inner.module.mjs +0 -16
  607. package/esm2022/inner/inner.property.mjs +0 -30
  608. package/esm2022/inner/ng-nest-ui-inner.mjs +0 -5
  609. package/esm2022/inner/public-api.mjs +0 -4
  610. package/esm2022/input/input-group.component.mjs +0 -16
  611. package/esm2022/input/input.component.mjs +0 -224
  612. package/esm2022/input/input.module.mjs +0 -17
  613. package/esm2022/input/input.property.mjs +0 -281
  614. package/esm2022/input/ng-nest-ui-input.mjs +0 -5
  615. package/esm2022/input/public-api.mjs +0 -5
  616. package/esm2022/input-number/input-number.component.mjs +0 -131
  617. package/esm2022/input-number/input-number.module.mjs +0 -16
  618. package/esm2022/input-number/input-number.property.mjs +0 -146
  619. package/esm2022/input-number/ng-nest-ui-input-number.mjs +0 -5
  620. package/esm2022/input-number/public-api.mjs +0 -4
  621. package/esm2022/keyword/keyword.directive.mjs +0 -61
  622. package/esm2022/keyword/keyword.module.mjs +0 -16
  623. package/esm2022/keyword/keyword.property.mjs +0 -45
  624. package/esm2022/keyword/ng-nest-ui-keyword.mjs +0 -5
  625. package/esm2022/keyword/public-api.mjs +0 -4
  626. package/esm2022/layout/col.component.mjs +0 -68
  627. package/esm2022/layout/layout.module.mjs +0 -17
  628. package/esm2022/layout/layout.property.mjs +0 -150
  629. package/esm2022/layout/ng-nest-ui-layout.mjs +0 -5
  630. package/esm2022/layout/public-api.mjs +0 -5
  631. package/esm2022/layout/row.component.mjs +0 -54
  632. package/esm2022/link/link.component.mjs +0 -28
  633. package/esm2022/link/link.module.mjs +0 -16
  634. package/esm2022/link/link.property.mjs +0 -109
  635. package/esm2022/link/ng-nest-ui-link.mjs +0 -5
  636. package/esm2022/link/public-api.mjs +0 -4
  637. package/esm2022/list/list-drop-group.directive.mjs +0 -39
  638. package/esm2022/list/list-option.component.mjs +0 -37
  639. package/esm2022/list/list.component.mjs +0 -409
  640. package/esm2022/list/list.module.mjs +0 -18
  641. package/esm2022/list/list.property.mjs +0 -273
  642. package/esm2022/list/ng-nest-ui-list.mjs +0 -5
  643. package/esm2022/list/public-api.mjs +0 -6
  644. package/esm2022/loading/loading.component.mjs +0 -77
  645. package/esm2022/loading/loading.module.mjs +0 -16
  646. package/esm2022/loading/loading.property.mjs +0 -70
  647. package/esm2022/loading/ng-nest-ui-loading.mjs +0 -5
  648. package/esm2022/loading/public-api.mjs +0 -4
  649. package/esm2022/menu/menu-node.component.mjs +0 -36
  650. package/esm2022/menu/menu.component.mjs +0 -171
  651. package/esm2022/menu/menu.module.mjs +0 -17
  652. package/esm2022/menu/menu.property.mjs +0 -107
  653. package/esm2022/menu/ng-nest-ui-menu.mjs +0 -5
  654. package/esm2022/menu/public-api.mjs +0 -5
  655. package/esm2022/message/message-ref.mjs +0 -13
  656. package/esm2022/message/message.component.mjs +0 -40
  657. package/esm2022/message/message.module.mjs +0 -15
  658. package/esm2022/message/message.property.mjs +0 -9
  659. package/esm2022/message/message.service.mjs +0 -146
  660. package/esm2022/message/ng-nest-ui-message.mjs +0 -5
  661. package/esm2022/message/public-api.mjs +0 -6
  662. package/esm2022/message-box/message-box.component.mjs +0 -122
  663. package/esm2022/message-box/message-box.module.mjs +0 -15
  664. package/esm2022/message-box/message-box.property.mjs +0 -8
  665. package/esm2022/message-box/message-box.service.mjs +0 -97
  666. package/esm2022/message-box/ng-nest-ui-message-box.mjs +0 -5
  667. package/esm2022/message-box/public-api.mjs +0 -5
  668. package/esm2022/ng-nest-ui.mjs +0 -5
  669. package/esm2022/notification/ng-nest-ui-notification.mjs +0 -5
  670. package/esm2022/notification/notification.component.mjs +0 -42
  671. package/esm2022/notification/notification.module.mjs +0 -15
  672. package/esm2022/notification/notification.property.mjs +0 -8
  673. package/esm2022/notification/notification.service.mjs +0 -107
  674. package/esm2022/notification/public-api.mjs +0 -5
  675. package/esm2022/outlet/ng-nest-ui-outlet.mjs +0 -5
  676. package/esm2022/outlet/outlet.directive.mjs +0 -72
  677. package/esm2022/outlet/outlet.module.mjs +0 -16
  678. package/esm2022/outlet/outlet.property.mjs +0 -7
  679. package/esm2022/outlet/public-api.mjs +0 -4
  680. package/esm2022/page-header/ng-nest-ui-page-header.mjs +0 -5
  681. package/esm2022/page-header/page-header.component.mjs +0 -24
  682. package/esm2022/page-header/page-header.module.mjs +0 -16
  683. package/esm2022/page-header/page-header.property.mjs +0 -50
  684. package/esm2022/page-header/public-api.mjs +0 -4
  685. package/esm2022/pagination/ng-nest-ui-pagination.mjs +0 -5
  686. package/esm2022/pagination/pagination.component.mjs +0 -205
  687. package/esm2022/pagination/pagination.module.mjs +0 -16
  688. package/esm2022/pagination/pagination.property.mjs +0 -149
  689. package/esm2022/pagination/public-api.mjs +0 -4
  690. package/esm2022/pattern/ng-nest-ui-pattern.mjs +0 -5
  691. package/esm2022/pattern/pattern.component.mjs +0 -18
  692. package/esm2022/pattern/pattern.module.mjs +0 -16
  693. package/esm2022/pattern/pattern.property.mjs +0 -7
  694. package/esm2022/pattern/public-api.mjs +0 -4
  695. package/esm2022/popconfirm/ng-nest-ui-popconfirm.mjs +0 -5
  696. package/esm2022/popconfirm/popconfirm.component.mjs +0 -59
  697. package/esm2022/popconfirm/popconfirm.module.mjs +0 -16
  698. package/esm2022/popconfirm/popconfirm.property.mjs +0 -100
  699. package/esm2022/popconfirm/public-api.mjs +0 -4
  700. package/esm2022/popover/ng-nest-ui-popover.mjs +0 -5
  701. package/esm2022/popover/popover-portal.component.mjs +0 -52
  702. package/esm2022/popover/popover.directive.mjs +0 -186
  703. package/esm2022/popover/popover.module.mjs +0 -16
  704. package/esm2022/popover/popover.property.mjs +0 -101
  705. package/esm2022/popover/public-api.mjs +0 -5
  706. package/esm2022/portal/ng-nest-ui-portal.mjs +0 -5
  707. package/esm2022/portal/portal.module.mjs +0 -16
  708. package/esm2022/portal/portal.property.mjs +0 -24
  709. package/esm2022/portal/portal.service.mjs +0 -190
  710. package/esm2022/portal/public-api.mjs +0 -4
  711. package/esm2022/progress/ng-nest-ui-progress.mjs +0 -5
  712. package/esm2022/progress/progress.component.mjs +0 -224
  713. package/esm2022/progress/progress.module.mjs +0 -16
  714. package/esm2022/progress/progress.property.mjs +0 -110
  715. package/esm2022/progress/public-api.mjs +0 -4
  716. package/esm2022/radio/ng-nest-ui-radio.mjs +0 -5
  717. package/esm2022/radio/public-api.mjs +0 -4
  718. package/esm2022/radio/radio.component.mjs +0 -77
  719. package/esm2022/radio/radio.module.mjs +0 -16
  720. package/esm2022/radio/radio.property.mjs +0 -121
  721. package/esm2022/rate/ng-nest-ui-rate.mjs +0 -5
  722. package/esm2022/rate/public-api.mjs +0 -4
  723. package/esm2022/rate/rate.component.mjs +0 -99
  724. package/esm2022/rate/rate.module.mjs +0 -16
  725. package/esm2022/rate/rate.property.mjs +0 -86
  726. package/esm2022/resizable/ng-nest-ui-resizable.mjs +0 -5
  727. package/esm2022/resizable/public-api.mjs +0 -4
  728. package/esm2022/resizable/resizable.directive.mjs +0 -262
  729. package/esm2022/resizable/resizable.module.mjs +0 -16
  730. package/esm2022/resizable/resizable.property.mjs +0 -64
  731. package/esm2022/result/ng-nest-ui-result.mjs +0 -5
  732. package/esm2022/result/public-api.mjs +0 -4
  733. package/esm2022/result/result.component.mjs +0 -25
  734. package/esm2022/result/result.module.mjs +0 -16
  735. package/esm2022/result/result.property.mjs +0 -45
  736. package/esm2022/ripple/ng-nest-ui-ripple.mjs +0 -5
  737. package/esm2022/ripple/public-api.mjs +0 -4
  738. package/esm2022/ripple/ripple.directive.mjs +0 -83
  739. package/esm2022/ripple/ripple.module.mjs +0 -16
  740. package/esm2022/ripple/ripple.property.mjs +0 -40
  741. package/esm2022/select/ng-nest-ui-select.mjs +0 -5
  742. package/esm2022/select/public-api.mjs +0 -5
  743. package/esm2022/select/select-portal.component.mjs +0 -102
  744. package/esm2022/select/select.component.mjs +0 -680
  745. package/esm2022/select/select.module.mjs +0 -16
  746. package/esm2022/select/select.property.mjs +0 -231
  747. package/esm2022/skeleton/ng-nest-ui-skeleton.mjs +0 -5
  748. package/esm2022/skeleton/public-api.mjs +0 -4
  749. package/esm2022/skeleton/skeleton.component.mjs +0 -23
  750. package/esm2022/skeleton/skeleton.module.mjs +0 -16
  751. package/esm2022/skeleton/skeleton.property.mjs +0 -55
  752. package/esm2022/slider/ng-nest-ui-slider.mjs +0 -5
  753. package/esm2022/slider/public-api.mjs +0 -4
  754. package/esm2022/slider/slider.component.mjs +0 -222
  755. package/esm2022/slider/slider.module.mjs +0 -17
  756. package/esm2022/slider/slider.property.mjs +0 -102
  757. package/esm2022/slider-select/ng-nest-ui-slider-select.mjs +0 -5
  758. package/esm2022/slider-select/public-api.mjs +0 -4
  759. package/esm2022/slider-select/slider-select.component.mjs +0 -363
  760. package/esm2022/slider-select/slider-select.module.mjs +0 -16
  761. package/esm2022/slider-select/slider-select.property.mjs +0 -136
  762. package/esm2022/statistic/countdown.component.mjs +0 -70
  763. package/esm2022/statistic/ng-nest-ui-statistic.mjs +0 -5
  764. package/esm2022/statistic/public-api.mjs +0 -5
  765. package/esm2022/statistic/statistic.component.mjs +0 -34
  766. package/esm2022/statistic/statistic.module.mjs +0 -17
  767. package/esm2022/statistic/statistic.property.mjs +0 -106
  768. package/esm2022/steps/ng-nest-ui-steps.mjs +0 -5
  769. package/esm2022/steps/public-api.mjs +0 -4
  770. package/esm2022/steps/steps.component.mjs +0 -49
  771. package/esm2022/steps/steps.module.mjs +0 -16
  772. package/esm2022/steps/steps.property.mjs +0 -60
  773. package/esm2022/switch/ng-nest-ui-switch.mjs +0 -5
  774. package/esm2022/switch/public-api.mjs +0 -4
  775. package/esm2022/switch/switch.component.mjs +0 -37
  776. package/esm2022/switch/switch.module.mjs +0 -16
  777. package/esm2022/switch/switch.property.mjs +0 -91
  778. package/esm2022/table/ng-nest-ui-table.mjs +0 -5
  779. package/esm2022/table/public-api.mjs +0 -7
  780. package/esm2022/table/table-body.component.mjs +0 -236
  781. package/esm2022/table/table-foot.component.mjs +0 -29
  782. package/esm2022/table/table-head.component.mjs +0 -169
  783. package/esm2022/table/table.component.mjs +0 -372
  784. package/esm2022/table/table.module.mjs +0 -19
  785. package/esm2022/table/table.property.mjs +0 -624
  786. package/esm2022/tabs/ng-nest-ui-tabs.mjs +0 -5
  787. package/esm2022/tabs/public-api.mjs +0 -7
  788. package/esm2022/tabs/tab-content.component.mjs +0 -21
  789. package/esm2022/tabs/tab-link.directive.mjs +0 -46
  790. package/esm2022/tabs/tab.component.mjs +0 -19
  791. package/esm2022/tabs/tabs.component.mjs +0 -143
  792. package/esm2022/tabs/tabs.module.mjs +0 -18
  793. package/esm2022/tabs/tabs.property.mjs +0 -141
  794. package/esm2022/tag/ng-nest-ui-tag.mjs +0 -5
  795. package/esm2022/tag/public-api.mjs +0 -4
  796. package/esm2022/tag/tag.component.mjs +0 -51
  797. package/esm2022/tag/tag.module.mjs +0 -16
  798. package/esm2022/tag/tag.property.mjs +0 -80
  799. package/esm2022/text-retract/ng-nest-ui-text-retract.mjs +0 -5
  800. package/esm2022/text-retract/public-api.mjs +0 -4
  801. package/esm2022/text-retract/text-retract.component.mjs +0 -42
  802. package/esm2022/text-retract/text-retract.module.mjs +0 -16
  803. package/esm2022/text-retract/text-retract.property.mjs +0 -35
  804. package/esm2022/textarea/ng-nest-ui-textarea.mjs +0 -5
  805. package/esm2022/textarea/public-api.mjs +0 -4
  806. package/esm2022/textarea/textarea.component.mjs +0 -68
  807. package/esm2022/textarea/textarea.module.mjs +0 -16
  808. package/esm2022/textarea/textarea.property.mjs +0 -126
  809. package/esm2022/theme/ng-nest-ui-theme.mjs +0 -5
  810. package/esm2022/theme/public-api.mjs +0 -4
  811. package/esm2022/theme/theme.component.mjs +0 -179
  812. package/esm2022/theme/theme.module.mjs +0 -16
  813. package/esm2022/theme/theme.property.mjs +0 -63
  814. package/esm2022/time-ago/ng-nest-ui-time-ago.mjs +0 -5
  815. package/esm2022/time-ago/public-api.mjs +0 -4
  816. package/esm2022/time-ago/time-ago.module.mjs +0 -16
  817. package/esm2022/time-ago/time-ago.pipe.mjs +0 -70
  818. package/esm2022/time-ago/time-ago.property.mjs +0 -7
  819. package/esm2022/time-picker/ng-nest-ui-time-picker.mjs +0 -5
  820. package/esm2022/time-picker/public-api.mjs +0 -6
  821. package/esm2022/time-picker/time-picker-frame.component.mjs +0 -312
  822. package/esm2022/time-picker/time-picker-portal.component.mjs +0 -78
  823. package/esm2022/time-picker/time-picker.component.mjs +0 -266
  824. package/esm2022/time-picker/time-picker.module.mjs +0 -17
  825. package/esm2022/time-picker/time-picker.property.mjs +0 -198
  826. package/esm2022/time-range/ng-nest-ui-time-range.mjs +0 -5
  827. package/esm2022/time-range/public-api.mjs +0 -4
  828. package/esm2022/time-range/time-range.module.mjs +0 -16
  829. package/esm2022/time-range/time-range.pipe.mjs +0 -44
  830. package/esm2022/time-range/time-range.property.mjs +0 -7
  831. package/esm2022/timeline/ng-nest-ui-timeline.mjs +0 -5
  832. package/esm2022/timeline/public-api.mjs +0 -4
  833. package/esm2022/timeline/timeline.component.mjs +0 -45
  834. package/esm2022/timeline/timeline.module.mjs +0 -16
  835. package/esm2022/timeline/timeline.property.mjs +0 -50
  836. package/esm2022/tooltip/ng-nest-ui-tooltip.mjs +0 -5
  837. package/esm2022/tooltip/public-api.mjs +0 -5
  838. package/esm2022/tooltip/tooltip-portal.component.mjs +0 -103
  839. package/esm2022/tooltip/tooltip.directive.mjs +0 -143
  840. package/esm2022/tooltip/tooltip.module.mjs +0 -16
  841. package/esm2022/tooltip/tooltip.property.mjs +0 -86
  842. package/esm2022/transfer/ng-nest-ui-transfer.mjs +0 -5
  843. package/esm2022/transfer/public-api.mjs +0 -4
  844. package/esm2022/transfer/transfer.component.mjs +0 -659
  845. package/esm2022/transfer/transfer.module.mjs +0 -16
  846. package/esm2022/transfer/transfer.property.mjs +0 -112
  847. package/esm2022/tree/ng-nest-ui-tree.mjs +0 -5
  848. package/esm2022/tree/public-api.mjs +0 -5
  849. package/esm2022/tree/tree-node.component.mjs +0 -297
  850. package/esm2022/tree/tree.component.mjs +0 -579
  851. package/esm2022/tree/tree.module.mjs +0 -17
  852. package/esm2022/tree/tree.property.mjs +0 -337
  853. package/esm2022/tree/tree.service.mjs +0 -102
  854. package/esm2022/tree-file/ng-nest-ui-tree-file.mjs +0 -5
  855. package/esm2022/tree-file/public-api.mjs +0 -4
  856. package/esm2022/tree-file/tree-file.component.mjs +0 -118
  857. package/esm2022/tree-file/tree-file.module.mjs +0 -16
  858. package/esm2022/tree-file/tree-file.property.mjs +0 -90
  859. package/esm2022/tree-select/ng-nest-ui-tree-select.mjs +0 -5
  860. package/esm2022/tree-select/public-api.mjs +0 -5
  861. package/esm2022/tree-select/tree-select-portal.component.mjs +0 -86
  862. package/esm2022/tree-select/tree-select.component.mjs +0 -659
  863. package/esm2022/tree-select/tree-select.module.mjs +0 -17
  864. package/esm2022/tree-select/tree-select.property.mjs +0 -237
  865. package/esm2022/typography/ng-nest-ui-typography.mjs +0 -5
  866. package/esm2022/typography/public-api.mjs +0 -4
  867. package/esm2022/typography/typography.component.mjs +0 -27
  868. package/esm2022/typography/typography.module.mjs +0 -16
  869. package/esm2022/typography/typography.property.mjs +0 -34
  870. package/esm2022/upload/ng-nest-ui-upload.mjs +0 -5
  871. package/esm2022/upload/public-api.mjs +0 -5
  872. package/esm2022/upload/upload-portal.component.mjs +0 -196
  873. package/esm2022/upload/upload.component.mjs +0 -233
  874. package/esm2022/upload/upload.module.mjs +0 -16
  875. package/esm2022/upload/upload.property.mjs +0 -118
  876. package/style/core/base.scss +0 -20
  877. package/style/core/cdk.scss +0 -72
  878. package/style/core/portal.scss +0 -5
  879. package/style/core/var.scss +0 -4
  880. package/style/mixins/index.scss +0 -9
  881. package/style/params/layout.scss +0 -73
  882. package/style/params/primary.scss +0 -208
  883. package/style/themes/default.scss +0 -1
@@ -139,10 +139,10 @@ class XColorPickerProperty extends XFormControlFunction(X_COLOR_CONFIG_NAME) {
139
139
  */
140
140
  this.inputValidator = input();
141
141
  }
142
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XColorPickerProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
143
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.2", type: XColorPickerProperty, selector: "x-color-picker-property", inputs: { placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, bordered: { classPropertyName: "bordered", publicName: "bordered", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, pointer: { classPropertyName: "pointer", publicName: "pointer", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelWidth: { classPropertyName: "labelWidth", publicName: "labelWidth", isSignal: true, isRequired: false, transformFunction: null }, labelAlign: { classPropertyName: "labelAlign", publicName: "labelAlign", isSignal: true, isRequired: false, transformFunction: null }, justify: { classPropertyName: "justify", publicName: "justify", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, valueTpl: { classPropertyName: "valueTpl", publicName: "valueTpl", isSignal: true, isRequired: false, transformFunction: null }, valueTplContext: { classPropertyName: "valueTplContext", publicName: "valueTplContext", isSignal: true, isRequired: false, transformFunction: null }, before: { classPropertyName: "before", publicName: "before", isSignal: true, isRequired: false, transformFunction: null }, after: { classPropertyName: "after", publicName: "after", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, active: { classPropertyName: "active", publicName: "active", isSignal: true, isRequired: false, transformFunction: null }, inputValidator: { classPropertyName: "inputValidator", publicName: "inputValidator", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { active: "activeChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
142
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: XColorPickerProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
143
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.0.1", type: XColorPickerProperty, isStandalone: true, selector: "x-color-picker-property", inputs: { placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null }, bordered: { classPropertyName: "bordered", publicName: "bordered", isSignal: true, isRequired: false, transformFunction: null }, size: { classPropertyName: "size", publicName: "size", isSignal: true, isRequired: false, transformFunction: null }, pointer: { classPropertyName: "pointer", publicName: "pointer", isSignal: true, isRequired: false, transformFunction: null }, label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, labelWidth: { classPropertyName: "labelWidth", publicName: "labelWidth", isSignal: true, isRequired: false, transformFunction: null }, labelAlign: { classPropertyName: "labelAlign", publicName: "labelAlign", isSignal: true, isRequired: false, transformFunction: null }, justify: { classPropertyName: "justify", publicName: "justify", isSignal: true, isRequired: false, transformFunction: null }, align: { classPropertyName: "align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, direction: { classPropertyName: "direction", publicName: "direction", isSignal: true, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: "placeholder", publicName: "placeholder", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, readonly: { classPropertyName: "readonly", publicName: "readonly", isSignal: true, isRequired: false, transformFunction: null }, valueTpl: { classPropertyName: "valueTpl", publicName: "valueTpl", isSignal: true, isRequired: false, transformFunction: null }, valueTplContext: { classPropertyName: "valueTplContext", publicName: "valueTplContext", isSignal: true, isRequired: false, transformFunction: null }, before: { classPropertyName: "before", publicName: "before", isSignal: true, isRequired: false, transformFunction: null }, after: { classPropertyName: "after", publicName: "after", isSignal: true, isRequired: false, transformFunction: null }, pattern: { classPropertyName: "pattern", publicName: "pattern", isSignal: true, isRequired: false, transformFunction: null }, message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: false, transformFunction: null }, active: { classPropertyName: "active", publicName: "active", isSignal: true, isRequired: false, transformFunction: null }, inputValidator: { classPropertyName: "inputValidator", publicName: "inputValidator", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { active: "activeChange" }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
144
144
  }
145
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XColorPickerProperty, decorators: [{
145
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: XColorPickerProperty, decorators: [{
146
146
  type: Component,
147
147
  args: [{ selector: `${XColorPickerPrefix}-property`, template: '' }]
148
148
  }] });
@@ -519,12 +519,12 @@ class XColorPickerPortalComponent {
519
519
  }
520
520
  return result;
521
521
  }
522
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XColorPickerPortalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
523
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.2", type: XColorPickerPortalComponent, isStandalone: true, selector: "x-color-picker-portal", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, inputCom: { classPropertyName: "inputCom", publicName: "inputCom", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", animating: "animating", nodeClick: "nodeClick" }, host: { listeners: { "@x-connect-base-animation.done": "done($event)", "@x-connect-base-animation.start": "start($event)" }, properties: { "@x-connect-base-animation": "this.getPlacement" } }, providers: [DecimalPipe, PercentPipe], viewQueries: [{ propertyName: "panelRef", first: true, predicate: ["panelRef"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "plateRef", first: true, predicate: ["plateRef"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "transparentCom", first: true, predicate: ["transparentCom"], descendants: true, read: XSliderSelectComponent, isSignal: true }], ngImport: i0, template: "<div class=\"x-color-picker-portal\" tabindex=\"-1\" (click)=\"stopPropagation($event)\">\r\n <div #panelRef class=\"x-color-picker-portal-panel\">\r\n <div #plateRef class=\"x-color-picker-portal-plate\" (click)=\"plateClick($event)\">\r\n <div class=\"x-color-picker-portal-white\"></div>\r\n <div class=\"x-color-picker-portal-black\"></div>\r\n <div\r\n #dragCom\r\n class=\"x-color-picker-portal-cursor\"\r\n [style.left.px]=\"transformX()\"\r\n [style.top.px]=\"transformY()\"\r\n cdkDrag\r\n [cdkDragBoundary]=\"panelRef\"\r\n (cdkDragStarted)=\"started()\"\r\n (cdkDragEnded)=\"ended()\"\r\n (cdkDragMoved)=\"moved($event)\"\r\n ></div>\r\n </div>\r\n </div>\r\n <div class=\"x-color-picker-portal-tool\">\r\n <div class=\"x-color-picker-portal-operations\">\r\n <!-- <x-button icon=\"fto-edit-2\" onlyIcon></x-button> -->\r\n <div class=\"x-color-picker-portal-selected\">\r\n <div [style.background-color]=\"value()\"></div>\r\n </div>\r\n <div class=\"x-color-picker-portal-area\">\r\n <div class=\"x-color-picker-portal-slider\">\r\n <x-slider-select\r\n [style.width.%]=\"100\"\r\n [(ngModel)]=\"hsla().h\"\r\n min=\"0\"\r\n max=\"360\"\r\n step=\"1\"\r\n (dragStartEmit)=\"started()\"\r\n (dragEndEmit)=\"ended()\"\r\n (ngModelChange)=\"hueChange()\"\r\n ></x-slider-select>\r\n </div>\r\n <div class=\"x-color-picker-portal-transparent\">\r\n <x-slider-select\r\n [style.width.%]=\"100\"\r\n #transparentCom\r\n [(ngModel)]=\"hsla().a\"\r\n min=\"0\"\r\n max=\"1\"\r\n step=\"0.01\"\r\n (dragStarted)=\"started()\"\r\n (dragEnded)=\"ended()\"\r\n (ngModelChange)=\"transparentChange()\"\r\n ></x-slider-select>\r\n <div class=\"x-color-picker-portal-alpha\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"x-color-picker-portal-type\">\r\n <x-tabs animated=\"false\" justify=\"center\">\r\n <x-tab label=\"HEX\">\r\n <div class=\"x-color-picker-portal-type-content\">\r\n <x-input [style.width.%]=\"100\" [(ngModel)]=\"hex\" (ngModelChange)=\"hexChange()\"></x-input>\r\n </div>\r\n </x-tab>\r\n <x-tab label=\"RGBA\">\r\n <div class=\"x-color-picker-portal-type-content\">\r\n <x-input [(ngModel)]=\"rgba().r\" disabled></x-input>\r\n <x-input [(ngModel)]=\"rgba().g\" disabled></x-input>\r\n <x-input [(ngModel)]=\"rgba().b\" disabled></x-input>\r\n <x-input [(ngModel)]=\"rgba().a\" disabled></x-input>\r\n </div>\r\n </x-tab>\r\n <x-tab label=\"HSLA\">\r\n <div class=\"x-color-picker-portal-type-content\">\r\n <x-input [(ngModel)]=\"hsla().h\" disabled></x-input>\r\n <x-input [(ngModel)]=\"hsla().sp\" disabled></x-input>\r\n <x-input [(ngModel)]=\"hsla().lp\" disabled></x-input>\r\n <x-input [(ngModel)]=\"hsla().a\" disabled></x-input>\r\n </div>\r\n </x-tab>\r\n </x-tabs>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-color-picker-portal{margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border-radius:var(--x-border-small-radius);box-shadow:var(--x-box-shadow);background-color:var(--x-background-100);width:17rem;overflow:hidden}.x-color-picker-portal:focus{outline:none}.x-color-picker-portal-panel{padding:.375rem;margin:-.375rem}.x-color-picker-portal-plate{width:100%;height:8rem;display:flex;border-radius:var(--x-border-small-radius);position:relative}.x-color-picker-portal-white,.x-color-picker-portal-black{position:absolute;inset:0}.x-color-picker-portal-white{background:linear-gradient(90deg,#fff,#fff0)}.x-color-picker-portal-black{background:linear-gradient(0deg,#000,transparent)}.x-color-picker-portal-cursor{position:absolute;width:.75rem;height:.75rem;display:inline-block;border-radius:50%;border:.0625rem solid var(--x-background-100)}.x-color-picker-portal-tool{padding:.4rem}.x-color-picker-portal-operations{display:flex;align-items:center;padding:.4rem 0}.x-color-picker-portal-selected{margin-left:.4rem;width:2rem;height:2rem;border-radius:2rem;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.x-color-picker-portal-selected>div{width:2rem;height:2rem;border-radius:2rem}.x-color-picker-portal-area{margin-left:.4rem;position:relative;flex:1}.x-color-picker-portal-area .x-slider-select:hover:not(.x-disabled) .x-slider-select-process{background-color:transparent}.x-color-picker-portal-area .x-slider-select>.x-slider-select-inner .x-slider-select-rail{height:.75rem}.x-color-picker-portal-area .x-slider-select>.x-slider-select-inner .x-slider-select-process{background-color:transparent}.x-color-picker-portal-area .x-slider-select>.x-slider-select-inner>.x-slider-select-drags>.x-slider-select-drag>.x-slider-select-button{border-color:var(--x-border);box-shadow:var(--x-box-shadow)}.x-color-picker-portal-slider{position:relative;width:100%;display:flex;align-items:center}.x-color-picker-portal-slider .x-slider-select>.x-slider-select-inner>.x-slider-select-rail{background:linear-gradient(90deg,red 0,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.x-color-picker-portal-transparent{position:relative;width:100%;display:flex;align-items:center}.x-color-picker-portal-transparent .x-slider-select>.x-slider-select-inner>.x-slider-select-rail{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.x-color-picker-portal-type .x-tabs .x-tabs-list{display:flex;justify-content:center}.x-color-picker-portal-type-content{padding:.25rem;display:flex}.x-color-picker-portal-type-content .x-input .x-input-row input{text-align:center}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: DragDropModule }, { kind: "directive", type: i2.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: XSliderSelectComponent, selector: "x-slider-select" }, { kind: "component", type: XTabsComponent, selector: "x-tabs" }, { kind: "component", type: XTabComponent, selector: "x-tab" }, { kind: "component", type: XInputComponent, selector: "x-input" }], animations: [XConnectBaseAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
522
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: XColorPickerPortalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
523
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.0.1", type: XColorPickerPortalComponent, isStandalone: true, selector: "x-color-picker-portal", inputs: { value: { classPropertyName: "value", publicName: "value", isSignal: true, isRequired: false, transformFunction: null }, inputCom: { classPropertyName: "inputCom", publicName: "inputCom", isSignal: true, isRequired: false, transformFunction: null }, placement: { classPropertyName: "placement", publicName: "placement", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { value: "valueChange", animating: "animating", nodeClick: "nodeClick" }, host: { listeners: { "@x-connect-base-animation.done": "done($event)", "@x-connect-base-animation.start": "start($event)" }, properties: { "@x-connect-base-animation": "this.getPlacement" } }, providers: [DecimalPipe, PercentPipe], viewQueries: [{ propertyName: "panelRef", first: true, predicate: ["panelRef"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "plateRef", first: true, predicate: ["plateRef"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "transparentCom", first: true, predicate: ["transparentCom"], descendants: true, read: XSliderSelectComponent, isSignal: true }], ngImport: i0, template: "<div class=\"x-color-picker-portal\" tabindex=\"-1\" (click)=\"stopPropagation($event)\">\r\n <div #panelRef class=\"x-color-picker-portal-panel\">\r\n <div #plateRef class=\"x-color-picker-portal-plate\" (click)=\"plateClick($event)\">\r\n <div class=\"x-color-picker-portal-white\"></div>\r\n <div class=\"x-color-picker-portal-black\"></div>\r\n <div\r\n #dragCom\r\n class=\"x-color-picker-portal-cursor\"\r\n [style.left.px]=\"transformX()\"\r\n [style.top.px]=\"transformY()\"\r\n cdkDrag\r\n [cdkDragBoundary]=\"panelRef\"\r\n (cdkDragStarted)=\"started()\"\r\n (cdkDragEnded)=\"ended()\"\r\n (cdkDragMoved)=\"moved($event)\"\r\n ></div>\r\n </div>\r\n </div>\r\n <div class=\"x-color-picker-portal-tool\">\r\n <div class=\"x-color-picker-portal-operations\">\r\n <!-- <x-button icon=\"fto-edit-2\" onlyIcon></x-button> -->\r\n <div class=\"x-color-picker-portal-selected\">\r\n <div [style.background-color]=\"value()\"></div>\r\n </div>\r\n <div class=\"x-color-picker-portal-area\">\r\n <div class=\"x-color-picker-portal-slider\">\r\n <x-slider-select\r\n [style.width.%]=\"100\"\r\n [(ngModel)]=\"hsla().h\"\r\n min=\"0\"\r\n max=\"360\"\r\n step=\"1\"\r\n (dragStartEmit)=\"started()\"\r\n (dragEndEmit)=\"ended()\"\r\n (ngModelChange)=\"hueChange()\"\r\n ></x-slider-select>\r\n </div>\r\n <div class=\"x-color-picker-portal-transparent\">\r\n <x-slider-select\r\n [style.width.%]=\"100\"\r\n #transparentCom\r\n [(ngModel)]=\"hsla().a\"\r\n min=\"0\"\r\n max=\"1\"\r\n step=\"0.01\"\r\n (dragStarted)=\"started()\"\r\n (dragEnded)=\"ended()\"\r\n (ngModelChange)=\"transparentChange()\"\r\n ></x-slider-select>\r\n <div class=\"x-color-picker-portal-alpha\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"x-color-picker-portal-type\">\r\n <x-tabs animated=\"false\" justify=\"center\">\r\n <x-tab label=\"HEX\">\r\n <div class=\"x-color-picker-portal-type-content\">\r\n <x-input [style.width.%]=\"100\" [(ngModel)]=\"hex\" (ngModelChange)=\"hexChange()\"></x-input>\r\n </div>\r\n </x-tab>\r\n <x-tab label=\"RGBA\">\r\n <div class=\"x-color-picker-portal-type-content\">\r\n <x-input [(ngModel)]=\"rgba().r\" disabled></x-input>\r\n <x-input [(ngModel)]=\"rgba().g\" disabled></x-input>\r\n <x-input [(ngModel)]=\"rgba().b\" disabled></x-input>\r\n <x-input [(ngModel)]=\"rgba().a\" disabled></x-input>\r\n </div>\r\n </x-tab>\r\n <x-tab label=\"HSLA\">\r\n <div class=\"x-color-picker-portal-type-content\">\r\n <x-input [(ngModel)]=\"hsla().h\" disabled></x-input>\r\n <x-input [(ngModel)]=\"hsla().sp\" disabled></x-input>\r\n <x-input [(ngModel)]=\"hsla().lp\" disabled></x-input>\r\n <x-input [(ngModel)]=\"hsla().a\" disabled></x-input>\r\n </div>\r\n </x-tab>\r\n </x-tabs>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-color-picker-portal{margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border-radius:var(--x-border-small-radius);box-shadow:var(--x-box-shadow);background-color:var(--x-background-100);width:17rem;overflow:hidden}.x-color-picker-portal:focus{outline:none}.x-color-picker-portal-panel{padding:.375rem;margin:-.375rem}.x-color-picker-portal-plate{width:100%;height:8rem;display:flex;border-radius:var(--x-border-small-radius);position:relative}.x-color-picker-portal-white,.x-color-picker-portal-black{position:absolute;inset:0}.x-color-picker-portal-white{background:linear-gradient(90deg,#fff,#fff0)}.x-color-picker-portal-black{background:linear-gradient(0deg,#000,transparent)}.x-color-picker-portal-cursor{position:absolute;width:.75rem;height:.75rem;display:inline-block;border-radius:50%;border:.0625rem solid var(--x-background-100)}.x-color-picker-portal-tool{padding:.4rem}.x-color-picker-portal-operations{display:flex;align-items:center;padding:.4rem 0}.x-color-picker-portal-selected{margin-left:.4rem;width:2rem;height:2rem;border-radius:2rem;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.x-color-picker-portal-selected>div{width:2rem;height:2rem;border-radius:2rem}.x-color-picker-portal-area{margin-left:.4rem;position:relative;flex:1}.x-color-picker-portal-area .x-slider-select:hover:not(.x-disabled) .x-slider-select-process{background-color:transparent}.x-color-picker-portal-area .x-slider-select>.x-slider-select-inner .x-slider-select-rail{height:.75rem}.x-color-picker-portal-area .x-slider-select>.x-slider-select-inner .x-slider-select-process{background-color:transparent}.x-color-picker-portal-area .x-slider-select>.x-slider-select-inner>.x-slider-select-drags>.x-slider-select-drag>.x-slider-select-button{border-color:var(--x-border);box-shadow:var(--x-box-shadow)}.x-color-picker-portal-slider{position:relative;width:100%;display:flex;align-items:center}.x-color-picker-portal-slider .x-slider-select>.x-slider-select-inner>.x-slider-select-rail{background:linear-gradient(90deg,red 0,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.x-color-picker-portal-transparent{position:relative;width:100%;display:flex;align-items:center}.x-color-picker-portal-transparent .x-slider-select>.x-slider-select-inner>.x-slider-select-rail{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.x-color-picker-portal-type .x-tabs .x-tabs-list{display:flex;justify-content:center}.x-color-picker-portal-type-content{padding:.25rem;display:flex}.x-color-picker-portal-type-content .x-input .x-input-row input{text-align:center}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: DragDropModule }, { kind: "directive", type: i2.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer", "cdkDragScale"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: XSliderSelectComponent, selector: "x-slider-select" }, { kind: "component", type: XTabsComponent, selector: "x-tabs" }, { kind: "component", type: XTabComponent, selector: "x-tab" }, { kind: "component", type: XInputComponent, selector: "x-input" }], animations: [XConnectBaseAnimation], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
524
524
  }
525
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XColorPickerPortalComponent, decorators: [{
525
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: XColorPickerPortalComponent, decorators: [{
526
526
  type: Component,
527
- args: [{ selector: `${XColorPickerPortalPrefix}`, standalone: true, imports: [FormsModule, DragDropModule, XSliderSelectComponent, XTabsComponent, XTabComponent, XInputComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [DecimalPipe, PercentPipe], animations: [XConnectBaseAnimation], template: "<div class=\"x-color-picker-portal\" tabindex=\"-1\" (click)=\"stopPropagation($event)\">\r\n <div #panelRef class=\"x-color-picker-portal-panel\">\r\n <div #plateRef class=\"x-color-picker-portal-plate\" (click)=\"plateClick($event)\">\r\n <div class=\"x-color-picker-portal-white\"></div>\r\n <div class=\"x-color-picker-portal-black\"></div>\r\n <div\r\n #dragCom\r\n class=\"x-color-picker-portal-cursor\"\r\n [style.left.px]=\"transformX()\"\r\n [style.top.px]=\"transformY()\"\r\n cdkDrag\r\n [cdkDragBoundary]=\"panelRef\"\r\n (cdkDragStarted)=\"started()\"\r\n (cdkDragEnded)=\"ended()\"\r\n (cdkDragMoved)=\"moved($event)\"\r\n ></div>\r\n </div>\r\n </div>\r\n <div class=\"x-color-picker-portal-tool\">\r\n <div class=\"x-color-picker-portal-operations\">\r\n <!-- <x-button icon=\"fto-edit-2\" onlyIcon></x-button> -->\r\n <div class=\"x-color-picker-portal-selected\">\r\n <div [style.background-color]=\"value()\"></div>\r\n </div>\r\n <div class=\"x-color-picker-portal-area\">\r\n <div class=\"x-color-picker-portal-slider\">\r\n <x-slider-select\r\n [style.width.%]=\"100\"\r\n [(ngModel)]=\"hsla().h\"\r\n min=\"0\"\r\n max=\"360\"\r\n step=\"1\"\r\n (dragStartEmit)=\"started()\"\r\n (dragEndEmit)=\"ended()\"\r\n (ngModelChange)=\"hueChange()\"\r\n ></x-slider-select>\r\n </div>\r\n <div class=\"x-color-picker-portal-transparent\">\r\n <x-slider-select\r\n [style.width.%]=\"100\"\r\n #transparentCom\r\n [(ngModel)]=\"hsla().a\"\r\n min=\"0\"\r\n max=\"1\"\r\n step=\"0.01\"\r\n (dragStarted)=\"started()\"\r\n (dragEnded)=\"ended()\"\r\n (ngModelChange)=\"transparentChange()\"\r\n ></x-slider-select>\r\n <div class=\"x-color-picker-portal-alpha\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"x-color-picker-portal-type\">\r\n <x-tabs animated=\"false\" justify=\"center\">\r\n <x-tab label=\"HEX\">\r\n <div class=\"x-color-picker-portal-type-content\">\r\n <x-input [style.width.%]=\"100\" [(ngModel)]=\"hex\" (ngModelChange)=\"hexChange()\"></x-input>\r\n </div>\r\n </x-tab>\r\n <x-tab label=\"RGBA\">\r\n <div class=\"x-color-picker-portal-type-content\">\r\n <x-input [(ngModel)]=\"rgba().r\" disabled></x-input>\r\n <x-input [(ngModel)]=\"rgba().g\" disabled></x-input>\r\n <x-input [(ngModel)]=\"rgba().b\" disabled></x-input>\r\n <x-input [(ngModel)]=\"rgba().a\" disabled></x-input>\r\n </div>\r\n </x-tab>\r\n <x-tab label=\"HSLA\">\r\n <div class=\"x-color-picker-portal-type-content\">\r\n <x-input [(ngModel)]=\"hsla().h\" disabled></x-input>\r\n <x-input [(ngModel)]=\"hsla().sp\" disabled></x-input>\r\n <x-input [(ngModel)]=\"hsla().lp\" disabled></x-input>\r\n <x-input [(ngModel)]=\"hsla().a\" disabled></x-input>\r\n </div>\r\n </x-tab>\r\n </x-tabs>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-color-picker-portal{margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border-radius:var(--x-border-small-radius);box-shadow:var(--x-box-shadow);background-color:var(--x-background-100);width:17rem;overflow:hidden}.x-color-picker-portal:focus{outline:none}.x-color-picker-portal-panel{padding:.375rem;margin:-.375rem}.x-color-picker-portal-plate{width:100%;height:8rem;display:flex;border-radius:var(--x-border-small-radius);position:relative}.x-color-picker-portal-white,.x-color-picker-portal-black{position:absolute;inset:0}.x-color-picker-portal-white{background:linear-gradient(90deg,#fff,#fff0)}.x-color-picker-portal-black{background:linear-gradient(0deg,#000,transparent)}.x-color-picker-portal-cursor{position:absolute;width:.75rem;height:.75rem;display:inline-block;border-radius:50%;border:.0625rem solid var(--x-background-100)}.x-color-picker-portal-tool{padding:.4rem}.x-color-picker-portal-operations{display:flex;align-items:center;padding:.4rem 0}.x-color-picker-portal-selected{margin-left:.4rem;width:2rem;height:2rem;border-radius:2rem;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.x-color-picker-portal-selected>div{width:2rem;height:2rem;border-radius:2rem}.x-color-picker-portal-area{margin-left:.4rem;position:relative;flex:1}.x-color-picker-portal-area .x-slider-select:hover:not(.x-disabled) .x-slider-select-process{background-color:transparent}.x-color-picker-portal-area .x-slider-select>.x-slider-select-inner .x-slider-select-rail{height:.75rem}.x-color-picker-portal-area .x-slider-select>.x-slider-select-inner .x-slider-select-process{background-color:transparent}.x-color-picker-portal-area .x-slider-select>.x-slider-select-inner>.x-slider-select-drags>.x-slider-select-drag>.x-slider-select-button{border-color:var(--x-border);box-shadow:var(--x-box-shadow)}.x-color-picker-portal-slider{position:relative;width:100%;display:flex;align-items:center}.x-color-picker-portal-slider .x-slider-select>.x-slider-select-inner>.x-slider-select-rail{background:linear-gradient(90deg,red 0,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.x-color-picker-portal-transparent{position:relative;width:100%;display:flex;align-items:center}.x-color-picker-portal-transparent .x-slider-select>.x-slider-select-inner>.x-slider-select-rail{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.x-color-picker-portal-type .x-tabs .x-tabs-list{display:flex;justify-content:center}.x-color-picker-portal-type-content{padding:.25rem;display:flex}.x-color-picker-portal-type-content .x-input .x-input-row input{text-align:center}\n"] }]
527
+ args: [{ selector: `${XColorPickerPortalPrefix}`, imports: [FormsModule, DragDropModule, XSliderSelectComponent, XTabsComponent, XTabComponent, XInputComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [DecimalPipe, PercentPipe], animations: [XConnectBaseAnimation], template: "<div class=\"x-color-picker-portal\" tabindex=\"-1\" (click)=\"stopPropagation($event)\">\r\n <div #panelRef class=\"x-color-picker-portal-panel\">\r\n <div #plateRef class=\"x-color-picker-portal-plate\" (click)=\"plateClick($event)\">\r\n <div class=\"x-color-picker-portal-white\"></div>\r\n <div class=\"x-color-picker-portal-black\"></div>\r\n <div\r\n #dragCom\r\n class=\"x-color-picker-portal-cursor\"\r\n [style.left.px]=\"transformX()\"\r\n [style.top.px]=\"transformY()\"\r\n cdkDrag\r\n [cdkDragBoundary]=\"panelRef\"\r\n (cdkDragStarted)=\"started()\"\r\n (cdkDragEnded)=\"ended()\"\r\n (cdkDragMoved)=\"moved($event)\"\r\n ></div>\r\n </div>\r\n </div>\r\n <div class=\"x-color-picker-portal-tool\">\r\n <div class=\"x-color-picker-portal-operations\">\r\n <!-- <x-button icon=\"fto-edit-2\" onlyIcon></x-button> -->\r\n <div class=\"x-color-picker-portal-selected\">\r\n <div [style.background-color]=\"value()\"></div>\r\n </div>\r\n <div class=\"x-color-picker-portal-area\">\r\n <div class=\"x-color-picker-portal-slider\">\r\n <x-slider-select\r\n [style.width.%]=\"100\"\r\n [(ngModel)]=\"hsla().h\"\r\n min=\"0\"\r\n max=\"360\"\r\n step=\"1\"\r\n (dragStartEmit)=\"started()\"\r\n (dragEndEmit)=\"ended()\"\r\n (ngModelChange)=\"hueChange()\"\r\n ></x-slider-select>\r\n </div>\r\n <div class=\"x-color-picker-portal-transparent\">\r\n <x-slider-select\r\n [style.width.%]=\"100\"\r\n #transparentCom\r\n [(ngModel)]=\"hsla().a\"\r\n min=\"0\"\r\n max=\"1\"\r\n step=\"0.01\"\r\n (dragStarted)=\"started()\"\r\n (dragEnded)=\"ended()\"\r\n (ngModelChange)=\"transparentChange()\"\r\n ></x-slider-select>\r\n <div class=\"x-color-picker-portal-alpha\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"x-color-picker-portal-type\">\r\n <x-tabs animated=\"false\" justify=\"center\">\r\n <x-tab label=\"HEX\">\r\n <div class=\"x-color-picker-portal-type-content\">\r\n <x-input [style.width.%]=\"100\" [(ngModel)]=\"hex\" (ngModelChange)=\"hexChange()\"></x-input>\r\n </div>\r\n </x-tab>\r\n <x-tab label=\"RGBA\">\r\n <div class=\"x-color-picker-portal-type-content\">\r\n <x-input [(ngModel)]=\"rgba().r\" disabled></x-input>\r\n <x-input [(ngModel)]=\"rgba().g\" disabled></x-input>\r\n <x-input [(ngModel)]=\"rgba().b\" disabled></x-input>\r\n <x-input [(ngModel)]=\"rgba().a\" disabled></x-input>\r\n </div>\r\n </x-tab>\r\n <x-tab label=\"HSLA\">\r\n <div class=\"x-color-picker-portal-type-content\">\r\n <x-input [(ngModel)]=\"hsla().h\" disabled></x-input>\r\n <x-input [(ngModel)]=\"hsla().sp\" disabled></x-input>\r\n <x-input [(ngModel)]=\"hsla().lp\" disabled></x-input>\r\n <x-input [(ngModel)]=\"hsla().a\" disabled></x-input>\r\n </div>\r\n </x-tab>\r\n </x-tabs>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.x-color-picker-portal{margin:.0625rem 0;font-size:var(--x-font-size);color:var(--x-text);border-radius:var(--x-border-small-radius);box-shadow:var(--x-box-shadow);background-color:var(--x-background-100);width:17rem;overflow:hidden}.x-color-picker-portal:focus{outline:none}.x-color-picker-portal-panel{padding:.375rem;margin:-.375rem}.x-color-picker-portal-plate{width:100%;height:8rem;display:flex;border-radius:var(--x-border-small-radius);position:relative}.x-color-picker-portal-white,.x-color-picker-portal-black{position:absolute;inset:0}.x-color-picker-portal-white{background:linear-gradient(90deg,#fff,#fff0)}.x-color-picker-portal-black{background:linear-gradient(0deg,#000,transparent)}.x-color-picker-portal-cursor{position:absolute;width:.75rem;height:.75rem;display:inline-block;border-radius:50%;border:.0625rem solid var(--x-background-100)}.x-color-picker-portal-tool{padding:.4rem}.x-color-picker-portal-operations{display:flex;align-items:center;padding:.4rem 0}.x-color-picker-portal-selected{margin-left:.4rem;width:2rem;height:2rem;border-radius:2rem;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.x-color-picker-portal-selected>div{width:2rem;height:2rem;border-radius:2rem}.x-color-picker-portal-area{margin-left:.4rem;position:relative;flex:1}.x-color-picker-portal-area .x-slider-select:hover:not(.x-disabled) .x-slider-select-process{background-color:transparent}.x-color-picker-portal-area .x-slider-select>.x-slider-select-inner .x-slider-select-rail{height:.75rem}.x-color-picker-portal-area .x-slider-select>.x-slider-select-inner .x-slider-select-process{background-color:transparent}.x-color-picker-portal-area .x-slider-select>.x-slider-select-inner>.x-slider-select-drags>.x-slider-select-drag>.x-slider-select-button{border-color:var(--x-border);box-shadow:var(--x-box-shadow)}.x-color-picker-portal-slider{position:relative;width:100%;display:flex;align-items:center}.x-color-picker-portal-slider .x-slider-select>.x-slider-select-inner>.x-slider-select-rail{background:linear-gradient(90deg,red 0,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.x-color-picker-portal-transparent{position:relative;width:100%;display:flex;align-items:center}.x-color-picker-portal-transparent .x-slider-select>.x-slider-select-inner>.x-slider-select-rail{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAwAAAAMCAIAAADZF8uwAAAAGUlEQVQYV2M4gwH+YwCGIasIUwhT25BVBADtzYNYrHvv4gAAAABJRU5ErkJggg==)}.x-color-picker-portal-type .x-tabs .x-tabs-list{display:flex;justify-content:center}.x-color-picker-portal-type-content{padding:.25rem;display:flex}.x-color-picker-portal-type-content .x-input .x-input-row input{text-align:center}\n"] }]
528
528
  }], propDecorators: { getPlacement: [{
529
529
  type: HostBinding,
530
530
  args: ['@x-connect-base-animation']
@@ -705,20 +705,20 @@ class XColorPickerComponent extends XColorPickerProperty {
705
705
  setPortal() {
706
706
  this.portalAttached() && this.portalOverlayRef()?.updatePositionStrategy(this.setPlacement());
707
707
  }
708
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XColorPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
709
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.2", type: XColorPickerComponent, isStandalone: true, selector: "x-color-picker", providers: [XValueAccessor(XColorPickerComponent)], viewQueries: [{ propertyName: "colorPicker", first: true, predicate: ["colorPicker"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "inputCom", first: true, predicate: ["inputCom"], descendants: true, read: XInputComponent, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div #colorPicker class=\"x-color-picker\">\r\n <div class=\"x-color-picker-row\">\r\n <x-input\r\n #inputCom\r\n type=\"text\"\r\n [label]=\"label()\"\r\n [labelWidth]=\"labelWidth()\"\r\n [labelAlign]=\"labelAlign()\"\r\n [justify]=\"justify()\"\r\n [align]=\"align()\"\r\n [direction]=\"direction()\"\r\n [disabled]=\"disabledComputed()\"\r\n [required]=\"requiredComputed()\"\r\n [validator]=\"validatorComputed()\"\r\n [inputValidator]=\"inputValidator()\"\r\n [icon]=\"icon()\"\r\n [placeholder]=\"placeholder()\"\r\n [readonly]=\"readonly()\"\r\n [clearable]=\"clearable()\"\r\n [(ngModel)]=\"value\"\r\n [valueTpl]=\"valueTpl() ? valueTpl() : valueTemplate\"\r\n [valueTplContext]=\"valueTplContext()\"\r\n [size]=\"size()\"\r\n [bordered]=\"bordered()\"\r\n [before]=\"before()\"\r\n [after]=\"after()\"\r\n [pattern]=\"patternComputed()\"\r\n [message]=\"messageComputed()\"\r\n [pointer]=\"pointer()\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (xClick)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n\r\n <ng-template #valueTemplate>\r\n <div class=\"x-color-picker-template-value\">\r\n <div class=\"x-color-picker-template-color\" [style]=\"inputStyle()\"></div>\r\n </div>\r\n </ng-template>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-color-picker{display:inline-block;width:12rem}.x-color-picker{margin:0;padding:0}.x-color-picker{width:100%}.x-color-picker x-input{width:100%}.x-color-picker x-input .x-input-value-template-value{left:.25rem!important;width:calc(100% - 2.4rem)!important}.x-color-picker-template-value{width:100%;height:100%;padding:.25rem 0;content:\" \";position:absolute;display:flex;align-items:center;justify-content:center}.x-color-picker-template-color{width:100%;height:100%;border-radius:var(--x-border-small-radius)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: XInputComponent, selector: "x-input" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
708
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: XColorPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
709
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "19.0.1", type: XColorPickerComponent, isStandalone: true, selector: "x-color-picker", providers: [XValueAccessor(XColorPickerComponent)], viewQueries: [{ propertyName: "colorPicker", first: true, predicate: ["colorPicker"], descendants: true, read: ElementRef, isSignal: true }, { propertyName: "inputCom", first: true, predicate: ["inputCom"], descendants: true, read: XInputComponent, isSignal: true }], usesInheritance: true, ngImport: i0, template: "<div #colorPicker class=\"x-color-picker\">\r\n <div class=\"x-color-picker-row\">\r\n <x-input\r\n #inputCom\r\n type=\"text\"\r\n [label]=\"label()\"\r\n [labelWidth]=\"labelWidth()\"\r\n [labelAlign]=\"labelAlign()\"\r\n [justify]=\"justify()\"\r\n [align]=\"align()\"\r\n [direction]=\"direction()\"\r\n [disabled]=\"disabledComputed()\"\r\n [required]=\"requiredComputed()\"\r\n [validator]=\"validatorComputed()\"\r\n [inputValidator]=\"inputValidator()\"\r\n [icon]=\"icon()\"\r\n [placeholder]=\"placeholder()\"\r\n [readonly]=\"readonly()\"\r\n [clearable]=\"clearable()\"\r\n [(ngModel)]=\"value\"\r\n [valueTpl]=\"valueTpl() ? valueTpl() : valueTemplate\"\r\n [valueTplContext]=\"valueTplContext()\"\r\n [size]=\"size()\"\r\n [bordered]=\"bordered()\"\r\n [before]=\"before()\"\r\n [after]=\"after()\"\r\n [pattern]=\"patternComputed()\"\r\n [message]=\"messageComputed()\"\r\n [pointer]=\"pointer()\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (xClick)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n\r\n <ng-template #valueTemplate>\r\n <div class=\"x-color-picker-template-value\">\r\n <div class=\"x-color-picker-template-color\" [style]=\"inputStyle()\"></div>\r\n </div>\r\n </ng-template>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-color-picker{display:inline-block;width:12rem}.x-color-picker{margin:0;padding:0}.x-color-picker{width:100%}.x-color-picker x-input{width:100%}.x-color-picker x-input .x-input-value-template-value{left:.25rem!important;width:calc(100% - 2.4rem)!important}.x-color-picker-template-value{width:100%;height:100%;padding:.25rem 0;content:\" \";position:absolute;display:flex;align-items:center;justify-content:center}.x-color-picker-template-color{width:100%;height:100%;border-radius:var(--x-border-small-radius)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { kind: "directive", type: i1.PatternValidator, selector: "[pattern][formControlName],[pattern][formControl],[pattern][ngModel]", inputs: ["pattern"] }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "component", type: XInputComponent, selector: "x-input" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
710
710
  }
711
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XColorPickerComponent, decorators: [{
711
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: XColorPickerComponent, decorators: [{
712
712
  type: Component,
713
- args: [{ selector: 'x-color-picker', standalone: true, imports: [FormsModule, ReactiveFormsModule, XInputComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XColorPickerComponent)], template: "<div #colorPicker class=\"x-color-picker\">\r\n <div class=\"x-color-picker-row\">\r\n <x-input\r\n #inputCom\r\n type=\"text\"\r\n [label]=\"label()\"\r\n [labelWidth]=\"labelWidth()\"\r\n [labelAlign]=\"labelAlign()\"\r\n [justify]=\"justify()\"\r\n [align]=\"align()\"\r\n [direction]=\"direction()\"\r\n [disabled]=\"disabledComputed()\"\r\n [required]=\"requiredComputed()\"\r\n [validator]=\"validatorComputed()\"\r\n [inputValidator]=\"inputValidator()\"\r\n [icon]=\"icon()\"\r\n [placeholder]=\"placeholder()\"\r\n [readonly]=\"readonly()\"\r\n [clearable]=\"clearable()\"\r\n [(ngModel)]=\"value\"\r\n [valueTpl]=\"valueTpl() ? valueTpl() : valueTemplate\"\r\n [valueTplContext]=\"valueTplContext()\"\r\n [size]=\"size()\"\r\n [bordered]=\"bordered()\"\r\n [before]=\"before()\"\r\n [after]=\"after()\"\r\n [pattern]=\"patternComputed()\"\r\n [message]=\"messageComputed()\"\r\n [pointer]=\"pointer()\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (xClick)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n\r\n <ng-template #valueTemplate>\r\n <div class=\"x-color-picker-template-value\">\r\n <div class=\"x-color-picker-template-color\" [style]=\"inputStyle()\"></div>\r\n </div>\r\n </ng-template>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-color-picker{display:inline-block;width:12rem}.x-color-picker{margin:0;padding:0}.x-color-picker{width:100%}.x-color-picker x-input{width:100%}.x-color-picker x-input .x-input-value-template-value{left:.25rem!important;width:calc(100% - 2.4rem)!important}.x-color-picker-template-value{width:100%;height:100%;padding:.25rem 0;content:\" \";position:absolute;display:flex;align-items:center;justify-content:center}.x-color-picker-template-color{width:100%;height:100%;border-radius:var(--x-border-small-radius)}\n"] }]
713
+ args: [{ selector: 'x-color-picker', imports: [FormsModule, ReactiveFormsModule, XInputComponent], encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, providers: [XValueAccessor(XColorPickerComponent)], template: "<div #colorPicker class=\"x-color-picker\">\r\n <div class=\"x-color-picker-row\">\r\n <x-input\r\n #inputCom\r\n type=\"text\"\r\n [label]=\"label()\"\r\n [labelWidth]=\"labelWidth()\"\r\n [labelAlign]=\"labelAlign()\"\r\n [justify]=\"justify()\"\r\n [align]=\"align()\"\r\n [direction]=\"direction()\"\r\n [disabled]=\"disabledComputed()\"\r\n [required]=\"requiredComputed()\"\r\n [validator]=\"validatorComputed()\"\r\n [inputValidator]=\"inputValidator()\"\r\n [icon]=\"icon()\"\r\n [placeholder]=\"placeholder()\"\r\n [readonly]=\"readonly()\"\r\n [clearable]=\"clearable()\"\r\n [(ngModel)]=\"value\"\r\n [valueTpl]=\"valueTpl() ? valueTpl() : valueTemplate\"\r\n [valueTplContext]=\"valueTplContext()\"\r\n [size]=\"size()\"\r\n [bordered]=\"bordered()\"\r\n [before]=\"before()\"\r\n [after]=\"after()\"\r\n [pattern]=\"patternComputed()\"\r\n [message]=\"messageComputed()\"\r\n [pointer]=\"pointer()\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (xClick)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n\r\n <ng-template #valueTemplate>\r\n <div class=\"x-color-picker-template-value\">\r\n <div class=\"x-color-picker-template-color\" [style]=\"inputStyle()\"></div>\r\n </div>\r\n </ng-template>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";x-color-picker{display:inline-block;width:12rem}.x-color-picker{margin:0;padding:0}.x-color-picker{width:100%}.x-color-picker x-input{width:100%}.x-color-picker x-input .x-input-value-template-value{left:.25rem!important;width:calc(100% - 2.4rem)!important}.x-color-picker-template-value{width:100%;height:100%;padding:.25rem 0;content:\" \";position:absolute;display:flex;align-items:center;justify-content:center}.x-color-picker-template-color{width:100%;height:100%;border-radius:var(--x-border-small-radius)}\n"] }]
714
714
  }], ctorParameters: () => [] });
715
715
 
716
716
  class XColorPickerModule {
717
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XColorPickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
718
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: XColorPickerModule, imports: [XColorPickerComponent], exports: [XColorPickerComponent] }); }
719
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XColorPickerModule, imports: [XColorPickerComponent] }); }
717
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: XColorPickerModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
718
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.1", ngImport: i0, type: XColorPickerModule, imports: [XColorPickerComponent], exports: [XColorPickerComponent] }); }
719
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: XColorPickerModule, imports: [XColorPickerComponent] }); }
720
720
  }
721
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XColorPickerModule, decorators: [{
721
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: XColorPickerModule, decorators: [{
722
722
  type: NgModule,
723
723
  args: [{
724
724
  imports: [XColorPickerComponent],
@@ -1 +1 @@
1
- {"version":3,"file":"ng-nest-ui-color-picker.mjs","sources":["../../../../lib/ng-nest/ui/color-picker/color-picker.property.ts","../../../../lib/ng-nest/ui/color-picker/color-picker-portal.component.ts","../../../../lib/ng-nest/ui/color-picker/color-picker-portal.component.html","../../../../lib/ng-nest/ui/color-picker/color-picker.component.ts","../../../../lib/ng-nest/ui/color-picker/color-picker.component.html","../../../../lib/ng-nest/ui/color-picker/color-picker.module.ts","../../../../lib/ng-nest/ui/color-picker/ng-nest-ui-color-picker.ts"],"sourcesContent":["import { XToBoolean, XToCssPixelValue } from '@ng-nest/ui/core';\r\nimport { Component, TemplateRef, input, model } from '@angular/core';\r\nimport { XFormControlFunction, XFormOption } from '@ng-nest/ui/base-form';\r\nimport type { XAlign, XBoolean, XCorner, XDirection, XJustify, XNumber, XSize, XTemplate } from '@ng-nest/ui/core';\r\n\r\n/**\r\n * ColorPicker\r\n * @selector x-color-picker\r\n * @decorator component\r\n */\r\nexport const XColorPickerPrefix = 'x-color-picker';\r\nconst X_COLOR_CONFIG_NAME = 'colorPicker';\r\n\r\n/**\r\n * ColorPicker Property\r\n */\r\n@Component({ selector: `${XColorPickerPrefix}-property`, template: '' })\r\nexport class XColorPickerProperty extends XFormControlFunction(X_COLOR_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 展示方位\r\n * @en_US Display position\r\n */\r\n readonly placement = input<XCorner>(this.config?.placement ?? 'bottom-start');\r\n /**\r\n * @zh_CN 显示边框\r\n * @en_US Display Border\r\n */\r\n readonly bordered = input<boolean, XBoolean>(this.config?.bordered ?? true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n override readonly size = input<XSize>(this.config?.size ?? 'medium');\r\n /**\r\n * @zh_CN 输入框点击样式\r\n * @en_US Input pointer\r\n */\r\n override readonly pointer = input<boolean, XBoolean>(true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 标签\r\n * @en_US Label\r\n */\r\n override readonly label = input<string>('');\r\n /**\r\n * @zh_CN 标签宽度\r\n * @en_US Label width\r\n */\r\n override readonly labelWidth = input<string, XNumber>('', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 标签文字对齐方式\r\n * @en_US Label text alignment method\r\n */\r\n override readonly labelAlign = input<XAlign>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素水平排列方式\r\n * @en_US The level of sub-element level arrangement under flex layout\r\n */\r\n override readonly justify = input<XJustify>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素垂直排列方式\r\n * @en_US sub-element vertical arrangement method under flex layout\r\n */\r\n override readonly align = input<XAlign>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素排列方向\r\n * @en_US The direction of the sub-element arrangement under flex layout\r\n */\r\n override readonly direction = input<XDirection>('column');\r\n /**\r\n * @zh_CN 输入提示信息\r\n * @en_US Enter prompt information\r\n */\r\n override readonly placeholder = input<string | string[]>('');\r\n /**\r\n * @zh_CN 禁用\r\n * @en_US Disabled\r\n */\r\n override readonly disabled = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 必填\r\n * @en_US Required\r\n */\r\n override readonly required = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 只读\r\n * @en_US Readonly\r\n */\r\n override readonly readonly = input<boolean, XBoolean>(true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 值模板\r\n * @en_US Node template\r\n */\r\n override readonly valueTpl = input<TemplateRef<any>>();\r\n /**\r\n * @zh_CN 值模板参数\r\n * @en_US Node template\r\n */\r\n override readonly valueTplContext = input();\r\n /**\r\n * @zh_CN 前置标签\r\n * @en_US Before label\r\n */\r\n override readonly before = input<XTemplate>();\r\n /**\r\n * @zh_CN 后置标签\r\n * @en_US After label\r\n */\r\n override readonly after = input<XTemplate>();\r\n /**\r\n * @zh_CN 正则验证规则\r\n * @en_US Regular verification rules\r\n */\r\n override readonly pattern = input<RegExp | RegExp[] | any>(null);\r\n /**\r\n * @zh_CN 验证不通过提示文字\r\n * @en_US Verify not pass the prompt text\r\n */\r\n override readonly message = input<string | string[]>([]);\r\n /**\r\n * @zh_CN 激活状态\r\n * @en_US Activation state\r\n */\r\n override readonly active = model<boolean>(false);\r\n /**\r\n * @zh_CN 输入验证函数\r\n * @en_US Enter the verification function\r\n */\r\n override readonly inputValidator = input<(value: any) => boolean>();\r\n}\r\n\r\n/**\r\n * ColorPicker Option\r\n */\r\nexport interface XColorPickerOption extends XFormOption {\r\n /**\r\n * @zh_CN 展示方位\r\n * @en_US Display position\r\n */\r\n placement?: XCorner;\r\n /**\r\n * @zh_CN 显示边框\r\n * @en_US Display Border\r\n */\r\n bordered?: boolean;\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n size?: XSize;\r\n /**\r\n * @zh_CN 输入框点击样式\r\n * @en_US Input pointer\r\n */\r\n pointer?: boolean;\r\n /**\r\n * @zh_CN 标签\r\n * @en_US Label\r\n */\r\n label?: string;\r\n /**\r\n * @zh_CN 标签宽度\r\n * @en_US Label width\r\n */\r\n labelWidth?: string;\r\n /**\r\n * @zh_CN 标签文字对齐方式\r\n * @en_US Label text alignment method\r\n */\r\n labelAlign?: XAlign;\r\n /**\r\n * @zh_CN flex 布局下的子元素水平排列方式\r\n * @en_US The level of sub-element level arrangement under flex layout\r\n */\r\n justify?: XJustify;\r\n /**\r\n * @zh_CN flex 布局下的子元素垂直排列方式\r\n * @en_US sub-element vertical arrangement method under flex layout\r\n */\r\n align?: XAlign;\r\n /**\r\n * @zh_CN flex 布局下的子元素排列方向\r\n * @en_US The direction of the sub-element arrangement under flex layout\r\n */\r\n direction?: XDirection;\r\n /**\r\n * @zh_CN 输入提示信息\r\n * @en_US Enter prompt information\r\n */\r\n placeholder?: string;\r\n /**\r\n * @zh_CN 禁用\r\n * @en_US Disabled\r\n */\r\n disabled?: boolean;\r\n /**\r\n * @zh_CN 必填\r\n * @en_US Required\r\n */\r\n required?: boolean;\r\n /**\r\n * @zh_CN 只读\r\n * @en_US Readonly\r\n */\r\n readonly?: boolean;\r\n /**\r\n * @zh_CN 值模板\r\n * @en_US Node template\r\n */\r\n valueTpl?: TemplateRef<any>;\r\n /**\r\n * @zh_CN 值模板参数\r\n * @en_US Node template\r\n */\r\n valueTplContext?: any;\r\n /**\r\n * @zh_CN 前置标签\r\n * @en_US Before label\r\n */\r\n before?: XTemplate;\r\n /**\r\n * @zh_CN 后置标签\r\n * @en_US After label\r\n */\r\n after?: XTemplate;\r\n /**\r\n * @zh_CN 正则验证规则\r\n * @en_US Regular verification rules\r\n */\r\n pattern?: RegExp | RegExp[];\r\n /**\r\n * @zh_CN 验证不通过提示文字\r\n * @en_US Verify not pass the prompt text\r\n */\r\n message?: string | string[];\r\n /**\r\n * @zh_CN 激活状态\r\n * @en_US Activation state\r\n */\r\n active?: boolean;\r\n /**\r\n * @zh_CN 输入验证函数\r\n * @en_US Enter the verification function\r\n */\r\n inputValidator?: (value: any) => boolean;\r\n}\r\n\r\n/**\r\n * @zh_CN 颜色种类\r\n * @en_US Color type\r\n */\r\nexport type XColorType = 'hex' | 'rgba' | 'hsla';\r\n\r\n/**\r\n * ColorPicker-Portal\r\n * @selector x-color-picker-portal\r\n * @decorator component\r\n */\r\nexport const XColorPickerPortalPrefix = 'x-color-picker-portal';\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n OnInit,\r\n ElementRef,\r\n Renderer2,\r\n HostListener,\r\n HostBinding,\r\n inject,\r\n input,\r\n output,\r\n model,\r\n viewChild,\r\n signal,\r\n DestroyRef\r\n} from '@angular/core';\r\nimport { XColorPickerPortalPrefix, XColorType } from './color-picker.property';\r\nimport { XConnectBaseAnimation, XPositionTopBottom } from '@ng-nest/ui/core';\r\nimport { XSliderSelectComponent } from '@ng-nest/ui/slider-select';\r\nimport { Subject } from 'rxjs';\r\nimport { CdkDragMove } from '@angular/cdk/drag-drop';\r\nimport { DecimalPipe, PercentPipe } from '@angular/common';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { XTabsComponent, XTabComponent } from '@ng-nest/ui/tabs';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: `${XColorPickerPortalPrefix}`,\r\n standalone: true,\r\n imports: [FormsModule, DragDropModule, XSliderSelectComponent, XTabsComponent, XTabComponent, XInputComponent],\r\n templateUrl: './color-picker-portal.component.html',\r\n styleUrls: ['./color-picker-portal.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [DecimalPipe, PercentPipe],\r\n animations: [XConnectBaseAnimation]\r\n})\r\nexport class XColorPickerPortalComponent implements OnInit {\r\n @HostBinding('@x-connect-base-animation') public get getPlacement() {\r\n return this.placement();\r\n }\r\n @HostListener('@x-connect-base-animation.done', ['$event']) done() {\r\n if (this.destroy()) return;\r\n this.animating.emit(false);\r\n }\r\n @HostListener('@x-connect-base-animation.start', ['$event']) start() {\r\n if (this.destroy()) return;\r\n this.animating.emit(true);\r\n }\r\n\r\n panelRef = viewChild.required('panelRef', { read: ElementRef<HTMLElement> });\r\n plateRef = viewChild.required('plateRef', { read: ElementRef<HTMLElement> });\r\n transparentCom = viewChild.required('transparentCom', { read: XSliderSelectComponent });\r\n value = model<string>('');\r\n inputCom = input<XInputComponent>();\r\n placement = input<XPositionTopBottom>();\r\n\r\n animating = output<boolean>();\r\n nodeClick = output<string>();\r\n\r\n transparentRail = signal<HTMLElement | null>(null);\r\n sliderColorNum = signal(0);\r\n type = signal<XColorType | null>(null);\r\n offset = signal(0);\r\n panel = signal<DOMRect | null>(null);\r\n plate = signal<DOMRect | null>(null);\r\n transformX = signal(0);\r\n transformY = signal(0);\r\n initTransformX = signal(0);\r\n initTransformY = signal(0);\r\n drag = signal(false);\r\n\r\n rgba = signal<{ r?: number; g?: number; b?: number; a?: number }>({ a: 1 });\r\n hsla = signal<{ h?: number; s?: number; l?: number; a?: number; sp?: string; lp?: string }>({\r\n h: 0,\r\n a: 1\r\n });\r\n hex = signal<string>('');\r\n\r\n destroy = signal(false);\r\n private unSubject = new Subject<void>();\r\n private destroyRef = inject(DestroyRef);\r\n\r\n private renderer = inject(Renderer2);\r\n private decimal = inject(DecimalPipe);\r\n private percent = inject(PercentPipe);\r\n\r\n ngOnInit(): void {\r\n this.colorConvert();\r\n this.destroyRef.onDestroy(() => {\r\n this.destroy.set(true);\r\n this.unSubject.next();\r\n this.unSubject.complete();\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.panel.set(this.panelRef().nativeElement.getBoundingClientRect());\r\n this.plate.set(this.plateRef().nativeElement.getBoundingClientRect());\r\n this.offset.set((this.panel()!.width - this.plate()!.width) / 2);\r\n this.transparentRail.set(\r\n this.transparentCom().elementRef.nativeElement.querySelector('.x-slider-select-rail div')!\r\n );\r\n this.setTransform();\r\n this.setPlateBackground();\r\n this.setRailBackground();\r\n }\r\n\r\n hexChange() {\r\n if (this.drag() || !/(^#[0-9A-F]{6}$)/i.test(this.hex())) return;\r\n this.rgba.set(this.hexToRgba(this.hex()));\r\n this.hsla.set(this.rgbaToHsla(this.rgba()));\r\n this.setHslaPercent();\r\n this.setTransform();\r\n this.setPlateBackground();\r\n this.setValue();\r\n }\r\n\r\n stopPropagation(event: Event): void {\r\n event.stopPropagation();\r\n }\r\n\r\n colorConvert() {\r\n const value = this.value()!;\r\n if (/^#/.test(value)) {\r\n this.hex.set(value);\r\n this.rgba.set(this.hexToRgba(this.hex()));\r\n this.hsla.set(this.rgbaToHsla(this.rgba()));\r\n this.setHslaPercent();\r\n this.type.set('hex');\r\n } else if (/rgb/.test(value)) {\r\n this.rgbaConvert(value);\r\n this.hex.set(this.rgbaToHex(this.rgba()));\r\n this.hsla.set(this.rgbaToHsla(this.rgba()));\r\n this.setHslaPercent();\r\n this.type.set('rgba');\r\n } else if (/hsl/.test(value)) {\r\n this.hslaConvert(value);\r\n this.rgba.set(this.hslaToRgba(this.hsla()));\r\n this.hex.set(this.rgbaToHex(this.rgba()));\r\n this.type.set('hsla');\r\n }\r\n }\r\n\r\n rgbaConvert(str: string) {\r\n let rgba = str\r\n .replace(/rgba?\\(/, '')\r\n .replace(/rgb?\\(/, '')\r\n .replace(/\\)/, '')\r\n .replace(/[\\s+]/g, '')\r\n .split(',');\r\n if (rgba.length > 2) {\r\n this.rgba.set({\r\n r: Number(rgba[0]),\r\n g: Number(rgba[1]),\r\n b: Number(rgba[2]),\r\n a: Number(rgba.length > 3 ? rgba[3] : 1)\r\n });\r\n }\r\n }\r\n\r\n hslaConvert(str: string) {\r\n let hsla = str\r\n .replace(/hsla?\\(/, '')\r\n .replace(/hsl?\\(/, '')\r\n .replace(/\\)/, '')\r\n .replace(/[\\s+]/g, '')\r\n .split(',');\r\n if (hsla.length > 2) {\r\n this.hsla.set({\r\n h: Number(hsla[0]),\r\n s: Number(hsla[1].replace('%', '')) / 100,\r\n l: Number(hsla[2].replace('%', '')) / 100,\r\n a: Number(hsla.length > 3 ? hsla[3] : 1)\r\n });\r\n this.setHslaPercent();\r\n }\r\n }\r\n\r\n plateClick(event: MouseEvent) {\r\n if (this.drag()) return;\r\n const rect = this.plateRef().nativeElement.getBoundingClientRect();\r\n const left = event.clientX - rect.left;\r\n const top = event.clientY - rect.top;\r\n this.transformX.set(left - this.offset());\r\n this.transformY.set(top - this.offset());\r\n this.initTransformX.set(this.transformX());\r\n this.initTransformY.set(this.transformY());\r\n this.setLetfTop(left, top);\r\n }\r\n\r\n setTransform() {\r\n let hsv = this.hslToHsv(this.hsla().h!, this.hsla().s!, this.hsla().l!);\r\n this.transformX.set(hsv.s * this.plate()!.width - this.offset());\r\n this.transformY.set((1 - hsv.v) * this.plate()!.height - this.offset());\r\n this.initTransformX.set(this.transformX());\r\n this.initTransformY.set(this.transformY());\r\n }\r\n\r\n started() {\r\n this.drag.set(true);\r\n }\r\n\r\n ended() {\r\n this.initTransformX.set(this.transformX());\r\n this.initTransformY.set(this.transformY());\r\n setTimeout(() => {\r\n this.drag.set(false);\r\n });\r\n }\r\n\r\n moved(drag: CdkDragMove) {\r\n const transform = drag.source.getFreeDragPosition();\r\n drag.source.reset();\r\n this.transformX.set(transform.x + this.initTransformX());\r\n this.transformY.set(transform.y + this.initTransformY());\r\n\r\n const left = this.transformX() + this.offset();\r\n const top = this.transformY() + this.offset();\r\n this.setLetfTop(left, top);\r\n }\r\n\r\n setLetfTop(left: number, top: number) {\r\n let s = left / this.plate()!.width;\r\n let v = 1 - top / this.plate()!.height;\r\n let l = ((2 - s) * v) / 2;\r\n if (l !== 0) {\r\n if (l === 1) {\r\n s = 0;\r\n } else if (l < 0.5) {\r\n s = (s * v) / (l * 2);\r\n } else {\r\n s = (s * v) / (2 - l * 2);\r\n }\r\n }\r\n this.hsla.update((x) => {\r\n x.s = Number(this.decimal.transform(s, '1.2-2'));\r\n x.l = Number(this.decimal.transform(l, '1.2-2'));\r\n return { ...x };\r\n });\r\n this.setHslaPercent();\r\n this.rgba.set(this.hslaToRgba(this.hsla()));\r\n this.hex.set(this.rgbaToHex(this.rgba()));\r\n this.setValue();\r\n }\r\n\r\n setHslaPercent() {\r\n this.hsla.update((x) => {\r\n x.sp = this.hsla().s === 0 ? '0%' : (this.percent.transform(this.hsla().s, '1.0-0') as string);\r\n return { ...x };\r\n });\r\n this.hsla.update((x) => {\r\n x.lp = this.hsla().l === 0 ? '0%' : (this.percent.transform(this.hsla().l, '1.0-0') as string);\r\n return { ...x };\r\n });\r\n }\r\n\r\n hueChange() {\r\n this.setPlateBackground();\r\n this.rgba.set(this.hslaToRgba(this.hsla()));\r\n this.hex.set(this.rgbaToHex(this.rgba()));\r\n this.setValue();\r\n }\r\n\r\n setPlateBackground() {\r\n this.renderer.setStyle(this.plateRef().nativeElement, 'background-color', `hsl(${this.hsla().h}, 100%, 50%)`);\r\n }\r\n\r\n setRailBackground() {\r\n this.renderer.setStyle(\r\n this.transparentRail(),\r\n 'background',\r\n `linear-gradient(to right, rgba(${this.rgba().r}, ${this.rgba().g}, ${this.rgba().b}, 0) 0%, rgba(${this.rgba().r}, ${this.rgba().g}, ${this.rgba().b}, 1) 100%)`\r\n );\r\n }\r\n\r\n transparentChange() {\r\n this.rgba.set(this.hslaToRgba(this.hsla()));\r\n this.hex.set(this.rgbaToHex(this.rgba()));\r\n this.setValue();\r\n }\r\n\r\n setValue() {\r\n this.setValueByType();\r\n this.setRailBackground();\r\n this.nodeClick.emit(this.value());\r\n }\r\n\r\n setValueByType() {\r\n if (this.type() === 'hex') {\r\n this.value.set(`${this.hex()}`);\r\n } else if (this.type() === 'rgba') {\r\n this.value.set(`rgba(${this.rgba().r}, ${this.rgba().g}, ${this.rgba().b}, ${this.rgba().a})`);\r\n } else if (this.type() === 'hsla') {\r\n this.value.set(`hsla(${this.hsla().h}, ${this.hsla().sp}, ${this.hsla().lp}, ${this.hsla().a})`);\r\n }\r\n }\r\n\r\n hslaToRgba(hsla: { h?: number; s?: number; l?: number; a?: number }) {\r\n let r, g, b;\r\n let [h, s, l] = [hsla.h as number, hsla.s as number, hsla.l as number];\r\n if (s == 0) {\r\n r = g = b = l;\r\n } else {\r\n let hue2rgb = (p: number, q: number, t: number) => {\r\n if (t < 0) t += 1;\r\n if (t > 1) t -= 1;\r\n if (t < 1 / 6) return p + (q - p) * 6 * t;\r\n if (t < 1 / 2) return q;\r\n if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;\r\n return p;\r\n };\r\n\r\n let q = l < 0.5 ? l * (1 + s) : l + s - l * s;\r\n let p = 2 * l - q;\r\n r = hue2rgb(p, q, h / 360 + 1 / 3);\r\n g = hue2rgb(p, q, h / 360);\r\n b = hue2rgb(p, q, h / 360 - 1 / 3);\r\n }\r\n return {\r\n r: Math.round(r * 255),\r\n g: Math.round(g * 255),\r\n b: Math.round(b * 255),\r\n a: Number(hsla.a)\r\n };\r\n }\r\n\r\n rgbaToHex(rgba: { r?: number; g?: number; b?: number; a?: number }) {\r\n let hex = [\r\n (rgba.r as number).toString(16),\r\n (rgba.g as number).toString(16),\r\n (rgba.b as number).toString(16),\r\n Math.round(255 * (rgba.a as number)).toString(16)\r\n ];\r\n hex.forEach((x, index) => {\r\n if (index === 3 && x === 'ff') {\r\n hex[index] = '';\r\n }\r\n if (x.length === 1) {\r\n hex[index] = '0' + x;\r\n }\r\n });\r\n return `#${hex.join('')}`;\r\n }\r\n\r\n rgbaToHsla(rgba: { r?: number; g?: number; b?: number; a?: number }) {\r\n let [r, g, b] = [(rgba.r as number) / 255, (rgba.g as number) / 255, (rgba.b as number) / 255];\r\n let [max, min] = [Math.max(r, g, b), Math.min(r, g, b)];\r\n let h = 0;\r\n let s = 0;\r\n let l = (max + min) / 2;\r\n\r\n if (max === min) {\r\n h = s = 0;\r\n } else {\r\n let d = max - min;\r\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\r\n switch (max) {\r\n case r:\r\n h = (g - b) / d + (g < b ? 6 : 0);\r\n break;\r\n case g:\r\n h = (b - r) / d + 2;\r\n break;\r\n case b:\r\n h = (r - g) / d + 4;\r\n break;\r\n }\r\n h /= 6;\r\n }\r\n\r\n return {\r\n h: Math.round(h * 360),\r\n s: Number(this.decimal.transform(s, '1.2-2')),\r\n l: Number(this.decimal.transform(l, '1.2-2')),\r\n a: Number(rgba.a)\r\n };\r\n }\r\n\r\n hexToRgba(hex: string) {\r\n let hexNum = hex.substring(1);\r\n let a = 1;\r\n if (hexNum.length === 8) {\r\n a = Number(this.decimal.transform(Number('0x' + hexNum.slice(-2)) / 255, '1.2-2'));\r\n hexNum = hexNum.substring(0, hexNum.length - 2);\r\n }\r\n let num = Number('0x' + (hexNum.length < 6 ? this.repeatLetter(hexNum, 2) : hexNum));\r\n return { r: num >> 16, g: (num >> 8) & 0xff, b: num & 0xff, a: a };\r\n }\r\n\r\n hslToHsv(h: number, s: number, l: number) {\r\n let hHsv, sHsv, v;\r\n\r\n hHsv = h;\r\n\r\n if (l == 0) {\r\n sHsv = 0;\r\n v = 0;\r\n } else if (l > 0 && l <= 0.5) {\r\n sHsv = (2 * s) / (1 + s);\r\n v = l * (1 + s);\r\n } else {\r\n sHsv = (2 * s - 2 * s * l) / (s - s * l + l);\r\n v = s - s * l + l;\r\n }\r\n\r\n return {\r\n h: hHsv,\r\n s: Number(this.decimal.transform(sHsv, '1.2-2')),\r\n v: Number(this.decimal.transform(v, '1.2-2'))\r\n };\r\n }\r\n\r\n repeatWord(word: string, num: number) {\r\n let result = '';\r\n for (let i = 0; i < num; i++) {\r\n result += word;\r\n }\r\n return result;\r\n }\r\n\r\n repeatLetter(word: string, num: number) {\r\n let result = '';\r\n for (let letter of word) {\r\n result += this.repeatWord(letter, num);\r\n }\r\n return result;\r\n }\r\n}\r\n","<div class=\"x-color-picker-portal\" tabindex=\"-1\" (click)=\"stopPropagation($event)\">\r\n <div #panelRef class=\"x-color-picker-portal-panel\">\r\n <div #plateRef class=\"x-color-picker-portal-plate\" (click)=\"plateClick($event)\">\r\n <div class=\"x-color-picker-portal-white\"></div>\r\n <div class=\"x-color-picker-portal-black\"></div>\r\n <div\r\n #dragCom\r\n class=\"x-color-picker-portal-cursor\"\r\n [style.left.px]=\"transformX()\"\r\n [style.top.px]=\"transformY()\"\r\n cdkDrag\r\n [cdkDragBoundary]=\"panelRef\"\r\n (cdkDragStarted)=\"started()\"\r\n (cdkDragEnded)=\"ended()\"\r\n (cdkDragMoved)=\"moved($event)\"\r\n ></div>\r\n </div>\r\n </div>\r\n <div class=\"x-color-picker-portal-tool\">\r\n <div class=\"x-color-picker-portal-operations\">\r\n <!-- <x-button icon=\"fto-edit-2\" onlyIcon></x-button> -->\r\n <div class=\"x-color-picker-portal-selected\">\r\n <div [style.background-color]=\"value()\"></div>\r\n </div>\r\n <div class=\"x-color-picker-portal-area\">\r\n <div class=\"x-color-picker-portal-slider\">\r\n <x-slider-select\r\n [style.width.%]=\"100\"\r\n [(ngModel)]=\"hsla().h\"\r\n min=\"0\"\r\n max=\"360\"\r\n step=\"1\"\r\n (dragStartEmit)=\"started()\"\r\n (dragEndEmit)=\"ended()\"\r\n (ngModelChange)=\"hueChange()\"\r\n ></x-slider-select>\r\n </div>\r\n <div class=\"x-color-picker-portal-transparent\">\r\n <x-slider-select\r\n [style.width.%]=\"100\"\r\n #transparentCom\r\n [(ngModel)]=\"hsla().a\"\r\n min=\"0\"\r\n max=\"1\"\r\n step=\"0.01\"\r\n (dragStarted)=\"started()\"\r\n (dragEnded)=\"ended()\"\r\n (ngModelChange)=\"transparentChange()\"\r\n ></x-slider-select>\r\n <div class=\"x-color-picker-portal-alpha\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"x-color-picker-portal-type\">\r\n <x-tabs animated=\"false\" justify=\"center\">\r\n <x-tab label=\"HEX\">\r\n <div class=\"x-color-picker-portal-type-content\">\r\n <x-input [style.width.%]=\"100\" [(ngModel)]=\"hex\" (ngModelChange)=\"hexChange()\"></x-input>\r\n </div>\r\n </x-tab>\r\n <x-tab label=\"RGBA\">\r\n <div class=\"x-color-picker-portal-type-content\">\r\n <x-input [(ngModel)]=\"rgba().r\" disabled></x-input>\r\n <x-input [(ngModel)]=\"rgba().g\" disabled></x-input>\r\n <x-input [(ngModel)]=\"rgba().b\" disabled></x-input>\r\n <x-input [(ngModel)]=\"rgba().a\" disabled></x-input>\r\n </div>\r\n </x-tab>\r\n <x-tab label=\"HSLA\">\r\n <div class=\"x-color-picker-portal-type-content\">\r\n <x-input [(ngModel)]=\"hsla().h\" disabled></x-input>\r\n <x-input [(ngModel)]=\"hsla().sp\" disabled></x-input>\r\n <x-input [(ngModel)]=\"hsla().lp\" disabled></x-input>\r\n <x-input [(ngModel)]=\"hsla().a\" disabled></x-input>\r\n </div>\r\n </x-tab>\r\n </x-tabs>\r\n </div>\r\n </div>\r\n</div>\r\n","import { XColorPickerPortalComponent } from './color-picker-portal.component';\r\nimport { XPortalService, XPortalOverlayRef, XPortalConnectedPosition } from '@ng-nest/ui/portal';\r\nimport { Subject, fromEvent } from 'rxjs';\r\nimport {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ElementRef,\r\n ViewContainerRef,\r\n inject,\r\n AfterViewInit,\r\n OnDestroy,\r\n viewChild,\r\n signal,\r\n computed,\r\n ComponentRef,\r\n effect\r\n} from '@angular/core';\r\nimport { XColorPickerProperty } from './color-picker.property';\r\nimport { XIsEmpty, XCorner, XParents, XPlacement, XComputed } from '@ng-nest/ui/core';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\nimport {\r\n Overlay,\r\n OverlayConfig,\r\n FlexibleConnectedPositionStrategy,\r\n ConnectedOverlayPositionChange,\r\n OverlayRef\r\n} from '@angular/cdk/overlay';\r\nimport { filter, takeUntil } from 'rxjs/operators';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'x-color-picker',\r\n standalone: true,\r\n imports: [FormsModule, ReactiveFormsModule, XInputComponent],\r\n templateUrl: './color-picker.component.html',\r\n styleUrls: ['./color-picker.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XColorPickerComponent)]\r\n})\r\nexport class XColorPickerComponent extends XColorPickerProperty implements OnInit, AfterViewInit, OnDestroy {\r\n colorPicker = viewChild.required('colorPicker', { read: ElementRef<HTMLElement> });\r\n inputCom = viewChild.required('inputCom', { read: XInputComponent });\r\n private doc = inject(DOCUMENT);\r\n primaryColor = XComputed(this.doc.documentElement).getPropertyValue('--x-primary').trim();\r\n\r\n inputStyle = computed(() => ({\r\n backgroundColor: this.value(),\r\n color: 'transparent'\r\n }));\r\n\r\n clearable = signal(false);\r\n enter = signal(false);\r\n animating = signal(false);\r\n displayValue = computed(() => this.value());\r\n portal!: XPortalOverlayRef<XColorPickerPortalComponent>;\r\n icon = signal('fto-chevron-down');\r\n closeSubject: Subject<void> = new Subject();\r\n document = inject(DOCUMENT);\r\n private unSubject = new Subject<void>();\r\n private portalService = inject(XPortalService);\r\n private viewContainerRef = inject(ViewContainerRef);\r\n private overlay = inject(Overlay);\r\n private elementRef = inject(ElementRef);\r\n\r\n private realPlacement = signal<XPlacement | null>(null);\r\n portalComponent = signal<ComponentRef<XColorPickerPortalComponent> | null>(null);\r\n portalOverlayRef = signal<OverlayRef | null>(null);\r\n\r\n constructor() {\r\n super();\r\n effect(() => this.portalComponent()?.setInput('value', this.value() || this.primaryColor));\r\n effect(() => this.portalComponent()?.setInput('placement', this.realPlacement()));\r\n effect(() => this.portalComponent()?.setInput('inputCom', this.inputCom()));\r\n }\r\n\r\n ngOnInit() {\r\n this.setSubject();\r\n this.setParantScroll();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.setPortal();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.unSubject.next();\r\n this.unSubject.complete();\r\n }\r\n\r\n setSubject() {\r\n this.closeSubject.pipe(takeUntil(this.unSubject)).subscribe(() => {\r\n this.closePortal();\r\n });\r\n }\r\n\r\n menter() {\r\n if (this.disabledComputed()) return;\r\n this.enter.set(true);\r\n if (!XIsEmpty(this.value())) {\r\n this.icon.set('');\r\n this.clearable.set(true);\r\n }\r\n }\r\n\r\n mleave() {\r\n if (this.disabledComputed()) return;\r\n this.enter.set(false);\r\n if (this.clearable()) {\r\n this.icon.set('fto-chevron-down');\r\n this.clearable.set(false);\r\n }\r\n }\r\n\r\n clearEmit() {\r\n this.value.set('');\r\n this.mleave();\r\n if (this.onChange) this.onChange(this.value());\r\n }\r\n\r\n portalAttached() {\r\n return this.portalOverlayRef()?.hasAttached();\r\n }\r\n\r\n closePortal() {\r\n if (this.portalAttached()) {\r\n this.portalOverlayRef()?.detach();\r\n this.active.set(false);\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n destroyPortal() {\r\n this.portalOverlayRef()?.dispose();\r\n }\r\n\r\n showPortal() {\r\n if (this.disabledComputed() || this.animating()) return;\r\n this.active.set(true);\r\n const config: OverlayConfig = {\r\n backdropClass: '',\r\n positionStrategy: this.setPlacement(),\r\n scrollStrategy: this.overlay.scrollStrategies.reposition()\r\n };\r\n this.setPosition(config);\r\n this.portal = this.portalService.attach({\r\n content: XColorPickerPortalComponent,\r\n viewContainerRef: this.viewContainerRef,\r\n overlayConfig: config\r\n });\r\n this.portal.overlayRef\r\n ?.outsidePointerEvents()\r\n .pipe(takeUntil(this.unSubject))\r\n .subscribe(() => {\r\n this.closeSubject.next();\r\n });\r\n this.setInstance();\r\n }\r\n\r\n setPosition(config: OverlayConfig) {\r\n let position = config.positionStrategy as FlexibleConnectedPositionStrategy;\r\n position.positionChanges.pipe(takeUntil(this.unSubject)).subscribe((pos: ConnectedOverlayPositionChange) => {\r\n const place = XPortalConnectedPosition.get(pos.connectionPair) as XCorner;\r\n if (place !== this.realPlacement()) {\r\n this.realPlacement.set(place);\r\n this.portalOverlayRef()?.updatePosition();\r\n }\r\n });\r\n }\r\n\r\n setParantScroll() {\r\n if (!this.document) return;\r\n const parents = XParents(this.elementRef.nativeElement);\r\n let firstScroll: HTMLElement | null = null;\r\n for (let item of parents) {\r\n if (item.clientHeight < item.scrollHeight) {\r\n firstScroll = item;\r\n break;\r\n }\r\n }\r\n if (firstScroll && firstScroll.tagName !== 'BODY') {\r\n fromEvent(firstScroll, 'scroll')\r\n .pipe(\r\n filter(() => this.portalAttached()!),\r\n takeUntil(this.unSubject)\r\n )\r\n .subscribe(() => {\r\n this.portalOverlayRef()?.updatePosition();\r\n const eract = this.elementRef.nativeElement.getBoundingClientRect();\r\n const frect = firstScroll!.getBoundingClientRect();\r\n if (eract.top + eract.height - frect.top < 0 || eract.bottom > frect.bottom) {\r\n this.closeSubject.next();\r\n }\r\n });\r\n }\r\n }\r\n\r\n setInstance() {\r\n let { componentRef, overlayRef } = this.portal;\r\n if (!componentRef || !overlayRef) return;\r\n this.portalComponent.set(componentRef);\r\n this.portalOverlayRef.set(overlayRef);\r\n this.realPlacement.set(this.placement());\r\n const { nodeClick, animating } = componentRef.instance;\r\n nodeClick.subscribe((color: string) => this.onNodeClick(color));\r\n animating.subscribe((ing: boolean) => this.animating.set(ing));\r\n }\r\n\r\n onNodeClick(color: string) {\r\n this.value.set(color);\r\n this.inputCom().inputFocus('focus');\r\n if (this.onChange) this.onChange(this.value());\r\n this.formControlValidator();\r\n }\r\n\r\n setPlacement() {\r\n return this.portalService.setPlacement({\r\n elementRef: this.inputCom().inputRef(),\r\n placement: [this.placement() as XCorner, 'bottom-start', 'bottom-end', 'top-start', 'top-end'],\r\n transformOriginOn: 'x-color-picker-portal'\r\n });\r\n }\r\n\r\n setPortal() {\r\n this.portalAttached() && this.portalOverlayRef()?.updatePositionStrategy(this.setPlacement());\r\n }\r\n}\r\n","<div #colorPicker class=\"x-color-picker\">\r\n <div class=\"x-color-picker-row\">\r\n <x-input\r\n #inputCom\r\n type=\"text\"\r\n [label]=\"label()\"\r\n [labelWidth]=\"labelWidth()\"\r\n [labelAlign]=\"labelAlign()\"\r\n [justify]=\"justify()\"\r\n [align]=\"align()\"\r\n [direction]=\"direction()\"\r\n [disabled]=\"disabledComputed()\"\r\n [required]=\"requiredComputed()\"\r\n [validator]=\"validatorComputed()\"\r\n [inputValidator]=\"inputValidator()\"\r\n [icon]=\"icon()\"\r\n [placeholder]=\"placeholder()\"\r\n [readonly]=\"readonly()\"\r\n [clearable]=\"clearable()\"\r\n [(ngModel)]=\"value\"\r\n [valueTpl]=\"valueTpl() ? valueTpl() : valueTemplate\"\r\n [valueTplContext]=\"valueTplContext()\"\r\n [size]=\"size()\"\r\n [bordered]=\"bordered()\"\r\n [before]=\"before()\"\r\n [after]=\"after()\"\r\n [pattern]=\"patternComputed()\"\r\n [message]=\"messageComputed()\"\r\n [pointer]=\"pointer()\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (xClick)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n\r\n <ng-template #valueTemplate>\r\n <div class=\"x-color-picker-template-value\">\r\n <div class=\"x-color-picker-template-color\" [style]=\"inputStyle()\"></div>\r\n </div>\r\n </ng-template>\r\n </div>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { XColorPickerComponent } from './color-picker.component';\r\n\r\n@NgModule({\r\n imports: [XColorPickerComponent],\r\n exports: [XColorPickerComponent]\r\n})\r\nexport class XColorPickerModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ng-nest-ui-color-picker.mjs","sources":["../../../../lib/ng-nest/ui/color-picker/color-picker.property.ts","../../../../lib/ng-nest/ui/color-picker/color-picker-portal.component.ts","../../../../lib/ng-nest/ui/color-picker/color-picker-portal.component.html","../../../../lib/ng-nest/ui/color-picker/color-picker.component.ts","../../../../lib/ng-nest/ui/color-picker/color-picker.component.html","../../../../lib/ng-nest/ui/color-picker/color-picker.module.ts","../../../../lib/ng-nest/ui/color-picker/ng-nest-ui-color-picker.ts"],"sourcesContent":["import { XToBoolean, XToCssPixelValue } from '@ng-nest/ui/core';\r\nimport { Component, TemplateRef, input, model } from '@angular/core';\r\nimport { XFormControlFunction, XFormOption } from '@ng-nest/ui/base-form';\r\nimport type { XAlign, XBoolean, XCorner, XDirection, XJustify, XNumber, XSize, XTemplate } from '@ng-nest/ui/core';\r\n\r\n/**\r\n * ColorPicker\r\n * @selector x-color-picker\r\n * @decorator component\r\n */\r\nexport const XColorPickerPrefix = 'x-color-picker';\r\nconst X_COLOR_CONFIG_NAME = 'colorPicker';\r\n\r\n/**\r\n * ColorPicker Property\r\n */\r\n@Component({ selector: `${XColorPickerPrefix}-property`, template: '' })\r\nexport class XColorPickerProperty extends XFormControlFunction(X_COLOR_CONFIG_NAME) {\r\n /**\r\n * @zh_CN 展示方位\r\n * @en_US Display position\r\n */\r\n readonly placement = input<XCorner>(this.config?.placement ?? 'bottom-start');\r\n /**\r\n * @zh_CN 显示边框\r\n * @en_US Display Border\r\n */\r\n readonly bordered = input<boolean, XBoolean>(this.config?.bordered ?? true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n override readonly size = input<XSize>(this.config?.size ?? 'medium');\r\n /**\r\n * @zh_CN 输入框点击样式\r\n * @en_US Input pointer\r\n */\r\n override readonly pointer = input<boolean, XBoolean>(true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 标签\r\n * @en_US Label\r\n */\r\n override readonly label = input<string>('');\r\n /**\r\n * @zh_CN 标签宽度\r\n * @en_US Label width\r\n */\r\n override readonly labelWidth = input<string, XNumber>('', { transform: XToCssPixelValue });\r\n /**\r\n * @zh_CN 标签文字对齐方式\r\n * @en_US Label text alignment method\r\n */\r\n override readonly labelAlign = input<XAlign>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素水平排列方式\r\n * @en_US The level of sub-element level arrangement under flex layout\r\n */\r\n override readonly justify = input<XJustify>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素垂直排列方式\r\n * @en_US sub-element vertical arrangement method under flex layout\r\n */\r\n override readonly align = input<XAlign>('start');\r\n /**\r\n * @zh_CN flex 布局下的子元素排列方向\r\n * @en_US The direction of the sub-element arrangement under flex layout\r\n */\r\n override readonly direction = input<XDirection>('column');\r\n /**\r\n * @zh_CN 输入提示信息\r\n * @en_US Enter prompt information\r\n */\r\n override readonly placeholder = input<string | string[]>('');\r\n /**\r\n * @zh_CN 禁用\r\n * @en_US Disabled\r\n */\r\n override readonly disabled = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 必填\r\n * @en_US Required\r\n */\r\n override readonly required = input<boolean, XBoolean>(false, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 只读\r\n * @en_US Readonly\r\n */\r\n override readonly readonly = input<boolean, XBoolean>(true, { transform: XToBoolean });\r\n /**\r\n * @zh_CN 值模板\r\n * @en_US Node template\r\n */\r\n override readonly valueTpl = input<TemplateRef<any>>();\r\n /**\r\n * @zh_CN 值模板参数\r\n * @en_US Node template\r\n */\r\n override readonly valueTplContext = input();\r\n /**\r\n * @zh_CN 前置标签\r\n * @en_US Before label\r\n */\r\n override readonly before = input<XTemplate>();\r\n /**\r\n * @zh_CN 后置标签\r\n * @en_US After label\r\n */\r\n override readonly after = input<XTemplate>();\r\n /**\r\n * @zh_CN 正则验证规则\r\n * @en_US Regular verification rules\r\n */\r\n override readonly pattern = input<RegExp | RegExp[] | any>(null);\r\n /**\r\n * @zh_CN 验证不通过提示文字\r\n * @en_US Verify not pass the prompt text\r\n */\r\n override readonly message = input<string | string[]>([]);\r\n /**\r\n * @zh_CN 激活状态\r\n * @en_US Activation state\r\n */\r\n override readonly active = model<boolean>(false);\r\n /**\r\n * @zh_CN 输入验证函数\r\n * @en_US Enter the verification function\r\n */\r\n override readonly inputValidator = input<(value: any) => boolean>();\r\n}\r\n\r\n/**\r\n * ColorPicker Option\r\n */\r\nexport interface XColorPickerOption extends XFormOption {\r\n /**\r\n * @zh_CN 展示方位\r\n * @en_US Display position\r\n */\r\n placement?: XCorner;\r\n /**\r\n * @zh_CN 显示边框\r\n * @en_US Display Border\r\n */\r\n bordered?: boolean;\r\n /**\r\n * @zh_CN 尺寸\r\n * @en_US Size\r\n */\r\n size?: XSize;\r\n /**\r\n * @zh_CN 输入框点击样式\r\n * @en_US Input pointer\r\n */\r\n pointer?: boolean;\r\n /**\r\n * @zh_CN 标签\r\n * @en_US Label\r\n */\r\n label?: string;\r\n /**\r\n * @zh_CN 标签宽度\r\n * @en_US Label width\r\n */\r\n labelWidth?: string;\r\n /**\r\n * @zh_CN 标签文字对齐方式\r\n * @en_US Label text alignment method\r\n */\r\n labelAlign?: XAlign;\r\n /**\r\n * @zh_CN flex 布局下的子元素水平排列方式\r\n * @en_US The level of sub-element level arrangement under flex layout\r\n */\r\n justify?: XJustify;\r\n /**\r\n * @zh_CN flex 布局下的子元素垂直排列方式\r\n * @en_US sub-element vertical arrangement method under flex layout\r\n */\r\n align?: XAlign;\r\n /**\r\n * @zh_CN flex 布局下的子元素排列方向\r\n * @en_US The direction of the sub-element arrangement under flex layout\r\n */\r\n direction?: XDirection;\r\n /**\r\n * @zh_CN 输入提示信息\r\n * @en_US Enter prompt information\r\n */\r\n placeholder?: string;\r\n /**\r\n * @zh_CN 禁用\r\n * @en_US Disabled\r\n */\r\n disabled?: boolean;\r\n /**\r\n * @zh_CN 必填\r\n * @en_US Required\r\n */\r\n required?: boolean;\r\n /**\r\n * @zh_CN 只读\r\n * @en_US Readonly\r\n */\r\n readonly?: boolean;\r\n /**\r\n * @zh_CN 值模板\r\n * @en_US Node template\r\n */\r\n valueTpl?: TemplateRef<any>;\r\n /**\r\n * @zh_CN 值模板参数\r\n * @en_US Node template\r\n */\r\n valueTplContext?: any;\r\n /**\r\n * @zh_CN 前置标签\r\n * @en_US Before label\r\n */\r\n before?: XTemplate;\r\n /**\r\n * @zh_CN 后置标签\r\n * @en_US After label\r\n */\r\n after?: XTemplate;\r\n /**\r\n * @zh_CN 正则验证规则\r\n * @en_US Regular verification rules\r\n */\r\n pattern?: RegExp | RegExp[];\r\n /**\r\n * @zh_CN 验证不通过提示文字\r\n * @en_US Verify not pass the prompt text\r\n */\r\n message?: string | string[];\r\n /**\r\n * @zh_CN 激活状态\r\n * @en_US Activation state\r\n */\r\n active?: boolean;\r\n /**\r\n * @zh_CN 输入验证函数\r\n * @en_US Enter the verification function\r\n */\r\n inputValidator?: (value: any) => boolean;\r\n}\r\n\r\n/**\r\n * @zh_CN 颜色种类\r\n * @en_US Color type\r\n */\r\nexport type XColorType = 'hex' | 'rgba' | 'hsla';\r\n\r\n/**\r\n * ColorPicker-Portal\r\n * @selector x-color-picker-portal\r\n * @decorator component\r\n */\r\nexport const XColorPickerPortalPrefix = 'x-color-picker-portal';\r\n","import {\r\n Component,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n OnInit,\r\n ElementRef,\r\n Renderer2,\r\n HostListener,\r\n HostBinding,\r\n inject,\r\n input,\r\n output,\r\n model,\r\n viewChild,\r\n signal,\r\n DestroyRef\r\n} from '@angular/core';\r\nimport { XColorPickerPortalPrefix, XColorType } from './color-picker.property';\r\nimport { XConnectBaseAnimation, XPositionTopBottom } from '@ng-nest/ui/core';\r\nimport { XSliderSelectComponent } from '@ng-nest/ui/slider-select';\r\nimport { Subject } from 'rxjs';\r\nimport { CdkDragMove } from '@angular/cdk/drag-drop';\r\nimport { DecimalPipe, PercentPipe } from '@angular/common';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\nimport { DragDropModule } from '@angular/cdk/drag-drop';\r\nimport { XTabsComponent, XTabComponent } from '@ng-nest/ui/tabs';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: `${XColorPickerPortalPrefix}`,\r\n imports: [FormsModule, DragDropModule, XSliderSelectComponent, XTabsComponent, XTabComponent, XInputComponent],\r\n templateUrl: './color-picker-portal.component.html',\r\n styleUrls: ['./color-picker-portal.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [DecimalPipe, PercentPipe],\r\n animations: [XConnectBaseAnimation]\r\n})\r\nexport class XColorPickerPortalComponent implements OnInit {\r\n @HostBinding('@x-connect-base-animation') public get getPlacement() {\r\n return this.placement();\r\n }\r\n @HostListener('@x-connect-base-animation.done', ['$event']) done() {\r\n if (this.destroy()) return;\r\n this.animating.emit(false);\r\n }\r\n @HostListener('@x-connect-base-animation.start', ['$event']) start() {\r\n if (this.destroy()) return;\r\n this.animating.emit(true);\r\n }\r\n\r\n panelRef = viewChild.required('panelRef', { read: ElementRef<HTMLElement> });\r\n plateRef = viewChild.required('plateRef', { read: ElementRef<HTMLElement> });\r\n transparentCom = viewChild.required('transparentCom', { read: XSliderSelectComponent });\r\n value = model<string>('');\r\n inputCom = input<XInputComponent>();\r\n placement = input<XPositionTopBottom>();\r\n\r\n animating = output<boolean>();\r\n nodeClick = output<string>();\r\n\r\n transparentRail = signal<HTMLElement | null>(null);\r\n sliderColorNum = signal(0);\r\n type = signal<XColorType | null>(null);\r\n offset = signal(0);\r\n panel = signal<DOMRect | null>(null);\r\n plate = signal<DOMRect | null>(null);\r\n transformX = signal(0);\r\n transformY = signal(0);\r\n initTransformX = signal(0);\r\n initTransformY = signal(0);\r\n drag = signal(false);\r\n\r\n rgba = signal<{ r?: number; g?: number; b?: number; a?: number }>({ a: 1 });\r\n hsla = signal<{ h?: number; s?: number; l?: number; a?: number; sp?: string; lp?: string }>({\r\n h: 0,\r\n a: 1\r\n });\r\n hex = signal<string>('');\r\n\r\n destroy = signal(false);\r\n private unSubject = new Subject<void>();\r\n private destroyRef = inject(DestroyRef);\r\n\r\n private renderer = inject(Renderer2);\r\n private decimal = inject(DecimalPipe);\r\n private percent = inject(PercentPipe);\r\n\r\n ngOnInit(): void {\r\n this.colorConvert();\r\n this.destroyRef.onDestroy(() => {\r\n this.destroy.set(true);\r\n this.unSubject.next();\r\n this.unSubject.complete();\r\n });\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.panel.set(this.panelRef().nativeElement.getBoundingClientRect());\r\n this.plate.set(this.plateRef().nativeElement.getBoundingClientRect());\r\n this.offset.set((this.panel()!.width - this.plate()!.width) / 2);\r\n this.transparentRail.set(\r\n this.transparentCom().elementRef.nativeElement.querySelector('.x-slider-select-rail div')!\r\n );\r\n this.setTransform();\r\n this.setPlateBackground();\r\n this.setRailBackground();\r\n }\r\n\r\n hexChange() {\r\n if (this.drag() || !/(^#[0-9A-F]{6}$)/i.test(this.hex())) return;\r\n this.rgba.set(this.hexToRgba(this.hex()));\r\n this.hsla.set(this.rgbaToHsla(this.rgba()));\r\n this.setHslaPercent();\r\n this.setTransform();\r\n this.setPlateBackground();\r\n this.setValue();\r\n }\r\n\r\n stopPropagation(event: Event): void {\r\n event.stopPropagation();\r\n }\r\n\r\n colorConvert() {\r\n const value = this.value()!;\r\n if (/^#/.test(value)) {\r\n this.hex.set(value);\r\n this.rgba.set(this.hexToRgba(this.hex()));\r\n this.hsla.set(this.rgbaToHsla(this.rgba()));\r\n this.setHslaPercent();\r\n this.type.set('hex');\r\n } else if (/rgb/.test(value)) {\r\n this.rgbaConvert(value);\r\n this.hex.set(this.rgbaToHex(this.rgba()));\r\n this.hsla.set(this.rgbaToHsla(this.rgba()));\r\n this.setHslaPercent();\r\n this.type.set('rgba');\r\n } else if (/hsl/.test(value)) {\r\n this.hslaConvert(value);\r\n this.rgba.set(this.hslaToRgba(this.hsla()));\r\n this.hex.set(this.rgbaToHex(this.rgba()));\r\n this.type.set('hsla');\r\n }\r\n }\r\n\r\n rgbaConvert(str: string) {\r\n let rgba = str\r\n .replace(/rgba?\\(/, '')\r\n .replace(/rgb?\\(/, '')\r\n .replace(/\\)/, '')\r\n .replace(/[\\s+]/g, '')\r\n .split(',');\r\n if (rgba.length > 2) {\r\n this.rgba.set({\r\n r: Number(rgba[0]),\r\n g: Number(rgba[1]),\r\n b: Number(rgba[2]),\r\n a: Number(rgba.length > 3 ? rgba[3] : 1)\r\n });\r\n }\r\n }\r\n\r\n hslaConvert(str: string) {\r\n let hsla = str\r\n .replace(/hsla?\\(/, '')\r\n .replace(/hsl?\\(/, '')\r\n .replace(/\\)/, '')\r\n .replace(/[\\s+]/g, '')\r\n .split(',');\r\n if (hsla.length > 2) {\r\n this.hsla.set({\r\n h: Number(hsla[0]),\r\n s: Number(hsla[1].replace('%', '')) / 100,\r\n l: Number(hsla[2].replace('%', '')) / 100,\r\n a: Number(hsla.length > 3 ? hsla[3] : 1)\r\n });\r\n this.setHslaPercent();\r\n }\r\n }\r\n\r\n plateClick(event: MouseEvent) {\r\n if (this.drag()) return;\r\n const rect = this.plateRef().nativeElement.getBoundingClientRect();\r\n const left = event.clientX - rect.left;\r\n const top = event.clientY - rect.top;\r\n this.transformX.set(left - this.offset());\r\n this.transformY.set(top - this.offset());\r\n this.initTransformX.set(this.transformX());\r\n this.initTransformY.set(this.transformY());\r\n this.setLetfTop(left, top);\r\n }\r\n\r\n setTransform() {\r\n let hsv = this.hslToHsv(this.hsla().h!, this.hsla().s!, this.hsla().l!);\r\n this.transformX.set(hsv.s * this.plate()!.width - this.offset());\r\n this.transformY.set((1 - hsv.v) * this.plate()!.height - this.offset());\r\n this.initTransformX.set(this.transformX());\r\n this.initTransformY.set(this.transformY());\r\n }\r\n\r\n started() {\r\n this.drag.set(true);\r\n }\r\n\r\n ended() {\r\n this.initTransformX.set(this.transformX());\r\n this.initTransformY.set(this.transformY());\r\n setTimeout(() => {\r\n this.drag.set(false);\r\n });\r\n }\r\n\r\n moved(drag: CdkDragMove) {\r\n const transform = drag.source.getFreeDragPosition();\r\n drag.source.reset();\r\n this.transformX.set(transform.x + this.initTransformX());\r\n this.transformY.set(transform.y + this.initTransformY());\r\n\r\n const left = this.transformX() + this.offset();\r\n const top = this.transformY() + this.offset();\r\n this.setLetfTop(left, top);\r\n }\r\n\r\n setLetfTop(left: number, top: number) {\r\n let s = left / this.plate()!.width;\r\n let v = 1 - top / this.plate()!.height;\r\n let l = ((2 - s) * v) / 2;\r\n if (l !== 0) {\r\n if (l === 1) {\r\n s = 0;\r\n } else if (l < 0.5) {\r\n s = (s * v) / (l * 2);\r\n } else {\r\n s = (s * v) / (2 - l * 2);\r\n }\r\n }\r\n this.hsla.update((x) => {\r\n x.s = Number(this.decimal.transform(s, '1.2-2'));\r\n x.l = Number(this.decimal.transform(l, '1.2-2'));\r\n return { ...x };\r\n });\r\n this.setHslaPercent();\r\n this.rgba.set(this.hslaToRgba(this.hsla()));\r\n this.hex.set(this.rgbaToHex(this.rgba()));\r\n this.setValue();\r\n }\r\n\r\n setHslaPercent() {\r\n this.hsla.update((x) => {\r\n x.sp = this.hsla().s === 0 ? '0%' : (this.percent.transform(this.hsla().s, '1.0-0') as string);\r\n return { ...x };\r\n });\r\n this.hsla.update((x) => {\r\n x.lp = this.hsla().l === 0 ? '0%' : (this.percent.transform(this.hsla().l, '1.0-0') as string);\r\n return { ...x };\r\n });\r\n }\r\n\r\n hueChange() {\r\n this.setPlateBackground();\r\n this.rgba.set(this.hslaToRgba(this.hsla()));\r\n this.hex.set(this.rgbaToHex(this.rgba()));\r\n this.setValue();\r\n }\r\n\r\n setPlateBackground() {\r\n this.renderer.setStyle(this.plateRef().nativeElement, 'background-color', `hsl(${this.hsla().h}, 100%, 50%)`);\r\n }\r\n\r\n setRailBackground() {\r\n this.renderer.setStyle(\r\n this.transparentRail(),\r\n 'background',\r\n `linear-gradient(to right, rgba(${this.rgba().r}, ${this.rgba().g}, ${this.rgba().b}, 0) 0%, rgba(${this.rgba().r}, ${this.rgba().g}, ${this.rgba().b}, 1) 100%)`\r\n );\r\n }\r\n\r\n transparentChange() {\r\n this.rgba.set(this.hslaToRgba(this.hsla()));\r\n this.hex.set(this.rgbaToHex(this.rgba()));\r\n this.setValue();\r\n }\r\n\r\n setValue() {\r\n this.setValueByType();\r\n this.setRailBackground();\r\n this.nodeClick.emit(this.value());\r\n }\r\n\r\n setValueByType() {\r\n if (this.type() === 'hex') {\r\n this.value.set(`${this.hex()}`);\r\n } else if (this.type() === 'rgba') {\r\n this.value.set(`rgba(${this.rgba().r}, ${this.rgba().g}, ${this.rgba().b}, ${this.rgba().a})`);\r\n } else if (this.type() === 'hsla') {\r\n this.value.set(`hsla(${this.hsla().h}, ${this.hsla().sp}, ${this.hsla().lp}, ${this.hsla().a})`);\r\n }\r\n }\r\n\r\n hslaToRgba(hsla: { h?: number; s?: number; l?: number; a?: number }) {\r\n let r, g, b;\r\n let [h, s, l] = [hsla.h as number, hsla.s as number, hsla.l as number];\r\n if (s == 0) {\r\n r = g = b = l;\r\n } else {\r\n let hue2rgb = (p: number, q: number, t: number) => {\r\n if (t < 0) t += 1;\r\n if (t > 1) t -= 1;\r\n if (t < 1 / 6) return p + (q - p) * 6 * t;\r\n if (t < 1 / 2) return q;\r\n if (t < 2 / 3) return p + (q - p) * (2 / 3 - t) * 6;\r\n return p;\r\n };\r\n\r\n let q = l < 0.5 ? l * (1 + s) : l + s - l * s;\r\n let p = 2 * l - q;\r\n r = hue2rgb(p, q, h / 360 + 1 / 3);\r\n g = hue2rgb(p, q, h / 360);\r\n b = hue2rgb(p, q, h / 360 - 1 / 3);\r\n }\r\n return {\r\n r: Math.round(r * 255),\r\n g: Math.round(g * 255),\r\n b: Math.round(b * 255),\r\n a: Number(hsla.a)\r\n };\r\n }\r\n\r\n rgbaToHex(rgba: { r?: number; g?: number; b?: number; a?: number }) {\r\n let hex = [\r\n (rgba.r as number).toString(16),\r\n (rgba.g as number).toString(16),\r\n (rgba.b as number).toString(16),\r\n Math.round(255 * (rgba.a as number)).toString(16)\r\n ];\r\n hex.forEach((x, index) => {\r\n if (index === 3 && x === 'ff') {\r\n hex[index] = '';\r\n }\r\n if (x.length === 1) {\r\n hex[index] = '0' + x;\r\n }\r\n });\r\n return `#${hex.join('')}`;\r\n }\r\n\r\n rgbaToHsla(rgba: { r?: number; g?: number; b?: number; a?: number }) {\r\n let [r, g, b] = [(rgba.r as number) / 255, (rgba.g as number) / 255, (rgba.b as number) / 255];\r\n let [max, min] = [Math.max(r, g, b), Math.min(r, g, b)];\r\n let h = 0;\r\n let s = 0;\r\n let l = (max + min) / 2;\r\n\r\n if (max === min) {\r\n h = s = 0;\r\n } else {\r\n let d = max - min;\r\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\r\n switch (max) {\r\n case r:\r\n h = (g - b) / d + (g < b ? 6 : 0);\r\n break;\r\n case g:\r\n h = (b - r) / d + 2;\r\n break;\r\n case b:\r\n h = (r - g) / d + 4;\r\n break;\r\n }\r\n h /= 6;\r\n }\r\n\r\n return {\r\n h: Math.round(h * 360),\r\n s: Number(this.decimal.transform(s, '1.2-2')),\r\n l: Number(this.decimal.transform(l, '1.2-2')),\r\n a: Number(rgba.a)\r\n };\r\n }\r\n\r\n hexToRgba(hex: string) {\r\n let hexNum = hex.substring(1);\r\n let a = 1;\r\n if (hexNum.length === 8) {\r\n a = Number(this.decimal.transform(Number('0x' + hexNum.slice(-2)) / 255, '1.2-2'));\r\n hexNum = hexNum.substring(0, hexNum.length - 2);\r\n }\r\n let num = Number('0x' + (hexNum.length < 6 ? this.repeatLetter(hexNum, 2) : hexNum));\r\n return { r: num >> 16, g: (num >> 8) & 0xff, b: num & 0xff, a: a };\r\n }\r\n\r\n hslToHsv(h: number, s: number, l: number) {\r\n let hHsv, sHsv, v;\r\n\r\n hHsv = h;\r\n\r\n if (l == 0) {\r\n sHsv = 0;\r\n v = 0;\r\n } else if (l > 0 && l <= 0.5) {\r\n sHsv = (2 * s) / (1 + s);\r\n v = l * (1 + s);\r\n } else {\r\n sHsv = (2 * s - 2 * s * l) / (s - s * l + l);\r\n v = s - s * l + l;\r\n }\r\n\r\n return {\r\n h: hHsv,\r\n s: Number(this.decimal.transform(sHsv, '1.2-2')),\r\n v: Number(this.decimal.transform(v, '1.2-2'))\r\n };\r\n }\r\n\r\n repeatWord(word: string, num: number) {\r\n let result = '';\r\n for (let i = 0; i < num; i++) {\r\n result += word;\r\n }\r\n return result;\r\n }\r\n\r\n repeatLetter(word: string, num: number) {\r\n let result = '';\r\n for (let letter of word) {\r\n result += this.repeatWord(letter, num);\r\n }\r\n return result;\r\n }\r\n}\r\n","<div class=\"x-color-picker-portal\" tabindex=\"-1\" (click)=\"stopPropagation($event)\">\r\n <div #panelRef class=\"x-color-picker-portal-panel\">\r\n <div #plateRef class=\"x-color-picker-portal-plate\" (click)=\"plateClick($event)\">\r\n <div class=\"x-color-picker-portal-white\"></div>\r\n <div class=\"x-color-picker-portal-black\"></div>\r\n <div\r\n #dragCom\r\n class=\"x-color-picker-portal-cursor\"\r\n [style.left.px]=\"transformX()\"\r\n [style.top.px]=\"transformY()\"\r\n cdkDrag\r\n [cdkDragBoundary]=\"panelRef\"\r\n (cdkDragStarted)=\"started()\"\r\n (cdkDragEnded)=\"ended()\"\r\n (cdkDragMoved)=\"moved($event)\"\r\n ></div>\r\n </div>\r\n </div>\r\n <div class=\"x-color-picker-portal-tool\">\r\n <div class=\"x-color-picker-portal-operations\">\r\n <!-- <x-button icon=\"fto-edit-2\" onlyIcon></x-button> -->\r\n <div class=\"x-color-picker-portal-selected\">\r\n <div [style.background-color]=\"value()\"></div>\r\n </div>\r\n <div class=\"x-color-picker-portal-area\">\r\n <div class=\"x-color-picker-portal-slider\">\r\n <x-slider-select\r\n [style.width.%]=\"100\"\r\n [(ngModel)]=\"hsla().h\"\r\n min=\"0\"\r\n max=\"360\"\r\n step=\"1\"\r\n (dragStartEmit)=\"started()\"\r\n (dragEndEmit)=\"ended()\"\r\n (ngModelChange)=\"hueChange()\"\r\n ></x-slider-select>\r\n </div>\r\n <div class=\"x-color-picker-portal-transparent\">\r\n <x-slider-select\r\n [style.width.%]=\"100\"\r\n #transparentCom\r\n [(ngModel)]=\"hsla().a\"\r\n min=\"0\"\r\n max=\"1\"\r\n step=\"0.01\"\r\n (dragStarted)=\"started()\"\r\n (dragEnded)=\"ended()\"\r\n (ngModelChange)=\"transparentChange()\"\r\n ></x-slider-select>\r\n <div class=\"x-color-picker-portal-alpha\"></div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"x-color-picker-portal-type\">\r\n <x-tabs animated=\"false\" justify=\"center\">\r\n <x-tab label=\"HEX\">\r\n <div class=\"x-color-picker-portal-type-content\">\r\n <x-input [style.width.%]=\"100\" [(ngModel)]=\"hex\" (ngModelChange)=\"hexChange()\"></x-input>\r\n </div>\r\n </x-tab>\r\n <x-tab label=\"RGBA\">\r\n <div class=\"x-color-picker-portal-type-content\">\r\n <x-input [(ngModel)]=\"rgba().r\" disabled></x-input>\r\n <x-input [(ngModel)]=\"rgba().g\" disabled></x-input>\r\n <x-input [(ngModel)]=\"rgba().b\" disabled></x-input>\r\n <x-input [(ngModel)]=\"rgba().a\" disabled></x-input>\r\n </div>\r\n </x-tab>\r\n <x-tab label=\"HSLA\">\r\n <div class=\"x-color-picker-portal-type-content\">\r\n <x-input [(ngModel)]=\"hsla().h\" disabled></x-input>\r\n <x-input [(ngModel)]=\"hsla().sp\" disabled></x-input>\r\n <x-input [(ngModel)]=\"hsla().lp\" disabled></x-input>\r\n <x-input [(ngModel)]=\"hsla().a\" disabled></x-input>\r\n </div>\r\n </x-tab>\r\n </x-tabs>\r\n </div>\r\n </div>\r\n</div>\r\n","import { XColorPickerPortalComponent } from './color-picker-portal.component';\r\nimport { XPortalService, XPortalOverlayRef, XPortalConnectedPosition } from '@ng-nest/ui/portal';\r\nimport { Subject, fromEvent } from 'rxjs';\r\nimport {\r\n Component,\r\n OnInit,\r\n ViewEncapsulation,\r\n ChangeDetectionStrategy,\r\n ElementRef,\r\n ViewContainerRef,\r\n inject,\r\n AfterViewInit,\r\n OnDestroy,\r\n viewChild,\r\n signal,\r\n computed,\r\n ComponentRef,\r\n effect\r\n} from '@angular/core';\r\nimport { XColorPickerProperty } from './color-picker.property';\r\nimport { XIsEmpty, XCorner, XParents, XPlacement, XComputed } from '@ng-nest/ui/core';\r\nimport { XInputComponent } from '@ng-nest/ui/input';\r\nimport {\r\n Overlay,\r\n OverlayConfig,\r\n FlexibleConnectedPositionStrategy,\r\n ConnectedOverlayPositionChange,\r\n OverlayRef\r\n} from '@angular/cdk/overlay';\r\nimport { filter, takeUntil } from 'rxjs/operators';\r\nimport { XValueAccessor } from '@ng-nest/ui/base-form';\r\nimport { DOCUMENT } from '@angular/common';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'x-color-picker',\r\n imports: [FormsModule, ReactiveFormsModule, XInputComponent],\r\n templateUrl: './color-picker.component.html',\r\n styleUrls: ['./color-picker.component.scss'],\r\n encapsulation: ViewEncapsulation.None,\r\n changeDetection: ChangeDetectionStrategy.OnPush,\r\n providers: [XValueAccessor(XColorPickerComponent)]\r\n})\r\nexport class XColorPickerComponent extends XColorPickerProperty implements OnInit, AfterViewInit, OnDestroy {\r\n colorPicker = viewChild.required('colorPicker', { read: ElementRef<HTMLElement> });\r\n inputCom = viewChild.required('inputCom', { read: XInputComponent });\r\n private doc = inject(DOCUMENT);\r\n primaryColor = XComputed(this.doc.documentElement).getPropertyValue('--x-primary').trim();\r\n\r\n inputStyle = computed(() => ({\r\n backgroundColor: this.value(),\r\n color: 'transparent'\r\n }));\r\n\r\n clearable = signal(false);\r\n enter = signal(false);\r\n animating = signal(false);\r\n displayValue = computed(() => this.value());\r\n portal!: XPortalOverlayRef<XColorPickerPortalComponent>;\r\n icon = signal('fto-chevron-down');\r\n closeSubject: Subject<void> = new Subject();\r\n document = inject(DOCUMENT);\r\n private unSubject = new Subject<void>();\r\n private portalService = inject(XPortalService);\r\n private viewContainerRef = inject(ViewContainerRef);\r\n private overlay = inject(Overlay);\r\n private elementRef = inject(ElementRef);\r\n\r\n private realPlacement = signal<XPlacement | null>(null);\r\n portalComponent = signal<ComponentRef<XColorPickerPortalComponent> | null>(null);\r\n portalOverlayRef = signal<OverlayRef | null>(null);\r\n\r\n constructor() {\r\n super();\r\n effect(() => this.portalComponent()?.setInput('value', this.value() || this.primaryColor));\r\n effect(() => this.portalComponent()?.setInput('placement', this.realPlacement()));\r\n effect(() => this.portalComponent()?.setInput('inputCom', this.inputCom()));\r\n }\r\n\r\n ngOnInit() {\r\n this.setSubject();\r\n this.setParantScroll();\r\n }\r\n\r\n ngAfterViewInit() {\r\n this.setPortal();\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.unSubject.next();\r\n this.unSubject.complete();\r\n }\r\n\r\n setSubject() {\r\n this.closeSubject.pipe(takeUntil(this.unSubject)).subscribe(() => {\r\n this.closePortal();\r\n });\r\n }\r\n\r\n menter() {\r\n if (this.disabledComputed()) return;\r\n this.enter.set(true);\r\n if (!XIsEmpty(this.value())) {\r\n this.icon.set('');\r\n this.clearable.set(true);\r\n }\r\n }\r\n\r\n mleave() {\r\n if (this.disabledComputed()) return;\r\n this.enter.set(false);\r\n if (this.clearable()) {\r\n this.icon.set('fto-chevron-down');\r\n this.clearable.set(false);\r\n }\r\n }\r\n\r\n clearEmit() {\r\n this.value.set('');\r\n this.mleave();\r\n if (this.onChange) this.onChange(this.value());\r\n }\r\n\r\n portalAttached() {\r\n return this.portalOverlayRef()?.hasAttached();\r\n }\r\n\r\n closePortal() {\r\n if (this.portalAttached()) {\r\n this.portalOverlayRef()?.detach();\r\n this.active.set(false);\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n destroyPortal() {\r\n this.portalOverlayRef()?.dispose();\r\n }\r\n\r\n showPortal() {\r\n if (this.disabledComputed() || this.animating()) return;\r\n this.active.set(true);\r\n const config: OverlayConfig = {\r\n backdropClass: '',\r\n positionStrategy: this.setPlacement(),\r\n scrollStrategy: this.overlay.scrollStrategies.reposition()\r\n };\r\n this.setPosition(config);\r\n this.portal = this.portalService.attach({\r\n content: XColorPickerPortalComponent,\r\n viewContainerRef: this.viewContainerRef,\r\n overlayConfig: config\r\n });\r\n this.portal.overlayRef\r\n ?.outsidePointerEvents()\r\n .pipe(takeUntil(this.unSubject))\r\n .subscribe(() => {\r\n this.closeSubject.next();\r\n });\r\n this.setInstance();\r\n }\r\n\r\n setPosition(config: OverlayConfig) {\r\n let position = config.positionStrategy as FlexibleConnectedPositionStrategy;\r\n position.positionChanges.pipe(takeUntil(this.unSubject)).subscribe((pos: ConnectedOverlayPositionChange) => {\r\n const place = XPortalConnectedPosition.get(pos.connectionPair) as XCorner;\r\n if (place !== this.realPlacement()) {\r\n this.realPlacement.set(place);\r\n this.portalOverlayRef()?.updatePosition();\r\n }\r\n });\r\n }\r\n\r\n setParantScroll() {\r\n if (!this.document) return;\r\n const parents = XParents(this.elementRef.nativeElement);\r\n let firstScroll: HTMLElement | null = null;\r\n for (let item of parents) {\r\n if (item.clientHeight < item.scrollHeight) {\r\n firstScroll = item;\r\n break;\r\n }\r\n }\r\n if (firstScroll && firstScroll.tagName !== 'BODY') {\r\n fromEvent(firstScroll, 'scroll')\r\n .pipe(\r\n filter(() => this.portalAttached()!),\r\n takeUntil(this.unSubject)\r\n )\r\n .subscribe(() => {\r\n this.portalOverlayRef()?.updatePosition();\r\n const eract = this.elementRef.nativeElement.getBoundingClientRect();\r\n const frect = firstScroll!.getBoundingClientRect();\r\n if (eract.top + eract.height - frect.top < 0 || eract.bottom > frect.bottom) {\r\n this.closeSubject.next();\r\n }\r\n });\r\n }\r\n }\r\n\r\n setInstance() {\r\n let { componentRef, overlayRef } = this.portal;\r\n if (!componentRef || !overlayRef) return;\r\n this.portalComponent.set(componentRef);\r\n this.portalOverlayRef.set(overlayRef);\r\n this.realPlacement.set(this.placement());\r\n const { nodeClick, animating } = componentRef.instance;\r\n nodeClick.subscribe((color: string) => this.onNodeClick(color));\r\n animating.subscribe((ing: boolean) => this.animating.set(ing));\r\n }\r\n\r\n onNodeClick(color: string) {\r\n this.value.set(color);\r\n this.inputCom().inputFocus('focus');\r\n if (this.onChange) this.onChange(this.value());\r\n this.formControlValidator();\r\n }\r\n\r\n setPlacement() {\r\n return this.portalService.setPlacement({\r\n elementRef: this.inputCom().inputRef(),\r\n placement: [this.placement() as XCorner, 'bottom-start', 'bottom-end', 'top-start', 'top-end'],\r\n transformOriginOn: 'x-color-picker-portal'\r\n });\r\n }\r\n\r\n setPortal() {\r\n this.portalAttached() && this.portalOverlayRef()?.updatePositionStrategy(this.setPlacement());\r\n }\r\n}\r\n","<div #colorPicker class=\"x-color-picker\">\r\n <div class=\"x-color-picker-row\">\r\n <x-input\r\n #inputCom\r\n type=\"text\"\r\n [label]=\"label()\"\r\n [labelWidth]=\"labelWidth()\"\r\n [labelAlign]=\"labelAlign()\"\r\n [justify]=\"justify()\"\r\n [align]=\"align()\"\r\n [direction]=\"direction()\"\r\n [disabled]=\"disabledComputed()\"\r\n [required]=\"requiredComputed()\"\r\n [validator]=\"validatorComputed()\"\r\n [inputValidator]=\"inputValidator()\"\r\n [icon]=\"icon()\"\r\n [placeholder]=\"placeholder()\"\r\n [readonly]=\"readonly()\"\r\n [clearable]=\"clearable()\"\r\n [(ngModel)]=\"value\"\r\n [valueTpl]=\"valueTpl() ? valueTpl() : valueTemplate\"\r\n [valueTplContext]=\"valueTplContext()\"\r\n [size]=\"size()\"\r\n [bordered]=\"bordered()\"\r\n [before]=\"before()\"\r\n [after]=\"after()\"\r\n [pattern]=\"patternComputed()\"\r\n [message]=\"messageComputed()\"\r\n [pointer]=\"pointer()\"\r\n [(active)]=\"active\"\r\n (clearEmit)=\"clearEmit()\"\r\n (xClick)=\"showPortal()\"\r\n (xMouseenter)=\"menter()\"\r\n (xMouseleave)=\"mleave()\"\r\n ></x-input>\r\n\r\n <ng-template #valueTemplate>\r\n <div class=\"x-color-picker-template-value\">\r\n <div class=\"x-color-picker-template-color\" [style]=\"inputStyle()\"></div>\r\n </div>\r\n </ng-template>\r\n </div>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { XColorPickerComponent } from './color-picker.component';\r\n\r\n@NgModule({\r\n imports: [XColorPickerComponent],\r\n exports: [XColorPickerComponent]\r\n})\r\nexport class XColorPickerModule {}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
@@ -63,10 +63,10 @@ class XColorProperty extends XPropertyFunction(X_COLOR_CONFIG_NAME) {
63
63
  */
64
64
  this.amounts = input(this.config?.amounts ?? [-0.1, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9]);
65
65
  }
66
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XColorProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
67
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.2", type: XColorProperty, selector: "x-color-property", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, hex: { classPropertyName: "hex", publicName: "hex", isSignal: true, isRequired: false, transformFunction: null }, merge: { classPropertyName: "merge", publicName: "merge", isSignal: true, isRequired: false, transformFunction: null }, amounts: { classPropertyName: "amounts", publicName: "amounts", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
66
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: XColorProperty, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
67
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "19.0.1", type: XColorProperty, isStandalone: true, selector: "x-color-property", inputs: { label: { classPropertyName: "label", publicName: "label", isSignal: true, isRequired: false, transformFunction: null }, hex: { classPropertyName: "hex", publicName: "hex", isSignal: true, isRequired: false, transformFunction: null }, merge: { classPropertyName: "merge", publicName: "merge", isSignal: true, isRequired: false, transformFunction: null }, amounts: { classPropertyName: "amounts", publicName: "amounts", isSignal: true, isRequired: false, transformFunction: null } }, usesInheritance: true, ngImport: i0, template: '', isInline: true }); }
68
68
  }
69
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XColorProperty, decorators: [{
69
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: XColorProperty, decorators: [{
70
70
  type: Component,
71
71
  args: [{ selector: `${XColorPrefix}-property`, template: '' }]
72
72
  }] });
@@ -90,23 +90,23 @@ class XColorComponent extends XColorProperty {
90
90
  return colors;
91
91
  });
92
92
  }
93
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XColorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
94
- /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.2", type: XColorComponent, isStandalone: true, selector: "x-color", host: { properties: { "class": "this.className" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"x-color-box\">\r\n <div class=\"x-color-primary\" [style.background-color]=\"hexSignal()\" [class.x-color-only]=\"colors().length === 0\">\r\n <span>{{ label() }}</span>\r\n <span class=\"x-color-hex\">{{ hexSignal() }}</span>\r\n </div>\r\n <div class=\"x-color-gradual\">\r\n @for (color of colors(); track color) {\r\n <div class=\"x-color-item\" [style.background-color]=\"color\"></div>\r\n }\r\n </div>\r\n</div>\r\n", styles: [".x-color{margin:0;padding:0}.x-color{display:block;color:var(--x-white)}.x-color-primary{padding:1rem;border-top-left-radius:var(--x-border-radius);border-top-right-radius:var(--x-border-radius)}.x-color-only{border-bottom-left-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-color-hex{margin-top:.25rem;display:block;font-size:var(--x-font-size-small);opacity:.7}.x-color-gradual{display:flex}.x-color-item{flex:1;height:2.5rem}.x-color-item:first-child{border-bottom-left-radius:var(--x-border-radius)}.x-color-item:last-child{border-bottom-right-radius:var(--x-border-radius)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
93
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: XColorComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
94
+ /** @nocollapse */ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.1", type: XColorComponent, isStandalone: true, selector: "x-color", host: { properties: { "class": "this.className" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"x-color-box\">\r\n <div class=\"x-color-primary\" [style.background-color]=\"hexSignal()\" [class.x-color-only]=\"colors().length === 0\">\r\n <span>{{ label() }}</span>\r\n <span class=\"x-color-hex\">{{ hexSignal() }}</span>\r\n </div>\r\n <div class=\"x-color-gradual\">\r\n @for (color of colors(); track color) {\r\n <div class=\"x-color-item\" [style.background-color]=\"color\"></div>\r\n }\r\n </div>\r\n</div>\r\n", styles: [".x-color{margin:0;padding:0}.x-color{display:block;color:var(--x-white)}.x-color-primary{padding:1rem;border-top-left-radius:var(--x-border-radius);border-top-right-radius:var(--x-border-radius)}.x-color-only{border-bottom-left-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-color-hex{margin-top:.25rem;display:block;font-size:var(--x-font-size-small);opacity:.7}.x-color-gradual{display:flex}.x-color-item{flex:1;height:2.5rem}.x-color-item:first-child{border-bottom-left-radius:var(--x-border-radius)}.x-color-item:last-child{border-bottom-right-radius:var(--x-border-radius)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
95
95
  }
96
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XColorComponent, decorators: [{
96
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: XColorComponent, decorators: [{
97
97
  type: Component,
98
- args: [{ selector: XColorPrefix, standalone: true, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"x-color-box\">\r\n <div class=\"x-color-primary\" [style.background-color]=\"hexSignal()\" [class.x-color-only]=\"colors().length === 0\">\r\n <span>{{ label() }}</span>\r\n <span class=\"x-color-hex\">{{ hexSignal() }}</span>\r\n </div>\r\n <div class=\"x-color-gradual\">\r\n @for (color of colors(); track color) {\r\n <div class=\"x-color-item\" [style.background-color]=\"color\"></div>\r\n }\r\n </div>\r\n</div>\r\n", styles: [".x-color{margin:0;padding:0}.x-color{display:block;color:var(--x-white)}.x-color-primary{padding:1rem;border-top-left-radius:var(--x-border-radius);border-top-right-radius:var(--x-border-radius)}.x-color-only{border-bottom-left-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-color-hex{margin-top:.25rem;display:block;font-size:var(--x-font-size-small);opacity:.7}.x-color-gradual{display:flex}.x-color-item{flex:1;height:2.5rem}.x-color-item:first-child{border-bottom-left-radius:var(--x-border-radius)}.x-color-item:last-child{border-bottom-right-radius:var(--x-border-radius)}\n"] }]
98
+ args: [{ selector: XColorPrefix, encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, template: "<div class=\"x-color-box\">\r\n <div class=\"x-color-primary\" [style.background-color]=\"hexSignal()\" [class.x-color-only]=\"colors().length === 0\">\r\n <span>{{ label() }}</span>\r\n <span class=\"x-color-hex\">{{ hexSignal() }}</span>\r\n </div>\r\n <div class=\"x-color-gradual\">\r\n @for (color of colors(); track color) {\r\n <div class=\"x-color-item\" [style.background-color]=\"color\"></div>\r\n }\r\n </div>\r\n</div>\r\n", styles: [".x-color{margin:0;padding:0}.x-color{display:block;color:var(--x-white)}.x-color-primary{padding:1rem;border-top-left-radius:var(--x-border-radius);border-top-right-radius:var(--x-border-radius)}.x-color-only{border-bottom-left-radius:var(--x-border-radius);border-bottom-right-radius:var(--x-border-radius)}.x-color-hex{margin-top:.25rem;display:block;font-size:var(--x-font-size-small);opacity:.7}.x-color-gradual{display:flex}.x-color-item{flex:1;height:2.5rem}.x-color-item:first-child{border-bottom-left-radius:var(--x-border-radius)}.x-color-item:last-child{border-bottom-right-radius:var(--x-border-radius)}\n"] }]
99
99
  }], propDecorators: { className: [{
100
100
  type: HostBinding,
101
101
  args: ['class']
102
102
  }] } });
103
103
 
104
104
  class XColorModule {
105
- /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XColorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
106
- /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.2", ngImport: i0, type: XColorModule, imports: [XColorComponent], exports: [XColorComponent] }); }
107
- /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XColorModule }); }
105
+ /** @nocollapse */ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: XColorModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
106
+ /** @nocollapse */ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.1", ngImport: i0, type: XColorModule, imports: [XColorComponent], exports: [XColorComponent] }); }
107
+ /** @nocollapse */ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: XColorModule }); }
108
108
  }
109
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.2", ngImport: i0, type: XColorModule, decorators: [{
109
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: XColorModule, decorators: [{
110
110
  type: NgModule,
111
111
  args: [{
112
112
  exports: [XColorComponent],