O:41:"Symfony\Component\AssetMapper\MappedAsset":12:{s:10:"sourcePath";s:77:"/home/galides-ibrahim/espace/assets/controllers/csrf_protection_controller.js";s:10:"publicPath";s:57:"/assets/controllers/csrf_protection_controller-F8Cjk_i.js";s:23:"publicPathWithoutDigest";s:49:"/assets/controllers/csrf_protection_controller.js";s:15:"publicExtension";s:2:"js";s:7:"content";s:1819:"const nameCheck=/^[-_a-zA-Z0-9]{4,22}$/,tokenCheck=/^[-_/+a-zA-Z0-9]{24,}$/;document.addEventListener("submit",function(e){generateCsrfToken(e.target)},!0),document.addEventListener("turbo:submit-start",function(e){const t=generateCsrfHeaders(e.detail.formSubmission.formElement);Object.keys(t).map(function(n){e.detail.formSubmission.fetchRequest.headers[n]=t[n]})}),document.addEventListener("turbo:submit-end",function(e){removeCsrfToken(e.detail.formSubmission.formElement)});export function generateCsrfToken(e){const t=e.querySelector('input[data-controller="csrf-protection"], input[name="_csrf_token"]');if(!t)return;let n=t.getAttribute("data-csrf-protection-cookie-value"),s=t.value;if(!n&&nameCheck.test(s)&&(t.setAttribute("data-csrf-protection-cookie-value",n=s),t.defaultValue=s=btoa(String.fromCharCode.apply(null,(window.crypto||window.msCrypto).getRandomValues(new Uint8Array(18))))),t.dispatchEvent(new Event("change",{bubbles:!0})),n&&tokenCheck.test(s)){const e=n+"_"+s+"="+n+"; path=/; samesite=strict";document.cookie=window.location.protocol==="https:"?"__Host-"+e+"; secure":e}}export function generateCsrfHeaders(e){const n={},t=e.querySelector('input[data-controller="csrf-protection"], input[name="_csrf_token"]');if(!t)return n;const s=t.getAttribute("data-csrf-protection-cookie-value");return tokenCheck.test(t.value)&&nameCheck.test(s)&&(n[s]=t.value),n}export function removeCsrfToken(e){const t=e.querySelector('input[data-controller="csrf-protection"], input[name="_csrf_token"]');if(!t)return;const n=t.getAttribute("data-csrf-protection-cookie-value");if(tokenCheck.test(t.value)&&nameCheck.test(n)){const e=n+"_"+t.value+"=0; path=/; samesite=strict; max-age=0";document.cookie=window.location.protocol==="https:"?"__Host-"+e+"; secure":e}}export default"csrf-protection-controller"";s:6:"digest";s:32:"17c0a393f8bd7a88f2e8664a73e97c68";s:13:"isPredigested";b:0;s:11:"logicalPath";s:41:"controllers/csrf_protection_controller.js";s:8:"isVendor";b:0;s:55:"Symfony\Component\AssetMapper\MappedAssetdependencies";a:0:{}s:59:"Symfony\Component\AssetMapper\MappedAssetfileDependencies";a:0:{}s:60:"Symfony\Component\AssetMapper\MappedAssetjavaScriptImports";a:0:{}}