1 line
No EOL
49 KiB
Text
1 line
No EOL
49 KiB
Text
{"version":3,"sources":["webpack:///app/javascript/tank/sources/git/git.pleroma.social/pleroma/mastofe/app/javascript/flavours/glitch/util/ready.js","webpack:///app/javascript/tank/sources/git/git.pleroma.social/pleroma/mastofe/app/javascript/flavours/glitch/util/load_polyfills.js","webpack:///app/javascript/tank/sources/git/git.pleroma.social/pleroma/mastofe/app/javascript/flavours/glitch/util/load_keyboard_extensions.js","webpack:///./node_modules/@rails/ujs/lib/assets/compiled/rails-ujs.js","webpack:///app/javascript/tank/sources/git/git.pleroma.social/pleroma/mastofe/app/javascript/flavours/glitch/packs/settings.js"],"names":["ready","loaded","includes","document","readyState","addEventListener","loadPolyfills","needsBasePolyfills","Array","prototype","HTMLCanvasElement","toBlob","window","Intl","Number","isNaN","Object","assign","values","Symbol","Promise","finally","needsExtraPolyfills","IntersectionObserver","IntersectionObserverEntry","requestIdleCallback","Image","style","all","loadKeyboardExtensions","test","navigator","userAgent","then","arrowKeyNav","register","resolve","this","Rails","linkClickSelector","buttonClickSelector","selector","exclude","inputChangeSelector","formSubmitSelector","formInputClickSelector","formDisableSelector","formEnableSelector","fileInputSelector","linkDisableSelector","buttonDisableSelector","call","nonce","loadCSPNonce","ref","querySelector","content","cspNonce","m","Element","matches","matchesSelector","mozMatchesSelector","msMatchesSelector","oMatchesSelector","webkitMatchesSelector","element","getData","key","setData","value","$","slice","querySelectorAll","csrfParam","csrfToken","meta","CSRFProtection","xhr","token","setRequestHeader","refreshCSRFTokens","param","forEach","input","CustomEvent","fire","preventDefault","event","params","evt","createEvent","initCustomEvent","bubbles","cancelable","detail","Event","result","defaultPrevented","defineProperty","get","obj","name","data","dispatchEvent","stopEverything","e","target","stopPropagation","stopImmediatePropagation","delegate","eventType","handler","parentNode","AcceptHeaders","createXHR","prepareOptions","processResponse","text","html","xml","json","script","ajax","options","response","responseText","getResponseHeader","Math","floor","status","success","statusText","error","complete","beforeSend","XMLHttpRequest","OPENED","send","url","location","href","type","toUpperCase","indexOf","dataType","accept","done","open","crossDomain","withCredentials","onreadystatechange","DONE","parser","match","JSON","parse","createElement","setAttribute","head","appendChild","removeChild","DOMParser","replace","parseFromString","isCrossDomain","originAnchor","urlAnchor","protocol","host","toArray","serializeElement","additionalParam","inputs","elements","disabled","option","selected","push","checked","map","encodeURIComponent","join","formElements","form","filter","el","allowAction","handleConfirm","confirm","message","answer","callback","getAttribute","disableFormElement","disableFormElements","disableLinkElement","enableFormElement","enableFormElements","enableLinkElement","isXhrRedirect","handleDisabledElement","enableElement","disableElement","replacement","innerHTML","originalText","removeEventListener","handleMethod","formContent","method","action","display","body","click","isRemote","handleRemote","button","enctype","FormData","append","args","arguments","length","formSubmitButtonClick","formNoValidate","preventInsignificantClick","insignificantMetaClick","metaKey","ctrlKey","jQuery","rails","Error","ajaxPrefilter","originalOptions","start","_rails_loaded","setTimeout","module","exports","require","catch","console"],"mappings":"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","file":"flavours/glitch/settings.js","sourcesContent":["export default function ready(loaded) {\n if (['interactive', 'complete'].includes(document.readyState)) {\n loaded();\n } else {\n document.addEventListener('DOMContentLoaded', loaded);\n }\n}\n","// Convenience function to load polyfills and return a promise when it's done.\n// If there are no polyfills, then this is just Promise.resolve() which means\n// it will execute in the same tick of the event loop (i.e. near-instant).\n\nfunction importBasePolyfills() {\n return import(/* webpackChunkName: \"base_polyfills\" */ './base_polyfills');\n}\n\nfunction importExtraPolyfills() {\n return import(/* webpackChunkName: \"extra_polyfills\" */ './extra_polyfills');\n}\n\nfunction loadPolyfills() {\n const needsBasePolyfills = !(\n Array.prototype.includes &&\n HTMLCanvasElement.prototype.toBlob &&\n window.Intl &&\n Number.isNaN &&\n Object.assign &&\n Object.values &&\n window.Symbol &&\n Promise.prototype.finally\n );\n\n // Latest version of Firefox and Safari do not have IntersectionObserver.\n // Edge does not have requestIdleCallback and object-fit CSS property.\n // This avoids shipping them all the polyfills.\n const needsExtraPolyfills = !(\n window.IntersectionObserver &&\n window.IntersectionObserverEntry &&\n 'isIntersecting' in IntersectionObserverEntry.prototype &&\n window.requestIdleCallback &&\n 'object-fit' in (new Image()).style\n );\n\n return Promise.all([\n needsBasePolyfills && importBasePolyfills(),\n needsExtraPolyfills && importExtraPolyfills(),\n ]);\n}\n\nexport default loadPolyfills;\n","// On KaiOS, we may not be able to use a mouse cursor or navigate using Tab-based focus, so we install\n// special left/right focus navigation keyboard listeners, at least on public pages (i.e. so folks\n// can at least log in using KaiOS devices).\n\nfunction importArrowKeyNavigation() {\n return import(/* webpackChunkName: \"arrow-key-navigation\" */ 'arrow-key-navigation');\n}\n\nexport default function loadKeyboardExtensions() {\n if (/KAIOS/.test(navigator.userAgent)) {\n return importArrowKeyNavigation().then(arrowKeyNav => {\n arrowKeyNav.register();\n });\n }\n return Promise.resolve();\n}\n","/*\nUnobtrusive JavaScript\nhttps://github.com/rails/rails/blob/master/actionview/app/assets/javascripts\nReleased under the MIT license\n */\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 nonce;\n nonce = null;\n\n Rails.loadCSPNonce = function () {\n var ref;\n return nonce = (ref = document.querySelector(\"meta[name=csp-nonce]\")) != null ? ref.content : void 0;\n };\n\n Rails.cspNonce = function () {\n return nonce != null ? nonce : Rails.loadCSPNonce();\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, 'fieldset[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 Rails.confirm = function (message, element) {\n return confirm(message);\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 = Rails.confirm(message, element);\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, isXhrRedirect, 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\n if (e instanceof Event) {\n if (isXhrRedirect(e)) {\n return;\n }\n\n element = e.target;\n } else {\n element = e;\n }\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\n if (getData(element, 'ujs:disabled')) {\n return;\n }\n\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\n if (getData(element, 'ujs:disabled')) {\n return;\n }\n\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\n isXhrRedirect = function isXhrRedirect(event) {\n var ref, xhr;\n xhr = (ref = event.detail) != null ? ref[0] : void 0;\n return (xhr != null ? xhr.getResponseHeader(\"X-Xhr-Redirect\") : void 0) != 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.preventInsignificantClick = function (e) {\n var data, insignificantMetaClick, link, metaClick, method, nonPrimaryMouseClick;\n link = this;\n method = (link.getAttribute('data-method') || 'GET').toUpperCase();\n data = link.getAttribute('data-params');\n metaClick = e.metaKey || e.ctrlKey;\n insignificantMetaClick = metaClick && method === 'GET' && !data;\n nonPrimaryMouseClick = e.button != null && e.button !== 0;\n\n if (nonPrimaryMouseClick || insignificantMetaClick) {\n return e.stopImmediatePropagation();\n }\n };\n }).call(this);\n (function () {\n var $, CSRFProtection, delegate, disableElement, enableElement, fire, formSubmitButtonClick, getData, handleConfirm, handleDisabledElement, handleMethod, handleRemote, loadCSPNonce, preventInsignificantClick, refreshCSRFTokens;\n fire = Rails.fire, delegate = Rails.delegate, getData = Rails.getData, $ = Rails.$, refreshCSRFTokens = Rails.refreshCSRFTokens, CSRFProtection = Rails.CSRFProtection, loadCSPNonce = Rails.loadCSPNonce, enableElement = Rails.enableElement, disableElement = Rails.disableElement, handleDisabledElement = Rails.handleDisabledElement, handleConfirm = Rails.handleConfirm, preventInsignificantClick = Rails.preventInsignificantClick, handleRemote = Rails.handleRemote, formSubmitButtonClick = Rails.formSubmitButtonClick, 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', preventInsignificantClick);\n delegate(document, Rails.linkClickSelector, 'click', handleDisabledElement);\n delegate(document, Rails.linkClickSelector, 'click', handleConfirm);\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', preventInsignificantClick);\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', preventInsignificantClick);\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 document.addEventListener('DOMContentLoaded', loadCSPNonce);\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);","import loadPolyfills from 'flavours/glitch/util/load_polyfills';\nimport ready from 'flavours/glitch/util/ready';\nimport loadKeyboardExtensions from 'flavours/glitch/util/load_keyboard_extensions';\n\nfunction main() {\n const { delegate } = require('@rails/ujs');\n\n delegate(document, '.sidebar__toggle__icon', 'click', () => {\n const target = document.querySelector('.sidebar ul');\n\n if (target.style.display === 'block') {\n target.style.display = 'none';\n } else {\n target.style.display = 'block';\n }\n });\n}\n\nloadPolyfills()\n .then(main)\n .then(loadKeyboardExtensions)\n .catch(error => {\n console.error(error);\n });\n"],"sourceRoot":""} |