From 1e858e13048c34e78b854f59b06899c6db816485 Mon Sep 17 00:00:00 2001 From: Adam Raine Date: Tue, 23 Jan 2024 13:08:22 -0800 Subject: [PATCH] Update treemap to lighthouse@11.5.0 --- treemap/src/bundled.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/treemap/src/bundled.js b/treemap/src/bundled.js index 7d9d7052019a..5da925956e8e 100644 --- a/treemap/src/bundled.js +++ b/treemap/src/bundled.js @@ -13,7 +13,7 @@ * or implied. See the License for the specific language governing * permissions and limitations under the License. */ -"use strict";window.LH_CURRENT_VERSION="11.4.0";const strings={"en-US":{allLabel:"All",allScriptsDropdownLabel:"All Scripts",coverageColumnName:"Coverage",duplicateModulesLabel:"Duplicate Modules",resourceBytesLabel:"Resource Bytes",tableColumnName:"Name",toggleTableButtonLabel:"Toggle Table",unusedBytesLabel:"Unused Bytes"},en:{allLabel:"All",allScriptsDropdownLabel:"All Scripts",coverageColumnName:"Coverage",duplicateModulesLabel:"Duplicate Modules",resourceBytesLabel:"Resource Bytes",tableColumnName:"Name",toggleTableButtonLabel:"Toggle Table",unusedBytesLabel:"Unused Bytes"},"en-AU":{allLabel:"All",allScriptsDropdownLabel:"All scripts",coverageColumnName:"Coverage",duplicateModulesLabel:"Duplicate modules",resourceBytesLabel:"Resource bytes",tableColumnName:"Name",toggleTableButtonLabel:"Toggle table",unusedBytesLabel:"Unused bytes"},"en-GB":{allLabel:"All",allScriptsDropdownLabel:"All scripts",coverageColumnName:"Coverage",duplicateModulesLabel:"Duplicate modules",resourceBytesLabel:"Resource bytes",tableColumnName:"Name",toggleTableButtonLabel:"Toggle table",unusedBytesLabel:"Unused bytes"},"en-IE":{allLabel:"All",allScriptsDropdownLabel:"All scripts",coverageColumnName:"Coverage",duplicateModulesLabel:"Duplicate modules",resourceBytesLabel:"Resource bytes",tableColumnName:"Name",toggleTableButtonLabel:"Toggle table",unusedBytesLabel:"Unused bytes"},"en-SG":{allLabel:"All",allScriptsDropdownLabel:"All scripts",coverageColumnName:"Coverage",duplicateModulesLabel:"Duplicate modules",resourceBytesLabel:"Resource bytes",tableColumnName:"Name",toggleTableButtonLabel:"Toggle table",unusedBytesLabel:"Unused bytes"},"en-ZA":{allLabel:"All",allScriptsDropdownLabel:"All scripts",coverageColumnName:"Coverage",duplicateModulesLabel:"Duplicate modules",resourceBytesLabel:"Resource bytes",tableColumnName:"Name",toggleTableButtonLabel:"Toggle table",unusedBytesLabel:"Unused bytes"},"en-IN":{allLabel:"All",allScriptsDropdownLabel:"All scripts",coverageColumnName:"Coverage",duplicateModulesLabel:"Duplicate modules",resourceBytesLabel:"Resource bytes",tableColumnName:"Name",toggleTableButtonLabel:"Toggle table",unusedBytesLabel:"Unused bytes"},"ar-XB":{allLabel:"‏‮All‬‏",allScriptsDropdownLabel:"‏‮All‬‏ ‏‮Scripts‬‏",coverageColumnName:"‏‮Coverage‬‏",duplicateModulesLabel:"‏‮Duplicate‬‏ ‏‮Modules‬‏",resourceBytesLabel:"‏‮Resource‬‏ ‏‮Bytes‬‏",tableColumnName:"‏‮Name‬‏",toggleTableButtonLabel:"‏‮Toggle‬‏ ‏‮Table‬‏",unusedBytesLabel:"‏‮Unused‬‏ ‏‮Bytes‬‏"},ar:{allLabel:"الكل",allScriptsDropdownLabel:"جميع النصوص البرمجية",coverageColumnName:"التغطية",duplicateModulesLabel:"الوحدات المكرَّرة",resourceBytesLabel:"حجم الموارد بوحدة البايت",tableColumnName:"الاسم",toggleTableButtonLabel:"تبديل الجدول",unusedBytesLabel:"وحدات بايت غير المستخدمة"},bg:{allLabel:"Всички",allScriptsDropdownLabel:"Всички скриптове",coverageColumnName:"Обхват",duplicateModulesLabel:"Дублиращи се модули",resourceBytesLabel:"Байтове на ресурсите",tableColumnName:"Име",toggleTableButtonLabel:"Превключване на таблицата",unusedBytesLabel:"Неизползвани байтове"},ca:{allLabel:"Tot",allScriptsDropdownLabel:"Tots els scripts",coverageColumnName:"Cobertura",duplicateModulesLabel:"Mòduls duplicats",resourceBytesLabel:"Bytes del recurs",tableColumnName:"Nom",toggleTableButtonLabel:"Commuta la taula",unusedBytesLabel:"Bytes no utilitzats"},cs:{allLabel:"Vše",allScriptsDropdownLabel:"Všechna písma",coverageColumnName:"Pokrytí",duplicateModulesLabel:"Duplicitní moduly",resourceBytesLabel:"Počet bajtů zdroje",tableColumnName:"Název",toggleTableButtonLabel:"Zobrazit nebo skrýt tabulku",unusedBytesLabel:"Nevyužité bajty"},da:{allLabel:"Alle",allScriptsDropdownLabel:"Alle scripts",coverageColumnName:"Dækning",duplicateModulesLabel:"Identiske moduler",resourceBytesLabel:"Bytes i ressourcefil",tableColumnName:"Navn",toggleTableButtonLabel:"Vis/skjul tabel",unusedBytesLabel:"Ubrugte bytes"},de:{allLabel:"Alles",allScriptsDropdownLabel:"Alle Skripts",coverageColumnName:"Abdeckung",duplicateModulesLabel:"Doppelte Module",resourceBytesLabel:"Ressourcengröße in Byte",tableColumnName:"Name",toggleTableButtonLabel:"Tabelle ein- oder ausblenden",unusedBytesLabel:"Nicht verwendete Byte"},el:{allLabel:"Όλα",allScriptsDropdownLabel:"Όλες οι γραφές",coverageColumnName:"Κάλυψη",duplicateModulesLabel:"Διπλότυπες λειτουργικές μονάδες",resourceBytesLabel:"Byte πόρου",tableColumnName:"Όνομα",toggleTableButtonLabel:"Εναλλαγή πίνακα",unusedBytesLabel:"Byte που δεν χρησιμοποιούνται"},"en-XA":{allLabel:"[Åļļ one]",allScriptsDropdownLabel:"[Åļļ Šçŕîþţš one two]",coverageColumnName:"[Çövéŕåĝé one]",duplicateModulesLabel:"[Ðûþļîçåţé Möðûļéš one two three]",resourceBytesLabel:"[Ŕéšöûŕçé Бýţéš one two]",tableColumnName:"[Ñåmé one]",toggleTableButtonLabel:"[Ţöĝĝļé Ţåбļé one two]",unusedBytesLabel:"[Ûñûšéð Бýţéš one two]"},"en-XL":{allLabel:"Âĺl̂",allScriptsDropdownLabel:"Âĺl̂ Śĉŕîṕt̂ś",coverageColumnName:"Ĉóv̂ér̂áĝé",duplicateModulesLabel:"D̂úp̂ĺîćât́ê Ḿôd́ûĺêś",resourceBytesLabel:"R̂éŝóûŕĉé B̂ýt̂éŝ",tableColumnName:"N̂ám̂é",toggleTableButtonLabel:"T̂óĝǵl̂é T̂áb̂ĺê",unusedBytesLabel:"Ûńûśêd́ B̂ýt̂éŝ"},es:{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes del recurso",tableColumnName:"Nombre",toggleTableButtonLabel:"Mostrar/Ocultar tabla",unusedBytesLabel:"Bytes sin usar"},"es-419":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-AR":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-BO":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-BR":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-BZ":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-CL":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-CO":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-CR":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-CU":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-DO":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-EC":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-GT":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-HN":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-MX":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-NI":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-PA":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-PE":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-PR":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-PY":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-SV":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-US":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-UY":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-VE":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},fi:{allLabel:"Kaikki",allScriptsDropdownLabel:"Kaikki skriptit",coverageColumnName:"Kattavuus",duplicateModulesLabel:"Moduulien kaksoiskappaleet",resourceBytesLabel:"Resurssin tavut",tableColumnName:"Nimi",toggleTableButtonLabel:"Näytä/piilota taulukko",unusedBytesLabel:"Käyttämättömät tavut"},fil:{allLabel:"Lahat",allScriptsDropdownLabel:"Lahat ng Script",coverageColumnName:"Sakop",duplicateModulesLabel:"Mga Duplicate na Module",resourceBytesLabel:"Mga Byte ng Resource",tableColumnName:"Pangalan",toggleTableButtonLabel:"I-toggle ang Talahanayan",unusedBytesLabel:"Mga Hindi Nagamit na Byte"},fr:{allLabel:"Tout",allScriptsDropdownLabel:"Tous les scripts",coverageColumnName:"Couverture",duplicateModulesLabel:"Modules en double",resourceBytesLabel:"Octets de la ressource",tableColumnName:"Nom",toggleTableButtonLabel:"Activer/Désactiver le tableau",unusedBytesLabel:"Octets inutilisés"},he:{allLabel:"הכול",allScriptsDropdownLabel:"כל הסקריפטים",coverageColumnName:"כיסוי",duplicateModulesLabel:"מודולים כפולים",resourceBytesLabel:"בייטים בשימוש המשאב",tableColumnName:"שם",toggleTableButtonLabel:"החלפת מצב התצוגה של הטבלה",unusedBytesLabel:"בייטים לא בשימוש"},hi:{allLabel:"सभी",allScriptsDropdownLabel:"सभी स्क्रिप्ट",coverageColumnName:"कवरेज",duplicateModulesLabel:"डुप्लीकेट मॉड्यूल",resourceBytesLabel:"फ़ाइल का साइज़ (बाइट में)",tableColumnName:"नाम",toggleTableButtonLabel:"टेबल को टॉगल करें",unusedBytesLabel:"इस्तेमाल न की गई बाइट की संख्या"},hr:{allLabel:"Sve",allScriptsDropdownLabel:"Sve skripte",coverageColumnName:"Pokrivenost",duplicateModulesLabel:"Duplicirani moduli",resourceBytesLabel:"Bajtovi resursa",tableColumnName:"Naziv",toggleTableButtonLabel:"Prikaži/sakrij tablicu",unusedBytesLabel:"Neiskorišteni bajtovi"},hu:{allLabel:"Összes",allScriptsDropdownLabel:"Minden szkript",coverageColumnName:"Lefedettség",duplicateModulesLabel:"Ismétlődő modulok",resourceBytesLabel:"Forrásfájl mérete bájtokban",tableColumnName:"Név",toggleTableButtonLabel:"Táblázat elrejtése/megjelenítése",unusedBytesLabel:"Fel nem használt bájtok"},gsw:{allLabel:"Alles",allScriptsDropdownLabel:"Alle Skripts",coverageColumnName:"Abdeckung",duplicateModulesLabel:"Doppelte Module",resourceBytesLabel:"Ressourcengröße in Byte",tableColumnName:"Name",toggleTableButtonLabel:"Tabelle ein- oder ausblenden",unusedBytesLabel:"Nicht verwendete Byte"},id:{allLabel:"Semua",allScriptsDropdownLabel:"Semua Skrip",coverageColumnName:"Cakupan",duplicateModulesLabel:"Modul Duplikat",resourceBytesLabel:"Byte Resource",tableColumnName:"Nama",toggleTableButtonLabel:"Tampilkan/Sembunyikan Tabel",unusedBytesLabel:"Byte yang Tidak Digunakan"},in:{allLabel:"Semua",allScriptsDropdownLabel:"Semua Skrip",coverageColumnName:"Cakupan",duplicateModulesLabel:"Modul Duplikat",resourceBytesLabel:"Byte Resource",tableColumnName:"Nama",toggleTableButtonLabel:"Tampilkan/Sembunyikan Tabel",unusedBytesLabel:"Byte yang Tidak Digunakan"},it:{allLabel:"Tutto",allScriptsDropdownLabel:"Tutti gli script",coverageColumnName:"Copertura",duplicateModulesLabel:"Moduli duplicati",resourceBytesLabel:"Byte risorsa",tableColumnName:"Nome",toggleTableButtonLabel:"Mostra/nascondi tabella",unusedBytesLabel:"Byte non utilizzati"},iw:{allLabel:"הכול",allScriptsDropdownLabel:"כל הסקריפטים",coverageColumnName:"כיסוי",duplicateModulesLabel:"מודולים כפולים",resourceBytesLabel:"בייטים בשימוש המשאב",tableColumnName:"שם",toggleTableButtonLabel:"החלפת מצב התצוגה של הטבלה",unusedBytesLabel:"בייטים לא בשימוש"},ja:{allLabel:"すべて",allScriptsDropdownLabel:"すべてのスクリプト",coverageColumnName:"カバレッジ",duplicateModulesLabel:"重複モジュール",resourceBytesLabel:"リソースのサイズ(バイト)",tableColumnName:"名前",toggleTableButtonLabel:"表を切り替える",unusedBytesLabel:"使用していないバイト"},ko:{allLabel:"전체",allScriptsDropdownLabel:"모든 스크립트",coverageColumnName:"범위",duplicateModulesLabel:"중복 모듈",resourceBytesLabel:"리소스 바이트",tableColumnName:"이름",toggleTableButtonLabel:"표 전환",unusedBytesLabel:"사용하지 않은 바이트"},lt:{allLabel:"Viskas",allScriptsDropdownLabel:"Visi scenarijai",coverageColumnName:"Aprėptis",duplicateModulesLabel:"Tikslios modulių kopijos",resourceBytesLabel:"Šaltinių baitai",tableColumnName:"Pavadinimas",toggleTableButtonLabel:"Perjungti lentelę",unusedBytesLabel:"Nenaudojami baitai"},lv:{allLabel:"Visi",allScriptsDropdownLabel:"Visi skripti",coverageColumnName:"Tvērums",duplicateModulesLabel:"Dublēti moduļi",resourceBytesLabel:"Faila lielums baitos",tableColumnName:"Nosaukums",toggleTableButtonLabel:"Pārslēgt tabulu",unusedBytesLabel:"Neizmantotais apjoms baitos"},mo:{allLabel:"Toate",allScriptsDropdownLabel:"Toate scripturile",coverageColumnName:"Acoperire",duplicateModulesLabel:"Module dublate",resourceBytesLabel:"Byți resursă",tableColumnName:"Nume",toggleTableButtonLabel:"Activează / dezactivează tabelul",unusedBytesLabel:"Byți nefolosiți"},nl:{allLabel:"Alle",allScriptsDropdownLabel:"Alle scripts",coverageColumnName:"Dekking",duplicateModulesLabel:"Dubbele modules",resourceBytesLabel:"Resourcebytes",tableColumnName:"Naam",toggleTableButtonLabel:"Tabel schakelen",unusedBytesLabel:"Ongebruikte bytes"},nb:{allLabel:"Alt",allScriptsDropdownLabel:"Alle skript",coverageColumnName:"Dekning",duplicateModulesLabel:"Duplikatmoduler",resourceBytesLabel:"Ressursstørrelse i byte",tableColumnName:"Navn",toggleTableButtonLabel:"Slå av/på tabell",unusedBytesLabel:"Ubrukte byte"},no:{allLabel:"Alt",allScriptsDropdownLabel:"Alle skript",coverageColumnName:"Dekning",duplicateModulesLabel:"Duplikatmoduler",resourceBytesLabel:"Ressursstørrelse i byte",tableColumnName:"Navn",toggleTableButtonLabel:"Slå av/på tabell",unusedBytesLabel:"Ubrukte byte"},pl:{allLabel:"Wszystko",allScriptsDropdownLabel:"Wszystkie skrypty",coverageColumnName:"Pokrycie",duplicateModulesLabel:"Zduplikowane moduły",resourceBytesLabel:"Rozmiar zasobu (w bajtach)",tableColumnName:"Nazwa",toggleTableButtonLabel:"Przełącz tabelę",unusedBytesLabel:"Nieużywane bajty"},pt:{allLabel:"Tudo",allScriptsDropdownLabel:"Todos os scripts",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nome",toggleTableButtonLabel:"Alternar tabela",unusedBytesLabel:"Bytes não usados"},"pt-PT":{allLabel:"Tudo",allScriptsDropdownLabel:"Todos os scripts",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nome",toggleTableButtonLabel:"Ativar/desativar tabela",unusedBytesLabel:"Bytes não utilizados"},ro:{allLabel:"Toate",allScriptsDropdownLabel:"Toate scripturile",coverageColumnName:"Acoperire",duplicateModulesLabel:"Module dublate",resourceBytesLabel:"Byți resursă",tableColumnName:"Nume",toggleTableButtonLabel:"Activează / dezactivează tabelul",unusedBytesLabel:"Byți nefolosiți"},ru:{allLabel:"Все",allScriptsDropdownLabel:"Все скрипты",coverageColumnName:"Доля использования",duplicateModulesLabel:"Повторяющиеся модули",resourceBytesLabel:"Размер в байтах",tableColumnName:"Название",toggleTableButtonLabel:"Показать/скрыть таблицу",unusedBytesLabel:"Неиспользуемые байты"},sk:{allLabel:"Všetko",allScriptsDropdownLabel:"Všetky skripty",coverageColumnName:"Pokrytie",duplicateModulesLabel:"Duplikovať moduly",resourceBytesLabel:"Počet bajtov zdroja",tableColumnName:"Názov",toggleTableButtonLabel:"Prepnúť tabuľku",unusedBytesLabel:"Nepoužité bajty"},sl:{allLabel:"Vse",allScriptsDropdownLabel:"Vsi skripti",coverageColumnName:"Pokritost",duplicateModulesLabel:"Podvojeni moduli",resourceBytesLabel:"Bajti sredstva",tableColumnName:"Ime",toggleTableButtonLabel:"Preklop tabele",unusedBytesLabel:"Neuporabljeni bajti"},sr:{allLabel:"Све",allScriptsDropdownLabel:"Све скрипте",coverageColumnName:"Покривеност",duplicateModulesLabel:"Дуплирани модули",resourceBytesLabel:"Бајтови ресурса",tableColumnName:"Назив",toggleTableButtonLabel:"Укључи/искључи табелу",unusedBytesLabel:"Неискоришћени бајтови"},"sr-Latn":{allLabel:"Sve",allScriptsDropdownLabel:"Sve skripte",coverageColumnName:"Pokrivenost",duplicateModulesLabel:"Duplirani moduli",resourceBytesLabel:"Bajtovi resursa",tableColumnName:"Naziv",toggleTableButtonLabel:"Uključi/isključi tabelu",unusedBytesLabel:"Neiskorišćeni bajtovi"},sv:{allLabel:"Alla",allScriptsDropdownLabel:"Alla skript",coverageColumnName:"Täckning",duplicateModulesLabel:"Moduldubbletter",resourceBytesLabel:"Resursstorlek i byte",tableColumnName:"Namn",toggleTableButtonLabel:"Aktivera och inaktivera tabell",unusedBytesLabel:"Byte som inte används"},ta:{allLabel:"எல்லாம்",allScriptsDropdownLabel:"எல்லா ஸ்கிரிப்ட்டுகளும்",coverageColumnName:"கவரேஜ்",duplicateModulesLabel:"நகல் மாடியூல்கள்",resourceBytesLabel:"ஃபைலின் அளவு (பைட்டுகள்)",tableColumnName:"பெயர்",toggleTableButtonLabel:"டேபிளைக் காட்டு/மறை",unusedBytesLabel:"பயன்படுத்தப்படாத பைட்டுகள்"},te:{allLabel:"అన్నీ",allScriptsDropdownLabel:"అన్ని స్క్రిప్ట్‌లు",coverageColumnName:"కవరేజీ",duplicateModulesLabel:"డూప్లికేట్ మాడ్యూల్‌లు",resourceBytesLabel:"రిసోర్స్ బైట్‌లు",tableColumnName:"పేరు",toggleTableButtonLabel:"టోగుల్ టేబుల్",unusedBytesLabel:"వినియోగించని బైట్‌లు"},th:{allLabel:"ทั้งหมด",allScriptsDropdownLabel:"สคริปต์ทั้งหมด",coverageColumnName:"การครอบคลุม",duplicateModulesLabel:"โมดูลที่ซ้ำกัน",resourceBytesLabel:"ขนาดไฟล์ทรัพยากร (ไบต์)",tableColumnName:"ชื่อ",toggleTableButtonLabel:"ซ่อน/แสดงตาราง",unusedBytesLabel:"ไบต์ที่ไม่ได้ใช้"},tl:{allLabel:"Lahat",allScriptsDropdownLabel:"Lahat ng Script",coverageColumnName:"Sakop",duplicateModulesLabel:"Mga Duplicate na Module",resourceBytesLabel:"Mga Byte ng Resource",tableColumnName:"Pangalan",toggleTableButtonLabel:"I-toggle ang Talahanayan",unusedBytesLabel:"Mga Hindi Nagamit na Byte"},tr:{allLabel:"Tümü",allScriptsDropdownLabel:"Tüm Alfabeler",coverageColumnName:"Kapsam",duplicateModulesLabel:"Yinelenen Modüller",resourceBytesLabel:"Kaynak Baytları",tableColumnName:"Ad",toggleTableButtonLabel:"Tabloyu Aç/Kapat",unusedBytesLabel:"Kullanılmayan Baytlar"},uk:{allLabel:"Усе",allScriptsDropdownLabel:"Усі скрипти",coverageColumnName:"Дані про використання",duplicateModulesLabel:"Задубльовані модулі",resourceBytesLabel:"Розмір ресурсу в байтах",tableColumnName:"Назва",toggleTableButtonLabel:"Показати або сховати таблицю",unusedBytesLabel:"Невикористані байти"},vi:{allLabel:"Tất cả",allScriptsDropdownLabel:"Tất cả tập lệnh",coverageColumnName:"Độ bao phủ",duplicateModulesLabel:"Mô-đun trùng lặp",resourceBytesLabel:"Số byte tài nguyên",tableColumnName:"Tên",toggleTableButtonLabel:"Ẩn/hiện bảng",unusedBytesLabel:"Số byte chưa dùng đến"},zh:{allLabel:"全部",allScriptsDropdownLabel:"所有脚本",coverageColumnName:"覆盖率",duplicateModulesLabel:"重复的模块",resourceBytesLabel:"资源字节数",tableColumnName:"名称",toggleTableButtonLabel:"显示/隐藏表格",unusedBytesLabel:"未使用的字节数"},"zh-HK":{allLabel:"所有",allScriptsDropdownLabel:"所有指令碼",coverageColumnName:"覆蓋率",duplicateModulesLabel:"重複的模組",resourceBytesLabel:"資源字節",tableColumnName:"名稱",toggleTableButtonLabel:"顯示/隱藏表格",unusedBytesLabel:"未使用的字節"},"zh-TW":{allLabel:"全部",allScriptsDropdownLabel:"所有指令碼",coverageColumnName:"涵蓋率",duplicateModulesLabel:"重複模組",resourceBytesLabel:"資源位元組",tableColumnName:"名稱",toggleTableButtonLabel:"顯示/隱藏表格",unusedBytesLabel:"未使用的位元組"}};!function(){function e(){return o||(o=new Promise((function(e,t){var o=indexedDB.open("keyval-store",1);o.onerror=function(){t(o.error)},o.onupgradeneeded=function(){o.result.createObjectStore("keyval")},o.onsuccess=function(){e(o.result)}}))),o}function t(t,o){return e().then((function(e){return new Promise((function(i,n){var r=e.transaction("keyval",t);r.oncomplete=function(){i()},r.onerror=function(){n(r.error)},o(r.objectStore("keyval"))}))}))}var o,i={get:function(e){var o;return t("readonly",(function(t){o=t.get(e)})).then((function(){return o.result}))},set:function(e,o){return t("readwrite",(function(t){t.put(o,e)}))},delete:function(e){return t("readwrite",(function(t){t.delete(e)}))},clear:function(){return t("readwrite",(function(e){e.clear()}))},keys:function(){var e=[];return t("readonly",(function(t){(t.openKeyCursor||t.openCursor).call(t).onsuccess=function(){this.result&&(e.push(this.result.key),this.result.continue())}})).then((function(){return e}))}};"undefined"!=typeof module&&module.exports?module.exports=i:self.idbKeyval=i}(),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).EventTargetShim={})}(this,(function(e){function t(e){return(t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){for(var o=0;oe.length)&&(t=e.length);for(var o=0,i=new Array(t);o2?o-2:0),n=2;n1&&void 0!==arguments[1]&&arguments[1],o=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=V(this);i.dispatchFlag?k.warn():U.set(this,a(a({},i),{},{type:String(e),bubbles:Boolean(t),cancelable:Boolean(o),target:null,currentTarget:null,stopPropagationFlag:!1,stopImmediatePropagationFlag:!1,canceledFlag:!1}))}},{key:"type",get:function(){return V(this).type}},{key:"target",get:function(){return V(this).target}},{key:"srcElement",get:function(){return V(this).target}},{key:"currentTarget",get:function(){return V(this).currentTarget}},{key:"NONE",get:function(){return z}},{key:"CAPTURING_PHASE",get:function(){return H}},{key:"AT_TARGET",get:function(){return F}},{key:"BUBBLING_PHASE",get:function(){return j}},{key:"eventPhase",get:function(){return V(this).dispatchFlag?2:0}},{key:"cancelBubble",get:function(){return V(this).stopPropagationFlag},set:function(e){e?V(this).stopPropagationFlag=!0:D.warn()}},{key:"bubbles",get:function(){return V(this).bubbles}},{key:"cancelable",get:function(){return V(this).cancelable}},{key:"returnValue",get:function(){return!V(this).canceledFlag},set:function(e){e?x.warn():W(V(this))}},{key:"defaultPrevented",get:function(){return V(this).canceledFlag}},{key:"composed",get:function(){return V(this).composed}},{key:"isTrusted",get:function(){return!1}},{key:"timeStamp",get:function(){return V(this).timeStamp}}]),e}(),z=0,H=1,F=2,j=3,U=new WeakMap;function V(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"this",o=U.get(e);return C(null!=o,"'%s' must be an object that Event constructor created, but got another one: %o",t,e),o}function W(e){e.inPassiveListenerFlag?I.warn():e.cancelable?e.canceledFlag=!0:S.warn()}Object.defineProperty(P,"NONE",{enumerable:!0}),Object.defineProperty(P,"CAPTURING_PHASE",{enumerable:!0}),Object.defineProperty(P,"AT_TARGET",{enumerable:!0}),Object.defineProperty(P,"BUBBLING_PHASE",{enumerable:!0});for(var G,$=Object.getOwnPropertyNames(P.prototype),q=0;q<$.length;++q)"constructor"!==$[q]&&Object.defineProperty(P.prototype,$[q],{enumerable:!0});void 0!==L&&void 0!==L.Event&&Object.setPrototypeOf(P.prototype,L.Event.prototype);var K={INDEX_SIZE_ERR:1,DOMSTRING_SIZE_ERR:2,HIERARCHY_REQUEST_ERR:3,WRONG_DOCUMENT_ERR:4,INVALID_CHARACTER_ERR:5,NO_DATA_ALLOWED_ERR:6,NO_MODIFICATION_ALLOWED_ERR:7,NOT_FOUND_ERR:8,NOT_SUPPORTED_ERR:9,INUSE_ATTRIBUTE_ERR:10,INVALID_STATE_ERR:11,SYNTAX_ERR:12,INVALID_MODIFICATION_ERR:13,NAMESPACE_ERR:14,INVALID_ACCESS_ERR:15,VALIDATION_ERR:16,TYPE_MISMATCH_ERR:17,SECURITY_ERR:18,NETWORK_ERR:19,ABORT_ERR:20,URL_MISMATCH_ERR:21,QUOTA_EXCEEDED_ERR:22,TIMEOUT_ERR:23,INVALID_NODE_TYPE_ERR:24,DATA_CLONE_ERR:25};function Z(e){for(var t=Object.keys(K),o=function(o){var i=t[o],n=K[i];Object.defineProperty(e,i,{get:function(){return n},configurable:!0,enumerable:!0})},i=0;i2&&void 0!==arguments[2]&&arguments[2],i=e.listeners[t];return function(e){e.flags|=8}(i),i.signal&&i.signal.removeEventListener("abort",i.signalListener),e.cow&&!o?(e.cow=!1,e.listeners=e.listeners.filter((function(e,o){return o!==t})),!1):(e.listeners.splice(t,1),!0)}function de(e,t){var o;return null!==(o=e[t])&&void 0!==o?o:e[t]={attrCallback:void 0,attrListener:void 0,cow:!1,listeners:[]}}Q.set(Object.prototype,J),void 0!==L&&void 0!==L.Event&&Q.set(L.Event.prototype,J);var he=function(){function e(){o(this,e),pe.set(this,Object.create(null))}return n(e,[{key:"addEventListener",value:function(e,o,i){var n=me(this),r=function(e,o,i){var n;return fe(o),"object"===t(i)&&null!==i?{type:String(e),callback:null!=o?o:void 0,capture:Boolean(i.capture),passive:Boolean(i.passive),once:Boolean(i.once),signal:null!==(n=i.signal)&&void 0!==n?n:void 0}:{type:String(e),callback:null!=o?o:void 0,capture:Boolean(i),passive:!1,once:!1,signal:void 0}}(e,o,i),s=r.callback,a=r.capture,l=r.once,u=r.passive,c=r.signal,d=r.type;if(null!=s&&!(null==c?void 0:c.aborted)){var h=de(n,d),p=ae(h,s,a);-1===p?le(h,s,a,u,l,c):function(e,t,o,i){N.warn(oe(e)?"capture":"bubble",e.callback),ie(e)!==t&&A.warn("passive"),ne(e)!==o&&A.warn("once"),e.signal!==i&&A.warn("signal")}(h.listeners[p],u,l,c)}}},{key:"removeEventListener",value:function(e,o,i){var n=me(this),r=function(e,o,i){return fe(o),"object"===t(i)&&null!==i?{type:String(e),callback:null!=o?o:void 0,capture:Boolean(i.capture)}:{type:String(e),callback:null!=o?o:void 0,capture:Boolean(i)}}(e,o,i),s=r.callback,a=r.capture,l=n[r.type];null!=s&&l&&ue(l,s,a)}},{key:"dispatchEvent",value:function(e){var t=me(this)[String(e.type)];if(null==t)return!0;var i,r=e instanceof P?e:J.wrap(e),s=V(r,"event");if(s.dispatchFlag)throw i="This event has been in dispatching.",L.DOMException?new L.DOMException(i,"InvalidStateError"):(null==G&&(G=function(e){l(i,e);var t=f(i);function i(e){var n;return o(this,i),n=t.call(this,e),Error.captureStackTrace&&Error.captureStackTrace(m(n),i),n}return n(i,[{key:"code",get:function(){return 11}},{key:"name",get:function(){return"InvalidStateError"}}]),i}(p(Error)),Object.defineProperties(G.prototype,{code:{enumerable:!0},name:{enumerable:!0}}),Z(G),Z(G.prototype)),new G(i));if(s.dispatchFlag=!0,s.target=s.currentTarget=this,!s.stopPropagationFlag){var a=t.cow,u=t.listeners;t.cow=!0;for(var c=0;c1&&void 0!==arguments[1]?arguments[1]:"this",o=pe.get(e);return C(null!=o,"'%s' must be an object that EventTarget constructor created, but got another one: %o",t,e),o}function fe(e){if("function"!=typeof e&&("object"!==t(e)||null===e||"function"!=typeof e.handleEvent)){if(null!=e&&"object"!==t(e))throw new TypeError(E(O.message,[e]));O.warn(e)}}for(var ge=Object.getOwnPropertyNames(he.prototype),be=0;benull),caption:e.caption||(e=>e.id||""),showNode:e.showNode||((e,o,i)=>o>20&&i>=t.padding[0]),showChildren:e.showChildren||((e,t,o)=>t>40&&o>40)};return t}(t)}ensureDOM(e){if(e.dom)return e.dom;const i=document.createElement("div");if(i.className=o,i.setAttribute("role","treeitem"),i.tabIndex=-1,this.options.caption){const o=document.createElement("div");o.className=t+"caption",o.textContent=this.options.caption(e),i.appendChild(o)}return e.dom=i,this.options.applyMutations(e),i}selectSpan(e,t,o){let i=e[o].size,n=i,r=0,s=0,a=o;for(;an&&(n=o);const l=r+o,u=Math.max(n*t*t/(l*l),l*l/(i*t*t));if(s&&u>s)break;s=u,r=l}return{end:a,sum:r}}layoutChildren(e,t,o,i){const n=e.size,r=e.children;if(!r)return;let a=-1,l=-1,u=o-1,c=i-1;const d=this.options.spacing,h=this.options.padding;l+=h[0],h[1]&&(u-=h[1]+1),c-=h[2],a+=h[3];let p=0;if(this.options.showChildren(e,u-a,c-l)){const o=Math.sqrt(n/((u-a)*(c-l)));var m=a,f=l;e:for(let i=0;i{let t=e.target;for(;!i(t);)if(t=t.parentElement,!t)return;let o=r(t);this.zoom(o)},t.onkeydown=e=>{if(!(e.target instanceof HTMLElement))return;let o;switch(e.key){case"Enter":const i=r(e.target);return void this.zoom(i);case"ArrowUp":if(o=e.target.parentElement,o===t.parentElement)return;break;case"ArrowDown":o=e.target.querySelector(".webtreemap-node");break;case"ArrowLeft":o=e.target.previousElementSibling;break;case"ArrowRight":o=e.target.nextElementSibling}if(!o)return;if(!o.matches(".webtreemap-node"))return;const i=Array.from(t.querySelectorAll('*[tabindex="0"]'));for(const e of i)e.tabIndex=-1;e.preventDefault(),o.tabIndex=0,o.focus()},e.appendChild(t),this.layout(this.node,e),this.associateCaptionWithLabelledBy(t),t.tabIndex=0,t.setAttribute("role","tree")}layout(e,t){const o=t.offsetWidth,i=t.offsetHeight;e.dom.style.width=`${o}px`,e.dom.style.height=`${i}px`,this.layoutChildren(this.node,0,o,i)}zoom(e){let t=this.node;const[o,i,n,r]=this.options.padding;let a=t.dom.offsetWidth,l=t.dom.offsetHeight;for(const u of e){if(a-=r+i,l-=o+n,!t.children)throw new Error("bad address");for(const e of t.children)e.dom&&(e.dom.style.zIndex="0");t=t.children[u];const e=t.dom.style;e.zIndex="1",e.left=s(r-1),e.width=s(a),e.top=s(o-1),e.height=s(l)}this.layoutChildren(t,0,a,l)}associateCaptionWithLabelledBy(e){const t="_wtm-cap-"+r(e).join("-");e.firstElementChild.id=t,e.setAttribute("aria-labelledby",t)}}return e.TreeMap=a,e.flatten=function e(t,o=((e,t)=>`${e}/${t}`)){if(t.children){for(const i of t.children)e(i,o);if(1===t.children.length){const e=t.children[0];t.id+="/"+e.id,t.children=e.children}}},e.getAddress=r,e.isDOMNode=i,e.render=function(e,t,o){new a(t,o).render(e)},e.rollup=function e(t){if(!t.children)return;let o=0;for(const i of t.children)e(i),o+=i.size;o>t.size&&(t.size=o)},e.sort=function e(t){if(t.children){for(const o of t.children)e(o);t.children.sort(((e,t)=>t.size-e.size))}},e.treeify=function(e){const t={size:0};for(const[o,i]of e){const e=o.replace(/\/$/,"").split("/");let n=t;for(;e.length>0;){const t=e.shift();n.children||(n.children=[]);let r=n.children.find((e=>e.id===t));if(r||(r={id:t,size:0},n.children.push(r)),0===e.length){if(0!==r.size)throw new Error(`duplicate path ${o} ${r.size}`);r.size=i}n=r}}return t},e}({}),_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};Array.prototype.findIndex||Object.defineProperty(Array.prototype,"findIndex",{value:function(e){if(null==this)throw new TypeError('"this" is null or not defined');var t=Object(this),o=t.length>>>0;if("function"!=typeof e)throw new TypeError("predicate must be a function");for(var i=arguments[1],n=0;n>>0;if("function"!=typeof e)throw new TypeError("predicate must be a function");for(var i=arguments[1],n=0;n>>0;if(0===i)return!1;var n=0|t,r=Math.max(n>=0?n:i-Math.abs(n),0);function s(e,t){return e===t||"number"==typeof e&&"number"==typeof t&&isNaN(e)&&isNaN(t)}for(;ro?(t=e-o,this.element.style.marginLeft=-t+"px"):this.element.style.marginLeft=0,this.scrollLeft=e,this.table.modExists("frozenColumns")&&this.table.modules.frozenColumns.scrollHorizontal()},ColumnManager.prototype.generateColumnsFromRowData=function(e){var t,o,i=[],n=this.table.options.autoColumnsDefinitions;if(e&&e.length){for(var r in t=e[0]){var s={field:r,title:r},a=t[r];switch(void 0===a?"undefined":_typeof(a)){case"undefined":o="string";break;case"boolean":o="boolean";break;case"object":o=Array.isArray(a)?"array":"string";break;default:o=isNaN(a)||""===a?a.match(/((^[0-9]+[a-z]+)|(^[a-z]+[0-9]+))+$/i)?"alphanum":"string":"number"}s.sorter=o,i.push(s)}if(n)switch(void 0===n?"undefined":_typeof(n)){case"function":this.table.options.columns=n.call(this.table,i);break;case"object":Array.isArray(n)?i.forEach((function(e){var t=n.find((function(t){return t.field===e.field}));t&&Object.assign(e,t)})):i.forEach((function(e){n[e.field]&&Object.assign(e,n[e.field])})),this.table.options.columns=i}else this.table.options.columns=i;this.setColumns(this.table.options.columns)}},ColumnManager.prototype.setColumns=function(e,t){for(var o=this;o.headersElement.firstChild;)o.headersElement.removeChild(o.headersElement.firstChild);o.columns=[],o.columnsByIndex=[],o.columnsByField={},o.table.modExists("frozenColumns")&&o.table.modules.frozenColumns.reset(),e.forEach((function(e,t){o._addColumn(e)})),o._reIndexColumns(),o.table.options.responsiveLayout&&o.table.modExists("responsiveLayout",!0)&&o.table.modules.responsiveLayout.initialize(),this.table.options.virtualDomHoz&&this.table.vdomHoz.reinitialize(!1,!0),o.redraw(!0)},ColumnManager.prototype._addColumn=function(e,t,o){var i=new Column(e,this),n=i.getElement(),r=o?this.findColumnIndex(o):o;if(o&&r>-1){var s=this.columns.indexOf(o.getTopColumn()),a=o.getElement();t?(this.columns.splice(s,0,i),a.parentNode.insertBefore(n,a)):(this.columns.splice(s+1,0,i),a.parentNode.insertBefore(n,a.nextSibling))}else t?(this.columns.unshift(i),this.headersElement.insertBefore(i.getElement(),this.headersElement.firstChild)):(this.columns.push(i),this.headersElement.appendChild(i.getElement())),i.columnRendered();return i},ColumnManager.prototype.registerColumnField=function(e){e.definition.field&&(this.columnsByField[e.definition.field]=e)},ColumnManager.prototype.registerColumnPosition=function(e){this.columnsByIndex.push(e)},ColumnManager.prototype._reIndexColumns=function(){this.columnsByIndex=[],this.columns.forEach((function(e){e.reRegisterPosition()}))},ColumnManager.prototype._verticalAlignHeaders=function(){var e=this,t=0;e.columns.forEach((function(e){var o;e.clearVerticalAlign(),(o=e.getHeight())>t&&(t=o)})),e.columns.forEach((function(o){o.verticalAlign(e.table.options.columnHeaderVertAlign,t)})),e.rowManager.adjustTableSize()},ColumnManager.prototype.findColumn=function(e){return"object"!=(void 0===e?"undefined":_typeof(e))?this.columnsByField[e]||!1:e instanceof Column?e:e instanceof ColumnComponent?e._getSelf()||!1:"undefined"!=typeof HTMLElement&&e instanceof HTMLElement&&this.columns.find((function(t){return t.element===e}))||!1},ColumnManager.prototype.getColumnByField=function(e){return this.columnsByField[e]},ColumnManager.prototype.getColumnsByFieldRoot=function(e){var t=this,o=[];return Object.keys(this.columnsByField).forEach((function(i){i.split(".")[0]===e&&o.push(t.columnsByField[i])})),o},ColumnManager.prototype.getColumnByIndex=function(e){return this.columnsByIndex[e]},ColumnManager.prototype.getFirstVisibileColumn=function(e){return(e=this.columnsByIndex.findIndex((function(e){return e.visible})))>-1&&this.columnsByIndex[e]},ColumnManager.prototype.getColumns=function(){return this.columns},ColumnManager.prototype.findColumnIndex=function(e){return this.columnsByIndex.findIndex((function(t){return e===t}))},ColumnManager.prototype.getRealColumns=function(){return this.columnsByIndex},ColumnManager.prototype.traverse=function(e){this.columnsByIndex.forEach((function(t,o){e(t,o)}))},ColumnManager.prototype.getDefinitions=function(e){var t=[];return this.columnsByIndex.forEach((function(o){(!e||e&&o.visible)&&t.push(o.getDefinition())})),t},ColumnManager.prototype.getDefinitionTree=function(){var e=[];return this.columns.forEach((function(t){e.push(t.getDefinition(!0))})),e},ColumnManager.prototype.getComponents=function(e){var t=[];return(e?this.columns:this.columnsByIndex).forEach((function(e){t.push(e.getComponent())})),t},ColumnManager.prototype.getWidth=function(){var e=0;return this.columnsByIndex.forEach((function(t){t.visible&&(e+=t.getWidth())})),e},ColumnManager.prototype.moveColumn=function(e,t,o){this.moveColumnActual(e,t,o),this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout",!0)&&this.table.modules.responsiveLayout.initialize(),this.table.modExists("columnCalcs")&&this.table.modules.columnCalcs.recalc(this.table.rowManager.activeRows),t.element.parentNode.insertBefore(e.element,t.element),o&&t.element.parentNode.insertBefore(t.element,e.element),this._verticalAlignHeaders(),this.table.rowManager.reinitialize()},ColumnManager.prototype.moveColumnActual=function(e,t,o){e.parent.isGroup?this._moveColumnInArray(e.parent.columns,e,t,o):this._moveColumnInArray(this.columns,e,t,o),this._moveColumnInArray(this.columnsByIndex,e,t,o,!0),this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout",!0)&&this.table.modules.responsiveLayout.initialize(),this.table.options.virtualDomHoz&&this.table.vdomHoz.reinitialize(!0),this.table.options.columnMoved&&this.table.options.columnMoved.call(this.table,e.getComponent(),this.table.columnManager.getComponents()),this.table.options.persistence&&this.table.modExists("persistence",!0)&&this.table.modules.persistence.config.columns&&this.table.modules.persistence.save("columns")},ColumnManager.prototype._moveColumnInArray=function(e,t,o,i,n){var r,s=this,a=e.indexOf(t),l=[];a>-1&&(e.splice(a,1),(r=e.indexOf(o))>-1?i&&(r+=1):r=a,e.splice(r,0,t),n&&(this.table.options.dataTree&&this.table.modExists("dataTree",!0)&&this.table.rowManager.rows.forEach((function(e){l=l.concat(s.table.modules.dataTree.getTreeChildren(e,!1,!0))})),(l=l.concat(this.table.rowManager.rows)).forEach((function(e){if(e.cells.length){var t=e.cells.splice(a,1)[0];e.cells.splice(r,0,t)}}))))},ColumnManager.prototype.scrollToColumn=function(e,t,o){var i=this,n=0,r=0,s=0,a=e.getElement();return new Promise((function(l,u){if(void 0===t&&(t=i.table.options.scrollToColumnPosition),void 0===o&&(o=i.table.options.scrollToColumnIfVisible),e.visible){switch(t){case"middle":case"center":s=-i.element.clientWidth/2;break;case"right":s=a.clientWidth-i.headersElement.clientWidth}if(!o&&(r=a.offsetLeft)>0&&r+a.offsetWidthe.rowManager.element.clientHeight&&(t-=e.rowManager.element.offsetWidth-e.rowManager.element.clientWidth),this.columnsByIndex.forEach((function(i){var n,r,s;i.visible&&(n=i.definition.width||0,r=void 0===i.minWidth?e.table.options.columnMinWidth:parseInt(i.minWidth),s="string"==typeof n?n.indexOf("%")>-1?t/100*parseInt(n):parseInt(n):n,o+=s>r?s:r)})),o},ColumnManager.prototype.addColumn=function(e,t,o){var i=this;return new Promise((function(n,r){var s=i._addColumn(e,t,o);i._reIndexColumns(),i.table.options.responsiveLayout&&i.table.modExists("responsiveLayout",!0)&&i.table.modules.responsiveLayout.initialize(),i.table.modExists("columnCalcs")&&i.table.modules.columnCalcs.recalc(i.table.rowManager.activeRows),i.redraw(!0),"fitColumns"!=i.table.modules.layout.getMode()&&s.reinitializeWidth(),i._verticalAlignHeaders(),i.table.rowManager.reinitialize(),i.table.options.virtualDomHoz&&i.table.vdomHoz.reinitialize(),n(s)}))},ColumnManager.prototype.deregisterColumn=function(e){var t,o=e.getField();o&&delete this.columnsByField[o],(t=this.columnsByIndex.indexOf(e))>-1&&this.columnsByIndex.splice(t,1),(t=this.columns.indexOf(e))>-1&&this.columns.splice(t,1),this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout",!0)&&this.table.modules.responsiveLayout.initialize(),this._verticalAlignHeaders(),this.redraw()},ColumnManager.prototype.redraw=function(e){e&&(Tabulator.prototype.helpers.elVisible(this.element)&&this._verticalAlignHeaders(),this.table.rowManager.resetScroll(),this.table.rowManager.reinitialize()),["fitColumns","fitDataStretch"].indexOf(this.table.modules.layout.getMode())>-1||e?this.table.modules.layout.layout():this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout",!0)&&this.table.modules.responsiveLayout.update(),this.table.modExists("frozenColumns")&&this.table.modules.frozenColumns.layout(),this.table.modExists("columnCalcs")&&this.table.modules.columnCalcs.recalc(this.table.rowManager.activeRows),e&&(this.table.options.persistence&&this.table.modExists("persistence",!0)&&this.table.modules.persistence.config.columns&&this.table.modules.persistence.save("columns"),this.table.modExists("columnCalcs")&&this.table.modules.columnCalcs.redraw()),this.table.footerManager.redraw()};var ColumnComponent=function(e){this._column=e,this.type="ColumnComponent"};ColumnComponent.prototype.getElement=function(){return this._column.getElement()},ColumnComponent.prototype.getDefinition=function(){return this._column.getDefinition()},ColumnComponent.prototype.getField=function(){return this._column.getField()},ColumnComponent.prototype.getCells=function(){var e=[];return this._column.cells.forEach((function(t){e.push(t.getComponent())})),e},ColumnComponent.prototype.getVisibility=function(){return console.warn("getVisibility function is deprecated, you should now use the isVisible function"),this._column.visible},ColumnComponent.prototype.isVisible=function(){return this._column.visible},ColumnComponent.prototype.show=function(){this._column.isGroup?this._column.columns.forEach((function(e){e.show()})):this._column.show()},ColumnComponent.prototype.hide=function(){this._column.isGroup?this._column.columns.forEach((function(e){e.hide()})):this._column.hide()},ColumnComponent.prototype.toggle=function(){this._column.visible?this.hide():this.show()},ColumnComponent.prototype.delete=function(){return this._column.delete()},ColumnComponent.prototype.getSubColumns=function(){var e=[];return this._column.columns.length&&this._column.columns.forEach((function(t){e.push(t.getComponent())})),e},ColumnComponent.prototype.getParentColumn=function(){return this._column.parent instanceof Column&&this._column.parent.getComponent()},ColumnComponent.prototype._getSelf=function(){return this._column},ColumnComponent.prototype.scrollTo=function(){return this._column.table.columnManager.scrollToColumn(this._column)},ColumnComponent.prototype.getTable=function(){return this._column.table},ColumnComponent.prototype.headerFilterFocus=function(){this._column.table.modExists("filter",!0)&&this._column.table.modules.filter.setHeaderFilterFocus(this._column)},ColumnComponent.prototype.reloadHeaderFilter=function(){this._column.table.modExists("filter",!0)&&this._column.table.modules.filter.reloadHeaderFilter(this._column)},ColumnComponent.prototype.getHeaderFilterValue=function(){if(this._column.table.modExists("filter",!0))return this._column.table.modules.filter.getHeaderFilterValue(this._column)},ColumnComponent.prototype.setHeaderFilterValue=function(e){this._column.table.modExists("filter",!0)&&this._column.table.modules.filter.setHeaderFilterValue(this._column,e)},ColumnComponent.prototype.move=function(e,t){var o=this._column.table.columnManager.findColumn(e);o?this._column.table.columnManager.moveColumn(this._column,o,t):console.warn("Move Error - No matching column found:",o)},ColumnComponent.prototype.getNextColumn=function(){var e=this._column.nextColumn();return!!e&&e.getComponent()},ColumnComponent.prototype.getPrevColumn=function(){var e=this._column.prevColumn();return!!e&&e.getComponent()},ColumnComponent.prototype.updateDefinition=function(e){return this._column.updateDefinition(e)},ColumnComponent.prototype.getWidth=function(){return this._column.getWidth()},ColumnComponent.prototype.setWidth=function(e){var t;return t=!0===e?this._column.reinitializeWidth(!0):this._column.setWidth(e),this._column.table.options.virtualDomHoz&&this._column.table.vdomHoz.reinitialize(!0),t},ColumnComponent.prototype.validate=function(){return this._column.validate()};var Column=function e(t,o){var i=this;this.table=o.table,this.definition=t,this.parent=o,this.type="column",this.columns=[],this.cells=[],this.element=this.createElement(),this.contentElement=!1,this.titleHolderElement=!1,this.titleElement=!1,this.groupElement=this.createGroupElement(),this.isGroup=!1,this.tooltip=!1,this.hozAlign="",this.vertAlign="",this.field="",this.fieldStructure="",this.getFieldValue="",this.setFieldValue="",this.titleFormatterRendered=!1,this.setField(this.definition.field),this.table.options.invalidOptionWarnings&&this.checkDefinition(),this.modules={},this.cellEvents={cellClick:!1,cellDblClick:!1,cellContext:!1,cellTap:!1,cellDblTap:!1,cellTapHold:!1,cellMouseEnter:!1,cellMouseLeave:!1,cellMouseOver:!1,cellMouseOut:!1,cellMouseMove:!1},this.width=null,this.widthStyled="",this.maxWidth=null,this.maxWidthStyled="",this.minWidth=null,this.minWidthStyled="",this.widthFixed=!1,this.visible=!0,this.component=null,this._mapDepricatedFunctionality(),t.columns?(this.isGroup=!0,t.columns.forEach((function(t,o){var n=new e(t,i);i.attachColumn(n)})),i.checkColumnVisibility()):o.registerColumnField(this),t.rowHandle&&!1!==this.table.options.movableRows&&this.table.modExists("moveRow")&&this.table.modules.moveRow.setHandle(!0),this._buildHeader(),this.bindModuleColumns()};Column.prototype.createElement=function(){var e=document.createElement("div");return e.classList.add("tabulator-col"),e.setAttribute("role","columnheader"),e.setAttribute("aria-sort","none"),e},Column.prototype.createGroupElement=function(){var e=document.createElement("div");return e.classList.add("tabulator-col-group-cols"),e},Column.prototype.checkDefinition=function(){var e=this;Object.keys(this.definition).forEach((function(t){-1===e.defaultOptionList.indexOf(t)&&console.warn("Invalid column definition option in '"+(e.field||e.definition.title)+"' column:",t)}))},Column.prototype.setField=function(e){this.field=e,this.fieldStructure=e?this.table.options.nestedFieldSeparator?e.split(this.table.options.nestedFieldSeparator):[e]:[],this.getFieldValue=this.fieldStructure.length>1?this._getNestedData:this._getFlatData,this.setFieldValue=this.fieldStructure.length>1?this._setNestedData:this._setFlatData},Column.prototype.registerColumnPosition=function(e){this.parent.registerColumnPosition(e)},Column.prototype.registerColumnField=function(e){this.parent.registerColumnField(e)},Column.prototype.reRegisterPosition=function(){this.isGroup?this.columns.forEach((function(e){e.reRegisterPosition()})):this.registerColumnPosition(this)},Column.prototype._mapDepricatedFunctionality=function(){void 0!==this.definition.hideInHtml&&(this.definition.htmlOutput=!this.definition.hideInHtml,console.warn("hideInHtml column definition property is deprecated, you should now use htmlOutput")),void 0!==this.definition.align&&(this.definition.hozAlign=this.definition.align,console.warn("align column definition property is deprecated, you should now use hozAlign")),void 0!==this.definition.downloadTitle&&(this.definition.titleDownload=this.definition.downloadTitle,console.warn("downloadTitle definition property is deprecated, you should now use titleDownload"))},Column.prototype.setTooltip=function(){var e=this,t=e.definition,o=t.headerTooltip||!1===t.tooltip?t.headerTooltip:e.table.options.tooltipsHeader;o?!0===o?t.field?e.table.modules.localize.bind("columns|"+t.field,(function(o){e.element.setAttribute("title",o||t.title)})):e.element.setAttribute("title",t.title):("function"==typeof o&&!1===(o=o(e.getComponent()))&&(o=""),e.element.setAttribute("title",o)):e.element.setAttribute("title","")},Column.prototype._buildHeader=function(){for(var e=this,t=e.definition;e.element.firstChild;)e.element.removeChild(e.element.firstChild);t.headerVertical&&(e.element.classList.add("tabulator-col-vertical"),"flip"===t.headerVertical&&e.element.classList.add("tabulator-col-vertical-flip")),e.contentElement=e._bindEvents(),e.contentElement=e._buildColumnHeaderContent(),e.element.appendChild(e.contentElement),e.isGroup?e._buildGroupHeader():e._buildColumnHeader(),e.setTooltip(),e.table.options.resizableColumns&&e.table.modExists("resizeColumns")&&e.table.modules.resizeColumns.initializeColumn("header",e,e.element),t.headerFilter&&e.table.modExists("filter")&&e.table.modExists("edit")&&(void 0!==t.headerFilterPlaceholder&&t.field&&e.table.modules.localize.setHeaderFilterColumnPlaceholder(t.field,t.headerFilterPlaceholder),e.table.modules.filter.initializeColumn(e)),e.table.modExists("frozenColumns")&&e.table.modules.frozenColumns.initializeColumn(e),e.table.options.movableColumns&&!e.isGroup&&e.table.modExists("moveColumn")&&e.table.modules.moveColumn.initializeColumn(e),(t.topCalc||t.bottomCalc)&&e.table.modExists("columnCalcs")&&e.table.modules.columnCalcs.initializeColumn(e),e.table.modExists("persistence")&&e.table.modules.persistence.config.columns&&e.table.modules.persistence.initializeColumn(e),e.element.addEventListener("mouseenter",(function(t){e.setTooltip()}))},Column.prototype._bindEvents=function(){var e,t,o,i=this,n=i.definition;"function"==typeof n.headerClick&&i.element.addEventListener("click",(function(e){n.headerClick(e,i.getComponent())})),"function"==typeof n.headerDblClick&&i.element.addEventListener("dblclick",(function(e){n.headerDblClick(e,i.getComponent())})),"function"==typeof n.headerContext&&i.element.addEventListener("contextmenu",(function(e){n.headerContext(e,i.getComponent())})),"function"==typeof n.headerTap&&(o=!1,i.element.addEventListener("touchstart",(function(e){o=!0}),{passive:!0}),i.element.addEventListener("touchend",(function(e){o&&n.headerTap(e,i.getComponent()),o=!1}))),"function"==typeof n.headerDblTap&&(e=null,i.element.addEventListener("touchend",(function(t){e?(clearTimeout(e),e=null,n.headerDblTap(t,i.getComponent())):e=setTimeout((function(){clearTimeout(e),e=null}),300)}))),"function"==typeof n.headerTapHold&&(t=null,i.element.addEventListener("touchstart",(function(e){clearTimeout(t),t=setTimeout((function(){clearTimeout(t),t=null,o=!1,n.headerTapHold(e,i.getComponent())}),1e3)}),{passive:!0}),i.element.addEventListener("touchend",(function(e){clearTimeout(t),t=null}))),"function"==typeof n.cellClick&&(i.cellEvents.cellClick=n.cellClick),"function"==typeof n.cellDblClick&&(i.cellEvents.cellDblClick=n.cellDblClick),"function"==typeof n.cellContext&&(i.cellEvents.cellContext=n.cellContext),"function"==typeof n.cellMouseEnter&&(i.cellEvents.cellMouseEnter=n.cellMouseEnter),"function"==typeof n.cellMouseLeave&&(i.cellEvents.cellMouseLeave=n.cellMouseLeave),"function"==typeof n.cellMouseOver&&(i.cellEvents.cellMouseOver=n.cellMouseOver),"function"==typeof n.cellMouseOut&&(i.cellEvents.cellMouseOut=n.cellMouseOut),"function"==typeof n.cellMouseMove&&(i.cellEvents.cellMouseMove=n.cellMouseMove),"function"==typeof n.cellTap&&(i.cellEvents.cellTap=n.cellTap),"function"==typeof n.cellDblTap&&(i.cellEvents.cellDblTap=n.cellDblTap),"function"==typeof n.cellTapHold&&(i.cellEvents.cellTapHold=n.cellTapHold),"function"==typeof n.cellEdited&&(i.cellEvents.cellEdited=n.cellEdited),"function"==typeof n.cellEditing&&(i.cellEvents.cellEditing=n.cellEditing),"function"==typeof n.cellEditCancelled&&(i.cellEvents.cellEditCancelled=n.cellEditCancelled)},Column.prototype._buildColumnHeader=function(){var e=this,t=this.definition,o=this.table;(o.modExists("sort")&&o.modules.sort.initializeColumn(this,this.titleHolderElement),(t.headerContextMenu||t.headerClickMenu||t.headerMenu)&&o.modExists("menu")&&o.modules.menu.initializeColumnHeader(this),o.modExists("format")&&o.modules.format.initializeColumn(this),void 0!==t.editor&&o.modExists("edit")&&o.modules.edit.initializeColumn(this),void 0!==t.validator&&o.modExists("validate")&&o.modules.validate.initializeColumn(this),o.modExists("mutator")&&o.modules.mutator.initializeColumn(this),o.modExists("accessor")&&o.modules.accessor.initializeColumn(this),_typeof(o.options.responsiveLayout)&&o.modExists("responsiveLayout")&&o.modules.responsiveLayout.initializeColumn(this),void 0!==t.visible&&(t.visible?this.show(!0):this.hide(!0)),t.cssClass)&&t.cssClass.split(" ").forEach((function(t){e.element.classList.add(t)}));t.field&&this.element.setAttribute("tabulator-field",t.field),this.setMinWidth(void 0===t.minWidth?this.table.options.columnMinWidth:parseInt(t.minWidth)),(t.maxWidth||this.table.options.columnMaxWidth)&&!1!==t.maxWidth&&this.setMaxWidth(void 0===t.maxWidth?this.table.options.columnMaxWidth:parseInt(t.maxWidth)),this.reinitializeWidth(),this.tooltip=this.definition.tooltip||!1===this.definition.tooltip?this.definition.tooltip:this.table.options.tooltips,this.hozAlign=void 0===this.definition.hozAlign?this.table.options.cellHozAlign:this.definition.hozAlign,this.vertAlign=void 0===this.definition.vertAlign?this.table.options.cellVertAlign:this.definition.vertAlign,this.titleElement.style.textAlign=this.definition.headerHozAlign||this.table.options.headerHozAlign},Column.prototype._buildColumnHeaderContent=function(){this.definition,this.table;var e=document.createElement("div");return e.classList.add("tabulator-col-content"),this.titleHolderElement=document.createElement("div"),this.titleHolderElement.classList.add("tabulator-col-title-holder"),e.appendChild(this.titleHolderElement),this.titleElement=this._buildColumnHeaderTitle(),this.titleHolderElement.appendChild(this.titleElement),e},Column.prototype._buildColumnHeaderTitle=function(){var e=this,t=e.definition,o=e.table,i=document.createElement("div");if(i.classList.add("tabulator-col-title"),t.editableTitle){var n=document.createElement("input");n.classList.add("tabulator-title-editor"),n.addEventListener("click",(function(e){e.stopPropagation(),n.focus()})),n.addEventListener("change",(function(){t.title=n.value,o.options.columnTitleChanged.call(e.table,e.getComponent())})),i.appendChild(n),t.field?o.modules.localize.bind("columns|"+t.field,(function(e){n.value=e||t.title||" "})):n.value=t.title||" "}else t.field?o.modules.localize.bind("columns|"+t.field,(function(o){e._formatColumnHeaderTitle(i,o||t.title||" ")})):e._formatColumnHeaderTitle(i,t.title||" ");return i},Column.prototype._formatColumnHeaderTitle=function(e,t){var o,i,n,r,s,a=this;if(this.definition.titleFormatter&&this.table.modExists("format"))switch(o=this.table.modules.format.getFormatter(this.definition.titleFormatter),s=function(e){a.titleFormatterRendered=e},r={getValue:function(){return t},getElement:function(){return e}},n="function"==typeof(n=this.definition.titleFormatterParams||{})?n():n,void 0===(i=o.call(this.table.modules.format,r,n,s))?"undefined":_typeof(i)){case"object":i instanceof Node?e.appendChild(i):(e.innerHTML="",console.warn("Format Error - Title formatter has returned a type of object, the only valid formatter object return is an instance of Node, the formatter returned:",i));break;case"undefined":case"null":e.innerHTML="";break;default:e.innerHTML=i}else e.innerHTML=t},Column.prototype._buildGroupHeader=function(){var e=this;(this.element.classList.add("tabulator-col-group"),this.element.setAttribute("role","columngroup"),this.element.setAttribute("aria-title",this.definition.title),this.definition.cssClass)&&this.definition.cssClass.split(" ").forEach((function(t){e.element.classList.add(t)}));(this.definition.headerContextMenu||this.definition.headerMenu)&&this.table.modExists("menu")&&this.table.modules.menu.initializeColumnHeader(this),this.titleElement.style.textAlign=this.definition.headerHozAlign||this.table.options.headerHozAlign,this.element.appendChild(this.groupElement)},Column.prototype._getFlatData=function(e){return e[this.field]},Column.prototype._getNestedData=function(e){for(var t,o=e,i=this.fieldStructure,n=i.length,r=0;r-1&&this.columns.splice(t,1),this.columns.length||this.delete()},Column.prototype.setWidth=function(e){this.widthFixed=!0,this.setWidthActual(e)},Column.prototype.setWidthActual=function(e){isNaN(e)&&(e=Math.floor(this.table.element.clientWidth/100*parseInt(e))),e=Math.max(this.minWidth,e),this.maxWidth&&(e=Math.min(this.maxWidth,e)),this.width=e,this.widthStyled=e?e+"px":"",this.element.style.width=this.widthStyled,this.isGroup||this.cells.forEach((function(e){e.setWidth()})),this.parent.isGroup&&this.parent.matchChildWidths(),this.table.modExists("frozenColumns")&&this.table.modules.frozenColumns.layout()},Column.prototype.checkCellHeights=function(){var e=[];this.cells.forEach((function(t){t.row.heightInitialized&&(null!==t.row.getElement().offsetParent?(e.push(t.row),t.row.clearCellHeight()):t.row.heightInitialized=!1)})),e.forEach((function(e){e.calcHeight()})),e.forEach((function(e){e.setCellHeight()}))},Column.prototype.getWidth=function(){var e=0;return this.isGroup?this.columns.forEach((function(t){t.visible&&(e+=t.getWidth())})):e=this.width,e},Column.prototype.getHeight=function(){return this.element.offsetHeight},Column.prototype.setMinWidth=function(e){this.minWidth=e,this.minWidthStyled=e?e+"px":"",this.element.style.minWidth=this.minWidthStyled,this.cells.forEach((function(e){e.setMinWidth()}))},Column.prototype.setMaxWidth=function(e){this.maxWidth=e,this.maxWidthStyled=e?e+"px":"",this.element.style.maxWidth=this.maxWidthStyled,this.cells.forEach((function(e){e.setMaxWidth()}))},Column.prototype.delete=function(){var e=this;return new Promise((function(t,o){e.isGroup&&e.columns.forEach((function(e){e.delete()})),e.table.modExists("edit")&&e.table.modules.edit.currentCell.column===e&&e.table.modules.edit.cancelEdit();for(var i=e.cells.length,n=0;n-1&&this._nextVisibleColumn(e+1)},Column.prototype._nextVisibleColumn=function(e){var t=this.table.columnManager.getColumnByIndex(e);return!t||t.visible?t:this._nextVisibleColumn(e+1)},Column.prototype.prevColumn=function(){var e=this.table.columnManager.findColumnIndex(this);return e>-1&&this._prevVisibleColumn(e-1)},Column.prototype._prevVisibleColumn=function(e){var t=this.table.columnManager.getColumnByIndex(e);return!t||t.visible?t:this._prevVisibleColumn(e-1)},Column.prototype.reinitializeWidth=function(e){this.widthFixed=!1,void 0===this.definition.width||e||this.setWidth(this.definition.width),this.table.modExists("filter")&&this.table.modules.filter.hideHeaderFilterElements(),this.fitToData(),this.table.modExists("filter")&&this.table.modules.filter.showHeaderFilterElements()},Column.prototype.fitToData=function(){var e=this;this.widthFixed||(this.element.style.width="",e.cells.forEach((function(e){e.clearWidth()})));var t=this.element.offsetWidth;e.width&&this.widthFixed||(e.cells.forEach((function(e){var o=e.getWidth();o>t&&(t=o)})),t&&e.setWidthActual(t+1))},Column.prototype.updateDefinition=function(e){var t=this;return new Promise((function(o,i){var n;t.isGroup||t.parent.isGroup?(console.warn("Column Update Error - The updateDefinition function is only available on ungrouped columns"),i("Column Update Error - The updateDefinition function is only available on columns, not column groups")):(n=Object.assign({},t.getDefinition()),n=Object.assign(n,e),t.table.columnManager.addColumn(n,!1,t).then((function(e){n.field==t.field&&(t.field=!1),t.delete().then((function(){o(e.getComponent())})).catch((function(e){i(e)}))})).catch((function(e){i(e)})))}))},Column.prototype.deleteCell=function(e){var t=this.cells.indexOf(e);t>-1&&this.cells.splice(t,1)},Column.prototype.defaultOptionList=["title","field","columns","visible","align","hozAlign","vertAlign","width","minWidth","maxWidth","widthGrow","widthShrink","resizable","frozen","responsive","tooltip","cssClass","rowHandle","hideInHtml","print","htmlOutput","sorter","sorterParams","formatter","formatterParams","variableHeight","editable","editor","editorParams","validator","mutator","mutatorParams","mutatorData","mutatorDataParams","mutatorEdit","mutatorEditParams","mutatorClipboard","mutatorClipboardParams","accessor","accessorParams","accessorData","accessorDataParams","accessorDownload","accessorDownloadParams","accessorClipboard","accessorClipboardParams","accessorPrint","accessorPrintParams","accessorHtmlOutput","accessorHtmlOutputParams","clipboard","download","downloadTitle","topCalc","topCalcParams","topCalcFormatter","topCalcFormatterParams","bottomCalc","bottomCalcParams","bottomCalcFormatter","bottomCalcFormatterParams","cellClick","cellDblClick","cellContext","cellTap","cellDblTap","cellTapHold","cellMouseEnter","cellMouseLeave","cellMouseOver","cellMouseOut","cellMouseMove","cellEditing","cellEdited","cellEditCancelled","headerSort","headerSortStartingDir","headerSortTristate","headerClick","headerDblClick","headerContext","headerTap","headerDblTap","headerTapHold","headerTooltip","headerVertical","headerHozAlign","editableTitle","titleFormatter","titleFormatterParams","headerFilter","headerFilterPlaceholder","headerFilterParams","headerFilterEmptyCheck","headerFilterFunc","headerFilterFuncParams","headerFilterLiveFilter","print","headerContextMenu","headerMenu","contextMenu","clickMenu","formatterPrint","formatterPrintParams","formatterClipboard","formatterClipboardParams","formatterHtmlOutput","formatterHtmlOutputParams","titlePrint","titleClipboard","titleHtmlOutput","titleDownload"],Column.prototype.getComponent=function(){return this.component||(this.component=new ColumnComponent(this)),this.component};var RowManager=function(e){this.table=e,this.element=this.createHolderElement(),this.tableElement=this.createTableElement(),this.heightFixer=this.createTableElement(),this.columnManager=null,this.height=0,this.firstRender=!1,this.renderMode="virtual",this.fixedHeight=!1,this.rows=[],this.activeRows=[],this.activeRowsCount=0,this.displayRows=[],this.displayRowsCount=0,this.scrollTop=0,this.scrollLeft=0,this.vDomRowHeight=20,this.vDomTop=0,this.vDomBottom=0,this.vDomScrollPosTop=0,this.vDomScrollPosBottom=0,this.vDomTopPad=0,this.vDomBottomPad=0,this.vDomMaxRenderChain=90,this.vDomWindowBuffer=0,this.vDomWindowMinTotalRows=20,this.vDomWindowMinMarginRows=5,this.vDomTopNewRows=[],this.vDomBottomNewRows=[],this.rowNumColumn=!1,this.redrawBlock=!1,this.redrawBlockRestoreConfig=!1,this.redrawBlockRederInPosition=!1};RowManager.prototype.createHolderElement=function(){var e=document.createElement("div");return e.classList.add("tabulator-tableHolder"),e.setAttribute("tabindex",0),e},RowManager.prototype.createTableElement=function(){var e=document.createElement("div");return e.classList.add("tabulator-table"),e},RowManager.prototype.getElement=function(){return this.element},RowManager.prototype.getTableElement=function(){return this.tableElement},RowManager.prototype.getRowPosition=function(e,t){return t?this.activeRows.indexOf(e):this.rows.indexOf(e)},RowManager.prototype.setColumnManager=function(e){this.columnManager=e},RowManager.prototype.initialize=function(){var e=this;e.setRenderMode(),e.element.appendChild(e.tableElement),e.firstRender=!0,e.element.addEventListener("scroll",(function(){var t=e.element.scrollLeft;e.scrollLeft!=t&&(e.columnManager.scrollHorizontal(t),e.table.options.groupBy&&e.table.modules.groupRows.scrollHeaders(t),e.table.modExists("columnCalcs")&&e.table.modules.columnCalcs.scrollHorizontal(t),e.table.options.scrollHorizontal(t)),e.scrollLeft=t})),"virtual"===this.renderMode&&e.element.addEventListener("scroll",(function(){var t=e.element.scrollTop,o=e.scrollTop>t;e.scrollTop!=t?(e.scrollTop=t,e.scrollVertical(o),"scroll"==e.table.options.ajaxProgressiveLoad&&e.table.modules.ajax.nextPage(e.element.scrollHeight-e.element.clientHeight-t),e.table.options.scrollVertical(t)):e.scrollTop=t}))},RowManager.prototype.findRow=function(e){var t=this;return"object"!=(void 0===e?"undefined":_typeof(e))?null!=e&&(t.rows.find((function(o){return o.data[t.table.options.index]==e}))||!1):e instanceof Row?e:e instanceof RowComponent?e._getSelf()||!1:"undefined"!=typeof HTMLElement&&e instanceof HTMLElement&&t.rows.find((function(t){return t.getElement()===e}))||!1},RowManager.prototype.getRowFromDataObject=function(e){return this.rows.find((function(t){return t.data===e}))||!1},RowManager.prototype.getRowFromPosition=function(e,t){return t?this.activeRows[e]:this.rows[e]},RowManager.prototype.scrollToRow=function(e,t,o){var i,n=this,r=this.getDisplayRows().indexOf(e),s=e.getElement(),a=0;return new Promise((function(e,l){if(r>-1){if(void 0===t&&(t=n.table.options.scrollToRowPosition),void 0===o&&(o=n.table.options.scrollToRowIfVisible),"nearest"===t)switch(n.renderMode){case"classic":i=Tabulator.prototype.helpers.elOffset(s).top,t=Math.abs(n.element.scrollTop-i)>Math.abs(n.element.scrollTop+n.element.clientHeight-i)?"bottom":"top";break;case"virtual":t=Math.abs(n.vDomTop-r)>Math.abs(n.vDomBottom-r)?"bottom":"top"}if(!o&&Tabulator.prototype.helpers.elVisible(s)&&(a=Tabulator.prototype.helpers.elOffset(s).top-Tabulator.prototype.helpers.elOffset(n.element).top)>0&&a-1&&this.activeRows.splice(i,1),o>-1&&this.rows.splice(o,1),this.setActiveRows(this.activeRows),this.displayRowIterator((function(t){var o=t.indexOf(e);o>-1&&t.splice(o,1)})),t||this.reRenderInPosition(),this.regenerateRowNumbers(),this.table.options.rowDeleted.call(this.table,e.getComponent()),this.table.options.dataChanged&&this.table.options.dataChanged.call(this.table,this.getData()),this.table.options.groupBy&&this.table.modExists("groupRows")?this.table.modules.groupRows.updateGroupRows(!0):this.table.options.pagination&&this.table.modExists("page")?this.refreshActiveData(!1,!1,!0):this.table.options.pagination&&this.table.modExists("page")&&this.refreshActiveData("page")},RowManager.prototype.addRow=function(e,t,o,i){var n=this.addRowActual(e,t,o,i);return this.table.options.history&&this.table.modExists("history")&&this.table.modules.history.action("rowAdd",n,{data:e,pos:t,index:o}),n},RowManager.prototype.addRows=function(e,t,o){var i=this,n=this,r=[];return new Promise((function(s,a){t=i.findAddRowPos(t),Array.isArray(e)||(e=[e]),e.length-1,(void 0===o&&t||void 0!==o&&!t)&&e.reverse(),e.forEach((function(e,i){var s=n.addRow(e,t,o,!0);r.push(s)})),i.table.options.groupBy&&i.table.modExists("groupRows")?i.table.modules.groupRows.updateGroupRows(!0):i.table.options.pagination&&i.table.modExists("page")?i.refreshActiveData(!1,!1,!0):i.reRenderInPosition(),i.table.modExists("columnCalcs")&&i.table.modules.columnCalcs.recalc(i.table.rowManager.activeRows),i.regenerateRowNumbers(),s(r)}))},RowManager.prototype.findAddRowPos=function(e){return void 0===e&&(e=this.table.options.addRowPos),"pos"===e&&(e=!0),"bottom"===e&&(e=!1),e},RowManager.prototype.addRowActual=function(e,t,o,i){var n,r,s=e instanceof Row?e:new Row(e||{},this),a=this.findAddRowPos(t),l=-1;if(!o&&this.table.options.pagination&&"page"==this.table.options.paginationAddRow&&(r=this.getDisplayRows(),a?r.length?o=r[0]:this.activeRows.length&&(o=this.activeRows[this.activeRows.length-1],a=!1):r.length&&(o=r[r.length-1],a=!(r.length1&&(!o||o&&-1==u.indexOf(o)?a?u[0]!==s&&(o=u[0],this._moveRowInArray(s.getGroup().rows,s,o,!a)):u[u.length-1]!==s&&(o=u[u.length-1],this._moveRowInArray(s.getGroup().rows,s,o,!a)):this._moveRowInArray(s.getGroup().rows,s,o,!a))}return o&&(l=this.rows.indexOf(o)),o&&l>-1?(n=this.activeRows.indexOf(o),this.displayRowIterator((function(e){var t=e.indexOf(o);t>-1&&e.splice(a?t:t+1,0,s)})),n>-1&&this.activeRows.splice(a?n:n+1,0,s),this.rows.splice(a?l:l+1,0,s)):a?(this.displayRowIterator((function(e){e.unshift(s)})),this.activeRows.unshift(s),this.rows.unshift(s)):(this.displayRowIterator((function(e){e.push(s)})),this.activeRows.push(s),this.rows.push(s)),this.setActiveRows(this.activeRows),this.table.options.rowAdded.call(this.table,s.getComponent()),this.table.options.dataChanged&&this.table.options.dataChanged.call(this.table,this.getData()),i||this.reRenderInPosition(),s},RowManager.prototype.moveRow=function(e,t,o){this.table.options.history&&this.table.modExists("history")&&this.table.modules.history.action("rowMove",e,{posFrom:this.getRowPosition(e),posTo:this.getRowPosition(t),to:t,after:o}),this.moveRowActual(e,t,o),this.regenerateRowNumbers(),this.table.options.rowMoved.call(this.table,e.getComponent())},RowManager.prototype.moveRowActual=function(e,t,o){var i=this;if(this._moveRowInArray(this.rows,e,t,o),this._moveRowInArray(this.activeRows,e,t,o),this.displayRowIterator((function(n){i._moveRowInArray(n,e,t,o)})),this.table.options.groupBy&&this.table.modExists("groupRows")){!o&&t instanceof Group&&(t=this.table.rowManager.prevDisplayRow(e)||t);var n=t.getGroup(),r=e.getGroup();n===r?this._moveRowInArray(n.rows,e,t,o):(r&&r.removeRow(e),n.insertRow(e,t,o))}},RowManager.prototype._moveRowInArray=function(e,t,o,i){var n,r,s;if(t!==o&&((n=e.indexOf(t))>-1&&(e.splice(n,1),(r=e.indexOf(o))>-1?i?e.splice(r+1,0,t):e.splice(r,0,t):e.splice(n,0,t)),e===this.getDisplayRows())){s=r>n?r:n+1;for(var a=n-1&&t},RowManager.prototype.nextDisplayRow=function(e,t){var o=this.getDisplayRowIndex(e),i=!1;return!1!==o&&o-1)&&o},RowManager.prototype.getData=function(e,t){var o=[];return this.getRows(e).forEach((function(e){"row"==e.type&&o.push(e.getData(t||"data"))})),o},RowManager.prototype.getComponents=function(e){var t=[];return this.getRows(e).forEach((function(e){t.push(e.getComponent())})),t},RowManager.prototype.getDataCount=function(e){return this.getRows(e).length},RowManager.prototype._genRemoteRequest=function(){var e=this,t=this.table,o=t.options,i={};if(t.modExists("page")){if(o.ajaxSorting){var n=this.table.modules.sort.getSort();n.forEach((function(e){delete e.column})),i[this.table.modules.page.paginationDataSentNames.sorters]=n}if(o.ajaxFiltering){var r=this.table.modules.filter.getFilters(!0,!0);i[this.table.modules.page.paginationDataSentNames.filters]=r}this.table.modules.ajax.setParams(i,!0)}t.modules.ajax.sendRequest().then((function(t){e._setDataActual(t,!0)})).catch((function(e){}))},RowManager.prototype.filterRefresh=function(){var e=this.table,t=e.options,o=this.scrollLeft;t.ajaxFiltering?"remote"==t.pagination&&e.modExists("page")?(e.modules.page.reset(!0),e.modules.page.setPage(1).then((function(){})).catch((function(){}))):t.ajaxProgressiveLoad?e.modules.ajax.loadData().then((function(){})).catch((function(){})):this._genRemoteRequest():this.refreshActiveData("filter"),this.scrollHorizontal(o)},RowManager.prototype.sorterRefresh=function(e){var t=this.table,o=this.table.options,i=this.scrollLeft;o.ajaxSorting?("remote"==o.pagination||o.progressiveLoad)&&t.modExists("page")?(t.modules.page.reset(!0),t.modules.page.setPage(1).then((function(){})).catch((function(){}))):o.ajaxProgressiveLoad?t.modules.ajax.loadData().then((function(){})).catch((function(){})):this._genRemoteRequest():this.refreshActiveData(e?"filter":"sort"),this.scrollHorizontal(i)},RowManager.prototype.scrollHorizontal=function(e){this.scrollLeft=e,this.element.scrollLeft=e,this.table.options.groupBy&&this.table.modules.groupRows.scrollHeaders(e),this.table.modExists("columnCalcs")&&this.table.modules.columnCalcs.scrollHorizontal(e)},RowManager.prototype.refreshActiveData=function(e,t,o){var i,n=this,r=this.table,s=["all","filter","sort","display","freeze","group","tree","page"];if(this.redrawBlock)(!this.redrawBlockRestoreConfig||s.indexOf(e)=0))break;r=a}else if(t-s[a].getElement().offsetTop>=0)n=a;else{if(i=!0,!(o-s[a].getElement().offsetTop>=0))break;r=a}}else n=this.vDomTop,r=this.vDomBottom;return s.slice(n,r+1)},RowManager.prototype.displayRowIterator=function(e){this.displayRows.forEach(e),this.displayRowsCount=this.displayRows[this.displayRows.length-1].length},RowManager.prototype.getRows=function(e){var t;switch(e){case"active":t=this.activeRows;break;case"display":t=this.table.rowManager.getDisplayRows();break;case"visible":t=this.getVisibleRows(!0);break;case"selected":t=this.table.modules.selectRow.selectedRows;break;default:t=this.rows}return t},RowManager.prototype.reRenderInPosition=function(e){if("virtual"==this.getRenderMode())if(this.redrawBlock)e?e():this.redrawBlockRederInPosition=!0;else{for(var t=this.element.scrollTop,o=!1,i=!1,n=this.scrollLeft,r=this.getDisplayRows(),s=this.vDomTop;s<=this.vDomBottom;s++)if(r[s]){var a=t-r[s].getElement().offsetTop;if(!(!1===i||Math.abs(a)this.vDomWindowBuffer&&(this.vDomWindowBuffer=2*p),"group"!==f.type&&(c=!1),i.vDomBottom++,u++}e?(i.vDomTopPad=t?i.vDomRowHeight*this.vDomTop+o:i.scrollTop-l,i.vDomBottomPad=i.vDomBottom==i.displayRowsCount-1?0:Math.max(i.vDomScrollHeight-i.vDomTopPad-a-l,0)):(this.vDomTopPad=0,i.vDomRowHeight=Math.floor((a+l)/u),i.vDomBottomPad=i.vDomRowHeight*(i.displayRowsCount-i.vDomBottom-1),i.vDomScrollHeight=l+a+i.vDomBottomPad-i.height),n.style.paddingTop=i.vDomTopPad+"px",n.style.paddingBottom=i.vDomBottomPad+"px",t&&(this.scrollTop=i.vDomTopPad+l+o-(this.element.scrollWidth>this.element.clientWidth?this.element.offsetHeight-this.element.clientHeight:0)),this.scrollTop=Math.min(this.scrollTop,this.element.scrollHeight-this.height),this.element.scrollWidth>this.element.offsetWidth&&t&&(this.scrollTop+=this.element.offsetHeight-this.element.clientHeight),this.vDomScrollPosTop=this.scrollTop,this.vDomScrollPosBottom=this.scrollTop,r.scrollTop=this.scrollTop,n.style.minWidth=c?i.table.columnManager.getWidth()+"px":"",i.table.options.groupBy&&"fitDataFill"!=i.table.modules.layout.getMode()&&i.displayRowsCount==i.table.modules.groupRows.countGroups()&&(i.tableElement.style.minWidth=i.table.columnManager.getWidth())}else this.renderEmptyScroll();this.fixedHeight||this.adjustTableSize()},RowManager.prototype.scrollVertical=function(e){var t=this.scrollTop-this.vDomScrollPosTop,o=this.scrollTop-this.vDomScrollPosBottom,i=2*this.vDomWindowBuffer;if(-t>i||o>i){var n=this.scrollLeft;this._virtualRenderFill(Math.floor(this.element.scrollTop/this.element.scrollHeight*this.displayRowsCount)),this.scrollHorizontal(n)}else e?(t<0&&this._addTopRow(-t),o<0&&(this.vDomScrollHeight-this.scrollTop>this.vDomWindowBuffer?this._removeBottomRow(-o):this.vDomScrollPosBottom=this.scrollTop)):(t>=0&&(this.scrollTop>this.vDomWindowBuffer?this._removeTopRow(t):this.vDomScrollPosTop=this.scrollTop),o>=0&&this._addBottomRow(o))},RowManager.prototype._addTopRow=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,o=this.tableElement,i=this.getDisplayRows();if(this.vDomTop){var n=this.vDomTop-1,r=i[n],s=r.getHeight()||this.vDomRowHeight;e>=s&&(this.styleRow(r,n),o.insertBefore(r.getElement(),o.firstChild),r.initialized&&r.heightInitialized||(this.vDomTopNewRows.push(r),r.heightInitialized||r.clearCellHeight()),r.initialize(),this.vDomTopPad-=s,this.vDomTopPad<0&&(this.vDomTopPad=n*this.vDomRowHeight),n||(this.vDomTopPad=0),o.style.paddingTop=this.vDomTopPad+"px",this.vDomScrollPosTop-=s,this.vDomTop--),e=-(this.scrollTop-this.vDomScrollPosTop),r.getHeight()>this.vDomWindowBuffer&&(this.vDomWindowBuffer=2*r.getHeight()),t=(i[this.vDomTop-1].getHeight()||this.vDomRowHeight)?this._addTopRow(e,t+1):this._quickNormalizeRowHeight(this.vDomTopNewRows)}},RowManager.prototype._removeTopRow=function(e){var t=this.tableElement,o=this.getDisplayRows()[this.vDomTop],i=o.getHeight()||this.vDomRowHeight;if(e>=i){var n=o.getElement();n.parentNode.removeChild(n),this.vDomTopPad+=i,t.style.paddingTop=this.vDomTopPad+"px",this.vDomScrollPosTop+=this.vDomTop?i:i+this.vDomWindowBuffer,this.vDomTop++,e=this.scrollTop-this.vDomScrollPosTop,this._removeTopRow(e)}},RowManager.prototype._addBottomRow=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,o=this.tableElement,i=this.getDisplayRows();if(this.vDomBottom=s&&(this.styleRow(r,n),o.appendChild(r.getElement()),r.initialized&&r.heightInitialized||(this.vDomBottomNewRows.push(r),r.heightInitialized||r.clearCellHeight()),r.initialize(),this.vDomBottomPad-=s,(this.vDomBottomPad<0||n==this.displayRowsCount-1)&&(this.vDomBottomPad=0),o.style.paddingBottom=this.vDomBottomPad+"px",this.vDomScrollPosBottom+=s,this.vDomBottom++),e=this.scrollTop-this.vDomScrollPosBottom,r.getHeight()>this.vDomWindowBuffer&&(this.vDomWindowBuffer=2*r.getHeight()),t=(i[this.vDomBottom+1].getHeight()||this.vDomRowHeight)?this._addBottomRow(e,t+1):this._quickNormalizeRowHeight(this.vDomBottomNewRows)}},RowManager.prototype._removeBottomRow=function(e){var t=this.tableElement,o=this.getDisplayRows()[this.vDomBottom],i=o.getHeight()||this.vDomRowHeight;if(e>=i){var n=o.getElement();n.parentNode&&n.parentNode.removeChild(n),this.vDomBottomPad+=i,this.vDomBottomPad<0&&(this.vDomBottomPad=0),t.style.paddingBottom=this.vDomBottomPad+"px",this.vDomScrollPosBottom-=i,this.vDomBottom--,e=-(this.scrollTop-this.vDomScrollPosBottom),this._removeBottomRow(e)}},RowManager.prototype._quickNormalizeRowHeight=function(e){e.forEach((function(e){e.calcHeight()})),e.forEach((function(e){e.setCellHeight()})),e.length=0},RowManager.prototype.normalizeHeight=function(){this.activeRows.forEach((function(e){e.normalizeHeight()}))},RowManager.prototype.adjustTableSize=function(){var e,t=this.element.clientHeight;if("virtual"===this.renderMode){var o=Math.floor(this.columnManager.getElement().getBoundingClientRect().height+(this.table.footerManager&&this.table.footerManager.active&&!this.table.footerManager.external?this.table.footerManager.getElement().getBoundingClientRect().height:0));this.fixedHeight?(this.element.style.minHeight="calc(100% - "+o+"px)",this.element.style.height="calc(100% - "+o+"px)",this.element.style.maxHeight="calc(100% - "+o+"px)"):(this.element.style.height="",this.element.style.height=this.table.element.clientHeight-o+"px",this.element.scrollTop=this.scrollTop),this.height=this.element.clientHeight,this.vDomWindowBuffer=this.table.options.virtualDomBuffer||this.height,this.fixedHeight||t==this.element.clientHeight||((e=this.table.modExists("resizeTable"))&&!this.table.modules.resizeTable.autoResize||!e)&&this.redraw()}},RowManager.prototype.reinitialize=function(){this.rows.forEach((function(e){e.reinitialize(!0)}))},RowManager.prototype.blockRedraw=function(){this.redrawBlock=!0,this.redrawBlockRestoreConfig=!1},RowManager.prototype.restoreRedraw=function(){this.redrawBlock=!1,this.redrawBlockRestoreConfig?(this.refreshActiveData(this.redrawBlockRestoreConfig.stage,this.redrawBlockRestoreConfig.skipStage,this.redrawBlockRestoreConfig.renderInPosition),this.redrawBlockRestoreConfig=!1):this.redrawBlockRederInPosition&&this.reRenderInPosition(),this.redrawBlockRederInPosition=!1},RowManager.prototype.redraw=function(e){var t=this.scrollLeft;this.adjustTableSize(),this.table.tableWidth=this.table.element.clientWidth,e?this.renderTable():("classic"==this.renderMode?this.table.options.groupBy?this.refreshActiveData("group",!1,!1):this._simpleRender():(this.reRenderInPosition(),this.scrollHorizontal(t)),this.displayRowsCount||this.table.options.placeholder&&this.getElement().appendChild(this.table.options.placeholder))},RowManager.prototype.resetScroll=function(){if(this.element.scrollLeft=0,this.element.scrollTop=0,"ie"===this.table.browser){var e=document.createEvent("Event");e.initEvent("scroll",!1,!0),this.element.dispatchEvent(e)}else this.element.dispatchEvent(new Event("scroll"))};var VDomHoz=function(e){this.table=e,this.element=this.table.rowManager.tableElement,this.holderEl=this.table.rowManager.element,this.leftCol=0,this.rightCol=0,this.scrollLeft=0,this.vDomScrollPosLeft=0,this.vDomScrollPosRight=0,this.vDomPadLeft=0,this.vDomPadRight=0,this.fitDataColAvg=0,this.window=200,this.initialized=!1,this.columns=[],this.compatabilityCheck()&&this.initialize()};VDomHoz.prototype.compatabilityCheck=function(){var e=this.table.options,t=!0;return"fitDataTable"==e.layout&&(console.warn("Horizontal Vitrual DOM is not compatible with fitDataTable layout mode"),t=!1),e.responsiveLayout&&(console.warn("Horizontal Vitrual DOM is not compatible with responsive columns"),t=!1),this.table.rtl&&(console.warn("Horizontal Vitrual DOM is not currently compatible with RTL text direction"),t=!1),e.columns&&e.columns.find((function(e){return e.frozen}))&&(console.warn("Horizontal Vitrual DOM is not compatible with frozen columns"),t=!1),t||(e.virtualDomHoz=!1),t},VDomHoz.prototype.initialize=function(){var e=this;this.holderEl.addEventListener("scroll",(function(){var t=e.holderEl.scrollLeft;e.scrollLeft!=t&&(e.scrollLeft=t,e.scroll(t-(e.vDomScrollPosLeft+e.window)))}))},VDomHoz.prototype.deinitialize=function(){this.initialized=!1},VDomHoz.prototype.clear=function(){this.columns=[],this.leftCol=-1,this.rightCol=0,this.vDomScrollPosLeft=0,this.vDomScrollPosRight=0,this.vDomPadLeft=0,this.vDomPadRight=0},VDomHoz.prototype.dataChange=function(){var e,t,o=!1,i=0,n=0;if("fitData"===this.table.options.layout){if(this.table.columnManager.columnsByIndex.forEach((function(e){!e.definition.width&&e.visible&&(o=!0)})),o&&o&&this.table.rowManager.getDisplayRows().length&&(this.vDomScrollPosRight=this.scrollLeft+this.holderEl.clientWidth+this.window,e=this.table.options.groupBy?this.table.modules.groupRows.getGroups(!1)[0].getRows(!1)[0]:this.table.rowManager.getDisplayRows()[0])){t=e.getElement(),e.generateCells(),this.element.appendChild(t);for(n=0;nthis.vDomScrollPosRight)break}for(t.parentNode.removeChild(t),this.fitDataColAvg=Math.floor(i/(n+1));no.vDomScrollPosLeft&&n.8*this.holderEl.clientWidth?this.reinitialize():e>0?(this.addColRight(),this.removeColLeft()):(this.addColLeft(),this.removeColRight())},VDomHoz.prototype.colPositionAdjust=function(e,t,o){for(var i=e;i=this.columns.length-1?this.vDomPadRight=0:this.vDomPadRight-=o.getWidth(),this.element.style.paddingRight=this.vDomPadRight+"px",this.addColRight())},VDomHoz.prototype.addColLeft=function(){var e=this.columns[this.leftCol-1];e&&e.modules.vdomHoz.rightPos>=this.vDomScrollPosLeft&&(this.table.rowManager.getVisibleRows().forEach((function(t){if("group"!==t.type){var o=t.getCell(e);t.getElement().prepend(o.getElement()),o.cellRendered()}})),this.leftCol?this.vDomPadLeft-=e.getWidth():this.vDomPadLeft=0,this.element.style.paddingLeft=this.vDomPadLeft+"px",this.leftCol--,this.addColLeft())},VDomHoz.prototype.removeColRight=function(e){var t;(e=this.columns[this.rightCol])&&e.modules.vdomHoz.leftPos>this.vDomScrollPosRight&&(t=this.table.rowManager.getVisibleRows(),e.modules.vdomHoz.visible=!1,t.forEach((function(t){if("group"!==t.type){var o=t.getCell(e);t.getElement().removeChild(o.getElement())}})),this.vDomPadRight+=e.getWidth(),this.element.style.paddingRight=this.vDomPadRight+"px",this.rightCol--,this.removeColRight())},VDomHoz.prototype.removeColLeft=function(){var e=this.columns[this.leftCol];e&&e.modules.vdomHoz.rightPos-1},RowComponent.prototype.treeCollapse=function(){this._row.table.modExists("dataTree",!0)&&this._row.table.modules.dataTree.collapseRow(this._row)},RowComponent.prototype.treeExpand=function(){this._row.table.modExists("dataTree",!0)&&this._row.table.modules.dataTree.expandRow(this._row)},RowComponent.prototype.treeToggle=function(){this._row.table.modExists("dataTree",!0)&&this._row.table.modules.dataTree.toggleRow(this._row)},RowComponent.prototype.getTreeParent=function(){return!!this._row.table.modExists("dataTree",!0)&&this._row.table.modules.dataTree.getTreeParent(this._row)},RowComponent.prototype.getTreeChildren=function(){return!!this._row.table.modExists("dataTree",!0)&&this._row.table.modules.dataTree.getTreeChildren(this._row,!0)},RowComponent.prototype.addTreeChild=function(e,t,o){return!!this._row.table.modExists("dataTree",!0)&&this._row.table.modules.dataTree.addTreeChildRow(this._row,e,t,o)},RowComponent.prototype.reformat=function(){return this._row.reinitialize()},RowComponent.prototype.getGroup=function(){return this._row.getGroup().getComponent()},RowComponent.prototype.getTable=function(){return this._row.table},RowComponent.prototype.getNextRow=function(){var e=this._row.nextRow();return e?e.getComponent():e},RowComponent.prototype.getPrevRow=function(){var e=this._row.prevRow();return e?e.getComponent():e};var Row=function(e,t){var o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"row";this.table=t.table,this.parent=t,this.data={},this.type=o,this.element=!1,this.modules={},this.cells=[],this.height=0,this.heightStyled="",this.manualHeight=!1,this.outerHeight=0,this.initialized=!1,this.heightInitialized=!1,this.component=null,this.created=!1,this.setData(e)};Row.prototype.create=function(){this.created||(this.created=!0,this.generateElement())},Row.prototype.createElement=function(){var e=document.createElement("div");e.classList.add("tabulator-row"),e.setAttribute("role","row"),this.element=e},Row.prototype.getElement=function(){return this.create(),this.element},Row.prototype.detachElement=function(){this.element&&this.element.parentNode&&this.element.parentNode.removeChild(this.element)},Row.prototype.generateElement=function(){var e,t,o,i=this;this.createElement(),!1!==i.table.options.selectable&&i.table.modExists("selectRow")&&i.table.modules.selectRow.initializeRow(this),!1!==i.table.options.movableRows&&i.table.modExists("moveRow")&&i.table.modules.moveRow.initializeRow(this),!1!==i.table.options.dataTree&&i.table.modExists("dataTree")&&i.table.modules.dataTree.initializeRow(this),"collapse"===i.table.options.responsiveLayout&&i.table.modExists("responsiveLayout")&&i.table.modules.responsiveLayout.initializeRow(this),(i.table.options.rowContextMenu||i.table.options.rowClickMenu)&&this.table.modExists("menu")&&i.table.modules.menu.initializeRow(this),i.table.options.rowClick&&i.element.addEventListener("click",(function(e){i.table.options.rowClick(e,i.getComponent())})),i.table.options.rowDblClick&&i.element.addEventListener("dblclick",(function(e){i.table.options.rowDblClick(e,i.getComponent())})),i.table.options.rowContext&&i.element.addEventListener("contextmenu",(function(e){i.table.options.rowContext(e,i.getComponent())})),i.table.options.rowMouseEnter&&i.element.addEventListener("mouseenter",(function(e){i.table.options.rowMouseEnter(e,i.getComponent())})),i.table.options.rowMouseLeave&&i.element.addEventListener("mouseleave",(function(e){i.table.options.rowMouseLeave(e,i.getComponent())})),i.table.options.rowMouseOver&&i.element.addEventListener("mouseover",(function(e){i.table.options.rowMouseOver(e,i.getComponent())})),i.table.options.rowMouseOut&&i.element.addEventListener("mouseout",(function(e){i.table.options.rowMouseOut(e,i.getComponent())})),i.table.options.rowMouseMove&&i.element.addEventListener("mousemove",(function(e){i.table.options.rowMouseMove(e,i.getComponent())})),i.table.options.rowTap&&(o=!1,i.element.addEventListener("touchstart",(function(e){o=!0}),{passive:!0}),i.element.addEventListener("touchend",(function(e){o&&i.table.options.rowTap(e,i.getComponent()),o=!1}))),i.table.options.rowDblTap&&(e=null,i.element.addEventListener("touchend",(function(t){e?(clearTimeout(e),e=null,i.table.options.rowDblTap(t,i.getComponent())):e=setTimeout((function(){clearTimeout(e),e=null}),300)}))),i.table.options.rowTapHold&&(t=null,i.element.addEventListener("touchstart",(function(e){clearTimeout(t),t=setTimeout((function(){clearTimeout(t),t=null,o=!1,i.table.options.rowTapHold(e,i.getComponent())}),1e3)}),{passive:!0}),i.element.addEventListener("touchend",(function(e){clearTimeout(t),t=null})))},Row.prototype.generateCells=function(){this.cells=this.table.columnManager.generateCells(this)},Row.prototype.initialize=function(e){var t=this;if(this.create(),!this.initialized||e){for(this.deleteCells();this.element.firstChild;)this.element.removeChild(this.element.firstChild);this.table.modExists("frozenColumns")&&this.table.modules.frozenColumns.layoutRow(this),this.generateCells(),this.table.options.virtualDomHoz&&this.table.vdomHoz.initialized?this.table.vdomHoz.initializeRow(this):this.cells.forEach((function(e){t.element.appendChild(e.getElement()),e.cellRendered()})),e&&this.normalizeHeight(),this.table.options.dataTree&&this.table.modExists("dataTree")&&this.table.modules.dataTree.layoutRow(this),"collapse"===this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout")&&this.table.modules.responsiveLayout.layoutRow(this),this.table.options.rowFormatter&&this.table.options.rowFormatter(this.getComponent()),this.table.options.resizableRows&&this.table.modExists("resizeRows")&&this.table.modules.resizeRows.initializeRow(this),this.initialized=!0}else this.table.options.virtualDomHoz&&this.table.vdomHoz.reinitializeRow(this)},Row.prototype.reinitializeHeight=function(){this.heightInitialized=!1,this.element&&null!==this.element.offsetParent&&this.normalizeHeight(!0)},Row.prototype.reinitialize=function(e){this.initialized=!1,this.heightInitialized=!1,this.manualHeight||(this.height=0,this.heightStyled=""),this.element&&null!==this.element.offsetParent&&this.initialize(!0),this.table.options.dataTree&&this.table.modExists("dataTree",!0)&&this.table.modules.dataTree.getTreeChildren(this,!1,!0).forEach((function(e){e.reinitialize(!0)}))},Row.prototype.calcHeight=function(e){var t=0,o=this.table.options.resizableRows?this.element.clientHeight:0;this.cells.forEach((function(e){var o=e.getHeight();o>t&&(t=o)})),this.height=e?Math.max(t,o):this.manualHeight?this.height:Math.max(t,o),this.heightStyled=this.height?this.height+"px":"",this.outerHeight=this.element.offsetHeight},Row.prototype.setCellHeight=function(){this.cells.forEach((function(e){e.setHeight()})),this.heightInitialized=!0},Row.prototype.clearCellHeight=function(){this.cells.forEach((function(e){e.clearHeight()}))},Row.prototype.normalizeHeight=function(e){e&&this.clearCellHeight(),this.calcHeight(e),this.setCellHeight()},Row.prototype.setHeight=function(e,t){(this.height!=e||t)&&(this.manualHeight=!0,this.height=e,this.heightStyled=e?e+"px":"",this.setCellHeight(),this.outerHeight=this.element.offsetHeight)},Row.prototype.getHeight=function(){return this.outerHeight},Row.prototype.getWidth=function(){return this.element.offsetWidth},Row.prototype.deleteCell=function(e){var t=this.cells.indexOf(e);t>-1&&this.cells.splice(t,1)},Row.prototype.setData=function(e){this.table.modExists("mutator")&&(e=this.table.modules.mutator.transformRow(e,"data")),this.data=e,this.table.options.reactiveData&&this.table.modExists("reactiveData",!0)&&this.table.modules.reactiveData.watchRow(this)},Row.prototype.updateData=function(e){var t,o=this,i=this.element&&Tabulator.prototype.helpers.elVisible(this.element),n={};return new Promise((function(r,s){for(var a in"string"==typeof e&&(e=JSON.parse(e)),o.table.options.reactiveData&&o.table.modExists("reactiveData",!0)&&o.table.modules.reactiveData.block(),o.table.modExists("mutator")?(n=Object.assign(n,o.data),n=Object.assign(n,e),t=o.table.modules.mutator.transformRow(n,"data",e)):t=e,t)o.data[a]=t[a];for(var a in o.table.options.reactiveData&&o.table.modExists("reactiveData",!0)&&o.table.modules.reactiveData.unblock(),e){o.table.columnManager.getColumnsByFieldRoot(a).forEach((function(e){var n=o.getCell(e.getField());if(n){var r=e.getFieldValue(t);n.getValue()!=r&&(n.setValueProcessData(r),i&&n.cellRendered())}}))}o.table.options.groupUpdateOnCellEdit&&o.table.options.groupBy&&o.table.modExists("groupRows")&&o.table.modules.groupRows.reassignRowToGroup(o.row),i?(o.normalizeHeight(!0),o.table.options.rowFormatter&&o.table.options.rowFormatter(o.getComponent())):(o.initialized=!1,o.height=0,o.heightStyled=""),!1!==o.table.options.dataTree&&o.table.modExists("dataTree")&&o.table.modules.dataTree.redrawNeeded(e)&&(o.table.modules.dataTree.initializeRow(o),i&&(o.table.modules.dataTree.layoutRow(o),o.table.rowManager.refreshActiveData("tree",!1,!0))),o.table.options.rowUpdated.call(o.table,o.getComponent()),o.table.options.dataChanged&&o.table.options.dataChanged.call(o.table,o.table.rowManager.getData()),r()}))},Row.prototype.getData=function(e){return e&&this.table.modExists("accessor")?this.table.modules.accessor.transformRow(this,e):this.data},Row.prototype.getCell=function(e){return e=this.table.columnManager.findColumn(e),this.cells.find((function(t){return t.column===e}))},Row.prototype.getCellIndex=function(e){return this.cells.findIndex((function(t){return t===e}))},Row.prototype.findNextEditableCell=function(e){var t=!1;if(e0)for(var o=e-1;o>=0;o--){var i=this.cells[o],n=!0;if(i.column.modules.edit&&Tabulator.prototype.helpers.elVisible(i.getElement())&&("function"==typeof i.column.modules.edit.check&&(n=i.column.modules.edit.check(i.getComponent())),n)){t=i;break}}return t},Row.prototype.getCells=function(){return this.cells},Row.prototype.nextRow=function(){return this.table.rowManager.nextDisplayRow(this,!0)||!1},Row.prototype.prevRow=function(){return this.table.rowManager.prevDisplayRow(this,!0)||!1},Row.prototype.moveToRow=function(e,t){var o=this.table.rowManager.findRow(e);o?(this.table.rowManager.moveRowActual(this,o,!t),this.table.rowManager.refreshActiveData("display",!1,!0)):console.warn("Move Error - No matching row found:",e)},Row.prototype.validate=function(){var e=[];return this.cells.forEach((function(t){t.validate()||e.push(t.getComponent())})),!e.length||e},Row.prototype.delete=function(){var e=this;return new Promise((function(t,o){var i,n;e.table.options.history&&e.table.modExists("history")&&(e.table.options.groupBy&&e.table.modExists("groupRows")?(i=(n=e.getGroup().rows).indexOf(e))&&(i=n[i-1]):(i=e.table.rowManager.getRowIndex(e))&&(i=e.table.rowManager.rows[i-1]),e.table.modules.history.action("rowDelete",e,{data:e.getData(),pos:!i,index:i})),e.deleteActual(),t()}))},Row.prototype.deleteActual=function(e){this.table.rowManager.getRowIndex(this);this.detatchModules(),this.table.options.reactiveData&&this.table.modExists("reactiveData",!0),this.modules.group&&this.modules.group.removeRow(this),this.table.rowManager.deleteRow(this,e),this.deleteCells(),this.initialized=!1,this.heightInitialized=!1,this.element=!1,this.table.options.dataTree&&this.table.modExists("dataTree",!0)&&this.table.modules.dataTree.rowDelete(this),this.table.modExists("columnCalcs")&&(this.table.options.groupBy&&this.table.modExists("groupRows")?this.table.modules.columnCalcs.recalcRowGroup(this):this.table.modules.columnCalcs.recalc(this.table.rowManager.activeRows))},Row.prototype.detatchModules=function(){this.table.modExists("selectRow")&&this.table.modules.selectRow._deselectRow(this,!0),this.table.modExists("edit")&&this.table.modules.edit.currentCell.row===this&&this.table.modules.edit.cancelEdit(),this.table.modExists("frozenRows")&&this.table.modules.frozenRows.detachRow(this)},Row.prototype.deleteCells=function(){for(var e=this.cells.length,t=0;t",footerElement:!1,index:"id",textDirection:"auto",keybindings:[],tabEndNewRow:!1,invalidOptionWarnings:!0,clipboard:!1,clipboardCopyStyled:!0,clipboardCopyConfig:!1,clipboardCopyFormatter:!1,clipboardCopyRowRange:"active",clipboardPasteParser:"table",clipboardPasteAction:"insert",clipboardCopied:function(){},clipboardPasted:function(){},clipboardPasteError:function(){},downloadDataFormatter:!1,downloadReady:function(e,t){return t},downloadComplete:!1,downloadConfig:{},downloadRowRange:"active",dataTree:!1,dataTreeFilter:!0,dataTreeSort:!0,dataTreeElementColumn:!1,dataTreeBranchElement:!0,dataTreeChildIndent:9,dataTreeChildField:"_children",dataTreeCollapseElement:!1,dataTreeExpandElement:!1,dataTreeStartExpanded:!1,dataTreeRowExpanded:function(){},dataTreeRowCollapsed:function(){},dataTreeChildColumnCalcs:!1,dataTreeSelectPropagate:!1,printAsHtml:!1,printFormatter:!1,printHeader:!1,printFooter:!1,printCopyStyle:!0,printStyled:!0,printVisibleRows:!0,printRowRange:"visible",printConfig:{},addRowPos:"bottom",selectable:"highlight",selectableRangeMode:"drag",selectableRollingSelection:!0,selectablePersistence:!0,selectableCheck:function(e,t){return!0},headerFilterLiveFilterDelay:300,headerFilterPlaceholder:!1,headerVisible:!0,history:!1,locale:!1,langs:{},virtualDom:!0,virtualDomBuffer:0,virtualDomHoz:!1,persistentLayout:!1,persistentSort:!1,persistentFilter:!1,persistenceID:"",persistenceMode:!0,persistenceReaderFunc:!1,persistenceWriterFunc:!1,persistence:!1,responsiveLayout:!1,responsiveLayoutCollapseStartOpen:!0,responsiveLayoutCollapseUseFormatters:!0,responsiveLayoutCollapseFormatter:!1,pagination:!1,paginationSize:!1,paginationInitialPage:1,paginationButtonCount:5,paginationSizeSelector:!1,paginationElement:!1,paginationDataSent:{},paginationDataReceived:{},paginationAddRow:"page",ajaxURL:!1,ajaxURLGenerator:!1,ajaxParams:{},ajaxConfig:"get",ajaxContentType:"form",ajaxRequestFunc:!1,ajaxLoader:!0,ajaxLoaderLoading:!1,ajaxLoaderError:!1,ajaxFiltering:!1,ajaxSorting:!1,ajaxProgressiveLoad:!1,ajaxProgressiveLoadDelay:0,ajaxProgressiveLoadScrollMargin:0,groupBy:!1,groupStartOpen:!0,groupValues:!1,groupUpdateOnCellEdit:!1,groupHeader:!1,groupHeaderPrint:null,groupHeaderClipboard:null,groupHeaderHtmlOutput:null,groupHeaderDownload:null,htmlOutputConfig:!1,movableColumns:!1,movableRows:!1,movableRowsConnectedTables:!1,movableRowsConnectedElements:!1,movableRowsSender:!1,movableRowsReceiver:"insert",movableRowsSendingStart:function(){},movableRowsSent:function(){},movableRowsSentFailed:function(){},movableRowsSendingStop:function(){},movableRowsReceivingStart:function(){},movableRowsReceived:function(){},movableRowsReceivedFailed:function(){},movableRowsReceivingStop:function(){},movableRowsElementDrop:function(){},scrollToRowPosition:"top",scrollToRowIfVisible:!0,scrollToColumnPosition:"left",scrollToColumnIfVisible:!0,rowFormatter:!1,rowFormatterPrint:null,rowFormatterClipboard:null,rowFormatterHtmlOutput:null,placeholder:!1,tableBuilding:function(){},tableBuilt:function(){},renderStarted:function(){},renderComplete:function(){},rowClick:!1,rowDblClick:!1,rowContext:!1,rowTap:!1,rowDblTap:!1,rowTapHold:!1,rowMouseEnter:!1,rowMouseLeave:!1,rowMouseOver:!1,rowMouseOut:!1,rowMouseMove:!1,rowContextMenu:!1,rowClickMenu:!1,rowAdded:function(){},rowDeleted:function(){},rowMoved:function(){},rowUpdated:function(){},rowSelectionChanged:function(){},rowSelected:function(){},rowDeselected:function(){},rowResized:function(){},cellClick:!1,cellDblClick:!1,cellContext:!1,cellTap:!1,cellDblTap:!1,cellTapHold:!1,cellMouseEnter:!1,cellMouseLeave:!1,cellMouseOver:!1,cellMouseOut:!1,cellMouseMove:!1,cellEditing:function(){},cellEdited:function(){},cellEditCancelled:function(){},columnMoved:!1,columnResized:function(){},columnTitleChanged:function(){},columnVisibilityChanged:function(){},htmlImporting:function(){},htmlImported:function(){},dataLoading:function(){},dataLoaded:function(){},dataEdited:!1,dataChanged:!1,ajaxRequesting:function(){},ajaxResponse:!1,ajaxError:function(){},dataFiltering:!1,dataFiltered:!1,dataSorting:function(){},dataSorted:function(){},groupToggleElement:"arrow",groupClosedShowCalcs:!1,dataGrouping:function(){},dataGrouped:!1,groupVisibilityChanged:function(){},groupClick:!1,groupDblClick:!1,groupContext:!1,groupContextMenu:!1,groupClickMenu:!1,groupTap:!1,groupDblTap:!1,groupTapHold:!1,columnCalcs:!0,pageLoaded:function(){},localized:function(){},validationMode:"blocking",validationFailed:function(){},historyUndo:function(){},historyRedo:function(){},scrollHorizontal:function(){},scrollVertical:function(){}},Tabulator.prototype.initializeOptions=function(e){if(!1!==e.invalidOptionWarnings)for(var t in e)void 0===this.defaultOptions[t]&&console.warn("Invalid table constructor option:",t);for(var t in this.defaultOptions)t in e?this.options[t]=e[t]:Array.isArray(this.defaultOptions[t])?this.options[t]=Object.assign([],this.defaultOptions[t]):"object"===_typeof(this.defaultOptions[t])&&null!==this.defaultOptions[t]?this.options[t]=Object.assign({},this.defaultOptions[t]):this.options[t]=this.defaultOptions[t]},Tabulator.prototype.initializeElement=function(e){return"undefined"!=typeof HTMLElement&&e instanceof HTMLElement?(this.element=e,!0):"string"==typeof e?(this.element=document.querySelector(e),!!this.element||(console.error("Tabulator Creation Error - no element found matching selector: ",e),!1)):(console.error("Tabulator Creation Error - Invalid element provided:",e),!1)},Tabulator.prototype.rtlCheck=function(){var e=window.getComputedStyle(this.element);switch(this.options.textDirection){case"auto":if("rtl"!==e.direction)break;case"rtl":this.element.classList.add("tabulator-rtl"),this.rtl=!0;break;case"ltr":this.element.classList.add("tabulator-ltr");default:this.rtl=!1}},Tabulator.prototype._mapDepricatedFunctionality=function(){(this.options.persistentLayout||this.options.persistentSort||this.options.persistentFilter)&&(this.options.persistence||(this.options.persistence={})),this.options.dataEdited&&(console.warn("DEPRECATION WARNING - dataEdited option has been deprecated, please use the dataChanged option instead"),this.options.dataChanged=this.options.dataEdited),this.options.downloadDataFormatter&&console.warn("DEPRECATION WARNING - downloadDataFormatter option has been deprecated"),void 0!==this.options.clipboardCopyHeader&&(this.options.columnHeaders=this.options.clipboardCopyHeader,console.warn("DEPRECATION WARNING - clipboardCopyHeader option has been deprecated, please use the columnHeaders property on the clipboardCopyConfig option")),!0!==this.options.printVisibleRows&&(console.warn("printVisibleRows option is deprecated, you should now use the printRowRange option"),this.options.persistence.printRowRange="active"),!0!==this.options.printCopyStyle&&(console.warn("printCopyStyle option is deprecated, you should now use the printStyled option"),this.options.persistence.printStyled=this.options.printCopyStyle),this.options.persistentLayout&&(console.warn("persistentLayout option is deprecated, you should now use the persistence option"),!0!==this.options.persistence&&void 0===this.options.persistence.columns&&(this.options.persistence.columns=!0)),this.options.persistentSort&&(console.warn("persistentSort option is deprecated, you should now use the persistence option"),!0!==this.options.persistence&&void 0===this.options.persistence.sort&&(this.options.persistence.sort=!0)),this.options.persistentFilter&&(console.warn("persistentFilter option is deprecated, you should now use the persistence option"),!0!==this.options.persistence&&void 0===this.options.persistence.filter&&(this.options.persistence.filter=!0)),this.options.columnVertAlign&&(console.warn("columnVertAlign option is deprecated, you should now use the columnHeaderVertAlign option"),this.options.columnHeaderVertAlign=this.options.columnVertAlign)},Tabulator.prototype._clearSelection=function(){this.element.classList.add("tabulator-block-select"),window.getSelection?window.getSelection().empty?window.getSelection().empty():window.getSelection().removeAllRanges&&window.getSelection().removeAllRanges():document.selection&&document.selection.empty(),this.element.classList.remove("tabulator-block-select")},Tabulator.prototype._create=function(){this._clearObjectPointers(),this._mapDepricatedFunctionality(),this.bindModules(),this.rtlCheck(),"TABLE"===this.element.tagName&&this.modExists("htmlTableImport",!0)&&this.modules.htmlTableImport.parseTable(),this.columnManager=new ColumnManager(this),this.rowManager=new RowManager(this),this.footerManager=new FooterManager(this),this.columnManager.setRowManager(this.rowManager),this.rowManager.setColumnManager(this.columnManager),this.options.virtualDomHoz&&(this.vdomHoz=new VDomHoz(this)),this._buildElement(),this._loadInitialData()},Tabulator.prototype._clearObjectPointers=function(){this.options.columns=this.options.columns.slice(0),this.options.reactiveData||(this.options.data=this.options.data.slice(0))},Tabulator.prototype._buildElement=function(){var e=this,t=this.element,o=this.modules,i=this.options;for(i.tableBuilding.call(this),t.classList.add("tabulator"),t.setAttribute("role","grid");t.firstChild;)t.removeChild(t.firstChild);for(var n in i.height&&(i.height=isNaN(i.height)?i.height:i.height+"px",t.style.height=i.height),!1!==i.minHeight&&(i.minHeight=isNaN(i.minHeight)?i.minHeight:i.minHeight+"px",t.style.minHeight=i.minHeight),!1!==i.maxHeight&&(i.maxHeight=isNaN(i.maxHeight)?i.maxHeight:i.maxHeight+"px",t.style.maxHeight=i.maxHeight),this.columnManager.initialize(),this.rowManager.initialize(),this._detectBrowser(),this.modExists("layout",!0)&&o.layout.initialize(i.layout),o.localize.initialize(),!1!==i.headerFilterPlaceholder&&o.localize.setHeaderFilterPlaceholder(i.headerFilterPlaceholder),i.langs)o.localize.installLang(n,i.langs[n]);if(o.localize.setLocale(i.locale),"string"==typeof i.placeholder){var r=document.createElement("div");r.classList.add("tabulator-placeholder");var s=document.createElement("span");s.innerHTML=i.placeholder,r.appendChild(s),i.placeholder=r}if(t.appendChild(this.columnManager.getElement()),t.appendChild(this.rowManager.getElement()),i.footerElement&&this.footerManager.activate(),i.persistence&&this.modExists("persistence",!0)&&o.persistence.initialize(),i.movableRows&&this.modExists("moveRow")&&o.moveRow.initialize(),i.autoColumns&&this.options.data&&this.columnManager.generateColumnsFromRowData(this.options.data),this.modExists("columnCalcs")&&o.columnCalcs.initialize(),this.columnManager.setColumns(i.columns),i.dataTree&&this.modExists("dataTree",!0)&&o.dataTree.initialize(),this.modExists("frozenRows")&&this.modules.frozenRows.initialize(),(i.persistence&&this.modExists("persistence",!0)&&o.persistence.config.sort||i.initialSort)&&this.modExists("sort",!0)){var a=[];i.persistence&&this.modExists("persistence",!0)&&o.persistence.config.sort?!1===(a=o.persistence.load("sort"))&&i.initialSort&&(a=i.initialSort):i.initialSort&&(a=i.initialSort),o.sort.setSort(a)}if((i.persistence&&this.modExists("persistence",!0)&&o.persistence.config.filter||i.initialFilter)&&this.modExists("filter",!0)){var l=[];i.persistence&&this.modExists("persistence",!0)&&o.persistence.config.filter?!1===(l=o.persistence.load("filter"))&&i.initialFilter&&(l=i.initialFilter):i.initialFilter&&(l=i.initialFilter),o.filter.setFilter(l)}i.initialHeaderFilter&&this.modExists("filter",!0)&&i.initialHeaderFilter.forEach((function(t){var i=e.columnManager.findColumn(t.field);if(!i)return console.warn("Column Filter Error - No matching column found:",t.field),!1;o.filter.setHeaderFilterValue(i,t.value)})),this.modExists("ajax")&&o.ajax.initialize(),i.pagination&&this.modExists("page",!0)&&o.page.initialize(),i.groupBy&&this.modExists("groupRows",!0)&&o.groupRows.initialize(),this.modExists("keybindings")&&o.keybindings.initialize(),this.modExists("selectRow")&&o.selectRow.clearSelectionData(!0),i.autoResize&&this.modExists("resizeTable")&&o.resizeTable.initialize(),this.modExists("clipboard")&&o.clipboard.initialize(),i.printAsHtml&&this.modExists("print")&&o.print.initialize(),i.tableBuilt.call(this)},Tabulator.prototype._loadInitialData=function(){var e=this;if(e.options.pagination&&e.modExists("page"))if(e.modules.page.reset(!0,!0),"local"==e.options.pagination){if(e.options.data.length)e.rowManager.setData(e.options.data,!1,!0);else{if((e.options.ajaxURL||e.options.ajaxURLGenerator)&&e.modExists("ajax"))return void e.modules.ajax.loadData(!1,!0).then((function(){})).catch((function(){e.options.paginationInitialPage&&e.modules.page.setPage(e.options.paginationInitialPage)}));e.rowManager.setData(e.options.data,!1,!0)}e.options.paginationInitialPage&&e.modules.page.setPage(e.options.paginationInitialPage)}else e.options.ajaxURL?e.modules.page.setPage(e.options.paginationInitialPage).then((function(){})).catch((function(){})):e.rowManager.setData([],!1,!0);else e.options.data.length?e.rowManager.setData(e.options.data):(e.options.ajaxURL||e.options.ajaxURLGenerator)&&e.modExists("ajax")?e.modules.ajax.loadData(!1,!0).then((function(){})).catch((function(){})):e.rowManager.setData(e.options.data,!1,!0)},Tabulator.prototype.destroy=function(){var e=this.element;for(Tabulator.prototype.comms.deregister(this),this.options.reactiveData&&this.modExists("reactiveData",!0)&&this.modules.reactiveData.unwatchData(),this.rowManager.rows.forEach((function(e){e.wipe()})),this.rowManager.rows=[],this.rowManager.activeRows=[],this.rowManager.displayRows=[],this.options.autoResize&&this.modExists("resizeTable")&&this.modules.resizeTable.clearBindings(),this.modExists("keybindings")&&this.modules.keybindings.clearBindings();e.firstChild;)e.removeChild(e.firstChild);e.classList.remove("tabulator")},Tabulator.prototype._detectBrowser=function(){var e=navigator.userAgent||navigator.vendor||window.opera;e.indexOf("Trident")>-1?(this.browser="ie",this.browserSlow=!0):e.indexOf("Edge")>-1?(this.browser="edge",this.browserSlow=!0):e.indexOf("Firefox")>-1?(this.browser="firefox",this.browserSlow=!1):(this.browser="other",this.browserSlow=!1),this.browserMobile=/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(e)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(e.substr(0,4))},Tabulator.prototype.blockRedraw=function(){return this.rowManager.blockRedraw()},Tabulator.prototype.restoreRedraw=function(){return this.rowManager.restoreRedraw()},Tabulator.prototype.setDataFromLocalFile=function(e){var t=this;return new Promise((function(o,i){var n=document.createElement("input");n.type="file",n.accept=e||".json,application/json",n.addEventListener("change",(function(e){var r,s=n.files[0],a=new FileReader;a.readAsText(s),a.onload=function(e){try{r=JSON.parse(a.result)}catch(e){return console.warn("File Load Error - File contents is invalid JSON",e),void i(e)}t.setData(r).then((function(e){o(e)})).catch((function(e){o(e)}))},a.onerror=function(e){console.warn("File Load Error - Unable to read file"),i()}})),n.click()}))},Tabulator.prototype.setData=function(e,t,o){return this.modExists("ajax")&&this.modules.ajax.blockActiveRequest(),this._setData(e,t,o,!1,!0)},Tabulator.prototype._setData=function(e,t,o,i,n){var r=this;return"string"!=typeof e?e?r.rowManager.setData(e,i,n):r.modExists("ajax")&&(r.modules.ajax.getUrl||r.options.ajaxURLGenerator)?"remote"==r.options.pagination&&r.modExists("page",!0)?(r.modules.page.reset(!0,!0),r.modules.page.setPage(1)):r.modules.ajax.loadData(i,n):r.rowManager.setData([],i,n):0==e.indexOf("{")||0==e.indexOf("[")?r.rowManager.setData(JSON.parse(e),i,n):r.modExists("ajax",!0)?(t&&r.modules.ajax.setParams(t),o&&r.modules.ajax.setConfig(o),r.modules.ajax.setUrl(e),"remote"==r.options.pagination&&r.modExists("page",!0)?(r.modules.page.reset(!0,!0),r.modules.page.setPage(1)):r.modules.ajax.loadData(i,n)):void 0},Tabulator.prototype.clearData=function(){this.modExists("ajax")&&this.modules.ajax.blockActiveRequest(),this.rowManager.clearData()},Tabulator.prototype.getData=function(e){return!0===e&&(console.warn("passing a boolean to the getData function is deprecated, you should now pass the string 'active'"),e="active"),this.rowManager.getData(e)},Tabulator.prototype.getDataCount=function(e){return!0===e&&(console.warn("passing a boolean to the getDataCount function is deprecated, you should now pass the string 'active'"),e="active"),this.rowManager.getDataCount(e)},Tabulator.prototype.searchRows=function(e,t,o){if(this.modExists("filter",!0))return this.modules.filter.search("rows",e,t,o)},Tabulator.prototype.searchData=function(e,t,o){if(this.modExists("filter",!0))return this.modules.filter.search("data",e,t,o)},Tabulator.prototype.getHtml=function(e,t,o){if(this.modExists("export",!0))return this.modules.export.getHtml(e,t,o)},Tabulator.prototype.print=function(e,t,o){if(this.modExists("print",!0))return this.modules.print.printFullscreen(e,t,o)},Tabulator.prototype.getAjaxUrl=function(){if(this.modExists("ajax",!0))return this.modules.ajax.getUrl()},Tabulator.prototype.replaceData=function(e,t,o){return this.modExists("ajax")&&this.modules.ajax.blockActiveRequest(),this._setData(e,t,o,!0)},Tabulator.prototype.updateData=function(e){var t=this,o=this,i=0;return new Promise((function(n,r){t.modExists("ajax")&&t.modules.ajax.blockActiveRequest(),"string"==typeof e&&(e=JSON.parse(e)),e?e.forEach((function(e){var t=o.rowManager.findRow(e[o.options.index]);t&&(i++,t.updateData(e).then((function(){--i||n()})))})):(console.warn("Update Error - No data provided"),r("Update Error - No data provided"))}))},Tabulator.prototype.addData=function(e,t,o){var i=this;return new Promise((function(n,r){i.modExists("ajax")&&i.modules.ajax.blockActiveRequest(),"string"==typeof e&&(e=JSON.parse(e)),e?i.rowManager.addRows(e,t,o).then((function(e){var t=[];e.forEach((function(e){t.push(e.getComponent())})),n(t)})):(console.warn("Update Error - No data provided"),r("Update Error - No data provided"))}))},Tabulator.prototype.updateOrAddData=function(e){var t=this,o=this,i=[],n=0;return new Promise((function(r,s){t.modExists("ajax")&&t.modules.ajax.blockActiveRequest(),"string"==typeof e&&(e=JSON.parse(e)),e?e.forEach((function(e){var t=o.rowManager.findRow(e[o.options.index]);n++,t?t.updateData(e).then((function(){n--,i.push(t.getComponent()),n||r(i)})):o.rowManager.addRows(e).then((function(e){n--,i.push(e[0].getComponent()),n||r(i)}))})):(console.warn("Update Error - No data provided"),s("Update Error - No data provided"))}))},Tabulator.prototype.getRow=function(e){var t=this.rowManager.findRow(e);return t?t.getComponent():(console.warn("Find Error - No matching row found:",e),!1)},Tabulator.prototype.getRowFromPosition=function(e,t){var o=this.rowManager.getRowFromPosition(e,t);return o?o.getComponent():(console.warn("Find Error - No matching row found:",e),!1)},Tabulator.prototype.deleteRow=function(e){var t=this;return new Promise((function(o,i){var n=t,r=0,s=0,a=[];function l(){++r==e.length&&s&&(n.rowManager.reRenderInPosition(),o())}Array.isArray(e)||(e=[e]),e.forEach((function(e){var o=t.rowManager.findRow(e,!0);o?a.push(o):(console.warn("Delete Error - No matching row found:",e),i("Delete Error - No matching row found"),l())})),a.sort((function(e,o){return t.rowManager.rows.indexOf(e)>t.rowManager.rows.indexOf(o)?1:-1})),a.forEach((function(e){e.delete().then((function(){s++,l()})).catch((function(e){l(),i(e)}))}))}))},Tabulator.prototype.addRow=function(e,t,o){var i=this;return new Promise((function(n,r){"string"==typeof e&&(e=JSON.parse(e)),i.rowManager.addRows(e,t,o).then((function(e){i.modExists("columnCalcs")&&i.modules.columnCalcs.recalc(i.rowManager.activeRows),n(e[0].getComponent())}))}))},Tabulator.prototype.updateOrAddRow=function(e,t){var o=this;return new Promise((function(i,n){var r=o.rowManager.findRow(e);"string"==typeof t&&(t=JSON.parse(t)),r?r.updateData(t).then((function(){o.modExists("columnCalcs")&&o.modules.columnCalcs.recalc(o.rowManager.activeRows),i(r.getComponent())})).catch((function(e){n(e)})):r=o.rowManager.addRows(t).then((function(e){o.modExists("columnCalcs")&&o.modules.columnCalcs.recalc(o.rowManager.activeRows),i(e[0].getComponent())})).catch((function(e){n(e)}))}))},Tabulator.prototype.updateRow=function(e,t){var o=this;return new Promise((function(i,n){var r=o.rowManager.findRow(e);"string"==typeof t&&(t=JSON.parse(t)),r?r.updateData(t).then((function(){i(r.getComponent())})).catch((function(e){n(e)})):(console.warn("Update Error - No matching row found:",e),n("Update Error - No matching row found"))}))},Tabulator.prototype.scrollToRow=function(e,t,o){var i=this;return new Promise((function(n,r){var s=i.rowManager.findRow(e);s?i.rowManager.scrollToRow(s,t,o).then((function(){n()})).catch((function(e){r(e)})):(console.warn("Scroll Error - No matching row found:",e),r("Scroll Error - No matching row found"))}))},Tabulator.prototype.moveRow=function(e,t,o){var i=this.rowManager.findRow(e);i?i.moveToRow(t,o):console.warn("Move Error - No matching row found:",e)},Tabulator.prototype.getRows=function(e){return!0===e&&(console.warn("passing a boolean to the getRows function is deprecated, you should now pass the string 'active'"),e="active"),this.rowManager.getComponents(e)},Tabulator.prototype.getRowPosition=function(e,t){var o=this.rowManager.findRow(e);return o?this.rowManager.getRowPosition(o,t):(console.warn("Position Error - No matching row found:",e),!1)},Tabulator.prototype.copyToClipboard=function(e){this.modExists("clipboard",!0)&&this.modules.clipboard.copy(e)},Tabulator.prototype.setColumns=function(e){this.columnManager.setColumns(e)},Tabulator.prototype.getColumns=function(e){return this.columnManager.getComponents(e)},Tabulator.prototype.getColumn=function(e){var t=this.columnManager.findColumn(e);return t?t.getComponent():(console.warn("Find Error - No matching column found:",e),!1)},Tabulator.prototype.getColumnDefinitions=function(){return this.columnManager.getDefinitionTree()},Tabulator.prototype.getColumnLayout=function(){if(this.modExists("persistence",!0))return this.modules.persistence.parseColumns(this.columnManager.getColumns())},Tabulator.prototype.setColumnLayout=function(e){return!!this.modExists("persistence",!0)&&(this.columnManager.setColumns(this.modules.persistence.mergeDefinition(this.options.columns,e)),!0)},Tabulator.prototype.showColumn=function(e){var t=this.columnManager.findColumn(e);if(!t)return console.warn("Column Show Error - No matching column found:",e),!1;t.show(),this.options.responsiveLayout&&this.modExists("responsiveLayout",!0)&&this.modules.responsiveLayout.update()},Tabulator.prototype.hideColumn=function(e){var t=this.columnManager.findColumn(e);if(!t)return console.warn("Column Hide Error - No matching column found:",e),!1;t.hide(),this.options.responsiveLayout&&this.modExists("responsiveLayout",!0)&&this.modules.responsiveLayout.update()},Tabulator.prototype.toggleColumn=function(e){var t=this.columnManager.findColumn(e);if(!t)return console.warn("Column Visibility Toggle Error - No matching column found:",e),!1;t.visible?t.hide():t.show()},Tabulator.prototype.addColumn=function(e,t,o){var i=this;return new Promise((function(n,r){var s=i.columnManager.findColumn(o);i.columnManager.addColumn(e,t,s).then((function(e){n(e.getComponent())})).catch((function(e){r(e)}))}))},Tabulator.prototype.deleteColumn=function(e){var t=this;return new Promise((function(o,i){var n=t.columnManager.findColumn(e);n?n.delete().then((function(){o()})).catch((function(e){i(e)})):(console.warn("Column Delete Error - No matching column found:",e),i())}))},Tabulator.prototype.updateColumnDefinition=function(e,t){var o=this;return new Promise((function(i,n){var r=o.columnManager.findColumn(e);r?r.updateDefinition(t).then((function(e){i(e)})).catch((function(e){n(e)})):(console.warn("Column Update Error - No matching column found:",e),n())}))},Tabulator.prototype.moveColumn=function(e,t,o){var i=this.columnManager.findColumn(e),n=this.columnManager.findColumn(t);i?n?this.columnManager.moveColumn(i,n,o):console.warn("Move Error - No matching column found:",n):console.warn("Move Error - No matching column found:",e)},Tabulator.prototype.scrollToColumn=function(e,t,o){var i=this;return new Promise((function(n,r){var s=i.columnManager.findColumn(e);s?i.columnManager.scrollToColumn(s,t,o).then((function(){n()})).catch((function(e){r(e)})):(console.warn("Scroll Error - No matching column found:",e),r("Scroll Error - No matching column found"))}))},Tabulator.prototype.setLocale=function(e){this.modules.localize.setLocale(e)},Tabulator.prototype.getLocale=function(){return this.modules.localize.getLocale()},Tabulator.prototype.getLang=function(e){return this.modules.localize.getLang(e)},Tabulator.prototype.redraw=function(e){this.columnManager.redraw(e),this.rowManager.redraw(e)},Tabulator.prototype.setHeight=function(e){"classic"!==this.rowManager.renderMode?(this.options.height=isNaN(e)?e:e+"px",this.element.style.height=this.options.height,this.rowManager.setRenderMode(),this.rowManager.redraw()):console.warn("setHeight function is not available in classic render mode")},Tabulator.prototype.setSort=function(e,t){this.modExists("sort",!0)&&(this.modules.sort.setSort(e,t),this.rowManager.sorterRefresh())},Tabulator.prototype.getSorters=function(){if(this.modExists("sort",!0))return this.modules.sort.getSort()},Tabulator.prototype.clearSort=function(){this.modExists("sort",!0)&&(this.modules.sort.clear(),this.rowManager.sorterRefresh())},Tabulator.prototype.setFilter=function(e,t,o,i){this.modExists("filter",!0)&&(this.modules.filter.setFilter(e,t,o,i),this.rowManager.filterRefresh())},Tabulator.prototype.refreshFilter=function(){this.modExists("filter",!0)&&this.rowManager.filterRefresh()},Tabulator.prototype.addFilter=function(e,t,o,i){this.modExists("filter",!0)&&(this.modules.filter.addFilter(e,t,o,i),this.rowManager.filterRefresh())},Tabulator.prototype.getFilters=function(e){if(this.modExists("filter",!0))return this.modules.filter.getFilters(e)},Tabulator.prototype.setHeaderFilterFocus=function(e){if(this.modExists("filter",!0)){var t=this.columnManager.findColumn(e);if(!t)return console.warn("Column Filter Focus Error - No matching column found:",e),!1;this.modules.filter.setHeaderFilterFocus(t)}},Tabulator.prototype.getHeaderFilterValue=function(e){if(this.modExists("filter",!0)){var t=this.columnManager.findColumn(e);if(t)return this.modules.filter.getHeaderFilterValue(t);console.warn("Column Filter Error - No matching column found:",e)}},Tabulator.prototype.setHeaderFilterValue=function(e,t){if(this.modExists("filter",!0)){var o=this.columnManager.findColumn(e);if(!o)return console.warn("Column Filter Error - No matching column found:",e),!1;this.modules.filter.setHeaderFilterValue(o,t)}},Tabulator.prototype.getHeaderFilters=function(){if(this.modExists("filter",!0))return this.modules.filter.getHeaderFilters()},Tabulator.prototype.removeFilter=function(e,t,o){this.modExists("filter",!0)&&(this.modules.filter.removeFilter(e,t,o),this.rowManager.filterRefresh())},Tabulator.prototype.clearFilter=function(e){this.modExists("filter",!0)&&(this.modules.filter.clearFilter(e),this.rowManager.filterRefresh())},Tabulator.prototype.clearHeaderFilter=function(){this.modExists("filter",!0)&&(this.modules.filter.clearHeaderFilter(),this.rowManager.filterRefresh())},Tabulator.prototype.selectRow=function(e){this.modExists("selectRow",!0)&&(!0===e&&(console.warn("passing a boolean to the selectRowselectRow function is deprecated, you should now pass the string 'active'"),e="active"),this.modules.selectRow.selectRows(e))},Tabulator.prototype.deselectRow=function(e){this.modExists("selectRow",!0)&&this.modules.selectRow.deselectRows(e)},Tabulator.prototype.toggleSelectRow=function(e){this.modExists("selectRow",!0)&&this.modules.selectRow.toggleRow(e)},Tabulator.prototype.getSelectedRows=function(){if(this.modExists("selectRow",!0))return this.modules.selectRow.getSelectedRows()},Tabulator.prototype.getSelectedData=function(){if(this.modExists("selectRow",!0))return this.modules.selectRow.getSelectedData()},Tabulator.prototype.getInvalidCells=function(){if(this.modExists("validate",!0))return this.modules.validate.getInvalidCells()},Tabulator.prototype.clearCellValidation=function(e){var t=this;this.modExists("validate",!0)&&(e||(e=this.modules.validate.getInvalidCells()),Array.isArray(e)||(e=[e]),e.forEach((function(e){t.modules.validate.clearValidation(e._getSelf())})))},Tabulator.prototype.validate=function(e){var t=[];return this.rowManager.rows.forEach((function(e){var o=e.validate();!0!==o&&(t=t.concat(o))})),!t.length||t},Tabulator.prototype.setMaxPage=function(e){if(!this.options.pagination||!this.modExists("page"))return!1;this.modules.page.setMaxPage(e)},Tabulator.prototype.setPage=function(e){return this.options.pagination&&this.modExists("page")?this.modules.page.setPage(e):new Promise((function(e,t){t()}))},Tabulator.prototype.setPageToRow=function(e){var t=this;return new Promise((function(o,i){t.options.pagination&&t.modExists("page")&&(e=t.rowManager.findRow(e))?t.modules.page.setPageToRow(e).then((function(){o()})).catch((function(){i()})):i()}))},Tabulator.prototype.setPageSize=function(e){if(!this.options.pagination||!this.modExists("page"))return!1;this.modules.page.setPageSize(e),this.modules.page.setPage(1).then((function(){})).catch((function(){}))},Tabulator.prototype.getPageSize=function(){if(this.options.pagination&&this.modExists("page",!0))return this.modules.page.getPageSize()},Tabulator.prototype.previousPage=function(){if(!this.options.pagination||!this.modExists("page"))return!1;this.modules.page.previousPage()},Tabulator.prototype.nextPage=function(){if(!this.options.pagination||!this.modExists("page"))return!1;this.modules.page.nextPage()},Tabulator.prototype.getPage=function(){return!(!this.options.pagination||!this.modExists("page"))&&this.modules.page.getPage()},Tabulator.prototype.getPageMax=function(){return!(!this.options.pagination||!this.modExists("page"))&&this.modules.page.getPageMax()},Tabulator.prototype.setGroupBy=function(e){if(!this.modExists("groupRows",!0))return!1;this.options.groupBy=e,this.modules.groupRows.initialize(),this.rowManager.refreshActiveData("display"),this.options.persistence&&this.modExists("persistence",!0)&&this.modules.persistence.config.group&&this.modules.persistence.save("group")},Tabulator.prototype.setGroupValues=function(e){if(!this.modExists("groupRows",!0))return!1;this.options.groupValues=e,this.modules.groupRows.initialize(),this.rowManager.refreshActiveData("display"),this.options.persistence&&this.modExists("persistence",!0)&&this.modules.persistence.config.group&&this.modules.persistence.save("group")},Tabulator.prototype.setGroupStartOpen=function(e){if(!this.modExists("groupRows",!0))return!1;this.options.groupStartOpen=e,this.modules.groupRows.initialize(),this.options.groupBy?(this.rowManager.refreshActiveData("group"),this.options.persistence&&this.modExists("persistence",!0)&&this.modules.persistence.config.group&&this.modules.persistence.save("group")):console.warn("Grouping Update - cant refresh view, no groups have been set")},Tabulator.prototype.setGroupHeader=function(e){if(!this.modExists("groupRows",!0))return!1;this.options.groupHeader=e,this.modules.groupRows.initialize(),this.options.groupBy?(this.rowManager.refreshActiveData("group"),this.options.persistence&&this.modExists("persistence",!0)&&this.modules.persistence.config.group&&this.modules.persistence.save("group")):console.warn("Grouping Update - cant refresh view, no groups have been set")},Tabulator.prototype.getGroups=function(e){return!!this.modExists("groupRows",!0)&&this.modules.groupRows.getGroups(!0)},Tabulator.prototype.getGroupedData=function(){if(this.modExists("groupRows",!0))return this.options.groupBy?this.modules.groupRows.getGroupedData():this.getData()},Tabulator.prototype.getEditedCells=function(){if(this.modExists("edit",!0))return this.modules.edit.getEditedCells()},Tabulator.prototype.clearCellEdited=function(e){var t=this;this.modExists("edit",!0)&&(e||(e=this.modules.edit.getEditedCells()),Array.isArray(e)||(e=[e]),e.forEach((function(e){t.modules.edit.clearEdited(e._getSelf())})))},Tabulator.prototype.getCalcResults=function(){return!!this.modExists("columnCalcs",!0)&&this.modules.columnCalcs.getResults()},Tabulator.prototype.recalc=function(){this.modExists("columnCalcs",!0)&&this.modules.columnCalcs.recalcAll(this.rowManager.activeRows)},Tabulator.prototype.navigatePrev=function(){var e=!1;return!(!this.modExists("edit",!0)||!(e=this.modules.edit.currentCell))&&e.nav().prev()},Tabulator.prototype.navigateNext=function(){var e=!1;return!(!this.modExists("edit",!0)||!(e=this.modules.edit.currentCell))&&e.nav().next()},Tabulator.prototype.navigateLeft=function(){var t=!1;return!(!this.modExists("edit",!0)||!(t=this.modules.edit.currentCell))&&(e.preventDefault(),t.nav().left())},Tabulator.prototype.navigateRight=function(){var t=!1;return!(!this.modExists("edit",!0)||!(t=this.modules.edit.currentCell))&&(e.preventDefault(),t.nav().right())},Tabulator.prototype.navigateUp=function(){var t=!1;return!(!this.modExists("edit",!0)||!(t=this.modules.edit.currentCell))&&(e.preventDefault(),t.nav().up())},Tabulator.prototype.navigateDown=function(){var t=!1;return!(!this.modExists("edit",!0)||!(t=this.modules.edit.currentCell))&&(e.preventDefault(),t.nav().down())},Tabulator.prototype.undo=function(){return!(!this.options.history||!this.modExists("history",!0))&&this.modules.history.undo()},Tabulator.prototype.redo=function(){return!(!this.options.history||!this.modExists("history",!0))&&this.modules.history.redo()},Tabulator.prototype.getHistoryUndoSize=function(){return!(!this.options.history||!this.modExists("history",!0))&&this.modules.history.getHistoryUndoSize()},Tabulator.prototype.getHistoryRedoSize=function(){return!(!this.options.history||!this.modExists("history",!0))&&this.modules.history.getHistoryRedoSize()},Tabulator.prototype.clearHistory=function(){return!(!this.options.history||!this.modExists("history",!0))&&this.modules.history.clear()},Tabulator.prototype.download=function(e,t,o,i){this.modExists("download",!0)&&this.modules.download.download(e,t,o,i)},Tabulator.prototype.downloadToTab=function(e,t,o,i){this.modExists("download",!0)&&this.modules.download.download(e,t,o,i,!0)},Tabulator.prototype.tableComms=function(e,t,o,i){this.modules.comms.receive(e,t,o,i)},Tabulator.prototype.moduleBindings={},Tabulator.prototype.extendModule=function(e,t,o){if(Tabulator.prototype.moduleBindings[e]){var i=Tabulator.prototype.moduleBindings[e].prototype[t];if(i)if("object"==(void 0===o?"undefined":_typeof(o)))for(var n in o)i[n]=o[n];else console.warn("Module Error - Invalid value type, it must be an object");else console.warn("Module Error - property does not exist:",t)}else console.warn("Module Error - module does not exist:",e)},Tabulator.prototype.registerModule=function(e,t){Tabulator.prototype.moduleBindings[e]=t},Tabulator.prototype.bindModules=function(){for(var e in this.modules={},Tabulator.prototype.moduleBindings)this.modules[e]=new Tabulator.prototype.moduleBindings[e](this)},Tabulator.prototype.modExists=function(e,t){return!!this.modules[e]||(t&&console.error("Tabulator Module Not Installed: "+e),!1)},Tabulator.prototype.helpers={elVisible:function(e){return!(e.offsetWidth<=0&&e.offsetHeight<=0)},elOffset:function(e){var t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset-document.documentElement.clientTop,left:t.left+window.pageXOffset-document.documentElement.clientLeft}},deepClone:function(e){var t=Object.assign(Array.isArray(e)?[]:{},e);for(var o in e)null!=e[o]&&"object"===_typeof(e[o])&&(e[o]instanceof Date?t[o]=new Date(e[o]):t[o]=this.deepClone(e[o]));return t}},Tabulator.prototype.comms={tables:[],register:function(e){Tabulator.prototype.comms.tables.push(e)},deregister:function(e){var t=Tabulator.prototype.comms.tables.indexOf(e);t>-1&&Tabulator.prototype.comms.tables.splice(t,1)},lookupTable:function(e,t){var o,i,n=[];if("string"==typeof e){if((o=document.querySelectorAll(e)).length)for(var r=0;r0?r.setWidth(n):r.reinitializeWidth()):this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout",!0)&&this.table.modules.responsiveLayout.update()},fitColumns:function(e){var t,o,i=this.table.element.clientWidth,n=0,r=0,s=0,a=[],l=[],u=0,c=0;function d(e){return"string"==typeof e?e.indexOf("%")>-1?i/100*parseInt(e):parseInt(e):e}function h(e,t,o,i){var n=[],r=0,a=0,l=0,u=s,c=0,p=0,m=[];function f(e){return o*(e.column.definition.widthGrow||1)}function g(e){return d(e.width)-o*(e.column.definition.widthShrink||0)}return e.forEach((function(e,r){var s=i?g(e):f(e);e.column.minWidth>=s?n.push(e):e.column.maxWidth&&e.column.maxWidththis.table.rowManager.element.clientHeight&&(i-=this.table.rowManager.element.offsetWidth-this.table.rowManager.element.clientWidth),e.forEach((function(e){var t,o,i;e.visible&&(t=e.definition.width,o=parseInt(e.minWidth),t?(i=d(t),n+=i>o?i:o,e.definition.widthShrink&&(l.push({column:e,width:i>o?i:o}),u+=e.definition.widthShrink)):(a.push({column:e,width:0}),s+=e.definition.widthGrow||1))})),r=i-n,t=Math.floor(r/s);c=h(a,r,t,!1);a.length&&c>0&&(a[a.length-1].width+=+c),a.forEach((function(e){r-=e.width})),(o=Math.abs(c)+r)>0&&u&&(c=h(l,o,Math.floor(o/u),!0)),l.length&&(l[l.length-1].width-=c),a.forEach((function(e){e.column.setWidth(e.width)})),l.forEach((function(e){e.column.setWidth(e.width)}))}},Tabulator.prototype.registerModule("layout",Layout);var Localize=function(e){this.table=e,this.locale="default",this.lang=!1,this.bindings={},this.langList={}};Localize.prototype.initialize=function(){this.langList=Tabulator.prototype.helpers.deepClone(this.langs)},Localize.prototype.setHeaderFilterPlaceholder=function(e){this.langList.default.headerFilters.default=e},Localize.prototype.setHeaderFilterColumnPlaceholder=function(e,t){this.langList.default.headerFilters.columns[e]=t,this.lang&&!this.lang.headerFilters.columns[e]&&(this.lang.headerFilters.columns[e]=t)},Localize.prototype.installLang=function(e,t){this.langList[e]?this._setLangProp(this.langList[e],t):this.langList[e]=t},Localize.prototype._setLangProp=function(e,t){for(var o in t)e[o]&&"object"==_typeof(e[o])?this._setLangProp(e[o],t[o]):e[o]=t[o]},Localize.prototype.setLocale=function(e){var t=this;if(!0===(e=e||"default")&&navigator.language&&(e=navigator.language.toLowerCase()),e&&!t.langList[e]){var o=e.split("-")[0];t.langList[o]?(console.warn("Localization Error - Exact matching locale not found, using closest match: ",e,o),e=o):(console.warn("Localization Error - Matching locale not found, using default: ",e),e="default")}t.locale=e,t.lang=Tabulator.prototype.helpers.deepClone(t.langList.default||{}),"default"!=e&&function e(t,o){for(var i in t)"object"==_typeof(t[i])?(o[i]||(o[i]={}),e(t[i],o[i])):o[i]=t[i]}(t.langList[e],t.lang),t.table.options.localized.call(t.table,t.locale,t.lang),t._executeBindings()},Localize.prototype.getLocale=function(e){return self.locale},Localize.prototype.getLang=function(e){return e?this.langList[e]:this.lang},Localize.prototype.getText=function(e,t){var o=(e=t?e+"|"+t:e).split("|");return this._getLangElement(o,this.locale)||""},Localize.prototype._getLangElement=function(e,t){var o=this.lang;return e.forEach((function(e){var t;o&&(t=o[e],o=void 0!==t&&t)})),o},Localize.prototype.bind=function(e,t){this.bindings[e]||(this.bindings[e]=[]),this.bindings[e].push(t),t(this.getText(e),this.lang)},Localize.prototype._executeBindings=function(){var e=this,t=function(t){e.bindings[t].forEach((function(o){o(e.getText(t),e.lang)}))};for(var o in e.bindings)t(o)},Localize.prototype.langs={default:{groups:{item:"item",items:"items"},columns:{},ajax:{loading:"Loading",error:"Error"},pagination:{page_size:"Page Size",page_title:"Show Page",first:"First",first_title:"First Page",last:"Last",last_title:"Last Page",prev:"Prev",prev_title:"Prev Page",next:"Next",next_title:"Next Page",all:"All"},headerFilters:{default:"filter column...",columns:{}}}},Tabulator.prototype.registerModule("localize",Localize);var Comms=function(e){this.table=e};Comms.prototype.getConnections=function(e){var t=this,o=[];return Tabulator.prototype.comms.lookupTable(e).forEach((function(e){t.table!==e&&o.push(e)})),o},Comms.prototype.send=function(e,t,o,i){var n=this,r=this.getConnections(e);r.forEach((function(e){e.tableComms(n.table.element,t,o,i)})),!r.length&&e&&console.warn("Table Connection Error - No tables matching selector found",e)},Comms.prototype.receive=function(e,t,o,i){if(this.table.modExists(t))return this.table.modules[t].commsReceived(e,o,i);console.warn("Inter-table Comms Error - no such module:",t)},Tabulator.prototype.registerModule("comms",Comms);_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};var Sort=function(e){this.table=e,this.sortList=[],this.changed=!1};Sort.prototype.initializeColumn=function(e,t){var o,i,n=this,r=!1;switch(_typeof(e.definition.sorter)){case"string":n.sorters[e.definition.sorter]?r=n.sorters[e.definition.sorter]:console.warn("Sort Error - No such sorter found: ",e.definition.sorter);break;case"function":r=e.definition.sorter}e.modules.sort={sorter:r,dir:"none",params:e.definition.sorterParams||{},startingDir:e.definition.headerSortStartingDir||"asc",tristate:void 0!==e.definition.headerSortTristate?e.definition.headerSortTristate:this.table.options.headerSortTristate},(void 0===e.definition.headerSort?!1!==this.table.options.headerSort:!1!==e.definition.headerSort)&&((o=e.getElement()).classList.add("tabulator-sortable"),(i=document.createElement("div")).classList.add("tabulator-col-sorter"),"object"==_typeof(this.table.options.headerSortElement)?i.appendChild(this.table.options.headerSortElement):i.innerHTML=this.table.options.headerSortElement,t.appendChild(i),e.modules.sort.element=i,o.addEventListener("click",(function(t){var o="",i=[],r=!1;if(e.modules.sort){if(e.modules.sort.tristate)o="none"==e.modules.sort.dir?e.modules.sort.startingDir:e.modules.sort.dir==e.modules.sort.startingDir?"asc"==e.modules.sort.dir?"desc":"asc":"none";else switch(e.modules.sort.dir){case"asc":o="desc";break;case"desc":o="asc";break;default:o=e.modules.sort.startingDir}n.table.options.columnHeaderSortMulti&&(t.shiftKey||t.ctrlKey)?(r=(i=n.getSort()).findIndex((function(t){return t.field===e.getField()})),r>-1?(i[r].dir=o,r!=i.length-1&&(r=i.splice(r,1)[0],"none"!=o&&i.push(r))):"none"!=o&&i.push({column:e,dir:o}),n.setSort(i)):"none"==o?n.clear():n.setSort(e,o),n.table.rowManager.sorterRefresh(!n.sortList.length)}})))},Sort.prototype.hasChanged=function(){var e=this.changed;return this.changed=!1,e},Sort.prototype.getSort=function(){var e=[];return this.sortList.forEach((function(t){t.column&&e.push({column:t.column.getComponent(),field:t.column.getField(),dir:t.dir})})),e},Sort.prototype.setSort=function(e,t){var o=this,i=[];Array.isArray(e)||(e=[{column:e,dir:t}]),e.forEach((function(e){var t;(t=o.table.columnManager.findColumn(e.column))?(e.column=t,i.push(e),o.changed=!0):console.warn("Sort Warning - Sort field does not exist and is being ignored: ",e.column)})),o.sortList=i,this.table.options.persistence&&this.table.modExists("persistence",!0)&&this.table.modules.persistence.config.sort&&this.table.modules.persistence.save("sort")},Sort.prototype.clear=function(){this.setSort([])},Sort.prototype.findSorter=function(e){var t,o=this.table.rowManager.activeRows[0],i="string";if(o&&(o=o.getData(),e.getField()))switch(void 0===(t=e.getFieldValue(o))?"undefined":_typeof(t)){case"undefined":i="string";break;case"boolean":i="boolean";break;default:isNaN(t)||""===t?t.match(/((^[0-9]+[a-z]+)|(^[a-z]+[0-9]+))+$/i)&&(i="alphanum"):i="number"}return this.sorters[i]},Sort.prototype.sort=function(e){var t=this,o=this.table.options.sortOrderReverse?t.sortList.slice().reverse():t.sortList,i=[],n=[];t.table.options.dataSorting&&t.table.options.dataSorting.call(t.table,t.getSort()),t.clearColumnHeaders(),t.table.options.ajaxSorting?o.forEach((function(e,o){t.setColumnHeader(e.column,e.dir)})):(o.forEach((function(e,o){var n=e.column.modules.sort;e.column&&n&&(n.sorter||(n.sorter=t.findSorter(e.column)),e.params="function"==typeof n.params?n.params(e.column.getComponent(),e.dir):n.params,i.push(e)),t.setColumnHeader(e.column,e.dir)})),i.length&&t._sortItems(e,i)),t.table.options.dataSorted&&(e.forEach((function(e){n.push(e.getComponent())})),t.table.options.dataSorted.call(t.table,t.getSort(),n))},Sort.prototype.clearColumnHeaders=function(){this.table.columnManager.getRealColumns().forEach((function(e){e.modules.sort&&(e.modules.sort.dir="none",e.getElement().setAttribute("aria-sort","none"))}))},Sort.prototype.setColumnHeader=function(e,t){e.modules.sort.dir=t,e.getElement().setAttribute("aria-sort",t)},Sort.prototype._sortItems=function(e,t){var o=this,i=t.length-1;e.sort((function(e,n){for(var r,s=i;s>=0;s--){var a=t[s];if(0!==(r=o._sortRow(e,n,a.column,a.dir,a.params)))break}return r}))},Sort.prototype._sortRow=function(e,t,o,i,n){var r,s,a="asc"==i?e:t,l="asc"==i?t:e;return e=void 0!==(e=o.getFieldValue(a.getData()))?e:"",t=void 0!==(t=o.getFieldValue(l.getData()))?t:"",r=a.getComponent(),s=l.getComponent(),o.modules.sort.sorter.call(this,e,t,r,s,o.getComponent(),i,n)},Sort.prototype.sorters={number:function(e,t,o,i,n,r,s){var a=s.alignEmptyValues,l=s.decimalSeparator,u=s.thousandSeparator,c=0;if(e=String(e),t=String(t),u&&(e=e.split(u).join(""),t=t.split(u).join("")),l&&(e=e.split(l).join("."),t=t.split(l).join(".")),e=parseFloat(e),t=parseFloat(t),isNaN(e))c=isNaN(t)?0:-1;else{if(!isNaN(t))return e-t;c=1}return("top"===a&&"desc"===r||"bottom"===a&&"asc"===r)&&(c*=-1),c},string:function(e,t,o,i,n,r,s){var a,l=s.alignEmptyValues,u=0;if(e){if(t){switch(_typeof(s.locale)){case"boolean":s.locale&&(a=this.table.modules.localize.getLocale());break;case"string":a=s.locale}return String(e).toLowerCase().localeCompare(String(t).toLowerCase(),a)}u=1}else u=t?-1:0;return("top"===l&&"desc"===r||"bottom"===l&&"asc"===r)&&(u*=-1),u},date:function(e,t,o,i,n,r,s){return s.format||(s.format="DD/MM/YYYY"),this.sorters.datetime.call(this,e,t,o,i,n,r,s)},time:function(e,t,o,i,n,r,s){return s.format||(s.format="HH:mm"),this.sorters.datetime.call(this,e,t,o,i,n,r,s)},datetime:function(e,t,o,i,n,r,s){var a=s.format||"DD/MM/YYYY HH:mm:ss",l=s.alignEmptyValues,u=0;if("undefined"!=typeof moment){if(e=moment(e,a),t=moment(t,a),e.isValid()){if(t.isValid())return e-t;u=1}else u=t.isValid()?-1:0;return("top"===l&&"desc"===r||"bottom"===l&&"asc"===r)&&(u*=-1),u}console.error("Sort Error - 'datetime' sorter is dependant on moment.js")},boolean:function(e,t,o,i,n,r,s){return(!0===e||"true"===e||"True"===e||1===e?1:0)-(!0===t||"true"===t||"True"===t||1===t?1:0)},array:function(e,t,o,i,n,r,s){var a=s.type||"length",l=s.alignEmptyValues,u=0;function c(e){switch(a){case"length":return e.length;case"sum":return e.reduce((function(e,t){return e+t}));case"max":return Math.max.apply(null,e);case"min":return Math.min.apply(null,e);case"avg":return e.reduce((function(e,t){return e+t}))/e.length}}if(Array.isArray(e)){if(Array.isArray(t))return(e?c(e):0)-(t?c(t):0);l=1}else l=Array.isArray(t)?-1:0;return("top"===l&&"desc"===r||"bottom"===l&&"asc"===r)&&(u*=-1),u},exists:function(e,t,o,i,n,r,s){return(void 0===e?0:1)-(void 0===t?0:1)},alphanum:function(e,t,o,i,n,r,s){var a,l,u,c,d,h=0,p=/(\d+)|(\D+)/g,m=/\d/,f=s.alignEmptyValues,g=0;if(e||0===e){if(t||0===t){if(isFinite(e)&&isFinite(t))return e-t;if((a=String(e).toLowerCase())===(l=String(t).toLowerCase()))return 0;if(!m.test(a)||!m.test(l))return a>l?1:-1;for(a=a.match(p),l=l.match(p),d=a.length>l.length?l.length:a.length;hc?1:-1;return a.length>l.length}g=1}else g=t||0===t?-1:0;return("top"===f&&"desc"===r||"bottom"===f&&"asc"===r)&&(g*=-1),g}},Tabulator.prototype.registerModule("sort",Sort);_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};var Format=function(e){this.table=e};Format.prototype.initializeColumn=function(e){e.modules.format=this.lookupFormatter(e,""),void 0!==e.definition.formatterPrint&&(e.modules.format.print=this.lookupFormatter(e,"Print")),void 0!==e.definition.formatterClipboard&&(e.modules.format.clipboard=this.lookupFormatter(e,"Clipboard")),void 0!==e.definition.formatterHtmlOutput&&(e.modules.format.htmlOutput=this.lookupFormatter(e,"HtmlOutput"))},Format.prototype.lookupFormatter=function(e,t){var o={params:e.definition["formatter"+t+"Params"]||{}},i=e.definition["formatter"+t];switch(void 0===i?"undefined":_typeof(i)){case"string":"tick"===i&&(i="tickCross",void 0===o.params.crossElement&&(o.params.crossElement=!1),console.warn("DEPRECATION WARNING - the tick formatter has been deprecated, please use the tickCross formatter with the crossElement param set to false")),this.formatters[i]?o.formatter=this.formatters[i]:(console.warn("Formatter Error - No such formatter found: ",i),o.formatter=this.formatters.plaintext);break;case"function":o.formatter=i;break;default:o.formatter=this.formatters.plaintext}return o},Format.prototype.cellRendered=function(e){e.modules.format&&e.modules.format.renderedCallback&&!e.modules.format.rendered&&(e.modules.format.renderedCallback(),e.modules.format.rendered=!0)},Format.prototype.formatValue=function(e){var t=e.getComponent(),o="function"==typeof e.column.modules.format.params?e.column.modules.format.params(t):e.column.modules.format.params;return e.column.modules.format.formatter.call(this,t,o,(function(t){e.modules.format||(e.modules.format={}),e.modules.format.renderedCallback=t,e.modules.format.rendered=!1}))},Format.prototype.formatExportValue=function(e,t){var o,i=e.column.modules.format[t];if(i){return o="function"==typeof i.params?i.params(component):i.params,i.formatter.call(this,e.getComponent(),o,(function(t){e.modules.format||(e.modules.format={}),e.modules.format.renderedCallback=t,e.modules.format.rendered=!1}))}return this.formatValue(e)},Format.prototype.sanitizeHTML=function(e){if(e){var t={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/","`":"`","=":"="};return String(e).replace(/[&<>"'`=\/]/g,(function(e){return t[e]}))}return e},Format.prototype.emptyToSpace=function(e){return null==e||""===e?" ":e},Format.prototype.getFormatter=function(e){switch(void 0===e?"undefined":_typeof(e)){case"string":this.formatters[e]?e=this.formatters[e]:(console.warn("Formatter Error - No such formatter found: ",e),e=this.formatters.plaintext);break;case"function":break;default:e=this.formatters.plaintext}return e},Format.prototype.formatters={plaintext:function(e,t,o){return this.emptyToSpace(this.sanitizeHTML(e.getValue()))},html:function(e,t,o){return e.getValue()},textarea:function(e,t,o){return e.getElement().style.whiteSpace="pre-wrap",this.emptyToSpace(this.sanitizeHTML(e.getValue()))},money:function(e,t,o){var i,n,r,s,a=parseFloat(e.getValue()),l=t.decimal||".",u=t.thousand||",",c=t.symbol||"",d=!!t.symbolAfter,h=void 0!==t.precision?t.precision:2;if(isNaN(a))return this.emptyToSpace(this.sanitizeHTML(e.getValue()));for(i=!1!==h?a.toFixed(h):a,n=(i=String(i).split("."))[0],r=i.length>1?l+i[1]:"",s=/(\d+)(\d{3})/;s.test(n);)n=n.replace(s,"$1"+u+"$2");return d?n+r+c:c+n+r},link:function(e,t,o){var i=e.getValue(),n=t.urlPrefix||"",r=t.download,s=i,a=document.createElement("a");if(t.labelField&&(s=e.getData()[t.labelField]),t.label)switch(_typeof(t.label)){case"string":s=t.label;break;case"function":s=t.label(e)}if(s){if(t.urlField&&(i=e.getData()[t.urlField]),t.url)switch(_typeof(t.url)){case"string":i=t.url;break;case"function":i=t.url(e)}return a.setAttribute("href",n+i),t.target&&a.setAttribute("target",t.target),t.download&&(r="function"==typeof r?r(e):!0===r?"":r,a.setAttribute("download",r)),a.innerHTML=this.emptyToSpace(this.sanitizeHTML(s)),a}return" "},image:function(e,t,o){var i=document.createElement("img"),n=e.getValue();switch(t.urlPrefix&&(n=t.urlPrefix+e.getValue()),t.urlSuffix&&(n+=t.urlSuffix),i.setAttribute("src",n),_typeof(t.height)){case"number":i.style.height=t.height+"px";break;case"string":i.style.height=t.height}switch(_typeof(t.width)){case"number":i.style.width=t.width+"px";break;case"string":i.style.width=t.width}return i.addEventListener("load",(function(){e.getRow().normalizeHeight()})),i},tickCross:function(e,t,o){var i=e.getValue(),n=e.getElement(),r=t.allowEmpty,s=t.allowTruthy,a=void 0!==t.tickElement?t.tickElement:'',l=void 0!==t.crossElement?t.crossElement:'';return s&&i||!0===i||"true"===i||"True"===i||1===i||"1"===i?(n.setAttribute("aria-checked",!0),a||""):!r||"null"!==i&&""!==i&&null!=i?(n.setAttribute("aria-checked",!1),l||""):(n.setAttribute("aria-checked","mixed"),"")},datetime:function(e,t,o){var i=t.inputFormat||"YYYY-MM-DD hh:mm:ss",n=t.outputFormat||"DD/MM/YYYY hh:mm:ss",r=void 0!==t.invalidPlaceholder?t.invalidPlaceholder:"",s=e.getValue(),a=moment(s,i);return a.isValid()?t.timezone?a.tz(t.timezone).format(n):a.format(n):!0===r?s:"function"==typeof r?r(s):r},datetimediff:function(e,t,o){var i=t.inputFormat||"YYYY-MM-DD hh:mm:ss",n=void 0!==t.invalidPlaceholder?t.invalidPlaceholder:"",r=void 0!==t.suffix&&t.suffix,s=void 0!==t.unit?t.unit:void 0,a=void 0!==t.humanize&&t.humanize,l=void 0!==t.date?t.date:moment(),u=e.getValue(),c=moment(u,i);return c.isValid()?a?moment.duration(c.diff(l)).humanize(r):c.diff(l,s)+(r?" "+r:""):!0===n?u:"function"==typeof n?n(u):n},lookup:function(e,t,o){var i=e.getValue();return void 0===t[i]?(console.warn("Missing display value for "+i),i):t[i]},star:function(e,t,o){var i=e.getValue(),n=e.getElement(),r=t&&t.stars?t.stars:5,s=document.createElement("span"),a=document.createElementNS("http://www.w3.org/2000/svg","svg");s.style.verticalAlign="middle",a.setAttribute("width","14"),a.setAttribute("height","14"),a.setAttribute("viewBox","0 0 512 512"),a.setAttribute("xml:space","preserve"),a.style.padding="0 1px",i=i&&!isNaN(i)?parseInt(i):0,i=Math.max(0,Math.min(i,r));for(var l=1;l<=r;l++){var u=a.cloneNode(!0);u.innerHTML=l<=i?'':'',s.appendChild(u)}return n.style.whiteSpace="nowrap",n.style.overflow="hidden",n.style.textOverflow="ellipsis",n.setAttribute("aria-label",i),s},traffic:function(e,t,o){var i,n,r=this.sanitizeHTML(e.getValue())||0,s=document.createElement("span"),a=t&&t.max?t.max:100,l=t&&t.min?t.min:0,u=t&&void 0!==t.color?t.color:["red","orange","green"],c="#666666";if(!isNaN(r)&&void 0!==e.getValue()){switch(s.classList.add("tabulator-traffic-light"),n=parseFloat(r)<=a?parseFloat(r):a,n=parseFloat(n)>=l?parseFloat(n):l,i=(a-l)/100,n=Math.round((n-l)/i),void 0===u?"undefined":_typeof(u)){case"string":c=u;break;case"function":c=u(r);break;case"object":if(Array.isArray(u)){var d=100/u.length,h=Math.floor(n/d);h=Math.min(h,u.length-1),c=u[h=Math.max(h,0)];break}}return s.style.backgroundColor=c,s}},progress:function(e,t,o){var i,n,r,s,a,l=this.sanitizeHTML(e.getValue())||0,u=e.getElement(),c=t&&t.max?t.max:100,d=t&&t.min?t.min:0,h=t&&t.legendAlign?t.legendAlign:"center";switch(n=parseFloat(l)<=c?parseFloat(l):c,n=parseFloat(n)>=d?parseFloat(n):d,i=(c-d)/100,n=Math.round((n-d)/i),_typeof(t.color)){case"string":r=t.color;break;case"function":r=t.color(l);break;case"object":if(Array.isArray(t.color)){var p=100/t.color.length,m=Math.floor(n/p);m=Math.min(m,t.color.length-1),m=Math.max(m,0),r=t.color[m];break}default:r="#2DC214"}switch(_typeof(t.legend)){case"string":s=t.legend;break;case"function":s=t.legend(l);break;case"boolean":s=l;break;default:s=!1}switch(_typeof(t.legendColor)){case"string":a=t.legendColor;break;case"function":a=t.legendColor(l);break;case"object":if(Array.isArray(t.legendColor)){p=100/t.legendColor.length,m=Math.floor(n/p);m=Math.min(m,t.legendColor.length-1),m=Math.max(m,0),a=t.legendColor[m]}break;default:a="#000"}u.style.minWidth="30px",u.style.position="relative",u.setAttribute("aria-label",n);var f=document.createElement("div");if(f.style.display="inline-block",f.style.position="relative",f.style.width=n+"%",f.style.backgroundColor=r,f.style.height="100%",f.setAttribute("data-max",c),f.setAttribute("data-min",d),s){var g=document.createElement("div");g.style.position="absolute",g.style.top="4px",g.style.left=0,g.style.textAlign=h,g.style.width="100%",g.style.color=a,g.innerHTML=s}return o((function(){if(!(e instanceof CellComponent)){var t=document.createElement("div");t.style.position="absolute",t.style.top="4px",t.style.bottom="4px",t.style.left="4px",t.style.right="4px",u.appendChild(t),u=t}u.appendChild(f),s&&u.appendChild(g)})),""},color:function(e,t,o){return e.getElement().style.backgroundColor=this.sanitizeHTML(e.getValue()),""},buttonTick:function(e,t,o){return''},buttonCross:function(e,t,o){return''},rownum:function(e,t,o){return this.table.rowManager.activeRows.indexOf(e.getRow()._getSelf())+1},handle:function(e,t,o){return e.getElement().classList.add("tabulator-row-handle"),"
"},responsiveCollapse:function(e,t,o){var i=document.createElement("div"),n=e.getRow()._row.modules.responsiveLayout;function r(e){var t=n.element;n.open=e,t&&(n.open?(i.classList.add("open"),t.style.display=""):(i.classList.remove("open"),t.style.display="none"))}return i.classList.add("tabulator-responsive-collapse-toggle"),i.innerHTML="+-",e.getElement().classList.add("tabulator-row-handle"),i.addEventListener("click",(function(e){e.stopImmediatePropagation(),r(!n.open)})),r(n.open),i},rowSelection:function(e,t,o){var i=this,n=document.createElement("input");if(n.type="checkbox",this.table.modExists("selectRow",!0))if(n.addEventListener("click",(function(e){e.stopPropagation()})),"function"==typeof e.getRow){var r=e.getRow();r instanceof RowComponent?(n.addEventListener("change",(function(e){r.toggleSelect()})),n.checked=r.isSelected&&r.isSelected(),this.table.modules.selectRow.registerRowSelectCheckbox(r,n)):n=""}else n.addEventListener("change",(function(e){i.table.modules.selectRow.selectedRows.length?i.table.deselectRow():i.table.selectRow(t.rowRange)})),this.table.modules.selectRow.registerHeaderSelectCheckbox(n);return n}},Tabulator.prototype.registerModule("format",Format);var ResizeColumns=function(e){this.table=e,this.startColumn=!1,this.startX=!1,this.startWidth=!1,this.handle=null,this.prevHandle=null};ResizeColumns.prototype.initializeColumn=function(e,t,o){var i=this,n=!1,r=this.table.options.resizableColumns;if("header"===e&&(n="textarea"==t.definition.formatter||t.definition.variableHeight,t.modules.resize={variableHeight:n}),!0===r||r==e){var s=document.createElement("div");s.className="tabulator-col-resize-handle";var a=document.createElement("div");a.className="tabulator-col-resize-handle prev",s.addEventListener("click",(function(e){e.stopPropagation()}));var l=function(e){var o=t.getLastColumn();o&&i._checkResizability(o)&&(i.startColumn=t,i._mouseDown(e,o,s))};s.addEventListener("mousedown",l),s.addEventListener("touchstart",l,{passive:!0}),s.addEventListener("dblclick",(function(e){var o=t.getLastColumn();o&&i._checkResizability(o)&&(e.stopPropagation(),o.reinitializeWidth(!0))})),a.addEventListener("click",(function(e){e.stopPropagation()}));var u=function(e){var o,n,r;(o=t.getFirstColumn())&&(r=(n=i.table.columnManager.findColumnIndex(o))>0&&i.table.columnManager.getColumnByIndex(n-1))&&i._checkResizability(r)&&(i.startColumn=t,i._mouseDown(e,r,a))};a.addEventListener("mousedown",u),a.addEventListener("touchstart",u,{passive:!0}),a.addEventListener("dblclick",(function(e){var o,n,r;(o=t.getFirstColumn())&&(r=(n=i.table.columnManager.findColumnIndex(o))>0&&i.table.columnManager.getColumnByIndex(n-1))&&i._checkResizability(r)&&(e.stopPropagation(),r.reinitializeWidth(!0))})),o.appendChild(s),o.appendChild(a)}},ResizeColumns.prototype._checkResizability=function(e){return void 0!==e.definition.resizable?e.definition.resizable:this.table.options.resizableColumns},ResizeColumns.prototype._mouseDown=function(e,t,o){var i=this;function n(e){i.table.rtl?t.setWidth(i.startWidth-((void 0===e.screenX?e.touches[0].screenX:e.screenX)-i.startX)):t.setWidth(i.startWidth+((void 0===e.screenX?e.touches[0].screenX:e.screenX)-i.startX)),i.table.options.virtualDomHoz&&i.table.vdomHoz.reinitialize(!0),!i.table.browserSlow&&t.modules.resize&&t.modules.resize.variableHeight&&t.checkCellHeights()}function r(e){i.startColumn.modules.edit&&(i.startColumn.modules.edit.blocked=!1),i.table.browserSlow&&t.modules.resize&&t.modules.resize.variableHeight&&t.checkCellHeights(),document.body.removeEventListener("mouseup",r),document.body.removeEventListener("mousemove",n),o.removeEventListener("touchmove",n),o.removeEventListener("touchend",r),i.table.element.classList.remove("tabulator-block-select"),i.table.options.persistence&&i.table.modExists("persistence",!0)&&i.table.modules.persistence.config.columns&&i.table.modules.persistence.save("columns"),i.table.options.columnResized.call(i.table,t.getComponent())}i.table.element.classList.add("tabulator-block-select"),e.stopPropagation(),i.startColumn.modules.edit&&(i.startColumn.modules.edit.blocked=!0),i.startX=void 0===e.screenX?e.touches[0].screenX:e.screenX,i.startWidth=t.getWidth(),document.body.addEventListener("mousemove",n),document.body.addEventListener("mouseup",r),o.addEventListener("touchmove",n,{passive:!0}),o.addEventListener("touchend",r)},Tabulator.prototype.registerModule("resizeColumns",ResizeColumns), +"use strict";window.LH_CURRENT_VERSION="11.5.0";const strings={"en-US":{allLabel:"All",allScriptsDropdownLabel:"All Scripts",coverageColumnName:"Coverage",duplicateModulesLabel:"Duplicate Modules",resourceBytesLabel:"Resource Bytes",tableColumnName:"Name",toggleTableButtonLabel:"Toggle Table",unusedBytesLabel:"Unused Bytes"},en:{allLabel:"All",allScriptsDropdownLabel:"All Scripts",coverageColumnName:"Coverage",duplicateModulesLabel:"Duplicate Modules",resourceBytesLabel:"Resource Bytes",tableColumnName:"Name",toggleTableButtonLabel:"Toggle Table",unusedBytesLabel:"Unused Bytes"},"en-AU":{allLabel:"All",allScriptsDropdownLabel:"All scripts",coverageColumnName:"Coverage",duplicateModulesLabel:"Duplicate modules",resourceBytesLabel:"Resource bytes",tableColumnName:"Name",toggleTableButtonLabel:"Toggle table",unusedBytesLabel:"Unused bytes"},"en-GB":{allLabel:"All",allScriptsDropdownLabel:"All scripts",coverageColumnName:"Coverage",duplicateModulesLabel:"Duplicate modules",resourceBytesLabel:"Resource bytes",tableColumnName:"Name",toggleTableButtonLabel:"Toggle table",unusedBytesLabel:"Unused bytes"},"en-IE":{allLabel:"All",allScriptsDropdownLabel:"All scripts",coverageColumnName:"Coverage",duplicateModulesLabel:"Duplicate modules",resourceBytesLabel:"Resource bytes",tableColumnName:"Name",toggleTableButtonLabel:"Toggle table",unusedBytesLabel:"Unused bytes"},"en-SG":{allLabel:"All",allScriptsDropdownLabel:"All scripts",coverageColumnName:"Coverage",duplicateModulesLabel:"Duplicate modules",resourceBytesLabel:"Resource bytes",tableColumnName:"Name",toggleTableButtonLabel:"Toggle table",unusedBytesLabel:"Unused bytes"},"en-ZA":{allLabel:"All",allScriptsDropdownLabel:"All scripts",coverageColumnName:"Coverage",duplicateModulesLabel:"Duplicate modules",resourceBytesLabel:"Resource bytes",tableColumnName:"Name",toggleTableButtonLabel:"Toggle table",unusedBytesLabel:"Unused bytes"},"en-IN":{allLabel:"All",allScriptsDropdownLabel:"All scripts",coverageColumnName:"Coverage",duplicateModulesLabel:"Duplicate modules",resourceBytesLabel:"Resource bytes",tableColumnName:"Name",toggleTableButtonLabel:"Toggle table",unusedBytesLabel:"Unused bytes"},"ar-XB":{allLabel:"‏‮All‬‏",allScriptsDropdownLabel:"‏‮All‬‏ ‏‮Scripts‬‏",coverageColumnName:"‏‮Coverage‬‏",duplicateModulesLabel:"‏‮Duplicate‬‏ ‏‮Modules‬‏",resourceBytesLabel:"‏‮Resource‬‏ ‏‮Bytes‬‏",tableColumnName:"‏‮Name‬‏",toggleTableButtonLabel:"‏‮Toggle‬‏ ‏‮Table‬‏",unusedBytesLabel:"‏‮Unused‬‏ ‏‮Bytes‬‏"},ar:{allLabel:"الكل",allScriptsDropdownLabel:"جميع النصوص البرمجية",coverageColumnName:"التغطية",duplicateModulesLabel:"الوحدات المكرَّرة",resourceBytesLabel:"حجم الموارد بوحدة البايت",tableColumnName:"الاسم",toggleTableButtonLabel:"تبديل الجدول",unusedBytesLabel:"وحدات بايت غير المستخدمة"},bg:{allLabel:"Всички",allScriptsDropdownLabel:"Всички скриптове",coverageColumnName:"Обхват",duplicateModulesLabel:"Дублиращи се модули",resourceBytesLabel:"Байтове на ресурсите",tableColumnName:"Име",toggleTableButtonLabel:"Превключване на таблицата",unusedBytesLabel:"Неизползвани байтове"},ca:{allLabel:"Tot",allScriptsDropdownLabel:"Tots els scripts",coverageColumnName:"Cobertura",duplicateModulesLabel:"Mòduls duplicats",resourceBytesLabel:"Bytes del recurs",tableColumnName:"Nom",toggleTableButtonLabel:"Commuta la taula",unusedBytesLabel:"Bytes no utilitzats"},cs:{allLabel:"Vše",allScriptsDropdownLabel:"Všechna písma",coverageColumnName:"Pokrytí",duplicateModulesLabel:"Duplicitní moduly",resourceBytesLabel:"Počet bajtů zdroje",tableColumnName:"Název",toggleTableButtonLabel:"Zobrazit nebo skrýt tabulku",unusedBytesLabel:"Nevyužité bajty"},da:{allLabel:"Alle",allScriptsDropdownLabel:"Alle scripts",coverageColumnName:"Dækning",duplicateModulesLabel:"Identiske moduler",resourceBytesLabel:"Bytes i ressourcefil",tableColumnName:"Navn",toggleTableButtonLabel:"Vis/skjul tabel",unusedBytesLabel:"Ubrugte bytes"},de:{allLabel:"Alles",allScriptsDropdownLabel:"Alle Skripts",coverageColumnName:"Abdeckung",duplicateModulesLabel:"Doppelte Module",resourceBytesLabel:"Ressourcengröße in Byte",tableColumnName:"Name",toggleTableButtonLabel:"Tabelle ein- oder ausblenden",unusedBytesLabel:"Nicht verwendete Byte"},el:{allLabel:"Όλα",allScriptsDropdownLabel:"Όλες οι γραφές",coverageColumnName:"Κάλυψη",duplicateModulesLabel:"Διπλότυπες λειτουργικές μονάδες",resourceBytesLabel:"Byte πόρου",tableColumnName:"Όνομα",toggleTableButtonLabel:"Εναλλαγή πίνακα",unusedBytesLabel:"Byte που δεν χρησιμοποιούνται"},"en-XA":{allLabel:"[Åļļ one]",allScriptsDropdownLabel:"[Åļļ Šçŕîþţš one two]",coverageColumnName:"[Çövéŕåĝé one]",duplicateModulesLabel:"[Ðûþļîçåţé Möðûļéš one two three]",resourceBytesLabel:"[Ŕéšöûŕçé Бýţéš one two]",tableColumnName:"[Ñåmé one]",toggleTableButtonLabel:"[Ţöĝĝļé Ţåбļé one two]",unusedBytesLabel:"[Ûñûšéð Бýţéš one two]"},"en-XL":{allLabel:"Âĺl̂",allScriptsDropdownLabel:"Âĺl̂ Śĉŕîṕt̂ś",coverageColumnName:"Ĉóv̂ér̂áĝé",duplicateModulesLabel:"D̂úp̂ĺîćât́ê Ḿôd́ûĺêś",resourceBytesLabel:"R̂éŝóûŕĉé B̂ýt̂éŝ",tableColumnName:"N̂ám̂é",toggleTableButtonLabel:"T̂óĝǵl̂é T̂áb̂ĺê",unusedBytesLabel:"Ûńûśêd́ B̂ýt̂éŝ"},es:{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes del recurso",tableColumnName:"Nombre",toggleTableButtonLabel:"Mostrar/Ocultar tabla",unusedBytesLabel:"Bytes sin usar"},"es-419":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-AR":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-BO":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-BR":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-BZ":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-CL":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-CO":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-CR":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-CU":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-DO":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-EC":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-GT":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-HN":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-MX":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-NI":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-PA":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-PE":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-PR":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-PY":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-SV":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-US":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-UY":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},"es-VE":{allLabel:"Todo",allScriptsDropdownLabel:"Todas las secuencias de comandos",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nombre",toggleTableButtonLabel:"Activar o desactivar tabla",unusedBytesLabel:"Bytes sin usar"},fi:{allLabel:"Kaikki",allScriptsDropdownLabel:"Kaikki skriptit",coverageColumnName:"Kattavuus",duplicateModulesLabel:"Moduulien kaksoiskappaleet",resourceBytesLabel:"Resurssin tavut",tableColumnName:"Nimi",toggleTableButtonLabel:"Näytä/piilota taulukko",unusedBytesLabel:"Käyttämättömät tavut"},fil:{allLabel:"Lahat",allScriptsDropdownLabel:"Lahat ng Script",coverageColumnName:"Sakop",duplicateModulesLabel:"Mga Duplicate na Module",resourceBytesLabel:"Mga Byte ng Resource",tableColumnName:"Pangalan",toggleTableButtonLabel:"I-toggle ang Talahanayan",unusedBytesLabel:"Mga Hindi Nagamit na Byte"},fr:{allLabel:"Tout",allScriptsDropdownLabel:"Tous les scripts",coverageColumnName:"Couverture",duplicateModulesLabel:"Modules en double",resourceBytesLabel:"Octets de la ressource",tableColumnName:"Nom",toggleTableButtonLabel:"Activer/Désactiver le tableau",unusedBytesLabel:"Octets inutilisés"},he:{allLabel:"הכול",allScriptsDropdownLabel:"כל הסקריפטים",coverageColumnName:"כיסוי",duplicateModulesLabel:"מודולים כפולים",resourceBytesLabel:"בייטים בשימוש המשאב",tableColumnName:"שם",toggleTableButtonLabel:"החלפת מצב התצוגה של הטבלה",unusedBytesLabel:"בייטים לא בשימוש"},hi:{allLabel:"सभी",allScriptsDropdownLabel:"सभी स्क्रिप्ट",coverageColumnName:"कवरेज",duplicateModulesLabel:"डुप्लीकेट मॉड्यूल",resourceBytesLabel:"फ़ाइल का साइज़ (बाइट में)",tableColumnName:"नाम",toggleTableButtonLabel:"टेबल को टॉगल करें",unusedBytesLabel:"इस्तेमाल न की गई बाइट की संख्या"},hr:{allLabel:"Sve",allScriptsDropdownLabel:"Sve skripte",coverageColumnName:"Pokrivenost",duplicateModulesLabel:"Duplicirani moduli",resourceBytesLabel:"Bajtovi resursa",tableColumnName:"Naziv",toggleTableButtonLabel:"Prikaži/sakrij tablicu",unusedBytesLabel:"Neiskorišteni bajtovi"},hu:{allLabel:"Összes",allScriptsDropdownLabel:"Minden szkript",coverageColumnName:"Lefedettség",duplicateModulesLabel:"Ismétlődő modulok",resourceBytesLabel:"Forrásfájl mérete bájtokban",tableColumnName:"Név",toggleTableButtonLabel:"Táblázat elrejtése/megjelenítése",unusedBytesLabel:"Fel nem használt bájtok"},gsw:{allLabel:"Alles",allScriptsDropdownLabel:"Alle Skripts",coverageColumnName:"Abdeckung",duplicateModulesLabel:"Doppelte Module",resourceBytesLabel:"Ressourcengröße in Byte",tableColumnName:"Name",toggleTableButtonLabel:"Tabelle ein- oder ausblenden",unusedBytesLabel:"Nicht verwendete Byte"},id:{allLabel:"Semua",allScriptsDropdownLabel:"Semua Skrip",coverageColumnName:"Cakupan",duplicateModulesLabel:"Modul Duplikat",resourceBytesLabel:"Byte Resource",tableColumnName:"Nama",toggleTableButtonLabel:"Tampilkan/Sembunyikan Tabel",unusedBytesLabel:"Byte yang Tidak Digunakan"},in:{allLabel:"Semua",allScriptsDropdownLabel:"Semua Skrip",coverageColumnName:"Cakupan",duplicateModulesLabel:"Modul Duplikat",resourceBytesLabel:"Byte Resource",tableColumnName:"Nama",toggleTableButtonLabel:"Tampilkan/Sembunyikan Tabel",unusedBytesLabel:"Byte yang Tidak Digunakan"},it:{allLabel:"Tutto",allScriptsDropdownLabel:"Tutti gli script",coverageColumnName:"Copertura",duplicateModulesLabel:"Moduli duplicati",resourceBytesLabel:"Byte risorsa",tableColumnName:"Nome",toggleTableButtonLabel:"Mostra/nascondi tabella",unusedBytesLabel:"Byte non utilizzati"},iw:{allLabel:"הכול",allScriptsDropdownLabel:"כל הסקריפטים",coverageColumnName:"כיסוי",duplicateModulesLabel:"מודולים כפולים",resourceBytesLabel:"בייטים בשימוש המשאב",tableColumnName:"שם",toggleTableButtonLabel:"החלפת מצב התצוגה של הטבלה",unusedBytesLabel:"בייטים לא בשימוש"},ja:{allLabel:"すべて",allScriptsDropdownLabel:"すべてのスクリプト",coverageColumnName:"カバレッジ",duplicateModulesLabel:"重複モジュール",resourceBytesLabel:"リソースのサイズ(バイト)",tableColumnName:"名前",toggleTableButtonLabel:"表を切り替える",unusedBytesLabel:"使用していないバイト"},ko:{allLabel:"전체",allScriptsDropdownLabel:"모든 스크립트",coverageColumnName:"범위",duplicateModulesLabel:"중복 모듈",resourceBytesLabel:"리소스 바이트",tableColumnName:"이름",toggleTableButtonLabel:"표 전환",unusedBytesLabel:"사용하지 않은 바이트"},lt:{allLabel:"Viskas",allScriptsDropdownLabel:"Visi scenarijai",coverageColumnName:"Aprėptis",duplicateModulesLabel:"Tikslios modulių kopijos",resourceBytesLabel:"Šaltinių baitai",tableColumnName:"Pavadinimas",toggleTableButtonLabel:"Perjungti lentelę",unusedBytesLabel:"Nenaudojami baitai"},lv:{allLabel:"Visi",allScriptsDropdownLabel:"Visi skripti",coverageColumnName:"Tvērums",duplicateModulesLabel:"Dublēti moduļi",resourceBytesLabel:"Faila lielums baitos",tableColumnName:"Nosaukums",toggleTableButtonLabel:"Pārslēgt tabulu",unusedBytesLabel:"Neizmantotais apjoms baitos"},mo:{allLabel:"Toate",allScriptsDropdownLabel:"Toate scripturile",coverageColumnName:"Acoperire",duplicateModulesLabel:"Module dublate",resourceBytesLabel:"Byți resursă",tableColumnName:"Nume",toggleTableButtonLabel:"Activează / dezactivează tabelul",unusedBytesLabel:"Byți nefolosiți"},nl:{allLabel:"Alle",allScriptsDropdownLabel:"Alle scripts",coverageColumnName:"Dekking",duplicateModulesLabel:"Dubbele modules",resourceBytesLabel:"Resourcebytes",tableColumnName:"Naam",toggleTableButtonLabel:"Tabel schakelen",unusedBytesLabel:"Ongebruikte bytes"},nb:{allLabel:"Alt",allScriptsDropdownLabel:"Alle skript",coverageColumnName:"Dekning",duplicateModulesLabel:"Duplikatmoduler",resourceBytesLabel:"Ressursstørrelse i byte",tableColumnName:"Navn",toggleTableButtonLabel:"Slå av/på tabell",unusedBytesLabel:"Ubrukte byte"},no:{allLabel:"Alt",allScriptsDropdownLabel:"Alle skript",coverageColumnName:"Dekning",duplicateModulesLabel:"Duplikatmoduler",resourceBytesLabel:"Ressursstørrelse i byte",tableColumnName:"Navn",toggleTableButtonLabel:"Slå av/på tabell",unusedBytesLabel:"Ubrukte byte"},pl:{allLabel:"Wszystko",allScriptsDropdownLabel:"Wszystkie skrypty",coverageColumnName:"Pokrycie",duplicateModulesLabel:"Zduplikowane moduły",resourceBytesLabel:"Rozmiar zasobu (w bajtach)",tableColumnName:"Nazwa",toggleTableButtonLabel:"Przełącz tabelę",unusedBytesLabel:"Nieużywane bajty"},pt:{allLabel:"Tudo",allScriptsDropdownLabel:"Todos os scripts",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nome",toggleTableButtonLabel:"Alternar tabela",unusedBytesLabel:"Bytes não usados"},"pt-PT":{allLabel:"Tudo",allScriptsDropdownLabel:"Todos os scripts",coverageColumnName:"Cobertura",duplicateModulesLabel:"Módulos duplicados",resourceBytesLabel:"Bytes de recursos",tableColumnName:"Nome",toggleTableButtonLabel:"Ativar/desativar tabela",unusedBytesLabel:"Bytes não utilizados"},ro:{allLabel:"Toate",allScriptsDropdownLabel:"Toate scripturile",coverageColumnName:"Acoperire",duplicateModulesLabel:"Module dublate",resourceBytesLabel:"Byți resursă",tableColumnName:"Nume",toggleTableButtonLabel:"Activează / dezactivează tabelul",unusedBytesLabel:"Byți nefolosiți"},ru:{allLabel:"Все",allScriptsDropdownLabel:"Все скрипты",coverageColumnName:"Доля использования",duplicateModulesLabel:"Повторяющиеся модули",resourceBytesLabel:"Размер в байтах",tableColumnName:"Название",toggleTableButtonLabel:"Показать/скрыть таблицу",unusedBytesLabel:"Неиспользуемые байты"},sk:{allLabel:"Všetko",allScriptsDropdownLabel:"Všetky skripty",coverageColumnName:"Pokrytie",duplicateModulesLabel:"Duplikovať moduly",resourceBytesLabel:"Počet bajtov zdroja",tableColumnName:"Názov",toggleTableButtonLabel:"Prepnúť tabuľku",unusedBytesLabel:"Nepoužité bajty"},sl:{allLabel:"Vse",allScriptsDropdownLabel:"Vsi skripti",coverageColumnName:"Pokritost",duplicateModulesLabel:"Podvojeni moduli",resourceBytesLabel:"Bajti sredstva",tableColumnName:"Ime",toggleTableButtonLabel:"Preklop tabele",unusedBytesLabel:"Neuporabljeni bajti"},sr:{allLabel:"Све",allScriptsDropdownLabel:"Све скрипте",coverageColumnName:"Покривеност",duplicateModulesLabel:"Дуплирани модули",resourceBytesLabel:"Бајтови ресурса",tableColumnName:"Назив",toggleTableButtonLabel:"Укључи/искључи табелу",unusedBytesLabel:"Неискоришћени бајтови"},"sr-Latn":{allLabel:"Sve",allScriptsDropdownLabel:"Sve skripte",coverageColumnName:"Pokrivenost",duplicateModulesLabel:"Duplirani moduli",resourceBytesLabel:"Bajtovi resursa",tableColumnName:"Naziv",toggleTableButtonLabel:"Uključi/isključi tabelu",unusedBytesLabel:"Neiskorišćeni bajtovi"},sv:{allLabel:"Alla",allScriptsDropdownLabel:"Alla skript",coverageColumnName:"Täckning",duplicateModulesLabel:"Moduldubbletter",resourceBytesLabel:"Resursstorlek i byte",tableColumnName:"Namn",toggleTableButtonLabel:"Aktivera och inaktivera tabell",unusedBytesLabel:"Byte som inte används"},ta:{allLabel:"எல்லாம்",allScriptsDropdownLabel:"எல்லா ஸ்கிரிப்ட்டுகளும்",coverageColumnName:"கவரேஜ்",duplicateModulesLabel:"நகல் மாடியூல்கள்",resourceBytesLabel:"ஃபைலின் அளவு (பைட்டுகள்)",tableColumnName:"பெயர்",toggleTableButtonLabel:"டேபிளைக் காட்டு/மறை",unusedBytesLabel:"பயன்படுத்தப்படாத பைட்டுகள்"},te:{allLabel:"అన్నీ",allScriptsDropdownLabel:"అన్ని స్క్రిప్ట్‌లు",coverageColumnName:"కవరేజీ",duplicateModulesLabel:"డూప్లికేట్ మాడ్యూల్‌లు",resourceBytesLabel:"రిసోర్స్ బైట్‌లు",tableColumnName:"పేరు",toggleTableButtonLabel:"టోగుల్ టేబుల్",unusedBytesLabel:"వినియోగించని బైట్‌లు"},th:{allLabel:"ทั้งหมด",allScriptsDropdownLabel:"สคริปต์ทั้งหมด",coverageColumnName:"การครอบคลุม",duplicateModulesLabel:"โมดูลที่ซ้ำกัน",resourceBytesLabel:"ขนาดไฟล์ทรัพยากร (ไบต์)",tableColumnName:"ชื่อ",toggleTableButtonLabel:"ซ่อน/แสดงตาราง",unusedBytesLabel:"ไบต์ที่ไม่ได้ใช้"},tl:{allLabel:"Lahat",allScriptsDropdownLabel:"Lahat ng Script",coverageColumnName:"Sakop",duplicateModulesLabel:"Mga Duplicate na Module",resourceBytesLabel:"Mga Byte ng Resource",tableColumnName:"Pangalan",toggleTableButtonLabel:"I-toggle ang Talahanayan",unusedBytesLabel:"Mga Hindi Nagamit na Byte"},tr:{allLabel:"Tümü",allScriptsDropdownLabel:"Tüm Alfabeler",coverageColumnName:"Kapsam",duplicateModulesLabel:"Yinelenen Modüller",resourceBytesLabel:"Kaynak Baytları",tableColumnName:"Ad",toggleTableButtonLabel:"Tabloyu Aç/Kapat",unusedBytesLabel:"Kullanılmayan Baytlar"},uk:{allLabel:"Усе",allScriptsDropdownLabel:"Усі скрипти",coverageColumnName:"Дані про використання",duplicateModulesLabel:"Задубльовані модулі",resourceBytesLabel:"Розмір ресурсу в байтах",tableColumnName:"Назва",toggleTableButtonLabel:"Показати або сховати таблицю",unusedBytesLabel:"Невикористані байти"},vi:{allLabel:"Tất cả",allScriptsDropdownLabel:"Tất cả tập lệnh",coverageColumnName:"Độ bao phủ",duplicateModulesLabel:"Mô-đun trùng lặp",resourceBytesLabel:"Số byte tài nguyên",tableColumnName:"Tên",toggleTableButtonLabel:"Ẩn/hiện bảng",unusedBytesLabel:"Số byte chưa dùng đến"},zh:{allLabel:"全部",allScriptsDropdownLabel:"所有脚本",coverageColumnName:"覆盖率",duplicateModulesLabel:"重复的模块",resourceBytesLabel:"资源字节数",tableColumnName:"名称",toggleTableButtonLabel:"显示/隐藏表格",unusedBytesLabel:"未使用的字节数"},"zh-HK":{allLabel:"所有",allScriptsDropdownLabel:"所有指令碼",coverageColumnName:"覆蓋率",duplicateModulesLabel:"重複的模組",resourceBytesLabel:"資源字節",tableColumnName:"名稱",toggleTableButtonLabel:"顯示/隱藏表格",unusedBytesLabel:"未使用的字節"},"zh-TW":{allLabel:"全部",allScriptsDropdownLabel:"所有指令碼",coverageColumnName:"涵蓋率",duplicateModulesLabel:"重複模組",resourceBytesLabel:"資源位元組",tableColumnName:"名稱",toggleTableButtonLabel:"顯示/隱藏表格",unusedBytesLabel:"未使用的位元組"}};!function(){function e(){return o||(o=new Promise((function(e,t){var o=indexedDB.open("keyval-store",1);o.onerror=function(){t(o.error)},o.onupgradeneeded=function(){o.result.createObjectStore("keyval")},o.onsuccess=function(){e(o.result)}}))),o}function t(t,o){return e().then((function(e){return new Promise((function(i,n){var r=e.transaction("keyval",t);r.oncomplete=function(){i()},r.onerror=function(){n(r.error)},o(r.objectStore("keyval"))}))}))}var o,i={get:function(e){var o;return t("readonly",(function(t){o=t.get(e)})).then((function(){return o.result}))},set:function(e,o){return t("readwrite",(function(t){t.put(o,e)}))},delete:function(e){return t("readwrite",(function(t){t.delete(e)}))},clear:function(){return t("readwrite",(function(e){e.clear()}))},keys:function(){var e=[];return t("readonly",(function(t){(t.openKeyCursor||t.openCursor).call(t).onsuccess=function(){this.result&&(e.push(this.result.key),this.result.continue())}})).then((function(){return e}))}};"undefined"!=typeof module&&module.exports?module.exports=i:self.idbKeyval=i}(),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).EventTargetShim={})}(this,(function(e){function t(e){return(t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function i(e,t){for(var o=0;oe.length)&&(t=e.length);for(var o=0,i=new Array(t);o2?o-2:0),n=2;n1&&void 0!==arguments[1]&&arguments[1],o=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=V(this);i.dispatchFlag?k.warn():U.set(this,a(a({},i),{},{type:String(e),bubbles:Boolean(t),cancelable:Boolean(o),target:null,currentTarget:null,stopPropagationFlag:!1,stopImmediatePropagationFlag:!1,canceledFlag:!1}))}},{key:"type",get:function(){return V(this).type}},{key:"target",get:function(){return V(this).target}},{key:"srcElement",get:function(){return V(this).target}},{key:"currentTarget",get:function(){return V(this).currentTarget}},{key:"NONE",get:function(){return z}},{key:"CAPTURING_PHASE",get:function(){return H}},{key:"AT_TARGET",get:function(){return F}},{key:"BUBBLING_PHASE",get:function(){return j}},{key:"eventPhase",get:function(){return V(this).dispatchFlag?2:0}},{key:"cancelBubble",get:function(){return V(this).stopPropagationFlag},set:function(e){e?V(this).stopPropagationFlag=!0:D.warn()}},{key:"bubbles",get:function(){return V(this).bubbles}},{key:"cancelable",get:function(){return V(this).cancelable}},{key:"returnValue",get:function(){return!V(this).canceledFlag},set:function(e){e?x.warn():W(V(this))}},{key:"defaultPrevented",get:function(){return V(this).canceledFlag}},{key:"composed",get:function(){return V(this).composed}},{key:"isTrusted",get:function(){return!1}},{key:"timeStamp",get:function(){return V(this).timeStamp}}]),e}(),z=0,H=1,F=2,j=3,U=new WeakMap;function V(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"this",o=U.get(e);return C(null!=o,"'%s' must be an object that Event constructor created, but got another one: %o",t,e),o}function W(e){e.inPassiveListenerFlag?I.warn():e.cancelable?e.canceledFlag=!0:S.warn()}Object.defineProperty(P,"NONE",{enumerable:!0}),Object.defineProperty(P,"CAPTURING_PHASE",{enumerable:!0}),Object.defineProperty(P,"AT_TARGET",{enumerable:!0}),Object.defineProperty(P,"BUBBLING_PHASE",{enumerable:!0});for(var G,$=Object.getOwnPropertyNames(P.prototype),q=0;q<$.length;++q)"constructor"!==$[q]&&Object.defineProperty(P.prototype,$[q],{enumerable:!0});void 0!==L&&void 0!==L.Event&&Object.setPrototypeOf(P.prototype,L.Event.prototype);var K={INDEX_SIZE_ERR:1,DOMSTRING_SIZE_ERR:2,HIERARCHY_REQUEST_ERR:3,WRONG_DOCUMENT_ERR:4,INVALID_CHARACTER_ERR:5,NO_DATA_ALLOWED_ERR:6,NO_MODIFICATION_ALLOWED_ERR:7,NOT_FOUND_ERR:8,NOT_SUPPORTED_ERR:9,INUSE_ATTRIBUTE_ERR:10,INVALID_STATE_ERR:11,SYNTAX_ERR:12,INVALID_MODIFICATION_ERR:13,NAMESPACE_ERR:14,INVALID_ACCESS_ERR:15,VALIDATION_ERR:16,TYPE_MISMATCH_ERR:17,SECURITY_ERR:18,NETWORK_ERR:19,ABORT_ERR:20,URL_MISMATCH_ERR:21,QUOTA_EXCEEDED_ERR:22,TIMEOUT_ERR:23,INVALID_NODE_TYPE_ERR:24,DATA_CLONE_ERR:25};function Z(e){for(var t=Object.keys(K),o=function(o){var i=t[o],n=K[i];Object.defineProperty(e,i,{get:function(){return n},configurable:!0,enumerable:!0})},i=0;i2&&void 0!==arguments[2]&&arguments[2],i=e.listeners[t];return function(e){e.flags|=8}(i),i.signal&&i.signal.removeEventListener("abort",i.signalListener),e.cow&&!o?(e.cow=!1,e.listeners=e.listeners.filter((function(e,o){return o!==t})),!1):(e.listeners.splice(t,1),!0)}function de(e,t){var o;return null!==(o=e[t])&&void 0!==o?o:e[t]={attrCallback:void 0,attrListener:void 0,cow:!1,listeners:[]}}Q.set(Object.prototype,J),void 0!==L&&void 0!==L.Event&&Q.set(L.Event.prototype,J);var he=function(){function e(){o(this,e),pe.set(this,Object.create(null))}return n(e,[{key:"addEventListener",value:function(e,o,i){var n=me(this),r=function(e,o,i){var n;return fe(o),"object"===t(i)&&null!==i?{type:String(e),callback:null!=o?o:void 0,capture:Boolean(i.capture),passive:Boolean(i.passive),once:Boolean(i.once),signal:null!==(n=i.signal)&&void 0!==n?n:void 0}:{type:String(e),callback:null!=o?o:void 0,capture:Boolean(i),passive:!1,once:!1,signal:void 0}}(e,o,i),s=r.callback,a=r.capture,l=r.once,u=r.passive,c=r.signal,d=r.type;if(null!=s&&!(null==c?void 0:c.aborted)){var h=de(n,d),p=ae(h,s,a);-1===p?le(h,s,a,u,l,c):function(e,t,o,i){N.warn(oe(e)?"capture":"bubble",e.callback),ie(e)!==t&&A.warn("passive"),ne(e)!==o&&A.warn("once"),e.signal!==i&&A.warn("signal")}(h.listeners[p],u,l,c)}}},{key:"removeEventListener",value:function(e,o,i){var n=me(this),r=function(e,o,i){return fe(o),"object"===t(i)&&null!==i?{type:String(e),callback:null!=o?o:void 0,capture:Boolean(i.capture)}:{type:String(e),callback:null!=o?o:void 0,capture:Boolean(i)}}(e,o,i),s=r.callback,a=r.capture,l=n[r.type];null!=s&&l&&ue(l,s,a)}},{key:"dispatchEvent",value:function(e){var t=me(this)[String(e.type)];if(null==t)return!0;var i,r=e instanceof P?e:J.wrap(e),s=V(r,"event");if(s.dispatchFlag)throw i="This event has been in dispatching.",L.DOMException?new L.DOMException(i,"InvalidStateError"):(null==G&&(G=function(e){l(i,e);var t=f(i);function i(e){var n;return o(this,i),n=t.call(this,e),Error.captureStackTrace&&Error.captureStackTrace(m(n),i),n}return n(i,[{key:"code",get:function(){return 11}},{key:"name",get:function(){return"InvalidStateError"}}]),i}(p(Error)),Object.defineProperties(G.prototype,{code:{enumerable:!0},name:{enumerable:!0}}),Z(G),Z(G.prototype)),new G(i));if(s.dispatchFlag=!0,s.target=s.currentTarget=this,!s.stopPropagationFlag){var a=t.cow,u=t.listeners;t.cow=!0;for(var c=0;c1&&void 0!==arguments[1]?arguments[1]:"this",o=pe.get(e);return C(null!=o,"'%s' must be an object that EventTarget constructor created, but got another one: %o",t,e),o}function fe(e){if("function"!=typeof e&&("object"!==t(e)||null===e||"function"!=typeof e.handleEvent)){if(null!=e&&"object"!==t(e))throw new TypeError(E(O.message,[e]));O.warn(e)}}for(var ge=Object.getOwnPropertyNames(he.prototype),be=0;benull),caption:e.caption||(e=>e.id||""),showNode:e.showNode||((e,o,i)=>o>20&&i>=t.padding[0]),showChildren:e.showChildren||((e,t,o)=>t>40&&o>40)};return t}(t)}ensureDOM(e){if(e.dom)return e.dom;const i=document.createElement("div");if(i.className=o,i.setAttribute("role","treeitem"),i.tabIndex=-1,this.options.caption){const o=document.createElement("div");o.className=t+"caption",o.textContent=this.options.caption(e),i.appendChild(o)}return e.dom=i,this.options.applyMutations(e),i}selectSpan(e,t,o){let i=e[o].size,n=i,r=0,s=0,a=o;for(;an&&(n=o);const l=r+o,u=Math.max(n*t*t/(l*l),l*l/(i*t*t));if(s&&u>s)break;s=u,r=l}return{end:a,sum:r}}layoutChildren(e,t,o,i){const n=e.size,r=e.children;if(!r)return;let a=-1,l=-1,u=o-1,c=i-1;const d=this.options.spacing,h=this.options.padding;l+=h[0],h[1]&&(u-=h[1]+1),c-=h[2],a+=h[3];let p=0;if(this.options.showChildren(e,u-a,c-l)){const o=Math.sqrt(n/((u-a)*(c-l)));var m=a,f=l;e:for(let i=0;i{let t=e.target;for(;!i(t);)if(t=t.parentElement,!t)return;let o=r(t);this.zoom(o)},t.onkeydown=e=>{if(!(e.target instanceof HTMLElement))return;let o;switch(e.key){case"Enter":const i=r(e.target);return void this.zoom(i);case"ArrowUp":if(o=e.target.parentElement,o===t.parentElement)return;break;case"ArrowDown":o=e.target.querySelector(".webtreemap-node");break;case"ArrowLeft":o=e.target.previousElementSibling;break;case"ArrowRight":o=e.target.nextElementSibling}if(!o)return;if(!o.matches(".webtreemap-node"))return;const i=Array.from(t.querySelectorAll('*[tabindex="0"]'));for(const e of i)e.tabIndex=-1;e.preventDefault(),o.tabIndex=0,o.focus()},e.appendChild(t),this.layout(this.node,e),this.associateCaptionWithLabelledBy(t),t.tabIndex=0,t.setAttribute("role","tree")}layout(e,t){const o=t.offsetWidth,i=t.offsetHeight;e.dom.style.width=`${o}px`,e.dom.style.height=`${i}px`,this.layoutChildren(this.node,0,o,i)}zoom(e){let t=this.node;const[o,i,n,r]=this.options.padding;let a=t.dom.offsetWidth,l=t.dom.offsetHeight;for(const u of e){if(a-=r+i,l-=o+n,!t.children)throw new Error("bad address");for(const e of t.children)e.dom&&(e.dom.style.zIndex="0");t=t.children[u];const e=t.dom.style;e.zIndex="1",e.left=s(r-1),e.width=s(a),e.top=s(o-1),e.height=s(l)}this.layoutChildren(t,0,a,l)}associateCaptionWithLabelledBy(e){const t="_wtm-cap-"+r(e).join("-");e.firstElementChild.id=t,e.setAttribute("aria-labelledby",t)}}return e.TreeMap=a,e.flatten=function e(t,o=((e,t)=>`${e}/${t}`)){if(t.children){for(const i of t.children)e(i,o);if(1===t.children.length){const e=t.children[0];t.id+="/"+e.id,t.children=e.children}}},e.getAddress=r,e.isDOMNode=i,e.render=function(e,t,o){new a(t,o).render(e)},e.rollup=function e(t){if(!t.children)return;let o=0;for(const i of t.children)e(i),o+=i.size;o>t.size&&(t.size=o)},e.sort=function e(t){if(t.children){for(const o of t.children)e(o);t.children.sort(((e,t)=>t.size-e.size))}},e.treeify=function(e){const t={size:0};for(const[o,i]of e){const e=o.replace(/\/$/,"").split("/");let n=t;for(;e.length>0;){const t=e.shift();n.children||(n.children=[]);let r=n.children.find((e=>e.id===t));if(r||(r={id:t,size:0},n.children.push(r)),0===e.length){if(0!==r.size)throw new Error(`duplicate path ${o} ${r.size}`);r.size=i}n=r}}return t},e}({}),_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};Array.prototype.findIndex||Object.defineProperty(Array.prototype,"findIndex",{value:function(e){if(null==this)throw new TypeError('"this" is null or not defined');var t=Object(this),o=t.length>>>0;if("function"!=typeof e)throw new TypeError("predicate must be a function");for(var i=arguments[1],n=0;n>>0;if("function"!=typeof e)throw new TypeError("predicate must be a function");for(var i=arguments[1],n=0;n>>0;if(0===i)return!1;var n=0|t,r=Math.max(n>=0?n:i-Math.abs(n),0);function s(e,t){return e===t||"number"==typeof e&&"number"==typeof t&&isNaN(e)&&isNaN(t)}for(;ro?(t=e-o,this.element.style.marginLeft=-t+"px"):this.element.style.marginLeft=0,this.scrollLeft=e,this.table.modExists("frozenColumns")&&this.table.modules.frozenColumns.scrollHorizontal()},ColumnManager.prototype.generateColumnsFromRowData=function(e){var t,o,i=[],n=this.table.options.autoColumnsDefinitions;if(e&&e.length){for(var r in t=e[0]){var s={field:r,title:r},a=t[r];switch(void 0===a?"undefined":_typeof(a)){case"undefined":o="string";break;case"boolean":o="boolean";break;case"object":o=Array.isArray(a)?"array":"string";break;default:o=isNaN(a)||""===a?a.match(/((^[0-9]+[a-z]+)|(^[a-z]+[0-9]+))+$/i)?"alphanum":"string":"number"}s.sorter=o,i.push(s)}if(n)switch(void 0===n?"undefined":_typeof(n)){case"function":this.table.options.columns=n.call(this.table,i);break;case"object":Array.isArray(n)?i.forEach((function(e){var t=n.find((function(t){return t.field===e.field}));t&&Object.assign(e,t)})):i.forEach((function(e){n[e.field]&&Object.assign(e,n[e.field])})),this.table.options.columns=i}else this.table.options.columns=i;this.setColumns(this.table.options.columns)}},ColumnManager.prototype.setColumns=function(e,t){for(var o=this;o.headersElement.firstChild;)o.headersElement.removeChild(o.headersElement.firstChild);o.columns=[],o.columnsByIndex=[],o.columnsByField={},o.table.modExists("frozenColumns")&&o.table.modules.frozenColumns.reset(),e.forEach((function(e,t){o._addColumn(e)})),o._reIndexColumns(),o.table.options.responsiveLayout&&o.table.modExists("responsiveLayout",!0)&&o.table.modules.responsiveLayout.initialize(),this.table.options.virtualDomHoz&&this.table.vdomHoz.reinitialize(!1,!0),o.redraw(!0)},ColumnManager.prototype._addColumn=function(e,t,o){var i=new Column(e,this),n=i.getElement(),r=o?this.findColumnIndex(o):o;if(o&&r>-1){var s=this.columns.indexOf(o.getTopColumn()),a=o.getElement();t?(this.columns.splice(s,0,i),a.parentNode.insertBefore(n,a)):(this.columns.splice(s+1,0,i),a.parentNode.insertBefore(n,a.nextSibling))}else t?(this.columns.unshift(i),this.headersElement.insertBefore(i.getElement(),this.headersElement.firstChild)):(this.columns.push(i),this.headersElement.appendChild(i.getElement())),i.columnRendered();return i},ColumnManager.prototype.registerColumnField=function(e){e.definition.field&&(this.columnsByField[e.definition.field]=e)},ColumnManager.prototype.registerColumnPosition=function(e){this.columnsByIndex.push(e)},ColumnManager.prototype._reIndexColumns=function(){this.columnsByIndex=[],this.columns.forEach((function(e){e.reRegisterPosition()}))},ColumnManager.prototype._verticalAlignHeaders=function(){var e=this,t=0;e.columns.forEach((function(e){var o;e.clearVerticalAlign(),(o=e.getHeight())>t&&(t=o)})),e.columns.forEach((function(o){o.verticalAlign(e.table.options.columnHeaderVertAlign,t)})),e.rowManager.adjustTableSize()},ColumnManager.prototype.findColumn=function(e){return"object"!=(void 0===e?"undefined":_typeof(e))?this.columnsByField[e]||!1:e instanceof Column?e:e instanceof ColumnComponent?e._getSelf()||!1:"undefined"!=typeof HTMLElement&&e instanceof HTMLElement&&this.columns.find((function(t){return t.element===e}))||!1},ColumnManager.prototype.getColumnByField=function(e){return this.columnsByField[e]},ColumnManager.prototype.getColumnsByFieldRoot=function(e){var t=this,o=[];return Object.keys(this.columnsByField).forEach((function(i){i.split(".")[0]===e&&o.push(t.columnsByField[i])})),o},ColumnManager.prototype.getColumnByIndex=function(e){return this.columnsByIndex[e]},ColumnManager.prototype.getFirstVisibileColumn=function(e){return(e=this.columnsByIndex.findIndex((function(e){return e.visible})))>-1&&this.columnsByIndex[e]},ColumnManager.prototype.getColumns=function(){return this.columns},ColumnManager.prototype.findColumnIndex=function(e){return this.columnsByIndex.findIndex((function(t){return e===t}))},ColumnManager.prototype.getRealColumns=function(){return this.columnsByIndex},ColumnManager.prototype.traverse=function(e){this.columnsByIndex.forEach((function(t,o){e(t,o)}))},ColumnManager.prototype.getDefinitions=function(e){var t=[];return this.columnsByIndex.forEach((function(o){(!e||e&&o.visible)&&t.push(o.getDefinition())})),t},ColumnManager.prototype.getDefinitionTree=function(){var e=[];return this.columns.forEach((function(t){e.push(t.getDefinition(!0))})),e},ColumnManager.prototype.getComponents=function(e){var t=[];return(e?this.columns:this.columnsByIndex).forEach((function(e){t.push(e.getComponent())})),t},ColumnManager.prototype.getWidth=function(){var e=0;return this.columnsByIndex.forEach((function(t){t.visible&&(e+=t.getWidth())})),e},ColumnManager.prototype.moveColumn=function(e,t,o){this.moveColumnActual(e,t,o),this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout",!0)&&this.table.modules.responsiveLayout.initialize(),this.table.modExists("columnCalcs")&&this.table.modules.columnCalcs.recalc(this.table.rowManager.activeRows),t.element.parentNode.insertBefore(e.element,t.element),o&&t.element.parentNode.insertBefore(t.element,e.element),this._verticalAlignHeaders(),this.table.rowManager.reinitialize()},ColumnManager.prototype.moveColumnActual=function(e,t,o){e.parent.isGroup?this._moveColumnInArray(e.parent.columns,e,t,o):this._moveColumnInArray(this.columns,e,t,o),this._moveColumnInArray(this.columnsByIndex,e,t,o,!0),this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout",!0)&&this.table.modules.responsiveLayout.initialize(),this.table.options.virtualDomHoz&&this.table.vdomHoz.reinitialize(!0),this.table.options.columnMoved&&this.table.options.columnMoved.call(this.table,e.getComponent(),this.table.columnManager.getComponents()),this.table.options.persistence&&this.table.modExists("persistence",!0)&&this.table.modules.persistence.config.columns&&this.table.modules.persistence.save("columns")},ColumnManager.prototype._moveColumnInArray=function(e,t,o,i,n){var r,s=this,a=e.indexOf(t),l=[];a>-1&&(e.splice(a,1),(r=e.indexOf(o))>-1?i&&(r+=1):r=a,e.splice(r,0,t),n&&(this.table.options.dataTree&&this.table.modExists("dataTree",!0)&&this.table.rowManager.rows.forEach((function(e){l=l.concat(s.table.modules.dataTree.getTreeChildren(e,!1,!0))})),(l=l.concat(this.table.rowManager.rows)).forEach((function(e){if(e.cells.length){var t=e.cells.splice(a,1)[0];e.cells.splice(r,0,t)}}))))},ColumnManager.prototype.scrollToColumn=function(e,t,o){var i=this,n=0,r=0,s=0,a=e.getElement();return new Promise((function(l,u){if(void 0===t&&(t=i.table.options.scrollToColumnPosition),void 0===o&&(o=i.table.options.scrollToColumnIfVisible),e.visible){switch(t){case"middle":case"center":s=-i.element.clientWidth/2;break;case"right":s=a.clientWidth-i.headersElement.clientWidth}if(!o&&(r=a.offsetLeft)>0&&r+a.offsetWidthe.rowManager.element.clientHeight&&(t-=e.rowManager.element.offsetWidth-e.rowManager.element.clientWidth),this.columnsByIndex.forEach((function(i){var n,r,s;i.visible&&(n=i.definition.width||0,r=void 0===i.minWidth?e.table.options.columnMinWidth:parseInt(i.minWidth),s="string"==typeof n?n.indexOf("%")>-1?t/100*parseInt(n):parseInt(n):n,o+=s>r?s:r)})),o},ColumnManager.prototype.addColumn=function(e,t,o){var i=this;return new Promise((function(n,r){var s=i._addColumn(e,t,o);i._reIndexColumns(),i.table.options.responsiveLayout&&i.table.modExists("responsiveLayout",!0)&&i.table.modules.responsiveLayout.initialize(),i.table.modExists("columnCalcs")&&i.table.modules.columnCalcs.recalc(i.table.rowManager.activeRows),i.redraw(!0),"fitColumns"!=i.table.modules.layout.getMode()&&s.reinitializeWidth(),i._verticalAlignHeaders(),i.table.rowManager.reinitialize(),i.table.options.virtualDomHoz&&i.table.vdomHoz.reinitialize(),n(s)}))},ColumnManager.prototype.deregisterColumn=function(e){var t,o=e.getField();o&&delete this.columnsByField[o],(t=this.columnsByIndex.indexOf(e))>-1&&this.columnsByIndex.splice(t,1),(t=this.columns.indexOf(e))>-1&&this.columns.splice(t,1),this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout",!0)&&this.table.modules.responsiveLayout.initialize(),this._verticalAlignHeaders(),this.redraw()},ColumnManager.prototype.redraw=function(e){e&&(Tabulator.prototype.helpers.elVisible(this.element)&&this._verticalAlignHeaders(),this.table.rowManager.resetScroll(),this.table.rowManager.reinitialize()),["fitColumns","fitDataStretch"].indexOf(this.table.modules.layout.getMode())>-1||e?this.table.modules.layout.layout():this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout",!0)&&this.table.modules.responsiveLayout.update(),this.table.modExists("frozenColumns")&&this.table.modules.frozenColumns.layout(),this.table.modExists("columnCalcs")&&this.table.modules.columnCalcs.recalc(this.table.rowManager.activeRows),e&&(this.table.options.persistence&&this.table.modExists("persistence",!0)&&this.table.modules.persistence.config.columns&&this.table.modules.persistence.save("columns"),this.table.modExists("columnCalcs")&&this.table.modules.columnCalcs.redraw()),this.table.footerManager.redraw()};var ColumnComponent=function(e){this._column=e,this.type="ColumnComponent"};ColumnComponent.prototype.getElement=function(){return this._column.getElement()},ColumnComponent.prototype.getDefinition=function(){return this._column.getDefinition()},ColumnComponent.prototype.getField=function(){return this._column.getField()},ColumnComponent.prototype.getCells=function(){var e=[];return this._column.cells.forEach((function(t){e.push(t.getComponent())})),e},ColumnComponent.prototype.getVisibility=function(){return console.warn("getVisibility function is deprecated, you should now use the isVisible function"),this._column.visible},ColumnComponent.prototype.isVisible=function(){return this._column.visible},ColumnComponent.prototype.show=function(){this._column.isGroup?this._column.columns.forEach((function(e){e.show()})):this._column.show()},ColumnComponent.prototype.hide=function(){this._column.isGroup?this._column.columns.forEach((function(e){e.hide()})):this._column.hide()},ColumnComponent.prototype.toggle=function(){this._column.visible?this.hide():this.show()},ColumnComponent.prototype.delete=function(){return this._column.delete()},ColumnComponent.prototype.getSubColumns=function(){var e=[];return this._column.columns.length&&this._column.columns.forEach((function(t){e.push(t.getComponent())})),e},ColumnComponent.prototype.getParentColumn=function(){return this._column.parent instanceof Column&&this._column.parent.getComponent()},ColumnComponent.prototype._getSelf=function(){return this._column},ColumnComponent.prototype.scrollTo=function(){return this._column.table.columnManager.scrollToColumn(this._column)},ColumnComponent.prototype.getTable=function(){return this._column.table},ColumnComponent.prototype.headerFilterFocus=function(){this._column.table.modExists("filter",!0)&&this._column.table.modules.filter.setHeaderFilterFocus(this._column)},ColumnComponent.prototype.reloadHeaderFilter=function(){this._column.table.modExists("filter",!0)&&this._column.table.modules.filter.reloadHeaderFilter(this._column)},ColumnComponent.prototype.getHeaderFilterValue=function(){if(this._column.table.modExists("filter",!0))return this._column.table.modules.filter.getHeaderFilterValue(this._column)},ColumnComponent.prototype.setHeaderFilterValue=function(e){this._column.table.modExists("filter",!0)&&this._column.table.modules.filter.setHeaderFilterValue(this._column,e)},ColumnComponent.prototype.move=function(e,t){var o=this._column.table.columnManager.findColumn(e);o?this._column.table.columnManager.moveColumn(this._column,o,t):console.warn("Move Error - No matching column found:",o)},ColumnComponent.prototype.getNextColumn=function(){var e=this._column.nextColumn();return!!e&&e.getComponent()},ColumnComponent.prototype.getPrevColumn=function(){var e=this._column.prevColumn();return!!e&&e.getComponent()},ColumnComponent.prototype.updateDefinition=function(e){return this._column.updateDefinition(e)},ColumnComponent.prototype.getWidth=function(){return this._column.getWidth()},ColumnComponent.prototype.setWidth=function(e){var t;return t=!0===e?this._column.reinitializeWidth(!0):this._column.setWidth(e),this._column.table.options.virtualDomHoz&&this._column.table.vdomHoz.reinitialize(!0),t},ColumnComponent.prototype.validate=function(){return this._column.validate()};var Column=function e(t,o){var i=this;this.table=o.table,this.definition=t,this.parent=o,this.type="column",this.columns=[],this.cells=[],this.element=this.createElement(),this.contentElement=!1,this.titleHolderElement=!1,this.titleElement=!1,this.groupElement=this.createGroupElement(),this.isGroup=!1,this.tooltip=!1,this.hozAlign="",this.vertAlign="",this.field="",this.fieldStructure="",this.getFieldValue="",this.setFieldValue="",this.titleFormatterRendered=!1,this.setField(this.definition.field),this.table.options.invalidOptionWarnings&&this.checkDefinition(),this.modules={},this.cellEvents={cellClick:!1,cellDblClick:!1,cellContext:!1,cellTap:!1,cellDblTap:!1,cellTapHold:!1,cellMouseEnter:!1,cellMouseLeave:!1,cellMouseOver:!1,cellMouseOut:!1,cellMouseMove:!1},this.width=null,this.widthStyled="",this.maxWidth=null,this.maxWidthStyled="",this.minWidth=null,this.minWidthStyled="",this.widthFixed=!1,this.visible=!0,this.component=null,this._mapDepricatedFunctionality(),t.columns?(this.isGroup=!0,t.columns.forEach((function(t,o){var n=new e(t,i);i.attachColumn(n)})),i.checkColumnVisibility()):o.registerColumnField(this),t.rowHandle&&!1!==this.table.options.movableRows&&this.table.modExists("moveRow")&&this.table.modules.moveRow.setHandle(!0),this._buildHeader(),this.bindModuleColumns()};Column.prototype.createElement=function(){var e=document.createElement("div");return e.classList.add("tabulator-col"),e.setAttribute("role","columnheader"),e.setAttribute("aria-sort","none"),e},Column.prototype.createGroupElement=function(){var e=document.createElement("div");return e.classList.add("tabulator-col-group-cols"),e},Column.prototype.checkDefinition=function(){var e=this;Object.keys(this.definition).forEach((function(t){-1===e.defaultOptionList.indexOf(t)&&console.warn("Invalid column definition option in '"+(e.field||e.definition.title)+"' column:",t)}))},Column.prototype.setField=function(e){this.field=e,this.fieldStructure=e?this.table.options.nestedFieldSeparator?e.split(this.table.options.nestedFieldSeparator):[e]:[],this.getFieldValue=this.fieldStructure.length>1?this._getNestedData:this._getFlatData,this.setFieldValue=this.fieldStructure.length>1?this._setNestedData:this._setFlatData},Column.prototype.registerColumnPosition=function(e){this.parent.registerColumnPosition(e)},Column.prototype.registerColumnField=function(e){this.parent.registerColumnField(e)},Column.prototype.reRegisterPosition=function(){this.isGroup?this.columns.forEach((function(e){e.reRegisterPosition()})):this.registerColumnPosition(this)},Column.prototype._mapDepricatedFunctionality=function(){void 0!==this.definition.hideInHtml&&(this.definition.htmlOutput=!this.definition.hideInHtml,console.warn("hideInHtml column definition property is deprecated, you should now use htmlOutput")),void 0!==this.definition.align&&(this.definition.hozAlign=this.definition.align,console.warn("align column definition property is deprecated, you should now use hozAlign")),void 0!==this.definition.downloadTitle&&(this.definition.titleDownload=this.definition.downloadTitle,console.warn("downloadTitle definition property is deprecated, you should now use titleDownload"))},Column.prototype.setTooltip=function(){var e=this,t=e.definition,o=t.headerTooltip||!1===t.tooltip?t.headerTooltip:e.table.options.tooltipsHeader;o?!0===o?t.field?e.table.modules.localize.bind("columns|"+t.field,(function(o){e.element.setAttribute("title",o||t.title)})):e.element.setAttribute("title",t.title):("function"==typeof o&&!1===(o=o(e.getComponent()))&&(o=""),e.element.setAttribute("title",o)):e.element.setAttribute("title","")},Column.prototype._buildHeader=function(){for(var e=this,t=e.definition;e.element.firstChild;)e.element.removeChild(e.element.firstChild);t.headerVertical&&(e.element.classList.add("tabulator-col-vertical"),"flip"===t.headerVertical&&e.element.classList.add("tabulator-col-vertical-flip")),e.contentElement=e._bindEvents(),e.contentElement=e._buildColumnHeaderContent(),e.element.appendChild(e.contentElement),e.isGroup?e._buildGroupHeader():e._buildColumnHeader(),e.setTooltip(),e.table.options.resizableColumns&&e.table.modExists("resizeColumns")&&e.table.modules.resizeColumns.initializeColumn("header",e,e.element),t.headerFilter&&e.table.modExists("filter")&&e.table.modExists("edit")&&(void 0!==t.headerFilterPlaceholder&&t.field&&e.table.modules.localize.setHeaderFilterColumnPlaceholder(t.field,t.headerFilterPlaceholder),e.table.modules.filter.initializeColumn(e)),e.table.modExists("frozenColumns")&&e.table.modules.frozenColumns.initializeColumn(e),e.table.options.movableColumns&&!e.isGroup&&e.table.modExists("moveColumn")&&e.table.modules.moveColumn.initializeColumn(e),(t.topCalc||t.bottomCalc)&&e.table.modExists("columnCalcs")&&e.table.modules.columnCalcs.initializeColumn(e),e.table.modExists("persistence")&&e.table.modules.persistence.config.columns&&e.table.modules.persistence.initializeColumn(e),e.element.addEventListener("mouseenter",(function(t){e.setTooltip()}))},Column.prototype._bindEvents=function(){var e,t,o,i=this,n=i.definition;"function"==typeof n.headerClick&&i.element.addEventListener("click",(function(e){n.headerClick(e,i.getComponent())})),"function"==typeof n.headerDblClick&&i.element.addEventListener("dblclick",(function(e){n.headerDblClick(e,i.getComponent())})),"function"==typeof n.headerContext&&i.element.addEventListener("contextmenu",(function(e){n.headerContext(e,i.getComponent())})),"function"==typeof n.headerTap&&(o=!1,i.element.addEventListener("touchstart",(function(e){o=!0}),{passive:!0}),i.element.addEventListener("touchend",(function(e){o&&n.headerTap(e,i.getComponent()),o=!1}))),"function"==typeof n.headerDblTap&&(e=null,i.element.addEventListener("touchend",(function(t){e?(clearTimeout(e),e=null,n.headerDblTap(t,i.getComponent())):e=setTimeout((function(){clearTimeout(e),e=null}),300)}))),"function"==typeof n.headerTapHold&&(t=null,i.element.addEventListener("touchstart",(function(e){clearTimeout(t),t=setTimeout((function(){clearTimeout(t),t=null,o=!1,n.headerTapHold(e,i.getComponent())}),1e3)}),{passive:!0}),i.element.addEventListener("touchend",(function(e){clearTimeout(t),t=null}))),"function"==typeof n.cellClick&&(i.cellEvents.cellClick=n.cellClick),"function"==typeof n.cellDblClick&&(i.cellEvents.cellDblClick=n.cellDblClick),"function"==typeof n.cellContext&&(i.cellEvents.cellContext=n.cellContext),"function"==typeof n.cellMouseEnter&&(i.cellEvents.cellMouseEnter=n.cellMouseEnter),"function"==typeof n.cellMouseLeave&&(i.cellEvents.cellMouseLeave=n.cellMouseLeave),"function"==typeof n.cellMouseOver&&(i.cellEvents.cellMouseOver=n.cellMouseOver),"function"==typeof n.cellMouseOut&&(i.cellEvents.cellMouseOut=n.cellMouseOut),"function"==typeof n.cellMouseMove&&(i.cellEvents.cellMouseMove=n.cellMouseMove),"function"==typeof n.cellTap&&(i.cellEvents.cellTap=n.cellTap),"function"==typeof n.cellDblTap&&(i.cellEvents.cellDblTap=n.cellDblTap),"function"==typeof n.cellTapHold&&(i.cellEvents.cellTapHold=n.cellTapHold),"function"==typeof n.cellEdited&&(i.cellEvents.cellEdited=n.cellEdited),"function"==typeof n.cellEditing&&(i.cellEvents.cellEditing=n.cellEditing),"function"==typeof n.cellEditCancelled&&(i.cellEvents.cellEditCancelled=n.cellEditCancelled)},Column.prototype._buildColumnHeader=function(){var e=this,t=this.definition,o=this.table;(o.modExists("sort")&&o.modules.sort.initializeColumn(this,this.titleHolderElement),(t.headerContextMenu||t.headerClickMenu||t.headerMenu)&&o.modExists("menu")&&o.modules.menu.initializeColumnHeader(this),o.modExists("format")&&o.modules.format.initializeColumn(this),void 0!==t.editor&&o.modExists("edit")&&o.modules.edit.initializeColumn(this),void 0!==t.validator&&o.modExists("validate")&&o.modules.validate.initializeColumn(this),o.modExists("mutator")&&o.modules.mutator.initializeColumn(this),o.modExists("accessor")&&o.modules.accessor.initializeColumn(this),_typeof(o.options.responsiveLayout)&&o.modExists("responsiveLayout")&&o.modules.responsiveLayout.initializeColumn(this),void 0!==t.visible&&(t.visible?this.show(!0):this.hide(!0)),t.cssClass)&&t.cssClass.split(" ").forEach((function(t){e.element.classList.add(t)}));t.field&&this.element.setAttribute("tabulator-field",t.field),this.setMinWidth(void 0===t.minWidth?this.table.options.columnMinWidth:parseInt(t.minWidth)),(t.maxWidth||this.table.options.columnMaxWidth)&&!1!==t.maxWidth&&this.setMaxWidth(void 0===t.maxWidth?this.table.options.columnMaxWidth:parseInt(t.maxWidth)),this.reinitializeWidth(),this.tooltip=this.definition.tooltip||!1===this.definition.tooltip?this.definition.tooltip:this.table.options.tooltips,this.hozAlign=void 0===this.definition.hozAlign?this.table.options.cellHozAlign:this.definition.hozAlign,this.vertAlign=void 0===this.definition.vertAlign?this.table.options.cellVertAlign:this.definition.vertAlign,this.titleElement.style.textAlign=this.definition.headerHozAlign||this.table.options.headerHozAlign},Column.prototype._buildColumnHeaderContent=function(){this.definition,this.table;var e=document.createElement("div");return e.classList.add("tabulator-col-content"),this.titleHolderElement=document.createElement("div"),this.titleHolderElement.classList.add("tabulator-col-title-holder"),e.appendChild(this.titleHolderElement),this.titleElement=this._buildColumnHeaderTitle(),this.titleHolderElement.appendChild(this.titleElement),e},Column.prototype._buildColumnHeaderTitle=function(){var e=this,t=e.definition,o=e.table,i=document.createElement("div");if(i.classList.add("tabulator-col-title"),t.editableTitle){var n=document.createElement("input");n.classList.add("tabulator-title-editor"),n.addEventListener("click",(function(e){e.stopPropagation(),n.focus()})),n.addEventListener("change",(function(){t.title=n.value,o.options.columnTitleChanged.call(e.table,e.getComponent())})),i.appendChild(n),t.field?o.modules.localize.bind("columns|"+t.field,(function(e){n.value=e||t.title||" "})):n.value=t.title||" "}else t.field?o.modules.localize.bind("columns|"+t.field,(function(o){e._formatColumnHeaderTitle(i,o||t.title||" ")})):e._formatColumnHeaderTitle(i,t.title||" ");return i},Column.prototype._formatColumnHeaderTitle=function(e,t){var o,i,n,r,s,a=this;if(this.definition.titleFormatter&&this.table.modExists("format"))switch(o=this.table.modules.format.getFormatter(this.definition.titleFormatter),s=function(e){a.titleFormatterRendered=e},r={getValue:function(){return t},getElement:function(){return e}},n="function"==typeof(n=this.definition.titleFormatterParams||{})?n():n,void 0===(i=o.call(this.table.modules.format,r,n,s))?"undefined":_typeof(i)){case"object":i instanceof Node?e.appendChild(i):(e.innerHTML="",console.warn("Format Error - Title formatter has returned a type of object, the only valid formatter object return is an instance of Node, the formatter returned:",i));break;case"undefined":case"null":e.innerHTML="";break;default:e.innerHTML=i}else e.innerHTML=t},Column.prototype._buildGroupHeader=function(){var e=this;(this.element.classList.add("tabulator-col-group"),this.element.setAttribute("role","columngroup"),this.element.setAttribute("aria-title",this.definition.title),this.definition.cssClass)&&this.definition.cssClass.split(" ").forEach((function(t){e.element.classList.add(t)}));(this.definition.headerContextMenu||this.definition.headerMenu)&&this.table.modExists("menu")&&this.table.modules.menu.initializeColumnHeader(this),this.titleElement.style.textAlign=this.definition.headerHozAlign||this.table.options.headerHozAlign,this.element.appendChild(this.groupElement)},Column.prototype._getFlatData=function(e){return e[this.field]},Column.prototype._getNestedData=function(e){for(var t,o=e,i=this.fieldStructure,n=i.length,r=0;r-1&&this.columns.splice(t,1),this.columns.length||this.delete()},Column.prototype.setWidth=function(e){this.widthFixed=!0,this.setWidthActual(e)},Column.prototype.setWidthActual=function(e){isNaN(e)&&(e=Math.floor(this.table.element.clientWidth/100*parseInt(e))),e=Math.max(this.minWidth,e),this.maxWidth&&(e=Math.min(this.maxWidth,e)),this.width=e,this.widthStyled=e?e+"px":"",this.element.style.width=this.widthStyled,this.isGroup||this.cells.forEach((function(e){e.setWidth()})),this.parent.isGroup&&this.parent.matchChildWidths(),this.table.modExists("frozenColumns")&&this.table.modules.frozenColumns.layout()},Column.prototype.checkCellHeights=function(){var e=[];this.cells.forEach((function(t){t.row.heightInitialized&&(null!==t.row.getElement().offsetParent?(e.push(t.row),t.row.clearCellHeight()):t.row.heightInitialized=!1)})),e.forEach((function(e){e.calcHeight()})),e.forEach((function(e){e.setCellHeight()}))},Column.prototype.getWidth=function(){var e=0;return this.isGroup?this.columns.forEach((function(t){t.visible&&(e+=t.getWidth())})):e=this.width,e},Column.prototype.getHeight=function(){return this.element.offsetHeight},Column.prototype.setMinWidth=function(e){this.minWidth=e,this.minWidthStyled=e?e+"px":"",this.element.style.minWidth=this.minWidthStyled,this.cells.forEach((function(e){e.setMinWidth()}))},Column.prototype.setMaxWidth=function(e){this.maxWidth=e,this.maxWidthStyled=e?e+"px":"",this.element.style.maxWidth=this.maxWidthStyled,this.cells.forEach((function(e){e.setMaxWidth()}))},Column.prototype.delete=function(){var e=this;return new Promise((function(t,o){e.isGroup&&e.columns.forEach((function(e){e.delete()})),e.table.modExists("edit")&&e.table.modules.edit.currentCell.column===e&&e.table.modules.edit.cancelEdit();for(var i=e.cells.length,n=0;n-1&&this._nextVisibleColumn(e+1)},Column.prototype._nextVisibleColumn=function(e){var t=this.table.columnManager.getColumnByIndex(e);return!t||t.visible?t:this._nextVisibleColumn(e+1)},Column.prototype.prevColumn=function(){var e=this.table.columnManager.findColumnIndex(this);return e>-1&&this._prevVisibleColumn(e-1)},Column.prototype._prevVisibleColumn=function(e){var t=this.table.columnManager.getColumnByIndex(e);return!t||t.visible?t:this._prevVisibleColumn(e-1)},Column.prototype.reinitializeWidth=function(e){this.widthFixed=!1,void 0===this.definition.width||e||this.setWidth(this.definition.width),this.table.modExists("filter")&&this.table.modules.filter.hideHeaderFilterElements(),this.fitToData(),this.table.modExists("filter")&&this.table.modules.filter.showHeaderFilterElements()},Column.prototype.fitToData=function(){var e=this;this.widthFixed||(this.element.style.width="",e.cells.forEach((function(e){e.clearWidth()})));var t=this.element.offsetWidth;e.width&&this.widthFixed||(e.cells.forEach((function(e){var o=e.getWidth();o>t&&(t=o)})),t&&e.setWidthActual(t+1))},Column.prototype.updateDefinition=function(e){var t=this;return new Promise((function(o,i){var n;t.isGroup||t.parent.isGroup?(console.warn("Column Update Error - The updateDefinition function is only available on ungrouped columns"),i("Column Update Error - The updateDefinition function is only available on columns, not column groups")):(n=Object.assign({},t.getDefinition()),n=Object.assign(n,e),t.table.columnManager.addColumn(n,!1,t).then((function(e){n.field==t.field&&(t.field=!1),t.delete().then((function(){o(e.getComponent())})).catch((function(e){i(e)}))})).catch((function(e){i(e)})))}))},Column.prototype.deleteCell=function(e){var t=this.cells.indexOf(e);t>-1&&this.cells.splice(t,1)},Column.prototype.defaultOptionList=["title","field","columns","visible","align","hozAlign","vertAlign","width","minWidth","maxWidth","widthGrow","widthShrink","resizable","frozen","responsive","tooltip","cssClass","rowHandle","hideInHtml","print","htmlOutput","sorter","sorterParams","formatter","formatterParams","variableHeight","editable","editor","editorParams","validator","mutator","mutatorParams","mutatorData","mutatorDataParams","mutatorEdit","mutatorEditParams","mutatorClipboard","mutatorClipboardParams","accessor","accessorParams","accessorData","accessorDataParams","accessorDownload","accessorDownloadParams","accessorClipboard","accessorClipboardParams","accessorPrint","accessorPrintParams","accessorHtmlOutput","accessorHtmlOutputParams","clipboard","download","downloadTitle","topCalc","topCalcParams","topCalcFormatter","topCalcFormatterParams","bottomCalc","bottomCalcParams","bottomCalcFormatter","bottomCalcFormatterParams","cellClick","cellDblClick","cellContext","cellTap","cellDblTap","cellTapHold","cellMouseEnter","cellMouseLeave","cellMouseOver","cellMouseOut","cellMouseMove","cellEditing","cellEdited","cellEditCancelled","headerSort","headerSortStartingDir","headerSortTristate","headerClick","headerDblClick","headerContext","headerTap","headerDblTap","headerTapHold","headerTooltip","headerVertical","headerHozAlign","editableTitle","titleFormatter","titleFormatterParams","headerFilter","headerFilterPlaceholder","headerFilterParams","headerFilterEmptyCheck","headerFilterFunc","headerFilterFuncParams","headerFilterLiveFilter","print","headerContextMenu","headerMenu","contextMenu","clickMenu","formatterPrint","formatterPrintParams","formatterClipboard","formatterClipboardParams","formatterHtmlOutput","formatterHtmlOutputParams","titlePrint","titleClipboard","titleHtmlOutput","titleDownload"],Column.prototype.getComponent=function(){return this.component||(this.component=new ColumnComponent(this)),this.component};var RowManager=function(e){this.table=e,this.element=this.createHolderElement(),this.tableElement=this.createTableElement(),this.heightFixer=this.createTableElement(),this.columnManager=null,this.height=0,this.firstRender=!1,this.renderMode="virtual",this.fixedHeight=!1,this.rows=[],this.activeRows=[],this.activeRowsCount=0,this.displayRows=[],this.displayRowsCount=0,this.scrollTop=0,this.scrollLeft=0,this.vDomRowHeight=20,this.vDomTop=0,this.vDomBottom=0,this.vDomScrollPosTop=0,this.vDomScrollPosBottom=0,this.vDomTopPad=0,this.vDomBottomPad=0,this.vDomMaxRenderChain=90,this.vDomWindowBuffer=0,this.vDomWindowMinTotalRows=20,this.vDomWindowMinMarginRows=5,this.vDomTopNewRows=[],this.vDomBottomNewRows=[],this.rowNumColumn=!1,this.redrawBlock=!1,this.redrawBlockRestoreConfig=!1,this.redrawBlockRederInPosition=!1};RowManager.prototype.createHolderElement=function(){var e=document.createElement("div");return e.classList.add("tabulator-tableHolder"),e.setAttribute("tabindex",0),e},RowManager.prototype.createTableElement=function(){var e=document.createElement("div");return e.classList.add("tabulator-table"),e},RowManager.prototype.getElement=function(){return this.element},RowManager.prototype.getTableElement=function(){return this.tableElement},RowManager.prototype.getRowPosition=function(e,t){return t?this.activeRows.indexOf(e):this.rows.indexOf(e)},RowManager.prototype.setColumnManager=function(e){this.columnManager=e},RowManager.prototype.initialize=function(){var e=this;e.setRenderMode(),e.element.appendChild(e.tableElement),e.firstRender=!0,e.element.addEventListener("scroll",(function(){var t=e.element.scrollLeft;e.scrollLeft!=t&&(e.columnManager.scrollHorizontal(t),e.table.options.groupBy&&e.table.modules.groupRows.scrollHeaders(t),e.table.modExists("columnCalcs")&&e.table.modules.columnCalcs.scrollHorizontal(t),e.table.options.scrollHorizontal(t)),e.scrollLeft=t})),"virtual"===this.renderMode&&e.element.addEventListener("scroll",(function(){var t=e.element.scrollTop,o=e.scrollTop>t;e.scrollTop!=t?(e.scrollTop=t,e.scrollVertical(o),"scroll"==e.table.options.ajaxProgressiveLoad&&e.table.modules.ajax.nextPage(e.element.scrollHeight-e.element.clientHeight-t),e.table.options.scrollVertical(t)):e.scrollTop=t}))},RowManager.prototype.findRow=function(e){var t=this;return"object"!=(void 0===e?"undefined":_typeof(e))?null!=e&&(t.rows.find((function(o){return o.data[t.table.options.index]==e}))||!1):e instanceof Row?e:e instanceof RowComponent?e._getSelf()||!1:"undefined"!=typeof HTMLElement&&e instanceof HTMLElement&&t.rows.find((function(t){return t.getElement()===e}))||!1},RowManager.prototype.getRowFromDataObject=function(e){return this.rows.find((function(t){return t.data===e}))||!1},RowManager.prototype.getRowFromPosition=function(e,t){return t?this.activeRows[e]:this.rows[e]},RowManager.prototype.scrollToRow=function(e,t,o){var i,n=this,r=this.getDisplayRows().indexOf(e),s=e.getElement(),a=0;return new Promise((function(e,l){if(r>-1){if(void 0===t&&(t=n.table.options.scrollToRowPosition),void 0===o&&(o=n.table.options.scrollToRowIfVisible),"nearest"===t)switch(n.renderMode){case"classic":i=Tabulator.prototype.helpers.elOffset(s).top,t=Math.abs(n.element.scrollTop-i)>Math.abs(n.element.scrollTop+n.element.clientHeight-i)?"bottom":"top";break;case"virtual":t=Math.abs(n.vDomTop-r)>Math.abs(n.vDomBottom-r)?"bottom":"top"}if(!o&&Tabulator.prototype.helpers.elVisible(s)&&(a=Tabulator.prototype.helpers.elOffset(s).top-Tabulator.prototype.helpers.elOffset(n.element).top)>0&&a-1&&this.activeRows.splice(i,1),o>-1&&this.rows.splice(o,1),this.setActiveRows(this.activeRows),this.displayRowIterator((function(t){var o=t.indexOf(e);o>-1&&t.splice(o,1)})),t||this.reRenderInPosition(),this.regenerateRowNumbers(),this.table.options.rowDeleted.call(this.table,e.getComponent()),this.table.options.dataChanged&&this.table.options.dataChanged.call(this.table,this.getData()),this.table.options.groupBy&&this.table.modExists("groupRows")?this.table.modules.groupRows.updateGroupRows(!0):this.table.options.pagination&&this.table.modExists("page")?this.refreshActiveData(!1,!1,!0):this.table.options.pagination&&this.table.modExists("page")&&this.refreshActiveData("page")},RowManager.prototype.addRow=function(e,t,o,i){var n=this.addRowActual(e,t,o,i);return this.table.options.history&&this.table.modExists("history")&&this.table.modules.history.action("rowAdd",n,{data:e,pos:t,index:o}),n},RowManager.prototype.addRows=function(e,t,o){var i=this,n=this,r=[];return new Promise((function(s,a){t=i.findAddRowPos(t),Array.isArray(e)||(e=[e]),e.length-1,(void 0===o&&t||void 0!==o&&!t)&&e.reverse(),e.forEach((function(e,i){var s=n.addRow(e,t,o,!0);r.push(s)})),i.table.options.groupBy&&i.table.modExists("groupRows")?i.table.modules.groupRows.updateGroupRows(!0):i.table.options.pagination&&i.table.modExists("page")?i.refreshActiveData(!1,!1,!0):i.reRenderInPosition(),i.table.modExists("columnCalcs")&&i.table.modules.columnCalcs.recalc(i.table.rowManager.activeRows),i.regenerateRowNumbers(),s(r)}))},RowManager.prototype.findAddRowPos=function(e){return void 0===e&&(e=this.table.options.addRowPos),"pos"===e&&(e=!0),"bottom"===e&&(e=!1),e},RowManager.prototype.addRowActual=function(e,t,o,i){var n,r,s=e instanceof Row?e:new Row(e||{},this),a=this.findAddRowPos(t),l=-1;if(!o&&this.table.options.pagination&&"page"==this.table.options.paginationAddRow&&(r=this.getDisplayRows(),a?r.length?o=r[0]:this.activeRows.length&&(o=this.activeRows[this.activeRows.length-1],a=!1):r.length&&(o=r[r.length-1],a=!(r.length1&&(!o||o&&-1==u.indexOf(o)?a?u[0]!==s&&(o=u[0],this._moveRowInArray(s.getGroup().rows,s,o,!a)):u[u.length-1]!==s&&(o=u[u.length-1],this._moveRowInArray(s.getGroup().rows,s,o,!a)):this._moveRowInArray(s.getGroup().rows,s,o,!a))}return o&&(l=this.rows.indexOf(o)),o&&l>-1?(n=this.activeRows.indexOf(o),this.displayRowIterator((function(e){var t=e.indexOf(o);t>-1&&e.splice(a?t:t+1,0,s)})),n>-1&&this.activeRows.splice(a?n:n+1,0,s),this.rows.splice(a?l:l+1,0,s)):a?(this.displayRowIterator((function(e){e.unshift(s)})),this.activeRows.unshift(s),this.rows.unshift(s)):(this.displayRowIterator((function(e){e.push(s)})),this.activeRows.push(s),this.rows.push(s)),this.setActiveRows(this.activeRows),this.table.options.rowAdded.call(this.table,s.getComponent()),this.table.options.dataChanged&&this.table.options.dataChanged.call(this.table,this.getData()),i||this.reRenderInPosition(),s},RowManager.prototype.moveRow=function(e,t,o){this.table.options.history&&this.table.modExists("history")&&this.table.modules.history.action("rowMove",e,{posFrom:this.getRowPosition(e),posTo:this.getRowPosition(t),to:t,after:o}),this.moveRowActual(e,t,o),this.regenerateRowNumbers(),this.table.options.rowMoved.call(this.table,e.getComponent())},RowManager.prototype.moveRowActual=function(e,t,o){var i=this;if(this._moveRowInArray(this.rows,e,t,o),this._moveRowInArray(this.activeRows,e,t,o),this.displayRowIterator((function(n){i._moveRowInArray(n,e,t,o)})),this.table.options.groupBy&&this.table.modExists("groupRows")){!o&&t instanceof Group&&(t=this.table.rowManager.prevDisplayRow(e)||t);var n=t.getGroup(),r=e.getGroup();n===r?this._moveRowInArray(n.rows,e,t,o):(r&&r.removeRow(e),n.insertRow(e,t,o))}},RowManager.prototype._moveRowInArray=function(e,t,o,i){var n,r,s;if(t!==o&&((n=e.indexOf(t))>-1&&(e.splice(n,1),(r=e.indexOf(o))>-1?i?e.splice(r+1,0,t):e.splice(r,0,t):e.splice(n,0,t)),e===this.getDisplayRows())){s=r>n?r:n+1;for(var a=n-1&&t},RowManager.prototype.nextDisplayRow=function(e,t){var o=this.getDisplayRowIndex(e),i=!1;return!1!==o&&o-1)&&o},RowManager.prototype.getData=function(e,t){var o=[];return this.getRows(e).forEach((function(e){"row"==e.type&&o.push(e.getData(t||"data"))})),o},RowManager.prototype.getComponents=function(e){var t=[];return this.getRows(e).forEach((function(e){t.push(e.getComponent())})),t},RowManager.prototype.getDataCount=function(e){return this.getRows(e).length},RowManager.prototype._genRemoteRequest=function(){var e=this,t=this.table,o=t.options,i={};if(t.modExists("page")){if(o.ajaxSorting){var n=this.table.modules.sort.getSort();n.forEach((function(e){delete e.column})),i[this.table.modules.page.paginationDataSentNames.sorters]=n}if(o.ajaxFiltering){var r=this.table.modules.filter.getFilters(!0,!0);i[this.table.modules.page.paginationDataSentNames.filters]=r}this.table.modules.ajax.setParams(i,!0)}t.modules.ajax.sendRequest().then((function(t){e._setDataActual(t,!0)})).catch((function(e){}))},RowManager.prototype.filterRefresh=function(){var e=this.table,t=e.options,o=this.scrollLeft;t.ajaxFiltering?"remote"==t.pagination&&e.modExists("page")?(e.modules.page.reset(!0),e.modules.page.setPage(1).then((function(){})).catch((function(){}))):t.ajaxProgressiveLoad?e.modules.ajax.loadData().then((function(){})).catch((function(){})):this._genRemoteRequest():this.refreshActiveData("filter"),this.scrollHorizontal(o)},RowManager.prototype.sorterRefresh=function(e){var t=this.table,o=this.table.options,i=this.scrollLeft;o.ajaxSorting?("remote"==o.pagination||o.progressiveLoad)&&t.modExists("page")?(t.modules.page.reset(!0),t.modules.page.setPage(1).then((function(){})).catch((function(){}))):o.ajaxProgressiveLoad?t.modules.ajax.loadData().then((function(){})).catch((function(){})):this._genRemoteRequest():this.refreshActiveData(e?"filter":"sort"),this.scrollHorizontal(i)},RowManager.prototype.scrollHorizontal=function(e){this.scrollLeft=e,this.element.scrollLeft=e,this.table.options.groupBy&&this.table.modules.groupRows.scrollHeaders(e),this.table.modExists("columnCalcs")&&this.table.modules.columnCalcs.scrollHorizontal(e)},RowManager.prototype.refreshActiveData=function(e,t,o){var i,n=this,r=this.table,s=["all","filter","sort","display","freeze","group","tree","page"];if(this.redrawBlock)(!this.redrawBlockRestoreConfig||s.indexOf(e)=0))break;r=a}else if(t-s[a].getElement().offsetTop>=0)n=a;else{if(i=!0,!(o-s[a].getElement().offsetTop>=0))break;r=a}}else n=this.vDomTop,r=this.vDomBottom;return s.slice(n,r+1)},RowManager.prototype.displayRowIterator=function(e){this.displayRows.forEach(e),this.displayRowsCount=this.displayRows[this.displayRows.length-1].length},RowManager.prototype.getRows=function(e){var t;switch(e){case"active":t=this.activeRows;break;case"display":t=this.table.rowManager.getDisplayRows();break;case"visible":t=this.getVisibleRows(!0);break;case"selected":t=this.table.modules.selectRow.selectedRows;break;default:t=this.rows}return t},RowManager.prototype.reRenderInPosition=function(e){if("virtual"==this.getRenderMode())if(this.redrawBlock)e?e():this.redrawBlockRederInPosition=!0;else{for(var t=this.element.scrollTop,o=!1,i=!1,n=this.scrollLeft,r=this.getDisplayRows(),s=this.vDomTop;s<=this.vDomBottom;s++)if(r[s]){var a=t-r[s].getElement().offsetTop;if(!(!1===i||Math.abs(a)this.vDomWindowBuffer&&(this.vDomWindowBuffer=2*p),"group"!==f.type&&(c=!1),i.vDomBottom++,u++}e?(i.vDomTopPad=t?i.vDomRowHeight*this.vDomTop+o:i.scrollTop-l,i.vDomBottomPad=i.vDomBottom==i.displayRowsCount-1?0:Math.max(i.vDomScrollHeight-i.vDomTopPad-a-l,0)):(this.vDomTopPad=0,i.vDomRowHeight=Math.floor((a+l)/u),i.vDomBottomPad=i.vDomRowHeight*(i.displayRowsCount-i.vDomBottom-1),i.vDomScrollHeight=l+a+i.vDomBottomPad-i.height),n.style.paddingTop=i.vDomTopPad+"px",n.style.paddingBottom=i.vDomBottomPad+"px",t&&(this.scrollTop=i.vDomTopPad+l+o-(this.element.scrollWidth>this.element.clientWidth?this.element.offsetHeight-this.element.clientHeight:0)),this.scrollTop=Math.min(this.scrollTop,this.element.scrollHeight-this.height),this.element.scrollWidth>this.element.offsetWidth&&t&&(this.scrollTop+=this.element.offsetHeight-this.element.clientHeight),this.vDomScrollPosTop=this.scrollTop,this.vDomScrollPosBottom=this.scrollTop,r.scrollTop=this.scrollTop,n.style.minWidth=c?i.table.columnManager.getWidth()+"px":"",i.table.options.groupBy&&"fitDataFill"!=i.table.modules.layout.getMode()&&i.displayRowsCount==i.table.modules.groupRows.countGroups()&&(i.tableElement.style.minWidth=i.table.columnManager.getWidth())}else this.renderEmptyScroll();this.fixedHeight||this.adjustTableSize()},RowManager.prototype.scrollVertical=function(e){var t=this.scrollTop-this.vDomScrollPosTop,o=this.scrollTop-this.vDomScrollPosBottom,i=2*this.vDomWindowBuffer;if(-t>i||o>i){var n=this.scrollLeft;this._virtualRenderFill(Math.floor(this.element.scrollTop/this.element.scrollHeight*this.displayRowsCount)),this.scrollHorizontal(n)}else e?(t<0&&this._addTopRow(-t),o<0&&(this.vDomScrollHeight-this.scrollTop>this.vDomWindowBuffer?this._removeBottomRow(-o):this.vDomScrollPosBottom=this.scrollTop)):(t>=0&&(this.scrollTop>this.vDomWindowBuffer?this._removeTopRow(t):this.vDomScrollPosTop=this.scrollTop),o>=0&&this._addBottomRow(o))},RowManager.prototype._addTopRow=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,o=this.tableElement,i=this.getDisplayRows();if(this.vDomTop){var n=this.vDomTop-1,r=i[n],s=r.getHeight()||this.vDomRowHeight;e>=s&&(this.styleRow(r,n),o.insertBefore(r.getElement(),o.firstChild),r.initialized&&r.heightInitialized||(this.vDomTopNewRows.push(r),r.heightInitialized||r.clearCellHeight()),r.initialize(),this.vDomTopPad-=s,this.vDomTopPad<0&&(this.vDomTopPad=n*this.vDomRowHeight),n||(this.vDomTopPad=0),o.style.paddingTop=this.vDomTopPad+"px",this.vDomScrollPosTop-=s,this.vDomTop--),e=-(this.scrollTop-this.vDomScrollPosTop),r.getHeight()>this.vDomWindowBuffer&&(this.vDomWindowBuffer=2*r.getHeight()),t=(i[this.vDomTop-1].getHeight()||this.vDomRowHeight)?this._addTopRow(e,t+1):this._quickNormalizeRowHeight(this.vDomTopNewRows)}},RowManager.prototype._removeTopRow=function(e){var t=this.tableElement,o=this.getDisplayRows()[this.vDomTop],i=o.getHeight()||this.vDomRowHeight;if(e>=i){var n=o.getElement();n.parentNode.removeChild(n),this.vDomTopPad+=i,t.style.paddingTop=this.vDomTopPad+"px",this.vDomScrollPosTop+=this.vDomTop?i:i+this.vDomWindowBuffer,this.vDomTop++,e=this.scrollTop-this.vDomScrollPosTop,this._removeTopRow(e)}},RowManager.prototype._addBottomRow=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,o=this.tableElement,i=this.getDisplayRows();if(this.vDomBottom=s&&(this.styleRow(r,n),o.appendChild(r.getElement()),r.initialized&&r.heightInitialized||(this.vDomBottomNewRows.push(r),r.heightInitialized||r.clearCellHeight()),r.initialize(),this.vDomBottomPad-=s,(this.vDomBottomPad<0||n==this.displayRowsCount-1)&&(this.vDomBottomPad=0),o.style.paddingBottom=this.vDomBottomPad+"px",this.vDomScrollPosBottom+=s,this.vDomBottom++),e=this.scrollTop-this.vDomScrollPosBottom,r.getHeight()>this.vDomWindowBuffer&&(this.vDomWindowBuffer=2*r.getHeight()),t=(i[this.vDomBottom+1].getHeight()||this.vDomRowHeight)?this._addBottomRow(e,t+1):this._quickNormalizeRowHeight(this.vDomBottomNewRows)}},RowManager.prototype._removeBottomRow=function(e){var t=this.tableElement,o=this.getDisplayRows()[this.vDomBottom],i=o.getHeight()||this.vDomRowHeight;if(e>=i){var n=o.getElement();n.parentNode&&n.parentNode.removeChild(n),this.vDomBottomPad+=i,this.vDomBottomPad<0&&(this.vDomBottomPad=0),t.style.paddingBottom=this.vDomBottomPad+"px",this.vDomScrollPosBottom-=i,this.vDomBottom--,e=-(this.scrollTop-this.vDomScrollPosBottom),this._removeBottomRow(e)}},RowManager.prototype._quickNormalizeRowHeight=function(e){e.forEach((function(e){e.calcHeight()})),e.forEach((function(e){e.setCellHeight()})),e.length=0},RowManager.prototype.normalizeHeight=function(){this.activeRows.forEach((function(e){e.normalizeHeight()}))},RowManager.prototype.adjustTableSize=function(){var e,t=this.element.clientHeight;if("virtual"===this.renderMode){var o=Math.floor(this.columnManager.getElement().getBoundingClientRect().height+(this.table.footerManager&&this.table.footerManager.active&&!this.table.footerManager.external?this.table.footerManager.getElement().getBoundingClientRect().height:0));this.fixedHeight?(this.element.style.minHeight="calc(100% - "+o+"px)",this.element.style.height="calc(100% - "+o+"px)",this.element.style.maxHeight="calc(100% - "+o+"px)"):(this.element.style.height="",this.element.style.height=this.table.element.clientHeight-o+"px",this.element.scrollTop=this.scrollTop),this.height=this.element.clientHeight,this.vDomWindowBuffer=this.table.options.virtualDomBuffer||this.height,this.fixedHeight||t==this.element.clientHeight||((e=this.table.modExists("resizeTable"))&&!this.table.modules.resizeTable.autoResize||!e)&&this.redraw()}},RowManager.prototype.reinitialize=function(){this.rows.forEach((function(e){e.reinitialize(!0)}))},RowManager.prototype.blockRedraw=function(){this.redrawBlock=!0,this.redrawBlockRestoreConfig=!1},RowManager.prototype.restoreRedraw=function(){this.redrawBlock=!1,this.redrawBlockRestoreConfig?(this.refreshActiveData(this.redrawBlockRestoreConfig.stage,this.redrawBlockRestoreConfig.skipStage,this.redrawBlockRestoreConfig.renderInPosition),this.redrawBlockRestoreConfig=!1):this.redrawBlockRederInPosition&&this.reRenderInPosition(),this.redrawBlockRederInPosition=!1},RowManager.prototype.redraw=function(e){var t=this.scrollLeft;this.adjustTableSize(),this.table.tableWidth=this.table.element.clientWidth,e?this.renderTable():("classic"==this.renderMode?this.table.options.groupBy?this.refreshActiveData("group",!1,!1):this._simpleRender():(this.reRenderInPosition(),this.scrollHorizontal(t)),this.displayRowsCount||this.table.options.placeholder&&this.getElement().appendChild(this.table.options.placeholder))},RowManager.prototype.resetScroll=function(){if(this.element.scrollLeft=0,this.element.scrollTop=0,"ie"===this.table.browser){var e=document.createEvent("Event");e.initEvent("scroll",!1,!0),this.element.dispatchEvent(e)}else this.element.dispatchEvent(new Event("scroll"))};var VDomHoz=function(e){this.table=e,this.element=this.table.rowManager.tableElement,this.holderEl=this.table.rowManager.element,this.leftCol=0,this.rightCol=0,this.scrollLeft=0,this.vDomScrollPosLeft=0,this.vDomScrollPosRight=0,this.vDomPadLeft=0,this.vDomPadRight=0,this.fitDataColAvg=0,this.window=200,this.initialized=!1,this.columns=[],this.compatabilityCheck()&&this.initialize()};VDomHoz.prototype.compatabilityCheck=function(){var e=this.table.options,t=!0;return"fitDataTable"==e.layout&&(console.warn("Horizontal Vitrual DOM is not compatible with fitDataTable layout mode"),t=!1),e.responsiveLayout&&(console.warn("Horizontal Vitrual DOM is not compatible with responsive columns"),t=!1),this.table.rtl&&(console.warn("Horizontal Vitrual DOM is not currently compatible with RTL text direction"),t=!1),e.columns&&e.columns.find((function(e){return e.frozen}))&&(console.warn("Horizontal Vitrual DOM is not compatible with frozen columns"),t=!1),t||(e.virtualDomHoz=!1),t},VDomHoz.prototype.initialize=function(){var e=this;this.holderEl.addEventListener("scroll",(function(){var t=e.holderEl.scrollLeft;e.scrollLeft!=t&&(e.scrollLeft=t,e.scroll(t-(e.vDomScrollPosLeft+e.window)))}))},VDomHoz.prototype.deinitialize=function(){this.initialized=!1},VDomHoz.prototype.clear=function(){this.columns=[],this.leftCol=-1,this.rightCol=0,this.vDomScrollPosLeft=0,this.vDomScrollPosRight=0,this.vDomPadLeft=0,this.vDomPadRight=0},VDomHoz.prototype.dataChange=function(){var e,t,o=!1,i=0,n=0;if("fitData"===this.table.options.layout){if(this.table.columnManager.columnsByIndex.forEach((function(e){!e.definition.width&&e.visible&&(o=!0)})),o&&o&&this.table.rowManager.getDisplayRows().length&&(this.vDomScrollPosRight=this.scrollLeft+this.holderEl.clientWidth+this.window,e=this.table.options.groupBy?this.table.modules.groupRows.getGroups(!1)[0].getRows(!1)[0]:this.table.rowManager.getDisplayRows()[0])){t=e.getElement(),e.generateCells(),this.element.appendChild(t);for(n=0;nthis.vDomScrollPosRight)break}for(t.parentNode.removeChild(t),this.fitDataColAvg=Math.floor(i/(n+1));no.vDomScrollPosLeft&&n.8*this.holderEl.clientWidth?this.reinitialize():e>0?(this.addColRight(),this.removeColLeft()):(this.addColLeft(),this.removeColRight())},VDomHoz.prototype.colPositionAdjust=function(e,t,o){for(var i=e;i=this.columns.length-1?this.vDomPadRight=0:this.vDomPadRight-=o.getWidth(),this.element.style.paddingRight=this.vDomPadRight+"px",this.addColRight())},VDomHoz.prototype.addColLeft=function(){var e=this.columns[this.leftCol-1];e&&e.modules.vdomHoz.rightPos>=this.vDomScrollPosLeft&&(this.table.rowManager.getVisibleRows().forEach((function(t){if("group"!==t.type){var o=t.getCell(e);t.getElement().prepend(o.getElement()),o.cellRendered()}})),this.leftCol?this.vDomPadLeft-=e.getWidth():this.vDomPadLeft=0,this.element.style.paddingLeft=this.vDomPadLeft+"px",this.leftCol--,this.addColLeft())},VDomHoz.prototype.removeColRight=function(e){var t;(e=this.columns[this.rightCol])&&e.modules.vdomHoz.leftPos>this.vDomScrollPosRight&&(t=this.table.rowManager.getVisibleRows(),e.modules.vdomHoz.visible=!1,t.forEach((function(t){if("group"!==t.type){var o=t.getCell(e);t.getElement().removeChild(o.getElement())}})),this.vDomPadRight+=e.getWidth(),this.element.style.paddingRight=this.vDomPadRight+"px",this.rightCol--,this.removeColRight())},VDomHoz.prototype.removeColLeft=function(){var e=this.columns[this.leftCol];e&&e.modules.vdomHoz.rightPos-1},RowComponent.prototype.treeCollapse=function(){this._row.table.modExists("dataTree",!0)&&this._row.table.modules.dataTree.collapseRow(this._row)},RowComponent.prototype.treeExpand=function(){this._row.table.modExists("dataTree",!0)&&this._row.table.modules.dataTree.expandRow(this._row)},RowComponent.prototype.treeToggle=function(){this._row.table.modExists("dataTree",!0)&&this._row.table.modules.dataTree.toggleRow(this._row)},RowComponent.prototype.getTreeParent=function(){return!!this._row.table.modExists("dataTree",!0)&&this._row.table.modules.dataTree.getTreeParent(this._row)},RowComponent.prototype.getTreeChildren=function(){return!!this._row.table.modExists("dataTree",!0)&&this._row.table.modules.dataTree.getTreeChildren(this._row,!0)},RowComponent.prototype.addTreeChild=function(e,t,o){return!!this._row.table.modExists("dataTree",!0)&&this._row.table.modules.dataTree.addTreeChildRow(this._row,e,t,o)},RowComponent.prototype.reformat=function(){return this._row.reinitialize()},RowComponent.prototype.getGroup=function(){return this._row.getGroup().getComponent()},RowComponent.prototype.getTable=function(){return this._row.table},RowComponent.prototype.getNextRow=function(){var e=this._row.nextRow();return e?e.getComponent():e},RowComponent.prototype.getPrevRow=function(){var e=this._row.prevRow();return e?e.getComponent():e};var Row=function(e,t){var o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"row";this.table=t.table,this.parent=t,this.data={},this.type=o,this.element=!1,this.modules={},this.cells=[],this.height=0,this.heightStyled="",this.manualHeight=!1,this.outerHeight=0,this.initialized=!1,this.heightInitialized=!1,this.component=null,this.created=!1,this.setData(e)};Row.prototype.create=function(){this.created||(this.created=!0,this.generateElement())},Row.prototype.createElement=function(){var e=document.createElement("div");e.classList.add("tabulator-row"),e.setAttribute("role","row"),this.element=e},Row.prototype.getElement=function(){return this.create(),this.element},Row.prototype.detachElement=function(){this.element&&this.element.parentNode&&this.element.parentNode.removeChild(this.element)},Row.prototype.generateElement=function(){var e,t,o,i=this;this.createElement(),!1!==i.table.options.selectable&&i.table.modExists("selectRow")&&i.table.modules.selectRow.initializeRow(this),!1!==i.table.options.movableRows&&i.table.modExists("moveRow")&&i.table.modules.moveRow.initializeRow(this),!1!==i.table.options.dataTree&&i.table.modExists("dataTree")&&i.table.modules.dataTree.initializeRow(this),"collapse"===i.table.options.responsiveLayout&&i.table.modExists("responsiveLayout")&&i.table.modules.responsiveLayout.initializeRow(this),(i.table.options.rowContextMenu||i.table.options.rowClickMenu)&&this.table.modExists("menu")&&i.table.modules.menu.initializeRow(this),i.table.options.rowClick&&i.element.addEventListener("click",(function(e){i.table.options.rowClick(e,i.getComponent())})),i.table.options.rowDblClick&&i.element.addEventListener("dblclick",(function(e){i.table.options.rowDblClick(e,i.getComponent())})),i.table.options.rowContext&&i.element.addEventListener("contextmenu",(function(e){i.table.options.rowContext(e,i.getComponent())})),i.table.options.rowMouseEnter&&i.element.addEventListener("mouseenter",(function(e){i.table.options.rowMouseEnter(e,i.getComponent())})),i.table.options.rowMouseLeave&&i.element.addEventListener("mouseleave",(function(e){i.table.options.rowMouseLeave(e,i.getComponent())})),i.table.options.rowMouseOver&&i.element.addEventListener("mouseover",(function(e){i.table.options.rowMouseOver(e,i.getComponent())})),i.table.options.rowMouseOut&&i.element.addEventListener("mouseout",(function(e){i.table.options.rowMouseOut(e,i.getComponent())})),i.table.options.rowMouseMove&&i.element.addEventListener("mousemove",(function(e){i.table.options.rowMouseMove(e,i.getComponent())})),i.table.options.rowTap&&(o=!1,i.element.addEventListener("touchstart",(function(e){o=!0}),{passive:!0}),i.element.addEventListener("touchend",(function(e){o&&i.table.options.rowTap(e,i.getComponent()),o=!1}))),i.table.options.rowDblTap&&(e=null,i.element.addEventListener("touchend",(function(t){e?(clearTimeout(e),e=null,i.table.options.rowDblTap(t,i.getComponent())):e=setTimeout((function(){clearTimeout(e),e=null}),300)}))),i.table.options.rowTapHold&&(t=null,i.element.addEventListener("touchstart",(function(e){clearTimeout(t),t=setTimeout((function(){clearTimeout(t),t=null,o=!1,i.table.options.rowTapHold(e,i.getComponent())}),1e3)}),{passive:!0}),i.element.addEventListener("touchend",(function(e){clearTimeout(t),t=null})))},Row.prototype.generateCells=function(){this.cells=this.table.columnManager.generateCells(this)},Row.prototype.initialize=function(e){var t=this;if(this.create(),!this.initialized||e){for(this.deleteCells();this.element.firstChild;)this.element.removeChild(this.element.firstChild);this.table.modExists("frozenColumns")&&this.table.modules.frozenColumns.layoutRow(this),this.generateCells(),this.table.options.virtualDomHoz&&this.table.vdomHoz.initialized?this.table.vdomHoz.initializeRow(this):this.cells.forEach((function(e){t.element.appendChild(e.getElement()),e.cellRendered()})),e&&this.normalizeHeight(),this.table.options.dataTree&&this.table.modExists("dataTree")&&this.table.modules.dataTree.layoutRow(this),"collapse"===this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout")&&this.table.modules.responsiveLayout.layoutRow(this),this.table.options.rowFormatter&&this.table.options.rowFormatter(this.getComponent()),this.table.options.resizableRows&&this.table.modExists("resizeRows")&&this.table.modules.resizeRows.initializeRow(this),this.initialized=!0}else this.table.options.virtualDomHoz&&this.table.vdomHoz.reinitializeRow(this)},Row.prototype.reinitializeHeight=function(){this.heightInitialized=!1,this.element&&null!==this.element.offsetParent&&this.normalizeHeight(!0)},Row.prototype.reinitialize=function(e){this.initialized=!1,this.heightInitialized=!1,this.manualHeight||(this.height=0,this.heightStyled=""),this.element&&null!==this.element.offsetParent&&this.initialize(!0),this.table.options.dataTree&&this.table.modExists("dataTree",!0)&&this.table.modules.dataTree.getTreeChildren(this,!1,!0).forEach((function(e){e.reinitialize(!0)}))},Row.prototype.calcHeight=function(e){var t=0,o=this.table.options.resizableRows?this.element.clientHeight:0;this.cells.forEach((function(e){var o=e.getHeight();o>t&&(t=o)})),this.height=e?Math.max(t,o):this.manualHeight?this.height:Math.max(t,o),this.heightStyled=this.height?this.height+"px":"",this.outerHeight=this.element.offsetHeight},Row.prototype.setCellHeight=function(){this.cells.forEach((function(e){e.setHeight()})),this.heightInitialized=!0},Row.prototype.clearCellHeight=function(){this.cells.forEach((function(e){e.clearHeight()}))},Row.prototype.normalizeHeight=function(e){e&&this.clearCellHeight(),this.calcHeight(e),this.setCellHeight()},Row.prototype.setHeight=function(e,t){(this.height!=e||t)&&(this.manualHeight=!0,this.height=e,this.heightStyled=e?e+"px":"",this.setCellHeight(),this.outerHeight=this.element.offsetHeight)},Row.prototype.getHeight=function(){return this.outerHeight},Row.prototype.getWidth=function(){return this.element.offsetWidth},Row.prototype.deleteCell=function(e){var t=this.cells.indexOf(e);t>-1&&this.cells.splice(t,1)},Row.prototype.setData=function(e){this.table.modExists("mutator")&&(e=this.table.modules.mutator.transformRow(e,"data")),this.data=e,this.table.options.reactiveData&&this.table.modExists("reactiveData",!0)&&this.table.modules.reactiveData.watchRow(this)},Row.prototype.updateData=function(e){var t,o=this,i=this.element&&Tabulator.prototype.helpers.elVisible(this.element),n={};return new Promise((function(r,s){for(var a in"string"==typeof e&&(e=JSON.parse(e)),o.table.options.reactiveData&&o.table.modExists("reactiveData",!0)&&o.table.modules.reactiveData.block(),o.table.modExists("mutator")?(n=Object.assign(n,o.data),n=Object.assign(n,e),t=o.table.modules.mutator.transformRow(n,"data",e)):t=e,t)o.data[a]=t[a];for(var a in o.table.options.reactiveData&&o.table.modExists("reactiveData",!0)&&o.table.modules.reactiveData.unblock(),e){o.table.columnManager.getColumnsByFieldRoot(a).forEach((function(e){var n=o.getCell(e.getField());if(n){var r=e.getFieldValue(t);n.getValue()!=r&&(n.setValueProcessData(r),i&&n.cellRendered())}}))}o.table.options.groupUpdateOnCellEdit&&o.table.options.groupBy&&o.table.modExists("groupRows")&&o.table.modules.groupRows.reassignRowToGroup(o.row),i?(o.normalizeHeight(!0),o.table.options.rowFormatter&&o.table.options.rowFormatter(o.getComponent())):(o.initialized=!1,o.height=0,o.heightStyled=""),!1!==o.table.options.dataTree&&o.table.modExists("dataTree")&&o.table.modules.dataTree.redrawNeeded(e)&&(o.table.modules.dataTree.initializeRow(o),i&&(o.table.modules.dataTree.layoutRow(o),o.table.rowManager.refreshActiveData("tree",!1,!0))),o.table.options.rowUpdated.call(o.table,o.getComponent()),o.table.options.dataChanged&&o.table.options.dataChanged.call(o.table,o.table.rowManager.getData()),r()}))},Row.prototype.getData=function(e){return e&&this.table.modExists("accessor")?this.table.modules.accessor.transformRow(this,e):this.data},Row.prototype.getCell=function(e){return e=this.table.columnManager.findColumn(e),this.cells.find((function(t){return t.column===e}))},Row.prototype.getCellIndex=function(e){return this.cells.findIndex((function(t){return t===e}))},Row.prototype.findNextEditableCell=function(e){var t=!1;if(e0)for(var o=e-1;o>=0;o--){var i=this.cells[o],n=!0;if(i.column.modules.edit&&Tabulator.prototype.helpers.elVisible(i.getElement())&&("function"==typeof i.column.modules.edit.check&&(n=i.column.modules.edit.check(i.getComponent())),n)){t=i;break}}return t},Row.prototype.getCells=function(){return this.cells},Row.prototype.nextRow=function(){return this.table.rowManager.nextDisplayRow(this,!0)||!1},Row.prototype.prevRow=function(){return this.table.rowManager.prevDisplayRow(this,!0)||!1},Row.prototype.moveToRow=function(e,t){var o=this.table.rowManager.findRow(e);o?(this.table.rowManager.moveRowActual(this,o,!t),this.table.rowManager.refreshActiveData("display",!1,!0)):console.warn("Move Error - No matching row found:",e)},Row.prototype.validate=function(){var e=[];return this.cells.forEach((function(t){t.validate()||e.push(t.getComponent())})),!e.length||e},Row.prototype.delete=function(){var e=this;return new Promise((function(t,o){var i,n;e.table.options.history&&e.table.modExists("history")&&(e.table.options.groupBy&&e.table.modExists("groupRows")?(i=(n=e.getGroup().rows).indexOf(e))&&(i=n[i-1]):(i=e.table.rowManager.getRowIndex(e))&&(i=e.table.rowManager.rows[i-1]),e.table.modules.history.action("rowDelete",e,{data:e.getData(),pos:!i,index:i})),e.deleteActual(),t()}))},Row.prototype.deleteActual=function(e){this.table.rowManager.getRowIndex(this);this.detatchModules(),this.table.options.reactiveData&&this.table.modExists("reactiveData",!0),this.modules.group&&this.modules.group.removeRow(this),this.table.rowManager.deleteRow(this,e),this.deleteCells(),this.initialized=!1,this.heightInitialized=!1,this.element=!1,this.table.options.dataTree&&this.table.modExists("dataTree",!0)&&this.table.modules.dataTree.rowDelete(this),this.table.modExists("columnCalcs")&&(this.table.options.groupBy&&this.table.modExists("groupRows")?this.table.modules.columnCalcs.recalcRowGroup(this):this.table.modules.columnCalcs.recalc(this.table.rowManager.activeRows))},Row.prototype.detatchModules=function(){this.table.modExists("selectRow")&&this.table.modules.selectRow._deselectRow(this,!0),this.table.modExists("edit")&&this.table.modules.edit.currentCell.row===this&&this.table.modules.edit.cancelEdit(),this.table.modExists("frozenRows")&&this.table.modules.frozenRows.detachRow(this)},Row.prototype.deleteCells=function(){for(var e=this.cells.length,t=0;t",footerElement:!1,index:"id",textDirection:"auto",keybindings:[],tabEndNewRow:!1,invalidOptionWarnings:!0,clipboard:!1,clipboardCopyStyled:!0,clipboardCopyConfig:!1,clipboardCopyFormatter:!1,clipboardCopyRowRange:"active",clipboardPasteParser:"table",clipboardPasteAction:"insert",clipboardCopied:function(){},clipboardPasted:function(){},clipboardPasteError:function(){},downloadDataFormatter:!1,downloadReady:function(e,t){return t},downloadComplete:!1,downloadConfig:{},downloadRowRange:"active",dataTree:!1,dataTreeFilter:!0,dataTreeSort:!0,dataTreeElementColumn:!1,dataTreeBranchElement:!0,dataTreeChildIndent:9,dataTreeChildField:"_children",dataTreeCollapseElement:!1,dataTreeExpandElement:!1,dataTreeStartExpanded:!1,dataTreeRowExpanded:function(){},dataTreeRowCollapsed:function(){},dataTreeChildColumnCalcs:!1,dataTreeSelectPropagate:!1,printAsHtml:!1,printFormatter:!1,printHeader:!1,printFooter:!1,printCopyStyle:!0,printStyled:!0,printVisibleRows:!0,printRowRange:"visible",printConfig:{},addRowPos:"bottom",selectable:"highlight",selectableRangeMode:"drag",selectableRollingSelection:!0,selectablePersistence:!0,selectableCheck:function(e,t){return!0},headerFilterLiveFilterDelay:300,headerFilterPlaceholder:!1,headerVisible:!0,history:!1,locale:!1,langs:{},virtualDom:!0,virtualDomBuffer:0,virtualDomHoz:!1,persistentLayout:!1,persistentSort:!1,persistentFilter:!1,persistenceID:"",persistenceMode:!0,persistenceReaderFunc:!1,persistenceWriterFunc:!1,persistence:!1,responsiveLayout:!1,responsiveLayoutCollapseStartOpen:!0,responsiveLayoutCollapseUseFormatters:!0,responsiveLayoutCollapseFormatter:!1,pagination:!1,paginationSize:!1,paginationInitialPage:1,paginationButtonCount:5,paginationSizeSelector:!1,paginationElement:!1,paginationDataSent:{},paginationDataReceived:{},paginationAddRow:"page",ajaxURL:!1,ajaxURLGenerator:!1,ajaxParams:{},ajaxConfig:"get",ajaxContentType:"form",ajaxRequestFunc:!1,ajaxLoader:!0,ajaxLoaderLoading:!1,ajaxLoaderError:!1,ajaxFiltering:!1,ajaxSorting:!1,ajaxProgressiveLoad:!1,ajaxProgressiveLoadDelay:0,ajaxProgressiveLoadScrollMargin:0,groupBy:!1,groupStartOpen:!0,groupValues:!1,groupUpdateOnCellEdit:!1,groupHeader:!1,groupHeaderPrint:null,groupHeaderClipboard:null,groupHeaderHtmlOutput:null,groupHeaderDownload:null,htmlOutputConfig:!1,movableColumns:!1,movableRows:!1,movableRowsConnectedTables:!1,movableRowsConnectedElements:!1,movableRowsSender:!1,movableRowsReceiver:"insert",movableRowsSendingStart:function(){},movableRowsSent:function(){},movableRowsSentFailed:function(){},movableRowsSendingStop:function(){},movableRowsReceivingStart:function(){},movableRowsReceived:function(){},movableRowsReceivedFailed:function(){},movableRowsReceivingStop:function(){},movableRowsElementDrop:function(){},scrollToRowPosition:"top",scrollToRowIfVisible:!0,scrollToColumnPosition:"left",scrollToColumnIfVisible:!0,rowFormatter:!1,rowFormatterPrint:null,rowFormatterClipboard:null,rowFormatterHtmlOutput:null,placeholder:!1,tableBuilding:function(){},tableBuilt:function(){},renderStarted:function(){},renderComplete:function(){},rowClick:!1,rowDblClick:!1,rowContext:!1,rowTap:!1,rowDblTap:!1,rowTapHold:!1,rowMouseEnter:!1,rowMouseLeave:!1,rowMouseOver:!1,rowMouseOut:!1,rowMouseMove:!1,rowContextMenu:!1,rowClickMenu:!1,rowAdded:function(){},rowDeleted:function(){},rowMoved:function(){},rowUpdated:function(){},rowSelectionChanged:function(){},rowSelected:function(){},rowDeselected:function(){},rowResized:function(){},cellClick:!1,cellDblClick:!1,cellContext:!1,cellTap:!1,cellDblTap:!1,cellTapHold:!1,cellMouseEnter:!1,cellMouseLeave:!1,cellMouseOver:!1,cellMouseOut:!1,cellMouseMove:!1,cellEditing:function(){},cellEdited:function(){},cellEditCancelled:function(){},columnMoved:!1,columnResized:function(){},columnTitleChanged:function(){},columnVisibilityChanged:function(){},htmlImporting:function(){},htmlImported:function(){},dataLoading:function(){},dataLoaded:function(){},dataEdited:!1,dataChanged:!1,ajaxRequesting:function(){},ajaxResponse:!1,ajaxError:function(){},dataFiltering:!1,dataFiltered:!1,dataSorting:function(){},dataSorted:function(){},groupToggleElement:"arrow",groupClosedShowCalcs:!1,dataGrouping:function(){},dataGrouped:!1,groupVisibilityChanged:function(){},groupClick:!1,groupDblClick:!1,groupContext:!1,groupContextMenu:!1,groupClickMenu:!1,groupTap:!1,groupDblTap:!1,groupTapHold:!1,columnCalcs:!0,pageLoaded:function(){},localized:function(){},validationMode:"blocking",validationFailed:function(){},historyUndo:function(){},historyRedo:function(){},scrollHorizontal:function(){},scrollVertical:function(){}},Tabulator.prototype.initializeOptions=function(e){if(!1!==e.invalidOptionWarnings)for(var t in e)void 0===this.defaultOptions[t]&&console.warn("Invalid table constructor option:",t);for(var t in this.defaultOptions)t in e?this.options[t]=e[t]:Array.isArray(this.defaultOptions[t])?this.options[t]=Object.assign([],this.defaultOptions[t]):"object"===_typeof(this.defaultOptions[t])&&null!==this.defaultOptions[t]?this.options[t]=Object.assign({},this.defaultOptions[t]):this.options[t]=this.defaultOptions[t]},Tabulator.prototype.initializeElement=function(e){return"undefined"!=typeof HTMLElement&&e instanceof HTMLElement?(this.element=e,!0):"string"==typeof e?(this.element=document.querySelector(e),!!this.element||(console.error("Tabulator Creation Error - no element found matching selector: ",e),!1)):(console.error("Tabulator Creation Error - Invalid element provided:",e),!1)},Tabulator.prototype.rtlCheck=function(){var e=window.getComputedStyle(this.element);switch(this.options.textDirection){case"auto":if("rtl"!==e.direction)break;case"rtl":this.element.classList.add("tabulator-rtl"),this.rtl=!0;break;case"ltr":this.element.classList.add("tabulator-ltr");default:this.rtl=!1}},Tabulator.prototype._mapDepricatedFunctionality=function(){(this.options.persistentLayout||this.options.persistentSort||this.options.persistentFilter)&&(this.options.persistence||(this.options.persistence={})),this.options.dataEdited&&(console.warn("DEPRECATION WARNING - dataEdited option has been deprecated, please use the dataChanged option instead"),this.options.dataChanged=this.options.dataEdited),this.options.downloadDataFormatter&&console.warn("DEPRECATION WARNING - downloadDataFormatter option has been deprecated"),void 0!==this.options.clipboardCopyHeader&&(this.options.columnHeaders=this.options.clipboardCopyHeader,console.warn("DEPRECATION WARNING - clipboardCopyHeader option has been deprecated, please use the columnHeaders property on the clipboardCopyConfig option")),!0!==this.options.printVisibleRows&&(console.warn("printVisibleRows option is deprecated, you should now use the printRowRange option"),this.options.persistence.printRowRange="active"),!0!==this.options.printCopyStyle&&(console.warn("printCopyStyle option is deprecated, you should now use the printStyled option"),this.options.persistence.printStyled=this.options.printCopyStyle),this.options.persistentLayout&&(console.warn("persistentLayout option is deprecated, you should now use the persistence option"),!0!==this.options.persistence&&void 0===this.options.persistence.columns&&(this.options.persistence.columns=!0)),this.options.persistentSort&&(console.warn("persistentSort option is deprecated, you should now use the persistence option"),!0!==this.options.persistence&&void 0===this.options.persistence.sort&&(this.options.persistence.sort=!0)),this.options.persistentFilter&&(console.warn("persistentFilter option is deprecated, you should now use the persistence option"),!0!==this.options.persistence&&void 0===this.options.persistence.filter&&(this.options.persistence.filter=!0)),this.options.columnVertAlign&&(console.warn("columnVertAlign option is deprecated, you should now use the columnHeaderVertAlign option"),this.options.columnHeaderVertAlign=this.options.columnVertAlign)},Tabulator.prototype._clearSelection=function(){this.element.classList.add("tabulator-block-select"),window.getSelection?window.getSelection().empty?window.getSelection().empty():window.getSelection().removeAllRanges&&window.getSelection().removeAllRanges():document.selection&&document.selection.empty(),this.element.classList.remove("tabulator-block-select")},Tabulator.prototype._create=function(){this._clearObjectPointers(),this._mapDepricatedFunctionality(),this.bindModules(),this.rtlCheck(),"TABLE"===this.element.tagName&&this.modExists("htmlTableImport",!0)&&this.modules.htmlTableImport.parseTable(),this.columnManager=new ColumnManager(this),this.rowManager=new RowManager(this),this.footerManager=new FooterManager(this),this.columnManager.setRowManager(this.rowManager),this.rowManager.setColumnManager(this.columnManager),this.options.virtualDomHoz&&(this.vdomHoz=new VDomHoz(this)),this._buildElement(),this._loadInitialData()},Tabulator.prototype._clearObjectPointers=function(){this.options.columns=this.options.columns.slice(0),this.options.reactiveData||(this.options.data=this.options.data.slice(0))},Tabulator.prototype._buildElement=function(){var e=this,t=this.element,o=this.modules,i=this.options;for(i.tableBuilding.call(this),t.classList.add("tabulator"),t.setAttribute("role","grid");t.firstChild;)t.removeChild(t.firstChild);for(var n in i.height&&(i.height=isNaN(i.height)?i.height:i.height+"px",t.style.height=i.height),!1!==i.minHeight&&(i.minHeight=isNaN(i.minHeight)?i.minHeight:i.minHeight+"px",t.style.minHeight=i.minHeight),!1!==i.maxHeight&&(i.maxHeight=isNaN(i.maxHeight)?i.maxHeight:i.maxHeight+"px",t.style.maxHeight=i.maxHeight),this.columnManager.initialize(),this.rowManager.initialize(),this._detectBrowser(),this.modExists("layout",!0)&&o.layout.initialize(i.layout),o.localize.initialize(),!1!==i.headerFilterPlaceholder&&o.localize.setHeaderFilterPlaceholder(i.headerFilterPlaceholder),i.langs)o.localize.installLang(n,i.langs[n]);if(o.localize.setLocale(i.locale),"string"==typeof i.placeholder){var r=document.createElement("div");r.classList.add("tabulator-placeholder");var s=document.createElement("span");s.innerHTML=i.placeholder,r.appendChild(s),i.placeholder=r}if(t.appendChild(this.columnManager.getElement()),t.appendChild(this.rowManager.getElement()),i.footerElement&&this.footerManager.activate(),i.persistence&&this.modExists("persistence",!0)&&o.persistence.initialize(),i.movableRows&&this.modExists("moveRow")&&o.moveRow.initialize(),i.autoColumns&&this.options.data&&this.columnManager.generateColumnsFromRowData(this.options.data),this.modExists("columnCalcs")&&o.columnCalcs.initialize(),this.columnManager.setColumns(i.columns),i.dataTree&&this.modExists("dataTree",!0)&&o.dataTree.initialize(),this.modExists("frozenRows")&&this.modules.frozenRows.initialize(),(i.persistence&&this.modExists("persistence",!0)&&o.persistence.config.sort||i.initialSort)&&this.modExists("sort",!0)){var a=[];i.persistence&&this.modExists("persistence",!0)&&o.persistence.config.sort?!1===(a=o.persistence.load("sort"))&&i.initialSort&&(a=i.initialSort):i.initialSort&&(a=i.initialSort),o.sort.setSort(a)}if((i.persistence&&this.modExists("persistence",!0)&&o.persistence.config.filter||i.initialFilter)&&this.modExists("filter",!0)){var l=[];i.persistence&&this.modExists("persistence",!0)&&o.persistence.config.filter?!1===(l=o.persistence.load("filter"))&&i.initialFilter&&(l=i.initialFilter):i.initialFilter&&(l=i.initialFilter),o.filter.setFilter(l)}i.initialHeaderFilter&&this.modExists("filter",!0)&&i.initialHeaderFilter.forEach((function(t){var i=e.columnManager.findColumn(t.field);if(!i)return console.warn("Column Filter Error - No matching column found:",t.field),!1;o.filter.setHeaderFilterValue(i,t.value)})),this.modExists("ajax")&&o.ajax.initialize(),i.pagination&&this.modExists("page",!0)&&o.page.initialize(),i.groupBy&&this.modExists("groupRows",!0)&&o.groupRows.initialize(),this.modExists("keybindings")&&o.keybindings.initialize(),this.modExists("selectRow")&&o.selectRow.clearSelectionData(!0),i.autoResize&&this.modExists("resizeTable")&&o.resizeTable.initialize(),this.modExists("clipboard")&&o.clipboard.initialize(),i.printAsHtml&&this.modExists("print")&&o.print.initialize(),i.tableBuilt.call(this)},Tabulator.prototype._loadInitialData=function(){var e=this;if(e.options.pagination&&e.modExists("page"))if(e.modules.page.reset(!0,!0),"local"==e.options.pagination){if(e.options.data.length)e.rowManager.setData(e.options.data,!1,!0);else{if((e.options.ajaxURL||e.options.ajaxURLGenerator)&&e.modExists("ajax"))return void e.modules.ajax.loadData(!1,!0).then((function(){})).catch((function(){e.options.paginationInitialPage&&e.modules.page.setPage(e.options.paginationInitialPage)}));e.rowManager.setData(e.options.data,!1,!0)}e.options.paginationInitialPage&&e.modules.page.setPage(e.options.paginationInitialPage)}else e.options.ajaxURL?e.modules.page.setPage(e.options.paginationInitialPage).then((function(){})).catch((function(){})):e.rowManager.setData([],!1,!0);else e.options.data.length?e.rowManager.setData(e.options.data):(e.options.ajaxURL||e.options.ajaxURLGenerator)&&e.modExists("ajax")?e.modules.ajax.loadData(!1,!0).then((function(){})).catch((function(){})):e.rowManager.setData(e.options.data,!1,!0)},Tabulator.prototype.destroy=function(){var e=this.element;for(Tabulator.prototype.comms.deregister(this),this.options.reactiveData&&this.modExists("reactiveData",!0)&&this.modules.reactiveData.unwatchData(),this.rowManager.rows.forEach((function(e){e.wipe()})),this.rowManager.rows=[],this.rowManager.activeRows=[],this.rowManager.displayRows=[],this.options.autoResize&&this.modExists("resizeTable")&&this.modules.resizeTable.clearBindings(),this.modExists("keybindings")&&this.modules.keybindings.clearBindings();e.firstChild;)e.removeChild(e.firstChild);e.classList.remove("tabulator")},Tabulator.prototype._detectBrowser=function(){var e=navigator.userAgent||navigator.vendor||window.opera;e.indexOf("Trident")>-1?(this.browser="ie",this.browserSlow=!0):e.indexOf("Edge")>-1?(this.browser="edge",this.browserSlow=!0):e.indexOf("Firefox")>-1?(this.browser="firefox",this.browserSlow=!1):(this.browser="other",this.browserSlow=!1),this.browserMobile=/(android|bb\d+|meego).+mobile|avantgo|bada\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(e)||/1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\-(n|u)|c55\/|capi|ccwa|cdm\-|cell|chtm|cldc|cmd\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\-s|devi|dica|dmob|do(c|p)o|ds(12|\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\-|_)|g1 u|g560|gene|gf\-5|g\-mo|go(\.w|od)|gr(ad|un)|haie|hcit|hd\-(m|p|t)|hei\-|hi(pt|ta)|hp( i|ip)|hs\-c|ht(c(\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\-(20|go|ma)|i230|iac( |\-|\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\/)|klon|kpt |kwc\-|kyo(c|k)|le(no|xi)|lg( g|\/(k|l|u)|50|54|\-[a-w])|libw|lynx|m1\-w|m3ga|m50\/|ma(te|ui|xo)|mc(01|21|ca)|m\-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\-2|po(ck|rt|se)|prox|psio|pt\-g|qa\-a|qc(07|12|21|32|60|\-[2-7]|i\-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\-|oo|p\-)|sdk\/|se(c(\-|0|1)|47|mc|nd|ri)|sgh\-|shar|sie(\-|m)|sk\-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h\-|v\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\-|tdg\-|tel(i|m)|tim\-|t\-mo|to(pl|sh)|ts(70|m\-|m3|m5)|tx\-9|up(\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\-|your|zeto|zte\-/i.test(e.substr(0,4))},Tabulator.prototype.blockRedraw=function(){return this.rowManager.blockRedraw()},Tabulator.prototype.restoreRedraw=function(){return this.rowManager.restoreRedraw()},Tabulator.prototype.setDataFromLocalFile=function(e){var t=this;return new Promise((function(o,i){var n=document.createElement("input");n.type="file",n.accept=e||".json,application/json",n.addEventListener("change",(function(e){var r,s=n.files[0],a=new FileReader;a.readAsText(s),a.onload=function(e){try{r=JSON.parse(a.result)}catch(e){return console.warn("File Load Error - File contents is invalid JSON",e),void i(e)}t.setData(r).then((function(e){o(e)})).catch((function(e){o(e)}))},a.onerror=function(e){console.warn("File Load Error - Unable to read file"),i()}})),n.click()}))},Tabulator.prototype.setData=function(e,t,o){return this.modExists("ajax")&&this.modules.ajax.blockActiveRequest(),this._setData(e,t,o,!1,!0)},Tabulator.prototype._setData=function(e,t,o,i,n){var r=this;return"string"!=typeof e?e?r.rowManager.setData(e,i,n):r.modExists("ajax")&&(r.modules.ajax.getUrl||r.options.ajaxURLGenerator)?"remote"==r.options.pagination&&r.modExists("page",!0)?(r.modules.page.reset(!0,!0),r.modules.page.setPage(1)):r.modules.ajax.loadData(i,n):r.rowManager.setData([],i,n):0==e.indexOf("{")||0==e.indexOf("[")?r.rowManager.setData(JSON.parse(e),i,n):r.modExists("ajax",!0)?(t&&r.modules.ajax.setParams(t),o&&r.modules.ajax.setConfig(o),r.modules.ajax.setUrl(e),"remote"==r.options.pagination&&r.modExists("page",!0)?(r.modules.page.reset(!0,!0),r.modules.page.setPage(1)):r.modules.ajax.loadData(i,n)):void 0},Tabulator.prototype.clearData=function(){this.modExists("ajax")&&this.modules.ajax.blockActiveRequest(),this.rowManager.clearData()},Tabulator.prototype.getData=function(e){return!0===e&&(console.warn("passing a boolean to the getData function is deprecated, you should now pass the string 'active'"),e="active"),this.rowManager.getData(e)},Tabulator.prototype.getDataCount=function(e){return!0===e&&(console.warn("passing a boolean to the getDataCount function is deprecated, you should now pass the string 'active'"),e="active"),this.rowManager.getDataCount(e)},Tabulator.prototype.searchRows=function(e,t,o){if(this.modExists("filter",!0))return this.modules.filter.search("rows",e,t,o)},Tabulator.prototype.searchData=function(e,t,o){if(this.modExists("filter",!0))return this.modules.filter.search("data",e,t,o)},Tabulator.prototype.getHtml=function(e,t,o){if(this.modExists("export",!0))return this.modules.export.getHtml(e,t,o)},Tabulator.prototype.print=function(e,t,o){if(this.modExists("print",!0))return this.modules.print.printFullscreen(e,t,o)},Tabulator.prototype.getAjaxUrl=function(){if(this.modExists("ajax",!0))return this.modules.ajax.getUrl()},Tabulator.prototype.replaceData=function(e,t,o){return this.modExists("ajax")&&this.modules.ajax.blockActiveRequest(),this._setData(e,t,o,!0)},Tabulator.prototype.updateData=function(e){var t=this,o=this,i=0;return new Promise((function(n,r){t.modExists("ajax")&&t.modules.ajax.blockActiveRequest(),"string"==typeof e&&(e=JSON.parse(e)),e?e.forEach((function(e){var t=o.rowManager.findRow(e[o.options.index]);t&&(i++,t.updateData(e).then((function(){--i||n()})))})):(console.warn("Update Error - No data provided"),r("Update Error - No data provided"))}))},Tabulator.prototype.addData=function(e,t,o){var i=this;return new Promise((function(n,r){i.modExists("ajax")&&i.modules.ajax.blockActiveRequest(),"string"==typeof e&&(e=JSON.parse(e)),e?i.rowManager.addRows(e,t,o).then((function(e){var t=[];e.forEach((function(e){t.push(e.getComponent())})),n(t)})):(console.warn("Update Error - No data provided"),r("Update Error - No data provided"))}))},Tabulator.prototype.updateOrAddData=function(e){var t=this,o=this,i=[],n=0;return new Promise((function(r,s){t.modExists("ajax")&&t.modules.ajax.blockActiveRequest(),"string"==typeof e&&(e=JSON.parse(e)),e?e.forEach((function(e){var t=o.rowManager.findRow(e[o.options.index]);n++,t?t.updateData(e).then((function(){n--,i.push(t.getComponent()),n||r(i)})):o.rowManager.addRows(e).then((function(e){n--,i.push(e[0].getComponent()),n||r(i)}))})):(console.warn("Update Error - No data provided"),s("Update Error - No data provided"))}))},Tabulator.prototype.getRow=function(e){var t=this.rowManager.findRow(e);return t?t.getComponent():(console.warn("Find Error - No matching row found:",e),!1)},Tabulator.prototype.getRowFromPosition=function(e,t){var o=this.rowManager.getRowFromPosition(e,t);return o?o.getComponent():(console.warn("Find Error - No matching row found:",e),!1)},Tabulator.prototype.deleteRow=function(e){var t=this;return new Promise((function(o,i){var n=t,r=0,s=0,a=[];function l(){++r==e.length&&s&&(n.rowManager.reRenderInPosition(),o())}Array.isArray(e)||(e=[e]),e.forEach((function(e){var o=t.rowManager.findRow(e,!0);o?a.push(o):(console.warn("Delete Error - No matching row found:",e),i("Delete Error - No matching row found"),l())})),a.sort((function(e,o){return t.rowManager.rows.indexOf(e)>t.rowManager.rows.indexOf(o)?1:-1})),a.forEach((function(e){e.delete().then((function(){s++,l()})).catch((function(e){l(),i(e)}))}))}))},Tabulator.prototype.addRow=function(e,t,o){var i=this;return new Promise((function(n,r){"string"==typeof e&&(e=JSON.parse(e)),i.rowManager.addRows(e,t,o).then((function(e){i.modExists("columnCalcs")&&i.modules.columnCalcs.recalc(i.rowManager.activeRows),n(e[0].getComponent())}))}))},Tabulator.prototype.updateOrAddRow=function(e,t){var o=this;return new Promise((function(i,n){var r=o.rowManager.findRow(e);"string"==typeof t&&(t=JSON.parse(t)),r?r.updateData(t).then((function(){o.modExists("columnCalcs")&&o.modules.columnCalcs.recalc(o.rowManager.activeRows),i(r.getComponent())})).catch((function(e){n(e)})):r=o.rowManager.addRows(t).then((function(e){o.modExists("columnCalcs")&&o.modules.columnCalcs.recalc(o.rowManager.activeRows),i(e[0].getComponent())})).catch((function(e){n(e)}))}))},Tabulator.prototype.updateRow=function(e,t){var o=this;return new Promise((function(i,n){var r=o.rowManager.findRow(e);"string"==typeof t&&(t=JSON.parse(t)),r?r.updateData(t).then((function(){i(r.getComponent())})).catch((function(e){n(e)})):(console.warn("Update Error - No matching row found:",e),n("Update Error - No matching row found"))}))},Tabulator.prototype.scrollToRow=function(e,t,o){var i=this;return new Promise((function(n,r){var s=i.rowManager.findRow(e);s?i.rowManager.scrollToRow(s,t,o).then((function(){n()})).catch((function(e){r(e)})):(console.warn("Scroll Error - No matching row found:",e),r("Scroll Error - No matching row found"))}))},Tabulator.prototype.moveRow=function(e,t,o){var i=this.rowManager.findRow(e);i?i.moveToRow(t,o):console.warn("Move Error - No matching row found:",e)},Tabulator.prototype.getRows=function(e){return!0===e&&(console.warn("passing a boolean to the getRows function is deprecated, you should now pass the string 'active'"),e="active"),this.rowManager.getComponents(e)},Tabulator.prototype.getRowPosition=function(e,t){var o=this.rowManager.findRow(e);return o?this.rowManager.getRowPosition(o,t):(console.warn("Position Error - No matching row found:",e),!1)},Tabulator.prototype.copyToClipboard=function(e){this.modExists("clipboard",!0)&&this.modules.clipboard.copy(e)},Tabulator.prototype.setColumns=function(e){this.columnManager.setColumns(e)},Tabulator.prototype.getColumns=function(e){return this.columnManager.getComponents(e)},Tabulator.prototype.getColumn=function(e){var t=this.columnManager.findColumn(e);return t?t.getComponent():(console.warn("Find Error - No matching column found:",e),!1)},Tabulator.prototype.getColumnDefinitions=function(){return this.columnManager.getDefinitionTree()},Tabulator.prototype.getColumnLayout=function(){if(this.modExists("persistence",!0))return this.modules.persistence.parseColumns(this.columnManager.getColumns())},Tabulator.prototype.setColumnLayout=function(e){return!!this.modExists("persistence",!0)&&(this.columnManager.setColumns(this.modules.persistence.mergeDefinition(this.options.columns,e)),!0)},Tabulator.prototype.showColumn=function(e){var t=this.columnManager.findColumn(e);if(!t)return console.warn("Column Show Error - No matching column found:",e),!1;t.show(),this.options.responsiveLayout&&this.modExists("responsiveLayout",!0)&&this.modules.responsiveLayout.update()},Tabulator.prototype.hideColumn=function(e){var t=this.columnManager.findColumn(e);if(!t)return console.warn("Column Hide Error - No matching column found:",e),!1;t.hide(),this.options.responsiveLayout&&this.modExists("responsiveLayout",!0)&&this.modules.responsiveLayout.update()},Tabulator.prototype.toggleColumn=function(e){var t=this.columnManager.findColumn(e);if(!t)return console.warn("Column Visibility Toggle Error - No matching column found:",e),!1;t.visible?t.hide():t.show()},Tabulator.prototype.addColumn=function(e,t,o){var i=this;return new Promise((function(n,r){var s=i.columnManager.findColumn(o);i.columnManager.addColumn(e,t,s).then((function(e){n(e.getComponent())})).catch((function(e){r(e)}))}))},Tabulator.prototype.deleteColumn=function(e){var t=this;return new Promise((function(o,i){var n=t.columnManager.findColumn(e);n?n.delete().then((function(){o()})).catch((function(e){i(e)})):(console.warn("Column Delete Error - No matching column found:",e),i())}))},Tabulator.prototype.updateColumnDefinition=function(e,t){var o=this;return new Promise((function(i,n){var r=o.columnManager.findColumn(e);r?r.updateDefinition(t).then((function(e){i(e)})).catch((function(e){n(e)})):(console.warn("Column Update Error - No matching column found:",e),n())}))},Tabulator.prototype.moveColumn=function(e,t,o){var i=this.columnManager.findColumn(e),n=this.columnManager.findColumn(t);i?n?this.columnManager.moveColumn(i,n,o):console.warn("Move Error - No matching column found:",n):console.warn("Move Error - No matching column found:",e)},Tabulator.prototype.scrollToColumn=function(e,t,o){var i=this;return new Promise((function(n,r){var s=i.columnManager.findColumn(e);s?i.columnManager.scrollToColumn(s,t,o).then((function(){n()})).catch((function(e){r(e)})):(console.warn("Scroll Error - No matching column found:",e),r("Scroll Error - No matching column found"))}))},Tabulator.prototype.setLocale=function(e){this.modules.localize.setLocale(e)},Tabulator.prototype.getLocale=function(){return this.modules.localize.getLocale()},Tabulator.prototype.getLang=function(e){return this.modules.localize.getLang(e)},Tabulator.prototype.redraw=function(e){this.columnManager.redraw(e),this.rowManager.redraw(e)},Tabulator.prototype.setHeight=function(e){"classic"!==this.rowManager.renderMode?(this.options.height=isNaN(e)?e:e+"px",this.element.style.height=this.options.height,this.rowManager.setRenderMode(),this.rowManager.redraw()):console.warn("setHeight function is not available in classic render mode")},Tabulator.prototype.setSort=function(e,t){this.modExists("sort",!0)&&(this.modules.sort.setSort(e,t),this.rowManager.sorterRefresh())},Tabulator.prototype.getSorters=function(){if(this.modExists("sort",!0))return this.modules.sort.getSort()},Tabulator.prototype.clearSort=function(){this.modExists("sort",!0)&&(this.modules.sort.clear(),this.rowManager.sorterRefresh())},Tabulator.prototype.setFilter=function(e,t,o,i){this.modExists("filter",!0)&&(this.modules.filter.setFilter(e,t,o,i),this.rowManager.filterRefresh())},Tabulator.prototype.refreshFilter=function(){this.modExists("filter",!0)&&this.rowManager.filterRefresh()},Tabulator.prototype.addFilter=function(e,t,o,i){this.modExists("filter",!0)&&(this.modules.filter.addFilter(e,t,o,i),this.rowManager.filterRefresh())},Tabulator.prototype.getFilters=function(e){if(this.modExists("filter",!0))return this.modules.filter.getFilters(e)},Tabulator.prototype.setHeaderFilterFocus=function(e){if(this.modExists("filter",!0)){var t=this.columnManager.findColumn(e);if(!t)return console.warn("Column Filter Focus Error - No matching column found:",e),!1;this.modules.filter.setHeaderFilterFocus(t)}},Tabulator.prototype.getHeaderFilterValue=function(e){if(this.modExists("filter",!0)){var t=this.columnManager.findColumn(e);if(t)return this.modules.filter.getHeaderFilterValue(t);console.warn("Column Filter Error - No matching column found:",e)}},Tabulator.prototype.setHeaderFilterValue=function(e,t){if(this.modExists("filter",!0)){var o=this.columnManager.findColumn(e);if(!o)return console.warn("Column Filter Error - No matching column found:",e),!1;this.modules.filter.setHeaderFilterValue(o,t)}},Tabulator.prototype.getHeaderFilters=function(){if(this.modExists("filter",!0))return this.modules.filter.getHeaderFilters()},Tabulator.prototype.removeFilter=function(e,t,o){this.modExists("filter",!0)&&(this.modules.filter.removeFilter(e,t,o),this.rowManager.filterRefresh())},Tabulator.prototype.clearFilter=function(e){this.modExists("filter",!0)&&(this.modules.filter.clearFilter(e),this.rowManager.filterRefresh())},Tabulator.prototype.clearHeaderFilter=function(){this.modExists("filter",!0)&&(this.modules.filter.clearHeaderFilter(),this.rowManager.filterRefresh())},Tabulator.prototype.selectRow=function(e){this.modExists("selectRow",!0)&&(!0===e&&(console.warn("passing a boolean to the selectRowselectRow function is deprecated, you should now pass the string 'active'"),e="active"),this.modules.selectRow.selectRows(e))},Tabulator.prototype.deselectRow=function(e){this.modExists("selectRow",!0)&&this.modules.selectRow.deselectRows(e)},Tabulator.prototype.toggleSelectRow=function(e){this.modExists("selectRow",!0)&&this.modules.selectRow.toggleRow(e)},Tabulator.prototype.getSelectedRows=function(){if(this.modExists("selectRow",!0))return this.modules.selectRow.getSelectedRows()},Tabulator.prototype.getSelectedData=function(){if(this.modExists("selectRow",!0))return this.modules.selectRow.getSelectedData()},Tabulator.prototype.getInvalidCells=function(){if(this.modExists("validate",!0))return this.modules.validate.getInvalidCells()},Tabulator.prototype.clearCellValidation=function(e){var t=this;this.modExists("validate",!0)&&(e||(e=this.modules.validate.getInvalidCells()),Array.isArray(e)||(e=[e]),e.forEach((function(e){t.modules.validate.clearValidation(e._getSelf())})))},Tabulator.prototype.validate=function(e){var t=[];return this.rowManager.rows.forEach((function(e){var o=e.validate();!0!==o&&(t=t.concat(o))})),!t.length||t},Tabulator.prototype.setMaxPage=function(e){if(!this.options.pagination||!this.modExists("page"))return!1;this.modules.page.setMaxPage(e)},Tabulator.prototype.setPage=function(e){return this.options.pagination&&this.modExists("page")?this.modules.page.setPage(e):new Promise((function(e,t){t()}))},Tabulator.prototype.setPageToRow=function(e){var t=this;return new Promise((function(o,i){t.options.pagination&&t.modExists("page")&&(e=t.rowManager.findRow(e))?t.modules.page.setPageToRow(e).then((function(){o()})).catch((function(){i()})):i()}))},Tabulator.prototype.setPageSize=function(e){if(!this.options.pagination||!this.modExists("page"))return!1;this.modules.page.setPageSize(e),this.modules.page.setPage(1).then((function(){})).catch((function(){}))},Tabulator.prototype.getPageSize=function(){if(this.options.pagination&&this.modExists("page",!0))return this.modules.page.getPageSize()},Tabulator.prototype.previousPage=function(){if(!this.options.pagination||!this.modExists("page"))return!1;this.modules.page.previousPage()},Tabulator.prototype.nextPage=function(){if(!this.options.pagination||!this.modExists("page"))return!1;this.modules.page.nextPage()},Tabulator.prototype.getPage=function(){return!(!this.options.pagination||!this.modExists("page"))&&this.modules.page.getPage()},Tabulator.prototype.getPageMax=function(){return!(!this.options.pagination||!this.modExists("page"))&&this.modules.page.getPageMax()},Tabulator.prototype.setGroupBy=function(e){if(!this.modExists("groupRows",!0))return!1;this.options.groupBy=e,this.modules.groupRows.initialize(),this.rowManager.refreshActiveData("display"),this.options.persistence&&this.modExists("persistence",!0)&&this.modules.persistence.config.group&&this.modules.persistence.save("group")},Tabulator.prototype.setGroupValues=function(e){if(!this.modExists("groupRows",!0))return!1;this.options.groupValues=e,this.modules.groupRows.initialize(),this.rowManager.refreshActiveData("display"),this.options.persistence&&this.modExists("persistence",!0)&&this.modules.persistence.config.group&&this.modules.persistence.save("group")},Tabulator.prototype.setGroupStartOpen=function(e){if(!this.modExists("groupRows",!0))return!1;this.options.groupStartOpen=e,this.modules.groupRows.initialize(),this.options.groupBy?(this.rowManager.refreshActiveData("group"),this.options.persistence&&this.modExists("persistence",!0)&&this.modules.persistence.config.group&&this.modules.persistence.save("group")):console.warn("Grouping Update - cant refresh view, no groups have been set")},Tabulator.prototype.setGroupHeader=function(e){if(!this.modExists("groupRows",!0))return!1;this.options.groupHeader=e,this.modules.groupRows.initialize(),this.options.groupBy?(this.rowManager.refreshActiveData("group"),this.options.persistence&&this.modExists("persistence",!0)&&this.modules.persistence.config.group&&this.modules.persistence.save("group")):console.warn("Grouping Update - cant refresh view, no groups have been set")},Tabulator.prototype.getGroups=function(e){return!!this.modExists("groupRows",!0)&&this.modules.groupRows.getGroups(!0)},Tabulator.prototype.getGroupedData=function(){if(this.modExists("groupRows",!0))return this.options.groupBy?this.modules.groupRows.getGroupedData():this.getData()},Tabulator.prototype.getEditedCells=function(){if(this.modExists("edit",!0))return this.modules.edit.getEditedCells()},Tabulator.prototype.clearCellEdited=function(e){var t=this;this.modExists("edit",!0)&&(e||(e=this.modules.edit.getEditedCells()),Array.isArray(e)||(e=[e]),e.forEach((function(e){t.modules.edit.clearEdited(e._getSelf())})))},Tabulator.prototype.getCalcResults=function(){return!!this.modExists("columnCalcs",!0)&&this.modules.columnCalcs.getResults()},Tabulator.prototype.recalc=function(){this.modExists("columnCalcs",!0)&&this.modules.columnCalcs.recalcAll(this.rowManager.activeRows)},Tabulator.prototype.navigatePrev=function(){var e=!1;return!(!this.modExists("edit",!0)||!(e=this.modules.edit.currentCell))&&e.nav().prev()},Tabulator.prototype.navigateNext=function(){var e=!1;return!(!this.modExists("edit",!0)||!(e=this.modules.edit.currentCell))&&e.nav().next()},Tabulator.prototype.navigateLeft=function(){var t=!1;return!(!this.modExists("edit",!0)||!(t=this.modules.edit.currentCell))&&(e.preventDefault(),t.nav().left())},Tabulator.prototype.navigateRight=function(){var t=!1;return!(!this.modExists("edit",!0)||!(t=this.modules.edit.currentCell))&&(e.preventDefault(),t.nav().right())},Tabulator.prototype.navigateUp=function(){var t=!1;return!(!this.modExists("edit",!0)||!(t=this.modules.edit.currentCell))&&(e.preventDefault(),t.nav().up())},Tabulator.prototype.navigateDown=function(){var t=!1;return!(!this.modExists("edit",!0)||!(t=this.modules.edit.currentCell))&&(e.preventDefault(),t.nav().down())},Tabulator.prototype.undo=function(){return!(!this.options.history||!this.modExists("history",!0))&&this.modules.history.undo()},Tabulator.prototype.redo=function(){return!(!this.options.history||!this.modExists("history",!0))&&this.modules.history.redo()},Tabulator.prototype.getHistoryUndoSize=function(){return!(!this.options.history||!this.modExists("history",!0))&&this.modules.history.getHistoryUndoSize()},Tabulator.prototype.getHistoryRedoSize=function(){return!(!this.options.history||!this.modExists("history",!0))&&this.modules.history.getHistoryRedoSize()},Tabulator.prototype.clearHistory=function(){return!(!this.options.history||!this.modExists("history",!0))&&this.modules.history.clear()},Tabulator.prototype.download=function(e,t,o,i){this.modExists("download",!0)&&this.modules.download.download(e,t,o,i)},Tabulator.prototype.downloadToTab=function(e,t,o,i){this.modExists("download",!0)&&this.modules.download.download(e,t,o,i,!0)},Tabulator.prototype.tableComms=function(e,t,o,i){this.modules.comms.receive(e,t,o,i)},Tabulator.prototype.moduleBindings={},Tabulator.prototype.extendModule=function(e,t,o){if(Tabulator.prototype.moduleBindings[e]){var i=Tabulator.prototype.moduleBindings[e].prototype[t];if(i)if("object"==(void 0===o?"undefined":_typeof(o)))for(var n in o)i[n]=o[n];else console.warn("Module Error - Invalid value type, it must be an object");else console.warn("Module Error - property does not exist:",t)}else console.warn("Module Error - module does not exist:",e)},Tabulator.prototype.registerModule=function(e,t){Tabulator.prototype.moduleBindings[e]=t},Tabulator.prototype.bindModules=function(){for(var e in this.modules={},Tabulator.prototype.moduleBindings)this.modules[e]=new Tabulator.prototype.moduleBindings[e](this)},Tabulator.prototype.modExists=function(e,t){return!!this.modules[e]||(t&&console.error("Tabulator Module Not Installed: "+e),!1)},Tabulator.prototype.helpers={elVisible:function(e){return!(e.offsetWidth<=0&&e.offsetHeight<=0)},elOffset:function(e){var t=e.getBoundingClientRect();return{top:t.top+window.pageYOffset-document.documentElement.clientTop,left:t.left+window.pageXOffset-document.documentElement.clientLeft}},deepClone:function(e){var t=Object.assign(Array.isArray(e)?[]:{},e);for(var o in e)null!=e[o]&&"object"===_typeof(e[o])&&(e[o]instanceof Date?t[o]=new Date(e[o]):t[o]=this.deepClone(e[o]));return t}},Tabulator.prototype.comms={tables:[],register:function(e){Tabulator.prototype.comms.tables.push(e)},deregister:function(e){var t=Tabulator.prototype.comms.tables.indexOf(e);t>-1&&Tabulator.prototype.comms.tables.splice(t,1)},lookupTable:function(e,t){var o,i,n=[];if("string"==typeof e){if((o=document.querySelectorAll(e)).length)for(var r=0;r0?r.setWidth(n):r.reinitializeWidth()):this.table.options.responsiveLayout&&this.table.modExists("responsiveLayout",!0)&&this.table.modules.responsiveLayout.update()},fitColumns:function(e){var t,o,i=this.table.element.clientWidth,n=0,r=0,s=0,a=[],l=[],u=0,c=0;function d(e){return"string"==typeof e?e.indexOf("%")>-1?i/100*parseInt(e):parseInt(e):e}function h(e,t,o,i){var n=[],r=0,a=0,l=0,u=s,c=0,p=0,m=[];function f(e){return o*(e.column.definition.widthGrow||1)}function g(e){return d(e.width)-o*(e.column.definition.widthShrink||0)}return e.forEach((function(e,r){var s=i?g(e):f(e);e.column.minWidth>=s?n.push(e):e.column.maxWidth&&e.column.maxWidththis.table.rowManager.element.clientHeight&&(i-=this.table.rowManager.element.offsetWidth-this.table.rowManager.element.clientWidth),e.forEach((function(e){var t,o,i;e.visible&&(t=e.definition.width,o=parseInt(e.minWidth),t?(i=d(t),n+=i>o?i:o,e.definition.widthShrink&&(l.push({column:e,width:i>o?i:o}),u+=e.definition.widthShrink)):(a.push({column:e,width:0}),s+=e.definition.widthGrow||1))})),r=i-n,t=Math.floor(r/s);c=h(a,r,t,!1);a.length&&c>0&&(a[a.length-1].width+=+c),a.forEach((function(e){r-=e.width})),(o=Math.abs(c)+r)>0&&u&&(c=h(l,o,Math.floor(o/u),!0)),l.length&&(l[l.length-1].width-=c),a.forEach((function(e){e.column.setWidth(e.width)})),l.forEach((function(e){e.column.setWidth(e.width)}))}},Tabulator.prototype.registerModule("layout",Layout);var Localize=function(e){this.table=e,this.locale="default",this.lang=!1,this.bindings={},this.langList={}};Localize.prototype.initialize=function(){this.langList=Tabulator.prototype.helpers.deepClone(this.langs)},Localize.prototype.setHeaderFilterPlaceholder=function(e){this.langList.default.headerFilters.default=e},Localize.prototype.setHeaderFilterColumnPlaceholder=function(e,t){this.langList.default.headerFilters.columns[e]=t,this.lang&&!this.lang.headerFilters.columns[e]&&(this.lang.headerFilters.columns[e]=t)},Localize.prototype.installLang=function(e,t){this.langList[e]?this._setLangProp(this.langList[e],t):this.langList[e]=t},Localize.prototype._setLangProp=function(e,t){for(var o in t)e[o]&&"object"==_typeof(e[o])?this._setLangProp(e[o],t[o]):e[o]=t[o]},Localize.prototype.setLocale=function(e){var t=this;if(!0===(e=e||"default")&&navigator.language&&(e=navigator.language.toLowerCase()),e&&!t.langList[e]){var o=e.split("-")[0];t.langList[o]?(console.warn("Localization Error - Exact matching locale not found, using closest match: ",e,o),e=o):(console.warn("Localization Error - Matching locale not found, using default: ",e),e="default")}t.locale=e,t.lang=Tabulator.prototype.helpers.deepClone(t.langList.default||{}),"default"!=e&&function e(t,o){for(var i in t)"object"==_typeof(t[i])?(o[i]||(o[i]={}),e(t[i],o[i])):o[i]=t[i]}(t.langList[e],t.lang),t.table.options.localized.call(t.table,t.locale,t.lang),t._executeBindings()},Localize.prototype.getLocale=function(e){return self.locale},Localize.prototype.getLang=function(e){return e?this.langList[e]:this.lang},Localize.prototype.getText=function(e,t){var o=(e=t?e+"|"+t:e).split("|");return this._getLangElement(o,this.locale)||""},Localize.prototype._getLangElement=function(e,t){var o=this.lang;return e.forEach((function(e){var t;o&&(t=o[e],o=void 0!==t&&t)})),o},Localize.prototype.bind=function(e,t){this.bindings[e]||(this.bindings[e]=[]),this.bindings[e].push(t),t(this.getText(e),this.lang)},Localize.prototype._executeBindings=function(){var e=this,t=function(t){e.bindings[t].forEach((function(o){o(e.getText(t),e.lang)}))};for(var o in e.bindings)t(o)},Localize.prototype.langs={default:{groups:{item:"item",items:"items"},columns:{},ajax:{loading:"Loading",error:"Error"},pagination:{page_size:"Page Size",page_title:"Show Page",first:"First",first_title:"First Page",last:"Last",last_title:"Last Page",prev:"Prev",prev_title:"Prev Page",next:"Next",next_title:"Next Page",all:"All"},headerFilters:{default:"filter column...",columns:{}}}},Tabulator.prototype.registerModule("localize",Localize);var Comms=function(e){this.table=e};Comms.prototype.getConnections=function(e){var t=this,o=[];return Tabulator.prototype.comms.lookupTable(e).forEach((function(e){t.table!==e&&o.push(e)})),o},Comms.prototype.send=function(e,t,o,i){var n=this,r=this.getConnections(e);r.forEach((function(e){e.tableComms(n.table.element,t,o,i)})),!r.length&&e&&console.warn("Table Connection Error - No tables matching selector found",e)},Comms.prototype.receive=function(e,t,o,i){if(this.table.modExists(t))return this.table.modules[t].commsReceived(e,o,i);console.warn("Inter-table Comms Error - no such module:",t)},Tabulator.prototype.registerModule("comms",Comms);_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};var Sort=function(e){this.table=e,this.sortList=[],this.changed=!1};Sort.prototype.initializeColumn=function(e,t){var o,i,n=this,r=!1;switch(_typeof(e.definition.sorter)){case"string":n.sorters[e.definition.sorter]?r=n.sorters[e.definition.sorter]:console.warn("Sort Error - No such sorter found: ",e.definition.sorter);break;case"function":r=e.definition.sorter}e.modules.sort={sorter:r,dir:"none",params:e.definition.sorterParams||{},startingDir:e.definition.headerSortStartingDir||"asc",tristate:void 0!==e.definition.headerSortTristate?e.definition.headerSortTristate:this.table.options.headerSortTristate},(void 0===e.definition.headerSort?!1!==this.table.options.headerSort:!1!==e.definition.headerSort)&&((o=e.getElement()).classList.add("tabulator-sortable"),(i=document.createElement("div")).classList.add("tabulator-col-sorter"),"object"==_typeof(this.table.options.headerSortElement)?i.appendChild(this.table.options.headerSortElement):i.innerHTML=this.table.options.headerSortElement,t.appendChild(i),e.modules.sort.element=i,o.addEventListener("click",(function(t){var o="",i=[],r=!1;if(e.modules.sort){if(e.modules.sort.tristate)o="none"==e.modules.sort.dir?e.modules.sort.startingDir:e.modules.sort.dir==e.modules.sort.startingDir?"asc"==e.modules.sort.dir?"desc":"asc":"none";else switch(e.modules.sort.dir){case"asc":o="desc";break;case"desc":o="asc";break;default:o=e.modules.sort.startingDir}n.table.options.columnHeaderSortMulti&&(t.shiftKey||t.ctrlKey)?(r=(i=n.getSort()).findIndex((function(t){return t.field===e.getField()})),r>-1?(i[r].dir=o,r!=i.length-1&&(r=i.splice(r,1)[0],"none"!=o&&i.push(r))):"none"!=o&&i.push({column:e,dir:o}),n.setSort(i)):"none"==o?n.clear():n.setSort(e,o),n.table.rowManager.sorterRefresh(!n.sortList.length)}})))},Sort.prototype.hasChanged=function(){var e=this.changed;return this.changed=!1,e},Sort.prototype.getSort=function(){var e=[];return this.sortList.forEach((function(t){t.column&&e.push({column:t.column.getComponent(),field:t.column.getField(),dir:t.dir})})),e},Sort.prototype.setSort=function(e,t){var o=this,i=[];Array.isArray(e)||(e=[{column:e,dir:t}]),e.forEach((function(e){var t;(t=o.table.columnManager.findColumn(e.column))?(e.column=t,i.push(e),o.changed=!0):console.warn("Sort Warning - Sort field does not exist and is being ignored: ",e.column)})),o.sortList=i,this.table.options.persistence&&this.table.modExists("persistence",!0)&&this.table.modules.persistence.config.sort&&this.table.modules.persistence.save("sort")},Sort.prototype.clear=function(){this.setSort([])},Sort.prototype.findSorter=function(e){var t,o=this.table.rowManager.activeRows[0],i="string";if(o&&(o=o.getData(),e.getField()))switch(void 0===(t=e.getFieldValue(o))?"undefined":_typeof(t)){case"undefined":i="string";break;case"boolean":i="boolean";break;default:isNaN(t)||""===t?t.match(/((^[0-9]+[a-z]+)|(^[a-z]+[0-9]+))+$/i)&&(i="alphanum"):i="number"}return this.sorters[i]},Sort.prototype.sort=function(e){var t=this,o=this.table.options.sortOrderReverse?t.sortList.slice().reverse():t.sortList,i=[],n=[];t.table.options.dataSorting&&t.table.options.dataSorting.call(t.table,t.getSort()),t.clearColumnHeaders(),t.table.options.ajaxSorting?o.forEach((function(e,o){t.setColumnHeader(e.column,e.dir)})):(o.forEach((function(e,o){var n=e.column.modules.sort;e.column&&n&&(n.sorter||(n.sorter=t.findSorter(e.column)),e.params="function"==typeof n.params?n.params(e.column.getComponent(),e.dir):n.params,i.push(e)),t.setColumnHeader(e.column,e.dir)})),i.length&&t._sortItems(e,i)),t.table.options.dataSorted&&(e.forEach((function(e){n.push(e.getComponent())})),t.table.options.dataSorted.call(t.table,t.getSort(),n))},Sort.prototype.clearColumnHeaders=function(){this.table.columnManager.getRealColumns().forEach((function(e){e.modules.sort&&(e.modules.sort.dir="none",e.getElement().setAttribute("aria-sort","none"))}))},Sort.prototype.setColumnHeader=function(e,t){e.modules.sort.dir=t,e.getElement().setAttribute("aria-sort",t)},Sort.prototype._sortItems=function(e,t){var o=this,i=t.length-1;e.sort((function(e,n){for(var r,s=i;s>=0;s--){var a=t[s];if(0!==(r=o._sortRow(e,n,a.column,a.dir,a.params)))break}return r}))},Sort.prototype._sortRow=function(e,t,o,i,n){var r,s,a="asc"==i?e:t,l="asc"==i?t:e;return e=void 0!==(e=o.getFieldValue(a.getData()))?e:"",t=void 0!==(t=o.getFieldValue(l.getData()))?t:"",r=a.getComponent(),s=l.getComponent(),o.modules.sort.sorter.call(this,e,t,r,s,o.getComponent(),i,n)},Sort.prototype.sorters={number:function(e,t,o,i,n,r,s){var a=s.alignEmptyValues,l=s.decimalSeparator,u=s.thousandSeparator,c=0;if(e=String(e),t=String(t),u&&(e=e.split(u).join(""),t=t.split(u).join("")),l&&(e=e.split(l).join("."),t=t.split(l).join(".")),e=parseFloat(e),t=parseFloat(t),isNaN(e))c=isNaN(t)?0:-1;else{if(!isNaN(t))return e-t;c=1}return("top"===a&&"desc"===r||"bottom"===a&&"asc"===r)&&(c*=-1),c},string:function(e,t,o,i,n,r,s){var a,l=s.alignEmptyValues,u=0;if(e){if(t){switch(_typeof(s.locale)){case"boolean":s.locale&&(a=this.table.modules.localize.getLocale());break;case"string":a=s.locale}return String(e).toLowerCase().localeCompare(String(t).toLowerCase(),a)}u=1}else u=t?-1:0;return("top"===l&&"desc"===r||"bottom"===l&&"asc"===r)&&(u*=-1),u},date:function(e,t,o,i,n,r,s){return s.format||(s.format="DD/MM/YYYY"),this.sorters.datetime.call(this,e,t,o,i,n,r,s)},time:function(e,t,o,i,n,r,s){return s.format||(s.format="HH:mm"),this.sorters.datetime.call(this,e,t,o,i,n,r,s)},datetime:function(e,t,o,i,n,r,s){var a=s.format||"DD/MM/YYYY HH:mm:ss",l=s.alignEmptyValues,u=0;if("undefined"!=typeof moment){if(e=moment(e,a),t=moment(t,a),e.isValid()){if(t.isValid())return e-t;u=1}else u=t.isValid()?-1:0;return("top"===l&&"desc"===r||"bottom"===l&&"asc"===r)&&(u*=-1),u}console.error("Sort Error - 'datetime' sorter is dependant on moment.js")},boolean:function(e,t,o,i,n,r,s){return(!0===e||"true"===e||"True"===e||1===e?1:0)-(!0===t||"true"===t||"True"===t||1===t?1:0)},array:function(e,t,o,i,n,r,s){var a=s.type||"length",l=s.alignEmptyValues,u=0;function c(e){switch(a){case"length":return e.length;case"sum":return e.reduce((function(e,t){return e+t}));case"max":return Math.max.apply(null,e);case"min":return Math.min.apply(null,e);case"avg":return e.reduce((function(e,t){return e+t}))/e.length}}if(Array.isArray(e)){if(Array.isArray(t))return(e?c(e):0)-(t?c(t):0);l=1}else l=Array.isArray(t)?-1:0;return("top"===l&&"desc"===r||"bottom"===l&&"asc"===r)&&(u*=-1),u},exists:function(e,t,o,i,n,r,s){return(void 0===e?0:1)-(void 0===t?0:1)},alphanum:function(e,t,o,i,n,r,s){var a,l,u,c,d,h=0,p=/(\d+)|(\D+)/g,m=/\d/,f=s.alignEmptyValues,g=0;if(e||0===e){if(t||0===t){if(isFinite(e)&&isFinite(t))return e-t;if((a=String(e).toLowerCase())===(l=String(t).toLowerCase()))return 0;if(!m.test(a)||!m.test(l))return a>l?1:-1;for(a=a.match(p),l=l.match(p),d=a.length>l.length?l.length:a.length;hc?1:-1;return a.length>l.length}g=1}else g=t||0===t?-1:0;return("top"===f&&"desc"===r||"bottom"===f&&"asc"===r)&&(g*=-1),g}},Tabulator.prototype.registerModule("sort",Sort);_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};var Format=function(e){this.table=e};Format.prototype.initializeColumn=function(e){e.modules.format=this.lookupFormatter(e,""),void 0!==e.definition.formatterPrint&&(e.modules.format.print=this.lookupFormatter(e,"Print")),void 0!==e.definition.formatterClipboard&&(e.modules.format.clipboard=this.lookupFormatter(e,"Clipboard")),void 0!==e.definition.formatterHtmlOutput&&(e.modules.format.htmlOutput=this.lookupFormatter(e,"HtmlOutput"))},Format.prototype.lookupFormatter=function(e,t){var o={params:e.definition["formatter"+t+"Params"]||{}},i=e.definition["formatter"+t];switch(void 0===i?"undefined":_typeof(i)){case"string":"tick"===i&&(i="tickCross",void 0===o.params.crossElement&&(o.params.crossElement=!1),console.warn("DEPRECATION WARNING - the tick formatter has been deprecated, please use the tickCross formatter with the crossElement param set to false")),this.formatters[i]?o.formatter=this.formatters[i]:(console.warn("Formatter Error - No such formatter found: ",i),o.formatter=this.formatters.plaintext);break;case"function":o.formatter=i;break;default:o.formatter=this.formatters.plaintext}return o},Format.prototype.cellRendered=function(e){e.modules.format&&e.modules.format.renderedCallback&&!e.modules.format.rendered&&(e.modules.format.renderedCallback(),e.modules.format.rendered=!0)},Format.prototype.formatValue=function(e){var t=e.getComponent(),o="function"==typeof e.column.modules.format.params?e.column.modules.format.params(t):e.column.modules.format.params;return e.column.modules.format.formatter.call(this,t,o,(function(t){e.modules.format||(e.modules.format={}),e.modules.format.renderedCallback=t,e.modules.format.rendered=!1}))},Format.prototype.formatExportValue=function(e,t){var o,i=e.column.modules.format[t];if(i){return o="function"==typeof i.params?i.params(component):i.params,i.formatter.call(this,e.getComponent(),o,(function(t){e.modules.format||(e.modules.format={}),e.modules.format.renderedCallback=t,e.modules.format.rendered=!1}))}return this.formatValue(e)},Format.prototype.sanitizeHTML=function(e){if(e){var t={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/","`":"`","=":"="};return String(e).replace(/[&<>"'`=\/]/g,(function(e){return t[e]}))}return e},Format.prototype.emptyToSpace=function(e){return null==e||""===e?" ":e},Format.prototype.getFormatter=function(e){switch(void 0===e?"undefined":_typeof(e)){case"string":this.formatters[e]?e=this.formatters[e]:(console.warn("Formatter Error - No such formatter found: ",e),e=this.formatters.plaintext);break;case"function":break;default:e=this.formatters.plaintext}return e},Format.prototype.formatters={plaintext:function(e,t,o){return this.emptyToSpace(this.sanitizeHTML(e.getValue()))},html:function(e,t,o){return e.getValue()},textarea:function(e,t,o){return e.getElement().style.whiteSpace="pre-wrap",this.emptyToSpace(this.sanitizeHTML(e.getValue()))},money:function(e,t,o){var i,n,r,s,a=parseFloat(e.getValue()),l=t.decimal||".",u=t.thousand||",",c=t.symbol||"",d=!!t.symbolAfter,h=void 0!==t.precision?t.precision:2;if(isNaN(a))return this.emptyToSpace(this.sanitizeHTML(e.getValue()));for(i=!1!==h?a.toFixed(h):a,n=(i=String(i).split("."))[0],r=i.length>1?l+i[1]:"",s=/(\d+)(\d{3})/;s.test(n);)n=n.replace(s,"$1"+u+"$2");return d?n+r+c:c+n+r},link:function(e,t,o){var i=e.getValue(),n=t.urlPrefix||"",r=t.download,s=i,a=document.createElement("a");if(t.labelField&&(s=e.getData()[t.labelField]),t.label)switch(_typeof(t.label)){case"string":s=t.label;break;case"function":s=t.label(e)}if(s){if(t.urlField&&(i=e.getData()[t.urlField]),t.url)switch(_typeof(t.url)){case"string":i=t.url;break;case"function":i=t.url(e)}return a.setAttribute("href",n+i),t.target&&a.setAttribute("target",t.target),t.download&&(r="function"==typeof r?r(e):!0===r?"":r,a.setAttribute("download",r)),a.innerHTML=this.emptyToSpace(this.sanitizeHTML(s)),a}return" "},image:function(e,t,o){var i=document.createElement("img"),n=e.getValue();switch(t.urlPrefix&&(n=t.urlPrefix+e.getValue()),t.urlSuffix&&(n+=t.urlSuffix),i.setAttribute("src",n),_typeof(t.height)){case"number":i.style.height=t.height+"px";break;case"string":i.style.height=t.height}switch(_typeof(t.width)){case"number":i.style.width=t.width+"px";break;case"string":i.style.width=t.width}return i.addEventListener("load",(function(){e.getRow().normalizeHeight()})),i},tickCross:function(e,t,o){var i=e.getValue(),n=e.getElement(),r=t.allowEmpty,s=t.allowTruthy,a=void 0!==t.tickElement?t.tickElement:'',l=void 0!==t.crossElement?t.crossElement:'';return s&&i||!0===i||"true"===i||"True"===i||1===i||"1"===i?(n.setAttribute("aria-checked",!0),a||""):!r||"null"!==i&&""!==i&&null!=i?(n.setAttribute("aria-checked",!1),l||""):(n.setAttribute("aria-checked","mixed"),"")},datetime:function(e,t,o){var i=t.inputFormat||"YYYY-MM-DD hh:mm:ss",n=t.outputFormat||"DD/MM/YYYY hh:mm:ss",r=void 0!==t.invalidPlaceholder?t.invalidPlaceholder:"",s=e.getValue(),a=moment(s,i);return a.isValid()?t.timezone?a.tz(t.timezone).format(n):a.format(n):!0===r?s:"function"==typeof r?r(s):r},datetimediff:function(e,t,o){var i=t.inputFormat||"YYYY-MM-DD hh:mm:ss",n=void 0!==t.invalidPlaceholder?t.invalidPlaceholder:"",r=void 0!==t.suffix&&t.suffix,s=void 0!==t.unit?t.unit:void 0,a=void 0!==t.humanize&&t.humanize,l=void 0!==t.date?t.date:moment(),u=e.getValue(),c=moment(u,i);return c.isValid()?a?moment.duration(c.diff(l)).humanize(r):c.diff(l,s)+(r?" "+r:""):!0===n?u:"function"==typeof n?n(u):n},lookup:function(e,t,o){var i=e.getValue();return void 0===t[i]?(console.warn("Missing display value for "+i),i):t[i]},star:function(e,t,o){var i=e.getValue(),n=e.getElement(),r=t&&t.stars?t.stars:5,s=document.createElement("span"),a=document.createElementNS("http://www.w3.org/2000/svg","svg");s.style.verticalAlign="middle",a.setAttribute("width","14"),a.setAttribute("height","14"),a.setAttribute("viewBox","0 0 512 512"),a.setAttribute("xml:space","preserve"),a.style.padding="0 1px",i=i&&!isNaN(i)?parseInt(i):0,i=Math.max(0,Math.min(i,r));for(var l=1;l<=r;l++){var u=a.cloneNode(!0);u.innerHTML=l<=i?'':'',s.appendChild(u)}return n.style.whiteSpace="nowrap",n.style.overflow="hidden",n.style.textOverflow="ellipsis",n.setAttribute("aria-label",i),s},traffic:function(e,t,o){var i,n,r=this.sanitizeHTML(e.getValue())||0,s=document.createElement("span"),a=t&&t.max?t.max:100,l=t&&t.min?t.min:0,u=t&&void 0!==t.color?t.color:["red","orange","green"],c="#666666";if(!isNaN(r)&&void 0!==e.getValue()){switch(s.classList.add("tabulator-traffic-light"),n=parseFloat(r)<=a?parseFloat(r):a,n=parseFloat(n)>=l?parseFloat(n):l,i=(a-l)/100,n=Math.round((n-l)/i),void 0===u?"undefined":_typeof(u)){case"string":c=u;break;case"function":c=u(r);break;case"object":if(Array.isArray(u)){var d=100/u.length,h=Math.floor(n/d);h=Math.min(h,u.length-1),c=u[h=Math.max(h,0)];break}}return s.style.backgroundColor=c,s}},progress:function(e,t,o){var i,n,r,s,a,l=this.sanitizeHTML(e.getValue())||0,u=e.getElement(),c=t&&t.max?t.max:100,d=t&&t.min?t.min:0,h=t&&t.legendAlign?t.legendAlign:"center";switch(n=parseFloat(l)<=c?parseFloat(l):c,n=parseFloat(n)>=d?parseFloat(n):d,i=(c-d)/100,n=Math.round((n-d)/i),_typeof(t.color)){case"string":r=t.color;break;case"function":r=t.color(l);break;case"object":if(Array.isArray(t.color)){var p=100/t.color.length,m=Math.floor(n/p);m=Math.min(m,t.color.length-1),m=Math.max(m,0),r=t.color[m];break}default:r="#2DC214"}switch(_typeof(t.legend)){case"string":s=t.legend;break;case"function":s=t.legend(l);break;case"boolean":s=l;break;default:s=!1}switch(_typeof(t.legendColor)){case"string":a=t.legendColor;break;case"function":a=t.legendColor(l);break;case"object":if(Array.isArray(t.legendColor)){p=100/t.legendColor.length,m=Math.floor(n/p);m=Math.min(m,t.legendColor.length-1),m=Math.max(m,0),a=t.legendColor[m]}break;default:a="#000"}u.style.minWidth="30px",u.style.position="relative",u.setAttribute("aria-label",n);var f=document.createElement("div");if(f.style.display="inline-block",f.style.position="relative",f.style.width=n+"%",f.style.backgroundColor=r,f.style.height="100%",f.setAttribute("data-max",c),f.setAttribute("data-min",d),s){var g=document.createElement("div");g.style.position="absolute",g.style.top="4px",g.style.left=0,g.style.textAlign=h,g.style.width="100%",g.style.color=a,g.innerHTML=s}return o((function(){if(!(e instanceof CellComponent)){var t=document.createElement("div");t.style.position="absolute",t.style.top="4px",t.style.bottom="4px",t.style.left="4px",t.style.right="4px",u.appendChild(t),u=t}u.appendChild(f),s&&u.appendChild(g)})),""},color:function(e,t,o){return e.getElement().style.backgroundColor=this.sanitizeHTML(e.getValue()),""},buttonTick:function(e,t,o){return''},buttonCross:function(e,t,o){return''},rownum:function(e,t,o){return this.table.rowManager.activeRows.indexOf(e.getRow()._getSelf())+1},handle:function(e,t,o){return e.getElement().classList.add("tabulator-row-handle"),"
"},responsiveCollapse:function(e,t,o){var i=document.createElement("div"),n=e.getRow()._row.modules.responsiveLayout;function r(e){var t=n.element;n.open=e,t&&(n.open?(i.classList.add("open"),t.style.display=""):(i.classList.remove("open"),t.style.display="none"))}return i.classList.add("tabulator-responsive-collapse-toggle"),i.innerHTML="+-",e.getElement().classList.add("tabulator-row-handle"),i.addEventListener("click",(function(e){e.stopImmediatePropagation(),r(!n.open)})),r(n.open),i},rowSelection:function(e,t,o){var i=this,n=document.createElement("input");if(n.type="checkbox",this.table.modExists("selectRow",!0))if(n.addEventListener("click",(function(e){e.stopPropagation()})),"function"==typeof e.getRow){var r=e.getRow();r instanceof RowComponent?(n.addEventListener("change",(function(e){r.toggleSelect()})),n.checked=r.isSelected&&r.isSelected(),this.table.modules.selectRow.registerRowSelectCheckbox(r,n)):n=""}else n.addEventListener("change",(function(e){i.table.modules.selectRow.selectedRows.length?i.table.deselectRow():i.table.selectRow(t.rowRange)})),this.table.modules.selectRow.registerHeaderSelectCheckbox(n);return n}},Tabulator.prototype.registerModule("format",Format);var ResizeColumns=function(e){this.table=e,this.startColumn=!1,this.startX=!1,this.startWidth=!1,this.handle=null,this.prevHandle=null};ResizeColumns.prototype.initializeColumn=function(e,t,o){var i=this,n=!1,r=this.table.options.resizableColumns;if("header"===e&&(n="textarea"==t.definition.formatter||t.definition.variableHeight,t.modules.resize={variableHeight:n}),!0===r||r==e){var s=document.createElement("div");s.className="tabulator-col-resize-handle";var a=document.createElement("div");a.className="tabulator-col-resize-handle prev",s.addEventListener("click",(function(e){e.stopPropagation()}));var l=function(e){var o=t.getLastColumn();o&&i._checkResizability(o)&&(i.startColumn=t,i._mouseDown(e,o,s))};s.addEventListener("mousedown",l),s.addEventListener("touchstart",l,{passive:!0}),s.addEventListener("dblclick",(function(e){var o=t.getLastColumn();o&&i._checkResizability(o)&&(e.stopPropagation(),o.reinitializeWidth(!0))})),a.addEventListener("click",(function(e){e.stopPropagation()}));var u=function(e){var o,n,r;(o=t.getFirstColumn())&&(r=(n=i.table.columnManager.findColumnIndex(o))>0&&i.table.columnManager.getColumnByIndex(n-1))&&i._checkResizability(r)&&(i.startColumn=t,i._mouseDown(e,r,a))};a.addEventListener("mousedown",u),a.addEventListener("touchstart",u,{passive:!0}),a.addEventListener("dblclick",(function(e){var o,n,r;(o=t.getFirstColumn())&&(r=(n=i.table.columnManager.findColumnIndex(o))>0&&i.table.columnManager.getColumnByIndex(n-1))&&i._checkResizability(r)&&(e.stopPropagation(),r.reinitializeWidth(!0))})),o.appendChild(s),o.appendChild(a)}},ResizeColumns.prototype._checkResizability=function(e){return void 0!==e.definition.resizable?e.definition.resizable:this.table.options.resizableColumns},ResizeColumns.prototype._mouseDown=function(e,t,o){var i=this;function n(e){i.table.rtl?t.setWidth(i.startWidth-((void 0===e.screenX?e.touches[0].screenX:e.screenX)-i.startX)):t.setWidth(i.startWidth+((void 0===e.screenX?e.touches[0].screenX:e.screenX)-i.startX)),i.table.options.virtualDomHoz&&i.table.vdomHoz.reinitialize(!0),!i.table.browserSlow&&t.modules.resize&&t.modules.resize.variableHeight&&t.checkCellHeights()}function r(e){i.startColumn.modules.edit&&(i.startColumn.modules.edit.blocked=!1),i.table.browserSlow&&t.modules.resize&&t.modules.resize.variableHeight&&t.checkCellHeights(),document.body.removeEventListener("mouseup",r),document.body.removeEventListener("mousemove",n),o.removeEventListener("touchmove",n),o.removeEventListener("touchend",r),i.table.element.classList.remove("tabulator-block-select"),i.table.options.persistence&&i.table.modExists("persistence",!0)&&i.table.modules.persistence.config.columns&&i.table.modules.persistence.save("columns"),i.table.options.columnResized.call(i.table,t.getComponent())}i.table.element.classList.add("tabulator-block-select"),e.stopPropagation(),i.startColumn.modules.edit&&(i.startColumn.modules.edit.blocked=!0),i.startX=void 0===e.screenX?e.touches[0].screenX:e.screenX,i.startWidth=t.getWidth(),document.body.addEventListener("mousemove",n),document.body.addEventListener("mouseup",r),o.addEventListener("touchmove",n,{passive:!0}),o.addEventListener("touchend",r)},Tabulator.prototype.registerModule("resizeColumns",ResizeColumns), /*! pako 2.0.3 https://github.com/nodeca/pako @license (MIT AND Zlib) */ function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).pako={})}(this,(function(e){var t=(e,t,o,i)=>{let n=65535&e|0,r=e>>>16&65535|0,s=0;for(;0!==o;){s=o>2e3?2e3:o,o-=s;do{n=n+t[i++]|0,r=r+n|0}while(--s);n%=65521,r%=65521}return n|r<<16|0};const o=new Uint32Array((()=>{let e,t=[];for(var o=0;o<256;o++){e=o;for(var i=0;i<8;i++)e=1&e?3988292384^e>>>1:e>>>1;t[o]=e}return t})());var i=(e,t,i,n)=>{const r=o,s=n+i;e^=-1;for(let o=n;o>>8^r[255&(e^t[o])];return-1^e};var n=function(e,t){let o,i,n,r,s,a,l,u,c,d,h,p,m,f,g,b,v,y,w,C,E,R,T,_;const L=e.state;o=e.next_in,T=e.input,i=o+(e.avail_in-5),n=e.next_out,_=e.output,r=n-(t-e.avail_out),s=n+(e.avail_out-257),a=L.dmax,l=L.wsize,u=L.whave,c=L.wnext,d=L.window,h=L.hold,p=L.bits,m=L.lencode,f=L.distcode,g=(1<>>24,h>>>=y,p-=y,y=v>>>16&255,0===y)_[n++]=65535&v;else{if(!(16&y)){if(0==(64&y)){v=m[(65535&v)+(h&(1<>>=y,p-=y),p<15&&(h+=T[o++]<>>24,h>>>=y,p-=y,y=v>>>16&255,!(16&y)){if(0==(64&y)){v=f[(65535&v)+(h&(1<a){e.msg="invalid distance too far back",L.mode=30;break e}if(h>>>=y,p-=y,y=n-r,C>y){if(y=C-y,y>u&&L.sane){e.msg="invalid distance too far back",L.mode=30;break e}if(E=0,R=d,0===c){if(E+=l-y,y2;)_[n++]=R[E++],_[n++]=R[E++],_[n++]=R[E++],w-=3;w&&(_[n++]=R[E++],w>1&&(_[n++]=R[E++]))}else{E=n-C;do{_[n++]=_[E++],_[n++]=_[E++],_[n++]=_[E++],w-=3}while(w>2);w&&(_[n++]=_[E++],w>1&&(_[n++]=_[E++]))}break}}break}}while(o>3,o-=w,p-=w<<3,h&=(1<{const p=h.bits;let m,f,g,b,v,y,w=0,C=0,E=0,R=0,T=0,_=0,L=0,M=0,k=0,D=0,x=null,S=0;const I=new Uint16Array(16),N=new Uint16Array(16);let A,O,B,P=null,z=0;for(w=0;w<=r;w++)I[w]=0;for(C=0;C=1&&0===I[R];R--);if(T>R&&(T=R),0===R)return n[c++]=20971520,n[c++]=20971520,h.bits=1,0;for(E=1;E0&&(0===e||1!==R))return-1;for(N[1]=0,w=1;w852||2===e&&k>592)return 1;for(;;){A=w-L,d[C]y?(O=P[z+d[C]],B=x[S+d[C]]):(O=96,B=0),m=1<>L)+f]=A<<24|O<<16|B|0}while(0!==f);for(m=1<>=1;if(0!==m?(D&=m-1,D+=m):D=0,C++,0==--I[w]){if(w===R)break;w=t[o+d[C]]}if(w>T&&(D&b)!==g){for(0===L&&(L=T),v+=E,_=w-L,M=1<<_;_+L852||2===e&&k>592)return 1;g=D&b,n[g]=T<<24|_<<16|v-c|0}}return 0!==D&&(n[v+D]=w-L<<24|64<<16|0),h.bits=T,0},d={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{Z_FINISH:h,Z_BLOCK:p,Z_TREES:m,Z_OK:f,Z_STREAM_END:g,Z_NEED_DICT:b,Z_STREAM_ERROR:v,Z_DATA_ERROR:y,Z_MEM_ERROR:w,Z_BUF_ERROR:C,Z_DEFLATED:E}=d,R=12,T=30,_=e=>(e>>>24&255)+(e>>>8&65280)+((65280&e)<<8)+((255&e)<<24);function L(){this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const M=e=>{if(!e||!e.state)return v;const t=e.state;return e.total_in=e.total_out=t.total=0,e.msg="",t.wrap&&(e.adler=1&t.wrap),t.mode=1,t.last=0,t.havedict=0,t.dmax=32768,t.head=null,t.hold=0,t.bits=0,t.lencode=t.lendyn=new Int32Array(852),t.distcode=t.distdyn=new Int32Array(592),t.sane=1,t.back=-1,f},k=e=>{if(!e||!e.state)return v;const t=e.state;return t.wsize=0,t.whave=0,t.wnext=0,M(e)},D=(e,t)=>{let o;if(!e||!e.state)return v;const i=e.state;return t<0?(o=0,t=-t):(o=1+(t>>4),t<48&&(t&=15)),t&&(t<8||t>15)?v:(null!==i.window&&i.wbits!==t&&(i.window=null),i.wrap=o,i.wbits=t,k(e))},x=(e,t)=>{if(!e)return v;const o=new L;e.state=o,o.window=null;const i=D(e,t);return i!==f&&(e.state=null),i};let S,I,N=!0;const A=e=>{if(N){S=new Int32Array(512),I=new Int32Array(32);let t=0;for(;t<144;)e.lens[t++]=8;for(;t<256;)e.lens[t++]=9;for(;t<280;)e.lens[t++]=7;for(;t<288;)e.lens[t++]=8;for(c(1,e.lens,0,288,S,0,e.work,{bits:9}),t=0;t<32;)e.lens[t++]=5;c(2,e.lens,0,32,I,0,e.work,{bits:5}),N=!1}e.lencode=S,e.lenbits=9,e.distcode=I,e.distbits=5},O=(e,t,o,i)=>{let n;const r=e.state;return null===r.window&&(r.wsize=1<=r.wsize?(r.window.set(t.subarray(o-r.wsize,o),0),r.wnext=0,r.whave=r.wsize):(n=r.wsize-r.wnext,n>i&&(n=i),r.window.set(t.subarray(o-i,o-i+n),r.wnext),(i-=n)?(r.window.set(t.subarray(o-i,o),0),r.wnext=i,r.whave=r.wsize):(r.wnext+=n,r.wnext===r.wsize&&(r.wnext=0),r.whavex(e,15),inflateInit2:x,inflate:(e,o)=>{let r,s,a,l,u,d,L,M,k,D,x,S,I,N,B,P,z,H,F,j,U,V,W=0;const G=new Uint8Array(4);let $,q;const K=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(!e||!e.state||!e.output||!e.input&&0!==e.avail_in)return v;r=e.state,r.mode===R&&(r.mode=13),u=e.next_out,a=e.output,L=e.avail_out,l=e.next_in,s=e.input,d=e.avail_in,M=r.hold,k=r.bits,D=d,x=L,V=f;e:for(;;)switch(r.mode){case 1:if(0===r.wrap){r.mode=13;break}for(;k<16;){if(0===d)break e;d--,M+=s[l++]<>>8&255,r.check=i(r.check,G,2,0),M=0,k=0,r.mode=2;break}if(r.flags=0,r.head&&(r.head.done=!1),!(1&r.wrap)||(((255&M)<<8)+(M>>8))%31){e.msg="incorrect header check",r.mode=T;break}if((15&M)!==E){e.msg="unknown compression method",r.mode=T;break}if(M>>>=4,k-=4,U=8+(15&M),0===r.wbits)r.wbits=U;else if(U>r.wbits){e.msg="invalid window size",r.mode=T;break}r.dmax=1<>8&1),512&r.flags&&(G[0]=255&M,G[1]=M>>>8&255,r.check=i(r.check,G,2,0)),M=0,k=0,r.mode=3;case 3:for(;k<32;){if(0===d)break e;d--,M+=s[l++]<>>8&255,G[2]=M>>>16&255,G[3]=M>>>24&255,r.check=i(r.check,G,4,0)),M=0,k=0,r.mode=4;case 4:for(;k<16;){if(0===d)break e;d--,M+=s[l++]<>8),512&r.flags&&(G[0]=255&M,G[1]=M>>>8&255,r.check=i(r.check,G,2,0)),M=0,k=0,r.mode=5;case 5:if(1024&r.flags){for(;k<16;){if(0===d)break e;d--,M+=s[l++]<>>8&255,r.check=i(r.check,G,2,0)),M=0,k=0}else r.head&&(r.head.extra=null);r.mode=6;case 6:if(1024&r.flags&&(S=r.length,S>d&&(S=d),S&&(r.head&&(U=r.head.extra_len-r.length,r.head.extra||(r.head.extra=new Uint8Array(r.head.extra_len)),r.head.extra.set(s.subarray(l,l+S),U)),512&r.flags&&(r.check=i(r.check,s,S,l)),d-=S,l+=S,r.length-=S),r.length))break e;r.length=0,r.mode=7;case 7:if(2048&r.flags){if(0===d)break e;S=0;do{U=s[l+S++],r.head&&U&&r.length<65536&&(r.head.name+=String.fromCharCode(U))}while(U&&S>9&1,r.head.done=!0),e.adler=r.check=0,r.mode=R;break;case 10:for(;k<32;){if(0===d)break e;d--,M+=s[l++]<>>=7&k,k-=7&k,r.mode=27;break}for(;k<3;){if(0===d)break e;d--,M+=s[l++]<>>=1,k-=1,3&M){case 0:r.mode=14;break;case 1:if(A(r),r.mode=20,o===m){M>>>=2,k-=2;break e}break;case 2:r.mode=17;break;case 3:e.msg="invalid block type",r.mode=T}M>>>=2,k-=2;break;case 14:for(M>>>=7&k,k-=7&k;k<32;){if(0===d)break e;d--,M+=s[l++]<>>16^65535)){e.msg="invalid stored block lengths",r.mode=T;break}if(r.length=65535&M,M=0,k=0,r.mode=15,o===m)break e;case 15:r.mode=16;case 16:if(S=r.length,S){if(S>d&&(S=d),S>L&&(S=L),0===S)break e;a.set(s.subarray(l,l+S),u),d-=S,l+=S,L-=S,u+=S,r.length-=S;break}r.mode=R;break;case 17:for(;k<14;){if(0===d)break e;d--,M+=s[l++]<>>=5,k-=5,r.ndist=1+(31&M),M>>>=5,k-=5,r.ncode=4+(15&M),M>>>=4,k-=4,r.nlen>286||r.ndist>30){e.msg="too many length or distance symbols",r.mode=T;break}r.have=0,r.mode=18;case 18:for(;r.have>>=3,k-=3}for(;r.have<19;)r.lens[K[r.have++]]=0;if(r.lencode=r.lendyn,r.lenbits=7,$={bits:r.lenbits},V=c(0,r.lens,0,19,r.lencode,0,r.work,$),r.lenbits=$.bits,V){e.msg="invalid code lengths set",r.mode=T;break}r.have=0,r.mode=19;case 19:for(;r.have>>24,P=W>>>16&255,z=65535&W,!(B<=k);){if(0===d)break e;d--,M+=s[l++]<>>=B,k-=B,r.lens[r.have++]=z;else{if(16===z){for(q=B+2;k>>=B,k-=B,0===r.have){e.msg="invalid bit length repeat",r.mode=T;break}U=r.lens[r.have-1],S=3+(3&M),M>>>=2,k-=2}else if(17===z){for(q=B+3;k>>=B,k-=B,U=0,S=3+(7&M),M>>>=3,k-=3}else{for(q=B+7;k>>=B,k-=B,U=0,S=11+(127&M),M>>>=7,k-=7}if(r.have+S>r.nlen+r.ndist){e.msg="invalid bit length repeat",r.mode=T;break}for(;S--;)r.lens[r.have++]=U}}if(r.mode===T)break;if(0===r.lens[256]){e.msg="invalid code -- missing end-of-block",r.mode=T;break}if(r.lenbits=9,$={bits:r.lenbits},V=c(1,r.lens,0,r.nlen,r.lencode,0,r.work,$),r.lenbits=$.bits,V){e.msg="invalid literal/lengths set",r.mode=T;break}if(r.distbits=6,r.distcode=r.distdyn,$={bits:r.distbits},V=c(2,r.lens,r.nlen,r.ndist,r.distcode,0,r.work,$),r.distbits=$.bits,V){e.msg="invalid distances set",r.mode=T;break}if(r.mode=20,o===m)break e;case 20:r.mode=21;case 21:if(d>=6&&L>=258){e.next_out=u,e.avail_out=L,e.next_in=l,e.avail_in=d,r.hold=M,r.bits=k,n(e,x),u=e.next_out,a=e.output,L=e.avail_out,l=e.next_in,s=e.input,d=e.avail_in,M=r.hold,k=r.bits,r.mode===R&&(r.back=-1);break}for(r.back=0;W=r.lencode[M&(1<>>24,P=W>>>16&255,z=65535&W,!(B<=k);){if(0===d)break e;d--,M+=s[l++]<>H)],B=W>>>24,P=W>>>16&255,z=65535&W,!(H+B<=k);){if(0===d)break e;d--,M+=s[l++]<>>=H,k-=H,r.back+=H}if(M>>>=B,k-=B,r.back+=B,r.length=z,0===P){r.mode=26;break}if(32&P){r.back=-1,r.mode=R;break}if(64&P){e.msg="invalid literal/length code",r.mode=T;break}r.extra=15&P,r.mode=22;case 22:if(r.extra){for(q=r.extra;k>>=r.extra,k-=r.extra,r.back+=r.extra}r.was=r.length,r.mode=23;case 23:for(;W=r.distcode[M&(1<>>24,P=W>>>16&255,z=65535&W,!(B<=k);){if(0===d)break e;d--,M+=s[l++]<>H)],B=W>>>24,P=W>>>16&255,z=65535&W,!(H+B<=k);){if(0===d)break e;d--,M+=s[l++]<>>=H,k-=H,r.back+=H}if(M>>>=B,k-=B,r.back+=B,64&P){e.msg="invalid distance code",r.mode=T;break}r.offset=z,r.extra=15&P,r.mode=24;case 24:if(r.extra){for(q=r.extra;k>>=r.extra,k-=r.extra,r.back+=r.extra}if(r.offset>r.dmax){e.msg="invalid distance too far back",r.mode=T;break}r.mode=25;case 25:if(0===L)break e;if(S=x-L,r.offset>S){if(S=r.offset-S,S>r.whave&&r.sane){e.msg="invalid distance too far back",r.mode=T;break}S>r.wnext?(S-=r.wnext,I=r.wsize-S):I=r.wnext-S,S>r.length&&(S=r.length),N=r.window}else N=a,I=u-r.offset,S=r.length;S>L&&(S=L),L-=S,r.length-=S;do{a[u++]=N[I++]}while(--S);0===r.length&&(r.mode=21);break;case 26:if(0===L)break e;a[u++]=r.length,L--,r.mode=21;break;case 27:if(r.wrap){for(;k<32;){if(0===d)break e;d--,M|=s[l++]<{if(!e||!e.state)return v;let t=e.state;return t.window&&(t.window=null),e.state=null,f},inflateGetHeader:(e,t)=>{if(!e||!e.state)return v;const o=e.state;return 0==(2&o.wrap)?v:(o.head=t,t.done=!1,f)},inflateSetDictionary:(e,o)=>{const i=o.length;let n,r,s;return e&&e.state?(n=e.state,0!==n.wrap&&11!==n.mode?v:11===n.mode&&(r=1,r=t(r,o,i,0),r!==n.check)?y:(s=O(e,o,i,i),s?(n.mode=31,w):(n.havedict=1,f))):v},inflateInfo:"pako inflate (from Nodeca project)"};const P=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var z={assign:function(e){const t=Array.prototype.slice.call(arguments,1);for(;t.length;){const o=t.shift();if(o){if("object"!=typeof o)throw new TypeError(o+"must be non-object");for(const t in o)P(o,t)&&(e[t]=o[t])}}return e},flattenChunks:e=>{let t=0;for(let o=0,i=e.length;o=252?6:e>=248?5:e>=240?4:e>=224?3:e>=192?2:1;F[254]=F[254]=1;var j={string2buf:e=>{let t,o,i,n,r,s=e.length,a=0;for(n=0;n>>6,t[r++]=128|63&o):o<65536?(t[r++]=224|o>>>12,t[r++]=128|o>>>6&63,t[r++]=128|63&o):(t[r++]=240|o>>>18,t[r++]=128|o>>>12&63,t[r++]=128|o>>>6&63,t[r++]=128|63&o);return t},buf2string:(e,t)=>{let o,i;const n=t||e.length,r=new Array(2*n);for(i=0,o=0;o4)r[i++]=65533,o+=s-1;else{for(t&=2===s?31:3===s?15:7;s>1&&o1?r[i++]=65533:t<65536?r[i++]=t:(t-=65536,r[i++]=55296|t>>10&1023,r[i++]=56320|1023&t)}}return((e,t)=>{if(t<65534&&e.subarray&&H)return String.fromCharCode.apply(null,e.length===t?e:e.subarray(0,t));let o="";for(let i=0;i{(t=t||e.length)>e.length&&(t=e.length);let o=t-1;for(;o>=0&&128==(192&e[o]);)o--;return o<0||0===o?t:o+F[e[o]]>t?o:t}},U={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"};var V=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0};var W=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1};const G=Object.prototype.toString,{Z_NO_FLUSH:$,Z_FINISH:q,Z_OK:K,Z_STREAM_END:Z,Z_NEED_DICT:J,Z_STREAM_ERROR:Y,Z_DATA_ERROR:X,Z_MEM_ERROR:Q}=d;function ee(e){this.options=z.assign({chunkSize:65536,windowBits:15,to:""},e||{});const t=this.options;t.raw&&t.windowBits>=0&&t.windowBits<16&&(t.windowBits=-t.windowBits,0===t.windowBits&&(t.windowBits=-15)),!(t.windowBits>=0&&t.windowBits<16)||e&&e.windowBits||(t.windowBits+=32),t.windowBits>15&&t.windowBits<48&&0==(15&t.windowBits)&&(t.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new V,this.strm.avail_out=0;let o=B.inflateInit2(this.strm,t.windowBits);if(o!==K)throw new Error(U[o]);if(this.header=new W,B.inflateGetHeader(this.strm,this.header),t.dictionary&&("string"==typeof t.dictionary?t.dictionary=j.string2buf(t.dictionary):"[object ArrayBuffer]"===G.call(t.dictionary)&&(t.dictionary=new Uint8Array(t.dictionary)),t.raw&&(o=B.inflateSetDictionary(this.strm,t.dictionary),o!==K)))throw new Error(U[o])}function te(e,t){const o=new ee(t);if(o.push(e),o.err)throw o.msg||U[o.err];return o.result}ee.prototype.push=function(e,t){const o=this.strm,i=this.options.chunkSize,n=this.options.dictionary;let r,s,a;if(this.ended)return!1;for(s=t===~~t?t:!0===t?q:$,"[object ArrayBuffer]"===G.call(e)?o.input=new Uint8Array(e):o.input=e,o.next_in=0,o.avail_in=o.input.length;;){for(0===o.avail_out&&(o.output=new Uint8Array(i),o.next_out=0,o.avail_out=i),r=B.inflate(o,s),r===J&&n&&(r=B.inflateSetDictionary(o,n),r===K?r=B.inflate(o,s):r===X&&(r=J));o.avail_in>0&&r===Z&&o.state.wrap>0&&0!==e[o.next_in];)B.inflateReset(o),r=B.inflate(o,s);switch(r){case Y:case X:case J:case Q:return this.onEnd(r),this.ended=!0,!1}if(a=o.avail_out,o.next_out&&(0===o.avail_out||r===Z))if("string"===this.options.to){let e=j.utf8border(o.output,o.next_out),t=o.next_out-e,n=j.buf2string(o.output,e);o.next_out=t,o.avail_out=i-t,t&&o.output.set(o.output.subarray(e,e+t),0),this.onData(n)}else this.onData(o.output.length===o.next_out?o.output:o.output.subarray(0,o.next_out));if(r!==K||0!==a){if(r===Z)return r=B.inflateEnd(this.strm),this.onEnd(r),this.ended=!0,!0;if(0===o.avail_in)break}}return!0},ee.prototype.onData=function(e){this.chunks.push(e)},ee.prototype.onEnd=function(e){e===K&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=z.flattenChunks(this.chunks)),this.chunks=[],this.err=e,this.msg=this.strm.msg};var oe=ee,ie=te,ne=function(e,t){return(t=t||{}).raw=!0,te(e,t)},re=te,se=d,ae={Inflate:oe,inflate:ie,inflateRaw:ne,ungzip:re,constants:se};e.Inflate=oe,e.constants=se,e.default=ae,e.inflate=ie,e.inflateRaw=ne,e.ungzip=re,Object.defineProperty(e,"__esModule",{value:!0})}));var rr=Object.create,jt=Object.defineProperty,ir=Object.getOwnPropertyDescriptor,sr=Object.getOwnPropertyNames,or=Object.getPrototypeOf,ar=Object.prototype.hasOwnProperty,cr=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),ur=(e,t,o,i)=>{if(t&&"object"==typeof t||"function"==typeof t)for(let n of sr(t))!ar.call(e,n)&&n!==o&&jt(e,n,{get:()=>t[n],enumerable:!(i=ir(t,n))||i.enumerable});return e},zt=(e,t,o)=>(o=null!=e?rr(or(e)):{},ur(!t&&e&&e.__esModule?o:jt(o,"default",{value:e,enumerable:!0}),e)),it=cr(((e,t)=>{!function(){var e;function o(t,o){return(e||(e=new Promise((function(e,t){var o=indexedDB.open("keyval-store",1);o.onerror=function(){t(o.error)},o.onupgradeneeded=function(){o.result.createObjectStore("keyval")},o.onsuccess=function(){e(o.result)}}))),e).then((function(e){return new Promise((function(i,n){var r=e.transaction("keyval",t);r.oncomplete=function(){i()},r.onerror=function(){n(r.error)},o(r.objectStore("keyval"))}))}))}var i={get:function(e){var t;return o("readonly",(function(o){t=o.get(e)})).then((function(){return t.result}))},set:function(e,t){return o("readwrite",(function(o){o.put(t,e)}))},delete:function(e){return o("readwrite",(function(t){t.delete(e)}))},clear:function(){return o("readwrite",(function(e){e.clear()}))},keys:function(){var e=[];return o("readonly",(function(t){(t.openKeyCursor||t.openCursor).call(t).onsuccess=function(){this.result&&(e.push(this.result.key),this.result.continue())}})).then((function(){return e}))}};typeof t<"u"&&t.exports?t.exports=i:self.idbKeyval=i}()})),rt={toggleTableButtonLabel:"Toggle Table",allScriptsDropdownLabel:"All Scripts",tableColumnName:"Name",resourceBytesLabel:"Resource Bytes",unusedBytesLabel:"Unused Bytes",coverageColumnName:"Coverage",allLabel:"All",duplicateModulesLabel:"Duplicate Modules"},d=class e{static i18n=null;static UIStrings=rt;static strings={...rt};static applyStrings(e){this.strings={...rt,...e}}static walk(t,o,i){if(i||(i=[]),i.push(t.name),o(t,i),t.children)for(let n of t.children)e.walk(n,o,[...i])}static pathsAreEqual(e,t){if(e.length!==t.length)return!1;for(let o=0;ot.length)return!1;for(let o=0;o{let n=o.get(i);if(void 0!==n)return n;0===t.length&&(t=[...e]);let r=[...i].reduce(((e,t)=>e+t.charCodeAt(0)),0),[s]=t.splice(r%t.length,1);return o.set(i,s),s}}static hsl(e,t,o){return`hsl(${e}, ${t}%, ${o}%)`}};d.COLOR_HUES=[4.1,339.6,291.2,261.6,230.8,198.7,186.8,174.4,122.4,87.8,65.5,45,35.8,15.9,199.5];var ve=class{constructor(e){let t=document.querySelector(".drop_zone");if(!t)throw new Error("Drag and drop `.drop_zone` element not found in page");this._dropZone=t,this._fileHandlerCallback=e,this._dragging=!1,this._addListeners()}readFile(e){return new Promise(((t,o)=>{let i=new FileReader;i.onload=function(e){let i=e.target?.result;i?t(i):o(new Error("Could not read file"))},i.onerror=o,i.readAsText(e)}))}_addListeners(){document.addEventListener("mouseleave",(e=>{this._dragging&&this._resetDraggingUI()})),document.addEventListener("dragover",(e=>{e.stopPropagation(),e.preventDefault(),e.dataTransfer&&(e.dataTransfer.dropEffect="copy")})),document.addEventListener("dragenter",(e=>{this._dropZone.classList.add("dropping"),this._dragging=!0})),document.addEventListener("drop",(e=>{e.stopPropagation(),e.preventDefault(),this._resetDraggingUI(),e.dataTransfer&&this.readFile(e.dataTransfer.files[0]).then((e=>{this._fileHandlerCallback(e)})).catch((e=>logger.error(e)))}))}_resetDraggingUI(){this._dropZone.classList.remove("dropping"),this._dragging=!1}},Ye=zt(it(),1),st=function(e,t){return(st=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var o in t)Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o])})(e,t)};function $t(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function o(){this.constructor=e}st(e,t),e.prototype=null===t?Object.create(t):(o.prototype=t.prototype,new o)}function ye(e,t){var o={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&t.indexOf(i)<0&&(o[i]=e[i]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var n=0;for(i=Object.getOwnPropertySymbols(e);n0&&n[n.length-1])&&(6===a[0]||2===a[0])){s=0;continue}if(3===a[0]&&(!n||a[1]>n[0]&&a[1]=e.length&&(e=void 0),{value:e&&e[i++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function ee(e,t){var o="function"==typeof Symbol&&e[Symbol.iterator];if(!o)return e;var i,n,r=o.call(e),s=[];try{for(;(void 0===t||t-- >0)&&!(i=r.next()).done;)s.push(i.value)}catch(e){n={error:e}}finally{try{i&&!i.done&&(o=r.return)&&o.call(r)}finally{if(n)throw n.error}}return s}function ot(e,t,o){if(o||2===arguments.length)for(var i,n=0,r=t.length;n>6|192,t[o++]=63&n|128):55296==(64512&n)&&i+1>18|240,t[o++]=n>>12&63|128,t[o++]=n>>6&63|128,t[o++]=63&n|128):(t[o++]=n>>12|224,t[o++]=n>>6&63|128,t[o++]=63&n|128)}return t},dr=function(e){for(var t=[],o=0,i=0;o191&&n<224){var r=e[o++];t[i++]=String.fromCharCode((31&n)<<6|63&r)}else if(n>239&&n<365){var s=((7&n)<<18|(63&(r=e[o++]))<<12|(63&(a=e[o++]))<<6|63&e[o++])-65536;t[i++]=String.fromCharCode(55296+(s>>10)),t[i++]=String.fromCharCode(56320+(1023&s))}else{r=e[o++];var a=e[o++];t[i++]=String.fromCharCode((15&n)<<12|(63&r)<<6|63&a)}}return t.join("")},hr={byteToCharMap_:null,charToByteMap_:null,byteToCharMapWebSafe_:null,charToByteMapWebSafe_:null,ENCODED_VALS_BASE:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",get ENCODED_VALS(){return this.ENCODED_VALS_BASE+"+/="},get ENCODED_VALS_WEBSAFE(){return this.ENCODED_VALS_BASE+"-_."},HAS_NATIVE_SUPPORT:"function"==typeof atob,encodeByteArray:function(e,t){if(!Array.isArray(e))throw Error("encodeByteArray takes an array as a parameter");this.init_();for(var o=t?this.byteToCharMapWebSafe_:this.byteToCharMap_,i=[],n=0;n>2,d=(3&r)<<4|a>>4,h=(15&a)<<2|u>>6,p=63&u;l||(p=64,s||(h=64)),i.push(o[c],o[d],o[h],o[p])}return i.join("")},encodeString:function(e,t){return this.HAS_NATIVE_SUPPORT&&!t?btoa(e):this.encodeByteArray(lr(e),t)},decodeString:function(e,t){return this.HAS_NATIVE_SUPPORT&&!t?atob(e):dr(this.decodeStringToByteArray(e,t))},decodeStringToByteArray:function(e,t){this.init_();for(var o=t?this.charToByteMapWebSafe_:this.charToByteMap_,i=[],n=0;n>4;if(i.push(u),64!==a){var c=s<<4&240|a>>2;if(i.push(c),64!==l){var d=a<<6&192|l;i.push(d)}}}return i},init_:function(){if(!this.byteToCharMap_){this.byteToCharMap_={},this.charToByteMap_={},this.byteToCharMapWebSafe_={},this.charToByteMapWebSafe_={};for(var e=0;e=this.ENCODED_VALS_BASE.length&&(this.charToByteMap_[this.ENCODED_VALS_WEBSAFE.charAt(e)]=e,this.charToByteMapWebSafe_[this.ENCODED_VALS.charAt(e)]=e)}}},Jt=function(e){try{return hr.decodeString(e,!0)}catch(e){console.error("base64Decode failed: ",e)}return null},Yt=function(){function e(){var e=this;this.reject=function(){},this.resolve=function(){},this.promise=new Promise((function(t,o){e.resolve=t,e.reject=o}))}return e.prototype.wrapCallback=function(e){var t=this;return function(o,i){o?t.reject(o):t.resolve(i),"function"==typeof e&&(t.promise.catch((function(){})),1===e.length?e(o):e(o,i))}},e}();function _(){return typeof navigator<"u"&&"string"==typeof navigator.userAgent?navigator.userAgent:""}function Xt(){return typeof window<"u"&&!!(window.cordova||window.phonegap||window.PhoneGap)&&/ios|iphone|ipod|ipad|android|blackberry|iemobile/i.test(_())}function Zt(){var e="object"==typeof chrome?chrome.runtime:"object"==typeof browser?browser.runtime:void 0;return"object"==typeof e&&void 0!==e.id}function Qt(){return"object"==typeof navigator&&"ReactNative"===navigator.product}function en(){var e=_();return e.indexOf("MSIE ")>=0||e.indexOf("Trident/")>=0}var fr="FirebaseError",j=function(e){function t(o,i,n){var r=e.call(this,i)||this;return r.code=o,r.customData=n,r.name=fr,Object.setPrototypeOf(r,t.prototype),Error.captureStackTrace&&Error.captureStackTrace(r,L.prototype.create),r}return $t(t,e),t}(Error),L=function(){function e(e,t,o){this.service=e,this.serviceName=t,this.errors=o}return e.prototype.create=function(e){for(var t=[],o=1;o"}))}var mr=/\{\$([^}]+)}/g;function tn(e){for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t))return!1;return!0}function z(e,t){if(e===t)return!0;for(var o=Object.keys(e),i=Object.keys(t),n=0,r=o;n0?o:void 0)}var fo=function(){function e(){this.chain_=[],this.buf_=[],this.W_=[],this.pad_=[],this.inbuf_=0,this.total_=0,this.blockSize=64,this.pad_[0]=128;for(var e=1;e>>31)}var r,s,a=this.chain_[0],l=this.chain_[1],u=this.chain_[2],c=this.chain_[3],d=this.chain_[4];for(i=0;i<80;i++){i<40?i<20?(r=c^l&(u^c),s=1518500249):(r=l^u^c,s=1859775393):i<60?(r=l&u|c&(l|u),s=2400959708):(r=l^u^c,s=3395469782);n=(a<<5|a>>>27)+r+d+s+o[i]&4294967295;d=c,c=u,u=4294967295&(l<<30|l>>>2),l=a,a=n}this.chain_[0]=this.chain_[0]+a&4294967295,this.chain_[1]=this.chain_[1]+l&4294967295,this.chain_[2]=this.chain_[2]+u&4294967295,this.chain_[3]=this.chain_[3]+c&4294967295,this.chain_[4]=this.chain_[4]+d&4294967295},e.prototype.update=function(e,t){if(null!=e){void 0===t&&(t=e.length);for(var o=t-this.blockSize,i=0,n=this.buf_,r=this.inbuf_;i=56;o--)this.buf_[o]=255&t,t/=256;this.compress_(this.buf_);var i=0;for(o=0;o<5;o++)for(var n=24;n>=0;n-=8)e[i]=this.chain_[o]>>n&255,++i;return e},e}();function nn(e,t){var o=new gr(e,t);return o.subscribe.bind(o)}var gr=function(){function e(e,t){var o=this;this.observers=[],this.unsubscribes=[],this.observerCount=0,this.task=Promise.resolve(),this.finalized=!1,this.onNoObservers=t,this.task.then((function(){e(o)})).catch((function(e){o.error(e)}))}return e.prototype.next=function(e){this.forEachObserver((function(t){t.next(e)}))},e.prototype.error=function(e){this.forEachObserver((function(t){t.error(e)})),this.close(e)},e.prototype.complete=function(){this.forEachObserver((function(e){e.complete()})),this.close()},e.prototype.subscribe=function(e,t,o){var i,n=this;if(void 0===e&&void 0===t&&void 0===o)throw new Error("Missing Observer.");void 0===(i=vr(e,["next","error","complete"])?e:{next:e,error:t,complete:o}).next&&(i.next=at),void 0===i.error&&(i.error=at),void 0===i.complete&&(i.complete=at);var r=this.unsubscribeOne.bind(this,this.observers.length);return this.finalized&&this.task.then((function(){try{n.finalError?i.error(n.finalError):i.complete()}catch{}})),this.observers.push(i),r},e.prototype.unsubscribeOne=function(e){void 0===this.observers||void 0===this.observers[e]||(delete this.observers[e],this.observerCount-=1,0===this.observerCount&&void 0!==this.onNoObservers&&this.onNoObservers(this))},e.prototype.forEachObserver=function(e){if(!this.finalized)for(var t=0;t{if(Or(e)){let t=e.getImmediate();return`${t.library}/${t.version}`}return null})).filter((e=>e)).join(" ")}};function Or(e){let t=e.getComponent();return"VERSION"===t?.type}var sn="@firebase/app",Ar="0.7.0",dt=new we("@firebase/app"),Rr="@firebase/app-compat",Nr="@firebase/analytics-compat",kr="@firebase/analytics",Pr="@firebase/app-check-compat",Cr="@firebase/app-check",Lr="@firebase/auth",Dr="@firebase/auth-compat",Mr="@firebase/database",Ur="@firebase/database-compat",xr="@firebase/functions",Fr="@firebase/functions-compat",Vr="@firebase/installations",Br="@firebase/installations-compat",Wr="@firebase/messaging",Hr="@firebase/messaging-compat",jr="@firebase/performance",zr="@firebase/performance-compat",$r="@firebase/remote-config",Gr="@firebase/remote-config-compat",qr="@firebase/storage",Kr="@firebase/storage-compat",Jr="@firebase/firestore",Yr="@firebase/firestore-compat",Xr="firebase",Zr="9.0.0",on="[DEFAULT]",Qr={[sn]:"fire-core",[Rr]:"fire-core-compat",[kr]:"fire-analytics",[Nr]:"fire-analytics-compat",[Cr]:"fire-app-check",[Pr]:"fire-app-check-compat",[Lr]:"fire-auth",[Dr]:"fire-auth-compat",[Mr]:"fire-rtdb",[Ur]:"fire-rtdb-compat",[xr]:"fire-fn",[Fr]:"fire-fn-compat",[Vr]:"fire-iid",[Br]:"fire-iid-compat",[Wr]:"fire-fcm",[Hr]:"fire-fcm-compat",[jr]:"fire-perf",[zr]:"fire-perf-compat",[$r]:"fire-rc",[Gr]:"fire-rc-compat",[qr]:"fire-gcs",[Kr]:"fire-gcs-compat",[Jr]:"fire-fst",[Yr]:"fire-fst-compat","fire-js":"fire-js",[Xr]:"fire-js-all"},Ee=new Map,ut=new Map;function ei(e,t){try{e.container.addComponent(t)}catch(o){dt.debug(`Component ${t.name} failed to register with FirebaseApp ${e.name}`,o)}}function te(e){let t=e.name;if(ut.has(t))return dt.debug(`There were multiple attempts to register component ${t}.`),!1;ut.set(t,e);for(let t of Ee.values())ei(t,e);return!0}function ht(e,t){return e.container.getProvider(t)}var ti={"no-app":"No Firebase App '{$appName}' has been created - call Firebase App.initializeApp()","bad-app-name":"Illegal App name: '{$appName}","duplicate-app":"Firebase App named '{$appName}' already exists with different options or config","app-deleted":"Firebase App named '{$appName}' already deleted","invalid-app-argument":"firebase.{$appName}() takes either no argument or a Firebase App instance.","invalid-log-argument":"First argument to `onLog` must be null or a function."},be=new L("app","Firebase",ti),lt=class{constructor(e,t,o){this._isDeleted=!1,this._options=Object.assign({},e),this._config=Object.assign({},t),this._name=t.name,this._automaticDataCollectionEnabled=t.automaticDataCollectionEnabled,this._container=o,this.container.addComponent(new M("app",(()=>this),"PUBLIC"))}get automaticDataCollectionEnabled(){return this.checkDestroyed(),this._automaticDataCollectionEnabled}set automaticDataCollectionEnabled(e){this.checkDestroyed(),this._automaticDataCollectionEnabled=e}get name(){return this.checkDestroyed(),this._name}get options(){return this.checkDestroyed(),this._options}get config(){return this.checkDestroyed(),this._config}get container(){return this._container}get isDeleted(){return this._isDeleted}set isDeleted(e){this._isDeleted=e}checkDestroyed(){if(this.isDeleted)throw be.create("app-deleted",{appName:this._name})}},ne=Zr;function an(e,t={}){"object"!=typeof t&&(t={name:t});let o=Object.assign({name:on,automaticDataCollectionEnabled:!1},t),i=o.name;if("string"!=typeof i||!i)throw be.create("bad-app-name",{appName:String(i)});let n=Ee.get(i);if(n){if(z(e,n.options)&&z(o,n.config))return n;throw be.create("duplicate-app",{appName:i})}let r=new rn(i);for(let e of ut.values())r.addComponent(e);let s=new lt(e,o,r);return Ee.set(i,s),s}function cn(e=on){let t=Ee.get(e);if(!t)throw be.create("no-app",{appName:e});return t}function J(e,t,o){var i;let n=null!==(i=Qr[e])&&void 0!==i?i:e;o&&(n+=`-${o}`);let r=n.match(/\s|\//),s=t.match(/\s|\//);if(r||s){let e=[`Unable to register library "${n}" with version "${t}":`];return r&&e.push(`library name "${n}" contains illegal characters (whitespace or "/")`),r&&s&&e.push("and"),s&&e.push(`version name "${t}" contains illegal characters (whitespace or "/")`),void dt.warn(e.join(" "))}te(new M(`${n}-version`,(()=>({library:n,version:t})),"VERSION"))}function ni(e){te(new M("platform-logger",(e=>new ct(e)),"PRIVATE")),J(sn,Ar,e),J("fire-js","")}ni();var ri="firebase",ii="9.0.2";function wn(){return{"dependent-sdk-initialized-before-auth":"Another Firebase SDK was initialized and is trying to use Auth before Auth is initialized. Please be sure to call `initializeAuth` or `getAuth` before starting any other Firebase SDK."}}J(ri,ii,"app");var En=wn,bn=new L("auth","Firebase",wn()),un=new we("@firebase/auth");function Te(e,...t){un.logLevel<=g.ERROR&&un.error(`Auth (${ne}): ${e}`,...t)}function I(e,...t){throw At(e,...t)}function b(e,...t){return At(e,...t)}function Tn(e,t,o){let i=Object.assign(Object.assign({},En()),{[t]:o});return new L("auth","Firebase",i).create(t,{appName:e.name})}function si(e,t,o){if(!(t instanceof o))throw o.name!==t.constructor.name&&I(e,"argument-error"),Tn(e,"argument-error",`Type of ${t.constructor.name} does not match expected instance.Did you pass a reference from a different Auth SDK?`)}function At(e,...t){if("string"!=typeof e){let o=t[0],i=[...t.slice(1)];return i[0]&&(i[0].appName=e.name),e._errorFactory.create(o,...i)}return bn.create(e,...t)}function f(e,t,...o){if(!e)throw At(t,...o)}function S(e){let t="INTERNAL ASSERTION FAILED: "+e;throw Te(t),new Error(t)}function A(e,t){e||S(t)}var ln=new Map;function O(e){A(e instanceof Function,"Expected a class definition");let t=ln.get(e);return t?(A(t instanceof e,"Instance stored in cache mismatched with class"),t):(t=new e,ln.set(e,t),t)}function Sn(e,t){let o=ht(e,"auth");if(o.isInitialized()){let e=o.getImmediate();if(z(o.getOptions(),t??{}))return e;I(e,"already-initialized")}return o.initialize({options:t})}function oi(e,t){let o=t?.persistence||[],i=(Array.isArray(o)?o:[o]).map(O);t?.errorMap&&e._updateErrorMap(t.errorMap),e._initializeWithPersistence(i,t?.popupRedirectResolver)}function mt(){var e;return typeof self<"u"&&(null===(e=self.location)||void 0===e?void 0:e.href)||""}function ai(){return"http:"===dn()||"https:"===dn()}function dn(){var e;return typeof self<"u"&&(null===(e=self.location)||void 0===e?void 0:e.protocol)||null}function ci(){return!(typeof navigator<"u"&&navigator&&"onLine"in navigator&&"boolean"==typeof navigator.onLine&&(ai()||Zt()||"connection"in navigator))||navigator.onLine}function ui(){if(typeof navigator>"u")return null;let e=navigator;return e.languages&&e.languages[0]||e.language||null}var x=class{constructor(e,t){this.shortDelay=e,this.longDelay=t,A(t>e,"Short delay should be less than long delay!"),this.isMobile=Xt()||Qt()}get(){return ci()?this.isMobile?this.longDelay:this.shortDelay:Math.min(5e3,this.shortDelay)}};function Rt(e,t){A(e.emulator,"Emulator should always be set here");let{url:o}=e.emulator;return t?`${o}${t.startsWith("/")?t.slice(1):t}`:o}var ie=class{static initialize(e,t,o){this.fetchImpl=e,t&&(this.headersImpl=t),o&&(this.responseImpl=o)}static fetch(){return this.fetchImpl?this.fetchImpl:typeof self<"u"&&"fetch"in self?self.fetch:void S("Could not find fetch implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}static headers(){return this.headersImpl?this.headersImpl:typeof self<"u"&&"Headers"in self?self.Headers:void S("Could not find Headers implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}static response(){return this.responseImpl?this.responseImpl:typeof self<"u"&&"Response"in self?self.Response:void S("Could not find Response implementation, make sure you call FetchProvider.initialize() with an appropriate polyfill")}},li={CREDENTIAL_MISMATCH:"custom-token-mismatch",MISSING_CUSTOM_TOKEN:"internal-error",INVALID_IDENTIFIER:"invalid-email",MISSING_CONTINUE_URI:"internal-error",INVALID_PASSWORD:"wrong-password",MISSING_PASSWORD:"internal-error",EMAIL_EXISTS:"email-already-in-use",PASSWORD_LOGIN_DISABLED:"operation-not-allowed",INVALID_IDP_RESPONSE:"invalid-credential",INVALID_PENDING_TOKEN:"invalid-credential",FEDERATED_USER_ID_ALREADY_LINKED:"credential-already-in-use",MISSING_REQ_TYPE:"internal-error",EMAIL_NOT_FOUND:"user-not-found",RESET_PASSWORD_EXCEED_LIMIT:"too-many-requests",EXPIRED_OOB_CODE:"expired-action-code",INVALID_OOB_CODE:"invalid-action-code",MISSING_OOB_CODE:"internal-error",CREDENTIAL_TOO_OLD_LOGIN_AGAIN:"requires-recent-login",INVALID_ID_TOKEN:"invalid-user-token",TOKEN_EXPIRED:"user-token-expired",USER_NOT_FOUND:"user-token-expired",TOO_MANY_ATTEMPTS_TRY_LATER:"too-many-requests",INVALID_CODE:"invalid-verification-code",INVALID_SESSION_INFO:"invalid-verification-id",INVALID_TEMPORARY_PROOF:"invalid-credential",MISSING_SESSION_INFO:"missing-verification-id",SESSION_EXPIRED:"code-expired",MISSING_ANDROID_PACKAGE_NAME:"missing-android-pkg-name",UNAUTHORIZED_DOMAIN:"unauthorized-continue-uri",INVALID_OAUTH_CLIENT_ID:"invalid-oauth-client-id",ADMIN_ONLY_OPERATION:"admin-restricted-operation",INVALID_MFA_PENDING_CREDENTIAL:"invalid-multi-factor-session",MFA_ENROLLMENT_NOT_FOUND:"multi-factor-info-not-found",MISSING_MFA_ENROLLMENT_ID:"missing-multi-factor-info",MISSING_MFA_PENDING_CREDENTIAL:"missing-multi-factor-session",SECOND_FACTOR_EXISTS:"second-factor-already-in-use",SECOND_FACTOR_LIMIT_EXCEEDED:"maximum-second-factor-count-exceeded",BLOCKING_FUNCTION_ERROR_RESPONSE:"internal-error"},di=new x(3e4,6e4);function P(e,t){return e.tenantId&&!t.tenantId?Object.assign(Object.assign({},t),{tenantId:e.tenantId}):t}async function C(e,t,o,i,n={}){return On(e,n,(()=>{let n={},r={};i&&("GET"===t?r=i:n={body:JSON.stringify(i)});let s=$(Object.assign({key:e.config.apiKey},r)).slice(1),a=new(ie.headers());return a.set("Content-Type","application/json"),a.set("X-Client-Version",e._getSdkClientVersion()),e.languageCode&&a.set("X-Firebase-Locale",e.languageCode),ie.fetch()(An(e,e.config.apiHost,o,s),Object.assign({method:t,headers:a,referrerPolicy:"no-referrer"},n))}))}async function On(e,t,o){e._canInitEmulator=!1;let i=Object.assign(Object.assign({},li),t);try{let t=new gt(e),n=await Promise.race([o(),t.promise]);t.clearNetworkTimeout();let r=await n.json();if("needConfirmation"in r)throw Se(e,"account-exists-with-different-credential",r);if(n.ok&&!("errorMessage"in r))return r;{let t=n.ok?r.errorMessage:r.error.message,[o,s]=t.split(" : ");if("FEDERATED_USER_ID_ALREADY_LINKED"===o)throw Se(e,"credential-already-in-use",r);if("EMAIL_EXISTS"===o)throw Se(e,"email-already-in-use",r);let a=i[o]||o.toLowerCase().replace(/[_\s]+/g,"-");if(s)throw Tn(e,a,s);I(e,a)}}catch(t){if(t instanceof j)throw t;I(e,"network-request-failed")}}async function H(e,t,o,i,n={}){let r=await C(e,t,o,i,n);return"mfaPendingCredential"in r&&I(e,"multi-factor-auth-required",{serverResponse:r}),r}function An(e,t,o,i){let n=`${t}${o}?${i}`;return e.config.emulator?Rt(e.config,n):`${e.config.apiScheme}://${n}`}var gt=class{constructor(e){this.auth=e,this.timer=null,this.promise=new Promise(((e,t)=>{this.timer=setTimeout((()=>t(b(this.auth,"timeout"))),di.get())}))}clearNetworkTimeout(){clearTimeout(this.timer)}};function Se(e,t,o){let i={appName:e.name};o.email&&(i.email=o.email),o.phoneNumber&&(i.phoneNumber=o.phoneNumber);let n=b(e,t,i);return n.customData._tokenResponse=o,n}async function hi(e,t){return C(e,"POST","/v1/accounts:delete",t)}async function fi(e,t){return C(e,"POST","/v1/accounts:lookup",t)}function re(e){if(e)try{let t=new Date(Number(e));if(!isNaN(t.getTime()))return t.toUTCString()}catch{}}async function Rn(e,t=!1){let o=K(e),i=await o.getIdToken(t),n=Nt(i);f(n&&n.exp&&n.auth_time&&n.iat,o.auth,"internal-error");let r="object"==typeof n.firebase?n.firebase:void 0,s=r?.sign_in_provider;return{claims:n,token:i,authTime:re(ft(n.auth_time)),issuedAtTime:re(ft(n.iat)),expirationTime:re(ft(n.exp)),signInProvider:s||null,signInSecondFactor:r?.sign_in_second_factor||null}}function ft(e){return 1e3*Number(e)}function Nt(e){let[t,o,i]=e.split(".");if(void 0===t||void 0===o||void 0===i)return Te("JWT malformed, contained fewer than 3 sections"),null;try{let e=Jt(o);return e?JSON.parse(e):(Te("Failed to decode base64 JWT payload"),null)}catch(e){return Te("Caught error parsing JWT payload as JSON",e),null}}function pi(e){let t=Nt(e);return f(t,"internal-error"),f(typeof t.exp<"u","internal-error"),f(typeof t.iat<"u","internal-error"),Number(t.exp)-Number(t.iat)}async function se(e,t,o=!1){if(o)return t;try{return await t}catch(t){throw t instanceof j&&mi(t)&&e.auth.currentUser===e&&await e.auth.signOut(),t}}function mi({code:e}){return"auth/user-disabled"===e||"auth/user-token-expired"===e}var vt=class{constructor(e){this.user=e,this.isRunning=!1,this.timerId=null,this.errorBackoff=3e4}_start(){this.isRunning||(this.isRunning=!0,this.schedule())}_stop(){this.isRunning&&(this.isRunning=!1,null!==this.timerId&&clearTimeout(this.timerId))}getInterval(e){var t;if(e){let e=this.errorBackoff;return this.errorBackoff=Math.min(2*this.errorBackoff,96e4),e}{this.errorBackoff=3e4;let e=(null!==(t=this.user.stsTokenManager.expirationTime)&&void 0!==t?t:0)-Date.now()-3e5;return Math.max(0,e)}}schedule(e=!1){if(!this.isRunning)return;let t=this.getInterval(e);this.timerId=setTimeout((async()=>{await this.iteration()}),t)}async iteration(){try{await this.user.getIdToken(!0)}catch(e){return void("auth/network-request-failed"===e.code&&this.schedule(!0))}this.schedule()}},Re=class{constructor(e,t){this.createdAt=e,this.lastLoginAt=t,this._initializeTime()}_initializeTime(){this.lastSignInTime=re(this.lastLoginAt),this.creationTime=re(this.createdAt)}_copy(e){this.createdAt=e.createdAt,this.lastLoginAt=e.lastLoginAt,this._initializeTime()}toJSON(){return{createdAt:this.createdAt,lastLoginAt:this.lastLoginAt}}};async function Ne(e){var t;let o=e.auth,i=await e.getIdToken(),n=await se(e,fi(o,{idToken:i}));f(n?.users.length,o,"internal-error");let r=n.users[0];e._notifyReloadListener(r);let s=null!==(t=r.providerUserInfo)&&void 0!==t&&t.length?vi(r.providerUserInfo):[],a=gi(e.providerData,s),l=e.isAnonymous,u=!(e.email&&r.passwordHash||a?.length),c=!!l&&u,d={uid:r.localId,displayName:r.displayName||null,photoURL:r.photoUrl||null,email:r.email||null,emailVerified:r.emailVerified||!1,phoneNumber:r.phoneNumber||null,tenantId:r.tenantId||null,providerData:a,metadata:new Re(r.createdAt,r.lastLoginAt),isAnonymous:c};Object.assign(e,d)}async function Nn(e){let t=K(e);await Ne(t),await t.auth._persistUserIfCurrent(t),t.auth._notifyListenersIfCurrent(t)}function gi(e,t){return[...e.filter((e=>!t.some((t=>t.providerId===e.providerId)))),...t]}function vi(e){return e.map((e=>{var{providerId:t}=e,o=ye(e,["providerId"]);return{providerId:t,uid:o.rawId||"",displayName:o.displayName||null,email:o.email||null,phoneNumber:o.phoneNumber||null,photoURL:o.photoUrl||null}}))}async function _i(e,t){let o=await On(e,{},(()=>{let o=$({grant_type:"refresh_token",refresh_token:t}).slice(1),{tokenApiHost:i,apiKey:n}=e.config,r=An(e,i,"/v1/token",`key=${n}`);return ie.fetch()(r,{method:"POST",headers:{"X-Client-Version":e._getSdkClientVersion(),"Content-Type":"application/x-www-form-urlencoded"},body:o})}));return{accessToken:o.access_token,expiresIn:o.expires_in,refreshToken:o.refresh_token}}var ke=class e{constructor(){this.refreshToken=null,this.accessToken=null,this.expirationTime=null}get isExpired(){return!this.expirationTime||Date.now()>this.expirationTime-3e4}updateFromServerResponse(e){f(e.idToken,"internal-error"),f(typeof e.idToken<"u","internal-error"),f(typeof e.refreshToken<"u","internal-error");let t="expiresIn"in e&&typeof e.expiresIn<"u"?Number(e.expiresIn):pi(e.idToken);this.updateTokensAndExpiration(e.idToken,e.refreshToken,t)}async getToken(e,t=!1){return f(!this.accessToken||this.refreshToken,e,"user-token-expired"),t||!this.accessToken||this.isExpired?this.refreshToken?(await this.refresh(e,this.refreshToken),this.accessToken):null:this.accessToken}clearRefreshToken(){this.refreshToken=null}async refresh(e,t){let{accessToken:o,refreshToken:i,expiresIn:n}=await _i(e,t);this.updateTokensAndExpiration(o,i,Number(n))}updateTokensAndExpiration(e,t,o){this.refreshToken=t||null,this.accessToken=e||null,this.expirationTime=Date.now()+1e3*o}static fromJSON(t,o){let{refreshToken:i,accessToken:n,expirationTime:r}=o,s=new e;return i&&(f("string"==typeof i,"internal-error",{appName:t}),s.refreshToken=i),n&&(f("string"==typeof n,"internal-error",{appName:t}),s.accessToken=n),r&&(f("number"==typeof r,"internal-error",{appName:t}),s.expirationTime=r),s}toJSON(){return{refreshToken:this.refreshToken,accessToken:this.accessToken,expirationTime:this.expirationTime}}_assign(e){this.accessToken=e.accessToken,this.refreshToken=e.refreshToken,this.expirationTime=e.expirationTime}_clone(){return Object.assign(new e,this.toJSON())}_performRefresh(){return S("not implemented")}};function N(e,t){f("string"==typeof e||typeof e>"u","internal-error",{appName:t})}var oe=class e{constructor(e){var{uid:t,auth:o,stsTokenManager:i}=e,n=ye(e,["uid","auth","stsTokenManager"]);this.providerId="firebase",this.emailVerified=!1,this.isAnonymous=!1,this.tenantId=null,this.providerData=[],this.proactiveRefresh=new vt(this),this.reloadUserInfo=null,this.reloadListener=null,this.uid=t,this.auth=o,this.stsTokenManager=i,this.accessToken=i.accessToken,this.displayName=n.displayName||null,this.email=n.email||null,this.phoneNumber=n.phoneNumber||null,this.photoURL=n.photoURL||null,this.isAnonymous=n.isAnonymous||!1,this.metadata=new Re(n.createdAt||void 0,n.lastLoginAt||void 0)}async getIdToken(e){let t=await se(this,this.stsTokenManager.getToken(this.auth,e));return f(t,this.auth,"internal-error"),this.accessToken!==t&&(this.accessToken=t,await this.auth._persistUserIfCurrent(this),this.auth._notifyListenersIfCurrent(this)),t}getIdTokenResult(e){return Rn(this,e)}reload(){return Nn(this)}_assign(e){this!==e&&(f(this.uid===e.uid,this.auth,"internal-error"),this.displayName=e.displayName,this.photoURL=e.photoURL,this.email=e.email,this.emailVerified=e.emailVerified,this.phoneNumber=e.phoneNumber,this.isAnonymous=e.isAnonymous,this.tenantId=e.tenantId,this.providerData=e.providerData.map((e=>Object.assign({},e))),this.metadata._copy(e.metadata),this.stsTokenManager._assign(e.stsTokenManager))}_clone(t){return new e(Object.assign(Object.assign({},this),{auth:t,stsTokenManager:this.stsTokenManager._clone()}))}_onReload(e){f(!this.reloadListener,this.auth,"internal-error"),this.reloadListener=e,this.reloadUserInfo&&(this._notifyReloadListener(this.reloadUserInfo),this.reloadUserInfo=null)}_notifyReloadListener(e){this.reloadListener?this.reloadListener(e):this.reloadUserInfo=e}_startProactiveRefresh(){this.proactiveRefresh._start()}_stopProactiveRefresh(){this.proactiveRefresh._stop()}async _updateTokensIfNecessary(e,t=!1){let o=!1;e.idToken&&e.idToken!==this.stsTokenManager.accessToken&&(this.stsTokenManager.updateFromServerResponse(e),o=!0),t&&await Ne(this),await this.auth._persistUserIfCurrent(this),o&&this.auth._notifyListenersIfCurrent(this)}async delete(){let e=await this.getIdToken();return await se(this,hi(this.auth,{idToken:e})),this.stsTokenManager.clearRefreshToken(),this.auth.signOut()}toJSON(){return Object.assign(Object.assign({uid:this.uid,email:this.email||void 0,emailVerified:this.emailVerified,displayName:this.displayName||void 0,isAnonymous:this.isAnonymous,photoURL:this.photoURL||void 0,phoneNumber:this.phoneNumber||void 0,tenantId:this.tenantId||void 0,providerData:this.providerData.map((e=>Object.assign({},e))),stsTokenManager:this.stsTokenManager.toJSON(),_redirectEventId:this._redirectEventId},this.metadata.toJSON()),{apiKey:this.auth.config.apiKey,appName:this.auth.name})}get refreshToken(){return this.stsTokenManager.refreshToken||""}static _fromJSON(t,o){var i,n,r,s,a,l,u,c;let d=null!==(i=o.displayName)&&void 0!==i?i:void 0,h=null!==(n=o.email)&&void 0!==n?n:void 0,p=null!==(r=o.phoneNumber)&&void 0!==r?r:void 0,m=null!==(s=o.photoURL)&&void 0!==s?s:void 0,g=null!==(a=o.tenantId)&&void 0!==a?a:void 0,b=null!==(l=o._redirectEventId)&&void 0!==l?l:void 0,v=null!==(u=o.createdAt)&&void 0!==u?u:void 0,y=null!==(c=o.lastLoginAt)&&void 0!==c?c:void 0,{uid:w,emailVerified:C,isAnonymous:E,providerData:R,stsTokenManager:T}=o;f(w&&T,t,"internal-error");let _=ke.fromJSON(this.name,T);f("string"==typeof w,t,"internal-error"),N(d,t.name),N(h,t.name),f("boolean"==typeof C,t,"internal-error"),f("boolean"==typeof E,t,"internal-error"),N(p,t.name),N(m,t.name),N(g,t.name),N(b,t.name),N(v,t.name),N(y,t.name);let L=new e({uid:w,auth:t,email:h,emailVerified:C,displayName:d,isAnonymous:E,photoURL:m,phoneNumber:p,tenantId:g,stsTokenManager:_,createdAt:v,lastLoginAt:y});return R&&Array.isArray(R)&&(L.providerData=R.map((e=>Object.assign({},e)))),b&&(L._redirectEventId=b),L}static async _fromIdTokenResponse(t,o,i=!1){let n=new ke;n.updateFromServerResponse(o);let r=new e({uid:o.localId,auth:t,stsTokenManager:n,isAnonymous:i});return await Ne(r),r}},Pe=class{constructor(){this.type="NONE",this.storage={}}async _isAvailable(){return!0}async _set(e,t){this.storage[e]=t}async _get(e){let t=this.storage[e];return void 0===t?null:t}async _remove(e){delete this.storage[e]}_addListener(e,t){}_removeListener(e,t){}};Pe.type="NONE";var _t=Pe;function Oe(e,t,o){return`firebase:${e}:${t}:${o}`}var Ce=class e{constructor(e,t,o){this.persistence=e,this.auth=t,this.userKey=o;let{config:i,name:n}=this.auth;this.fullUserKey=Oe(this.userKey,i.apiKey,n),this.fullPersistenceKey=Oe("persistence",i.apiKey,n),this.boundEventHandler=t._onStorageEvent.bind(t),this.persistence._addListener(this.fullUserKey,this.boundEventHandler)}setCurrentUser(e){return this.persistence._set(this.fullUserKey,e.toJSON())}async getCurrentUser(){let e=await this.persistence._get(this.fullUserKey);return e?oe._fromJSON(this.auth,e):null}removeCurrentUser(){return this.persistence._remove(this.fullUserKey)}savePersistenceForRedirect(){return this.persistence._set(this.fullPersistenceKey,this.persistence.type)}async setPersistence(e){if(this.persistence===e)return;let t=await this.getCurrentUser();return await this.removeCurrentUser(),this.persistence=e,t?this.setCurrentUser(t):void 0}delete(){this.persistence._removeListener(this.fullUserKey,this.boundEventHandler)}static async create(t,o,i="authUser"){if(!o.length)return new e(O(_t),t,i);let n=(await Promise.all(o.map((async e=>{if(await e._isAvailable())return e})))).filter((e=>e)),r=n[0]||O(_t),s=Oe(i,t.config.apiKey,t.name),a=null;for(let e of o)try{let o=await e._get(s);if(o){let i=oe._fromJSON(t,o);e!==r&&(a=i),r=e;break}}catch{}let l=n.filter((e=>e._shouldAllowMigration));return r._shouldAllowMigration&&l.length?(r=l[0],a&&await r._set(s,a.toJSON()),await Promise.all(o.map((async e=>{if(e!==r)try{await e._remove(s)}catch{}}))),new e(r,t,i)):new e(r,t,i)}};function hn(e){let t=e.toLowerCase();if(t.includes("opera/")||t.includes("opr/")||t.includes("opios/"))return"Opera";if(Cn(t))return"IEMobile";if(t.includes("msie")||t.includes("trident/"))return"IE";if(t.includes("edge/"))return"Edge";if(kn(t))return"Firefox";if(t.includes("silk/"))return"Silk";if(Dn(t))return"Blackberry";if(Mn(t))return"Webos";if(kt(t))return"Safari";if((t.includes("chrome/")||Pn(t))&&!t.includes("edge/"))return"Chrome";if(Ln(t))return"Android";{let t=/([a-zA-Z\d\.]+)\/[a-zA-Z\d\.]*$/,o=e.match(t);if(2===o?.length)return o[1]}return"Other"}function kn(e=_()){return/firefox\//i.test(e)}function kt(e=_()){let t=e.toLowerCase();return t.includes("safari/")&&!t.includes("chrome/")&&!t.includes("crios/")&&!t.includes("android")}function Pn(e=_()){return/crios\//i.test(e)}function Cn(e=_()){return/iemobile/i.test(e)}function Ln(e=_()){return/android/i.test(e)}function Dn(e=_()){return/blackberry/i.test(e)}function Mn(e=_()){return/webos/i.test(e)}function $e(e=_()){return/iphone|ipad|ipod/i.test(e)}function yi(e=_()){var t;return $e(e)&&!(null===(t=window.navigator)||void 0===t||!t.standalone)}function Ii(){return en()&&10===document.documentMode}function Un(e=_()){return $e(e)||Ln(e)||Mn(e)||Dn(e)||/windows phone/i.test(e)||Cn(e)}function wi(){try{return!(!window||window===window.top)}catch{return!1}}function xn(e,t=[]){let o;switch(e){case"Browser":o=hn(_());break;case"Worker":o=`${hn(_())}-${e}`;break;default:o=e}let i=t.length?t.join(","):"FirebaseCore-web";return`${o}/JsCore/${ne}/${i}`}var yt=class{constructor(e,t){this.app=e,this.config=t,this.currentUser=null,this.emulatorConfig=null,this.operations=Promise.resolve(),this.authStateSubscription=new Le(this),this.idTokenSubscription=new Le(this),this.redirectUser=null,this.isProactiveRefreshEnabled=!1,this._canInitEmulator=!0,this._isInitialized=!1,this._deleted=!1,this._initializationPromise=null,this._popupRedirectResolver=null,this._errorFactory=bn,this.lastNotifiedUid=void 0,this.languageCode=null,this.tenantId=null,this.settings={appVerificationDisabledForTesting:!1},this.frameworks=[],this.name=e.name,this.clientVersion=t.sdkClientVersion}_initializeWithPersistence(e,t){return t&&(this._popupRedirectResolver=O(t)),this._initializationPromise=this.queue((async()=>{var o;this._deleted||(this.persistenceManager=await Ce.create(this,e),!this._deleted&&(!(null===(o=this._popupRedirectResolver)||void 0===o)&&o._shouldInitProactively&&await this._popupRedirectResolver._initialize(this),await this.initializeCurrentUser(t),!this._deleted&&(this._isInitialized=!0)))})),this._initializationPromise}async _onStorageEvent(){if(this._deleted)return;let e=await this.assertedPersistence.getCurrentUser();if(this.currentUser||e){if(this.currentUser&&e&&this.currentUser.uid===e.uid)return this._currentUser._assign(e),void await this.currentUser.getIdToken();await this._updateCurrentUser(e)}}async initializeCurrentUser(e){var t;let o=await this.assertedPersistence.getCurrentUser();if(e&&this.config.authDomain){await this.getOrInitRedirectPersistenceManager();let i=null===(t=this.redirectUser)||void 0===t?void 0:t._redirectEventId,n=o?._redirectEventId,r=await this.tryRedirectSignIn(e);(!i||i===n)&&r?.user&&(o=r.user)}return o?o._redirectEventId?(f(this._popupRedirectResolver,this,"argument-error"),await this.getOrInitRedirectPersistenceManager(),this.redirectUser&&this.redirectUser._redirectEventId===o._redirectEventId?this.directlySetCurrentUser(o):this.reloadAndSetCurrentUserOrClear(o)):this.reloadAndSetCurrentUserOrClear(o):this.directlySetCurrentUser(null)}async tryRedirectSignIn(e){let t=null;try{t=await this._popupRedirectResolver._completeRedirectFn(this,e,!0)}catch{await this._setRedirectUser(null)}return t}async reloadAndSetCurrentUserOrClear(e){try{await Ne(e)}catch(e){if("auth/network-request-failed"!==e.code)return this.directlySetCurrentUser(null)}return this.directlySetCurrentUser(e)}useDeviceLanguage(){this.languageCode=ui()}async _delete(){this._deleted=!0}async updateCurrentUser(e){let t=e?K(e):null;return t&&f(t.auth.config.apiKey===this.config.apiKey,this,"invalid-user-token"),this._updateCurrentUser(t&&t._clone(this))}async _updateCurrentUser(e){if(!this._deleted)return e&&f(this.tenantId===e.tenantId,this,"tenant-id-mismatch"),this.queue((async()=>{await this.directlySetCurrentUser(e),this.notifyAuthListeners()}))}async signOut(){return(this.redirectPersistenceManager||this._popupRedirectResolver)&&await this._setRedirectUser(null),this._updateCurrentUser(null)}setPersistence(e){return this.queue((async()=>{await this.assertedPersistence.setPersistence(O(e))}))}_getPersistence(){return this.assertedPersistence.persistence.type}_updateErrorMap(e){this._errorFactory=new L("auth","Firebase",e())}onAuthStateChanged(e,t,o){return this.registerStateListener(this.authStateSubscription,e,t,o)}onIdTokenChanged(e,t,o){return this.registerStateListener(this.idTokenSubscription,e,t,o)}toJSON(){var e;return{apiKey:this.config.apiKey,authDomain:this.config.authDomain,appName:this.name,currentUser:null===(e=this._currentUser)||void 0===e?void 0:e.toJSON()}}async _setRedirectUser(e,t){let o=await this.getOrInitRedirectPersistenceManager(t);return null===e?o.removeCurrentUser():o.setCurrentUser(e)}async getOrInitRedirectPersistenceManager(e){if(!this.redirectPersistenceManager){let t=e&&O(e)||this._popupRedirectResolver;f(t,this,"argument-error"),this.redirectPersistenceManager=await Ce.create(this,[O(t._redirectPersistence)],"redirectUser"),this.redirectUser=await this.redirectPersistenceManager.getCurrentUser()}return this.redirectPersistenceManager}async _redirectUserForId(e){var t,o;return this._isInitialized&&await this.queue((async()=>{})),(null===(t=this._currentUser)||void 0===t?void 0:t._redirectEventId)===e?this._currentUser:(null===(o=this.redirectUser)||void 0===o?void 0:o._redirectEventId)===e?this.redirectUser:null}async _persistUserIfCurrent(e){if(e===this.currentUser)return this.queue((async()=>this.directlySetCurrentUser(e)))}_notifyListenersIfCurrent(e){e===this.currentUser&&this.notifyAuthListeners()}_key(){return`${this.config.authDomain}:${this.config.apiKey}:${this.name}`}_startProactiveRefresh(){this.isProactiveRefreshEnabled=!0,this.currentUser&&this._currentUser._startProactiveRefresh()}_stopProactiveRefresh(){this.isProactiveRefreshEnabled=!1,this.currentUser&&this._currentUser._stopProactiveRefresh()}get _currentUser(){return this.currentUser}notifyAuthListeners(){var e,t;if(!this._isInitialized)return;this.idTokenSubscription.next(this.currentUser);let o=null!==(t=null===(e=this.currentUser)||void 0===e?void 0:e.uid)&&void 0!==t?t:null;this.lastNotifiedUid!==o&&(this.lastNotifiedUid=o,this.authStateSubscription.next(this.currentUser))}registerStateListener(e,t,o,i){if(this._deleted)return()=>{};let n="function"==typeof t?t:t.next.bind(t),r=this._isInitialized?Promise.resolve():this._initializationPromise;return f(r,this,"internal-error"),r.then((()=>n(this.currentUser))),"function"==typeof t?e.addObserver(t,o,i):e.addObserver(t)}async directlySetCurrentUser(e){this.currentUser&&this.currentUser!==e&&(this._currentUser._stopProactiveRefresh(),e&&this.isProactiveRefreshEnabled&&e._startProactiveRefresh()),this.currentUser=e,e?await this.assertedPersistence.setCurrentUser(e):await this.assertedPersistence.removeCurrentUser()}queue(e){return this.operations=this.operations.then(e,e),this.operations}get assertedPersistence(){return f(this.persistenceManager,this,"internal-error"),this.persistenceManager}_logFramework(e){!e||this.frameworks.includes(e)||(this.frameworks.push(e),this.frameworks.sort(),this.clientVersion=xn(this.config.clientPlatform,this._getFrameworks()))}_getFrameworks(){return this.frameworks}_getSdkClientVersion(){return this.clientVersion}};function Ge(e){return K(e)}var Le=class{constructor(e){this.auth=e,this.observer=null,this.addObserver=nn((e=>this.observer=e))}get next(){return f(this.observer,this.auth,"internal-error"),this.observer.next.bind(this.observer)}},F=class{constructor(e,t){this.providerId=e,this.signInMethod=t}toJSON(){return S("not implemented")}_getIdTokenResponse(e){return S("not implemented")}_linkToIdToken(e,t){return S("not implemented")}_getReauthenticationResolver(e){return S("not implemented")}};async function Ei(e,t){return C(e,"POST","/v1/accounts:update",t)}async function bi(e,t){return H(e,"POST","/v1/accounts:signInWithPassword",P(e,t))}async function Ti(e,t){return H(e,"POST","/v1/accounts:signInWithEmailLink",P(e,t))}async function Si(e,t){return H(e,"POST","/v1/accounts:signInWithEmailLink",P(e,t))}var ae=class e extends F{constructor(e,t,o,i=null){super("password",o),this._email=e,this._password=t,this._tenantId=i}static _fromEmailAndPassword(t,o){return new e(t,o,"password")}static _fromEmailAndCode(t,o,i=null){return new e(t,o,"emailLink",i)}toJSON(){return{email:this._email,password:this._password,signInMethod:this.signInMethod,tenantId:this._tenantId}}static fromJSON(e){let t="string"==typeof e?JSON.parse(e):e;if(t?.email&&t?.password){if("password"===t.signInMethod)return this._fromEmailAndPassword(t.email,t.password);if("emailLink"===t.signInMethod)return this._fromEmailAndCode(t.email,t.password,t.tenantId)}return null}async _getIdTokenResponse(e){switch(this.signInMethod){case"password":return bi(e,{returnSecureToken:!0,email:this._email,password:this._password});case"emailLink":return Ti(e,{email:this._email,oobCode:this._password});default:I(e,"internal-error")}}async _linkToIdToken(e,t){switch(this.signInMethod){case"password":return Ei(e,{idToken:t,returnSecureToken:!0,email:this._email,password:this._password});case"emailLink":return Si(e,{idToken:t,email:this._email,oobCode:this._password});default:I(e,"internal-error")}}_getReauthenticationResolver(e){return this._getIdTokenResponse(e)}};async function Y(e,t){return H(e,"POST","/v1/accounts:signInWithIdp",P(e,t))}var Oi="http://localhost",V=class e extends F{constructor(){super(...arguments),this.pendingToken=null}static _fromParams(t){let o=new e(t.providerId,t.signInMethod);return t.idToken||t.accessToken?(t.idToken&&(o.idToken=t.idToken),t.accessToken&&(o.accessToken=t.accessToken),t.nonce&&!t.pendingToken&&(o.nonce=t.nonce),t.pendingToken&&(o.pendingToken=t.pendingToken)):t.oauthToken&&t.oauthTokenSecret?(o.accessToken=t.oauthToken,o.secret=t.oauthTokenSecret):I("argument-error"),o}toJSON(){return{idToken:this.idToken,accessToken:this.accessToken,secret:this.secret,nonce:this.nonce,pendingToken:this.pendingToken,providerId:this.providerId,signInMethod:this.signInMethod}}static fromJSON(t){let o="string"==typeof t?JSON.parse(t):t,{providerId:i,signInMethod:n}=o,r=ye(o,["providerId","signInMethod"]);if(!i||!n)return null;let s=new e(i,n);return Object.assign(s,r),s}_getIdTokenResponse(e){return Y(e,this.buildRequest())}_linkToIdToken(e,t){let o=this.buildRequest();return o.idToken=t,Y(e,o)}_getReauthenticationResolver(e){let t=this.buildRequest();return t.autoCreate=!1,Y(e,t)}buildRequest(){let e={requestUri:Oi,returnSecureToken:!0};if(this.pendingToken)e.pendingToken=this.pendingToken;else{let t={};this.idToken&&(t.id_token=this.idToken),this.accessToken&&(t.access_token=this.accessToken),this.secret&&(t.oauth_token_secret=this.secret),t.providerId=this.providerId,this.nonce&&!this.pendingToken&&(t.nonce=this.nonce),e.postBody=$(t)}return e}};async function Ai(e,t){return C(e,"POST","/v1/accounts:sendVerificationCode",P(e,t))}async function Ri(e,t){return H(e,"POST","/v1/accounts:signInWithPhoneNumber",P(e,t))}async function Ni(e,t){let o=await H(e,"POST","/v1/accounts:signInWithPhoneNumber",P(e,t));if(o.temporaryProof)throw Se(e,"account-exists-with-different-credential",o);return o}var ki={USER_NOT_FOUND:"user-not-found"};async function Pi(e,t){return H(e,"POST","/v1/accounts:signInWithPhoneNumber",P(e,Object.assign(Object.assign({},t),{operation:"REAUTH"})),ki)}var ce=class e extends F{constructor(e){super("phone","phone"),this.params=e}static _fromVerification(t,o){return new e({verificationId:t,verificationCode:o})}static _fromTokenResponse(t,o){return new e({phoneNumber:t,temporaryProof:o})}_getIdTokenResponse(e){return Ri(e,this._makeVerificationRequest())}_linkToIdToken(e,t){return Ni(e,Object.assign({idToken:t},this._makeVerificationRequest()))}_getReauthenticationResolver(e){return Pi(e,this._makeVerificationRequest())}_makeVerificationRequest(){let{temporaryProof:e,phoneNumber:t,verificationId:o,verificationCode:i}=this.params;return e&&t?{temporaryProof:e,phoneNumber:t}:{sessionInfo:o,code:i}}toJSON(){let e={providerId:this.providerId};return this.params.phoneNumber&&(e.phoneNumber=this.params.phoneNumber),this.params.temporaryProof&&(e.temporaryProof=this.params.temporaryProof),this.params.verificationCode&&(e.verificationCode=this.params.verificationCode),this.params.verificationId&&(e.verificationId=this.params.verificationId),e}static fromJSON(t){"string"==typeof t&&(t=JSON.parse(t));let{verificationId:o,verificationCode:i,phoneNumber:n,temporaryProof:r}=t;return i||o||n||r?new e({verificationId:o,verificationCode:i,phoneNumber:n,temporaryProof:r}):null}};function Ci(e){switch(e){case"recoverEmail":return"RECOVER_EMAIL";case"resetPassword":return"PASSWORD_RESET";case"signIn":return"EMAIL_SIGNIN";case"verifyEmail":return"VERIFY_EMAIL";case"verifyAndChangeEmail":return"VERIFY_AND_CHANGE_EMAIL";case"revertSecondFactorAddition":return"REVERT_SECOND_FACTOR_ADDITION";default:return null}}function Li(e){let t=G(q(e)).link,o=t?G(q(t)).deep_link_id:null,i=G(q(e)).deep_link_id;return(i?G(q(i)).link:null)||i||o||t||e}var De=class e{constructor(e){var t,o,i,n,r,s;let a=G(q(e)),l=null!==(t=a.apiKey)&&void 0!==t?t:null,u=null!==(o=a.oobCode)&&void 0!==o?o:null,c=Ci(null!==(i=a.mode)&&void 0!==i?i:null);f(l&&u&&c,"argument-error"),this.apiKey=l,this.operation=c,this.code=u,this.continueUrl=null!==(n=a.continueUrl)&&void 0!==n?n:null,this.languageCode=null!==(r=a.languageCode)&&void 0!==r?r:null,this.tenantId=null!==(s=a.tenantId)&&void 0!==s?s:null}static parseLink(t){let o=Li(t);try{return new e(o)}catch{return null}}},X=class e{constructor(){this.providerId=e.PROVIDER_ID}static credential(e,t){return ae._fromEmailAndPassword(e,t)}static credentialWithLink(e,t){let o=De.parseLink(t);return f(o,"argument-error"),ae._fromEmailAndCode(e,o.code,o.tenantId)}};X.PROVIDER_ID="password",X.EMAIL_PASSWORD_SIGN_IN_METHOD="password",X.EMAIL_LINK_SIGN_IN_METHOD="emailLink";var ue=class{constructor(e){this.providerId=e,this.defaultLanguageCode=null,this.customParameters={}}setDefaultLanguage(e){this.defaultLanguageCode=e}setCustomParameters(e){return this.customParameters=e,this}getCustomParameters(){return this.customParameters}},B=class extends ue{constructor(){super(...arguments),this.scopes=[]}addScope(e){return this.scopes.includes(e)||this.scopes.push(e),this}getScopes(){return[...this.scopes]}},le=class e extends B{constructor(){super("facebook.com")}static credential(t){return V._fromParams({providerId:e.PROVIDER_ID,signInMethod:e.FACEBOOK_SIGN_IN_METHOD,accessToken:t})}static credentialFromResult(t){return e.credentialFromTaggedObject(t)}static credentialFromError(t){return e.credentialFromTaggedObject(t.customData||{})}static credentialFromTaggedObject({_tokenResponse:t}){if(!t||!("oauthAccessToken"in t)||!t.oauthAccessToken)return null;try{return e.credential(t.oauthAccessToken)}catch{return null}}};le.FACEBOOK_SIGN_IN_METHOD="facebook.com",le.PROVIDER_ID="facebook.com";var de=class e extends B{constructor(){super("google.com"),this.addScope("profile")}static credential(t,o){return V._fromParams({providerId:e.PROVIDER_ID,signInMethod:e.GOOGLE_SIGN_IN_METHOD,idToken:t,accessToken:o})}static credentialFromResult(t){return e.credentialFromTaggedObject(t)}static credentialFromError(t){return e.credentialFromTaggedObject(t.customData||{})}static credentialFromTaggedObject({_tokenResponse:t}){if(!t)return null;let{oauthIdToken:o,oauthAccessToken:i}=t;if(!o&&!i)return null;try{return e.credential(o,i)}catch{return null}}};de.GOOGLE_SIGN_IN_METHOD="google.com",de.PROVIDER_ID="google.com";var k=class e extends B{constructor(){super("github.com")}static credential(t){return V._fromParams({providerId:e.PROVIDER_ID,signInMethod:e.GITHUB_SIGN_IN_METHOD,accessToken:t})}static credentialFromResult(t){return e.credentialFromTaggedObject(t)}static credentialFromError(t){return e.credentialFromTaggedObject(t.customData||{})}static credentialFromTaggedObject({_tokenResponse:t}){if(!t||!("oauthAccessToken"in t)||!t.oauthAccessToken)return null;try{return e.credential(t.oauthAccessToken)}catch{return null}}};k.GITHUB_SIGN_IN_METHOD="github.com",k.PROVIDER_ID="github.com";var he=class e extends B{constructor(){super("twitter.com")}static credential(t,o){return V._fromParams({providerId:e.PROVIDER_ID,signInMethod:e.TWITTER_SIGN_IN_METHOD,oauthToken:t,oauthTokenSecret:o})}static credentialFromResult(t){return e.credentialFromTaggedObject(t)}static credentialFromError(t){return e.credentialFromTaggedObject(t.customData||{})}static credentialFromTaggedObject({_tokenResponse:t}){if(!t)return null;let{oauthAccessToken:o,oauthTokenSecret:i}=t;if(!o||!i)return null;try{return e.credential(o,i)}catch{return null}}};he.TWITTER_SIGN_IN_METHOD="twitter.com",he.PROVIDER_ID="twitter.com";var fe=class e{constructor(e){this.user=e.user,this.providerId=e.providerId,this._tokenResponse=e._tokenResponse,this.operationType=e.operationType}static async _fromIdTokenResponse(t,o,i,n=!1){let r=await oe._fromIdTokenResponse(t,i,n),s=fn(i);return new e({user:r,providerId:s,_tokenResponse:i,operationType:o})}static async _forOperation(t,o,i){await t._updateTokensIfNecessary(i,!0);let n=fn(i);return new e({user:t,providerId:n,_tokenResponse:i,operationType:o})}};function fn(e){return e.providerId?e.providerId:"phoneNumber"in e?"phone":null}var It=class e extends j{constructor(t,o,i,n){var r;super(o.code,o.message),this.operationType=i,this.user=n,this.name="FirebaseError",Object.setPrototypeOf(this,e.prototype),this.appName=t.name,this.code=o.code,this.tenantId=null!==(r=t.tenantId)&&void 0!==r?r:void 0,this.serverResponse=o.customData.serverResponse}static _fromErrorAndOperation(t,o,i,n){return new e(t,o,i,n)}};function Fn(e,t,o,i){return("reauthenticate"===t?o._getReauthenticationResolver(e):o._getIdTokenResponse(e)).catch((o=>{throw"auth/multi-factor-auth-required"===o.code?It._fromErrorAndOperation(e,o,t,i):o}))}async function Di(e,t,o=!1){let i=await se(e,t._linkToIdToken(e.auth,await e.getIdToken()),o);return fe._forOperation(e,"link",i)}async function Mi(e,t,o=!1){let{auth:i}=e,n="reauthenticate";try{let r=await se(e,Fn(i,n,t,e),o);f(r.idToken,i,"internal-error");let s=Nt(r.idToken);f(s,i,"internal-error");let{sub:a}=s;return f(e.uid===a,i,"user-mismatch"),fe._forOperation(e,n,r)}catch(e){throw"auth/user-not-found"===e?.code&&I(i,"user-mismatch"),e}}async function Ui(e,t,o=!1){let i="signIn",n=await Fn(e,i,t),r=await fe._fromIdTokenResponse(e,i,n);return o||await e._updateCurrentUser(r.user),r}function xi(e,t){return C(e,"POST","/v2/accounts/mfaEnrollment:start",Object.assign({tenantId:e.tenantId},t))}var Me="__sak",Ue=class{constructor(e,t){this.storage=e,this.type=t}_isAvailable(){try{return this.storage?(this.storage.setItem(Me,"1"),this.storage.removeItem(Me),Promise.resolve(!0)):Promise.resolve(!1)}catch{return Promise.resolve(!1)}}_set(e,t){return this.storage.setItem(e,JSON.stringify(t)),Promise.resolve()}_get(e){let t=this.storage.getItem(e);return Promise.resolve(t?JSON.parse(t):null)}_remove(e){return this.storage.removeItem(e),Promise.resolve()}};function Fi(){let e=_();return kt(e)||$e(e)}var Vi=1e3,Bi=10,xe=class extends Ue{constructor(){super(window.localStorage,"LOCAL"),this.listeners={},this.localCache={},this.pollTimer=null,this.safariLocalStorageNotSynced=Fi()&&wi(),this.fallbackToPolling=Un(),this._shouldAllowMigration=!0,this.boundEventHandler=this.onStorageEvent.bind(this)}forAllChangedKeys(e){for(let t of Object.keys(this.listeners)){let o=this.storage.getItem(t),i=this.localCache[t];o!==i&&e(t,i,o)}}onStorageEvent(e,t=!1){if(!e.key)return void this.forAllChangedKeys(((e,t,o)=>{this.notifyListeners(e,o)}));let o=e.key;if(t?this.detachListener():this.stopPolling(),this.safariLocalStorageNotSynced){let i=this.storage.getItem(o);if(e.newValue!==i)null!==e.newValue?this.storage.setItem(o,e.newValue):this.storage.removeItem(o);else if(this.localCache[o]===e.newValue&&!t)return}let i=()=>{let e=this.storage.getItem(o);!t&&this.localCache[o]===e||this.notifyListeners(o,e)},n=this.storage.getItem(o);Ii()&&n!==e.newValue&&e.newValue!==e.oldValue?setTimeout(i,Bi):i()}notifyListeners(e,t){this.localCache[e]=t;let o=this.listeners[e];if(o)for(let e of Array.from(o))e(t&&JSON.parse(t))}startPolling(){this.stopPolling(),this.pollTimer=setInterval((()=>{this.forAllChangedKeys(((e,t,o)=>{this.onStorageEvent(new StorageEvent("storage",{key:e,oldValue:t,newValue:o}),!0)}))}),Vi)}stopPolling(){this.pollTimer&&(clearInterval(this.pollTimer),this.pollTimer=null)}attachListener(){window.addEventListener("storage",this.boundEventHandler)}detachListener(){window.removeEventListener("storage",this.boundEventHandler)}_addListener(e,t){0===Object.keys(this.listeners).length&&(this.fallbackToPolling?this.startPolling():this.attachListener()),this.listeners[e]||(this.listeners[e]=new Set,this.localCache[e]=this.storage.getItem(e)),this.listeners[e].add(t)}_removeListener(e,t){this.listeners[e]&&(this.listeners[e].delete(t),0===this.listeners[e].size&&delete this.listeners[e]),0===Object.keys(this.listeners).length&&(this.detachListener(),this.stopPolling())}async _set(e,t){await super._set(e,t),this.localCache[e]=JSON.stringify(t)}async _get(e){let t=await super._get(e);return this.localCache[e]=JSON.stringify(t),t}async _remove(e){await super._remove(e),delete this.localCache[e]}};xe.type="LOCAL";var Vn=xe,Fe=class extends Ue{constructor(){super(window.sessionStorage,"SESSION")}_addListener(e,t){}_removeListener(e,t){}};Fe.type="SESSION";var Pt=Fe;function Wi(e){return Promise.all(e.map((async e=>{try{return{fulfilled:!0,value:await e}}catch(e){return{fulfilled:!1,reason:e}}})))}var Ve=class e{constructor(e){this.eventTarget=e,this.handlersMap={},this.boundEventHandler=this.handleEvent.bind(this)}static _getInstance(t){let o=this.receivers.find((e=>e.isListeningto(t)));if(o)return o;let i=new e(t);return this.receivers.push(i),i}isListeningto(e){return this.eventTarget===e}async handleEvent(e){let t=e,{eventId:o,eventType:i,data:n}=t.data,r=this.handlersMap[i];if(!r?.size)return;t.ports[0].postMessage({status:"ack",eventId:o,eventType:i});let s=Array.from(r).map((async e=>e(t.origin,n))),a=await Wi(s);t.ports[0].postMessage({status:"done",eventId:o,eventType:i,response:a})}_subscribe(e,t){0===Object.keys(this.handlersMap).length&&this.eventTarget.addEventListener("message",this.boundEventHandler),this.handlersMap[e]||(this.handlersMap[e]=new Set),this.handlersMap[e].add(t)}_unsubscribe(e,t){this.handlersMap[e]&&t&&this.handlersMap[e].delete(t),(!t||0===this.handlersMap[e].size)&&delete this.handlersMap[e],0===Object.keys(this.handlersMap).length&&this.eventTarget.removeEventListener("message",this.boundEventHandler)}};function Ct(e="",t=10){let o="";for(let e=0;e{let l=Ct("",20);r.port1.start();let u=setTimeout((()=>{a(new Error("unsupported_event"))}),o);n={messageChannel:r,onMessage(e){let t=e;if(t.data.eventId===l)switch(t.data.status){case"ack":clearTimeout(u),i=setTimeout((()=>{a(new Error("timeout"))}),3e3);break;case"done":clearTimeout(i),s(t.data.response);break;default:clearTimeout(u),clearTimeout(i),a(new Error("invalid_response"))}}},this.handlers.add(n),r.port1.addEventListener("message",n.onMessage),this.target.postMessage({eventType:e,eventId:l,data:t},[r.port2])})).finally((()=>{n&&this.removeMessageHandler(n)}))}};function T(){return window}function Hi(e){T().location.href=e}function Bn(){return typeof T().WorkerGlobalScope<"u"&&"function"==typeof T().importScripts}async function ji(){if(!navigator?.serviceWorker)return null;try{return(await navigator.serviceWorker.ready).active}catch{return null}}function zi(){var e;return(null===(e=navigator?.serviceWorker)||void 0===e?void 0:e.controller)||null}function $i(){return Bn()?self:null}var Wn="firebaseLocalStorageDb",Gi=1,Be="firebaseLocalStorage",Hn="fbase_key",W=class{constructor(e){this.request=e}toPromise(){return new Promise(((e,t)=>{this.request.addEventListener("success",(()=>{e(this.request.result)})),this.request.addEventListener("error",(()=>{t(this.request.error)}))}))}};function qe(e,t){return e.transaction([Be],t?"readwrite":"readonly").objectStore(Be)}function qi(){let e=indexedDB.deleteDatabase(Wn);return new W(e).toPromise()}function Et(){let e=indexedDB.open(Wn,Gi);return new Promise(((t,o)=>{e.addEventListener("error",(()=>{o(e.error)})),e.addEventListener("upgradeneeded",(()=>{let t=e.result;try{t.createObjectStore(Be,{keyPath:Hn})}catch(e){o(e)}})),e.addEventListener("success",(async()=>{let o=e.result;o.objectStoreNames.contains(Be)?t(o):(o.close(),await qi(),t(await Et()))}))}))}async function pn(e,t,o){let i=qe(e,!0).put({[Hn]:t,value:o});return new W(i).toPromise()}async function Ki(e,t){let o=qe(e,!1).get(t),i=await new W(o).toPromise();return void 0===i?null:i.value}function mn(e,t){let o=qe(e,!0).delete(t);return new W(o).toPromise()}var Ji=800,Yi=3,We=class{constructor(){this.type="LOCAL",this._shouldAllowMigration=!0,this.listeners={},this.localCache={},this.pollTimer=null,this.pendingWrites=0,this.receiver=null,this.sender=null,this.serviceWorkerReceiverAvailable=!1,this.activeServiceWorker=null,this._workerInitializationPromise=this.initializeServiceWorkerMessaging().then((()=>{}),(()=>{}))}async _openDb(){return this.db||(this.db=await Et()),this.db}async _withRetries(e){let t=0;for(;;)try{let t=await this._openDb();return await e(t)}catch(e){if(t++>Yi)throw e;this.db&&(this.db.close(),this.db=void 0)}}async initializeServiceWorkerMessaging(){return Bn()?this.initializeReceiver():this.initializeSender()}async initializeReceiver(){this.receiver=Ve._getInstance($i()),this.receiver._subscribe("keyChanged",(async(e,t)=>({keyProcessed:(await this._poll()).includes(t.key)}))),this.receiver._subscribe("ping",(async(e,t)=>["keyChanged"]))}async initializeSender(){var e,t;if(this.activeServiceWorker=await ji(),!this.activeServiceWorker)return;this.sender=new wt(this.activeServiceWorker);let o=await this.sender._send("ping",{},800);o&&null!==(e=o[0])&&void 0!==e&&e.fulfilled&&null!==(t=o[0])&&void 0!==t&&t.value.includes("keyChanged")&&(this.serviceWorkerReceiverAvailable=!0)}async notifyServiceWorker(e){if(this.sender&&this.activeServiceWorker&&zi()===this.activeServiceWorker)try{await this.sender._send("keyChanged",{key:e},this.serviceWorkerReceiverAvailable?800:50)}catch{}}async _isAvailable(){try{if(!indexedDB)return!1;let e=await Et();return await pn(e,Me,"1"),await mn(e,Me),!0}catch{}return!1}async _withPendingWrite(e){this.pendingWrites++;try{await e()}finally{this.pendingWrites--}}async _set(e,t){return this._withPendingWrite((async()=>(await this._withRetries((o=>pn(o,e,t))),this.localCache[e]=t,this.notifyServiceWorker(e))))}async _get(e){let t=await this._withRetries((t=>Ki(t,e)));return this.localCache[e]=t,t}async _remove(e){return this._withPendingWrite((async()=>(await this._withRetries((t=>mn(t,e))),delete this.localCache[e],this.notifyServiceWorker(e))))}async _poll(){let e=await this._withRetries((e=>{let t=qe(e,!1).getAll();return new W(t).toPromise()}));if(!e)return[];if(0!==this.pendingWrites)return[];let t=[],o=new Set;for(let{fbase_key:i,value:n}of e)o.add(i),JSON.stringify(this.localCache[i])!==JSON.stringify(n)&&(this.notifyListeners(i,n),t.push(i));for(let e of Object.keys(this.localCache))this.localCache[e]&&!o.has(e)&&(this.notifyListeners(e,null),t.push(e));return t}notifyListeners(e,t){this.localCache[e]=t;let o=this.listeners[e];if(o)for(let e of Array.from(o))e(t)}startPolling(){this.stopPolling(),this.pollTimer=setInterval((async()=>this._poll()),Ji)}stopPolling(){this.pollTimer&&(clearInterval(this.pollTimer),this.pollTimer=null)}_addListener(e,t){0===Object.keys(this.listeners).length&&this.startPolling(),this.listeners[e]||(this.listeners[e]=new Set,this._get(e)),this.listeners[e].add(t)}_removeListener(e,t){this.listeners[e]&&(this.listeners[e].delete(t),0===this.listeners[e].size&&delete this.listeners[e]),0===Object.keys(this.listeners).length&&this.stopPolling()}};We.type="LOCAL";var jn=We;function Xi(e,t){return C(e,"POST","/v2/accounts/mfaSignIn:start",Object.assign({tenantId:e.tenantId},t))}function Zi(){var e,t;return null!==(t=null===(e=document.getElementsByTagName("head"))||void 0===e?void 0:e[0])&&void 0!==t?t:document}function Qi(e){return new Promise(((t,o)=>{let i=document.createElement("script");i.setAttribute("src",e),i.onload=t,i.onerror=e=>{let t=b("internal-error");t.customData=e,o(t)},i.type="text/javascript",i.charset="UTF-8",Zi().appendChild(i)}))}function zn(e){return`__${e}${Math.floor(1e6*Math.random())}`}var Mo=zn("rcb"),Uo=new x(3e4,6e4),es="recaptcha";async function ts(e,t,o){var i;let n=await o.verify();try{let r;if(f("string"==typeof n,e,"argument-error"),f(o.type===es,e,"argument-error"),r="string"==typeof t?{phoneNumber:t}:t,"session"in r){let t=r.session;if("phoneNumber"in r)return f("enroll"===t.type,e,"internal-error"),(await xi(e,{idToken:t.credential,phoneEnrollmentInfo:{phoneNumber:r.phoneNumber,recaptchaToken:n}})).phoneSessionInfo.sessionInfo;{f("signin"===t.type,e,"internal-error");let o=(null===(i=r.multiFactorHint)||void 0===i?void 0:i.uid)||r.multiFactorUid;return f(o,e,"missing-multi-factor-info"),(await Xi(e,{mfaPendingCredential:t.credential,mfaEnrollmentId:o,phoneSignInInfo:{recaptchaToken:n}})).phoneResponseInfo.sessionInfo}}{let{sessionInfo:t}=await Ai(e,{phoneNumber:r.phoneNumber,recaptchaToken:n});return t}}finally{o._reset()}}var pe=class e{constructor(t){this.providerId=e.PROVIDER_ID,this.auth=Ge(t)}verifyPhoneNumber(e,t){return ts(this.auth,e,K(t))}static credential(e,t){return ce._fromVerification(e,t)}static credentialFromResult(t){let o=t;return e.credentialFromTaggedObject(o)}static credentialFromError(t){return e.credentialFromTaggedObject(t.customData||{})}static credentialFromTaggedObject({_tokenResponse:e}){if(!e)return null;let{phoneNumber:t,temporaryProof:o}=e;return t&&o?ce._fromTokenResponse(t,o):null}};function $n(e,t){return t?O(t):(f(e._popupRedirectResolver,e,"argument-error"),e._popupRedirectResolver)}pe.PROVIDER_ID="phone",pe.PHONE_SIGN_IN_METHOD="phone";var me=class extends F{constructor(e){super("custom","custom"),this.params=e}_getIdTokenResponse(e){return Y(e,this._buildIdpRequest())}_linkToIdToken(e,t){return Y(e,this._buildIdpRequest(t))}_getReauthenticationResolver(e){return Y(e,this._buildIdpRequest())}_buildIdpRequest(e){let t={requestUri:this.params.requestUri,sessionId:this.params.sessionId,postBody:this.params.postBody,tenantId:this.params.tenantId,pendingToken:this.params.pendingToken,returnSecureToken:!0,returnIdpCredential:!0};return e&&(t.idToken=e),t}};function ns(e){return Ui(e.auth,new me(e),e.bypassAuthState)}function rs(e){let{auth:t,user:o}=e;return f(o,t,"internal-error"),Mi(o,new me(e),e.bypassAuthState)}async function is(e){let{auth:t,user:o}=e;return f(o,t,"internal-error"),Di(o,new me(e),e.bypassAuthState)}var He=class{constructor(e,t,o,i,n=!1){this.auth=e,this.resolver=o,this.user=i,this.bypassAuthState=n,this.pendingPromise=null,this.eventManager=null,this.filter=Array.isArray(t)?t:[t]}execute(){return new Promise((async(e,t)=>{this.pendingPromise={resolve:e,reject:t};try{this.eventManager=await this.resolver._initialize(this.auth),await this.onExecution(),this.eventManager.registerConsumer(this)}catch(e){this.reject(e)}}))}async onAuthEvent(e){let{urlResponse:t,sessionId:o,postBody:i,tenantId:n,error:r,type:s}=e;if(r)return void this.reject(r);let a={auth:this.auth,requestUri:t,sessionId:o,tenantId:n||void 0,postBody:i||void 0,user:this.user,bypassAuthState:this.bypassAuthState};try{this.resolve(await this.getIdpTask(s)(a))}catch(e){this.reject(e)}}onError(e){this.reject(e)}getIdpTask(e){switch(e){case"signInViaPopup":case"signInViaRedirect":return ns;case"linkViaPopup":case"linkViaRedirect":return is;case"reauthViaPopup":case"reauthViaRedirect":return rs;default:I(this.auth,"internal-error")}}resolve(e){A(this.pendingPromise,"Pending promise was never set"),this.pendingPromise.resolve(e),this.unregisterAndCleanUp()}reject(e){A(this.pendingPromise,"Pending promise was never set"),this.pendingPromise.reject(e),this.unregisterAndCleanUp()}unregisterAndCleanUp(){this.eventManager&&this.eventManager.unregisterConsumer(this),this.pendingPromise=null,this.cleanUp()}},ss=new x(2e3,1e4);async function Lt(e,t,o){let i=Ge(e);si(e,t,ue);let n=$n(i,o);return new je(i,"signInViaPopup",t,n).executeNotNull()}var je=class e extends He{constructor(t,o,i,n,r){super(t,o,n,r),this.provider=i,this.authWindow=null,this.pollId=null,e.currentPopupAction&&e.currentPopupAction.cancel(),e.currentPopupAction=this}async executeNotNull(){let e=await this.execute();return f(e,this.auth,"internal-error"),e}async onExecution(){A(1===this.filter.length,"Popup operations only handle one event");let e=Ct();this.authWindow=await this.resolver._openPopup(this.auth,this.provider,this.filter[0],e),this.authWindow.associatedEvent=e,this.resolver._originValidation(this.auth).catch((e=>{this.reject(e)})),this.resolver._isIframeWebStorageSupported(this.auth,(e=>{e||this.reject(b(this.auth,"web-storage-unsupported"))})),this.pollUserCancellation()}get eventId(){var e;return(null===(e=this.authWindow)||void 0===e?void 0:e.associatedEvent)||null}cancel(){this.reject(b(this.auth,"cancelled-popup-request"))}cleanUp(){this.authWindow&&this.authWindow.close(),this.pollId&&window.clearTimeout(this.pollId),this.authWindow=null,this.pollId=null,e.currentPopupAction=null}pollUserCancellation(){let e=()=>{var t,o;null!==(o=null===(t=this.authWindow)||void 0===t?void 0:t.window)&&void 0!==o&&o.closed?this.pollId=window.setTimeout((()=>{this.pollId=null,this.reject(b(this.auth,"popup-closed-by-user"))}),2e3):this.pollId=window.setTimeout(e,ss.get())};e()}};je.currentPopupAction=null;var os="pendingRedirect",gn=new Map,bt=class extends He{constructor(e,t,o=!1){super(e,["signInViaRedirect","linkViaRedirect","reauthViaRedirect","unknown"],t,void 0,o),this.eventId=null}async execute(){let e=gn.get(this.auth._key());if(!e){try{let t=await as(this.resolver,this.auth)?await super.execute():null;e=()=>Promise.resolve(t)}catch(t){e=()=>Promise.reject(t)}gn.set(this.auth._key(),e)}return e()}async onAuthEvent(e){if("signInViaRedirect"===e.type)return super.onAuthEvent(e);if("unknown"!==e.type){if(e.eventId){let t=await this.auth._redirectUserForId(e.eventId);if(t)return this.user=t,super.onAuthEvent(e);this.resolve(null)}}else this.resolve(null)}async onExecution(){}cleanUp(){}};async function as(e,t){let o=cs(t),i="true"===await vn(e)._get(o);return await vn(e)._remove(o),i}function vn(e){return O(e._redirectPersistence)}function cs(e){return Oe(os,e.config.apiKey,e.name)}async function us(e,t,o=!1){let i=Ge(e),n=$n(i,t),r=await new bt(i,n,o).execute();return r&&!o&&(delete r.user._redirectEventId,await i._persistUserIfCurrent(r.user),await i._setRedirectUser(null,t)),r}var ls=6e5,Tt=class{constructor(e){this.auth=e,this.cachedEventUids=new Set,this.consumers=new Set,this.queuedRedirectEvent=null,this.hasHandledPotentialRedirect=!1,this.lastProcessedEventTime=Date.now()}registerConsumer(e){this.consumers.add(e),this.queuedRedirectEvent&&this.isEventForConsumer(this.queuedRedirectEvent,e)&&(this.sendToConsumer(this.queuedRedirectEvent,e),this.saveEventToCache(this.queuedRedirectEvent),this.queuedRedirectEvent=null)}unregisterConsumer(e){this.consumers.delete(e)}onEvent(e){if(this.hasEventBeenHandled(e))return!1;let t=!1;return this.consumers.forEach((o=>{this.isEventForConsumer(e,o)&&(t=!0,this.sendToConsumer(e,o),this.saveEventToCache(e))})),this.hasHandledPotentialRedirect||!ds(e)||(this.hasHandledPotentialRedirect=!0,t||(this.queuedRedirectEvent=e,t=!0)),t}sendToConsumer(e,t){var o;if(e.error&&!Gn(e)){let i=(null===(o=e.error.code)||void 0===o?void 0:o.split("auth/")[1])||"internal-error";t.onError(b(this.auth,i))}else t.onAuthEvent(e)}isEventForConsumer(e,t){let o=null===t.eventId||!!e.eventId&&e.eventId===t.eventId;return t.filter.includes(e.type)&&o}hasEventBeenHandled(e){return Date.now()-this.lastProcessedEventTime>=ls&&this.cachedEventUids.clear(),this.cachedEventUids.has(_n(e))}saveEventToCache(e){this.cachedEventUids.add(_n(e)),this.lastProcessedEventTime=Date.now()}};function _n(e){return[e.type,e.eventId,e.sessionId,e.tenantId].filter((e=>e)).join("-")}function Gn({type:e,error:t}){return"unknown"===e&&"auth/no-auth-event"===t?.code}function ds(e){switch(e.type){case"signInViaRedirect":case"linkViaRedirect":case"reauthViaRedirect":return!0;case"unknown":return Gn(e);default:return!1}}async function hs(e,t={}){return C(e,"GET","/v1/projects",t)}var fs=/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/,ps=/^https?/;async function ms(e){if(e.config.emulator)return;let{authorizedDomains:t}=await hs(e);for(let e of t)try{if(gs(e))return}catch{}I(e,"unauthorized-domain")}function gs(e){let t=mt(),{protocol:o,hostname:i}=new URL(t);if(e.startsWith("chrome-extension://")){let n=new URL(e);return""===n.hostname&&""===i?"chrome-extension:"===o&&e.replace("chrome-extension://","")===t.replace("chrome-extension://",""):"chrome-extension:"===o&&n.hostname===i}if(!ps.test(o))return!1;if(fs.test(e))return i===e;let n=e.replace(/\./g,"\\.");return new RegExp("^(.+\\."+n+"|"+n+")$","i").test(i)}var vs=new x(3e4,6e4);function yn(){let e=T().___jsl;if(e?.H)for(let t of Object.keys(e.H))if(e.H[t].r=e.H[t].r||[],e.H[t].L=e.H[t].L||[],e.H[t].r=[...e.H[t].L],e.CP)for(let t=0;t{var i,n,r;function s(){yn(),gapi.load("gapi.iframes",{callback:()=>{t(gapi.iframes.getContext())},ontimeout:()=>{yn(),o(b(e,"network-request-failed"))},timeout:vs.get()})}if(null!==(n=null===(i=T().gapi)||void 0===i?void 0:i.iframes)&&void 0!==n&&n.Iframe)t(gapi.iframes.getContext());else{if(null===(r=T().gapi)||void 0===r||!r.load){let t=zn("iframefcb");return T()[t]=()=>{gapi.load?s():o(b(e,"network-request-failed"))},Qi(`https://apis.google.com/js/api.js?onload=${t}`)}s()}})).catch((e=>{throw Ae=null,e}))}var Ae=null;function ys(e){return Ae=Ae||_s(e)}var Is=new x(5e3,15e3),ws="__/auth/iframe",Es="emulator/auth/iframe",bs={style:{position:"absolute",top:"-100px",width:"1px",height:"1px"}},Ts=new Map([["identitytoolkit.googleapis.com","p"],["staging-identitytoolkit.sandbox.googleapis.com","s"],["test-identitytoolkit.sandbox.googleapis.com","t"]]);function Ss(e){let t=e.config;f(t.authDomain,e,"auth-domain-config-required");let o=t.emulator?Rt(t,Es):`https://${e.config.authDomain}/${ws}`,i={apiKey:t.apiKey,appName:e.name,v:ne},n=Ts.get(e.config.apiHost);n&&(i.eid=n);let r=e._getFrameworks();return r.length&&(i.fw=r.join(",")),`${o}?${$(i).slice(1)}`}async function Os(e){let t=await ys(e),o=T().gapi;return f(o,e,"internal-error"),t.open({where:document.body,url:Ss(e),messageHandlersFilter:o.iframes.CROSS_ORIGIN_IFRAMES_FILTER,attributes:bs,dontclear:!0},(t=>new Promise((async(o,i)=>{await t.restyle({setHideOnLeave:!1});let n=b(e,"network-request-failed"),r=T().setTimeout((()=>{i(n)}),Is.get());function s(){T().clearTimeout(r),o(t)}t.ping(s).then(s,(()=>{i(n)}))}))))}var As={location:"yes",resizable:"yes",statusbar:"yes",toolbar:"no"},Rs=500,Ns=600,ks="_blank",Ps="http://localhost",ze=class{constructor(e){this.window=e,this.associatedEvent=null}close(){if(this.window)try{this.window.close()}catch{}}};function Cs(e,t,o,i=Rs,n=Ns){let r=Math.max((window.screen.availHeight-n)/2,0).toString(),s=Math.max((window.screen.availWidth-i)/2,0).toString(),a="",l=Object.assign(Object.assign({},As),{width:i.toString(),height:n.toString(),top:r,left:s}),u=_().toLowerCase();o&&(a=Pn(u)?ks:o),kn(u)&&(t=t||Ps,l.scrollbars="yes");let c=Object.entries(l).reduce(((e,[t,o])=>`${e}${t}=${o},`),"");if(yi(u)&&"_self"!==a)return Ls(t||"",a),new ze(null);let d=window.open(t||"",a,c);f(d,e,"popup-blocked");try{d.focus()}catch{}return new ze(d)}function Ls(e,t){let o=document.createElement("a");o.href=e,o.target=t;let i=document.createEvent("MouseEvent");i.initMouseEvent("click",!0,!0,window,1,0,0,0,0,!1,!1,!1,!1,1,null),o.dispatchEvent(i)}var Ds="__/auth/handler",Ms="emulator/auth/handler";function In(e,t,o,i,n,r){f(e.config.authDomain,e,"auth-domain-config-required"),f(e.config.apiKey,e,"invalid-api-key");let s={apiKey:e.config.apiKey,appName:e.name,authType:o,redirectUrl:i,v:ne,eventId:n};if(t instanceof ue){t.setDefaultLanguage(e.languageCode),s.providerId=t.providerId||"",tn(t.getCustomParameters())||(s.customParameters=JSON.stringify(t.getCustomParameters()));for(let[e,t]of Object.entries(r||{}))s[e]=t}if(t instanceof B){let e=t.getScopes().filter((e=>""!==e));e.length>0&&(s.scopes=e.join(","))}e.tenantId&&(s.tid=e.tenantId);let a=s;for(let e of Object.keys(a))void 0===a[e]&&delete a[e];return`${Us(e)}?${$(a).slice(1)}`}function Us({config:e}){return e.emulator?Rt(e,Ms):`https://${e.authDomain}/${Ds}`}var pt="webStorageSupport",St=class{constructor(){this.eventManagers={},this.iframes={},this.originValidationPromises={},this._redirectPersistence=Pt,this._completeRedirectFn=us}async _openPopup(e,t,o,i){var n;return A(null===(n=this.eventManagers[e._key()])||void 0===n?void 0:n.manager,"_initialize() not called before _openPopup()"),Cs(e,In(e,t,o,mt(),i),Ct())}async _openRedirect(e,t,o,i){return await this._originValidation(e),Hi(In(e,t,o,mt(),i)),new Promise((()=>{}))}_initialize(e){let t=e._key();if(this.eventManagers[t]){let{manager:e,promise:o}=this.eventManagers[t];return e?Promise.resolve(e):(A(o,"If manager is not set, promise should be"),o)}let o=this.initAndGetManager(e);return this.eventManagers[t]={promise:o},o}async initAndGetManager(e){let t=await Os(e),o=new Tt(e);return t.register("authEvent",(t=>(f(t?.authEvent,e,"invalid-auth-event"),{status:o.onEvent(t.authEvent)?"ACK":"ERROR"})),gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER),this.eventManagers[e._key()]={manager:o},this.iframes[e._key()]=t,o}_isIframeWebStorageSupported(e,t){this.iframes[e._key()].send(pt,{type:pt},(o=>{var i;let n=null===(i=o?.[0])||void 0===i?void 0:i[pt];void 0!==n&&t(!!n),I(e,"internal-error")}),gapi.iframes.CROSS_ORIGIN_IFRAMES_FILTER)}_originValidation(e){let t=e._key();return this.originValidationPromises[t]||(this.originValidationPromises[t]=ms(e)),this.originValidationPromises[t]}get _shouldInitProactively(){return Un()||kt()||$e()}},qn=St,xs="@firebase/auth",Fs="0.17.2",Ot=class{constructor(e){this.auth=e,this.internalListeners=new Map}getUid(){var e;return this.assertAuthConfigured(),(null===(e=this.auth.currentUser)||void 0===e?void 0:e.uid)||null}async getToken(e){return this.assertAuthConfigured(),await this.auth._initializationPromise,this.auth.currentUser?{accessToken:await this.auth.currentUser.getIdToken(e)}:null}addAuthTokenListener(e){if(this.assertAuthConfigured(),this.internalListeners.has(e))return;let t=this.auth.onIdTokenChanged((t=>{var o;e((null===(o=t)||void 0===o?void 0:o.stsTokenManager.accessToken)||null)}));this.internalListeners.set(e,t),this.updateProactiveRefresh()}removeAuthTokenListener(e){this.assertAuthConfigured();let t=this.internalListeners.get(e);t&&(this.internalListeners.delete(e),t(),this.updateProactiveRefresh())}assertAuthConfigured(){f(this.auth._initializationPromise,"dependent-sdk-initialized-before-auth")}updateProactiveRefresh(){this.internalListeners.size>0?this.auth._startProactiveRefresh():this.auth._stopProactiveRefresh()}};function Vs(e){switch(e){case"Node":return"node";case"ReactNative":return"rn";case"Worker":return"webworker";case"Cordova":return"cordova";default:return}}function Bs(e){te(new M("auth",((t,{options:o})=>{let i=t.getProvider("app").getImmediate(),{apiKey:n,authDomain:r}=i.options;return(t=>{f(n&&!n.includes(":"),"invalid-api-key",{appName:t.name}),f(!r?.includes(":"),"argument-error",{appName:t.name});let i={apiKey:n,authDomain:r,clientPlatform:e,apiHost:"identitytoolkit.googleapis.com",tokenApiHost:"securetoken.googleapis.com",apiScheme:"https",sdkClientVersion:xn(e)},s=new yt(t,i);return oi(s,o),s})(i)}),"PUBLIC").setInstantiationMode("EXPLICIT").setInstanceCreatedCallback(((e,t,o)=>{e.getProvider("auth-internal").initialize()}))),te(new M("auth-internal",(e=>{let t=Ge(e.getProvider("auth").getImmediate());return new Ot(t)}),"PRIVATE").setInstantiationMode("EXPLICIT")),J(xs,Fs,Vs(e))}function Dt(e=cn()){let t=ht(e,"auth");return t.isInitialized()?t.getImmediate():Sn(e,{popupRedirectResolver:qn,persistence:[jn,Vn,Pt]})}Bs("Browser");var Mt=zt(it(),1),Ke=class{constructor(){this._accessToken=null,this._firebaseApp=an({apiKey:"AIzaSyBQEZMlX6A9B0jJ6PFGcBADbXZG9ogyCmQ",authDomain:"lighthouse-chrom-1560304954232.firebaseapp.com",projectId:"lighthouse-chrom-1560304954232",storageBucket:"lighthouse-chrom-1560304954232.appspot.com",messagingSenderId:"89319782509",appId:"1:89319782509:web:9ea5d8e149048c7836e764",measurementId:"G-7FMYHPW5YC"}),this._auth=Dt(),this._provider=new k,this._provider.addScope("gist"),this._ready=Promise.resolve(Mt.default.get("accessToken").then((e=>{e&&(this._accessToken=e)})))}async getAccessTokenIfLoggedIn(){return await this._ready,this._accessToken}async getAccessToken(){return await this._ready,this._accessToken?this._accessToken:this.signIn()}async signIn(){let e=await Lt(this._auth,this._provider),t=k.credentialFromResult(e);if(!t||!t.accessToken)throw new Error("unexpected credential");let o=t.accessToken;return this._accessToken=o,await Mt.default.set("accessToken",o),o}};function Kn(e,t){let o=t?new Date(t):new Date,i=o.toLocaleTimeString("en-US",{hour12:!1}),n=o.toLocaleDateString("en-US",{year:"numeric",month:"2-digit",day:"2-digit"}).split("/");return n.unshift(n.pop()),`${e}_${n.join("-")}_${i}`.replace(/[/?<>\\:*|"]/g,"-")}function Jn(e){return Kn(new URL(e.finalDisplayedUrl).hostname,e.fetchTime)}function Yn(e){let t=e.steps[0].lhr;return Kn(e.name.replace(/\s/g,"-"),t.fetchTime)}var Ws=.8999999999999999,Hs=.5,js=.49999999999999994;function zs(e){let t=Math.sign(e),o=1/(1+.3275911*(e=Math.abs(e)));return t*(1-o*(.254829592+o*(o*(1.421413741+o*(1.061405429*o-1.453152027))-.284496736))*Math.exp(-e*e))}function Xn({median:e,p10:t},o){if(e<=0)throw new Error("median must be greater than zero");if(t<=0)throw new Error("p10 must be greater than zero");if(t>=e)throw new Error("p10 must be less than the median");if(o<=0)return 1;let i,n=Math.max(Number.MIN_VALUE,o/e),r=Math.log(n),s=Math.max(Number.MIN_VALUE,t/e),a=(1-zs(.9061938024368232*r/-Math.log(s)))/2;return i=o<=t?Math.max(.9,Math.min(1,a)):o<=e?Math.max(Hs,Math.min(Ws,a)):Math.max(0,Math.min(js,a)),i}var R="…",Gs=" ",Zn=.9,qs={PASS:{label:"pass",minScore:Zn},AVERAGE:{label:"average",minScore:.5},FAIL:{label:"fail"},ERROR:{label:"error"}},Ks=["com","co","gov","edu","ac","org","go","gob","or","net","in","ne","nic","gouv","web","spb","blog","jus","kiev","mil","wi","qc","ca","bel","on"],Je=class e{static get RATINGS(){return qs}static get PASS_THRESHOLD(){return Zn}static get MS_DISPLAY_VALUE(){return`%10d${Gs}ms`}static getFinalDisplayedUrl(e){if(e.finalDisplayedUrl)return e.finalDisplayedUrl;if(e.finalUrl)return e.finalUrl;throw new Error("Could not determine final displayed URL")}static getMainDocumentUrl(e){return e.mainDocumentUrl||e.finalUrl}static getFullPageScreenshot(e){return e.fullPageScreenshot?e.fullPageScreenshot:e.audits["full-page-screenshot"]?.details}static getEntityFromUrl(t,o){return o&&o.find((e=>e.origins.find((e=>t.startsWith(e)))))||e.getPseudoRootDomain(t)}static splitMarkdownCodeSpans(e){let t=[],o=e.split(/`(.*?)`/g);for(let e=0;ee.length));i&&t.length>i&&(o=R+t.slice(-1*i).join("/")),r&&(o=`${e.host}/${o.replace(/^\//,"")}`),n&&(o=`${o}${e.search}`)}if("data:"!==e.protocol&&(o=o.slice(0,200),o=o.replace(/([a-f0-9]{7})[a-f0-9]{13}[a-f0-9]*/g,`$1${R}`),o=o.replace(/([a-zA-Z0-9-_]{9})(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])[a-zA-Z0-9-_]{10,}/g,`$1${R}`),o=o.replace(/(\d{3})\d{6,}/g,`$1${R}`),o=o.replace(/\u2026+/g,R),o.length>64&&o.includes("?")&&(o=o.replace(/\?([^=]*)(=)?.*/,`?$1$2${R}`),o.length>64&&(o=o.replace(/\?.*/,`?${R}`)))),o.length>64){let e=o.lastIndexOf(".");o=e>=0?o.slice(0,63-(o.length-e))+`${R}${o.slice(e)}`:o.slice(0,63)+R}return o}static getChromeExtensionOrigin(e){let t=new URL(e);return t.protocol+"//"+t.host}static parseURL(t){let o=new URL(t);return{file:e.getURLDisplayName(o),hostname:o.hostname,origin:"chrome-extension:"===o.protocol?e.getChromeExtensionOrigin(t):o.origin}}static createOrReturnURL(e){return e instanceof URL?e:new URL(e)}static getPseudoTld(e){let t=e.split(".").slice(-2);return Ks.includes(t[0])?`.${t.join(".")}`:`.${t[t.length-1]}`}static getPseudoRootDomain(t){let o=e.createOrReturnURL(t).hostname,i=e.getPseudoTld(o).split(".");return o.split(".").slice(-i.length).join(".")}static filterRelevantLines(e,t,o){if(0===t.length)return e.slice(0,2*o+1);let i=new Set;return(t=t.sort(((e,t)=>(e.lineNumber||0)-(t.lineNumber||0)))).forEach((({lineNumber:e})=>{let t=e-o,n=e+o;for(;t<1;)t++,n++;i.has(t-3-1)&&(t-=3);for(let e=t;e<=n;e++){let t=e;i.add(t)}})),e.filter((e=>i.has(e.lineNumber)))}static computeLogNormalScore(e,t){let o=Xn(e,t);return o>.9&&(o+=.05*(o-.9)),Math.floor(100*o)/100}},Xe=class e{constructor(){this._auth=new Ke,this._saving=!1}static get LH_JSON_EXT(){return".lighthouse.report.json"}getFirebaseAuth(){return this._auth}async createGist(t){if(this._saving)throw new Error("Save already in progress");logger.log("Saving report to GitHub...",!1),this._saving=!0;try{let o,i=await this._auth.getAccessToken();o="steps"in t?Yn(t):Jn({finalDisplayedUrl:Je.getFinalDisplayedUrl(t),fetchTime:t.fetchTime});let n={description:"Lighthouse json report",public:!1,files:{[`${o}${e.LH_JSON_EXT}`]:{content:JSON.stringify(t)}}},r=new Request("https://api.github.com/gists",{method:"POST",headers:new Headers({Authorization:`token ${i}`}),body:JSON.stringify(n)}),s=await(await fetch(r)).json();if(s.id)return logger.log("Saved!"),s.id;throw new Error("Error: "+JSON.stringify(s))}finally{this._saving=!1}}getGistFileContentAsJson(t){return logger.log("Fetching report from GitHub...",!1),this._auth.getAccessTokenIfLoggedIn().then((o=>{let i=new Headers;return o&&i.set("Authorization",`token ${o}`),Ye.default.get(t).then((o=>(o?.etag&&i.set("If-None-Match",o.etag),fetch(`https://api.github.com/gists/${t}`,{headers:i}).then((i=>{let n=Number(i.headers.get("X-RateLimit-Remaining")),r=Number(i.headers.get("X-RateLimit-Limit"));if(n<10&&logger.warn(`Approaching GitHub's rate limit. ${r-n}/${r} requests used. Consider signing in to increase this limit.`),!i.ok){if(304===i.status&&o)return Promise.resolve(o);throw 404===i.status&&Ye.default.delete(t),new Error(`${i.status} fetching gist`)}let s=i.headers.get("ETag");return i.json().then((o=>{let i=Object.keys(o.files),n=i.find((t=>t.endsWith(e.LH_JSON_EXT)));if(n||(n=i.find((e=>e.endsWith(".json")))),!n)throw new Error(`Failed to find a Lighthouse report (*${e.LH_JSON_EXT}) in gist ${t}`);let r=o.files[n];if(r.truncated)return fetch(r.raw_url).then((e=>e.json())).then((e=>({etag:s,content:e})));let a=JSON.parse(r.content);return{etag:s,content:a}}))})))))})).then((e=>Ye.default.set(t,e).then((t=>(logger.hide(),e.content)))))}},Ut=" ",Ze=class{constructor(e){"en-XA"===e&&(e="de"),this._locale=e,this._cachedNumberFormatters=new Map}_formatNumberWithGranularity(e,t,o={}){if(void 0!==t){let i=-Math.log10(t);Number.isInteger(i)||(console.warn(`granularity of ${t} is invalid. Using 1 instead`),t=1),t<1&&((o={...o}).minimumFractionDigits=o.maximumFractionDigits=Math.ceil(i)),e=Math.round(e/t)*t,Object.is(e,-0)&&(e=0)}else Math.abs(e)<5e-4&&(e=0);let i,n=[o.minimumFractionDigits,o.maximumFractionDigits,o.style,o.unit,o.unitDisplay,this._locale].join("");return i=this._cachedNumberFormatters.get(n),i||(i=new Intl.NumberFormat(this._locale,o),this._cachedNumberFormatters.set(n,i)),i.format(e).replace(" ",Ut)}formatNumber(e,t){return this._formatNumberWithGranularity(e,t)}formatInteger(e){return this._formatNumberWithGranularity(e,1)}formatPercent(e){return new Intl.NumberFormat(this._locale,{style:"percent"}).format(e)}formatBytesToKiB(e,t=void 0){return this._formatNumberWithGranularity(e/1024,t)+`${Ut}KiB`}formatBytesToMiB(e,t=void 0){return this._formatNumberWithGranularity(e/1048576,t)+`${Ut}MiB`}formatBytes(e,t=1){return this._formatNumberWithGranularity(e,t,{style:"unit",unit:"byte",unitDisplay:"long"})}formatBytesWithBestUnit(e,t=.1){return e>=1048576?this.formatBytesToMiB(e,t):e>=1024?this.formatBytesToKiB(e,t):this._formatNumberWithGranularity(e,t,{style:"unit",unit:"byte",unitDisplay:"narrow"})}formatKbps(e,t=void 0){return this._formatNumberWithGranularity(e,t,{style:"unit",unit:"kilobit-per-second",unitDisplay:"short"})}formatMilliseconds(e,t=void 0){return this._formatNumberWithGranularity(e,t,{style:"unit",unit:"millisecond",unitDisplay:"short"})}formatSeconds(e,t=void 0){return this._formatNumberWithGranularity(e/1e3,t,{style:"unit",unit:"second",unitDisplay:"narrow"})}formatDateTime(e){let t,o={month:"short",day:"numeric",year:"numeric",hour:"numeric",minute:"numeric",timeZoneName:"short"};try{t=new Intl.DateTimeFormat(this._locale,o)}catch{o.timeZone="UTC",t=new Intl.DateTimeFormat(this._locale,o)}return t.format(new Date(e))}formatDuration(e){let t=e/1e3;if(0===Math.round(t))return"None";let o=[],i={day:86400,hour:3600,minute:60,second:1};return Object.keys(i).forEach((e=>{let n=i[e],r=Math.floor(t/n);if(r>0){t-=r*n;let i=this._formatNumberWithGranularity(r,1,{style:"unit",unit:e,unitDisplay:"narrow"});o.push(i)}})),o.join(" ")}},Js=typeof btoa<"u"?btoa:e=>Buffer.from(e).toString("base64"),Ys=typeof atob<"u"?atob:e=>Buffer.from(e,"base64").toString();async function Xs(e,t){let o=(new TextEncoder).encode(e);if(t.gzip)if(typeof CompressionStream<"u"){let e=new CompressionStream("gzip"),t=e.writable.getWriter();t.write(o),t.close();let i=await new Response(e.readable).arrayBuffer();o=new Uint8Array(i)}else o=window.pako.gzip(e);let i="";for(let e=0;ee.charCodeAt(0)));return t.gzip?window.pako.ungzip(i,{to:"string"}):(new TextDecoder).decode(i)}var Qn={toBase64:Xs,fromBase64:Zs},Qe=class{constructor(e){this.el=e;let t=document.createElement("style");if(t.textContent="\n #lh-log {\n position: fixed;\n background-color: #323232;\n color: #fff;\n min-height: 48px;\n min-width: 288px;\n padding: 16px 24px;\n box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.26);\n border-radius: 2px;\n margin: 12px;\n font-size: 14px;\n cursor: default;\n transition: transform 0.3s, opacity 0.3s;\n transform: translateY(100px);\n opacity: 0;\n bottom: 0;\n left: 0;\n z-index: 3;\n display: flex;\n flex-direction: row;\n justify-content: center;\n align-items: center;\n }\n \n #lh-log.lh-show {\n opacity: 1;\n transform: translateY(0);\n }\n ",!this.el.parentNode)throw new Error("element needs to be in the DOM");this.el.parentNode.insertBefore(t,this.el),this._id=void 0}log(e,t=!0){this._id&&clearTimeout(this._id),this.el.textContent=e,this.el.classList.add("lh-show"),t&&(this._id=setTimeout((()=>{this.el.classList.remove("lh-show")}),7e3))}warn(e){this.log("Warning: "+e)}error(e){this.log(e),setTimeout((()=>{throw new Error(e)}),0)}hide(){this._id&&clearTimeout(this._id),this.el.classList.remove("lh-show")}},Qs=1024,eo=.01,er=document.querySelector("div#lh-log");if(!er)throw new Error("logger element not found");var Q,Z=new Qe(er);window.logger=Z,Cell.prototype.clearHeight=()=>{},Row.prototype.calcHeight=function(){this.height=24,this.outerHeight=24,this.heightStyled="24px"};var xt=class{constructor(e,t){this.abortController=new AbortController;let o=e.lhr.audits["script-treemap-data"].details;if(!o||"treemap-data"!==o.type)throw new Error("missing script-treemap-data");this.depthOneNodesByGroup={scripts:o.nodes},this.nodeToDepthOneNodeMap=new WeakMap;for(let e of Object.values(this.depthOneNodesByGroup))for(let t of e)d.walk(t,(e=>this.nodeToDepthOneNodeMap.set(e,t)));this.nodeToPathMap=new WeakMap;let i=e.lhr.mainDocumentUrl||e.lhr.finalUrl||e.lhr.finalDisplayedUrl;this.documentUrl=new URL(i),this.el=t,this.getHueForD1NodeName=d.stableHasher(d.COLOR_HUES);for(let e of this.depthOneNodesByGroup.scripts)try{let t=new URL(e.name);e.name=d.elideSameOrigin(t,this.documentUrl),(e.children?.every((e=>e.name.startsWith("(inline)")))||t.href===this.documentUrl.href)&&(e.name+=" (inline)")}catch{}this.currentTreemapRoot,this.currentViewMode,this.selector,this.viewModes,this.previousRenderState,this.tableRowToNodeMap=new WeakMap,this.treemap,this.createHeader(),this.toggleTable(window.innerWidth>=600),this.initListeners(),this.setSelector({type:"group",value:"scripts"}),this.render()}createHeader(){let e=d.find("a.lh-header--url");e.textContent=this.documentUrl.toString(),e.href=this.documentUrl.toString(),this.createBundleSelector()}createBundleSelector(){let e=d.find("select.bundle-selector");e.innerHTML="";let t=[];function o(o,i){let n=d.createChildOf(e,"option");n.value=String(t.length),t.push(o),n.textContent=i}for(let[e,t]of Object.entries(this.depthOneNodesByGroup)){o({type:"group",value:e},{scripts:d.strings.allScriptsDropdownLabel}[e]||`All ${e}`);for(let e of t)e.children&&o({type:"depthOneNode",value:e.name},e.name)}let i=t.findIndex((e=>this.selector&&e.type===this.selector.type&&e.value===this.selector.value));e.value=String(-1!==i?i:0),e.addEventListener("change",(()=>{let o=Number(e.value),i=t[o];this.setSelector(i),this.render()}))}initListeners(){let e={signal:this.abortController.signal},t=d.find(".lh-treemap");new ResizeObserver((()=>this.resize())).observe(t),t.addEventListener("click",(e=>{!(e.target instanceof HTMLElement)||!e.target.closest(".webtreemap-node")||this.updateColors()}),e),t.addEventListener("keyup",(e=>{e instanceof KeyboardEvent&&("Enter"===e.key&&this.updateColors(),"Escape"===e.key&&this.treemap&&this.treemap.zoom([]))}),e),t.addEventListener("mouseover",(e=>{if(!(e.target instanceof HTMLElement))return;let t=e.target.closest(".webtreemap-node");t&&t.classList.add("webtreemap-node--hover")}),e),t.addEventListener("mouseout",(e=>{if(!(e.target instanceof HTMLElement))return;let t=e.target.closest(".webtreemap-node");t&&t.classList.remove("webtreemap-node--hover")}),e),d.find(".lh-table").addEventListener("mouseover",(e=>{let o=e.target;if(!(o instanceof HTMLElement))return;let i=o.closest(".tabulator-row");if(!(i instanceof HTMLElement))return;let n=this.tableRowToNodeMap.get(i);!n||!n.dom||(n.dom.classList.add("webtreemap-node--hover"),i.addEventListener("mouseout",(()=>{for(let e of t.querySelectorAll(".webtreemap-node--hover"))e.classList.remove("webtreemap-node--hover")}),{once:!0}))}),e),d.find(".lh-button--toggle-table").addEventListener("click",(()=>Q.toggleTable()),e)}wrapNodesInNewRootNode(e){let t=[...e];return{name:this.documentUrl.toString(),resourceBytes:t.reduce(((e,t)=>t.resourceBytes+e),0),unusedBytes:t.reduce(((e,t)=>(t.unusedBytes||0)+e),0),children:t}}createViewModes(){let e=[];e.push({id:"all",label:d.strings.allLabel,subLabel:d.i18n.formatBytesWithBestUnit(this.currentTreemapRoot.resourceBytes),enabled:!0});let t=function(e){if(void 0!==e.unusedBytes)return{id:"unused-bytes",label:d.strings.unusedBytesLabel,subLabel:d.i18n.formatBytesWithBestUnit(e.unusedBytes),enabled:!0}}(this.currentTreemapRoot);t&&e.push(t);let o=(e=>{let t=new Map;for(let o of e.children||[])d.walk(o,((e,o)=>{if(e.children||!e.duplicatedNormalizedModuleName)return;let i=t.get(e.duplicatedNormalizedModuleName)||[];i.push({node:e,path:o}),t.set(e.duplicatedNormalizedModuleName,i)}));let o=d.stableHasher(d.COLOR_HUES),i=0,n=[];for(let[r,s]of t.entries()){if(1===s.length)continue;let t=[];for(let{node:e}of s)t.push(e.resourceBytes);t.sort(((e,t)=>t-e));let a=0;for(let e=1;ee.id===this.currentViewMode.id&&!e.enabled));(!this.currentViewMode||t)&&(this.currentViewMode=this.viewModes[0])}setViewMode(e){this.currentViewMode=e}render(){let e=!this.previousRenderState||this.previousRenderState.root!==this.currentTreemapRoot,t=!this.previousRenderState||this.previousRenderState.viewMode!==this.currentViewMode;e&&(this.nodeToPathMap=new Map,d.walk(this.currentTreemapRoot,((e,t)=>this.nodeToPathMap.set(e,t))),to(this.viewModes),d.walk(this.currentTreemapRoot,(e=>{delete e.dom,e.size=e[this.currentViewMode.partitionBy||"resourceBytes"]||0})),webtreemap.sort(this.currentTreemapRoot),this.treemap=new webtreemap.TreeMap(this.currentTreemapRoot,{padding:[16,3,3,3],spacing:10,caption:e=>this.makeCaption(e)}),this.el.innerHTML="",this.treemap.render(this.el),d.find(".webtreemap-node").classList.add("webtreemap-node--root"),this.createTable()),(e||t)&&(this.updateColors(),no(this.currentViewMode.id,this.el)),this.previousRenderState={root:this.currentTreemapRoot,viewMode:this.currentViewMode}}createTable(){let e=d.find(".lh-table");e.innerHTML="";let t=[];d.walk(this.currentTreemapRoot,((e,o)=>{if(e.children)return;let i,n=this.nodeToDepthOneNodeMap.get(e),r=n?.children?n:void 0;if(r){let e=this.nodeToPathMap.get(r),t=e?e.length:0;i=`(bundle) ${o.slice(t).join("/")}`}else i=o[0]===this.currentTreemapRoot.name?o.slice(1).join("/"):o.join("/");t.push({node:e,name:i,bundleNode:r,resourceBytes:e.resourceBytes,unusedBytes:e.unusedBytes})}));let o=e=>t=>{let o=t.getRow().getData()[e];return void 0===o?"":d.i18n.formatBytes(o)},i=document.createElement("div");e.append(i);let n=this.currentTreemapRoot.children||[],r=Math.max(...n.map((e=>e.resourceBytes)));this.tableRowToNodeMap=new WeakMap,this.table=new Tabulator(i,{data:t,height:"100%",layout:"fitColumns",tooltips:!0,addRowPos:"top",resizableColumns:!0,initialSort:[{column:"resourceBytes",dir:"desc"}],columns:[{title:d.strings.tableColumnName,field:"name",widthGrow:5,tooltip:e=>{let t=e.getRow().getData();return t.bundleNode?`${t.bundleNode.name} ${t.name}`:""}},{title:d.strings.resourceBytesLabel,field:"resourceBytes",headerSortStartingDir:"desc",tooltip:o("resourceBytes"),formatter:e=>{let t=e.getValue();return d.i18n.formatBytesWithBestUnit(t)}},{title:d.strings.unusedBytesLabel,field:"unusedBytes",widthGrow:1,sorterParams:{alignEmptyValues:"bottom"},headerSortStartingDir:"desc",tooltip:o("unusedBytes"),formatter:e=>{let t=e.getValue();return void 0===t?"":d.i18n.formatBytesWithBestUnit(t)}},{title:d.strings.coverageColumnName,widthGrow:3,headerSort:!1,tooltip:e=>{let t=e.getRow().getData();if(!t.unusedBytes)return"";let o=t.unusedBytes/t.resourceBytes;return`${d.i18n.formatPercent(o)} bytes unused`},formatter:e=>{let t=e.getRow().getData(),o=d.createElement("div","lh-coverage-bar");return void 0===t.unusedBytes||(o.style.setProperty("--max",String(r)),o.style.setProperty("--used",String(t.resourceBytes-t.unusedBytes)),o.style.setProperty("--unused",String(t.unusedBytes)),d.createChildOf(o,"div","lh-coverage-bar--used"),d.createChildOf(o,"div","lh-coverage-bar--unused")),o}}],rowFormatter:e=>{this.tableRowToNodeMap.set(e.getElement(),e.getData().node)}})}toggleTable(e){d.find("main").classList.toggle("lh-main--show-table",e),d.find(".lh-button--toggle-table").classList.toggle("lh-button--active",e)}resize(){if(!this.treemap)throw new Error("must call .render() first");this.treemap.layout(this.currentTreemapRoot,this.el),this.updateColors(),this.table&&this.table.redraw()}makeCaption(e){let t=this.currentViewMode.partitionBy||"resourceBytes",o={resourceBytes:d.strings.resourceBytesLabel,unusedBytes:d.strings.unusedBytesLabel}[t],i=e[t],n=this.currentTreemapRoot[t],r=[d.elide(e.name||"",60)];if(void 0!==i&&void 0!==n){let t=0===n?1:i/n,s=d.i18n.formatPercent(t),a=`${d.i18n.formatBytesWithBestUnit(i)} (${s})`;e===this.currentTreemapRoot&&(a=`${o}: ${a}`),r.push(a)}return r.join(" · ")}getColorFromHue(e){return d.hsl(e,60,90)}updateColors(){d.walk(this.currentTreemapRoot,(e=>{let t,o=this.nodeToDepthOneNodeMap.get(e),i=o&&this.getHueForD1NodeName(o?o.name:e.name),n=void 0!==i?this.getColorFromHue(i):"white";if(e.dom){if(this.currentViewMode.highlights){let o=this.nodeToPathMap.get(e),i=o&&this.currentViewMode.highlights.find((e=>d.pathsAreEqual(o,e.path)));return t=i?i.color||n:"white",void(e.dom.style.backgroundColor=t)}if(e.dom.style.backgroundColor=n,"unused-bytes"===this.currentViewMode.id){let t=(e.unusedBytes||0)/e.resourceBytes*100;e.dom.style.setProperty("--pctUnused",`${t}%`)}}}))}};function to(e){let t=d.find(".lh-modes");t.innerHTML="",e.forEach((function(e){let o=d.createChildOf(t,"div","view-mode");e.enabled||o.classList.add("view-mode--disabled"),o.id=`view-mode--${e.id}`;let i=d.createChildOf(o,"input","view-mode__button");i.id=`view-mode--${e.id}__label`,i.type="radio",i.name="view-mode",i.disabled=!e.enabled;let n=d.createChildOf(o,"label");n.htmlFor=i.id,d.createChildOf(n,"span","view-mode__label").textContent=e.label,d.createChildOf(n,"span","view-mode__sublabel lh-text-dim").textContent=` (${e.subLabel})`,i.addEventListener("click",(()=>{Q.setViewMode(e),Q.render()}))}))}function no(e,t){let o=d.find(".lh-modes");for(let i of o.querySelectorAll(".view-mode")){if(!(i instanceof HTMLElement))continue;let o=i.id===`view-mode--${e}`;i.classList.toggle("view-mode--active",o),t.classList.toggle(`lh-treemap--${i.id}`,o)}}function ro(e){let t=document.querySelector(".lh-injectedoptions");t&&t.remove(),t=d.createChildOf(document.head,"script","lh-injectedoptions"),t.textContent=`\n window.__treemapOptions = ${JSON.stringify(e)};\n `}var Ft=class e{static get APP_URL(){return`${location.origin}${location.pathname}`}constructor(){this._onPaste=this._onPaste.bind(this),this._onFileLoad=this._onFileLoad.bind(this),this._dragAndDrop=new ve(this._onFileLoad),this._github=new Xe,document.addEventListener("paste",this._onPaste);let e=d.find("input#hidden-file-input",document);e.addEventListener("change",(e=>{if(!e.target)return;let t=e.target;t.files&&this._dragAndDrop.readFile(t.files[0]).then((e=>{this._onFileLoad(e)})),t.value=""})),d.find(".treemap-placeholder-inner",document).addEventListener("click",(t=>{let o=t.target;o&&"input"!==o.localName&&"a"!==o.localName&&e.click()}))}init(e){d.find(".treemap-placeholder").classList.add("hidden"),d.find("main").classList.remove("hidden");let t=e.lhr.configSettings.locale;document.documentElement.lang=t,d.applyStrings(strings[e.lhr.configSettings.locale]),d.i18n=new Ze(t);for(let e of document.querySelectorAll("[data-i18n]")){let t=e.getAttribute("data-i18n");e.textContent=d.strings[t]}Q&&(d.find(".lh-treemap").innerHTML="",d.find(".lh-table").innerHTML="",Q.abortController.abort()),Q=new xt(e,d.find("div.lh-treemap")),ro(e),console.log("window.__treemapOptions",window.__treemapOptions)}coerceToOptions(e){let t=null;if(e&&"object"==typeof e)for(let o of[e,e.lhr,e.lighthouseResult])if(o?.audits&&"object"==typeof o.audits){t=o;break}if(!t)throw new Error("provided json is not a Lighthouse result");if(!t.audits["script-treemap-data"])throw new Error("provided Lighthouse result is missing audit: `script-treemap-data`");return t===e.lhr?e:{lhr:t}}async loadFromGistUrl(t){try{let o=new URL(t);if("https://gist.github.com"!==o.origin)return void Z.error("URL was not a gist");let i=o.pathname.match(/[a-f0-9]{5,}/);if(i){let t=i[0];history.pushState({},"",`${e.APP_URL}?gist=${t}`);let o=await this._github.getGistFileContentAsJson(t),n=this.coerceToOptions(o);this.init(n)}}catch(e){Z.error(e)}}_onFileLoad(e){let t,o;try{t=JSON.parse(e),o=this.coerceToOptions(t)}catch{Z.error("Could not parse JSON file.")}o&&this.init(o)}_onPaste(e){if(e.clipboardData){e.preventDefault();try{let t=new URL(e.clipboardData.getData("text"));return this.loadFromGistUrl(t.href),void(window.ga&&window.ga("send","event","report","paste-link"))}catch{}try{let t=JSON.parse(e.clipboardData.getData("text")),o=this.coerceToOptions(t);return this.init(o),void(window.ga&&window.ga("send","event","report","paste"))}catch{}Z.error("Pasted content did not have JSON or gist URL")}}};async function io(){let e=new Ft,t=new URLSearchParams(window.location.search),o="1"===t.get("gzip"),i=window.__hash??location.hash,n=i?JSON.parse(Qn.fromBase64(i.substr(1),{gzip:o})):{},r={...Object.fromEntries(t.entries()),...n};if(window.__treemapOptions)e.init(e.coerceToOptions(window.__treemapOptions));else if("debug"in r){let t=await(await fetch("debug.json")).json(),o=e.coerceToOptions(t);e.init(o)}else if(r.lhr){let t=e.coerceToOptions(r.lhr);e.init(t)}else if(r.gist){let t=await e._github.getGistFileContentAsJson(r.gist||""),o=e.coerceToOptions(t);e.init(o)}}document.addEventListener("DOMContentLoaded",(async()=>{try{await io()}catch(e){Z.error(e)}})); /**