@react-native-ohos/native-base 3.4.29 → 3.4.30-beta.1
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.
- package/README.md +13 -13
- package/lib/commonjs/components/primitives/Icon/SVGIcon.js +12 -3
- package/lib/commonjs/components/primitives/Icon/SVGIcon.js.map +1 -1
- package/lib/module/components/primitives/Icon/SVGIcon.js +12 -3
- package/lib/module/components/primitives/Icon/SVGIcon.js.map +1 -1
- package/package.json +3 -3
- package/src/components/primitives/Icon/SVGIcon.tsx +11 -2
package/README.md
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
# @react-native-
|
|
2
|
-
|
|
3
|
-
This project is based on [NativeBase](https://github.com/GeekyAnts/NativeBase)
|
|
4
|
-
|
|
5
|
-
## Documentation
|
|
6
|
-
|
|
7
|
-
- [中文](https://
|
|
8
|
-
|
|
9
|
-
- [English](https://
|
|
10
|
-
|
|
11
|
-
## License
|
|
12
|
-
|
|
13
|
-
This project is licensed under [The MIT License (MIT)](https://github.com/GeekyAnts/NativeBase/blob/master/LICENSE)
|
|
1
|
+
# @react-native-ohos/native-base
|
|
2
|
+
|
|
3
|
+
This project is based on [NativeBase](https://github.com/GeekyAnts/NativeBase)
|
|
4
|
+
|
|
5
|
+
## Documentation
|
|
6
|
+
|
|
7
|
+
- [中文](https://gitcode.com/CPF-RN/usage-docs/blob/master/zh-cn/NativeBase.md)
|
|
8
|
+
|
|
9
|
+
- [English](https://gitcode.com/CPF-RN/usage-docs/blob/master/en/NativeBase.md)
|
|
10
|
+
|
|
11
|
+
## License
|
|
12
|
+
|
|
13
|
+
This project is licensed under [The MIT License (MIT)](https://github.com/GeekyAnts/NativeBase/blob/master/LICENSE)
|
|
@@ -67,7 +67,10 @@ const SVGIcon = ({
|
|
|
67
67
|
return /*#__PURE__*/_react.default.createElement(ChildPath, _extends({
|
|
68
68
|
key: (_child$key = child === null || child === void 0 ? void 0 : child.key) !== null && _child$key !== void 0 ? _child$key : i,
|
|
69
69
|
element: child
|
|
70
|
-
}, child === null || child === void 0 ? void 0 : child.props
|
|
70
|
+
}, child === null || child === void 0 ? void 0 : child.props, {
|
|
71
|
+
fill: colorHex,
|
|
72
|
+
stroke: strokeHex
|
|
73
|
+
}));
|
|
71
74
|
})) : _questionIconPath.questionOutlineIconPath);
|
|
72
75
|
};
|
|
73
76
|
|
|
@@ -83,9 +86,15 @@ const ChildPath = ({
|
|
|
83
86
|
return null;
|
|
84
87
|
}
|
|
85
88
|
|
|
89
|
+
const originalFill = element.props.fill;
|
|
90
|
+
const originalColor = element.props.color;
|
|
91
|
+
const originalStroke = element.props.stroke;
|
|
92
|
+
const elementColor = originalFill ? originalFill : originalColor ? originalColor : null;
|
|
93
|
+
const mergedFill = elementColor && elementColor !== 'currentColor' ? elementColor : fillColor ? fillColor : 'currentColor';
|
|
94
|
+
const mergedStroke = originalStroke ? originalStroke : pathStrokeColor;
|
|
86
95
|
return /*#__PURE__*/_react.default.cloneElement(element, {
|
|
87
|
-
fill:
|
|
88
|
-
stroke:
|
|
96
|
+
fill: mergedFill,
|
|
97
|
+
stroke: mergedStroke
|
|
89
98
|
});
|
|
90
99
|
};
|
|
91
100
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["SVGIcon.tsx"],"names":["SVG","Svg","SVGIcon","children","props","ref","focusable","stroke","color","size","resolvedProps","strokeHex","colorHex","React","Children","count","map","child","i","key","questionOutlineIconPath","ChildPath","element","fill","pathStroke","pathStrokeColor","fillColor","cloneElement"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA;;;;;;;;AAEA,MAAMA,GAAG,GAAG,iCAAoBC,UAApB,CAAZ;;AAEA,MAAMC,OAAO,GAAG,CAAC;AAAEC,EAAAA,QAAF;AAAY,KAAGC;AAAf,CAAD,EAAqCC,GAArC,KAAkD;AAChE,QAAM;AACJC,IAAAA,SADI;AAEJC,IAAAA,MAFI;AAGJC,IAAAA,KAHI;AAIJC,IAAAA,IAJI;AAKJ,OAAGC;AALC,MAMF,+BAAmB,MAAnB,EAA2BN,KAA3B,CANJ;AAOA,QAAMO,SAAS,GAAG,qBAAS,QAAT,EAAmBJ,MAAM,IAAI,EAA7B,CAAlB;AACA,QAAMK,QAAQ,GAAG,qBAAS,QAAT,EAAmBJ,KAAK,IAAI,EAA5B,CAAjB,CATgE,CAUhE;;AACA,MAAI,kDAAsBJ,KAAtB,CAAJ,EAAkC;AAChC,WAAO,IAAP;AACD;;AACD,sBACE,6BAAC,GAAD,eACMM,aADN;AAEE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAA,IAAI,EAAED,IAZR;AAaE,IAAA,KAAK,EAAEG,QAbT;AAcE,IAAA,MAAM,EAAED,SAdV;AAeE,IAAA,SAAS,EAAEL,SAfb;AAgBE,IAAA,iBAAiB,EAAC,OAhBpB,CAiBE;AAjBF;AAkBE,IAAA,GAAG,EAAED;AAlBP,MAoBGQ,eAAMC,QAAN,CAAeC,KAAf,CAAqBZ,QAArB,IAAiC,CAAjC,gBACC,6BAAC,QAAD,QACGU,eAAMC,QAAN,CAAeE,GAAf,CAAmBb,QAAnB,EAA6B,CAACc,KAAD,EAAQC,CAAR;AAAA;;AAAA,wBAC5B,6BAAC,SAAD;AACE,MAAA,GAAG,gBAAED,KAAF,aAAEA,KAAF,uBAAEA,KAAK,CAAEE,GAAT,mDAAgBD,CADrB;AAEE,MAAA,OAAO,EAAED;AAFX,OAGMA,KAHN,aAGMA,KAHN,uBAGMA,KAAK,CAAEb,KAHb,
|
|
1
|
+
{"version":3,"sources":["SVGIcon.tsx"],"names":["SVG","Svg","SVGIcon","children","props","ref","focusable","stroke","color","size","resolvedProps","strokeHex","colorHex","React","Children","count","map","child","i","key","questionOutlineIconPath","ChildPath","element","fill","pathStroke","pathStrokeColor","fillColor","originalFill","originalColor","originalStroke","elementColor","mergedFill","mergedStroke","cloneElement"],"mappings":";;;;;;;AAAA;;AACA;;AACA;;AACA;;AAEA;;AACA;;;;;;;;AAEA,MAAMA,GAAG,GAAG,iCAAoBC,UAApB,CAAZ;;AAEA,MAAMC,OAAO,GAAG,CAAC;AAAEC,EAAAA,QAAF;AAAY,KAAGC;AAAf,CAAD,EAAqCC,GAArC,KAAkD;AAChE,QAAM;AACJC,IAAAA,SADI;AAEJC,IAAAA,MAFI;AAGJC,IAAAA,KAHI;AAIJC,IAAAA,IAJI;AAKJ,OAAGC;AALC,MAMF,+BAAmB,MAAnB,EAA2BN,KAA3B,CANJ;AAOA,QAAMO,SAAS,GAAG,qBAAS,QAAT,EAAmBJ,MAAM,IAAI,EAA7B,CAAlB;AACA,QAAMK,QAAQ,GAAG,qBAAS,QAAT,EAAmBJ,KAAK,IAAI,EAA5B,CAAjB,CATgE,CAUhE;;AACA,MAAI,kDAAsBJ,KAAtB,CAAJ,EAAkC;AAChC,WAAO,IAAP;AACD;;AACD,sBACE,6BAAC,GAAD,eACMM,aADN;AAEE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAA,IAAI,EAAED,IAZR;AAaE,IAAA,KAAK,EAAEG,QAbT;AAcE,IAAA,MAAM,EAAED,SAdV;AAeE,IAAA,SAAS,EAAEL,SAfb;AAgBE,IAAA,iBAAiB,EAAC,OAhBpB,CAiBE;AAjBF;AAkBE,IAAA,GAAG,EAAED;AAlBP,MAoBGQ,eAAMC,QAAN,CAAeC,KAAf,CAAqBZ,QAArB,IAAiC,CAAjC,gBACC,6BAAC,QAAD,QACGU,eAAMC,QAAN,CAAeE,GAAf,CAAmBb,QAAnB,EAA6B,CAACc,KAAD,EAAQC,CAAR;AAAA;;AAAA,wBAC5B,6BAAC,SAAD;AACE,MAAA,GAAG,gBAAED,KAAF,aAAEA,KAAF,uBAAEA,KAAK,CAAEE,GAAT,mDAAgBD,CADrB;AAEE,MAAA,OAAO,EAAED;AAFX,OAGMA,KAHN,aAGMA,KAHN,uBAGMA,KAAK,CAAEb,KAHb;AAIE,MAAA,IAAI,EAAEQ,QAJR;AAKE,MAAA,MAAM,EAAED;AALV,OAD4B;AAAA,GAA7B,CADH,CADD,GAaCS,yCAjCJ,CADF;AAsCD,CApDD;;AAqDA,MAAMC,SAAS,GAAG,CAAC;AAAEC,EAAAA,OAAF;AAAWC,EAAAA,IAAX;AAAiBhB,EAAAA,MAAM,EAAEiB;AAAzB,CAAD,KAAgD;AAChE,QAAMC,eAAe,GAAG,qBAAS,QAAT,EAAmBD,UAAU,IAAI,EAAjC,CAAxB;AACA,QAAME,SAAS,GAAG,qBAAS,QAAT,EAAmBH,IAAI,IAAI,EAA3B,CAAlB;;AAEA,MAAI,CAACD,OAAL,EAAc;AACZ,WAAO,IAAP;AACD;;AAED,QAAMK,YAAY,GAAGL,OAAO,CAAClB,KAAR,CAAcmB,IAAnC;AACA,QAAMK,aAAa,GAAGN,OAAO,CAAClB,KAAR,CAAcI,KAApC;AACA,QAAMqB,cAAc,GAAGP,OAAO,CAAClB,KAAR,CAAcG,MAArC;AACA,QAAMuB,YAAY,GAAGH,YAAY,GAAGA,YAAH,GAAmBC,aAAa,GAAGA,aAAH,GAAmB,IAApF;AACA,QAAMG,UAAU,GAAGD,YAAY,IAAIA,YAAY,KAAK,cAAjC,GAAkDA,YAAlD,GAAkEJ,SAAS,GAAGA,SAAH,GAAe,cAA7G;AACA,QAAMM,YAAY,GAAGH,cAAc,GAAGA,cAAH,GAAoBJ,eAAvD;AAEA,sBAAOZ,eAAMoB,YAAN,CAAmBX,OAAnB,EAA4B;AACjCC,IAAAA,IAAI,EAAEQ,UAD2B;AAEjCxB,IAAAA,MAAM,EAAEyB;AAFyB,GAA5B,CAAP;AAID,CAnBD;;4BAoBe,+BAAK,uBAAW9B,OAAX,CAAL,C","sourcesContent":["import React, { memo, forwardRef } from 'react';\r\nimport { useToken, usePropsResolution } from '../../../hooks';\r\nimport { makeStyledComponent } from '../../../utils/styled';\r\nimport { Svg, G } from './nbSvg';\r\nimport type { IIconProps } from './types';\r\nimport { questionOutlineIconPath } from './Icons/questionIconPath';\r\nimport { useHasResponsiveProps } from '../../../hooks/useHasResponsiveProps';\r\n\r\nconst SVG = makeStyledComponent(Svg);\r\n\r\nconst SVGIcon = ({ children, ...props }: IIconProps, ref: any) => {\r\n const {\r\n focusable,\r\n stroke,\r\n color,\r\n size,\r\n ...resolvedProps\r\n } = usePropsResolution('Icon', props);\r\n const strokeHex = useToken('colors', stroke || '');\r\n const colorHex = useToken('colors', color || '');\r\n //TODO: refactor for responsive prop\r\n if (useHasResponsiveProps(props)) {\r\n return null;\r\n }\r\n return (\r\n <SVG\r\n {...resolvedProps}\r\n // height={\r\n // newProps.size\r\n // ? parseInt(newProps.size, 10)\r\n // : parseInt(newProps.height, 10)\r\n // }\r\n // width={\r\n // newProps.size\r\n // ? parseInt(newProps.size, 10)\r\n // : parseInt(newProps.width, 10)\r\n // }\r\n size={size}\r\n color={colorHex}\r\n stroke={strokeHex}\r\n focusable={focusable}\r\n accessibilityRole=\"image\"\r\n // style={style}\r\n ref={ref}\r\n >\r\n {React.Children.count(children) > 0 ? (\r\n <G>\r\n {React.Children.map(children, (child, i) => (\r\n <ChildPath\r\n key={child?.key ?? i}\r\n element={child}\r\n {...child?.props}\r\n fill={colorHex}\r\n stroke={strokeHex}\r\n />\r\n ))}\r\n </G>\r\n ) : (\r\n questionOutlineIconPath\r\n )}\r\n </SVG>\r\n );\r\n};\r\nconst ChildPath = ({ element, fill, stroke: pathStroke }: any) => {\r\n const pathStrokeColor = useToken('colors', pathStroke || '');\r\n const fillColor = useToken('colors', fill || '');\r\n\r\n if (!element) {\r\n return null;\r\n }\r\n\r\n const originalFill = element.props.fill;\r\n const originalColor = element.props.color;\r\n const originalStroke = element.props.stroke;\r\n const elementColor = originalFill ? originalFill : (originalColor ? originalColor : null);\r\n const mergedFill = elementColor && elementColor !== 'currentColor' ? elementColor : (fillColor ? fillColor : 'currentColor');\r\n const mergedStroke = originalStroke ? originalStroke : pathStrokeColor;\r\n\r\n return React.cloneElement(element, {\r\n fill: mergedFill,\r\n stroke: mergedStroke,\r\n });\r\n};\r\nexport default memo(forwardRef(SVGIcon));\r\n"]}
|
|
@@ -50,7 +50,10 @@ const SVGIcon = ({
|
|
|
50
50
|
return /*#__PURE__*/React.createElement(ChildPath, _extends({
|
|
51
51
|
key: (_child$key = child === null || child === void 0 ? void 0 : child.key) !== null && _child$key !== void 0 ? _child$key : i,
|
|
52
52
|
element: child
|
|
53
|
-
}, child === null || child === void 0 ? void 0 : child.props
|
|
53
|
+
}, child === null || child === void 0 ? void 0 : child.props, {
|
|
54
|
+
fill: colorHex,
|
|
55
|
+
stroke: strokeHex
|
|
56
|
+
}));
|
|
54
57
|
})) : questionOutlineIconPath);
|
|
55
58
|
};
|
|
56
59
|
|
|
@@ -66,9 +69,15 @@ const ChildPath = ({
|
|
|
66
69
|
return null;
|
|
67
70
|
}
|
|
68
71
|
|
|
72
|
+
const originalFill = element.props.fill;
|
|
73
|
+
const originalColor = element.props.color;
|
|
74
|
+
const originalStroke = element.props.stroke;
|
|
75
|
+
const elementColor = originalFill ? originalFill : originalColor ? originalColor : null;
|
|
76
|
+
const mergedFill = elementColor && elementColor !== 'currentColor' ? elementColor : fillColor ? fillColor : 'currentColor';
|
|
77
|
+
const mergedStroke = originalStroke ? originalStroke : pathStrokeColor;
|
|
69
78
|
return /*#__PURE__*/React.cloneElement(element, {
|
|
70
|
-
fill:
|
|
71
|
-
stroke:
|
|
79
|
+
fill: mergedFill,
|
|
80
|
+
stroke: mergedStroke
|
|
72
81
|
});
|
|
73
82
|
};
|
|
74
83
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["SVGIcon.tsx"],"names":["React","memo","forwardRef","useToken","usePropsResolution","makeStyledComponent","Svg","G","questionOutlineIconPath","useHasResponsiveProps","SVG","SVGIcon","children","props","ref","focusable","stroke","color","size","resolvedProps","strokeHex","colorHex","Children","count","map","child","i","key","ChildPath","element","fill","pathStroke","pathStrokeColor","fillColor","cloneElement"],"mappings":";;AAAA,OAAOA,KAAP,IAAgBC,IAAhB,EAAsBC,UAAtB,QAAwC,OAAxC;AACA,SAASC,QAAT,EAAmBC,kBAAnB,QAA6C,gBAA7C;AACA,SAASC,mBAAT,QAAoC,uBAApC;AACA,SAASC,GAAT,EAAcC,CAAd,QAAuB,SAAvB;AAEA,SAASC,uBAAT,QAAwC,0BAAxC;AACA,SAASC,qBAAT,QAAsC,sCAAtC;AAEA,MAAMC,GAAG,GAAGL,mBAAmB,CAACC,GAAD,CAA/B;;AAEA,MAAMK,OAAO,GAAG,CAAC;AAAEC,EAAAA,QAAF;AAAY,KAAGC;AAAf,CAAD,EAAqCC,GAArC,KAAkD;AAChE,QAAM;AACJC,IAAAA,SADI;AAEJC,IAAAA,MAFI;AAGJC,IAAAA,KAHI;AAIJC,IAAAA,IAJI;AAKJ,OAAGC;AALC,MAMFf,kBAAkB,CAAC,MAAD,EAASS,KAAT,CANtB;AAOA,QAAMO,SAAS,GAAGjB,QAAQ,CAAC,QAAD,EAAWa,MAAM,IAAI,EAArB,CAA1B;AACA,QAAMK,QAAQ,GAAGlB,QAAQ,CAAC,QAAD,EAAWc,KAAK,IAAI,EAApB,CAAzB,CATgE,CAUhE;;AACA,MAAIR,qBAAqB,CAACI,KAAD,CAAzB,EAAkC;AAChC,WAAO,IAAP;AACD;;AACD,sBACE,oBAAC,GAAD,eACMM,aADN;AAEE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAA,IAAI,EAAED,IAZR;AAaE,IAAA,KAAK,EAAEG,QAbT;AAcE,IAAA,MAAM,EAAED,SAdV;AAeE,IAAA,SAAS,EAAEL,SAfb;AAgBE,IAAA,iBAAiB,EAAC,OAhBpB,CAiBE;AAjBF;AAkBE,IAAA,GAAG,EAAED;AAlBP,MAoBGd,KAAK,CAACsB,QAAN,CAAeC,KAAf,CAAqBX,QAArB,IAAiC,CAAjC,gBACC,oBAAC,CAAD,QACGZ,KAAK,CAACsB,QAAN,CAAeE,GAAf,CAAmBZ,QAAnB,EAA6B,CAACa,KAAD,EAAQC,CAAR;AAAA;;AAAA,wBAC5B,oBAAC,SAAD;AACE,MAAA,GAAG,gBAAED,KAAF,aAAEA,KAAF,uBAAEA,KAAK,CAAEE,GAAT,mDAAgBD,CADrB;AAEE,MAAA,OAAO,EAAED;AAFX,OAGMA,KAHN,aAGMA,KAHN,uBAGMA,KAAK,CAAEZ,KAHb,
|
|
1
|
+
{"version":3,"sources":["SVGIcon.tsx"],"names":["React","memo","forwardRef","useToken","usePropsResolution","makeStyledComponent","Svg","G","questionOutlineIconPath","useHasResponsiveProps","SVG","SVGIcon","children","props","ref","focusable","stroke","color","size","resolvedProps","strokeHex","colorHex","Children","count","map","child","i","key","ChildPath","element","fill","pathStroke","pathStrokeColor","fillColor","originalFill","originalColor","originalStroke","elementColor","mergedFill","mergedStroke","cloneElement"],"mappings":"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","sourcesContent":["import React, { memo, forwardRef } from 'react';\r\nimport { useToken, usePropsResolution } from '../../../hooks';\r\nimport { makeStyledComponent } from '../../../utils/styled';\r\nimport { Svg, G } from './nbSvg';\r\nimport type { IIconProps } from './types';\r\nimport { questionOutlineIconPath } from './Icons/questionIconPath';\r\nimport { useHasResponsiveProps } from '../../../hooks/useHasResponsiveProps';\r\n\r\nconst SVG = makeStyledComponent(Svg);\r\n\r\nconst SVGIcon = ({ children, ...props }: IIconProps, ref: any) => {\r\n const {\r\n focusable,\r\n stroke,\r\n color,\r\n size,\r\n ...resolvedProps\r\n } = usePropsResolution('Icon', props);\r\n const strokeHex = useToken('colors', stroke || '');\r\n const colorHex = useToken('colors', color || '');\r\n //TODO: refactor for responsive prop\r\n if (useHasResponsiveProps(props)) {\r\n return null;\r\n }\r\n return (\r\n <SVG\r\n {...resolvedProps}\r\n // height={\r\n // newProps.size\r\n // ? parseInt(newProps.size, 10)\r\n // : parseInt(newProps.height, 10)\r\n // }\r\n // width={\r\n // newProps.size\r\n // ? parseInt(newProps.size, 10)\r\n // : parseInt(newProps.width, 10)\r\n // }\r\n size={size}\r\n color={colorHex}\r\n stroke={strokeHex}\r\n focusable={focusable}\r\n accessibilityRole=\"image\"\r\n // style={style}\r\n ref={ref}\r\n >\r\n {React.Children.count(children) > 0 ? (\r\n <G>\r\n {React.Children.map(children, (child, i) => (\r\n <ChildPath\r\n key={child?.key ?? i}\r\n element={child}\r\n {...child?.props}\r\n fill={colorHex}\r\n stroke={strokeHex}\r\n />\r\n ))}\r\n </G>\r\n ) : (\r\n questionOutlineIconPath\r\n )}\r\n </SVG>\r\n );\r\n};\r\nconst ChildPath = ({ element, fill, stroke: pathStroke }: any) => {\r\n const pathStrokeColor = useToken('colors', pathStroke || '');\r\n const fillColor = useToken('colors', fill || '');\r\n\r\n if (!element) {\r\n return null;\r\n }\r\n\r\n const originalFill = element.props.fill;\r\n const originalColor = element.props.color;\r\n const originalStroke = element.props.stroke;\r\n const elementColor = originalFill ? originalFill : (originalColor ? originalColor : null);\r\n const mergedFill = elementColor && elementColor !== 'currentColor' ? elementColor : (fillColor ? fillColor : 'currentColor');\r\n const mergedStroke = originalStroke ? originalStroke : pathStrokeColor;\r\n\r\n return React.cloneElement(element, {\r\n fill: mergedFill,\r\n stroke: mergedStroke,\r\n });\r\n};\r\nexport default memo(forwardRef(SVGIcon));\r\n"]}
|
package/package.json
CHANGED
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
"prettier --write"
|
|
37
37
|
]
|
|
38
38
|
},
|
|
39
|
-
"version": "3.4.
|
|
39
|
+
"version": "3.4.30-beta.1",
|
|
40
40
|
"license": "MIT",
|
|
41
41
|
"private": false,
|
|
42
42
|
"main": "lib/commonjs/index",
|
|
@@ -219,11 +219,11 @@
|
|
|
219
219
|
"lib": "lib"
|
|
220
220
|
},
|
|
221
221
|
"gitHead": "5bbeacc403ba97622703699132c55d8359344004",
|
|
222
|
-
"homepage": "https://
|
|
222
|
+
"homepage": "https://gitcode.com/openharmony-sig/rntpc_nativebase#readme",
|
|
223
223
|
"readmeFilename": "README.md",
|
|
224
224
|
"repository": {
|
|
225
225
|
"type": "git",
|
|
226
|
-
"url": "git+https://
|
|
226
|
+
"url": "git+https://gitcode.com/openharmony-sig/rntpc_nativebase.git"
|
|
227
227
|
},
|
|
228
228
|
"collective": {
|
|
229
229
|
"type": "opencollective",
|
|
@@ -50,6 +50,8 @@ const SVGIcon = ({ children, ...props }: IIconProps, ref: any) => {
|
|
|
50
50
|
key={child?.key ?? i}
|
|
51
51
|
element={child}
|
|
52
52
|
{...child?.props}
|
|
53
|
+
fill={colorHex}
|
|
54
|
+
stroke={strokeHex}
|
|
53
55
|
/>
|
|
54
56
|
))}
|
|
55
57
|
</G>
|
|
@@ -67,9 +69,16 @@ const ChildPath = ({ element, fill, stroke: pathStroke }: any) => {
|
|
|
67
69
|
return null;
|
|
68
70
|
}
|
|
69
71
|
|
|
72
|
+
const originalFill = element.props.fill;
|
|
73
|
+
const originalColor = element.props.color;
|
|
74
|
+
const originalStroke = element.props.stroke;
|
|
75
|
+
const elementColor = originalFill ? originalFill : (originalColor ? originalColor : null);
|
|
76
|
+
const mergedFill = elementColor && elementColor !== 'currentColor' ? elementColor : (fillColor ? fillColor : 'currentColor');
|
|
77
|
+
const mergedStroke = originalStroke ? originalStroke : pathStrokeColor;
|
|
78
|
+
|
|
70
79
|
return React.cloneElement(element, {
|
|
71
|
-
fill:
|
|
72
|
-
stroke:
|
|
80
|
+
fill: mergedFill,
|
|
81
|
+
stroke: mergedStroke,
|
|
73
82
|
});
|
|
74
83
|
};
|
|
75
84
|
export default memo(forwardRef(SVGIcon));
|