meeting-schedules-parser
Version:
This tool will help you to parse and extract the needed meeting schedules from Meeting Workbook and Watchtower Study EPUB and JWPUB files.
2 lines (1 loc) • 37.7 kB
JavaScript
;var a=require("path"),e=require("fs/promises"),i=require("sql.js"),r=require("jszip"),t=require("node-html-parser"),n=require("pako");function o(a){var e=Object.create(null);return a&&Object.keys(a).forEach((function(i){if("default"!==i){var r=Object.getOwnPropertyDescriptor(a,i);Object.defineProperty(e,i,r.get?r:{enumerable:!0,get:function(){return a[i]}})}})),e.default=a,Object.freeze(e)}var s=o(a),u={januaryVariations:"1月",februaryVariations:"2月",marchVariations:"3月",aprilVariations:"4 月",mayVariations:"5 月",juneVariations:"6 月",julyVariations:"7 月",augustVariations:"8 月",septemberVariations:"9 月",octoberVariations:"10 月",novemberVariations:"11 月",decemberVariations:"12 月",partMinutesSeparatorVariations:"分鐘"},c={januaryVariations:"一月",februaryVariations:"二月",marchVariations:"三月",aprilVariations:"四月",mayVariations:"五月",juneVariations:"六月",julyVariations:"七月",augustVariations:"八月",septemberVariations:"九月",octoberVariations:"十月",novemberVariations:"十一月",decemberVariations:"十二月",partMinutesSeparatorVariations:"分钟"},l={januaryVariations:"Janvye",februaryVariations:"Fevriye",marchVariations:"Mas",aprilVariations:"Avril",mayVariations:"Me",juneVariations:"Jen",julyVariations:"Jiyè",augustVariations:"Out",septemberVariations:"Septanm",octoberVariations:"Oktòb",novemberVariations:"Novanm",decemberVariations:"Desanm",partMinutesSeparatorVariations:"min."},m={januaryVariations:"January",februaryVariations:"February",marchVariations:"March",aprilVariations:"April",mayVariations:"May",juneVariations:"June",julyVariations:"July",augustVariations:"August",septemberVariations:"September",octoberVariations:"October",novemberVariations:"November",decemberVariations:"December",partMinutesSeparatorVariations:"min."},V={januaryVariations:"January",februaryVariations:"February",marchVariations:"March",aprilVariations:"April",mayVariations:"May",juneVariations:"June",julyVariations:"July",augustVariations:"August",septemberVariations:"September",octoberVariations:"October",novemberVariations:"November",decemberVariations:"December",partMinutesSeparatorVariations:"min."},b={januaryVariations:"janvier",februaryVariations:"février",marchVariations:"mars",aprilVariations:"avril",mayVariations:"mai",juneVariations:"juin",julyVariations:"juillet",augustVariations:"août",septemberVariations:"septembre",octoberVariations:"octobre",novemberVariations:"novembre",decemberVariations:"décembre",partMinutesSeparatorVariations:"min"},d={januaryVariations:"tammikuuta",februaryVariations:"helmikuuta",marchVariations:"maaliskuuta",aprilVariations:"huhtikuuta",mayVariations:"toukokuuta",juneVariations:"kesäkuuta",julyVariations:"heinäkuuta",augustVariations:"elokuuta",septemberVariations:"syyskuuta",octoberVariations:"lokakuuta",novemberVariations:"marraskuuta",decemberVariations:"joulukuuta",partMinutesSeparatorVariations:"min"},p={januaryVariations:"ΙΑΝΟΥΑΡΙΟΥ|Ιανουαρίου|Ιανουάριος",februaryVariations:"ΦΕΒΡΟΥΑΡΙΟΥ|Φεβρουαρίου|Φεβρουάριος",marchVariations:"ΜΑΡΤΙΟΥ|Μαρτίου|Μάρτιος",aprilVariations:"ΑΠΡΙΛΙΟΥ|Απριλίου|Απρίλιος",mayVariations:"ΜΑΪΟΥ|Μαΐου|Μάιος",juneVariations:"ΙΟΥΝΙΟΥ|Ιουνίου|ούνιος",julyVariations:"ΙΟΥΛΙΟΥ|Ιουλίου|Ιούλιος",augustVariations:"ΑΥΓΟΥΣΤΟΥ|Αυγούστου|Αύγουστος",septemberVariations:"ΣΕΠΤΕΜΒΡΙΟΥ|Σεπτεμβρίου|Σεπτέμβριος",octoberVariations:"ΟΚΤΩΒΡΙΟΥ|Οκτωβρίου|Οκτώβριος",novemberVariations:"ΝΟΕΜΒΡΙΟΥ|Νοεμβρίου|Νοέμβριος",decemberVariations:"ΔΕΚΕΜΒΡΙΟΥ|Δεκεμβρίου|Δεκέμβριος",partMinutesSeparatorVariations:"λεπτό|λεπτά"},y={januaryVariations:"Gennaio",februaryVariations:"Febbraio",marchVariations:"Marzo",aprilVariations:"Aprile",mayVariations:"Maggio",juneVariations:"Giugno",julyVariations:"Luglio",augustVariations:"Agosto",septemberVariations:"Settembre",octoberVariations:"Ottobre",novemberVariations:"Novembre",decemberVariations:"Dicembre",partMinutesSeparatorVariations:"min"},g={januaryVariations:"Enero",februaryVariations:"Pebrero",marchVariations:"Marso",aprilVariations:"Abril",mayVariations:"Mayo",juneVariations:"Hunio",julyVariations:"Hulio",augustVariations:"Agosto",septemberVariations:"Septiembre",octoberVariations:"Oktubre",novemberVariations:"Nobyembre|Nobiembre",decemberVariations:"Disiembre",partMinutesSeparatorVariations:"min."},w={januaryVariations:"1月",februaryVariations:"2月",marchVariations:"3月",aprilVariations:"4月",mayVariations:"5月",juneVariations:"6月",julyVariations:"7月",augustVariations:"8月",septemberVariations:"9月",octoberVariations:"10月",novemberVariations:"11月",decemberVariations:"12月",partMinutesSeparatorVariations:"分"},f={januaryVariations:"Січень|січень|січня",februaryVariations:"Лютий|лютий|лютого",marchVariations:"Березень|березень|березня",aprilVariations:"Квітень|квітень|квітня",mayVariations:"Травень|травень|травня",juneVariations:"Червень|червень|червня",julyVariations:"Липень|липень|липня",augustVariations:"Серпень|серпень|серпня",septemberVariations:"Вересень|вересень|вересня",octoberVariations:"Жовтень|жовтень|жовтня",novemberVariations:"Листопад|листопад|листопада",decemberVariations:"Грудень|грудень|грудня",partMinutesSeparatorVariations:"хв"},h={januaryVariations:"January",februaryVariations:"February",marchVariations:"March",aprilVariations:"April",mayVariations:"May",juneVariations:"June",julyVariations:"July",augustVariations:"August",septemberVariations:"September",octoberVariations:"October",novemberVariations:"November",decemberVariations:"December",partMinutesSeparatorVariations:"분"},j={januaryVariations:"Enero",februaryVariations:"Febrero",marchVariations:"Marzo",aprilVariations:"Abril",mayVariations:"Mayo",juneVariations:"Junio",julyVariations:"Julio",augustVariations:"Agosto",septemberVariations:"Septiembre",octoberVariations:"Octubre",novemberVariations:"Noviembre",decemberVariations:"Diciembre",partMinutesSeparatorVariations:"mins.|min."},S={januaryVariations:"Ianuarie",februaryVariations:"Februarie",marchVariations:"Martie",aprilVariations:"Aprilie",mayVariations:"Mai",juneVariations:"Iunie",julyVariations:"Iulie",augustVariations:"August",septemberVariations:"Septembrie",octoberVariations:"Octombrie",novemberVariations:"Noiembrie",decemberVariations:"Decembrie",partMinutesSeparatorVariations:"min."},_={januaryVariations:"Janoary",februaryVariations:"Febroary",marchVariations:"Martsa",aprilVariations:"Aprily",mayVariations:"Mey",juneVariations:"Jona",julyVariations:"Jolay",augustVariations:"Aogositra",septemberVariations:"Septambra",octoberVariations:"Oktobra",novemberVariations:"Novambra",decemberVariations:"Desambra",partMinutesSeparatorVariations:"min."},$={januaryVariations:"Januari",februaryVariations:"Februari",marchVariations:"Mac",aprilVariations:"April",mayVariations:"Mei",juneVariations:"Jun",julyVariations:"Julai",augustVariations:"Ogos",septemberVariations:"September",octoberVariations:"Oktober",novemberVariations:"November",decemberVariations:"Disember",partMinutesSeparatorVariations:"min."},M={januaryVariations:"januari",februaryVariations:"februari",marchVariations:"maart",aprilVariations:"april",mayVariations:"mei",juneVariations:"juni",julyVariations:"juli",augustVariations:"augustus",septemberVariations:"september",octoberVariations:"oktober",novemberVariations:"november",decemberVariations:"december",partMinutesSeparatorVariations:"min."},E={januaryVariations:"Styczeń|stycznia",februaryVariations:"Luty|lutego",marchVariations:"Marzec|marca",aprilVariations:"Kwiecień|kwietnia",mayVariations:"maja|Maj",juneVariations:"Czerwiec|czerwca",julyVariations:"Lipiec|lipca",augustVariations:"Sierpień|sierpnia",septemberVariations:"Wrzesień|września",octoberVariations:"października|Październik",novemberVariations:"listopada|Listopad",decemberVariations:"Grudzień|grudnia",partMinutesSeparatorVariations:"min|min."},v={januaryVariations:"January",februaryVariations:"February",marchVariations:"March",aprilVariations:"April",mayVariations:"May",juneVariations:"June",julyVariations:"July",augustVariations:"August",septemberVariations:"September",octoberVariations:"October",novemberVariations:"November",decemberVariations:"December",partMinutesSeparatorVariations:"min."},x={januaryVariations:"Enero",februaryVariations:"Febrero",marchVariations:"Marzo",aprilVariations:"Abril",mayVariations:"Mayo",juneVariations:"Junio",julyVariations:"Julio",augustVariations:"Agosto",septemberVariations:"Septiembre",octoberVariations:"Octubre",novemberVariations:"Noviembre",decemberVariations:"Diciembre",partMinutesSeparatorVariations:"mins.|min."},A={januaryVariations:"Jaanuar|jaanuarini|jaanuarist",februaryVariations:"Veebruar|veebruarini|veebruarist",marchVariations:"Märts|märtsini|märtsist",aprilVariations:"Aprill|aprillini|aprillist",mayVariations:"Mai|maini|maist",juneVariations:"Juuni|juunini",julyVariations:"Juuli|juulini|juulist",augustVariations:"August|augustini|augustist",septemberVariations:"September|septembrini|septembrist",octoberVariations:"Oktoober|oktoobrini|oktoobrist",novemberVariations:"November|novembrini|novembrist",decemberVariations:"Detsember|detsembrini|detsembrist",partMinutesSeparatorVariations:"min"},k={januaryVariations:"januar|januarja",februaryVariations:"februar|februarja",marchVariations:"marec|marca",aprilVariations:"april|aprila",mayVariations:"maj|maja",juneVariations:"junij|junija",julyVariations:"julij|julija",augustVariations:"avgust|avgusta",septemberVariations:"september|septembra",octoberVariations:"oktober|oktobra",novemberVariations:"november|novembra",decemberVariations:"december|decembra",partMinutesSeparatorVariations:"min."},T={januaryVariations:"Januari",februaryVariations:"Februari",marchVariations:"Machi",aprilVariations:"Aprili",mayVariations:"Mei",juneVariations:"Juni",julyVariations:"Julai",augustVariations:"Agosti",septemberVariations:"Septemba",octoberVariations:"Oktoba",novemberVariations:"Novemba",decemberVariations:"Desemba",partMinutesSeparatorVariations:"Dak."},R={januaryVariations:"de janeiro|janeiro",februaryVariations:"de fevereiro|fevereiro",marchVariations:"de março|março",aprilVariations:"de abril|abril",mayVariations:"de maio|maio",juneVariations:"de junho|junho",julyVariations:"de julho|julho",augustVariations:"de agosto|agosto",septemberVariations:"de setembro|setembro",octoberVariations:"de outubro|outubro",novemberVariations:"de novembro|novembro",decemberVariations:"de dezembro|dezembro",partMinutesSeparatorVariations:"min|min."},O={januaryVariations:"Enero",februaryVariations:"Pebrero",marchVariations:"Marso",aprilVariations:"Abril",mayVariations:"Mayo",juneVariations:"Hunyo",julyVariations:"Hulyo",augustVariations:"Agosto",septemberVariations:"Setyembre",octoberVariations:"Oktubre",novemberVariations:"Nobyembre",decemberVariations:"Disyembre",partMinutesSeparatorVariations:"min."},N={januaryVariations:"Ocak",februaryVariations:"Şubat",marchVariations:"Mart",aprilVariations:"Nisan|NİSAN",mayVariations:"MAYIS|Mayıs",juneVariations:"HAZİRAN|Haziran",julyVariations:"Temmuz",augustVariations:"Ağustos",septemberVariations:"Eylül",octoberVariations:"Ekim|EKİM",novemberVariations:"Kasım|KASIM",decemberVariations:"Aralık|ARALIK",partMinutesSeparatorVariations:"dk.|dk"},J={januaryVariations:"Janvie",februaryVariations:"Fevrie",marchVariations:"Marsa",aprilVariations:"Avrily",mayVariations:"Mey",juneVariations:"Jona",julyVariations:"Jolay",augustVariations:"Aogositra",septemberVariations:"Septambra",octoberVariations:"Oktobra|Okotobra",novemberVariations:"Novambra",decemberVariations:"Desambra",partMinutesSeparatorVariations:"min.|min"},W={januaryVariations:"Zanvie",februaryVariations:"Fevrie",marchVariations:"Marsy",aprilVariations:"Avrily",mayVariations:"May",juneVariations:"Ziain",julyVariations:"Zie|ZIE",augustVariations:"Aoty",septemberVariations:"Septambra",octoberVariations:"Oktobra",novemberVariations:"Novambra",decemberVariations:"Desambra",partMinutesSeparatorVariations:"min.|min"},L={januaryVariations:"de janeiro|janeiro",februaryVariations:"de fevereiro|fevereiro",marchVariations:"de março|março",aprilVariations:"de abril|abril",mayVariations:"de maio|maio",juneVariations:"de junho|junho",julyVariations:"de julho|julho",augustVariations:"de agosto|agosto",septemberVariations:"de setembro|setembro",octoberVariations:"de outubro|outubro",novemberVariations:"de novembro|novembro",decemberVariations:"de dezembro|dezembro",partMinutesSeparatorVariations:"min."},C={januaryVariations:"Janoary",februaryVariations:"Febroary",marchVariations:"Martsa",aprilVariations:"Aprily",mayVariations:"Mey",juneVariations:"Jona",julyVariations:"Jolay",augustVariations:"Aogositra",septemberVariations:"Septambra",octoberVariations:"Oktobra",novemberVariations:"Novambra",decemberVariations:"Desambra",partMinutesSeparatorVariations:"min."},P={januaryVariations:"January",februaryVariations:"February",marchVariations:"March",aprilVariations:"April",mayVariations:"May",juneVariations:"June",julyVariations:"July",augustVariations:"August",septemberVariations:"September",octoberVariations:"October",novemberVariations:"November",decemberVariations:"December",partMinutesSeparatorVariations:"Simma"},D={januaryVariations:"Январь|января",februaryVariations:"Февраль|февраля",marchVariations:"Март|марта",aprilVariations:"Апрель|апреля",mayVariations:"Май|мая",juneVariations:"Июнь|июня",julyVariations:"Июль|июля",augustVariations:"Август|августа",septemberVariations:"Сентябрь|сентября",octoberVariations:"Октябрь|октября",novemberVariations:"Ноябрь|ноября",decemberVariations:"Декабрь|декабря",partMinutesSeparatorVariations:"мин."},I={januaryVariations:"tháng 1",februaryVariations:"tháng 2",marchVariations:"tháng 3",aprilVariations:"tháng 4",mayVariations:"tháng 5",juneVariations:"tháng 6",julyVariations:"tháng 7",augustVariations:"tháng 8",septemberVariations:"tháng 9",octoberVariations:"tháng 10",novemberVariations:"tháng 11",decemberVariations:"tháng 12",partMinutesSeparatorVariations:"phút"},F={januaryVariations:"Zanviè",februaryVariations:"Fevriè|Feviè",marchVariations:"Marsa",aprilVariations:"Avrily",mayVariations:"Mey",juneVariations:"Ziein",julyVariations:"Ziè",augustVariations:"Oòh",septemberVariations:"Septambra",octoberVariations:"Oktobra",novemberVariations:"Novambra",decemberVariations:"Desambra",partMinutesSeparatorVariations:"min.|min"},q={januaryVariations:"Januar",februaryVariations:"Februar",marchVariations:"März",aprilVariations:"April",mayVariations:"Mai",juneVariations:"Juni",julyVariations:"Juli",augustVariations:"August",septemberVariations:"September",octoberVariations:"Oktober",novemberVariations:"November",decemberVariations:"Dezember",partMinutesSeparatorVariations:"Min|Min."},z={januaryVariations:"Mutarama",februaryVariations:"Gashyantare",marchVariations:"Werurwe",aprilVariations:"Mata",mayVariations:"Gicurasi",juneVariations:"Kamena",julyVariations:"Nyakanga",augustVariations:"Kanama",septemberVariations:"Nzeri",octoberVariations:"Ukwakira",novemberVariations:"Ugushyingo",decemberVariations:"Ukuboza",partMinutesSeparatorVariations:"Imin.|Umun."},G={januaryVariations:"januari",februaryVariations:"februari",marchVariations:"mars",aprilVariations:"april",mayVariations:"maj",juneVariations:"juni",julyVariations:"juli",augustVariations:"augusti",septemberVariations:"september",octoberVariations:"oktober",novemberVariations:"november",decemberVariations:"december",partMinutesSeparatorVariations:"min."};global.meeting_schedules_parser={languages:{CH:u,CHS:c,CR:l,E:m,ELI:V,F:b,FI:d,G:p,I:y,IL:g,J:w,K:f,KO:h,LSE:j,M:S,MG:_,ML:$,O:M,P:E,PGW:v,S:x,ST:A,SV:k,SW:T,T:R,TG:O,TK:N,TND:J,TNK:W,TPO:L,TTM:C,TW:P,U:D,VT:I,VZ:F,X:q,YW:z,Z:G},path:s,readFile:e.readFile,loadSQL:async()=>await i()};const U=a=>/^mwb_[A-Z]{1,3}_20[2-9]\d(0[1-9]|1[0-2]).(jwpub|epub)$/i.test(a),H=a=>/^w_[A-Z]{1,3}_20[2-9]\d(0[1-9]|1[0-2]).(jwpub|epub)$/i.test(a),K=a=>{let e;return e="object"==typeof a&&"url"in a?a.url:a instanceof Blob&&"name"in a?a.name:a,meeting_schedules_parser.path.basename(e)},Z=a=>+K(a).split("_")[2].substring(0,4),B=a=>K(a).split("_")[1],Y=a=>{let e=!1;if(a.startsWith("OEBPS")&&a.endsWith(".xhtml")&&-1===a.indexOf("-extracted")){const i=a.split("/")[1].split(".")[0];isNaN(parseFloat(i))||(e=!0)}return e},X=async(a,e)=>await a.file(e).async("string"),Q=a=>{let e=!1,i=!1,r=!1,t=!1;return i=!!a.querySelector("[class*=treasures]"),i&&(r=!!a.querySelector("[class*=ministry]"),t=!!a.querySelector("[class*=christianLiving]")),i||(i=!!a.querySelector(".du-color--teal-700"),i&&(r=!!a.querySelector(".du-color--gold-700"),t=!!a.querySelector(".du-color--maroon-600"))),!0===i&&!0===r&&!0===t&&(e=!0),e},aa=a=>t.parse(a),ea=a=>!!a.querySelector(".groupTOC");var ia=[{locale:"en",code:"E"},{locale:"fr-FR",code:"F"},{locale:"it-IT",code:"I"},{locale:"ja-JP",code:"J"},{locale:"uk-UA",code:"K"},{locale:"ko-KR",code:"KO"},{locale:"ro-RO",code:"M"},{locale:"mg-MG",code:"MG"},{locale:"pl-PL",code:"P"},{locale:"es-ES",code:"S"},{locale:"pt-POR",code:"T"},{locale:"pt-TPO",code:"TPO"},{locale:"tl-PH",code:"TG"},{locale:"tr-TR",code:"TK"},{locale:"mg-TND",code:"TND"},{locale:"mg-TNK",code:"TNK"},{locale:"mg-TTM",code:"TTM"},{locale:"tw-TW",code:"TW"},{locale:"uk-UA",code:"U"},{locale:"mg-VZ",code:"VZ"},{locale:"de-DE",code:"X"},{locale:"cmn-Hant",code:"CH"},{locale:"ch-CHS",code:"CHS"},{locale:"fi-FI",code:"FI"},{locale:"sv-SE",code:"Z"},{locale:"nl-NL",code:"O"},{locale:"wes-PGW",code:"PGW"},{locale:"sl-SI",code:"SV"},{locale:"sw-KE",code:"SW"},{locale:"et-EE",code:"ST"},{locale:"ht-HT",code:"CR"},{locale:"ilo-PH",code:"IL"},{locale:"en-LR",code:"ELI"},{locale:"rw-RW",code:"YW"},{locale:"vi-VN",code:"VT"},{locale:"ms-MY",code:"ML"},{locale:"el-GR",code:"G"},{locale:"es-LSE",code:"LSE"}];class ra extends Error{code;constructor(a,e){super(e),this.code=`meeting-schedules-parser/failed-${a}`}}const ta=meeting_schedules_parser.languages,na=a=>[{index:0,name:ta[a].januaryVariations},{index:1,name:ta[a].februaryVariations},{index:2,name:ta[a].marchVariations},{index:3,name:ta[a].aprilVariations},{index:4,name:ta[a].mayVariations},{index:5,name:ta[a].juneVariations},{index:6,name:ta[a].julyVariations},{index:7,name:ta[a].augustVariations},{index:8,name:ta[a].septemberVariations},{index:9,name:ta[a].octoberVariations},{index:10,name:ta[a].novemberVariations},{index:11,name:ta[a].decemberVariations}],oa={ELI:{"Study Article 23: July 31–August 6 20":"Study Article 23: July 31, 2023–August 6, 2023"},PGW:{"Fine-Fine Things Wey You See for Bible":"Fine-Fine Things Wey You See for Bible: (10 min.)"},ST:{"Seda artiklit uuritakse vahemikus 28. oktoobrist 3.novembrini 2024.":"Seda artiklit uuritakse vahemikus 28. oktoobrist 3. novembrini 2024."},SW:{"7. Video ya Machi ya Mambo Yaliyotimizwa na Tengenezo (10 min.) Onyesha VIDEO.":"7. Video ya Machi ya Mambo Yaliyotimizwa na Tengenezo (Dak. 10) Onyesha VIDEO."},YW:{"4. Gutangiza ikiganiro (Umun. 1) KUBWIRIZA KU NZU N’INZU. Umubwiriza asange umuntu avuga urundi rurimi. (lmd isomo rya 2 ingingo ya 5)":"4. Gutangiza ikiganiro (Imin. 1) KUBWIRIZA KU NZU N’INZU. Umubwiriza asange umuntu avuga urundi rurimi. (lmd isomo rya 2 ingingo ya 5)"}},sa=a=>{const e=a.match(/(\d+)/);if(e&&e.length>0){const a=+e[0];if(a<=161)return a}return a},ua=(a,e)=>{a=a.replace(/(\u200B)*(\d+)(\u200B)*/g,"$2");const i=(a=>ta[a].partMinutesSeparatorVariations)(e);let r=a;const t=oa[e];if(t){const e=t[a];e&&(r=e)}const n=new RegExp(`(.+?)(?:: )?[((](\\d+)(?: | | )?(?:${i})[))](?: : | |. )?(.+?)?$`,"giu"),o=new RegExp(`(.+?)(?:: )?[((](\\d+)(?: | )?(?:${i})[))]?(?: : | |. )?(.+?)?$`,"giu"),s=new RegExp(`(.+?)(?: )?\\((?:${i})(?: | )?(\\d+).?\\)(?: |.)?(.+?)?$`,"giu"),u={common:n,PGW:o,SW:s,TW:s,YW:s},c=u[e]||u.common;if(!r.match(c))throw new ra("meeting-schedules-parser",`Parsing failed. The input was: ${r}`);const l=Array.from(c.exec(r)),m=l.at(1).trim(),V=+l.at(2).trim(),b=l.at(3)?.trim(),d=/^(:?\d+)(?:.|.\s)(.+?)$/giu,p=m.match(d);let y=m;if(p){y=Array.from(d.exec(m)).at(2).trim()}return{type:y,src:b,time:V,fulltitle:m}},ca="\\s? bis |[-–—]| do | — | – \\s?",la="\\p{L}+\\p{M}*";let ma,Va,ba;ma=`(\\d{1,2})(?:er|º)?(?:${ca})(?:\\d{1,2}) (${la})`,Va=`(\\d{1,2})(?:er|º)? (${la})(?:${ca})(?:\\d{1,2})(?:er|º)?(?: )?(?:${la})`,ba=`(\\d{1,2}) (${la}) (\\d{4})`;const da=`${ma}|${Va}|${ba}`;ma=`(${la}) (\\d{1,2})[-–](?:\\d{1,2})`,Va=`(${la}) (\\d{1,2})[-–](?:${la}) (?:\\d{1,2})`,ba=`(${la}) (\\d{1,2}), (\\d{4})`;const pa=`${ma}|${Va}|${ba}`;ma="(\\d{1,2})月(\\d{1,2})[-–](?:\\d{1,2})日",Va="(\\d{1,2})月(\\d{1,2})日",ba="(?:\\d{4})年(\\d{1,2})月(\\d{1,2})日";const ya=`${ma}|${Va}|${ba}`;ma="(\\d{1,2})월 (\\d{1,2})[-–](?:\\d{1,2})일",Va="(\\d{1,2})월 (\\d{1,2})일",ba="(?:\\d{4})년 (\\d{1,2})월 (\\d{1,2})일";const ga=`${ma}|${Va}|${ba}`;ma=`(\\d{1,2})[-–](?:\\d{1,2}) (${la})`,Va=`(\\d{1,2}) (${la}) do (?:\\d{1,2}) (?:${la})`,ba=`(\\d{1,2}) (${la}) (\\d{4})`;const wa=`${ma}|${Va}|${ba}`;ma=`(\\d{1,2})[-–](?:\\d{1,2}) de (${la})`,Va=`(\\d{1,2}) de (${la}) a (?:\\d{1,2}) de (?:${la})`,ba=`(\\d{1,2}) de (${la}) de (\\d{4})`;const fa=`${ma}|${Va}|${ba}`;ma=`(\\d{1,2})[-–](?:\\d{1,2}) de (${la})`,Va=`(\\d{1,2}) de (${la})[-–](?:\\d{1,2})(?:.º)? de (?:${la})`,ba=`(\\d{1,2}) de (${la}) de (\\d{4})`;const ha=`${ma}|${Va}|${ba}`;ma=`(\\d{1,2}) a (?:\\d{1,2}) de (${la})`,Va=`(\\d{1,2}) de (${la}) a (?:\\d{1,2}) de (?:${la})`,ba=`(\\d{1,2}) de (${la}) de (\\d{4})`;const ja=`${ma}|${Va}|${ba}`;ma="(\\d{1,2})[-](?:\\d{1,2}) (\\p{L}+\\p{M}*\\s\\d{1,2})",Va="(\\d{1,2}) (\\p{L}+\\p{M}*\\s\\d{1,2})[–]NGÀY (?:\\d{1,2}) (?:\\p{L}+\\p{M}*\\s\\d{1,2})",ba="(\\d{1,2}) (\\p{L}+\\p{M}*\\s\\d{1,2}) năm (\\d{4})";const Sa=`${ma}|${Va}|${ba}`;ma=`(\\d{1,2}).[-–](?:\\d{1,2}). (${la})`,Va=`(\\d{1,2}). (${la}) ?[-–] ?(?:\\d{1,2}). (?:${la})`,ba=`(\\d{1,2}). (${la}) (\\d{4})`;const _a=`${ma}|${Va}|${ba}`,$a={common:new RegExp(da,"giu"),CH:new RegExp(ya,"giu"),CHS:new RegExp(ya,"giu"),E:new RegExp(pa,"giu"),ELI:new RegExp(pa,"giu"),FI:new RegExp(_a,"giu"),IL:new RegExp(pa,"giu"),J:new RegExp(ya,"giu"),KO:new RegExp(ga,"giu"),LSE:new RegExp(fa,"giu"),P:new RegExp(wa,"giu"),PGW:new RegExp(pa,"giu"),S:new RegExp(fa,"giu"),ST:new RegExp(_a,"giu"),SV:new RegExp(_a,"giu"),SW:new RegExp(pa,"giu"),T:new RegExp(ha,"giu"),TG:new RegExp(pa,"giu"),TPO:new RegExp(ja,"giu"),TW:new RegExp(pa,"giu"),VT:new RegExp(Sa,"giu"),X:new RegExp(_a,"giu")},Ma=a=>{let e,i;return a[1]?(i=a[1],e=a[2]):a[3]?(i=a[3],e=a[4]):(i=a[5],e=a[6]),[i,e]},Ea={common:a=>{let e,i;return a[1]?(e=a[1],i=a[2]):a[3]?(e=a[3],i=a[4]):(e=a[5],i=a[6]),[i,e]},CH:Ma,CHS:Ma,E:Ma,ELI:Ma,IL:Ma,J:Ma,KO:Ma,PGW:Ma,SW:Ma,TG:Ma,TW:Ma};ma=`(\\d{1,2})(?:${ca})(?:\\d{1,2})? (${la})(?:,)? (\\d{4})`,Va=`(\\d{1,2}) (${la})(?:${ca})(?:\\d{1,2}) (?:${la}) (\\d{4})`,ba=`(\\d{1,2}) (${la})(?:,)? (\\d{4})`;const va=`${ma}|${Va}|${ba}`;ma=`(${la}) (\\d{1,2})[-–](?:\\d{1,2})?, (\\d{4})`,Va=`(${la}) (\\d{1,2})[-–](?:${la}) (?:\\d{1,2}), (\\d{4})`,ba=`(${la}) (\\d{1,2}), (\\d{4})`;const xa=`${ma}|${Va}|${ba}`;ma="(\\d{4})年(?:nián)?(\\d{1,2})月(?:yuè)?(\\d{1,2})[-–~](\\d{1,2})日",Va="(\\d{4})年(?:nián)?(\\d{1,2})月(?:yuè)?(\\d{1,2})日";const Aa=`${ma}|${Va}`;ma="(\\d{4})년 (\\d{1,2})월 (\\d{1,2})[-–](\\d{1,2})일",Va="(\\d{4})년 (\\d{1,2})월 (\\d{1,2})일";const ka=`${ma}|${Va}`;ma=`(\\d{1,2}) do (?:\\d{1,2})? (${la}) (\\d{4})`,Va=`(\\d{1,2}) (${la}) do (?:\\d{1,2}) (?:${la}) (\\d{4})`,ba=`(\\d{1,2}) (${la}) (\\d{4})`;const Ta=`${ma}|${Va}|${ba}`;ma=`(\\d{1,2}) al (?:\\d{1,2})? de (${la}) de (\\d{4})`,Va=`(\\d{1,2}) de (${la}) de (\\d{4})`;const Ra=`${ma}|${Va}`;ma=`(\\d{1,2})[-](?:\\d{1,2})? de (${la}) de (\\d{4})`,Va=`(\\d{1,2}) de (${la})[-](?:\\d{1,2})?(?:.º)? de (?:${la}) de (\\d{4})`,ba=`(\\d{1,2}) de (${la}) de (\\d{4})`;const Oa=`${ma}|${Va}|${ba}`;ma=`(\\d{1,2}) a (?:\\d{1,2})? de (${la}) de (\\d{4})`,Va=`(\\d{1,2}) de (${la}) de (\\d{4})`;const Na=`${ma}|${Va}`;ma=`(\\d{1,2}) ka hatramin’ny (?:\\d{1,2})? (${la}) (\\d{4})`,Va=`(\\d{1,2}) (${la}) ka hatramin’ny (?:\\d{1,2}) (?:${la}) (\\d{4})`,ba=`(\\d{1,2}) (${la}) (\\d{4})`;const Ja=`${ma}|${Va}|${ba}`;ma=`(${la}) (\\d{1,2})[-–](?:\\d{1,2})?, (\\d{4})`,Va=`(${la}) (\\d{1,2})[-–](?:${la}) (?:\\d{1,2}), (\\d{4})`,ba=`(${la}) (\\d{1,2}), (\\d{4})`;const Wa=`${ma}|${Va}|${ba}`;ma="(\\d{1,2})[-](?:\\d{1,2})? (\\p{L}+\\p{M}*\\s\\d{1,2}) năm (\\d{4})",Va="(\\d{1,2}) (\\p{L}+\\p{M}*\\s\\d{1,2}) năm (\\d{4})";const La=`${ma}|${Va}`;ma=`(\\d{1,2}).(?:${ca})(?:\\d{1,2}).? (${la}) (\\d{4})`,Va=`(\\d{1,2}). (${la})(?:${ca})(?:\\d{1,2}).? (?:${la}) (\\d{4})`,ba=`(\\d{1,2}). (${la}) (\\d{4})`;const Ca=`${ma}|${Va}|${ba}`;ma="(\\d{1,2}).[–](?:\\d{1,2}).(\\d{1,2}).(\\d{4})",Va="(\\d{1,2}).(\\d{1,2}).[–](?:\\d{1,2}).(?:\\d{1,2}).(\\d{4})",ba="(\\d{1,2}).(\\d{1,2}).(\\d{4})";const Pa=`${ma}|${Va}|${ba}`,Da={common:new RegExp(va,"giu"),CH:new RegExp(Aa,"giu"),CHS:new RegExp(Aa,"giu"),E:new RegExp(xa,"giu"),ELI:new RegExp(xa,"giu"),FI:new RegExp(Pa,"giu"),IL:new RegExp(xa,"giu"),J:new RegExp(Aa,"giu"),KO:new RegExp(ka,"giu"),LSE:new RegExp(Ra,"giu"),P:new RegExp(Ta,"giu"),PGW:new RegExp(xa,"giu"),S:new RegExp(Ra,"giu"),ST:new RegExp(Ca,"giu"),SV:new RegExp(Ca,"giu"),SW:new RegExp(xa,"giu"),T:new RegExp(Oa,"giu"),TPO:new RegExp(Na,"giu"),TG:new RegExp(xa,"giu"),TTM:new RegExp(Ja,"giu"),TW:new RegExp(Wa,"giu"),VT:new RegExp(La,"giu"),X:new RegExp(Ca,"giu")},Ia=a=>{let e,i,r;return a[1]?(i=a[1],e=a[2],r=a[3]):a[4]?(i=a[4],e=a[5],r=a[6]):(i=a[7],e=a[8],r=a[9]),[r,i,e]},Fa=a=>{let e,i,r;return a[1]?(r=a[1],i=a[2],e=a[3]):(r=a[5],i=a[6],e=a[7]),[r,i,e]},qa={common:a=>{let e,i,r;return a[1]?(e=a[1],i=a[2],r=a[3]):a[4]?(e=a[4],i=a[5],r=a[6]):(e=a[7],i=a[8],r=a[9]),[r,i,e]},CH:Fa,CHS:Fa,E:Ia,ELI:Ia,IL:Ia,J:Fa,KO:Fa,PGW:Ia,SW:Ia,TG:Ia,TW:Ia},za=a=>a.querySelectorAll("h3"),Ga=(a,e,i)=>{const r=ia.find((a=>a.code===i)),t={},n=(a=>a.querySelector("h1").textContent.replace(/\u00A0/g," "))(a);if(r){const a=((a,e,i)=>{const r=a.trim().replace(" "," ").replace("","").replace("","").replace(/\u200F/g,"").replace(/\u200B/g,""),t=$a[i]||$a.common;if(!r.match(t))throw new ra("mwb",`Parsing failed for Meeting Workbook Date. The input was: ${a}`);const n=Array.from(t.exec(r)),o=Ea[i]||Ea.common;let[s,u]=o(n);if(isNaN(+s)){const a=na(i).find((a=>a.name.toLocaleLowerCase().includes(s.toLowerCase()))).index;s=String(a+1)}return`${e}/${String(s).padStart(2,"0")}/${String(u).padStart(2,"0")}`})(n,e,i);t.mwb_week_date=a,t.mwb_week_date_locale=n}else t.mwb_week_date=n;t.mwb_weekly_bible_reading=(a=>a.querySelector("h2").textContent.replace(/\u00A0/g," "))(a);const o=(a=>{let e="";const i=a.querySelectorAll(".pGroup");for(const a of i){const i=a.querySelectorAll("li");for(const a of i)e+="@"+a.querySelector("p").textContent}if(0===e.length){const i=a.querySelectorAll("h3");let r=0;for(const a of i){let i=a.classList.contains("dc-icon--music");const t=!1===a.parentNode.classList.contains("boxContent");if(i||(i=!!a.querySelector(".dc-icon--music")),i&&r++,i||t){let t="";t=a.textContent,i&&(t=t.replace("|","@")),e+="@"+t;const n=a.nextElementSibling;if(n){const a=n.querySelector("p");if(a){if(i&&2===r&&"DIV"===n.tagName){e+="@"+a.textContent;const i=n.nextElementSibling?.querySelector("p");i&&(e+=" "+i.textContent);continue}e+=" "+a.textContent}}}}const t=e.split("@",5).join("@").length;e=e.substring(0,t)+"@junk@junk"+e.substring(t)}return e=e.replace(/\u00A0/g," "),e})(a);let s=o.split("@"),u="";if(t.mwb_song_first=sa(s[1]),u=s[3].trim(),r){const a=ua(u,i);t.mwb_tgw_talk=a.type,t.mwb_tgw_talk_title=a.fulltitle}else t.mwb_tgw_talk=u;if(u=s[4].trim(),r){const a=ua(u,i);t.mwb_tgw_gems_title=a.fulltitle}else t.mwb_tgw_gems_title=u;if(u=s[7].trim(),r){const a=ua(u,i);t.mwb_tgw_bread=a.src,t.mwb_tgw_bread_title=a.fulltitle}else t.mwb_tgw_bread=u;const c=(a=>{let e=1;const i=a.querySelector("#section3");return i&&(e=i.querySelectorAll("li").length),i||(e=a.querySelectorAll(".du-color--gold-700").length-1),e})(a);if(t.mwb_ayf_count=c,u=s[8].trim(),r){const a=ua(u,i);t.mwb_ayf_part1=a.src,t.mwb_ayf_part1_time=a.time,t.mwb_ayf_part1_type=a.type,t.mwb_ayf_part1_title=a.fulltitle}else t.mwb_ayf_part1=u;if(c>1)if(u=s[9].trim(),r){const a=ua(u,i);t.mwb_ayf_part2=a.src,t.mwb_ayf_part2_time=a.time,t.mwb_ayf_part2_type=a.type,t.mwb_ayf_part2_title=a.fulltitle}else t.mwb_ayf_part2=u;if(c>2)if(u=s[10].trim(),r){const a=ua(u,i);t.mwb_ayf_part3=a.src,t.mwb_ayf_part3_time=a.time,t.mwb_ayf_part3_type=a.type,t.mwb_ayf_part3_title=a.fulltitle}else t.mwb_ayf_part3=u;if(c>3)if(u=s[11].trim(),r){const a=ua(u,i);t.mwb_ayf_part4=a.src,t.mwb_ayf_part4_time=a.time,t.mwb_ayf_part4_type=a.type,t.mwb_ayf_part4_title=a.fulltitle}else t.mwb_ayf_part4=u;let l=c>3?12:c>2?11:c>1?10:9;t.mwb_song_middle=sa(s[l]);const m=(a=>{let e=1;const i=a.querySelector("#section4");return i&&(e=i.querySelectorAll("li").length,e=6===e?2:1),null===i&&(e=a.querySelectorAll(".du-color--maroon-600.du-margin-top--8.du-margin-bottom--0").length-1),e})(a);if(t.mwb_lc_count=m,l++,u=s[l].trim(),r){const a=ua(u,i);t.mwb_lc_part1=a.type,t.mwb_lc_part1_time=a.time,t.mwb_lc_part1_title=a.fulltitle,a.src&&""!==a.src&&(t.mwb_lc_part1_content=a.src)}else t.mwb_lc_part1=u;if(2===m)if(l++,u=s[l].trim(),r){const a=ua(u,i);t.mwb_lc_part2=a.type,t.mwb_lc_part2_time=a.time,t.mwb_lc_part2_title=a.fulltitle,a.src&&""!==a.src&&(t.mwb_lc_part2_content=a.src)}else t.mwb_lc_part2=u;if(l++,u=s[l].trim(),r){const a=ua(u,i);t.mwb_lc_cbs=a.src,t.mwb_lc_cbs_title=a.fulltitle}else t.mwb_lc_cbs=u;return l++,l++,u=s[l].trim(),t.mwb_song_conclude=sa(u),t},Ua=(a,e,i)=>{const r=ia.find((a=>a.code===i)),t={},n=(a=>{let e;const i=a.querySelector(".desc");return null===i&&(e=a.textContent.replace(/\u00A0/g," ")),null!==i&&(e=i.textContent.replace(/\u00A0/g," ")),e})(a);if(n.length>0)if(r){const a=((a,e)=>{let i=a=a.trim().replace(" "," ").replace("","").replace("","").replace(/\u200F/g,"").replace(/\u200B/g,"");const r=oa[e];if(r){const e=r[a];e&&(i=e)}const t=Da[e]||Da.common;if(!i.match(t))throw new ra("wtstudy",`Parsing failed for Watchtower Study Date. The input was: ${i}`);const n=Array.from(t.exec(i)),o=qa[e]||qa.common;let[s,u,c]=o(n);if(isNaN(+u)){const a=na(e).find((a=>a.name.toLocaleLowerCase().includes(u.toLowerCase()))).index;u=String(a+1)}return`${s}/${String(u).padStart(2,"0")}/${String(c).padStart(2,"0")}`})(n,i);t.w_study_date=a,t.w_study_date_locale=n}else t.w_study_date=n;const o=(a=>{let e;const i=a.querySelector("h2");null===i&&(e=a.nextElementSibling.querySelector("a").textContent.replace(/\u00A0/g," "));return null!==i&&(e=i.textContent.trim().replace(/\u00A0/g," ")),e})(a);t.w_study_title=o;const s=(a=>{const e=a.querySelectorAll(".pubRefs"),i=e.at(0),r=sa(i.textContent);let t=e.at(-1);2===e.length&&(t=a.querySelector(".blockTeach").nextElementSibling);return{w_study_opening_song:r,w_study_concluding_song:sa(t.textContent)}})(e);return t.w_study_opening_song=s.w_study_opening_song,t.w_study_concluding_song=s.w_study_concluding_song,t},Ha=async({htmlDocs:a,year:e,lang:i})=>{const r=[];for(const t of a){const a=Ga(t,e,i);r.push(a)}return r},Ka=async a=>{const e=new r;return await e.loadAsync(a)},Za=async(a,e)=>{let i;for(let[r]of Object.entries(a.files)){if(meeting_schedules_parser.path.basename(r)===e){const e=await X(a,r);i=aa(e);break}}return i},Ba=async(a,e)=>{let i=[];const r=U(a),t=H(a),n=await Ka(e),o=await(async(a,e,i)=>{const r=[];for(let[t]of Object.entries(a.files))if(Y(t)){const n=await X(a,t),o=aa(n);(e?Q(o):i&&ea(o))&&r.push(o)}return r})(n,r,t);if(0===o.length)throw new Error(`The file you provided is not a valid ${r?"Meeting Workbook":"Watchtower Study"} EPUB file. Please make sure that the file is correct.`);if(t&&o.length>1)throw new Error("The file you provided is not a valid Watchtower Study EPUB file. Please make sure that the file is correct.");const s=Z(a),u=B(a);return r&&(i=await Ha({htmlDocs:o,year:s,lang:u})),t&&(i=await(async({htmlItem:a,epubLang:e,epubContents:i})=>{const r=[],t=za(a);for(const[a,n]of t.entries()){const a=n.nextElementSibling.querySelector("a").getAttribute("href"),t=await Za(i,a),o=Ua(n,t,e);r.push(o)}return r})({htmlItem:o[0],epubLang:u,epubContents:n})),i},Ya=a=>{const e=a.replace(/[^a-fA-F0-9]/g,""),i=new Uint8Array(e.length/2);for(let a=0;a<i.length;a++)i[a]=parseInt(e.slice(2*a,2*a+2),16);return i},Xa=async a=>{const e=(new TextEncoder).encode(a);return(a=>{const e=new Uint8Array(a);return Array.from(e).map((a=>a.toString(16).padStart(2,"0"))).join("")})(await crypto.subtle.digest("SHA-256",e))},Qa=async(a,e)=>{const i=await Xa(a),r=((a,e)=>{if(a.length!==e.length)throw new Error("Buffers must be same length");return a.map(((a,i)=>a^e[i%e.length]))})(Ya(i),Ya(e));return t=r,[...t].map((a=>a.toString(16).padStart(2,"0"))).join("");var t},ae=async(a,e,i)=>{const r=await(async(a,e,i)=>{const r=await crypto.subtle.importKey("raw",Ya(e),{name:"AES-CBC"},!1,["decrypt"]);return await crypto.subtle.decrypt({name:"AES-CBC",iv:Ya(i)},r,a)})(a,e,i),t=new Uint8Array(r),o=n.inflate(t);return(new TextDecoder).decode(o)},ee=async(a,e,i)=>{const r=await(async a=>{const e=await meeting_schedules_parser.loadSQL(),i=await a.files.contents.async("uint8array"),r=await Ka(i),t=Object.keys(r.files).find((a=>a.endsWith(".db")));if(!t)throw new Error("Database file not found in the JWPUB file.");const n=await r.files[t].async("uint8array");return new e.Database(n)})(a),t=(a=>{const e=a.exec("SELECT MepsLanguageIndex, Symbol, Year, IssueTagNumber FROM Publication");if(0===e.length)throw new Error("The file selected is not a valid JWPUB file.");return e[0].values[0].join("_")})(r),{key:n,iv:o}=await(async a=>{const e=atob("MTFjYmI1NTg3ZTMyODQ2ZDRjMjY3OTBjNjMzZGEyODlmNjZmZTU4NDJhM2E1ODVjZTFiYzNhMjk0YWY1YWRhNw=="),i=await Qa(a,e);return{key:i.slice(0,32),iv:i.slice(32)}})(t);if(e){const a=await(async(a,e,i)=>{const r=[],t=a.exec("SELECT Content FROM Document WHERE Class='106'");for(const a of t.at(0).values){const t=a.at(0),n=await ae(t,e,i),o=aa(n);o.querySelectorAll("rt").forEach((a=>a.remove())),r.push(o)}return r})(r,n,o);return a}if(i){const a=await(async(a,e,i)=>{const r=[];let t=a.exec("SELECT Content FROM Document WHERE Class='68'");const n=t.at(0).values.at(0).at(0),o=await ae(n,e,i),s=aa(o);s.querySelectorAll("rt").forEach((a=>a.remove())),t=a.exec("SELECT MepsDocumentId, Content FROM Document WHERE Class='40'");for(const a of t.at(0).values){const t=+a.at(0),n=a.at(1),o=await ae(n,e,i),s=aa(o);s.querySelectorAll("rt").forEach((a=>a.remove())),r.push({id:t,article:s})}return{toc:s,articles:r}})(r,n,o);return a}},ie=async(a,e)=>e.find((e=>e.id===a)).article,re=async(a,e)=>{let i=[];const r=U(a),t=H(a),n=await Ka(e);if(2!==Object.keys(n.files).length)throw new Error(`The file you provided is not a valid ${r?"Meeting Workbook":"Watchtower Study"} JWPUB file. Please make sure that the file is correct.`);const o=Z(a),s=B(a),u=await ee(n,r,t);if(r&&(i=await Ha({htmlDocs:u,year:o,lang:s})),t){const a=u;i=await(async({htmlItem:a,htmlDocs:e,lang:i})=>{const r=[],t=za(a);for(const[a,n]of t.entries()){const a=n.nextElementSibling.querySelector("a").getAttribute("href"),t=+Array.from(/.+:(\w+)\/$/.exec(a))[1],o=await ie(+t,e),s=Ua(n,o,i);r.push(s)}return r})({htmlItem:a.toc,htmlDocs:a.articles,lang:s})}return i},te=async a=>{let e=[];if(!(a=>{const e=K(a),i=U(e),r=H(e);return i||r})(a))throw new Error("The selected file has an incorrect naming.");if(!(a=>{let e=!0;const i=K(a),r=U(i),t=H(i),n=r?"mwb":t?"w":void 0,o=+i.split("_")[2].split(".epub")[0];return"mwb"===n&&o<202207&&(e=!1),"w"===n&&o<202304&&(e=!1),e})(a))throw new Error("Parsing is only supported for Meeting Workbook starting on July 2022, and for Watchtower Study starting on April 2023.");const i=await(async a=>{let e;if(a instanceof Blob&&(e=a),"object"==typeof a&&"url"in a){const i=await fetch(a.url);if(200!==i.status)throw new Error("Publication could not be downloaded. Check the URL you provided.");const r=await i.blob();e=await r.arrayBuffer()}"string"==typeof a&&(e=await meeting_schedules_parser.readFile(a));return e})(a),t=await(async a=>{let e=0,i=0,t="archive_tmp";const n={isBig:!1,isMore:!1,isSuspicious:!1},o=new r,s=await o.loadAsync(a);for(let[a]of Object.entries(s.files))e++,e>300&&(n.isMore=!0),meeting_schedules_parser.path.join(t,a).startsWith(t)||(n.isSuspicious=!0),i+=(await o.file(a).async("arraybuffer")).byteLength,i>2e7&&(n.isBig=!0);return e=0,i=0,n})(i);if(t.isBig)throw new Error("Publication size seems to be large. Parsing aborted.");if(t.isMore)throw new Error("Publication seems to contain more files than expected. Parsing aborted.");if(t.isSuspicious)throw new Error("Publication seems to be suspicious. Parsing aborted.");const n=K(a),o=(s=n,meeting_schedules_parser.path.extname(s));var s;return".jwpub"===o&&(e=await re(n,i)),".epub"===o&&(e=await Ba(n,i)),e};exports.loadPub=async a=>{try{(a=>{if(!a)throw new Error("You did not pass anything to the loadPub function.")})(a);return await te(a)}catch(a){throw console.error(a),new Error(a?.message)}};