@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,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 IconShanChuDELETEProps extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconShanChuDELETE = forwardRef<unknown, IconShanChuDELETEProps>(
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="M4.5 5v17h15V5z"/><path stroke="#0D131A" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M10 10v6.5"/><path stroke="#0D131A" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M14 10v6.5"/><path stroke="#0D131A" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M2 5h20"/><path stroke="#0D131A" stroke-linejoin="round" stroke-width="1.5" d="m8 5 1.645-3h4.744L16 5z"/></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
+ IconShanChuDELETE.displayName = 'IconShanChuDELETE'
52
+
53
+ export default IconShanChuDELETE
@@ -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 IconShangYeProps extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconShangYe = forwardRef<unknown, IconShangYeProps>(
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="M35.953 27.25h-8.73c-.51 0-.9.38-1.07.86a.65.65 0 0 1-.61.43h-4.31c-.51 0-.9-.38-1.07-.86a.65.65 0 0 0-.61-.43h-9.36l-1.8-1.36v7.92c0 1.21.95 2.19 2.13 2.19h25.32c1.17 0 2.13-.98 2.13-2.19v-8l-1.95 1.54-.07-.09z"/><path fill="#8D8F91" d="M35.843 14.578h-5.14v-.38c0-3.18-2.51-5.75-5.6-5.75h-3.85c-3.09 0-5.6 2.58-5.6 5.75v.38h-5.13c-1.18 0-2.13.98-2.13 2.19v6.39l.31.64 1.95 1.54c.14.11.32.17.5.17h8.25c.44 0 .85-.36.81-.8a.87.87 0 0 1 .87-.94h4.31c.44 0 .85.36.81.8-.04.51.36.94.87.94h8.04c.18 0 .36-.06.5-.17l2.33-1.84.03.04v-6.78c0-1.21-.95-2.19-2.13-2.19zm-7.77 0h-9.8v-.12c0-2.07 1.63-3.75 3.65-3.75h2.51c2.01 0 3.65 1.68 3.65 3.75v.12z"/><rect width="35.76" height="35.76" x=".12" y=".12" stroke="#D1D5DA" stroke-width=".24" rx="11.88"/></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
+ IconShangYe.displayName = 'IconShangYe'
35
+
36
+ export default IconShangYe
@@ -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 IconShangYe1Props extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconShangYe1 = forwardRef<unknown, IconShangYe1Props>(
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="#FD894C" rx="12"/><path fill="#FCEA8D" d="M36.165 13.607H30.92v-.386c0-3.24-2.556-5.867-5.707-5.867h-3.928c-3.152 0-5.706 2.625-5.706 5.867v.386h-5.235c-1.2 0-2.17.999-2.17 2.23v5.948a2 2 0 0 0 .762 1.571l1.224.965a2 2 0 0 0 1.238.429h7.938c.49 0 .886-.397.886-.886 0-.49.397-.886.886-.886h4.331c.49 0 .886.397.886.886 0 .49.397.886.886.886H35.7l2.602-2.051.033.043v-6.907c0-1.23-.972-2.228-2.17-2.228m-7.923 0H18.25v-.125c0-2.112 1.665-3.822 3.718-3.822h2.557c2.052 0 3.717 1.71 3.717 3.822zm8.031 13.481h-9.286a.66.66 0 0 0-.66.662.66.66 0 0 1-.662.66h-4.78a.66.66 0 0 1-.662-.66.66.66 0 0 0-.66-.662h-9.55l-.235-.177a1 1 0 0 0-1.603.798v6.06c0 1.234.97 2.231 2.17 2.231h25.82c1.197 0 2.17-.997 2.17-2.231v-8.152l-1.99 1.566z"/></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
+ IconShangYe1.displayName = 'IconShangYe1'
35
+
36
+ export default IconShangYe1
@@ -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 IconShareProps extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconShare = forwardRef<unknown, IconShareProps>(
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="M14 3h7v7"/><path stroke="#0D131A" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M21 14.737V19.5a1.5 1.5 0 0 1-1.5 1.5h-15A1.5 1.5 0 0 1 3 19.5v-15A1.5 1.5 0 0 1 4.5 3H9"/><path stroke="#0D131A" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="m12.9 11.1 7.65-7.65"/></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
+ IconShare.displayName = 'IconShare'
52
+
53
+ export default IconShare
@@ -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 IconSheZhiProps extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconSheZhi = forwardRef<unknown, IconSheZhiProps>(
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="M9.142 21.586a10 10 0 0 1-4.348-2.652 3 3 0 0 0-2.59-4.919A10.04 10.04 0 0 1 2.457 9H2.5a3 3 0 0 0 2.692-4.325 10 10 0 0 1 4.134-2.313 3 3 0 0 0 5.348 0 10 10 0 0 1 4.134 2.313A3 3 0 0 0 21.542 9a10.04 10.04 0 0 1 .255 5.015 3 3 0 0 0-2.59 4.919 10 10 0 0 1-4.349 2.652 3.001 3.001 0 0 0-5.716 0Z"/><path stroke="#0D131A" stroke-linejoin="round" stroke-width="1.5" d="M12 15.5a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7Z"/></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
+ IconSheZhi.displayName = 'IconSheZhi'
52
+
53
+ export default IconSheZhi
@@ -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 IconSheZhi1Props extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconSheZhi1 = forwardRef<unknown, IconSheZhi1Props>(
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="M9.142 21.586a10 10 0 0 1-4.348-2.652 3 3 0 0 0-2.59-4.919A10.04 10.04 0 0 1 2.457 9H2.5a3 3 0 0 0 2.692-4.325 10 10 0 0 1 4.134-2.313 3 3 0 0 0 5.348 0 10 10 0 0 1 4.134 2.313A3 3 0 0 0 21.542 9a10.044 10.044 0 0 1 .255 5.015 3 3 0 0 0-2.59 4.919 10 10 0 0 1-4.349 2.652 3.001 3.001 0 0 0-5.716 0Z"/><path stroke="#0D131A" stroke-linejoin="round" stroke-width="1.5" d="M12 15.5a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7Z"/></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
+ IconSheZhi1.displayName = 'IconSheZhi1'
52
+
53
+ export default IconSheZhi1
@@ -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 IconShouCangProps extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconShouCang = forwardRef<unknown, IconShouCangProps>(
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 2.5 8.942 8.739 2 9.746l5.03 4.916L5.826 21.5 12 18.21l6.174 3.29-1.194-6.837L22 9.746l-6.904-1.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
+ IconShouCang.displayName = 'IconShouCang'
52
+
53
+ export default IconShouCang
@@ -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 IconShouYeProps extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconShouYe = forwardRef<unknown, IconShouYeProps>(
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.333" d="M4 11.99v2.232c0 2.934 0 4.4.911 5.311.911.912 2.378.912 5.311.912h3.556c2.933 0 4.4 0 5.31-.912.912-.91.912-2.378.912-5.31V11.99c0-1.495 0-2.242-.316-2.889-.317-.646-.907-1.105-2.086-2.023L15.82 5.697C13.985 4.269 13.067 3.556 12 3.556s-1.985.713-3.82 2.14L6.402 7.08h0c-1.18.918-1.77 1.377-2.086 2.023S4 10.496 4 11.991"/><path stroke="#0D131A" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.333" d="M14.667 16.444a4.34 4.34 0 0 1-2.667.89 4.34 4.34 0 0 1-2.666-.89"/></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
+ IconShouYe.displayName = 'IconShouYe'
52
+
53
+ export default IconShouYe
@@ -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 IconShuaXinProps extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconShuaXin = forwardRef<unknown, IconShuaXinProps>(
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="M21 4v8"/><path stroke="#0D131A" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M3 12v8"/><path stroke="#0D131A" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M21 12A9 9 0 0 0 5.524 5.75M3 12a9 9 0 0 0 15.25 6.476"/></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
+ IconShuaXin.displayName = 'IconShuaXin'
52
+
53
+ export default IconShuaXin
@@ -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 IconSouSuoProps extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconSouSuo = forwardRef<unknown, IconSouSuoProps>(
11
+ ({ size = 24, color, ...props }, ref) => {
12
+ const baseXml = useMemo(
13
+ () => `<svg fill="none" viewBox="0 0 24 24"><path stroke="black" 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="black" 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
+ IconSouSuo.displayName = 'IconSouSuo'
52
+
53
+ export default IconSouSuo
@@ -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 IconSuoDingProps extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconSuoDing = forwardRef<unknown, IconSuoDingProps>(
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="M20 11H4a1 1 0 0 0-1 1v9a1 1 0 0 0 1 1h16a1 1 0 0 0 1-1v-9a1 1 0 0 0-1-1Z"/><path stroke="#0D131A" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M7 11V7a5 5 0 0 1 10 0v4"/><path stroke="#0D131A" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M12 15v3"/></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
+ IconSuoDing.displayName = 'IconSuoDing'
52
+
53
+ export default IconSuoDing
@@ -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 IconTanSuoProps extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconTanSuo = forwardRef<unknown, IconTanSuoProps>(
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="m16 16.5 4 4"/><path stroke="#0D131A" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.5" d="M18 11.5a7 7 0 1 1-7-7"/><path stroke="#0D131A" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.2" d="m15.5 3.5.258.697c.338.914.507 1.371.84 1.704.334.334.791.503 1.705.841L19 7l-.697.258c-.914.338-1.371.507-1.704.84-.334.334-.503.791-.841 1.705l-.258.697-.258-.697c-.338-.914-.507-1.371-.84-1.704-.334-.334-.791-.503-1.705-.841L12 7l.697-.258c.914-.338 1.371-.507 1.704-.84.334-.334.503-.791.841-1.705z"/></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
+ IconTanSuo.displayName = 'IconTanSuo'
52
+
53
+ export default IconTanSuo
@@ -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 IconTiYuProps extends Omit<ComponentProps<typeof SvgXml>, 'xml' | 'width' | 'height'> {
6
+ size?: number | string
7
+ color?: string
8
+ }
9
+
10
+ export const IconTiYu = forwardRef<unknown, IconTiYuProps>(
11
+ ({ size = 24, color, ...props }, ref) => {
12
+ const baseXml = useMemo(
13
+ () => `<svg fill="none" viewBox="0 0 36 36"><rect width="186.6" height="87.6" x="-75.3" y="-9.8" stroke="#DDDDDD" stroke-width=".4" rx="11.8"/><g opacity=".8"><path fill="#8D8F91" d="M20.565 27.58c1.92.25 3.84.46 5.75.74 1.53.23 3.03.61 4.44 1.25.63.29 1.24.66 1.77 1.1.81.69.79 1.52.02 2.26-.74.72-1.67 1.1-2.62 1.44-1.79.65-3.65.99-5.53 1.23-3.39.43-6.79.51-10.2.26-2.75-.2-5.47-.57-8.09-1.47-.91-.32-1.8-.69-2.53-1.34-.92-.82-.96-1.73.02-2.47.76-.56 1.63-1.01 2.52-1.34 2.27-.85 4.68-1.19 7.11-1.4 1.1-.1 2.21-.13 3.31-.21.29-.02.45.08.61.31.65.87 1.35 1.7 2.34 2.19.39.2.85.31 1.28.32.73.01 1.09-.59.8-1.27-.12-.28-.3-.53-.48-.78-.17-.24-.37-.45-.56-.67.01-.05.02-.1.03-.16z"/><path fill="#292D32" d="M25.573 26.024c-.32.01-.64-.1-.95-.19-.34-.1-.66-.22-.99-.34s-.64-.26-.96-.39c-.03-.02-.07-.03-.1-.05-1.4-.7-2.72-1.57-4.07-2.37-.34-.2-.66-.44-1.02-.58-.53-.21-.93.09-.8.63.15.63.35 1.29.71 1.81.98 1.39 2.06 2.71 3.1 4.05.08.1.17.16.22.29.07.17.09.38.02.55-.09.22-.35.29-.58.25-.24-.05-.49-.19-.69-.35-2.46-1.93-4.31-4.36-5.85-7.04-2.5-4.38-4.08-9.11-5.13-14.04-.04-.18-.08-.37-.1-.55-.03-.41.24-.73.63-.75.4-.02.53.26.61.61.25 1.03.43 2.09.81 3.07.75 1.93 2.24 2.88 4.31 2.88 1.96 0 3.89-.26 5.8-.67.74-.16 1.47-.35 2.2-.54.37-.1.73-.19 1.1-.29.34-.09.68-.21 1.04-.19.24 0 .55.16.6.42.07.37-.35.56-.62.69-.36.17-.72.34-1.09.48-.73.28-1.51.45-2.23.75-.93.4-1.87.81-2.73 1.33-1.31.8-1.65 2.12-1.01 3.52.41.9 1.09 1.58 1.88 2.14 2.04 1.45 4.17 2.77 6.46 3.79.21.09.52.41.39.66-.08.16-.29.26-.45.32s-.33.1-.5.1z"/><path fill="#292D32" d="M17.502 8.984c0 1.28-.84 2.41-1.84 2.58-.68.12-1.23-.12-1.65-.65-.95-1.19-.29-3.39 1.15-3.87 1.1-.37 2.17.38 2.33 1.62 0 .13 0 .26.01.32"/><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
+ IconTiYu.displayName = 'IconTiYu'
35
+
36
+ export default IconTiYu