@abtnode/blocklet-services 1.16.47-beta-20250805-095401-14eb156b → 1.16.47-beta-20250807-110715-19ad6b43

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 (235) hide show
  1. package/api/index.js +2 -1
  2. package/api/libs/connect/v1.js +1 -1
  3. package/api/libs/env.js +1 -1
  4. package/api/routes/access-key.js +7 -1
  5. package/api/routes/csp-proxy.js +2 -2
  6. package/api/routes/user.js +31 -6
  7. package/dist/assets/{AdapterDayjs-D8zlc0TS.js → AdapterDayjs-OwV8ZfRo.js} +1 -1
  8. package/dist/assets/{Google-DxcTyhFe.js → Google-B5khWV-G.js} +1 -1
  9. package/dist/assets/{access-control-jFR93SsS.js → access-control-C9JoF-VW.js} +1 -1
  10. package/dist/assets/{actions-B0rWiAuM.js → actions-DiUxQ792.js} +1 -1
  11. package/dist/assets/{add-component-core-DfrJCl4a.js → add-component-core-DbPZIJoa.js} +39 -39
  12. package/dist/assets/add-resource-D0yHahVH.js +1 -0
  13. package/dist/assets/{addon-B-vtdIPn.js → addon-S-x2oOBW.js} +1 -1
  14. package/dist/assets/{advanced-B92lyz70.js → advanced-Brdzd_hV.js} +1 -1
  15. package/dist/assets/aigne-CEwSzcja.js +10 -0
  16. package/dist/assets/aistro-NLUOUWwT.png +0 -0
  17. package/dist/assets/{appearance-C1k2L_bA.js → appearance-Dptvfp0O.js} +1 -1
  18. package/dist/assets/ar-BCTLRONQ.js +1 -0
  19. package/dist/assets/{ar-DDlrXmSt.js → ar-qovKpPcU.js} +1 -1
  20. package/dist/assets/{arrow-down.svg-BnKvb8st.js → arrow-down.svg-mrRaEeKB.js} +1 -1
  21. package/dist/assets/{audit-logs-OO0l4GnY.js → audit-logs-FBpDejHE.js} +1 -1
  22. package/dist/assets/{authorize-BU6KP5W6.js → authorize-BeJTPWjw.js} +1 -1
  23. package/dist/assets/{base-chart-B1XQ7Ytj.js → base-chart-BR64ujqk.js} +1 -1
  24. package/dist/assets/{base32-BeRPpTcK.js → base32-Dq34Xpru.js} +1 -1
  25. package/dist/assets/{branding-D1JmhF3p.js → branding-BX3gHZjy.js} +2 -2
  26. package/dist/assets/{branding-CEu-c8uQ.js → branding-D1DQzFQg.js} +1 -1
  27. package/dist/assets/{bundle-avatar-BZQ_lZxy.js → bundle-avatar-B6WDP8U8.js} +1 -1
  28. package/dist/assets/button-BGOqx4KL.js +1 -0
  29. package/dist/assets/{click-to-copy-EOhAhdSS.js → click-to-copy-Lt7iNH-g.js} +1 -1
  30. package/dist/assets/{collapse-wumRocfe.js → collapse-tY1N2fk5.js} +1 -1
  31. package/dist/assets/{complete-DwaBuF4K.js → complete-QPs88Xvq.js} +1 -1
  32. package/dist/assets/{component-D31UJpJQ.js → component-IvlOow7w.js} +3 -3
  33. package/dist/assets/{config-Df0dxvZZ.js → config-BV13SrRs.js} +1 -1
  34. package/dist/assets/config-ZidMeHMX.js +53 -0
  35. package/dist/assets/{config-AgncsJiw.js → config-gRz3hnHQ.js} +1 -1
  36. package/dist/assets/{config-navigation-JJehoQAV.js → config-navigation--k3uzAVY.js} +3 -3
  37. package/dist/assets/{config-space-CrH2JnlQ.js → config-space-DmPAo0Uc.js} +1 -1
  38. package/dist/assets/{confirm-Cx2owMMo.js → confirm-DwicyBRo.js} +1 -1
  39. package/dist/assets/{connect-C7C7ILA6.js → connect-CCyhtcsX.js} +1 -1
  40. package/dist/assets/{connect-BD9OoHaD.js → connect-CXYynAHv.js} +1 -1
  41. package/dist/assets/{connect-to-nCPxtJH1.js → connect-to-duHzVFsc.js} +1 -1
  42. package/dist/assets/{content-layout-BZKNdb6s.js → content-layout-D5EfCmvE.js} +1 -1
  43. package/dist/assets/{createClass-BTaIsrxM.js → createClass-Cy-fAHUw.js} +1 -1
  44. package/dist/assets/{dashboard-CDjptZox.js → dashboard-DTH5SkDE.js} +3 -3
  45. package/dist/assets/{de-DSALrqI8.js → de-BrVlvg8I.js} +1 -1
  46. package/dist/assets/de-Bxv5hOpH.js +1 -0
  47. package/dist/assets/{delete-confirm-Wa3xVOUM.js → delete-confirm-Bn607XWd.js} +1 -1
  48. package/dist/assets/{did-address-C7IHZs6x.js → did-address-BYpODbk4.js} +1 -1
  49. package/dist/assets/{domain-DV7cdOEy.js → domain-D0AJ_QKJ.js} +1 -1
  50. package/dist/assets/{domain-action-card-CnvZTstr.js → domain-action-card-DIdC2BX8.js} +1 -1
  51. package/dist/assets/domains-BnUGWOh5.js +1 -0
  52. package/dist/assets/{dot-CE8yAFCN.js → dot-3RzyGk21.js} +1 -1
  53. package/dist/assets/{email-DQnz-4Bc.js → email-DSvOsQV4.js} +1 -1
  54. package/dist/assets/{empty-spinner-DCdg-gxP.js → empty-spinner-DXNgsKH2.js} +1 -1
  55. package/dist/assets/engine-DwJQ8ndb.js +1 -0
  56. package/dist/assets/es-CJASnE29.js +1 -0
  57. package/dist/assets/{es-DQvY5fGr.js → es-CWdREjkO.js} +1 -1
  58. package/dist/assets/{exchange-passport-D9HZFZwF.js → exchange-passport-Duueo_OR.js} +1 -1
  59. package/dist/assets/{form-D52FUB8q.js → form-DJLzfDke.js} +1 -1
  60. package/dist/assets/{form-text-input-DanXI___.js → form-text-input-BWWenIQu.js} +1 -1
  61. package/dist/assets/{form-wrapper-DgFURo9t.js → form-wrapper-RaRgkgkH.js} +1 -1
  62. package/dist/assets/{fr-BgvhEJ06.js → fr-CfM2gAY_.js} +1 -1
  63. package/dist/assets/fr-GN7UO4qD.js +1 -0
  64. package/dist/assets/{fuel-DEa3ECY8.js → fuel-BxPebmaf.js} +1 -1
  65. package/dist/assets/gen-access-key-C8QyyPtS.js +1 -0
  66. package/dist/assets/gen-simple-access-key-CGRxC9aD.js +1 -0
  67. package/dist/assets/get-safe-url-Byu99Iq6.js +1 -0
  68. package/dist/assets/hi-B6hnXdBn.js +5 -0
  69. package/dist/assets/hi-DWiwUAYV.js +1 -0
  70. package/dist/assets/{home-B7OWEVsn.js → home-D1KsByvB.js} +1 -1
  71. package/dist/assets/{id-DfDk8Cxy.js → id-BfAVuWhm.js} +1 -1
  72. package/dist/assets/id-SWQ4mJGx.js +1 -0
  73. package/dist/assets/{iframe-CqwYISrF.js → iframe-2AxKOYBR.js} +1 -1
  74. package/dist/assets/{index-296hnpGF.js → index-0DKBOdj7.js} +1 -1
  75. package/dist/assets/index-4wrVz6i1.js +124 -0
  76. package/dist/assets/{index-ChbREcnK.js → index-7UPsmpeB.js} +1 -1
  77. package/dist/assets/{index-BFOTYlfC.js → index-7Wt3WOLU.js} +1 -1
  78. package/dist/assets/{index-B0GLaTiX.js → index-8djlz-MG.js} +1 -1
  79. package/dist/assets/{index-DlaHLSvf.js → index-B2HJDbWz.js} +19 -19
  80. package/dist/assets/{index-C4hly8RC.js → index-BAYFdR7m.js} +1 -1
  81. package/dist/assets/{index-uY6moYTs.js → index-BDSe7HLW.js} +1 -1
  82. package/dist/assets/{index-BEmLxB7B.js → index-Br7EG_jz.js} +1 -1
  83. package/dist/assets/{index-diQW5vdJ.js → index-BsHHb1rN.js} +1 -1
  84. package/dist/assets/{index-Nd6gD7eY.js → index-CMhFwlvk.js} +1 -1
  85. package/dist/assets/{index-CKesQXQW.js → index-CTM6wiOX.js} +1 -1
  86. package/dist/assets/{index-Dj0TETp9.js → index-CgCVx1sf.js} +12 -12
  87. package/dist/assets/{index-Cylfu8Kg.js → index-CniiyWPl.js} +14 -14
  88. package/dist/assets/{index-AK4Fi3I2.js → index-Cp_r7DvZ.js} +1 -1
  89. package/dist/assets/{index-Yow2d7gN.js → index-Cw89V6wx.js} +1 -1
  90. package/dist/assets/{index-BetmKk0p.js → index-Cy8O6s0C.js} +1 -1
  91. package/dist/assets/index-D05HWeh6.js +1 -0
  92. package/dist/assets/{index-CiL_9BYm.js → index-DFmxGkG9.js} +12 -12
  93. package/dist/assets/{index-CiW-jlCS.js → index-DKLDL0NU.js} +1 -1
  94. package/dist/assets/{index-B-k9otcQ.js → index-DLvW-hX6.js} +1 -1
  95. package/dist/assets/{index-BDu1k7Fv.js → index-DSSx9Ohc.js} +1 -1
  96. package/dist/assets/{index-BBIMESWU.js → index-DU79Hpz9.js} +1 -1
  97. package/dist/assets/{index-Bbcgo0GF.js → index-DgGkR58E.js} +1 -1
  98. package/dist/assets/{index-LdkiJabL.js → index-Dmil4V_-.js} +1 -1
  99. package/dist/assets/{index-DtuUsb1T.js → index-DtYei0B0.js} +2 -1
  100. package/dist/assets/{index-78a5Cdpe.js → index-GRZ8tMAV.js} +1 -1
  101. package/dist/assets/{index-C0mn0MnL.js → index-Mu2Sji0B.js} +1 -1
  102. package/dist/assets/{index-DSNvDaKK.js → index-dytlEEOb.js} +1 -1
  103. package/dist/assets/{index-B4OZ6pVW.js → index-khjK2Z9N.js} +1 -1
  104. package/dist/assets/{index-Cbf4geph.js → index-l5234Nwn.js} +123 -122
  105. package/dist/assets/{invitation-D8IFGbTf.js → invitation-BiM8UWsv.js} +1 -1
  106. package/dist/assets/{invite-bBNbkUJu.js → invite-CAmhHCq3.js} +1 -1
  107. package/dist/assets/{isURL-By2TdRfN.js → isURL-DA2-tMLY.js} +1 -1
  108. package/dist/assets/{issue-passport-DaQDVQ7Y.js → issue-passport-BlDK-yh8.js} +1 -1
  109. package/dist/assets/item-Deax8Tcs.js +1 -0
  110. package/dist/assets/{ja-GXo4l4Hp.js → ja-616mK6Bu.js} +1 -1
  111. package/dist/assets/ja-CUi7rI9p.js +1 -0
  112. package/dist/assets/ko-Bx9B8tBH.js +1 -0
  113. package/dist/assets/{ko-1dMP3P8A.js → ko-CoUjs_Gj.js} +1 -1
  114. package/dist/assets/{landing-page-k9p91AEv.js → landing-page-BJTNr6j1.js} +1 -1
  115. package/dist/assets/{launch-result-message-BTMFIbUm.js → launch-result-message-BklGSk6L.js} +1 -1
  116. package/dist/assets/{layout-zg5WZEdp.js → layout-B_66AMXX.js} +1 -1
  117. package/dist/assets/{list-C6CNPBAR.js → list-XQkJnArQ.js} +1 -1
  118. package/dist/assets/{list-header-B8ZTLjYf.js → list-header-BnA6XPP6.js} +1 -1
  119. package/dist/assets/{list-CYJEZSon.js → list-uh5difGn.js} +2 -2
  120. package/dist/assets/localization-DrnuLXG0.js +1 -0
  121. package/dist/assets/{log-ssfC90VX.js → log-22OBDAZV.js} +1 -1
  122. package/dist/assets/logger-Dth79fFL.js +1 -0
  123. package/dist/assets/{login-aFsf6-QM.js → login-6f9xq_uw.js} +1 -1
  124. package/dist/assets/{login-oauth-callback-dKBg8IoH.js → login-oauth-callback-mHVhjuxd.js} +1 -1
  125. package/dist/assets/{logo-uploader-D0Gz6YoY.js → logo-uploader-3Gf22QS4.js} +2 -2
  126. package/dist/assets/{lost-passport-Bo6am6th.js → lost-passport-BIYbG7oY.js} +1 -1
  127. package/dist/assets/{observability-Cfy3MVZa.js → observability-CFK-gQFz.js} +1 -1
  128. package/dist/assets/{open-window-DBhAlL9B.js → open-window-nJnt1xUe.js} +1 -1
  129. package/dist/assets/{over-due-invoice-payment-D89GCKNm.js → over-due-invoice-payment-D1hhqrpZ.js} +1 -1
  130. package/dist/assets/{overview-Xs3x6yXg.js → overview-DGSAxk-A.js} +1 -1
  131. package/dist/assets/{page-header-18voA300.js → page-header-Fuppayrb.js} +1 -1
  132. package/dist/assets/{passport-item-D-B7gJms.js → passport-item-4tKOyK2N.js} +1 -1
  133. package/dist/assets/{permission-DqaOkW_Z.js → permission-CzDQ8THQ.js} +1 -1
  134. package/dist/assets/{playground-CC7NZ-_A.js → playground-BNACWW4o.js} +1 -1
  135. package/dist/assets/preferences-CaRaLLOf.js +1 -0
  136. package/dist/assets/profile-embed-B295K6Uq.js +1 -0
  137. package/dist/assets/pt-BPWMiPVo.js +1 -0
  138. package/dist/assets/pt-BjllWaWg.js +5 -0
  139. package/dist/assets/publish-resource-Bhl_UV8t.js +1 -0
  140. package/dist/assets/{react-beautiful-dnd.esm-DkLcR42r.js → react-beautiful-dnd.esm-DOptRWpa.js} +1 -1
  141. package/dist/assets/{react-stripe.esm-BqogJv7y.js → react-stripe.esm-XKR9U0Pi.js} +1 -1
  142. package/dist/assets/{required-Df9AZf0R.js → required-DyRlNY7J.js} +1 -1
  143. package/dist/assets/ru-XKA9Zu_7.js +5 -0
  144. package/dist/assets/ru-aN6KKhQS.js +1 -0
  145. package/dist/assets/{runtime-DjILMoeT.js → runtime-bUnoJYpr.js} +1 -1
  146. package/dist/assets/{sanitize-BSjwjSMl.js → sanitize-Bu5pIC-A.js} +2 -2
  147. package/dist/assets/sdk-CiMbVjwj.js +1 -0
  148. package/dist/assets/{section-X04H4Q-a.js → section-D6477Ce1.js} +2 -1
  149. package/dist/assets/{security-BXhgiheS.js → security-DO4dtLin.js} +1 -1
  150. package/dist/assets/{session-89Q1nGxB.js → session-YnDvY5CJ.js} +1 -1
  151. package/dist/assets/setup-DigmKGGp.js +30 -0
  152. package/dist/assets/{shorten-label-CdBn9U0H.js → shorten-label-Bj776ixm.js} +1 -1
  153. package/dist/assets/{simple-select-BkbgqOQi.js → simple-select-BDbQa-9S.js} +1 -1
  154. package/dist/assets/{spaces-BJeg7L1z.js → spaces-KdeOps1v.js} +1 -1
  155. package/dist/assets/{start-CLueiUKJ.js → start-h8SswMC5.js} +1 -1
  156. package/dist/assets/{starting-progress-DWesZE5w.js → starting-progress-BjFMTtUQ.js} +1 -1
  157. package/dist/assets/{status-DheLJdlM.js → status-E4FMnQqN.js} +1 -1
  158. package/dist/assets/{step-actions-DmraEWCH.js → step-actions-GaXwswph.js} +1 -1
  159. package/dist/assets/studio-CgXu1gEM.js +6 -0
  160. package/dist/assets/{switch-control-BbRt1rRM.js → switch-control-CkW4eeJ4.js} +1 -1
  161. package/dist/assets/{table-tips-73VcKMz1.js → table-tips-LM2ip4Rj.js} +1 -1
  162. package/dist/assets/{team-ZJuYy81P.js → team-DjZ9qE6U.js} +1 -1
  163. package/dist/assets/th-CFlSwxxc.js +1 -0
  164. package/dist/assets/th-C_39WNhc.js +5 -0
  165. package/dist/assets/{traffic-CMI1Sbrr.js → traffic-CW6sZXQr.js} +1 -1
  166. package/dist/assets/{transfer-CW4yMg3K.js → transfer-BUR6hEv2.js} +1 -1
  167. package/dist/assets/{unsubscribe-D3ZXIJIb.js → unsubscribe-Dfzg-bws.js} +1 -1
  168. package/dist/assets/{use-mobile-BDciCFXT.js → use-mobile-CO13Oymt.js} +1 -1
  169. package/dist/assets/{use-mobile-BlpLWscF.js → use-mobile-CzqOrBZu.js} +1 -1
  170. package/dist/assets/{use-server-logo-lZp3Hq92.js → use-server-logo-Bs73VID2.js} +1 -1
  171. package/dist/assets/{use-window-close-wo9PxrTe.js → use-window-close-Cvx_le30.js} +1 -1
  172. package/dist/assets/{useLocalStorage-B_thopuV.js → useLocalStorage-phc-OA98.js} +1 -1
  173. package/dist/assets/{user-center-D6gs6-WZ.js → user-center-DjDTKFEf.js} +3 -3
  174. package/dist/assets/{user-sessions-B56a-4tA.js → user-sessions-D3Rr-i1p.js} +1 -1
  175. package/dist/assets/{util-Dcj6HCP7.js → util-Bn2B0xma.js} +1 -1
  176. package/dist/assets/{util-DQF9oPrf.js → util-majSFCTY.js} +1 -1
  177. package/dist/assets/{vendor-arcblock--zSibe1w.js → vendor-arcblock-DU4xNzGM.js} +1 -1
  178. package/dist/assets/{vendor-mui-core-BOHKtf8y.js → vendor-mui-core-CAIaAq-_.js} +2 -2
  179. package/dist/assets/{vendor-mui-x-16EG-AFj.js → vendor-mui-x-DXh6Gdva.js} +1 -1
  180. package/dist/assets/{vendor-ux-Cra9XTth.js → vendor-ux-C1NY8cuW.js} +3 -3
  181. package/dist/assets/vi-B8pz6rul.js +5 -0
  182. package/dist/assets/vi-DnVHbPxD.js +1 -0
  183. package/dist/assets/wait-connect-DpAcPy2e.js +1 -0
  184. package/dist/assets/wrap-locale-DwZj0kLA.js +1 -0
  185. package/dist/assets/zh-CFHHHyA4.js +1 -0
  186. package/dist/assets/{zh-DxCg9Pae.js → zh-DEpjANkc.js} +1 -1
  187. package/dist/assets/{zh-BoO0jdid.js → zh-Dr_3RhGJ.js} +1 -1
  188. package/dist/assets/zh-tw-DEjVZpn9.js +1 -0
  189. package/dist/assets/{zh-tw-D4_7lUjD.js → zh-tw-DK_EuRfN.js} +1 -1
  190. package/dist/index.html +4 -4
  191. package/dist/service-worker.js +1 -1
  192. package/package.json +46 -46
  193. package/dist/assets/add-resource-Ch4SZAWK.js +0 -1
  194. package/dist/assets/aigne-BDdYezR9.js +0 -10
  195. package/dist/assets/ar-cWkdH-wM.js +0 -1
  196. package/dist/assets/button-VEuIVOxr.js +0 -1
  197. package/dist/assets/config-C6pSSzan.js +0 -46
  198. package/dist/assets/de-CKHR0Dxi.js +0 -1
  199. package/dist/assets/domains-BpVmxPqY.js +0 -1
  200. package/dist/assets/empty-DhZfJeme.js +0 -1
  201. package/dist/assets/engine-BD3-KjxK.js +0 -1
  202. package/dist/assets/es-2tKCVVW6.js +0 -1
  203. package/dist/assets/fr-C2hgGsGq.js +0 -1
  204. package/dist/assets/gen-access-key-DrTcGDFb.js +0 -1
  205. package/dist/assets/gen-simple-access-key-DiDRmpFf.js +0 -1
  206. package/dist/assets/get-safe-url-DOmcOTEp.js +0 -1
  207. package/dist/assets/hi-DLl5_Grb.js +0 -1
  208. package/dist/assets/hi-DtMqBGN3.js +0 -5
  209. package/dist/assets/id-BEDDZnYa.js +0 -1
  210. package/dist/assets/index-AbdeuSeu.js +0 -124
  211. package/dist/assets/index-B-WiXXyt.js +0 -1
  212. package/dist/assets/item-BhrhnieT.js +0 -1
  213. package/dist/assets/ja-BXpHGJqS.js +0 -1
  214. package/dist/assets/ko-CwVxJk3S.js +0 -1
  215. package/dist/assets/localization-DFWXvHpl.js +0 -1
  216. package/dist/assets/logger-D5kKPkv7.js +0 -1
  217. package/dist/assets/preferences-5iBfUn8N.js +0 -1
  218. package/dist/assets/profile-embed-MOxF7ggV.js +0 -1
  219. package/dist/assets/pt-5iS1WU13.js +0 -5
  220. package/dist/assets/pt-DM9_sWXT.js +0 -1
  221. package/dist/assets/publish-resource-BBnSOgDd.js +0 -1
  222. package/dist/assets/ru-DpIRvFxj.js +0 -5
  223. package/dist/assets/ru-DvP9XKXg.js +0 -1
  224. package/dist/assets/sdk-B-MwbsI_.js +0 -1
  225. package/dist/assets/setup-Da3ReRWd.js +0 -30
  226. package/dist/assets/studio-C4flChud.js +0 -6
  227. package/dist/assets/th-BjX3AJzF.js +0 -5
  228. package/dist/assets/th-DyGOy3ap.js +0 -1
  229. package/dist/assets/use-promise-window-open-u0untujg.js +0 -1
  230. package/dist/assets/vi-0Dtw7069.js +0 -5
  231. package/dist/assets/vi-BWy1Jg4e.js +0 -1
  232. package/dist/assets/wait-connect-CqwL_aoj.js +0 -1
  233. package/dist/assets/wrap-locale-DAzAra4f.js +0 -1
  234. package/dist/assets/zh-D_lJZbI3.js +0 -1
  235. package/dist/assets/zh-tw-CfWhHTHL.js +0 -1
