@youcan/celeste 0.6.28 → 0.6.29

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 (324) hide show
  1. package/package.json +3 -3
  2. package/src/components/checkbox/checkbox-label.vue +112 -0
  3. package/src/components/checkbox/index.ts +3 -0
  4. package/src/components/checkbox/stories/checkbox.stories.ts +37 -20
  5. package/dist/celeste.css +0 -3997
  6. package/dist/cjs/alert.js +0 -111
  7. package/dist/cjs/alpha-slider.js +0 -3
  8. package/dist/cjs/badge.js +0 -55
  9. package/dist/cjs/button.js +0 -39
  10. package/dist/cjs/checkbox.js +0 -3
  11. package/dist/cjs/chunks/_plugin-vue_export-helper.js +0 -9
  12. package/dist/cjs/chunks/alpha-slider.js +0 -127
  13. package/dist/cjs/chunks/checkbox.vue_vue_type_style_index_0_lang.js +0 -38
  14. package/dist/cjs/chunks/clsx.js +0 -15
  15. package/dist/cjs/chunks/combobox-anchor.js +0 -31
  16. package/dist/cjs/chunks/content-divider.vue_vue_type_style_index_0_lang.js +0 -52
  17. package/dist/cjs/chunks/dropdown-menu-content.vue_vue_type_style_index_0_lang.js +0 -51
  18. package/dist/cjs/chunks/dropdown-menu-sub-content.vue_vue_type_style_index_0_lang.js +0 -49
  19. package/dist/cjs/chunks/dropdown-menu-sub-trigger.vue_vue_type_style_index_0_lang.js +0 -32
  20. package/dist/cjs/chunks/dropdown-menu-sub.js +0 -25
  21. package/dist/cjs/chunks/index.js +0 -9073
  22. package/dist/cjs/chunks/modal-close.js +0 -22
  23. package/dist/cjs/chunks/modal-trigger.js +0 -22
  24. package/dist/cjs/chunks/modal.js +0 -26
  25. package/dist/cjs/chunks/popover.js +0 -26
  26. package/dist/cjs/chunks/scroll-area.js +0 -41
  27. package/dist/cjs/chunks/select-group.js +0 -22
  28. package/dist/cjs/chunks/select.js +0 -38
  29. package/dist/cjs/chunks/slider.vue_vue_type_style_index_0_lang.js +0 -52
  30. package/dist/cjs/chunks/switch.vue_vue_type_style_index_0_lang.js +0 -38
  31. package/dist/cjs/chunks/use-color-model.js +0 -992
  32. package/dist/cjs/color-area.js +0 -175
  33. package/dist/cjs/color-picker.js +0 -514
  34. package/dist/cjs/color-swatch.js +0 -59
  35. package/dist/cjs/color.js +0 -102
  36. package/dist/cjs/combobox-anchor.js +0 -3
  37. package/dist/cjs/combobox-empty.js +0 -32
  38. package/dist/cjs/combobox-group.js +0 -42
  39. package/dist/cjs/combobox-input.js +0 -63
  40. package/dist/cjs/combobox-item.js +0 -109
  41. package/dist/cjs/combobox-list.js +0 -62
  42. package/dist/cjs/combobox-root.js +0 -40
  43. package/dist/cjs/combobox-separator.js +0 -32
  44. package/dist/cjs/combobox-trigger.js +0 -47
  45. package/dist/cjs/combobox.js +0 -233
  46. package/dist/cjs/command-group.js +0 -41
  47. package/dist/cjs/command-input.js +0 -42
  48. package/dist/cjs/command-item.js +0 -34
  49. package/dist/cjs/command-list.js +0 -52
  50. package/dist/cjs/command-root.js +0 -45
  51. package/dist/cjs/command-separator.js +0 -32
  52. package/dist/cjs/compact-button.js +0 -42
  53. package/dist/cjs/content-divider.js +0 -3
  54. package/dist/cjs/context-menu-item.js +0 -134
  55. package/dist/cjs/crypto.js +0 -8
  56. package/dist/cjs/dropdown-item.js +0 -99
  57. package/dist/cjs/dropdown-menu-content.js +0 -3
  58. package/dist/cjs/dropdown-menu-group.js +0 -24
  59. package/dist/cjs/dropdown-menu-item.js +0 -68
  60. package/dist/cjs/dropdown-menu-label.js +0 -31
  61. package/dist/cjs/dropdown-menu-separator.js +0 -25
  62. package/dist/cjs/dropdown-menu-sub-content.js +0 -3
  63. package/dist/cjs/dropdown-menu-sub-trigger.js +0 -3
  64. package/dist/cjs/dropdown-menu-sub.js +0 -3
  65. package/dist/cjs/dropdown-menu-trigger.js +0 -26
  66. package/dist/cjs/dropdown-menu.js +0 -32
  67. package/dist/cjs/dropdown.js +0 -291
  68. package/dist/cjs/fancy-button.js +0 -38
  69. package/dist/cjs/hint-text.js +0 -36
  70. package/dist/cjs/hue-slider.js +0 -133
  71. package/dist/cjs/index.js +0 -217
  72. package/dist/cjs/label.js +0 -55
  73. package/dist/cjs/link-button.js +0 -44
  74. package/dist/cjs/modal-body.js +0 -22
  75. package/dist/cjs/modal-close.js +0 -3
  76. package/dist/cjs/modal-content.js +0 -48
  77. package/dist/cjs/modal-footer.js +0 -22
  78. package/dist/cjs/modal-header.js +0 -81
  79. package/dist/cjs/modal-trigger.js +0 -3
  80. package/dist/cjs/modal.js +0 -3
  81. package/dist/cjs/popover-content.js +0 -104
  82. package/dist/cjs/popover-trigger.js +0 -24
  83. package/dist/cjs/popover.js +0 -3
  84. package/dist/cjs/scroll-area.js +0 -3
  85. package/dist/cjs/scroll-bar.js +0 -39
  86. package/dist/cjs/segmented-control-item.js +0 -41
  87. package/dist/cjs/segmented-control.js +0 -40
  88. package/dist/cjs/select-content.js +0 -61
  89. package/dist/cjs/select-group.js +0 -3
  90. package/dist/cjs/select-icon.js +0 -25
  91. package/dist/cjs/select-item.js +0 -44
  92. package/dist/cjs/select-label.js +0 -32
  93. package/dist/cjs/select-separator.js +0 -26
  94. package/dist/cjs/select-trigger.js +0 -40
  95. package/dist/cjs/select-value.js +0 -31
  96. package/dist/cjs/select.js +0 -3
  97. package/dist/cjs/shims.js +0 -1
  98. package/dist/cjs/slider.js +0 -3
  99. package/dist/cjs/social-button.js +0 -45
  100. package/dist/cjs/status-badge.js +0 -49
  101. package/dist/cjs/switch.js +0 -3
  102. package/dist/cjs/tab-menu-content.js +0 -32
  103. package/dist/cjs/tab-menu-item.js +0 -44
  104. package/dist/cjs/tab-menu-list.js +0 -34
  105. package/dist/cjs/tab-menu.js +0 -32
  106. package/dist/cjs/text-input-affix.js +0 -27
  107. package/dist/cjs/text-input-button.js +0 -31
  108. package/dist/cjs/text-input.js +0 -119
  109. package/dist/cjs/textarea.js +0 -56
  110. package/dist/cjs/tooltip.js +0 -115
  111. package/dist/cjs/use-color-model.js +0 -6
  112. package/dist/cjs/use-delegated-props.js +0 -14
  113. package/dist/cjs/use-user-select.js +0 -39
  114. package/dist/components/alert/alert.d.ts +0 -30
  115. package/dist/components/alert/index.d.ts +0 -2
  116. package/dist/components/badge/badge.d.ts +0 -17
  117. package/dist/components/badge/index.d.ts +0 -4
  118. package/dist/components/badge/status-badge.d.ts +0 -13
  119. package/dist/components/button/button.d.ts +0 -22
  120. package/dist/components/button/compact-button.d.ts +0 -15
  121. package/dist/components/button/fancy-button.d.ts +0 -20
  122. package/dist/components/button/index.d.ts +0 -10
  123. package/dist/components/button/link-button.d.ts +0 -22
  124. package/dist/components/button/social-button.d.ts +0 -10
  125. package/dist/components/checkbox/checkbox.d.ts +0 -11
  126. package/dist/components/checkbox/index.d.ts +0 -2
  127. package/dist/components/color-picker/alpha-slider.d.ts +0 -15
  128. package/dist/components/color-picker/color-area.d.ts +0 -9
  129. package/dist/components/color-picker/color-picker.d.ts +0 -47
  130. package/dist/components/color-picker/color-swatch.d.ts +0 -19
  131. package/dist/components/color-picker/composable/use-color-model.d.ts +0 -7
  132. package/dist/components/color-picker/composable/use-user-select.d.ts +0 -8
  133. package/dist/components/color-picker/hue-slider.d.ts +0 -14
  134. package/dist/components/color-picker/index.d.ts +0 -10
  135. package/dist/components/combobox/combobox-anchor.d.ts +0 -22
  136. package/dist/components/combobox/combobox-empty.d.ts +0 -22
  137. package/dist/components/combobox/combobox-group.d.ts +0 -23
  138. package/dist/components/combobox/combobox-input.d.ts +0 -17
  139. package/dist/components/combobox/combobox-item.d.ts +0 -31
  140. package/dist/components/combobox/combobox-list.d.ts +0 -36
  141. package/dist/components/combobox/combobox-root.d.ts +0 -29
  142. package/dist/components/combobox/combobox-separator.d.ts +0 -22
  143. package/dist/components/combobox/combobox-trigger.d.ts +0 -20
  144. package/dist/components/combobox/combobox.d.ts +0 -42
  145. package/dist/components/combobox/index.d.ts +0 -20
  146. package/dist/components/content-divider/content-divider.d.ts +0 -10
  147. package/dist/components/content-divider/index.d.ts +0 -2
  148. package/dist/components/dropdown/context-menu-item.d.ts +0 -39
  149. package/dist/components/dropdown/dropdown-item.d.ts +0 -30
  150. package/dist/components/dropdown/dropdown.d.ts +0 -55
  151. package/dist/components/dropdown/index.d.ts +0 -6
  152. package/dist/components/dropdown-menu/dropdown-menu-content.d.ts +0 -36
  153. package/dist/components/dropdown-menu/dropdown-menu-group.d.ts +0 -18
  154. package/dist/components/dropdown-menu/dropdown-menu-item.d.ts +0 -26
  155. package/dist/components/dropdown-menu/dropdown-menu-label.d.ts +0 -22
  156. package/dist/components/dropdown-menu/dropdown-menu-separator.d.ts +0 -7
  157. package/dist/components/dropdown-menu/dropdown-menu-sub-content.d.ts +0 -38
  158. package/dist/components/dropdown-menu/dropdown-menu-sub-trigger.d.ts +0 -22
  159. package/dist/components/dropdown-menu/dropdown-menu-sub.d.ts +0 -22
  160. package/dist/components/dropdown-menu/dropdown-menu-trigger.d.ts +0 -18
  161. package/dist/components/dropdown-menu/dropdown-menu.d.ts +0 -18
  162. package/dist/components/dropdown-menu/index.d.ts +0 -20
  163. package/dist/components/hint-text/hint-text.d.ts +0 -11
  164. package/dist/components/hint-text/index.d.ts +0 -2
  165. package/dist/components/index.d.ts +0 -21
  166. package/dist/components/label/index.d.ts +0 -2
  167. package/dist/components/label/label.d.ts +0 -29
  168. package/dist/components/modal/index.d.ts +0 -14
  169. package/dist/components/modal/modal-body.d.ts +0 -21
  170. package/dist/components/modal/modal-close.d.ts +0 -18
  171. package/dist/components/modal/modal-content.d.ts +0 -37
  172. package/dist/components/modal/modal-footer.d.ts +0 -21
  173. package/dist/components/modal/modal-header.d.ts +0 -16
  174. package/dist/components/modal/modal-trigger.d.ts +0 -18
  175. package/dist/components/modal/modal.d.ts +0 -22
  176. package/dist/components/popover/index.d.ts +0 -6
  177. package/dist/components/popover/popover-content.d.ts +0 -41
  178. package/dist/components/popover/popover-trigger.d.ts +0 -18
  179. package/dist/components/popover/popover.d.ts +0 -22
  180. package/dist/components/scroll-area/index.d.ts +0 -2
  181. package/dist/components/scroll-area/scroll-area.d.ts +0 -22
  182. package/dist/components/scroll-area/scroll-bar.d.ts +0 -9
  183. package/dist/components/segmented-control/index.d.ts +0 -4
  184. package/dist/components/segmented-control/segmented-control-item.d.ts +0 -22
  185. package/dist/components/segmented-control/segmented-control.d.ts +0 -26
  186. package/dist/components/select/index.d.ts +0 -18
  187. package/dist/components/select/select-content.d.ts +0 -33
  188. package/dist/components/select/select-group.d.ts +0 -18
  189. package/dist/components/select/select-icon.d.ts +0 -21
  190. package/dist/components/select/select-item.d.ts +0 -22
  191. package/dist/components/select/select-label.d.ts +0 -22
  192. package/dist/components/select/select-separator.d.ts +0 -7
  193. package/dist/components/select/select-trigger.d.ts +0 -28
  194. package/dist/components/select/select-value.d.ts +0 -22
  195. package/dist/components/select/select.d.ts +0 -28
  196. package/dist/components/slider/index.d.ts +0 -2
  197. package/dist/components/slider/slider.d.ts +0 -13
  198. package/dist/components/switch/index.d.ts +0 -2
  199. package/dist/components/switch/switch.d.ts +0 -11
  200. package/dist/components/tab-menu/index.d.ts +0 -8
  201. package/dist/components/tab-menu/tab-menu-content.d.ts +0 -22
  202. package/dist/components/tab-menu/tab-menu-item.d.ts +0 -24
  203. package/dist/components/tab-menu/tab-menu-list.d.ts +0 -22
  204. package/dist/components/tab-menu/tab-menu.d.ts +0 -23
  205. package/dist/components/text-input/index.d.ts +0 -6
  206. package/dist/components/text-input/text-input-affix.d.ts +0 -23
  207. package/dist/components/text-input/text-input-button.d.ts +0 -23
  208. package/dist/components/text-input/text-input.d.ts +0 -32
  209. package/dist/components/textarea/index.d.ts +0 -2
  210. package/dist/components/textarea/textarea.d.ts +0 -22
  211. package/dist/components/tooltip/index.d.ts +0 -2
  212. package/dist/components/tooltip/tooltip.d.ts +0 -29
  213. package/dist/composables/use-delegated-props.d.ts +0 -2
  214. package/dist/es/alert.js +0 -112
  215. package/dist/es/alpha-slider.js +0 -4
  216. package/dist/es/badge.js +0 -56
  217. package/dist/es/button.js +0 -40
  218. package/dist/es/checkbox.js +0 -4
  219. package/dist/es/chunks/_plugin-vue_export-helper.js +0 -10
  220. package/dist/es/chunks/alpha-slider.js +0 -128
  221. package/dist/es/chunks/checkbox.vue_vue_type_style_index_0_lang.js +0 -39
  222. package/dist/es/chunks/clsx.js +0 -16
  223. package/dist/es/chunks/combobox-anchor.js +0 -32
  224. package/dist/es/chunks/content-divider.vue_vue_type_style_index_0_lang.js +0 -53
  225. package/dist/es/chunks/dropdown-menu-content.vue_vue_type_style_index_0_lang.js +0 -52
  226. package/dist/es/chunks/dropdown-menu-sub-content.vue_vue_type_style_index_0_lang.js +0 -50
  227. package/dist/es/chunks/dropdown-menu-sub-trigger.vue_vue_type_style_index_0_lang.js +0 -33
  228. package/dist/es/chunks/dropdown-menu-sub.js +0 -26
  229. package/dist/es/chunks/index.js +0 -9058
  230. package/dist/es/chunks/modal-close.js +0 -23
  231. package/dist/es/chunks/modal-trigger.js +0 -23
  232. package/dist/es/chunks/modal.js +0 -27
  233. package/dist/es/chunks/popover.js +0 -27
  234. package/dist/es/chunks/scroll-area.js +0 -42
  235. package/dist/es/chunks/select-group.js +0 -23
  236. package/dist/es/chunks/select.js +0 -39
  237. package/dist/es/chunks/slider.vue_vue_type_style_index_0_lang.js +0 -53
  238. package/dist/es/chunks/switch.vue_vue_type_style_index_0_lang.js +0 -39
  239. package/dist/es/chunks/use-color-model.js +0 -993
  240. package/dist/es/color-area.js +0 -176
  241. package/dist/es/color-picker.js +0 -515
  242. package/dist/es/color-swatch.js +0 -60
  243. package/dist/es/color.js +0 -102
  244. package/dist/es/combobox-anchor.js +0 -4
  245. package/dist/es/combobox-empty.js +0 -33
  246. package/dist/es/combobox-group.js +0 -43
  247. package/dist/es/combobox-input.js +0 -64
  248. package/dist/es/combobox-item.js +0 -110
  249. package/dist/es/combobox-list.js +0 -63
  250. package/dist/es/combobox-root.js +0 -41
  251. package/dist/es/combobox-separator.js +0 -33
  252. package/dist/es/combobox-trigger.js +0 -48
  253. package/dist/es/combobox.js +0 -234
  254. package/dist/es/command-group.js +0 -42
  255. package/dist/es/command-input.js +0 -43
  256. package/dist/es/command-item.js +0 -35
  257. package/dist/es/command-list.js +0 -53
  258. package/dist/es/command-root.js +0 -46
  259. package/dist/es/command-separator.js +0 -33
  260. package/dist/es/compact-button.js +0 -43
  261. package/dist/es/content-divider.js +0 -4
  262. package/dist/es/context-menu-item.js +0 -135
  263. package/dist/es/crypto.js +0 -8
  264. package/dist/es/dropdown-item.js +0 -100
  265. package/dist/es/dropdown-menu-content.js +0 -4
  266. package/dist/es/dropdown-menu-group.js +0 -25
  267. package/dist/es/dropdown-menu-item.js +0 -69
  268. package/dist/es/dropdown-menu-label.js +0 -32
  269. package/dist/es/dropdown-menu-separator.js +0 -26
  270. package/dist/es/dropdown-menu-sub-content.js +0 -4
  271. package/dist/es/dropdown-menu-sub-trigger.js +0 -4
  272. package/dist/es/dropdown-menu-sub.js +0 -4
  273. package/dist/es/dropdown-menu-trigger.js +0 -27
  274. package/dist/es/dropdown-menu.js +0 -33
  275. package/dist/es/dropdown.js +0 -292
  276. package/dist/es/fancy-button.js +0 -39
  277. package/dist/es/hint-text.js +0 -37
  278. package/dist/es/hue-slider.js +0 -134
  279. package/dist/es/index.js +0 -217
  280. package/dist/es/label.js +0 -56
  281. package/dist/es/link-button.js +0 -45
  282. package/dist/es/modal-body.js +0 -23
  283. package/dist/es/modal-close.js +0 -4
  284. package/dist/es/modal-content.js +0 -49
  285. package/dist/es/modal-footer.js +0 -23
  286. package/dist/es/modal-header.js +0 -82
  287. package/dist/es/modal-trigger.js +0 -4
  288. package/dist/es/modal.js +0 -4
  289. package/dist/es/popover-content.js +0 -105
  290. package/dist/es/popover-trigger.js +0 -25
  291. package/dist/es/popover.js +0 -4
  292. package/dist/es/scroll-area.js +0 -4
  293. package/dist/es/scroll-bar.js +0 -40
  294. package/dist/es/segmented-control-item.js +0 -42
  295. package/dist/es/segmented-control.js +0 -41
  296. package/dist/es/select-content.js +0 -62
  297. package/dist/es/select-group.js +0 -4
  298. package/dist/es/select-icon.js +0 -26
  299. package/dist/es/select-item.js +0 -45
  300. package/dist/es/select-label.js +0 -33
  301. package/dist/es/select-separator.js +0 -27
  302. package/dist/es/select-trigger.js +0 -41
  303. package/dist/es/select-value.js +0 -32
  304. package/dist/es/select.js +0 -4
  305. package/dist/es/shims.js +0 -1
  306. package/dist/es/slider.js +0 -4
  307. package/dist/es/social-button.js +0 -46
  308. package/dist/es/status-badge.js +0 -50
  309. package/dist/es/switch.js +0 -4
  310. package/dist/es/tab-menu-content.js +0 -33
  311. package/dist/es/tab-menu-item.js +0 -45
  312. package/dist/es/tab-menu-list.js +0 -35
  313. package/dist/es/tab-menu.js +0 -33
  314. package/dist/es/text-input-affix.js +0 -28
  315. package/dist/es/text-input-button.js +0 -32
  316. package/dist/es/text-input.js +0 -120
  317. package/dist/es/textarea.js +0 -57
  318. package/dist/es/tooltip.js +0 -116
  319. package/dist/es/use-color-model.js +0 -6
  320. package/dist/es/use-delegated-props.js +0 -14
  321. package/dist/es/use-user-select.js +0 -39
  322. package/dist/index.d.ts +0 -5
  323. package/dist/utils/color.d.ts +0 -26
  324. package/dist/utils/crypto.d.ts +0 -1
