UNPKG

18.8 kBSource Map (JSON)View Raw
1{"version":3,"sources":["ReactNativeSVG.web.ts"],"names":["React","SvgTouchableMixin","resolve","createElement","require","unstable_createElement","prepare","self","props","translate","scale","rotation","skewX","skewY","originX","originY","fontFamily","fontSize","fontWeight","fontStyle","style","forwardedRef","onPress","onPressIn","onPressOut","onLongPress","rest","hasTouchableProperty","clean","onStartShouldSetResponder","touchableHandleStartShouldSetResponder","onResponderTerminationRequest","touchableHandleResponderTerminationRequest","onResponderGrant","touchableHandleResponderGrant","onResponderMove","touchableHandleResponderMove","onResponderRelease","touchableHandleResponderRelease","onResponderTerminate","touchableHandleResponderTerminate","transform","push","length","join","ref","styles","getBoundingClientRect","node","isElement","nodeType","measureLayout","callback","relativeNode","parentNode","setTimeout","relativeRect","height","left","top","width","x","y","remeasure","tag","state","touchable","responderID","_handleQueryLayout","WebShape","context","_remeasureMetricsOnActivation","bind","Component","Circle","ClipPath","Defs","Ellipse","G","Image","Line","LinearGradient","Path","Polygon","Polyline","RadialGradient","Rect","Stop","Svg","Symbol","Text","TSpan","TextPath","Use","Mask","ForeignObject","Marker","Pattern"],"mappings":"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","sourcesContent":["// @ts-ignore\nimport * as React from 'react';\nimport { GestureResponderEvent } from 'react-native';\nimport { NumberArray, NumberProp } from './lib/extract/types';\nimport SvgTouchableMixin from './lib/SvgTouchableMixin';\nimport { resolve } from './lib/resolve';\n\nconst createElement: <P>(\n type: React.ReactType,\n props?: P,\n ...children: React.ReactNode[]\n) => React.ReactElement<P> =\n require('react-native').unstable_createElement ||\n require('react-native').createElement;\n\ntype BlurEvent = Object;\ntype FocusEvent = Object;\ntype PressEvent = Object;\ntype LayoutEvent = Object;\ntype EdgeInsetsProp = Object;\n\ninterface BaseProps {\n accessible?: boolean;\n accessibilityLabel?: string;\n accessibilityHint?: string;\n accessibilityIgnoresInvertColors?: boolean;\n accessibilityRole?: string;\n accessibilityState?: Object;\n delayLongPress?: number;\n delayPressIn?: number;\n delayPressOut?: number;\n disabled?: boolean;\n hitSlop?: EdgeInsetsProp;\n nativeID?: string;\n touchSoundDisabled?: boolean;\n onBlur?: (e: BlurEvent) => void;\n onFocus?: (e: FocusEvent) => void;\n onLayout?: (event: LayoutEvent) => object;\n onLongPress?: (event: PressEvent) => object;\n onClick?: (event: PressEvent) => object;\n onPress?: (event: PressEvent) => object;\n onPressIn?: (event: PressEvent) => object;\n onPressOut?: (event: PressEvent) => object;\n pressRetentionOffset?: EdgeInsetsProp;\n rejectResponderTermination?: boolean;\n\n translate: NumberArray;\n scale: NumberArray;\n rotation: NumberArray;\n skewX: NumberProp;\n skewY: NumberProp;\n originX: NumberProp;\n originY: NumberProp;\n\n fontStyle?: string;\n fontWeight?: NumberProp;\n fontSize?: NumberProp;\n fontFamily?: string;\n forwardedRef: {};\n style: Iterable<{}>;\n}\n\n/**\n * `react-native-svg` supports additional props that aren't defined in the spec.\n * This function replaces them in a spec conforming manner.\n *\n * @param {WebShape} self Instance given to us.\n * @param {Object?} props Optional overridden props given to us.\n * @returns {Object} Cleaned props object.\n * @private\n */\nconst prepare = <T extends BaseProps>(\n self: WebShape<T>,\n props = self.props,\n) => {\n const {\n translate,\n scale,\n rotation,\n skewX,\n skewY,\n originX,\n originY,\n fontFamily,\n fontSize,\n fontWeight,\n fontStyle,\n style,\n forwardedRef,\n onPress,\n onPressIn,\n onPressOut,\n onLongPress,\n // @ts-ignore\n ...rest\n } = props;\n const hasTouchableProperty =\n onPress || onPressIn || onPressOut || onLongPress;\n const clean: {\n onStartShouldSetResponder?: (e: GestureResponderEvent) => boolean;\n onResponderMove?: (e: GestureResponderEvent) => void;\n onResponderGrant?: (e: GestureResponderEvent) => void;\n onResponderRelease?: (e: GestureResponderEvent) => void;\n onResponderTerminate?: (e: GestureResponderEvent) => void;\n onResponderTerminationRequest?: (e: GestureResponderEvent) => boolean;\n transform?: string;\n style?: {};\n ref?: {};\n } = {\n ...(hasTouchableProperty\n ? {\n onStartShouldSetResponder:\n self.touchableHandleStartShouldSetResponder,\n onResponderTerminationRequest:\n self.touchableHandleResponderTerminationRequest,\n onResponderGrant: self.touchableHandleResponderGrant,\n onResponderMove: self.touchableHandleResponderMove,\n onResponderRelease: self.touchableHandleResponderRelease,\n onResponderTerminate: self.touchableHandleResponderTerminate,\n }\n : null),\n ...rest,\n };\n\n const transform = [];\n\n if (originX != null || originY != null) {\n transform.push(`translate(${originX || 0}, ${originY || 0})`);\n }\n if (translate != null) {\n transform.push(`translate(${translate})`);\n }\n if (scale != null) {\n transform.push(`scale(${scale})`);\n }\n // rotation maps to rotate, not to collide with the text rotate attribute (which acts per glyph rather than block)\n if (rotation != null) {\n transform.push(`rotate(${rotation})`);\n }\n if (skewX != null) {\n transform.push(`skewX(${skewX})`);\n }\n if (skewY != null) {\n transform.push(`skewY(${skewY})`);\n }\n if (originX != null || originY != null) {\n transform.push(`translate(${-originX || 0}, ${-originY || 0})`);\n }\n\n if (transform.length) {\n clean.transform = transform.join(' ');\n }\n\n if (forwardedRef) {\n clean.ref = forwardedRef;\n }\n\n const styles: {\n fontStyle?: string;\n fontFamily?: string;\n fontSize?: NumberProp;\n fontWeight?: NumberProp;\n } = {};\n\n if (fontFamily != null) {\n styles.fontFamily = fontFamily;\n }\n if (fontSize != null) {\n styles.fontSize = fontSize;\n }\n if (fontWeight != null) {\n styles.fontWeight = fontWeight;\n }\n if (fontStyle != null) {\n styles.fontStyle = fontStyle;\n }\n\n clean.style = resolve(style, styles);\n\n return clean;\n};\n\nconst getBoundingClientRect = (node: SVGElement) => {\n if (node) {\n // @ts-ignore\n const isElement = node.nodeType === 1; /* Node.ELEMENT_NODE */\n // @ts-ignore\n if (isElement && typeof node.getBoundingClientRect === 'function') {\n // @ts-ignore\n return node.getBoundingClientRect();\n }\n }\n};\n\nconst measureLayout = (\n node: SVGElement,\n callback: (\n x: number,\n y: number,\n width: number,\n height: number,\n left: number,\n top: number,\n ) => void,\n) => {\n // @ts-ignore\n const relativeNode = node && node.parentNode;\n if (relativeNode) {\n setTimeout(() => {\n // @ts-ignore\n const relativeRect = getBoundingClientRect(relativeNode);\n const { height, left, top, width } = getBoundingClientRect(node);\n const x = left - relativeRect.left;\n const y = top - relativeRect.top;\n callback(x, y, width, height, left, top);\n }, 0);\n }\n};\n\nfunction remeasure() {\n // @ts-ignore\n const tag = this.state.touchable.responderID;\n if (tag == null) {\n return;\n }\n // @ts-ignore\n measureLayout(tag, this._handleQueryLayout);\n}\n\nexport class WebShape<\n P extends BaseProps = BaseProps,\n C = {}\n> extends React.Component<P, C> {\n [x: string]: unknown;\n _remeasureMetricsOnActivation: () => void;\n touchableHandleStartShouldSetResponder?: (\n e: GestureResponderEvent,\n ) => boolean;\n touchableHandleResponderMove?: (e: GestureResponderEvent) => void;\n touchableHandleResponderGrant?: (e: GestureResponderEvent) => void;\n touchableHandleResponderRelease?: (e: GestureResponderEvent) => void;\n touchableHandleResponderTerminate?: (e: GestureResponderEvent) => void;\n touchableHandleResponderTerminationRequest?: (\n e: GestureResponderEvent,\n ) => boolean;\n constructor(props: P, context: C) {\n super(props, context);\n SvgTouchableMixin(this);\n this._remeasureMetricsOnActivation = remeasure.bind(this);\n }\n}\n\nexport class Circle extends WebShape {\n render(): JSX.Element {\n return createElement('circle', prepare(this));\n }\n}\n\nexport class ClipPath extends WebShape {\n render(): JSX.Element {\n return createElement('clipPath', prepare(this));\n }\n}\n\nexport class Defs extends WebShape {\n render(): JSX.Element {\n return createElement('defs', prepare(this));\n }\n}\n\nexport class Ellipse extends WebShape {\n render(): JSX.Element {\n return createElement('ellipse', prepare(this));\n }\n}\n\nexport class G extends WebShape<\n BaseProps & {\n x?: NumberProp;\n y?: NumberProp;\n translate?: string;\n }\n> {\n render(): JSX.Element {\n const { x, y, ...rest } = this.props;\n\n if ((x || y) && !rest.translate) {\n rest.translate = `${x || 0}, ${y || 0}`;\n }\n\n return createElement('g', prepare(this, rest));\n }\n}\n\nexport class Image extends WebShape {\n render(): JSX.Element {\n return createElement('image', prepare(this));\n }\n}\n\nexport class Line extends WebShape {\n render(): JSX.Element {\n return createElement('line', prepare(this));\n }\n}\n\nexport class LinearGradient extends WebShape {\n render(): JSX.Element {\n return createElement('linearGradient', prepare(this));\n }\n}\n\nexport class Path extends WebShape {\n render(): JSX.Element {\n return createElement('path', prepare(this));\n }\n}\n\nexport class Polygon extends WebShape {\n render(): JSX.Element {\n return createElement('polygon', prepare(this));\n }\n}\n\nexport class Polyline extends WebShape {\n render(): JSX.Element {\n return createElement('polyline', prepare(this));\n }\n}\n\nexport class RadialGradient extends WebShape {\n render(): JSX.Element {\n return createElement('radialGradient', prepare(this));\n }\n}\n\nexport class Rect extends WebShape {\n render(): JSX.Element {\n return createElement('rect', prepare(this));\n }\n}\n\nexport class Stop extends WebShape {\n render(): JSX.Element {\n return createElement('stop', prepare(this));\n }\n}\n\nexport class Svg extends WebShape {\n render(): JSX.Element {\n return createElement('svg', prepare(this));\n }\n}\n\nexport class Symbol extends WebShape {\n render(): JSX.Element {\n return createElement('symbol', prepare(this));\n }\n}\n\nexport class Text extends WebShape {\n render(): JSX.Element {\n return createElement('text', prepare(this));\n }\n}\n\nexport class TSpan extends WebShape {\n render(): JSX.Element {\n return createElement('tspan', prepare(this));\n }\n}\n\nexport class TextPath extends WebShape {\n render(): JSX.Element {\n return createElement('textPath', prepare(this));\n }\n}\n\nexport class Use extends WebShape {\n render(): JSX.Element {\n return createElement('use', prepare(this));\n }\n}\n\nexport class Mask extends WebShape {\n render(): JSX.Element {\n return createElement('mask', prepare(this));\n }\n}\n\nexport class ForeignObject extends WebShape {\n render(): JSX.Element {\n return createElement('foreignObject', prepare(this));\n }\n}\n\nexport class Marker extends WebShape {\n render(): JSX.Element {\n return createElement('marker', prepare(this));\n }\n}\n\nexport class Pattern extends WebShape {\n render(): JSX.Element {\n return createElement('pattern', prepare(this));\n }\n}\n\nexport default Svg;\n"]}
\No newline at end of file