{"version":3,"sources":["webpack:///./app/javascript/shared/utils.js","webpack:///./app/javascript/shared/activestorage/uploader.js","webpack:///./app/javascript/shared/activestorage/file-upload-error.js","webpack:///./app/javascript/shared/polyfills/insertAdjacentElement.js","webpack:///./app/javascript/shared/polyfills/dataset.js","webpack:///./app/javascript/shared/page-update-event.js","webpack:///./app/javascript/shared/activestorage/ujs.js","webpack:///./app/javascript/shared/remote-poller.js","webpack:///./app/javascript/shared/safari-11-file-xhr-workaround.js","webpack:///./app/javascript/shared/remote-input.js","webpack:///./app/javascript/shared/franceconnect.js","webpack:///./app/javascript/shared/toggle-target.js","webpack:///./app/javascript/shared/ujs-error-handling.js","webpack:///./app/javascript/new_design/chartkick.js","webpack:///./app/javascript/new_design/form-validation.js","webpack:///./app/javascript/new_design/procedure-context.js","webpack:///./app/javascript/new_design/procedure-form.js","webpack:///./app/javascript/new_design/spinner.js","webpack:///./app/javascript/new_design/dropdown.js","webpack:///./app/javascript/new_design/support.js","webpack:///./app/javascript/new_design/messagerie.js","webpack:///./app/javascript/new_design/dossiers/auto-save-controller.js","webpack:///./app/javascript/new_design/dossiers/auto-save.js","webpack:///./app/javascript/new_design/dossiers/auto-upload-controller.js","webpack:///./app/javascript/new_design/dossiers/auto-uploads-controllers.js","webpack:///./app/javascript/new_design/dossiers/auto-upload.js","webpack:///./app/javascript/new_design/champs/carte.js","webpack:///./app/javascript/new_design/champs/linked-drop-down-list.js","webpack:///./app/javascript/new_design/state-button.js","webpack:///./app/javascript/new_design/champs/repetition.js","webpack:///./app/javascript/new_design/champs/drop-down-list.js","webpack:///./app/javascript/new_design/user-sign_up.js","webpack:///./app/javascript/shared/register-react-components.jsx","webpack:///./app/javascript/packs/application.js","webpack:///./app/javascript/new_design/avis.js","webpack:///./app/javascript/new_design/fc-fusion.js","webpack:///./app/javascript/shared/activestorage/progress-bar.js"],"names":["fire","Rails","csrfToken","show","el","classList","remove","hide","add","toggle","force","undefined","enable","disabled","disable","hasClass","cssClass","contains","addClass","removeClass","delegate","eventNames","selector","callback","split","forEach","eventName","document","ajax","options","Promise","resolve","reject","Object","assign","success","response","statusText","xhr","error","Error","status","getJSON","url","data","method","fetchOptions","query","fetch","then","ok","json","scrollTo","container","scrollTop","offset","top","scrollToBottom","scrollHeight","isNumeric","n","isNaN","parseFloat","isFinite","element","rect","getBoundingClientRect","body","left","scrollLeft","timeoutable","promise","timeoutDelay","timeoutPromise","setTimeout","race","toUpperCase","headers","accept","credentials","objectToQuerystring","JSON","stringify","window","AbortController","controller","signal","abort","obj","keys","reduce","key","i","encodeURIComponent","join","Uploader","input","file","directUploadUrl","autoAttachUrl","this","directUpload","DirectUpload","progressBar","ProgressBar","id","a","start","_upload","blobSignedId","_attach","end","destroy","message","create","errorMsg","attributes","errorFromDirectUploadMessage","signed_id","attachmentRequest","type","errors","FileUploadError","ERROR_CODE_ATTACH","event","progress","loaded","total","upload","addEventListener","uploadRequestDidProgress","ERROR_CODE_READ","FAILURE_CLIENT","FAILURE_CONNECTIVITY","code","name","captureStackTrace","constructor","stack","isNetworkError","matches","match","parseInt","includes","HTMLElement","prototype","insertAdjacentElement","position","elem","node","first","_this","parent","parentNode","toLowerCase","firstChild","insertBefore","lastChild","appendChild","nextSibling","dash","dataRegEx","hasEventListener","test","createElement","DOMAttrModified","mutationSupport","getDataset","string","dataset","attribute","replace","_","letter","value","mutation","removeEventListener","detachEvent","attachEvent","setAttribute","defineProperty","Element","get","_datasetCache","call","target","addUploadEventListener","handler","detail","init","button","form","querySelector","removeAttribute","alert","preventDefault","failureReason","attachementPoller","deactivate","exportPoller","attachments","querySelectorAll","exports","attachmentPollUrl","exportPollUrl","check","RemotePoller","settings","urls","Set","timeout","checks","interval","maxChecks","isEnabled","isActive","activate","reset","clearTimeout","currentInterval","e","files","length","remote","inputChangeSelector","debounce","getAttribute","isRemote","fconnect","tracesUrl","aboutUrl","toggleElement","style","display","openFCPopin","popin","iframe","frameBorder","createFCIframe","className","currentHost","location","hostname","fconnectProfile","getElementById","linkAccess","access","logoutUrl","innerHTML","aboutLink","href","onclick","createAboutLink","historyLink","createHistoryLink","elm","createLogoutElement","createFCAccessElement","bind","eventMethod","eventer","removeChild","closeFCPopin","evt","targetSelector","toggleTarget","focus","reload","AreaChart","args","charts","PieChart","LineChart","ColumnChart","touch","updateReadMoreVisibility","descBody","isOverflowing","clientHeight","syncInputToElement","fromSelector","toSelector","fromElement","toElement","innerText","syncFormToPreview","hideSpinner","Chartkick","ChartType","clear","closest","stopPropagation","parentElement","buttonExpanded","ButtonExpand","domNode","handleFocus","keyCode","freeze","RETURN","allButtons","controlledNode","hideContent","handleKeydown","handleClick","handleBlur","formInput","b","showContent","buttons","toggleExpand","expandButtons","be","push","setAllButtons","setFormInput","ul","elementToScroll","commentaireForms","Array","from","commentaireInputs","map","persistedContentId","index","localStorage","getItem","setItem","removeItem","AutoSaveController","latestPromise","_sendAutosaveRequest","_didSucceed","_didFail","_didEnqueue","autosavePromise","_formDataForDraft","formData","formDataError","params","action","dataType","fileInputs","fileInput","FormData","AUTOSAVE_DEBOUNCE_DELAY","gon","autosave","debounce_delay","AUTOSAVE_STATUS_VISIBLE_DURATION","status_visible_duration","autoSaveController","enqueueAutosaveRequest","FORM_SELECTOR","INPUTS_SELECTOR","setState","state","offsetHeight","hideSucceededStatusAfterDelay","console","logError","AutoUploadController","uploader","_begin","_succeeded","_failed","_done","_hideErrorMessage","_messageFromError","_displayErrorMessage","toString","canRetry","title","description","retry","errorNode","textContent","errorElement","AutoUploadsControllers","inFlightUploadsCount","_incrementInFlightUploads","_decrementInFlightUploads","submitButton","disableElement","enableElement","autoUploadsControllers","startUpload","inputSelector","inputTarget","inputHandlers","Map","geoArea","properties","trim","set","primary","selectElement","option","selectedIndex","selectOptions","parse","secondaryOptions","motivationCancel","row","inputGroup","userNewEmailSelector","suggestionsSelector","emailSuggestionSelector","userEmailInput","suggestedEmailSpan","suggestion","suggest","full","CLASS_NAME_ATTR","CLASS_NAME_SELECTOR","findDOMNodes","searchSelector","separator","getSelector","components","registry","ReactComponentRegistry","ComponentClass","getConstructor","propsJson","props","cacheId","log","component","render","Loader","Loadable","loader","LazyComponent","lazy","fallback","ComboAdresseSearch","ComboAnnuaireEducationSearch","ComboCommunesSearch","ComboDepartementsSearch","ComboMultipleDropdownList","ComboPaysSearch","ComboRegionsSearch","MapEditor","MapReader","Trix","TypesDeChampEditor","mountComponents","DS","toggleCondidentielExplanation","showMotivation","showImportJustificatif","showFusion","showNewAccount","showNewAccountPasswordConfirmation","replaceSemicolonByComma","acceptEmailSuggestion","discardEmailSuggestionBox","ActiveStorage","PENDING_CLASS","ERROR_CLASS","clearErrors","html","insertAdjacentHTML","getDirectUploadElement","getDirectUploadProgressElement","width","filename"],"mappings":"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","file":"js/application-7d974f2c90c3e5e11895.chunk.js","sourcesContent":["import Rails from '@rails/ujs';\nimport debounce from 'debounce';\n\nexport { debounce };\nexport const { fire, csrfToken } = Rails;\n\nexport function show(el) {\n el && el.classList.remove('hidden');\n}\n\nexport function hide(el) {\n el && el.classList.add('hidden');\n}\n\nexport function toggle(el, force) {\n if (force == undefined) {\n el & el.classList.toggle('hidden');\n } else if (force) {\n el && el.classList.remove('hidden');\n } else {\n el && el.classList.add('hidden');\n }\n}\n\nexport function enable(el) {\n el && (el.disabled = false);\n}\n\nexport function disable(el) {\n el && (el.disabled = true);\n}\n\nexport function hasClass(el, cssClass) {\n return el && el.classList.contains(cssClass);\n}\n\nexport function addClass(el, cssClass) {\n el && el.classList.add(cssClass);\n}\n\nexport function removeClass(el, cssClass) {\n el && el.classList.remove(cssClass);\n}\n\nexport function delegate(eventNames, selector, callback) {\n eventNames\n .split(' ')\n .forEach((eventName) =>\n Rails.delegate(document, selector, eventName, callback)\n );\n}\n\n// A promise-based wrapper for Rails.ajax().\n//\n// Returns a Promise that is either:\n// - resolved in case of a 20* HTTP response code,\n// - rejected with an Error object otherwise.\n//\n// See Rails.ajax() code for more details.\nexport function ajax(options) {\n return new Promise((resolve, reject) => {\n Object.assign(options, {\n success: (response, statusText, xhr) => {\n resolve({ response, statusText, xhr });\n },\n error: (response, statusText, xhr) => {\n // NB: on HTTP/2 connections, statusText is always empty.\n let error = new Error(\n `Erreur ${xhr.status}` + (statusText ? ` : ${statusText}` : '')\n );\n Object.assign(error, { response, statusText, xhr });\n reject(error);\n }\n });\n Rails.ajax(options);\n });\n}\n\nexport function getJSON(url, data, method = 'GET') {\n const { query, ...options } = fetchOptions(data, method);\n\n return fetch(`${url}${query}`, options).then((response) => {\n if (response.ok) {\n if (response.status === 204) {\n return null;\n }\n return response.json();\n }\n const error = new Error(response.statusText || response.status);\n error.response = response;\n throw error;\n });\n}\n\nexport function scrollTo(container, scrollTo) {\n container.scrollTop =\n offset(scrollTo).top - offset(container).top + container.scrollTop;\n}\n\nexport function scrollToBottom(container) {\n container.scrollTop = container.scrollHeight;\n}\n\nexport function on(selector, eventName, fn) {\n [...document.querySelectorAll(selector)].forEach((element) =>\n element.addEventListener(eventName, (event) => fn(event, event.detail))\n );\n}\n\nexport function isNumeric(n) {\n return !isNaN(parseFloat(n)) && isFinite(n);\n}\n\nfunction offset(element) {\n const rect = element.getBoundingClientRect();\n return {\n top: rect.top + document.body.scrollTop,\n left: rect.left + document.body.scrollLeft\n };\n}\n\n// Takes a promise, and return a promise that times out after the given delay.\nexport function timeoutable(promise, timeoutDelay) {\n let timeoutPromise = new Promise((resolve, reject) => {\n setTimeout(() => {\n reject(new Error(`Promise timed out after ${timeoutDelay}ms`));\n }, timeoutDelay);\n });\n return Promise.race([promise, timeoutPromise]);\n}\n\nconst FETCH_TIMEOUT = 30 * 1000; // 30 sec\n\nfunction fetchOptions(data, method = 'GET') {\n const options = {\n query: '',\n method: method.toUpperCase(),\n headers: {\n accept: 'application/json',\n 'x-csrf-token': csrfToken(),\n 'x-requested-with': 'XMLHttpRequest'\n },\n credentials: 'same-origin'\n };\n\n if (data) {\n if (options.method === 'GET') {\n options.query = objectToQuerystring(data);\n } else {\n options.headers['content-type'] = 'application/json';\n options.body = JSON.stringify(data);\n }\n }\n\n if (window.AbortController) {\n const controller = new AbortController();\n options.signal = controller.signal;\n\n setTimeout(() => {\n controller.abort();\n }, FETCH_TIMEOUT);\n }\n\n return options;\n}\n\nfunction objectToQuerystring(obj) {\n return Object.keys(obj).reduce(function (query, key, i) {\n return [\n query,\n i === 0 ? '?' : '&',\n encodeURIComponent(key),\n '=',\n encodeURIComponent(obj[key])\n ].join('');\n }, '');\n}\n","import { DirectUpload } from '@rails/activestorage';\nimport { ajax } from '@utils';\nimport ProgressBar from './progress-bar';\nimport FileUploadError, {\n errorFromDirectUploadMessage,\n ERROR_CODE_ATTACH\n} from './file-upload-error';\n\n/**\n Uploader class is a delegate for DirectUpload instance\n used to track lifecycle and progress of an upload.\n */\nexport default class Uploader {\n constructor(input, file, directUploadUrl, autoAttachUrl) {\n this.directUpload = new DirectUpload(file, directUploadUrl, this);\n this.progressBar = new ProgressBar(input, this.directUpload.id, file);\n this.autoAttachUrl = autoAttachUrl;\n }\n\n /**\n Upload (and optionally attach) the file.\n Returns the blob signed id on success.\n Throws a FileUploadError on failure.\n */\n async start() {\n this.progressBar.start();\n\n try {\n let blobSignedId = await this._upload();\n\n if (this.autoAttachUrl) {\n await this._attach(blobSignedId);\n // On response, the attachment HTML fragment will replace the progress bar.\n } else {\n this.progressBar.end();\n this.progressBar.destroy();\n }\n\n return blobSignedId;\n } catch (error) {\n this.progressBar.error(error.message);\n throw error;\n }\n }\n\n /**\n Upload the file using the DirectUpload instance, and return the blob signed_id.\n Throws a FileUploadError on failure.\n */\n async _upload() {\n return new Promise((resolve, reject) => {\n this.directUpload.create((errorMsg, attributes) => {\n if (errorMsg) {\n let error = errorFromDirectUploadMessage(errorMsg);\n reject(error);\n } else {\n resolve(attributes.signed_id);\n }\n });\n });\n }\n\n /**\n Attach the file by sending a POST request to the autoAttachUrl.\n Throws a FileUploadError on failure (containing the first validation\n error message, if any).\n */\n async _attach(blobSignedId) {\n const attachmentRequest = {\n url: this.autoAttachUrl,\n type: 'PUT',\n data: `blob_signed_id=${blobSignedId}`\n };\n\n try {\n await ajax(attachmentRequest);\n } catch (e) {\n let message = e.response && e.response.errors && e.response.errors[0];\n throw new FileUploadError(\n message || 'Error attaching file.',\n e.xhr.status,\n ERROR_CODE_ATTACH\n );\n }\n }\n\n uploadRequestDidProgress(event) {\n const progress = (event.loaded / event.total) * 100;\n if (progress) {\n this.progressBar.progress(progress);\n }\n }\n\n directUploadWillStoreFileWithXHR(xhr) {\n xhr.upload.addEventListener('progress', (event) =>\n this.uploadRequestDidProgress(event)\n );\n }\n}\n","// Error while reading the file client-side\nexport const ERROR_CODE_READ = 'file-upload-read-error';\n// Error while creating the empty blob on the server\nexport const ERROR_CODE_CREATE = 'file-upload-create-error';\n// Error while uploading the blob content\nexport const ERROR_CODE_STORE = 'file-upload-store-error';\n// Error while attaching the blob to the record\nexport const ERROR_CODE_ATTACH = 'file-upload-attach-error';\n\n// Failure on the client side (syntax error, error reading file, etc.)\nexport const FAILURE_CLIENT = 'file-upload-failure-client';\n// Failure on the server side (typically non-200 response)\nexport const FAILURE_SERVER = 'file-upload-failure-server';\n// Failure during the transfert (request aborted, connection lost, etc)\nexport const FAILURE_CONNECTIVITY = 'file-upload-failure-connectivity';\n\n/**\n Represent an error during a file upload.\n */\nexport default class FileUploadError extends Error {\n constructor(message, status, code) {\n super(message);\n\n this.name = 'FileUploadError';\n this.status = status;\n this.code = code;\n\n // Prevent the constructor stacktrace from being included.\n // (it messes up with Sentry issues grouping)\n if (Error.captureStackTrace) {\n // V8-only\n Error.captureStackTrace(this, this.constructor);\n } else {\n this.stack = new Error().stack;\n }\n }\n\n /**\n Return the component responsible of the error (client, server or connectivity).\n See FAILURE_* constants for values.\n */\n get failureReason() {\n let isNetworkError = this.code && this.code != ERROR_CODE_READ;\n\n if (isNetworkError && this.status != 0) {\n return FAILURE_SERVER;\n } else if (isNetworkError && this.status == 0) {\n return FAILURE_CONNECTIVITY;\n } else {\n return FAILURE_CLIENT;\n }\n }\n}\n\n// Convert an error message returned by DirectUpload to a proper error object.\n//\n// This function has two goals:\n// 1. Remove the file name from the DirectUpload error message\n// (because the filename confuses Sentry error grouping)\n// 2. Create each kind of error on a different line\n// (so that Sentry knows they are different kind of errors, from\n// the line they were created.)\nexport function errorFromDirectUploadMessage(message) {\n let matches = message.match(/ Status: ([0-9]{1,3})/);\n let status = matches ? parseInt(matches[1], 10) : undefined;\n\n // prettier-ignore\n if (message.includes('Error reading')) {\n return new FileUploadError('Error reading file.', status, ERROR_CODE_READ);\n } else if (message.includes('Error creating')) {\n return new FileUploadError('Error creating file.', status, ERROR_CODE_CREATE);\n } else if (message.includes('Error storing')) {\n return new FileUploadError('Error storing file.', status, ERROR_CODE_STORE);\n } else {\n return new FileUploadError(message, status, undefined);\n }\n}\n","/*\n Updated w/ insertAdjacentElement\n @author Dan Levy @justsml\n 2016-06-23\n\n Credit: @lyleunderwood - afterend patch/fix\n\n 2011-10-10\n\n By Eli Grey, http://eligrey.com\n Public Domain.\n NO WARRANTY EXPRESSED OR IMPLIED. USE AT YOUR OWN RISK.\n*/\n\nfunction insertAdjacentElement(position, elem) {\n const _this = this;\n const parent = this.parentNode;\n let node, first;\n\n switch (position.toLowerCase()) {\n case 'beforebegin':\n while ((node = elem.firstChild)) {\n parent.insertBefore(node, _this);\n }\n break;\n case 'afterbegin':\n first = _this.firstChild;\n while ((node = elem.lastChild)) {\n first = _this.insertBefore(node, first);\n }\n break;\n case 'beforeend':\n while ((node = elem.firstChild)) {\n _this.appendChild(node);\n }\n break;\n case 'afterend':\n parent.insertBefore(elem, _this.nextSibling);\n break;\n }\n return elem;\n}\n\n// Method missing in Firefox < 48\nif (!HTMLElement.prototype.insertAdjacentElement) {\n HTMLElement.prototype.insertAdjacentElement = insertAdjacentElement;\n}\n","/*\n @preserve dataset polyfill for IE < 11. See https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/dataset and http://caniuse.com/#search=dataset\n\n @author ShirtlessKirk copyright 2015\n @license WTFPL (http://www.wtfpl.net/txt/copying)\n*/\n\nconst dash = /-([a-z])/gi;\nconst dataRegEx = /^data-(.+)/;\nconst hasEventListener = !!document.addEventListener;\nconst test = document.createElement('_');\nconst DOMAttrModified = 'DOMAttrModified';\n\nlet mutationSupport = false;\n\nfunction clearDataset(event) {\n delete event.target._datasetCache;\n}\n\nfunction toCamelCase(string) {\n return string.replace(dash, function (_, letter) {\n return letter.toUpperCase();\n });\n}\n\nfunction getDataset() {\n const dataset = {};\n\n for (let attribute of this.attributes) {\n let match = attribute.name.match(dataRegEx);\n if (match) {\n dataset[toCamelCase(match[1])] = attribute.value;\n }\n }\n\n return dataset;\n}\n\nfunction mutation() {\n if (hasEventListener) {\n test.removeEventListener(DOMAttrModified, mutation, false);\n } else {\n test.detachEvent(`on${DOMAttrModified}`, mutation);\n }\n\n mutationSupport = true;\n}\n\nif (!test.dataset) {\n if (hasEventListener) {\n test.addEventListener(DOMAttrModified, mutation, false);\n } else {\n test.attachEvent(`on${DOMAttrModified}`, mutation);\n }\n\n // trigger event (if supported)\n test.setAttribute('foo', 'bar');\n\n Object.defineProperty(Element.prototype, 'dataset', {\n get: mutationSupport\n ? function get() {\n if (!this._datasetCache) {\n this._datasetCache = getDataset.call(this);\n }\n\n return this._datasetCache;\n }\n : getDataset\n });\n\n if (mutationSupport && hasEventListener) {\n // < IE9 supports neither\n document.addEventListener(DOMAttrModified, clearDataset, false);\n }\n}\n","import { fire } from '@utils';\n\naddEventListener('DOMContentLoaded', function () {\n fire(document, 'ds:page:update');\n});\n\naddEventListener('ajax:success', function () {\n fire(document, 'ds:page:update');\n});\n","import ProgressBar from './progress-bar';\nimport {\n errorFromDirectUploadMessage,\n ERROR_CODE_READ,\n FAILURE_CLIENT\n} from './file-upload-error';\nimport { fire } from '@utils';\n\nconst INITIALIZE_EVENT = 'direct-upload:initialize';\nconst START_EVENT = 'direct-upload:start';\nconst PROGRESS_EVENT = 'direct-upload:progress';\nconst ERROR_EVENT = 'direct-upload:error';\nconst END_EVENT = 'direct-upload:end';\n\nfunction addUploadEventListener(type, handler) {\n addEventListener(type, (event) => {\n // Internet Explorer and Edge will sometime replay Javascript events\n // that were dispatched just before a page navigation (!), but without\n // the event payload.\n //\n // Ignore these replayed events.\n const isEventValid = event && event.detail && event.detail.id != undefined;\n if (!isEventValid) return;\n\n handler(event);\n });\n}\n\naddUploadEventListener(INITIALIZE_EVENT, ({ target, detail: { id, file } }) => {\n ProgressBar.init(target, id, file);\n});\n\naddUploadEventListener(START_EVENT, ({ target, detail: { id } }) => {\n ProgressBar.start(id);\n // At the end of the upload, the form will be submitted again.\n // Avoid the confirm dialog to be presented again then.\n const button = target.form.querySelector('button.primary');\n if (button) {\n button.removeAttribute('data-confirm');\n }\n});\n\naddUploadEventListener(PROGRESS_EVENT, ({ detail: { id, progress } }) => {\n ProgressBar.progress(id, progress);\n});\n\naddUploadEventListener(ERROR_EVENT, (event) => {\n let id = event.detail.id;\n let errorMsg = event.detail.error;\n\n // Display an error message\n alert(\n `Nous sommes désolés, une erreur s’est produite lors de l’envoi du fichier.\n\n (${errorMsg})`\n );\n // Prevent ActiveStorage from displaying its own error message\n event.preventDefault();\n\n ProgressBar.error(id, errorMsg);\n\n // Report unexpected client errors to Sentry.\n // (But ignore usual client errors, or errors we can monitor better on the server side.)\n let error = errorFromDirectUploadMessage(errorMsg);\n if (error.failureReason == FAILURE_CLIENT && error.code != ERROR_CODE_READ) {\n fire(document, 'sentry:capture-exception', error);\n }\n});\n\naddUploadEventListener(END_EVENT, ({ detail: { id } }) => {\n ProgressBar.end(id);\n});\n","import { ajax, delegate } from '@utils';\n\naddEventListener('DOMContentLoaded', () => {\n attachementPoller.deactivate();\n exportPoller.deactivate();\n\n const attachments = document.querySelectorAll('[data-attachment-poll-url]');\n const exports = document.querySelectorAll('[data-export-poll-url]');\n\n for (let { dataset } of attachments) {\n attachementPoller.add(dataset.attachmentPollUrl);\n }\n\n for (let { dataset } of exports) {\n exportPoller.add(dataset.exportPollUrl);\n }\n});\n\naddEventListener('attachment:update', ({ detail: { url } }) => {\n attachementPoller.add(url);\n});\n\naddEventListener('export:update', ({ detail: { url } }) => {\n exportPoller.add(url);\n});\n\ndelegate('click', '[data-attachment-refresh]', (event) => {\n event.preventDefault();\n attachementPoller.check();\n});\n\n// Periodically check the state of a set of URLs.\n//\n// Each time the given URL is requested, the matching `show.js.erb` view is rendered,\n// causing the state to be refreshed.\n//\n// This is used mainly to refresh attachments during the anti-virus check,\n// but also to refresh the state of a pending spreadsheet export.\nclass RemotePoller {\n urls = new Set();\n timeout;\n checks = 0;\n\n constructor(settings = {}) {\n this.interval = settings.interval;\n this.maxChecks = settings.maxChecks;\n }\n\n get isEnabled() {\n return this.checks <= this.maxChecks;\n }\n\n get isActive() {\n return this.timeout !== undefined;\n }\n\n add(url) {\n if (this.isEnabled) {\n if (!this.isActive) {\n this.activate();\n }\n this.urls.add(url);\n }\n }\n\n check() {\n let urls = this.urls;\n this.reset();\n for (let url of urls) {\n // Start the request. The JS payload in the response will update the page.\n // (Errors are ignored, because background tasks shouldn't report errors to the user.)\n ajax({ url, type: 'get' }).catch(() => {});\n }\n }\n\n activate() {\n clearTimeout(this.timeout);\n this.timeout = setTimeout(() => {\n this.checks++;\n this.currentInterval = this.interval * 1.5;\n this.check();\n }, this.currentInterval);\n }\n\n deactivate() {\n this.checks = 0;\n this.currentInterval = this.interval;\n this.reset();\n }\n\n reset() {\n clearTimeout(this.timeout);\n this.urls = new Set();\n this.timeout = undefined;\n }\n}\n\nconst attachementPoller = new RemotePoller({ interval: 3000, maxChecks: 5 });\nconst exportPoller = new RemotePoller({ interval: 6000, maxChecks: 10 });\n","// iOS 11.3 Safari / macOS Safari 11.1 empty XHR bug workaround.\n// This should work with every modern browser which supports ES5 (including IE9).\n// https://stackoverflow.com/questions/49614091/safari-11-1-ajax-xhr-form-submission-fails-when-inputtype-file-is-empty\n// https://github.com/rails/rails/issues/32440\n\ndocument.addEventListener('ajax:before', function (e) {\n let inputs = e.target.querySelectorAll('input[type=\"file\"]:not([disabled])');\n inputs.forEach(function (input) {\n if (input.files.length > 0) {\n return;\n }\n input.setAttribute('data-safari-temp-disabled', 'true');\n input.setAttribute('disabled', '');\n });\n});\n\n// You should call this by yourself when you aborted an ajax request by stopping a event in ajax:before hook.\ndocument.addEventListener('ajax:beforeSend', function (e) {\n let inputs = e.target.querySelectorAll(\n 'input[type=\"file\"][data-safari-temp-disabled]'\n );\n inputs.forEach(function (input) {\n input.removeAttribute('data-safari-temp-disabled');\n input.removeAttribute('disabled');\n });\n});\n","import { delegate, fire, debounce } from '@utils';\n\nconst remote = 'data-remote';\nconst inputChangeSelector = `input[${remote}], textarea[${remote}]`;\n\n// This is a patch for ujs remote handler. Its purpose is to add\n// a debounced input listener.\nfunction handleRemote(event) {\n const element = this;\n\n if (isRemote(element)) {\n fire(element, 'change', event);\n }\n}\n\nfunction isRemote(element) {\n const value = element.getAttribute(remote);\n return value && value !== 'false';\n}\n\ndelegate('input', inputChangeSelector, debounce(handleRemote, 200));\n","const fconnect = {\n tracesUrl: '/traces',\n aboutUrl: ''\n};\nconst document = window.document;\n\nfunction init() {\n fconnect.currentHost = 'fcp.integ01.dev-franceconnect.fr';\n\n if (window.location.hostname == 'www.demarches-simplifiees.fr')\n fconnect.currentHost = 'app.franceconnect.gouv.fr';\n\n var fconnectProfile = document.getElementById('fconnect-profile');\n if (fconnectProfile) {\n var linkAccess = document.querySelector('#fconnect-profile > a');\n var fcLogoutUrl = fconnectProfile.getAttribute('data-fc-logout-url');\n var access = createFCAccessElement(fcLogoutUrl);\n fconnectProfile.appendChild(access);\n linkAccess.onclick = toggleElement.bind(access);\n }\n}\n\naddEventListener('ds:page:update', init);\n\nfunction toggleElement(event) {\n event.preventDefault();\n if (this.style.display === 'block') {\n this.style.display = 'none';\n } else {\n this.style.display = 'block';\n }\n}\n\nfunction closeFCPopin(event) {\n event.preventDefault();\n fconnect.popin.className = 'fade-out';\n setTimeout(function () {\n document.body.removeChild(fconnect.popin);\n }, 200);\n}\n\nfunction openFCPopin() {\n fconnect.popin = document.createElement('div');\n fconnect.popin.id = 'fc-background';\n\n var iframe = createFCIframe();\n\n document.body.appendChild(fconnect.popin);\n\n fconnect.popin.appendChild(iframe);\n\n setTimeout(function () {\n fconnect.popin.className = 'fade-in';\n }, 200);\n}\n\nfunction createFCIframe() {\n var iframe = document.createElement('iframe');\n iframe.setAttribute('id', 'fconnect-iframe');\n iframe.frameBorder = 0;\n iframe.name = 'fconnect-iframe';\n return iframe;\n}\n\nfunction createFCAccessElement(logoutUrl) {\n var access = document.createElement('div');\n access.id = 'fconnect-access';\n access.innerHTML = '