@@ -1,6 +0,0 @@
1
- import{j as e,bw as V,bx as L,by as d,bz as p,at as c,W as n}from"./vendor-mui-core-BOHKtf8y.js";import{r as C,k as H}from"./vendor-react-Dvs43sk9.js";import{T as E,E as m}from"./vendor-ux-Cra9XTth.js";import{u}from"./index-Dj0TETp9.js";import{c as o,k as f}from"./index-Cbf4geph.js";const h=l=>C.createElement("svg",{width:161,height:65,viewBox:"0 0 161 65",fill:"none",xmlns:"http://www.w3.org/2000/svg",...l},C.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M80.0049 26.8423V10.8018H87.7418C89.8347 10.8018 91.5313 12.5033 91.5313 14.6023V15.7551C91.5313 16.7654 91.1382 17.6835 90.4972 18.3642C91.6333 19.0205 92.3982 20.2506 92.3982 21.66V23.0418C92.3982 25.1407 90.7016 26.8423 88.6087 26.8423H80.0049ZM81.6893 17.8594H87.9154C88.997 17.771 89.8473 16.8626 89.8473 15.7551V14.6023C89.8473 13.4362 88.9047 12.4909 87.742 12.4909H81.6893V17.8594ZM81.6893 25.1532V19.5557L88.609 19.5486C89.7717 19.5486 90.7142 20.4939 90.7142 21.66V23.0418C90.7142 24.2079 89.7717 25.1532 88.609 25.1532H81.6893ZM97.2554 10.8018V26.8423H95.4933V10.8018H97.2554ZM105.988 15.133H104.161C102.056 15.133 100.35 16.844 100.35 18.9547V23.0206C100.35 25.1313 102.056 26.8423 104.161 26.8423H105.988C108.092 26.8423 109.799 25.1313 109.799 23.0206V18.9547C109.799 16.844 108.092 15.133 105.988 15.133ZM104.161 16.9003C103.03 16.9003 102.112 17.8201 102.112 18.9547V23.0206C102.112 24.1553 103.03 25.0751 104.161 25.0751H105.988C107.119 25.0751 108.036 24.1553 108.036 23.0206V18.9547C108.036 17.8201 107.119 16.9003 105.988 16.9003H104.161ZM125.204 26.8484V21.0781H127.352L130.674 26.8484H132.709L128.888 20.211L131.881 15.0121H129.846L127.372 19.3108H125.204V10.8018H123.442V26.8484H125.204ZM119.648 19.2672V18.9547C119.648 17.82 118.731 16.9002 117.6 16.9002H115.773C114.641 16.9002 113.724 17.82 113.724 18.9547V23.0206C113.724 24.1552 114.641 25.075 115.773 25.075H117.6C118.731 25.075 119.648 24.1552 119.648 23.0206V22.7081H121.41V23.0206C121.41 25.1313 119.704 26.8423 117.6 26.8423H115.773C113.668 26.8423 111.962 25.1313 111.962 23.0206V18.9547C111.962 16.844 113.668 15.133 115.773 15.133H117.6C119.704 15.133 121.41 16.844 121.41 18.9547V19.2672H119.648ZM137.566 26.8423V10.8018H135.804V26.8423H137.566ZM142.555 21.4703V23.0206C142.555 24.1552 143.472 25.075 144.604 25.075H146.431C147.562 25.075 148.479 24.1552 148.479 23.0206V22.7081H150.241V23.0206C150.241 25.1313 148.535 26.8423 146.431 26.8423H144.604C142.499 26.8423 140.793 25.1313 140.793 23.0206V18.9547C140.793 16.844 142.499 15.133 144.604 15.133H146.431C148.535 15.133 150.241 16.844 150.241 18.9547V19.7031H150.242V21.4703H142.555ZM148.479 19.7031H142.555V18.9547C142.555 17.82 143.472 16.9002 144.604 16.9002H146.431C147.562 16.9002 148.479 17.82 148.479 18.9547V19.7031ZM153.968 17.7853H152.4V16.018H153.968V13.162H155.652V16.018H159.729V17.7853H155.652V23.479C155.652 24.4036 156.399 25.1532 157.321 25.1532C158.243 25.1532 158.991 24.4036 158.991 23.479V23.1274H160.675V23.479C160.675 25.3365 159.174 26.8423 157.321 26.8423C155.469 26.8423 153.968 25.3365 153.968 23.479V17.7853Z",fill:"#121319"}),C.createElement("path",{d:"M91.034 37.2923C90.922 37.4883 90.8006 37.633 90.67 37.7263C90.5486 37.8103 90.3946 37.8523 90.208 37.8523C90.012 37.8523 89.7973 37.7823 89.564 37.6423C89.34 37.493 89.0693 37.3296 88.752 37.1523C88.4346 36.975 88.0613 36.8163 87.632 36.6763C87.212 36.527 86.7126 36.4523 86.134 36.4523C85.6113 36.4523 85.154 36.5176 84.762 36.6483C84.37 36.7696 84.0386 36.9423 83.768 37.1663C83.5066 37.3903 83.3106 37.661 83.18 37.9783C83.0493 38.2863 82.984 38.627 82.984 39.0003C82.984 39.4763 83.1146 39.873 83.376 40.1903C83.6466 40.5076 84.0013 40.7783 84.44 41.0023C84.8786 41.2263 85.378 41.427 85.938 41.6043C86.498 41.7816 87.072 41.973 87.66 42.1783C88.248 42.3743 88.822 42.6076 89.382 42.8783C89.942 43.1396 90.4413 43.4756 90.88 43.8863C91.3186 44.2876 91.6686 44.7823 91.93 45.3703C92.2006 45.9583 92.336 46.6723 92.336 47.5123C92.336 48.427 92.1773 49.2856 91.86 50.0883C91.552 50.8816 91.0946 51.577 90.488 52.1743C89.8906 52.7623 89.158 53.229 88.29 53.5743C87.422 53.9103 86.428 54.0783 85.308 54.0783C84.664 54.0783 84.0293 54.013 83.404 53.8823C82.7786 53.761 82.1766 53.5836 81.598 53.3503C81.0286 53.117 80.492 52.837 79.988 52.5103C79.484 52.1836 79.036 51.8196 78.644 51.4183L79.75 49.6123C79.8433 49.4816 79.9646 49.3743 80.114 49.2903C80.2633 49.197 80.422 49.1503 80.59 49.1503C80.8233 49.1503 81.0753 49.2483 81.346 49.4443C81.6166 49.631 81.9386 49.841 82.312 50.0743C82.6853 50.3076 83.1193 50.5223 83.614 50.7183C84.118 50.905 84.72 50.9983 85.42 50.9983C86.4933 50.9983 87.324 50.7463 87.912 50.2423C88.5 49.729 88.794 48.9963 88.794 48.0443C88.794 47.5123 88.6586 47.0783 88.388 46.7423C88.1266 46.4063 87.7766 46.1263 87.338 45.9023C86.8993 45.669 86.4 45.473 85.84 45.3143C85.28 45.1556 84.7106 44.983 84.132 44.7963C83.5533 44.6096 82.984 44.3856 82.424 44.1243C81.864 43.863 81.3646 43.5223 80.926 43.1023C80.4873 42.6823 80.1326 42.1596 79.862 41.5343C79.6006 40.8996 79.47 40.1203 79.47 39.1963C79.47 38.459 79.6146 37.7403 79.904 37.0403C80.2026 36.3403 80.632 35.7196 81.192 35.1783C81.752 34.637 82.4426 34.203 83.264 33.8763C84.0853 33.5496 85.028 33.3863 86.092 33.3863C87.2866 33.3863 88.388 33.573 89.396 33.9463C90.404 34.3196 91.2626 34.8423 91.972 35.5143L91.034 37.2923Z",fill:"#121319"}),C.createElement("path",{d:"M99.2343 54.0783C97.9836 54.0783 97.0223 53.7283 96.3503 53.0283C95.6876 52.319 95.3563 51.3436 95.3563 50.1023V42.0803H93.8863C93.6996 42.0803 93.5409 42.0196 93.4103 41.8983C93.2796 41.777 93.2143 41.595 93.2143 41.3523V39.9803L95.5243 39.6023L96.2523 35.6823C96.2989 35.4956 96.3876 35.351 96.5183 35.2483C96.6489 35.1456 96.8169 35.0943 97.0223 35.0943H98.8143V39.6163H102.65V42.0803H98.8143V49.8643C98.8143 50.3123 98.9216 50.6623 99.1363 50.9143C99.3603 51.1663 99.6636 51.2923 100.046 51.2923C100.261 51.2923 100.438 51.269 100.578 51.2223C100.728 51.1663 100.854 51.1103 100.956 51.0543C101.068 50.9983 101.166 50.947 101.25 50.9003C101.334 50.8443 101.418 50.8163 101.502 50.8163C101.605 50.8163 101.689 50.8443 101.754 50.9003C101.82 50.947 101.89 51.0216 101.964 51.1243L103 52.8043C102.496 53.2243 101.918 53.5416 101.264 53.7563C100.611 53.971 99.9343 54.0783 99.2343 54.0783Z",fill:"#121319"}),C.createElement("path",{d:"M117.24 39.4903V53.8543H115.126C114.669 53.8543 114.38 53.6443 114.258 53.2243L114.02 52.0763C113.432 52.6736 112.784 53.159 112.074 53.5323C111.365 53.8963 110.53 54.0783 109.568 54.0783C108.784 54.0783 108.089 53.9476 107.482 53.6863C106.885 53.4156 106.381 53.0376 105.97 52.5523C105.56 52.067 105.247 51.493 105.032 50.8303C104.827 50.1583 104.724 49.421 104.724 48.6183V39.4903H108.182V48.6183C108.182 49.4956 108.383 50.177 108.784 50.6623C109.195 51.1383 109.806 51.3763 110.618 51.3763C111.216 51.3763 111.776 51.2456 112.298 50.9843C112.821 50.7136 113.316 50.345 113.782 49.8783V39.4903H117.24Z",fill:"#121319"}),C.createElement("path",{d:"M129.685 43.1583C129.293 42.6823 128.864 42.3463 128.397 42.1503C127.94 41.9543 127.445 41.8563 126.913 41.8563C126.39 41.8563 125.919 41.9543 125.499 42.1503C125.079 42.3463 124.72 42.645 124.421 43.0463C124.122 43.4383 123.894 43.9423 123.735 44.5583C123.576 45.165 123.497 45.8836 123.497 46.7143C123.497 47.5543 123.562 48.2683 123.693 48.8563C123.833 49.435 124.029 49.911 124.281 50.2843C124.533 50.6483 124.841 50.9143 125.205 51.0823C125.569 51.241 125.975 51.3203 126.423 51.3203C127.142 51.3203 127.753 51.171 128.257 50.8723C128.761 50.5736 129.237 50.149 129.685 49.5983V43.1583ZM133.143 33.0503V53.8543H131.029C130.572 53.8543 130.282 53.6443 130.161 53.2243L129.867 51.8383C129.288 52.501 128.621 53.0376 127.865 53.4483C127.118 53.859 126.246 54.0643 125.247 54.0643C124.463 54.0643 123.744 53.901 123.091 53.5743C122.438 53.2476 121.873 52.7763 121.397 52.1603C120.93 51.535 120.566 50.765 120.305 49.8503C120.053 48.9356 119.927 47.8903 119.927 46.7143C119.927 45.6503 120.072 44.661 120.361 43.7463C120.65 42.8316 121.066 42.0383 121.607 41.3663C122.148 40.6943 122.797 40.1716 123.553 39.7983C124.309 39.4156 125.158 39.2243 126.101 39.2243C126.904 39.2243 127.59 39.3503 128.159 39.6023C128.728 39.8543 129.237 40.195 129.685 40.6243V33.0503H133.143Z",fill:"#121319"}),C.createElement("path",{d:"M140.14 39.4903V53.8543H136.668V39.4903H140.14ZM140.616 35.3043C140.616 35.603 140.555 35.883 140.434 36.1443C140.312 36.4056 140.149 36.6343 139.944 36.8303C139.748 37.0263 139.514 37.185 139.244 37.3063C138.973 37.4183 138.684 37.4743 138.376 37.4743C138.077 37.4743 137.792 37.4183 137.522 37.3063C137.26 37.185 137.032 37.0263 136.836 36.8303C136.64 36.6343 136.481 36.4056 136.36 36.1443C136.248 35.883 136.192 35.603 136.192 35.3043C136.192 34.9963 136.248 34.707 136.36 34.4363C136.481 34.1656 136.64 33.9323 136.836 33.7363C137.032 33.5403 137.26 33.3863 137.522 33.2743C137.792 33.153 138.077 33.0923 138.376 33.0923C138.684 33.0923 138.973 33.153 139.244 33.2743C139.514 33.3863 139.748 33.5403 139.944 33.7363C140.149 33.9323 140.312 34.1656 140.434 34.4363C140.555 34.707 140.616 34.9963 140.616 35.3043Z",fill:"#121319"}),C.createElement("path",{d:"M150.021 39.2663C151.085 39.2663 152.051 39.439 152.919 39.7843C153.796 40.1296 154.543 40.6196 155.159 41.2543C155.784 41.889 156.265 42.6636 156.601 43.5783C156.937 44.493 157.105 45.515 157.105 46.6443C157.105 47.783 156.937 48.8096 156.601 49.7243C156.265 50.639 155.784 51.4183 155.159 52.0623C154.543 52.7063 153.796 53.201 152.919 53.5463C152.051 53.8916 151.085 54.0643 150.021 54.0643C148.948 54.0643 147.972 53.8916 147.095 53.5463C146.218 53.201 145.466 52.7063 144.841 52.0623C144.225 51.4183 143.744 50.639 143.399 49.7243C143.063 48.8096 142.895 47.783 142.895 46.6443C142.895 45.515 143.063 44.493 143.399 43.5783C143.744 42.6636 144.225 41.889 144.841 41.2543C145.466 40.6196 146.218 40.1296 147.095 39.7843C147.972 39.439 148.948 39.2663 150.021 39.2663ZM150.021 51.4043C151.216 51.4043 152.098 51.003 152.667 50.2003C153.246 49.3976 153.535 48.2216 153.535 46.6723C153.535 45.123 153.246 43.9423 152.667 43.1303C152.098 42.3183 151.216 41.9123 150.021 41.9123C148.808 41.9123 147.907 42.323 147.319 43.1443C146.74 43.9563 146.451 45.1323 146.451 46.6723C146.451 48.2123 146.74 49.3883 147.319 50.2003C147.907 51.003 148.808 51.4043 150.021 51.4043Z",fill:"#121319"}),C.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M50.12 11.4073L31.7 0.772461L13.28 11.4073V25.5506L1 32.6404V53.91L19.42 64.5448L31.6702 57.4721L31.7 57.4894L31.7298 57.4721L43.98 64.5448L62.4 53.91V32.6404L50.12 25.5506V11.4073ZM60.4813 33.7482L48.2013 26.6583V12.515L31.7 2.98804L15.1988 12.515V26.6583L2.91875 33.7482V52.8022L19.42 62.3292L31.6702 55.2566L31.7 55.2738L31.7298 55.2566L43.98 62.3292L60.4813 52.8022V33.7482Z",fill:"url(#paint0_linear_2948_12314)"}),C.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M31.6998 14.9521L50.1198 25.5869V46.8565L31.6998 57.4913L13.2798 46.8565V25.5869L31.6998 14.9521ZM16.1579 26.1408L30.7404 34.56V17.7216L16.1579 26.1408ZM29.7811 36.2217L15.1986 27.8025V44.6409L29.7811 36.2217ZM32.6592 37.8834L47.2417 46.3026L32.6592 54.7218V37.8834ZM48.2011 44.6409L33.6186 36.2217L48.2011 27.8025V44.6409ZM30.7404 54.7218L16.1579 46.3026L30.7404 37.8834V54.7218ZM32.6592 17.7216L47.2417 26.1408L32.6592 34.56V17.7216Z",fill:"url(#paint1_linear_2948_12314)"}),C.createElement("defs",null,C.createElement("linearGradient",{id:"paint0_linear_2948_12314",x1:31.7,y1:-31.1137,x2:-32.0265,y2:30.2422,gradientUnits:"userSpaceOnUse"},C.createElement("stop",{stopColor:"#4EF1BA"}),C.createElement("stop",{offset:.501904,stopColor:"#16CED1"}),C.createElement("stop",{offset:1,stopColor:"#3773F2"})),C.createElement("linearGradient",{id:"paint1_linear_2948_12314",x1:34.1078,y1:-36.3413,x2:-36.2973,y2:19.2796,gradientUnits:"userSpaceOnUse"},C.createElement("stop",{stopColor:"#4EF1BA"}),C.createElement("stop",{offset:.501904,stopColor:"#16CED1"}),C.createElement("stop",{offset:1,stopColor:"#3773F2"}))));function M({children:l,title:a="Studio",...r}){const{t}=E(),i=H(),s=[{url:`${o.WELLKNOWN_SERVICE_PATH_PREFIX}/studio/home`,name:"home",title:t("studio.home"),icon:e.jsx(V,{})},{url:`${o.WELLKNOWN_SERVICE_PATH_PREFIX}/studio/preferences`,name:"preferences",title:t("studio.preferences"),icon:e.jsx(L,{})},{url:`${o.WELLKNOWN_SERVICE_PATH_PREFIX}/studio/branding`,name:"branding",title:t("studio.branding"),icon:e.jsx(d,{})},{url:`${o.WELLKNOWN_SERVICE_PATH_PREFIX}/studio/localization`,name:"localization",title:t("studio.localization"),icon:e.jsx(p,{})}];return e.jsx(Z,{links:s,headerProps:{logo:e.jsx(h,{width:"118",height:"48"})},title:a,legacy:!1,fullWidth:!0,...r,children:e.jsx(m,{FallbackComponent:f,resetKeys:[i.pathname],children:l})})}M.propTypes={children:n.any.isRequired,title:n.string};const Z=c(u)`
2
- .header-brand-wrapper .header-logo {
3
- height: 48px !important;
4
- width: 134px !important;
5
- }
6
- `;export{M as S};
@@ -1,5 +0,0 @@
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:"บล็อกเล็ต",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:"กุญแจ",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:"โหมดมืด",advancedConfig:"ขั้นสูง",document:"เอกสาร",mcpServers:"เซิร์ฟเวอร์ MCP",generate:"สร้าง",copy:"คัดลอก",copied:"คัดลอกแล้ว"},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
- โหมดแนวตั้ง:
3
- อัตราส่วน: 9:16
4
- โหมดแนวนอน:
5
- อัตราส่วน: 16:9`,copyrightDesc:"ใช้ใน: ปลายหน้าเว็บไซต์",appUrlDesc:"ใช้ใน: แผนผังเว็บไซต์และการแชร์บนโซเชียล",advanced:"การตั้งค่าขั้นสูง"},overview:{source:"แหล่ง",deployedFrom:"นำเสนอจาก",accessControl:"การควบคุมการเข้าถึง",viewInStore:"ดูในร้านค้า"},diskInfo:{empty:"ข้อมูลดิสก์ไม่สามารถใช้ได้ในขณะนี้!",appDir:"ไดเรกทอรีแอป",dataDir:"ไดเรกทอรีข้อมูล",logDir:"ไดเร็กทอรีบันทึก",cacheDir:"ไดเร็กทอรีแคช"},runtimeInfo:{noRunning:"ข้อมูลเวลาการทำงานจะสามารถใช้ได้เมื่อ blocklet กำลังทำงาน!",memoryUsage:"การใช้หน่วยความจำ",cpuUsage:"การใช้งาน CPU",uptime:"เวลาทำงาน",port:"ท่าเรือ",processId:"รหัสกระบวนการ"},dist:{downloadLink:"ลิงก์ดาวน์โหลด",verify:"ตรวจสอบ"},status:{added:"เพิ่มแล้ว",waiting:"กำลังรอ",downloading:"กำลังดาวน์โหลด",extracting:"การแยกออก",installing:"กำลังติดตั้ง",upgrading:"อัพเกรด",installed:"ติดตั้งแล้ว",created:"สร้างแล้ว",starting:"เริ่มต้น",running:"วิ่ง",stopping:"หยุด",stopped:"หยุด",error:"ข้อผิดพลาด",deleting:"ลบออก",corrupted:"เสียหาย",purchasing:"กำลังรอการซื้อ",purchased:"ซื้อแล้ว",verifying:"ตรวจสอบการซื้อ",resource:"ทรัพยากร"},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}"},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โดยเร็วที่สุดเพื่อความปลอดภัยที่ดีขึ้น"},dashboard:{nodeDid:"โหนด",ownerDid:"เจ้าของ",routingEngine:"เครื่องยนต์เส้นทาง",ownerNftURL:"เจ้าของ NFT",expirationLeft:"การหมดอายุที่เหลืออยู่",startFromCrashTip:"Blocklet Server ไม่ออกอย่างปกติครั้งล่าสุด โปรดเริ่ม blocklets ที่ต้องรันด้วยตนเอง",runtimeConfig:{blockletMaxMemoryLimit:"ขีด จำกัด ความจำสูงสุด ของ Blocklet",daemonMaxMemoryLimit:"ขีดจำกัดความจำสูงสุดของเซิร์ฟเวอร์",proxyMaxMemoryLimit:"ขีด จำกัด ความจำ สูงสุด ของ รถบัส เหตุการณ์"},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 (@abtnode/client) เหมาะสำหรับสถานการณ์ที่มีความต้องการด้านความปลอดภัยสูงและการส่งข้อมูลที่สำคัญ",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:"สร้างเมื่อ"}},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"},configDesc:'รวมแอปของคุณกับ AIGNE Hub เพื่อให้เข้าถึงโมเดลภาษาใหญ่ (LLMs) ได้อย่างปลอดภัยและมีการกำหนดเส้นทาง เมื่อเชื่อมต่อแล้ว แอปและส่วนประกอบสามารถส่งคำขออัจฉริยะและฉลาดขึ้นทันที คุณสามารถใช้ <a href="{url}" target="_blank">AIGNE Hub</a> ที่โฮสต์เอง หรืออินสแตนซ์สาธารณะเริ่มต้น',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} กำลังทำงาน ต้องบันทึกและเริ่มแอปพลิเคชันใหม่เพื่อให้มีผล",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:"ไม่มีที่สิ้นสุด"}},notification:{title:"การแจ้งเตือน",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:"ลายเซ็นอีเมลจะใช้ด้านล่างเพื่อให้ข้อมูลสำคัญเกี่ยวกับผู้ส่งแก่ผู้รับ"},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 จะทำการแก้ไขชื่อโดเมนโดยอัตโนมัติ ไม่จำเป็นต้องกำหนดค่าด้วยตนเอง และแอปพลิเคชันจะอัปเดตระเบียนการแก้ไขชื่อโดเมนโดยอัตโนมัติเมื่อจำเป็น หากคุณยังไม่มี NFT โดเมน DID,",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:"ผู้ใช้ถูกลบออกแล้ว"},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:"เวลาหมดอายุ",customExpireTime:"เวลาหมดอายุแบบกำหนดเอง",customExpireTimeIsInvalid:"เวลาหมดอายุที่กำหนดเองไม่ถูกต้อง"},inviting:{link:"ลิงก์เชิญ",inviter:"ผู้เชื้อเชิญ",delete:{title:"ลบลิงก์เชิญ",description:"ยืนยันการลบ {link}?"},disabledTip:"ไม่สามารถเปิดใช้งานการเชิญเป็นไปได้"},whoCanAccess:{all:{title:"สามารถเข้าถึงได้สำหรับทุกคน"},owner:{title:"เฉพาะเจ้าของเท่านั้น"},invited:{title:"เฉพาะผู้ใช้ที่ได้รับเชิญ"}}},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:"คุณต้องการล้างการนำทางทั้งหมดหรือไม่?",restConfirmDesc:"หลังจากล้างสะอาดแล้ว การนำทางจะถูกกู้คืนไปยังการกำหนดค่าเริ่มต้นเดิมของ Blocklet",resetSuccessful:"การรีเซ็ตสำเร็จ",delTabBarTitle:"คุณต้องการลบการนำทางนี้หรือไม่?",delTabBarDesc:"หลังจากลบแล้ว การนำทางจะถูกลบออกจากรายการการนำทาง"},access:"เข้าถึง",members:"สมาชิก",passport:"หนังสือเดินทาง",analytics:"การวิเคราะห์",dashboard:"แดชบอร์ด",studio:"สตูดิโอ",blockletService:"บริการ Blocklet",didConnect:"เชื่อมต่อ DID",didSpaces:"พื้นที่ DID",website:"เว็บไซต์",operations:"การดำเนินงาน",integration:"การผสานรวม",developer:"นักพัฒนา"},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:"ยังไม่มีการสร้างการสำรองข้อมูล เราขอแนะนำให้ตั้งค่าการสำรองข้อมูลเป็นประจำเพื่อปกป้องข้อมูลและการตั้งค่าของคุณ"},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:{commonSettings:"การตั้งค่าทั่วไป",save:"บันทึก",saveSuccess:"บันทึกเรียบร้อยแล้ว",saveFailed:"การบันทึกล้มเหลว",issued:"ออก",thirdPartyLogin:"เข้าสู่ระบบผ่านบัญชีอื่น",alreadyBindOAuth:"ได้ผูกการเข้าสู่ระบบบุคคลที่สามแล้ว",alreadyBindWallet:"ได้ผูกกระเป๋าสตางค์ DID แล้ว",auth0:{enable:"เปิดใช้งานเข้าสู่ระบบ Auth0",domain:"โดเมน",domainDescription:"จำเป็นต้องระบุโดเมนของ Auth0",clientId:"รหัสลูกค้า",clientIdDescription:"ต้องใช้ clientId ของ Auth0",clientSecret:"ความลับของลูกค้า",clientSecretDescription:"Client Secret ของแอปพลิเคชัน OAuth ของ Auth0 จำเป็นต้องใช้"},comingSoon:"มีวิธีการเข้าสู่ระบบเพิ่มเติมกำลังอยู่ในขั้นตอนก่อสร้าง",moreLogin:"เข้าสู่ระบบเพิ่มเติม",federated:"เข้าสู่ระบบเฟเดอเรท",runTest:"ทดสอบ",github:{enable:"เปิดใช้งานเข้าสู่ระบบ Github",clientId:"รหัสลูกค้า",clientIdDescription:"ต้องการ clientId ของแอปพลิเคชัน OAuth บน Github",clientSecret:"รหัสลับของลูกค้า",clientSecretDescription:"จำเป็นต้องมี clientSecret แอปพลิเคชัน Github OAuth"},google:{enable:"เปิดใช้งานการเข้าสู่ระบบด้วย Google",clientId:"รหัสลูกค้า",clientIdDescription:"ต้องการ clientId ของแอปพลิเคชัน Google OAuth",clientSecret:"ความลับของลูกค้า",clientSecretDescription:"ต้องมี clientSecret ของแอปพลิเคชัน OAuth ของ Google"},apple:{enable:"เปิดใช้งานเข้าสู่ระบบ Apple",teamId:"รหัสทีม",teamIdDescription:"ต้องการ ID ทีมของแอปพลิเคชัน OAuth ของแอปเปิ้ล",serviceId:"รหัสบริการ",serviceIdDescription:"จำเป็นต้องมี Apple OAuth Service ID",keyId:"รหัสคีย์",keyIdDescription:"ต้องการรหัสแอป Apple OAuth",authKey:"รหัส Auth",authKeyDescription:"ต้องใช้รหัสการตรวจสอบสิทธิ์ของแอป OAuth ของ Apple",bundleId:"Bundle ID",bundleIdDescription:"จำเป็นต้องใช้ Bundle ID ของแอป Apple OAuth"},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:"ไม่มีการเพิ่มข้อมูล"},viewDocument:"ดูเอกสาร",twitter:{enable:"เปิดใช้งานการเข้าสู่ระบบ X",clientId:"ID ลูกค้า",clientIdDescription:"ต้องระบุ Client ID ของแอปพลิเคชัน X OAuth",clientSecret:"รหัสลับของไคลเอนต์",clientSecretDescription:"จำเป็นต้องมี Client Secret ของแอปพลิเคชัน X OAuth"}},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:"คำสั่งติดตั้ง"};export{e as default};