summaryrefslogtreecommitdiffstats
path: root/l10n-th/dom
diff options
context:
space:
mode:
Diffstat (limited to 'l10n-th/dom')
-rw-r--r--l10n-th/dom/chrome/accessibility/AccessFu.properties112
-rw-r--r--l10n-th/dom/chrome/accessibility/mac/accessible.properties69
-rw-r--r--l10n-th/dom/chrome/accessibility/unix/accessible.properties21
-rw-r--r--l10n-th/dom/chrome/accessibility/win/accessible.properties21
-rw-r--r--l10n-th/dom/chrome/appstrings.properties37
-rw-r--r--l10n-th/dom/chrome/dom/dom.properties478
-rw-r--r--l10n-th/dom/chrome/global-strres.properties5
-rw-r--r--l10n-th/dom/chrome/global.dtd5
-rw-r--r--l10n-th/dom/chrome/layout/HtmlForm.properties43
-rw-r--r--l10n-th/dom/chrome/layout/MediaDocument.properties22
-rw-r--r--l10n-th/dom/chrome/layout/css.properties46
-rw-r--r--l10n-th/dom/chrome/layout/htmlparser.properties144
-rw-r--r--l10n-th/dom/chrome/layout/layout_errors.properties55
-rw-r--r--l10n-th/dom/chrome/layout/printing.properties56
-rw-r--r--l10n-th/dom/chrome/layout/xmlparser.properties48
-rw-r--r--l10n-th/dom/chrome/layout/xul.properties5
-rw-r--r--l10n-th/dom/chrome/mathml/mathml.properties15
-rw-r--r--l10n-th/dom/chrome/netError.dtd93
-rw-r--r--l10n-th/dom/chrome/netErrorApp.dtd23
-rw-r--r--l10n-th/dom/chrome/nsWebBrowserPersist.properties17
-rw-r--r--l10n-th/dom/chrome/security/caps.properties9
-rw-r--r--l10n-th/dom/chrome/security/csp.properties123
-rw-r--r--l10n-th/dom/chrome/security/security.properties169
-rw-r--r--l10n-th/dom/chrome/svg/svg.properties5
-rw-r--r--l10n-th/dom/chrome/xml/prettyprint.dtd5
-rw-r--r--l10n-th/dom/chrome/xslt/xslt.properties39
-rw-r--r--l10n-th/dom/dom/XMLPrettyPrint.ftl5
-rw-r--r--l10n-th/dom/dom/media.ftl6
28 files changed, 1676 insertions, 0 deletions
diff --git a/l10n-th/dom/chrome/accessibility/AccessFu.properties b/l10n-th/dom/chrome/accessibility/AccessFu.properties
new file mode 100644
index 0000000000..105829e610
--- /dev/null
+++ b/l10n-th/dom/chrome/accessibility/AccessFu.properties
@@ -0,0 +1,112 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this file,
+# You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Roles
+menubar = แถบเมนู
+scrollbar = แถบเลื่อน
+grip = ที่จับ
+alert = การแจ้งเตือน
+menupopup = เมนูป๊อปอัป
+document = เอกสาร
+pane = บานหน้าต่าง
+dialog = กล่องโต้ตอบ
+separator = ตัวแบ่ง
+toolbar = แถบเครื่องมือ
+statusbar = แถบสถานะ
+table = ตาราง
+columnheader = ส่วนหัวคอลัมน์
+rowheader = ส่วนหัวแถว
+column = คอลัมน์
+row = แถว
+cell = เซลล์
+link = ลิงก์
+list = รายการ
+listitem = รายการในรายการ
+outline = เค้าร่าง
+outlineitem = รายการเค้าร่าง
+pagetab = แท็บ
+propertypage = หน้าคุณสมบัติ
+graphic = กราฟิก
+switch = สลับ
+pushbutton = ปุ่ม
+checkbutton = ปุ่มกาเครื่องหมาย
+radiobutton = ปุ่มตัวเลือก
+combobox = กล่องคำสั่งผสม
+progressbar = แถบความคืบหน้า
+slider = แถบเลื่อน
+spinbutton = ปุ่มปรับค่า
+diagram = แผนภาพ
+animation = ภาพเคลื่อนไหว
+equation = สมการ
+buttonmenu = เมนูปุ่ม
+whitespace = ช่องว่าง
+pagetablist = รายการแท็บ
+canvas = ผืนผ้าใบ
+checkmenuitem = รายการเมนูกาเครื่องหมาย
+passwordtext = ข้อความรหัสผ่าน
+radiomenuitem = รายการเมนูตัวเลือก
+textcontainer = ตัวบรรจุข้อความ
+togglebutton = ปุ่มสลับค่า
+treetable = ตารางแบบต้นไม้
+header = ส่วนหัว
+footer = ส่วนท้าย
+paragraph = ย่อหน้า
+entry = รายการ
+caption = คำบรรยาย
+heading = หัวเรื่อง
+section = ส่วน
+form = แบบฟอร์ม
+comboboxlist = รายการกล่องคำสั่งผสม
+comboboxoption = ตัวเลือกกล่องคำสั่งผสม
+imagemap = แผนที่ภาพ
+listboxoption = ตัวเลือก
+listbox = กล่องรายการ
+flatequation = flat equation
+gridcell = เซลล์ตาราง
+note = หมายเหตุ
+figure = รูป
+definitionlist = รายการคำจำกัดความ
+term = คำ
+definition = คำจำกัดความ
+
+mathmltable = ตารางคณิตศาสตร์
+mathmlcell = เซลล์
+mathmlenclosed = ล้อมรอบ
+mathmlfraction = เศษส่วน
+mathmlfractionwithoutbar = เศษส่วนแบบไม่มีเส้นแนวนอน
+mathmlroot = ราก
+mathmlscripted = ตัวห้อย
+mathmlsquareroot = รากที่สอง
+
+# More sophisticated roles which are not actual numeric roles
+textarea = พื้นที่ข้อความ
+
+base = ฐาน
+close-fence = วงเล็บปิด
+denominator = ตัวหาร
+numerator = ตัวเศษ
+open-fence = วงเล็บเปิด
+overscript = ตัวยก
+presubscript = ตัวห้อยด้านหน้า
+presuperscript = ตัวยกด้านหน้า
+root-index = ดัชนีราก
+subscript = ตัวห้อย
+superscript = ตัวยก
+underscript = ตัวห้อยด้านล่าง
+
+# More sophisticated object descriptions
+headingLevel = ระดับหัวเรื่อง %S
+
+# Landmark announcements
+banner = ป้าย
+complementary = เพิ่มเติม
+contentinfo = ข้อมูลเนื้อหา
+main = หลัก
+navigation = การนำทาง
+search = ค้นหา
+
+region = ภูมิภาค
+
+stateRequired = จำเป็น
+
diff --git a/l10n-th/dom/chrome/accessibility/mac/accessible.properties b/l10n-th/dom/chrome/accessibility/mac/accessible.properties
new file mode 100644
index 0000000000..6954797e80
--- /dev/null
+++ b/l10n-th/dom/chrome/accessibility/mac/accessible.properties
@@ -0,0 +1,69 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+jump = กระโดด
+press = กด
+check = กาเครื่องหมาย
+uncheck = ยกเลิกการกาเครื่องหมาย
+select = เลือก
+open = เปิด
+close = ปิด
+switch = สลับ
+click = คลิก
+collapse= ยุบ
+expand = ขยาย
+activate= เปิดใช้งาน
+cycle = รอบ
+# An action provided to accessibility clients such as screen readers to allow
+# them to click an element when the click will be handled by a container
+# (ancestor) element. This is not normally reported to users.
+click ancestor = คลิกต้นกำเนิด
+
+# Universal Access API support
+# (Mac Only)
+# The Role Description for AXWebArea (the web widget). Like in Safari.
+htmlContent = เนื้อหา HTML
+# The Role Description for the Tab button.
+tab = แท็บ
+# The Role Description for definition list dl, dt and dd
+term = คำ
+definition = คำนิยาม
+# The Role Description for an input type="search" text field
+searchTextField = ช่องข้อความการค้นหา
+# The Role Description for WAI-ARIA Landmarks
+application = แอปพลิเคชัน
+search = ค้นหา
+banner = ป้าย
+navigation = การนำทาง
+complementary = เพิ่มเติม
+content = เนื้อหา
+main = ส่วนหลัก
+# The (spoken) role description for various WAI-ARIA roles
+alert = การแจ้งเตือน
+alertDialog = กล่องโต้ตอบการแจ้งเตือน
+dialog = กล่องโต้ตอบ
+article = บทความ
+document = เอกสาร
+# The (spoken) role description for the WAI-ARIA figure role
+# https://w3c.github.io/aria/core-aam/core-aam.html#role-map-figure
+figure = รูป
+# The (spoken) role description for the WAI-ARIA heading role
+# https://w3c.github.io/aria/core-aam/core-aam.html#role-map-heading
+heading = หัวเรื่อง
+log = รายการบันทึก
+marquee = ตัวอักษรวิ่ง
+math = คณิตศาสตร์
+note = หมายเหตุ
+region = ขอบเขต
+status = สถานะแอปพลิเคชัน
+timer = ตัวจับเวลา
+tooltip = เคล็ดลับเครื่องมือ
+separator = ตัวแบ่ง
+tabPanel = แผงแท็บ
+# The roleDescription for the html:mark element
+highlight = การเน้น
+# The roleDescription for the details element
+details = รายละเอียด
+# The roleDescription for the summary element
+summary = สรุป
diff --git a/l10n-th/dom/chrome/accessibility/unix/accessible.properties b/l10n-th/dom/chrome/accessibility/unix/accessible.properties
new file mode 100644
index 0000000000..daa3de7c3d
--- /dev/null
+++ b/l10n-th/dom/chrome/accessibility/unix/accessible.properties
@@ -0,0 +1,21 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+jump = กระโดด
+press = กด
+check = กาเครื่องหมาย
+uncheck = ยกเลิกการกาเครื่องหมาย
+select = เลือก
+open = เปิด
+close = ปิด
+switch = สลับ
+click = คลิก
+collapse= ยุบ
+expand = ขยาย
+activate= เปิดใช้งาน
+cycle = รอบ
+# An action provided to accessibility clients such as screen readers to allow
+# them to click an element when the click will be handled by a container
+# (ancestor) element. This is not normally reported to users.
+click ancestor = คลิกต้นกำเนิด
diff --git a/l10n-th/dom/chrome/accessibility/win/accessible.properties b/l10n-th/dom/chrome/accessibility/win/accessible.properties
new file mode 100644
index 0000000000..daa3de7c3d
--- /dev/null
+++ b/l10n-th/dom/chrome/accessibility/win/accessible.properties
@@ -0,0 +1,21 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+jump = กระโดด
+press = กด
+check = กาเครื่องหมาย
+uncheck = ยกเลิกการกาเครื่องหมาย
+select = เลือก
+open = เปิด
+close = ปิด
+switch = สลับ
+click = คลิก
+collapse= ยุบ
+expand = ขยาย
+activate= เปิดใช้งาน
+cycle = รอบ
+# An action provided to accessibility clients such as screen readers to allow
+# them to click an element when the click will be handled by a container
+# (ancestor) element. This is not normally reported to users.
+click ancestor = คลิกต้นกำเนิด
diff --git a/l10n-th/dom/chrome/appstrings.properties b/l10n-th/dom/chrome/appstrings.properties
new file mode 100644
index 0000000000..cfe97eca20
--- /dev/null
+++ b/l10n-th/dom/chrome/appstrings.properties
@@ -0,0 +1,37 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+malformedURI2=โปรดตรวจสอบว่า URL ถูกต้องและลองอีกครั้ง
+fileNotFound=ไม่พบไฟล์ %S โปรดตรวจสอบตำแหน่งที่ตั้งและลองอีกครั้ง
+fileAccessDenied=ไฟล์ที่ %S ไม่สามารถอ่านได้
+dnsNotFound2=ไม่พบ %S โปรดตรวจสอบชื่อและลองอีกครั้ง
+unknownProtocolFound=หนึ่งในดังต่อไปนี้ (%S) ไม่ใช่โปรโตคอลที่ลงทะเบียนไว้หรือไม่อนุญาตในบริบทนี้
+connectionFailure=การเชื่อมต่อถูกปฏิเสธขณะพยายามติดต่อไปยัง %S
+netInterrupt=การเชื่อมต่อไปยัง %S ถูกยกเลิกอย่างไม่คาดคิด ข้อมูลบางส่วนอาจถูกโอนไปแล้ว
+netTimeout=หมดเวลารอขณะพยายามติดต่อไปยัง %S
+redirectLoop=จำนวนครั้งการเปลี่ยนเส้นทางสำหรับ URL นี้ได้เกินกำหนดแล้ว ไม่สามารถโหลดหน้าที่ต้องการได้ ปัญหานี้อาจเกิดจากคุกกี้ถูกปิดกั้น
+confirmRepostPrompt=เพื่อการแสดงผลหน้านี้ โปรแกรมจำเป็นต้องส่งข้อมูลซึ่งจะทำให้การกระทำใด ๆ ก่อนหน้านี้ถูกทำซ้ำอีกครั้ง (เช่นการค้นหาหรือการยืนยันการสั่งซื้อสินค้า)
+resendButton.label=ส่งใหม่
+unknownSocketType=ไม่สามารถแสดงเอกสารนี้ได้จนกว่าคุณจะทำการติดตั้งตัวจัดการความปลอดภัยส่วนบุคคล (Personal Security Manager) ดาวน์โหลดและติดตั้งตัวจัดการความปลอดภัยส่วนบุคคลและลองใหม่อีกครั้งหรือติดต่อผู้ดูแลระบบ
+netReset=เอกสารนี้ไม่มีข้อมูล
+notCached=ไม่มีเอกสารนี้อีกต่อไป
+netOffline=ไม่สามารถแสดงผลเอกสารนี้ขณะออฟไลน์ได้ เพื่อออนไลน์ให้ยกเลิกการกาเครื่องหมาย ทำงานออฟไลน์ จากเมนู ไฟล์
+isprinting=ไม่สามารถเปลี่ยนแปลงเอกสารขณะกำลังพิมพ์หรืออยู่ในตัวอย่างก่อนพิมพ์
+deniedPortAccess=การเข้าถึงพอร์ตที่ระบุถูกระงับด้วยเหตุผลทางความปลอดภัย
+proxyResolveFailure=ไม่พบเซิร์ฟเวอร์พร็อกซีที่ตั้งค่าไว้ โปรดตรวจสอบการตั้งค่าพร็อกซีของคุณและลองใหม่อีกครั้ง
+proxyConnectFailure=การเชื่อมต่อไปยังเซิร์ฟเวอร์พร็อกซีที่ตั้งค่าไว้ถูกยกเลิก โปรดตรวจสอบการตั้งค่าพร็อกซีของคุณและลองใหม่อีกครั้ง
+contentEncodingError=ไม่สามารถแสดงหน้าที่คุณกำลังพยายามจะดูเนื่องจากหน้าใช้รูปแบบการบีบอัดที่ไม่ถูกต้องหรือไม่รองรับ
+unsafeContentType=ไม่สามารถแสดงหน้าที่คุณกำลังพยายามจะดูเนื่องจากหน้ามีชนิดไฟล์ที่อาจไม่ปลอดภัยที่จะเปิด โปรดติดต่อเจ้าของเว็บไซต์เพื่อแจ้งพวกเขาให้ทราบถึงปัญหานี้
+malwareBlocked=ไซต์ที่ %S ถูกรายงานว่าเป็นไซต์รุกรานและถูกปิดกั้นตามการกำหนดลักษณะความปลอดภัยของคุณ
+harmfulBlocked=ไซต์ที่ %S ถูกรายงานว่าเป็นไซต์ที่อาจเป็นอันตรายและถูกปิดกั้นตามการกำหนดลักษณะความปลอดภัยของคุณ
+unwantedBlocked=ไซต์ที่ %S ถูกรายงานว่าแจกจ่ายซอฟต์แวร์ไม่พึงประสงค์และถูกปิดกั้นตามการกำหนดลักษณะความปลอดภัยของคุณ
+deceptiveBlocked=หน้าเว็บนี้ที่ %S ถูกรายงานว่าเป็นไซต์หลอกลวงและถูกปิดกั้นตามการกำหนดลักษณะความปลอดภัยของคุณ
+cspBlocked=หน้านี้มีนโยบายความปลอดภัยของเนื้อหาที่ป้องกันไม่ให้หน้าถูกโหลดด้วยวิธีนี้
+xfoBlocked=หน้านี้มีนโยบาย X-Frame-Options ที่ป้องกันไม่ให้หน้าถูกโหลดในบริบทนี้
+corruptedContentErrorv2=ไซต์ที่ %S ได้พบการละเมิดโปรโตคอลเครือข่ายที่ไม่สามารถซ่อมแซมได้
+sslv3Used=ไม่สามารถรับประกันความปลอดภัยของข้อมูลของคุณบน %S เนื่องจากใช้ SSLv3 ซึ่งเป็นโปรโตคอลที่มีปัญหาด้านความปลอดภัย
+weakCryptoUsed=เจ้าของ %S ได้กำหนดค่าเว็บไซต์ของพวกเขาไม่เหมาะสม เพื่อปกป้องข้อมูลของคุณจากการถูกขโมย การเชื่อมต่อไปยังเว็บไซต์นี้จึงไม่ถูกสร้าง
+inadequateSecurityError=เว็บไซต์พยายามจะแลกเปลี่ยนระดับความปลอดภัยที่ไม่เพียงพอ
+blockedByPolicy=องค์กรของคุณได้ปิดกั้นการเข้าถึงหน้าหรือเว็บไซต์นี้
+networkProtocolError=Firefox ได้พบการละเมิดโปรโตคอลเครือข่ายที่ไม่สามารถซ่อมแซมได้
diff --git a/l10n-th/dom/chrome/dom/dom.properties b/l10n-th/dom/chrome/dom/dom.properties
new file mode 100644
index 0000000000..965fed4b6a
--- /dev/null
+++ b/l10n-th/dom/chrome/dom/dom.properties
@@ -0,0 +1,478 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+KillScriptTitle=คำเตือน: สคริปต์ไม่ตอบสนอง
+KillScriptMessage=สคริปต์ในหน้านี้อาจกำลังทำงานอยู่หรืออาจไม่ตอบสนอง คุณสามารถหยุดการทำงานของสคริปต์ได้ในตอนนี้ หรือปล่อยให้สคริปต์ทำงานต่อเพื่อดูว่าจะทำงานจนเสร็จหรือไม่
+KillScriptWithDebugMessage=สคริปต์ในหน้านี้อาจกำลังทำงานอยู่หรืออาจไม่ตอบสนอง คุณสามารถหยุดการทำงานของสคริปต์ได้ในตอนนี้, เปิดสคริปต์ในเครื่องมือดีบั๊ก, หรือปล่อยให้สคริปต์ทำงานต่อ
+KillScriptLocation=สคริปต์: %S
+
+KillAddonScriptTitle=คำเตือน: สคริปต์ส่วนเสริมไม่ตอบสนอง
+# LOCALIZATION NOTE (KillAddonScriptMessage): %1$S is the name of an extension.
+# %2$S is the name of the application (e.g., Firefox).
+KillAddonScriptMessage=สคริปต์จากส่วนเสริม “%1$S” กำลังทำงานบนหน้านี้ และกำลังทำให้ %2$S ไม่ตอบสนอง\n\nสคริปต์อาจไม่ว่าง หรืออาจหยุดตอบสนองอย่างถาวร คุณสามารถหยุดการทำงานของสคริปต์ได้เลยตอนนี้ หรือคุณสามารถรอดูต่อได้ว่าสคริปต์จะทำงานเสร็จสมบูรณ์หรือไม่
+KillAddonScriptGlobalMessage=ป้องกันไม่ให้สคริปต์ส่วนขยายทำงานบนหน้านี้จนกว่าจะโหลดหน้านี้ใหม่ในครั้งถัดไป
+
+StopScriptButton=หยุดการทำงานของสคริปต์
+DebugScriptButton=ดีบั๊กสคริปต์
+WaitForScriptButton=ดำเนินการต่อ
+DontAskAgain=ไ&ม่ต้องถามฉันอีก
+WindowCloseBlockedWarning=สคริปต์ไม่สามารถปิดหน้าต่างที่ไม่ได้เปิดโดยสคริปต์
+OnBeforeUnloadTitle=คุณแน่ใจหรือไม่?
+OnBeforeUnloadMessage2=ต้องการคำยืนยันว่าคุณต้องการที่จะออกจากหน้าเว็บนี้ — ข้อมูลที่คุณกรอกไว้อาจจะไม่ถูกบันทึก
+OnBeforeUnloadStayButton=อยู่ในหน้าต่อ
+OnBeforeUnloadLeaveButton=ออกจากหน้า
+EmptyGetElementByIdParam=ส่งค่าสตริงว่างให้กับ getElementById()
+SpeculationFailed2=document.write() ได้เขียน tree ที่ไม่สมดุล ทำให้ข้อมูลจากเครือข่ายต้องถูก วิเคราะห์โครงสร้างใหม่อีกครั้ง ดูข้อมูลเพิ่มเติมที่: https://developer.mozilla.org/en-US/docs/Glossary/speculative_parsing
+DocumentWriteIgnored=การเรียกใช้ document.write() จากสคริปต์ภายนอกที่โหลดแบบ asynchronous ถูกเพิกเฉย
+# LOCALIZATION NOTE (EditorFileDropFailed): Do not translate contenteditable, %S is the error message explaining why the drop failed.
+EditorFileDropFailed=การปล่อยไฟล์ลงในองค์ประกอบ contenteditable ล้มเหลว: %S
+FormValidationTextTooLong=โปรดปรับความยาวข้อความให้เหลือ %S ตัวอักษรหรือสั้นกว่า (ขณะนี้ความยาว %S ตัวอักษร)
+FormValidationTextTooShort=โปรดใช้อักขระอย่างน้อย %S ตัว (ขณะนี้คุณกำลังใช้อักขระ %S ตัว)
+FormValidationValueMissing=โปรดกรอกช่องนี้
+FormValidationCheckboxMissing=โปรดกาเครื่องหมายกล่องนี้หากคุณต้องการดำเนินการต่อ
+FormValidationRadioMissing=โปรดเลือกหนึ่งในตัวเลือกเหล่านี้
+FormValidationFileMissing=โปรดเลือกไฟล์
+FormValidationSelectMissing=โปรดเลือกสิ่งที่อยู่ในรายการ
+FormValidationInvalidEmail=โปรดป้อนที่อยู่อีเมล
+FormValidationInvalidURL=โปรดป้อน URL
+FormValidationInvalidDate=โปรดป้อนวันที่ที่ถูกต้อง
+FormValidationInvalidTime=โปรดกรอกเวลาที่ถูกต้อง
+FormValidationInvalidDateTime=โปรดป้อนวันที่และเวลาที่ถูกต้อง
+FormValidationInvalidDateMonth=โปรดป้อนเดือนที่ถูกต้อง
+FormValidationInvalidDateWeek=โปรดป้อนสัปดาห์ที่ถูกต้อง
+FormValidationPatternMismatch=โปรดทำให้ตรงกับรูปแบบที่ขอ
+# LOCALIZATION NOTE (FormValidationPatternMismatchWithTitle): %S is the (possibly truncated) title attribute value.
+FormValidationPatternMismatchWithTitle=โปรดทำให้ตรงกับรูปแบบที่ขอ: %S
+# LOCALIZATION NOTE (FormValidationNumberRangeOverflow): %S is a number.
+FormValidationNumberRangeOverflow=โปรดเลือกค่าที่ไม่มากกว่า %S
+# LOCALIZATION NOTE (FormValidationDateTimeRangeOverflow): %S is a date or a time.
+FormValidationDateTimeRangeOverflow=โปรดเลือกค่าที่ไม่มากกว่า %S
+# LOCALIZATION NOTE (FormValidationNumberRangeUnderflow): %S is a number.
+FormValidationNumberRangeUnderflow=โปรดเลือกค่าที่ไม่น้อยกว่า %S
+# LOCALIZATION NOTE (FormValidationDateTimeRangeUnderflow): %S is a date or a time.
+FormValidationDateTimeRangeUnderflow=โปรดเลือกค่าที่ไม่น้อยกว่า %S
+# LOCALIZATION NOTE (FormValidationStepMismatch): both %S can be a number, a date or a time.
+FormValidationStepMismatch=โปรดเลือกค่าที่ถูกต้อง สองค่าที่ถูกต้องที่ใกล้เคียงที่สุดคือ %S และ %S
+# LOCALIZATION NOTE (FormValidationStepMismatchOneValue): %S can be a number, a date or a time. This is called instead of FormValidationStepMismatch when the second value is the same as the first.
+FormValidationStepMismatchOneValue=โปรดเลือกค่าที่ถูกต้อง ค่าที่ถูกต้องที่ใกล้เคียงที่สุดคือ %S
+# LOCALIZATION NOTE (FormValidationTimeReversedRangeUnderflowAndOverflow): %1$S,%2$S are time.
+FormValidationTimeReversedRangeUnderflowAndOverflow=โปรดเลือกค่าระหว่าง %1$S และ %2$S
+FormValidationBadInputNumber=โปรดป้อนตัวเลข
+FullscreenDeniedDisabled=การร้องขอการแสดงผลเต็มหน้าจอถูกปฏิเสธเนื่องจาก API แบบเต็มหน้าจอถูกปิดใช้งานโดยการกำหนดลักษณะผู้ใช้
+FullscreenDeniedFocusedPlugin=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากปลั๊กอินที่เป็นหน้าต่างถูกโฟกัส
+FullscreenDeniedHidden=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากเอกสารไม่สามารถมองเห็นได้อีกต่อไป
+FullscreenDeniedHTMLDialog=การขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากองค์ประกอบที่ขอเป็นองค์ประกอบ <dialog>
+FullscreenDeniedContainerNotAllowed=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากเอกสารอย่างน้อยหนึ่งชิ้นมี iframe ที่ไม่มีแอตทริบิวต์ "allowfullscreen"
+FullscreenDeniedNotInputDriven=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจาก Element.requestFullscreen() ไม่ถูกเรียกจากภายในตัวจัดการเหตุการณ์ที่สร้างโดยผู้ใช้ซึ่งทำงานในระยะสั้น
+FullscreenDeniedMouseEventOnlyLeftBtn=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจาก Element.requestFullscreen() ถูกเรียกจากภายในตัวจัดการเหตุการณ์เมาส์ที่ไม่ได้ทริกเกอร์โดยปุ่มเมาส์ซ้าย
+FullscreenDeniedNotHTMLSVGOrMathML=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากองค์ประกอบที่ร้องขอไม่ใช่องค์ประกอบแบบ <svg>, <math>, หรือ HTML
+FullscreenDeniedNotInDocument=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากองค์ประกอบที่ร้องขอไม่มีอยู่ในเอกสารอีกต่อไป
+FullscreenDeniedMovedDocument=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากองค์ประกอบที่ร้องขอได้ย้ายเอกสาร
+FullscreenDeniedLostWindow=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากเราไม่มีหน้าต่างให้อีกต่อไปแล้ว
+FullscreenDeniedSubDocFullscreen=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากเอกสารย่อยของเอกสารที่ร้องขอการแสดงผลเต็มจอเป็นแบบเต็มจออยู่แล้ว
+FullscreenDeniedNotDescendant=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากองค์ประกอบที่ร้องขอไม่ใช่โหนดสืบทอดขององค์ประกอบการแสดงผลเต็มจอปัจจุบัน
+FullscreenDeniedNotFocusedTab=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากองค์ประกอบที่ร้องขอไม่ได้อยู่ในแท็บที่โฟกัสในขณะนี้
+FullscreenDeniedFeaturePolicy=การร้องขอการแสดงผลเต็มจอถูกปฏิเสธเนื่องจากคำสั่ง FeaturePolicy
+FullscreenExitWindowFocus=ออกจากการแสดงผลเต็มจอเนื่องจากหน้าต่างถูกโฟกัส
+RemovedFullscreenElement=ออกจากการแสดงผลเต็มจอเนื่องจากองค์ประกอบการแสดงผลเต็มจอถูกเอาออกจากเอกสารแล้ว
+FocusedWindowedPluginWhileFullscreen=ออกจากการแสดงผลเต็มจอเนื่องจากปลั๊กอินที่เป็นหน้าต่างถูกโฟกัส
+PointerLockDeniedDisabled=การร้องขอการล็อกตัวชี้ถูกปฏิเสธเนื่องจาก API การล็อกตัวชี้ถูกปิดใช้งานโดยค่ากำหนดผู้ใช้
+PointerLockDeniedInUse=การร้องขอการล็อกตัวชี้ถูกปฏิเสธเนื่องจากขณะนี้ตัวชี้ถูกควบคุมโดยเอกสารอื่น
+PointerLockDeniedNotInDocument=การร้องขอการล็อกตัวชี้ถูกปฏิเสธเนื่องจากองค์ประกอบที่ร้องขอไม่อยู่ในเอกสาร
+PointerLockDeniedSandboxed=การร้องขอการล็อกตัวชี้ถูกปฏิเสธเนื่องจาก API การล็อกตัวชี้ถูกจำกัดผ่าน sandbox
+PointerLockDeniedHidden=การร้องขอการล็อกตัวชี้ถูกปฏิเสธเนื่องจากเอกสารไม่สามารถมองเห็นได้
+PointerLockDeniedNotFocused=การร้องขอการล็อกตัวชี้ถูกปฏิเสธเนื่องจากเอกสารไม่ได้ถูกโฟกัส
+PointerLockDeniedMovedDocument=การร้องขอการล็อกตัวชี้ถูกปฏิเสธเนื่องจากองค์ประกอบที่ร้องขอได้ย้ายเอกสาร
+PointerLockDeniedNotInputDriven=การร้องขอการล็อกตัวชี้ถูกปฏิเสธเนื่องจาก Element.requestPointerLock() ไม่ถูกเรียกจากภายในตัวจัดการเหตุการณ์ที่สร้างโดยผู้ใช้ซึ่งทำงานในระยะสั้น และเอกสารไม่ได้แสดงผลเต็มจอ
+PointerLockDeniedFailedToLock=การร้องขอการล็อกตัวชี้ถูกปฏิเสธเนื่องจากเบราว์เซอร์ไม่สามารถล็อกตัวชี้ได้
+HTMLSyncXHRWarning=ไม่รองรับการแยกวิเคราะห์ HTML ใน XMLHttpRequest ในโหมดซิงโครนัส
+# LOCALIZATION NOTE: %S is the name of the header in question
+ForbiddenHeaderWarning=ความพยายามในการตั้งส่วนหัวที่ไม่ได้รับอนุญาตถูกปฏิเสธ: %S
+ResponseTypeSyncXHRWarning=ไม่รองรับการใช้แอตทริบิวต์ responseType ของ XMLHttpRequest ในโหมดซิงโครนัสในบริบทหน้าต่างอีกต่อไป
+TimeoutSyncXHRWarning=ไม่รองรับการใช้แอตทริบิวต์ timeout ของ XMLHttpRequest ในโหมดซิงโครนัสในบริบทหน้าต่างอีกต่อไป
+# LOCALIZATION NOTE: Do not translate navigator.sendBeacon, unload, pagehide, or XMLHttpRequest.
+UseSendBeaconDuringUnloadAndPagehideWarning=การใช้ navigator.sendBeacon แทน XMLHttpRequest แบบซิงโครนัสระหว่าง unload และ pagehide ปรับปรุงประสบการณ์ผู้ใช้
+JSONCharsetWarning=มีความพยายามจะประกาศรหัสอักขระของ JSON ที่ได้จาก XMLHttpRequest ให้เป็นรหัสอักขระที่ไม่ใช่ UTF-8 การถอดรหัส JSON รองรับเฉพาะ UTF-8 เท่านั้น
+# LOCALIZATION NOTE: Do not translate HTMLMediaElement and createMediaElementSource.
+MediaElementAudioSourceNodeCrossOrigin=HTMLMediaElement ที่ผ่านไปยัง createMediaElementSource มีทรัพยากรข้ามที่มา โหนดจะไม่ส่งเสียงใด ๆ
+# LOCALIZATION NOTE: Do not translate MediaStream and createMediaStreamSource.
+MediaStreamAudioSourceNodeCrossOrigin=MediaStream ที่ผ่านไปยัง createMediaStreamSource มีทรัพยากรข้ามที่มา โหนดจะไม่ส่งเสียงใด ๆ
+# LOCALIZATION NOTE : Do not translate MediaStreamTrack and createMediaStreamTrackSource.
+MediaStreamTrackAudioSourceNodeCrossOrigin=MediaStreamTrack ที่ผ่านไปยัง createMediaStreamTrackSource มีทรัพยากรข้ามที่มา โหนดจะไม่ส่งเสียงใด ๆ
+# LOCALIZATION NOTE: Do not translate HTMLMediaElement and MediaStream.
+MediaElementAudioCaptureOfMediaStreamError=HTMLMediaElement ที่จับกำลังเล่น MediaStream ขณะนี้ยังไม่รองรับการนำระดับเสียงหรือสถานะปิดเสียงไปใช้
+# LOCALIZATION NOTE: Do not translate HTMLMediaElement and MediaStream.
+MediaElementStreamCaptureCycle=MediaStream ที่กำหนดให้กับ srcObject มาจาก HTMLMediaElement ที่จับนี้กำลังสร้างวัฏจักร ค่าที่กำหนดจึงถูกเพิกเฉย
+MediaLoadExhaustedCandidates=ไม่สามารถโหลดทรัพยากรทางเลือกทั้งหมด การโหลดสื่อถูกหยุดชั่วคราว
+MediaLoadSourceMissingSrc=<source> องค์ประกอบไม่มีแอตทริบิวต์ “src” การโหลดทรัพยากรสื่อล้มเหลว
+MediaStreamAudioSourceNodeDifferentRate=ขณะนี้ยังไม่รองรับการเชื่อมต่อ AudioNodes จาก AudioContexts ที่มีอัตราการสุ่มตัวอย่างอื่น
+# LOCALIZATION NOTE: %1$S is the Http error code the server returned (e.g. 404, 500, etc), %2$S is the URL of the media resource which failed to load.
+MediaLoadHttpError=การโหลด HTTP ล้มเหลวด้วยสถานะ %1$S การโหลดทรัพยากรสื่อ %2$S ล้มเหลว
+# LOCALIZATION NOTE: %S is the URL of the media resource which failed to load.
+MediaLoadInvalidURI=URI ไม่ถูกต้อง การโหลดทรัพยากรสื่อ %S ล้มเหลว
+# LOCALIZATION NOTE: %1$S is the media resource's format/codec type (basically equivalent to the file type, e.g. MP4,AVI,WMV,MOV etc), %2$S is the URL of the media resource which failed to load.
+MediaLoadUnsupportedTypeAttribute=ไม่รองรับแอตทริบิวต์ “type” ที่ระบุ “%1$S” การโหลดทรัพยากรสื่อ %2$S ล้มเหลว
+MediaLoadUnsupportedTypeAttributeLoadingNextChild=ไม่รองรับแอตทริบิวต์ “type” ที่ระบุของ “%1$S” การโหลดทรัพยากรสื่อ %2$S ล้มเหลว กำลังพยายามโหลดจากองค์ประกอบ <source> ถัดไป
+# LOCALIZATION NOTE: %1$S is the MIME type HTTP header being sent by the web server, %2$S is the URL of the media resource which failed to load.
+MediaLoadUnsupportedMimeType=ไม่รองรับ HTTP “Content-Type” ของ “%1$S” การโหลดทรัพยากรสื่อ %2$S ล้มเหลว
+# LOCALIZATION NOTE: %S is the URL of the media resource which failed to load because of error in decoding.
+MediaLoadDecodeError=ไม่สามารถถอดรหัสทรัพยากรสื่อ %S ได้
+MediaWidevineNoWMF=กำลังพยายามเล่น Widevine โดยไม่มี Windows Media Foundation ดู https://support.mozilla.org/kb/fix-video-audio-problems-firefox-windows
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaWMFNeeded=หากต้องการเล่นวิดีโอในรูปแบบ %S คุณจำเป็นต้องติดตั้งซอฟต์แวร์ของ Microsoft เพิ่มเติม ดู https://support.mozilla.org/kb/fix-video-audio-problems-firefox-windows
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaPlatformDecoderNotFound=ไม่สามารถเล่นวิดีโอที่อยู่บนหน้านี้ได้ ระบบของคุณอาจไม่มีตัวแปลงสัญญาณวิดีโอที่จำเป็นสำหรับ: %S
+MediaUnsupportedLibavcodec=ไม่สามารถเล่นวิดีโอที่อยู่บนหน้านี้ได้ ระบบของคุณมี libavcodec รุ่นที่ไม่รองรับ
+# LOCALIZATION NOTE: %1$S is the URL of the media resource, %2$S is technical information (in English)
+MediaDecodeError=ไม่สามารถถอดรหัสทรัพยากรสื่อ %1$S ได้ ข้อผิดพลาด: %2$S
+# LOCALIZATION NOTE: %1$S is the URL of the media resource, %2$S is technical information (in English)
+MediaDecodeWarning=สามารถถอดรหัสทรัพยากรสื่อ %1$S ได้ แต่มีข้อผิดพลาด: %2$S
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaCannotPlayNoDecoders=ไม่สามารถเล่นสื่อได้ ไม่มีตัวถอดรหัสสำหรับรูปแบบที่ร้องขอ: %S
+# LOCALIZATION NOTE: %S is a comma-separated list of codecs (e.g. 'video/mp4, video/webm')
+MediaNoDecoders=ไม่มีตัวถอดรหัสสำหรับรูปแบบที่ร้องขอบางรูปแบบ: %S
+MediaCannotInitializePulseAudio=ไม่สามารถใช้ PulseAudio ได้
+# LOCALIZATION NOTE: %S is the URL of the web page which is not served on HTTPS and thus is not encrypted and considered insecure.
+MediaEMEInsecureContextDeprecatedWarning=การใช้ส่วนขยายสื่อที่เข้ารหัสที่ %S บนบริบทที่ไม่ปลอดภัย (เช่น บริบทที่ไม่ใช่ HTTPS) เลิกใช้แล้วและจะถูกเอาออกในไม่ช้า คุณควรพิจารณาเปลี่ยนไปใช้ที่มาที่ปลอดภัย เช่น HTTPS
+# LOCALIZATION NOTE: %S is the URL of the web page which is calling web APIs without passing data (either an audioCapabilities or a videoCapabilities) that will soon be required. See https://bugzilla.mozilla.org/show_bug.cgi?id=1368583#c21 for explanation of this string.
+MediaEMENoCapabilitiesDeprecatedWarning=การเรียก navigator.requestMediaKeySystemAccess() (ที่ %S) โดยไม่ผ่าน MediaKeySystemConfiguration ทางเลือกที่มี audioCapabilities หรือ videoCapabilities เลิกใช้แล้ว
+# LOCALIZATION NOTE: %S is the URL of the web page which is calling web APIs without passing data (a "codecs" string in the "contentType") that will soon be required. See https://bugzilla.mozilla.org/show_bug.cgi?id=1368583#c21 for explanation of this string.
+MediaEMENoCodecsDeprecatedWarning=การเรียก navigator.requestMediaKeySystemAccess() (ที่ %S) ที่ผ่าน MediaKeySystemConfiguration ทางเลือกที่มี audioCapabilities หรือ videoCapabilities โดยไม่มี contentType ที่มีสตริง “codecs” เลิกใช้แล้ว
+# LOCALIZATION NOTE: Do not translate "Mutation Event" and "MutationObserver"
+MutationEventWarning=เลิกใช้ Mutation Events แล้ว ให้ใช้ MutationObserver แทน
+BlockAutoplayError=การเล่นอัตโนมัติได้รับอนุญาตเฉพาะเมื่อได้รับอนุมัติจากผู้ใช้เท่านั้น ไซต์ถูกเปิดใช้งานโดยผู้ใช้ หรือสื่อถูกปิดเสียง
+BlockAutoplayWebAudioStartError=AudioContext ถูกป้องกันไม่ให้เริ่มทำงานโดยอัตโนมัติ โดยจะต้องสร้างหรือดำเนินการต่อหลังจากท่าทางของผู้ใช้ที่อยู่บนหน้า
+# LOCALIZATION NOTE: Do not translate "Components"
+ComponentsWarning=เลิกใช้วัตถุ Components แล้ว จะเอาออกในเร็ว ๆ นี้
+PluginHangUITitle=คำเตือน: ปลั๊กอินไม่ตอบสนอง
+PluginHangUIMessage=%S ในหน้านี้อาจกำลังทำงานอยู่หรืออาจไม่ตอบสนอง คุณสามารถหยุดการทำงานของสคริปต์ได้ในตอนนี้ หรือปล่อยให้สคริปต์ทำงานต่อเพื่อดูว่าจะทำงานจนเสร็จหรือไม่
+PluginHangUIWaitButton=ดำเนินการต่อ
+PluginHangUIStopButton=หยุดปลั๊กอิน
+# LOCALIZATION NOTE: Do not translate "NodeIterator" or "detach()".
+NodeIteratorDetachWarning=การร้องเรียก detach() บน NodeIterator ไม่มีผล
+# LOCALIZATION NOTE: Do not translate "LenientThis" and "this"
+LenientThisWarning=ไม่สนการรับค่าหรือตั้งค่าของคุณสมบัติที่มี [LenientThis] เพราะว่าการใช้อ็อบเจ็คต์ "this" ไม่ถูกต้อง
+# LOCALIZATION NOTE: Do not translate "captureEvents()" or "addEventListener()"
+UseOfCaptureEventsWarning=เลิกใช้ captureEvents() แล้ว เพื่ออัปเกรดโค้ดของคุณ ให้ใช้วิธีการ addEventListener() ของ DOM 2 สำหรับความช่วยเหลือเพิ่มเติม http://developer.mozilla.org/en/docs/DOM:element.addEventListener
+# LOCALIZATION NOTE: Do not translate "releaseEvents()" or "removeEventListener()"
+UseOfReleaseEventsWarning=เลิกใช้ releaseEvents() แล้ว เพื่ออัปเกรดโค้ดของคุณ ให้ใช้วิธีการ removeEventListener() ของ DOM 2 สำหรับความช่วยเหลือเพิ่มเติม http://developer.mozilla.org/en/docs/DOM:element.removeEventListener
+# LOCALIZATION NOTE: Do not translate "XMLHttpRequest"
+SyncXMLHttpRequestWarning=เลิกใช้ XMLHttpRequest แบบสมวารในเธรดหลักแล้วเนื่องจากผลกระทบที่เป็นอันตรายต่อประสบการณ์ของผู้ใช้ สำหรับความช่วยเหลือเพิ่มเติม http://xhr.spec.whatwg.org/
+# LOCALIZATION NOTE: Do not translate "window.controllers/Controllers"
+Window_Cc_ontrollersWarning=เลิกใช้ window.controllers/Controllers แล้ว อย่าใช้เพื่อตรวจหา UA
+ImportXULIntoContentWarning=เลิกใช้การนำเข้าโหนด XUL สู่เอกสารเนื้อหาแล้ว อาจเอาฟังก์ชันการทำงานนี้ออกในเร็ว ๆ นี้
+# LOCALIZATION NOTE: Do not translate "IndexedDB".
+IndexedDBTransactionAbortNavigation=รายการเปลี่ยนแปลง IndexedDB ไม่สามารถทำให้เสร็จสมบูรณ์ได้เนื่องถูกยกเลิกจากหน้าการนำทาง
+# LOCALIZATION NOTE: Do not translate Will-change, %1$S,%2$S are numbers.
+IgnoringWillChangeOverBudgetWarning=การใช้หน่วยความจำของ Will-change สูงเกินไป ขีดจำกัดงบประมาณคือพื้นที่พื้นผิวเอกสารคูณด้วย %1$S (%2$S พิกเซล) เหตุการณ์ที่เกิดของ will-change ที่เกินงบประมาณจะถูกเพิกเฉย
+# LOCALIZATION NOTE: Do not translate "Worker".
+HittingMaxWorkersPerDomain2=ไม่สามารถเริ่มตัวทำงานได้ทันทีเนื่องจากเอกสารอื่น ๆ ในที่มาเดียวกันใช้จำนวนตัวทำงานสูงสุดแล้ว ตัวทำงานอยู่ในคิวและจะเริ่มหลังจากที่ตัวทำงานอื่นเสร็จสมบูรณ์
+# LOCALIZATION NOTE: Do not translate "Application Cache API", "AppCache" and "ServiceWorker".
+AppCacheWarning=Application Cache API (AppCache) เลิกใช้แล้วและจะถูกเอาออกในอนาคต โปรดพิจารณาใช้ ServiceWorker สำหรับการสนับสนุนออฟไลน์
+# LOCALIZATION NOTE: Do not translate "Worker".
+EmptyWorkerSourceWarning=กำลังพยายามสร้างตัวทำงานจากที่มาที่ว่างเปล่า การดำเนินการนี้น่าจะเกิดขึ้นโดยไม่ได้ตั้งใจ
+WebrtcDeprecatedPrefixWarning=ส่วนติดต่อ WebRTC ที่มีส่วนนำหน้า “moz” (mozRTCPeerConnection, mozRTCSessionDescription, mozRTCIceCandidate) เลิกใช้แล้ว
+NavigatorGetUserMediaWarning=navigator.mozGetUserMedia ได้ถูกแทนที่โดย navigator.mediaDevices.getUserMedia
+# LOCALIZATION NOTE: Do not translate "RTCPeerConnection", "getLocalStreams", "getRemoteStreams", "getSenders" or "getReceivers".
+RTCPeerConnectionGetStreamsWarning=RTCPeerConnection.getLocalStreams/getRemoteStreams เลิกใช้แล้ว ใช้ RTCPeerConnection.getSenders/getReceivers แทน
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %S is a URL.
+InterceptionFailedWithURL=ไม่สามารถโหลด ‘%S’ ServiceWorker ขัดขวางคำขอและพบข้อผิดพลาดที่ไม่คาดคิด
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "cors", "Response", "same-origin" or "Request". %1$S is a URL, %2$S is a URL.
+CorsResponseForSameOriginRequest=ไม่สามารถโหลด ‘%1$S’ ได้โดยตอบกลับ ‘%2$S’ ServiceWorker ไม่ได้รับอนุญาตให้สังเคราะห์ cors Response สำหรับคำขอ same-origin
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "FetchEvent.respondWith()", "FetchEvent", "no-cors", "opaque", "Response", or "RequestMode". %1$S is a URL. %2$S is a RequestMode value.
+BadOpaqueInterceptionRequestModeWithURL=ไม่สามารถโหลด ‘%1$S’ ServiceWorker ส่ง opaque Response ไปที่ FetchEvent.respondWith() ในขณะที่จัดการ FetchEvent ‘%2$S’ Opaque Response ใช้ได้เฉพาะเมื่อ RequestMode เป็น ‘no-cors’
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Error", "Response", "FetchEvent.respondWith()", or "fetch()". %S is a URL.
+InterceptedErrorResponseWithURL=ไม่สามารถโหลด ‘%S’ ServiceWorker ส่ง Error Response ไปที่ FetchEvent.respondWith() ซึ่งโดยทั่วไปหมายความว่า ServiceWorker ทำการเรียก fetch() ที่ไม่ถูกต้อง
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Response", "FetchEvent.respondWith()", or "Response.clone()". %S is a URL.
+InterceptedUsedResponseWithURL=ไม่สามารถโหลด ‘%S’ ServiceWorker ส่ง used Response ไปที่ FetchEvent.respondWith() เนื้อความของ Response สามารถอ่านได้เพียงครั้งเดียว ใช้ Response.clone() เพื่อให้สามารถเข้าถึงเนื้อความได้หลายครั้ง
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "opaqueredirect", "Response", "FetchEvent.respondWith()", or "FetchEvent". %S is a URL.
+BadOpaqueRedirectInterceptionWithURL=ไม่สามารถโหลด ‘%S’ ServiceWorker ส่ง opaqueredirect Response ไปที่ FetchEvent.respondWith() ในขณะที่จัดการ FetchEvent ที่ไม่ใช่การนำทาง
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Response", "FetchEvent.respondWith()", "RedirectMode" or "follow". %S is a URL.
+BadRedirectModeInterceptionWithURL=ไม่สามารถโหลด ‘%S’ ServiceWorker ส่ง redirected Response ไปที่ FetchEvent.respondWith() ในขณะที่ RedirectMode ไม่ใช่ ‘follow’
+# LOCALIZATION NOTE: Do not translate "ServiceWorker" or "FetchEvent.preventDefault()". %S is a URL.
+InterceptionCanceledWithURL=ไม่สามารถโหลด ‘%S’ ServiceWorker ยกเลิกการโหลดโดยเรียก FetchEvent.preventDefault()
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "promise", or "FetchEvent.respondWith()". %1$S is a URL. %2$S is an error string.
+InterceptionRejectedResponseWithURL=ไม่สามารถโหลด ‘%1$S’ ServiceWorker ส่ง promise ไปที่ FetchEvent.respondWith() ซึ่งปฏิเสธด้วย ‘%2$S’
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "promise", "FetchEvent.respondWith()", or "Response". %1$S is a URL. %2$S is an error string.
+InterceptedNonResponseWithURL=ไม่สามารถโหลด ‘%1$S’ ServiceWorker ส่ง promise ไปที่ FetchEvent.respondWith() ซึ่งแปลงด้วยค่าที่ไม่ใช่ Response ‘%2$S’
+# LOCALIZATION NOTE: Do not translate "mozImageSmoothingEnabled", or "imageSmoothingEnabled"
+PrefixedImageSmoothingEnabledWarning=เลิกใช้ mozImageSmoothingEnabled แล้ว โปรดใช้คุณสมบัติ imageSmoothingEnabled ที่ไม่มีส่วนนำหน้าแทน
+# LOCALIZATION NOTE: Do not translate "ServiceWorker", "Service-Worker-Allowed" or "HTTP". %1$S and %2$S are URLs.
+ServiceWorkerScopePathMismatch=ไม่สามารถลงทะเบียน ServiceWorker: เส้นทางของ scope ที่ระบุ ‘%1$S’ ไม่อยู่ภายใต้ scope สูงสุดที่อนุญาต ‘%2$S’ ปรับ scope, ย้ายสคริปต์ Service Worker, หรือใช้ส่วนหัว Service-Worker-Allowed HTTP เพื่ออนุญาต scope
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %1$S is a URL representing the scope of the ServiceWorker, %2$S is a stringified numeric HTTP status code like "404" and %3$S is a URL.
+ServiceWorkerRegisterNetworkError=ไม่สามารถลงทะเบียน/อัปเดต ServiceWorker สำหรับ scope ‘%1$S’ ได้: การโหลดล้มเหลวด้วยสถานะ %2$S สำหรับสคริปต์ ‘%3$S’
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %1$S is a URL representing the scope of the ServiceWorker, %2$S is a MIME Media Type like "text/plain" and %3$S is a URL.
+ServiceWorkerRegisterMimeTypeError2=ไม่สามารถลงทะเบียน/อัปเดต ServiceWorker สำหรับ scope ‘%1$S’ ได้: ได้รับ Content-Type ‘%2$S’ ที่ไม่ถูกต้องสำหรับสคริปต์ ‘%3$S’ ต้องเป็นชนิด JavaScript MIME
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %S is a URL representing the scope of the ServiceWorker.
+ServiceWorkerRegisterStorageError=ไม่สามารถลงทะเบียน/อัปเดต ServiceWorker สำหรับ scope ‘%S’ ได้: การเข้าถึงที่เก็บข้อมูลถูกจำกัดในบริบทนี้เนื่องจากการตั้งค่าผู้ใช้หรือโหมดการเรียกดูแบบส่วนตัว
+ServiceWorkerGetRegistrationStorageError=ไม่สามารถรับข้อมูลเกี่ยวกับการลงทะเบียนตัวทำงานบริการได้: การเข้าถึงที่เก็บข้อมูลถูกจำกัดในบริบทนี้เนื่องจากการตั้งค่าผู้ใช้หรือโหมดการเรียกดูแบบส่วนตัว
+ServiceWorkerGetClientStorageError=ไม่สามารถรับข้อมูลเกี่ยวกับไคลเอ็นต์ของตัวทำงานบริการได้: การเข้าถึงที่เก็บข้อมูลถูกจำกัดในบริบทนี้เนื่องจากการตั้งค่าผู้ใช้หรือโหมดการเรียกดูแบบส่วนตัว
+# LOCALIZATION NOTE: Do not translate "ServiceWorker" and "postMessage". %S is a URL representing the scope of the ServiceWorker.
+ServiceWorkerPostMessageStorageError=ServiceWorker สำหรับ scope ‘%S’ ไม่สามารถดำเนินการ ‘postMessage‘ ได้เนื่องจากการเข้าถึงที่เก็บข้อมูลถูกจำกัดในบริบทนี้เนื่องจากการตั้งค่าผู้ใช้หรือโหมดการเรียกดูแบบส่วนตัว
+# LOCALIZATION NOTE: Do not translate "ServiceWorker". %1$S is a URL representing the scope of the ServiceWorker.
+ServiceWorkerGraceTimeoutTermination=สิ้นสุด ServiceWorker สำหรับ scope ‘%1$S’ ที่มี waitUntil/respondWith promise รออยู่เนื่องจากรออยู่เนื่องจากหมดเวลาผ่อนผัน
+# LOCALIZATION NOTE (ServiceWorkerNoFetchHandler): Do not translate "Fetch".
+ServiceWorkerNoFetchHandler=ต้องเพิ่มตัวจัดการเหตุการณ์ Fetch ระหว่างการประเมินเริ่มต้นของสคริปต์ของตัวทำงาน
+ExecCommandCutCopyDeniedNotInputDriven=document.execCommand (‘cut’/‘copy’) ถูกปฏิเสธเนื่องจากไม่ได้ถูกเรียกจากภายในตัวจัดการเหตุการณ์ที่ผู้ใช้สร้างขึ้นที่ทำงานในระยะสั้น
+ManifestIdIsInvalid=สมาชิก id ไม่ได้แปลงที่อยู่ไปยัง URL ที่ถูกต้อง
+ManifestIdNotSameOrigin=สมาชิก id ต้องมีที่มาเดียวกับสมาชิก start_url
+ManifestShouldBeObject=ไฟล์กำกับควรเป็นวัตถุ
+ManifestScopeURLInvalid=URL ของ scope ไม่ถูกต้อง
+ManifestScopeNotSameOrigin=URL ของ scope ต้องเป็นที่มาเดียวกับเอกสาร
+ManifestStartURLOutsideScope=URL เริ่มต้นอยู่ภายนอก scope ดังนั้น scope ดังกล่าวจึงไม่ถูกต้อง
+ManifestStartURLInvalid=URL เริ่มต้นไม่ถูกต้อง
+ManifestStartURLShouldBeSameOrigin=URL เริ่มต้นต้องเป็นที่มาเดียวกับเอกสาร
+# LOCALIZATION NOTE: %1$S is the name of the object whose property is invalid. %2$S is the name of the invalid property. %3$S is the expected type of the property value. E.g. "Expected the manifest's start_url member to be a string."
+ManifestInvalidType=ต้องการให้สมาชิก %2$S ของ %1$S เป็น %3$S
+# LOCALIZATION NOTE: %1$S is the name of the property whose value is invalid. %2$S is the (invalid) value of the property. E.g. "theme_color: 42 is not a valid CSS color."
+ManifestInvalidCSSColor=%1$S: %2$S ไม่ใช่สี CSS ที่ถูกต้อง
+# LOCALIZATION NOTE: %1$S is the name of the property whose value is invalid. %2$S is the (invalid) value of the property. E.g. "lang: 42 is not a valid language code."
+ManifestLangIsInvalid=%1$S: %2$S ไม่ใช่รหัสภาษาที่ถูกต้อง
+# LOCALIZATION NOTE: %1$S is the name of the parent property whose value is invalid (e.g., "icons"). %2$S is the index of the image object that is invalid (from 0). %3$S is the name of actual member that is invalid. %4$S is the invalid value. E.g. "icons item at index 2 is invalid. The src member is an invalid URL http://:Invalid"
+ManifestImageURLIsInvalid=รายการ %1$S ที่ดัชนี %2$S ไม่ถูกต้อง สมาชิก %3$S เป็น URL ที่ไม่ถูกต้อง %4$S
+# LOCALIZATION NOTE: %1$S is the name of the parent property that that contains the unusable image object (e.g., "icons"). %2$S is the index of the image object that is unusable (from 0). E.g. "icons item at index 2 lacks a usable purpose. It will be ignored."
+ManifestImageUnusable=รายการ %1$S ที่ดัชนี %2$S ขาดวัตถุประสงค์ที่ใช้งานได้ และจะถูกเพิกเฉย
+# LOCALIZATION NOTE: %1$S is the name of the parent property that contains the unsupported value (e.g., "icons"). %2$S is the index of the image object that has the unsupported value (from 0). %3$S are the unknown purposes. E.g. "icons item at index 2 includes unsupported purpose(s): a b."
+ManifestImageUnsupportedPurposes=รายการ %1$S ที่ดัชนี %2$S มีวัตถุประสงค์ที่ไม่รองรับ: %3$S
+# LOCALIZATION NOTE: %1$S is the name of the parent property that has a repeated purpose (e.g., "icons"). %2$S is the index of the image object that has the repeated purpose (from 0). %3$S is the repeated purposes. E.g. "icons item at index 2 includes repeated purpose(s): a b."
+ManifestImageRepeatedPurposes=รายการ %1$S ที่ดัชนี %2$S มีวัตถุประสงค์ที่ซ้ำ: %3$S
+PatternAttributeCompileFailure=ไม่สามารถตรวจสอบ <input pattern='%S'> ได้เนื่องจากรูปแบบดังกล่าวไม่ใช่ regexp ที่ถูกต้อง: %S
+# LOCALIZATION NOTE: Do not translate "postMessage" or DOMWindow. %S values are origins, like https://domain.com:port
+TargetPrincipalDoesNotMatch=ไม่สามารถดำเนินการ ‘postMessage’ ใน ‘DOMWindow’ ได้: ที่มาเป้าหมายที่ระบุ (‘%S’) ไม่ตรงกับที่มาของหน้าต่างผู้รับ (‘%S’)
+# LOCALIZATION NOTE: Do not translate 'YouTube'. %S values are origins, like https://domain.com:port
+RewriteYouTubeEmbed=กำลังเขียน YouTube Flash embed แบบเก่า (%S) ใหม่เป็น iframe embed (%S) โปรดอัปเดตหน้าเพื่อใช้ iframe แทน embed/object หากเป็นไปได้
+# LOCALIZATION NOTE: Do not translate 'YouTube'. %S values are origins, like https://domain.com:port
+RewriteYouTubeEmbedPathParams=กำลังเขียน YouTube Flash embed แบบเก่า (%S) ใหม่เป็น iframe embed (%S) Params ไม่รองรับโดย iframe embeds และถูกแปลงแล้ว โปรดอัปเดตหน้าเพื่อใช้ iframe แทน embed/object หากเป็นไปได้
+# LOCALIZATION NOTE: This error is reported when the "Encryption" header for an
+# incoming push message is missing or invalid. Do not translate "ServiceWorker",
+# "Encryption", and "salt". %1$S is the ServiceWorker scope URL.
+PushMessageBadEncryptionHeader=ServiceWorker สำหรับ scope ‘%1$S’ ไม่สามารถถอดรหัสข้อความพุชได้ ส่วนหัว ‘Encryption’ ต้องมีพารามิเตอร์ ‘salt‘ ที่ไม่ซ้ำกันสำหรับแต่ละข้อความ ดู https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-3.1 สำหรับข้อมูลเพิ่มเติม
+# LOCALIZATION NOTE: This error is reported when the "Crypto-Key" header for an
+# incoming push message is missing or invalid. Do not translate "ServiceWorker",
+# "Crypto-Key", and "dh". %1$S is the ServiceWorker scope URL.
+PushMessageBadCryptoKeyHeader=ServiceWorker สำหรับ scope ‘%1$S’ ไม่สามารถถอดรหัสข้อความพุชได้ ส่วนหัว ‘Crypto-Key’ ต้องมีพารามิเตอร์ ‘dh‘ ที่มีคีย์สาธารณะของเซิร์ฟเวอร์แอป ดู https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-4 สำหรับข้อมูลเพิ่มเติม
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt because the deprecated
+# "Encryption-Key" header for an incoming push message is missing or invalid.
+# Do not translate "ServiceWorker", "Encryption-Key", "dh", "Crypto-Key", and
+# "Content-Encoding: aesgcm". %1$S is the ServiceWorker scope URL.
+PushMessageBadEncryptionKeyHeader=ServiceWorker สำหรับ scope ‘%1$S’ ไม่สามารถถอดรหัสข้อความพุชได้ ส่วนหัว ‘Encryption-Key’ ต้องมีพารามิเตอร์ ‘dh‘ ซึ่งเลิกใช้แล้วและจะถูกเอาออกในไม่ช้า โปรดใช้ ‘Crypto-Key‘ พร้อมด้วย ‘Content-Encoding: aesgcm‘ แทน ดู https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-4 สำหรับข้อมูลเพิ่มเติม
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because the "Content-Encoding" header is missing or contains an
+# unsupported encoding. Do not translate "ServiceWorker", "Content-Encoding",
+# "aesgcm", and "aesgcm128". %1$S is the ServiceWorker scope URL.
+PushMessageBadEncodingHeader=ServiceWorker สำหรับ scope ‘%1$S’ ไม่สามารถถอดรหัสข้อความพุชได้ ส่วนหัว ‘Content-Encoding’ ต้องเป็น ‘aesgcm‘ โดยสามารถใช้ ‘aesgcm128‘ ได้ แต่เลิกใช้แล้วและจะถูกเอาออกในไม่ช้า ดู https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-2 สำหรับข้อมูลเพิ่มเติม
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because the "dh" parameter is not valid base64url. Do not translate
+# "ServiceWorker", "dh", "Crypto-Key", and "base64url". %1$S is the
+# ServiceWorker scope URL.
+PushMessageBadSenderKey=ServiceWorker สำหรับ scope ‘%1$S’ ไม่สามารถถอดรหัสข้อความพุชได้ พารามิเตอร์ ‘dh‘ ในส่วนหัว ‘Crypto-Key‘ ต้องเป็นคีย์สาธารณะ Diffie-Hellman ของเซิร์ฟเวอร์แอปซึ่งเข้ารหัสแบบ base64url (https://tools.ietf.org/html/rfc7515#appendix-C) และอยู่ในรูปแบบ “uncompressed” หรือ “raw” (65 ไบต์ก่อนการเข้ารหัส) ดู https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-4 สำหรับข้อมูลเพิ่มเติม
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because the "salt" parameter is not valid base64url. Do not translate
+# "ServiceWorker", "salt", "Encryption", and "base64url". %1$S is the
+# ServiceWorker scope URL.
+PushMessageBadSalt=ServiceWorker สำหรับ scope ‘%1$S’ ไม่สามารถถอดรหัสข้อความพุชได้ พารามิเตอร์ ‘salt‘ ในส่วนหัว ‘Encryption‘ ต้องเข้ารหัสแบบ base64url (https://tools.ietf.org/html/rfc7515#appendix-C) และอยู่ที่อย่างน้อย 16 ไบต์ก่อนการเข้ารหัส ดู https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-3.1 สำหรับข้อมูลเพิ่มเติม
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because the "rs" parameter is not a number, or is less than the pad size.
+# Do not translate "ServiceWorker", "rs", or "Encryption". %1$S is the
+# ServiceWorker scope URL. %2$S is the minimum value (1 for aesgcm128, 2 for
+# aesgcm).
+PushMessageBadRecordSize=ServiceWorker สำหรับ scope ‘%1$S’ ไม่สามารถถอดรหัสข้อความพุชได้ พารามิเตอร์ ‘rs‘ ของส่วนหัว ‘Encryption‘ ต้องอยู่ระหว่าง %2$S และ 2^36-31 หรือเว้นไว้ทั้งหมด ดู https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-3.1 สำหรับข้อมูลเพิ่มเติม
+# LOCALIZATION NOTE: This error is reported when a push message fails to decrypt
+# because an encrypted record is shorter than the pad size, the pad is larger
+# than the record, or any of the padding bytes are non-zero. Do not translate
+# "ServiceWorker". %1$S is the ServiceWorker scope URL. %2$S is the pad size
+# (1 for aesgcm128, 2 for aesgcm).
+PushMessageBadPaddingError=ServiceWorker สำหรับ scope ‘%1$S’ ไม่สามารถถอดรหัสข้อความพุชได้ เรกคอร์ดในข้อความที่เข้ารหัสไม่ได้มีการเติมช่องว่างภายในอย่างถูกต้อง ดู https://tools.ietf.org/html/draft-ietf-httpbis-encryption-encoding-02#section-2 สำหรับข้อมูลเพิ่มเติม
+# LOCALIZATION NOTE: This error is reported when push message decryption fails
+# and no specific error info is available. Do not translate "ServiceWorker".
+# %1$S is the ServiceWorker scope URL.
+PushMessageBadCryptoError=ServiceWorker สำหรับ scope ‘%1$S’ ไม่สามารถถอดรหัสข้อความพุชได้ สำหรับวิธีใช้เกี่ยวกับการเข้ารหัส โปรดดู https://developer.mozilla.org/docs/Web/API/Push_API/Using_the_Push_API#Encryption
+# LOCALIZATION NOTE: %1$S is the type of a DOM event. 'passive' is a literal parameter from the DOM spec.
+PreventDefaultFromPassiveListenerWarning=เพิกเฉยการเรียก ‘preventDefault()’ บนเหตุการณ์ชนิด ‘%1$S’ จากตัวฟังที่ลงทะเบียนเป็น ‘passive’
+# LOCALIZATION NOTE: 'ImageBitmapRenderingContext.transferImageBitmap' and 'ImageBitmapRenderingContext.transferFromImageBitmap' should not be translated
+ImageBitmapRenderingContext_TransferImageBitmapWarning=เลิกใช้ ImageBitmapRenderingContext.transferImageBitmap แล้วและจะถูกเอาออกในไม่ช้า ใช้ ImageBitmapRenderingContext.transferFromImageBitmap แทน
+IIRFilterChannelCountChangeWarning=การเปลี่ยนแปลงจำนวนช่องของ IIRFilterNode อาจทำให้เกิดข้อบกพร่องของเสียง
+BiquadFilterChannelCountChangeWarning=การเปลี่ยนแปลงจำนวนช่องของ BiquadFilterNode อาจทำให้เกิดข้อบกพร่องของเสียง
+# LOCALIZATION NOTE: Do not translate ".png"
+GenericImageNamePNG=ภาพ.png
+GenericFileName=ไฟล์
+GeolocationInsecureRequestIsForbidden=คำขอตำแหน่งที่ตั้งทางภูมิศาสตร์สามารถดำเนินการได้ในบริบทที่ปลอดภัยเท่านั้น
+NotificationsInsecureRequestIsForbidden=สามารถขอการอนุญาตการแจ้งเตือนได้เฉพาะในบริบทที่ปลอดภัยเท่านั้น
+NotificationsCrossOriginIframeRequestIsForbidden=สามารถขอการอนุญาตการแจ้งเตือนได้เฉพาะในเอกสารระดับบนสุดหรือ iframe ของแหล่งที่มาเดียวกันเท่านั้น
+NotificationsRequireUserGesture=สามารถขอการอนุญาตการแจ้งเตือนได้เฉพาะจากภายในตัวจัดการเหตุการณ์ที่สร้างโดยผู้ใช้ที่ทำงานในระยะสั้นเท่านั้น
+NotificationsRequireUserGestureDeprecationWarning=การขอการอนุญาตการแจ้งเตือนภายนอกตัวจัดการเหตุการณ์ที่สร้างโดยผู้ใช้ที่ทำงานในระยะสั้นเลิกใช้แล้วและจะไม่รองรับอีกในอนาคต
+# LOCALIZATION NOTE: Do not translate "content", "Window", and "window.top"
+WindowContentUntrustedWarning=เลิกใช้แอตทริบิวต์ ‘content’ ของวัตถุ Window แล้ว โปรดใช้ ‘window.top’ แทน
+# LOCALIZATION NOTE: The first %S is the tag name of the element that starts the loop, the second %S is the element's ID.
+SVGRefLoopWarning=SVG <%S> ที่มี ID “%S” มีลูปการอ้างอิง
+# LOCALIZATION NOTE: The first %S is the tag name of the element in the chain where the chain was broken, the second %S is the element's ID.
+SVGRefChainLengthExceededWarning=โซ่อ้างอิง SVG <%S> ซึ่งยาวเกินไปถูกทอดทิ้งในองค์ประกอบที่มี ID “%S”
+# LOCALIZATION NOTE: Do not translate SVGGraphicsElement.nearestViewportElement or SVGElement.viewportElement.
+SVGNearestViewportElement=SVGGraphicsElement.nearestViewportElement เลิกใช้แล้วและจะถูกเอาออกในอนาคต ให้ใช้ SVGElement.viewportElement แทน
+# LOCALIZATION NOTE: Do not translate SVGGraphicsElement.farthestViewportElement.
+SVGFarthestViewportElement=SVGGraphicsElement.farthestViewportElement เลิกใช้แล้วและจะถูกเอาออกในอนาคต
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceEmpty=แอตทริบิวต์ ‘%S’ ขององค์ประกอบ <script> ว่างเปล่า
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceInvalidUri=แอตทริบิวต์ ‘%S’ ขององค์ประกอบ <script> ไม่ใช่ URI ที่ถูกต้อง: “%S”
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceLoadFailed=การโหลดล้มเหลวสำหรับ <script> ที่มีต้นฉบับ “%S”
+ModuleSourceLoadFailed=การโหลดล้มเหลวสำหรับโมดูลที่มีต้นฉบับ “%S”
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceMalformed=URI ที่มาของ <script> มีรูปแบบที่ไม่ถูกต้อง: “%S”
+ModuleSourceMalformed=URI ที่มาของโมดูลมีรูปแบบที่ไม่ถูกต้อง: “%S”
+# LOCALIZATION NOTE: Do not translate "<script>".
+ScriptSourceNotAllowed=ไม่อนุญาตให้มี URI ที่มาของ <script> ในเอกสารนี้: “%S”
+ModuleSourceNotAllowed=ไม่อนุญาตให้มี URI ที่มาของโมดูลในเอกสารนี้: “%S”
+WebExtContentScriptModuleSourceNotAllowed=สคริปต์เนื้อหา WebExtension อาจโหลดเฉพาะโมดูลที่มี URL moz-extension และไม่ใช่: “%S”
+ModuleResolveFailure=เกิดข้อผิดพลาดในการแปลงที่อยู่ตัวระบุโมดูล “%S” ตัวระบุโมดูลสัมพัทธ์จะต้องขึ้นต้นด้วย “./” “../” หรือ “/”
+ModuleResolveFailureNoWarn=เกิดข้อผิดพลาดในการแปลงที่อยู่ตัวระบุโมดูล “%S”
+ModuleResolveFailureWarnRelative=เกิดข้อผิดพลาดในการแปลงที่อยู่ตัวระบุโมดูล “%S” ตัวระบุโมดูลสัมพัทธ์จะต้องขึ้นต้นด้วย “./” “../” หรือ “/”
+ImportMapInvalidTopLevelKey=มีคีย์ระดับบนสุดที่ไม่ถูกต้อง “%S” ในแมปการนำเข้า
+ImportMapEmptySpecifierKeys=คีย์ตัวระบุไม่สามารถเป็นสตริงว่างได้
+ImportMapAddressesNotStrings=ที่อยู่ต้องเป็นสตริง
+ImportMapInvalidAddress=ที่อยู่ “%S” ไม่ถูกต้อง
+# %1$S is the specifier key, %2$S is the URL.
+ImportMapAddressNotEndsWithSlash=มีการกำหนดที่อยู่ไม่ถูกต้องสำหรับคีย์ตัวระบุ “%1$S” เนื่องจาก “%1$S” ลงท้ายด้วยเครื่องหมายทับ ที่อยู่ “%2$S” ก็ต้องลงท้ายด้วยเครื่องหมายทับเช่นกัน
+ImportMapScopePrefixNotParseable=URL ส่วนนำหน้าขอบเขต “%S” ไม่สามารถแยกวิเคราะห์ได้
+ImportMapResolutionBlockedByNullEntry=การจำแนกตัวระบุ “%S” ถูกปิดกั้นโดยรายการค่าว่าง
+ImportMapResolutionBlockedByAfterPrefix=การจำแนกตัวระบุ “%S” ถูกปิดกั้นเนื่องจากไม่สามารถแยกวิเคราะห์สตริงย่อยหลังส่วนนำหน้าเป็น URL สัมพัทธ์สำหรับที่อยู่ในแมปการนำเข้าได้
+ImportMapResolutionBlockedByBacktrackingPrefix=การจำแนกตัวระบุ “%S” ถูกปิดกั้นเนื่องจาก URL ที่แยกวิเคราะห์ไม่ขึ้นต้นด้วยที่อยู่ในแมปการนำเข้า
+ImportMapResolveInvalidBareSpecifier=ตัวระบุ “%S” เป็นตัวระบุแบบ bare แต่ไม่ได้ถูกแมปใหม่กับอะไรเลย
+ImportMapResolveInvalidBareSpecifierWarnRelative=ตัวระบุ “%S” เป็นตัวระบุแบบ bare แต่ไม่ได้ถูกแมปใหม่กับอะไรเลย ตัวระบุโมดูลสัมพัทธ์ต้องขึ้นต้นด้วย “./”, “../” หรือ “/”
+# LOCALIZATION NOTE: Do not translate "<script type='importmap'>", "src".
+# LOCALIZATION NOTE: %1$S is the invalid property value and %2$S is the property name.
+InvalidKeyframePropertyValue=ค่าคุณสมบัติคีย์เฟรม “%1$S” ไม่ถูกต้องตามไวยากรณ์สำหรับ “%2$S”
+# LOCALIZATION NOTE: Do not translate "ReadableStream".
+ReadableStreamReadingFailed=ไม่สามารถอ่านข้อมูลจาก ReadableStream ได้: “%S”
+# LOCALIZATION NOTE: Do not translate "registerProtocolHandler"
+RegisterProtocolHandlerPrivateBrowsingWarning=ไม่สามารถใช้ registerProtocolHandler ในโหมดการเรียกดูแบบส่วนตัวได้
+MotionEventWarning=เลิกใช้การใช้เซ็นเซอร์ตรวจจับความเคลื่อนไหวแล้ว
+OrientationEventWarning=เลิกใช้การใช้เซ็นเซอร์ตรวจจับการวางแนวแล้ว
+ProximityEventWarning=เลิกใช้การใช้เซ็นเซอร์ตรวจจับบริเวณใกล้เคียงแล้ว
+AmbientLightEventWarning=เลิกใช้การใช้เซ็นเซอร์ตรวจจับแสงที่ล้อมรอบแล้ว
+# LOCALIZATION NOTE: Do not translate "storage", "indexedDB.open" and "navigator.storage.persist()".
+IDBOpenDBOptions_StorageTypeWarning=เลิกใช้แอตทริบิวต์ ‘storage’ ในตัวเลือกที่ส่งไปที่ indexedDB.open แล้วและจะถูกเอาออกในไม่ช้า หากต้องการรับที่เก็บข้อมูลถาวร โปรดใช้ navigator.storage.persist() แทน
+UnsupportedEntryTypesIgnored=เพิกเฉย entryTypes ที่ไม่รองรับ: %S
+AllEntryTypesIgnored=ไม่มี entryTypes ที่ถูกต้อง; กำลังยกเลิกการลงทะเบียน
+# LOCALIZATION NOTE: do not localize key=“%S” modifiers=“%S” id=“%S”
+GTK2Conflict2=ไม่พบเหตุการณ์หลักบน GTK2: key=“%S” modifiers=“%S” id=“%S”
+WinConflict2=ไม่พบเหตุการณ์หลักสำหรับบางผังแป้นพิมพ์: key=“%S” modifiers=“%S” id=“%S”
+# LOCALIZATION NOTE: do not trnaslated "document.domain"
+DocumentSetDomainNotAllowedWarning=ไม่อนุญาตให้ตั้งค่า document.domain ในสภาพแวดล้อมแบบแยกต่างหากแบบข้ามที่มา
+
+#LOCALIZATION NOTE(DeprecatedTestingInterfaceWarning): Do not translate this message. It's just testing only.
+DeprecatedTestingInterfaceWarning=TestingDeprecatedInterface เป็นส่วนติดต่อสำหรับการทดสอบเท่านั้นและนี่คือข้อความการทดสอบการเลิกใช้
+#LOCALIZATION NOTE(DeprecatedTestingMethodWarning): Do not translate this message. It's just testing only.
+DeprecatedTestingMethodWarning=TestingDeprecatedInterface.deprecatedMethod() เป็นวิธีสำหรับการทดสอบเท่านั้นและนี่คือข้อความการทดสอบการเลิกใช้
+#LOCALIZATION NOTE(DeprecatedTestingAttributeWarning): Do not translate this message. It's just testing only.
+DeprecatedTestingAttributeWarning=TestingDeprecatedInterface.deprecatedAttribute เป็นแอตทริบิวต์สำหรับการทดสอบเท่านั้นและนี่คือข้อความการทดสอบการเลิกใช้
+# LOCALIZATION NOTE (CreateImageBitmapCanvasRenderingContext2DWarning): Do not translate CanvasRenderingContext2D and createImageBitmap.
+CreateImageBitmapCanvasRenderingContext2DWarning=เลิกใช้ CanvasRenderingContext2D ใน createImageBitmap แล้ว
+
+# LOCALIZATION NOTE (DrawWindowCanvasRenderingContext2DWarning): Do not translate CanvasRenderingContext2D, drawWindow and tabs.captureTab.
+DrawWindowCanvasRenderingContext2DWarning=การใช้วิธี drawWindow จากCanvasRenderingContext2D เลิกใช้แล้ว ใช้ tabs.captureTab ของ API ของส่วนขยายแทน https://developer.mozilla.org/docs/Mozilla/Add-ons/WebExtensions/API/tabs/captureTab
+# LOCALIZATION NOTE: Do not translate "mozTextStyle" and "CanvasRenderingContext2D.font".
+MozTextStyleWarning=mozTextStyle เลิกใช้แล้วและจะถูกเอาออกในอนาคต ให้ใช้ CanvasRenderingContext2D.font แทน
+
+# LOCALIZATION NOTE (MozRequestFullScreenDeprecatedPrefixWarning): Do not translate mozRequestFullScreen.
+MozRequestFullScreenDeprecatedPrefixWarning=เลิกใช้ mozRequestFullScreen() แล้ว
+# LOCALIZATION NOTE (MozfullscreenchangeDeprecatedPrefixWarning): Do not translate onmozfullscreenchange.
+MozfullscreenchangeDeprecatedPrefixWarning=เลิกใช้ onmozfullscreenchange แล้ว
+# LOCALIZATION NOTE (MozfullscreenerrorDeprecatedPrefixWarning): Do not translate onmozfullscreenerror.
+MozfullscreenerrorDeprecatedPrefixWarning=เลิกใช้ onmozfullscreenerror แล้ว
+# LOCALIZATION NOTE(External_AddSearchProviderWarning): Do not translate AddSearchProvider.
+External_AddSearchProviderWarning=เลิกใช้ AddSearchProvider แล้ว
+# LOCALIZATION NOTE: Do not translate "MouseEvent.mozPressure" and "PointerEvent.pressure".
+MouseEvent_MozPressureWarning=เลิกใช้ MouseEvent.mozPressure แล้ว ให้ใช้ PointerEvent.pressure แทน
+# LOCALIZATION NOTE: Do not translate MathML, align, numalign and denomalign.
+MathML_DeprecatedAlignmentAttributesWarning=แอตทริบิวต์ MathML “align”, “numalign” และ “denomalign” เป็นค่าที่เลิกใช้แล้วและจะถูกเอาออกในอนาคต
+# LOCALIZATION NOTE: Do not translate MathML and bevelled.
+MathML_DeprecatedBevelledAttribute=แอตทริบิวต์ MathML “bevelled” เลิกใช้แล้วและอาจถูกเอาออกในอนาคต
+# LOCALIZATION NOTE: Do not translate thin, medium, thick and linethickness.
+MathML_DeprecatedLineThicknessValueWarning=“thin”, “medium” และ “thick” เป็นค่าที่เลิกใช้แล้วสำหรับแอตทริบิวต์ linethickness และจะถูกเอาออกในอนาคต
+# LOCALIZATION NOTE: Do not translate small, normal, big and mathsize.
+MathML_DeprecatedMathSizeValueWarning=“small”, “normal” และ “big” เป็นค่าที่เลิกใช้แล้วสำหรับแอตทริบิวต์ mathsize และจะถูกเอาออกในอนาคต
+# LOCALIZATION NOTE: Do not translate veryverythinmathspace, verythinmathspace,
+# thinmathspace, mediummathspace, thickmathspace, verythickmathspace, veryverythickmathspace and MathML.
+MathML_DeprecatedMathSpaceValueWarning=“veryverythinmathspace”, “verythinmathspace”, “thinmathspace”, “mediummathspace”, “thickmathspace”, “verythickmathspace” และ “veryverythickmathspace” เป็นค่าที่เลิกใช้แล้วสำหรับความยาว MathML lengths และจะถูกเอาออกในอนาคต
+# LOCALIZATION NOTE: Do not translate radical, notation and menclose.
+MathML_DeprecatedMencloseNotationRadical=ค่า “radical” เลิกใช้แล้วสำหรับแอตทริบิวต์ “notation” ขององค์ประกอบ <menclose> และจะถูกเอาออกในอนาคต
+# LOCALIZATION NOTE: Do not translate MathML or mfenced.
+MathML_DeprecatedMfencedElement=องค์ประกอบ MathML mfenced เลิกใช้แล้วและจะถูกเอาออกในอนาคต
+# LOCALIZATION NOTE: Do not translate MathML, subscriptshift and superscriptshift.
+MathML_DeprecatedScriptShiftAttributes=แอตทริบิวต์ MathML “subscriptshift” และ “superscriptshift” เลิกใช้แล้วและอาจถูกเอาออกในอนาคต
+# LOCALIZATION NOTE: Do not translate MathML, background, color, fontfamily, fontsize, fontstyle and fontweight.
+MathML_DeprecatedStyleAttributeWarning=แอตทริบิวต์ MathML “background”, “color”, “fontfamily”, “fontsize”, “fontstyle” และ “fontweight” เลิกใช้แล้วและจะถูกเอาออกในอนาคต
+# LOCALIZATION NOTE: Do not translate MathML and STIXGeneral. %S is a documentation URL.
+MathML_DeprecatedStixgeneralOperatorStretchingWarning=เลิกรองรับการเรนเดอร์ตัวดำเนินการ MathML แบบยืดด้วยแบบอักษรของ STIXGeneral แล้วและจะถูกเอาออกในอนาคต สำหรับรายละเอียดเกี่ยวกับแบบอักษรที่ใหม่กว่าที่จะยังคงรองรับต่อไป ดูที่ %S
+# LOCALIZATION NOTE: Do not translate MathML and scriptminsize.
+MathML_DeprecatedScriptminsizeAttributeWarning=แอตทริบิวต์ MathML “scriptminsize” เลิกใช้แล้วและจะถูกเอาออกในอนาคต
+# LOCALIZATION NOTE: Do not translate MathML and scriptsizemultiplier.
+MathML_DeprecatedScriptsizemultiplierAttributeWarning=แอตทริบิวต์ MathML “scriptsizemultiplier” เลิกใช้แล้วและจะถูกเอาออกในอนาคต
+FormSubmissionUntrustedEventWarning=การส่งฟอร์มผ่านเหตุการณ์ submit ที่ไม่เชื่อถือเลิกใช้แล้วและจะถูกเอาออกในอนาคต
+WebShareAPI_Failed=การดำเนินการแบ่งปันล้มเหลว
+WebShareAPI_Aborted=การดำเนินการแบ่งปันถูกยกเลิก
+# LOCALIZATION NOTE (UnknownProtocolNavigationPrevented): %1$S is the destination URL.
+UnknownProtocolNavigationPrevented=ป้องกันการนำทางไปยัง “%1$S” แล้วเนื่องจากเป็นโปรโตคอลที่ไม่รู้จัก
+PostMessageSharedMemoryObjectToCrossOriginWarning=ไม่สามารถโพสต์ข้อความที่มีวัตถุหน่วยความจำที่ใช้ร่วมกันลงในหน้าต่างแบบข้ามที่มาได้
+# LOCALIZATION NOTE: %S is the URL of the resource in question
+UnusedLinkPreloadPending=ทรัพยากรที่ “%S” ที่โหลดไว้ล่วงหน้าที่มีการโหลดลิงก์ล่วงหน้าไม่ได้ถูกใช้ในช่วงไม่กี่วินาทีที่ผ่านมา ตรวจสอบให้แน่ใจว่าแอตทริบิวต์ทั้งหมดของแท็ก preload ได้รับการตั้งค่าอย่างถูกต้อง
+
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess(), iframe, allow-same-origin and sandbox (though you may translate "sandboxed").
+RequestStorageAccessNullPrincipal=document.requestStorageAccess() อาจไม่ถูกเรียกบนเอกสารที่มีที่มาที่มืดทึบ เช่น iframe without ที่มี sandbox ซึ่งไม่มี allow-same-origin ในแอตทริบิวต์ sandbox
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess(), iframe, allow-storage-access-by-user-activation and sandbox (though you may translate "sandboxed").
+RequestStorageAccessSandboxed=document.requestStorageAccess() อาจไม่ถูกเรียกใน iframe ที่มี sandbox ซึ่งไม่มี allow-storage-access-by-user-activation ในแอตทริบิวต์ sandbox
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess() and iframe.
+RequestStorageAccessNested=document.requestStorageAccess() อาจไม่ถูกเรียกใน iframe ที่ซ้อนกัน
+# LOCALIZATION NOTE: Do not translate document.requestStorageAccess(). In some locales it may be preferable to not translate "event handler", either.
+RequestStorageAccessUserGesture=สามารถร้องขอ document.requestStorageAccess() ได้เฉพาะจากภายในตัวจัดการเหตุการณ์ที่สร้างโดยผู้ใช้ที่ทำงานในระยะสั้นเท่านั้น
+# LOCALIZATION NOTE: Do not translate "Location" and "History".
+LocChangeFloodingPrevented=มีการเรียก Location หรือ History API มากเกินไปภายในระยะเวลาสั้น ๆ
+FolderUploadPrompt.title = ยืนยันการอัปโหลด
+# LOCALIZATION NOTE: %S is the name of the folder the user selected in the file picker.
+FolderUploadPrompt.message = คุณแน่ใจหรือไม่ว่าคุณต้องการอัปโหลดไฟล์ทั้งหมดจาก “%S”? ดำเนินการนี้เฉพาะเมื่อคุณเชื่อถือไซต์เท่านั้น
+FolderUploadPrompt.acceptButtonLabel = อัปโหลด
+InputPickerBlockedNoUserActivation=ตัวเลือก <input> ถูกปิดกั้นเนื่องจากไม่มีการเปิดใช้งานโดยผู้ใช้
+ExternalProtocolFrameBlockedNoUserActivation=Iframe ที่มีโปรโตคอลภายนอกถูกปิดกั้นเนื่องจากไม่มีการเปิดใช้งานโดยผู้ใช้ หรือเนื่องจากมีเวลาที่ผ่านไปไม่เพียงพอนับตั้งแต่โหลด Iframe นั้นครั้งล่าสุด
+MultiplePopupsBlockedNoUserActivation=การเปิดหลายป็อปอัปถูกปิดกั้นเนื่องจากไม่มีการเปิดใช้งานโดยผู้ใช้
+# LOCALIZATION NOTE: %S is the URL of the preload that was ignored.
+PreloadIgnoredInvalidAttr=การโหลด %S ล่วงหน้าถูกเพิกเฉยเนื่องจากมีค่า “as” หรือ “type” ที่ไม่รู้จัก หรือมีแอตทริบิวต์ “media” ที่ไม่ตรงกัน
+# LOCALIZATION NOTE: %S is the blob URL. Don't translate "agent cluster".
+BlobDifferentClusterError=ไม่สามารถเข้าถึง Blob URL “%S” จาก Agent Cluster อื่นได้
+# LOCALIZATION NOTE: Do not translate "Element.setCapture()" and "Element.setPointerCapture()"".
+ElementSetCaptureWarning=Element.setCapture() เลิกใช้แล้ว ใช้ Element.setPointerCapture() แทน สำหรับวิธีใช้เพิ่มเติม https://developer.mozilla.org/docs/Web/API/Element/setPointerCapture
+# LOCALIZATION NOTE: Do not translate "Element.releaseCapture()" and "Element.releasePointerCapture()".
+ElementReleaseCaptureWarning=Element.releaseCapture() เลิกใช้แล้ว ใช้ Element.releasePointerCapture() แทน สำหรับวิธีใช้เพิ่มเติม https://developer.mozilla.org/docs/Web/API/Element/releasePointerCapture
+# LOCALIZATION NOTE: Do not translate "Document.releaseCapture()" and "Element.releasePointerCapture()".
+DocumentReleaseCaptureWarning=Document.releaseCapture() เลิกใช้แล้ว ใช้ Element.releasePointerCapture() แทน สำหรับวิธีใช้เพิ่มเติม https://developer.mozilla.org/docs/Web/API/Element/releasePointerCapture
+
+# LOCALIZATION NOTE: Don't translate browser.runtime.lastError, %S is the error message from the unchecked value set on browser.runtime.lastError.
+WebExtensionUncheckedLastError=ไม่ได้ตรวจสอบค่า browser.runtime.lastError: %S
+
+# LOCALIZATION NOTE: Do not translate "OffscreenCanvas.toBlob()" and "OffscreenCanvas.convertToBlob()".
+OffscreenCanvasToBlobWarning=OffscreenCanvas.toBlob() เลิกใช้แล้ว ให้ใช้ OffscreenCanvas.convertToBlob() แทน
+
+# LOCALIZATION NOTE: Do not translate "IDBDatabase.createMutableFile()"
+IDBDatabaseCreateMutableFileWarning=IDBDatabase.createMutableFile() เลิกใช้แล้ว หาก API นี้ถูกทำให้เป็นมาตรฐาน ก็อาจจะสามารถใช้งานได้ภายใต้ Origin Private File System ที่ https://bugzil.la/1748667
+# LOCALIZATION NOTE: Do not translate "IDBMutableFile.open()"
+IDBMutableFileOpenWarning=IDBMutableFile.open() เลิกใช้แล้ว หาก API นี้ถูกทำให้เป็นมาตรฐาน ก็อาจจะสามารถใช้งานได้ภายใต้ Origin Private File System ที่ https://bugzil.la/1748667
+
+# LOCALIZATION NOTE: Do not translate "InstallTrigger"
+InstallTriggerDeprecatedWarning=InstallTrigger เลิกใช้แล้วและจะถูกลบออกในอนาคต
+# LOCALIZATION NOTE: Do not translate "InstallTrigger.install()"
+InstallTriggerInstallDeprecatedWarning=InstallTrigger.install() เลิกใช้แล้วและจะถูกลบออกในอนาคต สำหรับวิธีใช้เพิ่มเติม ให้ดูที่ https://extensionworkshop.com/documentation/publish/self-distribution/
+
+# LOCALIZATION NOTE: Do not translate "mozCurrentTransform", "CanvasRenderingContext2D.getTransform()", and "CanvasRenderingContext2D.setTransform()".
+MozCurrentTransformWarning=mozCurrentTransform เลิกใช้แล้วและจะถูกเอาออกในอนาคต ให้ใช้ CanvasRenderingContext2D.getTransform() หรือ CanvasRenderingContext2D.setTransform() แทน
+# LOCALIZATION NOTE: Do not translate "mozCurrentTransformInverse", "CanvasRenderingContext2D.getTransform()", and "CanvasRenderingContext2D.setTransform()".
+MozCurrentTransformInverseWarning=mozCurrentTransformInverse เลิกใช้แล้วและจะถูกเอาออกในอนาคต ให้ใช้ CanvasRenderingContext2D.getTransform() หรือ CanvasRenderingContext2D.setTransform() แทน
+
+# LOCALIZATION NOTE: Do not translate "HTMLOptionsCollection.length". %1$S is the invalid value, %2$S is the current limit.
+SelectOptionsLengthAssignmentWarning=ได้ปฏิเสธที่จะขยายรายการตัวเลือก <select> ผ่านค่าที่กำหนดให้ HTMLOptionsCollection.length (ค่า %1$S) ขนาดสูงสุดที่รองรับคือ %2$S
+
+# LOCALIZATION NOTE: Do not translate "u2f.register()" or "navigator.credentials.create()"
+U2FRegisterWarning=u2f.register() เลิกใช้แล้วและจะถูกเอาออกในอนาคต ให้ใช้ navigator.credentials.create() แทน
+# LOCALIZATION NOTE: Do not translate "u2f.sign()" or "navigator.credentials.get()"
+U2FSignWarning=u2f.sign() เลิกใช้แล้วและจะถูกเอาออกในอนาคต ให้ใช้ navigator.credentials.get() แทน
diff --git a/l10n-th/dom/chrome/global-strres.properties b/l10n-th/dom/chrome/global-strres.properties
new file mode 100644
index 0000000000..2ffeaaf0df
--- /dev/null
+++ b/l10n-th/dom/chrome/global-strres.properties
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+16389=เกิดข้อผิดพลาดที่ไม่รู้จัก (%1$S)
diff --git a/l10n-th/dom/chrome/global.dtd b/l10n-th/dom/chrome/global.dtd
new file mode 100644
index 0000000000..661fb351f4
--- /dev/null
+++ b/l10n-th/dom/chrome/global.dtd
@@ -0,0 +1,5 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY locale.dir "ltr">
diff --git a/l10n-th/dom/chrome/layout/HtmlForm.properties b/l10n-th/dom/chrome/layout/HtmlForm.properties
new file mode 100644
index 0000000000..79259e3c02
--- /dev/null
+++ b/l10n-th/dom/chrome/layout/HtmlForm.properties
@@ -0,0 +1,43 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+Reset=กลับค่าเดิม
+Submit=ส่ง
+Browse=เรียกดู…
+FileUpload=อัปโหลดไฟล์
+DirectoryUpload=เลือกโฟลเดอร์ที่จะอัปโหลด
+DirectoryPickerOkButtonLabel=อัปโหลด
+ForgotPostWarning=แบบฟอร์มมี enctype=%S แต่ไม่มี method=post จึงส่งตามปกติด้วย method=GET และไม่มี enctype แทน
+ForgotFileEnctypeWarning=แบบฟอร์มมีการป้อนข้อมูลไฟล์ แต่ขาด method=POST และ enctype=multipart/form-data บนแบบฟอร์ม ไฟล์จะไม่ถูกส่ง
+# LOCALIZATION NOTE (DefaultFormSubject): %S will be replaced with brandShortName
+DefaultFormSubject=ฟอร์มถูกส่งจาก %S
+CannotEncodeAllUnicode=ฟอร์มถูกส่งด้วยการเข้ารหัสอักขระแบบ %S ซึ่งไม่สามารถเข้ารหัสอักขระยูนิโค้ดทั้งหมดได้ อาจทำให้ข้อมูลที่ผู้ใช้ป้อนเสียหายได้ การหลีกเลี่ยงปัญหานี้ทำได้โดยเปลี่ยนให้หน้าเว็บส่งข้อมูลด้วยการเข้ารหัสอักขระแบบ UTF-8 ซึ่งทำได้โดยเปลี่ยนการเข้ารหัสอักขระของหน้าเว็บให้เป็น UTF-8 หรือระบุ accept-charset=utf-8 ข้างในฟอร์ม
+AllSupportedTypes=ประเภทที่รองรับทั้งหมด
+# LOCALIZATION NOTE (NoFileSelected): this string is shown on a
+# <input type='file'> when there is no file selected yet.
+NoFileSelected=ไม่มีไฟล์ที่ถูกเลือก
+# LOCALIZATION NOTE (NoFilesSelected): this string is shown on a
+# <input type='file' multiple> when there is no file selected yet.
+NoFilesSelected=ไม่มีไฟล์ที่ถูกเลือก
+# LOCALIZATION NOTE (NoDirSelected): this string is shown on a
+# <input type='file' directory/webkitdirectory> when there is no directory
+# selected yet.
+NoDirSelected=ไม่มีไดเรกทอรีที่ถูกเลือก
+# LOCALIZATION NOTE (XFilesSelected): this string is shown on a
+# <input type='file' multiple> when there are more than one selected file.
+# %S will be a number greater or equal to 2.
+XFilesSelected=%S ไฟล์ถูกเลือก
+ColorPicker=เลือกสี
+# LOCALIZATION NOTE (AndNMoreFiles): Semi-colon list of plural forms.
+# See: http://developer.mozilla.org/en/docs/Localization_and_Plurals
+# This string is shown at the end of the tooltip text for <input type='file'
+# multiple> when there are more than 21 files selected (when we will only list
+# the first 20, plus an "and X more" line). #1 represents the number of files
+# minus 20 and will always be a number equal to or greater than 2. So the
+# singular case will never be used.
+AndNMoreFiles=และเพิ่มเติมอีก #1
+# LOCALIZATION NOTE (DefaultSummary): this string is shown on a <details> when
+# it has no direct <summary> child. Google Chrome should already have this
+# string translated.
+DefaultSummary=รายละเอียด
diff --git a/l10n-th/dom/chrome/layout/MediaDocument.properties b/l10n-th/dom/chrome/layout/MediaDocument.properties
new file mode 100644
index 0000000000..a3963f25b2
--- /dev/null
+++ b/l10n-th/dom/chrome/layout/MediaDocument.properties
@@ -0,0 +1,22 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+#LOCALIZATION NOTE (ImageTitleWithDimensions2AndFile): first %S is filename, second %S is type, third %S is width and fourth %S is height
+#LOCALIZATION NOTE (ImageTitleWithoutDimensions): first %S is filename, second %S is type
+#LOCALIZATION NOTE (ImageTitleWithDimensions2): first %S is type, second %S is width and third %S is height
+#LOCALIZATION NOTE (ImageTitleWithNeitherDimensionsNorFile): first %S is type
+#LOCALIZATION NOTE (MediaTitleWithFile): first %S is filename, second %S is type
+#LOCALIZATION NOTE (MediaTitleWithNoInfo): first %S is type
+ImageTitleWithDimensions2AndFile=%S (ภาพ %S, %S × %S พิกเซล)
+ImageTitleWithoutDimensions=%S (ภาพ %S)
+ImageTitleWithDimensions2=(ภาพ %S, %S × %S พิกเซล)
+ImageTitleWithNeitherDimensionsNorFile=(ภาพ %S)
+MediaTitleWithFile=%S (วัตถุ %S)
+MediaTitleWithNoInfo=(วัตถุ %S)
+
+InvalidImage=ไม่สามารถแสดงผลภาพ “%S” เนื่องจากมีข้อผิดพลาด
+UnsupportedImage=ไม่สามารถแสดงภาพ “%S” ได้เนื่องจากต้องใช้คุณสมบัติที่ไม่รองรับ
+ScaledImage=สัดส่วน (%S%%)
+
+TitleWithStatus=%S - %S
diff --git a/l10n-th/dom/chrome/layout/css.properties b/l10n-th/dom/chrome/layout/css.properties
new file mode 100644
index 0000000000..ee2b9f02d8
--- /dev/null
+++ b/l10n-th/dom/chrome/layout/css.properties
@@ -0,0 +1,46 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+MimeNotCss=ไม่สามารถโหลดแผ่นลักษณะ %1$S ได้เนื่องจากชนิด MIME เป็น “%2$S” ไม่ใช่ “text/css”
+MimeNotCssWarn=แผ่นลักษณะ %1$S ถูกโหลดเป็น CSS ถึงแม้ชนิด MIME เป็น “%2$S” ไม่ใช่ “text/css”
+
+PEDeclDropped=ยกเลิกการประกาศ
+PEDeclSkipped=ข้ามการประกาศถัดไป
+PEUnknownProperty=คุณสมบัติที่ไม่ทราบ '%1$S'
+PEValueParsingError=ผิดพลาดในการอ่านค่า '%1$S'.
+PEUnknownAtRule=ไม่รู้จัก at-rule หรือผิดพลาดขณะอ่าน at-rule '%1$S'.
+PEMQUnexpectedOperator=พบตัวดำเนินการที่ไม่คาดคิดในรายการสื่อ
+PEMQUnexpectedToken=พบโทเค็น ‘%1$S’ ที่ไม่คาดคิดในรายการสื่อ
+PEAtNSUnexpected=โทเค็นที่ไม่ได้คาดหวังใน @namespace: '%1$S'
+PEKeyframeBadName=คาดหวังตัวระบุสำหรับกฎของ @keyframes
+PEBadSelectorRSIgnored=ชุดกฎถูกเพิกเฉยเนื่องจาก selector ไม่ถูกต้อง
+PEBadSelectorKeyframeRuleIgnored=กฎของคีย์เฟรมถูกเพิกเฉยเนื่องจาก selector ไม่ถูกต้อง
+PESelectorGroupNoSelector=คาดหวัง selector
+PESelectorGroupExtraCombinator=Dangling combinator.
+PEClassSelNotIdent=คาดหวังตัวระบุสำหรับคลาส selector แต่พบ '%1$S'
+PETypeSelNotType=คาดหวังส่วนประกอบชื่อหรือ '*' แต่พบ '%1$S'
+PEUnknownNamespacePrefix=ไม่ทราบคำนำ namespace '%1$S'
+PEAttributeNameExpected=คาดหวังตัวระบุสำหรับชื่อคุณลักษณะแต่พบ '%1$S'
+PEAttributeNameOrNamespaceExpected=คาดหวังชื่อคุณลักษณะหรือ namespace แต่พบ '%1$S'
+PEAttSelNoBar=คาดหวัง '|' แต่พบ '%1$S'
+PEAttSelUnexpected=โทเค็นไม่คาดหวังในคุณลักษณะ selector: '%1$S'
+PEAttSelBadValue=คาดหวังตัวระบุหรือสายอักขระสำหรับค่าในคุณลักษณะ selector แต่พบ '%1$S'
+PEPseudoSelBadName=คาดหวังตัวระบุสำหรับ pseudo-class หรือ pseudo-element แต่พบ '%1$S'
+PEPseudoSelEndOrUserActionPC=คาดหวังจุดสิ้นสุดของ selector หรือ user action pseudo-class หลังจาก pseudo-element แต่พบ ‘%1$S’
+PEPseudoSelUnknown=คลาสแฝงหรือองค์ประกอบแฝงที่ไม่รู้จัก ‘%1$S’
+PEPseudoClassArgNotIdent=คาดหวังตัวระบุสำหรับพารามีเตอร์ pseudo-class parameter แต่พบ '%1$S'
+PEColorNotColor=คาดหวัง color แต่พบ '%1$S'
+PEParseDeclarationDeclExpected=คาดหวังการประกาศแต่พบ '%1$S'
+PEUnknownFontDesc=descriptor ที่ไม่รู้จัก '%1$S' ในกฎ @font-face
+PEMQExpectedFeatureName=คาดหวังชื่อคุณสมบัติสื่อแต่พบ '%1$S'
+PEMQNoMinMaxWithoutValue=ต้องระบุค่าให้คุณสมบัติสื่อ ที่มี min- หรือ max-
+PEMQExpectedFeatureValue=พบค่าของคุณสมบัติสื่อที่ใช้ไม่ได้
+PEExpectedNoneOrURL=Expected 'none' or URL but found '%1$S'.
+PEExpectedNoneOrURLOrFilterFunction=Expected 'none', URL, or filter function but found '%1$S'.
+PEDisallowedImportRule=กฎ @import ยังไม่สามารถใช้ได้ในสไตล์ชีตที่สร้างขึ้น
+
+PENeverMatchingHostSelector=ตัวเลือก :host ใน ‘%S’ มีฟีเจอร์อื่นอีกและจะไม่ตรงกัน คุณอาจตั้งใจใช้งาน :host() หรือไม่
+
+TooLargeDashedRadius=รัศมีเส้นขอบใหญ่เกินไปสำหรับสไตล์ ‘dashed’ (ขีดจำกัดคือ 100000px) จึงแสดงผลแบบ solid
+TooLargeDottedRadius=รัศมีเส้นขอบใหญ่เกินไปสำหรับสไตล์ ‘dotted’ (ขีดจำกัดคือ 100000px) จึงแสดงผลแบบ solid
diff --git a/l10n-th/dom/chrome/layout/htmlparser.properties b/l10n-th/dom/chrome/layout/htmlparser.properties
new file mode 100644
index 0000000000..4cb9e9f7ed
--- /dev/null
+++ b/l10n-th/dom/chrome/layout/htmlparser.properties
@@ -0,0 +1,144 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Encoding warnings and errors
+EncNoDeclarationFrame=เอกสารภายในเฟรมไม่ได้ประกาศการเข้ารหัสอักขระ การแสดงผลเอกสารอาจต่างออกไปถ้าหากเปิดดูโดยไม่อยู่ในเฟรมของเอกสารอื่น
+EncXmlDecl=รหัสอักขระของเอกสาร HTML ถูกประกาศโดยใช้ไวยากรณ์ในการประกาศแบบ XML ซึ่งไม่เป็นไปตามข้อกำหนด และการประกาศรหัสอักขระโดยใช้แท็ก meta ที่จุดเริ่มต้นของส่วน head จะมีประสิทธิภาพมากกว่า
+EncMetaTooLate=พบแท็ก meta ที่พยายามประกาศรหัสอักขระช้าเกินไป และได้เดารหัสอักขระจากเนื้อหาแทน แท็ก meta จะต้องถูกย้ายไปอยู่ที่จุดเริ่มต้นของส่วน head ของเอกสาร
+EncMetaTooLateFrame=พบแท็ก meta ที่พยายามประกาศรหัสอักขระช้าเกินไป และได้ใช้รหัสอักขระของเอกสารแม่แทน แท็ก meta จะต้องถูกย้ายไปอยู่ที่จุดเริ่มต้นของส่วน head ของเอกสาร
+EncMetaAfterHeadInKilobyte=แท็ก meta ที่ประกาศรหัสอักขระของเอกสารควรจะถูกย้ายไปที่จุดเริ่มต้นของส่วน head ของเอกสาร
+EncNoDecl=ไม่ได้ประกาศรหัสอักขระของเอกสาร จึงได้เดารหัสอักขระจากเนื้อหาแทน รหัสอักขระจะต้องถูกประกาศในส่วนหัว HTTP Content-Type โดยใช้แท็ก meta หรือโดยใช้เครื่องหมายลำดับไบต์
+EncNoDeclPlain=ไม่ได้ประกาศรหัสอักขระของเอกสาร จึงได้เดารหัสอักขระจากเนื้อหาแทน รหัสอักขระจะต้องถูกประกาศในส่วนหัว HTTP Content-Type โดยใช้เครื่องหมายลำดับไบต์
+EncMetaUnsupported=เอกสาร HTML ประกาศการเข้ารหัสอักขระที่ไม่สนับสนุนโดยใช้แท็ก meta การประกาศนี้จะไม่มีผล
+EncProtocolUnsupported=เอกสาร HTML ประกาศการเข้ารหัสอักขระที่ไม่สนับสนุนในระดับโปรโตคอลการส่งข้อมูล การประกาศนี้จะไม่มีผล
+EncMetaUtf16=แท็ก meta ถูกใช้ประกาศการเข้ารหัสอักขระเป็นแบบ UTF-16 จะถูกตีความว่าเป็นการประกาศแบบ UTF-8 แทน
+EncMetaUserDefined=แท็ก meta ถูกใช้ประกาศการเข้ารหัสอักขระเป็นแบบ x-user-defined จะถูกตีความว่าเป็นการประกาศแบบ windows-1252 แทนเพื่อให้เข้ากันได้กับแบบอักษรแบบเก่าซึ่งเข้ารหัสอักขระผิดโดยตั้งใจ ไซต์นี้ควรเปลี่ยนไปใช้รหัสอักขระแบบ Unicode
+EncMetaReplacement=แท็ก meta ถูกใช้เพื่อประกาศรหัสอักขระที่เป็นอันตรายต่อการเขียนสคริปต์แบบข้ามไซต์ (cross-site scripting) จึงใช้รหัสอักขระทดแทน
+EncProtocolReplacement=รหัสอักขระที่เป็นอันตรายต่อการเขียนสคริปต์แบบข้ามไซต์ (cross-site scripting) ถูกประกาศที่ระดับโปรโตคอลการถ่ายโอน จึงใช้รหัสอักขระทดแทน
+EncDetectorReload=ไม่ได้ประกาศรหัสอักขระของเอกสาร และได้เดารหัสอักขระจากเนื้อหา ซึ่งส่งผลให้เอกสารถูกโหลดซ้ำ รหัสอักขระจะต้องถูกประกาศในส่วนหัว HTTP Content-Type โดยใช้แท็ก meta หรือโดยใช้เครื่องหมายลำดับไบต์
+EncDetectorReloadPlain=ไม่ได้ประกาศรหัสอักขระของเอกสาร และได้เดารหัสอักขระจากเนื้อหา ซึ่งส่งผลให้เอกสารถูกโหลดซ้ำ รหัสอักขระจะต้องถูกประกาศในส่วนหัว HTTP Content-Type หรือโดยใช้เครื่องหมายลำดับไบต์
+EncError=สตรีมไบต์มีข้อผิดพลาดตามรหัสอักขระที่ประกาศ การประกาศรหัสอักขระอาจไม่ถูกต้อง
+EncErrorFrame=สตรีมไบต์มีข้อผิดพลาดตามรหัสอักขระที่สืบทอดมาจากเอกสารแม่ รหัสอักขระจะต้องถูกประกาศในส่วนหัว HTTP Content-Type โดยใช้แท็ก meta หรือโดยใช้เครื่องหมายลำดับไบต์
+EncErrorFramePlain=สตรีมไบต์มีข้อผิดพลาดตามรหัสอักขระที่สืบทอดมาจากเอกสารแม่ รหัสอักขระจะต้องถูกประกาศในส่วนหัว HTTP Content-Type หรือโดยใช้เครื่องหมายลำดับไบต์
+EncSpeculationFailMeta=ส่วนเริ่มต้นของเอกสารถูกแยกวิเคราะห์ใหม่ เนื่องจากมีอักขระที่ไม่ใช่ ASCII ก่อนแท็ก meta ที่ประกาศรหัสอักขระไว้ meta ควรเป็นแท็กลูกแท็กแรกของส่วนหัวที่ไม่มีคำอธิบายที่ไม่ใช่ ASCII มาก่อน
+EncSpeculationFailXml=ส่วนเริ่มต้นของเอกสารถูกแยกวิเคราะห์ใหม่ เนื่องจากมีอักขระที่ไม่ใช่ ASCII ในส่วนของเอกสารที่ค้นหาแท็ก meta ไม่สำเร็จก่อนที่จะถอยกลับไปใช้ไวยาการณ์การประกาศแบบ XML ควรใช้แท็ก meta ที่ส่วนเริ่มต้นของส่วนหัวแทนไวยากรณ์การประกาศแบบ XML
+# The audience of the following message isn't the author of the document but other people debugging browser behavior.
+EncSpeculationFail2022=ส่วนเริ่มต้นของเอกสารถูกแยกวิเคราะห์ใหม่ เนื่องจาก ISO-2022-JP เป็นรหัสอักขระที่ไม่เข้ากับ ASCII
+
+# The bulk of the messages below are derived from
+# https://hg.mozilla.org/projects/htmlparser/file/1f633cef7de7/src/nu/validator/htmlparser/impl/ErrorReportingTokenizer.java
+# which is available under the MIT license.
+
+# Tokenizer errors
+errGarbageAfterLtSlash=พบเนื้อหาที่ไม่ถูกต้องหลังจาก “</”
+errLtSlashGt=Saw “</>”. Probable causes: Unescaped “<” (escape as “&lt;”) or mistyped end tag.
+errCharRefLacksSemicolon=Character reference was not terminated by a semicolon.
+errNoDigitsInNCR=No digits in numeric character reference.
+errGtInSystemId=“>” ในตัวระบุระบบ
+errGtInPublicId=“>” ในตัวระบุสาธารณะ
+errNamelessDoctype=Nameless doctype.
+errConsecutiveHyphens=Consecutive hyphens did not terminate a comment. “--” is not permitted inside a comment, but e.g. “- -” is.
+errPrematureEndOfComment=Premature end of comment. Use “-->” to end a comment properly.
+errBogusComment=Bogus comment.
+errUnquotedAttributeLt=“<” in an unquoted attribute value. Probable cause: Missing “>” immediately before.
+errUnquotedAttributeGrave=“`” in an unquoted attribute value. Probable cause: Using the wrong character as a quote.
+errUnquotedAttributeQuote=Quote in an unquoted attribute value. Probable causes: Attributes running together or a URL query string in an unquoted attribute value.
+errUnquotedAttributeEquals=“=” in an unquoted attribute value. Probable causes: Attributes running together or a URL query string in an unquoted attribute value.
+errSlashNotFollowedByGt=A slash was not immediately followed by “>”.
+errNoSpaceBetweenAttributes=No space between attributes.
+errUnquotedAttributeStartLt=“<” at the start of an unquoted attribute value. Probable cause: Missing “>” immediately before.
+errUnquotedAttributeStartGrave=“`” at the start of an unquoted attribute value. Probable cause: Using the wrong character as a quote.
+errUnquotedAttributeStartEquals=“=” at the start of an unquoted attribute value. Probable cause: Stray duplicate equals sign.
+errAttributeValueMissing=ค่าแอตทริบิวต์ขาดหายไป
+errBadCharBeforeAttributeNameLt=Saw “<” when expecting an attribute name. Probable cause: Missing “>” immediately before.
+errEqualsSignBeforeAttributeName=Saw “=” when expecting an attribute name. Probable cause: Attribute name missing.
+errBadCharAfterLt=Bad character after “<”. Probable cause: Unescaped “<”. Try escaping it as “&lt;”.
+errLtGt=Saw “<>”. Probable causes: Unescaped “<” (escape as “&lt;”) or mistyped start tag.
+errProcessingInstruction=พบ “<?” สาเหตุที่เป็นไปได้: พยายามใช้คำสั่งการประมวลผล XML ใน HTML (ไม่รองรับคำสั่งการประมวลผล XML ใน HTML)
+errUnescapedAmpersandInterpretedAsCharacterReference=The string following “&” was interpreted as a character reference. (“&” probably should have been escaped as “&amp;”.)
+errNotSemicolonTerminated=Named character reference was not terminated by a semicolon. (Or “&” should have been escaped as “&amp;”.)
+errNoNamedCharacterMatch=“&” did not start a character reference. (“&” probably should have been escaped as “&amp;”.)
+errQuoteBeforeAttributeName=Saw a quote when expecting an attribute name. Probable cause: “=” missing immediately before.
+errLtInAttributeName=“<” in attribute name. Probable cause: “>” missing immediately before.
+errQuoteInAttributeName=Quote in attribute name. Probable cause: Matching quote missing somewhere earlier.
+errExpectedPublicId=Expected a public identifier but the doctype ended.
+errBogusDoctype=Bogus doctype.
+maybeErrAttributesOnEndTag=End tag had attributes.
+maybeErrSlashInEndTag=Stray “/” at the end of an end tag.
+errNcrNonCharacter=Character reference expands to a non-character.
+errNcrSurrogate=Character reference expands to a surrogate.
+errNcrControlChar=Character reference expands to a control character.
+errNcrCr=A numeric character reference expanded to carriage return.
+errNcrInC1Range=A numeric character reference expanded to the C1 controls range.
+errEofInPublicId=End of file inside public identifier.
+errEofInComment=End of file inside comment.
+errEofInDoctype=End of file inside doctype.
+errEofInAttributeValue=End of file reached when inside an attribute value. Ignoring tag.
+errEofInAttributeName=End of file occurred in an attribute name. Ignoring tag.
+errEofWithoutGt=Saw end of file without the previous tag ending with “>”. Ignoring tag.
+errEofInTagName=End of file seen when looking for tag name. Ignoring tag.
+errEofInEndTag=End of file inside end tag. Ignoring tag.
+errEofAfterLt=End of file after “<”.
+errNcrOutOfRange=Character reference outside the permissible Unicode range.
+errNcrUnassigned=Character reference expands to a permanently unassigned code point.
+errDuplicateAttribute=Duplicate attribute.
+errEofInSystemId=End of file inside system identifier.
+errExpectedSystemId=Expected a system identifier but the doctype ended.
+errMissingSpaceBeforeDoctypeName=Missing space before doctype name.
+errNestedComment=พบ “<!--” ในความคิดเห็น สาเหตุที่เป็นไปได้: ความคิดเห็นที่ซ้อนกัน (ไม่อนุญาต)
+errNcrZero=Character reference expands to zero.
+errNoSpaceBetweenDoctypeSystemKeywordAndQuote=No space between the doctype “SYSTEM” keyword and the quote.
+errNoSpaceBetweenPublicAndSystemIds=No space between the doctype public and system identifiers.
+errNoSpaceBetweenDoctypePublicKeywordAndQuote=No space between the doctype “PUBLIC” keyword and the quote.
+
+# Tree builder errors
+errDeepTree=ทรีเอกสารลึกเกินไป ทรีจะถูกลดขนาดให้เหลือความลึกเพียง 513 องค์ประกอบ
+errStrayStartTag2=Stray start tag “%1$S”.
+errStrayEndTag=Stray end tag “%1$S”.
+errUnclosedElements=End tag “%1$S” seen, but there were open elements.
+errUnclosedElementsImplied=End tag “%1$S” implied, but there were open elements.
+errUnclosedElementsCell=A table cell was implicitly closed, but there were open elements.
+errStrayDoctype=Stray doctype.
+errAlmostStandardsDoctype=Almost standards mode doctype. Expected “<!DOCTYPE html>”.
+errQuirkyDoctype=Quirky doctype. Expected “<!DOCTYPE html>”.
+errAlmostStandardsDoctypeVerbose=หน้านี้อยู่ในโหมดเกือบมาตรฐาน เค้าโครงหน้าอาจได้รับผลกระทบ สำหรับโหมดมาตรฐาน ให้ใช้ “<!DOCTYPE html>”
+errQuirkyDoctypeVerbose=หน้านี้อยู่ในโหมด Quirks เค้าโครงหน้าอาจได้รับผลกระทบ สำหรับโหมดมาตรฐาน ให้ใช้ “<!DOCTYPE html>”
+errNonSpaceInTrailer=Non-space character in page trailer.
+errNonSpaceAfterFrameset=Non-space after “frameset”.
+errNonSpaceInFrameset=Non-space in “frameset”.
+errNonSpaceAfterBody=Non-space character after body.
+errNonSpaceInColgroupInFragment=Non-space in “colgroup” when parsing fragment.
+errNonSpaceInNoscriptInHead=Non-space character inside “noscript” inside “head”.
+errFooBetweenHeadAndBody=“%1$S” element between “head” and “body”.
+errStartTagWithoutDoctype=Start tag seen without seeing a doctype first. Expected “<!DOCTYPE html>”.
+errNoSelectInTableScope=No “select” in table scope.
+errStartSelectWhereEndSelectExpected=“select” start tag where end tag expected.
+errStartTagWithSelectOpen=“%1$S” start tag with “select” open.
+errBadStartTagInNoscriptInHead=แท็กเริ่มต้น “%1$S” ใน “noscript” ใน “head” ไม่ถูกต้อง
+errImage=Saw a start tag “image”.
+errFooSeenWhenFooOpen2=เห็นแท็กเริ่มต้น “%1$S” แล้วแต่องค์ประกอบของชนิดเดียวกันถูกเปิดไว้อยู่แล้ว
+errHeadingWhenHeadingOpen=Heading cannot be a child of another heading.
+errFramesetStart=“frameset” start tag seen.
+errNoCellToClose=No cell to close.
+errStartTagInTable=Start tag “%1$S” seen in “table”.
+errFormWhenFormOpen=Saw a “form” start tag, but there was already an active “form” element. Nested forms are not allowed. Ignoring the tag.
+errTableSeenWhileTableOpen=Start tag for “table” seen but the previous “table” is still open.
+errStartTagInTableBody=“%1$S” start tag in table body.
+errEndTagSeenWithoutDoctype=End tag seen without seeing a doctype first. Expected “<!DOCTYPE html>”.
+errEndTagAfterBody=Saw an end tag after “body” had been closed.
+errEndTagSeenWithSelectOpen=“%1$S” end tag with “select” open.
+errGarbageInColgroup=Garbage in “colgroup” fragment.
+errEndTagBr=End tag “br”.
+errNoElementToCloseButEndTagSeen=No “%1$S” element in scope but a “%1$S” end tag seen.
+errHtmlStartTagInForeignContext=HTML start tag “%1$S” in a foreign namespace context.
+errNoTableRowToClose=No table row to close.
+errNonSpaceInTable=Misplaced non-space characters inside a table.
+errUnclosedChildrenInRuby=Unclosed children in “ruby”.
+errStartTagSeenWithoutRuby=Start tag “%1$S” seen without a “ruby” element being open.
+errSelfClosing=Self-closing syntax (“/>”) used on a non-void HTML element. Ignoring the slash and treating as a start tag.
+errNoCheckUnclosedElementsOnStack=Unclosed elements on stack.
+errEndTagDidNotMatchCurrentOpenElement=End tag “%1$S” did not match the name of the current open element (“%2$S”).
+errEndTagViolatesNestingRules=End tag “%1$S” violates nesting rules.
+errEndWithUnclosedElements=พบแท็กปิดท้ายสำหรับ “%1$S” แต่มีองค์ประกอบที่ยังไม่ได้ปิด
+errListUnclosedStartTags=องค์ประกอบที่ไม่ได้ปิด
diff --git a/l10n-th/dom/chrome/layout/layout_errors.properties b/l10n-th/dom/chrome/layout/layout_errors.properties
new file mode 100644
index 0000000000..0ca3c50caf
--- /dev/null
+++ b/l10n-th/dom/chrome/layout/layout_errors.properties
@@ -0,0 +1,55 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+ImageMapRectBoundsError=แอตทริบิวต์ "coords" ของแท็ก <area shape="rect"> ไม่ได้อยู่ในรูปแบบ "left,top,right,bottom".
+ImageMapCircleWrongNumberOfCoords=แอตทริบิวต์ "coords" ของแท็ก <area shape="circle"> ไม่ได้อยู่ในรูปแบบ "center-x,center-y,radius".
+ImageMapCircleNegativeRadius=แอตทริบิวต์ "coords" ของแท็ก <area shape="circle"> มีค่ารัศมีติดลบ.
+ImageMapPolyWrongNumberOfCoords=แอตทริบิวต์ "coords" ของแท็ก <area shape="poly"> ไม่ได้อยู่ในรูปแบบ"x1,y1,x2,y2 …".
+ImageMapPolyOddNumberOfCoords=แอตทริบิวต์ "coords" ของแท็ก <area shape="poly"> ขาดพิกัด "y" ตัวสุดท้ายไป (รูปแบบที่ถูกต้องคือ "x1,y1,x2,y2 …").
+
+TablePartRelPosWarning=ตอนนี้รองรับการวางตำแหน่งเชิงสัมพันธ์ของแถวของตารางและกลุ่มแถวแล้ว ไซต์นี้อาจต้องอัปเดตเนื่องจากอาจขึ้นอยู่กับคุณลักษณะนี้ที่ไม่มีผล
+
+ScrollLinkedEffectFound3=ไซต์นี้ดูเหมือนจะใช้เอฟเฟ็กต์การวางตำแหน่งที่เชื่อมโยงกับการเลื่อน คุณลักษณะนี้อาจทำงานได้ไม่ดีกับการแพนแบบอะซิงโครนัส ดู https://firefox-source-docs.mozilla.org/performance/scroll-linked_effects.html สำหรับรายละเอียดเพิ่มเติมและเข้าร่วมการสนทนาเกี่ยวกับเครื่องมือและคุณลักษณะที่เกี่ยวข้อง!
+
+## LOCALIZATION NOTE(CompositorAnimationWarningContentTooLargeArea):
+## %1$S is an integer value of the area of the frame
+## %2$S is an integer value of the area of a limit based on the viewport size
+CompositorAnimationWarningContentTooLargeArea=ไม่สามารถเรียกใช้ภาพเคลื่อนไหวบนคอมโพสิเตอร์ได้เนื่องจากพื้นที่ของเฟรม (%1$S) มีขนาดใหญ่เกินไปเมื่อเทียบกับกรอบการมองเห็น (มีขนาดใหญ่กว่า %2$S)
+## LOCALIZATION NOTE(CompositorAnimationWarningContentTooLarge2):
+## (%1$S, %2$S) is a pair of integer values of the frame size
+## (%3$S, %4$S) is a pair of integer values of a limit based on the viewport size
+## (%5$S, %6$S) is a pair of integer values of an absolute limit
+CompositorAnimationWarningContentTooLarge2=ไม่สามารถเรียกใช้ภาพเคลื่อนไหวบนคอมโพสิเตอร์ได้เนื่องจากขนาดเฟรม (%1$S, %2$S) มีขนาดเชิงสัมพันธ์ใหญ่เกินกว่ากรอบการมองเห็น (มีขนาดใหญ่กว่า (%3$S, %4$S)) หรือมีขนาดใหญ่กว่าค่าที่อนุญาตสูงสุด (%5$S, %6$S)
+## LOCALIZATION NOTE(CompositorAnimationWarningTransformBackfaceVisibilityHidden):
+## 'backface-visibility: hidden' is a CSS property, don't translate it.
+CompositorAnimationWarningTransformBackfaceVisibilityHidden=ไม่สามารถเรียกใช้ภาพเคลื่อนไหวการแปลง ‘backface-visibility: hidden’ บนคอมโพสิเตอร์ได้
+## LOCALIZATION NOTE(CompositorAnimationWarningTransformSVG,
+## CompositorAnimationWarningTransformWithGeometricProperties,
+## CompositorAnimationWarningTransformWithSyncGeometricAnimations,
+## CompositorAnimationWarningTransformFrameInactive,
+## CompositorAnimationWarningOpacityFrameInactive):
+## 'transform' and 'opacity' mean CSS property names, don't translate it.
+CompositorAnimationWarningTransformSVG=ไม่สามารถเรียกใช้ภาพเคลื่อนไหวการแปลง ‘transform’ ที่อยู่บนองค์ประกอบที่มี SVG บนคอมโพสิเตอร์ได้
+CompositorAnimationWarningTransformWithGeometricProperties=ไม่สามารถเรียกใช้ภาพเคลื่อนไหว ‘transform’ บนคอมโพสิเตอร์เมื่อคุณสมบัติเมื่อคุณสมบัติด้านเรขาคณิตเคลื่อนไหวอยู่บนองค์ประกอบเดียวกันในเวลาเดียวกันได้
+CompositorAnimationWarningTransformWithSyncGeometricAnimations=ไม่สามารถเรียกใช้ภาพเคลื่อนไหว ‘transform’ บนคอมโพสิเตอร์ได้เนื่องจากควรซิงโครไนซ์กับภาพเคลื่อนไหวคุณสมบัติด้านเรขาคณิตซึ่งเริ่มที่เวลาเดียวกัน
+CompositorAnimationWarningTransformFrameInactive=ไม่สามารถเรียกใช้ภาพเคลื่อนไหวบนคอมโพสิเตอร์ได้เนื่องจากเฟรมไม่ได้ถูกทำเครื่องหมายว่าใช้งานอยู่สำหรับภาพเคลื่อนไหว ‘transform’
+CompositorAnimationWarningTransformIsBlockedByImportantRules=ไม่สามารถเรียกใช้ภาพเคลื่อนไหว transform บนคอมโพสิเตอร์ได้เนื่องจากคุณสมบัติที่เกี่ยวข้องกับ transform ถูกเขียนทับโดยกฎ !important
+CompositorAnimationWarningOpacityFrameInactive=ไม่สามารถเรียกใช้ภาพเคลื่อนไหวบนคอมโพสิเตอร์ได้เนื่องจากเฟรมไม่ได้ถูกทำเครื่องหมายว่าใช้งานอยู่สำหรับภาพเคลื่อนไหว ‘opacity’
+CompositorAnimationWarningHasRenderingObserver=ไม่สามารถเรียกใช้ภาพเคลื่อนไหวบนคอมโพสิเตอร์ได้เนื่องจากองค์ประกอบมีตัวสังเกตการแสดงผล (-moz-element หรือ SVG clipping/masking)
+CompositorAnimationWarningHasCurrentColor=ไม่สามารถเรียกใช้ภาพเคลื่อนไหวของ ‘background-color’ บนตัวจัดวางองค์ประกอบด้วยคีย์เฟรม ‘current-color’ ได้
+
+## LOCALIZATION NOTE: Do not translate zoom, calc(), "transform", "transform-origin: 0 0"
+ZoomPropertyWarning=หน้านี้ใช้คุณสมบัติ “zoom” ซึ่งไม่ใช่มาตรฐาน พิจารณาใช้ calc() ในค่าคุณสมบัติที่สัมพันธ์กัน หรือใช้ “transform” ควบคู่กับ “transform-origin: 0 0”
+
+## LOCALIZATION NOTE(PrincipalWritingModePropagationWarning):
+## Do not translate <html>, <body>, CSS, "writing-mode", "direction", "text-orientation", :root, and "The Principal Writing Mode" because they are technical terms.
+PrincipalWritingModePropagationWarning=เมื่อแสดงผลองค์ประกอบ <html> ค่าของคุณสมบัติ CSS “writing-mode”, “direction”, และ “text-orientation” ที่ถูกใช้บนองค์ประกอบ <html> จะถูกนำมาจากค่าขององค์ประกอบ <body> ที่คำนวณแล้ว ไม่ใช่จากค่าขององค์ประกอบ <html> เอง พิจารณาตั้งค่าคุณสมบัติเหล่านี้บนคลาสแฝง CSS ใน :root สำหรับข้อมูลเพิ่มเติม ให้ดูที่ “The Principal Writing Mode” ใน https://www.w3.org/TR/css-writing-modes-3/#principal-flow
+
+## LOCALIZATION NOTE(ScrollAnchoringDisabledInContainer):
+## %1$S is an integer value with the total number of adjustments
+## %2$S is a floating point value with the average distance adjusted
+## %3$S is a floating point value with the total adjusted distance
+ScrollAnchoringDisabledInContainer=การกำหนดจุดยึดการเลื่อนถูกปิดใช้งานในคอนเทนเนอร์การเลื่อนเนื่องจากมีการปรับเปลี่ยนอย่างต่อเนื่องมากเกินไป (%1$S) พร้อมระยะทางรวมที่น้อยเกินไป (เฉลี่ย %2$S px, รวม %3$S px)
+
+ForcedLayoutStart=เค้าโครงถูกบังคับก่อนที่หน้าจะโหลดอย่างครบถ้วน หากสไตล์ชีตยังไม่ถูกโหลด สิ่งนี้อาจทำให้เนื้อหาที่ไม่มีการจัดรูปแบบแสดงผลแบบกะพริบได้
diff --git a/l10n-th/dom/chrome/layout/printing.properties b/l10n-th/dom/chrome/layout/printing.properties
new file mode 100644
index 0000000000..0fca1f03b9
--- /dev/null
+++ b/l10n-th/dom/chrome/layout/printing.properties
@@ -0,0 +1,56 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Page number formatting
+## @page_number The current page number
+#LOCALIZATION NOTE (pagenumber): Do not translate %ld in the following line.
+# Place the word %ld where the page number and number of pages should be
+# The first %ld will receive the the page number
+pagenumber=%1$d
+
+# Page number formatting
+## @page_number The current page number
+## @page_total The total number of pages
+#LOCALIZATION NOTE (pageofpages): Do not translate %ld in the following line.
+# Place the word %ld where the page number and number of pages should be
+# The first %ld will receive the the page number
+# the second %ld will receive the total number of pages
+pageofpages=%1$d จาก %2$d
+
+PrintToFile=พิมพ์เป็นไฟล์
+print_error_dialog_title=ข้อผิดพลาดเครื่องพิมพ์
+printpreview_error_dialog_title=ข้อผิดพลาดตัวอย่างก่อนพิมพ์
+
+# Printing error messages.
+#LOCALIZATION NOTE: Some of these messages come in pairs, one
+# for printing and one for print previewing. You can remove that
+# distinction in your language by removing the entity with the _PP
+# suffix; then the entity without a suffix will be used for both.
+# You can also add that distinction to any of the messages that don't
+# already have it by adding a new entity with a _PP suffix.
+#
+# For instance, if you delete PERR_GFX_PRINTER_DOC_IS_BUSY_PP, then
+# the PERR_GFX_PRINTER_DOC_IS_BUSY message will be used for that error
+# condition when print previewing as well as when printing. If you
+# add PERR_FAILURE_PP, then PERR_FAILURE will only be used when
+# printing, and PERR_FAILURE_PP will be used under the same conditions
+# when print previewing.
+#
+PERR_FAILURE=เกิดข้อผิดพลาดขณะพิมพ์
+
+PERR_ABORT=งานพิมพ์ถูกขัดขวางหรือยกเลิก
+PERR_NOT_AVAILABLE=ฟังก์ชันการพิมพ์บางอย่างไม่พร้อมใช้งานในขณะนี้
+PERR_NOT_IMPLEMENTED=ฟังก์ชันการพิมพ์บางอย่างยังไม่มีการนำมาใช้
+PERR_OUT_OF_MEMORY=มีหน่วยความจำว่างไม่เพียงพอที่จะพิมพ์
+PERR_UNEXPECTED=เกิดปัญหาที่ไม่คาดคิดขณะพิมพ์
+
+PERR_GFX_PRINTER_NO_PRINTER_AVAILABLE=ไม่มีเครื่องพิมพ์
+PERR_GFX_PRINTER_NO_PRINTER_AVAILABLE_PP=ไม่มีเครื่องพิมพ์ ไม่สามารถแสดงตัวอย่างก่อนพิมพ์
+PERR_GFX_PRINTER_NAME_NOT_FOUND=ไม่พบเครื่องพิมพ์ที่เลือก
+PERR_GFX_PRINTER_COULD_NOT_OPEN_FILE=ไม่สามารถเปิดไฟล์ปลายทางสำหรับพิมพ์เป็นไฟล์
+PERR_GFX_PRINTER_STARTDOC=การพิมพ์ล้มเหลวขณะเริ่มงานพิมพ์
+PERR_GFX_PRINTER_ENDDOC=การพิมพ์ล้มเหลวขณะเสร็จสิ้นงานพิมพ์
+PERR_GFX_PRINTER_STARTPAGE=การพิมพ์ล้มเหลวขณะเริ่มหน้าใหม่
+PERR_GFX_PRINTER_DOC_IS_BUSY=ยังไม่สามารถพิมพ์เอกสารนี้ได้ เอกสารกำลังโหลดอยู่
+PERR_GFX_PRINTER_DOC_IS_BUSY_PP=เอกสารยังโหลดไม่เสร็จ ไม่สามารถแสดงตัวอย่างการพิมพ์ได้ในตอนนี้
diff --git a/l10n-th/dom/chrome/layout/xmlparser.properties b/l10n-th/dom/chrome/layout/xmlparser.properties
new file mode 100644
index 0000000000..5ee40d5953
--- /dev/null
+++ b/l10n-th/dom/chrome/layout/xmlparser.properties
@@ -0,0 +1,48 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Map Expat error codes to error strings
+1 = หน่วยความจำหมด
+2 = ผิดไวยากรณ์
+3 = ไม่พบองค์ประกอบราก
+4 = ไม่ถูกรูปแบบที่ดี
+5 = ไม่ได้ปิดโทเค็น
+6 = ส่วนของอักขระ
+7 = แท็กไม่เข้าคู่กัน
+8 = คุณลักษณะซ้ำซ้อน
+9 = มีขยะอยู่หลังเอลิเมนต์
+10 = อ้างถึงพารามิเตอร์ไม่ถูกต้อง
+11 = ไม่ได้ระบุเอนทิตี
+12 = อ้างถึงเอนทิตีวนซ้ำ
+13 = เอนทิตีไม่ประสานเวลา
+14 = อ้างถึงจำนวนอักขระไม่ถูกต้อง
+15 = อ้างถึงไบนารีเอนทิตี
+16 = อ้างถึงเอนทิตีภายนอก
+17 = ไม่ได้ประกาศข้อความหรือ XML ที่จุดเริ่มต้นเอนทิตี
+18 = ไม่รู้จักรหัสอักขระ
+19 = การประกาศรหัสอักขระในเอกสาร XML ไม่ถูกต้อง
+20 = ไม่ได้ปิดส่วน CDATA
+21 = มีความผิดพลาดในการประมวลผลอ้างอิงเอนทิตีภายนอก
+22 = เอกสารไม่เป็นเอกเทศ
+23 = ยังไม่มีสถานะตัวแจง
+24 = เอนทิตีถูกประกาศในเอนทิตีพารามิเตอร์
+27 = คำนำหน้าไม่ผูกกับเนมสเปซ
+28 = ไม่ต้องประกาศคำนำหน้า
+29 = มาร์กอัพในพารามิเตอร์เอนทิตีไม่สมบูรณ์
+30 = การประกาศรูปแบบเอกสาร XML ไม่เป็นแบบที่ถูกต้อง
+31 = text declaration not well-formed
+32 = illegal character(s) in public id
+38 = reserved prefix (xml) must not be undeclared or bound to another namespace name
+39 = reserved prefix (xmlns) must not be declared or undeclared
+40 = prefix must not be bound to one of the reserved namespace names
+
+# %1$S is replaced by the Expat error string, may be followed by Expected (see below)
+# %2$S is replaced by URL
+# %3$u is replaced by line number
+# %4$u is replaced by column number
+XMLParsingError = การแจกแจงเอกสาร XML ผิดพลาด : %1$S\nที่ตั้ง : %2$S\nบรรทัดที่ %3$u, คอลัมน์ %4$u :
+
+# %S is replaced by a tag name.
+# This gets appended to the error string if the error is mismatched tag.
+Expected = . คาดหวัง : </%S>.
diff --git a/l10n-th/dom/chrome/layout/xul.properties b/l10n-th/dom/chrome/layout/xul.properties
new file mode 100644
index 0000000000..34414b3c3a
--- /dev/null
+++ b/l10n-th/dom/chrome/layout/xul.properties
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+PINotInProlog=<?%1$S?> การประมวลผลคำสั่งจะไม่เกิดผลภายนอก prolog อีก (ดู bug 360119).
diff --git a/l10n-th/dom/chrome/mathml/mathml.properties b/l10n-th/dom/chrome/mathml/mathml.properties
new file mode 100644
index 0000000000..1724c4fecf
--- /dev/null
+++ b/l10n-th/dom/chrome/mathml/mathml.properties
@@ -0,0 +1,15 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+InvalidChild=มาร์กอัพไม่ถูกต้อง: <%1$S> ไม่ได้รับอนุญาตให้เป็น child ของ <%2$S>
+ChildCountIncorrect=มาร์กอัพไม่ถูกต้อง: จำนวนของ children สำหรับแท็ก <%1$S/> ไม่ถูกต้อง
+DuplicateMprescripts=มาร์กอัพไม่ถูกต้อง: มี <mprescripts/> มากกว่าหนึ่งใน <mmultiscripts/>
+# LOCALIZATION NOTE: The first child of <mmultiscript/> is the base, that is the element to which scripts are attached.
+NoBase=มาร์กอัพไม่ถูกต้อง: คาดหวัง Base element ตัวเดียวที่ถูกต้องใน <mmultiscripts/> ไม่พบอะไรเลย
+SubSupMismatch=มาร์กอัพไม่ถูกต้อง: คู่ของ subscript/superscript ใน <mmultiscripts/> ไม่สมบูรณ์
+
+# LOCALIZATION NOTE: When localizing the single quotes ('), follow the conventions in css.properties for your target locale.
+AttributeParsingError=ข้อผิดพลาดในการแจงค่า '%1$S' สำหรับ '%2$S' แอตทริบิวต์ของ <%3$S/> แอตทริบิวต์ถูกเพิกเฉย
+AttributeParsingErrorNoTag=ข้อผิดพลาดในการแจงค่า '%1$S' สำหรับ '%2$S' แอตทริบิวต์ แอตทริบิวต์ถูกเพิกเฉย
+LengthParsingError=ข้อผิดพลาดในการแจงค่าแอตทริบิวต์ MathML '%1$S' เป็นความยาว แอตทริบิวต์ถูกเพิกเฉย
diff --git a/l10n-th/dom/chrome/netError.dtd b/l10n-th/dom/chrome/netError.dtd
new file mode 100644
index 0000000000..a0ea0a247e
--- /dev/null
+++ b/l10n-th/dom/chrome/netError.dtd
@@ -0,0 +1,93 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY loadError.label "ข้อผิดพลาดการโหลดหน้า">
+<!ENTITY retry.label "ลองอีกครั้ง">
+
+<!-- Specific error messages -->
+
+<!ENTITY connectionFailure.title "การเชื่อมต่อล้มเหลว">
+<!ENTITY connectionFailure.longDesc "<p>แม้ว่าไซต์ดูเหมือนจะถูกต้อง แต่เบราว์เซอร์ไม่สามารถสร้างการเชื่อมต่อได้</p><ul><li>ไซต์อาจไม่พร้อมใช้งานชั่วคราว? ลองอีกครั้งในภายหลัง</li><li>คุณไม่สามารถเรียกดูไซต์อื่น ๆ ได้? ตรวจสอบการเชื่อมต่อเครือข่ายของคอมพิวเตอร์</li><li>คอมพิวเตอร์หรือเครือข่ายของคุณถูกปกป้องด้วยไฟร์วอลล์หรือพร็อกซี? การตั้งค่าที่ไม่ถูกต้องสามารถรบกวนการเรียกดูเว็บได้</li></ul>">
+
+<!ENTITY deniedPortAccess.title "พอร์ตถูกจำกัดด้วยเหตุผลด้านความปลอดภัย">
+<!ENTITY deniedPortAccess.longDesc "<p>ที่อยู่ที่ขอได้ระบุพอร์ต (เช่น <q>mozilla.org:80</q> สำหรับพอร์ต 80 บน mozilla.org) ซึ่งโดยปกติจะใช้เพื่อวัตถุประสงค์ <em>อื่น</em> ที่ไม่ใช่การเรียกดูเว็บ เบราว์เซอร์ได้ยกเลิกคำขอดังกล่าวเพื่อปกป้องคุณและเพื่อความปลอดภัย</p>">
+
+<!ENTITY dnsNotFound.title "ไม่พบที่อยู่">
+<!ENTITY dnsNotFound.longDesc "<p>เบราว์เซอร์ไม่สามารถค้นหาเซิร์ฟเวอร์โฮสต์สำหรับที่อยู่ที่ให้มา</p><ul><li>คุณอาจป้อนชื่อโดเมนผิดขณะกำลังพิมพ์? (ตัวอย่าง <q><strong>ww</strong>.mozilla.org</q> แทนที่จะเป็น <q><strong>www</strong>.mozilla.org</q>)</li><li>คุณแน่ใจหรือไม่ว่าที่อยู่โดเมนนี้มีอยู่จริง? การลงทะเบียนโดเมนอาจหมดอายุ</li><li>คุณไม่สามารถเรียกดูไซต์อื่น? ตรวจสอบการเชื่อมต่อเครือข่ายและการตั้งค่าเซิร์ฟเวอร์ DNS ของคุณ</li><li>คอมพิวเตอร์หรือเครือข่ายของคุณมีไฟร์วอลล์หรือพร็อกซีปกป้องอยู่? การตั้งค่าที่ไม่ถูกต้องสามารถรบกวนการเรียกดูเว็บได้</li></ul>">
+
+<!ENTITY fileNotFound.title "ไม่พบไฟล์">
+<!ENTITY fileNotFound.longDesc "<ul><li>รายการที่เรียกอาจถูกเปลี่ยนชื่อ, ถูกลบ, หรือย้ายที่ไปแล้ว</li><li>ที่อยู่ไฟล์สะกดผิด, เขียนตัวใหญ่-เล็กไม่ตรง, หรือพิมพ์ตกหล่นไปหรือเปล่า?</li><li>คุณได้รับอนุญาตมากพอให้เข้าถึงรายการที่ขอหรือเปล่า?</li></ul>">
+
+<!ENTITY fileAccessDenied.title "การเข้าถึงไฟล์ถูกปฏิเสธ">
+<!ENTITY fileAccessDenied.longDesc "<ul><li>ไฟล์อาจถูกเอาออก ย้าย หรือการอนุญาตของไฟล์อาจป้องกันการเข้าถึง</li></ul>">
+
+<!ENTITY generic.title "ไม่สามารถทำคำขอให้เสร็จสมบูรณ์">
+<!ENTITY generic.longDesc "<p>ไม่มีข้อมูลเพิ่มเติมเกี่ยวกับปัญหาหรือข้อผิดพลาดนี้ในปัจจุบัน</p>">
+
+<!ENTITY malformedURI.title "ที่อยู่ไม่ถูกต้อง">
+<!ENTITY malformedURI.longDesc "<p>ที่อยู่ที่ให้มาไม่อยู่ในรูปแบบที่รู้จัก โปรดตรวจสอบที่อยู่ในแถบที่ตั้งเพื่อหาข้อผิดพลาดและลองใหม่อีกครั้ง</p>">
+
+<!ENTITY netInterrupt.title "การถ่ายโอนข้อมูลถูกขัดจังหวะ">
+<!ENTITY netInterrupt.longDesc "<p>เบราว์เซอร์เชื่อมต่อสำเร็จ แต่การเชื่อมต่อถูกขัดจังหวะขณะกำลังถ่ายโอนข้อมูล โปรดลองอีกครั้ง</p><ul><li>คุณไม่สามารถเรียกดูไซต์อื่น ๆ ได้? ตรวจสอบการเชื่อมต่อเครือข่ายของคอมพิวเตอร์</li><li>ยังคงมีปัญหา? ติดต่อผู้ดูแลเครือข่ายหรือผู้ให้บริการอินเทอร์เน็ตของคุณเพื่อขอรับความช่วยเหลือ</li></ul>">
+
+<!ENTITY notCached.title "เอกสารหมดอายุ">
+<!ENTITY notCached.longDesc "<p>เอกสารที่ขอไม่มีในแคชของเบราว์เซอร์</p><ul><li>ตามมาตรการรักษาความปลอดภัย เบราว์เซอร์จะไม่ขอเอกสารที่ละเอียดอ่อนให้ใหม่โดยอัตโนมัติ</li><li>คลิก ลองอีกครั้ง เพื่อขอเอกสารจากเว็บไซต์ใหม่</li></ul>">
+
+<!ENTITY netOffline.title "โหมดออฟไลน์">
+<!ENTITY netOffline.longDesc2 "<p>เบราว์เซอร์กำลังทำงานในโหมดออฟไลน์และไม่สามารถเชื่อมต่อไปยังรายการที่ขอ</p><ul><li>คอมพิวเตอร์เชื่อมต่อกับเครือข่ายที่ใช้งานได้หรือไม่?</li><li>กด &quot;ลองอีกครั้ง&quot; เพื่อสลับไปยังโหมดออนไลน์และโหลดหน้าใหม่</li></ul>">
+
+<!ENTITY contentEncodingError.title "ข้อผิดพลาดการเข้ารหัสเนื้อหา">
+<!ENTITY contentEncodingError.longDesc "<p>ไม่สามารถแสดงหน้าที่คุณกำลังพยายามจะดูเนื่องจากหน้าใช้รูปแบบการบีบอัดที่ไม่ถูกต้องหรือไม่รองรับ</p><ul><li>โปรดติดต่อเจ้าของเว็บไซต์เพื่อแจ้งพวกเขาให้ทราบถึงปัญหานี้</li></ul>">
+
+<!ENTITY unsafeContentType.title "ชนิดไฟล์ที่ไม่ปลอดภัย">
+<!ENTITY unsafeContentType.longDesc "<ul> <li>โปรดติดต่อเจ้าของเว็บไซต์เพื่อแจ้งพวกเขาให้ทราบถึงปัญหานี้</li> </ul>">
+
+<!ENTITY netReset.title "การเชื่อมต่อถูกขัดจังหวะ">
+<!ENTITY netReset.longDesc "<p>การเชื่อมต่อเครือข่ายถูกขัดจังหวะขณะกำลังเจรจาขอเชื่อมต่อ โปรดลองอีกครั้ง</p>">
+
+<!ENTITY netTimeout.title "เครือข่ายหมดเวลา">
+<!ENTITY netTimeout.longDesc "<p>ไซต์ที่ขอไม่ตอบสนองต่อคำขอการเชื่อมต่อและเบราว์เซอร์ได้หยุดการรอสำหรับการตอบกลับ</p><ul><li>เซิร์ฟเวอร์อาจประสบกับความต้องการที่สูงหรือดับไปชั่วคราว? ลองอีกครั้งในภายหลัง</li><li>คุณไม่สามารถเรียกดูไซต์อื่น ๆ ได้? ตรวจสอบการเชื่อมต่อเครือข่ายของคอมพิวเตอร์</li><li>คอมพิวเตอร์หรือเครือข่ายของคุณถูกปกป้องด้วยไฟร์วอลล์หรือพร็อกซี? การตั้งค่าที่ไม่ถูกต้องสามารถรบกวนการเรียกดูเว็บได้</li><li>ยังคงมีปัญหา? ติดต่อผู้ดูแลเครือข่ายหรือผู้ให้บริการอินเทอร์เน็ตของคุณเพื่อขอรับความช่วยเหลือ</li></ul>">
+
+<!ENTITY unknownProtocolFound.title "โปรโตคอลที่ไม่รู้จัก">
+<!ENTITY unknownProtocolFound.longDesc "<p>ที่อยู่ระบุโปรโตคอล (เช่น <q>wxyz://</q>) ที่เบราว์เซอร์ไม่รู้จัก เบราว์เซอร์จึงไม่สามารถเชื่อมต่อไปยังไซต์ได้อย่างเหมาะสม</p><ul><li>คุณกำลังพยายามเข้าถึงมัลติมีเดียหรือบริการอื่น ๆ ที่ไม่ใช่ข้อความ? ตรวจสอบไซต์สำหรับข้อกำหนดพิเศษ</li><li>บางโปรโตคอลอาจต้องการซอฟต์แวร์หรือปลั๊กอินจากบุคคลที่สามก่อนที่เบราว์เซอร์จะสามารถรู้จักโปรโตคอล</li></ul>">
+
+<!ENTITY proxyConnectFailure.title "เซิร์ฟเวอร์พร็อกซีปฏิเสธการเชื่อมต่อ">
+<!ENTITY proxyConnectFailure.longDesc "<p>เบราว์เซอร์ถูกกำหนดค่าให้ใช้เซิร์ฟเวอร์พร็อกซี</p><ul><li>การกำหนดค่าพร็อกซีของเบราว์เซอร์ถูกต้องหรือไม่? ตรวจสอบการตั้งค่าและลองอีกครั้ง</li><li>บริการพร็อกซีอนุญาตการเชื่อมต่อจากเครือข่ายนี้หรือไม่?</li><li>ยังคงมีปัญหา? ติดต่อผู้ดูแลเครือข่ายหรือผู้ให้บริการอินเทอร์เน็ตของคุณเพื่อขอรับความช่วยเหลือ</li></ul>">
+
+<!ENTITY proxyResolveFailure.title "ไม่พบเซิร์ฟเวอร์พร็อกซี">
+<!ENTITY proxyResolveFailure.longDesc "<p>เบราว์เซอร์ถูกกำหนดค่าให้ใช้เซิร์ฟเวอร์พร็อกซี แต่พร็อกซีไม่สามารถหาพบ</p><ul><li>การกำหนดค่าพร็อกซีของเบราว์เซอร์ถูกต้องหรือไม่? ตรวจสอบการตั้งค่าและลองอีกครั้ง</li><li>คอมพิวเตอร์เชื่อมต่อกับเครือข่ายที่ใช้งานได้หรือไม่?</li><li>ยังคงมีปัญหา? ติดต่อผู้ดูแลเครือข่ายหรือผู้ให้บริการอินเทอร์เน็ตของคุณเพื่อขอรับความช่วยเหลือ</li></ul>">
+
+<!ENTITY redirectLoop.title "การเปลี่ยนเส้นทางวนรอบ">
+<!ENTITY redirectLoop.longDesc "<p>เบราว์เซอร์ได้หยุดความพยายามในการเรียกรายการที่ขอ ไซต์กำลังเปลี่ยนเส้นทางคำขอในทางที่ไม่มีวันเสร็จสมบูรณ์</p><ul><li>คุณได้ปิดใช้งานหรือปิดกั้นคุกกี้ที่ต้องการโดยไซต์นี้หรือไม่?</li><li><em>หมายเหตุ</em>: หากการยอมรับคุกกี้ของไซต์ไม่แก้ปัญหา มันอาจเป็นปัญหาจากการกำหนดค่าเซิร์ฟเวอร์ ไม่ใช่คอมพิวเตอร์ของคุณ</li></ul>">
+
+<!ENTITY unknownSocketType.title "การตอบสนองไม่ถูกต้อง">
+<!ENTITY unknownSocketType.longDesc "<p>ไซต์ตอบสนองต่อคำขอเครือข่ายด้วยวิธีที่ไม่คาดคิดและเบราว์เซอร์ไม่สามารถดำเนินการต่อได้</p>">
+
+<!ENTITY nssFailure2.title "การเชื่อมต่อปลอดภัยล้มเหลว">
+<!ENTITY nssFailure2.longDesc2 "<p>ไม่สามารถแสดงหน้าที่คุณกำลังพยายามจะดูเนื่องจากไม่สามารถยืนยันความถูกต้องของข้อมูลที่ได้รับ</p><ul><li>โปรดติดต่อเจ้าของเว็บไซต์เพื่อแจ้งพวกเขาให้ทราบถึงปัญหานี้</li></ul>">
+
+<!ENTITY nssBadCert.title "การเชื่อมต่อปลอดภัยล้มเหลว">
+<!ENTITY nssBadCert.longDesc2 "<ul> <li>สิ่งนี้อาจเป็นปัญหาจากการกำหนดค่าของเซิร์ฟเวอร์ หรืออาจมีใครบางคนกำลังพยายามปลอมแปลงเซิร์ฟเวอร์</li> <li>หากคุณเคยเชื่อมต่อกับเซิร์ฟเวอร์นี้สำเร็จในอดีต ข้อผิดพลาดอาจเกิดขึ้นเพียงชั่วคราว และคุณสามารถลองอีกครั้งในภายหลัง</li> </ul>">
+
+<!ENTITY securityOverride.linkText "หรือคุณสามารถเพิ่มข้อยกเว้น…">
+<!ENTITY securityOverride.warningContent "<p>คุณไม่ควรเพิ่มข้อยกเว้นหากคุณกำลังใช้งานการเชื่อมต่ออินเทอร์เน็ตที่คุณไม่เชื่อถือโดยสมบูรณ์ หรือหากคุณไม่เคยเห็นคำเตือนสำหรับเซิร์ฟเวอร์นี้</p> <p>หากคุณยังคงต้องการเพิ่มข้อยกเว้นสำหรับไซต์นี้ คุณสามารถทำได้ในการตั้งค่าการเข้ารหัสขั้นสูงของคุณ</p>">
+
+<!ENTITY cspBlocked.title "ปิดกั้นแล้วโดยนโยบายความปลอดภัยของเนื้อหา">
+<!ENTITY cspBlocked.longDesc "<p>เบราว์เซอร์ได้ป้องกันไม่ให้หน้านี้โหลดด้วยวิธีนี้เนื่องจากหน้ามีนโยบายความปลอดภัยของเนื้อหาที่ไม่อนุญาต</p>">
+
+<!ENTITY xfoBlocked.title "ถูกปิดกั้นโดยนโยบาย X-Frame-Options">
+<!ENTITY xfoBlocked.longDesc "<p>เบราว์เซอร์ได้ป้องกันหน้านี้จากการโหลดในบริบทนี้เนื่องจากหน้ามีนโยบาย X-Frame-Options ที่ไม่อนุญาต</p>">
+
+<!ENTITY corruptedContentErrorv2.title "ข้อผิดพลาดเนื้อหาเสียหาย">
+<!ENTITY corruptedContentErrorv2.longDesc "<p>ไม่สามารถแสดงหน้าที่คุณกำลังพยายามจะดูเนื่องจากตรวจพบข้อผิดพลาดในการส่งผ่านข้อมูล</p><ul><li>โปรดติดต่อเจ้าของเว็บไซต์เพื่อแจ้งพวกเขาให้ทราบถึงปัญหานี้</li></ul>">
+
+<!ENTITY inadequateSecurityError.title "การเชื่อมต่อของคุณไม่ปลอดภัย">
+<!-- LOCALIZATION NOTE (inadequateSecurityError.longDesc) - Do not translate
+ "NS_ERROR_NET_INADEQUATE_SECURITY". -->
+<!ENTITY inadequateSecurityError.longDesc "<p><span class='hostname'></span> ใช้เทคโนโลยีความปลอดภัยที่ล้าสมัยและเสี่ยงต่อการถูกโจมตี ผู้โจมตีสามารถเปิดเผยข้อมูลที่คุณคิดว่าปลอดภัยได้อย่างง่ายดาย ผู้ดูแลเว็บไซต์จำเป็นต้องแก้ไขเซิร์ฟเวอร์ก่อนที่คุณจะสามารถเยี่ยมชมไซต์ได้</p><p>รหัสข้อผิดพลาด: NS_ERROR_NET_INADEQUATE_SECURITY</p>">
+
+<!ENTITY blockedByPolicy.title "หน้าที่ถูกปิดกั้น">
+
+<!ENTITY networkProtocolError.title "ข้อผิดพลาดโปรโตคอลเครือข่าย">
+<!ENTITY networkProtocolError.longDesc "<p>ไม่สามารถแสดงหน้าที่คุณกำลังพยายามจะดูเนื่องจากตรวจพบข้อผิดพลาดในโปรโตคอลเครือข่าย</p><ul><li>โปรดติดต่อเจ้าของเว็บไซต์เพื่อแจ้งพวกเขาให้ทราบถึงปัญหานี้</li></ul>">
diff --git a/l10n-th/dom/chrome/netErrorApp.dtd b/l10n-th/dom/chrome/netErrorApp.dtd
new file mode 100644
index 0000000000..d245555380
--- /dev/null
+++ b/l10n-th/dom/chrome/netErrorApp.dtd
@@ -0,0 +1,23 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!-- This file exists to allow applications to override one or more messages
+ from netError.dtd; Applications which want to do this should override
+ this file with their own version of netErrorApp.dtd -->
+
+<!-- An example (from Firefox):
+
+<!ENTITY securityOverride.linkText "Or you can add an exception…">
+<!ENTITY securityOverride.getMeOutOfHereButton "Get me out of here!">
+<!ENTITY securityOverride.exceptionButtonLabel "Add Exception…">
+
+<!ENTITY securityOverride.warningContent "
+<p>You should not add an exception if you are using an internet connection that you do not trust completely or if you are not used to seeing a warning for this server.</p>
+<p>If you still wish to add an exception for this site, you can do so in your advanced encryption settings.</p>
+
+<button id='getMeOutOfHereButton'>&securityOverride.getMeOutOfHereButton;</button>
+<button id='exceptionDialogButton'>&securityOverride.exceptionButtonLabel;</button>
+">
+
+-->
diff --git a/l10n-th/dom/chrome/nsWebBrowserPersist.properties b/l10n-th/dom/chrome/nsWebBrowserPersist.properties
new file mode 100644
index 0000000000..ada03ceae6
--- /dev/null
+++ b/l10n-th/dom/chrome/nsWebBrowserPersist.properties
@@ -0,0 +1,17 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+readError=ไม่สามารถบันทึก %S ได้เนื่องจากไม่สามารถอ่านไฟล์ต้นฉบับ\n\nลองอีกครั้งในภายหลัง หรือติดต่อผู้ดูแลเซิร์ฟเวอร์
+writeError=ไม่สามารถบันทึก %S เนื่องจากเกิดความผิดพลาดที่ระบุไม่ได้\n\nลองบันทึกอีกครั้งลงในตำแหน่งอื่น
+launchError=ไม่สามารถเปิด %S เนื่องจากเกิดข้อผิดพลาดที่ไม่รู้จัก\n\nลองบันทึกไปยังดิสก์ก่อนแล้วเปิดไฟล์
+diskFull=มีพื้นที่ว่างในดิสก์ไม่พอสำหรับการบันทึก %S\n\nลบไฟล์ที่ไม่จำเป็นออกจากดิสก์แล้วลองใหม่อีกครั้ง หรือลองบันทึกลงในตำแหน่งที่ตั้งอื่น
+readOnly=ไม่สามารถบันทึก %S ได้ เนื่องจากดิสก์, โฟลเดอร์, หรือไฟล์ถูกป้องกันการเขียนทับ\n\nปิดการป้องกันการเขียนทับแล้วลองอีกครั้ง หรือลองบันทึกลงในตำแหน่งที่ตั้งอื่น
+accessError=ไม่สามารถบันทึก %S ได้ เนื่องจากคุณไม่สามารถเปลี่ยนแปลงเนื้อหาของโฟลเดอร์\n\nเปลี่ยนการตั้งค่าของโฟลเดอร์แล้วลองอีกครั้ง หรือลองบันทึกลงในตำแหน่งอื่น
+SDAccessErrorCardReadOnly=ไม่สามารถดาวน์โหลดไฟล์เนื่องจากการ์ด SD ถูกใช้งานอยู่
+SDAccessErrorCardMissing=ไม่สามารถดาวน์โหลดไฟล์เนื่องจากการ์ด SD หายไป
+helperAppNotFound=ไม่สามารถเปิด %S เนื่องจากไม่พบแอปพลิเคชันช่วยเหลือที่สัมพันธ์กัน เปลี่ยนความสัมพันธ์ในการตั้งค่าของคุณ
+noMemory=มีหน่วยความจำไม่พอจะทำงานที่คุณสั่ง\n\nปิดโปรแกรมบางตัวแล้วลองใหม่อีกครั้ง
+title=กำลังดาวน์โหลด %S
+fileAlreadyExistsError=ไม่สามารถบันทึก %S ได้ เนื่องจากมีไฟล์ชื่อเดียวกับโฟลเดอร์ที่ชื่อลงท้ายด้วย ‘_files’ อยู่แล้ว\n\nลองบันทึกลงในตำแหน่งที่ตั้งอื่น
+fileNameTooLongError=ไม่สามารถบันทึก %S ได้ เนื่องจากชื่อไฟล์ยาวเกินไป\n\nลองบันทึกด้วยชื่อที่สั้นกว่านั้น
diff --git a/l10n-th/dom/chrome/security/caps.properties b/l10n-th/dom/chrome/security/caps.properties
new file mode 100644
index 0000000000..5ee6738fa4
--- /dev/null
+++ b/l10n-th/dom/chrome/security/caps.properties
@@ -0,0 +1,9 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+CheckLoadURIError = ข้อผิดพลาดความปลอดภัย: เนื้อหาที่ %S อาจไม่โหลดหรือลิงก์ไปยัง %S
+CheckSameOriginError = ข้อผิดพลาดความปลอดภัย: เนื้อหาที่ %S อาจไม่โหลดข้อมูลจาก %S
+ExternalDataError = ข้อผิดพลาดความปลอดภัย: เนื้อหาที่ %S พยายามโหลด %S แต่อาจไม่โหลดข้อมูลภายนอกเมื่อถูกใช้เป็นภาพ
+
+CreateWrapperDenied = ไม่มีสิทธิเข้าถึงการสร้างตัวหุ้มสำหรับวัตถุของคลาส %S
+CreateWrapperDeniedForOrigin = Permission denied for <%2$S> to create wrapper for object of class %1$S
diff --git a/l10n-th/dom/chrome/security/csp.properties b/l10n-th/dom/chrome/security/csp.properties
new file mode 100644
index 0000000000..f56f95d7bb
--- /dev/null
+++ b/l10n-th/dom/chrome/security/csp.properties
@@ -0,0 +1,123 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# CSP Warnings:
+# LOCALIZATION NOTE (CSPViolation):
+# %1$S is the reason why the resource has not been loaded.
+CSPViolation = การตั้งค่าของหน้าได้ปิดกั้นการโหลดทรัพยากร: %1$S
+# LOCALIZATION NOTE (CSPViolationWithURI):
+# %1$S is the directive that has been violated.
+# %2$S is the URI of the resource which violated the directive.
+CSPViolationWithURI = การตั้งค่าของหน้าได้ปิดกั้นการโหลดทรัพยากรที่ %2$S (“%1$S”)
+# LOCALIZATION NOTE (CSPROViolation):
+# %1$S is the reason why the resource has not been loaded.
+CSPROViolation = เกิดการละเมิดสำหรับนโยบาย CSP แบบ report-only (“%1$S”) อนุญาตให้ใช้ลักษณะการทำงานนี้ และส่งรายงาน CSP แล้ว
+# LOCALIZATION NOTE (CSPROViolationWithURI):
+# %1$S is the directive that has been violated.
+# %2$S is the URI of the resource which violated the directive.
+CSPROViolationWithURI = การตั้งค่าของหน้าได้สังเกตการโหลดทรัพยากรที่ %2$S (“%1$S”) รายงาน CSP กำลังจะถูกส่ง
+# LOCALIZATION NOTE (triedToSendReport):
+# %1$S is the URI we attempted to send a report to.
+triedToSendReport = พยายามส่งรายงานไปยัง URI ที่ใช้ไม่ได้ : "%1$S"
+# LOCALIZATION NOTE (couldNotParseReportURI):
+# %1$S is the report URI that could not be parsed
+couldNotParseReportURI = URI สำหรับรายงานผิดรูปแบบไวยากรณ์: %1$S
+# LOCALIZATION NOTE (couldNotProcessUnknownDirective):
+# %1$S is the unknown directive
+couldNotProcessUnknownDirective = ไม่สามารถทำตามคำสั่งที่ไม่รู้จัก '%1$S'
+# LOCALIZATION NOTE (ignoringUnknownOption):
+# %1$S is the option that could not be understood
+ignoringUnknownOption = เพิกเฉยตัวเลือกที่ไม่รู้จัก %1$S
+# LOCALIZATION NOTE (ignoringDuplicateSrc):
+# %1$S defines the duplicate src
+ignoringDuplicateSrc = เพิกเฉยต้นฉบับที่ซ้ำกัน %1$S
+# LOCALIZATION NOTE (ignoringNonAsciiToken):
+# %1$S defines the name of the directive
+# %2$S is the token string containing non-ASCII characters.
+ignoringNonAsciiToken = เพิกเฉยคำสั่ง ‘%1$S’ ที่มีโทเค็นที่ไม่ใช่ ASCII ‘%2$S’
+# LOCALIZATION NOTE (ignoringSrcFromMetaCSP):
+# %1$S defines the ignored src
+ignoringSrcFromMetaCSP = เพิกเฉยต้นฉบับ ‘%1$S’ (ไม่รองรับเมื่อส่งผ่านองค์ประกอบ meta)
+# LOCALIZATION NOTE (ignoringSrcWithinScriptStyleSrc):
+# %1$S is the ignored src
+# script-src and style-src are directive names and should not be localized
+ignoringSrcWithinScriptStyleSrc = เพิกเฉย “%1$S” ที่อยู่ภายใน script-src หรือ style-src: มีการระบุ nonce-source หรือ hash-source
+# LOCALIZATION NOTE (ignoringSrcForStrictDynamic):
+# %1$S is the ignored src
+# script-src, as well as 'strict-dynamic' should not be localized
+ignoringSrcForStrictDynamic = เพิกเฉย “%1$S” ที่อยู่ภายใน script-src หรือ style-src: มีการระบุ ‘strict-dynamic’
+# LOCALIZATION NOTE (ignoringSrcWithinNonceOrHashDirective):
+# %1$S is the ignored src (e.g. "unsafe-inline")
+# %2$S is the directive (e.g. "script-src-elem")
+ignoringSrcWithinNonceOrHashDirective = เพิกเฉย “%1$S” ที่อยู่ภายใน %2$S: มีการระบุ nonce-source หรือ hash-source
+# LOCALIZATION NOTE (ignoringScriptSrcForStrictDynamic):
+# %1$S is the ignored src
+# %1$S is the directive src (e.g. "script-src-elem")
+# 'strict-dynamic' should not be localized
+ignoringScriptSrcForStrictDynamic = เพิกเฉย “%1$S” ที่อยู่ภายใน %2$S: มีการระบุ ‘strict-dynamic’
+# LOCALIZATION NOTE (ignoringStrictDynamic):
+# %1$S is the ignored src
+ignoringStrictDynamic = เพิกเฉยต้นฉบับ “%1$S” (รองรับภายใน script-src เท่านั้น)
+# LOCALIZATION NOTE (ignoringUnsafeEval):
+# %1$S is the csp directive (e.g. script-src-elem)
+# 'unsafe-eval' and 'wasm-unsafe-eval' should not be localized
+ignoringUnsafeEval = เพิกเฉย ‘unsafe-eval’ หรือ ‘wasm-unsafe-eval’ ที่อยู่ภายใน “%1$S”
+# LOCALIZATION NOTE (strictDynamicButNoHashOrNonce):
+# %1$S is the csp directive that contains 'strict-dynamic'
+# 'strict-dynamic' should not be localized
+strictDynamicButNoHashOrNonce = คำสำคัญ ‘strict-dynamic’ ที่อยู่ภายใน “%1$S” ที่ไม่มี nonce หรือแฮชที่ถูกต้องอาจปิดกั้นสคริปต์ทั้งหมดไม่ให้โหลดได้
+# LOCALIZATION NOTE (reportURInotHttpsOrHttp2):
+# %1$S is the ETLD of the report URI that is not HTTP or HTTPS
+reportURInotHttpsOrHttp2 = URI รายงาน (%1$S) ควรเป็น URI แบบ HTTP หรือ HTTPS
+# LOCALIZATION NOTE (reportURInotInReportOnlyHeader):
+# %1$S is the ETLD of the page with the policy
+reportURInotInReportOnlyHeader = ไซต์ (%1$S) มีนโยบาย Report-Only ที่ไม่มี URI รายงาน CSP จะไม่ปิดกั้นและไม่สามารถรายงานการละเมิดนโยบายนี้ได้
+# LOCALIZATION NOTE (failedToParseUnrecognizedSource):
+# %1$S is the CSP Source that could not be parsed
+failedToParseUnrecognizedSource = ไม่สามารถวิเคราะห์รูปแบบต้นฉบับที่ไม่รู้จัก %1$S
+# LOCALIZATION NOTE (upgradeInsecureRequest):
+# %1$S is the URL of the upgraded request; %2$S is the upgraded scheme.
+upgradeInsecureRequest = อัปเกรดคำขอที่ไม่ปลอดภัย ‘%1$S’ เพื่อใช้ ‘%2$S’
+# LOCALIZATION NOTE (ignoreSrcForDirective):
+ignoreSrcForDirective = เพิกเฉย srcs สำหรับคำสั่ง ‘%1$S’
+# LOCALIZATION NOTE (hostNameMightBeKeyword):
+# %1$S is the hostname in question and %2$S is the keyword
+hostNameMightBeKeyword = แปลง %1$S เป็นชื่อโฮสต์ ไม่ใช่คำสำคัญ หากคุณต้องการให้หากคุณต้องการให้สิ่งนี้เป็นคำสำคัญ ใช้ ‘%2$S’ (อยู่ในอัญประกาศเดี่ยว)
+# LOCALIZATION NOTE (notSupportingDirective):
+# directive is not supported (e.g. 'reflected-xss')
+notSupportingDirective = ไม่รองรับคำสั่ง ‘%1$S’ คำสั่งและค่าต่าง ๆ จะถูกเพิกเฉย
+# LOCALIZATION NOTE (blockAllMixedContent):
+# %1$S is the URL of the blocked resource load.
+blockAllMixedContent = ปิดกั้นคำขอที่ไม่ปลอดภัย ‘%1$S’
+# LOCALIZATION NOTE (ignoringDirectiveWithNoValues):
+# %1$S is the name of a CSP directive that requires additional values
+ignoringDirectiveWithNoValues = เพิกเฉย ‘%1$S’ เนื่องจากไม่มีพารามิเตอร์ใด
+# LOCALIZATION NOTE (ignoringReportOnlyDirective):
+# %1$S is the directive that is ignored in report-only mode.
+ignoringReportOnlyDirective = เพิกเฉยคำสั่ง sandbox เมื่อถูกส่งในนโยบาย report-only ‘%1$S’
+# LOCALIZATION NOTE (IgnoringSrcBecauseOfDirective):
+# %1$S is the name of the src that is ignored.
+# %2$S is the name of the directive that causes the src to be ignored.
+IgnoringSrcBecauseOfDirective=เพิกเฉย ‘%1$S’ เนื่องจากคำสั่ง ‘%2$S’
+# LOCALIZATION NOTE (IgnoringSourceWithinDirective):
+# %1$S is the ignored src
+# %2$S is the directive which supports src
+IgnoringSourceWithinDirective = เพิกเฉยต้นฉบับ “%1$S” (ไม่รองรับภายใน ‘%2$S’)
+
+# CSP Errors:
+# LOCALIZATION NOTE (couldntParseInvalidSource):
+# %1$S is the source that could not be parsed
+couldntParseInvalidSource = ไม่สามารถวิเคราะห์รูปแบบต้นฉบับที่ไม่ถูกต้อง %1$S
+# LOCALIZATION NOTE (couldntParseInvalidHost):
+# %1$S is the host that's invalid
+couldntParseInvalidHost = ไม่สามารถแยกส่วนโฮสต์ที่ใช้ไม่ได้ %1$S
+# LOCALIZATION NOTE (couldntParsePort):
+# %1$S is the string source
+couldntParsePort = ไม่สามารถแยกวิเคราะห์พอร์ตใน %1$S
+# LOCALIZATION NOTE (duplicateDirective):
+# %1$S is the name of the duplicate directive
+duplicateDirective = คำสั่ง %1$S ได้ถูกตรวจพบว่าซ้ำ ทั้งหมดแต่กรณีตัวอย่างแรกจะถูกยกเว้น
+# LOCALIZATION NOTE (couldntParseInvalidSandboxFlag):
+# %1$S is the option that could not be understood
+couldntParseInvalidSandboxFlag = ไม่สามารถวิเคราะห์รูปแบบค่าสถานะ sandbox ‘%1$S’
diff --git a/l10n-th/dom/chrome/security/security.properties b/l10n-th/dom/chrome/security/security.properties
new file mode 100644
index 0000000000..8584b643f7
--- /dev/null
+++ b/l10n-th/dom/chrome/security/security.properties
@@ -0,0 +1,169 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+# Mixed Content Blocker
+# LOCALIZATION NOTE: "%1$S" is the URI of the blocked mixed content resource
+BlockMixedDisplayContent = ปิดกั้นการโหลดเนื้อหาแบบผสม "%1$S"
+BlockMixedActiveContent = ปิดกั้นการโหลดเนื้อหาแบบผสมที่ใช้งานอยู่ "%1$S"
+
+# CORS
+# LOCALIZATION NOTE: Do not translate "Access-Control-Allow-Origin", Access-Control-Allow-Credentials, Access-Control-Allow-Methods, Access-Control-Allow-Headers
+CORSDisabled=คำข้อข้ามที่มาถูกปิดกั้น: นโยบายที่มาเดียวกันไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: CORS ถูกปิดใช้งาน)
+CORSDidNotSucceed2=คำข้อข้ามที่มาถูกปิดกั้น: นโยบายที่มาเดียวกันไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: คำขอ CORS ไม่สำเร็จ) รหัสสถานะ: %2$S
+CORSOriginHeaderNotAdded=คำข้อข้ามที่มาถูกปิดกั้น: นโยบายที่มาเดียวกันไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: ไม่สามารถเพิ่มส่วนหัว CORS ‘Origin’ ได้)
+CORSExternalRedirectNotAllowed=คำข้อข้ามที่มาถูกปิดกั้น: นโยบายที่มาเดียวกันไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: ไม่อนุญาตให้เปลี่ยนเส้นทางภายนอกของคำขอ CORS)
+CORSRequestNotHttp=คำข้อข้ามที่มาถูกปิดกั้น: นโยบายที่มาเดียวกันไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: คำขอ CORS ไม่ใช่ http)
+CORSMissingAllowOrigin2=คำข้อข้ามที่มาถูกปิดกั้น: นโยบายที่มาเดียวกันไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: ส่วนหัว CORS ‘Access-Control-Allow-Origin’ ขาดหายไป) รหัสสถานะ: %2$S
+CORSMultipleAllowOriginNotAllowed=คำข้อข้ามที่มาถูกปิดกั้น: นโยบายที่มาเดียวกันไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: ไม่อนุญาตให้มีส่วนหัว CORS ‘Access-Control-Allow-Origin’ หลายส่วน)
+CORSAllowOriginNotMatchingOrigin=คำข้อข้ามที่มาถูกปิดกั้น: นโยบายที่มาเดียวกันไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: ส่วนหัว CORS ‘Access-Control-Allow-Origin’ ไม่ตรงกับ ‘%2$S’)
+CORSNotSupportingCredentials=คำข้อข้ามที่มาถูกปิดกั้น: นโยบายที่มาเดียวกันไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: ไม่รองรับข้อมูลประจำตัวหากส่วนหัว CORS ‘Access-Control-Allow-Origin’ เป็น ‘*’)
+CORSMethodNotFound=คำข้อข้ามที่มาถูกปิดกั้น: นโยบายที่มาเดียวกันไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: ไม่พบวิธีในส่วนหัว CORS ‘Access-Control-Allow-Methods’)
+CORSMissingAllowCredentials=คำข้อข้ามที่มาถูกปิดกั้น: นโยบายที่มาเดียวกันไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: ต้องการค่า ‘true’ ในส่วนหัว CORS ‘Access-Control-Allow-Credentials’)
+CORSPreflightDidNotSucceed3=คำข้อข้ามที่มาถูกปิดกั้น: นโยบายที่มาเดียวกันไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: การตอบสนอง CORS preflight ไม่สำเร็จ) รหัสสถานะ: %2$S
+CORSInvalidAllowMethod=คำข้อข้ามที่มาถูกปิดกั้น: นโยบายที่มาเดียวกันไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: โทเค็น ‘%2$S’ ไม่ถูกต้องในส่วนหัว CORS ‘Access-Control-Allow-Methods’)
+CORSInvalidAllowHeader=คำข้อข้ามที่มาถูกปิดกั้น: นโยบายที่มาเดียวกันไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: โทเค็น ‘%2$S’ ไม่ถูกต้องในส่วนหัว CORS ‘Access-Control-Allow-Headers’)
+CORSMissingAllowHeaderFromPreflight2=คำข้อข้ามที่มาถูกปิดกั้น: นโยบายที่มาเดียวกันไม่อนุญาตให้อ่านทรัพยากรระยะไกลที่ %1$S (เหตุผล: ไม่อนุญาตให้ใช้ส่วนหัว ‘%2$S’ ตามส่วนหัว ‘Access-Control-Allow-Headers’ จากการตอบกลับในการตรวจสอบก่อนส่ง CORS)
+
+# LOCALIZATION NOTE: Do not translate "Strict-Transport-Security", "HSTS", "max-age" or "includeSubDomains"
+STSUnknownError=Strict-Transport-Security: เกิดข้อผิดพลาดที่ไม่รู้จักในการประมวลผลส่วนหัวที่ระบุโดยไซต์
+STSUntrustworthyConnection=Strict-Transport-Security: การเชื่อมต่อกับเว็บไซต์ไม่น่าเชื่อถือ ส่วนหัวที่ระบุจึงถูกเพิกเฉย
+STSCouldNotParseHeader=Strict-Transport-Security: ไซต์ระบุส่วนหัวที่ไม่สามารถแยกวิเคราะห์ได้สำเร็จ
+STSNoMaxAge=Strict-Transport-Security: ไซต์ระบุส่วนหัวที่ไม่มีคำสั่ง ‘max-age’
+STSMultipleMaxAges=Strict-Transport-Security: ไซต์ระบุส่วนหัวที่มีคำสั่ง ‘max-age’ หลายคำสั่ง
+STSInvalidMaxAge=Strict-Transport-Security: ไซต์ระบุส่วนหัวที่มีคำสั่ง ‘max-age’ ที่ไม่ถูกต้อง
+STSMultipleIncludeSubdomains=Strict-Transport-Security: ไซต์ระบุส่วนหัวที่มีคำสั่ง ‘includeSubDomains’ หลายคำสั่ง
+STSInvalidIncludeSubdomains=Strict-Transport-Security: ไซต์ระบุส่วนหัวที่มีคำสั่ง ‘includeSubDomains’ ที่ไม่ถูกต้อง
+STSCouldNotSaveState=Strict-Transport-Security: เกิดข้อผิดพลาดในการจดจำไซต์ในฐานะโฮสต์ Strict-Transport-Security
+
+InsecurePasswordsPresentOnPage=มีช่องกรอกรหัสผ่านอยู่บนหน้าที่ไม่ปลอดภัย (http://) ซึ่งเป็นความเสี่ยงด้านความปลอดภัยที่เปิดโอกาสให้ข้อมูลประจำตัวการเข้าสู่ระบบถูกขโมยได้
+InsecureFormActionPasswordsPresent=มีช่องกรอกรหัสผ่านในรูปแบบที่มีการกระทำแบบฟอร์มที่ไม่ปลอดภัย (http://) ซึ่งเป็นความเสี่ยงด้านความปลอดภัยที่เปิดโอกาสให้ข้อมูลประจำตัวการเข้าสู่ระบบถูกขโมยได้
+InsecurePasswordsPresentOnIframe=มีช่องกรอกรหัสผ่านอยู่บน iframe ที่ไม่ปลอดภัย (http://) ซึ่งเป็นความเสี่ยงด้านความปลอดภัยที่เปิดโอกาสให้ข้อมูลประจำตัวการเข้าสู่ระบบถูกขโมยได้
+# LOCALIZATION NOTE: "%1$S" is the URI of the insecure mixed content resource
+LoadingMixedActiveContent2=โหลดเนื้อหาที่ใช้งานแบบผสม (ไม่ปลอดภัย) “%1$S” บนหน้าที่ปลอดภัย
+LoadingMixedDisplayContent2=โหลดเนื้อหาที่แสดงผลแบบผสม (ไม่ปลอดภัย) “%1$S” บนหน้าที่ปลอดภัย
+LoadingMixedDisplayObjectSubrequestDeprecation=ไม่แนะนำให้โหลดเนื้อหาแบบผสม (ไม่ปลอดภัย) “%1$S” ภายในปลั๊กอินที่อยู่บนหน้าที่ปลอดภัย และจะถูกปิดกั้นในไม่ช้า
+# LOCALIZATION NOTE: "%S" is the URI of the insecure mixed content download
+MixedContentBlockedDownload = ปิดกั้นการดาวน์โหลดเนื้อหาที่ไม่ปลอดภัย “%S” แล้ว
+
+# LOCALIZATION NOTE: Do not translate "allow-scripts", "allow-same-origin", "sandbox" or "iframe"
+BothAllowScriptsAndSameOriginPresent=iframe ที่มีทั้ง allow-scripts และ allow-same-origin เดียวกันสำหรับแอตทริบิวต์ sandbox สามารถเอาคุณลักษณะการทำ sandbox ออกได้
+# LOCALIZATION NOTE: Do not translate "allow-top-navigation-by-user-activation", "allow-top-navigation", "sandbox" or "iframe"
+BothAllowTopNavigationAndUserActivationPresent=iframe ที่มีทั้ง allow-top-navigation และ allow-top-navigation-by-user-activation สำหรับแอตทริบิวต์ sandbox จะอนุญาตการนำทางด้านบน
+
+# Sub-Resource Integrity
+# LOCALIZATION NOTE: Do not translate "script" or "integrity". "%1$S" is the invalid token found in the attribute.
+MalformedIntegrityHash=องค์ประกอบ script มีแฮชที่มีรูปแบบไม่ถูกต้องในแอตทริบิวต์ integrity: “%1$S” โดยรูปแบบที่ถูกต้องคือ “<อัลกอริทึมแฮช>-<ค่าแฮช>”
+# LOCALIZATION NOTE: Do not translate "integrity"
+InvalidIntegrityLength=แฮชที่มีอยู่ในแอตทริบิวต์ integrity มีความยาวที่ไม่ถูกต้อง
+# LOCALIZATION NOTE: Do not translate "integrity"
+InvalidIntegrityBase64=ไม่สามารถถอดรหัสแฮชที่มีอยู่ในแอตทริบิวต์ integrity ได้
+# LOCALIZATION NOTE: Do not translate "integrity". "%1$S" is the type of hash algorithm in use (e.g. "sha256").
+IntegrityMismatch=ไม่มีแฮช “%1$S” ใดในแอตทริบิวต์ integrity ที่ตรงกับเนื้อหาของทรัพยากรย่อย
+# LOCALIZATION NOTE: "%1$S" is the URI of the sub-resource that cannot be protected using SRI.
+IneligibleResource=“%1$S” ไม่มีสิทธิ์ตรวจสอบความถูกต้องเนื่องจากไม่ได้เปิดใช้งาน CORS หรือไม่ใช่ same-origin
+# LOCALIZATION NOTE: Do not translate "integrity". "%1$S" is the invalid hash algorithm found in the attribute.
+UnsupportedHashAlg=ไม่รองรับอัลกอริทึมแฮชนี้ในแอตทริบิวต์ integrity: “%1$S”
+# LOCALIZATION NOTE: Do not translate "integrity"
+NoValidMetadata=แอตทริบิวต์ integrity ไม่มีข้อมูลกำกับที่ถูกต้อง
+
+# LOCALIZATION NOTE: Do not translate "RC4".
+WeakCipherSuiteWarning=ไซต์นี้ใช้การเข้ารหัสแบบ RC4 ซึ่งเลิกใช้แล้วและไม่ปลอดภัย
+
+DeprecatedTLSVersion2=ไซต์นี้ใช้ TLS รุ่นที่เลิกใช้แล้ว โปรดอัปเกรดเป็น TLS 1.2 หรือ 1.3
+
+#XCTO: nosniff
+# LOCALIZATION NOTE: Do not translate "X-Content-Type-Options: nosniff".
+MimeTypeMismatch2=ทรัพยากรจาก “%1$S” ถูกปิดกั้นเนื่องจากชนิด MIME (“%2$S”) ไม่ตรงกัน (X-Content-Type-Options: nosniff)
+# LOCALIZATION NOTE: Do not translate "X-Content-Type-Options" and also do not translate "nosniff".
+XCTOHeaderValueMissing=คำเตือนส่วนหัว X-Content-Type-Options: ค่าเป็น “%1$S” คุณหมายถึงส่ง “nosniff” หรือไม่?
+# LOCALIZATION NOTE: Do not translate "X-Content-Type-Options" and also do not translate "nosniff".
+XTCOWithMIMEValueMissing=ทรัพยากรจาก “%1$S” ไม่ถูกแสดงผลเนื่องจากมีชนิด MIME ที่ไม่รู้จัก, ไม่ถูกต้อง หรือขาดหายไป (X-Content-Type-Options: nosniff)
+
+BlockScriptWithWrongMimeType2=สคริปต์จาก “%1$S” ถูกปิดกั้นเนื่องจากชนิด MIME ที่ไม่ได้รับอนุญาต (“%2$S”)
+WarnScriptWithWrongMimeType=สคริปต์จาก “%1$S” ได้ถูกโหลดถึงแม้ว่าชนิด MIME (“%2$S”) จะไม่ใช่ชนิด MIME ของ JavaScript ที่ถูกต้อง
+# LOCALIZATION NOTE: Do not translate "importScripts()"
+BlockImportScriptsWithWrongMimeType=การโหลดสคริปต์จาก “%1$S” ด้วย importScripts() ถูกปิดกั้นเนื่องจากชนิด MIME ที่ไม่ได้รับอนุญาต (“%2$S”)
+BlockWorkerWithWrongMimeType=การโหลด Worker จาก “%1$S” ถูกปิดกั้นเนื่องจากชนิด MIME ที่ไม่ได้รับอนุญาต (“%2$S”)
+BlockModuleWithWrongMimeType=การโหลดโมดูลจาก “%1$S” ถูกปิดกั้นเนื่องจากชนิด MIME ที่ไม่ได้รับอนุญาต (“%2$S”)
+
+# LOCALIZATION NOTE: Do not translate "data: URI".
+BlockTopLevelDataURINavigation=การนำทางไปยังข้อมูลระดับบนสุด: ไม่อนุญาตให้ใช้ URI (มีการปิดกั้นการโหลดของ: “%1$S”)
+BlockSubresourceRedirectToData=การเปลี่ยนเส้นทางไปยังข้อมูลที่ไม่ปลอดภัย: ไม่อนุญาตให้ใช้ URI (มีการปิดกั้นการโหลดของ: “%1$S”)
+
+BlockSubresourceFTP=ไม่อนุญาตให้โหลดทรัพยากรย่อย FTP ภายในหน้า http (มีการปิดกั้นการโหลดของ: “%1$S”)
+
+# LOCALIZATION NOTE: Do not translate "file: URI". “%1$S” is the whole URI of the loaded file. “%2$S” is the MIME type e.g. "text/plain".
+BlockFileScriptWithWrongMimeType=การโหลดสคริปต์จากไฟล์: URI (“%1$S”) ถูกปิดกั้นเนื่องจากชนิด MIME (“%2$S”) ไม่ใช่ชนิด MIME ของ JavaScript ที่ถูกต้อง
+
+# LOCALIZATION NOTE: “%S” is the whole URI of the loaded file.
+BlockExtensionScriptWithWrongExt=การโหลดสคริปต์ด้วย URI “%S” ถูกปิดกั้นเนื่องจากไม่อนุญาตให้ใช้ส่วนขยายไฟล์
+
+RestrictBrowserEvalUsage=ไม่อนุญาตให้ใช้ eval() และ eval-like ในโปรเซสหลักหรือในบริบทของระบบ (ปิดกั้นการใช้ใน “%1$S”)
+
+# LOCALIZATION NOTE (MixedContentAutoUpgrade):
+# %1$S is the URL of the upgraded request; %2$S is the upgraded scheme.
+MixedContentAutoUpgrade=อัปเกรดคำขอแสดงผลที่ไม่ปลอดภัย ‘%1$S’ ให้ใช้ ‘%2$S’
+# LOCALIZATION NOTE (RunningClearSiteDataValue):
+# %S is the URI of the resource whose data was cleaned up
+RunningClearSiteDataValue=ส่วนหัว Clear-Site-Data บังคับให้ล้างข้อมูล “%S”
+UnknownClearSiteDataValue=พบส่วนหัว Clear-Site-Data ไม่รู้จักค่า “%S”
+
+# Reporting API
+ReportingHeaderInvalidJSON=ส่วนหัวการรายงาน: ได้รับค่า JSON ที่ไม่ถูกต้อง
+ReportingHeaderInvalidNameItem=ส่วนหัวการรายงาน: ชื่อไม่ถูกต้องสำหรับกลุ่ม
+ReportingHeaderDuplicateGroup=ส่วนหัวการรายงาน: ไม่สนใจกลุ่มที่ซ้ำกันชื่อ “%S”
+ReportingHeaderInvalidItem=ส่วนหัวการรายงาน: ไม่สนใจรายการที่ไม่ถูกต้องชื่อ “%S”
+ReportingHeaderInvalidEndpoint=ส่วนหัวการรายงาน: ไม่สนใจตำแหน่งข้อมูลที่ไม่ถูกต้องสำหรับรายการชื่อ “%S”
+# LOCALIZATION NOTE(ReportingHeaderInvalidURLEndpoint): %1$S is the invalid URL, %2$S is the group name
+ReportingHeaderInvalidURLEndpoint=ส่วนหัวการรายงาน: ไม่สนใจ URL ตำแหน่งข้อมูลที่ไม่ถูกต้อง “%1$S” สำหรับรายการชื่อ “%2$S”
+
+FeaturePolicyUnsupportedFeatureName=นโยบายคุณลักษณะ: ข้ามชื่อคุณลักษณะ “%S” ซึ่งไม่รองรับ
+# TODO: would be nice to add a link to the Feature-Policy MDN documentation here. See bug 1449501
+FeaturePolicyInvalidEmptyAllowValue= นโยบายคุณลักษณะ: ข้ามรายการอนุญาตเปล่าสำหรับคุณลักษณะ: “%S”
+# TODO: would be nice to add a link to the Feature-Policy MDN documentation here. See bug 1449501
+FeaturePolicyInvalidAllowValue=นโยบายคุณลักษณะ: ข้ามค่าอนุญาต “%S” ซึ่งไม่รองรับ
+
+# LOCALIZATION NOTE: "%1$S" is the limitation length (bytes) of referrer URI, "%2$S" is the origin of the referrer URI.
+ReferrerLengthOverLimitation=ส่วนหัวตัวอ้างอิง HTTP: ความยาวเกินขีดจำกัด “%1$S” ไบต์ - กำลังลดขนาดส่วนหัวตัวอ้างอิงลงเป็น origin: “%2$S”)
+# LOCALIZATION NOTE: "%1$S" is the limitation length (bytes) of referrer URI, "%2$S" is the origin of the referrer URI.
+ReferrerOriginLengthOverLimitation=ส่วนหัวตัวอ้างอิง HTTP: ความยาวของ origin ภายในตัวอ้างอิงเกินขีดจำกัด “%1$S” ไบต์ - กำลังเอาตัวอ้างอิงที่มี origin “%2$S” ออก
+
+# LOCALIZATION NOTE: Do not translate "no-referrer-when-downgrade", "origin-when-cross-origin" and "unsafe-url". %S is the URI of the loading channel.
+ReferrerPolicyDisallowRelaxingWarning=นโยบายตัวอ้างอิง: นโยบายที่มีข้อจำกัดน้อยลงรวมถึง ‘no-referrer-when-downgrade’, ‘origin-when-cross-origin’ และ ‘unsafe-url’ จะถูกเพิกเฉยในไม่ช้าสำหรับคำขอแบบข้ามไซต์: %S
+# LOCALIZATION NOTE: %1$S is the ignored referrer policy, %2$S is the URI of the loading channel.
+ReferrerPolicyDisallowRelaxingMessage=นโยบายตัวอ้างอิง: เพิกเฉยนโยบายตัวอ้างอิงที่มีข้อจำกัดน้อยลง “%1$S” สำหรับคำขอแบบข้ามไซต์: %2$S
+
+# X-Frame-Options
+# LOCALIZATION NOTE(XFrameOptionsInvalid): %1$S is the header value, %2$S is frame URI. Do not translate "X-Frame-Options".
+XFrameOptionsInvalid = พบส่วนหัว X-Frame-Options ที่ไม่ถูกต้องเมื่อโหลด “%2$S”: “%1$S” ไม่ใช่คำสั่งที่ใช้ได้
+# LOCALIZATION NOTE(XFrameOptionsDeny): %1$S is the header value, %2$S is frame URI and %3$S is the parent document URI. Do not translate "X-Frame-Options".
+XFrameOptionsDeny=การโหลด “%2$S” ในเฟรมถูกปฏิเสธโดยคำสั่ง “X-Frame-Options“ ที่กำหนดเป็น “%1$S“
+
+# HTTPS-Only Mode
+# LOCALIZATION NOTE: %1$S is the URL of the upgraded request; %2$S is the upgraded scheme.
+HTTPSOnlyUpgradeRequest = กำลังอัปเกรดคำร้องขอที่ไม่ปลอดภัย “%1$S” ให้ไปใช้ “%2$S”
+# LOCALIZATION NOTE: %1$S is the URL of request.
+HTTPSOnlyNoUpgradeException = ไม่อัปเกรดคำขอที่ไม่ปลอดภัย “%1$S” เนื่องจากได้รับการยกเว้น
+# LOCALIZATION NOTE: %1$S is the URL of the failed request; %2$S is an error-code.
+HTTPSOnlyFailedRequest = การอัปเกรดคำขอที่ไม่ปลอดภัย “%1$S” ล้มเหลว (%2$S)
+# LOCALIZATION NOTE: %S is the URL of the failed request;
+HTTPSOnlyFailedDowngradeAgain = การอัปเกรดคำขอที่ไม่ปลอดภัย “%S” ล้มเหลว กำลังดาวน์เกรดเป็น “http” อีกครั้ง
+# LOCALIZATION NOTE: Hints or indicates a new transaction for a URL is likely coming soon. We use
+# a speculative connection to start a TCP connection so that the resource is immediately ready
+# when the transaction is actually submitted. HTTPS-Only and HTTPS-First will upgrade such
+# speculative TCP connections from http to https.
+# %1$S is the URL of the upgraded speculative TCP connection; %2$S is the upgraded scheme.
+HTTPSOnlyUpgradeSpeculativeConnection = กำลังอัปเกรดการเชื่อมต่อ TCP แบบคาดการณ์ที่ไม่ปลอดภัย “%1$S” ให้ไปใช้ “%2$S”
+
+# LOCALIZATION NOTE: %S is the URL of the blocked request;
+IframeSandboxBlockedDownload = การดาวน์โหลด “%S” ถูกปิดกั้นเนื่องจาก iframe ที่ทริกเกอร์มีการตั้งค่าสถานะ sandbox ไว้
+
+# LOCALIZATION NOTE: %S is the URL of the blocked request;
+SandboxBlockedCustomProtocols = ปิดกั้นการนำทางไปยังโปรโตคอลที่กำหนดเอง “%S” จากบริบทที่อยู่ใน sandbox
+
+# Sanitizer API
+# LOCALIZATION NOTE: Please do not localize "DocumentFragment". It's the name of an API.
+SanitizerRcvdNoInput = ได้รับอินพุตเปล่าหรือไม่ได้รับอินพุตใด กำลังส่งกลับ DocumentFragment เปล่า
+# LOCALIZATION NOTE: "Sanitizer" is the name of the API. Please do not localize.
+SanitizerOptionsDiscarded = ยังไม่รองรับตัวเลือกสำหรับตัวสร้าง Sanitizer โปรดทราบว่านี่เป็นลักษณะการทำงานแบบทดลอง
diff --git a/l10n-th/dom/chrome/svg/svg.properties b/l10n-th/dom/chrome/svg/svg.properties
new file mode 100644
index 0000000000..374efd7324
--- /dev/null
+++ b/l10n-th/dom/chrome/svg/svg.properties
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+AttributeParseWarning=ค่าที่ไม่คาดคิด %2$S กำลังแยกวิเคราะห์แอตทริบิวต์ %1$S
diff --git a/l10n-th/dom/chrome/xml/prettyprint.dtd b/l10n-th/dom/chrome/xml/prettyprint.dtd
new file mode 100644
index 0000000000..cc71681995
--- /dev/null
+++ b/l10n-th/dom/chrome/xml/prettyprint.dtd
@@ -0,0 +1,5 @@
+<!-- This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this
+ - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
+
+<!ENTITY xml.nostylesheet "ไฟล์ XML นี้ดูเหมือนจะไม่มีข้อมูลลักษณะใด ๆ ที่เกี่ยวข้องกัน ต้นไม้เอกสารถูกแสดงด้านล่าง">
diff --git a/l10n-th/dom/chrome/xslt/xslt.properties b/l10n-th/dom/chrome/xslt/xslt.properties
new file mode 100644
index 0000000000..8bf5835599
--- /dev/null
+++ b/l10n-th/dom/chrome/xslt/xslt.properties
@@ -0,0 +1,39 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+1 = การแยกวิเคราะห์แผ่นลักษณะ XSLT ล้มเหลว
+2 = การแยกวิเคราะห์นิพจน์ XPath ล้มเหลว
+3 =
+4 = การแปลง XSLT ล้มเหลว
+5 = ฟังก์ชัน XSLT/XPath ไม่ถูกต้อง
+6 = แผ่นลักษณะ XSLT (อาจ) มีการเกิดซ้ำ
+7 = ค่าแอตทริบิวต์ไม่ถูกต้องใน XSLT 1.0
+8 = นิพจน์ XPath ถูกคาดไว้ให้ส่งกลับ NodeSet
+9 = การแปลง XSLT ถูกสิ้นสุดโดย <xsl:message>
+10 = เกิดข้อผิดพลาดเครือข่ายในการโหลดแผ่นลักษณะ XSLT:
+11 = แผ่นลักษณะ XSLT ไม่มี XML mimetype:
+12 = แผ่นลักษณะ XSLT นำเข้าหรือรวมตัวเองโดยตรงหรือไม่โดยตรง:
+13 = ฟังก์ชัน XPath ถูกเรียกด้วยจำนวนอาร์กิวเมนต์ที่ไม่ถูกต้อง
+14 = ฟังก์ชันส่วนขยาย XPath ที่ไม่รู้จักถูกเรียก
+15 = ความล้มเหลวในการแยกวิเคราะห์ XPath: คาดหวัง ‘)’:
+16 = ความล้มเหลวในการแยกวิเคราะห์ XPath: แกนไม่ถูกต้อง:
+17 = ความล้มเหลวในการแยกวิเคราะห์ XPath: คาดหวังการทดสอบชื่อหรือชนิดโหนด:
+18 = ความล้มเหลวในการแยกวิเคราะห์ XPath: คาดหวัง ‘]’:
+19 = ความล้มเหลวในการแยกวิเคราะห์ XPath: ชื่อตัวแปรไม่ถูกต้อง:
+20 = XPath parse failure: unexpected end of expression:
+21 = ความล้มเหลวในการแยกวิเคราะห์ XPath: คาดหวังตัวดำเนินการ:
+22 = XPath parse failure: unclosed literal:
+23 = XPath parse failure: ':' unexpected:
+24 = XPath parse failure: '!' unexpected, negation is not():
+25 = XPath parse failure: illegal character found:
+26 = ความล้มเหลวในการแยกวิเคราะห์ XPath: คาดหวังตัวดำเนินการไบนารี:
+27 = การโหลดแผ่นลักษณะ XSLT ถูกปิดกั้นเนื่องจากเหตุผลเกี่ยวกับความปลอดภัย
+28 = กำลังประเมินนิพจน์ที่ไม่ถูกต้อง
+29 = วงเล็บปีกกาไม่สมดุล
+30 = กำลังสร้างองค์ประกอบด้วย QName ที่ไม่ถูกต้อง
+31 = Variable binding shadows variable binding within the same template.
+32 = ไม่อนุญาตให้ทำการเรียกไปยังฟังก์ชัน key
+
+LoadingError = เกิดข้อผิดพลาดในการโหลดแผ่นลักษณะ: %S
+TransformError = เกิดข้อผิดพลาดระหว่างการแปลง XSLT: %S
diff --git a/l10n-th/dom/dom/XMLPrettyPrint.ftl b/l10n-th/dom/dom/XMLPrettyPrint.ftl
new file mode 100644
index 0000000000..f1eac15ecc
--- /dev/null
+++ b/l10n-th/dom/dom/XMLPrettyPrint.ftl
@@ -0,0 +1,5 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+xml-nostylesheet = ไฟล์ XML นี้ดูเหมือนจะไม่มีข้อมูลลักษณะใด ๆ ที่เกี่ยวข้องกัน ต้นไม้เอกสารถูกแสดงด้านล่าง
diff --git a/l10n-th/dom/dom/media.ftl b/l10n-th/dom/dom/media.ftl
new file mode 100644
index 0000000000..e47a66f1fc
--- /dev/null
+++ b/l10n-th/dom/dom/media.ftl
@@ -0,0 +1,6 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+default-audio-output-device-label = อุปกรณ์เอาต์พุตเสียงเริ่มต้น
+mediastatus-fallback-title = { -brand-short-name } กำลังเล่นสื่อ