@abtnode/blocklet-services 1.17.8-beta-20260119-102944-6ba93a16 → 1.17.8-beta-20260125-093329-64b43854

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 (309) hide show
  1. package/api/index.js +5 -0
  2. package/api/libs/connect/session.js +33 -39
  3. package/api/middlewares/launcher-login.js +1 -2
  4. package/api/routes/federated.js +1 -2
  5. package/api/routes/oauth/server.js +1 -2
  6. package/api/routes/user-session.js +0 -2
  7. package/api/routes/user.js +61 -41
  8. package/api/services/auth/connect/destroy-self.js +0 -2
  9. package/api/services/auth/connect/invite.js +0 -2
  10. package/api/services/auth/connect/issue-passport.js +0 -2
  11. package/api/services/auth/connect/receive-transfer-app-owner.js +0 -2
  12. package/api/services/auth/connect/verify-destroy.js +0 -2
  13. package/api/services/auth/connect/verify-elevated.js +0 -2
  14. package/api/services/auth/session.js +1 -36
  15. package/api/util/user-util.js +1 -2
  16. package/dist/assets/{AdapterDayjs-CYW0YvmK.js → AdapterDayjs-B5owpIH3.js} +1 -1
  17. package/dist/assets/{Google-DKRt92nm.js → Google-efeywUOs.js} +1 -1
  18. package/dist/assets/{LottiePlayer.modern-CeQuigIa.js → LottiePlayer.modern-CE8erevJ.js} +1 -1
  19. package/dist/assets/access-control-BzsCJj-F.js +14 -0
  20. package/dist/assets/{actions-DydkTgA0.js → actions-DbuL4r3Z.js} +1 -1
  21. package/dist/assets/actions-Dm98-Dap.js +64 -0
  22. package/dist/assets/{add-component-core-nc1ps0ni.js → add-component-core-BKVGCdxY.js} +21 -21
  23. package/dist/assets/add-resource-Cxa0mbrd.js +1 -0
  24. package/dist/assets/{addon-DfWedLEC.js → addon-B1KwZDQ5.js} +1 -1
  25. package/dist/assets/advanced-B62UUhxe.js +14 -0
  26. package/dist/assets/{aigne-6nMSoyeQ.js → aigne-jjaGOQQ7.js} +1 -1
  27. package/dist/assets/api-BMcHDEnt.js +1 -0
  28. package/dist/assets/appearance-_ZB7EroL.js +1 -0
  29. package/dist/assets/{ar-DOhYGTlW.js → ar-BJmSv7rn.js} +1 -1
  30. package/dist/assets/audit-logs-DF2wcdWX.js +35 -0
  31. package/dist/assets/authorize-C6nOsMWm.js +1 -0
  32. package/dist/assets/{base-chart-DcZV4ZCI.js → base-chart-D_u2nVGm.js} +1 -1
  33. package/dist/assets/{base32-7iZvvdX8.js → base32-D79Y2AcQ.js} +1 -1
  34. package/dist/assets/bind-account-BIj9FA7d.js +1 -0
  35. package/dist/assets/branding-BEGHWROe.js +40 -0
  36. package/dist/assets/{branding-CwSyd5WC.js → branding-C86_64it.js} +3 -3
  37. package/dist/assets/branding-Dqv4_zpD.js +1 -0
  38. package/dist/assets/bundle-avatar-Cy8tSSSQ.js +1 -0
  39. package/dist/assets/button-DMYwcDVh.js +1 -0
  40. package/dist/assets/{click-to-copy-BgIYUMoo.js → click-to-copy-BCjXD9Nd.js} +1 -1
  41. package/dist/assets/{cloneDeep-YxES7wNt.js → cloneDeep-q2Jbqwkh.js} +1 -1
  42. package/dist/assets/{collapse-RMuUWnK3.js → collapse-CBrasNzu.js} +1 -1
  43. package/dist/assets/complete-CCe1VfI6.js +39 -0
  44. package/dist/assets/{component-CuKviNC8.js → component-DLlaIYmq.js} +37 -37
  45. package/dist/assets/config-BccEmD3I.js +53 -0
  46. package/dist/assets/config-C0CmuuRP.js +1 -0
  47. package/dist/assets/config-CsQBU86s.js +32 -0
  48. package/dist/assets/{config-navigation-hDihVsjx.js → config-navigation-D46rq0IX.js} +11 -11
  49. package/dist/assets/config-space-DLjHQVCq.js +1 -0
  50. package/dist/assets/{confirm-CdVn5WdC.js → confirm-ClxC2cDv.js} +1 -1
  51. package/dist/assets/connect-9CgvkPOq.js +1 -0
  52. package/dist/assets/{connect-Dy0Y8HRB.js → connect-C1q4hvQ3.js} +1 -1
  53. package/dist/assets/connect-DXjJ46DL.js +5 -0
  54. package/dist/assets/connect-to-CbgQNAwh.js +1 -0
  55. package/dist/assets/{content-layout-Dlmn5DW6.js → content-layout-BH_g_OCf.js} +1 -1
  56. package/dist/assets/{create-passport-svg-hldNORaB.js → create-passport-svg-Ct68e5tm.js} +1 -1
  57. package/dist/assets/{createClass-CgfWUrk8.js → createClass-CeMEAEuP.js} +1 -1
  58. package/dist/assets/dashboard-y1fk-IQM.js +93 -0
  59. package/dist/assets/{de-CtKPdGk6.js → de-B2IoQCYX.js} +1 -1
  60. package/dist/assets/{delete-confirm-CkiUXocp.js → delete-confirm-CxRbnJU_.js} +1 -1
  61. package/dist/assets/{did-address-CG36eCOx.js → did-address-BhAIkFPZ.js} +1 -1
  62. package/dist/assets/{domain-CDTeLbkZ.js → domain-CMJp7emz.js} +1 -1
  63. package/dist/assets/domain-action-card-CKlATj2V.js +28 -0
  64. package/dist/assets/domains-CQs-XM9-.js +1 -0
  65. package/dist/assets/email-CYR31d5d.js +17 -0
  66. package/dist/assets/{empty-spinner-DB1GKIOS.js → empty-spinner-DzVQ0tC1.js} +1 -1
  67. package/dist/assets/engine-ByRLynLu.js +1 -0
  68. package/dist/assets/{es-BSYtSZPg.js → es-nlHqTKrO.js} +1 -1
  69. package/dist/assets/exchange-passport-BAD6oRbd.js +1 -0
  70. package/dist/assets/{fallback-D-IHOW-7.js → fallback-CJFJeDKq.js} +1 -1
  71. package/dist/assets/{form-text-input-CPLafaTk.js → form-text-input-Dq_8KU_Y.js} +2 -2
  72. package/dist/assets/{form-wrapper-kWYD3nZz.js → form-wrapper-YOmD-sDI.js} +1 -1
  73. package/dist/assets/{form-Co-tgocU.js → form-zHvITlPG.js} +3 -3
  74. package/dist/assets/{fr-C35fi7h9.js → fr-LrrW00cI.js} +1 -1
  75. package/dist/assets/{fuel-BFx1ShM2.js → fuel-CU-CpANh.js} +1 -1
  76. package/dist/assets/gen-access-key-Fb9M1v-f.js +1 -0
  77. package/dist/assets/gen-simple-access-key-BgYT9wM-.js +1 -0
  78. package/dist/assets/get-safe-url-CCXmZ6Ty.js +1 -0
  79. package/dist/assets/hi-DxZE2HUh.js +5 -0
  80. package/dist/assets/home-Cy8jLKNF.js +1 -0
  81. package/dist/assets/{id-DoVb0JYr.js → id-C3U8Kyb0.js} +1 -1
  82. package/dist/assets/{iframe-DUzp97tk.js → iframe-CZ9tjsFz.js} +1 -1
  83. package/dist/assets/{index-8RHrVCC6.js → index-B-yh2KQb.js} +1 -1
  84. package/dist/assets/index-B2LgdSh1.js +242 -0
  85. package/dist/assets/index-BJ69cdwn.js +88 -0
  86. package/dist/assets/index-BJCzMYyG.js +832 -0
  87. package/dist/assets/{index-BUhEyicQ.js → index-BZxTtTlP.js} +1 -1
  88. package/dist/assets/index-Bg0Lw3eZ.js +150 -0
  89. package/dist/assets/{index-C1fKsLzf.js → index-Bij9abGY.js} +2 -2
  90. package/dist/assets/index-BkgA3JrZ.js +124 -0
  91. package/dist/assets/{index-VKjWmvRV.js → index-BqISx1lI.js} +1 -1
  92. package/dist/assets/index-BsIQdVmB.js +29 -0
  93. package/dist/assets/{index-CfvGuvbD.js → index-BtHiIOEI.js} +1 -1
  94. package/dist/assets/index-BtxDkXoY.js +7 -0
  95. package/dist/assets/{index-DqcciDRh.js → index-CKgbiYHC.js} +2 -2
  96. package/dist/assets/index-CQz-yW1Q.js +120 -0
  97. package/dist/assets/{index-Cax1AxL9.js → index-CSdd2W7t.js} +1 -1
  98. package/dist/assets/{index-D3BuekEe.js → index-CYam9iu7.js} +5 -5
  99. package/dist/assets/index-CZc0agHR.js +1 -0
  100. package/dist/assets/index-Cb9H09Dz.js +1 -0
  101. package/dist/assets/{index-D1Fa760B.js → index-CtCzpHpi.js} +1 -1
  102. package/dist/assets/index-D0VFBmtN.js +280 -0
  103. package/dist/assets/{index-3H6a5edM.js → index-D1HHdOwz.js} +2 -2
  104. package/dist/assets/{index-B9FojAjj.js → index-DDpk_EEp.js} +1 -1
  105. package/dist/assets/{index-Di2nSesc.js → index-DPbBn0Vu.js} +1 -1
  106. package/dist/assets/{index-D6pCyJv8.js → index-DbbtJMIS.js} +1 -1
  107. package/dist/assets/index-DgwyiIiW.js +1 -0
  108. package/dist/assets/{index-Bo9KtpTY.js → index-Dh38UJiv.js} +1 -1
  109. package/dist/assets/{index-CqCXPf7W.js → index-DvtkahBB.js} +1 -1
  110. package/dist/assets/index-Dw9kO-TK.js +7 -0
  111. package/dist/assets/{index-DFUM0Pvk.js → index-E0k6Os1B.js} +1 -1
  112. package/dist/assets/index-L6md5GCk.js +6 -0
  113. package/dist/assets/index-VTJ4vv2F.js +200 -0
  114. package/dist/assets/{index-CEJb82tA.js → index-WY8_4PO1.js} +1 -1
  115. package/dist/assets/{index-ZzcJ7eKO.js → index-lGLHoHAP.js} +1 -1
  116. package/dist/assets/{index-Cx0E03Bs.js → index-rh1DYsh2.js} +3 -3
  117. package/dist/assets/{index-C_kNXHsF.js → index-u8Hqob_G.js} +1 -1
  118. package/dist/assets/index-vQWAt26Z.js +81 -0
  119. package/dist/assets/info-outline-rounded-CTki6xsp.js +1 -0
  120. package/dist/assets/{invitation-BP8hOEFv.js → invitation-CrLJgh5y.js} +6 -6
  121. package/dist/assets/{invitations-C8aZLxdl.js → invitations-Cs7LYbh9.js} +2 -2
  122. package/dist/assets/invite-B0wKu-K4.js +1 -0
  123. package/dist/assets/issue-passport-B1azomgq.js +1 -0
  124. package/dist/assets/item-CcfCB60B.js +1 -0
  125. package/dist/assets/{ja-DZPUwZ9l.js → ja-Cv-fddix.js} +1 -1
  126. package/dist/assets/{ko-q4i4r9g6.js → ko-Cy3G6t2o.js} +1 -1
  127. package/dist/assets/{landing-page-JLA-ZD1t.js → landing-page-3yvA3dHp.js} +1 -1
  128. package/dist/assets/{launch-result-message-DJqF-slD.js → launch-result-message-CYcW9uFA.js} +1 -1
  129. package/dist/assets/layout-DPEeowZp.js +29 -0
  130. package/dist/assets/{list-3MUy-8Ol.js → list-BtmehYr0.js} +3 -3
  131. package/dist/assets/{list-header-BEZSwSji.js → list-header-DqG9VFur.js} +1 -1
  132. package/dist/assets/list-qef9ITY3.js +2 -0
  133. package/dist/assets/localization-VGnaiTRr.js +1 -0
  134. package/dist/assets/{log-Bq445Z1e.js → log-BDLuou50.js} +1 -1
  135. package/dist/assets/logger-Cn2_Ur4V.js +1 -0
  136. package/dist/assets/login-BTzBeYdR.js +1 -0
  137. package/dist/assets/login-method-item-T1v3TnPG.js +1 -0
  138. package/dist/assets/login-oauth-callback-f1uXdv_Y.js +1 -0
  139. package/dist/assets/{logo-uploader-CyZuvhwV.js → logo-uploader-YNwnzUQw.js} +1 -1
  140. package/dist/assets/{lost-passport-BiYg3QQI.js → lost-passport-Cv4fSebj.js} +2 -2
  141. package/dist/assets/metadata-BeJTujvj.js +55 -0
  142. package/dist/assets/{nav-menu-DSdXRbfg.js → nav-menu-CefEor9d.js} +1 -1
  143. package/dist/assets/{omit-Dq0FLBY8.js → omit-vVhnMpHQ.js} +1 -1
  144. package/dist/assets/{open-window-Dyu79ome.js → open-window-Cq_Eb4d0.js} +1 -1
  145. package/dist/assets/over-due-invoice-payment-Cx9nVkCY.js +1 -0
  146. package/dist/assets/overview-UWHPi3tV.js +116 -0
  147. package/dist/assets/{page-header-qdK3sAJh.js → page-header-DayahqMa.js} +1 -1
  148. package/dist/assets/passport-D7GEY4wO.js +1 -0
  149. package/dist/assets/passport-item-CpICtT-w.js +1 -0
  150. package/dist/assets/{permission-CvrrGfG6.js → permission-ozcooui7.js} +1 -1
  151. package/dist/assets/preferences-RHaCYv9t.js +1 -0
  152. package/dist/assets/profile-embed-BLPUgZl6.js +1 -0
  153. package/dist/assets/provider-icon-Blmpf_9p.js +1 -0
  154. package/dist/assets/pt-CLIZ5rGV.js +5 -0
  155. package/dist/assets/publish-resource-Cn5CEQma.js +1 -0
  156. package/dist/assets/{react-beautiful-dnd.esm-CWJ5I9Zv.js → react-beautiful-dnd.esm-L71UpeRK.js} +1 -1
  157. package/dist/assets/{react-stripe.esm-B-FTN8ep.js → react-stripe.esm-B1zA7yon.js} +1 -1
  158. package/dist/assets/{required-DnQpCGsD.js → required-jUJP5eu8.js} +1 -1
  159. package/dist/assets/ru-DoXNa8xl.js +5 -0
  160. package/dist/assets/{runtime-B_ZLP4FF.js → runtime-CGShJ0Po.js} +1 -1
  161. package/dist/assets/{sanitize-Bzl4lTuH.js → sanitize-BHeUjEo7.js} +1 -1
  162. package/dist/assets/sdk-C05lZFmW.js +1 -0
  163. package/dist/assets/{section-CZylgxjz.js → section-BHNJgwmP.js} +1 -1
  164. package/dist/assets/security-_Iru3mSY.js +22 -0
  165. package/dist/assets/session-DpYXqKUu.js +1 -0
  166. package/dist/assets/setup-DCnaHhf3.js +24 -0
  167. package/dist/assets/{shorten-label-CuBHsWUR.js → shorten-label-NmLkBKIj.js} +1 -1
  168. package/dist/assets/simple-select--uh08-vW.js +1 -0
  169. package/dist/assets/{spaces-ix8u0ZiI.js → spaces-gCrHfJB8.js} +1 -1
  170. package/dist/assets/start-S0ZFYLEE.js +187 -0
  171. package/dist/assets/{starting-progress-CWp5fTY0.js → starting-progress-BSgBADJS.js} +1 -1
  172. package/dist/assets/{status-Dn_LKaNp.js → status-DqZ0B8Xa.js} +1 -1
  173. package/dist/assets/{step-actions-DIZRcnXf.js → step-actions-DxJMBPwi.js} +1 -1
  174. package/dist/assets/{studio-CVIa8-XY.js → studio-B2SgpXxn.js} +1 -1
  175. package/dist/assets/{switch-BbyTGEOo.js → switch-D9wb-oPu.js} +1 -1
  176. package/dist/assets/{switch-control-BRjXGc1d.js → switch-control-Dl1BCyFd.js} +1 -1
  177. package/dist/assets/{table-tips-Dvmdodc5.js → table-tips-C5NrUDu8.js} +1 -1
  178. package/dist/assets/team-DXPe7dCA.js +146 -0
  179. package/dist/assets/th-DmzEcJam.js +5 -0
  180. package/dist/assets/{theme-mode-toggle-D3bcd10D.js → theme-mode-toggle-BYQvzsDR.js} +1 -1
  181. package/dist/assets/traffic-BandB_6R.js +1 -0
  182. package/dist/assets/transfer-Dky9H1bl.js +16 -0
  183. package/dist/assets/unsubscribe-D0la_6Ib.js +1 -0
  184. package/dist/assets/{use-app-logo-IRizt64R.js → use-app-logo-0G6x82Xn.js} +1 -1
  185. package/dist/assets/{use-blocklet-logo-Cf1j7pQz.js → use-blocklet-logo-IV_8xnB2.js} +1 -1
  186. package/dist/assets/{use-mobile-DFkQ5N0b.js → use-mobile-CEr7zhO3.js} +1 -1
  187. package/dist/assets/{use-mobile-DwGMuJlg.js → use-mobile-DAngW3li.js} +1 -1
  188. package/dist/assets/{use-mobile-CyUZDIaX.js → use-mobile-kXWiSSQD.js} +1 -1
  189. package/dist/assets/{use-server-logo-KZn9RrZd.js → use-server-logo-BVKQ1t0s.js} +1 -1
  190. package/dist/assets/{use-window-close-Dpj5UcYT.js → use-window-close-C-WcChaL.js} +1 -1
  191. package/dist/assets/{useAsync-DfiOQMQ_.js → useAsync-DRrTtbU_.js} +1 -1
  192. package/dist/assets/{useAsync-CkKfnulP.js → useAsync-D_y3bEgl.js} +1 -1
  193. package/dist/assets/{useAsyncRetry-C4R9ufi-.js → useAsyncRetry-BZ4R17gr.js} +2 -2
  194. package/dist/assets/{useLocalStorage-BQfIniHX.js → useLocalStorage-C5E7FrUa.js} +1 -1
  195. package/dist/assets/{user-center-6K47tx8j.js → user-center-D-UOqGpV.js} +5 -5
  196. package/dist/assets/{user-follower-BwzTutxU.js → user-follower-_9B1O2CU.js} +1 -1
  197. package/dist/assets/util-Bf1lWzn8.js +1 -0
  198. package/dist/assets/util-Dn9RqFJI.js +1 -0
  199. package/dist/assets/utils-eOkzHJzR.js +1 -0
  200. package/dist/assets/{vendor-arcblock-Dll6qxMT.js → vendor-arcblock-B6JCofz3.js} +1 -1
  201. package/dist/assets/vendor-hooks-Bt9Vv36g.js +1 -0
  202. package/dist/assets/{vendor-mui-core-CV-FnYH_.js → vendor-mui-core-D6nniiQs.js} +2 -2
  203. package/dist/assets/{vendor-mui-x-DwN6dcQH.js → vendor-mui-x-Ds-5Y7YM.js} +1 -1
  204. package/dist/assets/vendor-utils-BbcnEeJI.js +23 -0
  205. package/dist/assets/{vendor-ux-CLT2i3Pv.js → vendor-ux-hzekFYg2.js} +123 -123
  206. package/dist/assets/vi-6MG7Pp6O.js +5 -0
  207. package/dist/assets/wait-connect-DmtX5SsS.js +1 -0
  208. package/dist/assets/wallet-hidden-topbar-OBN14KiV.js +68 -0
  209. package/dist/assets/wizard-Q2Vm8Y9G.js +8 -0
  210. package/dist/assets/wizard-components-CON7Dump.js +52 -0
  211. package/dist/assets/wrap-locale-BGMozDAq.js +1 -0
  212. package/dist/assets/{zh-G2I44gfs.js → zh-B9y8LJ3-.js} +1 -1
  213. package/dist/assets/{zh-CJ9vCpmv.js → zh-Dfkd9CXx.js} +1 -1
  214. package/dist/assets/{zh-tw-C4Juvs-i.js → zh-tw-CbtwifV_.js} +1 -1
  215. package/dist/index.html +1 -1
  216. package/package.json +44 -44
  217. package/dist/assets/access-control-RI6LQbSm.js +0 -14
  218. package/dist/assets/actions-BlWED76c.js +0 -64
  219. package/dist/assets/add-resource-BVOdOQSW.js +0 -1
  220. package/dist/assets/advanced-CuKHqbLO.js +0 -14
  221. package/dist/assets/api-B8JXuhVp.js +0 -1
  222. package/dist/assets/appearance-C9TkbSjV.js +0 -1
  223. package/dist/assets/audit-logs-DKGke9hI.js +0 -35
  224. package/dist/assets/authorize-DkSqywe8.js +0 -1
  225. package/dist/assets/bind-account-DOwM9Nhe.js +0 -1
  226. package/dist/assets/branding-Cak2s8bn.js +0 -1
  227. package/dist/assets/branding-lcfxmmPp.js +0 -40
  228. package/dist/assets/bundle-avatar-DwiOyeMO.js +0 -1
  229. package/dist/assets/button-uUU4Wycr.js +0 -1
  230. package/dist/assets/complete-Udiv_yFp.js +0 -39
  231. package/dist/assets/config-6IwEgT3b.js +0 -32
  232. package/dist/assets/config-CJwxv2uK.js +0 -1
  233. package/dist/assets/config-D1OcHGlN.js +0 -53
  234. package/dist/assets/config-space-DfstlHnF.js +0 -1
  235. package/dist/assets/connect-CT2vMz6l.js +0 -5
  236. package/dist/assets/connect-DA7RO2yv.js +0 -1
  237. package/dist/assets/connect-to-CQMUbQkH.js +0 -1
  238. package/dist/assets/dashboard-BvI3ii8Z.js +0 -93
  239. package/dist/assets/domain-action-card-kMPYS2Nj.js +0 -28
  240. package/dist/assets/domains-TI6o1CvX.js +0 -1
  241. package/dist/assets/email-DHRHueET.js +0 -17
  242. package/dist/assets/engine-D_fEFx9_.js +0 -1
  243. package/dist/assets/exchange-passport-Cc872mjQ.js +0 -1
  244. package/dist/assets/gen-access-key-DrgLVRbm.js +0 -1
  245. package/dist/assets/gen-simple-access-key-B24d6k7g.js +0 -1
  246. package/dist/assets/get-safe-url-beob4f2C.js +0 -1
  247. package/dist/assets/hi-5fpYJkiW.js +0 -5
  248. package/dist/assets/home-Dw18IODa.js +0 -1
  249. package/dist/assets/index--WQuhwJL.js +0 -6
  250. package/dist/assets/index-2M4w6J9r.js +0 -29
  251. package/dist/assets/index-B-8044Gs.js +0 -280
  252. package/dist/assets/index-B6l4xGy5.js +0 -7
  253. package/dist/assets/index-BOPR4Iyc.js +0 -88
  254. package/dist/assets/index-BeunkI-Z.js +0 -242
  255. package/dist/assets/index-Bpic07NM.js +0 -200
  256. package/dist/assets/index-C4ZzROeE.js +0 -120
  257. package/dist/assets/index-CXp5SI_f.js +0 -832
  258. package/dist/assets/index-DH4rC-7M.js +0 -1
  259. package/dist/assets/index-DKzBOJCu.js +0 -81
  260. package/dist/assets/index-DL0wTcgx.js +0 -1
  261. package/dist/assets/index-DWHFecw2.js +0 -150
  262. package/dist/assets/index-DcW3jqfL.js +0 -6
  263. package/dist/assets/index-Vf51dp11.js +0 -124
  264. package/dist/assets/index-bEFOmVth.js +0 -1
  265. package/dist/assets/info-outline-rounded-DlgANjBB.js +0 -1
  266. package/dist/assets/invite-Cd5zEHFb.js +0 -1
  267. package/dist/assets/issue-passport-D7zqv3Al.js +0 -1
  268. package/dist/assets/item-DNj7ORqk.js +0 -1
  269. package/dist/assets/joi-browser.min-CUdv8seQ.js +0 -1
  270. package/dist/assets/joi-browser.min-eEVeW7LC.js +0 -1
  271. package/dist/assets/layout-Cwvm7lmD.js +0 -29
  272. package/dist/assets/list-BSXHuqLM.js +0 -2
  273. package/dist/assets/localization-Dond4H78.js +0 -1
  274. package/dist/assets/logger-CCAAJ2Xo.js +0 -1
  275. package/dist/assets/login-dc2t9Qyo.js +0 -1
  276. package/dist/assets/login-method-item-CyTsqz88.js +0 -1
  277. package/dist/assets/login-oauth-callback-Bext19kc.js +0 -1
  278. package/dist/assets/metadata-B2-Ltdko.js +0 -55
  279. package/dist/assets/over-due-invoice-payment-DzUsy6q0.js +0 -1
  280. package/dist/assets/overview-0TBmi-_i.js +0 -116
  281. package/dist/assets/passport-BhEaZ-sr.js +0 -1
  282. package/dist/assets/passport-item-DHwif94N.js +0 -1
  283. package/dist/assets/preferences-BBSWzZiT.js +0 -1
  284. package/dist/assets/profile-embed-shcOdRUI.js +0 -1
  285. package/dist/assets/provider-icon-DO2PqSth.js +0 -1
  286. package/dist/assets/pt-BFCHl6F1.js +0 -5
  287. package/dist/assets/publish-resource-CMuHIOUf.js +0 -1
  288. package/dist/assets/ru-CSTl62kK.js +0 -5
  289. package/dist/assets/sdk-CktKu_IW.js +0 -1
  290. package/dist/assets/security-DHRU8k0u.js +0 -22
  291. package/dist/assets/session-Bp3LV7zJ.js +0 -1
  292. package/dist/assets/setup-B6-Ei_3X.js +0 -24
  293. package/dist/assets/simple-select-nI-W90c_.js +0 -1
  294. package/dist/assets/start-oRp78RMQ.js +0 -187
  295. package/dist/assets/team-BTz28XqK.js +0 -146
  296. package/dist/assets/th-D75Dlluo.js +0 -5
  297. package/dist/assets/traffic-Cea69sMW.js +0 -1
  298. package/dist/assets/transfer-BydXCVCg.js +0 -16
  299. package/dist/assets/unsubscribe-BjAjx-Fl.js +0 -1
  300. package/dist/assets/util-DkTwHdRu.js +0 -1
  301. package/dist/assets/util-DySzCymV.js +0 -1
  302. package/dist/assets/vendor-hooks-DAZ1H6Va.js +0 -1
  303. package/dist/assets/vendor-utils-BzQg432x.js +0 -23
  304. package/dist/assets/vi-D1mKYrmb.js +0 -5
  305. package/dist/assets/wait-connect-q0_7mz_u.js +0 -1
  306. package/dist/assets/wallet-hidden-topbar-joIVZ1nl.js +0 -68
  307. package/dist/assets/wizard-C5Kl-g70.js +0 -8
  308. package/dist/assets/wizard-components-DQrlaeeW.js +0 -52
  309. package/dist/assets/wrap-locale-5DJTJTXP.js +0 -1
