loadFromDataURI (str, { noAlert } = {}) {
    return this.ready(() => {
      let base64 = false
      let pre = str.match(/^data:image\/svg\+xml;base64,/)
      if (pre) {
        base64 = true
      } else {
        pre = str.match(/^data:image\/svg\+xml(?:;|;utf8)?,/)
      }
      if (pre) {
        pre = pre[0]
      }
      const src = str.slice(pre.length)
      return this.loadSvgString(
        base64 ? decode64(src) : decodeURIComponent(src),
        { noAlert }
      )
    })
  }
@function module:SVGthis.loadFromDataURI
@param {string} str The Data URI to base64-decode (if relevant) and load
@param {PlainObject} [opts={}]
@param {boolean} [opts.noAlert]
@returns {Promise<void>} Resolves to `undefined` and rejects if loading SVG string fails and `noAlert` is enabled