mirror of
https://github.com/zoriya/react-native-svg.git
synced 2026-06-05 07:59:28 +00:00
Fix linting, make Polygon and Polyline extend Shape
This commit is contained in:
+4
-4
@@ -1,7 +1,7 @@
|
||||
import React from "react";
|
||||
import PropTypes from "prop-types";
|
||||
import { Image, requireNativeComponent } from "react-native";
|
||||
import ImageSourcePropType from 'react-native/Libraries/Image/ImageSourcePropType';
|
||||
import ImageSourcePropType from "react-native/Libraries/Image/ImageSourcePropType";
|
||||
import { ImageAttributes } from "../lib/attributes";
|
||||
import { numberProp, touchableProps, responderProps } from "../lib/props";
|
||||
import Shape from "./Shape";
|
||||
@@ -20,7 +20,7 @@ export default class extends Shape {
|
||||
width: numberProp.isRequired,
|
||||
height: numberProp.isRequired,
|
||||
href: ImageSourcePropType,
|
||||
preserveAspectRatio: PropTypes.string
|
||||
preserveAspectRatio: PropTypes.string,
|
||||
};
|
||||
|
||||
static defaultProps = {
|
||||
@@ -28,7 +28,7 @@ export default class extends Shape {
|
||||
y: 0,
|
||||
width: 0,
|
||||
height: 0,
|
||||
preserveAspectRatio: "xMidYMid meet"
|
||||
preserveAspectRatio: "xMidYMid meet",
|
||||
};
|
||||
|
||||
setNativeProps = (...args) => {
|
||||
@@ -60,5 +60,5 @@ export default class extends Shape {
|
||||
}
|
||||
|
||||
const RNSVGImage = requireNativeComponent("RNSVGImage", null, {
|
||||
nativeOnly: ImageAttributes
|
||||
nativeOnly: ImageAttributes,
|
||||
});
|
||||
|
||||
+18
-14
@@ -1,13 +1,13 @@
|
||||
import React, { Component } from "react";
|
||||
import PropTypes from 'prop-types';
|
||||
import PropTypes from "prop-types";
|
||||
import { requireNativeComponent } from "react-native";
|
||||
import { numberProp } from '../lib/props';
|
||||
import PATTERN_UNITS from '../lib/PATTERN_UNITS';
|
||||
import { MaskAttributes } from '../lib/attributes';
|
||||
import extractTransform from '../lib/extract/extractTransform';
|
||||
import { numberProp } from "../lib/props";
|
||||
import PATTERN_UNITS from "../lib/PATTERN_UNITS";
|
||||
import { MaskAttributes } from "../lib/attributes";
|
||||
import extractTransform from "../lib/extract/extractTransform";
|
||||
|
||||
export default class extends Component {
|
||||
static displayName = 'Mask';
|
||||
static displayName = "Mask";
|
||||
static propTypes = {
|
||||
id: PropTypes.string.isRequired,
|
||||
x: numberProp,
|
||||
@@ -15,10 +15,10 @@ export default class extends Component {
|
||||
width: numberProp,
|
||||
height: numberProp,
|
||||
maskTransform: PropTypes.string,
|
||||
maskUnits: PropTypes.oneOf(['userSpaceOnUse', 'objectBoundingBox']),
|
||||
maskUnits: PropTypes.oneOf(["userSpaceOnUse", "objectBoundingBox"]),
|
||||
maskContentUnits: PropTypes.oneOf([
|
||||
'userSpaceOnUse',
|
||||
'objectBoundingBox',
|
||||
"userSpaceOnUse",
|
||||
"objectBoundingBox",
|
||||
]),
|
||||
};
|
||||
|
||||
@@ -35,8 +35,6 @@ export default class extends Component {
|
||||
maskUnits,
|
||||
maskContentUnits,
|
||||
children,
|
||||
viewBox,
|
||||
preserveAspectRatio,
|
||||
} = props;
|
||||
|
||||
let extractedTransform;
|
||||
@@ -57,8 +55,14 @@ export default class extends Component {
|
||||
maskheight={`${height}`}
|
||||
matrix={extractedTransform}
|
||||
maskTransform={extractedTransform}
|
||||
maskUnits={maskUnits !== undefined ? PATTERN_UNITS[maskUnits] : 0}
|
||||
maskContentUnits={maskContentUnits !== undefined ? PATTERN_UNITS[maskContentUnits] : 1}
|
||||
maskUnits={
|
||||
maskUnits !== undefined ? PATTERN_UNITS[maskUnits] : 0
|
||||
}
|
||||
maskContentUnits={
|
||||
maskContentUnits !== undefined
|
||||
? PATTERN_UNITS[maskContentUnits]
|
||||
: 1
|
||||
}
|
||||
>
|
||||
{children}
|
||||
</RNSVGMask>
|
||||
@@ -66,6 +70,6 @@ export default class extends Component {
|
||||
}
|
||||
}
|
||||
|
||||
const RNSVGMask = requireNativeComponent('RNSVGMask', null, {
|
||||
const RNSVGMask = requireNativeComponent("RNSVGMask", null, {
|
||||
nativeOnly: MaskAttributes,
|
||||
});
|
||||
|
||||
+14
-12
@@ -1,14 +1,14 @@
|
||||
import React, { Component } from "react";
|
||||
import PropTypes from 'prop-types';
|
||||
import PropTypes from "prop-types";
|
||||
import { requireNativeComponent } from "react-native";
|
||||
import { numberProp } from '../lib/props';
|
||||
import PATTERN_UNITS from '../lib/PATTERN_UNITS';
|
||||
import { PatternAttributes } from '../lib/attributes';
|
||||
import extractTransform from '../lib/extract/extractTransform';
|
||||
import { numberProp } from "../lib/props";
|
||||
import PATTERN_UNITS from "../lib/PATTERN_UNITS";
|
||||
import { PatternAttributes } from "../lib/attributes";
|
||||
import extractTransform from "../lib/extract/extractTransform";
|
||||
import extractViewBox from "react-native-svg/lib/extract/extractViewBox";
|
||||
|
||||
export default class extends Component {
|
||||
static displayName = 'Pattern';
|
||||
static displayName = "Pattern";
|
||||
static propTypes = {
|
||||
id: PropTypes.string.isRequired,
|
||||
x: numberProp,
|
||||
@@ -16,13 +16,13 @@ export default class extends Component {
|
||||
width: numberProp,
|
||||
height: numberProp,
|
||||
patternTransform: PropTypes.string,
|
||||
patternUnits: PropTypes.oneOf(['userSpaceOnUse', 'objectBoundingBox']),
|
||||
patternUnits: PropTypes.oneOf(["userSpaceOnUse", "objectBoundingBox"]),
|
||||
patternContentUnits: PropTypes.oneOf([
|
||||
'userSpaceOnUse',
|
||||
'objectBoundingBox',
|
||||
"userSpaceOnUse",
|
||||
"objectBoundingBox",
|
||||
]),
|
||||
viewBox: PropTypes.string,
|
||||
preserveAspectRatio: PropTypes.string
|
||||
preserveAspectRatio: PropTypes.string,
|
||||
};
|
||||
|
||||
render() {
|
||||
@@ -61,7 +61,9 @@ export default class extends Component {
|
||||
matrix={extractedTransform}
|
||||
patternTransform={extractedTransform}
|
||||
patternUnits={PATTERN_UNITS[patternUnits] || 0}
|
||||
patternContentUnits={patternContentUnits ? PATTERN_UNITS[patternContentUnits] : 1}
|
||||
patternContentUnits={
|
||||
patternContentUnits ? PATTERN_UNITS[patternContentUnits] : 1
|
||||
}
|
||||
{...extractViewBox({ viewBox, preserveAspectRatio })}
|
||||
>
|
||||
{children}
|
||||
@@ -70,6 +72,6 @@ export default class extends Component {
|
||||
}
|
||||
}
|
||||
|
||||
const RNSVGPattern = requireNativeComponent('RNSVGPattern', null, {
|
||||
const RNSVGPattern = requireNativeComponent("RNSVGPattern", null, {
|
||||
nativeOnly: PatternAttributes,
|
||||
});
|
||||
|
||||
+5
-4
@@ -1,10 +1,11 @@
|
||||
import React, { Component } from "react";
|
||||
import React from "react";
|
||||
import PropTypes from "prop-types";
|
||||
import Path from "./Path";
|
||||
import { pathProps } from "../lib/props";
|
||||
import extractPolyPoints from "../lib/extract/extractPolyPoints";
|
||||
import Shape from "./Shape";
|
||||
|
||||
export default class extends Component {
|
||||
export default class extends Shape {
|
||||
static displayName = "Polygon";
|
||||
static propTypes = {
|
||||
...pathProps,
|
||||
@@ -18,12 +19,12 @@ export default class extends Component {
|
||||
|
||||
setNativeProps = (...args) => {
|
||||
//noinspection JSUnresolvedFunction
|
||||
var points = [...args][0].points;
|
||||
let points = [...args][0].points;
|
||||
if (points) {
|
||||
if (Array.isArray(points)) {
|
||||
points = points.join(",");
|
||||
}
|
||||
[...args][0].d = `M${extractPolyPoints(points)}`
|
||||
[...args][0].d = `M${extractPolyPoints(points)}`;
|
||||
}
|
||||
this.root.setNativeProps(...args);
|
||||
};
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
import React, { Component } from "react";
|
||||
import React from "react";
|
||||
import PropTypes from "prop-types";
|
||||
import Path from "./Path";
|
||||
import { pathProps } from "../lib/props";
|
||||
import extractPolyPoints from "../lib/extract/extractPolyPoints";
|
||||
import Shape from "./Shape";
|
||||
|
||||
export default class extends Component {
|
||||
export default class extends Shape {
|
||||
static displayName = "Polyline";
|
||||
static propTypes = {
|
||||
...pathProps,
|
||||
@@ -18,12 +19,12 @@ export default class extends Component {
|
||||
|
||||
setNativeProps = (...args) => {
|
||||
//noinspection JSUnresolvedFunction
|
||||
var points = [...args][0].points;
|
||||
let points = [...args][0].points;
|
||||
if (points) {
|
||||
if (Array.isArray(points)) {
|
||||
points = points.join(",");
|
||||
}
|
||||
[...args][0].d = `M${extractPolyPoints(points)}`
|
||||
[...args][0].d = `M${extractPolyPoints(points)}`;
|
||||
}
|
||||
this.root.setNativeProps(...args);
|
||||
};
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
//noinspection JSUnresolvedVariable
|
||||
import React, { Component } from "react";
|
||||
import React from "react";
|
||||
import PropTypes from "prop-types";
|
||||
import {
|
||||
ViewPropTypes,
|
||||
|
||||
@@ -6,8 +6,8 @@ export default function(colorOrBrush) {
|
||||
return null;
|
||||
}
|
||||
|
||||
if (colorOrBrush === 'currentColor') {
|
||||
return [2]
|
||||
if (colorOrBrush === "currentColor") {
|
||||
return [2];
|
||||
}
|
||||
try {
|
||||
let matched = colorOrBrush.match(patternReg);
|
||||
|
||||
@@ -6,7 +6,6 @@ import extractOpacity from "./extractOpacity";
|
||||
import extractTransform from "./extractTransform";
|
||||
import PATTERN_UNITS from "../PATTERN_UNITS";
|
||||
import percentToFloat from "../percentToFloat";
|
||||
import Stop from "../../elements/Stop";
|
||||
|
||||
export default function(props) {
|
||||
if (!props.id) {
|
||||
|
||||
@@ -84,7 +84,7 @@ export function extractFont(prop) {
|
||||
fontVariantLigatures,
|
||||
fontFeatureSettings
|
||||
},
|
||||
prop => !_.isNil(prop)
|
||||
p => !_.isNil(p)
|
||||
);
|
||||
|
||||
if (typeof font === "string") {
|
||||
|
||||
Reference in New Issue
Block a user