!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):(e="undefined"!=typeof globalThis?globalThis:e||self,t(e.diff={}))}(this,function(e){"use strict";function t(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function r(e){for(var r=1;re.length)&&(t=e.length);for(var r=0,n=new Array(t);r2&&void 0!==arguments[2]?arguments[2]:typeof t,n=arguments.length>3?arguments[3]:void 0,a=ue.location,o=ue.URLSearchParams,i=void 0!==o,s=void 0!==a,c=i&&s,l=de.env;if(n&&e in n)return n[e];var d="DIFF_".concat(e.replace(/[^a-zA-Z0-9]/,""));if(c){var u=new o(a.search),f=d.toLowerCase();if(u.has(f))return g(decodeURIComponent(String(u.get(f))),r)}var h=d.toUpperCase();return l&&h in de.env?g(de.env[h.toUpperCase()],r):t}function N(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],r=0;r3?C-3:0),A=3;A2&&void 0!==arguments[2]?arguments[2]:{};r.parser||(r.parser={}),t||(t=Me);var n=new Set(b("rawElements",_e,"array",r.parser)),a=new Set(b("selfClosingElements",De,"array",r.parser)),o=/)-->|<(\/?)([a-z\-\_][a-z0-9\-\_]*)\s*([^>]*?)(".*?"|'.*?')?(\/?)>/gi,i=y("#document-fragment",null,[]),c=[i],l=i,d=-1;if(!e.includes("<")&&e)return Ve(l,e,t),i;for(var u,f,h=0;u=o.exec(e);h++){var p=u,v=s(p,6),m=v[0],g=v[1],N=v[2],T=v[3],E=v[4],w=v[5];d>-1&&d+m.length0){var O=e.slice(0,S);O&&!xe.exec(O)&&Ve(l,O,t)}if(d=o.lastIndex,"!"!==u[0][1]){var k=Ce.exec(N),R=k&&t.tags[k[1]],x=R?R.name||R:N,C=void 0;if(!g){!u[4]&&Le[l.rawNodeName]&&Le[l.rawNodeName][x]&&(c.pop(),l=c[c.length-1]);var M=T+(E||"");if(l=l.childNodes[l.childNodes.push(Pe(N,M,t))-1],c.push(l),r.parser.strict||n.has(x)){var A=""),I=e.indexOf(A,o.lastIndex);if(n.has(x)){-1===I?d=o.lastIndex=e.length+1:(d=I+A.length,o.lastIndex=d,C=!0);var _=e.slice(u.index+m.length,I);Ve(l,_,t)}}}if(C||g||w||a.has(x))for(;l;){if("/"===w&&k){c.pop(),l=c[c.length-1];break}if(R&&l.rawNodeName===x){c.pop(),l=c[c.length-1];break}if(l.rawNodeName===x){c.pop(),l=c[c.length-1];break}var D=je[l.rawNodeName];{if(!D||!D[x])break;c.pop(),l=c[c.length-1]}}}}var L=e.slice(-1===d?0:d);if(L&&Ve(l,L,t),i.childNodes.length&&"html"===i.childNodes[0].nodeName){var j={before:[],after:[]},V={after:[]},P=i.childNodes[0],F=!0,H=!0;if(P.childNodes=P.childNodes.filter(function(e){if("body"===e.nodeName||"head"===e.nodeName)return"head"===e.nodeName&&(F=!1),"body"===e.nodeName&&(H=!1),!0;e.nodeType===K.ELEMENT&&(F&&H?j.before.push(e):!F&&H?j.after.push(e):H||V.after.push(e))}),P.childNodes[0]&&"head"===P.childNodes[0].nodeName){var B=P.childNodes[0].childNodes;B.unshift.apply(B,j.before),B.push.apply(B,j.after)}else{var z=y("head",null,[]);if(z){var U=z.childNodes;U.unshift.apply(U,j.before),U.push.apply(U,j.after),P.childNodes.unshift(z)}}if(P.childNodes[1]&&"body"===P.childNodes[1].nodeName){var J=P.childNodes[1].childNodes;J.push.apply(J,V.after)}else{var G=y("body",null,[]);if(G){var X=G.childNodes;X.push.apply(X,V.after),P.childNodes.push(G)}}}return i}function E(e){var t=e.mount,r=e.input,n=r,a=Be++;return b("collectMetrics",!1)?function(e){e="[".concat(a,"] ").concat(e);var r=t.host;t&&r?e="".concat(r.constructor.name," ").concat(e):n&&"function"==typeof n.rawNodeName&&(e="".concat(n.rawNodeName.name," ").concat(e));var o="".concat(e,"-end");if(He.has(e)){var i=He.get(e)||0,s=(performance.now()-i).toFixed(3);He.delete(e),performance.mark(o),performance.measure("".concat(Fe," ").concat(e," (").concat(s,"ms)"),e,o)}else He.set(e,performance.now()),performance.mark(e)}:Q.FUN}function w(e){if(ze(e),e.childNodes.length)for(var t=0;t1&&(e.newTree=y(d.childNodes))}e.oldTree=t.oldTree;var p=e.oldTree,v=e.newTree;if(o&&p&&v){var m="string"!=typeof v.rawNodeName,g=v.nodeType===K.FRAGMENT,b=g&&!m?v.childNodes:v;e.newTree=y(c,l,b)}}function M(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:[],n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:Q.OBJ,o=arguments.length>5?arguments[5]:void 0;e||(e=Q.OBJ),t||(t=Q.OBJ);var i=n.svgElements,s=void 0===i?new Set:i,c=e.nodeName,l=t.nodeName,d=e===Q.OBJ||o,u="svg"===l||s.has(t),f=null;if(se.size&&se.forEach(function(n){var o=n(e,t,a);o&&o===e?f=r:!1===o?f=!1:o&&(t=o)}),null!==f||!t)return f;if(l===Qe){if(c===Qe&&e.nodeValue!==t.nodeValue)return r.push(W.NODE_VALUE,e,t.nodeValue,e.nodeValue),e.nodeValue=t.nodeValue,r;if(d)return r.push(W.NODE_VALUE,t,t.nodeValue,null),r}var h=t.childNodes||[];if(t.nodeType===K.ELEMENT){var p=d?Q.OBJ:e.attributes,v=t.attributes||{};for(var m in v){var g=v[m];m in p&&p[m]===v[m]||(d||(p[m]=g),(e&&"script"===e.nodeName||"script"!==t.nodeName||"type"!==m)&&r.push(W.SET_ATTRIBUTE,d?t:e,m,g))}if(!d)for(var b in p)b in v||(r.push(W.REMOVE_ATTRIBUTE,e,b),delete p[b])}if(o){for(var N=0;NA&&x.splice(B,1),r.push(W.REPLACE_CHILD,_,I)}}else h.splice(A,0,I),C+=1}else x.push(_),M(null,_,r,n,a,!0),r.push(W.INSERT_BEFORE,e,_,null);else!1===M(I,null,r,n,a,!0)&&h.splice(A,0,I)}if(x.length!==h.length){for(var z=h.length;z1&&void 0!==arguments[1]?arguments[1]:ue.document,r=arguments.length>2?arguments[2]:void 0,n=y(e),a=ne.get(n);if(a)return a;var o=n.nodeName,i=n.rawNodeName,s=void 0===i?o:i,c=n.childNodes,l=void 0===c?[]:c;r=r||"svg"===o;var d=null,u=null;if(ie.forEach(function(e){(u=e(n))&&(d=u)}),!t)return d;var f=d;f||(f="#text"===o?t.createTextNode(n.nodeValue||Q.STR):"#document-fragment"===o?t.createDocumentFragment():r?t.createElementNS(We,s):t.createElement(s),"script"===o&&(f.type="no-execute")),ne.set(n,f);for(var h=0;h1?t-1:0),n=1;n1&&void 0!==arguments[1]?arguments[1]:Q.OBJ,r=[],n=t.ownerDocument,a=t.svgElements,o=void 0===a?new Set:a,i=e.length,s=0;;){var l=e[s];if(s===i)break;switch(l){case W.REMOVE_ATTRIBUTE:case W.SET_ATTRIBUTE:if("break"===function(){var t=l===W.SET_ATTRIBUTE,a=e[s+1],i=e[s+2],d=t?j(e[s+3]):null;s+=t?4:3;var u=o.has(a),f=A(a,n,u),h=f.getAttribute(i),p=L("attributeChanged",a,i,h,d);w(a);var v=t?st:ct;return p.length?(Promise.all(p).then(function(){return v(a,f,i,d)}),r.push.apply(r,c(p))):v(a,f,i,d),"break"}())break;case W.NODE_VALUE:if("break"===function(){var t=e[s+1],a=e[s+2],i=e[s+3],l=o.has(t);s+=4;var d=A(t,n,l);w(t);var u=L("textChanged",t,i,a);return u.length?(Promise.all(u).then(function(){return lt(d,a)}),r.push.apply(r,c(u))):lt(d,a),"break"}())break;case W.INSERT_BEFORE:var d=e[s+1],u=e[s+2],f=e[s+3];if(s+=4,!ne.has(d)&&d!==rt)continue;var h=ne.get(d);if(d===rt){var p=ne.get(f);p&&(h=p.parentNode,f=p.nextSibling?p.nextSibling:null)}var v=o.has(u);w(u);var m=f&&A(f,n,v),g=A(u,n,v);h.insertBefore(g,m||null),r.push.apply(r,c(L("attached",u)));break;case W.REPLACE_CHILD:if("break"===function(){var t,a,i,l=e[s+1],d=e[s+2];s+=3;var u=o.has(l),f=ne.get(d),h=A(l,n,u);if(!f||!f.parentNode)return"break";w(l);var p=null===(t=te.get("attached"))||void 0===t?void 0:t.size,v=null===(a=te.get("detached"))||void 0===a?void 0:a.size,m=null===(i=te.get("replaced"))||void 0===i?void 0:i.size;if(!p&&!v&&!m)return f.parentNode.replaceChild(h,f),S(d),"break";f.parentNode.insertBefore(h,f);var g=[].concat(c(p&&L("attached",l)||Q.ARR),c(v&&L("detached",d)||Q.ARR),c(m&&L("replaced",d,l)||Q.ARR));return g.length?(Promise.all(g).then(function(){f.parentNode&&f.parentNode.removeChild(f),S(d)}),r.push.apply(r,c(g))):(f.parentNode.removeChild(f),S(d)),"break"}())break;case W.REMOVE_CHILD:if("break"===function(){var t=e[s+1];s+=2;var n=ne.get(t);if(!n||!n.parentNode)return"break";var a=L("detached",t);return a.length?(Promise.all(a).then(function(){n.parentNode&&n.parentNode.removeChild(n),S(t)}),r.push.apply(r,c(a))):(n.parentNode.removeChild(n),S(t)),"break"}())break}}return r}function P(e){var t=e.mount,r=e.state,n=e.patches,a=r.mutationObserver,o=r.measure,i=r.scriptsToExecute;o("patch node");var s=t.ownerDocument,l=e.promises||[];r.ownerDocument=s||ue.document,a&&a.disconnect();var d=function(e){"script"===e.nodeName&&i.set(e,e.attributes.type)};ie.add(d),r.ownerDocument&&l.push.apply(l,c(V(n,r))),ie.delete(d),e.promises=l,o("patch node")}function F(e){var t=e.promises;return t&&t.length?e.promise=Promise.all(t).then(function(){return e.end()}):e.promise=Promise.resolve(e.end())}function H(){return Boolean(dt&&"noModule"in dt)}function B(e){var t=e.state,r=e.input,n=e.config,a=t.measure;if("string"==typeof r){a("parsing input for new tree");var o=T(r,void 0,n),i=o.childNodes,s=y(i);s&&(e.newTree=s),a("parsing input for new tree")}}function z(e){return e.replace(/[&<>]/g,function(e){return"&#".concat(e.charCodeAt(0),";")})}function U(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Q.STR,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return r.inner=!0,r.executeScripts=!("executeScripts"in r)||r.executeScripts,r.tasks=r.tasks||ft,pt.create(e,t,r).start()}function J(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:Q.STR,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return r.inner=!1,r.executeScripts=!("executeScripts"in r)||r.executeScripts,r.tasks=r.tasks||ft,pt.create(e,t,r).start()}function G(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=y(),n=new Set(t.tasks||ft);n.delete(ht.patchNode),n.delete(ht.endAsPromise),n.add(function(e){return q(e.oldTree)}),t.tasks=c(n),t.inner=!0;var a="";try{a=pt.create(r,e,t).start()}catch(e){throw x(r),e}return x(r),a}function X(e){var t=gt(e);return t.length?" "+t.map(function(t){var r=e[t],n=!r,a="object"==typeof r||"function"==typeof r;return!0===r?t:"".concat(t).concat(n||a?"":'="'.concat(String(r),'"'))}).join(" "):""}function q(e){var t="";if(!e)return t;var r=e.childNodes,n=e.nodeType,a=e.nodeName,o=e.nodeValue,i=e.attributes;if(11===n)for(var s=0;s").concat(c,"")}}else t+="<".concat(a).concat(X(i),">");return t}function Y(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n")1?t-1:0),n=1;n/i,Ce=new RegExp("".concat(Re,"([^_]*)__")),Me={tags:[],attributes:{},children:{}},Ae=Object.assign,Ie=Array.isArray,_e=["script","noscript","style","template"],De=["source","embed","param","track","input","meta","link","area","base","col","wbr","img","br","hr"],Le={li:{li:!0},p:{p:!0,div:!0},td:{td:!0,th:!0},th:{td:!0,th:!0}},je={li:{ul:!0,ol:!0},a:{div:!0},b:{div:!0},i:{div:!0},p:{div:!0},td:{tr:!0,table:!0},th:{tr:!0,table:!0}},Ve=function(e,t,r){var n;if(!("childNodes"in e.attributes)){if(t&&!xe.test(t)&&!Ce.test(t))return e.childNodes.push(y("#text",t));for(var a=[],o=t.split(Ce),i=0;i\/=\uFDD0-\uFDEF\uFFFE\uFFFF]*)\s*(=\s*("([^"]+)"|'([^']+)'|(\S+)))?/gi;if(a=Ce.exec(e))return Pe(r.tags[a[1]],t,r);for(var i,s={};i=o.exec(t||Q.STR);){var c="string"==typeof e,l=i[1],d=void 0;if(""===l){var u=t.match(Ce);d=u?u[0]:""}var f=i[6]||i[5]||i[4],h=d||f||(c?i[1]:f||!0),p="''"===h||'""'===h?Q.STR:h,v=String(p).match(Ce);if(v&&v.length)for(var m=String(p).split(Ce),g=Ce.exec(l),b=g?r.attributes[g[1]]:l,N=0;N