diff --git a/src/main/resources/messages_ar_AR.properties b/src/main/resources/messages_ar_AR.properties index a95d56920..badda3a10 100644 --- a/src/main/resources/messages_ar_AR.properties +++ b/src/main/resources/messages_ar_AR.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=قم بسحب الملفات وإفلاتها fileChooser.dragAndDropPDF=Drag & Drop PDF file fileChooser.dragAndDropImage=Drag & Drop Image file fileChooser.hoveredDragAndDrop=قم بسحب المفات وإفلاتها هنا +fileChooser.extractPDF=جاري الاستخراج... #release notes releases.footer=Releases diff --git a/src/main/resources/messages_az_AZ.properties b/src/main/resources/messages_az_AZ.properties index f3d692a5c..44b319f31 100644 --- a/src/main/resources/messages_az_AZ.properties +++ b/src/main/resources/messages_az_AZ.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Drag & Drop fileChooser.dragAndDropPDF=Drag & Drop PDF file fileChooser.dragAndDropImage=Drag & Drop Image file fileChooser.hoveredDragAndDrop=Drag & Drop file(s) here +fileChooser.extractPDF=Extracting... #release notes releases.footer=Buraxılışlar diff --git a/src/main/resources/messages_bg_BG.properties b/src/main/resources/messages_bg_BG.properties index 16f756a8b..e2b23fb88 100644 --- a/src/main/resources/messages_bg_BG.properties +++ b/src/main/resources/messages_bg_BG.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Влачете и пуснете fileChooser.dragAndDropPDF=Влачете и пуснете PDF файл fileChooser.dragAndDropImage=Влачете и пуснете изображение fileChooser.hoveredDragAndDrop=Влачете и пуснете файл(ове) тук +fileChooser.extractPDF=Извличане... #release notes releases.footer=Версии diff --git a/src/main/resources/messages_ca_CA.properties b/src/main/resources/messages_ca_CA.properties index 708126d05..13568f127 100644 --- a/src/main/resources/messages_ca_CA.properties +++ b/src/main/resources/messages_ca_CA.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Drag & Drop fileChooser.dragAndDropPDF=Drag & Drop PDF file fileChooser.dragAndDropImage=Drag & Drop Image file fileChooser.hoveredDragAndDrop=Drag & Drop file(s) here +fileChooser.extractPDF=Extracting... #release notes releases.footer=Releases diff --git a/src/main/resources/messages_cs_CZ.properties b/src/main/resources/messages_cs_CZ.properties index 27801cbf7..9edfda834 100644 --- a/src/main/resources/messages_cs_CZ.properties +++ b/src/main/resources/messages_cs_CZ.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Přetáhnout fileChooser.dragAndDropPDF=Přetáhnout PDF soubor fileChooser.dragAndDropImage=Přetáhnout obrázek fileChooser.hoveredDragAndDrop=Přetáhněte soubor(y) sem +fileChooser.extractPDF=Extrahování... #release notes releases.footer=Vydání diff --git a/src/main/resources/messages_da_DK.properties b/src/main/resources/messages_da_DK.properties index b3019041b..2e650159e 100644 --- a/src/main/resources/messages_da_DK.properties +++ b/src/main/resources/messages_da_DK.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Drag & Drop fileChooser.dragAndDropPDF=Drag & Drop PDF file fileChooser.dragAndDropImage=Drag & Drop Image file fileChooser.hoveredDragAndDrop=Drag & Drop file(s) here +fileChooser.extractPDF=Extracting... #release notes releases.footer=Releases diff --git a/src/main/resources/messages_de_DE.properties b/src/main/resources/messages_de_DE.properties index 113ec027e..13bdbafee 100644 --- a/src/main/resources/messages_de_DE.properties +++ b/src/main/resources/messages_de_DE.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Drag & Drop fileChooser.dragAndDropPDF=Drag & Drop PDF-Datei fileChooser.dragAndDropImage=Drag & Drop Bilddatei fileChooser.hoveredDragAndDrop=Datei(en) hierhin Ziehen & Fallenlassen +fileChooser.extractPDF=Extrahiere... #release notes releases.footer=Veröffentlichungen diff --git a/src/main/resources/messages_el_GR.properties b/src/main/resources/messages_el_GR.properties index 90d63a8f3..06171df61 100644 --- a/src/main/resources/messages_el_GR.properties +++ b/src/main/resources/messages_el_GR.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Σύρετε & αφήστε fileChooser.dragAndDropPDF=Σύρετε & αφήστε αρχείο PDF fileChooser.dragAndDropImage=Σύρετε & αφήστε αρχείο εικόνας fileChooser.hoveredDragAndDrop=Σύρετε & αφήστε αρχείο(α) εδώ +fileChooser.extractPDF=Εξαγωγή... #release notes releases.footer=Εκδόσεις diff --git a/src/main/resources/messages_en_GB.properties b/src/main/resources/messages_en_GB.properties index bd5345635..1bf886164 100644 --- a/src/main/resources/messages_en_GB.properties +++ b/src/main/resources/messages_en_GB.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Drag & Drop fileChooser.dragAndDropPDF=Drag & Drop PDF file fileChooser.dragAndDropImage=Drag & Drop Image file fileChooser.hoveredDragAndDrop=Drag & Drop file(s) here +fileChooser.extractPDF=Extracting... #release notes releases.footer=Releases diff --git a/src/main/resources/messages_en_US.properties b/src/main/resources/messages_en_US.properties index aaa9f9682..3c2922a1e 100644 --- a/src/main/resources/messages_en_US.properties +++ b/src/main/resources/messages_en_US.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Drag & Drop fileChooser.dragAndDropPDF=Drag & Drop PDF file fileChooser.dragAndDropImage=Drag & Drop Image file fileChooser.hoveredDragAndDrop=Drag & Drop file(s) here +fileChooser.extractPDF=Extracting... #release notes releases.footer=Releases diff --git a/src/main/resources/messages_es_ES.properties b/src/main/resources/messages_es_ES.properties index d16e417a8..b85f709e4 100644 --- a/src/main/resources/messages_es_ES.properties +++ b/src/main/resources/messages_es_ES.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Arrastrar & Soltar fileChooser.dragAndDropPDF=Arrastrar & Soltar archivo PDF fileChooser.dragAndDropImage=Arrastrar & Soltar archivo de Imagen fileChooser.hoveredDragAndDrop=Arrastrar & Soltar archivos(s) aquí +fileChooser.extractPDF=Extrayendo... #release notes releases.footer=Versiones diff --git a/src/main/resources/messages_eu_ES.properties b/src/main/resources/messages_eu_ES.properties index e7397d25d..dcb06a296 100644 --- a/src/main/resources/messages_eu_ES.properties +++ b/src/main/resources/messages_eu_ES.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Drag & Drop fileChooser.dragAndDropPDF=Drag & Drop PDF file fileChooser.dragAndDropImage=Drag & Drop Image file fileChooser.hoveredDragAndDrop=Drag & Drop file(s) here +fileChooser.extractPDF=Extracting... #release notes releases.footer=Releases diff --git a/src/main/resources/messages_fa_IR.properties b/src/main/resources/messages_fa_IR.properties index 13c7be2d4..bd211e0fd 100644 --- a/src/main/resources/messages_fa_IR.properties +++ b/src/main/resources/messages_fa_IR.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=بکشید و رها کنید fileChooser.dragAndDropPDF=Drag & Drop PDF file fileChooser.dragAndDropImage=Drag & Drop Image file fileChooser.hoveredDragAndDrop=فایل(های) خود را اینجا بکشید و رها کنید +fileChooser.extractPDF=در حال استخراج... #release notes releases.footer=نسخهها diff --git a/src/main/resources/messages_fr_FR.properties b/src/main/resources/messages_fr_FR.properties index d82065a11..387becf42 100644 --- a/src/main/resources/messages_fr_FR.properties +++ b/src/main/resources/messages_fr_FR.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Glisser & Déposer fileChooser.dragAndDropPDF=Drag & Drop PDF file fileChooser.dragAndDropImage=Drag & Drop Image file fileChooser.hoveredDragAndDrop=Glisser & Déposer le(s) fichier(s) ici +fileChooser.extractPDF=Extraction en cours... #release notes releases.footer=Versions diff --git a/src/main/resources/messages_ga_IE.properties b/src/main/resources/messages_ga_IE.properties index 154abd49b..2e20c0c88 100644 --- a/src/main/resources/messages_ga_IE.properties +++ b/src/main/resources/messages_ga_IE.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Tarraing & Scaoil fileChooser.dragAndDropPDF=Tarraing & Scaoil comhad PDF fileChooser.dragAndDropImage=Tarraing & Scaoil comhad Íomhá fileChooser.hoveredDragAndDrop=Tarraing agus scaoil comhad(í) anseo +fileChooser.extractPDF=Ag Aistriú... #release notes releases.footer=Eisiúintí diff --git a/src/main/resources/messages_hi_IN.properties b/src/main/resources/messages_hi_IN.properties index 0ddabb7ac..2da76f85e 100644 --- a/src/main/resources/messages_hi_IN.properties +++ b/src/main/resources/messages_hi_IN.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=खींचें और छोड़ें fileChooser.dragAndDropPDF=PDF फ़ाइल खींचें और छोड़ें fileChooser.dragAndDropImage=छवि फ़ाइल खींचें और छोड़ें fileChooser.hoveredDragAndDrop=फ़ाइल(ें) यहाँ खींचें और छोड़ें +fileChooser.extractPDF=निकालना... #release notes releases.footer=रिलीज़ diff --git a/src/main/resources/messages_hr_HR.properties b/src/main/resources/messages_hr_HR.properties index 3a2482600..db6e4b3b5 100644 --- a/src/main/resources/messages_hr_HR.properties +++ b/src/main/resources/messages_hr_HR.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Drag & Drop fileChooser.dragAndDropPDF=Drag & Drop PDF file fileChooser.dragAndDropImage=Drag & Drop Image file fileChooser.hoveredDragAndDrop=Drag & Drop file(s) here +fileChooser.extractPDF=Extracting... #release notes releases.footer=Releases diff --git a/src/main/resources/messages_hu_HU.properties b/src/main/resources/messages_hu_HU.properties index 3ef1d3e4e..309fe4603 100644 --- a/src/main/resources/messages_hu_HU.properties +++ b/src/main/resources/messages_hu_HU.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Húzza ide fileChooser.dragAndDropPDF=Húzza ide a PDF fájlt fileChooser.dragAndDropImage=Húzza ide a képfájlt fileChooser.hoveredDragAndDrop=Húzza ide a fájl(oka)t +fileChooser.extractPDF=Kinyerés... #release notes releases.footer=Kiadási jegyzék diff --git a/src/main/resources/messages_id_ID.properties b/src/main/resources/messages_id_ID.properties index 021c5ec2b..4543f766e 100644 --- a/src/main/resources/messages_id_ID.properties +++ b/src/main/resources/messages_id_ID.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Drag & Drop fileChooser.dragAndDropPDF=Drag & Drop PDF file fileChooser.dragAndDropImage=Drag & Drop Image file fileChooser.hoveredDragAndDrop=Drag & Drop file(s) here +fileChooser.extractPDF=Extracting... #release notes releases.footer=Releases diff --git a/src/main/resources/messages_it_IT.properties b/src/main/resources/messages_it_IT.properties index 2dab8f05b..c160011eb 100644 --- a/src/main/resources/messages_it_IT.properties +++ b/src/main/resources/messages_it_IT.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Trascina & Rilascia fileChooser.dragAndDropPDF=Trascina & rilascia il file PDF fileChooser.dragAndDropImage=Trascina & rilascia il file immagine fileChooser.hoveredDragAndDrop=Trascina & rilascia i file qui +fileChooser.extractPDF=Estraendo... #release notes releases.footer=Rilasci diff --git a/src/main/resources/messages_ja_JP.properties b/src/main/resources/messages_ja_JP.properties index e6810b2ca..cc7b8fc63 100644 --- a/src/main/resources/messages_ja_JP.properties +++ b/src/main/resources/messages_ja_JP.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=ドラッグ&ドロップ fileChooser.dragAndDropPDF=PDFファイルをドラッグ&ドロップ fileChooser.dragAndDropImage=画像ファイルをドラッグ&ドロップ fileChooser.hoveredDragAndDrop=ファイルをここにドラッグ&ドロップ +fileChooser.extractPDF=抽出中... #release notes releases.footer=リリース diff --git a/src/main/resources/messages_ko_KR.properties b/src/main/resources/messages_ko_KR.properties index 6049937fb..a0158acdf 100644 --- a/src/main/resources/messages_ko_KR.properties +++ b/src/main/resources/messages_ko_KR.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=드래그 앤 드롭 fileChooser.dragAndDropPDF=PDF 파일을 드래그 앤 드롭 fileChooser.dragAndDropImage=이미지 파일을 드래그 앤 드롭 fileChooser.hoveredDragAndDrop=여기에 파일을 드래그 앤 드롭하세요 +fileChooser.extractPDF=추출 중... #release notes releases.footer=릴리스 diff --git a/src/main/resources/messages_nl_NL.properties b/src/main/resources/messages_nl_NL.properties index 2bc49d17c..313be3149 100644 --- a/src/main/resources/messages_nl_NL.properties +++ b/src/main/resources/messages_nl_NL.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Drag & Drop fileChooser.dragAndDropPDF=Drag & Drop PDF file fileChooser.dragAndDropImage=Drag & Drop Image file fileChooser.hoveredDragAndDrop=Drag & Drop file(s) here +fileChooser.hoveredDragAndDrop=Extracting... #release notes releases.footer=Releases diff --git a/src/main/resources/messages_no_NB.properties b/src/main/resources/messages_no_NB.properties index 474013c61..b2f97dc63 100644 --- a/src/main/resources/messages_no_NB.properties +++ b/src/main/resources/messages_no_NB.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Drag & Drop fileChooser.dragAndDropPDF=Drag & Drop PDF file fileChooser.dragAndDropImage=Drag & Drop Image file fileChooser.hoveredDragAndDrop=Drag & Drop file(s) here +fileChooser.hoveredDragAndDrop=Extracting... #release notes releases.footer=Releases diff --git a/src/main/resources/messages_pl_PL.properties b/src/main/resources/messages_pl_PL.properties index 7f3936d5e..63be78198 100644 --- a/src/main/resources/messages_pl_PL.properties +++ b/src/main/resources/messages_pl_PL.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Drag & Drop fileChooser.dragAndDropPDF=Drag & Drop PDF file fileChooser.dragAndDropImage=Drag & Drop Image file fileChooser.hoveredDragAndDrop=Drag & Drop file(s) here +fileChooser.hoveredDragAndDrop=Extracting... #release notes releases.footer=Releases diff --git a/src/main/resources/messages_pt_BR.properties b/src/main/resources/messages_pt_BR.properties index 28a5b6f12..bd36faf3f 100644 --- a/src/main/resources/messages_pt_BR.properties +++ b/src/main/resources/messages_pt_BR.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Arraste & Solte fileChooser.dragAndDropPDF=Arraste & Solte PDF(s) fileChooser.dragAndDropImage=Arraste & Solte Imagem(ns) fileChooser.hoveredDragAndDrop=Arraste & Solte arquivo(s) aqui +fileChooser.extractPDF=Extraindo... #release notes releases.footer=Versões diff --git a/src/main/resources/messages_pt_PT.properties b/src/main/resources/messages_pt_PT.properties index 9e11618e4..4c19587fa 100644 --- a/src/main/resources/messages_pt_PT.properties +++ b/src/main/resources/messages_pt_PT.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Arrastar e Largar fileChooser.dragAndDropPDF=Arrastar e Largar ficheiro PDF fileChooser.dragAndDropImage=Arrastar e Largar ficheiro de Imagem fileChooser.hoveredDragAndDrop=Arrastar e Largar ficheiro(s) aqui +fileChooser.extractPDF=Extraindo... #release notes releases.footer=Lançamentos diff --git a/src/main/resources/messages_ro_RO.properties b/src/main/resources/messages_ro_RO.properties index 306dc1763..66934c838 100644 --- a/src/main/resources/messages_ro_RO.properties +++ b/src/main/resources/messages_ro_RO.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Drag & Drop fileChooser.dragAndDropPDF=Drag & Drop PDF file fileChooser.dragAndDropImage=Drag & Drop Image file fileChooser.hoveredDragAndDrop=Drag & Drop file(s) here +fileChooser.extractPDF=Extracting... #release notes releases.footer=Releases diff --git a/src/main/resources/messages_ru_RU.properties b/src/main/resources/messages_ru_RU.properties index 84c069b14..c2544f7df 100644 --- a/src/main/resources/messages_ru_RU.properties +++ b/src/main/resources/messages_ru_RU.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Перетащите fileChooser.dragAndDropPDF=Перетащите PDF-файл fileChooser.dragAndDropImage=Перетащите файл изображения fileChooser.hoveredDragAndDrop=Перетащите файл(ы) сюда +fileChooser.extractPDF=Извлечение... #release notes releases.footer=Релизы diff --git a/src/main/resources/messages_sk_SK.properties b/src/main/resources/messages_sk_SK.properties index 9d867096b..ef70c1a8f 100644 --- a/src/main/resources/messages_sk_SK.properties +++ b/src/main/resources/messages_sk_SK.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Drag & Drop fileChooser.dragAndDropPDF=Drag & Drop PDF file fileChooser.dragAndDropImage=Drag & Drop Image file fileChooser.hoveredDragAndDrop=Drag & Drop file(s) here +fileChooser.extractPDF=Extracting... #release notes releases.footer=Releases diff --git a/src/main/resources/messages_sl_SI.properties b/src/main/resources/messages_sl_SI.properties index 30ebe7c59..870494f9e 100644 --- a/src/main/resources/messages_sl_SI.properties +++ b/src/main/resources/messages_sl_SI.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Povleci in spusti fileChooser.dragAndDropPDF=Povleci in spusti datoteko PDF fileChooser.dragAndDropImage=Povleci in spusti slikovno datoteko fileChooser.hoveredDragAndDrop=Povleci in spusti datoteko(e) sem +fileChooser.extractPDF=Izvlečenje... #release notes releases.footer=Izdaje diff --git a/src/main/resources/messages_sr_LATN_RS.properties b/src/main/resources/messages_sr_LATN_RS.properties index 03fc41572..39804a691 100644 --- a/src/main/resources/messages_sr_LATN_RS.properties +++ b/src/main/resources/messages_sr_LATN_RS.properties @@ -1343,6 +1343,8 @@ fileChooser.dragAndDrop=Drag & Drop fileChooser.dragAndDropPDF=Drag & Drop PDF file fileChooser.dragAndDropImage=Drag & Drop Image file fileChooser.hoveredDragAndDrop=Drag & Drop file(s) here +fileChooser.extractPDF=Extracting... + #release notes releases.footer=Releases diff --git a/src/main/resources/messages_sv_SE.properties b/src/main/resources/messages_sv_SE.properties index e590aa02f..4d27f1439 100644 --- a/src/main/resources/messages_sv_SE.properties +++ b/src/main/resources/messages_sv_SE.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Dra & Släpp fileChooser.dragAndDropPDF=Dra & Släpp PDF fil fileChooser.dragAndDropImage=Dra & Släpp bildfil fileChooser.hoveredDragAndDrop=Dra & Släpp fil(er) här +fileChooser.extractPDF=Extraherar... #release notes releases.footer=Utgåvor diff --git a/src/main/resources/messages_th_TH.properties b/src/main/resources/messages_th_TH.properties index 5df9c2b2f..6394c2b28 100644 --- a/src/main/resources/messages_th_TH.properties +++ b/src/main/resources/messages_th_TH.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Drag & Drop fileChooser.dragAndDropPDF=Drag & Drop PDF file fileChooser.dragAndDropImage=Drag & Drop Image file fileChooser.hoveredDragAndDrop=Drag & Drop file(s) here +fileChooser.extractPDF=Extracting... #release notes releases.footer=Releases diff --git a/src/main/resources/messages_tr_TR.properties b/src/main/resources/messages_tr_TR.properties index e01b78cb3..013b527d2 100644 --- a/src/main/resources/messages_tr_TR.properties +++ b/src/main/resources/messages_tr_TR.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Drag & Drop fileChooser.dragAndDropPDF=Drag & Drop PDF file fileChooser.dragAndDropImage=Drag & Drop Image file fileChooser.hoveredDragAndDrop=Drag & Drop file(s) here +fileChooser.extractPDF=Extracting... #release notes releases.footer=Releases diff --git a/src/main/resources/messages_uk_UA.properties b/src/main/resources/messages_uk_UA.properties index 5abae509d..273f176e3 100644 --- a/src/main/resources/messages_uk_UA.properties +++ b/src/main/resources/messages_uk_UA.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Drag & Drop fileChooser.dragAndDropPDF=Drag & Drop PDF file fileChooser.dragAndDropImage=Drag & Drop Image file fileChooser.hoveredDragAndDrop=Drag & Drop file(s) here +fileChooser.extractPDF=Extracting... #release notes releases.footer=Releases diff --git a/src/main/resources/messages_vi_VN.properties b/src/main/resources/messages_vi_VN.properties index 66accd73a..4767a92d6 100644 --- a/src/main/resources/messages_vi_VN.properties +++ b/src/main/resources/messages_vi_VN.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=Drag & Drop fileChooser.dragAndDropPDF=Drag & Drop PDF file fileChooser.dragAndDropImage=Drag & Drop Image file fileChooser.hoveredDragAndDrop=Drag & Drop file(s) here +fileChooser.extractPDF=Extracting... #release notes releases.footer=Releases diff --git a/src/main/resources/messages_zh_BO.properties b/src/main/resources/messages_zh_BO.properties index 8fda36d39..df060b880 100644 --- a/src/main/resources/messages_zh_BO.properties +++ b/src/main/resources/messages_zh_BO.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=འཐེན་ནས་འཇོག་པ། fileChooser.dragAndDropPDF=PDF ཡིག་ཆ་འཐེན་ནས་འཇོག་པ། fileChooser.dragAndDropImage=པར་རིས་ཡིག་ཆ་འཐེན་ནས་འཇོག་པ། fileChooser.hoveredDragAndDrop=ཡིག་ཆ་འདིར་འཐེན་ནས་འཇོག་པ། +fileChooser.extractPDF=འབྱུང་བ། #release notes releases.footer=པར་གཞི། diff --git a/src/main/resources/messages_zh_CN.properties b/src/main/resources/messages_zh_CN.properties index 8bdeb4152..984e50f45 100644 --- a/src/main/resources/messages_zh_CN.properties +++ b/src/main/resources/messages_zh_CN.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=拖放文件 fileChooser.dragAndDropPDF=拖放PDF文件 fileChooser.dragAndDropImage=拖放图片文件 fileChooser.hoveredDragAndDrop=拖放文件到此处 +fileChooser.extractPDF=处理中... #release notes releases.footer=版本 diff --git a/src/main/resources/messages_zh_TW.properties b/src/main/resources/messages_zh_TW.properties index 68e8b8116..dfb7fa85c 100644 --- a/src/main/resources/messages_zh_TW.properties +++ b/src/main/resources/messages_zh_TW.properties @@ -1343,6 +1343,7 @@ fileChooser.dragAndDrop=拖放檔案 fileChooser.dragAndDropPDF=拖放 PDF 檔案 fileChooser.dragAndDropImage=拖放圖片檔案 fileChooser.hoveredDragAndDrop=將檔案拖放至此 +fileChooser.extractPDF=處理中... #release notes releases.footer=版本資訊 diff --git a/src/main/resources/static/js/fileInput.js b/src/main/resources/static/js/fileInput.js index b2316f4ff..d8fab96ce 100644 --- a/src/main/resources/static/js/fileInput.js +++ b/src/main/resources/static/js/fileInput.js @@ -1,7 +1,8 @@ import FileIconFactory from './file-icon-factory.js'; import FileUtils from './file-utils.js'; import UUID from './uuid.js'; -import {DecryptFile} from './DecryptFiles.js'; +import { DecryptFile } from './DecryptFiles.js'; + let isScriptExecuted = false; if (!isScriptExecuted) { isScriptExecuted = true; @@ -11,6 +12,24 @@ if (!isScriptExecuted) { } let hasDroppedImage = false; +const zipTypes = [ + 'application/zip', + 'multipart/x-zip', + 'application/zip-compressed', + 'application/x-zip-compressed', +]; + +const mimeTypes = { + "png": "image/png", + "jpg": "image/jpeg", + "jpeg": "image/jpeg", + "gif": "image/gif", + "bmp": "image/bmp", + "svg": "image/svg+xml", + "pdf": "application/pdf", + "zip": "application/zip", +}; + function setupFileInput(chooser) { const elementId = chooser.getAttribute('data-bs-element-id'); const filesSelected = chooser.getAttribute('data-bs-files-selected'); @@ -55,6 +74,7 @@ function setupFileInput(chooser) { overlay = false; } + const dropListener = function (e) { e.preventDefault(); // Drag and Drop shall only affect the target file chooser @@ -83,7 +103,7 @@ function setupFileInput(chooser) { dragCounter = 0; - fileInput.dispatchEvent(new CustomEvent('change', {bubbles: true, detail: {source: 'drag-drop'}})); + fileInput.dispatchEvent(new CustomEvent('change', { bubbles: true, detail: { source: 'drag-drop' } })); }; function pushFileListTo(fileList, container) { @@ -114,12 +134,34 @@ function setupFileInput(chooser) { } else { allFiles = Array.from(isDragAndDrop ? allFiles : [element.files[0]]); } + + // iterate through entries to check for zip files, if there is encryption needed it will passed to next function + async function checkZipFile() { + const originalText = inputContainer.querySelector('#fileInputText').innerHTML; + + inputContainer.querySelector('#fileInputText').innerHTML = window.fileInput.extractPDF; + + const promises = allFiles.map(async (file, index) => { + if (zipTypes.includes(file.type)) { + await extractZipFiles(file, element.accept); + allFiles.splice(index, 1); + } + }); + + await Promise.all(promises); + + inputContainer.querySelector('#fileInputText').innerHTML = originalText; + } + + await checkZipFile(); + allFiles = await Promise.all( allFiles.map(async (file) => { let decryptedFile = file; + try { const decryptFile = new DecryptFile(); - const {isEncrypted, requiresPassword} = await decryptFile.checkFileEncrypted(file); + const { isEncrypted, requiresPassword } = await decryptFile.checkFileEncrypted(file); if (file.type === 'application/pdf' && isEncrypted) { decryptedFile = await decryptFile.decryptFile(file, requiresPassword); if (!decryptedFile) throw new Error('File decryption failed.'); @@ -139,7 +181,7 @@ function setupFileInput(chooser) { } handleFileInputChange(this); - this.dispatchEvent(new CustomEvent('file-input-change', {bubbles: true, detail: {elementId, allFiles}})); + this.dispatchEvent(new CustomEvent('file-input-change', { bubbles: true, detail: { elementId, allFiles } })); }); function toDataTransfer(files) { @@ -147,17 +189,76 @@ function setupFileInput(chooser) { files.forEach((file) => dataTransfer.items.add(file)); return dataTransfer; } + + async function extractZipFiles(zipFile, acceptedFileType) { + const jszip = new JSZip(); + + return jszip.loadAsync(zipFile).then(function (zip) { + + const extractionPromises = []; + var promise; + + zip.forEach(function (relativePath, zipEntry) { + if (zipEntry.name.endsWith('.zip')) { + console.log("Found nested ZIP file: " + zipEntry.name); + + promise = zipEntry.async('blob').then(function (content) { + return extractZipFiles(content, acceptedFileType); + }); + + } else { + promise = zipEntry.async('blob').then(function (content) { + + // Assuming that folders has size of zero + if (content.size > 0) { + + const extension = zipEntry.name.split('.').pop().toLowerCase(); + const mimeType = mimeTypes[extension] + + // check for file extension + if (mimeType && (mimeType.startsWith(acceptedFileType.split('/')[0]) || acceptedFileType === mimeType)) { + var file = new File([content], zipEntry.name, { + type: mimeType, + }); + + file.uniqueId = UUID.uuidv4(); + allFiles.push(file); + } else { + console.log(`File ${zipEntry.name} skipped. MIME type (${mimeType}) does not match accepted type (${acceptedFileType})`); + } + } + }); + + } + extractionPromises.push(promise); + }); + + return Promise.all(extractionPromises); + + }).catch(function (err) { + console.error("Error loading the ZIP file:", err); + throw err; + }); + } + function handleFileInputChange(inputElement) { + const files = allFiles; + showOrHideSelectedFilesContainer(files); - const filesInfo = files.map((f) => ({ - name: f.name, - size: f.size, - uniqueId: f.uniqueId, - type: f.type, - url: URL.createObjectURL(f), - })); + const filesInfo = files.map((f) => { + + const url = URL.createObjectURL(f); + + return { + name: f.name, + size: f.size, + uniqueId: f.uniqueId, + type: f.type, + url: url, + }; + }); const selectedFilesContainer = $(inputContainer).siblings('.selected-files'); selectedFilesContainer.empty(); @@ -171,6 +272,8 @@ function setupFileInput(chooser) { let fileIconContainer = document.createElement('div'); const isDragAndDropEnabled = window.location.pathname.includes('add-image') || window.location.pathname.includes('sign'); + + // add image thumbnail to it if (info.type.startsWith('image/')) { let imgPreview = document.createElement('img'); imgPreview.src = info.url; @@ -283,7 +386,7 @@ function setupFileInput(chooser) { showOrHideSelectedFilesContainer(allFiles); - inputElement.dispatchEvent(new CustomEvent('file-input-change', {bubbles: true})); + inputElement.dispatchEvent(new CustomEvent('file-input-change', { bubbles: true })); } function removeFileById(fileId, inputElement) { diff --git a/src/main/resources/templates/auto-split-pdf.html b/src/main/resources/templates/auto-split-pdf.html index 25584918c..c4d18b6db 100644 --- a/src/main/resources/templates/auto-split-pdf.html +++ b/src/main/resources/templates/auto-split-pdf.html @@ -26,7 +26,7 @@