@powerhousedao/connect 1.0.0-dev.197 → 1.0.0-dev.199
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/.env +1 -1
- package/dist/assets/ArrowFilledRight-BXP1j8Cl.js +2 -0
- package/dist/assets/ArrowFilledRight-BXP1j8Cl.js.map +1 -0
- package/dist/assets/ArrowLeft-8ZR_YHAJ.js +2 -0
- package/dist/assets/ArrowLeft-8ZR_YHAJ.js.map +1 -0
- package/dist/assets/ArrowUp-E2jS6Wzt.js +2 -0
- package/dist/assets/ArrowUp-E2jS6Wzt.js.map +1 -0
- package/dist/assets/BarChart-C-E6t7dt.js +2 -0
- package/dist/assets/BarChart-C-E6t7dt.js.map +1 -0
- package/dist/assets/BaseArrowLeft-DtHrkTW4.js +2 -0
- package/dist/assets/BaseArrowLeft-DtHrkTW4.js.map +1 -0
- package/dist/assets/BaseArrowRight-BIwzFHnh.js +2 -0
- package/dist/assets/BaseArrowRight-BIwzFHnh.js.map +1 -0
- package/dist/assets/Braces-3LcexUsR.js +2 -0
- package/dist/assets/Braces-3LcexUsR.js.map +1 -0
- package/dist/assets/Branch-D0CssEh3.js +2 -0
- package/dist/assets/Branch-D0CssEh3.js.map +1 -0
- package/dist/assets/BrickGlobe-CdHw7ZVP.js +2 -0
- package/dist/assets/BrickGlobe-CdHw7ZVP.js.map +1 -0
- package/dist/assets/Briefcase-CV2bgnSj.js +2 -0
- package/dist/assets/Briefcase-CV2bgnSj.js.map +1 -0
- package/dist/assets/Calendar-DuXN-sPt.js +2 -0
- package/dist/assets/Calendar-DuXN-sPt.js.map +1 -0
- package/dist/assets/CalendarTime-Bhjzlgn_-BVlYgNLL.js +2 -0
- package/dist/assets/CalendarTime-Bhjzlgn_-BVlYgNLL.js.map +1 -0
- package/dist/assets/CalendarTime-BowYBiVM.js +2 -0
- package/dist/assets/CalendarTime-BowYBiVM.js.map +1 -0
- package/dist/assets/Caret-r16V7Hcs.js +2 -0
- package/dist/assets/Caret-r16V7Hcs.js.map +1 -0
- package/dist/assets/CaretDown-DljrBfIz.js +2 -0
- package/dist/assets/CaretDown-DljrBfIz.js.map +1 -0
- package/dist/assets/CaretLeft-B_Lzd_Rn.js +2 -0
- package/dist/assets/CaretLeft-B_Lzd_Rn.js.map +1 -0
- package/dist/assets/CaretLeft-Df3E-68c-wke5zKLt.js +2 -0
- package/dist/assets/CaretLeft-Df3E-68c-wke5zKLt.js.map +1 -0
- package/dist/assets/CaretRight-Bbz5nCpg.js +2 -0
- package/dist/assets/CaretRight-Bbz5nCpg.js.map +1 -0
- package/dist/assets/CaretRight-DSVWUSka-Cx0Mkcqa.js +2 -0
- package/dist/assets/CaretRight-DSVWUSka-Cx0Mkcqa.js.map +1 -0
- package/dist/assets/CaretSort-DSgBum1h.js +2 -0
- package/dist/assets/CaretSort-DSgBum1h.js.map +1 -0
- package/dist/assets/Check-CbV9BYHY.js +2 -0
- package/dist/assets/Check-CbV9BYHY.js.map +1 -0
- package/dist/assets/CheckCircle-CX2jIKoF.js +2 -0
- package/dist/assets/CheckCircle-CX2jIKoF.js.map +1 -0
- package/dist/assets/CheckCircleFill-DLK12sW5.js +2 -0
- package/dist/assets/CheckCircleFill-DLK12sW5.js.map +1 -0
- package/dist/assets/Checkmark-DBvUEZAd.js +2 -0
- package/dist/assets/Checkmark-DBvUEZAd.js.map +1 -0
- package/dist/assets/ChevronDown-eUsCPXcB.js +2 -0
- package/dist/assets/ChevronDown-eUsCPXcB.js.map +1 -0
- package/dist/assets/Circle-8dOehHQf.js +2 -0
- package/dist/assets/Circle-8dOehHQf.js.map +1 -0
- package/dist/assets/CircleInfo-D0ktZDko.js +2 -0
- package/dist/assets/CircleInfo-D0ktZDko.js.map +1 -0
- package/dist/assets/Clock-CudavWaE.js +2 -0
- package/dist/assets/Clock-CudavWaE.js.map +1 -0
- package/dist/assets/Clock-DF-XMxha-CudavWaE.js +2 -0
- package/dist/assets/Clock-DF-XMxha-CudavWaE.js.map +1 -0
- package/dist/assets/ClockFill-yWs52y_e.js +2 -0
- package/dist/assets/ClockFill-yWs52y_e.js.map +1 -0
- package/dist/assets/CloudSlash-D18Hl3VW.js +2 -0
- package/dist/assets/CloudSlash-D18Hl3VW.js.map +1 -0
- package/dist/assets/Collapse-BOxZH5-e.js +2 -0
- package/dist/assets/Collapse-BOxZH5-e.js.map +1 -0
- package/dist/assets/Connect-laqJZT3s.js +2 -0
- package/dist/assets/Connect-laqJZT3s.js.map +1 -0
- package/dist/assets/Copy-CkOtWZ6m.js +2 -0
- package/dist/assets/Copy-CkOtWZ6m.js.map +1 -0
- package/dist/assets/Copy-ms9-7m7Y-CkOtWZ6m.js +2 -0
- package/dist/assets/Copy-ms9-7m7Y-CkOtWZ6m.js.map +1 -0
- package/dist/assets/CrossCircle-B6ZawoOx-z5-kkOo3.js +2 -0
- package/dist/assets/CrossCircle-B6ZawoOx-z5-kkOo3.js.map +1 -0
- package/dist/assets/CrossCircle-Bp9diEe9.js +2 -0
- package/dist/assets/CrossCircle-Bp9diEe9.js.map +1 -0
- package/dist/assets/Danger-CLu7nxgz.js +2 -0
- package/dist/assets/Danger-CLu7nxgz.js.map +1 -0
- package/dist/assets/Danger-KM8BZjue-CLu7nxgz.js +2 -0
- package/dist/assets/Danger-KM8BZjue-CLu7nxgz.js.map +1 -0
- package/dist/assets/Discord-CcPWRT8g.js +2 -0
- package/dist/assets/Discord-CcPWRT8g.js.map +1 -0
- package/dist/assets/Drive-CzahDx9j.js +2 -0
- package/dist/assets/Drive-CzahDx9j.js.map +1 -0
- package/dist/assets/Edit-D9GlgGu8.js +2 -0
- package/dist/assets/Edit-D9GlgGu8.js.map +1 -0
- package/dist/assets/Edit-Dr-ZiMSE-D9GlgGu8.js +2 -0
- package/dist/assets/Edit-Dr-ZiMSE-D9GlgGu8.js.map +1 -0
- package/dist/assets/Ellipsis-DWNUJYUI.js +2 -0
- package/dist/assets/Ellipsis-DWNUJYUI.js.map +1 -0
- package/dist/assets/Error-FBAhqFT5.js +2 -0
- package/dist/assets/Error-FBAhqFT5.js.map +1 -0
- package/dist/assets/Exclamation-BGFGsVRw.js +2 -0
- package/dist/assets/Exclamation-BGFGsVRw.js.map +1 -0
- package/dist/assets/File-Ba7ClyaL-BU1g1wjO.js +2 -0
- package/dist/assets/File-Ba7ClyaL-BU1g1wjO.js.map +1 -0
- package/dist/assets/File-DWKl25DR.js +2 -0
- package/dist/assets/File-DWKl25DR.js.map +1 -0
- package/dist/assets/FilesEarmark-BTL53WSf.js +2 -0
- package/dist/assets/FilesEarmark-BTL53WSf.js.map +1 -0
- package/dist/assets/FolderClose-BVMKeKvW.js +2 -0
- package/dist/assets/FolderClose-BVMKeKvW.js.map +1 -0
- package/dist/assets/FolderOpen-DT55_X9N.js +2 -0
- package/dist/assets/FolderOpen-DT55_X9N.js.map +1 -0
- package/dist/assets/FolderPlus-C2G5PVs-.js +2 -0
- package/dist/assets/FolderPlus-C2G5PVs-.js.map +1 -0
- package/dist/assets/Forum-Cfgyizyn.js +2 -0
- package/dist/assets/Forum-Cfgyizyn.js.map +1 -0
- package/dist/assets/Gear-CoQ9O06k.js +2 -0
- package/dist/assets/Gear-CoQ9O06k.js.map +1 -0
- package/dist/assets/Github-CjkZIHCO.js +2 -0
- package/dist/assets/Github-CjkZIHCO.js.map +1 -0
- package/dist/assets/Globe-Dy2otZRk.js +2 -0
- package/dist/assets/Globe-Dy2otZRk.js.map +1 -0
- package/dist/assets/GlobeWww-Ci7aa5CE.js +2 -0
- package/dist/assets/GlobeWww-Ci7aa5CE.js.map +1 -0
- package/dist/assets/Hdd-CP-hFB7d.js +2 -0
- package/dist/assets/Hdd-CP-hFB7d.js.map +1 -0
- package/dist/assets/History-CmOiP5qa.js +2 -0
- package/dist/assets/History-CmOiP5qa.js.map +1 -0
- package/dist/assets/InfoSquare-DbYZrwmg.js +2 -0
- package/dist/assets/InfoSquare-DbYZrwmg.js.map +1 -0
- package/dist/assets/Link-CXIVQOz6.js +2 -0
- package/dist/assets/Link-CXIVQOz6.js.map +1 -0
- package/dist/assets/Linkedin-exhl1yGN.js +2 -0
- package/dist/assets/Linkedin-exhl1yGN.js.map +1 -0
- package/dist/assets/Lock-DWdDRi_O.js +2 -0
- package/dist/assets/Lock-DWdDRi_O.js.map +1 -0
- package/dist/assets/M-ByQIo8bX.js +2 -0
- package/dist/assets/M-ByQIo8bX.js.map +1 -0
- package/dist/assets/PackageManager-B-MUWliB-bW01ZQSP.js +2 -0
- package/dist/assets/PackageManager-B-MUWliB-bW01ZQSP.js.map +1 -0
- package/dist/assets/PackageManager-D6Ia8zHs.js +2 -0
- package/dist/assets/PackageManager-D6Ia8zHs.js.map +1 -0
- package/dist/assets/Pencil-D830iveq.js +2 -0
- package/dist/assets/Pencil-D830iveq.js.map +1 -0
- package/dist/assets/People-B1tewG8c.js +2 -0
- package/dist/assets/People-B1tewG8c.js.map +1 -0
- package/dist/assets/Person-BPRmm67U.js +2 -0
- package/dist/assets/Person-BPRmm67U.js.map +1 -0
- package/dist/assets/Pin-D53eCMAz.js +2 -0
- package/dist/assets/Pin-D53eCMAz.js.map +1 -0
- package/dist/assets/Pin-DF70btCU-D53eCMAz.js +2 -0
- package/dist/assets/Pin-DF70btCU-D53eCMAz.js.map +1 -0
- package/dist/assets/PinFilled-CMXfFW67.js +2 -0
- package/dist/assets/PinFilled-CMXfFW67.js.map +1 -0
- package/dist/assets/PinFilled-vImzS0do-CMXfFW67.js +2 -0
- package/dist/assets/PinFilled-vImzS0do-CMXfFW67.js.map +1 -0
- package/dist/assets/Plus-XUIm1wNw.js +2 -0
- package/dist/assets/Plus-XUIm1wNw.js.map +1 -0
- package/dist/assets/PlusCircle-D1IRYULb.js +2 -0
- package/dist/assets/PlusCircle-D1IRYULb.js.map +1 -0
- package/dist/assets/PowerhouseLogoSmall-DF1uUwIC.js +2 -0
- package/dist/assets/PowerhouseLogoSmall-DF1uUwIC.js.map +1 -0
- package/dist/assets/Project-EsBam9d0.js +2 -0
- package/dist/assets/Project-EsBam9d0.js.map +1 -0
- package/dist/assets/QuestionSquare-B6O9Le7r-CDaw1i6L.js +2 -0
- package/dist/assets/QuestionSquare-B6O9Le7r-CDaw1i6L.js.map +1 -0
- package/dist/assets/QuestionSquare-CDaw1i6L.js +2 -0
- package/dist/assets/QuestionSquare-CDaw1i6L.js.map +1 -0
- package/dist/assets/RedoArrow-DM-fqhEP.js +2 -0
- package/dist/assets/RedoArrow-DM-fqhEP.js.map +1 -0
- package/dist/assets/Reload-6C2CYgrl-DPZbA7yl.js +2 -0
- package/dist/assets/Reload-6C2CYgrl-DPZbA7yl.js.map +1 -0
- package/dist/assets/Reload-DPZbA7yl.js +2 -0
- package/dist/assets/Reload-DPZbA7yl.js.map +1 -0
- package/dist/assets/Renown-CItksi2j.js +2 -0
- package/dist/assets/Renown-CItksi2j.js.map +1 -0
- package/dist/assets/RenownHover-cYQgnwQW.js +2 -0
- package/dist/assets/RenownHover-cYQgnwQW.js.map +1 -0
- package/dist/assets/Ring-BivnmVc5.js +2 -0
- package/dist/assets/Ring-BivnmVc5.js.map +1 -0
- package/dist/assets/Save-BWCZPY82.js +2 -0
- package/dist/assets/Save-BWCZPY82.js.map +1 -0
- package/dist/assets/Search-BiEcSbcf.js +2 -0
- package/dist/assets/Search-BiEcSbcf.js.map +1 -0
- package/dist/assets/Server-cAzmNxsS.js +2 -0
- package/dist/assets/Server-cAzmNxsS.js.map +1 -0
- package/dist/assets/Settings-Cca-sV-_.js +2 -0
- package/dist/assets/Settings-Cca-sV-_.js.map +1 -0
- package/dist/assets/Synced-CjieGKOk.js +2 -0
- package/dist/assets/Synced-CjieGKOk.js.map +1 -0
- package/dist/assets/Syncing-KnDBLSYe.js +2 -0
- package/dist/assets/Syncing-KnDBLSYe.js.map +1 -0
- package/dist/assets/Trash-DIHOD5wQ.js +2 -0
- package/dist/assets/Trash-DIHOD5wQ.js.map +1 -0
- package/dist/assets/TrashFill-CG3humXp.js +2 -0
- package/dist/assets/TrashFill-CG3humXp.js.map +1 -0
- package/dist/assets/TreeViewSlash-BywCsx5o-CUTTXZi-.js +2 -0
- package/dist/assets/TreeViewSlash-BywCsx5o-CUTTXZi-.js.map +1 -0
- package/dist/assets/TreeViewSlash-CKJADIpa.js +2 -0
- package/dist/assets/TreeViewSlash-CKJADIpa.js.map +1 -0
- package/dist/assets/TriangleDown-Boh-WZzH.js +2 -0
- package/dist/assets/TriangleDown-Boh-WZzH.js.map +1 -0
- package/dist/assets/TriangleDown-eCXwUfu8-F-V79AL3.js +2 -0
- package/dist/assets/TriangleDown-eCXwUfu8-F-V79AL3.js.map +1 -0
- package/dist/assets/VariantArrowLeft-Dl1-3L5q.js +2 -0
- package/dist/assets/VariantArrowLeft-Dl1-3L5q.js.map +1 -0
- package/dist/assets/VerticalDots-CCZxgZM8.js +2 -0
- package/dist/assets/VerticalDots-CCZxgZM8.js.map +1 -0
- package/dist/assets/WarningFill-CRRaW3Oz.js +2 -0
- package/dist/assets/WarningFill-CRRaW3Oz.js.map +1 -0
- package/dist/assets/XTwitter-CW6IaHUb.js +2 -0
- package/dist/assets/XTwitter-CW6IaHUb.js.map +1 -0
- package/dist/assets/Xmark-CZ3t0Fap.js +2 -0
- package/dist/assets/Xmark-CZ3t0Fap.js.map +1 -0
- package/dist/assets/XmarkLight-BkhBFy51.js +2 -0
- package/dist/assets/XmarkLight-BkhBFy51.js.map +1 -0
- package/dist/assets/Youtube-h-Dc9pri.js +2 -0
- package/dist/assets/Youtube-h-Dc9pri.js.map +1 -0
- package/dist/assets/app-DvSjLYs-.js +449 -0
- package/dist/assets/app-DvSjLYs-.js.map +1 -0
- package/dist/assets/app-loader-Dn48G7po.js +3 -0
- package/dist/assets/app-loader-Dn48G7po.js.map +1 -0
- package/dist/assets/app-loader-iGtpD3C9.css +1 -0
- package/dist/assets/{browser-Dmr6AWWk.js → browser-BbIPlSaA.js} +2 -2
- package/dist/assets/{browser-Dmr6AWWk.js.map → browser-BbIPlSaA.js.map} +1 -1
- package/dist/assets/browser-camIpcNU.js +7 -0
- package/dist/assets/browser-camIpcNU.js.map +1 -0
- package/dist/assets/ccip-D-9jk-RD.js +2 -0
- package/dist/assets/ccip-D-9jk-RD.js.map +1 -0
- package/dist/assets/content-TOddMACx.js +7 -0
- package/dist/assets/content-TOddMACx.js.map +1 -0
- package/dist/assets/editor-Ba951Cwc.js +346 -0
- package/dist/assets/editor-Ba951Cwc.js.map +1 -0
- package/dist/assets/getEnsName-DiyJcfh8.js +35 -0
- package/dist/assets/getEnsName-DiyJcfh8.js.map +1 -0
- package/dist/assets/index-B38XkIrT.js +16 -0
- package/dist/assets/index-B38XkIrT.js.map +1 -0
- package/dist/assets/index-BBo8moLy.js +3 -0
- package/dist/assets/{index-BP5QkxUa.js.map → index-BBo8moLy.js.map} +1 -1
- package/dist/assets/index-CLu1C_is-jUM7ckQa.js +12 -0
- package/dist/assets/index-CLu1C_is-jUM7ckQa.js.map +1 -0
- package/dist/assets/isAddressEqual-CXyuWVb7.js +2 -0
- package/dist/assets/isAddressEqual-CXyuWVb7.js.map +1 -0
- package/dist/assets/json-CHCvwHN3.js +3 -0
- package/dist/assets/json-CHCvwHN3.js.map +1 -0
- package/dist/assets/{main.xvWSq1ZZ.js → main.BmAe1Lus.js} +2 -2
- package/dist/assets/{main.xvWSq1ZZ.js.map → main.BmAe1Lus.js.map} +1 -1
- package/dist/assets/root-D8qKMM0F.js +17 -0
- package/dist/assets/root-D8qKMM0F.js.map +1 -0
- package/dist/assets/router-B1NCyaFw.js +12 -0
- package/dist/assets/router-B1NCyaFw.js.map +1 -0
- package/dist/assets/useUiNodes-D93b3yJT.js +107 -0
- package/dist/assets/useUiNodes-D93b3yJT.js.map +1 -0
- package/dist/index.html +4 -4
- package/dist/service-worker.js +1 -1
- package/dist/studio/hmr.js +10 -0
- package/dist/studio/index.d.ts +0 -1
- package/dist/studio/index.js +287 -243
- package/dist/studio/server.d.ts +2 -2
- package/dist/studio/vite-plugins/base.d.ts +14 -0
- package/dist/studio/vite-plugins/external-packages.d.ts +5 -0
- package/dist/studio/vite-plugins/hmr.d.ts +2 -0
- package/dist/studio/vite-plugins/studio.d.ts +3 -0
- package/dist/swEnv.js +3 -3
- package/dist/vite-envs.sh +12 -12
- package/package.json +13 -10
- package/dist/assets/app-C-N9ep4R.js +0 -842
- package/dist/assets/app-C-N9ep4R.js.map +0 -1
- package/dist/assets/app-loader-Brlfz2zT.js +0 -3
- package/dist/assets/app-loader-Brlfz2zT.js.map +0 -1
- package/dist/assets/app-loader-D5wPX62N.css +0 -1
- package/dist/assets/browser-DvOVpOMz.js +0 -43
- package/dist/assets/browser-DvOVpOMz.js.map +0 -1
- package/dist/assets/ccip-C4G3RX_v.js +0 -2
- package/dist/assets/ccip-C4G3RX_v.js.map +0 -1
- package/dist/assets/content-B93-efMy.js +0 -6
- package/dist/assets/content-B93-efMy.js.map +0 -1
- package/dist/assets/editor-7taYNObZ.js +0 -2
- package/dist/assets/editor-7taYNObZ.js.map +0 -1
- package/dist/assets/editor-CleaRQR3.js +0 -2
- package/dist/assets/editor-CleaRQR3.js.map +0 -1
- package/dist/assets/editor-CqKuexTp.js +0 -2
- package/dist/assets/editor-CqKuexTp.js.map +0 -1
- package/dist/assets/editors-DGf1QT5j.js +0 -347
- package/dist/assets/editors-DGf1QT5j.js.map +0 -1
- package/dist/assets/index-BP5QkxUa.js +0 -3
- package/dist/assets/index-DaiqEkhm.js +0 -16
- package/dist/assets/index-DaiqEkhm.js.map +0 -1
- package/dist/assets/index-T6Et30Eh-CdVwpIBO.js +0 -12
- package/dist/assets/index-T6Et30Eh-CdVwpIBO.js.map +0 -1
- package/dist/assets/root-a74RhEgM.js +0 -12
- package/dist/assets/root-a74RhEgM.js.map +0 -1
- package/dist/assets/router-BuelYVsv.js +0 -12
- package/dist/assets/router-BuelYVsv.js.map +0 -1
- package/dist/assets/useUiNodes-e_GEEaOb.js +0 -107
- package/dist/assets/useUiNodes-e_GEEaOb.js.map +0 -1
- package/dist/studio/vite-plugin.d.ts +0 -12
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, isAbsolute, join as
|
|
3
|
+
import fs5 from "node:fs";
|
|
4
|
+
import { dirname as dirname3, isAbsolute, join as join5, resolve } from "node:path";
|
|
5
5
|
|
|
6
6
|
// studio/server.ts
|
|
7
7
|
import basicSsl from "@vitejs/plugin-basic-ssl";
|
|
8
|
-
import { exec } from "node:child_process";
|
|
9
|
-
import
|
|
10
|
-
import { join as
|
|
11
|
-
import { fileURLToPath as
|
|
8
|
+
import { exec as exec2 } from "node:child_process";
|
|
9
|
+
import fs4 from "node:fs";
|
|
10
|
+
import { join as join4 } from "node:path";
|
|
11
|
+
import { fileURLToPath as fileURLToPath3 } from "node:url";
|
|
12
12
|
import { createLogger, createServer } from "vite";
|
|
13
13
|
import { viteEnvs } from "vite-envs";
|
|
14
14
|
|
|
@@ -50,14 +50,19 @@ function removeBase64EnvValues() {
|
|
|
50
50
|
});
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
-
// studio/vite-
|
|
54
|
-
import
|
|
53
|
+
// studio/vite-plugins/base.ts
|
|
54
|
+
import MagicString from "magic-string";
|
|
55
55
|
import path from "node:path";
|
|
56
|
-
import {
|
|
57
|
-
|
|
58
|
-
} from "vite";
|
|
56
|
+
import { normalizePath } from "vite";
|
|
57
|
+
var externalIds = /^react(-dom)?(\/.*)?$/;
|
|
59
58
|
var LOCAL_DOCUMENT_MODELS_IMPORT = "LOCAL_DOCUMENT_MODELS";
|
|
60
59
|
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
|
+
];
|
|
61
66
|
function getStudioConfig(env) {
|
|
62
67
|
const config = {};
|
|
63
68
|
const LOCAL_DOCUMENT_MODELS = process.env.LOCAL_DOCUMENT_MODELS ?? env?.LOCAL_DOCUMENT_MODELS;
|
|
@@ -74,8 +79,233 @@ function getStudioConfig(env) {
|
|
|
74
79
|
LOCAL_DOCUMENT_EDITORS_PATH
|
|
75
80
|
);
|
|
76
81
|
}
|
|
82
|
+
if (typeof process.env.LOAD_EXTERNAL_PACKAGES !== "undefined") {
|
|
83
|
+
config.LOAD_EXTERNAL_PACKAGES = process.env.LOAD_EXTERNAL_PACKAGES;
|
|
84
|
+
}
|
|
77
85
|
return config;
|
|
78
86
|
}
|
|
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
|
|
79
309
|
function watchLocalFiles(server, documentModelsPath, editorsPath) {
|
|
80
310
|
const debounce = (callback, delay = 100) => {
|
|
81
311
|
let timeout;
|
|
@@ -105,7 +335,7 @@ function watchLocalFiles(server, documentModelsPath, editorsPath) {
|
|
|
105
335
|
`Watching local document models at '${documentModelsPath}'...`
|
|
106
336
|
);
|
|
107
337
|
try {
|
|
108
|
-
|
|
338
|
+
fs3.watch(
|
|
109
339
|
documentModelsPath,
|
|
110
340
|
{
|
|
111
341
|
recursive: true
|
|
@@ -121,7 +351,7 @@ function watchLocalFiles(server, documentModelsPath, editorsPath) {
|
|
|
121
351
|
if (editorsPath) {
|
|
122
352
|
console.log(`Watching local document editors at '${editorsPath}'...`);
|
|
123
353
|
try {
|
|
124
|
-
|
|
354
|
+
fs3.watch(
|
|
125
355
|
editorsPath,
|
|
126
356
|
{
|
|
127
357
|
recursive: true
|
|
@@ -135,58 +365,8 @@ function watchLocalFiles(server, documentModelsPath, editorsPath) {
|
|
|
135
365
|
}
|
|
136
366
|
}
|
|
137
367
|
}
|
|
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
|
-
}
|
|
184
368
|
function viteConnectDevStudioPlugin(enabled = false, env) {
|
|
185
369
|
const studioConfig = getStudioConfig(env);
|
|
186
|
-
const importKeys = [
|
|
187
|
-
LOCAL_DOCUMENT_MODELS_IMPORT,
|
|
188
|
-
LOCAL_DOCUMENT_EDITORS_IMPORT
|
|
189
|
-
];
|
|
190
370
|
const localDocumentModelsPath = studioConfig[LOCAL_DOCUMENT_MODELS_IMPORT];
|
|
191
371
|
const localDocumentEditorsPath = studioConfig[LOCAL_DOCUMENT_EDITORS_IMPORT];
|
|
192
372
|
return [
|
|
@@ -196,42 +376,36 @@ function viteConnectDevStudioPlugin(enabled = false, env) {
|
|
|
196
376
|
"@powerhousedao/scalars",
|
|
197
377
|
"@powerhousedao/design-system"
|
|
198
378
|
]),
|
|
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]),
|
|
199
386
|
{
|
|
200
387
|
name: "vite-plugin-connect-dev-studio",
|
|
201
388
|
enforce: "pre",
|
|
202
389
|
config(config) {
|
|
203
|
-
if (!
|
|
204
|
-
|
|
390
|
+
if (!config.build) {
|
|
391
|
+
config.build = {};
|
|
205
392
|
}
|
|
206
|
-
|
|
207
|
-
|
|
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");
|
|
393
|
+
if (!config.build.rollupOptions) {
|
|
394
|
+
config.build.rollupOptions = {};
|
|
230
395
|
}
|
|
231
|
-
if (
|
|
232
|
-
|
|
233
|
-
config.resolve = resolve2;
|
|
396
|
+
if (!Array.isArray(config.build.rollupOptions.external)) {
|
|
397
|
+
config.build.rollupOptions.external = [];
|
|
234
398
|
}
|
|
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
|
+
);
|
|
235
409
|
},
|
|
236
410
|
configureServer(server) {
|
|
237
411
|
watchLocalFiles(
|
|
@@ -239,73 +413,15 @@ function viteConnectDevStudioPlugin(enabled = false, env) {
|
|
|
239
413
|
localDocumentModelsPath,
|
|
240
414
|
localDocumentEditorsPath
|
|
241
415
|
);
|
|
242
|
-
},
|
|
243
|
-
resolveId: (id) => {
|
|
244
|
-
if (importKeys.includes(id)) {
|
|
245
|
-
return {
|
|
246
|
-
id,
|
|
247
|
-
external: true
|
|
248
|
-
};
|
|
249
|
-
}
|
|
250
416
|
}
|
|
251
417
|
}
|
|
252
418
|
];
|
|
253
419
|
}
|
|
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
|
-
};
|
|
304
420
|
|
|
305
421
|
// studio/server.ts
|
|
306
|
-
var studioDirname2 =
|
|
307
|
-
var appPath2 =
|
|
308
|
-
var viteEnvsScript =
|
|
422
|
+
var studioDirname2 = fileURLToPath3(new URL(".", import.meta.url));
|
|
423
|
+
var appPath2 = join4(studioDirname2, "..");
|
|
424
|
+
var viteEnvsScript = join4(appPath2, "vite-envs.sh");
|
|
309
425
|
var projectRoot = process.cwd();
|
|
310
426
|
var logger = createLogger();
|
|
311
427
|
var loggerWarn = logger.warn;
|
|
@@ -331,8 +447,8 @@ function runShellScriptPlugin(scriptPath) {
|
|
|
331
447
|
return {
|
|
332
448
|
name: "vite-plugin-run-shell-script",
|
|
333
449
|
buildStart() {
|
|
334
|
-
if (
|
|
335
|
-
|
|
450
|
+
if (fs4.existsSync(scriptPath)) {
|
|
451
|
+
exec2(`sh ${scriptPath}`, (error, stdout, stderr) => {
|
|
336
452
|
if (error) {
|
|
337
453
|
console.error(
|
|
338
454
|
`Error executing the script: ${error.message}`
|
|
@@ -349,15 +465,14 @@ function runShellScriptPlugin(scriptPath) {
|
|
|
349
465
|
};
|
|
350
466
|
}
|
|
351
467
|
async function startServer(options = {}) {
|
|
352
|
-
const { enableExternalProjects = true } = options;
|
|
353
468
|
ensureNodeVersion();
|
|
354
469
|
backupIndexHtml(true);
|
|
355
470
|
const PORT = process.env.PORT ? parseInt(process.env.PORT) : 3e3;
|
|
356
471
|
const HOST = process.env.HOST ? process.env.HOST : "0.0.0.0";
|
|
357
472
|
const OPEN_BROWSER = typeof process.env.OPEN_BROWSER === "string" ? process.env.OPEN_BROWSER === "true" : false;
|
|
358
473
|
const studioConfig = getStudioConfig();
|
|
359
|
-
if (!
|
|
360
|
-
|
|
474
|
+
if (!fs4.existsSync(join4(appPath2, "src"))) {
|
|
475
|
+
fs4.mkdirSync(join4(appPath2, "src"));
|
|
361
476
|
}
|
|
362
477
|
process.env.PH_CONNECT_STUDIO_MODE = "true";
|
|
363
478
|
const config = {
|
|
@@ -373,7 +488,7 @@ async function startServer(options = {}) {
|
|
|
373
488
|
alias: {
|
|
374
489
|
jszip: "jszip/dist/jszip.min.js",
|
|
375
490
|
// Resolve to the node_modules in the project root
|
|
376
|
-
"@powerhousedao/design-system/scalars":
|
|
491
|
+
"@powerhousedao/design-system/scalars": join4(
|
|
377
492
|
projectRoot,
|
|
378
493
|
"node_modules",
|
|
379
494
|
"@powerhousedao",
|
|
@@ -381,35 +496,32 @@ async function startServer(options = {}) {
|
|
|
381
496
|
"dist",
|
|
382
497
|
"scalars"
|
|
383
498
|
),
|
|
384
|
-
"@powerhousedao/design-system":
|
|
499
|
+
"@powerhousedao/design-system": join4(
|
|
385
500
|
projectRoot,
|
|
386
501
|
"node_modules",
|
|
387
502
|
"@powerhousedao",
|
|
388
503
|
"design-system"
|
|
389
504
|
),
|
|
390
|
-
"@powerhousedao/scalars":
|
|
505
|
+
"@powerhousedao/scalars": join4(
|
|
391
506
|
projectRoot,
|
|
392
507
|
"node_modules",
|
|
393
508
|
"@powerhousedao",
|
|
394
509
|
"scalars"
|
|
395
510
|
),
|
|
396
|
-
"document-model-libs":
|
|
511
|
+
"document-model-libs": join4(
|
|
397
512
|
projectRoot,
|
|
398
513
|
"node_modules",
|
|
399
514
|
"document-model-libs"
|
|
400
515
|
),
|
|
401
|
-
react:
|
|
402
|
-
"react-dom":
|
|
516
|
+
react: join4(projectRoot, "node_modules", "react"),
|
|
517
|
+
"react-dom": join4(projectRoot, "node_modules", "react-dom")
|
|
403
518
|
}
|
|
404
519
|
},
|
|
405
520
|
plugins: [
|
|
406
521
|
viteConnectDevStudioPlugin(true),
|
|
407
|
-
|
|
408
|
-
enableExternalProjects,
|
|
409
|
-
options.projectsImportPath
|
|
410
|
-
),
|
|
522
|
+
viteLoadExternalPackages(options.packages, true),
|
|
411
523
|
viteEnvs({
|
|
412
|
-
declarationFile:
|
|
524
|
+
declarationFile: join4(studioDirname2, "../.env"),
|
|
413
525
|
computedEnv: studioConfig
|
|
414
526
|
}),
|
|
415
527
|
runShellScriptPlugin(viteEnvsScript),
|
|
@@ -430,63 +542,16 @@ async function startServer(options = {}) {
|
|
|
430
542
|
}
|
|
431
543
|
|
|
432
544
|
// studio/index.ts
|
|
433
|
-
var IMPORT_SCRIPT_FILE = "projects-import.js";
|
|
434
|
-
var projectRoot2 = process.cwd();
|
|
435
545
|
var readJsonFile = (filePath) => {
|
|
436
546
|
try {
|
|
437
547
|
const absolutePath = resolve(filePath);
|
|
438
|
-
const fileContents =
|
|
548
|
+
const fileContents = fs5.readFileSync(absolutePath, "utf-8");
|
|
439
549
|
return JSON.parse(fileContents);
|
|
440
550
|
} catch (error) {
|
|
441
551
|
console.error(`Error reading file: ${filePath}`);
|
|
442
552
|
return null;
|
|
443
553
|
}
|
|
444
554
|
};
|
|
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
|
-
}
|
|
490
555
|
function startConnectStudio(options) {
|
|
491
556
|
const serverOptions = {};
|
|
492
557
|
if (options.port) {
|
|
@@ -501,27 +566,17 @@ function startConnectStudio(options) {
|
|
|
501
566
|
if (options.configFile) {
|
|
502
567
|
const config = readJsonFile(options.configFile);
|
|
503
568
|
if (!config) return;
|
|
504
|
-
const configFileDir =
|
|
569
|
+
const configFileDir = dirname3(options.configFile);
|
|
505
570
|
if (config.packages && config.packages.length > 0) {
|
|
506
|
-
|
|
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;
|
|
571
|
+
serverOptions.packages = config.packages.map((p) => p.packageName);
|
|
517
572
|
}
|
|
518
573
|
if (config.documentModelsDir) {
|
|
519
574
|
process.env.LOCAL_DOCUMENT_MODELS = isAbsolute(
|
|
520
575
|
config.documentModelsDir
|
|
521
|
-
) ? config.documentModelsDir :
|
|
576
|
+
) ? config.documentModelsDir : join5(configFileDir, config.documentModelsDir);
|
|
522
577
|
}
|
|
523
578
|
if (config.editorsDir) {
|
|
524
|
-
process.env.LOCAL_DOCUMENT_EDITORS = isAbsolute(config.editorsDir) ? config.editorsDir :
|
|
579
|
+
process.env.LOCAL_DOCUMENT_EDITORS = isAbsolute(config.editorsDir) ? config.editorsDir : join5(configFileDir, config.editorsDir);
|
|
525
580
|
}
|
|
526
581
|
if (config.studio?.port) {
|
|
527
582
|
process.env.PORT = config.studio.port.toString();
|
|
@@ -532,19 +587,9 @@ function startConnectStudio(options) {
|
|
|
532
587
|
if (config.studio?.host) {
|
|
533
588
|
process.env.HOST = config.studio.host;
|
|
534
589
|
}
|
|
535
|
-
} else {
|
|
536
|
-
process.env.LOAD_EXTERNAL_PROJECTS = "false";
|
|
537
|
-
serverOptions.enableExternalProjects = false;
|
|
538
590
|
}
|
|
539
591
|
if (options.packages && options.packages.length > 0) {
|
|
540
|
-
|
|
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
|
-
);
|
|
592
|
+
serverOptions.packages = options.packages.map((p) => p.packageName);
|
|
548
593
|
}
|
|
549
594
|
if (options.localEditors) {
|
|
550
595
|
process.env.LOCAL_DOCUMENT_EDITORS = options.localEditors;
|
|
@@ -574,7 +619,6 @@ program.command("help").description("Display help information").action(() => {
|
|
|
574
619
|
program.help();
|
|
575
620
|
});
|
|
576
621
|
export {
|
|
577
|
-
generateImportSctipt,
|
|
578
622
|
program,
|
|
579
623
|
startConnectStudio
|
|
580
624
|
};
|