@abtnode/blocklet-services 1.17.8-beta-20260106-113136-b3c09e14 → 1.17.8-beta-20260108-120904-21cb5fb6

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 (217) hide show
  1. package/api/util/blocklet-utils.js +9 -4
  2. package/dist/assets/{AdapterDayjs-DafRMFLg.js → AdapterDayjs-C1bdndja.js} +1 -1
  3. package/dist/assets/{Google-DRu937I3.js → Google-BI3aC5vK.js} +1 -1
  4. package/dist/assets/{access-control-cgo5Z15_.js → access-control-BL-PuDiR.js} +1 -1
  5. package/dist/assets/{actions-Dfiiwkit.js → actions-m1acuA78.js} +1 -1
  6. package/dist/assets/{add-component-core-BfzNEcS5.js → add-component-core-BzMN094F.js} +1 -1
  7. package/dist/assets/add-resource-BRF-rYME.js +1 -0
  8. package/dist/assets/{addon-qN24wAb4.js → addon-yDIBSjIk.js} +1 -1
  9. package/dist/assets/{advanced-1Vu6rcXU.js → advanced-DEE0XFtQ.js} +1 -1
  10. package/dist/assets/{aigne-D6MrXXCU.js → aigne-9evgyH7b.js} +1 -1
  11. package/dist/assets/api-B24x7kOD.js +1 -0
  12. package/dist/assets/{appearance-DOQHBg9p.js → appearance-C8B414U2.js} +1 -1
  13. package/dist/assets/{ar-BukCw0OI.js → ar-BHqjWgUQ.js} +2 -2
  14. package/dist/assets/{audit-logs-ISyoqJFp.js → audit-logs-qNutRhHx.js} +1 -1
  15. package/dist/assets/{authorize-B9RLEFal.js → authorize-CZSHuYdu.js} +1 -1
  16. package/dist/assets/{base-chart-DhxjAyBU.js → base-chart-DT--nPCU.js} +1 -1
  17. package/dist/assets/{base32-_D4eWUeh.js → base32-z3esjJBn.js} +1 -1
  18. package/dist/assets/{bind-account-CLIjYy96.js → bind-account-QxLU_sxt.js} +1 -1
  19. package/dist/assets/{branding-iwUveEf5.js → branding-Bk26INk9.js} +1 -1
  20. package/dist/assets/{branding-C81Kt22j.js → branding-_XszRU-Z.js} +1 -1
  21. package/dist/assets/branding-tR0gcoY_.js +1 -0
  22. package/dist/assets/bundle-avatar-2AQWR0ld.js +1 -0
  23. package/dist/assets/button-LwkniwV9.js +1 -0
  24. package/dist/assets/{click-to-copy-CMo42VnK.js → click-to-copy-Dk6ZAJOw.js} +1 -1
  25. package/dist/assets/{omit-CCIQ0Qdi.js → cloneDeep-rgNCMFod.js} +1 -1
  26. package/dist/assets/{collapse-B7gUzFaX.js → collapse-D72lnPa9.js} +1 -1
  27. package/dist/assets/{complete-CJ_buCAS.js → complete-CEvsz8uU.js} +2 -2
  28. package/dist/assets/{component-Dip3v1Iq.js → component-BrZ1DWiw.js} +2 -2
  29. package/dist/assets/{config-D5KnWqfn.js → config-6tpm84_l.js} +1 -1
  30. package/dist/assets/{config-D8XZj8JI.js → config-CwlqBQNt.js} +2 -2
  31. package/dist/assets/config-cdtQwn5t.js +53 -0
  32. package/dist/assets/{config-navigation-Ni0iczgA.js → config-navigation-CZ9V7otK.js} +2 -2
  33. package/dist/assets/{config-space-B6_f52sE.js → config-space-CZRqkXsR.js} +1 -1
  34. package/dist/assets/{confirm-Lb1MrAdS.js → confirm-Ch-CAgUO.js} +1 -1
  35. package/dist/assets/{connect-JAX_oP3o.js → connect-BNkv99fz.js} +1 -1
  36. package/dist/assets/connect-CadBIZOq.js +5 -0
  37. package/dist/assets/connect-i7rkK26L.js +1 -0
  38. package/dist/assets/connect-to-lX3lujSp.js +1 -0
  39. package/dist/assets/{content-layout-DmSBGGVm.js → content-layout-Dtfb5X6M.js} +1 -1
  40. package/dist/assets/{create-passport-svg-5AYzBKFb.js → create-passport-svg-DeDfPZeD.js} +1 -1
  41. package/dist/assets/{createClass-DXYd7BIe.js → createClass-07c4wbGU.js} +1 -1
  42. package/dist/assets/{dashboard-C0l2IWWH.js → dashboard-CmJOnF0g.js} +2 -2
  43. package/dist/assets/{de-Br0tDZam.js → de-QUGQFv2K.js} +1 -1
  44. package/dist/assets/{delete-confirm-tbfLqDBI.js → delete-confirm-DiU5PO2T.js} +1 -1
  45. package/dist/assets/{did-address-CsOJBoiY.js → did-address-Cq16cwTy.js} +1 -1
  46. package/dist/assets/{domain-CnhOsdmM.js → domain-DHqSA0zl.js} +1 -1
  47. package/dist/assets/{domain-action-card-BsdHbhEi.js → domain-action-card-BsNaII7k.js} +2 -2
  48. package/dist/assets/domains-BQ_Of9Oo.js +1 -0
  49. package/dist/assets/{email-Dt_DGuhf.js → email-DXdzQLls.js} +2 -2
  50. package/dist/assets/{empty-spinner-BYDonf35.js → empty-spinner-BClWI15N.js} +1 -1
  51. package/dist/assets/engine-D18zeIE7.js +1 -0
  52. package/dist/assets/{es-D_e0gGgp.js → es-C4w6cL07.js} +2 -2
  53. package/dist/assets/{exchange-passport-DztKvBat.js → exchange-passport-NOgYhNpm.js} +1 -1
  54. package/dist/assets/{form-DoC8uBcB.js → form-DhecYoSJ.js} +3 -3
  55. package/dist/assets/{form-text-input-XjloVwBd.js → form-text-input-BsCymY_c.js} +1 -1
  56. package/dist/assets/{form-wrapper-PT5ZzMQy.js → form-wrapper-pwkkz4we.js} +1 -1
  57. package/dist/assets/{fr-DXizOT4b.js → fr-Bq3UipEu.js} +2 -2
  58. package/dist/assets/{fuel-IaJHNPPW.js → fuel-DgzL5KSX.js} +1 -1
  59. package/dist/assets/{gen-access-key-BJlDqEhI.js → gen-access-key-BxnyhhCR.js} +1 -1
  60. package/dist/assets/{gen-simple-access-key-lyiUw0C-.js → gen-simple-access-key-BJI-4yOF.js} +1 -1
  61. package/dist/assets/get-safe-url-BVTaUfvO.js +1 -0
  62. package/dist/assets/{hi-D2FEb_Tx.js → hi-DGZy0DLh.js} +2 -2
  63. package/dist/assets/{home-Bs_5YPbK.js → home-Bibhtg_U.js} +1 -1
  64. package/dist/assets/{id-Dw9URVwP.js → id-DOzDilAf.js} +2 -2
  65. package/dist/assets/{iframe-Dqu4MSyW.js → iframe-CqiUrjUO.js} +1 -1
  66. package/dist/assets/{index-BDH_LtJL.js → index-0ZSFNH-D.js} +1 -1
  67. package/dist/assets/{index-1HKgA-fz.js → index-BB8sYq-N.js} +1 -1
  68. package/dist/assets/{index-BWDWEkUF.js → index-BSZ3mQac.js} +2 -2
  69. package/dist/assets/{index-Dfx19arA.js → index-BhpNA6ar.js} +1 -1
  70. package/dist/assets/{index-B4YCnemd.js → index-BnOC3Ium.js} +1 -1
  71. package/dist/assets/index-BszSKE9L.js +1 -0
  72. package/dist/assets/{index-vP1T6V7V.js → index-CHkWO9t3.js} +4 -4
  73. package/dist/assets/{index-BsohFwTm.js → index-CaQuyP_U.js} +1 -1
  74. package/dist/assets/{index-DT5AXPVB.js → index-Cdaohlhu.js} +7 -7
  75. package/dist/assets/{index-B10SG1vs.js → index-CdsI3g5U.js} +1 -1
  76. package/dist/assets/index-CsYL8tps.js +1 -0
  77. package/dist/assets/{index-CRAuhYSg.js → index-D-O_eFad.js} +1 -1
  78. package/dist/assets/{index-BNhv-9xy.js → index-D88DUiSg.js} +1 -1
  79. package/dist/assets/{index-TYwJnR0n.js → index-D8NN8LDz.js} +6 -6
  80. package/dist/assets/{index-CQgzjKgB.js → index-DI4CWTXR.js} +106 -106
  81. package/dist/assets/{index-BhhZ8IDZ.js → index-DUnMyyWn.js} +9 -9
  82. package/dist/assets/{index-BSZtxRM0.js → index-D_ckidZn.js} +2 -2
  83. package/dist/assets/{index-B_SjLIbT.js → index-DlifV2p1.js} +5 -5
  84. package/dist/assets/{index-dbYkWwF4.js → index-DzdHYw6g.js} +1 -1
  85. package/dist/assets/{index-Cq6z7yeF.js → index-Ge2WhAk1.js} +4 -4
  86. package/dist/assets/{index-Cp0b8q3A.js → index-KUC3HPt0.js} +1 -1
  87. package/dist/assets/index-POuATgdm.js +1 -0
  88. package/dist/assets/index-TBM4hzrY.js +81 -0
  89. package/dist/assets/{index-DhHvANH8.js → index-WjASWJcO.js} +4 -4
  90. package/dist/assets/{index-DctZHPFL.js → index-fC-FqmP3.js} +1 -1
  91. package/dist/assets/{index-BGhqVqit.js → index-gohmHhDq.js} +1 -1
  92. package/dist/assets/{index-CRZM3CKo.js → index-hBDzzv6I.js} +1 -1
  93. package/dist/assets/{index-BWL6HE0j.js → index-iX-pnOjy.js} +1 -1
  94. package/dist/assets/{index-B7_VUEoc.js → index-jILCQaR3.js} +1 -1
  95. package/dist/assets/{index-B6DWjLJS.js → index-m_xRKGyG.js} +8 -8
  96. package/dist/assets/{index-G6Vk78zE.js → index-mt_AKU_F.js} +2 -2
  97. package/dist/assets/{index-B0Q9wWG1.js → index-oucqu2vy.js} +1 -1
  98. package/dist/assets/{index-B4KKUWng.js → index-u9tqiWy4.js} +1 -1
  99. package/dist/assets/{index-BkePHcyK.js → index-uexcv8C-.js} +7 -7
  100. package/dist/assets/info-outline-rounded-BLwoUxyI.js +1 -0
  101. package/dist/assets/{invitation-CYFN9u5t.js → invitation-DSs7YT3_.js} +4 -4
  102. package/dist/assets/{invitations-jY13RXbI.js → invitations-DK7oD-E6.js} +1 -1
  103. package/dist/assets/{invite-D72FvaiG.js → invite-CdWfDz--.js} +1 -1
  104. package/dist/assets/{isURL-CJRImg0N.js → isURL-DMMDDAKA.js} +1 -1
  105. package/dist/assets/{issue-passport-BfqkJF3W.js → issue-passport-yIqheTA0.js} +1 -1
  106. package/dist/assets/{item-5ZWPft2s.js → item-BV3WfK17.js} +1 -1
  107. package/dist/assets/{ja-DBxpsmGJ.js → ja-DMq-YXDX.js} +2 -2
  108. package/dist/assets/{ko-CCAdSyce.js → ko-BrYbXurh.js} +2 -2
  109. package/dist/assets/{landing-page-DRtId3hN.js → landing-page-BDAr8Hmo.js} +1 -1
  110. package/dist/assets/{launch-result-message-MNpx7ysR.js → launch-result-message-C04PaKk0.js} +1 -1
  111. package/dist/assets/{layout-Be1KH57_.js → layout-DzZv-Jny.js} +1 -1
  112. package/dist/assets/{list-CQtiNSih.js → list-B6eMSw29.js} +1 -1
  113. package/dist/assets/{list-CHI1rCEg.js → list-BWd3aUjb.js} +2 -2
  114. package/dist/assets/{list-header-Cl3jykCe.js → list-header-wJF4c6BN.js} +1 -1
  115. package/dist/assets/localization-oLJXrcTA.js +1 -0
  116. package/dist/assets/{log-BfCFT05M.js → log-BskdQbRf.js} +1 -1
  117. package/dist/assets/logger-DhW79f4a.js +1 -0
  118. package/dist/assets/{login-BtsH3IvI.js → login-CfL0Uf6Y.js} +1 -1
  119. package/dist/assets/{login-oauth-callback-Ds4uYiRr.js → login-oauth-callback-_6XAZMOE.js} +1 -1
  120. package/dist/assets/{logo-uploader-lepUW_D7.js → logo-uploader-D5E5QaRF.js} +1 -1
  121. package/dist/assets/{lost-passport-BtN3h1ya.js → lost-passport-CUtEI06a.js} +1 -1
  122. package/dist/assets/omit-BeaKJrg9.js +1 -0
  123. package/dist/assets/{open-window-CNt8gsrN.js → open-window-Bi6zVDJd.js} +1 -1
  124. package/dist/assets/{over-due-invoice-payment-7TbnqqKX.js → over-due-invoice-payment-B7FQEnNH.js} +1 -1
  125. package/dist/assets/{overview-Be3tncsL.js → overview-C7QghcRT.js} +1 -1
  126. package/dist/assets/{page-header-CHAwrgX-.js → page-header-BZv-tfgN.js} +1 -1
  127. package/dist/assets/passport-B_eTMTmZ.js +1 -0
  128. package/dist/assets/{passport-item-Bhbm8_m6.js → passport-item-D53yZ-cF.js} +1 -1
  129. package/dist/assets/{permission-BHvrn0M5.js → permission-DC8i_y8F.js} +1 -1
  130. package/dist/assets/preferences-DzDUGj-O.js +1 -0
  131. package/dist/assets/profile-embed-B3QUDkbU.js +1 -0
  132. package/dist/assets/{provider-icon-DQY2_LaP.js → provider-icon-D15U0Izg.js} +1 -1
  133. package/dist/assets/{pt-CrMGrBZ6.js → pt-Dl6732JN.js} +2 -2
  134. package/dist/assets/publish-resource-DCIlLUPS.js +1 -0
  135. package/dist/assets/{react-beautiful-dnd.esm-D0JKrMDl.js → react-beautiful-dnd.esm-BwIgGfYj.js} +1 -1
  136. package/dist/assets/{react-stripe.esm-CVZErl8X.js → react-stripe.esm-5Snjx_mn.js} +1 -1
  137. package/dist/assets/{required-BQln5OcV.js → required-DHjZE3-Y.js} +1 -1
  138. package/dist/assets/{ru-up3R57Pv.js → ru-CVUeN9AX.js} +2 -2
  139. package/dist/assets/{runtime-npJC4gp_.js → runtime-BHekBabT.js} +1 -1
  140. package/dist/assets/{sanitize-C-shWbtD.js → sanitize-yX1j-ggS.js} +1 -1
  141. package/dist/assets/sdk-CJUhxOGJ.js +1 -0
  142. package/dist/assets/{section-jXB9AxBb.js → section-CenHBXqj.js} +1 -1
  143. package/dist/assets/{security-nSKpCl8B.js → security-BMslI5IZ.js} +3 -3
  144. package/dist/assets/{session-C2ZBRIpv.js → session-CZpDtsCZ.js} +1 -1
  145. package/dist/assets/{setup-krkSJpAg.js → setup-CCvGdFDO.js} +1 -1
  146. package/dist/assets/{shorten-label-C4py9TLA.js → shorten-label-DXFyDHDr.js} +1 -1
  147. package/dist/assets/{simple-select-i16Vwzvl.js → simple-select-DtCsUIHR.js} +1 -1
  148. package/dist/assets/{spaces-BdZ_Rv3s.js → spaces-D3H6AchN.js} +1 -1
  149. package/dist/assets/{start-y3zrboBQ.js → start-SeWUP0mo.js} +4 -4
  150. package/dist/assets/{starting-progress-DI-J-VlX.js → starting-progress-Y3UjFmoX.js} +1 -1
  151. package/dist/assets/{status-B8pB_mTB.js → status-MSXp_buG.js} +1 -1
  152. package/dist/assets/{step-actions-B1ufIDaK.js → step-actions-BNFJWVZI.js} +1 -1
  153. package/dist/assets/{studio-1jwq0HOw.js → studio-CRjDRBty.js} +1 -1
  154. package/dist/assets/{switch-CetbUrYR.js → switch-C49IloVU.js} +1 -1
  155. package/dist/assets/{switch-control-_85hc9FG.js → switch-control-npfWE_aC.js} +1 -1
  156. package/dist/assets/{table-tips-CMt22HEy.js → table-tips-DMrnJF8e.js} +1 -1
  157. package/dist/assets/{team-DDjNXwXE.js → team-YWd-FRKh.js} +8 -8
  158. package/dist/assets/{th-DdNj2Ao6.js → th-32eBNQes.js} +2 -2
  159. package/dist/assets/{traffic-mcbpWOFq.js → traffic-0IuWlrAD.js} +1 -1
  160. package/dist/assets/{transfer-C66c3bWd.js → transfer-DRS2VUAN.js} +1 -1
  161. package/dist/assets/{unsubscribe-Cvz0OKhq.js → unsubscribe-xDow2Z6m.js} +1 -1
  162. package/dist/assets/{use-app-logo-BuyF983S.js → use-app-logo-hIHAHSSI.js} +1 -1
  163. package/dist/assets/{use-mobile-BINJTzMb.js → use-mobile-Bz2ML4Gk.js} +1 -1
  164. package/dist/assets/{use-mobile-D5clNlrm.js → use-mobile-_vjPRYx2.js} +1 -1
  165. package/dist/assets/{use-server-logo-Pbr_UuiI.js → use-server-logo-Da86xnyt.js} +1 -1
  166. package/dist/assets/{use-window-close-B16QghYq.js → use-window-close-DUJmRIjM.js} +1 -1
  167. package/dist/assets/{useAsync-BVTh1KYj.js → useAsync-D0xh4Var.js} +1 -1
  168. package/dist/assets/{useAsync-ZGLJQow7.js → useAsync-D6IP8T2e.js} +1 -1
  169. package/dist/assets/{useAsyncRetry-BMmRgSGm.js → useAsyncRetry-B_bXUXWM.js} +1 -1
  170. package/dist/assets/{useLocalStorage-De-EuH_M.js → useLocalStorage-Brr2PSz9.js} +1 -1
  171. package/dist/assets/{user-center-DQSoqc_z.js → user-center-COnqQuqE.js} +6 -6
  172. package/dist/assets/{user-follower-TTyja_sV.js → user-follower-DVX8m-Zk.js} +1 -1
  173. package/dist/assets/{util-Ff3hwYmy.js → util-Dee1Ybp3.js} +1 -1
  174. package/dist/assets/{util-DuMKfKo8.js → util-GXkeqbBQ.js} +1 -1
  175. package/dist/assets/{vendor-arcblock-Cnwtqa7s.js → vendor-arcblock-BCP2x3BR.js} +1 -1
  176. package/dist/assets/{vendor-hooks-BQWlJm53.js → vendor-hooks-DQAdyHrE.js} +1 -1
  177. package/dist/assets/{vendor-mui-core-DnR6WYuU.js → vendor-mui-core-CKKG_1TN.js} +2 -2
  178. package/dist/assets/{vendor-mui-x-CQc01l4r.js → vendor-mui-x-DHGvg6Bj.js} +1 -1
  179. package/dist/assets/{vendor-utils-DCMKu06e.js → vendor-utils-CUs2ebe7.js} +17 -17
  180. package/dist/assets/{vendor-ux-B0gV9NvH.js → vendor-ux-DjXlxcvL.js} +115 -115
  181. package/dist/assets/{vi-HNh41Xxk.js → vi-DF8IinAc.js} +2 -2
  182. package/dist/assets/{wait-connect-CRZmfXOA.js → wait-connect-CLe9IfYi.js} +1 -1
  183. package/dist/assets/{wizard-B41kI39b.js → wizard-8Tk0iyxY.js} +1 -1
  184. package/dist/assets/wizard-components-C10frai0.js +52 -0
  185. package/dist/assets/wrap-locale-CxYp8fAf.js +1 -0
  186. package/dist/assets/{zh-BmX_fuoi.js → zh-BRjrClew.js} +1 -1
  187. package/dist/assets/{zh-MM5bvwO_.js → zh-ByJkLAV1.js} +2 -2
  188. package/dist/assets/{zh-tw-Dr5DyPwA.js → zh-tw-34G9tsUP.js} +2 -2
  189. package/dist/index.html +1 -1
  190. package/package.json +44 -44
  191. package/dist/assets/add-resource-CYRgZ1ps.js +0 -1
  192. package/dist/assets/api-DwxIBXZs.js +0 -1
  193. package/dist/assets/branding-myiZl37D.js +0 -1
  194. package/dist/assets/bundle-avatar-Cc_6nw01.js +0 -1
  195. package/dist/assets/button-D-lyR9BW.js +0 -1
  196. package/dist/assets/cloneDeep-BY8zW7hH.js +0 -1
  197. package/dist/assets/config-44sI5I0w.js +0 -53
  198. package/dist/assets/connect-0OZVqJvc.js +0 -1
  199. package/dist/assets/connect-B9GQZEi7.js +0 -5
  200. package/dist/assets/connect-to-Djgj6TLg.js +0 -1
  201. package/dist/assets/domains-DRP2VSvO.js +0 -1
  202. package/dist/assets/engine-BXGX_w-S.js +0 -1
  203. package/dist/assets/get-safe-url-BiNPujaX.js +0 -1
  204. package/dist/assets/index-B9LF8Bep.js +0 -1
  205. package/dist/assets/index-BmXPp3DU.js +0 -1
  206. package/dist/assets/index-CI_uwh_J.js +0 -81
  207. package/dist/assets/index-CbiyJRV7.js +0 -1
  208. package/dist/assets/info-outline-rounded-BIwvgXCK.js +0 -1
  209. package/dist/assets/localization-CKE-bHgd.js +0 -1
  210. package/dist/assets/logger-DU7baop2.js +0 -1
  211. package/dist/assets/passport-CkJ4B4CG.js +0 -1
  212. package/dist/assets/preferences-TFWtUYLy.js +0 -1
  213. package/dist/assets/profile-embed-B9f9hlSS.js +0 -1
  214. package/dist/assets/publish-resource-CyvkVMG_.js +0 -1
  215. package/dist/assets/sdk-CoWDgSLO.js +0 -1
  216. package/dist/assets/wizard-components-Bn72hVOe.js +0 -52
  217. package/dist/assets/wrap-locale-CF46rj6q.js +0 -1
@@ -1,5 +1,5 @@
1
- const e={setup:{connect:{title:"ตั้งค่าเซิร์ฟเวอร์ Blocklet",scan:"ใช้เมธอดต่อไปนี้เพื่อเป็นเจ้าของเซิร์ฟเวอร์นี้",confirm:"โปรดตรวจสอบการดำเนินงานนี้ในกระเป๋าเงินดิจิทัลของคุณ",success:"บัญชีของคุณเชื่อมต่อกับเซิร์ฟเวอร์นี้"},keyPair:{title:"ดึง KeyPair",scan:"เชื่อมต่อกระเป๋าเงินดิจิตอลของคุณเพื่อสร้างคีย์เพื่อแอปพลิเคชันนี้",confirm:"ตรวจสอบการดำเนินการนี้ในกระเป๋าเงินดิจิตอลของคุณ",success:"คีย์เป็นของคุณถูกจัดเก็บไว้ในที่ปลอดภัย"},verify:{title:"ต้องการใบรับรองการเป็นเจ้าของ",scan:"เชื่อมต่อกระเป๋าเงิน DID เพื่อให้บัตรประจำตัวเป็นของคุณ",confirm:"ตรวจสอบการทำงานนี้ในกระเป๋าเงิน DID ของคุณ",success:"บัญชีของคุณเชื่อมต่อกับเซิร์ฟเวอร์นี้"},accept:{title:"ยอมรับใบรับรองการเป็นเจ้าของเซิร์ฟเวอร์",scan:"เชื่อมต่อกระเป๋าเงินดิจิทัล DID เพื่อให้ได้รับข้อมูลการรับรองสิทธิ์การเป็นเจ้าของ",confirm:"ตรวจสอบการดำเนินการนี้ในกระเป๋าเงินดิจิตอลของคุณ",success:"บัญชีของคุณเชื่อมต่อกับเซิร์ฟเวอร์นี้"},title:"ติดตั้งเซิร์ฟเวอร์ Blocklet",steps:{eula:"ข้อตกลงในการใช้งานสำหรับผู้ใช้งานปลาย",eulaFooter:"ฉันได้อ่านและยอมรับข้อกำหนดของ EULA",connect:"เชื่อมต่อกระเป๋าเงินเจ้าของ DID",verify:"ตรวจสอบการถือครอง",basicSettings:"การตั้งค่าพื้นฐาน",launchApp:"เปิดแอปพลิเคชัน",complete:"สมบูรณ์"},congratulation:"ขอแสดงความยินดี! เซิร์ฟเวอร์ Blocklet ของคุณปลอดภัยและพร้อมใช้งาน",redirectButton:"พาฉันไปสู่แดชบอร์ด!"},login:{loginTo:"เชื่อมต่อกับ",description:"เฉพาะเจ้าของเซิร์ฟเวอร์และสมาชิกที่ได้รับการอนุมัติเท่านั้นที่สามารถเข้าถึงแดชบอร์ดได้",switchDid:{title:"เปลี่ยนบัญชี",scan:"ใช้เมธอดต่อไปนี้เพื่อเพิ่มบัญชี",confirm:"ยืนยันการสลับในกระเป๋าเงินดิจิทัล",success:"สลับเรียบร้อยแล้ว"},switchSpecifiedDid:{title:"เปลี่ยนบัญชี",scan:"คุณต้องสลับ DID เป็น {did} เพื่อดำเนินการต่อไป",confirm:"ยืนยันการสลับในกระเป๋าเงิน DID ของคุณ",success:"สลับสำเร็จ"},connect:{title:"เชื่อมต่อ",scan:"เฉพาะเจ้าของเซิร์ฟเวอร์และสมาชิกที่ได้รับอนุมัติเท่านั้นที่สามารถเข้าถึงแดชบอร์ดได้",confirm:"ยืนยันในบัญชีของคุณ",success:"คุณเชื่อมต่อสำเร็จแล้ว"},verify:{title:"ยืนยันการเข้าถึง",scan:"เชื่อมต่อกระเป๋าเงิน DID ของคุณกับเจ้าของหรือผู้ดูแลปัจจุบัน",confirm:"ยืนยันในบัญชีของคุณ",success:"การเข้าถึงของคุณได้รับการยืนยันแล้ว",abort:"ยกเลิกการตรวจสอบการเข้าถึง",description:"คุณต้องแสดงหนังสือเดินทาง {roles} เพื่อดำเนินการนี้ คุณจะถูกขอให้ยืนยันอีกครั้งหลังจากไม่ใช้งาน 1 ชั่วโมง.",descriptionForDestroy:"คุณจำเป็นต้องให้หนังสือเดินทาง {roles} เพื่อดำเนินการอันตรายนี้เพื่อให้แน่ใจว่าปลอดภัย."},login:"เชื่อมต่อ",termsOfUse:"ข้อกำหนดการใช้งาน",agreeTermsOfUse:"ข้าพเจ้ารับทราบและยินยอมต่อข้อกำหนดที่เกี่ยวข้อง"},acceptServer:{title:"เรียกร้องเซิร์ฟเวอร์ด้วย NFT เจ้าของ",tooltip:"หากคุณได้รับสิทธิ์ในการครอบครองเซิร์ฟเวอร์ NFT คุณสามารถเรียกร้องหนังสือเดินทางเจ้าของของคุณได้ด้วยลิงก์นี้"},exchangePassport:{title:"แลกเปลี่ยนหนังสือเดินทางด้วย NFT",success:"คุณได้แลกเปลี่ยนหนังสือเดินทางของคุณและลงชื่อเข้าใช้ด้วยหนังสือเดินทาง",login:"เข้าสู่ระบบ",dialog:{title:"รับพาสปอร์ตด้วย NFT",scan:"เชื่อมต่อกระเป๋าเงิน DID เพื่อนำ NFT ของคุณเสนอตัวและรับหนังสือเดินทาง",confirm:"เลือก NFT ในกระเป๋าเงิน DID ของคุณ",success:"การแลกเปลี่ยนหนังสือเดินทางเสร็จสมบูรณ์"},tooltip1:"ถ้าคุณมี NFT จากคอลเลกชันนี้,",tooltip2:"คุณสามารถแลกเปลี่ยนหนังสือเดินทางของคุณได้ที่ลิงก์นี้"},payablePassport:{title:"ซื้อหนังสือเดินทางด้วยการชำระเงิน",tooltip:"หากคุณไม่มีหนังสือเดินทางคุณสามารถซื้อหนังสือเดินทางได้ที่ลิงก์นี้."},sidebar:{dashboard:"แดชบอร์ด",blocklets:"Blocklets",console:"คอนโซล",settings:"การตั้งค่า"},system:{total:"ทั้งหมด",used:"ใช้แล้ว",free:"ฟรี",cores:"จำนวนของคอร์",instances:"จำนวนของ instance"},common:{invalid:"ไม่ถูกต้อง",about:"เกี่ยวกับ",access:"เข้าถึง",accessKey:"คีย์การเข้าถึง",action:"การกระทำ",actions:"การดำเนินการ",add:"เพิ่ม",address:"ที่อยู่",afterTime:"หลังจาก {time}",allow:"อนุญาต",alreadyExist:"มีอยู่แล้ว",approve:"อนุมัติ",approved:"ได้รับการอนุมัติ",appUrl:"URL แอปพลิเคชัน",auditLogs:"ตรวจสอบแม่แบบ",author:"ผู้เขียน",avatar:"อวตาร",back:"กลับ",basic:"พื้นฐาน",basicInfo:"ข้อมูลพื้นฐาน",profile:"โปรไฟล์",bind:"ผูกติด",blocklet:"บล็อกเล็ต",blocklets:"Blocklets",blockletsStorage:"การเก็บบล็อกเล็ต",cacheStorage:"การจัดเก็บแคช",cancel:"ยกเลิก",certificate:"ใบรับรอง",category:"หัวข้อบันทึกเข้า",click:"คลิกเพื่อคัดลอก",close:"ปิด",selectAll:"ตรวจสอบทั้งหมด",unselectAll:"ยกเลิกการตรวจสอบทั้งหมด",collapseAll:"ยุบทั้งหมด",community:"URL ชุมชน",complete:"เสร็จสิ้น",componentBasicInfo:"ข้อมูลพื้นฐานขององค์ประกอบ",components:"ผู้จัดการ Blocklet",config:"กำหนดค่า",configuration:"การกำหนดค่า",appearance:"ลักษณะ",configNavigation:"การนำทาง",configSuccess:"กำหนดค่าเรียบร้อยแล้ว",confirm:"ยืนยัน",connect:"เชื่อมต่อ",console:"คอนโซล",continue:"ดำเนินการต่อ",continueWith:"ดำเนินการต่อด้วย",copiedTip:"คัดลอกแล้ว",copyAndClose:"คัดลอกและปิด",copyTip:"คลิกเพื่อคัดลอก",coreStorage:"การเก็บรักษาหลัก",cpu:"CPU",create:"สร้าง",createSuccess:"สร้างคีย์การเข้าถึง",created:"สร้างเมื่อ",createdAt:"สร้างเมื่อ",createdBy:"สร้างโดย",dAddress:"ตัวระบุที่แบ่งกันออกตามกฎหมาย (DID)",dataStorage:"การจัดเก็บข้อมูลบนดิสก์ในเครื่อง",delConfirm:"ลบ",delConfirmDescription:"ยืนยันการลบ {data}?",delete:"ลบ",dependents:"ผู้อยู่ในพันธบัตร",description:"คำอธิบาย",detail:"รายละเอียด",did:"DID",disk:"ดิสก์",diskInfo:"ข้อมูลดิสก์",docker:"Docker หรือไม่",documentation:"เอกสาร",domain:"โดเมน",downgradeTo:"การลดรุ่นเป็น {name}",download:"ดาวน์โหลด",downloading:"กำลังดาวน์โหลด",edit:"แก้ไข",email:"อีเมลล์",phone:"โทรศัพท์",empty:"ว่างเปล่า",emptyData:"ไม่พบผลลัพธ์",enable:"เปิดใช้",engine:"เครื่องยนต์",env:"สภาพแวดล้อม",environment:"สภาพแวดล้อม",expandAll:"ขยายทั้งหมด",expired:"หมดอายุ",expires:"หมดอายุ",export:"ส่งออก",externalIp:"IP ภายนอก",failed:"ไม่สำเร็จ",filter:"ตัวกรองล็อก",fingerprint:"ลายนิ้วมือ",finish:"เสร็จสิ้น",forbid:"ห้าม",free:"ฟรี",general:"ทั่วไป",gitpod:"Gitpodคืออะไร",goEULA:'คลิกเพื่อดู "ข้อตกลงการใช้งานสิทธิ์ของผู้ใช้สุดท้าย"',group:"กลุ่ม",image:"นี่เป็นรูปภาพ",install:"ติดตั้ง",installed:"ติดตั้งแล้ว",installedAt:"ติดตั้งที่",installSuccess:"ติดตั้งเสร็จสมบูรณ์",installing:"กำลังติดตั้ง",internalIp:"IP ภายใน",introduction:"การแนะนำ",invite:"เชิญ",inviting:"เชิญ",ip:"ไอพี",isPublic:"สาธารณะ",issue:"ปัญหา",issuer:"ผู้ออก",item:"รายการ",joined:"เข้าร่วม",key:"กุญแจ",releases:"การเผยแพร่",lastPublishedAt:"เผยแพร่เมื่อ",launcher:"ข้อมูลของลอนเชอร์",leavePageTip:"คุณแน่ใจหรือว่าต้องการออกจากหน้านี้หรือไม่?",link:"ลิงก์",loading:"กำลังโหลด",log:"ดูบันทึก",logStorage:"การจัดเก็บบันทึกการเข้าถึง",login:"เข้าสู่ระบบ",logo:"โลโก้",logout:"ออกจากระบบ",logs:"บันทึก",manageTeam:"การจัดการทีม",marketplace:"ตลาด",member:"สมาชิก",members:"สมาชิก",memory:"ความจำ",meta:"ข้อมูลเมต้า",analytics:"การวิเคราะห์ข้อมูล",runtime:"เวลารัน",traffic:"การจราจร",more:"มากกว่า",mountPoint:"จุด Mount",name:"ชื่อ",next:"ถัดไป",no:"ไม่",noData:"ไม่มีระเบียนที่จะแสดง",notice:"สิ่งเลวร้ายที่ไม่คาดคิดจะเกิดขึ้นหากคุณไม่อ่านสิ่งนี้!",noticeTitle:"ประกาศ",notification:"การแจ้งเตือน",open:"เปิด",management:"การจัดการ",os:"ระบบปฏิบัติการ",overview:"ภาพรวม",owner:"เจ้าของ",page404:"หน้า 404",passport:"หนังสือเดินทาง",permission:"การอนุญาต",port:"Port",pre:"ก่อนหน้านี้",preferences:"การตั้งค่า",preview:"ดูตัวอย่าง",protected:"ป้องกัน",protocol:"โปรโตคอล",purchase:"การซื้อ",readMore:"มากขึ้น",redirect:"เปลี่ยนเส้นทาง",redirectCode:"รหัสเปลี่ยนเส้นทาง",redirectPermanently:"เปลี่ยนเส้นทางอย่างถาวร",redirectTemporary:"เปลี่ยนเส้นทางชั่วคราว",redirectUrl:"URL ส่งต่อ",rewrite:"เขียนซ้ำ",release:"ปล่อย",rewriteUrl:"เขียน URL ใหม่",reject:"ปฏิเสธ",reload:"เรียกใหม่",remark:"หมายเหตุ",remove:"ลบ",removeSuccess:"ลบสำเร็จ",renew:"ต่ออายุ",reportIssue:"รายงานปัญหา",required:"จำเป็น",requiredErrorText:"ต้องใช้ {name}",resource:"ทรัพยากร",restart:"เริ่มใหม่",restore:"กู้คืน",retry:"ลองอีกครั้ง",revoke:"เพิกถอน",role:"บทบาท",running:"กำลังวิ่ง",runtimeInfo:"ข้อมูลสถานะการทำงาน",save:"บันทึก",saveChanges:"บันทึกการเปลี่ยนแปลง",saveSuccess:"บันทึกสำเร็จ",scheduleFailed:"การตั้งตารางล้มเหลว",scheduleSuccess:"ตั้งเวลาเรียบร้อยแล้ว",scope:"ขอบเขต",screenshot:"ภาพหน้าจอ",search:"ค้นหา",security:"ความปลอดภัย",serverDid:"เซิร์ฟเวอร์ DID",serverVersion:"เวอร์ชันเซิร์ฟเวอร์",setting:"การตั้งค่า",start:"เริ่ม",status:"สถานะ",stop:"หยุด",storage:"การเก็บข้อมูล",backup:"การสำรองข้อมูล",store:"ร้านค้า",succeeded:"ประสบความสำเร็จ",subscription:"การสมัครสมาชิก",support:"การสนับสนุน: URL หรืออีเมล",switch:"สลับ",team:"ทีม",the:"O",timeAgo:"{time} ที่ผ่านมา",title:"หัวข้อ",type:"ประเภท",unavailable:"ไม่สามารถใช้งานได้",update:"อัปเดต",updateAvailable:"มีเวอร์ชันใหม่ {version} ที่ใช้ได้",updatedAt:"อัปเดตเมื่อ",updatedBy:"อัพเดทโดย",upgrade:"อัพเกรด",upgradeTo:"อัปเกรดไปยัง",upgrading:"การอัพเกรด",uptime:"เวลาทำงาน",url:"URL",valid:"ถูกต้อง",value:"ค่าเงิน",version:"เวอร์ชัน",visit:"เยี่ยมชม",waiting:"กำลังรออยู่",webhook:"การผสานรวม",yes:"ใช่",invalidParam:"พารามิเตอร์ไม่ถูกต้อง",launch:"เปิดเผย",price:"ราคา",redirecting:"กำลังเปลี่ยนเส้นทาง",error:"ข้อผิดพลาด",reminder:"การเตือนให้รู้เพิ่มเติม",normal:"ปกติ",gateway:"เกตเวย์",verifyNFT:"ตรวจสอบ NFT",errorMessage:"ข้อผิดพลาด:",slugifyHint:"จุดติดตั้งจริงจะเป็น: {value}",strategy:"กลยุทธ์",auto:"รถยนต์",manual:"คู่มือ",progress:"กำลังดำเนินการ",startTime:"เวลาเริ่มต้น",endTime:"เวลาสิ้นสุด",timeoutError:"ข้อผิดพลาดเวลาหมด",tags:"แท็ก",connectToStore:"เชื่อมต่อกับร้านค้า",uploaded:"อัปโหลดแล้ว",upload:"อัปโหลด",blockletStudio:"สตูดิโอ",visitStore:"เยี่ยมชมร้านค้า",reconnect:"เชื่อมต่อใหม่",change:"เปลี่ยนแปลง",disconnect:"ตัดการเชื่อมต่อ",sourceApp:"เป็นของแอป",visitTarget:"เข้าชม {name}",upgradeServer:"อัปเกรด Server",display:"แสดง",requiredInputPlaceholder:"กรุณากรอก {name}",refresh:"รีเฟรช",moveUp:"เลื่อนขึ้น",moveDown:"เลื่อนลง",enabled:"เปิดใช้แล้ว",disabled:"ปิดใช้งาน",homepage:"หน้าหลัก",buy:"ซื้อ",view:"ดู",homepageTip:"หน้าแรกหรือ URL การสาธิตสด",repository:"ที่เก็บข้อมูล",expand:"ขยาย",collapse:"ยุบ",all:"ทั้งหมด",notificationRecords:"การแจ้งเตือน",unrecordedUser:"ชื่อที่ไม่ได้บันทึก",unrecordedRole:"บทบาทที่ไม่ได้บันทึก",auditLogsSearch:"ค้นหาตามการดำเนินการหรือเนื้อหา",optional:"ไม่บังคับ",bugOrConnectDomain:"ซื้อหรือเชื่อมต่อโดเมนที่มีอยู่",bugOrConnectDomainTip:"โดเมนเนมคือที่อยู่เฉพาะของเว็บไซต์ของคุณบนอินเทอร์เน็ต คุณสามารถซื้อโดเมนใหม่จาก DID Names หรือผู้ให้บริการจดทะเบียนโดเมนรายใดก็ได้ หรือตั้งค่าโดเมนที่มีอยู่แล้วของคุณ",connectExistingDomain:"เชื่อมต่อโดเมนที่มีอยู่",domains:"โดเมน",didDomains:"โดเมน DID",manualDomains:"โดเมนของฉัน",didDomainsDescription:"โดเมนต่อไปนี้ได้รับการจัดการโดยอัตโนมัติโดยบริการ DID:Names",systemDomains:"จัดสรรโดยระบบ",systemDomainsDescription:"โดเมนต่อไปนี้ถูกกำหนดโดยอัตโนมัติตามค่าเริ่มต้น แม้ว่าจะสามารถเข้าถึงได้ แต่ก็ไม่ได้มีไว้สำหรับการใช้งานจริง และไม่ควรแชร์กับลูกค้า โดเมนเหล่านี้ส่วนใหญ่ใช้เพื่อการพัฒนา",manualDomainsDescription:"โดเมนต่อไปนี้ถูกจัดการโดยผู้ให้บริการโดเมนของคุณและได้รับการกำหนดค่าด้วยตนเองเพื่อชี้ไปที่นี่",fileCount:"จำนวนไฟล์",fileSize:"ขนาดไฟล์",time:"เวลา",less:"น้อยกว่า",timeInfo:"เวลา",operator:"Operator",inviter:"ผู้เชิญ",clear:"ล้าง",ok:"ตกลง",minutes:"นาที",hours:"ชั่วโมง",hour:"ชั่วโมง",days:"วัน",day:"วัน",weeks:"สัปดาห์",months:"เดือน",custom:"กำหนดเอง",environments:"สภาพแวดล้อม",sites:"เว็บไซต์",active:"ใช้งานอยู่",backupTime:"เวลาสำรองข้อมูล",lastUsedAt:"ครั้งล่าสุดที่ใช้งาน",expiredAt:"วันหมดอายุ",createdVia:"สร้างผ่าน",neverExpired:"ไม่เคย",baseInfo:"ข้อมูลพื้นฐาน",otherInfo:"ข้อมูลอื่นๆ",lightMode:"โหมดสว่าง",darkMode:"โหมดมืด",globalSettings:"การตั้งค่าทั่วไป",document:"เอกสาร",mcpServers:"เซิร์ฟเวอร์ MCP",generate:"สร้าง",copy:"คัดลอก",copied:"คัดลอกแล้ว",orgs:"องค์กร",userSessions:"เซสชันผู้ใช้",duplicate:"ทำซ้ำ",oauth:"แอป OAuth",poweredBy:"ขับเคลื่อนโดย {brand}",theme:"ธีม",issued:"ออกแล้ว",runTest:"ทดสอบ",saveFailed:"保存ไม่สำเร็จ",policies:"นโยบาย"},blocklet:{external:"ภายนอก",notFound:"ไม่พบ Blocklet บนเซิร์ฟเวอร์นี้, อาจถูกลบแล้ว",installFromMarket:"ติดตั้งบล็อกเล็ตใหม่",installFromUrl:"ติดตั้งจาก URL",installFromCreate:"สร้างบล็อกเล็ต",installFromDiskBackup:"กู้คืนจากเซิร์ฟเวอร์นี้",installedAt:"ติดตั้งที่",internal:"ภายใน",startedAt:"เริ่มที่",stoppedAt:"หยุดที่",urlEmptyTip:"URL ไม่สามารถเข้าถึงได้",goToAddRule:"ไปที่เพิ่ม",services:"บริการที่เปิดเผย",upstreamPort:"พอร์ตออปสตรีม",noService:"ไม่มีบริการ",appId:"App DID",appPid:"DID ถาวร",alsoKnownAs:"ที่เรียกว่า",skSource:"กระเป๋าเจ้าของ",reloadSuccess:"โหลดบล็อกเล็ตเรียบร้อยแล้ว",statusTip:"Blocklet คือ {status}",initialUptime:"น้อยกว่า 1m",dashboard:"แดชบอร์ด Blocklet",noComponent:"แอปพลิเคชันไม่มีส่วนประกอบและไม่สามารถเริ่มต้นได้",fromUrl:{title:"ติดตั้ง Blocklet",label:"URL Meta Blocklet",description:"URL ควรชี้ไปที่ไฟล์เมต้าของบล็อกเล็ต หากคุณต้องการอ้างอิงไปยังไฟล์ในเครื่อง โปรดเพิ่มคำนำหน้า file:// ตัวอย่างเช่น file:///Users/foo/blocklet.json",confirm:"ติดตั้ง",step0:"URL เข้าระบบ",step1:"ยืนยันข้อมูล Meta",existTipPrefix:"มี Blocklet ที่มี DID เดียวกันอยู่แล้ว รุ่นที่ใช้คือ {version}",existTipSuffix:"โปรดติดตั้งเวอร์ชันที่สูงกว่า"},action:{stopDescription:"การหยุด blocklet จะทำให้อินเตอร์เฟซสาธารณะของมันไม่สามารถเข้าถึงได้ ซึ่งอาจทำให้ผู้ใช้สิ้นสุดล้มเหลว",stopComponentDescription:"การหยุดการทำงานขององค์ประกอบจะทำให้อินเตอร์เฟซสาธารณะของมันไม่สามารถเข้าถึงได้ ซึ่งอาจทำให้ผู้ใช้สิ้นเปลือง",confirmStop:"ใช่, หยุด",cancelDownloadDescription:"ยกเลิกการดาวน์โหลด {name}?",removeApplicationDescription:"การลบแอปพลิเคชันจะลบโค้ดและข้อมูลที่สร้างขึ้นโดยแอปพลิเคชันนี้ที่ไม่สามารถกู้คืนได้หากคุณไม่มีการสำรองข้อมูลใด ๆ",removeApplicationAfterBackup:"สำรองข้อมูลและลบแอปพลิเคชัน คุณสามารถกู้คืนแอปพลิเคชันจากเซิร์ฟเวอร์นี้ได้หากคุณต้องการ",removeApplicationComplete:"ลบทั้งรหัสและข้อมูลสำหรับแอปพลิเคชันนี้",removeComponentDescription:"การลบส่วนประกอบจะลบรหัสและข้อมูลที่ได้รับการสร้างโดยส่วนประกอบนี้ออก ซึ่งไม่สามารถกู้คืนได้หากคุณไม่มีการสำรองข้อมูลใดๆ",removeComponentKeepData:"เก็บข้อมูลสำหรับคอมโพเนนต์นี้ แต่เพียงเอาโค้ดออกเท่านั้น",removeComponentComplete:"เอาทั้งรหัสและข้อมูลทั้งหมดออกสำหรับส่วนประกอบนี้",confirmRemove:"ใช่ ลบออก",confirmComponentRemove:"ใช่ ลบมัน",upgradeDescription:"การอัพเกรดบล็อกเล็ตจะทำให้มีใช้งานชั่วคราวไม่ได้ คุณแน่ใจว่าต้องการดำเนินการต่อหรือไม่?",confirmUpgrade:"ใช่ อัปเกรดมัน",confirmRestart:"ใช่, เริ่มต้นใหม่",restartDescription:"การเริ่มต้น blocklet ใหม่จะถูกระงับชั่วคราวและอาจไม่สามารถเริ่มต้นได้เนื่องจากการเปลี่ยนแปลงการตั้งค่า"},dev:{modeTip:"กรุณาสลับ Blocklet Server เป็นโหมด DEBUG"},index:{tableTitle:"จัดการ Blocklets ของคุณ",noBlocklet:"ไม่พบบล็อกเล็ตในเซิร์ฟเวอร์บล็อกเล็ตนี้ โปรดติดตั้งบล็อกเล็ตจากท้องตลาดเพื่อเริ่มต้น"},config:{name:"ชื่อแอปพลิเคชัน",description:"คำอธิบายแอป",logoSquare:"โลโก้แอปพลิเคชัน",logoRect:"โลโก้เว็บไซต์",logoRectDesc:"ใช้ใน: ส่วนหัวและส่วนท้ายของเว็บไซต์ หากไม่ได้กำหนดค่า จะกลับไปใช้โลโก้แอป",logoFavicon:"ไอคอนเว็บ",logoFaviconDesc:"ใช้งานใน: แถบที่อยู่และแท็บเบราว์เซอร์ ถ้าไม่ได้กำหนดค่า จะใช้โลโก้แอปพลิเคชัน",clusterSize:"จำนวนอินสแตนซ์เมื่อเรียกใช้ Blocklet นี้ในโหมดคลัสเตอร์",copyrightOwner:"เจ้าของลิขสิทธิ์",copyrightYear:"ลิขสิทธิ์ ปี",deletable:{name:"การป้องกันการลบ",enable:"บล็อกเล็ตนี้ไม่สามารถลบได้ในปัจจุบัน",disable:"บล็อกเล็ตนี้สามารถลบได้ในปัจจุบัน"},walletType:{name:"ประเภทกระเป๋าเงิน",description:"ประเภทกระเป๋าเงินของตัวอย่าง Blocklet, จะเปลี่ยน DID ที่ได้รับ"},languages:"ภาษาที่รองรับ",selectLanguagesTip:"ปรับเรียงลำดับด้วยการลบและเพิ่มเข้ามาใหม่",languagesSearch:"ค้นหาโดยชื่อท้องถิ่นของประเทศ ชื่อภาษาอังกฤษ หรือรหัส ISO...",passportColor:"สีหนังสือเดินทาง",appUrl:"URL แอปพลิเคชัน",access:{title:"ใครสามารถเข้าถึงได้?",description:"เลือกวิธีที่คุณต้องการควบคุมการเข้าถึงแอปพลิเคชันของคุณ",useDefault:"ใช้ค่าเริ่มต้น",defaultDescription:"ใช้การตั้งค่าเริ่มต้นของแอปพลิเคชัน",whoCanAccess:{all:{title:"เปิดให้ทุกคน",description:"เปิดกว้างให้โลกรู้จัก ทุกคนสามารถเข้าถึงได้โดยไม่ต้องมีหนังสือเดินทาง"},owner:{title:"เฉพาะเจ้าของเท่านั้น",description:"คุณต้องให้เจ้าของหนังสือเดินทางเพื่อเข้าถึงแอปพลิเคชันนี้"},invited:{title:"การเข้าถึงเฉพาะผู้ได้รับเชิญ",description:"เฉพาะสมาชิกที่ได้รับเชิญเท่านั้นที่สามารถเข้าถึงได้"}},publicToStore:"สาธารณะในร้านค้า",publicInstanceTip:"ที่อยู่เข้าถึงของอ็อฟเจ็คนี้จะแสดงในร้านค้า (พร้อมกับ DID ของคุณสำหรับการรับบริจาค)",updatedTip:"การควบคุมการเข้าถึงถูกแก้ไข"},changedTip:"อัปเดตการตั้งค่าแล้ว โปรดรีสตาร์ทบล็อกเล็ต",missingRequired:"ขาดการกำหนดค่าที่จำเป็นในการเริ่มต้นบล็อกเล็ท",gotoFix:"ไปซ่อมแซม",environment:{key:"คีย์การกำหนดค่า",value:"ค่าการตั้งค่า",keyValueRequired:"ต้องระบุคีย์การกำหนดค่าและค่า",invalidKey:"คีย์การกำหนดค่าต้องไม่เริ่มต้นด้วย BLOCKLET_ หรือ COMPONENT_",deleteForbidden:"การกำหนดค่านี้เป็นบังคับและไม่ควรลบ",tip:"ค่ากำหนดเริ่มต้นที่ต้องใส่คำก่อน BWA_ ไม่ควรมีข้อมูลที่ละเอียดอ่อนเพราะจะถูกส่งไปยังเบราว์เซอร์"},dangerZone:"พื้นที่อันตราย",sharedToAllComponents:"จะถูกแบ่งปันให้กับองค์ประกอบทั้งหมด",session:{ttl:"ผู้ใช้จะถูกขอให้เข้าสู่ระบบอีกครั้งหากไม่มีกิจกรรมบนเว็บไซต์นี้เป็นเวลา {วัน} วัน",day:"{day} วัน",days:"{day} วัน",period:"ระยะเวลาความถูกต้องของเซสชัน",profile:"ความต้องการของโปรไฟล์ผู้ใข้",cacheTtl:"ระยะเวลาแคชสำหรับข้อมูลเซสชันของผู้ใช้ (เป็นวินาที)",fullNameEnabled:"ขอชื่อผู้ใช้เมื่อเข้าสู่ระบบ (เปิดใช้งานตามค่าเริ่มต้น)",avatarEnabled:"ขออวาตาร์ผู้ใช้เมื่อเข้าสู่ระบบ (เปิดใช้งานโดยค่าเริ่มต้น)",emailEnabled:"ขออีเมลของผู้ใช้เมื่อเข้าสู่ระบบ",emailRequireVerified:"ต้องการให้ที่อยู่อีเมลของผู้ใช้ได้รับการตรวจสอบก่อนการเข้าสู่ระบบ",emailRequireUnique:"ต้องการให้อีเมลผู้ใช้เป็นที่แตกต่างกันในทุกผู้ใช้",phoneEnabled:"ขอหมายเลขโทรศัพท์ผู้ใช้เมื่อเข้าสู่ระบบ (ยังไม่รองรับ)",phoneRequireVerified:"ต้องการให้หมายเลขโทรศัพท์ของผู้ใช้ได้รับการยืนยันก่อนการเข้าสู่ระบบ",phoneRequireUnique:"ต้องการหมายเลขโทรศัพท์ของผู้ใช้เพื่อเป็นเอกลักษณ์ในทุกผู้ใช้",emailTrustOauthProviders:"信任 OAuth ในสถานะการตรวจสอบอีเมล",enableDomainBlackList:"เปิดใช้งานรายชื่อดำของโดเมนอีเมล (ปฏิเสธโดเมนอีเมลที่รายการ)",enableDomainWhiteList:"เปิดใช้งานรายชื่อที่ยญสีขาวของโดเมนอีเมล (อนุญาตเฉพาะโดเมนอีเมลที่ระบุให้เข้าสู่ระบบ)",addDomain:"เพิ่มแหล่งที่มาเพื่อเรียกดูรายการ (ในรูปแบบข้อความธรรมดา, หนึ่งโดเมนต่อบรรทัด)",enableBlacklist:"เปิดใช้งานการเพิกถอนโทเค็นเข้าสู่ระบบและโทเค็นรีเฟรช",experimentalSettings:"การตั้งค่าทดลอง"},clearCache:{name:"การจัดการแคช",purpose:"จัดการไฟล์ที่เก็บในบริการเราเตอร์และบล็อกเล็ต",title:"ยืนยันการล้างแคช?",action:"ล้างแคช",success:"ล้าง {count} รายการแคชเรียบร้อยแล้ว",description:"คุณแน่ใจไหมว่าต้องการล้างแคชไฟล์ที่เก็บไว้ในเราเตอร์และบริการบล็อกเล็ท? การดำเนินการนี้อาจทำให้ประสิทธิภาพลดลงบ้างในช่วงสั้น"},tenantMode:{name:"โหมด Multi-Tenant",multiple:"บล็อกเล็ตนี้ทำงานในโหมดผู้เช่าหลายราย เนื้อหาควรถูกแยกกันสำหรับแต่ละผู้เช่า",single:"บล็อกเลตนี้ทำงานในโหมดลูกค้าเดี่ยว ข้อมูลทั้งหมดถูกแชร์"},splashPortrait:"ภาพสแปลช",splashLandscape:"สปลาชแลนด์สเคป",splashPortraitDesc:"แสดงเมื่อเปิดใช้งาน Blocklet รูปแบบ PNG หรือ JPG อัตราส่วนที่แนะนำ 9:16 สำหรับแนวตั้ง และ 16:9 สำหรับแนวนอน (สูงสุด 5MB)",rotateSessionKey:{name:"การหมุนเวียนเกลือของเซสชัน",purpose:"Session salt คือค่าแบบสุ่มที่ใช้เพื่อเพิ่มความปลอดภัยของ session token คลิกปุ่มเพื่อหมุน session salt ด้วยตนเอง ซึ่งจะช่วยลดความเสี่ยงของการถูกขโมย login token",title:"ยืนยันการหมุนเกลือเซสชัน?",action:"หมุน เกลือ",success:"หมุนเกลือเซสชันสำเร็จ",description:"คุณแน่ใจหรือไม่ว่าต้องการหมุน session salt? การดำเนินการนี้จะทำให้โทเค็นการเข้าสู่ระบบที่มีอยู่ทั้งหมดเป็นโมฆะ และบังคับให้ผู้ใช้เข้าสู่ระบบอีกครั้ง รวมถึงโทเค็นการเข้าสู่ระบบของคุณด้วย"},ogImage:"เปิด Graph Background",ogImageDesc:"ใช้ใน: พื้นหลังการแชร์สื่อสังคม",migrate:{button:"ย้ายข้อมูลด้วย DID Wallet",title:"ยืนยันการเปลี่ยนแปลง DID",description:"ถ้าคุณเปิดตัวด้วยกระเป๋าเงินที่จัดการโดยเซิร์ฟเวอร์ คุณสามารถเปลี่ยน DID ของแอปพลิเคชันเป็นกระเป๋าเงินของคุณเองได้",confirm:"คุณแน่ใจหรือไม่ว่าต้องการเปลี่ยน DID ของแอปพลิเคชัน การดำเนินการนี้จะทำให้เซสชันที่มีอยู่ทั้งหมดเป็นโมฆะและบังคับให้ผู้ใช้เข้าสู่ระบบอีกครั้ง รวมถึงเซสชันของคุณด้วย"},vault:{name:"Vault DID",title:"ตั้งค่า Vault",desc:"ใช้ vault เพื่อเพิ่มชั้นความปลอดภัยให้กับเงินที่จัดการโดย blocklet นี้.",tip:"ป้อนที่อยู่คลังเพื่อดำเนินการต่อ คุณต้องพิสูจน์ความเป็นเจ้าของที่อยู่คลังก่อนจึงจะสามารถใช้งานได้",address:"ที่อยู่ Vault",verified:"Vault ได้รับการยืนยันแล้ว",current:"Vault ปัจจุบัน",error:{invalid:"ที่อยู่ Vault จะต้องเป็น DID ที่ถูกต้อง",holder:"ที่อยู่ Vault ต้องเป็นผู้ถือโทเคนถูกต้องบน blockchain ที่อยู่โทเคน/สินทรัพย์/โรงงาน/การลงทุนไม่รองรับ",duplicate:"ที่อยู่ vault นี้เคยถูกใช้งานมาก่อน กรุณาใช้ที่อยู่อื่น",appDid:"ไม่สามารถใช้ DID ของแอปพลิเคชันเป็นที่อยู่ของ vault ได้ โปรดใช้ที่อยู่อื่น"},role:"ประเภทบทบาท",firstSeen:"เห็นครั้งแรก",lastSeen:"เห็นล่าสุด",migratedFrom:"ย้ายจาก",migratedTo:"ย้ายไปที่",commit:{title:"ยืนยันความเป็นเจ้าของ Vault",scan:"ใช้เมธอดต่อไปนี้เพื่อยืนยันความเป็นเจ้าของห้องนิรภัย",confirm:"ยืนยันการใช้ DID Wallet",success:"Vault ถูกตั้งค่าเรียบร้อยแล้ว"},approve:{title:"อนุมัติการเปลี่ยนแปลง Vault",byOwner:"ลงนามกับเจ้าของ Blocklet เพื่ออนุมัติการเปลี่ยนแปลง",byLast:"ลงชื่อด้วย vault สุดท้ายเพื่ออนุมัติการเปลี่ยนแปลง",confirm:"ยืนยันโดยใช้ DID Wallet",success:"การเปลี่ยนแปลง Vault ได้รับการอนุมัติแล้ว"}},changeImageTip:"Tip: หากต้องการเปลี่ยนภาพ โปรดคลิกดูตัวอย่างภาพ",baseInfo:"ข้อมูลพื้นฐาน",baseInfoDesc:"สามารถตั้งค่าข้อมูลพื้นฐานของเว็บไซต์ได้ที่นี่",logoSettings:"ข้อมูลภาพ",logoSettingsDesc:"สร้างภาพลักษณ์แบรนด์ที่เป็นเอกลักษณ์ เสริมสร้างการจดจำเว็บไซต์และเสน่ห์ด้านภาพในสถานการณ์ต่างๆ",languagesDesc:"ใช้ใน: การเลือกภาษาของผู้เยี่ยมชม",nameDesc:"ใช้ใน: ส่วนหัว DID Connect, แท็บเบราว์เซอร์, ส่วนท้ายเว็บไซต์, ข้อมูลเมตา SEO และข้อมูลเมตา OpenGraph",descriptionDesc:"ใช้ใน: เมตาข้อมูล SEO และเมตาข้อมูล OpenGraph",logoSquareDesc:"ใช้ใน: ปุ่มด้านล่างกล่องโต้ตอบการตรวจสอบสิทธิ์ผู้ใช้และรายการแอป <b>DID Wallet</b>",logoDesc:"ขนาดที่แนะนำ: {width}*{height} pixels",splashDesc:`หน้าจอเปิดตัวแอป ArcSphere (จะแสดงใน <b>ArcSphere</b> หากกำหนดค่า)
1
+ const e={setup:{connect:{title:"ตั้งค่าเซิร์ฟเวอร์ Blocklet",scan:"ใช้เมธอดต่อไปนี้เพื่อเป็นเจ้าของเซิร์ฟเวอร์นี้",confirm:"โปรดตรวจสอบการดำเนินงานนี้ในกระเป๋าเงินดิจิทัลของคุณ",success:"บัญชีของคุณเชื่อมต่อกับเซิร์ฟเวอร์นี้"},keyPair:{title:"ดึง KeyPair",scan:"เชื่อมต่อกระเป๋าเงินดิจิตอลของคุณเพื่อสร้างคีย์เพื่อแอปพลิเคชันนี้",confirm:"ตรวจสอบการดำเนินการนี้ในกระเป๋าเงินดิจิตอลของคุณ",success:"คีย์เป็นของคุณถูกจัดเก็บไว้ในที่ปลอดภัย"},verify:{title:"ต้องการใบรับรองการเป็นเจ้าของ",scan:"เชื่อมต่อกระเป๋าเงิน DID เพื่อให้บัตรประจำตัวเป็นของคุณ",confirm:"ตรวจสอบการทำงานนี้ในกระเป๋าเงิน DID ของคุณ",success:"บัญชีของคุณเชื่อมต่อกับเซิร์ฟเวอร์นี้"},accept:{title:"ยอมรับใบรับรองการเป็นเจ้าของเซิร์ฟเวอร์",scan:"เชื่อมต่อกระเป๋าเงินดิจิทัล DID เพื่อให้ได้รับข้อมูลการรับรองสิทธิ์การเป็นเจ้าของ",confirm:"ตรวจสอบการดำเนินการนี้ในกระเป๋าเงินดิจิตอลของคุณ",success:"บัญชีของคุณเชื่อมต่อกับเซิร์ฟเวอร์นี้"},title:"ติดตั้งเซิร์ฟเวอร์ Blocklet",steps:{eula:"ข้อตกลงในการใช้งานสำหรับผู้ใช้งานปลาย",eulaFooter:"ฉันได้อ่านและยอมรับข้อกำหนดของ EULA",connect:"เชื่อมต่อกระเป๋าเงินเจ้าของ DID",verify:"ตรวจสอบการถือครอง",basicSettings:"การตั้งค่าพื้นฐาน",launchApp:"เปิดแอปพลิเคชัน",complete:"สมบูรณ์"},congratulation:"ขอแสดงความยินดี! เซิร์ฟเวอร์ Blocklet ของคุณปลอดภัยและพร้อมใช้งาน",redirectButton:"พาฉันไปสู่แดชบอร์ด!"},login:{loginTo:"เชื่อมต่อกับ",description:"เฉพาะเจ้าของเซิร์ฟเวอร์และสมาชิกที่ได้รับการอนุมัติเท่านั้นที่สามารถเข้าถึงแดชบอร์ดได้",switchDid:{title:"เปลี่ยนบัญชี",scan:"ใช้เมธอดต่อไปนี้เพื่อเพิ่มบัญชี",confirm:"ยืนยันการสลับในกระเป๋าเงินดิจิทัล",success:"สลับเรียบร้อยแล้ว"},switchSpecifiedDid:{title:"เปลี่ยนบัญชี",scan:"คุณต้องสลับ DID เป็น {did} เพื่อดำเนินการต่อไป",confirm:"ยืนยันการสลับในกระเป๋าเงิน DID ของคุณ",success:"สลับสำเร็จ"},connect:{title:"เชื่อมต่อ",scan:"เฉพาะเจ้าของเซิร์ฟเวอร์และสมาชิกที่ได้รับอนุมัติเท่านั้นที่สามารถเข้าถึงแดชบอร์ดได้",confirm:"ยืนยันในบัญชีของคุณ",success:"คุณเชื่อมต่อสำเร็จแล้ว"},verify:{title:"ยืนยันการเข้าถึง",scan:"เชื่อมต่อกระเป๋าเงิน DID ของคุณกับเจ้าของหรือผู้ดูแลปัจจุบัน",confirm:"ยืนยันในบัญชีของคุณ",success:"การเข้าถึงของคุณได้รับการยืนยันแล้ว",abort:"ยกเลิกการตรวจสอบการเข้าถึง",description:"คุณต้องแสดงหนังสือเดินทาง {roles} เพื่อดำเนินการนี้ คุณจะถูกขอให้ยืนยันอีกครั้งหลังจากไม่ใช้งาน 1 ชั่วโมง.",descriptionForDestroy:"คุณจำเป็นต้องให้หนังสือเดินทาง {roles} เพื่อดำเนินการอันตรายนี้เพื่อให้แน่ใจว่าปลอดภัย."},login:"เชื่อมต่อ",termsOfUse:"ข้อกำหนดการใช้งาน",agreeTermsOfUse:"ข้าพเจ้ารับทราบและยินยอมต่อข้อกำหนดที่เกี่ยวข้อง"},acceptServer:{title:"เรียกร้องเซิร์ฟเวอร์ด้วย NFT เจ้าของ",tooltip:"หากคุณได้รับสิทธิ์ในการครอบครองเซิร์ฟเวอร์ NFT คุณสามารถเรียกร้องหนังสือเดินทางเจ้าของของคุณได้ด้วยลิงก์นี้"},exchangePassport:{title:"แลกเปลี่ยนหนังสือเดินทางด้วย NFT",success:"คุณได้แลกเปลี่ยนหนังสือเดินทางของคุณและลงชื่อเข้าใช้ด้วยหนังสือเดินทาง",login:"เข้าสู่ระบบ",dialog:{title:"รับพาสปอร์ตด้วย NFT",scan:"เชื่อมต่อกระเป๋าเงิน DID เพื่อนำ NFT ของคุณเสนอตัวและรับหนังสือเดินทาง",confirm:"เลือก NFT ในกระเป๋าเงิน DID ของคุณ",success:"การแลกเปลี่ยนหนังสือเดินทางเสร็จสมบูรณ์"},tooltip1:"ถ้าคุณมี NFT จากคอลเลกชันนี้,",tooltip2:"คุณสามารถแลกเปลี่ยนหนังสือเดินทางของคุณได้ที่ลิงก์นี้"},payablePassport:{title:"ซื้อหนังสือเดินทางด้วยการชำระเงิน",tooltip:"หากคุณไม่มีหนังสือเดินทางคุณสามารถซื้อหนังสือเดินทางได้ที่ลิงก์นี้."},sidebar:{dashboard:"แดชบอร์ด",blocklets:"Blocklets",console:"คอนโซล",settings:"การตั้งค่า"},system:{total:"ทั้งหมด",used:"ใช้แล้ว",free:"ฟรี",cores:"จำนวนของคอร์",instances:"จำนวนของ instance"},common:{invalid:"ไม่ถูกต้อง",about:"เกี่ยวกับ",access:"เข้าถึง",accessKey:"คีย์การเข้าถึง",action:"การกระทำ",actions:"การดำเนินการ",add:"เพิ่ม",address:"ที่อยู่",afterTime:"หลังจาก {time}",allow:"อนุญาต",alreadyExist:"มีอยู่แล้ว",approve:"อนุมัติ",approved:"ได้รับการอนุมัติ",appUrl:"URL แอปพลิเคชัน",auditLogs:"ตรวจสอบแม่แบบ",author:"ผู้เขียน",avatar:"อวตาร",back:"กลับ",basic:"พื้นฐาน",basicInfo:"ข้อมูลพื้นฐาน",profile:"โปรไฟล์",bind:"ผูกติด",blocklet:"บล็อกเล็ต",blocklets:"Blocklets",blockletsStorage:"การเก็บบล็อกเล็ต",cacheStorage:"การจัดเก็บแคช",cancel:"ยกเลิก",certificate:"ใบรับรอง",category:"หัวข้อบันทึกเข้า",click:"คลิกเพื่อคัดลอก",close:"ปิด",selectAll:"ตรวจสอบทั้งหมด",unselectAll:"ยกเลิกการตรวจสอบทั้งหมด",collapseAll:"ยุบทั้งหมด",community:"URL ชุมชน",complete:"เสร็จสิ้น",componentBasicInfo:"ข้อมูลพื้นฐานขององค์ประกอบ",components:"Blocklets",config:"กำหนดค่า",configuration:"การกำหนดค่า",appearance:"ลักษณะ",configNavigation:"การนำทาง",configSuccess:"กำหนดค่าเรียบร้อยแล้ว",confirm:"ยืนยัน",connect:"เชื่อมต่อ",console:"คอนโซล",continue:"ดำเนินการต่อ",continueWith:"ดำเนินการต่อด้วย",copiedTip:"คัดลอกแล้ว",copyAndClose:"คัดลอกและปิด",copyTip:"คลิกเพื่อคัดลอก",coreStorage:"การเก็บรักษาหลัก",cpu:"CPU",create:"สร้าง",createSuccess:"สร้างคีย์การเข้าถึง",created:"สร้างเมื่อ",createdAt:"สร้างเมื่อ",createdBy:"สร้างโดย",dAddress:"ตัวระบุที่แบ่งกันออกตามกฎหมาย (DID)",dataStorage:"การจัดเก็บข้อมูลบนดิสก์ในเครื่อง",delConfirm:"ลบ",delConfirmDescription:"ยืนยันการลบ {data}?",delete:"ลบ",dependents:"ผู้อยู่ในพันธบัตร",description:"คำอธิบาย",detail:"รายละเอียด",did:"DID",disk:"ดิสก์",diskInfo:"ข้อมูลดิสก์",docker:"Docker หรือไม่",documentation:"เอกสาร",domain:"โดเมน",downgradeTo:"การลดรุ่นเป็น {name}",download:"ดาวน์โหลด",downloading:"กำลังดาวน์โหลด",edit:"แก้ไข",email:"อีเมลล์",phone:"โทรศัพท์",empty:"ว่างเปล่า",emptyData:"ไม่พบผลลัพธ์",enable:"เปิดใช้",engine:"เครื่องยนต์",env:"สภาพแวดล้อม",environment:"สภาพแวดล้อม",expandAll:"ขยายทั้งหมด",expired:"หมดอายุ",expires:"หมดอายุ",export:"ส่งออก",externalIp:"IP ภายนอก",failed:"ไม่สำเร็จ",filter:"ตัวกรองล็อก",fingerprint:"ลายนิ้วมือ",finish:"เสร็จสิ้น",forbid:"ห้าม",free:"ฟรี",general:"ทั่วไป",gitpod:"Gitpodคืออะไร",goEULA:'คลิกเพื่อดู "ข้อตกลงการใช้งานสิทธิ์ของผู้ใช้สุดท้าย"',group:"กลุ่ม",image:"นี่เป็นรูปภาพ",install:"ติดตั้ง",installed:"ติดตั้งแล้ว",installedAt:"ติดตั้งที่",installSuccess:"ติดตั้งเสร็จสมบูรณ์",installing:"กำลังติดตั้ง",internalIp:"IP ภายใน",introduction:"การแนะนำ",invite:"เชิญ",inviting:"เชิญ",ip:"ไอพี",isPublic:"สาธารณะ",issue:"ปัญหา",issuer:"ผู้ออก",item:"รายการ",joined:"เข้าร่วม",key:"กุญแจ",releases:"การเผยแพร่",lastPublishedAt:"เผยแพร่เมื่อ",launcher:"ข้อมูลของลอนเชอร์",leavePageTip:"คุณแน่ใจหรือว่าต้องการออกจากหน้านี้หรือไม่?",link:"ลิงก์",loading:"กำลังโหลด",log:"ดูบันทึก",logStorage:"การจัดเก็บบันทึกการเข้าถึง",login:"เข้าสู่ระบบ",logo:"โลโก้",logout:"ออกจากระบบ",logs:"บันทึก",manageTeam:"การจัดการทีม",marketplace:"ตลาด",member:"สมาชิก",members:"สมาชิก",memory:"ความจำ",meta:"ข้อมูลเมต้า",analytics:"การวิเคราะห์ข้อมูล",runtime:"เวลารัน",traffic:"การจราจร",more:"มากกว่า",mountPoint:"จุด Mount",name:"ชื่อ",next:"ถัดไป",no:"ไม่",noData:"ไม่มีระเบียนที่จะแสดง",notice:"สิ่งเลวร้ายที่ไม่คาดคิดจะเกิดขึ้นหากคุณไม่อ่านสิ่งนี้!",noticeTitle:"ประกาศ",notification:"การแจ้งเตือน",open:"เปิด",management:"การจัดการ",os:"ระบบปฏิบัติการ",overview:"ภาพรวม",owner:"เจ้าของ",page404:"หน้า 404",passport:"หนังสือเดินทาง",permission:"การอนุญาต",port:"Port",pre:"ก่อนหน้านี้",preferences:"การตั้งค่า",preview:"ดูตัวอย่าง",protected:"ป้องกัน",protocol:"โปรโตคอล",purchase:"การซื้อ",readMore:"มากขึ้น",redirect:"เปลี่ยนเส้นทาง",redirectCode:"รหัสเปลี่ยนเส้นทาง",redirectPermanently:"เปลี่ยนเส้นทางอย่างถาวร",redirectTemporary:"เปลี่ยนเส้นทางชั่วคราว",redirectUrl:"URL ส่งต่อ",rewrite:"เขียนซ้ำ",release:"ปล่อย",rewriteUrl:"เขียน URL ใหม่",reject:"ปฏิเสธ",reload:"เรียกใหม่",remark:"หมายเหตุ",remove:"ลบ",removeSuccess:"ลบสำเร็จ",renew:"ต่ออายุ",reportIssue:"รายงานปัญหา",required:"จำเป็น",requiredErrorText:"ต้องใช้ {name}",resource:"ทรัพยากร",restart:"เริ่มใหม่",restore:"กู้คืน",retry:"ลองอีกครั้ง",revoke:"เพิกถอน",role:"บทบาท",running:"กำลังวิ่ง",runtimeInfo:"ข้อมูลสถานะการทำงาน",save:"บันทึก",saveChanges:"บันทึกการเปลี่ยนแปลง",saveSuccess:"บันทึกสำเร็จ",scheduleFailed:"การตั้งตารางล้มเหลว",scheduleSuccess:"ตั้งเวลาเรียบร้อยแล้ว",scope:"ขอบเขต",screenshot:"ภาพหน้าจอ",search:"ค้นหา",security:"ความปลอดภัย",serverDid:"เซิร์ฟเวอร์ DID",serverVersion:"เวอร์ชันเซิร์ฟเวอร์",setting:"การตั้งค่า",start:"เริ่ม",status:"สถานะ",stop:"หยุด",storage:"การเก็บข้อมูล",backup:"การสำรองข้อมูล",store:"ร้านค้า",succeeded:"ประสบความสำเร็จ",subscription:"การสมัครสมาชิก",support:"การสนับสนุน: URL หรืออีเมล",switch:"สลับ",team:"ทีม",the:"O",timeAgo:"{time} ที่ผ่านมา",title:"หัวข้อ",type:"ประเภท",unavailable:"ไม่สามารถใช้งานได้",update:"อัปเดต",updateAvailable:"มีเวอร์ชันใหม่ {version} ที่ใช้ได้",updatedAt:"อัปเดตเมื่อ",updatedBy:"อัพเดทโดย",upgrade:"อัพเกรด",upgradeTo:"อัปเกรดไปยัง",upgrading:"การอัพเกรด",uptime:"เวลาทำงาน",url:"URL",valid:"ถูกต้อง",value:"ค่าเงิน",version:"เวอร์ชัน",visit:"เยี่ยมชม",waiting:"กำลังรออยู่",webhook:"การผสานรวม",yes:"ใช่",invalidParam:"พารามิเตอร์ไม่ถูกต้อง",launch:"เปิดเผย",price:"ราคา",redirecting:"กำลังเปลี่ยนเส้นทาง",error:"ข้อผิดพลาด",reminder:"การเตือนให้รู้เพิ่มเติม",normal:"ปกติ",gateway:"เกตเวย์",verifyNFT:"ตรวจสอบ NFT",errorMessage:"ข้อผิดพลาด:",slugifyHint:"จุดติดตั้งจริงจะเป็น: {value}",strategy:"กลยุทธ์",auto:"รถยนต์",manual:"คู่มือ",progress:"กำลังดำเนินการ",startTime:"เวลาเริ่มต้น",endTime:"เวลาสิ้นสุด",timeoutError:"ข้อผิดพลาดเวลาหมด",tags:"แท็ก",connectToStore:"เชื่อมต่อกับร้านค้า",uploaded:"อัปโหลดแล้ว",upload:"อัปโหลด",blockletStudio:"สตูดิโอ",visitStore:"เยี่ยมชมร้านค้า",reconnect:"เชื่อมต่อใหม่",change:"เปลี่ยนแปลง",disconnect:"ตัดการเชื่อมต่อ",sourceApp:"เป็นของแอป",visitTarget:"เข้าชม {name}",upgradeServer:"อัปเกรด Server",display:"แสดง",requiredInputPlaceholder:"กรุณากรอก {name}",refresh:"รีเฟรช",moveUp:"เลื่อนขึ้น",moveDown:"เลื่อนลง",enabled:"เปิดใช้แล้ว",disabled:"ปิดใช้งาน",homepage:"หน้าหลัก",buy:"ซื้อ",view:"ดู",homepageTip:"หน้าแรกหรือ URL การสาธิตสด",repository:"ที่เก็บข้อมูล",expand:"ขยาย",collapse:"ยุบ",all:"ทั้งหมด",notificationRecords:"การแจ้งเตือน",unrecordedUser:"ชื่อที่ไม่ได้บันทึก",unrecordedRole:"บทบาทที่ไม่ได้บันทึก",auditLogsSearch:"ค้นหาตามการดำเนินการหรือเนื้อหา",optional:"ไม่บังคับ",bugOrConnectDomain:"ซื้อหรือเชื่อมต่อโดเมนที่มีอยู่",bugOrConnectDomainTip:"โดเมนเนมคือที่อยู่เฉพาะของเว็บไซต์ของคุณบนอินเทอร์เน็ต คุณสามารถซื้อโดเมนใหม่จาก DID Names หรือผู้ให้บริการจดทะเบียนโดเมนรายใดก็ได้ หรือตั้งค่าโดเมนที่มีอยู่แล้วของคุณ",connectExistingDomain:"เชื่อมต่อโดเมนที่มีอยู่",domains:"โดเมน",didDomains:"โดเมน DID",manualDomains:"โดเมนของฉัน",didDomainsDescription:"โดเมนต่อไปนี้ได้รับการจัดการโดยอัตโนมัติโดยบริการ DID:Names",systemDomains:"จัดสรรโดยระบบ",systemDomainsDescription:"โดเมนต่อไปนี้ถูกกำหนดโดยอัตโนมัติตามค่าเริ่มต้น แม้ว่าจะสามารถเข้าถึงได้ แต่ก็ไม่ได้มีไว้สำหรับการใช้งานจริง และไม่ควรแชร์กับลูกค้า โดเมนเหล่านี้ส่วนใหญ่ใช้เพื่อการพัฒนา",manualDomainsDescription:"โดเมนต่อไปนี้ถูกจัดการโดยผู้ให้บริการโดเมนของคุณและได้รับการกำหนดค่าด้วยตนเองเพื่อชี้ไปที่นี่",fileCount:"จำนวนไฟล์",fileSize:"ขนาดไฟล์",time:"เวลา",less:"น้อยกว่า",timeInfo:"เวลา",operator:"Operator",inviter:"ผู้เชิญ",clear:"ล้าง",ok:"ตกลง",minutes:"นาที",hours:"ชั่วโมง",hour:"ชั่วโมง",days:"วัน",day:"วัน",weeks:"สัปดาห์",months:"เดือน",custom:"กำหนดเอง",environments:"สภาพแวดล้อม",sites:"เว็บไซต์",active:"ใช้งานอยู่",backupTime:"เวลาสำรองข้อมูล",lastUsedAt:"ครั้งล่าสุดที่ใช้งาน",expiredAt:"วันหมดอายุ",createdVia:"สร้างผ่าน",neverExpired:"ไม่เคย",baseInfo:"ข้อมูลพื้นฐาน",otherInfo:"ข้อมูลอื่นๆ",lightMode:"โหมดสว่าง",darkMode:"โหมดมืด",globalSettings:"การตั้งค่าทั่วไป",document:"เอกสาร",mcpServers:"เซิร์ฟเวอร์ MCP",generate:"สร้าง",copy:"คัดลอก",copied:"คัดลอกแล้ว",orgs:"องค์กร",userSessions:"เซสชันผู้ใช้",duplicate:"ทำซ้ำ",oauth:"แอป OAuth",poweredBy:"ขับเคลื่อนโดย {brand}",theme:"ธีม",issued:"ออกแล้ว",runTest:"ทดสอบ",saveFailed:"保存ไม่สำเร็จ",policies:"นโยบาย"},blocklet:{external:"ภายนอก",notFound:"ไม่พบ Blocklet บนเซิร์ฟเวอร์นี้, อาจถูกลบแล้ว",installFromMarket:"ติดตั้งบล็อกเล็ตใหม่",installFromUrl:"ติดตั้งจาก URL",installFromCreate:"สร้างบล็อกเล็ต",installFromDiskBackup:"กู้คืนจากเซิร์ฟเวอร์นี้",installedAt:"ติดตั้งที่",internal:"ภายใน",startedAt:"เริ่มที่",stoppedAt:"หยุดที่",urlEmptyTip:"URL ไม่สามารถเข้าถึงได้",goToAddRule:"ไปที่เพิ่ม",services:"บริการที่เปิดเผย",upstreamPort:"พอร์ตออปสตรีม",noService:"ไม่มีบริการ",appId:"App DID",appPid:"DID ถาวร",alsoKnownAs:"ที่เรียกว่า",skSource:"กระเป๋าเจ้าของ",reloadSuccess:"โหลดบล็อกเล็ตเรียบร้อยแล้ว",statusTip:"Blocklet คือ {status}",initialUptime:"น้อยกว่า 1m",dashboard:"แดชบอร์ด Blocklet",noComponent:"แอปพลิเคชันไม่มีส่วนประกอบและไม่สามารถเริ่มต้นได้",fromUrl:{title:"ติดตั้ง Blocklet",label:"URL Meta Blocklet",description:"URL ควรชี้ไปที่ไฟล์เมต้าของบล็อกเล็ต หากคุณต้องการอ้างอิงไปยังไฟล์ในเครื่อง โปรดเพิ่มคำนำหน้า file:// ตัวอย่างเช่น file:///Users/foo/blocklet.json",confirm:"ติดตั้ง",step0:"URL เข้าระบบ",step1:"ยืนยันข้อมูล Meta",existTipPrefix:"มี Blocklet ที่มี DID เดียวกันอยู่แล้ว รุ่นที่ใช้คือ {version}",existTipSuffix:"โปรดติดตั้งเวอร์ชันที่สูงกว่า"},action:{stopDescription:"การหยุด blocklet จะทำให้อินเตอร์เฟซสาธารณะของมันไม่สามารถเข้าถึงได้ ซึ่งอาจทำให้ผู้ใช้สิ้นสุดล้มเหลว",stopComponentDescription:"การหยุดการทำงานขององค์ประกอบจะทำให้อินเตอร์เฟซสาธารณะของมันไม่สามารถเข้าถึงได้ ซึ่งอาจทำให้ผู้ใช้สิ้นเปลือง",confirmStop:"ใช่, หยุด",cancelDownloadDescription:"ยกเลิกการดาวน์โหลด {name}?",removeApplicationDescription:"การลบแอปพลิเคชันจะลบโค้ดและข้อมูลที่สร้างขึ้นโดยแอปพลิเคชันนี้ที่ไม่สามารถกู้คืนได้หากคุณไม่มีการสำรองข้อมูลใด ๆ",removeApplicationAfterBackup:"สำรองข้อมูลและลบแอปพลิเคชัน คุณสามารถกู้คืนแอปพลิเคชันจากเซิร์ฟเวอร์นี้ได้หากคุณต้องการ",removeApplicationComplete:"ลบทั้งรหัสและข้อมูลสำหรับแอปพลิเคชันนี้",removeComponentDescription:"การลบส่วนประกอบจะลบรหัสและข้อมูลที่ได้รับการสร้างโดยส่วนประกอบนี้ออก ซึ่งไม่สามารถกู้คืนได้หากคุณไม่มีการสำรองข้อมูลใดๆ",removeComponentKeepData:"เก็บข้อมูลสำหรับคอมโพเนนต์นี้ แต่เพียงเอาโค้ดออกเท่านั้น",removeComponentComplete:"เอาทั้งรหัสและข้อมูลทั้งหมดออกสำหรับส่วนประกอบนี้",confirmRemove:"ใช่ ลบออก",confirmComponentRemove:"ใช่ ลบมัน",upgradeDescription:"การอัพเกรดบล็อกเล็ตจะทำให้มีใช้งานชั่วคราวไม่ได้ คุณแน่ใจว่าต้องการดำเนินการต่อหรือไม่?",confirmUpgrade:"ใช่ อัปเกรดมัน",confirmRestart:"ใช่, เริ่มต้นใหม่",restartDescription:"การเริ่มต้น blocklet ใหม่จะถูกระงับชั่วคราวและอาจไม่สามารถเริ่มต้นได้เนื่องจากการเปลี่ยนแปลงการตั้งค่า"},dev:{modeTip:"กรุณาสลับ Blocklet Server เป็นโหมด DEBUG"},index:{tableTitle:"จัดการ Blocklets ของคุณ",noBlocklet:"ไม่พบบล็อกเล็ตในเซิร์ฟเวอร์บล็อกเล็ตนี้ โปรดติดตั้งบล็อกเล็ตจากท้องตลาดเพื่อเริ่มต้น"},config:{name:"ชื่อแอปพลิเคชัน",description:"คำอธิบายแอป",logoSquare:"โลโก้แอปพลิเคชัน",logoRect:"โลโก้เว็บไซต์",logoRectDesc:"ใช้ใน: ส่วนหัวและส่วนท้ายของเว็บไซต์ หากไม่ได้กำหนดค่า จะกลับไปใช้โลโก้แอป",logoFavicon:"ไอคอนเว็บ",logoFaviconDesc:"ใช้งานใน: แถบที่อยู่และแท็บเบราว์เซอร์ ถ้าไม่ได้กำหนดค่า จะใช้โลโก้แอปพลิเคชัน",clusterSize:"จำนวนอินสแตนซ์เมื่อเรียกใช้ Blocklet นี้ในโหมดคลัสเตอร์",copyrightOwner:"เจ้าของลิขสิทธิ์",copyrightYear:"ลิขสิทธิ์ ปี",deletable:{name:"การป้องกันการลบ",enable:"บล็อกเล็ตนี้ไม่สามารถลบได้ในปัจจุบัน",disable:"บล็อกเล็ตนี้สามารถลบได้ในปัจจุบัน"},walletType:{name:"ประเภทกระเป๋าเงิน",description:"ประเภทกระเป๋าเงินของตัวอย่าง Blocklet, จะเปลี่ยน DID ที่ได้รับ"},languages:"ภาษาที่รองรับ",selectLanguagesTip:"ปรับเรียงลำดับด้วยการลบและเพิ่มเข้ามาใหม่",languagesSearch:"ค้นหาโดยชื่อท้องถิ่นของประเทศ ชื่อภาษาอังกฤษ หรือรหัส ISO...",passportColor:"สีหนังสือเดินทาง",appUrl:"URL แอปพลิเคชัน",access:{title:"ใครสามารถเข้าถึงได้?",description:"เลือกวิธีที่คุณต้องการควบคุมการเข้าถึงแอปพลิเคชันของคุณ",useDefault:"ใช้ค่าเริ่มต้น",defaultDescription:"ใช้การตั้งค่าเริ่มต้นของแอปพลิเคชัน",whoCanAccess:{all:{title:"เปิดให้ทุกคน",description:"เปิดกว้างให้โลกรู้จัก ทุกคนสามารถเข้าถึงได้โดยไม่ต้องมีหนังสือเดินทาง"},owner:{title:"เฉพาะเจ้าของเท่านั้น",description:"คุณต้องให้เจ้าของหนังสือเดินทางเพื่อเข้าถึงแอปพลิเคชันนี้"},invited:{title:"การเข้าถึงเฉพาะผู้ได้รับเชิญ",description:"เฉพาะสมาชิกที่ได้รับเชิญเท่านั้นที่สามารถเข้าถึงได้"}},publicToStore:"สาธารณะในร้านค้า",publicInstanceTip:"ที่อยู่เข้าถึงของอ็อฟเจ็คนี้จะแสดงในร้านค้า (พร้อมกับ DID ของคุณสำหรับการรับบริจาค)",updatedTip:"การควบคุมการเข้าถึงถูกแก้ไข"},changedTip:"อัปเดตการตั้งค่าแล้ว โปรดรีสตาร์ทบล็อกเล็ต",missingRequired:"ขาดการกำหนดค่าที่จำเป็นในการเริ่มต้นบล็อกเล็ท",gotoFix:"ไปซ่อมแซม",environment:{key:"คีย์การกำหนดค่า",value:"ค่าการตั้งค่า",keyValueRequired:"ต้องระบุคีย์การกำหนดค่าและค่า",invalidKey:"คีย์การกำหนดค่าต้องไม่เริ่มต้นด้วย BLOCKLET_ หรือ COMPONENT_",deleteForbidden:"การกำหนดค่านี้เป็นบังคับและไม่ควรลบ",tip:"ค่ากำหนดเริ่มต้นที่ต้องใส่คำก่อน BWA_ ไม่ควรมีข้อมูลที่ละเอียดอ่อนเพราะจะถูกส่งไปยังเบราว์เซอร์"},dangerZone:"พื้นที่อันตราย",sharedToAllComponents:"จะถูกแบ่งปันให้กับองค์ประกอบทั้งหมด",session:{ttl:"ผู้ใช้จะถูกขอให้เข้าสู่ระบบอีกครั้งหากไม่มีกิจกรรมบนเว็บไซต์นี้เป็นเวลา {วัน} วัน",day:"{day} วัน",days:"{day} วัน",period:"ระยะเวลาความถูกต้องของเซสชัน",profile:"ความต้องการของโปรไฟล์ผู้ใข้",cacheTtl:"ระยะเวลาแคชสำหรับข้อมูลเซสชันของผู้ใช้ (เป็นวินาที)",fullNameEnabled:"ขอชื่อผู้ใช้เมื่อเข้าสู่ระบบ (เปิดใช้งานตามค่าเริ่มต้น)",avatarEnabled:"ขออวาตาร์ผู้ใช้เมื่อเข้าสู่ระบบ (เปิดใช้งานโดยค่าเริ่มต้น)",emailEnabled:"ขออีเมลของผู้ใช้เมื่อเข้าสู่ระบบ",emailRequireVerified:"ต้องการให้ที่อยู่อีเมลของผู้ใช้ได้รับการตรวจสอบก่อนการเข้าสู่ระบบ",emailRequireUnique:"ต้องการให้อีเมลผู้ใช้เป็นที่แตกต่างกันในทุกผู้ใช้",phoneEnabled:"ขอหมายเลขโทรศัพท์ผู้ใช้เมื่อเข้าสู่ระบบ (ยังไม่รองรับ)",phoneRequireVerified:"ต้องการให้หมายเลขโทรศัพท์ของผู้ใช้ได้รับการยืนยันก่อนการเข้าสู่ระบบ",phoneRequireUnique:"ต้องการหมายเลขโทรศัพท์ของผู้ใช้เพื่อเป็นเอกลักษณ์ในทุกผู้ใช้",emailTrustOauthProviders:"信任 OAuth ในสถานะการตรวจสอบอีเมล",enableDomainBlackList:"เปิดใช้งานรายชื่อดำของโดเมนอีเมล (ปฏิเสธโดเมนอีเมลที่รายการ)",enableDomainWhiteList:"เปิดใช้งานรายชื่อที่ยญสีขาวของโดเมนอีเมล (อนุญาตเฉพาะโดเมนอีเมลที่ระบุให้เข้าสู่ระบบ)",addDomain:"เพิ่มแหล่งที่มาเพื่อเรียกดูรายการ (ในรูปแบบข้อความธรรมดา, หนึ่งโดเมนต่อบรรทัด)",enableBlacklist:"เปิดใช้งานการเพิกถอนโทเค็นเข้าสู่ระบบและโทเค็นรีเฟรช",experimentalSettings:"การตั้งค่าทดลอง"},clearCache:{name:"การจัดการแคช",purpose:"จัดการไฟล์ที่เก็บในบริการเราเตอร์และบล็อกเล็ต",title:"ยืนยันการล้างแคช?",action:"ล้างแคช",success:"ล้าง {count} รายการแคชเรียบร้อยแล้ว",description:"คุณแน่ใจไหมว่าต้องการล้างแคชไฟล์ที่เก็บไว้ในเราเตอร์และบริการบล็อกเล็ท? การดำเนินการนี้อาจทำให้ประสิทธิภาพลดลงบ้างในช่วงสั้น"},tenantMode:{name:"โหมด Multi-Tenant",multiple:"บล็อกเล็ตนี้ทำงานในโหมดผู้เช่าหลายราย เนื้อหาควรถูกแยกกันสำหรับแต่ละผู้เช่า",single:"บล็อกเลตนี้ทำงานในโหมดลูกค้าเดี่ยว ข้อมูลทั้งหมดถูกแชร์"},splashPortrait:"ภาพสแปลช",splashLandscape:"สปลาชแลนด์สเคป",splashPortraitDesc:"แสดงเมื่อเปิดใช้งาน Blocklet รูปแบบ PNG หรือ JPG อัตราส่วนที่แนะนำ 9:16 สำหรับแนวตั้ง และ 16:9 สำหรับแนวนอน (สูงสุด 5MB)",rotateSessionKey:{name:"การหมุนเวียนเกลือของเซสชัน",purpose:"Session salt คือค่าแบบสุ่มที่ใช้เพื่อเพิ่มความปลอดภัยของ session token คลิกปุ่มเพื่อหมุน session salt ด้วยตนเอง ซึ่งจะช่วยลดความเสี่ยงของการถูกขโมย login token",title:"ยืนยันการหมุนเกลือเซสชัน?",action:"หมุน เกลือ",success:"หมุนเกลือเซสชันสำเร็จ",description:"คุณแน่ใจหรือไม่ว่าต้องการหมุน session salt? การดำเนินการนี้จะทำให้โทเค็นการเข้าสู่ระบบที่มีอยู่ทั้งหมดเป็นโมฆะ และบังคับให้ผู้ใช้เข้าสู่ระบบอีกครั้ง รวมถึงโทเค็นการเข้าสู่ระบบของคุณด้วย"},ogImage:"เปิด Graph Background",ogImageDesc:"ใช้ใน: พื้นหลังการแชร์สื่อสังคม",migrate:{button:"ย้ายข้อมูลด้วย DID Wallet",title:"ยืนยันการเปลี่ยนแปลง DID",description:"ถ้าคุณเปิดตัวด้วยกระเป๋าเงินที่จัดการโดยเซิร์ฟเวอร์ คุณสามารถเปลี่ยน DID ของแอปพลิเคชันเป็นกระเป๋าเงินของคุณเองได้",confirm:"คุณแน่ใจหรือไม่ว่าต้องการเปลี่ยน DID ของแอปพลิเคชัน การดำเนินการนี้จะทำให้เซสชันที่มีอยู่ทั้งหมดเป็นโมฆะและบังคับให้ผู้ใช้เข้าสู่ระบบอีกครั้ง รวมถึงเซสชันของคุณด้วย"},vault:{name:"Vault DID",title:"ตั้งค่า Vault",desc:"ใช้ vault เพื่อเพิ่มชั้นความปลอดภัยให้กับเงินที่จัดการโดย blocklet นี้.",tip:"ป้อนที่อยู่คลังเพื่อดำเนินการต่อ คุณต้องพิสูจน์ความเป็นเจ้าของที่อยู่คลังก่อนจึงจะสามารถใช้งานได้",address:"ที่อยู่ Vault",verified:"Vault ได้รับการยืนยันแล้ว",current:"Vault ปัจจุบัน",error:{invalid:"ที่อยู่ Vault จะต้องเป็น DID ที่ถูกต้อง",holder:"ที่อยู่ Vault ต้องเป็นผู้ถือโทเคนถูกต้องบน blockchain ที่อยู่โทเคน/สินทรัพย์/โรงงาน/การลงทุนไม่รองรับ",duplicate:"ที่อยู่ vault นี้เคยถูกใช้งานมาก่อน กรุณาใช้ที่อยู่อื่น",appDid:"ไม่สามารถใช้ DID ของแอปพลิเคชันเป็นที่อยู่ของ vault ได้ โปรดใช้ที่อยู่อื่น"},role:"ประเภทบทบาท",firstSeen:"เห็นครั้งแรก",lastSeen:"เห็นล่าสุด",migratedFrom:"ย้ายจาก",migratedTo:"ย้ายไปที่",commit:{title:"ยืนยันความเป็นเจ้าของ Vault",scan:"ใช้เมธอดต่อไปนี้เพื่อยืนยันความเป็นเจ้าของห้องนิรภัย",confirm:"ยืนยันการใช้ DID Wallet",success:"Vault ถูกตั้งค่าเรียบร้อยแล้ว"},approve:{title:"อนุมัติการเปลี่ยนแปลง Vault",byOwner:"ลงนามกับเจ้าของ Blocklet เพื่ออนุมัติการเปลี่ยนแปลง",byLast:"ลงชื่อด้วย vault สุดท้ายเพื่ออนุมัติการเปลี่ยนแปลง",confirm:"ยืนยันโดยใช้ DID Wallet",success:"การเปลี่ยนแปลง Vault ได้รับการอนุมัติแล้ว"}},changeImageTip:"Tip: หากต้องการเปลี่ยนภาพ โปรดคลิกดูตัวอย่างภาพ",baseInfo:"ข้อมูลพื้นฐาน",baseInfoDesc:"สามารถตั้งค่าข้อมูลพื้นฐานของเว็บไซต์ได้ที่นี่",logoSettings:"ข้อมูลภาพ",logoSettingsDesc:"สร้างภาพลักษณ์แบรนด์ที่เป็นเอกลักษณ์ เสริมสร้างการจดจำเว็บไซต์และเสน่ห์ด้านภาพในสถานการณ์ต่างๆ",languagesDesc:"ใช้ใน: การเลือกภาษาของผู้เยี่ยมชม",nameDesc:"ใช้ใน: ส่วนหัว DID Connect, แท็บเบราว์เซอร์, ส่วนท้ายเว็บไซต์, ข้อมูลเมตา SEO และข้อมูลเมตา OpenGraph",descriptionDesc:"ใช้ใน: เมตาข้อมูล SEO และเมตาข้อมูล OpenGraph",logoSquareDesc:"ใช้ใน: ปุ่มด้านล่างกล่องโต้ตอบการตรวจสอบสิทธิ์ผู้ใช้และรายการแอป <b>DID Wallet</b>",logoDesc:"ขนาดที่แนะนำ: {width}*{height} pixels",splashDesc:`หน้าจอเปิดตัวแอป ArcSphere (จะแสดงใน <b>ArcSphere</b> หากกำหนดค่า)
2
2
  โหมดแนวตั้ง:
3
3
  อัตราส่วน: 9:16
4
4
  โหมดแนวนอน:
5
- อัตราส่วน: 16:9`,copyrightDesc:"ใช้ใน: ปลายหน้าเว็บไซต์",appUrlDesc:"ใช้ใน: แผนผังเว็บไซต์และการแชร์บนโซเชียล",advanced:"การตั้งค่าขั้นสูง",errorReason:"ไม่สามารถเริ่ม Blocklet ได้ แต่คุณยังสามารถเข้าถึงมันได้โดยการคลิกปุ่มด้านล่าง.",nameValidateError:"ไม่ถูกต้อง: ขึ้นต้นด้วยตัวอักษร/ตัวเลข, 3–129 ตัวอักษร, เฉพาะ a–z, 0–9, - และ _"},overview:{source:"แหล่ง",deployedFrom:"นำเสนอจาก",accessControl:"การควบคุมการเข้าถึง",viewInStore:"ดูในร้านค้า"},diskInfo:{empty:"ข้อมูลดิสก์ไม่สามารถใช้ได้ในขณะนี้!",appDir:"ไดเรกทอรีแอป",dataDir:"ไดเรกทอรีข้อมูล",logDir:"ไดเร็กทอรีบันทึก",cacheDir:"ไดเร็กทอรีแคช"},runtimeInfo:{noRunning:"ข้อมูลเวลาการทำงานจะสามารถใช้ได้เมื่อ blocklet กำลังทำงาน!",memoryUsage:"การใช้หน่วยความจำ",cpuUsage:"การใช้งาน CPU",uptime:"เวลาทำงาน",port:"ท่าเรือ",processId:"รหัสกระบวนการ",dataStorage:"การจัดเก็บข้อมูล"},dist:{downloadLink:"ลิงก์ดาวน์โหลด",verify:"ตรวจสอบ"},status:{added:"เพิ่มแล้ว",waiting:"กำลังรอ",downloading:"กำลังดาวน์โหลด",extracting:"การแยกออก",installing:"กำลังติดตั้ง",upgrading:"อัพเกรด",installed:"ติดตั้งแล้ว",created:"สร้างแล้ว",starting:"เริ่มต้น",running:"วิ่ง",stopping:"หยุด",stopped:"หยุด",error:"ข้อผิดพลาด",deleting:"ลบออก",corrupted:"เสียหาย",purchasing:"กำลังรอการซื้อ",purchased:"ซื้อแล้ว",verifying:"ตรวจสอบการซื้อ",resource:"ทรัพยากร",failWithOldVersion:"เวอร์ชันใหม่ไม่สามารถเริ่มทำงานได้, Blocklet กำลังทำงานบนเวอร์ชันเก่า",hasSomeErrors:"{blocklets} ยังไม่ทำงานเต็มที่ อาจเกิดจากปัญหาหรือรอการเริ่มต้น."},list:{download:"ดาวน์โหลด",star:"ดาว",searchPlaceholder:"ค้นหาโดยชื่อบล็อกเล็ตหรือ DID"},component:{container:"การตั้งค่าทั่วโลก",showContainer:"แสดงการกำหนดค่าทั่วไป",didSpaceConfig:"ตั้งค่า DID Spaces",didSpaceConfigTip:"กรุณาทำการสมัครใช้งานต่อได้ด้านล่างเพื่อเก็บข้อมูลแอพลิเคชันในพื้นที่ DID",didSpaceConnected:"การอนุญาตการเก็บรักษาไปยัง: {endpoint}",checkUpdateTitle:"ตรวจสอบการอัปเดต",updateTitle:"อัพเดตองค์ประกอบ",noUpdate:"ไม่มีส่วนประกอบที่ต้องอัปเดต",add:"เพิ่มคอมโพเนนต์",selectComponent:"เลือกบล็อกเล็ท",selectRegistry:"เลือก Blocklet Store",selectRegistryTip:"คุณสามารถสลับร้านค้าบล็อกเพื่อดูส่วนประกอบเพิ่มเติมได้",selectInstance:"เลือกInstance",selectInstanceTip:"คุณสามารถเลือกอินสแตนซ์ที่มีอยู่หรือสร้างอินสแตนซ์ใหม่ได้ อินสแตนซ์ที่มีอยู่จะใช้การกำหนดค่าและข้อมูลที่บันทึกไว้ก่อนหน้านี้",newInstance:"สร้างอินสแตนซ์ใหม่",noComponent:"ไม่มีส่วนประกอบ",mountPoint:"จุดเชื่อมต่อคืออะไร?",mountPointTip:"หากคุณตั้งจุดแนบเป็น '/my-prefix' แล้วคำขอทั้งหมดที่เริ่มต้นด้วยจุดแนบนั้นจะถูกนำไปหาส่วนประกอบที่เลือก",delete:"ลบส่วนประกอบ",deleteDescription:"เมื่อลบออกแล้วจะไม่สามารถเข้าถึงได้ ยืนยันการลบหรือไม่?",purchase:"ต้องชำระเงิน",tip:{stopBlocklet:"กรุณาหยุดการทำงาน Blocklet ก่อน",requiredBy:"ส่วนนี้จำเป็นต้องใช้โดย {name}"},choose:"เลือก",addWithName:"เพิ่ม Blocklet ใน {name}",installingCanCloseWindowTip:"กำลังติดตั้งองค์ประกอบในพื้นหลัง คุณสามารถปิดหน้าต่างนี้ได้อย่างปลอดภัย",installSuccessTip:"ขอแสดงความยินดี ส่วนประกอบได้รับการติดตั้งเรียบร้อยแล้ว!",missDownloadTokenTip:"ไม่สามารถเพิ่มส่วนประกอบที่มีการชำระเงินได้โดยไม่มีโทเค็นการดาวน์โหลดที่ถูกต้อง",purchaseComponentSecondCheckTip:"โปรดแสดง NFT การซื้อ Blocklet เพื่อดำเนินการต่อ",installComponentError:"เกิดข้อผิดพลาดในการติดตั้งองค์ประกอบ โปรดลองอีกครั้ง",downloadComponentError:"เกิดข้อผิดพลาดในการดาวน์โหลดคอมโพเนนต์ โปรดลองอีกครั้ง",addComponentTip:{introduction:"ยินดีต้อนรับสู่ตัวช่วยสร้างส่วนควบคุมใหม่",isPurchase:"คุณต้องตรวจสอบ NFT ก่อนใช้ <b>{name}</b> เป็นส่วนประกอบ",belowInformation:"ด้านล่างคือข้อมูลสำหรับส่วนประกอบ:",verifyNFT:"โปรดเลือกวิธีการตรวจสอบ NFT",config:"กรุณากรอกการกำหนดค่าของคอมโพเนนต์",environment:"กรุณากรอกสภาพแวดล้อมขององค์ประกอบ",fromUrl:"เพิ่มบล็อคล็อตจาก URL",fromUpload:"เพิ่ม Blocklet จากการอัปโหลด",uploadFailed:"อัปโหลดล้มเหลว",allowedFileTypes:"ประเภทไฟล์ที่อนุญาตให้ upload: {types}"},addNext:"เพิ่ม {name}",upgradeNext:"อัพเกรด {name}",setting:"การตั้งค่า",noDependencies:"{name} ไม่มีความขึ้นอยู่กับอะไร",relatedComponents:"บล็อกเล็ตที่เกี่ยวข้อง",required:"ต้องการ",installed:"ติดตั้ง",installingTip:"กำลังติดตั้งส่วนประกอบ โปรดรอสักครู่... ",upgrade:"อัพเกรด",upgradeAvailable:"มีการอัปเกรดให้ใช้งาน",needBuy:"จำเป็นต้องซื้อ",isOfficial:"ได้รับการรับรองอย่างเป็นทางการ"},router:{urlPath:"URL Path",noRunning:"บล็อกเลตไม่ได้เริ่มทำงานในปัจจุบัน ไม่สามารถเข้าถึงผ่านทางที่อยู่ต่อไปนี้ได้!",securitySetting:"ตั้งค่าความปลอดภัย",checkUrlAccessible:"ตรวจสอบความสามารถในการเข้าถึงของที่อยู่",urlInaccessible:"อาจเกิดจากปัญหาเน็ตเวิร์ค ที่อยู่ไม่สามารถเข้าถึงได้ชั่วคราว",noAccessibleUrl:"URL ไม่สามารถเข้าถึงได้",domainLockTooltip:"โดเมนที่ระบบสร้างขึ้นไม่สามารถแก้ไขได้",urlLockTooltip:"ไม่สามารถแก้ไขเส้นทาง URL ที่ระบบสร้างขึ้นได้",showAllDomains:"แสดงโดเมนทั้งหมด",showAllDIDs:"แสดง DIDs ทั้งหมด",currentDomainTip:"คุณกำลังเข้าถึงหน้าปัจจุบันผ่านโดเมนนี้"},export:{title:"ส่งออก Blocklet",name:"ชื่อของ Bundle",nameTip:"ตัวอย่าง 'my-blocklet-name' หรือ '@my-scope/blocklet-name'",result:"ที่จะตามมาคืออะไร",exportSource:"ส่งออกที่มา",success:"ส่วนปิดถูกส่งออกสำเร็จ",resultTipStart:"กับ",resultTipEnd:"คุณสามารถสร้างและเผยแพร่บล็อกเล็ตนี้ภายในไม่กี่นาที",uploadedComponentTip:"ไม่สามารถส่งออกส่วนประกอบที่อัพโหลดโดยตรงได้:"},migrate:{title:"โอนย้ายแอปพลิเคชัน",scan:"เชื่อมต่อกระเป๋าเงิน DID เพื่อสร้างคีย์เพื่อแอปพลิเคชันนี้",confirm:"ตรวจสอบการดำเนินการนี้ในกระเป๋าเงินดิจิทัลของคุณ",success:"แอปพลิเคชันของคุณถูกย้ายเรียบร้อยแล้วหน้าจะรีเฟรชใหม่ในอีก {sec} วินาที",intro:{l1:"คลิกที่นี่",l2:"ในการย้ายแอปพลิเคชันของคุณไปยังเวอร์ชันใหม่ (การเปลี่ยนแปลงถูกระงับก่อนกำหนดเสร็จสิ้นการย้าย)",l3:"แอปพลิเคชัน DID จะถูกควบคุมอย่างเต็มที่จากกระเป๋าเงิน DID ของคุณ.",l4:"ข้อมูลแอปพลิเคชันจะถูกย้ายและไม่จำเป็นต้องทำการเปลี่ยนแปลงต่อไป",l5:"โครงสร้างแอปพลิเคชั่นใหม่จะช่วยให้คุณมีความยืดหยุ่นมากขึ้นเมื่อต้องเปลี่ยนส่วนประกอบ",l6:"4. โปรดอย่าเปลี่ยนจุดติดตั้งของส่วนเสริมก่อนที่จะเปิดตัวเวอร์ชันใหม่ของส่วนเสริม"},tip:{duplicate:"ค้นหาองค์ประกอบที่ซ้ำกัน {name} โปรดลบองค์ประกอบที่ไม่เกี่ยวข้องและโยกย้ายอีกครั้ง",running:"โปรดหยุดบล็อกเล็ตก่อนการย้าย"}},error:{isRunning:"Blocklet กำลังทำงาน โปรดหยุดก่อน",isInProgress:"Blocklet กำลังดำเนินการ โปรดรอให้เสร็จสิ้น"},publish:{createResource:"สร้างทรัพยากร",addResource:"เพิ่มการเผยแพร่",productTitle:"ผลิตภัณฑ์",versionTitle:"การเปลี่ยนเวอร์ชัน",imgTitle:"ภาพ",resourceTitle:"เนื้อหา",blockletEmptyTip:"ไม่มี Blocklets ที่นี่",createBlockletTip:"คุณสามารถสร้างบล็อกเล็ตใหม่ผ่านทรัพยากรที่มีอยู่และองค์ประกอบในแอปพลิเคชันนี้ได้",createBlocklet:"บล็อกใหม่",componentNotRunning:"Blocklet {name} ไม่ทำงาน โปรดเริ่มใช้งานก่อน",releaseEmptyTip:"ไม่มีการเผยแพร่ที่นี่",createReleaseTip:"คุณสามารถสร้างการเปิดตัวของโบล็กเล็ตพร้อมกับบันทึกการเปิดตัวและทรัพยากรสำหรับผู้อื่นที่ต้องการใช้",createRelease:"สร้างการปล่อย",deleteReleaseTip:"ไม่สามารถกู้คืนการเผยแพร่หลังจากการลบ",createBlockletDid:"สร้างจากกระเป๋าเงินดิจิทัล",createReleaseSuccess:"สร้างการเผยแพร่เรียบร้อยแล้ว",saveDraftSuccess:"ร่างได้บันทึกเรียบร้อยแล้ว",connect:{title:"สร้าง Blocklet DID",scan:"ใช้เมธอดต่อไปนี้เพื่อสร้าง Blocklet DID",confirm:"ยืนยันโดยใช้กระเป๋าเงิน DID",success:"สร้าง DID Blocklet เรียบร้อยแล้ว โปรดดำเนินการต่อ"},saveDraft:"บันทึกแบบร่าง",releaseNote:"บันทึกการเปิดตัว",errorTip:{noDid:"Blocklet DID จำเป็นต้องใช้",noTitle:"ต้องระบุชื่อบล็อก",noVersion:"ต้องใช้เวอร์ชัน Blocklet",noDescription:"คำอธิบาย Blocklet จำเป็น",noNote:"ต้องใช้หมายเหตุรุ่น",inValidVersion:"รุ่นบล็อกที่ไม่ถูกต้อง",noResource:"โปรดเลือกอัปโหลดทรัพยากรเพื่อรวมอยู่ในบล็อกเล็ท",noFirstDid:"โปรดสร้าง Blocklet DID ก่อน",invalidUrl:"โปรดใส่ URL ที่ถูกต้อง",invalidUrlOrEmail:"โปรดใส่ URL หรืออีเมลที่ถูกต้อง"},packTip:"ปัจจุบัน บล็อกเล็ตสามารถติดตั้งเป็นแอปพลิเคชันโดยตรงได้ เราจะรวมองค์ประกอบและการกำหนดค่าแอปพลิเคชันโดยอัตโนมัติใน Blocklet",resourceChangedWarning:"คุณได้แก้ไขทรัพยากร โปรดบันทึกเวลาทันที",installResourceTip:"ลิงก์ติดตั้ง:",installResourceTip2:"หากคุณต้องการดูเคล็ดลับเพิ่มเติมโปรดเยือน",installResourceHelp:"เอกสารช่วยเหลือ",componentIncluded:"รวมอยู่ใน",componentForceRequired:"จำเป็น",download:"ดาวน์โหลด {name}",delete:"ลบ {name}",copyInstallUrl:"คัดลอก URL การติดตั้ง",install:"ติดตั้ง {name}",publishToStoreSuccess:"Blocklet ได้รับการเผยแพร่ในร้านค้าเรียบร้อยแล้ว",connectStoreSuccess:"เชื่อมต่อ Blocklet Store สำเร็จ",uploadToStoreSuccess:"อัพโหลด Blocklet เข้าสู่ Store สำเร็จแล้ว คุณต้องเผยแพร่ในร้านค้า",viewLastRelease:"ดูรายการอัพเดตล่าสุด",reconnectStoreTip:"หลังจากเชื่อมต่อใหม่ จะมีนักพัฒนารุ่นใหม่เข้ามาเป็นที่ผูกพัน คุณแน่ใจหรือไม่ว่าต้องการที่จะเชื่อมต่อใหม่หรือไม่?",deleteProject:{title:"ลบ {name}",scan:"ใช้เมธอดต่อไปนี้เพื่อลบ {name}",confirm:"ยืนยันการใช้งานกระเป๋าสตางค์ DID",success:"โครงการ Blocklet ได้ถูกลบแล้ว โปรดดำเนินการต่อ",tip1:"โครงการ Blocklet จะไม่สามารถกู้คืนได้หลังจากการลบ",tip2:"คุณจะไม่สามารถเผยแพร่เวอร์ชันใหม่ไปยังบล็อกเลตที่ถูกลบอีกต่อไปแล้วซึ่งหมายความว่าบล็อกเลตจะไม่ได้รับการอัปเดตต่อไปในร้านค้าอีกต่อไป",tip3:"การลบบล็อกเล็ตจะไม่ส่งผลต่อเวอร์ชันที่เผยแพร่ในร้านค้า",description:"หลังจากลบ Blocklet แล้วคุณจะพบปัญหาต่อไปนี้ คุณแน่ใจหรือว่าต้องการลบหรือไม่?"},resourceTip:"ปัจจุบันเป็นบล็อกทรัพยากร ไม่สามารถติดตั้งโดยตรงจากร้านค้าได้",whyCantSeeInStore:"คุณสามารถเผยแพร่ Blocklet ปัจจุบันบนร้านค้า และสามารถใช้งานได้ทั่วโลก",whyCantSeeResourceBlockletInStore:"คุณสามารถเผยแพร่ Blocklet ปัจจุบันบนสโตร์ได้ และสามารถใช้งานได้ทั่วโลก Blocklets จะถูกซ่อนจากหน้ารายการในสโตร์โดยค่าเริ่มต้น",tenantScope:"ผู้เช่า",blockletStudio:"Blocklet Studio",allComponentsNotRunning:"Blocklets ไม่ได้ทำงาน โปรดเริ่มต้นใช้งานก่อน",resourceEmptyTip:"ไม่มีทรัพยากรที่ใช้ได้",steps:{resources:"โปรดเลือกทรัพยากรที่ต้องการเชื่อมโยงกับ Blocklet ปัจจุบัน เนื่องจากทรัพยากรเหล่านี้จะถูกติดตั้งพร้อมกับ Blocklet.",blocklets:"เลือกบล็อกเล็ตที่ต้องการเชื่อมโยง",version:"ตั้งค่าเวอร์ชันการเปิดตัวและบันทึกการเปลี่ยนแปลง",introduction:"การแนะนำที่ชัดเจนสามารถเน้นความสำคัญของ Blocklet ของคุณได้อย่างมีประสิทธิภาพ คุณสามารถใช้ไวยากรณ์ Markdown เพื่อเขียนและดูตัวอย่างได้",branding:"อธิบายข้อมูลพื้นฐานของ Blocklet ของคุณ ข้อมูลเหล่านี้จะถูกนำเสนอให้ผู้ใช้ในร้านค้า"},branding:"การติดตามแบรนด์",brandingHelp:"ข้อมูลเพิ่มเติมเกี่ยวกับ blocklet จะแสดงในร้านค้า",resourceSelect:"เลือกทรัพยากรจากบล็อกเล็ต",resourceUpload:"อัปโหลดทรัพยากรจากดิสก์ของคุณ (index.html จำเป็นในไฟล์เข้าเก็บ)",deleteStoreTip:"คุณแน่ใจหรือว่าต้องการลบ {name} ออกจากรายการร้านค้าเชื่อมต่อหรือไม่?",disconnectStoreTip:"เมื่อยกเลิกการเชื่อมต่อแล้ว Blocklet จะถูกลบออกจากร้าน คุณแน่ใจไหมว่าต้องการยกเลิกการเชื่อมต่อหรือไม่",connectOrUpload:"เชื่อมต่อหรืออัปโหลด",developerInfo:"ข้อมูลนักพัฒนา",autoUploadTip:"อัปโหลดบล็อกเล็ตไปยังร้านหลังจากการสร้างเสร็จ",possibleSameStoreTip:"ลองแก้ปัญหาบล็อกเล็ตที่ขึ้นอยู่ในร้านค้าเดียวกันก่อนทุกครั้งที่เป็นไปได้",needProjectId:"โปรดสร้างโปรเจกต์ก่อน",projectSettings:"การตั้งค่าโปรเจค",noStoreSelected:"โปรดเลือกหนึ่งในร้านที่มีอยู่หรือเพิ่มร้านใหม่เพื่อดำเนินการต่อ",installToThisServer:"ติดตั้งลงในเซิร์ฟเวอร์นี้",forceResourceBlocklet:"พลังกำหนดเป็น Blocklet อ้างอิงถึงทรัพยากร",resourceDocker:"สร้าง Blocklet จาก Docker",resourceSelectTitle:"ทรัพยากร",resourceUploadTitle:"อัปโหลด",resourceDockerTitle:"Docker",resourceDockerInputTip:"กรุณาใส่คำสั่ง docker run",docker:{pleaseInputDockerCommand:"กรุณาใส่คำสั่ง docker run",volumeTip:"Volume ต้องเริ่มต้นด้วย $BLOCKLET_DATA_DIR หรือ $BLOCKLET_APP_DIR",volumeTip2:'ปริมาตรไม่สามารถมี ".." ได้',noAllowTheArg:"ไม่อนุญาตให้ใช้ argument ในคำสั่ง docker run",needCustomInput:"ตั้งค่าเมื่อติดตั้ง blocklet",dockerParams:"พารามิเตอร์ Docker",dockerCommand:"คำสั่ง Docker",dockerImageName:"ชื่อ Docker Image",addItem:"เพิ่มพารามิเตอร์การรัน Docker",envKey:"คีย์ของตัวแปรสภาพแวดล้อม",publishTips:"พอร์ตภายนอกสุดท้ายจะถูกกำหนดโดยอัตโนมัติโดย blocklet",volumeTips:"โวลุ่มต้องเริ่มด้วย $BLOCKLET_DATA_DIR หรือ $BLOCKLET_APP_DIR",modifyParam:"แก้ไขพารามิเตอร์การรัน Docker",modifyEnv:"แก้ไขตัวแปรสภาพแวดล้อม",paramDetail:"รายละเอียด Param",description:"คำอธิบาย",secure:"ปลอดภัย",shared:"แชร์แล้ว",required:"จำเป็นต้อง",prefix:"คำนำหน้า",path:"เส้นทาง",name:"ชื่อ",portType:"ประเภทพอร์ต",dockerImageNameError:"ชื่อ Docker Image ต้องไม่มีช่องว่าง",autoGenerated:"สร้างอัตโนมัติ",dockerCMDError:"Docker CMD รองรับเฉพาะอักขระอย่างง่าย",proxyBehavior:"พฤติกรรมพร็อกซี",serviceProxy:"บริการ",directProxy:"โดยตรง",nextTab:"แยกวิเคราะห์คำสั่ง"},storeRule:{maxImageCount:"ร้านค้าอนุญาตให้ใช้ภาพหน้าจอได้มากที่สุด {max} ภาพ",minImageCount:"ร้านค้าต้องการอย่างน้อย {min} {unit}.",minImageSize:"ขนาดภาพหน้าจอ {name} ต้องอย่างน้อย {width}x{height}.",logoFormat:"รูปแบบรูปภาพโลโก้รองรับเฉพาะ [{format}] เท่านั้น.",warning:"คำเตือน",screenshot:"ภาพหน้าจอ",screenshots:"ภาพหน้าจอ",first:"อันดับ 1",second:"ที่ 2",third:"ที่ 3"},store:"ร้าน Blocklet",endpoint:{tab:"Blocklet ระยะไกล",uploadToEndpoint:"คุณสามารถอัปโหลด Blocklet ปัจจุบันไปยัง Blocklet ที่ระบุได้",addEndpoint:"เพิ่ม Blocklet Endpoint",urlEmpty:"URL จุดสิ้นสุดไม่สามารถเว้นว่างได้",addFailed:"เพิ่ม Blocklet Endpoint ล้มเหลว:",deleteEndpoint:"ลบ Blocklet Endpoint",deleteDesc:'ยืนยันการลบ endpoint Blocklet {name} หรือไม่ <br/><span style="color: {color}">*หลังจากลบ endpoint Blocklet นี้แล้ว คุณจะไม่สามารถอัปเดตแอปที่ติดตั้งจาก endpoint Blocklet นี้ได้ เว้นแต่คุณจะเพิ่มเข้าไปอีกครั้ง</span>',confirmDesc:"กรุณากรอก {name} เพื่อลบ",visitEndpoint:"เยี่ยมชม Blocklet",disconnectEndpointTip:"คุณแน่ใจหรือไม่ว่าต้องการยกเลิกการเชื่อมต่อ {url}? หลังจากยกเลิกการเชื่อมต่อแล้ว Blocklet จะไม่ถูกอัปโหลดไปยังจุดสิ้นสุดนี้",deleteFailed:"ลบ Blocklet Endpoint ไม่สำเร็จ",publishToEndpointSuccess:"เผยแพร่ Blocklet ไปยัง Endpoint สำเร็จแล้ว",uploadToEndpointSuccess:"อัปโหลด Blocklet ไปยัง Endpoint สำเร็จแล้ว"},autoPublishErrorTip:"เผยแพร่โดยอัตโนมัติไปยัง {storeName} ล้มเหลว: {error}",singleton:"มีเพียงอินสแตนซ์เดียว",singletonTip:"เมื่อโหมด Singleton ถูกเปิดใช้งาน แอปพลิเคชันไม่สามารถรันอินสแตนซ์หลายตัวพร้อมกัน. เพราะแอปของคุณใช้โหมด Singleton การปรับใช้แบบ blue-green ไม่สามารถใช้สำหรับการอัปเดตหรือการรีสตาร์ท"},titleValidationError:"ความยาวชื่อเรื่องต้องอยู่ระหว่าง 3 ถึง 20 ตัวอักษร",descriptionValidationError:"ความยาวของคำอธิบายต้องอยู่ระหว่าง 3 และ 80 ตัวอักษร",whyNeedAppPid:"หากแอปพลิเคชันของคุณได้รับการโยกย้ายมา DID ถาวรคือ DID ที่สร้างขึ้นเมื่อติดตั้ง Blocklet นี้เริ่มแรก",usingDocker:"Blocklet นี้จะทำงานโดยใช้ docker",gotoVisitError:"ไม่สามารถเข้าถึง URL ของ Blocklet ได้ โปรดลองใหม่อีกครั้งในภายหลัง",usingIsolation:"Blocklet นี้จะทำงานโดยใช้การแยกโครงข่าย",dockerImage:"สนับสนุน Docker",mountPoint:{description1:"การเปลี่ยนแปลงนี้อาจทำให้ URL ที่มีจุดเชื่อมต่อแบบเก่าเสียหาย ซึ่งอาจนำไปสู่:",case1:"การอ้างอิงทรัพยากรที่เสียหายระหว่าง Blocklets ในแอปนี้",case2:"URL เสีย หากคุณได้แชร์ไปแล้วในที่สาธารณะ",description2:"คุณสามารถตั้งค่าการเปลี่ยนเส้นทางจากจุดเชื่อมต่อเก่าไปยังจุดเชื่อมต่อใหม่เพื่อลดผลกระทบจากการเปลี่ยนแปลงที่อาจเกิดขึ้นได้"},skSourceMigratedTip:"แอปนี้เปิดตัวด้วยกระเป๋าเงินที่จัดการโดยเซิร์ฟเวอร์ และได้ย้ายไปใช้ DID Wallet เพื่อความปลอดภัยที่ดีขึ้น",skSourceManagedTip:"แอปนี้กำลังทำงานอยู่กับวอลเล็ตที่จัดการโดยเซิร์ฟเวอร์ โปรดโยกย้ายไปยัง DID Walletโดยเร็วที่สุดเพื่อความปลอดภัยที่ดีขึ้น",zeroDowntime:"ไม่มีการหยุดทำงาน"},dashboard:{nodeDid:"โหนด",ownerDid:"เจ้าของ",routingEngine:"เครื่องยนต์เส้นทาง",ownerNftURL:"เจ้าของ NFT",expirationLeft:"การหมดอายุที่เหลืออยู่",startFromCrashTip:"Blocklet Server ไม่ออกอย่างปกติครั้งล่าสุด โปรดเริ่ม blocklets ที่ต้องรันด้วยตนเอง",runtimeConfig:{blockletMaxMemoryLimit:"ขีด จำกัด ความจำสูงสุด ของ Blocklet",daemonMaxMemoryLimit:"ขีดจำกัดความจำสูงสุดของเซิร์ฟเวอร์"},document:"เรียนรู้เพิ่มเติมในเอกสารของเรา",database:"ฐานข้อมูล"},store:{nameSort:"ชื่อ",popularSort:"ความนิยม",headerDescription:"ค้นหาและติดตั้ง Blocklets ของคุณ",detail:{purchase:"ซื้อ {name}",open:"เปิด {name}",install:"ติดตั้ง {name}",upgrade:"อัพเกรด {name}",empty:"ไม่มีการแนะนำ"},blockletRegistry:{changeFailed:"การเปลี่ยนแปลงร้านค้าบล็อกล้มเหลว:",addFailed:"เพิ่มบล็อกเก็ตสโตร์ล้มเหลว: {name}",editFailed:"การแก้ไขร้านค้า Blocklet ล้มเหลว",switchRegistry:"สลับบล็อกเล็ตร้านค้า",addRegistry:"เพิ่ม Blocklet Store",editRegistry:"แก้ไข Blocklet Store",deleteRegistry:"ลบ Blocklet Store",haveSameRegistry:"ร้านค้าบล็อกเดียวกันมีอยู่",registryName:"ชื่อร้านค้าบล็อกเล็ต",registryUrl:"URL ร้านค้า Blocklet",registryNameEmpty:"ชื่อร้านค้า Blocklet ต้องไม่เป็นค่าว่าง",registryUrlEmpty:"URL ร้านค้า Blocklet ต้องไม่ว่างเปล่า",deleteDesc:"ยืนยันการลบบล็อกเล็ตสโตร์ {name} ?",confirmDesc:"โปรดป้อน {name} เพื่อลบ"},purchase:{title:"ซื้อ {name}",confirmed:"การซื้อ NFT ของคุณได้รับการตรวจสอบแล้ว",declined:"คุณไม่ได้ให้การซื้อ NFT blocklet ที่ถูกต้อง",waiting:"กำลังรอการซื้อครบ...",purchase:{title:"การซื้อ NFT",description:"ชำระเครื่องหมายบางส่วนก่อนติดตั้งบล็อคเล็ทนี้หากคุณยังไม่ได้ซื้อบล็อคเล็ทนี้"},verify:{title:"ตรวจสอบ NFT",description:"NFT ของคุณจะถูกตรวจสอบก่อนการติดตั้ง blocklet นี้หากคุณซื้อและถือ NFT การซื้อไว้ในกระเป๋า DID ของคุณ",auth:{title:"ต้องใช้ข้อมูลรับรองการซื้อ",scan:"เชื่อมต่อกระเป๋าเงินดิจิทัล (DID Wallet) เพื่อการซื้อ NFT บล็อกเล็ต",confirm:"กรุณาตรวจสอบการดำเนินการนี้ในกระเป๋าเงินจาก DID ของคุณ",success:"การซื้อ NFT ของคุณได้รับการยืนยันและการติดตั้งได้เริ่มต้น"}},auth:{title:"ซื้อ {name}",scan:"สแกนคิวอาร์โค้ดด้านล่างด้วยกระเป๋าเงินดิจิตอลของคุณ",confirm:"ยืนยันในบัญชีของคุณ",success:"การซื้อ NFT ถูกส่งไปยังกระเป๋าเงิน DID ของคุณ"},launch:"เริ่มทำงาน {name}",autoLaunch:"{name} ซื้อสินค้าเรียบร้อยแล้ว กำลังเปลี่ยนเส้นทางไปยังหน้าเริ่มต้น..."},tooltip:{upgradeServer:"Blocklet ต้องใช้ Blocklet Server เวอร์ชัน {version} ในขณะที่ Blocklet Server เวอร์ชันปัจจุบันคือ {serverVersion}"}},setting:{saveSuccess:"บันทึกการตั้งค่าสำเร็จแล้ว",unSavedTip:'มีการเปลี่ยนแปลงที่ยังไม่ได้บันทึก กรุณาคลิก "บันทึกการเปลี่ยนแปลง" เพื่อบันทึก',unSavedLeaveTip:"มีการเปลี่ยนแปลงที่ยังไม่ได้บันทึก แน่ใจหรือว่าต้องการออกจากหน้าจอนี้?",form:{name:"ชื่อเซิร์ฟเวอร์ของคุณ",nameRequired:"จำเป็นต้องระบุคำอธิบายเซิร์ฟเวอร์",namePlaceholder:"ชื่อเซิร์ฟเวอร์",description:"บรรยายเซิร์ฟเวอร์ของคุณ",descriptionHolder:"คำอธิบายเซิร์ฟเวอร์",descriptionRequired:"คำอธิบายของเซิร์ฟเวอร์จำเป็น",domain:"ชื่อโดเมนเซิร์ฟเวอร์ของคุณ",domainPlaceholder:"ชื่อโดเมนเซิร์ฟเวอร์",domainRequired:"ต้องการโดเมนเซิร์ฟเวอร์",ipPlaceholder:"IP",ipRequired:"ต้องใส่ IP",registry:"ร้านค้าบล็อกเล็ต",registryPlaceholder:"ร้านค้าบล็อกเล็ตเพื่อดึงบล็อกเล็ต",registryRequired:"ต้องมีร้านค้า Blocklet",registerUrl:"URL ของ Blocklet Launcher",registerUrlPlaceholder:"ใส่ URL ของ Blocklet Launcher ที่คุณต้องการ, คุณสามารถใช้รุ่นทางการได้อย่างปลอดภัย",webWalletUrl:"URL กระเป๋าเงินดิจิทัล",webWalletUrlPlaceholder:"โปรดใส่ URL ของ 'กระเป๋าเงิน DID' ที่คุณโฮสต์ไว้ คุณสามารถใช้อันเป็นทางการได้อย่างปลอดภัย",nftDomainUrl:"URL โดเมน NFT",nftDomainUrlPlaceholder:'โปรดป้อน URL ของโดเมน "NFT" ที่คุณเป็นเจ้าของอย่างถูกต้อง คุณสามารถใช้เว็บไซต์อย่างเป็นทางการได้อย่างปลอดภัย',enableWelcomePage:"เปิดใช้หน้าต้อนรับ",welcome:{switchLabel:"หน้าต้อนรับ"},upgrade:{title:"อัปเกรดเซิร์ฟเวอร์ Blocklet เป็นเวอร์ชัน {version}",description:"ระหว่างการอัปเกรด, เซิร์ฟเวอร์ Blocklet ของคุณจะเข้าสู่โหมดการบำรุงรักษาเป็นเวลาหลายนาทีในขณะที่การอับเดตเสร็จสิ้น",dialog:'คลิกที่ "ยืนยัน" เพื่อติดตั้งการอัปเดต โปรแกรมบล็อกเล็ตเซิร์ฟเวอร์จะเข้าสู่โหมดการบำรุงรักษาจนกว่าการอัปเดตจะเสร็จสิ้นและกลับมาสู่โหมดการผลิตอัตโนมัติ',confirm:"อัพเกรด",switchLabel:"ตรวจสอบการอัปเดตอัตโนมัติ",enableBetaRelease:"เปิดใช้งานเบต้ารีลีส",setup:"กำลังเตรียมการอัปเกรด",installing:"กำลังติดตั้งเซิร์ฟเวอร์ Blocklet v{version}",restarting:"เริ่มใช้งานเซิร์ฟเวอร์ Blocklet",cleanup:"กำลังย้ายข้อมูลเซิร์ฟเวอร์ Blocklet",verifying:"กำลังตรวจสอบเซิร์ฟเวอร์ Blocklet v{version}",rollback:"เซิร์ฟเวอร์ Blocklet การกลับสุ่ม",complete:"อัพเกรดเสร็จสมบูรณ์!",progress:"อัพเกรด {name}",check:"ตรวจสอบการอัพเดต",latest:"คุณกำลังใช้เวอร์ชันล่าสุด"},restart:{title:"เริ่มต้นเซิร์ฟเวอร์ Blocklet",description:"ระหว่างการรีสตาร์ท แผนการบริการ Blocklet ของคุณจะเข้าสู่โหมดการบำรุงรักษาในขณะที่การรีสตาร์ทเสร็จสิ้น",dialog:'คลิก "ยืนยัน" เพื่อเริ่มต้นใหม่ Blocklet Server จะเข้าสู่โหมดการบำรุงรักษาจนกระทั่งการเริ่มต้นใหม่เสร็จสิ้นและกลับสู่โหมดการผลิตโดยอัตโนมัติ',confirm:"เริ่มต้นใหม่",setup:"กำลังเตรียมเริ่มต้นใหม่",verifying:"กำลังตรวจสอบเซิร์ฟเวอร์ Blocklet",restarting:"บังคับเริ่มใช้งานเซิร์ฟเวอร์บล็อกเล็ต",cleanup:"ตรวจสอบให้แน่ใจว่าทุกอย่างเป็นไปด้วยความสบายดี",rollback:"ทำความสะอาดสถานะสกปรก",complete:"รักษาความสมบูรณ์!",progress:"การเริ่มต้นใหม่ {name}"},register:{title:"ลงทะเบียน Blocklet Launcher",description:"เมื่อเพิ่มแล้วคุณสามารถเปิดใช้งาน blocklets ไปยังเซิร์ฟเวอร์ blocklet นี้จาก {url} ได้",button:"ลงทะเบียน"},monitor:{diskThreshold:"ส่งการแจ้งเตือนเมื่อการใช้งานดิสก์เกิน (%)",diskThresholdPlaceholder:"กรุณาระบุเกณฑ์คำเตือนการใช้ดิสก์"},security:{switchLabel:"การแยกฟิล์ซัสเต็ม",switchTips:"หลังจากที่ปิดตัวเลือกนี้ลง ไฟล์ระบบของ Blocklet จะไม่อยู่ในโหมดกักกันอีกต่อไป ซึ่งอาจเสี่ยงต่อซอฟต์แวร์ที่เป็นอันตรายทำให้ระบบไฟล์เสียหาย",warningTips:"คุณสมบัติการแยกระบบไฟล์ไม่สามารถทำงานได้ โปรดอัปเกรดเวอร์ชัน node.js (เวอร์ชันปัจจุบันคือ {version}) เป็นเวอร์ชัน v21.6.0 หรือสูงกว่า"},docker:{switchLabel:"รัน Blocklets ในคอนเทนเนอร์",switchTips:"หลังจากเปิดใช้งานตัวเลือกนี้ blocklets จะทำงานโดยใช้คอนเทนเนอร์ซึ่งสามารถเพิ่มความปลอดภัยของเซิร์ฟเวอร์โดยรวม",notInstalled:"ไม่สามารถเปิดใช้งานคอนเทนเนอร์เนื่องจาก Docker ไม่ได้ติดตั้งหรือขาดสิทธิ์ที่จำเป็นในการดำเนินการ",needCloseFileSystemIsolation:"การแยกระบบไฟล์และโหมดคอนเทนเนอร์ด็อกเกอร์ไม่สามารถเปิดใช้งานได้พร้อมกัน"},dockerNetwork:{switchLabel:"การแยกเครือข่ายคอนเทนเนอร์",switchTips:"หลังจากเปิดใช้งานตัวเลือกนี้แล้ว Blocklet จะทำงานในลักษณะที่ปลอดภัยยิ่งขึ้น: Blocklet จะไม่สามารถเข้าถึงเซิร์ฟเวอร์ Blocklet หรือ Blocklet อื่นๆ ทั่วทั้งแอปพลิเคชัน",needEnableDocker:"ต้องเปิดใช้งาน Container mode đểเปิดใช้งานการแยกเครือข่าย"},restartAllContainers:{title:"รีสตาร์ททุกคอนเทนเนอร์",description:"รีสตาร์ททุกคอนเทนเนอร์และรักษา blocklets ให้ทำงานต่อไป",dialog:'คลิก "ยืนยัน" เพื่อรีสตาร์ท blocklets ทั้งหมดในคอนเทนเนอร์และรักษาสถานะการทำงานของ blocklets',confirm:"เริ่มต้นใหม่",setup:"กำลังเตรียมการรีสตาร์ท",verifying:"กำลังตรวจสอบ Server Blocklet",restarting:"เริ่มต้นคอนเทนเนอร์ทั้งหมดใหม่ในพื้นหลัง",cleanup:"ตรวจสอบให้แน่ใจว่าทุกอย่าง OK",rollback:"ล้างสถานะที่สกปรก",complete:"การบำรุงรักษาเสร็จสมบูรณ์!",progress:"กำลังเริ่มต้นใหม่ทุกคอนเทนเนอร์ในพื้นหลัง"},restartAllBlocklet:{title:"รีสตาร์ท Blocklets ทั้งหมด",description:"รีสตาร์ท Blocklets ทั้งหมดที่กำลังทำงานหรือมีข้อผิดพลาดบนเซิร์ฟเวอร์นี้",dialog:'คลิก "ยืนยัน" เพื่อรีสตาร์ท blocklets ทั้งหมดในพื้นหลัง',confirm:"รีสตาร์ท",setup:"กำลังเตรียมการรีสตาร์ท",verifying:"กำลังตรวจสอบ Blocklet Server",restarting:"กำลังเริ่มต้น Blocklets ที่กำลังทำงานหรือมีข้อผิดพลาดในพื้นหลังใหม่",cleanup:"ตรวจสอบให้แน่ใจว่าทุกอย่างเรียบร้อย",rollback:"ล้างสถานะที่สกปรก",complete:"การบำรุงรักษาเสร็จสมบูรณ์!",progress:"เริ่มต้น Blocklets ทั้งหมดที่ทำงานอยู่หรือมีข้อผิดพลาดใหม่ในพื้นหลัง"},enableSessionHardening:{switchLabel:"เปิดใช้งานการเพิ่มความแข็งแกร่งของเซสชัน",switchTips:"หลังจากเปิดใช้งานตัวเลือกนี้ การดำเนินการเปลี่ยนแปลงจะต้องการการยืนยันที่เข้มงวด ซึ่งสามารถปรับปรุงความปลอดภัยโดยรวมของเซิร์ฟเวอร์"}},accessKey:{accessKeyId:"รหัสประจำตัวคีย์การเข้าถึง",lastUsed:"ใช้ล่าสุดเมื่อ",tip:"กรุณากรอกชื่อสำหรับคีย์การเข้าถึงนี้",saveSecretTip:"นี่คือครั้งเดียวที่คีย์ลับการเข้าถึงของคุณสามารถมองเห็นได้และไม่สามารถกู้คืนได้ อย่างไรก็ตามคุณสามารถสร้างคีย์การเข้าถึงใหม่ได้ทุกเมื่อ",iKnow:"ฉันได้คัดลอกและบันทึกคีย์ลับการเข้าถึงแล้ว",showSecret:"แสดงคีย์เข้าถึงลับ",hideSecret:"ซ่อนความลับ",title:"ลบกุญแจการเข้าถึง",descriptionNoTime:"การดำเนินการนี้จะลบกุญแจการเข้าถึง {key} ด้วยชื่อ {name} ที่ยังไม่เคยถูกใช้งานมาก่อน",description:"การดำเนินการนี้จะลบคีย์เข้าถึง {key} ทิ้งไปอย่างถาวรที่มีชื่อ {name}, ซึ่งใช้ครั้งสุดท้ายเมื่อเวลา {time}, {timeAge}",confirm_desc:"โปรดป้อน {name} เพื่อลบ",remark:"ชื่อคีย์การเข้าถึง",remarkInvalid:"ต้องระบุชื่อคีย์เข้าถึง",passport:"เลือกหนังสือเดินทางสำหรับกุญแจการเข้าถึงเพื่อให้หรือจำกัดสิทธิ์",expireTime:"ตั้งวันที่หมดอายุสำหรับคีย์การเข้าถึงเพื่อความปลอดภัยที่ดีขึ้น",authType:"ประเภทการตรวจสอบสิทธิ์",resourceType:"ประเภททรัพยากร",resourceId:"รหัสทรัพยากร",component:"ส่วนประกอบ",expired:"{time} หมดอายุ",accessKeySecret:"คีย์การเข้าถึงลับ",simple:"ง่าย",signature:"ลายเซ็น",signatureDesc:"มาตรฐานความปลอดภัยระดับองค์กรโดยใช้การเข้ารหัส ต้องการการรวมรหัสกับ SDK (@blocklet/server-js) เหมาะสำหรับสถานการณ์ที่มีความต้องการด้านความปลอดภัยสูงและการส่งข้อมูลที่สำคัญ",simpleDesc:"กลไกโทเค็น Bearer ที่เบาบาง คล้ายกับ OpenAPI Key รองรับการเรียก API RESTful และการผสานรวมบริการของบุคคลที่สาม ไม่ต้องเขียนโค้ด การผสานรวมอย่างรวดเร็วผ่าน HTTP Header เหมาะสำหรับการพัฒนาอย่างรวดเร็ว",viewSecret:"คุณสามารถเข้าถึงคีย์ลับได้ในภายหลังในหน้ารายละเอียดของคีย์การเข้าถึง",usage:"การใช้งาน",listTitle:"จัดการการเข้าถึง API ที่ปลอดภัยด้วย Access Keys",tooltipTitle:"สร้างและจัดการข้อมูลประจำตัวที่อนุญาตให้ระบบที่เชื่อถือได้โต้ตอบกับแอปของคุณโดยโปรแกรม คีย์การเข้าถึงช่วยให้สามารถทำงานอัตโนมัติได้อย่างปลอดภัยและการผสานรวมที่ราบรื่นทั่วทั้งเครื่องมือและบริการของคุณ"},webhook:{add:"เพิ่มการผสานรวม",delTitle:"ลบการรวม",requiredError:"โปรดระบุ {type} ที่ถูกต้อง",confirm_desc:"กรุณาใส่ {name} เพื่อลบ",test:"ทดสอบ",description:"การนี้จะลบการรวมกับ ID {id} อย่างถาวร",columns:{description:"สวัสดี, ID",params:"พารามิเตอร์",createdAt:"สร้างเมื่อ"},testSuccess:"ส่งข้อความทดสอบสำเร็จ",duplicateError:"URL มีอยู่แล้ว",updateSuccess:"อัปเดตสถานะสำเร็จแล้ว"},dns:{step1Title:"เข้าสู่ระบบผู้ให้บริการโดเมนของคุณ",step1Desc1:"เข้าสู่ระบบ registrar โดเมนของคุณ ค้นหาหน้าการจัดการโดเมน และค้นหาหน้าการตั้งค่าชื่อเซิร์ฟเวอร์ คุณสามารถค้นหา registrar โดเมนของคุณได้ที่",step2Title:"2. ค้นหาการตั้งค่า DNS สำหรับ {url}",step2Desc:'สิ่งนี้อาจเรียกว่า "การจัดการ DNS", "การตั้งค่าขั้นสูง", หรือทำนองนั้น',step3Title:"3. เพิ่มเร็กคอร์ด DNS ต่อไปนี้",step3Desc:'ชื่ออาจเรียกว่า "host", "hostname" หรือ "alias"'},domain:{addingDomain:"กำลังเพิ่มโดเมน...",checkingResolvable:"กำลังตรวจสอบสถานะโดเมน...",cannotResolve:"{domain} ไม่สามารถแก้ไขได้ โปรดตรวจสอบการกำหนดค่า DNS ของคุณ",resolvedAddressError:"{domain} ยังไม่ได้กำหนดค่าอย่างถูกต้องด้วยระเบียน CNAME ที่ชี้ไปที่ {curDomain}",invalidDNSReminder:"{error} อย่างไรก็ตาม คุณสามารถเพิ่มโดเมนต่อไปได้ แต่การสร้างใบรับรองอัตโนมัติไม่พร้อมใช้งาน",continueAdd:"เพิ่มต่อ",conflictTitle:"{domain} ถูกใช้งานแล้ว",conflictDescription:'{domain} กำลังใช้งานอยู่โดย "{title}" การคลิกยืนยันจะลบโดเมนออกจาก "{from}" และเพิ่มไปยัง "{to}".'},aigne:{modelAdapter:"ผู้ให้บริการโมเดล",modelName:"ชื่อแบบจำลอง",desc:{modelAdapter:"แพลตฟอร์มที่ให้บริการโมเดล AI",modelName:"รุ่นเฉพาะของโมเดลหรือชื่อโมเดล",key:"คีย์ API {provider} ที่ใช้สำหรับการรับรองความถูกต้อง",baseUrl:"กรอก URL ของอินสแตนซ์ AIGNE Hub ของคุณ (เช่น https://hub.aigne.io) ใช้ของคุณเองหากคุณโฮสต์ด้วยตนเอง",accessKeyId:"รหัสคีย์เฉพาะสำหรับเข้าถึงโมเดล",secretAccessKey:"คีย์ลับจับคู่กับ ID คีย์การเข้าถึง",docLink:"ดูเอกสารอย่างเป็นทางการสำหรับรายละเอียดเพิ่มเติมและการอ้างอิง API"},failed:"บันทึกการตั้งค่า AIGNE ล้มเหลว",authorizeAigneHub:"เชื่อมต่อกับ {name}",baseUrl:"URL ฮับ AIGNE",disconnect:"ตัดการเชื่อมต่อ",disconnectConfirm:"คุณแน่ใจหรือว่าต้องการตัดการเชื่อมต่อจาก AIGNE Hub? สิ่งนี้จะลบการตั้งค่า AI ปัจจุบัน",disconnectSuccess:"ยกเลิกการเชื่อมต่อจาก AIGNE Hub สำเร็จแล้ว",disconnectFailed:"ไม่สามารถตัดการเชื่อมต่อจาก AIGNE Hub ได้",testConnection:"ทดสอบการเชื่อมต่อ {provider}",invalidUrl:"URL ของ {provider} ไม่ถูกต้อง",description:"การกำหนดค่าปัจจุบันจะมีผลเมื่อ {name} กำลังทำงาน จำเป็นต้องบันทึกและรีสตาร์ท Blocklet เพื่อให้มีผล",revokeUrlAuthTitle:"ยืนยันการเปลี่ยนแปลง {url}?",revokeUrlAuth:"คุณแน่ใจหรือไม่ว่าต้องการเปลี่ยน {url}? หลังจากแก้ไข การอนุญาตของคุณจะไม่ถูกต้องและต้องได้รับอนุญาตใหม่!",testSuccess:"เชื่อมต่อกับ AIGNE Hub สำเร็จ",check:"ตรวจสอบ",apiKeyNotAuthorized:"คีย์ API ไม่มีสิทธิ์ กรุณาคลิกปุ่มเชื่อมต่อกับ AIGNE Hub เพื่ออนุญาต",switchUser:"เปลี่ยนผู้ใช้",connectTimeOut:"การเชื่อมต่อกับ {provider} หมดเวลา โปรดลองใหม่ในภายหลัง",restart:{title:"เริ่มต้น Blocklet ใหม่",connectedContent:"Blocklet ของคุณเชื่อมต่อกับ {provider} อยู่ในขณะนี้ การตั้งค่าจะมีผลหลังจากรีสตาร์ท ต้องการรีสตาร์ทตอนนี้หรือไม่?",notConnectedContent:"Blocklet ของคุณถูกตัดการเชื่อมต่อจาก {provider} การตั้งค่าจะมีผลหลังจากรีสตาร์ท คุณต้องการรีสตาร์ทตอนนี้หรือไม่?",confirm:"รีสตาร์ท ตอนนี้",cancel:"เริ่มใหม่ภายหลัง"},testFailed:"ไม่สามารถเชื่อมต่อกับ AIGNE Hub ได้ กรุณาตรวจสอบ URL หรือเครือข่ายของคุณ",addCredits:"ซื้อเครดิต",transaction:"ธุรกรรม",connected:"เชื่อมต่อสำเร็จ",account:"ข้อมูลบัญชี",pendingCredit:"ค่าใช้จ่ายคงค้าง",infinite:"ไม่จำกัด",config:"ตั้งค่า AIGNE Hub"}},notification:{title:"การแจ้งเตือน",history:"ประวัติ",channelSettings:"การตั้งค่าช่องทาง",empty:"ยังไม่มีกิจกรรม",viewAll:"ดูทั้งหมด",showRead:"แสดงการอ่าน",markAllAsRead:"ทำเครื่องหมายว่าอ่านหมดแล้ว",markAsRead:"ทำเครื่องหมายว่าอ่านแล้ว",proceed:"ดำเนินการต่อ",checkingForUpdates:"กำลังตรวจสอบการอัปเดต...",email:{enable:"เปิดการแจ้งเตือน",from:"ผู้ส่งอีเมล",host:"โฮสต์เซิร์ฟเวอร์ SMTP",port:"พอร์ตเซิร์ฟเวอร์ SMTP",user:"ชื่อผู้ใช้ SMTP",secure:"การเชื่อมต่อที่ปลอดภัย",password:"รหัสผ่าน SMTP",fromRequired:"ต้องระบุผู้ส่งอีเมล",fromInvalid:"ผู้ส่งอีเมลไม่ถูกต้อง",receiverRequired:"จำเป็นต้องระบุผู้รับอีเมล",receiverInvalid:"ผู้รับอีเมลไม่ถูกต้อง",hostRequired:"จำเป็นต้องระบุโฮสต์เซิร์ฟเวอร์ SMTP",hostInvalid:"เซิร์ฟเวอร์ SMTP ไม่ถูกต้อง",portRequired:"จำเป็นต้องระบุพอร์ตของเซิร์ฟเวอร์ SMTP",portInvalid:"พอร์ตเซิร์ฟเวอร์ SMTP ไม่ถูกต้อง พอร์ตควรอยู่ระหว่าง 1 และ 65535",userRequired:"ต้องระบุชื่อผู้ใช้งานเซิร์ฟเวอร์ SMTP",passwordRequired:"จำเป็นต้องใส่รหัสผ่านผู้ใช้เซิร์ฟเวอร์ SMTP",testSuccess:"การส่งอีเมลทดสอบสำเร็จ",testFailed:"ส่งอีเมลทดสอบล้มเหลว",testReceiver:"ผู้รับอีเมล",testSendEmail:"ทดสอบส่งอีเมล",inputTestReceiver:"โปรดป้อนอีเมลผู้รับทดสอบ",disable:"ยกเลิกการรับการแจ้งเตือนทางอีเมล",disableDescription:"หลังจากยกเลิกการรับข่าวสารทางอีเมล คุณจะไม่ได้รับการแจ้งเตือนทางอีเมลอีกต่อไป หากต้องการรับการแจ้งเตือนทางอีเมล คุณสามารถสมัครใหม่บนหน้านี้ได้",unsubscribe:"ยกเลิกการรับข่าวสารทางอีเมล",unsubscribeDescription:"หลังยกเลิกการสมัครสมาชิกแล้ว คุณจะไม่ได้รับการแจ้งเตือนทางอีเมลอีกต่อไป",subscribe:"สมัครสมาชิก",subscribeDescription:"หากต้องการรับการแจ้งเตือนทางอีเมล คุณสามารถสมัครใหม่ได้ที่หน้าการตั้งค่า",companyName:"ชื่อบริษัท",companyLink:"ลิงก์บริษัท",companyAddress:"ที่อยู่บริษัท",supportEmail:"อีเมลฝ่ายสนับสนุน",emailInvalid:"อีเมลไม่ถูกต้อง",linkInvalid:"ลิงก์ไม่ถูกต้อง ควรเริ่มต้นด้วย http หรือ https",signature:"ลายเซ็น",signatureTooltip:"ลายเซ็นอีเมลจะใช้ด้านล่างเพื่อให้ข้อมูลสำคัญเกี่ยวกับผู้ส่งแก่ผู้รับ"},wallet:{description:"การแจ้งเตือน Wallet DID จะถูกเปิดใช้งานสำหรับผู้ใช้ทั้งหมด"},webhooks:{description:"การส่งการแจ้งเตือนผ่าน webhooks จะถูกเปิดใช้งานสำหรับผู้ใช้ทั้งหมด"},comingSoon:"กำลังสร้างช่องการแจ้งเตือนเพิ่มเติม",unsubscribe:"ยกเลิกการสมัครใช้",unsubscribeSucceed:"ยกเลิกรับข้อมูลเรียบร้อยแล้ว",unsubscribeFailed:"การยกเลิกการสมัครปิดตัวล้มเหลว",unsubscribeTokenRequired:"โทเค็นการยกเลิกการสมัครจำเป็น",unsubscribeTokenExpired:"โทเค็นการยกเลิกสมาชิกหมดอายุ",unsubscribeTokenInvalid:"โทเค็นการยกเลิกการสมัครสมาชิกไม่ถูกต้อง",installComponentError:"ไม่พบส่วนประกอบที่ถอนการติดตั้ง {name}",installingComponent:"กำลังติดตั้งส่วนประกอบ {name}",pushKit:{enable:"เปิดการแจ้งเตือน",endpoint:"PushKit endpoint",endpointInvalid:"จุดสิ้นสุด PushKit เป็น URL ที่ไม่ถูกต้อง",testSuccess:"การทดสอบ PushKit ส่งสำเร็จ",testFailed:"การทดสอบส่ง PushKit ล้มเหลว",testReceiver:"ตัวรับ PushKit",testSend:"ทดสอบการส่ง push-kit",inputTestReceiver:"โปรดป้อนเครื่องรับทดสอบ",receiverRequired:"จำเป็นต้องใช้ตัวรับ PushKit",pushPath:"เส้นทาง api สำหรับ push-kit (ค่าเริ่มต้น /api/push)",did:"PushKit Blocklet DID",customOptions:"ตัวเลือกที่กำหนดเอง"},notificationDetails:"รายละเอียดการแจ้งเตือน",receiver:"ผู้รับ",sendStatus:{success:"ส่งแล้ว",failed:"ล้มเหลว",sentTime:"ส่งเวลา: {date}",pending:"รอดำเนินการ",reason:{enabled:"ผู้ใช้ได้เปิดใช้งานการแจ้งเตือน {channel}",disabled:"ผู้ใช้ยังไม่ได้เปิดการแจ้งเตือน {channel}",unavailable:"Blocklet ปัจจุบันยังไม่ได้กำหนดค่าแจ้งเตือน {channel}",available:"Blocklet ปัจจุบันได้ตั้งค่าการแจ้งเตือน {channel}",notSent:"ข้อความปัจจุบันยังไม่ได้ส่งไปยัง {channel}",offline:"ผู้ใช้ ออฟไลน์"},count:"{count}",total:"รวม"},filter:"กรอง",notificationPreview:"ตัวอย่างการแจ้งเตือน",resend:"ส่งอีกครั้ง",resendLimit:"คุณสามารถส่งการแจ้งเตือนซ้ำได้สูงสุดสามครั้งต่อวัน",from:"จาก",to:"ถึง",body:"ร่างกาย",notificationTitle:"ชื่อเรื่อง",createdAt:"สร้างเมื่อ",status:"สถานะ",system:"ระบบ",severity:"ความรุนแรง",config:"Configs",selectChannels:"เลือกช่อง",selectChannelsTip:"เลือกช่องทางเพื่อส่งอีกครั้ง",resendFailedOnly:"ส่งใหม่เฉพาะช่องที่ล้มเหลว",statistics:"สถิติ",allSender:"ผู้ส่งทั้งหมด",allSeverity:"ระดับความรุนแรงทั้งหมด",severityType:{info:"Info",success:"สำเร็จ",warning:"คำเตือน",error:"ข้อผิดพลาด"},clear:"ล้าง",allDone:"เสร็จสิ้น",filterType:{all:"ทั้งหมด",unread:"ยังไม่ได้อ่าน"},viewMore:"ดูเพิ่มเติม"},router:{routerSetting:"โดเมนและ URL",certSetting:"ใบรับรอง SSL",defaultSite:"ค่าเริ่มต้น",urlHelperText:"URL ที่ไม่เริ่มต้นด้วย HTTP/HTTPS เป็นพาธที่เกี่ยวข้อง",empty:"คลิกที่การดำเนินการเพื่อตั้งค่าการทับซ้อน URL",healthy:{ok:"Blocklet หรือบริการกำลังทำงาน",error:"บล็อกเล็ตหรือบริการไม่ทำงานหรือไม่ได้ติดตั้ง"},service:{select:"เลือกบริการ Blocklet (ตัวเลือก)",what:"บริการ Blocklet เป็นท่อดำเนินการกับการร้องขอก่อนนำเสนอไปยังบล็อกเล็ตสูงระยะ"},nonProvider:{title:"คำเตือนเปลี่ยนเครื่องยนต์",description:"หากคุณเปลี่ยนเครื่องยนต์เป็น none หน้าปัจจุบันของคุณอาจทำงานไม่ถูกต้องเนื่องจากเครื่องยนต์ก่อนหน้านั้นจะหยุดทำงาน คุณแน่ใจไหมที่จะดำเนินการต่อ?",confirm:"ฉันเข้าใจแล้ว, ดำเนินการต่อไป"},validation:{urlRequired:"URL จำเป็น",redirectCodeRequired:"ต้องใช้รหัสเปลี่ยนเส้นทาง",didRequired:"Blocklet เป็นข้อกำหนด",pathPrefixTooLong:"คำนำหน้า URL ต้องไม่เกิน {length} ตัวอักษร",pathPrefixCannotBeEmpty:"ตัวอักษรนำหน้า URL ต้องไม่เป็นค่าว่าง",domainRequired:"ต้องการโดเมนเซิร์ฟเวอร์",invalidUrl:"กรุณาให้ URL ที่ถูกต้อง",pathPrefixRequired:"ต้องใช้เลขนำ URL",redirectUrlRequired:"จำเป็นต้องระบุ URL การเปลี่ยนเส้นทาง",rewriteUrlRequired:"ต้องการเขียน URL ใหม่"},domain:{addSite:"เพิ่มเว็บไซต์",validate:{emptyTip:"โดเมนเว็บไซต์ต้องไม่เป็นค่าว่าง",suffixTip:"โดเมนเว็บไซต์ไม่สามารถรวม {suffix} ได้"},add:{title:"เพิ่มชื่อโดเมน",description:"โปรดให้ชื่อโดเมนที่ถูกต้อง",confirm:"เพิ่ม",cancel:"ยกเลิก",blocklet:"เลือก Blocklet",redirect:"ตำแหน่งปลายทางที่จะเปลี่ยนเส้นทางจริงหรือ?!",port:"พอร์ตใดที่ผู้จัดการคำขอของคุณต้องฟัง?",portTip:"ค่าเริ่มต้นนี้กำหนดให้เป็นพอร์ตหลักของตัวจัดการคำขอ คุณสามารถปรับแต่งได้",type:"ผู้ควบคุมการจราจร",component:"เลือกส่วนประกอบ",pageGroup:"กลุ่มหน้า",pageGroupTip:"คอมโพเนนต์นี้สามารถแสดงกลุ่มหน้าใดก็ได้ที่ระบุไว้ด้านบน ปล่อยว่างเพื่อแสดงทุกหน้า"},update:{title:"อัปเดตโดเมนเว็บไซต์",label:"โดเมนเว็บไซต์",description:"โปรดระบุโดเมนเว็บไซต์ที่ถูกต้อง"},setup:{tipStart:"เพิ่มระเบียน DNS สำหรับโดเมน",tipEnd:"ตามแนวทางดังต่อไปนี้",recordType:"ประเภทบันทึก",recordValue:"ค่าบันทึก"},verify:{ok:"การแก้ไขโดเมนเหมือนเคย",notResolved:"โดเมนนี้ไม่ได้แก้ไขหรือเข้าถึงได้ โปรดตรวจสอบการกำหนดค่า DNS ของคุณ"},https:{ok:"โดเมนนี้เปิดใช้งาน httpsแล้ว",bad:"โดเมนนี้ยังไม่เปิดใช้งาน https"},delete:{title:"ลบเว็บไซต์",description:'เมื่อคุณยืนยัน คุณจะลบเว็บไซต์ "{name}" ที่มีอยู่ของคุณ พิมพ์ "{name}" ด้านล่างแล้วเลือกลบเพื่อยืนยันการเปลี่ยนแปลง หรือเลือกยกเลิกหากคุณต้องการออกจากเว็บไซต์ของคุณ',confirm_desc:"กรุณาใส่ {name} เพื่อยืนยัน"}},domainAlias:{nftDomain:"การกำหนดค่าอัตโนมัติด้วยชื่อ DID",showTipHint:"วิธีการกำหนดค่าการแก้ไขชื่อโดเมนคืออะไร?",add:{title:"เพิ่มโดเมนเพิ่มเติม",domainDescription:"โปรดระบุชื่อโดเมนที่ถูกต้อง",forceTip:"บังคับให้เพิ่มถ้าชื่อโดเมนมีอยู่แล้ว",helperText:"หากป้อน URL HTTP หรือ HTTPS จะถูกแปลงเป็นชื่อโดเมนโดยอัตโนมัติ",isDidDomainError:"โดเมนนี้เป็นโดเมน DID กรุณาเพิ่มโดยใช้วิธีการกำหนดค่าโดเมนอัตโนมัติ",tips:"คุณสามารถป้อนชื่อโดเมนที่ซื้อจาก DID Names หรือโดเมนอื่นๆ ได้ หากเป็นโดเมน DID คุณต้องแสดง NFT โดเมน DID เพื่อดำเนินการต่อ"},addCustomDomain:{name:"โดเมนที่กำหนดเอง"},addDomainNFT:{showNFT:"กำหนดค่าโดเมนอัตโนมัติ",tips:"คุณสามารถป้อนโดเมนที่ซื้อจาก DID Names ได้ หากตรวจพบโดเมน DID คุณต้องแสดง NFT โดเมน DID เพื่อดำเนินการต่อ",connect:{scan:"ใช้หนึ่งในวิธีการต่อไปนี้เพื่อเชื่อมต่อ {domain} กับ {appName}",confirm:"ยืนยันในบัญชีของคุณ",success:"อนุญาตสำเร็จแล้ว",title:"เชื่อมต่อชื่อ DID กับ {appName}"},buyTip:"ชื่อ DID จะทำการแก้ไขชื่อโดเมนโดยอัตโนมัติ ไม่จำเป็นต้องกำหนดค่าด้วยตนเอง และ blocklet จะอัปเดตบันทึกการแก้ไขชื่อโดเมนโดยอัตโนมัติเมื่อจำเป็น หากคุณยังไม่มี DID Domain NFT, ",buy:"ซื้อโดเมน DID",topLevelDidDomainHint:"สำหรับโดเมน DID หากคุณป้อนโดเมนระดับสูงสุด (เช่น example.com) ระบบจะกำหนดค่าเป็น www.example.com โดยอัตโนมัติ",authorizeFailed:"ไม่สามารถรับข้อมูล NFT โดเมนได้ โปรดลองอีกครั้ง!"},delete:{title:"ลบ",description:'หลังจากลบ "{domain}" การเข้าถึง alias นี้อาจไม่ถูกจัดการอย่างถูกต้อง',confirmPlaceholder:'ป้อน "{domain}" เพื่อลบ'},custom:"โดเมนแบบกำหนดเอง",noCustom:"ไม่มีโดเมนแบบกำหนดเอง",noCustomTip:"ยังไม่ได้กำหนดโดเมนแบบกำหนดเองกับเว็บไซต์ของคุณ เพื่อการรักษาความปลอดภัยที่ดียิ่งขึ้นและประสบการณ์การใช้งานที่ดีขึ้น เราขอแนะนำให้คุณกำหนดโดเมนแบบกำหนดเองของคุณเอง คลิกด้านล่างเพื่อเริ่มต้น"},domainSecurity:{title:"ความปลอดภัยของโดเมน",cors:{title:"โดเมนที่ได้รับอนุญาตให้ใช้งานร่วมกัน",description:'รายชื่อโดเมนที่สามารถส่งคำขอข้ามกำเนิดไปยัง {name} คั่นด้วยเครื่องหมายจุลภาค ใช้ "*" เพื่ออนุญาตให้ใครก็ได้ ซึ่งไม่แนะนำ',domainInvalid:"กรุณาป้อนรายการชื่อโดเมนที่ถูกต้อง"}},rule:{add:{title:"เพิ่มการจับคู่ URL",confirm:"เพิ่ม",pathPrefix:"คำนำหน้า URL คืออะไร?",pathPrefixTip:"หากคุณตั้งค่าคำนำหน้าเป็น '/my-prefix' จะทำให้คำขอที่ตั้งต้นด้วยคำนำหน้าเหล่านั้นจะถูกส่งมายังบล็อกเลตที่กำหนด",blocklet:"Blocklet ไหนจะดูแลการร้องขอเหล่านั้น?",port:"พอร์ตของบล็อกเล็ตใดที่จะรับผิดชอบการร้องขอ?",portTip:"นี่คือค่าพื้นฐานของพอร์ตหลักของ blocklet ถ้า blocklet ของคุณฟังถึงพอร์ตหลายๆพอร์ต คุณสามารถปรับแต่งได้",responseType:"ประเภทการตอบกลับ",responseBody:"เนื้อหาการตอบกลับ",responseBodyTip:"วางเนื้อหาการตอบสนองของคุณที่นี่ ต้องไม่เกิน 4096 อักขระ",responseBodyRequired:"เนื้อหาการตอบกลับต้องไม่เป็นค่าว่าง"},delete:{title:"ลบการแมปลิงก์ URL",description:'เมื่อยืนยันแล้ว คุณจะลบการกำหนด URL "{name}" ที่มีอยู่ของคุณ พิมพ์ "{name}" ด้านล่างและเลือก ลบ เพื่อทำการเปลี่ยนแปลงหรือเลือก ยกเลิก หากคุณต้องการที่จะยกเลิกการกำหนด URL ของคุณ',confirm_desc:"กรุณาใส่ {name} เพื่อลบ",cancel:"ยกเลิก"},update:{title:"อัปเดตตัวแทนสถานที่",confirm:"ใช่, อัปเดต",cancel:"ยกเลิก"}},cert:{name:"ชื่อใบรับรอง",domain:"ชื่อโดเมน",action:"การกระทำ",commonName:"ชื่อทั่วไป",boundDomains:"โดเมน",source:"แหล่งที่มา",expired:"หมดอายุ",leftDays:"วันที่เหลืออยู่",issuedOn:"ออกใบเบิกในวันที่",expiryOn:"หมดอายุเมื่อ",fingerprintAlg:"อัลกอริทึมลายนิ้วมือ",validityPeriod:"ระยะเวลาที่ถืออยู่ในช่วงความถูกต้อง",matchedSites:"เว็บไซต์ที่ตรงกัน",upload:"อัปโหลดด้วยมือ",publicCertHelperText:"สามารถดาวน์โหลดใบรับรองสาธารณะได้",nonPublicCertHelperText:"ไม่สามารถดาวน์โหลดใบรับรองที่ไม่เปิดเผยได้",protectedCertHelperText:"ไม่สามารถแก้ไขใบรับรองที่ถูกป้องกัน",unprotectedCertHelperText:"ใบรับรองที่ไม่ได้รับการป้องกันสามารถแก้ไขได้",issuing:"กำลังสร้างใบรับรอง",sourceTypes:{upload:"อัปโหลดด้วยตนเอง",lets_encrypt:"มาเข้ารหัสกันเถอะ"},table:{nodata:"ไม่มีข้อมูล"},delete:{title:"ลบใบรับรอง",description:"ยืนยันการลบใบรับรองของโดเมน {domain} หรือไม่? การลบอาจส่งผลต่อบริการที่เกี่ยวข้อง โปรดยืนยันและตรวจสอบให้แน่ใจว่าปลอดภัยก่อนดำเนินการลบ",confirm:"ยืนยัน"},nginx:{title:"อัปเดตใบรับรอง",titleAdd:"เพิ่มใบรับรอง",pem:"ไฟล์ใบรับรอง SSL",pemTip:'โปรดวางไฟล์ใบรับรองเซิร์ฟเวอร์ของคุณที่นี่ ต้องลงท้ายด้วย ".pem" หรือ ".crt"',key:"ไฟล์กุญแจส่วนตัว",keyTip:"กรุณาลากรายการไฟล์กุญแจส่วนตัวของเซิร์ฟเวอร์ของคุณที่นี่ มันควรจบลงด้วย '.pem' หรือ '.key'",confirm:"บันทึก",cancel:"ยกเลิก",invalidFile:"คุณได้เลือกไฟล์ที่ไม่ถูกต้อง",empty:"ยังไม่ได้เลือกไฟล์",source:"แหล่ง",sourceTypes:{upload:"อัปโหลดด้วยตนเอง",lets_encrypt:"มาเข้ารหัสกันเถอะ"}},detail:{title:"รายละเอียดใบรับรอง"},genLetsEncryptCert:{title:"สร้างใบรับรอง Let's Encrypt",dnsTip:"โปรดตรวจสอบให้แน่ใจว่าชื่อโดเมนชี้ไปที่เครื่องแม่ข่าย Blocklet ปัจจุบัน",description:"การเพิ่มใบรับรองจะทำให้บริการมีความปลอดภัยมากขึ้นและ Blocklet Server จะต่ออายุใบรับรองอัตโนมัติก่อนหมดอายุ"}},gateway:{reqLimit:{switchLabel:"เปิดใช้งานการจำกัดคำขอพร้อมกันเพื่อประสิทธิภาพที่เชื่อถือได้",rate:"จำกัดคำขอพร้อมกันต่อ IP ที่ {rate} ต่อวินาที (จำกัดต่อ IP)",title:"การจำกัดคำขอ",global:"จำกัดคำขอพร้อมกันที่เกตเวย์ประมวลผลเป็น {global} ต่อวินาที (ขีดจำกัดทั่วโลก)",burstFactor:"ตัวคูณการระเบิดสำหรับการจำกัดอัตรา ใช้กับขีดจำกัดทั่วโลกและต่อ IP (ทั่วโลก: {global}, ต่อ IP: {rate})",methods:"จำกัดคำขอพร้อมกันตาม IP สำหรับวิธีการต่อไปนี้",burstDelay:"ความล่าช้าเมื่อคำขอเพิ่มขึ้นอย่างรวดเร็วและเกินขีดจำกัดต่อ IP ({delay} วินาที)"},cacheEnabled:{switchLabel:"เปิดใช้แคชเกตเวย์เพื่อเพิ่มประสิทธิภาพ",title:"แคชเกตเวย์"},blockPolicy:{switchLabel:"การบล็อกคำขอ",addItem:"เพิ่มรายการ",blacklistDesc:"คำขอจาก IP เหล่านี้จะถูกบล็อกจากการเข้าถึงเซิร์ฟเวอร์นี้และบล็อกเล็ตทั้งหมด",inputPlaceholder:"ป้อนที่อยู่ IP, CIDR range หรือ URL",invalidItem:"ที่อยู่ IP, ช่วง CIDR หรือ URL ไม่ถูกต้อง",title:"การบล็อกคำขอ",autoBlocking:{switchLabel:"บล็อกคำขอที่ไม่ดีด้วยการตรวจจับแบบเรียลไทม์",windowSize:"ขนาดหน้าต่างเวลาในการนับคำขอ (วินาที)",windowQuota:"จำนวนคำขอสูงสุด (ต่อ IP) ที่อนุญาตในช่วงเวลานี้",blockDuration:"ระยะเวลาในการบล็อกผู้ใช้โดย IP เมื่อเกินโควตาภายในหน้าต่าง (วินาที)",statusCodes:"รหัสสถานะที่จะตรวจสอบ"}},proxyPolicy:{switchLabel:"ทำงานข้างหลังพร็อกซี",trustRecursive:"信任代理者循環地",trustRecursiveDesc:"ใช้ IP ด้านซ้ายสุดในสายโซ่ X-Forwarded-For",trustedProxies:"พร็อกซี่ที่เชื่อถือได้",trustedProxiesDesc:"คำขอจาก IP เหล่านี้จะได้รับความเชื่อถือเพื่อรับ IP ลูกค้าจริง",realIpHeaderLabel:"หัวเลข IP ของลูกค้า",realIpHeaderDesc:"หากเซิร์ฟเวอร์ Blocklet กำลังทำงานข้างหลังพร็อกซีเจนเช่น CloudFront, คุณสามารถตั้งค่าหัวข้อของ IP จริงของลูกค้าที่นี่.",addItem:"เพิ่มรายการ",inputPlaceholder:"ป้อนที่อยู่ IP, ช่วง CIDR",invalidItem:"ที่อยู่ IP ไม่ถูกต้อง, ช่วง CIDR",title:"นโยบาย Proxy"},wafPolicy:{switchLabel:"ตรวจจับและบล็อกคำขอที่ไม่ดีด้วย ModSecurity",modeDesc:"โหมดของ modsecurity (ต้องใช้โมดูล modsecurity)",mode:{detectOnly:"ตรวจจับเท่านั้น (จะไม่บล็อกคำขอ)",on:"เปิด (จะบล็อกคำขอ)"},logLevelDesc:"ระดับ log สำหรับ ModSecurity (0-9), 0 หมายถึงปิดการใช้งานบันทึกการตรวจสอบ",inboundAnomalyScoreThresholdDesc:"เกณฑ์คะแนนความผิดปกติขาเข้า (1-100), ค่าที่ต่ำกว่าหมายถึงเข้มงวดกว่า",outboundAnomalyScoreThresholdDesc:"เกณฑ์คะแนนความผิดปกติขาออก (1-100), ค่าต่ำหมายถึงเข้มงวดมากขึ้น",docDesc:"ตรวจสอบเอกสารสำหรับวิธีการตั้งค่า modsecurity",title:"ไฟร์วอลล์แอปพลิเคชันเว็บ"}}},noMatch:{desc:"เราไม่พบหน้าที่คุณกำลังมองหา"},health:{connectionErrorTip:"Blocklet Server ไม่สามารถเชื่อมต่อกับเครือข่ายได้ โปรดตรวจสอบว่า Blocklet Server ถูกหยุดหรือมีปัญหาเน็ตเวิร์ค",connectionRecoveryTip:"การเชื่อมต่อกับเซิร์ฟเวอร์ Blocklet ได้กู้คืนแล้ว",connectionStoppedTip:"บล็อกเล็ต เซิร์ฟเวอร์หยุดทำงานแล้ว",wrongAccessUrlTip:"ที่อยู่การเข้าถึงเซิร์ฟเวอร์ Blocklet ไม่ถูกต้อง โปรดใช้ที่อยู่การเข้าถึงที่ถูกต้อง"},debug:{title:"เซิร์ฟเวอร์ Blocklet ของคุณพร้อมทำงานแล้ว!"},team:{invite:{action:"เชิญใหม่",setting:"ตั้งค่าเชิญ",enabled:"ปิดการตั้งค่านี้เพื่อจำกัดการเชิญผู้ใช้ใหม่ให้เฉพาะเจ้าของ/ผู้ดูแลระบบเท่านั้น",disabled:"เปิดการตั้งค่านี้เพื่อให้ผู้ใช้ใด ๆ เชิญผู้ใช้ใหม่ได้",inviter:"เชิญโดย"},add:"เพิ่มใหม่",member:{name:"ชื่อ",passport:"หนังสือเดินทาง",passports:"หนังสือเดินทาง",lastLogin:"เข้าสู่ระบบครั้งล่าสุด",lastLoginIp:"IP เข้าสู่ระบบล่าสุด",source:"ลงทะเบียนแหล่งที่มา",source_derived:"มาจาก OAuth",source_wallet:"กระเป๋าสตางค์ DID",filter:"กรองตาม",blockAccess:"ห้ามเข้าสู่ระบบ",blockAccessDescription:"ผู้ใช้จะไม่สามารถเชื่อมต่อกับแอปพลิเคชันนี้ได้",allowAccess:"อนุญาตเข้าสู่ระบบ",allowAccessDescription:"ผู้ใช้สามารถเชื่อมต่อกับแอปพลิเคชันนี้ได้",updateRole:"อัปเดตบทบาท",removeUser:"ลบผู้ใช้",removeUserDescription:'ยืนยันการลบผู้ใช้ "{name}"?',revokePassport:"เพิกถอนหนังสือเดินทาง",revokePassportDescription:"หลังจากหนังสือเดินทางถูกระงับ ผู้ถือหนังสือเดินทางจะไม่สามารถใช้ในการเข้าสู่ระบบอีกครั้งได้ คุณแน่ใจหรือว่าต้องการดำเนินการต่อ?",enablePassport:"เปิดใช้งาน Passport",enablePassportDescription:"เมื่อหนังสือเดินทางที่ถูกถอดถอนได้รับการเปิดใช้งานอีกครั้ง ผู้ถือหนังสือเดินทางสามารถใช้ได้เพื่อเข้าสู่ระบบอีกครั้ง คุณแน่ใจหรือไม่ว่าต้องการดำเนินการต่อหรือไม่?",passportPermissionTitle:"หนังสือเดินทางมีการอนุญาตต่อไปนี้:",search:"ค้นหาสมาชิก",onlyApprovedMember:"แสดงเฉพาะที่ได้รับอนุมัติเท่านั้น",inviteDialog:{createInviteLink:"สร้างลิงก์เชิญเชิญ",createSuccessTip:"ลิงก์เชิญถูกสร้างขึ้นเรียบร้อยแล้ว คลิกเพื่อคัดลอกและส่งลิงก์ไปยังสมาชิกที่ได้รับเชิญ โปรดทราบว่าลิงก์เชิญนี้ไม่สามารถใช้ซ้ำได้และจะหมดอายุเมื่อถึงวันที่ {expireDate}"},error:{passportEmpty:"หมายเลขพาสปอร์ตต้องไม่เป็นค่าว่าง"},connectedAccounts:"บัญชีที่เชื่อมต่อ",connections:"การเชื่อมต่อ",federated:"ฟิเดอเรทีด",switch:{did:"สลับ DID",profile:"เปลี่ยนโปรไฟล์",passport:"เปลี่ยนพาสปอร์ต"},settings:{notification:"การแจ้งเตือน",email:"ส่งอีเมลถึงฉันเมื่อมีเหตุการณ์บางอย่างเกิดขึ้น",wallet:"ส่งการแจ้งเตือนไปยังกระเป๋าเงินของฉันเมื่อเกิดเหตุการณ์บางอย่าง",phone:"ส่งข้อความให้ฉันเมื่อเกิดเหตุการณ์บางอย่าง",webhook:"Webhooks",add:"เพิ่ม webhook ใหม่",url:"URL ที่กำหนดเอง",slack:"Slack Webhook",tested:"ส่งข้อความทดสอบแล้ว"},activeUserSessions:"เซสชันผู้ใช้ที่ใช้งานอยู่",forceLogout:"ออกจากระบบบังคับ",forceLogoutDescription:"ยืนยันให้ออกจากระบบผู้ใช้นี้หรือไม่?",openProfile:"ดูโปรไฟล์",removeUserSuccess:"ผู้ใช้ถูกลบออกแล้ว",forceLogoutRemoveDescription:"ยืนยันเพื่อบังคับออกจากระบบผู้ใช้รายนี้ (ลบเซสชันผู้ใช้ทั้งหมดด้วย)?"},transferNode:{name:"โอนสิทธิ์การเป็นเจ้าของ",inviteDialog:{title:"โอนเซิร์ฟเวอร์บล็อกเล็ต",tips:{progress:"การถ่ายโอนเซิร์ฟเวอร์จำเป็นต้องได้รับการยอมรับจากผู้รับเพื่อดำเนินการในการถ่ายโอนเสร็จสิ้น และเมื่อผู้รับยอมรับแล้ว คุณจะไม่สามารถเข้าสู่เซิร์ฟเวอร์ด้วยพาสปอร์ตปัจจุบันได้อีก",newOwnerPermissions:"เจ้าของใหม่จะมีสิทธิ์ในการจัดการทุกปฏิบัติการ เช่นสมาชิก หนังสือเดินทาง และบล็อกเล็ต",revoke:'หากคุณต้องการยกเลิกเชิญโอนเงิน คุณสามารถลบลิงก์เชิญในหน้า "ทีม -> สมาชิก -> เชิญ" ได้'},createInviteLink:"สร้างลิงก์เชิญ",createSuccessTip:"ลิงก์เชิญถูกสร้างสำเร็จแล้ว คลิกเพื่อคัดลอกและส่งลิงก์ไปยังสมาชิกที่เชิญ โปรดทราบว่าลิงค์เชิญนี้ไม่สามารถนำกลับมาใช้ซ้ำได้และจะหมดอายุเมื่อถึงวันที่ {expireDate}"},delegateDialog:{title:"ต้องการการอนุญาต",scan:"ใช้เมธอดต่อไปนี้เพื่ออนุญาตให้เซิร์ฟเวอร์โอน NFT การเป็นเจ้าของเซิร์ฟเวอร์",confirm:"ยืนยันในบัญชีของคุณ",success:"อนุญาตสำเร็จแล้ว"}},transferApp:{name:"โอนกรรมสิทธิ์",transferDialog:{title:"แอปพลิเคชันการโอนเงิน",tips:{progress:"แอปพลิเคชันการโอนถ่ายต้องได้รับการยอมรับจากผู้รับเพื่อทำการโอนถ่ายสำเร็จ โดยหลังจากนั้นหากผู้รับยอมรับแล้ว คุณจะไม่สามารถเข้าสู่แอปพลิเคชันด้วยหนังสือเดินทางปัจจุบันได้อีก",newOwnerPermissions:"เจ้าของใหม่จะมีสิทธิ์ในการจัดการทุกปฏิบัติการเช่นสมาชิก หนังสือเดินทาง และการตั้งค่าทั้งหมด"},createTransferLink:"สร้างลิงก์การโอนเงิน",createSuccessTip1:'ลิงก์การโอนถ่ายถูกสร้างขึ้นเรียบร้อยแล้ว ผู้ถูกเชิญต้องใช้ <a style="color: rgb(29, 193, 199)" target="_blank" href="https://www.didwallet.io/">DID Wallet</a> เพื่อรับการเป็นเจ้าของแอป',createSuccessTip2:"กรุณาคลิกเพื่อคัดลอกและส่งลิงก์ไปยังสมาชิกที่เชิญเข้าร่วม โปรดทราบว่าลิงก์การโอนนี้ไม่สามารถใช้ซ้ำได้และจะหมดอายุในวันที่ {expireDate} ลิงก์การโอนของคุณจะปรากฏอย่างเดียวและจะไม่สามารถดูได้อีกครั้งหลังจากปิดหน้าต่างนี้",createSuccessTip3:"หลังจากการโอนเงินสำเร็จแล้ว แอปพลิเคชันจะรีสตาร์ทโดยอัตโนมัติเพื่อให้การเปลี่ยนแปลงมีผล",link:"ลิงค์การโอนเงิน",iKnow:"ฉันได้คัดลอกและบันทึกลิงก์แล้ว"},connectDialog:{title:"ต้องอนุญาต",scan:"ใช้เมธอดต่อไปนี้เพื่ออนุญาตให้แอปพลิเคชันโอนกรรมสิทธิ์",confirm:"ยืนยันในบัญชีของคุณ",success:"อนุญาตสำเร็จแล้ว"},receiveDialog:{title:"รับการครอบครองแอปพลิเคชัน",scan:"ใช้เมธอดต่อไปนี้เพื่อรับการเป็นเจ้าของแอปพลิเคชัน",confirm:"ยืนยันในบัญชีของคุณ",success:"รับการครอบครองเรียบร้อยแล้ว"},successTitle:"คุณได้เป็นเจ้าของใหม่ของแอปพลิเคชันนี้แล้ว",visitDashboard:"เข้าชมแดชบอร์ดแอปพลิเคชัน",description:"คุณสามารถโอนกรรมสิทธิ์แอปพลิเคชันของคุณไปยังกระเป๋าเงินหรือบุคคลอื่นได้"},permission:{create:{title:"สร้างการอนุญาต",description:"รูปแบบ: <การกระทำ>_<ทรัพยากร>"},delete:{title:"ลบสิทธิ์",description:"ยืนยันการลบ {name}?"},error:{actionEmpty:"การกระทำต้องไม่เป็นค่าว่าง",resourceEmpty:"ทรัพยากรต้องไม่เป็นค่าว่าง",permissionTooLong:"การอนุญาตไม่สามารถเกิน {length} ตัวอักษร",descriptionTooLong:"คำอธิบายต้องไม่เกิน {length} ตัวอักษร"}},passport:{create:{title:"สร้างหนังสือเดินทาง",titleTip:"หัวข้อไม่สามารถแก้ไขได้หลังจากสร้างแล้ว แนะนำในช่วง 14 ตัวอักษร"},bind:{title:"ผูกอนุญาต",roleTip:"คุณจะได้รับสิทธิพิเศษทั้งหมดของหนังสือเดินทางที่เลือกหลังจากผูกพัน",permissionTip:"คุณจะได้รับสิทธิ์ที่เลือกหลังจากผูกบัญชี",transferLeftTitle:"สิทธิ์ทั้งหมด",transferRightTitle:"ได้รับอนุญาต"},delete:{title:"ลบหนังสือเดินทาง",description:"หากลบไป ใบอนุญาตครอบครองจากผู้ใช้จะสูญหายทั้งหมด คุณแน่ใจหรือไม่ที่จะดำเนินการต่อ?"},error:{titleEmpty:"หัวข้อต้องไม่เป็นค่าว่าง",titleTooLong:"หัวข้อต้องไม่เกิน {length} ตัวอักษร",descriptionEmpty:"คำอธิบายไม่สามารถเว้นระหว่างว่างได้"},issuance:{pending:"รอดำเนินการ",create:{title:"สร้างลิงก์"},delete:{title:"ลบลิงค์ที่ได้รับ",description:"ยืนยันการลบ {link}?"}},issue:"ออกหนังสือเดินทาง",disableIssuance:"ปิดการออกหนังสือเดินทาง",enableIssuance:"เปิดใช้งานการออกหนังสือเดินทาง",disableIssuanceTip:'การดำเนินการ "ออกหนังสือเดินทาง", "เชิญสมาชิก" และการดำเนินการอื่น ๆ จะถูกปิดใช้งาน',enableIssuanceTip:"ออกหนังสือเดินทาง",trustedPassportIssuers:"ผู้ออกหนังสือเดินทางที่เชื่อถือได้",trustedIssuers:"ผู้ออกใบรับรองที่น่าเชื่อถือ",trustedFactories:"คอลเลกชัน NFT ที่น่าเชื่อถือ",trustedFactoriesTip:"จัดการคอลเลกชัน NFT ที่เชื่อถือได้ที่สามารถใช้แลกเปลี่ยนเพื่อรับหนังสือเดินทาง",searchFactoryAddress:"ค้นหาคอลเลกชัน DID",configFactories:"ตั้งค่าคอลเลกชัน NFT ที่น่าเชื่อถือ",configFactoriesTip:"อนุญาตให้ผู้ใช้แลกเปลี่ยน NFT เพื่อหนังสือเดินทาง",factoryAddress:"ที่อยู่การเก็บรวบรวม NFT",factory404:"ไม่พบคอลเลกชัน NFT",factoryAddressTip:"ที่อยู่ของคอลเล็กชัน NFT ต้องอยู่ใน ArcBlock Main Chain",role:"ประเภทหนังสือเดินทาง",ttl:"นโยบายการหมดอายุของหนังสือเดินทาง",ttlNever:"ไม่มีวันหมดอายุ",ttlMint:"ตั้งแต่การซื้อ NFT",ttlExchange:"ตั้งแต่การแลกเปลี่ยนหนังสือเดินทาง",ttlNeverTip:"หนังสือเดินทางจะมีอายุใช้งานจนถูกยกเลิก",ttlMintTip:"หนังสือเดินทางจะมีความถูกต้องตั้งแต่ซื้อ NFT จนถึงช่วงเวลาที่คุณระบุ (ttl) หรือถอนคืน",ttlExchangeTip:"หนังสือเดินทางจะถูกต้องตั้งแต่เวลาที่ผู้ใช้แลกเปลี่ยนเรียบร้อยจนถึง ttl หรือเพิกถอนที่คุณระบุ",ttlTip:'"365d" หมายถึง 365 วัน คุณยังสามารถใช้ "30 วัน" หรือ "24 ชั่วโมง" ได้',validUntil:"ใช้ได้ถึง: {date}",externalPassport:"หนังสือเดินทางภายนอก",notTrustedIssuerTip:"ไม่สามารถใช้หนังสือเดินทางได้เนื่องจากผู้ออกไม่อยู่ในรายชื่อผู้ออกที่น่าเชื่อถือ",issuerDid:"เลขประจำตัวผู้ออก",addNodeToTrustedIssuers:"เพิ่มเซิร์ฟเวอร์ปัจจุบันเป็นผู้ออกหนังสือเดินทางที่น่าเชื่อถือ",revoked:"ถูกยกเลิก",noPermission:"ไม่มีสิทธิ์ในการทำการดำเนินการนี้",shouldNotDeleteCurrent:"คุณไม่สามารถเพิกถอนหนังสือเดินทางที่ใช้อยู่ได้ในขณะนี้",mappingRule:"กฎเชื่อมต่อ",defaultRule:"กฎเริ่มต้น",search:"ค้นหาหนังสือเดินทาง",searchIssuerDid:"ค้นหาผู้ออก DID",issueBy:"ปัญหาโดย {name}",configColor:"ตั้งค่าสีหน้ากากหนังสือเดินทาง",configColorTip:"ปรับแต่งสีหนังสือเดินทาง",color:"สีหน้ารักษาตัว",description:"ใช้หนังสือเดินทางนี้เพื่อเชื่อมต่อ {teamName} เป็น {title}",displayBuiltin:"ในตัว",displayCustom:"แบบกำหนดเอง",typesTip:"กำหนดประเภทของพาสปอร์ต แยกตามเครื่องหมายจุลภาค",issuanceDate:"วันออก: {date}",sourceMaps:{recover:"กู้คืน",issue:"ออก",invite:"ได้รับเชิญ",trusted:"น่าเชื่อถือ"},related:"หนังสือเดินทางที่เกี่ยวข้อง",operationLogs:"บันทึกการทำงาน",owner:"เจ้าของ",status:"สถานะ",statusMap:{valid:"ถูกต้อง",revoked:"เพิกถอน",expired:"หมดอายุ"},view:"จัดการหนังสือเดินทาง",trustedPassportIssuersTip:"จัดการผู้ให้บริการหนังสือเดินทางที่เชื่อถือได้ซึ่งสามารถใช้เพื่อออกหนังสือเดินทาง",issuanceTime:"เวลาออก",relatedDescription:"หนังสือเดินทางปัจจุบันได้มาจากหนังสือเดินทางต่อไปนี้",passportExpireTime:"ตั้งวันที่หมดอายุสําหรับ Passport",customExpireTime:"เวลาหมดอายุแบบกำหนดเอง",customExpireTimeIsInvalid:"เวลาหมดอายุที่กำหนดเองไม่ถูกต้อง"},inviting:{link:"ลิงก์เชิญ",inviter:"ผู้เชื้อเชิญ",delete:{title:"ลบลิงก์เชิญ",description:"ยืนยันการลบ {link}?"},disabledTip:"ไม่สามารถเปิดใช้งานการเชิญเป็นไปได้"},whoCanAccess:{all:{title:"สามารถเข้าถึงได้สำหรับทุกคน"},owner:{title:"เฉพาะเจ้าของเท่านั้น"},invited:{title:"เฉพาะผู้ใช้ที่ได้รับเชิญ"}},userFollowers:{follow:"ติดตาม",unfollow:"เลิกติดตาม",followersOnly:"มองเห็นได้เฉพาะผู้ติดตามเท่านั้น",followers:"ผู้ติดตาม",following:"กำลังติดตาม",emptyFollowing:"ยังไม่มีผู้ใช้ที่คุณกำลังติดตาม",emptyFollowers:"ยังไม่มีผู้ติดตาม",title:"ติดตาม",invitees:"ผู้ได้รับเชิญ",emptyInvitees:"คุณยังไม่ได้เชิญใครเลย"},orgs:{explain:"อนุญาตให้ผู้ใช้สร้างและเข้าร่วมองค์กร กำหนดบทบาทและจัดการทรัพยากร",description:"คำอธิบาย",deleteConfirm:"ยืนยันการลบ {name}?",members:"สมาชิก",myCreated:"สิ่งที่ฉันสร้าง",myJoined:"สิ่งที่ฉันเข้าร่วม",myCreatedEmpty:"คุณยังไม่ได้สร้างองค์กรใดๆ",myJoinedEmpty:"คุณยังไม่ได้เข้าร่วมองค์กรใด",deleteConfirmDescription:"การลบองค์กรนี้จะลบบทบาทและทรัพยากรทั้งหมดที่เชื่อมโยงกับองค์กรนี้ ผู้ใช้จะยังคงอยู่ในระบบ แต่จะสูญเสียบทบาทในองค์กรนี้ การดำเนินการนี้ไม่สามารถยกเลิกได้",active:"ใช้งาน",deleteOrg:"ลบองค์กรปัจจุบัน",invitedAt:"ได้รับเชิญเมื่อ: {time}",joinedAt:"เข้าร่วมเมื่อ: {time}",createNew:"สร้างองค์กรใหม่",viewAll:"ดูองค์กรทั้งหมด",validate:{nameEmpty:"ชื่อต้องไม่ว่าง",nameTooLong:"ชื่อไม่สามารถเกิน {length} อักขระ",descriptionTooLong:"คำอธิบายต้องไม่เกิน {length} ตัวอักษร"},mutate:{title:"{mode} องค์กร",name:"ชื่อองค์กร",createSuccess:"สร้างองค์กรสำเร็จแล้ว",updateSuccess:"อัปเดตองค์กรสำเร็จแล้ว",orgNotEnabled:"ไม่ได้เปิดใช้งานองค์กร",maxMemberPerOrg:"องค์กรสามารถเชิญสมาชิกได้สูงสุด {maxMemberPerOrg} คน",maxOrgPerUser:"คุณสามารถสร้างองค์กรได้สูงสุด {maxOrgPerUser} องค์กร"},invite:{chooseUsersToInvite:"เลือกผู้ใช้ที่จะเชิญ",success:"ส่งคำเชิญถึงผู้ใช้แล้ว",pleaseSelectUsers:"โปรดเลือกผู้ใช้",pleaseSelectRole:"โปรดเลือกบทบาท",inviteExternalUsers:"เชิญผู้ใช้ภายนอก",failed:"คำเชิญผู้ใช้ {count} รายการล้มเหลว โปรดลองอีกครั้งในภายหลัง",remove:"ลบผู้ใช้",removeSuccess:"ลบผู้ใช้สำเร็จ",limit:"จำกัด",limitTip:"จำกัดจำนวนสมาชิกองค์กรและองค์กรต่อผู้ใช้",maxMembers:"สมาชิกสูงสุดต่อ org",maxOrgs:"จำนวนองค์กรสูงสุดต่อผู้ใช้",maxMembersTip:"จำนวนผู้ใช้สูงสุดที่สามารถเชิญสำหรับองค์กรนี้",inviteLinkSendToEmail:"ลิงก์เชิญถูกส่งไปยังอีเมล ({email}) กรุณาตรวจสอบ",enterEmailAddress:"โปรดป้อนที่อยู่อีเมล",inviteTitle:"เชิญผู้ใช้เข้าร่วม {orgName}"},member:{removeMemberConfirm:"ยืนยันการลบ {name}?",removeMemberConfirmDescription:"หลังจากการลบ ผู้ใช้จะสูญเสียบทบาทและสิทธิ์ในองค์กร การดำเนินการนี้ไม่สามารถยกเลิกได้",removeInvitingMember:"ยืนยันการยกเลิกคำเชิญ {name}?",removeInvitingMemberDescription:"หลังจากการนำออก ผู้ใช้จะไม่สามารถเข้าร่วมองค์กรได้ และต้องได้รับเชิญใหม่ การกระทำนี้ไม่สามารถยกเลิกได้"}}},launcher:{provider:"ผู้ให้บริการ",adminUrl:"URL"},session:{blockAccess:"คุณถูกบล็อกจากการเข้าถึงเซิร์ฟเวอร์นี้"},launchBlocklet:{appInfo:"ข้อมูลแอปพลิเคชัน",appInfoDesc:"ยืนยันข้อมูลใบสมัคร",author:"ผู้เขียนแอปพลิเคชัน: {author}",setup:"ตั้งค่า Blocklet",redirect:"เปลี่ยนเส้นทาง",alreadyRunning:"แอปพลิเคชัน {name} กำลังทำงานอยู่บนเซิร์ฟเวอร์ Blocklet นี้",alreadyInstalled:"แอปพลิเคชัน {name} ถูกติดตั้งไว้ในเซิร์ฟเวอร์ Blocklet นี้แล้ว",alreadyExists:"แอปพลิเคชันนี้มีอยู่แล้ว กำลังเปลี่ยนเส้นทาง...",purchased:"ซื้อแล้ว",purchase:"การซื้อ",nextStep:"ขั้นตอนถัดไป",agreement:"ข้อตกลงในการอนุญาต",agreeAll:"ยอมรับและดำเนินการต่อ",installing:"กำลังติดตั้ง {appName} บน {serverName}, อาจใช้เวลาหลายนาทีในการเสร็จสิ้น กรุณารอสักครู่...",redirecting:"{appName} ถูกติดตั้งสำเร็จแล้ว, กำลังเริ่มต้น...",start:"เปิดใช้งาน",launch:"ติดตั้ง Blocklet ลงในเซิร์ฟเวอร์",launchSuccess:"{appName} ถูกเปิดใช้งานเรียบร้อยแล้ว!",installSuccess:"Blocklet ติดตั้งและเปิดใช้งานบน {serverName} สำเร็จ",openInRegistry:"ดูใน Blocklet Store",subTitle:"พร้อมที่จะติดตั้ง Blocklet {appName} บน {serverName}",installingSubTitle:"กำลังติดตั้ง {appName}",access:"เปิดแอปพลิเคชัน",viewApplication:"ดูแอปพลิเคชัน",newVersion:"เวอร์ชันใหม่",newVersionDesc:"แอปพลิเคชันมีอยู่แล้ว แต่เวอร์ชันปัจจุบันสามารถอัพเกรดได้",upgradeNow:"อัพเกรดตอนนี้",later:"ต่อไป",introduction:"การแนะนำ",welcome:"ยินดีต้อนรับสู่ Blocklet Launch Wizard",accept:"ฉันเห็นด้วยกับ EULA ของ Blocklet",license:"ใบอนุญาตแอปพลิเคชัน",next:"ยอมรับ EULA และดำเนินการต่อ",purchaseApp:"ซื้อ Blocklet",setupAppDesc:"เริ่มต้น Blocklet ของคุณ",launched:"เสร็จสมบูรณ์",confirmInstall:"ยืนยันการติดตั้ง",dialog:{title:"กลายเป็นเจ้าของแอป",nftFreeDescription:"โปรดแสดงพื้นที่แอปพลิเคชัน NFT และสร้างบัญชีแอปเพื่อดำเนินการต่อ",nftPaidDescription:"โปรดนำเสนอ NFT พื้นที่แอปและ NFT การซื้อแอปเพื่อดำเนินการต่อ",freeDescription:"กรุณาสร้างบัญชีแอปเพื่อดำเนินการต่อ",paidDescription:"โปรดแสดงการซื้อ NFT แอปพลิเคชันและสร้างบัญชีแอปเพื่อดำเนินการต่อ",confirm:"ยืนยันในบัญชีของคุณ",success:"อนุญาตสำเร็จแล้ว",authorizationTimeout:"หมดเวลาอนุญาต"},waiting:{verifying:"การตรวจสอบฮีโร่อนุกรมแอป...",downloading:"กำลังดาวน์โหลดกลุ่มแอป...",downloadingComponent:"กำลังดาวน์โหลด {name}",extractingComponent:"สกัด {name}",extracting:"กำลังแยกไฟล์แอปพลิเคชัน...",installing:"กำลังติดตั้งส่วนประกอบของแอป...",installed:"ติดตั้งแล้ว",starting:"กำลังเริ่มแอป...",done:"แอปของคุณกำลังเปิดตัว...",parsing:"กำลังวิเคราะห์เมตาแอป...",initializing:"กำลังเริ่มต้นการกำหนดค่าแอป...",initializingOwner:"กำลังเริ่มต้นเจ้าของแอป...",creatingSecurityRules:"กำลังสร้างกฎความปลอดภัยเริ่มต้น...",assigningDomain:"กำหนดโดเมนเริ่มต้น...",waitingForDomain:"กำลังรอโดเมนเริ่มต้นใช้งาน..."},error:{loadMetaFailed:"โหลดข้อมูลแอปล้มเหลว",appMetaNotFound:"ไม่พบข้อมูลสำหรับแอพนี้",downloadFailed:"การดาวน์โหลดแอปล้มเหลว โปรดลองอีกครั้ง",installFailed:"การติดตั้งแอปล้มเหลว โปรดลองอีกครั้ง",startFailed:"การเริ่มต้นแอปล้มเหลว โปรดลองอีกครั้ง",launchFailed:"ไม่สามารถเริ่มต้นแอปพลิเคชันได้ โปรดลองอีกครั้ง",installedButStopped:"แอปติดตั้งสำเร็จ แต่ไม่สามารถเริ่มต้นใช้งานได้ คุณสามารถเริ่มใช้งานด้วยตนเองหลังจากแก้ไขปัญหาการบล็อก",installedButError:"แอปพลิเคชันถูกติดตั้งเรียบร้อยแล้ว แต่ไม่สามารถเริ่มต้นใช้งานได้",restoreFailed:"การเรียกคืนแอปล้มเหลว โปรดลองอีกครั้ง",resourceBlocklet:"ไม่สามารถเปิดใช้งานบล็อกได้โดยตรง แต่คุณสามารถเพิ่มลงในแอปพลิเคชันที่มีอยู่"},steps:{introduction:"แนะนำ",installApp:"ติดตั้งแอปพลิเคชัน",purchaseSpace:"ซื้อพื้นที่",prepareSpace:"เตรียมพื้นที่"},installRelatedComponents:"ติดตั้ง Blocklets ที่เกี่ยวข้อง",canNotInstall:"ไม่สามารถติดตั้ง",dockerBlockletCantInstall:"ไม่สามารถติดตั้ง Blocklet ได้ เพราะ Blocklet Server ยังไม่ได้เปิดใช้งาน Docker หรือ Docker Network",nav:{myApps:"แอปของฉัน",viewMyApps:"ดูแอปของฉัน"},withoutWallet:"ข้ามการเชื่อมต่อกระเป๋าเงิน DID",nwFailed:"ไม่สามารถดึงเวิร์กโฟลว์ได้",alreadyConsumed:"เซสชันการเปิดตัวถูกใช้งานแล้ว",redirectToLauncherBlocklet:"กำลังเปลี่ยนเส้นทางไปยัง Launcher Blocklet"},issuePassport:{title:"รับหนังสือเดินทาง",description:"ใช้เมธอดต่อไปนี้เพื่อรับหนังสือเดินทางที่ออกโดย {name}",dialog:{scan:"ใช้เมธอดต่อไปนี้เพื่อขอรับหนังสือเดินทาง",confirm:"ยืนยันในบัญชีของคุณ",success:"หนังสือเดินทางถูกเพิ่มเข้าไปในกระเป๋าเงินของคุณเรียบร้อยแล้ว",loginWithPassport:"เชื่อมต่อกับพาสปอร์ตนี้",autoClose:"หน้าจอจะปิดอัตโนมัติในอีก {seconds}s",autoJump:"หน้าจะกระโดดอัตโนมัติใน {seconds}s"}},lostPassport:{title:"หายใบหนังสือเดินทาง",description:"เจ้าของ {name} สามารถใช้ วิธีการต่อไปนี้เพื่อเรียกคืนหนังสือเดินทาง สมาชิกโปรดติดต่อเจ้าของเพื่อออกหนังสือเดินทางใหม่",return:"ยกเลิกการดึงข้อมูล กลับไปยังหน้าแรก",receivePassport:"รับหนังสือเดินทาง",recoverDialog:{title:"กู้คืนหนังสือเดินทาง",scan:"ใช้ วิธีการต่อไปนี้เพื่อรับหนังสือเดินทางของคุณ",confirm:"ยืนยันบนกระเป๋าเงิน DID ของคุณ",success:"ดึงข้อมูลสำเร็จ"},receiveDialog:{title:"รับหนังสือเดินทาง",scan:"ใช้วิธีการต่อไปนี้เพื่อรับหนังสือเดินทาง",confirm:"ยืนยันบนกระเป๋าเงิน DID ของคุณ",success:"ได้รับเรียบร้อยแล้ว"},recoverPassport:"กู้คืนหนังสือเดินทาง"},invite:{message:"{name} เชิญคุณเป็น {role} ของ {dapp}",success:"คุณได้เข้าร่วม {dapp} สำเร็จแล้ว",receive:"รับด้วย",validUntil:"ใช้ได้ถึง:",viewPermission:"การอนุญาตให้ดู",emptyPermission:"สิทธิ์ว่างเปล่า",open:"เปิด",description:{step1:"ดาวน์โหลดและติดตั้ง {wallet} ของคุณ",step2:"คลิกที่ปุ่มด้านบนเพื่อรับหนังสือเดินทาง",step3:"เข้าสู่ระบบ {dapp} ด้วยหนังสือเดินทางที่ได้รับ"},transferNFTDialog:{title:"ยอมรับเซิร์ฟเวอร์ Blocklet {name}",scan:"เชื่อมต่อ Launcher เพื่อดำเนินการเตรียมตัวในการรับบล็อกเล็ตเซิร์ฟเวอร์",confirm:"กรุณาตรวจสอบการดำเนินการนี้ในกระเป๋าเงินดิจิตอล",success:"เชื่อมต่อสำเร็จแล้ว กำลังรอการยืนยันการรับจากเซิร์ฟเวอร์"}},receive:{dialog:{title:"รับหนังสือเดินทาง",scan:"หลังจากได้รับหนังสือเดินทางแล้ว คุณสามารถใช้หนังสือเดินทางเพื่อเข้าสู่ระบบแอปพลิเคชันได้",confirm:"ยืนยันในบัญชีของคุณ",success:"คุณเชื่อมต่อสำเร็จแล้ว",scanWithDid:"โปรดใช้บัญชี {did} เพื่อรับพาสปอร์ตนี้ หลังจากได้รับพาสปอร์ตแล้ว คุณสามารถใช้พาสปอร์ตเพื่อเข้าสู่ระบบแอปพลิเคชันได้"}},navigation:{navigation:"การนำทาง",actionFailed:"การดำเนินการล้มเหลว",form:{themeConfig:"การตั้งค่าทรัพย์สินทรัพย์",contentConfig:"การตั้งค่าสิ่งที่แสดง",title:"หัวข้อ",titlePlaceholder:"กรุณาใส่ชื่อการนำทาง",titleTooLong:"ความยาวของชื่อเรื่องควรเล็กกว่า {len}",description:"คำอธิบาย",descriptionPlaceholder:"กรุณาใส่คำอธิบายการนำทาง",descriptionTooLong:"ความยาวของคำอธิบายควรเล็กกว่า {len}",icon:"ไอคอนเริ่มต้น",iconPlaceholder:"เลือกไอคอน",invalidIcon:"ไอคอนไม่ถูกต้อง",findMoreIcon:"ค้นหาไอคอนเพิ่มเติม",link:"ลิงก์",linkPlaceholder:"โปรดใส่ลิงก์นำทาง",invalidLink:"ลิงก์ไม่ถูกต้อง",component:"องค์ประกอบ",componentPlaceholder:"กรุณาเลือกส่วนประกอบการนำทาง",role:"บทบาท",rolePlaceholder:"โปรดเลือกบทบาทการนำทาง",locale:"เขตตำบล",localePlaceholder:"โปรดป้อนสถานที่ที่ต้องการเพิ่ม",localeExists:"{value} มีอยู่แล้ว",activeIcon:"ไอคอนที่ใช้งานอยู่",activeColor:"สีใช้งาน",color:"สีเริ่มต้น",colorPlaceholder:"e.g., #FF0000",invalidColor:"สีไม่ถูกต้อง",searchIcons:"ค้นหาไอคอน",searchIconsPlaceholder:"ตัวอย่าง: mdi:home"},action:{add:"เพิ่มการนำทาง",addSub:"เพิ่มการนำทางย่อย",edit:"แก้ไขการเลือกทาง",hide:"ซ่อนการนำทาง",show:"แสดงการนำทาง",del:"ลบการนำทาง",new:"ใหม่",noAddSub:"ส่วนประกอบที่ถอนการติดตั้งไม่สามารถเพิ่มการนำทางย่อยได้",noEdit:"ไม่สามารถแก้ไขส่วนประกอบที่ถูกลบได้",noDel:"ไม่อนุญาตให้ลบการนำทางที่มีอยู่ล่วงหน้า",reset:"รีเซ็ต",restConfirmTitle:"รีเซ็ตการนำทาง {section} เป็นค่าเริ่มต้น?",restConfirmDesc:"การนำทางที่คุณกำหนดเองจะถูกล้างและคืนค่าไปยังรายการเริ่มต้น",resetSuccessful:"การรีเซ็ตสำเร็จ",delTabBarTitle:"คุณต้องการลบการนำทางนี้หรือไม่?",delTabBarDesc:"หลังจากลบแล้ว การนำทางจะถูกลบออกจากรายการการนำทาง"},access:"เข้าถึง",members:"สมาชิก",passport:"หนังสือเดินทาง",analytics:"การวิเคราะห์",dashboard:"แดชบอร์ด",studio:"Blocklet สตูดิโอ",blockletService:"บริการ Blocklet",didConnect:"เอกลักษณ์ & การเข้าถึง",didSpaces:"พื้นที่จัดเก็บ & การสำรองข้อมูล",website:"Website Studio",operations:"การสังเกตการณ์",integration:"การผสานรวม",developer:"นักพัฒนา",system:"ระบบ",services:"บริการ",aigne:"การเชื่อมต่อ AI",notification:"ศูนย์การแจ้งเตือน",overviewDesc:"ตรวจสอบสุขภาพและรายละเอียดแอปพลิเคชัน และติดตั้ง เริ่มต้น หรือลบ Blocklets ได้อย่างง่ายดายในที่เดียว.",didConnectDesc:"เพิ่มสมาชิกทีม, ตั้งค่าตัวเลือกการลงชื่อเข้าใช้ และจัดการการเข้าถึงอย่างปลอดภัยเพื่อการทำงานร่วมกันที่ราบรื่น.",aigneDesc:'กำหนดค่าการเชื่อมต่อที่เกี่ยวข้องกับ AI สำหรับ Blocklet ของคุณ รวมถึง <a href="{aigneHubUrl}" target="_blank">AIGNE Hub</a> และ <a href="{mcpUrl}" target="_blank">เซิร์ฟเวอร์ที่เข้ากันได้กับ MCP</a>.',websiteDesc:"จัดการโดเมน ปรับเปลี่ยนธีม ปรับแต่งแบรนด์ และปรับแต่งการนำทางเพื่อรูปลักษณ์เว็บไซต์ที่เป็นเอกลักษณ์.",operationsDesc:"ดูข้อมูลการวิเคราะห์, ตรวจสอบบันทึกกิจกรรม, รับการแจ้งเตือน และปรับตั้งค่าขั้นสูงตามความจำเป็น.",integrationsDesc:"เชื่อมโยงบริการภายนอกผ่าน Webhooks, กุญแจการเข้าถึง และเซิร์ฟเวอร์ MCP เพื่อขยายความสามารถของแอป",developersDesc:"ใช้บันทึก, การติดตามประสิทธิภาพ, และเอกสารในการสร้าง, แก้ไขข้อผิดพลาด, และปรับแต่งแอปของคุณ.",didSpacesDesc:"จัดเก็บและสำรองข้อมูลแอป Blocklet ของคุณอย่างปลอดภัยเพื่อให้แน่ใจว่ามีการป้องกันที่เชื่อถือได้และการกู้คืนที่ง่าย",publishDesc:"เผยแพร่แอปของคุณไปยังร้านค้าหรือแชร์ผ่านลิงก์เพื่อให้ผู้คนมากขึ้นสามารถใช้งานได้."},storage:{spaces:{title:"DID Spaces",tips:"เคล็ดลับ",label:"ป้อนเกตเวย์ของ DID Spaces",connected:{title:"พื้นที่ DID ที่เชื่อมต่อแล้ว",tag:"เชื่อมต่อ"},connectedWithName:"คุณได้เชื่อมต่อกับ {name} สำเร็จแล้ว",addedWithName:"คุณเพิ่ม {name} สำเร็จแล้ว",connects:"เชื่อมต่อ",reconnect:"เชื่อมต่ออีกครั้ง",addressCannotEmpty:"ที่อยู่ต้องไม่ว่างเปล่า",addressNotValid:"{url} ไม่ใช่ที่อยู่ที่ถูกต้อง",authorize:{title:"เชื่อมต่อ {appName} กับ DID Spaces",scan:"ใช้เมธอดต่อไปนี้เพื่ออนุญาตให้แอป {appName} เชื่อมต่อกับ DID Spaces",success:"เชื่อมต่อสำเร็จแล้ว"},provideNFT:{title:"โปรดแสดง DID Spaces NFT สำหรับ {appName}",scan:"ใช้เมธอดต่อไปนี้เพื่ออนุญาตให้แอป {appName} แสดง NFT Space DID",success:"เชื่อมต่อสำเร็จแล้ว"},backup:{title:"สำรองข้อมูล",records:"สำเนาข้อมูลสำรอง",without:"ไม่มีการสำรองข้อมูล",succeeded:"สำรองข้อมูลสำเร็จ",failed:"สำรองข้อมูลล้มเหลว",lastBackup:"เวลาสำรองข้อมูลล่าสุด",lastBackupTip:'ผ่านไปแล้ว {time} นับตั้งแต่การสำรองข้อมูลสำเร็จครั้งล่าสุดของคุณ โปรดตรวจสอบการตั้งค่าการสำรองข้อมูลของคุณในแท็บ "DID Spaces"',noBackup:"ไม่มีการสำรองข้อมูล",noBackupTip:"ยังไม่มีการสร้างการสำรองข้อมูล เราขอแนะนำให้ตั้งค่าการสำรองข้อมูลเป็นประจำเพื่อปกป้องข้อมูลและการตั้งค่าของคุณ",pending:"สำรองข้อมูลกำลังดำเนินการ",timeout:"หมดเวลาสำรองข้อมูล"},autoBackup:{title:"การสำรองข้อมูลอัตโนมัติ",enabled:"การสำรองข้อมูลอัตโนมัติเปิดใช้งานแล้ว",disabled:"การสำรองข้อมูลอัตโนมัติถูกปิดอยู่"},autoCheckUpdate:{title:"ตรวจสอบการแจ้งเตือนเวอร์ชันใหม่โดยอัตโนมัติ",enabled:"การตรวจสอบเวอร์ชันใหม่โดยอัตโนมัติเปิดใช้งานแล้ว",disabled:"การตรวจสอบเวอร์ชันใหม่โดยอัตโนมัติถูกปิด"},backupSuccessfully:"การสำรองข้อมูลสำเร็จ",restore:"กู้คืน",restoreSuccessfully:"ทำการกู้คืนสำเร็จ",gateway:{title:"ประตูเมือง",select:"เลือกพื้นที่การใช้ DID",add:{title:"เพิ่มพื้นที่ DID",label:"ป้อน URL ของพื้นที่ DID",failed:"เพิ่ม DID Spaces ล้มเหลว",invalidUrl:"URL ของเกตเวย์พื้นที่ DID ไม่ถูกต้อง",duplicate:"{name} เชื่อมต่อกับ blocklet นี้แล้ว"},delete:{title:"ลบ",succeeded:"ลบ DID Space {name} สำเร็จแล้ว",failed:"การลบล้มเหลว",failedForSelected:"ไม่สามารถลบ DID Space ที่เลือกได้",descForBackup:"หลังจากลบ {name}, คุณจะไม่สามารถสำรองข้อมูลจาก Blocklet นี้ไปยัง DID Space นี้ได้อีกต่อไป คุณต้องการลบหรือไม่?",descForStorage:"หลังจากลบ {name}, คุณจะไม่สามารถสำรองข้อมูลจาก Blocklet นี้ไปยัง DID Space นี้ได้อีกต่อไป คุณต้องการลบหรือไม่?"},connect:{title:"เชื่อมต่อห้อง DID Spaces",add:"เชื่อมต่อกับพื้นที่ DID ตอนนี้",addTips:"คุณยังไม่ได้เชื่อมต่อกับพื้นที่ DID ใด ๆ",switch:"สลับพื้นที่ DID",switchTips:"คุณได้เชื่อมต่อกับ {name}",connected:"เชื่อมต่อแล้ว"},switch:{failedForMismatchSpace:"โปรดเชื่อมต่อกับ DID Space ที่ถูกต้อง {name}"},connectTo:"เชื่อมต่อกับ DID Spaces"},strategy:{title:"กลยุทธ์การสำรองข้อมูล",autoBackup:"การสำรองข้อมูลอัตโนมัติ",backupNow:"สำรองข้อมูลเดี๋ยวนี้",viewBackupFiles:"ดูไฟล์สำรองข้อมูล"},progress:{title:"ความคืบหน้าการสำรองข้อมูล"},record:{title:"สำรองข้อมูลบันทึก",emptyData:"ไม่มีบันทึก"},notYet:"คุณยังไม่มีการสำรองข้อมูลที่กำลังดำเนินการ...",connect:{now:"เชื่อมต่อตอนนี้",title:"เชื่อมต่อ DID Spaces",provider:"ให้ DID Space ของคุณเพื่อเริ่มการสำรองข้อมูล",providerForStorage:"ให้ DID Space ของคุณสำหรับจัดเก็บข้อมูล",useWallet:"เชื่อมต่อด้วยกระเป๋าเงิน DID",useWalletReconnect:"เชื่อมต่อใหม่ด้วยกระเป๋าเงิน DID",useSpaceGateway:"เชื่อมต่อโดยใช้เกตเวย์ DID Spaces",useSpaceGatewayReconnect:"เชื่อมต่อใหม่โดยใช้เกตเวย์ DID Spaces",switchToSpace:"สลับไปยัง DID Space",switchToSpaceSucceeded:"เปลี่ยนเป็นพื้นที่ DID {name}",succeeded:"เชื่อมต่อกับ DID Space สำเร็จ",disconnect:"ยกเลิกการเชื่อมต่อ",abortBlockletBackup:"ยกเลิกการสำรองข้อมูล"},disconnected:{tag:"ตัดการเชื่อมต่อ",reconnectNow:"เชื่อมต่ออีกครั้งตอนนี้"}},appLevel:{title:"การจัดเก็บข้อมูลที่มีระดับการใช้งาน",description:"ข้อมูลทั้งหมดที่สร้างขึ้นโดยการใช้งานจะถูกจัดเก็บไว้ใน DID Space นี้"}},log:{lastDays:{1:"1 วันที่ผ่านมา",7:"1 สัปดาห์ที่ผ่านมา"}},oauth:{auth0:{},github:{},google:{},apple:{},authorize:"การอนุญาต OAuth",client:{tab:"แอป OAuth",name:"ชื่อแอป",clientId:"รหัสลูกค้า",clientSecret:"รหัสลับของลูกค้า",scope:"ขอบเขต",redirectUris:"URL เปลี่ยนเส้นทาง",grantTypes:"ประเภทการอนุญาต",responseTypes:"ประเภทการตอบสนอง",tokenEndpointAuthMethod:"วิธีการตรวจสอบสิทธิ์ของ Token Endpoint",actions:"การกระทำ",grantResponse:"การอนุญาตและการตอบสนอง",metaContact:"Meta & ติดต่อ",clientUri:"URI ไคลเอ็นต์",logoUri:"URI โลโก้",contacts:"รายชื่อติดต่อ",tosUri:"URL ข้อกำหนดในการให้บริการ",policyUri:"URI นโยบาย",jwksSoftware:"JWKS & Software",jwksUri:"URI JWKS",jwks:"JWKS",softwareId:"รหัสซอฟต์แวร์",softwareVersion:"เวอร์ชันซอฟต์แวร์",clientSecretExpiresAt:"Client Secret หมดอายุเวลา",clientIdIssuedAt:"รหัสลูกค้า ออกให้เมื่อ",oauthAppDetails:"รายละเอียดแอป OAuth",oauthEndpoints:"Endpoints OAuth",authorizationEndpoint:"จุดสิ้นสุดการอนุญาต",tokenEndpoint:"Endpoint โทเค็น",userinfoEndpoint:"จุดสิ้นสุดข้อมูลผู้ใช้",registrationEndpoint:"จุดสิ้นสุดการลงทะเบียน",endSessionEndpoint:"จุดสิ้นสุดเซสชัน",validate:{clientName:"ต้องระบุชื่อแอป",clientNameMinLength:"ชื่อแอปต้องมีอย่างน้อย 3 ตัวอักษร",clientUri:"ต้องระบุ URL หน้าแรก",clientUriInvalid:"กรุณากรอก URL ที่ถูกต้อง เริ่มต้นด้วย http:// หรือ https://",redirectUris:"จำเป็นต้องใช้ URL การเรียกกลับการอนุญาต",redirectUrisInvalid:"กรุณากรอก URL ที่ถูกต้อง เริ่มต้นด้วย http:// หรือ https://",contacts:"กรุณากรอกที่อยู่อีเมลที่ถูกต้อง โดยคั่นด้วยเครื่องหมายจุลภาค",tosUri:"URL ข้อกำหนดในการให้บริการจำเป็นต้องระบุ",tosUriInvalid:"กรุณากรอก URL ที่ถูกต้อง",policyUri:"จำเป็นต้องใช้ URL นโยบาย",policyUriInvalid:"กรุณากรอก URL ที่ถูกต้อง",jwksUri:"จำเป็นต้องใช้ JWKS URI",jwksUriInvalid:"กรุณากรอก URL ที่ถูกต้อง",jwks:"จำเป็นต้องใช้ JWKS",jwksInvalid:"กรุณากรอก JWKS ที่ถูกต้อง"},input:{clientName:"ชื่อแอป",clientNamePlaceholder:"สิ่งที่ผู้ใช้จะจดจำและไว้วางใจ",clientUri:"URL หน้าแรก",clientUriPlaceholder:"https://your-app.com",redirectUris:"URL ตัวเรียกใช้การอนุญาต",redirectUrisPlaceholder:"https://your-app.com/callback",contacts:"อีเมลติดต่อ",contactsPlaceholder:"admin@your-app.com, support@your-app.com",permissions:"เลือกสิทธิ์ที่คุณต้องการ",tosUri:"URL ข้อกำหนดในการให้บริการ",tosUriPlaceholder:"https://your-app.com/terms",policyUri:"URL นโยบาย",policyUriPlaceholder:"https://your-app.com/policy",jwksUri:"URI JWKS",jwksUriPlaceholder:"https://your-app.com/jwks",jwks:"JWKS",jwksPlaceholder:"ชุดคีย์เว็บ JSON",expireTime:"ตั้งวันที่หมดอายุสำหรับ client secret เพื่อความปลอดภัยที่ดีขึ้น"},helperText:{clientName:"สิ่งที่ผู้ใช้จะจดจำและไว้วางใจ",clientUri:"URL เต็มของหน้าแรกแอปพลิเคชันของคุณ",redirectUris:"URL ตัวเรียกกลับของแอปพลิเคชันของคุณ",contacts:"ที่อยู่อีเมลของผู้รับผิดชอบแอปพลิเคชัน",tosUri:"URL ข้อกำหนดในการให้บริการของแอปพลิเคชันของคุณ",policyUri:"URL นโยบายความเป็นส่วนตัวของแอปพลิเคชันของคุณ",read:"อ่าน",document:"เอกสาร OAuth",more:"สำหรับข้อมูลเพิ่มเติม"},delete:{title:"ลบ OAuth Client",description:"คุณแน่ใจหรือไม่ว่าต้องการลบไคลเอนต์ OAuth {clientName} นี้"},register:"สร้างแอป OAuth ใหม่",requiredInformation:"ข้อมูลที่จำเป็น",optionalInformation:"ข้อมูลเพิ่มเติม",registerButton:"สร้าง",logo:"โลโก้",openRegistration:"เปิดรับสมัคร",openidConfiguration:"การกำหนดค่า OpenID",createUser:"สร้างโดย",update:"อัปเดตแอป OAuth",listTitle:"เปิดใช้งานการเข้าถึงบุคคลที่สามอย่างปลอดภัยด้วยแอป OAuth",tooltipTitle:"ใช้เซิร์ฟเวอร์ OAuth ในตัวของแอปของคุณเพื่ออนุญาตให้แอปพลิเคชันภายนอกเข้าถึงด้วยโปรโตคอลมาตรฐานอุตสาหกรรม มอบการตรวจสอบสิทธิ์ที่ปลอดภัยและราบรื่น รวมถึงการควบคุมการเข้าถึงแบบมอบหมายให้กับผู้ใช้",empty:"ไม่มีการเพิ่มข้อมูล"},twitter:{}},expiration:{mobile:{tips:{success:"{validity}",warning:"{validity}",error:"หมดอายุ"},loadFailed:"ลองใหม่อีกครั้ง!"},desktop:{tips:{success:"การสมัครสมาชิกจะหมดอายุหลังจาก {validity}",warning:"การสมัครสมาชิกจะหมดอายุหลังจาก {validity}",error:"การสมัครสมาชิกหมดอายุ"},loading:"โหลดการสมัครสมาชิก...",loadFailed:"ไม่สามารถโหลดข้อมูลการสมัครสมาชิกได้ โปรดลองใหม่!",nextInvoice:"ใบแจ้งหนี้ถัดไป: {date}"}},analytics:{trend:"แนวโน้ม",detail:"การเสียหาย",traffic:{totalRequests:"คำขอทั้งหมด",validRequests:"คำขอที่ประสบความสำเร็จ",failedRequests:"คำขอล้มเหลว",uniqueVisitors:"ผู้เข้าชมที่ไม่ซ้ำกัน",uniqueFiles:"URL ที่ไม่ซ้ำกัน",uniqueReferrers:"ผู้แนะนำที่ไม่ซ้ำกัน",uniqueNotFound:"404 ไม่ซ้ำกัน",uniqueStaticFiles:"ไฟล์สแตติกที่ไม่ซ้ำกัน",logSize:"ขนาดล็อก",bandwidth:"แบนด์วิดท์"},runtime:"รันไทม์"},federated:{inviteJoinFederatedLogin:"เชิญเข้าร่วมเข้าสู่การเข้าสู่ระบบแบบเฟเดอเรต",inviteJoinFederatedLoginDescription:"คัดลอกที่อยู่ต่อไปนี้และใส่ลงในแอปพลิเคชันทีคุณต้องการเข้าร่วมในการสมัครใช้งานการเข้าสู่ระบบแบบมวลชน",federatedLogin:"เข้าสู่ระบบโดยการเชื่อมต่อแบบรวมกัน",joinFederatedLogin:"เข้าร่วมการเข้าสู่ระบบเฟเดอเรต",joinFederatedLoginDescription:"กรุณาใส่ที่อยู่การลงชื่อเข้าใช้โดยตรวจสอบที่ Master Blocklet เพื่อเข้าร่วมการลงชื่อเข้าใช้โดยตรวจสอบ",quitFederatedLogin:"ออกจากการเข้าสู่ระบบแบบดิสตริบิวต์",quitFederatedLoginDescription:"หลังจากออกจากการเข้าสู่ระบบผ่านระบบผู้บริหารร่วม, การเข้าสู่ระบบปกติจะมีอยู่เสมอ",federatedJoinAppUrl:"เข้าสู่ระบบด้วยล็อกอินแบบรวมที่ appUrl",federatedJoinAppUrlRequired:"โปรดใส่เข้าสู่ระบบผ่านการลงชื่อเข้าใช้ร่วมใน {appUrl}",failedToGetFederatedLoginAppUrl:"ล้มเหลวในการรับล็อกอินจากเครือข่ายร่วม, เข้าร่วม appUrl",federatedJoinAppUrlInvalid:"AppUrl เข้าสู่ระบบด้วยการรวมกันไม่ถูกต้อง",siteDetail:"รายละเอียดเว็บไซต์",approveToJoinLogin:"อนุมัติให้เข้าร่วมการเข้าสู่ระบบโดยการเชื่อมต่อร่วมกัน",approve:"เปิดใช้งานการเข้าสู่ระบบ",revoke:"ปิดการใช้งานการเข้าสู่ระบบ",enableFederatedLogin:"เปิดใช้งานการเข้าสู่ระบบตามฐานะ",disableFederatedLogin:"ปิดใช้งานการเข้าสู่ระบบผ่านแบบภาคี",enableFederatedLoginDescription:"หลังจากเปิดใช้งานการเข้าสู่ระบบแบบลาฟแล้ว เว็บไซต์นี้จะเข้าสู่ระบบโดยอัตโนมัติ",disableFederatedLoginDescription:"หลังจากปิดใช้งานการเข้าสู่ระบบแบบสมาคม ไซต์นี้จะไม่ทำการเข้าสู่ระบบอัตโนมัติ",enableFederatedAutoLogin:"เปิดใช้งานการเข้าสู่ระบบอัตโนมัติ",enableFederatedAutoLoginDescription:"หลังจากเปิดใช้งานการเข้าสู่ระบบอัตโนมัติหากในปัจจุบันมีสถานะการเข้าสู่ระบบที่เป็นไปตามข้อกำหนดร่วมกันเว็บไซต์จะเข้าสู่ระบบอัตโนมัติด้วยตัวตนของการเข้าสู่ระบบฝ่ายร่วม",disableFederatedAutoLogin:"ปิดการเข้าสู่ระบบอัตโนมัติ",disableFederatedAutoLoginDescription:"หลังจากการเข้าสู่ระบบอัตโนมัติถูกปิดลงแล้ว เว็บไซต์จะไม่เข้าสู่ระบบอัตโนมัติโดยข้อมูลการเข้าสู่ระบบแบบเดียวกัน และคุณยังคงสามารถเลือกที่จะคลิกเข้าสู่ระบบด้วยตนเองด้วยตัวบุคคลที่ทำการเข้าสู่ระบบร่วมกัน",info:{appId:"APP เสร็จแล้ว",appPid:"หมายเลขประจำตัวถาวร",migratedFrom:"ที่รู้จักเรียกอีกชื่อว่า",appName:"ชื่อ Blocklet",appDescription:"คำอธิบายบล็อกเล็ต",appUrl:"URL Blocklet",appLogo:"โลโก้ Blocklet",did:"Blocklet DID",serverId:"ไอดีเซิร์ฟเวอร์บล็อกเล็ต",serverVersion:"เวอร์ชันของ Blocklet Server",version:"เวอร์ชัน Blocklet",appliedAt:"สมัครที่",status:"สถานะ"},status:{pending:"รอดำเนินการ",approved:"ได้รับการอนุมัติ",rejected:"ถูกปฏิเสธ",revoked:"ถูกยกเลิก"},disbandFederatedLogin:"ยกเลิกการเข้าสู่ระบบแบบเชื่อมต่อระดับสหพันธ์",disbandFederatedLoginDescription:"หลังจากยุบรวมการเข้าสู่ระบบแบบเชื่อมโยงทั้งหมด ทุกเว็บไซต์สมาชิกจะหยุดการเข้าสู่ระบบแบบเชื่อมโยงโดยอัตโนมัติ",syncConfig:"ซิงค์การกำหนดค่าเว็บไซต์ที่เชื่อมโยงกัน",quitMember:"ลบ",quitMemberDescription:"ลบสมาชิกที่ระบุออกจากกลุ่มเว็บไซต์",removeFederatedLogin:"ลบสมาชิก",removeFederatedLoginDescription:"หลังจากลบสมาชิกที่ระบุออกจากกลุ่มไซต์ สมาชิกสามารถใช้เฉพาะการเข้าสู่ระบบปกติได้",title:"Federated Login คืออะไร?",description:"สามารถเข้าสู่ระบบแบบ Federated ได้ผ่าน single sign-on ในหลายระบบ คุณสามารถเชิญทีมอื่นๆ มาร่วมเข้าสู่ระบบแบบ Federated หรือเข้าร่วมแพลตฟอร์มการเข้าสู่ระบบแบบ Federated ขององค์กรอื่นๆ ได้อย่าง proactive",link:"ดูเอกสาร"},optionsOrder:{1:"ตัวเลือกหนึ่ง",2:"ตัวเลือกที่สอง"},securityRule:{title:"กฎความปลอดภัย",sortByDescription:"จัดเรียงตามลำดับความสำคัญที่ตรงกัน",add:"เพิ่มกฎความปลอดภัย",edit:"แก้ไขกฎความปลอดภัย",view:"ดูกฎความปลอดภัย",form:{precede:"ก่อนหน้า",pathPattern:"แพทเทิร์นเส้นทาง",pathPatternPlaceholder:"กรุณากรอกรูปแบบเส้นทาง",pathPatternErrorText:"รูปแบบเส้นทางไม่ถูกต้อง",accessPolicyOrResponseHeaderPolicyRequired:"ต้องมีนโยบายการเข้าถึงหรือส่วนหัวการตอบสนอง",accessPolicy:"นโยบายการเข้าถึง",accessPolicyPlaceholder:"กรุณาเลือกนโยบายการเข้าถึง",accessPolicyHelperText:"เลือกนโยบายสิทธิ์เข้าถึง",responseHeaderPolicy:"นโยบายส่วนหัวคำตอบ",responseHeaderPolicyPlaceholder:"โปรดเลือกนโยบายหัวตอบกลับ",responseHeaderPolicyHelperText:"กรุณาเลือกนโยบายส่วนหัวของการตอบกลับ",remark:"หมายเหตุ",remarkPlaceholder:"กรุณากรอกหมายเหตุ",component:"ส่วนประกอบ",componentPlaceholder:"โปรดเลือกส่วนประกอบ"},delete:{title:"ลบกฏรักษาความปลอดภัย?",description:"หลังจากลบกฎความปลอดภัย กฎดังกล่าวจะไม่มีผลอีกต่อไป"},useless:"กฎความปลอดภัยที่ไร้ประโยชน์"},responseHeaderPolicy:{title:"นโยบายส่วนหัวการตอบกลับ",add:"เพิ่มนโยบายส่วนหัวของการตอบกลับ",edit:"แก้ไขนโยบายส่วนหัวของการตอบกลับ",view:"ดูนโยบายส่วนหัวการตอบกลับ",form:{name:"ชื่อ",namePlaceholder:"โปรดป้อนชื่อ",description:"คำอธิบาย",descriptionPlaceholder:"กรุณาใส่คำอธิบาย",cors:{origin:"จุดเริ่มต้น",originPlaceholder:"รองรับรูปแบบโดเมนต่อไปนี้: http://www.example.com, http://*.example.com, http://www.example.com:8080, * (ไม่แนะนำให้ใช้เครื่องหมายดอกจันแทนทุกอักขระ)",originHelperText:"ชื่อโดเมนขึ้นต้นด้วย http:// หรือ https:// หนึ่งชื่อต่อหนึ่งบรรทัด หนึ่งตัวแทน * ต่อหนึ่งบรรทัด",methods:"วิธีการ",allowedHeaders:"ส่วนหัวที่ได้รับอนุญาต",allowedHeadersPlaceholder:"แนะนำให้กรอก *, รองรับการป้อนข้อมูลหลายบรรทัด",allowedHeadersHelperText:"แจ้งให้เซิร์ฟเวอร์ทราบว่าสามารถใช้หัวเรื่องคำขอ HTTP แบบกำหนดเองใดได้ในคำขอถัดไปเมื่อส่งคำขอ OPTIONS เช่น x-blocklet-version",exposedHeaders:"ส่วนหัวที่เปิดเผย",exposedHeadersPlaceholder:"รองรับข้อมูลเข้าหลายบรรทัด",exposedHeadersHelperText:"กำหนดค่า Expose-Headers เช่น X-Content-Range",maxAge:"Max-Age (วินาที)",maxAgeHelperText:"ระยะเวลาที่ผลลัพธ์มีผลบังคับใช้ของคำร้องขอ OPTIONS ซึ่งจะต้องเป็นจำนวนเต็มบวก",optionsSuccessStatus:"สถานะความสำเร็จของตัวเลือก",preflightContinue:"ดำเนินการ Prelight ต่อ",credentials:"ข้อมูลประจำตัว",smartModeHelperText:"เพิ่มชื่อโดเมนทั้งหมดของแอปพลิเคชันปัจจุบัน รวมทั้งชื่อโดเมนทั้งหมดของกลุ่มเว็บไซต์ลงชื่อเข้าใช้ที่เชื่อมต่อ",smartMode:"โหมดชาญฉลาด"},originOverride:"Origin Override",originOverrideHelperText:"อนุญาตให้ตรรกะในแอปกดทับส่วนหัวการตอบสนองนี้"},delete:{title:"ลบหัวข้อคำตอบ หรือไม่",description:"หลังจากลบหัวเรื่องนโยบายการตอบกลับแล้ว นโยบายจะไม่ได้ผลอีกต่อไป"}},accessPolicy:{title:"นโยบายการเข้าถึง",add:"เพิ่มนโยบายการเข้าถึง",edit:"แก้ไขนโยบายการเข้าถึง",view:"ดูนโยบายการเข้าถึง",form:{name:"ชื่อ",namePlaceholder:"กรุณาใส่ชื่อ",description:"คำอธิบาย",descriptionPlaceholder:"กรุณากรอกคำอธิบาย",roles:"บทบาทการเข้าถึง",accessType:"ประเภทของการเข้าถึง"},delete:{title:"ลบสิทธิ์การเข้าถึง?",description:"หลังจากนำนโยบายการเข้าใช้ออก นโยบายดังกล่าวจะไม่มีผลบังคับใช้"}},didConnect:{genKeyPair:{title:"สร้าง DID Blocklet",scan:"ใช้เมธอดต่อไปนี้เพื่อสร้าง Blocklet DID",success:"สร้าง DID Blocklet สำเร็จแล้ว",successDesc:"Blocklet DID ถูกสร้างเรียบร้อยแล้ว (การเผยแพร่ต่อไปนี้ต้องใช้กระเป๋าเงินที่สร้าง DID เพื่อดำเนินการ)"},common:{invalidSession:"เซสชันไม่ถูกต้อง",invalidSessionDesc:"เซสชันไม่พบหรือหมดอายุแล้ว",connectionError:"การเชื่อมต่อล้มเหลว"}},pagination:{next:"หน้าต่อไป",previous:"หน้าก่อนหน้า",rowsPerPage:"ต่อหน้า:",displayRows:"ของ",jumpToPage:"ไปที่หน้า:"},webhookEndpoint:{createWebhook:"สร้าง Webhook",createWebhookTitle:"สร้าง Webhook",selectAllEvents:"เลือกเหตุการณ์ทั้งหมด",selectAllEventsTooltip:"เลือกเหตุการณ์ทั้งหมดที่มีอยู่",selectedEventsCount:"{count} เหตุการณ์ที่เลือก",selectedCount:"{count} รายการที่เลือก",eventsCount:"{count} เหตุการณ์",saveWebhook:"สร้าง Webhook",noAvailableEvents:"ไม่มีกิจกรรม",loadingEvents:"กำลังโหลดเหตุการณ์...",loadingError:"ไม่สามารถโหลดเหตุการณ์ได้: {message}",title:"Webhooks",noWebhooksAdded:"ยังไม่ได้เพิ่ม webhook",validation:{urlRequired:"ต้องใช้ URL",urlInvalid:"กรุณากรอก URL ที่ถูกต้อง",descriptionRequired:"คำอธิบายจำเป็น",eventRequired:"กรุณาเลือกอย่างน้อยหนึ่งเหตุการณ์"},hosted:"จุดสิ้นสุดที่โฮสต์",add:"สร้าง Webhook",addTip:"ตั้งค่าจุดสิ้นสุด webhook ของคุณเพื่อรับเหตุการณ์แบบเรียลไทม์",listen:"ฟังเพื่อ",version:"เวอร์ชัน API",attempts:"การลองใช้ Webhook",url:{label:"URL",description:"URL จุดสิ้นสุด Webhook"},description:{label:"คำอธิบาย",description:"คำอธิบายเพิ่มเติมเกี่ยวกับจุดประสงค์ของ endpoint นี้"},events:{label:"เลือกเหตุการณ์ที่จะรับฟัง",description:"สวัสดี, {name}."},disabled:"ปิดใช้งาน",enabled:"เปิดใช้งาน",disable:"ปิดใช้งาน",enable:"เปิดใช้งาน",editWebhookTitle:"อัปเดต Webhook",updateWebhook:"อัปเดต Webhook",waitingForEvents:"กำลังรอเหตุการณ์...",loadingMore:"กำลังโหลดเพิ่ม...",loadMore:"โหลดเพิ่มเติม",response:"การตอบสนอง",request:"คำขอ",eventData:"ข้อมูลเหตุการณ์",deleteWebhook:{title:"ลบ Webhook?",description:"หลังจากลบ webhook แล้ว webhook นั้นจะไม่รับเหตุการณ์อีกต่อไป"},success:"สำเร็จ",listTitle:"ส่งข้อมูลเหตุการณ์แบบเรียลไทม์ด้วย Webhooks",tooltipTitle:"เชื่อมต่อแอปของคุณกับระบบภายนอกได้อย่างราบรื่นโดยการส่งการแจ้งเตือนเหตุการณ์แบบเรียลไทม์ Webhook ช่วยให้สามารถผสานรวมที่มีประสิทธิภาพและเวิร์กโฟลว์อัตโนมัติในเครื่องมือและบริการของคุณ",triggeredFrom:"Webhook นี้ถูกกระตุ้นจากความพยายาม"},description:{environment:"ตัวแปรปัจจุบันจะมีผลเมื่อ {name} กำลังทำงานอยู่ ต้องเริ่มต้นใช้งานใหม่เพื่อให้มีผล",preferences:"ตัวแปรปัจจุบันจะมีผลเมื่อ {name} กำลังทำงาน การเปลี่ยนแปลงจะถูกนำไปใช้หลังจากบันทึก ไม่จำเป็นต้องเริ่มต้นแอปพลิเคชันใหม่"},preferencesFor:"การตั้งค่าสำหรับ {name}",environmentFor:"สภาพแวดล้อมสำหรับ {name}",accessKey:"คีย์การเข้าถึง",embed:{iconTip:"คลิกเพื่อดูรายละเอียดการสมัครสมาชิก"},command:"คำสั่ง",mcp:{listTitle:"เข้าถึง Blocklet ของคุณจากไคลเอ็นต์ MCP",tooltipTitle:"สำรวจรายการเซิร์ฟเวอร์ MCP ที่ Blocklet นี้รองรับ เลือกเซิร์ฟเวอร์เพื่อดูคำสั่งการเชื่อมต่อที่คุณต้องการเพื่อเข้าร่วมจากไคลเอ็นต์ของคุณได้ทันที",endpoint:"จุดปลาย MCP",available:"เซิร์ฟเวอร์ MCP ที่พร้อมใช้งาน",noServer:"ไม่มีเซิร์ฟเวอร์ MCP"},installCommand:"คำสั่งติดตั้ง",label:{add:"เพิ่ม",apply:"ใช้ป้ายกำกับ",manage:"จัดการป้ายกำกับ",title:"ป้ายชื่อ",description:"คำอธิบาย",systemLabel:"ป้ายระบบ",create:"สร้างป้ายชื่อ",edit:"แก้ไขป้ายกำกับ",name:"ชื่อ",slug:"Slug",parentLabel:"ป้ายผู้ปกครอง",color:"สี",search:"ค้นหา ป้าย",saveSuccess:"บันทึกป้ายชื่อเรียบร้อยแล้ว",delete:"ลบ",deleteTip:'ลบ "{name}"?',deleteSuccess:"ลบป้ายกำกับสำเร็จ",reassignTip:"หากมีการใช้งานป้ายกำกับนี้ ให้กำหนดรายการใหม่ไปยังป้ายกำกับอื่น",reassignTo:"เลือ​กป้ายกำกับใหม่",recently:"ล่าสุด",noMatching:"ไม่พบป้ายกำกับ",noLabels:"ยังไม่มีการสร้างป้ายกำกับ",filter:"กรองป้ายกำกับ",createNewLabel:'สร้างป้ายกำกับใหม่ "{name}"',actionLabel:"กำหนดป้ายกำกับเป็นชุด",selectLabels:"เลือกป้ายกำกับ",deleteDesc:'หลังจากลบป้ายกำกับ ป้ายกำกับจะไม่ถูกใช้อีกต่อไป คุณแน่ใจหรือไม่ที่จะลบ "{name}"?',nameRequired:"ต้องระบุหัวข้อ",nameMinLength:"ชื่อเรื่องต้องมีอย่างน้อย 1 ตัวอักษร.",nameMaxLength:"ชื่อเรื่องต้องมีความยาวไม่เกิน 64 ตัวอักษร.",slugRequired:"Slug จำเป็นต้องกรอก",slugMinLength:"Slug ต้องมีอย่างน้อย 1 ตัวอักษร",slugMaxLength:"Slug ต้องมีความยาวน้อยกว่า 128 ตัวอักษร",descriptionMaxLength:"คำอธิบายต้องมีความยาวน้อยกว่า 255 ตัวอักษร",colorRequired:"ต้องระบุสี",colorInvalid:"สีไม่ถูกต้อง"},environmentTips:{delete:"คุณแน่ใจหรือไม่ว่าคุณต้องการลบแถวนี้?",deleteForbidden:"เฉพาะคีย์ของตัวแปรสภาพแวดล้อมที่กำหนดเองเท่านั้นที่สามารถเปลี่ยนได้."},authentication:{emailLoginDescription:"การเข้าสู่ระบบอีเมลจะใช้การตั้งค่าการแจ้งเตือนเพื่อส่งลิงก์การเข้าสู่ระบบหรือรหัสการเข้าสู่ระบบให้กับผู้ใช้.",emailNotificationRequired:"ตรวจสอบให้แน่ใจว่าคุณได้เปิดการแจ้งเตือนทางอีเมลแล้ว",chooseProvider:"วิธีการเข้าสู่ระบบ",chooseProviderPlaceholder:"เลือกวิธีการเข้าสู่ระบบเพื่อตั้งค่า",addLoginProvider:"เพิ่มวิธีการเข้าสู่ระบบ",updateLoginProvider:"อัปเดตวิธีการเข้าสู่ระบบ: {provider}",alreadyBindOAuth:"ผูกการเข้าสู่ระบบของบุคคลที่สามแล้ว",alreadyBindWallet:"ผูกกระเป๋า DID เรียบร้อยแล้ว",didConnectSettings:"การแสดงผล & แบรนด์",commonSettings:"การตั้งค่าทั่วไป",sessionSettings:"ความปลอดภัยของเซสชัน",federated:"การเข้าสู่ระบบแบบสหพันธรัฐ",loginProviders:"วิธีการเข้าสู่ระบบ",oauth:"เข้าสู่ระบบบุคคลที่สาม",save:"บันทึก",thirdPartyLogin:"ล็อกอินจากบุคคลที่สาม",viewDocument:"ดูเอกสาร",oauthCallbackUrl:"URL คอลแบ็ก",gotoEmailNotification:"เปิดการตั้งค่าการแจ้งเตือนอีเมล",deleteLoginProvider:"ลบผู้ให้บริการเข้าสู่ระบบ {provider}",deleteLoginProviderDescription:"หลังจากลบผู้ให้บริการล็อกอิน ผู้ใช้จะไม่สามารถล็อกอินด้วย {provider} ได้ คุณมั่นใจว่าต้องการดำเนินการต่อหรือไม่?",auth0:{title:"Auth0",enable:"เปิดใช้งานการเข้าสู่ระบบ Auth0",domain:"โดเมน",domainDescription:"โดเมนของ Auth0 จำเป็นต้องใช้",clientId:"รหัสลูกค้า",clientIdDescription:"ต้องการ ID ลูกค้าสำหรับแอพพลิเคชัน Auth0 OAuth",clientSecret:"รหัสลับของลูกค้า",clientSecretDescription:"ต้องการ Client Secret ของแอปพลิเคชัน Auth0 OAuth"},github:{title:"Github",enable:"เปิดใช้งานการเข้าสู่ระบบ Github",clientId:"รหัสลูกค้า",clientIdDescription:"ต้องระบุ Client ID ของแอปพลิเคชัน Github OAuth",clientSecret:"รหัสลับของลูกค้า",clientSecretDescription:"ต้องการ Client Secret ของแอปพลิเคชัน Github OAuth"},twitter:{title:"X",enable:"เปิดใช้งานการเข้าสู่ระบบ X",clientId:"รหัสลูกค้า",clientIdDescription:"ต้องมี Client ID ของแอพพลิเคชั่น OAuth",clientSecret:"รหัสลับของลูกค้า",clientSecretDescription:"จำเป็นต้องใช้ Client Secret ของแอปพลิเคชัน X OAuth"},google:{title:"Google",enable:"เปิดใช้งานเข้าสู่ระบบ Google",clientId:"รหัสลูกค้า",clientIdDescription:"ต้องมี Client ID ของแอปพลิเคชัน Google OAuth",clientSecret:"รหัสลับของลูกค้า",clientSecretDescription:"ต้องการ Client Secret ของแอปพลิเคชัน Google OAuth"},apple:{title:"แอปเปิ้ล",enable:"เปิดใช้งานการเข้าสู่ระบบด้วย Apple",teamId:"รหัสทีม",teamIdDescription:"ต้องระบุ ID ทีมของแอปพลิเคชัน Apple OAuth",serviceId:"รหัสบริการ",serviceIdDescription:"ต้องระบุรหัสบริการแอปพลิเคชัน Apple OAuth",keyId:"รหัสคีย์",keyIdDescription:"ต้องมี Key ID ของแอปพลิเคชัน Apple OAuth",authKey:"คีย์การยืนยันตัวตน",authKeyDescription:"จำเป็นต้องใช้คีย์การรับรองความถูกต้องของแอปพลิเคชัน Apple OAuth",bundleId:"รหัสชุด",bundleIdDescription:"จำเป็นต้องมี ID แพ็คเกจของแอปพลิเคชัน Apple OAuth"},wallet:{showQrcode:"แสดงรหัส QR"},didConnect:{showDidColor:"แสดงสีของ DID Connect",showAppInfo:"แสดงข้อมูล Blocklet"}}};export{e as default};
5
+ อัตราส่วน: 16:9`,copyrightDesc:"ใช้ใน: ปลายหน้าเว็บไซต์",appUrlDesc:"ใช้ใน: แผนผังเว็บไซต์และการแชร์บนโซเชียล",advanced:"การตั้งค่าขั้นสูง",errorReason:"ไม่สามารถเริ่ม Blocklet ได้ แต่คุณยังสามารถเข้าถึงมันได้โดยการคลิกปุ่มด้านล่าง.",nameValidateError:"ไม่ถูกต้อง: ขึ้นต้นด้วยตัวอักษร/ตัวเลข, 3–129 ตัวอักษร, เฉพาะ a–z, 0–9, - และ _"},overview:{source:"แหล่ง",deployedFrom:"นำเสนอจาก",accessControl:"การควบคุมการเข้าถึง",viewInStore:"ดูในร้านค้า"},diskInfo:{empty:"ข้อมูลดิสก์ไม่สามารถใช้ได้ในขณะนี้!",appDir:"ไดเรกทอรีแอป",dataDir:"ไดเรกทอรีข้อมูล",logDir:"ไดเร็กทอรีบันทึก",cacheDir:"ไดเร็กทอรีแคช"},runtimeInfo:{noRunning:"ข้อมูลเวลาการทำงานจะสามารถใช้ได้เมื่อ blocklet กำลังทำงาน!",memoryUsage:"การใช้หน่วยความจำ",cpuUsage:"การใช้งาน CPU",uptime:"เวลาทำงาน",port:"ท่าเรือ",processId:"รหัสกระบวนการ",dataStorage:"การจัดเก็บข้อมูล"},dist:{downloadLink:"ลิงก์ดาวน์โหลด",verify:"ตรวจสอบ"},status:{added:"เพิ่มแล้ว",waiting:"กำลังรอ",downloading:"กำลังดาวน์โหลด",extracting:"การแยกออก",installing:"กำลังติดตั้ง",upgrading:"อัพเกรด",installed:"ติดตั้งแล้ว",created:"สร้างแล้ว",starting:"เริ่มต้น",running:"วิ่ง",stopping:"หยุด",stopped:"หยุด",error:"ข้อผิดพลาด",deleting:"ลบออก",corrupted:"เสียหาย",purchasing:"กำลังรอการซื้อ",purchased:"ซื้อแล้ว",verifying:"ตรวจสอบการซื้อ",resource:"ทรัพยากร",failWithOldVersion:"เวอร์ชันใหม่ไม่สามารถเริ่มทำงานได้, Blocklet กำลังทำงานบนเวอร์ชันเก่า",hasSomeErrors:"{blocklets} ยังไม่ทำงานเต็มที่ อาจเกิดจากปัญหาหรือรอการเริ่มต้น."},list:{download:"ดาวน์โหลด",star:"ดาว",searchPlaceholder:"ค้นหาโดยชื่อบล็อกเล็ตหรือ DID"},component:{container:"การตั้งค่าทั่วโลก",showContainer:"แสดงการกำหนดค่าทั่วไป",didSpaceConfig:"ตั้งค่า DID Spaces",didSpaceConfigTip:"กรุณาทำการสมัครใช้งานต่อได้ด้านล่างเพื่อเก็บข้อมูลแอพลิเคชันในพื้นที่ DID",didSpaceConnected:"การอนุญาตการเก็บรักษาไปยัง: {endpoint}",checkUpdateTitle:"ตรวจสอบการอัปเดต",updateTitle:"อัพเดตองค์ประกอบ",noUpdate:"ไม่มีส่วนประกอบที่ต้องอัปเดต",add:"เพิ่มคอมโพเนนต์",selectComponent:"เลือกบล็อกเล็ท",selectRegistry:"เลือก Blocklet Store",selectRegistryTip:"คุณสามารถสลับร้านค้าบล็อกเพื่อดูส่วนประกอบเพิ่มเติมได้",selectInstance:"เลือกInstance",selectInstanceTip:"คุณสามารถเลือกอินสแตนซ์ที่มีอยู่หรือสร้างอินสแตนซ์ใหม่ได้ อินสแตนซ์ที่มีอยู่จะใช้การกำหนดค่าและข้อมูลที่บันทึกไว้ก่อนหน้านี้",newInstance:"สร้างอินสแตนซ์ใหม่",noComponent:"ไม่มีส่วนประกอบ",mountPoint:"จุดเชื่อมต่อคืออะไร?",mountPointTip:"หากคุณตั้งจุดแนบเป็น '/my-prefix' แล้วคำขอทั้งหมดที่เริ่มต้นด้วยจุดแนบนั้นจะถูกนำไปหาส่วนประกอบที่เลือก",delete:"ลบส่วนประกอบ",deleteDescription:"เมื่อลบออกแล้วจะไม่สามารถเข้าถึงได้ ยืนยันการลบหรือไม่?",purchase:"ต้องชำระเงิน",tip:{stopBlocklet:"กรุณาหยุดการทำงาน Blocklet ก่อน",requiredBy:"ส่วนนี้จำเป็นต้องใช้โดย {name}"},choose:"เลือก",addWithName:"เพิ่ม Blocklet ใน {name}",installingCanCloseWindowTip:"กำลังติดตั้งองค์ประกอบในพื้นหลัง คุณสามารถปิดหน้าต่างนี้ได้อย่างปลอดภัย",installSuccessTip:"ขอแสดงความยินดี ส่วนประกอบได้รับการติดตั้งเรียบร้อยแล้ว!",missDownloadTokenTip:"ไม่สามารถเพิ่มส่วนประกอบที่มีการชำระเงินได้โดยไม่มีโทเค็นการดาวน์โหลดที่ถูกต้อง",purchaseComponentSecondCheckTip:"โปรดแสดง NFT การซื้อ Blocklet เพื่อดำเนินการต่อ",installComponentError:"เกิดข้อผิดพลาดในการติดตั้งองค์ประกอบ โปรดลองอีกครั้ง",downloadComponentError:"เกิดข้อผิดพลาดในการดาวน์โหลดคอมโพเนนต์ โปรดลองอีกครั้ง",addComponentTip:{introduction:"ยินดีต้อนรับสู่ตัวช่วยสร้างส่วนควบคุมใหม่",isPurchase:"คุณต้องตรวจสอบ NFT ก่อนใช้ <b>{name}</b> เป็นส่วนประกอบ",belowInformation:"ด้านล่างคือข้อมูลสำหรับส่วนประกอบ:",verifyNFT:"โปรดเลือกวิธีการตรวจสอบ NFT",config:"กรุณากรอกการกำหนดค่าของคอมโพเนนต์",environment:"กรุณากรอกสภาพแวดล้อมขององค์ประกอบ",fromUrl:"เพิ่มบล็อคล็อตจาก URL",fromUpload:"เพิ่ม Blocklet จากการอัปโหลด",uploadFailed:"อัปโหลดล้มเหลว",allowedFileTypes:"ประเภทไฟล์ที่อนุญาตให้ upload: {types}"},addNext:"เพิ่ม {name}",upgradeNext:"อัพเกรด {name}",setting:"การตั้งค่า",noDependencies:"{name} ไม่มีความขึ้นอยู่กับอะไร",relatedComponents:"บล็อกเล็ตที่เกี่ยวข้อง",required:"ต้องการ",installed:"ติดตั้ง",installingTip:"กำลังติดตั้งส่วนประกอบ โปรดรอสักครู่... ",upgrade:"อัพเกรด",upgradeAvailable:"มีการอัปเกรดให้ใช้งาน",needBuy:"จำเป็นต้องซื้อ",isOfficial:"ได้รับการรับรองอย่างเป็นทางการ"},router:{urlPath:"URL Path",noRunning:"บล็อกเลตไม่ได้เริ่มทำงานในปัจจุบัน ไม่สามารถเข้าถึงผ่านทางที่อยู่ต่อไปนี้ได้!",securitySetting:"ตั้งค่าความปลอดภัย",checkUrlAccessible:"ตรวจสอบความสามารถในการเข้าถึงของที่อยู่",urlInaccessible:"อาจเกิดจากปัญหาเน็ตเวิร์ค ที่อยู่ไม่สามารถเข้าถึงได้ชั่วคราว",noAccessibleUrl:"URL ไม่สามารถเข้าถึงได้",domainLockTooltip:"โดเมนที่ระบบสร้างขึ้นไม่สามารถแก้ไขได้",urlLockTooltip:"ไม่สามารถแก้ไขเส้นทาง URL ที่ระบบสร้างขึ้นได้",showAllDomains:"แสดงโดเมนทั้งหมด",showAllDIDs:"แสดง DIDs ทั้งหมด",currentDomainTip:"คุณกำลังเข้าถึงหน้าปัจจุบันผ่านโดเมนนี้"},export:{title:"ส่งออก Blocklet",name:"ชื่อของ Bundle",nameTip:"ตัวอย่าง 'my-blocklet-name' หรือ '@my-scope/blocklet-name'",result:"ที่จะตามมาคืออะไร",exportSource:"ส่งออกที่มา",success:"ส่วนปิดถูกส่งออกสำเร็จ",resultTipStart:"กับ",resultTipEnd:"คุณสามารถสร้างและเผยแพร่บล็อกเล็ตนี้ภายในไม่กี่นาที",uploadedComponentTip:"ไม่สามารถส่งออกส่วนประกอบที่อัพโหลดโดยตรงได้:"},migrate:{title:"โอนย้ายแอปพลิเคชัน",scan:"เชื่อมต่อกระเป๋าเงิน DID เพื่อสร้างคีย์เพื่อแอปพลิเคชันนี้",confirm:"ตรวจสอบการดำเนินการนี้ในกระเป๋าเงินดิจิทัลของคุณ",success:"แอปพลิเคชันของคุณถูกย้ายเรียบร้อยแล้วหน้าจะรีเฟรชใหม่ในอีก {sec} วินาที",intro:{l1:"คลิกที่นี่",l2:"ในการย้ายแอปพลิเคชันของคุณไปยังเวอร์ชันใหม่ (การเปลี่ยนแปลงถูกระงับก่อนกำหนดเสร็จสิ้นการย้าย)",l3:"แอปพลิเคชัน DID จะถูกควบคุมอย่างเต็มที่จากกระเป๋าเงิน DID ของคุณ.",l4:"ข้อมูลแอปพลิเคชันจะถูกย้ายและไม่จำเป็นต้องทำการเปลี่ยนแปลงต่อไป",l5:"โครงสร้างแอปพลิเคชั่นใหม่จะช่วยให้คุณมีความยืดหยุ่นมากขึ้นเมื่อต้องเปลี่ยนส่วนประกอบ",l6:"4. โปรดอย่าเปลี่ยนจุดติดตั้งของส่วนเสริมก่อนที่จะเปิดตัวเวอร์ชันใหม่ของส่วนเสริม"},tip:{duplicate:"ค้นหาองค์ประกอบที่ซ้ำกัน {name} โปรดลบองค์ประกอบที่ไม่เกี่ยวข้องและโยกย้ายอีกครั้ง",running:"โปรดหยุดบล็อกเล็ตก่อนการย้าย"}},error:{isRunning:"Blocklet กำลังทำงาน โปรดหยุดก่อน",isInProgress:"Blocklet กำลังดำเนินการ โปรดรอให้เสร็จสิ้น"},publish:{createResource:"สร้างทรัพยากร",addResource:"เพิ่มการเผยแพร่",productTitle:"ผลิตภัณฑ์",versionTitle:"การเปลี่ยนเวอร์ชัน",imgTitle:"ภาพ",resourceTitle:"เนื้อหา",blockletEmptyTip:"ไม่มี Blocklets ที่นี่",createBlockletTip:"คุณสามารถสร้างบล็อกเล็ตใหม่ผ่านทรัพยากรที่มีอยู่และองค์ประกอบในแอปพลิเคชันนี้ได้",createBlocklet:"บล็อกใหม่",componentNotRunning:"Blocklet {name} ไม่ทำงาน โปรดเริ่มใช้งานก่อน",releaseEmptyTip:"ไม่มีการเผยแพร่ที่นี่",createReleaseTip:"คุณสามารถสร้างการเปิดตัวของโบล็กเล็ตพร้อมกับบันทึกการเปิดตัวและทรัพยากรสำหรับผู้อื่นที่ต้องการใช้",createRelease:"สร้างการปล่อย",deleteReleaseTip:"ไม่สามารถกู้คืนการเผยแพร่หลังจากการลบ",createBlockletDid:"สร้างจากกระเป๋าเงินดิจิทัล",createReleaseSuccess:"สร้างการเผยแพร่เรียบร้อยแล้ว",saveDraftSuccess:"ร่างได้บันทึกเรียบร้อยแล้ว",connect:{title:"สร้าง Blocklet DID",scan:"ใช้เมธอดต่อไปนี้เพื่อสร้าง Blocklet DID",confirm:"ยืนยันโดยใช้กระเป๋าเงิน DID",success:"สร้าง DID Blocklet เรียบร้อยแล้ว โปรดดำเนินการต่อ"},saveDraft:"บันทึกแบบร่าง",releaseNote:"บันทึกการเปิดตัว",errorTip:{noDid:"Blocklet DID จำเป็นต้องใช้",noTitle:"ต้องระบุชื่อบล็อก",noVersion:"ต้องใช้เวอร์ชัน Blocklet",noDescription:"คำอธิบาย Blocklet จำเป็น",noNote:"ต้องใช้หมายเหตุรุ่น",inValidVersion:"รุ่นบล็อกที่ไม่ถูกต้อง",noResource:"โปรดเลือกอัปโหลดทรัพยากรเพื่อรวมอยู่ในบล็อกเล็ท",noFirstDid:"โปรดสร้าง Blocklet DID ก่อน",invalidUrl:"โปรดใส่ URL ที่ถูกต้อง",invalidUrlOrEmail:"โปรดใส่ URL หรืออีเมลที่ถูกต้อง"},packTip:"ปัจจุบัน บล็อกเล็ตสามารถติดตั้งเป็นแอปพลิเคชันโดยตรงได้ เราจะรวมองค์ประกอบและการกำหนดค่าแอปพลิเคชันโดยอัตโนมัติใน Blocklet",resourceChangedWarning:"คุณได้แก้ไขทรัพยากร โปรดบันทึกเวลาทันที",installResourceTip:"ลิงก์ติดตั้ง:",installResourceTip2:"หากคุณต้องการดูเคล็ดลับเพิ่มเติมโปรดเยือน",installResourceHelp:"เอกสารช่วยเหลือ",componentIncluded:"รวมอยู่ใน",componentForceRequired:"จำเป็น",download:"ดาวน์โหลด {name}",delete:"ลบ {name}",copyInstallUrl:"คัดลอก URL การติดตั้ง",install:"ติดตั้ง {name}",publishToStoreSuccess:"Blocklet ได้รับการเผยแพร่ในร้านค้าเรียบร้อยแล้ว",connectStoreSuccess:"เชื่อมต่อ Blocklet Store สำเร็จ",uploadToStoreSuccess:"อัพโหลด Blocklet เข้าสู่ Store สำเร็จแล้ว คุณต้องเผยแพร่ในร้านค้า",viewLastRelease:"ดูรายการอัพเดตล่าสุด",reconnectStoreTip:"หลังจากเชื่อมต่อใหม่ จะมีนักพัฒนารุ่นใหม่เข้ามาเป็นที่ผูกพัน คุณแน่ใจหรือไม่ว่าต้องการที่จะเชื่อมต่อใหม่หรือไม่?",deleteProject:{title:"ลบ {name}",scan:"ใช้เมธอดต่อไปนี้เพื่อลบ {name}",confirm:"ยืนยันการใช้งานกระเป๋าสตางค์ DID",success:"โครงการ Blocklet ได้ถูกลบแล้ว โปรดดำเนินการต่อ",tip1:"โครงการ Blocklet จะไม่สามารถกู้คืนได้หลังจากการลบ",tip2:"คุณจะไม่สามารถเผยแพร่เวอร์ชันใหม่ไปยังบล็อกเลตที่ถูกลบอีกต่อไปแล้วซึ่งหมายความว่าบล็อกเลตจะไม่ได้รับการอัปเดตต่อไปในร้านค้าอีกต่อไป",tip3:"การลบบล็อกเล็ตจะไม่ส่งผลต่อเวอร์ชันที่เผยแพร่ในร้านค้า",description:"หลังจากลบ Blocklet แล้วคุณจะพบปัญหาต่อไปนี้ คุณแน่ใจหรือว่าต้องการลบหรือไม่?"},resourceTip:"ปัจจุบันเป็นบล็อกทรัพยากร ไม่สามารถติดตั้งโดยตรงจากร้านค้าได้",whyCantSeeInStore:"คุณสามารถเผยแพร่ Blocklet ปัจจุบันบนร้านค้า และสามารถใช้งานได้ทั่วโลก",whyCantSeeResourceBlockletInStore:"คุณสามารถเผยแพร่ Blocklet ปัจจุบันบนสโตร์ได้ และสามารถใช้งานได้ทั่วโลก Blocklets จะถูกซ่อนจากหน้ารายการในสโตร์โดยค่าเริ่มต้น",tenantScope:"ผู้เช่า",blockletStudio:"Blocklet Studio",allComponentsNotRunning:"Blocklets ไม่ได้ทำงาน โปรดเริ่มต้นใช้งานก่อน",resourceEmptyTip:"ไม่มีทรัพยากรที่ใช้ได้",steps:{resources:"โปรดเลือกทรัพยากรที่ต้องการเชื่อมโยงกับ Blocklet ปัจจุบัน เนื่องจากทรัพยากรเหล่านี้จะถูกติดตั้งพร้อมกับ Blocklet.",blocklets:"เลือกบล็อกเล็ตที่ต้องการเชื่อมโยง",version:"ตั้งค่าเวอร์ชันการเปิดตัวและบันทึกการเปลี่ยนแปลง",introduction:"การแนะนำที่ชัดเจนสามารถเน้นความสำคัญของ Blocklet ของคุณได้อย่างมีประสิทธิภาพ คุณสามารถใช้ไวยากรณ์ Markdown เพื่อเขียนและดูตัวอย่างได้",branding:"อธิบายข้อมูลพื้นฐานของ Blocklet ของคุณ ข้อมูลเหล่านี้จะถูกนำเสนอให้ผู้ใช้ในร้านค้า"},branding:"การติดตามแบรนด์",brandingHelp:"ข้อมูลเพิ่มเติมเกี่ยวกับ blocklet จะแสดงในร้านค้า",resourceSelect:"เลือกทรัพยากรจากบล็อกเล็ต",resourceUpload:"อัปโหลดทรัพยากรจากดิสก์ของคุณ (index.html จำเป็นในไฟล์เข้าเก็บ)",deleteStoreTip:"คุณแน่ใจหรือว่าต้องการลบ {name} ออกจากรายการร้านค้าเชื่อมต่อหรือไม่?",disconnectStoreTip:"เมื่อยกเลิกการเชื่อมต่อแล้ว Blocklet จะถูกลบออกจากร้าน คุณแน่ใจไหมว่าต้องการยกเลิกการเชื่อมต่อหรือไม่",connectOrUpload:"เชื่อมต่อหรืออัปโหลด",developerInfo:"ข้อมูลนักพัฒนา",autoUploadTip:"อัปโหลดบล็อกเล็ตไปยังร้านหลังจากการสร้างเสร็จ",possibleSameStoreTip:"ลองแก้ปัญหาบล็อกเล็ตที่ขึ้นอยู่ในร้านค้าเดียวกันก่อนทุกครั้งที่เป็นไปได้",needProjectId:"โปรดสร้างโปรเจกต์ก่อน",projectSettings:"การตั้งค่าโปรเจค",noStoreSelected:"โปรดเลือกหนึ่งในร้านที่มีอยู่หรือเพิ่มร้านใหม่เพื่อดำเนินการต่อ",installToThisServer:"ติดตั้งลงในเซิร์ฟเวอร์นี้",forceResourceBlocklet:"พลังกำหนดเป็น Blocklet อ้างอิงถึงทรัพยากร",resourceDocker:"สร้าง Blocklet จาก Docker",resourceSelectTitle:"ทรัพยากร",resourceUploadTitle:"อัปโหลด",resourceDockerTitle:"Docker",resourceDockerInputTip:"กรุณาใส่คำสั่ง docker run",docker:{pleaseInputDockerCommand:"กรุณาใส่คำสั่ง docker run",volumeTip:"Volume ต้องเริ่มต้นด้วย $BLOCKLET_DATA_DIR หรือ $BLOCKLET_APP_DIR",volumeTip2:'ปริมาตรไม่สามารถมี ".." ได้',noAllowTheArg:"ไม่อนุญาตให้ใช้ argument ในคำสั่ง docker run",needCustomInput:"ตั้งค่าเมื่อติดตั้ง blocklet",dockerParams:"พารามิเตอร์ Docker",dockerCommand:"คำสั่ง Docker",dockerImageName:"ชื่อ Docker Image",addItem:"เพิ่มพารามิเตอร์การรัน Docker",envKey:"คีย์ของตัวแปรสภาพแวดล้อม",publishTips:"พอร์ตภายนอกสุดท้ายจะถูกกำหนดโดยอัตโนมัติโดย blocklet",volumeTips:"โวลุ่มต้องเริ่มด้วย $BLOCKLET_DATA_DIR หรือ $BLOCKLET_APP_DIR",modifyParam:"แก้ไขพารามิเตอร์การรัน Docker",modifyEnv:"แก้ไขตัวแปรสภาพแวดล้อม",paramDetail:"รายละเอียด Param",description:"คำอธิบาย",secure:"ปลอดภัย",shared:"แชร์แล้ว",required:"จำเป็นต้อง",prefix:"คำนำหน้า",path:"เส้นทาง",name:"ชื่อ",portType:"ประเภทพอร์ต",dockerImageNameError:"ชื่อ Docker Image ต้องไม่มีช่องว่าง",autoGenerated:"สร้างอัตโนมัติ",dockerCMDError:"Docker CMD รองรับเฉพาะอักขระอย่างง่าย",proxyBehavior:"พฤติกรรมพร็อกซี",serviceProxy:"บริการ",directProxy:"โดยตรง",nextTab:"แยกวิเคราะห์คำสั่ง"},storeRule:{maxImageCount:"ร้านค้าอนุญาตให้ใช้ภาพหน้าจอได้มากที่สุด {max} ภาพ",minImageCount:"ร้านค้าต้องการอย่างน้อย {min} {unit}.",minImageSize:"ขนาดภาพหน้าจอ {name} ต้องอย่างน้อย {width}x{height}.",logoFormat:"รูปแบบรูปภาพโลโก้รองรับเฉพาะ [{format}] เท่านั้น.",warning:"คำเตือน",screenshot:"ภาพหน้าจอ",screenshots:"ภาพหน้าจอ",first:"อันดับ 1",second:"ที่ 2",third:"ที่ 3"},store:"ร้าน Blocklet",endpoint:{tab:"Blocklet ระยะไกล",uploadToEndpoint:"คุณสามารถอัปโหลด Blocklet ปัจจุบันไปยัง Blocklet ที่ระบุได้",addEndpoint:"เพิ่ม Blocklet Endpoint",urlEmpty:"URL จุดสิ้นสุดไม่สามารถเว้นว่างได้",addFailed:"เพิ่ม Blocklet Endpoint ล้มเหลว:",deleteEndpoint:"ลบ Blocklet Endpoint",deleteDesc:'ยืนยันการลบ endpoint Blocklet {name} หรือไม่ <br/><span style="color: {color}">*หลังจากลบ endpoint Blocklet นี้แล้ว คุณจะไม่สามารถอัปเดตแอปที่ติดตั้งจาก endpoint Blocklet นี้ได้ เว้นแต่คุณจะเพิ่มเข้าไปอีกครั้ง</span>',confirmDesc:"กรุณากรอก {name} เพื่อลบ",visitEndpoint:"เยี่ยมชม Blocklet",disconnectEndpointTip:"คุณแน่ใจหรือไม่ว่าต้องการยกเลิกการเชื่อมต่อ {url}? หลังจากยกเลิกการเชื่อมต่อแล้ว Blocklet จะไม่ถูกอัปโหลดไปยังจุดสิ้นสุดนี้",deleteFailed:"ลบ Blocklet Endpoint ไม่สำเร็จ",publishToEndpointSuccess:"เผยแพร่ Blocklet ไปยัง Endpoint สำเร็จแล้ว",uploadToEndpointSuccess:"อัปโหลด Blocklet ไปยัง Endpoint สำเร็จแล้ว"},autoPublishErrorTip:"เผยแพร่โดยอัตโนมัติไปยัง {storeName} ล้มเหลว: {error}",singleton:"มีเพียงอินสแตนซ์เดียว",singletonTip:"เมื่อโหมด Singleton ถูกเปิดใช้งาน แอปพลิเคชันไม่สามารถรันอินสแตนซ์หลายตัวพร้อมกัน. เพราะแอปของคุณใช้โหมด Singleton การปรับใช้แบบ blue-green ไม่สามารถใช้สำหรับการอัปเดตหรือการรีสตาร์ท"},titleValidationError:"ความยาวชื่อเรื่องต้องอยู่ระหว่าง 3 ถึง 20 ตัวอักษร",descriptionValidationError:"ความยาวของคำอธิบายต้องอยู่ระหว่าง 3 และ 80 ตัวอักษร",whyNeedAppPid:"หากแอปพลิเคชันของคุณได้รับการโยกย้ายมา DID ถาวรคือ DID ที่สร้างขึ้นเมื่อติดตั้ง Blocklet นี้เริ่มแรก",usingDocker:"Blocklet นี้จะทำงานโดยใช้ docker",gotoVisitError:"ไม่สามารถเข้าถึง URL ของ Blocklet ได้ โปรดลองใหม่อีกครั้งในภายหลัง",usingIsolation:"Blocklet นี้จะทำงานโดยใช้การแยกโครงข่าย",dockerImage:"สนับสนุน Docker",mountPoint:{description1:"การเปลี่ยนแปลงนี้อาจทำให้ URL ที่มีจุดเชื่อมต่อแบบเก่าเสียหาย ซึ่งอาจนำไปสู่:",case1:"การอ้างอิงทรัพยากรที่เสียหายระหว่าง Blocklets ในแอปนี้",case2:"URL เสีย หากคุณได้แชร์ไปแล้วในที่สาธารณะ",description2:"คุณสามารถตั้งค่าการเปลี่ยนเส้นทางจากจุดเชื่อมต่อเก่าไปยังจุดเชื่อมต่อใหม่เพื่อลดผลกระทบจากการเปลี่ยนแปลงที่อาจเกิดขึ้นได้"},skSourceMigratedTip:"แอปนี้เปิดตัวด้วยกระเป๋าเงินที่จัดการโดยเซิร์ฟเวอร์ และได้ย้ายไปใช้ DID Wallet เพื่อความปลอดภัยที่ดีขึ้น",skSourceManagedTip:"แอปนี้กำลังทำงานอยู่กับวอลเล็ตที่จัดการโดยเซิร์ฟเวอร์ โปรดโยกย้ายไปยัง DID Walletโดยเร็วที่สุดเพื่อความปลอดภัยที่ดีขึ้น",zeroDowntime:"ไม่มีการหยุดทำงาน"},dashboard:{nodeDid:"โหนด",ownerDid:"เจ้าของ",routingEngine:"เครื่องยนต์เส้นทาง",ownerNftURL:"เจ้าของ NFT",expirationLeft:"การหมดอายุที่เหลืออยู่",startFromCrashTip:"Blocklet Server ไม่ออกอย่างปกติครั้งล่าสุด โปรดเริ่ม blocklets ที่ต้องรันด้วยตนเอง",runtimeConfig:{blockletMaxMemoryLimit:"ขีด จำกัด ความจำสูงสุด ของ Blocklet",daemonMaxMemoryLimit:"ขีดจำกัดความจำสูงสุดของเซิร์ฟเวอร์"},document:"เรียนรู้เพิ่มเติมในเอกสารของเรา",database:"ฐานข้อมูล"},store:{nameSort:"ชื่อ",popularSort:"ความนิยม",headerDescription:"ค้นหาและติดตั้ง Blocklets ของคุณ",detail:{purchase:"ซื้อ {name}",open:"เปิด {name}",install:"ติดตั้ง {name}",upgrade:"อัพเกรด {name}",empty:"ไม่มีการแนะนำ"},blockletRegistry:{changeFailed:"การเปลี่ยนแปลงร้านค้าบล็อกล้มเหลว:",addFailed:"เพิ่มบล็อกเก็ตสโตร์ล้มเหลว: {name}",editFailed:"การแก้ไขร้านค้า Blocklet ล้มเหลว",switchRegistry:"สลับบล็อกเล็ตร้านค้า",addRegistry:"เพิ่ม Blocklet Store",editRegistry:"แก้ไข Blocklet Store",deleteRegistry:"ลบ Blocklet Store",haveSameRegistry:"ร้านค้าบล็อกเดียวกันมีอยู่",registryName:"ชื่อร้านค้าบล็อกเล็ต",registryUrl:"URL ร้านค้า Blocklet",registryNameEmpty:"ชื่อร้านค้า Blocklet ต้องไม่เป็นค่าว่าง",registryUrlEmpty:"URL ร้านค้า Blocklet ต้องไม่ว่างเปล่า",deleteDesc:"ยืนยันการลบบล็อกเล็ตสโตร์ {name} ?",confirmDesc:"โปรดป้อน {name} เพื่อลบ"},purchase:{title:"ซื้อ {name}",confirmed:"การซื้อ NFT ของคุณได้รับการตรวจสอบแล้ว",declined:"คุณไม่ได้ให้การซื้อ NFT blocklet ที่ถูกต้อง",waiting:"กำลังรอการซื้อครบ...",purchase:{title:"การซื้อ NFT",description:"ชำระเครื่องหมายบางส่วนก่อนติดตั้งบล็อคเล็ทนี้หากคุณยังไม่ได้ซื้อบล็อคเล็ทนี้"},verify:{title:"ตรวจสอบ NFT",description:"NFT ของคุณจะถูกตรวจสอบก่อนการติดตั้ง blocklet นี้หากคุณซื้อและถือ NFT การซื้อไว้ในกระเป๋า DID ของคุณ",auth:{title:"ต้องใช้ข้อมูลรับรองการซื้อ",scan:"เชื่อมต่อกระเป๋าเงินดิจิทัล (DID Wallet) เพื่อการซื้อ NFT บล็อกเล็ต",confirm:"กรุณาตรวจสอบการดำเนินการนี้ในกระเป๋าเงินจาก DID ของคุณ",success:"การซื้อ NFT ของคุณได้รับการยืนยันและการติดตั้งได้เริ่มต้น"}},auth:{title:"ซื้อ {name}",scan:"สแกนคิวอาร์โค้ดด้านล่างด้วยกระเป๋าเงินดิจิตอลของคุณ",confirm:"ยืนยันในบัญชีของคุณ",success:"การซื้อ NFT ถูกส่งไปยังกระเป๋าเงิน DID ของคุณ"},launch:"เริ่มทำงาน {name}",autoLaunch:"{name} ซื้อสินค้าเรียบร้อยแล้ว กำลังเปลี่ยนเส้นทางไปยังหน้าเริ่มต้น..."},tooltip:{upgradeServer:"Blocklet ต้องใช้ Blocklet Server เวอร์ชัน {version} ในขณะที่ Blocklet Server เวอร์ชันปัจจุบันคือ {serverVersion}"}},setting:{saveSuccess:"บันทึกการตั้งค่าสำเร็จแล้ว",unSavedTip:'มีการเปลี่ยนแปลงที่ยังไม่ได้บันทึก กรุณาคลิก "บันทึกการเปลี่ยนแปลง" เพื่อบันทึก',unSavedLeaveTip:"มีการเปลี่ยนแปลงที่ยังไม่ได้บันทึก แน่ใจหรือว่าต้องการออกจากหน้าจอนี้?",form:{name:"ชื่อเซิร์ฟเวอร์ของคุณ",nameRequired:"จำเป็นต้องระบุคำอธิบายเซิร์ฟเวอร์",namePlaceholder:"ชื่อเซิร์ฟเวอร์",description:"บรรยายเซิร์ฟเวอร์ของคุณ",descriptionHolder:"คำอธิบายเซิร์ฟเวอร์",descriptionRequired:"คำอธิบายของเซิร์ฟเวอร์จำเป็น",domain:"ชื่อโดเมนเซิร์ฟเวอร์ของคุณ",domainPlaceholder:"ชื่อโดเมนเซิร์ฟเวอร์",domainRequired:"ต้องการโดเมนเซิร์ฟเวอร์",ipPlaceholder:"IP",ipRequired:"ต้องใส่ IP",registry:"ร้านค้าบล็อกเล็ต",registryPlaceholder:"ร้านค้าบล็อกเล็ตเพื่อดึงบล็อกเล็ต",registryRequired:"ต้องมีร้านค้า Blocklet",registerUrl:"URL ของ Blocklet Launcher",registerUrlPlaceholder:"ใส่ URL ของ Blocklet Launcher ที่คุณต้องการ, คุณสามารถใช้รุ่นทางการได้อย่างปลอดภัย",webWalletUrl:"URL กระเป๋าเงินดิจิทัล",webWalletUrlPlaceholder:"โปรดใส่ URL ของ 'กระเป๋าเงิน DID' ที่คุณโฮสต์ไว้ คุณสามารถใช้อันเป็นทางการได้อย่างปลอดภัย",nftDomainUrl:"URL โดเมน NFT",nftDomainUrlPlaceholder:'โปรดป้อน URL ของโดเมน "NFT" ที่คุณเป็นเจ้าของอย่างถูกต้อง คุณสามารถใช้เว็บไซต์อย่างเป็นทางการได้อย่างปลอดภัย',enableWelcomePage:"เปิดใช้หน้าต้อนรับ",welcome:{switchLabel:"หน้าต้อนรับ"},upgrade:{title:"อัปเกรดเซิร์ฟเวอร์ Blocklet เป็นเวอร์ชัน {version}",description:"ระหว่างการอัปเกรด, เซิร์ฟเวอร์ Blocklet ของคุณจะเข้าสู่โหมดการบำรุงรักษาเป็นเวลาหลายนาทีในขณะที่การอับเดตเสร็จสิ้น",dialog:'คลิกที่ "ยืนยัน" เพื่อติดตั้งการอัปเดต โปรแกรมบล็อกเล็ตเซิร์ฟเวอร์จะเข้าสู่โหมดการบำรุงรักษาจนกว่าการอัปเดตจะเสร็จสิ้นและกลับมาสู่โหมดการผลิตอัตโนมัติ',confirm:"อัพเกรด",switchLabel:"ตรวจสอบการอัปเดตอัตโนมัติ",enableBetaRelease:"เปิดใช้งานเบต้ารีลีส",setup:"กำลังเตรียมการอัปเกรด",installing:"กำลังติดตั้งเซิร์ฟเวอร์ Blocklet v{version}",restarting:"เริ่มใช้งานเซิร์ฟเวอร์ Blocklet",cleanup:"กำลังย้ายข้อมูลเซิร์ฟเวอร์ Blocklet",verifying:"กำลังตรวจสอบเซิร์ฟเวอร์ Blocklet v{version}",rollback:"เซิร์ฟเวอร์ Blocklet การกลับสุ่ม",complete:"อัพเกรดเสร็จสมบูรณ์!",progress:"อัพเกรด {name}",check:"ตรวจสอบการอัพเดต",latest:"คุณกำลังใช้เวอร์ชันล่าสุด"},restart:{title:"เริ่มต้นเซิร์ฟเวอร์ Blocklet",description:"ระหว่างการรีสตาร์ท แผนการบริการ Blocklet ของคุณจะเข้าสู่โหมดการบำรุงรักษาในขณะที่การรีสตาร์ทเสร็จสิ้น",dialog:'คลิก "ยืนยัน" เพื่อเริ่มต้นใหม่ Blocklet Server จะเข้าสู่โหมดการบำรุงรักษาจนกระทั่งการเริ่มต้นใหม่เสร็จสิ้นและกลับสู่โหมดการผลิตโดยอัตโนมัติ',confirm:"เริ่มต้นใหม่",setup:"กำลังเตรียมเริ่มต้นใหม่",verifying:"กำลังตรวจสอบเซิร์ฟเวอร์ Blocklet",restarting:"บังคับเริ่มใช้งานเซิร์ฟเวอร์บล็อกเล็ต",cleanup:"ตรวจสอบให้แน่ใจว่าทุกอย่างเป็นไปด้วยความสบายดี",rollback:"ทำความสะอาดสถานะสกปรก",complete:"รักษาความสมบูรณ์!",progress:"การเริ่มต้นใหม่ {name}"},register:{title:"ลงทะเบียน Blocklet Launcher",description:"เมื่อเพิ่มแล้วคุณสามารถเปิดใช้งาน blocklets ไปยังเซิร์ฟเวอร์ blocklet นี้จาก {url} ได้",button:"ลงทะเบียน"},monitor:{diskThreshold:"ส่งการแจ้งเตือนเมื่อการใช้งานดิสก์เกิน (%)",diskThresholdPlaceholder:"กรุณาระบุเกณฑ์คำเตือนการใช้ดิสก์"},security:{switchLabel:"การแยกฟิล์ซัสเต็ม",switchTips:"หลังจากที่ปิดตัวเลือกนี้ลง ไฟล์ระบบของ Blocklet จะไม่อยู่ในโหมดกักกันอีกต่อไป ซึ่งอาจเสี่ยงต่อซอฟต์แวร์ที่เป็นอันตรายทำให้ระบบไฟล์เสียหาย",warningTips:"คุณสมบัติการแยกระบบไฟล์ไม่สามารถทำงานได้ โปรดอัปเกรดเวอร์ชัน node.js (เวอร์ชันปัจจุบันคือ {version}) เป็นเวอร์ชัน v21.6.0 หรือสูงกว่า"},docker:{switchLabel:"รัน Blocklets ในคอนเทนเนอร์",switchTips:"หลังจากเปิดใช้งานตัวเลือกนี้ blocklets จะทำงานโดยใช้คอนเทนเนอร์ซึ่งสามารถเพิ่มความปลอดภัยของเซิร์ฟเวอร์โดยรวม",notInstalled:"ไม่สามารถเปิดใช้งานคอนเทนเนอร์เนื่องจาก Docker ไม่ได้ติดตั้งหรือขาดสิทธิ์ที่จำเป็นในการดำเนินการ",needCloseFileSystemIsolation:"การแยกระบบไฟล์และโหมดคอนเทนเนอร์ด็อกเกอร์ไม่สามารถเปิดใช้งานได้พร้อมกัน"},dockerNetwork:{switchLabel:"การแยกเครือข่ายคอนเทนเนอร์",switchTips:"หลังจากเปิดใช้งานตัวเลือกนี้แล้ว Blocklet จะทำงานในลักษณะที่ปลอดภัยยิ่งขึ้น: Blocklet จะไม่สามารถเข้าถึงเซิร์ฟเวอร์ Blocklet หรือ Blocklet อื่นๆ ทั่วทั้งแอปพลิเคชัน",needEnableDocker:"ต้องเปิดใช้งาน Container mode đểเปิดใช้งานการแยกเครือข่าย"},restartAllContainers:{title:"รีสตาร์ททุกคอนเทนเนอร์",description:"รีสตาร์ททุกคอนเทนเนอร์และรักษา blocklets ให้ทำงานต่อไป",dialog:'คลิก "ยืนยัน" เพื่อรีสตาร์ท blocklets ทั้งหมดในคอนเทนเนอร์และรักษาสถานะการทำงานของ blocklets',confirm:"เริ่มต้นใหม่",setup:"กำลังเตรียมการรีสตาร์ท",verifying:"กำลังตรวจสอบ Server Blocklet",restarting:"เริ่มต้นคอนเทนเนอร์ทั้งหมดใหม่ในพื้นหลัง",cleanup:"ตรวจสอบให้แน่ใจว่าทุกอย่าง OK",rollback:"ล้างสถานะที่สกปรก",complete:"การบำรุงรักษาเสร็จสมบูรณ์!",progress:"กำลังเริ่มต้นใหม่ทุกคอนเทนเนอร์ในพื้นหลัง"},restartAllBlocklet:{title:"รีสตาร์ท Blocklets ทั้งหมด",description:"รีสตาร์ท Blocklets ทั้งหมดที่กำลังทำงานหรือมีข้อผิดพลาดบนเซิร์ฟเวอร์นี้",dialog:'คลิก "ยืนยัน" เพื่อรีสตาร์ท blocklets ทั้งหมดในพื้นหลัง',confirm:"รีสตาร์ท",setup:"กำลังเตรียมการรีสตาร์ท",verifying:"กำลังตรวจสอบ Blocklet Server",restarting:"กำลังเริ่มต้น Blocklets ที่กำลังทำงานหรือมีข้อผิดพลาดในพื้นหลังใหม่",cleanup:"ตรวจสอบให้แน่ใจว่าทุกอย่างเรียบร้อย",rollback:"ล้างสถานะที่สกปรก",complete:"การบำรุงรักษาเสร็จสมบูรณ์!",progress:"เริ่มต้น Blocklets ทั้งหมดที่ทำงานอยู่หรือมีข้อผิดพลาดใหม่ในพื้นหลัง"},enableSessionHardening:{switchLabel:"เปิดใช้งานการเพิ่มความแข็งแกร่งของเซสชัน",switchTips:"หลังจากเปิดใช้งานตัวเลือกนี้ การดำเนินการเปลี่ยนแปลงจะต้องการการยืนยันที่เข้มงวด ซึ่งสามารถปรับปรุงความปลอดภัยโดยรวมของเซิร์ฟเวอร์"}},accessKey:{accessKeyId:"รหัสประจำตัวคีย์การเข้าถึง",lastUsed:"ใช้ล่าสุดเมื่อ",tip:"กรุณากรอกชื่อสำหรับคีย์การเข้าถึงนี้",saveSecretTip:"นี่คือครั้งเดียวที่คีย์ลับการเข้าถึงของคุณสามารถมองเห็นได้และไม่สามารถกู้คืนได้ อย่างไรก็ตามคุณสามารถสร้างคีย์การเข้าถึงใหม่ได้ทุกเมื่อ",iKnow:"ฉันได้คัดลอกและบันทึกคีย์ลับการเข้าถึงแล้ว",showSecret:"แสดงคีย์เข้าถึงลับ",hideSecret:"ซ่อนความลับ",title:"ลบกุญแจการเข้าถึง",descriptionNoTime:"การดำเนินการนี้จะลบกุญแจการเข้าถึง {key} ด้วยชื่อ {name} ที่ยังไม่เคยถูกใช้งานมาก่อน",description:"การดำเนินการนี้จะลบคีย์เข้าถึง {key} ทิ้งไปอย่างถาวรที่มีชื่อ {name}, ซึ่งใช้ครั้งสุดท้ายเมื่อเวลา {time}, {timeAge}",confirm_desc:"โปรดป้อน {name} เพื่อลบ",remark:"ชื่อคีย์การเข้าถึง",remarkInvalid:"ต้องระบุชื่อคีย์เข้าถึง",passport:"เลือกหนังสือเดินทางสำหรับกุญแจการเข้าถึงเพื่อให้หรือจำกัดสิทธิ์",expireTime:"ตั้งวันที่หมดอายุสำหรับคีย์การเข้าถึงเพื่อความปลอดภัยที่ดีขึ้น",authType:"ประเภทการตรวจสอบสิทธิ์",resourceType:"ประเภททรัพยากร",resourceId:"รหัสทรัพยากร",component:"ส่วนประกอบ",expired:"{time} หมดอายุ",accessKeySecret:"คีย์การเข้าถึงลับ",simple:"ง่าย",signature:"ลายเซ็น",signatureDesc:"มาตรฐานความปลอดภัยระดับองค์กรโดยใช้การเข้ารหัส ต้องการการรวมรหัสกับ SDK (@blocklet/server-js) เหมาะสำหรับสถานการณ์ที่มีความต้องการด้านความปลอดภัยสูงและการส่งข้อมูลที่สำคัญ",simpleDesc:"กลไกโทเค็น Bearer ที่เบาบาง คล้ายกับ OpenAPI Key รองรับการเรียก API RESTful และการผสานรวมบริการของบุคคลที่สาม ไม่ต้องเขียนโค้ด การผสานรวมอย่างรวดเร็วผ่าน HTTP Header เหมาะสำหรับการพัฒนาอย่างรวดเร็ว",viewSecret:"คุณสามารถเข้าถึงคีย์ลับได้ในภายหลังในหน้ารายละเอียดของคีย์การเข้าถึง",usage:"การใช้งาน",listTitle:"จัดการการเข้าถึง API ที่ปลอดภัยด้วย Access Keys",tooltipTitle:"สร้างและจัดการข้อมูลประจำตัวที่อนุญาตให้ระบบที่เชื่อถือได้โต้ตอบกับแอปของคุณโดยโปรแกรม คีย์การเข้าถึงช่วยให้สามารถทำงานอัตโนมัติได้อย่างปลอดภัยและการผสานรวมที่ราบรื่นทั่วทั้งเครื่องมือและบริการของคุณ"},webhook:{add:"เพิ่มการผสานรวม",delTitle:"ลบการรวม",requiredError:"โปรดระบุ {type} ที่ถูกต้อง",confirm_desc:"กรุณาใส่ {name} เพื่อลบ",test:"ทดสอบ",description:"การนี้จะลบการรวมกับ ID {id} อย่างถาวร",columns:{description:"สวัสดี, ID",params:"พารามิเตอร์",createdAt:"สร้างเมื่อ"},testSuccess:"ส่งข้อความทดสอบสำเร็จ",duplicateError:"URL มีอยู่แล้ว",updateSuccess:"อัปเดตสถานะสำเร็จแล้ว"},dns:{step1Title:"เข้าสู่ระบบผู้ให้บริการโดเมนของคุณ",step1Desc1:"เข้าสู่ระบบ registrar โดเมนของคุณ ค้นหาหน้าการจัดการโดเมน และค้นหาหน้าการตั้งค่าชื่อเซิร์ฟเวอร์ คุณสามารถค้นหา registrar โดเมนของคุณได้ที่",step2Title:"2. ค้นหาการตั้งค่า DNS สำหรับ {url}",step2Desc:'สิ่งนี้อาจเรียกว่า "การจัดการ DNS", "การตั้งค่าขั้นสูง", หรือทำนองนั้น',step3Title:"3. เพิ่มเร็กคอร์ด DNS ต่อไปนี้",step3Desc:'ชื่ออาจเรียกว่า "host", "hostname" หรือ "alias"'},domain:{addingDomain:"กำลังเพิ่มโดเมน...",checkingResolvable:"กำลังตรวจสอบสถานะโดเมน...",cannotResolve:"{domain} ไม่สามารถแก้ไขได้ โปรดตรวจสอบการกำหนดค่า DNS ของคุณ",resolvedAddressError:"{domain} ยังไม่ได้กำหนดค่าอย่างถูกต้องด้วยระเบียน CNAME ที่ชี้ไปที่ {curDomain}",invalidDNSReminder:"{error} อย่างไรก็ตาม คุณสามารถเพิ่มโดเมนต่อไปได้ แต่การสร้างใบรับรองอัตโนมัติไม่พร้อมใช้งาน",continueAdd:"เพิ่มต่อ",conflictTitle:"{domain} ถูกใช้งานแล้ว",conflictDescription:'{domain} กำลังใช้งานอยู่โดย "{title}" การคลิกยืนยันจะลบโดเมนออกจาก "{from}" และเพิ่มไปยัง "{to}".'},aigne:{modelAdapter:"ผู้ให้บริการโมเดล",modelName:"ชื่อแบบจำลอง",desc:{modelAdapter:"แพลตฟอร์มที่ให้บริการโมเดล AI",modelName:"รุ่นเฉพาะของโมเดลหรือชื่อโมเดล",key:"คีย์ API {provider} ที่ใช้สำหรับการรับรองความถูกต้อง",baseUrl:"กรอก URL ของอินสแตนซ์ AIGNE Hub ของคุณ (เช่น https://hub.aigne.io) ใช้ของคุณเองหากคุณโฮสต์ด้วยตนเอง",accessKeyId:"รหัสคีย์เฉพาะสำหรับเข้าถึงโมเดล",secretAccessKey:"คีย์ลับจับคู่กับ ID คีย์การเข้าถึง",docLink:"ดูเอกสารอย่างเป็นทางการสำหรับรายละเอียดเพิ่มเติมและการอ้างอิง API"},failed:"บันทึกการตั้งค่า AIGNE ล้มเหลว",authorizeAigneHub:"เชื่อมต่อกับ {name}",baseUrl:"URL ฮับ AIGNE",disconnect:"ตัดการเชื่อมต่อ",disconnectConfirm:"คุณแน่ใจหรือว่าต้องการตัดการเชื่อมต่อจาก AIGNE Hub? สิ่งนี้จะลบการตั้งค่า AI ปัจจุบัน",disconnectSuccess:"ยกเลิกการเชื่อมต่อจาก AIGNE Hub สำเร็จแล้ว",disconnectFailed:"ไม่สามารถตัดการเชื่อมต่อจาก AIGNE Hub ได้",testConnection:"ทดสอบการเชื่อมต่อ {provider}",invalidUrl:"URL ของ {provider} ไม่ถูกต้อง",description:"การกำหนดค่าปัจจุบันจะมีผลเมื่อ {name} กำลังทำงาน จำเป็นต้องบันทึกและรีสตาร์ท Blocklet เพื่อให้มีผล",revokeUrlAuthTitle:"ยืนยันการเปลี่ยนแปลง {url}?",revokeUrlAuth:"คุณแน่ใจหรือไม่ว่าต้องการเปลี่ยน {url}? หลังจากแก้ไข การอนุญาตของคุณจะไม่ถูกต้องและต้องได้รับอนุญาตใหม่!",testSuccess:"เชื่อมต่อกับ AIGNE Hub สำเร็จ",check:"ตรวจสอบ",apiKeyNotAuthorized:"คีย์ API ไม่มีสิทธิ์ กรุณาคลิกปุ่มเชื่อมต่อกับ AIGNE Hub เพื่ออนุญาต",switchUser:"เปลี่ยนผู้ใช้",connectTimeOut:"การเชื่อมต่อกับ {provider} หมดเวลา โปรดลองใหม่ในภายหลัง",restart:{title:"เริ่มต้น Blocklet ใหม่",connectedContent:"Blocklet ของคุณเชื่อมต่อกับ {provider} อยู่ในขณะนี้ การตั้งค่าจะมีผลหลังจากรีสตาร์ท ต้องการรีสตาร์ทตอนนี้หรือไม่?",notConnectedContent:"Blocklet ของคุณถูกตัดการเชื่อมต่อจาก {provider} การตั้งค่าจะมีผลหลังจากรีสตาร์ท คุณต้องการรีสตาร์ทตอนนี้หรือไม่?",confirm:"รีสตาร์ท ตอนนี้",cancel:"เริ่มใหม่ภายหลัง"},testFailed:"ไม่สามารถเชื่อมต่อกับ AIGNE Hub ได้ กรุณาตรวจสอบ URL หรือเครือข่ายของคุณ",addCredits:"ซื้อเครดิต",transaction:"ธุรกรรม",connected:"เชื่อมต่อสำเร็จ",account:"ข้อมูลบัญชี",pendingCredit:"ค่าใช้จ่ายคงค้าง",infinite:"ไม่จำกัด",config:"ตั้งค่า AIGNE Hub"}},notification:{title:"การแจ้งเตือน",history:"ประวัติ",channelSettings:"การตั้งค่าช่องทาง",empty:"ยังไม่มีกิจกรรม",viewAll:"ดูทั้งหมด",showRead:"แสดงการอ่าน",markAllAsRead:"ทำเครื่องหมายว่าอ่านหมดแล้ว",markAsRead:"ทำเครื่องหมายว่าอ่านแล้ว",proceed:"ดำเนินการต่อ",checkingForUpdates:"กำลังตรวจสอบการอัปเดต...",email:{enable:"เปิดการแจ้งเตือน",from:"ผู้ส่งอีเมล",host:"โฮสต์เซิร์ฟเวอร์ SMTP",port:"พอร์ตเซิร์ฟเวอร์ SMTP",user:"ชื่อผู้ใช้ SMTP",secure:"การเชื่อมต่อที่ปลอดภัย",password:"รหัสผ่าน SMTP",fromRequired:"ต้องระบุผู้ส่งอีเมล",fromInvalid:"ผู้ส่งอีเมลไม่ถูกต้อง",receiverRequired:"จำเป็นต้องระบุผู้รับอีเมล",receiverInvalid:"ผู้รับอีเมลไม่ถูกต้อง",hostRequired:"จำเป็นต้องระบุโฮสต์เซิร์ฟเวอร์ SMTP",hostInvalid:"เซิร์ฟเวอร์ SMTP ไม่ถูกต้อง",portRequired:"จำเป็นต้องระบุพอร์ตของเซิร์ฟเวอร์ SMTP",portInvalid:"พอร์ตเซิร์ฟเวอร์ SMTP ไม่ถูกต้อง พอร์ตควรอยู่ระหว่าง 1 และ 65535",userRequired:"ต้องระบุชื่อผู้ใช้งานเซิร์ฟเวอร์ SMTP",passwordRequired:"จำเป็นต้องใส่รหัสผ่านผู้ใช้เซิร์ฟเวอร์ SMTP",testSuccess:"การส่งอีเมลทดสอบสำเร็จ",testFailed:"ส่งอีเมลทดสอบล้มเหลว",testReceiver:"ผู้รับอีเมล",testSendEmail:"ทดสอบส่งอีเมล",inputTestReceiver:"โปรดป้อนอีเมลผู้รับทดสอบ",disable:"ยกเลิกการรับการแจ้งเตือนทางอีเมล",disableDescription:"หลังจากยกเลิกการรับข่าวสารทางอีเมล คุณจะไม่ได้รับการแจ้งเตือนทางอีเมลอีกต่อไป หากต้องการรับการแจ้งเตือนทางอีเมล คุณสามารถสมัครใหม่บนหน้านี้ได้",unsubscribe:"ยกเลิกการรับข่าวสารทางอีเมล",unsubscribeDescription:"หลังยกเลิกการสมัครสมาชิกแล้ว คุณจะไม่ได้รับการแจ้งเตือนทางอีเมลอีกต่อไป",subscribe:"สมัครสมาชิก",subscribeDescription:"หากต้องการรับการแจ้งเตือนทางอีเมล คุณสามารถสมัครใหม่ได้ที่หน้าการตั้งค่า",companyName:"ชื่อบริษัท",companyLink:"ลิงก์บริษัท",companyAddress:"ที่อยู่บริษัท",supportEmail:"อีเมลฝ่ายสนับสนุน",emailInvalid:"อีเมลไม่ถูกต้อง",linkInvalid:"ลิงก์ไม่ถูกต้อง ควรเริ่มต้นด้วย http หรือ https",signature:"ลายเซ็น",signatureTooltip:"ลายเซ็นอีเมลจะใช้ด้านล่างเพื่อให้ข้อมูลสำคัญเกี่ยวกับผู้ส่งแก่ผู้รับ"},wallet:{description:"การแจ้งเตือน Wallet DID จะถูกเปิดใช้งานสำหรับผู้ใช้ทั้งหมด"},webhooks:{description:"การส่งการแจ้งเตือนผ่าน webhooks จะถูกเปิดใช้งานสำหรับผู้ใช้ทั้งหมด"},comingSoon:"กำลังสร้างช่องการแจ้งเตือนเพิ่มเติม",unsubscribe:"ยกเลิกการสมัครใช้",unsubscribeSucceed:"ยกเลิกรับข้อมูลเรียบร้อยแล้ว",unsubscribeFailed:"การยกเลิกการสมัครปิดตัวล้มเหลว",unsubscribeTokenRequired:"โทเค็นการยกเลิกการสมัครจำเป็น",unsubscribeTokenExpired:"โทเค็นการยกเลิกสมาชิกหมดอายุ",unsubscribeTokenInvalid:"โทเค็นการยกเลิกการสมัครสมาชิกไม่ถูกต้อง",installComponentError:"ไม่พบส่วนประกอบที่ถอนการติดตั้ง {name}",installingComponent:"กำลังติดตั้งส่วนประกอบ {name}",pushKit:{enable:"เปิดการแจ้งเตือน",endpoint:"PushKit endpoint",endpointInvalid:"จุดสิ้นสุด PushKit เป็น URL ที่ไม่ถูกต้อง",testSuccess:"การทดสอบ PushKit ส่งสำเร็จ",testFailed:"การทดสอบส่ง PushKit ล้มเหลว",testReceiver:"ตัวรับ PushKit",testSend:"ทดสอบการส่ง push-kit",inputTestReceiver:"โปรดป้อนเครื่องรับทดสอบ",receiverRequired:"จำเป็นต้องใช้ตัวรับ PushKit",pushPath:"เส้นทาง api สำหรับ push-kit (ค่าเริ่มต้น /api/push)",did:"PushKit Blocklet DID",customOptions:"ตัวเลือกที่กำหนดเอง"},notificationDetails:"รายละเอียดการแจ้งเตือน",receiver:"ผู้รับ",sendStatus:{success:"ส่งแล้ว",failed:"ล้มเหลว",sentTime:"ส่งเวลา: {date}",pending:"รอดำเนินการ",reason:{enabled:"ผู้ใช้ได้เปิดใช้งานการแจ้งเตือน {channel}",disabled:"ผู้ใช้ยังไม่ได้เปิดการแจ้งเตือน {channel}",unavailable:"Blocklet ปัจจุบันยังไม่ได้กำหนดค่าแจ้งเตือน {channel}",available:"Blocklet ปัจจุบันได้ตั้งค่าการแจ้งเตือน {channel}",notSent:"ข้อความปัจจุบันยังไม่ได้ส่งไปยัง {channel}",offline:"ผู้ใช้ ออฟไลน์"},count:"{count}",total:"รวม"},filter:"กรอง",notificationPreview:"ตัวอย่างการแจ้งเตือน",resend:"ส่งอีกครั้ง",resendLimit:"คุณสามารถส่งการแจ้งเตือนซ้ำได้สูงสุดสามครั้งต่อวัน",from:"จาก",to:"ถึง",body:"ร่างกาย",notificationTitle:"ชื่อเรื่อง",createdAt:"สร้างเมื่อ",status:"สถานะ",system:"ระบบ",severity:"ความรุนแรง",config:"Configs",selectChannels:"เลือกช่อง",selectChannelsTip:"เลือกช่องทางเพื่อส่งอีกครั้ง",resendFailedOnly:"ส่งใหม่เฉพาะช่องที่ล้มเหลว",statistics:"สถิติ",allSender:"ผู้ส่งทั้งหมด",allSeverity:"ระดับความรุนแรงทั้งหมด",severityType:{info:"Info",success:"สำเร็จ",warning:"คำเตือน",error:"ข้อผิดพลาด"},clear:"ล้าง",allDone:"เสร็จสิ้น",filterType:{all:"ทั้งหมด",unread:"ยังไม่ได้อ่าน"},viewMore:"ดูเพิ่มเติม"},router:{routerSetting:"โดเมนและ URL",certSetting:"ใบรับรอง SSL",defaultSite:"ค่าเริ่มต้น",urlHelperText:"URL ที่ไม่เริ่มต้นด้วย HTTP/HTTPS เป็นพาธที่เกี่ยวข้อง",empty:"คลิกที่การดำเนินการเพื่อตั้งค่าการทับซ้อน URL",healthy:{ok:"Blocklet หรือบริการกำลังทำงาน",error:"บล็อกเล็ตหรือบริการไม่ทำงานหรือไม่ได้ติดตั้ง"},service:{select:"เลือกบริการ Blocklet (ตัวเลือก)",what:"บริการ Blocklet เป็นท่อดำเนินการกับการร้องขอก่อนนำเสนอไปยังบล็อกเล็ตสูงระยะ"},nonProvider:{title:"คำเตือนเปลี่ยนเครื่องยนต์",description:"หากคุณเปลี่ยนเครื่องยนต์เป็น none หน้าปัจจุบันของคุณอาจทำงานไม่ถูกต้องเนื่องจากเครื่องยนต์ก่อนหน้านั้นจะหยุดทำงาน คุณแน่ใจไหมที่จะดำเนินการต่อ?",confirm:"ฉันเข้าใจแล้ว, ดำเนินการต่อไป"},validation:{urlRequired:"URL จำเป็น",redirectCodeRequired:"ต้องใช้รหัสเปลี่ยนเส้นทาง",didRequired:"Blocklet เป็นข้อกำหนด",pathPrefixTooLong:"คำนำหน้า URL ต้องไม่เกิน {length} ตัวอักษร",pathPrefixCannotBeEmpty:"ตัวอักษรนำหน้า URL ต้องไม่เป็นค่าว่าง",domainRequired:"ต้องการโดเมนเซิร์ฟเวอร์",invalidUrl:"กรุณาให้ URL ที่ถูกต้อง",pathPrefixRequired:"ต้องใช้เลขนำ URL",redirectUrlRequired:"จำเป็นต้องระบุ URL การเปลี่ยนเส้นทาง",rewriteUrlRequired:"ต้องการเขียน URL ใหม่"},domain:{addSite:"เพิ่มเว็บไซต์",validate:{emptyTip:"โดเมนเว็บไซต์ต้องไม่เป็นค่าว่าง",suffixTip:"โดเมนเว็บไซต์ไม่สามารถรวม {suffix} ได้"},add:{title:"เพิ่มชื่อโดเมน",description:"โปรดให้ชื่อโดเมนที่ถูกต้อง",confirm:"เพิ่ม",cancel:"ยกเลิก",blocklet:"เลือก Blocklet",redirect:"ตำแหน่งปลายทางที่จะเปลี่ยนเส้นทางจริงหรือ?!",port:"พอร์ตใดที่ผู้จัดการคำขอของคุณต้องฟัง?",portTip:"ค่าเริ่มต้นนี้กำหนดให้เป็นพอร์ตหลักของตัวจัดการคำขอ คุณสามารถปรับแต่งได้",type:"ผู้ควบคุมการจราจร",component:"เลือกส่วนประกอบ",pageGroup:"กลุ่มหน้า",pageGroupTip:"คอมโพเนนต์นี้สามารถแสดงกลุ่มหน้าใดก็ได้ที่ระบุไว้ด้านบน ปล่อยว่างเพื่อแสดงทุกหน้า"},update:{title:"อัปเดตโดเมนเว็บไซต์",label:"โดเมนเว็บไซต์",description:"โปรดระบุโดเมนเว็บไซต์ที่ถูกต้อง"},setup:{tipStart:"เพิ่มระเบียน DNS สำหรับโดเมน",tipEnd:"ตามแนวทางดังต่อไปนี้",recordType:"ประเภทบันทึก",recordValue:"ค่าบันทึก"},verify:{ok:"การแก้ไขโดเมนเหมือนเคย",notResolved:"โดเมนนี้ไม่ได้แก้ไขหรือเข้าถึงได้ โปรดตรวจสอบการกำหนดค่า DNS ของคุณ"},https:{ok:"โดเมนนี้เปิดใช้งาน httpsแล้ว",bad:"โดเมนนี้ยังไม่เปิดใช้งาน https"},delete:{title:"ลบเว็บไซต์",description:'เมื่อคุณยืนยัน คุณจะลบเว็บไซต์ "{name}" ที่มีอยู่ของคุณ พิมพ์ "{name}" ด้านล่างแล้วเลือกลบเพื่อยืนยันการเปลี่ยนแปลง หรือเลือกยกเลิกหากคุณต้องการออกจากเว็บไซต์ของคุณ',confirm_desc:"กรุณาใส่ {name} เพื่อยืนยัน"}},domainAlias:{nftDomain:"การกำหนดค่าอัตโนมัติด้วยชื่อ DID",showTipHint:"วิธีการกำหนดค่าการแก้ไขชื่อโดเมนคืออะไร?",add:{title:"เพิ่มโดเมนเพิ่มเติม",domainDescription:"โปรดระบุชื่อโดเมนที่ถูกต้อง",forceTip:"บังคับให้เพิ่มถ้าชื่อโดเมนมีอยู่แล้ว",helperText:"หากป้อน URL HTTP หรือ HTTPS จะถูกแปลงเป็นชื่อโดเมนโดยอัตโนมัติ",isDidDomainError:"โดเมนนี้เป็นโดเมน DID กรุณาเพิ่มโดยใช้วิธีการกำหนดค่าโดเมนอัตโนมัติ",tips:"คุณสามารถป้อนชื่อโดเมนที่ซื้อจาก DID Names หรือโดเมนอื่นๆ ได้ หากเป็นโดเมน DID คุณต้องแสดง NFT โดเมน DID เพื่อดำเนินการต่อ"},addCustomDomain:{name:"โดเมนที่กำหนดเอง"},addDomainNFT:{showNFT:"กำหนดค่าโดเมนอัตโนมัติ",tips:"คุณสามารถป้อนโดเมนที่ซื้อจาก DID Names ได้ หากตรวจพบโดเมน DID คุณต้องแสดง NFT โดเมน DID เพื่อดำเนินการต่อ",connect:{scan:"ใช้หนึ่งในวิธีการต่อไปนี้เพื่อเชื่อมต่อ {domain} กับ {appName}",confirm:"ยืนยันในบัญชีของคุณ",success:"อนุญาตสำเร็จแล้ว",title:"เชื่อมต่อชื่อ DID กับ {appName}"},buyTip:"ชื่อ DID จะทำการแก้ไขชื่อโดเมนโดยอัตโนมัติ ไม่จำเป็นต้องกำหนดค่าด้วยตนเอง และ blocklet จะอัปเดตบันทึกการแก้ไขชื่อโดเมนโดยอัตโนมัติเมื่อจำเป็น หากคุณยังไม่มี DID Domain NFT, ",buy:"ซื้อโดเมน DID",topLevelDidDomainHint:"สำหรับโดเมน DID หากคุณป้อนโดเมนระดับสูงสุด (เช่น example.com) ระบบจะกำหนดค่าเป็น www.example.com โดยอัตโนมัติ",authorizeFailed:"ไม่สามารถรับข้อมูล NFT โดเมนได้ โปรดลองอีกครั้ง!"},delete:{title:"ลบ",description:'หลังจากลบ "{domain}" การเข้าถึง alias นี้อาจไม่ถูกจัดการอย่างถูกต้อง',confirmPlaceholder:'ป้อน "{domain}" เพื่อลบ'},custom:"โดเมนแบบกำหนดเอง",noCustom:"ไม่มีโดเมนแบบกำหนดเอง",noCustomTip:"ยังไม่ได้กำหนดโดเมนแบบกำหนดเองกับเว็บไซต์ของคุณ เพื่อการรักษาความปลอดภัยที่ดียิ่งขึ้นและประสบการณ์การใช้งานที่ดีขึ้น เราขอแนะนำให้คุณกำหนดโดเมนแบบกำหนดเองของคุณเอง คลิกด้านล่างเพื่อเริ่มต้น"},domainSecurity:{title:"ความปลอดภัยของโดเมน",cors:{title:"โดเมนที่ได้รับอนุญาตให้ใช้งานร่วมกัน",description:'รายชื่อโดเมนที่สามารถส่งคำขอข้ามกำเนิดไปยัง {name} คั่นด้วยเครื่องหมายจุลภาค ใช้ "*" เพื่ออนุญาตให้ใครก็ได้ ซึ่งไม่แนะนำ',domainInvalid:"กรุณาป้อนรายการชื่อโดเมนที่ถูกต้อง"}},rule:{add:{title:"เพิ่มการจับคู่ URL",confirm:"เพิ่ม",pathPrefix:"คำนำหน้า URL คืออะไร?",pathPrefixTip:"หากคุณตั้งค่าคำนำหน้าเป็น '/my-prefix' จะทำให้คำขอที่ตั้งต้นด้วยคำนำหน้าเหล่านั้นจะถูกส่งมายังบล็อกเลตที่กำหนด",blocklet:"Blocklet ไหนจะดูแลการร้องขอเหล่านั้น?",port:"พอร์ตของบล็อกเล็ตใดที่จะรับผิดชอบการร้องขอ?",portTip:"นี่คือค่าพื้นฐานของพอร์ตหลักของ blocklet ถ้า blocklet ของคุณฟังถึงพอร์ตหลายๆพอร์ต คุณสามารถปรับแต่งได้",responseType:"ประเภทการตอบกลับ",responseBody:"เนื้อหาการตอบกลับ",responseBodyTip:"วางเนื้อหาการตอบสนองของคุณที่นี่ ต้องไม่เกิน 4096 อักขระ",responseBodyRequired:"เนื้อหาการตอบกลับต้องไม่เป็นค่าว่าง"},delete:{title:"ลบการแมปลิงก์ URL",description:'เมื่อยืนยันแล้ว คุณจะลบการกำหนด URL "{name}" ที่มีอยู่ของคุณ พิมพ์ "{name}" ด้านล่างและเลือก ลบ เพื่อทำการเปลี่ยนแปลงหรือเลือก ยกเลิก หากคุณต้องการที่จะยกเลิกการกำหนด URL ของคุณ',confirm_desc:"กรุณาใส่ {name} เพื่อลบ",cancel:"ยกเลิก"},update:{title:"อัปเดตตัวแทนสถานที่",confirm:"ใช่, อัปเดต",cancel:"ยกเลิก"}},cert:{name:"ชื่อใบรับรอง",domain:"ชื่อโดเมน",action:"การกระทำ",commonName:"ชื่อทั่วไป",boundDomains:"โดเมน",source:"แหล่งที่มา",expired:"หมดอายุ",leftDays:"วันที่เหลืออยู่",issuedOn:"ออกใบเบิกในวันที่",expiryOn:"หมดอายุเมื่อ",fingerprintAlg:"อัลกอริทึมลายนิ้วมือ",validityPeriod:"ระยะเวลาที่ถืออยู่ในช่วงความถูกต้อง",matchedSites:"เว็บไซต์ที่ตรงกัน",upload:"อัปโหลดด้วยมือ",publicCertHelperText:"สามารถดาวน์โหลดใบรับรองสาธารณะได้",nonPublicCertHelperText:"ไม่สามารถดาวน์โหลดใบรับรองที่ไม่เปิดเผยได้",protectedCertHelperText:"ไม่สามารถแก้ไขใบรับรองที่ถูกป้องกัน",unprotectedCertHelperText:"ใบรับรองที่ไม่ได้รับการป้องกันสามารถแก้ไขได้",issuing:"กำลังสร้างใบรับรอง",sourceTypes:{upload:"อัปโหลดด้วยตนเอง",lets_encrypt:"มาเข้ารหัสกันเถอะ"},table:{nodata:"ไม่มีข้อมูล"},delete:{title:"ลบใบรับรอง",description:"ยืนยันการลบใบรับรองของโดเมน {domain} หรือไม่? การลบอาจส่งผลต่อบริการที่เกี่ยวข้อง โปรดยืนยันและตรวจสอบให้แน่ใจว่าปลอดภัยก่อนดำเนินการลบ",confirm:"ยืนยัน"},nginx:{title:"อัปเดตใบรับรอง",titleAdd:"เพิ่มใบรับรอง",pem:"ไฟล์ใบรับรอง SSL",pemTip:'โปรดวางไฟล์ใบรับรองเซิร์ฟเวอร์ของคุณที่นี่ ต้องลงท้ายด้วย ".pem" หรือ ".crt"',key:"ไฟล์กุญแจส่วนตัว",keyTip:"กรุณาลากรายการไฟล์กุญแจส่วนตัวของเซิร์ฟเวอร์ของคุณที่นี่ มันควรจบลงด้วย '.pem' หรือ '.key'",confirm:"บันทึก",cancel:"ยกเลิก",invalidFile:"คุณได้เลือกไฟล์ที่ไม่ถูกต้อง",empty:"ยังไม่ได้เลือกไฟล์",source:"แหล่ง",sourceTypes:{upload:"อัปโหลดด้วยตนเอง",lets_encrypt:"มาเข้ารหัสกันเถอะ"}},detail:{title:"รายละเอียดใบรับรอง"},genLetsEncryptCert:{title:"สร้างใบรับรอง Let's Encrypt",dnsTip:"โปรดตรวจสอบให้แน่ใจว่าชื่อโดเมนชี้ไปที่เครื่องแม่ข่าย Blocklet ปัจจุบัน",description:"การเพิ่มใบรับรองจะทำให้บริการมีความปลอดภัยมากขึ้นและ Blocklet Server จะต่ออายุใบรับรองอัตโนมัติก่อนหมดอายุ"}},gateway:{reqLimit:{switchLabel:"เปิดใช้งานการจำกัดคำขอพร้อมกันเพื่อประสิทธิภาพที่เชื่อถือได้",rate:"จำกัดคำขอพร้อมกันต่อ IP ที่ {rate} ต่อวินาที (จำกัดต่อ IP)",title:"การจำกัดคำขอ",global:"จำกัดคำขอพร้อมกันที่เกตเวย์ประมวลผลเป็น {global} ต่อวินาที (ขีดจำกัดทั่วโลก)",burstFactor:"ตัวคูณการระเบิดสำหรับการจำกัดอัตรา ใช้กับขีดจำกัดทั่วโลกและต่อ IP (ทั่วโลก: {global}, ต่อ IP: {rate})",methods:"จำกัดคำขอพร้อมกันตาม IP สำหรับวิธีการต่อไปนี้",burstDelay:"ความล่าช้าเมื่อคำขอเพิ่มขึ้นอย่างรวดเร็วและเกินขีดจำกัดต่อ IP ({delay} วินาที)"},cacheEnabled:{switchLabel:"เปิดใช้แคชเกตเวย์เพื่อเพิ่มประสิทธิภาพ",title:"แคชเกตเวย์"},blockPolicy:{switchLabel:"การบล็อกคำขอ",addItem:"เพิ่มรายการ",blacklistDesc:"คำขอจาก IP เหล่านี้จะถูกบล็อกจากการเข้าถึงเซิร์ฟเวอร์นี้และบล็อกเล็ตทั้งหมด",inputPlaceholder:"ป้อนที่อยู่ IP, CIDR range หรือ URL",invalidItem:"ที่อยู่ IP, ช่วง CIDR หรือ URL ไม่ถูกต้อง",title:"การบล็อกคำขอ",autoBlocking:{switchLabel:"บล็อกคำขอที่ไม่ดีด้วยการตรวจจับแบบเรียลไทม์",windowSize:"ขนาดหน้าต่างเวลาในการนับคำขอ (วินาที)",windowQuota:"จำนวนคำขอสูงสุด (ต่อ IP) ที่อนุญาตในช่วงเวลานี้",blockDuration:"ระยะเวลาในการบล็อกผู้ใช้โดย IP เมื่อเกินโควตาภายในหน้าต่าง (วินาที)",statusCodes:"รหัสสถานะที่จะตรวจสอบ"}},proxyPolicy:{switchLabel:"ทำงานข้างหลังพร็อกซี",trustRecursive:"信任代理者循環地",trustRecursiveDesc:"ใช้ IP ด้านซ้ายสุดในสายโซ่ X-Forwarded-For",trustedProxies:"พร็อกซี่ที่เชื่อถือได้",trustedProxiesDesc:"คำขอจาก IP เหล่านี้จะได้รับความเชื่อถือเพื่อรับ IP ลูกค้าจริง",realIpHeaderLabel:"หัวเลข IP ของลูกค้า",realIpHeaderDesc:"หากเซิร์ฟเวอร์ Blocklet กำลังทำงานข้างหลังพร็อกซีเจนเช่น CloudFront, คุณสามารถตั้งค่าหัวข้อของ IP จริงของลูกค้าที่นี่.",addItem:"เพิ่มรายการ",inputPlaceholder:"ป้อนที่อยู่ IP, ช่วง CIDR",invalidItem:"ที่อยู่ IP ไม่ถูกต้อง, ช่วง CIDR",title:"นโยบาย Proxy"},wafPolicy:{switchLabel:"ตรวจจับและบล็อกคำขอที่ไม่ดีด้วย ModSecurity",modeDesc:"โหมดของ modsecurity (ต้องใช้โมดูล modsecurity)",mode:{detectOnly:"ตรวจจับเท่านั้น (จะไม่บล็อกคำขอ)",on:"เปิด (จะบล็อกคำขอ)"},logLevelDesc:"ระดับ log สำหรับ ModSecurity (0-9), 0 หมายถึงปิดการใช้งานบันทึกการตรวจสอบ",inboundAnomalyScoreThresholdDesc:"เกณฑ์คะแนนความผิดปกติขาเข้า (1-100), ค่าที่ต่ำกว่าหมายถึงเข้มงวดกว่า",outboundAnomalyScoreThresholdDesc:"เกณฑ์คะแนนความผิดปกติขาออก (1-100), ค่าต่ำหมายถึงเข้มงวดมากขึ้น",docDesc:"ตรวจสอบเอกสารสำหรับวิธีการตั้งค่า modsecurity",title:"ไฟร์วอลล์แอปพลิเคชันเว็บ"}}},noMatch:{desc:"เราไม่พบหน้าที่คุณกำลังมองหา"},health:{connectionErrorTip:"Blocklet Server ไม่สามารถเชื่อมต่อกับเครือข่ายได้ โปรดตรวจสอบว่า Blocklet Server ถูกหยุดหรือมีปัญหาเน็ตเวิร์ค",connectionRecoveryTip:"การเชื่อมต่อกับเซิร์ฟเวอร์ Blocklet ได้กู้คืนแล้ว",connectionStoppedTip:"บล็อกเล็ต เซิร์ฟเวอร์หยุดทำงานแล้ว",wrongAccessUrlTip:"ที่อยู่การเข้าถึงเซิร์ฟเวอร์ Blocklet ไม่ถูกต้อง โปรดใช้ที่อยู่การเข้าถึงที่ถูกต้อง"},debug:{title:"เซิร์ฟเวอร์ Blocklet ของคุณพร้อมทำงานแล้ว!"},team:{invite:{action:"เชิญใหม่",setting:"ตั้งค่าเชิญ",enabled:"ปิดการตั้งค่านี้เพื่อจำกัดการเชิญผู้ใช้ใหม่ให้เฉพาะเจ้าของ/ผู้ดูแลระบบเท่านั้น",disabled:"เปิดการตั้งค่านี้เพื่อให้ผู้ใช้ใด ๆ เชิญผู้ใช้ใหม่ได้",inviter:"เชิญโดย"},add:"เพิ่มใหม่",member:{name:"ชื่อ",passport:"หนังสือเดินทาง",passports:"หนังสือเดินทาง",lastLogin:"เข้าสู่ระบบครั้งล่าสุด",lastLoginIp:"IP เข้าสู่ระบบล่าสุด",source:"ลงทะเบียนแหล่งที่มา",source_derived:"มาจาก OAuth",source_wallet:"กระเป๋าสตางค์ DID",filter:"กรองตาม",blockAccess:"ห้ามเข้าสู่ระบบ",blockAccessDescription:"ผู้ใช้จะไม่สามารถเชื่อมต่อกับแอปพลิเคชันนี้ได้",allowAccess:"อนุญาตเข้าสู่ระบบ",allowAccessDescription:"ผู้ใช้สามารถเชื่อมต่อกับแอปพลิเคชันนี้ได้",updateRole:"อัปเดตบทบาท",removeUser:"ลบผู้ใช้",removeUserDescription:'ยืนยันการลบผู้ใช้ "{name}"?',revokePassport:"เพิกถอนหนังสือเดินทาง",revokePassportDescription:"หลังจากหนังสือเดินทางถูกระงับ ผู้ถือหนังสือเดินทางจะไม่สามารถใช้ในการเข้าสู่ระบบอีกครั้งได้ คุณแน่ใจหรือว่าต้องการดำเนินการต่อ?",enablePassport:"เปิดใช้งาน Passport",enablePassportDescription:"เมื่อหนังสือเดินทางที่ถูกถอดถอนได้รับการเปิดใช้งานอีกครั้ง ผู้ถือหนังสือเดินทางสามารถใช้ได้เพื่อเข้าสู่ระบบอีกครั้ง คุณแน่ใจหรือไม่ว่าต้องการดำเนินการต่อหรือไม่?",passportPermissionTitle:"หนังสือเดินทางมีการอนุญาตต่อไปนี้:",search:"ค้นหาสมาชิก",onlyApprovedMember:"แสดงเฉพาะที่ได้รับอนุมัติเท่านั้น",inviteDialog:{createInviteLink:"สร้างลิงก์เชิญเชิญ",createSuccessTip:"ลิงก์เชิญถูกสร้างขึ้นเรียบร้อยแล้ว คลิกเพื่อคัดลอกและส่งลิงก์ไปยังสมาชิกที่ได้รับเชิญ โปรดทราบว่าลิงก์เชิญนี้ไม่สามารถใช้ซ้ำได้และจะหมดอายุเมื่อถึงวันที่ {expireDate}"},error:{passportEmpty:"หมายเลขพาสปอร์ตต้องไม่เป็นค่าว่าง"},connectedAccounts:"บัญชีที่เชื่อมต่อ",connections:"การเชื่อมต่อ",federated:"ฟิเดอเรทีด",switch:{did:"สลับ DID",profile:"เปลี่ยนโปรไฟล์",passport:"เปลี่ยนพาสปอร์ต"},settings:{notification:"การแจ้งเตือน",email:"ส่งอีเมลถึงฉันเมื่อมีเหตุการณ์บางอย่างเกิดขึ้น",wallet:"ส่งการแจ้งเตือนไปยังกระเป๋าเงินของฉันเมื่อเกิดเหตุการณ์บางอย่าง",phone:"ส่งข้อความให้ฉันเมื่อเกิดเหตุการณ์บางอย่าง",webhook:"Webhooks",add:"เพิ่ม webhook ใหม่",url:"URL ที่กำหนดเอง",slack:"Slack Webhook",tested:"ส่งข้อความทดสอบแล้ว"},activeUserSessions:"เซสชันผู้ใช้ที่ใช้งานอยู่",forceLogout:"ออกจากระบบบังคับ",forceLogoutDescription:"ยืนยันให้ออกจากระบบผู้ใช้นี้หรือไม่?",openProfile:"ดูโปรไฟล์",removeUserSuccess:"ผู้ใช้ถูกลบออกแล้ว",forceLogoutRemoveDescription:"ยืนยันเพื่อบังคับออกจากระบบผู้ใช้รายนี้ (ลบเซสชันผู้ใช้ทั้งหมดด้วย)?"},transferNode:{name:"โอนสิทธิ์การเป็นเจ้าของ",inviteDialog:{title:"โอนเซิร์ฟเวอร์บล็อกเล็ต",tips:{progress:"การถ่ายโอนเซิร์ฟเวอร์จำเป็นต้องได้รับการยอมรับจากผู้รับเพื่อดำเนินการในการถ่ายโอนเสร็จสิ้น และเมื่อผู้รับยอมรับแล้ว คุณจะไม่สามารถเข้าสู่เซิร์ฟเวอร์ด้วยพาสปอร์ตปัจจุบันได้อีก",newOwnerPermissions:"เจ้าของใหม่จะมีสิทธิ์ในการจัดการทุกปฏิบัติการ เช่นสมาชิก หนังสือเดินทาง และบล็อกเล็ต",revoke:'หากคุณต้องการยกเลิกเชิญโอนเงิน คุณสามารถลบลิงก์เชิญในหน้า "ทีม -> สมาชิก -> เชิญ" ได้'},createInviteLink:"สร้างลิงก์เชิญ",createSuccessTip:"ลิงก์เชิญถูกสร้างสำเร็จแล้ว คลิกเพื่อคัดลอกและส่งลิงก์ไปยังสมาชิกที่เชิญ โปรดทราบว่าลิงค์เชิญนี้ไม่สามารถนำกลับมาใช้ซ้ำได้และจะหมดอายุเมื่อถึงวันที่ {expireDate}"},delegateDialog:{title:"ต้องการการอนุญาต",scan:"ใช้เมธอดต่อไปนี้เพื่ออนุญาตให้เซิร์ฟเวอร์โอน NFT การเป็นเจ้าของเซิร์ฟเวอร์",confirm:"ยืนยันในบัญชีของคุณ",success:"อนุญาตสำเร็จแล้ว"}},transferApp:{name:"โอนกรรมสิทธิ์",transferDialog:{title:"แอปพลิเคชันการโอนเงิน",tips:{progress:"แอปพลิเคชันการโอนถ่ายต้องได้รับการยอมรับจากผู้รับเพื่อทำการโอนถ่ายสำเร็จ โดยหลังจากนั้นหากผู้รับยอมรับแล้ว คุณจะไม่สามารถเข้าสู่แอปพลิเคชันด้วยหนังสือเดินทางปัจจุบันได้อีก",newOwnerPermissions:"เจ้าของใหม่จะมีสิทธิ์ในการจัดการทุกปฏิบัติการเช่นสมาชิก หนังสือเดินทาง และการตั้งค่าทั้งหมด"},createTransferLink:"สร้างลิงก์การโอนเงิน",createSuccessTip1:'ลิงก์การโอนถ่ายถูกสร้างขึ้นเรียบร้อยแล้ว ผู้ถูกเชิญต้องใช้ <a style="color: rgb(29, 193, 199)" target="_blank" href="https://www.didwallet.io/">DID Wallet</a> เพื่อรับการเป็นเจ้าของแอป',createSuccessTip2:"กรุณาคลิกเพื่อคัดลอกและส่งลิงก์ไปยังสมาชิกที่เชิญเข้าร่วม โปรดทราบว่าลิงก์การโอนนี้ไม่สามารถใช้ซ้ำได้และจะหมดอายุในวันที่ {expireDate} ลิงก์การโอนของคุณจะปรากฏอย่างเดียวและจะไม่สามารถดูได้อีกครั้งหลังจากปิดหน้าต่างนี้",createSuccessTip3:"หลังจากการโอนเงินสำเร็จแล้ว แอปพลิเคชันจะรีสตาร์ทโดยอัตโนมัติเพื่อให้การเปลี่ยนแปลงมีผล",link:"ลิงค์การโอนเงิน",iKnow:"ฉันได้คัดลอกและบันทึกลิงก์แล้ว"},connectDialog:{title:"ต้องอนุญาต",scan:"ใช้เมธอดต่อไปนี้เพื่ออนุญาตให้แอปพลิเคชันโอนกรรมสิทธิ์",confirm:"ยืนยันในบัญชีของคุณ",success:"อนุญาตสำเร็จแล้ว"},receiveDialog:{title:"รับการครอบครองแอปพลิเคชัน",scan:"ใช้เมธอดต่อไปนี้เพื่อรับการเป็นเจ้าของแอปพลิเคชัน",confirm:"ยืนยันในบัญชีของคุณ",success:"รับการครอบครองเรียบร้อยแล้ว"},successTitle:"คุณได้เป็นเจ้าของใหม่ของแอปพลิเคชันนี้แล้ว",visitDashboard:"เข้าชมแดชบอร์ดแอปพลิเคชัน",description:"คุณสามารถโอนกรรมสิทธิ์แอปพลิเคชันของคุณไปยังกระเป๋าเงินหรือบุคคลอื่นได้"},permission:{create:{title:"สร้างการอนุญาต",description:"รูปแบบ: <การกระทำ>_<ทรัพยากร>"},delete:{title:"ลบสิทธิ์",description:"ยืนยันการลบ {name}?"},error:{actionEmpty:"การกระทำต้องไม่เป็นค่าว่าง",resourceEmpty:"ทรัพยากรต้องไม่เป็นค่าว่าง",permissionTooLong:"การอนุญาตไม่สามารถเกิน {length} ตัวอักษร",descriptionTooLong:"คำอธิบายต้องไม่เกิน {length} ตัวอักษร"}},passport:{create:{title:"สร้างหนังสือเดินทาง",titleTip:"หัวข้อไม่สามารถแก้ไขได้หลังจากสร้างแล้ว แนะนำในช่วง 14 ตัวอักษร"},bind:{title:"ผูกอนุญาต",roleTip:"คุณจะได้รับสิทธิพิเศษทั้งหมดของหนังสือเดินทางที่เลือกหลังจากผูกพัน",permissionTip:"คุณจะได้รับสิทธิ์ที่เลือกหลังจากผูกบัญชี",transferLeftTitle:"สิทธิ์ทั้งหมด",transferRightTitle:"ได้รับอนุญาต"},delete:{title:"ลบหนังสือเดินทาง",description:"หากลบไป ใบอนุญาตครอบครองจากผู้ใช้จะสูญหายทั้งหมด คุณแน่ใจหรือไม่ที่จะดำเนินการต่อ?"},error:{titleEmpty:"หัวข้อต้องไม่เป็นค่าว่าง",titleTooLong:"หัวข้อต้องไม่เกิน {length} ตัวอักษร",descriptionEmpty:"คำอธิบายไม่สามารถเว้นระหว่างว่างได้"},issuance:{pending:"รอดำเนินการ",create:{title:"สร้างลิงก์"},delete:{title:"ลบลิงค์ที่ได้รับ",description:"ยืนยันการลบ {link}?"}},issue:"ออกหนังสือเดินทาง",disableIssuance:"ปิดการออกหนังสือเดินทาง",enableIssuance:"เปิดใช้งานการออกหนังสือเดินทาง",disableIssuanceTip:'การดำเนินการ "ออกหนังสือเดินทาง", "เชิญสมาชิก" และการดำเนินการอื่น ๆ จะถูกปิดใช้งาน',enableIssuanceTip:"ออกหนังสือเดินทาง",trustedPassportIssuers:"ผู้ออกหนังสือเดินทางที่เชื่อถือได้",trustedIssuers:"ผู้ออกใบรับรองที่น่าเชื่อถือ",trustedFactories:"คอลเลกชัน NFT ที่น่าเชื่อถือ",trustedFactoriesTip:"จัดการคอลเลกชัน NFT ที่เชื่อถือได้ที่สามารถใช้แลกเปลี่ยนเพื่อรับหนังสือเดินทาง",searchFactoryAddress:"ค้นหาคอลเลกชัน DID",configFactories:"ตั้งค่าคอลเลกชัน NFT ที่น่าเชื่อถือ",configFactoriesTip:"อนุญาตให้ผู้ใช้แลกเปลี่ยน NFT เพื่อหนังสือเดินทาง",factoryAddress:"ที่อยู่การเก็บรวบรวม NFT",factory404:"ไม่พบคอลเลกชัน NFT",factoryAddressTip:"ที่อยู่ของคอลเล็กชัน NFT ต้องอยู่ใน ArcBlock Main Chain",role:"ประเภทหนังสือเดินทาง",ttl:"นโยบายการหมดอายุของหนังสือเดินทาง",ttlNever:"ไม่มีวันหมดอายุ",ttlMint:"ตั้งแต่การซื้อ NFT",ttlExchange:"ตั้งแต่การแลกเปลี่ยนหนังสือเดินทาง",ttlNeverTip:"หนังสือเดินทางจะมีอายุใช้งานจนถูกยกเลิก",ttlMintTip:"หนังสือเดินทางจะมีความถูกต้องตั้งแต่ซื้อ NFT จนถึงช่วงเวลาที่คุณระบุ (ttl) หรือถอนคืน",ttlExchangeTip:"หนังสือเดินทางจะถูกต้องตั้งแต่เวลาที่ผู้ใช้แลกเปลี่ยนเรียบร้อยจนถึง ttl หรือเพิกถอนที่คุณระบุ",ttlTip:'"365d" หมายถึง 365 วัน คุณยังสามารถใช้ "30 วัน" หรือ "24 ชั่วโมง" ได้',validUntil:"ใช้ได้ถึง: {date}",externalPassport:"หนังสือเดินทางภายนอก",notTrustedIssuerTip:"ไม่สามารถใช้หนังสือเดินทางได้เนื่องจากผู้ออกไม่อยู่ในรายชื่อผู้ออกที่น่าเชื่อถือ",issuerDid:"เลขประจำตัวผู้ออก",addNodeToTrustedIssuers:"เพิ่มเซิร์ฟเวอร์ปัจจุบันเป็นผู้ออกหนังสือเดินทางที่น่าเชื่อถือ",revoked:"ถูกยกเลิก",noPermission:"ไม่มีสิทธิ์ในการทำการดำเนินการนี้",shouldNotDeleteCurrent:"คุณไม่สามารถเพิกถอนหนังสือเดินทางที่ใช้อยู่ได้ในขณะนี้",mappingRule:"กฎเชื่อมต่อ",defaultRule:"กฎเริ่มต้น",search:"ค้นหาหนังสือเดินทาง",searchIssuerDid:"ค้นหาผู้ออก DID",issueBy:"ปัญหาโดย {name}",configColor:"ตั้งค่าสีหน้ากากหนังสือเดินทาง",configColorTip:"ปรับแต่งสีหนังสือเดินทาง",color:"สีหน้ารักษาตัว",description:"ใช้หนังสือเดินทางนี้เพื่อเชื่อมต่อ {teamName} เป็น {title}",displayBuiltin:"ในตัว",displayCustom:"แบบกำหนดเอง",typesTip:"กำหนดประเภทของพาสปอร์ต แยกตามเครื่องหมายจุลภาค",issuanceDate:"วันออก: {date}",sourceMaps:{recover:"กู้คืน",issue:"ออก",invite:"ได้รับเชิญ",trusted:"น่าเชื่อถือ"},related:"หนังสือเดินทางที่เกี่ยวข้อง",operationLogs:"บันทึกการทำงาน",owner:"เจ้าของ",status:"สถานะ",statusMap:{valid:"ถูกต้อง",revoked:"เพิกถอน",expired:"หมดอายุ"},view:"จัดการหนังสือเดินทาง",trustedPassportIssuersTip:"จัดการผู้ให้บริการหนังสือเดินทางที่เชื่อถือได้ซึ่งสามารถใช้เพื่อออกหนังสือเดินทาง",issuanceTime:"เวลาออก",relatedDescription:"หนังสือเดินทางปัจจุบันได้มาจากหนังสือเดินทางต่อไปนี้",passportExpireTime:"ตั้งวันที่หมดอายุสําหรับ Passport",customExpireTime:"เวลาหมดอายุแบบกำหนดเอง",customExpireTimeIsInvalid:"เวลาหมดอายุที่กำหนดเองไม่ถูกต้อง"},inviting:{link:"ลิงก์เชิญ",inviter:"ผู้เชื้อเชิญ",delete:{title:"ลบลิงก์เชิญ",description:"ยืนยันการลบ {link}?"},disabledTip:"ไม่สามารถเปิดใช้งานการเชิญเป็นไปได้"},whoCanAccess:{all:{title:"สามารถเข้าถึงได้สำหรับทุกคน"},owner:{title:"เฉพาะเจ้าของเท่านั้น"},invited:{title:"เฉพาะผู้ใช้ที่ได้รับเชิญ"}},userFollowers:{follow:"ติดตาม",unfollow:"เลิกติดตาม",followersOnly:"มองเห็นได้เฉพาะผู้ติดตามเท่านั้น",followers:"ผู้ติดตาม",following:"กำลังติดตาม",emptyFollowing:"ยังไม่มีผู้ใช้ที่คุณกำลังติดตาม",emptyFollowers:"ยังไม่มีผู้ติดตาม",title:"ติดตาม",invitees:"ผู้ได้รับเชิญ",emptyInvitees:"คุณยังไม่ได้เชิญใครเลย"},orgs:{explain:"อนุญาตให้ผู้ใช้สร้างและเข้าร่วมองค์กร กำหนดบทบาทและจัดการทรัพยากร",description:"คำอธิบาย",deleteConfirm:"ยืนยันการลบ {name}?",members:"สมาชิก",myCreated:"สิ่งที่ฉันสร้าง",myJoined:"สิ่งที่ฉันเข้าร่วม",myCreatedEmpty:"คุณยังไม่ได้สร้างองค์กรใดๆ",myJoinedEmpty:"คุณยังไม่ได้เข้าร่วมองค์กรใด",deleteConfirmDescription:"การลบองค์กรนี้จะลบบทบาทและทรัพยากรทั้งหมดที่เชื่อมโยงกับองค์กรนี้ ผู้ใช้จะยังคงอยู่ในระบบ แต่จะสูญเสียบทบาทในองค์กรนี้ การดำเนินการนี้ไม่สามารถยกเลิกได้",active:"ใช้งาน",deleteOrg:"ลบองค์กรปัจจุบัน",invitedAt:"ได้รับเชิญเมื่อ: {time}",joinedAt:"เข้าร่วมเมื่อ: {time}",createNew:"สร้างองค์กรใหม่",viewAll:"ดูองค์กรทั้งหมด",validate:{nameEmpty:"ชื่อต้องไม่ว่าง",nameTooLong:"ชื่อไม่สามารถเกิน {length} อักขระ",descriptionTooLong:"คำอธิบายต้องไม่เกิน {length} ตัวอักษร"},mutate:{title:"{mode} องค์กร",name:"ชื่อองค์กร",createSuccess:"สร้างองค์กรสำเร็จแล้ว",updateSuccess:"อัปเดตองค์กรสำเร็จแล้ว",orgNotEnabled:"ไม่ได้เปิดใช้งานองค์กร",maxMemberPerOrg:"องค์กรสามารถเชิญสมาชิกได้สูงสุด {maxMemberPerOrg} คน",maxOrgPerUser:"คุณสามารถสร้างองค์กรได้สูงสุด {maxOrgPerUser} องค์กร"},invite:{chooseUsersToInvite:"เลือกผู้ใช้ที่จะเชิญ",success:"ส่งคำเชิญถึงผู้ใช้แล้ว",pleaseSelectUsers:"โปรดเลือกผู้ใช้",pleaseSelectRole:"โปรดเลือกบทบาท",inviteExternalUsers:"เชิญผู้ใช้ภายนอก",failed:"คำเชิญผู้ใช้ {count} รายการล้มเหลว โปรดลองอีกครั้งในภายหลัง",remove:"ลบผู้ใช้",removeSuccess:"ลบผู้ใช้สำเร็จ",limit:"จำกัด",limitTip:"จำกัดจำนวนสมาชิกองค์กรและองค์กรต่อผู้ใช้",maxMembers:"สมาชิกสูงสุดต่อ org",maxOrgs:"จำนวนองค์กรสูงสุดต่อผู้ใช้",maxMembersTip:"จำนวนผู้ใช้สูงสุดที่สามารถเชิญสำหรับองค์กรนี้",inviteLinkSendToEmail:"ลิงก์เชิญถูกส่งไปยังอีเมล ({email}) กรุณาตรวจสอบ",enterEmailAddress:"โปรดป้อนที่อยู่อีเมล",inviteTitle:"เชิญผู้ใช้เข้าร่วม {orgName}"},member:{removeMemberConfirm:"ยืนยันการลบ {name}?",removeMemberConfirmDescription:"หลังจากการลบ ผู้ใช้จะสูญเสียบทบาทและสิทธิ์ในองค์กร การดำเนินการนี้ไม่สามารถยกเลิกได้",removeInvitingMember:"ยืนยันการยกเลิกคำเชิญ {name}?",removeInvitingMemberDescription:"หลังจากการนำออก ผู้ใช้จะไม่สามารถเข้าร่วมองค์กรได้ และต้องได้รับเชิญใหม่ การกระทำนี้ไม่สามารถยกเลิกได้"}}},launcher:{provider:"ผู้ให้บริการ",adminUrl:"URL"},session:{blockAccess:"คุณถูกบล็อกจากการเข้าถึงเซิร์ฟเวอร์นี้"},launchBlocklet:{appInfo:"ข้อมูลแอปพลิเคชัน",appInfoDesc:"ยืนยันข้อมูลใบสมัคร",author:"ผู้เขียนแอปพลิเคชัน: {author}",setup:"ตั้งค่า Blocklet",redirect:"เปลี่ยนเส้นทาง",alreadyRunning:"แอปพลิเคชัน {name} กำลังทำงานอยู่บนเซิร์ฟเวอร์ Blocklet นี้",alreadyInstalled:"แอปพลิเคชัน {name} ถูกติดตั้งไว้ในเซิร์ฟเวอร์ Blocklet นี้แล้ว",alreadyExists:"แอปพลิเคชันนี้มีอยู่แล้ว กำลังเปลี่ยนเส้นทาง...",purchased:"ซื้อแล้ว",purchase:"การซื้อ",nextStep:"ขั้นตอนถัดไป",agreement:"ข้อตกลงในการอนุญาต",agreeAll:"ยอมรับและดำเนินการต่อ",installing:"กำลังติดตั้ง {appName} บน {serverName}, อาจใช้เวลาหลายนาทีในการเสร็จสิ้น กรุณารอสักครู่...",redirecting:"{appName} ถูกติดตั้งสำเร็จแล้ว, กำลังเริ่มต้น...",start:"เปิดใช้งาน",launch:"ติดตั้ง Blocklet ลงในเซิร์ฟเวอร์",launchSuccess:"{appName} ถูกเปิดใช้งานเรียบร้อยแล้ว!",installSuccess:"Blocklet ติดตั้งและเปิดใช้งานบน {serverName} สำเร็จ",openInRegistry:"ดูใน Blocklet Store",subTitle:"พร้อมที่จะติดตั้ง Blocklet {appName} บน {serverName}",installingSubTitle:"กำลังติดตั้ง {appName}",access:"เปิดแอปพลิเคชัน",viewApplication:"ดูแอปพลิเคชัน",newVersion:"เวอร์ชันใหม่",newVersionDesc:"แอปพลิเคชันมีอยู่แล้ว แต่เวอร์ชันปัจจุบันสามารถอัพเกรดได้",upgradeNow:"อัพเกรดตอนนี้",later:"ต่อไป",introduction:"การแนะนำ",welcome:"ยินดีต้อนรับสู่ Blocklet Launch Wizard",accept:"ฉันเห็นด้วยกับ EULA ของ Blocklet",license:"ใบอนุญาตแอปพลิเคชัน",next:"ยอมรับ EULA และดำเนินการต่อ",purchaseApp:"ซื้อ Blocklet",setupAppDesc:"เริ่มต้น Blocklet ของคุณ",launched:"เสร็จสมบูรณ์",confirmInstall:"ยืนยันการติดตั้ง",dialog:{title:"กลายเป็นเจ้าของแอป",nftFreeDescription:"โปรดแสดงพื้นที่แอปพลิเคชัน NFT และสร้างบัญชีแอปเพื่อดำเนินการต่อ",nftPaidDescription:"โปรดนำเสนอ NFT พื้นที่แอปและ NFT การซื้อแอปเพื่อดำเนินการต่อ",freeDescription:"กรุณาสร้างบัญชีแอปเพื่อดำเนินการต่อ",paidDescription:"โปรดแสดงการซื้อ NFT แอปพลิเคชันและสร้างบัญชีแอปเพื่อดำเนินการต่อ",confirm:"ยืนยันในบัญชีของคุณ",success:"อนุญาตสำเร็จแล้ว",authorizationTimeout:"หมดเวลาอนุญาต"},waiting:{verifying:"การตรวจสอบฮีโร่อนุกรมแอป...",downloading:"กำลังดาวน์โหลดกลุ่มแอป...",downloadingComponent:"กำลังดาวน์โหลด {name}",extractingComponent:"สกัด {name}",extracting:"กำลังแยกไฟล์แอปพลิเคชัน...",installing:"กำลังติดตั้งส่วนประกอบของแอป...",installed:"ติดตั้งแล้ว",starting:"กำลังเริ่มแอป...",done:"แอปของคุณกำลังเปิดตัว...",parsing:"กำลังวิเคราะห์เมตาแอป...",initializing:"กำลังเริ่มต้นการกำหนดค่าแอป...",initializingOwner:"กำลังเริ่มต้นเจ้าของแอป...",creatingSecurityRules:"กำลังสร้างกฎความปลอดภัยเริ่มต้น...",assigningDomain:"กำหนดโดเมนเริ่มต้น...",waitingForDomain:"กำลังรอโดเมนเริ่มต้นใช้งาน..."},error:{loadMetaFailed:"โหลดข้อมูลแอปล้มเหลว",appMetaNotFound:"ไม่พบข้อมูลสำหรับแอพนี้",downloadFailed:"การดาวน์โหลดแอปล้มเหลว โปรดลองอีกครั้ง",installFailed:"การติดตั้งแอปล้มเหลว โปรดลองอีกครั้ง",startFailed:"การเริ่มต้นแอปล้มเหลว โปรดลองอีกครั้ง",launchFailed:"ไม่สามารถเริ่มต้นแอปพลิเคชันได้ โปรดลองอีกครั้ง",installedButStopped:"แอปติดตั้งสำเร็จ แต่ไม่สามารถเริ่มต้นใช้งานได้ คุณสามารถเริ่มใช้งานด้วยตนเองหลังจากแก้ไขปัญหาการบล็อก",installedButError:"แอปพลิเคชันถูกติดตั้งเรียบร้อยแล้ว แต่ไม่สามารถเริ่มต้นใช้งานได้",restoreFailed:"การเรียกคืนแอปล้มเหลว โปรดลองอีกครั้ง",resourceBlocklet:"ไม่สามารถเปิดใช้งานบล็อกได้โดยตรง แต่คุณสามารถเพิ่มลงในแอปพลิเคชันที่มีอยู่"},steps:{introduction:"แนะนำ",installApp:"ติดตั้งแอปพลิเคชัน",purchaseSpace:"ซื้อพื้นที่",prepareSpace:"เตรียมพื้นที่"},installRelatedComponents:"ติดตั้ง Blocklets ที่เกี่ยวข้อง",canNotInstall:"ไม่สามารถติดตั้ง",dockerBlockletCantInstall:"ไม่สามารถติดตั้ง Blocklet ได้ เพราะ Blocklet Server ยังไม่ได้เปิดใช้งาน Docker หรือ Docker Network",nav:{myApps:"แอปของฉัน",viewMyApps:"ดูแอปของฉัน"},withoutWallet:"ข้ามการเชื่อมต่อกระเป๋าเงิน DID",nwFailed:"ไม่สามารถดึงเวิร์กโฟลว์ได้",alreadyConsumed:"เซสชันการเปิดตัวถูกใช้งานแล้ว",redirectToLauncherBlocklet:"กำลังเปลี่ยนเส้นทางไปยัง Launcher Blocklet"},issuePassport:{title:"รับหนังสือเดินทาง",description:"ใช้เมธอดต่อไปนี้เพื่อรับหนังสือเดินทางที่ออกโดย {name}",dialog:{scan:"ใช้เมธอดต่อไปนี้เพื่อขอรับหนังสือเดินทาง",confirm:"ยืนยันในบัญชีของคุณ",success:"หนังสือเดินทางถูกเพิ่มเข้าไปในกระเป๋าเงินของคุณเรียบร้อยแล้ว",loginWithPassport:"เชื่อมต่อกับพาสปอร์ตนี้",autoClose:"หน้าจอจะปิดอัตโนมัติในอีก {seconds}s",autoJump:"หน้าจะกระโดดอัตโนมัติใน {seconds}s"}},lostPassport:{title:"หายใบหนังสือเดินทาง",description:"เจ้าของ {name} สามารถใช้ วิธีการต่อไปนี้เพื่อเรียกคืนหนังสือเดินทาง สมาชิกโปรดติดต่อเจ้าของเพื่อออกหนังสือเดินทางใหม่",return:"ยกเลิกการดึงข้อมูล กลับไปยังหน้าแรก",receivePassport:"รับหนังสือเดินทาง",recoverDialog:{title:"กู้คืนหนังสือเดินทาง",scan:"ใช้ วิธีการต่อไปนี้เพื่อรับหนังสือเดินทางของคุณ",confirm:"ยืนยันบนกระเป๋าเงิน DID ของคุณ",success:"ดึงข้อมูลสำเร็จ"},receiveDialog:{title:"รับหนังสือเดินทาง",scan:"ใช้วิธีการต่อไปนี้เพื่อรับหนังสือเดินทาง",confirm:"ยืนยันบนกระเป๋าเงิน DID ของคุณ",success:"ได้รับเรียบร้อยแล้ว"},recoverPassport:"กู้คืนหนังสือเดินทาง"},invite:{message:"{name} เชิญคุณเป็น {role} ของ {dapp}",success:"คุณได้เข้าร่วม {dapp} สำเร็จแล้ว",receive:"รับด้วย",validUntil:"ใช้ได้ถึง:",viewPermission:"การอนุญาตให้ดู",emptyPermission:"สิทธิ์ว่างเปล่า",open:"เปิด",description:{step1:"ดาวน์โหลดและติดตั้ง {wallet} ของคุณ",step2:"คลิกที่ปุ่มด้านบนเพื่อรับหนังสือเดินทาง",step3:"เข้าสู่ระบบ {dapp} ด้วยหนังสือเดินทางที่ได้รับ"},transferNFTDialog:{title:"ยอมรับเซิร์ฟเวอร์ Blocklet {name}",scan:"เชื่อมต่อ Launcher เพื่อดำเนินการเตรียมตัวในการรับบล็อกเล็ตเซิร์ฟเวอร์",confirm:"กรุณาตรวจสอบการดำเนินการนี้ในกระเป๋าเงินดิจิตอล",success:"เชื่อมต่อสำเร็จแล้ว กำลังรอการยืนยันการรับจากเซิร์ฟเวอร์"}},receive:{dialog:{title:"รับหนังสือเดินทาง",scan:"หลังจากได้รับหนังสือเดินทางแล้ว คุณสามารถใช้หนังสือเดินทางเพื่อเข้าสู่ระบบแอปพลิเคชันได้",confirm:"ยืนยันในบัญชีของคุณ",success:"คุณเชื่อมต่อสำเร็จแล้ว",scanWithDid:"โปรดใช้บัญชี {did} เพื่อรับพาสปอร์ตนี้ หลังจากได้รับพาสปอร์ตแล้ว คุณสามารถใช้พาสปอร์ตเพื่อเข้าสู่ระบบแอปพลิเคชันได้"}},navigation:{navigation:"การนำทาง",actionFailed:"การดำเนินการล้มเหลว",form:{themeConfig:"การตั้งค่าทรัพย์สินทรัพย์",contentConfig:"การตั้งค่าสิ่งที่แสดง",title:"หัวข้อ",titlePlaceholder:"กรุณาใส่ชื่อการนำทาง",titleTooLong:"ความยาวของชื่อเรื่องควรเล็กกว่า {len}",description:"คำอธิบาย",descriptionPlaceholder:"กรุณาใส่คำอธิบายการนำทาง",descriptionTooLong:"ความยาวของคำอธิบายควรเล็กกว่า {len}",icon:"ไอคอนเริ่มต้น",iconPlaceholder:"เลือกไอคอน",invalidIcon:"ไอคอนไม่ถูกต้อง",findMoreIcon:"ค้นหาไอคอนเพิ่มเติม",link:"ลิงก์",linkPlaceholder:"โปรดใส่ลิงก์นำทาง",invalidLink:"ลิงก์ไม่ถูกต้อง",component:"องค์ประกอบ",componentPlaceholder:"กรุณาเลือกส่วนประกอบการนำทาง",role:"บทบาท",rolePlaceholder:"โปรดเลือกบทบาทการนำทาง",locale:"เขตตำบล",localePlaceholder:"โปรดป้อนสถานที่ที่ต้องการเพิ่ม",localeExists:"{value} มีอยู่แล้ว",activeIcon:"ไอคอนที่ใช้งานอยู่",activeColor:"สีใช้งาน",color:"สีเริ่มต้น",colorPlaceholder:"e.g., #FF0000",invalidColor:"สีไม่ถูกต้อง",searchIcons:"ค้นหาไอคอน",searchIconsPlaceholder:"ตัวอย่าง: mdi:home"},action:{add:"เพิ่มการนำทาง",addSub:"เพิ่มการนำทางย่อย",edit:"แก้ไขการเลือกทาง",hide:"ซ่อนการนำทาง",show:"แสดงการนำทาง",del:"ลบการนำทาง",new:"ใหม่",noAddSub:"ส่วนประกอบที่ถอนการติดตั้งไม่สามารถเพิ่มการนำทางย่อยได้",noEdit:"ไม่สามารถแก้ไขส่วนประกอบที่ถูกลบได้",noDel:"ไม่อนุญาตให้ลบการนำทางที่มีอยู่ล่วงหน้า",reset:"รีเซ็ต",restConfirmTitle:"รีเซ็ตการนำทาง {section} เป็นค่าเริ่มต้น?",restConfirmDesc:"การนำทางที่คุณกำหนดเองจะถูกล้างและคืนค่าไปยังรายการเริ่มต้น",resetSuccessful:"การรีเซ็ตสำเร็จ",delTabBarTitle:"คุณต้องการลบการนำทางนี้หรือไม่?",delTabBarDesc:"หลังจากลบแล้ว การนำทางจะถูกลบออกจากรายการการนำทาง"},access:"เข้าถึง",members:"สมาชิก",passport:"หนังสือเดินทาง",analytics:"การวิเคราะห์",dashboard:"แดชบอร์ด",studio:"Blocklet สตูดิโอ",blockletService:"บริการ Blocklet",didConnect:"เอกลักษณ์ & การเข้าถึง",didSpaces:"พื้นที่จัดเก็บ & การสำรองข้อมูล",website:"Website Studio",operations:"การสังเกตการณ์",integration:"การผสานรวม",developer:"นักพัฒนา",system:"ระบบ",services:"บริการ",aigne:"การเชื่อมต่อ AI",notification:"ศูนย์การแจ้งเตือน",overviewDesc:"ตรวจสอบสุขภาพและรายละเอียดแอปพลิเคชัน และติดตั้ง เริ่มต้น หรือลบ Blocklets ได้อย่างง่ายดายในที่เดียว.",didConnectDesc:"เพิ่มสมาชิกทีม, ตั้งค่าตัวเลือกการลงชื่อเข้าใช้ และจัดการการเข้าถึงอย่างปลอดภัยเพื่อการทำงานร่วมกันที่ราบรื่น.",aigneDesc:'กำหนดค่าการเชื่อมต่อที่เกี่ยวข้องกับ AI สำหรับ Blocklet ของคุณ รวมถึง <a href="{aigneHubUrl}" target="_blank">AIGNE Hub</a> และ <a href="{mcpUrl}" target="_blank">เซิร์ฟเวอร์ที่เข้ากันได้กับ MCP</a>.',websiteDesc:"จัดการโดเมน ปรับเปลี่ยนธีม ปรับแต่งแบรนด์ และปรับแต่งการนำทางเพื่อรูปลักษณ์เว็บไซต์ที่เป็นเอกลักษณ์.",operationsDesc:"ดูข้อมูลการวิเคราะห์, ตรวจสอบบันทึกกิจกรรม, รับการแจ้งเตือน และปรับตั้งค่าขั้นสูงตามความจำเป็น.",integrationsDesc:"เชื่อมโยงบริการภายนอกผ่าน Webhooks, กุญแจการเข้าถึง และเซิร์ฟเวอร์ MCP เพื่อขยายความสามารถของแอป",developersDesc:"ใช้บันทึก, การติดตามประสิทธิภาพ, และเอกสารในการสร้าง, แก้ไขข้อผิดพลาด, และปรับแต่งแอปของคุณ.",didSpacesDesc:"จัดเก็บและสำรองข้อมูลแอป Blocklet ของคุณอย่างปลอดภัยเพื่อให้แน่ใจว่ามีการป้องกันที่เชื่อถือได้และการกู้คืนที่ง่าย",publishDesc:"เผยแพร่แอปของคุณไปยังร้านค้าหรือแชร์ผ่านลิงก์เพื่อให้ผู้คนมากขึ้นสามารถใช้งานได้."},storage:{spaces:{title:"DID Spaces",tips:"เคล็ดลับ",label:"ป้อนเกตเวย์ของ DID Spaces",connected:{title:"พื้นที่ DID ที่เชื่อมต่อแล้ว",tag:"เชื่อมต่อ"},connectedWithName:"คุณได้เชื่อมต่อกับ {name} สำเร็จแล้ว",addedWithName:"คุณเพิ่ม {name} สำเร็จแล้ว",connects:"เชื่อมต่อ",reconnect:"เชื่อมต่ออีกครั้ง",addressCannotEmpty:"ที่อยู่ต้องไม่ว่างเปล่า",addressNotValid:"{url} ไม่ใช่ที่อยู่ที่ถูกต้อง",authorize:{title:"เชื่อมต่อ {appName} กับ DID Spaces",scan:"ใช้เมธอดต่อไปนี้เพื่ออนุญาตให้แอป {appName} เชื่อมต่อกับ DID Spaces",success:"เชื่อมต่อสำเร็จแล้ว"},provideNFT:{title:"โปรดแสดง DID Spaces NFT สำหรับ {appName}",scan:"ใช้เมธอดต่อไปนี้เพื่ออนุญาตให้แอป {appName} แสดง NFT Space DID",success:"เชื่อมต่อสำเร็จแล้ว"},backup:{title:"สำรองข้อมูล",records:"สำเนาข้อมูลสำรอง",without:"ไม่มีการสำรองข้อมูล",succeeded:"สำรองข้อมูลสำเร็จ",failed:"สำรองข้อมูลล้มเหลว",lastBackup:"เวลาสำรองข้อมูลล่าสุด",lastBackupTip:'ผ่านไปแล้ว {time} นับตั้งแต่การสำรองข้อมูลสำเร็จครั้งล่าสุดของคุณ โปรดตรวจสอบการตั้งค่าการสำรองข้อมูลของคุณในแท็บ "DID Spaces"',noBackup:"ไม่มีการสำรองข้อมูล",noBackupTip:"ยังไม่มีการสร้างการสำรองข้อมูล เราขอแนะนำให้ตั้งค่าการสำรองข้อมูลเป็นประจำเพื่อปกป้องข้อมูลและการตั้งค่าของคุณ",pending:"สำรองข้อมูลกำลังดำเนินการ",timeout:"หมดเวลาสำรองข้อมูล"},autoBackup:{title:"การสำรองข้อมูลอัตโนมัติ",enabled:"การสำรองข้อมูลอัตโนมัติเปิดใช้งานแล้ว",disabled:"การสำรองข้อมูลอัตโนมัติถูกปิดอยู่"},autoCheckUpdate:{title:"ตรวจสอบการแจ้งเตือนเวอร์ชันใหม่โดยอัตโนมัติ",enabled:"การตรวจสอบเวอร์ชันใหม่โดยอัตโนมัติเปิดใช้งานแล้ว",disabled:"การตรวจสอบเวอร์ชันใหม่โดยอัตโนมัติถูกปิด"},backupSuccessfully:"การสำรองข้อมูลสำเร็จ",restore:"กู้คืน",restoreSuccessfully:"ทำการกู้คืนสำเร็จ",gateway:{title:"ประตูเมือง",select:"เลือกพื้นที่การใช้ DID",add:{title:"เพิ่มพื้นที่ DID",label:"ป้อน URL ของพื้นที่ DID",failed:"เพิ่ม DID Spaces ล้มเหลว",invalidUrl:"URL ของเกตเวย์พื้นที่ DID ไม่ถูกต้อง",duplicate:"{name} เชื่อมต่อกับ blocklet นี้แล้ว"},delete:{title:"ลบ",succeeded:"ลบ DID Space {name} สำเร็จแล้ว",failed:"การลบล้มเหลว",failedForSelected:"ไม่สามารถลบ DID Space ที่เลือกได้",descForBackup:"หลังจากลบ {name}, คุณจะไม่สามารถสำรองข้อมูลจาก Blocklet นี้ไปยัง DID Space นี้ได้อีกต่อไป คุณต้องการลบหรือไม่?",descForStorage:"หลังจากลบ {name}, คุณจะไม่สามารถสำรองข้อมูลจาก Blocklet นี้ไปยัง DID Space นี้ได้อีกต่อไป คุณต้องการลบหรือไม่?"},connect:{title:"เชื่อมต่อห้อง DID Spaces",add:"เชื่อมต่อกับพื้นที่ DID ตอนนี้",addTips:"คุณยังไม่ได้เชื่อมต่อกับพื้นที่ DID ใด ๆ",switch:"สลับพื้นที่ DID",switchTips:"คุณได้เชื่อมต่อกับ {name}",connected:"เชื่อมต่อแล้ว"},switch:{failedForMismatchSpace:"โปรดเชื่อมต่อกับ DID Space ที่ถูกต้อง {name}"},connectTo:"เชื่อมต่อกับ DID Spaces"},strategy:{title:"กลยุทธ์การสำรองข้อมูล",autoBackup:"การสำรองข้อมูลอัตโนมัติ",backupNow:"สำรองข้อมูลเดี๋ยวนี้",viewBackupFiles:"ดูไฟล์สำรองข้อมูล"},progress:{title:"ความคืบหน้าการสำรองข้อมูล"},record:{title:"สำรองข้อมูลบันทึก",emptyData:"ไม่มีบันทึก"},notYet:"คุณยังไม่มีการสำรองข้อมูลที่กำลังดำเนินการ...",connect:{now:"เชื่อมต่อตอนนี้",title:"เชื่อมต่อ DID Spaces",provider:"ให้ DID Space ของคุณเพื่อเริ่มการสำรองข้อมูล",providerForStorage:"ให้ DID Space ของคุณสำหรับจัดเก็บข้อมูล",useWallet:"เชื่อมต่อด้วยกระเป๋าเงิน DID",useWalletReconnect:"เชื่อมต่อใหม่ด้วยกระเป๋าเงิน DID",useSpaceGateway:"เชื่อมต่อโดยใช้เกตเวย์ DID Spaces",useSpaceGatewayReconnect:"เชื่อมต่อใหม่โดยใช้เกตเวย์ DID Spaces",switchToSpace:"สลับไปยัง DID Space",switchToSpaceSucceeded:"เปลี่ยนเป็นพื้นที่ DID {name}",succeeded:"เชื่อมต่อกับ DID Space สำเร็จ",disconnect:"ยกเลิกการเชื่อมต่อ",abortBlockletBackup:"ยกเลิกการสำรองข้อมูล"},disconnected:{tag:"ตัดการเชื่อมต่อ",reconnectNow:"เชื่อมต่ออีกครั้งตอนนี้"}},appLevel:{title:"การจัดเก็บข้อมูลที่มีระดับการใช้งาน",description:"ข้อมูลทั้งหมดที่สร้างขึ้นโดยการใช้งานจะถูกจัดเก็บไว้ใน DID Space นี้"}},log:{lastDays:{1:"1 วันที่ผ่านมา",7:"1 สัปดาห์ที่ผ่านมา"}},oauth:{authorize:"การอนุญาต OAuth",client:{tab:"แอป OAuth",name:"ชื่อแอป",clientId:"รหัสลูกค้า",clientSecret:"รหัสลับของลูกค้า",scope:"ขอบเขต",redirectUris:"URL เปลี่ยนเส้นทาง",grantTypes:"ประเภทการอนุญาต",responseTypes:"ประเภทการตอบสนอง",tokenEndpointAuthMethod:"วิธีการตรวจสอบสิทธิ์ของ Token Endpoint",actions:"การกระทำ",grantResponse:"การอนุญาตและการตอบสนอง",metaContact:"Meta & ติดต่อ",clientUri:"URI ไคลเอ็นต์",logoUri:"URI โลโก้",contacts:"รายชื่อติดต่อ",tosUri:"URL ข้อกำหนดในการให้บริการ",policyUri:"URI นโยบาย",jwksSoftware:"JWKS & Software",jwksUri:"URI JWKS",jwks:"JWKS",softwareId:"รหัสซอฟต์แวร์",softwareVersion:"เวอร์ชันซอฟต์แวร์",clientSecretExpiresAt:"Client Secret หมดอายุเวลา",clientIdIssuedAt:"รหัสลูกค้า ออกให้เมื่อ",oauthAppDetails:"รายละเอียดแอป OAuth",oauthEndpoints:"Endpoints OAuth",authorizationEndpoint:"จุดสิ้นสุดการอนุญาต",tokenEndpoint:"Endpoint โทเค็น",userinfoEndpoint:"จุดสิ้นสุดข้อมูลผู้ใช้",registrationEndpoint:"จุดสิ้นสุดการลงทะเบียน",endSessionEndpoint:"จุดสิ้นสุดเซสชัน",validate:{clientName:"ต้องระบุชื่อแอป",clientNameMinLength:"ชื่อแอปต้องมีอย่างน้อย 3 ตัวอักษร",clientUri:"ต้องระบุ URL หน้าแรก",clientUriInvalid:"กรุณากรอก URL ที่ถูกต้อง เริ่มต้นด้วย http:// หรือ https://",redirectUris:"จำเป็นต้องใช้ URL การเรียกกลับการอนุญาต",redirectUrisInvalid:"กรุณากรอก URL ที่ถูกต้อง เริ่มต้นด้วย http:// หรือ https://",contacts:"กรุณากรอกที่อยู่อีเมลที่ถูกต้อง โดยคั่นด้วยเครื่องหมายจุลภาค",tosUri:"URL ข้อกำหนดในการให้บริการจำเป็นต้องระบุ",tosUriInvalid:"กรุณากรอก URL ที่ถูกต้อง",policyUri:"จำเป็นต้องใช้ URL นโยบาย",policyUriInvalid:"กรุณากรอก URL ที่ถูกต้อง",jwksUri:"จำเป็นต้องใช้ JWKS URI",jwksUriInvalid:"กรุณากรอก URL ที่ถูกต้อง",jwks:"จำเป็นต้องใช้ JWKS",jwksInvalid:"กรุณากรอก JWKS ที่ถูกต้อง"},input:{clientName:"ชื่อแอป",clientNamePlaceholder:"สิ่งที่ผู้ใช้จะจดจำและไว้วางใจ",clientUri:"URL หน้าแรก",clientUriPlaceholder:"https://your-app.com",redirectUris:"URL ตัวเรียกใช้การอนุญาต",redirectUrisPlaceholder:"https://your-app.com/callback",contacts:"อีเมลติดต่อ",contactsPlaceholder:"admin@your-app.com, support@your-app.com",permissions:"เลือกสิทธิ์ที่คุณต้องการ",tosUri:"URL ข้อกำหนดในการให้บริการ",tosUriPlaceholder:"https://your-app.com/terms",policyUri:"URL นโยบาย",policyUriPlaceholder:"https://your-app.com/policy",jwksUri:"URI JWKS",jwksUriPlaceholder:"https://your-app.com/jwks",jwks:"JWKS",jwksPlaceholder:"ชุดคีย์เว็บ JSON",expireTime:"ตั้งวันที่หมดอายุสำหรับ client secret เพื่อความปลอดภัยที่ดีขึ้น"},helperText:{clientName:"สิ่งที่ผู้ใช้จะจดจำและไว้วางใจ",clientUri:"URL เต็มของหน้าแรกแอปพลิเคชันของคุณ",redirectUris:"URL ตัวเรียกกลับของแอปพลิเคชันของคุณ",contacts:"ที่อยู่อีเมลของผู้รับผิดชอบแอปพลิเคชัน",tosUri:"URL ข้อกำหนดในการให้บริการของแอปพลิเคชันของคุณ",policyUri:"URL นโยบายความเป็นส่วนตัวของแอปพลิเคชันของคุณ",read:"อ่าน",document:"เอกสาร OAuth",more:"สำหรับข้อมูลเพิ่มเติม"},delete:{title:"ลบ OAuth Client",description:"คุณแน่ใจหรือไม่ว่าต้องการลบไคลเอนต์ OAuth {clientName} นี้"},register:"สร้างแอป OAuth ใหม่",requiredInformation:"ข้อมูลที่จำเป็น",optionalInformation:"ข้อมูลเพิ่มเติม",registerButton:"สร้าง",logo:"โลโก้",openRegistration:"เปิดรับสมัคร",openidConfiguration:"การกำหนดค่า OpenID",createUser:"สร้างโดย",update:"อัปเดตแอป OAuth",listTitle:"เปิดใช้งานการเข้าถึงบุคคลที่สามอย่างปลอดภัยด้วยแอป OAuth",tooltipTitle:"ใช้เซิร์ฟเวอร์ OAuth ในตัวของแอปของคุณเพื่ออนุญาตให้แอปพลิเคชันภายนอกเข้าถึงด้วยโปรโตคอลมาตรฐานอุตสาหกรรม มอบการตรวจสอบสิทธิ์ที่ปลอดภัยและราบรื่น รวมถึงการควบคุมการเข้าถึงแบบมอบหมายให้กับผู้ใช้",empty:"ไม่มีการเพิ่มข้อมูล"}},expiration:{mobile:{tips:{success:"{validity}",warning:"{validity}",error:"หมดอายุ"},loadFailed:"ลองใหม่อีกครั้ง!"},desktop:{tips:{success:"การสมัครสมาชิกจะหมดอายุหลังจาก {validity}",warning:"การสมัครสมาชิกจะหมดอายุหลังจาก {validity}",error:"การสมัครสมาชิกหมดอายุ"},loading:"โหลดการสมัครสมาชิก...",loadFailed:"ไม่สามารถโหลดข้อมูลการสมัครสมาชิกได้ โปรดลองใหม่!",nextInvoice:"ใบแจ้งหนี้ถัดไป: {date}"}},analytics:{trend:"แนวโน้ม",detail:"การเสียหาย",traffic:{totalRequests:"คำขอทั้งหมด",validRequests:"คำขอที่ประสบความสำเร็จ",failedRequests:"คำขอล้มเหลว",uniqueVisitors:"ผู้เข้าชมที่ไม่ซ้ำกัน",uniqueFiles:"URL ที่ไม่ซ้ำกัน",uniqueReferrers:"ผู้แนะนำที่ไม่ซ้ำกัน",uniqueNotFound:"404 ไม่ซ้ำกัน",uniqueStaticFiles:"ไฟล์สแตติกที่ไม่ซ้ำกัน",logSize:"ขนาดล็อก",bandwidth:"แบนด์วิดท์"},runtime:"รันไทม์"},federated:{inviteJoinFederatedLogin:"เชิญเข้าร่วมเข้าสู่การเข้าสู่ระบบแบบเฟเดอเรต",inviteJoinFederatedLoginDescription:"คัดลอกที่อยู่ต่อไปนี้และใส่ลงในแอปพลิเคชันทีคุณต้องการเข้าร่วมในการสมัครใช้งานการเข้าสู่ระบบแบบมวลชน",federatedLogin:"เข้าสู่ระบบโดยการเชื่อมต่อแบบรวมกัน",joinFederatedLogin:"เข้าร่วมการเข้าสู่ระบบเฟเดอเรต",joinFederatedLoginDescription:"กรุณาใส่ที่อยู่การลงชื่อเข้าใช้โดยตรวจสอบที่ Master Blocklet เพื่อเข้าร่วมการลงชื่อเข้าใช้โดยตรวจสอบ",quitFederatedLogin:"ออกจากการเข้าสู่ระบบแบบดิสตริบิวต์",quitFederatedLoginDescription:"หลังจากออกจากการเข้าสู่ระบบผ่านระบบผู้บริหารร่วม, การเข้าสู่ระบบปกติจะมีอยู่เสมอ",federatedJoinAppUrl:"เข้าสู่ระบบด้วยล็อกอินแบบรวมที่ appUrl",federatedJoinAppUrlRequired:"โปรดใส่เข้าสู่ระบบผ่านการลงชื่อเข้าใช้ร่วมใน {appUrl}",failedToGetFederatedLoginAppUrl:"ล้มเหลวในการรับล็อกอินจากเครือข่ายร่วม, เข้าร่วม appUrl",federatedJoinAppUrlInvalid:"AppUrl เข้าสู่ระบบด้วยการรวมกันไม่ถูกต้อง",siteDetail:"รายละเอียดเว็บไซต์",approveToJoinLogin:"อนุมัติให้เข้าร่วมการเข้าสู่ระบบโดยการเชื่อมต่อร่วมกัน",approve:"เปิดใช้งานการเข้าสู่ระบบ",revoke:"ปิดการใช้งานการเข้าสู่ระบบ",enableFederatedLogin:"เปิดใช้งานการเข้าสู่ระบบตามฐานะ",disableFederatedLogin:"ปิดใช้งานการเข้าสู่ระบบผ่านแบบภาคี",enableFederatedLoginDescription:"หลังจากเปิดใช้งานการเข้าสู่ระบบแบบลาฟแล้ว เว็บไซต์นี้จะเข้าสู่ระบบโดยอัตโนมัติ",disableFederatedLoginDescription:"หลังจากปิดใช้งานการเข้าสู่ระบบแบบสมาคม ไซต์นี้จะไม่ทำการเข้าสู่ระบบอัตโนมัติ",enableFederatedAutoLogin:"เปิดใช้งานการเข้าสู่ระบบอัตโนมัติ",enableFederatedAutoLoginDescription:"หลังจากเปิดใช้งานการเข้าสู่ระบบอัตโนมัติหากในปัจจุบันมีสถานะการเข้าสู่ระบบที่เป็นไปตามข้อกำหนดร่วมกันเว็บไซต์จะเข้าสู่ระบบอัตโนมัติด้วยตัวตนของการเข้าสู่ระบบฝ่ายร่วม",disableFederatedAutoLogin:"ปิดการเข้าสู่ระบบอัตโนมัติ",disableFederatedAutoLoginDescription:"หลังจากการเข้าสู่ระบบอัตโนมัติถูกปิดลงแล้ว เว็บไซต์จะไม่เข้าสู่ระบบอัตโนมัติโดยข้อมูลการเข้าสู่ระบบแบบเดียวกัน และคุณยังคงสามารถเลือกที่จะคลิกเข้าสู่ระบบด้วยตนเองด้วยตัวบุคคลที่ทำการเข้าสู่ระบบร่วมกัน",info:{appId:"APP เสร็จแล้ว",appPid:"หมายเลขประจำตัวถาวร",migratedFrom:"ที่รู้จักเรียกอีกชื่อว่า",appName:"ชื่อ Blocklet",appDescription:"คำอธิบายบล็อกเล็ต",appUrl:"URL Blocklet",appLogo:"โลโก้ Blocklet",did:"Blocklet DID",serverId:"ไอดีเซิร์ฟเวอร์บล็อกเล็ต",serverVersion:"เวอร์ชันของ Blocklet Server",version:"เวอร์ชัน Blocklet",appliedAt:"สมัครที่",status:"สถานะ"},status:{pending:"รอดำเนินการ",approved:"ได้รับการอนุมัติ",rejected:"ถูกปฏิเสธ",revoked:"ถูกยกเลิก"},disbandFederatedLogin:"ยกเลิกการเข้าสู่ระบบแบบเชื่อมต่อระดับสหพันธ์",disbandFederatedLoginDescription:"หลังจากยุบรวมการเข้าสู่ระบบแบบเชื่อมโยงทั้งหมด ทุกเว็บไซต์สมาชิกจะหยุดการเข้าสู่ระบบแบบเชื่อมโยงโดยอัตโนมัติ",syncConfig:"ซิงค์การกำหนดค่าเว็บไซต์ที่เชื่อมโยงกัน",quitMember:"ลบ",quitMemberDescription:"ลบสมาชิกที่ระบุออกจากกลุ่มเว็บไซต์",removeFederatedLogin:"ลบสมาชิก",removeFederatedLoginDescription:"หลังจากลบสมาชิกที่ระบุออกจากกลุ่มไซต์ สมาชิกสามารถใช้เฉพาะการเข้าสู่ระบบปกติได้",title:"Federated Login คืออะไร?",description:"สามารถเข้าสู่ระบบแบบ Federated ได้ผ่าน single sign-on ในหลายระบบ คุณสามารถเชิญทีมอื่นๆ มาร่วมเข้าสู่ระบบแบบ Federated หรือเข้าร่วมแพลตฟอร์มการเข้าสู่ระบบแบบ Federated ขององค์กรอื่นๆ ได้อย่าง proactive",link:"ดูเอกสาร"},optionsOrder:{1:"ตัวเลือกหนึ่ง",2:"ตัวเลือกที่สอง"},securityRule:{title:"กฎความปลอดภัย",sortByDescription:"จัดเรียงตามลำดับความสำคัญที่ตรงกัน",add:"เพิ่มกฎความปลอดภัย",edit:"แก้ไขกฎความปลอดภัย",view:"ดูกฎความปลอดภัย",form:{precede:"ก่อนหน้า",pathPattern:"แพทเทิร์นเส้นทาง",pathPatternPlaceholder:"กรุณากรอกรูปแบบเส้นทาง",pathPatternErrorText:"รูปแบบเส้นทางไม่ถูกต้อง",accessPolicyOrResponseHeaderPolicyRequired:"ต้องมีนโยบายการเข้าถึงหรือส่วนหัวการตอบสนอง",accessPolicy:"นโยบายการเข้าถึง",accessPolicyPlaceholder:"กรุณาเลือกนโยบายการเข้าถึง",accessPolicyHelperText:"เลือกนโยบายสิทธิ์เข้าถึง",responseHeaderPolicy:"นโยบายส่วนหัวคำตอบ",responseHeaderPolicyPlaceholder:"โปรดเลือกนโยบายหัวตอบกลับ",responseHeaderPolicyHelperText:"กรุณาเลือกนโยบายส่วนหัวของการตอบกลับ",remark:"หมายเหตุ",remarkPlaceholder:"กรุณากรอกหมายเหตุ",component:"ส่วนประกอบ",componentPlaceholder:"โปรดเลือกส่วนประกอบ"},delete:{title:"ลบกฏรักษาความปลอดภัย?",description:"หลังจากลบกฎความปลอดภัย กฎดังกล่าวจะไม่มีผลอีกต่อไป"},useless:"กฎความปลอดภัยที่ไร้ประโยชน์"},responseHeaderPolicy:{title:"นโยบายส่วนหัวการตอบกลับ",add:"เพิ่มนโยบายส่วนหัวของการตอบกลับ",edit:"แก้ไขนโยบายส่วนหัวของการตอบกลับ",view:"ดูนโยบายส่วนหัวการตอบกลับ",form:{name:"ชื่อ",namePlaceholder:"โปรดป้อนชื่อ",description:"คำอธิบาย",descriptionPlaceholder:"กรุณาใส่คำอธิบาย",cors:{origin:"จุดเริ่มต้น",originPlaceholder:"รองรับรูปแบบโดเมนต่อไปนี้: http://www.example.com, http://*.example.com, http://www.example.com:8080, * (ไม่แนะนำให้ใช้เครื่องหมายดอกจันแทนทุกอักขระ)",originHelperText:"ชื่อโดเมนขึ้นต้นด้วย http:// หรือ https:// หนึ่งชื่อต่อหนึ่งบรรทัด หนึ่งตัวแทน * ต่อหนึ่งบรรทัด",methods:"วิธีการ",allowedHeaders:"ส่วนหัวที่ได้รับอนุญาต",allowedHeadersPlaceholder:"แนะนำให้กรอก *, รองรับการป้อนข้อมูลหลายบรรทัด",allowedHeadersHelperText:"แจ้งให้เซิร์ฟเวอร์ทราบว่าสามารถใช้หัวเรื่องคำขอ HTTP แบบกำหนดเองใดได้ในคำขอถัดไปเมื่อส่งคำขอ OPTIONS เช่น x-blocklet-version",exposedHeaders:"ส่วนหัวที่เปิดเผย",exposedHeadersPlaceholder:"รองรับข้อมูลเข้าหลายบรรทัด",exposedHeadersHelperText:"กำหนดค่า Expose-Headers เช่น X-Content-Range",maxAge:"Max-Age (วินาที)",maxAgeHelperText:"ระยะเวลาที่ผลลัพธ์มีผลบังคับใช้ของคำร้องขอ OPTIONS ซึ่งจะต้องเป็นจำนวนเต็มบวก",optionsSuccessStatus:"สถานะความสำเร็จของตัวเลือก",preflightContinue:"ดำเนินการ Prelight ต่อ",credentials:"ข้อมูลประจำตัว",smartModeHelperText:"เพิ่มชื่อโดเมนทั้งหมดของแอปพลิเคชันปัจจุบัน รวมทั้งชื่อโดเมนทั้งหมดของกลุ่มเว็บไซต์ลงชื่อเข้าใช้ที่เชื่อมต่อ",smartMode:"โหมดชาญฉลาด"},originOverride:"Origin Override",originOverrideHelperText:"อนุญาตให้ตรรกะในแอปกดทับส่วนหัวการตอบสนองนี้"},delete:{title:"ลบหัวข้อคำตอบ หรือไม่",description:"หลังจากลบหัวเรื่องนโยบายการตอบกลับแล้ว นโยบายจะไม่ได้ผลอีกต่อไป"}},accessPolicy:{title:"นโยบายการเข้าถึง",add:"เพิ่มนโยบายการเข้าถึง",edit:"แก้ไขนโยบายการเข้าถึง",view:"ดูนโยบายการเข้าถึง",form:{name:"ชื่อ",namePlaceholder:"กรุณาใส่ชื่อ",description:"คำอธิบาย",descriptionPlaceholder:"กรุณากรอกคำอธิบาย",roles:"บทบาทการเข้าถึง",accessType:"ประเภทของการเข้าถึง"},delete:{title:"ลบสิทธิ์การเข้าถึง?",description:"หลังจากนำนโยบายการเข้าใช้ออก นโยบายดังกล่าวจะไม่มีผลบังคับใช้"}},didConnect:{genKeyPair:{title:"สร้าง DID Blocklet",scan:"ใช้เมธอดต่อไปนี้เพื่อสร้าง Blocklet DID",success:"สร้าง DID Blocklet สำเร็จแล้ว",successDesc:"Blocklet DID ถูกสร้างเรียบร้อยแล้ว (การเผยแพร่ต่อไปนี้ต้องใช้กระเป๋าเงินที่สร้าง DID เพื่อดำเนินการ)"},common:{invalidSession:"เซสชันไม่ถูกต้อง",invalidSessionDesc:"เซสชันไม่พบหรือหมดอายุแล้ว",connectionError:"การเชื่อมต่อล้มเหลว"}},pagination:{next:"หน้าต่อไป",previous:"หน้าก่อนหน้า",rowsPerPage:"ต่อหน้า:",displayRows:"ของ",jumpToPage:"ไปที่หน้า:"},webhookEndpoint:{createWebhook:"สร้าง Webhook",createWebhookTitle:"สร้าง Webhook",selectAllEvents:"เลือกเหตุการณ์ทั้งหมด",selectAllEventsTooltip:"เลือกเหตุการณ์ทั้งหมดที่มีอยู่",selectedEventsCount:"{count} เหตุการณ์ที่เลือก",selectedCount:"{count} รายการที่เลือก",eventsCount:"{count} เหตุการณ์",saveWebhook:"สร้าง Webhook",noAvailableEvents:"ไม่มีกิจกรรม",loadingEvents:"กำลังโหลดเหตุการณ์...",loadingError:"ไม่สามารถโหลดเหตุการณ์ได้: {message}",title:"Webhooks",noWebhooksAdded:"ยังไม่ได้เพิ่ม webhook",validation:{urlRequired:"ต้องใช้ URL",urlInvalid:"กรุณากรอก URL ที่ถูกต้อง",descriptionRequired:"คำอธิบายจำเป็น",eventRequired:"กรุณาเลือกอย่างน้อยหนึ่งเหตุการณ์"},hosted:"จุดสิ้นสุดที่โฮสต์",add:"สร้าง Webhook",addTip:"ตั้งค่าจุดสิ้นสุด webhook ของคุณเพื่อรับเหตุการณ์แบบเรียลไทม์",listen:"ฟังเพื่อ",version:"เวอร์ชัน API",attempts:"การลองใช้ Webhook",url:{label:"URL",description:"URL จุดสิ้นสุด Webhook"},description:{label:"คำอธิบาย",description:"คำอธิบายเพิ่มเติมเกี่ยวกับจุดประสงค์ของ endpoint นี้"},events:{label:"เลือกเหตุการณ์ที่จะรับฟัง",description:"สวัสดี, {name}."},disabled:"ปิดใช้งาน",enabled:"เปิดใช้งาน",disable:"ปิดใช้งาน",enable:"เปิดใช้งาน",editWebhookTitle:"อัปเดต Webhook",updateWebhook:"อัปเดต Webhook",waitingForEvents:"กำลังรอเหตุการณ์...",loadingMore:"กำลังโหลดเพิ่ม...",loadMore:"โหลดเพิ่มเติม",response:"การตอบสนอง",request:"คำขอ",eventData:"ข้อมูลเหตุการณ์",deleteWebhook:{title:"ลบ Webhook?",description:"หลังจากลบ webhook แล้ว webhook นั้นจะไม่รับเหตุการณ์อีกต่อไป"},success:"สำเร็จ",listTitle:"ส่งข้อมูลเหตุการณ์แบบเรียลไทม์ด้วย Webhooks",tooltipTitle:"เชื่อมต่อแอปของคุณกับระบบภายนอกได้อย่างราบรื่นโดยการส่งการแจ้งเตือนเหตุการณ์แบบเรียลไทม์ Webhook ช่วยให้สามารถผสานรวมที่มีประสิทธิภาพและเวิร์กโฟลว์อัตโนมัติในเครื่องมือและบริการของคุณ",triggeredFrom:"Webhook นี้ถูกกระตุ้นจากความพยายาม"},description:{environment:"ตัวแปรปัจจุบันจะมีผลเมื่อ {name} กำลังทำงานอยู่ ต้องเริ่มต้นใช้งานใหม่เพื่อให้มีผล",preferences:"ตัวแปรปัจจุบันจะมีผลเมื่อ {name} กำลังทำงาน การเปลี่ยนแปลงจะถูกนำไปใช้หลังจากบันทึก ไม่จำเป็นต้องเริ่มต้นแอปพลิเคชันใหม่"},preferencesFor:"การตั้งค่าสำหรับ {name}",environmentFor:"สภาพแวดล้อมสำหรับ {name}",accessKey:"คีย์การเข้าถึง",embed:{iconTip:"คลิกเพื่อดูรายละเอียดการสมัครสมาชิก"},command:"คำสั่ง",mcp:{listTitle:"เข้าถึง Blocklet ของคุณจากไคลเอ็นต์ MCP",tooltipTitle:"สำรวจรายการเซิร์ฟเวอร์ MCP ที่ Blocklet นี้รองรับ เลือกเซิร์ฟเวอร์เพื่อดูคำสั่งการเชื่อมต่อที่คุณต้องการเพื่อเข้าร่วมจากไคลเอ็นต์ของคุณได้ทันที",endpoint:"จุดปลาย MCP",available:"เซิร์ฟเวอร์ MCP ที่พร้อมใช้งาน",noServer:"ไม่มีเซิร์ฟเวอร์ MCP"},installCommand:"คำสั่งติดตั้ง",label:{add:"เพิ่ม",apply:"ใช้ป้ายกำกับ",manage:"จัดการป้ายกำกับ",title:"ป้ายชื่อ",description:"คำอธิบาย",systemLabel:"ป้ายระบบ",create:"สร้างป้ายชื่อ",edit:"แก้ไขป้ายกำกับ",name:"ชื่อ",slug:"Slug",parentLabel:"ป้ายผู้ปกครอง",color:"สี",search:"ค้นหา ป้าย",saveSuccess:"บันทึกป้ายชื่อเรียบร้อยแล้ว",delete:"ลบ",deleteTip:'ลบ "{name}"?',deleteSuccess:"ลบป้ายกำกับสำเร็จ",reassignTip:"หากมีการใช้งานป้ายกำกับนี้ ให้กำหนดรายการใหม่ไปยังป้ายกำกับอื่น",reassignTo:"เลือ​กป้ายกำกับใหม่",recently:"ล่าสุด",noMatching:"ไม่พบป้ายกำกับ",noLabels:"ยังไม่มีการสร้างป้ายกำกับ",filter:"กรองป้ายกำกับ",createNewLabel:'สร้างป้ายกำกับใหม่ "{name}"',actionLabel:"กำหนดป้ายกำกับเป็นชุด",selectLabels:"เลือกป้ายกำกับ",deleteDesc:'หลังจากลบป้ายกำกับ ป้ายกำกับจะไม่ถูกใช้อีกต่อไป คุณแน่ใจหรือไม่ที่จะลบ "{name}"?',nameRequired:"ต้องระบุหัวข้อ",nameMinLength:"ชื่อเรื่องต้องมีอย่างน้อย 1 ตัวอักษร.",nameMaxLength:"ชื่อเรื่องต้องมีความยาวไม่เกิน 64 ตัวอักษร.",slugRequired:"Slug จำเป็นต้องกรอก",slugMinLength:"Slug ต้องมีอย่างน้อย 1 ตัวอักษร",slugMaxLength:"Slug ต้องมีความยาวน้อยกว่า 128 ตัวอักษร",descriptionMaxLength:"คำอธิบายต้องมีความยาวน้อยกว่า 255 ตัวอักษร",colorRequired:"ต้องระบุสี",colorInvalid:"สีไม่ถูกต้อง"},environmentTips:{delete:"คุณแน่ใจหรือไม่ว่าคุณต้องการลบแถวนี้?",deleteForbidden:"เฉพาะคีย์ของตัวแปรสภาพแวดล้อมที่กำหนดเองเท่านั้นที่สามารถเปลี่ยนได้."},authentication:{emailLoginDescription:"การเข้าสู่ระบบอีเมลจะใช้การตั้งค่าการแจ้งเตือนเพื่อส่งลิงก์การเข้าสู่ระบบหรือรหัสการเข้าสู่ระบบให้กับผู้ใช้.",emailNotificationRequired:"ตรวจสอบให้แน่ใจว่าคุณได้เปิดการแจ้งเตือนทางอีเมลแล้ว",chooseProvider:"วิธีการเข้าสู่ระบบ",chooseProviderPlaceholder:"เลือกวิธีการเข้าสู่ระบบเพื่อตั้งค่า",addLoginProvider:"เพิ่มวิธีการเข้าสู่ระบบ",updateLoginProvider:"อัปเดตวิธีการเข้าสู่ระบบ: {provider}",alreadyBindOAuth:"ผูกการเข้าสู่ระบบของบุคคลที่สามแล้ว",alreadyBindWallet:"ผูกกระเป๋า DID เรียบร้อยแล้ว",didConnectSettings:"การแสดงผล & แบรนด์",commonSettings:"การตั้งค่าทั่วไป",sessionSettings:"ความปลอดภัยของเซสชัน",federated:"การเข้าสู่ระบบแบบสหพันธรัฐ",loginProviders:"วิธีการเข้าสู่ระบบ",oauth:"เข้าสู่ระบบบุคคลที่สาม",save:"บันทึก",thirdPartyLogin:"ล็อกอินจากบุคคลที่สาม",viewDocument:"ดูเอกสาร",oauthCallbackUrl:"URL คอลแบ็ก",gotoEmailNotification:"เปิดการตั้งค่าการแจ้งเตือนอีเมล",deleteLoginProvider:"ลบผู้ให้บริการเข้าสู่ระบบ {provider}",deleteLoginProviderDescription:"หลังจากลบผู้ให้บริการล็อกอิน ผู้ใช้จะไม่สามารถล็อกอินด้วย {provider} ได้ คุณมั่นใจว่าต้องการดำเนินการต่อหรือไม่?",auth0:{title:"Auth0",enable:"เปิดใช้งานการเข้าสู่ระบบ Auth0",domain:"โดเมน",domainDescription:"โดเมนของ Auth0 จำเป็นต้องใช้",clientId:"รหัสลูกค้า",clientIdDescription:"ต้องการ ID ลูกค้าสำหรับแอพพลิเคชัน Auth0 OAuth",clientSecret:"รหัสลับของลูกค้า",clientSecretDescription:"ต้องการ Client Secret ของแอปพลิเคชัน Auth0 OAuth"},github:{title:"Github",enable:"เปิดใช้งานการเข้าสู่ระบบ Github",clientId:"รหัสลูกค้า",clientIdDescription:"ต้องระบุ Client ID ของแอปพลิเคชัน Github OAuth",clientSecret:"รหัสลับของลูกค้า",clientSecretDescription:"ต้องการ Client Secret ของแอปพลิเคชัน Github OAuth"},twitter:{title:"X",enable:"เปิดใช้งานการเข้าสู่ระบบ X",clientId:"รหัสลูกค้า",clientIdDescription:"ต้องมี Client ID ของแอพพลิเคชั่น OAuth",clientSecret:"รหัสลับของลูกค้า",clientSecretDescription:"จำเป็นต้องใช้ Client Secret ของแอปพลิเคชัน X OAuth"},google:{title:"Google",enable:"เปิดใช้งานเข้าสู่ระบบ Google",clientId:"รหัสลูกค้า",clientIdDescription:"ต้องมี Client ID ของแอปพลิเคชัน Google OAuth",clientSecret:"รหัสลับของลูกค้า",clientSecretDescription:"ต้องการ Client Secret ของแอปพลิเคชัน Google OAuth"},apple:{title:"แอปเปิ้ล",enable:"เปิดใช้งานการเข้าสู่ระบบด้วย Apple",teamId:"รหัสทีม",teamIdDescription:"ต้องระบุ ID ทีมของแอปพลิเคชัน Apple OAuth",serviceId:"รหัสบริการ",serviceIdDescription:"ต้องระบุรหัสบริการแอปพลิเคชัน Apple OAuth",keyId:"รหัสคีย์",keyIdDescription:"ต้องมี Key ID ของแอปพลิเคชัน Apple OAuth",authKey:"คีย์การยืนยันตัวตน",authKeyDescription:"จำเป็นต้องใช้คีย์การรับรองความถูกต้องของแอปพลิเคชัน Apple OAuth",bundleId:"รหัสชุด",bundleIdDescription:"จำเป็นต้องมี ID แพ็คเกจของแอปพลิเคชัน Apple OAuth"},wallet:{showQrcode:"แสดงรหัส QR"},didConnect:{showDidColor:"แสดงสีของ DID Connect",showAppInfo:"แสดงข้อมูล Blocklet",basicSettings:"การตั้งค่าพื้นฐาน",customSettings:"การตั้งค่าแบบกำหนดเอง",configDialogTitle:"กำหนดข้อความป๊อปอัปการยืนยัน",addNewAction:"เพิ่มการกระทำ",addLanguage:"เพิ่มภาษา",selectLanguage:"เลือกภาษา...",actionNameError:"อนุญาตเฉพาะตัวอักษรพิมพ์เล็กและสัญลักษณ์ขีดตรึง ไม่สามารถขึ้นต้นด้วยสัญลักษณ์ขีด",actionNameDuplicate:"ชื่อการกระทำมีอยู่แล้ว"}}};export{e as default};