@abtnode/blocklet-services 1.17.8-beta-20260119-102944-6ba93a16 → 1.17.8-beta-20260121-102603-f9d0176f
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.
- package/dist/assets/{AdapterDayjs-CYW0YvmK.js → AdapterDayjs-QqQc9YbA.js} +1 -1
- package/dist/assets/{Google-DKRt92nm.js → Google-PffSpBc2.js} +1 -1
- package/dist/assets/{LottiePlayer.modern-CeQuigIa.js → LottiePlayer.modern-CE8erevJ.js} +1 -1
- package/dist/assets/access-control-B6JglGtO.js +14 -0
- package/dist/assets/actions-Do5Z9cxZ.js +64 -0
- package/dist/assets/{add-component-core-nc1ps0ni.js → add-component-core-CLOpD7CB.js} +21 -21
- package/dist/assets/add-resource-ipDE-D6W.js +1 -0
- package/dist/assets/{addon-DfWedLEC.js → addon-CrVdMlFe.js} +1 -1
- package/dist/assets/advanced-C3qjZMWH.js +14 -0
- package/dist/assets/{aigne-6nMSoyeQ.js → aigne-CeD5Xo7t.js} +1 -1
- package/dist/assets/api-BMcHDEnt.js +1 -0
- package/dist/assets/appearance-BJuIABu8.js +1 -0
- package/dist/assets/{ar-DOhYGTlW.js → ar-xXK-6slW.js} +1 -1
- package/dist/assets/audit-logs-DxVzMUJK.js +35 -0
- package/dist/assets/authorize-BxQgoA5F.js +1 -0
- package/dist/assets/{base-chart-DcZV4ZCI.js → base-chart-CQOyckBN.js} +1 -1
- package/dist/assets/{base32-7iZvvdX8.js → base32-CyUpiYTu.js} +1 -1
- package/dist/assets/bind-account-D5gBazop.js +1 -0
- package/dist/assets/branding-CDPvtKJm.js +40 -0
- package/dist/assets/{branding-CwSyd5WC.js → branding-CtbvPvdK.js} +3 -3
- package/dist/assets/branding-Dv3-0Q39.js +1 -0
- package/dist/assets/bundle-avatar-2ugE80w1.js +1 -0
- package/dist/assets/button-d8gvZuHP.js +1 -0
- package/dist/assets/{click-to-copy-BgIYUMoo.js → click-to-copy-CgakrWoh.js} +1 -1
- package/dist/assets/{cloneDeep-YxES7wNt.js → cloneDeep-q2Jbqwkh.js} +1 -1
- package/dist/assets/complete-B_lyTPVv.js +39 -0
- package/dist/assets/{component-CuKviNC8.js → component-pjnMydek.js} +37 -37
- package/dist/assets/config-BcCR6bUQ.js +1 -0
- package/dist/assets/config-BsWCoWa6.js +32 -0
- package/dist/assets/{config-D1OcHGlN.js → config-CyDF6KG9.js} +6 -6
- package/dist/assets/{config-navigation-hDihVsjx.js → config-navigation-B36NPLt0.js} +11 -11
- package/dist/assets/{config-space-DfstlHnF.js → config-space-DUkjNtdL.js} +1 -1
- package/dist/assets/{confirm-CdVn5WdC.js → confirm-CoDiNrSj.js} +1 -1
- package/dist/assets/{connect-CT2vMz6l.js → connect--GxmDNr3.js} +3 -3
- package/dist/assets/{connect-Dy0Y8HRB.js → connect-SOuN9k8I.js} +1 -1
- package/dist/assets/connect-ULEL84iL.js +1 -0
- package/dist/assets/connect-to-DnBUF-KE.js +1 -0
- package/dist/assets/{create-passport-svg-hldNORaB.js → create-passport-svg-BSRyjG0k.js} +1 -1
- package/dist/assets/{createClass-CgfWUrk8.js → createClass-DKvdNmc_.js} +1 -1
- package/dist/assets/dashboard-CkDdshHQ.js +93 -0
- package/dist/assets/{de-CtKPdGk6.js → de-CzlQlDUl.js} +1 -1
- package/dist/assets/{delete-confirm-CkiUXocp.js → delete-confirm-Cq9MJasT.js} +1 -1
- package/dist/assets/{did-address-CG36eCOx.js → did-address-CtvTDc_I.js} +1 -1
- package/dist/assets/{domain-CDTeLbkZ.js → domain-BOIdkJ_V.js} +1 -1
- package/dist/assets/domain-action-card-DuiLZ6sE.js +28 -0
- package/dist/assets/domains-C5GLc_A-.js +1 -0
- package/dist/assets/email-DN8lH7fV.js +17 -0
- package/dist/assets/engine-Crd5Z3lP.js +1 -0
- package/dist/assets/{es-BSYtSZPg.js → es-BpsyeJfJ.js} +1 -1
- package/dist/assets/exchange-passport-BvS_8Ud6.js +1 -0
- package/dist/assets/{fallback-D-IHOW-7.js → fallback-CuXkR699.js} +1 -1
- package/dist/assets/{form-Co-tgocU.js → form-CZjONW3r.js} +3 -3
- package/dist/assets/{form-text-input-CPLafaTk.js → form-text-input-BT3t62-a.js} +1 -1
- package/dist/assets/{fr-C35fi7h9.js → fr-BawgvFA1.js} +1 -1
- package/dist/assets/{fuel-BFx1ShM2.js → fuel-dijAR437.js} +1 -1
- package/dist/assets/gen-access-key-DaJCt-T5.js +1 -0
- package/dist/assets/gen-simple-access-key-DLZy8UKi.js +1 -0
- package/dist/assets/get-safe-url-czY77v8f.js +1 -0
- package/dist/assets/hi-ClGNxnSL.js +5 -0
- package/dist/assets/home-ChU7yi5l.js +1 -0
- package/dist/assets/{id-DoVb0JYr.js → id-_HQ0of3E.js} +1 -1
- package/dist/assets/{iframe-DUzp97tk.js → iframe-CYVXxx1r.js} +1 -1
- package/dist/assets/index-5RRpshJe.js +200 -0
- package/dist/assets/index-5Sys1Zsb.js +6 -0
- package/dist/assets/{index-Di2nSesc.js → index-B4A3W4qJ.js} +1 -1
- package/dist/assets/index-B4EOqUNT.js +1 -0
- package/dist/assets/{index-D1Fa760B.js → index-B5VPb4FA.js} +1 -1
- package/dist/assets/{index-C_kNXHsF.js → index-B9YNNXOw.js} +1 -1
- package/dist/assets/index-BDSBuO5S.js +7 -0
- package/dist/assets/{index-2M4w6J9r.js → index-BOoRVhLj.js} +3 -3
- package/dist/assets/{index-Bo9KtpTY.js → index-BVTsYhIX.js} +1 -1
- package/dist/assets/index-Boc2cNQ7.js +150 -0
- package/dist/assets/{index-D6pCyJv8.js → index-C2O2gJSR.js} +1 -1
- package/dist/assets/{index-8RHrVCC6.js → index-C3UXSk-k.js} +1 -1
- package/dist/assets/index-C6vJzTmT.js +81 -0
- package/dist/assets/index-CD7hq5dy.js +124 -0
- package/dist/assets/{index-3H6a5edM.js → index-CNlJloMN.js} +1 -1
- package/dist/assets/{index-D3BuekEe.js → index-CVuESID5.js} +5 -5
- package/dist/assets/{index-CEJb82tA.js → index-CZ-qZTKi.js} +1 -1
- package/dist/assets/{index-VKjWmvRV.js → index-Ci7zZ36D.js} +1 -1
- package/dist/assets/{index-CfvGuvbD.js → index-D7Er4cge.js} +1 -1
- package/dist/assets/{index-C1fKsLzf.js → index-D8oCzSQW.js} +1 -1
- package/dist/assets/{index-BUhEyicQ.js → index-DF1j89BT.js} +1 -1
- package/dist/assets/{index-DH4rC-7M.js → index-DGZbt7_m.js} +1 -1
- package/dist/assets/index-DKeuwD_Y.js +242 -0
- package/dist/assets/{index-DFUM0Pvk.js → index-Dn9eNAe6.js} +1 -1
- package/dist/assets/index-DswHt4-F.js +88 -0
- package/dist/assets/{index-DqcciDRh.js → index-Dvc-Bpkc.js} +2 -2
- package/dist/assets/index-NHiSMvgy.js +120 -0
- package/dist/assets/{index-Cx0E03Bs.js → index-WzGP4BGm.js} +1 -1
- package/dist/assets/{index-CqCXPf7W.js → index-Zxy2t-7f.js} +1 -1
- package/dist/assets/index-iOa1BVMr.js +280 -0
- package/dist/assets/index-s8xAfo-W.js +1 -0
- package/dist/assets/index-tRQj1y79.js +6 -0
- package/dist/assets/{index-ZzcJ7eKO.js → index-uUS1eXYF.js} +1 -1
- package/dist/assets/index-yoaLEniz.js +832 -0
- package/dist/assets/info-outline-rounded-DovRYvXo.js +1 -0
- package/dist/assets/{invitation-BP8hOEFv.js → invitation-DAWt0g1f.js} +3 -3
- package/dist/assets/{invitations-C8aZLxdl.js → invitations-B18y415k.js} +2 -2
- package/dist/assets/invite-DNSyQ-zG.js +1 -0
- package/dist/assets/issue-passport-Dd43b9Se.js +1 -0
- package/dist/assets/item-Cr70mAvV.js +1 -0
- package/dist/assets/{ja-DZPUwZ9l.js → ja-LErFaY57.js} +1 -1
- package/dist/assets/{ko-q4i4r9g6.js → ko-D4ub28je.js} +1 -1
- package/dist/assets/{landing-page-JLA-ZD1t.js → landing-page-CZoTtLnc.js} +1 -1
- package/dist/assets/layout-U4Obhm5w.js +29 -0
- package/dist/assets/list-BD3g0v2E.js +2 -0
- package/dist/assets/{list-3MUy-8Ol.js → list-D-9AeBju.js} +3 -3
- package/dist/assets/localization-ByZI4mSj.js +1 -0
- package/dist/assets/{log-Bq445Z1e.js → log-BWxaKOTA.js} +1 -1
- package/dist/assets/logger-B962sOsB.js +1 -0
- package/dist/assets/login-BWZaWrBW.js +1 -0
- package/dist/assets/login-method-item-aEisznLn.js +1 -0
- package/dist/assets/{login-oauth-callback-Bext19kc.js → login-oauth-callback-CB-osgdG.js} +1 -1
- package/dist/assets/{logo-uploader-CyZuvhwV.js → logo-uploader-DOPycN59.js} +1 -1
- package/dist/assets/{lost-passport-BiYg3QQI.js → lost-passport-H1fCptmJ.js} +2 -2
- package/dist/assets/metadata-DftwYKum.js +55 -0
- package/dist/assets/{nav-menu-DSdXRbfg.js → nav-menu-D7Sf6VZj.js} +1 -1
- package/dist/assets/{omit-Dq0FLBY8.js → omit-vVhnMpHQ.js} +1 -1
- package/dist/assets/{open-window-Dyu79ome.js → open-window-By98Pw1o.js} +1 -1
- package/dist/assets/{over-due-invoice-payment-DzUsy6q0.js → over-due-invoice-payment-DeFNS-Us.js} +1 -1
- package/dist/assets/overview-DEkktSML.js +116 -0
- package/dist/assets/passport-BxMVp3TG.js +1 -0
- package/dist/assets/passport-item-CIv8Q8Ng.js +1 -0
- package/dist/assets/{permission-CvrrGfG6.js → permission-B22pCnUb.js} +1 -1
- package/dist/assets/preferences-BY_s4EkY.js +1 -0
- package/dist/assets/profile-embed-DUKyv_oX.js +1 -0
- package/dist/assets/provider-icon-DbnLu_85.js +1 -0
- package/dist/assets/pt-BU7pvSz6.js +5 -0
- package/dist/assets/{publish-resource-CMuHIOUf.js → publish-resource-Be5Gs98x.js} +1 -1
- package/dist/assets/{react-beautiful-dnd.esm-CWJ5I9Zv.js → react-beautiful-dnd.esm-D7zp9L4b.js} +1 -1
- package/dist/assets/ru-CtjyU-qF.js +5 -0
- package/dist/assets/{runtime-B_ZLP4FF.js → runtime-MjoLSEeg.js} +1 -1
- package/dist/assets/{sanitize-Bzl4lTuH.js → sanitize-BHeUjEo7.js} +1 -1
- package/dist/assets/sdk-Dy-R7tw7.js +1 -0
- package/dist/assets/security-BtD9TnGk.js +22 -0
- package/dist/assets/session-UEzmH-IS.js +1 -0
- package/dist/assets/setup-Bts0WUxD.js +24 -0
- package/dist/assets/simple-select-C6gRUbia.js +1 -0
- package/dist/assets/{spaces-ix8u0ZiI.js → spaces-DtMVp8Fn.js} +1 -1
- package/dist/assets/start-Dabk9waT.js +187 -0
- package/dist/assets/{starting-progress-CWp5fTY0.js → starting-progress-Ds2lnMge.js} +1 -1
- package/dist/assets/{status-Dn_LKaNp.js → status-CicPnfGJ.js} +1 -1
- package/dist/assets/{step-actions-DIZRcnXf.js → step-actions-CnJCnymc.js} +1 -1
- package/dist/assets/{studio-CVIa8-XY.js → studio-D7qZJqJ7.js} +1 -1
- package/dist/assets/{switch-control-BRjXGc1d.js → switch-control-C5gj6NIz.js} +1 -1
- package/dist/assets/{switch-BbyTGEOo.js → switch-qh9YpwMi.js} +1 -1
- package/dist/assets/{table-tips-Dvmdodc5.js → table-tips-BSl1oNMX.js} +1 -1
- package/dist/assets/team-Djzt5BWc.js +146 -0
- package/dist/assets/th-C0DkNnMF.js +5 -0
- package/dist/assets/theme-mode-toggle-Jvn37gNg.js +1 -0
- package/dist/assets/traffic-BtuX1qMz.js +1 -0
- package/dist/assets/transfer-UdrQjD9F.js +16 -0
- package/dist/assets/unsubscribe-Bj2S8OkH.js +1 -0
- package/dist/assets/{use-app-logo-IRizt64R.js → use-app-logo-DyU2iSXF.js} +1 -1
- package/dist/assets/{use-blocklet-logo-Cf1j7pQz.js → use-blocklet-logo-ys-h-CV_.js} +1 -1
- package/dist/assets/{use-window-close-Dpj5UcYT.js → use-window-close-CT9brY7I.js} +1 -1
- package/dist/assets/{useAsync-CkKfnulP.js → useAsync-DbIyJl2v.js} +1 -1
- package/dist/assets/{useAsync-DfiOQMQ_.js → useAsync-WuOY1bFS.js} +1 -1
- package/dist/assets/{useAsyncRetry-C4R9ufi-.js → useAsyncRetry-cAGDIsw4.js} +1 -1
- package/dist/assets/{useLocalStorage-BQfIniHX.js → useLocalStorage-D8kgfBAn.js} +1 -1
- package/dist/assets/{user-center-6K47tx8j.js → user-center-DLgnUI1s.js} +5 -5
- package/dist/assets/{user-follower-BwzTutxU.js → user-follower-BbQfOSyh.js} +4 -4
- package/dist/assets/util-BCpVIbwL.js +1 -0
- package/dist/assets/util-tg9hB6_c.js +1 -0
- package/dist/assets/{vendor-arcblock-Dll6qxMT.js → vendor-arcblock-Xw2zMy0D.js} +1 -1
- package/dist/assets/{vendor-hooks-DAZ1H6Va.js → vendor-hooks-164oA5kM.js} +1 -1
- package/dist/assets/vendor-utils-BbcnEeJI.js +23 -0
- package/dist/assets/{vendor-ux-CLT2i3Pv.js → vendor-ux-BGqHwkOM.js} +10 -10
- package/dist/assets/vi-nXB9zTif.js +5 -0
- package/dist/assets/wait-connect-BED_xYYA.js +1 -0
- package/dist/assets/wallet-hidden-topbar-dnCLvPpW.js +68 -0
- package/dist/assets/wizard-C6DvqdjM.js +8 -0
- package/dist/assets/wizard-components-1u7l8zuE.js +52 -0
- package/dist/assets/wrap-locale-C2lxMNe7.js +1 -0
- package/dist/assets/{zh-G2I44gfs.js → zh-DK-_Edsp.js} +1 -1
- package/dist/assets/zh-QEwKQjt8.js +1 -0
- package/dist/assets/{zh-tw-C4Juvs-i.js → zh-tw-Us2SjBNr.js} +1 -1
- package/dist/index.html +1 -1
- package/package.json +24 -24
- package/dist/assets/access-control-RI6LQbSm.js +0 -14
- package/dist/assets/actions-BlWED76c.js +0 -64
- package/dist/assets/add-resource-BVOdOQSW.js +0 -1
- package/dist/assets/advanced-CuKHqbLO.js +0 -14
- package/dist/assets/api-B8JXuhVp.js +0 -1
- package/dist/assets/appearance-C9TkbSjV.js +0 -1
- package/dist/assets/audit-logs-DKGke9hI.js +0 -35
- package/dist/assets/authorize-DkSqywe8.js +0 -1
- package/dist/assets/bind-account-DOwM9Nhe.js +0 -1
- package/dist/assets/branding-Cak2s8bn.js +0 -1
- package/dist/assets/branding-lcfxmmPp.js +0 -40
- package/dist/assets/bundle-avatar-DwiOyeMO.js +0 -1
- package/dist/assets/button-uUU4Wycr.js +0 -1
- package/dist/assets/complete-Udiv_yFp.js +0 -39
- package/dist/assets/config-6IwEgT3b.js +0 -32
- package/dist/assets/config-CJwxv2uK.js +0 -1
- package/dist/assets/connect-DA7RO2yv.js +0 -1
- package/dist/assets/connect-to-CQMUbQkH.js +0 -1
- package/dist/assets/dashboard-BvI3ii8Z.js +0 -93
- package/dist/assets/domain-action-card-kMPYS2Nj.js +0 -28
- package/dist/assets/domains-TI6o1CvX.js +0 -1
- package/dist/assets/email-DHRHueET.js +0 -17
- package/dist/assets/engine-D_fEFx9_.js +0 -1
- package/dist/assets/exchange-passport-Cc872mjQ.js +0 -1
- package/dist/assets/gen-access-key-DrgLVRbm.js +0 -1
- package/dist/assets/gen-simple-access-key-B24d6k7g.js +0 -1
- package/dist/assets/get-safe-url-beob4f2C.js +0 -1
- package/dist/assets/hi-5fpYJkiW.js +0 -5
- package/dist/assets/home-Dw18IODa.js +0 -1
- package/dist/assets/index--WQuhwJL.js +0 -6
- package/dist/assets/index-B-8044Gs.js +0 -280
- package/dist/assets/index-B6l4xGy5.js +0 -7
- package/dist/assets/index-BOPR4Iyc.js +0 -88
- package/dist/assets/index-BeunkI-Z.js +0 -242
- package/dist/assets/index-Bpic07NM.js +0 -200
- package/dist/assets/index-C4ZzROeE.js +0 -120
- package/dist/assets/index-CXp5SI_f.js +0 -832
- package/dist/assets/index-DKzBOJCu.js +0 -81
- package/dist/assets/index-DL0wTcgx.js +0 -1
- package/dist/assets/index-DWHFecw2.js +0 -150
- package/dist/assets/index-DcW3jqfL.js +0 -6
- package/dist/assets/index-Vf51dp11.js +0 -124
- package/dist/assets/index-bEFOmVth.js +0 -1
- package/dist/assets/info-outline-rounded-DlgANjBB.js +0 -1
- package/dist/assets/invite-Cd5zEHFb.js +0 -1
- package/dist/assets/issue-passport-D7zqv3Al.js +0 -1
- package/dist/assets/item-DNj7ORqk.js +0 -1
- package/dist/assets/layout-Cwvm7lmD.js +0 -29
- package/dist/assets/list-BSXHuqLM.js +0 -2
- package/dist/assets/localization-Dond4H78.js +0 -1
- package/dist/assets/logger-CCAAJ2Xo.js +0 -1
- package/dist/assets/login-dc2t9Qyo.js +0 -1
- package/dist/assets/login-method-item-CyTsqz88.js +0 -1
- package/dist/assets/metadata-B2-Ltdko.js +0 -55
- package/dist/assets/overview-0TBmi-_i.js +0 -116
- package/dist/assets/passport-BhEaZ-sr.js +0 -1
- package/dist/assets/passport-item-DHwif94N.js +0 -1
- package/dist/assets/preferences-BBSWzZiT.js +0 -1
- package/dist/assets/profile-embed-shcOdRUI.js +0 -1
- package/dist/assets/provider-icon-DO2PqSth.js +0 -1
- package/dist/assets/pt-BFCHl6F1.js +0 -5
- package/dist/assets/ru-CSTl62kK.js +0 -5
- package/dist/assets/sdk-CktKu_IW.js +0 -1
- package/dist/assets/security-DHRU8k0u.js +0 -22
- package/dist/assets/session-Bp3LV7zJ.js +0 -1
- package/dist/assets/setup-B6-Ei_3X.js +0 -24
- package/dist/assets/simple-select-nI-W90c_.js +0 -1
- package/dist/assets/start-oRp78RMQ.js +0 -187
- package/dist/assets/team-BTz28XqK.js +0 -146
- package/dist/assets/th-D75Dlluo.js +0 -5
- package/dist/assets/theme-mode-toggle-D3bcd10D.js +0 -1
- package/dist/assets/traffic-Cea69sMW.js +0 -1
- package/dist/assets/transfer-BydXCVCg.js +0 -16
- package/dist/assets/unsubscribe-BjAjx-Fl.js +0 -1
- package/dist/assets/util-DkTwHdRu.js +0 -1
- package/dist/assets/util-DySzCymV.js +0 -1
- package/dist/assets/vendor-utils-BzQg432x.js +0 -23
- package/dist/assets/vi-D1mKYrmb.js +0 -5
- package/dist/assets/wait-connect-q0_7mz_u.js +0 -1
- package/dist/assets/wallet-hidden-topbar-joIVZ1nl.js +0 -68
- package/dist/assets/wizard-C5Kl-g70.js +0 -8
- package/dist/assets/wizard-components-DQrlaeeW.js +0 -52
- package/dist/assets/wrap-locale-5DJTJTXP.js +0 -1
- package/dist/assets/zh-CJ9vCpmv.js +0 -1
|
@@ -1,242 +0,0 @@
|
|
|
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 Dt,m as rt,L as we,g as As,i as qs,k as Ns,l as bt}from"./vendor-react-DX7tU9aY.js";import{L as Oe,j as e,al as a,aY as Et,X as n,an as xe,I as ce,d4 as Ws,d5 as _s,cr as xo,ct as nt,T as A,d6 as Os,bo as zs,s as go,co as ko,d7 as Bs,d8 as Vs,Z as lt,aT as ve,aS as Us,d9 as Ms,a6 as He,b4 as it,cB as Lt,cQ as Fs,bR as Hs,bK as Me,bW as Gs,bI as et,R as J,a7 as Se,cF as Xs,Q as jo,N as yo,P as Pt,aj as wo,p as vo,M as be,a4 as Js,b1 as Co,a0 as Ro,c3 as Ks,C as Xe,aH as Ys,S as So,A as ne,b3 as Re,da as Xt,bB as tt,db as To,W as Io,U as $t,aN as Do,cn as Zs,G as Eo,cT as Qs,aO as er,aP as tr,cU as or,cV as sr,bk as Lo,ar as rr,dc as nr,a2 as Po,a1 as ot,cW as Jt,bh as lr,bi as ir,dd as cr,de as ar,bN as vt,z as dr,F as ur,bJ as pr,bL as ft}from"./vendor-mui-core-CV-FnYH_.js";import{c as F,W as ke,V as Ie,w as hr,G as me,bk as mr,k as br,o as Kt,bo as fr,a7 as Yt,bg as xr,bp as gr,bq as kr,br as jr}from"./index-CXp5SI_f.js";import{v as yr,z as ue,x as At,D as $o,p as wr}from"./vendor-utils-BzQg432x.js";import{W as X,bE as Ao,bX as vr,b5 as $e,ba as qo,bm as No,bY as Cr,aR as qt,Q as _,bW as Nt,bZ as Wt,Y as ae,_ as Wo,v as _e,aO as ct,bc as _o}from"./vendor-ux-CLT2i3Pv.js";import{C as at}from"./confirm-CdVn5WdC.js";import{u as ze}from"./session-Bp3LV7zJ.js";import{W as Ct}from"./did-address-CG36eCOx.js";import{E as Je}from"./empty-spinner-DB1GKIOS.js";import{B as _t}from"./bundle-avatar-DwiOyeMO.js";import{S as Te}from"./shorten-label-CuBHsWUR.js";import{L as Ot}from"./list-header-BEZSwSji.js";import{C as Oo}from"./click-to-copy-BgIYUMoo.js";import{t as Zt}from"./question-mark-circle.svg-B0bcUgC5.js";import{t as Rr,b as Sr}from"./vendor-hooks-DAZ1H6Va.js";import{u as Fe}from"./useSetState-CUbypYGT.js";import{e as Tr}from"./engine-D_fEFx9_.js";import"./api-B8JXuhVp.js";import{T as Ir,S as Dr}from"./vendor-mui-x-DwN6dcQH.js";import{D as Qt,C as eo,P as to}from"./react-beautiful-dnd.esm-CWJ5I9Zv.js";import{u as zo,a as Er,b as Lr,d as Pr,e as $r}from"./wait-connect-q0_7mz_u.js";import{f as ge}from"./index-DBs9Ljax.js";import{c as Ar,A as Bo,S as qr,U as Nr}from"./item-DNj7ORqk.js";import{D as Wr}from"./delete-confirm-CkiUXocp.js";import{g as Vo}from"./get-safe-url-beob4f2C.js";import{u as Pe}from"./index-C_kNXHsF.js";import{M as _r}from"./index-Cax1AxL9.js";import{p as Or}from"./purify.es-HRjpPm7y.js";import{r as zr}from"./index-B9FojAjj.js";import{B as te}from"./joi-browser.min-eEVeW7LC.js";import"./vendor-arcblock-Dll6qxMT.js";import"./raf-schd.esm-BZ-2sjAE.js";import"./joi-browser.min-CUdv8seQ.js";function zt({did:t,projectId:o,title:s,logo:r,describe:l}){const i=`${`${F.WELLKNOWN_SERVICE_PATH_PREFIX}/api/project/${t}/${o}/logo/upload`}/${r}`,[d,u]=k.useState(!1),x=Oe(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(Et,{sx:{borderRadius:1},src:i}),e.jsxs(a,{children:[e.jsx(Te,{hiddenTip:!0,maxLength:"24",sx:{fontSize:"14px",fontWeight:"500",color:x?"primary.main":""},children:s||"/"}),e.jsx(Te,{hiddenTip:!0,maxLength:"58",sx:{fontSize:"12px",color:x||d?"primary.main":"grey.700"},children:l||"/"})]})]})}zt.propTypes={projectId:n.string.isRequired,did:n.string.isRequired,title:n.string.isRequired,logo:n.string.isRequired,describe:n.string.isRequired};function Uo({initUrl:t=null}){const o=Dt(),s=t?.searchParams.get("tenantScope")||"",{t:r,locale:l}=X(),{api:c}=ke(),{api:i}=ze(),[d,u]=k.useState(!0),{blocklet:x}=Ie(),[p,m]=k.useState(null),[f,b]=k.useState(!1),h=Oe(E=>E.breakpoints.down("xl")),j=Oe(E=>E.breakpoints.down("md")),{componentDid:v=""}=rt(),[g,C]=k.useState(null),I=`publish-${x.meta.did}`,R=Ao(I),[y,T]=k.useState({searchText:R.searchText||"",pageSize:R.rowsPerPage||10,page:1}),O=()=>{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),_.error(E.message)})},N=()=>{o(`${F.UNOWNED_DID}/create/none/0.0.0`,{replace:!0})},z=E=>{m(E)},K=()=>{u(!1),b(!0)},L=()=>{b(!1),m(null)},$=E=>{_.error(E.message),b(!1),m(null)},w=E=>{if(!E?.deleted){_.error("Delete project failed");return}O(),b(!1),m(null)};k.useEffect(()=>{O()},[]);const S=k.useMemo(()=>{if(!y.searchText)return g;let E=y.searchText?.trim();return E?(E=vr(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(Je,{})});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($e,{onClick:N,variant:"contained",children:r("blocklet.publish.createBlocklet")})]});const Z=[{label:"Blocklet",name:"blockletTitle",minWidth:160,options:{customBodyRenderLite:E=>{const D=g[E];return e.jsx(we,{to:`${D.id}`,children:e.jsx(zt,{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(qo,{type:"success",children:E}):""}},{label:"DID",name:"blockletDid",options:{customBodyRender:E=>E?e.jsx(Ct,{size:14,compact:!0,responsive:!1,did:E}):null}},h||v?null:{label:r("common.createdBy"),name:"createdBy",options:{customBodyRender:E=>E?e.jsx(Ct,{onClick:()=>{o(`${F.WELLKNOWN_SERVICE_PATH_PREFIX}/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(V=>V.meta.did===E);return D?e.jsxs(a,{sx:{display:"flex",alignItems:"center",justifyContent:"flex-start"},children:[e.jsx(_t,{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(Te,{children:E})})}},{label:r("common.updatedAt"),name:"updatedAt",options:{searchable:!1,customBodyRender:E=>e.jsx(No,{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(we,{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(Ws,{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(we,{style:{display:"flex"},to:`${D.id}/view/${D.lastReleaseId}/${D.blockletVersion}`,children:e.jsx(_s,{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:()=>z(D),children:e.jsx(xo,{sx:{fontSize:18}})})})]})}}}].filter(Boolean),H=({page:E,rowsPerPage:D,searchText:V})=>{y.pageSize!==D?T(U=>({...U,searchText:"",pageSize:D,page:1})):y.page!==E+1?T(U=>({...U,searchText:"",page:E+1})):y.searchText!==V&&T(U=>({...U,searchText:V,page:1}))},Q=f?e.jsx(hr,{open:!0,popup:!0,onClose:L,action:"check-has-project-id",locale:l,checkFn:i.get,saveConnect:!1,forceConnected:!1,checkTimeout:300*1e3,onSuccess:w,onError:$,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(Br,{children:[e.jsx(Ot,{sx:{mb:2},left:e.jsxs(a,{sx:{display:"flex",flexDirection:"row",alignItems:"center"},children:[e.jsxs(A,{variant:"h4",children:[r("common.blocklets")," (",S.length,")"]}),e.jsx(xe,{title:r("blocklet.publish.createBlockletTip"),arrow:!0,placement:"right",children:e.jsx(Os,{sx:{opacity:.6,fontSize:"1.1em",ml:1}})})]}),actions:e.jsxs(e.Fragment,{children:[e.jsx(Cr,{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($e,{onClick:N,variant:"contained",children:[e.jsx(nt,{style:{fontSize:"1.3em",marginRight:4}}),r("blocklet.publish.createBlocklet")]})]})}),e.jsx(qt,{className:"main-table",locale:l,data:S,columns:Z,options:{search:!1,sort:!1,download:!1,filter:!1,print:!1,viewColumns:!1,searchAlwaysOpen:!0,rowsPerPageOptions:[10,20,50,100]},durable:I,onChange:H}),p&&e.jsx(at,{title:`${r("common.delete")} ${p.blockletTitle}`,description:r("blocklet.publish.deleteProject.description"),confirm:r("common.confirm"),onConfirm:K,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(zs,{color:"warning",sx:{marginRight:1,fontSize:20,marginTop:"2px"}}),e.jsx(A,{component:"span",variant:"inherit",sx:{color:"text.secondary"},children:E})]}))})}),Q]})}const Br=go(a)`
|
|
3
|
-
${({theme:t})=>t.breakpoints.down("md")} {
|
|
4
|
-
.MuiTableRow-root {
|
|
5
|
-
border-color: ${({theme:t})=>t.palette.divider};
|
|
6
|
-
}
|
|
7
|
-
}
|
|
8
|
-
`;Uo.propTypes={initUrl:n.object};const Mo=(t,o)=>{if(!t)return"";try{return o?JSON.parse(t)[o]:JSON.parse(t)}catch{}return t};function Vr(){const{t,locale:o}=X(),{projectId:s}=rt(),{api:r}=ke(),[l,c]=k.useState(!0),{blocklet:i}=Ie(),d=Oe(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=Ao(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),_.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),_.error(w.message)})};k.useEffect(()=>{R()},[]);const[y,T]=k.useState(""),O=()=>{c(!1);const w=f.id;r.deleteRelease({input:{did:i.meta.did,projectId:s,releaseId:w}}).then(()=>{c(!1),I(),_.success(t("common.removeSuccess")),b(null)}).catch(S=>{c(!1),_.error(S.message)})},N=w=>{b(w)};if(!u&&l)return e.jsx(a,{sx:{display:"flex",justifyContent:"center",alignItems:"center",marginTop:"40px"},children:e.jsx(Je,{})});if(!u)return null;const z=e.jsxs(ko,{className:"breadcrumbs","aria-label":"breadcrumb",children:[e.jsx(we,{to:"..",children:t("common.blockletStudio")}),e.jsx(A,{sx:{color:"text.primary"},children:e.jsx(Te,{maxLength:d?6:30,children:p.blockletTitle})})]});if(!u.length)return e.jsxs(e.Fragment,{children:[z,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(we,{to:"create/none",children:e.jsx($e,{variant:"contained",children:t("blocklet.publish.createRelease")})})]})]});const K=[{label:t("common.version"),name:"blockletVersion",minWidth:160,options:{customBodyRenderLite:w=>{const S=u[w];return e.jsx(we,{to:`view/${S.id}/${S.blockletVersion}`,children:e.jsx(zt,{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(A,{className:"note",children:Mo(S.note,"note")})}}},{label:t("common.status"),name:"status",options:{customBodyRender:w=>e.jsx(qo,{type:w==="published"?"success":"warning",children:w==="published"?"Released":yr(w)})}},{label:t("common.lastPublishedAt"),name:"updatedAt",options:{customBodyRenderLite:w=>{const S=u[w];return S.status!==me.PROJECT.RELEASE_STATUS.published?"":e.jsx(No,{value:Number(S.updatedAt),locale:o})}}},{label:t("common.actions"),name:"actions",options:{customBodyRenderLite:w=>{const S=u[w];let Z="",H="";const Q=S.status==="published";if(Q){const D=ue(h,`/api/project/${i.meta.did}/${p.id}/${p.lastReleaseId}/release/blocklet.json`),V=new URL(h);V.pathname=ue(V.pathname,"/launch-blocklet/agreement"),V.searchParams.set("blocklet_meta_url",D),Z=V.href,H=ue(`${F.WELLKNOWN_SERVICE_PATH_PREFIX}/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:[Q&&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:Z,target:"_blank",rel:"noreferrer",children:e.jsx(Bs,{sx:{fontSize:18}})})})}),Q&&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:H,children:e.jsx(Vs,{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:()=>N(S),children:e.jsx(xo,{sx:{fontSize:18}})})})]})}}}],L=({page:w,rowsPerPage:S,searchText:Z})=>{g.pageSize!==S?C(H=>({...H,searchText:"",pageSize:S,page:1})):g.page!==w+1?C(H=>({...H,searchText:"",page:w+1})):g.searchText!==Z&&C(H=>({...H,searchText:Z,page:1}))},$=u?.[0]?.blockletVersion||"0.0.0";return e.jsxs(Ur,{children:[e.jsx(Ot,{sx:{mb:2},left:z,actions:e.jsxs(e.Fragment,{children:[e.jsx($e,{variant:"outlined",onClick:()=>{const w=ue(h,`/api/project/${i.meta.did}/${s}/blocklet.json`);T(w)},children:t("blocklet.publish.copyInstallUrl")}),e.jsx(we,{to:`new-release/none/${$}`,children:e.jsxs($e,{variant:"contained",children:[e.jsx(nt,{style:{fontSize:"1.3em",marginRight:4}}),t("blocklet.publish.createRelease")]})})]})}),e.jsx(lt,{fullWidth:!0,maxWidth:"sm",open:y,onClose:()=>T(""),children:e.jsxs(a,{sx:{py:5,px:4,wordBreak:"break-all"},children:[e.jsx(A,{variant:"h6",sx:{mb:2},children:t("blocklet.publish.installResourceTip")}),e.jsx(Oo,{children:y}),e.jsxs(A,{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(qt,{className:"main-table",verticalKeyWidth:100,locale:o,data:u,columns:K,durable:j,options:{sort:!1,download:!1,filter:!1,print:!1,search:!1},onChange:L}),f&&e.jsx(at,{title:t(`${t("common.delete")} ${f.blockletVersion}`),description:t("blocklet.publish.deleteReleaseTip"),confirm:t("common.confirm"),onConfirm:O,onCancel:()=>b(null)})]})}const Ur=ve(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 Ge({children:t,Icon:o=Ms}){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})]})}Ge.propTypes={children:n.node.isRequired,Icon:n.elementType};function Fo({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}=X(),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]=At(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(_t,{size:24,blocklet:R,ancestors:[o]}),e.jsx(a,{className:Nt("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(He,{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,O=!!h[R.meta.did]?.required;return e.jsx(He,{size:"small",checked:y||O&&T,onClick:()=>v(R.meta.did),disabled:m||y||l||!T})}}}];return e.jsx(Mr,{children:f?.length?e.jsxs(e.Fragment,{children:[e.jsxs(it,{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(Lt,{sx:{marginLeft:1}})})]}),e.jsxs(a,{component:"label",style:{cursor:"pointer"},children:[e.jsx(He,{size:"small",style:{marginLeft:"0px"},disabled:l,checked:u==="resource",onChange:g}),x("blocklet.publish.forceResourceBlocklet")]})]}),e.jsx(qt,{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(Ge,{Icon:Wt,children:x("blocklet.publish.blockletEmptyTip")})})}Fo.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 Mr=ve(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 xt,oo;function Fr(){return oo||(oo=1,xt=(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))}),xt}var gt,so;function Hr(){if(so)return gt;so=1;const t=mr(),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 gt=(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
|
-
`)),gt}var kt,ro;function Gr(){if(ro)return kt;ro=1;const t=Fr(),o=Hr(),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 kt=r,kt}var jt,no;function Xr(){if(no)return jt;no=1;const t=Gr();return jt=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++);}),jt}var yt,lo;function Jr(){if(lo)return yt;lo=1;const t=Xr();return yt=(o,s)=>t(o,r=>r(),s),yt}var Kr=Jr();const st=As(Kr);function Yr(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 Ho({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})}Ho.propTypes={src:n.string.isRequired,alt:n.string};function Go({data:t=[],lazy:o=!1,...s}){return!t||!t.length?null:e.jsx(Zr,{...s,children:t.map(r=>e.jsx("a",{href:r.url,target:"_blank",rel:"noreferrer",children:o?e.jsx(Ho,{src:r.url,alt:r.alt||""}):e.jsx("img",{src:r.url,alt:r.alt||""})},r.url))})}Go.propTypes={data:n.arrayOf(n.shape({url:n.string,alt:n.string})),lazy:n.bool};const Zr=ve(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
|
-
`,wt=(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 Xo({icon:t=""}){return t?br(t)?e.jsx("img",{className:"resource-icon",src:t,alt:"icon"}):e.jsx(ae,{className:"resource-icon",icon:t}):null}Xo.propTypes={icon:n.string};function Jo({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(wt(o,b)),d=(b,h=[])=>{const j=wt(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(wt(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(Ir,{itemId:b.id,label:e.jsx(Me,{onClick:p,control:e.jsx(He,{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(Xo,{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(Gs,{className:"link-icon"})})]}),!!b.description&&e.jsx(a,{className:"description",children:b.description}),!!b.images?.length&&e.jsx(Go,{className:"images",data:b.images,lazy:!0})]})}),children:j?b.children.map(f):null},b.id)};return e.jsx(Qr,{className:Nt(!m&&"no-children"),multiSelect:!0,defaultCollapseIcon:e.jsx(Hs,{}),defaultExpandIcon:e.jsx(Fs,{}),selected:l,children:o.map(b=>f(b))})}Jo.propTypes={data:n.array,value:n.array,onChange:n.func,disabled:n.bool};const Qr=ve(Dr)`
|
|
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
|
-
`,io={},Ko=(t,o,{key:s,cacheTime:r=1e3*3}={})=>{const l=s+JSON.stringify({params:o}),c=io[l];if(c&&c.timestamp>Date.now()-r)return c.promise;const i=t(...o);return io[l]={promise:i,timestamp:Date.now()},i},Yo=(t,o)=>(t.forEach(s=>{o&&(s.parent=o),(s.children||[]).forEach(r=>{r.parent=s.id,Yo(r.children||[],r.id)})}),t),Zo=(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}`},en=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){_.error(x.message);return}await $o.post(Zo(s,r,l,c,i),{resources:d,projectId:r,releaseId:l,locale:c,...u?{resourcesParams:u}:{}},{headers:{"x-csrf-token":fr()},timeout:600*1e3}),await t.updateSelectedResources({input:{did:o,projectId:r,releaseId:"",componentDid:s.meta.did,resources:d}})},tn=(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 Qo({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}=X(),{api:g}=ke(),[C,I]=Fe({}),R=k.useRef({}),y=k.useRef(!1),T=r.id;R.current.projectId=s,R.current.releaseId=T;const O=(L,$,w)=>{if(!$)return;const S=tn($,w);p?.({[L]:Object.keys(S)})},N=L=>{i.current[o.meta.did]={resources:L,component:o},f({[o.meta.did]:L}),O(o.meta.did,C[o.meta.did],L)},z=k.useCallback(async L=>{try{const $=await Ko($o.get,[Zo(L,s,T,v,h),{timeout:6e4}],{key:"getResources"});return Yo($?.data?.resources||[])}catch{return[]}},[s,T,v,h]);k.useEffect(()=>{C[o?.meta.did]||z(o).then(L=>{I({[o?.meta.did]:L})}).catch(L=>{_.error(L.message)})},[o,I,C,z]),k.useEffect(()=>{T&&s&&!y.current&&st(t.children.map(L=>async()=>{if(!(u&&u!==L.meta.did)&&!(!L?.mountPoint||!Tr.hasStartEngine(L?.meta)||!L?.meta?.resource?.exportApi))try{const $=await z(L);I({[L?.meta.did]:$});const S=(await g.getSelectedResources({input:{did:t.meta.did,projectId:s,releaseId:T,componentDid:L.meta.did}}))?.resources||[];S?.length&&(f({[L.meta.did]:Yr($,S)}),O(L.meta.did,$,S),d||(i.current[L?.meta.did]={resources:S,component:L}))}catch($){_.error($.message)}}),{concurrency:2}).then(()=>{y.current=!0})},[T,s,d,v,h,I]),k.useEffect(()=>{x&&Object.keys(x).length&&st(t.children.map(async L=>{const $=x[L.meta.did];if($?.length){const w=await z(L);f({[L.meta.did]:$}),O(L.meta.did,w,$),d||(i.current[L?.meta.did]={resources:$,component:L})}}))},[t,x,d]);let K=null;return(!o||!C[o.meta.did]?.length)&&(K=e.jsx(Ge,{Icon:Wt,children:j("blocklet.publish.resourceEmptyTip",{name:Kt.getDisplayName(o)})})),o?.status!=="running"&&(K=e.jsx(Ge,{children:j("blocklet.publish.componentNotRunning",{name:Kt.getDisplayName(o)})})),e.jsxs(e.Fragment,{children:[e.jsx(on,{className:Nt(c&&"error"),children:b&&e.jsx(a,{sx:{pb:2,width:"100%"},children:K||e.jsx(Jo,{data:C[o.meta.did]||[],value:m[o.meta.did]||[],onChange:N,disabled:l||d})})}),!!c&&e.jsx(a,{sx:{color:"error.main",mt:1,fontSize:14},children:c})]})}Qo.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 on=ve(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
|
-
`,co="lastWantToConnectStoreId";function sn(t){const[o,s]=k.useState(null),{session:r}=ze(),l=k.useCallback(d=>{s(d),localStorage.setItem(co,d?.id)},[s]),c=k.useMemo(()=>{const d=localStorage.getItem(co),u=d?(t?.settings?.storeList||[]).find(p=>p.id===d):null;if(u)return u;let x=(t?.settings?.storeList||[]).find(p=>!(p.id!==F.BLOCKLET_STORE.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 Bt=({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||wr(i.scope)||i.scope==="studio"||i.scope===r),{teamDid:l,storeList:c}};function es({blocklet:t=null,store:o=null,onChangeStore:s,onClick:r,disabled:l,loading:c,componentDid:i}){const{t:d}=X(),{session:u}=ze(),{api:x,info:p,inService:m}=ke(),f=Ie(),[b,h]=k.useState(!1),j=k.useRef(null),[v,g]=k.useState(!1),[C,I]=k.useState(null),R=$=>{s($),h(!1)},y=()=>{h(!b)},T=$=>{j.current&&j.current.contains($.target)||h(!1)},O=()=>{g(!0)},N=()=>{g(!1)},z=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($){_.error(`Remove Blocklet Store Error: ${ge($)}`)}finally{I(null)}},{storeList:K}=Bt({fromBlocklet:m,blocklet:t,nodeInfo:p,userDid:u?.user?.did}),L=t?.meta?.did;return e.jsxs(e.Fragment,{children:[e.jsxs(et,{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(Se,{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(jo,{sx:{zIndex:10},open:b,anchorEl:j.current,placement:"bottom-end",role:void 0,transition:!0,disablePortal:!0,children:({TransitionProps:$})=>e.jsx(yo,{...$,style:{transformOrigin:"center top"},children:e.jsx(Pt,{children:e.jsx(wo,{onClickAway:T,children:e.jsxs(vo,{id:"split-button-menu",autoFocusItem:!0,sx:{maxHeight:300,overflowY:"auto",zIndex:10},children:[K?.map(w=>e.jsxs(be,{selected:w.id===o?.id,sx:{height:56},onClick:()=>R(w),children:[e.jsxs(a,{children:[e.jsx(Te,{sx:{fontSize:"16px"},maxLength:24,children:w.name}),e.jsx(Te,{sx:{fontSize:"13px",opacity:.6},maxLength:30,children:w.url})]}),Ar({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(Js,{}),e.jsxs(be,{onClick:O,children:[e.jsx(nt,{font:!0}),e.jsx(A,{variant:"inherit",children:d("store.blockletRegistry.addRegistry")})]})]})})})})}),v&&e.jsx(Bo,{hiddenChildren:!0,open:!0,onClose:N,teamDid:L,storeList:K,scope:"studio",onAdd:f?.actions?.refreshBlocklet}),C&&e.jsx(at,{displayError:!0,title:`${d("common.delete")} ${C.name}`,description:d("blocklet.publish.deleteStoreTip",{name:C.name}),confirm:d("common.confirm"),onConfirm:z,onCancel:()=>I(null)})]})}es.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 ts=(t,o,s)=>{const r=`${F.WELLKNOWN_SERVICE_PATH_PREFIX}/api/project/${o.meta.did}/${s}/logo/upload`,l=`${F.WELLKNOWN_SERVICE_PATH_PREFIX}/api/project/${o.meta.did}/${s}/screenshot/upload`,c=t?.blockletLogo?`${r}/${t.blockletLogo}`:`${F.WELLKNOWN_SERVICE_PATH_PREFIX}/static/images/logo.png`,i=(t?.blockletScreenshots||[]).filter(Boolean).map(d=>`${l}/${d}`);return{logoUrl:c,screenshotUrls:i,uploadLogoPrefix:r,uploadScreenshotPrefix:l}},rn=t=>{const o=t.includes("youtube.com")||t.includes("youtu.be"),s=t.includes("vimeo.com");return o||s};function Vt({url:t,style:o={},controls:s=1,modestbranding:r=1}){const{t:l}=X(),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(A,{variant:"body1",sx:{opacity:.5},children:l("studio.videoDialogNoSrc")})]})})}Vt.propTypes={url:n.string.isRequired,style:n.object,controls:n.number,modestbranding:n.number};function os({setParams:t,onClose:o,params:s}){const{t:r}=X(),[l,c]=k.useState(""),i=l&&s.blockletVideos.includes(l),d=rn(l),u=()=>{t(x=>{const p=[...x.blockletVideos];return p.push(l),{...x,blockletVideos:p}}),o()};return e.jsxs(lt,{open:!0,fullWidth:!0,maxWidth:"sm",children:[e.jsx(Co,{children:r("studio.videoDialogTitle")}),e.jsxs(Ro,{children:[e.jsx(Ks,{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(Ys,{})})}):null,error:i}),i&&e.jsx(A,{variant:"body2",color:"error",children:r("studio.duplicateVideo")}),e.jsx(Vt,{url:l,style:{marginTop:"20px",borderRadius:"4px"}})]}),e.jsxs(So,{children:[e.jsx(J,{onClick:()=>o(),children:r("studio.cancel")}),e.jsx(J,{disabled:!d||i,onClick:u,children:r("studio.confirm")})]})]})}os.propTypes={onClose:n.func.isRequired,params:n.object.isRequired,setParams:n.func.isRequired};function Rt({errors:t,storeList:o,...s}){const{t:r}=X();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(A,{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)})]})}Rt.propTypes={errors:n.object.isRequired,storeList:n.array.isRequired};const ao=k.lazy(()=>Wo(()=>import("./index-DqcciDRh.js"),__vite__mapDeps([0,1,2]),import.meta.url).then(t=>({default:t.Uploader})));function ss({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}=X(),{api:v}=ke(),g=Dt(),C=k.useRef(null),I=k.useRef(null),[R,y]=sn(r),[T,O]=k.useState(!1),N=zo({messageType:"connect-store-message",onOpen:()=>x(!0),onClose:()=>x(!1)}),z=async q=>{const Y=setTimeout(()=>{x(!1)},2e4),G=await Lr(v,q);x(!1),clearTimeout(Y),window.parent.postMessage({event:"studioDialog.connected",componentDid:b},"*"),g(window.location.pathname.replace(`${F.UNOWNED_DID}/create`,`${G}/create`),{replace:!0})},K=()=>{if(!l.blockletTitle){_.error(h("blocklet.publish.errorTip.noTitle"));return}if(!R?.url){_.error(h("blocklet.publish.noStoreSelected"));return}const q=Er();N(async(Y,G)=>{try{const se=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:q,tenantScope:p?.searchParams.get("tenantScope")||""}});if(!se?.url){_.error("failed to connect to store");return}G(se.url),z({did:r?.meta?.did,projectId:"",messageId:q})}catch(se){const de=ge(se);_.error(de),x(!1)}})},{logoUrl:L,screenshotUrls:$,uploadLogoPrefix:w,uploadScreenshotPrefix:S}=ts(l,r,t),{logoErrors:Z,screenshotErrors:H,storeList:Q,hasLogoWarning:E,hasScreenshotWarning:D}=u,V=()=>o?!1:!t||t===F.UNOWNED_DID?(_.error(h("blocklet.publish.errorTip.noFirstDid")),!1):!0,U=q=>{if(!q.destination)return;const Y=Array.from(l.blockletScreenshots),[G]=Y.splice(q.source.index,1);Y.splice(q.destination.index,0,G),c(se=>({...se,blockletScreenshots:Y}))},ee=q=>{if(!q.destination)return;const Y=Array.from(l.blockletVideos),[G]=Y.splice(q.source.index,1);Y.splice(q.destination.index,0,G),c(se=>({...se,blockletVideos:Y}))};return e.jsxs(nn,{children:[e.jsx(a,{className:"section",sx:{display:"flex"},children:e.jsxs(a,{sx:{flex:1},children:[e.jsx(ne,{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:q=>{d({blockletTitle:""}),c({blockletTitle:q.target.value})},error:!!i.blockletTitle,helperText:i.blockletTitle||"",slotProps:{input:{"data-cy":"blocklet-title",readOnly:o}}}),e.jsx(ne,{required:!0,label:"Blocklet DID",fullWidth:!0,readonly:!0,disabled:!0,autoComplete:"off",variant:"outlined",error:!!i.projectId,helperText:i.projectId||"",value:t===F.UNOWNED_DID?"":`did:abt:${t}`,sx:{mt:3},slotProps:{input:{"data-cy":"export-blocklet-did",endAdornment:t===F.UNOWNED_DID&&e.jsx(Xe,{position:"end",children:e.jsx(es,{blocklet:r,store:R,componentDid:b,onChangeStore:y,disabled:!l.blockletTitle||o||s,loading:s,onClick:K})})}}}),e.jsx(ne,{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:q=>{d({blockletDescription:""}),c({blockletDescription:q.target.value.slice(0,159)})},error:!!i.blockletDescription,helperText:i.blockletDescription||"",sx:{mt:3},slotProps:{input:{"data-cy":"blocklet-description",readOnly:o}}}),e.jsx(ne,{disabled:s||o,label:`Blocklet ${h("common.homepageTip")}`,placeholder:`Blocklet ${h("common.homepageTip")}`,autoComplete:"off",variant:"outlined",fullWidth:!0,value:l.blockletHomepage||"",onChange:q=>{q.target.value&&!/^(http|https):\/\//.test(q.target.value)?d({blockletHomepage:h("blocklet.publish.errorTip.invalidUrl")}):d({blockletHomepage:""}),c({blockletHomepage:q.target.value})},error:!!i.blockletHomepage,helperText:i.blockletHomepage||"",sx:{mt:3},slotProps:{input:{"data-cy":"blocklet-homepage",readOnly:o}}}),e.jsx(ne,{disabled:s||o,label:`Blocklet ${h("common.community")}`,placeholder:`Blocklet ${h("common.community")}`,autoComplete:"off",variant:"outlined",fullWidth:!0,value:l.blockletCommunity||"",onChange:q=>{q.target.value&&!/^(http|https):\/\//.test(q.target.value)?d({blockletCommunity:h("blocklet.publish.errorTip.invalidUrl")}):d({blockletCommunity:""}),c({blockletCommunity:q.target.value})},error:!!i.blockletCommunity,helperText:i.blockletCommunity||"",sx:{mt:3},slotProps:{input:{"data-cy":"blocklet-community",readOnly:o}}}),e.jsx(ne,{disabled:s||o,label:`Blocklet ${h("common.support")}`,placeholder:`Blocklet ${h("common.support")}`,autoComplete:"off",variant:"outlined",fullWidth:!0,value:l.blockletSupport||"",onChange:q=>{q.target.value&&!/^(http|https):\/\//.test(q.target.value)&&!/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/.test(q.target.value)?d({blockletSupport:h("blocklet.publish.errorTip.invalidUrlOrEmail")}):d({blockletSupport:""}),c({blockletSupport:q.target.value})},error:!!i.blockletSupport,helperText:i.blockletSupport||"",sx:{mt:3},slotProps:{input:{"data-cy":"blocklet-support",readOnly:o}}}),e.jsx(ne,{disabled:s||o,label:`Blocklet ${h("common.repository")}`,placeholder:`Blocklet ${h("common.repository")}`,autoComplete:"off",variant:"outlined",fullWidth:!0,value:l.blockletRepository||"",onChange:q=>{q.target.value&&!/^(git|https|svn)/.test(q.target.value)?d({blockletRepository:h("blocklet.publish.errorTip.invalidUrl")}):d({blockletRepository:""}),c({blockletRepository:q.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(Re,{direction:"column",spacing:1,sx:{mr:2,width:"160px"},children:[e.jsx(A,{variant:"subtitle1",sx:{fontWeight:"bold"},children:h("common.logo")}),e.jsxs(Re,{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(Et,{variant:"square",sx:{width:80,height:80},alt:"Blocklet Logo",src:m||L,onClick:()=>{V()&&C.current?.open()}})})]}),E&&e.jsx(Rt,{errors:Z,storeList:Q,mt:3}),e.jsxs(a,{sx:{display:"flex",mt:3,flexDirection:"row",flexWrap:"wrap"},children:[e.jsxs(Re,{direction:"column",spacing:1,sx:{mr:2,width:"160px"},children:[e.jsx(A,{variant:"subtitle1",sx:{fontWeight:"bold"},children:h("common.screenshot")}),e.jsxs(Re,{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(Qt,{onDragEnd:o?void 0:U,children:e.jsx(eo,{droppableId:"screenshots",direction:"horizontal",isDropDisabled:o,children:(q,Y)=>e.jsxs(a,{ref:q.innerRef,...q.droppableProps,sx:{display:"flex",alignItems:"center",flex:1,flexWrap:"wrap",minHeight:160,background:Y.isDraggingOver?"grey.100":"transparent",transition:"background-color 0.2s ease",border:Y.isDraggingOver?"2px dashed #999":"none",borderRadius:"4px"},children:[$.map((G,se)=>e.jsx(to,{draggableId:G,index:se,isDragDisabled:o,children:(de,le)=>e.jsxs(a,{ref:de.innerRef,...de.draggableProps,className:"screenshot",sx:{transform:le.isDragging?"scale(1.05)":"none",boxShadow:le.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:G}),!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(se,1),{...pe,blockletScreenshots:he}})},children:e.jsx(tt,{})})]})},G)),q.placeholder,$.length<5&&e.jsx(a,{onClick:()=>{V()&&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(Rt,{errors:H,storeList:Q}),e.jsxs(a,{sx:{display:"flex",mt:3,flexDirection:"row",flexWrap:"wrap"},children:[e.jsxs(Re,{direction:"column",spacing:1,sx:{mr:2,width:"160px"},children:[e.jsx(A,{variant:"subtitle1",sx:{fontWeight:"bold"},children:h("studio.video")}),e.jsxs(Re,{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(Qt,{onDragEnd:o?void 0:ee,children:e.jsx(eo,{droppableId:"videos",direction:"horizontal",isDropDisabled:o,children:(q,Y)=>e.jsxs(a,{ref:q.innerRef,...q.droppableProps,sx:{display:"flex",alignItems:"center",flex:1,flexWrap:"wrap",minHeight:160,background:Y.isDraggingOver?"#f5f5f5":"transparent",transition:"background-color 0.2s ease",border:Y.isDraggingOver?"2px dashed #999":"none",borderRadius:"4px"},children:[l.blockletVideos.map((G,se)=>e.jsx(to,{draggableId:G,index:se,isDragDisabled:o,children:(de,le)=>e.jsxs(a,{ref:de.innerRef,...de.draggableProps,className:"screenshot",sx:{transform:le.isDragging?"scale(1.05)":"none",boxShadow:le.isDragging?"0 5px 10px rgba(0,0,0,0.15)":"none",transition:"transform 0.2s ease, box-shadow 0.2s ease"},children:[e.jsx(Vt,{url:G,style:{pointerEvents:le.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(se,1),{...pe,blockletVideos:he}})},children:e.jsx(tt,{})})]})},G)),q.placeholder,l.blockletVideos.length<3&&e.jsx(a,{onClick:()=>{V()&&O(!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(Je,{}),children:[e.jsx(ao,{ref:C,locale:j,popup:!0,onUploadFinish:q=>{c({blockletLogo:q.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(os,{onClose:()=>O(!1),params:l,setParams:c}),e.jsx(ao,{ref:I,locale:j,popup:!0,onUploadFinish:q=>{c(Y=>{const G=Y.blockletScreenshots||[];return G.push(q.data?.filename),{...Y,blockletScreenshots:G}}),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-$.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")]})]})}ss.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 nn=ve.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
|
-
`,ln=(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},cn=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*an(t,o){let s=0;for(;s<t.size;)yield t.slice(s,s+o),s+=o}const dn=async({did:t,projectId:o,uploadType:s="logo",imageUrl:r})=>{const l=await cn(r);new FormData().append("file",l);const i={uploaderId:"Uploader",relativePath:encodeURIComponent(l.name),name:encodeURIComponent(l.name),type:l.type},u=(await Yt.post(ue(F.WELLKNOWN_SERVICE_PATH_PREFIX,"/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 an(l,x)){const b=await Yt.patch(ue(F.WELLKNOWN_SERVICE_PATH_PREFIX,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},rs=({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===F.UNOWNED_DID)&&l.push({param:"projectId",message:r("blocklet.publish.errorTip.noDid")}),t.blockletVersion?_e.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},un=({params:t,step:o,t:s,projectId:r})=>{if(o===0){if(!t.blockletTitle)return s("blocklet.publish.errorTip.noTitle");if(!r||r===F.UNOWNED_DID)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(!_e.valid(t.blockletVersion))return s("blocklet.publish.errorTip.inValidVersion");if(!t.note)return s("blocklet.publish.errorTip.noNote")}return""};function ns({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}=X(),{actions:{refreshBlocklet:v}}=Ie(),{session:g}=ze(),{storeList:C}=Bt({fromBlocklet:!0,blocklet:t,userDid:g?.user?.did}),I=k.useMemo(()=>s?.length?s?.reduce((T,O)=>(T[O.storeId]=O,T),{}):{},[s]),R=t?.meta?.did,y={};return Object.entries(u?.logoErrors||{}).forEach(([T,O])=>{const N=Object.values(O);N.length>0&&(y[T]=N)}),Object.entries(u?.screenshotErrors||{}).forEach(([T,O])=>{const N=Object.values(O);N.length>0&&(y[T]=y[T]?[...y[T],...N]:N)}),e.jsxs(e.Fragment,{children:[f==="connect"&&!!C?.length&&e.jsx(it,{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:To[400],display:"flex",alignItems:"center"},children:[j(x==="pack"?"blocklet.publish.whyCantSeeInStore":"blocklet.publish.whyCantSeeResourceBlockletInStore"),e.jsx(Lt,{sx:{marginLeft:1}})]})}),e.jsx(Io,{children:C?.map(T=>e.jsx($t,{"data-cy":"store-switch",children:e.jsx(Do,{children:e.jsx(qr,{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(Bo,{teamDid:R,storeList:C,scope:"studio",onAdd:v})]})}ns.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 ls({disabled:t=!1,endpointList:o=[],teamDid:s,onAdd:r=()=>{},hiddenChildren:l=!1,open:c=!1,onClose:i=()=>{}}){const{api:d}=ke(),[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}=X(),I=()=>{j(""),b(!1),i()},R=async()=>{x(!0);try{const{decoded:y}=xr(h,o);await d.addUploadEndpoint({input:{teamDid:s,url:y}}),r(y),I()}catch(y){const T=`${C("blocklet.publish.endpoint.addFailed")} ${ge(y)}`;g(T)}finally{x(!1)}};return e.jsxs(e.Fragment,{children:[!l&&e.jsxs($t,{button:!0,disabled:t,sx:y=>({marginTop:"8px",justifyContent:"center",color:y.palette.primary.main,lineHeight:"3.2"}),onClick:()=>{b(!0)},children:[e.jsx(nt,{font:!0}),e.jsx(A,{variant:"inherit",children:C("blocklet.publish.endpoint.addEndpoint")})]}),e.jsxs(ct,{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($e,{onClick:y=>{y.stopPropagation(),I()},color:"inherit",children:C("common.cancel")}),e.jsxs($e,{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(Se,{size:16}),C("common.confirm")]})]}),children:[e.jsx("div",{style:{paddingTop:12,overflowY:"hidden"},children:e.jsx(Zs,{component:"div",children:e.jsx(A,{component:"div",children:e.jsx(ne,{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(it,{severity:"error",style:{width:"100%"},children:v})]})]})}ls.propTypes={teamDid:n.string.isRequired,disabled:n.bool,endpointList:n.array,onAdd:n.func,hiddenChildren:n.bool,open:n.bool,onClose:n.func};function is({endpoint:t,teamDid:o,onDelete:s="",projectId:r="",children:l=null}){const{api:c}=ke(),{t:i}=X(),d=Eo(),u=Ie(),[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){_.error(`${i("blocklet.publish.endpoint.deleteFailed")}: ${ge(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(tt,{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]})}is.propTypes={endpoint:n.object.isRequired,teamDid:n.string.isRequired,onDelete:n.func,projectId:n.string,children:n.node};function cs({connectedEndpoint:t,onDisconnect:o=()=>{},onDelete:s=()=>{},endpoint:r,teamDid:l,projectId:c=""}){const[i,d]=k.useState(null),u=!!i,{t:x}=X(),[p,m]=k.useState(!1),f=g=>{g.stopPropagation(),window.open(Vo(`${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:Lt},{label:x("common.disconnect"),action:()=>{h(),m(!0)},icon:Qs,hidden:!t}];return e.jsxs(e.Fragment,{children:[e.jsx(J,{ref:i,color:"primary",onClick:b,size:"small",children:e.jsx(er,{sx:{zoom:.95}})}),e.jsxs(tr,{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(is,{endpoint:r,teamDid:l,onDelete:s,projectId:c,children:e.jsxs(be,{dense:!0,disabled:r.protected,children:[e.jsx(tt,{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(at,{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)})]})}cs.propTypes={connectedEndpoint:n.object.isRequired,onDisconnect:n.func,onDelete:n.func,endpoint:n.object.isRequired,teamDid:n.string.isRequired,projectId:n.string};function St({developerUrl:t,developerDid:o,sx:s={},...r}){return e.jsx(Et,{sx:{width:24,height:24,...s},src:ue(new URL(t).origin,F.WELLKNOWN_SERVICE_PATH_PREFIX,`/user/avatar/${o}?imageFilter=resize&w=120&h=120`),...r})}St.propTypes={developerDid:n.string.isRequired,developerUrl:n.string.isRequired,sx:n.object};function as({endpoint:t,published:o}){const{t:s}=X(),r=()=>{window.open(Vo(`${ue(t.url)}`,{allowDomains:null}))};return e.jsxs(a,{children:[e.jsx(A,{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})})]})}as.propTypes={endpoint:n.object.isRequired,published:n.bool.isRequired};const uo=go(({className:t,...o})=>e.jsx(xe,{...o,classes:{popper:t}}))(({theme:t})=>({[`& .${rr.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 ds({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}=X(),{api:m}=ke(),[f,b]=k.useState(!1),h=zo({messageType:"connect-endpoint-message",onOpen:()=>b(!0),onClose:()=>b(!1)}),j=!!u,v=()=>{h(async(y,T)=>{try{const O=await m.connectToEndpoint({input:{did:t,endpointId:r.id,projectId:o}});if(!O?.url){_.error("failed to connect to endpoint");return}T(O.url),await x({did:t,projectId:o,endpointId:r.id}),b(!1)}catch(O){const N=ge(O);_.error(N),b(!1)}})},g=async()=>{try{await m.disconnectFromEndpoint({input:{did:t,endpointId:r.id,projectId:o}}),c()}catch(y){_.error(ge(y))}},C=()=>{b(!0),m.publishToEndpoint({input:{did:t,endpointId:r.id,projectId:o,releaseId:s}}).then(()=>{_.success(e.jsx(as,{endpoint:r,published:!0}),{duration:1e4}),d?.(null)}).catch(y=>{_.error(ge(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(Se,{sx:{marginRight:1},size:16}):e.jsx(or,{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(A,{component:"span",sx:{fontSize:16,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},variant:"subtitle1",children:r.appName})}),e.jsx(A,{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(uo,{placement:"top",title:e.jsxs(a,{children:[e.jsx(A,{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(St,{developerUrl:r.url,developerDid:u.developerDid,sx:{width:42,height:42}}),e.jsxs(a,{sx:{flex:1},children:[e.jsx(A,{component:"span",variant:"subtitle1",children:u.developerName}),e.jsx(Ct,{size:14,copyable:!0,compact:!0,responsive:!1,did:u.developerDid})]})]})]}),children:e.jsx(a,{children:e.jsx(St,{developerUrl:r.url,developerDid:u.developerDid,sx:{marginRight:1,cursor:"help"}})})}),e.jsxs(et,{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(Se,{sx:{marginRight:1},size:16}):e.jsx(sr,{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(Se,{sx:{marginRight:1},size:16}):e.jsx(Lo,{sx:{marginRight:1}}),p("common.uploaded")]}),j&&!i&&(I?e.jsx(uo,{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(cs,{projectId:o,endpoint:r,teamDid:t,connectedEndpoint:u,onDisconnect:g,onDelete:c})]})]})]})}ds.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 us({releaseId:t,blocklet:o,connectedEndpoints:s,projectId:r,publishedEndpointIds:l=[],onPublish:c=()=>{},onDelete:i=()=>{},warning:d={},onOpenConnectEndpoint:u=()=>{}}){const{actions:{refreshBlocklet:x}}=Ie(),{session:p}=ze(),{t:m}=X(),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(it,{severity:"info",style:{width:"100%"},children:e.jsx(a,{sx:{color:To[400]},children:m("blocklet.publish.endpoint.uploadToEndpoint")})}),e.jsx(Io,{sx:{flex:1},children:f?.map(v=>e.jsx($t,{"data-cy":"endpoint-switch",children:e.jsx(Do,{children:e.jsx(ds,{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(ls,{teamDid:h,endpointList:f,onAdd:x})]})}us.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 ps({did:t,params:o,setParams:s,projectId:r,open:l,onClose:c}){const{t:i}=X(),[d,u]=k.useState(!1),{api:x}=ke(),[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){_.error(g.message)}u(!1)};k.useEffect(()=>{m(o.autoUpload),b(o.possibleSameStore)},[o]);const v=!!(r&&r!==F.UNOWNED_DID);return e.jsx(ct,{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(Se,{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(A,{variant:"body1",sx:{flex:1},children:i("blocklet.publish.autoUploadTip")}),e.jsx(Pe,{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(A,{variant:"body1",sx:{flex:1},children:i("blocklet.publish.possibleSameStoreTip")}),e.jsx(Pe,{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(A,{variant:"body1",sx:{flex:1},children:i("blocklet.publish.needProjectId")})]})})}ps.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 hs({downloadUrl:t,installUrl:o,handleSetTip:s,isPack:r,disabled:l}){const{t:c}=X(),[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(jo,{sx:{zIndex:10},open:i,anchorEl:u.current,placement:"bottom-end",role:void 0,transition:!0,disablePortal:!0,children:({TransitionProps:m})=>e.jsx(yo,{...m,style:{transformOrigin:"center top"},children:e.jsx(Pt,{children:e.jsx(wo,{onClickAway:p,children:e.jsxs(vo,{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(A,{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(A,{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(A,{variant:"inherit",children:c("common.download")})]})})]})})})})})]})}hs.propTypes={disabled:n.bool.isRequired,isPack:n.bool.isRequired,downloadUrl:n.string.isRequired,installUrl:n.string.isRequired,handleSetTip:n.func.isRequired};const po=window.env?.serverEndpoint;function ms({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:O}){const{t:N,locale:z}=X(),K=[{label:e.jsx(a,{sx:{textAlign:"center",width:"100%"},children:N("blocklet.publish.store")}),value:"store"},{label:e.jsx(a,{sx:{textAlign:"center",width:"100%"},children:N("blocklet.publish.endpoint.tab")}),value:"endpoint"}],[L,$]=k.useState(K[0].value),{api:w}=ke(),S=Dt(),[Z,H]=k.useState(!1),[Q,E]=k.useState(!1),[D,V]=k.useState(),U=Oe(re=>re.breakpoints.down("md")),ee=k.useMemo(()=>o?.blockletResourceType?o?.blockletResourceType:o?.blockletComponents?.length>0?o?.blockletComponents.find(De=>De.included)?"resource":"pack":"resource",[o?.blockletComponents,o?.blockletResourceType]),q=()=>{window.parent.postMessage({event:"studioDialog.uploaded",componentDid:h},"*"),m()},Y=async re=>{if(f?.blockletHomepage||f?.blockletSupport||f?.blockletCommunity){_.error(f?.blockletHomepage||f?.blockletSupport||f?.blockletCommunity);return}const De=rs({params:o,projectId:t,status:re,t:N});if(De){_.error(De.map(B=>B.message).join("; ")),s(De.reduce((B,oe)=>({...B,[oe.param]:oe.message}),{}));return}const W={...o};if(W.blockletComponents=ln(W.blockletComponents,d,j,v),W.blockletVersion=_e.valid(W.blockletVersion),!W.blockletVersion){_.error("Invalid Blocklet Version"),s({blockletVersion:"Invalid Blocklet Version"});return}if(I)try{const B=await dn({did:d.meta.did,projectId:t,imageUrl:I});W.blockletLogo=B,l({blockletLogo:B})}catch(B){_.error(B.message);return}if(o.resourceFromSelect){W.uploadedResource="";try{const B=Object.keys(g.current);await st(B.map(oe=>()=>{const je=g.current[oe];return en({api:w,locale:z,projectId:t,releaseId:"",appDid:d.meta.did,component:je.component,resources:je.resources,initUrl:r})}),{concurrency:2})}catch(B){_.error(B?.response?.data?.error?.message||B.message),s({blockletResource:"Invalid save the resource"});return}}else o.blockletDocker?.dockerImage||(W.blockletComponents=[]);W.blockletTitle=(W.blockletTitle||"").trim(),W.blockletDescription=(W.blockletDescription||"").trim(),W.blockletSupport=(W.blockletSupport||"").trim(),W.blockletHomepage=(W.blockletHomepage||"").trim(),W.blockletCommunity=(W.blockletCommunity||"").trim(),W.blockletRepository=(W.blockletRepository||"").trim(),W.blockletIntroduction=(W.blockletIntroduction||"").trim(),W.note=(W.note||"").trim(),W.blockletComponents=(W?.blockletComponents||[]).filter(B=>B.included).map(B=>At(B,["did","required"])).map(JSON.stringify),W.contentType!=="docker"&&(W.blockletDocker={dockerImage:"",dockerCommand:"",dockerArgs:[],dockerEnvs:[]}),W.blockletDocker.dockerImage=W.blockletDocker.dockerImage||"",W.blockletDocker.dockerArgs.length>0&&W.blockletDocker.dockerArgs.forEach(B=>{B.proxyBehavior=B.proxyBehavior||"service"});try{await w.createRelease({input:{...W,note:JSON.stringify({note:W.note}),did:d.meta.did,projectId:t,releaseId:"",status:re,blockletSingleton:typeof W.blockletSingleton=="boolean"?W.blockletSingleton:!1}}),y(),_.success(N("blocklet.publish.createReleaseSuccess")),window.parent.postMessage({event:"studioDialog.released",componentDid:h},"*"),s({blockletResource:"",blockletTitle:"",blockletDescription:"",blockletVersion:"",blockletLogo:"",projectId:"",blockletIntroduction:"",note:""})}catch(B){const oe=ge(B);_.error(oe),(/resource/.test(oe)||/zip/.test(oe))&&s({blockletResource:oe});return}const Be=await w.getProject({input:{did:d.meta.did,projectId:t}}),Ae=Be.project.lastReleaseId;o.autoUpload&&await st(Be.project.connectedStores.map(B=>async()=>{try{const oe=b.logoErrors[B.storeUrl];if(oe){const ye=Object.keys(oe).find(Ee=>!!oe[Ee]);if(ye){_.warning(N("blocklet.publish.autoPublishErrorTip",{storeName:B.storeName,error:oe[ye]}));return}}const je=b.screenshotErrors[B.storeUrl];if(je){const ye=Object.keys(je).find(Ee=>!!je[Ee]);if(ye){_.warning(N("blocklet.publish.autoPublishErrorTip",{storeName:B.storeName,error:je[ye]}));return}}const ie=await w.publishToStore({input:{did:d.meta.did,storeId:B.storeId,storeName:B.storeName,projectId:t,releaseId:Ae,type:ee}});_.success(e.jsx(Nr,{storeName:B.storeName,storeUrl:B.storeUrl,developerDid:B.developerDid,did:t,published:ie.url==="published",version:W.blockletVersion}),{duration:1e4})}catch(oe){_.error(ge(oe))}}),{concurrency:4}),q?.(),S(`../${t}/view/${Ae}/${W.blockletVersion}`,{replace:!0})},G=re=>(R(!0),Y(re).finally(()=>{R(!1)})),se=async re=>{await Pr(w,re),p()},de=async re=>{await $r(w,re),p()},le=()=>{E(!0)},pe=ue(po,`/api/project/${d.meta.did}/${t}/${x}/release/blocklet.json`),he=new URL(po);he.pathname=ue(he.pathname,"/launch-blocklet/agreement"),he.searchParams.set("blocklet_meta_url",pe);const Ke=he.href,Ye=()=>V(pe);return e.jsxs(e.Fragment,{children:[e.jsx(pn,{className:"sticky-header",children:e.jsx(Ot,{left:e.jsxs(ko,{className:"breadcrumbs","aria-label":"breadcrumb",children:[e.jsx(we,{to:"../",children:N("common.blockletStudio")}),t===F.UNOWNED_DID?e.jsx(A,{sx:{color:"text.primary"},children:e.jsx(Te,{maxLength:U?6:30,children:o?.blockletTitle||"Blocklet"})}):e.jsx(we,{to:`../${t}`,children:e.jsx(Te,{maxLength:U?6:30,children:o?.blockletTitle||"Blocklet"})}),e.jsx(A,{sx:{color:"text.primary"},children:c==="create"?N("common.create"):o?.blockletVersion||N("common.edit")})]}),actions:e.jsxs(e.Fragment,{children:[!O&&e.jsxs(et,{disabled:i,variant:"contained",children:[e.jsxs(J,{variant:"contained",onClick:()=>G(me.PROJECT.RELEASE_STATUS.published),children:[i&&e.jsx(Se,{size:14,sx:{mr:.5},color:"inherit"}),N("blocklet.publish.createRelease")]}),e.jsx(J,{variant:"contained",onClick:le,children:e.jsx(ae,{icon:"mage:settings-fill",fontSize:"16px"})})]}),O&&e.jsxs(e.Fragment,{children:[e.jsx(lt,{fullWidth:!0,maxWidth:"sm",open:D,onClose:()=>V(""),children:e.jsxs(a,{sx:{py:5,px:4,wordBreak:"break-all"},children:[e.jsx(A,{variant:"h6",sx:{mb:2},children:N("blocklet.publish.installResourceTip")}),e.jsx(Oo,{children:D}),e.jsxs(A,{sx:{mt:2},children:[N("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:N("blocklet.publish.installResourceHelp")})]})]})}),e.jsxs(et,{disabled:i,variant:"contained",children:[e.jsxs(J,{onClick:()=>H(!0),children:[i?e.jsx(Se,{size:14,sx:{mr:1},color:"inherit"}):e.jsx(nr,{sx:{fontSize:"1.3em",mr:1}}),N(U?"common.upload":"blocklet.publish.connectOrUpload")]}),e.jsx(hs,{isPack:ee==="pack",downloadUrl:ue(`${F.WELLKNOWN_SERVICE_PATH_PREFIX}/api/project/${d.meta.did}/${t}/${x}/download/${(u?.files||[])[0]}`),installUrl:Ke,handleSetTip:Ye}),e.jsx(J,{onClick:le,children:e.jsx(ae,{icon:"mage:settings-fill",fontSize:"16px"})})]})]})]})})}),e.jsx(ct,{title:N("blocklet.publish.connectOrUpload"),disableEscapeKeyDown:!0,disablePortal:!1,fullWidth:!0,open:Z,onClose:()=>H(!1),children:e.jsxs(a,{children:[e.jsx(a,{sx:{mt:-2,mb:2},children:e.jsx(_o,{tabs:K,current:L,onChange:$})}),L==="store"&&e.jsx(ns,{projectType:T,blocklet:d,version:o.blockletVersion,releaseType:ee,projectId:t,releaseId:x,componentDid:h,warning:b,onPublish:q,onOpenConnectStore:se,onDelete:p,connectedStores:o.connectedStores||[],publishedStoreIds:u?.publishedStoreIds}),L==="endpoint"&&e.jsx(Re,{sx:{minHeight:400},children:e.jsx(us,{blocklet:d,releaseType:ee,projectId:t,releaseId:x,warning:b,publishedEndpointIds:[],connectedEndpoints:o.connectedEndpoints||[],onPublish:q,onOpenConnectEndpoint:de,onDelete:p})})]})}),e.jsx(ps,{did:d?.meta?.did,params:o,projectId:t,open:Q,setParams:l,onClose:()=>E(!1)})]})}ms.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 pn=ve.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 bs({text:t}){const{palette:o}=Eo();return t?e.jsx(_r,{style:{backgroundColor:o.background.default,color:o.text.primary},wrapperElement:{"data-color-mode":"light"},source:Or.sanitize(t),rehypePlugins:[[zr,{target:"_blank"}]]}):e.jsx(Ge,{Icon:Wt})}bs.propTypes={text:n.string.isRequired};function fs({params:t,setParams:o,paramsErrTip:s,loading:r,setParamsErrTip:l,readOnly:c}){const{t:i}=X(),[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(A,{variant:"h6",sx:{fontWeight:"bold"},children:i("common.introduction")}),e.jsxs(Po,{value:d,onChange:x,"aria-label":"wrapped label tabs example",children:[e.jsx(ot,{value:"write",label:"Write"}),e.jsx(ot,{value:"preview",label:"Preview"})]})]}),e.jsx(a,{sx:{display:d==="write"?"block":"none",width:"100%",marginTop:3},children:e.jsx(ne,{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(bs,{text:t.blockletIntroduction||""})})]})}fs.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 xs({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(Lo,{sx:{fontSize:18,margin:0},color:"white"})),r||!o&&s>t?(c="error.main",i=e.jsx(Jt,{sx:{fontSize:18,margin:0},color:"white"})):l?(c="warning.main",i=e.jsx(Jt,{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})}xs.propTypes={step:n.number,ok:n.bool,active:n.number,error:n.string,warning:n.bool};function gs({steps:t,activeStep:o,setActiveStep:s,hasSelectedResources:r=!1,params:l,loading:c,paramsErrTip:i,warning:d,viewMode:u="",projectId:x}){const{t:p}=X(),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||rs({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(lr,{activeStep:o,orientation:"vertical",children:t.map((j,v)=>{const g={},C=c||!un({params:l,projectId:x,step:v,t:p}),I=c?"":b(v);return I&&(g.optional=e.jsx(A,{variant:"caption",color:"error",sx:{wordBreak:"break-word"},children:I}),g.error=!0),e.jsxs(ir,{children:[e.jsx(cr,{icon:e.jsx(xs,{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(A,{fontSize:"14px",fontWeight:"500",color:I||!C&&o>v?"error.main":"inherit",children:j.label})}),e.jsxs(ar,{children:[e.jsx(A,{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(Pt,{square:!0,elevation:0,sx:{p:3},children:e.jsx(A,{fontSize:12,sx:{opacity:.5},children:"Click right top button to release"})})]})}gs.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 hn=[".zip",".gz"],mn=1024*1024*100,bn=k.lazy(()=>Wo(()=>import("./index-DqcciDRh.js"),__vite__mapDeps([0,1,2]),import.meta.url).then(t=>({default:t.Uploader})));function ks({app:t,projectId:o,readOnly:s,params:r,setParams:l,setParamsErrTip:c,error:i}){const{t:d,locale:u}=X(),x=k.useRef(null),p=()=>s?!1:!o||o===F.UNOWNED_DID?(_.error(d("blocklet.publish.errorTip.noFirstDid")),!1):!0,m=`${F.WELLKNOWN_SERVICE_PATH_PREFIX}/api/project/${t.meta.did}/${o}/resource/upload`;return e.jsxs(a,{sx:{mt:3},children:[e.jsx(A,{gutterBottom:!0,children:d("blocklet.publish.resourceUpload")}),e.jsxs(Re,{direction:"row",spacing:1,sx:{alignItems:"center",flex:1,cursor:s?"default":"pointer"},children:[!!r.uploadedResource&&e.jsx(A,{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(Je,{}),children:e.jsx(bn,{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:hn,maxFileSize:mn,maxNumberOfFiles:1}}},"uploader-resource")}),!!i&&e.jsx(a,{sx:{color:"error.main",mt:1,fontSize:14},children:i})]})}ks.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 Tt({readOnly:t,params:o,setParams:s,paramsErrTip:r,setParamsErrTip:l,loading:c}){const{t:i}=X();return e.jsx(a,{className:"section",sx:{display:"flex",mt:3},children:e.jsxs(a,{sx:{flex:1},children:[e.jsx(ne,{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(ne,{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]})}}})]})})}Tt.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 js(t){for(const o in t)typeof t[o]=="string"?t[o]=t[o].replace(/\\\\/g,"\\"):typeof t[o]=="object"&&t[o]!==null&&js(t[o]);return t}const fn={"-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},xn={"--volume":!0,"--publish":!0},gn=new Set(["--publish","--volume"]),ys=t=>{const[o]=t.split(":");return o?.startsWith("/")||o?.startsWith("./")||o?.startsWith("../")||o?.startsWith("~")||o?.startsWith("$BLOCKLET")};function kn(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||!ys(o.value))return o;const l=s.startsWith("/")?`$BLOCKLET_DATA_DIR${s}`:`$BLOCKLET_DATA_DIR/${s}`;return{...o,value:[l,...r].join(":")}})}function jn(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 ho(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=fn[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",!(gn.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:jn(kn(x)),dockerEnvs:l,dockerImage:i,dockerCommand:d}}function yn({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 ws={"--volume":t=>{const[o]=t.split(":");return o?ys(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"}},Qe=t=>t.replace(/^[-]+/,"").replace(/-([a-z])/g,(r,l)=>l.toUpperCase()),wn=t=>`--${t.replace(/([A-Z])/g,"-$1").toLowerCase()}`,vn=[" -- ","~","&","|",">","<","{","}","[","]",";","$","!","*","%","&&","||",","],Cn=["rm ","sudo "];function vs(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(Cn.some(l=>s.indexOf(l)!==-1))throw new Error("Docker CMD is invalid");if(vn.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 Rn=Array.from(new Set(Object.keys(Ut).map(Qe))),Sn=["publish","volume"];te.object({workdir:te.string().trim().optional(),image:te.string().trim().regex(/^[^\s]+$/).optional(),shell:te.string().trim().optional(),volumes:te.array().items(te.string().trim()).optional(),script:te.string().trim().optional(),installNodeModules:te.boolean().optional(),skipWrapDockerfile:te.boolean().optional(),tmpfs:te.string().trim().optional(),command:te.string().allow("").default("").optional().custom((t,o)=>{try{return vs(t),t}catch(s){return o.error("any.invalid",{message:s.message})}},"Docker CMD validation"),runBaseScript:te.boolean().optional(),...Rn.reduce((t,o)=>{const s=ws[wn(o)];return Sn.includes(o)?(t[o]=te.array().items(te.string().trim()).optional(),s?t[o]=te.array().items(te.string().trim().custom((r,l)=>{const c=s(r);return c?l.message(c):r})).optional():t[o]=te.array().items(te.string().trim()).optional(),t):(s?t[o]=te.string().trim().custom((r,l)=>{const c=s(r);return c?l.message(c):r}).optional():t[o]=te.string().trim().optional(),t)},{})}).optional();function It({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=(L,$)=>{s[l]?.[t]&&($?(s[l][t].custom=s[l][t].value,s[l][t].value=`$${Qe(o.key)}`):(s[l][t].value=s[l][t].custom||"",s[l][t].custom="")),r({...s,[l]:[...s[l]]})},f=(L,$)=>{const w=s[l][t]?.value||"";s[l][t]={...s[l][t],secure:$,value:$&&w===me.BLOCKLET_AUTOMATIC_ENV_VALUE?"":w},r({...s,[l]:[...s[l]]})},b=(L,$)=>{s[l][t]={...s[l][t],shared:$},r({...s,[l]:[...s[l]]})},h=(L,$)=>{const w=s[l][t]?.value||"";s[l][t]={...s[l][t],required:$,value:$&&w===me.BLOCKLET_AUTOMATIC_ENV_VALUE?"":w},r({...s,[l]:[...s[l]]})},j=(L,$)=>{s[l][t]={...s[l][t],value:$?me.BLOCKLET_AUTOMATIC_ENV_VALUE:"",secure:!1,required:!1},r({...s,[l]:[...s[l]]})},v=L=>{s[l][t]={...s[l][t],description:L.target.value},r({...s,[l]:[...s[l]]})},g=L=>{const $=L.target.value==="web"?"web":"docker";$==="web"&&s.dockerArgs.forEach(Z=>{Z.type="docker"});const S=`/${s.dockerImage.replace(/\W/g,"-")}-${t}`;s.dockerArgs[t]={...s.dockerArgs[t],type:$,path:$==="docker"?S:"/",protocol:"http",prefix:$==="docker"?S:"/",name:"publicUrl",port:"BLOCKLET_PORT"},r({...s,dockerArgs:[...s.dockerArgs]})},C=L=>{s.dockerArgs[t]={...s.dockerArgs[t],proxyBehavior:L.target.value==="direct"?"direct":"service"},r({...s,dockerArgs:[...s.dockerArgs]})},I=L=>{const $=L.target.value;s[l][t]={...s[l][t],prefix:$,path:$==="*"?"/":$},r({...s,[l]:[...s[l]]})},R=L=>{s[l]?.[t]&&(s[l][t].value=L.target.value),r({...s,[l]:[...s[l]]})},y=d===`$${Qe(o.key)}`||o.custom,T=l==="dockerArgs"&&!Ut[o.key],O=xn[o.key],N=l==="dockerEnvs",z=o.key==="--publish";let K=o.key;return z&&o.type==="web"?K="--publish (Web)":N&&(K=`--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(A,{sx:{textOverflow:"ellipsis",width:"100%",overflow:"hidden"},children:K})}),e.jsxs(a,{sx:{display:"flex",flexDirection:"column",gap:1,flex:1},children:[e.jsx(ne,{disabled:i||y||T||o.value===me.BLOCKLET_AUTOMATIC_ENV_VALUE,placeholder:"",value:y?`$${Qe(o.key)}`:d,sx:{flex:1},error:T,onChange:R,slotProps:{input:{endAdornment:e.jsxs(Xe,{position:"end",sx:{zoom:.9},children:[(!(O||T)||N||z)&&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(A,{variant:"caption",color:"error",children:c("blocklet.publish.docker.noAllowTheArg")}),o.key==="--publish"&&e.jsx(A,{variant:"caption",sx:{color:"text.secondary"},children:c("blocklet.publish.docker.publishTips")}),o.key==="--volume"&&ws[o.key](d)&&e.jsx(A,{variant:"caption",color:"error",children:c("blocklet.publish.docker.volumeTips")})]}),u&&e.jsx(ct,{open:!0,fullWidth:!0,maxWidth:"sm",PaperProps:{style:{minHeight:0}},title:c(N?"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:[O||T||N?null:e.jsxs(a,{sx:{width:"100%",display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"},children:[e.jsx(A,{children:c("blocklet.publish.docker.needCustomInput")}),e.jsx(Pe,{disabled:i,checked:y,onChange:m,sx:{zoom:.9}})]}),N&&e.jsxs(a,{sx:{width:"100%",display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"},children:[e.jsx(A,{children:c("blocklet.publish.docker.shared")}),e.jsx(Pe,{disabled:i,checked:o.shared,onChange:b,sx:{zoom:.9}})]}),N&&e.jsxs(a,{sx:{width:"100%",display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"},children:[e.jsx(A,{children:c("blocklet.publish.docker.required")}),e.jsx(Pe,{disabled:i,checked:o.required,onChange:h,sx:{zoom:.9}})]}),N&&e.jsxs(a,{sx:{width:"100%",display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"},children:[e.jsx(A,{children:c("blocklet.publish.docker.secure")}),e.jsx(Pe,{disabled:i,checked:o.secure,onChange:f,sx:{zoom:.9}})]}),N&&e.jsxs(a,{sx:{width:"100%",display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"},children:[e.jsx(A,{children:c("blocklet.publish.docker.autoGenerated")}),e.jsx(Pe,{disabled:i,checked:o.value===me.BLOCKLET_AUTOMATIC_ENV_VALUE,onChange:j,sx:{zoom:.9}})]}),N&&e.jsxs(a,{sx:{mt:1,width:"100%",display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"},children:[e.jsx(A,{sx:{flex:1},children:c("blocklet.publish.docker.description")}),e.jsx(ne,{disabled:i,value:o.description,onChange:v,sx:{flex:1},label:c("blocklet.publish.docker.description")})]}),z&&e.jsxs(a,{sx:{mt:1,width:"100%",display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"},children:[e.jsx(A,{sx:{flex:1},children:c("blocklet.publish.docker.portType")}),e.jsxs(vt,{value:o.type||"docker",onChange:g,children:[e.jsx(be,{value:"docker",children:"Docker"}),e.jsx(be,{value:"web",children:"Web"})]})]}),z&&o.type==="web"&&e.jsxs(a,{sx:{mt:1,width:"100%",display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"},children:[e.jsx(A,{sx:{flex:1},children:c("blocklet.publish.docker.proxyBehavior")}),e.jsxs(vt,{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")})]})]}),z&&o.type==="web"&&e.jsxs(a,{sx:{mt:1,width:"100%",display:"flex",flexDirection:"row",alignItems:"center",justifyContent:"space-between"},children:[e.jsx(A,{sx:{flex:1},children:c("blocklet.publish.docker.prefix")}),e.jsx(ne,{disabled:i,value:o.prefix,onChange:I,sx:{flex:1},label:c("blocklet.publish.docker.prefix")})]})]})})]})}It.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 Tn=`
|
|
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 Cs({readOnly:t,paramsErrTip:o,setParamsErrTip:s,error:r,params:l,setParams:c}){const{t:i}=X(),[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(ho(x)),I=g.dockerArgs||[],R=g.dockerEnvs||[],y=g.dockerImage||"",T=g.dockerCommand||"",O=w=>{const{value:S}=w.target;p(S)};k.useEffect(()=>{l.blockletDocker&&l.blockletDocker.dockerImage&&!y&&C(l.blockletDocker)},[l,y,C]);const N=w=>{const S=ho(w.target.value);C(Z=>{const H=Z.dockerArgs.find(D=>D.key==="--publish"&&D.type==="web");let Q=!1;const E=D=>{D.type="web",D.path=H.path||"/",D.protocol=H.protocol||"http",D.prefix=H.prefix||"/",D.name=H.name||"publicUrl",D.port=H.port||"BLOCKLET_PORT"};if(S.dockerArgs.forEach(D=>{const V=Z.dockerArgs.find(U=>U.key===D.key);V&&(Object.entries(V).forEach(([U,ee])=>{ee!=null&&U!=="value"&&(D[U]=ee)}),D.proxyBehavior=D.proxyBehavior||"server",D.key==="--publish"&&D.type==="web"&&(Q?D.type="docker":(E(D),Q=!0)))}),H&&!S.dockerArgs.find(V=>V.key==="--publish"&&V.type==="web")){const V=S.dockerArgs.find(U=>U.key==="--publish"&&U.value===H.value);V?E(V):(Q=!1,S.dockerArgs.forEach(U=>{U.key==="--publish"&&!Q&&(E(U),Q=!0)}))}return S.dockerEnvs.forEach(D=>{const V=Z.dockerEnvs.find(U=>U.key===D.key);V&&Object.entries(V).forEach(([U,ee])=>{ee!=null&&U!=="value"&&(D[U]=ee)})}),S})},z=()=>{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:""}]})},K=()=>{f(!1),v("")},L=w=>{const{value:S}=w.target;C({...g,dockerImage:S}),S.indexOf(" ")>-1?s({...o,dockerImageName:i("blocklet.publish.docker.dockerImageNameError")}):s({...o,dockerImageName:""})},$=w=>{const{value:S}=w.target;C({...g,dockerCommand:S});try{vs(S),s({...o,dockerCMD:""})}catch{s({...o,dockerCMD:i("blocklet.publish.docker.dockerCMDError")})}};return k.useEffect(()=>{d==="dockerCommand"&&p(yn(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(Po,{value:d,onChange:(w,S)=>u(S),children:[e.jsx(ot,{value:"dockerCommand",label:i("blocklet.publish.docker.dockerCommand")}),e.jsx(ot,{value:"dockerParams",label:i("blocklet.publish.docker.dockerParams")})]})}),d==="dockerCommand"&&e.jsxs(a,{children:[e.jsx(ne,{disabled:t,label:i("blocklet.publish.docker.pleaseInputDockerCommand"),placeholder:Tn,autoComplete:"off",variant:"outlined",fullWidth:!0,multiline:!0,spellCheck:!1,minRows:10,value:x,onChange:O,onBlur:N,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(ne,{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:L}),e.jsx(ne,{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:$}),e.jsx(a,{sx:{height:4}}),I.map((w,S)=>e.jsx(It,{index:S,item:w,dockerParams:g,setDockerParams:C,dataKey:"dockerArgs",t:i,readOnly:t},`${w.key}-${S}`)),R.map((w,S)=>e.jsx(It,{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(lt,{fullWidth:!0,open:!0,children:[e.jsx(Co,{children:i("blocklet.publish.docker.addItem")}),e.jsx(Ro,{children:e.jsxs(dr,{sx:{mt:1,width:"100%",minWidth:480,maxWidth:"100%"},children:[e.jsx(vt,{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(A,{variant:"caption",sx:{color:"text.secondary"},children:i("blocklet.publish.docker.publishTips")}),b==="--volume"&&e.jsx(A,{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(ne,{value:j,onChange:w=>v(w.target.value),sx:{width:"100%"},label:i("blocklet.publish.docker.envKey")}),e.jsx(ur,{children:i("blocklet.publish.docker.dockerArgValue")})]})]})}),e.jsxs(So,{children:[e.jsx(J,{onClick:K,children:i("common.cancel")}),e.jsx(J,{onClick:z,children:i("common.confirm")})]})]})]})}Cs.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 mo(t,o,{ttl:s=1e3*60*60,skipStorage:r=!1,onUpdate:l=()=>{}}={}){const[c,i]=Rr(o),d=k.useRef(null),u=k.useRef(l);k.useEffect(()=>{if(r)return;const p=gr(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 kr(t,f,s,100),f})},[t,s,i]);return{state:c,setState:r?i:x,historyStateRef:d,removeStorage:()=>{jr(t)}}}const In=({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(_t,{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})},bo=(t,o)=>{const s=At(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},Dn={0:"branding",1:"introduction",2:"resources",3:"blocklets",4:"version"},fo={resources:2,blocklets:3};function Rs({initUrl:t=null,...o}){const{projectId:s,mode:r,releaseId:l,lastVersion:c,componentDid:i=""}=rt(),d=s===F.UNOWNED_DID||r==="view",{t:u,locale:x}=X(),{blocklet:p}=Ie(),{state:m,setState:f,historyStateRef:b,removeStorage:h}=mo(`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]=Fe({}),[g,C]=Fe({}),I=k.useRef(""),[R,y]=k.useState(!1),[T,O]=Fe(null),{api:N}=ke(),z=Oe(P=>P.breakpoints.down("md")),[K,L]=k.useState({}),$=k.useRef({}),{state:w,setState:S}=mo(`blocklet-studio-selectedResourceIds-${s}-${c}`,{},{skipStorage:s===F.UNOWNED_DID||r==="view"}),[Z,H]=k.useState(""),[Q,E]=Fe({}),D=t?.searchParams.get("dependentComponentsMode"),V=D==="readonly",{session:U}=ze(),{storeList:ee}=Bt({fromBlocklet:!0,blocklet:p,userDid:U?.user?.did}),[q,Y]=k.useState([]);k.useEffect(()=>{Array.isArray(ee)&&ee.length>0&&Promise.all(ee.map(async P=>({...(await(await fetch(`${P.url}/__blocklet__.js?type=json`)).json()).preferences,storeInfo:P}))).then(P=>{Y(P)})},[ee.length]),k.useEffect(()=>{const P={},M={},{logoUrl:Ce,screenshotUrls:Le}=ts(m,p,s);Promise.all(q.map(async fe=>{const{maxImageCount:qe,minImageCount:ut,logoImageType:Ne,imageMinHeight:Ve,imageMinWidth:We}=fe,Ze=Array.isArray(Ne)?Ne:Ne.split(",");P[fe.storeInfo.url]||(P[fe.storeInfo.url]={}),M[fe.storeInfo.url]||(M[fe.storeInfo.url]={});const pt=M[fe.storeInfo.url],Ds=P[fe.storeInfo.url];Number(qe)<=Le.length&&(pt.maxImageCount=u("blocklet.publish.storeRule.maxImageCount",{max:qe,count:Le.length,unit:qe>1?u("blocklet.publish.storeRule.screenshots"):u("blocklet.publish.storeRule.screenshot")})),Number(fe.minImageCount)>Le.length&&(pt.minImageCount=u("blocklet.publish.storeRule.minImageCount",{min:ut,count:Le.length,unit:ut>1?u("blocklet.publish.storeRule.screenshots"):u("blocklet.publish.storeRule.screenshot")}));const Gt=Ce?Ce.split(".").pop():"";Gt&&!(Ze.includes("jpg")?[...Ze,"jpeg"]:Ze).includes(Gt)&&(Ds.logoFormat=u("blocklet.publish.storeRule.logoFormat",{format:Ze.join(",")})),await Promise.all(Le.map((Es,ht)=>{const mt=new Image;return mt.src=Es,new Promise(Ls=>{mt.onload=()=>{const{width:Ps,height:$s}=mt;if(Ps<Number(We)||$s<Number(Ve)){let Ue="";switch(ht+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=`${ht+1}`;break}pt[`imageSize-${ht+1}`]=u("blocklet.publish.storeRule.minImageSize",{width:We,height:Ve,name:Ue})}Ls()}})}))})).then(()=>{const fe=Object.values(P).some(We=>Object.values(We).length>0),qe=Object.values(M).some(We=>Object.values(We).length>0),Ne={logoErrors:P,screenshotErrors:M,storeList:ee,hasWarning:fe||qe,hasLogoWarning:fe,hasScreenshotWarning:qe},Ve=JSON.stringify(Ne);Ve!==I.current&&(C(Ne),I.current=Ve)})},[m,p.did,s,q,u]);const G=k.useMemo(()=>{const P={};return Object.keys(Q).forEach(M=>{const Ce=Q[M];Ce&&Ce.forEach(Le=>{P[Le]=!0})}),P},[Q]),se=k.useCallback(P=>{V&&f({blockletComponents:[]}),E(P)},[V,E,f]),de=k.useCallback((...P)=>{S(...P),v({blockletResource:"",blockletDocker:""})},[]),le=l==="none"?m?.lastReleaseId||"":l,[pe,he]=k.useState(r==="new-release"?4:0),Ke=t?.searchParams.get("resourcesTitle"),Ye=t?.searchParams.get("componentsTitle"),re=[{label:u("blocklet.publish.branding"),description:u("blocklet.publish.steps.branding")},{label:u("common.introduction"),description:u("blocklet.publish.steps.introduction")},{label:Ke||u("blocklet.publish.resourceTitle"),description:u("blocklet.publish.steps.resources")},{label:Ye||u("common.components"),description:u("blocklet.publish.steps.blocklets")},{label:u("blocklet.publish.versionTitle"),description:u("blocklet.publish.steps.version")}],De=re[pe]||re[re.length-1],W=Dn[pe];k.useEffect(()=>{s&&v({projectId:""})},[s,v]);const Be=k.useMemo(()=>m?.blockletResourceType==="resource"?"resource":m?.blockletComponents?.some(P=>P.included)||Object.keys(G).length||m?.uploadedResource?"pack":"resource",[m?.blockletComponents,m?.uploadedResource,G,m?.blockletResourceType]),Ae=[],B=(p?.children||[]).filter(P=>P.meta.resource?.exportApi).filter(P=>!i||P.meta.did===i);B.forEach(P=>{In({tabs:Ae,blocklet:P,ancestors:[p]})});const[oe,je]=k.useState(Ae[0]?.value),ie=r==="view",ye=Sr(()=>{if(!t)return;H(t.searchParams.get("logo")),f(M=>({...M,blockletTitle:M?.blockletTitle||t.searchParams.get("title"),blockletDescription:M?.blockletDescription||t.searchParams.get("description"),blockletIntroduction:M?.blockletIntroduction||t.searchParams.get("introduction")||t.searchParams.get("description"),blockletComponents:M?.blockletComponents?.length?M?.blockletComponents:JSON.parse(t.searchParams.get("components")||"[]"),note:M?.note||t.searchParams.get("note")||"No note"}));const P=t.searchParams.get("resources");try{const M=JSON.parse(P);L(M)}catch{}}),Ee=async()=>{if(le)try{const P=await N.getRelease({input:{did:p.meta.did,projectId:s,releaseId:le}});if(y(!1),!P.release){_.error("Release not found");return}P.release.note=Mo(P.release.note,"note"),P.release=js(P.release),r!=="view"&&(P.release.note=""),f(M=>({...bo({...M,...P.release,blockletVersion:r==="create"||r==="new-release"?_e.inc(P.release.blockletVersion,"patch"):P.release.blockletVersion},p)})),O(P.release)}catch(P){y(!1),_.error(ge(P))}},Mt=async()=>{if(s===F.UNOWNED_DID){f({blockletVersion:"0.0.1",blockletTitle:""});return}if(!s){_.error(u("blocklet.publish.errorTip.noDid"));return}try{const M=(await Ko(N.getProject,[{input:{did:p.meta.did,projectId:s}}],{key:"getProject"})).project||{};M.blockletVersion?(r==="create"||r==="new-release")&&_e.valid(M.blockletVersion)&&(M.blockletVersion=_e.inc(M.blockletVersion,"patch")):M.blockletVersion="0.0.1";const Ce=bo(M,p);f({...Ce}),M.lastReleaseId||ye()}catch(P){_.error(ge(P))}},dt=k.useCallback(async()=>{if(!R){y(!0);try{if(r==="view"){if(!le){_.error("Empty release id");return}await Mt(),await Ee();return}await Mt(),le&&await Ee()}finally{r!=="view"&&f(P=>({...P,...b.current})),y(!1)}}},[r,le]),Ss=P=>{f({blockletComponents:P})},Ts=P=>{f({blockletResourceType:P})};k.useEffect(()=>{dt()},[dt]),k.useEffect(()=>{s===F.UNOWNED_DID&&(r==="create"||r==="new-release")&&t&&ye()},[s,t,r,ye]),k.useEffect(()=>{m.contentType==="docker"?f({resourceFromSelect:!1}):m.contentType==="blocklet"?f({resourceFromSelect:!0}):m.contentType==="upload"&&f({resourceFromSelect:!1})},[m.contentType,f]);const Ft=k.useMemo(()=>!!Object.keys(w).find(P=>!!w[P].length),[w]);if(!m&&R)return e.jsx(Je,{});if(!m)return null;const Ht=B.find(P=>P.meta.did===oe),Is=P=>{je(P)};return e.jsxs(En,{...o,children:[e.jsx(ms,{blocklet:p,release:T,getData:dt,getRelease:Ee,mode:r,params:m,setParams:f,setParamsErrTip:v,warning:g,readOnly:ie,loading:R,setLoading:y,initLogoUrl:Z,releaseId:le,projectId:s,projectType:Be,resourceComponents:B,resourceComponentsMap:Q,resourceRelateComponents:G,resourceItem:Ht,saveSelectedEventsRef:$,hasSelectedResources:Ft,setRelease:O,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:z?"column":"row",gap:3},children:[!z&&e.jsx(gs,{steps:re,loading:R,viewMode:r==="view",params:m,hasSelectedResources:Ft||m.uploadedResource,paramsErrTip:j,warning:g,activeStep:pe,setActiveStep:he,projectId:s,resourcesUrlTitle:Ke,componentsUrlTitle:Ye}),e.jsxs(a,{sx:{flex:"1",maxWidth:"720px"},children:[!z&&W!=="introduction"&&e.jsxs(A,{variant:"h6",sx:{fontWeight:"bold",display:"flex",flexDirection:"row",alignItems:"center"},children:[De.label,W==="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(Zt,{})})})]}),(z||W==="branding")&&e.jsx(a,{sx:{flexDirection:"column"},children:e.jsx(ss,{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:Z,setInitLogoUrl:H})}),z&&e.jsx(a,{sx:{flexDirection:"column"},children:e.jsx(Tt,{loading:R,params:m,paramsErrTip:j,setParams:f,setParamsErrTip:v,readOnly:ie})}),(z||W==="introduction")&&e.jsx(a,{sx:{display:"flex",flexDirection:"column",mt:z?5:0,width:"100%"},children:e.jsx(fs,{loading:R,readOnly:ie,params:m,setParams:f,paramsErrTip:j,setParamsErrTip:v})}),z&&e.jsx(A,{variant:"h6",sx:{fontWeight:"bold",mt:5},children:re[fo.resources].label}),e.jsx(a,{sx:{display:z||W==="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(Me,{control:e.jsx(He,{size:"small",checked:m.blockletSingleton||!1,onChange:P=>f({blockletSingleton:P.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(Zt,{})})})]}),sx:{mt:0}}),e.jsxs(pr,{onChange:P=>f({contentType:P.target.value}),children:[e.jsx(Me,{value:"blocklet",disabled:ie,control:e.jsx(ft,{size:"small",checked:m.contentType==="blocklet"}),label:u("blocklet.publish.resourceSelect")}),e.jsx(Me,{value:"upload",disabled:ie,control:e.jsx(ft,{size:"small",checked:m.contentType==="upload"}),label:u("blocklet.publish.resourceUpload")}),e.jsx(Me,{value:"docker",disabled:ie,control:e.jsx(ft,{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(_o,{tabs:Ae,current:oe,onChange:Is,sx:{ml:-2,mt:2,maxWidth:z?window.innerWidth-24:"100%"}}),e.jsx(Qo,{loading:R,initialResources:K,saveSelectedEventsRef:$,selectedResourceIds:w,setSelectedResourceIds:de,setResourceComponentsMap:se,error:j.blockletResource,app:p,readOnly:ie,component:Ht,componentDid:i,initUrl:t,params:m,showTree:m.contentType==="blocklet",setParams:f,projectId:s===F.UNOWNED_DID?"":s,release:{...T,id:le}})]}),m.contentType==="upload"&&e.jsx(ks,{app:p,readOnly:ie,projectId:s===F.UNOWNED_DID?"":s,params:m,error:j.blockletResource,setParams:f,setParamsErrTip:v}),m.contentType==="docker"&&e.jsx(Cs,{app:p,readOnly:ie,projectId:s===F.UNOWNED_DID?"":s,params:m,error:j.blockletResource,setParams:f,setParamsErrTip:v,paramsErrTip:j})]})})}),z&&e.jsx(A,{variant:"h6",sx:{fontWeight:"bold",mt:5},children:re[fo.blocklets].label}),(z||W==="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(Fo,{projectType:Be,disabled:R||ie,app:p,value:m?.blockletComponents||[],blockletResourceType:m?.blockletResourceType||"",onChange:Ss,onChangeBlockletResourceType:Ts,resourceRelateComponents:G,dependentComponentsMode:D})})})}),!z&&W==="version"&&e.jsx(a,{sx:{flexDirection:"column"},children:e.jsx(Tt,{loading:R,params:m,paramsErrTip:j,setParams:f,setParamsErrTip:v,readOnly:ie})})]})]})]})]})}Rs.propTypes={initUrl:n.object};const En=ve.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 Ln({padding:t="",initUrl:o=null}){const{blocklet:s}=Ie(),r=qs(),{componentDid:l}=rt();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(Pn,{style:c,children:e.jsxs(Ns,{children:[e.jsx(bt,{path:"/",element:e.jsx(Uo,{initUrl:o})}),e.jsx(bt,{path:"/:projectId",element:e.jsx(Vr,{})}),e.jsx(bt,{path:"/:projectId/:mode/:releaseId/:lastVersion",element:e.jsx(Rs,{initUrl:o})})]})})}Ln.propTypes={padding:n.oneOfType([n.string,n.number]),initUrl:n.object};const Pn=ve(a)`
|
|
239
|
-
a {
|
|
240
|
-
color: ${({theme:t})=>t.palette.primary.main};
|
|
241
|
-
}
|
|
242
|
-
`;export{Ln as default};
|