@seshuk/payload-plugin-openapi 1.0.0-beta.1 → 1.0.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (148) hide show
  1. package/README.md +8 -4
  2. package/dist/server/spec/buildDocument.js +62 -9
  3. package/dist/server/spec/buildDocument.js.map +1 -1
  4. package/dist/server/spec/components.js.map +1 -1
  5. package/dist/server/spec/entitySchemas.d.ts +5 -6
  6. package/dist/server/spec/entitySchemas.js.map +1 -1
  7. package/dist/server/spec/filters.d.ts +5 -1
  8. package/dist/server/spec/filters.js +21 -10
  9. package/dist/server/spec/filters.js.map +1 -1
  10. package/dist/server/spec/hierarchy.js +9 -4
  11. package/dist/server/spec/hierarchy.js.map +1 -1
  12. package/dist/server/spec/paths/collections.js +111 -7
  13. package/dist/server/spec/paths/collections.js.map +1 -1
  14. package/dist/server/spec/paths/custom.d.ts +4 -2
  15. package/dist/server/spec/paths/custom.js +1 -1
  16. package/dist/server/spec/paths/custom.js.map +1 -1
  17. package/dist/server/spec/paths/system.d.ts +2 -1
  18. package/dist/server/spec/paths/system.js +67 -1
  19. package/dist/server/spec/paths/system.js.map +1 -1
  20. package/dist/server/spec/plugins/ecommerce.d.ts +3 -0
  21. package/dist/server/spec/plugins/ecommerce.js +270 -0
  22. package/dist/server/spec/plugins/ecommerce.js.map +1 -0
  23. package/dist/server/spec/plugins/importExport.d.ts +3 -0
  24. package/dist/server/spec/plugins/importExport.js +202 -0
  25. package/dist/server/spec/plugins/importExport.js.map +1 -0
  26. package/dist/server/spec/plugins/index.d.ts +3 -0
  27. package/dist/server/spec/plugins/index.js +21 -0
  28. package/dist/server/spec/plugins/index.js.map +1 -0
  29. package/dist/server/spec/plugins/mcp.d.ts +3 -0
  30. package/dist/server/spec/plugins/mcp.js +118 -0
  31. package/dist/server/spec/plugins/mcp.js.map +1 -0
  32. package/dist/server/spec/plugins/multiTenant.d.ts +3 -0
  33. package/dist/server/spec/plugins/multiTenant.js +39 -0
  34. package/dist/server/spec/plugins/multiTenant.js.map +1 -0
  35. package/dist/server/spec/plugins/search.d.ts +3 -0
  36. package/dist/server/spec/plugins/search.js +43 -0
  37. package/dist/server/spec/plugins/search.js.map +1 -0
  38. package/dist/server/spec/plugins/seo.d.ts +3 -0
  39. package/dist/server/spec/plugins/seo.js +83 -0
  40. package/dist/server/spec/plugins/seo.js.map +1 -0
  41. package/dist/server/spec/plugins/shared.d.ts +35 -0
  42. package/dist/server/spec/plugins/shared.js +37 -0
  43. package/dist/server/spec/plugins/shared.js.map +1 -0
  44. package/dist/server/spec/plugins/storageR2.d.ts +3 -0
  45. package/dist/server/spec/plugins/storageR2.js +91 -0
  46. package/dist/server/spec/plugins/storageR2.js.map +1 -0
  47. package/dist/server/spec/plugins/stripe.d.ts +10 -0
  48. package/dist/server/spec/plugins/stripe.js +102 -0
  49. package/dist/server/spec/plugins/stripe.js.map +1 -0
  50. package/dist/server/spec/security.d.ts +2 -1
  51. package/dist/server/spec/security.js +5 -2
  52. package/dist/server/spec/security.js.map +1 -1
  53. package/dist/server/spec/tags.d.ts +4 -1
  54. package/dist/server/spec/tags.js +18 -2
  55. package/dist/server/spec/tags.js.map +1 -1
  56. package/dist/server/ui/html.js +2 -2
  57. package/dist/server/ui/html.js.map +1 -1
  58. package/dist/shared/translations/locales/ar.js +74 -0
  59. package/dist/shared/translations/locales/ar.js.map +1 -1
  60. package/dist/shared/translations/locales/az.js +74 -0
  61. package/dist/shared/translations/locales/az.js.map +1 -1
  62. package/dist/shared/translations/locales/bg.js +74 -0
  63. package/dist/shared/translations/locales/bg.js.map +1 -1
  64. package/dist/shared/translations/locales/bnBd.js +74 -0
  65. package/dist/shared/translations/locales/bnBd.js.map +1 -1
  66. package/dist/shared/translations/locales/bnIn.js +74 -0
  67. package/dist/shared/translations/locales/bnIn.js.map +1 -1
  68. package/dist/shared/translations/locales/ca.js +74 -0
  69. package/dist/shared/translations/locales/ca.js.map +1 -1
  70. package/dist/shared/translations/locales/cs.js +74 -0
  71. package/dist/shared/translations/locales/cs.js.map +1 -1
  72. package/dist/shared/translations/locales/da.js +74 -0
  73. package/dist/shared/translations/locales/da.js.map +1 -1
  74. package/dist/shared/translations/locales/de.js +74 -0
  75. package/dist/shared/translations/locales/de.js.map +1 -1
  76. package/dist/shared/translations/locales/en.js +74 -0
  77. package/dist/shared/translations/locales/en.js.map +1 -1
  78. package/dist/shared/translations/locales/es.js +74 -0
  79. package/dist/shared/translations/locales/es.js.map +1 -1
  80. package/dist/shared/translations/locales/et.js +74 -0
  81. package/dist/shared/translations/locales/et.js.map +1 -1
  82. package/dist/shared/translations/locales/fa.js +74 -0
  83. package/dist/shared/translations/locales/fa.js.map +1 -1
  84. package/dist/shared/translations/locales/fr.js +74 -0
  85. package/dist/shared/translations/locales/fr.js.map +1 -1
  86. package/dist/shared/translations/locales/he.js +74 -0
  87. package/dist/shared/translations/locales/he.js.map +1 -1
  88. package/dist/shared/translations/locales/hr.js +74 -0
  89. package/dist/shared/translations/locales/hr.js.map +1 -1
  90. package/dist/shared/translations/locales/hu.js +74 -0
  91. package/dist/shared/translations/locales/hu.js.map +1 -1
  92. package/dist/shared/translations/locales/hy.js +74 -0
  93. package/dist/shared/translations/locales/hy.js.map +1 -1
  94. package/dist/shared/translations/locales/id.js +74 -0
  95. package/dist/shared/translations/locales/id.js.map +1 -1
  96. package/dist/shared/translations/locales/is.js +74 -0
  97. package/dist/shared/translations/locales/is.js.map +1 -1
  98. package/dist/shared/translations/locales/it.js +74 -0
  99. package/dist/shared/translations/locales/it.js.map +1 -1
  100. package/dist/shared/translations/locales/ja.js +74 -0
  101. package/dist/shared/translations/locales/ja.js.map +1 -1
  102. package/dist/shared/translations/locales/ko.js +74 -0
  103. package/dist/shared/translations/locales/ko.js.map +1 -1
  104. package/dist/shared/translations/locales/lt.js +74 -0
  105. package/dist/shared/translations/locales/lt.js.map +1 -1
  106. package/dist/shared/translations/locales/lv.js +74 -0
  107. package/dist/shared/translations/locales/lv.js.map +1 -1
  108. package/dist/shared/translations/locales/my.js +74 -0
  109. package/dist/shared/translations/locales/my.js.map +1 -1
  110. package/dist/shared/translations/locales/nb.js +74 -0
  111. package/dist/shared/translations/locales/nb.js.map +1 -1
  112. package/dist/shared/translations/locales/nl.js +74 -0
  113. package/dist/shared/translations/locales/nl.js.map +1 -1
  114. package/dist/shared/translations/locales/pl.js +74 -0
  115. package/dist/shared/translations/locales/pl.js.map +1 -1
  116. package/dist/shared/translations/locales/pt.js +74 -0
  117. package/dist/shared/translations/locales/pt.js.map +1 -1
  118. package/dist/shared/translations/locales/ro.js +74 -0
  119. package/dist/shared/translations/locales/ro.js.map +1 -1
  120. package/dist/shared/translations/locales/rs.js +74 -0
  121. package/dist/shared/translations/locales/rs.js.map +1 -1
  122. package/dist/shared/translations/locales/rsLatin.js +74 -0
  123. package/dist/shared/translations/locales/rsLatin.js.map +1 -1
  124. package/dist/shared/translations/locales/ru.js +74 -0
  125. package/dist/shared/translations/locales/ru.js.map +1 -1
  126. package/dist/shared/translations/locales/sk.js +74 -0
  127. package/dist/shared/translations/locales/sk.js.map +1 -1
  128. package/dist/shared/translations/locales/sl.js +74 -0
  129. package/dist/shared/translations/locales/sl.js.map +1 -1
  130. package/dist/shared/translations/locales/sv.js +74 -0
  131. package/dist/shared/translations/locales/sv.js.map +1 -1
  132. package/dist/shared/translations/locales/ta.js +74 -0
  133. package/dist/shared/translations/locales/ta.js.map +1 -1
  134. package/dist/shared/translations/locales/th.js +74 -0
  135. package/dist/shared/translations/locales/th.js.map +1 -1
  136. package/dist/shared/translations/locales/tr.js +74 -0
  137. package/dist/shared/translations/locales/tr.js.map +1 -1
  138. package/dist/shared/translations/locales/uk.js +74 -0
  139. package/dist/shared/translations/locales/uk.js.map +1 -1
  140. package/dist/shared/translations/locales/vi.js +74 -0
  141. package/dist/shared/translations/locales/vi.js.map +1 -1
  142. package/dist/shared/translations/locales/zh.js +74 -0
  143. package/dist/shared/translations/locales/zh.js.map +1 -1
  144. package/dist/shared/translations/locales/zhTw.js +74 -0
  145. package/dist/shared/translations/locales/zhTw.js.map +1 -1
  146. package/dist/shared/translations/types.d.ts +74 -0
  147. package/dist/shared/types/index.d.ts +23 -8
  148. package/package.json +23 -15
