react-native-svg
Version:
SVG library for react-native
2 lines • 3.39 kB
JavaScript
;var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(exports,"__esModule",{value:true});exports.default=void 0;var _extends2=_interopRequireDefault(require("@babel/runtime/helpers/extends"));var _classCallCheck2=_interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));var _createClass2=_interopRequireDefault(require("@babel/runtime/helpers/createClass"));var _inherits2=_interopRequireDefault(require("@babel/runtime/helpers/inherits"));var _possibleConstructorReturn2=_interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));var _getPrototypeOf2=_interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));var _defineProperty2=_interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));var _react=_interopRequireDefault(require("react"));var _reactNative=require("react-native");var _extractViewBox=require("../lib/extract/extractViewBox");var _extractProps=require("../lib/extract/extractProps");var _Shape2=_interopRequireDefault(require("./Shape"));var _NativeComponents=require("./NativeComponents");var _jsxFileName="/Users/wojciechlewicki/work/deeper/react-native-svg/src/elements/Image.tsx";function _createSuper(Derived){var hasNativeReflectConstruct=_isNativeReflectConstruct();return function _createSuperInternal(){var Super=(0,_getPrototypeOf2.default)(Derived),result;if(hasNativeReflectConstruct){var NewTarget=(0,_getPrototypeOf2.default)(this).constructor;result=Reflect.construct(Super,arguments,NewTarget);}else{result=Super.apply(this,arguments);}return(0,_possibleConstructorReturn2.default)(this,result);};}function _isNativeReflectConstruct(){if(typeof Reflect==="undefined"||!Reflect.construct)return false;if(Reflect.construct.sham)return false;if(typeof Proxy==="function")return true;try{Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}));return true;}catch(e){return false;}}var spacesRegExp=/\s+/;var SvgImage=function(_Shape){(0,_inherits2.default)(SvgImage,_Shape);var _super=_createSuper(SvgImage);function SvgImage(){(0,_classCallCheck2.default)(this,SvgImage);return _super.apply(this,arguments);}(0,_createClass2.default)(SvgImage,[{key:"render",value:function render(){var props=this.props;var preserveAspectRatio=props.preserveAspectRatio,x=props.x,y=props.y,width=props.width,height=props.height,xlinkHref=props.xlinkHref,_props$href=props.href,href=_props$href===void 0?xlinkHref:_props$href;var modes=preserveAspectRatio?preserveAspectRatio.trim().split(spacesRegExp):[];var align=modes[0];var meetOrSlice=modes[1];var imageProps={x:x,y:y,width:width,height:height,meetOrSlice:_extractViewBox.meetOrSliceTypes[meetOrSlice]||0,align:_extractViewBox.alignEnum[align]||'xMidYMid',src:!href?null:_reactNative.Image.resolveAssetSource(typeof href==='string'?{uri:href}:href)};return _react.default.createElement(_NativeComponents.RNSVGImage,(0,_extends2.default)({ref:this.refMethod},(0,_extractProps.withoutXY)(this,props),imageProps,{__self:this,__source:{fileName:_jsxFileName,lineNumber:78,columnNumber:7}}));}}]);return SvgImage;}(_Shape2.default);exports.default=SvgImage;(0,_defineProperty2.default)(SvgImage,"displayName",'Image');(0,_defineProperty2.default)(SvgImage,"defaultProps",{x:0,y:0,width:0,height:0,preserveAspectRatio:'xMidYMid meet'});
//# sourceMappingURL=Image.js.map