@zleap-ai/icons 0.0.69 → 0.0.71

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 (107) hide show
  1. package/README.md +32 -0
  2. package/dist/cjs/icons/IconDuoXuan.js +17 -0
  3. package/dist/cjs/icons/IconDuoXuan.js.map +1 -0
  4. package/dist/cjs/icons/IconSheZhi1.js +17 -0
  5. package/dist/cjs/icons/IconSheZhi1.js.map +1 -0
  6. package/dist/cjs/index.js +9 -9
  7. package/dist/cjs/index.js.map +1 -1
  8. package/dist/cjs/rn-component-generator.js +130 -0
  9. package/dist/cjs/rn-component-generator.js.map +1 -0
  10. package/dist/esm/icons/IconDuoXuan.js +14 -0
  11. package/dist/esm/icons/IconDuoXuan.js.map +1 -0
  12. package/dist/esm/icons/IconSheZhi1.js +14 -0
  13. package/dist/esm/icons/IconSheZhi1.js.map +1 -0
  14. package/dist/esm/index.js +6 -6
  15. package/dist/esm/index.js.map +1 -1
  16. package/dist/esm/rn-component-generator.js +126 -0
  17. package/dist/esm/rn-component-generator.js.map +1 -0
  18. package/dist/types/icons/{IconLianXiRen.d.ts → IconDuoXuan.d.ts} +5 -5
  19. package/dist/types/icons/IconDuoXuan.d.ts.map +1 -0
  20. package/dist/types/icons/IconSheZhi1.d.ts +17 -0
  21. package/dist/types/icons/IconSheZhi1.d.ts.map +1 -0
  22. package/dist/types/index.d.ts +4 -4
  23. package/dist/types/index.d.ts.map +1 -1
  24. package/dist/types/rn-component-generator.d.ts +4 -0
  25. package/dist/types/rn-component-generator.d.ts.map +1 -0
  26. package/icons.json +19 -19
  27. package/package.json +12 -2
  28. package/react-native/icons/IconAi.tsx +36 -0
  29. package/react-native/icons/IconAi1.tsx +36 -0
  30. package/react-native/icons/IconBack.tsx +53 -0
  31. package/react-native/icons/IconBianJi.tsx +53 -0
  32. package/react-native/icons/IconCaiJing.tsx +36 -0
  33. package/react-native/icons/IconCaiJing1.tsx +36 -0
  34. package/react-native/icons/IconCheck.tsx +53 -0
  35. package/react-native/icons/IconDuoXuan.tsx +53 -0
  36. package/react-native/icons/IconFenXiang.tsx +53 -0
  37. package/react-native/icons/IconFrame.tsx +36 -0
  38. package/react-native/icons/IconFuZhiLianJie.tsx +53 -0
  39. package/react-native/icons/IconGengDuo.tsx +53 -0
  40. package/react-native/icons/IconGengDuo1.tsx +53 -0
  41. package/react-native/icons/IconGouXuan.tsx +53 -0
  42. package/react-native/icons/IconGouXuanYiGouXuan.tsx +53 -0
  43. package/react-native/icons/IconGuanBi.tsx +53 -0
  44. package/react-native/icons/IconGuanBiXiao.tsx +53 -0
  45. package/react-native/icons/IconGuanBiYuLan.tsx +53 -0
  46. package/react-native/icons/IconHaoYou.tsx +53 -0
  47. package/react-native/icons/IconHuiDingBu.tsx +53 -0
  48. package/react-native/icons/IconJiaoYu.tsx +36 -0
  49. package/react-native/icons/IconJiaoYu1.tsx +36 -0
  50. package/react-native/icons/IconKeJi.tsx +36 -0
  51. package/react-native/icons/IconKeJi1.tsx +36 -0
  52. package/react-native/icons/IconLianJie.tsx +53 -0
  53. package/react-native/icons/IconLianXiRen.tsx +53 -0
  54. package/react-native/icons/IconLianXiRen1.tsx +53 -0
  55. package/react-native/icons/IconLianXiRen2.tsx +53 -0
  56. package/react-native/icons/IconLianXiRen3.tsx +53 -0
  57. package/react-native/icons/IconLike.tsx +53 -0
  58. package/react-native/icons/IconPingLun.tsx +53 -0
  59. package/react-native/icons/IconQiChe.tsx +36 -0
  60. package/react-native/icons/IconQiChe1.tsx +36 -0
  61. package/react-native/icons/IconSearch.tsx +53 -0
  62. package/react-native/icons/IconShanChuDELETE.tsx +53 -0
  63. package/react-native/icons/IconShangYe.tsx +36 -0
  64. package/react-native/icons/IconShangYe1.tsx +36 -0
  65. package/react-native/icons/IconShare.tsx +53 -0
  66. package/react-native/icons/IconSheZhi.tsx +53 -0
  67. package/react-native/icons/IconSheZhi1.tsx +53 -0
  68. package/react-native/icons/IconShouCang.tsx +53 -0
  69. package/react-native/icons/IconShouYe.tsx +53 -0
  70. package/react-native/icons/IconShuaXin.tsx +53 -0
  71. package/react-native/icons/IconSouSuo.tsx +53 -0
  72. package/react-native/icons/IconSuoDing.tsx +53 -0
  73. package/react-native/icons/IconTanSuo.tsx +53 -0
  74. package/react-native/icons/IconTiYu.tsx +36 -0
  75. package/react-native/icons/IconTongZhi.tsx +53 -0
  76. package/react-native/icons/IconTongZhi1.tsx +53 -0
  77. package/react-native/icons/IconWeiXinHaoYou.tsx +53 -0
  78. package/react-native/icons/IconWenDang.tsx +53 -0
  79. package/react-native/icons/IconWenHuaTiYu1.tsx +36 -0
  80. package/react-native/icons/IconXiaoXi.tsx +53 -0
  81. package/react-native/icons/IconYiDianZan1.tsx +53 -0
  82. package/react-native/icons/IconYiGouXuan.tsx +36 -0
  83. package/react-native/icons/IconYiShouCang1.tsx +53 -0
  84. package/react-native/icons/IconYou.tsx +53 -0
  85. package/react-native/icons/IconYuLan.tsx +53 -0
  86. package/react-native/icons/IconYuLan1.tsx +53 -0
  87. package/react-native/icons/IconYuLanGuanBi.tsx +53 -0
  88. package/react-native/icons/IconZengJia.tsx +53 -0
  89. package/react-native/icons/IconZengJia1.tsx +53 -0
  90. package/react-native/icons/IconZhanKai.tsx +53 -0
  91. package/react-native/icons/IconZhengQue.tsx +53 -0
  92. package/react-native/icons/IconZhiChang.tsx +36 -0
  93. package/react-native/icons/IconZhiChang1.tsx +36 -0
  94. package/react-native/icons/IconZhiShiKu.tsx +53 -0
  95. package/react-native/icons/IconZhuShou.tsx +53 -0
  96. package/react-native/icons/IconZhuShouGuanLi.tsx +53 -0
  97. package/react-native/icons/IconZuo.tsx +53 -0
  98. package/react-native/index.ts +214 -0
  99. package/svg//345/244/232/351/200/211.svg +1 -0
  100. package/svg//350/256/276/347/275/2561.svg +1 -0
  101. package/dist/cjs/icons/IconLianXiRen.js +0 -17
  102. package/dist/cjs/icons/IconLianXiRen.js.map +0 -1
  103. package/dist/esm/icons/IconLianXiRen.js +0 -14
  104. package/dist/esm/icons/IconLianXiRen.js.map +0 -1
  105. package/dist/types/icons/IconLianXiRen.d.ts.map +0 -1
  106. package/svg/Frame.svg +0 -1
  107. package/svg//350/201/224/347/263/273/344/272/272.svg +0 -1
