neko-ui 2.9.2 → 2.9.4

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 (415) hide show
  1. package/es/avatar/favicon.svg +0 -0
  2. package/es/avatar/group.js +17 -18
  3. package/es/avatar/group.js.map +1 -1
  4. package/es/avatar/index.js +1 -2
  5. package/es/avatar/index.js.map +1 -1
  6. package/es/avatar/style.js +1 -2
  7. package/es/avatar/style.js.map +1 -1
  8. package/es/back-top/index.js +1 -2
  9. package/es/back-top/index.js.map +1 -1
  10. package/es/back-top/style.js +1 -2
  11. package/es/back-top/style.js.map +1 -1
  12. package/es/basic-config/index.js +1 -2
  13. package/es/basic-config/index.js.map +1 -1
  14. package/es/button/index.js +1 -2
  15. package/es/button/index.js.map +1 -1
  16. package/es/button/style.js +1 -2
  17. package/es/button/style.js.map +1 -1
  18. package/es/capture-screen/index.js +1 -2
  19. package/es/capture-screen/index.js.map +1 -1
  20. package/es/capture-screen/style.js +1 -2
  21. package/es/capture-screen/style.js.map +1 -1
  22. package/es/carousel/index.js +1 -2
  23. package/es/carousel/index.js.map +1 -1
  24. package/es/carousel/style.js +1 -2
  25. package/es/carousel/style.js.map +1 -1
  26. package/es/checkbox/index.js +1 -2
  27. package/es/checkbox/index.js.map +1 -1
  28. package/es/checkbox/style.js +1 -2
  29. package/es/checkbox/style.js.map +1 -1
  30. package/es/code/index.d.ts +6 -2
  31. package/es/code/index.js +1 -2
  32. package/es/code/index.js.map +1 -1
  33. package/es/code/style.js +25 -26
  34. package/es/code/style.js.map +1 -1
  35. package/es/code/worker.js +1 -2
  36. package/es/code/worker.js.map +1 -1
  37. package/es/color-palette/index.js +1 -2
  38. package/es/color-palette/index.js.map +1 -1
  39. package/es/color-palette/style.js +1 -2
  40. package/es/color-palette/style.js.map +1 -1
  41. package/es/color-picker/index.js +1 -2
  42. package/es/color-picker/index.js.map +1 -1
  43. package/es/color-picker/style.js +1 -2
  44. package/es/color-picker/style.js.map +1 -1
  45. package/es/cron/begin-interval.js +1 -2
  46. package/es/cron/begin-interval.js.map +1 -1
  47. package/es/cron/day.js +1 -2
  48. package/es/cron/day.js.map +1 -1
  49. package/es/cron/hour.js +1 -2
  50. package/es/cron/hour.js.map +1 -1
  51. package/es/cron/index.js +1 -2
  52. package/es/cron/index.js.map +1 -1
  53. package/es/cron/item.js +1 -2
  54. package/es/cron/item.js.map +1 -1
  55. package/es/cron/minute.js +1 -2
  56. package/es/cron/minute.js.map +1 -1
  57. package/es/cron/month.js +1 -2
  58. package/es/cron/month.js.map +1 -1
  59. package/es/cron/period.js +1 -2
  60. package/es/cron/period.js.map +1 -1
  61. package/es/cron/second.js +1 -2
  62. package/es/cron/second.js.map +1 -1
  63. package/es/cron/some.js +1 -2
  64. package/es/cron/some.js.map +1 -1
  65. package/es/cron/style.js +1 -2
  66. package/es/cron/style.js.map +1 -1
  67. package/es/cron/week.js +1 -2
  68. package/es/cron/week.js.map +1 -1
  69. package/es/cron/year.js +1 -2
  70. package/es/cron/year.js.map +1 -1
  71. package/es/date-picker/date.js +1 -2
  72. package/es/date-picker/date.js.map +1 -1
  73. package/es/date-picker/dayjs.js +1 -2
  74. package/es/date-picker/dayjs.js.map +1 -1
  75. package/es/date-picker/index.js +1 -2
  76. package/es/date-picker/index.js.map +1 -1
  77. package/es/date-picker/month.js +1 -2
  78. package/es/date-picker/month.js.map +1 -1
  79. package/es/date-picker/panel.js +1 -2
  80. package/es/date-picker/panel.js.map +1 -1
  81. package/es/date-picker/style.js +1 -2
  82. package/es/date-picker/style.js.map +1 -1
  83. package/es/date-picker/time.js +1 -2
  84. package/es/date-picker/time.js.map +1 -1
  85. package/es/date-picker/year.js +1 -2
  86. package/es/date-picker/year.js.map +1 -1
  87. package/es/dropdown/index.js +1 -2
  88. package/es/dropdown/index.js.map +1 -1
  89. package/es/empty/index.js +1 -2
  90. package/es/empty/index.js.map +1 -1
  91. package/es/from-schema/index.js +1 -2
  92. package/es/from-schema/index.js.map +1 -1
  93. package/es/get-options/index.js +1 -2
  94. package/es/get-options/index.js.map +1 -1
  95. package/es/highlight-text/index.js +1 -2
  96. package/es/highlight-text/index.js.map +1 -1
  97. package/es/img/index.js +1 -2
  98. package/es/img/index.js.map +1 -1
  99. package/es/img/lazy.js +1 -2
  100. package/es/img/lazy.js.map +1 -1
  101. package/es/img/style.js +1 -2
  102. package/es/img/style.js.map +1 -1
  103. package/es/index.js +1 -2
  104. package/es/index.js.map +1 -1
  105. package/es/input/index.js +1 -2
  106. package/es/input/index.js.map +1 -1
  107. package/es/input/style.js +1 -2
  108. package/es/input/style.js.map +1 -1
  109. package/es/input-number/index.js +1 -2
  110. package/es/input-number/index.js.map +1 -1
  111. package/es/katex/index.js +1 -2
  112. package/es/katex/index.js.map +1 -1
  113. package/es/md/common.d.ts +4 -0
  114. package/es/md/common.js +1 -0
  115. package/es/md/common.js.map +1 -0
  116. package/es/md/index.d.ts +1 -0
  117. package/es/md/index.js +1 -2
  118. package/es/md/index.js.map +1 -1
  119. package/es/md/worker.d.ts +9 -1
  120. package/es/md/worker.js +1 -2
  121. package/es/md/worker.js.map +1 -1
  122. package/es/md-style/index.js +1 -2
  123. package/es/md-style/index.js.map +1 -1
  124. package/es/menu/index.js +1 -2
  125. package/es/menu/index.js.map +1 -1
  126. package/es/menu/style.js +1 -2
  127. package/es/menu/style.js.map +1 -1
  128. package/es/modal/hooks.js +1 -2
  129. package/es/modal/hooks.js.map +1 -1
  130. package/es/modal/index.js +1 -2
  131. package/es/modal/index.js.map +1 -1
  132. package/es/modal/store.js +1 -2
  133. package/es/modal/store.js.map +1 -1
  134. package/es/modal/style.js +1 -2
  135. package/es/modal/style.js.map +1 -1
  136. package/es/notification/index.js +1 -2
  137. package/es/notification/index.js.map +1 -1
  138. package/es/notification/notification.js +1 -2
  139. package/es/notification/notification.js.map +1 -1
  140. package/es/notification/queque.js +1 -2
  141. package/es/notification/queque.js.map +1 -1
  142. package/es/notification/styles.js +1 -2
  143. package/es/notification/styles.js.map +1 -1
  144. package/es/pagination/index.js +1 -2
  145. package/es/pagination/index.js.map +1 -1
  146. package/es/pagination/styles.js +1 -2
  147. package/es/pagination/styles.js.map +1 -1
  148. package/es/popover/index.js +1 -2
  149. package/es/popover/index.js.map +1 -1
  150. package/es/popover/style.js +1 -2
  151. package/es/popover/style.js.map +1 -1
  152. package/es/prism/index.d.ts +0 -1
  153. package/es/prism/index.js +1 -2
  154. package/es/prism/index.js.map +1 -1
  155. package/es/provider/index.js +1 -2
  156. package/es/provider/index.js.map +1 -1
  157. package/es/qrcode/index.js +1 -2
  158. package/es/qrcode/index.js.map +1 -1
  159. package/es/qrcode/qrcode.js +1 -2
  160. package/es/qrcode/qrcode.js.map +1 -1
  161. package/es/radio/index.js +1 -2
  162. package/es/radio/index.js.map +1 -1
  163. package/es/radio/style.js +1 -2
  164. package/es/radio/style.js.map +1 -1
  165. package/es/segmented/index.js +1 -12
  166. package/es/segmented/index.js.map +1 -1
  167. package/es/segmented/style.js +1 -2
  168. package/es/segmented/style.js.map +1 -1
  169. package/es/select/index.js +1 -2
  170. package/es/select/index.js.map +1 -1
  171. package/es/select/style.js +1 -2
  172. package/es/select/style.js.map +1 -1
  173. package/es/skeleton/index.js +2 -25
  174. package/es/skeleton/index.js.map +1 -1
  175. package/es/spin/index.js +1 -2
  176. package/es/spin/index.js.map +1 -1
  177. package/es/switch/index.js +1 -2
  178. package/es/switch/index.js.map +1 -1
  179. package/es/switch/style.js +1 -2
  180. package/es/switch/style.js.map +1 -1
  181. package/es/table/index.js +1 -2
  182. package/es/table/index.js.map +1 -1
  183. package/es/table/styles.js +1 -2
  184. package/es/table/styles.js.map +1 -1
  185. package/es/tabs/index.js +1 -12
  186. package/es/tabs/index.js.map +1 -1
  187. package/es/tabs/style.d.ts +2 -2
  188. package/es/tabs/style.js +32 -33
  189. package/es/tabs/style.js.map +1 -1
  190. package/es/tag/index.js +1 -2
  191. package/es/tag/index.js.map +1 -1
  192. package/es/tag/style.js +1 -2
  193. package/es/tag/style.js.map +1 -1
  194. package/es/theme/index.js +1 -2
  195. package/es/theme/index.js.map +1 -1
  196. package/es/tree/index.js +1 -2
  197. package/es/tree/index.js.map +1 -1
  198. package/es/tree/register.js +1 -2
  199. package/es/tree/register.js.map +1 -1
  200. package/es/tree/style.js +1 -2
  201. package/es/tree/style.js.map +1 -1
  202. package/es/tree/type.js +1 -2
  203. package/es/tree/type.js.map +1 -1
  204. package/es/typography/index.js +1 -2
  205. package/es/typography/index.js.map +1 -1
  206. package/lib/avatar/favicon.svg +0 -0
  207. package/lib/avatar/group.js +18 -19
  208. package/lib/avatar/group.js.map +1 -1
  209. package/lib/avatar/index.js +3 -4
  210. package/lib/avatar/index.js.map +1 -1
  211. package/lib/avatar/style.js +3 -4
  212. package/lib/avatar/style.js.map +1 -1
  213. package/lib/back-top/index.js +1 -2
  214. package/lib/back-top/index.js.map +1 -1
  215. package/lib/back-top/style.js +1 -2
  216. package/lib/back-top/style.js.map +1 -1
  217. package/lib/basic-config/index.js +1 -2
  218. package/lib/basic-config/index.js.map +1 -1
  219. package/lib/button/index.js +1 -2
  220. package/lib/button/index.js.map +1 -1
  221. package/lib/button/style.js +1 -2
  222. package/lib/button/style.js.map +1 -1
  223. package/lib/capture-screen/index.js +1 -2
  224. package/lib/capture-screen/index.js.map +1 -1
  225. package/lib/capture-screen/style.js +1 -2
  226. package/lib/capture-screen/style.js.map +1 -1
  227. package/lib/carousel/index.js +1 -2
  228. package/lib/carousel/index.js.map +1 -1
  229. package/lib/carousel/style.js +1 -2
  230. package/lib/carousel/style.js.map +1 -1
  231. package/lib/checkbox/index.js +1 -2
  232. package/lib/checkbox/index.js.map +1 -1
  233. package/lib/checkbox/style.js +1 -2
  234. package/lib/checkbox/style.js.map +1 -1
  235. package/lib/code/index.d.ts +6 -2
  236. package/lib/code/index.js +1 -2
  237. package/lib/code/index.js.map +1 -1
  238. package/lib/code/style.js +26 -27
  239. package/lib/code/style.js.map +1 -1
  240. package/lib/code/worker.js +2 -3
  241. package/lib/code/worker.js.map +1 -1
  242. package/lib/color-palette/index.js +1 -2
  243. package/lib/color-palette/index.js.map +1 -1
  244. package/lib/color-palette/style.js +3 -4
  245. package/lib/color-palette/style.js.map +1 -1
  246. package/lib/color-picker/index.js +1 -2
  247. package/lib/color-picker/index.js.map +1 -1
  248. package/lib/color-picker/style.js +1 -2
  249. package/lib/color-picker/style.js.map +1 -1
  250. package/lib/cron/begin-interval.js +1 -2
  251. package/lib/cron/begin-interval.js.map +1 -1
  252. package/lib/cron/day.js +1 -2
  253. package/lib/cron/day.js.map +1 -1
  254. package/lib/cron/hour.js +1 -2
  255. package/lib/cron/hour.js.map +1 -1
  256. package/lib/cron/index.js +1 -2
  257. package/lib/cron/index.js.map +1 -1
  258. package/lib/cron/item.js +1 -2
  259. package/lib/cron/item.js.map +1 -1
  260. package/lib/cron/minute.js +1 -2
  261. package/lib/cron/minute.js.map +1 -1
  262. package/lib/cron/month.js +1 -2
  263. package/lib/cron/month.js.map +1 -1
  264. package/lib/cron/period.js +1 -2
  265. package/lib/cron/period.js.map +1 -1
  266. package/lib/cron/second.js +1 -2
  267. package/lib/cron/second.js.map +1 -1
  268. package/lib/cron/some.js +1 -2
  269. package/lib/cron/some.js.map +1 -1
  270. package/lib/cron/style.js +4 -5
  271. package/lib/cron/style.js.map +1 -1
  272. package/lib/cron/week.js +1 -2
  273. package/lib/cron/week.js.map +1 -1
  274. package/lib/cron/year.js +1 -2
  275. package/lib/cron/year.js.map +1 -1
  276. package/lib/date-picker/date.js +1 -2
  277. package/lib/date-picker/date.js.map +1 -1
  278. package/lib/date-picker/dayjs.js +1 -2
  279. package/lib/date-picker/dayjs.js.map +1 -1
  280. package/lib/date-picker/index.js +1 -2
  281. package/lib/date-picker/index.js.map +1 -1
  282. package/lib/date-picker/month.js +1 -2
  283. package/lib/date-picker/month.js.map +1 -1
  284. package/lib/date-picker/panel.js +1 -2
  285. package/lib/date-picker/panel.js.map +1 -1
  286. package/lib/date-picker/style.js +1 -2
  287. package/lib/date-picker/style.js.map +1 -1
  288. package/lib/date-picker/time.js +1 -2
  289. package/lib/date-picker/time.js.map +1 -1
  290. package/lib/date-picker/year.js +1 -2
  291. package/lib/date-picker/year.js.map +1 -1
  292. package/lib/dropdown/index.js +1 -2
  293. package/lib/dropdown/index.js.map +1 -1
  294. package/lib/empty/index.js +1 -2
  295. package/lib/empty/index.js.map +1 -1
  296. package/lib/from-schema/index.js +1 -2
  297. package/lib/from-schema/index.js.map +1 -1
  298. package/lib/get-options/index.js +1 -2
  299. package/lib/get-options/index.js.map +1 -1
  300. package/lib/highlight-text/index.js +2 -3
  301. package/lib/highlight-text/index.js.map +1 -1
  302. package/lib/img/index.js +1 -2
  303. package/lib/img/index.js.map +1 -1
  304. package/lib/img/lazy.js +1 -2
  305. package/lib/img/lazy.js.map +1 -1
  306. package/lib/img/style.js +3 -4
  307. package/lib/img/style.js.map +1 -1
  308. package/lib/index.js +1 -2
  309. package/lib/index.js.map +1 -1
  310. package/lib/input/index.js +1 -2
  311. package/lib/input/index.js.map +1 -1
  312. package/lib/input/style.js +1 -2
  313. package/lib/input/style.js.map +1 -1
  314. package/lib/input-number/index.js +2 -3
  315. package/lib/input-number/index.js.map +1 -1
  316. package/lib/katex/index.js +1 -2
  317. package/lib/katex/index.js.map +1 -1
  318. package/lib/md/common.d.ts +4 -0
  319. package/lib/md/common.js +1 -0
  320. package/lib/md/common.js.map +1 -0
  321. package/lib/md/index.d.ts +1 -0
  322. package/lib/md/index.js +1 -2
  323. package/lib/md/index.js.map +1 -1
  324. package/lib/md/worker.d.ts +9 -1
  325. package/lib/md/worker.js +1 -2
  326. package/lib/md/worker.js.map +1 -1
  327. package/lib/md-style/index.js +2 -3
  328. package/lib/md-style/index.js.map +1 -1
  329. package/lib/menu/index.js +1 -2
  330. package/lib/menu/index.js.map +1 -1
  331. package/lib/menu/style.js +1 -2
  332. package/lib/menu/style.js.map +1 -1
  333. package/lib/modal/hooks.js +1 -2
  334. package/lib/modal/hooks.js.map +1 -1
  335. package/lib/modal/index.js +1 -2
  336. package/lib/modal/index.js.map +1 -1
  337. package/lib/modal/store.js +1 -2
  338. package/lib/modal/store.js.map +1 -1
  339. package/lib/modal/style.js +1 -2
  340. package/lib/modal/style.js.map +1 -1
  341. package/lib/notification/index.js +1 -2
  342. package/lib/notification/index.js.map +1 -1
  343. package/lib/notification/notification.js +1 -2
  344. package/lib/notification/notification.js.map +1 -1
  345. package/lib/notification/queque.js +1 -2
  346. package/lib/notification/queque.js.map +1 -1
  347. package/lib/notification/styles.js +1 -2
  348. package/lib/notification/styles.js.map +1 -1
  349. package/lib/pagination/index.js +1 -2
  350. package/lib/pagination/index.js.map +1 -1
  351. package/lib/pagination/styles.js +1 -2
  352. package/lib/pagination/styles.js.map +1 -1
  353. package/lib/popover/index.js +1 -2
  354. package/lib/popover/index.js.map +1 -1
  355. package/lib/popover/style.js +3 -4
  356. package/lib/popover/style.js.map +1 -1
  357. package/lib/prism/index.d.ts +0 -1
  358. package/lib/prism/index.js +1 -2
  359. package/lib/prism/index.js.map +1 -1
  360. package/lib/provider/index.js +1 -2
  361. package/lib/provider/index.js.map +1 -1
  362. package/lib/qrcode/index.js +1 -2
  363. package/lib/qrcode/index.js.map +1 -1
  364. package/lib/qrcode/qrcode.js +1 -2
  365. package/lib/qrcode/qrcode.js.map +1 -1
  366. package/lib/radio/index.js +1 -2
  367. package/lib/radio/index.js.map +1 -1
  368. package/lib/radio/style.js +1 -2
  369. package/lib/radio/style.js.map +1 -1
  370. package/lib/segmented/index.js +1 -12
  371. package/lib/segmented/index.js.map +1 -1
  372. package/lib/segmented/style.js +1 -2
  373. package/lib/segmented/style.js.map +1 -1
  374. package/lib/select/index.js +1 -2
  375. package/lib/select/index.js.map +1 -1
  376. package/lib/select/style.js +1 -2
  377. package/lib/select/style.js.map +1 -1
  378. package/lib/skeleton/index.js +2 -25
  379. package/lib/skeleton/index.js.map +1 -1
  380. package/lib/spin/index.js +2 -3
  381. package/lib/spin/index.js.map +1 -1
  382. package/lib/switch/index.js +1 -2
  383. package/lib/switch/index.js.map +1 -1
  384. package/lib/switch/style.js +1 -2
  385. package/lib/switch/style.js.map +1 -1
  386. package/lib/table/index.js +1 -2
  387. package/lib/table/index.js.map +1 -1
  388. package/lib/table/styles.js +1 -2
  389. package/lib/table/styles.js.map +1 -1
  390. package/lib/tabs/index.js +1 -12
  391. package/lib/tabs/index.js.map +1 -1
  392. package/lib/tabs/style.d.ts +2 -2
  393. package/lib/tabs/style.js +32 -33
  394. package/lib/tabs/style.js.map +1 -1
  395. package/lib/tag/index.js +3 -4
  396. package/lib/tag/index.js.map +1 -1
  397. package/lib/tag/style.js +1 -2
  398. package/lib/tag/style.js.map +1 -1
  399. package/lib/theme/index.js +1 -2
  400. package/lib/theme/index.js.map +1 -1
  401. package/lib/tree/index.js +1 -2
  402. package/lib/tree/index.js.map +1 -1
  403. package/lib/tree/register.js +1 -2
  404. package/lib/tree/register.js.map +1 -1
  405. package/lib/tree/style.js +1 -2
  406. package/lib/tree/style.js.map +1 -1
  407. package/lib/tree/type.js +1 -2
  408. package/lib/tree/type.js.map +1 -1
  409. package/lib/typography/index.js +7 -8
  410. package/lib/typography/index.js.map +1 -1
  411. package/package.json +8 -8
  412. package/umd/index.js +4187 -1
  413. package/umd/js/074a85150a9f6a97.js +1 -0
  414. package/es/cron/api.md +0 -27
  415. package/lib/cron/api.md +0 -27
