@react-native-ohos/native-base 3.4.29-rc.2 → 3.5.0

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.
@@ -70,9 +70,15 @@ const ChildPath = ({
70
70
  if (!element) {
71
71
  return null;
72
72
  }
73
+ const originalFill = element.props.fill;
74
+ const originalColor = element.props.color;
75
+ const originalStroke = element.props.stroke;
76
+ const elementColor = originalFill ? originalFill : originalColor ? originalColor : null;
77
+ const mergedFill = elementColor && elementColor !== 'currentColor' ? elementColor : fillColor ? fillColor : 'currentColor';
78
+ const mergedStroke = originalStroke ? originalStroke : pathStrokeColor;
73
79
  return /*#__PURE__*/_react.default.cloneElement(element, {
74
- fill: fillColor ? fillColor : 'currentColor',
75
- stroke: pathStrokeColor
80
+ fill: mergedFill,
81
+ stroke: mergedStroke
76
82
  });
77
83
  };
78
84
  var _default = exports.default = /*#__PURE__*/(0, _react.memo)(/*#__PURE__*/(0, _react.forwardRef)(SVGIcon));
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireWildcard","require","_hooks","_styled","_nbSvg","_questionIconPath","_useHasResponsiveProps","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","SVG","makeStyledComponent","Svg","SVGIcon","children","props","ref","focusable","stroke","color","size","resolvedProps","usePropsResolution","strokeHex","useToken","colorHex","useHasResponsiveProps","createElement","accessibilityRole","React","Children","count","G","map","child","_child$key","ChildPath","key","element","fill","questionOutlineIconPath","pathStroke","pathStrokeColor","fillColor","cloneElement","_default","exports","memo","forwardRef"],"sources":["SVGIcon.tsx"],"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 return React.cloneElement(element, {\r\n fill: fillColor ? fillColor : 'currentColor',\r\n stroke: pathStrokeColor,\r\n });\r\n};\r\nexport default memo(forwardRef(SVGIcon));\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_hooks","_styled","_nbSvg","_questionIconPath","_useHasResponsiveProps","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","SVG","makeStyledComponent","Svg","SVGIcon","children","props","ref","focusable","stroke","color","size","resolvedProps","usePropsResolution","strokeHex","useToken","colorHex","useHasResponsiveProps","createElement","accessibilityRole","React","Children","count","G","map","child","_child$key","ChildPath","key","element","fill","questionOutlineIconPath","pathStroke","pathStrokeColor","fillColor","originalFill","originalColor","originalStroke","elementColor","mergedFill","mergedStroke","cloneElement","_default","exports","memo","forwardRef"],"sources":["SVGIcon.tsx"],"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"],"mappings":"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","ignoreList":[]}
@@ -63,9 +63,15 @@ const ChildPath = ({
63
63
  if (!element) {
64
64
  return null;
65
65
  }
66
+ const originalFill = element.props.fill;
67
+ const originalColor = element.props.color;
68
+ const originalStroke = element.props.stroke;
69
+ const elementColor = originalFill ? originalFill : originalColor ? originalColor : null;
70
+ const mergedFill = elementColor && elementColor !== 'currentColor' ? elementColor : fillColor ? fillColor : 'currentColor';
71
+ const mergedStroke = originalStroke ? originalStroke : pathStrokeColor;
66
72
  return /*#__PURE__*/React.cloneElement(element, {
67
- fill: fillColor ? fillColor : 'currentColor',
68
- stroke: pathStrokeColor
73
+ fill: mergedFill,
74
+ stroke: mergedStroke
69
75
  });
70
76
  };
71
77
  export default /*#__PURE__*/memo(/*#__PURE__*/forwardRef(SVGIcon));
@@ -1 +1 @@
1
- {"version":3,"names":["React","memo","forwardRef","useToken","usePropsResolution","makeStyledComponent","Svg","G","questionOutlineIconPath","useHasResponsiveProps","SVG","SVGIcon","children","props","ref","focusable","stroke","color","size","resolvedProps","strokeHex","colorHex","createElement","_extends","accessibilityRole","Children","count","map","child","i","_child$key","ChildPath","key","element","fill","pathStroke","pathStrokeColor","fillColor","cloneElement"],"sources":["SVGIcon.tsx"],"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 return React.cloneElement(element, {\r\n fill: fillColor ? fillColor : 'currentColor',\r\n stroke: pathStrokeColor,\r\n });\r\n};\r\nexport default memo(forwardRef(SVGIcon));\r\n"],"mappings":";AAAA,OAAOA,KAAK,IAAIC,IAAI,EAAEC,UAAU,QAAQ,OAAO;AAC/C,SAASC,QAAQ,EAAEC,kBAAkB,QAAQ,gBAAgB;AAC7D,SAASC,mBAAmB,QAAQ,uBAAuB;AAC3D,SAASC,GAAG,EAAEC,CAAC,QAAQ,SAAS;AAEhC,SAASC,uBAAuB,QAAQ,0BAA0B;AAClE,SAASC,qBAAqB,QAAQ,sCAAsC;AAE5E,MAAMC,GAAG,GAAGL,mBAAmB,CAACC,GAAG,CAAC;AAEpC,MAAMK,OAAO,GAAGA,CAAC;EAAEC,QAAQ;EAAE,GAAGC;AAAkB,CAAC,EAAEC,GAAQ,KAAK;EAChE,MAAM;IACJC,SAAS;IACTC,MAAM;IACNC,KAAK;IACLC,IAAI;IACJ,GAAGC;EACL,CAAC,GAAGf,kBAAkB,CAAC,MAAM,EAAES,KAAK,CAAC;EACrC,MAAMO,SAAS,GAAGjB,QAAQ,CAAC,QAAQ,EAAEa,MAAM,IAAI,EAAE,CAAC;EAClD,MAAMK,QAAQ,GAAGlB,QAAQ,CAAC,QAAQ,EAAEc,KAAK,IAAI,EAAE,CAAC;EAChD;EACA,IAAIR,qBAAqB,CAACI,KAAK,CAAC,EAAE;IAChC,OAAO,IAAI;EACb;EACA,oBACEb,KAAA,CAAAsB,aAAA,CAACZ,GAAG,EAAAa,QAAA,KACEJ,aAAa;IACjB;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACA;IACAD,IAAI,EAAEA,IAAK;IACXD,KAAK,EAAEI,QAAS;IAChBL,MAAM,EAAEI,SAAU;IAClBL,SAAS,EAAEA,SAAU;IACrBS,iBAAiB,EAAC;IAClB;IAAA;IACAV,GAAG,EAAEA;EAAI,IAERd,KAAK,CAACyB,QAAQ,CAACC,KAAK,CAACd,QAAQ,CAAC,GAAG,CAAC,gBACjCZ,KAAA,CAAAsB,aAAA,CAACf,CAAC,QACCP,KAAK,CAACyB,QAAQ,CAACE,GAAG,CAACf,QAAQ,EAAE,CAACgB,KAAK,EAAEC,CAAC;IAAA,IAAAC,UAAA;IAAA,oBACrC9B,KAAA,CAAAsB,aAAA,CAACS,SAAS,EAAAR,QAAA;MACRS,GAAG,GAAAF,UAAA,GAAEF,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEI,GAAG,cAAAF,UAAA,cAAAA,UAAA,GAAID,CAAE;MACrBI,OAAO,EAAEL;IAAM,GACXA,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEf,KAAK;MAChBqB,IAAI,EAAEb,QAAS;MACfL,MAAM,EAAEI;IAAU,EACnB,CAAC;EAAA,CACH,CACA,CAAC,GAEJZ,uBAEC,CAAC;AAEV,CAAC;AACD,MAAMuB,SAAS,GAAGA,CAAC;EAAEE,OAAO;EAAEC,IAAI;EAAElB,MAAM,EAAEmB;AAAgB,CAAC,KAAK;EAChE,MAAMC,eAAe,GAAGjC,QAAQ,CAAC,QAAQ,EAAEgC,UAAU,IAAI,EAAE,CAAC;EAC5D,MAAME,SAAS,GAAGlC,QAAQ,CAAC,QAAQ,EAAE+B,IAAI,IAAI,EAAE,CAAC;EAEhD,IAAI,CAACD,OAAO,EAAE;IACZ,OAAO,IAAI;EACb;EAEA,oBAAOjC,KAAK,CAACsC,YAAY,CAACL,OAAO,EAAE;IACjCC,IAAI,EAAEG,SAAS,GAAGA,SAAS,GAAG,cAAc;IAC5CrB,MAAM,EAAEoB;EACV,CAAC,CAAC;AACJ,CAAC;AACD,4BAAenC,IAAI,cAACC,UAAU,CAACS,OAAO,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["React","memo","forwardRef","useToken","usePropsResolution","makeStyledComponent","Svg","G","questionOutlineIconPath","useHasResponsiveProps","SVG","SVGIcon","children","props","ref","focusable","stroke","color","size","resolvedProps","strokeHex","colorHex","createElement","_extends","accessibilityRole","Children","count","map","child","i","_child$key","ChildPath","key","element","fill","pathStroke","pathStrokeColor","fillColor","originalFill","originalColor","originalStroke","elementColor","mergedFill","mergedStroke","cloneElement"],"sources":["SVGIcon.tsx"],"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"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -15,6 +15,7 @@
15
15
  "scripts": {
16
16
  "test": "node_modules/.bin/jest",
17
17
  "typescript": "tsc --noEmit",
18
+ "prepare": "bob build",
18
19
  "release": "release-it",
19
20
  "example": "yarn --cwd example",
20
21
  "pods": "cd example && pod-install --quiet",
@@ -34,7 +35,7 @@
34
35
  "prettier --write"
35
36
  ]
36
37
  },
37
- "version": "3.4.29-rc.2",
38
+ "version": "3.5.0",
38
39
  "license": "MIT",
39
40
  "private": false,
40
41
  "main": "lib/commonjs/index",
@@ -171,7 +172,9 @@
171
172
  [
172
173
  "module"
173
174
  ],
174
- "typescript"
175
+ [
176
+ "typescript"
177
+ ]
175
178
  ]
176
179
  },
177
180
  "dependencies": {
@@ -69,9 +69,16 @@ const ChildPath = ({ element, fill, stroke: pathStroke }: any) => {
69
69
  return null;
70
70
  }
71
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
+
72
79
  return React.cloneElement(element, {
73
- fill: fillColor ? fillColor : 'currentColor',
74
- stroke: pathStrokeColor,
80
+ fill: mergedFill,
81
+ stroke: mergedStroke,
75
82
  });
76
83
  };
77
84
  export default memo(forwardRef(SVGIcon));