useEffects.js 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. import useVars from './useVars.js'
  2. import { getClasses } from '../utils/classes.js'
  3. import useColor from './useColor.js'
  4. function useHook() { // useEffects
  5. const { colors, color } = useColor()
  6. const { pxs, percents } = useVars()
  7. const BoxShadow = {
  8. title: 'Box Shadow',
  9. classes: getClasses([
  10. { name: 'shadow-sm', value: '0 1rpx 4rpx 0 rgba(0, 0, 0, 0.05)' },
  11. { name: 'shadow', value: '0 1rpx 6rpx 0 rgba(0, 0, 0, 0.1), 0 1rpx 4rpx -1rpx rgba(0, 0, 0, 0.1)' },
  12. { name: 'shadow-md', value: '0 8rpx 6px -1rpx rgba(0, 0, 0, 0.1), 0 4rpx 8rpx -4rpx rgba(0, 0, 0, 0.1)' },
  13. { name: 'shadow-lg', value: '0 10px 15px -6rpx rgba(0, 0, 0, 0.1), 0 8rpx 6px -8rpx rgba(0, 0, 0, 0.1)' },
  14. { name: 'shadow-xl', value: '0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1)' },
  15. { name: 'shadow-2xl', value: '0 25px 50px -24rpx rgba(0, 0, 0, 0.25)' },
  16. { name: 'shadow-inner', value: 'inset 0 4rpx 8rpx 0 rgba(0, 0, 0, 0.05)' },
  17. { name: 'shadow-none', value: '0 0 #000' },
  18. ], { name: '', value: 'box-shadow', scss: 0 })
  19. }
  20. const BoxShadowColor = {
  21. title: 'Box Shadow Color',
  22. classes: color.map(c => {
  23. return {
  24. ...c,
  25. name: `shadow-${c.name}`,
  26. value: [`--shadow-color: ${c.value};`],
  27. desc: c.rgb,
  28. }
  29. })
  30. }
  31. const Opacity = {
  32. title: 'Opacity',
  33. classes: getClasses([0,5,10,20,25,30,40,50,60,70,75,80,90,95,100].map(d => {
  34. return {
  35. name: d,
  36. value: d / 100
  37. }
  38. }), { name: 'opacity-', value: 'opacity', scss: 0 })
  39. }
  40. const MixBlendMode = { title: 'Mix Blend Mode', classes: [] }
  41. const BackgroundBlendMode = { title: 'Background Blend Mode', classes: [] }
  42. return {
  43. BoxShadow,
  44. BoxShadowColor,
  45. Opacity,
  46. MixBlendMode,
  47. BackgroundBlendMode
  48. }
  49. }
  50. export default useHook