@@ -0,0 +1,242 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=[window.__toCdnUrl("assets/vendor-ux-DYcPPYq2.css"),window.__toCdnUrl("assets/index-DrCTi6nm.css"),window.__toCdnUrl("assets/index-_3Fxot8G.css")])))=>i.map(i=>d[i]);
2
+ import{r as k,u as Et,m as nt,L as ve,g as go,i as zs,k as Bs,l as ft}from"./vendor-react-DX7tU9aY.js";import{L as We,j as e,al as a,aY as $t,X as n,an as xe,I as ce,d5 as Os,d6 as Ns,cs as ko,cu as lt,T as L,d7 as Ws,bo as Vs,s as jo,cp as yo,d8 as _s,d9 as Ms,Z as it,aT as Ce,aS as Us,da as Fs,a6 as Ge,b4 as ct,cC as qt,cR as Hs,bR as Gs,bK as Fe,bW as Js,bI as tt,R as J,a7 as Te,cG as Xs,Q as wo,N as vo,P as At,aj as Co,p as Ro,M as be,a4 as Zs,b1 as So,a0 as To,c3 as Ys,C as Xe,aH as Ks,S as Io,A as re,b3 as Se,db as Xt,bB as ot,dc as Do,W as Eo,U as Lt,aN as $o,cn as Qs,G as qo,cU as er,aO as tr,aP as or,cV as sr,cW as rr,bk as Ao,ar as nr,dd as lr,a2 as Lo,a1 as st,cX as Zt,bh as ir,bi as cr,de as ar,df as dr,bN as Ct,z as ur,F as pr,bJ as hr,bL as xt}from"./vendor-mui-core-D6nniiQs.js";import{W as ge,X as je,V as De,w as mr,bJ as le,F as me,bE as br,j as fr,n as Yt,bK as xr,bL as gr,ad as Kt,bz as kr,bM as jr,bN as yr,bO as wr}from"./index-BJCzMYyG.js";import{v as vr,z as ue,x as Pt,E as Po,p as Cr}from"./vendor-utils-BbcnEeJI.js";import{V as G,bA as zo,b_ as Rr,b2 as Le,b7 as Bo,bi as Oo,b$ as Sr,aI as zt,y as O,bZ as Bt,c0 as Ot,F as ae,_ as No,ag as Ne,aG as at,b9 as Wo}from"./vendor-ux-hzekFYg2.js";import{C as dt}from"./confirm-ClxC2cDv.js";import{u as Ve}from"./session-DpYXqKUu.js";import{W as Rt}from"./did-address-BhAIkFPZ.js";import{E as Ze}from"./empty-spinner-DzVQ0tC1.js";import{B as Nt}from"./bundle-avatar-Cy8tSSSQ.js";import{S as Ie}from"./shorten-label-NmLkBKIj.js";import{L as Wt}from"./list-header-DqG9VFur.js";import{C as Vo}from"./click-to-copy-BCjXD9Nd.js";import{t as Qt}from"./question-mark-circle.svg-B0bcUgC5.js";import{v as Tr,b as Ir}from"./vendor-hooks-Bt9Vv36g.js";import{u as He}from"./useSetState-CUbypYGT.js";import{e as Dr}from"./engine-ByRLynLu.js";import"./api-BMcHDEnt.js";import{T as Er,S as $r}from"./vendor-mui-x-Ds-5Y7YM.js";import{D as eo,C as to,P as oo}from"./react-beautiful-dnd.esm-L71UpeRK.js";import{u as _o,a as qr,b as Ar,d as Lr,e as Pr}from"./wait-connect-DmtX5SsS.js";import{f as ke}from"./index-DBs9Ljax.js";import{c as zr,A as Mo,S as Br,U as Or,r as Nr}from"./item-CcfCB60B.js";import{D as Wr}from"./delete-confirm-CxRbnJU_.js";import{g as Uo}from"./get-safe-url-CCXmZ6Ty.js";import{u as Ae}from"./index-u8Hqob_G.js";import{M as Vr}from"./index-CSdd2W7t.js";import{p as _r}from"./purify.es-HRjpPm7y.js";import{r as Mr}from"./index-DDpk_EEp.js";import"./vendor-arcblock-B6JCofz3.js";import"./raf-schd.esm-BZ-2sjAE.js";function Vt({did:t,projectId:o,title:s,logo:r,describe:l}){const i=`${`${ge}/api/project/${t}/${o}/logo/upload`}/${r}`,[d,u]=k.useState(!1),x=We(p=>p.breakpoints.down("md"));return e.jsxs(a,{sx:{display:"flex",flexDirection:"row",color:d?"primary.main":"grey.900",gap:1},onPointerEnter:()=>u(!0),onPointerLeave:()=>u(!1),children:[e.jsx($t,{sx:{borderRadius:1},src:i}),e.jsxs(a,{children:[e.jsx(Ie,{hiddenTip:!0,maxLength:"24",sx:{fontSize:"14px",fontWeight:"500",color:x?"primary.main":""},children:s||"/"}),e.jsx(Ie,{hiddenTip:!0,maxLength:"58",sx:{fontSize:"12px",color:x||d?"primary.main":"grey.700"},children:l||"/"})]})]})}Vt.propTypes={projectId:n.string.isRequired,did:n.string.isRequired,title:n.string.isRequired,logo:n.string.isRequired,describe:n.string.isRequired};function Fo({initUrl:t=null}){const o=Et(),s=t?.searchParams.get("tenantScope")||"",{t:r,locale:l}=G(),{api:c}=je(),{api:i}=Ve(),[d,u]=k.useState(!0),{blocklet:x}=De(),[p,m]=k.useState(null),[f,b]=k.useState(!1),h=We(E=>E.breakpoints.down("xl")),j=We(E=>E.breakpoints.down("md")),{componentDid:v=""}=nt(),[g,C]=k.useState(null),I=`publish-${x.meta.did}`,R=zo(I),[y,T]=k.useState({searchText:R.searchText||"",pageSize:R.rowsPerPage||10,page:1}),N=()=>{c.getProjects({input:{did:x.meta.did,componentDid:v,tenantScope:s}}).then(E=>{const D=E?.projects||[];u(!1),C(D)}).catch(E=>{u(!1),O.error(E.message)})},z=()=>{o(`${le}/create/none/0.0.0`,{replace:!0})},W=E=>{m(E)},X=()=>{u(!1),b(!0)},$=()=>{b(!1),m(null)},A=E=>{O.error(E.message),b(!1),m(null)},w=E=>{if(!E?.deleted){O.error("Delete project failed");return}N(),b(!1),m(null)};k.useEffect(()=>{N()},[]);const S=k.useMemo(()=>{if(!y.searchText)return g;let E=y.searchText?.trim();return E?(E=Rr(E).toLocaleLowerCase(),g.filter(D=>D.blockletTitle.toLowerCase().includes(E)||D.blockletDid.toLowerCase().includes(E))):g},[g,y.searchText]);if(!g&&d)return e.jsx(a,{sx:{display:"flex",justifyContent:"center",alignItems:"center",marginTop:"40px"},children:e.jsx(Ze,{})});if(!g)return null;if(!g.length)return e.jsxs(a,{sx:{display:"flex",flexDirection:"column",alignItems:"center",pt:10},children:[e.jsx(a,{sx:{fontSize:20,fontWeight:"bold",mb:3},children:r("blocklet.publish.blockletEmptyTip")}),e.jsx(a,{sx:{fontSize:14,color:"text.secondary",mb:3},children:r("blocklet.publish.createBlockletTip")}),e.jsx(Le,{onClick:z,variant:"contained",children:r("blocklet.publish.createBlocklet")})]});const Y=[{label:"Blocklet",name:"blockletTitle",minWidth:160,options:{customBodyRenderLite:E=>{const D=g[E];return e.jsx(ve,{to:`${D.id}`,children:e.jsx(Vt,{did:x.meta.did,projectId:D.id,logo:D.blockletLogo,title:D.blockletTitle,describe:D.blockletDescription})})}}},{label:"Version",name:"blockletVersion",options:{searchable:!1,customBodyRender:E=>E?e.jsx(Bo,{type:"success",children:E}):""}},{label:"DID",name:"blockletDid",options:{customBodyRender:E=>E?e.jsx(Rt,{size:14,compact:!0,responsive:!1,did:E}):null}},h||v?null:{label:r("common.createdBy"),name:"createdBy",options:{customBodyRender:E=>E?e.jsx(Rt,{onClick:()=>{o(`${ge}/admin/members?did=${E}`)},style:{cursor:"pointer"},size:14,compact:!0,copyable:!1,showQrcode:!1,responsive:!1,did:E}):null}},h||v?null:{label:r("common.scope"),name:"componentDid",options:{customBodyRender:E=>{const D=(x.children||[]).find(_=>_.meta.did===E);return D?e.jsxs(a,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-start"},children:[e.jsx(Nt,{size:14,blocklet:D,ancestors:[x]}),e.jsx(a,{sx:{ml:.5,color:"text.primary",fontSize:14},children:D.meta.title})]},E):""}}},h||s?null:{label:r("blocklet.publish.tenantScope"),name:"tenantScope",options:{customBodyRender:E=>e.jsx(a,{sx:{ml:.5,color:"text.primary",fontSize:14},children:e.jsx(Ie,{children:E})})}},{label:r("common.updatedAt"),name:"updatedAt",options:{searchable:!1,customBodyRender:E=>e.jsx(Oo,{value:Number(E),locale:l})}},{label:r("common.actions"),name:"actions",options:{searchable:!1,customBodyRenderLite:E=>{const D=g[E];return e.jsxs(a,{sx:{display:"flex"},children:[e.jsx(ve,{to:`${D.id}/new-release/none/${D.lastReleaseId}`,children:e.jsx(xe,{title:r("blocklet.publish.createRelease"),placement:"top",children:e.jsx(ce,{color:"primary","aria-label":"create",children:e.jsx(Os,{style:{fontSize:18}})})})}),!!D.lastReleaseId&&e.jsx(xe,{title:r("blocklet.publish.viewLastRelease",{name:D.blockletTitle}),placement:"top",children:e.jsx(ce,{color:"secondary","aria-label":"create",children:e.jsx(ve,{style:{display:"flex"},to:`${D.id}/view/${D.lastReleaseId}/${D.blockletVersion}`,children:e.jsx(Ns,{sx:{fontSize:18}})})})}),e.jsx(xe,{title:r("blocklet.publish.delete",{name:D.blockletTitle}),placement:"top",children:e.jsx(ce,{color:"primary","aria-label":"delete",onClick:()=>W(D),children:e.jsx(ko,{sx:{fontSize:18}})})})]})}}}].filter(Boolean),F=({page:E,rowsPerPage:D,searchText:_})=>{y.pageSize!==D?T(M=>({...M,searchText:"",pageSize:D,page:1})):y.page!==E+1?T(M=>({...M,searchText:"",page:E+1})):y.searchText!==_&&T(M=>({...M,searchText:_,page:1}))},K=f?e.jsx(mr,{open:!0,popup:!0,onClose:$,action:"check-has-project-id",locale:l,checkFn:i.get,saveConnect:!1,forceConnected:!1,checkTimeout:300*1e3,onSuccess:w,onError:A,extraParams:{projectId:p.id,did:x.meta.did,name:p.blockletTitle},messages:{title:r("blocklet.publish.deleteProject.title",{name:p.blockletTitle}),scan:r("blocklet.publish.deleteProject.scan",{name:p.blockletTitle}),confirm:r("blocklet.publish.deleteProject.confirm"),success:r("blocklet.publish.deleteProject.success")}}):null;return e.jsxs(Ur,{children:[e.jsx(Wt,{sx:{mb:2},left:e.jsxs(a,{sx:{display:"flex",flexDirection:"row",alignItems:"center"},children:[e.jsxs(L,{variant:"h4",children:[r("common.blocklets")," (",S.length,")"]}),e.jsx(xe,{title:r("blocklet.publish.createBlockletTip"),arrow:!0,placement:"right",children:e.jsx(Ws,{sx:{opacity:.6,fontSize:"1.1em",ml:1}})})]}),actions:e.jsxs(e.Fragment,{children:[e.jsx(Sr,{options:{searchPlaceholder:r("blocklet.list.searchPlaceholder"),searchDebounceTime:600,searchAlwaysOpen:j},search:y.searchText,searchText:y.searchText,searchTextUpdate:E=>T(D=>({...D,searchText:E})),searchClose:()=>T(E=>({...E,searchText:""})),onSearchOpen:()=>{}}),e.jsxs(Le,{onClick:z,variant:"contained",children:[e.jsx(lt,{style:{fontSize:"1.3em",marginRight:4}}),r("blocklet.publish.createBlocklet")]})]})}),e.jsx(zt,{className:"main-table",locale:l,data:S,columns:Y,options:{search:!1,sort:!1,download:!1,filter:!1,print:!1,viewColumns:!1,searchAlwaysOpen:!0,rowsPerPageOptions:[10,20,50,100]},durable:I,onChange:F}),p&&e.jsx(dt,{title:`${r("common.delete")} ${p.blockletTitle}`,description:r("blocklet.publish.deleteProject.description"),confirm:r("common.confirm"),onConfirm:X,onCancel:()=>m(null),children:e.jsx(a,{sx:{marginTop:2},children:[r("blocklet.publish.deleteProject.tip1"),r("blocklet.publish.deleteProject.tip2"),r("blocklet.publish.deleteProject.tip3")].map(E=>e.jsxs(a,{sx:{display:"flex",marginTop:1,flexDirection:"row",alignItems:"flex-start"},children:[e.jsx(Vs,{color:"warning",sx:{marginRight:1,fontSize:20,marginTop:"2px"}}),e.jsx(L,{component:"span",variant:"inherit",sx:{color:"text.secondary"},children:E})]}))})}),K]})}const Ur=jo(a)`
3
+ ${({theme:t})=>t.breakpoints.down("md")} {
4
+ .MuiTableRow-root {
5
+ border-color: ${({theme:t})=>t.palette.divider};
6
+ }
7
+ }
8
+ `;Fo.propTypes={initUrl:n.object};const Ho=(t,o)=>{if(!t)return"";try{return o?JSON.parse(t)[o]:JSON.parse(t)}catch{}return t};function Fr(){const{t,locale:o}=G(),{projectId:s}=nt(),{api:r}=je(),[l,c]=k.useState(!0),{blocklet:i}=De(),d=We(w=>w.breakpoints.down("md")),[u,x]=k.useState(null),[p,m]=k.useState(null),[f,b]=k.useState(null),h=window.env?.serverEndpoint,j=`releases-${i.meta.did}-${s}`,v=zo(j),[g,C]=k.useState({searchText:v.searchText||"",pageSize:v.rowsPerPage||10,page:1}),I=()=>{r.getReleases({input:{did:i.meta.did,projectId:s}}).then(w=>{const S=w?.releases||[];c(!1),x(S)}).catch(w=>{c(!1),O.error(w.message)})},R=()=>{r.doBatchQuery({getProject:{input:{did:i.meta.did,projectId:s}},getReleases:{input:{did:i.meta.did,projectId:s}}}).then(w=>{m(w.getProject.project||{}),x(w.getReleases.releases||[]),c(!1)}).catch(w=>{c(!1),O.error(w.message)})};k.useEffect(()=>{R()},[]);const[y,T]=k.useState(""),N=()=>{c(!1);const w=f.id;r.deleteRelease({input:{did:i.meta.did,projectId:s,releaseId:w}}).then(()=>{c(!1),I(),O.success(t("common.removeSuccess")),b(null)}).catch(S=>{c(!1),O.error(S.message)})},z=w=>{b(w)};if(!u&&l)return e.jsx(a,{sx:{display:"flex",justifyContent:"center",alignItems:"center",marginTop:"40px"},children:e.jsx(Ze,{})});if(!u)return null;const W=e.jsxs(yo,{className:"breadcrumbs","aria-label":"breadcrumb",children:[e.jsx(ve,{to:"..",children:t("common.blockletStudio")}),e.jsx(L,{sx:{color:"text.primary"},children:e.jsx(Ie,{maxLength:d?6:30,children:p.blockletTitle})})]});if(!u.length)return e.jsxs(e.Fragment,{children:[W,e.jsxs(a,{sx:{display:"flex",flexDirection:"column",alignItems:"center",pt:10},children:[e.jsx(a,{sx:{fontSize:20,fontWeight:"bold",mb:3},children:t("blocklet.publish.releaseEmptyTip")}),e.jsx(a,{sx:{fontSize:14,color:"text.secondary",mb:3},children:t("blocklet.publish.createReleaseTip")}),e.jsx(ve,{to:"create/none",children:e.jsx(Le,{variant:"contained",children:t("blocklet.publish.createRelease")})})]})]});const X=[{label:t("common.version"),name:"blockletVersion",minWidth:160,options:{customBodyRenderLite:w=>{const S=u[w];return e.jsx(ve,{to:`view/${S.id}/${S.blockletVersion}`,children:e.jsx(Vt,{did:i.meta.did,projectId:p.id,logo:S.blockletLogo,title:S.blockletVersion,describe:S.blockletTitle})})}}},{label:t("blocklet.publish.releaseNote"),name:"note",options:{customBodyRenderLite:w=>{const S=u[w];return e.jsx(L,{className:"note",children:Ho(S.note,"note")})}}},{label:t("common.status"),name:"status",options:{customBodyRender:w=>e.jsx(Bo,{type:w==="published"?"success":"warning",children:w==="published"?"Released":vr(w)})}},{label:t("common.lastPublishedAt"),name:"updatedAt",options:{customBodyRenderLite:w=>{const S=u[w];return S.status!==me.PROJECT.RELEASE_STATUS.published?"":e.jsx(Oo,{value:Number(S.updatedAt),locale:o})}}},{label:t("common.actions"),name:"actions",options:{customBodyRenderLite:w=>{const S=u[w];let Y="",F="";const K=S.status==="published";if(K){const D=ue(h,`/api/project/${i.meta.did}/${p.id}/${p.lastReleaseId}/release/blocklet.json`),_=new URL(h);_.pathname=ue(_.pathname,"/launch-blocklet/agreement"),_.searchParams.set("blocklet_meta_url",D),Y=_.href,F=ue(`${ge}/api/project/${i.meta.did}/${p.id}/${S.id}/download/${(S.files||[])[0]}`)}const E=p.blockletComponents?.some(D=>D.included)||S.uploadedResource?"pack":"resource";return e.jsxs(a,{sx:{display:"flex",alignItems:"center"},children:[K&&E==="pack"&&e.jsx(xe,{title:t("blocklet.publish.install",{name:p.blockletTitle}),placement:"top",children:e.jsx(ce,{color:"secondary","aria-label":"create",children:e.jsx("a",{style:{display:"flex"},href:Y,target:"_blank",rel:"noreferrer",children:e.jsx(_s,{sx:{fontSize:18}})})})}),K&&e.jsx(xe,{title:t("blocklet.publish.download",{name:p.blockletTitle}),placement:"top",children:e.jsx(ce,{color:"primary","aria-label":"download",children:e.jsx("a",{style:{display:"flex"},href:F,children:e.jsx(Ms,{sx:{fontSize:18}})})})}),e.jsx(xe,{title:t("blocklet.publish.delete",{name:p.blockletTitle}),placement:"top",children:e.jsx(ce,{color:"primary","aria-label":"delete",onClick:()=>z(S),children:e.jsx(ko,{sx:{fontSize:18}})})})]})}}}],$=({page:w,rowsPerPage:S,searchText:Y})=>{g.pageSize!==S?C(F=>({...F,searchText:"",pageSize:S,page:1})):g.page!==w+1?C(F=>({...F,searchText:"",page:w+1})):g.searchText!==Y&&C(F=>({...F,searchText:Y,page:1}))},A=u?.[0]?.blockletVersion||"0.0.0";return e.jsxs(Hr,{children:[e.jsx(Wt,{sx:{mb:2},left:W,actions:e.jsxs(e.Fragment,{children:[e.jsx(Le,{variant:"outlined",onClick:()=>{const w=ue(h,`/api/project/${i.meta.did}/${s}/blocklet.json`);T(w)},children:t("blocklet.publish.copyInstallUrl")}),e.jsx(ve,{to:`new-release/none/${A}`,children:e.jsxs(Le,{variant:"contained",children:[e.jsx(lt,{style:{fontSize:"1.3em",marginRight:4}}),t("blocklet.publish.createRelease")]})})]})}),e.jsx(it,{fullWidth:!0,maxWidth:"sm",open:y,onClose:()=>T(""),children:e.jsxs(a,{sx:{py:5,px:4,wordBreak:"break-all"},children:[e.jsx(L,{variant:"h6",sx:{mb:2},children:t("blocklet.publish.installResourceTip")}),e.jsx(Vo,{children:y}),e.jsxs(L,{sx:{mt:2},children:[t("blocklet.publish.installResourceTip2"),e.jsx("a",{style:{marginLeft:4},href:"https://www.arcblock.io/docs/blocklet-developer/how-to-use-install-url",target:"_blank",rel:"noreferrer",children:t("blocklet.publish.installResourceHelp")})]})]})}),e.jsx(zt,{className:"main-table",verticalKeyWidth:100,locale:o,data:u,columns:X,durable:j,options:{sort:!1,download:!1,filter:!1,print:!1,search:!1},onChange:$}),f&&e.jsx(dt,{title:t(`${t("common.delete")} ${f.blockletVersion}`),description:t("blocklet.publish.deleteReleaseTip"),confirm:t("common.confirm"),onConfirm:N,onCancel:()=>b(null)})]})}const Hr=Ce(a)`
9
+ .main-table > div:first-child {
10
+ display: none;
11
+ }
12
+ .note {
13
+ word-break: break-all;
14
+ white-space: pre-line;
15
+ }
16
+ ${({theme:t})=>t.breakpoints.down("md")} {
17
+ .MuiTableRow-root {
18
+ border-color: ${({theme:t})=>t.palette.divider};
19
+ }
20
+ }
21
+ `;function Je({children:t,Icon:o=Fs}){return e.jsxs(Us,{sx:{display:"flex",flexDirection:"column",justifyContent:"center",alignItems:"center",paddingTop:"10px",margin:"10px 0px"},children:[e.jsx(a,{sx:{opacity:.3,fontSize:32},children:e.jsx(o,{})}),e.jsx(a,{sx:{mb:2,opacity:.7,fontSize:"small",color:"action"},children:t})]})}Je.propTypes={children:n.node.isRequired,Icon:n.elementType};function Go({value:t=[],app:o,onChange:s=()=>{},onChangeBlockletResourceType:r=()=>{},disabled:l=!1,resourceRelateComponents:c={},projectType:i,dependentComponentsMode:d="auto",blockletResourceType:u=""}){const{t:x,locale:p}=G(),m=d==="readonly",f=k.useMemo(()=>{const I=t.reduce((R,y)=>(R[y.did]=y.included,R),{});return(o.children||[]).filter(R=>m?c[R.meta.did]||I[R.meta.did]:!0)},[o.children,t,c,m]),b=k.useMemo(()=>f.map(I=>t.find(y=>y.did===I.meta.did)||{did:I.meta.did}),[f,t]),h=b.reduce((I,R)=>(I[R.did]=Pt(R,["required","included"]),I),{}),j=I=>{const R=b.map(y=>{if(y.did===I){const T=!y.included;return{...y,included:T,required:T}}return y});s(R)},v=I=>{const R=b.map(y=>y.did===I?{...y,required:!y.required}:y);s(R)},g=I=>{r(I.target.checked?"resource":"")},C=[{label:x("common.name"),name:"meta.title",width:200,options:{customBodyRenderLite:I=>{const R=f[I],y=h[R.meta.did]?.included;return e.jsxs(a,{sx:{display:"flex",alignItems:"center"},children:[e.jsx(Nt,{size:24,blocklet:R,ancestors:[o]}),e.jsx(a,{className:Bt("text",{excluded:!y}),sx:{ml:"4px"},children:e.jsx(a,{children:R.meta.title})})]})}}},{label:x("blocklet.publish.componentIncluded"),width:100,options:{customBodyRenderLite:I=>{const R=f[I],y=c[R.meta.did],T=!!h[R.meta.did]?.included;return e.jsx(Ge,{size:"small",checked:y||T,onClick:()=>j(R.meta.did),disabled:m||y||l})}}},{label:x("blocklet.publish.componentForceRequired"),width:100,options:{customBodyRenderLite:I=>{const R=f[I],y=c[R.meta.did],T=!!h[R.meta.did]?.included,N=!!h[R.meta.did]?.required;return e.jsx(Ge,{size:"small",checked:y||N&&T,onClick:()=>v(R.meta.did),disabled:m||y||l||!T})}}}];return e.jsx(Gr,{children:f?.length?e.jsxs(e.Fragment,{children:[e.jsxs(ct,{severity:"info",style:{width:"100%"},children:[e.jsxs(a,{rel:"noreferrer",sx:{display:"flex",alignItems:"center",ml:"13px"},children:[x(i==="pack"?"blocklet.publish.packTip":"blocklet.publish.resourceTip"),e.jsx(a,{component:"a",target:"_blank",href:i==="pack"?"https://www.arcblock.io/docs/blocklet-developer/en/5PXToZve-5IXAN1bc8rkpxAc":"https://www.arcblock.io/docs/blocklet-developer/en/hB5VWLfg9VnbWsL1JGLuLUfW",children:e.jsx(qt,{sx:{marginLeft:1}})})]}),e.jsxs(a,{component:"label",style:{cursor:"pointer"},children:[e.jsx(Ge,{size:"small",style:{marginLeft:"0px"},disabled:l,checked:u==="resource",onChange:g}),x("blocklet.publish.forceResourceBlocklet")]})]}),e.jsx(zt,{className:"main-table",verticalKeyWidth:100,locale:p,data:f,columns:C,options:{sort:!1,download:!1,filter:!1,print:!1,search:!1,rowsPerPage:50}})]}):e.jsx(Je,{Icon:Ot,children:x("blocklet.publish.blockletEmptyTip")})})}Go.propTypes={app:n.object.isRequired,value:n.arrayOf(n.shape({did:n.string.isRequired,required:n.bool,included:n.bool})),onChange:n.func,onChangeBlockletResourceType:n.func,disabled:n.bool,dependentComponentsMode:n.string,resourceRelateComponents:n.object,blockletResourceType:n.string,projectType:n.string.isRequired};const Gr=Ce(a)`
22
+ .main-table {
23
+ .text.excluded {
24
+ color: ${({theme:t})=>t.palette.grey[400]};
25
+ }
26
+ width: 400px;
27
+ ${({theme:t})=>t.breakpoints.down("md")} {
28
+ width: 100%;
29
+ }
30
+ > div:first-child {
31
+ display: none;
32
+ }
33
+ .MuiTableCell-head {
34
+ padding-top: 0;
35
+ padding-bottom: 0;
36
+ }
37
+ .MuiTableCell-body {
38
+ padding-top: 6px;
39
+ padding-bottom: 6px;
40
+ }
41
+ .datatable-footer {
42
+ display: none;
43
+ }
44
+ ${({theme:t})=>t.breakpoints.down("md")} {
45
+ .MuiTableRow-root {
46
+ border-color: ${({theme:t})=>t.palette.divider};
47
+ }
48
+ }
49
+ }
50
+ `;var gt,so;function Jr(){return so||(so=1,gt=(t,o=1,s)=>{if(s={indent:" ",includeEmptyLines:!1,...s},typeof t!="string")throw new TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof t}\``);if(typeof o!="number")throw new TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof o}\``);if(typeof s.indent!="string")throw new TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof s.indent}\``);if(o===0)return t;const r=s.includeEmptyLines?/^/gm:/^(?!\s*$)/gm;return t.replace(r,s.indent.repeat(o))}),gt}var kt,ro;function Xr(){if(ro)return kt;ro=1;const t=br(),o=/\s+at.*(?:\(|\s)(.*)\)?/,s=/^(?:(?:(?:node|(?:internal\/[\w/]*|.*node_modules\/(?:babel-polyfill|pirates)\/.*)?\w+)\.js:\d+:\d+)|native)/,r=typeof t.homedir>"u"?"":t.homedir();return kt=(l,c)=>(c=Object.assign({pretty:!1},c),l.replace(/\\/g,"/").split(`
51
+ `).filter(i=>{const d=i.match(o);if(d===null||!d[1])return!0;const u=d[1];return u.includes(".app/Contents/Resources/electron.asar")||u.includes(".app/Contents/Resources/default_app.asar")?!1:!s.test(u)}).filter(i=>i.trim()!=="").map(i=>c.pretty?i.replace(o,(d,u)=>d.replace(u,u.replace(r,"~"))):i).join(`
52
+ `)),kt}var jt,no;function Zr(){if(no)return jt;no=1;const t=Jr(),o=Xr(),s=l=>l.replace(/\s+at .*aggregate-error\/index.js:\d+:\d+\)?/g,"");class r extends Error{constructor(c){if(!Array.isArray(c))throw new TypeError(`Expected input to be an Array, got ${typeof c}`);c=[...c].map(d=>d instanceof Error?d:d!==null&&typeof d=="object"?Object.assign(new Error(d.message),d):new Error(d));let i=c.map(d=>typeof d.stack=="string"?s(o(d.stack)):String(d)).join(`
53
+ `);i=`
54
+ `+t(i,4),super(i),this.name="AggregateError",Object.defineProperty(this,"_errors",{value:c})}*[Symbol.iterator](){for(const c of this._errors)yield c}}return jt=r,jt}var yt,lo;function Yr(){if(lo)return yt;lo=1;const t=Zr();return yt=async(o,s,{concurrency:r=1/0,stopOnError:l=!0}={})=>new Promise((c,i)=>{if(typeof s!="function")throw new TypeError("Mapper function is required");if(!((Number.isSafeInteger(r)||r===1/0)&&r>=1))throw new TypeError(`Expected \`concurrency\` to be an integer from 1 and up or \`Infinity\`, got \`${r}\` (${typeof r})`);const d=[],u=[],x=o[Symbol.iterator]();let p=!1,m=!1,f=0,b=0;const h=()=>{if(p)return;const j=x.next(),v=b;if(b++,j.done){m=!0,f===0&&(!l&&u.length!==0?i(new t(u)):c(d));return}f++,(async()=>{try{const g=await j.value;d[v]=await s(g,v),f--,h()}catch(g){l?(p=!0,i(g)):(u.push(g),f--,h())}})()};for(let j=0;j<r&&(h(),!m);j++);}),yt}var wt,io;function Kr(){if(io)return wt;io=1;const t=Yr();return wt=(o,s)=>t(o,r=>r(),s),wt}var Qr=Kr();const rt=go(Qr);function en(t,o){const s=new Set(o||[]),r=[];function l(c){s.has(c?.id)&&r.push(c?.id),c?.children&&c.children.forEach(l)}return(t||[]).forEach(l),r}function Jo({src:t,alt:o="",...s}){const[r,l]=k.useState(!1),c=k.useRef(null);return k.useEffect(()=>{if(!("IntersectionObserver"in window))return l(!0),()=>{};const i=new IntersectionObserver(d=>{d.forEach(u=>{u.isIntersecting&&(l(!0),i.disconnect())})},{threshold:.1});return c.current&&i.observe(c.current),()=>{i.disconnect()}},[]),e.jsx("img",{ref:c,src:r?t:void 0,alt:o,...s})}Jo.propTypes={src:n.string.isRequired,alt:n.string};function Xo({data:t=[],lazy:o=!1,...s}){return!t||!t.length?null:e.jsx(tn,{...s,children:t.map(r=>e.jsx("a",{href:r.url,target:"_blank",rel:"noreferrer",children:o?e.jsx(Jo,{src:r.url,alt:r.alt||""}):e.jsx("img",{src:r.url,alt:r.alt||""})},r.url))})}Xo.propTypes={data:n.arrayOf(n.shape({url:n.string,alt:n.string})),lazy:n.bool};const tn=Ce(a)`
55
+ display: flex;
56
+ justify-content: flex-start;
57
+ flex-wrap: wrap;
58
+ margin-bottom: -12px;
59
+ a {
60
+ display: flex;
61
+ }
62
+ img {
63
+ height: 128px;
64
+ cursor: pointer;
65
+ margin-right: 12px;
66
+ margin-bottom: 12px;
67
+ }
68
+ `,vt=(t,o)=>{const s=[...t];for(;s.length>0;){const r=s.shift();if(r.id===o)return r;r.children&&s.push(...r.children)}return[]};function Zo({icon:t=""}){return t?fr(t)?e.jsx("img",{className:"resource-icon",src:t,alt:"icon"}):e.jsx(ae,{className:"resource-icon",icon:t}):null}Zo.propTypes={icon:n.string};function Yo({disabled:t=!1,data:o=[],onChange:s=()=>{},value:r=[]}){const l=r;function c(b,h=[]){return h.push(b.id),b.children&&b.children.forEach(j=>c(j,h)),h}const i=b=>c(vt(o,b)),d=(b,h=[])=>{const j=vt(o,b);return j.parent?(h.push(j.parent),d(j.parent,h)):h};function u(b,h){const j=i(b.id),v=j.indexOf(b.id);return j.splice(v,1),j.every(g=>l.concat(h).includes(g))}const x=(b,h)=>{b.stopPropagation();const j=i(h),v=d(h);if(l.includes(h)){const g=l.filter(C=>!j.concat(v).includes(C));s(g)}else{const g=j;for(let C=0;C<v.length;++C)u(vt(o,v[C]),g)&&g.push(v[C]);s([...l].concat(g))}},p=b=>{b.stopPropagation()},m=o.some(b=>b.children?.length>0),f=b=>{const h=l.indexOf(b.id)!==-1,j=Array.isArray(b.children),v=i(b.id),g=j&&!h&&l.some(C=>v.includes(C));return e.jsx(Er,{itemId:b.id,label:e.jsx(Fe,{onClick:p,control:e.jsx(Ge,{size:"small",checked:h,indeterminate:g,tabIndex:-1,disableRipple:!0,onClick:C=>x(C,b.id),disabled:b.disabled||t}),label:e.jsxs(a,{className:"content",children:[e.jsxs(a,{sx:{display:"flex",alignItems:"center"},children:[b.icon&&e.jsx(Zo,{icon:b.icon}),e.jsx(a,{className:"name",children:b.name}),b.url&&e.jsx("a",{href:b.url,target:"_blank",rel:"noreferrer",className:"link",children:e.jsx(Js,{className:"link-icon"})})]}),!!b.description&&e.jsx(a,{className:"description",children:b.description}),!!b.images?.length&&e.jsx(Xo,{className:"images",data:b.images,lazy:!0})]})}),children:j?b.children.map(f):null},b.id)};return e.jsx(on,{className:Bt(!m&&"no-children"),multiSelect:!0,defaultCollapseIcon:e.jsx(Gs,{}),defaultExpandIcon:e.jsx(Hs,{}),selected:l,children:o.map(b=>f(b))})}Yo.propTypes={data:n.array,value:n.array,onChange:n.func,disabled:n.bool};const on=Ce($r)`
69
+ &.no-children {
70
+ .MuiTreeItem-content {
71
+ padding: 0;
72
+ .MuiTreeItem-iconContainer {
73
+ display: none;
74
+ }
75
+ .MuiTreeItem-label {
76
+ padding-left: 0;
77
+ }
78
+ }
79
+ }
80
+ .MuiTreeItem-content {
81
+ align-items: flex-start;
82
+ .MuiTreeItem-iconContainer {
83
+ transform: translateY(10px);
84
+ }
85
+ &.Mui-selected {
86
+ background-color: transparent;
87
+ }
88
+ }
89
+ .MuiTreeItem-label {
90
+ cursor: default;
91
+ }
92
+ .MuiFormControlLabel-root {
93
+ align-items: flex-start;
94
+ }
95
+ .content {
96
+ padding-top: 6px;
97
+ }
98
+ .name {
99
+ font-size: 16px;
100
+ font-weight: 700;
101
+ }
102
+ .resource-icon {
103
+ margin-right: 2px;
104
+ font-size: 16px;
105
+ }
106
+ img.resource-icon {
107
+ width: 1rem;
108
+ height: 1rem;
109
+ }
110
+ .link {
111
+ margin-left: 8px;
112
+ font-size: 16px;
113
+ color: ${({theme:t})=>t.palette.primary.main};
114
+ display: flex;
115
+ }
116
+ .link-icon {
117
+ font-size: inherit;
118
+ }
119
+ .description {
120
+ font-size: 14px;
121
+ color: ${({theme:t})=>t.palette.text.secondary};
122
+ }
123
+ `,co={},Ko=(t,o,{key:s,cacheTime:r=1e3*3}={})=>{const l=s+JSON.stringify({params:o}),c=co[l];if(c&&c.timestamp>Date.now()-r)return c.promise;const i=t(...o);return co[l]={promise:i,timestamp:Date.now()},i},Qo=(t,o)=>(t.forEach(s=>{o&&(s.parent=o),(s.children||[]).forEach(r=>{r.parent=s.id,Qo(r.children||[],r.id)})}),t),es=(t,o,s,r,l)=>{const{exportApi:c="/"}=t?.meta.resource||{},i=new URL(ue("http://127.0.0.1",t?.mountPoint,c||"/").replace(/\/+/g,"/"));return i.searchParams.set("projectId",o),i.searchParams.set("releaseId",s),i.searchParams.set("local",r),l&&i.searchParams.set("resourcesParams",l.searchParams.get("resourcesParams")),`${i.pathname}${i.search}`},sn=async({api:t,appDid:o,component:s,projectId:r,releaseId:l,locale:c,initUrl:i,resources:d})=>{let u;if(i&&i.searchParams.get("resourcesParams"))try{u=JSON.parse(i.searchParams.get("resourcesParams"))}catch(x){O.error(x.message);return}await Po.post(es(s,r,l,c,i),{resources:d,projectId:r,releaseId:l,locale:c,...u?{resourcesParams:u}:{}},{headers:{"x-csrf-token":xr()},timeout:600*1e3}),await t.updateSelectedResources({input:{did:o,projectId:r,releaseId:"",componentDid:s.meta.did,resources:d}})},rn=(t,o)=>{if(!t)return{};const s=o.reduce((l,c)=>(l[c]=!0,l),{}),r=(l,c)=>(l.forEach(i=>{s[i.id]&&i.dependentComponents?.length&&i.dependentComponents.forEach(d=>{c[d]=!0}),i.children&&r(i.children,c)}),c);return r(t,{})};function ts({app:t,component:o,projectId:s,release:r={id:""},loading:l=!1,error:c="",saveSelectedEventsRef:i,readOnly:d,componentDid:u="",initialResources:x={},setResourceComponentsMap:p=()=>{},selectedResourceIds:m,setSelectedResourceIds:f,showTree:b,initUrl:h=null}){const{t:j,locale:v}=G(),{api:g}=je(),[C,I]=He({}),R=k.useRef({}),y=k.useRef(!1),T=r.id;R.current.projectId=s,R.current.releaseId=T;const N=($,A,w)=>{if(!A)return;const S=rn(A,w);p?.({[$]:Object.keys(S)})},z=$=>{i.current[o.meta.did]={resources:$,component:o},f({[o.meta.did]:$}),N(o.meta.did,C[o.meta.did],$)},W=k.useCallback(async $=>{try{const A=await Ko(Po.get,[es($,s,T,v,h),{timeout:6e4}],{key:"getResources"});return Qo(A?.data?.resources||[])}catch{return[]}},[s,T,v,h]);k.useEffect(()=>{C[o?.meta.did]||W(o).then($=>{I({[o?.meta.did]:$})}).catch($=>{O.error($.message)})},[o,I,C,W]),k.useEffect(()=>{T&&s&&!y.current&&rt(t.children.map($=>async()=>{if(!(u&&u!==$.meta.did)&&!(!$?.mountPoint||!Dr.hasStartEngine($?.meta)||!$?.meta?.resource?.exportApi))try{const A=await W($);I({[$?.meta.did]:A});const S=(await g.getSelectedResources({input:{did:t.meta.did,projectId:s,releaseId:T,componentDid:$.meta.did}}))?.resources||[];S?.length&&(f({[$.meta.did]:en(A,S)}),N($.meta.did,A,S),d||(i.current[$?.meta.did]={resources:S,component:$}))}catch(A){O.error(A.message)}}),{concurrency:2}).then(()=>{y.current=!0})},[T,s,d,v,h,I]),k.useEffect(()=>{x&&Object.keys(x).length&&rt(t.children.map(async $=>{const A=x[$.meta.did];if(A?.length){const w=await W($);f({[$.meta.did]:A}),N($.meta.did,w,A),d||(i.current[$?.meta.did]={resources:A,component:$})}}))},[t,x,d]);let X=null;return(!o||!C[o.meta.did]?.length)&&(X=e.jsx(Je,{Icon:Ot,children:j("blocklet.publish.resourceEmptyTip",{name:Yt.getDisplayName(o)})})),o?.status!=="running"&&(X=e.jsx(Je,{children:j("blocklet.publish.componentNotRunning",{name:Yt.getDisplayName(o)})})),e.jsxs(e.Fragment,{children:[e.jsx(nn,{className:Bt(c&&"error"),children:b&&e.jsx(a,{sx:{pb:2,width:"100%"},children:X||e.jsx(Yo,{data:C[o.meta.did]||[],value:m[o.meta.did]||[],onChange:z,disabled:l||d})})}),!!c&&e.jsx(a,{sx:{color:"error.main",mt:1,fontSize:14},children:c})]})}ts.propTypes={component:n.object.isRequired,app:n.object.isRequired,projectId:n.string.isRequired,error:n.string,saveSelectedEventsRef:n.object.isRequired,readOnly:n.bool.isRequired,loading:n.bool.isRequired,release:n.shape({id:n.string.isRequired,status:n.string}),initialResources:n.object,initUrl:n.object,setResourceComponentsMap:n.func,componentDid:n.string,selectedResourceIds:n.object.isRequired,setSelectedResourceIds:n.func.isRequired,showTree:n.bool.isRequired};const nn=Ce(a)`
124
+ border: 1px solid;
125
+ border-color: ${({theme:t})=>t.palette.divider};
126
+ max-height: 600px;
127
+ width: 100%;
128
+ &.error {
129
+ border-color: ${({theme:t})=>t.palette.error.main};
130
+ }
131
+ border-radius: 4px;
132
+ padding: 16px;
133
+ padding-bottom: 0px;
134
+ overflow-y: auto;
135
+ .footer {
136
+ border-top: 1px solid #ddd;
137
+ display: flex;
138
+ padding: 12px 0;
139
+ margin-top: 12px;
140
+ position: sticky;
141
+ bottom: 0;
142
+ background: #fff;
143
+ z-index: 10;
144
+ }
145
+ `,ao="lastWantToConnectStoreId";function ln(t){const[o,s]=k.useState(null),{session:r}=Ve(),l=k.useCallback(d=>{s(d),localStorage.setItem(ao,d?.id)},[s]),c=k.useMemo(()=>{const d=localStorage.getItem(ao),u=d?(t?.settings?.storeList||[]).find(p=>p.id===d):null;if(u)return u;let x=(t?.settings?.storeList||[]).find(p=>!(p.id!==gr.id||p.scope&&p.scope!=="studio"&&p.scope!==r?.user?.did));return x||(x=t?.settings?.storeList?.[0]),x},[t?.settings?.storeList,r?.user?.did]);return[o||c||{},l]}const _t=({fromBlocklet:t,nodeInfo:o,blocklet:s,userDid:r})=>{const l=t?s?.meta?.did:o?.did;let c=t?s?.settings?.storeList||[]:o?.blockletRegistryList||[];return Array.isArray(c)||(c=[]),c=c.filter(i=>i.protected||Cr(i.scope)||i.scope==="studio"||i.scope===r),{teamDid:l,storeList:c}};function os({blocklet:t=null,store:o=null,onChangeStore:s,onClick:r,disabled:l,loading:c,componentDid:i}){const{t:d}=G(),{session:u}=Ve(),{api:x,info:p,inService:m}=je(),f=De(),[b,h]=k.useState(!1),j=k.useRef(null),[v,g]=k.useState(!1),[C,I]=k.useState(null),R=A=>{s(A),h(!1)},y=()=>{h(!b)},T=A=>{j.current&&j.current.contains(A.target)||h(!1)},N=()=>{g(!0)},z=()=>{g(!1)},W=async()=>{if(C)try{await x.deleteBlockletStore({input:{teamDid:t.meta.did,url:C.url,projectId:"",scope:C.scope||"studio"}}),await f?.actions?.refreshBlocklet()}catch(A){O.error(`Remove Blocklet Store Error: ${ke(A)}`)}finally{I(null)}},{storeList:X}=_t({fromBlocklet:m,blocklet:t,nodeInfo:p,userDid:u?.user?.did}),$=t?.meta?.did;return e.jsxs(e.Fragment,{children:[e.jsxs(tt,{disabled:l,ref:j,variant:"contained",color:"primary","aria-label":"Button group with connect store",children:[e.jsxs(J,{onClick:r,children:[c&&e.jsx(Te,{size:14,sx:{mr:.5}}),`${d("common.connect")} ${o.name||""}`]}),e.jsx(J,{size:"small","aria-controls":b?"split-button-menu":void 0,"aria-expanded":b?"true":void 0,"aria-label":"select merge strategy","aria-haspopup":"menu",onClick:y,children:e.jsx(Xs,{})})]}),e.jsx(wo,{sx:{zIndex:10},open:b,anchorEl:j.current,placement:"bottom-end",role:void 0,transition:!0,disablePortal:!0,children:({TransitionProps:A})=>e.jsx(vo,{...A,style:{transformOrigin:"center top"},children:e.jsx(At,{children:e.jsx(Co,{onClickAway:T,children:e.jsxs(Ro,{id:"split-button-menu",autoFocusItem:!0,sx:{maxHeight:300,overflowY:"auto",zIndex:10},children:[X?.map(w=>e.jsxs(be,{selected:w.id===o?.id,sx:{height:56},onClick:()=>R(w),children:[e.jsxs(a,{children:[e.jsx(Ie,{sx:{fontSize:"16px"},maxLength:24,children:w.name}),e.jsx(Ie,{sx:{fontSize:"13px",opacity:.6},maxLength:30,children:w.url})]}),zr({store:w,userDid:u?.user?.did})&&e.jsx(ce,{sx:{ml:1},onClick:S=>{S.preventDefault(),S.stopPropagation(),I(w)},children:e.jsx(ae,{icon:"ic:outline-delete"})})]},w.url)),e.jsx(Zs,{}),e.jsxs(be,{onClick:N,children:[e.jsx(lt,{font:!0}),e.jsx(L,{variant:"inherit",children:d("store.blockletRegistry.addRegistry")})]})]})})})})}),v&&e.jsx(Mo,{hiddenChildren:!0,open:!0,onClose:z,teamDid:$,storeList:X,scope:"studio",onAdd:f?.actions?.refreshBlocklet}),C&&e.jsx(dt,{displayError:!0,title:`${d("common.delete")} ${C.name}`,description:d("blocklet.publish.deleteStoreTip",{name:C.name}),confirm:d("common.confirm"),onConfirm:W,onCancel:()=>I(null)})]})}os.propTypes={store:n.object,blocklet:n.object,onChangeStore:n.func.isRequired,onClick:n.func.isRequired,loading:n.bool.isRequired,disabled:n.bool.isRequired,componentDid:n.string.isRequired,projectType:n.string.isRequired,getData:n.func.isRequired};const ss=(t,o,s)=>{const r=`${ge}/api/project/${o.meta.did}/${s}/logo/upload`,l=`${ge}/api/project/${o.meta.did}/${s}/screenshot/upload`,c=t?.blockletLogo?`${r}/${t.blockletLogo}`:`${ge}/static/images/logo.png`,i=(t?.blockletScreenshots||[]).filter(Boolean).map(d=>`${l}/${d}`);return{logoUrl:c,screenshotUrls:i,uploadLogoPrefix:r,uploadScreenshotPrefix:l}},cn=t=>{const o=t.includes("youtube.com")||t.includes("youtu.be"),s=t.includes("vimeo.com");return o||s};function Mt({url:t,style:o={},controls:s=1,modestbranding:r=1}){const{t:l}=G(),c=t.includes("youtube.com")||t.includes("youtu.be"),i=t.includes("vimeo.com");if(c){const d=t.split("v=")[1]?.split("&")[0]||t.split("/").pop();return e.jsx("div",{style:{position:"relative",width:"100%",paddingTop:"56.25%",pointerEvents:o?.pointerEvents||"auto"},children:e.jsx("iframe",{src:`https://www.youtube.com/embed/${d}?modestbranding=${r}&controls=${s}&rel=0`,title:"YouTube video player",style:{position:"absolute",top:0,left:0,width:"100%",height:"100%",border:"none",...o},allow:"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture",allowFullScreen:!0})})}if(i){const d=t.split("/").pop();return e.jsx("div",{style:{position:"relative",width:"100%",paddingTop:"56.25%",pointerEvents:o.pointerEvents||"auto"},children:e.jsx("iframe",{src:`https://player.vimeo.com/video/${d}`,title:"Vimeo video player",style:{position:"absolute",top:0,left:0,width:"100%",height:"100%",border:"none",...o},allow:"autoplay; fullscreen; picture-in-picture",allowFullScreen:!0})})}return e.jsx(a,{style:{position:"relative",width:"100%",paddingTop:"56.25%"},children:e.jsxs(a,{style:{position:"absolute",top:0,left:0,width:"100%",height:"100%",border:"none",backgroundColor:"rgba(0, 0, 0, 0.04)",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",...o},allow:"autoplay; fullscreen; picture-in-picture",allowFullScreen:!0,children:[e.jsx(ae,{icon:"carbon:video-off",style:{fontSize:40,marginBottom:"10px",opacity:.5}}),e.jsx(L,{variant:"body1",sx:{opacity:.5},children:l("studio.videoDialogNoSrc")})]})})}Mt.propTypes={url:n.string.isRequired,style:n.object,controls:n.number,modestbranding:n.number};function rs({setParams:t,onClose:o,params:s}){const{t:r}=G(),[l,c]=k.useState(""),i=l&&s.blockletVideos.includes(l),d=cn(l),u=()=>{t(x=>{const p=[...x.blockletVideos];return p.push(l),{...x,blockletVideos:p}}),o()};return e.jsxs(it,{open:!0,fullWidth:!0,maxWidth:"sm",children:[e.jsx(So,{children:r("studio.videoDialogTitle")}),e.jsxs(To,{children:[e.jsx(Ys,{fullWidth:!0,value:l,onChange:x=>c(x.target.value),placeholder:r("studio.videoInputLabel"),endAdornment:l?e.jsx(Xe,{position:"end",children:e.jsx(ce,{onClick:()=>c(""),children:e.jsx(Ks,{})})}):null,error:i}),i&&e.jsx(L,{variant:"body2",color:"error",children:r("studio.duplicateVideo")}),e.jsx(Mt,{url:l,style:{marginTop:"20px",borderRadius:"4px"}})]}),e.jsxs(Io,{children:[e.jsx(J,{onClick:()=>o(),children:r("studio.cancel")}),e.jsx(J,{disabled:!d||i,onClick:u,children:r("studio.confirm")})]})]})}rs.propTypes={onClose:n.func.isRequired,params:n.object.isRequired,setParams:n.func.isRequired};function St({errors:t,storeList:o,...s}){const{t:r}=G();return e.jsxs(a,{...s,sx:[{color:"warning.main",fontSize:"14px",border:"1px solid rgba(214, 164, 64, 0.34)",borderRadius:"4px",py:2,px:1.5,position:"relative"},...Array.isArray(s.sx)?s.sx:[s.sx]],children:[e.jsx(L,{variant:"caption",sx:{fontWeight:"bold",position:"absolute",top:-10,left:12,backgroundColor:"white",px:1,width:"fit-content"},children:r("blocklet.publish.storeRule.warning")}),t&&Object.entries(t).map(([l,c])=>{const i=Object.values(c),d=o.find(u=>u.url===l);return i.length>0&&e.jsxs(a,{children:[e.jsx(xe,{title:l,children:e.jsx(a,{component:"span",sx:{cursor:"pointer"},children:d.name})}),i.map(u=>e.jsx(a,{component:"li",sx:{ml:2,wordBreak:!0},children:u},u))]},l)})]})}St.propTypes={errors:n.object.isRequired,storeList:n.array.isRequired};const uo=k.lazy(()=>No(()=>import("./index-CKgbiYHC.js"),__vite__mapDeps([0,1,2]),import.meta.url).then(t=>({default:t.Uploader})));function ns({projectId:t,readOnly:o,loading:s,blocklet:r,params:l,setParams:c,paramsErrTip:i,setParamsErrTip:d,warning:u,setLoading:x,initUrl:p=null,initLogoUrl:m,setInitLogoUrl:f,componentDid:b=""}){const{t:h,locale:j}=G(),{api:v}=je(),g=Et(),C=k.useRef(null),I=k.useRef(null),[R,y]=ln(r),[T,N]=k.useState(!1),z=_o({messageType:"connect-store-message",onOpen:()=>x(!0),onClose:()=>x(!1)}),W=async P=>{const Z=setTimeout(()=>{x(!1)},2e4),H=await Ar(v,P);x(!1),clearTimeout(Z),window.parent.postMessage({event:"studioDialog.connected",componentDid:b},"*"),g(window.location.pathname.replace(`${le}/create`,`${H}/create`),{replace:!0})},X=()=>{if(!l.blockletTitle){O.error(h("blocklet.publish.errorTip.noTitle"));return}if(!R?.url){O.error(h("blocklet.publish.noStoreSelected"));return}const P=qr();z(async(Z,H)=>{try{const oe=await v.connectByStudio({input:{did:r?.meta?.did,blockletTitle:l?.blockletTitle,storeUrl:R.url,storeId:R.id,storeName:R.name,type:l?.blockletComponents?.length>0?"pack":"resource",componentDid:b,messageId:P,tenantScope:p?.searchParams.get("tenantScope")||""}});if(!oe?.url){O.error("failed to connect to store");return}H(oe.url),W({did:r?.meta?.did,projectId:"",messageId:P})}catch(oe){const de=ke(oe);O.error(de),x(!1)}})},{logoUrl:$,screenshotUrls:A,uploadLogoPrefix:w,uploadScreenshotPrefix:S}=ss(l,r,t),{logoErrors:Y,screenshotErrors:F,storeList:K,hasLogoWarning:E,hasScreenshotWarning:D}=u,_=()=>o?!1:!t||t===le?(O.error(h("blocklet.publish.errorTip.noFirstDid")),!1):!0,M=P=>{if(!P.destination)return;const Z=Array.from(l.blockletScreenshots),[H]=Z.splice(P.source.index,1);Z.splice(P.destination.index,0,H),c(oe=>({...oe,blockletScreenshots:Z}))},Q=P=>{if(!P.destination)return;const Z=Array.from(l.blockletVideos),[H]=Z.splice(P.source.index,1);Z.splice(P.destination.index,0,H),c(oe=>({...oe,blockletVideos:Z}))};return e.jsxs(an,{children:[e.jsx(a,{className:"section",sx:{display:"flex"},children:e.jsxs(a,{sx:{flex:1},children:[e.jsx(re,{disabled:s||o,label:`Blocklet ${h("common.title")}`,placeholder:`Blocklet ${h("common.title")}`,autoComplete:"off",variant:"outlined",fullWidth:!0,required:!0,value:l.blockletTitle||"",onChange:P=>{d({blockletTitle:""}),c({blockletTitle:P.target.value})},error:!!i.blockletTitle,helperText:i.blockletTitle||"",slotProps:{input:{"data-cy":"blocklet-title",readOnly:o}}}),e.jsx(re,{required:!0,label:"Blocklet DID",fullWidth:!0,readonly:!0,disabled:!0,autoComplete:"off",variant:"outlined",error:!!i.projectId,helperText:i.projectId||"",value:t===le?"":`did:abt:${t}`,sx:{mt:3},slotProps:{input:{"data-cy":"export-blocklet-did",endAdornment:t===le&&e.jsx(Xe,{position:"end",children:e.jsx(os,{blocklet:r,store:R,componentDid:b,onChangeStore:y,disabled:!l.blockletTitle||o||s,loading:s,onClick:X})})}}}),e.jsx(re,{disabled:s||o,label:`Blocklet ${h("common.description")}`,placeholder:`Blocklet ${h("common.description")}`,required:!0,autoComplete:"off",variant:"outlined",fullWidth:!0,value:l.blockletDescription||"",onChange:P=>{d({blockletDescription:""}),c({blockletDescription:P.target.value.slice(0,159)})},error:!!i.blockletDescription,helperText:i.blockletDescription||"",sx:{mt:3},slotProps:{input:{"data-cy":"blocklet-description",readOnly:o}}}),e.jsx(re,{disabled:s||o,label:`Blocklet ${h("common.homepageTip")}`,placeholder:`Blocklet ${h("common.homepageTip")}`,autoComplete:"off",variant:"outlined",fullWidth:!0,value:l.blockletHomepage||"",onChange:P=>{P.target.value&&!/^(http|https):\/\//.test(P.target.value)?d({blockletHomepage:h("blocklet.publish.errorTip.invalidUrl")}):d({blockletHomepage:""}),c({blockletHomepage:P.target.value})},error:!!i.blockletHomepage,helperText:i.blockletHomepage||"",sx:{mt:3},slotProps:{input:{"data-cy":"blocklet-homepage",readOnly:o}}}),e.jsx(re,{disabled:s||o,label:`Blocklet ${h("common.community")}`,placeholder:`Blocklet ${h("common.community")}`,autoComplete:"off",variant:"outlined",fullWidth:!0,value:l.blockletCommunity||"",onChange:P=>{P.target.value&&!/^(http|https):\/\//.test(P.target.value)?d({blockletCommunity:h("blocklet.publish.errorTip.invalidUrl")}):d({blockletCommunity:""}),c({blockletCommunity:P.target.value})},error:!!i.blockletCommunity,helperText:i.blockletCommunity||"",sx:{mt:3},slotProps:{input:{"data-cy":"blocklet-community",readOnly:o}}}),e.jsx(re,{disabled:s||o,label:`Blocklet ${h("common.support")}`,placeholder:`Blocklet ${h("common.support")}`,autoComplete:"off",variant:"outlined",fullWidth:!0,value:l.blockletSupport||"",onChange:P=>{P.target.value&&!/^(http|https):\/\//.test(P.target.value)&&!/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/.test(P.target.value)?d({blockletSupport:h("blocklet.publish.errorTip.invalidUrlOrEmail")}):d({blockletSupport:""}),c({blockletSupport:P.target.value})},error:!!i.blockletSupport,helperText:i.blockletSupport||"",sx:{mt:3},slotProps:{input:{"data-cy":"blocklet-support",readOnly:o}}}),e.jsx(re,{disabled:s||o,label:`Blocklet ${h("common.repository")}`,placeholder:`Blocklet ${h("common.repository")}`,autoComplete:"off",variant:"outlined",fullWidth:!0,value:l.blockletRepository||"",onChange:P=>{P.target.value&&!/^(git|https|svn)/.test(P.target.value)?d({blockletRepository:h("blocklet.publish.errorTip.invalidUrl")}):d({blockletRepository:""}),c({blockletRepository:P.target.value})},error:!!i.blockletRepository,helperText:i.blockletRepository||"",sx:{mt:3},slotProps:{input:{"data-cy":"blocklet-repository",readOnly:o}}})]})}),e.jsx(a,{className:"section full-width",sx:{display:"flex",mt:3},children:e.jsxs(a,{sx:{flex:1,overflow:"hidden"},children:[e.jsxs(a,{sx:{display:"flex",flexDirection:"row",flexWrap:"wrap"},children:[e.jsxs(Se,{direction:"column",spacing:1,sx:{mr:2,width:"160px"},children:[e.jsx(L,{variant:"subtitle1",sx:{fontWeight:"bold"},children:h("common.logo")}),e.jsxs(Se,{direction:"column",spacing:1,sx:{alignItems:"flex-start",opacity:.8,fontSize:"12px"},children:[e.jsx(a,{children:e.jsxs(a,{component:"span",children:[e.jsxs(a,{component:"span",sx:{color:"text.secondary"},children:[h("studio.type"),":"," "]}),e.jsx(a,{component:"span",sx:{color:"secondary.main"},children:"png, jpg, webp, svg"})]})}),e.jsx(a,{children:e.jsxs(a,{component:"span",children:[e.jsxs(a,{component:"span",sx:{color:"text.secondary"},children:[h("studio.ratio"),":"," "]}),e.jsx(a,{component:"span",sx:{color:"secondary.main"},children:"256x256"})]})}),e.jsx(a,{children:e.jsxs(a,{component:"span",children:[e.jsxs(a,{component:"span",sx:{color:"text.secondary"},children:[h("studio.size"),":"," "]}),e.jsx(a,{component:"span",sx:{color:"secondary.main"},children:"<500Kb"})]})})]})]}),e.jsx(a,{sx:{flex:1,cursor:o?"default":"pointer",display:"flex",alignItems:"flex-end"},children:e.jsx($t,{variant:"square",sx:{width:80,height:80},alt:"Blocklet Logo",src:m||$,onClick:()=>{_()&&C.current?.open()}})})]}),E&&e.jsx(St,{errors:Y,storeList:K,mt:3}),e.jsxs(a,{sx:{display:"flex",mt:3,flexDirection:"row",flexWrap:"wrap"},children:[e.jsxs(Se,{direction:"column",spacing:1,sx:{mr:2,width:"160px"},children:[e.jsx(L,{variant:"subtitle1",sx:{fontWeight:"bold"},children:h("common.screenshot")}),e.jsxs(Se,{direction:"column",spacing:1,sx:{alignItems:"flex-start",opacity:.8,fontSize:"12px"},children:[e.jsx(a,{sx:{border:"none"},variant:"outlined",size:"small",children:e.jsxs(a,{component:"span",children:[e.jsxs(a,{component:"span",sx:{color:"text.secondary"},children:[h("studio.ratio"),":"," "]}),e.jsx(a,{component:"span",sx:{color:"secondary.main"},children:"16 / 9"})]})}),e.jsx(a,{children:e.jsxs(a,{component:"span",children:[e.jsxs(a,{component:"span",sx:{color:"text.secondary"},children:[h("studio.count"),":"," "]}),e.jsx(a,{component:"span",sx:{color:"secondary.main"},children:"1~5"})]})}),e.jsx(a,{children:e.jsxs(a,{component:"span",children:[e.jsxs(a,{component:"span",sx:{color:"text.secondary"},children:[h("studio.size"),":"," "]}),e.jsx(a,{component:"span",sx:{color:"secondary.main"},children:"<5MB"})]})}),!o&&e.jsx(a,{children:e.jsxs(a,{component:"span",children:[e.jsxs(a,{component:"span",sx:{color:"text.secondary"},children:[h("studio.order"),":"," "]}),e.jsx(a,{component:"span",sx:{color:"secondary.main"},children:h("studio.orderTip")})]})})]})]}),e.jsx(eo,{onDragEnd:o?void 0:M,children:e.jsx(to,{droppableId:"screenshots",direction:"horizontal",isDropDisabled:o,children:(P,Z)=>e.jsxs(a,{ref:P.innerRef,...P.droppableProps,sx:{display:"flex",alignItems:"center",flex:1,flexWrap:"wrap",minHeight:160,background:Z.isDraggingOver?"grey.100":"transparent",transition:"background-color 0.2s ease",border:Z.isDraggingOver?"2px dashed #999":"none",borderRadius:"4px"},children:[A.map((H,oe)=>e.jsx(oo,{draggableId:H,index:oe,isDragDisabled:o,children:(de,ne)=>e.jsxs(a,{ref:de.innerRef,...de.draggableProps,className:"screenshot",sx:{transform:ne.isDragging?"scale(1.05)":"none",boxShadow:ne.isDragging?"0 5px 10px rgba(0,0,0,0.15)":"none",transition:"transform 0.2s ease, box-shadow 0.2s ease"},children:[e.jsx("img",{alt:"screenshot",src:H}),!o&&e.jsx(ce,{...de.dragHandleProps,className:"action",style:{right:40,zIndex:10,color:"#fff"},children:e.jsx(Xt,{})}),!o&&e.jsx(ce,{className:"action",onClick:()=>{c(pe=>{const he=[...pe.blockletScreenshots];return he.splice(oe,1),{...pe,blockletScreenshots:he}})},children:e.jsx(ot,{})})]})},H)),P.placeholder,A.length<5&&e.jsx(a,{onClick:()=>{_()&&I.current?.open()},sx:{display:"flex",justifyContent:"center",alignItems:"center",fontSize:40,width:240,height:135,background:"#eee",cursor:o?"default":"pointer",color:"#999",mb:2},children:"+"})]})})})]}),D&&e.jsx(St,{errors:F,storeList:K}),e.jsxs(a,{sx:{display:"flex",mt:3,flexDirection:"row",flexWrap:"wrap"},children:[e.jsxs(Se,{direction:"column",spacing:1,sx:{mr:2,width:"160px"},children:[e.jsx(L,{variant:"subtitle1",sx:{fontWeight:"bold"},children:h("studio.video")}),e.jsxs(Se,{direction:"column",spacing:1,sx:{alignItems:"flex-start",opacity:.8,fontSize:"12px"},children:[e.jsx(a,{children:e.jsxs(a,{component:"span",children:[e.jsxs(a,{component:"span",sx:{color:"text.secondary"},children:[h("studio.videoType"),":"," "]}),e.jsxs(a,{component:"span",sx:{color:"secondary.main"},children:[e.jsx("a",{href:"https://www.youtube.com/",target:"_blank",rel:"noreferrer",children:"Youtube"}),","," ",e.jsx("a",{href:"https://vimeo.com/",target:"_blank",rel:"noreferrer",children:"Vimeo"})]})]})}),e.jsx(a,{children:e.jsxs(a,{component:"span",children:[e.jsxs(a,{component:"span",sx:{color:"text.secondary"},children:[h("studio.count"),":"," "]}),e.jsx(a,{component:"span",sx:{color:"secondary.main"},children:"1~3"})]})}),!o&&e.jsx(a,{children:e.jsxs(a,{component:"span",children:[e.jsxs(a,{component:"span",sx:{color:"text.secondary"},children:[h("studio.order"),":"," "]}),e.jsx(a,{component:"span",sx:{color:"secondary.main"},children:h("studio.orderTip")})]})})]})]}),e.jsx(eo,{onDragEnd:o?void 0:Q,children:e.jsx(to,{droppableId:"videos",direction:"horizontal",isDropDisabled:o,children:(P,Z)=>e.jsxs(a,{ref:P.innerRef,...P.droppableProps,sx:{display:"flex",alignItems:"center",flex:1,flexWrap:"wrap",minHeight:160,background:Z.isDraggingOver?"#f5f5f5":"transparent",transition:"background-color 0.2s ease",border:Z.isDraggingOver?"2px dashed #999":"none",borderRadius:"4px"},children:[l.blockletVideos.map((H,oe)=>e.jsx(oo,{draggableId:H,index:oe,isDragDisabled:o,children:(de,ne)=>e.jsxs(a,{ref:de.innerRef,...de.draggableProps,className:"screenshot",sx:{transform:ne.isDragging?"scale(1.05)":"none",boxShadow:ne.isDragging?"0 5px 10px rgba(0,0,0,0.15)":"none",transition:"transform 0.2s ease, box-shadow 0.2s ease"},children:[e.jsx(Mt,{url:H,style:{pointerEvents:ne.isDragging?"none":"auto"}}),!o&&e.jsx(ce,{...de.dragHandleProps,className:"action",style:{right:40,zIndex:10,color:"#fff"},children:e.jsx(Xt,{})}),!o&&e.jsx(ce,{className:"action",onClick:()=>{c(pe=>{const he=[...pe.blockletVideos];return he.splice(oe,1),{...pe,blockletVideos:he}})},children:e.jsx(ot,{})})]})},H)),P.placeholder,l.blockletVideos.length<3&&e.jsx(a,{onClick:()=>{_()&&N(!0)},sx:{display:"flex",justifyContent:"center",alignItems:"center",fontSize:40,width:240,height:135,background:"#eee",cursor:o?"default":"pointer",color:"#999",mb:2},children:"+"})]})})})]})]})}),e.jsxs(k.Suspense,{fallback:e.jsx(Ze,{}),children:[e.jsx(uo,{ref:C,locale:j,popup:!0,onUploadFinish:P=>{c({blockletLogo:P.data.filename}),f(""),C.current?.close()},plugins:["ImageEditor"],installerProps:{disabled:!0},apiPathProps:{uploader:w,disableMediaKitPrefix:!0,disableMediaKitStatus:!0},coreProps:{restrictions:{allowedFileTypes:["image/png","image/jpeg","image/webp","image/svg+xml"],maxFileSize:1024*1024*.5,maxNumberOfFiles:1}},dashboardProps:{autoOpen:"imageEditor"},imageEditorProps:{actions:{revert:!0,rotate:!0,granularRotate:!0,flip:!0,zoomIn:!0,zoomOut:!0,cropSquare:!1,cropWidescreen:!1,cropWidescreenVertical:!1},cropperOptions:{autoCrop:!0,aspectRatio:1,initialAspectRatio:1,autoCropArea:1,croppedCanvasOptions:{minWidth:256,minHeight:256}}}},"uploader-logo"),T&&e.jsx(rs,{onClose:()=>N(!1),params:l,setParams:c}),e.jsx(uo,{ref:I,locale:j,popup:!0,onUploadFinish:P=>{c(Z=>{const H=Z.blockletScreenshots||[];return H.push(P.data?.filename),{...Z,blockletScreenshots:H}}),I.current?.close()},installerProps:{disabled:!0},plugins:["ImageEditor"],apiPathProps:{uploader:S,disableMediaKitPrefix:!0,disableMediaKitStatus:!0},coreProps:{restrictions:{allowedFileTypes:["image/*","image/svg+xml"],maxFileSize:1024*1024*5,maxNumberOfFiles:5-A.length}},imageEditorProps:{actions:{revert:!0,rotate:!0,granularRotate:!0,flip:!0,zoomIn:!0,zoomOut:!0,cropSquare:!1,cropWidescreen:!1,cropWidescreenVertical:!1},cropperOptions:{autoCrop:!0,autoCropArea:1,aspectRatio:16/9,initialAspectRatio:16/9,croppedCanvasOptions:{minWidth:1280,minHeight:720,maxWidth:1280*2,maxHeight:720*2}}}},"uploader-screenshot")]})]})}ns.propTypes={projectId:n.string.isRequired,readOnly:n.bool.isRequired,params:n.object.isRequired,setParams:n.func.isRequired,paramsErrTip:n.object.isRequired,setParamsErrTip:n.func.isRequired,warning:n.object.isRequired,loading:n.bool.isRequired,blocklet:n.object.isRequired,setLoading:n.func.isRequired,initUrl:n.object,componentDid:n.string,initLogoUrl:n.string.isRequired,setInitLogoUrl:n.func.isRequired};const an=Ce.div`
146
+ margin-top: 24px;
147
+ .screenshot {
148
+ margin-bottom: 16px;
149
+ max-width: 240px;
150
+ max-height: 135px;
151
+ width: 240px;
152
+ height: 135px;
153
+ overflow: hidden;
154
+ display: flex;
155
+ align-items: center;
156
+ justify-content: center;
157
+ background-color: #eee;
158
+ margin-right: 16px;
159
+ position: relative;
160
+ .action {
161
+ visibility: hidden;
162
+ position: absolute;
163
+ width: 42px;
164
+ height: 42px;
165
+ right: 6px;
166
+ top: 6px;
167
+ border-radius: 4px;
168
+ background-color: rgba(0, 0, 0, 1);
169
+ color: rgba(255, 255, 255, 1);
170
+ }
171
+ &:hover .action {
172
+ visibility: visible;
173
+ }
174
+ }
175
+ .screenshot img {
176
+ width: 100%; /* 图像宽度填充容器 */
177
+ height: auto; /* 图像高度自适应 */
178
+ }
179
+ `,dn=(t,o,s,r)=>{const l=t?[...t]:[],c=(o?.children||[]).reduce((i,d)=>(i[d.meta.did]=!0,i),{});return Object.keys(s).forEach(i=>{if(!c[i])return;let d=!1;r||l.forEach(u=>{u.did===i&&(u.included=!0,u.required=!0,d=!0)}),d||l.push({did:i,included:!0,required:!0})}),l},un=async t=>{if(typeof t!="string")throw new Error("URL must be a string");try{const o=t.split("/").pop().split("?")[0],r=await(await fetch(t)).blob();return new File([r],o,{type:r.type})}catch{throw new Error("Failed to convert Logo URL to file")}};function*pn(t,o){let s=0;for(;s<t.size;)yield t.slice(s,s+o),s+=o}const hn=async({did:t,projectId:o,uploadType:s="logo",imageUrl:r})=>{const l=await un(r);new FormData().append("file",l);const i={uploaderId:"Uploader",relativePath:encodeURIComponent(l.name),name:encodeURIComponent(l.name),type:l.type},u=(await Kt.post(ue(ge,"/api/project",t,o,s,"upload"),null,{headers:{"Tus-Resumable":"1.0.0","Upload-Length":l.size,"X-Uploader-File-Ext":l.name.split(".").pop(),"Upload-Metadata":Object.keys(i).map(f=>`${f} ${btoa(i[f])}`).join(",")}})).headers.location,x=2*1024*1024;let p=0,m="";for(const f of pn(l,x)){const b=await Kt.patch(ue(ge,u),f,{headers:{"Tus-Resumable":"1.0.0","Upload-Offset":p,"Content-Type":"application/offset+octet-stream"}});p+=f.size,m=b.data.filename}return m},ls=({params:t,projectId:o,status:s,t:r})=>{const l=[];return t.blockletTitle||l.push({param:"blockletTitle",message:r("blocklet.publish.errorTip.noTitle")}),(!o||o===le)&&l.push({param:"projectId",message:r("blocklet.publish.errorTip.noDid")}),t.blockletVersion?Ne.valid(t.blockletVersion)||l.push({param:"blockletVersion",message:r("blocklet.publish.errorTip.inValidVersion")}):l.push({param:"blockletVersion",message:r("blocklet.publish.errorTip.noVersion")}),s===me.PROJECT.RELEASE_STATUS.published&&(t.blockletDescription||l.push({param:"blockletDescription",message:r("blocklet.publish.errorTip.noDescription")}),t.note||l.push({param:"note",message:r("blocklet.publish.errorTip.noNote")})),l.length?l:null},mn=({params:t,step:o,t:s,projectId:r})=>{if(o===0){if(!t.blockletTitle)return s("blocklet.publish.errorTip.noTitle");if(!r||r===le)return s("blocklet.publish.errorTip.noDid");if(!t.blockletDescription)return s("blocklet.publish.errorTip.noDescription")}if(o>=4){if(!t.blockletVersion)return s("blocklet.publish.errorTip.noVersion");if(!Ne.valid(t.blockletVersion))return s("blocklet.publish.errorTip.inValidVersion");if(!t.note)return s("blocklet.publish.errorTip.noNote")}return""};function is({blocklet:t,releaseId:o,connectedStores:s,projectId:r,releaseType:l,publishedStoreIds:c=[],onPublish:i=()=>{},onDelete:d=()=>{},warning:u={},projectType:x="",componentDid:p="",onOpenConnectStore:m=()=>{},behavior:f="connect",version:b,onSelectConnectStore:h=()=>{}}){const{t:j}=G(),{actions:{refreshBlocklet:v}}=De(),{session:g}=Ve(),{storeList:C}=_t({fromBlocklet:!0,blocklet:t,userDid:g?.user?.did}),I=k.useMemo(()=>s?.length?s?.reduce((T,N)=>(T[N.storeId]=N,T),{}):{},[s]),R=t?.meta?.did,y={};return Object.entries(u?.logoErrors||{}).forEach(([T,N])=>{const z=Object.values(N);z.length>0&&(y[T]=z)}),Object.entries(u?.screenshotErrors||{}).forEach(([T,N])=>{const z=Object.values(N);z.length>0&&(y[T]=y[T]?[...y[T],...z]:z)}),e.jsxs(e.Fragment,{children:[f==="connect"&&!!C?.length&&e.jsx(ct,{severity:"info",style:{width:"100%"},children:e.jsxs(a,{component:"a",href:x==="pack"?"https://www.arcblock.io/docs/blocklet-developer/en/5PXToZve-5IXAN1bc8rkpxAc":"https://www.arcblock.io/docs/blocklet-developer/en/hB5VWLfg9VnbWsL1JGLuLUfW",target:"_blank",rel:"noreferrer",sx:{color:Do[400],display:"flex",alignItems:"center"},children:[j(x==="pack"?"blocklet.publish.whyCantSeeInStore":"blocklet.publish.whyCantSeeResourceBlockletInStore"),e.jsx(qt,{sx:{marginLeft:1}})]})}),e.jsx(Eo,{children:C?.map(T=>e.jsx(Lt,{"data-cy":"store-switch",children:e.jsx($o,{children:e.jsx(Br,{behavior:f,onSelectConnectStore:h,releaseId:o,projectId:r,releaseType:l,kind:"publish",teamDid:R,warningList:y[T.url],store:T,version:b,published:c?.indexOf(T.id)>-1,connectedStore:I[T.id],onPublish:i,onDelete:d,scope:T.scope||"studio",onOpenConnectStore:m})})},T.url))}),e.jsx(Mo,{teamDid:R,storeList:C,scope:"studio",onAdd:v})]})}is.propTypes={blocklet:n.object.isRequired,projectId:n.string.isRequired,releaseId:n.string.isRequired,releaseType:n.string.isRequired,onPublish:n.func,onDelete:n.func,publishedStoreIds:n.arrayOf(n.string),connectedStores:n.arrayOf(n.object).isRequired,projectType:n.string,componentDid:n.string,warning:n.object,onOpenConnectStore:n.func,onSelectConnectStore:n.func,behavior:n.string,version:n.string.isRequired};function cs({disabled:t=!1,endpointList:o=[],teamDid:s,onAdd:r=()=>{},hiddenChildren:l=!1,open:c=!1,onClose:i=()=>{}}){const{api:d}=je(),[u,x]=k.useState(!1),[p,m]=k.useState(!0),[f,b]=k.useState(!1),[h,j]=k.useState(""),[v,g]=k.useState(""),{t:C}=G(),I=()=>{j(""),b(!1),i()},R=async()=>{x(!0);try{const{decoded:y}=kr(h,o);await d.addUploadEndpoint({input:{teamDid:s,url:y}}),r(y),I()}catch(y){const T=`${C("blocklet.publish.endpoint.addFailed")} ${ke(y)}`;g(T)}finally{x(!1)}};return e.jsxs(e.Fragment,{children:[!l&&e.jsxs(Lt,{button:!0,disabled:t,sx:y=>({marginTop:"8px",justifyContent:"center",color:y.palette.primary.main,lineHeight:"3.2"}),onClick:()=>{b(!0)},children:[e.jsx(lt,{font:!0}),e.jsx(L,{variant:"inherit",children:C("blocklet.publish.endpoint.addEndpoint")})]}),e.jsxs(at,{title:C("blocklet.publish.endpoint.addEndpoint"),fullWidth:!0,maxWidth:"md",open:c||f,onClose:I,PaperProps:{style:{minHeight:"auto"}},actions:e.jsxs(e.Fragment,{children:[e.jsx(Le,{onClick:y=>{y.stopPropagation(),I()},color:"inherit",children:C("common.cancel")}),e.jsxs(Le,{onClick:y=>{y.stopPropagation(),R()},color:"primary","data-cy":"install-blocklet-next-step",disabled:u||!h||p,variant:"contained",autoFocus:!0,children:[u&&e.jsx(Te,{size:16}),C("common.confirm")]})]}),children:[e.jsx("div",{style:{paddingTop:12,overflowY:"hidden"},children:e.jsx(Qs,{component:"div",children:e.jsx(L,{component:"div",children:e.jsx(re,{label:C("blocklet.publish.endpoint.addEndpoint"),autoComplete:"off",variant:"outlined",name:"url","data-cy":"add-blocklet-endpoint-url",fullWidth:!0,value:h,onChange:y=>{g(null);let T=!1;y.target.value.trim()||(T=!0),y.target.value.trim()||g(C("blocklet.publish.endpoint.urlEmpty")),j(y.target.value),m(T)},disabled:u,onKeyPress:y=>{y.key==="Enter"&&(y.preventDefault(),y.target.value.trim()?R():g(C("blocklet.publish.endpoint.urlEmpty")))}})})})}),!!v&&e.jsx(ct,{severity:"error",style:{width:"100%"},children:v})]})]})}cs.propTypes={teamDid:n.string.isRequired,disabled:n.bool,endpointList:n.array,onAdd:n.func,hiddenChildren:n.bool,open:n.bool,onClose:n.func};function as({endpoint:t,teamDid:o,onDelete:s="",projectId:r="",children:l=null}){const{api:c}=je(),{t:i}=G(),d=qo(),u=De(),[x,p]=k.useState(!1),[m,f]=k.useState(null),b=()=>{p(!1),f(null)},h=async()=>{try{p(!0),await c.deleteUploadEndpoint({input:{teamDid:o,did:t.id,projectId:r}}),await u?.actions?.refreshBlocklet(),s?.()}catch(g){O.error(`${i("blocklet.publish.endpoint.deleteFailed")}: ${ke(g)}`)}finally{p(!1),f(null)}},j={keyName:t.url,title:i("blocklet.publish.endpoint.deleteEndpoint"),description:i("blocklet.publish.endpoint.deleteDesc",{name:`<b>${t.url}</b>`,color:d.palette.error.main}),confirmPlaceholder:i("blocklet.publish.endpoint.confirmDesc",{name:t.url}),confirm:i("common.delConfirm"),cancel:i("common.cancel"),onConfirm:h,onCancel:b},v=g=>{t.protected||(g.stopPropagation(),f(j))};return e.jsxs(e.Fragment,{children:[l?e.jsx(a,{component:"span",onClick:v,children:l}):e.jsx(J,{"data-cy":"endpoint-action-delete",color:"primary",disabled:x,onClick:v,size:"small",children:e.jsx(ot,{sx:{zoom:.95}})}),m?e.jsx(Wr,{keyName:m.keyName,title:m.title,description:m.description,confirmPlaceholder:m.confirmPlaceholder,confirm:m.confirm,cancel:m.cancel,params:m.params,onConfirm:m.onConfirm,onCancel:m.onCancel}):null]})}as.propTypes={endpoint:n.object.isRequired,teamDid:n.string.isRequired,onDelete:n.func,projectId:n.string,children:n.node};function ds({connectedEndpoint:t,onDisconnect:o=()=>{},onDelete:s=()=>{},endpoint:r,teamDid:l,projectId:c=""}){const[i,d]=k.useState(null),u=!!i,{t:x}=G(),[p,m]=k.useState(!1),f=g=>{g.stopPropagation(),window.open(Uo(`${ue(r.url)}`,{allowDomains:null}))},b=g=>{d(g.currentTarget)},h=()=>{d(null)},j=()=>{m(!1),o()},v=[{label:x("blocklet.publish.endpoint.visitEndpoint"),action:f,icon:qt},{label:x("common.disconnect"),action:()=>{h(),m(!0)},icon:er,hidden:!t}];return e.jsxs(e.Fragment,{children:[e.jsx(J,{ref:i,color:"primary",onClick:b,size:"small",children:e.jsx(tr,{sx:{zoom:.95}})}),e.jsxs(or,{anchorEl:i,open:u,onClose:h,anchorOrigin:{vertical:"bottom",horizontal:"center"},transformOrigin:{vertical:"top",horizontal:"center"},children:[v.map(g=>g.hidden?null:e.jsxs(be,{dense:!0,onClick:g.action,disabled:g.disabled,children:[g.icon&&e.jsx(g.icon,{color:"action",sx:{marginRight:1}}),e.jsx(a,{sx:{color:"action"},children:g.label})]},g.label)),e.jsx(as,{endpoint:r,teamDid:l,onDelete:s,projectId:c,children:e.jsxs(be,{dense:!0,disabled:r.protected,children:[e.jsx(ot,{sx:{color:r.protected?"action":"error.main",marginRight:1}}),e.jsx(a,{sx:{color:r.protected?"action":"error.main"},children:x("common.delete")})]})})]}),p&&e.jsx(dt,{displayError:!0,title:`${x("common.disconnect")} ${r.appName}`,description:x("blocklet.publish.endpoint.disconnectEndpointTip",{url:r.url}),confirm:x("common.confirm"),onConfirm:j,onCancel:()=>m(!1)})]})}ds.propTypes={connectedEndpoint:n.object.isRequired,onDisconnect:n.func,onDelete:n.func,endpoint:n.object.isRequired,teamDid:n.string.isRequired,projectId:n.string};function Tt({developerUrl:t,developerDid:o,sx:s={},...r}){return e.jsx($t,{sx:{width:24,height:24,...s},src:ue(new URL(t).origin,ge,`/user/avatar/${o}?imageFilter=resize&w=120&h=120`),...r})}Tt.propTypes={developerDid:n.string.isRequired,developerUrl:n.string.isRequired,sx:n.object};function us({endpoint:t,published:o}){const{t:s}=G(),r=()=>{window.open(Uo(`${ue(t.url)}`,{allowDomains:null}))};return e.jsxs(a,{children:[e.jsx(L,{variant:"subtitle2",children:s(o?"blocklet.publish.endpoint.publishToEndpointSuccess":"blocklet.publish.endpoint.uploadToEndpointSuccess",{name:t.appName})}),e.jsx(J,{size:"small",sx:{mt:1},onClick:r,variant:"contained",color:"success",children:s("common.visitTarget",{name:t.appName})})]})}us.propTypes={endpoint:n.object.isRequired,published:n.bool.isRequired};const po=jo(({className:t,...o})=>e.jsx(xe,{...o,classes:{popper:t}}))(({theme:t})=>({[`& .${nr.tooltip}`]:{backgroundColor:"#fff",color:"rgba(0, 0, 0, 0.87)",borderRadius:8,padding:t.spacing(2),fontSize:t.typography.pxToRem(12),border:"1px solid rgba(0,0,0,0.08)",boxShadow:"0px 4px 8px rgba(0, 0, 0, 0.05)"}}));function ps({teamDid:t,projectId:o="",releaseId:s="",endpoint:r,warningList:l=[],onDelete:c=()=>{},published:i=!1,onPublish:d=()=>{},connectedEndpoint:u=null,onOpenConnectEndpoint:x=()=>{}}){const{t:p}=G(),{api:m}=je(),[f,b]=k.useState(!1),h=_o({messageType:"connect-endpoint-message",onOpen:()=>b(!0),onClose:()=>b(!1)}),j=!!u,v=()=>{h(async(y,T)=>{try{const N=await m.connectToEndpoint({input:{did:t,endpointId:r.id,projectId:o}});if(!N?.url){O.error("failed to connect to endpoint");return}T(N.url),await x({did:t,projectId:o,endpointId:r.id}),b(!1)}catch(N){const z=ke(N);O.error(z),b(!1)}})},g=async()=>{try{await m.disconnectFromEndpoint({input:{did:t,endpointId:r.id,projectId:o}}),c()}catch(y){O.error(ke(y))}},C=()=>{b(!0),m.publishToEndpoint({input:{did:t,endpointId:r.id,projectId:o,releaseId:s}}).then(()=>{O.success(e.jsx(us,{endpoint:r,published:!0}),{duration:1e4}),d?.(null)}).catch(y=>{O.error(ke(y)),d?.(y)}).finally(()=>{b(!1)})};k.useEffect(()=>{j&&b(!1)},[j]);const I=l.length>0,R=e.jsxs(J,{sx:{paddingLeft:2,paddingRight:2,fontSize:15,width:130,height:"100%"},disabled:I,onClick:C,children:[f?e.jsx(Te,{sx:{marginRight:1},size:16}):e.jsx(sr,{sx:{marginRight:1,fontSize:20}}),p("common.upload")]});return e.jsxs(a,{sx:{display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"center",overflow:"hidden",width:"100%"},children:[e.jsxs(a,{sx:{flexShrink:1,display:"flex",flexDirection:"column",overflow:"hidden",flex:1},children:[e.jsx(a,{sx:{display:"flex",flexDirection:"row"},children:e.jsx(L,{component:"span",sx:{fontSize:16,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},variant:"subtitle1",children:r.appName})}),e.jsx(L,{sx:{fontSize:14,opacity:.5,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},component:"span",variant:"inherit",children:`${r.url}`})]}),e.jsxs(a,{sx:{flex:1,display:"flex",flexDirection:"row",justifyContent:"flex-end",alignItems:"center"},children:[u&&e.jsx(po,{placement:"top",title:e.jsxs(a,{children:[e.jsx(L,{component:"span",variant:"caption",sx:{opacity:.7},children:p("blocklet.publish.developerInfo")}),e.jsxs(a,{sx:{display:"flex",flexDirection:"row",alignItems:"center",gap:1,mt:1},children:[e.jsx(Tt,{developerUrl:r.url,developerDid:u.developerDid,sx:{width:42,height:42}}),e.jsxs(a,{sx:{flex:1},children:[e.jsx(L,{component:"span",variant:"subtitle1",children:u.developerName}),e.jsx(Rt,{size:14,copyable:!0,compact:!0,responsive:!1,did:u.developerDid})]})]})]}),children:e.jsx(a,{children:e.jsx(Tt,{developerUrl:r.url,developerDid:u.developerDid,sx:{marginRight:1,cursor:"help"}})})}),e.jsxs(tt,{disabled:f,variant:"outlined",sx:{height:38},size:"small",children:[!j&&e.jsxs(J,{sx:{paddingLeft:2,paddingRight:2,fontSize:15,width:130},onClick:v,children:[f?e.jsx(Te,{sx:{marginRight:1},size:16}):e.jsx(rr,{sx:{marginRight:1}}),p("common.connect")]}),j&&i&&e.jsxs(J,{disabled:!0,sx:{paddingLeft:2,paddingRight:2,fontSize:15,width:130},children:[f?e.jsx(Te,{sx:{marginRight:1},size:16}):e.jsx(Ao,{sx:{marginRight:1}}),p("common.uploaded")]}),j&&!i&&(I?e.jsx(po,{title:e.jsxs(a,{children:[e.jsx(a,{sx:{color:"error.main",mb:.5},children:p("blocklet.publish.storeRule.warning")}),l.map((y,T)=>e.jsxs(a,{sx:{color:"error.main"},children:[T+1,". ",y]},y))]}),children:e.jsx("div",{children:R})}):R),e.jsx(ds,{projectId:o,endpoint:r,teamDid:t,connectedEndpoint:u,onDisconnect:g,onDelete:c})]})]})]})}ps.propTypes={teamDid:n.string.isRequired,published:n.bool,connectedEndpoint:n.shape({endpointId:n.string,accessKeyId:n.string,accessKeySecret:n.string,createdBy:n.string,developerDid:n.string,developerName:n.string,developerEmail:n.string}),warningList:n.array,projectId:n.string,releaseId:n.string,endpoint:n.shape({id:n.string.isRequired,appName:n.string,url:n.string.isRequired,endpoint:n.string.isRequired,protected:n.bool,connected:n.bool}).isRequired,onDelete:n.func,onOpenConnectEndpoint:n.func,onPublish:n.func};function hs({releaseId:t,blocklet:o,connectedEndpoints:s,projectId:r,publishedEndpointIds:l=[],onPublish:c=()=>{},onDelete:i=()=>{},warning:d={},onOpenConnectEndpoint:u=()=>{}}){const{actions:{refreshBlocklet:x}}=De(),{session:p}=Ve(),{t:m}=G(),f=(o?.settings?.endpointList||[]).filter(v=>v.scope===p?.user?.did),b=k.useMemo(()=>s?.length?s?.reduce((v,g)=>(v[g.endpointId]=g,v),{}):{},[s]),h=o?.meta?.did,j={};return Object.entries(d?.logoErrors||{}).forEach(([v,g])=>{const C=Object.values(g);C.length>0&&(j[v]=C)}),Object.entries(d?.screenshotErrors||{}).forEach(([v,g])=>{const C=Object.values(g);C.length>0&&(j[v]=j[v]?[...j[v],...C]:C)}),e.jsxs(e.Fragment,{children:[!!f?.length&&e.jsx(ct,{severity:"info",style:{width:"100%"},children:e.jsx(a,{sx:{color:Do[400]},children:m("blocklet.publish.endpoint.uploadToEndpoint")})}),e.jsx(Eo,{sx:{flex:1},children:f?.map(v=>e.jsx(Lt,{"data-cy":"endpoint-switch",children:e.jsx($o,{children:e.jsx(ps,{releaseId:t,projectId:r,teamDid:h,warningList:j[v.url],endpoint:v,published:l?.indexOf(v.id)>-1,connectedEndpoint:b[v.id],onPublish:c,onDelete:i,onOpenConnectEndpoint:u})})},v.url))}),e.jsx(cs,{teamDid:h,endpointList:f,onAdd:x})]})}hs.propTypes={releaseId:n.string.isRequired,blocklet:n.object.isRequired,projectId:n.string.isRequired,warning:n.object,onPublish:n.func,onOpenConnectEndpoint:n.func,onDelete:n.func,connectedEndpoints:n.arrayOf(n.object).isRequired,publishedEndpointIds:n.arrayOf(n.string)};function ms({did:t,params:o,setParams:s,projectId:r,open:l,onClose:c}){const{t:i}=G(),[d,u]=k.useState(!1),{api:x}=je(),[p,m]=k.useState(!1),[f,b]=k.useState(!1),h=()=>{m(o.autoUpload),b(o.possibleSameStore),u(!1),c(!1)},j=async()=>{u(!0);try{await x.updateProject({input:{did:t,projectId:r,blockletTitle:o.blockletTitle||"",blockletDescription:o.blockletDescription||"",blockletIntroduction:o.blockletIntroduction||"",autoUpload:!!p,possibleSameStore:!!f}}),s({autoUpload:p,possibleSameStore:f}),c(!1)}catch(g){O.error(g.message)}u(!1)};k.useEffect(()=>{m(o.autoUpload),b(o.possibleSameStore)},[o]);const v=!!(r&&r!==le);return e.jsx(at,{title:i("blocklet.publish.projectSettings"),disableEscapeKeyDown:!0,disablePortal:!1,fullWidth:!0,open:l,onClose:h,actions:e.jsxs(e.Fragment,{children:[e.jsx(J,{onClick:g=>{g.stopPropagation(),c()},color:"inherit",children:i("common.cancel")}),v&&e.jsxs(J,{onClick:g=>{g.stopPropagation(),j()},color:"primary","data-cy":"install-blocklet-next-step",disabled:d,variant:"contained",autoFocus:!0,children:[d&&e.jsx(Te,{size:16}),i("common.confirm")]})]}),children:v?e.jsxs(a,{component:"label",sx:{display:"flex",flexDirection:"column",gap:2},children:[e.jsxs(a,{sx:{display:"flex",flexDirection:"row",alignItems:"center"},children:[e.jsx(a,{component:ae,icon:"ph:upload",sx:{fontSize:24,mr:2}}),e.jsx(L,{variant:"body1",sx:{flex:1},children:i("blocklet.publish.autoUploadTip")}),e.jsx(Ae,{checked:p,onChange:(g,C)=>m(C)})]}),e.jsxs(a,{component:"label",sx:{display:"flex",flexDirection:"row",alignItems:"center"},children:[e.jsx(a,{component:ae,icon:"fluent-mdl2:merge-duplicate",sx:{fontSize:24,mr:2}}),e.jsx(L,{variant:"body1",sx:{flex:1},children:i("blocklet.publish.possibleSameStoreTip")}),e.jsx(Ae,{checked:f,onChange:(g,C)=>b(C)})]})]}):e.jsxs(a,{sx:{display:"flex",flexDirection:"column",alignItems:"center"},children:[e.jsx(a,{component:ae,icon:"ph:empty",sx:{fontSize:40,mb:3,opacity:.6}}),e.jsx(L,{variant:"body1",sx:{flex:1},children:i("blocklet.publish.needProjectId")})]})})}ms.propTypes={did:n.string.isRequired,params:n.object.isRequired,open:n.bool.isRequired,onClose:n.func.isRequired,setParams:n.func.isRequired,projectId:n.string.isRequired};function bs({downloadUrl:t,installUrl:o,handleSetTip:s,isPack:r,disabled:l}){const{t:c}=G(),[i,d]=k.useState(!1),u=k.useRef(null),x=()=>{d(!i)},p=m=>{u.current&&u.current.contains(m.target)||d(!1)};return e.jsxs(e.Fragment,{children:[e.jsx(J,{disabled:l,ref:u,onClick:x,children:e.jsx(a,{component:ae,sx:{fontSize:18},icon:"bxs:download"})}),e.jsx(wo,{sx:{zIndex:10},open:i,anchorEl:u.current,placement:"bottom-end",role:void 0,transition:!0,disablePortal:!0,children:({TransitionProps:m})=>e.jsx(vo,{...m,style:{transformOrigin:"center top"},children:e.jsx(At,{children:e.jsx(Co,{onClickAway:p,children:e.jsxs(Ro,{id:"split-button-menu",autoFocusItem:!0,sx:{maxHeight:300,overflowY:"auto",zIndex:10},children:[r&&e.jsx(a,{component:"a",href:o,target:"_blank",rel:"noreferrer",sx:{textDecoration:"none"},children:e.jsxs(be,{sx:{color:"#333"},children:[e.jsx(a,{component:ae,sx:{mr:1},icon:"ic:round-install-desktop"}),e.jsx(L,{variant:"inherit",children:c("blocklet.publish.installToThisServer")})]})}),e.jsxs(be,{onClick:s,children:[e.jsx(a,{component:ae,sx:{mr:1},icon:"iconamoon:copy"}),e.jsx(L,{variant:"inherit",children:c("blocklet.publish.copyInstallUrl")})]}),e.jsx(a,{component:"a",href:t,target:"_blank",rel:"noreferrer",sx:{textDecoration:"none"},children:e.jsxs(be,{sx:{color:"#333"},children:[e.jsx(a,{component:ae,sx:{mr:1},icon:"ph:download"}),e.jsx(L,{variant:"inherit",children:c("common.download")})]})})]})})})})})]})}bs.propTypes={disabled:n.bool.isRequired,isPack:n.bool.isRequired,downloadUrl:n.string.isRequired,installUrl:n.string.isRequired,handleSetTip:n.func.isRequired};const ho=window.env?.serverEndpoint;function fs({projectId:t,params:o,setParamsErrTip:s,initUrl:r=null,setParams:l,mode:c,loading:i,blocklet:d,release:u=null,releaseId:x,getData:p,getRelease:m,paramsErrTip:f,warning:b,componentDid:h="",resourceRelateComponents:j,disabledSelectComponents:v=!1,saveSelectedEventsRef:g,hasSelectedResources:C,initLogoUrl:I,setLoading:R,clearHistoryParams:y,projectType:T,readOnly:N}){const{t:z,locale:W}=G(),X=[{label:e.jsx(a,{sx:{textAlign:"center",width:"100%"},children:z("blocklet.publish.store")}),value:"store"},{label:e.jsx(a,{sx:{textAlign:"center",width:"100%"},children:z("blocklet.publish.endpoint.tab")}),value:"endpoint"}],[$,A]=k.useState(X[0].value),{api:w}=je(),S=Et(),[Y,F]=k.useState(!1),[K,E]=k.useState(!1),[D,_]=k.useState(),M=We(se=>se.breakpoints.down("md")),Q=k.useMemo(()=>o?.blockletResourceType?o?.blockletResourceType:o?.blockletComponents?.length>0?o?.blockletComponents.find(Ee=>Ee.included)?"resource":"pack":"resource",[o?.blockletComponents,o?.blockletResourceType]),P=()=>{window.parent.postMessage({event:"studioDialog.uploaded",componentDid:h},"*"),m()},Z=async se=>{if(f?.blockletHomepage||f?.blockletSupport||f?.blockletCommunity){O.error(f?.blockletHomepage||f?.blockletSupport||f?.blockletCommunity);return}const Ee=ls({params:o,projectId:t,status:se,t:z});if(Ee){O.error(Ee.map(V=>V.message).join("; ")),s(Ee.reduce((V,te)=>({...V,[te.param]:te.message}),{}));return}const B={...o};if(B.blockletComponents=dn(B.blockletComponents,d,j,v),B.blockletVersion=Ne.valid(B.blockletVersion),!B.blockletVersion){O.error("Invalid Blocklet Version"),s({blockletVersion:"Invalid Blocklet Version"});return}if(I)try{const V=await hn({did:d.meta.did,projectId:t,imageUrl:I});B.blockletLogo=V,l({blockletLogo:V})}catch(V){O.error(V.message);return}if(o.resourceFromSelect){B.uploadedResource="";try{const V=Object.keys(g.current);await rt(V.map(te=>()=>{const ye=g.current[te];return sn({api:w,locale:W,projectId:t,releaseId:"",appDid:d.meta.did,component:ye.component,resources:ye.resources,initUrl:r})}),{concurrency:2})}catch(V){O.error(V?.response?.data?.error?.message||V.message),s({blockletResource:"Invalid save the resource"});return}}else o.blockletDocker?.dockerImage||(B.blockletComponents=[]);B.blockletTitle=(B.blockletTitle||"").trim(),B.blockletDescription=(B.blockletDescription||"").trim(),B.blockletSupport=(B.blockletSupport||"").trim(),B.blockletHomepage=(B.blockletHomepage||"").trim(),B.blockletCommunity=(B.blockletCommunity||"").trim(),B.blockletRepository=(B.blockletRepository||"").trim(),B.blockletIntroduction=(B.blockletIntroduction||"").trim(),B.note=(B.note||"").trim(),B.blockletComponents=(B?.blockletComponents||[]).filter(V=>V.included).map(V=>Pt(V,["did","required"])).map(JSON.stringify),B.contentType!=="docker"&&(B.blockletDocker={dockerImage:"",dockerCommand:"",dockerArgs:[],dockerEnvs:[]}),B.blockletDocker.dockerImage=B.blockletDocker.dockerImage||"",B.blockletDocker.dockerArgs.length>0&&B.blockletDocker.dockerArgs.forEach(V=>{V.proxyBehavior=V.proxyBehavior||"service"});try{await w.createRelease({input:{...B,note:JSON.stringify({note:B.note}),did:d.meta.did,projectId:t,releaseId:"",status:se,blockletSingleton:typeof B.blockletSingleton=="boolean"?B.blockletSingleton:!1}}),y(),O.success(z("blocklet.publish.createReleaseSuccess")),window.parent.postMessage({event:"studioDialog.released",componentDid:h},"*"),s({blockletResource:"",blockletTitle:"",blockletDescription:"",blockletVersion:"",blockletLogo:"",projectId:"",blockletIntroduction:"",note:""})}catch(V){const te=ke(V);O.error(te),(/resource/.test(te)||/zip/.test(te))&&s({blockletResource:te});return}const _e=await w.getProject({input:{did:d.meta.did,projectId:t}}),Pe=_e.project.lastReleaseId;o.autoUpload&&await rt(_e.project.connectedStores.map(V=>async()=>{try{const te=b.logoErrors[V.storeUrl];if(te){const we=Object.keys(te).find($e=>!!te[$e]);if(we){O.warning(z("blocklet.publish.autoPublishErrorTip",{storeName:V.storeName,error:te[we]}));return}}const ye=b.screenshotErrors[V.storeUrl];if(ye){const we=Object.keys(ye).find($e=>!!ye[$e]);if(we){O.warning(z("blocklet.publish.autoPublishErrorTip",{storeName:V.storeName,error:ye[we]}));return}}const ie=await w.publishToStore({input:{did:d.meta.did,storeId:V.storeId,storeName:V.storeName,projectId:t,releaseId:Pe,type:Q}});O.success(e.jsx(Or,{storeName:V.storeName,storeUrl:V.storeUrl,developerDid:V.developerDid,did:t,published:ie.url==="published",version:B.blockletVersion}),{duration:1e4})}catch(te){O.error(ke(te))}}),{concurrency:4}),P?.(),S(`../${t}/view/${Pe}/${B.blockletVersion}`,{replace:!0})},H=se=>(R(!0),Z(se).finally(()=>{R(!1)})),oe=async se=>{await Lr(w,se),p()},de=async se=>{await Pr(w,se),p()},ne=()=>{E(!0)},pe=ue(ho,`/api/project/${d.meta.did}/${t}/${x}/release/blocklet.json`),he=new URL(ho);he.pathname=ue(he.pathname,"/launch-blocklet/agreement"),he.searchParams.set("blocklet_meta_url",pe);const Ye=he.href,Ke=()=>_(pe);return e.jsxs(e.Fragment,{children:[e.jsx(bn,{className:"sticky-header",children:e.jsx(Wt,{left:e.jsxs(yo,{className:"breadcrumbs","aria-label":"breadcrumb",children:[e.jsx(ve,{to:"../",children:z("common.blockletStudio")}),t===le?e.jsx(L,{sx:{color:"text.primary"},children:e.jsx(Ie,{maxLength:M?6:30,children:o?.blockletTitle||"Blocklet"})}):e.jsx(ve,{to:`../${t}`,children:e.jsx(Ie,{maxLength:M?6:30,children:o?.blockletTitle||"Blocklet"})}),e.jsx(L,{sx:{color:"text.primary"},children:c==="create"?z("common.create"):o?.blockletVersion||z("common.edit")})]}),actions:e.jsxs(e.Fragment,{children:[!N&&e.jsxs(tt,{disabled:i,variant:"contained",children:[e.jsxs(J,{variant:"contained",onClick:()=>H(me.PROJECT.RELEASE_STATUS.published),children:[i&&e.jsx(Te,{size:14,sx:{mr:.5},color:"inherit"}),z("blocklet.publish.createRelease")]}),e.jsx(J,{variant:"contained",onClick:ne,children:e.jsx(ae,{icon:"mage:settings-fill",fontSize:"16px"})})]}),N&&e.jsxs(e.Fragment,{children:[e.jsx(it,{fullWidth:!0,maxWidth:"sm",open:D,onClose:()=>_(""),children:e.jsxs(a,{sx:{py:5,px:4,wordBreak:"break-all"},children:[e.jsx(L,{variant:"h6",sx:{mb:2},children:z("blocklet.publish.installResourceTip")}),e.jsx(Vo,{children:D}),e.jsxs(L,{sx:{mt:2},children:[z("blocklet.publish.installResourceTip2"),e.jsx("a",{style:{marginLeft:4},href:"https://www.arcblock.io/docs/blocklet-developer/how-to-use-install-url",target:"_blank",rel:"noreferrer",children:z("blocklet.publish.installResourceHelp")})]})]})}),e.jsxs(tt,{disabled:i,variant:"contained",children:[e.jsxs(J,{onClick:()=>F(!0),children:[i?e.jsx(Te,{size:14,sx:{mr:1},color:"inherit"}):e.jsx(lr,{sx:{fontSize:"1.3em",mr:1}}),z(M?"common.upload":"blocklet.publish.connectOrUpload")]}),e.jsx(bs,{isPack:Q==="pack",downloadUrl:ue(`${ge}/api/project/${d.meta.did}/${t}/${x}/download/${(u?.files||[])[0]}`),installUrl:Ye,handleSetTip:Ke}),e.jsx(J,{onClick:ne,children:e.jsx(ae,{icon:"mage:settings-fill",fontSize:"16px"})})]})]})]})})}),e.jsx(at,{title:z("blocklet.publish.connectOrUpload"),disableEscapeKeyDown:!0,disablePortal:!1,fullWidth:!0,open:Y,onClose:()=>F(!1),children:e.jsxs(a,{children:[e.jsx(a,{sx:{mt:-2,mb:2},children:e.jsx(Wo,{tabs:X,current:$,onChange:A})}),$==="store"&&e.jsx(is,{projectType:T,blocklet:d,version:o.blockletVersion,releaseType:Q,projectId:t,releaseId:x,componentDid:h,warning:b,onPublish:P,onOpenConnectStore:oe,onDelete:p,connectedStores:o.connectedStores||[],publishedStoreIds:u?.publishedStoreIds}),$==="endpoint"&&e.jsx(Se,{sx:{minHeight:400},children:e.jsx(hs,{blocklet:d,releaseType:Q,projectId:t,releaseId:x,warning:b,publishedEndpointIds:[],connectedEndpoints:o.connectedEndpoints||[],onPublish:P,onOpenConnectEndpoint:de,onDelete:p})})]})}),e.jsx(ms,{did:d?.meta?.did,params:o,projectId:t,open:K,setParams:l,onClose:()=>E(!1)})]})}fs.propTypes={projectId:n.string.isRequired,params:n.object.isRequired,mode:n.string.isRequired,loading:n.bool.isRequired,blocklet:n.object.isRequired,release:n.object,releaseId:n.string.isRequired,getData:n.func.isRequired,getRelease:n.func.isRequired,componentDid:n.string,resourceRelateComponents:n.object.isRequired,disabledSelectComponents:n.bool,saveSelectedEventsRef:n.object.isRequired,hasSelectedResources:n.bool.isRequired,initLogoUrl:n.string.isRequired,setLoading:n.func.isRequired,projectType:n.string.isRequired,setParamsErrTip:n.func.isRequired,warning:n.object.isRequired,setParams:n.func.isRequired,initUrl:n.object,paramsErrTip:n.object.isRequired,clearHistoryParams:n.func.isRequired,readOnly:n.bool.isRequired};const bn=Ce.div`
180
+ .sticky-header {
181
+ margin-top: -12px;
182
+ padding: 12px 0;
183
+ position: sticky;
184
+ top: 0;
185
+ z-index: 99;
186
+ display: flex;
187
+ align-items: center;
188
+ justify-content: space-between;
189
+ background-color: #fff;
190
+ padding-bottom: 12px;
191
+ border-bottom: ${({theme:t})=>`1px solid ${t.palette.divider}`};
192
+ }
193
+ `;function xs({text:t}){const{palette:o}=qo();return t?e.jsx(Vr,{style:{backgroundColor:o.background.default,color:o.text.primary},wrapperElement:{"data-color-mode":"light"},source:_r.sanitize(t),rehypePlugins:[[Mr,{target:"_blank"}]]}):e.jsx(Je,{Icon:Ot})}xs.propTypes={text:n.string.isRequired};function gs({params:t,setParams:o,paramsErrTip:s,loading:r,setParamsErrTip:l,readOnly:c}){const{t:i}=G(),[d,u]=k.useState(c?"preview":"write"),x=(p,m)=>{u(m)};return e.jsxs(a,{sx:{border:"1px solid transparent",borderRadius:2},children:[e.jsxs(a,{sx:{display:"flex",flexDirection:"row",justifyContent:"space-between",alignItems:"center"},children:[e.jsx(L,{variant:"h6",sx:{fontWeight:"bold"},children:i("common.introduction")}),e.jsxs(Lo,{value:d,onChange:x,"aria-label":"wrapped label tabs example",children:[e.jsx(st,{value:"write",label:"Write"}),e.jsx(st,{value:"preview",label:"Preview"})]})]}),e.jsx(a,{sx:{display:d==="write"?"block":"none",width:"100%",marginTop:3},children:e.jsx(re,{disabled:r||c,sx:{border:"none"},placeholder:`Blocklet ${i("common.introduction")}`,autoComplete:"off",variant:"outlined",fullWidth:!0,multiline:!0,minRows:4,value:t.blockletIntroduction||"",onChange:p=>{l({blockletIntroduction:""}),o({blockletIntroduction:p.target.value.slice(0,me.PROJECT.MAX_INTRO_LENGTH)})},error:!!s.blockletIntroduction,helperText:s.blockletIntroduction||"",slotProps:{input:{"data-cy":"export-blocklet-introduction",readOnly:c,endAdornment:e.jsxs(Xe,{position:"end",children:[t?.blockletIntroduction?.length||0," / ",me.PROJECT.MAX_INTRO_LENGTH]})}}})}),e.jsx(a,{sx:{display:d==="preview"?"block":"none",mt:3},children:e.jsx(xs,{text:t.blockletIntroduction||""})})]})}gs.propTypes={params:n.object.isRequired,setParams:n.func.isRequired,paramsErrTip:n.object.isRequired,setParamsErrTip:n.func.isRequired,readOnly:n.bool.isRequired,loading:n.bool.isRequired};function ks({step:t=0,ok:o=!1,active:s=0,error:r="",warning:l=!1}){let c="grey.500",i=t+1;return o&&(i=e.jsx(Ao,{sx:{fontSize:18,margin:0},color:"white"})),r||!o&&s>t?(c="error.main",i=e.jsx(Zt,{sx:{fontSize:18,margin:0},color:"white"})):l?(c="warning.main",i=e.jsx(Zt,{sx:{fontSize:18,margin:0},color:"white"})):s>=t&&(c="primary.main"),e.jsx(a,{sx:{width:24,height:24,bgcolor:c,borderRadius:"100%",color:"white",display:"flex",justifyContent:"center",fontWeight:"bold",fontSize:14,alignItems:"center"},children:i})}ks.propTypes={step:n.number,ok:n.bool,active:n.number,error:n.string,warning:n.bool};function js({steps:t,activeStep:o,setActiveStep:s,hasSelectedResources:r=!1,params:l,loading:c,paramsErrTip:i,warning:d,viewMode:u="",projectId:x}){const{t:p}=G(),m=()=>{s(j=>j+1)},f=()=>{s(j=>j-1)},b=j=>j===0?i?.blockletTitle||i?.projectId||i?.blockletDescription||i?.blockletHomepage||i?.blockletSupport||i?.blockletCommunity||i?.blockletRepository:j===2?i?.blockletResource||i?.blockletDocker||i?.dockerImageName:j>=4?i?.blockletVersion||i?.note:"",h=u||ls({params:l,projectId:x,t:p})===null;return e.jsxs(a,{sx:{width:300,maxWidth:300,minWidth:300,padding:2,border:"1px solid",borderColor:"divider",borderRadius:1},children:[e.jsx(ir,{activeStep:o,orientation:"vertical",children:t.map((j,v)=>{const g={},C=c||!mn({params:l,projectId:x,step:v,t:p}),I=c?"":b(v);return I&&(g.optional=e.jsx(L,{variant:"caption",color:"error",sx:{wordBreak:"break-word"},children:I}),g.error=!0),e.jsxs(cr,{children:[e.jsx(ar,{icon:e.jsx(ks,{error:I,warning:v===0?d.hasWarning:!1,active:h?99:o,step:v,ok:C}),sx:{cursor:"pointer",color:I?"error.main":"inherit"},disabled:!1,onClick:()=>s(v),...g,children:e.jsx(L,{fontSize:"14px",fontWeight:"500",color:I||!C&&o>v?"error.main":"inherit",children:j.label})}),e.jsxs(dr,{children:[e.jsx(L,{fontSize:12,children:j.description}),!h&&e.jsx(a,{sx:{mb:2},children:e.jsxs("div",{children:[v<t.length-1&&e.jsx(J,{variant:"contained",onClick:m,sx:{mt:1,mr:1},disabled:I||!C,children:p("common.continue")}),v>0&&e.jsx(J,{disabled:v===0,onClick:f,sx:{mt:1,mr:1},children:p("common.back")})]})})]})]},j.label)})}),o>=t.length-1&&e.jsx(At,{square:!0,elevation:0,sx:{p:3},children:e.jsx(L,{fontSize:12,sx:{opacity:.5},children:"Click right top button to release"})})]})}js.propTypes={steps:n.array.isRequired,activeStep:n.number.isRequired,setActiveStep:n.func.isRequired,params:n.object.isRequired,viewMode:n.oneOfType([n.string,n.bool]),loading:n.bool.isRequired,projectId:n.string.isRequired,hasSelectedResources:n.oneOfType([n.string,n.bool]),warning:n.object.isRequired,paramsErrTip:n.shape({projectId:n.string,blockletVersion:n.string,blockletTitle:n.string,blockletDescription:n.string,note:n.string,blockletResource:n.string,blockletHomepage:n.string,blockletSupport:n.string,blockletCommunity:n.string,blockletRepository:n.string,blockletDocker:n.object,dockerImageName:n.string}).isRequired};const fn=[".zip",".gz"],xn=1024*1024*100,gn=k.lazy(()=>No(()=>import("./index-CKgbiYHC.js"),__vite__mapDeps([0,1,2]),import.meta.url).then(t=>({default:t.Uploader})));function ys({app:t,projectId:o,readOnly:s,params:r,setParams:l,setParamsErrTip:c,error:i}){const{t:d,locale:u}=G(),x=k.useRef(null),p=()=>s?!1:!o||o===le?(O.error(d("blocklet.publish.errorTip.noFirstDid")),!1):!0,m=`${ge}/api/project/${t.meta.did}/${o}/resource/upload`;return e.jsxs(a,{sx:{mt:3},children:[e.jsx(L,{gutterBottom:!0,children:d("blocklet.publish.resourceUpload")}),e.jsxs(Se,{direction:"row",spacing:1,sx:{alignItems:"center",flex:1,cursor:s?"default":"pointer"},children:[!!r.uploadedResource&&e.jsx(L,{component:"a",href:`${m}/params.uploadedResource`,children:r.uploadedResource}),!s&&e.jsx(J,{variant:"outlined",size:"small",onClick:()=>{p()&&x.current?.open()},children:r.uploadedResource?d("common.change"):d("common.upload")})]}),e.jsx(k.Suspense,{fallback:e.jsx(Ze,{}),children:e.jsx(gn,{ref:x,locale:u,popup:!0,onUploadFinish:f=>{l({uploadedResource:f.data.filename}),c({blockletResource:""}),x.current?.close()},plugins:["ImageEditor"],installerProps:{disabled:!0},apiPathProps:{uploader:m,disableMediaKitPrefix:!0,disableMediaKitStatus:!0},coreProps:{restrictions:{allowedFileExts:fn,maxFileSize:xn,maxNumberOfFiles:1}}},"uploader-resource")}),!!i&&e.jsx(a,{sx:{color:"error.main",mt:1,fontSize:14},children:i})]})}ys.propTypes={app:n.object.isRequired,projectId:n.string.isRequired,readOnly:n.bool.isRequired,params:n.object.isRequired,setParams:n.func.isRequired,error:n.string.isRequired,setParamsErrTip:n.func.isRequired};function It({readOnly:t,params:o,setParams:s,paramsErrTip:r,setParamsErrTip:l,loading:c}){const{t:i}=G();return e.jsx(a,{className:"section",sx:{display:"flex",mt:3},children:e.jsxs(a,{sx:{flex:1},children:[e.jsx(re,{required:!0,disabled:c||t,label:`Blocklet ${i("common.version")}`,placeholder:`Blocklet ${i("common.version")}`,autoComplete:"off",variant:"outlined",fullWidth:!0,value:o.blockletVersion||"",onChange:d=>{l({blockletVersion:""}),s({blockletVersion:d.target.value})},error:!!r.blockletVersion,helperText:r.blockletVersion||"",slotProps:{input:{"data-cy":"blocklet-version",readOnly:t}}}),e.jsx(re,{label:i("blocklet.publish.releaseNote"),autoComplete:"off",disabled:c||t,variant:"outlined",fullWidth:!0,multiline:!0,minRows:4,required:!0,value:o.note||"",onChange:d=>{l({note:""}),s({note:d.target.value.slice(0,me.PROJECT.MAX_NOTE_LENGTH)})},error:!!r.note,helperText:r.note||"",sx:{mt:3},slotProps:{input:{"data-cy":"release-note",readOnly:t,endAdornment:e.jsxs(Xe,{position:"end",children:[o?.note?.length||0," / ",me.PROJECT.MAX_NOTE_LENGTH]})}}})]})})}It.propTypes={readOnly:n.bool.isRequired,params:n.object.isRequired,setParams:n.func.isRequired,paramsErrTip:n.object.isRequired,setParamsErrTip:n.func.isRequired,loading:n.bool.isRequired};function ws(t){for(const o in t)typeof t[o]=="string"?t[o]=t[o].replace(/\\\\/g,"\\"):typeof t[o]=="object"&&t[o]!==null&&ws(t[o]);return t}var kn=Nr();const ee=go(kn),jn={"-a":"--attach","-d":"--detach","-e":"--env","-h":"--hostname","-i":"--interactive","-it":"-it","-rm":"-rm","-m":"--memory","-p":"--publish","-P":"--publish-all","-l":"--label","-n":"--name","-q":"--quiet","-x":"--x-registry","-t":"--tty","-u":"--user","-v":"--volume","-w":"--workdir","-cgroupns":"--cgroupns","-cpus":"--cpus","-g":"--gpus","-ip6":"--ip6","--read-only":"--read-only","--add-host":"--add-host","--attach":"--attach","--blkio-weight":"--blkio-weight","--blkio-weight-device":"--blkio-weight-device","--cap-add":"--cap-add","--cap-drop":"--cap-drop","--cgroup-parent":"--cgroup-parent","--cidfile":"--cidfile","--cpu-period":"--cpu-period","--cpu-quota":"--cpu-quota","--cpu-rt-period":"--cpu-rt-period","--cpu-rt-runtime":"--cpu-rt-runtime","--cpu-shares":"--cpu-shares","--cpus":"--cpus","--cpuset-cpus":"--cpuset-cpus","--cpuset-mems":"--cpuset-mems","--detach":"--detach","--detach-keys":"--detach-keys","--device":"--device","--device-cgroup-rule":"--device-cgroup-rule","--device-read-bps":"--device-read-bps","--device-read-iops":"--device-read-iops","--device-write-bps":"--device-write-bps","--device-write-iops":"--device-write-iops","--disable-content-trust":"--disable-content-trust","--dns":"--dns","--dns-opt":"--dns-opt","--dns-search":"--dns-search","--domainname":"--domainname","--entrypoint":"--entrypoint","--env":"--env","--env-file":"--env-file","--expose":"--expose","--gpus":"--gpus","--group-add":"--group-add","--health-cmd":"--health-cmd","--health-interval":"--health-interval","--health-retries":"--health-retries","--health-start-period":"--health-start-period","--health-timeout":"--health-timeout","--help":"--help","--hostname":"--hostname","--init":"--init","--interactive":"--interactive","--ip":"--ip","--ip6":"--ip6","--ipc":"--ipc","--isolation":"--isolation","--kernel-memory":"--kernel-memory","--label":"--label","--label-file":"--label-file","--link":"--link","--link-local-ip":"--link-local-ip","--log-driver":"--log-driver","--log-opt":"--log-opt","--mac-address":"--mac-address","--memory":"--memory","--memory-reservation":"--memory-reservation","--memory-swap":"--memory-swap","--memory-swappiness":"--memory-swappiness","--mount":"--mount","--name":"--name","--network":"--network","--network-alias":"--network-alias","--no-healthcheck":"--no-healthcheck","--oom-kill-disable":"--oom-kill-disable","--oom-score-adj":"--oom-score-adj","--pid":"--pid","--pids-limit":"--pids-limit","--platform":"--platform","--privileged":"--privileged","--publish":"--publish","--publish-all":"--publish-all","--pull":"--pull","--restart":"--restart","--rm":"--rm","--runtime":"--runtime","--security-opt":"--security-opt","--shm-size":"--shm-size","--stop-signal":"--stop-signal","--stop-timeout":"--stop-timeout","--storage-opt":"--storage-opt","--sysctl":"--sysctl","--tmpfs":"--tmpfs","--tty":"--tty","--ulimit":"--ulimit","--user":"--user","--userns":"--userns","--uts":"--uts","--volume":"--volume","--volume-driver":"--volume-driver","--volumes-from":"--volumes-from","--workdir":"--workdir"},Ut={"--env":!0,"--publish":!0,"--volume":!0,"--attach":!0,"--quiet":!0,"--entrypoint":!0,"--workdir":!0,"--cidfile":!0,"--detach-keys":!0,"--disable-content-trust":!0,"--domainname":!0,"--expose":!0,"--ip":!0,"--link-local-ip":!0,"--platform":!0},yn={"--volume":!0,"--publish":!0},wn=new Set(["--publish","--volume"]),vs=t=>{const[o]=t.split(":");return o?.startsWith("/")||o?.startsWith("./")||o?.startsWith("../")||o?.startsWith("~")||o?.startsWith("$BLOCKLET")};function vn(t){return t.map(o=>{if(o.key!=="--volume"||o.value.startsWith("$BLOCKLET_APP_DIR/")||o.value.startsWith("$BLOCKLET_DATA_DIR/"))return o;const[s,...r]=o.value.split(":");if(!s||!vs(o.value))return o;const l=s.startsWith("/")?`$BLOCKLET_DATA_DIR${s}`:`$BLOCKLET_DATA_DIR/${s}`;return{...o,value:[l,...r].join(":")}})}function Cn(t){let o=!0;return t.find(r=>r.key==="--publish"&&r.type==="web")?t.map(r=>{if(r.key==="--publish"){const l={...r,type:o?"docker":r.type};return o=r.type==="web",l}return r}):t.map(r=>{if(r.key==="--publish"){const l={...r,type:o?"web":"docker"};return o=!1,l}return r})}function mo(t){if(!t)return{dockerArgs:[],dockerEnvs:[],dockerImage:"",dockerCommand:""};if(t=t.trim(),t.startsWith("$ docker run")&&(t=t.replace("$ docker run","docker run")),!t.startsWith("docker run"))return{dockerArgs:[],dockerEnvs:[],dockerImage:"",dockerCommand:""};const s=t.replace(/\\\n/g,"").replace(/\n/g," ").trim().match(/(?:[^\s"']+|'[^']*'|"[^"]*")+/g);if(!s)return{dockerArgs:[],dockerEnvs:[],dockerImage:"",dockerCommand:""};const r=[],l=[];let c=0,i="",d="";const u=[];for(;c<s.length;){const p=s[c];if(!p){c++;continue}if(p==="docker"||p==="run"){c++;continue}if((p==="-e"||p==="--env")&&c+1<s.length){const m=s[c+1]||"",[f,...b]=m.split("=");if(f){const h=b.join("=").replace(/^['"]|['"]$/g,"");l.push({key:f,value:h})}c+=2;continue}if(p.startsWith("-")&&u.length===0){const m=p.indexOf("=");let f=p,b=null;m!==-1&&(f=p.substring(0,m),b=p.substring(m+1).replace(/^['"]|['"]$/g,""));const h=jn[f];if(!h){c+=2;continue}if(h==="--publish"){let j="";if(b)j=b,r.push({key:h,value:j});else if(c+1<s.length&&!(s[c+1]||"").startsWith("-")){j=(s[c+1]||"").replace(/^['"]|['"]$/g,""),r.push({key:h,value:j}),c+=2;continue}else{r.push({key:h,value:"true"}),c++;continue}c++;continue}if(b!==null){r.push({key:h,value:b}),c++;continue}else if(c+1<s.length&&!(s[c+1]||"").startsWith("-")){const j=(s[c+1]||"").replace(/^['"]|['"]$/g,"");r.push({key:h,value:j}),c+=2;continue}else{r.push({key:h,value:"true"}),c++;continue}}u.push(p),c++}i=u[0]||"",d=u.slice(1).join(" ");const x=[];for(const p of r)p.name="",p.path="",p.prefix="",p.protocol="",p.proxyBehavior="service",p.type="docker",!(wn.has(p.key)&&p.value==="true")&&x.push(p);for(const p of l)p.custom="",p.description="",p.secure=!1,p.shared=!1,p.required=!1;return{dockerArgs:Cn(vn(x)),dockerEnvs:l,dockerImage:i,dockerCommand:d}}function Rn({dockerArgs:t,dockerEnvs:o,dockerImage:s,dockerCommand:r}){if(t.length===0&&o.length===0&&!s)return"";const l=["docker run \\"],c=new Set(["--publish","--volume","--expose","--device","--mount","--label","--cap-add","--cap-drop","--add-host","--dns","--network-alias","--sysctl","--ulimit","--network"]);for(const i of t){const{key:d,value:u}=i;if(c.has(d))if(u==="true")l.push(` ${d} \\`);else{const x=/[\s"']/g.test(u)?`"${u}"`:u;l.push(` ${d} ${x} \\`)}else if(!l.some(x=>x.startsWith(` ${d}`)))if(u==="true")l.push(` ${d} \\`);else{const x=/[\s"']/g.test(u)?`"${u}"`:u;l.push(` ${d} ${x} \\`)}}for(const i of o){const{key:d,value:u}=i,x=/["']/g.test(u)?u:`"${u}"`;l.push(` -e ${d}=${x} \\`)}return s&&l.push(` ${s} \\`),r&&l.push(` ${r} \\`),l[l.length-1]?.endsWith(" \\")&&(l[l.length-1]=(l[l.length-1]||"").slice(0,-2)),l.join(`
194
+ `)}const Cs={"--volume":t=>{const[o]=t.split(":");return o?vs(t)&&!t.startsWith("$BLOCKLET_APP_DIR/")&&!t.startsWith("$BLOCKLET_DATA_DIR/")?"Volume must start with $BLOCKLET_APP_DIR or $BLOCKLET_DATA_DIR":t.indexOf("..")>-1?'Volume cannot contain ".."':"":"Volume must start with key:value"}},et=t=>t.replace(/^[-]+/,"").replace(/-([a-z])/g,(r,l)=>l.toUpperCase()),Sn=t=>`--${t.replace(/([A-Z])/g,"-$1").toLowerCase()}`,Tn=[" -- ","~","&","|",">","<","{","}","[","]",";","$","!","*","%","&&","||",","],In=["rm ","sudo "];function Rs(t){if(t==="")return;if(/(\n|\\n|\\\n|\t|\\t|\\\t)/.test(t))throw new Error("Docker CMD is invalid");const s=t.toLocaleLowerCase();if(In.some(l=>s.indexOf(l)!==-1))throw new Error("Docker CMD is invalid");if(Tn.some(l=>t.indexOf(l)!==-1))throw new Error("Docker CMD is invalid");if(!/^(?:(?:[a-zA-Z0-9\-_.\/:=\s]+)|(?:\@{1,2}[a-zA-Z_][a-zA-Z0-9_]*))+$/.test(t))throw new Error("Docker CMD is invalid")}const Dn=Array.from(new Set(Object.keys(Ut).map(et))),En=["publish","volume"];ee.object({workdir:ee.string().trim().optional(),image:ee.string().trim().regex(/^[^\s]+$/).optional(),shell:ee.string().trim().optional(),volumes:ee.array().items(ee.string().trim()).optional(),script:ee.string().trim().optional(),installNodeModules:ee.boolean().optional(),skipWrapDockerfile:ee.boolean().optional(),tmpfs:ee.string().trim().optional(),command:ee.string().allow("").default("").optional().custom((t,o)=>{try{return Rs(t),t}catch(s){return o.error("any.invalid",{message:s.message})}},"Docker CMD validation"),runBaseScript:ee.boolean().optional(),...Dn.reduce((t,o)=>{const s=Cs[Sn(o)];return En.includes(o)?(t[o]=ee.array().items(ee.string().trim()).optional(),s?t[o]=ee.array().items(ee.string().trim().custom((r,l)=>{const c=s(r);return c?l.message(c):r})).optional():t[o]=ee.array().items(ee.string().trim()).optional(),t):(s?t[o]=ee.string().trim().custom((r,l)=>{const c=s(r);return c?l.message(c):r}).optional():t[o]=ee.string().trim().optional(),t)},{})}).optional();function Dt({index:t,item:o,dockerParams:s,setDockerParams:r,dataKey:l,t:c,readOnly:i}){const d=o?.value||"",[u,x]=k.useState(!1),p=()=>{s[l]?.splice(t,1),r({...s,[l]:[...s[l]]})},m=($,A)=>{s[l]?.[t]&&(A?(s[l][t].custom=s[l][t].value,s[l][t].value=`$${et(o.key)}`):(s[l][t].value=s[l][t].custom||"",s[l][t].custom="")),r({...s,[l]:[...s[l]]})},f=($,A)=>{const w=s[l][t]?.value||"";s[l][t]={...s[l][t],secure:A,value:A&&w===me.BLOCKLET_AUTOMATIC_ENV_VALUE?"":w},r({...s,[l]:[...s[l]]})},b=($,A)=>{s[l][t]={...s[l][t],shared:A},r({...s,[l]:[...s[l]]})},h=($,A)=>{const w=s[l][t]?.value||"";s[l][t]={...s[l][t],required:A,value:A&&w===me.BLOCKLET_AUTOMATIC_ENV_VALUE?"":w},r({...s,[l]:[...s[l]]})},j=($,A)=>{s[l][t]={...s[l][t],value:A?me.BLOCKLET_AUTOMATIC_ENV_VALUE:"",secure:!1,required:!1},r({...s,[l]:[...s[l]]})},v=$=>{s[l][t]={...s[l][t],description:$.target.value},r({...s,[l]:[...s[l]]})},g=$=>{const A=$.target.value==="web"?"web":"docker";A==="web"&&s.dockerArgs.forEach(Y=>{Y.type="docker"});const S=`/${s.dockerImage.replace(/\W/g,"-")}-${t}`;s.dockerArgs[t]={...s.dockerArgs[t],type:A,path:A==="docker"?S:"/",protocol:"http",prefix:A==="docker"?S:"/",name:"publicUrl",port:"BLOCKLET_PORT"},r({...s,dockerArgs:[...s.dockerArgs]})},C=$=>{s.dockerArgs[t]={...s.dockerArgs[t],proxyBehavior:$.target.value==="direct"?"direct":"service"},r({...s,dockerArgs:[...s.dockerArgs]})},I=$=>{const A=$.target.value;s[l][t]={...s[l][t],prefix:A,path:A==="*"?"/":A},r({...s,[l]:[...s[l]]})},R=$=>{s[l]?.[t]&&(s[l][t].value=$.target.value),r({...s,[l]:[...s[l]]})},y=d===`$${et(o.key)}`||o.custom,T=l==="dockerArgs"&&!Ut[o.key],N=yn[o.key],z=l==="dockerEnvs",W=o.key==="--publish";let X=o.key;return W&&o.type==="web"?X="--publish (Web)":z&&(X=`--env ${o.key}`),e.jsxs(a,{sx:{display:"flex",flexDirection:"row",gap:2,alignItems:"center"},children:[e.jsx(a,{sx:{width:250},children:e.jsx(L,{sx:{textOverflow:"ellipsis",width:"100%",overflow:"hidden"},children:X})}),e.jsxs(a,{sx:{display:"flex",flexDirection:"column",gap:1,flex:1},children:[e.jsx(re,{disabled:i||y||T||o.value===me.BLOCKLET_AUTOMATIC_ENV_VALUE,placeholder:"",value:y?`$${et(o.key)}`:d,sx:{flex:1},error:T,onChange:R,slotProps:{input:{endAdornment:e.jsxs(Xe,{position:"end",sx:{zoom:.9},children:[(!(N||T)||z||W)&&e.jsx(ce,{onClick:()=>x(!0),children:e.jsx(ae,{icon:"icon-park-outline:setting-config"})}),!i&&e.jsx(ce,{onClick:p,color:T?"error":"default",children:e.jsx(ae,{icon:"ic:round-delete"})})]})}}}),T&&e.jsx(L,{variant:"caption",color:"error",children:c("blocklet.publish.docker.noAllowTheArg")}),o.key==="--publish"&&e.jsx(L,{variant:"caption",sx:{color:"text.secondary"},children:c("blocklet.publish.docker.publishTips")}),o.key==="--volume"&&Cs[o.key](d)&&e.jsx(L,{variant:"caption",color:"error",children:c("blocklet.publish.docker.volumeTips")})]}),u&&e.jsx(at,{open:!0,fullWidth:!0,maxWidth:"sm",PaperProps:{style:{minHeight:0}},title:c(z?"blocklet.publish.docker.modifyEnv":"blocklet.publish.docker.modifyParam"),onClose:()=>x(!1),children:e.jsxs(a,{sx:{display:"flex",flexDirection:"column",gap:1,paddingBottom:2},children:[N||T||z?null:e.jsxs(a,{sx:{width:"100%",display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"},children:[e.jsx(L,{children:c("blocklet.publish.docker.needCustomInput")}),e.jsx(Ae,{disabled:i,checked:y,onChange:m,sx:{zoom:.9}})]}),z&&e.jsxs(a,{sx:{width:"100%",display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"},children:[e.jsx(L,{children:c("blocklet.publish.docker.shared")}),e.jsx(Ae,{disabled:i,checked:o.shared,onChange:b,sx:{zoom:.9}})]}),z&&e.jsxs(a,{sx:{width:"100%",display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"},children:[e.jsx(L,{children:c("blocklet.publish.docker.required")}),e.jsx(Ae,{disabled:i,checked:o.required,onChange:h,sx:{zoom:.9}})]}),z&&e.jsxs(a,{sx:{width:"100%",display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"},children:[e.jsx(L,{children:c("blocklet.publish.docker.secure")}),e.jsx(Ae,{disabled:i,checked:o.secure,onChange:f,sx:{zoom:.9}})]}),z&&e.jsxs(a,{sx:{width:"100%",display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"},children:[e.jsx(L,{children:c("blocklet.publish.docker.autoGenerated")}),e.jsx(Ae,{disabled:i,checked:o.value===me.BLOCKLET_AUTOMATIC_ENV_VALUE,onChange:j,sx:{zoom:.9}})]}),z&&e.jsxs(a,{sx:{mt:1,width:"100%",display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"},children:[e.jsx(L,{sx:{flex:1},children:c("blocklet.publish.docker.description")}),e.jsx(re,{disabled:i,value:o.description,onChange:v,sx:{flex:1},label:c("blocklet.publish.docker.description")})]}),W&&e.jsxs(a,{sx:{mt:1,width:"100%",display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"},children:[e.jsx(L,{sx:{flex:1},children:c("blocklet.publish.docker.portType")}),e.jsxs(Ct,{value:o.type||"docker",onChange:g,children:[e.jsx(be,{value:"docker",children:"Docker"}),e.jsx(be,{value:"web",children:"Web"})]})]}),W&&o.type==="web"&&e.jsxs(a,{sx:{mt:1,width:"100%",display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"},children:[e.jsx(L,{sx:{flex:1},children:c("blocklet.publish.docker.proxyBehavior")}),e.jsxs(Ct,{value:o.proxyBehavior||"service",onChange:C,children:[e.jsx(be,{value:"service",children:c("blocklet.publish.docker.serviceProxy")}),e.jsx(be,{value:"direct",children:c("blocklet.publish.docker.directProxy")})]})]}),W&&o.type==="web"&&e.jsxs(a,{sx:{mt:1,width:"100%",display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"},children:[e.jsx(L,{sx:{flex:1},children:c("blocklet.publish.docker.prefix")}),e.jsx(re,{disabled:i,value:o.prefix,onChange:I,sx:{flex:1},label:c("blocklet.publish.docker.prefix")})]})]})})]})}Dt.propTypes={dockerParams:n.object.isRequired,setDockerParams:n.func.isRequired,dataKey:n.string.isRequired,item:n.object.isRequired,t:n.func.isRequired,readOnly:n.bool.isRequired,index:n.number.isRequired};const $n=`
195
+ docker run --name postgrest
196
+ -p 3000:3000
197
+ -e PGRST_DB_URI="postgres://username:password@host:port/database"
198
+ -e PGRST_DB_SCHEMA="public"
199
+ -e PGRST_DB_ANON_ROLE="anon"
200
+ postgrest/postgrest
201
+ `.trim();function Ss({readOnly:t,paramsErrTip:o,setParamsErrTip:s,error:r,params:l,setParams:c}){const{t:i}=G(),[d,u]=k.useState("dockerCommand"),[x,p]=k.useState(""),[m,f]=k.useState(!1),[b,h]=k.useState("--volume"),[j,v]=k.useState(""),[g,C]=k.useState(mo(x)),I=g.dockerArgs||[],R=g.dockerEnvs||[],y=g.dockerImage||"",T=g.dockerCommand||"",N=w=>{const{value:S}=w.target;p(S)};k.useEffect(()=>{l.blockletDocker&&l.blockletDocker.dockerImage&&!y&&C(l.blockletDocker)},[l,y,C]);const z=w=>{const S=mo(w.target.value);C(Y=>{const F=Y.dockerArgs.find(D=>D.key==="--publish"&&D.type==="web");let K=!1;const E=D=>{D.type="web",D.path=F.path||"/",D.protocol=F.protocol||"http",D.prefix=F.prefix||"/",D.name=F.name||"publicUrl",D.port=F.port||"BLOCKLET_PORT"};if(S.dockerArgs.forEach(D=>{const _=Y.dockerArgs.find(M=>M.key===D.key);_&&(Object.entries(_).forEach(([M,Q])=>{Q!=null&&M!=="value"&&(D[M]=Q)}),D.proxyBehavior=D.proxyBehavior||"server",D.key==="--publish"&&D.type==="web"&&(K?D.type="docker":(E(D),K=!0)))}),F&&!S.dockerArgs.find(_=>_.key==="--publish"&&_.type==="web")){const _=S.dockerArgs.find(M=>M.key==="--publish"&&M.value===F.value);_?E(_):(K=!1,S.dockerArgs.forEach(M=>{M.key==="--publish"&&!K&&(E(M),K=!0)}))}return S.dockerEnvs.forEach(D=>{const _=Y.dockerEnvs.find(M=>M.key===D.key);_&&Object.entries(_).forEach(([M,Q])=>{Q!=null&&M!=="value"&&(D[M]=Q)})}),S})},W=()=>{if(f(!1),b==="--env"){C({...g,dockerEnvs:[...R,{key:j,value:"",custom:"",secure:!1,shared:!1,required:!1,description:j}]}),v("");return}C({...g,dockerArgs:[...I,{key:b,value:"",type:"docker",name:"",path:"",prefix:"",protocol:""}]})},X=()=>{f(!1),v("")},$=w=>{const{value:S}=w.target;C({...g,dockerImage:S}),S.indexOf(" ")>-1?s({...o,dockerImageName:i("blocklet.publish.docker.dockerImageNameError")}):s({...o,dockerImageName:""})},A=w=>{const{value:S}=w.target;C({...g,dockerCommand:S});try{Rs(S),s({...o,dockerCMD:""})}catch{s({...o,dockerCMD:i("blocklet.publish.docker.dockerCMDError")})}};return k.useEffect(()=>{d==="dockerCommand"&&p(Rn(g))},[g,d]),k.useEffect(()=>{c(w=>({...w,blockletDocker:{dockerImage:g.dockerImage,dockerCommand:g.dockerCommand,dockerArgs:g.dockerArgs,dockerEnvs:g.dockerEnvs}}))},[g,c]),e.jsxs(a,{sx:{mt:3},children:[e.jsxs(a,{sx:{width:"100%",display:"flex",flexDirection:"column",gap:2},children:[e.jsx(a,{sx:{borderBottom:1,borderColor:"divider",mb:2},children:e.jsxs(Lo,{value:d,onChange:(w,S)=>u(S),children:[e.jsx(st,{value:"dockerCommand",label:i("blocklet.publish.docker.dockerCommand")}),e.jsx(st,{value:"dockerParams",label:i("blocklet.publish.docker.dockerParams")})]})}),d==="dockerCommand"&&e.jsxs(a,{children:[e.jsx(re,{disabled:t,label:i("blocklet.publish.docker.pleaseInputDockerCommand"),placeholder:$n,autoComplete:"off",variant:"outlined",fullWidth:!0,multiline:!0,spellCheck:!1,minRows:10,value:x,onChange:N,onBlur:z,slotProps:{input:{"data-cy":"blocklet-docker-command",readOnly:t}}}),e.jsxs(a,{sx:{display:"flex",flexDirection:"row",gap:2,alignItems:"center"},children:[e.jsx(a,{sx:{flex:1}}),e.jsx(J,{sx:{mt:2},variant:"contained",onClick:()=>u("dockerParams"),children:i("blocklet.publish.docker.nextTab")})]})]}),d==="dockerParams"&&e.jsxs(a,{sx:{display:"flex",flexDirection:"column",gap:2},children:[e.jsx(re,{disabled:t,label:i("blocklet.publish.docker.dockerImageName"),placeholder:"Example: docker.io/postgrest/postgrest:latest",value:y,sx:{flex:1},color:o.dockerImageName?"error":"primary",error:!!o.dockerImageName,helperText:o.dockerImageName||"",onChange:$}),e.jsx(re,{disabled:t,label:`Docker CMD (${i("common.optional")})`,placeholder:"Docker CMD",value:T,sx:{flex:1},color:o.dockerCMD?"error":"primary",error:!!o.dockerCMD,helperText:o.dockerCMD||"",onChange:A}),e.jsx(a,{sx:{height:4}}),I.map((w,S)=>e.jsx(Dt,{index:S,item:w,dockerParams:g,setDockerParams:C,dataKey:"dockerArgs",t:i,readOnly:t},`${w.key}-${S}`)),R.map((w,S)=>e.jsx(Dt,{index:S,item:w,dockerParams:g,setDockerParams:C,dataKey:"dockerEnvs",t:i,readOnly:t},`${w.key}-${S}`)),!t&&e.jsxs(a,{sx:{display:"flex",flexDirection:"row",gap:2,alignItems:"center"},children:[e.jsx(a,{sx:{flex:1}}),e.jsx(J,{onClick:()=>f(!0),children:i("blocklet.publish.docker.addItem")})]})]})]}),!!r&&e.jsx(a,{sx:{color:"error.main",mt:1,fontSize:14},children:r}),m&&e.jsxs(it,{fullWidth:!0,open:!0,children:[e.jsx(So,{children:i("blocklet.publish.docker.addItem")}),e.jsx(To,{children:e.jsxs(ur,{sx:{mt:1,width:"100%",minWidth:480,maxWidth:"100%"},children:[e.jsx(Ct,{labelId:"demo-simple-select-helper-label",id:"demo-simple-select-helper",value:b,sx:{width:"100%"},onChange:w=>h(w.target.value),children:Object.keys(Ut).map(w=>e.jsx(be,{value:w,children:w}))}),b==="--publish"&&e.jsx(L,{variant:"caption",sx:{color:"text.secondary"},children:i("blocklet.publish.docker.publishTips")}),b==="--volume"&&e.jsx(L,{variant:"caption",sx:{color:"text.secondary"},children:i("blocklet.publish.docker.volumeTips")}),b==="--env"&&e.jsxs(a,{sx:{mt:3,width:"100%"},children:[e.jsx(re,{value:j,onChange:w=>v(w.target.value),sx:{width:"100%"},label:i("blocklet.publish.docker.envKey")}),e.jsx(pr,{children:i("blocklet.publish.docker.dockerArgValue")})]})]})}),e.jsxs(Io,{children:[e.jsx(J,{onClick:X,children:i("common.cancel")}),e.jsx(J,{onClick:W,children:i("common.confirm")})]})]})]})}Ss.propTypes={readOnly:n.bool.isRequired,params:n.object.isRequired,setParams:n.func.isRequired,error:n.string.isRequired,setParamsErrTip:n.func.isRequired,paramsErrTip:n.func.isRequired};function bo(t,o,{ttl:s=1e3*60*60,skipStorage:r=!1,onUpdate:l=()=>{}}={}){const[c,i]=Tr(o),d=k.useRef(null),u=k.useRef(l);k.useEffect(()=>{if(r)return;const p=jr(t);p&&(i(p),d.current=p),u.current(p)},[t,i,r]);const x=k.useCallback(p=>{i(m=>{const f=typeof p=="function"?p(m):{...m,...p};return yr(t,f,s,100),f})},[t,s,i]);return{state:c,setState:r?i:x,historyStateRef:d,removeStorage:()=>{wr(t)}}}const qn=({tabs:t,blocklet:o,ancestors:s=[]})=>{const r=o.meta.did;t.push({label:e.jsxs(a,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-start"},children:[e.jsx(Nt,{size:24,blocklet:o,ancestors:s}),e.jsx(a,{className:"text",sx:{ml:"4px"},children:e.jsx(a,{children:o.meta.title})})]},r),value:r})},fo=(t,o)=>{const s=Pt(t,["blockletVersion","blockletTitle","blockletDescription","blockletLogo","blockletIntroduction","blockletVideos","blockletScreenshots","blockletResourceType","blockletSupport","blockletHomepage","blockletCommunity","blockletRepository","blockletDocker","contentType","connectedStores","blockletComponents","lastReleaseId","uploadedResource","autoUpload","possibleSameStore","note","connectedEndpoints","blockletSingleton"]);return s.blockletComponents?s.blockletComponents=s.blockletComponents.map(r=>({...r,included:!0})):s.blockletComponents=(o.children||[]).map(r=>({did:r.meta.did,included:!1,required:!1})),s},An={0:"branding",1:"introduction",2:"resources",3:"blocklets",4:"version"},xo={resources:2,blocklets:3};function Ts({initUrl:t=null,...o}){const{projectId:s,mode:r,releaseId:l,lastVersion:c,componentDid:i=""}=nt(),d=s===le||r==="view",{t:u,locale:x}=G(),{blocklet:p}=De(),{state:m,setState:f,historyStateRef:b,removeStorage:h}=bo(`blocklet-studio-params-${s}-${c}`,{blockletScreenshots:[],blockletVideos:[],publishedStoreIds:[],connectedStores:[],uploadedResource:"",contentType:"blocklet",blockletResourceType:"",blockletSupport:"",blockletCommunity:"",blockletHomepage:"",blockletRepository:"",blockletDocker:{dockerImage:"",dockerArgs:[],dockerEnvs:[]},blockletSingleton:!0},{skipStorage:d}),[j,v]=He({}),[g,C]=He({}),I=k.useRef(""),[R,y]=k.useState(!1),[T,N]=He(null),{api:z}=je(),W=We(q=>q.breakpoints.down("md")),[X,$]=k.useState({}),A=k.useRef({}),{state:w,setState:S}=bo(`blocklet-studio-selectedResourceIds-${s}-${c}`,{},{skipStorage:s===le||r==="view"}),[Y,F]=k.useState(""),[K,E]=He({}),D=t?.searchParams.get("dependentComponentsMode"),_=D==="readonly",{session:M}=Ve(),{storeList:Q}=_t({fromBlocklet:!0,blocklet:p,userDid:M?.user?.did}),[P,Z]=k.useState([]);k.useEffect(()=>{Array.isArray(Q)&&Q.length>0&&Promise.all(Q.map(async q=>({...(await(await fetch(`${q.url}/__blocklet__.js?type=json`)).json()).preferences,storeInfo:q}))).then(q=>{Z(q)})},[Q.length]),k.useEffect(()=>{const q={},U={},{logoUrl:Re,screenshotUrls:qe}=ss(m,p,s);Promise.all(P.map(async fe=>{const{maxImageCount:ze,minImageCount:pt,logoImageType:Be,imageMinHeight:Me,imageMinWidth:Oe}=fe,Qe=Array.isArray(Be)?Be:Be.split(",");q[fe.storeInfo.url]||(q[fe.storeInfo.url]={}),U[fe.storeInfo.url]||(U[fe.storeInfo.url]={});const ht=U[fe.storeInfo.url],$s=q[fe.storeInfo.url];Number(ze)<=qe.length&&(ht.maxImageCount=u("blocklet.publish.storeRule.maxImageCount",{max:ze,count:qe.length,unit:ze>1?u("blocklet.publish.storeRule.screenshots"):u("blocklet.publish.storeRule.screenshot")})),Number(fe.minImageCount)>qe.length&&(ht.minImageCount=u("blocklet.publish.storeRule.minImageCount",{min:pt,count:qe.length,unit:pt>1?u("blocklet.publish.storeRule.screenshots"):u("blocklet.publish.storeRule.screenshot")}));const Jt=Re?Re.split(".").pop():"";Jt&&!(Qe.includes("jpg")?[...Qe,"jpeg"]:Qe).includes(Jt)&&($s.logoFormat=u("blocklet.publish.storeRule.logoFormat",{format:Qe.join(",")})),await Promise.all(qe.map((qs,mt)=>{const bt=new Image;return bt.src=qs,new Promise(As=>{bt.onload=()=>{const{width:Ls,height:Ps}=bt;if(Ls<Number(Oe)||Ps<Number(Me)){let Ue="";switch(mt+1){case 1:Ue=u("blocklet.publish.storeRule.first");break;case 2:Ue=u("blocklet.publish.storeRule.second");break;case 3:Ue=u("blocklet.publish.storeRule.third");break;default:Ue=`${mt+1}`;break}ht[`imageSize-${mt+1}`]=u("blocklet.publish.storeRule.minImageSize",{width:Oe,height:Me,name:Ue})}As()}})}))})).then(()=>{const fe=Object.values(q).some(Oe=>Object.values(Oe).length>0),ze=Object.values(U).some(Oe=>Object.values(Oe).length>0),Be={logoErrors:q,screenshotErrors:U,storeList:Q,hasWarning:fe||ze,hasLogoWarning:fe,hasScreenshotWarning:ze},Me=JSON.stringify(Be);Me!==I.current&&(C(Be),I.current=Me)})},[m,p.did,s,P,u]);const H=k.useMemo(()=>{const q={};return Object.keys(K).forEach(U=>{const Re=K[U];Re&&Re.forEach(qe=>{q[qe]=!0})}),q},[K]),oe=k.useCallback(q=>{_&&f({blockletComponents:[]}),E(q)},[_,E,f]),de=k.useCallback((...q)=>{S(...q),v({blockletResource:"",blockletDocker:""})},[]),ne=l==="none"?m?.lastReleaseId||"":l,[pe,he]=k.useState(r==="new-release"?4:0),Ye=t?.searchParams.get("resourcesTitle"),Ke=t?.searchParams.get("componentsTitle"),se=[{label:u("blocklet.publish.branding"),description:u("blocklet.publish.steps.branding")},{label:u("common.introduction"),description:u("blocklet.publish.steps.introduction")},{label:Ye||u("blocklet.publish.resourceTitle"),description:u("blocklet.publish.steps.resources")},{label:Ke||u("common.components"),description:u("blocklet.publish.steps.blocklets")},{label:u("blocklet.publish.versionTitle"),description:u("blocklet.publish.steps.version")}],Ee=se[pe]||se[se.length-1],B=An[pe];k.useEffect(()=>{s&&v({projectId:""})},[s,v]);const _e=k.useMemo(()=>m?.blockletResourceType==="resource"?"resource":m?.blockletComponents?.some(q=>q.included)||Object.keys(H).length||m?.uploadedResource?"pack":"resource",[m?.blockletComponents,m?.uploadedResource,H,m?.blockletResourceType]),Pe=[],V=(p?.children||[]).filter(q=>q.meta.resource?.exportApi).filter(q=>!i||q.meta.did===i);V.forEach(q=>{qn({tabs:Pe,blocklet:q,ancestors:[p]})});const[te,ye]=k.useState(Pe[0]?.value),ie=r==="view",we=Ir(()=>{if(!t)return;F(t.searchParams.get("logo")),f(U=>({...U,blockletTitle:U?.blockletTitle||t.searchParams.get("title"),blockletDescription:U?.blockletDescription||t.searchParams.get("description"),blockletIntroduction:U?.blockletIntroduction||t.searchParams.get("introduction")||t.searchParams.get("description"),blockletComponents:U?.blockletComponents?.length?U?.blockletComponents:JSON.parse(t.searchParams.get("components")||"[]"),note:U?.note||t.searchParams.get("note")||"No note"}));const q=t.searchParams.get("resources");try{const U=JSON.parse(q);$(U)}catch{}}),$e=async()=>{if(ne)try{const q=await z.getRelease({input:{did:p.meta.did,projectId:s,releaseId:ne}});if(y(!1),!q.release){O.error("Release not found");return}q.release.note=Ho(q.release.note,"note"),q.release=ws(q.release),r!=="view"&&(q.release.note=""),f(U=>({...fo({...U,...q.release,blockletVersion:r==="create"||r==="new-release"?Ne.inc(q.release.blockletVersion,"patch"):q.release.blockletVersion},p)})),N(q.release)}catch(q){y(!1),O.error(ke(q))}},Ft=async()=>{if(s===le){f({blockletVersion:"0.0.1",blockletTitle:""});return}if(!s){O.error(u("blocklet.publish.errorTip.noDid"));return}try{const U=(await Ko(z.getProject,[{input:{did:p.meta.did,projectId:s}}],{key:"getProject"})).project||{};U.blockletVersion?(r==="create"||r==="new-release")&&Ne.valid(U.blockletVersion)&&(U.blockletVersion=Ne.inc(U.blockletVersion,"patch")):U.blockletVersion="0.0.1";const Re=fo(U,p);f({...Re}),U.lastReleaseId||we()}catch(q){O.error(ke(q))}},ut=k.useCallback(async()=>{if(!R){y(!0);try{if(r==="view"){if(!ne){O.error("Empty release id");return}await Ft(),await $e();return}await Ft(),ne&&await $e()}finally{r!=="view"&&f(q=>({...q,...b.current})),y(!1)}}},[r,ne]),Is=q=>{f({blockletComponents:q})},Ds=q=>{f({blockletResourceType:q})};k.useEffect(()=>{ut()},[ut]),k.useEffect(()=>{s===le&&(r==="create"||r==="new-release")&&t&&we()},[s,t,r,we]),k.useEffect(()=>{m.contentType==="docker"?f({resourceFromSelect:!1}):m.contentType==="blocklet"?f({resourceFromSelect:!0}):m.contentType==="upload"&&f({resourceFromSelect:!1})},[m.contentType,f]);const Ht=k.useMemo(()=>!!Object.keys(w).find(q=>!!w[q].length),[w]);if(!m&&R)return e.jsx(Ze,{});if(!m)return null;const Gt=V.find(q=>q.meta.did===te),Es=q=>{ye(q)};return e.jsxs(Ln,{...o,children:[e.jsx(fs,{blocklet:p,release:T,getData:ut,getRelease:$e,mode:r,params:m,setParams:f,setParamsErrTip:v,warning:g,readOnly:ie,loading:R,setLoading:y,initLogoUrl:Y,releaseId:ne,projectId:s,projectType:_e,resourceComponents:V,resourceComponentsMap:K,resourceRelateComponents:H,resourceItem:Gt,saveSelectedEventsRef:A,hasSelectedResources:Ht,setRelease:N,paramsErrTip:j,clearHistoryParams:h}),e.jsxs(a,{sx:{display:"flex",flexDirection:"column",width:"100%"},children:[e.jsx(a,{sx:{pt:3}}),e.jsxs(a,{sx:{display:"flex",flexDirection:W?"column":"row",gap:3},children:[!W&&e.jsx(js,{steps:se,loading:R,viewMode:r==="view",params:m,hasSelectedResources:Ht||m.uploadedResource,paramsErrTip:j,warning:g,activeStep:pe,setActiveStep:he,projectId:s,resourcesUrlTitle:Ye,componentsUrlTitle:Ke}),e.jsxs(a,{sx:{flex:"1",maxWidth:"720px"},children:[!W&&B!=="introduction"&&e.jsxs(L,{variant:"h6",sx:{fontWeight:"bold",display:"flex",flexDirection:"row",alignItems:"center"},children:[Ee.label,B==="branding"&&e.jsx(xe,{title:u("blocklet.publish.brandingHelp"),placement:"right",children:e.jsx(a,{component:"a",target:"_blank",href:`https://www.arcblock.io/docs/blocklet-store/${x}/blocklet-detail-page`,sx:{paddingTop:1,marginLeft:1},style:{color:"gray"},children:e.jsx(Qt,{})})})]}),(W||B==="branding")&&e.jsx(a,{sx:{flexDirection:"column"},children:e.jsx(ns,{projectId:s,setParams:f,setParamsErrTip:v,warning:g,params:m,componentDid:i,blocklet:p,initUrl:t,loading:R,setLoading:y,paramsErrTip:j,readOnly:ie,initLogoUrl:Y,setInitLogoUrl:F})}),W&&e.jsx(a,{sx:{flexDirection:"column"},children:e.jsx(It,{loading:R,params:m,paramsErrTip:j,setParams:f,setParamsErrTip:v,readOnly:ie})}),(W||B==="introduction")&&e.jsx(a,{sx:{display:"flex",flexDirection:"column",mt:W?5:0,width:"100%"},children:e.jsx(gs,{loading:R,readOnly:ie,params:m,setParams:f,paramsErrTip:j,setParamsErrTip:v})}),W&&e.jsx(L,{variant:"h6",sx:{fontWeight:"bold",mt:5},children:se[xo.resources].label}),e.jsx(a,{sx:{display:W||B==="resources"?"flex":"none",flexDirection:"column",maxWidth:720},children:e.jsx(a,{className:"section full-width",sx:{display:"flex",mt:3},children:e.jsxs(a,{sx:{flex:1},children:[e.jsx(Fe,{control:e.jsx(Ge,{size:"small",checked:m.blockletSingleton||!1,onChange:q=>f({blockletSingleton:q.target.checked}),disabled:ie}),label:e.jsxs(a,{sx:{display:"flex",alignItems:"center",gap:.5},children:[u("blocklet.publish.singleton"),e.jsx(xe,{title:u("blocklet.publish.singletonTip"),placement:"right",children:e.jsx(a,{component:"span",sx:{display:"inline-flex",alignItems:"center",cursor:"help",color:"text.secondary"},children:e.jsx(Qt,{})})})]}),sx:{mt:0}}),e.jsxs(hr,{onChange:q=>f({contentType:q.target.value}),children:[e.jsx(Fe,{value:"blocklet",disabled:ie,control:e.jsx(xt,{size:"small",checked:m.contentType==="blocklet"}),label:u("blocklet.publish.resourceSelect")}),e.jsx(Fe,{value:"upload",disabled:ie,control:e.jsx(xt,{size:"small",checked:m.contentType==="upload"}),label:u("blocklet.publish.resourceUpload")}),e.jsx(Fe,{value:"docker",disabled:ie,control:e.jsx(xt,{size:"small",checked:m.contentType==="docker"}),label:u("blocklet.publish.resourceDocker")})]}),e.jsxs(a,{sx:{display:m.contentType==="blocklet"?"block":"none"},children:[!i&&e.jsx(Wo,{tabs:Pe,current:te,onChange:Es,sx:{ml:-2,mt:2,maxWidth:W?window.innerWidth-24:"100%"}}),e.jsx(ts,{loading:R,initialResources:X,saveSelectedEventsRef:A,selectedResourceIds:w,setSelectedResourceIds:de,setResourceComponentsMap:oe,error:j.blockletResource,app:p,readOnly:ie,component:Gt,componentDid:i,initUrl:t,params:m,showTree:m.contentType==="blocklet",setParams:f,projectId:s===le?"":s,release:{...T,id:ne}})]}),m.contentType==="upload"&&e.jsx(ys,{app:p,readOnly:ie,projectId:s===le?"":s,params:m,error:j.blockletResource,setParams:f,setParamsErrTip:v}),m.contentType==="docker"&&e.jsx(Ss,{app:p,readOnly:ie,projectId:s===le?"":s,params:m,error:j.blockletResource,setParams:f,setParamsErrTip:v,paramsErrTip:j})]})})}),W&&e.jsx(L,{variant:"h6",sx:{fontWeight:"bold",mt:5},children:se[xo.blocklets].label}),(W||B==="blocklets")&&e.jsx(a,{sx:{flexDirection:"column"},children:e.jsx(a,{className:"section full-width",sx:{display:"flex",mt:3},children:e.jsx(a,{sx:{flex:1},children:e.jsx(Go,{projectType:_e,disabled:R||ie,app:p,value:m?.blockletComponents||[],blockletResourceType:m?.blockletResourceType||"",onChange:Is,onChangeBlockletResourceType:Ds,resourceRelateComponents:H,dependentComponentsMode:D})})})}),!W&&B==="version"&&e.jsx(a,{sx:{flexDirection:"column"},children:e.jsx(It,{loading:R,params:m,paramsErrTip:j,setParams:f,setParamsErrTip:v,readOnly:ie})})]})]})]})]})}Ts.propTypes={initUrl:n.object};const Ln=Ce.div`
202
+ .section {
203
+ &.full-width {
204
+ max-width: 100%;
205
+ }
206
+ .MuiTypography-h3 {
207
+ font-size: 1.1rem;
208
+ font-weight: 700;
209
+ }
210
+ .left {
211
+ flex-shrink: 0;
212
+ width: 140px;
213
+ }
214
+ .MuiTabs-indicator {
215
+ display: none;
216
+ }
217
+ .MuiTypography-subtitle1 {
218
+ width: 120px;
219
+ font-weight: 700;
220
+ font-size: 1rem;
221
+ ${({theme:t})=>t.breakpoints.down("sm")} {
222
+ width: 80px;
223
+ }
224
+ }
225
+ }
226
+ .MuiButtonBase-root {
227
+ a {
228
+ color: inherit;
229
+ }
230
+ }
231
+ .MuiInputBase-multiline .MuiInputAdornment-positionEnd {
232
+ align-self: flex-end;
233
+ .MuiTypography-root {
234
+ font-size: 0.8rem;
235
+ }
236
+ font-size: 0.8rem;
237
+ }
238
+ `;function Pn({padding:t="",initUrl:o=null}){const{blocklet:s}=De(),r=zs(),{componentDid:l}=nt();if(k.useEffect(()=>{if(l&&window.parent){const i=`${r.pathname}${r.search}`;window.parent.postMessage({event:"popstate",page:"publish",componentDid:l,path:i},"*")}},[l,r]),!s)return null;const c={};return t&&(c.padding=t),e.jsx(zn,{style:c,children:e.jsxs(Bs,{children:[e.jsx(ft,{path:"/",element:e.jsx(Fo,{initUrl:o})}),e.jsx(ft,{path:"/:projectId",element:e.jsx(Fr,{})}),e.jsx(ft,{path:"/:projectId/:mode/:releaseId/:lastVersion",element:e.jsx(Ts,{initUrl:o})})]})})}Pn.propTypes={padding:n.oneOfType([n.string,n.number]),initUrl:n.object};const zn=Ce(a)`
239
+ a {
240
+ color: ${({theme:t})=>t.palette.primary.main};
241
+ }
242
+ `;export{Pn as default};