@@ -1,514 +0,0 @@
1
- "use strict";
2
- const Mo = require("vue");
3
- const useDelegatedProps = require("./use-delegated-props.js");
4
- const color = require("./color.js");
5
- const index = require("./chunks/index.js");
6
- const useColorModel = require("./chunks/use-color-model.js");
7
- const button = require("./button.js");
8
- require("./compact-button.js");
9
- ;/* empty css */
10
- ;/* empty css */
11
- ;/* empty css */
12
- const popoverContent = require("./popover-content.js");
13
- const popoverTrigger = require("./popover-trigger.js");
14
- const popover_vue_vue_type_script_setup_true_lang = require("./chunks/popover.js");
15
- const selectContent = require("./select-content.js");
16
- ;/* empty css */
17
- const selectItem = require("./select-item.js");
18
- ;/* empty css */
19
- ;/* empty css */
20
- const selectTrigger = require("./select-trigger.js");
21
- const selectValue = require("./select-value.js");
22
- const select_vue_vue_type_script_setup_true_lang = require("./chunks/select.js");
23
- ;/* empty css */
24
- require("./text-input-button.js");
25
- const textInput = require("./text-input.js");
26
- const alphaSlider_vue_vue_type_script_setup_true_lang = require("./chunks/alpha-slider.js");
27
- const colorArea = require("./color-area.js");
28
- const colorSwatch = require("./color-swatch.js");
29
- const hueSlider = require("./hue-slider.js");
30
- const _pluginVue_exportHelper = require("./chunks/_plugin-vue_export-helper.js");
31
- const _hoisted_1 = { class: "celeste-color-picker" };
32
- const _hoisted_2 = { class: "celeste-color-control-panel" };
33
- const _hoisted_3 = { class: "celeste-color-format" };
34
- const _hoisted_4 = { class: "celeste-color-controls" };
35
- const _hoisted_5 = { class: "celeste-color-format-inputs" };
36
- const _hoisted_6 = { class: "celeste-color-swatches" };
37
- const _sfc_main = /* @__PURE__ */ Mo.defineComponent({
38
- __name: "color-picker",
39
- props: {
40
- modelValue: { default: "hsl(240, 100%, 50%)" },
41
- label: { default: "Pick Color" },
42
- class: {},
43
- formats: { default: () => ["hex", "rgb", "hsl", "hsb"] },
44
- defaultFormat: {}
45
- },
46
- emits: ["update:modelValue"],
47
- setup(__props, { emit: __emit }) {
48
- Mo.useCssVars((_ctx) => ({
49
- "88e786d6": _ctx.modelValue
50
- }));
51
- const props = __props;
52
- const emit = __emit;
53
- const delegatedProps = useDelegatedProps.useDelegatedProps(props, "class");
54
- const forwarded = index.xe(delegatedProps, emit);
55
- const tinyColorRef = useColorModel.defineColorModel(props, emit);
56
- const hueRef = Mo.ref(tinyColorRef.value.toHsl().h);
57
- const currentColorFormat = Mo.ref(props.defaultFormat || "hex");
58
- const eyeDropper = Mo.ref(null);
59
- const hex = Mo.computed({
60
- get: () => tinyColorRef.value.toHexString().toUpperCase(),
61
- set: () => {
62
- }
63
- });
64
- const rgb = Mo.computed(() => {
65
- return tinyColorRef.value.toRgb();
66
- });
67
- const hsl = Mo.computed(() => {
68
- const { h, s, l } = tinyColorRef.value.toHsl();
69
- return {
70
- h: `${h.toFixed()}°`,
71
- s: `${(s * 100).toFixed()}%`,
72
- l: `${(l * 100).toFixed()}%`,
73
- a: tinyColorRef.value.getAlpha()
74
- };
75
- });
76
- const hsv = Mo.computed(() => {
77
- const { h, s, v } = tinyColorRef.value.toHsv();
78
- return {
79
- h: `${h.toFixed()}°`,
80
- s: `${(s * 100).toFixed()}%`,
81
- v: `${(v * 100).toFixed()}%`
82
- };
83
- });
84
- Mo.watch(tinyColorRef, (tinyColorInstance) => {
85
- const newHue = tinyColorInstance.toHsl().h;
86
- const saturation = tinyColorInstance.toHsl().s;
87
- if (saturation === 0 && hueRef.value !== 0) {
88
- return;
89
- }
90
- hueRef.value = newHue;
91
- }, { immediate: true });
92
- if (window.EyeDropper) {
93
- eyeDropper.value = new window.EyeDropper();
94
- }
95
- function sipColor() {
96
- if (!eyeDropper.value) {
97
- return;
98
- }
99
- eyeDropper.value.open().then((result) => {
100
- const newColor = useColorModel.tinycolor(result.sRGBHex);
101
- tinyColorRef.value = newColor;
102
- }).catch((e) => {
103
- });
104
- }
105
- function getCurrentColorValue(key) {
106
- let currentValue = 0;
107
- if (key === "r" || key === "g" || key === "b") {
108
- currentValue = rgb.value[key];
109
- } else if (key === "h") {
110
- currentValue = tinyColorRef.value.toHsl().h;
111
- } else if (key === "s" || key === "l" || key === "v") {
112
- if (currentColorFormat.value === "hsl") {
113
- const currentHsl = tinyColorRef.value.toHsl();
114
- currentValue = key === "s" ? currentHsl.s * 100 : currentHsl.l * 100;
115
- } else {
116
- const currentHsv = tinyColorRef.value.toHsv();
117
- currentValue = key === "s" ? currentHsv.s * 100 : currentHsv.v * 100;
118
- }
119
- } else if (key === "a") {
120
- currentValue = tinyColorRef.value.getAlpha() * 100;
121
- }
122
- return currentValue;
123
- }
124
- function validateInput(event) {
125
- const input = event.target;
126
- const inputEvent = event;
127
- const newValue = color.truncColorValue(input.value) + (inputEvent.data ?? "");
128
- if (!color.COLOR_NUMBER_VALIDATION_PATTERN.test(newValue)) {
129
- event.preventDefault();
130
- }
131
- }
132
- function validateHexInput(event) {
133
- const input = event.target;
134
- const inputEvent = event;
135
- const newValue = input.value + (inputEvent.data ?? "");
136
- if (!color.HEX_VALIDATION_PATTERN.test(newValue)) {
137
- event.preventDefault();
138
- }
139
- }
140
- function inputChangeHex(event) {
141
- var _a;
142
- const colorInput = (_a = event.target) == null ? void 0 : _a.value;
143
- if (!colorInput) {
144
- return;
145
- }
146
- tinyColorRef.value = useColorModel.tinycolor(colorInput);
147
- }
148
- function inputChangeRGB(event, key) {
149
- var _a;
150
- const value = Number((_a = event.target) == null ? void 0 : _a.value);
151
- const currentRgb = rgb.value;
152
- const newRgb = { ...currentRgb, [key]: value };
153
- tinyColorRef.value = useColorModel.tinycolor(newRgb);
154
- }
155
- function inputChangeHSL(event, key) {
156
- var _a;
157
- const HSLInput = (_a = event.target) == null ? void 0 : _a.value;
158
- let newHSLValue = color.truncColorValue(HSLInput);
159
- if (key === "s" || key === "l") {
160
- newHSLValue /= 100;
161
- }
162
- if (Number.isNaN(newHSLValue)) {
163
- return;
164
- }
165
- const newHSL = { [key]: newHSLValue };
166
- tinyColorRef.value = {
167
- ...tinyColorRef.value.toHsl(),
168
- ...newHSL
169
- };
170
- }
171
- function inputChangeHSB(event, key) {
172
- var _a;
173
- const HSBInput = (_a = event.target) == null ? void 0 : _a.value;
174
- const HSBValue = color.truncColorValue(HSBInput);
175
- if (Number.isNaN(HSBValue)) {
176
- return;
177
- }
178
- const newHSB = { [key]: HSBValue };
179
- tinyColorRef.value = {
180
- ...tinyColorRef.value.toHsv(),
181
- ...newHSB
182
- };
183
- }
184
- function inputChangeAlpha(event) {
185
- var _a;
186
- const alphaInput = (_a = event.target) == null ? void 0 : _a.value;
187
- const alphaValue = color.truncColorValue(alphaInput) / 100;
188
- if (Number.isNaN(alphaValue)) {
189
- return;
190
- }
191
- tinyColorRef.value = tinyColorRef.value.setAlpha(Math.max(0, Math.min(1, alphaValue)));
192
- }
193
- function handleColorValueKeyDown(event, key) {
194
- const direction = color.resolveArrowDirection(event);
195
- const currentValue = getCurrentColorValue(key);
196
- const { min, max } = color.getColorConstraints(key);
197
- const newValue = color.clamp(color.bumpColorValue(currentValue, direction), min, max);
198
- if (key === "r" || key === "g" || key === "b") {
199
- const newColor = useColorModel.tinycolor({ ...rgb.value, [key]: newValue });
200
- emit("update:modelValue", newColor.toString());
201
- } else if (key === "h") {
202
- if (currentColorFormat.value === "hsl") {
203
- const newColor = useColorModel.tinycolor({ ...tinyColorRef.value.toHsl(), h: newValue });
204
- emit("update:modelValue", newColor.toString());
205
- } else {
206
- const newColor = useColorModel.tinycolor({ ...tinyColorRef.value.toHsv(), h: newValue });
207
- emit("update:modelValue", newColor.toString());
208
- }
209
- } else if (key === "s" || key === "l" || key === "v") {
210
- if (currentColorFormat.value === "hsl") {
211
- const newColor = useColorModel.tinycolor({ ...tinyColorRef.value.toHsl(), [key]: newValue / 100 });
212
- emit("update:modelValue", newColor.toString());
213
- } else {
214
- const currentHsv = tinyColorRef.value.toHsv();
215
- const newColor = useColorModel.tinycolor({ ...currentHsv, [key]: newValue / 100 });
216
- emit("update:modelValue", newColor.toString());
217
- }
218
- } else if (key === "a") {
219
- const newColor = tinyColorRef.value.setAlpha(newValue / 100);
220
- emit("update:modelValue", newColor.toString());
221
- }
222
- }
223
- return (_ctx, _cache) => {
224
- return Mo.openBlock(), Mo.createBlock(Mo.unref(popover_vue_vue_type_script_setup_true_lang._sfc_main), null, {
225
- default: Mo.withCtx(() => [
226
- Mo.createVNode(Mo.unref(popoverTrigger), null, {
227
- default: Mo.withCtx(() => [
228
- Mo.createVNode(Mo.unref(button), {
229
- class: "celeste-picker-trigger",
230
- intent: "neutral",
231
- variant: "stroke"
232
- }, {
233
- default: Mo.withCtx(() => [
234
- _cache[53] || (_cache[53] = Mo.createElementVNode("span", { class: "celeste-selected-color" }, null, -1)),
235
- Mo.createTextVNode(" " + Mo.toDisplayString(_ctx.label), 1)
236
- ]),
237
- _: 1
238
- })
239
- ]),
240
- _: 1
241
- }),
242
- Mo.createVNode(Mo.unref(popoverContent), { dismissible: false }, {
243
- default: Mo.withCtx(() => [
244
- Mo.createElementVNode("div", Mo.mergeProps({ class: "celeste-color-picker-wrapper" }, Mo.unref(forwarded)), [
245
- Mo.createElementVNode("div", _hoisted_1, [
246
- Mo.createVNode(Mo.unref(colorArea), {
247
- modelValue: Mo.unref(tinyColorRef),
248
- "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => Mo.isRef(tinyColorRef) ? tinyColorRef.value = $event : null),
249
- hue: hueRef.value
250
- }, null, 8, ["modelValue", "hue"]),
251
- Mo.createVNode(Mo.unref(hueSlider), {
252
- modelValue: hueRef.value,
253
- "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => hueRef.value = $event)
254
- }, null, 8, ["modelValue"]),
255
- Mo.createVNode(alphaSlider_vue_vue_type_script_setup_true_lang._sfc_main, {
256
- modelValue: Mo.unref(tinyColorRef),
257
- "onUpdate:modelValue": _cache[2] || (_cache[2] = ($event) => Mo.isRef(tinyColorRef) ? tinyColorRef.value = $event : null)
258
- }, null, 8, ["modelValue"]),
259
- Mo.createElementVNode("div", _hoisted_2, [
260
- Mo.createVNode(Mo.unref(select_vue_vue_type_script_setup_true_lang._sfc_main), {
261
- modelValue: currentColorFormat.value,
262
- "onUpdate:modelValue": _cache[3] || (_cache[3] = ($event) => currentColorFormat.value = $event),
263
- name: "color-format"
264
- }, {
265
- default: Mo.withCtx(() => [
266
- Mo.createVNode(Mo.unref(selectTrigger), { variant: "inline" }, {
267
- default: Mo.withCtx(() => [
268
- Mo.createVNode(Mo.unref(selectValue), {
269
- placeholder: "HEX",
270
- class: "celeste-selected-color-format"
271
- }, {
272
- default: Mo.withCtx(() => [
273
- Mo.createTextVNode(Mo.toDisplayString(currentColorFormat.value), 1)
274
- ]),
275
- _: 1
276
- })
277
- ]),
278
- _: 1
279
- }),
280
- Mo.createVNode(Mo.unref(selectContent), { width: "fit" }, {
281
- default: Mo.withCtx(() => [
282
- (Mo.openBlock(true), Mo.createElementBlock(Mo.Fragment, null, Mo.renderList(props.formats, (format) => {
283
- return Mo.openBlock(), Mo.createBlock(Mo.unref(selectItem), {
284
- key: format,
285
- value: format
286
- }, {
287
- default: Mo.withCtx(() => [
288
- Mo.createElementVNode("span", _hoisted_3, Mo.toDisplayString(format), 1)
289
- ]),
290
- _: 2
291
- }, 1032, ["value"]);
292
- }), 128))
293
- ]),
294
- _: 1
295
- })
296
- ]),
297
- _: 1
298
- }, 8, ["modelValue"]),
299
- Mo.createElementVNode("div", _hoisted_4, [
300
- eyeDropper.value ? (Mo.openBlock(), Mo.createBlock(Mo.unref(button), {
301
- key: 0,
302
- class: "celeste-color-sip",
303
- variant: "stroke",
304
- size: "xxs",
305
- intent: "neutral",
306
- onClick: sipColor
307
- }, {
308
- default: Mo.withCtx(() => _cache[54] || (_cache[54] = [
309
- Mo.createElementVNode("i", { class: "i-celeste-sip-line" }, null, -1)
310
- ])),
311
- _: 1
312
- })) : Mo.createCommentVNode("", true),
313
- Mo.createElementVNode("div", _hoisted_5, [
314
- currentColorFormat.value === "hex" ? (Mo.openBlock(), Mo.createBlock(Mo.unref(textInput), {
315
- key: 0,
316
- modelValue: hex.value,
317
- "onUpdate:modelValue": _cache[4] || (_cache[4] = ($event) => hex.value = $event),
318
- autocomplete: "off",
319
- name: "hex",
320
- placeholder: "#FFFFFF",
321
- type: "text",
322
- class: "color-input",
323
- size: "xs",
324
- onBeforeinput: validateHexInput,
325
- onFocusout: inputChangeHex,
326
- onKeydown: Mo.withKeys(Mo.withModifiers(inputChangeHex, ["prevent"]), ["enter"])
327
- }, null, 8, ["modelValue", "onKeydown"])) : currentColorFormat.value === "rgb" ? (Mo.openBlock(), Mo.createElementBlock(Mo.Fragment, { key: 1 }, [
328
- Mo.createVNode(Mo.unref(textInput), {
329
- modelValue: rgb.value.r,
330
- "onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => rgb.value.r = $event),
331
- autocomplete: "off",
332
- name: "red",
333
- type: "text",
334
- class: "color-input",
335
- size: "xs",
336
- onBeforeinput: validateInput,
337
- onFocusout: _cache[6] || (_cache[6] = (e) => inputChangeRGB(e, "r")),
338
- onKeydown: [
339
- _cache[7] || (_cache[7] = Mo.withKeys(Mo.withModifiers((e) => inputChangeRGB(e, "r"), ["prevent"]), ["enter"])),
340
- _cache[8] || (_cache[8] = Mo.withKeys(Mo.withModifiers((e) => handleColorValueKeyDown(e, "r"), ["prevent", "stop"]), ["up"])),
341
- _cache[9] || (_cache[9] = Mo.withKeys(Mo.withModifiers((e) => handleColorValueKeyDown(e, "r"), ["prevent", "stop"]), ["down"]))
342
- ]
343
- }, null, 8, ["modelValue"]),
344
- Mo.createVNode(Mo.unref(textInput), {
345
- modelValue: rgb.value.g,
346
- "onUpdate:modelValue": _cache[10] || (_cache[10] = ($event) => rgb.value.g = $event),
347
- autocomplete: "off",
348
- name: "green",
349
- type: "text",
350
- class: "color-input",
351
- size: "xs",
352
- onBeforeinput: validateInput,
353
- onFocusout: _cache[11] || (_cache[11] = (e) => inputChangeRGB(e, "g")),
354
- onKeydown: [
355
- _cache[12] || (_cache[12] = Mo.withKeys(Mo.withModifiers((e) => inputChangeRGB(e, "g"), ["prevent"]), ["enter"])),
356
- _cache[13] || (_cache[13] = Mo.withKeys(Mo.withModifiers((e) => handleColorValueKeyDown(e, "g"), ["prevent", "stop"]), ["up"])),
357
- _cache[14] || (_cache[14] = Mo.withKeys(Mo.withModifiers((e) => handleColorValueKeyDown(e, "g"), ["prevent", "stop"]), ["down"]))
358
- ]
359
- }, null, 8, ["modelValue"]),
360
- Mo.createVNode(Mo.unref(textInput), {
361
- modelValue: rgb.value.b,
362
- "onUpdate:modelValue": _cache[15] || (_cache[15] = ($event) => rgb.value.b = $event),
363
- autocomplete: "off",
364
- name: "blue",
365
- type: "text",
366
- class: "color-input",
367
- size: "xs",
368
- onBeforeinput: validateInput,
369
- onFocusout: _cache[16] || (_cache[16] = (e) => inputChangeRGB(e, "b")),
370
- onKeydown: [
371
- _cache[17] || (_cache[17] = Mo.withKeys(Mo.withModifiers((e) => inputChangeRGB(e, "b"), ["prevent"]), ["enter"])),
372
- _cache[18] || (_cache[18] = Mo.withKeys(Mo.withModifiers((e) => handleColorValueKeyDown(e, "b"), ["prevent", "stop"]), ["up"])),
373
- _cache[19] || (_cache[19] = Mo.withKeys(Mo.withModifiers((e) => handleColorValueKeyDown(e, "b"), ["prevent", "stop"]), ["down"]))
374
- ]
375
- }, null, 8, ["modelValue"])
376
- ], 64)) : currentColorFormat.value === "hsl" ? (Mo.openBlock(), Mo.createElementBlock(Mo.Fragment, { key: 2 }, [
377
- Mo.createVNode(Mo.unref(textInput), {
378
- modelValue: hsl.value.h,
379
- "onUpdate:modelValue": _cache[20] || (_cache[20] = ($event) => hsl.value.h = $event),
380
- autocomplete: "off",
381
- name: "hue",
382
- type: "text",
383
- class: "color-input",
384
- size: "xs",
385
- onBeforeinput: validateInput,
386
- onFocusout: _cache[21] || (_cache[21] = (e) => inputChangeHSL(e, "h")),
387
- onKeydown: [
388
- _cache[22] || (_cache[22] = Mo.withKeys(Mo.withModifiers((e) => inputChangeHSL(e, "h"), ["prevent"]), ["enter"])),
389
- _cache[23] || (_cache[23] = Mo.withKeys(Mo.withModifiers((e) => handleColorValueKeyDown(e, "h"), ["prevent", "stop"]), ["up"])),
390
- _cache[24] || (_cache[24] = Mo.withKeys(Mo.withModifiers((e) => handleColorValueKeyDown(e, "h"), ["prevent", "stop"]), ["down"]))
391
- ]
392
- }, null, 8, ["modelValue"]),
393
- Mo.createVNode(Mo.unref(textInput), {
394
- modelValue: hsl.value.s,
395
- "onUpdate:modelValue": _cache[25] || (_cache[25] = ($event) => hsl.value.s = $event),
396
- autocomplete: "off",
397
- name: "saturation",
398
- type: "text",
399
- class: "color-input",
400
- size: "xs",
401
- onBeforeinput: validateInput,
402
- onFocusout: _cache[26] || (_cache[26] = (e) => inputChangeHSL(e, "s")),
403
- onKeydown: [
404
- _cache[27] || (_cache[27] = Mo.withKeys(Mo.withModifiers((e) => inputChangeHSL(e, "s"), ["prevent"]), ["enter"])),
405
- _cache[28] || (_cache[28] = Mo.withKeys(Mo.withModifiers((e) => handleColorValueKeyDown(e, "s"), ["prevent", "stop"]), ["up"])),
406
- _cache[29] || (_cache[29] = Mo.withKeys(Mo.withModifiers((e) => handleColorValueKeyDown(e, "s"), ["prevent", "stop"]), ["down"]))
407
- ]
408
- }, null, 8, ["modelValue"]),
409
- Mo.createVNode(Mo.unref(textInput), {
410
- modelValue: hsl.value.l,
411
- "onUpdate:modelValue": _cache[30] || (_cache[30] = ($event) => hsl.value.l = $event),
412
- autocomplete: "off",
413
- name: "lightness",
414
- type: "text",
415
- class: "color-input",
416
- size: "xs",
417
- onBeforeinput: validateInput,
418
- onFocusout: _cache[31] || (_cache[31] = (e) => inputChangeHSL(e, "l")),
419
- onKeydown: [
420
- _cache[32] || (_cache[32] = Mo.withKeys(Mo.withModifiers((e) => inputChangeHSL(e, "l"), ["prevent"]), ["enter"])),
421
- _cache[33] || (_cache[33] = Mo.withKeys(Mo.withModifiers((e) => handleColorValueKeyDown(e, "l"), ["prevent", "stop"]), ["up"])),
422
- _cache[34] || (_cache[34] = Mo.withKeys(Mo.withModifiers((e) => handleColorValueKeyDown(e, "l"), ["prevent", "stop"]), ["down"]))
423
- ]
424
- }, null, 8, ["modelValue"])
425
- ], 64)) : currentColorFormat.value === "hsb" ? (Mo.openBlock(), Mo.createElementBlock(Mo.Fragment, { key: 3 }, [
426
- Mo.createVNode(Mo.unref(textInput), {
427
- modelValue: hsv.value.h,
428
- "onUpdate:modelValue": _cache[35] || (_cache[35] = ($event) => hsv.value.h = $event),
429
- autocomplete: "off",
430
- name: "hue",
431
- type: "text",
432
- class: "color-input",
433
- size: "xs",
434
- onBeforeinput: validateInput,
435
- onFocusout: _cache[36] || (_cache[36] = (e) => inputChangeHSB(e, "h")),
436
- onKeydown: [
437
- _cache[37] || (_cache[37] = Mo.withKeys(Mo.withModifiers((e) => inputChangeHSB(e, "h"), ["prevent"]), ["enter"])),
438
- _cache[38] || (_cache[38] = Mo.withKeys(Mo.withModifiers((e) => handleColorValueKeyDown(e, "h"), ["prevent", "stop"]), ["up"])),
439
- _cache[39] || (_cache[39] = Mo.withKeys(Mo.withModifiers((e) => handleColorValueKeyDown(e, "h"), ["prevent", "stop"]), ["down"]))
440
- ]
441
- }, null, 8, ["modelValue"]),
442
- Mo.createVNode(Mo.unref(textInput), {
443
- modelValue: hsv.value.s,
444
- "onUpdate:modelValue": _cache[40] || (_cache[40] = ($event) => hsv.value.s = $event),
445
- autocomplete: "off",
446
- name: "saturation",
447
- type: "text",
448
- class: "color-input",
449
- size: "xs",
450
- onBeforeinput: validateInput,
451
- onFocusout: _cache[41] || (_cache[41] = (e) => inputChangeHSB(e, "s")),
452
- onKeydown: [
453
- _cache[42] || (_cache[42] = Mo.withKeys(Mo.withModifiers((e) => inputChangeHSB(e, "s"), ["prevent"]), ["enter"])),
454
- _cache[43] || (_cache[43] = Mo.withKeys(Mo.withModifiers((e) => handleColorValueKeyDown(e, "s"), ["prevent", "stop"]), ["up"])),
455
- _cache[44] || (_cache[44] = Mo.withKeys(Mo.withModifiers((e) => handleColorValueKeyDown(e, "s"), ["prevent", "stop"]), ["down"]))
456
- ]
457
- }, null, 8, ["modelValue"]),
458
- Mo.createVNode(Mo.unref(textInput), {
459
- modelValue: hsv.value.v,
460
- "onUpdate:modelValue": _cache[45] || (_cache[45] = ($event) => hsv.value.v = $event),
461
- autocomplete: "off",
462
- name: "brightness",
463
- type: "text",
464
- class: "color-input",
465
- size: "xs",
466
- onBeforeinput: validateInput,
467
- onFocusout: _cache[46] || (_cache[46] = (e) => inputChangeHSB(e, "v")),
468
- onKeydown: [
469
- _cache[47] || (_cache[47] = Mo.withKeys(Mo.withModifiers((e) => inputChangeHSB(e, "v"), ["prevent"]), ["enter"])),
470
- _cache[48] || (_cache[48] = Mo.withKeys(Mo.withModifiers((e) => handleColorValueKeyDown(e, "v"), ["prevent", "stop"]), ["up"])),
471
- _cache[49] || (_cache[49] = Mo.withKeys(Mo.withModifiers((e) => handleColorValueKeyDown(e, "v"), ["prevent", "stop"]), ["down"]))
472
- ]
473
- }, null, 8, ["modelValue"])
474
- ], 64)) : Mo.createCommentVNode("", true),
475
- Mo.createVNode(Mo.unref(textInput), {
476
- autocomplete: "off",
477
- name: "alpha",
478
- placeholder: "100",
479
- type: "text",
480
- class: "color-input",
481
- size: "xs",
482
- value: `${(Mo.unref(tinyColorRef).getAlpha() * 100).toFixed()}%`,
483
- onBeforeinput: validateInput,
484
- onFocusout: inputChangeAlpha,
485
- onKeydown: [
486
- Mo.withKeys(Mo.withModifiers(inputChangeAlpha, ["prevent", "stop"]), ["enter"]),
487
- _cache[50] || (_cache[50] = Mo.withKeys(Mo.withModifiers((e) => handleColorValueKeyDown(e, "a"), ["prevent", "stop"]), ["up"])),
488
- _cache[51] || (_cache[51] = Mo.withKeys(Mo.withModifiers((e) => handleColorValueKeyDown(e, "a"), ["prevent", "stop"]), ["down"]))
489
- ]
490
- }, null, 8, ["value", "onKeydown"])
491
- ])
492
- ])
493
- ])
494
- ]),
495
- Mo.createElementVNode("div", _hoisted_6, [
496
- _ctx.$slots.swatches ? Mo.renderSlot(_ctx.$slots, "swatches", { key: 0 }, void 0, true) : (Mo.openBlock(), Mo.createBlock(colorSwatch, {
497
- key: 1,
498
- modelValue: Mo.unref(tinyColorRef),
499
- "onUpdate:modelValue": _cache[52] || (_cache[52] = ($event) => Mo.isRef(tinyColorRef) ? tinyColorRef.value = $event : null),
500
- hue: hueRef.value
501
- }, null, 8, ["modelValue", "hue"]))
502
- ])
503
- ], 16)
504
- ]),
505
- _: 3
506
- })
507
- ]),
508
- _: 3
509
- });
510
- };
511
- }
512
- });
513
- const colorPicker = /* @__PURE__ */ _pluginVue_exportHelper._export_sfc(_sfc_main, [["__scopeId", "data-v-5d801c64"]]);
514
- module.exports = colorPicker;
@@ -1,59 +0,0 @@
1
- "use strict";
2
- const Mo = require("vue");
3
- const color = require("./color.js");
4
- const useColorModel = require("./chunks/use-color-model.js");
5
- const _pluginVue_exportHelper = require("./chunks/_plugin-vue_export-helper.js");
6
- const _hoisted_1 = { class: "celeste-color-swatch" };
7
- const _hoisted_2 = { class: "swatch-label" };
8
- const _hoisted_3 = { class: "color-palette" };
9
- const _hoisted_4 = ["aria-selected", "title", "aria-label", "onClick", "onKeydown"];
10
- const _sfc_main = /* @__PURE__ */ Mo.defineComponent({
11
- __name: "color-swatch",
12
- props: {
13
- modelValue: {},
14
- label: { default: "Recommended Colors" },
15
- swatch: { default: () => color.DEFAULT_SWATCH },
16
- defaultColor: {}
17
- },
18
- emits: ["update:modelValue"],
19
- setup(__props, { emit: __emit }) {
20
- Mo.useCssVars((_ctx) => ({
21
- "0829b6e2": activeSwatchColorBg.value
22
- }));
23
- const props = __props;
24
- const emit = __emit;
25
- const tinyColorRef = useColorModel.defineColorModel(props, emit);
26
- const activeSwatchColorBg = Mo.computed(() => {
27
- return `0 0 0 2px var(--color-bg-white-0), 0 0 0 4px ${tinyColorRef.value.toRgbString()}`;
28
- });
29
- function handleSwatchColorClick(newColor) {
30
- tinyColorRef.value = useColorModel.tinycolor(newColor);
31
- }
32
- function isSwatchColorSelected(color2) {
33
- return tinyColorRef.value.toHex8String().toLocaleLowerCase() === useColorModel.tinycolor(color2).toHex8String().toLocaleLowerCase();
34
- }
35
- return (_ctx, _cache) => {
36
- return Mo.openBlock(), Mo.createElementBlock("div", _hoisted_1, [
37
- Mo.createElementVNode("span", _hoisted_2, Mo.toDisplayString(_ctx.label), 1),
38
- Mo.createElementVNode("div", _hoisted_3, [
39
- (Mo.openBlock(true), Mo.createElementBlock(Mo.Fragment, null, Mo.renderList(_ctx.swatch, (swatchColor) => {
40
- return Mo.openBlock(), Mo.createElementBlock("div", {
41
- key: swatchColor,
42
- class: "palette-color",
43
- style: Mo.normalizeStyle({ background: swatchColor }),
44
- "aria-selected": isSwatchColorSelected(swatchColor.toLowerCase()),
45
- title: swatchColor,
46
- "aria-label": `Color:${swatchColor}`,
47
- role: "option",
48
- tabindex: "0",
49
- onClick: ($event) => handleSwatchColorClick(swatchColor),
50
- onKeydown: Mo.withKeys(($event) => handleSwatchColorClick(swatchColor), ["space"])
51
- }, null, 44, _hoisted_4);
52
- }), 128))
53
- ])
54
- ]);
55
- };
56
- }
57
- });
58
- const ColorSwatch = /* @__PURE__ */ _pluginVue_exportHelper._export_sfc(_sfc_main, [["__scopeId", "data-v-095c22f0"]]);
59
- module.exports = ColorSwatch;
package/dist/cjs/color.js DELETED
@@ -1,102 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
- const COLOR_NUMBER_VALIDATION_PATTERN = /^\d*\s?[%°]?$/;
4
- const HEX_VALIDATION_PATTERN = /^#?[0-9a-f]{0,6}$/i;
5
- const DEFAULT_SWATCH = [
6
- "#717784ff",
7
- "#335cffff",
8
- "#ff8547ff",
9
- "#fb3747ff",
10
- "#1fc16bff",
11
- "#f6b51eff",
12
- "#7e52f4ff",
13
- "#47c2ffff"
14
- ];
15
- function getFractionDigit(data) {
16
- const str = data.toString();
17
- if (str.includes(".")) {
18
- return str.split(".")[1].length;
19
- }
20
- return 0;
21
- }
22
- function clamp(value, min, max) {
23
- return Math.min(Math.max(value, min), max);
24
- }
25
- function truncColorValue(value) {
26
- return Math.trunc(Number(value.replace(/[%°]/g, "").trim()));
27
- }
28
- function getColorConstraints(key) {
29
- const min = 0;
30
- let max = 0;
31
- if (key === "r" || key === "g" || key === "b") {
32
- max = 255;
33
- }
34
- if (key === "h") {
35
- max = 359;
36
- }
37
- if (["s", "l", "v", "a"].includes(key)) {
38
- max = 100;
39
- }
40
- return {
41
- min,
42
- max
43
- };
44
- }
45
- function bumpColorValue(value, direction) {
46
- let multiplier = 0;
47
- switch (direction) {
48
- case "down":
49
- multiplier = -1;
50
- break;
51
- case "up":
52
- multiplier = 1;
53
- break;
54
- }
55
- return value + multiplier;
56
- }
57
- function getPageXYFromEvent(e) {
58
- const coordinates = { x: 0, y: 0 };
59
- if (e instanceof MouseEvent) {
60
- coordinates.x = e.pageX;
61
- coordinates.y = e.pageY;
62
- }
63
- if (typeof TouchEvent !== "undefined" && e instanceof TouchEvent) {
64
- coordinates.x = e.touches ? e.touches[0].pageX : e.changedTouches ? e.changedTouches[0].pageX : 0;
65
- coordinates.y = e.touches ? e.touches[0].pageY : e.changedTouches ? e.changedTouches[0].pageY : 0;
66
- }
67
- return coordinates;
68
- }
69
- function getScrollXY() {
70
- const x = window.scrollX || window.pageXOffset || document.documentElement.scrollLeft || 0;
71
- const y = window.scrollY || window.pageYOffset || document.documentElement.scrollTop || 0;
72
- return { x, y };
73
- }
74
- function getAbsolutePosition(container) {
75
- const { x: scrollX, y: scrollY } = getScrollXY();
76
- const rect = container.getBoundingClientRect();
77
- return {
78
- x: rect.left + scrollX,
79
- y: rect.top + scrollY
80
- };
81
- }
82
- function resolveArrowDirection(e) {
83
- const arrowMap = {
84
- ArrowUp: "up",
85
- ArrowDown: "down",
86
- ArrowLeft: "left",
87
- ArrowRight: "right"
88
- };
89
- return arrowMap[e.code];
90
- }
91
- exports.COLOR_NUMBER_VALIDATION_PATTERN = COLOR_NUMBER_VALIDATION_PATTERN;
92
- exports.DEFAULT_SWATCH = DEFAULT_SWATCH;
93
- exports.HEX_VALIDATION_PATTERN = HEX_VALIDATION_PATTERN;
94
- exports.bumpColorValue = bumpColorValue;
95
- exports.clamp = clamp;
96
- exports.getAbsolutePosition = getAbsolutePosition;
97
- exports.getColorConstraints = getColorConstraints;
98
- exports.getFractionDigit = getFractionDigit;
99
- exports.getPageXYFromEvent = getPageXYFromEvent;
100
- exports.getScrollXY = getScrollXY;
101
- exports.resolveArrowDirection = resolveArrowDirection;
102
- exports.truncColorValue = truncColorValue;