@@ -0,0 +1,36 @@
1
+ import React, { forwardRef, useMemo } from 'react'
2
+ import type { ComponentProps } from 'react'
3
+ import { SvgXml } from 'react-native-svg'
4
+
5
+ export interface IconJiaoYu1Props extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconJiaoYu1 = forwardRef<unknown, IconJiaoYu1Props>(
11
+ ({ size = 24, color, ...props }, ref) => {
12
+ const baseXml = useMemo(
13
+ () => `<svg fill="none" viewBox="0 0 36 36"><rect width="216.6" height="87.6" x="-90.3" y="-9.8" stroke="#DDDDDD" stroke-width=".4" rx="11.8"/><g opacity=".8"><path fill="#292D32" d="m19.457 8.132 13.788 7.524a.94.94 0 0 1 .48.804.94.94 0 0 1-.48.804l-13.788 7.524c-.444.24-.948.372-1.452.372a3.1 3.1 0 0 1-1.452-.372l-13.8-7.524a.94.94 0 0 1-.48-.804.94.94 0 0 1 .48-.804l13.788-7.524c.444-.24.948-.372 1.452-.372s1.008.132 1.452.372z"/><path fill="#8D8F91" d="M6.455 21.099c.096 0 .204.024.288.072l2.196 1.212v5.556c0 .096.024.192.072.276a.7.7 0 0 0 .192.216c.084.06.168.096.264.108s.192 0 .288-.024l.9-.312c.12-.048.264 0 .348.108l1.38 1.848c.072.108.18.18.3.216s.252.036.372 0a.61.61 0 0 0 .42-.576v-4.896l3.06 1.692a3.07 3.07 0 0 0 2.952 0l9.768-5.424a.53.53 0 0 1 .3-.072c.108 0 .204.036.3.084a.5.5 0 0 1 .216.228.66.66 0 0 1 .084.3v6.288a3.03 3.03 0 0 1-1.584 2.664l-9.12 4.968a3.04 3.04 0 0 1-2.904 0l-9.12-4.968a3.15 3.15 0 0 1-1.164-1.116 3.06 3.06 0 0 1-.42-1.548v-6.288c0-.336.276-.612.612-.612"/><path stroke="#D1D5DA" stroke-width=".24" d="M12 .12h12C30.561.12 35.88 5.44 35.88 12v12c0 6.561-5.319 11.88-11.88 11.88H12C5.439 35.88.12 30.56.12 24V12C.12 5.439 5.44.12 12 .12Z"/></g></svg>`,
14
+ [],
15
+ )
16
+
17
+ const xml = useMemo(() => {
18
+ return baseXml
19
+ }, [baseXml, color])
20
+
21
+ return (
22
+ <SvgXml
23
+ ref={ref as never}
24
+ xml={xml}
25
+ width={size}
26
+ height={size}
27
+ viewBox="0 0 36 36"
28
+ {...props}
29
+ />
30
+ )
31
+ },
32
+ )
33
+
34
+ IconJiaoYu1.displayName = 'IconJiaoYu1'
35
+
36
+ export default IconJiaoYu1
@@ -0,0 +1,36 @@
1
+ import React, { forwardRef, useMemo } from 'react'
2
+ import type { ComponentProps } from 'react'
3
+ import { SvgXml } from 'react-native-svg'
4
+
5
+ export interface IconKeJiProps extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconKeJi = forwardRef<unknown, IconKeJiProps>(
11
+ ({ size = 24, color, ...props }, ref) => {
12
+ const baseXml = useMemo(
13
+ () => `<svg fill="none" viewBox="0 0 36 36"><rect width="132.6" height="87.6" x="-48.3" y="-9.8" stroke="#DDDDDD" stroke-width=".4" rx="11.8"/><path fill="#292D32" d="M17.863 29.798a.6.6 0 0 1-.419-.166.595.595 0 0 1-.008-.834l2.4-2.45a.595.595 0 0 1 .834-.009c.23.225.234.604.009.834l-2.401 2.45a.6.6 0 0 1-.415.175m9.19-9.38a.6.6 0 0 1-.418-.167.595.595 0 0 1-.008-.834l2.344-2.393a.595.595 0 0 1 .834-.009c.23.226.234.605.009.834l-2.345 2.393c-.093.134-.264.174-.415.175m-6.826-.367a.6.6 0 0 1-.419-.166l-2.584-2.552a.595.595 0 0 1-.009-.834.595.595 0 0 1 .834-.008l2.585 2.551c.23.225.233.604.008.834a.6.6 0 0 1-.415.175m9.38 9.192a.6.6 0 0 1-.418-.167l-2.718-2.663a.595.595 0 0 1-.009-.834.595.595 0 0 1 .834-.009l2.718 2.664c.23.225.234.604.009.834-.132.096-.264.173-.415.175"/><path fill="#8D8F91" d="M13.48 40.171c-3.836 0-6.94-3.123-6.94-6.94s3.123-6.942 6.94-6.942 6.941 3.124 6.941 6.941c0 3.818-3.123 6.941-6.94 6.941m1.133-21.225a5.34 5.34 0 0 1-5.334-5.334 5.34 5.34 0 0 1 5.334-5.333 5.34 5.34 0 0 1 5.333 5.334 5.34 5.34 0 0 1-5.333 5.333M32.88 36.317a4.935 4.935 0 0 1-4.932-4.932 4.935 4.935 0 0 1 4.932-4.932 4.935 4.935 0 0 1 4.932 4.932 4.935 4.935 0 0 1-4.932 4.932m-.987-17.334a4.155 4.155 0 0 1-4.146-4.147 4.155 4.155 0 0 1 4.146-4.146 4.155 4.155 0 0 1 4.147 4.146 4.143 4.143 0 0 1-4.147 4.147"/><circle cx="23.386" cy="22.464" r="4.909" fill="#292D32"/><path stroke="#D1D5DA" stroke-width=".24" d="M12 .12h12C30.561.12 35.88 5.44 35.88 12v12c0 6.561-5.319 11.88-11.88 11.88H12C5.439 35.88.12 30.56.12 24V12C.12 5.439 5.44.12 12 .12Z"/></svg>`,
14
+ [],
15
+ )
16
+
17
+ const xml = useMemo(() => {
18
+ return baseXml
19
+ }, [baseXml, color])
20
+
21
+ return (
22
+ <SvgXml
23
+ ref={ref as never}
24
+ xml={xml}
25
+ width={size}
26
+ height={size}
27
+ viewBox="0 0 36 36"
28
+ {...props}
29
+ />
30
+ )
31
+ },
32
+ )
33
+
34
+ IconKeJi.displayName = 'IconKeJi'
35
+
36
+ export default IconKeJi
@@ -0,0 +1,36 @@
1
+ import React, { forwardRef, useMemo } from 'react'
2
+ import type { ComponentProps } from 'react'
3
+ import { SvgXml } from 'react-native-svg'
4
+
5
+ export interface IconKeJi1Props extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconKeJi1 = forwardRef<unknown, IconKeJi1Props>(
11
+ ({ size = 24, color, ...props }, ref) => {
12
+ const baseXml = useMemo(
13
+ () => `<svg fill="none" viewBox="0 0 36 36"><rect width="132" height="87" x="-48" y="-9.5" stroke="#FF8D28" rx="11.5"/><rect width="36" height="36" fill="#B9A5FF" rx="12"/><path fill="#A079FF" fill-opacity=".737" d="M17.863 29.798a.6.6 0 0 1-.419-.166.595.595 0 0 1-.008-.834l2.4-2.45a.595.595 0 0 1 .834-.009c.23.225.234.604.009.834l-2.401 2.45a.6.6 0 0 1-.415.175m9.19-9.38a.6.6 0 0 1-.418-.167.595.595 0 0 1-.008-.834l2.344-2.393a.595.595 0 0 1 .834-.009c.23.226.234.605.009.834l-2.345 2.393c-.093.134-.264.174-.415.175m-6.826-.367a.6.6 0 0 1-.419-.166l-2.584-2.552a.595.595 0 0 1-.009-.834.595.595 0 0 1 .834-.008l2.585 2.551c.23.225.233.604.008.834a.6.6 0 0 1-.415.175m9.38 9.192a.6.6 0 0 1-.418-.167l-2.718-2.663a.595.595 0 0 1-.009-.834.595.595 0 0 1 .834-.009l2.718 2.664c.23.225.234.604.009.834-.132.096-.264.173-.415.175"/><path fill="#7954E2" d="M13.48 40.171c-3.836 0-6.94-3.123-6.94-6.94s3.123-6.942 6.94-6.942 6.941 3.124 6.941 6.941c0 3.818-3.123 6.941-6.94 6.941m1.133-21.225a5.34 5.34 0 0 1-5.334-5.334 5.34 5.34 0 0 1 5.334-5.333 5.34 5.34 0 0 1 5.333 5.334 5.34 5.34 0 0 1-5.333 5.333M32.88 36.317a4.935 4.935 0 0 1-4.932-4.932 4.935 4.935 0 0 1 4.932-4.932 4.935 4.935 0 0 1 4.932 4.932 4.935 4.935 0 0 1-4.932 4.932m-.987-17.334a4.155 4.155 0 0 1-4.146-4.147 4.155 4.155 0 0 1 4.146-4.146 4.155 4.155 0 0 1 4.147 4.146 4.143 4.143 0 0 1-4.147 4.147"/><circle cx="23.386" cy="22.464" r="4.909" fill="#7954E2"/></svg>`,
14
+ [],
15
+ )
16
+
17
+ const xml = useMemo(() => {
18
+ return baseXml
19
+ }, [baseXml, color])
20
+
21
+ return (
22
+ <SvgXml
23
+ ref={ref as never}
24
+ xml={xml}
25
+ width={size}
26
+ height={size}
27
+ viewBox="0 0 36 36"
28
+ {...props}
29
+ />
30
+ )
31
+ },
32
+ )
33
+
34
+ IconKeJi1.displayName = 'IconKeJi1'
35
+
36
+ export default IconKeJi1
@@ -0,0 +1,53 @@
1
+ import React, { forwardRef, useMemo } from 'react'
2
+ import type { ComponentProps } from 'react'
3
+ import { SvgXml } from 'react-native-svg'
4
+
5
+ export interface IconLianJieProps extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconLianJie = forwardRef<unknown, IconLianJieProps>(
11
+ ({ size = 24, color, ...props }, ref) => {
12
+ const baseXml = useMemo(
13
+ () => `<svg fill="none" viewBox="0 0 24 24"><path stroke="#4A4A4A" stroke-width="1.5" d="M6 4.964V3.5A1.5 1.5 0 0 1 7.5 2h13A1.5 1.5 0 0 1 22 3.5v13a1.5 1.5 0 0 1-1.5 1.5h-1.491"/><path fill="#4A4A4A" stroke="#4A4A4A" stroke-linejoin="round" stroke-width="1.5" d="M17.5 5h-14A1.5 1.5 0 0 0 2 6.5v14A1.5 1.5 0 0 0 3.5 22h14a1.5 1.5 0 0 0 1.5-1.5v-14A1.5 1.5 0 0 0 17.5 5Z"/><path stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M9.22 11.555 11.866 8.8c.726-.726 1.919-.71 2.664.036s.762 1.938.036 2.664l-.955 1.011"/><path stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M6.733 14.374a89 89 0 0 1-.783.764c-.726.726-.745 2.02 0 2.765.746.746 1.939.762 2.664.036l2.582-2.344"/><path stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M9.331 14.164a1.93 1.93 0 0 1-.565-1.237 1.83 1.83 0 0 1 .53-1.427"/><path stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M11.16 12.93c.746.746.762 1.939.036 2.665"/></svg>`,
14
+ [],
15
+ )
16
+
17
+ const xml = useMemo(() => {
18
+ if (!color) return baseXml
19
+ return baseXml.replace(
20
+ /(fill|stroke)="([^"]+)"/gi,
21
+ (_match, attr, value) => {
22
+ const normalized = String(value).toLowerCase().replace(/\s/g, '')
23
+ if (
24
+ normalized === 'none' ||
25
+ normalized === 'currentcolor' ||
26
+ normalized === 'white' ||
27
+ normalized === '#fff' ||
28
+ normalized === '#ffffff' ||
29
+ normalized.startsWith('url(')
30
+ ) {
31
+ return `${attr}="${value}"`
32
+ }
33
+ return `${attr}="${color}"`
34
+ },
35
+ )
36
+ }, [baseXml, color])
37
+
38
+ return (
39
+ <SvgXml
40
+ ref={ref as never}
41
+ xml={xml}
42
+ width={size}
43
+ height={size}
44
+ viewBox="0 0 24 24"
45
+ {...props}
46
+ />
47
+ )
48
+ },
49
+ )
50
+
51
+ IconLianJie.displayName = 'IconLianJie'
52
+
53
+ export default IconLianJie
@@ -0,0 +1,53 @@
1
+ import React, { forwardRef, useMemo } from 'react'
2
+ import type { ComponentProps } from 'react'
3
+ import { SvgXml } from 'react-native-svg'
4
+
5
+ export interface IconLianXiRenProps extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconLianXiRen = forwardRef<unknown, IconLianXiRenProps>(
11
+ ({ size = 24, color, ...props }, ref) => {
12
+ const baseXml = useMemo(
13
+ () => `<svg fill="none" viewBox="0 0 24 24"><path stroke="#0A0A0A" stroke-width="2" d="M17.049 15.898v.002l-.004-.007z"/></svg>`,
14
+ [],
15
+ )
16
+
17
+ const xml = useMemo(() => {
18
+ if (!color) return baseXml
19
+ return baseXml.replace(
20
+ /(fill|stroke)="([^"]+)"/gi,
21
+ (_match, attr, value) => {
22
+ const normalized = String(value).toLowerCase().replace(/\s/g, '')
23
+ if (
24
+ normalized === 'none' ||
25
+ normalized === 'currentcolor' ||
26
+ normalized === 'white' ||
27
+ normalized === '#fff' ||
28
+ normalized === '#ffffff' ||
29
+ normalized.startsWith('url(')
30
+ ) {
31
+ return `${attr}="${value}"`
32
+ }
33
+ return `${attr}="${color}"`
34
+ },
35
+ )
36
+ }, [baseXml, color])
37
+
38
+ return (
39
+ <SvgXml
40
+ ref={ref as never}
41
+ xml={xml}
42
+ width={size}
43
+ height={size}
44
+ viewBox="0 0 24 24"
45
+ {...props}
46
+ />
47
+ )
48
+ },
49
+ )
50
+
51
+ IconLianXiRen.displayName = 'IconLianXiRen'
52
+
53
+ export default IconLianXiRen
@@ -0,0 +1,53 @@
1
+ import React, { forwardRef, useMemo } from 'react'
2
+ import type { ComponentProps } from 'react'
3
+ import { SvgXml } from 'react-native-svg'
4
+
5
+ export interface IconLianXiRen1Props extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconLianXiRen1 = forwardRef<unknown, IconLianXiRen1Props>(
11
+ ({ size = 24, color, ...props }, ref) => {
12
+ const baseXml = useMemo(
13
+ () => `<svg fill="none" viewBox="0 0 24 24"><path stroke="#52525B" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.555" d="M12 13.538a3.846 3.846 0 1 0 0-7.692 3.846 3.846 0 0 0 0 7.692"/><path stroke="#52525B" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.555" d="M5.43 19.538a7.693 7.693 0 0 1 13.14 0"/><path stroke="#52525B" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.555" d="M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12s4.477 10 10 10"/></svg>`,
14
+ [],
15
+ )
16
+
17
+ const xml = useMemo(() => {
18
+ if (!color) return baseXml
19
+ return baseXml.replace(
20
+ /(fill|stroke)="([^"]+)"/gi,
21
+ (_match, attr, value) => {
22
+ const normalized = String(value).toLowerCase().replace(/\s/g, '')
23
+ if (
24
+ normalized === 'none' ||
25
+ normalized === 'currentcolor' ||
26
+ normalized === 'white' ||
27
+ normalized === '#fff' ||
28
+ normalized === '#ffffff' ||
29
+ normalized.startsWith('url(')
30
+ ) {
31
+ return `${attr}="${value}"`
32
+ }
33
+ return `${attr}="${color}"`
34
+ },
35
+ )
36
+ }, [baseXml, color])
37
+
38
+ return (
39
+ <SvgXml
40
+ ref={ref as never}
41
+ xml={xml}
42
+ width={size}
43
+ height={size}
44
+ viewBox="0 0 24 24"
45
+ {...props}
46
+ />
47
+ )
48
+ },
49
+ )
50
+
51
+ IconLianXiRen1.displayName = 'IconLianXiRen1'
52
+
53
+ export default IconLianXiRen1
@@ -0,0 +1,53 @@
1
+ import React, { forwardRef, useMemo } from 'react'
2
+ import type { ComponentProps } from 'react'
3
+ import { SvgXml } from 'react-native-svg'
4
+
5
+ export interface IconLianXiRen2Props extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconLianXiRen2 = forwardRef<unknown, IconLianXiRen2Props>(
11
+ ({ size = 24, color, ...props }, ref) => {
12
+ const baseXml = useMemo(
13
+ () => `<svg fill="none" viewBox="0 0 24 24"><path stroke="#171717" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M17 21H7c-4 0-5-1-5-5V8c0-4 1-5 5-5h10c4 0 5 1 5 5v8c0 4-1 5-5 5"/><path stroke="#171717" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M14 8h5"/><path stroke="#171717" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M15 12h4"/><path stroke="#171717" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M17 16h2"/><path stroke="#171717" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M8.5 11.29a1.81 1.81 0 1 0 0-3.62 1.81 1.81 0 0 0 0 3.62"/><path stroke="#171717" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M12 16.33a3.02 3.02 0 0 0-2.74-2.72 7.7 7.7 0 0 0-1.52 0A3.03 3.03 0 0 0 5 16.33"/></svg>`,
14
+ [],
15
+ )
16
+
17
+ const xml = useMemo(() => {
18
+ if (!color) return baseXml
19
+ return baseXml.replace(
20
+ /(fill|stroke)="([^"]+)"/gi,
21
+ (_match, attr, value) => {
22
+ const normalized = String(value).toLowerCase().replace(/\s/g, '')
23
+ if (
24
+ normalized === 'none' ||
25
+ normalized === 'currentcolor' ||
26
+ normalized === 'white' ||
27
+ normalized === '#fff' ||
28
+ normalized === '#ffffff' ||
29
+ normalized.startsWith('url(')
30
+ ) {
31
+ return `${attr}="${value}"`
32
+ }
33
+ return `${attr}="${color}"`
34
+ },
35
+ )
36
+ }, [baseXml, color])
37
+
38
+ return (
39
+ <SvgXml
40
+ ref={ref as never}
41
+ xml={xml}
42
+ width={size}
43
+ height={size}
44
+ viewBox="0 0 24 24"
45
+ {...props}
46
+ />
47
+ )
48
+ },
49
+ )
50
+
51
+ IconLianXiRen2.displayName = 'IconLianXiRen2'
52
+
53
+ export default IconLianXiRen2
@@ -0,0 +1,53 @@
1
+ import React, { forwardRef, useMemo } from 'react'
2
+ import type { ComponentProps } from 'react'
3
+ import { SvgXml } from 'react-native-svg'
4
+
5
+ export interface IconLianXiRen3Props extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconLianXiRen3 = forwardRef<unknown, IconLianXiRen3Props>(
11
+ ({ size = 24, color, ...props }, ref) => {
12
+ const baseXml = useMemo(
13
+ () => `<svg fill="none" viewBox="0 0 48 48"><path fill="white" d="M-43 47H5v48h-48z"/><circle cx="25.264" cy="21.008" r="6" stroke="black" stroke-width="3"/><path stroke="black" stroke-linecap="round" stroke-width="3" d="M16.307 31.523s3.196-4.41 8.768-4.486 9.177 4.486 9.177 4.486"/><rect width="29.849" height="35.898" x="10.405" y="6.051" stroke="black" stroke-width="3" rx="1.5"/><path stroke="black" stroke-linecap="round" stroke-width="3" d="m5.708 13.444 3.469.018"/><path stroke="black" stroke-linecap="round" stroke-width="3" d="m5.693 23.994 3.469-.017"/><path stroke="black" stroke-linecap="round" stroke-width="3" d="m5.693 34.412 3.469-.017"/></svg>`,
14
+ [],
15
+ )
16
+
17
+ const xml = useMemo(() => {
18
+ if (!color) return baseXml
19
+ return baseXml.replace(
20
+ /(fill|stroke)="([^"]+)"/gi,
21
+ (_match, attr, value) => {
22
+ const normalized = String(value).toLowerCase().replace(/\s/g, '')
23
+ if (
24
+ normalized === 'none' ||
25
+ normalized === 'currentcolor' ||
26
+ normalized === 'white' ||
27
+ normalized === '#fff' ||
28
+ normalized === '#ffffff' ||
29
+ normalized.startsWith('url(')
30
+ ) {
31
+ return `${attr}="${value}"`
32
+ }
33
+ return `${attr}="${color}"`
34
+ },
35
+ )
36
+ }, [baseXml, color])
37
+
38
+ return (
39
+ <SvgXml
40
+ ref={ref as never}
41
+ xml={xml}
42
+ width={size}
43
+ height={size}
44
+ viewBox="0 0 48 48"
45
+ {...props}
46
+ />
47
+ )
48
+ },
49
+ )
50
+
51
+ IconLianXiRen3.displayName = 'IconLianXiRen3'
52
+
53
+ export default IconLianXiRen3
@@ -0,0 +1,53 @@
1
+ import React, { forwardRef, useMemo } from 'react'
2
+ import type { ComponentProps } from 'react'
3
+ import { SvgXml } from 'react-native-svg'
4
+
5
+ export interface IconLikeProps extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconLike = forwardRef<unknown, IconLikeProps>(
11
+ ({ size = 24, color, ...props }, ref) => {
12
+ const baseXml = useMemo(
13
+ () => `<svg fill="none" viewBox="0 0 24 24"><path stroke="#0D131A" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M7.5 4A5.5 5.5 0 0 0 2 9.5C2 15 8.5 20 12 21.163 15.5 20 22 15 22 9.5a5.5 5.5 0 0 0-10-3.163A5.5 5.5 0 0 0 7.5 4"/></svg>`,
14
+ [],
15
+ )
16
+
17
+ const xml = useMemo(() => {
18
+ if (!color) return baseXml
19
+ return baseXml.replace(
20
+ /(fill|stroke)="([^"]+)"/gi,
21
+ (_match, attr, value) => {
22
+ const normalized = String(value).toLowerCase().replace(/\s/g, '')
23
+ if (
24
+ normalized === 'none' ||
25
+ normalized === 'currentcolor' ||
26
+ normalized === 'white' ||
27
+ normalized === '#fff' ||
28
+ normalized === '#ffffff' ||
29
+ normalized.startsWith('url(')
30
+ ) {
31
+ return `${attr}="${value}"`
32
+ }
33
+ return `${attr}="${color}"`
34
+ },
35
+ )
36
+ }, [baseXml, color])
37
+
38
+ return (
39
+ <SvgXml
40
+ ref={ref as never}
41
+ xml={xml}
42
+ width={size}
43
+ height={size}
44
+ viewBox="0 0 24 24"
45
+ {...props}
46
+ />
47
+ )
48
+ },
49
+ )
50
+
51
+ IconLike.displayName = 'IconLike'
52
+
53
+ export default IconLike
@@ -0,0 +1,53 @@
1
+ import React, { forwardRef, useMemo } from 'react'
2
+ import type { ComponentProps } from 'react'
3
+ import { SvgXml } from 'react-native-svg'
4
+
5
+ export interface IconPingLunProps extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconPingLun = forwardRef<unknown, IconPingLunProps>(
11
+ ({ size = 24, color, ...props }, ref) => {
12
+ const baseXml = useMemo(
13
+ () => `<svg fill="none" viewBox="0 0 24 24"><path stroke="#0D131A" stroke-linejoin="round" stroke-width="1.5" d="M12 22c5.523 0 10-4.477 10-10S17.523 2 12 2 2 6.477 2 12a9.97 9.97 0 0 0 1.684 5.556Q3.867 17.829 3 21q3.171-.867 3.444-.684A10 10 0 0 0 12 22Z"/></svg>`,
14
+ [],
15
+ )
16
+
17
+ const xml = useMemo(() => {
18
+ if (!color) return baseXml
19
+ return baseXml.replace(
20
+ /(fill|stroke)="([^"]+)"/gi,
21
+ (_match, attr, value) => {
22
+ const normalized = String(value).toLowerCase().replace(/\s/g, '')
23
+ if (
24
+ normalized === 'none' ||
25
+ normalized === 'currentcolor' ||
26
+ normalized === 'white' ||
27
+ normalized === '#fff' ||
28
+ normalized === '#ffffff' ||
29
+ normalized.startsWith('url(')
30
+ ) {
31
+ return `${attr}="${value}"`
32
+ }
33
+ return `${attr}="${color}"`
34
+ },
35
+ )
36
+ }, [baseXml, color])
37
+
38
+ return (
39
+ <SvgXml
40
+ ref={ref as never}
41
+ xml={xml}
42
+ width={size}
43
+ height={size}
44
+ viewBox="0 0 24 24"
45
+ {...props}
46
+ />
47
+ )
48
+ },
49
+ )
50
+
51
+ IconPingLun.displayName = 'IconPingLun'
52
+
53
+ export default IconPingLun
@@ -0,0 +1,36 @@
1
+ import React, { forwardRef, useMemo } from 'react'
2
+ import type { ComponentProps } from 'react'
3
+ import { SvgXml } from 'react-native-svg'
4
+
5
+ export interface IconQiCheProps extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconQiChe = forwardRef<unknown, IconQiCheProps>(
11
+ ({ size = 24, color, ...props }, ref) => {
12
+ const baseXml = useMemo(
13
+ () => `<svg fill="none" viewBox="0 0 36 36"><rect width="132" height="87" x="-48" y="-9.5" stroke="#FF8D28" rx="11.5"/><g opacity=".8"><path fill="#B3B3B3" d="M0 12C0 5.373 5.373 0 12 0h12c6.627 0 12 5.373 12 12v12c0 6.627-5.373 12-12 12H12C5.373 36 0 30.627 0 24z"/><path fill="#020202" d="M39.92 17.354h-3.15a.8.8 0 0 0-.409.111l-1.413-4.267c-.459-2.432-2.17-3.598-4.265-3.598H17.355c-2.418 0-3.881 1.576-4.266 3.598l-1.425 4.28a.9.9 0 0 0-.434-.124H8.08c-.111 0-.223.025-.334.062a1.1 1.1 0 0 0-.286.186.7.7 0 0 0-.185.285.8.8 0 0 0-.062.335v.757c0 .484.396.88.88.88l1.19.2a5.5 5.5 0 0 0-.595 2.555l-.446 5.037c0 .149 0 .298.024.447-.012.099-.024.186-.024.285v6.054c0 .868.694 1.563 1.562 1.563h2.38q.317 0 .596-.112c.185-.074.359-.198.508-.334a1.4 1.4 0 0 0 .335-.51 1.7 1.7 0 0 0 .123-.595v-1.947H34.28v1.947c0 .869.694 1.564 1.562 1.564h2.393c.21 0 .409-.038.595-.125.186-.074.36-.198.508-.334a1.4 1.4 0 0 0 .335-.51 1.7 1.7 0 0 0 .124-.595v-6.054c0-.099 0-.186-.025-.285.012-.149.025-.298.025-.447l-.447-5.037c0-.98-.21-1.823-.595-2.555l1.166-.199c.111 0 .223-.024.335-.062a1.1 1.1 0 0 0 .285-.186.7.7 0 0 0 .186-.285.8.8 0 0 0 .062-.335v-.757c0-.236-.1-.459-.26-.62a.88.88 0 0 0-.62-.26z"/><path fill="#EDEDED" d="m13.798 18.545 1.067-2.81v-.063c.114-.568.356-.668.711-1.11h16.7c.355.454.571.568.673 1.11l1.08 2.886.393 1.563c-.089 1.147-1.486 2.054-2.641 2.054H16.046c-1.155 0-2.552-.907-2.641-2.054l.393-1.563z"/><path fill="#FF8A00" d="M14.547 31.918a2.4 2.4 0 0 1-1.727-.756 2.4 2.4 0 0 1-.66-1.752c.012-.328.089-.643.228-.933.14-.29.33-.554.572-.769s.52-.378.838-.478c.305-.101.635-.14.952-.127.623.05 1.22.328 1.639.794.419.467.635 1.084.61 1.702a2.37 2.37 0 0 1-.763 1.639 2.42 2.42 0 0 1-1.702.655z"/><path fill="#919191" d="M28.098 30.154a.7.7 0 0 1-.216.504.72.72 0 0 1-.508.214h-6.807a.72.72 0 0 1-.508-.214.7.7 0 0 1-.216-.504V28.15a.73.73 0 0 1 .724-.719h6.807a.72.72 0 0 1 .724.719z"/><path fill="#FF8A00" d="M33.291 31.918c-.317 0-.635-.063-.927-.176a2.7 2.7 0 0 1-.787-.517 2.3 2.3 0 0 1-.52-.782 2.3 2.3 0 0 1-.191-.92c0-.315.063-.63.19-.92s.305-.554.52-.781c.23-.227.496-.403.788-.517.292-.126.61-.176.927-.176s.635.063.927.176c.292.126.559.303.788.517s.406.491.52.781c.127.29.19.605.19.92a2.42 2.42 0 0 1-2.425 2.407z"/></g></svg>`,
14
+ [],
15
+ )
16
+
17
+ const xml = useMemo(() => {
18
+ return baseXml
19
+ }, [baseXml, color])
20
+
21
+ return (
22
+ <SvgXml
23
+ ref={ref as never}
24
+ xml={xml}
25
+ width={size}
26
+ height={size}
27
+ viewBox="0 0 36 36"
28
+ {...props}
29
+ />
30
+ )
31
+ },
32
+ )
33
+
34
+ IconQiChe.displayName = 'IconQiChe'
35
+
36
+ export default IconQiChe
@@ -0,0 +1,36 @@
1
+ import React, { forwardRef, useMemo } from 'react'
2
+ import type { ComponentProps } from 'react'
3
+ import { SvgXml } from 'react-native-svg'
4
+
5
+ export interface IconQiChe1Props extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconQiChe1 = forwardRef<unknown, IconQiChe1Props>(
11
+ ({ size = 24, color, ...props }, ref) => {
12
+ const baseXml = useMemo(
13
+ () => `<svg fill="none" viewBox="0 0 36 36"><rect width="132.6" height="87.6" x="-48.3" y="-9.8" stroke="#DDDDDD" stroke-width=".4" rx="11.8"/><g opacity=".8"><path fill="#292D32" d="M39.23 18.773h-2.908a.7.7 0 0 0-.378.103l-1.305-3.94c-.424-2.246-2.004-3.322-3.938-3.322H18.395c-2.233 0-3.583 1.454-3.938 3.321l-1.317 3.952a.85.85 0 0 0-.4-.114H9.832a1 1 0 0 0-.31.057 1 1 0 0 0-.263.172.66.66 0 0 0-.171.263.7.7 0 0 0-.057.31v.698c0 .447.366.813.812.813l1.1.184a5.1 5.1 0 0 0-.55 2.36l-.412 4.65c0 .137 0 .275.023.412-.012.092-.023.172-.023.264v5.59c0 .801.64 1.443 1.442 1.443h2.198q.292 0 .55-.103c.171-.07.332-.184.469-.31s.24-.297.309-.47c.069-.171.114-.366.114-.55V32.76H34.02v1.798c0 .802.642 1.443 1.443 1.443h2.21c.194 0 .377-.034.549-.114.172-.07.332-.184.47-.31a1.3 1.3 0 0 0 .308-.47c.069-.171.115-.366.115-.55v-5.589c0-.092 0-.172-.023-.263.011-.138.023-.275.023-.413l-.412-4.65c0-.905-.195-1.684-.55-2.36l1.076-.183a1 1 0 0 0 .31-.057c.102-.046.182-.104.263-.172.08-.08.137-.16.171-.264a.7.7 0 0 0 .058-.309v-.699a.82.82 0 0 0-.24-.572.82.82 0 0 0-.573-.241z"/><path fill="#8D8F91" d="m15.11 19.873.986-2.595v-.059c.105-.523.328-.616.656-1.024h15.42c.327.42.527.524.62 1.024l.997 2.665.364 1.443c-.082 1.06-1.372 1.897-2.44 1.897H17.187c-1.067 0-2.357-.838-2.439-1.897l.364-1.443z"/><path fill="#8D8F91" d="M15.803 32.22a2.23 2.23 0 0 1-1.595-.698 2.2 2.2 0 0 1-.61-1.618 2.25 2.25 0 0 1 .739-1.571c.223-.198.481-.35.774-.442a2.5 2.5 0 0 1 .88-.117 2.28 2.28 0 0 1 1.512.733c.387.431.587 1.001.563 1.572a2.2 2.2 0 0 1-.703 1.512 2.23 2.23 0 0 1-1.572.606z"/><path fill="#8D8F91" d="M28.314 30.59a.65.65 0 0 1-.2.466.66.66 0 0 1-.468.198H21.36a.66.66 0 0 1-.469-.198.65.65 0 0 1-.2-.465v-1.85c0-.361.305-.664.669-.664h6.285c.363 0 .668.29.668.663z"/><path fill="#8D8F91" d="M33.108 32.22a2.4 2.4 0 0 1-.856-.163 2.5 2.5 0 0 1-.727-.477 2.1 2.1 0 0 1-.48-.722 2.1 2.1 0 0 1-.177-.85c0-.29.059-.581.176-.849.117-.267.282-.512.481-.721.211-.21.457-.373.727-.477.27-.117.563-.163.856-.163s.586.058.856.163c.27.116.516.279.727.477s.375.454.48.721c.118.268.176.559.176.85a2.235 2.235 0 0 1-2.24 2.223z"/><path stroke="#D1D5DA" stroke-width=".24" d="M12 .12h12C30.561.12 35.88 5.44 35.88 12v12c0 6.561-5.319 11.88-11.88 11.88H12C5.439 35.88.12 30.56.12 24V12C.12 5.439 5.44.12 12 .12Z"/></g></svg>`,
14
+ [],
15
+ )
16
+
17
+ const xml = useMemo(() => {
18
+ return baseXml
19
+ }, [baseXml, color])
20
+
21
+ return (
22
+ <SvgXml
23
+ ref={ref as never}
24
+ xml={xml}
25
+ width={size}
26
+ height={size}
27
+ viewBox="0 0 36 36"
28
+ {...props}
29
+ />
30
+ )
31
+ },
32
+ )
33
+
34
+ IconQiChe1.displayName = 'IconQiChe1'
35
+
36
+ export default IconQiChe1
@@ -0,0 +1,53 @@
1
+ import React, { forwardRef, useMemo } from 'react'
2
+ import type { ComponentProps } from 'react'
3
+ import { SvgXml } from 'react-native-svg'
4
+
5
+ export interface IconSearchProps extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconSearch = forwardRef<unknown, IconSearchProps>(
11
+ ({ size = 24, color, ...props }, ref) => {
12
+ const baseXml = useMemo(
13
+ () => `<svg fill="none" viewBox="0 0 24 24"><path stroke="#4A4A4A" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M11 19a8 8 0 1 0 0-16 8 8 0 0 0 0 16"/><path stroke="#4A4A4A" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="m21 21-4.35-4.35"/></svg>`,
14
+ [],
15
+ )
16
+
17
+ const xml = useMemo(() => {
18
+ if (!color) return baseXml
19
+ return baseXml.replace(
20
+ /(fill|stroke)="([^"]+)"/gi,
21
+ (_match, attr, value) => {
22
+ const normalized = String(value).toLowerCase().replace(/\s/g, '')
23
+ if (
24
+ normalized === 'none' ||
25
+ normalized === 'currentcolor' ||
26
+ normalized === 'white' ||
27
+ normalized === '#fff' ||
28
+ normalized === '#ffffff' ||
29
+ normalized.startsWith('url(')
30
+ ) {
31
+ return `${attr}="${value}"`
32
+ }
33
+ return `${attr}="${color}"`
34
+ },
35
+ )
36
+ }, [baseXml, color])
37
+
38
+ return (
39
+ <SvgXml
40
+ ref={ref as never}
41
+ xml={xml}
42
+ width={size}
43
+ height={size}
44
+ viewBox="0 0 24 24"
45
+ {...props}
46
+ />
47
+ )
48
+ },
49
+ )
50
+
51
+ IconSearch.displayName = 'IconSearch'
52
+
53
+ export default IconSearch