Merge branch 'idempotency-plug' into 'develop'
[akkoma] / priv / static / packs / core / settings.js.map
index 7bf8d34e742548473b9a0eafcde4f7993c59c694..9554b8491040f5dfec723aaaee10e92d148d2ab1 100644 (file)
@@ -1 +1 @@
-{"version":3,"sources":["webpack:///app/javascript/builds/pleroma/mastofe/app/javascript/mastodon/features/emoji/unicode_to_filename.js","webpack:///app/javascript/builds/pleroma/mastofe/app/javascript/mastodon/initial_state.js","webpack:///app/javascript/builds/pleroma/mastofe/app/javascript/mastodon/features/emoji/emoji.js","webpack:///./node_modules/escape-html/index.js","webpack:///./node_modules/process/browser.js","webpack:///./node_modules/substring-trie/index.js","webpack:///app/javascript/builds/pleroma/mastofe/app/javascript/mastodon/features/emoji/emoji_unicode_mapping_light.js","webpack:///./node_modules/rails-ujs/lib/assets/compiled/rails-ujs.js","webpack:///app/javascript/builds/pleroma/mastofe/app/javascript/core/settings.js"],"names":["exports","unicodeToFilename","str","result","charCode","p","i","length","charCodeAt","toString","__webpack_require__","d","__webpack_exports__","reduceMotion","autoPlayGif","displayMedia","expandSpoilers","unfollowModal","boostModal","deleteModal","me","searchEnabled","maxChars","invitesEnabled","profile_directory","isStaff","deleteOthersNotice","prop","element","document","getElementById","initialState","JSON","parse","textContent","getMeta","meta","rights","r","process","buildCustomEmojis","_initial_state__WEBPACK_IMPORTED_MODULE_0__","_emoji_unicode_mapping_light__WEBPACK_IMPORTED_MODULE_1__","_emoji_unicode_mapping_light__WEBPACK_IMPORTED_MODULE_1___default","n","substring_trie__WEBPACK_IMPORTED_MODULE_2__","trie","Trie","Object","keys","unicodeMapping","assetHost","env","CDN_HOST","emojify","customEmojis","tagCharsWithEmojis","rtn","tagChars","invisible","_loop","match","tag","indexOf","search","slice","codePointAt","rend","replacement","lt","shortname","filename","url","static_url","startsWith","_unicodeMapping$match","shortCode","emojis","forEach","emoji","shortcode","get","name","replace","push","id","short_names","text","emoticons","keywords","imageUrl","custom","matchHtmlRegExp","module","string","escape","exec","html","index","lastIndex","substring","cachedSetTimeout","cachedClearTimeout","defaultSetTimout","Error","defaultClearTimeout","runTimeout","fun","setTimeout","e","call","this","clearTimeout","currentQueue","queue","draining","queueIndex","cleanUpNextTick","concat","drainQueue","timeout","len","run","marker","runClearTimeout","Item","array","noop","nextTick","args","Array","arguments","prototype","apply","title","browser","argv","version","versions","on","addListener","once","off","removeListener","removeAllListeners","emit","prependListener","prependOnceListener","listeners","binding","cwd","chdir","dir","umask","MiniTrie","words","_dict","word","dict","j","len2","char","charAt","stack","pop","require","shortCodesToEmojiData","emojisWithoutShortCodes","processEmojiMapData","emojiMapData","native","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_RESULT__","Rails","linkClickSelector","buttonClickSelector","selector","exclude","inputChangeSelector","formSubmitSelector","formInputClickSelector","formDisableSelector","formEnableSelector","fileInputSelector","linkDisableSelector","buttonDisableSelector","cspNonce","querySelector","content","expando","m","Element","matches","matchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","webkitMatchesSelector","getData","key","ref","setData","value","$","querySelectorAll","csrfParam","csrfToken","CSRFProtection","xhr","token","setRequestHeader","refreshCSRFTokens","param","input","CustomEvent","fire","preventDefault","window","event","params","evt","createEvent","initCustomEvent","bubbles","cancelable","detail","Event","defaultPrevented","defineProperty","obj","data","dispatchEvent","stopEverything","target","stopPropagation","stopImmediatePropagation","delegate","eventType","handler","addEventListener","parentNode","AcceptHeaders","createXHR","prepareOptions","processResponse","*","xml","json","script","ajax","options","response","responseText","getResponseHeader","Math","floor","status","success","statusText","error","complete","beforeSend","readyState","XMLHttpRequest","OPENED","send","location","href","type","toUpperCase","dataType","accept","done","open","crossDomain","withCredentials","onreadystatechange","DONE","parser","createElement","setAttribute","head","appendChild","removeChild","DOMParser","parseFromString","isCrossDomain","originAnchor","urlAnchor","protocol","host","toArray","serializeElement","additionalParam","inputs","elements","disabled","option","selected","checked","map","encodeURIComponent","join","formElements","form","filter","el","allowAction","handleConfirm","answer","callback","message","getAttribute","confirm","disableFormElement","disableFormElements","disableLinkElement","enableFormElement","enableFormElements","enableLinkElement","handleDisabledElement","enableElement","disableElement","innerHTML","originalText","removeEventListener","handleMethod","formContent","method","action","style","display","body","click","isRemote","handleRemote","button","enctype","FormData","append","formSubmitButtonClick","formNoValidate","handleMetaClick","metaKey","ctrlKey","jQuery","rails","ajaxPrefilter","originalOptions","start","_rails_loaded","undefined","escape_html__WEBPACK_IMPORTED_MODULE_0__","escape_html__WEBPACK_IMPORTED_MODULE_0___default","_mastodon_features_emoji_emoji__WEBPACK_IMPORTED_MODULE_1__","_ref","escapeTextContentForBrowser","_ref2","avatar","file","files","URL","createObjectURL","dataset","originalSrc","src","_ref4","header","_ref6","lock","_ref7","select","_ref8","focus","execCommand","blur","classList","add","remove","err","console"],"mappings":"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","file":"core/settings.js","sourcesContent":["// taken from:\n// https://github.com/twitter/twemoji/blob/47732c7/twemoji-generator.js#L848-L866\nexports.unicodeToFilename = (str) => {\n  let result = '';\n  let charCode = 0;\n  let p = 0;\n  let i = 0;\n  while (i < str.length) {\n    charCode = str.charCodeAt(i++);\n    if (p) {\n      if (result.length > 0) {\n        result += '-';\n      }\n      result += (0x10000 + ((p - 0xD800) << 10) + (charCode - 0xDC00)).toString(16);\n      p = 0;\n    } else if (0xD800 <= charCode && charCode <= 0xDBFF) {\n      p = charCode;\n    } else {\n      if (result.length > 0) {\n        result += '-';\n      }\n      result += charCode.toString(16);\n    }\n  }\n  return result;\n};\n","const element = document.getElementById('initial-state');\nconst initialState = element && JSON.parse(element.textContent);\n\nconst getMeta = (prop) => initialState && initialState.meta && initialState.meta[prop];\nconst getRight = (prop) => initialState && initialState.rights && initialState.rights[prop];\n\nexport const reduceMotion = getMeta('reduce_motion');\nexport const autoPlayGif = getMeta('auto_play_gif');\nexport const displayMedia = getMeta('display_media');\nexport const expandSpoilers = getMeta('expand_spoilers');\nexport const unfollowModal = getMeta('unfollow_modal');\nexport const boostModal = getMeta('boost_modal');\nexport const deleteModal = getMeta('delete_modal');\nexport const me = getMeta('me');\nexport const searchEnabled = getMeta('search_enabled');\nexport const maxChars = getMeta('max_toot_chars') || 500;\nexport const invitesEnabled = getMeta('invites_enabled');\nexport const version = getMeta('version');\nexport const mascot = getMeta('mascot');\nexport const profile_directory = getMeta('profile_directory');\nexport const isStaff = getMeta('is_staff');\n\nexport const deleteOthersNotice = getRight('delete_others_notice');\n\nexport default initialState;\n","import { autoPlayGif } from '../../initial_state';\nimport unicodeMapping from './emoji_unicode_mapping_light';\nimport Trie from 'substring-trie';\n\nconst trie = new Trie(Object.keys(unicodeMapping));\n\nconst assetHost = process.env.CDN_HOST || '';\n\nconst emojify = (str, customEmojis = {}) => {\n  const tagCharsWithoutEmojis = '<&';\n  const tagCharsWithEmojis = Object.keys(customEmojis).length ? '<&:' : '<&';\n  let rtn = '', tagChars = tagCharsWithEmojis, invisible = 0;\n  for (;;) {\n    let match, i = 0, tag;\n    while (i < str.length && (tag = tagChars.indexOf(str[i])) === -1 && (invisible || !(match = trie.search(str.slice(i))))) {\n      i += str.codePointAt(i) < 65536 ? 1 : 2;\n    }\n    let rend, replacement = '';\n    if (i === str.length) {\n      break;\n    } else if (str[i] === ':') {\n      if (!(() => {\n        rend = str.indexOf(':', i + 1) + 1;\n        if (!rend) return false; // no pair of ':'\n        const lt = str.indexOf('<', i + 1);\n        if (!(lt === -1 || lt >= rend)) return false; // tag appeared before closing ':'\n        const shortname = str.slice(i, rend);\n        // now got a replacee as ':shortname:'\n        // if you want additional emoji handler, add statements below which set replacement and return true.\n        if (shortname in customEmojis) {\n          const filename = autoPlayGif ? customEmojis[shortname].url : customEmojis[shortname].static_url;\n          replacement = `<img draggable=\"false\" class=\"emojione\" alt=\"${shortname}\" title=\"${shortname}\" src=\"${filename}\" />`;\n          return true;\n        }\n        return false;\n      })()) rend = ++i;\n    } else if (tag >= 0) { // <, &\n      rend = str.indexOf('>;'[tag], i + 1) + 1;\n      if (!rend) {\n        break;\n      }\n      if (tag === 0) {\n        if (invisible) {\n          if (str[i + 1] === '/') { // closing tag\n            if (!--invisible) {\n              tagChars = tagCharsWithEmojis;\n            }\n          } else if (str[rend - 2] !== '/') { // opening tag\n            invisible++;\n          }\n        } else {\n          if (str.startsWith('<span class=\"invisible\">', i)) {\n            // avoid emojifying on invisible text\n            invisible = 1;\n            tagChars = tagCharsWithoutEmojis;\n          }\n        }\n      }\n      i = rend;\n    } else { // matched to unicode emoji\n      const { filename, shortCode } = unicodeMapping[match];\n      const title = shortCode ? `:${shortCode}:` : '';\n      replacement = `<img draggable=\"false\" class=\"emojione\" alt=\"${match}\" title=\"${title}\" src=\"${assetHost}/emoji/${filename}.svg\" />`;\n      rend = i + match.length;\n      // If the matched character was followed by VS15 (for selecting text presentation), skip it.\n      if (str.codePointAt(rend) === 65038) {\n        rend += 1;\n      }\n    }\n    rtn += str.slice(0, i) + replacement;\n    str = str.slice(rend);\n  }\n  return rtn + str;\n};\n\nexport default emojify;\n\nexport const buildCustomEmojis = (customEmojis) => {\n  const emojis = [];\n\n  customEmojis.forEach(emoji => {\n    const shortcode = emoji.get('shortcode');\n    const url       = autoPlayGif ? emoji.get('url') : emoji.get('static_url');\n    const name      = shortcode.replace(':', '');\n\n    emojis.push({\n      id: name,\n      name,\n      short_names: [name],\n      text: '',\n      emoticons: [],\n      keywords: [name],\n      imageUrl: url,\n      custom: true,\n    });\n  });\n\n  return emojis;\n};\n","/*!\n * escape-html\n * Copyright(c) 2012-2013 TJ Holowaychuk\n * Copyright(c) 2015 Andreas Lubbe\n * Copyright(c) 2015 Tiancheng \"Timothy\" Gu\n * MIT Licensed\n */\n'use strict';\n/**\n * Module variables.\n * @private\n */\n\nvar matchHtmlRegExp = /[\"'&<>]/;\n/**\n * Module exports.\n * @public\n */\n\nmodule.exports = escapeHtml;\n/**\n * Escape special characters in the given string of html.\n *\n * @param  {string} string The string to escape for inserting into HTML\n * @return {string}\n * @public\n */\n\nfunction escapeHtml(string) {\n  var str = '' + string;\n  var match = matchHtmlRegExp.exec(str);\n\n  if (!match) {\n    return str;\n  }\n\n  var escape;\n  var html = '';\n  var index = 0;\n  var lastIndex = 0;\n\n  for (index = match.index; index < str.length; index++) {\n    switch (str.charCodeAt(index)) {\n      case 34:\n        // \"\n        escape = '&quot;';\n        break;\n\n      case 38:\n        // &\n        escape = '&amp;';\n        break;\n\n      case 39:\n        // '\n        escape = '&#39;';\n        break;\n\n      case 60:\n        // <\n        escape = '&lt;';\n        break;\n\n      case 62:\n        // >\n        escape = '&gt;';\n        break;\n\n      default:\n        continue;\n    }\n\n    if (lastIndex !== index) {\n      html += str.substring(lastIndex, index);\n    }\n\n    lastIndex = index + 1;\n    html += escape;\n  }\n\n  return lastIndex !== index ? html + str.substring(lastIndex, index) : html;\n}","// shim for using process in browser\nvar process = module.exports = {}; // cached from whatever global is present so that test runners that stub it\n// don't break things.  But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals.  It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n  throw new Error('setTimeout has not been defined');\n}\n\nfunction defaultClearTimeout() {\n  throw new Error('clearTimeout has not been defined');\n}\n\n(function () {\n  try {\n    if (typeof setTimeout === 'function') {\n      cachedSetTimeout = setTimeout;\n    } else {\n      cachedSetTimeout = defaultSetTimout;\n    }\n  } catch (e) {\n    cachedSetTimeout = defaultSetTimout;\n  }\n\n  try {\n    if (typeof clearTimeout === 'function') {\n      cachedClearTimeout = clearTimeout;\n    } else {\n      cachedClearTimeout = defaultClearTimeout;\n    }\n  } catch (e) {\n    cachedClearTimeout = defaultClearTimeout;\n  }\n})();\n\nfunction runTimeout(fun) {\n  if (cachedSetTimeout === setTimeout) {\n    //normal enviroments in sane situations\n    return setTimeout(fun, 0);\n  } // if setTimeout wasn't available but was latter defined\n\n\n  if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n    cachedSetTimeout = setTimeout;\n    return setTimeout(fun, 0);\n  }\n\n  try {\n    // when when somebody has screwed with setTimeout but no I.E. maddness\n    return cachedSetTimeout(fun, 0);\n  } catch (e) {\n    try {\n      // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n      return cachedSetTimeout.call(null, fun, 0);\n    } catch (e) {\n      // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n      return cachedSetTimeout.call(this, fun, 0);\n    }\n  }\n}\n\nfunction runClearTimeout(marker) {\n  if (cachedClearTimeout === clearTimeout) {\n    //normal enviroments in sane situations\n    return clearTimeout(marker);\n  } // if clearTimeout wasn't available but was latter defined\n\n\n  if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n    cachedClearTimeout = clearTimeout;\n    return clearTimeout(marker);\n  }\n\n  try {\n    // when when somebody has screwed with setTimeout but no I.E. maddness\n    return cachedClearTimeout(marker);\n  } catch (e) {\n    try {\n      // When we are in I.E. but the script has been evaled so I.E. doesn't  trust the global object when called normally\n      return cachedClearTimeout.call(null, marker);\n    } catch (e) {\n      // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n      // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n      return cachedClearTimeout.call(this, marker);\n    }\n  }\n}\n\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n  if (!draining || !currentQueue) {\n    return;\n  }\n\n  draining = false;\n\n  if (currentQueue.length) {\n    queue = currentQueue.concat(queue);\n  } else {\n    queueIndex = -1;\n  }\n\n  if (queue.length) {\n    drainQueue();\n  }\n}\n\nfunction drainQueue() {\n  if (draining) {\n    return;\n  }\n\n  var timeout = runTimeout(cleanUpNextTick);\n  draining = true;\n  var len = queue.length;\n\n  while (len) {\n    currentQueue = queue;\n    queue = [];\n\n    while (++queueIndex < len) {\n      if (currentQueue) {\n        currentQueue[queueIndex].run();\n      }\n    }\n\n    queueIndex = -1;\n    len = queue.length;\n  }\n\n  currentQueue = null;\n  draining = false;\n  runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n  var args = new Array(arguments.length - 1);\n\n  if (arguments.length > 1) {\n    for (var i = 1; i < arguments.length; i++) {\n      args[i - 1] = arguments[i];\n    }\n  }\n\n  queue.push(new Item(fun, args));\n\n  if (queue.length === 1 && !draining) {\n    runTimeout(drainQueue);\n  }\n}; // v8 likes predictible objects\n\n\nfunction Item(fun, array) {\n  this.fun = fun;\n  this.array = array;\n}\n\nItem.prototype.run = function () {\n  this.fun.apply(null, this.array);\n};\n\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\n\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) {\n  return [];\n};\n\nprocess.binding = function (name) {\n  throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () {\n  return '/';\n};\n\nprocess.chdir = function (dir) {\n  throw new Error('process.chdir is not supported');\n};\n\nprocess.umask = function () {\n  return 0;\n};","'use strict';\n\nvar CODA_MARKER = '$$'; // marks the end of the string\n\nfunction MiniTrie(words) {\n  this._dict = {};\n\n  for (var i = 0, len = words.length; i < len; i++) {\n    var word = words[i];\n    var dict = this._dict;\n\n    for (var j = 0, len2 = word.length; j < len2; j++) {\n      var char = word.charAt(j);\n      dict = dict[char] = dict[char] || {};\n    }\n\n    dict[CODA_MARKER] = true;\n  }\n}\n\nMiniTrie.prototype.search = function (str) {\n  var i = -1;\n  var len = str.length;\n  var stack = [this._dict];\n\n  while (++i < len) {\n    var dict = stack[i];\n    var char = str.charAt(i);\n\n    if (char in dict) {\n      stack.push(dict[char]);\n    } else {\n      break;\n    }\n  }\n\n  while (stack.length) {\n    if (stack.pop()[CODA_MARKER]) {\n      return str.substring(0, stack.length);\n    }\n  }\n};\n\nmodule.exports = MiniTrie;","// A mapping of unicode strings to an object containing the filename\n// (i.e. the svg filename) and a shortCode intended to be shown\n// as a \"title\" attribute in an HTML element (aka tooltip).\n\nconst [\n  shortCodesToEmojiData,\n  skins, // eslint-disable-line no-unused-vars\n  categories, // eslint-disable-line no-unused-vars\n  short_names, // eslint-disable-line no-unused-vars\n  emojisWithoutShortCodes,\n] = require('./emoji_compressed');\nconst { unicodeToFilename } = require('./unicode_to_filename');\n\n// decompress\nconst unicodeMapping = {};\n\nfunction processEmojiMapData(emojiMapData, shortCode) {\n  let [ native, filename ] = emojiMapData;\n  if (!filename) {\n    // filename name can be derived from unicodeToFilename\n    filename = unicodeToFilename(native);\n  }\n  unicodeMapping[native] = {\n    shortCode: shortCode,\n    filename: filename,\n  };\n}\n\nObject.keys(shortCodesToEmojiData).forEach((shortCode) => {\n  let [ filenameData ] = shortCodesToEmojiData[shortCode];\n  filenameData.forEach(emojiMapData => processEmojiMapData(emojiMapData, shortCode));\n});\nemojisWithoutShortCodes.forEach(emojiMapData => processEmojiMapData(emojiMapData));\n\nmodule.exports = unicodeMapping;\n","/*\nUnobtrusive JavaScript\nhttps://github.com/rails/rails/blob/master/actionview/app/assets/javascripts\nReleased under the MIT license\n */\n(function () {\n  var context = this;\n  (function () {\n    (function () {\n      this.Rails = {\n        linkClickSelector: 'a[data-confirm], a[data-method], a[data-remote]:not([disabled]), a[data-disable-with], a[data-disable]',\n        buttonClickSelector: {\n          selector: 'button[data-remote]:not([form]), button[data-confirm]:not([form])',\n          exclude: 'form button'\n        },\n        inputChangeSelector: 'select[data-remote], input[data-remote], textarea[data-remote]',\n        formSubmitSelector: 'form',\n        formInputClickSelector: 'form input[type=submit], form input[type=image], form button[type=submit], form button:not([type]), input[type=submit][form], input[type=image][form], button[type=submit][form], button[form]:not([type])',\n        formDisableSelector: 'input[data-disable-with]:enabled, button[data-disable-with]:enabled, textarea[data-disable-with]:enabled, input[data-disable]:enabled, button[data-disable]:enabled, textarea[data-disable]:enabled',\n        formEnableSelector: 'input[data-disable-with]:disabled, button[data-disable-with]:disabled, textarea[data-disable-with]:disabled, input[data-disable]:disabled, button[data-disable]:disabled, textarea[data-disable]:disabled',\n        fileInputSelector: 'input[name][type=file]:not([disabled])',\n        linkDisableSelector: 'a[data-disable-with], a[data-disable]',\n        buttonDisableSelector: 'button[data-remote][data-disable-with], button[data-remote][data-disable]'\n      };\n    }).call(this);\n  }).call(context);\n  var Rails = context.Rails;\n  (function () {\n    (function () {\n      var cspNonce;\n\n      cspNonce = Rails.cspNonce = function () {\n        var meta;\n        meta = document.querySelector('meta[name=csp-nonce]');\n        return meta && meta.content;\n      };\n    }).call(this);\n    (function () {\n      var expando, m;\n      m = Element.prototype.matches || Element.prototype.matchesSelector || Element.prototype.mozMatchesSelector || Element.prototype.msMatchesSelector || Element.prototype.oMatchesSelector || Element.prototype.webkitMatchesSelector;\n\n      Rails.matches = function (element, selector) {\n        if (selector.exclude != null) {\n          return m.call(element, selector.selector) && !m.call(element, selector.exclude);\n        } else {\n          return m.call(element, selector);\n        }\n      };\n\n      expando = '_ujsData';\n\n      Rails.getData = function (element, key) {\n        var ref;\n        return (ref = element[expando]) != null ? ref[key] : void 0;\n      };\n\n      Rails.setData = function (element, key, value) {\n        if (element[expando] == null) {\n          element[expando] = {};\n        }\n\n        return element[expando][key] = value;\n      };\n\n      Rails.$ = function (selector) {\n        return Array.prototype.slice.call(document.querySelectorAll(selector));\n      };\n    }).call(this);\n    (function () {\n      var $, csrfParam, csrfToken;\n      $ = Rails.$;\n\n      csrfToken = Rails.csrfToken = function () {\n        var meta;\n        meta = document.querySelector('meta[name=csrf-token]');\n        return meta && meta.content;\n      };\n\n      csrfParam = Rails.csrfParam = function () {\n        var meta;\n        meta = document.querySelector('meta[name=csrf-param]');\n        return meta && meta.content;\n      };\n\n      Rails.CSRFProtection = function (xhr) {\n        var token;\n        token = csrfToken();\n\n        if (token != null) {\n          return xhr.setRequestHeader('X-CSRF-Token', token);\n        }\n      };\n\n      Rails.refreshCSRFTokens = function () {\n        var param, token;\n        token = csrfToken();\n        param = csrfParam();\n\n        if (token != null && param != null) {\n          return $('form input[name=\"' + param + '\"]').forEach(function (input) {\n            return input.value = token;\n          });\n        }\n      };\n    }).call(this);\n    (function () {\n      var CustomEvent, fire, matches, preventDefault;\n      matches = Rails.matches;\n      CustomEvent = window.CustomEvent;\n\n      if (typeof CustomEvent !== 'function') {\n        CustomEvent = function CustomEvent(event, params) {\n          var evt;\n          evt = document.createEvent('CustomEvent');\n          evt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail);\n          return evt;\n        };\n\n        CustomEvent.prototype = window.Event.prototype;\n        preventDefault = CustomEvent.prototype.preventDefault;\n\n        CustomEvent.prototype.preventDefault = function () {\n          var result;\n          result = preventDefault.call(this);\n\n          if (this.cancelable && !this.defaultPrevented) {\n            Object.defineProperty(this, 'defaultPrevented', {\n              get: function get() {\n                return true;\n              }\n            });\n          }\n\n          return result;\n        };\n      }\n\n      fire = Rails.fire = function (obj, name, data) {\n        var event;\n        event = new CustomEvent(name, {\n          bubbles: true,\n          cancelable: true,\n          detail: data\n        });\n        obj.dispatchEvent(event);\n        return !event.defaultPrevented;\n      };\n\n      Rails.stopEverything = function (e) {\n        fire(e.target, 'ujs:everythingStopped');\n        e.preventDefault();\n        e.stopPropagation();\n        return e.stopImmediatePropagation();\n      };\n\n      Rails.delegate = function (element, selector, eventType, handler) {\n        return element.addEventListener(eventType, function (e) {\n          var target;\n          target = e.target;\n\n          while (!(!(target instanceof Element) || matches(target, selector))) {\n            target = target.parentNode;\n          }\n\n          if (target instanceof Element && handler.call(target, e) === false) {\n            e.preventDefault();\n            return e.stopPropagation();\n          }\n        });\n      };\n    }).call(this);\n    (function () {\n      var AcceptHeaders, CSRFProtection, createXHR, cspNonce, fire, prepareOptions, processResponse;\n      cspNonce = Rails.cspNonce, CSRFProtection = Rails.CSRFProtection, fire = Rails.fire;\n      AcceptHeaders = {\n        '*': '*/*',\n        text: 'text/plain',\n        html: 'text/html',\n        xml: 'application/xml, text/xml',\n        json: 'application/json, text/javascript',\n        script: 'text/javascript, application/javascript, application/ecmascript, application/x-ecmascript'\n      };\n\n      Rails.ajax = function (options) {\n        var xhr;\n        options = prepareOptions(options);\n        xhr = createXHR(options, function () {\n          var ref, response;\n          response = processResponse((ref = xhr.response) != null ? ref : xhr.responseText, xhr.getResponseHeader('Content-Type'));\n\n          if (Math.floor(xhr.status / 100) === 2) {\n            if (typeof options.success === \"function\") {\n              options.success(response, xhr.statusText, xhr);\n            }\n          } else {\n            if (typeof options.error === \"function\") {\n              options.error(response, xhr.statusText, xhr);\n            }\n          }\n\n          return typeof options.complete === \"function\" ? options.complete(xhr, xhr.statusText) : void 0;\n        });\n\n        if (options.beforeSend != null && !options.beforeSend(xhr, options)) {\n          return false;\n        }\n\n        if (xhr.readyState === XMLHttpRequest.OPENED) {\n          return xhr.send(options.data);\n        }\n      };\n\n      prepareOptions = function prepareOptions(options) {\n        options.url = options.url || location.href;\n        options.type = options.type.toUpperCase();\n\n        if (options.type === 'GET' && options.data) {\n          if (options.url.indexOf('?') < 0) {\n            options.url += '?' + options.data;\n          } else {\n            options.url += '&' + options.data;\n          }\n        }\n\n        if (AcceptHeaders[options.dataType] == null) {\n          options.dataType = '*';\n        }\n\n        options.accept = AcceptHeaders[options.dataType];\n\n        if (options.dataType !== '*') {\n          options.accept += ', */*; q=0.01';\n        }\n\n        return options;\n      };\n\n      createXHR = function createXHR(options, done) {\n        var xhr;\n        xhr = new XMLHttpRequest();\n        xhr.open(options.type, options.url, true);\n        xhr.setRequestHeader('Accept', options.accept);\n\n        if (typeof options.data === 'string') {\n          xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');\n        }\n\n        if (!options.crossDomain) {\n          xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');\n        }\n\n        CSRFProtection(xhr);\n        xhr.withCredentials = !!options.withCredentials;\n\n        xhr.onreadystatechange = function () {\n          if (xhr.readyState === XMLHttpRequest.DONE) {\n            return done(xhr);\n          }\n        };\n\n        return xhr;\n      };\n\n      processResponse = function processResponse(response, type) {\n        var parser, script;\n\n        if (typeof response === 'string' && typeof type === 'string') {\n          if (type.match(/\\bjson\\b/)) {\n            try {\n              response = JSON.parse(response);\n            } catch (error) {}\n          } else if (type.match(/\\b(?:java|ecma)script\\b/)) {\n            script = document.createElement('script');\n            script.setAttribute('nonce', cspNonce());\n            script.text = response;\n            document.head.appendChild(script).parentNode.removeChild(script);\n          } else if (type.match(/\\b(xml|html|svg)\\b/)) {\n            parser = new DOMParser();\n            type = type.replace(/;.+/, '');\n\n            try {\n              response = parser.parseFromString(response, type);\n            } catch (error) {}\n          }\n        }\n\n        return response;\n      };\n\n      Rails.href = function (element) {\n        return element.href;\n      };\n\n      Rails.isCrossDomain = function (url) {\n        var e, originAnchor, urlAnchor;\n        originAnchor = document.createElement('a');\n        originAnchor.href = location.href;\n        urlAnchor = document.createElement('a');\n\n        try {\n          urlAnchor.href = url;\n          return !((!urlAnchor.protocol || urlAnchor.protocol === ':') && !urlAnchor.host || originAnchor.protocol + '//' + originAnchor.host === urlAnchor.protocol + '//' + urlAnchor.host);\n        } catch (error) {\n          e = error;\n          return true;\n        }\n      };\n    }).call(this);\n    (function () {\n      var matches, toArray;\n      matches = Rails.matches;\n\n      toArray = function toArray(e) {\n        return Array.prototype.slice.call(e);\n      };\n\n      Rails.serializeElement = function (element, additionalParam) {\n        var inputs, params;\n        inputs = [element];\n\n        if (matches(element, 'form')) {\n          inputs = toArray(element.elements);\n        }\n\n        params = [];\n        inputs.forEach(function (input) {\n          if (!input.name || input.disabled) {\n            return;\n          }\n\n          if (matches(input, 'select')) {\n            return toArray(input.options).forEach(function (option) {\n              if (option.selected) {\n                return params.push({\n                  name: input.name,\n                  value: option.value\n                });\n              }\n            });\n          } else if (input.checked || ['radio', 'checkbox', 'submit'].indexOf(input.type) === -1) {\n            return params.push({\n              name: input.name,\n              value: input.value\n            });\n          }\n        });\n\n        if (additionalParam) {\n          params.push(additionalParam);\n        }\n\n        return params.map(function (param) {\n          if (param.name != null) {\n            return encodeURIComponent(param.name) + \"=\" + encodeURIComponent(param.value);\n          } else {\n            return param;\n          }\n        }).join('&');\n      };\n\n      Rails.formElements = function (form, selector) {\n        if (matches(form, 'form')) {\n          return toArray(form.elements).filter(function (el) {\n            return matches(el, selector);\n          });\n        } else {\n          return toArray(form.querySelectorAll(selector));\n        }\n      };\n    }).call(this);\n    (function () {\n      var allowAction, fire, stopEverything;\n      fire = Rails.fire, stopEverything = Rails.stopEverything;\n\n      Rails.handleConfirm = function (e) {\n        if (!allowAction(this)) {\n          return stopEverything(e);\n        }\n      };\n\n      allowAction = function allowAction(element) {\n        var answer, callback, message;\n        message = element.getAttribute('data-confirm');\n\n        if (!message) {\n          return true;\n        }\n\n        answer = false;\n\n        if (fire(element, 'confirm')) {\n          try {\n            answer = confirm(message);\n          } catch (error) {}\n\n          callback = fire(element, 'confirm:complete', [answer]);\n        }\n\n        return answer && callback;\n      };\n    }).call(this);\n    (function () {\n      var disableFormElement, disableFormElements, disableLinkElement, enableFormElement, enableFormElements, enableLinkElement, formElements, getData, matches, setData, stopEverything;\n      matches = Rails.matches, getData = Rails.getData, setData = Rails.setData, stopEverything = Rails.stopEverything, formElements = Rails.formElements;\n\n      Rails.handleDisabledElement = function (e) {\n        var element;\n        element = this;\n\n        if (element.disabled) {\n          return stopEverything(e);\n        }\n      };\n\n      Rails.enableElement = function (e) {\n        var element;\n        element = e instanceof Event ? e.target : e;\n\n        if (matches(element, Rails.linkDisableSelector)) {\n          return enableLinkElement(element);\n        } else if (matches(element, Rails.buttonDisableSelector) || matches(element, Rails.formEnableSelector)) {\n          return enableFormElement(element);\n        } else if (matches(element, Rails.formSubmitSelector)) {\n          return enableFormElements(element);\n        }\n      };\n\n      Rails.disableElement = function (e) {\n        var element;\n        element = e instanceof Event ? e.target : e;\n\n        if (matches(element, Rails.linkDisableSelector)) {\n          return disableLinkElement(element);\n        } else if (matches(element, Rails.buttonDisableSelector) || matches(element, Rails.formDisableSelector)) {\n          return disableFormElement(element);\n        } else if (matches(element, Rails.formSubmitSelector)) {\n          return disableFormElements(element);\n        }\n      };\n\n      disableLinkElement = function disableLinkElement(element) {\n        var replacement;\n        replacement = element.getAttribute('data-disable-with');\n\n        if (replacement != null) {\n          setData(element, 'ujs:enable-with', element.innerHTML);\n          element.innerHTML = replacement;\n        }\n\n        element.addEventListener('click', stopEverything);\n        return setData(element, 'ujs:disabled', true);\n      };\n\n      enableLinkElement = function enableLinkElement(element) {\n        var originalText;\n        originalText = getData(element, 'ujs:enable-with');\n\n        if (originalText != null) {\n          element.innerHTML = originalText;\n          setData(element, 'ujs:enable-with', null);\n        }\n\n        element.removeEventListener('click', stopEverything);\n        return setData(element, 'ujs:disabled', null);\n      };\n\n      disableFormElements = function disableFormElements(form) {\n        return formElements(form, Rails.formDisableSelector).forEach(disableFormElement);\n      };\n\n      disableFormElement = function disableFormElement(element) {\n        var replacement;\n        replacement = element.getAttribute('data-disable-with');\n\n        if (replacement != null) {\n          if (matches(element, 'button')) {\n            setData(element, 'ujs:enable-with', element.innerHTML);\n            element.innerHTML = replacement;\n          } else {\n            setData(element, 'ujs:enable-with', element.value);\n            element.value = replacement;\n          }\n        }\n\n        element.disabled = true;\n        return setData(element, 'ujs:disabled', true);\n      };\n\n      enableFormElements = function enableFormElements(form) {\n        return formElements(form, Rails.formEnableSelector).forEach(enableFormElement);\n      };\n\n      enableFormElement = function enableFormElement(element) {\n        var originalText;\n        originalText = getData(element, 'ujs:enable-with');\n\n        if (originalText != null) {\n          if (matches(element, 'button')) {\n            element.innerHTML = originalText;\n          } else {\n            element.value = originalText;\n          }\n\n          setData(element, 'ujs:enable-with', null);\n        }\n\n        element.disabled = false;\n        return setData(element, 'ujs:disabled', null);\n      };\n    }).call(this);\n    (function () {\n      var stopEverything;\n      stopEverything = Rails.stopEverything;\n\n      Rails.handleMethod = function (e) {\n        var csrfParam, csrfToken, form, formContent, href, link, method;\n        link = this;\n        method = link.getAttribute('data-method');\n\n        if (!method) {\n          return;\n        }\n\n        href = Rails.href(link);\n        csrfToken = Rails.csrfToken();\n        csrfParam = Rails.csrfParam();\n        form = document.createElement('form');\n        formContent = \"<input name='_method' value='\" + method + \"' type='hidden' />\";\n\n        if (csrfParam != null && csrfToken != null && !Rails.isCrossDomain(href)) {\n          formContent += \"<input name='\" + csrfParam + \"' value='\" + csrfToken + \"' type='hidden' />\";\n        }\n\n        formContent += '<input type=\"submit\" />';\n        form.method = 'post';\n        form.action = href;\n        form.target = link.target;\n        form.innerHTML = formContent;\n        form.style.display = 'none';\n        document.body.appendChild(form);\n        form.querySelector('[type=\"submit\"]').click();\n        return stopEverything(e);\n      };\n    }).call(this);\n    (function () {\n      var ajax,\n          fire,\n          getData,\n          isCrossDomain,\n          isRemote,\n          matches,\n          serializeElement,\n          setData,\n          stopEverything,\n          slice = [].slice;\n      matches = Rails.matches, getData = Rails.getData, setData = Rails.setData, fire = Rails.fire, stopEverything = Rails.stopEverything, ajax = Rails.ajax, isCrossDomain = Rails.isCrossDomain, serializeElement = Rails.serializeElement;\n\n      isRemote = function isRemote(element) {\n        var value;\n        value = element.getAttribute('data-remote');\n        return value != null && value !== 'false';\n      };\n\n      Rails.handleRemote = function (e) {\n        var button, data, dataType, element, method, url, withCredentials;\n        element = this;\n\n        if (!isRemote(element)) {\n          return true;\n        }\n\n        if (!fire(element, 'ajax:before')) {\n          fire(element, 'ajax:stopped');\n          return false;\n        }\n\n        withCredentials = element.getAttribute('data-with-credentials');\n        dataType = element.getAttribute('data-type') || 'script';\n\n        if (matches(element, Rails.formSubmitSelector)) {\n          button = getData(element, 'ujs:submit-button');\n          method = getData(element, 'ujs:submit-button-formmethod') || element.method;\n          url = getData(element, 'ujs:submit-button-formaction') || element.getAttribute('action') || location.href;\n\n          if (method.toUpperCase() === 'GET') {\n            url = url.replace(/\\?.*$/, '');\n          }\n\n          if (element.enctype === 'multipart/form-data') {\n            data = new FormData(element);\n\n            if (button != null) {\n              data.append(button.name, button.value);\n            }\n          } else {\n            data = serializeElement(element, button);\n          }\n\n          setData(element, 'ujs:submit-button', null);\n          setData(element, 'ujs:submit-button-formmethod', null);\n          setData(element, 'ujs:submit-button-formaction', null);\n        } else if (matches(element, Rails.buttonClickSelector) || matches(element, Rails.inputChangeSelector)) {\n          method = element.getAttribute('data-method');\n          url = element.getAttribute('data-url');\n          data = serializeElement(element, element.getAttribute('data-params'));\n        } else {\n          method = element.getAttribute('data-method');\n          url = Rails.href(element);\n          data = element.getAttribute('data-params');\n        }\n\n        ajax({\n          type: method || 'GET',\n          url: url,\n          data: data,\n          dataType: dataType,\n          beforeSend: function beforeSend(xhr, options) {\n            if (fire(element, 'ajax:beforeSend', [xhr, options])) {\n              return fire(element, 'ajax:send', [xhr]);\n            } else {\n              fire(element, 'ajax:stopped');\n              return false;\n            }\n          },\n          success: function success() {\n            var args;\n            args = 1 <= arguments.length ? slice.call(arguments, 0) : [];\n            return fire(element, 'ajax:success', args);\n          },\n          error: function error() {\n            var args;\n            args = 1 <= arguments.length ? slice.call(arguments, 0) : [];\n            return fire(element, 'ajax:error', args);\n          },\n          complete: function complete() {\n            var args;\n            args = 1 <= arguments.length ? slice.call(arguments, 0) : [];\n            return fire(element, 'ajax:complete', args);\n          },\n          crossDomain: isCrossDomain(url),\n          withCredentials: withCredentials != null && withCredentials !== 'false'\n        });\n        return stopEverything(e);\n      };\n\n      Rails.formSubmitButtonClick = function (e) {\n        var button, form;\n        button = this;\n        form = button.form;\n\n        if (!form) {\n          return;\n        }\n\n        if (button.name) {\n          setData(form, 'ujs:submit-button', {\n            name: button.name,\n            value: button.value\n          });\n        }\n\n        setData(form, 'ujs:formnovalidate-button', button.formNoValidate);\n        setData(form, 'ujs:submit-button-formaction', button.getAttribute('formaction'));\n        return setData(form, 'ujs:submit-button-formmethod', button.getAttribute('formmethod'));\n      };\n\n      Rails.handleMetaClick = function (e) {\n        var data, link, metaClick, method;\n        link = this;\n        method = (link.getAttribute('data-method') || 'GET').toUpperCase();\n        data = link.getAttribute('data-params');\n        metaClick = e.metaKey || e.ctrlKey;\n\n        if (metaClick && method === 'GET' && !data) {\n          return e.stopImmediatePropagation();\n        }\n      };\n    }).call(this);\n    (function () {\n      var $, CSRFProtection, delegate, disableElement, enableElement, fire, formSubmitButtonClick, getData, handleConfirm, handleDisabledElement, handleMetaClick, handleMethod, handleRemote, refreshCSRFTokens;\n      fire = Rails.fire, delegate = Rails.delegate, getData = Rails.getData, $ = Rails.$, refreshCSRFTokens = Rails.refreshCSRFTokens, CSRFProtection = Rails.CSRFProtection, enableElement = Rails.enableElement, disableElement = Rails.disableElement, handleDisabledElement = Rails.handleDisabledElement, handleConfirm = Rails.handleConfirm, handleRemote = Rails.handleRemote, formSubmitButtonClick = Rails.formSubmitButtonClick, handleMetaClick = Rails.handleMetaClick, handleMethod = Rails.handleMethod;\n\n      if (typeof jQuery !== \"undefined\" && jQuery !== null && jQuery.ajax != null) {\n        if (jQuery.rails) {\n          throw new Error('If you load both jquery_ujs and rails-ujs, use rails-ujs only.');\n        }\n\n        jQuery.rails = Rails;\n        jQuery.ajaxPrefilter(function (options, originalOptions, xhr) {\n          if (!options.crossDomain) {\n            return CSRFProtection(xhr);\n          }\n        });\n      }\n\n      Rails.start = function () {\n        if (window._rails_loaded) {\n          throw new Error('rails-ujs has already been loaded!');\n        }\n\n        window.addEventListener('pageshow', function () {\n          $(Rails.formEnableSelector).forEach(function (el) {\n            if (getData(el, 'ujs:disabled')) {\n              return enableElement(el);\n            }\n          });\n          return $(Rails.linkDisableSelector).forEach(function (el) {\n            if (getData(el, 'ujs:disabled')) {\n              return enableElement(el);\n            }\n          });\n        });\n        delegate(document, Rails.linkDisableSelector, 'ajax:complete', enableElement);\n        delegate(document, Rails.linkDisableSelector, 'ajax:stopped', enableElement);\n        delegate(document, Rails.buttonDisableSelector, 'ajax:complete', enableElement);\n        delegate(document, Rails.buttonDisableSelector, 'ajax:stopped', enableElement);\n        delegate(document, Rails.linkClickSelector, 'click', handleDisabledElement);\n        delegate(document, Rails.linkClickSelector, 'click', handleConfirm);\n        delegate(document, Rails.linkClickSelector, 'click', handleMetaClick);\n        delegate(document, Rails.linkClickSelector, 'click', disableElement);\n        delegate(document, Rails.linkClickSelector, 'click', handleRemote);\n        delegate(document, Rails.linkClickSelector, 'click', handleMethod);\n        delegate(document, Rails.buttonClickSelector, 'click', handleDisabledElement);\n        delegate(document, Rails.buttonClickSelector, 'click', handleConfirm);\n        delegate(document, Rails.buttonClickSelector, 'click', disableElement);\n        delegate(document, Rails.buttonClickSelector, 'click', handleRemote);\n        delegate(document, Rails.inputChangeSelector, 'change', handleDisabledElement);\n        delegate(document, Rails.inputChangeSelector, 'change', handleConfirm);\n        delegate(document, Rails.inputChangeSelector, 'change', handleRemote);\n        delegate(document, Rails.formSubmitSelector, 'submit', handleDisabledElement);\n        delegate(document, Rails.formSubmitSelector, 'submit', handleConfirm);\n        delegate(document, Rails.formSubmitSelector, 'submit', handleRemote);\n        delegate(document, Rails.formSubmitSelector, 'submit', function (e) {\n          return setTimeout(function () {\n            return disableElement(e);\n          }, 13);\n        });\n        delegate(document, Rails.formSubmitSelector, 'ajax:send', disableElement);\n        delegate(document, Rails.formSubmitSelector, 'ajax:complete', enableElement);\n        delegate(document, Rails.formInputClickSelector, 'click', handleDisabledElement);\n        delegate(document, Rails.formInputClickSelector, 'click', handleConfirm);\n        delegate(document, Rails.formInputClickSelector, 'click', formSubmitButtonClick);\n        document.addEventListener('DOMContentLoaded', refreshCSRFTokens);\n        return window._rails_loaded = true;\n      };\n\n      if (window.Rails === Rails && fire(document, 'rails:attachBindings')) {\n        Rails.start();\n      }\n    }).call(this);\n  }).call(this);\n\n  if (typeof module === \"object\" && module.exports) {\n    module.exports = Rails;\n  } else if (typeof define === \"function\" && define.amd) {\n    define(Rails);\n  }\n}).call(this);","//  This file will be loaded on settings pages, regardless of theme.\n\nimport escapeTextContentForBrowser from 'escape-html';\nconst { delegate } = require('rails-ujs');\nimport emojify from '../mastodon/features/emoji/emoji';\n\ndelegate(document, '#account_display_name', 'input', ({ target }) => {\n  const name = document.querySelector('.card .display-name strong');\n  if (name) {\n    if (target.value) {\n      name.innerHTML = emojify(escapeTextContentForBrowser(target.value));\n    } else {\n      name.textContent = document.querySelector('#default_account_display_name').textContent;\n    }\n  }\n});\n\ndelegate(document, '#account_avatar', 'change', ({ target }) => {\n  const avatar = document.querySelector('.card .avatar img');\n  const [file] = target.files || [];\n  const url = file ? URL.createObjectURL(file) : avatar.dataset.originalSrc;\n\n  avatar.src = url;\n});\n\ndelegate(document, '#account_header', 'change', ({ target }) => {\n  const header = document.querySelector('.card .card__img img');\n  const [file] = target.files || [];\n  const url = file ? URL.createObjectURL(file) : header.dataset.originalSrc;\n\n  header.src = url;\n});\n\ndelegate(document, '#account_locked', 'change', ({ target }) => {\n  const lock = document.querySelector('.card .display-name i');\n\n  if (target.checked) {\n    lock.style.display = 'inline';\n  } else {\n    lock.style.display = 'none';\n  }\n});\n\ndelegate(document, '.input-copy input', 'click', ({ target }) => {\n  target.select();\n});\n\ndelegate(document, '.input-copy button', 'click', ({ target }) => {\n  const input = target.parentNode.querySelector('.input-copy__wrapper input');\n\n  input.focus();\n  input.select();\n\n  try {\n    if (document.execCommand('copy')) {\n      input.blur();\n      target.parentNode.classList.add('copied');\n\n    setTimeout(() => {\n        target.parentNode.classList.remove('copied');\n      }, 700);\n    }\n  } catch (err) {\n    console.error(err);\n  }\n});\n"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"sources":["webpack:///app/javascript/builds/pleroma/mastofe/app/javascript/mastodon/features/emoji/unicode_to_filename.js","webpack:///app/javascript/builds/pleroma/mastofe/app/javascript/mastodon/initial_state.js","webpack:///app/javascript/builds/pleroma/mastofe/app/javascript/mastodon/features/emoji/emoji.js","webpack:///./node_modules/escape-html/index.js","webpack:///./node_modules/process/browser.js","webpack:///./node_modules/substring-trie/index.js","webpack:///app/javascript/builds/pleroma/mastofe/app/javascript/mastodon/features/emoji/emoji_unicode_mapping_light.js","webpack:///./node_modules/rails-ujs/lib/assets/compiled/rails-ujs.js","webpack:///app/javascript/builds/pleroma/mastofe/app/javascript/core/settings.js"],"names":["exports","unicodeToFilename","str","result","charCode","p","i","length","charCodeAt","toString","__webpack_require__","d","__webpack_exports__","reduceMotion","autoPlayGif","displayMedia","expandSpoilers","unfollowModal","boostModal","deleteModal","me","searchEnabled","maxChars","invitesEnabled","profile_directory","isStaff","deleteOthersNotice","prop","element","document","getElementById","initialState","JSON","parse","textContent","getMeta","meta","rights","r","process","buildCustomEmojis","_initial_state__WEBPACK_IMPORTED_MODULE_0__","_emoji_unicode_mapping_light__WEBPACK_IMPORTED_MODULE_1__","_emoji_unicode_mapping_light__WEBPACK_IMPORTED_MODULE_1___default","n","substring_trie__WEBPACK_IMPORTED_MODULE_2__","trie","Trie","Object","keys","unicodeMapping","assetHost","env","CDN_HOST","emojify","customEmojis","tagCharsWithEmojis","rtn","tagChars","invisible","_loop","match","tag","indexOf","search","slice","codePointAt","rend","replacement","lt","shortname","filename","url","static_url","startsWith","_unicodeMapping$match","shortCode","emojis","forEach","emoji","shortcode","get","name","replace","push","id","short_names","text","emoticons","keywords","imageUrl","custom","matchHtmlRegExp","module","string","escape","exec","html","index","lastIndex","substring","cachedSetTimeout","cachedClearTimeout","defaultSetTimout","Error","defaultClearTimeout","runTimeout","fun","setTimeout","e","call","this","clearTimeout","currentQueue","queue","draining","queueIndex","cleanUpNextTick","concat","drainQueue","timeout","len","run","marker","runClearTimeout","Item","array","noop","nextTick","args","Array","arguments","prototype","apply","title","browser","argv","version","versions","on","addListener","once","off","removeListener","removeAllListeners","emit","prependListener","prependOnceListener","listeners","binding","cwd","chdir","dir","umask","MiniTrie","words","_dict","word","dict","j","len2","char","charAt","stack","pop","require","shortCodesToEmojiData","emojisWithoutShortCodes","processEmojiMapData","emojiMapData","native","__WEBPACK_AMD_DEFINE_FACTORY__","__WEBPACK_AMD_DEFINE_RESULT__","Rails","linkClickSelector","buttonClickSelector","selector","exclude","inputChangeSelector","formSubmitSelector","formInputClickSelector","formDisableSelector","formEnableSelector","fileInputSelector","linkDisableSelector","buttonDisableSelector","cspNonce","querySelector","content","expando","m","Element","matches","matchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","webkitMatchesSelector","getData","key","ref","setData","value","$","querySelectorAll","csrfParam","csrfToken","CSRFProtection","xhr","token","setRequestHeader","refreshCSRFTokens","param","input","CustomEvent","fire","preventDefault","window","event","params","evt","createEvent","initCustomEvent","bubbles","cancelable","detail","Event","defaultPrevented","defineProperty","obj","data","dispatchEvent","stopEverything","target","stopPropagation","stopImmediatePropagation","delegate","eventType","handler","addEventListener","parentNode","AcceptHeaders","createXHR","prepareOptions","processResponse","*","xml","json","script","ajax","options","response","responseText","getResponseHeader","Math","floor","status","success","statusText","error","complete","beforeSend","readyState","XMLHttpRequest","OPENED","send","location","href","type","toUpperCase","dataType","accept","done","open","crossDomain","withCredentials","onreadystatechange","DONE","parser","createElement","setAttribute","head","appendChild","removeChild","DOMParser","parseFromString","isCrossDomain","originAnchor","urlAnchor","protocol","host","toArray","serializeElement","additionalParam","inputs","elements","disabled","option","selected","checked","map","encodeURIComponent","join","formElements","form","filter","el","allowAction","handleConfirm","answer","callback","message","getAttribute","confirm","disableFormElement","disableFormElements","disableLinkElement","enableFormElement","enableFormElements","enableLinkElement","handleDisabledElement","enableElement","disableElement","innerHTML","originalText","removeEventListener","handleMethod","formContent","method","action","style","display","body","click","isRemote","handleRemote","button","enctype","FormData","append","formSubmitButtonClick","formNoValidate","handleMetaClick","metaKey","ctrlKey","jQuery","rails","ajaxPrefilter","originalOptions","start","_rails_loaded","undefined","escape_html__WEBPACK_IMPORTED_MODULE_0__","escape_html__WEBPACK_IMPORTED_MODULE_0___default","_mastodon_features_emoji_emoji__WEBPACK_IMPORTED_MODULE_1__","_ref","escapeTextContentForBrowser","_ref2","avatar","file","files","URL","createObjectURL","dataset","originalSrc","src","_ref4","header","_ref6","lock","_ref7","focus","select","setSelectionRange","_ref8","oldReadOnly","readonly","execCommand","blur","classList","add","remove","err","console"],"mappings":"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","file":"core/settings.js","sourcesContent":["// taken from:\n// https://github.com/twitter/twemoji/blob/47732c7/twemoji-generator.js#L848-L866\nexports.unicodeToFilename = (str) => {\n  let result = '';\n  let charCode = 0;\n  let p = 0;\n  let i = 0;\n  while (i < str.length) {\n    charCode = str.charCodeAt(i++);\n    if (p) {\n      if (result.length > 0) {\n        result += '-';\n      }\n      result += (0x10000 + ((p - 0xD800) << 10) + (charCode - 0xDC00)).toString(16);\n      p = 0;\n    } else if (0xD800 <= charCode && charCode <= 0xDBFF) {\n      p = charCode;\n    } else {\n      if (result.length > 0) {\n        result += '-';\n      }\n      result += charCode.toString(16);\n    }\n  }\n  return result;\n};\n","const element = document.getElementById('initial-state');\nconst initialState = element && JSON.parse(element.textContent);\n\nconst getMeta = (prop) => initialState && initialState.meta && initialState.meta[prop];\nconst getRight = (prop) => initialState && initialState.rights && initialState.rights[prop];\n\nexport const reduceMotion = getMeta('reduce_motion');\nexport const autoPlayGif = getMeta('auto_play_gif');\nexport const displayMedia = getMeta('display_media');\nexport const expandSpoilers = getMeta('expand_spoilers');\nexport const unfollowModal = getMeta('unfollow_modal');\nexport const boostModal = getMeta('boost_modal');\nexport const deleteModal = getMeta('delete_modal');\nexport const me = getMeta('me');\nexport const searchEnabled = getMeta('search_enabled');\nexport const maxChars = getMeta('max_toot_chars') || 500;\nexport const invitesEnabled = getMeta('invites_enabled');\nexport const repository = getMeta('repository');\nexport const source_url = getMeta('source_url');\nexport const version = getMeta('version');\nexport const mascot = getMeta('mascot');\nexport const profile_directory = getMeta('profile_directory');\nexport const isStaff = getMeta('is_staff');\n\nexport const deleteOthersNotice = getRight('delete_others_notice');\n\nexport default initialState;\n","import { autoPlayGif } from '../../initial_state';\nimport unicodeMapping from './emoji_unicode_mapping_light';\nimport Trie from 'substring-trie';\n\nconst trie = new Trie(Object.keys(unicodeMapping));\n\nconst assetHost = process.env.CDN_HOST || '';\n\nconst emojify = (str, customEmojis = {}) => {\n  const tagCharsWithoutEmojis = '<&';\n  const tagCharsWithEmojis = Object.keys(customEmojis).length ? '<&:' : '<&';\n  let rtn = '', tagChars = tagCharsWithEmojis, invisible = 0;\n  for (;;) {\n    let match, i = 0, tag;\n    while (i < str.length && (tag = tagChars.indexOf(str[i])) === -1 && (invisible || !(match = trie.search(str.slice(i))))) {\n      i += str.codePointAt(i) < 65536 ? 1 : 2;\n    }\n    let rend, replacement = '';\n    if (i === str.length) {\n      break;\n    } else if (str[i] === ':') {\n      if (!(() => {\n        rend = str.indexOf(':', i + 1) + 1;\n        if (!rend) return false; // no pair of ':'\n        const lt = str.indexOf('<', i + 1);\n        if (!(lt === -1 || lt >= rend)) return false; // tag appeared before closing ':'\n        const shortname = str.slice(i, rend);\n        // now got a replacee as ':shortname:'\n        // if you want additional emoji handler, add statements below which set replacement and return true.\n        if (shortname in customEmojis) {\n          const filename = autoPlayGif ? customEmojis[shortname].url : customEmojis[shortname].static_url;\n          replacement = `<img draggable=\"false\" class=\"emojione\" alt=\"${shortname}\" title=\"${shortname}\" src=\"${filename}\" />`;\n          return true;\n        }\n        return false;\n      })()) rend = ++i;\n    } else if (tag >= 0) { // <, &\n      rend = str.indexOf('>;'[tag], i + 1) + 1;\n      if (!rend) {\n        break;\n      }\n      if (tag === 0) {\n        if (invisible) {\n          if (str[i + 1] === '/') { // closing tag\n            if (!--invisible) {\n              tagChars = tagCharsWithEmojis;\n            }\n          } else if (str[rend - 2] !== '/') { // opening tag\n            invisible++;\n          }\n        } else {\n          if (str.startsWith('<span class=\"invisible\">', i)) {\n            // avoid emojifying on invisible text\n            invisible = 1;\n            tagChars = tagCharsWithoutEmojis;\n          }\n        }\n      }\n      i = rend;\n    } else { // matched to unicode emoji\n      const { filename, shortCode } = unicodeMapping[match];\n      const title = shortCode ? `:${shortCode}:` : '';\n      replacement = `<img draggable=\"false\" class=\"emojione\" alt=\"${match}\" title=\"${title}\" src=\"${assetHost}/emoji/${filename}.svg\" />`;\n      rend = i + match.length;\n      // If the matched character was followed by VS15 (for selecting text presentation), skip it.\n      if (str.codePointAt(rend) === 65038) {\n        rend += 1;\n      }\n    }\n    rtn += str.slice(0, i) + replacement;\n    str = str.slice(rend);\n  }\n  return rtn + str;\n};\n\nexport default emojify;\n\nexport const buildCustomEmojis = (customEmojis) => {\n  const emojis = [];\n\n  customEmojis.forEach(emoji => {\n    const shortcode = emoji.get('shortcode');\n    const url       = autoPlayGif ? emoji.get('url') : emoji.get('static_url');\n    const name      = shortcode.replace(':', '');\n\n    emojis.push({\n      id: name,\n      name,\n      short_names: [name],\n      text: '',\n      emoticons: [],\n      keywords: [name],\n      imageUrl: url,\n      custom: true,\n    });\n  });\n\n  return emojis;\n};\n","/*!\n * escape-html\n * Copyright(c) 2012-2013 TJ Holowaychuk\n * Copyright(c) 2015 Andreas Lubbe\n * Copyright(c) 2015 Tiancheng \"Timothy\" Gu\n * MIT Licensed\n */\n'use strict';\n/**\n * Module variables.\n * @private\n */\n\nvar matchHtmlRegExp = /[\"'&<>]/;\n/**\n * Module exports.\n * @public\n */\n\nmodule.exports = escapeHtml;\n/**\n * Escape special characters in the given string of html.\n *\n * @param  {string} string The string to escape for inserting into HTML\n * @return {string}\n * @public\n */\n\nfunction escapeHtml(string) {\n  var str = '' + string;\n  var match = matchHtmlRegExp.exec(str);\n\n  if (!match) {\n    return str;\n  }\n\n  var escape;\n  var html = '';\n  var index = 0;\n  var lastIndex = 0;\n\n  for (index = match.index; index < str.length; index++) {\n    switch (str.charCodeAt(index)) {\n      case 34:\n        // \"\n        escape = '&quot;';\n        break;\n\n      case 38:\n        // &\n        escape = '&amp;';\n        break;\n\n      case 39:\n        // '\n        escape = '&#39;';\n        break;\n\n      case 60:\n        // <\n        escape = '&lt;';\n        break;\n\n      case 62:\n        // >\n        escape = '&gt;';\n        break;\n\n      default:\n        continue;\n    }\n\n    if (lastIndex !== index) {\n      html += str.substring(lastIndex, index);\n    }\n\n    lastIndex = index + 1;\n    html += escape;\n  }\n\n  return lastIndex !== index ? html + str.substring(lastIndex, index) : html;\n}","// shim for using process in browser\nvar process = module.exports = {}; // cached from whatever global is present so that test runners that stub it\n// don't break things.  But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals.  It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n  throw new Error('setTimeout has not been defined');\n}\n\nfunction defaultClearTimeout() {\n  throw new Error('clearTimeout has not been defined');\n}\n\n(function () {\n  try {\n    if (typeof setTimeout === 'function') {\n      cachedSetTimeout = setTimeout;\n    } else {\n      cachedSetTimeout = defaultSetTimout;\n    }\n  } catch (e) {\n    cachedSetTimeout = defaultSetTimout;\n  }\n\n  try {\n    if (typeof clearTimeout === 'function') {\n      cachedClearTimeout = clearTimeout;\n    } else {\n      cachedClearTimeout = defaultClearTimeout;\n    }\n  } catch (e) {\n    cachedClearTimeout = defaultClearTimeout;\n  }\n})();\n\nfunction runTimeout(fun) {\n  if (cachedSetTimeout === setTimeout) {\n    //normal enviroments in sane situations\n    return setTimeout(fun, 0);\n  } // if setTimeout wasn't available but was latter defined\n\n\n  if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n    cachedSetTimeout = setTimeout;\n    return setTimeout(fun, 0);\n  }\n\n  try {\n    // when when somebody has screwed with setTimeout but no I.E. maddness\n    return cachedSetTimeout(fun, 0);\n  } catch (e) {\n    try {\n      // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n      return cachedSetTimeout.call(null, fun, 0);\n    } catch (e) {\n      // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n      return cachedSetTimeout.call(this, fun, 0);\n    }\n  }\n}\n\nfunction runClearTimeout(marker) {\n  if (cachedClearTimeout === clearTimeout) {\n    //normal enviroments in sane situations\n    return clearTimeout(marker);\n  } // if clearTimeout wasn't available but was latter defined\n\n\n  if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n    cachedClearTimeout = clearTimeout;\n    return clearTimeout(marker);\n  }\n\n  try {\n    // when when somebody has screwed with setTimeout but no I.E. maddness\n    return cachedClearTimeout(marker);\n  } catch (e) {\n    try {\n      // When we are in I.E. but the script has been evaled so I.E. doesn't  trust the global object when called normally\n      return cachedClearTimeout.call(null, marker);\n    } catch (e) {\n      // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n      // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n      return cachedClearTimeout.call(this, marker);\n    }\n  }\n}\n\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n  if (!draining || !currentQueue) {\n    return;\n  }\n\n  draining = false;\n\n  if (currentQueue.length) {\n    queue = currentQueue.concat(queue);\n  } else {\n    queueIndex = -1;\n  }\n\n  if (queue.length) {\n    drainQueue();\n  }\n}\n\nfunction drainQueue() {\n  if (draining) {\n    return;\n  }\n\n  var timeout = runTimeout(cleanUpNextTick);\n  draining = true;\n  var len = queue.length;\n\n  while (len) {\n    currentQueue = queue;\n    queue = [];\n\n    while (++queueIndex < len) {\n      if (currentQueue) {\n        currentQueue[queueIndex].run();\n      }\n    }\n\n    queueIndex = -1;\n    len = queue.length;\n  }\n\n  currentQueue = null;\n  draining = false;\n  runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n  var args = new Array(arguments.length - 1);\n\n  if (arguments.length > 1) {\n    for (var i = 1; i < arguments.length; i++) {\n      args[i - 1] = arguments[i];\n    }\n  }\n\n  queue.push(new Item(fun, args));\n\n  if (queue.length === 1 && !draining) {\n    runTimeout(drainQueue);\n  }\n}; // v8 likes predictible objects\n\n\nfunction Item(fun, array) {\n  this.fun = fun;\n  this.array = array;\n}\n\nItem.prototype.run = function () {\n  this.fun.apply(null, this.array);\n};\n\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\n\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) {\n  return [];\n};\n\nprocess.binding = function (name) {\n  throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () {\n  return '/';\n};\n\nprocess.chdir = function (dir) {\n  throw new Error('process.chdir is not supported');\n};\n\nprocess.umask = function () {\n  return 0;\n};","'use strict';\n\nvar CODA_MARKER = '$$'; // marks the end of the string\n\nfunction MiniTrie(words) {\n  this._dict = {};\n\n  for (var i = 0, len = words.length; i < len; i++) {\n    var word = words[i];\n    var dict = this._dict;\n\n    for (var j = 0, len2 = word.length; j < len2; j++) {\n      var char = word.charAt(j);\n      dict = dict[char] = dict[char] || {};\n    }\n\n    dict[CODA_MARKER] = true;\n  }\n}\n\nMiniTrie.prototype.search = function (str) {\n  var i = -1;\n  var len = str.length;\n  var stack = [this._dict];\n\n  while (++i < len) {\n    var dict = stack[i];\n    var char = str.charAt(i);\n\n    if (char in dict) {\n      stack.push(dict[char]);\n    } else {\n      break;\n    }\n  }\n\n  while (stack.length) {\n    if (stack.pop()[CODA_MARKER]) {\n      return str.substring(0, stack.length);\n    }\n  }\n};\n\nmodule.exports = MiniTrie;","// A mapping of unicode strings to an object containing the filename\n// (i.e. the svg filename) and a shortCode intended to be shown\n// as a \"title\" attribute in an HTML element (aka tooltip).\n\nconst [\n  shortCodesToEmojiData,\n  skins, // eslint-disable-line no-unused-vars\n  categories, // eslint-disable-line no-unused-vars\n  short_names, // eslint-disable-line no-unused-vars\n  emojisWithoutShortCodes,\n] = require('./emoji_compressed');\nconst { unicodeToFilename } = require('./unicode_to_filename');\n\n// decompress\nconst unicodeMapping = {};\n\nfunction processEmojiMapData(emojiMapData, shortCode) {\n  let [ native, filename ] = emojiMapData;\n  if (!filename) {\n    // filename name can be derived from unicodeToFilename\n    filename = unicodeToFilename(native);\n  }\n  unicodeMapping[native] = {\n    shortCode: shortCode,\n    filename: filename,\n  };\n}\n\nObject.keys(shortCodesToEmojiData).forEach((shortCode) => {\n  let [ filenameData ] = shortCodesToEmojiData[shortCode];\n  filenameData.forEach(emojiMapData => processEmojiMapData(emojiMapData, shortCode));\n});\nemojisWithoutShortCodes.forEach(emojiMapData => processEmojiMapData(emojiMapData));\n\nmodule.exports = unicodeMapping;\n","/*\nUnobtrusive JavaScript\nhttps://github.com/rails/rails/blob/master/actionview/app/assets/javascripts\nReleased under the MIT license\n */\n(function () {\n  var context = this;\n  (function () {\n    (function () {\n      this.Rails = {\n        linkClickSelector: 'a[data-confirm], a[data-method], a[data-remote]:not([disabled]), a[data-disable-with], a[data-disable]',\n        buttonClickSelector: {\n          selector: 'button[data-remote]:not([form]), button[data-confirm]:not([form])',\n          exclude: 'form button'\n        },\n        inputChangeSelector: 'select[data-remote], input[data-remote], textarea[data-remote]',\n        formSubmitSelector: 'form',\n        formInputClickSelector: 'form input[type=submit], form input[type=image], form button[type=submit], form button:not([type]), input[type=submit][form], input[type=image][form], button[type=submit][form], button[form]:not([type])',\n        formDisableSelector: 'input[data-disable-with]:enabled, button[data-disable-with]:enabled, textarea[data-disable-with]:enabled, input[data-disable]:enabled, button[data-disable]:enabled, textarea[data-disable]:enabled',\n        formEnableSelector: 'input[data-disable-with]:disabled, button[data-disable-with]:disabled, textarea[data-disable-with]:disabled, input[data-disable]:disabled, button[data-disable]:disabled, textarea[data-disable]:disabled',\n        fileInputSelector: 'input[name][type=file]:not([disabled])',\n        linkDisableSelector: 'a[data-disable-with], a[data-disable]',\n        buttonDisableSelector: 'button[data-remote][data-disable-with], button[data-remote][data-disable]'\n      };\n    }).call(this);\n  }).call(context);\n  var Rails = context.Rails;\n  (function () {\n    (function () {\n      var cspNonce;\n\n      cspNonce = Rails.cspNonce = function () {\n        var meta;\n        meta = document.querySelector('meta[name=csp-nonce]');\n        return meta && meta.content;\n      };\n    }).call(this);\n    (function () {\n      var expando, m;\n      m = Element.prototype.matches || Element.prototype.matchesSelector || Element.prototype.mozMatchesSelector || Element.prototype.msMatchesSelector || Element.prototype.oMatchesSelector || Element.prototype.webkitMatchesSelector;\n\n      Rails.matches = function (element, selector) {\n        if (selector.exclude != null) {\n          return m.call(element, selector.selector) && !m.call(element, selector.exclude);\n        } else {\n          return m.call(element, selector);\n        }\n      };\n\n      expando = '_ujsData';\n\n      Rails.getData = function (element, key) {\n        var ref;\n        return (ref = element[expando]) != null ? ref[key] : void 0;\n      };\n\n      Rails.setData = function (element, key, value) {\n        if (element[expando] == null) {\n          element[expando] = {};\n        }\n\n        return element[expando][key] = value;\n      };\n\n      Rails.$ = function (selector) {\n        return Array.prototype.slice.call(document.querySelectorAll(selector));\n      };\n    }).call(this);\n    (function () {\n      var $, csrfParam, csrfToken;\n      $ = Rails.$;\n\n      csrfToken = Rails.csrfToken = function () {\n        var meta;\n        meta = document.querySelector('meta[name=csrf-token]');\n        return meta && meta.content;\n      };\n\n      csrfParam = Rails.csrfParam = function () {\n        var meta;\n        meta = document.querySelector('meta[name=csrf-param]');\n        return meta && meta.content;\n      };\n\n      Rails.CSRFProtection = function (xhr) {\n        var token;\n        token = csrfToken();\n\n        if (token != null) {\n          return xhr.setRequestHeader('X-CSRF-Token', token);\n        }\n      };\n\n      Rails.refreshCSRFTokens = function () {\n        var param, token;\n        token = csrfToken();\n        param = csrfParam();\n\n        if (token != null && param != null) {\n          return $('form input[name=\"' + param + '\"]').forEach(function (input) {\n            return input.value = token;\n          });\n        }\n      };\n    }).call(this);\n    (function () {\n      var CustomEvent, fire, matches, preventDefault;\n      matches = Rails.matches;\n      CustomEvent = window.CustomEvent;\n\n      if (typeof CustomEvent !== 'function') {\n        CustomEvent = function CustomEvent(event, params) {\n          var evt;\n          evt = document.createEvent('CustomEvent');\n          evt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail);\n          return evt;\n        };\n\n        CustomEvent.prototype = window.Event.prototype;\n        preventDefault = CustomEvent.prototype.preventDefault;\n\n        CustomEvent.prototype.preventDefault = function () {\n          var result;\n          result = preventDefault.call(this);\n\n          if (this.cancelable && !this.defaultPrevented) {\n            Object.defineProperty(this, 'defaultPrevented', {\n              get: function get() {\n                return true;\n              }\n            });\n          }\n\n          return result;\n        };\n      }\n\n      fire = Rails.fire = function (obj, name, data) {\n        var event;\n        event = new CustomEvent(name, {\n          bubbles: true,\n          cancelable: true,\n          detail: data\n        });\n        obj.dispatchEvent(event);\n        return !event.defaultPrevented;\n      };\n\n      Rails.stopEverything = function (e) {\n        fire(e.target, 'ujs:everythingStopped');\n        e.preventDefault();\n        e.stopPropagation();\n        return e.stopImmediatePropagation();\n      };\n\n      Rails.delegate = function (element, selector, eventType, handler) {\n        return element.addEventListener(eventType, function (e) {\n          var target;\n          target = e.target;\n\n          while (!(!(target instanceof Element) || matches(target, selector))) {\n            target = target.parentNode;\n          }\n\n          if (target instanceof Element && handler.call(target, e) === false) {\n            e.preventDefault();\n            return e.stopPropagation();\n          }\n        });\n      };\n    }).call(this);\n    (function () {\n      var AcceptHeaders, CSRFProtection, createXHR, cspNonce, fire, prepareOptions, processResponse;\n      cspNonce = Rails.cspNonce, CSRFProtection = Rails.CSRFProtection, fire = Rails.fire;\n      AcceptHeaders = {\n        '*': '*/*',\n        text: 'text/plain',\n        html: 'text/html',\n        xml: 'application/xml, text/xml',\n        json: 'application/json, text/javascript',\n        script: 'text/javascript, application/javascript, application/ecmascript, application/x-ecmascript'\n      };\n\n      Rails.ajax = function (options) {\n        var xhr;\n        options = prepareOptions(options);\n        xhr = createXHR(options, function () {\n          var ref, response;\n          response = processResponse((ref = xhr.response) != null ? ref : xhr.responseText, xhr.getResponseHeader('Content-Type'));\n\n          if (Math.floor(xhr.status / 100) === 2) {\n            if (typeof options.success === \"function\") {\n              options.success(response, xhr.statusText, xhr);\n            }\n          } else {\n            if (typeof options.error === \"function\") {\n              options.error(response, xhr.statusText, xhr);\n            }\n          }\n\n          return typeof options.complete === \"function\" ? options.complete(xhr, xhr.statusText) : void 0;\n        });\n\n        if (options.beforeSend != null && !options.beforeSend(xhr, options)) {\n          return false;\n        }\n\n        if (xhr.readyState === XMLHttpRequest.OPENED) {\n          return xhr.send(options.data);\n        }\n      };\n\n      prepareOptions = function prepareOptions(options) {\n        options.url = options.url || location.href;\n        options.type = options.type.toUpperCase();\n\n        if (options.type === 'GET' && options.data) {\n          if (options.url.indexOf('?') < 0) {\n            options.url += '?' + options.data;\n          } else {\n            options.url += '&' + options.data;\n          }\n        }\n\n        if (AcceptHeaders[options.dataType] == null) {\n          options.dataType = '*';\n        }\n\n        options.accept = AcceptHeaders[options.dataType];\n\n        if (options.dataType !== '*') {\n          options.accept += ', */*; q=0.01';\n        }\n\n        return options;\n      };\n\n      createXHR = function createXHR(options, done) {\n        var xhr;\n        xhr = new XMLHttpRequest();\n        xhr.open(options.type, options.url, true);\n        xhr.setRequestHeader('Accept', options.accept);\n\n        if (typeof options.data === 'string') {\n          xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');\n        }\n\n        if (!options.crossDomain) {\n          xhr.setRequestHeader('X-Requested-With', 'XMLHttpRequest');\n        }\n\n        CSRFProtection(xhr);\n        xhr.withCredentials = !!options.withCredentials;\n\n        xhr.onreadystatechange = function () {\n          if (xhr.readyState === XMLHttpRequest.DONE) {\n            return done(xhr);\n          }\n        };\n\n        return xhr;\n      };\n\n      processResponse = function processResponse(response, type) {\n        var parser, script;\n\n        if (typeof response === 'string' && typeof type === 'string') {\n          if (type.match(/\\bjson\\b/)) {\n            try {\n              response = JSON.parse(response);\n            } catch (error) {}\n          } else if (type.match(/\\b(?:java|ecma)script\\b/)) {\n            script = document.createElement('script');\n            script.setAttribute('nonce', cspNonce());\n            script.text = response;\n            document.head.appendChild(script).parentNode.removeChild(script);\n          } else if (type.match(/\\b(xml|html|svg)\\b/)) {\n            parser = new DOMParser();\n            type = type.replace(/;.+/, '');\n\n            try {\n              response = parser.parseFromString(response, type);\n            } catch (error) {}\n          }\n        }\n\n        return response;\n      };\n\n      Rails.href = function (element) {\n        return element.href;\n      };\n\n      Rails.isCrossDomain = function (url) {\n        var e, originAnchor, urlAnchor;\n        originAnchor = document.createElement('a');\n        originAnchor.href = location.href;\n        urlAnchor = document.createElement('a');\n\n        try {\n          urlAnchor.href = url;\n          return !((!urlAnchor.protocol || urlAnchor.protocol === ':') && !urlAnchor.host || originAnchor.protocol + '//' + originAnchor.host === urlAnchor.protocol + '//' + urlAnchor.host);\n        } catch (error) {\n          e = error;\n          return true;\n        }\n      };\n    }).call(this);\n    (function () {\n      var matches, toArray;\n      matches = Rails.matches;\n\n      toArray = function toArray(e) {\n        return Array.prototype.slice.call(e);\n      };\n\n      Rails.serializeElement = function (element, additionalParam) {\n        var inputs, params;\n        inputs = [element];\n\n        if (matches(element, 'form')) {\n          inputs = toArray(element.elements);\n        }\n\n        params = [];\n        inputs.forEach(function (input) {\n          if (!input.name || input.disabled) {\n            return;\n          }\n\n          if (matches(input, 'select')) {\n            return toArray(input.options).forEach(function (option) {\n              if (option.selected) {\n                return params.push({\n                  name: input.name,\n                  value: option.value\n                });\n              }\n            });\n          } else if (input.checked || ['radio', 'checkbox', 'submit'].indexOf(input.type) === -1) {\n            return params.push({\n              name: input.name,\n              value: input.value\n            });\n          }\n        });\n\n        if (additionalParam) {\n          params.push(additionalParam);\n        }\n\n        return params.map(function (param) {\n          if (param.name != null) {\n            return encodeURIComponent(param.name) + \"=\" + encodeURIComponent(param.value);\n          } else {\n            return param;\n          }\n        }).join('&');\n      };\n\n      Rails.formElements = function (form, selector) {\n        if (matches(form, 'form')) {\n          return toArray(form.elements).filter(function (el) {\n            return matches(el, selector);\n          });\n        } else {\n          return toArray(form.querySelectorAll(selector));\n        }\n      };\n    }).call(this);\n    (function () {\n      var allowAction, fire, stopEverything;\n      fire = Rails.fire, stopEverything = Rails.stopEverything;\n\n      Rails.handleConfirm = function (e) {\n        if (!allowAction(this)) {\n          return stopEverything(e);\n        }\n      };\n\n      allowAction = function allowAction(element) {\n        var answer, callback, message;\n        message = element.getAttribute('data-confirm');\n\n        if (!message) {\n          return true;\n        }\n\n        answer = false;\n\n        if (fire(element, 'confirm')) {\n          try {\n            answer = confirm(message);\n          } catch (error) {}\n\n          callback = fire(element, 'confirm:complete', [answer]);\n        }\n\n        return answer && callback;\n      };\n    }).call(this);\n    (function () {\n      var disableFormElement, disableFormElements, disableLinkElement, enableFormElement, enableFormElements, enableLinkElement, formElements, getData, matches, setData, stopEverything;\n      matches = Rails.matches, getData = Rails.getData, setData = Rails.setData, stopEverything = Rails.stopEverything, formElements = Rails.formElements;\n\n      Rails.handleDisabledElement = function (e) {\n        var element;\n        element = this;\n\n        if (element.disabled) {\n          return stopEverything(e);\n        }\n      };\n\n      Rails.enableElement = function (e) {\n        var element;\n        element = e instanceof Event ? e.target : e;\n\n        if (matches(element, Rails.linkDisableSelector)) {\n          return enableLinkElement(element);\n        } else if (matches(element, Rails.buttonDisableSelector) || matches(element, Rails.formEnableSelector)) {\n          return enableFormElement(element);\n        } else if (matches(element, Rails.formSubmitSelector)) {\n          return enableFormElements(element);\n        }\n      };\n\n      Rails.disableElement = function (e) {\n        var element;\n        element = e instanceof Event ? e.target : e;\n\n        if (matches(element, Rails.linkDisableSelector)) {\n          return disableLinkElement(element);\n        } else if (matches(element, Rails.buttonDisableSelector) || matches(element, Rails.formDisableSelector)) {\n          return disableFormElement(element);\n        } else if (matches(element, Rails.formSubmitSelector)) {\n          return disableFormElements(element);\n        }\n      };\n\n      disableLinkElement = function disableLinkElement(element) {\n        var replacement;\n        replacement = element.getAttribute('data-disable-with');\n\n        if (replacement != null) {\n          setData(element, 'ujs:enable-with', element.innerHTML);\n          element.innerHTML = replacement;\n        }\n\n        element.addEventListener('click', stopEverything);\n        return setData(element, 'ujs:disabled', true);\n      };\n\n      enableLinkElement = function enableLinkElement(element) {\n        var originalText;\n        originalText = getData(element, 'ujs:enable-with');\n\n        if (originalText != null) {\n          element.innerHTML = originalText;\n          setData(element, 'ujs:enable-with', null);\n        }\n\n        element.removeEventListener('click', stopEverything);\n        return setData(element, 'ujs:disabled', null);\n      };\n\n      disableFormElements = function disableFormElements(form) {\n        return formElements(form, Rails.formDisableSelector).forEach(disableFormElement);\n      };\n\n      disableFormElement = function disableFormElement(element) {\n        var replacement;\n        replacement = element.getAttribute('data-disable-with');\n\n        if (replacement != null) {\n          if (matches(element, 'button')) {\n            setData(element, 'ujs:enable-with', element.innerHTML);\n            element.innerHTML = replacement;\n          } else {\n            setData(element, 'ujs:enable-with', element.value);\n            element.value = replacement;\n          }\n        }\n\n        element.disabled = true;\n        return setData(element, 'ujs:disabled', true);\n      };\n\n      enableFormElements = function enableFormElements(form) {\n        return formElements(form, Rails.formEnableSelector).forEach(enableFormElement);\n      };\n\n      enableFormElement = function enableFormElement(element) {\n        var originalText;\n        originalText = getData(element, 'ujs:enable-with');\n\n        if (originalText != null) {\n          if (matches(element, 'button')) {\n            element.innerHTML = originalText;\n          } else {\n            element.value = originalText;\n          }\n\n          setData(element, 'ujs:enable-with', null);\n        }\n\n        element.disabled = false;\n        return setData(element, 'ujs:disabled', null);\n      };\n    }).call(this);\n    (function () {\n      var stopEverything;\n      stopEverything = Rails.stopEverything;\n\n      Rails.handleMethod = function (e) {\n        var csrfParam, csrfToken, form, formContent, href, link, method;\n        link = this;\n        method = link.getAttribute('data-method');\n\n        if (!method) {\n          return;\n        }\n\n        href = Rails.href(link);\n        csrfToken = Rails.csrfToken();\n        csrfParam = Rails.csrfParam();\n        form = document.createElement('form');\n        formContent = \"<input name='_method' value='\" + method + \"' type='hidden' />\";\n\n        if (csrfParam != null && csrfToken != null && !Rails.isCrossDomain(href)) {\n          formContent += \"<input name='\" + csrfParam + \"' value='\" + csrfToken + \"' type='hidden' />\";\n        }\n\n        formContent += '<input type=\"submit\" />';\n        form.method = 'post';\n        form.action = href;\n        form.target = link.target;\n        form.innerHTML = formContent;\n        form.style.display = 'none';\n        document.body.appendChild(form);\n        form.querySelector('[type=\"submit\"]').click();\n        return stopEverything(e);\n      };\n    }).call(this);\n    (function () {\n      var ajax,\n          fire,\n          getData,\n          isCrossDomain,\n          isRemote,\n          matches,\n          serializeElement,\n          setData,\n          stopEverything,\n          slice = [].slice;\n      matches = Rails.matches, getData = Rails.getData, setData = Rails.setData, fire = Rails.fire, stopEverything = Rails.stopEverything, ajax = Rails.ajax, isCrossDomain = Rails.isCrossDomain, serializeElement = Rails.serializeElement;\n\n      isRemote = function isRemote(element) {\n        var value;\n        value = element.getAttribute('data-remote');\n        return value != null && value !== 'false';\n      };\n\n      Rails.handleRemote = function (e) {\n        var button, data, dataType, element, method, url, withCredentials;\n        element = this;\n\n        if (!isRemote(element)) {\n          return true;\n        }\n\n        if (!fire(element, 'ajax:before')) {\n          fire(element, 'ajax:stopped');\n          return false;\n        }\n\n        withCredentials = element.getAttribute('data-with-credentials');\n        dataType = element.getAttribute('data-type') || 'script';\n\n        if (matches(element, Rails.formSubmitSelector)) {\n          button = getData(element, 'ujs:submit-button');\n          method = getData(element, 'ujs:submit-button-formmethod') || element.method;\n          url = getData(element, 'ujs:submit-button-formaction') || element.getAttribute('action') || location.href;\n\n          if (method.toUpperCase() === 'GET') {\n            url = url.replace(/\\?.*$/, '');\n          }\n\n          if (element.enctype === 'multipart/form-data') {\n            data = new FormData(element);\n\n            if (button != null) {\n              data.append(button.name, button.value);\n            }\n          } else {\n            data = serializeElement(element, button);\n          }\n\n          setData(element, 'ujs:submit-button', null);\n          setData(element, 'ujs:submit-button-formmethod', null);\n          setData(element, 'ujs:submit-button-formaction', null);\n        } else if (matches(element, Rails.buttonClickSelector) || matches(element, Rails.inputChangeSelector)) {\n          method = element.getAttribute('data-method');\n          url = element.getAttribute('data-url');\n          data = serializeElement(element, element.getAttribute('data-params'));\n        } else {\n          method = element.getAttribute('data-method');\n          url = Rails.href(element);\n          data = element.getAttribute('data-params');\n        }\n\n        ajax({\n          type: method || 'GET',\n          url: url,\n          data: data,\n          dataType: dataType,\n          beforeSend: function beforeSend(xhr, options) {\n            if (fire(element, 'ajax:beforeSend', [xhr, options])) {\n              return fire(element, 'ajax:send', [xhr]);\n            } else {\n              fire(element, 'ajax:stopped');\n              return false;\n            }\n          },\n          success: function success() {\n            var args;\n            args = 1 <= arguments.length ? slice.call(arguments, 0) : [];\n            return fire(element, 'ajax:success', args);\n          },\n          error: function error() {\n            var args;\n            args = 1 <= arguments.length ? slice.call(arguments, 0) : [];\n            return fire(element, 'ajax:error', args);\n          },\n          complete: function complete() {\n            var args;\n            args = 1 <= arguments.length ? slice.call(arguments, 0) : [];\n            return fire(element, 'ajax:complete', args);\n          },\n          crossDomain: isCrossDomain(url),\n          withCredentials: withCredentials != null && withCredentials !== 'false'\n        });\n        return stopEverything(e);\n      };\n\n      Rails.formSubmitButtonClick = function (e) {\n        var button, form;\n        button = this;\n        form = button.form;\n\n        if (!form) {\n          return;\n        }\n\n        if (button.name) {\n          setData(form, 'ujs:submit-button', {\n            name: button.name,\n            value: button.value\n          });\n        }\n\n        setData(form, 'ujs:formnovalidate-button', button.formNoValidate);\n        setData(form, 'ujs:submit-button-formaction', button.getAttribute('formaction'));\n        return setData(form, 'ujs:submit-button-formmethod', button.getAttribute('formmethod'));\n      };\n\n      Rails.handleMetaClick = function (e) {\n        var data, link, metaClick, method;\n        link = this;\n        method = (link.getAttribute('data-method') || 'GET').toUpperCase();\n        data = link.getAttribute('data-params');\n        metaClick = e.metaKey || e.ctrlKey;\n\n        if (metaClick && method === 'GET' && !data) {\n          return e.stopImmediatePropagation();\n        }\n      };\n    }).call(this);\n    (function () {\n      var $, CSRFProtection, delegate, disableElement, enableElement, fire, formSubmitButtonClick, getData, handleConfirm, handleDisabledElement, handleMetaClick, handleMethod, handleRemote, refreshCSRFTokens;\n      fire = Rails.fire, delegate = Rails.delegate, getData = Rails.getData, $ = Rails.$, refreshCSRFTokens = Rails.refreshCSRFTokens, CSRFProtection = Rails.CSRFProtection, enableElement = Rails.enableElement, disableElement = Rails.disableElement, handleDisabledElement = Rails.handleDisabledElement, handleConfirm = Rails.handleConfirm, handleRemote = Rails.handleRemote, formSubmitButtonClick = Rails.formSubmitButtonClick, handleMetaClick = Rails.handleMetaClick, handleMethod = Rails.handleMethod;\n\n      if (typeof jQuery !== \"undefined\" && jQuery !== null && jQuery.ajax != null) {\n        if (jQuery.rails) {\n          throw new Error('If you load both jquery_ujs and rails-ujs, use rails-ujs only.');\n        }\n\n        jQuery.rails = Rails;\n        jQuery.ajaxPrefilter(function (options, originalOptions, xhr) {\n          if (!options.crossDomain) {\n            return CSRFProtection(xhr);\n          }\n        });\n      }\n\n      Rails.start = function () {\n        if (window._rails_loaded) {\n          throw new Error('rails-ujs has already been loaded!');\n        }\n\n        window.addEventListener('pageshow', function () {\n          $(Rails.formEnableSelector).forEach(function (el) {\n            if (getData(el, 'ujs:disabled')) {\n              return enableElement(el);\n            }\n          });\n          return $(Rails.linkDisableSelector).forEach(function (el) {\n            if (getData(el, 'ujs:disabled')) {\n              return enableElement(el);\n            }\n          });\n        });\n        delegate(document, Rails.linkDisableSelector, 'ajax:complete', enableElement);\n        delegate(document, Rails.linkDisableSelector, 'ajax:stopped', enableElement);\n        delegate(document, Rails.buttonDisableSelector, 'ajax:complete', enableElement);\n        delegate(document, Rails.buttonDisableSelector, 'ajax:stopped', enableElement);\n        delegate(document, Rails.linkClickSelector, 'click', handleDisabledElement);\n        delegate(document, Rails.linkClickSelector, 'click', handleConfirm);\n        delegate(document, Rails.linkClickSelector, 'click', handleMetaClick);\n        delegate(document, Rails.linkClickSelector, 'click', disableElement);\n        delegate(document, Rails.linkClickSelector, 'click', handleRemote);\n        delegate(document, Rails.linkClickSelector, 'click', handleMethod);\n        delegate(document, Rails.buttonClickSelector, 'click', handleDisabledElement);\n        delegate(document, Rails.buttonClickSelector, 'click', handleConfirm);\n        delegate(document, Rails.buttonClickSelector, 'click', disableElement);\n        delegate(document, Rails.buttonClickSelector, 'click', handleRemote);\n        delegate(document, Rails.inputChangeSelector, 'change', handleDisabledElement);\n        delegate(document, Rails.inputChangeSelector, 'change', handleConfirm);\n        delegate(document, Rails.inputChangeSelector, 'change', handleRemote);\n        delegate(document, Rails.formSubmitSelector, 'submit', handleDisabledElement);\n        delegate(document, Rails.formSubmitSelector, 'submit', handleConfirm);\n        delegate(document, Rails.formSubmitSelector, 'submit', handleRemote);\n        delegate(document, Rails.formSubmitSelector, 'submit', function (e) {\n          return setTimeout(function () {\n            return disableElement(e);\n          }, 13);\n        });\n        delegate(document, Rails.formSubmitSelector, 'ajax:send', disableElement);\n        delegate(document, Rails.formSubmitSelector, 'ajax:complete', enableElement);\n        delegate(document, Rails.formInputClickSelector, 'click', handleDisabledElement);\n        delegate(document, Rails.formInputClickSelector, 'click', handleConfirm);\n        delegate(document, Rails.formInputClickSelector, 'click', formSubmitButtonClick);\n        document.addEventListener('DOMContentLoaded', refreshCSRFTokens);\n        return window._rails_loaded = true;\n      };\n\n      if (window.Rails === Rails && fire(document, 'rails:attachBindings')) {\n        Rails.start();\n      }\n    }).call(this);\n  }).call(this);\n\n  if (typeof module === \"object\" && module.exports) {\n    module.exports = Rails;\n  } else if (typeof define === \"function\" && define.amd) {\n    define(Rails);\n  }\n}).call(this);","//  This file will be loaded on settings pages, regardless of theme.\n\nimport escapeTextContentForBrowser from 'escape-html';\nconst { delegate } = require('rails-ujs');\nimport emojify from '../mastodon/features/emoji/emoji';\n\ndelegate(document, '#account_display_name', 'input', ({ target }) => {\n  const name = document.querySelector('.card .display-name strong');\n  if (name) {\n    if (target.value) {\n      name.innerHTML = emojify(escapeTextContentForBrowser(target.value));\n    } else {\n      name.textContent = document.querySelector('#default_account_display_name').textContent;\n    }\n  }\n});\n\ndelegate(document, '#account_avatar', 'change', ({ target }) => {\n  const avatar = document.querySelector('.card .avatar img');\n  const [file] = target.files || [];\n  const url = file ? URL.createObjectURL(file) : avatar.dataset.originalSrc;\n\n  avatar.src = url;\n});\n\ndelegate(document, '#account_header', 'change', ({ target }) => {\n  const header = document.querySelector('.card .card__img img');\n  const [file] = target.files || [];\n  const url = file ? URL.createObjectURL(file) : header.dataset.originalSrc;\n\n  header.src = url;\n});\n\ndelegate(document, '#account_locked', 'change', ({ target }) => {\n  const lock = document.querySelector('.card .display-name i');\n\n  if (target.checked) {\n    lock.style.display = 'inline';\n  } else {\n    lock.style.display = 'none';\n  }\n});\n\ndelegate(document, '.input-copy input', 'click', ({ target }) => {\n  target.focus();\n  target.select();\n  target.setSelectionRange(0, target.value.length);\n});\n\ndelegate(document, '.input-copy button', 'click', ({ target }) => {\n  const input = target.parentNode.querySelector('.input-copy__wrapper input');\n\n  const oldReadOnly = input.readonly;\n\n  input.readonly = false;\n  input.focus();\n  input.select();\n  input.setSelectionRange(0, input.value.length);\n\n  try {\n    if (document.execCommand('copy')) {\n      input.blur();\n      target.parentNode.classList.add('copied');\n\n    setTimeout(() => {\n        target.parentNode.classList.remove('copied');\n      }, 700);\n    }\n  } catch (err) {\n    console.error(err);\n  }\n\n  input.readonly = oldReadOnly;\n});\n"],"sourceRoot":""}
\ No newline at end of file