@powerhousedao/connect 1.0.0 → 1.0.4
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/README.md +0 -1
- package/dist/.env +1 -1
- package/dist/assets/app-BdM_bCqD.js +842 -0
- package/dist/assets/app-BdM_bCqD.js.map +1 -0
- package/dist/assets/app-loader-B7xllAoS.js +3 -0
- package/dist/assets/app-loader-B7xllAoS.js.map +1 -0
- package/dist/assets/app-loader-D5wPX62N.css +1 -0
- package/dist/assets/browser-CwKAjz_f.js +43 -0
- package/dist/assets/browser-CwKAjz_f.js.map +1 -0
- package/dist/assets/{browser-BbIPlSaA.js → browser-Dmr6AWWk.js} +2 -2
- package/dist/assets/{browser-BbIPlSaA.js.map → browser-Dmr6AWWk.js.map} +1 -1
- package/dist/assets/ccip-BoVyVgwR.js +2 -0
- package/dist/assets/ccip-BoVyVgwR.js.map +1 -0
- package/dist/assets/content-BmCNR4Pw.js +6 -0
- package/dist/assets/content-BmCNR4Pw.js.map +1 -0
- package/dist/assets/editor-Cma-7Z7k.js +2 -0
- package/dist/assets/editor-Cma-7Z7k.js.map +1 -0
- package/dist/assets/editor-IMwm8pim.js +2 -0
- package/dist/assets/editor-IMwm8pim.js.map +1 -0
- package/dist/assets/editor-vgD9wEAH.js +2 -0
- package/dist/assets/editor-vgD9wEAH.js.map +1 -0
- package/dist/assets/editors-DQC0rqOg.js +347 -0
- package/dist/assets/editors-DQC0rqOg.js.map +1 -0
- package/dist/assets/index-BP2fj1j6.js +16 -0
- package/dist/assets/index-BP2fj1j6.js.map +1 -0
- package/dist/assets/index-SwNHx8hV.js +3 -0
- package/dist/assets/{index-Bg4jiu9P.js.map → index-SwNHx8hV.js.map} +1 -1
- package/dist/assets/index-T6Et30Eh-CdVwpIBO.js +12 -0
- package/dist/assets/index-T6Et30Eh-CdVwpIBO.js.map +1 -0
- package/dist/assets/{main.Bp4zjrbL.js → main.DQ-aV7Qq.js} +2 -2
- package/dist/assets/{main.Bp4zjrbL.js.map → main.DQ-aV7Qq.js.map} +1 -1
- package/dist/assets/root-BKJF0Yl6.js +12 -0
- package/dist/assets/root-BKJF0Yl6.js.map +1 -0
- package/dist/assets/router-Hd499Vrp.js +12 -0
- package/dist/assets/router-Hd499Vrp.js.map +1 -0
- package/dist/assets/useUiNodes-Ch-W4vsB.js +107 -0
- package/dist/assets/useUiNodes-Ch-W4vsB.js.map +1 -0
- package/dist/index.html +4 -4
- package/dist/service-worker.js +1 -1
- package/dist/studio/index.d.ts +1 -0
- package/dist/studio/index.js +243 -287
- package/dist/studio/server.d.ts +2 -2
- package/dist/studio/vite-plugin.d.ts +12 -0
- package/dist/swEnv.js +3 -3
- package/dist/vite-envs.sh +12 -12
- package/package.json +10 -13
- package/dist/assets/ArrowFilledRight-BXP1j8Cl.js +0 -2
- package/dist/assets/ArrowFilledRight-BXP1j8Cl.js.map +0 -1
- package/dist/assets/ArrowLeft-8ZR_YHAJ.js +0 -2
- package/dist/assets/ArrowLeft-8ZR_YHAJ.js.map +0 -1
- package/dist/assets/ArrowUp-E2jS6Wzt.js +0 -2
- package/dist/assets/ArrowUp-E2jS6Wzt.js.map +0 -1
- package/dist/assets/BarChart-C-E6t7dt.js +0 -2
- package/dist/assets/BarChart-C-E6t7dt.js.map +0 -1
- package/dist/assets/BaseArrowLeft-DtHrkTW4.js +0 -2
- package/dist/assets/BaseArrowLeft-DtHrkTW4.js.map +0 -1
- package/dist/assets/BaseArrowRight-BIwzFHnh.js +0 -2
- package/dist/assets/BaseArrowRight-BIwzFHnh.js.map +0 -1
- package/dist/assets/Braces-3LcexUsR.js +0 -2
- package/dist/assets/Braces-3LcexUsR.js.map +0 -1
- package/dist/assets/Branch-D0CssEh3.js +0 -2
- package/dist/assets/Branch-D0CssEh3.js.map +0 -1
- package/dist/assets/BrickGlobe-CdHw7ZVP.js +0 -2
- package/dist/assets/BrickGlobe-CdHw7ZVP.js.map +0 -1
- package/dist/assets/Briefcase-CV2bgnSj.js +0 -2
- package/dist/assets/Briefcase-CV2bgnSj.js.map +0 -1
- package/dist/assets/Calendar-DuXN-sPt.js +0 -2
- package/dist/assets/Calendar-DuXN-sPt.js.map +0 -1
- package/dist/assets/CalendarTime-Bhjzlgn_-BVlYgNLL.js +0 -2
- package/dist/assets/CalendarTime-Bhjzlgn_-BVlYgNLL.js.map +0 -1
- package/dist/assets/CalendarTime-BowYBiVM.js +0 -2
- package/dist/assets/CalendarTime-BowYBiVM.js.map +0 -1
- package/dist/assets/Caret-r16V7Hcs.js +0 -2
- package/dist/assets/Caret-r16V7Hcs.js.map +0 -1
- package/dist/assets/CaretDown-DljrBfIz.js +0 -2
- package/dist/assets/CaretDown-DljrBfIz.js.map +0 -1
- package/dist/assets/CaretLeft-B_Lzd_Rn.js +0 -2
- package/dist/assets/CaretLeft-B_Lzd_Rn.js.map +0 -1
- package/dist/assets/CaretLeft-Df3E-68c-wke5zKLt.js +0 -2
- package/dist/assets/CaretLeft-Df3E-68c-wke5zKLt.js.map +0 -1
- package/dist/assets/CaretRight-Bbz5nCpg.js +0 -2
- package/dist/assets/CaretRight-Bbz5nCpg.js.map +0 -1
- package/dist/assets/CaretRight-DSVWUSka-Cx0Mkcqa.js +0 -2
- package/dist/assets/CaretRight-DSVWUSka-Cx0Mkcqa.js.map +0 -1
- package/dist/assets/CaretSort-DSgBum1h.js +0 -2
- package/dist/assets/CaretSort-DSgBum1h.js.map +0 -1
- package/dist/assets/Check-CbV9BYHY.js +0 -2
- package/dist/assets/Check-CbV9BYHY.js.map +0 -1
- package/dist/assets/CheckCircle-CX2jIKoF.js +0 -2
- package/dist/assets/CheckCircle-CX2jIKoF.js.map +0 -1
- package/dist/assets/CheckCircleFill-DLK12sW5.js +0 -2
- package/dist/assets/CheckCircleFill-DLK12sW5.js.map +0 -1
- package/dist/assets/Checkmark-DBvUEZAd.js +0 -2
- package/dist/assets/Checkmark-DBvUEZAd.js.map +0 -1
- package/dist/assets/ChevronDown-eUsCPXcB.js +0 -2
- package/dist/assets/ChevronDown-eUsCPXcB.js.map +0 -1
- package/dist/assets/Circle-8dOehHQf.js +0 -2
- package/dist/assets/Circle-8dOehHQf.js.map +0 -1
- package/dist/assets/CircleInfo-D0ktZDko.js +0 -2
- package/dist/assets/CircleInfo-D0ktZDko.js.map +0 -1
- package/dist/assets/Clock-CudavWaE.js +0 -2
- package/dist/assets/Clock-CudavWaE.js.map +0 -1
- package/dist/assets/Clock-DF-XMxha-CudavWaE.js +0 -2
- package/dist/assets/Clock-DF-XMxha-CudavWaE.js.map +0 -1
- package/dist/assets/ClockFill-yWs52y_e.js +0 -2
- package/dist/assets/ClockFill-yWs52y_e.js.map +0 -1
- package/dist/assets/CloudSlash-D18Hl3VW.js +0 -2
- package/dist/assets/CloudSlash-D18Hl3VW.js.map +0 -1
- package/dist/assets/Collapse-BOxZH5-e.js +0 -2
- package/dist/assets/Collapse-BOxZH5-e.js.map +0 -1
- package/dist/assets/Connect-laqJZT3s.js +0 -2
- package/dist/assets/Connect-laqJZT3s.js.map +0 -1
- package/dist/assets/Copy-CkOtWZ6m.js +0 -2
- package/dist/assets/Copy-CkOtWZ6m.js.map +0 -1
- package/dist/assets/Copy-ms9-7m7Y-CkOtWZ6m.js +0 -2
- package/dist/assets/Copy-ms9-7m7Y-CkOtWZ6m.js.map +0 -1
- package/dist/assets/CrossCircle-B6ZawoOx-z5-kkOo3.js +0 -2
- package/dist/assets/CrossCircle-B6ZawoOx-z5-kkOo3.js.map +0 -1
- package/dist/assets/CrossCircle-Bp9diEe9.js +0 -2
- package/dist/assets/CrossCircle-Bp9diEe9.js.map +0 -1
- package/dist/assets/Danger-CLu7nxgz.js +0 -2
- package/dist/assets/Danger-CLu7nxgz.js.map +0 -1
- package/dist/assets/Danger-KM8BZjue-CLu7nxgz.js +0 -2
- package/dist/assets/Danger-KM8BZjue-CLu7nxgz.js.map +0 -1
- package/dist/assets/Discord-CcPWRT8g.js +0 -2
- package/dist/assets/Discord-CcPWRT8g.js.map +0 -1
- package/dist/assets/Drive-CzahDx9j.js +0 -2
- package/dist/assets/Drive-CzahDx9j.js.map +0 -1
- package/dist/assets/Edit-D9GlgGu8.js +0 -2
- package/dist/assets/Edit-D9GlgGu8.js.map +0 -1
- package/dist/assets/Edit-Dr-ZiMSE-D9GlgGu8.js +0 -2
- package/dist/assets/Edit-Dr-ZiMSE-D9GlgGu8.js.map +0 -1
- package/dist/assets/Ellipsis-DWNUJYUI.js +0 -2
- package/dist/assets/Ellipsis-DWNUJYUI.js.map +0 -1
- package/dist/assets/Error-FBAhqFT5.js +0 -2
- package/dist/assets/Error-FBAhqFT5.js.map +0 -1
- package/dist/assets/Exclamation-BGFGsVRw.js +0 -2
- package/dist/assets/Exclamation-BGFGsVRw.js.map +0 -1
- package/dist/assets/File-Ba7ClyaL-BU1g1wjO.js +0 -2
- package/dist/assets/File-Ba7ClyaL-BU1g1wjO.js.map +0 -1
- package/dist/assets/File-DWKl25DR.js +0 -2
- package/dist/assets/File-DWKl25DR.js.map +0 -1
- package/dist/assets/FilesEarmark-BTL53WSf.js +0 -2
- package/dist/assets/FilesEarmark-BTL53WSf.js.map +0 -1
- package/dist/assets/FolderClose-BVMKeKvW.js +0 -2
- package/dist/assets/FolderClose-BVMKeKvW.js.map +0 -1
- package/dist/assets/FolderOpen-DT55_X9N.js +0 -2
- package/dist/assets/FolderOpen-DT55_X9N.js.map +0 -1
- package/dist/assets/FolderPlus-C2G5PVs-.js +0 -2
- package/dist/assets/FolderPlus-C2G5PVs-.js.map +0 -1
- package/dist/assets/Forum-Cfgyizyn.js +0 -2
- package/dist/assets/Forum-Cfgyizyn.js.map +0 -1
- package/dist/assets/Gear-CoQ9O06k.js +0 -2
- package/dist/assets/Gear-CoQ9O06k.js.map +0 -1
- package/dist/assets/Github-CjkZIHCO.js +0 -2
- package/dist/assets/Github-CjkZIHCO.js.map +0 -1
- package/dist/assets/Globe-Dy2otZRk.js +0 -2
- package/dist/assets/Globe-Dy2otZRk.js.map +0 -1
- package/dist/assets/GlobeWww-Ci7aa5CE.js +0 -2
- package/dist/assets/GlobeWww-Ci7aa5CE.js.map +0 -1
- package/dist/assets/Hdd-CP-hFB7d.js +0 -2
- package/dist/assets/Hdd-CP-hFB7d.js.map +0 -1
- package/dist/assets/History-CmOiP5qa.js +0 -2
- package/dist/assets/History-CmOiP5qa.js.map +0 -1
- package/dist/assets/InfoSquare-DbYZrwmg.js +0 -2
- package/dist/assets/InfoSquare-DbYZrwmg.js.map +0 -1
- package/dist/assets/Link-CXIVQOz6.js +0 -2
- package/dist/assets/Link-CXIVQOz6.js.map +0 -1
- package/dist/assets/Linkedin-exhl1yGN.js +0 -2
- package/dist/assets/Linkedin-exhl1yGN.js.map +0 -1
- package/dist/assets/Lock-DWdDRi_O.js +0 -2
- package/dist/assets/Lock-DWdDRi_O.js.map +0 -1
- package/dist/assets/M-ByQIo8bX.js +0 -2
- package/dist/assets/M-ByQIo8bX.js.map +0 -1
- package/dist/assets/PackageManager-B-MUWliB-bW01ZQSP.js +0 -2
- package/dist/assets/PackageManager-B-MUWliB-bW01ZQSP.js.map +0 -1
- package/dist/assets/PackageManager-D6Ia8zHs.js +0 -2
- package/dist/assets/PackageManager-D6Ia8zHs.js.map +0 -1
- package/dist/assets/Pencil-D830iveq.js +0 -2
- package/dist/assets/Pencil-D830iveq.js.map +0 -1
- package/dist/assets/People-B1tewG8c.js +0 -2
- package/dist/assets/People-B1tewG8c.js.map +0 -1
- package/dist/assets/Person-BPRmm67U.js +0 -2
- package/dist/assets/Person-BPRmm67U.js.map +0 -1
- package/dist/assets/Pin-D53eCMAz.js +0 -2
- package/dist/assets/Pin-D53eCMAz.js.map +0 -1
- package/dist/assets/Pin-DF70btCU-D53eCMAz.js +0 -2
- package/dist/assets/Pin-DF70btCU-D53eCMAz.js.map +0 -1
- package/dist/assets/PinFilled-CMXfFW67.js +0 -2
- package/dist/assets/PinFilled-CMXfFW67.js.map +0 -1
- package/dist/assets/PinFilled-vImzS0do-CMXfFW67.js +0 -2
- package/dist/assets/PinFilled-vImzS0do-CMXfFW67.js.map +0 -1
- package/dist/assets/Plus-XUIm1wNw.js +0 -2
- package/dist/assets/Plus-XUIm1wNw.js.map +0 -1
- package/dist/assets/PlusCircle-D1IRYULb.js +0 -2
- package/dist/assets/PlusCircle-D1IRYULb.js.map +0 -1
- package/dist/assets/PowerhouseLogoSmall-DF1uUwIC.js +0 -2
- package/dist/assets/PowerhouseLogoSmall-DF1uUwIC.js.map +0 -1
- package/dist/assets/Project-EsBam9d0.js +0 -2
- package/dist/assets/Project-EsBam9d0.js.map +0 -1
- package/dist/assets/QuestionSquare-B6O9Le7r-CDaw1i6L.js +0 -2
- package/dist/assets/QuestionSquare-B6O9Le7r-CDaw1i6L.js.map +0 -1
- package/dist/assets/QuestionSquare-CDaw1i6L.js +0 -2
- package/dist/assets/QuestionSquare-CDaw1i6L.js.map +0 -1
- package/dist/assets/RedoArrow-DM-fqhEP.js +0 -2
- package/dist/assets/RedoArrow-DM-fqhEP.js.map +0 -1
- package/dist/assets/Reload-6C2CYgrl-DPZbA7yl.js +0 -2
- package/dist/assets/Reload-6C2CYgrl-DPZbA7yl.js.map +0 -1
- package/dist/assets/Reload-DPZbA7yl.js +0 -2
- package/dist/assets/Reload-DPZbA7yl.js.map +0 -1
- package/dist/assets/Renown-CItksi2j.js +0 -2
- package/dist/assets/Renown-CItksi2j.js.map +0 -1
- package/dist/assets/RenownHover-cYQgnwQW.js +0 -2
- package/dist/assets/RenownHover-cYQgnwQW.js.map +0 -1
- package/dist/assets/Ring-BivnmVc5.js +0 -2
- package/dist/assets/Ring-BivnmVc5.js.map +0 -1
- package/dist/assets/Save-BWCZPY82.js +0 -2
- package/dist/assets/Save-BWCZPY82.js.map +0 -1
- package/dist/assets/Search-BiEcSbcf.js +0 -2
- package/dist/assets/Search-BiEcSbcf.js.map +0 -1
- package/dist/assets/Server-cAzmNxsS.js +0 -2
- package/dist/assets/Server-cAzmNxsS.js.map +0 -1
- package/dist/assets/Settings-Cca-sV-_.js +0 -2
- package/dist/assets/Settings-Cca-sV-_.js.map +0 -1
- package/dist/assets/Synced-CjieGKOk.js +0 -2
- package/dist/assets/Synced-CjieGKOk.js.map +0 -1
- package/dist/assets/Syncing-KnDBLSYe.js +0 -2
- package/dist/assets/Syncing-KnDBLSYe.js.map +0 -1
- package/dist/assets/Trash-DIHOD5wQ.js +0 -2
- package/dist/assets/Trash-DIHOD5wQ.js.map +0 -1
- package/dist/assets/TrashFill-CG3humXp.js +0 -2
- package/dist/assets/TrashFill-CG3humXp.js.map +0 -1
- package/dist/assets/TreeViewSlash-BywCsx5o-CUTTXZi-.js +0 -2
- package/dist/assets/TreeViewSlash-BywCsx5o-CUTTXZi-.js.map +0 -1
- package/dist/assets/TreeViewSlash-CKJADIpa.js +0 -2
- package/dist/assets/TreeViewSlash-CKJADIpa.js.map +0 -1
- package/dist/assets/TriangleDown-Boh-WZzH.js +0 -2
- package/dist/assets/TriangleDown-Boh-WZzH.js.map +0 -1
- package/dist/assets/TriangleDown-eCXwUfu8-F-V79AL3.js +0 -2
- package/dist/assets/TriangleDown-eCXwUfu8-F-V79AL3.js.map +0 -1
- package/dist/assets/VariantArrowLeft-Dl1-3L5q.js +0 -2
- package/dist/assets/VariantArrowLeft-Dl1-3L5q.js.map +0 -1
- package/dist/assets/VerticalDots-CCZxgZM8.js +0 -2
- package/dist/assets/VerticalDots-CCZxgZM8.js.map +0 -1
- package/dist/assets/WarningFill-CRRaW3Oz.js +0 -2
- package/dist/assets/WarningFill-CRRaW3Oz.js.map +0 -1
- package/dist/assets/XTwitter-CW6IaHUb.js +0 -2
- package/dist/assets/XTwitter-CW6IaHUb.js.map +0 -1
- package/dist/assets/Xmark-CZ3t0Fap.js +0 -2
- package/dist/assets/Xmark-CZ3t0Fap.js.map +0 -1
- package/dist/assets/XmarkLight-BkhBFy51.js +0 -2
- package/dist/assets/XmarkLight-BkhBFy51.js.map +0 -1
- package/dist/assets/Youtube-h-Dc9pri.js +0 -2
- package/dist/assets/Youtube-h-Dc9pri.js.map +0 -1
- package/dist/assets/app-DKrzRA2f.js +0 -449
- package/dist/assets/app-DKrzRA2f.js.map +0 -1
- package/dist/assets/app-loader-DH_VGIVv.css +0 -1
- package/dist/assets/app-loader-mj_poB3V.js +0 -3
- package/dist/assets/app-loader-mj_poB3V.js.map +0 -1
- package/dist/assets/browser-DtMtdCgJ.js +0 -7
- package/dist/assets/browser-DtMtdCgJ.js.map +0 -1
- package/dist/assets/ccip-DUUHdwDo.js +0 -2
- package/dist/assets/ccip-DUUHdwDo.js.map +0 -1
- package/dist/assets/content-DFQJzB7I.js +0 -7
- package/dist/assets/content-DFQJzB7I.js.map +0 -1
- package/dist/assets/editor-Dms2goxJ.js +0 -346
- package/dist/assets/editor-Dms2goxJ.js.map +0 -1
- package/dist/assets/getEnsName-DoyRgFOP.js +0 -35
- package/dist/assets/getEnsName-DoyRgFOP.js.map +0 -1
- package/dist/assets/index-Bg4jiu9P.js +0 -3
- package/dist/assets/index-CLu1C_is-jUM7ckQa.js +0 -12
- package/dist/assets/index-CLu1C_is-jUM7ckQa.js.map +0 -1
- package/dist/assets/index-q_KV5Ymp.js +0 -16
- package/dist/assets/index-q_KV5Ymp.js.map +0 -1
- package/dist/assets/isAddressEqual-H3jvLfD0.js +0 -2
- package/dist/assets/isAddressEqual-H3jvLfD0.js.map +0 -1
- package/dist/assets/json-m8fnOd5g.js +0 -3
- package/dist/assets/json-m8fnOd5g.js.map +0 -1
- package/dist/assets/root-R8rJ5_ai.js +0 -17
- package/dist/assets/root-R8rJ5_ai.js.map +0 -1
- package/dist/assets/router-DX6s3TD2.js +0 -12
- package/dist/assets/router-DX6s3TD2.js.map +0 -1
- package/dist/assets/useUiNodes-BqBkjrKn.js +0 -107
- package/dist/assets/useUiNodes-BqBkjrKn.js.map +0 -1
- package/dist/studio/hmr.js +0 -10
- package/dist/studio/vite-plugins/base.d.ts +0 -14
- package/dist/studio/vite-plugins/external-packages.d.ts +0 -5
- package/dist/studio/vite-plugins/hmr.d.ts +0 -2
- package/dist/studio/vite-plugins/studio.d.ts +0 -3
package/dist/studio/index.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
// studio/index.ts
|
|
2
2
|
import { Command } from "commander";
|
|
3
|
-
import
|
|
4
|
-
import { dirname
|
|
3
|
+
import fs4 from "node:fs";
|
|
4
|
+
import { dirname, isAbsolute, join as join3, resolve } from "node:path";
|
|
5
5
|
|
|
6
6
|
// studio/server.ts
|
|
7
7
|
import basicSsl from "@vitejs/plugin-basic-ssl";
|
|
8
|
-
import { exec
|
|
9
|
-
import
|
|
10
|
-
import { join as
|
|
11
|
-
import { fileURLToPath as
|
|
8
|
+
import { exec } from "node:child_process";
|
|
9
|
+
import fs3 from "node:fs";
|
|
10
|
+
import { join as join2 } from "node:path";
|
|
11
|
+
import { fileURLToPath as fileURLToPath2 } from "node:url";
|
|
12
12
|
import { createLogger, createServer } from "vite";
|
|
13
13
|
import { viteEnvs } from "vite-envs";
|
|
14
14
|
|
|
@@ -50,19 +50,14 @@ function removeBase64EnvValues() {
|
|
|
50
50
|
});
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
-
// studio/vite-
|
|
54
|
-
import
|
|
53
|
+
// studio/vite-plugin.ts
|
|
54
|
+
import fs2 from "node:fs";
|
|
55
55
|
import path from "node:path";
|
|
56
|
-
import {
|
|
57
|
-
|
|
56
|
+
import {
|
|
57
|
+
normalizePath
|
|
58
|
+
} from "vite";
|
|
58
59
|
var LOCAL_DOCUMENT_MODELS_IMPORT = "LOCAL_DOCUMENT_MODELS";
|
|
59
60
|
var LOCAL_DOCUMENT_EDITORS_IMPORT = "LOCAL_DOCUMENT_EDITORS";
|
|
60
|
-
var HMR_MODULE_IMPORT = "PH:HMR_MODULE";
|
|
61
|
-
var STUDIO_IMPORTS = [
|
|
62
|
-
LOCAL_DOCUMENT_MODELS_IMPORT,
|
|
63
|
-
LOCAL_DOCUMENT_EDITORS_IMPORT,
|
|
64
|
-
HMR_MODULE_IMPORT
|
|
65
|
-
];
|
|
66
61
|
function getStudioConfig(env) {
|
|
67
62
|
const config = {};
|
|
68
63
|
const LOCAL_DOCUMENT_MODELS = process.env.LOCAL_DOCUMENT_MODELS ?? env?.LOCAL_DOCUMENT_MODELS;
|
|
@@ -79,233 +74,8 @@ function getStudioConfig(env) {
|
|
|
79
74
|
LOCAL_DOCUMENT_EDITORS_PATH
|
|
80
75
|
);
|
|
81
76
|
}
|
|
82
|
-
if (typeof process.env.LOAD_EXTERNAL_PACKAGES !== "undefined") {
|
|
83
|
-
config.LOAD_EXTERNAL_PACKAGES = process.env.LOAD_EXTERNAL_PACKAGES;
|
|
84
|
-
}
|
|
85
77
|
return config;
|
|
86
78
|
}
|
|
87
|
-
function viteIgnoreStaticImport(_importKeys) {
|
|
88
|
-
const importKeys = _importKeys.filter(
|
|
89
|
-
(key) => typeof key === "string" || key instanceof RegExp
|
|
90
|
-
);
|
|
91
|
-
return {
|
|
92
|
-
name: "vite-plugin-ignore-static-import",
|
|
93
|
-
enforce: "pre",
|
|
94
|
-
// vite will still append /@id/ to an external import
|
|
95
|
-
// so this will rewrite the 'vite:import-analysis' prefix
|
|
96
|
-
configResolved(resolvedConfig) {
|
|
97
|
-
const values = importKeys.map(
|
|
98
|
-
(key) => typeof key === "string" ? key : key.source
|
|
99
|
-
);
|
|
100
|
-
const reg = new RegExp(
|
|
101
|
-
`("|')\\/@id\\/(${values.join("|")})(\\/[^"'\\\\]*)?\\1`,
|
|
102
|
-
"g"
|
|
103
|
-
);
|
|
104
|
-
resolvedConfig.plugins.push({
|
|
105
|
-
name: "vite-plugin-ignore-static-import-replace-idprefix",
|
|
106
|
-
transform: (code) => {
|
|
107
|
-
const s = new MagicString(code);
|
|
108
|
-
const matches = code.matchAll(reg);
|
|
109
|
-
let modified = false;
|
|
110
|
-
for (const match of matches) {
|
|
111
|
-
s.overwrite(
|
|
112
|
-
match.index,
|
|
113
|
-
match.index + match[0].length,
|
|
114
|
-
match[0].replace("/@id/", "")
|
|
115
|
-
);
|
|
116
|
-
modified = true;
|
|
117
|
-
}
|
|
118
|
-
if (!modified) return null;
|
|
119
|
-
return {
|
|
120
|
-
code: s.toString(),
|
|
121
|
-
map: s.generateMap({ hires: true })
|
|
122
|
-
// Generate an accurate source map
|
|
123
|
-
};
|
|
124
|
-
}
|
|
125
|
-
});
|
|
126
|
-
},
|
|
127
|
-
// prevents the external import from being transformed to 'node_modules/...'
|
|
128
|
-
resolveId: (id) => {
|
|
129
|
-
if (importKeys.some(
|
|
130
|
-
(key) => typeof key === "string" ? key === id : key.test(id)
|
|
131
|
-
)) {
|
|
132
|
-
return { id, external: true };
|
|
133
|
-
}
|
|
134
|
-
},
|
|
135
|
-
// returns empty string to prevent "Pre-transform error: Failed to load url"
|
|
136
|
-
load(id) {
|
|
137
|
-
if (importKeys.some(
|
|
138
|
-
(key) => typeof key === "string" ? key === id : key.test(id)
|
|
139
|
-
)) {
|
|
140
|
-
return "";
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
};
|
|
144
|
-
}
|
|
145
|
-
function viteReplaceImports(imports) {
|
|
146
|
-
const importKeys = Object.keys(imports);
|
|
147
|
-
return {
|
|
148
|
-
name: "vite-plugin-connect-replace-imports",
|
|
149
|
-
enforce: "pre",
|
|
150
|
-
config(config) {
|
|
151
|
-
const resolve2 = config.resolve ?? {};
|
|
152
|
-
const alias = resolve2.alias;
|
|
153
|
-
let resolvedAlias;
|
|
154
|
-
if (Array.isArray(alias)) {
|
|
155
|
-
const arrayAlias = [...alias];
|
|
156
|
-
arrayAlias.push(
|
|
157
|
-
...Object.entries(imports).map(([find, replacement]) => ({
|
|
158
|
-
find,
|
|
159
|
-
replacement
|
|
160
|
-
}))
|
|
161
|
-
);
|
|
162
|
-
resolvedAlias = arrayAlias;
|
|
163
|
-
} else if (typeof alias === "object") {
|
|
164
|
-
resolvedAlias = {
|
|
165
|
-
...alias,
|
|
166
|
-
...imports
|
|
167
|
-
};
|
|
168
|
-
} else if (typeof alias === "undefined") {
|
|
169
|
-
resolvedAlias = { ...imports };
|
|
170
|
-
} else {
|
|
171
|
-
console.error("resolve.alias was not recognized");
|
|
172
|
-
}
|
|
173
|
-
if (resolvedAlias) {
|
|
174
|
-
resolve2.alias = resolvedAlias;
|
|
175
|
-
config.resolve = resolve2;
|
|
176
|
-
}
|
|
177
|
-
},
|
|
178
|
-
resolveId: (id) => {
|
|
179
|
-
if (importKeys.includes(id)) {
|
|
180
|
-
return {
|
|
181
|
-
id,
|
|
182
|
-
external: true
|
|
183
|
-
};
|
|
184
|
-
}
|
|
185
|
-
}
|
|
186
|
-
};
|
|
187
|
-
}
|
|
188
|
-
|
|
189
|
-
// studio/vite-plugins/external-packages.ts
|
|
190
|
-
import { getConfig } from "@powerhousedao/config/powerhouse";
|
|
191
|
-
import fs2 from "node:fs";
|
|
192
|
-
import { dirname, join as join2 } from "node:path";
|
|
193
|
-
import { normalizePath as normalizePath2 } from "vite";
|
|
194
|
-
var __dirname = join2(process.cwd(), ".ph/");
|
|
195
|
-
var EXTERNAL_PACKAGES_IMPORT = "PH:EXTERNAL_PACKAGES";
|
|
196
|
-
var IMPORT_SCRIPT_FILE = normalizePath2(
|
|
197
|
-
join2(__dirname, "external-packages.js")
|
|
198
|
-
);
|
|
199
|
-
function generateImportScript(packages) {
|
|
200
|
-
const targetDir = dirname(IMPORT_SCRIPT_FILE);
|
|
201
|
-
if (!fs2.existsSync(targetDir)) {
|
|
202
|
-
fs2.mkdirSync(targetDir, { recursive: true });
|
|
203
|
-
}
|
|
204
|
-
const imports = [];
|
|
205
|
-
const moduleNames = [];
|
|
206
|
-
let counter = 0;
|
|
207
|
-
for (const packageName of packages) {
|
|
208
|
-
const moduleName = `module${counter}`;
|
|
209
|
-
moduleNames.push(moduleName);
|
|
210
|
-
imports.push(`import * as ${moduleName} from '${packageName}';`);
|
|
211
|
-
counter++;
|
|
212
|
-
}
|
|
213
|
-
const exportStatement = `export default [${moduleNames.join(", ")}];`;
|
|
214
|
-
const fileContent = `${imports.join("\n")}
|
|
215
|
-
|
|
216
|
-
${exportStatement}`;
|
|
217
|
-
fs2.writeFileSync(IMPORT_SCRIPT_FILE, fileContent);
|
|
218
|
-
return IMPORT_SCRIPT_FILE;
|
|
219
|
-
}
|
|
220
|
-
var viteLoadExternalPackages = (packages, hmr = false) => {
|
|
221
|
-
if (!packages?.length && !hmr) {
|
|
222
|
-
return viteIgnoreStaticImport([EXTERNAL_PACKAGES_IMPORT]);
|
|
223
|
-
}
|
|
224
|
-
generateImportScript(packages ?? []);
|
|
225
|
-
process.env.LOAD_EXTERNAL_PACKAGES = "true";
|
|
226
|
-
return [
|
|
227
|
-
viteReplaceImports({ [EXTERNAL_PACKAGES_IMPORT]: IMPORT_SCRIPT_FILE }),
|
|
228
|
-
hmr && {
|
|
229
|
-
name: "vite-plugin-studio-external-packages",
|
|
230
|
-
handleHotUpdate({ file, server, modules }) {
|
|
231
|
-
if (file.endsWith("powerhouse.config.json")) {
|
|
232
|
-
console.log("External packages file changed, reloading...");
|
|
233
|
-
const config = getConfig();
|
|
234
|
-
generateImportScript(
|
|
235
|
-
config.packages?.map((p) => p.packageName) ?? []
|
|
236
|
-
);
|
|
237
|
-
const module = server.moduleGraph.getModuleById(IMPORT_SCRIPT_FILE);
|
|
238
|
-
if (module) {
|
|
239
|
-
server.moduleGraph.invalidateModule(module);
|
|
240
|
-
return [module].concat(...module.importers.values());
|
|
241
|
-
}
|
|
242
|
-
} else if (file === IMPORT_SCRIPT_FILE) {
|
|
243
|
-
modules.filter((module) => module.id === IMPORT_SCRIPT_FILE).forEach((module) => {
|
|
244
|
-
server.ws.send("studio:external-packages-updated", {
|
|
245
|
-
url: module.url,
|
|
246
|
-
timestamp: module.lastHMRTimestamp
|
|
247
|
-
});
|
|
248
|
-
});
|
|
249
|
-
return modules;
|
|
250
|
-
}
|
|
251
|
-
return modules;
|
|
252
|
-
}
|
|
253
|
-
}
|
|
254
|
-
];
|
|
255
|
-
};
|
|
256
|
-
|
|
257
|
-
// studio/vite-plugins/studio.ts
|
|
258
|
-
import fs3 from "node:fs";
|
|
259
|
-
|
|
260
|
-
// studio/vite-plugins/hmr.ts
|
|
261
|
-
import { exec } from "node:child_process";
|
|
262
|
-
import { dirname as dirname2, join as join3 } from "node:path";
|
|
263
|
-
import { fileURLToPath as fileURLToPath2 } from "node:url";
|
|
264
|
-
import { normalizePath as normalizePath3 } from "vite";
|
|
265
|
-
var __dirname2 = import.meta.dirname || dirname2(fileURLToPath2(import.meta.url));
|
|
266
|
-
var viteLoadHMRModule = () => {
|
|
267
|
-
return [
|
|
268
|
-
viteReplaceImports({
|
|
269
|
-
[HMR_MODULE_IMPORT]: normalizePath3(join3(__dirname2, "hmr.js"))
|
|
270
|
-
}),
|
|
271
|
-
{
|
|
272
|
-
name: "vite-plugin-studio-hmr-module",
|
|
273
|
-
configureServer(server) {
|
|
274
|
-
handleExternalPackageEvents(server);
|
|
275
|
-
}
|
|
276
|
-
}
|
|
277
|
-
];
|
|
278
|
-
};
|
|
279
|
-
var handleExternalPackageEvents = (server) => {
|
|
280
|
-
server.ws.on("studio:add-external-package", (data, client) => {
|
|
281
|
-
const { name } = data;
|
|
282
|
-
const installProcess = exec(
|
|
283
|
-
`ph install ${name}`,
|
|
284
|
-
{
|
|
285
|
-
cwd: process.cwd()
|
|
286
|
-
},
|
|
287
|
-
(error) => {
|
|
288
|
-
if (error) {
|
|
289
|
-
console.error(` [${name}]: ${error.message}`);
|
|
290
|
-
} else {
|
|
291
|
-
server.ws.send("studio:external-package-added", {
|
|
292
|
-
name
|
|
293
|
-
});
|
|
294
|
-
}
|
|
295
|
-
}
|
|
296
|
-
);
|
|
297
|
-
installProcess.stdout?.on("data", (data2) => {
|
|
298
|
-
console.log(` [${name}]: ${data2.toString().trim()}`);
|
|
299
|
-
});
|
|
300
|
-
console.log("Installing external package:", name);
|
|
301
|
-
});
|
|
302
|
-
server.ws.on("studio:remove-external-package", (data, client) => {
|
|
303
|
-
const { name } = data;
|
|
304
|
-
console.log("Removing external package", name);
|
|
305
|
-
});
|
|
306
|
-
};
|
|
307
|
-
|
|
308
|
-
// studio/vite-plugins/studio.ts
|
|
309
79
|
function watchLocalFiles(server, documentModelsPath, editorsPath) {
|
|
310
80
|
const debounce = (callback, delay = 100) => {
|
|
311
81
|
let timeout;
|
|
@@ -335,7 +105,7 @@ function watchLocalFiles(server, documentModelsPath, editorsPath) {
|
|
|
335
105
|
`Watching local document models at '${documentModelsPath}'...`
|
|
336
106
|
);
|
|
337
107
|
try {
|
|
338
|
-
|
|
108
|
+
fs2.watch(
|
|
339
109
|
documentModelsPath,
|
|
340
110
|
{
|
|
341
111
|
recursive: true
|
|
@@ -351,7 +121,7 @@ function watchLocalFiles(server, documentModelsPath, editorsPath) {
|
|
|
351
121
|
if (editorsPath) {
|
|
352
122
|
console.log(`Watching local document editors at '${editorsPath}'...`);
|
|
353
123
|
try {
|
|
354
|
-
|
|
124
|
+
fs2.watch(
|
|
355
125
|
editorsPath,
|
|
356
126
|
{
|
|
357
127
|
recursive: true
|
|
@@ -365,8 +135,58 @@ function watchLocalFiles(server, documentModelsPath, editorsPath) {
|
|
|
365
135
|
}
|
|
366
136
|
}
|
|
367
137
|
}
|
|
138
|
+
function viteIgnoreStaticImport(importKeys) {
|
|
139
|
+
return {
|
|
140
|
+
name: "vite-plugin-ignore-static-import",
|
|
141
|
+
enforce: "pre",
|
|
142
|
+
// vite will still append /@id/ to an external import
|
|
143
|
+
// so this will rewrite the 'vite:import-analysis' prefix
|
|
144
|
+
configResolved(resolvedConfig) {
|
|
145
|
+
const values = importKeys.map(
|
|
146
|
+
(key) => typeof key === "string" ? key : key.source
|
|
147
|
+
);
|
|
148
|
+
const reg = new RegExp(
|
|
149
|
+
`("|')\\/@id\\/(${values.join("|")})(\\/[^"'\\\\]*)?\\1`,
|
|
150
|
+
"g"
|
|
151
|
+
);
|
|
152
|
+
resolvedConfig.plugins.push({
|
|
153
|
+
name: "vite-plugin-ignore-static-import-replace-idprefix",
|
|
154
|
+
transform: (code) => {
|
|
155
|
+
const matches = code.matchAll(reg);
|
|
156
|
+
for (const match of matches) {
|
|
157
|
+
code = code.replaceAll(
|
|
158
|
+
match[0],
|
|
159
|
+
match[0].replace("/@id/", "")
|
|
160
|
+
);
|
|
161
|
+
}
|
|
162
|
+
return code;
|
|
163
|
+
}
|
|
164
|
+
});
|
|
165
|
+
},
|
|
166
|
+
// prevents the external import from being transformed to 'node_modules/...'
|
|
167
|
+
resolveId: (id) => {
|
|
168
|
+
if (importKeys.some(
|
|
169
|
+
(key) => typeof key === "string" ? key === id : key.test(id)
|
|
170
|
+
)) {
|
|
171
|
+
return { id, external: true };
|
|
172
|
+
}
|
|
173
|
+
},
|
|
174
|
+
// returns empty string to prevent "Pre-transform error: Failed to load url"
|
|
175
|
+
load(id) {
|
|
176
|
+
if (importKeys.some(
|
|
177
|
+
(key) => typeof key === "string" ? key === id : key.test(id)
|
|
178
|
+
)) {
|
|
179
|
+
return "";
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
};
|
|
183
|
+
}
|
|
368
184
|
function viteConnectDevStudioPlugin(enabled = false, env) {
|
|
369
185
|
const studioConfig = getStudioConfig(env);
|
|
186
|
+
const importKeys = [
|
|
187
|
+
LOCAL_DOCUMENT_MODELS_IMPORT,
|
|
188
|
+
LOCAL_DOCUMENT_EDITORS_IMPORT
|
|
189
|
+
];
|
|
370
190
|
const localDocumentModelsPath = studioConfig[LOCAL_DOCUMENT_MODELS_IMPORT];
|
|
371
191
|
const localDocumentEditorsPath = studioConfig[LOCAL_DOCUMENT_EDITORS_IMPORT];
|
|
372
192
|
return [
|
|
@@ -376,36 +196,42 @@ function viteConnectDevStudioPlugin(enabled = false, env) {
|
|
|
376
196
|
"@powerhousedao/scalars",
|
|
377
197
|
"@powerhousedao/design-system"
|
|
378
198
|
]),
|
|
379
|
-
localDocumentModelsPath ? viteReplaceImports({
|
|
380
|
-
[LOCAL_DOCUMENT_MODELS_IMPORT]: localDocumentModelsPath
|
|
381
|
-
}) : viteIgnoreStaticImport([LOCAL_DOCUMENT_MODELS_IMPORT]),
|
|
382
|
-
localDocumentEditorsPath ? viteReplaceImports({
|
|
383
|
-
[LOCAL_DOCUMENT_EDITORS_IMPORT]: localDocumentEditorsPath
|
|
384
|
-
}) : viteIgnoreStaticImport([LOCAL_DOCUMENT_EDITORS_IMPORT]),
|
|
385
|
-
enabled ? viteLoadHMRModule() : viteIgnoreStaticImport([HMR_MODULE_IMPORT]),
|
|
386
199
|
{
|
|
387
200
|
name: "vite-plugin-connect-dev-studio",
|
|
388
201
|
enforce: "pre",
|
|
389
202
|
config(config) {
|
|
390
|
-
if (!
|
|
391
|
-
|
|
203
|
+
if (!localDocumentModelsPath && !localDocumentEditorsPath) {
|
|
204
|
+
return;
|
|
392
205
|
}
|
|
393
|
-
|
|
394
|
-
|
|
206
|
+
const resolve2 = config.resolve ?? {};
|
|
207
|
+
const alias = resolve2.alias;
|
|
208
|
+
let resolvedAlias;
|
|
209
|
+
if (Array.isArray(alias)) {
|
|
210
|
+
const arrayAlias = [...alias];
|
|
211
|
+
if (localDocumentModelsPath) {
|
|
212
|
+
arrayAlias.push({
|
|
213
|
+
find: LOCAL_DOCUMENT_MODELS_IMPORT,
|
|
214
|
+
replacement: localDocumentModelsPath
|
|
215
|
+
});
|
|
216
|
+
}
|
|
217
|
+
if (localDocumentEditorsPath) {
|
|
218
|
+
arrayAlias.push({
|
|
219
|
+
find: LOCAL_DOCUMENT_EDITORS_IMPORT,
|
|
220
|
+
replacement: localDocumentEditorsPath
|
|
221
|
+
});
|
|
222
|
+
}
|
|
223
|
+
resolvedAlias = arrayAlias;
|
|
224
|
+
} else if (typeof alias === "object") {
|
|
225
|
+
resolvedAlias = { ...alias, ...studioConfig };
|
|
226
|
+
} else if (typeof alias === "undefined") {
|
|
227
|
+
resolvedAlias = { ...studioConfig };
|
|
228
|
+
} else {
|
|
229
|
+
console.error("resolve.alias was not recognized");
|
|
395
230
|
}
|
|
396
|
-
if (
|
|
397
|
-
|
|
231
|
+
if (resolvedAlias) {
|
|
232
|
+
resolve2.alias = resolvedAlias;
|
|
233
|
+
config.resolve = resolve2;
|
|
398
234
|
}
|
|
399
|
-
const buildStudioExternals = enabled ? [
|
|
400
|
-
externalIds,
|
|
401
|
-
...STUDIO_IMPORTS,
|
|
402
|
-
"@powerhousedao/studio",
|
|
403
|
-
"@powerhousedao/design-system",
|
|
404
|
-
"document-model-libs"
|
|
405
|
-
] : [externalIds, ...STUDIO_IMPORTS];
|
|
406
|
-
config.build.rollupOptions.external.push(
|
|
407
|
-
...buildStudioExternals
|
|
408
|
-
);
|
|
409
235
|
},
|
|
410
236
|
configureServer(server) {
|
|
411
237
|
watchLocalFiles(
|
|
@@ -413,15 +239,73 @@ function viteConnectDevStudioPlugin(enabled = false, env) {
|
|
|
413
239
|
localDocumentModelsPath,
|
|
414
240
|
localDocumentEditorsPath
|
|
415
241
|
);
|
|
242
|
+
},
|
|
243
|
+
resolveId: (id) => {
|
|
244
|
+
if (importKeys.includes(id)) {
|
|
245
|
+
return {
|
|
246
|
+
id,
|
|
247
|
+
external: true
|
|
248
|
+
};
|
|
249
|
+
}
|
|
416
250
|
}
|
|
417
251
|
}
|
|
418
252
|
];
|
|
419
253
|
}
|
|
254
|
+
var viteLoadExternalProjects = (enabled = false, _projectsImportPath) => {
|
|
255
|
+
const moduleName = "EXTERNAL_PROJECTS";
|
|
256
|
+
const importKeys = [moduleName];
|
|
257
|
+
const projectsImportPath = normalizePath(_projectsImportPath || "");
|
|
258
|
+
return [
|
|
259
|
+
{
|
|
260
|
+
name: "vite-load-projects",
|
|
261
|
+
enforce: "pre",
|
|
262
|
+
config(config) {
|
|
263
|
+
if (!enabled) return;
|
|
264
|
+
if (!projectsImportPath || projectsImportPath === "") {
|
|
265
|
+
return;
|
|
266
|
+
}
|
|
267
|
+
const resolve2 = config.resolve ?? {};
|
|
268
|
+
const alias = resolve2.alias;
|
|
269
|
+
let resolvedAlias;
|
|
270
|
+
if (Array.isArray(alias)) {
|
|
271
|
+
const arrayAlias = [...alias];
|
|
272
|
+
arrayAlias.push({
|
|
273
|
+
find: moduleName,
|
|
274
|
+
replacement: projectsImportPath
|
|
275
|
+
});
|
|
276
|
+
resolvedAlias = arrayAlias;
|
|
277
|
+
} else if (typeof alias === "object") {
|
|
278
|
+
resolvedAlias = {
|
|
279
|
+
...alias,
|
|
280
|
+
[moduleName]: projectsImportPath
|
|
281
|
+
};
|
|
282
|
+
} else if (typeof alias === "undefined") {
|
|
283
|
+
resolvedAlias = { [moduleName]: projectsImportPath };
|
|
284
|
+
} else {
|
|
285
|
+
console.error("resolve.alias was not recognized");
|
|
286
|
+
}
|
|
287
|
+
if (resolvedAlias) {
|
|
288
|
+
resolve2.alias = resolvedAlias;
|
|
289
|
+
config.resolve = resolve2;
|
|
290
|
+
}
|
|
291
|
+
console.log("resolvedAlias", config.resolve?.alias);
|
|
292
|
+
},
|
|
293
|
+
resolveId: (id) => {
|
|
294
|
+
if (importKeys.includes(id)) {
|
|
295
|
+
return {
|
|
296
|
+
id,
|
|
297
|
+
external: true
|
|
298
|
+
};
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
];
|
|
303
|
+
};
|
|
420
304
|
|
|
421
305
|
// studio/server.ts
|
|
422
|
-
var studioDirname2 =
|
|
423
|
-
var appPath2 =
|
|
424
|
-
var viteEnvsScript =
|
|
306
|
+
var studioDirname2 = fileURLToPath2(new URL(".", import.meta.url));
|
|
307
|
+
var appPath2 = join2(studioDirname2, "..");
|
|
308
|
+
var viteEnvsScript = join2(appPath2, "vite-envs.sh");
|
|
425
309
|
var projectRoot = process.cwd();
|
|
426
310
|
var logger = createLogger();
|
|
427
311
|
var loggerWarn = logger.warn;
|
|
@@ -447,8 +331,8 @@ function runShellScriptPlugin(scriptPath) {
|
|
|
447
331
|
return {
|
|
448
332
|
name: "vite-plugin-run-shell-script",
|
|
449
333
|
buildStart() {
|
|
450
|
-
if (
|
|
451
|
-
|
|
334
|
+
if (fs3.existsSync(scriptPath)) {
|
|
335
|
+
exec(`sh ${scriptPath}`, (error, stdout, stderr) => {
|
|
452
336
|
if (error) {
|
|
453
337
|
console.error(
|
|
454
338
|
`Error executing the script: ${error.message}`
|
|
@@ -465,14 +349,15 @@ function runShellScriptPlugin(scriptPath) {
|
|
|
465
349
|
};
|
|
466
350
|
}
|
|
467
351
|
async function startServer(options = {}) {
|
|
352
|
+
const { enableExternalProjects = true } = options;
|
|
468
353
|
ensureNodeVersion();
|
|
469
354
|
backupIndexHtml(true);
|
|
470
355
|
const PORT = process.env.PORT ? parseInt(process.env.PORT) : 3e3;
|
|
471
356
|
const HOST = process.env.HOST ? process.env.HOST : "0.0.0.0";
|
|
472
357
|
const OPEN_BROWSER = typeof process.env.OPEN_BROWSER === "string" ? process.env.OPEN_BROWSER === "true" : false;
|
|
473
358
|
const studioConfig = getStudioConfig();
|
|
474
|
-
if (!
|
|
475
|
-
|
|
359
|
+
if (!fs3.existsSync(join2(appPath2, "src"))) {
|
|
360
|
+
fs3.mkdirSync(join2(appPath2, "src"));
|
|
476
361
|
}
|
|
477
362
|
process.env.PH_CONNECT_STUDIO_MODE = "true";
|
|
478
363
|
const config = {
|
|
@@ -488,7 +373,7 @@ async function startServer(options = {}) {
|
|
|
488
373
|
alias: {
|
|
489
374
|
jszip: "jszip/dist/jszip.min.js",
|
|
490
375
|
// Resolve to the node_modules in the project root
|
|
491
|
-
"@powerhousedao/design-system/scalars":
|
|
376
|
+
"@powerhousedao/design-system/scalars": join2(
|
|
492
377
|
projectRoot,
|
|
493
378
|
"node_modules",
|
|
494
379
|
"@powerhousedao",
|
|
@@ -496,32 +381,35 @@ async function startServer(options = {}) {
|
|
|
496
381
|
"dist",
|
|
497
382
|
"scalars"
|
|
498
383
|
),
|
|
499
|
-
"@powerhousedao/design-system":
|
|
384
|
+
"@powerhousedao/design-system": join2(
|
|
500
385
|
projectRoot,
|
|
501
386
|
"node_modules",
|
|
502
387
|
"@powerhousedao",
|
|
503
388
|
"design-system"
|
|
504
389
|
),
|
|
505
|
-
"@powerhousedao/scalars":
|
|
390
|
+
"@powerhousedao/scalars": join2(
|
|
506
391
|
projectRoot,
|
|
507
392
|
"node_modules",
|
|
508
393
|
"@powerhousedao",
|
|
509
394
|
"scalars"
|
|
510
395
|
),
|
|
511
|
-
"document-model-libs":
|
|
396
|
+
"document-model-libs": join2(
|
|
512
397
|
projectRoot,
|
|
513
398
|
"node_modules",
|
|
514
399
|
"document-model-libs"
|
|
515
400
|
),
|
|
516
|
-
react:
|
|
517
|
-
"react-dom":
|
|
401
|
+
react: join2(projectRoot, "node_modules", "react"),
|
|
402
|
+
"react-dom": join2(projectRoot, "node_modules", "react-dom")
|
|
518
403
|
}
|
|
519
404
|
},
|
|
520
405
|
plugins: [
|
|
521
406
|
viteConnectDevStudioPlugin(true),
|
|
522
|
-
|
|
407
|
+
viteLoadExternalProjects(
|
|
408
|
+
enableExternalProjects,
|
|
409
|
+
options.projectsImportPath
|
|
410
|
+
),
|
|
523
411
|
viteEnvs({
|
|
524
|
-
declarationFile:
|
|
412
|
+
declarationFile: join2(studioDirname2, "../.env"),
|
|
525
413
|
computedEnv: studioConfig
|
|
526
414
|
}),
|
|
527
415
|
runShellScriptPlugin(viteEnvsScript),
|
|
@@ -542,16 +430,63 @@ async function startServer(options = {}) {
|
|
|
542
430
|
}
|
|
543
431
|
|
|
544
432
|
// studio/index.ts
|
|
433
|
+
var IMPORT_SCRIPT_FILE = "projects-import.js";
|
|
434
|
+
var projectRoot2 = process.cwd();
|
|
545
435
|
var readJsonFile = (filePath) => {
|
|
546
436
|
try {
|
|
547
437
|
const absolutePath = resolve(filePath);
|
|
548
|
-
const fileContents =
|
|
438
|
+
const fileContents = fs4.readFileSync(absolutePath, "utf-8");
|
|
549
439
|
return JSON.parse(fileContents);
|
|
550
440
|
} catch (error) {
|
|
551
441
|
console.error(`Error reading file: ${filePath}`);
|
|
552
442
|
return null;
|
|
553
443
|
}
|
|
554
444
|
};
|
|
445
|
+
function mapProjects(packages) {
|
|
446
|
+
if (!packages) {
|
|
447
|
+
return [];
|
|
448
|
+
}
|
|
449
|
+
return packages.map((pkg) => ({
|
|
450
|
+
name: pkg.packageName,
|
|
451
|
+
path: join3(
|
|
452
|
+
projectRoot2,
|
|
453
|
+
"node_modules",
|
|
454
|
+
pkg.packageName,
|
|
455
|
+
"dist",
|
|
456
|
+
"es",
|
|
457
|
+
"index.js"
|
|
458
|
+
)
|
|
459
|
+
}));
|
|
460
|
+
}
|
|
461
|
+
function generateImportSctipt(outputPath, projects) {
|
|
462
|
+
const importScriptFilePath = join3(outputPath, IMPORT_SCRIPT_FILE);
|
|
463
|
+
if (!fs4.existsSync(outputPath)) {
|
|
464
|
+
fs4.mkdirSync(outputPath, { recursive: true });
|
|
465
|
+
}
|
|
466
|
+
if (!fs4.existsSync(importScriptFilePath)) {
|
|
467
|
+
fs4.writeFileSync(importScriptFilePath, "");
|
|
468
|
+
}
|
|
469
|
+
const imports = [];
|
|
470
|
+
const moduleNames = [];
|
|
471
|
+
let counter = 0;
|
|
472
|
+
for (const project of projects) {
|
|
473
|
+
if (fs4.existsSync(project.path)) {
|
|
474
|
+
const moduleName = `module${counter}`;
|
|
475
|
+
moduleNames.push(moduleName);
|
|
476
|
+
imports.push(`import * as ${moduleName} from '${project.path}';`);
|
|
477
|
+
counter++;
|
|
478
|
+
} else {
|
|
479
|
+
console.error(
|
|
480
|
+
`Can not import project: ${project.name}, file not found: ${project.path}. Did you build the project or install it?`
|
|
481
|
+
);
|
|
482
|
+
}
|
|
483
|
+
}
|
|
484
|
+
const exportStatement = `export default [${moduleNames.join(", ")}];`;
|
|
485
|
+
const fileContent = `${imports.join("\n")}
|
|
486
|
+
|
|
487
|
+
${exportStatement}`;
|
|
488
|
+
fs4.writeFileSync(importScriptFilePath, fileContent);
|
|
489
|
+
}
|
|
555
490
|
function startConnectStudio(options) {
|
|
556
491
|
const serverOptions = {};
|
|
557
492
|
if (options.port) {
|
|
@@ -566,17 +501,27 @@ function startConnectStudio(options) {
|
|
|
566
501
|
if (options.configFile) {
|
|
567
502
|
const config = readJsonFile(options.configFile);
|
|
568
503
|
if (!config) return;
|
|
569
|
-
const configFileDir =
|
|
504
|
+
const configFileDir = dirname(options.configFile);
|
|
570
505
|
if (config.packages && config.packages.length > 0) {
|
|
571
|
-
|
|
506
|
+
const packages = mapProjects(config.packages);
|
|
507
|
+
generateImportSctipt(configFileDir, packages);
|
|
508
|
+
process.env.LOAD_EXTERNAL_PROJECTS = "true";
|
|
509
|
+
serverOptions.enableExternalProjects = true;
|
|
510
|
+
serverOptions.projectsImportPath = resolve(
|
|
511
|
+
configFileDir,
|
|
512
|
+
IMPORT_SCRIPT_FILE
|
|
513
|
+
);
|
|
514
|
+
} else {
|
|
515
|
+
process.env.LOAD_EXTERNAL_PROJECTS = "false";
|
|
516
|
+
serverOptions.enableExternalProjects = false;
|
|
572
517
|
}
|
|
573
518
|
if (config.documentModelsDir) {
|
|
574
519
|
process.env.LOCAL_DOCUMENT_MODELS = isAbsolute(
|
|
575
520
|
config.documentModelsDir
|
|
576
|
-
) ? config.documentModelsDir :
|
|
521
|
+
) ? config.documentModelsDir : join3(configFileDir, config.documentModelsDir);
|
|
577
522
|
}
|
|
578
523
|
if (config.editorsDir) {
|
|
579
|
-
process.env.LOCAL_DOCUMENT_EDITORS = isAbsolute(config.editorsDir) ? config.editorsDir :
|
|
524
|
+
process.env.LOCAL_DOCUMENT_EDITORS = isAbsolute(config.editorsDir) ? config.editorsDir : join3(configFileDir, config.editorsDir);
|
|
580
525
|
}
|
|
581
526
|
if (config.studio?.port) {
|
|
582
527
|
process.env.PORT = config.studio.port.toString();
|
|
@@ -587,9 +532,19 @@ function startConnectStudio(options) {
|
|
|
587
532
|
if (config.studio?.host) {
|
|
588
533
|
process.env.HOST = config.studio.host;
|
|
589
534
|
}
|
|
535
|
+
} else {
|
|
536
|
+
process.env.LOAD_EXTERNAL_PROJECTS = "false";
|
|
537
|
+
serverOptions.enableExternalProjects = false;
|
|
590
538
|
}
|
|
591
539
|
if (options.packages && options.packages.length > 0) {
|
|
592
|
-
|
|
540
|
+
const packages = mapProjects(options.packages);
|
|
541
|
+
generateImportSctipt(projectRoot2, packages);
|
|
542
|
+
process.env.LOAD_EXTERNAL_PROJECTS = "true";
|
|
543
|
+
serverOptions.enableExternalProjects = true;
|
|
544
|
+
serverOptions.projectsImportPath = resolve(
|
|
545
|
+
projectRoot2,
|
|
546
|
+
IMPORT_SCRIPT_FILE
|
|
547
|
+
);
|
|
593
548
|
}
|
|
594
549
|
if (options.localEditors) {
|
|
595
550
|
process.env.LOCAL_DOCUMENT_EDITORS = options.localEditors;
|
|
@@ -619,6 +574,7 @@ program.command("help").description("Display help information").action(() => {
|
|
|
619
574
|
program.help();
|
|
620
575
|
});
|
|
621
576
|
export {
|
|
577
|
+
generateImportSctipt,
|
|
622
578
|
program,
|
|
623
579
|
startConnectStudio
|
|
624
580
|
};
|