@@ -1 +1 @@
1
- {"version":3,"file":"th.js","names":[],"sources":["../../../../src/shared/translations/locales/th.ts"],"sourcesContent":["import type { PluginDefaultTranslationsObject } from '@/shared/translations/types.js'\n\nexport const th: PluginDefaultTranslationsObject = {\n '@seshuk/payload-plugin-openapi': {\n paramDepth: 'จำนวนระดับของเอกสารที่เกี่ยวข้องที่จะดึงข้อมูลมาแสดง',\n paramSort: 'ฟิลด์ที่ใช้เรียงลำดับ; เติม `-` นำหน้าเพื่อเรียงจากมากไปน้อย เช่น `-createdAt`',\n paramSortShort: 'ฟิลด์ที่ใช้เรียงลำดับ; เติม `-` นำหน้าเพื่อเรียงจากมากไปน้อย',\n paramDraft: 'คืนค่าเวอร์ชันแบบร่าง',\n paramTrash: 'รวมเอกสารที่อยู่ในถังขยะด้วย',\n paramAutosave: 'บันทึกเป็นการบันทึกอัตโนมัติ: อัปเดตเวอร์ชันบันทึกอัตโนมัติล่าสุดแทนการเพิ่มเวอร์ชันใหม่',\n paramPublishAllLocales: 'เผยแพร่ทุกภาษา ไม่ใช่เฉพาะภาษาของคำขอ',\n paramUnpublishAllLocales: 'ยกเลิกการเผยแพร่ทุกภาษาและเปลี่ยนเอกสารกลับเป็นแบบร่าง',\n paramOverrideLock: 'ไม่สนใจการล็อกของผู้ใช้อื่น ค่าเริ่มต้น false',\n paramSelectedLocales: 'คัดลอกเฉพาะภาษาเหล่านี้ไปยังสำเนา ค่าเริ่มต้น: ทุกภาษา',\n paramFlattenLocales:\n 'เมื่อใช้ `locale=all` ให้ตั้งค่าเป็น false เพื่อเก็บฟิลด์ที่แปลภาษาไว้เป็นออบเจ็กต์แยกตามแต่ละโลแคล ค่าเริ่มต้นคือ true',\n paramLocale: 'โลแคลที่จะคืนค่า หรือ `all` เพื่อรับทุกโลแคล ดูที่หัวข้อ Localization ในคำอธิบาย API',\n paramFallbackLocale: 'โลแคลที่จะใช้แทนเมื่อไม่มีค่าที่แปลภาษาไว้ หรือ `none` เพื่อปิดการใช้งาน',\n paramValidateLocale: 'โลแคลที่จะตรวจสอบ หรือ `all` เพื่อรับทุกโลแคล ระบุพารามิเตอร์ซ้ำหากมีมากกว่าหนึ่งโลแคล',\n paramComputeHierarchyPaths:\n 'ตั้งเป็น true เพื่อคำนวณเส้นทาง `{{slugPath}}` และ `{{titlePath}}` การเลือกฟิลด์ใดฟิลด์หนึ่งก็คำนวณเช่นกัน',\n\n schemaSelect: 'เลือกฟิลด์ที่จะคืนค่า เช่น `select[title]=true` หากไม่ระบุจะคืนค่าทั้งหมด',\n schemaPopulate: 'ดึงข้อมูลเอกสารที่เกี่ยวข้องในแต่ละคอลเลกชัน เช่น `populate[posts][title]=true`',\n schemaJoins: 'การควบคุมแต่ละ join (limit/page/sort/where/count) เช่น `joins[posts][limit]=10`',\n schemaWhere:\n 'ตัวกรอง `where` ของ Payload ซ้อนฟิลด์แล้วตามด้วยตัวดำเนินการ: `where[field][equals]=value` รวมหลายเงื่อนไขด้วยอาเรย์ `and` / `or` เช่น `where[or][0][field][equals]=value` แต่ละฟิลด์จะแสดงเฉพาะตัวดำเนินการที่ใช้ได้กับชนิดของฟิลด์นั้น',\n schemaSupportedTimezones: 'เขตเวลาที่รองรับในรูปแบบ IANA',\n schemaPerLocale: 'ค่าแยกตามแต่ละโลแคล จะคืนค่าเมื่อใช้ `locale=all`',\n schemaHierarchySlugPath:\n 'เส้นทางสลัก เช่น `parent/child` คำนวณเมื่ออ่านพร้อม `computeHierarchyPaths=true` หรือเมื่อถูกเลือก ใช้ใน `where` ไม่ได้',\n schemaHierarchyTitlePath:\n 'เส้นทางชื่อเรื่อง เช่น `Parent/Child` คำนวณเมื่ออ่านพร้อม `computeHierarchyPaths=true` หรือเมื่อถูกเลือก ใช้ใน `where` ไม่ได้',\n\n collectionList: 'รายการเอกสารแบบแบ่งหน้า',\n collectionDoc: 'เอกสารหนึ่งรายการ',\n collectionCreated: 'เอกสารที่สร้างขึ้น',\n collectionUpdated: 'เอกสารที่อัปเดตแล้ว',\n collectionDeleted: 'เอกสารที่ถูกลบ',\n collectionBulkUpdate: 'ผลการอัปเดตแบบกลุ่ม',\n collectionBulkDelete: 'ผลการลบแบบกลุ่ม',\n collectionCount: 'จำนวนเอกสาร',\n collectionDuplicated: 'เอกสารที่ทำสำเนา',\n validateResult: 'ผลการตรวจสอบ ไม่มีการบันทึกใดๆ ค่าของฟิลด์ที่ไม่ถูกต้องจะคืนค่า `valid: false` พร้อมข้อผิดพลาด ไม่ใช่สถานะข้อผิดพลาด',\n validateBody:\n 'ข้อมูลเอกสารที่จะตรวจสอบ สำหรับเอกสารที่บันทึกไว้หรือเอกสาร global ข้อมูลจะถูกรวมทับแบบร่างล่าสุด หรือเอกสารที่บันทึกไว้หากไม่มีแบบร่าง',\n\n globalDoc: 'เอกสาร global',\n\n authLogin: 'ผลการเข้าสู่ระบบ',\n authLogout: 'ผลการออกจากระบบ',\n authMe: 'ผู้ใช้ที่เข้าสู่ระบบอยู่ในปัจจุบัน',\n authRefreshToken: 'โทเค็นที่รีเฟรชแล้ว',\n authForgotPassword: 'ส่งอีเมลรีเซ็ตรหัสผ่านแล้ว',\n authResetPassword: 'ผลการรีเซ็ตรหัสผ่าน',\n authFirstRegister: 'ผู้ใช้คนแรกที่สร้างขึ้นพร้อมกับโทเค็นการยืนยันตัวตน',\n authInit: 'ระบุว่าคอลเลกชันการยืนยันตัวตนนี้มีผู้ใช้อยู่แล้วหรือยัง',\n authAccess: 'สิทธิ์ของผู้ใช้ปัจจุบันสำหรับทุกคอลเลกชันและ Globals',\n docAccess: 'สิทธิ์ของผู้ใช้ปัจจุบันสำหรับเอกสารนี้',\n docAccessBody: 'ข้อมูลเอกสารที่ใช้ตรวจสอบสิทธิ์ หากไม่ระบุ Payload จะใช้เอกสารที่บันทึกไว้ ถ้ามี',\n authUnlock: 'ผลการปลดล็อก',\n authVerify: 'ผลการยืนยัน',\n apiKeyReveal: 'API key ที่ถอดรหัสแล้ว',\n\n versionList: 'รายการเวอร์ชันแบบแบ่งหน้า',\n versionSingle: 'เวอร์ชันหนึ่งรายการ',\n versionRestored: 'เอกสารที่กู้คืนแล้ว',\n versionWhere: 'กรองตามฟิลด์ของเวอร์ชัน เช่น `where[parent][equals]=<docId>`',\n\n jobsRunSummary: 'รันงานที่อยู่ในคิว (และจัดการตารางเวลาตามค่าเริ่มต้น)',\n jobsSchedulesSummary: 'เพิ่มงานที่ถึงกำหนดตามตารางเวลาเข้าคิว',\n jobsRunResult: 'ผลการรัน',\n jobsSchedulesResult: 'ผลการจัดตารางเวลา',\n jobsRunAllQueues: 'รันงานในทุกคิว',\n jobsLimit: 'จำนวนงานสูงสุดที่จะรัน',\n jobsDisableScheduling: 'ข้ามการจัดการตารางเวลาที่ `run` ทำตามค่าเริ่มต้น',\n jobsSilent: 'ระงับการบันทึกล็อกการรัน',\n jobsSchedulesAllQueues: 'จัดการตารางเวลาในทุกคิว',\n jobsQueue: 'จำกัดการดำเนินการให้อยู่เพียงคิวเดียว คิวที่รู้จัก: {{queues}}',\n\n uploadFile: 'ไฟล์ไบนารีที่จะอัปโหลด',\n uploadBody:\n 'ส่ง `multipart/form-data` เพื่ออัปโหลดไฟล์ (ส่วน `file` ที่เป็นไบนารี พร้อมส่วน `_payload` ที่มีฟิลด์ในรูปแบบ JSON string) หรือส่ง `application/json` พร้อมเฉพาะฟิลด์เมื่อไม่มีไฟล์',\n uploadPayloadField: 'ฟิลด์ {{schema}} ในรูปแบบ JSON string ตัวอย่าง: `{\"alt\":\"A caption\"}`',\n fileServe: 'ไฟล์',\n filePartial: 'ส่วนหนึ่งของไฟล์ สำหรับคำขอ `Range`',\n uploadInstructionsSummary: 'รับคำแนะนำในการอัปโหลดไฟล์ก่อนบันทึกเอกสาร',\n uploadInstructionsResult: 'ปลายทางสำหรับส่งไบต์ของไฟล์ และค่า `file` ที่ต้องส่งไปกับคำขอสร้างหรืออัปเดต',\n uploadStagePutSummary: 'ส่งไบต์ของไฟล์สำหรับการอัปโหลดชั่วคราว',\n uploadStageDeleteSummary: 'ลบการอัปโหลดชั่วคราว',\n uploadStageResult: 'เสร็จแล้ว ไม่มีเนื้อหา',\n\n error400: 'ข้อผิดพลาดในการตรวจสอบความถูกต้องหรือการค้นหา (ValidationError, QueryError)',\n error401: 'ยังไม่ได้ยืนยันตัวตน (AuthenticationError)',\n error403: 'ถูกปฏิเสธโดยการควบคุมการเข้าถึง (Forbidden, UnverifiedEmail)',\n error404: 'ไม่พบเอกสาร (NotFound)',\n error500: 'ข้อผิดพลาดภายในเซิร์ฟเวอร์ (APIError)',\n\n securityBearer:\n 'วาง `token` ที่ได้จากเอนด์พอยต์การเข้าสู่ระบบ โดยจะส่งในรูปแบบ `Authorization: Bearer <token>` Payload ยังรองรับรูปแบบ `JWT <token>` และคุกกี้ `{{cookiePrefix}}-token` ด้วย',\n securityInteractive: 'การเข้าสู่ระบบแบบโต้ตอบ: กรอกชื่อผู้ใช้ (หรืออีเมล) และรหัสผ่าน เว้นช่อง Client ID/Secret ว่างไว้',\n\n tagCollections: 'คอลเลกชัน',\n tagCollectionsDesc: 'เอนด์พอยต์ของคอลเลกชันเอกสาร (CRUD, การนับจำนวน, การทำสำเนา)',\n tagGlobals: 'Globals',\n tagGlobalsDesc: 'เอนด์พอยต์ของเอกสาร global',\n tagSystem: 'ระบบ',\n tagSystemDesc: 'เอนด์พอยต์ของระบบ Payload',\n tagAuth: 'การยืนยันตัวตน',\n tagVersions: 'เวอร์ชัน',\n tagJobs: 'งาน',\n tagUploads: 'การอัปโหลด',\n tagAccess: 'การเข้าถึง',\n\n localizationHeading: 'การแปลภาษา',\n localizationNote:\n 'โลแคลที่ใช้ได้: {{locales}} ส่ง `?locale=<code>` ไปยังเอนด์พอยต์อ่านข้อมูลเพื่อเลือกหนึ่งโลแคล ส่ง `?locale=all` เพื่อรับทุกโลแคลพร้อมกัน โดยแต่ละฟิลด์ที่แปลภาษาไว้จะถูกคืนค่าเป็นออบเจ็กต์ที่ใช้รหัสโลแคลเป็นคีย์ (เช่น `{ \"en\": \"Hello\", \"de\": \"Hallo\" }`) แทนค่าเดียว ตั้งค่า `?flattenLocales=false` ร่วมกับ `locale=all` เพื่อเก็บรูปแบบออบเจ็กต์แยกตามโลแคลนั้นไว้ สคีมาของฟิลด์จะแสดงรูปแบบของโลแคลเดียว',\n docLanguagesNote: 'เอกสารนี้มีให้บริการในภาษา: {{languages}} เพิ่ม `?lang=<code>` ต่อท้าย URL ของสเปกนี้เพื่อสลับภาษา',\n },\n}\n"],"mappings":"AAEA,MAAa,KAAsC,EACjD,kCAAkC;CAChC,YAAY;CACZ,WAAW;CACX,gBAAgB;CAChB,YAAY;CACZ,YAAY;CACZ,eAAe;CACf,wBAAwB;CACxB,0BAA0B;CAC1B,mBAAmB;CACnB,sBAAsB;CACtB,qBACE;CACF,aAAa;CACb,qBAAqB;CACrB,qBAAqB;CACrB,4BACE;CAEF,cAAc;CACd,gBAAgB;CAChB,aAAa;CACb,aACE;CACF,0BAA0B;CAC1B,iBAAiB;CACjB,yBACE;CACF,0BACE;CAEF,gBAAgB;CAChB,eAAe;CACf,mBAAmB;CACnB,mBAAmB;CACnB,mBAAmB;CACnB,sBAAsB;CACtB,sBAAsB;CACtB,iBAAiB;CACjB,sBAAsB;CACtB,gBAAgB;CAChB,cACE;CAEF,WAAW;CAEX,WAAW;CACX,YAAY;CACZ,QAAQ;CACR,kBAAkB;CAClB,oBAAoB;CACpB,mBAAmB;CACnB,mBAAmB;CACnB,UAAU;CACV,YAAY;CACZ,WAAW;CACX,eAAe;CACf,YAAY;CACZ,YAAY;CACZ,cAAc;CAEd,aAAa;CACb,eAAe;CACf,iBAAiB;CACjB,cAAc;CAEd,gBAAgB;CAChB,sBAAsB;CACtB,eAAe;CACf,qBAAqB;CACrB,kBAAkB;CAClB,WAAW;CACX,uBAAuB;CACvB,YAAY;CACZ,wBAAwB;CACxB,WAAW;CAEX,YAAY;CACZ,YACE;CACF,oBAAoB;CACpB,WAAW;CACX,aAAa;CACb,2BAA2B;CAC3B,0BAA0B;CAC1B,uBAAuB;CACvB,0BAA0B;CAC1B,mBAAmB;CAEnB,UAAU;CACV,UAAU;CACV,UAAU;CACV,UAAU;CACV,UAAU;CAEV,gBACE;CACF,qBAAqB;CAErB,gBAAgB;CAChB,oBAAoB;CACpB,YAAY;CACZ,gBAAgB;CAChB,WAAW;CACX,eAAe;CACf,SAAS;CACT,aAAa;CACb,SAAS;CACT,YAAY;CACZ,WAAW;CAEX,qBAAqB;CACrB,kBACE;CACF,kBAAkB;AACpB,EACF"}
1
+ {"version":3,"file":"th.js","names":[],"sources":["../../../../src/shared/translations/locales/th.ts"],"sourcesContent":["import type { PluginDefaultTranslationsObject } from '@/shared/translations/types.js'\n\nexport const th: PluginDefaultTranslationsObject = {\n '@seshuk/payload-plugin-openapi': {\n paramDepth: 'จำนวนระดับของเอกสารที่เกี่ยวข้องที่จะดึงข้อมูลมาแสดง',\n paramSort: 'ฟิลด์ที่ใช้เรียงลำดับ; เติม `-` นำหน้าเพื่อเรียงจากมากไปน้อย เช่น `-createdAt`',\n paramSortShort: 'ฟิลด์ที่ใช้เรียงลำดับ; เติม `-` นำหน้าเพื่อเรียงจากมากไปน้อย',\n paramDraft: 'คืนค่าเวอร์ชันแบบร่าง',\n paramTrash: 'รวมเอกสารที่อยู่ในถังขยะด้วย',\n paramAutosave: 'บันทึกเป็นการบันทึกอัตโนมัติ: อัปเดตเวอร์ชันบันทึกอัตโนมัติล่าสุดแทนการเพิ่มเวอร์ชันใหม่',\n paramPublishAllLocales: 'เผยแพร่ทุกภาษา ไม่ใช่เฉพาะภาษาของคำขอ',\n paramUnpublishAllLocales: 'ยกเลิกการเผยแพร่ทุกภาษาและเปลี่ยนเอกสารกลับเป็นแบบร่าง',\n paramOverrideLock: 'ไม่สนใจการล็อกของผู้ใช้อื่น ค่าเริ่มต้น false',\n paramSelectedLocales: 'คัดลอกเฉพาะภาษาเหล่านี้ไปยังสำเนา ค่าเริ่มต้น: ทุกภาษา',\n paramFlattenLocales:\n 'เมื่อใช้ `locale=all` ให้ตั้งค่าเป็น false เพื่อเก็บฟิลด์ที่แปลภาษาไว้เป็นออบเจ็กต์แยกตามแต่ละโลแคล ค่าเริ่มต้นคือ true',\n paramLocale: 'โลแคลที่จะคืนค่า หรือ `all` เพื่อรับทุกโลแคล ดูที่หัวข้อ Localization ในคำอธิบาย API',\n paramFallbackLocale: 'โลแคลที่จะใช้แทนเมื่อไม่มีค่าที่แปลภาษาไว้ หรือ `none` เพื่อปิดการใช้งาน',\n paramValidateLocale: 'โลแคลที่จะตรวจสอบ หรือ `all` เพื่อรับทุกโลแคล ระบุพารามิเตอร์ซ้ำหากมีมากกว่าหนึ่งโลแคล',\n paramComputeHierarchyPaths:\n 'ตั้งเป็น true เพื่อคำนวณเส้นทาง `{{slugPath}}` และ `{{titlePath}}` การเลือกฟิลด์ใดฟิลด์หนึ่งก็คำนวณเช่นกัน',\n\n schemaSelect: 'เลือกฟิลด์ที่จะคืนค่า เช่น `select[title]=true` หากไม่ระบุจะคืนค่าทั้งหมด',\n schemaPopulate: 'ดึงข้อมูลเอกสารที่เกี่ยวข้องในแต่ละคอลเลกชัน เช่น `populate[posts][title]=true`',\n schemaJoins: 'การควบคุมแต่ละ join (limit/page/sort/where/count) เช่น `joins[posts][limit]=10`',\n schemaWhere:\n 'ตัวกรอง `where` ของ Payload ซ้อนฟิลด์แล้วตามด้วยตัวดำเนินการ: `where[field][equals]=value` รวมหลายเงื่อนไขด้วยอาเรย์ `and` / `or` เช่น `where[or][0][field][equals]=value` แต่ละฟิลด์จะแสดงเฉพาะตัวดำเนินการที่ใช้ได้กับชนิดของฟิลด์นั้น',\n schemaSupportedTimezones: 'เขตเวลาที่รองรับในรูปแบบ IANA',\n schemaPerLocale: 'ค่าแยกตามแต่ละโลแคล จะคืนค่าเมื่อใช้ `locale=all`',\n schemaHierarchySlugPath:\n 'เส้นทางสลัก เช่น `parent/child` คำนวณเมื่ออ่านพร้อม `computeHierarchyPaths=true` หรือเมื่อถูกเลือก ใช้ใน `where` ไม่ได้',\n schemaHierarchyTitlePath:\n 'เส้นทางชื่อเรื่อง เช่น `Parent/Child` คำนวณเมื่ออ่านพร้อม `computeHierarchyPaths=true` หรือเมื่อถูกเลือก ใช้ใน `where` ไม่ได้',\n\n collectionList: 'รายการเอกสารแบบแบ่งหน้า',\n collectionDoc: 'เอกสารหนึ่งรายการ',\n collectionCreated: 'เอกสารที่สร้างขึ้น',\n collectionUpdated: 'เอกสารที่อัปเดตแล้ว',\n collectionDeleted: 'เอกสารที่ถูกลบ',\n collectionBulkUpdate: 'ผลการอัปเดตแบบกลุ่ม',\n collectionBulkDelete: 'ผลการลบแบบกลุ่ม',\n collectionCount: 'จำนวนเอกสาร',\n collectionDuplicated: 'เอกสารที่ทำสำเนา',\n validateResult: 'ผลการตรวจสอบ ไม่มีการบันทึกใดๆ ค่าของฟิลด์ที่ไม่ถูกต้องจะคืนค่า `valid: false` พร้อมข้อผิดพลาด ไม่ใช่สถานะข้อผิดพลาด',\n validateBody:\n 'ข้อมูลเอกสารที่จะตรวจสอบ สำหรับเอกสารที่บันทึกไว้หรือเอกสาร global ข้อมูลจะถูกรวมทับแบบร่างล่าสุด หรือเอกสารที่บันทึกไว้หากไม่มีแบบร่าง',\n\n globalDoc: 'เอกสาร global',\n\n authLogin: 'ผลการเข้าสู่ระบบ',\n authLogout: 'ผลการออกจากระบบ',\n authMe: 'ผู้ใช้ที่เข้าสู่ระบบอยู่ในปัจจุบัน',\n authRefreshToken: 'โทเค็นที่รีเฟรชแล้ว',\n authForgotPassword: 'ส่งอีเมลรีเซ็ตรหัสผ่านแล้ว',\n authResetPassword: 'ผลการรีเซ็ตรหัสผ่าน',\n authFirstRegister: 'ผู้ใช้คนแรกที่สร้างขึ้นพร้อมกับโทเค็นการยืนยันตัวตน',\n authInit: 'ระบุว่าคอลเลกชันการยืนยันตัวตนนี้มีผู้ใช้อยู่แล้วหรือยัง',\n authAccess: 'สิทธิ์ของผู้ใช้ปัจจุบันสำหรับทุกคอลเลกชันและ Globals',\n docAccess: 'สิทธิ์ของผู้ใช้ปัจจุบันสำหรับเอกสารนี้',\n docAccessBody: 'ข้อมูลเอกสารที่ใช้ตรวจสอบสิทธิ์ หากไม่ระบุ Payload จะใช้เอกสารที่บันทึกไว้ ถ้ามี',\n authUnlock: 'ผลการปลดล็อก',\n authVerify: 'ผลการยืนยัน',\n apiKeyReveal: 'API key ที่ถอดรหัสแล้ว',\n\n versionList: 'รายการเวอร์ชันแบบแบ่งหน้า',\n versionSingle: 'เวอร์ชันหนึ่งรายการ',\n versionRestored: 'เอกสารที่กู้คืนแล้ว',\n versionWhere: 'กรองตามฟิลด์ของเวอร์ชัน เช่น `where[parent][equals]=<docId>`',\n\n jobsRunSummary: 'รันงานที่อยู่ในคิว (และจัดการตารางเวลาตามค่าเริ่มต้น)',\n jobsSchedulesSummary: 'เพิ่มงานที่ถึงกำหนดตามตารางเวลาเข้าคิว',\n jobsRunResult: 'ผลการรัน',\n jobsSchedulesResult: 'ผลการจัดตารางเวลา',\n jobsRunAllQueues: 'รันงานในทุกคิว',\n jobsLimit: 'จำนวนงานสูงสุดที่จะรัน',\n jobsDisableScheduling: 'ข้ามการจัดการตารางเวลาที่ `run` ทำตามค่าเริ่มต้น',\n jobsSilent: 'ระงับการบันทึกล็อกการรัน',\n jobsSchedulesAllQueues: 'จัดการตารางเวลาในทุกคิว',\n jobsQueue: 'จำกัดการดำเนินการให้อยู่เพียงคิวเดียว คิวที่รู้จัก: {{queues}}',\n\n uploadFile: 'ไฟล์ไบนารีที่จะอัปโหลด',\n uploadBody:\n 'ส่ง `multipart/form-data` เพื่ออัปโหลดไฟล์ (ส่วน `file` ที่เป็นไบนารี พร้อมส่วน `_payload` ที่มีฟิลด์ในรูปแบบ JSON string) หรือส่ง `application/json` พร้อมเฉพาะฟิลด์เมื่อไม่มีไฟล์',\n uploadPayloadField: 'ฟิลด์ {{schema}} ในรูปแบบ JSON string ตัวอย่าง: `{\"alt\":\"A caption\"}`',\n fileServe: 'ไฟล์',\n filePartial: 'ส่วนหนึ่งของไฟล์ สำหรับคำขอ `Range`',\n paramFileVersion: 'ส่งคืนไฟล์ที่บันทึกไว้กับ ID เวอร์ชันนี้',\n uploadInstructionsSummary: 'รับคำแนะนำในการอัปโหลดไฟล์ก่อนบันทึกเอกสาร',\n uploadInstructionsResult: 'ปลายทางสำหรับส่งไบต์ของไฟล์ และค่า `file` ที่ต้องส่งไปกับคำขอสร้างหรืออัปเดต',\n uploadStagePutSummary: 'ส่งไบต์ของไฟล์สำหรับการอัปโหลดชั่วคราว',\n uploadStageDeleteSummary: 'ลบการอัปโหลดชั่วคราว',\n uploadStageResult: 'เสร็จแล้ว ไม่มีเนื้อหา',\n paramPreferenceKey: 'คีย์ของการตั้งค่า เช่น `nav`',\n preferenceGet: 'รับการตั้งค่าของผู้ใช้ปัจจุบัน',\n preferenceGetResult: 'การตั้งค่าที่บันทึกไว้ หรือ `value: null` หากไม่มี',\n preferenceSet: 'บันทึกการตั้งค่าของผู้ใช้ปัจจุบัน',\n preferenceSetBody: 'ส่งค่าใน `value` หาก body ไม่มี `value` จะบันทึกทั้ง body เป็นค่า',\n preferenceSetResult: 'การตั้งค่าที่บันทึกแล้ว',\n preferenceDelete: 'ลบการตั้งค่าของผู้ใช้ปัจจุบัน',\n preferenceDeleteResult: 'การตั้งค่าที่ถูกลบ',\n reorder: 'ย้ายเอกสารในรายการที่จัดลำดับได้',\n reorderBody:\n 'ย้าย `docsToMove` ไปไว้หลัง `target` เมื่อ `newKeyWillBe: \"greater\"` หรือไว้ก่อนเมื่อ `\"less\"` ส่วน `orderableFieldName` คือ `_order` สำหรับคอลเลกชันที่จัดลำดับได้ หรือฟิลด์ลำดับของ join ที่จัดลำดับได้ หากไม่มี `target.key` Payload จะกำหนดคีย์ลำดับให้เฉพาะเอกสารที่ยังไม่มีเท่านั้น',\n reorderResult: 'คีย์ลำดับใหม่ หรือ `message: \"initial migration\"` เมื่อ Payload กำหนดคีย์ลำดับเป็นครั้งแรก',\n errorReorder400: 'body ของคำขอไม่ถูกต้อง ดูเหตุผลได้ใน `error`',\n\n error400: 'ข้อผิดพลาดในการตรวจสอบความถูกต้องหรือการค้นหา (ValidationError, QueryError)',\n error401: 'ยังไม่ได้ยืนยันตัวตน (AuthenticationError)',\n error403: 'ถูกปฏิเสธโดยการควบคุมการเข้าถึง (Forbidden, UnverifiedEmail)',\n error404: 'ไม่พบเอกสาร (NotFound)',\n error500: 'ข้อผิดพลาดภายในเซิร์ฟเวอร์ (APIError)',\n\n securityBearer:\n 'วาง `token` ที่ได้จากเอนด์พอยต์การเข้าสู่ระบบ โดยจะส่งในรูปแบบ `Authorization: Bearer <token>` Payload ยังรองรับรูปแบบ `JWT <token>` และคุกกี้ `{{cookiePrefix}}-token` ด้วย',\n securityInteractive: 'การเข้าสู่ระบบแบบโต้ตอบ: กรอกชื่อผู้ใช้ (หรืออีเมล) และรหัสผ่าน เว้นช่อง Client ID/Secret ว่างไว้',\n\n tagCollections: 'คอลเลกชัน',\n tagCollectionsDesc: 'เอนด์พอยต์ของคอลเลกชันเอกสาร (CRUD, การนับจำนวน, การทำสำเนา)',\n tagGlobals: 'Globals',\n tagGlobalsDesc: 'เอนด์พอยต์ของเอกสาร global',\n tagSystem: 'ระบบ',\n tagSystemDesc: 'เอนด์พอยต์ของระบบ Payload',\n tagAuth: 'การยืนยันตัวตน',\n tagVersions: 'เวอร์ชัน',\n tagJobs: 'งาน',\n tagUploads: 'การอัปโหลด',\n tagAccess: 'การเข้าถึง',\n tagReorder: 'จัดลำดับใหม่',\n tagPlugins: 'ปลั๊กอิน',\n tagPluginsDesc: 'เอนด์พอยต์ที่ปลั๊กอินทางการของ Payload เพิ่มเข้ามา',\n errorPlugin400: 'คำขอไม่ถูกต้อง',\n errorPlugin401: 'ยังไม่ได้ยืนยันตัวตน',\n errorPlugin403: 'ไม่มีสิทธิ์',\n errorPlugin404: 'ไม่พบ',\n errorPlugin500: 'ข้อผิดพลาดภายในเซิร์ฟเวอร์',\n ecommerceAddItem: 'เพิ่มสินค้าลงตะกร้า',\n ecommerceRemoveItem: 'นำสินค้าออกจากตะกร้า',\n ecommerceUpdateItem: 'เปลี่ยนจำนวนสินค้าในตะกร้า',\n ecommerceClearCart: 'นำสินค้าทั้งหมดออกจากตะกร้า',\n ecommerceMergeCart: 'รวมตะกร้าของผู้เยี่ยมชมเข้ากับตะกร้านี้',\n ecommerceCartAccess: 'อนุญาตสำหรับเจ้าของตะกร้า หรือตะกร้าของผู้เยี่ยมชมที่มี `secret` ใน body',\n ecommerceCartResult: 'ตะกร้าที่อัปเดตแล้ว',\n errorPluginEcommerce404: 'ไม่พบตะกร้าหรือเข้าถึงไม่ได้',\n ecommerceQuantity: 'จำนวนใหม่ หรือ `{ \"$inc\": n }` เพื่อเปลี่ยนทีละ n',\n ecommerceInitiatePayment: 'เริ่มการชำระเงินด้วย `{{method}}`',\n ecommerceConfirmOrder: 'ยืนยันการชำระเงินด้วย `{{method}}` และสร้างคำสั่งซื้อ',\n ecommercePaymentBody:\n 'ใช้ `cartID` (พร้อม `secret` สำหรับตะกร้าของผู้เยี่ยมชม) หรือตะกร้าของผู้ใช้ หากไม่มีผู้ใช้ ต้องระบุ `customerEmail` อะแดปเตอร์การชำระเงินอาจต้องการฟิลด์เพิ่มเติม',\n ecommerceInitiateResult: 'เริ่มการชำระเงินแล้ว อะแดปเตอร์จะเพิ่มฟิลด์ของตัวเอง เช่น client secret',\n ecommerceConfirmResult: 'สร้างคำสั่งซื้อแล้ว',\n stripeWebhook: 'รับอีเวนต์ webhook จาก Stripe',\n stripeWebhookBody: 'อีเวนต์ Stripe ดิบที่ลงนามในเฮดเดอร์ `Stripe-Signature` Stripe เป็นผู้เรียก ไม่ใช่ไคลเอนต์ API',\n stripeWebhookResult: 'ได้รับอีเวนต์แล้ว',\n errorPluginStripeWebhook400: 'การตรวจสอบลายเซ็นล้มเหลว',\n stripeRest: 'เรียกเมธอด Stripe API ที่อนุญาต',\n stripeRestResult: 'ผลลัพธ์จาก Stripe API',\n errorPluginStripeRest404: 'Stripe API ส่งข้อผิดพลาดกลับมา',\n mcp: 'ส่งข้อความ MCP JSON-RPC',\n mcpDesc:\n 'Model Context Protocol ผ่าน Streamable HTTP ตอบกลับเป็น JSON ใช้คำขอแบบไม่ระบุตัวตนได้ เครื่องมือที่แสดงขึ้นอยู่กับสิทธิ์ของผู้ใช้ ไคลเอนต์ที่ใช้โปรโตคอลเวอร์ชันปี 2025 ต้องส่ง `Accept: application/json, text/event-stream`',\n mcpResult: 'การตอบกลับ JSON-RPC',\n mcpOverrideAccess: 'ข้ามการตรวจสอบสิทธิ์ ใช้สำหรับการพัฒนาเท่านั้น',\n mcpGet: 'ไม่รองรับ: เซิร์ฟเวอร์ไม่เปิดสตรีมอีเวนต์',\n errorPluginMcpGet405: 'ไม่อนุญาตเมธอดนี้ ให้ใช้ POST',\n mcpProtocolVersion: 'เวอร์ชันโปรโตคอล MCP ที่ตกลงกันแล้ว เช่น `2025-06-18`',\n mcpResult202: 'ยอมรับแล้ว: body มีเพียงการแจ้งเตือนหรือการตอบกลับ',\n errorPluginMcp404: 'ไม่รู้จักเมธอด MCP',\n errorPluginMcp406: 'เฮดเดอร์ `Accept` ไม่มี `application/json` หรือ `text/event-stream`',\n errorPluginMcp413: 'body ของคำขอมีขนาดใหญ่เกินไป',\n errorPluginMcp415: '`Content-Type` ต้องเป็น `application/json`',\n seoTitle: 'สร้างชื่อเมตา',\n seoDescription: 'สร้างคำอธิบายเมตา',\n seoUrl: 'สร้าง URL พรีวิว',\n seoImage: 'สร้างรูปภาพเมตา',\n seoBody:\n 'เอกสารที่กำลังแก้ไข: `collectionSlug` หรือ `globalSlug`, `id` ของเอกสาร และข้อมูล `doc` ปัจจุบัน ส่งต่อให้ฟังก์ชันสร้างของคุณ',\n seoResult: 'ค่าที่สร้างขึ้น เป็นสตริงว่างเมื่อไม่ได้ตั้งฟังก์ชันสร้าง',\n searchReindex: 'สร้างดัชนีการค้นหาใหม่สำหรับบางคอลเลกชัน',\n searchReindexResult: 'สรุปการสร้างดัชนีใหม่',\n tenantOptions: 'แสดงรายการผู้เช่าที่ผู้ใช้เลือกได้',\n tenantOptionsResult: 'ตัวเลือกผู้เช่า',\n exportDownload: 'ส่งออกเอกสารเป็นไฟล์',\n exportDownloadResult: 'ไฟล์ที่ส่งออก',\n exportPreview: 'พรีวิวการส่งออก',\n importPreview: 'พรีวิวไฟล์นำเข้า',\n previewResult: 'เอกสารพรีวิวหนึ่งหน้า',\n importFileData: 'เนื้อหาไฟล์ เข้ารหัสแบบ base64',\n r2Upload: 'อัปโหลดไฟล์ไปยัง R2 เป็นส่วน ๆ',\n r2UploadDesc:\n 'สามขั้นตอนบนเส้นทางเดียว เริ่ม: ส่ง `collection`, `fileName` และ `fileType` แต่ละส่วน: เพิ่ม `multipartId`, `multipartKey`, `multipartNumber` และ `signedReceipt` แล้วส่งไบต์ เสร็จสิ้น: ส่งแบบเดิมโดยไม่มี `multipartNumber` พร้อมรายการส่วนแบบ JSON',\n r2UploadResult: 'เริ่มอัปโหลด อัปโหลดส่วนแล้ว หรืออัปโหลดเสร็จ (คีย์ของออบเจ็กต์เป็นข้อความ)',\n errorStorageR2412: 'มีไฟล์ที่คีย์นี้อยู่แล้ว',\n\n localizationHeading: 'การแปลภาษา',\n localizationNote:\n 'โลแคลที่ใช้ได้: {{locales}} ส่ง `?locale=<code>` ไปยังเอนด์พอยต์อ่านข้อมูลเพื่อเลือกหนึ่งโลแคล ส่ง `?locale=all` เพื่อรับทุกโลแคลพร้อมกัน โดยแต่ละฟิลด์ที่แปลภาษาไว้จะถูกคืนค่าเป็นออบเจ็กต์ที่ใช้รหัสโลแคลเป็นคีย์ (เช่น `{ \"en\": \"Hello\", \"de\": \"Hallo\" }`) แทนค่าเดียว ตั้งค่า `?flattenLocales=false` ร่วมกับ `locale=all` เพื่อเก็บรูปแบบออบเจ็กต์แยกตามโลแคลนั้นไว้ สคีมาของฟิลด์จะแสดงรูปแบบของโลแคลเดียว',\n docLanguagesNote: 'เอกสารนี้มีให้บริการในภาษา: {{languages}} เพิ่ม `?lang=<code>` ต่อท้าย URL ของสเปกนี้เพื่อสลับภาษา',\n },\n}\n"],"mappings":"AAEA,MAAa,KAAsC,EACjD,kCAAkC;CAChC,YAAY;CACZ,WAAW;CACX,gBAAgB;CAChB,YAAY;CACZ,YAAY;CACZ,eAAe;CACf,wBAAwB;CACxB,0BAA0B;CAC1B,mBAAmB;CACnB,sBAAsB;CACtB,qBACE;CACF,aAAa;CACb,qBAAqB;CACrB,qBAAqB;CACrB,4BACE;CAEF,cAAc;CACd,gBAAgB;CAChB,aAAa;CACb,aACE;CACF,0BAA0B;CAC1B,iBAAiB;CACjB,yBACE;CACF,0BACE;CAEF,gBAAgB;CAChB,eAAe;CACf,mBAAmB;CACnB,mBAAmB;CACnB,mBAAmB;CACnB,sBAAsB;CACtB,sBAAsB;CACtB,iBAAiB;CACjB,sBAAsB;CACtB,gBAAgB;CAChB,cACE;CAEF,WAAW;CAEX,WAAW;CACX,YAAY;CACZ,QAAQ;CACR,kBAAkB;CAClB,oBAAoB;CACpB,mBAAmB;CACnB,mBAAmB;CACnB,UAAU;CACV,YAAY;CACZ,WAAW;CACX,eAAe;CACf,YAAY;CACZ,YAAY;CACZ,cAAc;CAEd,aAAa;CACb,eAAe;CACf,iBAAiB;CACjB,cAAc;CAEd,gBAAgB;CAChB,sBAAsB;CACtB,eAAe;CACf,qBAAqB;CACrB,kBAAkB;CAClB,WAAW;CACX,uBAAuB;CACvB,YAAY;CACZ,wBAAwB;CACxB,WAAW;CAEX,YAAY;CACZ,YACE;CACF,oBAAoB;CACpB,WAAW;CACX,aAAa;CACb,kBAAkB;CAClB,2BAA2B;CAC3B,0BAA0B;CAC1B,uBAAuB;CACvB,0BAA0B;CAC1B,mBAAmB;CACnB,oBAAoB;CACpB,eAAe;CACf,qBAAqB;CACrB,eAAe;CACf,mBAAmB;CACnB,qBAAqB;CACrB,kBAAkB;CAClB,wBAAwB;CACxB,SAAS;CACT,aACE;CACF,eAAe;CACf,iBAAiB;CAEjB,UAAU;CACV,UAAU;CACV,UAAU;CACV,UAAU;CACV,UAAU;CAEV,gBACE;CACF,qBAAqB;CAErB,gBAAgB;CAChB,oBAAoB;CACpB,YAAY;CACZ,gBAAgB;CAChB,WAAW;CACX,eAAe;CACf,SAAS;CACT,aAAa;CACb,SAAS;CACT,YAAY;CACZ,WAAW;CACX,YAAY;CACZ,YAAY;CACZ,gBAAgB;CAChB,gBAAgB;CAChB,gBAAgB;CAChB,gBAAgB;CAChB,gBAAgB;CAChB,gBAAgB;CAChB,kBAAkB;CAClB,qBAAqB;CACrB,qBAAqB;CACrB,oBAAoB;CACpB,oBAAoB;CACpB,qBAAqB;CACrB,qBAAqB;CACrB,yBAAyB;CACzB,mBAAmB;CACnB,0BAA0B;CAC1B,uBAAuB;CACvB,sBACE;CACF,yBAAyB;CACzB,wBAAwB;CACxB,eAAe;CACf,mBAAmB;CACnB,qBAAqB;CACrB,6BAA6B;CAC7B,YAAY;CACZ,kBAAkB;CAClB,0BAA0B;CAC1B,KAAK;CACL,SACE;CACF,WAAW;CACX,mBAAmB;CACnB,QAAQ;CACR,sBAAsB;CACtB,oBAAoB;CACpB,cAAc;CACd,mBAAmB;CACnB,mBAAmB;CACnB,mBAAmB;CACnB,mBAAmB;CACnB,UAAU;CACV,gBAAgB;CAChB,QAAQ;CACR,UAAU;CACV,SACE;CACF,WAAW;CACX,eAAe;CACf,qBAAqB;CACrB,eAAe;CACf,qBAAqB;CACrB,gBAAgB;CAChB,sBAAsB;CACtB,eAAe;CACf,eAAe;CACf,eAAe;CACf,gBAAgB;CAChB,UAAU;CACV,cACE;CACF,gBAAgB;CAChB,mBAAmB;CAEnB,qBAAqB;CACrB,kBACE;CACF,kBAAkB;AACpB,EACF"}
@@ -67,11 +67,24 @@ const tr = { "@seshuk/payload-plugin-openapi": {
67
67
  uploadPayloadField: "JSON olarak dizgeleştirilmiş {{schema}} alanları. Örnek: `{\\\"alt\\\":\\\"A caption\\\"}`.",
68
68
  fileServe: "Dosya",
69
69
  filePartial: "`Range` isteği için dosyanın bir bölümü",
70
+ paramFileVersion: "Bu sürüm kimliğiyle kaydedilen dosyayı döndürür.",
70
71
  uploadInstructionsSummary: "Dokümanı kaydetmeden önce dosya yükleme talimatlarını alın",
71
72
  uploadInstructionsResult: "Dosya baytlarının nereye gönderileceği ve oluşturma ya da güncelleme isteğiyle gönderilecek `file` değeri",
72
73
  uploadStagePutSummary: "Geçici yükleme için dosya baytlarını gönderin",
73
74
  uploadStageDeleteSummary: "Geçici yüklemeyi silin",
74
75
  uploadStageResult: "Tamamlandı, içerik yok",
76
+ paramPreferenceKey: "Tercih anahtarı, örn. `nav`.",
77
+ preferenceGet: "Geçerli kullanıcının bir tercihini getir",
78
+ preferenceGetResult: "Kaydedilmiş tercih veya yoksa `value: null`",
79
+ preferenceSet: "Geçerli kullanıcının bir tercihini kaydet",
80
+ preferenceSetBody: "Değeri `value` içinde gönderin. `value` içermeyen bir gövde, olduğu gibi değer olarak kaydedilir.",
81
+ preferenceSetResult: "Kaydedilen tercih",
82
+ preferenceDelete: "Geçerli kullanıcının bir tercihini sil",
83
+ preferenceDeleteResult: "Silinen tercih",
84
+ reorder: "Sıralanabilir bir listede dokümanları taşı",
85
+ reorderBody: "`docsToMove` öğelerini `newKeyWillBe: \"greater\"` ile `target` sonrasına, `\"less\"` ile öncesine taşır. `orderableFieldName`, sıralanabilir bir koleksiyon için `_order`, sıralanabilir bir join için ise onun sıra alanıdır. `target.key` olmadan Payload yalnızca sıra anahtarı olmayan dokümanlara sıra anahtarı atar.",
86
+ reorderResult: "Yeni sıra anahtarları veya Payload sıra anahtarlarını ilk kez atadığında `message: \"initial migration\"`",
87
+ errorReorder400: "Geçersiz istek gövdesi; neden `error` içinde",
75
88
  error400: "Doğrulama veya sorgu hatası (ValidationError, QueryError)",
76
89
  error401: "Kimlik doğrulanmadı (AuthenticationError)",
77
90
  error403: "Erişim denetimi tarafından yasaklandı (Forbidden, UnverifiedEmail)",
@@ -90,6 +103,67 @@ const tr = { "@seshuk/payload-plugin-openapi": {
90
103
  tagJobs: "İşler",
91
104
  tagUploads: "Yüklemeler",
92
105
  tagAccess: "Erişim",
106
+ tagReorder: "Sıralama",
107
+ tagPlugins: "Eklentiler",
108
+ tagPluginsDesc: "Resmi Payload eklentilerinin eklediği uç noktalar.",
109
+ errorPlugin400: "Geçersiz istek",
110
+ errorPlugin401: "Kimlik doğrulanmadı",
111
+ errorPlugin403: "Yasak",
112
+ errorPlugin404: "Bulunamadı",
113
+ errorPlugin500: "Dahili sunucu hatası",
114
+ ecommerceAddItem: "Sepete ürün ekle",
115
+ ecommerceRemoveItem: "Sepetten ürün çıkar",
116
+ ecommerceUpdateItem: "Sepetteki bir ürünün miktarını değiştir",
117
+ ecommerceClearCart: "Sepetteki tüm ürünleri çıkar",
118
+ ecommerceMergeCart: "Bir misafir sepetini bu sepetle birleştir",
119
+ ecommerceCartAccess: "Sepet sahibine veya gövdede `secret` değeri olan misafir sepetine izin verilir.",
120
+ ecommerceCartResult: "Güncellenen sepet",
121
+ errorPluginEcommerce404: "Sepet bulunamadı veya erişilemiyor",
122
+ ecommerceQuantity: "Yeni miktar ya da n kadar değiştirmek için `{ \"$inc\": n }`.",
123
+ ecommerceInitiatePayment: "`{{method}}` ile ödeme başlat",
124
+ ecommerceConfirmOrder: "`{{method}}` ile ödemeyi onayla ve siparişi oluştur",
125
+ ecommercePaymentBody: "`cartID` (misafir sepeti için `secret` ile) veya kullanıcının sepetini kullanır. Kullanıcı yoksa `customerEmail` zorunludur. Ödeme adaptörü başka alanlar isteyebilir.",
126
+ ecommerceInitiateResult: "Ödeme başlatıldı. Adaptör kendi alanlarını ekler, ör. bir client secret.",
127
+ ecommerceConfirmResult: "Sipariş oluşturuldu",
128
+ stripeWebhook: "Stripe webhook olaylarını al",
129
+ stripeWebhookBody: "`Stripe-Signature` başlığında imzalanmış ham Stripe olayı. API istemcileri değil, Stripe çağırır.",
130
+ stripeWebhookResult: "Olay alındı",
131
+ errorPluginStripeWebhook400: "İmza doğrulaması başarısız oldu",
132
+ stripeRest: "İzin verilen bir Stripe API yöntemini çağır",
133
+ stripeRestResult: "Stripe API sonucu",
134
+ errorPluginStripeRest404: "Stripe API bir hata döndürdü",
135
+ mcp: "MCP JSON-RPC mesajı gönder",
136
+ mcpDesc: "Streamable HTTP üzerinden, JSON yanıtlı Model Context Protocol. Anonim istekler çalışır; listelenen araçlar kullanıcının yetkilerine bağlıdır. 2025 protokol sürümünü kullanan istemciler `Accept: application/json, text/event-stream` göndermelidir.",
137
+ mcpResult: "JSON-RPC yanıtı",
138
+ mcpOverrideAccess: "Erişim kontrollerini atla. Yalnızca geliştirme için.",
139
+ mcpGet: "Desteklenmiyor: sunucu bir olay akışı açmaz",
140
+ errorPluginMcpGet405: "Yönteme izin verilmiyor, POST kullanın",
141
+ mcpProtocolVersion: "Üzerinde anlaşılan MCP protokol sürümü, ör. `2025-06-18`.",
142
+ mcpResult202: "Kabul edildi: gövdede yalnızca bildirimler veya yanıtlar vardı",
143
+ errorPluginMcp404: "Bilinmeyen MCP yöntemi",
144
+ errorPluginMcp406: "`Accept` başlığında `application/json` veya `text/event-stream` yok",
145
+ errorPluginMcp413: "İstek gövdesi çok büyük",
146
+ errorPluginMcp415: "`Content-Type` `application/json` olmalıdır",
147
+ seoTitle: "Meta başlığı oluştur",
148
+ seoDescription: "Meta açıklamayı oluştur",
149
+ seoUrl: "Önizleme URL’sini oluştur",
150
+ seoImage: "Meta görseli oluştur",
151
+ seoBody: "Düzenlenen doküman: `collectionSlug` veya `globalSlug`, `id` değeri ve güncel `doc` verisi. Generate fonksiyonunuza iletilir.",
152
+ seoResult: "Oluşturulan değer. Generate fonksiyonu ayarlı değilse boş bir dize.",
153
+ searchReindex: "Bazı koleksiyonlar için arama dizinini yeniden oluştur",
154
+ searchReindexResult: "Yeniden dizinleme özeti",
155
+ tenantOptions: "Kullanıcının seçebileceği kiracıları listele",
156
+ tenantOptionsResult: "Kiracı seçenekleri",
157
+ exportDownload: "Dokümanları bir dosyaya dışa aktar",
158
+ exportDownloadResult: "Dışa aktarma dosyası",
159
+ exportPreview: "Dışa aktarmayı önizle",
160
+ importPreview: "İçe aktarma dosyasını önizle",
161
+ previewResult: "Bir sayfa önizleme dokümanı",
162
+ importFileData: "Dosya içeriği, base64 ile kodlanmış.",
163
+ r2Upload: "R2’ye parçalar halinde dosya yükle",
164
+ r2UploadDesc: "Tek rotada üç adım. Başlangıç: `collection`, `fileName` ve `fileType` gönderin. Her parça: `multipartId`, `multipartKey`, `multipartNumber` ve `signedReceipt` ekleyip baytları gönderin. Bitiş: aynısını `multipartNumber` olmadan, parçaların JSON listesiyle gönderin.",
165
+ r2UploadResult: "Yükleme başladı, parça yüklendi veya yükleme tamamlandı (metin olarak nesne anahtarı)",
166
+ errorStorageR2412: "Bu anahtarda zaten bir dosya var",
93
167
  localizationHeading: "Yerelleştirme",
94
168
  localizationNote: "Mevcut yerel ayarlar: {{locales}}. Birini seçmek için bir okuma uç noktasına `?locale=<code>` iletin. Tüm yerel ayarları aynı anda almak için `?locale=all` iletin — bu durumda her yerelleştirilmiş alan, tek bir değer yerine yerel ayar koduyla anahtarlanmış bir nesne olarak döndürülür (örn. `{ \\\"en\\\": \\\"Hello\\\", \\\"de\\\": \\\"Hallo\\\" }`). Bu yerel başına nesne biçimini korumak için `locale=all` ile birlikte `?flattenLocales=false` ayarlayın. Alan şemaları tek yerelli biçimi gösterir.",
95
169
  docLanguagesNote: "Bu dokümantasyon şu dillerde mevcuttur: {{languages}}. Dili değiştirmek için bu spec URL'sine `?lang=<code>` ekleyin."
@@ -1 +1 @@
1
- {"version":3,"file":"tr.js","names":[],"sources":["../../../../src/shared/translations/locales/tr.ts"],"sourcesContent":["import type { PluginDefaultTranslationsObject } from '@/shared/translations/types.js'\n\nexport const tr: PluginDefaultTranslationsObject = {\n '@seshuk/payload-plugin-openapi': {\n paramDepth: 'İlişkili dokümanların kaç seviyesinin doldurulacağı.',\n paramSort: 'Sıralanacak alan; azalan sıralama için başına `-` ekleyin, örn. `-createdAt`.',\n paramSortShort: 'Sıralanacak alan; azalan sıralama için başına `-` ekleyin.',\n paramDraft: 'Taslak sürümleri döndür.',\n paramTrash: 'Çöp kutusundaki dokümanları dahil et.',\n paramAutosave: 'Otomatik kayıt olarak kaydet: yeni sürüm eklemek yerine son otomatik kayıt sürümünü günceller.',\n paramPublishAllLocales: 'Yalnızca isteğin dilini değil, tüm dilleri yayımla.',\n paramUnpublishAllLocales: 'Tüm dillerin yayınını kaldır ve dokümanı taslağa geri al.',\n paramOverrideLock: 'Başka bir kullanıcının kilidini yok say. Varsayılan false.',\n paramSelectedLocales: 'Kopyaya yalnızca bu dilleri aktar. Varsayılan: tüm diller.',\n paramFlattenLocales:\n '`locale=all` ile, yerelleştirilmiş alanları yerel başına nesneler olarak tutmak için false yapın. Varsayılan true.',\n paramLocale:\n 'Döndürülecek yerel ayar veya her yerel ayar için `all`. API açıklamasındaki Yerelleştirme bölümüne bakın.',\n paramFallbackLocale:\n 'Eksik yerelleştirilmiş değerler için geri dönülecek yerel ayar veya devre dışı bırakmak için `none`.',\n paramValidateLocale:\n 'Doğrulanacak yerel ayarlar veya her yerel ayar için `all`. Birden fazla yerel ayar için parametreyi tekrarlayın.',\n paramComputeHierarchyPaths:\n '`{{slugPath}}` ve `{{titlePath}}` yollarını hesaplamak için true yapın. Bu alanlardan birini seçmek de bunları hesaplar.',\n\n schemaSelect: 'Döndürülecek alanları seçin, örn. `select[title]=true`. Tümünü döndürmek için boş bırakın.',\n schemaPopulate: 'İlişkili dokümanları koleksiyon başına doldurun, örn. `populate[posts][title]=true`.',\n schemaJoins: 'Birleştirme başına denetimler (limit/page/sort/where/count), örn. `joins[posts][limit]=10`.',\n schemaWhere:\n 'Payload `where` filtresi. Önce bir alanı, sonra bir operatörü yuvalayın: `where[field][equals]=value`. Yan tümceleri `and` / `or` dizileriyle birleştirin, örn. `where[or][0][field][equals]=value`. Her alan yalnızca kendi türü için geçerli operatörleri listeler.',\n schemaSupportedTimezones: 'IANA formatında desteklenen saat dilimleri.',\n schemaPerLocale: '`locale=all` kullanıldığında döndürülen yerel başına değerler.',\n schemaHierarchySlugPath:\n 'Slug yolu, örn. `parent/child`. Okurken `computeHierarchyPaths=true` ile ya da seçildiğinde hesaplanır. `where` içinde kullanılamaz.',\n schemaHierarchyTitlePath:\n 'Başlık yolu, örn. `Parent/Child`. Okurken `computeHierarchyPaths=true` ile ya da seçildiğinde hesaplanır. `where` içinde kullanılamaz.',\n\n collectionList: 'Sayfalandırılmış doküman listesi',\n collectionDoc: 'Tek bir doküman',\n collectionCreated: 'Oluşturulan doküman',\n collectionUpdated: 'Güncellenen doküman',\n collectionDeleted: 'Silinen doküman',\n collectionBulkUpdate: 'Toplu güncelleme sonucu',\n collectionBulkDelete: 'Toplu silme sonucu',\n collectionCount: 'Doküman sayısı',\n collectionDuplicated: 'Çoğaltılan doküman',\n validateResult:\n 'Doğrulama sonucu. Hiçbir şey kaydedilmez. Geçersiz alan değerleri hata durumu değil, hatalarla birlikte `valid: false` döndürür.',\n validateBody:\n 'Doğrulanacak doküman verisi. Kayıtlı bir dokümanda veya genel dokümanda veriler en son taslağın üzerine, taslak yoksa kayıtlı dokümanın üzerine birleştirilir.',\n\n globalDoc: 'Genel doküman',\n\n authLogin: 'Giriş sonucu',\n authLogout: 'Çıkış sonucu',\n authMe: 'Şu anda kimliği doğrulanmış kullanıcı',\n authRefreshToken: 'Yenilenmiş token',\n authForgotPassword: 'Parola sıfırlama e-postası gönderildi',\n authResetPassword: 'Parola sıfırlama sonucu',\n authFirstRegister: 'Bir auth token ile oluşturulan ilk kullanıcı',\n authInit: 'Bu auth koleksiyonunda henüz kullanıcı olup olmadığı',\n authAccess: 'Geçerli kullanıcının tüm koleksiyonlar ve globaller için izinleri',\n docAccess: 'Geçerli kullanıcının bu doküman için izinleri',\n docAccessBody: 'Erişimin kontrol edileceği doküman verisi. Yoksa Payload, varsa kayıtlı dokümanı kullanır.',\n authUnlock: 'Kilit açma sonucu',\n authVerify: 'Doğrulama sonucu',\n apiKeyReveal: 'Şifresi çözülmüş API anahtarı',\n\n versionList: 'Sayfalandırılmış sürüm listesi',\n versionSingle: 'Tek bir sürüm',\n versionRestored: 'Geri yüklenen doküman',\n versionWhere: 'Sürüm alanları üzerinde filtreleyin, örn. `where[parent][equals]=<docId>`.',\n\n jobsRunSummary: 'Kuyruktaki işleri çalıştır (ve varsayılan olarak zamanlamaları işle)',\n jobsSchedulesSummary: 'Zamanlamasına göre vakti gelmiş işleri kuyruğa al',\n jobsRunResult: 'Çalıştırma sonucu',\n jobsSchedulesResult: 'Zamanlama sonucu',\n jobsRunAllQueues: 'İşleri tüm kuyruklarda çalıştır.',\n jobsLimit: 'Çalıştırılacak maksimum iş sayısı.',\n jobsDisableScheduling: '`run` komutunun varsayılan olarak yaptığı zamanlama işlemini atla.',\n jobsSilent: 'Çalıştırma günlüğünü bastır.',\n jobsSchedulesAllQueues: 'Zamanlamaları tüm kuyruklarda işle.',\n jobsQueue: 'İşlemi tek bir kuyrukla sınırla. Bilinen kuyruklar: {{queues}}.',\n\n uploadFile: 'Yüklenecek ikili dosya.',\n uploadBody:\n 'Bir dosya yüklemek için `multipart/form-data` gönderin (ikili bir `file` bölümü ile JSON olarak dizgeleştirilmiş alanları içeren bir `_payload` bölümü) veya dosya yoksa yalnızca alanlarla `application/json` gönderin.',\n uploadPayloadField: 'JSON olarak dizgeleştirilmiş {{schema}} alanları. Örnek: `{\\\\\"alt\\\\\":\\\\\"A caption\\\\\"}`.',\n fileServe: 'Dosya',\n filePartial: '`Range` isteği için dosyanın bir bölümü',\n uploadInstructionsSummary: 'Dokümanı kaydetmeden önce dosya yükleme talimatlarını alın',\n uploadInstructionsResult:\n 'Dosya baytlarının nereye gönderileceği ve oluşturma ya da güncelleme isteğiyle gönderilecek `file` değeri',\n uploadStagePutSummary: 'Geçici yükleme için dosya baytlarını gönderin',\n uploadStageDeleteSummary: 'Geçici yüklemeyi silin',\n uploadStageResult: 'Tamamlandı, içerik yok',\n\n error400: 'Doğrulama veya sorgu hatası (ValidationError, QueryError)',\n error401: 'Kimlik doğrulanmadı (AuthenticationError)',\n error403: 'Erişim denetimi tarafından yasaklandı (Forbidden, UnverifiedEmail)',\n error404: 'Doküman bulunamadı (NotFound)',\n error500: 'Sunucu iç hatası (APIError)',\n\n securityBearer:\n 'Giriş uç noktası tarafından döndürülen `token` değerini yapıştırın. `Authorization: Bearer <token>` olarak gönderilir. Payload ayrıca `JWT <token>` şemasını ve bir `{{cookiePrefix}}-token` çerezini de kabul eder.',\n securityInteractive:\n 'Etkileşimli giriş: kullanıcı adını (veya e-postayı) ve parolayı girin; Client ID/Secret alanlarını boş bırakın.',\n\n tagCollections: 'Koleksiyonlar',\n tagCollectionsDesc: 'Doküman koleksiyonu uç noktaları (CRUD, sayım, çoğaltma).',\n tagGlobals: 'Globaller',\n tagGlobalsDesc: 'Genel doküman uç noktaları.',\n tagSystem: 'Sistem',\n tagSystemDesc: 'Payload sistem uç noktaları.',\n tagAuth: 'Kimlik Doğrulama',\n tagVersions: 'Sürümler',\n tagJobs: 'İşler',\n tagUploads: 'Yüklemeler',\n tagAccess: 'Erişim',\n\n localizationHeading: 'Yerelleştirme',\n localizationNote:\n 'Mevcut yerel ayarlar: {{locales}}. Birini seçmek için bir okuma uç noktasına `?locale=<code>` iletin. Tüm yerel ayarları aynı anda almak için `?locale=all` iletin — bu durumda her yerelleştirilmiş alan, tek bir değer yerine yerel ayar koduyla anahtarlanmış bir nesne olarak döndürülür (örn. `{ \\\\\"en\\\\\": \\\\\"Hello\\\\\", \\\\\"de\\\\\": \\\\\"Hallo\\\\\" }`). Bu yerel başına nesne biçimini korumak için `locale=all` ile birlikte `?flattenLocales=false` ayarlayın. Alan şemaları tek yerelli biçimi gösterir.',\n docLanguagesNote:\n \"Bu dokümantasyon şu dillerde mevcuttur: {{languages}}. Dili değiştirmek için bu spec URL'sine `?lang=<code>` ekleyin.\",\n },\n}\n"],"mappings":"AAEA,MAAa,KAAsC,EACjD,kCAAkC;CAChC,YAAY;CACZ,WAAW;CACX,gBAAgB;CAChB,YAAY;CACZ,YAAY;CACZ,eAAe;CACf,wBAAwB;CACxB,0BAA0B;CAC1B,mBAAmB;CACnB,sBAAsB;CACtB,qBACE;CACF,aACE;CACF,qBACE;CACF,qBACE;CACF,4BACE;CAEF,cAAc;CACd,gBAAgB;CAChB,aAAa;CACb,aACE;CACF,0BAA0B;CAC1B,iBAAiB;CACjB,yBACE;CACF,0BACE;CAEF,gBAAgB;CAChB,eAAe;CACf,mBAAmB;CACnB,mBAAmB;CACnB,mBAAmB;CACnB,sBAAsB;CACtB,sBAAsB;CACtB,iBAAiB;CACjB,sBAAsB;CACtB,gBACE;CACF,cACE;CAEF,WAAW;CAEX,WAAW;CACX,YAAY;CACZ,QAAQ;CACR,kBAAkB;CAClB,oBAAoB;CACpB,mBAAmB;CACnB,mBAAmB;CACnB,UAAU;CACV,YAAY;CACZ,WAAW;CACX,eAAe;CACf,YAAY;CACZ,YAAY;CACZ,cAAc;CAEd,aAAa;CACb,eAAe;CACf,iBAAiB;CACjB,cAAc;CAEd,gBAAgB;CAChB,sBAAsB;CACtB,eAAe;CACf,qBAAqB;CACrB,kBAAkB;CAClB,WAAW;CACX,uBAAuB;CACvB,YAAY;CACZ,wBAAwB;CACxB,WAAW;CAEX,YAAY;CACZ,YACE;CACF,oBAAoB;CACpB,WAAW;CACX,aAAa;CACb,2BAA2B;CAC3B,0BACE;CACF,uBAAuB;CACvB,0BAA0B;CAC1B,mBAAmB;CAEnB,UAAU;CACV,UAAU;CACV,UAAU;CACV,UAAU;CACV,UAAU;CAEV,gBACE;CACF,qBACE;CAEF,gBAAgB;CAChB,oBAAoB;CACpB,YAAY;CACZ,gBAAgB;CAChB,WAAW;CACX,eAAe;CACf,SAAS;CACT,aAAa;CACb,SAAS;CACT,YAAY;CACZ,WAAW;CAEX,qBAAqB;CACrB,kBACE;CACF,kBACE;AACJ,EACF"}
1
+ {"version":3,"file":"tr.js","names":[],"sources":["../../../../src/shared/translations/locales/tr.ts"],"sourcesContent":["import type { PluginDefaultTranslationsObject } from '@/shared/translations/types.js'\n\nexport const tr: PluginDefaultTranslationsObject = {\n '@seshuk/payload-plugin-openapi': {\n paramDepth: 'İlişkili dokümanların kaç seviyesinin doldurulacağı.',\n paramSort: 'Sıralanacak alan; azalan sıralama için başına `-` ekleyin, örn. `-createdAt`.',\n paramSortShort: 'Sıralanacak alan; azalan sıralama için başına `-` ekleyin.',\n paramDraft: 'Taslak sürümleri döndür.',\n paramTrash: 'Çöp kutusundaki dokümanları dahil et.',\n paramAutosave: 'Otomatik kayıt olarak kaydet: yeni sürüm eklemek yerine son otomatik kayıt sürümünü günceller.',\n paramPublishAllLocales: 'Yalnızca isteğin dilini değil, tüm dilleri yayımla.',\n paramUnpublishAllLocales: 'Tüm dillerin yayınını kaldır ve dokümanı taslağa geri al.',\n paramOverrideLock: 'Başka bir kullanıcının kilidini yok say. Varsayılan false.',\n paramSelectedLocales: 'Kopyaya yalnızca bu dilleri aktar. Varsayılan: tüm diller.',\n paramFlattenLocales:\n '`locale=all` ile, yerelleştirilmiş alanları yerel başına nesneler olarak tutmak için false yapın. Varsayılan true.',\n paramLocale:\n 'Döndürülecek yerel ayar veya her yerel ayar için `all`. API açıklamasındaki Yerelleştirme bölümüne bakın.',\n paramFallbackLocale:\n 'Eksik yerelleştirilmiş değerler için geri dönülecek yerel ayar veya devre dışı bırakmak için `none`.',\n paramValidateLocale:\n 'Doğrulanacak yerel ayarlar veya her yerel ayar için `all`. Birden fazla yerel ayar için parametreyi tekrarlayın.',\n paramComputeHierarchyPaths:\n '`{{slugPath}}` ve `{{titlePath}}` yollarını hesaplamak için true yapın. Bu alanlardan birini seçmek de bunları hesaplar.',\n\n schemaSelect: 'Döndürülecek alanları seçin, örn. `select[title]=true`. Tümünü döndürmek için boş bırakın.',\n schemaPopulate: 'İlişkili dokümanları koleksiyon başına doldurun, örn. `populate[posts][title]=true`.',\n schemaJoins: 'Birleştirme başına denetimler (limit/page/sort/where/count), örn. `joins[posts][limit]=10`.',\n schemaWhere:\n 'Payload `where` filtresi. Önce bir alanı, sonra bir operatörü yuvalayın: `where[field][equals]=value`. Yan tümceleri `and` / `or` dizileriyle birleştirin, örn. `where[or][0][field][equals]=value`. Her alan yalnızca kendi türü için geçerli operatörleri listeler.',\n schemaSupportedTimezones: 'IANA formatında desteklenen saat dilimleri.',\n schemaPerLocale: '`locale=all` kullanıldığında döndürülen yerel başına değerler.',\n schemaHierarchySlugPath:\n 'Slug yolu, örn. `parent/child`. Okurken `computeHierarchyPaths=true` ile ya da seçildiğinde hesaplanır. `where` içinde kullanılamaz.',\n schemaHierarchyTitlePath:\n 'Başlık yolu, örn. `Parent/Child`. Okurken `computeHierarchyPaths=true` ile ya da seçildiğinde hesaplanır. `where` içinde kullanılamaz.',\n\n collectionList: 'Sayfalandırılmış doküman listesi',\n collectionDoc: 'Tek bir doküman',\n collectionCreated: 'Oluşturulan doküman',\n collectionUpdated: 'Güncellenen doküman',\n collectionDeleted: 'Silinen doküman',\n collectionBulkUpdate: 'Toplu güncelleme sonucu',\n collectionBulkDelete: 'Toplu silme sonucu',\n collectionCount: 'Doküman sayısı',\n collectionDuplicated: 'Çoğaltılan doküman',\n validateResult:\n 'Doğrulama sonucu. Hiçbir şey kaydedilmez. Geçersiz alan değerleri hata durumu değil, hatalarla birlikte `valid: false` döndürür.',\n validateBody:\n 'Doğrulanacak doküman verisi. Kayıtlı bir dokümanda veya genel dokümanda veriler en son taslağın üzerine, taslak yoksa kayıtlı dokümanın üzerine birleştirilir.',\n\n globalDoc: 'Genel doküman',\n\n authLogin: 'Giriş sonucu',\n authLogout: 'Çıkış sonucu',\n authMe: 'Şu anda kimliği doğrulanmış kullanıcı',\n authRefreshToken: 'Yenilenmiş token',\n authForgotPassword: 'Parola sıfırlama e-postası gönderildi',\n authResetPassword: 'Parola sıfırlama sonucu',\n authFirstRegister: 'Bir auth token ile oluşturulan ilk kullanıcı',\n authInit: 'Bu auth koleksiyonunda henüz kullanıcı olup olmadığı',\n authAccess: 'Geçerli kullanıcının tüm koleksiyonlar ve globaller için izinleri',\n docAccess: 'Geçerli kullanıcının bu doküman için izinleri',\n docAccessBody: 'Erişimin kontrol edileceği doküman verisi. Yoksa Payload, varsa kayıtlı dokümanı kullanır.',\n authUnlock: 'Kilit açma sonucu',\n authVerify: 'Doğrulama sonucu',\n apiKeyReveal: 'Şifresi çözülmüş API anahtarı',\n\n versionList: 'Sayfalandırılmış sürüm listesi',\n versionSingle: 'Tek bir sürüm',\n versionRestored: 'Geri yüklenen doküman',\n versionWhere: 'Sürüm alanları üzerinde filtreleyin, örn. `where[parent][equals]=<docId>`.',\n\n jobsRunSummary: 'Kuyruktaki işleri çalıştır (ve varsayılan olarak zamanlamaları işle)',\n jobsSchedulesSummary: 'Zamanlamasına göre vakti gelmiş işleri kuyruğa al',\n jobsRunResult: 'Çalıştırma sonucu',\n jobsSchedulesResult: 'Zamanlama sonucu',\n jobsRunAllQueues: 'İşleri tüm kuyruklarda çalıştır.',\n jobsLimit: 'Çalıştırılacak maksimum iş sayısı.',\n jobsDisableScheduling: '`run` komutunun varsayılan olarak yaptığı zamanlama işlemini atla.',\n jobsSilent: 'Çalıştırma günlüğünü bastır.',\n jobsSchedulesAllQueues: 'Zamanlamaları tüm kuyruklarda işle.',\n jobsQueue: 'İşlemi tek bir kuyrukla sınırla. Bilinen kuyruklar: {{queues}}.',\n\n uploadFile: 'Yüklenecek ikili dosya.',\n uploadBody:\n 'Bir dosya yüklemek için `multipart/form-data` gönderin (ikili bir `file` bölümü ile JSON olarak dizgeleştirilmiş alanları içeren bir `_payload` bölümü) veya dosya yoksa yalnızca alanlarla `application/json` gönderin.',\n uploadPayloadField: 'JSON olarak dizgeleştirilmiş {{schema}} alanları. Örnek: `{\\\\\"alt\\\\\":\\\\\"A caption\\\\\"}`.',\n fileServe: 'Dosya',\n filePartial: '`Range` isteği için dosyanın bir bölümü',\n paramFileVersion: 'Bu sürüm kimliğiyle kaydedilen dosyayı döndürür.',\n uploadInstructionsSummary: 'Dokümanı kaydetmeden önce dosya yükleme talimatlarını alın',\n uploadInstructionsResult:\n 'Dosya baytlarının nereye gönderileceği ve oluşturma ya da güncelleme isteğiyle gönderilecek `file` değeri',\n uploadStagePutSummary: 'Geçici yükleme için dosya baytlarını gönderin',\n uploadStageDeleteSummary: 'Geçici yüklemeyi silin',\n uploadStageResult: 'Tamamlandı, içerik yok',\n paramPreferenceKey: 'Tercih anahtarı, örn. `nav`.',\n preferenceGet: 'Geçerli kullanıcının bir tercihini getir',\n preferenceGetResult: 'Kaydedilmiş tercih veya yoksa `value: null`',\n preferenceSet: 'Geçerli kullanıcının bir tercihini kaydet',\n preferenceSetBody:\n 'Değeri `value` içinde gönderin. `value` içermeyen bir gövde, olduğu gibi değer olarak kaydedilir.',\n preferenceSetResult: 'Kaydedilen tercih',\n preferenceDelete: 'Geçerli kullanıcının bir tercihini sil',\n preferenceDeleteResult: 'Silinen tercih',\n reorder: 'Sıralanabilir bir listede dokümanları taşı',\n reorderBody:\n '`docsToMove` öğelerini `newKeyWillBe: \"greater\"` ile `target` sonrasına, `\"less\"` ile öncesine taşır. `orderableFieldName`, sıralanabilir bir koleksiyon için `_order`, sıralanabilir bir join için ise onun sıra alanıdır. `target.key` olmadan Payload yalnızca sıra anahtarı olmayan dokümanlara sıra anahtarı atar.',\n reorderResult:\n 'Yeni sıra anahtarları veya Payload sıra anahtarlarını ilk kez atadığında `message: \"initial migration\"`',\n errorReorder400: 'Geçersiz istek gövdesi; neden `error` içinde',\n\n error400: 'Doğrulama veya sorgu hatası (ValidationError, QueryError)',\n error401: 'Kimlik doğrulanmadı (AuthenticationError)',\n error403: 'Erişim denetimi tarafından yasaklandı (Forbidden, UnverifiedEmail)',\n error404: 'Doküman bulunamadı (NotFound)',\n error500: 'Sunucu iç hatası (APIError)',\n\n securityBearer:\n 'Giriş uç noktası tarafından döndürülen `token` değerini yapıştırın. `Authorization: Bearer <token>` olarak gönderilir. Payload ayrıca `JWT <token>` şemasını ve bir `{{cookiePrefix}}-token` çerezini de kabul eder.',\n securityInteractive:\n 'Etkileşimli giriş: kullanıcı adını (veya e-postayı) ve parolayı girin; Client ID/Secret alanlarını boş bırakın.',\n\n tagCollections: 'Koleksiyonlar',\n tagCollectionsDesc: 'Doküman koleksiyonu uç noktaları (CRUD, sayım, çoğaltma).',\n tagGlobals: 'Globaller',\n tagGlobalsDesc: 'Genel doküman uç noktaları.',\n tagSystem: 'Sistem',\n tagSystemDesc: 'Payload sistem uç noktaları.',\n tagAuth: 'Kimlik Doğrulama',\n tagVersions: 'Sürümler',\n tagJobs: 'İşler',\n tagUploads: 'Yüklemeler',\n tagAccess: 'Erişim',\n tagReorder: 'Sıralama',\n tagPlugins: 'Eklentiler',\n tagPluginsDesc: 'Resmi Payload eklentilerinin eklediği uç noktalar.',\n errorPlugin400: 'Geçersiz istek',\n errorPlugin401: 'Kimlik doğrulanmadı',\n errorPlugin403: 'Yasak',\n errorPlugin404: 'Bulunamadı',\n errorPlugin500: 'Dahili sunucu hatası',\n ecommerceAddItem: 'Sepete ürün ekle',\n ecommerceRemoveItem: 'Sepetten ürün çıkar',\n ecommerceUpdateItem: 'Sepetteki bir ürünün miktarını değiştir',\n ecommerceClearCart: 'Sepetteki tüm ürünleri çıkar',\n ecommerceMergeCart: 'Bir misafir sepetini bu sepetle birleştir',\n ecommerceCartAccess: 'Sepet sahibine veya gövdede `secret` değeri olan misafir sepetine izin verilir.',\n ecommerceCartResult: 'Güncellenen sepet',\n errorPluginEcommerce404: 'Sepet bulunamadı veya erişilemiyor',\n ecommerceQuantity: 'Yeni miktar ya da n kadar değiştirmek için `{ \"$inc\": n }`.',\n ecommerceInitiatePayment: '`{{method}}` ile ödeme başlat',\n ecommerceConfirmOrder: '`{{method}}` ile ödemeyi onayla ve siparişi oluştur',\n ecommercePaymentBody:\n '`cartID` (misafir sepeti için `secret` ile) veya kullanıcının sepetini kullanır. Kullanıcı yoksa `customerEmail` zorunludur. Ödeme adaptörü başka alanlar isteyebilir.',\n ecommerceInitiateResult: 'Ödeme başlatıldı. Adaptör kendi alanlarını ekler, ör. bir client secret.',\n ecommerceConfirmResult: 'Sipariş oluşturuldu',\n stripeWebhook: 'Stripe webhook olaylarını al',\n stripeWebhookBody:\n '`Stripe-Signature` başlığında imzalanmış ham Stripe olayı. API istemcileri değil, Stripe çağırır.',\n stripeWebhookResult: 'Olay alındı',\n errorPluginStripeWebhook400: 'İmza doğrulaması başarısız oldu',\n stripeRest: 'İzin verilen bir Stripe API yöntemini çağır',\n stripeRestResult: 'Stripe API sonucu',\n errorPluginStripeRest404: 'Stripe API bir hata döndürdü',\n mcp: 'MCP JSON-RPC mesajı gönder',\n mcpDesc:\n 'Streamable HTTP üzerinden, JSON yanıtlı Model Context Protocol. Anonim istekler çalışır; listelenen araçlar kullanıcının yetkilerine bağlıdır. 2025 protokol sürümünü kullanan istemciler `Accept: application/json, text/event-stream` göndermelidir.',\n mcpResult: 'JSON-RPC yanıtı',\n mcpOverrideAccess: 'Erişim kontrollerini atla. Yalnızca geliştirme için.',\n mcpGet: 'Desteklenmiyor: sunucu bir olay akışı açmaz',\n errorPluginMcpGet405: 'Yönteme izin verilmiyor, POST kullanın',\n mcpProtocolVersion: 'Üzerinde anlaşılan MCP protokol sürümü, ör. `2025-06-18`.',\n mcpResult202: 'Kabul edildi: gövdede yalnızca bildirimler veya yanıtlar vardı',\n errorPluginMcp404: 'Bilinmeyen MCP yöntemi',\n errorPluginMcp406: '`Accept` başlığında `application/json` veya `text/event-stream` yok',\n errorPluginMcp413: 'İstek gövdesi çok büyük',\n errorPluginMcp415: '`Content-Type` `application/json` olmalıdır',\n seoTitle: 'Meta başlığı oluştur',\n seoDescription: 'Meta açıklamayı oluştur',\n seoUrl: 'Önizleme URL’sini oluştur',\n seoImage: 'Meta görseli oluştur',\n seoBody:\n 'Düzenlenen doküman: `collectionSlug` veya `globalSlug`, `id` değeri ve güncel `doc` verisi. Generate fonksiyonunuza iletilir.',\n seoResult: 'Oluşturulan değer. Generate fonksiyonu ayarlı değilse boş bir dize.',\n searchReindex: 'Bazı koleksiyonlar için arama dizinini yeniden oluştur',\n searchReindexResult: 'Yeniden dizinleme özeti',\n tenantOptions: 'Kullanıcının seçebileceği kiracıları listele',\n tenantOptionsResult: 'Kiracı seçenekleri',\n exportDownload: 'Dokümanları bir dosyaya dışa aktar',\n exportDownloadResult: 'Dışa aktarma dosyası',\n exportPreview: 'Dışa aktarmayı önizle',\n importPreview: 'İçe aktarma dosyasını önizle',\n previewResult: 'Bir sayfa önizleme dokümanı',\n importFileData: 'Dosya içeriği, base64 ile kodlanmış.',\n r2Upload: 'R2’ye parçalar halinde dosya yükle',\n r2UploadDesc:\n 'Tek rotada üç adım. Başlangıç: `collection`, `fileName` ve `fileType` gönderin. Her parça: `multipartId`, `multipartKey`, `multipartNumber` ve `signedReceipt` ekleyip baytları gönderin. Bitiş: aynısını `multipartNumber` olmadan, parçaların JSON listesiyle gönderin.',\n r2UploadResult: 'Yükleme başladı, parça yüklendi veya yükleme tamamlandı (metin olarak nesne anahtarı)',\n errorStorageR2412: 'Bu anahtarda zaten bir dosya var',\n\n localizationHeading: 'Yerelleştirme',\n localizationNote:\n 'Mevcut yerel ayarlar: {{locales}}. Birini seçmek için bir okuma uç noktasına `?locale=<code>` iletin. Tüm yerel ayarları aynı anda almak için `?locale=all` iletin — bu durumda her yerelleştirilmiş alan, tek bir değer yerine yerel ayar koduyla anahtarlanmış bir nesne olarak döndürülür (örn. `{ \\\\\"en\\\\\": \\\\\"Hello\\\\\", \\\\\"de\\\\\": \\\\\"Hallo\\\\\" }`). Bu yerel başına nesne biçimini korumak için `locale=all` ile birlikte `?flattenLocales=false` ayarlayın. Alan şemaları tek yerelli biçimi gösterir.',\n docLanguagesNote:\n \"Bu dokümantasyon şu dillerde mevcuttur: {{languages}}. Dili değiştirmek için bu spec URL'sine `?lang=<code>` ekleyin.\",\n },\n}\n"],"mappings":"AAEA,MAAa,KAAsC,EACjD,kCAAkC;CAChC,YAAY;CACZ,WAAW;CACX,gBAAgB;CAChB,YAAY;CACZ,YAAY;CACZ,eAAe;CACf,wBAAwB;CACxB,0BAA0B;CAC1B,mBAAmB;CACnB,sBAAsB;CACtB,qBACE;CACF,aACE;CACF,qBACE;CACF,qBACE;CACF,4BACE;CAEF,cAAc;CACd,gBAAgB;CAChB,aAAa;CACb,aACE;CACF,0BAA0B;CAC1B,iBAAiB;CACjB,yBACE;CACF,0BACE;CAEF,gBAAgB;CAChB,eAAe;CACf,mBAAmB;CACnB,mBAAmB;CACnB,mBAAmB;CACnB,sBAAsB;CACtB,sBAAsB;CACtB,iBAAiB;CACjB,sBAAsB;CACtB,gBACE;CACF,cACE;CAEF,WAAW;CAEX,WAAW;CACX,YAAY;CACZ,QAAQ;CACR,kBAAkB;CAClB,oBAAoB;CACpB,mBAAmB;CACnB,mBAAmB;CACnB,UAAU;CACV,YAAY;CACZ,WAAW;CACX,eAAe;CACf,YAAY;CACZ,YAAY;CACZ,cAAc;CAEd,aAAa;CACb,eAAe;CACf,iBAAiB;CACjB,cAAc;CAEd,gBAAgB;CAChB,sBAAsB;CACtB,eAAe;CACf,qBAAqB;CACrB,kBAAkB;CAClB,WAAW;CACX,uBAAuB;CACvB,YAAY;CACZ,wBAAwB;CACxB,WAAW;CAEX,YAAY;CACZ,YACE;CACF,oBAAoB;CACpB,WAAW;CACX,aAAa;CACb,kBAAkB;CAClB,2BAA2B;CAC3B,0BACE;CACF,uBAAuB;CACvB,0BAA0B;CAC1B,mBAAmB;CACnB,oBAAoB;CACpB,eAAe;CACf,qBAAqB;CACrB,eAAe;CACf,mBACE;CACF,qBAAqB;CACrB,kBAAkB;CAClB,wBAAwB;CACxB,SAAS;CACT,aACE;CACF,eACE;CACF,iBAAiB;CAEjB,UAAU;CACV,UAAU;CACV,UAAU;CACV,UAAU;CACV,UAAU;CAEV,gBACE;CACF,qBACE;CAEF,gBAAgB;CAChB,oBAAoB;CACpB,YAAY;CACZ,gBAAgB;CAChB,WAAW;CACX,eAAe;CACf,SAAS;CACT,aAAa;CACb,SAAS;CACT,YAAY;CACZ,WAAW;CACX,YAAY;CACZ,YAAY;CACZ,gBAAgB;CAChB,gBAAgB;CAChB,gBAAgB;CAChB,gBAAgB;CAChB,gBAAgB;CAChB,gBAAgB;CAChB,kBAAkB;CAClB,qBAAqB;CACrB,qBAAqB;CACrB,oBAAoB;CACpB,oBAAoB;CACpB,qBAAqB;CACrB,qBAAqB;CACrB,yBAAyB;CACzB,mBAAmB;CACnB,0BAA0B;CAC1B,uBAAuB;CACvB,sBACE;CACF,yBAAyB;CACzB,wBAAwB;CACxB,eAAe;CACf,mBACE;CACF,qBAAqB;CACrB,6BAA6B;CAC7B,YAAY;CACZ,kBAAkB;CAClB,0BAA0B;CAC1B,KAAK;CACL,SACE;CACF,WAAW;CACX,mBAAmB;CACnB,QAAQ;CACR,sBAAsB;CACtB,oBAAoB;CACpB,cAAc;CACd,mBAAmB;CACnB,mBAAmB;CACnB,mBAAmB;CACnB,mBAAmB;CACnB,UAAU;CACV,gBAAgB;CAChB,QAAQ;CACR,UAAU;CACV,SACE;CACF,WAAW;CACX,eAAe;CACf,qBAAqB;CACrB,eAAe;CACf,qBAAqB;CACrB,gBAAgB;CAChB,sBAAsB;CACtB,eAAe;CACf,eAAe;CACf,eAAe;CACf,gBAAgB;CAChB,UAAU;CACV,cACE;CACF,gBAAgB;CAChB,mBAAmB;CAEnB,qBAAqB;CACrB,kBACE;CACF,kBACE;AACJ,EACF"}
@@ -67,11 +67,24 @@ const uk = { "@seshuk/payload-plugin-openapi": {
67
67
  uploadPayloadField: "Поля {{schema}} у вигляді JSON-рядка. Приклад: `{\"alt\":\"A caption\"}`.",
68
68
  fileServe: "Файл",
69
69
  filePartial: "Частина файлу для запиту з `Range`",
70
+ paramFileVersion: "Віддає файл, збережений з цим ID версії.",
70
71
  uploadInstructionsSummary: "Отримати інструкції для завантаження файлу перед збереженням документа",
71
72
  uploadInstructionsResult: "Куди надіслати байти файлу і яке значення `file` передати в запиті на створення чи оновлення",
72
73
  uploadStagePutSummary: "Надіслати байти файлу для тимчасового завантаження",
73
74
  uploadStageDeleteSummary: "Видалити тимчасове завантаження",
74
75
  uploadStageResult: "Готово, без вмісту",
76
+ paramPreferenceKey: "Ключ налаштування, наприклад `nav`.",
77
+ preferenceGet: "Отримати налаштування поточного користувача",
78
+ preferenceGetResult: "Збережене налаштування або `value: null`, якщо його немає",
79
+ preferenceSet: "Зберегти налаштування поточного користувача",
80
+ preferenceSetBody: "Передайте значення в `value`. Тіло без `value` зберігається цілком як значення.",
81
+ preferenceSetResult: "Збережене налаштування",
82
+ preferenceDelete: "Видалити налаштування поточного користувача",
83
+ preferenceDeleteResult: "Видалене налаштування",
84
+ reorder: "Перемістити документи у впорядковуваному списку",
85
+ reorderBody: "Переміщує `docsToMove` після `target` за `newKeyWillBe: \"greater\"` або перед ним за `\"less\"`. `orderableFieldName` дорівнює `_order` для впорядковуваної колекції або полю порядку впорядковуваного join. Без `target.key` Payload лише призначає ключі порядку документам, які їх не мають.",
86
+ reorderResult: "Нові ключі порядку або `message: \"initial migration\"`, коли Payload уперше призначив ключі порядку",
87
+ errorReorder400: "Некоректне тіло запиту; причину вказано в `error`",
75
88
  error400: "Помилка валідації або запиту (ValidationError, QueryError)",
76
89
  error401: "Не автентифіковано (AuthenticationError)",
77
90
  error403: "Заборонено контролем доступу (Forbidden, UnverifiedEmail)",
@@ -90,6 +103,67 @@ const uk = { "@seshuk/payload-plugin-openapi": {
90
103
  tagJobs: "Завдання",
91
104
  tagUploads: "Завантаження",
92
105
  tagAccess: "Доступ",
106
+ tagReorder: "Порядок",
107
+ tagPlugins: "Плагіни",
108
+ tagPluginsDesc: "Ендпоінти офіційних плагінів Payload.",
109
+ errorPlugin400: "Некоректний запит",
110
+ errorPlugin401: "Не автентифіковано",
111
+ errorPlugin403: "Доступ заборонено",
112
+ errorPlugin404: "Не знайдено",
113
+ errorPlugin500: "Внутрішня помилка сервера",
114
+ ecommerceAddItem: "Додати товар до кошика",
115
+ ecommerceRemoveItem: "Видалити товар із кошика",
116
+ ecommerceUpdateItem: "Змінити кількість товару в кошику",
117
+ ecommerceClearCart: "Видалити всі товари з кошика",
118
+ ecommerceMergeCart: "Об’єднати гостьовий кошик із цим кошиком",
119
+ ecommerceCartAccess: "Дозволено власнику кошика або для гостьового кошика з його `secret` у тілі запиту.",
120
+ ecommerceCartResult: "Оновлений кошик",
121
+ errorPluginEcommerce404: "Кошик не знайдено або він недоступний",
122
+ ecommerceQuantity: "Нова кількість або `{ \"$inc\": n }`, щоб змінити її на n.",
123
+ ecommerceInitiatePayment: "Почати оплату через `{{method}}`",
124
+ ecommerceConfirmOrder: "Підтвердити оплату через `{{method}}` і створити замовлення",
125
+ ecommercePaymentBody: "Використовує `cartID` (із `secret` для гостьового кошика) або кошик користувача. Без користувача обов’язковий `customerEmail`. Платіжному адаптеру можуть знадобитися інші поля.",
126
+ ecommerceInitiateResult: "Оплату розпочато. Адаптер додає власні поля, наприклад client secret.",
127
+ ecommerceConfirmResult: "Замовлення створено",
128
+ stripeWebhook: "Отримати події вебхука Stripe",
129
+ stripeWebhookBody: "Необроблена подія Stripe, підписана в заголовку `Stripe-Signature`. Викликається Stripe, а не клієнтами API.",
130
+ stripeWebhookResult: "Подію отримано",
131
+ errorPluginStripeWebhook400: "Перевірка підпису не пройшла",
132
+ stripeRest: "Викликати дозволений метод API Stripe",
133
+ stripeRestResult: "Результат API Stripe",
134
+ errorPluginStripeRest404: "API Stripe повернув помилку",
135
+ mcp: "Надіслати повідомлення MCP JSON-RPC",
136
+ mcpDesc: "Model Context Protocol через Streamable HTTP з JSON-відповідями. Анонімні запити працюють; перелік інструментів залежить від прав користувача. Клієнти з версією протоколу 2025 року мають надсилати `Accept: application/json, text/event-stream`.",
137
+ mcpResult: "Відповідь JSON-RPC",
138
+ mcpOverrideAccess: "Пропустити перевірки доступу. Лише для розробки.",
139
+ mcpGet: "Не підтримується: сервер не відкриває потік подій",
140
+ errorPluginMcpGet405: "Метод не дозволено, використовуйте POST",
141
+ mcpProtocolVersion: "Узгоджена версія протоколу MCP, наприклад `2025-06-18`.",
142
+ mcpResult202: "Прийнято: у тілі були лише сповіщення або відповіді",
143
+ errorPluginMcp404: "Невідомий метод MCP",
144
+ errorPluginMcp406: "У заголовку `Accept` немає `application/json` або `text/event-stream`",
145
+ errorPluginMcp413: "Тіло запиту завелике",
146
+ errorPluginMcp415: "`Content-Type` має бути `application/json`",
147
+ seoTitle: "Згенерувати мета-заголовок",
148
+ seoDescription: "Згенерувати мета-опис",
149
+ seoUrl: "Згенерувати URL попереднього перегляду",
150
+ seoImage: "Згенерувати мета-зображення",
151
+ seoBody: "Документ, що редагується: `collectionSlug` або `globalSlug`, його `id` і поточні дані `doc`. Передається у вашу функцію генерації.",
152
+ seoResult: "Згенероване значення. Порожній рядок, якщо функцію генерації не задано.",
153
+ searchReindex: "Перебудувати пошуковий індекс для вибраних колекцій",
154
+ searchReindexResult: "Підсумок переіндексації",
155
+ tenantOptions: "Перелік орендарів, яких може вибрати користувач",
156
+ tenantOptionsResult: "Варіанти орендарів",
157
+ exportDownload: "Експортувати документи у файл",
158
+ exportDownloadResult: "Файл експорту",
159
+ exportPreview: "Попередній перегляд експорту",
160
+ importPreview: "Попередній перегляд файлу імпорту",
161
+ previewResult: "Сторінка документів попереднього перегляду",
162
+ importFileData: "Вміст файлу в кодуванні base64.",
163
+ r2Upload: "Завантажити файл у R2 частинами",
164
+ r2UploadDesc: "Три кроки на одному маршруті. Початок: передайте `collection`, `fileName` і `fileType`. Кожна частина: додайте `multipartId`, `multipartKey`, `multipartNumber` і `signedReceipt` та надішліть байти. Завершення: те саме без `multipartNumber`, зі списком частин у JSON.",
165
+ r2UploadResult: "Завантаження розпочато, частину завантажено або завантаження завершено (ключ об’єкта текстом)",
166
+ errorStorageR2412: "Файл із цим ключем уже існує",
93
167
  localizationHeading: "Локалізація",
94
168
  localizationNote: "Доступні локалі: {{locales}}. Передайте `?locale=<code>` до ендпоінта читання, щоб вибрати одну. Передайте `?locale=all`, щоб отримати всі локалі одразу — тоді кожне локалізоване поле повертається як об’єкт із ключами за кодом локалі (напр. `{ \"en\": \"Hello\", \"de\": \"Hallo\" }`) замість одного значення. Встановіть `?flattenLocales=false` разом із `locale=all`, щоб зберегти цю форму об’єкта за локалями. Схеми полів показують форму для однієї локалі.",
95
169
  docLanguagesNote: "Ця документація доступна цими мовами: {{languages}}. Додайте `?lang=<code>` до URL цієї специфікації, щоб перемкнути."
@@ -1 +1 @@
1
- {"version":3,"file":"uk.js","names":[],"sources":["../../../../src/shared/translations/locales/uk.ts"],"sourcesContent":["import type { PluginDefaultTranslationsObject } from '@/shared/translations/types.js'\n\nexport const uk: PluginDefaultTranslationsObject = {\n '@seshuk/payload-plugin-openapi': {\n paramDepth: 'Скільки рівнів пов’язаних документів заповнювати.',\n paramSort: 'Поле для сортування; додайте префікс `-` для спадання, напр. `-createdAt`.',\n paramSortShort: 'Поле для сортування; додайте префікс `-` для спадання.',\n paramDraft: 'Повертати чернеткові версії.',\n paramTrash: 'Включати документи з кошика.',\n paramAutosave: 'Зберегти як автозбереження: оновлює останню автозбережену версію замість додавання нової.',\n paramPublishAllLocales: 'Опублікувати всі локалі, а не лише локаль запиту.',\n paramUnpublishAllLocales: 'Зняти з публікації всі локалі й повернути документ у чернетку.',\n paramOverrideLock: 'Ігнорувати блокування іншого користувача. За замовчуванням false.',\n paramSelectedLocales: 'Копіювати в дублікат лише ці локалі. За замовчуванням: усі локалі.',\n paramFlattenLocales:\n 'З `locale=all` встановіть false, щоб зберегти локалізовані поля як об’єкти за локалями. За замовчуванням true.',\n paramLocale: 'Локаль для повернення або `all` для всіх локалей. Див. розділ Localization в описі API.',\n paramFallbackLocale: 'Локаль для підстановки відсутніх локалізованих значень або `none`, щоб вимкнути.',\n paramValidateLocale: 'Локалі для перевірки або `all` для всіх локалей. Для кількох локалей повторіть параметр.',\n paramComputeHierarchyPaths:\n 'Передайте true, щоб обчислити шляхи `{{slugPath}}` і `{{titlePath}}`. Вибір будь-якого з цих полів теж їх обчислює.',\n\n schemaSelect: 'Виберіть поля для повернення, напр. `select[title]=true`. Пропустіть, щоб повернути всі.',\n schemaPopulate: 'Заповнюйте пов’язані документи для кожної колекції, напр. `populate[posts][title]=true`.',\n schemaJoins: 'Налаштування для кожного приєднання (limit/page/sort/where/count), напр. `joins[posts][limit]=10`.',\n schemaWhere:\n 'Фільтр Payload `where`. Вкладіть поле, а потім оператор: `where[field][equals]=value`. Комбінуйте умови за допомогою масивів `and` / `or`, напр. `where[or][0][field][equals]=value`. Кожне поле перелічує лише оператори, дійсні для його типу.',\n schemaSupportedTimezones: 'Підтримувані часові пояси у форматі IANA.',\n schemaPerLocale: 'Значення для кожної локалі, що повертаються, коли `locale=all`.',\n schemaHierarchySlugPath:\n 'Шлях зі slug, наприклад `parent/child`. Обчислюється під час читання з `computeHierarchyPaths=true` або якщо поле вибрано. Не можна використовувати в `where`.',\n schemaHierarchyTitlePath:\n 'Шлях із заголовків, наприклад `Parent/Child`. Обчислюється під час читання з `computeHierarchyPaths=true` або якщо поле вибрано. Не можна використовувати в `where`.',\n\n collectionList: 'Посторінковий список документів',\n collectionDoc: 'Окремий документ',\n collectionCreated: 'Створений документ',\n collectionUpdated: 'Оновлений документ',\n collectionDeleted: 'Видалений документ',\n collectionBulkUpdate: 'Результат масового оновлення',\n collectionBulkDelete: 'Результат масового видалення',\n collectionCount: 'Кількість документів',\n collectionDuplicated: 'Дубльований документ',\n validateResult:\n 'Результат перевірки. Нічого не зберігається. Недійсні значення полів повертають `valid: false` з помилками, а не статус помилки.',\n validateBody:\n 'Дані документа для перевірки. Для збереженого документа або глобального документа дані накладаються на останню чернетку, а якщо чернетки немає, на збережений документ.',\n\n globalDoc: 'Глобальний документ',\n\n authLogin: 'Результат входу',\n authLogout: 'Результат виходу',\n authMe: 'Поточний автентифікований користувач',\n authRefreshToken: 'Оновлений токен',\n authForgotPassword: 'Лист для скидання пароля надіслано',\n authResetPassword: 'Результат скидання пароля',\n authFirstRegister: 'Перший користувач, створений із токеном автентифікації',\n authInit: 'Чи має ця колекція автентифікації хоча б одного користувача',\n authAccess: 'Дозволи поточного користувача для всіх колекцій і глобальних',\n docAccess: 'Дозволи поточного користувача для цього документа',\n docAccessBody:\n 'Дані документа, за якими перевіряється доступ. Без них Payload використовує збережений документ, якщо він є.',\n authUnlock: 'Результат розблокування',\n authVerify: 'Результат підтвердження',\n apiKeyReveal: 'Розшифрований API-ключ',\n\n versionList: 'Посторінковий список версій',\n versionSingle: 'Окрема версія',\n versionRestored: 'Відновлений документ',\n versionWhere: 'Фільтр за полями версії, напр. `where[parent][equals]=<docId>`.',\n\n jobsRunSummary: 'Запустити завдання з черги (і, за замовчуванням, обробити розклади)',\n jobsSchedulesSummary: 'Поставити в чергу завдання, час яких настав згідно з розкладом',\n jobsRunResult: 'Результат запуску',\n jobsSchedulesResult: 'Результат планування',\n jobsRunAllQueues: 'Запускати завдання в усіх чергах.',\n jobsLimit: 'Максимальна кількість завдань для запуску.',\n jobsDisableScheduling: 'Пропустити обробку розкладу, яку `run` виконує за замовчуванням.',\n jobsSilent: 'Придушити логування запуску.',\n jobsSchedulesAllQueues: 'Обробляти розклади в усіх чергах.',\n jobsQueue: 'Обмежити операцію однією чергою. Відомі черги: {{queues}}.',\n\n uploadFile: 'Двійковий файл для завантаження.',\n uploadBody:\n 'Надішліть `multipart/form-data`, щоб завантажити файл (двійкова частина `file` плюс частина `_payload` з полями у вигляді JSON-рядка), або `application/json` лише з полями, коли файлу немає.',\n uploadPayloadField: 'Поля {{schema}} у вигляді JSON-рядка. Приклад: `{\"alt\":\"A caption\"}`.',\n fileServe: 'Файл',\n filePartial: 'Частина файлу для запиту з `Range`',\n uploadInstructionsSummary: 'Отримати інструкції для завантаження файлу перед збереженням документа',\n uploadInstructionsResult:\n 'Куди надіслати байти файлу і яке значення `file` передати в запиті на створення чи оновлення',\n uploadStagePutSummary: 'Надіслати байти файлу для тимчасового завантаження',\n uploadStageDeleteSummary: 'Видалити тимчасове завантаження',\n uploadStageResult: 'Готово, без вмісту',\n\n error400: 'Помилка валідації або запиту (ValidationError, QueryError)',\n error401: 'Не автентифіковано (AuthenticationError)',\n error403: 'Заборонено контролем доступу (Forbidden, UnverifiedEmail)',\n error404: 'Документ не знайдено (NotFound)',\n error500: 'Внутрішня помилка сервера (APIError)',\n\n securityBearer:\n 'Вставте `token`, повернений ендпоінтом входу. Надсилається як `Authorization: Bearer <token>`. Payload також приймає схему `JWT <token>` та cookie `{{cookiePrefix}}-token`.',\n securityInteractive:\n 'Інтерактивний вхід: введіть ім’я користувача (або email) і пароль; залиште Client ID/Secret порожніми.',\n\n tagCollections: 'Колекції',\n tagCollectionsDesc: 'Ендпоінти колекцій документів (CRUD, підрахунок, дублювання).',\n tagGlobals: 'Глобальні',\n tagGlobalsDesc: 'Ендпоінти глобальних документів.',\n tagSystem: 'Система',\n tagSystemDesc: 'Системні ендпоінти Payload.',\n tagAuth: 'Автентифікація',\n tagVersions: 'Версії',\n tagJobs: 'Завдання',\n tagUploads: 'Завантаження',\n tagAccess: 'Доступ',\n\n localizationHeading: 'Локалізація',\n localizationNote:\n 'Доступні локалі: {{locales}}. Передайте `?locale=<code>` до ендпоінта читання, щоб вибрати одну. Передайте `?locale=all`, щоб отримати всі локалі одразу — тоді кожне локалізоване поле повертається як об’єкт із ключами за кодом локалі (напр. `{ \"en\": \"Hello\", \"de\": \"Hallo\" }`) замість одного значення. Встановіть `?flattenLocales=false` разом із `locale=all`, щоб зберегти цю форму об’єкта за локалями. Схеми полів показують форму для однієї локалі.',\n docLanguagesNote:\n 'Ця документація доступна цими мовами: {{languages}}. Додайте `?lang=<code>` до URL цієї специфікації, щоб перемкнути.',\n },\n}\n"],"mappings":"AAEA,MAAa,KAAsC,EACjD,kCAAkC;CAChC,YAAY;CACZ,WAAW;CACX,gBAAgB;CAChB,YAAY;CACZ,YAAY;CACZ,eAAe;CACf,wBAAwB;CACxB,0BAA0B;CAC1B,mBAAmB;CACnB,sBAAsB;CACtB,qBACE;CACF,aAAa;CACb,qBAAqB;CACrB,qBAAqB;CACrB,4BACE;CAEF,cAAc;CACd,gBAAgB;CAChB,aAAa;CACb,aACE;CACF,0BAA0B;CAC1B,iBAAiB;CACjB,yBACE;CACF,0BACE;CAEF,gBAAgB;CAChB,eAAe;CACf,mBAAmB;CACnB,mBAAmB;CACnB,mBAAmB;CACnB,sBAAsB;CACtB,sBAAsB;CACtB,iBAAiB;CACjB,sBAAsB;CACtB,gBACE;CACF,cACE;CAEF,WAAW;CAEX,WAAW;CACX,YAAY;CACZ,QAAQ;CACR,kBAAkB;CAClB,oBAAoB;CACpB,mBAAmB;CACnB,mBAAmB;CACnB,UAAU;CACV,YAAY;CACZ,WAAW;CACX,eACE;CACF,YAAY;CACZ,YAAY;CACZ,cAAc;CAEd,aAAa;CACb,eAAe;CACf,iBAAiB;CACjB,cAAc;CAEd,gBAAgB;CAChB,sBAAsB;CACtB,eAAe;CACf,qBAAqB;CACrB,kBAAkB;CAClB,WAAW;CACX,uBAAuB;CACvB,YAAY;CACZ,wBAAwB;CACxB,WAAW;CAEX,YAAY;CACZ,YACE;CACF,oBAAoB;CACpB,WAAW;CACX,aAAa;CACb,2BAA2B;CAC3B,0BACE;CACF,uBAAuB;CACvB,0BAA0B;CAC1B,mBAAmB;CAEnB,UAAU;CACV,UAAU;CACV,UAAU;CACV,UAAU;CACV,UAAU;CAEV,gBACE;CACF,qBACE;CAEF,gBAAgB;CAChB,oBAAoB;CACpB,YAAY;CACZ,gBAAgB;CAChB,WAAW;CACX,eAAe;CACf,SAAS;CACT,aAAa;CACb,SAAS;CACT,YAAY;CACZ,WAAW;CAEX,qBAAqB;CACrB,kBACE;CACF,kBACE;AACJ,EACF"}
1
+ {"version":3,"file":"uk.js","names":[],"sources":["../../../../src/shared/translations/locales/uk.ts"],"sourcesContent":["import type { PluginDefaultTranslationsObject } from '@/shared/translations/types.js'\n\nexport const uk: PluginDefaultTranslationsObject = {\n '@seshuk/payload-plugin-openapi': {\n paramDepth: 'Скільки рівнів пов’язаних документів заповнювати.',\n paramSort: 'Поле для сортування; додайте префікс `-` для спадання, напр. `-createdAt`.',\n paramSortShort: 'Поле для сортування; додайте префікс `-` для спадання.',\n paramDraft: 'Повертати чернеткові версії.',\n paramTrash: 'Включати документи з кошика.',\n paramAutosave: 'Зберегти як автозбереження: оновлює останню автозбережену версію замість додавання нової.',\n paramPublishAllLocales: 'Опублікувати всі локалі, а не лише локаль запиту.',\n paramUnpublishAllLocales: 'Зняти з публікації всі локалі й повернути документ у чернетку.',\n paramOverrideLock: 'Ігнорувати блокування іншого користувача. За замовчуванням false.',\n paramSelectedLocales: 'Копіювати в дублікат лише ці локалі. За замовчуванням: усі локалі.',\n paramFlattenLocales:\n 'З `locale=all` встановіть false, щоб зберегти локалізовані поля як об’єкти за локалями. За замовчуванням true.',\n paramLocale: 'Локаль для повернення або `all` для всіх локалей. Див. розділ Localization в описі API.',\n paramFallbackLocale: 'Локаль для підстановки відсутніх локалізованих значень або `none`, щоб вимкнути.',\n paramValidateLocale: 'Локалі для перевірки або `all` для всіх локалей. Для кількох локалей повторіть параметр.',\n paramComputeHierarchyPaths:\n 'Передайте true, щоб обчислити шляхи `{{slugPath}}` і `{{titlePath}}`. Вибір будь-якого з цих полів теж їх обчислює.',\n\n schemaSelect: 'Виберіть поля для повернення, напр. `select[title]=true`. Пропустіть, щоб повернути всі.',\n schemaPopulate: 'Заповнюйте пов’язані документи для кожної колекції, напр. `populate[posts][title]=true`.',\n schemaJoins: 'Налаштування для кожного приєднання (limit/page/sort/where/count), напр. `joins[posts][limit]=10`.',\n schemaWhere:\n 'Фільтр Payload `where`. Вкладіть поле, а потім оператор: `where[field][equals]=value`. Комбінуйте умови за допомогою масивів `and` / `or`, напр. `where[or][0][field][equals]=value`. Кожне поле перелічує лише оператори, дійсні для його типу.',\n schemaSupportedTimezones: 'Підтримувані часові пояси у форматі IANA.',\n schemaPerLocale: 'Значення для кожної локалі, що повертаються, коли `locale=all`.',\n schemaHierarchySlugPath:\n 'Шлях зі slug, наприклад `parent/child`. Обчислюється під час читання з `computeHierarchyPaths=true` або якщо поле вибрано. Не можна використовувати в `where`.',\n schemaHierarchyTitlePath:\n 'Шлях із заголовків, наприклад `Parent/Child`. Обчислюється під час читання з `computeHierarchyPaths=true` або якщо поле вибрано. Не можна використовувати в `where`.',\n\n collectionList: 'Посторінковий список документів',\n collectionDoc: 'Окремий документ',\n collectionCreated: 'Створений документ',\n collectionUpdated: 'Оновлений документ',\n collectionDeleted: 'Видалений документ',\n collectionBulkUpdate: 'Результат масового оновлення',\n collectionBulkDelete: 'Результат масового видалення',\n collectionCount: 'Кількість документів',\n collectionDuplicated: 'Дубльований документ',\n validateResult:\n 'Результат перевірки. Нічого не зберігається. Недійсні значення полів повертають `valid: false` з помилками, а не статус помилки.',\n validateBody:\n 'Дані документа для перевірки. Для збереженого документа або глобального документа дані накладаються на останню чернетку, а якщо чернетки немає, на збережений документ.',\n\n globalDoc: 'Глобальний документ',\n\n authLogin: 'Результат входу',\n authLogout: 'Результат виходу',\n authMe: 'Поточний автентифікований користувач',\n authRefreshToken: 'Оновлений токен',\n authForgotPassword: 'Лист для скидання пароля надіслано',\n authResetPassword: 'Результат скидання пароля',\n authFirstRegister: 'Перший користувач, створений із токеном автентифікації',\n authInit: 'Чи має ця колекція автентифікації хоча б одного користувача',\n authAccess: 'Дозволи поточного користувача для всіх колекцій і глобальних',\n docAccess: 'Дозволи поточного користувача для цього документа',\n docAccessBody:\n 'Дані документа, за якими перевіряється доступ. Без них Payload використовує збережений документ, якщо він є.',\n authUnlock: 'Результат розблокування',\n authVerify: 'Результат підтвердження',\n apiKeyReveal: 'Розшифрований API-ключ',\n\n versionList: 'Посторінковий список версій',\n versionSingle: 'Окрема версія',\n versionRestored: 'Відновлений документ',\n versionWhere: 'Фільтр за полями версії, напр. `where[parent][equals]=<docId>`.',\n\n jobsRunSummary: 'Запустити завдання з черги (і, за замовчуванням, обробити розклади)',\n jobsSchedulesSummary: 'Поставити в чергу завдання, час яких настав згідно з розкладом',\n jobsRunResult: 'Результат запуску',\n jobsSchedulesResult: 'Результат планування',\n jobsRunAllQueues: 'Запускати завдання в усіх чергах.',\n jobsLimit: 'Максимальна кількість завдань для запуску.',\n jobsDisableScheduling: 'Пропустити обробку розкладу, яку `run` виконує за замовчуванням.',\n jobsSilent: 'Придушити логування запуску.',\n jobsSchedulesAllQueues: 'Обробляти розклади в усіх чергах.',\n jobsQueue: 'Обмежити операцію однією чергою. Відомі черги: {{queues}}.',\n\n uploadFile: 'Двійковий файл для завантаження.',\n uploadBody:\n 'Надішліть `multipart/form-data`, щоб завантажити файл (двійкова частина `file` плюс частина `_payload` з полями у вигляді JSON-рядка), або `application/json` лише з полями, коли файлу немає.',\n uploadPayloadField: 'Поля {{schema}} у вигляді JSON-рядка. Приклад: `{\"alt\":\"A caption\"}`.',\n fileServe: 'Файл',\n filePartial: 'Частина файлу для запиту з `Range`',\n paramFileVersion: 'Віддає файл, збережений з цим ID версії.',\n uploadInstructionsSummary: 'Отримати інструкції для завантаження файлу перед збереженням документа',\n uploadInstructionsResult:\n 'Куди надіслати байти файлу і яке значення `file` передати в запиті на створення чи оновлення',\n uploadStagePutSummary: 'Надіслати байти файлу для тимчасового завантаження',\n uploadStageDeleteSummary: 'Видалити тимчасове завантаження',\n uploadStageResult: 'Готово, без вмісту',\n paramPreferenceKey: 'Ключ налаштування, наприклад `nav`.',\n preferenceGet: 'Отримати налаштування поточного користувача',\n preferenceGetResult: 'Збережене налаштування або `value: null`, якщо його немає',\n preferenceSet: 'Зберегти налаштування поточного користувача',\n preferenceSetBody: 'Передайте значення в `value`. Тіло без `value` зберігається цілком як значення.',\n preferenceSetResult: 'Збережене налаштування',\n preferenceDelete: 'Видалити налаштування поточного користувача',\n preferenceDeleteResult: 'Видалене налаштування',\n reorder: 'Перемістити документи у впорядковуваному списку',\n reorderBody:\n 'Переміщує `docsToMove` після `target` за `newKeyWillBe: \"greater\"` або перед ним за `\"less\"`. `orderableFieldName` дорівнює `_order` для впорядковуваної колекції або полю порядку впорядковуваного join. Без `target.key` Payload лише призначає ключі порядку документам, які їх не мають.',\n reorderResult: 'Нові ключі порядку або `message: \"initial migration\"`, коли Payload уперше призначив ключі порядку',\n errorReorder400: 'Некоректне тіло запиту; причину вказано в `error`',\n\n error400: 'Помилка валідації або запиту (ValidationError, QueryError)',\n error401: 'Не автентифіковано (AuthenticationError)',\n error403: 'Заборонено контролем доступу (Forbidden, UnverifiedEmail)',\n error404: 'Документ не знайдено (NotFound)',\n error500: 'Внутрішня помилка сервера (APIError)',\n\n securityBearer:\n 'Вставте `token`, повернений ендпоінтом входу. Надсилається як `Authorization: Bearer <token>`. Payload також приймає схему `JWT <token>` та cookie `{{cookiePrefix}}-token`.',\n securityInteractive:\n 'Інтерактивний вхід: введіть ім’я користувача (або email) і пароль; залиште Client ID/Secret порожніми.',\n\n tagCollections: 'Колекції',\n tagCollectionsDesc: 'Ендпоінти колекцій документів (CRUD, підрахунок, дублювання).',\n tagGlobals: 'Глобальні',\n tagGlobalsDesc: 'Ендпоінти глобальних документів.',\n tagSystem: 'Система',\n tagSystemDesc: 'Системні ендпоінти Payload.',\n tagAuth: 'Автентифікація',\n tagVersions: 'Версії',\n tagJobs: 'Завдання',\n tagUploads: 'Завантаження',\n tagAccess: 'Доступ',\n tagReorder: 'Порядок',\n tagPlugins: 'Плагіни',\n tagPluginsDesc: 'Ендпоінти офіційних плагінів Payload.',\n errorPlugin400: 'Некоректний запит',\n errorPlugin401: 'Не автентифіковано',\n errorPlugin403: 'Доступ заборонено',\n errorPlugin404: 'Не знайдено',\n errorPlugin500: 'Внутрішня помилка сервера',\n ecommerceAddItem: 'Додати товар до кошика',\n ecommerceRemoveItem: 'Видалити товар із кошика',\n ecommerceUpdateItem: 'Змінити кількість товару в кошику',\n ecommerceClearCart: 'Видалити всі товари з кошика',\n ecommerceMergeCart: 'Об’єднати гостьовий кошик із цим кошиком',\n ecommerceCartAccess: 'Дозволено власнику кошика або для гостьового кошика з його `secret` у тілі запиту.',\n ecommerceCartResult: 'Оновлений кошик',\n errorPluginEcommerce404: 'Кошик не знайдено або він недоступний',\n ecommerceQuantity: 'Нова кількість або `{ \"$inc\": n }`, щоб змінити її на n.',\n ecommerceInitiatePayment: 'Почати оплату через `{{method}}`',\n ecommerceConfirmOrder: 'Підтвердити оплату через `{{method}}` і створити замовлення',\n ecommercePaymentBody:\n 'Використовує `cartID` (із `secret` для гостьового кошика) або кошик користувача. Без користувача обов’язковий `customerEmail`. Платіжному адаптеру можуть знадобитися інші поля.',\n ecommerceInitiateResult: 'Оплату розпочато. Адаптер додає власні поля, наприклад client secret.',\n ecommerceConfirmResult: 'Замовлення створено',\n stripeWebhook: 'Отримати події вебхука Stripe',\n stripeWebhookBody:\n 'Необроблена подія Stripe, підписана в заголовку `Stripe-Signature`. Викликається Stripe, а не клієнтами API.',\n stripeWebhookResult: 'Подію отримано',\n errorPluginStripeWebhook400: 'Перевірка підпису не пройшла',\n stripeRest: 'Викликати дозволений метод API Stripe',\n stripeRestResult: 'Результат API Stripe',\n errorPluginStripeRest404: 'API Stripe повернув помилку',\n mcp: 'Надіслати повідомлення MCP JSON-RPC',\n mcpDesc:\n 'Model Context Protocol через Streamable HTTP з JSON-відповідями. Анонімні запити працюють; перелік інструментів залежить від прав користувача. Клієнти з версією протоколу 2025 року мають надсилати `Accept: application/json, text/event-stream`.',\n mcpResult: 'Відповідь JSON-RPC',\n mcpOverrideAccess: 'Пропустити перевірки доступу. Лише для розробки.',\n mcpGet: 'Не підтримується: сервер не відкриває потік подій',\n errorPluginMcpGet405: 'Метод не дозволено, використовуйте POST',\n mcpProtocolVersion: 'Узгоджена версія протоколу MCP, наприклад `2025-06-18`.',\n mcpResult202: 'Прийнято: у тілі були лише сповіщення або відповіді',\n errorPluginMcp404: 'Невідомий метод MCP',\n errorPluginMcp406: 'У заголовку `Accept` немає `application/json` або `text/event-stream`',\n errorPluginMcp413: 'Тіло запиту завелике',\n errorPluginMcp415: '`Content-Type` має бути `application/json`',\n seoTitle: 'Згенерувати мета-заголовок',\n seoDescription: 'Згенерувати мета-опис',\n seoUrl: 'Згенерувати URL попереднього перегляду',\n seoImage: 'Згенерувати мета-зображення',\n seoBody:\n 'Документ, що редагується: `collectionSlug` або `globalSlug`, його `id` і поточні дані `doc`. Передається у вашу функцію генерації.',\n seoResult: 'Згенероване значення. Порожній рядок, якщо функцію генерації не задано.',\n searchReindex: 'Перебудувати пошуковий індекс для вибраних колекцій',\n searchReindexResult: 'Підсумок переіндексації',\n tenantOptions: 'Перелік орендарів, яких може вибрати користувач',\n tenantOptionsResult: 'Варіанти орендарів',\n exportDownload: 'Експортувати документи у файл',\n exportDownloadResult: 'Файл експорту',\n exportPreview: 'Попередній перегляд експорту',\n importPreview: 'Попередній перегляд файлу імпорту',\n previewResult: 'Сторінка документів попереднього перегляду',\n importFileData: 'Вміст файлу в кодуванні base64.',\n r2Upload: 'Завантажити файл у R2 частинами',\n r2UploadDesc:\n 'Три кроки на одному маршруті. Початок: передайте `collection`, `fileName` і `fileType`. Кожна частина: додайте `multipartId`, `multipartKey`, `multipartNumber` і `signedReceipt` та надішліть байти. Завершення: те саме без `multipartNumber`, зі списком частин у JSON.',\n r2UploadResult: 'Завантаження розпочато, частину завантажено або завантаження завершено (ключ об’єкта текстом)',\n errorStorageR2412: 'Файл із цим ключем уже існує',\n\n localizationHeading: 'Локалізація',\n localizationNote:\n 'Доступні локалі: {{locales}}. Передайте `?locale=<code>` до ендпоінта читання, щоб вибрати одну. Передайте `?locale=all`, щоб отримати всі локалі одразу — тоді кожне локалізоване поле повертається як об’єкт із ключами за кодом локалі (напр. `{ \"en\": \"Hello\", \"de\": \"Hallo\" }`) замість одного значення. Встановіть `?flattenLocales=false` разом із `locale=all`, щоб зберегти цю форму об’єкта за локалями. Схеми полів показують форму для однієї локалі.',\n docLanguagesNote:\n 'Ця документація доступна цими мовами: {{languages}}. Додайте `?lang=<code>` до URL цієї специфікації, щоб перемкнути.',\n },\n}\n"],"mappings":"AAEA,MAAa,KAAsC,EACjD,kCAAkC;CAChC,YAAY;CACZ,WAAW;CACX,gBAAgB;CAChB,YAAY;CACZ,YAAY;CACZ,eAAe;CACf,wBAAwB;CACxB,0BAA0B;CAC1B,mBAAmB;CACnB,sBAAsB;CACtB,qBACE;CACF,aAAa;CACb,qBAAqB;CACrB,qBAAqB;CACrB,4BACE;CAEF,cAAc;CACd,gBAAgB;CAChB,aAAa;CACb,aACE;CACF,0BAA0B;CAC1B,iBAAiB;CACjB,yBACE;CACF,0BACE;CAEF,gBAAgB;CAChB,eAAe;CACf,mBAAmB;CACnB,mBAAmB;CACnB,mBAAmB;CACnB,sBAAsB;CACtB,sBAAsB;CACtB,iBAAiB;CACjB,sBAAsB;CACtB,gBACE;CACF,cACE;CAEF,WAAW;CAEX,WAAW;CACX,YAAY;CACZ,QAAQ;CACR,kBAAkB;CAClB,oBAAoB;CACpB,mBAAmB;CACnB,mBAAmB;CACnB,UAAU;CACV,YAAY;CACZ,WAAW;CACX,eACE;CACF,YAAY;CACZ,YAAY;CACZ,cAAc;CAEd,aAAa;CACb,eAAe;CACf,iBAAiB;CACjB,cAAc;CAEd,gBAAgB;CAChB,sBAAsB;CACtB,eAAe;CACf,qBAAqB;CACrB,kBAAkB;CAClB,WAAW;CACX,uBAAuB;CACvB,YAAY;CACZ,wBAAwB;CACxB,WAAW;CAEX,YAAY;CACZ,YACE;CACF,oBAAoB;CACpB,WAAW;CACX,aAAa;CACb,kBAAkB;CAClB,2BAA2B;CAC3B,0BACE;CACF,uBAAuB;CACvB,0BAA0B;CAC1B,mBAAmB;CACnB,oBAAoB;CACpB,eAAe;CACf,qBAAqB;CACrB,eAAe;CACf,mBAAmB;CACnB,qBAAqB;CACrB,kBAAkB;CAClB,wBAAwB;CACxB,SAAS;CACT,aACE;CACF,eAAe;CACf,iBAAiB;CAEjB,UAAU;CACV,UAAU;CACV,UAAU;CACV,UAAU;CACV,UAAU;CAEV,gBACE;CACF,qBACE;CAEF,gBAAgB;CAChB,oBAAoB;CACpB,YAAY;CACZ,gBAAgB;CAChB,WAAW;CACX,eAAe;CACf,SAAS;CACT,aAAa;CACb,SAAS;CACT,YAAY;CACZ,WAAW;CACX,YAAY;CACZ,YAAY;CACZ,gBAAgB;CAChB,gBAAgB;CAChB,gBAAgB;CAChB,gBAAgB;CAChB,gBAAgB;CAChB,gBAAgB;CAChB,kBAAkB;CAClB,qBAAqB;CACrB,qBAAqB;CACrB,oBAAoB;CACpB,oBAAoB;CACpB,qBAAqB;CACrB,qBAAqB;CACrB,yBAAyB;CACzB,mBAAmB;CACnB,0BAA0B;CAC1B,uBAAuB;CACvB,sBACE;CACF,yBAAyB;CACzB,wBAAwB;CACxB,eAAe;CACf,mBACE;CACF,qBAAqB;CACrB,6BAA6B;CAC7B,YAAY;CACZ,kBAAkB;CAClB,0BAA0B;CAC1B,KAAK;CACL,SACE;CACF,WAAW;CACX,mBAAmB;CACnB,QAAQ;CACR,sBAAsB;CACtB,oBAAoB;CACpB,cAAc;CACd,mBAAmB;CACnB,mBAAmB;CACnB,mBAAmB;CACnB,mBAAmB;CACnB,UAAU;CACV,gBAAgB;CAChB,QAAQ;CACR,UAAU;CACV,SACE;CACF,WAAW;CACX,eAAe;CACf,qBAAqB;CACrB,eAAe;CACf,qBAAqB;CACrB,gBAAgB;CAChB,sBAAsB;CACtB,eAAe;CACf,eAAe;CACf,eAAe;CACf,gBAAgB;CAChB,UAAU;CACV,cACE;CACF,gBAAgB;CAChB,mBAAmB;CAEnB,qBAAqB;CACrB,kBACE;CACF,kBACE;AACJ,EACF"}
@@ -67,11 +67,24 @@ const vi = { "@seshuk/payload-plugin-openapi": {
67
67
  uploadPayloadField: "Các trường {{schema}} đã được chuyển thành chuỗi JSON. Ví dụ: `{\"alt\":\"A caption\"}`.",
68
68
  fileServe: "Tệp",
69
69
  filePartial: "Một phần của tệp, cho yêu cầu `Range`",
70
+ paramFileVersion: "Trả về tệp được lưu với ID phiên bản này.",
70
71
  uploadInstructionsSummary: "Lấy hướng dẫn tải tệp lên trước khi lưu tài liệu",
71
72
  uploadInstructionsResult: "Nơi gửi các byte của tệp, và giá trị `file` cần gửi kèm yêu cầu tạo hoặc cập nhật",
72
73
  uploadStagePutSummary: "Gửi các byte của tệp cho một lần tải lên tạm thời",
73
74
  uploadStageDeleteSummary: "Xóa một lần tải lên tạm thời",
74
75
  uploadStageResult: "Xong, không có nội dung",
76
+ paramPreferenceKey: "Khóa của tùy chọn, ví dụ `nav`.",
77
+ preferenceGet: "Lấy một tùy chọn của người dùng hiện tại",
78
+ preferenceGetResult: "Tùy chọn đã lưu, hoặc `value: null` nếu không có",
79
+ preferenceSet: "Lưu một tùy chọn của người dùng hiện tại",
80
+ preferenceSetBody: "Gửi giá trị trong `value`. Body không có `value` sẽ được lưu nguyên vẹn làm giá trị.",
81
+ preferenceSetResult: "Tùy chọn đã lưu",
82
+ preferenceDelete: "Xóa một tùy chọn của người dùng hiện tại",
83
+ preferenceDeleteResult: "Tùy chọn đã xóa",
84
+ reorder: "Di chuyển tài liệu trong danh sách có thể sắp xếp",
85
+ reorderBody: "Di chuyển `docsToMove` ra sau `target` với `newKeyWillBe: \"greater\"`, hoặc ra trước với `\"less\"`. `orderableFieldName` là `_order` với collection có thể sắp xếp, hoặc trường thứ tự của join có thể sắp xếp. Khi không có `target.key`, Payload chỉ gán khóa thứ tự cho các tài liệu chưa có.",
86
+ reorderResult: "Các khóa thứ tự mới, hoặc `message: \"initial migration\"` khi Payload gán khóa thứ tự lần đầu",
87
+ errorReorder400: "Body yêu cầu không hợp lệ; lý do nằm trong `error`",
75
88
  error400: "Lỗi xác thực hoặc lỗi truy vấn (ValidationError, QueryError)",
76
89
  error401: "Chưa được xác thực (AuthenticationError)",
77
90
  error403: "Bị từ chối bởi kiểm soát truy cập (Forbidden, UnverifiedEmail)",
@@ -90,6 +103,67 @@ const vi = { "@seshuk/payload-plugin-openapi": {
90
103
  tagJobs: "Jobs",
91
104
  tagUploads: "Tải lên",
92
105
  tagAccess: "Truy cập",
106
+ tagReorder: "Sắp xếp lại",
107
+ tagPlugins: "Plugin",
108
+ tagPluginsDesc: "Các endpoint do plugin chính thức của Payload thêm vào.",
109
+ errorPlugin400: "Yêu cầu không hợp lệ",
110
+ errorPlugin401: "Chưa xác thực",
111
+ errorPlugin403: "Bị cấm",
112
+ errorPlugin404: "Không tìm thấy",
113
+ errorPlugin500: "Lỗi máy chủ nội bộ",
114
+ ecommerceAddItem: "Thêm sản phẩm vào giỏ hàng",
115
+ ecommerceRemoveItem: "Xóa sản phẩm khỏi giỏ hàng",
116
+ ecommerceUpdateItem: "Đổi số lượng của một sản phẩm trong giỏ",
117
+ ecommerceClearCart: "Xóa mọi sản phẩm khỏi giỏ hàng",
118
+ ecommerceMergeCart: "Gộp giỏ hàng khách vào giỏ hàng này",
119
+ ecommerceCartAccess: "Cho phép chủ giỏ hàng, hoặc giỏ hàng khách có `secret` trong body.",
120
+ ecommerceCartResult: "Giỏ hàng đã cập nhật",
121
+ errorPluginEcommerce404: "Không tìm thấy giỏ hàng hoặc không thể truy cập",
122
+ ecommerceQuantity: "Số lượng mới, hoặc `{ \"$inc\": n }` để thay đổi thêm n.",
123
+ ecommerceInitiatePayment: "Bắt đầu thanh toán bằng `{{method}}`",
124
+ ecommerceConfirmOrder: "Xác nhận thanh toán bằng `{{method}}` và tạo đơn hàng",
125
+ ecommercePaymentBody: "Dùng `cartID` (kèm `secret` với giỏ hàng khách) hoặc giỏ hàng của người dùng. Không có người dùng thì bắt buộc `customerEmail`. Adapter thanh toán có thể cần thêm trường.",
126
+ ecommerceInitiateResult: "Đã bắt đầu thanh toán. Adapter thêm các trường riêng, ví dụ client secret.",
127
+ ecommerceConfirmResult: "Đơn hàng đã được tạo",
128
+ stripeWebhook: "Nhận sự kiện webhook từ Stripe",
129
+ stripeWebhookBody: "Sự kiện Stripe thô, được ký trong header `Stripe-Signature`. Do Stripe gọi, không phải client API.",
130
+ stripeWebhookResult: "Đã nhận sự kiện",
131
+ errorPluginStripeWebhook400: "Kiểm tra chữ ký thất bại",
132
+ stripeRest: "Gọi một phương thức Stripe API được phép",
133
+ stripeRestResult: "Kết quả từ Stripe API",
134
+ errorPluginStripeRest404: "Stripe API trả về lỗi",
135
+ mcp: "Gửi một thông điệp MCP JSON-RPC",
136
+ mcpDesc: "Model Context Protocol qua Streamable HTTP, phản hồi bằng JSON. Yêu cầu ẩn danh vẫn hoạt động; các công cụ được liệt kê tùy theo quyền của người dùng. Client dùng phiên bản giao thức năm 2025 phải gửi `Accept: application/json, text/event-stream`.",
137
+ mcpResult: "Phản hồi JSON-RPC",
138
+ mcpOverrideAccess: "Bỏ qua kiểm tra quyền truy cập. Chỉ dùng khi phát triển.",
139
+ mcpGet: "Không hỗ trợ: máy chủ không mở luồng sự kiện",
140
+ errorPluginMcpGet405: "Phương thức không được phép, hãy dùng POST",
141
+ mcpProtocolVersion: "Phiên bản giao thức MCP đã thỏa thuận, ví dụ `2025-06-18`.",
142
+ mcpResult202: "Đã chấp nhận: body chỉ chứa thông báo hoặc phản hồi",
143
+ errorPluginMcp404: "Phương thức MCP không xác định",
144
+ errorPluginMcp406: "Header `Accept` thiếu `application/json` hoặc `text/event-stream`",
145
+ errorPluginMcp413: "Body của yêu cầu quá lớn",
146
+ errorPluginMcp415: "`Content-Type` phải là `application/json`",
147
+ seoTitle: "Tạo tiêu đề meta",
148
+ seoDescription: "Tạo mô tả meta",
149
+ seoUrl: "Tạo URL xem trước",
150
+ seoImage: "Tạo ảnh meta",
151
+ seoBody: "Tài liệu đang chỉnh sửa: `collectionSlug` hoặc `globalSlug`, `id` của nó và dữ liệu `doc` hiện tại. Được chuyển cho hàm generate của bạn.",
152
+ seoResult: "Giá trị được tạo. Chuỗi rỗng khi chưa đặt hàm generate.",
153
+ searchReindex: "Xây dựng lại chỉ mục tìm kiếm cho một số collection",
154
+ searchReindexResult: "Tóm tắt lập chỉ mục lại",
155
+ tenantOptions: "Liệt kê các tenant mà người dùng có thể chọn",
156
+ tenantOptionsResult: "Tùy chọn tenant",
157
+ exportDownload: "Xuất tài liệu ra tệp",
158
+ exportDownloadResult: "Tệp xuất",
159
+ exportPreview: "Xem trước bản xuất",
160
+ importPreview: "Xem trước tệp nhập",
161
+ previewResult: "Một trang tài liệu xem trước",
162
+ importFileData: "Nội dung tệp, mã hóa base64.",
163
+ r2Upload: "Tải tệp lên R2 theo từng phần",
164
+ r2UploadDesc: "Ba bước trên một route. Bắt đầu: gửi `collection`, `fileName` và `fileType`. Mỗi phần: thêm `multipartId`, `multipartKey`, `multipartNumber` và `signedReceipt`, rồi gửi các byte. Hoàn tất: như trên nhưng không có `multipartNumber`, kèm danh sách JSON các phần.",
165
+ r2UploadResult: "Đã bắt đầu tải lên, đã tải lên một phần hoặc đã hoàn tất (khóa đối tượng dạng văn bản)",
166
+ errorStorageR2412: "Đã có tệp tại khóa này",
93
167
  localizationHeading: "Đa ngôn ngữ",
94
168
  localizationNote: "Các ngôn ngữ khả dụng: {{locales}}. Truyền `?locale=<code>` vào một endpoint đọc để chọn một ngôn ngữ. Truyền `?locale=all` để nhận mọi ngôn ngữ cùng lúc — khi đó mỗi trường đa ngôn ngữ sẽ được trả về dưới dạng một đối tượng có khóa là mã ngôn ngữ (ví dụ `{ \"en\": \"Hello\", \"de\": \"Hallo\" }`) thay vì một giá trị đơn lẻ. Đặt `?flattenLocales=false` cùng với `locale=all` để giữ dạng đối tượng theo từng ngôn ngữ đó. Lược đồ trường hiển thị cấu trúc của một ngôn ngữ đơn lẻ.",
95
169
  docLanguagesNote: "Tài liệu này có sẵn bằng các ngôn ngữ: {{languages}}. Thêm `?lang=<code>` vào URL spec này để chuyển đổi."