react-svg 14.1.19 → 15.0.2
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/dist/react-svg.cjs.development.js.map +1 -1
- package/dist/react-svg.cjs.production.js.map +1 -1
- package/dist/react-svg.esm.js.map +1 -1
- package/dist/react-svg.umd.development.js +816 -848
- package/dist/react-svg.umd.development.js.map +1 -1
- package/dist/react-svg.umd.production.js +1 -1
- package/dist/react-svg.umd.production.js.map +1 -1
- package/dist/types.d.ts +2 -2
- package/package.json +45 -36
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-svg.cjs.development.js","sources":["../compiled/shallow-differs.js","../compiled/ReactSVG.js"],"sourcesContent":["// Hat-tip: https://github.com/developit/preact-compat/blob/master/src/index.js#L402.\nconst shallowDiffers = (a, b) => {\n for (const i in a) {\n if (!(i in b)) {\n return true;\n }\n }\n for (const i in b) {\n if (a[i] !== b[i]) {\n return true;\n }\n }\n return false;\n};\nexport default shallowDiffers;\n","import { SVGInjector } from '@tanem/svg-injector';\nimport * as PropTypes from 'prop-types';\nimport * as React from 'react';\nimport shallowDiffers from './shallow-differs';\nconst svgNamespace = 'http://www.w3.org/2000/svg';\nconst xlinkNamespace = 'http://www.w3.org/1999/xlink';\nexport class ReactSVG extends React.Component {\n static defaultProps = {\n afterInjection: () => undefined,\n beforeInjection: () => undefined,\n evalScripts: 'never',\n fallback: null,\n httpRequestWithCredentials: false,\n loading: null,\n renumerateIRIElements: true,\n useRequestCache: true,\n wrapper: 'div',\n };\n static propTypes = {\n afterInjection: PropTypes.func,\n beforeInjection: PropTypes.func,\n evalScripts: PropTypes.oneOf(['always', 'once', 'never']),\n fallback: PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.object,\n PropTypes.string,\n ]),\n httpRequestWithCredentials: PropTypes.bool,\n loading: PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.object,\n PropTypes.string,\n ]),\n renumerateIRIElements: PropTypes.bool,\n src: PropTypes.string.isRequired,\n useRequestCache: PropTypes.bool,\n wrapper: PropTypes.oneOf(['div', 'span', 'svg']),\n };\n initialState = {\n hasError: false,\n isLoading: true,\n };\n state = this.initialState;\n _isMounted = false;\n reactWrapper;\n nonReactWrapper;\n refCallback = (reactWrapper) => {\n this.reactWrapper = reactWrapper;\n };\n renderSVG() {\n /* istanbul ignore else */\n if (this.reactWrapper instanceof Node) {\n const { beforeInjection, evalScripts, httpRequestWithCredentials, renumerateIRIElements, src, useRequestCache, } = this.props;\n /* eslint-disable @typescript-eslint/no-non-null-assertion */\n const afterInjection = this.props.afterInjection;\n const wrapper = this.props.wrapper;\n /* eslint-enable @typescript-eslint/no-non-null-assertion */\n let nonReactWrapper;\n let nonReactTarget;\n if (wrapper === 'svg') {\n nonReactWrapper = document.createElementNS(svgNamespace, wrapper);\n nonReactWrapper.setAttribute('xmlns', svgNamespace);\n nonReactWrapper.setAttribute('xmlns:xlink', xlinkNamespace);\n nonReactTarget = document.createElementNS(svgNamespace, wrapper);\n }\n else {\n nonReactWrapper = document.createElement(wrapper);\n nonReactTarget = document.createElement(wrapper);\n }\n nonReactWrapper.appendChild(nonReactTarget);\n nonReactTarget.dataset.src = src;\n this.nonReactWrapper = this.reactWrapper.appendChild(nonReactWrapper);\n const afterEach = (error, svg) => {\n if (error) {\n this.removeSVG();\n if (!this._isMounted) {\n afterInjection(error);\n return;\n }\n }\n // TODO (Tane): It'd be better to cleanly unsubscribe from SVGInjector\n // callbacks instead of tracking a property like this.\n if (this._isMounted) {\n this.setState(() => ({\n hasError: !!error,\n isLoading: false,\n }), () => {\n afterInjection(error, svg);\n });\n }\n };\n SVGInjector(nonReactTarget, {\n afterEach,\n beforeEach: beforeInjection,\n cacheRequests: useRequestCache,\n evalScripts,\n httpRequestWithCredentials,\n renumerateIRIElements,\n });\n }\n }\n removeSVG() {\n if (this.nonReactWrapper?.parentNode) {\n this.nonReactWrapper.parentNode.removeChild(this.nonReactWrapper);\n this.nonReactWrapper = null;\n }\n }\n componentDidMount() {\n this._isMounted = true;\n this.renderSVG();\n }\n componentDidUpdate(prevProps) {\n if (shallowDiffers(prevProps, this.props)) {\n this.setState(() => this.initialState, () => {\n this.removeSVG();\n this.renderSVG();\n });\n }\n }\n componentWillUnmount() {\n this._isMounted = false;\n this.removeSVG();\n }\n render() {\n /* eslint-disable @typescript-eslint/no-unused-vars */\n const { afterInjection, beforeInjection, evalScripts, fallback: Fallback, httpRequestWithCredentials, loading: Loading, renumerateIRIElements, src, useRequestCache, wrapper, ...rest } = this.props;\n /* eslint-enable @typescript-eslint/no-unused-vars */\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const Wrapper = wrapper;\n return (React.createElement(Wrapper, { ...rest, ref: this.refCallback, ...(wrapper === 'svg'\n ? {\n xmlns: svgNamespace,\n xmlnsXlink: xlinkNamespace,\n }\n : {}) },\n this.state.isLoading && Loading && React.createElement(Loading, null),\n this.state.hasError && Fallback && React.createElement(Fallback, null)));\n }\n}\n"],"names":["shallowDiffers","a","b","i","svgNamespace","xlinkNamespace","ReactSVG","_inheritsLoose","initialState","hasError","isLoading","state","_isMounted","reactWrapper","nonReactWrapper","refCallback","renderSVG","Node","props","beforeInjection","evalScripts","httpRequestWithCredentials","renumerateIRIElements","src","useRequestCache","afterInjection","wrapper","nonReactTarget","document","createElementNS","setAttribute","createElement","appendChild","dataset","afterEach","error","svg","removeSVG","setState","SVGInjector","beforeEach","cacheRequests","parentNode","removeChild","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","render","Fallback","fallback","Loading","loading","rest","_objectWithoutPropertiesLoose","Wrapper","React","ref","xmlns","xmlnsXlink","Component","defaultProps","undefined","propTypes","PropTypes","func","oneOf","oneOfType","object","string","bool","isRequired"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"react-svg.cjs.development.js","sources":["../compiled/shallow-differs.js","../compiled/ReactSVG.js"],"sourcesContent":["// Hat-tip: https://github.com/developit/preact-compat/blob/master/src/index.js#L402.\nconst shallowDiffers = (a, b) => {\n for (const i in a) {\n if (!(i in b)) {\n return true;\n }\n }\n for (const i in b) {\n if (a[i] !== b[i]) {\n return true;\n }\n }\n return false;\n};\nexport default shallowDiffers;\n","import { SVGInjector } from '@tanem/svg-injector';\nimport * as PropTypes from 'prop-types';\nimport * as React from 'react';\nimport shallowDiffers from './shallow-differs';\nconst svgNamespace = 'http://www.w3.org/2000/svg';\nconst xlinkNamespace = 'http://www.w3.org/1999/xlink';\nexport class ReactSVG extends React.Component {\n static defaultProps = {\n afterInjection: () => undefined,\n beforeInjection: () => undefined,\n evalScripts: 'never',\n fallback: null,\n httpRequestWithCredentials: false,\n loading: null,\n renumerateIRIElements: true,\n useRequestCache: true,\n wrapper: 'div',\n };\n static propTypes = {\n afterInjection: PropTypes.func,\n beforeInjection: PropTypes.func,\n evalScripts: PropTypes.oneOf(['always', 'once', 'never']),\n fallback: PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.object,\n PropTypes.string,\n ]),\n httpRequestWithCredentials: PropTypes.bool,\n loading: PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.object,\n PropTypes.string,\n ]),\n renumerateIRIElements: PropTypes.bool,\n src: PropTypes.string.isRequired,\n useRequestCache: PropTypes.bool,\n wrapper: PropTypes.oneOf(['div', 'span', 'svg']),\n };\n initialState = {\n hasError: false,\n isLoading: true,\n };\n state = this.initialState;\n _isMounted = false;\n reactWrapper;\n nonReactWrapper;\n refCallback = (reactWrapper) => {\n this.reactWrapper = reactWrapper;\n };\n renderSVG() {\n /* istanbul ignore else */\n if (this.reactWrapper instanceof Node) {\n const { beforeInjection, evalScripts, httpRequestWithCredentials, renumerateIRIElements, src, useRequestCache, } = this.props;\n /* eslint-disable @typescript-eslint/no-non-null-assertion */\n const afterInjection = this.props.afterInjection;\n const wrapper = this.props.wrapper;\n /* eslint-enable @typescript-eslint/no-non-null-assertion */\n let nonReactWrapper;\n let nonReactTarget;\n if (wrapper === 'svg') {\n nonReactWrapper = document.createElementNS(svgNamespace, wrapper);\n nonReactWrapper.setAttribute('xmlns', svgNamespace);\n nonReactWrapper.setAttribute('xmlns:xlink', xlinkNamespace);\n nonReactTarget = document.createElementNS(svgNamespace, wrapper);\n }\n else {\n nonReactWrapper = document.createElement(wrapper);\n nonReactTarget = document.createElement(wrapper);\n }\n nonReactWrapper.appendChild(nonReactTarget);\n nonReactTarget.dataset.src = src;\n this.nonReactWrapper = this.reactWrapper.appendChild(nonReactWrapper);\n const afterEach = (error, svg) => {\n if (error) {\n this.removeSVG();\n if (!this._isMounted) {\n afterInjection(error);\n return;\n }\n }\n // TODO (Tane): It'd be better to cleanly unsubscribe from SVGInjector\n // callbacks instead of tracking a property like this.\n if (this._isMounted) {\n this.setState(() => ({\n hasError: !!error,\n isLoading: false,\n }), () => {\n afterInjection(error, svg);\n });\n }\n };\n SVGInjector(nonReactTarget, {\n afterEach,\n beforeEach: beforeInjection,\n cacheRequests: useRequestCache,\n evalScripts,\n httpRequestWithCredentials,\n renumerateIRIElements,\n });\n }\n }\n removeSVG() {\n if (this.nonReactWrapper?.parentNode) {\n this.nonReactWrapper.parentNode.removeChild(this.nonReactWrapper);\n this.nonReactWrapper = null;\n }\n }\n componentDidMount() {\n this._isMounted = true;\n this.renderSVG();\n }\n componentDidUpdate(prevProps) {\n if (shallowDiffers(prevProps, this.props)) {\n this.setState(() => this.initialState, () => {\n this.removeSVG();\n this.renderSVG();\n });\n }\n }\n componentWillUnmount() {\n this._isMounted = false;\n this.removeSVG();\n }\n render() {\n /* eslint-disable @typescript-eslint/no-unused-vars */\n const { afterInjection, beforeInjection, evalScripts, fallback: Fallback, httpRequestWithCredentials, loading: Loading, renumerateIRIElements, src, useRequestCache, wrapper, ...rest } = this.props;\n /* eslint-enable @typescript-eslint/no-unused-vars */\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const Wrapper = wrapper;\n return (React.createElement(Wrapper, { ...rest, ref: this.refCallback, ...(wrapper === 'svg'\n ? {\n xmlns: svgNamespace,\n xmlnsXlink: xlinkNamespace,\n }\n : {}) },\n this.state.isLoading && Loading && React.createElement(Loading, null),\n this.state.hasError && Fallback && React.createElement(Fallback, null)));\n }\n}\n"],"names":["shallowDiffers","a","b","i","svgNamespace","xlinkNamespace","ReactSVG","_inheritsLoose","initialState","hasError","isLoading","state","_isMounted","reactWrapper","nonReactWrapper","refCallback","renderSVG","Node","props","beforeInjection","evalScripts","httpRequestWithCredentials","renumerateIRIElements","src","useRequestCache","afterInjection","wrapper","nonReactTarget","document","createElementNS","setAttribute","createElement","appendChild","dataset","afterEach","error","svg","removeSVG","setState","SVGInjector","beforeEach","cacheRequests","parentNode","removeChild","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","render","Fallback","fallback","Loading","loading","rest","_objectWithoutPropertiesLoose","Wrapper","React","ref","xmlns","xmlnsXlink","Component","defaultProps","undefined","propTypes","PropTypes","func","oneOf","oneOfType","object","string","bool","isRequired"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-svg.cjs.production.js","sources":["../compiled/shallow-differs.js","../compiled/ReactSVG.js"],"sourcesContent":["// Hat-tip: https://github.com/developit/preact-compat/blob/master/src/index.js#L402.\nconst shallowDiffers = (a, b) => {\n for (const i in a) {\n if (!(i in b)) {\n return true;\n }\n }\n for (const i in b) {\n if (a[i] !== b[i]) {\n return true;\n }\n }\n return false;\n};\nexport default shallowDiffers;\n","import { SVGInjector } from '@tanem/svg-injector';\nimport * as PropTypes from 'prop-types';\nimport * as React from 'react';\nimport shallowDiffers from './shallow-differs';\nconst svgNamespace = 'http://www.w3.org/2000/svg';\nconst xlinkNamespace = 'http://www.w3.org/1999/xlink';\nexport class ReactSVG extends React.Component {\n static defaultProps = {\n afterInjection: () => undefined,\n beforeInjection: () => undefined,\n evalScripts: 'never',\n fallback: null,\n httpRequestWithCredentials: false,\n loading: null,\n renumerateIRIElements: true,\n useRequestCache: true,\n wrapper: 'div',\n };\n static propTypes = {\n afterInjection: PropTypes.func,\n beforeInjection: PropTypes.func,\n evalScripts: PropTypes.oneOf(['always', 'once', 'never']),\n fallback: PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.object,\n PropTypes.string,\n ]),\n httpRequestWithCredentials: PropTypes.bool,\n loading: PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.object,\n PropTypes.string,\n ]),\n renumerateIRIElements: PropTypes.bool,\n src: PropTypes.string.isRequired,\n useRequestCache: PropTypes.bool,\n wrapper: PropTypes.oneOf(['div', 'span', 'svg']),\n };\n initialState = {\n hasError: false,\n isLoading: true,\n };\n state = this.initialState;\n _isMounted = false;\n reactWrapper;\n nonReactWrapper;\n refCallback = (reactWrapper) => {\n this.reactWrapper = reactWrapper;\n };\n renderSVG() {\n /* istanbul ignore else */\n if (this.reactWrapper instanceof Node) {\n const { beforeInjection, evalScripts, httpRequestWithCredentials, renumerateIRIElements, src, useRequestCache, } = this.props;\n /* eslint-disable @typescript-eslint/no-non-null-assertion */\n const afterInjection = this.props.afterInjection;\n const wrapper = this.props.wrapper;\n /* eslint-enable @typescript-eslint/no-non-null-assertion */\n let nonReactWrapper;\n let nonReactTarget;\n if (wrapper === 'svg') {\n nonReactWrapper = document.createElementNS(svgNamespace, wrapper);\n nonReactWrapper.setAttribute('xmlns', svgNamespace);\n nonReactWrapper.setAttribute('xmlns:xlink', xlinkNamespace);\n nonReactTarget = document.createElementNS(svgNamespace, wrapper);\n }\n else {\n nonReactWrapper = document.createElement(wrapper);\n nonReactTarget = document.createElement(wrapper);\n }\n nonReactWrapper.appendChild(nonReactTarget);\n nonReactTarget.dataset.src = src;\n this.nonReactWrapper = this.reactWrapper.appendChild(nonReactWrapper);\n const afterEach = (error, svg) => {\n if (error) {\n this.removeSVG();\n if (!this._isMounted) {\n afterInjection(error);\n return;\n }\n }\n // TODO (Tane): It'd be better to cleanly unsubscribe from SVGInjector\n // callbacks instead of tracking a property like this.\n if (this._isMounted) {\n this.setState(() => ({\n hasError: !!error,\n isLoading: false,\n }), () => {\n afterInjection(error, svg);\n });\n }\n };\n SVGInjector(nonReactTarget, {\n afterEach,\n beforeEach: beforeInjection,\n cacheRequests: useRequestCache,\n evalScripts,\n httpRequestWithCredentials,\n renumerateIRIElements,\n });\n }\n }\n removeSVG() {\n if (this.nonReactWrapper?.parentNode) {\n this.nonReactWrapper.parentNode.removeChild(this.nonReactWrapper);\n this.nonReactWrapper = null;\n }\n }\n componentDidMount() {\n this._isMounted = true;\n this.renderSVG();\n }\n componentDidUpdate(prevProps) {\n if (shallowDiffers(prevProps, this.props)) {\n this.setState(() => this.initialState, () => {\n this.removeSVG();\n this.renderSVG();\n });\n }\n }\n componentWillUnmount() {\n this._isMounted = false;\n this.removeSVG();\n }\n render() {\n /* eslint-disable @typescript-eslint/no-unused-vars */\n const { afterInjection, beforeInjection, evalScripts, fallback: Fallback, httpRequestWithCredentials, loading: Loading, renumerateIRIElements, src, useRequestCache, wrapper, ...rest } = this.props;\n /* eslint-enable @typescript-eslint/no-unused-vars */\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const Wrapper = wrapper;\n return (React.createElement(Wrapper, { ...rest, ref: this.refCallback, ...(wrapper === 'svg'\n ? {\n xmlns: svgNamespace,\n xmlnsXlink: xlinkNamespace,\n }\n : {}) },\n this.state.isLoading && Loading && React.createElement(Loading, null),\n this.state.hasError && Fallback && React.createElement(Fallback, null)));\n }\n}\n"],"names":["shallowDiffers","a","b","i","svgNamespace","xlinkNamespace","ReactSVG","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","this","concat","initialState","hasError","isLoading","state","_isMounted","reactWrapper","nonReactWrapper","refCallback","_inheritsLoose","_proto","prototype","renderSVG","_this2","Node","nonReactTarget","_this$props","props","beforeInjection","evalScripts","httpRequestWithCredentials","renumerateIRIElements","src","useRequestCache","afterInjection","wrapper","document","createElementNS","setAttribute","createElement","appendChild","dataset","SVGInjector","afterEach","error","svg","removeSVG","setState","beforeEach","cacheRequests","_this$nonReactWrapper","parentNode","removeChild","componentDidMount","componentDidUpdate","prevProps","_this3","componentWillUnmount","render","_this$props2","Fallback","fallback","Loading","loading","rest","_objectWithoutPropertiesLoose","_excluded","React","ref","xmlns","xmlnsXlink","Component","defaultProps"],"mappings":"89BACMA,eAAiB,SAACC,EAAGC,GACvB,IAAK,IAAMC,KAAKF,EACZ,KAAME,KAAKD,GACP,OAAO,EAGf,IAAK,IAAMC,KAAKD,
|
|
1
|
+
{"version":3,"file":"react-svg.cjs.production.js","sources":["../compiled/shallow-differs.js","../compiled/ReactSVG.js"],"sourcesContent":["// Hat-tip: https://github.com/developit/preact-compat/blob/master/src/index.js#L402.\nconst shallowDiffers = (a, b) => {\n for (const i in a) {\n if (!(i in b)) {\n return true;\n }\n }\n for (const i in b) {\n if (a[i] !== b[i]) {\n return true;\n }\n }\n return false;\n};\nexport default shallowDiffers;\n","import { SVGInjector } from '@tanem/svg-injector';\nimport * as PropTypes from 'prop-types';\nimport * as React from 'react';\nimport shallowDiffers from './shallow-differs';\nconst svgNamespace = 'http://www.w3.org/2000/svg';\nconst xlinkNamespace = 'http://www.w3.org/1999/xlink';\nexport class ReactSVG extends React.Component {\n static defaultProps = {\n afterInjection: () => undefined,\n beforeInjection: () => undefined,\n evalScripts: 'never',\n fallback: null,\n httpRequestWithCredentials: false,\n loading: null,\n renumerateIRIElements: true,\n useRequestCache: true,\n wrapper: 'div',\n };\n static propTypes = {\n afterInjection: PropTypes.func,\n beforeInjection: PropTypes.func,\n evalScripts: PropTypes.oneOf(['always', 'once', 'never']),\n fallback: PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.object,\n PropTypes.string,\n ]),\n httpRequestWithCredentials: PropTypes.bool,\n loading: PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.object,\n PropTypes.string,\n ]),\n renumerateIRIElements: PropTypes.bool,\n src: PropTypes.string.isRequired,\n useRequestCache: PropTypes.bool,\n wrapper: PropTypes.oneOf(['div', 'span', 'svg']),\n };\n initialState = {\n hasError: false,\n isLoading: true,\n };\n state = this.initialState;\n _isMounted = false;\n reactWrapper;\n nonReactWrapper;\n refCallback = (reactWrapper) => {\n this.reactWrapper = reactWrapper;\n };\n renderSVG() {\n /* istanbul ignore else */\n if (this.reactWrapper instanceof Node) {\n const { beforeInjection, evalScripts, httpRequestWithCredentials, renumerateIRIElements, src, useRequestCache, } = this.props;\n /* eslint-disable @typescript-eslint/no-non-null-assertion */\n const afterInjection = this.props.afterInjection;\n const wrapper = this.props.wrapper;\n /* eslint-enable @typescript-eslint/no-non-null-assertion */\n let nonReactWrapper;\n let nonReactTarget;\n if (wrapper === 'svg') {\n nonReactWrapper = document.createElementNS(svgNamespace, wrapper);\n nonReactWrapper.setAttribute('xmlns', svgNamespace);\n nonReactWrapper.setAttribute('xmlns:xlink', xlinkNamespace);\n nonReactTarget = document.createElementNS(svgNamespace, wrapper);\n }\n else {\n nonReactWrapper = document.createElement(wrapper);\n nonReactTarget = document.createElement(wrapper);\n }\n nonReactWrapper.appendChild(nonReactTarget);\n nonReactTarget.dataset.src = src;\n this.nonReactWrapper = this.reactWrapper.appendChild(nonReactWrapper);\n const afterEach = (error, svg) => {\n if (error) {\n this.removeSVG();\n if (!this._isMounted) {\n afterInjection(error);\n return;\n }\n }\n // TODO (Tane): It'd be better to cleanly unsubscribe from SVGInjector\n // callbacks instead of tracking a property like this.\n if (this._isMounted) {\n this.setState(() => ({\n hasError: !!error,\n isLoading: false,\n }), () => {\n afterInjection(error, svg);\n });\n }\n };\n SVGInjector(nonReactTarget, {\n afterEach,\n beforeEach: beforeInjection,\n cacheRequests: useRequestCache,\n evalScripts,\n httpRequestWithCredentials,\n renumerateIRIElements,\n });\n }\n }\n removeSVG() {\n if (this.nonReactWrapper?.parentNode) {\n this.nonReactWrapper.parentNode.removeChild(this.nonReactWrapper);\n this.nonReactWrapper = null;\n }\n }\n componentDidMount() {\n this._isMounted = true;\n this.renderSVG();\n }\n componentDidUpdate(prevProps) {\n if (shallowDiffers(prevProps, this.props)) {\n this.setState(() => this.initialState, () => {\n this.removeSVG();\n this.renderSVG();\n });\n }\n }\n componentWillUnmount() {\n this._isMounted = false;\n this.removeSVG();\n }\n render() {\n /* eslint-disable @typescript-eslint/no-unused-vars */\n const { afterInjection, beforeInjection, evalScripts, fallback: Fallback, httpRequestWithCredentials, loading: Loading, renumerateIRIElements, src, useRequestCache, wrapper, ...rest } = this.props;\n /* eslint-enable @typescript-eslint/no-unused-vars */\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const Wrapper = wrapper;\n return (React.createElement(Wrapper, { ...rest, ref: this.refCallback, ...(wrapper === 'svg'\n ? {\n xmlns: svgNamespace,\n xmlnsXlink: xlinkNamespace,\n }\n : {}) },\n this.state.isLoading && Loading && React.createElement(Loading, null),\n this.state.hasError && Fallback && React.createElement(Fallback, null)));\n }\n}\n"],"names":["shallowDiffers","a","b","i","svgNamespace","xlinkNamespace","ReactSVG","_React$Component","_this","_len","arguments","length","args","Array","_key","call","apply","this","concat","initialState","hasError","isLoading","state","_isMounted","reactWrapper","nonReactWrapper","refCallback","_inheritsLoose","_proto","prototype","renderSVG","_this2","Node","nonReactTarget","_this$props","props","beforeInjection","evalScripts","httpRequestWithCredentials","renumerateIRIElements","src","useRequestCache","afterInjection","wrapper","document","createElementNS","setAttribute","createElement","appendChild","dataset","SVGInjector","afterEach","error","svg","removeSVG","setState","beforeEach","cacheRequests","_this$nonReactWrapper","parentNode","removeChild","componentDidMount","componentDidUpdate","prevProps","_this3","componentWillUnmount","render","_this$props2","Fallback","fallback","Loading","loading","rest","_objectWithoutPropertiesLoose","_excluded","React","ref","xmlns","xmlnsXlink","Component","defaultProps"],"mappings":"89BACMA,eAAiB,SAACC,EAAGC,GACvB,IAAK,IAAMC,KAAKF,EACZ,KAAME,KAAKD,GACP,OAAO,EAGf,IAAK,IAAMC,KAAKD,EACZ,GAAID,EAAEE,KAAOD,EAAEC,GACX,OAAO,EAGf,OAAO,4KCRLC,aAAe,6BACfC,eAAiB,+BACVC,SAAb,SAAAC,GAAA,SAAAD,IAAA,IAAA,IAAAE,EAAAC,EAAAC,UAAAC,OAAAC,EAAA,IAAAC,MAAAJ,GAAAK,EAAA,EAAAA,EAAAL,EAAAK,IAAAF,EAAAE,GAAAJ,UAAAI,GAAA,OAAAN,EAAAD,EAAAQ,KAAAC,MAAAT,EAAA,CAAAU,MAAAC,OAAAN,KAAAK,MAgCIE,aAAe,CACXC,UAAU,EACVC,WAAW,GAlCnBb,EAoCIc,MAAQd,EAAKW,aApCjBX,EAqCIe,YAAa,EArCjBf,EAsCIgB,kBAtCJ,EAAAhB,EAuCIiB,qBAvCJ,EAAAjB,EAwCIkB,YAAc,SAACF,GACXhB,EAAKgB,aAAeA,GAzC5BhB,EAAAmB,gCAAArB,EAAAC,GAAA,IAAAqB,EAAAtB,EAAAuB,UAAA,OAAAD,EA2CIE,UAAA,WAAY,IAAAC,EAAAd,KAER,GAAIA,KAAKO,wBAAwBQ,KAAM,CACnC,IAKIP,EACAQ,EANJC,EAAmHjB,KAAKkB,MAAhHC,IAAAA,gBAAiBC,IAAAA,YAAaC,IAAAA,2BAA4BC,IAAAA,sBAAuBC,IAAAA,IAAKC,IAAAA,gBAExFC,EAAiBzB,KAAKkB,MAAMO,eAC5BC,EAAU1B,KAAKkB,MAAMQ,QAIX,QAAZA,IACAlB,EAAkBmB,SAASC,gBAAgBzC,aAAcuC,IACzCG,aAAa,QAAS1C,cACtCqB,EAAgBqB,aAAa,cAAezC,gBAC5C4B,EAAiBW,SAASC,gBAAgBzC,aAAcuC,KAGxDlB,EAAkBmB,SAASG,cAAcJ,GACzCV,EAAiBW,SAASG,cAAcJ,IAE5ClB,EAAgBuB,YAAYf,GAC5BA,EAAegB,QAAQT,IAAMA,EAC7BvB,KAAKQ,gBAAkBR,KAAKO,aAAawB,YAAYvB,GAoBrDyB,YAAAA,YAAYjB,EAAgB,CACxBkB,UApBc,SAACC,EAAOC,IAClBD,IACArB,EAAKuB,YACAvB,EAAKR,YAOVQ,EAAKR,YACLQ,EAAKwB,UAAS,WAAA,MAAO,CACjBnC,WAAYgC,EACZ/B,WAAW,MACX,WACAqB,EAAeU,EAAOC,MAXtBX,EAAeU,IAiBvBI,WAAYpB,EACZqB,cAAehB,EACfJ,YAAAA,EACAC,2BAAAA,EACAC,sBAAAA,MA3FhBX,EA+FI0B,UAAA,WAAY,IAAAI,EACJ,OAAJA,EAAIzC,KAAKQ,kBAALiC,EAAsBC,aACtB1C,KAAKQ,gBAAgBkC,WAAWC,YAAY3C,KAAKQ,iBACjDR,KAAKQ,gBAAkB,OAlGnCG,EAqGIiC,kBAAA,WACI5C,KAAKM,YAAa,EAClBN,KAAKa,aAvGbF,EAyGIkC,mBAAA,SAAmBC,GAAW,IAAAC,EAAA/C,KACtBjB,eAAe+D,EAAW9C,KAAKkB,QAC/BlB,KAAKsC,UAAS,WAAA,OAAMS,EAAK7C,gBAAc,WACnC6C,EAAKV,YACLU,EAAKlC,gBA7GrBF,EAiHIqC,qBAAA,WACIhD,KAAKM,YAAa,EAClBN,KAAKqC,aAnHb1B,EAqHIsC,OAAA,WAEI,IAAAC,EAA0LlD,KAAKkB,MAA/HiC,IAAVC,SAAyDC,IAATC,QAA+D5B,IAAAA,QAAY6B,EAAjLC,uCAAAA,QAAAN,EAAAO,WAIA,OAAQC,iBAAM5B,cADEJ,+BAC0B6B,EAAlC,CAAwCI,IAAK3D,KAAKS,aAA6B,QAAZiB,EACjE,CACEkC,MAAOzE,aACP0E,WAAYzE,gBAEd,IACNY,KAAKK,MAAMD,WAAaiD,GAAWK,iBAAM5B,cAAcuB,EAAS,MAChErD,KAAKK,MAAMF,UAAYgD,GAAYO,iBAAM5B,cAAcqB,EAAU,QAlI7E9D,EAAA,CAA8BqE,iBAAMI,WAAvBzE,SACF0E,aAAe,CAClBtC,eAAgB,aAChBN,gBAAiB,aACjBC,YAAa,QACbgC,SAAU,KACV/B,4BAA4B,EAC5BiC,QAAS,KACThC,uBAAuB,EACvBE,iBAAiB,EACjBE,QAAS"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"react-svg.esm.js","sources":["../compiled/shallow-differs.js","../compiled/ReactSVG.js"],"sourcesContent":["// Hat-tip: https://github.com/developit/preact-compat/blob/master/src/index.js#L402.\nconst shallowDiffers = (a, b) => {\n for (const i in a) {\n if (!(i in b)) {\n return true;\n }\n }\n for (const i in b) {\n if (a[i] !== b[i]) {\n return true;\n }\n }\n return false;\n};\nexport default shallowDiffers;\n","import { SVGInjector } from '@tanem/svg-injector';\nimport * as PropTypes from 'prop-types';\nimport * as React from 'react';\nimport shallowDiffers from './shallow-differs';\nconst svgNamespace = 'http://www.w3.org/2000/svg';\nconst xlinkNamespace = 'http://www.w3.org/1999/xlink';\nexport class ReactSVG extends React.Component {\n static defaultProps = {\n afterInjection: () => undefined,\n beforeInjection: () => undefined,\n evalScripts: 'never',\n fallback: null,\n httpRequestWithCredentials: false,\n loading: null,\n renumerateIRIElements: true,\n useRequestCache: true,\n wrapper: 'div',\n };\n static propTypes = {\n afterInjection: PropTypes.func,\n beforeInjection: PropTypes.func,\n evalScripts: PropTypes.oneOf(['always', 'once', 'never']),\n fallback: PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.object,\n PropTypes.string,\n ]),\n httpRequestWithCredentials: PropTypes.bool,\n loading: PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.object,\n PropTypes.string,\n ]),\n renumerateIRIElements: PropTypes.bool,\n src: PropTypes.string.isRequired,\n useRequestCache: PropTypes.bool,\n wrapper: PropTypes.oneOf(['div', 'span', 'svg']),\n };\n initialState = {\n hasError: false,\n isLoading: true,\n };\n state = this.initialState;\n _isMounted = false;\n reactWrapper;\n nonReactWrapper;\n refCallback = (reactWrapper) => {\n this.reactWrapper = reactWrapper;\n };\n renderSVG() {\n /* istanbul ignore else */\n if (this.reactWrapper instanceof Node) {\n const { beforeInjection, evalScripts, httpRequestWithCredentials, renumerateIRIElements, src, useRequestCache, } = this.props;\n /* eslint-disable @typescript-eslint/no-non-null-assertion */\n const afterInjection = this.props.afterInjection;\n const wrapper = this.props.wrapper;\n /* eslint-enable @typescript-eslint/no-non-null-assertion */\n let nonReactWrapper;\n let nonReactTarget;\n if (wrapper === 'svg') {\n nonReactWrapper = document.createElementNS(svgNamespace, wrapper);\n nonReactWrapper.setAttribute('xmlns', svgNamespace);\n nonReactWrapper.setAttribute('xmlns:xlink', xlinkNamespace);\n nonReactTarget = document.createElementNS(svgNamespace, wrapper);\n }\n else {\n nonReactWrapper = document.createElement(wrapper);\n nonReactTarget = document.createElement(wrapper);\n }\n nonReactWrapper.appendChild(nonReactTarget);\n nonReactTarget.dataset.src = src;\n this.nonReactWrapper = this.reactWrapper.appendChild(nonReactWrapper);\n const afterEach = (error, svg) => {\n if (error) {\n this.removeSVG();\n if (!this._isMounted) {\n afterInjection(error);\n return;\n }\n }\n // TODO (Tane): It'd be better to cleanly unsubscribe from SVGInjector\n // callbacks instead of tracking a property like this.\n if (this._isMounted) {\n this.setState(() => ({\n hasError: !!error,\n isLoading: false,\n }), () => {\n afterInjection(error, svg);\n });\n }\n };\n SVGInjector(nonReactTarget, {\n afterEach,\n beforeEach: beforeInjection,\n cacheRequests: useRequestCache,\n evalScripts,\n httpRequestWithCredentials,\n renumerateIRIElements,\n });\n }\n }\n removeSVG() {\n if (this.nonReactWrapper?.parentNode) {\n this.nonReactWrapper.parentNode.removeChild(this.nonReactWrapper);\n this.nonReactWrapper = null;\n }\n }\n componentDidMount() {\n this._isMounted = true;\n this.renderSVG();\n }\n componentDidUpdate(prevProps) {\n if (shallowDiffers(prevProps, this.props)) {\n this.setState(() => this.initialState, () => {\n this.removeSVG();\n this.renderSVG();\n });\n }\n }\n componentWillUnmount() {\n this._isMounted = false;\n this.removeSVG();\n }\n render() {\n /* eslint-disable @typescript-eslint/no-unused-vars */\n const { afterInjection, beforeInjection, evalScripts, fallback: Fallback, httpRequestWithCredentials, loading: Loading, renumerateIRIElements, src, useRequestCache, wrapper, ...rest } = this.props;\n /* eslint-enable @typescript-eslint/no-unused-vars */\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const Wrapper = wrapper;\n return (React.createElement(Wrapper, { ...rest, ref: this.refCallback, ...(wrapper === 'svg'\n ? {\n xmlns: svgNamespace,\n xmlnsXlink: xlinkNamespace,\n }\n : {}) },\n this.state.isLoading && Loading && React.createElement(Loading, null),\n this.state.hasError && Fallback && React.createElement(Fallback, null)));\n }\n}\n"],"names":["shallowDiffers","a","b","i","svgNamespace","xlinkNamespace","ReactSVG","initialState","hasError","isLoading","state","_isMounted","reactWrapper","nonReactWrapper","refCallback","renderSVG","Node","props","beforeInjection","evalScripts","httpRequestWithCredentials","renumerateIRIElements","src","useRequestCache","afterInjection","wrapper","nonReactTarget","document","createElementNS","setAttribute","createElement","appendChild","dataset","afterEach","error","svg","removeSVG","setState","SVGInjector","beforeEach","cacheRequests","parentNode","removeChild","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","render","Fallback","fallback","Loading","loading","rest","Wrapper","React","ref","xmlns","xmlnsXlink","Component","defaultProps","undefined","propTypes","PropTypes","func","oneOf","oneOfType","object","string","bool","isRequired"],"mappings":";;;;;;;AAAA;AACA,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,CAACC,CAAD,EAAIC,CAAJ,EAAU;AAC7B,EAAA,KAAK,IAAMC,CAAX,IAAgBF,CAAhB,EAAmB;AACf,IAAA,IAAI,EAAEE,CAAC,IAAID,CAAP,CAAJ,EAAe;AACX,MAAA,OAAO,IAAP,CAAA;AACH,KAAA;AACJ,GAAA;;AACD,EAAA,KAAK,IAAMC,EAAX,IAAgBD,CAAhB,EAAmB;AACf,IAAID,IAAAA,CAAC,CAACE,EAAD,CAAD,KAASD,CAAC,CAACC,EAAD,CAAd,EAAmB;AACf,MAAA,OAAO,IAAP,CAAA;AACH,KAAA;AACJ,GAAA;;AACD,EAAA,OAAO,KAAP,CAAA;AACH,CAZD;;;ACGA,IAAMC,YAAY,GAAG,4BAArB,CAAA;AACA,IAAMC,cAAc,GAAG,8BAAvB,CAAA;AACA,IAAaC,QAAb,gBAAA,UAAA,gBAAA,EAAA;AAAA,EAAA,cAAA,CAAA,QAAA,EAAA,gBAAA,CAAA,CAAA;;AAAA,EAAA,SAAA,QAAA,GAAA;AAAA,IAAA,IAAA,KAAA,CAAA;;AAAA,IAAA,KAAA,IAAA,IAAA,GAAA,SAAA,CAAA,MAAA,EAAA,IAAA,GAAA,IAAA,KAAA,CAAA,IAAA,CAAA,EAAA,IAAA,GAAA,CAAA,EAAA,IAAA,GAAA,IAAA,EAAA,IAAA,EAAA,EAAA;AAAA,MAAA,IAAA,CAAA,IAAA,CAAA,GAAA,SAAA,CAAA,IAAA,CAAA,CAAA;AAAA,KAAA;;AAAA,IAAA,KAAA,GAAA,gBAAA,CAAA,IAAA,CAAA,KAAA,CAAA,gBAAA,EAAA,CAAA,IAAA,CAAA,CAAA,MAAA,CAAA,IAAA,CAAA,CAAA,IAAA,IAAA,CAAA;AAAA,IAAA,KAAA,CAgCIC,YAhCJ,GAgCmB;AACXC,MAAAA,QAAQ,EAAE,KADC;AAEXC,MAAAA,SAAS,EAAE,IAAA;AAFA,KAhCnB,CAAA;AAAA,IAoCIC,KAAAA,CAAAA,KApCJ,GAoCY,KAAA,CAAKH,YApCjB,CAAA;AAAA,IAqCII,KAAAA,CAAAA,UArCJ,GAqCiB,KArCjB,CAAA;AAAA,IAAA,KAAA,CAsCIC,YAtCJ,GAAA,KAAA,CAAA,CAAA;AAAA,IAAA,KAAA,CAuCIC,eAvCJ,GAAA,KAAA,CAAA,CAAA;;AAAA,IAAA,KAAA,CAwCIC,WAxCJ,GAwCkB,UAACF,YAAD,EAAkB;AAC5B,MAAKA,KAAAA,CAAAA,YAAL,GAAoBA,YAApB,CAAA;AACH,KA1CL,CAAA;;AAAA,IAAA,OAAA,KAAA,CAAA;AAAA,GAAA;;AAAA,EAAA,IAAA,MAAA,GAAA,QAAA,CAAA,SAAA,CAAA;;AAAA,EA2CIG,MAAAA,CAAAA,SA3CJ,GA2CI,SAAY,SAAA,GAAA;AAAA,IAAA,IAAA,MAAA,GAAA,IAAA,CAAA;;AACR;AACA,IAAA,IAAI,IAAKH,CAAAA,YAAL,YAA6BI,IAAjC,EAAuC;AACnC,MAAA,IAAA,WAAA,GAAmH,KAAKC,KAAxH;AAAA,UAAQC,eAAR,eAAQA,eAAR;AAAA,UAAyBC,WAAzB,eAAyBA,WAAzB;AAAA,UAAsCC,0BAAtC,eAAsCA,0BAAtC;AAAA,UAAkEC,qBAAlE,eAAkEA,qBAAlE;AAAA,UAAyFC,GAAzF,eAAyFA,GAAzF;AAAA,UAA8FC,eAA9F,eAA8FA,eAA9F,CAAA;AACA;;AACA,MAAA,IAAMC,cAAc,GAAG,IAAKP,CAAAA,KAAL,CAAWO,cAAlC,CAAA;AACA,MAAA,IAAMC,OAAO,GAAG,IAAKR,CAAAA,KAAL,CAAWQ,OAA3B,CAAA;AACA;;AACA,MAAA,IAAIZ,eAAJ,CAAA;AACA,MAAA,IAAIa,cAAJ,CAAA;;AACA,MAAID,IAAAA,OAAO,KAAK,KAAhB,EAAuB;AACnBZ,QAAAA,eAAe,GAAGc,QAAQ,CAACC,eAAT,CAAyBxB,YAAzB,EAAuCqB,OAAvC,CAAlB,CAAA;AACAZ,QAAAA,eAAe,CAACgB,YAAhB,CAA6B,OAA7B,EAAsCzB,YAAtC,CAAA,CAAA;AACAS,QAAAA,eAAe,CAACgB,YAAhB,CAA6B,aAA7B,EAA4CxB,cAA5C,CAAA,CAAA;AACAqB,QAAAA,cAAc,GAAGC,QAAQ,CAACC,eAAT,CAAyBxB,YAAzB,EAAuCqB,OAAvC,CAAjB,CAAA;AACH,OALD,MAMK;AACDZ,QAAAA,eAAe,GAAGc,QAAQ,CAACG,aAAT,CAAuBL,OAAvB,CAAlB,CAAA;AACAC,QAAAA,cAAc,GAAGC,QAAQ,CAACG,aAAT,CAAuBL,OAAvB,CAAjB,CAAA;AACH,OAAA;;AACDZ,MAAAA,eAAe,CAACkB,WAAhB,CAA4BL,cAA5B,CAAA,CAAA;AACAA,MAAAA,cAAc,CAACM,OAAf,CAAuBV,GAAvB,GAA6BA,GAA7B,CAAA;AACA,MAAKT,IAAAA,CAAAA,eAAL,GAAuB,IAAKD,CAAAA,YAAL,CAAkBmB,WAAlB,CAA8BlB,eAA9B,CAAvB,CAAA;;AACA,MAAMoB,IAAAA,SAAS,GAAG,SAAZA,SAAY,CAACC,KAAD,EAAQC,GAAR,EAAgB;AAC9B,QAAA,IAAID,KAAJ,EAAW;AACP,UAAA,MAAI,CAACE,SAAL,EAAA,CAAA;;AACA,UAAA,IAAI,CAAC,MAAI,CAACzB,UAAV,EAAsB;AAClBa,YAAAA,cAAc,CAACU,KAAD,CAAd,CAAA;AACA,YAAA,OAAA;AACH,WAAA;AACJ,SAP6B;AAS9B;;;AACA,QAAI,IAAA,MAAI,CAACvB,UAAT,EAAqB;AACjB,UAAA,MAAI,CAAC0B,QAAL,CAAc,YAAA;AAAA,YAAO,OAAA;AACjB7B,cAAAA,QAAQ,EAAE,CAAC,CAAC0B,KADK;AAEjBzB,cAAAA,SAAS,EAAE,KAAA;AAFM,aAAP,CAAA;AAAA,WAAd,EAGI,YAAM;AACNe,YAAAA,cAAc,CAACU,KAAD,EAAQC,GAAR,CAAd,CAAA;AACH,WALD,CAAA,CAAA;AAMH,SAAA;AACJ,OAlBD,CAAA;;AAmBAG,MAAAA,WAAW,CAACZ,cAAD,EAAiB;AACxBO,QAAAA,SAAS,EAATA,SADwB;AAExBM,QAAAA,UAAU,EAAErB,eAFY;AAGxBsB,QAAAA,aAAa,EAAEjB,eAHS;AAIxBJ,QAAAA,WAAW,EAAXA,WAJwB;AAKxBC,QAAAA,0BAA0B,EAA1BA,0BALwB;AAMxBC,QAAAA,qBAAqB,EAArBA,qBAAAA;AANwB,OAAjB,CAAX,CAAA;AAQH,KAAA;AACJ,GA9FL,CAAA;;AAAA,EA+FIe,MAAAA,CAAAA,SA/FJ,GA+FI,SAAY,SAAA,GAAA;AAAA,IAAA,IAAA,qBAAA,CAAA;;AACR,IAAA,IAAA,CAAA,qBAAA,GAAI,IAAKvB,CAAAA,eAAT,KAAI,IAAA,IAAA,qBAAA,CAAsB4B,UAA1B,EAAsC;AAClC,MAAA,IAAA,CAAK5B,eAAL,CAAqB4B,UAArB,CAAgCC,WAAhC,CAA4C,KAAK7B,eAAjD,CAAA,CAAA;AACA,MAAKA,IAAAA,CAAAA,eAAL,GAAuB,IAAvB,CAAA;AACH,KAAA;AACJ,GApGL,CAAA;;AAAA,EAqGI8B,MAAAA,CAAAA,iBArGJ,GAqGI,SAAoB,iBAAA,GAAA;AAChB,IAAKhC,IAAAA,CAAAA,UAAL,GAAkB,IAAlB,CAAA;AACA,IAAA,IAAA,CAAKI,SAAL,EAAA,CAAA;AACH,GAxGL,CAAA;;AAAA,EAAA,MAAA,CAyGI6B,kBAzGJ,GAyGI,SAAmBC,kBAAAA,CAAAA,SAAnB,EAA8B;AAAA,IAAA,IAAA,MAAA,GAAA,IAAA,CAAA;;AAC1B,IAAA,IAAI7C,cAAc,CAAC6C,SAAD,EAAY,IAAK5B,CAAAA,KAAjB,CAAlB,EAA2C;AACvC,MAAA,IAAA,CAAKoB,QAAL,CAAc,YAAA;AAAA,QAAM,OAAA,MAAI,CAAC9B,YAAX,CAAA;AAAA,OAAd,EAAuC,YAAM;AACzC,QAAA,MAAI,CAAC6B,SAAL,EAAA,CAAA;;AACA,QAAA,MAAI,CAACrB,SAAL,EAAA,CAAA;AACH,OAHD,CAAA,CAAA;AAIH,KAAA;AACJ,GAhHL,CAAA;;AAAA,EAiHI+B,MAAAA,CAAAA,oBAjHJ,GAiHI,SAAuB,oBAAA,GAAA;AACnB,IAAKnC,IAAAA,CAAAA,UAAL,GAAkB,KAAlB,CAAA;AACA,IAAA,IAAA,CAAKyB,SAAL,EAAA,CAAA;AACH,GApHL,CAAA;;AAAA,EAqHIW,MAAAA,CAAAA,MArHJ,GAqHI,SAAS,MAAA,GAAA;AACL;AACA,IAAA,IAAA,YAAA,GAA0L,KAAK9B,KAA/L,CAAA;AAAA,qBAAQO,cAAR,CAAA;AAAA,qBAAwBN,eAAxB,CAAA;AAAA,qBAAyCC,WAAzC,CAAA;AAAA,YAAgE6B,QAAhE,gBAAsDC,QAAtD,CAAA;AAAA,qBAA0E7B,0BAA1E,CAAA;AAAA,YAA+G8B,OAA/G,gBAAsGC,OAAtG,CAAA;AAAA,qBAAwH9B,qBAAxH,CAAA;AAAA,qBAA+IC,GAA/I,CAAA;AAAA,qBAAoJC,eAApJ,CAAA;AAAA,YAAqKE,OAArK,gBAAqKA,OAArK,CAAA;AAAA,QAAiL2B,IAAjL,GAAA,6BAAA,CAAA,YAAA,EAAA,SAAA,EAAA;AACA;AACA;;;AACA,IAAMC,IAAAA,OAAO,GAAG5B,OAAhB,CAAA;AACA,IAAA,oBAAQ6B,KAAK,CAACxB,aAAN,CAAoBuB,OAApB,eAAkCD,IAAlC,EAAA;AAAwCG,MAAAA,GAAG,EAAE,IAAKzC,CAAAA,WAAAA;AAAlD,KAAmEW,EAAAA,OAAO,KAAK,KAAZ,GACjE;AACE+B,MAAAA,KAAK,EAAEpD,YADT;AAEEqD,MAAAA,UAAU,EAAEpD,cAAAA;AAFd,KADiE,GAKjE,EALF,CAMJ,EAAA,IAAA,CAAKK,KAAL,CAAWD,SAAX,IAAwByC,OAAxB,iBAAmCI,KAAK,CAACxB,aAAN,CAAoBoB,OAApB,EAA6B,IAA7B,CAN/B,EAOJ,IAAKxC,CAAAA,KAAL,CAAWF,QAAX,IAAuBwC,QAAvB,iBAAmCM,KAAK,CAACxB,aAAN,CAAoBkB,QAApB,EAA8B,IAA9B,CAP/B,CAAR,CAAA;AAQH,GAnIL,CAAA;;AAAA,EAAA,OAAA,QAAA,CAAA;AAAA,CAA8BM,CAAAA,KAAK,CAACI,SAApC,EAAA;AAAapD,SACFqD,eAAe;AAClBnC,EAAAA,cAAc,EAAE,SAAA,cAAA,GAAA;AAAA,IAAA,OAAMoC,SAAN,CAAA;AAAA,GADE;AAElB1C,EAAAA,eAAe,EAAE,SAAA,eAAA,GAAA;AAAA,IAAA,OAAM0C,SAAN,CAAA;AAAA,GAFC;AAGlBzC,EAAAA,WAAW,EAAE,OAHK;AAIlB8B,EAAAA,QAAQ,EAAE,IAJQ;AAKlB7B,EAAAA,0BAA0B,EAAE,KALV;AAMlB+B,EAAAA,OAAO,EAAE,IANS;AAOlB9B,EAAAA,qBAAqB,EAAE,IAPL;AAQlBE,EAAAA,eAAe,EAAE,IARC;AASlBE,EAAAA,OAAO,EAAE,KAAA;AATS;AADbnB,SAYFuD,YAAY;AACfrC,EAAAA,cAAc,EAAEsC,SAAS,CAACC,IADX;AAEf7C,EAAAA,eAAe,EAAE4C,SAAS,CAACC,IAFZ;AAGf5C,EAAAA,WAAW,EAAE2C,SAAS,CAACE,KAAV,CAAgB,CAAC,QAAD,EAAW,MAAX,EAAmB,OAAnB,CAAhB,CAHE;AAIff,EAAAA,QAAQ,EAAEa,SAAS,CAACG,SAAV,CAAoB,CAC1BH,SAAS,CAACC,IADgB,EAE1BD,SAAS,CAACI,MAFgB,EAG1BJ,SAAS,CAACK,MAHgB,CAApB,CAJK;AASf/C,EAAAA,0BAA0B,EAAE0C,SAAS,CAACM,IATvB;AAUfjB,EAAAA,OAAO,EAAEW,SAAS,CAACG,SAAV,CAAoB,CACzBH,SAAS,CAACC,IADe,EAEzBD,SAAS,CAACI,MAFe,EAGzBJ,SAAS,CAACK,MAHe,CAApB,CAVM;AAef9C,EAAAA,qBAAqB,EAAEyC,SAAS,CAACM,IAflB;AAgBf9C,EAAAA,GAAG,EAAEwC,SAAS,CAACK,MAAV,CAAiBE,UAhBP;AAiBf9C,EAAAA,eAAe,EAAEuC,SAAS,CAACM,IAjBZ;AAkBf3C,EAAAA,OAAO,EAAEqC,SAAS,CAACE,KAAV,CAAgB,CAAC,KAAD,EAAQ,MAAR,EAAgB,KAAhB,CAAhB,CAAA;AAlBM;;;;"}
|
|
1
|
+
{"version":3,"file":"react-svg.esm.js","sources":["../compiled/shallow-differs.js","../compiled/ReactSVG.js"],"sourcesContent":["// Hat-tip: https://github.com/developit/preact-compat/blob/master/src/index.js#L402.\nconst shallowDiffers = (a, b) => {\n for (const i in a) {\n if (!(i in b)) {\n return true;\n }\n }\n for (const i in b) {\n if (a[i] !== b[i]) {\n return true;\n }\n }\n return false;\n};\nexport default shallowDiffers;\n","import { SVGInjector } from '@tanem/svg-injector';\nimport * as PropTypes from 'prop-types';\nimport * as React from 'react';\nimport shallowDiffers from './shallow-differs';\nconst svgNamespace = 'http://www.w3.org/2000/svg';\nconst xlinkNamespace = 'http://www.w3.org/1999/xlink';\nexport class ReactSVG extends React.Component {\n static defaultProps = {\n afterInjection: () => undefined,\n beforeInjection: () => undefined,\n evalScripts: 'never',\n fallback: null,\n httpRequestWithCredentials: false,\n loading: null,\n renumerateIRIElements: true,\n useRequestCache: true,\n wrapper: 'div',\n };\n static propTypes = {\n afterInjection: PropTypes.func,\n beforeInjection: PropTypes.func,\n evalScripts: PropTypes.oneOf(['always', 'once', 'never']),\n fallback: PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.object,\n PropTypes.string,\n ]),\n httpRequestWithCredentials: PropTypes.bool,\n loading: PropTypes.oneOfType([\n PropTypes.func,\n PropTypes.object,\n PropTypes.string,\n ]),\n renumerateIRIElements: PropTypes.bool,\n src: PropTypes.string.isRequired,\n useRequestCache: PropTypes.bool,\n wrapper: PropTypes.oneOf(['div', 'span', 'svg']),\n };\n initialState = {\n hasError: false,\n isLoading: true,\n };\n state = this.initialState;\n _isMounted = false;\n reactWrapper;\n nonReactWrapper;\n refCallback = (reactWrapper) => {\n this.reactWrapper = reactWrapper;\n };\n renderSVG() {\n /* istanbul ignore else */\n if (this.reactWrapper instanceof Node) {\n const { beforeInjection, evalScripts, httpRequestWithCredentials, renumerateIRIElements, src, useRequestCache, } = this.props;\n /* eslint-disable @typescript-eslint/no-non-null-assertion */\n const afterInjection = this.props.afterInjection;\n const wrapper = this.props.wrapper;\n /* eslint-enable @typescript-eslint/no-non-null-assertion */\n let nonReactWrapper;\n let nonReactTarget;\n if (wrapper === 'svg') {\n nonReactWrapper = document.createElementNS(svgNamespace, wrapper);\n nonReactWrapper.setAttribute('xmlns', svgNamespace);\n nonReactWrapper.setAttribute('xmlns:xlink', xlinkNamespace);\n nonReactTarget = document.createElementNS(svgNamespace, wrapper);\n }\n else {\n nonReactWrapper = document.createElement(wrapper);\n nonReactTarget = document.createElement(wrapper);\n }\n nonReactWrapper.appendChild(nonReactTarget);\n nonReactTarget.dataset.src = src;\n this.nonReactWrapper = this.reactWrapper.appendChild(nonReactWrapper);\n const afterEach = (error, svg) => {\n if (error) {\n this.removeSVG();\n if (!this._isMounted) {\n afterInjection(error);\n return;\n }\n }\n // TODO (Tane): It'd be better to cleanly unsubscribe from SVGInjector\n // callbacks instead of tracking a property like this.\n if (this._isMounted) {\n this.setState(() => ({\n hasError: !!error,\n isLoading: false,\n }), () => {\n afterInjection(error, svg);\n });\n }\n };\n SVGInjector(nonReactTarget, {\n afterEach,\n beforeEach: beforeInjection,\n cacheRequests: useRequestCache,\n evalScripts,\n httpRequestWithCredentials,\n renumerateIRIElements,\n });\n }\n }\n removeSVG() {\n if (this.nonReactWrapper?.parentNode) {\n this.nonReactWrapper.parentNode.removeChild(this.nonReactWrapper);\n this.nonReactWrapper = null;\n }\n }\n componentDidMount() {\n this._isMounted = true;\n this.renderSVG();\n }\n componentDidUpdate(prevProps) {\n if (shallowDiffers(prevProps, this.props)) {\n this.setState(() => this.initialState, () => {\n this.removeSVG();\n this.renderSVG();\n });\n }\n }\n componentWillUnmount() {\n this._isMounted = false;\n this.removeSVG();\n }\n render() {\n /* eslint-disable @typescript-eslint/no-unused-vars */\n const { afterInjection, beforeInjection, evalScripts, fallback: Fallback, httpRequestWithCredentials, loading: Loading, renumerateIRIElements, src, useRequestCache, wrapper, ...rest } = this.props;\n /* eslint-enable @typescript-eslint/no-unused-vars */\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n const Wrapper = wrapper;\n return (React.createElement(Wrapper, { ...rest, ref: this.refCallback, ...(wrapper === 'svg'\n ? {\n xmlns: svgNamespace,\n xmlnsXlink: xlinkNamespace,\n }\n : {}) },\n this.state.isLoading && Loading && React.createElement(Loading, null),\n this.state.hasError && Fallback && React.createElement(Fallback, null)));\n }\n}\n"],"names":["shallowDiffers","a","b","i","svgNamespace","xlinkNamespace","ReactSVG","initialState","hasError","isLoading","state","_isMounted","reactWrapper","nonReactWrapper","refCallback","renderSVG","Node","props","beforeInjection","evalScripts","httpRequestWithCredentials","renumerateIRIElements","src","useRequestCache","afterInjection","wrapper","nonReactTarget","document","createElementNS","setAttribute","createElement","appendChild","dataset","afterEach","error","svg","removeSVG","setState","SVGInjector","beforeEach","cacheRequests","parentNode","removeChild","componentDidMount","componentDidUpdate","prevProps","componentWillUnmount","render","Fallback","fallback","Loading","loading","rest","Wrapper","React","ref","xmlns","xmlnsXlink","Component","defaultProps","undefined","propTypes","PropTypes","func","oneOf","oneOfType","object","string","bool","isRequired"],"mappings":"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"}
|