terry-staging #16
@@ -55,7 +55,7 @@ export async function downloadFile(
|
||||
if (typeof window !== "undefined" && isInAppBrowser()) {
|
||||
window.dispatchEvent(
|
||||
new CustomEvent<InAppDownloadGuideDetail>(IN_APP_DOWNLOAD_GUIDE_EVENT, {
|
||||
detail: { url, filename: safeFilename },
|
||||
detail: { url: toAbsoluteUrl(url), filename: safeFilename },
|
||||
}),
|
||||
);
|
||||
return;
|
||||
@@ -90,6 +90,16 @@ export async function downloadFile(
|
||||
triggerDownload(url, safeFilename);
|
||||
}
|
||||
|
||||
function toAbsoluteUrl(url: string): string {
|
||||
if (/^https?:\/\//i.test(url)) return url;
|
||||
if (typeof window === "undefined") return url;
|
||||
try {
|
||||
return new URL(url, window.location.origin).toString();
|
||||
} catch {
|
||||
return url;
|
||||
}
|
||||
}
|
||||
|
||||
function triggerDownload(url: string, filename: string) {
|
||||
const a = document.createElement("a");
|
||||
a.href = url;
|
||||
|
||||
@@ -266,14 +266,15 @@ export const enDict: Dict = {
|
||||
backToHome: "Back to Home",
|
||||
inAppDownloadTitle: "Please open in your system browser to download",
|
||||
inAppDownloadIntro:
|
||||
"Your current in-app browser cannot download files. Open the page in your system browser (Safari, Chrome, etc.) and tap download again.",
|
||||
"Your current in-app browser cannot download files. Copy the link below and open it in your system browser — the file will save directly.",
|
||||
inAppDownloadIntroNamed:
|
||||
"{browser} cannot download files directly. Open the page in your system browser (Safari, Chrome, etc.) and tap download again.",
|
||||
inAppDownloadStepCopy: "Tap “Copy link” below.",
|
||||
"{browser} cannot download files directly. Copy the link below and open it in your system browser — the file will save directly.",
|
||||
inAppDownloadStepCopy:
|
||||
'Tap "Copy link" below — that is the direct file download URL.',
|
||||
inAppDownloadStepOpen:
|
||||
"Open the menu (top-right), choose “Open in browser”, and paste the link if needed.",
|
||||
"Open your system browser (Safari, Chrome, etc.) and paste the link into the address bar.",
|
||||
inAppDownloadStepDownload:
|
||||
"Tap the download button on the page — the file will save to your downloads.",
|
||||
"The file will start downloading to your downloads folder automatically.",
|
||||
inAppDownloadCopied: "Link copied",
|
||||
inAppDownloadCopyFail: "Could not copy the link, please copy it manually",
|
||||
};
|
||||
|
||||
@@ -269,14 +269,14 @@ export const idDict: Dict = {
|
||||
backToHome: "Kembali ke Beranda",
|
||||
inAppDownloadTitle: "Silakan buka di peramban sistem untuk mengunduh",
|
||||
inAppDownloadIntro:
|
||||
"Peramban dalam aplikasi saat ini tidak dapat mengunduh berkas. Buka halaman ini di peramban sistem (Safari, Chrome, dll.) lalu ketuk unduh lagi.",
|
||||
"Peramban dalam aplikasi saat ini tidak dapat mengunduh berkas. Salin tautan di bawah dan buka di peramban sistem — berkas akan langsung tersimpan.",
|
||||
inAppDownloadIntroNamed:
|
||||
"{browser} tidak dapat mengunduh berkas secara langsung. Buka halaman ini di peramban sistem (Safari, Chrome, dll.) lalu ketuk unduh lagi.",
|
||||
inAppDownloadStepCopy: "Ketuk “Salin tautan” di bawah.",
|
||||
"{browser} tidak dapat mengunduh berkas secara langsung. Salin tautan di bawah dan buka di peramban sistem — berkas akan langsung tersimpan.",
|
||||
inAppDownloadStepCopy:
|
||||
'Ketuk "Salin tautan" di bawah (ini adalah URL unduhan langsung berkas).',
|
||||
inAppDownloadStepOpen:
|
||||
"Buka menu di kanan atas, pilih “Buka di peramban”, tempelkan tautan jika diperlukan.",
|
||||
inAppDownloadStepDownload:
|
||||
"Di peramban sistem, ketuk lagi tombol unduh dan berkas akan tersimpan.",
|
||||
"Buka peramban sistem (Safari, Chrome, dll.) dan tempel tautan ke bilah alamat.",
|
||||
inAppDownloadStepDownload: "Berkas akan otomatis terunduh ke folder Unduhan.",
|
||||
inAppDownloadCopied: "Tautan disalin",
|
||||
inAppDownloadCopyFail: "Tidak dapat menyalin, silakan salin secara manual",
|
||||
};
|
||||
|
||||
@@ -270,14 +270,14 @@ export const jaDict: Dict = {
|
||||
backToHome: "ホームへ戻る",
|
||||
inAppDownloadTitle: "システムブラウザで開いてダウンロードしてください",
|
||||
inAppDownloadIntro:
|
||||
"現在のアプリ内ブラウザはファイルをダウンロードできません。Safari や Chrome などのシステムブラウザでページを開いてから、もう一度ダウンロードしてください。",
|
||||
"現在のアプリ内ブラウザではファイルをダウンロードできません。下のリンクをコピーし、システムブラウザで開けば自動的にダウンロードされます。",
|
||||
inAppDownloadIntroNamed:
|
||||
"{browser} のアプリ内ブラウザはファイルを直接ダウンロードできません。Safari や Chrome などのシステムブラウザでページを開いてから、もう一度ダウンロードしてください。",
|
||||
inAppDownloadStepCopy: "下の「リンクをコピー」をタップします。",
|
||||
"{browser} のアプリ内ブラウザではファイルをダウンロードできません。下のリンクをコピーし、システムブラウザで開けば自動的にダウンロードされます。",
|
||||
inAppDownloadStepCopy:
|
||||
"下の「リンクをコピー」をタップします(ファイルの直接ダウンロード URL です)。",
|
||||
inAppDownloadStepOpen:
|
||||
"右上のメニューから「ブラウザで開く」を選び、必要に応じてリンクを貼り付けます。",
|
||||
inAppDownloadStepDownload:
|
||||
"システムブラウザで再度ダウンロードボタンをタップすると、ファイルがダウンロード先に保存されます。",
|
||||
"システムブラウザ(Safari、Chrome など)を開き、アドレスバーにリンクを貼り付けます。",
|
||||
inAppDownloadStepDownload: "ファイルは自動的にダウンロード先に保存されます。",
|
||||
inAppDownloadCopied: "リンクをコピーしました",
|
||||
inAppDownloadCopyFail: "コピーに失敗しました。手動でコピーしてください",
|
||||
};
|
||||
|
||||
@@ -265,14 +265,14 @@ export const koDict: Dict = {
|
||||
backToHome: "홈으로",
|
||||
inAppDownloadTitle: "시스템 브라우저에서 열어 다운로드하세요",
|
||||
inAppDownloadIntro:
|
||||
"현재 앱 내 브라우저는 파일을 다운로드할 수 없습니다. Safari나 Chrome 등 시스템 브라우저에서 페이지를 연 다음 다시 다운로드해 주세요.",
|
||||
"현재 앱 내 브라우저로는 파일을 다운로드할 수 없습니다. 아래 링크를 복사해서 시스템 브라우저에서 열면 바로 저장됩니다.",
|
||||
inAppDownloadIntroNamed:
|
||||
"{browser} 앱 내 브라우저는 파일을 직접 다운로드할 수 없습니다. Safari나 Chrome 등 시스템 브라우저에서 페이지를 연 다음 다시 다운로드해 주세요.",
|
||||
inAppDownloadStepCopy: "아래의 “링크 복사”를 누릅니다.",
|
||||
"{browser} 앱 내 브라우저로는 파일을 다운로드할 수 없습니다. 아래 링크를 복사해서 시스템 브라우저에서 열면 바로 저장됩니다.",
|
||||
inAppDownloadStepCopy:
|
||||
'아래의 "링크 복사"를 누릅니다(파일 직접 다운로드 주소입니다).',
|
||||
inAppDownloadStepOpen:
|
||||
"오른쪽 위 메뉴에서 “브라우저로 열기”를 선택하고 필요하면 링크를 붙여 넣습니다.",
|
||||
inAppDownloadStepDownload:
|
||||
"시스템 브라우저에서 다운로드 버튼을 다시 누르면 파일이 저장됩니다.",
|
||||
"시스템 브라우저(Safari, Chrome 등)를 열고 주소창에 링크를 붙여 넣습니다.",
|
||||
inAppDownloadStepDownload: "파일이 자동으로 다운로드 폴더에 저장됩니다.",
|
||||
inAppDownloadCopied: "링크를 복사했습니다",
|
||||
inAppDownloadCopyFail: "복사하지 못했습니다. 직접 복사해 주세요",
|
||||
};
|
||||
|
||||
@@ -268,14 +268,15 @@ export const msDict: Dict = {
|
||||
backToHome: "Kembali ke Laman Utama",
|
||||
inAppDownloadTitle: "Sila buka dalam pelayar sistem untuk muat turun",
|
||||
inAppDownloadIntro:
|
||||
"Pelayar dalam aplikasi semasa tidak dapat memuat turun fail. Buka halaman ini dalam pelayar sistem (Safari, Chrome, dsb.), kemudian ketik muat turun semula.",
|
||||
"Pelayar dalam aplikasi semasa tidak dapat memuat turun fail. Salin pautan di bawah dan buka dalam pelayar sistem — fail akan disimpan terus.",
|
||||
inAppDownloadIntroNamed:
|
||||
"{browser} tidak dapat memuat turun fail secara langsung. Buka halaman ini dalam pelayar sistem (Safari, Chrome, dsb.), kemudian ketik muat turun semula.",
|
||||
inAppDownloadStepCopy: "Ketik “Salin pautan” di bawah.",
|
||||
"{browser} tidak dapat memuat turun fail secara langsung. Salin pautan di bawah dan buka dalam pelayar sistem — fail akan disimpan terus.",
|
||||
inAppDownloadStepCopy:
|
||||
'Ketik "Salin pautan" di bawah (ini adalah URL muat turun fail terus).',
|
||||
inAppDownloadStepOpen:
|
||||
"Buka menu di atas kanan, pilih “Buka dalam pelayar”, tampal pautan jika perlu.",
|
||||
"Buka pelayar sistem (Safari, Chrome, dsb.) dan tampal pautan ke bar alamat.",
|
||||
inAppDownloadStepDownload:
|
||||
"Dalam pelayar sistem, ketik butang muat turun semula dan fail akan disimpan.",
|
||||
"Fail akan dimuat turun secara automatik ke folder Muat Turun.",
|
||||
inAppDownloadCopied: "Pautan disalin",
|
||||
inAppDownloadCopyFail: "Tidak dapat menyalin, sila salin secara manual",
|
||||
};
|
||||
|
||||
@@ -264,14 +264,14 @@ export const viDict: Dict = {
|
||||
backToHome: "Về trang chủ",
|
||||
inAppDownloadTitle: "Vui lòng mở bằng trình duyệt hệ thống để tải",
|
||||
inAppDownloadIntro:
|
||||
"Trình duyệt trong ứng dụng hiện tại không thể tải tệp. Hãy mở trang trong trình duyệt hệ thống (Safari, Chrome…) rồi nhấn tải lại.",
|
||||
"Trình duyệt trong ứng dụng hiện tại không thể tải tệp. Sao chép liên kết bên dưới và mở trong trình duyệt hệ thống — tệp sẽ tự động tải về.",
|
||||
inAppDownloadIntroNamed:
|
||||
"{browser} không thể tải tệp trực tiếp. Hãy mở trang trong trình duyệt hệ thống (Safari, Chrome…) rồi nhấn tải lại.",
|
||||
inAppDownloadStepCopy: "Nhấn “Sao chép liên kết” bên dưới.",
|
||||
"{browser} không thể tải tệp trực tiếp. Sao chép liên kết bên dưới và mở trong trình duyệt hệ thống — tệp sẽ tự động tải về.",
|
||||
inAppDownloadStepCopy:
|
||||
'Nhấn "Sao chép liên kết" bên dưới (đây là URL tải tệp trực tiếp).',
|
||||
inAppDownloadStepOpen:
|
||||
"Mở menu ở góc trên bên phải, chọn “Mở bằng trình duyệt”, dán liên kết nếu cần.",
|
||||
inAppDownloadStepDownload:
|
||||
"Trong trình duyệt hệ thống, nhấn lại nút tải để lưu tệp.",
|
||||
"Mở trình duyệt hệ thống (Safari, Chrome…) và dán liên kết vào thanh địa chỉ.",
|
||||
inAppDownloadStepDownload: "Tệp sẽ tự động tải xuống thư mục Tải về.",
|
||||
inAppDownloadCopied: "Đã sao chép liên kết",
|
||||
inAppDownloadCopyFail: "Không sao chép được, vui lòng tự sao chép",
|
||||
};
|
||||
|
||||
@@ -247,14 +247,13 @@ export const zhDict: Dict = {
|
||||
backToHome: "返回首页",
|
||||
inAppDownloadTitle: "请使用系统浏览器打开后下载",
|
||||
inAppDownloadIntro:
|
||||
"当前内置浏览器无法直接下载文件,请在系统浏览器(Safari、Chrome 等)中打开页面后再点击下载。",
|
||||
"当前内置浏览器无法下载文件。复制下方链接,到系统浏览器打开即可直接下载。",
|
||||
inAppDownloadIntroNamed:
|
||||
"{browser} 内置浏览器无法直接下载文件,请在系统浏览器(Safari、Chrome 等)中打开页面后再点击下载。",
|
||||
inAppDownloadStepCopy: "点击下方「复制链接」。",
|
||||
"{browser} 内置浏览器无法下载文件。复制下方链接,到系统浏览器打开即可直接下载。",
|
||||
inAppDownloadStepCopy: "点击下方「复制链接」(这是文件的直接下载地址)。",
|
||||
inAppDownloadStepOpen:
|
||||
"点右上角菜单,选择「在浏览器中打开」,如需要请把刚才复制的链接粘贴进地址栏。",
|
||||
inAppDownloadStepDownload:
|
||||
"在系统浏览器中再次点击下载按钮,文件会保存到下载文件夹。",
|
||||
"打开系统浏览器(Safari、Chrome 等),把链接粘贴到地址栏。",
|
||||
inAppDownloadStepDownload: "文件会自动开始下载到下载文件夹。",
|
||||
inAppDownloadCopied: "链接已复制",
|
||||
inAppDownloadCopyFail: "复制失败,请手动复制",
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user