fr-icon-lemon.vue 2.0 KB

1234567891011121314151617181920212223242526272829303132333435
  1. <template>
  2. <fr-svg @click="onClick" :uuid="`fr-icon-lemon-${size}${strokeWidth}${theme}${fill}${strokeLinecap}${strokeLinejoin}`" :width="size" :height="size" :isCache="true" :src="iconSvg" />
  3. </template>
  4. <script>
  5. // #ifdef UNI-APP-X
  6. import icons from "../../mixins/icons.uts";
  7. // #endif
  8. // #ifndef UNI-APP-X
  9. import icons from "../../mixins/icons.js";
  10. // #endif
  11. /**
  12. * @description 《柠檬》图标
  13. * @tutorial https://www.flowerui.com/documents/flower-icons/icons.html
  14. * @property {Number} size 图标大小
  15. * @property {Number} strokeWidth 线段粗细
  16. * @property {String} theme 图标大小
  17. * @property {Array} fill 图标颜色,["外部描边颜色","外部填充颜色","内部描边颜色","内部填充颜色"]
  18. * @property {String} strokeLinecap 图标大小
  19. * @property {String} strokeLinejoin 图标大小
  20. * @event {Function} click 图标点击事件
  21. */
  22. export default {
  23. mixins: [icons],
  24. computed: {
  25. // #ifdef UNI-APP-X
  26. iconSvg(): string {
  27. // #endif
  28. // #ifndef UNI-APP-X
  29. iconSvg() {
  30. // #endif
  31. return `<?xml version="1.0" encoding="UTF-8"?><svg width="${this.size}" height="${this.size}" viewBox="0 0 48 48" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M36 26C36 19.5917 31.617 13.189 27 11.527L24 8L21 11.527C16.383 13.189 12 19.5917 12 26C12 32.4083 16.383 38.811 21 40.473C21.9537 40.8163 22.96 44 24 44C25.04 44 26.0463 40.8163 27 40.473C31.617 38.811 36 32.4083 36 26Z" fill="${this.colors(1)}" stroke="${this.colors(0)}" stroke-width="${this.strokeWidth}" stroke-linecap="${this.strokeLinecap}" stroke-linejoin="${this.strokeLinejoin}"/><path d="M35.1422 4.23223C36.1534 4.3613 36.7279 5.35639 36.3341 6.29667C35.8 7.57164 34.8288 9.25356 33.1962 10.1962C31.5635 11.1387 29.6213 11.1389 28.2502 10.9639C27.2389 10.8348 26.6644 9.83976 27.0582 8.89948C27.5923 7.62451 28.5635 5.94259 30.1962 5C31.8288 4.05741 33.771 4.05722 35.1422 4.23223Z" stroke="${this.colors(0)}" stroke-width="${this.strokeWidth}"/></svg>`
  32. }
  33. }
  34. }
  35. </script>