@@ -1 +1 @@
1
- {"version":3,"sources":["../../components/code/style.ts"],"sourcesContent":["import { css } from '@moneko/css';\n\nexport const style = css`\n :host {\n --code-font-stack: 'Liberation Mono', monaco, menlo, consolas, 'Source Code Pro', 'Ubuntu Mono',\n 'Microsoft Yahei', '微软雅黑', courier, 'Helvetica Neue', 'Lantinghei SC', stxihei, wenquanyi,\n sans-serif;\n\n position: relative;\n display: block;\n box-sizing: border-box;\n }\n\n .toolbar::after,\n .toolbar-copy::after,\n pre,\n code {\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n }\n\n [data-copy]::before {\n position: absolute;\n z-index: 1;\n display: inline-block;\n margin: auto;\n border: 1px solid;\n border-radius: var(--border-radius);\n padding: 4px 8px;\n font-size: var(--font-size-sm);\n transition:\n background-color 0.3s,\n color 0.3s,\n border-color 0.3s;\n content: '复制成功';\n inline-size: fit-content;\n animation-fill-mode: forwards;\n inset-block-start: 32px;\n inset-inline: 0;\n }\n\n [data-copy='success']::before {\n border-color: var(--success-border);\n color: var(--success-color);\n background-color: var(--success-bg);\n animation: copy-slide-in var(--transition-duration) var(--transition-timing-function);\n }\n\n [data-copy='failure']::before {\n border-color: var(--error-border);\n color: var(--error-color);\n background-color: var(--error-bg);\n animation:\n copy-slide-in var(--transition-duration) var(--transition-timing-function),\n error 1s var(--transition-timing-function) 1s;\n content: '复制失败';\n }\n\n [data-copy-exit]::before {\n animation: copy-slide-out var(--transition-duration) forwards var(--transition-timing-function);\n }\n\n @keyframes copy-slide-in {\n from {\n opacity: 0;\n transform: translate3d(0, -100%, 0) scale(0);\n }\n\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0) scale(1);\n }\n }\n\n @keyframes copy-slide-out {\n from {\n opacity: 1;\n transform: translate3d(0, 0, 0) scale(1);\n }\n\n to {\n opacity: 0;\n transform: translate3d(0, -100%, 0) scale(0);\n }\n }\n\n pre,\n code {\n display: block;\n border: none;\n border-radius: var(--border-radius);\n font-size: var(--font-size);\n font-family: var(--code-font-stack);\n text-align: start;\n white-space: pre-wrap;\n outline: none;\n text-shadow: none;\n overflow-wrap: normal;\n tab-size: 4;\n hyphens: none;\n max-inline-size: 100%;\n line-height: 1.8;\n transition-property: box-shadow, background-color, border-color, color;\n }\n\n pre {\n position: relative;\n overflow: visible;\n margin: auto;\n color: var(--code-color);\n background-color: var(--primary-component-bg);\n box-shadow: 0 2px 8px 0 var(--primary-shadow);\n }\n\n pre > code {\n overflow: auto;\n padding: 32px 16px 8px;\n pointer-events: auto;\n }\n\n pre.language-css,\n pre.language-less,\n pre.language-regex {\n color: var(--code-lang-style-color);\n }\n\n pre > .toolbar::after {\n position: absolute;\n z-index: 2;\n display: block;\n border-radius: var(--border-radius) var(--border-radius) 0 0;\n font-size: var(--font-size);\n font-family: Ubuntu, sans-serif;\n font-weight: bold;\n text-align: center;\n color: var(--text-color);\n background-color: var(--code-toolbar-bg, rgb(220 224 229 / 50%));\n box-shadow: 0 1px 5px rgb(0 0 0 / 10%);\n text-transform: uppercase;\n backdrop-filter: blur(10px);\n content: attr(data-language) '';\n block-size: 24px;\n inline-size: 100%;\n line-height: 24px;\n transition-property: background-color, border-color, color;\n inset-block-start: 0;\n inset-inline-start: 0;\n }\n\n pre > .toolbar::before {\n position: absolute;\n z-index: 3;\n display: inline-block;\n border-radius: var(--border-radius);\n text-align: center;\n background-color: #fc625d;\n box-shadow:\n 0 0 0 4px #fc625d,\n 20px 0 0 4px #fdbc40,\n 40px 0 0 4px #35cd4b;\n cursor: pointer;\n content: '';\n block-size: 4px;\n inline-size: 4px;\n inset-block-start: 10px;\n inset-inline-start: 12px;\n }\n\n pre > .toolbar > .toolbar-copy {\n position: absolute;\n z-index: 3;\n border: none;\n padding: 0;\n background: none;\n outline: none;\n cursor: pointer;\n inset-block-start: 0;\n inset-inline-end: 8px;\n }\n\n pre > .toolbar > .toolbar-copy:active {\n transform: scale(0.95);\n }\n\n .toolbar > .toolbar-copy::after {\n display: block;\n font-size: 24px;\n font-family: sans-serif;\n color: var(--text-color);\n user-select: none;\n content: '⎘';\n line-height: 24px;\n transition-property: color, transform;\n }\n\n .toolbar > .toolbar-copy:hover::after {\n color: var(--primary-color, #5794ff);\n }\n\n .not-toolbar > code {\n padding-block-start: 8px !important;\n }\n\n pre::-webkit-scrollbar {\n block-size: 5px;\n inline-size: 5px;\n }\n`;\nexport const darkCss = css({\n ':host': {\n '--code-color': '#eee',\n '--code-lang-style-color': '#fd9170',\n '--code-toolbar-bg': 'rgb(63, 63, 63, 0.7)',\n '--atrule': '#c792ea',\n '--attr-name': '#9cdcfe',\n '--attr-value': '#ce9178',\n '--attr-equals': '#ccc',\n '--attribute': '#a5e844',\n '--boolean': '#c792ea',\n '--builtin': '#ffcb6b',\n '--cdata': '#80cbc4',\n '--char': '#80cbc4',\n '--class': '#ffcb6b',\n '--class-name': '#f2ff00',\n '--comment': '#616161',\n '--constant': '#c792ea',\n '--deleted': '#f66',\n '--doctype': '#616161',\n '--entity': '#f66',\n '--function': '#dcdcaa',\n '--hexcode': '#f2ff00',\n '--id': '#c792ea',\n '--important': '#c792ea',\n '--inserted': '#80cbc4',\n '--keyword': '#c792ea',\n '--number': '#fd9170',\n '--operator': '#89ddff',\n '--prolog': '#616161',\n '--property': '#80cbc4',\n '--pseudo-class': '#a5e844',\n '--pseudo-element': '#a5e844',\n '--punctuation': '#89ddff',\n '--regex': '#f2ff00',\n '--selector': '#f66',\n '--string': '#a5e844',\n '--symbol': '#c792ea',\n '--tag': '#569cd6',\n '--unit': '#fd9170',\n '--url': '#f66',\n '--variable': '#f66',\n },\n});\nexport const lightCss = css({\n ':host': {\n '--code-color': '#90a4ae',\n '--code-lang-style-color': '#f76d47',\n '--namespace': 'rgba(56, 64, 68, 0.7)',\n '--tag': '#e53935',\n '--atrule': '#7c4dff',\n '--attr-name': '#39adb5',\n '--attr-value': '#f6a434',\n '--attr-equals': '#90a4ae',\n '--attribute': '#f6a434',\n '--boolean': '#7c4dff',\n '--builtin': '#39adb5',\n '--cdata': '#39adb5',\n '--char': '#39adb5',\n '--class': '#39adb5',\n '--class-name': '#6182b8',\n '--comment': '#aabfc9',\n '--constant': '#7c4dff',\n '--doctype': '#aabfc9',\n '--entity': '#e53935',\n '--hexcode': '#f76d47',\n '--id': '#7c4dff',\n '--important': '#7c4dff',\n '--keyword': '#7c4dff',\n '--number': '#f76d47',\n '--operator': '#39adb5',\n '--prolog': '#aabfc9',\n '--property': '#39adb5',\n '--pseudo-class': '#f6a434',\n '--pseudo-element': '#f6a434',\n '--punctuation': '#39adb5',\n '--regex': '#6182b8',\n '--selector': '#e53935',\n '--string': '#f6a434',\n '--symbol': '#7c4dff',\n '--unit': '#f76d47',\n '--url': '#e53935',\n '--variable': '#e53935',\n '--function': '#4078f2',\n '--inserted': '#39adb5',\n '--deleted': '#e53935',\n '--name': '#39adb5',\n },\n});\n"],"names":["darkCss","lightCss","style","css"],"mappings":"+JAgNaA,OAAO,mBAAPA,GA4CAC,QAAQ,mBAARA,GA1PAC,KAAK,mBAALA,qBAFO,eAEPA,EAAQC,GAAAA,KAAG,CAAA,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6MzB,CAAC,CACYH,EAAUG,GAAAA,KAAG,EAAC,CACzB,QAAS,CACP,eAAgB,OAChB,0BAA2B,UAC3B,oBAAqB,uBACrB,WAAY,UACZ,cAAe,UACf,eAAgB,UAChB,gBAAiB,OACjB,cAAe,UACf,YAAa,UACb,YAAa,UACb,UAAW,UACX,SAAU,UACV,UAAW,UACX,eAAgB,UAChB,YAAa,UACb,aAAc,UACd,YAAa,OACb,YAAa,UACb,WAAY,OACZ,aAAc,UACd,YAAa,UACb,OAAQ,UACR,cAAe,UACf,aAAc,UACd,YAAa,UACb,WAAY,UACZ,aAAc,UACd,WAAY,UACZ,aAAc,UACd,iBAAkB,UAClB,mBAAoB,UACpB,gBAAiB,UACjB,UAAW,UACX,aAAc,OACd,WAAY,UACZ,WAAY,UACZ,QAAS,UACT,SAAU,UACV,QAAS,OACT,aAAc,MAChB,CACF,GACaF,EAAWE,GAAAA,KAAG,EAAC,CAC1B,QAAS,CACP,eAAgB,UAChB,0BAA2B,UAC3B,cAAe,wBACf,QAAS,UACT,WAAY,UACZ,cAAe,UACf,eAAgB,UAChB,gBAAiB,UACjB,cAAe,UACf,YAAa,UACb,YAAa,UACb,UAAW,UACX,SAAU,UACV,UAAW,UACX,eAAgB,UAChB,YAAa,UACb,aAAc,UACd,YAAa,UACb,WAAY,UACZ,YAAa,UACb,OAAQ,UACR,cAAe,UACf,YAAa,UACb,WAAY,UACZ,aAAc,UACd,WAAY,UACZ,aAAc,UACd,iBAAkB,UAClB,mBAAoB,UACpB,gBAAiB,UACjB,UAAW,UACX,aAAc,UACd,WAAY,UACZ,WAAY,UACZ,SAAU,UACV,QAAS,UACT,aAAc,UACd,aAAc,UACd,aAAc,UACd,YAAa,UACb,SAAU,SACZ,CACF"}
1
+ {"version":3,"sources":["components/code/style.ts"],"sourcesContent":["import { css } from '@moneko/css';\n\nexport const style = css`\n :host {\n --code-font-stack: 'Liberation Mono', monaco, menlo, consolas, 'Source Code Pro', 'Ubuntu Mono',\n 'Microsoft Yahei', '微软雅黑', courier, 'Helvetica Neue', 'Lantinghei SC', stxihei, wenquanyi,\n sans-serif;\n\n position: relative;\n display: block;\n box-sizing: border-box;\n }\n\n .toolbar::after,\n .toolbar-copy::after,\n pre,\n code {\n transition-duration: var(--transition-duration);\n transition-timing-function: var(--transition-timing-function);\n }\n\n [data-copy]::before {\n position: absolute;\n z-index: 1;\n display: inline-block;\n margin: auto;\n border: 1px solid;\n border-radius: var(--border-radius);\n padding: 4px 8px;\n font-size: var(--font-size-sm);\n transition:\n background-color 0.3s,\n color 0.3s,\n border-color 0.3s;\n content: '复制成功';\n inline-size: fit-content;\n animation-fill-mode: forwards;\n inset-block-start: 32px;\n inset-inline: 0;\n }\n\n [data-copy='success']::before {\n border-color: var(--success-border);\n color: var(--success-color);\n background-color: var(--success-bg);\n animation: copy-slide-in var(--transition-duration) var(--transition-timing-function);\n }\n\n [data-copy='failure']::before {\n border-color: var(--error-border);\n color: var(--error-color);\n background-color: var(--error-bg);\n animation:\n copy-slide-in var(--transition-duration) var(--transition-timing-function),\n error 1s var(--transition-timing-function) 1s;\n content: '复制失败';\n }\n\n [data-copy-exit]::before {\n animation: copy-slide-out var(--transition-duration) forwards var(--transition-timing-function);\n }\n\n pre,\n code {\n display: block;\n border: none;\n border-radius: var(--border-radius);\n font-size: var(--font-size);\n font-family: var(--code-font-stack);\n text-align: start;\n white-space: pre-wrap;\n outline: none;\n text-shadow: none;\n overflow-wrap: normal;\n tab-size: 4;\n hyphens: none;\n max-inline-size: 100%;\n line-height: 1.8;\n transition-property: box-shadow, background-color, border-color, color;\n }\n\n pre {\n position: relative;\n overflow: visible;\n margin: auto;\n color: var(--code-color);\n background-color: var(--primary-component-bg);\n box-shadow: 0 2px 8px 0 var(--primary-shadow);\n }\n\n pre > code {\n overflow: auto;\n padding: 32px 16px 8px;\n pointer-events: auto;\n }\n\n pre.language-css,\n pre.language-less,\n pre.language-regex {\n color: var(--code-lang-style-color);\n }\n\n pre > .toolbar::after {\n position: absolute;\n z-index: 2;\n display: block;\n border-radius: var(--border-radius) var(--border-radius) 0 0;\n font-size: var(--font-size);\n font-family: Ubuntu, sans-serif;\n font-weight: bold;\n text-align: center;\n color: var(--text-color);\n background-color: var(--code-toolbar-bg, rgb(220 224 229 / 50%));\n box-shadow: 0 1px 5px rgb(0 0 0 / 10%);\n text-transform: uppercase;\n backdrop-filter: blur(10px);\n content: attr(data-language) '';\n block-size: 24px;\n inline-size: 100%;\n line-height: 24px;\n transition-property: background-color, border-color, color;\n inset-block-start: 0;\n inset-inline-start: 0;\n }\n\n pre > .toolbar::before {\n position: absolute;\n z-index: 3;\n display: inline-block;\n border-radius: var(--border-radius);\n text-align: center;\n background-color: #fc625d;\n box-shadow:\n 0 0 0 4px #fc625d,\n 20px 0 0 4px #fdbc40,\n 40px 0 0 4px #35cd4b;\n cursor: pointer;\n content: '';\n block-size: 4px;\n inline-size: 4px;\n inset-block-start: 10px;\n inset-inline-start: 12px;\n }\n\n pre > .toolbar > .toolbar-copy {\n position: absolute;\n z-index: 3;\n border: none;\n padding: 0;\n background: none;\n outline: none;\n cursor: pointer;\n inset-block-start: 0;\n inset-inline-end: 8px;\n }\n\n pre > .toolbar > .toolbar-copy:active {\n transform: scale(0.95);\n }\n\n .toolbar > .toolbar-copy::after {\n display: block;\n font-size: 24px;\n font-family: sans-serif;\n color: var(--text-color);\n user-select: none;\n content: '⎘';\n line-height: 24px;\n transition-property: color, transform;\n }\n\n .toolbar > .toolbar-copy:hover::after {\n color: var(--primary-color, #5794ff);\n }\n\n .not-toolbar > code {\n padding-block-start: 8px !important;\n }\n\n pre::-webkit-scrollbar {\n block-size: 5px;\n inline-size: 5px;\n }\n\n @keyframes copy-slide-in {\n from {\n opacity: 0;\n transform: translate3d(0, -100%, 0) scale(0);\n }\n\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0) scale(1);\n }\n }\n\n @keyframes copy-slide-out {\n from {\n opacity: 1;\n transform: translate3d(0, 0, 0) scale(1);\n }\n\n to {\n opacity: 0;\n transform: translate3d(0, -100%, 0) scale(0);\n }\n }\n`;\nexport const darkCss = css({\n ':host': {\n '--code-color': '#eee',\n '--code-lang-style-color': '#fd9170',\n '--code-toolbar-bg': 'rgb(63, 63, 63, 0.7)',\n '--atrule': '#c792ea',\n '--attr-name': '#9cdcfe',\n '--attr-value': '#ce9178',\n '--attr-equals': '#ccc',\n '--attribute': '#a5e844',\n '--boolean': '#c792ea',\n '--builtin': '#ffcb6b',\n '--cdata': '#80cbc4',\n '--char': '#80cbc4',\n '--class': '#ffcb6b',\n '--class-name': '#f2ff00',\n '--comment': '#616161',\n '--constant': '#c792ea',\n '--doctype': '#616161',\n '--entity': '#f66',\n '--function': '#dcdcaa',\n '--hexcode': '#f2ff00',\n '--id': '#c792ea',\n '--important': '#c792ea',\n '--keyword': '#c792ea',\n '--number': '#fd9170',\n '--operator': '#569cd6',\n '--prolog': '#616161',\n '--property': '#80cbc4',\n '--pseudo-class': '#a5e844',\n '--pseudo-element': '#a5e844',\n '--punctuation': '#89ddff',\n '--regex': '#f2ff00',\n '--selector': '#f66',\n '--string': '#a5e844',\n '--symbol': '#c792ea',\n '--tag': '#569cd6',\n '--unit': '#fd9170',\n '--url': '#f66',\n '--variable': '#f66',\n '--inserted-bg': 'rgba(0, 255, 128, .15)',\n '--deleted-bg': 'rgba(255, 0, 0, .15)',\n },\n});\nexport const lightCss = css({\n ':host': {\n '--code-color': '#90a4ae',\n '--code-lang-style-color': '#f76d47',\n '--namespace': 'rgba(56, 64, 68, 0.7)',\n '--tag': '#4b69c6',\n '--atrule': '#7c4dff',\n '--attr-name': '#39adb5',\n '--attr-value': '#f6a434',\n '--attr-equals': '#90a4ae',\n '--attribute': '#f6a434',\n '--boolean': '#7c4dff',\n '--builtin': '#39adb5',\n '--cdata': '#39adb5',\n '--char': '#39adb5',\n '--class': '#39adb5',\n '--class-name': '#6182b8',\n '--comment': '#aabfc9',\n '--constant': '#7c4dff',\n '--doctype': '#aabfc9',\n '--entity': '#e53935',\n '--hexcode': '#f76d47',\n '--id': '#7c4dff',\n '--important': '#7c4dff',\n '--keyword': '#7c4dff',\n '--number': '#f76d47',\n '--operator': '#91b3e0',\n '--prolog': '#aabfc9',\n '--property': '#39adb5',\n '--pseudo-class': '#f6a434',\n '--pseudo-element': '#f6a434',\n '--punctuation': '#39adb5',\n '--regex': '#6182b8',\n '--selector': '#e53935',\n '--string': '#f6a434',\n '--symbol': '#7c4dff',\n '--unit': '#f76d47',\n '--url': '#e53935',\n '--variable': '#e53935',\n '--function': '#4078f2',\n '--name': '#39adb5',\n '--prefix-inserted': 'green',\n '--prefix-deleted': 'red',\n '--inserted-bg': 'rgba(0, 255, 128, .1)',\n '--deleted-bg': 'rgba(255, 0, 0, .1)',\n },\n});\n"],"names":["darkCss","lightCss","style","css"],"mappings":"kKAgNaA,OAAO,mBAAPA,GA4CAC,QAAQ,mBAARA,GA1PAC,KAAK,mBAALA,qBAFO,eAEPA,EAAQC,GAAAA,KAAG,CAAA,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA6MzB,CAAC,CACYH,EAAUG,GAAAA,KAAG,EAAC,CACzB,QAAS,CACP,eAAgB,OAChB,0BAA2B,UAC3B,oBAAqB,uBACrB,WAAY,UACZ,cAAe,UACf,eAAgB,UAChB,gBAAiB,OACjB,cAAe,UACf,YAAa,UACb,YAAa,UACb,UAAW,UACX,SAAU,UACV,UAAW,UACX,eAAgB,UAChB,YAAa,UACb,aAAc,UACd,YAAa,UACb,WAAY,OACZ,aAAc,UACd,YAAa,UACb,OAAQ,UACR,cAAe,UACf,YAAa,UACb,WAAY,UACZ,aAAc,UACd,WAAY,UACZ,aAAc,UACd,iBAAkB,UAClB,mBAAoB,UACpB,gBAAiB,UACjB,UAAW,UACX,aAAc,OACd,WAAY,UACZ,WAAY,UACZ,QAAS,UACT,SAAU,UACV,QAAS,OACT,aAAc,OACd,gBAAiB,yBACjB,eAAgB,sBAClB,CACF,GACaF,EAAWE,GAAAA,KAAG,EAAC,CAC1B,QAAS,CACP,eAAgB,UAChB,0BAA2B,UAC3B,cAAe,wBACf,QAAS,UACT,WAAY,UACZ,cAAe,UACf,eAAgB,UAChB,gBAAiB,UACjB,cAAe,UACf,YAAa,UACb,YAAa,UACb,UAAW,UACX,SAAU,UACV,UAAW,UACX,eAAgB,UAChB,YAAa,UACb,aAAc,UACd,YAAa,UACb,WAAY,UACZ,YAAa,UACb,OAAQ,UACR,cAAe,UACf,YAAa,UACb,WAAY,UACZ,aAAc,UACd,WAAY,UACZ,aAAc,UACd,iBAAkB,UAClB,mBAAoB,UACpB,gBAAiB,UACjB,UAAW,UACX,aAAc,UACd,WAAY,UACZ,WAAY,UACZ,SAAU,UACV,QAAS,UACT,aAAc,UACd,aAAc,UACd,SAAU,UACV,oBAAqB,QACrB,mBAAoB,MACpB,gBAAiB,wBACjB,eAAgB,qBAClB,CACF"}
@@ -1,3 +1,2 @@
1
- "use strict";self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/prism.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-bash.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-clike.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-css.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-diff.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-docker.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-git.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-javascript.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-jsx.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-latex.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-less.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-markdown.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-markup-templating.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-markup.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-regex.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-rust.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-sql.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-swift.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-toml.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-tsx.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-typescript.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-wasm.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-yaml.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-bash.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/plugins/diff-highlight/prism-diff-highlight.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/plugins/highlight-keywords/prism-highlight-keywords.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/plugins/line-numbers/prism-line-numbers.js"),self.addEventListener("message",function(s){let p;try{let{code:t,language:i="markup"}=JSON.parse(s.data);/^diff-([\w-]+)/i.test(i)&&!self.Prism.languages[i]&&(self.Prism.languages[i]=self.Prism.languages.diff),p=self.Prism.highlight(`${t}
2
- `,self.Prism.languages[i],i)}catch{p=""}self.postMessage(p)},!1);
3
- //# sourceMappingURL=worker.js.map
1
+ "use strict";function s(s){let p;try{let{code:t,language:i="markup"}=JSON.parse(s.data);/^diff-([\w-]+)/i.test(i)&&!self.Prism.languages[i]&&(self.Prism.languages[i]=self.Prism.languages.diff),p=self.Prism.highlight(`${t}
2
+ `,self.Prism.languages[i],i)}catch{p=""}self.postMessage(p)}self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/prism.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-bash.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-clike.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-css.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-diff.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-docker.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-git.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-javascript.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-jsx.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-latex.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-less.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-markdown.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-markup-templating.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-markup.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-regex.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-rust.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-sql.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-swift.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-toml.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-tsx.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-typescript.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-wasm.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-yaml.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-bash.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/plugins/diff-highlight/prism-diff-highlight.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/plugins/highlight-keywords/prism-highlight-keywords.js"),self.importScripts("https://cdn.jsdelivr.net/npm/prismjs@1.29.0/plugins/line-numbers/prism-line-numbers.js"),self.addEventListener("message",s,!1);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../components/code/worker.ts"],"sourcesContent":["self.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/prism.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-bash.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-clike.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-css.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-diff.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-docker.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-git.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-javascript.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-jsx.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-latex.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-less.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-markdown.js');\nself.importScripts(\n 'https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-markup-templating.js',\n);\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-markup.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-regex.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-rust.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-sql.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-swift.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-toml.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-tsx.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-typescript.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-wasm.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-yaml.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-bash.js');\n// plugins\nself.importScripts(\n 'https://cdn.jsdelivr.net/npm/prismjs@1.29.0/plugins/diff-highlight/prism-diff-highlight.js',\n);\nself.importScripts(\n 'https://cdn.jsdelivr.net/npm/prismjs@1.29.0/plugins/highlight-keywords/prism-highlight-keywords.js',\n);\nself.importScripts(\n 'https://cdn.jsdelivr.net/npm/prismjs@1.29.0/plugins/line-numbers/prism-line-numbers.js',\n);\n\nfunction onMessage(e: MessageEvent<string>) {\n let result;\n\n try {\n const { code, language = 'markup' } = JSON.parse(e.data) as {\n code: string;\n language: string;\n };\n\n if (/^diff-([\\w-]+)/i.test(language) && !self.Prism.languages[language]) {\n self.Prism.languages[language] = self.Prism.languages.diff;\n }\n\n result = self.Prism.highlight(`${code}\\n`, self.Prism.languages[language], language);\n } catch {\n result = '';\n }\n self.postMessage(result); // 向主线程发送消息\n}\n\nself.addEventListener('message', onMessage, false);\n"],"names":["self","importScripts","addEventListener","e","result","code","language","JSON","parse","data","test","Prism","languages","diff","highlight","postMessage"],"mappings":"aAAAA,KAAKC,aAAa,CAAC,wDACnBD,KAAKC,aAAa,CAAC,wEACnBD,KAAKC,aAAa,CAAC,yEACnBD,KAAKC,aAAa,CAAC,uEACnBD,KAAKC,aAAa,CAAC,wEACnBD,KAAKC,aAAa,CAAC,0EACnBD,KAAKC,aAAa,CAAC,uEACnBD,KAAKC,aAAa,CAAC,8EACnBD,KAAKC,aAAa,CAAC,uEACnBD,KAAKC,aAAa,CAAC,yEACnBD,KAAKC,aAAa,CAAC,wEACnBD,KAAKC,aAAa,CAAC,4EACnBD,KAAKC,aAAa,CAChB,qFAEFD,KAAKC,aAAa,CAAC,0EACnBD,KAAKC,aAAa,CAAC,yEACnBD,KAAKC,aAAa,CAAC,wEACnBD,KAAKC,aAAa,CAAC,uEACnBD,KAAKC,aAAa,CAAC,yEACnBD,KAAKC,aAAa,CAAC,wEACnBD,KAAKC,aAAa,CAAC,uEACnBD,KAAKC,aAAa,CAAC,8EACnBD,KAAKC,aAAa,CAAC,wEACnBD,KAAKC,aAAa,CAAC,wEACnBD,KAAKC,aAAa,CAAC,wEAEnBD,KAAKC,aAAa,CAChB,8FAEFD,KAAKC,aAAa,CAChB,sGAEFD,KAAKC,aAAa,CAChB,0FAuBFD,KAAKE,gBAAgB,CAAC,UApBtB,SAAmBC,CAAuB,EACxC,IAAIC,EAEJ,GAAI,CACF,GAAM,CAAEC,KAAAA,CAAI,CAAEC,SAAAA,EAAW,QAAQ,CAAE,CAAGC,KAAKC,KAAK,CAACL,EAAEM,IAAI,EAKnD,kBAAkBC,IAAI,CAACJ,IAAa,CAACN,KAAKW,KAAK,CAACC,SAAS,CAACN,EAAS,EACrEN,CAAAA,KAAKW,KAAK,CAACC,SAAS,CAACN,EAAS,CAAGN,KAAKW,KAAK,CAACC,SAAS,CAACC,IAAI,AAAD,EAG3DT,EAASJ,KAAKW,KAAK,CAACG,SAAS,CAAC,CAAC,EAAET,EAAK;AAAE,CAAC,CAAEL,KAAKW,KAAK,CAACC,SAAS,CAACN,EAAS,CAAEA,EAC7E,CAAE,KAAM,CACNF,EAAS,EACX,CACAJ,KAAKe,WAAW,CAACX,EACnB,EAE4C,CAAA"}
1
+ {"version":3,"sources":["components/code/worker.ts"],"sourcesContent":["self.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/prism.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-bash.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-clike.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-css.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-diff.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-docker.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-git.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-javascript.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-jsx.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-latex.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-less.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-markdown.js');\nself.importScripts(\n 'https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-markup-templating.js',\n);\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-markup.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-regex.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-rust.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-sql.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-swift.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-toml.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-tsx.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-typescript.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-wasm.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-yaml.js');\nself.importScripts('https://cdn.jsdelivr.net/npm/prismjs@1.29.0/components/prism-bash.js');\n// plugins\nself.importScripts(\n 'https://cdn.jsdelivr.net/npm/prismjs@1.29.0/plugins/diff-highlight/prism-diff-highlight.js',\n);\nself.importScripts(\n 'https://cdn.jsdelivr.net/npm/prismjs@1.29.0/plugins/highlight-keywords/prism-highlight-keywords.js',\n);\nself.importScripts(\n 'https://cdn.jsdelivr.net/npm/prismjs@1.29.0/plugins/line-numbers/prism-line-numbers.js',\n);\n\nfunction onMessage(e: MessageEvent<string>) {\n let result;\n\n try {\n const { code, language = 'markup' } = JSON.parse(e.data) as {\n code: string;\n language: string;\n };\n\n if (/^diff-([\\w-]+)/i.test(language) && !self.Prism.languages[language]) {\n self.Prism.languages[language] = self.Prism.languages.diff;\n }\n\n result = self.Prism.highlight(`${code}\\n`, self.Prism.languages[language], language);\n } catch {\n result = '';\n }\n self.postMessage(result); // 向主线程发送消息\n}\n\nself.addEventListener('message', onMessage, false);\n"],"names":["onMessage","e","result","code","language","JSON","parse","data","test","self","Prism","languages","diff","highlight","postMessage","importScripts","addEventListener"],"mappings":"aAqCA,SAASA,EAAUC,CAAuB,EACxC,IAAIC,EAEJ,GAAI,CACF,GAAM,CAAEC,KAAAA,CAAI,CAAEC,SAAAA,EAAW,QAAQ,CAAE,CAAGC,KAAKC,KAAK,CAACL,EAAEM,IAAI,EAKnD,kBAAkBC,IAAI,CAACJ,IAAa,CAACK,KAAKC,KAAK,CAACC,SAAS,CAACP,EAAS,EACrEK,CAAAA,KAAKC,KAAK,CAACC,SAAS,CAACP,EAAS,CAAGK,KAAKC,KAAK,CAACC,SAAS,CAACC,IAAI,AAAD,EAG3DV,EAASO,KAAKC,KAAK,CAACG,SAAS,CAAC,CAAC,EAAEV,EAAK;AAAE,CAAC,CAAEM,KAAKC,KAAK,CAACC,SAAS,CAACP,EAAS,CAAEA,EAC7E,CAAE,KAAM,CACNF,EAAS,EACX,CACAO,KAAKK,WAAW,CAACZ,EACnB,CAvDAO,KAAKM,aAAa,CAAC,wDACnBN,KAAKM,aAAa,CAAC,wEACnBN,KAAKM,aAAa,CAAC,yEACnBN,KAAKM,aAAa,CAAC,uEACnBN,KAAKM,aAAa,CAAC,wEACnBN,KAAKM,aAAa,CAAC,0EACnBN,KAAKM,aAAa,CAAC,uEACnBN,KAAKM,aAAa,CAAC,8EACnBN,KAAKM,aAAa,CAAC,uEACnBN,KAAKM,aAAa,CAAC,yEACnBN,KAAKM,aAAa,CAAC,wEACnBN,KAAKM,aAAa,CAAC,4EACnBN,KAAKM,aAAa,CAChB,qFAEFN,KAAKM,aAAa,CAAC,0EACnBN,KAAKM,aAAa,CAAC,yEACnBN,KAAKM,aAAa,CAAC,wEACnBN,KAAKM,aAAa,CAAC,uEACnBN,KAAKM,aAAa,CAAC,yEACnBN,KAAKM,aAAa,CAAC,wEACnBN,KAAKM,aAAa,CAAC,uEACnBN,KAAKM,aAAa,CAAC,8EACnBN,KAAKM,aAAa,CAAC,wEACnBN,KAAKM,aAAa,CAAC,wEACnBN,KAAKM,aAAa,CAAC,wEAEnBN,KAAKM,aAAa,CAChB,8FAEFN,KAAKM,aAAa,CAChB,sGAEFN,KAAKM,aAAa,CAChB,0FAuBFN,KAAKO,gBAAgB,CAAC,UAAWhB,EAAW,CAAA"}
@@ -1,2 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(e,t){for(var n in t)Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}(exports,{default:function(){return x},defaultColorPaletteProps:function(){return k}});const e=require("solid-js/web"),t=require("solid-js"),n=p(require("@moneko/common/lib/colorParse")),r=p(require("@moneko/common/lib/isFunction")),a=p(require("@moneko/common/lib/passiveSupported")),l=p(require("@moneko/common/lib/setClipboard")),o=p(require("@moneko/common/lib/throttle")),i=require("@moneko/css"),u=require("solid-element"),s=require("../basic-config"),c=function(e,t){if(e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=f(void 0);if(n&&n.has(e))return n.get(e);var r={__proto__:null},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var o=a?Object.getOwnPropertyDescriptor(e,l):null;o&&(o.get||o.set)?Object.defineProperty(r,l,o):r[l]=e[l]}return r.default=e,n&&n.set(e,r),r}(require("../theme")),d=require("./style");function p(e){return e&&e.__esModule?e:{default:e}}function f(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(f=function(e){return e?n:t})(e)}require("../dropdown"),require("../input"),require("../input-number");const m=(0,e.template)("<style> "),v=(0,e.template)("<style>"),g=(0,e.template)("<n-input>",!0,!1),h=(0,e.template)('<i class="eye-dropper">'),y=(0,e.template)('<div><div class="picker"></div><div class="chooser"><div class="range"><input class="slider hue" min="0" max="360" type="range"><input class="slider opacity" min="0" max="1" step="0.01" type="range"></div><div class="preview"></div></div><div class="form"><n-dropdown placement="right" trigger="click"><span class="switch"></span></n-dropdown></div><div class="color">',!0,!1),b=(0,e.template)("<n-input-number>",!0,!1),C=(0,e.template)("<i>");function w(u){let s;let{baseStyle:p}=c.default,f=(0,t.mergeProps)({defaultValue:"#5794ff"},u),w=[{label:"RGBA",value:"rgba",handleClosed:!1},{label:"HSLA",value:"hsla",handleClosed:!1},{label:"HEXA",value:"hexa",handleClosed:!1}],k=["#f44336","#E91E63","#9C27B0","#673AB7","#3F51B5","#2196F3","#00BCD4","#009688","#4CAF50","#CDDC39","#FF9800","#795548","#607D8B"],x={class:"input",size:"small",css:".input{text-align:center;font-size:12px;}"},[E,S]=(0,t.createSignal)((0,n.default)(f.value||f.defaultValue)),[P,q]=(0,t.createSignal)(!1);function M(e){return e?Number((100*e).toFixed()):e}function O(e){let t=e;return"string"==typeof e&&(t=e.replace(/[^\d]/g,"")),t/100}let $=(0,t.createMemo)(()=>{var e;let t=E(),n=t[e=t.type,`to${e[0].toUpperCase()+e.slice(1)}`]();return(0,r.default)(f.onChange)&&n.toString()!==f.value&&f.onChange(n.toString()),n});function _(e=f.defaultValue){(0,t.untrack)($).toString()!==e&&S((0,n.default)(e))}function j(e){e.target&&(e.target.value=e.detail)}function L(e){e.target.value&&_(e.target.value)}function B(e){"Enter"===e.key&&"string"==typeof e.target.value&&_(e.target.value)}function D(e){if(s){let{x:n,y:r,width:a,height:l}=s.getBoundingClientRect(),o=(0,t.untrack)(E),i=o.value;i[1]=Math.floor(Math.min(Math.max(0,(e.clientX-n)/a*100),100)),i[2]=Math.floor(100-Math.min(Math.max(0,(e.clientY-r)/l*100),100)),S({...o,value:i})}}function F(e,r,a){if("number"==typeof r){let l=(0,t.untrack)(E),o=3===e||"hsva"===a,i=o?l.value:(0,t.untrack)($);i[e]=r||0,o?S({...l,value:i}):S((0,n.default)(i.toString()))}}function A(e){q(!0),D(e)}function H(){q(!1)}function R(e){S(t=>({...t,type:e.detail[0]}))}function N(e){(0,l.default)((0,t.untrack)($).toString(),e.target)}async function V(){if(window.EyeDropper){let e=await new window.EyeDropper().open();e.sRGBHex&&_(e.sRGBHex);return}}let G=(0,t.createMemo)(()=>{let e=E(),t=e.value;return`.palette {--c:${e.toRgbaString()};--h:${t[0]};--s:${t[1]};--v:${t[2]};--a:${t[3]};}`});return(0,t.createEffect)(()=>{(0,o.default)(_,8)(f.value)}),(0,t.createEffect)(()=>{P()&&document.body.addEventListener("mousemove",D,{passive:a.default}),(0,t.onCleanup)(()=>{document.body.removeEventListener("mousemove",D,!1)})}),(0,t.onMount)(()=>{document.body.addEventListener("mouseup",H,{passive:a.default})}),(0,t.onCleanup)(()=>{document.body.removeEventListener("mouseup",H,!1)}),[(()=>{let t=m(),n=t.firstChild;return(0,e.effect)(()=>n.data=p()),t})(),(()=>{let e=v();return e.textContent=d.style,e})(),(()=>{let t=m(),n=t.firstChild;return(0,e.effect)(()=>n.data=G()),t})(),(0,e.createComponent)(t.Show,{get when(){return f.css},get children(){let t=m(),n=t.firstChild;return(0,e.effect)(()=>n.data=(0,i.css)(f.css)),t}}),(()=>{let n=y(),r=n.firstChild,a=s,l=r.nextSibling,o=l.firstChild,u=o.firstChild,c=u.nextSibling,p=o.nextSibling,m=l.nextSibling,v=m.firstChild,S=v.firstChild,P=m.nextSibling;return(0,e.addEventListener)(r,"mousedown",A,!0),"function"==typeof a?(0,e.use)(a,r):s=r,u.$$input=e=>{F(0,Number(e.target.value),"hsva")},c.$$input=e=>{F(3,Number(e.target.value))},(0,e.addEventListener)(p,"click",N,!0),(0,e.insert)(m,(0,e.createComponent)(t.Show,{get when(){return"hexa"===E().type},get fallback(){return(0,e.createComponent)(t.Index,{get each(){return $()},children:(n,r)=>{let a=Object.assign({},x,3===r&&{step:.01,formatter:M,parse:O});return(()=>{let l=b();return(0,e.spread)(l,(0,e.mergeProps)(a,{get value(){return n()},get max(){return(0,t.untrack)($).max[r]},min:0,onChange:e=>{F(r,e.detail)}}),!1,!1),l._$owner=(0,e.getOwner)(),l})()}})},get children(){let t=g();return(0,e.spread)(t,(0,e.mergeProps)(x,{get value(){return E().toHexaString()},onChange:j,onBlur:L,onKeyUp:B}),!1,!1),t._$owner=(0,e.getOwner)(),t}}),v),(0,e.addEventListener)(v,"change",R),v.css=d.switchCss,v.items=w,v._$owner=(0,e.getOwner)(),(0,e.insert)(S,()=>E().type),(0,e.insert)(P,(0,e.createComponent)(t.Show,{get when(){return window.EyeDropper},get fallback(){return(()=>{let t=C();return(0,e.addEventListener)(t,"click",_.bind(null,"rgba(168,16,16,0.15)"),!0),t.style.setProperty("--c","rgba(168,16,16,0.15)"),t})()},get children(){let t=h();return(0,e.addEventListener)(t,"click",V,!0),t.style.setProperty("--c","transparent"),t}}),null),(0,e.insert)(P,(0,e.createComponent)(t.For,{each:k,children:t=>(()=>{let n=C();return(0,e.addEventListener)(n,"click",_.bind(null,t),!0),null!=t?n.style.setProperty("--c",t):n.style.removeProperty("--c"),n})()}),null),(0,e.effect)(()=>(0,e.className)(n,(0,i.cx)("palette",f.class))),(0,e.effect)(()=>u.value=E().value[0]),(0,e.effect)(()=>c.value=E().value[3]),(0,e.effect)(()=>v.value=E().type),n})()]}const k={class:void 0,style:void 0,css:void 0,value:void 0,defaultValue:void 0,onChange:void 0};(0,u.customElement)("n-color-palette",k,(n,r)=>{let a=r.element,l=(0,t.mergeProps)({onChange(e){a.dispatchEvent(new CustomEvent("change",{detail:e}))}},n);return(0,t.createEffect)(()=>{(0,s.clearAttribute)(a,["css"])}),[(()=>{let e=v();return e.textContent=c.block,e})(),(0,e.createComponent)(w,l)]});const x=w;(0,e.delegateEvents)(["click","input","mousedown"]);
2
- //# sourceMappingURL=index.js.map
1
+ "use strict";function e(e,t){for(var n in t)Object.defineProperty(e,n,{enumerable:!0,get:t[n]})}Object.defineProperty(exports,"__esModule",{value:!0}),e(exports,{default:function(){return S},defaultColorPaletteProps:function(){return E}});const t=require("solid-js/web"),n=require("solid-js"),r=f(require("@moneko/common/lib/colorParse")),a=f(require("@moneko/common/lib/isFunction")),l=f(require("@moneko/common/lib/passiveSupported")),o=f(require("@moneko/common/lib/setClipboard")),i=f(require("@moneko/common/lib/throttle")),u=require("@moneko/css"),s=require("solid-element"),c=require("../basic-config"),d=v(require("../theme")),p=require("./style");function f(e){return e&&e.__esModule?e:{default:e}}function m(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,n=new WeakMap;return(m=function(e){return e?n:t})(e)}function v(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var n=m(t);if(n&&n.has(e))return n.get(e);var r={__proto__:null},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var o=a?Object.getOwnPropertyDescriptor(e,l):null;o&&(o.get||o.set)?Object.defineProperty(r,l,o):r[l]=e[l]}return r.default=e,n&&n.set(e,r),r}require("../dropdown"),require("../input"),require("../input-number");const g=(0,t.template)("<style> "),h=(0,t.template)("<style>"),y=(0,t.template)("<n-input>",!0,!1),b=(0,t.template)('<i class="eye-dropper">'),C=(0,t.template)('<div><div class="picker"></div><div class="chooser"><div class="range"><input class="slider hue" min="0" max="360" type="range"><input class="slider opacity" min="0" max="1" step="0.01" type="range"></div><div class="preview"></div></div><div class="form"><n-dropdown placement="right" trigger="click"><span class="switch"></span></n-dropdown></div><div class="color">',!0,!1),w=(0,t.template)("<n-input-number>",!0,!1),k=(0,t.template)("<i>");function x(e){let s;let{baseStyle:c}=d.default,f=(0,n.mergeProps)({defaultValue:"#5794ff"},e),m=[{label:"RGBA",value:"rgba",handleClosed:!1},{label:"HSLA",value:"hsla",handleClosed:!1},{label:"HEXA",value:"hexa",handleClosed:!1}],v=["#f44336","#E91E63","#9C27B0","#673AB7","#3F51B5","#2196F3","#00BCD4","#009688","#4CAF50","#CDDC39","#FF9800","#795548","#607D8B"],x={class:"input",size:"small",css:".input{text-align:center;font-size:12px;}"},[E,S]=(0,n.createSignal)((0,r.default)(f.value||f.defaultValue)),[P,q]=(0,n.createSignal)(!1);function M(e){return e?Number((100*e).toFixed()):e}function O(e){let t=e;return"string"==typeof e&&(t=e.replace(/[^\d]/g,"")),t/100}let $=(0,n.createMemo)(()=>{var e;let t=E(),n=t[e=t.type,`to${e[0].toUpperCase()+e.slice(1)}`]();return(0,a.default)(f.onChange)&&n.toString()!==f.value&&f.onChange(n.toString()),n});function _(e=f.defaultValue){(0,n.untrack)($).toString()!==e&&S((0,r.default)(e))}function j(e){e.target&&(e.target.value=e.detail)}function L(e){e.target.value&&_(e.target.value)}function B(e){"Enter"===e.key&&"string"==typeof e.target.value&&_(e.target.value)}function D(e){if(s){let{x:t,y:r,width:a,height:l}=s.getBoundingClientRect(),o=(0,n.untrack)(E),i=o.value;i[1]=Math.floor(Math.min(Math.max(0,(e.clientX-t)/a*100),100)),i[2]=Math.floor(100-Math.min(Math.max(0,(e.clientY-r)/l*100),100)),S({...o,value:i})}}function F(e,t,a){if("number"==typeof t){let l=(0,n.untrack)(E),o=3===e||"hsva"===a,i=o?l.value:(0,n.untrack)($);i[e]=t||0,o?S({...l,value:i}):S((0,r.default)(i.toString()))}}function A(e){q(!0),D(e)}function H(){q(!1)}function R(e){S(t=>({...t,type:e.detail[0]}))}function N(e){(0,o.default)((0,n.untrack)($).toString(),e.target)}async function V(){if(window.EyeDropper){let e=await new window.EyeDropper().open();e.sRGBHex&&_(e.sRGBHex);return}}let G=(0,n.createMemo)(()=>{let e=E(),t=e.value;return`.palette {--c:${e.toRgbaString()};--h:${t[0]};--s:${t[1]};--v:${t[2]};--a:${t[3]};}`});return(0,n.createEffect)(()=>{(0,i.default)(_,8)(f.value)}),(0,n.createEffect)(()=>{P()&&document.body.addEventListener("mousemove",D,{passive:l.default}),(0,n.onCleanup)(()=>{document.body.removeEventListener("mousemove",D,!1)})}),(0,n.onMount)(()=>{document.body.addEventListener("mouseup",H,{passive:l.default})}),(0,n.onCleanup)(()=>{document.body.removeEventListener("mouseup",H,!1)}),[(()=>{let e=g(),n=e.firstChild;return(0,t.effect)(()=>n.data=c()),e})(),(()=>{let e=h();return e.textContent=p.style,e})(),(()=>{let e=g(),n=e.firstChild;return(0,t.effect)(()=>n.data=G()),e})(),(0,t.createComponent)(n.Show,{get when(){return f.css},get children(){let e=g(),n=e.firstChild;return(0,t.effect)(()=>n.data=(0,u.css)(f.css)),e}}),(()=>{let e=C(),r=e.firstChild,a=s,l=r.nextSibling,o=l.firstChild,i=o.firstChild,c=i.nextSibling,d=o.nextSibling,g=l.nextSibling,h=g.firstChild,S=h.firstChild,P=g.nextSibling;return(0,t.addEventListener)(r,"mousedown",A,!0),"function"==typeof a?(0,t.use)(a,r):s=r,i.$$input=e=>{F(0,Number(e.target.value),"hsva")},c.$$input=e=>{F(3,Number(e.target.value))},(0,t.addEventListener)(d,"click",N,!0),(0,t.insert)(g,(0,t.createComponent)(n.Show,{get when(){return"hexa"===E().type},get fallback(){return(0,t.createComponent)(n.Index,{get each(){return $()},children:(e,r)=>{let a=Object.assign({},x,3===r&&{step:.01,formatter:M,parse:O});return(()=>{let l=w();return(0,t.spread)(l,(0,t.mergeProps)(a,{get value(){return e()},get max(){return(0,n.untrack)($).max[r]},min:0,onChange:e=>{F(r,e.detail)}}),!1,!1),l._$owner=(0,t.getOwner)(),l})()}})},get children(){let e=y();return(0,t.spread)(e,(0,t.mergeProps)(x,{get value(){return E().toHexaString()},onChange:j,onBlur:L,onKeyUp:B}),!1,!1),e._$owner=(0,t.getOwner)(),e}}),h),(0,t.addEventListener)(h,"change",R),h.css=p.switchCss,h.items=m,h._$owner=(0,t.getOwner)(),(0,t.insert)(S,()=>E().type),(0,t.insert)(P,(0,t.createComponent)(n.Show,{get when(){return window.EyeDropper},get fallback(){return(()=>{let e=k();return(0,t.addEventListener)(e,"click",_.bind(null,"rgba(168,16,16,0.15)"),!0),e.style.setProperty("--c","rgba(168,16,16,0.15)"),e})()},get children(){let e=b();return(0,t.addEventListener)(e,"click",V,!0),e.style.setProperty("--c","transparent"),e}}),null),(0,t.insert)(P,(0,t.createComponent)(n.For,{each:v,children:e=>(()=>{let n=k();return(0,t.addEventListener)(n,"click",_.bind(null,e),!0),null!=e?n.style.setProperty("--c",e):n.style.removeProperty("--c"),n})()}),null),(0,t.effect)(()=>(0,t.className)(e,(0,u.cx)("palette",f.class))),(0,t.effect)(()=>i.value=E().value[0]),(0,t.effect)(()=>c.value=E().value[3]),(0,t.effect)(()=>h.value=E().type),e})()]}const E={class:void 0,style:void 0,css:void 0,value:void 0,defaultValue:void 0,onChange:void 0};(0,s.customElement)("n-color-palette",E,(e,r)=>{let a=r.element,l=(0,n.mergeProps)({onChange(e){a.dispatchEvent(new CustomEvent("change",{detail:e}))}},e);return(0,n.createEffect)(()=>{(0,c.clearAttribute)(a,["css"])}),[(()=>{let e=h();return e.textContent=d.block,e})(),(0,t.createComponent)(x,l)]});const S=x;(0,t.delegateEvents)(["click","input","mousedown"]);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../components/color-palette/index.tsx"],"sourcesContent":["import {\n createEffect,\n createMemo,\n createSignal,\n For,\n Index,\n mergeProps,\n onCleanup,\n onMount,\n Show,\n untrack,\n} from 'solid-js';\nimport {\n type ColorParse,\n colorParse,\n type ColorType,\n type HSVA,\n isFunction,\n passiveSupported,\n setClipboard,\n throttle,\n} from '@moneko/common';\nimport { css, cx } from '@moneko/css';\nimport { customElement } from 'solid-element';\n\nimport type { CustomElement, InputNumberProps } from '..';\nimport { clearAttribute } from '../basic-config';\nimport theme, { block } from '../theme';\n\nimport { style, switchCss } from './style';\n\nimport '../dropdown';\nimport '../input';\nimport '../input-number';\n\nexport interface ColorPaletteProps {\n /** 自定义类名 */\n class?: string;\n /** 自定义样式表 */\n css?: string;\n /** 颜色值 */\n value?: string;\n /** 默认值\n * @default '#5794ff'\n */\n defaultValue?: string;\n /** 变更时触发的方法 */\n onChange?: (color: string) => void;\n}\nexport type ColorPaletteElement = CustomElement<ColorPaletteProps>;\n\nfunction ColorPalette(_: ColorPaletteProps) {\n const { baseStyle } = theme;\n const props = mergeProps({ defaultValue: '#5794ff' }, _);\n let picker: HTMLDivElement | undefined;\n const types = [\n { label: 'RGBA', value: 'rgba', handleClosed: false },\n { label: 'HSLA', value: 'hsla', handleClosed: false },\n { label: 'HEXA', value: 'hexa', handleClosed: false },\n ];\n const material = [\n '#f44336',\n '#E91E63',\n '#9C27B0',\n '#673AB7',\n '#3F51B5',\n '#2196F3',\n '#00BCD4',\n '#009688',\n '#4CAF50',\n '#CDDC39',\n '#FF9800',\n '#795548',\n '#607D8B',\n ];\n const inputProps: InputNumberProps = {\n class: 'input',\n size: 'small',\n css: '.input{text-align:center;font-size:12px;}',\n };\n const [hsva, setHsva] = createSignal<ColorParse<HSVA>>(\n // eslint-disable-next-line solid/reactivity\n colorParse(props.value || props.defaultValue),\n );\n const [drag, setDrag] = createSignal(false);\n\n type HsvaToColorVoid = 'toHexa' | 'toRgba' | 'toHsla' | 'toCmyk' | 'toHsva';\n\n function formatterOpacity(v?: number | string) {\n return v ? Number(((v as number) * 100).toFixed()) : v;\n }\n function parseOpacity(v?: string | number) {\n let _val = v;\n\n if (typeof v === 'string') {\n _val = v.replace(/[^\\d]/g, '');\n }\n return (_val as number) / 100;\n }\n function capFirst(str: string) {\n return `to${str[0].toUpperCase() + str.slice(1)}` as HsvaToColorVoid;\n }\n const color = createMemo(() => {\n const s = hsva();\n const c = s[capFirst(s.type)]();\n\n if (isFunction(props.onChange) && c.toString() !== props.value) {\n props.onChange(c.toString());\n }\n return c;\n });\n\n function setColor(c = props.defaultValue) {\n if (untrack(color).toString() !== c) {\n setHsva(colorParse(c));\n }\n }\n function handleHexa(e: CustomEvent) {\n if (e.target) {\n (e.target as HTMLInputElement).value = e.detail;\n }\n }\n function handleHexaBlur(e: FocusEvent & { target: { value: string } }) {\n if (e.target.value) {\n setColor(e.target.value);\n }\n }\n function handleHexaEnter(e: KeyboardEvent & { target: { value: string } }) {\n if (e.key === 'Enter' && typeof e.target.value === 'string') {\n setColor(e.target.value);\n }\n }\n function changeColor(ev: MouseEvent) {\n if (picker) {\n const { x, y, width, height } = picker.getBoundingClientRect();\n const prev = untrack(hsva);\n const next = prev.value;\n\n next[1] = Math.floor(Math.min(Math.max(0, ((ev.clientX - x) / width) * 100), 100));\n next[2] = Math.floor(100 - Math.min(Math.max(0, ((ev.clientY - y) / height) * 100), 100));\n\n setHsva({ ...prev, value: next });\n }\n }\n\n function handleChange(i: number, v?: number, t?: ColorType) {\n if (typeof v === 'number') {\n const prev = untrack(hsva);\n const changeHsv = i === 3 || t === 'hsva';\n const next = changeHsv ? prev.value : (untrack(color) as HSVA);\n\n next[i] = v || 0;\n if (changeHsv) {\n setHsva({\n ...prev,\n value: next,\n });\n } else {\n setHsva(colorParse(next.toString()));\n }\n }\n }\n function mouseDown(e: MouseEvent) {\n setDrag(true);\n changeColor(e);\n }\n function mouseUp() {\n setDrag(false);\n }\n function handleSwitch(e: CustomEvent) {\n setHsva((prev) => ({\n ...prev,\n type: e.detail[0],\n }));\n }\n\n function copy(e: MouseEvent) {\n setClipboard(untrack(color).toString(), e.target as HTMLElement);\n }\n async function eyeDropper() {\n if (window.EyeDropper) {\n const res = await new window.EyeDropper().open();\n\n if (res.sRGBHex) {\n setColor(res.sRGBHex);\n }\n return;\n }\n }\n const colorVar = createMemo(() => {\n const h = hsva(),\n value = h.value;\n\n return `.palette {--c:${h.toRgbaString()};--h:${value[0]};--s:${value[1]};--v:${value[2]};--a:${\n value[3]\n };}`;\n });\n\n createEffect(() => {\n throttle(setColor, 8)(props.value);\n });\n\n createEffect(() => {\n if (drag()) {\n document.body.addEventListener('mousemove', changeColor, {\n passive: passiveSupported,\n });\n }\n onCleanup(() => {\n document.body.removeEventListener('mousemove', changeColor, false);\n });\n });\n onMount(() => {\n document.body.addEventListener('mouseup', mouseUp, {\n passive: passiveSupported,\n });\n });\n onCleanup(() => {\n document.body.removeEventListener('mouseup', mouseUp, false);\n });\n\n return (\n <>\n <style textContent={baseStyle()} />\n <style textContent={style} />\n <style textContent={colorVar()} />\n <Show when={props.css}>\n <style textContent={css(props.css)} />\n </Show>\n <div class={cx('palette', props.class)}>\n <div ref={picker} class=\"picker\" onMouseDown={mouseDown} />\n <div class=\"chooser\">\n <div class=\"range\">\n <input\n class=\"slider hue\"\n min=\"0\"\n max=\"360\"\n type=\"range\"\n value={hsva().value[0]}\n onInput={(e) => {\n handleChange(0, Number(e.target.value), 'hsva');\n }}\n />\n <input\n class=\"slider opacity\"\n min=\"0\"\n max=\"1\"\n step=\"0.01\"\n type=\"range\"\n value={hsva().value[3]}\n onInput={(e) => {\n handleChange(3, Number(e.target.value));\n }}\n />\n </div>\n <div class=\"preview\" onClick={copy} />\n </div>\n <div class=\"form\">\n <Show\n when={hsva().type === 'hexa'}\n fallback={\n <>\n <Index each={color()}>\n {(n, i) => {\n const inp = Object.assign(\n {},\n inputProps,\n i === 3 && {\n step: 0.01,\n formatter: formatterOpacity,\n parse: parseOpacity,\n },\n );\n\n return (\n <n-input-number\n {...inp}\n value={n() as number}\n max={\n (\n untrack(color) as HSVA & {\n max: [360, 100, 100, 1];\n }\n ).max[i]\n }\n min={0}\n onChange={(e) => {\n handleChange(i, e.detail);\n }}\n />\n );\n }}\n </Index>\n </>\n }\n >\n <n-input\n {...inputProps}\n value={hsva().toHexaString()}\n onChange={handleHexa}\n onBlur={handleHexaBlur}\n onKeyUp={handleHexaEnter}\n />\n </Show>\n <n-dropdown\n css={switchCss}\n value={hsva().type}\n items={types}\n placement=\"right\"\n trigger=\"click\"\n onChange={handleSwitch}\n >\n <span class=\"switch\">{hsva().type}</span>\n </n-dropdown>\n </div>\n <div class=\"color\">\n <Show\n when={window.EyeDropper}\n fallback={\n <i\n style={{ '--c': 'rgba(168,16,16,0.15)' }}\n onClick={setColor.bind(null, 'rgba(168,16,16,0.15)')}\n />\n }\n >\n <i class=\"eye-dropper\" style={{ '--c': 'transparent' }} onClick={eyeDropper} />\n </Show>\n <For each={material}>\n {(c) => <i style={{ '--c': c }} onClick={setColor.bind(null, c)} />}\n </For>\n </div>\n </div>\n </>\n );\n}\n\nexport const defaultColorPaletteProps = {\n class: void 0,\n style: void 0,\n css: void 0,\n value: void 0,\n defaultValue: void 0,\n onChange: void 0,\n};\n\ncustomElement<ColorPaletteProps>('n-color-palette', defaultColorPaletteProps, (_, opts) => {\n const el = opts.element;\n const props = mergeProps(\n {\n onChange(val?: string) {\n el.dispatchEvent(\n new CustomEvent('change', {\n detail: val,\n }),\n );\n },\n },\n _,\n );\n\n createEffect(() => {\n clearAttribute(el, ['css']);\n });\n return (\n <>\n <style textContent={block} />\n <ColorPalette {...props} />\n </>\n );\n});\n\nexport default ColorPalette;\n"],"names":["defaultColorPaletteProps","ColorPalette","_","picker","baseStyle","theme","props","mergeProps","defaultValue","types","label","value","handleClosed","material","inputProps","class","size","css","hsva","setHsva","createSignal","colorParse","drag","setDrag","formatterOpacity","v","Number","toFixed","parseOpacity","_val","replace","color","createMemo","str","s","c","type","toUpperCase","slice","isFunction","onChange","toString","setColor","untrack","handleHexa","e","target","detail","handleHexaBlur","handleHexaEnter","key","changeColor","ev","x","y","width","height","getBoundingClientRect","prev","next","Math","floor","min","max","clientX","clientY","handleChange","i","t","changeHsv","mouseDown","mouseUp","handleSwitch","copy","setClipboard","eyeDropper","window","EyeDropper","res","open","sRGBHex","colorVar","h","toRgbaString","createEffect","throttle","document","body","addEventListener","passive","passiveSupported","onCleanup","removeEventListener","onMount","style","Show","Index","n","inp","Object","assign","step","formatter","parse","toHexaString","switchCss","bind","For","cx","customElement","opts","el","element","val","dispatchEvent","CustomEvent","clearAttribute","block"],"mappings":"+JAmXA,OAA4B,mBAA5B,GAnCaA,wBAAwB,mBAAxBA,+CArUN,wBAUA,8CAAA,8CAAA,oDAAA,gDAAA,0CACiB,yBACM,2BAGC,yeACF,uBAEI,qMAE1B,uBACA,oBACA,gnBAkBP,SAASC,EAAaC,CAAoB,MAGpCC,EAFJ,GAAM,CAAEC,UAAAA,CAAS,CAAE,CAAGC,SAAK,CACrBC,EAAQC,GAAAA,YAAU,EAAC,CAAEC,aAAc,SAAU,EAAGN,GAEhDO,EAAQ,CACZ,CAAEC,MAAO,OAAQC,MAAO,OAAQC,aAAc,CAAA,CAAM,EACpD,CAAEF,MAAO,OAAQC,MAAO,OAAQC,aAAc,CAAA,CAAM,EACpD,CAAEF,MAAO,OAAQC,MAAO,OAAQC,aAAc,CAAA,CAAM,EACrD,CACKC,EAAW,CACf,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACD,CACKC,EAA+B,CACnCC,MAAO,QACPC,KAAM,QACNC,IAAK,2CACP,EACM,CAACC,EAAMC,EAAQ,CAAGC,GAAAA,cAAY,EAElCC,GAAAA,SAAU,EAACf,EAAMK,KAAK,EAAIL,EAAME,YAAY,GAExC,CAACc,EAAMC,EAAQ,CAAGH,GAAAA,cAAY,EAAC,CAAA,GAIrC,SAASI,EAAiBC,CAAmB,EAC3C,OAAOA,EAAIC,OAAO,AAAC,CAAA,AAAgB,IAAfD,CAAiB,EAAGE,OAAO,IAAMF,CACvD,CACA,SAASG,EAAaH,CAAmB,EACvC,IAAII,EAAOJ,EAKX,MAHiB,UAAb,OAAOA,GACTI,CAAAA,EAAOJ,EAAEK,OAAO,CAAC,SAAU,GAAE,EAExB,AAACD,EAAkB,GAC5B,CAIA,IAAME,EAAQC,GAAAA,YAAU,EAAC,SAHPC,EAIhB,IAAMC,EAAIhB,IACJiB,EAAID,CAAC,CALKD,EAKKC,EAAEE,IAAI,CAJpB,CAAC,EAAE,EAAEH,CAAG,CAAC,EAAE,CAACI,WAAW,GAAKJ,EAAIK,KAAK,CAAC,GAAG,CAAC,CAIpB,GAK7B,MAHIC,GAAAA,SAAU,EAACjC,EAAMkC,QAAQ,GAAKL,EAAEM,QAAQ,KAAOnC,EAAMK,KAAK,EAC5DL,EAAMkC,QAAQ,CAACL,EAAEM,QAAQ,IAEpBN,CACT,GAEA,SAASO,EAASP,EAAI7B,EAAME,YAAY,EAClCmC,GAAAA,SAAO,EAACZ,GAAOU,QAAQ,KAAON,GAChChB,EAAQE,GAAAA,SAAU,EAACc,GAEvB,CACA,SAASS,EAAWC,CAAc,EAC5BA,EAAEC,MAAM,EACV,CAAA,AAACD,EAAEC,MAAM,CAAsBnC,KAAK,CAAGkC,EAAEE,MAAM,AAAD,CAElD,CACA,SAASC,EAAeH,CAA6C,EAC/DA,EAAEC,MAAM,CAACnC,KAAK,EAChB+B,EAASG,EAAEC,MAAM,CAACnC,KAAK,CAE3B,CACA,SAASsC,EAAgBJ,CAAgD,EACzD,UAAVA,EAAEK,GAAG,EAAgB,AAA0B,UAA1B,OAAOL,EAAEC,MAAM,CAACnC,KAAK,EAC5C+B,EAASG,EAAEC,MAAM,CAACnC,KAAK,CAE3B,CACA,SAASwC,EAAYC,CAAc,EACjC,GAAIjD,EAAQ,CACV,GAAM,CAAEkD,EAAAA,CAAC,CAAEC,EAAAA,CAAC,CAAEC,MAAAA,CAAK,CAAEC,OAAAA,CAAM,CAAE,CAAGrD,EAAOsD,qBAAqB,GACtDC,EAAOf,GAAAA,SAAO,EAACzB,GACfyC,EAAOD,EAAK/C,KAAK,AAEvBgD,CAAAA,CAAI,CAAC,EAAE,CAAGC,KAAKC,KAAK,CAACD,KAAKE,GAAG,CAACF,KAAKG,GAAG,CAAC,EAAG,AAAEX,CAAAA,EAAGY,OAAO,CAAGX,CAAAA,EAAKE,EAAS,KAAM,MAC7EI,CAAI,CAAC,EAAE,CAAGC,KAAKC,KAAK,CAAC,IAAMD,KAAKE,GAAG,CAACF,KAAKG,GAAG,CAAC,EAAG,AAAEX,CAAAA,EAAGa,OAAO,CAAGX,CAAAA,EAAKE,EAAU,KAAM,MAEpFrC,EAAQ,CAAE,GAAGuC,CAAI,CAAE/C,MAAOgD,CAAK,EACjC,CACF,CAEA,SAASO,EAAaC,CAAS,CAAE1C,CAAU,CAAE2C,CAAa,EACxD,GAAI,AAAa,UAAb,OAAO3C,EAAgB,CACzB,IAAMiC,EAAOf,GAAAA,SAAO,EAACzB,GACfmD,EAAYF,AAAM,IAANA,GAAWC,AAAM,SAANA,EACvBT,EAAOU,EAAYX,EAAK/C,KAAK,CAAIgC,GAAAA,SAAO,EAACZ,EAE/C4B,CAAAA,CAAI,CAACQ,EAAE,CAAG1C,GAAK,EACX4C,EACFlD,EAAQ,CACN,GAAGuC,CAAI,CACP/C,MAAOgD,CACT,GAEAxC,EAAQE,GAAAA,SAAU,EAACsC,EAAKlB,QAAQ,IAEpC,CACF,CACA,SAAS6B,EAAUzB,CAAa,EAC9BtB,EAAQ,CAAA,GACR4B,EAAYN,EACd,CACA,SAAS0B,IACPhD,EAAQ,CAAA,EACV,CACA,SAASiD,EAAa3B,CAAc,EAClC1B,EAAQ,AAACuC,GAAU,CAAA,CACjB,GAAGA,CAAI,CACPtB,KAAMS,EAAEE,MAAM,CAAC,EAAE,AACnB,CAAA,EACF,CAEA,SAAS0B,EAAK5B,CAAa,EACzB6B,GAAAA,SAAY,EAAC/B,GAAAA,SAAO,EAACZ,GAAOU,QAAQ,GAAII,EAAEC,MAAM,CAClD,CACA,eAAe6B,IACb,GAAIC,OAAOC,UAAU,CAAE,CACrB,IAAMC,EAAM,MAAM,IAAIF,OAAOC,UAAU,GAAGE,IAAI,EAE1CD,CAAAA,EAAIE,OAAO,EACbtC,EAASoC,EAAIE,OAAO,EAEtB,MACF,CACF,CACA,IAAMC,EAAWjD,GAAAA,YAAU,EAAC,KAC1B,IAAMkD,EAAIhE,IACRP,EAAQuE,EAAEvE,KAAK,CAEjB,MAAO,CAAC,cAAc,EAAEuE,EAAEC,YAAY,GAAG,KAAK,EAAExE,CAAK,CAAC,EAAE,CAAC,KAAK,EAAEA,CAAK,CAAC,EAAE,CAAC,KAAK,EAAEA,CAAK,CAAC,EAAE,CAAC,KAAK,EAC5FA,CAAK,CAAC,EAAE,CACT,EAAE,CAAC,AACN,GAyBA,MAvBAyE,GAAAA,cAAY,EAAC,KACXC,GAAAA,SAAQ,EAAC3C,EAAU,GAAGpC,EAAMK,KAAK,CACnC,GAEAyE,GAAAA,cAAY,EAAC,KACP9D,KACFgE,SAASC,IAAI,CAACC,gBAAgB,CAAC,YAAarC,EAAa,CACvDsC,QAASC,SAAgB,AAC3B,GAEFC,GAAAA,WAAS,EAAC,KACRL,SAASC,IAAI,CAACK,mBAAmB,CAAC,YAAazC,EAAa,CAAA,EAC9D,EACF,GACA0C,GAAAA,SAAO,EAAC,KACNP,SAASC,IAAI,CAACC,gBAAgB,CAAC,UAAWjB,EAAS,CACjDkB,QAASC,SAAgB,AAC3B,EACF,GACAC,GAAAA,WAAS,EAAC,KACRL,SAASC,IAAI,CAACK,mBAAmB,CAAC,UAAWrB,EAAS,CAAA,EACxD,iEAIwBnE,gDACA0F,OAAK,oEACLb,iCACnBc,MAAI,oBAAOzF,EAAMW,GAAG,wEACCA,GAAAA,KAAG,EAACX,EAAMW,GAAG,yCAGvBd,yLAAoCmE,0CAApCnE,cASK,AAAC0C,IACRqB,EAAa,EAAGxC,OAAOmB,EAAEC,MAAM,CAACnC,KAAK,EAAG,OAC1C,YASS,AAACkC,IACRqB,EAAa,EAAGxC,OAAOmB,EAAEC,MAAM,CAACnC,KAAK,EACvC,mCAG0B8D,2CAG7BsB,MAAI,mBACG7E,AAAgB,SAAhBA,IAAOkB,IAAI,6CAGZ4D,OAAK,oBAAOjE,cACV,CAACkE,EAAG9B,KACH,IAAM+B,EAAMC,OAAOC,MAAM,CACvB,CAAC,EACDtF,EACAqD,AAAM,IAANA,GAAW,CACTkC,KAAM,IACNC,UAAW9E,EACX+E,MAAO3E,CACT,GAGF,4DAEQsE,sBACGD,qBAEL,AACEtD,GAAAA,SAAO,EAACZ,GAGRgC,GAAG,CAACI,EAAE,MAEL,WACK,AAACtB,IACTqB,EAAaC,EAAGtB,EAAEE,MAAM,CAC1B,2CAGN,oEAMAjC,sBACGI,IAAOsF,YAAY,aAChB5D,SACFI,UACCC,gFASDuB,SALLiC,WAAS,SAEPhG,gDAKeS,IAAOkB,IAAI,uCAIlC2D,MAAI,oBACGnB,OAAOC,UAAU,8EAIVnC,EAASgE,IAAI,CAAC,KAAM,qJAIgC/B,+FAElEgC,KAAG,OAAO9F,WACR,AAACsB,0DAAuCO,EAASgE,IAAI,CAAC,KAAMvE,aAAlCA,4BAAAA,kFAnGrByE,GAAAA,IAAE,EAAC,UAAWtG,EAAMS,KAAK,6BAStBG,IAAOP,KAAK,CAAC,EAAE,2BAWfO,IAAOP,KAAK,CAAC,EAAE,2BAyDjBO,IAAOkB,IAAI,QA4B9B,CAEO,MAAMpC,EAA2B,CACtCe,MAAO,KAAK,EACZ+E,MAAO,KAAK,EACZ7E,IAAK,KAAK,EACVN,MAAO,KAAK,EACZH,aAAc,KAAK,EACnBgC,SAAU,KAAK,CACjB,EAEAqE,GAAAA,eAAa,EAAoB,kBAAmB7G,EAA0B,CAACE,EAAG4G,KAChF,IAAMC,EAAKD,EAAKE,OAAO,CACjB1G,EAAQC,GAAAA,YAAU,EACtB,CACEiC,SAASyE,CAAY,EACnBF,EAAGG,aAAa,CACd,IAAIC,YAAY,SAAU,CACxBpE,OAAQkE,CACV,GAEJ,CACF,EACA/G,GAMF,MAHAkF,GAAAA,cAAY,EAAC,KACXgC,GAAAA,gBAAc,EAACL,EAAI,CAAC,MAAM,CAC5B,yCAGwBM,OAAK,6BACxBpH,EAAiBK,GAGxB,SAEA,EAAeL"}
1
+ {"version":3,"sources":["components/color-palette/index.tsx"],"sourcesContent":["import {\n createEffect,\n createMemo,\n createSignal,\n For,\n Index,\n mergeProps,\n onCleanup,\n onMount,\n Show,\n untrack,\n} from 'solid-js';\nimport {\n type ColorParse,\n colorParse,\n type ColorType,\n type HSVA,\n isFunction,\n passiveSupported,\n setClipboard,\n throttle,\n} from '@moneko/common';\nimport { css, cx } from '@moneko/css';\nimport { customElement } from 'solid-element';\n\nimport type { CustomElement, InputNumberProps } from '..';\nimport { clearAttribute } from '../basic-config';\nimport theme, { block } from '../theme';\n\nimport { style, switchCss } from './style';\n\nimport '../dropdown';\nimport '../input';\nimport '../input-number';\n\nexport interface ColorPaletteProps {\n /** 自定义类名 */\n class?: string;\n /** 自定义样式表 */\n css?: string;\n /** 颜色值 */\n value?: string;\n /** 默认值\n * @default '#5794ff'\n */\n defaultValue?: string;\n /** 变更时触发的方法 */\n onChange?: (color: string) => void;\n}\nexport type ColorPaletteElement = CustomElement<ColorPaletteProps>;\n\nfunction ColorPalette(_: ColorPaletteProps) {\n const { baseStyle } = theme;\n const props = mergeProps({ defaultValue: '#5794ff' }, _);\n let picker: HTMLDivElement | undefined;\n const types = [\n { label: 'RGBA', value: 'rgba', handleClosed: false },\n { label: 'HSLA', value: 'hsla', handleClosed: false },\n { label: 'HEXA', value: 'hexa', handleClosed: false },\n ];\n const material = [\n '#f44336',\n '#E91E63',\n '#9C27B0',\n '#673AB7',\n '#3F51B5',\n '#2196F3',\n '#00BCD4',\n '#009688',\n '#4CAF50',\n '#CDDC39',\n '#FF9800',\n '#795548',\n '#607D8B',\n ];\n const inputProps: InputNumberProps = {\n class: 'input',\n size: 'small',\n css: '.input{text-align:center;font-size:12px;}',\n };\n const [hsva, setHsva] = createSignal<ColorParse<HSVA>>(\n // eslint-disable-next-line solid/reactivity\n colorParse(props.value || props.defaultValue),\n );\n const [drag, setDrag] = createSignal(false);\n\n type HsvaToColorVoid = 'toHexa' | 'toRgba' | 'toHsla' | 'toCmyk' | 'toHsva';\n\n function formatterOpacity(v?: number | string) {\n return v ? Number(((v as number) * 100).toFixed()) : v;\n }\n function parseOpacity(v?: string | number) {\n let _val = v;\n\n if (typeof v === 'string') {\n _val = v.replace(/[^\\d]/g, '');\n }\n return (_val as number) / 100;\n }\n function capFirst(str: string) {\n return `to${str[0].toUpperCase() + str.slice(1)}` as HsvaToColorVoid;\n }\n const color = createMemo(() => {\n const s = hsva();\n const c = s[capFirst(s.type)]();\n\n if (isFunction(props.onChange) && c.toString() !== props.value) {\n props.onChange(c.toString());\n }\n return c;\n });\n\n function setColor(c = props.defaultValue) {\n if (untrack(color).toString() !== c) {\n setHsva(colorParse(c));\n }\n }\n function handleHexa(e: CustomEvent) {\n if (e.target) {\n (e.target as HTMLInputElement).value = e.detail;\n }\n }\n function handleHexaBlur(e: FocusEvent & { target: { value: string } }) {\n if (e.target.value) {\n setColor(e.target.value);\n }\n }\n function handleHexaEnter(e: KeyboardEvent & { target: { value: string } }) {\n if (e.key === 'Enter' && typeof e.target.value === 'string') {\n setColor(e.target.value);\n }\n }\n function changeColor(ev: MouseEvent) {\n if (picker) {\n const { x, y, width, height } = picker.getBoundingClientRect();\n const prev = untrack(hsva);\n const next = prev.value;\n\n next[1] = Math.floor(Math.min(Math.max(0, ((ev.clientX - x) / width) * 100), 100));\n next[2] = Math.floor(100 - Math.min(Math.max(0, ((ev.clientY - y) / height) * 100), 100));\n\n setHsva({ ...prev, value: next });\n }\n }\n\n function handleChange(i: number, v?: number, t?: ColorType) {\n if (typeof v === 'number') {\n const prev = untrack(hsva);\n const changeHsv = i === 3 || t === 'hsva';\n const next = changeHsv ? prev.value : (untrack(color) as HSVA);\n\n next[i] = v || 0;\n if (changeHsv) {\n setHsva({\n ...prev,\n value: next,\n });\n } else {\n setHsva(colorParse(next.toString()));\n }\n }\n }\n function mouseDown(e: MouseEvent) {\n setDrag(true);\n changeColor(e);\n }\n function mouseUp() {\n setDrag(false);\n }\n function handleSwitch(e: CustomEvent) {\n setHsva((prev) => ({\n ...prev,\n type: e.detail[0],\n }));\n }\n\n function copy(e: MouseEvent) {\n setClipboard(untrack(color).toString(), e.target as HTMLElement);\n }\n async function eyeDropper() {\n if (window.EyeDropper) {\n const res = await new window.EyeDropper().open();\n\n if (res.sRGBHex) {\n setColor(res.sRGBHex);\n }\n return;\n }\n }\n const colorVar = createMemo(() => {\n const h = hsva(),\n value = h.value;\n\n return `.palette {--c:${h.toRgbaString()};--h:${value[0]};--s:${value[1]};--v:${value[2]};--a:${\n value[3]\n };}`;\n });\n\n createEffect(() => {\n throttle(setColor, 8)(props.value);\n });\n\n createEffect(() => {\n if (drag()) {\n document.body.addEventListener('mousemove', changeColor, {\n passive: passiveSupported,\n });\n }\n onCleanup(() => {\n document.body.removeEventListener('mousemove', changeColor, false);\n });\n });\n onMount(() => {\n document.body.addEventListener('mouseup', mouseUp, {\n passive: passiveSupported,\n });\n });\n onCleanup(() => {\n document.body.removeEventListener('mouseup', mouseUp, false);\n });\n\n return (\n <>\n <style textContent={baseStyle()} />\n <style textContent={style} />\n <style textContent={colorVar()} />\n <Show when={props.css}>\n <style textContent={css(props.css)} />\n </Show>\n <div class={cx('palette', props.class)}>\n <div ref={picker} class=\"picker\" onMouseDown={mouseDown} />\n <div class=\"chooser\">\n <div class=\"range\">\n <input\n class=\"slider hue\"\n min=\"0\"\n max=\"360\"\n type=\"range\"\n value={hsva().value[0]}\n onInput={(e) => {\n handleChange(0, Number(e.target.value), 'hsva');\n }}\n />\n <input\n class=\"slider opacity\"\n min=\"0\"\n max=\"1\"\n step=\"0.01\"\n type=\"range\"\n value={hsva().value[3]}\n onInput={(e) => {\n handleChange(3, Number(e.target.value));\n }}\n />\n </div>\n <div class=\"preview\" onClick={copy} />\n </div>\n <div class=\"form\">\n <Show\n when={hsva().type === 'hexa'}\n fallback={\n <>\n <Index each={color()}>\n {(n, i) => {\n const inp = Object.assign(\n {},\n inputProps,\n i === 3 && {\n step: 0.01,\n formatter: formatterOpacity,\n parse: parseOpacity,\n },\n );\n\n return (\n <n-input-number\n {...inp}\n value={n() as number}\n max={\n (\n untrack(color) as HSVA & {\n max: [360, 100, 100, 1];\n }\n ).max[i]\n }\n min={0}\n onChange={(e) => {\n handleChange(i, e.detail);\n }}\n />\n );\n }}\n </Index>\n </>\n }\n >\n <n-input\n {...inputProps}\n value={hsva().toHexaString()}\n onChange={handleHexa}\n onBlur={handleHexaBlur}\n onKeyUp={handleHexaEnter}\n />\n </Show>\n <n-dropdown\n css={switchCss}\n value={hsva().type}\n items={types}\n placement=\"right\"\n trigger=\"click\"\n onChange={handleSwitch}\n >\n <span class=\"switch\">{hsva().type}</span>\n </n-dropdown>\n </div>\n <div class=\"color\">\n <Show\n when={window.EyeDropper}\n fallback={\n <i\n style={{ '--c': 'rgba(168,16,16,0.15)' }}\n onClick={setColor.bind(null, 'rgba(168,16,16,0.15)')}\n />\n }\n >\n <i class=\"eye-dropper\" style={{ '--c': 'transparent' }} onClick={eyeDropper} />\n </Show>\n <For each={material}>\n {(c) => <i style={{ '--c': c }} onClick={setColor.bind(null, c)} />}\n </For>\n </div>\n </div>\n </>\n );\n}\n\nexport const defaultColorPaletteProps = {\n class: void 0,\n style: void 0,\n css: void 0,\n value: void 0,\n defaultValue: void 0,\n onChange: void 0,\n};\n\ncustomElement<ColorPaletteProps>('n-color-palette', defaultColorPaletteProps, (_, opts) => {\n const el = opts.element;\n const props = mergeProps(\n {\n onChange(val?: string) {\n el.dispatchEvent(\n new CustomEvent('change', {\n detail: val,\n }),\n );\n },\n },\n _,\n );\n\n createEffect(() => {\n clearAttribute(el, ['css']);\n });\n return (\n <>\n <style textContent={block} />\n <ColorPalette {...props} />\n </>\n );\n});\n\nexport default ColorPalette;\n"],"names":["defaultColorPaletteProps","ColorPalette","_","picker","baseStyle","theme","props","mergeProps","defaultValue","types","label","value","handleClosed","material","inputProps","class","size","css","hsva","setHsva","createSignal","colorParse","drag","setDrag","formatterOpacity","v","Number","toFixed","parseOpacity","_val","replace","color","createMemo","str","s","c","type","toUpperCase","slice","isFunction","onChange","toString","setColor","untrack","handleHexa","e","target","detail","handleHexaBlur","handleHexaEnter","key","changeColor","ev","x","y","width","height","getBoundingClientRect","prev","next","Math","floor","min","max","clientX","clientY","handleChange","i","t","changeHsv","mouseDown","mouseUp","handleSwitch","copy","setClipboard","eyeDropper","window","EyeDropper","res","open","sRGBHex","colorVar","h","toRgbaString","createEffect","throttle","document","body","addEventListener","passive","passiveSupported","onCleanup","removeEventListener","onMount","style","Show","Index","n","inp","Object","assign","step","formatter","parse","toHexaString","switchCss","bind","For","cx","customElement","opts","el","element","val","dispatchEvent","CustomEvent","clearAttribute","block"],"mappings":"kKAmXA,OAA4B,mBAA5B,GAnCaA,wBAAwB,mBAAxBA,+CArUN,wBAUA,8CAAA,8CAAA,oDAAA,gDAAA,0CACiB,yBACM,2BAGC,+BACF,uBAEI,ipBAE1B,uBACA,oBACA,gnBAkBP,SAASC,EAAaC,CAAoB,MAGpCC,EAFJ,GAAM,CAAEC,UAAAA,CAAS,CAAE,CAAGC,SAAK,CACrBC,EAAQC,GAAAA,YAAU,EAAC,CAAEC,aAAc,SAAU,EAAGN,GAEhDO,EAAQ,CACZ,CAAEC,MAAO,OAAQC,MAAO,OAAQC,aAAc,CAAA,CAAM,EACpD,CAAEF,MAAO,OAAQC,MAAO,OAAQC,aAAc,CAAA,CAAM,EACpD,CAAEF,MAAO,OAAQC,MAAO,OAAQC,aAAc,CAAA,CAAM,EACrD,CACKC,EAAW,CACf,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACD,CACKC,EAA+B,CACnCC,MAAO,QACPC,KAAM,QACNC,IAAK,2CACP,EACM,CAACC,EAAMC,EAAQ,CAAGC,GAAAA,cAAY,EAElCC,GAAAA,SAAU,EAACf,EAAMK,KAAK,EAAIL,EAAME,YAAY,GAExC,CAACc,EAAMC,EAAQ,CAAGH,GAAAA,cAAY,EAAC,CAAA,GAIrC,SAASI,EAAiBC,CAAmB,EAC3C,OAAOA,EAAIC,OAAO,AAAC,CAAA,AAAgB,IAAfD,CAAiB,EAAGE,OAAO,IAAMF,CACvD,CACA,SAASG,EAAaH,CAAmB,EACvC,IAAII,EAAOJ,EAKX,MAHiB,UAAb,OAAOA,GACTI,CAAAA,EAAOJ,EAAEK,OAAO,CAAC,SAAU,GAAE,EAExB,AAACD,EAAkB,GAC5B,CAIA,IAAME,EAAQC,GAAAA,YAAU,EAAC,SAHPC,EAIhB,IAAMC,EAAIhB,IACJiB,EAAID,CAAC,CALKD,EAKKC,EAAEE,IAAI,CAJpB,CAAC,EAAE,EAAEH,CAAG,CAAC,EAAE,CAACI,WAAW,GAAKJ,EAAIK,KAAK,CAAC,GAAG,CAAC,CAIpB,GAK7B,MAHIC,GAAAA,SAAU,EAACjC,EAAMkC,QAAQ,GAAKL,EAAEM,QAAQ,KAAOnC,EAAMK,KAAK,EAC5DL,EAAMkC,QAAQ,CAACL,EAAEM,QAAQ,IAEpBN,CACT,GAEA,SAASO,EAASP,EAAI7B,EAAME,YAAY,EAClCmC,GAAAA,SAAO,EAACZ,GAAOU,QAAQ,KAAON,GAChChB,EAAQE,GAAAA,SAAU,EAACc,GAEvB,CACA,SAASS,EAAWC,CAAc,EAC5BA,EAAEC,MAAM,EACV,CAAA,AAACD,EAAEC,MAAM,CAAsBnC,KAAK,CAAGkC,EAAEE,MAAM,AAAD,CAElD,CACA,SAASC,EAAeH,CAA6C,EAC/DA,EAAEC,MAAM,CAACnC,KAAK,EAChB+B,EAASG,EAAEC,MAAM,CAACnC,KAAK,CAE3B,CACA,SAASsC,EAAgBJ,CAAgD,EACzD,UAAVA,EAAEK,GAAG,EAAgB,AAA0B,UAA1B,OAAOL,EAAEC,MAAM,CAACnC,KAAK,EAC5C+B,EAASG,EAAEC,MAAM,CAACnC,KAAK,CAE3B,CACA,SAASwC,EAAYC,CAAc,EACjC,GAAIjD,EAAQ,CACV,GAAM,CAAEkD,EAAAA,CAAC,CAAEC,EAAAA,CAAC,CAAEC,MAAAA,CAAK,CAAEC,OAAAA,CAAM,CAAE,CAAGrD,EAAOsD,qBAAqB,GACtDC,EAAOf,GAAAA,SAAO,EAACzB,GACfyC,EAAOD,EAAK/C,KAAK,AAEvBgD,CAAAA,CAAI,CAAC,EAAE,CAAGC,KAAKC,KAAK,CAACD,KAAKE,GAAG,CAACF,KAAKG,GAAG,CAAC,EAAG,AAAEX,CAAAA,EAAGY,OAAO,CAAGX,CAAAA,EAAKE,EAAS,KAAM,MAC7EI,CAAI,CAAC,EAAE,CAAGC,KAAKC,KAAK,CAAC,IAAMD,KAAKE,GAAG,CAACF,KAAKG,GAAG,CAAC,EAAG,AAAEX,CAAAA,EAAGa,OAAO,CAAGX,CAAAA,EAAKE,EAAU,KAAM,MAEpFrC,EAAQ,CAAE,GAAGuC,CAAI,CAAE/C,MAAOgD,CAAK,EACjC,CACF,CAEA,SAASO,EAAaC,CAAS,CAAE1C,CAAU,CAAE2C,CAAa,EACxD,GAAI,AAAa,UAAb,OAAO3C,EAAgB,CACzB,IAAMiC,EAAOf,GAAAA,SAAO,EAACzB,GACfmD,EAAYF,AAAM,IAANA,GAAWC,AAAM,SAANA,EACvBT,EAAOU,EAAYX,EAAK/C,KAAK,CAAIgC,GAAAA,SAAO,EAACZ,EAE/C4B,CAAAA,CAAI,CAACQ,EAAE,CAAG1C,GAAK,EACX4C,EACFlD,EAAQ,CACN,GAAGuC,CAAI,CACP/C,MAAOgD,CACT,GAEAxC,EAAQE,GAAAA,SAAU,EAACsC,EAAKlB,QAAQ,IAEpC,CACF,CACA,SAAS6B,EAAUzB,CAAa,EAC9BtB,EAAQ,CAAA,GACR4B,EAAYN,EACd,CACA,SAAS0B,IACPhD,EAAQ,CAAA,EACV,CACA,SAASiD,EAAa3B,CAAc,EAClC1B,EAAQ,AAACuC,GAAU,CAAA,CACjB,GAAGA,CAAI,CACPtB,KAAMS,EAAEE,MAAM,CAAC,EAAE,AACnB,CAAA,EACF,CAEA,SAAS0B,EAAK5B,CAAa,EACzB6B,GAAAA,SAAY,EAAC/B,GAAAA,SAAO,EAACZ,GAAOU,QAAQ,GAAII,EAAEC,MAAM,CAClD,CACA,eAAe6B,IACb,GAAIC,OAAOC,UAAU,CAAE,CACrB,IAAMC,EAAM,MAAM,IAAIF,OAAOC,UAAU,GAAGE,IAAI,EAE1CD,CAAAA,EAAIE,OAAO,EACbtC,EAASoC,EAAIE,OAAO,EAEtB,MACF,CACF,CACA,IAAMC,EAAWjD,GAAAA,YAAU,EAAC,KAC1B,IAAMkD,EAAIhE,IACRP,EAAQuE,EAAEvE,KAAK,CAEjB,MAAO,CAAC,cAAc,EAAEuE,EAAEC,YAAY,GAAG,KAAK,EAAExE,CAAK,CAAC,EAAE,CAAC,KAAK,EAAEA,CAAK,CAAC,EAAE,CAAC,KAAK,EAAEA,CAAK,CAAC,EAAE,CAAC,KAAK,EAC5FA,CAAK,CAAC,EAAE,CACT,EAAE,CAAC,AACN,GAyBA,MAvBAyE,GAAAA,cAAY,EAAC,KACXC,GAAAA,SAAQ,EAAC3C,EAAU,GAAGpC,EAAMK,KAAK,CACnC,GAEAyE,GAAAA,cAAY,EAAC,KACP9D,KACFgE,SAASC,IAAI,CAACC,gBAAgB,CAAC,YAAarC,EAAa,CACvDsC,QAASC,SAAgB,AAC3B,GAEFC,GAAAA,WAAS,EAAC,KACRL,SAASC,IAAI,CAACK,mBAAmB,CAAC,YAAazC,EAAa,CAAA,EAC9D,EACF,GACA0C,GAAAA,SAAO,EAAC,KACNP,SAASC,IAAI,CAACC,gBAAgB,CAAC,UAAWjB,EAAS,CACjDkB,QAASC,SAAgB,AAC3B,EACF,GACAC,GAAAA,WAAS,EAAC,KACRL,SAASC,IAAI,CAACK,mBAAmB,CAAC,UAAWrB,EAAS,CAAA,EACxD,iEAIwBnE,gDACA0F,OAAK,oEACLb,iCACnBc,MAAI,oBAAOzF,EAAMW,GAAG,wEACCA,GAAAA,KAAG,EAACX,EAAMW,GAAG,yCAGvBd,yLAAoCmE,0CAApCnE,cASK,AAAC0C,IACRqB,EAAa,EAAGxC,OAAOmB,EAAEC,MAAM,CAACnC,KAAK,EAAG,OAC1C,YASS,AAACkC,IACRqB,EAAa,EAAGxC,OAAOmB,EAAEC,MAAM,CAACnC,KAAK,EACvC,mCAG0B8D,2CAG7BsB,MAAI,mBACG7E,AAAgB,SAAhBA,IAAOkB,IAAI,6CAGZ4D,OAAK,oBAAOjE,cACV,CAACkE,EAAG9B,KACH,IAAM+B,EAAMC,OAAOC,MAAM,CACvB,CAAC,EACDtF,EACAqD,AAAM,IAANA,GAAW,CACTkC,KAAM,IACNC,UAAW9E,EACX+E,MAAO3E,CACT,GAGF,4DAEQsE,sBACGD,qBAEL,AACEtD,GAAAA,SAAO,EAACZ,GAGRgC,GAAG,CAACI,EAAE,MAEL,WACK,AAACtB,IACTqB,EAAaC,EAAGtB,EAAEE,MAAM,CAC1B,2CAGN,oEAMAjC,sBACGI,IAAOsF,YAAY,aAChB5D,SACFI,UACCC,gFASDuB,SALLiC,WAAS,SAEPhG,gDAKeS,IAAOkB,IAAI,uCAIlC2D,MAAI,oBACGnB,OAAOC,UAAU,8EAIVnC,EAASgE,IAAI,CAAC,KAAM,qJAIgC/B,+FAElEgC,KAAG,OAAO9F,WACR,AAACsB,0DAAuCO,EAASgE,IAAI,CAAC,KAAMvE,aAAlCA,4BAAAA,kFAnGrByE,GAAAA,IAAE,EAAC,UAAWtG,EAAMS,KAAK,6BAStBG,IAAOP,KAAK,CAAC,EAAE,2BAWfO,IAAOP,KAAK,CAAC,EAAE,2BAyDjBO,IAAOkB,IAAI,QA4B9B,CAEO,MAAMpC,EAA2B,CACtCe,MAAO,KAAK,EACZ+E,MAAO,KAAK,EACZ7E,IAAK,KAAK,EACVN,MAAO,KAAK,EACZH,aAAc,KAAK,EACnBgC,SAAU,KAAK,CACjB,EAEAqE,GAAAA,eAAa,EAAoB,kBAAmB7G,EAA0B,CAACE,EAAG4G,KAChF,IAAMC,EAAKD,EAAKE,OAAO,CACjB1G,EAAQC,GAAAA,YAAU,EACtB,CACEiC,SAASyE,CAAY,EACnBF,EAAGG,aAAa,CACd,IAAIC,YAAY,SAAU,CACxBpE,OAAQkE,CACV,GAEJ,CACF,EACA/G,GAMF,MAHAkF,GAAAA,cAAY,EAAC,KACXgC,GAAAA,gBAAc,EAACL,EAAI,CAAC,MAAM,CAC5B,yCAGwBM,OAAK,6BACxBpH,EAAiBK,GAGxB,SAEA,EAAeL"}
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),function(r,e){for(var i in e)Object.defineProperty(r,i,{enumerable:!0,get:e[i]})}(exports,{style:function(){return e},switchCss:function(){return i}});const r=require("@moneko/css"),e=(0,r.css)`
1
+ "use strict";function r(r,e){for(var i in e)Object.defineProperty(r,i,{enumerable:!0,get:e[i]})}Object.defineProperty(exports,"__esModule",{value:!0}),r(exports,{style:function(){return i},switchCss:function(){return t}});const e=require("@moneko/css"),i=(0,e.css)`
2
2
  .palette {
3
3
  --alpha-gradient: repeating-conic-gradient(#eee 0 25%, transparent 0 50%) 0 / 10px 10px;
4
4
 
@@ -230,7 +230,7 @@
230
230
  }
231
231
  }
232
232
  }
233
- `,i=(0,r.css)`
233
+ `,t=(0,e.css)`
234
234
  .switch {
235
235
  block-size: 25px;
236
236
  line-height: 25px;
@@ -257,5 +257,4 @@
257
257
  transform: scale(0.98);
258
258
  }
259
259
  }
260
- `;
261
- //# sourceMappingURL=style.js.map
260
+ `;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../components/color-palette/style.ts"],"sourcesContent":["import { css } from '@moneko/css';\n\nexport const style = css`\n .palette {\n --alpha-gradient: repeating-conic-gradient(#eee 0 25%, transparent 0 50%) 0 / 10px 10px;\n\n inline-size: 100%;\n box-sizing: border-box;\n user-select: none;\n }\n\n .preview,\n .preview::after,\n .color i,\n .color i::before {\n border-radius: var(--border-radius);\n }\n\n .preview {\n margin-inline-start: 6px;\n inline-size: 46px;\n min-block-size: 26px;\n line-height: 1;\n font-family: sans-serif;\n text-align: center;\n color: #fff;\n cursor: pointer;\n background: var(--alpha-gradient);\n\n &::after {\n display: block;\n inline-size: 100%;\n block-size: 100%;\n background-color: var(--c);\n box-shadow:\n rgb(0 0 0 / 10%) 0 0 0 1px inset,\n rgb(0 0 0 / 10%) 0 0 4px inset;\n text-shadow: var(--text-shadow);\n content: '';\n }\n\n &:hover::after {\n font-size: 24px;\n content: '⎘';\n }\n\n &[data-copy='success']::after {\n font-size: 16px;\n line-height: 26px;\n content: '✓';\n }\n }\n\n .form {\n display: flex;\n gap: 6px;\n }\n\n .input {\n flex: 1;\n }\n\n .picker {\n position: relative;\n border-radius: 4px;\n block-size: 150px;\n background:\n linear-gradient(to top, hsl(0deg 0% 0% / calc(var(--a))), transparent) 0 / 100%,\n linear-gradient(\n to left,\n hsl(calc(var(--h)) 100% 50% / calc(var(--a))),\n hsl(0deg 0% 100% / calc(var(--a)))\n )\n 0 / 100%,\n var(--alpha-gradient);\n opacity: 1;\n transition: opacity var(--transition-duration);\n user-select: none;\n cursor: crosshair;\n\n &:active {\n opacity: 0.99;\n }\n\n &::after {\n position: absolute;\n inset-block-start: calc((100 - var(--v)) * 1%);\n inset-inline-start: calc(var(--s) * 1%);\n border-radius: 3px;\n inline-size: 6px;\n block-size: 6px;\n pointer-events: none;\n content: '';\n transform: translate(-50%, -50%);\n box-shadow:\n inset 0 0 0 1px #fff,\n 0 0 1px rgb(0 0 0 / 20%),\n inset 0 0 2.5px 0 rgb(0 0 0 / 20%);\n }\n }\n\n .chooser {\n display: flex;\n padding: 8px 0;\n }\n\n .range {\n display: flex;\n flex-direction: column;\n gap: 6px;\n flex: 1;\n }\n\n .hue {\n background-image: linear-gradient(to right, red, yellow, lime, cyan, blue, magenta, red);\n }\n\n .opacity {\n background: linear-gradient(\n to right,\n hsl(calc(var(--h)) 100% 50% / 0%),\n hsl(calc(var(--h)) 100% 50% / 100%)\n ),\n var(--alpha-gradient);\n }\n\n .slider {\n flex: 1;\n display: block;\n margin: 0;\n border-radius: 5px;\n inline-size: 100%;\n block-size: 10px;\n outline: 0;\n cursor: pointer;\n pointer-events: all;\n appearance: none;\n\n &::-webkit-slider-runnable-track {\n position: relative;\n display: flex;\n align-items: center;\n }\n\n &::-webkit-slider-thumb {\n appearance: none;\n position: relative;\n border-radius: 50%;\n inline-size: 10px;\n block-size: 10px;\n background: #fff;\n box-shadow: 0 0 10px rgb(0 0 0 / 10%);\n transition: 0.3s cubic-bezier(0.12, 0.4, 0.29, 1.46);\n transform: scale(1.2);\n }\n\n &::-moz-range-thumb {\n position: relative;\n border: 0;\n border-radius: 50%;\n background: #fff;\n box-shadow: 0 0 10px rgb(0 0 0 / 10%);\n transition: 0.3s cubic-bezier(0.12, 0.4, 0.29, 1.46);\n inline-size: 10px;\n block-size: 10px;\n transform: scale(1.2);\n box-sizing: border-box;\n pointer-events: none;\n }\n\n &::-webkit-slider-thumb:active,\n &:focus::-webkit-slider-thumb {\n transform: scale(1.5);\n }\n\n &::-moz-range-thumb:active,\n &:focus::-moz-range-thumb {\n transform: scale(1.5);\n }\n }\n\n .color {\n display: flex;\n padding-block-start: 8px;\n gap: 5px 9px;\n flex-wrap: wrap;\n\n i {\n position: relative;\n border: 0;\n font-size: 28px;\n text-align: center;\n background-color: var(--c, transparent);\n outline: 0;\n cursor: pointer;\n inline-size: 20px;\n block-size: 20px;\n font-style: normal;\n line-height: 17px;\n\n &::before,\n &::after {\n position: absolute;\n inset-block-start: 0;\n inset-inline-start: 0;\n inline-size: 100%;\n block-size: 100%;\n content: '';\n }\n\n &::before {\n z-index: -1;\n background: var(--alpha-gradient);\n }\n\n &.eye-dropper::before {\n content: '⍝';\n }\n\n &::after {\n border-radius: inherit;\n background-color: var(--c, transparent);\n opacity: 0;\n transition:\n var(--transition-duration) transform var(--transition-timing-function),\n var(--transition-duration) opacity var(--transition-timing-function);\n }\n\n &:hover::after {\n transform: translate3d(2px, 2px, 0);\n opacity: 0.3;\n }\n }\n }\n`;\n\nexport const switchCss = css`\n .switch {\n block-size: 25px;\n line-height: 25px;\n float: inline-start;\n border-radius: var(--border-radius);\n cursor: pointer;\n inline-size: 46px;\n font-size: 12px;\n text-align: center;\n color: var(--on-primary-selection);\n background-color: var(--primary-selection);\n text-transform: uppercase;\n outline-color: var(--primary-outline);\n transition-property: background-color, color, outline-color, border-radius, transform;\n transition-timing-function: var(--transition-timing-function);\n transition-duration: var(--transition-duration);\n\n &:hover {\n color: var(--primary-hover);\n }\n\n &:active {\n color: var(--primary-active);\n transform: scale(0.98);\n }\n }\n`;\n"],"names":["style","switchCss","css"],"mappings":"+JAEaA,KAAK,mBAALA,GA0OAC,SAAS,mBAATA,qBA5OO,eAEPD,EAAQE,GAAAA,KAAG,CAAA,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwOzB,CAAC,CAEYD,EAAYC,GAAAA,KAAG,CAAA,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2B7B,CAAC"}
1
+ {"version":3,"sources":["components/color-palette/style.ts"],"sourcesContent":["import { css } from '@moneko/css';\n\nexport const style = css`\n .palette {\n --alpha-gradient: repeating-conic-gradient(#eee 0 25%, transparent 0 50%) 0 / 10px 10px;\n\n inline-size: 100%;\n box-sizing: border-box;\n user-select: none;\n }\n\n .preview,\n .preview::after,\n .color i,\n .color i::before {\n border-radius: var(--border-radius);\n }\n\n .preview {\n margin-inline-start: 6px;\n inline-size: 46px;\n min-block-size: 26px;\n line-height: 1;\n font-family: sans-serif;\n text-align: center;\n color: #fff;\n cursor: pointer;\n background: var(--alpha-gradient);\n\n &::after {\n display: block;\n inline-size: 100%;\n block-size: 100%;\n background-color: var(--c);\n box-shadow:\n rgb(0 0 0 / 10%) 0 0 0 1px inset,\n rgb(0 0 0 / 10%) 0 0 4px inset;\n text-shadow: var(--text-shadow);\n content: '';\n }\n\n &:hover::after {\n font-size: 24px;\n content: '⎘';\n }\n\n &[data-copy='success']::after {\n font-size: 16px;\n line-height: 26px;\n content: '✓';\n }\n }\n\n .form {\n display: flex;\n gap: 6px;\n }\n\n .input {\n flex: 1;\n }\n\n .picker {\n position: relative;\n border-radius: 4px;\n block-size: 150px;\n background:\n linear-gradient(to top, hsl(0deg 0% 0% / calc(var(--a))), transparent) 0 / 100%,\n linear-gradient(\n to left,\n hsl(calc(var(--h)) 100% 50% / calc(var(--a))),\n hsl(0deg 0% 100% / calc(var(--a)))\n )\n 0 / 100%,\n var(--alpha-gradient);\n opacity: 1;\n transition: opacity var(--transition-duration);\n user-select: none;\n cursor: crosshair;\n\n &:active {\n opacity: 0.99;\n }\n\n &::after {\n position: absolute;\n inset-block-start: calc((100 - var(--v)) * 1%);\n inset-inline-start: calc(var(--s) * 1%);\n border-radius: 3px;\n inline-size: 6px;\n block-size: 6px;\n pointer-events: none;\n content: '';\n transform: translate(-50%, -50%);\n box-shadow:\n inset 0 0 0 1px #fff,\n 0 0 1px rgb(0 0 0 / 20%),\n inset 0 0 2.5px 0 rgb(0 0 0 / 20%);\n }\n }\n\n .chooser {\n display: flex;\n padding: 8px 0;\n }\n\n .range {\n display: flex;\n flex-direction: column;\n gap: 6px;\n flex: 1;\n }\n\n .hue {\n background-image: linear-gradient(to right, red, yellow, lime, cyan, blue, magenta, red);\n }\n\n .opacity {\n background: linear-gradient(\n to right,\n hsl(calc(var(--h)) 100% 50% / 0%),\n hsl(calc(var(--h)) 100% 50% / 100%)\n ),\n var(--alpha-gradient);\n }\n\n .slider {\n flex: 1;\n display: block;\n margin: 0;\n border-radius: 5px;\n inline-size: 100%;\n block-size: 10px;\n outline: 0;\n cursor: pointer;\n pointer-events: all;\n appearance: none;\n\n &::-webkit-slider-runnable-track {\n position: relative;\n display: flex;\n align-items: center;\n }\n\n &::-webkit-slider-thumb {\n appearance: none;\n position: relative;\n border-radius: 50%;\n inline-size: 10px;\n block-size: 10px;\n background: #fff;\n box-shadow: 0 0 10px rgb(0 0 0 / 10%);\n transition: 0.3s cubic-bezier(0.12, 0.4, 0.29, 1.46);\n transform: scale(1.2);\n }\n\n &::-moz-range-thumb {\n position: relative;\n border: 0;\n border-radius: 50%;\n background: #fff;\n box-shadow: 0 0 10px rgb(0 0 0 / 10%);\n transition: 0.3s cubic-bezier(0.12, 0.4, 0.29, 1.46);\n inline-size: 10px;\n block-size: 10px;\n transform: scale(1.2);\n box-sizing: border-box;\n pointer-events: none;\n }\n\n &::-webkit-slider-thumb:active,\n &:focus::-webkit-slider-thumb {\n transform: scale(1.5);\n }\n\n &::-moz-range-thumb:active,\n &:focus::-moz-range-thumb {\n transform: scale(1.5);\n }\n }\n\n .color {\n display: flex;\n padding-block-start: 8px;\n gap: 5px 9px;\n flex-wrap: wrap;\n\n i {\n position: relative;\n border: 0;\n font-size: 28px;\n text-align: center;\n background-color: var(--c, transparent);\n outline: 0;\n cursor: pointer;\n inline-size: 20px;\n block-size: 20px;\n font-style: normal;\n line-height: 17px;\n\n &::before,\n &::after {\n position: absolute;\n inset-block-start: 0;\n inset-inline-start: 0;\n inline-size: 100%;\n block-size: 100%;\n content: '';\n }\n\n &::before {\n z-index: -1;\n background: var(--alpha-gradient);\n }\n\n &.eye-dropper::before {\n content: '⍝';\n }\n\n &::after {\n border-radius: inherit;\n background-color: var(--c, transparent);\n opacity: 0;\n transition:\n var(--transition-duration) transform var(--transition-timing-function),\n var(--transition-duration) opacity var(--transition-timing-function);\n }\n\n &:hover::after {\n transform: translate3d(2px, 2px, 0);\n opacity: 0.3;\n }\n }\n }\n`;\n\nexport const switchCss = css`\n .switch {\n block-size: 25px;\n line-height: 25px;\n float: inline-start;\n border-radius: var(--border-radius);\n cursor: pointer;\n inline-size: 46px;\n font-size: 12px;\n text-align: center;\n color: var(--on-primary-selection);\n background-color: var(--primary-selection);\n text-transform: uppercase;\n outline-color: var(--primary-outline);\n transition-property: background-color, color, outline-color, border-radius, transform;\n transition-timing-function: var(--transition-timing-function);\n transition-duration: var(--transition-duration);\n\n &:hover {\n color: var(--primary-hover);\n }\n\n &:active {\n color: var(--primary-active);\n transform: scale(0.98);\n }\n }\n`;\n"],"names":["style","switchCss","css"],"mappings":"kKAEaA,KAAK,mBAALA,GA0OAC,SAAS,mBAATA,qBA5OO,eAEPD,EAAQE,GAAAA,KAAG,CAAA,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAwOzB,CAAC,CAEYD,EAAYC,GAAAA,KAAG,CAAA,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2B7B,CAAC"}
@@ -1,2 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return d}});const e=require("solid-js/web"),t=require("solid-js"),r=require("@moneko/css"),n=require("solid-element"),o=require("../basic-config"),l=function(e,t){if(e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var r=i(void 0);if(r&&r.has(e))return r.get(e);var n={__proto__:null},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var u=o?Object.getOwnPropertyDescriptor(e,l):null;u&&(u.get||u.set)?Object.defineProperty(n,l,u):n[l]=e[l]}return n.default=e,r&&r.set(e,n),n}(require("../popover")),u=require("../theme"),a=require("./style");function i(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,r=new WeakMap;return(i=function(e){return e?r:t})(e)}require("../color-palette");const c=(0,e.template)("<span>"),s=(0,e.template)("<n-color-palette>",!0,!1),p=(0,e.template)("<style>");function f(n){let[o,u]=(0,t.splitProps)(n,["css","value","defaultValue","onChange","popupClass","popupCss","size"]),[i,p]=(0,t.createSignal)(o.defaultValue);function f(e){void 0===o.value&&p(e.detail),o.onChange?.(e.detail)}(0,t.onMount)(()=>{void 0===o.value&&o.defaultValue&&p(o.defaultValue)}),(0,t.createEffect)(()=>{void 0!==o.value&&o.value!==(0,t.untrack)(i)&&p(o.value)});let d=(0,t.createMemo)(()=>`.color-picker {padding: 10px;inline-size: 216px;}${o.popupCss||""}`),g=(0,t.createMemo)(()=>`${a.style+(o.css||"")}.trigger {--c: ${i()};}`);return(0,e.createComponent)(l.default,(0,e.mergeProps)(u,{arrow:!0,trigger:"click",get content(){return(()=>{let t=s();return(0,e.addEventListener)(t,"change",f),t._$owner=(0,e.getOwner)(),(0,e.effect)(()=>t.value=i()),t})()},get popupClass(){return(0,r.cx)("color-picker",o.popupClass)},get popupCss(){return d()},get css(){return g()},get children(){let t=c();return(0,e.effect)(()=>(0,e.className)(t,(0,r.cx)("trigger",o.size))),t}}))}(0,n.customElement)("n-color-picker",{...l.defaultProps,value:void 0,defaultValue:void 0,onChange:void 0,size:void 0},(r,n)=>{let l=n.element,a=(0,t.mergeProps)({onChange(e){l.dispatchEvent(new CustomEvent("change",{detail:e}))},children:l.children},r);return(0,t.createEffect)(()=>{(0,o.clearAttribute)(l,["popupCss","css"])}),[(()=>{let e=p();return e.textContent=u.inline,e})(),(0,e.createComponent)(f,a)]});const d=f;
2
- //# sourceMappingURL=index.js.map
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return g}});const e=require("solid-js/web"),t=require("solid-js"),r=require("@moneko/css"),n=require("solid-element"),o=require("../basic-config"),l=c(require("../popover")),u=require("../theme"),a=require("./style");function i(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,r=new WeakMap;return(i=function(e){return e?r:t})(e)}function c(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var r=i(t);if(r&&r.has(e))return r.get(e);var n={__proto__:null},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var l in e)if("default"!==l&&Object.prototype.hasOwnProperty.call(e,l)){var u=o?Object.getOwnPropertyDescriptor(e,l):null;u&&(u.get||u.set)?Object.defineProperty(n,l,u):n[l]=e[l]}return n.default=e,r&&r.set(e,n),n}require("../color-palette");const s=(0,e.template)("<span>"),p=(0,e.template)("<n-color-palette>",!0,!1),f=(0,e.template)("<style>");function d(n){let[o,u]=(0,t.splitProps)(n,["css","value","defaultValue","onChange","popupClass","popupCss","size"]),[i,c]=(0,t.createSignal)(o.defaultValue);function f(e){void 0===o.value&&c(e.detail),o.onChange?.(e.detail)}(0,t.onMount)(()=>{void 0===o.value&&o.defaultValue&&c(o.defaultValue)}),(0,t.createEffect)(()=>{void 0!==o.value&&o.value!==(0,t.untrack)(i)&&c(o.value)});let d=(0,t.createMemo)(()=>`.color-picker {padding: 10px;inline-size: 216px;}${o.popupCss||""}`),g=(0,t.createMemo)(()=>`${a.style+(o.css||"")}.trigger {--c: ${i()};}`);return(0,e.createComponent)(l.default,(0,e.mergeProps)(u,{arrow:!0,trigger:"click",get content(){return(()=>{let t=p();return(0,e.addEventListener)(t,"change",f),t._$owner=(0,e.getOwner)(),(0,e.effect)(()=>t.value=i()),t})()},get popupClass(){return(0,r.cx)("color-picker",o.popupClass)},get popupCss(){return d()},get css(){return g()},get children(){let t=s();return(0,e.effect)(()=>(0,e.className)(t,(0,r.cx)("trigger",o.size))),t}}))}(0,n.customElement)("n-color-picker",{...l.defaultProps,value:void 0,defaultValue:void 0,onChange:void 0,size:void 0},(r,n)=>{let l=n.element,a=(0,t.mergeProps)({onChange(e){l.dispatchEvent(new CustomEvent("change",{detail:e}))},children:l.children},r);return(0,t.createEffect)(()=>{(0,o.clearAttribute)(l,["popupCss","css"])}),[(()=>{let e=f();return e.textContent=u.inline,e})(),(0,e.createComponent)(d,a)]});const g=d;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../components/color-picker/index.tsx"],"sourcesContent":["import {\n createEffect,\n createMemo,\n createSignal,\n mergeProps,\n onMount,\n splitProps,\n untrack,\n} from 'solid-js';\nimport { cx } from '@moneko/css';\nimport { customElement } from 'solid-element';\n\nimport type { BasicConfig, ColorPaletteProps, CustomElement, PopoverProps } from '..';\nimport { clearAttribute } from '../basic-config';\nimport Popover, { defaultProps } from '../popover';\nimport { inline } from '../theme';\n\nimport { style } from './style';\n\nimport '../color-palette';\n\n/** 颜色选择器\n * @since 2.0.0\n */\nexport interface ColorPickerProps\n extends ColorPaletteProps,\n Omit<PopoverProps, 'children' | 'content'> {\n /** 自定义类名 */\n class?: string;\n /** 自定义样式表 */\n css?: string;\n /** 关闭后是否销毁 */\n destroyInactive?: boolean;\n /** 尺寸\n * @default 'normal'\n */\n size?: BasicConfig['size'];\n /** 默认值 */\n defaultValue?: string;\n}\nexport type ColorPickerElement = CustomElement<ColorPickerProps>;\n\nfunction ColorPicker(props: ColorPickerProps) {\n const [local, others] = splitProps(props, [\n 'css',\n 'value',\n 'defaultValue',\n 'onChange',\n 'popupClass',\n 'popupCss',\n 'size',\n ]);\n const [color, setColor] = createSignal<string | undefined>(local.defaultValue);\n\n function handleChange(e: CustomEvent<string>) {\n if (local.value === void 0) {\n setColor(e.detail);\n }\n local.onChange?.(e.detail);\n }\n\n onMount(() => {\n if (local.value === void 0 && local.defaultValue) {\n setColor(local.defaultValue);\n }\n });\n createEffect(() => {\n if (local.value !== void 0 && local.value !== untrack(color)) {\n setColor(local.value);\n }\n });\n const popupCss = createMemo(\n () => `.color-picker {padding: 10px;inline-size: 216px;}${local.popupCss || ''}`,\n );\n const css = createMemo(() => `${style + (local.css || '')}.trigger {--c: ${color()};}`);\n\n return (\n <Popover\n {...others}\n arrow={true}\n trigger=\"click\"\n content={<n-color-palette value={color()} onChange={handleChange} />}\n popupClass={cx('color-picker', local.popupClass)}\n popupCss={popupCss()}\n css={css()}\n >\n <span class={cx('trigger', local.size)} />\n </Popover>\n );\n}\n\ncustomElement<ColorPickerProps>(\n 'n-color-picker',\n {\n ...defaultProps,\n value: void 0,\n defaultValue: void 0,\n onChange: void 0,\n size: void 0,\n },\n (_, opts) => {\n const el = opts.element;\n const props = mergeProps(\n {\n onChange(val?: string) {\n el.dispatchEvent(\n new CustomEvent('change', {\n detail: val,\n }),\n );\n },\n children: el.children,\n },\n _,\n );\n\n createEffect(() => {\n clearAttribute(el, ['popupCss', 'css']);\n });\n return (\n <>\n <style textContent={inline} />\n <ColorPicker {...props} />\n </>\n );\n },\n);\n\nexport default ColorPicker;\n"],"names":["ColorPicker","props","local","others","splitProps","color","setColor","createSignal","defaultValue","handleChange","e","value","detail","onChange","onMount","createEffect","untrack","popupCss","createMemo","css","style","Popover","cx","popupClass","size","customElement","defaultProps","_","opts","el","element","mergeProps","val","dispatchEvent","CustomEvent","children","clearAttribute","inline"],"mappings":"kGAgIA,+CAAA,+CAxHO,sBACY,yBACW,2BAGC,yeACO,yBACf,sBAED,kJAEf,6HAuBP,SAASA,EAAYC,CAAuB,EAC1C,GAAM,CAACC,EAAOC,EAAO,CAAGC,GAAAA,YAAU,EAACH,EAAO,CACxC,MACA,QACA,eACA,WACA,aACA,WACA,OACD,EACK,CAACI,EAAOC,EAAS,CAAGC,GAAAA,cAAY,EAAqBL,EAAMM,YAAY,EAE7E,SAASC,EAAaC,CAAsB,EACtB,KAAK,IAArBR,EAAMS,KAAK,EACbL,EAASI,EAAEE,MAAM,EAEnBV,EAAMW,QAAQ,GAAGH,EAAEE,MAAM,CAC3B,CAEAE,GAAAA,SAAO,EAAC,KACc,KAAK,IAArBZ,EAAMS,KAAK,EAAeT,EAAMM,YAAY,EAC9CF,EAASJ,EAAMM,YAAY,CAE/B,GACAO,GAAAA,cAAY,EAAC,KACS,KAAK,IAArBb,EAAMS,KAAK,EAAeT,EAAMS,KAAK,GAAKK,GAAAA,SAAO,EAACX,IACpDC,EAASJ,EAAMS,KAAK,CAExB,GACA,IAAMM,EAAWC,GAAAA,YAAU,EACzB,IAAM,CAAC,iDAAiD,EAAEhB,EAAMe,QAAQ,EAAI,GAAG,CAAC,EAE5EE,EAAMD,GAAAA,YAAU,EAAC,IAAM,CAAC,EAAEE,OAAK,CAAIlB,CAAAA,EAAMiB,GAAG,EAAI,EAAC,EAAG,eAAe,EAAEd,IAAQ,EAAE,CAAC,EAEtF,4BACGgB,SAAO,kBACFlB,SACG,CAAA,8FAE6CM,uDAAnBJ,mCACrBiB,GAAAA,IAAE,EAAC,eAAgBpB,EAAMqB,UAAU,yBACrCN,sBACLE,uEAEQG,GAAAA,IAAE,EAAC,UAAWpB,EAAMsB,IAAI,SAG3C,CAEAC,GAAAA,eAAa,EACX,iBACA,CACE,GAAGC,cAAY,CACff,MAAO,KAAK,EACZH,aAAc,KAAK,EACnBK,SAAU,KAAK,EACfW,KAAM,KAAK,CACb,EACA,CAACG,EAAGC,KACF,IAAMC,EAAKD,EAAKE,OAAO,CACjB7B,EAAQ8B,GAAAA,YAAU,EACtB,CACElB,SAASmB,CAAY,EACnBH,EAAGI,aAAa,CACd,IAAIC,YAAY,SAAU,CACxBtB,OAAQoB,CACV,GAEJ,EACAG,SAAUN,EAAGM,QAAQ,AACvB,EACAR,GAMF,MAHAZ,GAAAA,cAAY,EAAC,KACXqB,GAAAA,gBAAc,EAACP,EAAI,CAAC,WAAY,MAAM,CACxC,yCAGwBQ,QAAM,6BACzBrC,EAAgBC,GAGvB,SAGF,EAAeD"}
1
+ {"version":3,"sources":["components/color-picker/index.tsx"],"sourcesContent":["import {\n createEffect,\n createMemo,\n createSignal,\n mergeProps,\n onMount,\n splitProps,\n untrack,\n} from 'solid-js';\nimport { cx } from '@moneko/css';\nimport { customElement } from 'solid-element';\n\nimport type { BasicConfig, ColorPaletteProps, CustomElement, PopoverProps } from '..';\nimport { clearAttribute } from '../basic-config';\nimport Popover, { defaultProps } from '../popover';\nimport { inline } from '../theme';\n\nimport { style } from './style';\n\nimport '../color-palette';\n\n/** 颜色选择器\n * @since 2.0.0\n */\nexport interface ColorPickerProps\n extends ColorPaletteProps,\n Omit<PopoverProps, 'children' | 'content'> {\n /** 自定义类名 */\n class?: string;\n /** 自定义样式表 */\n css?: string;\n /** 关闭后是否销毁 */\n destroyInactive?: boolean;\n /** 尺寸\n * @default 'normal'\n */\n size?: BasicConfig['size'];\n /** 默认值 */\n defaultValue?: string;\n}\nexport type ColorPickerElement = CustomElement<ColorPickerProps>;\n\nfunction ColorPicker(props: ColorPickerProps) {\n const [local, others] = splitProps(props, [\n 'css',\n 'value',\n 'defaultValue',\n 'onChange',\n 'popupClass',\n 'popupCss',\n 'size',\n ]);\n const [color, setColor] = createSignal<string | undefined>(local.defaultValue);\n\n function handleChange(e: CustomEvent<string>) {\n if (local.value === void 0) {\n setColor(e.detail);\n }\n local.onChange?.(e.detail);\n }\n\n onMount(() => {\n if (local.value === void 0 && local.defaultValue) {\n setColor(local.defaultValue);\n }\n });\n createEffect(() => {\n if (local.value !== void 0 && local.value !== untrack(color)) {\n setColor(local.value);\n }\n });\n const popupCss = createMemo(\n () => `.color-picker {padding: 10px;inline-size: 216px;}${local.popupCss || ''}`,\n );\n const css = createMemo(() => `${style + (local.css || '')}.trigger {--c: ${color()};}`);\n\n return (\n <Popover\n {...others}\n arrow={true}\n trigger=\"click\"\n content={<n-color-palette value={color()} onChange={handleChange} />}\n popupClass={cx('color-picker', local.popupClass)}\n popupCss={popupCss()}\n css={css()}\n >\n <span class={cx('trigger', local.size)} />\n </Popover>\n );\n}\n\ncustomElement<ColorPickerProps>(\n 'n-color-picker',\n {\n ...defaultProps,\n value: void 0,\n defaultValue: void 0,\n onChange: void 0,\n size: void 0,\n },\n (_, opts) => {\n const el = opts.element;\n const props = mergeProps(\n {\n onChange(val?: string) {\n el.dispatchEvent(\n new CustomEvent('change', {\n detail: val,\n }),\n );\n },\n children: el.children,\n },\n _,\n );\n\n createEffect(() => {\n clearAttribute(el, ['popupCss', 'css']);\n });\n return (\n <>\n <style textContent={inline} />\n <ColorPicker {...props} />\n </>\n );\n },\n);\n\nexport default ColorPicker;\n"],"names":["ColorPicker","props","local","others","splitProps","color","setColor","createSignal","defaultValue","handleChange","e","value","detail","onChange","onMount","createEffect","untrack","popupCss","createMemo","css","style","Popover","cx","popupClass","size","customElement","defaultProps","_","opts","el","element","mergeProps","val","dispatchEvent","CustomEvent","children","clearAttribute","inline"],"mappings":"kGAgIA,+CAAA,+CAxHO,sBACY,yBACW,2BAGC,+BACO,yBACf,sBAED,8lBAEf,6HAuBP,SAASA,EAAYC,CAAuB,EAC1C,GAAM,CAACC,EAAOC,EAAO,CAAGC,GAAAA,YAAU,EAACH,EAAO,CACxC,MACA,QACA,eACA,WACA,aACA,WACA,OACD,EACK,CAACI,EAAOC,EAAS,CAAGC,GAAAA,cAAY,EAAqBL,EAAMM,YAAY,EAE7E,SAASC,EAAaC,CAAsB,EACtB,KAAK,IAArBR,EAAMS,KAAK,EACbL,EAASI,EAAEE,MAAM,EAEnBV,EAAMW,QAAQ,GAAGH,EAAEE,MAAM,CAC3B,CAEAE,GAAAA,SAAO,EAAC,KACc,KAAK,IAArBZ,EAAMS,KAAK,EAAeT,EAAMM,YAAY,EAC9CF,EAASJ,EAAMM,YAAY,CAE/B,GACAO,GAAAA,cAAY,EAAC,KACS,KAAK,IAArBb,EAAMS,KAAK,EAAeT,EAAMS,KAAK,GAAKK,GAAAA,SAAO,EAACX,IACpDC,EAASJ,EAAMS,KAAK,CAExB,GACA,IAAMM,EAAWC,GAAAA,YAAU,EACzB,IAAM,CAAC,iDAAiD,EAAEhB,EAAMe,QAAQ,EAAI,GAAG,CAAC,EAE5EE,EAAMD,GAAAA,YAAU,EAAC,IAAM,CAAC,EAAEE,OAAK,CAAIlB,CAAAA,EAAMiB,GAAG,EAAI,EAAC,EAAG,eAAe,EAAEd,IAAQ,EAAE,CAAC,EAEtF,4BACGgB,SAAO,kBACFlB,SACG,CAAA,8FAE6CM,uDAAnBJ,mCACrBiB,GAAAA,IAAE,EAAC,eAAgBpB,EAAMqB,UAAU,yBACrCN,sBACLE,uEAEQG,GAAAA,IAAE,EAAC,UAAWpB,EAAMsB,IAAI,SAG3C,CAEAC,GAAAA,eAAa,EACX,iBACA,CACE,GAAGC,cAAY,CACff,MAAO,KAAK,EACZH,aAAc,KAAK,EACnBK,SAAU,KAAK,EACfW,KAAM,KAAK,CACb,EACA,CAACG,EAAGC,KACF,IAAMC,EAAKD,EAAKE,OAAO,CACjB7B,EAAQ8B,GAAAA,YAAU,EACtB,CACElB,SAASmB,CAAY,EACnBH,EAAGI,aAAa,CACd,IAAIC,YAAY,SAAU,CACxBtB,OAAQoB,CACV,GAEJ,EACAG,SAAUN,EAAGM,QAAQ,AACvB,EACAR,GAMF,MAHAZ,GAAAA,cAAY,EAAC,KACXqB,GAAAA,gBAAc,EAACP,EAAI,CAAC,WAAY,MAAM,CACxC,yCAGwBQ,QAAM,6BACzBrC,EAAgBC,GAGvB,SAGF,EAAeD"}
@@ -37,5 +37,4 @@
37
37
  inline-size: 25px;
