From 6d3c884cbb5cb1202508121ab3dc2cb3af5b5215 Mon Sep 17 00:00:00 2001 From: Greg Kempe Date: Mon, 5 Aug 2024 12:57:20 +0200 Subject: [PATCH 1/7] Document table header labels; judgments use specific labels --- peachjam/templates/peachjam/_document_table.html | 4 ++-- peachjam/views/courts.py | 2 ++ peachjam/views/generic_views.py | 2 ++ 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/peachjam/templates/peachjam/_document_table.html b/peachjam/templates/peachjam/_document_table.html index 96af54793..842d970f8 100644 --- a/peachjam/templates/peachjam/_document_table.html +++ b/peachjam/templates/peachjam/_document_table.html @@ -10,7 +10,7 @@
- {% trans 'Title' %} + {{ doc_table_title_label|default_if_none:"Title" }}
@@ -27,7 +27,7 @@
- {% trans 'Date' %} + {{ doc_table_date_label|default_if_none:"Date" }}
diff --git a/peachjam/views/courts.py b/peachjam/views/courts.py index 0ed4e66df..f0a4e0bf7 100644 --- a/peachjam/views/courts.py +++ b/peachjam/views/courts.py @@ -39,6 +39,8 @@ def get_context_data(self, **kwargs): context["doc_type"] = "Judgment" context["page_title"] = self.page_title() context["doc_table_show_jurisdiction"] = False + context["doc_table_title_label"] = _("Case citation") + context["doc_table_date_label"] = _("Judgment date") self.populate_years(context) context["documents"] = self.group_documents(context["documents"]) diff --git a/peachjam/views/generic_views.py b/peachjam/views/generic_views.py index af91ae297..343eec756 100644 --- a/peachjam/views/generic_views.py +++ b/peachjam/views/generic_views.py @@ -136,6 +136,8 @@ def get_context_data(self, **kwargs): self.add_facets(context) self.show_facet_clear_all(context) context["doc_count"] = context["paginator"].count + context["doc_table_title_label"] = _("Title") + context["doc_table_date_label"] = _("Date") return context From 66fbe27e63febe9e944f42566f7f3df0e149820c Mon Sep 17 00:00:00 2001 From: Greg Kempe Date: Mon, 5 Aug 2024 13:11:47 +0200 Subject: [PATCH 2/7] include advanced search in quick search --- peachjam/templates/peachjam/_quick_search.html | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/peachjam/templates/peachjam/_quick_search.html b/peachjam/templates/peachjam/_quick_search.html index 1565d60e1..d269a342c 100644 --- a/peachjam/templates/peachjam/_quick_search.html +++ b/peachjam/templates/peachjam/_quick_search.html @@ -1,4 +1,5 @@ -
+{% load i18n %} + {% endif %} {% if doc_type %}{% endif %}
+{% trans "Advanced search" %} From ce521b67b14de9897e0cf61f48971b1fddd5dc38 Mon Sep 17 00:00:00 2001 From: Greg Kempe Date: Mon, 5 Aug 2024 13:42:43 +0200 Subject: [PATCH 3/7] copy-to-clipboard supports links; doc citations copy as links --- peachjam/js/components/clipboard.ts | 17 ++++++++++++++++- peachjam/settings.py | 1 + .../templates/peachjam/judgment_detail.html | 3 ++- .../peachjam/layouts/document_detail.html | 6 ++++-- 4 files changed, 23 insertions(+), 4 deletions(-) diff --git a/peachjam/js/components/clipboard.ts b/peachjam/js/components/clipboard.ts index d2242269e..fa9af618a 100644 --- a/peachjam/js/components/clipboard.ts +++ b/peachjam/js/components/clipboard.ts @@ -10,8 +10,23 @@ export class CopyToClipboard { async copy () { try { + const text = this.root.dataset.value; + const html = this.root.dataset.valueHtml; + if (navigator && navigator.clipboard) { - await navigator.clipboard.writeText(this.root.dataset.value || ''); + const items: Record = {}; + + if (text) { + const type = 'text/plain'; + items[type] = new Blob([text], { type }); + } + + if (html) { + const type = 'text/html'; + items[type] = new Blob([html], { type }); + } + + await navigator.clipboard.write([new ClipboardItem(items)]); this.root.innerText = this.root.dataset.confirmation || 'Copied!'; setTimeout(() => { diff --git a/peachjam/settings.py b/peachjam/settings.py index 25d9cee22..40558eb62 100644 --- a/peachjam/settings.py +++ b/peachjam/settings.py @@ -100,6 +100,7 @@ "allauth.account.middleware.AccountMiddleware", "django.middleware.cache.FetchFromCacheMiddleware", "django_htmx.middleware.HtmxMiddleware", + "django.contrib.sites.middleware.CurrentSiteMiddleware", ] ROOT_URLCONF = "peachjam.urls" diff --git a/peachjam/templates/peachjam/judgment_detail.html b/peachjam/templates/peachjam/judgment_detail.html index bcd99f90a..ac213f516 100644 --- a/peachjam/templates/peachjam/judgment_detail.html +++ b/peachjam/templates/peachjam/judgment_detail.html @@ -36,7 +36,8 @@ class="btn btn-outline-secondary btn-xs ms-2" title="{% trans "Copy to clipboard" %}" data-component="CopyToClipboard" - data-value="{{ document.mnc }}" + data-value='{{ document.mnc }}' + data-value-html='{{ document.mnc }}' data-confirmation="{% trans "Copied!" %}"> {% trans "Copy" %} diff --git a/peachjam/templates/peachjam/layouts/document_detail.html b/peachjam/templates/peachjam/layouts/document_detail.html index 0cff88c06..cba642520 100644 --- a/peachjam/templates/peachjam/layouts/document_detail.html +++ b/peachjam/templates/peachjam/layouts/document_detail.html @@ -183,7 +183,8 @@

{{ document.title }}

class="btn btn-outline-secondary btn-xs ms-2" title="{% trans "Copy to clipboard" %}" data-component="CopyToClipboard" - data-value="{{ document.citation }}" + data-value='{{ document.citation }}' + data-value-html='{{ document.citation }}' data-confirmation="{% trans "Copied!" %}"> {% trans "Copy" %} @@ -210,7 +211,8 @@

{{ document.title }}

class="btn btn-outline-secondary btn-xs ms-2" title="{% trans "Copy to clipboard" %}" data-component="CopyToClipboard" - data-value="{{ alternative_name.title }}" + data-value='{{ alternative_name.title }}' + data-value-html='{{ alternative_name.title }}' data-confirmation="{% trans "Copied!" %}"> {% trans "Copy" %} From 541e581d0fa8401bdc828c75b53447029ae5b756 Mon Sep 17 00:00:00 2001 From: Greg Kempe Date: Mon, 5 Aug 2024 13:45:39 +0200 Subject: [PATCH 4/7] Case citation -> Citation --- peachjam/views/courts.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/peachjam/views/courts.py b/peachjam/views/courts.py index f0a4e0bf7..864fc25e2 100644 --- a/peachjam/views/courts.py +++ b/peachjam/views/courts.py @@ -39,7 +39,7 @@ def get_context_data(self, **kwargs): context["doc_type"] = "Judgment" context["page_title"] = self.page_title() context["doc_table_show_jurisdiction"] = False - context["doc_table_title_label"] = _("Case citation") + context["doc_table_title_label"] = _("Citation") context["doc_table_date_label"] = _("Judgment date") self.populate_years(context) From b5dd00b99baa77b78a19ad70cece054919f242d3 Mon Sep 17 00:00:00 2001 From: longhotsummer Date: Mon, 5 Aug 2024 11:52:55 +0000 Subject: [PATCH 5/7] Update compiled javascript [nobuild] --- peachjam/static/js/app-prod.js | 2 +- peachjam/static/js/app-prod.js.map | 2 +- peachjam/static/js/pdf.worker-prod.js | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/peachjam/static/js/app-prod.js b/peachjam/static/js/app-prod.js index 8ac2e43ef..ed1b49fbc 100644 --- a/peachjam/static/js/app-prod.js +++ b/peachjam/static/js/app-prod.js @@ -1,3 +1,3 @@ /*! For license information please see app-prod.js.LICENSE.txt */ -!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},t=(new Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="ec163fda-6500-451f-bdc0-d1c41a37c9dc",e._sentryDebugIdIdentifier="sentry-dbid-ec163fda-6500-451f-bdc0-d1c41a37c9dc")}catch(e){}}();var _global="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};_global.SENTRY_RELEASE={id:"33f9be328cfed277e57098b50d07008cd877d65e"},(()=>{var __webpack_modules__={9448:(e,t,n)=>{e.exports=n(1908)},1908:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fromRange=function(e,t){if(void 0===e)throw new Error('missing required parameter "root"');if(void 0===t)throw new Error('missing required parameter "range"');return s(e,a.fromRange(e,t))},t.fromTextPosition=s,t.toRange=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},r=l(e,t,n);return null===r?null:(r.end=Math.min(r.end,e.textContent.length),a.toRange(e,r))},t.toTextPosition=l;var r,o=(r=n(2027))&&r.__esModule?r:{default:r},a=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}(n(9535)),i=new RegExp("(.|[\r\n]){1,"+String(32)+"}","g");function s(e,t){if(void 0===e)throw new Error('missing required parameter "root"');if(void 0===t)throw new Error('missing required parameter "selector"');var n=t.start;if(void 0===n)throw new Error('selector missing required property "start"');if(n<0)throw new Error('property "start" must be a non-negative integer');var r=t.end;if(void 0===r)throw new Error('selector missing required property "end"');if(r<0)throw new Error('property "end" must be a non-negative integer');var o=e.textContent.substr(n,r-n),a=Math.max(0,n-32),i=e.textContent.substr(a,n-a),s=Math.min(e.textContent.length,r+32);return{exact:o,prefix:i,suffix:e.textContent.substr(r,s-r)}}function l(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(void 0===e)throw new Error('missing required parameter "root"');if(void 0===t)throw new Error('missing required parameter "selector"');var r=t.exact;if(void 0===r)throw new Error('selector missing required property "exact"');var a=t.prefix,s=t.suffix,l=n.hint,c=new o.default;c.Match_Distance=2*e.textContent.length;var u=r.match(i),d=void 0===l?e.textContent.length/2|0:l,p=Number.POSITIVE_INFINITY,h=Number.NEGATIVE_INFINITY,f=-1,m=void 0!==a,g=void 0!==s,b=!1;m&&(f=c.match_main(e.textContent,a,d))>-1&&(d=f+a.length,b=!0),g&&!b&&(f=c.match_main(e.textContent,s,d+r.length))>-1&&(d=f-r.length);var v=u.shift();if(!((f=c.match_main(e.textContent,v,d))>-1))return null;d=h=(p=f)+v.length;var y=function(t,n){if(!t)return null;var r=c.match_main(e.textContent,n,t.loc);return-1===r?null:(t.loc=r+n.length,t.start=Math.min(t.start,r),t.end=Math.max(t.end,r+n.length),t)};c.Match_Distance=64;var _=u.reduce(y,{start:p,end:h,loc:d});return _?{start:_.start,end:_.end}:null}},9183:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GutterEnrichmentManager=void 0;const r=n(2581);t.GutterEnrichmentManager=class{constructor(e){this.root=e,this.gutter=e.querySelector("la-gutter"),this.akn=e.querySelector("la-akoma-ntoso"),this.providers=[],this.floatingContainer=this.createFloatingContainer(),this.floaterTimeout=null,this.target=null,document.addEventListener("selectionchange",this.selectionChanged.bind(this))}addProvider(e){this.providers.push(e)}createFloatingContainer(){const e=document.createElement("la-gutter-item"),t=document.createElement("div");return t.className="gutter-enrichment-new-buttons btn-group-vertical btn-group-sm bg-white",e.appendChild(t),e}selectionChanged(){const e=document.getSelection();if(this.akn&&this.gutter)if(e&&e.rangeCount>0&&!e.getRangeAt(0).collapsed){this.floaterTimeout&&window.clearTimeout(this.floaterTimeout);const t=e.getRangeAt(0);if(t.commonAncestorContainer.compareDocumentPosition(this.akn)&Node.DOCUMENT_POSITION_CONTAINS){let e=t.startContainer;for(;e&&e.nodeType!==Node.ELEMENT_NODE;)e=e.parentElement;this.target=(0,r.rangeToTarget)(t,this.akn),this.target?(this.addProviderButtons(this.target),this.floatingContainer.anchor=e,this.gutter.contains(this.floatingContainer)||this.gutter.appendChild(this.floatingContainer)):this.removeFloater()}}else this.floaterTimeout=window.setTimeout(this.removeFloater.bind(this),200)}addProviderButtons(e){const t=this.floatingContainer.firstElementChild;if(t){t.innerHTML="";for(const n of this.providers){const r=n.getButton(e);r&&(r.addEventListener("click",(()=>{this.removeFloater(),n.addEnrichment(e)})),t.appendChild(r))}}}removeFloater(){this.floatingContainer.remove(),this.floaterTimeout=null}}},8482:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),o=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),o(n(2720),t),o(n(9183),t)},2720:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.PopupEnrichmentManager=t.EnrichmentMarker=void 0;const o=n(2581),a=r(n(5088));n(9639),n(3612);class i{constructor(e,t){this.provider=e,this.enrichment=t,this.marks=[],this.popups=[]}}t.EnrichmentMarker=i,t.PopupEnrichmentManager=class{constructor(e){this.markTag="mark",this.markClasses=["enrichment","enrichment--popup"],this.documentRoot=e,this.providers=[],this.markers=[],this.observer=this.createObserver()}createObserver(){const e=new MutationObserver((()=>this.applyEnrichments()));return e.observe(this.documentRoot,{childList:!0}),e}addProvider(e){this.providers.push(e)}removeProvider(e){const t=this.providers.indexOf(e);t>-1&&(this.unapplyProviderEnrichments(e),this.providers.splice(t,1))}applyEnrichments(){for(const e of this.providers)this.applyProviderEnrichments(e)}applyProviderEnrichments(e){this.unapplyProviderEnrichments(e);for(const t of e.getEnrichments()){const n=new i(e,t),r=(0,o.targetToRange)(t.target,this.documentRoot);r&&(0,o.markRange)(r,this.markTag,(r=>(n.marks.push(r),r.classList.add(...this.markClasses),e.markCreated(t,r),n.popups.push(this.createPopup(e,t,r)),r))),n.marks.length&&this.markers.push(n)}}unapplyProviderEnrichments(e){const t=this.markers.filter((t=>t.provider===e));for(const e of t)this.unapplyMarker(e)}unapplyMarker(e){for(const t of e.marks)if(t.parentElement){for(;t.firstChild;)t.parentElement.insertBefore(t.firstChild,t);t.parentElement.removeChild(t)}for(const t of e.popups)t.destroy()}createPopup(e,t,n){const r=(0,a.default)(n,{appendTo:document.body,interactive:!0,theme:"light",zIndex:0,delay:[0,0],onShow:r=>{r.setContent(""),r.setContent(e.getPopupContent(t,n))}});return e.popupCreated(t,r),r}}},2581:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.aknRangeToTarget=t.rangeToTarget=t.selectorsToRange=t.targetToAknRange=t.targetToRange=t.withoutForeignElements=t.markRange=t.getTextNodes=t.foreignElementsSelector=void 0;const r=n(9535),o=n(9448);function a(e){const t=[],n={TABLE:1,THEAD:1,TBODY:1,TR:1};let r,o,a,i;function s(e,t){return 0!==t?e.splitText(t):e}if(e.startContainer.nodeType===Node.TEXT_NODE)a=s(e.startContainer,e.startOffset);else if(a=document.createNodeIterator(e.startContainer,NodeFilter.SHOW_TEXT).nextNode(),!a)return t;i=e.endContainer.nodeType===Node.TEXT_NODE?s(e.endContainer,e.endOffset):e.endContainer,r=document.createNodeIterator(e.commonAncestorContainer,NodeFilter.SHOW_TEXT,(function(e){return n[e.parentElement.tagName]?NodeFilter.FILTER_SKIP:NodeFilter.FILTER_ACCEPT}));let l=r.nextNode();for(;l&&l!==a;)l=r.nextNode();for(;l&&(o=l.compareDocumentPosition(i),0!=(o&Node.DOCUMENT_POSITION_CONTAINS)||0!=(o&Node.DOCUMENT_POSITION_FOLLOWING));)t.push(l),l=r.nextNode();return t}function i(e,n,r=t.foreignElementsSelector){const o=[];for(const t of Array.from(e.querySelectorAll(r))){const e={e:t,before:null,parent:null};t.nextSibling?e.before=t.nextSibling:e.parent=t.parentElement,t.parentElement&&t.parentElement.removeChild(t),o.push(e)}try{return n()}finally{o.reverse();for(const e of o)e.before&&e.before.parentElement?e.before.parentElement.insertBefore(e.e,e.before):e.parent&&e.parent.appendChild(e.e)}}function s(e,t){let n;const a=t.find((e=>"TextPositionSelector"===e.type)),i=t.find((e=>"TextQuoteSelector"===e.type));if(a)try{if(n=(0,r.toRange)(e,a),!i||n.toString()===i.exact)return n}catch(e){}if(i)return(0,o.toRange)(e,i)}t.foreignElementsSelector=".ig",t.getTextNodes=a,t.markRange=function(e,t="mark",n){let r=e.commonAncestorContainer;r.nodeType!==Node.ELEMENT_NODE&&(r=r.parentElement),r&&i(r,(()=>{for(const r of a(e))if(r.parentElement){let e=r.ownerDocument.createElement(t);n&&(e=n(e,r)),e&&(r.parentElement.insertBefore(e,r),e.appendChild(r))}}))},t.withoutForeignElements=i,t.targetToRange=function(e,t){let n=e.anchor_id,r=n.lastIndexOf("__"),o=t.querySelector(`[id="${n}"]`);for(;!o&&r>-1;)n=n.substring(0,r),r=n.lastIndexOf("__"),o=t.querySelector(`[id="${n}"]`);if(o){if(e.selectors)return i(o,(()=>s(o,e.selectors)));{const e=t.ownerDocument.createRange();return e.selectNodeContents(o),e}}return null},t.targetToAknRange=function(e,t){function n(e){return"arguments"===e?t.querySelector(e):t.querySelector(`[eId=${e}]`)}let r=e.anchor_id,o=r.lastIndexOf("__"),a=n(r);for(;!a&&o>-1;)r=r.substring(0,o),o=r.lastIndexOf("__"),a=n(r);if(a){if(e.selectors)return s(a,e.selectors);{const e=new Range;return e.selectNodeContents(a),e}}return null},t.selectorsToRange=s,t.rangeToTarget=function(e,t){let n=e.commonAncestorContainer;if(n.nodeType!==Node.ELEMENT_NODE&&(n=n.parentElement,!n))return null;if(n=n.closest("[id]"),!n||n!==t&&0==(n.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINS))return null;const a={anchor_id:n.id,selectors:[]};return i(n,(()=>{let t=(0,r.fromRange)(n,e);t.type="TextPositionSelector",a.selectors.push(t),t=(0,o.fromTextPosition)(n,t),t.type="TextQuoteSelector",a.selectors.push(t)})),a},t.aknRangeToTarget=function(e,t){let n=e.commonAncestorContainer;if(n.nodeType!==Node.ELEMENT_NODE&&(n=n.parentElement,!n))return null;if(n=n.closest("[eId]"),!n||n!==t&&0==(n.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINS))return null;const a={anchor_id:n.getAttribute("eId")||"",selectors:[]};let i=(0,r.fromRange)(n,e);return i.type="TextPositionSelector",a.selectors.push(i),i=(0,o.fromTextPosition)(n,i),i.type="TextQuoteSelector",a.selectors.push(i),a}},8240:(e,t,n)=>{"use strict";n.d(t,{fi:()=>k,kZ:()=>_});var r=n(400),o=n(2163),a=n(2057),i=n(2556),s=n(6333),l=n(4063),c=n(7252),u=n(611),d=n(138);function p(e,t,n){void 0===n&&(n=!1);var p,h,f=(0,i.Re)(t),m=(0,i.Re)(t)&&function(e){var t=e.getBoundingClientRect(),n=(0,d.NM)(t.width)/e.offsetWidth||1,r=(0,d.NM)(t.height)/e.offsetHeight||1;return 1!==n||1!==r}(t),g=(0,c.Z)(t),b=(0,r.Z)(e,m,n),v={scrollLeft:0,scrollTop:0},y={x:0,y:0};return(f||!f&&!n)&&(("body"!==(0,s.Z)(t)||(0,u.Z)(g))&&(v=(p=t)!==(0,a.Z)(p)&&(0,i.Re)(p)?{scrollLeft:(h=p).scrollLeft,scrollTop:h.scrollTop}:(0,o.Z)(p)),(0,i.Re)(t)?((y=(0,r.Z)(t,!0)).x+=t.clientLeft,y.y+=t.clientTop):g&&(y.x=(0,l.Z)(g))),{x:b.left+v.scrollLeft-y.x,y:b.top+v.scrollTop-y.y,width:b.width,height:b.height}}var h=n(583),f=n(3624),m=n(5961),g=n(7701);function b(e){var t=new Map,n=new Set,r=[];function o(e){n.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!n.has(e)){var r=t.get(e);r&&o(r)}})),r.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){n.has(e.name)||o(e)})),r}var v={placement:"bottom",modifiers:[],strategy:"absolute"};function y(){for(var e=arguments.length,t=new Array(e),n=0;n{"use strict";n.d(t,{Z:()=>o});var r=n(2556);function o(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&(0,r.Zq)(n)){var o=t;do{if(o&&e.isSameNode(o))return!0;o=o.parentNode||o.host}while(o)}return!1}},400:(e,t,n)=>{"use strict";n.d(t,{Z:()=>s});var r=n(2556),o=n(138),a=n(2057),i=n(7977);function s(e,t,n){void 0===t&&(t=!1),void 0===n&&(n=!1);var s=e.getBoundingClientRect(),l=1,c=1;t&&(0,r.Re)(e)&&(l=e.offsetWidth>0&&(0,o.NM)(s.width)/e.offsetWidth||1,c=e.offsetHeight>0&&(0,o.NM)(s.height)/e.offsetHeight||1);var u=((0,r.kK)(e)?(0,a.Z)(e):window).visualViewport,d=!(0,i.Z)()&&n,p=(s.left+(d&&u?u.offsetLeft:0))/l,h=(s.top+(d&&u?u.offsetTop:0))/c,f=s.width/l,m=s.height/c;return{width:f,height:m,top:h,right:p+f,bottom:h+m,left:p,x:p,y:h}}},3062:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(2057);function o(e){return(0,r.Z)(e).getComputedStyle(e)}},7252:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(2556);function o(e){return(((0,r.kK)(e)?e.ownerDocument:e.document)||window.document).documentElement}},583:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(400);function o(e){var t=(0,r.Z)(e),n=e.offsetWidth,o=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-o)<=1&&(o=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:o}}},6333:(e,t,n)=>{"use strict";function r(e){return e?(e.nodeName||"").toLowerCase():null}n.d(t,{Z:()=>r})},5961:(e,t,n)=>{"use strict";n.d(t,{Z:()=>d});var r=n(2057),o=n(6333),a=n(3062),i=n(2556);function s(e){return["table","td","th"].indexOf((0,o.Z)(e))>=0}var l=n(5923),c=n(5918);function u(e){return(0,i.Re)(e)&&"fixed"!==(0,a.Z)(e).position?e.offsetParent:null}function d(e){for(var t=(0,r.Z)(e),n=u(e);n&&s(n)&&"static"===(0,a.Z)(n).position;)n=u(n);return n&&("html"===(0,o.Z)(n)||"body"===(0,o.Z)(n)&&"static"===(0,a.Z)(n).position)?t:n||function(e){var t=/firefox/i.test((0,c.Z)());if(/Trident/i.test((0,c.Z)())&&(0,i.Re)(e)&&"fixed"===(0,a.Z)(e).position)return null;var n=(0,l.Z)(e);for((0,i.Zq)(n)&&(n=n.host);(0,i.Re)(n)&&["html","body"].indexOf((0,o.Z)(n))<0;){var r=(0,a.Z)(n);if("none"!==r.transform||"none"!==r.perspective||"paint"===r.contain||-1!==["transform","perspective"].indexOf(r.willChange)||t&&"filter"===r.willChange||t&&r.filter&&"none"!==r.filter)return n;n=n.parentNode}return null}(e)||t}},5923:(e,t,n)=>{"use strict";n.d(t,{Z:()=>i});var r=n(6333),o=n(7252),a=n(2556);function i(e){return"html"===(0,r.Z)(e)?e:e.assignedSlot||e.parentNode||((0,a.Zq)(e)?e.host:null)||(0,o.Z)(e)}},2057:(e,t,n)=>{"use strict";function r(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}n.d(t,{Z:()=>r})},2163:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(2057);function o(e){var t=(0,r.Z)(e);return{scrollLeft:t.pageXOffset,scrollTop:t.pageYOffset}}},4063:(e,t,n)=>{"use strict";n.d(t,{Z:()=>i});var r=n(400),o=n(7252),a=n(2163);function i(e){return(0,r.Z)((0,o.Z)(e)).left+(0,a.Z)(e).scrollLeft}},2556:(e,t,n)=>{"use strict";n.d(t,{Re:()=>a,Zq:()=>i,kK:()=>o});var r=n(2057);function o(e){return e instanceof(0,r.Z)(e).Element||e instanceof Element}function a(e){return e instanceof(0,r.Z)(e).HTMLElement||e instanceof HTMLElement}function i(e){return"undefined"!=typeof ShadowRoot&&(e instanceof(0,r.Z)(e).ShadowRoot||e instanceof ShadowRoot)}},7977:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(5918);function o(){return!/^((?!chrome|android).)*safari/i.test((0,r.Z)())}},611:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(3062);function o(e){var t=(0,r.Z)(e),n=t.overflow,o=t.overflowX,a=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+a+o)}},3624:(e,t,n)=>{"use strict";n.d(t,{Z:()=>c});var r=n(5923),o=n(611),a=n(6333),i=n(2556);function s(e){return["html","body","#document"].indexOf((0,a.Z)(e))>=0?e.ownerDocument.body:(0,i.Re)(e)&&(0,o.Z)(e)?e:s((0,r.Z)(e))}var l=n(2057);function c(e,t){var n;void 0===t&&(t=[]);var a=s(e),i=a===(null==(n=e.ownerDocument)?void 0:n.body),u=(0,l.Z)(a),d=i?[u].concat(u.visualViewport||[],(0,o.Z)(a)?a:[]):a,p=t.concat(d);return i?p:p.concat(c((0,r.Z)(d)))}},7701:(e,t,n)=>{"use strict";n.d(t,{BL:()=>c,Ct:()=>g,DH:()=>k,F2:()=>a,I:()=>o,MS:()=>C,N7:()=>b,Pj:()=>p,XM:()=>_,YP:()=>f,bw:()=>m,cW:()=>A,d7:()=>s,ij:()=>v,iv:()=>x,k5:()=>h,mv:()=>l,r5:()=>y,t$:()=>i,ut:()=>u,wX:()=>w,we:()=>r,xs:()=>S,zV:()=>d});var r="top",o="bottom",a="right",i="left",s="auto",l=[r,o,a,i],c="start",u="end",d="clippingParents",p="viewport",h="popper",f="reference",m=l.reduce((function(e,t){return e.concat([t+"-"+c,t+"-"+u])}),[]),g=[].concat(l,[s]).reduce((function(e,t){return e.concat([t,t+"-"+c,t+"-"+u])}),[]),b="beforeRead",v="read",y="afterRead",_="beforeMain",k="main",w="afterMain",x="beforeWrite",A="write",C="afterWrite",S=[b,v,y,_,k,w,x,A,C]},7824:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(6333),o=n(2556);const a={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var n=t.styles[e]||{},a=t.attributes[e]||{},i=t.elements[e];(0,o.Re)(i)&&(0,r.Z)(i)&&(Object.assign(i.style,n),Object.keys(a).forEach((function(e){var t=a[e];!1===t?i.removeAttribute(e):i.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach((function(e){var a=t.elements[e],i=t.attributes[e]||{},s=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]).reduce((function(e,t){return e[t]="",e}),{});(0,o.Re)(a)&&(0,r.Z)(a)&&(Object.assign(a.style,s),Object.keys(i).forEach((function(e){a.removeAttribute(e)})))}))}},requires:["computeStyles"]}},6896:(e,t,n)=>{"use strict";n.d(t,{Z:()=>p});var r=n(6206),o=n(583),a=n(4985),i=n(5961),s=n(1516),l=n(7516),c=n(3293),u=n(3706),d=n(7701);const p={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,n=e.state,a=e.name,p=e.options,h=n.elements.arrow,f=n.modifiersData.popperOffsets,m=(0,r.Z)(n.placement),g=(0,s.Z)(m),b=[d.t$,d.F2].indexOf(m)>=0?"height":"width";if(h&&f){var v=function(e,t){return e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e,(0,c.Z)("number"!=typeof e?e:(0,u.Z)(e,d.mv))}(p.padding,n),y=(0,o.Z)(h),_="y"===g?d.we:d.t$,k="y"===g?d.I:d.F2,w=n.rects.reference[b]+n.rects.reference[g]-f[g]-n.rects.popper[b],x=f[g]-n.rects.reference[g],A=(0,i.Z)(h),C=A?"y"===g?A.clientHeight||0:A.clientWidth||0:0,S=w/2-x/2,E=v[_],T=C-y[b]-v[k],O=C/2-y[b]/2+S,P=(0,l.u)(E,O,T),D=g;n.modifiersData[a]=((t={})[D]=P,t.centerOffset=P-O,t)}},effect:function(e){var t=e.state,n=e.options.element,r=void 0===n?"[data-popper-arrow]":n;null!=r&&("string"!=typeof r||(r=t.elements.popper.querySelector(r)))&&(0,a.Z)(t.elements.popper,r)&&(t.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]}},6531:(e,t,n)=>{"use strict";n.d(t,{Z:()=>h});var r=n(7701),o=n(5961),a=n(2057),i=n(7252),s=n(3062),l=n(6206),c=n(4943),u=n(138),d={top:"auto",right:"auto",bottom:"auto",left:"auto"};function p(e){var t,n=e.popper,l=e.popperRect,c=e.placement,p=e.variation,h=e.offsets,f=e.position,m=e.gpuAcceleration,g=e.adaptive,b=e.roundOffsets,v=e.isFixed,y=h.x,_=void 0===y?0:y,k=h.y,w=void 0===k?0:k,x="function"==typeof b?b({x:_,y:w}):{x:_,y:w};_=x.x,w=x.y;var A=h.hasOwnProperty("x"),C=h.hasOwnProperty("y"),S=r.t$,E=r.we,T=window;if(g){var O=(0,o.Z)(n),P="clientHeight",D="clientWidth";O===(0,a.Z)(n)&&(O=(0,i.Z)(n),"static"!==(0,s.Z)(O).position&&"absolute"===f&&(P="scrollHeight",D="scrollWidth")),(c===r.we||(c===r.t$||c===r.F2)&&p===r.ut)&&(E=r.I,w-=(v&&O===T&&T.visualViewport?T.visualViewport.height:O[P])-l.height,w*=m?1:-1),c!==r.t$&&(c!==r.we&&c!==r.I||p!==r.ut)||(S=r.F2,_-=(v&&O===T&&T.visualViewport?T.visualViewport.width:O[D])-l.width,_*=m?1:-1)}var I,R=Object.assign({position:f},g&&d),L=!0===b?function(e,t){var n=e.x,r=e.y,o=t.devicePixelRatio||1;return{x:(0,u.NM)(n*o)/o||0,y:(0,u.NM)(r*o)/o||0}}({x:_,y:w},(0,a.Z)(n)):{x:_,y:w};return _=L.x,w=L.y,m?Object.assign({},R,((I={})[E]=C?"0":"",I[S]=A?"0":"",I.transform=(T.devicePixelRatio||1)<=1?"translate("+_+"px, "+w+"px)":"translate3d("+_+"px, "+w+"px, 0)",I)):Object.assign({},R,((t={})[E]=C?w+"px":"",t[S]=A?_+"px":"",t.transform="",t))}const h={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,n=e.options,r=n.gpuAcceleration,o=void 0===r||r,a=n.adaptive,i=void 0===a||a,s=n.roundOffsets,u=void 0===s||s,d={placement:(0,l.Z)(t.placement),variation:(0,c.Z)(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:o,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,p(Object.assign({},d,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:i,roundOffsets:u})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,p(Object.assign({},d,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:u})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}}},2372:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(2057),o={passive:!0};const a={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var t=e.state,n=e.instance,a=e.options,i=a.scroll,s=void 0===i||i,l=a.resize,c=void 0===l||l,u=(0,r.Z)(t.elements.popper),d=[].concat(t.scrollParents.reference,t.scrollParents.popper);return s&&d.forEach((function(e){e.addEventListener("scroll",n.update,o)})),c&&u.addEventListener("resize",n.update,o),function(){s&&d.forEach((function(e){e.removeEventListener("scroll",n.update,o)})),c&&u.removeEventListener("resize",n.update,o)}},data:{}}},5228:(e,t,n)=>{"use strict";n.d(t,{Z:()=>d});var r={left:"right",right:"left",bottom:"top",top:"bottom"};function o(e){return e.replace(/left|right|bottom|top/g,(function(e){return r[e]}))}var a=n(6206),i={start:"end",end:"start"};function s(e){return e.replace(/start|end/g,(function(e){return i[e]}))}var l=n(9966),c=n(4943),u=n(7701);const d={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var i=n.mainAxis,d=void 0===i||i,p=n.altAxis,h=void 0===p||p,f=n.fallbackPlacements,m=n.padding,g=n.boundary,b=n.rootBoundary,v=n.altBoundary,y=n.flipVariations,_=void 0===y||y,k=n.allowedAutoPlacements,w=t.options.placement,x=(0,a.Z)(w),A=f||(x!==w&&_?function(e){if((0,a.Z)(e)===u.d7)return[];var t=o(e);return[s(e),t,s(t)]}(w):[o(w)]),C=[w].concat(A).reduce((function(e,n){return e.concat((0,a.Z)(n)===u.d7?function(e,t){void 0===t&&(t={});var n=t,r=n.placement,o=n.boundary,i=n.rootBoundary,s=n.padding,d=n.flipVariations,p=n.allowedAutoPlacements,h=void 0===p?u.Ct:p,f=(0,c.Z)(r),m=f?d?u.bw:u.bw.filter((function(e){return(0,c.Z)(e)===f})):u.mv,g=m.filter((function(e){return h.indexOf(e)>=0}));0===g.length&&(g=m);var b=g.reduce((function(t,n){return t[n]=(0,l.Z)(e,{placement:n,boundary:o,rootBoundary:i,padding:s})[(0,a.Z)(n)],t}),{});return Object.keys(b).sort((function(e,t){return b[e]-b[t]}))}(t,{placement:n,boundary:g,rootBoundary:b,padding:m,flipVariations:_,allowedAutoPlacements:k}):n)}),[]),S=t.rects.reference,E=t.rects.popper,T=new Map,O=!0,P=C[0],D=0;D=0,F=M?"width":"height",N=(0,l.Z)(t,{placement:I,boundary:g,rootBoundary:b,altBoundary:v,padding:m}),j=M?L?u.F2:u.t$:L?u.I:u.we;S[F]>E[F]&&(j=o(j));var $=o(j),B=[];if(d&&B.push(N[R]<=0),h&&B.push(N[j]<=0,N[$]<=0),B.every((function(e){return e}))){P=I,O=!1;break}T.set(I,B)}if(O)for(var q=function(e){var t=C.find((function(t){var n=T.get(t);if(n)return n.slice(0,e).every((function(e){return e}))}));if(t)return P=t,"break"},H=_?3:1;H>0&&"break"!==q(H);H--);t.placement!==P&&(t.modifiersData[r]._skip=!0,t.placement=P,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}}},9892:(e,t,n)=>{"use strict";n.d(t,{Z:()=>s});var r=n(7701),o=n(9966);function a(e,t,n){return void 0===n&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function i(e){return[r.we,r.F2,r.I,r.t$].some((function(t){return e[t]>=0}))}const s={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,n=e.name,r=t.rects.reference,s=t.rects.popper,l=t.modifiersData.preventOverflow,c=(0,o.Z)(t,{elementContext:"reference"}),u=(0,o.Z)(t,{altBoundary:!0}),d=a(c,r),p=a(u,s,l),h=i(d),f=i(p);t.modifiersData[n]={referenceClippingOffsets:d,popperEscapeOffsets:p,isReferenceHidden:h,hasPopperEscaped:f},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":h,"data-popper-escaped":f})}}},2122:(e,t,n)=>{"use strict";n.d(t,{Z:()=>a});var r=n(6206),o=n(7701);const a={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,n=e.options,a=e.name,i=n.offset,s=void 0===i?[0,0]:i,l=o.Ct.reduce((function(e,n){return e[n]=function(e,t,n){var a=(0,r.Z)(e),i=[o.t$,o.we].indexOf(a)>=0?-1:1,s="function"==typeof n?n(Object.assign({},t,{placement:e})):n,l=s[0],c=s[1];return l=l||0,c=(c||0)*i,[o.t$,o.F2].indexOf(a)>=0?{x:c,y:l}:{x:l,y:c}}(n,t.rects,s),e}),{}),c=l[t.placement],u=c.x,d=c.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=u,t.modifiersData.popperOffsets.y+=d),t.modifiersData[a]=l}}},7421:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(9349);const o={name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,n=e.name;t.modifiersData[n]=(0,r.Z)({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}}},3920:(e,t,n)=>{"use strict";n.d(t,{Z:()=>h});var r=n(7701),o=n(6206),a=n(1516),i=n(7516),s=n(583),l=n(5961),c=n(9966),u=n(4943),d=n(3607),p=n(138);const h={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,h=e.name,f=n.mainAxis,m=void 0===f||f,g=n.altAxis,b=void 0!==g&&g,v=n.boundary,y=n.rootBoundary,_=n.altBoundary,k=n.padding,w=n.tether,x=void 0===w||w,A=n.tetherOffset,C=void 0===A?0:A,S=(0,c.Z)(t,{boundary:v,rootBoundary:y,padding:k,altBoundary:_}),E=(0,o.Z)(t.placement),T=(0,u.Z)(t.placement),O=!T,P=(0,a.Z)(E),D="x"===P?"y":"x",I=t.modifiersData.popperOffsets,R=t.rects.reference,L=t.rects.popper,M="function"==typeof C?C(Object.assign({},t.rects,{placement:t.placement})):C,F="number"==typeof M?{mainAxis:M,altAxis:M}:Object.assign({mainAxis:0,altAxis:0},M),N=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,j={x:0,y:0};if(I){if(m){var $,B="y"===P?r.we:r.t$,q="y"===P?r.I:r.F2,H="y"===P?"height":"width",U=I[P],V=U+S[B],z=U-S[q],W=x?-L[H]/2:0,G=T===r.BL?R[H]:L[H],J=T===r.BL?-L[H]:-R[H],Y=t.elements.arrow,X=x&&Y?(0,s.Z)(Y):{width:0,height:0},Z=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:(0,d.Z)(),K=Z[B],Q=Z[q],ee=(0,i.u)(0,R[H],X[H]),te=O?R[H]/2-W-ee-K-F.mainAxis:G-ee-K-F.mainAxis,ne=O?-R[H]/2+W+ee+Q+F.mainAxis:J+ee+Q+F.mainAxis,re=t.elements.arrow&&(0,l.Z)(t.elements.arrow),oe=re?"y"===P?re.clientTop||0:re.clientLeft||0:0,ae=null!=($=null==N?void 0:N[P])?$:0,ie=U+te-ae-oe,se=U+ne-ae,le=(0,i.u)(x?(0,p.VV)(V,ie):V,U,x?(0,p.Fp)(z,se):z);I[P]=le,j[P]=le-U}if(b){var ce,ue="x"===P?r.we:r.t$,de="x"===P?r.I:r.F2,pe=I[D],he="y"===D?"height":"width",fe=pe+S[ue],me=pe-S[de],ge=-1!==[r.we,r.t$].indexOf(E),be=null!=(ce=null==N?void 0:N[D])?ce:0,ve=ge?fe:pe-R[he]-L[he]-be+F.altAxis,ye=ge?pe+R[he]+L[he]-be-F.altAxis:me,_e=x&&ge?(0,i.q)(ve,pe,ye):(0,i.u)(x?ve:fe,pe,x?ye:me);I[D]=_e,j[D]=_e-pe}t.modifiersData[h]=j}},requiresIfExists:["offset"]}},804:(e,t,n)=>{"use strict";n.d(t,{fi:()=>f});var r=n(8240),o=n(2372),a=n(7421),i=n(6531),s=n(7824),l=n(2122),c=n(5228),u=n(3920),d=n(6896),p=n(9892),h=[o.Z,a.Z,i.Z,s.Z,l.Z,c.Z,u.Z,d.Z,p.Z],f=(0,r.kZ)({defaultModifiers:h})},9349:(e,t,n)=>{"use strict";n.d(t,{Z:()=>s});var r=n(6206),o=n(4943),a=n(1516),i=n(7701);function s(e){var t,n=e.reference,s=e.element,l=e.placement,c=l?(0,r.Z)(l):null,u=l?(0,o.Z)(l):null,d=n.x+n.width/2-s.width/2,p=n.y+n.height/2-s.height/2;switch(c){case i.we:t={x:d,y:n.y-s.height};break;case i.I:t={x:d,y:n.y+n.height};break;case i.F2:t={x:n.x+n.width,y:p};break;case i.t$:t={x:n.x-s.width,y:p};break;default:t={x:n.x,y:n.y}}var h=c?(0,a.Z)(c):null;if(null!=h){var f="y"===h?"height":"width";switch(u){case i.BL:t[h]=t[h]-(n[f]/2-s[f]/2);break;case i.ut:t[h]=t[h]+(n[f]/2-s[f]/2)}}return t}},9966:(e,t,n)=>{"use strict";n.d(t,{Z:()=>x});var r=n(7701),o=n(2057),a=n(7252),i=n(4063),s=n(7977),l=n(3062),c=n(2163),u=n(138),d=n(3624),p=n(5961),h=n(2556),f=n(400),m=n(5923),g=n(4985),b=n(6333);function v(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function y(e,t,n){return t===r.Pj?v(function(e,t){var n=(0,o.Z)(e),r=(0,a.Z)(e),l=n.visualViewport,c=r.clientWidth,u=r.clientHeight,d=0,p=0;if(l){c=l.width,u=l.height;var h=(0,s.Z)();(h||!h&&"fixed"===t)&&(d=l.offsetLeft,p=l.offsetTop)}return{width:c,height:u,x:d+(0,i.Z)(e),y:p}}(e,n)):(0,h.kK)(t)?function(e,t){var n=(0,f.Z)(e,!1,"fixed"===t);return n.top=n.top+e.clientTop,n.left=n.left+e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}(t,n):v(function(e){var t,n=(0,a.Z)(e),r=(0,c.Z)(e),o=null==(t=e.ownerDocument)?void 0:t.body,s=(0,u.Fp)(n.scrollWidth,n.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),d=(0,u.Fp)(n.scrollHeight,n.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),p=-r.scrollLeft+(0,i.Z)(e),h=-r.scrollTop;return"rtl"===(0,l.Z)(o||n).direction&&(p+=(0,u.Fp)(n.clientWidth,o?o.clientWidth:0)-s),{width:s,height:d,x:p,y:h}}((0,a.Z)(e)))}var _=n(9349),k=n(3293),w=n(3706);function x(e,t){void 0===t&&(t={});var n=t,o=n.placement,i=void 0===o?e.placement:o,s=n.strategy,c=void 0===s?e.strategy:s,x=n.boundary,A=void 0===x?r.zV:x,C=n.rootBoundary,S=void 0===C?r.Pj:C,E=n.elementContext,T=void 0===E?r.k5:E,O=n.altBoundary,P=void 0!==O&&O,D=n.padding,I=void 0===D?0:D,R=(0,k.Z)("number"!=typeof I?I:(0,w.Z)(I,r.mv)),L=T===r.k5?r.YP:r.k5,M=e.rects.popper,F=e.elements[P?L:T],N=function(e,t,n,r){var o="clippingParents"===t?function(e){var t=(0,d.Z)((0,m.Z)(e)),n=["absolute","fixed"].indexOf((0,l.Z)(e).position)>=0&&(0,h.Re)(e)?(0,p.Z)(e):e;return(0,h.kK)(n)?t.filter((function(e){return(0,h.kK)(e)&&(0,g.Z)(e,n)&&"body"!==(0,b.Z)(e)})):[]}(e):[].concat(t),a=[].concat(o,[n]),i=a[0],s=a.reduce((function(t,n){var o=y(e,n,r);return t.top=(0,u.Fp)(o.top,t.top),t.right=(0,u.VV)(o.right,t.right),t.bottom=(0,u.VV)(o.bottom,t.bottom),t.left=(0,u.Fp)(o.left,t.left),t}),y(e,i,r));return s.width=s.right-s.left,s.height=s.bottom-s.top,s.x=s.left,s.y=s.top,s}((0,h.kK)(F)?F:F.contextElement||(0,a.Z)(e.elements.popper),A,S,c),j=(0,f.Z)(e.elements.reference),$=(0,_.Z)({reference:j,element:M,strategy:"absolute",placement:i}),B=v(Object.assign({},M,$)),q=T===r.k5?B:j,H={top:N.top-q.top+R.top,bottom:q.bottom-N.bottom+R.bottom,left:N.left-q.left+R.left,right:q.right-N.right+R.right},U=e.modifiersData.offset;if(T===r.k5&&U){var V=U[i];Object.keys(H).forEach((function(e){var t=[r.F2,r.I].indexOf(e)>=0?1:-1,n=[r.we,r.I].indexOf(e)>=0?"y":"x";H[e]+=V[n]*t}))}return H}},3706:(e,t,n)=>{"use strict";function r(e,t){return t.reduce((function(t,n){return t[n]=e,t}),{})}n.d(t,{Z:()=>r})},6206:(e,t,n)=>{"use strict";function r(e){return e.split("-")[0]}n.d(t,{Z:()=>r})},3607:(e,t,n)=>{"use strict";function r(){return{top:0,right:0,bottom:0,left:0}}n.d(t,{Z:()=>r})},1516:(e,t,n)=>{"use strict";function r(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}n.d(t,{Z:()=>r})},4943:(e,t,n)=>{"use strict";function r(e){return e.split("-")[1]}n.d(t,{Z:()=>r})},138:(e,t,n)=>{"use strict";n.d(t,{Fp:()=>r,NM:()=>a,VV:()=>o});var r=Math.max,o=Math.min,a=Math.round},3293:(e,t,n)=>{"use strict";n.d(t,{Z:()=>o});var r=n(3607);function o(e){return Object.assign({},(0,r.Z)(),e)}},5918:(e,t,n)=>{"use strict";function r(){var e=navigator.userAgentData;return null!=e&&e.brands&&Array.isArray(e.brands)?e.brands.map((function(e){return e.brand+"/"+e.version})).join(" "):navigator.userAgent}n.d(t,{Z:()=>r})},7516:(e,t,n)=>{"use strict";n.d(t,{q:()=>a,u:()=>o});var r=n(138);function o(e,t,n){return(0,r.Fp)(e,(0,r.VV)(t,n))}function a(e,t,n){var r=o(e,t,n);return r>n?n:r}},2262:(e,t,n)=>{"use strict";n.d(t,{$y:()=>Ce,B:()=>i,BK:()=>ze,Bj:()=>a,EB:()=>c,Fl:()=>Ye,IU:()=>Te,Jd:()=>C,OT:()=>ke,PG:()=>Ae,SU:()=>Be,Um:()=>_e,Vh:()=>Ge,WL:()=>He,X$:()=>O,X3:()=>Ee,XI:()=>Fe,Xl:()=>Oe,YS:()=>we,ZM:()=>Ve,cE:()=>k,dq:()=>Le,iH:()=>Me,j:()=>E,lk:()=>S,nZ:()=>l,oR:()=>$e,qj:()=>ye,qq:()=>y,sT:()=>w,yT:()=>Se});var r=n(3577);let o;class a{constructor(e=!1){this.active=!0,this.effects=[],this.cleanups=[],!e&&o&&(this.parent=o,this.index=(o.scopes||(o.scopes=[])).push(this)-1)}run(e){if(this.active)try{return o=this,e()}finally{o=this.parent}}on(){o=this}off(){o=this.parent}stop(e){if(this.active){let t,n;for(t=0,n=this.effects.length;t{const t=new Set(e);return t.w=0,t.n=0,t},d=e=>(e.w&g)>0,p=e=>(e.n&g)>0,h=new WeakMap;let f,m=0,g=1;const b=Symbol(""),v=Symbol("");class y{constructor(e,t=null,n){this.fn=e,this.scheduler=t,this.active=!0,this.deps=[],this.parent=void 0,s(this,n)}run(){if(!this.active)return this.fn();let e=f,t=x;for(;e;){if(e===this)return;e=e.parent}try{return this.parent=f,f=this,x=!0,g=1<<++m,m<=30?(({deps:e})=>{if(e.length)for(let t=0;t{const{deps:t}=e;if(t.length){let n=0;for(let r=0;r{("length"===t||t>=o)&&l.push(e)}));else switch(void 0!==n&&l.push(s.get(n)),t){case"add":(0,r.kJ)(e)?(0,r.S0)(n)&&l.push(s.get("length")):(l.push(s.get(b)),(0,r._N)(e)&&l.push(s.get(v)));break;case"delete":(0,r.kJ)(e)||(l.push(s.get(b)),(0,r._N)(e)&&l.push(s.get(v)));break;case"set":(0,r._N)(e)&&l.push(s.get(b))}if(1===l.length)l[0]&&P(l[0]);else{const e=[];for(const t of l)t&&e.push(...t);P(u(e))}}function P(e,t){for(const t of(0,r.kJ)(e)?e:[...e])(t!==f||t.allowRecurse)&&(t.scheduler?t.scheduler():t.run())}const D=(0,r.fY)("__proto__,__v_isRef,__isVue"),I=new Set(Object.getOwnPropertyNames(Symbol).map((e=>Symbol[e])).filter(r.yk)),R=$(),L=$(!1,!0),M=$(!0),F=$(!0,!0),N=j();function j(){const e={};return["includes","indexOf","lastIndexOf"].forEach((t=>{e[t]=function(...e){const n=Te(this);for(let e=0,t=this.length;e{e[t]=function(...e){C();const n=Te(this)[t].apply(this,e);return S(),n}})),e}function $(e=!1,t=!1){return function(n,o,a){if("__v_isReactive"===o)return!e;if("__v_isReadonly"===o)return e;if("__v_isShallow"===o)return t;if("__v_raw"===o&&a===(e?t?ve:be:t?ge:me).get(n))return n;const i=(0,r.kJ)(n);if(!e&&i&&(0,r.RI)(N,o))return Reflect.get(N,o,a);const s=Reflect.get(n,o,a);return((0,r.yk)(o)?I.has(o):D(o))?s:(e||E(n,0,o),t?s:Le(s)?i&&(0,r.S0)(o)?s:s.value:(0,r.Kn)(s)?e?ke(s):ye(s):s)}}const B=H(),q=H(!0);function H(e=!1){return function(t,n,o,a){let i=t[n];if(Ce(i)&&Le(i)&&!Le(o))return!1;if(!e&&!Ce(o)&&(Se(o)||(o=Te(o),i=Te(i)),!(0,r.kJ)(t)&&Le(i)&&!Le(o)))return i.value=o,!0;const s=(0,r.kJ)(t)&&(0,r.S0)(n)?Number(n)!0,deleteProperty:(e,t)=>!0},z=(0,r.l7)({},U,{get:L,set:q}),W=(0,r.l7)({},V,{get:F}),G=e=>e,J=e=>Reflect.getPrototypeOf(e);function Y(e,t,n=!1,r=!1){const o=Te(e=e.__v_raw),a=Te(t);t!==a&&!n&&E(o,0,t),!n&&E(o,0,a);const{has:i}=J(o),s=r?G:n?De:Pe;return i.call(o,t)?s(e.get(t)):i.call(o,a)?s(e.get(a)):void(e!==o&&e.get(t))}function X(e,t=!1){const n=this.__v_raw,r=Te(n),o=Te(e);return e!==o&&!t&&E(r,0,e),!t&&E(r,0,o),e===o?n.has(e):n.has(e)||n.has(o)}function Z(e,t=!1){return e=e.__v_raw,!t&&E(Te(e),0,b),Reflect.get(e,"size",e)}function K(e){e=Te(e);const t=Te(this);return J(t).has.call(t,e)||(t.add(e),O(t,"add",e,e)),this}function Q(e,t){t=Te(t);const n=Te(this),{has:o,get:a}=J(n);let i=o.call(n,e);i||(e=Te(e),i=o.call(n,e));const s=a.call(n,e);return n.set(e,t),i?(0,r.aU)(t,s)&&O(n,"set",e,t):O(n,"add",e,t),this}function ee(e){const t=Te(this),{has:n,get:r}=J(t);let o=n.call(t,e);o||(e=Te(e),o=n.call(t,e)),r&&r.call(t,e);const a=t.delete(e);return o&&O(t,"delete",e,void 0),a}function te(){const e=Te(this),t=0!==e.size,n=e.clear();return t&&O(e,"clear",void 0,void 0),n}function ne(e,t){return function(n,r){const o=this,a=o.__v_raw,i=Te(a),s=t?G:e?De:Pe;return!e&&E(i,0,b),a.forEach(((e,t)=>n.call(r,s(e),s(t),o)))}}function re(e,t,n){return function(...o){const a=this.__v_raw,i=Te(a),s=(0,r._N)(i),l="entries"===e||e===Symbol.iterator&&s,c="keys"===e&&s,u=a[e](...o),d=n?G:t?De:Pe;return!t&&E(i,0,c?v:b),{next(){const{value:e,done:t}=u.next();return t?{value:e,done:t}:{value:l?[d(e[0]),d(e[1])]:d(e),done:t}},[Symbol.iterator](){return this}}}}function oe(e){return function(...t){return"delete"!==e&&this}}function ae(){const e={get(e){return Y(this,e)},get size(){return Z(this)},has:X,add:K,set:Q,delete:ee,clear:te,forEach:ne(!1,!1)},t={get(e){return Y(this,e,!1,!0)},get size(){return Z(this)},has:X,add:K,set:Q,delete:ee,clear:te,forEach:ne(!1,!0)},n={get(e){return Y(this,e,!0)},get size(){return Z(this,!0)},has(e){return X.call(this,e,!0)},add:oe("add"),set:oe("set"),delete:oe("delete"),clear:oe("clear"),forEach:ne(!0,!1)},r={get(e){return Y(this,e,!0,!0)},get size(){return Z(this,!0)},has(e){return X.call(this,e,!0)},add:oe("add"),set:oe("set"),delete:oe("delete"),clear:oe("clear"),forEach:ne(!0,!0)};return["keys","values","entries",Symbol.iterator].forEach((o=>{e[o]=re(o,!1,!1),n[o]=re(o,!0,!1),t[o]=re(o,!1,!0),r[o]=re(o,!0,!0)})),[e,n,t,r]}const[ie,se,le,ce]=ae();function ue(e,t){const n=t?e?ce:le:e?se:ie;return(t,o,a)=>"__v_isReactive"===o?!e:"__v_isReadonly"===o?e:"__v_raw"===o?t:Reflect.get((0,r.RI)(n,o)&&o in t?n:t,o,a)}const de={get:ue(!1,!1)},pe={get:ue(!1,!0)},he={get:ue(!0,!1)},fe={get:ue(!0,!0)},me=new WeakMap,ge=new WeakMap,be=new WeakMap,ve=new WeakMap;function ye(e){return Ce(e)?e:xe(e,!1,U,de,me)}function _e(e){return xe(e,!1,z,pe,ge)}function ke(e){return xe(e,!0,V,he,be)}function we(e){return xe(e,!0,W,fe,ve)}function xe(e,t,n,o,a){if(!(0,r.Kn)(e))return e;if(e.__v_raw&&(!t||!e.__v_isReactive))return e;const i=a.get(e);if(i)return i;const s=(l=e).__v_skip||!Object.isExtensible(l)?0:function(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}((0,r.W7)(l));var l;if(0===s)return e;const c=new Proxy(e,2===s?o:n);return a.set(e,c),c}function Ae(e){return Ce(e)?Ae(e.__v_raw):!(!e||!e.__v_isReactive)}function Ce(e){return!(!e||!e.__v_isReadonly)}function Se(e){return!(!e||!e.__v_isShallow)}function Ee(e){return Ae(e)||Ce(e)}function Te(e){const t=e&&e.__v_raw;return t?Te(t):e}function Oe(e){return(0,r.Nj)(e,"__v_skip",!0),e}const Pe=e=>(0,r.Kn)(e)?ye(e):e,De=e=>(0,r.Kn)(e)?ke(e):e;function Ie(e){x&&f&&T((e=Te(e)).dep||(e.dep=u()))}function Re(e,t){(e=Te(e)).dep&&P(e.dep)}function Le(e){return!(!e||!0!==e.__v_isRef)}function Me(e){return Ne(e,!1)}function Fe(e){return Ne(e,!0)}function Ne(e,t){return Le(e)?e:new je(e,t)}class je{constructor(e,t){this.__v_isShallow=t,this.dep=void 0,this.__v_isRef=!0,this._rawValue=t?e:Te(e),this._value=t?e:Pe(e)}get value(){return Ie(this),this._value}set value(e){e=this.__v_isShallow?e:Te(e),(0,r.aU)(e,this._rawValue)&&(this._rawValue=e,this._value=this.__v_isShallow?e:Pe(e),Re(this))}}function $e(e){Re(e)}function Be(e){return Le(e)?e.value:e}const qe={get:(e,t,n)=>Be(Reflect.get(e,t,n)),set:(e,t,n,r)=>{const o=e[t];return Le(o)&&!Le(n)?(o.value=n,!0):Reflect.set(e,t,n,r)}};function He(e){return Ae(e)?e:new Proxy(e,qe)}class Ue{constructor(e){this.dep=void 0,this.__v_isRef=!0;const{get:t,set:n}=e((()=>Ie(this)),(()=>Re(this)));this._get=t,this._set=n}get value(){return this._get()}set value(e){this._set(e)}}function Ve(e){return new Ue(e)}function ze(e){const t=(0,r.kJ)(e)?new Array(e.length):{};for(const n in e)t[n]=Ge(e,n);return t}class We{constructor(e,t,n){this._object=e,this._key=t,this._defaultValue=n,this.__v_isRef=!0}get value(){const e=this._object[this._key];return void 0===e?this._defaultValue:e}set value(e){this._object[this._key]=e}}function Ge(e,t,n){const r=e[t];return Le(r)?r:new We(e,t,n)}class Je{constructor(e,t,n,r){this._setter=t,this.dep=void 0,this.__v_isRef=!0,this._dirty=!0,this.effect=new y(e,(()=>{this._dirty||(this._dirty=!0,Re(this))})),this.effect.computed=this,this.effect.active=this._cacheable=!r,this.__v_isReadonly=n}get value(){const e=Te(this);return Ie(e),!e._dirty&&e._cacheable||(e._dirty=!1,e._value=e.effect.run()),e._value}set value(e){this._setter(e)}}function Ye(e,t,n=!1){let o,a;const i=(0,r.mf)(e);return i?(o=e,a=r.dG):(o=e.get,a=e.set),new Je(o,a,i||!a,n)}Promise.resolve()},6252:(e,t,n)=>{"use strict";n.d(t,{$d:()=>u,$y:()=>r.$y,Ah:()=>Xe,B:()=>r.B,BK:()=>r.BK,Bj:()=>r.Bj,Bz:()=>lr,C3:()=>fn,C_:()=>o.C_,Cn:()=>X,EB:()=>r.EB,Eo:()=>Mt,F4:()=>_n,FN:()=>Un,Fl:()=>ir,G:()=>Ar,HX:()=>Z,HY:()=>Zt,Ho:()=>kn,IU:()=>r.IU,JJ:()=>ue,Jd:()=>Ye,KU:()=>c,Ko:()=>Pn,LL:()=>Gt,MW:()=>sr,MX:()=>kr,Mr:()=>_r,Nv:()=>Dn,OT:()=>r.OT,Ob:()=>Me,P$:()=>xe,PG:()=>r.PG,Q2:()=>Jt,Q6:()=>Oe,RC:()=>Ie,Rh:()=>he,Rr:()=>dr,S3:()=>d,SU:()=>r.SU,U2:()=>Ce,Uc:()=>vr,Uk:()=>wn,Um:()=>r.Um,Us:()=>Lt,Vh:()=>r.Vh,WI:()=>In,WL:()=>r.WL,WY:()=>cr,Wm:()=>yn,X3:()=>r.X3,XI:()=>r.XI,Xl:()=>r.Xl,Xn:()=>Ge,Y1:()=>Kn,Y3:()=>C,Y8:()=>ke,YP:()=>ge,YS:()=>r.YS,Yq:()=>Ke,ZK:()=>i,ZM:()=>r.ZM,Zq:()=>yr,_:()=>vn,_A:()=>o._A,aZ:()=>Pe,b9:()=>ur,bT:()=>Qe,bv:()=>We,cE:()=>r.cE,d1:()=>et,dD:()=>Y,dG:()=>Tn,dl:()=>Ne,dq:()=>r.dq,ec:()=>j,eq:()=>Cr,f3:()=>de,h:()=>br,hR:()=>o.hR,i8:()=>xr,iD:()=>un,iH:()=>r.iH,ic:()=>Je,j4:()=>dn,j5:()=>o.j5,kC:()=>o.kC,kq:()=>An,l1:()=>pr,lA:()=>pn,lR:()=>Ut,m0:()=>pe,mW:()=>L,mv:()=>gr,mx:()=>Ln,n4:()=>oe,nK:()=>Te,nQ:()=>wr,nZ:()=>r.nZ,oR:()=>r.oR,of:()=>Qn,p1:()=>mr,qG:()=>en,qZ:()=>ln,qb:()=>O,qj:()=>r.qj,qq:()=>r.qq,ry:()=>Sr,sT:()=>r.sT,se:()=>je,sv:()=>Qt,uE:()=>xn,u_:()=>fr,up:()=>zt,vl:()=>Ze,vs:()=>o.vs,w5:()=>K,wF:()=>ze,wg:()=>rn,wy:()=>xt,xv:()=>Kt,yT:()=>r.yT,yX:()=>fe,zw:()=>o.zw});var r=n(2262),o=n(3577);const a=[];function i(e,...t){(0,r.Jd)();const n=a.length?a[a.length-1].component:null,o=n&&n.appContext.config.warnHandler,i=function(){let e=a[a.length-1];if(!e)return[];const t=[];for(;e;){const n=t[0];n&&n.vnode===e?n.recurseCount++:t.push({vnode:e,recurseCount:0});const r=e.component&&e.component.parent;e=r&&r.vnode}return t}();if(o)c(o,n,11,[e+t.join(""),n&&n.proxy,i.map((({vnode:e})=>`at <${ar(n,e.type)}>`)).join("\n"),i]);else{const n=[`[Vue warn]: ${e}`,...t];i.length&&n.push("\n",...function(e){const t=[];return e.forEach(((e,n)=>{t.push(...0===n?[]:["\n"],...function({vnode:e,recurseCount:t}){const n=t>0?`... (${t} recursive calls)`:"",r=!!e.component&&null==e.component.parent,o=` at <${ar(e.component,e.type,r)}`,a=">"+n;return e.props?[o,...s(e.props),a]:[o+a]}(e))})),t}(i)),console.warn(...n)}(0,r.lk)()}function s(e){const t=[],n=Object.keys(e);return n.slice(0,3).forEach((n=>{t.push(...l(n,e[n]))})),n.length>3&&t.push(" ..."),t}function l(e,t,n){return(0,o.HD)(t)?(t=JSON.stringify(t),n?t:[`${e}=${t}`]):"number"==typeof t||"boolean"==typeof t||null==t?n?t:[`${e}=${t}`]:(0,r.dq)(t)?(t=l(e,(0,r.IU)(t.value),!0),n?t:[`${e}=Ref<`,t,">"]):(0,o.mf)(t)?[`${e}=fn${t.name?`<${t.name}>`:""}`]:(t=(0,r.IU)(t),n?t:[`${e}=`,t])}function c(e,t,n,r){let o;try{o=r?e(...r):e()}catch(e){d(e,t,n)}return o}function u(e,t,n,r){if((0,o.mf)(e)){const a=c(e,t,n,r);return a&&(0,o.tI)(a)&&a.catch((e=>{d(e,t,n)})),a}const a=[];for(let o=0;o>>1;I(f[r])I(e)-I(t))),k=0;k<_.length;k++)_[k]();_=null,k=0}}const I=e=>null==e.id?1/0:e.id;function R(e){h=!1,p=!0,P(e),f.sort(((e,t)=>I(e)-I(t))),o.dG;try{for(m=0;mL.emit(e,...t))),M=[]):"undefined"!=typeof window&&window.HTMLElement&&!(null===(r=null===(n=window.navigator)||void 0===n?void 0:n.userAgent)||void 0===r?void 0:r.includes("jsdom"))?((t.__VUE_DEVTOOLS_HOOK_REPLAY__=t.__VUE_DEVTOOLS_HOOK_REPLAY__||[]).push((e=>{j(e,t)})),setTimeout((()=>{L||(t.__VUE_DEVTOOLS_HOOK_REPLAY__=null,F=!0,M=[])}),3e3)):(F=!0,M=[])}const $=H("component:added"),B=H("component:updated"),q=H("component:removed");function H(e){return t=>{N(e,t.appContext.app,t.uid,t.parent?t.parent.uid:void 0,t)}}function U(e,t,...n){const r=e.vnode.props||o.kT;let a=n;const i=t.startsWith("update:"),s=i&&t.slice(7);if(s&&s in r){const e=`${"modelValue"===s?"model":s}Modifiers`,{number:t,trim:i}=r[e]||o.kT;i?a=n.map((e=>e.trim())):t&&(a=n.map(o.He))}let l;__VUE_PROD_DEVTOOLS__&&function(e,t,n){N("component:emit",e.appContext.app,e,t,n)}(e,t,a);let c=r[l=(0,o.hR)(t)]||r[l=(0,o.hR)((0,o._A)(t))];!c&&i&&(c=r[l=(0,o.hR)((0,o.rs)(t))]),c&&u(c,e,6,a);const d=r[l+"Once"];if(d){if(e.emitted){if(e.emitted[l])return}else e.emitted={};e.emitted[l]=!0,u(d,e,6,a)}}function V(e,t,n=!1){const r=t.emitsCache,a=r.get(e);if(void 0!==a)return a;const i=e.emits;let s={},l=!1;if(__VUE_OPTIONS_API__&&!(0,o.mf)(e)){const r=e=>{const n=V(e,t,!0);n&&(l=!0,(0,o.l7)(s,n))};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}return i||l?((0,o.kJ)(i)?i.forEach((e=>s[e]=null)):(0,o.l7)(s,i),r.set(e,s),s):(r.set(e,null),null)}function z(e,t){return!(!e||!(0,o.F7)(t))&&(t=t.slice(2).replace(/Once$/,""),(0,o.RI)(e,t[0].toLowerCase()+t.slice(1))||(0,o.RI)(e,(0,o.rs)(t))||(0,o.RI)(e,t))}let W=null,G=null;function J(e){const t=W;return W=e,G=e&&e.type.__scopeId||null,t}function Y(e){G=e}function X(){G=null}const Z=e=>K;function K(e,t=W,n){if(!t)return e;if(e._n)return e;const r=(...n)=>{r._d&&ln(-1);const o=J(t),a=e(...n);return J(o),r._d&&ln(1),__VUE_PROD_DEVTOOLS__&&B(t),a};return r._n=!0,r._c=!0,r._d=!0,r}function Q(e){const{type:t,vnode:n,proxy:r,withProxy:a,props:i,propsOptions:[s],slots:l,attrs:c,emit:u,render:p,renderCache:h,data:f,setupState:m,ctx:g,inheritAttrs:b}=e;let v,y;const _=J(e);try{if(4&n.shapeFlag){const e=a||r;v=Cn(p.call(e,e,h,i,m,f,g)),y=c}else{const e=t;v=Cn(e.length>1?e(i,{attrs:c,slots:l,emit:u}):e(i,null)),y=t.props?c:ee(c)}}catch(t){tn.length=0,d(t,e,1),v=yn(Qt)}let k=v;if(y&&!1!==b){const e=Object.keys(y),{shapeFlag:t}=k;e.length&&7&t&&(s&&e.some(o.tR)&&(y=te(y,s)),k=kn(k,y))}return n.dirs&&(k.dirs=k.dirs?k.dirs.concat(n.dirs):n.dirs),n.transition&&(k.transition=n.transition),v=k,J(_),v}const ee=e=>{let t;for(const n in e)("class"===n||"style"===n||(0,o.F7)(n))&&((t||(t={}))[n]=e[n]);return t},te=(e,t)=>{const n={};for(const r in e)(0,o.tR)(r)&&r.slice(9)in t||(n[r]=e[r]);return n};function ne(e,t,n){const r=Object.keys(t);if(r.length!==Object.keys(e).length)return!0;for(let o=0;o0?(ae(e,"onPending"),ae(e,"onFallback"),c(null,e.ssFallback,t,n,r,null,a,i),ce(p,e.ssFallback)):p.resolve()}(t,n,r,o,a,i,s,l,c):function(e,t,n,r,o,a,i,s,{p:l,um:c,o:{createElement:u}}){const d=t.suspense=e.suspense;d.vnode=t,t.el=e.el;const p=t.ssContent,h=t.ssFallback,{activeBranch:f,pendingBranch:m,isInFallback:g,isHydrating:b}=d;if(m)d.pendingBranch=p,hn(p,m)?(l(m,p,d.hiddenContainer,null,o,d,a,i,s),d.deps<=0?d.resolve():g&&(l(f,h,n,r,o,null,a,i,s),ce(d,h))):(d.pendingId++,b?(d.isHydrating=!1,d.activeBranch=m):c(m,o,d),d.deps=0,d.effects.length=0,d.hiddenContainer=u("div"),g?(l(null,p,d.hiddenContainer,null,o,d,a,i,s),d.deps<=0?d.resolve():(l(f,h,n,r,o,null,a,i,s),ce(d,h))):f&&hn(p,f)?(l(f,p,n,r,o,d,a,i,s),d.resolve(!0)):(l(null,p,d.hiddenContainer,null,o,d,a,i,s),d.deps<=0&&d.resolve()));else if(f&&hn(p,f))l(f,p,n,r,o,d,a,i,s),ce(d,p);else if(ae(t,"onPending"),d.pendingBranch=p,d.pendingId++,l(null,p,d.hiddenContainer,null,o,d,a,i,s),d.deps<=0)d.resolve();else{const{timeout:e,pendingId:t}=d;e>0?setTimeout((()=>{d.pendingId===t&&d.fallback(h)}),e):0===e&&d.fallback(h)}}(e,t,n,r,o,i,s,l,c)},hydrate:function(e,t,n,r,o,a,i,s,l){const c=t.suspense=ie(t,r,n,e.parentNode,document.createElement("div"),null,o,a,i,s,!0),u=l(e,c.pendingBranch=t.ssContent,n,c,a,i);return 0===c.deps&&c.resolve(),u},create:ie,normalize:function(e){const{shapeFlag:t,children:n}=e,r=32&t;e.ssContent=se(r?n.default:n),e.ssFallback=r?se(n.fallback):yn(Qt)}};function ae(e,t){const n=e.props&&e.props[t];(0,o.mf)(n)&&n()}function ie(e,t,n,r,a,i,s,l,c,u,p=!1){const{p:h,m:f,um:m,n:g,o:{parentNode:b,remove:v}}=u,y=(0,o.He)(e.props&&e.props.timeout),_={vnode:e,parent:t,parentComponent:n,isSVG:s,container:r,hiddenContainer:a,anchor:i,deps:0,pendingId:0,timeout:"number"==typeof y?y:-1,activeBranch:null,pendingBranch:null,isInFallback:!0,isHydrating:p,isUnmounted:!1,effects:[],resolve(e=!1){const{vnode:t,activeBranch:n,pendingBranch:r,pendingId:o,effects:a,parentComponent:i,container:s}=_;if(_.isHydrating)_.isHydrating=!1;else if(!e){const e=n&&r.transition&&"out-in"===r.transition.mode;e&&(n.transition.afterLeave=()=>{o===_.pendingId&&f(r,s,t,0)});let{anchor:t}=_;n&&(t=g(n),m(n,i,_,!0)),e||f(r,s,t,0)}ce(_,r),_.pendingBranch=null,_.isInFallback=!1;let l=_.parent,c=!1;for(;l;){if(l.pendingBranch){l.effects.push(...a),c=!0;break}l=l.parent}c||O(a),_.effects=[],ae(t,"onResolve")},fallback(e){if(!_.pendingBranch)return;const{vnode:t,activeBranch:n,parentComponent:r,container:o,isSVG:a}=_;ae(t,"onFallback");const i=g(n),s=()=>{_.isInFallback&&(h(null,e,o,i,r,null,a,l,c),ce(_,e))},u=e.transition&&"out-in"===e.transition.mode;u&&(n.transition.afterLeave=s),_.isInFallback=!0,m(n,r,null,!0),u||s()},move(e,t,n){_.activeBranch&&f(_.activeBranch,e,t,n),_.container=e},next:()=>_.activeBranch&&g(_.activeBranch),registerDep(e,t){const n=!!_.pendingBranch;n&&_.deps++;const r=e.vnode.el;e.asyncDep.catch((t=>{d(t,e,0)})).then((o=>{if(e.isUnmounted||_.isUnmounted||_.pendingId!==e.suspenseId)return;e.asyncResolved=!0;const{vnode:a}=e;Zn(e,o,!1),r&&(a.el=r);const i=!r&&e.subTree.el;t(e,a,b(r||e.subTree.el),r?null:g(e.subTree),_,s,c),i&&v(i),re(e,a.el),n&&0==--_.deps&&_.resolve()}))},unmount(e,t){_.isUnmounted=!0,_.activeBranch&&m(_.activeBranch,n,e,t),_.pendingBranch&&m(_.pendingBranch,n,e,t)}};return _}function se(e){let t;if((0,o.mf)(e)){const n=sn&&e._c;n&&(e._d=!1,rn()),e=e(),n&&(e._d=!0,t=nn,on())}if((0,o.kJ)(e)){const t=function(e){let t;for(let n=0;nt!==e))),e}function le(e,t){t&&t.pendingBranch?(0,o.kJ)(e)?t.effects.push(...e):t.effects.push(e):O(e)}function ce(e,t){e.activeBranch=t;const{vnode:n,parentComponent:r}=e,o=n.el=t.el;r&&r.subTree===n&&(r.vnode.el=o,re(r,o))}function ue(e,t){if(Hn){let n=Hn.provides;const r=Hn.parent&&Hn.parent.provides;r===n&&(n=Hn.provides=Object.create(r)),n[e]=t}}function de(e,t,n=!1){const r=Hn||W;if(r){const a=null==r.parent?r.vnode.appContext&&r.vnode.appContext.provides:r.parent.provides;if(a&&e in a)return a[e];if(arguments.length>1)return n&&(0,o.mf)(t)?t.call(r.proxy):t}}function pe(e,t){return be(e,null,t)}function he(e,t){return be(e,null,{flush:"post"})}function fe(e,t){return be(e,null,{flush:"sync"})}const me={};function ge(e,t,n){return be(e,t,n)}function be(e,t,{immediate:n,deep:a,flush:i,onTrack:s,onTrigger:l}=o.kT){const d=Hn;let p,h,f=!1,m=!1;if((0,r.dq)(e)?(p=()=>e.value,f=(0,r.yT)(e)):(0,r.PG)(e)?(p=()=>e,a=!0):(0,o.kJ)(e)?(m=!0,f=e.some(r.PG),p=()=>e.map((e=>(0,r.dq)(e)?e.value:(0,r.PG)(e)?_e(e):(0,o.mf)(e)?c(e,d,2):void 0))):p=(0,o.mf)(e)?t?()=>c(e,d,2):()=>{if(!d||!d.isUnmounted)return h&&h(),u(e,d,3,[y])}:o.dG,t&&a){const e=p;p=()=>_e(e())}let y=e=>{h=x.onStop=()=>{c(e,d,4)}};if(Yn)return y=o.dG,t?n&&u(t,d,3,[p(),m?[]:void 0,y]):p(),o.dG;let _=m?[]:me;const k=()=>{if(x.active)if(t){const e=x.run();(a||f||(m?e.some(((e,t)=>(0,o.aU)(e,_[t]))):(0,o.aU)(e,_)))&&(h&&h(),u(t,d,3,[e,_===me?void 0:_,y]),_=e)}else x.run()};let w;k.allowRecurse=!!t,w="sync"===i?k:"post"===i?()=>Rt(k,d&&d.suspense):()=>{!d||d.isMounted?function(e){T(e,b,g,v)}(k):k()};const x=new r.qq(p,w);return t?n?k():_=x.run():"post"===i?Rt(x.run.bind(x),d&&d.suspense):x.run(),()=>{x.stop(),d&&d.scope&&(0,o.Od)(d.scope.effects,x)}}function ve(e,t,n){const r=this.proxy,a=(0,o.HD)(e)?e.includes(".")?ye(r,e):()=>r[e]:e.bind(r,r);let i;(0,o.mf)(t)?i=t:(i=t.handler,n=t);const s=Hn;Vn(this);const l=be(a,i.bind(r),n);return s?Vn(s):zn(),l}function ye(e,t){const n=t.split(".");return()=>{let t=e;for(let e=0;e{_e(e,t)}));else if((0,o.PO)(e))for(const n in e)_e(e[n],t);return e}function ke(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return We((()=>{e.isMounted=!0})),Ye((()=>{e.isUnmounting=!0})),e}const we=[Function,Array],xe={name:"BaseTransition",props:{mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:we,onEnter:we,onAfterEnter:we,onEnterCancelled:we,onBeforeLeave:we,onLeave:we,onAfterLeave:we,onLeaveCancelled:we,onBeforeAppear:we,onAppear:we,onAfterAppear:we,onAppearCancelled:we},setup(e,{slots:t}){const n=Un(),o=ke();let a;return()=>{const i=t.default&&Oe(t.default(),!0);if(!i||!i.length)return;const s=(0,r.IU)(e),{mode:l}=s,c=i[0];if(o.isLeaving)return Se(c);const u=Ee(c);if(!u)return Se(c);const d=Ce(u,s,o,n);Te(u,d);const p=n.subTree,h=p&&Ee(p);let f=!1;const{getTransitionKey:m}=u.type;if(m){const e=m();void 0===a?a=e:e!==a&&(a=e,f=!0)}if(h&&h.type!==Qt&&(!hn(u,h)||f)){const e=Ce(h,s,o,n);if(Te(h,e),"out-in"===l)return o.isLeaving=!0,e.afterLeave=()=>{o.isLeaving=!1,n.update()},Se(c);"in-out"===l&&u.type!==Qt&&(e.delayLeave=(e,t,n)=>{Ae(o,h)[String(h.key)]=h,e._leaveCb=()=>{t(),e._leaveCb=void 0,delete d.delayedLeave},d.delayedLeave=n})}return c}}};function Ae(e,t){const{leavingVNodes:n}=e;let r=n.get(t.type);return r||(r=Object.create(null),n.set(t.type,r)),r}function Ce(e,t,n,r){const{appear:o,mode:a,persisted:i=!1,onBeforeEnter:s,onEnter:l,onAfterEnter:c,onEnterCancelled:d,onBeforeLeave:p,onLeave:h,onAfterLeave:f,onLeaveCancelled:m,onBeforeAppear:g,onAppear:b,onAfterAppear:v,onAppearCancelled:y}=t,_=String(e.key),k=Ae(n,e),w=(e,t)=>{e&&u(e,r,9,t)},x={mode:a,persisted:i,beforeEnter(t){let r=s;if(!n.isMounted){if(!o)return;r=g||s}t._leaveCb&&t._leaveCb(!0);const a=k[_];a&&hn(e,a)&&a.el._leaveCb&&a.el._leaveCb(),w(r,[t])},enter(e){let t=l,r=c,a=d;if(!n.isMounted){if(!o)return;t=b||l,r=v||c,a=y||d}let i=!1;const s=e._enterCb=t=>{i||(i=!0,w(t?a:r,[e]),x.delayedLeave&&x.delayedLeave(),e._enterCb=void 0)};t?(t(e,s),t.length<=1&&s()):s()},leave(t,r){const o=String(e.key);if(t._enterCb&&t._enterCb(!0),n.isUnmounting)return r();w(p,[t]);let a=!1;const i=t._leaveCb=n=>{a||(a=!0,r(),w(n?m:f,[t]),t._leaveCb=void 0,k[o]===e&&delete k[o])};k[o]=e,h?(h(t,i),h.length<=1&&i()):i()},clone:e=>Ce(e,t,n,r)};return x}function Se(e){if(Le(e))return(e=kn(e)).children=null,e}function Ee(e){return Le(e)?e.children?e.children[0]:void 0:e}function Te(e,t){6&e.shapeFlag&&e.component?Te(e.component.subTree,t):128&e.shapeFlag?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Oe(e,t=!1){let n=[],r=0;for(let o=0;o1)for(let e=0;e!!e.type.__asyncLoader;function Ie(e){(0,o.mf)(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:a,delay:i=200,timeout:s,suspensible:l=!0,onError:c}=e;let u,p=null,h=0;const f=()=>{let e;return p||(e=p=t().catch((e=>{if(e=e instanceof Error?e:new Error(String(e)),c)return new Promise(((t,n)=>{c(e,(()=>t((h++,p=null,f()))),(()=>n(e)),h+1)}));throw e})).then((t=>e!==p&&p?p:(t&&(t.__esModule||"Module"===t[Symbol.toStringTag])&&(t=t.default),u=t,t))))};return Pe({name:"AsyncComponentWrapper",__asyncLoader:f,get __asyncResolved(){return u},setup(){const e=Hn;if(u)return()=>Re(u,e);const t=t=>{p=null,d(t,e,13,!a)};if(l&&e.suspense||Yn)return f().then((t=>()=>Re(t,e))).catch((e=>(t(e),()=>a?yn(a,{error:e}):null)));const o=(0,r.iH)(!1),c=(0,r.iH)(),h=(0,r.iH)(!!i);return i&&setTimeout((()=>{h.value=!1}),i),null!=s&&setTimeout((()=>{if(!o.value&&!c.value){const e=new Error(`Async component timed out after ${s}ms.`);t(e),c.value=e}}),s),f().then((()=>{o.value=!0,e.parent&&Le(e.parent.vnode)&&S(e.parent.update)})).catch((e=>{t(e),c.value=e})),()=>o.value&&u?Re(u,e):c.value&&a?yn(a,{error:c.value}):n&&!h.value?yn(n):void 0}})}function Re(e,{vnode:{ref:t,props:n,children:r}}){const o=yn(e,n,r);return o.ref=t,o}const Le=e=>e.type.__isKeepAlive,Me={name:"KeepAlive",__isKeepAlive:!0,props:{include:[String,RegExp,Array],exclude:[String,RegExp,Array],max:[String,Number]},setup(e,{slots:t}){const n=Un(),r=n.ctx;if(!r.renderer)return t.default;const a=new Map,i=new Set;let s=null;__VUE_PROD_DEVTOOLS__&&(n.__v_cache=a);const l=n.suspense,{renderer:{p:c,m:u,um:d,o:{createElement:p}}}=r,h=p("div");function f(e){qe(e),d(e,n,l,!0)}function m(e){a.forEach(((t,n)=>{const r=or(t.type);!r||e&&e(r)||g(n)}))}function g(e){const t=a.get(e);s&&t.type===s.type?s&&qe(s):f(t),a.delete(e),i.delete(e)}r.activate=(e,t,n,r,a)=>{const i=e.component;u(e,t,n,0,l),c(i.vnode,e,t,n,i,l,r,e.slotScopeIds,a),Rt((()=>{i.isDeactivated=!1,i.a&&(0,o.ir)(i.a);const t=e.props&&e.props.onVnodeMounted;t&&On(t,i.parent,e)}),l),__VUE_PROD_DEVTOOLS__&&$(i)},r.deactivate=e=>{const t=e.component;u(e,h,null,1,l),Rt((()=>{t.da&&(0,o.ir)(t.da);const n=e.props&&e.props.onVnodeUnmounted;n&&On(n,t.parent,e),t.isDeactivated=!0}),l),__VUE_PROD_DEVTOOLS__&&$(t)},ge((()=>[e.include,e.exclude]),(([e,t])=>{e&&m((t=>Fe(e,t))),t&&m((e=>!Fe(t,e)))}),{flush:"post",deep:!0});let b=null;const v=()=>{null!=b&&a.set(b,He(n.subTree))};return We(v),Je(v),Ye((()=>{a.forEach((e=>{const{subTree:t,suspense:r}=n,o=He(t);if(e.type!==o.type)f(e);else{qe(o);const e=o.component.da;e&&Rt(e,r)}}))})),()=>{if(b=null,!t.default)return null;const n=t.default(),r=n[0];if(n.length>1)return s=null,n;if(!pn(r)||!(4&r.shapeFlag||128&r.shapeFlag))return s=null,r;let o=He(r);const l=o.type,c=or(De(o)?o.type.__asyncResolved||{}:l),{include:u,exclude:d,max:p}=e;if(u&&(!c||!Fe(u,c))||d&&c&&Fe(d,c))return s=o,r;const h=null==o.key?l:o.key,f=a.get(h);return o.el&&(o=kn(o),128&r.shapeFlag&&(r.ssContent=o)),b=h,f?(o.el=f.el,o.component=f.component,o.transition&&Te(o,o.transition),o.shapeFlag|=512,i.delete(h),i.add(h)):(i.add(h),p&&i.size>parseInt(p,10)&&g(i.values().next().value)),o.shapeFlag|=256,s=o,r}}};function Fe(e,t){return(0,o.kJ)(e)?e.some((e=>Fe(e,t))):(0,o.HD)(e)?e.split(",").includes(t):!!e.test&&e.test(t)}function Ne(e,t){$e(e,"a",t)}function je(e,t){$e(e,"da",t)}function $e(e,t,n=Hn){const r=e.__wdc||(e.__wdc=()=>{let t=n;for(;t;){if(t.isDeactivated)return;t=t.parent}return e()});if(Ue(t,r,n),n){let e=n.parent;for(;e&&e.parent;)Le(e.parent.vnode)&&Be(r,t,n,e),e=e.parent}}function Be(e,t,n,r){const a=Ue(t,e,r,!0);Xe((()=>{(0,o.Od)(r[t],a)}),n)}function qe(e){let t=e.shapeFlag;256&t&&(t-=256),512&t&&(t-=512),e.shapeFlag=t}function He(e){return 128&e.shapeFlag?e.ssContent:e}function Ue(e,t,n=Hn,o=!1){if(n){const a=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{if(n.isUnmounted)return;(0,r.Jd)(),Vn(n);const a=u(t,n,e,o);return zn(),(0,r.lk)(),a});return o?a.unshift(i):a.push(i),i}}const Ve=e=>(t,n=Hn)=>(!Yn||"sp"===e)&&Ue(e,t,n),ze=Ve("bm"),We=Ve("m"),Ge=Ve("bu"),Je=Ve("u"),Ye=Ve("bum"),Xe=Ve("um"),Ze=Ve("sp"),Ke=Ve("rtg"),Qe=Ve("rtc");function et(e,t=Hn){Ue("ec",e,t)}let tt=!0;function nt(e,t,n){u((0,o.kJ)(e)?e.map((e=>e.bind(t.proxy))):e.bind(t.proxy),t,n)}function rt(e,t,n,r){const a=r.includes(".")?ye(n,r):()=>n[r];if((0,o.HD)(e)){const n=t[e];(0,o.mf)(n)&&ge(a,n)}else if((0,o.mf)(e))ge(a,e.bind(n));else if((0,o.Kn)(e))if((0,o.kJ)(e))e.forEach((e=>rt(e,t,n,r)));else{const r=(0,o.mf)(e.handler)?e.handler.bind(n):t[e.handler];(0,o.mf)(r)&&ge(a,r,e)}}function ot(e){const t=e.type,{mixins:n,extends:r}=t,{mixins:o,optionsCache:a,config:{optionMergeStrategies:i}}=e.appContext,s=a.get(t);let l;return s?l=s:o.length||n||r?(l={},o.length&&o.forEach((e=>at(l,e,i,!0))),at(l,t,i)):l=t,a.set(t,l),l}function at(e,t,n,r=!1){const{mixins:o,extends:a}=t;a&&at(e,a,n,!0),o&&o.forEach((t=>at(e,t,n,!0)));for(const o in t)if(r&&"expose"===o);else{const r=it[o]||n&&n[o];e[o]=r?r(e[o],t[o]):t[o]}return e}const it={data:st,props:ut,emits:ut,methods:ut,computed:ut,beforeCreate:ct,created:ct,beforeMount:ct,mounted:ct,beforeUpdate:ct,updated:ct,beforeDestroy:ct,beforeUnmount:ct,destroyed:ct,unmounted:ct,activated:ct,deactivated:ct,errorCaptured:ct,serverPrefetch:ct,components:ut,directives:ut,watch:function(e,t){if(!e)return t;if(!t)return e;const n=(0,o.l7)(Object.create(null),e);for(const r in t)n[r]=ct(e[r],t[r]);return n},provide:st,inject:function(e,t){return ut(lt(e),lt(t))}};function st(e,t){return t?e?function(){return(0,o.l7)((0,o.mf)(e)?e.call(this,this):e,(0,o.mf)(t)?t.call(this,this):t)}:t:e}function lt(e){if((0,o.kJ)(e)){const t={};for(let n=0;n{c=!0;const[n,r]=ht(e,t,!0);(0,o.l7)(s,n),r&&l.push(...r)};!n&&t.mixins.length&&t.mixins.forEach(r),e.extends&&r(e.extends),e.mixins&&e.mixins.forEach(r)}if(!i&&!c)return r.set(e,o.Z6),o.Z6;if((0,o.kJ)(i))for(let e=0;e-1,r[1]=n<0||e-1||(0,o.RI)(r,"default"))&&l.push(t)}}}const u=[s,l];return r.set(e,u),u}function ft(e){return"$"!==e[0]}function mt(e){const t=e&&e.toString().match(/^\s*function (\w+)/);return t?t[1]:null===e?"null":""}function gt(e,t){return mt(e)===mt(t)}function bt(e,t){return(0,o.kJ)(t)?t.findIndex((t=>gt(t,e))):(0,o.mf)(t)&>(t,e)?0:-1}const vt=e=>"_"===e[0]||"$stable"===e,yt=e=>(0,o.kJ)(e)?e.map(Cn):[Cn(e)],_t=(e,t,n)=>{const r=K(((...e)=>yt(t(...e))),n);return r._c=!1,r},kt=(e,t,n)=>{const r=e._ctx;for(const n in e){if(vt(n))continue;const a=e[n];if((0,o.mf)(a))t[n]=_t(0,a,r);else if(null!=a){const e=yt(a);t[n]=()=>e}}},wt=(e,t)=>{const n=yt(t);e.slots.default=()=>n};function xt(e,t){if(null===W)return e;const n=W.proxy,r=e.dirs||(e.dirs=[]);for(let e=0;e(i.has(e)||(e&&(0,o.mf)(e.install)?(i.add(e),e.install(l,...t)):(0,o.mf)(e)&&(i.add(e),e(l,...t))),l),mixin:e=>(__VUE_OPTIONS_API__&&(a.mixins.includes(e)||a.mixins.push(e)),l),component:(e,t)=>t?(a.components[e]=t,l):a.components[e],directive:(e,t)=>t?(a.directives[e]=t,l):a.directives[e],mount(o,i,c){if(!s){const u=yn(n,r);return u.appContext=a,i&&t?t(u,o):e(u,o,c),s=!0,l._container=o,o.__vue_app__=l,__VUE_PROD_DEVTOOLS__&&(l._instance=u.component,function(e,t){N("app:init",e,t,{Fragment:Zt,Text:Kt,Comment:Qt,Static:en})}(l,xr)),nr(u.component)||u.component.proxy}},unmount(){s&&(e(null,l._container),__VUE_PROD_DEVTOOLS__&&(l._instance=null,function(e){N("app:unmount",e)}(l)),delete l._container.__vue_app__)},provide:(e,t)=>(a.provides[e]=t,l)};return l}}function Tt(e,t,n,a,i=!1){if((0,o.kJ)(e))return void e.forEach(((e,r)=>Tt(e,t&&((0,o.kJ)(t)?t[r]:t),n,a,i)));if(De(a)&&!i)return;const s=4&a.shapeFlag?nr(a.component)||a.component.proxy:a.el,l=i?null:s,{i:u,r:d}=e,p=t&&t.r,h=u.refs===o.kT?u.refs={}:u.refs,f=u.setupState;if(null!=p&&p!==d&&((0,o.HD)(p)?(h[p]=null,(0,o.RI)(f,p)&&(f[p]=null)):(0,r.dq)(p)&&(p.value=null)),(0,o.mf)(d))c(d,u,12,[l,h]);else{const t=(0,o.HD)(d),a=(0,r.dq)(d);if(t||a){const a=()=>{if(e.f){const n=t?h[d]:d.value;i?(0,o.kJ)(n)&&(0,o.Od)(n,s):(0,o.kJ)(n)?n.includes(s)||n.push(s):t?h[d]=[s]:(d.value=[s],e.k&&(h[e.k]=d.value))}else t?(h[d]=l,(0,o.RI)(f,d)&&(f[d]=l)):(0,r.dq)(d)&&(d.value=l,e.k&&(h[e.k]=l))};l?(a.id=-1,Rt(a,n)):a()}}}let Ot=!1;const Pt=e=>/svg/.test(e.namespaceURI)&&"foreignObject"!==e.tagName,Dt=e=>8===e.nodeType;function It(e){const{mt:t,p:n,o:{patchProp:r,nextSibling:a,parentNode:i,remove:s,insert:l,createComment:c}}=e,u=(n,r,o,s,l,c=!1)=>{const g=Dt(n)&&"["===n.data,b=()=>f(n,r,o,s,l,g),{type:v,ref:y,shapeFlag:_}=r,k=n.nodeType;r.el=n;let w=null;switch(v){case Kt:3!==k?w=b():(n.data!==r.children&&(Ot=!0,n.data=r.children),w=a(n));break;case Qt:w=8!==k||g?b():a(n);break;case en:if(1===k){w=n;const e=!r.children.length;for(let t=0;t{l=l||!!t.dynamicChildren;const{type:c,props:u,patchFlag:d,shapeFlag:h,dirs:f}=t,m="input"===c&&f||"option"===c;if(m||-1!==d){if(f&&At(t,null,n,"created"),u)if(m||!l||48&d)for(const t in u)(m&&t.endsWith("value")||(0,o.F7)(t)&&!(0,o.Gg)(t))&&r(e,t,null,u[t],!1,void 0,n);else u.onClick&&r(e,"onClick",null,u.onClick,!1,void 0,n);let c;if((c=u&&u.onVnodeBeforeMount)&&On(c,n,t),f&&At(t,null,n,"beforeMount"),((c=u&&u.onVnodeMounted)||f)&&le((()=>{c&&On(c,n,t),f&&At(t,null,n,"mounted")}),a),16&h&&(!u||!u.innerHTML&&!u.textContent)){let r=p(e.firstChild,t,e,n,a,i,l);for(;r;){Ot=!0;const e=r;r=r.nextSibling,s(e)}}else 8&h&&e.textContent!==t.children&&(Ot=!0,e.textContent=t.children)}return e.nextSibling},p=(e,t,r,o,a,i,s)=>{s=s||!!t.dynamicChildren;const l=t.children,c=l.length;for(let t=0;t{const{slotScopeIds:u}=t;u&&(o=o?o.concat(u):u);const d=i(e),h=p(a(e),t,d,n,r,o,s);return h&&Dt(h)&&"]"===h.data?a(t.anchor=h):(Ot=!0,l(t.anchor=c("]"),d,h),h)},f=(e,t,r,o,l,c)=>{if(Ot=!0,t.el=null,c){const t=m(e);for(;;){const n=a(e);if(!n||n===t)break;s(n)}}const u=a(e),d=i(e);return s(e),n(null,t,d,u,r,o,Pt(d),l),u},m=e=>{let t=0;for(;e;)if((e=a(e))&&Dt(e)&&("["===e.data&&t++,"]"===e.data)){if(0===t)return a(e);t--}return e};return[(e,t)=>{if(!t.hasChildNodes())return n(null,e,t),void D();Ot=!1,u(t.firstChild,e,null,null,null),D(),Ot&&console.error("Hydration completed but contains mismatches.")},u]}const Rt=le;function Lt(e){return Ft(e)}function Mt(e){return Ft(e,It)}function Ft(e,t){"boolean"!=typeof __VUE_OPTIONS_API__&&((0,o.E9)().__VUE_OPTIONS_API__=!0),"boolean"!=typeof __VUE_PROD_DEVTOOLS__&&((0,o.E9)().__VUE_PROD_DEVTOOLS__=!1);const n=(0,o.E9)();n.__VUE__=!0,__VUE_PROD_DEVTOOLS__&&j(n.__VUE_DEVTOOLS_GLOBAL_HOOK__,n);const{insert:a,remove:i,patchProp:s,createElement:l,createText:c,createComment:u,setText:d,setElementText:p,parentNode:h,nextSibling:g,setScopeId:b=o.dG,cloneNode:v,insertStaticContent:y}=e,_=(e,t,n,r=null,o=null,a=null,i=!1,s=null,l=!!t.dynamicChildren)=>{if(e===t)return;e&&!hn(e,t)&&(r=te(e),Y(e,o,a,!0),e=null),-2===t.patchFlag&&(l=!1,t.dynamicChildren=null);const{type:c,ref:u,shapeFlag:d}=t;switch(c){case Kt:k(e,t,n,r);break;case Qt:w(e,t,n,r);break;case en:null==e&&x(t,n,r,i);break;case Zt:L(e,t,n,r,o,a,i,s,l);break;default:1&d?A(e,t,n,r,o,a,i,s,l):6&d?M(e,t,n,r,o,a,i,s,l):(64&d||128&d)&&c.process(e,t,n,r,o,a,i,s,l,ae)}null!=u&&o&&Tt(u,e&&e.ref,a,t||e,!t)},k=(e,t,n,r)=>{if(null==e)a(t.el=c(t.children),n,r);else{const n=t.el=e.el;t.children!==e.children&&d(n,t.children)}},w=(e,t,n,r)=>{null==e?a(t.el=u(t.children||""),n,r):t.el=e.el},x=(e,t,n,r)=>{[e.el,e.anchor]=y(e.children,t,n,r,e.el,e.anchor)},A=(e,t,n,r,o,a,i,s,l)=>{i=i||"svg"===t.type,null==e?C(t,n,r,o,a,i,s,l):O(e,t,o,a,i,s,l)},C=(e,t,n,r,i,c,u,d)=>{let h,f;const{type:m,props:g,shapeFlag:b,transition:y,patchFlag:_,dirs:k}=e;if(e.el&&void 0!==v&&-1===_)h=e.el=v(e.el);else{if(h=e.el=l(e.type,c,g&&g.is,g),8&b?p(h,e.children):16&b&&T(e.children,h,null,r,i,c&&"foreignObject"!==m,u,d),k&&At(e,null,r,"created"),g){for(const t in g)"value"===t||(0,o.Gg)(t)||s(h,t,null,g[t],c,e.children,r,i,ee);"value"in g&&s(h,"value",null,g.value),(f=g.onVnodeBeforeMount)&&On(f,r,e)}E(h,e,e.scopeId,u,r)}__VUE_PROD_DEVTOOLS__&&(Object.defineProperty(h,"__vnode",{value:e,enumerable:!1}),Object.defineProperty(h,"__vueParentComponent",{value:r,enumerable:!1})),k&&At(e,null,r,"beforeMount");const w=(!i||i&&!i.pendingBranch)&&y&&!y.persisted;w&&y.beforeEnter(h),a(h,t,n),((f=g&&g.onVnodeMounted)||w||k)&&Rt((()=>{f&&On(f,r,e),w&&y.enter(h),k&&At(e,null,r,"mounted")}),i)},E=(e,t,n,r,o)=>{if(n&&b(e,n),r)for(let t=0;t{for(let c=l;c{const c=t.el=e.el;let{patchFlag:u,dynamicChildren:d,dirs:h}=t;u|=16&e.patchFlag;const f=e.props||o.kT,m=t.props||o.kT;let g;n&&Nt(n,!1),(g=m.onVnodeBeforeUpdate)&&On(g,n,t,e),h&&At(t,e,n,"beforeUpdate"),n&&Nt(n,!0);const b=a&&"foreignObject"!==t.type;if(d?I(e.dynamicChildren,d,c,n,r,b,i):l||V(e,t,c,null,n,r,b,i,!1),u>0){if(16&u)R(c,t,f,m,n,r,a);else if(2&u&&f.class!==m.class&&s(c,"class",null,m.class,a),4&u&&s(c,"style",f.style,m.style,a),8&u){const o=t.dynamicProps;for(let t=0;t{g&&On(g,n,t,e),h&&At(t,e,n,"updated")}),r)},I=(e,t,n,r,o,a,i)=>{for(let s=0;s{if(n!==r){for(const c in r){if((0,o.Gg)(c))continue;const u=r[c],d=n[c];u!==d&&"value"!==c&&s(e,c,d,u,l,t.children,a,i,ee)}if(n!==o.kT)for(const c in n)(0,o.Gg)(c)||c in r||s(e,c,n[c],null,l,t.children,a,i,ee);"value"in r&&s(e,"value",n.value,r.value)}},L=(e,t,n,r,o,i,s,l,u)=>{const d=t.el=e?e.el:c(""),p=t.anchor=e?e.anchor:c("");let{patchFlag:h,dynamicChildren:f,slotScopeIds:m}=t;m&&(l=l?l.concat(m):m),null==e?(a(d,n,r),a(p,n,r),T(t.children,n,p,o,i,s,l,u)):h>0&&64&h&&f&&e.dynamicChildren?(I(e.dynamicChildren,f,n,o,i,s,l),(null!=t.key||o&&t===o.subTree)&&jt(e,t,!0)):V(e,t,n,p,o,i,s,l,u)},M=(e,t,n,r,o,a,i,s,l)=>{t.slotScopeIds=s,null==e?512&t.shapeFlag?o.ctx.activate(t,n,r,i,l):F(t,n,r,o,a,i,l):N(e,t,l)},F=(e,t,n,r,o,a,i)=>{const s=e.component=qn(e,r,o);if(Le(e)&&(s.ctx.renderer=ae),Xn(s),s.asyncDep){if(o&&o.registerDep(s,H),!e.el){const e=s.subTree=yn(Qt);w(null,e,t,n)}}else H(s,e,t,n,o,a,i)},N=(e,t,n)=>{const r=t.component=e.component;if(function(e,t,n){const{props:r,children:o,component:a}=e,{props:i,children:s,patchFlag:l}=t,c=a.emitsOptions;if(t.dirs||t.transition)return!0;if(!(n&&l>=0))return!(!o&&!s||s&&s.$stable)||r!==i&&(r?!i||ne(r,i,c):!!i);if(1024&l)return!0;if(16&l)return r?ne(r,i,c):!!i;if(8&l){const e=t.dynamicProps;for(let t=0;tm&&f.splice(t,1)}(r.update),r.update()}else t.component=e.component,t.el=e.el,r.vnode=t},H=(e,t,n,a,i,s,l)=>{const c=e.effect=new r.qq((()=>{if(e.isMounted){let t,{next:n,bu:r,u:a,parent:c,vnode:u}=e,d=n;Nt(e,!1),n?(n.el=u.el,U(e,n,l)):n=u,r&&(0,o.ir)(r),(t=n.props&&n.props.onVnodeBeforeUpdate)&&On(t,c,n,u),Nt(e,!0);const p=Q(e),f=e.subTree;e.subTree=p,_(f,p,h(f.el),te(f),e,i,s),n.el=p.el,null===d&&re(e,p.el),a&&Rt(a,i),(t=n.props&&n.props.onVnodeUpdated)&&Rt((()=>On(t,c,n,u)),i),__VUE_PROD_DEVTOOLS__&&B(e)}else{let r;const{el:l,props:c}=t,{bm:u,m:d,parent:p}=e,h=De(t);if(Nt(e,!1),u&&(0,o.ir)(u),!h&&(r=c&&c.onVnodeBeforeMount)&&On(r,p,t),Nt(e,!0),l&&se){const n=()=>{e.subTree=Q(e),se(l,e.subTree,e,i,null)};h?t.type.__asyncLoader().then((()=>!e.isUnmounted&&n())):n()}else{const r=e.subTree=Q(e);_(null,r,n,a,e,i,s),t.el=r.el}if(d&&Rt(d,i),!h&&(r=c&&c.onVnodeMounted)){const e=t;Rt((()=>On(r,p,e)),i)}256&t.shapeFlag&&e.a&&Rt(e.a,i),e.isMounted=!0,__VUE_PROD_DEVTOOLS__&&$(e),t=n=a=null}}),(()=>S(e.update)),e.scope),u=e.update=c.run.bind(c);u.id=e.uid,Nt(e,!0),u()},U=(e,t,n)=>{t.component=e;const a=e.vnode.props;e.vnode=t,e.next=null,function(e,t,n,a){const{props:i,attrs:s,vnode:{patchFlag:l}}=e,c=(0,r.IU)(i),[u]=e.propsOptions;let d=!1;if(!(a||l>0)||16&l){let r;dt(e,t,i,s)&&(d=!0);for(const a in c)t&&((0,o.RI)(t,a)||(r=(0,o.rs)(a))!==a&&(0,o.RI)(t,r))||(u?!n||void 0===n[a]&&void 0===n[r]||(i[a]=pt(u,c,a,void 0,e,!0)):delete i[a]);if(s!==c)for(const e in s)t&&(0,o.RI)(t,e)||(delete s[e],d=!0)}else if(8&l){const n=e.vnode.dynamicProps;for(let r=0;r{const{vnode:r,slots:a}=e;let i=!0,s=o.kT;if(32&r.shapeFlag){const e=t._;e?n&&1===e?i=!1:((0,o.l7)(a,t),n||1!==e||delete a._):(i=!t.$stable,kt(t,a)),s=t}else t&&(wt(e,t),s={default:1});if(i)for(const e in a)vt(e)||e in s||delete a[e]})(e,t.children,n),(0,r.Jd)(),P(void 0,e.update),(0,r.lk)()},V=(e,t,n,r,o,a,i,s,l=!1)=>{const c=e&&e.children,u=e?e.shapeFlag:0,d=t.children,{patchFlag:h,shapeFlag:f}=t;if(h>0){if(128&h)return void G(c,d,n,r,o,a,i,s,l);if(256&h)return void W(c,d,n,r,o,a,i,s,l)}8&f?(16&u&&ee(c,o,a),d!==c&&p(n,d)):16&u?16&f?G(c,d,n,r,o,a,i,s,l):ee(c,o,a,!0):(8&u&&p(n,""),16&f&&T(d,n,r,o,a,i,s,l))},W=(e,t,n,r,a,i,s,l,c)=>{e=e||o.Z6,t=t||o.Z6;const u=e.length,d=t.length,p=Math.min(u,d);let h;for(h=0;hd?ee(e,a,i,!0,!1,p):T(t,n,r,a,i,s,l,c,p)},G=(e,t,n,r,a,i,s,l,c)=>{let u=0;const d=t.length;let p=e.length-1,h=d-1;for(;u<=p&&u<=h;){const r=e[u],o=t[u]=c?Sn(t[u]):Cn(t[u]);if(!hn(r,o))break;_(r,o,n,null,a,i,s,l,c),u++}for(;u<=p&&u<=h;){const r=e[p],o=t[h]=c?Sn(t[h]):Cn(t[h]);if(!hn(r,o))break;_(r,o,n,null,a,i,s,l,c),p--,h--}if(u>p){if(u<=h){const e=h+1,o=eh)for(;u<=p;)Y(e[u],a,i,!0),u++;else{const f=u,m=u,g=new Map;for(u=m;u<=h;u++){const e=t[u]=c?Sn(t[u]):Cn(t[u]);null!=e.key&&g.set(e.key,u)}let b,v=0;const y=h-m+1;let k=!1,w=0;const x=new Array(y);for(u=0;u=y){Y(r,a,i,!0);continue}let o;if(null!=r.key)o=g.get(r.key);else for(b=m;b<=h;b++)if(0===x[b-m]&&hn(r,t[b])){o=b;break}void 0===o?Y(r,a,i,!0):(x[o-m]=u+1,o>=w?w=o:k=!0,_(r,t[o],n,null,a,i,s,l,c),v++)}const A=k?function(e){const t=e.slice(),n=[0];let r,o,a,i,s;const l=e.length;for(r=0;r>1,e[n[s]]0&&(t[r]=n[a-1]),n[a]=r)}}for(a=n.length,i=n[a-1];a-- >0;)n[a]=i,i=t[i];return n}(x):o.Z6;for(b=A.length-1,u=y-1;u>=0;u--){const e=m+u,o=t[e],p=e+1{const{el:i,type:s,transition:l,children:c,shapeFlag:u}=e;if(6&u)J(e.component.subTree,t,n,r);else if(128&u)e.suspense.move(t,n,r);else if(64&u)s.move(e,t,n,ae);else if(s!==Zt)if(s!==en)if(2!==r&&1&u&&l)if(0===r)l.beforeEnter(i),a(i,t,n),Rt((()=>l.enter(i)),o);else{const{leave:e,delayLeave:r,afterLeave:o}=l,s=()=>a(i,t,n),c=()=>{e(i,(()=>{s(),o&&o()}))};r?r(i,s,c):c()}else a(i,t,n);else(({el:e,anchor:t},n,r)=>{let o;for(;e&&e!==t;)o=g(e),a(e,n,r),e=o;a(t,n,r)})(e,t,n);else{a(i,t,n);for(let e=0;e{const{type:a,props:i,ref:s,children:l,dynamicChildren:c,shapeFlag:u,patchFlag:d,dirs:p}=e;if(null!=s&&Tt(s,null,n,e,!0),256&u)return void t.ctx.deactivate(e);const h=1&u&&p,f=!De(e);let m;if(f&&(m=i&&i.onVnodeBeforeUnmount)&&On(m,t,e),6&u)K(e.component,n,r);else{if(128&u)return void e.suspense.unmount(n,r);h&&At(e,null,t,"beforeUnmount"),64&u?e.type.remove(e,t,n,o,ae,r):c&&(a!==Zt||d>0&&64&d)?ee(c,t,n,!1,!0):(a===Zt&&384&d||!o&&16&u)&&ee(l,t,n),r&&X(e)}(f&&(m=i&&i.onVnodeUnmounted)||h)&&Rt((()=>{m&&On(m,t,e),h&&At(e,null,t,"unmounted")}),n)},X=e=>{const{type:t,el:n,anchor:r,transition:o}=e;if(t===Zt)return void Z(n,r);if(t===en)return void(({el:e,anchor:t})=>{let n;for(;e&&e!==t;)n=g(e),i(e),e=n;i(t)})(e);const a=()=>{i(n),o&&!o.persisted&&o.afterLeave&&o.afterLeave()};if(1&e.shapeFlag&&o&&!o.persisted){const{leave:t,delayLeave:r}=o,i=()=>t(n,a);r?r(e.el,a,i):i()}else a()},Z=(e,t)=>{let n;for(;e!==t;)n=g(e),i(e),e=n;i(t)},K=(e,t,n)=>{const{bum:r,scope:a,update:i,subTree:s,um:l}=e;r&&(0,o.ir)(r),a.stop(),i&&(i.active=!1,Y(s,e,t,n)),l&&Rt(l,t),Rt((()=>{e.isUnmounted=!0}),t),t&&t.pendingBranch&&!t.isUnmounted&&e.asyncDep&&!e.asyncResolved&&e.suspenseId===t.pendingId&&(t.deps--,0===t.deps&&t.resolve()),__VUE_PROD_DEVTOOLS__&&q(e)},ee=(e,t,n,r=!1,o=!1,a=0)=>{for(let i=a;i6&e.shapeFlag?te(e.component.subTree):128&e.shapeFlag?e.suspense.next():g(e.anchor||e.el),oe=(e,t,n)=>{null==e?t._vnode&&Y(t._vnode,null,null,!0):_(t._vnode||null,e,t,null,null,null,n),D(),t._vnode=e},ae={p:_,um:Y,m:J,r:X,mt:F,mc:T,pc:V,pbc:I,n:te,o:e};let ie,se;return t&&([ie,se]=t(ae)),{render:oe,hydrate:ie,createApp:Et(oe,ie)}}function Nt({effect:e,update:t},n){e.allowRecurse=t.allowRecurse=n}function jt(e,t,n=!1){const r=e.children,a=t.children;if((0,o.kJ)(r)&&(0,o.kJ)(a))for(let e=0;ee&&(e.disabled||""===e.disabled),Bt=e=>"undefined"!=typeof SVGElement&&e instanceof SVGElement,qt=(e,t)=>{const n=e&&e.to;if((0,o.HD)(n)){if(t){return t(n)}return null}return n};function Ht(e,t,n,{o:{insert:r},m:o},a=2){0===a&&r(e.targetAnchor,t,n);const{el:i,anchor:s,shapeFlag:l,children:c,props:u}=e,d=2===a;if(d&&r(i,t,n),(!d||$t(u))&&16&l)for(let e=0;e{16&v&&u(y,e,t,o,a,i,s,l)};b?g(n,c):d&&g(d,p)}else{t.el=e.el;const r=t.anchor=e.anchor,u=t.target=e.target,h=t.targetAnchor=e.targetAnchor,m=$t(e.props),g=m?n:u,v=m?r:h;if(i=i||Bt(u),_?(p(e.dynamicChildren,_,g,o,a,i,s),jt(e,t,!0)):l||d(e,t,g,v,o,a,i,s,!1),b)m||Ht(t,n,r,c,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const e=t.target=qt(t.props,f);e&&Ht(t,e,null,c,0)}else m&&Ht(t,u,h,c,1)}},remove(e,t,n,r,{um:o,o:{remove:a}},i){const{shapeFlag:s,children:l,anchor:c,targetAnchor:u,target:d,props:p}=e;if(d&&a(u),(i||!$t(p))&&(a(c),16&s))for(let e=0;e0?nn||o.Z6:null,on(),sn>0&&nn&&nn.push(e),e}function un(e,t,n,r,o,a){return cn(vn(e,t,n,r,o,a,!0))}function dn(e,t,n,r,o){return cn(yn(e,t,n,r,o,!0))}function pn(e){return!!e&&!0===e.__v_isVNode}function hn(e,t){return e.type===t.type&&e.key===t.key}function fn(e){an=e}const mn="__vInternal",gn=({key:e})=>null!=e?e:null,bn=({ref:e,ref_key:t,ref_for:n})=>null!=e?(0,o.HD)(e)||(0,r.dq)(e)||(0,o.mf)(e)?{i:W,r:e,k:t,f:!!n}:e:null;function vn(e,t=null,n=null,r=0,a=null,i=(e===Zt?0:1),s=!1,l=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&gn(t),ref:t&&bn(t),scopeId:G,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:r,dynamicProps:a,dynamicChildren:null,appContext:null};return l?(En(c,n),128&i&&e.normalize(c)):n&&(c.shapeFlag|=(0,o.HD)(n)?8:16),sn>0&&!s&&nn&&(c.patchFlag>0||6&i)&&32!==c.patchFlag&&nn.push(c),c}const yn=function(e,t=null,n=null,a=0,i=null,s=!1){if(e&&e!==Wt||(e=Qt),pn(e)){const r=kn(e,t,!0);return n&&En(r,n),r}if(l=e,(0,o.mf)(l)&&"__vccOpts"in l&&(e=e.__vccOpts),t){t=_n(t);let{class:e,style:n}=t;e&&!(0,o.HD)(e)&&(t.class=(0,o.C_)(e)),(0,o.Kn)(n)&&((0,r.X3)(n)&&!(0,o.kJ)(n)&&(n=(0,o.l7)({},n)),t.style=(0,o.j5)(n))}var l;return vn(e,t,n,a,i,(0,o.HD)(e)?1:(e=>e.__isSuspense)(e)?128:(e=>e.__isTeleport)(e)?64:(0,o.Kn)(e)?4:(0,o.mf)(e)?2:0,s,!0)};function _n(e){return e?(0,r.X3)(e)||mn in e?(0,o.l7)({},e):e:null}function kn(e,t,n=!1){const{props:r,ref:a,patchFlag:i,children:s}=e,l=t?Tn(r||{},t):r;return{__v_isVNode:!0,__v_skip:!0,type:e.type,props:l,key:l&&gn(l),ref:t&&t.ref?n&&a?(0,o.kJ)(a)?a.concat(bn(t)):[a,bn(t)]:bn(t):a,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:s,target:e.target,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Zt?-1===i?16:16|i:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:e.transition,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&kn(e.ssContent),ssFallback:e.ssFallback&&kn(e.ssFallback),el:e.el,anchor:e.anchor}}function wn(e=" ",t=0){return yn(Kt,null,e,t)}function xn(e,t){const n=yn(en,null,e);return n.staticCount=t,n}function An(e="",t=!1){return t?(rn(),dn(Qt,null,e)):yn(Qt,null,e)}function Cn(e){return null==e||"boolean"==typeof e?yn(Qt):(0,o.kJ)(e)?yn(Zt,null,e.slice()):"object"==typeof e?Sn(e):yn(Kt,null,String(e))}function Sn(e){return null===e.el||e.memo?e:kn(e)}function En(e,t){let n=0;const{shapeFlag:r}=e;if(null==t)t=null;else if((0,o.kJ)(t))n=16;else if("object"==typeof t){if(65&r){const n=t.default;return void(n&&(n._c&&(n._d=!1),En(e,n()),n._c&&(n._d=!0)))}{n=32;const r=t._;r||mn in t?3===r&&W&&(1===W.slots._?t._=1:(t._=2,e.patchFlag|=1024)):t._ctx=W}}else(0,o.mf)(t)?(t={default:t,_ctx:W},n=32):(t=String(t),64&r?(n=16,t=[wn(t)]):n=8);e.children=t,e.shapeFlag|=n}function Tn(...e){const t={};for(let n=0;nt(e,n,void 0,i&&i[n])));else{const n=Object.keys(e);a=new Array(n.length);for(let r=0,o=n.length;r!pn(e)||e.type!==Qt&&!(e.type===Zt&&!Rn(e.children))))?e:null}function Ln(e){const t={};for(const n in e)t[(0,o.hR)(n)]=e[n];return t}const Mn=e=>e?Wn(e)?nr(e)||e.proxy:Mn(e.parent):null,Fn=(0,o.l7)(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Mn(e.parent),$root:e=>Mn(e.root),$emit:e=>e.emit,$options:e=>__VUE_OPTIONS_API__?ot(e):e.type,$forceUpdate:e=>()=>S(e.update),$nextTick:e=>C.bind(e.proxy),$watch:e=>__VUE_OPTIONS_API__?ve.bind(e):o.dG}),Nn={get({_:e},t){const{ctx:n,setupState:a,data:i,props:s,accessCache:l,type:c,appContext:u}=e;let d;if("$"!==t[0]){const r=l[t];if(void 0!==r)switch(r){case 1:return a[t];case 2:return i[t];case 4:return n[t];case 3:return s[t]}else{if(a!==o.kT&&(0,o.RI)(a,t))return l[t]=1,a[t];if(i!==o.kT&&(0,o.RI)(i,t))return l[t]=2,i[t];if((d=e.propsOptions[0])&&(0,o.RI)(d,t))return l[t]=3,s[t];if(n!==o.kT&&(0,o.RI)(n,t))return l[t]=4,n[t];__VUE_OPTIONS_API__&&!tt||(l[t]=0)}}const p=Fn[t];let h,f;return p?("$attrs"===t&&(0,r.j)(e,"get",t),p(e)):(h=c.__cssModules)&&(h=h[t])?h:n!==o.kT&&(0,o.RI)(n,t)?(l[t]=4,n[t]):(f=u.config.globalProperties,(0,o.RI)(f,t)?f[t]:void 0)},set({_:e},t,n){const{data:r,setupState:a,ctx:i}=e;return a!==o.kT&&(0,o.RI)(a,t)?(a[t]=n,!0):r!==o.kT&&(0,o.RI)(r,t)?(r[t]=n,!0):!((0,o.RI)(e.props,t)||"$"===t[0]&&t.slice(1)in e||(i[t]=n,0))},has({_:{data:e,setupState:t,accessCache:n,ctx:r,appContext:a,propsOptions:i}},s){let l;return!!n[s]||e!==o.kT&&(0,o.RI)(e,s)||t!==o.kT&&(0,o.RI)(t,s)||(l=i[0])&&(0,o.RI)(l,s)||(0,o.RI)(r,s)||(0,o.RI)(Fn,s)||(0,o.RI)(a.config.globalProperties,s)},defineProperty(e,t,n){return null!=n.get?this.set(e,t,n.get(),null):null!=n.value&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}},jn=(0,o.l7)({},Nn,{get(e,t){if(t!==Symbol.unscopables)return Nn.get(e,t,e)},has:(e,t)=>"_"!==t[0]&&!(0,o.e1)(t)}),$n=Ct();let Bn=0;function qn(e,t,n){const a=e.type,i=(t?t.appContext:e.appContext)||$n,s={uid:Bn++,vnode:e,type:a,parent:t,appContext:i,root:null,next:null,subTree:null,effect:null,update:null,scope:new r.Bj(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(i.provides),accessCache:null,renderCache:[],components:null,directives:null,propsOptions:ht(a,i),emitsOptions:V(a,i),emit:null,emitted:null,propsDefaults:o.kT,inheritAttrs:a.inheritAttrs,ctx:o.kT,data:o.kT,props:o.kT,attrs:o.kT,slots:o.kT,refs:o.kT,setupState:o.kT,setupContext:null,suspense:n,suspenseId:n?n.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return s.ctx={_:s},s.root=t?t.root:s,s.emit=U.bind(null,s),e.ce&&e.ce(s),s}let Hn=null;const Un=()=>Hn||W,Vn=e=>{Hn=e,e.scope.on()},zn=()=>{Hn&&Hn.scope.off(),Hn=null};function Wn(e){return 4&e.vnode.shapeFlag}let Gn,Jn,Yn=!1;function Xn(e,t=!1){Yn=t;const{props:n,children:a}=e.vnode,i=Wn(e);!function(e,t,n,a=!1){const i={},s={};(0,o.Nj)(s,mn,1),e.propsDefaults=Object.create(null),dt(e,t,i,s);for(const t in e.propsOptions[0])t in i||(i[t]=void 0);n?e.props=a?i:(0,r.Um)(i):e.type.props?e.props=i:e.props=s,e.attrs=s}(e,n,i,t),((e,t)=>{if(32&e.vnode.shapeFlag){const n=t._;n?(e.slots=(0,r.IU)(t),(0,o.Nj)(t,"_",n)):kt(t,e.slots={})}else e.slots={},t&&wt(e,t);(0,o.Nj)(e.slots,mn,1)})(e,a);const s=i?function(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=(0,r.Xl)(new Proxy(e.ctx,Nn));const{setup:a}=n;if(a){const n=e.setupContext=a.length>1?tr(e):null;Vn(e),(0,r.Jd)();const i=c(a,e,0,[e.props,n]);if((0,r.lk)(),zn(),(0,o.tI)(i)){if(i.then(zn,zn),t)return i.then((n=>{Zn(e,n,t)})).catch((t=>{d(t,e,0)}));e.asyncDep=i}else Zn(e,i,t)}else er(e,t)}(e,t):void 0;return Yn=!1,s}function Zn(e,t,n){(0,o.mf)(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:(0,o.Kn)(t)&&(__VUE_PROD_DEVTOOLS__&&(e.devtoolsRawSetupState=t),e.setupState=(0,r.WL)(t)),er(e,n)}function Kn(e){Gn=e,Jn=e=>{e.render._rc&&(e.withProxy=new Proxy(e.ctx,jn))}}const Qn=()=>!Gn;function er(e,t,n){const a=e.type;if(!e.render){if(!t&&Gn&&!a.render){const t=a.template;if(t){const{isCustomElement:n,compilerOptions:r}=e.appContext.config,{delimiters:i,compilerOptions:s}=a,l=(0,o.l7)((0,o.l7)({isCustomElement:n,delimiters:i},r),s);a.render=Gn(t,l)}}e.render=a.render||o.dG,Jn&&Jn(e)}__VUE_OPTIONS_API__&&(Vn(e),(0,r.Jd)(),function(e){const t=ot(e),n=e.proxy,a=e.ctx;tt=!1,t.beforeCreate&&nt(t.beforeCreate,e,"bc");const{data:i,computed:s,methods:l,watch:c,provide:u,inject:d,created:p,beforeMount:h,mounted:f,beforeUpdate:m,updated:g,activated:b,deactivated:v,beforeDestroy:y,beforeUnmount:_,destroyed:k,unmounted:w,render:x,renderTracked:A,renderTriggered:C,errorCaptured:S,serverPrefetch:E,expose:T,inheritAttrs:O,components:P,directives:D,filters:I}=t;if(d&&function(e,t,n=o.dG,a=!1){(0,o.kJ)(e)&&(e=lt(e));for(const n in e){const i=e[n];let s;s=(0,o.Kn)(i)?"default"in i?de(i.from||n,i.default,!0):de(i.from||n):de(i),(0,r.dq)(s)&&a?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>s.value,set:e=>s.value=e}):t[n]=s}}(d,a,null,e.appContext.config.unwrapInjectedRef),l)for(const e in l){const t=l[e];(0,o.mf)(t)&&(a[e]=t.bind(n))}if(i){const t=i.call(n,n);(0,o.Kn)(t)&&(e.data=(0,r.qj)(t))}if(tt=!0,s)for(const e in s){const t=s[e],r=(0,o.mf)(t)?t.bind(n,n):(0,o.mf)(t.get)?t.get.bind(n,n):o.dG,i=!(0,o.mf)(t)&&(0,o.mf)(t.set)?t.set.bind(n):o.dG,l=ir({get:r,set:i});Object.defineProperty(a,e,{enumerable:!0,configurable:!0,get:()=>l.value,set:e=>l.value=e})}if(c)for(const e in c)rt(c[e],a,n,e);if(u){const e=(0,o.mf)(u)?u.call(n):u;Reflect.ownKeys(e).forEach((t=>{ue(t,e[t])}))}function R(e,t){(0,o.kJ)(t)?t.forEach((t=>e(t.bind(n)))):t&&e(t.bind(n))}if(p&&nt(p,e,"c"),R(ze,h),R(We,f),R(Ge,m),R(Je,g),R(Ne,b),R(je,v),R(et,S),R(Qe,A),R(Ke,C),R(Ye,_),R(Xe,w),R(Ze,E),(0,o.kJ)(T))if(T.length){const t=e.exposed||(e.exposed={});T.forEach((e=>{Object.defineProperty(t,e,{get:()=>n[e],set:t=>n[e]=t})}))}else e.exposed||(e.exposed={});x&&e.render===o.dG&&(e.render=x),null!=O&&(e.inheritAttrs=O),P&&(e.components=P),D&&(e.directives=D)}(e),(0,r.lk)(),zn())}function tr(e){let t;return{get attrs(){return t||(t=function(e){return new Proxy(e.attrs,{get:(t,n)=>((0,r.j)(e,"get","$attrs"),t[n])})}(e))},slots:e.slots,emit:e.emit,expose:t=>{e.exposed=t||{}}}}function nr(e){if(e.exposed)return e.exposeProxy||(e.exposeProxy=new Proxy((0,r.WL)((0,r.Xl)(e.exposed)),{get:(t,n)=>n in t?t[n]:n in Fn?Fn[n](e):void 0}))}const rr=/(?:^|[-_])(\w)/g;function or(e){return(0,o.mf)(e)&&e.displayName||e.name}function ar(e,t,n=!1){let r=or(t);if(!r&&t.__file){const e=t.__file.match(/([^/\\]+)\.\w+$/);e&&(r=e[1])}if(!r&&e&&e.parent){const n=e=>{for(const n in e)if(e[n]===t)return n};r=n(e.components||e.parent.type.components)||n(e.appContext.components)}return r?r.replace(rr,(e=>e.toUpperCase())).replace(/[-_]/g,""):n?"App":"Anonymous"}const ir=(e,t)=>(0,r.Fl)(e,t,Yn);function sr(){return null}function lr(){return null}function cr(e){}function ur(e,t){return null}function dr(){return hr().slots}function pr(){return hr().attrs}function hr(){const e=Un();return e.setupContext||(e.setupContext=tr(e))}function fr(e,t){const n=(0,o.kJ)(e)?e.reduce(((e,t)=>(e[t]={},e)),{}):e;for(const e in t){const r=n[e];r?(0,o.kJ)(r)||(0,o.mf)(r)?n[e]={type:r,default:t[e]}:r.default=t[e]:null===r&&(n[e]={default:t[e]})}return n}function mr(e,t){const n={};for(const r in e)t.includes(r)||Object.defineProperty(n,r,{enumerable:!0,get:()=>e[r]});return n}function gr(e){const t=Un();let n=e();return zn(),(0,o.tI)(n)&&(n=n.catch((e=>{throw Vn(t),e}))),[n,()=>Vn(t)]}function br(e,t,n){const r=arguments.length;return 2===r?(0,o.Kn)(t)&&!(0,o.kJ)(t)?pn(t)?yn(e,null,[t]):yn(e,t):yn(e,null,t):(r>3?n=Array.prototype.slice.call(arguments,2):3===r&&pn(n)&&(n=[n]),yn(e,t,n))}const vr=Symbol(""),yr=()=>{{const e=de(vr);return e||i("Server rendering context not provided. Make sure to only call useSSRContext() conditionally in the server build."),e}};function _r(){}function kr(e,t,n,r){const o=n[r];if(o&&wr(o,e))return o;const a=t();return a.memo=e.slice(),n[r]=a}function wr(e,t){const n=e.memo;if(n.length!=t.length)return!1;for(let e=0;e0&&nn&&nn.push(e),!0}const xr="3.2.31",Ar={createComponentInstance:qn,setupComponent:Xn,renderComponentRoot:Q,setCurrentRenderingInstance:J,isVNode:pn,normalizeVNode:Cn},Cr=null,Sr=null},9963:(e,t,n)=>{"use strict";n.r(t),n.d(t,{BaseTransition:()=>o.P$,Comment:()=>o.sv,EffectScope:()=>o.Bj,Fragment:()=>o.HY,KeepAlive:()=>o.Ob,ReactiveEffect:()=>o.qq,Static:()=>o.qG,Suspense:()=>o.n4,Teleport:()=>o.lR,Text:()=>o.xv,Transition:()=>I,TransitionGroup:()=>X,VueElement:()=>C,callWithAsyncErrorHandling:()=>o.$d,callWithErrorHandling:()=>o.KU,camelize:()=>o._A,capitalize:()=>o.kC,cloneVNode:()=>o.Ho,compatUtils:()=>o.ry,computed:()=>o.Fl,createApp:()=>Ee,createBlock:()=>o.j4,createCommentVNode:()=>o.kq,createElementBlock:()=>o.iD,createElementVNode:()=>o._,createHydrationRenderer:()=>o.Eo,createPropsRestProxy:()=>o.p1,createRenderer:()=>o.Us,createSSRApp:()=>Te,createSlots:()=>o.Nv,createStaticVNode:()=>o.uE,createTextVNode:()=>o.Uk,createVNode:()=>o.Wm,customRef:()=>o.ZM,defineAsyncComponent:()=>o.RC,defineComponent:()=>o.aZ,defineCustomElement:()=>w,defineEmits:()=>o.Bz,defineExpose:()=>o.WY,defineProps:()=>o.MW,defineSSRCustomElement:()=>x,devtools:()=>o.mW,effect:()=>o.cE,effectScope:()=>o.B,getCurrentInstance:()=>o.FN,getCurrentScope:()=>o.nZ,getTransitionRawChildren:()=>o.Q6,guardReactiveProps:()=>o.F4,h:()=>o.h,handleError:()=>o.S3,hydrate:()=>Se,initCustomFormatter:()=>o.Mr,initDirectivesForSSR:()=>De,inject:()=>o.f3,isMemoSame:()=>o.nQ,isProxy:()=>o.X3,isReactive:()=>o.PG,isReadonly:()=>o.$y,isRef:()=>o.dq,isRuntimeOnly:()=>o.of,isShallow:()=>o.yT,isVNode:()=>o.lA,markRaw:()=>o.Xl,mergeDefaults:()=>o.u_,mergeProps:()=>o.dG,nextTick:()=>o.Y3,normalizeClass:()=>o.C_,normalizeProps:()=>o.vs,normalizeStyle:()=>o.j5,onActivated:()=>o.dl,onBeforeMount:()=>o.wF,onBeforeUnmount:()=>o.Jd,onBeforeUpdate:()=>o.Xn,onDeactivated:()=>o.se,onErrorCaptured:()=>o.d1,onMounted:()=>o.bv,onRenderTracked:()=>o.bT,onRenderTriggered:()=>o.Yq,onScopeDispose:()=>o.EB,onServerPrefetch:()=>o.vl,onUnmounted:()=>o.Ah,onUpdated:()=>o.ic,openBlock:()=>o.wg,popScopeId:()=>o.Cn,provide:()=>o.JJ,proxyRefs:()=>o.WL,pushScopeId:()=>o.dD,queuePostFlushCb:()=>o.qb,reactive:()=>o.qj,readonly:()=>o.OT,ref:()=>o.iH,registerRuntimeCompiler:()=>o.Y1,render:()=>Ce,renderList:()=>o.Ko,renderSlot:()=>o.WI,resolveComponent:()=>o.up,resolveDirective:()=>o.Q2,resolveDynamicComponent:()=>o.LL,resolveFilter:()=>o.eq,resolveTransitionHooks:()=>o.U2,setBlockTracking:()=>o.qZ,setDevtoolsHook:()=>o.ec,setTransitionHooks:()=>o.nK,shallowReactive:()=>o.Um,shallowReadonly:()=>o.YS,shallowRef:()=>o.XI,ssrContextKey:()=>o.Uc,ssrUtils:()=>o.G,stop:()=>o.sT,toDisplayString:()=>o.zw,toHandlerKey:()=>o.hR,toHandlers:()=>o.mx,toRaw:()=>o.IU,toRef:()=>o.Vh,toRefs:()=>o.BK,transformVNodeArgs:()=>o.C3,triggerRef:()=>o.oR,unref:()=>o.SU,useAttrs:()=>o.l1,useCssModule:()=>S,useCssVars:()=>E,useSSRContext:()=>o.Zq,useSlots:()=>o.Rr,useTransitionState:()=>o.Y8,vModelCheckbox:()=>oe,vModelDynamic:()=>de,vModelRadio:()=>ie,vModelSelect:()=>se,vModelText:()=>re,vShow:()=>ve,version:()=>o.i8,warn:()=>o.ZK,watch:()=>o.YP,watchEffect:()=>o.m0,watchPostEffect:()=>o.Rh,watchSyncEffect:()=>o.yX,withAsyncContext:()=>o.mv,withCtx:()=>o.w5,withDefaults:()=>o.b9,withDirectives:()=>o.wy,withKeys:()=>be,withMemo:()=>o.MX,withModifiers:()=>me,withScopeId:()=>o.HX});var r=n(3577),o=n(6252),a=n(2262);const i="undefined"!=typeof document?document:null,s=i&&i.createElement("template"),l={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,r)=>{const o=t?i.createElementNS("http://www.w3.org/2000/svg",e):i.createElement(e,n?{is:n}:void 0);return"select"===e&&r&&null!=r.multiple&&o.setAttribute("multiple",r.multiple),o},createText:e=>i.createTextNode(e),createComment:e=>i.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>i.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},cloneNode(e){const t=e.cloneNode(!0);return"_value"in e&&(t._value=e._value),t},insertStaticContent(e,t,n,r,o,a){const i=n?n.previousSibling:t.lastChild;if(o&&(o===a||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),n),o!==a&&(o=o.nextSibling););else{s.innerHTML=r?`${e}`:e;const o=s.content;if(r){const e=o.firstChild;for(;e.firstChild;)o.appendChild(e.firstChild);o.removeChild(e)}t.insertBefore(o,n)}return[i?i.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},c=/\s*!important$/;function u(e,t,n){if((0,r.kJ)(n))n.forEach((n=>u(e,t,n)));else if(t.startsWith("--"))e.setProperty(t,n);else{const o=function(e,t){const n=p[t];if(n)return n;let o=(0,r._A)(t);if("filter"!==o&&o in e)return p[t]=o;o=(0,r.kC)(o);for(let n=0;ndocument.createEvent("Event").timeStamp&&(f=()=>performance.now());const e=navigator.userAgent.match(/firefox\/(\d+)/i);m=!!(e&&Number(e[1])<=53)}let g=0;const b=Promise.resolve(),v=()=>{g=0};function y(e,t,n,r){e.addEventListener(t,n,r)}const _=/(?:Once|Passive|Capture)$/,k=/^on[a-z]/;function w(e,t){const n=(0,o.aZ)(e);class r extends C{constructor(e){super(n,e,t)}}return r.def=n,r}const x=e=>w(e,Se),A="undefined"!=typeof HTMLElement?HTMLElement:class{};class C extends A{constructor(e,t={},n){super(),this._def=e,this._props=t,this._instance=null,this._connected=!1,this._resolved=!1,this._numberProps=null,this.shadowRoot&&n?n(this._createVNode(),this.shadowRoot):this.attachShadow({mode:"open"})}connectedCallback(){this._connected=!0,this._instance||this._resolveDef()}disconnectedCallback(){this._connected=!1,(0,o.Y3)((()=>{this._connected||(Ce(null,this.shadowRoot),this._instance=null)}))}_resolveDef(){if(this._resolved)return;this._resolved=!0;for(let e=0;e{for(const t of e)this._setAttr(t.attributeName)})).observe(this,{attributes:!0});const e=e=>{const{props:t,styles:n}=e,o=!(0,r.kJ)(t),a=t?o?Object.keys(t):t:[];let i;if(o)for(const e in this._props){const n=t[e];(n===Number||n&&n.type===Number)&&(this._props[e]=(0,r.He)(this._props[e]),(i||(i=Object.create(null)))[e]=!0)}this._numberProps=i;for(const e of Object.keys(this))"_"!==e[0]&&this._setProp(e,this[e],!0,!1);for(const e of a.map(r._A))Object.defineProperty(this,e,{get(){return this._getProp(e)},set(t){this._setProp(e,t)}});this._applyStyles(n),this._update()},t=this._def.__asyncLoader;t?t().then(e):e(this._def)}_setAttr(e){let t=this.getAttribute(e);this._numberProps&&this._numberProps[e]&&(t=(0,r.He)(t)),this._setProp((0,r._A)(e),t,!1)}_getProp(e){return this._props[e]}_setProp(e,t,n=!0,o=!0){t!==this._props[e]&&(this._props[e]=t,o&&this._instance&&this._update(),n&&(!0===t?this.setAttribute((0,r.rs)(e),""):"string"==typeof t||"number"==typeof t?this.setAttribute((0,r.rs)(e),t+""):t||this.removeAttribute((0,r.rs)(e))))}_update(){Ce(this._createVNode(),this.shadowRoot)}_createVNode(){const e=(0,o.Wm)(this._def,(0,r.l7)({},this._props));return this._instance||(e.ce=e=>{this._instance=e,e.isCE=!0,e.emit=(e,...t)=>{this.dispatchEvent(new CustomEvent(e,{detail:t}))};let t=this;for(;t=t&&(t.parentNode||t.host);)if(t instanceof C){e.parent=t._instance;break}}),e}_applyStyles(e){e&&e.forEach((e=>{const t=document.createElement("style");t.textContent=e,this.shadowRoot.appendChild(t)}))}}function S(e="$style"){{const t=(0,o.FN)();if(!t)return r.kT;const n=t.type.__cssModules;if(!n)return r.kT;return n[e]||r.kT}}function E(e){const t=(0,o.FN)();if(!t)return;const n=()=>T(t.subTree,e(t.proxy));(0,o.Rh)(n),(0,o.bv)((()=>{const e=new MutationObserver(n);e.observe(t.subTree.el.parentNode,{childList:!0}),(0,o.Ah)((()=>e.disconnect()))}))}function T(e,t){if(128&e.shapeFlag){const n=e.suspense;e=n.activeBranch,n.pendingBranch&&!n.isHydrating&&n.effects.push((()=>{T(n.activeBranch,t)}))}for(;e.component;)e=e.component.subTree;if(1&e.shapeFlag&&e.el)O(e.el,t);else if(e.type===o.HY)e.children.forEach((e=>T(e,t)));else if(e.type===o.qG){let{el:n,anchor:r}=e;for(;n&&(O(n,t),n!==r);)n=n.nextSibling}}function O(e,t){if(1===e.nodeType){const n=e.style;for(const e in t)n.setProperty(`--${e}`,t[e])}}const P="transition",D="animation",I=(e,{slots:t})=>(0,o.h)(o.P$,N(e),t);I.displayName="Transition";const R={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},L=I.props=(0,r.l7)({},o.P$.props,R),M=(e,t=[])=>{(0,r.kJ)(e)?e.forEach((e=>e(...t))):e&&e(...t)},F=e=>!!e&&((0,r.kJ)(e)?e.some((e=>e.length>1)):e.length>1);function N(e){const t={};for(const n in e)n in R||(t[n]=e[n]);if(!1===e.css)return t;const{name:n="v",type:o,duration:a,enterFromClass:i=`${n}-enter-from`,enterActiveClass:s=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:c=i,appearActiveClass:u=s,appearToClass:d=l,leaveFromClass:p=`${n}-leave-from`,leaveActiveClass:h=`${n}-leave-active`,leaveToClass:f=`${n}-leave-to`}=e,m=function(e){if(null==e)return null;if((0,r.Kn)(e))return[j(e.enter),j(e.leave)];{const t=j(e);return[t,t]}}(a),g=m&&m[0],b=m&&m[1],{onBeforeEnter:v,onEnter:y,onEnterCancelled:_,onLeave:k,onLeaveCancelled:w,onBeforeAppear:x=v,onAppear:A=y,onAppearCancelled:C=_}=t,S=(e,t,n)=>{B(e,t?d:l),B(e,t?u:s),n&&n()},E=(e,t)=>{B(e,f),B(e,h),t&&t()},T=e=>(t,n)=>{const r=e?A:y,a=()=>S(t,e,n);M(r,[t,a]),q((()=>{B(t,e?c:i),$(t,e?d:l),F(r)||U(t,o,g,a)}))};return(0,r.l7)(t,{onBeforeEnter(e){M(v,[e]),$(e,i),$(e,s)},onBeforeAppear(e){M(x,[e]),$(e,c),$(e,u)},onEnter:T(!1),onAppear:T(!0),onLeave(e,t){const n=()=>E(e,t);$(e,p),G(),$(e,h),q((()=>{B(e,p),$(e,f),F(k)||U(e,o,b,n)})),M(k,[e,n])},onEnterCancelled(e){S(e,!1),M(_,[e])},onAppearCancelled(e){S(e,!0),M(C,[e])},onLeaveCancelled(e){E(e),M(w,[e])}})}function j(e){return(0,r.He)(e)}function $(e,t){t.split(/\s+/).forEach((t=>t&&e.classList.add(t))),(e._vtc||(e._vtc=new Set)).add(t)}function B(e,t){t.split(/\s+/).forEach((t=>t&&e.classList.remove(t)));const{_vtc:n}=e;n&&(n.delete(t),n.size||(e._vtc=void 0))}function q(e){requestAnimationFrame((()=>{requestAnimationFrame(e)}))}let H=0;function U(e,t,n,r){const o=e._endId=++H,a=()=>{o===e._endId&&r()};if(n)return setTimeout(a,n);const{type:i,timeout:s,propCount:l}=V(e,t);if(!i)return r();const c=i+"end";let u=0;const d=()=>{e.removeEventListener(c,p),a()},p=t=>{t.target===e&&++u>=l&&d()};setTimeout((()=>{u(n[e]||"").split(", "),o=r("transitionDelay"),a=r("transitionDuration"),i=z(o,a),s=r("animationDelay"),l=r("animationDuration"),c=z(s,l);let u=null,d=0,p=0;return t===P?i>0&&(u=P,d=i,p=a.length):t===D?c>0&&(u=D,d=c,p=l.length):(d=Math.max(i,c),u=d>0?i>c?P:D:null,p=u?u===P?a.length:l.length:0),{type:u,timeout:d,propCount:p,hasTransform:u===P&&/\b(transform|all)(,|$)/.test(n.transitionProperty)}}function z(e,t){for(;e.lengthW(t)+W(e[n]))))}function W(e){return 1e3*Number(e.slice(0,-1).replace(",","."))}function G(){return document.body.offsetHeight}const J=new WeakMap,Y=new WeakMap,X={name:"TransitionGroup",props:(0,r.l7)({},L,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=(0,o.FN)(),r=(0,o.Y8)();let i,s;return(0,o.ic)((()=>{if(!i.length)return;const t=e.moveClass||`${e.name||"v"}-move`;if(!function(e,t,n){const r=e.cloneNode();e._vtc&&e._vtc.forEach((e=>{e.split(/\s+/).forEach((e=>e&&r.classList.remove(e)))})),n.split(/\s+/).forEach((e=>e&&r.classList.add(e))),r.style.display="none";const o=1===t.nodeType?t:t.parentNode;o.appendChild(r);const{hasTransform:a}=V(r);return o.removeChild(r),a}(i[0].el,n.vnode.el,t))return;i.forEach(Z),i.forEach(K);const r=i.filter(Q);G(),r.forEach((e=>{const n=e.el,r=n.style;$(n,t),r.transform=r.webkitTransform=r.transitionDuration="";const o=n._moveCb=e=>{e&&e.target!==n||e&&!/transform$/.test(e.propertyName)||(n.removeEventListener("transitionend",o),n._moveCb=null,B(n,t))};n.addEventListener("transitionend",o)}))})),()=>{const l=(0,a.IU)(e),c=N(l);let u=l.tag||o.HY;i=s,s=t.default?(0,o.Q6)(t.default()):[];for(let e=0;e{const t=e.props["onUpdate:modelValue"];return(0,r.kJ)(t)?e=>(0,r.ir)(t,e):t};function te(e){e.target.composing=!0}function ne(e){const t=e.target;t.composing&&(t.composing=!1,function(e,t){const n=document.createEvent("HTMLEvents");n.initEvent("input",!0,!0),e.dispatchEvent(n)}(t))}const re={created(e,{modifiers:{lazy:t,trim:n,number:o}},a){e._assign=ee(a);const i=o||a.props&&"number"===a.props.type;y(e,t?"change":"input",(t=>{if(t.target.composing)return;let o=e.value;n?o=o.trim():i&&(o=(0,r.He)(o)),e._assign(o)})),n&&y(e,"change",(()=>{e.value=e.value.trim()})),t||(y(e,"compositionstart",te),y(e,"compositionend",ne),y(e,"change",ne))},mounted(e,{value:t}){e.value=null==t?"":t},beforeUpdate(e,{value:t,modifiers:{lazy:n,trim:o,number:a}},i){if(e._assign=ee(i),e.composing)return;if(document.activeElement===e){if(n)return;if(o&&e.value.trim()===t)return;if((a||"number"===e.type)&&(0,r.He)(e.value)===t)return}const s=null==t?"":t;e.value!==s&&(e.value=s)}},oe={deep:!0,created(e,t,n){e._assign=ee(n),y(e,"change",(()=>{const t=e._modelValue,n=ce(e),o=e.checked,a=e._assign;if((0,r.kJ)(t)){const e=(0,r.hq)(t,n),i=-1!==e;if(o&&!i)a(t.concat(n));else if(!o&&i){const n=[...t];n.splice(e,1),a(n)}}else if((0,r.DM)(t)){const e=new Set(t);o?e.add(n):e.delete(n),a(e)}else a(ue(e,o))}))},mounted:ae,beforeUpdate(e,t,n){e._assign=ee(n),ae(e,t,n)}};function ae(e,{value:t,oldValue:n},o){e._modelValue=t,(0,r.kJ)(t)?e.checked=(0,r.hq)(t,o.props.value)>-1:(0,r.DM)(t)?e.checked=t.has(o.props.value):t!==n&&(e.checked=(0,r.WV)(t,ue(e,!0)))}const ie={created(e,{value:t},n){e.checked=(0,r.WV)(t,n.props.value),e._assign=ee(n),y(e,"change",(()=>{e._assign(ce(e))}))},beforeUpdate(e,{value:t,oldValue:n},o){e._assign=ee(o),t!==n&&(e.checked=(0,r.WV)(t,o.props.value))}},se={deep:!0,created(e,{value:t,modifiers:{number:n}},o){const a=(0,r.DM)(t);y(e,"change",(()=>{const t=Array.prototype.filter.call(e.options,(e=>e.selected)).map((e=>n?(0,r.He)(ce(e)):ce(e)));e._assign(e.multiple?a?new Set(t):t:t[0])})),e._assign=ee(o)},mounted(e,{value:t}){le(e,t)},beforeUpdate(e,t,n){e._assign=ee(n)},updated(e,{value:t}){le(e,t)}};function le(e,t){const n=e.multiple;if(!n||(0,r.kJ)(t)||(0,r.DM)(t)){for(let o=0,a=e.options.length;o-1:a.selected=t.has(i);else if((0,r.WV)(ce(a),t))return void(e.selectedIndex!==o&&(e.selectedIndex=o))}n||-1===e.selectedIndex||(e.selectedIndex=-1)}}function ce(e){return"_value"in e?e._value:e.value}function ue(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const de={created(e,t,n){pe(e,t,n,null,"created")},mounted(e,t,n){pe(e,t,n,null,"mounted")},beforeUpdate(e,t,n,r){pe(e,t,n,r,"beforeUpdate")},updated(e,t,n,r){pe(e,t,n,r,"updated")}};function pe(e,t,n,r,o){let a;switch(e.tagName){case"SELECT":a=se;break;case"TEXTAREA":a=re;break;default:switch(n.props&&n.props.type){case"checkbox":a=oe;break;case"radio":a=ie;break;default:a=re}}const i=a[o];i&&i(e,t,n,r)}const he=["ctrl","shift","alt","meta"],fe={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&0!==e.button,middle:e=>"button"in e&&1!==e.button,right:e=>"button"in e&&2!==e.button,exact:(e,t)=>he.some((n=>e[`${n}Key`]&&!t.includes(n)))},me=(e,t)=>(n,...r)=>{for(let e=0;en=>{if(!("key"in n))return;const o=(0,r.rs)(n.key);return t.some((e=>e===o||ge[e]===o))?e(n):void 0},ve={beforeMount(e,{value:t},{transition:n}){e._vod="none"===e.style.display?"":e.style.display,n&&t?n.beforeEnter(e):ye(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:r}){!t!=!n&&(r?t?(r.beforeEnter(e),ye(e,!0),r.enter(e)):r.leave(e,(()=>{ye(e,!1)})):ye(e,t))},beforeUnmount(e,{value:t}){ye(e,t)}};function ye(e,t){e.style.display=t?e._vod:"none"}const _e=(0,r.l7)({patchProp:(e,t,n,a,i=!1,s,l,c,d)=>{"class"===t?function(e,t,n){const r=e._vtc;r&&(t=(t?[t,...r]:[...r]).join(" ")),null==t?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}(e,a,i):"style"===t?function(e,t,n){const o=e.style,a=(0,r.HD)(n);if(n&&!a){for(const e in n)u(o,e,n[e]);if(t&&!(0,r.HD)(t))for(const e in t)null==n[e]&&u(o,e,"")}else{const r=o.display;a?t!==n&&(o.cssText=n):t&&e.removeAttribute("style"),"_vod"in e&&(o.display=r)}}(e,n,a):(0,r.F7)(t)?(0,r.tR)(t)||function(e,t,n,a,i=null){const s=e._vei||(e._vei={}),l=s[t];if(a&&l)l.value=a;else{const[n,c]=function(e){let t;if(_.test(e)){let n;for(t={};n=e.match(_);)e=e.slice(0,e.length-n[0].length),t[n[0].toLowerCase()]=!0}return[(0,r.rs)(e.slice(2)),t]}(t);if(a){const l=s[t]=function(e,t){const n=e=>{const a=e.timeStamp||f();(m||a>=n.attached-1)&&(0,o.$d)(function(e,t){if((0,r.kJ)(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map((e=>t=>!t._stopped&&e&&e(t)))}return t}(e,n.value),t,5,[e])};return n.value=e,n.attached=g||(b.then(v),g=f()),n}(a,i);y(e,n,l,c)}else l&&(function(e,t,n,r){e.removeEventListener(t,n,r)}(e,n,l,c),s[t]=void 0)}}(e,t,0,a,l):("."===t[0]?(t=t.slice(1),1):"^"===t[0]?(t=t.slice(1),0):function(e,t,n,o){return o?"innerHTML"===t||"textContent"===t||!!(t in e&&k.test(t)&&(0,r.mf)(n)):"spellcheck"!==t&&"draggable"!==t&&("form"!==t&&(("list"!==t||"INPUT"!==e.tagName)&&(("type"!==t||"TEXTAREA"!==e.tagName)&&((!k.test(t)||!(0,r.HD)(n))&&t in e))))}(e,t,a,i))?function(e,t,n,o,a,i,s){if("innerHTML"===t||"textContent"===t)return o&&s(o,a,i),void(e[t]=null==n?"":n);if("value"===t&&"PROGRESS"!==e.tagName&&!e.tagName.includes("-")){e._value=n;const r=null==n?"":n;return e.value===r&&"OPTION"!==e.tagName||(e.value=r),void(null==n&&e.removeAttribute(t))}if(""===n||null==n){const o=typeof e[t];if("boolean"===o)return void(e[t]=(0,r.yA)(n));if(null==n&&"string"===o)return e[t]="",void e.removeAttribute(t);if("number"===o){try{e[t]=0}catch(e){}return void e.removeAttribute(t)}}try{e[t]=n}catch(e){}}(e,t,a,s,l,c,d):("true-value"===t?e._trueValue=a:"false-value"===t&&(e._falseValue=a),function(e,t,n,o,a){if(o&&t.startsWith("xlink:"))null==n?e.removeAttributeNS(h,t.slice(6,t.length)):e.setAttributeNS(h,t,n);else{const o=(0,r.Pq)(t);null==n||o&&!(0,r.yA)(n)?e.removeAttribute(t):e.setAttribute(t,o?"":n)}}(e,t,a,i))}},l);let ke,we=!1;function xe(){return ke||(ke=(0,o.Us)(_e))}function Ae(){return ke=we?ke:(0,o.Eo)(_e),we=!0,ke}const Ce=(...e)=>{xe().render(...e)},Se=(...e)=>{Ae().hydrate(...e)},Ee=(...e)=>{const t=xe().createApp(...e),{mount:n}=t;return t.mount=e=>{const o=Oe(e);if(!o)return;const a=t._component;(0,r.mf)(a)||a.render||a.template||(a.template=o.innerHTML),o.innerHTML="";const i=n(o,!1,o instanceof SVGElement);return o instanceof Element&&(o.removeAttribute("v-cloak"),o.setAttribute("data-v-app","")),i},t},Te=(...e)=>{const t=Ae().createApp(...e),{mount:n}=t;return t.mount=e=>{const t=Oe(e);if(t)return n(t,!0,t instanceof SVGElement)},t};function Oe(e){return(0,r.HD)(e)?document.querySelector(e):e}let Pe=!1;const De=()=>{Pe||(Pe=!0,re.getSSRProps=({value:e})=>({value:e}),ie.getSSRProps=({value:e},t)=>{if(t.props&&(0,r.WV)(t.props.value,e))return{checked:!0}},oe.getSSRProps=({value:e},t)=>{if((0,r.kJ)(e)){if(t.props&&(0,r.hq)(e,t.props.value)>-1)return{checked:!0}}else if((0,r.DM)(e)){if(t.props&&e.has(t.props.value))return{checked:!0}}else if(e)return{checked:!0}},ve.getSSRProps=({value:e})=>{if(!e)return{style:{display:"none"}}})}},3577:(e,t,n)=>{"use strict";function r(e,t){const n=Object.create(null),r=e.split(",");for(let e=0;e!!n[e.toLowerCase()]:e=>!!n[e]}n.d(t,{C_:()=>d,DM:()=>P,E9:()=>te,F7:()=>w,Gg:()=>H,HD:()=>R,He:()=>Q,Kn:()=>M,NO:()=>_,Nj:()=>K,Od:()=>C,PO:()=>B,Pq:()=>a,RI:()=>E,S0:()=>q,W7:()=>$,WV:()=>h,Z6:()=>v,_A:()=>z,_N:()=>O,aU:()=>X,dG:()=>y,e1:()=>o,fY:()=>r,hR:()=>Y,hq:()=>f,ir:()=>Z,j5:()=>s,kC:()=>J,kJ:()=>T,kT:()=>b,l7:()=>A,mf:()=>I,rs:()=>G,tI:()=>F,tR:()=>x,vs:()=>p,yA:()=>i,yk:()=>L,zw:()=>m});const o=r("Infinity,undefined,NaN,isFinite,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,BigInt"),a=r("itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly");function i(e){return!!e||""===e}function s(e){if(T(e)){const t={};for(let n=0;n{if(e){const n=e.split(c);n.length>1&&(t[n[0].trim()]=n[1].trim())}})),t}function d(e){let t="";if(R(e))t=e;else if(T(e))for(let n=0;nh(e,t)))}const m=e=>R(e)?e:null==e?"":T(e)||M(e)&&(e.toString===N||!I(e.toString))?JSON.stringify(e,g,2):String(e),g=(e,t)=>t&&t.__v_isRef?g(e,t.value):O(t)?{[`Map(${t.size})`]:[...t.entries()].reduce(((e,[t,n])=>(e[`${t} =>`]=n,e)),{})}:P(t)?{[`Set(${t.size})`]:[...t.values()]}:!M(t)||T(t)||B(t)?t:String(t),b={},v=[],y=()=>{},_=()=>!1,k=/^on[^a-z]/,w=e=>k.test(e),x=e=>e.startsWith("onUpdate:"),A=Object.assign,C=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},S=Object.prototype.hasOwnProperty,E=(e,t)=>S.call(e,t),T=Array.isArray,O=e=>"[object Map]"===j(e),P=e=>"[object Set]"===j(e),D=e=>e instanceof Date,I=e=>"function"==typeof e,R=e=>"string"==typeof e,L=e=>"symbol"==typeof e,M=e=>null!==e&&"object"==typeof e,F=e=>M(e)&&I(e.then)&&I(e.catch),N=Object.prototype.toString,j=e=>N.call(e),$=e=>j(e).slice(8,-1),B=e=>"[object Object]"===j(e),q=e=>R(e)&&"NaN"!==e&&"-"!==e[0]&&""+parseInt(e,10)===e,H=r(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),U=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},V=/-(\w)/g,z=U((e=>e.replace(V,((e,t)=>t?t.toUpperCase():"")))),W=/\B([A-Z])/g,G=U((e=>e.replace(W,"-$1").toLowerCase())),J=U((e=>e.charAt(0).toUpperCase()+e.slice(1))),Y=U((e=>e?`on${J(e)}`:"")),X=(e,t)=>!Object.is(e,t),Z=(e,t)=>{for(let n=0;n{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,value:n})},Q=e=>{const t=parseFloat(e);return isNaN(t)?e:t};let ee;const te=()=>ee||(ee="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:"undefined"!=typeof window?window:void 0!==n.g?n.g:{})},110:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>s});var r=n(7537),o=n.n(r),a=n(3645),i=n.n(a)()(o());i.push([e.id,'.tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{position:relative;background-color:#333;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;white-space:normal;outline:0;transition-property:transform,visibility,opacity}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-7px;left:0;border-width:8px 8px 0;border-top-color:initial;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-7px;left:0;border-width:0 8px 8px;border-bottom-color:initial;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-width:8px 0 8px 8px;border-left-color:initial;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-7px;border-width:8px 8px 8px 0;border-right-color:initial;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{width:16px;height:16px;color:#333}.tippy-arrow:before{content:"";position:absolute;border-color:transparent;border-style:solid}.tippy-content{position:relative;padding:5px 9px;z-index:1}',"",{version:3,sources:["webpack://./node_modules/tippy.js/dist/tippy.css"],names:[],mappings:"AAAA,mDAAmD,SAAS,CAAC,kBAAkB,4BAA4B,CAAC,WAAW,iBAAiB,CAAC,qBAAqB,CAAC,UAAU,CAAC,iBAAiB,CAAC,cAAc,CAAC,eAAe,CAAC,kBAAkB,CAAC,SAAS,CAAC,gDAAgD,CAAC,6CAA6C,QAAQ,CAAC,oDAAoD,WAAW,CAAC,MAAM,CAAC,sBAAsB,CAAC,wBAAwB,CAAC,2BAA2B,CAAC,gDAAgD,KAAK,CAAC,uDAAuD,QAAQ,CAAC,MAAM,CAAC,sBAAsB,CAAC,2BAA2B,CAAC,8BAA8B,CAAC,8CAA8C,OAAO,CAAC,qDAAqD,0BAA0B,CAAC,yBAAyB,CAAC,UAAU,CAAC,4BAA4B,CAAC,+CAA+C,MAAM,CAAC,sDAAsD,SAAS,CAAC,0BAA0B,CAAC,0BAA0B,CAAC,6BAA6B,CAAC,6CAA6C,yDAAyD,CAAC,aAAa,UAAU,CAAC,WAAW,CAAC,UAAU,CAAC,oBAAoB,UAAU,CAAC,iBAAiB,CAAC,wBAAwB,CAAC,kBAAkB,CAAC,eAAe,iBAAiB,CAAC,eAAe,CAAC,SAAS",sourcesContent:['.tippy-box[data-animation=fade][data-state=hidden]{opacity:0}[data-tippy-root]{max-width:calc(100vw - 10px)}.tippy-box{position:relative;background-color:#333;color:#fff;border-radius:4px;font-size:14px;line-height:1.4;white-space:normal;outline:0;transition-property:transform,visibility,opacity}.tippy-box[data-placement^=top]>.tippy-arrow{bottom:0}.tippy-box[data-placement^=top]>.tippy-arrow:before{bottom:-7px;left:0;border-width:8px 8px 0;border-top-color:initial;transform-origin:center top}.tippy-box[data-placement^=bottom]>.tippy-arrow{top:0}.tippy-box[data-placement^=bottom]>.tippy-arrow:before{top:-7px;left:0;border-width:0 8px 8px;border-bottom-color:initial;transform-origin:center bottom}.tippy-box[data-placement^=left]>.tippy-arrow{right:0}.tippy-box[data-placement^=left]>.tippy-arrow:before{border-width:8px 0 8px 8px;border-left-color:initial;right:-7px;transform-origin:center left}.tippy-box[data-placement^=right]>.tippy-arrow{left:0}.tippy-box[data-placement^=right]>.tippy-arrow:before{left:-7px;border-width:8px 8px 8px 0;border-right-color:initial;transform-origin:center right}.tippy-box[data-inertia][data-state=visible]{transition-timing-function:cubic-bezier(.54,1.5,.38,1.11)}.tippy-arrow{width:16px;height:16px;color:#333}.tippy-arrow:before{content:"";position:absolute;border-color:transparent;border-style:solid}.tippy-content{position:relative;padding:5px 9px;z-index:1}'],sourceRoot:""}]);const s=i},2588:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>s});var r=n(7537),o=n.n(r),a=n(3645),i=n.n(a)()(o());i.push([e.id,".tippy-box[data-theme~=light]{color:#26323d;box-shadow:0 0 20px 4px rgba(154,161,177,.15),0 4px 80px -8px rgba(36,40,47,.25),0 4px 4px -2px rgba(91,94,105,.15);background-color:#fff}.tippy-box[data-theme~=light][data-placement^=top]>.tippy-arrow:before{border-top-color:#fff}.tippy-box[data-theme~=light][data-placement^=bottom]>.tippy-arrow:before{border-bottom-color:#fff}.tippy-box[data-theme~=light][data-placement^=left]>.tippy-arrow:before{border-left-color:#fff}.tippy-box[data-theme~=light][data-placement^=right]>.tippy-arrow:before{border-right-color:#fff}.tippy-box[data-theme~=light]>.tippy-backdrop{background-color:#fff}.tippy-box[data-theme~=light]>.tippy-svg-arrow{fill:#fff}","",{version:3,sources:["webpack://./node_modules/tippy.js/themes/light.css"],names:[],mappings:"AAAA,8BAA8B,aAAa,CAAC,mHAAmH,CAAC,qBAAqB,CAAC,uEAAuE,qBAAqB,CAAC,0EAA0E,wBAAwB,CAAC,wEAAwE,sBAAsB,CAAC,yEAAyE,uBAAuB,CAAC,8CAA8C,qBAAqB,CAAC,+CAA+C,SAAS",sourcesContent:[".tippy-box[data-theme~=light]{color:#26323d;box-shadow:0 0 20px 4px rgba(154,161,177,.15),0 4px 80px -8px rgba(36,40,47,.25),0 4px 4px -2px rgba(91,94,105,.15);background-color:#fff}.tippy-box[data-theme~=light][data-placement^=top]>.tippy-arrow:before{border-top-color:#fff}.tippy-box[data-theme~=light][data-placement^=bottom]>.tippy-arrow:before{border-bottom-color:#fff}.tippy-box[data-theme~=light][data-placement^=left]>.tippy-arrow:before{border-left-color:#fff}.tippy-box[data-theme~=light][data-placement^=right]>.tippy-arrow:before{border-right-color:#fff}.tippy-box[data-theme~=light]>.tippy-backdrop{background-color:#fff}.tippy-box[data-theme~=light]>.tippy-svg-arrow{fill:#fff}"],sourceRoot:""}]);const s=i},3232:(e,t,n)=>{"use strict";n.r(t),n.d(t,{default:()=>s});var r=n(7537),o=n.n(r),a=n(3645),i=n.n(a)()(o());i.push([e.id,"\n.diffset-left {\n width: 48%;\n}\n.diffset-left .ins,\n.diffset-left ins {\n display: none !important;\n}\n.diffset-right {\n width: 48%;\n}\n.diffset-right .del,\n.diffset-right del {\n display: none !important;\n}\n","",{version:3,sources:["webpack://./peachjam/js/components/DocDiffs/DiffContent.vue"],names:[],mappings:";AAwCA;EACE,UAAU;AACZ;AACA;;EAEE,wBAAwB;AAC1B;AAEA;EACE,UAAU;AACZ;AACA;;EAEE,wBAAwB;AAC1B",sourcesContent:['\n\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"\\n.card-header[data-v-63c9ac08] {\\n background-color: #ffdf80;\\n font-family: var(--bs-body-font-family);\\n}\\n.card-body[data-v-63c9ac08] {\\n background-color: #fff6da;\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./peachjam/js/components/DocDiffs/ProvisionDiffInline.vue\"],\"names\":[],\"mappings\":\";AA4KA;EACE,yBAAyB;EACzB,uCAAuC;AACzC;AAEA;EACE,yBAAyB;AAC3B\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"\\n.doc-search {\\n display: flex;\\n flex-direction: column;\\n height: 100%;\\n padding: 1rem;\\n}\\n.doc-search__results {\\n flex: 1 1 auto;\\n overflow-y: auto;\\n height: 0;\\n}\\n.doc-search__results .snippet-card:focus {\\n border-color: var(--bs-primary);\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./peachjam/js/components/DocumentSearch/index.vue\"],\"names\":[],\"mappings\":\";AA4IA;EACE,aAAa;EACb,sBAAsB;EACtB,YAAY;EACZ,aAAa;AACf;AAEA;EACE,cAAc;EACd,gBAAgB;EAChB,SAAS;AACX;AAEA;EACE,+BAA+B;AACjC\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"\\n.facets-scrollable[data-v-32034ea4] {\\n max-height: 25vh;\\n overflow-y: auto;\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./peachjam/js/components/FilterFacets/SingleFacet.vue\"],\"names\":[],\"mappings\":\";AAoKA;EACE,gBAAgB;EAChB,gBAAgB;AAClB\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"\\n.dropdown-menu .dropdown-item[data-v-10e31a92] {\\n padding-left: 2.5rem;\\n padding-right: 2.5rem;\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./peachjam/js/components/FindDocuments/AdvancedSearchFields.vue\"],\"names\":[],\"mappings\":\";AAgKA;EACE,oBAAoB;EACpB,qBAAqB;AACvB\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"\\n.mobile-side-drawer__mobile-view[data-v-6caa891a] {\\n position: fixed;\\n top: 0;\\n left: 0;\\n height: 100%;\\n width: 100%;\\n z-index: 99;\\n visibility: hidden;\\n transition: visibility 300ms ease-in-out;\\n}\\n.mobile-side-drawer__mobile-view__content[data-v-6caa891a] {\\n width: 100%;\\n height: 100%;\\n position: relative;\\n}\\n.mobile-side-drawer__mobile-view__content .slot[data-v-6caa891a] {\\n width: 80%;\\n height: 100%;\\n transition: transform 300ms ease-in-out;\\n transform: translateX(-100%);\\n overflow: auto;\\n}\\n.mobile-side-drawer__mobile-view__content .overlay[data-v-6caa891a] {\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n background-color: rgba(0, 0, 0, 0.5);\\n transition: opacity 300ms ease-in-out;\\n opacity: 0;\\n}\\n.mobile-side-drawer__mobile-view.active[data-v-6caa891a] {\\n visibility: visible;\\n}\\n.mobile-side-drawer__mobile-view.active .slot[data-v-6caa891a] {\\n transform: translateX(0);\\n}\\n.mobile-side-drawer__mobile-view.active .overlay[data-v-6caa891a] {\\n opacity: 1;\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./peachjam/js/components/FindDocuments/MobileSideDrawer.vue\"],\"names\":[],\"mappings\":\";AAiCA;EACE,eAAe;EACf,MAAM;EACN,OAAO;EACP,YAAY;EACZ,WAAW;EACX,WAAW;EACX,kBAAkB;EAClB,wCAAwC;AAC1C;AAEA;EACE,WAAW;EACX,YAAY;EACZ,kBAAkB;AACpB;AAEA;EACE,UAAU;EACV,YAAY;EACZ,uCAAuC;EACvC,4BAA4B;EAC5B,cAAc;AAChB;AAEA;EACE,kBAAkB;EAClB,MAAM;EACN,OAAO;EACP,WAAW;EACX,YAAY;EACZ,oCAAoC;EACpC,qCAAqC;EACrC,UAAU;AACZ;AAEA;EACE,mBAAmB;AACrB;AAEA;EACE,wBAAwB;AAC1B;AACA;EACE,UAAU;AACZ\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"\\n.hit mark {\\n font-weight: bold;\\n padding: 0px;\\n color: inherit;\\n}\\n.snippet {\\n line-height: 1.3;\\n word-break: break-word;\\n}\\n.hit .explanation {\\n max-height: 50vh;\\n overflow-y: auto;\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./peachjam/js/components/FindDocuments/SearchResult.vue\"],\"names\":[],\"mappings\":\";AAoKA;EACE,iBAAiB;EACjB,YAAY;EACZ,cAAc;AAChB;AACA;EACE,gBAAgB;EAChB,sBAAsB;AACxB;AACA;EACE,gBAAgB;EAChB,gBAAgB;AAClB\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"\\n.overlay[data-v-6963ae4d] {\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n background-color: rgba(0, 0, 0, 0.2);\\n z-index: 9;\\n}\\n.sort-body[data-v-6963ae4d] {\\n display: flex;\\n justify-content: space-between;\\n}\\n@media screen and (max-width: 400px) {\\n.sort-body[data-v-6963ae4d] {\\n flex-direction: column;\\n}\\n.sort__inner[data-v-6963ae4d] {\\n margin-top: 10px;\\n}\\n}\\n@media screen and (max-width: 992px) {\\n.filter-facet-title[data-v-6963ae4d] {\\n position: absolute;\\n margin: auto;\\n left: 0;\\n right: 0;\\n width: 40px;\\n}\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./peachjam/js/components/FindDocuments/index.vue\"],\"names\":[],\"mappings\":\";AA4wBA;EACE,kBAAkB;EAClB,MAAM;EACN,OAAO;EACP,WAAW;EACX,YAAY;EACZ,oCAAoC;EACpC,UAAU;AACZ;AAEA;EACE,aAAa;EACb,8BAA8B;AAChC;AAEA;AACE;IACE,sBAAsB;AACxB;AACA;IACE,gBAAgB;AAClB;AACF;AAEA;AACG;IACC,kBAAkB;IAClB,YAAY;IACZ,OAAO;IACP,QAAQ;IACR,WAAW;AACb;AACF\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \"\\n.bi-chat-left[data-v-45a14ac2] {\\n text-align: center;\\n position: relative;\\n z-index: 9;\\n}\\n@media screen and (max-width: 992px) {\\n.card[data-v-45a14ac2] {\\n position: fixed;\\n bottom: 0;\\n left: 0;\\n width: 100%;\\n transform: translateY(100%);\\n transition: transform ease-in-out 300ms;\\n z-index: 9;\\n}\\nla-gutter-item[active][data-v-45a14ac2] {\\n z-index: 9;\\n}\\nla-gutter-item[active] .card[data-v-45a14ac2] {\\n transform: translateY(0);\\n}\\n\\n /*So content is above To the top element*/\\n.card .card-body[data-v-45a14ac2] {\\n padding-bottom: 40px;\\n}\\n}\\n\", \"\",{\"version\":3,\"sources\":[\"webpack://./peachjam/js/components/RelationshipEnrichment/RelationshipEnrichment.vue\"],\"names\":[],\"mappings\":\";AA4LA;EACE,kBAAkB;EAClB,kBAAkB;EAClB,UAAU;AACZ;AAEA;AACE;IACE,eAAe;IACf,SAAS;IACT,OAAO;IACP,WAAW;IACX,2BAA2B;IAC3B,uCAAuC;IACvC,UAAU;AACZ;AAEA;IACE,UAAU;AACZ;AAEA;IACE,wBAAwB;AAC1B;;EAEA,yCAAyC;AACzC;IACE,oBAAoB;AACtB;AACF\",\"sourcesContent\":[\"\\n\\n\\n\\n\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \":root{--vs-colors--lightest:rgba(60,60,60,0.26);--vs-colors--light:rgba(60,60,60,0.5);--vs-colors--dark:#333;--vs-colors--darkest:rgba(0,0,0,0.15);--vs-search-input-color:inherit;--vs-search-input-placeholder-color:inherit;--vs-font-size:1rem;--vs-line-height:1.4;--vs-state-disabled-bg:#f8f8f8;--vs-state-disabled-color:var(--vs-colors--light);--vs-state-disabled-controls-color:var(--vs-colors--light);--vs-state-disabled-cursor:not-allowed;--vs-border-color:var(--vs-colors--lightest);--vs-border-width:1px;--vs-border-style:solid;--vs-border-radius:4px;--vs-actions-padding:4px 6px 0 3px;--vs-controls-color:var(--vs-colors--light);--vs-controls-size:1;--vs-controls--deselect-text-shadow:0 1px 0 #fff;--vs-selected-bg:#f0f0f0;--vs-selected-color:var(--vs-colors--dark);--vs-selected-border-color:var(--vs-border-color);--vs-selected-border-style:var(--vs-border-style);--vs-selected-border-width:var(--vs-border-width);--vs-dropdown-bg:#fff;--vs-dropdown-color:inherit;--vs-dropdown-z-index:1000;--vs-dropdown-min-width:160px;--vs-dropdown-max-height:350px;--vs-dropdown-box-shadow:0px 3px 6px 0px var(--vs-colors--darkest);--vs-dropdown-option-bg:#000;--vs-dropdown-option-color:var(--vs-dropdown-color);--vs-dropdown-option-padding:3px 20px;--vs-dropdown-option--active-bg:#5897fb;--vs-dropdown-option--active-color:#fff;--vs-dropdown-option--deselect-bg:#fb5858;--vs-dropdown-option--deselect-color:#fff;--vs-transition-timing-function:cubic-bezier(1,-0.115,0.975,0.855);--vs-transition-duration:150ms}.v-select{font-family:inherit;position:relative}.v-select,.v-select *{box-sizing:border-box}:root{--vs-transition-timing-function:cubic-bezier(1,0.5,0.8,1);--vs-transition-duration:0.15s}@-webkit-keyframes vSelectSpinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes vSelectSpinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.vs__fade-enter-active,.vs__fade-leave-active{pointer-events:none;transition:opacity var(--vs-transition-duration) var(--vs-transition-timing-function)}.vs__fade-enter,.vs__fade-leave-to{opacity:0}:root{--vs-disabled-bg:var(--vs-state-disabled-bg);--vs-disabled-color:var(--vs-state-disabled-color);--vs-disabled-cursor:var(--vs-state-disabled-cursor)}.vs--disabled .vs__clear,.vs--disabled .vs__dropdown-toggle,.vs--disabled .vs__open-indicator,.vs--disabled .vs__search,.vs--disabled .vs__selected{background-color:var(--vs-disabled-bg);cursor:var(--vs-disabled-cursor)}.v-select[dir=rtl] .vs__actions{padding:0 3px 0 6px}.v-select[dir=rtl] .vs__clear{margin-left:6px;margin-right:0}.v-select[dir=rtl] .vs__deselect{margin-left:0;margin-right:2px}.v-select[dir=rtl] .vs__dropdown-menu{text-align:right}.vs__dropdown-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:var(--vs-border-width) var(--vs-border-style) var(--vs-border-color);border-radius:var(--vs-border-radius);display:flex;padding:0 0 4px;white-space:normal}.vs__selected-options{display:flex;flex-basis:100%;flex-grow:1;flex-wrap:wrap;padding:0 2px;position:relative}.vs__actions{align-items:center;display:flex;padding:var(--vs-actions-padding)}.vs--searchable .vs__dropdown-toggle{cursor:text}.vs--unsearchable .vs__dropdown-toggle{cursor:pointer}.vs--open .vs__dropdown-toggle{border-bottom-color:transparent;border-bottom-left-radius:0;border-bottom-right-radius:0}.vs__open-indicator{fill:var(--vs-controls-color);transform:scale(var(--vs-controls-size));transition:transform var(--vs-transition-duration) var(--vs-transition-timing-function);transition-timing-function:var(--vs-transition-timing-function)}.vs--open .vs__open-indicator{transform:rotate(180deg) scale(var(--vs-controls-size))}.vs--loading .vs__open-indicator{opacity:0}.vs__clear{fill:var(--vs-controls-color);background-color:transparent;border:0;cursor:pointer;margin-right:8px;padding:0}.vs__dropdown-menu{background:var(--vs-dropdown-bg);border:var(--vs-border-width) var(--vs-border-style) var(--vs-border-color);border-radius:0 0 var(--vs-border-radius) var(--vs-border-radius);border-top-style:none;box-shadow:var(--vs-dropdown-box-shadow);box-sizing:border-box;color:var(--vs-dropdown-color);display:block;left:0;list-style:none;margin:0;max-height:var(--vs-dropdown-max-height);min-width:var(--vs-dropdown-min-width);overflow-y:auto;padding:5px 0;position:absolute;text-align:left;top:calc(100% - var(--vs-border-width));width:100%;z-index:var(--vs-dropdown-z-index)}.vs__no-options{text-align:center}.vs__dropdown-option{clear:both;color:var(--vs-dropdown-option-color);cursor:pointer;display:block;line-height:1.42857143;padding:var(--vs-dropdown-option-padding);white-space:nowrap}.vs__dropdown-option--highlight{background:var(--vs-dropdown-option--active-bg);color:var(--vs-dropdown-option--active-color)}.vs__dropdown-option--deselect{background:var(--vs-dropdown-option--deselect-bg);color:var(--vs-dropdown-option--deselect-color)}.vs__dropdown-option--disabled{background:var(--vs-state-disabled-bg);color:var(--vs-state-disabled-color);cursor:var(--vs-state-disabled-cursor)}.vs__selected{align-items:center;background-color:var(--vs-selected-bg);border:var(--vs-selected-border-width) var(--vs-selected-border-style) var(--vs-selected-border-color);border-radius:var(--vs-border-radius);color:var(--vs-selected-color);display:flex;line-height:var(--vs-line-height);margin:4px 2px 0;padding:0 .25em;z-index:0}.vs__deselect{fill:var(--vs-controls-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;cursor:pointer;display:inline-flex;margin-left:4px;padding:0;text-shadow:var(--vs-controls--deselect-text-shadow)}.vs--single .vs__selected{background-color:transparent;border-color:transparent}.vs--single.vs--loading .vs__selected,.vs--single.vs--open .vs__selected{opacity:.4;position:absolute}.vs--single.vs--searching .vs__selected{display:none}.vs__search::-webkit-search-cancel-button{display:none}.vs__search::-ms-clear,.vs__search::-webkit-search-decoration,.vs__search::-webkit-search-results-button,.vs__search::-webkit-search-results-decoration{display:none}.vs__search,.vs__search:focus{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:1px solid transparent;border-left:none;box-shadow:none;color:var(--vs-search-input-color);flex-grow:1;font-size:var(--vs-font-size);line-height:var(--vs-line-height);margin:4px 0 0;max-width:100%;outline:none;padding:0 7px;width:0;z-index:1}.vs__search::-moz-placeholder{color:var(--vs-search-input-placeholder-color)}.vs__search:-ms-input-placeholder{color:var(--vs-search-input-placeholder-color)}.vs__search::placeholder{color:var(--vs-search-input-placeholder-color)}.vs--unsearchable .vs__search{opacity:1}.vs--unsearchable:not(.vs--disabled) .vs__search{cursor:pointer}.vs--single.vs--searching:not(.vs--open):not(.vs--loading) .vs__search{opacity:.2}.vs__spinner{align-self:center;-webkit-animation:vSelectSpinner 1.1s linear infinite;animation:vSelectSpinner 1.1s linear infinite;border:.9em solid hsla(0,0%,39%,.1);border-left-color:rgba(60,60,60,.45);font-size:5px;opacity:0;overflow:hidden;text-indent:-9999em;transform:translateZ(0) scale(var(--vs-controls--spinner-size,var(--vs-controls-size)));transition:opacity .1s}.vs__spinner,.vs__spinner:after{border-radius:50%;height:5em;transform:scale(var(--vs-controls--spinner-size,var(--vs-controls-size)));width:5em}.vs--loading .vs__spinner{opacity:1}\\n\\n/*# sourceMappingURL=vue-select.css.map*/\", \"\",{\"version\":3,\"sources\":[\"webpack://VueSelect/src/css/global/variables.css\",\"webpack://VueSelect/src/css/global/component.css\",\"webpack://VueSelect/src/css/global/animations.css\",\"webpack://VueSelect/src/css/global/states.css\",\"webpack://VueSelect/src/css/modules/dropdown-toggle.css\",\"webpack://VueSelect/src/css/modules/open-indicator.css\",\"webpack://VueSelect/src/css/modules/clear.css\",\"webpack://VueSelect/src/css/modules/dropdown-menu.css\",\"webpack://VueSelect/src/css/modules/dropdown-option.css\",\"webpack://VueSelect/src/css/modules/selected.css\",\"webpack://VueSelect/src/css/modules/search-input.css\",\"webpack://VueSelect/src/css/modules/spinner.css\",\"webpack://./node_modules/vue-select/dist/vue-select.css\"],\"names\":[],\"mappings\":\"AAAA,MACI,yCAA6C,CAC7C,qCAAyC,CACzC,sBAAuB,CACvB,qCAAyC,CAGzC,+BAAgC,CAChC,2CAA4C,CAG5C,mBAAoB,CACpB,oBAAqB,CAGrB,8BAA0C,CAC1C,iDAAkD,CAClD,0DAA2D,CAC3D,sCAAuC,CAGvC,4CAA6C,CAC7C,qBAAsB,CACtB,uBAAwB,CACxB,sBAAuB,CAGvB,kCAAmC,CAGnC,2CAA4C,CAC5C,oBAAqB,CACrB,gDAAiD,CAGjD,wBAAyB,CACzB,0CAA2C,CAC3C,iDAAkD,CAClD,iDAAkD,CAClD,iDAAkD,CAGlD,qBAAsB,CACtB,2BAA4B,CAC5B,0BAA2B,CAC3B,6BAA8B,CAC9B,8BAA+B,CAC/B,kEAAmE,CAGnE,4BAA6B,CAC7B,mDAAoD,CACpD,qCAAsC,CAGtC,uCAAwC,CACxC,uCAAwC,CAGxC,yCAA0C,CAC1C,yCAA0C,CAG1C,kEAAsE,CACtE,8BACJ,CCjEA,UAEE,mBAAoB,CADpB,iBAEF,CAEA,sBAEE,qBACF,CCRA,MACI,yDAA6D,CAC7D,8BACJ,CAGA,kCACI,GACI,sBACJ,CACA,GACI,uBACJ,CACJ,CAEA,0BACI,GACI,sBACJ,CACA,GACI,uBACJ,CACJ,CAGA,8CAEI,mBAAoB,CACpB,qFAEJ,CACA,mCAEI,SACJ,CCvBA,MACI,4CAA6C,CAC7C,kDAAmD,CACnD,oDACJ,CAGI,oJAMI,sCAAuC,CADvC,gCAEJ,CAYA,gCACI,mBACJ,CAEA,8BACI,eAAgB,CAChB,cACJ,CAEA,iCACI,aAAc,CACd,gBACJ,CAEA,sCACI,gBACJ,CCzCJ,qBACI,uBAAgB,CAAhB,oBAAgB,CAAhB,eAAgB,CAGhB,eAAgB,CAChB,2EAA4E,CAC5E,qCAAsC,CAJtC,YAAa,CACb,eAAkB,CAIlB,kBACJ,CAEA,sBACI,YAAa,CACb,eAAgB,CAChB,WAAY,CACZ,cAAe,CACf,aAAc,CACd,iBACJ,CAEA,aAEI,kBAAmB,CADnB,YAAa,CAEb,iCACJ,CAGA,qCACI,WACJ,CACA,uCACI,cACJ,CACA,+BACI,+BAAgC,CAChC,2BAA4B,CAC5B,4BACJ,CCzCA,oBACI,6BAA8B,CAC9B,wCAAyC,CACzC,uFACwC,CACxC,+DACJ,CAIA,8BACI,uDACJ,CAIA,iCACI,SACJ,CCvBA,WACI,6BAA8B,CAG9B,4BAA6B,CAD7B,QAAS,CAET,cAAe,CACf,gBAAiB,CAJjB,SAKJ,CCPA,mBAoBI,gCAAiC,CALjC,2EAA4E,CAE5E,iEAAkE,CADlE,qBAAsB,CAFtB,wCAAyC,CAZzC,qBAAsB,CAmBtB,8BAA+B,CApB/B,aAAc,CAKd,MAAO,CAaP,eAAgB,CAVhB,QAAS,CAET,wCAAyC,CACzC,sCAAuC,CACvC,eAAgB,CALhB,aAAc,CALd,iBAAkB,CAelB,eAAgB,CAbhB,uCAAwC,CAKxC,UAAW,CAHX,kCAeJ,CAEA,gBACI,iBACJ,CC3BA,qBAII,UAAW,CACX,qCAAsC,CAEtC,cAAe,CALf,aAAc,CADd,sBAAuB,CAEvB,yCAA0C,CAG1C,kBAEJ,CAEA,gCACI,+CAAgD,CAChD,6CACJ,CAEA,+BACI,iDAAkD,CAClD,+CACJ,CAEA,+BACI,sCAAuC,CACvC,oCAAqC,CACrC,sCACJ,CCxBA,cAEI,kBAAmB,CACnB,sCAAuC,CACvC,sGACmC,CACnC,qCAAsC,CACtC,8BAA+B,CAN/B,YAAa,CAOb,iCAAkC,CAClC,gBAAuB,CACvB,eAAiB,CACjB,SACJ,CAEA,cAQI,6BAA8B,CAN9B,uBAAgB,CAAhB,oBAAgB,CAAhB,eAAgB,CAKhB,eAAgB,CAFhB,QAAS,CACT,cAAe,CALf,mBAAoB,CAEpB,eAAgB,CAChB,SAAU,CAKV,oDACJ,CAKI,0BACI,4BAA6B,CAC7B,wBACJ,CACA,yEAGI,UAAY,CADZ,iBAEJ,CACA,wCACI,YACJ,CClCJ,0CACI,YACJ,CAEA,wJAII,YACJ,CAEA,8BAGI,uBAAgB,CAAhB,oBAAgB,CAAhB,eAAgB,CAQhB,eAAgB,CAJhB,4BAAiB,CAAjB,gBAAiB,CAKjB,eAAgB,CAVhB,kCAAmC,CAanC,WAAY,CAVZ,6BAA8B,CAD9B,iCAAkC,CAKlC,cAAiB,CAKjB,cAAe,CANf,YAAa,CAEb,aAAc,CAGd,OAAQ,CAGR,SACJ,CAEA,8BACI,8CACJ,CAFA,kCACI,8CACJ,CAFA,yBACI,8CACJ,CAQI,8BACI,SACJ,CACA,iDACI,cACJ,CAKA,uEACI,UACJ,CC1DJ,aACI,iBAAkB,CAWlB,qDAA8C,CAA9C,6CAA8C,CAH9C,mCAA+C,CAA/C,oCAA+C,CAN/C,aAAc,CADd,SAAU,CAGV,eAAgB,CADhB,mBAAoB,CAMpB,uFACoE,CAEpE,sBACJ,CACA,gCAEI,iBAAkB,CAElB,UAAW,CACX,yEAA2E,CAF3E,SAGJ,CAGA,0BACI,SACJ;;ACzBA,wCAAwC\",\"sourcesContent\":[\":root {\\n --vs-colors--lightest: rgba(60, 60, 60, 0.26);\\n --vs-colors--light: rgba(60, 60, 60, 0.5);\\n --vs-colors--dark: #333;\\n --vs-colors--darkest: rgba(0, 0, 0, 0.15);\\n\\n /* Search Input */\\n --vs-search-input-color: inherit;\\n --vs-search-input-placeholder-color: inherit;\\n\\n /* Font */\\n --vs-font-size: 1rem;\\n --vs-line-height: 1.4;\\n\\n /* Disabled State */\\n --vs-state-disabled-bg: rgb(248, 248, 248);\\n --vs-state-disabled-color: var(--vs-colors--light);\\n --vs-state-disabled-controls-color: var(--vs-colors--light);\\n --vs-state-disabled-cursor: not-allowed;\\n\\n /* Borders */\\n --vs-border-color: var(--vs-colors--lightest);\\n --vs-border-width: 1px;\\n --vs-border-style: solid;\\n --vs-border-radius: 4px;\\n\\n /* Actions: house the component controls */\\n --vs-actions-padding: 4px 6px 0 3px;\\n\\n /* Component Controls: Clear, Open Indicator */\\n --vs-controls-color: var(--vs-colors--light);\\n --vs-controls-size: 1;\\n --vs-controls--deselect-text-shadow: 0 1px 0 #fff;\\n\\n /* Selected */\\n --vs-selected-bg: #f0f0f0;\\n --vs-selected-color: var(--vs-colors--dark);\\n --vs-selected-border-color: var(--vs-border-color);\\n --vs-selected-border-style: var(--vs-border-style);\\n --vs-selected-border-width: var(--vs-border-width);\\n\\n /* Dropdown */\\n --vs-dropdown-bg: #fff;\\n --vs-dropdown-color: inherit;\\n --vs-dropdown-z-index: 1000;\\n --vs-dropdown-min-width: 160px;\\n --vs-dropdown-max-height: 350px;\\n --vs-dropdown-box-shadow: 0px 3px 6px 0px var(--vs-colors--darkest);\\n\\n /* Options */\\n --vs-dropdown-option-bg: #000;\\n --vs-dropdown-option-color: var(--vs-dropdown-color);\\n --vs-dropdown-option-padding: 3px 20px;\\n\\n /* Active State */\\n --vs-dropdown-option--active-bg: #5897fb;\\n --vs-dropdown-option--active-color: #fff;\\n\\n /* Deselect State */\\n --vs-dropdown-option--deselect-bg: #fb5858;\\n --vs-dropdown-option--deselect-color: #fff;\\n\\n /* Transitions */\\n --vs-transition-timing-function: cubic-bezier(1, -0.115, 0.975, 0.855);\\n --vs-transition-duration: 150ms;\\n}\\n\",\".v-select {\\n position: relative;\\n font-family: inherit;\\n}\\n\\n.v-select,\\n.v-select * {\\n box-sizing: border-box;\\n}\\n\",\":root {\\n --vs-transition-timing-function: cubic-bezier(1, 0.5, 0.8, 1);\\n --vs-transition-duration: 0.15s;\\n}\\n\\n/* KeyFrames */\\n@-webkit-keyframes vSelectSpinner {\\n 0% {\\n transform: rotate(0deg);\\n }\\n 100% {\\n transform: rotate(360deg);\\n }\\n}\\n\\n@keyframes vSelectSpinner {\\n 0% {\\n transform: rotate(0deg);\\n }\\n 100% {\\n transform: rotate(360deg);\\n }\\n}\\n\\n/* Dropdown Default Transition */\\n.vs__fade-enter-active,\\n.vs__fade-leave-active {\\n pointer-events: none;\\n transition: opacity var(--vs-transition-duration)\\n var(--vs-transition-timing-function);\\n}\\n.vs__fade-enter,\\n.vs__fade-leave-to {\\n opacity: 0;\\n}\\n\",\"/** Component States */\\n\\n/*\\n * Disabled\\n *\\n * When the component is disabled, all interaction\\n * should be prevented. Here we modify the bg color,\\n * and change the cursor displayed on the interactive\\n * components.\\n */\\n\\n:root {\\n --vs-disabled-bg: var(--vs-state-disabled-bg);\\n --vs-disabled-color: var(--vs-state-disabled-color);\\n --vs-disabled-cursor: var(--vs-state-disabled-cursor);\\n}\\n\\n.vs--disabled {\\n .vs__dropdown-toggle,\\n .vs__clear,\\n .vs__search,\\n .vs__selected,\\n .vs__open-indicator {\\n cursor: var(--vs-disabled-cursor);\\n background-color: var(--vs-disabled-bg);\\n }\\n}\\n\\n/*\\n * RTL - Right to Left Support\\n *\\n * Because we're using a flexbox layout, the `dir=\\\"rtl\\\"`\\n * HTML attribute does most of the work for us by\\n * rearranging the child elements visually.\\n */\\n\\n.v-select[dir='rtl'] {\\n .vs__actions {\\n padding: 0 3px 0 6px;\\n }\\n\\n .vs__clear {\\n margin-left: 6px;\\n margin-right: 0;\\n }\\n\\n .vs__deselect {\\n margin-left: 0;\\n margin-right: 2px;\\n }\\n\\n .vs__dropdown-menu {\\n text-align: right;\\n }\\n}\\n\",\"/**\\n Dropdown Toggle\\n\\n The dropdown toggle is the primary wrapper of the component. It\\n has two direct descendants: .vs__selected-options, and .vs__actions.\\n\\n .vs__selected-options holds the .vs__selected's as well as the\\n main search input.\\n\\n .vs__actions holds the clear button and dropdown toggle.\\n */\\n\\n.vs__dropdown-toggle {\\n appearance: none;\\n display: flex;\\n padding: 0 0 4px 0;\\n background: none;\\n border: var(--vs-border-width) var(--vs-border-style) var(--vs-border-color);\\n border-radius: var(--vs-border-radius);\\n white-space: normal;\\n}\\n\\n.vs__selected-options {\\n display: flex;\\n flex-basis: 100%;\\n flex-grow: 1;\\n flex-wrap: wrap;\\n padding: 0 2px;\\n position: relative;\\n}\\n\\n.vs__actions {\\n display: flex;\\n align-items: center;\\n padding: var(--vs-actions-padding);\\n}\\n\\n/* Dropdown Toggle States */\\n.vs--searchable .vs__dropdown-toggle {\\n cursor: text;\\n}\\n.vs--unsearchable .vs__dropdown-toggle {\\n cursor: pointer;\\n}\\n.vs--open .vs__dropdown-toggle {\\n border-bottom-color: transparent;\\n border-bottom-left-radius: 0;\\n border-bottom-right-radius: 0;\\n}\\n\",\"/* Open Indicator */\\n\\n/*\\n The open indicator appears as a down facing\\n caret on the right side of the select.\\n */\\n\\n.vs__open-indicator {\\n fill: var(--vs-controls-color);\\n transform: scale(var(--vs-controls-size));\\n transition: transform var(--vs-transition-duration)\\n var(--vs-transition-timing-function);\\n transition-timing-function: var(--vs-transition-timing-function);\\n}\\n\\n/* Open State */\\n\\n.vs--open .vs__open-indicator {\\n transform: rotate(180deg) scale(var(--vs-controls-size));\\n}\\n\\n/* Loading State */\\n\\n.vs--loading .vs__open-indicator {\\n opacity: 0;\\n}\\n\",\"/* Clear Button */\\n\\n.vs__clear {\\n fill: var(--vs-controls-color);\\n padding: 0;\\n border: 0;\\n background-color: transparent;\\n cursor: pointer;\\n margin-right: 8px;\\n}\\n\",\"/* Dropdown Menu */\\n\\n.vs__dropdown-menu {\\n display: block;\\n box-sizing: border-box;\\n position: absolute;\\n /* calc to ensure the left and right borders of the dropdown appear flush with the toggle. */\\n top: calc(100% - var(--vs-border-width));\\n left: 0;\\n z-index: var(--vs-dropdown-z-index);\\n padding: 5px 0;\\n margin: 0;\\n width: 100%;\\n max-height: var(--vs-dropdown-max-height);\\n min-width: var(--vs-dropdown-min-width);\\n overflow-y: auto;\\n box-shadow: var(--vs-dropdown-box-shadow);\\n border: var(--vs-border-width) var(--vs-border-style) var(--vs-border-color);\\n border-top-style: none;\\n border-radius: 0 0 var(--vs-border-radius) var(--vs-border-radius);\\n text-align: left;\\n list-style: none;\\n background: var(--vs-dropdown-bg);\\n color: var(--vs-dropdown-color);\\n}\\n\\n.vs__no-options {\\n text-align: center;\\n}\\n\",\"/* List Items */\\n.vs__dropdown-option {\\n line-height: 1.42857143; /* Normalize line height */\\n display: block;\\n padding: var(--vs-dropdown-option-padding);\\n clear: both;\\n color: var(--vs-dropdown-option-color); /* Overrides most CSS frameworks */\\n white-space: nowrap;\\n cursor: pointer;\\n}\\n\\n.vs__dropdown-option--highlight {\\n background: var(--vs-dropdown-option--active-bg);\\n color: var(--vs-dropdown-option--active-color);\\n}\\n\\n.vs__dropdown-option--deselect {\\n background: var(--vs-dropdown-option--deselect-bg);\\n color: var(--vs-dropdown-option--deselect-color);\\n}\\n\\n.vs__dropdown-option--disabled {\\n background: var(--vs-state-disabled-bg);\\n color: var(--vs-state-disabled-color);\\n cursor: var(--vs-state-disabled-cursor);\\n}\\n\",\"/* Selected Tags */\\n.vs__selected {\\n display: flex;\\n align-items: center;\\n background-color: var(--vs-selected-bg);\\n border: var(--vs-selected-border-width) var(--vs-selected-border-style)\\n var(--vs-selected-border-color);\\n border-radius: var(--vs-border-radius);\\n color: var(--vs-selected-color);\\n line-height: var(--vs-line-height);\\n margin: 4px 2px 0px 2px;\\n padding: 0 0.25em;\\n z-index: 0;\\n}\\n\\n.vs__deselect {\\n display: inline-flex;\\n appearance: none;\\n margin-left: 4px;\\n padding: 0;\\n border: 0;\\n cursor: pointer;\\n background: none;\\n fill: var(--vs-controls-color);\\n text-shadow: var(--vs-controls--deselect-text-shadow);\\n}\\n\\n/* States */\\n\\n.vs--single {\\n .vs__selected {\\n background-color: transparent;\\n border-color: transparent;\\n }\\n &.vs--open .vs__selected,\\n &.vs--loading .vs__selected {\\n position: absolute;\\n opacity: 0.4;\\n }\\n &.vs--searching .vs__selected {\\n display: none;\\n }\\n}\\n\",\"/* Search Input */\\n\\n/**\\n * Super weird bug... If this declaration is grouped\\n * below, the cancel button will still appear in chrome.\\n * If it's up here on it's own, it'll hide it.\\n */\\n.vs__search::-webkit-search-cancel-button {\\n display: none;\\n}\\n\\n.vs__search::-webkit-search-decoration,\\n.vs__search::-webkit-search-results-button,\\n.vs__search::-webkit-search-results-decoration,\\n.vs__search::-ms-clear {\\n display: none;\\n}\\n\\n.vs__search,\\n.vs__search:focus {\\n color: var(--vs-search-input-color);\\n appearance: none;\\n line-height: var(--vs-line-height);\\n font-size: var(--vs-font-size);\\n border: 1px solid transparent;\\n border-left: none;\\n outline: none;\\n margin: 4px 0 0 0;\\n padding: 0 7px;\\n background: none;\\n box-shadow: none;\\n width: 0;\\n max-width: 100%;\\n flex-grow: 1;\\n z-index: 1;\\n}\\n\\n.vs__search::placeholder {\\n color: var(--vs-search-input-placeholder-color);\\n}\\n\\n/**\\n States\\n */\\n\\n/* Unsearchable */\\n.vs--unsearchable {\\n .vs__search {\\n opacity: 1;\\n }\\n &:not(.vs--disabled) .vs__search {\\n cursor: pointer;\\n }\\n}\\n\\n/* Single, when searching but not loading or open */\\n.vs--single.vs--searching:not(.vs--open):not(.vs--loading) {\\n .vs__search {\\n opacity: 0.2;\\n }\\n}\\n\",\"/* Loading Spinner */\\n.vs__spinner {\\n align-self: center;\\n opacity: 0;\\n font-size: 5px;\\n text-indent: -9999em;\\n overflow: hidden;\\n border-top: 0.9em solid rgba(100, 100, 100, 0.1);\\n border-right: 0.9em solid rgba(100, 100, 100, 0.1);\\n border-bottom: 0.9em solid rgba(100, 100, 100, 0.1);\\n border-left: 0.9em solid rgba(60, 60, 60, 0.45);\\n transform: translateZ(0)\\n scale(var(--vs-controls--spinner-size, var(--vs-controls-size)));\\n animation: vSelectSpinner 1.1s infinite linear;\\n transition: opacity 0.1s;\\n}\\n.vs__spinner,\\n.vs__spinner:after {\\n border-radius: 50%;\\n width: 5em;\\n height: 5em;\\n transform: scale(var(--vs-controls--spinner-size, var(--vs-controls-size)));\\n}\\n\\n/* Loading Spinner States */\\n.vs--loading .vs__spinner {\\n opacity: 1;\\n}\\n\",\":root{--vs-colors--lightest:rgba(60,60,60,0.26);--vs-colors--light:rgba(60,60,60,0.5);--vs-colors--dark:#333;--vs-colors--darkest:rgba(0,0,0,0.15);--vs-search-input-color:inherit;--vs-search-input-placeholder-color:inherit;--vs-font-size:1rem;--vs-line-height:1.4;--vs-state-disabled-bg:#f8f8f8;--vs-state-disabled-color:var(--vs-colors--light);--vs-state-disabled-controls-color:var(--vs-colors--light);--vs-state-disabled-cursor:not-allowed;--vs-border-color:var(--vs-colors--lightest);--vs-border-width:1px;--vs-border-style:solid;--vs-border-radius:4px;--vs-actions-padding:4px 6px 0 3px;--vs-controls-color:var(--vs-colors--light);--vs-controls-size:1;--vs-controls--deselect-text-shadow:0 1px 0 #fff;--vs-selected-bg:#f0f0f0;--vs-selected-color:var(--vs-colors--dark);--vs-selected-border-color:var(--vs-border-color);--vs-selected-border-style:var(--vs-border-style);--vs-selected-border-width:var(--vs-border-width);--vs-dropdown-bg:#fff;--vs-dropdown-color:inherit;--vs-dropdown-z-index:1000;--vs-dropdown-min-width:160px;--vs-dropdown-max-height:350px;--vs-dropdown-box-shadow:0px 3px 6px 0px var(--vs-colors--darkest);--vs-dropdown-option-bg:#000;--vs-dropdown-option-color:var(--vs-dropdown-color);--vs-dropdown-option-padding:3px 20px;--vs-dropdown-option--active-bg:#5897fb;--vs-dropdown-option--active-color:#fff;--vs-dropdown-option--deselect-bg:#fb5858;--vs-dropdown-option--deselect-color:#fff;--vs-transition-timing-function:cubic-bezier(1,-0.115,0.975,0.855);--vs-transition-duration:150ms}.v-select{font-family:inherit;position:relative}.v-select,.v-select *{box-sizing:border-box}:root{--vs-transition-timing-function:cubic-bezier(1,0.5,0.8,1);--vs-transition-duration:0.15s}@-webkit-keyframes vSelectSpinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes vSelectSpinner{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.vs__fade-enter-active,.vs__fade-leave-active{pointer-events:none;transition:opacity var(--vs-transition-duration) var(--vs-transition-timing-function)}.vs__fade-enter,.vs__fade-leave-to{opacity:0}:root{--vs-disabled-bg:var(--vs-state-disabled-bg);--vs-disabled-color:var(--vs-state-disabled-color);--vs-disabled-cursor:var(--vs-state-disabled-cursor)}.vs--disabled .vs__clear,.vs--disabled .vs__dropdown-toggle,.vs--disabled .vs__open-indicator,.vs--disabled .vs__search,.vs--disabled .vs__selected{background-color:var(--vs-disabled-bg);cursor:var(--vs-disabled-cursor)}.v-select[dir=rtl] .vs__actions{padding:0 3px 0 6px}.v-select[dir=rtl] .vs__clear{margin-left:6px;margin-right:0}.v-select[dir=rtl] .vs__deselect{margin-left:0;margin-right:2px}.v-select[dir=rtl] .vs__dropdown-menu{text-align:right}.vs__dropdown-toggle{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:var(--vs-border-width) var(--vs-border-style) var(--vs-border-color);border-radius:var(--vs-border-radius);display:flex;padding:0 0 4px;white-space:normal}.vs__selected-options{display:flex;flex-basis:100%;flex-grow:1;flex-wrap:wrap;padding:0 2px;position:relative}.vs__actions{align-items:center;display:flex;padding:var(--vs-actions-padding)}.vs--searchable .vs__dropdown-toggle{cursor:text}.vs--unsearchable .vs__dropdown-toggle{cursor:pointer}.vs--open .vs__dropdown-toggle{border-bottom-color:transparent;border-bottom-left-radius:0;border-bottom-right-radius:0}.vs__open-indicator{fill:var(--vs-controls-color);transform:scale(var(--vs-controls-size));transition:transform var(--vs-transition-duration) var(--vs-transition-timing-function);transition-timing-function:var(--vs-transition-timing-function)}.vs--open .vs__open-indicator{transform:rotate(180deg) scale(var(--vs-controls-size))}.vs--loading .vs__open-indicator{opacity:0}.vs__clear{fill:var(--vs-controls-color);background-color:transparent;border:0;cursor:pointer;margin-right:8px;padding:0}.vs__dropdown-menu{background:var(--vs-dropdown-bg);border:var(--vs-border-width) var(--vs-border-style) var(--vs-border-color);border-radius:0 0 var(--vs-border-radius) var(--vs-border-radius);border-top-style:none;box-shadow:var(--vs-dropdown-box-shadow);box-sizing:border-box;color:var(--vs-dropdown-color);display:block;left:0;list-style:none;margin:0;max-height:var(--vs-dropdown-max-height);min-width:var(--vs-dropdown-min-width);overflow-y:auto;padding:5px 0;position:absolute;text-align:left;top:calc(100% - var(--vs-border-width));width:100%;z-index:var(--vs-dropdown-z-index)}.vs__no-options{text-align:center}.vs__dropdown-option{clear:both;color:var(--vs-dropdown-option-color);cursor:pointer;display:block;line-height:1.42857143;padding:var(--vs-dropdown-option-padding);white-space:nowrap}.vs__dropdown-option--highlight{background:var(--vs-dropdown-option--active-bg);color:var(--vs-dropdown-option--active-color)}.vs__dropdown-option--deselect{background:var(--vs-dropdown-option--deselect-bg);color:var(--vs-dropdown-option--deselect-color)}.vs__dropdown-option--disabled{background:var(--vs-state-disabled-bg);color:var(--vs-state-disabled-color);cursor:var(--vs-state-disabled-cursor)}.vs__selected{align-items:center;background-color:var(--vs-selected-bg);border:var(--vs-selected-border-width) var(--vs-selected-border-style) var(--vs-selected-border-color);border-radius:var(--vs-border-radius);color:var(--vs-selected-color);display:flex;line-height:var(--vs-line-height);margin:4px 2px 0;padding:0 .25em;z-index:0}.vs__deselect{fill:var(--vs-controls-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;cursor:pointer;display:inline-flex;margin-left:4px;padding:0;text-shadow:var(--vs-controls--deselect-text-shadow)}.vs--single .vs__selected{background-color:transparent;border-color:transparent}.vs--single.vs--loading .vs__selected,.vs--single.vs--open .vs__selected{opacity:.4;position:absolute}.vs--single.vs--searching .vs__selected{display:none}.vs__search::-webkit-search-cancel-button{display:none}.vs__search::-ms-clear,.vs__search::-webkit-search-decoration,.vs__search::-webkit-search-results-button,.vs__search::-webkit-search-results-decoration{display:none}.vs__search,.vs__search:focus{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:1px solid transparent;border-left:none;box-shadow:none;color:var(--vs-search-input-color);flex-grow:1;font-size:var(--vs-font-size);line-height:var(--vs-line-height);margin:4px 0 0;max-width:100%;outline:none;padding:0 7px;width:0;z-index:1}.vs__search::-moz-placeholder{color:var(--vs-search-input-placeholder-color)}.vs__search:-ms-input-placeholder{color:var(--vs-search-input-placeholder-color)}.vs__search::placeholder{color:var(--vs-search-input-placeholder-color)}.vs--unsearchable .vs__search{opacity:1}.vs--unsearchable:not(.vs--disabled) .vs__search{cursor:pointer}.vs--single.vs--searching:not(.vs--open):not(.vs--loading) .vs__search{opacity:.2}.vs__spinner{align-self:center;-webkit-animation:vSelectSpinner 1.1s linear infinite;animation:vSelectSpinner 1.1s linear infinite;border:.9em solid hsla(0,0%,39%,.1);border-left-color:rgba(60,60,60,.45);font-size:5px;opacity:0;overflow:hidden;text-indent:-9999em;transform:translateZ(0) scale(var(--vs-controls--spinner-size,var(--vs-controls-size)));transition:opacity .1s}.vs__spinner,.vs__spinner:after{border-radius:50%;height:5em;transform:scale(var(--vs-controls--spinner-size,var(--vs-controls-size)));width:5em}.vs--loading .vs__spinner{opacity:1}\\n\\n/*# sourceMappingURL=vue-select.css.map*/\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = []; // return the list of modules as css string\n\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n\n content += cssWithMappingToString(item);\n\n if (needLayer) {\n content += \"}\";\n }\n\n if (item[2]) {\n content += \"}\";\n }\n\n if (item[4]) {\n content += \"}\";\n }\n\n return content;\n }).join(\"\");\n }; // import a list of modules into the list\n\n\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n\n var alreadyImportedModules = {};\n\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n\n list.push(item);\n }\n };\n\n return list;\n};","\"use strict\";\n\nmodule.exports = function (item) {\n var content = item[1];\n var cssMapping = item[3];\n\n if (!cssMapping) {\n return content;\n }\n\n if (typeof btoa === \"function\") {\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));\n var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n var sourceMapping = \"/*# \".concat(data, \" */\");\n var sourceURLs = cssMapping.sources.map(function (source) {\n return \"/*# sourceURL=\".concat(cssMapping.sourceRoot || \"\").concat(source, \" */\");\n });\n return [content].concat(sourceURLs).concat([sourceMapping]).join(\"\\n\");\n }\n\n return [content].join(\"\\n\");\n};","/**\n * Diff Match and Patch\n * Copyright 2018 The diff-match-patch Authors.\n * https://github.com/google/diff-match-patch\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * @fileoverview Computes the difference between two texts to create a patch.\n * Applies the patch onto another text, allowing for errors.\n * @author fraser@google.com (Neil Fraser)\n */\n\n/**\n * Class containing the diff, match and patch methods.\n * @constructor\n */\nvar diff_match_patch = function() {\n\n // Defaults.\n // Redefine these in your program to override the defaults.\n\n // Number of seconds to map a diff before giving up (0 for infinity).\n this.Diff_Timeout = 1.0;\n // Cost of an empty edit operation in terms of edit characters.\n this.Diff_EditCost = 4;\n // At what point is no match declared (0.0 = perfection, 1.0 = very loose).\n this.Match_Threshold = 0.5;\n // How far to search for a match (0 = exact location, 1000+ = broad match).\n // A match this many characters away from the expected location will add\n // 1.0 to the score (0.0 is a perfect match).\n this.Match_Distance = 1000;\n // When deleting a large block of text (over ~64 characters), how close do\n // the contents have to be to match the expected contents. (0.0 = perfection,\n // 1.0 = very loose). Note that Match_Threshold controls how closely the\n // end points of a delete need to match.\n this.Patch_DeleteThreshold = 0.5;\n // Chunk size for context length.\n this.Patch_Margin = 4;\n\n // The number of bits in an int.\n this.Match_MaxBits = 32;\n};\n\n\n// DIFF FUNCTIONS\n\n\n/**\n * The data structure representing a diff is an array of tuples:\n * [[DIFF_DELETE, 'Hello'], [DIFF_INSERT, 'Goodbye'], [DIFF_EQUAL, ' world.']]\n * which means: delete 'Hello', add 'Goodbye' and keep ' world.'\n */\nvar DIFF_DELETE = -1;\nvar DIFF_INSERT = 1;\nvar DIFF_EQUAL = 0;\n\n/**\n * Class representing one diff tuple.\n * ~Attempts to look like a two-element array (which is what this used to be).~\n * Constructor returns an actual two-element array, to allow destructing @JackuB\n * See https://github.com/JackuB/diff-match-patch/issues/14 for details\n * @param {number} op Operation, one of: DIFF_DELETE, DIFF_INSERT, DIFF_EQUAL.\n * @param {string} text Text to be deleted, inserted, or retained.\n * @constructor\n */\ndiff_match_patch.Diff = function(op, text) {\n return [op, text];\n};\n\n/**\n * Find the differences between two texts. Simplifies the problem by stripping\n * any common prefix or suffix off the texts before diffing.\n * @param {string} text1 Old string to be diffed.\n * @param {string} text2 New string to be diffed.\n * @param {boolean=} opt_checklines Optional speedup flag. If present and false,\n * then don't run a line-level diff first to identify the changed areas.\n * Defaults to true, which does a faster, slightly less optimal diff.\n * @param {number=} opt_deadline Optional time when the diff should be complete\n * by. Used internally for recursive calls. Users should set DiffTimeout\n * instead.\n * @return {!Array.} Array of diff tuples.\n */\ndiff_match_patch.prototype.diff_main = function(text1, text2, opt_checklines,\n opt_deadline) {\n // Set a deadline by which time the diff must be complete.\n if (typeof opt_deadline == 'undefined') {\n if (this.Diff_Timeout <= 0) {\n opt_deadline = Number.MAX_VALUE;\n } else {\n opt_deadline = (new Date).getTime() + this.Diff_Timeout * 1000;\n }\n }\n var deadline = opt_deadline;\n\n // Check for null inputs.\n if (text1 == null || text2 == null) {\n throw new Error('Null input. (diff_main)');\n }\n\n // Check for equality (speedup).\n if (text1 == text2) {\n if (text1) {\n return [new diff_match_patch.Diff(DIFF_EQUAL, text1)];\n }\n return [];\n }\n\n if (typeof opt_checklines == 'undefined') {\n opt_checklines = true;\n }\n var checklines = opt_checklines;\n\n // Trim off common prefix (speedup).\n var commonlength = this.diff_commonPrefix(text1, text2);\n var commonprefix = text1.substring(0, commonlength);\n text1 = text1.substring(commonlength);\n text2 = text2.substring(commonlength);\n\n // Trim off common suffix (speedup).\n commonlength = this.diff_commonSuffix(text1, text2);\n var commonsuffix = text1.substring(text1.length - commonlength);\n text1 = text1.substring(0, text1.length - commonlength);\n text2 = text2.substring(0, text2.length - commonlength);\n\n // Compute the diff on the middle block.\n var diffs = this.diff_compute_(text1, text2, checklines, deadline);\n\n // Restore the prefix and suffix.\n if (commonprefix) {\n diffs.unshift(new diff_match_patch.Diff(DIFF_EQUAL, commonprefix));\n }\n if (commonsuffix) {\n diffs.push(new diff_match_patch.Diff(DIFF_EQUAL, commonsuffix));\n }\n this.diff_cleanupMerge(diffs);\n return diffs;\n};\n\n\n/**\n * Find the differences between two texts. Assumes that the texts do not\n * have any common prefix or suffix.\n * @param {string} text1 Old string to be diffed.\n * @param {string} text2 New string to be diffed.\n * @param {boolean} checklines Speedup flag. If false, then don't run a\n * line-level diff first to identify the changed areas.\n * If true, then run a faster, slightly less optimal diff.\n * @param {number} deadline Time when the diff should be complete by.\n * @return {!Array.} Array of diff tuples.\n * @private\n */\ndiff_match_patch.prototype.diff_compute_ = function(text1, text2, checklines,\n deadline) {\n var diffs;\n\n if (!text1) {\n // Just add some text (speedup).\n return [new diff_match_patch.Diff(DIFF_INSERT, text2)];\n }\n\n if (!text2) {\n // Just delete some text (speedup).\n return [new diff_match_patch.Diff(DIFF_DELETE, text1)];\n }\n\n var longtext = text1.length > text2.length ? text1 : text2;\n var shorttext = text1.length > text2.length ? text2 : text1;\n var i = longtext.indexOf(shorttext);\n if (i != -1) {\n // Shorter text is inside the longer text (speedup).\n diffs = [new diff_match_patch.Diff(DIFF_INSERT, longtext.substring(0, i)),\n new diff_match_patch.Diff(DIFF_EQUAL, shorttext),\n new diff_match_patch.Diff(DIFF_INSERT,\n longtext.substring(i + shorttext.length))];\n // Swap insertions for deletions if diff is reversed.\n if (text1.length > text2.length) {\n diffs[0][0] = diffs[2][0] = DIFF_DELETE;\n }\n return diffs;\n }\n\n if (shorttext.length == 1) {\n // Single character string.\n // After the previous speedup, the character can't be an equality.\n return [new diff_match_patch.Diff(DIFF_DELETE, text1),\n new diff_match_patch.Diff(DIFF_INSERT, text2)];\n }\n\n // Check to see if the problem can be split in two.\n var hm = this.diff_halfMatch_(text1, text2);\n if (hm) {\n // A half-match was found, sort out the return data.\n var text1_a = hm[0];\n var text1_b = hm[1];\n var text2_a = hm[2];\n var text2_b = hm[3];\n var mid_common = hm[4];\n // Send both pairs off for separate processing.\n var diffs_a = this.diff_main(text1_a, text2_a, checklines, deadline);\n var diffs_b = this.diff_main(text1_b, text2_b, checklines, deadline);\n // Merge the results.\n return diffs_a.concat([new diff_match_patch.Diff(DIFF_EQUAL, mid_common)],\n diffs_b);\n }\n\n if (checklines && text1.length > 100 && text2.length > 100) {\n return this.diff_lineMode_(text1, text2, deadline);\n }\n\n return this.diff_bisect_(text1, text2, deadline);\n};\n\n\n/**\n * Do a quick line-level diff on both strings, then rediff the parts for\n * greater accuracy.\n * This speedup can produce non-minimal diffs.\n * @param {string} text1 Old string to be diffed.\n * @param {string} text2 New string to be diffed.\n * @param {number} deadline Time when the diff should be complete by.\n * @return {!Array.} Array of diff tuples.\n * @private\n */\ndiff_match_patch.prototype.diff_lineMode_ = function(text1, text2, deadline) {\n // Scan the text on a line-by-line basis first.\n var a = this.diff_linesToChars_(text1, text2);\n text1 = a.chars1;\n text2 = a.chars2;\n var linearray = a.lineArray;\n\n var diffs = this.diff_main(text1, text2, false, deadline);\n\n // Convert the diff back to original text.\n this.diff_charsToLines_(diffs, linearray);\n // Eliminate freak matches (e.g. blank lines)\n this.diff_cleanupSemantic(diffs);\n\n // Rediff any replacement blocks, this time character-by-character.\n // Add a dummy entry at the end.\n diffs.push(new diff_match_patch.Diff(DIFF_EQUAL, ''));\n var pointer = 0;\n var count_delete = 0;\n var count_insert = 0;\n var text_delete = '';\n var text_insert = '';\n while (pointer < diffs.length) {\n switch (diffs[pointer][0]) {\n case DIFF_INSERT:\n count_insert++;\n text_insert += diffs[pointer][1];\n break;\n case DIFF_DELETE:\n count_delete++;\n text_delete += diffs[pointer][1];\n break;\n case DIFF_EQUAL:\n // Upon reaching an equality, check for prior redundancies.\n if (count_delete >= 1 && count_insert >= 1) {\n // Delete the offending records and add the merged ones.\n diffs.splice(pointer - count_delete - count_insert,\n count_delete + count_insert);\n pointer = pointer - count_delete - count_insert;\n var subDiff =\n this.diff_main(text_delete, text_insert, false, deadline);\n for (var j = subDiff.length - 1; j >= 0; j--) {\n diffs.splice(pointer, 0, subDiff[j]);\n }\n pointer = pointer + subDiff.length;\n }\n count_insert = 0;\n count_delete = 0;\n text_delete = '';\n text_insert = '';\n break;\n }\n pointer++;\n }\n diffs.pop(); // Remove the dummy entry at the end.\n\n return diffs;\n};\n\n\n/**\n * Find the 'middle snake' of a diff, split the problem in two\n * and return the recursively constructed diff.\n * See Myers 1986 paper: An O(ND) Difference Algorithm and Its Variations.\n * @param {string} text1 Old string to be diffed.\n * @param {string} text2 New string to be diffed.\n * @param {number} deadline Time at which to bail if not yet complete.\n * @return {!Array.} Array of diff tuples.\n * @private\n */\ndiff_match_patch.prototype.diff_bisect_ = function(text1, text2, deadline) {\n // Cache the text lengths to prevent multiple calls.\n var text1_length = text1.length;\n var text2_length = text2.length;\n var max_d = Math.ceil((text1_length + text2_length) / 2);\n var v_offset = max_d;\n var v_length = 2 * max_d;\n var v1 = new Array(v_length);\n var v2 = new Array(v_length);\n // Setting all elements to -1 is faster in Chrome & Firefox than mixing\n // integers and undefined.\n for (var x = 0; x < v_length; x++) {\n v1[x] = -1;\n v2[x] = -1;\n }\n v1[v_offset + 1] = 0;\n v2[v_offset + 1] = 0;\n var delta = text1_length - text2_length;\n // If the total number of characters is odd, then the front path will collide\n // with the reverse path.\n var front = (delta % 2 != 0);\n // Offsets for start and end of k loop.\n // Prevents mapping of space beyond the grid.\n var k1start = 0;\n var k1end = 0;\n var k2start = 0;\n var k2end = 0;\n for (var d = 0; d < max_d; d++) {\n // Bail out if deadline is reached.\n if ((new Date()).getTime() > deadline) {\n break;\n }\n\n // Walk the front path one step.\n for (var k1 = -d + k1start; k1 <= d - k1end; k1 += 2) {\n var k1_offset = v_offset + k1;\n var x1;\n if (k1 == -d || (k1 != d && v1[k1_offset - 1] < v1[k1_offset + 1])) {\n x1 = v1[k1_offset + 1];\n } else {\n x1 = v1[k1_offset - 1] + 1;\n }\n var y1 = x1 - k1;\n while (x1 < text1_length && y1 < text2_length &&\n text1.charAt(x1) == text2.charAt(y1)) {\n x1++;\n y1++;\n }\n v1[k1_offset] = x1;\n if (x1 > text1_length) {\n // Ran off the right of the graph.\n k1end += 2;\n } else if (y1 > text2_length) {\n // Ran off the bottom of the graph.\n k1start += 2;\n } else if (front) {\n var k2_offset = v_offset + delta - k1;\n if (k2_offset >= 0 && k2_offset < v_length && v2[k2_offset] != -1) {\n // Mirror x2 onto top-left coordinate system.\n var x2 = text1_length - v2[k2_offset];\n if (x1 >= x2) {\n // Overlap detected.\n return this.diff_bisectSplit_(text1, text2, x1, y1, deadline);\n }\n }\n }\n }\n\n // Walk the reverse path one step.\n for (var k2 = -d + k2start; k2 <= d - k2end; k2 += 2) {\n var k2_offset = v_offset + k2;\n var x2;\n if (k2 == -d || (k2 != d && v2[k2_offset - 1] < v2[k2_offset + 1])) {\n x2 = v2[k2_offset + 1];\n } else {\n x2 = v2[k2_offset - 1] + 1;\n }\n var y2 = x2 - k2;\n while (x2 < text1_length && y2 < text2_length &&\n text1.charAt(text1_length - x2 - 1) ==\n text2.charAt(text2_length - y2 - 1)) {\n x2++;\n y2++;\n }\n v2[k2_offset] = x2;\n if (x2 > text1_length) {\n // Ran off the left of the graph.\n k2end += 2;\n } else if (y2 > text2_length) {\n // Ran off the top of the graph.\n k2start += 2;\n } else if (!front) {\n var k1_offset = v_offset + delta - k2;\n if (k1_offset >= 0 && k1_offset < v_length && v1[k1_offset] != -1) {\n var x1 = v1[k1_offset];\n var y1 = v_offset + x1 - k1_offset;\n // Mirror x2 onto top-left coordinate system.\n x2 = text1_length - x2;\n if (x1 >= x2) {\n // Overlap detected.\n return this.diff_bisectSplit_(text1, text2, x1, y1, deadline);\n }\n }\n }\n }\n }\n // Diff took too long and hit the deadline or\n // number of diffs equals number of characters, no commonality at all.\n return [new diff_match_patch.Diff(DIFF_DELETE, text1),\n new diff_match_patch.Diff(DIFF_INSERT, text2)];\n};\n\n\n/**\n * Given the location of the 'middle snake', split the diff in two parts\n * and recurse.\n * @param {string} text1 Old string to be diffed.\n * @param {string} text2 New string to be diffed.\n * @param {number} x Index of split point in text1.\n * @param {number} y Index of split point in text2.\n * @param {number} deadline Time at which to bail if not yet complete.\n * @return {!Array.} Array of diff tuples.\n * @private\n */\ndiff_match_patch.prototype.diff_bisectSplit_ = function(text1, text2, x, y,\n deadline) {\n var text1a = text1.substring(0, x);\n var text2a = text2.substring(0, y);\n var text1b = text1.substring(x);\n var text2b = text2.substring(y);\n\n // Compute both diffs serially.\n var diffs = this.diff_main(text1a, text2a, false, deadline);\n var diffsb = this.diff_main(text1b, text2b, false, deadline);\n\n return diffs.concat(diffsb);\n};\n\n\n/**\n * Split two texts into an array of strings. Reduce the texts to a string of\n * hashes where each Unicode character represents one line.\n * @param {string} text1 First string.\n * @param {string} text2 Second string.\n * @return {{chars1: string, chars2: string, lineArray: !Array.}}\n * An object containing the encoded text1, the encoded text2 and\n * the array of unique strings.\n * The zeroth element of the array of unique strings is intentionally blank.\n * @private\n */\ndiff_match_patch.prototype.diff_linesToChars_ = function(text1, text2) {\n var lineArray = []; // e.g. lineArray[4] == 'Hello\\n'\n var lineHash = {}; // e.g. lineHash['Hello\\n'] == 4\n\n // '\\x00' is a valid character, but various debuggers don't like it.\n // So we'll insert a junk entry to avoid generating a null character.\n lineArray[0] = '';\n\n /**\n * Split a text into an array of strings. Reduce the texts to a string of\n * hashes where each Unicode character represents one line.\n * Modifies linearray and linehash through being a closure.\n * @param {string} text String to encode.\n * @return {string} Encoded string.\n * @private\n */\n function diff_linesToCharsMunge_(text) {\n var chars = '';\n // Walk the text, pulling out a substring for each line.\n // text.split('\\n') would would temporarily double our memory footprint.\n // Modifying text would create many large strings to garbage collect.\n var lineStart = 0;\n var lineEnd = -1;\n // Keeping our own length variable is faster than looking it up.\n var lineArrayLength = lineArray.length;\n while (lineEnd < text.length - 1) {\n lineEnd = text.indexOf('\\n', lineStart);\n if (lineEnd == -1) {\n lineEnd = text.length - 1;\n }\n var line = text.substring(lineStart, lineEnd + 1);\n\n if (lineHash.hasOwnProperty ? lineHash.hasOwnProperty(line) :\n (lineHash[line] !== undefined)) {\n chars += String.fromCharCode(lineHash[line]);\n } else {\n if (lineArrayLength == maxLines) {\n // Bail out at 65535 because\n // String.fromCharCode(65536) == String.fromCharCode(0)\n line = text.substring(lineStart);\n lineEnd = text.length;\n }\n chars += String.fromCharCode(lineArrayLength);\n lineHash[line] = lineArrayLength;\n lineArray[lineArrayLength++] = line;\n }\n lineStart = lineEnd + 1;\n }\n return chars;\n }\n // Allocate 2/3rds of the space for text1, the rest for text2.\n var maxLines = 40000;\n var chars1 = diff_linesToCharsMunge_(text1);\n maxLines = 65535;\n var chars2 = diff_linesToCharsMunge_(text2);\n return {chars1: chars1, chars2: chars2, lineArray: lineArray};\n};\n\n\n/**\n * Rehydrate the text in a diff from a string of line hashes to real lines of\n * text.\n * @param {!Array.} diffs Array of diff tuples.\n * @param {!Array.} lineArray Array of unique strings.\n * @private\n */\ndiff_match_patch.prototype.diff_charsToLines_ = function(diffs, lineArray) {\n for (var i = 0; i < diffs.length; i++) {\n var chars = diffs[i][1];\n var text = [];\n for (var j = 0; j < chars.length; j++) {\n text[j] = lineArray[chars.charCodeAt(j)];\n }\n diffs[i][1] = text.join('');\n }\n};\n\n\n/**\n * Determine the common prefix of two strings.\n * @param {string} text1 First string.\n * @param {string} text2 Second string.\n * @return {number} The number of characters common to the start of each\n * string.\n */\ndiff_match_patch.prototype.diff_commonPrefix = function(text1, text2) {\n // Quick check for common null cases.\n if (!text1 || !text2 || text1.charAt(0) != text2.charAt(0)) {\n return 0;\n }\n // Binary search.\n // Performance analysis: https://neil.fraser.name/news/2007/10/09/\n var pointermin = 0;\n var pointermax = Math.min(text1.length, text2.length);\n var pointermid = pointermax;\n var pointerstart = 0;\n while (pointermin < pointermid) {\n if (text1.substring(pointerstart, pointermid) ==\n text2.substring(pointerstart, pointermid)) {\n pointermin = pointermid;\n pointerstart = pointermin;\n } else {\n pointermax = pointermid;\n }\n pointermid = Math.floor((pointermax - pointermin) / 2 + pointermin);\n }\n return pointermid;\n};\n\n\n/**\n * Determine the common suffix of two strings.\n * @param {string} text1 First string.\n * @param {string} text2 Second string.\n * @return {number} The number of characters common to the end of each string.\n */\ndiff_match_patch.prototype.diff_commonSuffix = function(text1, text2) {\n // Quick check for common null cases.\n if (!text1 || !text2 ||\n text1.charAt(text1.length - 1) != text2.charAt(text2.length - 1)) {\n return 0;\n }\n // Binary search.\n // Performance analysis: https://neil.fraser.name/news/2007/10/09/\n var pointermin = 0;\n var pointermax = Math.min(text1.length, text2.length);\n var pointermid = pointermax;\n var pointerend = 0;\n while (pointermin < pointermid) {\n if (text1.substring(text1.length - pointermid, text1.length - pointerend) ==\n text2.substring(text2.length - pointermid, text2.length - pointerend)) {\n pointermin = pointermid;\n pointerend = pointermin;\n } else {\n pointermax = pointermid;\n }\n pointermid = Math.floor((pointermax - pointermin) / 2 + pointermin);\n }\n return pointermid;\n};\n\n\n/**\n * Determine if the suffix of one string is the prefix of another.\n * @param {string} text1 First string.\n * @param {string} text2 Second string.\n * @return {number} The number of characters common to the end of the first\n * string and the start of the second string.\n * @private\n */\ndiff_match_patch.prototype.diff_commonOverlap_ = function(text1, text2) {\n // Cache the text lengths to prevent multiple calls.\n var text1_length = text1.length;\n var text2_length = text2.length;\n // Eliminate the null case.\n if (text1_length == 0 || text2_length == 0) {\n return 0;\n }\n // Truncate the longer string.\n if (text1_length > text2_length) {\n text1 = text1.substring(text1_length - text2_length);\n } else if (text1_length < text2_length) {\n text2 = text2.substring(0, text1_length);\n }\n var text_length = Math.min(text1_length, text2_length);\n // Quick check for the worst case.\n if (text1 == text2) {\n return text_length;\n }\n\n // Start by looking for a single character match\n // and increase length until no match is found.\n // Performance analysis: https://neil.fraser.name/news/2010/11/04/\n var best = 0;\n var length = 1;\n while (true) {\n var pattern = text1.substring(text_length - length);\n var found = text2.indexOf(pattern);\n if (found == -1) {\n return best;\n }\n length += found;\n if (found == 0 || text1.substring(text_length - length) ==\n text2.substring(0, length)) {\n best = length;\n length++;\n }\n }\n};\n\n\n/**\n * Do the two texts share a substring which is at least half the length of the\n * longer text?\n * This speedup can produce non-minimal diffs.\n * @param {string} text1 First string.\n * @param {string} text2 Second string.\n * @return {Array.} Five element Array, containing the prefix of\n * text1, the suffix of text1, the prefix of text2, the suffix of\n * text2 and the common middle. Or null if there was no match.\n * @private\n */\ndiff_match_patch.prototype.diff_halfMatch_ = function(text1, text2) {\n if (this.Diff_Timeout <= 0) {\n // Don't risk returning a non-optimal diff if we have unlimited time.\n return null;\n }\n var longtext = text1.length > text2.length ? text1 : text2;\n var shorttext = text1.length > text2.length ? text2 : text1;\n if (longtext.length < 4 || shorttext.length * 2 < longtext.length) {\n return null; // Pointless.\n }\n var dmp = this; // 'this' becomes 'window' in a closure.\n\n /**\n * Does a substring of shorttext exist within longtext such that the substring\n * is at least half the length of longtext?\n * Closure, but does not reference any external variables.\n * @param {string} longtext Longer string.\n * @param {string} shorttext Shorter string.\n * @param {number} i Start index of quarter length substring within longtext.\n * @return {Array.} Five element Array, containing the prefix of\n * longtext, the suffix of longtext, the prefix of shorttext, the suffix\n * of shorttext and the common middle. Or null if there was no match.\n * @private\n */\n function diff_halfMatchI_(longtext, shorttext, i) {\n // Start with a 1/4 length substring at position i as a seed.\n var seed = longtext.substring(i, i + Math.floor(longtext.length / 4));\n var j = -1;\n var best_common = '';\n var best_longtext_a, best_longtext_b, best_shorttext_a, best_shorttext_b;\n while ((j = shorttext.indexOf(seed, j + 1)) != -1) {\n var prefixLength = dmp.diff_commonPrefix(longtext.substring(i),\n shorttext.substring(j));\n var suffixLength = dmp.diff_commonSuffix(longtext.substring(0, i),\n shorttext.substring(0, j));\n if (best_common.length < suffixLength + prefixLength) {\n best_common = shorttext.substring(j - suffixLength, j) +\n shorttext.substring(j, j + prefixLength);\n best_longtext_a = longtext.substring(0, i - suffixLength);\n best_longtext_b = longtext.substring(i + prefixLength);\n best_shorttext_a = shorttext.substring(0, j - suffixLength);\n best_shorttext_b = shorttext.substring(j + prefixLength);\n }\n }\n if (best_common.length * 2 >= longtext.length) {\n return [best_longtext_a, best_longtext_b,\n best_shorttext_a, best_shorttext_b, best_common];\n } else {\n return null;\n }\n }\n\n // First check if the second quarter is the seed for a half-match.\n var hm1 = diff_halfMatchI_(longtext, shorttext,\n Math.ceil(longtext.length / 4));\n // Check again based on the third quarter.\n var hm2 = diff_halfMatchI_(longtext, shorttext,\n Math.ceil(longtext.length / 2));\n var hm;\n if (!hm1 && !hm2) {\n return null;\n } else if (!hm2) {\n hm = hm1;\n } else if (!hm1) {\n hm = hm2;\n } else {\n // Both matched. Select the longest.\n hm = hm1[4].length > hm2[4].length ? hm1 : hm2;\n }\n\n // A half-match was found, sort out the return data.\n var text1_a, text1_b, text2_a, text2_b;\n if (text1.length > text2.length) {\n text1_a = hm[0];\n text1_b = hm[1];\n text2_a = hm[2];\n text2_b = hm[3];\n } else {\n text2_a = hm[0];\n text2_b = hm[1];\n text1_a = hm[2];\n text1_b = hm[3];\n }\n var mid_common = hm[4];\n return [text1_a, text1_b, text2_a, text2_b, mid_common];\n};\n\n\n/**\n * Reduce the number of edits by eliminating semantically trivial equalities.\n * @param {!Array.} diffs Array of diff tuples.\n */\ndiff_match_patch.prototype.diff_cleanupSemantic = function(diffs) {\n var changes = false;\n var equalities = []; // Stack of indices where equalities are found.\n var equalitiesLength = 0; // Keeping our own length var is faster in JS.\n /** @type {?string} */\n var lastEquality = null;\n // Always equal to diffs[equalities[equalitiesLength - 1]][1]\n var pointer = 0; // Index of current position.\n // Number of characters that changed prior to the equality.\n var length_insertions1 = 0;\n var length_deletions1 = 0;\n // Number of characters that changed after the equality.\n var length_insertions2 = 0;\n var length_deletions2 = 0;\n while (pointer < diffs.length) {\n if (diffs[pointer][0] == DIFF_EQUAL) { // Equality found.\n equalities[equalitiesLength++] = pointer;\n length_insertions1 = length_insertions2;\n length_deletions1 = length_deletions2;\n length_insertions2 = 0;\n length_deletions2 = 0;\n lastEquality = diffs[pointer][1];\n } else { // An insertion or deletion.\n if (diffs[pointer][0] == DIFF_INSERT) {\n length_insertions2 += diffs[pointer][1].length;\n } else {\n length_deletions2 += diffs[pointer][1].length;\n }\n // Eliminate an equality that is smaller or equal to the edits on both\n // sides of it.\n if (lastEquality && (lastEquality.length <=\n Math.max(length_insertions1, length_deletions1)) &&\n (lastEquality.length <= Math.max(length_insertions2,\n length_deletions2))) {\n // Duplicate record.\n diffs.splice(equalities[equalitiesLength - 1], 0,\n new diff_match_patch.Diff(DIFF_DELETE, lastEquality));\n // Change second copy to insert.\n diffs[equalities[equalitiesLength - 1] + 1][0] = DIFF_INSERT;\n // Throw away the equality we just deleted.\n equalitiesLength--;\n // Throw away the previous equality (it needs to be reevaluated).\n equalitiesLength--;\n pointer = equalitiesLength > 0 ? equalities[equalitiesLength - 1] : -1;\n length_insertions1 = 0; // Reset the counters.\n length_deletions1 = 0;\n length_insertions2 = 0;\n length_deletions2 = 0;\n lastEquality = null;\n changes = true;\n }\n }\n pointer++;\n }\n\n // Normalize the diff.\n if (changes) {\n this.diff_cleanupMerge(diffs);\n }\n this.diff_cleanupSemanticLossless(diffs);\n\n // Find any overlaps between deletions and insertions.\n // e.g: abcxxxxxxdef\n // -> abcxxxdef\n // e.g: xxxabcdefxxx\n // -> defxxxabc\n // Only extract an overlap if it is as big as the edit ahead or behind it.\n pointer = 1;\n while (pointer < diffs.length) {\n if (diffs[pointer - 1][0] == DIFF_DELETE &&\n diffs[pointer][0] == DIFF_INSERT) {\n var deletion = diffs[pointer - 1][1];\n var insertion = diffs[pointer][1];\n var overlap_length1 = this.diff_commonOverlap_(deletion, insertion);\n var overlap_length2 = this.diff_commonOverlap_(insertion, deletion);\n if (overlap_length1 >= overlap_length2) {\n if (overlap_length1 >= deletion.length / 2 ||\n overlap_length1 >= insertion.length / 2) {\n // Overlap found. Insert an equality and trim the surrounding edits.\n diffs.splice(pointer, 0, new diff_match_patch.Diff(DIFF_EQUAL,\n insertion.substring(0, overlap_length1)));\n diffs[pointer - 1][1] =\n deletion.substring(0, deletion.length - overlap_length1);\n diffs[pointer + 1][1] = insertion.substring(overlap_length1);\n pointer++;\n }\n } else {\n if (overlap_length2 >= deletion.length / 2 ||\n overlap_length2 >= insertion.length / 2) {\n // Reverse overlap found.\n // Insert an equality and swap and trim the surrounding edits.\n diffs.splice(pointer, 0, new diff_match_patch.Diff(DIFF_EQUAL,\n deletion.substring(0, overlap_length2)));\n diffs[pointer - 1][0] = DIFF_INSERT;\n diffs[pointer - 1][1] =\n insertion.substring(0, insertion.length - overlap_length2);\n diffs[pointer + 1][0] = DIFF_DELETE;\n diffs[pointer + 1][1] =\n deletion.substring(overlap_length2);\n pointer++;\n }\n }\n pointer++;\n }\n pointer++;\n }\n};\n\n\n/**\n * Look for single edits surrounded on both sides by equalities\n * which can be shifted sideways to align the edit to a word boundary.\n * e.g: The cat came. -> The cat came.\n * @param {!Array.} diffs Array of diff tuples.\n */\ndiff_match_patch.prototype.diff_cleanupSemanticLossless = function(diffs) {\n /**\n * Given two strings, compute a score representing whether the internal\n * boundary falls on logical boundaries.\n * Scores range from 6 (best) to 0 (worst).\n * Closure, but does not reference any external variables.\n * @param {string} one First string.\n * @param {string} two Second string.\n * @return {number} The score.\n * @private\n */\n function diff_cleanupSemanticScore_(one, two) {\n if (!one || !two) {\n // Edges are the best.\n return 6;\n }\n\n // Each port of this function behaves slightly differently due to\n // subtle differences in each language's definition of things like\n // 'whitespace'. Since this function's purpose is largely cosmetic,\n // the choice has been made to use each language's native features\n // rather than force total conformity.\n var char1 = one.charAt(one.length - 1);\n var char2 = two.charAt(0);\n var nonAlphaNumeric1 = char1.match(diff_match_patch.nonAlphaNumericRegex_);\n var nonAlphaNumeric2 = char2.match(diff_match_patch.nonAlphaNumericRegex_);\n var whitespace1 = nonAlphaNumeric1 &&\n char1.match(diff_match_patch.whitespaceRegex_);\n var whitespace2 = nonAlphaNumeric2 &&\n char2.match(diff_match_patch.whitespaceRegex_);\n var lineBreak1 = whitespace1 &&\n char1.match(diff_match_patch.linebreakRegex_);\n var lineBreak2 = whitespace2 &&\n char2.match(diff_match_patch.linebreakRegex_);\n var blankLine1 = lineBreak1 &&\n one.match(diff_match_patch.blanklineEndRegex_);\n var blankLine2 = lineBreak2 &&\n two.match(diff_match_patch.blanklineStartRegex_);\n\n if (blankLine1 || blankLine2) {\n // Five points for blank lines.\n return 5;\n } else if (lineBreak1 || lineBreak2) {\n // Four points for line breaks.\n return 4;\n } else if (nonAlphaNumeric1 && !whitespace1 && whitespace2) {\n // Three points for end of sentences.\n return 3;\n } else if (whitespace1 || whitespace2) {\n // Two points for whitespace.\n return 2;\n } else if (nonAlphaNumeric1 || nonAlphaNumeric2) {\n // One point for non-alphanumeric.\n return 1;\n }\n return 0;\n }\n\n var pointer = 1;\n // Intentionally ignore the first and last element (don't need checking).\n while (pointer < diffs.length - 1) {\n if (diffs[pointer - 1][0] == DIFF_EQUAL &&\n diffs[pointer + 1][0] == DIFF_EQUAL) {\n // This is a single edit surrounded by equalities.\n var equality1 = diffs[pointer - 1][1];\n var edit = diffs[pointer][1];\n var equality2 = diffs[pointer + 1][1];\n\n // First, shift the edit as far left as possible.\n var commonOffset = this.diff_commonSuffix(equality1, edit);\n if (commonOffset) {\n var commonString = edit.substring(edit.length - commonOffset);\n equality1 = equality1.substring(0, equality1.length - commonOffset);\n edit = commonString + edit.substring(0, edit.length - commonOffset);\n equality2 = commonString + equality2;\n }\n\n // Second, step character by character right, looking for the best fit.\n var bestEquality1 = equality1;\n var bestEdit = edit;\n var bestEquality2 = equality2;\n var bestScore = diff_cleanupSemanticScore_(equality1, edit) +\n diff_cleanupSemanticScore_(edit, equality2);\n while (edit.charAt(0) === equality2.charAt(0)) {\n equality1 += edit.charAt(0);\n edit = edit.substring(1) + equality2.charAt(0);\n equality2 = equality2.substring(1);\n var score = diff_cleanupSemanticScore_(equality1, edit) +\n diff_cleanupSemanticScore_(edit, equality2);\n // The >= encourages trailing rather than leading whitespace on edits.\n if (score >= bestScore) {\n bestScore = score;\n bestEquality1 = equality1;\n bestEdit = edit;\n bestEquality2 = equality2;\n }\n }\n\n if (diffs[pointer - 1][1] != bestEquality1) {\n // We have an improvement, save it back to the diff.\n if (bestEquality1) {\n diffs[pointer - 1][1] = bestEquality1;\n } else {\n diffs.splice(pointer - 1, 1);\n pointer--;\n }\n diffs[pointer][1] = bestEdit;\n if (bestEquality2) {\n diffs[pointer + 1][1] = bestEquality2;\n } else {\n diffs.splice(pointer + 1, 1);\n pointer--;\n }\n }\n }\n pointer++;\n }\n};\n\n// Define some regex patterns for matching boundaries.\ndiff_match_patch.nonAlphaNumericRegex_ = /[^a-zA-Z0-9]/;\ndiff_match_patch.whitespaceRegex_ = /\\s/;\ndiff_match_patch.linebreakRegex_ = /[\\r\\n]/;\ndiff_match_patch.blanklineEndRegex_ = /\\n\\r?\\n$/;\ndiff_match_patch.blanklineStartRegex_ = /^\\r?\\n\\r?\\n/;\n\n/**\n * Reduce the number of edits by eliminating operationally trivial equalities.\n * @param {!Array.} diffs Array of diff tuples.\n */\ndiff_match_patch.prototype.diff_cleanupEfficiency = function(diffs) {\n var changes = false;\n var equalities = []; // Stack of indices where equalities are found.\n var equalitiesLength = 0; // Keeping our own length var is faster in JS.\n /** @type {?string} */\n var lastEquality = null;\n // Always equal to diffs[equalities[equalitiesLength - 1]][1]\n var pointer = 0; // Index of current position.\n // Is there an insertion operation before the last equality.\n var pre_ins = false;\n // Is there a deletion operation before the last equality.\n var pre_del = false;\n // Is there an insertion operation after the last equality.\n var post_ins = false;\n // Is there a deletion operation after the last equality.\n var post_del = false;\n while (pointer < diffs.length) {\n if (diffs[pointer][0] == DIFF_EQUAL) { // Equality found.\n if (diffs[pointer][1].length < this.Diff_EditCost &&\n (post_ins || post_del)) {\n // Candidate found.\n equalities[equalitiesLength++] = pointer;\n pre_ins = post_ins;\n pre_del = post_del;\n lastEquality = diffs[pointer][1];\n } else {\n // Not a candidate, and can never become one.\n equalitiesLength = 0;\n lastEquality = null;\n }\n post_ins = post_del = false;\n } else { // An insertion or deletion.\n if (diffs[pointer][0] == DIFF_DELETE) {\n post_del = true;\n } else {\n post_ins = true;\n }\n /*\n * Five types to be split:\n * ABXYCD\n * AXCD\n * ABXC\n * AXCD\n * ABXC\n */\n if (lastEquality && ((pre_ins && pre_del && post_ins && post_del) ||\n ((lastEquality.length < this.Diff_EditCost / 2) &&\n (pre_ins + pre_del + post_ins + post_del) == 3))) {\n // Duplicate record.\n diffs.splice(equalities[equalitiesLength - 1], 0,\n new diff_match_patch.Diff(DIFF_DELETE, lastEquality));\n // Change second copy to insert.\n diffs[equalities[equalitiesLength - 1] + 1][0] = DIFF_INSERT;\n equalitiesLength--; // Throw away the equality we just deleted;\n lastEquality = null;\n if (pre_ins && pre_del) {\n // No changes made which could affect previous entry, keep going.\n post_ins = post_del = true;\n equalitiesLength = 0;\n } else {\n equalitiesLength--; // Throw away the previous equality.\n pointer = equalitiesLength > 0 ?\n equalities[equalitiesLength - 1] : -1;\n post_ins = post_del = false;\n }\n changes = true;\n }\n }\n pointer++;\n }\n\n if (changes) {\n this.diff_cleanupMerge(diffs);\n }\n};\n\n\n/**\n * Reorder and merge like edit sections. Merge equalities.\n * Any edit section can move as long as it doesn't cross an equality.\n * @param {!Array.} diffs Array of diff tuples.\n */\ndiff_match_patch.prototype.diff_cleanupMerge = function(diffs) {\n // Add a dummy entry at the end.\n diffs.push(new diff_match_patch.Diff(DIFF_EQUAL, ''));\n var pointer = 0;\n var count_delete = 0;\n var count_insert = 0;\n var text_delete = '';\n var text_insert = '';\n var commonlength;\n while (pointer < diffs.length) {\n switch (diffs[pointer][0]) {\n case DIFF_INSERT:\n count_insert++;\n text_insert += diffs[pointer][1];\n pointer++;\n break;\n case DIFF_DELETE:\n count_delete++;\n text_delete += diffs[pointer][1];\n pointer++;\n break;\n case DIFF_EQUAL:\n // Upon reaching an equality, check for prior redundancies.\n if (count_delete + count_insert > 1) {\n if (count_delete !== 0 && count_insert !== 0) {\n // Factor out any common prefixies.\n commonlength = this.diff_commonPrefix(text_insert, text_delete);\n if (commonlength !== 0) {\n if ((pointer - count_delete - count_insert) > 0 &&\n diffs[pointer - count_delete - count_insert - 1][0] ==\n DIFF_EQUAL) {\n diffs[pointer - count_delete - count_insert - 1][1] +=\n text_insert.substring(0, commonlength);\n } else {\n diffs.splice(0, 0, new diff_match_patch.Diff(DIFF_EQUAL,\n text_insert.substring(0, commonlength)));\n pointer++;\n }\n text_insert = text_insert.substring(commonlength);\n text_delete = text_delete.substring(commonlength);\n }\n // Factor out any common suffixies.\n commonlength = this.diff_commonSuffix(text_insert, text_delete);\n if (commonlength !== 0) {\n diffs[pointer][1] = text_insert.substring(text_insert.length -\n commonlength) + diffs[pointer][1];\n text_insert = text_insert.substring(0, text_insert.length -\n commonlength);\n text_delete = text_delete.substring(0, text_delete.length -\n commonlength);\n }\n }\n // Delete the offending records and add the merged ones.\n pointer -= count_delete + count_insert;\n diffs.splice(pointer, count_delete + count_insert);\n if (text_delete.length) {\n diffs.splice(pointer, 0,\n new diff_match_patch.Diff(DIFF_DELETE, text_delete));\n pointer++;\n }\n if (text_insert.length) {\n diffs.splice(pointer, 0,\n new diff_match_patch.Diff(DIFF_INSERT, text_insert));\n pointer++;\n }\n pointer++;\n } else if (pointer !== 0 && diffs[pointer - 1][0] == DIFF_EQUAL) {\n // Merge this equality with the previous one.\n diffs[pointer - 1][1] += diffs[pointer][1];\n diffs.splice(pointer, 1);\n } else {\n pointer++;\n }\n count_insert = 0;\n count_delete = 0;\n text_delete = '';\n text_insert = '';\n break;\n }\n }\n if (diffs[diffs.length - 1][1] === '') {\n diffs.pop(); // Remove the dummy entry at the end.\n }\n\n // Second pass: look for single edits surrounded on both sides by equalities\n // which can be shifted sideways to eliminate an equality.\n // e.g: ABAC -> ABAC\n var changes = false;\n pointer = 1;\n // Intentionally ignore the first and last element (don't need checking).\n while (pointer < diffs.length - 1) {\n if (diffs[pointer - 1][0] == DIFF_EQUAL &&\n diffs[pointer + 1][0] == DIFF_EQUAL) {\n // This is a single edit surrounded by equalities.\n if (diffs[pointer][1].substring(diffs[pointer][1].length -\n diffs[pointer - 1][1].length) == diffs[pointer - 1][1]) {\n // Shift the edit over the previous equality.\n diffs[pointer][1] = diffs[pointer - 1][1] +\n diffs[pointer][1].substring(0, diffs[pointer][1].length -\n diffs[pointer - 1][1].length);\n diffs[pointer + 1][1] = diffs[pointer - 1][1] + diffs[pointer + 1][1];\n diffs.splice(pointer - 1, 1);\n changes = true;\n } else if (diffs[pointer][1].substring(0, diffs[pointer + 1][1].length) ==\n diffs[pointer + 1][1]) {\n // Shift the edit over the next equality.\n diffs[pointer - 1][1] += diffs[pointer + 1][1];\n diffs[pointer][1] =\n diffs[pointer][1].substring(diffs[pointer + 1][1].length) +\n diffs[pointer + 1][1];\n diffs.splice(pointer + 1, 1);\n changes = true;\n }\n }\n pointer++;\n }\n // If shifts were made, the diff needs reordering and another shift sweep.\n if (changes) {\n this.diff_cleanupMerge(diffs);\n }\n};\n\n\n/**\n * loc is a location in text1, compute and return the equivalent location in\n * text2.\n * e.g. 'The cat' vs 'The big cat', 1->1, 5->8\n * @param {!Array.} diffs Array of diff tuples.\n * @param {number} loc Location within text1.\n * @return {number} Location within text2.\n */\ndiff_match_patch.prototype.diff_xIndex = function(diffs, loc) {\n var chars1 = 0;\n var chars2 = 0;\n var last_chars1 = 0;\n var last_chars2 = 0;\n var x;\n for (x = 0; x < diffs.length; x++) {\n if (diffs[x][0] !== DIFF_INSERT) { // Equality or deletion.\n chars1 += diffs[x][1].length;\n }\n if (diffs[x][0] !== DIFF_DELETE) { // Equality or insertion.\n chars2 += diffs[x][1].length;\n }\n if (chars1 > loc) { // Overshot the location.\n break;\n }\n last_chars1 = chars1;\n last_chars2 = chars2;\n }\n // Was the location was deleted?\n if (diffs.length != x && diffs[x][0] === DIFF_DELETE) {\n return last_chars2;\n }\n // Add the remaining character length.\n return last_chars2 + (loc - last_chars1);\n};\n\n\n/**\n * Convert a diff array into a pretty HTML report.\n * @param {!Array.} diffs Array of diff tuples.\n * @return {string} HTML representation.\n */\ndiff_match_patch.prototype.diff_prettyHtml = function(diffs) {\n var html = [];\n var pattern_amp = /&/g;\n var pattern_lt = //g;\n var pattern_para = /\\n/g;\n for (var x = 0; x < diffs.length; x++) {\n var op = diffs[x][0]; // Operation (insert, delete, equal)\n var data = diffs[x][1]; // Text of change.\n var text = data.replace(pattern_amp, '&').replace(pattern_lt, '<')\n .replace(pattern_gt, '>').replace(pattern_para, '¶
');\n switch (op) {\n case DIFF_INSERT:\n html[x] = '' + text + '';\n break;\n case DIFF_DELETE:\n html[x] = '' + text + '';\n break;\n case DIFF_EQUAL:\n html[x] = '' + text + '';\n break;\n }\n }\n return html.join('');\n};\n\n\n/**\n * Compute and return the source text (all equalities and deletions).\n * @param {!Array.} diffs Array of diff tuples.\n * @return {string} Source text.\n */\ndiff_match_patch.prototype.diff_text1 = function(diffs) {\n var text = [];\n for (var x = 0; x < diffs.length; x++) {\n if (diffs[x][0] !== DIFF_INSERT) {\n text[x] = diffs[x][1];\n }\n }\n return text.join('');\n};\n\n\n/**\n * Compute and return the destination text (all equalities and insertions).\n * @param {!Array.} diffs Array of diff tuples.\n * @return {string} Destination text.\n */\ndiff_match_patch.prototype.diff_text2 = function(diffs) {\n var text = [];\n for (var x = 0; x < diffs.length; x++) {\n if (diffs[x][0] !== DIFF_DELETE) {\n text[x] = diffs[x][1];\n }\n }\n return text.join('');\n};\n\n\n/**\n * Compute the Levenshtein distance; the number of inserted, deleted or\n * substituted characters.\n * @param {!Array.} diffs Array of diff tuples.\n * @return {number} Number of changes.\n */\ndiff_match_patch.prototype.diff_levenshtein = function(diffs) {\n var levenshtein = 0;\n var insertions = 0;\n var deletions = 0;\n for (var x = 0; x < diffs.length; x++) {\n var op = diffs[x][0];\n var data = diffs[x][1];\n switch (op) {\n case DIFF_INSERT:\n insertions += data.length;\n break;\n case DIFF_DELETE:\n deletions += data.length;\n break;\n case DIFF_EQUAL:\n // A deletion and an insertion is one substitution.\n levenshtein += Math.max(insertions, deletions);\n insertions = 0;\n deletions = 0;\n break;\n }\n }\n levenshtein += Math.max(insertions, deletions);\n return levenshtein;\n};\n\n\n/**\n * Crush the diff into an encoded string which describes the operations\n * required to transform text1 into text2.\n * E.g. =3\\t-2\\t+ing -> Keep 3 chars, delete 2 chars, insert 'ing'.\n * Operations are tab-separated. Inserted text is escaped using %xx notation.\n * @param {!Array.} diffs Array of diff tuples.\n * @return {string} Delta text.\n */\ndiff_match_patch.prototype.diff_toDelta = function(diffs) {\n var text = [];\n for (var x = 0; x < diffs.length; x++) {\n switch (diffs[x][0]) {\n case DIFF_INSERT:\n text[x] = '+' + encodeURI(diffs[x][1]);\n break;\n case DIFF_DELETE:\n text[x] = '-' + diffs[x][1].length;\n break;\n case DIFF_EQUAL:\n text[x] = '=' + diffs[x][1].length;\n break;\n }\n }\n return text.join('\\t').replace(/%20/g, ' ');\n};\n\n\n/**\n * Given the original text1, and an encoded string which describes the\n * operations required to transform text1 into text2, compute the full diff.\n * @param {string} text1 Source string for the diff.\n * @param {string} delta Delta text.\n * @return {!Array.} Array of diff tuples.\n * @throws {!Error} If invalid input.\n */\ndiff_match_patch.prototype.diff_fromDelta = function(text1, delta) {\n var diffs = [];\n var diffsLength = 0; // Keeping our own length var is faster in JS.\n var pointer = 0; // Cursor in text1\n var tokens = delta.split(/\\t/g);\n for (var x = 0; x < tokens.length; x++) {\n // Each token begins with a one character parameter which specifies the\n // operation of this token (delete, insert, equality).\n var param = tokens[x].substring(1);\n switch (tokens[x].charAt(0)) {\n case '+':\n try {\n diffs[diffsLength++] =\n new diff_match_patch.Diff(DIFF_INSERT, decodeURI(param));\n } catch (ex) {\n // Malformed URI sequence.\n throw new Error('Illegal escape in diff_fromDelta: ' + param);\n }\n break;\n case '-':\n // Fall through.\n case '=':\n var n = parseInt(param, 10);\n if (isNaN(n) || n < 0) {\n throw new Error('Invalid number in diff_fromDelta: ' + param);\n }\n var text = text1.substring(pointer, pointer += n);\n if (tokens[x].charAt(0) == '=') {\n diffs[diffsLength++] = new diff_match_patch.Diff(DIFF_EQUAL, text);\n } else {\n diffs[diffsLength++] = new diff_match_patch.Diff(DIFF_DELETE, text);\n }\n break;\n default:\n // Blank tokens are ok (from a trailing \\t).\n // Anything else is an error.\n if (tokens[x]) {\n throw new Error('Invalid diff operation in diff_fromDelta: ' +\n tokens[x]);\n }\n }\n }\n if (pointer != text1.length) {\n throw new Error('Delta length (' + pointer +\n ') does not equal source text length (' + text1.length + ').');\n }\n return diffs;\n};\n\n\n// MATCH FUNCTIONS\n\n\n/**\n * Locate the best instance of 'pattern' in 'text' near 'loc'.\n * @param {string} text The text to search.\n * @param {string} pattern The pattern to search for.\n * @param {number} loc The location to search around.\n * @return {number} Best match index or -1.\n */\ndiff_match_patch.prototype.match_main = function(text, pattern, loc) {\n // Check for null inputs.\n if (text == null || pattern == null || loc == null) {\n throw new Error('Null input. (match_main)');\n }\n\n loc = Math.max(0, Math.min(loc, text.length));\n if (text == pattern) {\n // Shortcut (potentially not guaranteed by the algorithm)\n return 0;\n } else if (!text.length) {\n // Nothing to match.\n return -1;\n } else if (text.substring(loc, loc + pattern.length) == pattern) {\n // Perfect match at the perfect spot! (Includes case of null pattern)\n return loc;\n } else {\n // Do a fuzzy compare.\n return this.match_bitap_(text, pattern, loc);\n }\n};\n\n\n/**\n * Locate the best instance of 'pattern' in 'text' near 'loc' using the\n * Bitap algorithm.\n * @param {string} text The text to search.\n * @param {string} pattern The pattern to search for.\n * @param {number} loc The location to search around.\n * @return {number} Best match index or -1.\n * @private\n */\ndiff_match_patch.prototype.match_bitap_ = function(text, pattern, loc) {\n if (pattern.length > this.Match_MaxBits) {\n throw new Error('Pattern too long for this browser.');\n }\n\n // Initialise the alphabet.\n var s = this.match_alphabet_(pattern);\n\n var dmp = this; // 'this' becomes 'window' in a closure.\n\n /**\n * Compute and return the score for a match with e errors and x location.\n * Accesses loc and pattern through being a closure.\n * @param {number} e Number of errors in match.\n * @param {number} x Location of match.\n * @return {number} Overall score for match (0.0 = good, 1.0 = bad).\n * @private\n */\n function match_bitapScore_(e, x) {\n var accuracy = e / pattern.length;\n var proximity = Math.abs(loc - x);\n if (!dmp.Match_Distance) {\n // Dodge divide by zero error.\n return proximity ? 1.0 : accuracy;\n }\n return accuracy + (proximity / dmp.Match_Distance);\n }\n\n // Highest score beyond which we give up.\n var score_threshold = this.Match_Threshold;\n // Is there a nearby exact match? (speedup)\n var best_loc = text.indexOf(pattern, loc);\n if (best_loc != -1) {\n score_threshold = Math.min(match_bitapScore_(0, best_loc), score_threshold);\n // What about in the other direction? (speedup)\n best_loc = text.lastIndexOf(pattern, loc + pattern.length);\n if (best_loc != -1) {\n score_threshold =\n Math.min(match_bitapScore_(0, best_loc), score_threshold);\n }\n }\n\n // Initialise the bit arrays.\n var matchmask = 1 << (pattern.length - 1);\n best_loc = -1;\n\n var bin_min, bin_mid;\n var bin_max = pattern.length + text.length;\n var last_rd;\n for (var d = 0; d < pattern.length; d++) {\n // Scan for the best match; each iteration allows for one more error.\n // Run a binary search to determine how far from 'loc' we can stray at this\n // error level.\n bin_min = 0;\n bin_mid = bin_max;\n while (bin_min < bin_mid) {\n if (match_bitapScore_(d, loc + bin_mid) <= score_threshold) {\n bin_min = bin_mid;\n } else {\n bin_max = bin_mid;\n }\n bin_mid = Math.floor((bin_max - bin_min) / 2 + bin_min);\n }\n // Use the result from this iteration as the maximum for the next.\n bin_max = bin_mid;\n var start = Math.max(1, loc - bin_mid + 1);\n var finish = Math.min(loc + bin_mid, text.length) + pattern.length;\n\n var rd = Array(finish + 2);\n rd[finish + 1] = (1 << d) - 1;\n for (var j = finish; j >= start; j--) {\n // The alphabet (s) is a sparse hash, so the following line generates\n // warnings.\n var charMatch = s[text.charAt(j - 1)];\n if (d === 0) { // First pass: exact match.\n rd[j] = ((rd[j + 1] << 1) | 1) & charMatch;\n } else { // Subsequent passes: fuzzy match.\n rd[j] = (((rd[j + 1] << 1) | 1) & charMatch) |\n (((last_rd[j + 1] | last_rd[j]) << 1) | 1) |\n last_rd[j + 1];\n }\n if (rd[j] & matchmask) {\n var score = match_bitapScore_(d, j - 1);\n // This match will almost certainly be better than any existing match.\n // But check anyway.\n if (score <= score_threshold) {\n // Told you so.\n score_threshold = score;\n best_loc = j - 1;\n if (best_loc > loc) {\n // When passing loc, don't exceed our current distance from loc.\n start = Math.max(1, 2 * loc - best_loc);\n } else {\n // Already passed loc, downhill from here on in.\n break;\n }\n }\n }\n }\n // No hope for a (better) match at greater error levels.\n if (match_bitapScore_(d + 1, loc) > score_threshold) {\n break;\n }\n last_rd = rd;\n }\n return best_loc;\n};\n\n\n/**\n * Initialise the alphabet for the Bitap algorithm.\n * @param {string} pattern The text to encode.\n * @return {!Object} Hash of character locations.\n * @private\n */\ndiff_match_patch.prototype.match_alphabet_ = function(pattern) {\n var s = {};\n for (var i = 0; i < pattern.length; i++) {\n s[pattern.charAt(i)] = 0;\n }\n for (var i = 0; i < pattern.length; i++) {\n s[pattern.charAt(i)] |= 1 << (pattern.length - i - 1);\n }\n return s;\n};\n\n\n// PATCH FUNCTIONS\n\n\n/**\n * Increase the context until it is unique,\n * but don't let the pattern expand beyond Match_MaxBits.\n * @param {!diff_match_patch.patch_obj} patch The patch to grow.\n * @param {string} text Source text.\n * @private\n */\ndiff_match_patch.prototype.patch_addContext_ = function(patch, text) {\n if (text.length == 0) {\n return;\n }\n if (patch.start2 === null) {\n throw Error('patch not initialized');\n }\n var pattern = text.substring(patch.start2, patch.start2 + patch.length1);\n var padding = 0;\n\n // Look for the first and last matches of pattern in text. If two different\n // matches are found, increase the pattern length.\n while (text.indexOf(pattern) != text.lastIndexOf(pattern) &&\n pattern.length < this.Match_MaxBits - this.Patch_Margin -\n this.Patch_Margin) {\n padding += this.Patch_Margin;\n pattern = text.substring(patch.start2 - padding,\n patch.start2 + patch.length1 + padding);\n }\n // Add one chunk for good luck.\n padding += this.Patch_Margin;\n\n // Add the prefix.\n var prefix = text.substring(patch.start2 - padding, patch.start2);\n if (prefix) {\n patch.diffs.unshift(new diff_match_patch.Diff(DIFF_EQUAL, prefix));\n }\n // Add the suffix.\n var suffix = text.substring(patch.start2 + patch.length1,\n patch.start2 + patch.length1 + padding);\n if (suffix) {\n patch.diffs.push(new diff_match_patch.Diff(DIFF_EQUAL, suffix));\n }\n\n // Roll back the start points.\n patch.start1 -= prefix.length;\n patch.start2 -= prefix.length;\n // Extend the lengths.\n patch.length1 += prefix.length + suffix.length;\n patch.length2 += prefix.length + suffix.length;\n};\n\n\n/**\n * Compute a list of patches to turn text1 into text2.\n * Use diffs if provided, otherwise compute it ourselves.\n * There are four ways to call this function, depending on what data is\n * available to the caller:\n * Method 1:\n * a = text1, b = text2\n * Method 2:\n * a = diffs\n * Method 3 (optimal):\n * a = text1, b = diffs\n * Method 4 (deprecated, use method 3):\n * a = text1, b = text2, c = diffs\n *\n * @param {string|!Array.} a text1 (methods 1,3,4) or\n * Array of diff tuples for text1 to text2 (method 2).\n * @param {string|!Array.=} opt_b text2 (methods 1,4) or\n * Array of diff tuples for text1 to text2 (method 3) or undefined (method 2).\n * @param {string|!Array.=} opt_c Array of diff tuples\n * for text1 to text2 (method 4) or undefined (methods 1,2,3).\n * @return {!Array.} Array of Patch objects.\n */\ndiff_match_patch.prototype.patch_make = function(a, opt_b, opt_c) {\n var text1, diffs;\n if (typeof a == 'string' && typeof opt_b == 'string' &&\n typeof opt_c == 'undefined') {\n // Method 1: text1, text2\n // Compute diffs from text1 and text2.\n text1 = /** @type {string} */(a);\n diffs = this.diff_main(text1, /** @type {string} */(opt_b), true);\n if (diffs.length > 2) {\n this.diff_cleanupSemantic(diffs);\n this.diff_cleanupEfficiency(diffs);\n }\n } else if (a && typeof a == 'object' && typeof opt_b == 'undefined' &&\n typeof opt_c == 'undefined') {\n // Method 2: diffs\n // Compute text1 from diffs.\n diffs = /** @type {!Array.} */(a);\n text1 = this.diff_text1(diffs);\n } else if (typeof a == 'string' && opt_b && typeof opt_b == 'object' &&\n typeof opt_c == 'undefined') {\n // Method 3: text1, diffs\n text1 = /** @type {string} */(a);\n diffs = /** @type {!Array.} */(opt_b);\n } else if (typeof a == 'string' && typeof opt_b == 'string' &&\n opt_c && typeof opt_c == 'object') {\n // Method 4: text1, text2, diffs\n // text2 is not used.\n text1 = /** @type {string} */(a);\n diffs = /** @type {!Array.} */(opt_c);\n } else {\n throw new Error('Unknown call format to patch_make.');\n }\n\n if (diffs.length === 0) {\n return []; // Get rid of the null case.\n }\n var patches = [];\n var patch = new diff_match_patch.patch_obj();\n var patchDiffLength = 0; // Keeping our own length var is faster in JS.\n var char_count1 = 0; // Number of characters into the text1 string.\n var char_count2 = 0; // Number of characters into the text2 string.\n // Start with text1 (prepatch_text) and apply the diffs until we arrive at\n // text2 (postpatch_text). We recreate the patches one by one to determine\n // context info.\n var prepatch_text = text1;\n var postpatch_text = text1;\n for (var x = 0; x < diffs.length; x++) {\n var diff_type = diffs[x][0];\n var diff_text = diffs[x][1];\n\n if (!patchDiffLength && diff_type !== DIFF_EQUAL) {\n // A new patch starts here.\n patch.start1 = char_count1;\n patch.start2 = char_count2;\n }\n\n switch (diff_type) {\n case DIFF_INSERT:\n patch.diffs[patchDiffLength++] = diffs[x];\n patch.length2 += diff_text.length;\n postpatch_text = postpatch_text.substring(0, char_count2) + diff_text +\n postpatch_text.substring(char_count2);\n break;\n case DIFF_DELETE:\n patch.length1 += diff_text.length;\n patch.diffs[patchDiffLength++] = diffs[x];\n postpatch_text = postpatch_text.substring(0, char_count2) +\n postpatch_text.substring(char_count2 +\n diff_text.length);\n break;\n case DIFF_EQUAL:\n if (diff_text.length <= 2 * this.Patch_Margin &&\n patchDiffLength && diffs.length != x + 1) {\n // Small equality inside a patch.\n patch.diffs[patchDiffLength++] = diffs[x];\n patch.length1 += diff_text.length;\n patch.length2 += diff_text.length;\n } else if (diff_text.length >= 2 * this.Patch_Margin) {\n // Time for a new patch.\n if (patchDiffLength) {\n this.patch_addContext_(patch, prepatch_text);\n patches.push(patch);\n patch = new diff_match_patch.patch_obj();\n patchDiffLength = 0;\n // Unlike Unidiff, our patch lists have a rolling context.\n // https://github.com/google/diff-match-patch/wiki/Unidiff\n // Update prepatch text & pos to reflect the application of the\n // just completed patch.\n prepatch_text = postpatch_text;\n char_count1 = char_count2;\n }\n }\n break;\n }\n\n // Update the current character count.\n if (diff_type !== DIFF_INSERT) {\n char_count1 += diff_text.length;\n }\n if (diff_type !== DIFF_DELETE) {\n char_count2 += diff_text.length;\n }\n }\n // Pick up the leftover patch if not empty.\n if (patchDiffLength) {\n this.patch_addContext_(patch, prepatch_text);\n patches.push(patch);\n }\n\n return patches;\n};\n\n\n/**\n * Given an array of patches, return another array that is identical.\n * @param {!Array.} patches Array of Patch objects.\n * @return {!Array.} Array of Patch objects.\n */\ndiff_match_patch.prototype.patch_deepCopy = function(patches) {\n // Making deep copies is hard in JavaScript.\n var patchesCopy = [];\n for (var x = 0; x < patches.length; x++) {\n var patch = patches[x];\n var patchCopy = new diff_match_patch.patch_obj();\n patchCopy.diffs = [];\n for (var y = 0; y < patch.diffs.length; y++) {\n patchCopy.diffs[y] =\n new diff_match_patch.Diff(patch.diffs[y][0], patch.diffs[y][1]);\n }\n patchCopy.start1 = patch.start1;\n patchCopy.start2 = patch.start2;\n patchCopy.length1 = patch.length1;\n patchCopy.length2 = patch.length2;\n patchesCopy[x] = patchCopy;\n }\n return patchesCopy;\n};\n\n\n/**\n * Merge a set of patches onto the text. Return a patched text, as well\n * as a list of true/false values indicating which patches were applied.\n * @param {!Array.} patches Array of Patch objects.\n * @param {string} text Old text.\n * @return {!Array.>} Two element Array, containing the\n * new text and an array of boolean values.\n */\ndiff_match_patch.prototype.patch_apply = function(patches, text) {\n if (patches.length == 0) {\n return [text, []];\n }\n\n // Deep copy the patches so that no changes are made to originals.\n patches = this.patch_deepCopy(patches);\n\n var nullPadding = this.patch_addPadding(patches);\n text = nullPadding + text + nullPadding;\n\n this.patch_splitMax(patches);\n // delta keeps track of the offset between the expected and actual location\n // of the previous patch. If there are patches expected at positions 10 and\n // 20, but the first patch was found at 12, delta is 2 and the second patch\n // has an effective expected position of 22.\n var delta = 0;\n var results = [];\n for (var x = 0; x < patches.length; x++) {\n var expected_loc = patches[x].start2 + delta;\n var text1 = this.diff_text1(patches[x].diffs);\n var start_loc;\n var end_loc = -1;\n if (text1.length > this.Match_MaxBits) {\n // patch_splitMax will only provide an oversized pattern in the case of\n // a monster delete.\n start_loc = this.match_main(text, text1.substring(0, this.Match_MaxBits),\n expected_loc);\n if (start_loc != -1) {\n end_loc = this.match_main(text,\n text1.substring(text1.length - this.Match_MaxBits),\n expected_loc + text1.length - this.Match_MaxBits);\n if (end_loc == -1 || start_loc >= end_loc) {\n // Can't find valid trailing context. Drop this patch.\n start_loc = -1;\n }\n }\n } else {\n start_loc = this.match_main(text, text1, expected_loc);\n }\n if (start_loc == -1) {\n // No match found. :(\n results[x] = false;\n // Subtract the delta for this failed patch from subsequent patches.\n delta -= patches[x].length2 - patches[x].length1;\n } else {\n // Found a match. :)\n results[x] = true;\n delta = start_loc - expected_loc;\n var text2;\n if (end_loc == -1) {\n text2 = text.substring(start_loc, start_loc + text1.length);\n } else {\n text2 = text.substring(start_loc, end_loc + this.Match_MaxBits);\n }\n if (text1 == text2) {\n // Perfect match, just shove the replacement text in.\n text = text.substring(0, start_loc) +\n this.diff_text2(patches[x].diffs) +\n text.substring(start_loc + text1.length);\n } else {\n // Imperfect match. Run a diff to get a framework of equivalent\n // indices.\n var diffs = this.diff_main(text1, text2, false);\n if (text1.length > this.Match_MaxBits &&\n this.diff_levenshtein(diffs) / text1.length >\n this.Patch_DeleteThreshold) {\n // The end points match, but the content is unacceptably bad.\n results[x] = false;\n } else {\n this.diff_cleanupSemanticLossless(diffs);\n var index1 = 0;\n var index2;\n for (var y = 0; y < patches[x].diffs.length; y++) {\n var mod = patches[x].diffs[y];\n if (mod[0] !== DIFF_EQUAL) {\n index2 = this.diff_xIndex(diffs, index1);\n }\n if (mod[0] === DIFF_INSERT) { // Insertion\n text = text.substring(0, start_loc + index2) + mod[1] +\n text.substring(start_loc + index2);\n } else if (mod[0] === DIFF_DELETE) { // Deletion\n text = text.substring(0, start_loc + index2) +\n text.substring(start_loc + this.diff_xIndex(diffs,\n index1 + mod[1].length));\n }\n if (mod[0] !== DIFF_DELETE) {\n index1 += mod[1].length;\n }\n }\n }\n }\n }\n }\n // Strip the padding off.\n text = text.substring(nullPadding.length, text.length - nullPadding.length);\n return [text, results];\n};\n\n\n/**\n * Add some padding on text start and end so that edges can match something.\n * Intended to be called only from within patch_apply.\n * @param {!Array.} patches Array of Patch objects.\n * @return {string} The padding string added to each side.\n */\ndiff_match_patch.prototype.patch_addPadding = function(patches) {\n var paddingLength = this.Patch_Margin;\n var nullPadding = '';\n for (var x = 1; x <= paddingLength; x++) {\n nullPadding += String.fromCharCode(x);\n }\n\n // Bump all the patches forward.\n for (var x = 0; x < patches.length; x++) {\n patches[x].start1 += paddingLength;\n patches[x].start2 += paddingLength;\n }\n\n // Add some padding on start of first diff.\n var patch = patches[0];\n var diffs = patch.diffs;\n if (diffs.length == 0 || diffs[0][0] != DIFF_EQUAL) {\n // Add nullPadding equality.\n diffs.unshift(new diff_match_patch.Diff(DIFF_EQUAL, nullPadding));\n patch.start1 -= paddingLength; // Should be 0.\n patch.start2 -= paddingLength; // Should be 0.\n patch.length1 += paddingLength;\n patch.length2 += paddingLength;\n } else if (paddingLength > diffs[0][1].length) {\n // Grow first equality.\n var extraLength = paddingLength - diffs[0][1].length;\n diffs[0][1] = nullPadding.substring(diffs[0][1].length) + diffs[0][1];\n patch.start1 -= extraLength;\n patch.start2 -= extraLength;\n patch.length1 += extraLength;\n patch.length2 += extraLength;\n }\n\n // Add some padding on end of last diff.\n patch = patches[patches.length - 1];\n diffs = patch.diffs;\n if (diffs.length == 0 || diffs[diffs.length - 1][0] != DIFF_EQUAL) {\n // Add nullPadding equality.\n diffs.push(new diff_match_patch.Diff(DIFF_EQUAL, nullPadding));\n patch.length1 += paddingLength;\n patch.length2 += paddingLength;\n } else if (paddingLength > diffs[diffs.length - 1][1].length) {\n // Grow last equality.\n var extraLength = paddingLength - diffs[diffs.length - 1][1].length;\n diffs[diffs.length - 1][1] += nullPadding.substring(0, extraLength);\n patch.length1 += extraLength;\n patch.length2 += extraLength;\n }\n\n return nullPadding;\n};\n\n\n/**\n * Look through the patches and break up any which are longer than the maximum\n * limit of the match algorithm.\n * Intended to be called only from within patch_apply.\n * @param {!Array.} patches Array of Patch objects.\n */\ndiff_match_patch.prototype.patch_splitMax = function(patches) {\n var patch_size = this.Match_MaxBits;\n for (var x = 0; x < patches.length; x++) {\n if (patches[x].length1 <= patch_size) {\n continue;\n }\n var bigpatch = patches[x];\n // Remove the big old patch.\n patches.splice(x--, 1);\n var start1 = bigpatch.start1;\n var start2 = bigpatch.start2;\n var precontext = '';\n while (bigpatch.diffs.length !== 0) {\n // Create one of several smaller patches.\n var patch = new diff_match_patch.patch_obj();\n var empty = true;\n patch.start1 = start1 - precontext.length;\n patch.start2 = start2 - precontext.length;\n if (precontext !== '') {\n patch.length1 = patch.length2 = precontext.length;\n patch.diffs.push(new diff_match_patch.Diff(DIFF_EQUAL, precontext));\n }\n while (bigpatch.diffs.length !== 0 &&\n patch.length1 < patch_size - this.Patch_Margin) {\n var diff_type = bigpatch.diffs[0][0];\n var diff_text = bigpatch.diffs[0][1];\n if (diff_type === DIFF_INSERT) {\n // Insertions are harmless.\n patch.length2 += diff_text.length;\n start2 += diff_text.length;\n patch.diffs.push(bigpatch.diffs.shift());\n empty = false;\n } else if (diff_type === DIFF_DELETE && patch.diffs.length == 1 &&\n patch.diffs[0][0] == DIFF_EQUAL &&\n diff_text.length > 2 * patch_size) {\n // This is a large deletion. Let it pass in one chunk.\n patch.length1 += diff_text.length;\n start1 += diff_text.length;\n empty = false;\n patch.diffs.push(new diff_match_patch.Diff(diff_type, diff_text));\n bigpatch.diffs.shift();\n } else {\n // Deletion or equality. Only take as much as we can stomach.\n diff_text = diff_text.substring(0,\n patch_size - patch.length1 - this.Patch_Margin);\n patch.length1 += diff_text.length;\n start1 += diff_text.length;\n if (diff_type === DIFF_EQUAL) {\n patch.length2 += diff_text.length;\n start2 += diff_text.length;\n } else {\n empty = false;\n }\n patch.diffs.push(new diff_match_patch.Diff(diff_type, diff_text));\n if (diff_text == bigpatch.diffs[0][1]) {\n bigpatch.diffs.shift();\n } else {\n bigpatch.diffs[0][1] =\n bigpatch.diffs[0][1].substring(diff_text.length);\n }\n }\n }\n // Compute the head context for the next patch.\n precontext = this.diff_text2(patch.diffs);\n precontext =\n precontext.substring(precontext.length - this.Patch_Margin);\n // Append the end context for this patch.\n var postcontext = this.diff_text1(bigpatch.diffs)\n .substring(0, this.Patch_Margin);\n if (postcontext !== '') {\n patch.length1 += postcontext.length;\n patch.length2 += postcontext.length;\n if (patch.diffs.length !== 0 &&\n patch.diffs[patch.diffs.length - 1][0] === DIFF_EQUAL) {\n patch.diffs[patch.diffs.length - 1][1] += postcontext;\n } else {\n patch.diffs.push(new diff_match_patch.Diff(DIFF_EQUAL, postcontext));\n }\n }\n if (!empty) {\n patches.splice(++x, 0, patch);\n }\n }\n }\n};\n\n\n/**\n * Take a list of patches and return a textual representation.\n * @param {!Array.} patches Array of Patch objects.\n * @return {string} Text representation of patches.\n */\ndiff_match_patch.prototype.patch_toText = function(patches) {\n var text = [];\n for (var x = 0; x < patches.length; x++) {\n text[x] = patches[x];\n }\n return text.join('');\n};\n\n\n/**\n * Parse a textual representation of patches and return a list of Patch objects.\n * @param {string} textline Text representation of patches.\n * @return {!Array.} Array of Patch objects.\n * @throws {!Error} If invalid input.\n */\ndiff_match_patch.prototype.patch_fromText = function(textline) {\n var patches = [];\n if (!textline) {\n return patches;\n }\n var text = textline.split('\\n');\n var textPointer = 0;\n var patchHeader = /^@@ -(\\d+),?(\\d*) \\+(\\d+),?(\\d*) @@$/;\n while (textPointer < text.length) {\n var m = text[textPointer].match(patchHeader);\n if (!m) {\n throw new Error('Invalid patch string: ' + text[textPointer]);\n }\n var patch = new diff_match_patch.patch_obj();\n patches.push(patch);\n patch.start1 = parseInt(m[1], 10);\n if (m[2] === '') {\n patch.start1--;\n patch.length1 = 1;\n } else if (m[2] == '0') {\n patch.length1 = 0;\n } else {\n patch.start1--;\n patch.length1 = parseInt(m[2], 10);\n }\n\n patch.start2 = parseInt(m[3], 10);\n if (m[4] === '') {\n patch.start2--;\n patch.length2 = 1;\n } else if (m[4] == '0') {\n patch.length2 = 0;\n } else {\n patch.start2--;\n patch.length2 = parseInt(m[4], 10);\n }\n textPointer++;\n\n while (textPointer < text.length) {\n var sign = text[textPointer].charAt(0);\n try {\n var line = decodeURI(text[textPointer].substring(1));\n } catch (ex) {\n // Malformed URI sequence.\n throw new Error('Illegal escape in patch_fromText: ' + line);\n }\n if (sign == '-') {\n // Deletion.\n patch.diffs.push(new diff_match_patch.Diff(DIFF_DELETE, line));\n } else if (sign == '+') {\n // Insertion.\n patch.diffs.push(new diff_match_patch.Diff(DIFF_INSERT, line));\n } else if (sign == ' ') {\n // Minor equality.\n patch.diffs.push(new diff_match_patch.Diff(DIFF_EQUAL, line));\n } else if (sign == '@') {\n // Start of next patch.\n break;\n } else if (sign === '') {\n // Blank line? Whatever.\n } else {\n // WTF?\n throw new Error('Invalid patch mode \"' + sign + '\" in: ' + line);\n }\n textPointer++;\n }\n }\n return patches;\n};\n\n\n/**\n * Class representing one patch operation.\n * @constructor\n */\ndiff_match_patch.patch_obj = function() {\n /** @type {!Array.} */\n this.diffs = [];\n /** @type {?number} */\n this.start1 = null;\n /** @type {?number} */\n this.start2 = null;\n /** @type {number} */\n this.length1 = 0;\n /** @type {number} */\n this.length2 = 0;\n};\n\n\n/**\n * Emulate GNU diff's format.\n * Header: @@ -382,8 +481,9 @@\n * Indices are printed as 1-based, not 0-based.\n * @return {string} The GNU diff string.\n */\ndiff_match_patch.patch_obj.prototype.toString = function() {\n var coords1, coords2;\n if (this.length1 === 0) {\n coords1 = this.start1 + ',0';\n } else if (this.length1 == 1) {\n coords1 = this.start1 + 1;\n } else {\n coords1 = (this.start1 + 1) + ',' + this.length1;\n }\n if (this.length2 === 0) {\n coords2 = this.start2 + ',0';\n } else if (this.length2 == 1) {\n coords2 = this.start2 + 1;\n } else {\n coords2 = (this.start2 + 1) + ',' + this.length2;\n }\n var text = ['@@ -' + coords1 + ' +' + coords2 + ' @@\\n'];\n var op;\n // Escape the body of the patch with %xx notation.\n for (var x = 0; x < this.diffs.length; x++) {\n switch (this.diffs[x][0]) {\n case DIFF_INSERT:\n op = '+';\n break;\n case DIFF_DELETE:\n op = '-';\n break;\n case DIFF_EQUAL:\n op = ' ';\n break;\n }\n text[x + 1] = op + encodeURI(this.diffs[x][1]) + '\\n';\n }\n return text.join('').replace(/%20/g, ' ');\n};\n\n\n// The following export code was added by @ForbesLindesay\nmodule.exports = diff_match_patch;\nmodule.exports['diff_match_patch'] = diff_match_patch;\nmodule.exports['DIFF_DELETE'] = DIFF_DELETE;\nmodule.exports['DIFF_INSERT'] = DIFF_INSERT;\nmodule.exports['DIFF_EQUAL'] = DIFF_EQUAL;","module.exports = require('./lib')\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.fromRange = fromRange;\nexports.toRange = toRange;\n\nvar _domSeek = _interopRequireDefault(require(\"dom-seek\"));\n\nvar _rangeToString = _interopRequireDefault(require(\"./range-to-string\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { \"default\": obj }; }\n\nvar SHOW_TEXT = 4;\n\nfunction fromRange(root, range) {\n if (root === undefined) {\n throw new Error('missing required parameter \"root\"');\n }\n\n if (range === undefined) {\n throw new Error('missing required parameter \"range\"');\n }\n\n var document = root.ownerDocument;\n var prefix = document.createRange();\n var startNode = range.startContainer;\n var startOffset = range.startOffset;\n prefix.setStart(root, 0);\n prefix.setEnd(startNode, startOffset);\n var start = (0, _rangeToString[\"default\"])(prefix).length;\n var end = start + (0, _rangeToString[\"default\"])(range).length;\n return {\n start: start,\n end: end\n };\n}\n\nfunction toRange(root) {\n var selector = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (root === undefined) {\n throw new Error('missing required parameter \"root\"');\n }\n\n var document = root.ownerDocument;\n var range = document.createRange();\n var iter = document.createNodeIterator(root, SHOW_TEXT);\n var start = selector.start || 0;\n var end = selector.end || start;\n var startOffset = start - (0, _domSeek[\"default\"])(iter, start);\n var startNode = iter.referenceNode;\n var remainder = end - start + startOffset;\n var endOffset = remainder - (0, _domSeek[\"default\"])(iter, remainder);\n var endNode = iter.referenceNode;\n range.setStart(startNode, startOffset);\n range.setEnd(endNode, endOffset);\n return range;\n}\n//# sourceMappingURL=index.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = rangeToString;\n\n/**\n * Return the next node after `node` in a tree order traversal of the document.\n */\nfunction nextNode(node, skipChildren) {\n if (!skipChildren && node.firstChild) {\n return node.firstChild;\n }\n\n do {\n if (node.nextSibling) {\n return node.nextSibling;\n }\n\n node = node.parentNode;\n } while (node);\n /* istanbul ignore next */\n\n\n return node;\n}\n\nfunction firstNode(range) {\n if (range.startContainer.nodeType === Node.ELEMENT_NODE) {\n var node = range.startContainer.childNodes[range.startOffset];\n return node || nextNode(range.startContainer, true\n /* skip children */\n );\n }\n\n return range.startContainer;\n}\n\nfunction firstNodeAfter(range) {\n if (range.endContainer.nodeType === Node.ELEMENT_NODE) {\n var node = range.endContainer.childNodes[range.endOffset];\n return node || nextNode(range.endContainer, true\n /* skip children */\n );\n }\n\n return nextNode(range.endContainer);\n}\n\nfunction forEachNodeInRange(range, cb) {\n var node = firstNode(range);\n var pastEnd = firstNodeAfter(range);\n\n while (node !== pastEnd) {\n cb(node);\n node = nextNode(node);\n }\n}\n/**\n * A ponyfill for Range.toString().\n * Spec: https://dom.spec.whatwg.org/#dom-range-stringifier\n *\n * Works around the buggy Range.toString() implementation in IE and Edge.\n * See https://github.com/tilgovi/dom-anchor-text-position/issues/4\n */\n\n\nfunction rangeToString(range) {\n // This is a fairly direct translation of the Range.toString() implementation\n // in Blink.\n var text = '';\n forEachNodeInRange(range, function (node) {\n if (node.nodeType !== Node.TEXT_NODE) {\n return;\n }\n\n var start = node === range.startContainer ? range.startOffset : 0;\n var end = node === range.endContainer ? range.endOffset : node.textContent.length;\n text += node.textContent.slice(start, end);\n });\n return text;\n}\n//# sourceMappingURL=range-to-string.js.map","module.exports = require('./lib')['default'];\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports[\"default\"] = seek;\nvar E_END = 'Iterator exhausted before seek ended.';\nvar E_SHOW = 'Argument 1 of seek must use filter NodeFilter.SHOW_TEXT.';\nvar E_WHERE = 'Argument 2 of seek must be an integer or a Text Node.';\nvar DOCUMENT_POSITION_PRECEDING = 2;\nvar SHOW_TEXT = 4;\nvar TEXT_NODE = 3;\n\nfunction seek(iter, where) {\n if (iter.whatToShow !== SHOW_TEXT) {\n var error; // istanbul ignore next\n\n try {\n error = new DOMException(E_SHOW, 'InvalidStateError');\n } catch (_unused) {\n error = new Error(E_SHOW);\n error.code = 11;\n error.name = 'InvalidStateError';\n\n error.toString = function () {\n return \"InvalidStateError: \".concat(E_SHOW);\n };\n }\n\n throw error;\n }\n\n var count = 0;\n var node = iter.referenceNode;\n var predicates = null;\n\n if (isInteger(where)) {\n predicates = {\n forward: function forward() {\n return count < where;\n },\n backward: function backward() {\n return count > where || !iter.pointerBeforeReferenceNode;\n }\n };\n } else if (isText(where)) {\n var forward = before(node, where) ? function () {\n return false;\n } : function () {\n return node !== where;\n };\n\n var backward = function backward() {\n return node !== where || !iter.pointerBeforeReferenceNode;\n };\n\n predicates = {\n forward: forward,\n backward: backward\n };\n } else {\n throw new TypeError(E_WHERE);\n }\n\n while (predicates.forward()) {\n node = iter.nextNode();\n\n if (node === null) {\n throw new RangeError(E_END);\n }\n\n count += node.nodeValue.length;\n }\n\n if (iter.nextNode()) {\n node = iter.previousNode();\n }\n\n while (predicates.backward()) {\n node = iter.previousNode();\n\n if (node === null) {\n throw new RangeError(E_END);\n }\n\n count -= node.nodeValue.length;\n }\n\n if (!isText(iter.referenceNode)) {\n throw new RangeError(E_END);\n }\n\n return count;\n}\n\nfunction isInteger(n) {\n if (typeof n !== 'number') return false;\n return isFinite(n) && Math.floor(n) === n;\n}\n\nfunction isText(node) {\n return node.nodeType === TEXT_NODE;\n}\n\nfunction before(ref, node) {\n return ref.compareDocumentPosition(node) & DOCUMENT_POSITION_PRECEDING;\n}\n//# sourceMappingURL=index.js.map","var htmx = (function() {\n 'use strict'\n\n // Public API\n const htmx = {\n // Tsc madness here, assigning the functions directly results in an invalid TypeScript output, but reassigning is fine\n /* Event processing */\n /** @type {typeof onLoadHelper} */\n onLoad: null,\n /** @type {typeof processNode} */\n process: null,\n /** @type {typeof addEventListenerImpl} */\n on: null,\n /** @type {typeof removeEventListenerImpl} */\n off: null,\n /** @type {typeof triggerEvent} */\n trigger: null,\n /** @type {typeof ajaxHelper} */\n ajax: null,\n /* DOM querying helpers */\n /** @type {typeof find} */\n find: null,\n /** @type {typeof findAll} */\n findAll: null,\n /** @type {typeof closest} */\n closest: null,\n /**\n * Returns the input values that would resolve for a given element via the htmx value resolution mechanism\n *\n * @see https://htmx.org/api/#values\n *\n * @param {Element} elt the element to resolve values on\n * @param {HttpVerb} type the request type (e.g. **get** or **post**) non-GET's will include the enclosing form of the element. Defaults to **post**\n * @returns {Object}\n */\n values: function(elt, type) {\n const inputValues = getInputValues(elt, type || 'post')\n return inputValues.values\n },\n /* DOM manipulation helpers */\n /** @type {typeof removeElement} */\n remove: null,\n /** @type {typeof addClassToElement} */\n addClass: null,\n /** @type {typeof removeClassFromElement} */\n removeClass: null,\n /** @type {typeof toggleClassOnElement} */\n toggleClass: null,\n /** @type {typeof takeClassForElement} */\n takeClass: null,\n /** @type {typeof swap} */\n swap: null,\n /* Extension entrypoints */\n /** @type {typeof defineExtension} */\n defineExtension: null,\n /** @type {typeof removeExtension} */\n removeExtension: null,\n /* Debugging */\n /** @type {typeof logAll} */\n logAll: null,\n /** @type {typeof logNone} */\n logNone: null,\n /* Debugging */\n /**\n * The logger htmx uses to log with\n *\n * @see https://htmx.org/api/#logger\n */\n logger: null,\n /**\n * A property holding the configuration htmx uses at runtime.\n *\n * Note that using a [meta tag](https://htmx.org/docs/#config) is the preferred mechanism for setting these properties.\n *\n * @see https://htmx.org/api/#config\n */\n config: {\n /**\n * Whether to use history.\n * @type boolean\n * @default true\n */\n historyEnabled: true,\n /**\n * The number of pages to keep in **localStorage** for history support.\n * @type number\n * @default 10\n */\n historyCacheSize: 10,\n /**\n * @type boolean\n * @default false\n */\n refreshOnHistoryMiss: false,\n /**\n * The default swap style to use if **[hx-swap](https://htmx.org/attributes/hx-swap)** is omitted.\n * @type HtmxSwapStyle\n * @default 'innerHTML'\n */\n defaultSwapStyle: 'innerHTML',\n /**\n * The default delay between receiving a response from the server and doing the swap.\n * @type number\n * @default 0\n */\n defaultSwapDelay: 0,\n /**\n * The default delay between completing the content swap and settling attributes.\n * @type number\n * @default 20\n */\n defaultSettleDelay: 20,\n /**\n * If true, htmx will inject a small amount of CSS into the page to make indicators invisible unless the **htmx-indicator** class is present.\n * @type boolean\n * @default true\n */\n includeIndicatorStyles: true,\n /**\n * The class to place on indicators when a request is in flight.\n * @type string\n * @default 'htmx-indicator'\n */\n indicatorClass: 'htmx-indicator',\n /**\n * The class to place on triggering elements when a request is in flight.\n * @type string\n * @default 'htmx-request'\n */\n requestClass: 'htmx-request',\n /**\n * The class to temporarily place on elements that htmx has added to the DOM.\n * @type string\n * @default 'htmx-added'\n */\n addedClass: 'htmx-added',\n /**\n * The class to place on target elements when htmx is in the settling phase.\n * @type string\n * @default 'htmx-settling'\n */\n settlingClass: 'htmx-settling',\n /**\n * The class to place on target elements when htmx is in the swapping phase.\n * @type string\n * @default 'htmx-swapping'\n */\n swappingClass: 'htmx-swapping',\n /**\n * Allows the use of eval-like functionality in htmx, to enable **hx-vars**, trigger conditions & script tag evaluation. Can be set to **false** for CSP compatibility.\n * @type boolean\n * @default true\n */\n allowEval: true,\n /**\n * If set to false, disables the interpretation of script tags.\n * @type boolean\n * @default true\n */\n allowScriptTags: true,\n /**\n * If set, the nonce will be added to inline scripts.\n * @type string\n * @default ''\n */\n inlineScriptNonce: '',\n /**\n * If set, the nonce will be added to inline styles.\n * @type string\n * @default ''\n */\n inlineStyleNonce: '',\n /**\n * The attributes to settle during the settling phase.\n * @type string[]\n * @default ['class', 'style', 'width', 'height']\n */\n attributesToSettle: ['class', 'style', 'width', 'height'],\n /**\n * Allow cross-site Access-Control requests using credentials such as cookies, authorization headers or TLS client certificates.\n * @type boolean\n * @default false\n */\n withCredentials: false,\n /**\n * @type number\n * @default 0\n */\n timeout: 0,\n /**\n * The default implementation of **getWebSocketReconnectDelay** for reconnecting after unexpected connection loss by the event code **Abnormal Closure**, **Service Restart** or **Try Again Later**.\n * @type {'full-jitter' | ((retryCount:number) => number)}\n * @default \"full-jitter\"\n */\n wsReconnectDelay: 'full-jitter',\n /**\n * The type of binary data being received over the WebSocket connection\n * @type BinaryType\n * @default 'blob'\n */\n wsBinaryType: 'blob',\n /**\n * @type string\n * @default '[hx-disable], [data-hx-disable]'\n */\n disableSelector: '[hx-disable], [data-hx-disable]',\n /**\n * @type {'auto' | 'instant' | 'smooth'}\n * @default 'smooth'\n */\n scrollBehavior: 'instant',\n /**\n * If the focused element should be scrolled into view.\n * @type boolean\n * @default false\n */\n defaultFocusScroll: false,\n /**\n * If set to true htmx will include a cache-busting parameter in GET requests to avoid caching partial responses by the browser\n * @type boolean\n * @default false\n */\n getCacheBusterParam: false,\n /**\n * If set to true, htmx will use the View Transition API when swapping in new content.\n * @type boolean\n * @default false\n */\n globalViewTransitions: false,\n /**\n * htmx will format requests with these methods by encoding their parameters in the URL, not the request body\n * @type {(HttpVerb)[]}\n * @default ['get', 'delete']\n */\n methodsThatUseUrlParams: ['get', 'delete'],\n /**\n * If set to true, disables htmx-based requests to non-origin hosts.\n * @type boolean\n * @default false\n */\n selfRequestsOnly: true,\n /**\n * If set to true htmx will not update the title of the document when a title tag is found in new content\n * @type boolean\n * @default false\n */\n ignoreTitle: false,\n /**\n * Whether the target of a boosted element is scrolled into the viewport.\n * @type boolean\n * @default true\n */\n scrollIntoViewOnBoost: true,\n /**\n * The cache to store evaluated trigger specifications into.\n * You may define a simple object to use a never-clearing cache, or implement your own system using a [proxy object](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Proxy)\n * @type {Object|null}\n * @default null\n */\n triggerSpecsCache: null,\n /** @type boolean */\n disableInheritance: false,\n /** @type HtmxResponseHandlingConfig[] */\n responseHandling: [\n { code: '204', swap: false },\n { code: '[23]..', swap: true },\n { code: '[45]..', swap: false, error: true }\n ],\n /**\n * Whether to process OOB swaps on elements that are nested within the main response element.\n * @type boolean\n * @default true\n */\n allowNestedOobSwaps: true\n },\n /** @type {typeof parseInterval} */\n parseInterval: null,\n /** @type {typeof internalEval} */\n _: null,\n version: '2.0.1'\n }\n // Tsc madness part 2\n htmx.onLoad = onLoadHelper\n htmx.process = processNode\n htmx.on = addEventListenerImpl\n htmx.off = removeEventListenerImpl\n htmx.trigger = triggerEvent\n htmx.ajax = ajaxHelper\n htmx.find = find\n htmx.findAll = findAll\n htmx.closest = closest\n htmx.remove = removeElement\n htmx.addClass = addClassToElement\n htmx.removeClass = removeClassFromElement\n htmx.toggleClass = toggleClassOnElement\n htmx.takeClass = takeClassForElement\n htmx.swap = swap\n htmx.defineExtension = defineExtension\n htmx.removeExtension = removeExtension\n htmx.logAll = logAll\n htmx.logNone = logNone\n htmx.parseInterval = parseInterval\n htmx._ = internalEval\n\n const internalAPI = {\n addTriggerHandler,\n bodyContains,\n canAccessLocalStorage,\n findThisElement,\n filterValues,\n swap,\n hasAttribute,\n getAttributeValue,\n getClosestAttributeValue,\n getClosestMatch,\n getExpressionVars,\n getHeaders,\n getInputValues,\n getInternalData,\n getSwapSpecification,\n getTriggerSpecs,\n getTarget,\n makeFragment,\n mergeObjects,\n makeSettleInfo,\n oobSwap,\n querySelectorExt,\n settleImmediately,\n shouldCancel,\n triggerEvent,\n triggerErrorEvent,\n withExtensions\n }\n\n const VERBS = ['get', 'post', 'put', 'delete', 'patch']\n const VERB_SELECTOR = VERBS.map(function(verb) {\n return '[hx-' + verb + '], [data-hx-' + verb + ']'\n }).join(', ')\n\n const HEAD_TAG_REGEX = makeTagRegEx('head')\n\n //= ===================================================================\n // Utilities\n //= ===================================================================\n\n /**\n * @param {string} tag\n * @param {boolean} global\n * @returns {RegExp}\n */\n function makeTagRegEx(tag, global = false) {\n return new RegExp(`<${tag}(\\\\s[^>]*>|>)([\\\\s\\\\S]*?)<\\\\/${tag}>`,\n global ? 'gim' : 'im')\n }\n\n /**\n * Parses an interval string consistent with the way htmx does. Useful for plugins that have timing-related attributes.\n *\n * Caution: Accepts an int followed by either **s** or **ms**. All other values use **parseFloat**\n *\n * @see https://htmx.org/api/#parseInterval\n *\n * @param {string} str timing string\n * @returns {number|undefined}\n */\n function parseInterval(str) {\n if (str == undefined) {\n return undefined\n }\n\n let interval = NaN\n if (str.slice(-2) == 'ms') {\n interval = parseFloat(str.slice(0, -2))\n } else if (str.slice(-1) == 's') {\n interval = parseFloat(str.slice(0, -1)) * 1000\n } else if (str.slice(-1) == 'm') {\n interval = parseFloat(str.slice(0, -1)) * 1000 * 60\n } else {\n interval = parseFloat(str)\n }\n return isNaN(interval) ? undefined : interval\n }\n\n /**\n * @param {Node} elt\n * @param {string} name\n * @returns {(string | null)}\n */\n function getRawAttribute(elt, name) {\n return elt instanceof Element && elt.getAttribute(name)\n }\n\n /**\n * @param {Element} elt\n * @param {string} qualifiedName\n * @returns {boolean}\n */\n // resolve with both hx and data-hx prefixes\n function hasAttribute(elt, qualifiedName) {\n return !!elt.hasAttribute && (elt.hasAttribute(qualifiedName) ||\n elt.hasAttribute('data-' + qualifiedName))\n }\n\n /**\n *\n * @param {Node} elt\n * @param {string} qualifiedName\n * @returns {(string | null)}\n */\n function getAttributeValue(elt, qualifiedName) {\n return getRawAttribute(elt, qualifiedName) || getRawAttribute(elt, 'data-' + qualifiedName)\n }\n\n /**\n * @param {Node} elt\n * @returns {Node | null}\n */\n function parentElt(elt) {\n const parent = elt.parentElement\n if (!parent && elt.parentNode instanceof ShadowRoot) return elt.parentNode\n return parent\n }\n\n /**\n * @returns {Document}\n */\n function getDocument() {\n return document\n }\n\n /**\n * @param {Node} elt\n * @param {boolean} global\n * @returns {Node|Document}\n */\n function getRootNode(elt, global) {\n return elt.getRootNode ? elt.getRootNode({ composed: global }) : getDocument()\n }\n\n /**\n * @param {Node} elt\n * @param {(e:Node) => boolean} condition\n * @returns {Node | null}\n */\n function getClosestMatch(elt, condition) {\n while (elt && !condition(elt)) {\n elt = parentElt(elt)\n }\n\n return elt || null\n }\n\n /**\n * @param {Element} initialElement\n * @param {Element} ancestor\n * @param {string} attributeName\n * @returns {string|null}\n */\n function getAttributeValueWithDisinheritance(initialElement, ancestor, attributeName) {\n const attributeValue = getAttributeValue(ancestor, attributeName)\n const disinherit = getAttributeValue(ancestor, 'hx-disinherit')\n var inherit = getAttributeValue(ancestor, 'hx-inherit')\n if (initialElement !== ancestor) {\n if (htmx.config.disableInheritance) {\n if (inherit && (inherit === '*' || inherit.split(' ').indexOf(attributeName) >= 0)) {\n return attributeValue\n } else {\n return null\n }\n }\n if (disinherit && (disinherit === '*' || disinherit.split(' ').indexOf(attributeName) >= 0)) {\n return 'unset'\n }\n }\n return attributeValue\n }\n\n /**\n * @param {Element} elt\n * @param {string} attributeName\n * @returns {string | null}\n */\n function getClosestAttributeValue(elt, attributeName) {\n let closestAttr = null\n getClosestMatch(elt, function(e) {\n return !!(closestAttr = getAttributeValueWithDisinheritance(elt, asElement(e), attributeName))\n })\n if (closestAttr !== 'unset') {\n return closestAttr\n }\n }\n\n /**\n * @param {Node} elt\n * @param {string} selector\n * @returns {boolean}\n */\n function matches(elt, selector) {\n // @ts-ignore: non-standard properties for browser compatibility\n // noinspection JSUnresolvedVariable\n const matchesFunction = elt instanceof Element && (elt.matches || elt.matchesSelector || elt.msMatchesSelector || elt.mozMatchesSelector || elt.webkitMatchesSelector || elt.oMatchesSelector)\n return !!matchesFunction && matchesFunction.call(elt, selector)\n }\n\n /**\n * @param {string} str\n * @returns {string}\n */\n function getStartTag(str) {\n const tagMatcher = /<([a-z][^\\/\\0>\\x20\\t\\r\\n\\f]*)/i\n const match = tagMatcher.exec(str)\n if (match) {\n return match[1].toLowerCase()\n } else {\n return ''\n }\n }\n\n /**\n * @param {string} resp\n * @returns {Document}\n */\n function parseHTML(resp) {\n const parser = new DOMParser()\n return parser.parseFromString(resp, 'text/html')\n }\n\n /**\n * @param {DocumentFragment} fragment\n * @param {Node} elt\n */\n function takeChildrenFor(fragment, elt) {\n while (elt.childNodes.length > 0) {\n fragment.append(elt.childNodes[0])\n }\n }\n\n /**\n * @param {HTMLScriptElement} script\n * @returns {HTMLScriptElement}\n */\n function duplicateScript(script) {\n const newScript = getDocument().createElement('script')\n forEach(script.attributes, function(attr) {\n newScript.setAttribute(attr.name, attr.value)\n })\n newScript.textContent = script.textContent\n newScript.async = false\n if (htmx.config.inlineScriptNonce) {\n newScript.nonce = htmx.config.inlineScriptNonce\n }\n return newScript\n }\n\n /**\n * @param {HTMLScriptElement} script\n * @returns {boolean}\n */\n function isJavaScriptScriptNode(script) {\n return script.matches('script') && (script.type === 'text/javascript' || script.type === 'module' || script.type === '')\n }\n\n /**\n * we have to make new copies of script tags that we are going to insert because\n * SOME browsers (not saying who, but it involves an element and an animal) don't\n * execute scripts created in