38
38
  block-size: 25px;
39
39
  }
40
- `;
41
- //# sourceMappingURL=style.js.map
40
+ `;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../components/color-picker/style.ts"],"sourcesContent":["import { css } from '@moneko/css';\n\nexport const style = css`\n .trigger {\n --alpha-gradient: repeating-conic-gradient(#eee 0 25%, transparent 0 50%) 0 / 10px 10px;\n\n display: inline-block;\n border-radius: var(--border-radius);\n inline-size: 25px;\n block-size: 25px;\n background: var(--alpha-gradient);\n\n &::after {\n display: block;\n border-radius: var(--border-radius);\n inline-size: 100%;\n block-size: 100%;\n background: var(--c, #fff);\n opacity: var(--a, 1);\n box-shadow:\n rgb(0 0 0 / 10%) 0 0 0 1px inset,\n rgb(0 0 0 / 10%) 0 0 4px inset;\n content: '';\n cursor: pointer;\n }\n }\n\n .trigger.large {\n inline-size: 45px;\n block-size: 25px;\n }\n\n .trigger.small {\n inline-size: 15px;\n block-size: 15px;\n }\n\n .trigger.normal {\n inline-size: 25px;\n block-size: 25px;\n }\n`;\n"],"names":["style","css"],"mappings":"kGAEaA,6CAAAA,qBAFO,eAEPA,EAAQC,GAAAA,KAAG,CAAA,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuCzB,CAAC"}
1
+ {"version":3,"sources":["components/color-picker/style.ts"],"sourcesContent":["import { css } from '@moneko/css';\n\nexport const style = css`\n .trigger {\n --alpha-gradient: repeating-conic-gradient(#eee 0 25%, transparent 0 50%) 0 / 10px 10px;\n\n display: inline-block;\n border-radius: var(--border-radius);\n inline-size: 25px;\n block-size: 25px;\n background: var(--alpha-gradient);\n\n &::after {\n display: block;\n border-radius: var(--border-radius);\n inline-size: 100%;\n block-size: 100%;\n background: var(--c, #fff);\n opacity: var(--a, 1);\n box-shadow:\n rgb(0 0 0 / 10%) 0 0 0 1px inset,\n rgb(0 0 0 / 10%) 0 0 4px inset;\n content: '';\n cursor: pointer;\n }\n }\n\n .trigger.large {\n inline-size: 45px;\n block-size: 25px;\n }\n\n .trigger.small {\n inline-size: 15px;\n block-size: 15px;\n }\n\n .trigger.normal {\n inline-size: 25px;\n block-size: 25px;\n }\n`;\n"],"names":["style","css"],"mappings":"kGAEaA,6CAAAA,qBAFO,eAEPA,EAAQC,GAAAA,KAAG,CAAA,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuCzB,CAAC"}
@@ -1,2 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return r}});const e=require("solid-js/web"),t=require("./style"),n=(0,e.template)("<n-select>",!0,!1),r=function(r){function l(e,t){let[n]=t.detail,l=Number(n);r.validate(e,l)&&r.onChange(e,l)}return[(0,e.memo)(()=>r.label[0]),(()=>{let s=n();return(0,e.addEventListener)(s,"change",l.bind(null,"begin")),s.css=t.selectCss,s.popupCss=t.selectPortalCss,s.dropdownMatchSelectWidth=!1,s.arrow=!0,s._$owner=(0,e.getOwner)(),(0,e.effect)(e=>{let t=r.beginOption,n=r.disabled;return t!==e._v$&&(s.options=e._v$=t),n!==e._v$2&&(s.disabled=e._v$2=n),e},{_v$:void 0,_v$2:void 0}),(0,e.effect)(()=>s.value=r.begin),s})(),(0,e.memo)(()=>r.label[1]),(()=>{let s=n();return(0,e.addEventListener)(s,"change",l.bind(null,"beginEvery")),s.css=t.selectCss,s.popupCss=t.selectPortalCss,s.dropdownMatchSelectWidth=!1,s.arrow=!0,s._$owner=(0,e.getOwner)(),(0,e.effect)(e=>{let t=r.beginEveryOption,n=r.disabled;return t!==e._v$3&&(s.options=e._v$3=t),n!==e._v$4&&(s.disabled=e._v$4=n),e},{_v$3:void 0,_v$4:void 0}),(0,e.effect)(()=>s.value=r.beginEvery),s})(),(0,e.memo)(()=>r.label[2])]};
2
- //# sourceMappingURL=begin-interval.js.map
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return l}});const e=require("solid-js/web"),t=require("./style"),n=(0,e.template)("<n-select>",!0,!1);function r(r){function l(e,t){let[n]=t.detail,l=Number(n);r.validate(e,l)&&r.onChange(e,l)}return[(0,e.memo)(()=>r.label[0]),(()=>{let s=n();return(0,e.addEventListener)(s,"change",l.bind(null,"begin")),s.css=t.selectCss,s.popupCss=t.selectPortalCss,s.dropdownMatchSelectWidth=!1,s.arrow=!0,s._$owner=(0,e.getOwner)(),(0,e.effect)(e=>{let t=r.beginOption,n=r.disabled;return t!==e._v$&&(s.options=e._v$=t),n!==e._v$2&&(s.disabled=e._v$2=n),e},{_v$:void 0,_v$2:void 0}),(0,e.effect)(()=>s.value=r.begin),s})(),(0,e.memo)(()=>r.label[1]),(()=>{let s=n();return(0,e.addEventListener)(s,"change",l.bind(null,"beginEvery")),s.css=t.selectCss,s.popupCss=t.selectPortalCss,s.dropdownMatchSelectWidth=!1,s.arrow=!0,s._$owner=(0,e.getOwner)(),(0,e.effect)(e=>{let t=r.beginEveryOption,n=r.disabled;return t!==e._v$3&&(s.options=e._v$3=t),n!==e._v$4&&(s.disabled=e._v$4=n),e},{_v$3:void 0,_v$4:void 0}),(0,e.effect)(()=>s.value=r.beginEvery),s})(),(0,e.memo)(()=>r.label[2])]}const l=r;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../components/cron/begin-interval.tsx"],"sourcesContent":["import type { BaseOption } from 'neko-ui';\n\nimport type { CronData } from '.';\nimport { selectCss, selectPortalCss } from './style';\n\ninterface BeginIntervalProps {\n begin: CronData['begin'];\n beginEvery: CronData['beginEvery'];\n label: [JSX.Element, JSX.Element, JSX.Element];\n beginOption: (string | number | BaseOption)[];\n beginEveryOption: (string | number | BaseOption)[];\n onChange(type: 'begin' | 'beginEvery', value: number): void;\n validate(type: 'begin' | 'beginEvery', value: number): boolean;\n disabled: boolean;\n}\n\nfunction BeginInterval(props: BeginIntervalProps) {\n function onChange(\n type: 'begin' | 'beginEvery',\n e: CustomEvent<[val: number | string, item: BaseOption]>,\n ) {\n const [value] = e.detail;\n const v = Number(value);\n\n if (props.validate(type, v)) {\n props.onChange(type, v);\n }\n }\n return (\n <>\n {props.label[0]}\n <n-select\n value={props.begin}\n onChange={onChange.bind(null, 'begin')}\n options={props.beginOption}\n disabled={props.disabled}\n css={selectCss}\n popup-css={selectPortalCss}\n dropdown-match-select-width={false}\n arrow={true}\n />\n {props.label[1]}\n <n-select\n value={props.beginEvery}\n onChange={onChange.bind(null, 'beginEvery')}\n options={props.beginEveryOption}\n disabled={props.disabled}\n css={selectCss}\n popup-css={selectPortalCss}\n dropdown-match-select-width={false}\n arrow={true}\n />\n {props.label[2]}\n </>\n );\n}\n\nexport default BeginInterval;\n"],"names":["props","onChange","type","e","value","detail","v","Number","validate","label","bind","selectCss","selectPortalCss","beginOption","disabled","begin","beginEveryOption","beginEvery"],"mappings":"kGAyDA,+CAAA,+CAtD2C,gDAsD3C,EAzCA,SAAuBA,CAAyB,EAC9C,SAASC,EACPC,CAA4B,CAC5BC,CAAwD,EAExD,GAAM,CAACC,EAAM,CAAGD,EAAEE,MAAM,CAClBC,EAAIC,OAAOH,GAEbJ,EAAMQ,QAAQ,CAACN,EAAMI,IACvBN,EAAMC,QAAQ,CAACC,EAAMI,EAEzB,CACA,sBAEKN,EAAMS,KAAK,CAAC,EAAE,0DAGHR,EAASS,IAAI,CAAC,KAAM,gBAGzBC,WAAS,YACHC,iBAAe,4BACG,CAAA,UACtB,CAAA,oDALEZ,EAAMa,WAAW,GAChBb,EAAMc,QAAQ,+HAHjBd,EAAMe,KAAK,uBASnBf,EAAMS,KAAK,CAAC,EAAE,0DAGHR,EAASS,IAAI,CAAC,KAAM,qBAGzBC,WAAS,YACHC,iBAAe,4BACG,CAAA,UACtB,CAAA,oDALEZ,EAAMgB,gBAAgB,GACrBhB,EAAMc,QAAQ,kIAHjBd,EAAMiB,UAAU,uBASxBjB,EAAMS,KAAK,CAAC,EAAE,EAGrB"}
1
+ {"version":3,"sources":["components/cron/begin-interval.tsx"],"sourcesContent":["import type { BaseOption } from 'neko-ui';\n\nimport type { CronData } from '.';\nimport { selectCss, selectPortalCss } from './style';\n\ninterface BeginIntervalProps {\n begin: CronData['begin'];\n beginEvery: CronData['beginEvery'];\n label: [JSX.Element, JSX.Element, JSX.Element];\n beginOption: (string | number | BaseOption)[];\n beginEveryOption: (string | number | BaseOption)[];\n onChange(type: 'begin' | 'beginEvery', value: number): void;\n validate(type: 'begin' | 'beginEvery', value: number): boolean;\n disabled: boolean;\n}\n\nfunction BeginInterval(props: BeginIntervalProps) {\n function onChange(\n type: 'begin' | 'beginEvery',\n e: CustomEvent<[val: number | string, item: BaseOption]>,\n ) {\n const [value] = e.detail;\n const v = Number(value);\n\n if (props.validate(type, v)) {\n props.onChange(type, v);\n }\n }\n return (\n <>\n {props.label[0]}\n <n-select\n value={props.begin}\n onChange={onChange.bind(null, 'begin')}\n options={props.beginOption}\n disabled={props.disabled}\n css={selectCss}\n popup-css={selectPortalCss}\n dropdown-match-select-width={false}\n arrow={true}\n />\n {props.label[1]}\n <n-select\n value={props.beginEvery}\n onChange={onChange.bind(null, 'beginEvery')}\n options={props.beginEveryOption}\n disabled={props.disabled}\n css={selectCss}\n popup-css={selectPortalCss}\n dropdown-match-select-width={false}\n arrow={true}\n />\n {props.label[2]}\n </>\n );\n}\n\nexport default BeginInterval;\n"],"names":["BeginInterval","props","onChange","type","e","value","detail","v","Number","validate","label","bind","selectCss","selectPortalCss","beginOption","disabled","begin","beginEveryOption","beginEvery"],"mappings":"kGAyDA,+CAAA,+CAtD2C,gDAa3C,SAASA,EAAcC,CAAyB,EAC9C,SAASC,EACPC,CAA4B,CAC5BC,CAAwD,EAExD,GAAM,CAACC,EAAM,CAAGD,EAAEE,MAAM,CAClBC,EAAIC,OAAOH,GAEbJ,EAAMQ,QAAQ,CAACN,EAAMI,IACvBN,EAAMC,QAAQ,CAACC,EAAMI,EAEzB,CACA,sBAEKN,EAAMS,KAAK,CAAC,EAAE,0DAGHR,EAASS,IAAI,CAAC,KAAM,gBAGzBC,WAAS,YACHC,iBAAe,4BACG,CAAA,UACtB,CAAA,oDALEZ,EAAMa,WAAW,GAChBb,EAAMc,QAAQ,+HAHjBd,EAAMe,KAAK,uBASnBf,EAAMS,KAAK,CAAC,EAAE,0DAGHR,EAASS,IAAI,CAAC,KAAM,qBAGzBC,WAAS,YACHC,iBAAe,4BACG,CAAA,UACtB,CAAA,oDALEZ,EAAMgB,gBAAgB,GACrBhB,EAAMc,QAAQ,kIAHjBd,EAAMiB,UAAU,uBASxBjB,EAAMS,KAAK,CAAC,EAAE,EAGrB,OAEA,EAAeV"}
package/lib/cron/day.js CHANGED
@@ -1,2 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return u}});const e=require("solid-js/web"),t=o(require("./begin-interval")),r=o(require("./item")),n=o(require("./period")),a=o(require("./some")),l=require("./style");function o(e){return e&&e.__esModule?e:{default:e}}const s=(0,e.template)("<n-select>",!0,!1),u=function(o){let u=[],i=[];for(let e=1;e<32;e++)u.push({label:e<10?`0${e}`:`${e}`,value:e}),i.push(e);let g=[{value:"*",label:"每日"},{value:"?",label:"不指定"},{value:"period",label:(0,e.createComponent)(n.default,{get start(){return o.state.start},get end(){return o.state.end},options:u,get disabled(){return"period"!==o.state.type},get onChange(){return o.onChange},validate:(e,t)=>t>=1&&t<31,label:["周期从","到","日"]})},{value:"beginInterval",label:(0,e.createComponent)(t.default,{get begin(){return o.state.begin},get beginEvery(){return o.state.beginEvery},get onChange(){return o.onChange},beginOption:u,beginEveryOption:i,get disabled(){return"beginInterval"!==o.state.type},validate:(e,t)=>t>=1&&t<=31,label:["从","日开始, 每","天执行一次"]})},{value:"closeWorkDay",label:["每月离",(()=>{let t=s();return t.addEventListener("change",e=>{let[t]=e.detail,r=Number(t);r>=1&&r<=31&&o.onChange("closeWorkDay",r)}),t.options=u,t.css=l.selectCss,t.popupCss=l.selectPortalCss,t.dropdownMatchSelectWidth=!1,t.arrow=!0,t._$owner=(0,e.getOwner)(),(0,e.effect)(()=>t.disabled="closeWorkDay"!==o.state.type),(0,e.effect)(()=>t.value=o.state.closeWorkDay),t})(),"日最近的那个工作日"]},{value:"last",label:"本月最后1天"},{value:"some",label:(0,e.createComponent)(a.default,{label:"具体天数(至少选择一项)",get value(){return o.state.some},options:u,get type(){return o.state.type},get onChange(){return o.onChange}})}];return(0,e.createComponent)(r.default,{get state(){return o.state},options:g,get onChange(){return o.onChange}})};
2
- //# sourceMappingURL=day.js.map
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return i}});const e=require("solid-js/web"),t=o(require("./begin-interval")),n=o(require("./item")),r=o(require("./period")),a=o(require("./some")),l=require("./style");function o(e){return e&&e.__esModule?e:{default:e}}const s=(0,e.template)("<n-select>",!0,!1);function u(o){let u=[],i=[];for(let e=1;e<32;e++)u.push({label:e<10?`0${e}`:`${e}`,value:e}),i.push(e);let g=[{value:"*",label:"每日"},{value:"?",label:"不指定"},{value:"period",label:(0,e.createComponent)(r.default,{get start(){return o.state.start},get end(){return o.state.end},options:u,get disabled(){return"period"!==o.state.type},get onChange(){return o.onChange},validate:(e,t)=>t>=1&&t<31,label:["周期从","到","日"]})},{value:"beginInterval",label:(0,e.createComponent)(t.default,{get begin(){return o.state.begin},get beginEvery(){return o.state.beginEvery},get onChange(){return o.onChange},beginOption:u,beginEveryOption:i,get disabled(){return"beginInterval"!==o.state.type},validate:(e,t)=>t>=1&&t<=31,label:["从","日开始, 每","天执行一次"]})},{value:"closeWorkDay",label:["每月离",(()=>{let t=s();return t.addEventListener("change",e=>{let[t]=e.detail,n=Number(t);n>=1&&n<=31&&o.onChange("closeWorkDay",n)}),t.options=u,t.css=l.selectCss,t.popupCss=l.selectPortalCss,t.dropdownMatchSelectWidth=!1,t.arrow=!0,t._$owner=(0,e.getOwner)(),(0,e.effect)(()=>t.disabled="closeWorkDay"!==o.state.type),(0,e.effect)(()=>t.value=o.state.closeWorkDay),t})(),"日最近的那个工作日"]},{value:"last",label:"本月最后1天"},{value:"some",label:(0,e.createComponent)(a.default,{label:"具体天数(至少选择一项)",get value(){return o.state.some},options:u,get type(){return o.state.type},get onChange(){return o.onChange}})}];return(0,e.createComponent)(n.default,{get state(){return o.state},options:g,get onChange(){return o.onChange}})}const i=u;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../components/cron/day.tsx"],"sourcesContent":["import type { BaseOption } from 'neko-ui';\n\nimport BeginInterval from './begin-interval';\nimport Item, { type CronItemProps } from './item';\nimport Period from './period';\nimport Some from './some';\nimport { selectCss, selectPortalCss } from './style';\n\nfunction Day(props: Required<Omit<CronItemProps<'day'>, 'options'>>) {\n const days: BaseOption[] = [];\n const daysBeginEvery: number[] = [];\n\n for (let x = 1; x < 32; x++) {\n days.push({\n label: x < 10 ? `0${x}` : `${x}`,\n value: x,\n });\n daysBeginEvery.push(x);\n }\n\n const options = [\n { value: '*', label: '每日' },\n { value: '?', label: '不指定' },\n {\n value: 'period',\n label: (\n <Period\n start={props.state.start}\n end={props.state.end}\n options={days}\n disabled={props.state.type !== 'period'}\n onChange={props.onChange}\n validate={(_, v) => v >= 1 && v < 31}\n label={['周期从', '到', '日']}\n />\n ),\n },\n {\n value: 'beginInterval',\n label: (\n <BeginInterval\n begin={props.state.begin}\n beginEvery={props.state.beginEvery}\n onChange={props.onChange}\n beginOption={days}\n beginEveryOption={daysBeginEvery}\n disabled={props.state.type !== 'beginInterval'}\n validate={(_, v) => v >= 1 && v <= 31}\n label={['从', '日开始, 每', '天执行一次']}\n />\n ),\n },\n {\n value: 'closeWorkDay',\n label: (\n <>\n 每月离\n <n-select\n value={props.state.closeWorkDay}\n onChange={(e) => {\n const [value] = e.detail;\n const v = Number(value);\n\n if (v >= 1 && v <= 31) {\n props.onChange('closeWorkDay', v);\n }\n }}\n options={days}\n disabled={props.state.type !== 'closeWorkDay'}\n css={selectCss}\n popup-css={selectPortalCss}\n dropdown-match-select-width={false}\n arrow={true}\n />\n 日最近的那个工作日\n </>\n ),\n },\n { value: 'last', label: '本月最后1天' },\n {\n value: 'some',\n label: (\n <Some\n label=\"具体天数(至少选择一项)\"\n value={props.state.some}\n options={days}\n type={props.state.type}\n onChange={props.onChange}\n />\n ),\n },\n ];\n\n return <Item state={props.state} options={options} onChange={props.onChange} />;\n}\n\nexport default Day;\n"],"names":["props","days","daysBeginEvery","x","push","label","value","options","Period","state","start","end","type","onChange","_","v","BeginInterval","begin","beginEvery","e","detail","Number","selectCss","selectPortalCss","closeWorkDay","Some","some","Item"],"mappings":"kGAgGA,+CAAA,iDA9F0B,iCACe,uBACtB,yBACF,qBAC0B,yGA0F3C,EAxFA,SAAaA,CAAsD,EACjE,IAAMC,EAAqB,EAAE,CACvBC,EAA2B,EAAE,CAEnC,IAAK,IAAIC,EAAI,EAAGA,EAAI,GAAIA,IACtBF,EAAKG,IAAI,CAAC,CACRC,MAAOF,EAAI,GAAK,CAAC,CAAC,EAAEA,EAAE,CAAC,CAAG,CAAC,EAAEA,EAAE,CAAC,CAChCG,MAAOH,CACT,GACAD,EAAeE,IAAI,CAACD,GAGtB,IAAMI,EAAU,CACd,CAAED,MAAO,IAAKD,MAAO,IAAK,EAC1B,CAAEC,MAAO,IAAKD,MAAO,KAAM,EAC3B,CACEC,MAAO,SACPD,KAAK,uBACFG,SAAM,qBACER,EAAMS,KAAK,CAACC,KAAK,mBACnBV,EAAMS,KAAK,CAACE,GAAG,UACXV,uBACCD,AAAqB,WAArBA,EAAMS,KAAK,CAACG,IAAI,wBAChBZ,EAAMa,QAAQ,WACd,CAACC,EAAGC,IAAMA,GAAK,GAAKA,EAAI,SAC3B,CAAC,MAAO,IAAK,IAAI,EAG9B,EACA,CACET,MAAO,gBACPD,KAAK,uBACFW,SAAa,qBACLhB,EAAMS,KAAK,CAACQ,KAAK,0BACZjB,EAAMS,KAAK,CAACS,UAAU,wBACxBlB,EAAMa,QAAQ,cACXZ,mBACKC,uBACRF,AAAqB,kBAArBA,EAAMS,KAAK,CAACG,IAAI,WAChB,CAACE,EAAGC,IAAMA,GAAK,GAAKA,GAAK,SAC5B,CAAC,IAAK,SAAU,QAAQ,EAGrC,EACA,CACET,MAAO,eACPD,KAAK,2DAKW,AAACc,IACT,GAAM,CAACb,EAAM,CAAGa,EAAEC,MAAM,CAClBL,EAAIM,OAAOf,GAEbS,GAAK,GAAKA,GAAK,IACjBf,EAAMa,QAAQ,CAAC,eAAgBE,EAEnC,aACSd,QAEJqB,WAAS,YACHC,iBAAe,4BACG,CAAA,UACtB,CAAA,yDAJGvB,AAAqB,iBAArBA,EAAMS,KAAK,CAACG,IAAI,2BAVnBZ,EAAMS,KAAK,CAACe,YAAY,oBAmBvC,EACA,CAAElB,MAAO,OAAQD,MAAO,QAAS,EACjC,CACEC,MAAO,OACPD,KAAK,uBACFoB,SAAI,0CAEIzB,EAAMS,KAAK,CAACiB,IAAI,UACdzB,oBACHD,EAAMS,KAAK,CAACG,IAAI,wBACZZ,EAAMa,QAAQ,GAG9B,EACD,CAED,4BAAQc,SAAI,qBAAQ3B,EAAMS,KAAK,UAAWF,wBAAmBP,EAAMa,QAAQ,GAC7E"}
1
+ {"version":3,"sources":["components/cron/day.tsx"],"sourcesContent":["import type { BaseOption } from 'neko-ui';\n\nimport BeginInterval from './begin-interval';\nimport Item, { type CronItemProps } from './item';\nimport Period from './period';\nimport Some from './some';\nimport { selectCss, selectPortalCss } from './style';\n\nfunction Day(props: Required<Omit<CronItemProps<'day'>, 'options'>>) {\n const days: BaseOption[] = [];\n const daysBeginEvery: number[] = [];\n\n for (let x = 1; x < 32; x++) {\n days.push({\n label: x < 10 ? `0${x}` : `${x}`,\n value: x,\n });\n daysBeginEvery.push(x);\n }\n\n const options = [\n { value: '*', label: '每日' },\n { value: '?', label: '不指定' },\n {\n value: 'period',\n label: (\n <Period\n start={props.state.start}\n end={props.state.end}\n options={days}\n disabled={props.state.type !== 'period'}\n onChange={props.onChange}\n validate={(_, v) => v >= 1 && v < 31}\n label={['周期从', '到', '日']}\n />\n ),\n },\n {\n value: 'beginInterval',\n label: (\n <BeginInterval\n begin={props.state.begin}\n beginEvery={props.state.beginEvery}\n onChange={props.onChange}\n beginOption={days}\n beginEveryOption={daysBeginEvery}\n disabled={props.state.type !== 'beginInterval'}\n validate={(_, v) => v >= 1 && v <= 31}\n label={['从', '日开始, 每', '天执行一次']}\n />\n ),\n },\n {\n value: 'closeWorkDay',\n label: (\n <>\n 每月离\n <n-select\n value={props.state.closeWorkDay}\n onChange={(e) => {\n const [value] = e.detail;\n const v = Number(value);\n\n if (v >= 1 && v <= 31) {\n props.onChange('closeWorkDay', v);\n }\n }}\n options={days}\n disabled={props.state.type !== 'closeWorkDay'}\n css={selectCss}\n popup-css={selectPortalCss}\n dropdown-match-select-width={false}\n arrow={true}\n />\n 日最近的那个工作日\n </>\n ),\n },\n { value: 'last', label: '本月最后1天' },\n {\n value: 'some',\n label: (\n <Some\n label=\"具体天数(至少选择一项)\"\n value={props.state.some}\n options={days}\n type={props.state.type}\n onChange={props.onChange}\n />\n ),\n },\n ];\n\n return <Item state={props.state} options={options} onChange={props.onChange} />;\n}\n\nexport default Day;\n"],"names":["Day","props","days","daysBeginEvery","x","push","label","value","options","Period","state","start","end","type","onChange","_","v","BeginInterval","begin","beginEvery","e","detail","Number","selectCss","selectPortalCss","closeWorkDay","Some","some","Item"],"mappings":"kGAgGA,+CAAA,iDA9F0B,iCACe,uBACtB,yBACF,qBAC0B,yGAE3C,SAASA,EAAIC,CAAsD,EACjE,IAAMC,EAAqB,EAAE,CACvBC,EAA2B,EAAE,CAEnC,IAAK,IAAIC,EAAI,EAAGA,EAAI,GAAIA,IACtBF,EAAKG,IAAI,CAAC,CACRC,MAAOF,EAAI,GAAK,CAAC,CAAC,EAAEA,EAAE,CAAC,CAAG,CAAC,EAAEA,EAAE,CAAC,CAChCG,MAAOH,CACT,GACAD,EAAeE,IAAI,CAACD,GAGtB,IAAMI,EAAU,CACd,CAAED,MAAO,IAAKD,MAAO,IAAK,EAC1B,CAAEC,MAAO,IAAKD,MAAO,KAAM,EAC3B,CACEC,MAAO,SACPD,KAAK,uBACFG,SAAM,qBACER,EAAMS,KAAK,CAACC,KAAK,mBACnBV,EAAMS,KAAK,CAACE,GAAG,UACXV,uBACCD,AAAqB,WAArBA,EAAMS,KAAK,CAACG,IAAI,wBAChBZ,EAAMa,QAAQ,WACd,CAACC,EAAGC,IAAMA,GAAK,GAAKA,EAAI,SAC3B,CAAC,MAAO,IAAK,IAAI,EAG9B,EACA,CACET,MAAO,gBACPD,KAAK,uBACFW,SAAa,qBACLhB,EAAMS,KAAK,CAACQ,KAAK,0BACZjB,EAAMS,KAAK,CAACS,UAAU,wBACxBlB,EAAMa,QAAQ,cACXZ,mBACKC,uBACRF,AAAqB,kBAArBA,EAAMS,KAAK,CAACG,IAAI,WAChB,CAACE,EAAGC,IAAMA,GAAK,GAAKA,GAAK,SAC5B,CAAC,IAAK,SAAU,QAAQ,EAGrC,EACA,CACET,MAAO,eACPD,KAAK,2DAKW,AAACc,IACT,GAAM,CAACb,EAAM,CAAGa,EAAEC,MAAM,CAClBL,EAAIM,OAAOf,GAEbS,GAAK,GAAKA,GAAK,IACjBf,EAAMa,QAAQ,CAAC,eAAgBE,EAEnC,aACSd,QAEJqB,WAAS,YACHC,iBAAe,4BACG,CAAA,UACtB,CAAA,yDAJGvB,AAAqB,iBAArBA,EAAMS,KAAK,CAACG,IAAI,2BAVnBZ,EAAMS,KAAK,CAACe,YAAY,oBAmBvC,EACA,CAAElB,MAAO,OAAQD,MAAO,QAAS,EACjC,CACEC,MAAO,OACPD,KAAK,uBACFoB,SAAI,0CAEIzB,EAAMS,KAAK,CAACiB,IAAI,UACdzB,oBACHD,EAAMS,KAAK,CAACG,IAAI,wBACZZ,EAAMa,QAAQ,GAG9B,EACD,CAED,4BAAQc,SAAI,qBAAQ3B,EAAMS,KAAK,UAAWF,wBAAmBP,EAAMa,QAAQ,GAC7E,OAEA,EAAed"}
package/lib/cron/hour.js CHANGED
@@ -1,2 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return l}});const e=require("solid-js/web"),t=require("../date-picker/time"),r=u(require("./begin-interval")),n=u(require("./item")),a=u(require("./period")),o=u(require("./some"));function u(e){return e&&e.__esModule?e:{default:e}}const l=function(u){let l=[];for(let e=0;e<24;e++)l.push(`${e+1}`);let i=[{value:"*",label:"每小时"},{value:"period",label:(0,e.createComponent)(a.default,{get start(){return u.state.start},get end(){return u.state.end},options:t.hours,get disabled(){return"period"!==u.state.type},get onChange(){return u.onChange},validate:(e,t)=>"start"===e?t>=0&&t<23:t>0&&t<=23,label:["周期从","到","时"]})},{value:"beginInterval",label:(0,e.createComponent)(r.default,{get begin(){return u.state.begin},get beginEvery(){return u.state.beginEvery},get onChange(){return u.onChange},beginOption:t.hours,beginEveryOption:l,get disabled(){return"beginInterval"!==u.state.type},validate:(e,t)=>"begin"===e?t>=0&&t<=23:t>=1&&t<=24,label:["从","时开始, 每","小时执行一次"]})},{value:"some",label:(0,e.createComponent)(o.default,{label:"具体小时数(至少选择一项)",get value(){return u.state.some},options:t.hours,get type(){return u.state.type},get onChange(){return u.onChange}})}];return(0,e.createComponent)(n.default,{options:i,get onChange(){return u.onChange},get state(){return u.state}})};
2
- //# sourceMappingURL=hour.js.map
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return i}});const e=require("solid-js/web"),t=require("../date-picker/time"),r=u(require("./begin-interval")),n=u(require("./item")),a=u(require("./period")),o=u(require("./some"));function u(e){return e&&e.__esModule?e:{default:e}}function l(u){let l=[];for(let e=0;e<24;e++)l.push(`${e+1}`);let i=[{value:"*",label:"每小时"},{value:"period",label:(0,e.createComponent)(a.default,{get start(){return u.state.start},get end(){return u.state.end},options:t.hours,get disabled(){return"period"!==u.state.type},get onChange(){return u.onChange},validate:(e,t)=>"start"===e?t>=0&&t<23:t>0&&t<=23,label:["周期从","到","时"]})},{value:"beginInterval",label:(0,e.createComponent)(r.default,{get begin(){return u.state.begin},get beginEvery(){return u.state.beginEvery},get onChange(){return u.onChange},beginOption:t.hours,beginEveryOption:l,get disabled(){return"beginInterval"!==u.state.type},validate:(e,t)=>"begin"===e?t>=0&&t<=23:t>=1&&t<=24,label:["从","时开始, 每","小时执行一次"]})},{value:"some",label:(0,e.createComponent)(o.default,{label:"具体小时数(至少选择一项)",get value(){return u.state.some},options:t.hours,get type(){return u.state.type},get onChange(){return u.onChange}})}];return(0,e.createComponent)(n.default,{options:i,get onChange(){return u.onChange},get state(){return u.state}})}const i=l;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../components/cron/hour.tsx"],"sourcesContent":["import { hours } from '../date-picker/time';\n\nimport BeginInterval from './begin-interval';\nimport Item, { type CronItemProps } from './item';\nimport Period from './period';\nimport Some from './some';\n\nfunction Hour(props: Required<Omit<CronItemProps<'hour'>, 'options'>>) {\n const beginEvery: string[] = [];\n\n for (let x = 0; x < 24; x++) {\n beginEvery.push(`${x + 1}`);\n }\n\n const options = [\n { value: '*', label: '每小时' },\n {\n value: 'period',\n label: (\n <Period\n start={props.state.start}\n end={props.state.end}\n options={hours}\n disabled={props.state.type !== 'period'}\n onChange={props.onChange}\n validate={(_, v) => (_ === 'start' ? v >= 0 && v < 23 : v > 0 && v <= 23)}\n label={['周期从', '到', '时']}\n />\n ),\n },\n {\n value: 'beginInterval',\n label: (\n <BeginInterval\n begin={props.state.begin}\n beginEvery={props.state.beginEvery}\n onChange={props.onChange}\n beginOption={hours}\n beginEveryOption={beginEvery}\n disabled={props.state.type !== 'beginInterval'}\n validate={(_, v) => (_ === 'begin' ? v >= 0 && v <= 23 : v >= 1 && v <= 24)}\n label={['从', '时开始, 每', '小时执行一次']}\n />\n ),\n },\n {\n value: 'some',\n label: (\n <Some\n label=\"具体小时数(至少选择一项)\"\n value={props.state.some}\n options={hours}\n type={props.state.type}\n onChange={props.onChange}\n />\n ),\n },\n ];\n\n return <Item options={options} onChange={props.onChange} state={props.state} />;\n}\n\nexport default Hour;\n"],"names":["props","beginEvery","x","push","options","value","label","Period","state","start","end","hours","type","onChange","_","v","BeginInterval","begin","Some","some","Item"],"mappings":"kGA8DA,+CAAA,+CA9DsB,mCAEI,iCACe,uBACtB,yBACF,oEAyDjB,EAvDA,SAAcA,CAAuD,EACnE,IAAMC,EAAuB,EAAE,CAE/B,IAAK,IAAIC,EAAI,EAAGA,EAAI,GAAIA,IACtBD,EAAWE,IAAI,CAAC,CAAC,EAAED,EAAI,EAAE,CAAC,EAG5B,IAAME,EAAU,CACd,CAAEC,MAAO,IAAKC,MAAO,KAAM,EAC3B,CACED,MAAO,SACPC,KAAK,uBACFC,SAAM,qBACEP,EAAMQ,KAAK,CAACC,KAAK,mBACnBT,EAAMQ,KAAK,CAACE,GAAG,UACXC,OAAK,sBACJX,AAAqB,WAArBA,EAAMQ,KAAK,CAACI,IAAI,wBAChBZ,EAAMa,QAAQ,WACd,CAACC,EAAGC,IAAOD,AAAM,UAANA,EAAgBC,GAAK,GAAKA,EAAI,GAAKA,EAAI,GAAKA,GAAK,SAC/D,CAAC,MAAO,IAAK,IAAI,EAG9B,EACA,CACEV,MAAO,gBACPC,KAAK,uBACFU,SAAa,qBACLhB,EAAMQ,KAAK,CAACS,KAAK,0BACZjB,EAAMQ,KAAK,CAACP,UAAU,wBACxBD,EAAMa,QAAQ,cACXF,OAAK,kBACAV,uBACRD,AAAqB,kBAArBA,EAAMQ,KAAK,CAACI,IAAI,WAChB,CAACE,EAAGC,IAAOD,AAAM,UAANA,EAAgBC,GAAK,GAAKA,GAAK,GAAKA,GAAK,GAAKA,GAAK,SACjE,CAAC,IAAK,SAAU,SAAS,EAGtC,EACA,CACEV,MAAO,OACPC,KAAK,uBACFY,SAAI,2CAEIlB,EAAMQ,KAAK,CAACW,IAAI,UACdR,OAAK,mBACRX,EAAMQ,KAAK,CAACI,IAAI,wBACZZ,EAAMa,QAAQ,GAG9B,EACD,CAED,4BAAQO,SAAI,UAAUhB,wBAAmBJ,EAAMa,QAAQ,qBAASb,EAAMQ,KAAK,GAC7E"}
1
+ {"version":3,"sources":["components/cron/hour.tsx"],"sourcesContent":["import { hours } from '../date-picker/time';\n\nimport BeginInterval from './begin-interval';\nimport Item, { type CronItemProps } from './item';\nimport Period from './period';\nimport Some from './some';\n\nfunction Hour(props: Required<Omit<CronItemProps<'hour'>, 'options'>>) {\n const beginEvery: string[] = [];\n\n for (let x = 0; x < 24; x++) {\n beginEvery.push(`${x + 1}`);\n }\n\n const options = [\n { value: '*', label: '每小时' },\n {\n value: 'period',\n label: (\n <Period\n start={props.state.start}\n end={props.state.end}\n options={hours}\n disabled={props.state.type !== 'period'}\n onChange={props.onChange}\n validate={(_, v) => (_ === 'start' ? v >= 0 && v < 23 : v > 0 && v <= 23)}\n label={['周期从', '到', '时']}\n />\n ),\n },\n {\n value: 'beginInterval',\n label: (\n <BeginInterval\n begin={props.state.begin}\n beginEvery={props.state.beginEvery}\n onChange={props.onChange}\n beginOption={hours}\n beginEveryOption={beginEvery}\n disabled={props.state.type !== 'beginInterval'}\n validate={(_, v) => (_ === 'begin' ? v >= 0 && v <= 23 : v >= 1 && v <= 24)}\n label={['从', '时开始, 每', '小时执行一次']}\n />\n ),\n },\n {\n value: 'some',\n label: (\n <Some\n label=\"具体小时数(至少选择一项)\"\n value={props.state.some}\n options={hours}\n type={props.state.type}\n onChange={props.onChange}\n />\n ),\n },\n ];\n\n return <Item options={options} onChange={props.onChange} state={props.state} />;\n}\n\nexport default Hour;\n"],"names":["Hour","props","beginEvery","x","push","options","value","label","Period","state","start","end","hours","type","onChange","_","v","BeginInterval","begin","Some","some","Item"],"mappings":"kGA8DA,+CAAA,+CA9DsB,mCAEI,iCACe,uBACtB,yBACF,8DAEjB,SAASA,EAAKC,CAAuD,EACnE,IAAMC,EAAuB,EAAE,CAE/B,IAAK,IAAIC,EAAI,EAAGA,EAAI,GAAIA,IACtBD,EAAWE,IAAI,CAAC,CAAC,EAAED,EAAI,EAAE,CAAC,EAG5B,IAAME,EAAU,CACd,CAAEC,MAAO,IAAKC,MAAO,KAAM,EAC3B,CACED,MAAO,SACPC,KAAK,uBACFC,SAAM,qBACEP,EAAMQ,KAAK,CAACC,KAAK,mBACnBT,EAAMQ,KAAK,CAACE,GAAG,UACXC,OAAK,sBACJX,AAAqB,WAArBA,EAAMQ,KAAK,CAACI,IAAI,wBAChBZ,EAAMa,QAAQ,WACd,CAACC,EAAGC,IAAOD,AAAM,UAANA,EAAgBC,GAAK,GAAKA,EAAI,GAAKA,EAAI,GAAKA,GAAK,SAC/D,CAAC,MAAO,IAAK,IAAI,EAG9B,EACA,CACEV,MAAO,gBACPC,KAAK,uBACFU,SAAa,qBACLhB,EAAMQ,KAAK,CAACS,KAAK,0BACZjB,EAAMQ,KAAK,CAACP,UAAU,wBACxBD,EAAMa,QAAQ,cACXF,OAAK,kBACAV,uBACRD,AAAqB,kBAArBA,EAAMQ,KAAK,CAACI,IAAI,WAChB,CAACE,EAAGC,IAAOD,AAAM,UAANA,EAAgBC,GAAK,GAAKA,GAAK,GAAKA,GAAK,GAAKA,GAAK,SACjE,CAAC,IAAK,SAAU,SAAS,EAGtC,EACA,CACEV,MAAO,OACPC,KAAK,uBACFY,SAAI,2CAEIlB,EAAMQ,KAAK,CAACW,IAAI,UACdR,OAAK,mBACRX,EAAMQ,KAAK,CAACI,IAAI,wBACZZ,EAAMa,QAAQ,GAG9B,EACD,CAED,4BAAQO,SAAI,UAAUhB,wBAAmBJ,EAAMa,QAAQ,qBAASb,EAAMQ,KAAK,GAC7E,OAEA,EAAeT"}
package/lib/cron/index.js CHANGED
@@ -1,2 +1 @@
1
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return h}});const e=require("solid-js/web"),t=require("solid-js"),r=require("@moneko/css"),n=require("solid-element"),a=require("../basic-config"),l=require("../theme"),u=y(require("./day")),o=y(require("./hour")),s=y(require("./minute")),i=y(require("./month")),c=y(require("./second")),d=y(require("./week")),p=y(require("./year"));function y(e){return e&&e.__esModule?e:{default:e}}require("../button"),require("../input-number"),require("../radio"),require("../select"),require("../tabs");const m=(0,e.template)("<style> "),v=(0,e.template)("<n-tabs>",!0,!1),b=(0,e.template)("<code>"),g=(0,e.template)("<style>");function f(n){let[a]=(0,t.splitProps)(n,["value","defaultValue","exclude","onChange","type","showCron","css","class"]),[l,y]=(0,t.createSignal)(a.defaultValue),g=new Date().getFullYear(),f={hms:{start:0,end:1,begin:0,beginEvery:1,some:[0],value:""},mwd:{start:1,end:2,begin:1,beginEvery:1,some:[1],value:""},year:{start:g,end:g+1,begin:g,beginEvery:1,some:[g],value:""}},h=[],C=[];for(let e=1;e<32;e++)h.push({label:e<10?`0${e}`:`${e}`,value:e}),C.push(e);let[w,$]=(0,t.createSignal)("second"),[k,q]=(0,t.createSignal)({second:{type:"*",...f.hms},minute:{type:"*",...f.hms},hour:{type:"*",...f.hms},day:{type:"*",last:1,closeWorkDay:1,...f.mwd},month:{type:"*",...f.mwd},week:{last:1,type:"?",...f.mwd},year:{type:"",...f.year}});function E(e,r){(0,t.batch)(()=>{!function(){let e=(0,t.untrack)(k),r="day"===w();if(r||"week"===w()){let t=r?"week":"day",n="?"===e[t].type&&"?"===e[w()].type?"*":"?";n!==e[t].type&&q(e=>({...e,[t]:{...e[t],type:n}}))}}(),q(t=>{let n={...t[w()],[e]:r};return("start"===e||"end"===e)&&n.end-n.start<=1&&("end"===e?n.start=r-1:n.end=r+1),{...t,[w()]:n}})})}function N(e){$(e.detail[0])}function P(e,t){if(e.value.includes("-")){e.type="period";let t=e.value.split("-");e.start=Number(t[0]),e.end=Number(t[1])}else if(e.value.includes("W"))e.type="closeWorkDay",e.closeWorkDay=Number(e.value.split("W")[0])||1;else if(e.value.includes("L"))e.type="last",e.last=Number(e.value.split("L")[0])||1;else if(e.value.includes(t?"#":"/")){e.type="beginInterval";let r=e.value.split(t?"#":"/");t?(e.begin=Number(r[1]),e.beginEvery=Number(r[0])):(e.begin=Number(r[0]),e.beginEvery=Number(r[1]))}else e.value.includes(",")||/^[0-9]+$/.test(e.value)?(e.type="some",e.some=e.value.split(",").map(Number)):e.type=e.value;return e}function W(e){return"number"!=typeof e||isNaN(e)?e:`${e}`}function x(e,t){switch(e.type){case"period":return`${W(e.start)}-${W(e.end)}`;case"beginInterval":if(t)return`${W(e.beginEvery)}#${W(e.begin)}`;return`${W(e.begin)}/${W(e.beginEvery)}`;case"closeWorkDay":return`${W(e.closeWorkDay||1)}W`;case"last":return t?`${W(e.last)}L`:"L";case"some":return e.some.join(",");default:return e.type}}(0,t.createEffect)(()=>{void 0!==a.value&&(0,t.untrack)(l)!==a.value&&y(a.value)}),(0,t.createEffect)(()=>{let e=l();if(e){let r=e.toUpperCase().split(" ");(0,t.batch)(()=>{q(e=>({second:P({...e.second,value:r[0]||"?"}),minute:P({...e.minute,value:r[1]||"?"}),hour:P({...e.hour,value:r[2]||"?"}),day:P({...e.day,value:r[3]||""}),month:P({...e.month,value:r[4]||""}),week:P({...e.week,value:r[5]||""},!0),year:P({...e.year,value:r[6]||""})}))})}}),(0,t.createEffect)(()=>{let{second:e,minute:t,hour:r,day:a,month:l,week:u,year:o}=k(),s=`${x(e)} ${x(t)} ${x(r)} ${x(a)} ${x(l)} ${x(u,!0)} ${x(o)}`;y(e=>e===s?e:(n.onChange?.(s),s))});let D=[{value:"second",label:"秒",content:(0,e.createComponent)(c.default,{get state(){return k().second},onChange:E})},{value:"minute",label:"分钟",content:(0,e.createComponent)(s.default,{get state(){return k().minute},onChange:E})},{value:"hour",label:"小时",content:(0,e.createComponent)(o.default,{get state(){return k().hour},onChange:E})},{value:"day",label:"日",content:(0,e.createComponent)(u.default,{get state(){return k().day},onChange:E})},{value:"week",label:"周",content:(0,e.createComponent)(d.default,{get state(){return k().week},onChange:E})},{value:"month",label:"月",content:(0,e.createComponent)(i.default,{get state(){return k().month},onChange:E})},{value:"year",label:"年",content:(0,e.createComponent)(p.default,{get state(){return k().year},onChange:E})}];return[(0,e.createComponent)(t.Show,{get when(){return a.css},get children(){let t=m(),n=t.firstChild;return(0,e.effect)(()=>n.data=(0,r.css)(a.css)),t}}),(()=>{let t=v();return(0,e.addEventListener)(t,"change",N),t.items=D,t._$owner=(0,e.getOwner)(),(0,e.effect)(()=>t.type=a.type),(0,e.effect)(()=>t.value=w()),t})(),(0,e.createComponent)(t.Show,{get when(){return a.showCron},get children(){let t=b();return t.style.setProperty("width","100%"),t.style.setProperty("display","block"),t.style.setProperty("background","var(--component-bg)"),t.style.setProperty("border-radius","var(--border-radius)"),t.style.setProperty("text-align","center"),(0,e.insert)(t,l),t}})]}(0,n.customElement)("n-cron",{value:void 0,defaultValue:"0 0 0 * * ? *",onChange:void 0,type:"line",exclude:[],showCron:!0,css:void 0},(r,n)=>{let u=n.element,o=(0,t.mergeProps)({onChange(e){u.dispatchEvent(new CustomEvent("change",{detail:e}))}},r);return(0,t.createEffect)(()=>{(0,a.clearAttribute)(u,["exclude","css"])}),[(()=>{let e=g();return e.textContent=l.block,e})(),(0,e.createComponent)(f,o)]});const h=f;
2
- //# sourceMappingURL=index.js.map
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),Object.defineProperty(exports,"default",{enumerable:!0,get:function(){return h}});const e=require("solid-js/web"),t=require("solid-js"),r=require("@moneko/css"),n=require("solid-element"),a=require("../basic-config"),l=require("../theme"),u=y(require("./day")),o=y(require("./hour")),s=y(require("./minute")),i=y(require("./month")),c=y(require("./second")),d=y(require("./week")),p=y(require("./year"));function y(e){return e&&e.__esModule?e:{default:e}}require("../button"),require("../input-number"),require("../radio"),require("../select"),require("../tabs");const m=(0,e.template)("<style> "),v=(0,e.template)("<n-tabs>",!0,!1),b=(0,e.template)("<code>"),g=(0,e.template)("<style>");function f(n){let[a]=(0,t.splitProps)(n,["value","defaultValue","exclude","onChange","type","showCron","css","class"]),[l,y]=(0,t.createSignal)(a.defaultValue),g=new Date().getFullYear(),f={hms:{start:0,end:1,begin:0,beginEvery:1,some:[0],value:""},mwd:{start:1,end:2,begin:1,beginEvery:1,some:[1],value:""},year:{start:g,end:g+1,begin:g,beginEvery:1,some:[g],value:""}},h=[],C=[];for(let e=1;e<32;e++)h.push({label:e<10?`0${e}`:`${e}`,value:e}),C.push(e);let[w,$]=(0,t.createSignal)("second"),[k,q]=(0,t.createSignal)({second:{type:"*",...f.hms},minute:{type:"*",...f.hms},hour:{type:"*",...f.hms},day:{type:"*",last:1,closeWorkDay:1,...f.mwd},month:{type:"*",...f.mwd},week:{last:1,type:"?",...f.mwd},year:{type:"",...f.year}});function E(e,r){(0,t.batch)(()=>{!function(){let e=(0,t.untrack)(k),r="day"===w();if(r||"week"===w()){let t=r?"week":"day",n="?"===e[t].type&&"?"===e[w()].type?"*":"?";n!==e[t].type&&q(e=>({...e,[t]:{...e[t],type:n}}))}}(),q(t=>{let n={...t[w()],[e]:r};return("start"===e||"end"===e)&&n.end-n.start<=1&&("end"===e?n.start=r-1:n.end=r+1),{...t,[w()]:n}})})}function N(e){$(e.detail[0])}function P(e,t){if(e.value.includes("-")){e.type="period";let t=e.value.split("-");e.start=Number(t[0]),e.end=Number(t[1])}else if(e.value.includes("W"))e.type="closeWorkDay",e.closeWorkDay=Number(e.value.split("W")[0])||1;else if(e.value.includes("L"))e.type="last",e.last=Number(e.value.split("L")[0])||1;else if(e.value.includes(t?"#":"/")){e.type="beginInterval";let r=e.value.split(t?"#":"/");t?(e.begin=Number(r[1]),e.beginEvery=Number(r[0])):(e.begin=Number(r[0]),e.beginEvery=Number(r[1]))}else e.value.includes(",")||/^[0-9]+$/.test(e.value)?(e.type="some",e.some=e.value.split(",").map(Number)):e.type=e.value;return e}function W(e){return"number"!=typeof e||isNaN(e)?e:`${e}`}function x(e,t){switch(e.type){case"period":return`${W(e.start)}-${W(e.end)}`;case"beginInterval":if(t)return`${W(e.beginEvery)}#${W(e.begin)}`;return`${W(e.begin)}/${W(e.beginEvery)}`;case"closeWorkDay":return`${W(e.closeWorkDay||1)}W`;case"last":return t?`${W(e.last)}L`:"L";case"some":return e.some.join(",");default:return e.type}}(0,t.createEffect)(()=>{void 0!==a.value&&(0,t.untrack)(l)!==a.value&&y(a.value)}),(0,t.createEffect)(()=>{let e=l();if(e){let r=e.toUpperCase().split(" ");(0,t.batch)(()=>{q(e=>({second:P({...e.second,value:r[0]||"?"}),minute:P({...e.minute,value:r[1]||"?"}),hour:P({...e.hour,value:r[2]||"?"}),day:P({...e.day,value:r[3]||""}),month:P({...e.month,value:r[4]||""}),week:P({...e.week,value:r[5]||""},!0),year:P({...e.year,value:r[6]||""})}))})}}),(0,t.createEffect)(()=>{let{second:e,minute:t,hour:r,day:a,month:l,week:u,year:o}=k(),s=`${x(e)} ${x(t)} ${x(r)} ${x(a)} ${x(l)} ${x(u,!0)} ${x(o)}`;y(e=>e===s?e:(n.onChange?.(s),s))});let D=[{value:"second",label:"秒",content:(0,e.createComponent)(c.default,{get state(){return k().second},onChange:E})},{value:"minute",label:"分钟",content:(0,e.createComponent)(s.default,{get state(){return k().minute},onChange:E})},{value:"hour",label:"小时",content:(0,e.createComponent)(o.default,{get state(){return k().hour},onChange:E})},{value:"day",label:"日",content:(0,e.createComponent)(u.default,{get state(){return k().day},onChange:E})},{value:"week",label:"周",content:(0,e.createComponent)(d.default,{get state(){return k().week},onChange:E})},{value:"month",label:"月",content:(0,e.createComponent)(i.default,{get state(){return k().month},onChange:E})},{value:"year",label:"年",content:(0,e.createComponent)(p.default,{get state(){return k().year},onChange:E})}];return[(0,e.createComponent)(t.Show,{get when(){return a.css},get children(){let t=m(),n=t.firstChild;return(0,e.effect)(()=>n.data=(0,r.css)(a.css)),t}}),(()=>{let t=v();return(0,e.addEventListener)(t,"change",N),t.items=D,t._$owner=(0,e.getOwner)(),(0,e.effect)(()=>t.type=a.type),(0,e.effect)(()=>t.value=w()),t})(),(0,e.createComponent)(t.Show,{get when(){return a.showCron},get children(){let t=b();return t.style.setProperty("width","100%"),t.style.setProperty("display","block"),t.style.setProperty("background","var(--component-bg)"),t.style.setProperty("border-radius","var(--border-radius)"),t.style.setProperty("text-align","center"),(0,e.insert)(t,l),t}})]}(0,n.customElement)("n-cron",{value:void 0,defaultValue:"0 0 0 * * ? *",onChange:void 0,type:"line",exclude:[],showCron:!0,css:void 0},(r,n)=>{let u=n.element,o=(0,t.mergeProps)({onChange(e){u.dispatchEvent(new CustomEvent("change",{detail:e}))}},r);return(0,t.createEffect)(()=>{(0,a.clearAttribute)(u,["exclude","css"])}),[(()=>{let e=g();return e.textContent=l.block,e})(),(0,e.createComponent)(f,o)]});const h=f;