@powerhousedao/builder-tools 6.0.0-dev.7 → 6.0.0-dev.70

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (342) hide show
  1. package/dist/bundle.d.ts +2 -0
  2. package/dist/bundle.d.ts.map +1 -0
  3. package/dist/connect-utils/helpers.d.ts +1 -1
  4. package/dist/connect-utils/helpers.d.ts.map +1 -1
  5. package/dist/connect-utils/index.d.ts +0 -1
  6. package/dist/connect-utils/index.d.ts.map +1 -1
  7. package/dist/connect-utils/types.d.ts +0 -1
  8. package/dist/connect-utils/types.d.ts.map +1 -1
  9. package/dist/connect-utils/vite-config.d.ts.map +1 -1
  10. package/dist/index.d.ts +0 -2
  11. package/dist/index.d.ts.map +1 -1
  12. package/dist/index.js +111942 -4
  13. package/dist/tsconfig.tsbuildinfo +1 -1
  14. package/package.json +20 -114
  15. package/dist/browser.d.ts +0 -2
  16. package/dist/browser.d.ts.map +0 -1
  17. package/dist/browser.js +0 -2
  18. package/dist/browser.js.map +0 -1
  19. package/dist/connect-build/build.d.ts +0 -6
  20. package/dist/connect-build/build.d.ts.map +0 -1
  21. package/dist/connect-build/build.js +0 -54
  22. package/dist/connect-build/build.js.map +0 -1
  23. package/dist/connect-build/constants.d.ts +0 -11
  24. package/dist/connect-build/constants.d.ts.map +0 -1
  25. package/dist/connect-build/constants.js +0 -11
  26. package/dist/connect-build/constants.js.map +0 -1
  27. package/dist/connect-build/helpers.d.ts +0 -37
  28. package/dist/connect-build/helpers.d.ts.map +0 -1
  29. package/dist/connect-build/helpers.js +0 -111
  30. package/dist/connect-build/helpers.js.map +0 -1
  31. package/dist/connect-build/index.d.ts +0 -5
  32. package/dist/connect-build/index.d.ts.map +0 -1
  33. package/dist/connect-build/index.js +0 -4
  34. package/dist/connect-build/index.js.map +0 -1
  35. package/dist/connect-build/preview.d.ts +0 -3
  36. package/dist/connect-build/preview.d.ts.map +0 -1
  37. package/dist/connect-build/preview.js +0 -19
  38. package/dist/connect-build/preview.js.map +0 -1
  39. package/dist/connect-build/types.d.ts +0 -27
  40. package/dist/connect-build/types.d.ts.map +0 -1
  41. package/dist/connect-build/types.js +0 -2
  42. package/dist/connect-build/types.js.map +0 -1
  43. package/dist/connect-studio/index.d.ts +0 -3
  44. package/dist/connect-studio/index.d.ts.map +0 -1
  45. package/dist/connect-studio/index.js +0 -2
  46. package/dist/connect-studio/index.js.map +0 -1
  47. package/dist/connect-studio/server.d.ts +0 -3
  48. package/dist/connect-studio/server.d.ts.map +0 -1
  49. package/dist/connect-studio/server.js +0 -234
  50. package/dist/connect-studio/server.js.map +0 -1
  51. package/dist/connect-studio/studio.d.ts +0 -3
  52. package/dist/connect-studio/studio.d.ts.map +0 -1
  53. package/dist/connect-studio/studio.js +0 -66
  54. package/dist/connect-studio/studio.js.map +0 -1
  55. package/dist/connect-studio/types.d.ts +0 -28
  56. package/dist/connect-studio/types.d.ts.map +0 -1
  57. package/dist/connect-studio/types.js +0 -2
  58. package/dist/connect-studio/types.js.map +0 -1
  59. package/dist/connect-utils/build.js +0 -21
  60. package/dist/connect-utils/build.js.map +0 -1
  61. package/dist/connect-utils/constants.js +0 -5
  62. package/dist/connect-utils/constants.js.map +0 -1
  63. package/dist/connect-utils/env-config.d.ts +0 -844
  64. package/dist/connect-utils/env-config.d.ts.map +0 -1
  65. package/dist/connect-utils/env-config.js +0 -518
  66. package/dist/connect-utils/env-config.js.map +0 -1
  67. package/dist/connect-utils/helpers.js +0 -265
  68. package/dist/connect-utils/helpers.js.map +0 -1
  69. package/dist/connect-utils/index.js +0 -16
  70. package/dist/connect-utils/index.js.map +0 -1
  71. package/dist/connect-utils/preview.js +0 -33
  72. package/dist/connect-utils/preview.js.map +0 -1
  73. package/dist/connect-utils/studio.js +0 -30
  74. package/dist/connect-utils/studio.js.map +0 -1
  75. package/dist/connect-utils/types.js +0 -2
  76. package/dist/connect-utils/types.js.map +0 -1
  77. package/dist/connect-utils/vite-config.js +0 -267
  78. package/dist/connect-utils/vite-config.js.map +0 -1
  79. package/dist/connect-utils/vite-plugins/base.js +0 -130
  80. package/dist/connect-utils/vite-plugins/base.js.map +0 -1
  81. package/dist/connect-utils/vite-plugins/document-models-hmr.js +0 -62
  82. package/dist/connect-utils/vite-plugins/document-models-hmr.js.map +0 -1
  83. package/dist/connect-utils/vite-plugins/editors-hmr.js +0 -61
  84. package/dist/connect-utils/vite-plugins/editors-hmr.js.map +0 -1
  85. package/dist/connect-utils/vite-plugins/external-packages.js +0 -127
  86. package/dist/connect-utils/vite-plugins/external-packages.js.map +0 -1
  87. package/dist/connect-utils/vite-plugins/importmap.js +0 -243
  88. package/dist/connect-utils/vite-plugins/importmap.js.map +0 -1
  89. package/dist/connect-utils/vite-plugins/ph-external-packages.js +0 -88
  90. package/dist/connect-utils/vite-plugins/ph-external-packages.js.map +0 -1
  91. package/dist/connect-utils/vite-plugins/studio.js +0 -33
  92. package/dist/connect-utils/vite-plugins/studio.js.map +0 -1
  93. package/dist/document-model-editor/components/button.d.ts +0 -2
  94. package/dist/document-model-editor/components/button.d.ts.map +0 -1
  95. package/dist/document-model-editor/components/button.js +0 -8
  96. package/dist/document-model-editor/components/button.js.map +0 -1
  97. package/dist/document-model-editor/components/code-editors/constants.d.ts +0 -3
  98. package/dist/document-model-editor/components/code-editors/constants.d.ts.map +0 -1
  99. package/dist/document-model-editor/components/code-editors/constants.js +0 -38
  100. package/dist/document-model-editor/components/code-editors/constants.js.map +0 -1
  101. package/dist/document-model-editor/components/code-editors/factories.d.ts +0 -4
  102. package/dist/document-model-editor/components/code-editors/factories.d.ts.map +0 -1
  103. package/dist/document-model-editor/components/code-editors/factories.js +0 -47
  104. package/dist/document-model-editor/components/code-editors/factories.js.map +0 -1
  105. package/dist/document-model-editor/components/code-editors/graphql-editor.d.ts +0 -10
  106. package/dist/document-model-editor/components/code-editors/graphql-editor.d.ts.map +0 -1
  107. package/dist/document-model-editor/components/code-editors/graphql-editor.js +0 -73
  108. package/dist/document-model-editor/components/code-editors/graphql-editor.js.map +0 -1
  109. package/dist/document-model-editor/components/code-editors/hooks.d.ts +0 -23
  110. package/dist/document-model-editor/components/code-editors/hooks.d.ts.map +0 -1
  111. package/dist/document-model-editor/components/code-editors/hooks.js +0 -59
  112. package/dist/document-model-editor/components/code-editors/hooks.js.map +0 -1
  113. package/dist/document-model-editor/components/code-editors/json-editor.d.ts +0 -8
  114. package/dist/document-model-editor/components/code-editors/json-editor.d.ts.map +0 -1
  115. package/dist/document-model-editor/components/code-editors/json-editor.js +0 -47
  116. package/dist/document-model-editor/components/code-editors/json-editor.js.map +0 -1
  117. package/dist/document-model-editor/components/code-editors/linting.d.ts +0 -6
  118. package/dist/document-model-editor/components/code-editors/linting.d.ts.map +0 -1
  119. package/dist/document-model-editor/components/code-editors/linting.js +0 -59
  120. package/dist/document-model-editor/components/code-editors/linting.js.map +0 -1
  121. package/dist/document-model-editor/components/divider.d.ts +0 -8
  122. package/dist/document-model-editor/components/divider.d.ts.map +0 -1
  123. package/dist/document-model-editor/components/divider.js +0 -22
  124. package/dist/document-model-editor/components/divider.js.map +0 -1
  125. package/dist/document-model-editor/components/errors.d.ts +0 -6
  126. package/dist/document-model-editor/components/errors.d.ts.map +0 -1
  127. package/dist/document-model-editor/components/errors.js +0 -5
  128. package/dist/document-model-editor/components/errors.js.map +0 -1
  129. package/dist/document-model-editor/components/form.d.ts +0 -12
  130. package/dist/document-model-editor/components/form.d.ts.map +0 -1
  131. package/dist/document-model-editor/components/form.js +0 -43
  132. package/dist/document-model-editor/components/form.js.map +0 -1
  133. package/dist/document-model-editor/components/input.d.ts +0 -6
  134. package/dist/document-model-editor/components/input.d.ts.map +0 -1
  135. package/dist/document-model-editor/components/input.js +0 -9
  136. package/dist/document-model-editor/components/input.js.map +0 -1
  137. package/dist/document-model-editor/components/label.d.ts +0 -6
  138. package/dist/document-model-editor/components/label.d.ts.map +0 -1
  139. package/dist/document-model-editor/components/label.js +0 -10
  140. package/dist/document-model-editor/components/label.js.map +0 -1
  141. package/dist/document-model-editor/components/model-metadata-form.d.ts +0 -31
  142. package/dist/document-model-editor/components/model-metadata-form.d.ts.map +0 -1
  143. package/dist/document-model-editor/components/model-metadata-form.js +0 -70
  144. package/dist/document-model-editor/components/model-metadata-form.js.map +0 -1
  145. package/dist/document-model-editor/components/module-form.d.ts +0 -10
  146. package/dist/document-model-editor/components/module-form.d.ts.map +0 -1
  147. package/dist/document-model-editor/components/module-form.js +0 -22
  148. package/dist/document-model-editor/components/module-form.js.map +0 -1
  149. package/dist/document-model-editor/components/module.d.ts +0 -22
  150. package/dist/document-model-editor/components/module.d.ts.map +0 -1
  151. package/dist/document-model-editor/components/module.js +0 -10
  152. package/dist/document-model-editor/components/module.js.map +0 -1
  153. package/dist/document-model-editor/components/modules.d.ts +0 -20
  154. package/dist/document-model-editor/components/modules.d.ts.map +0 -1
  155. package/dist/document-model-editor/components/modules.js +0 -17
  156. package/dist/document-model-editor/components/modules.js.map +0 -1
  157. package/dist/document-model-editor/components/operation-description-form.d.ts +0 -9
  158. package/dist/document-model-editor/components/operation-description-form.d.ts.map +0 -1
  159. package/dist/document-model-editor/components/operation-description-form.js +0 -13
  160. package/dist/document-model-editor/components/operation-description-form.js.map +0 -1
  161. package/dist/document-model-editor/components/operation-error-form.d.ts +0 -13
  162. package/dist/document-model-editor/components/operation-error-form.d.ts.map +0 -1
  163. package/dist/document-model-editor/components/operation-error-form.js +0 -40
  164. package/dist/document-model-editor/components/operation-error-form.js.map +0 -1
  165. package/dist/document-model-editor/components/operation-errors.d.ts +0 -10
  166. package/dist/document-model-editor/components/operation-errors.d.ts.map +0 -1
  167. package/dist/document-model-editor/components/operation-errors.js +0 -17
  168. package/dist/document-model-editor/components/operation-errors.js.map +0 -1
  169. package/dist/document-model-editor/components/operation-form.d.ts +0 -13
  170. package/dist/document-model-editor/components/operation-form.d.ts.map +0 -1
  171. package/dist/document-model-editor/components/operation-form.js +0 -37
  172. package/dist/document-model-editor/components/operation-form.js.map +0 -1
  173. package/dist/document-model-editor/components/operation.d.ts +0 -23
  174. package/dist/document-model-editor/components/operation.d.ts.map +0 -1
  175. package/dist/document-model-editor/components/operation.js +0 -25
  176. package/dist/document-model-editor/components/operation.js.map +0 -1
  177. package/dist/document-model-editor/components/operations.d.ts +0 -18
  178. package/dist/document-model-editor/components/operations.d.ts.map +0 -1
  179. package/dist/document-model-editor/components/operations.js +0 -20
  180. package/dist/document-model-editor/components/operations.js.map +0 -1
  181. package/dist/document-model-editor/components/state-error.d.ts +0 -5
  182. package/dist/document-model-editor/components/state-error.d.ts.map +0 -1
  183. package/dist/document-model-editor/components/state-error.js +0 -21
  184. package/dist/document-model-editor/components/state-error.js.map +0 -1
  185. package/dist/document-model-editor/components/state-schemas.d.ts +0 -15
  186. package/dist/document-model-editor/components/state-schemas.d.ts.map +0 -1
  187. package/dist/document-model-editor/components/state-schemas.js +0 -81
  188. package/dist/document-model-editor/components/state-schemas.js.map +0 -1
  189. package/dist/document-model-editor/components/tabs.d.ts +0 -8
  190. package/dist/document-model-editor/components/tabs.d.ts.map +0 -1
  191. package/dist/document-model-editor/components/tabs.js +0 -13
  192. package/dist/document-model-editor/components/tabs.js.map +0 -1
  193. package/dist/document-model-editor/components/text-area.d.ts +0 -9
  194. package/dist/document-model-editor/components/text-area.d.ts.map +0 -1
  195. package/dist/document-model-editor/components/text-area.js +0 -27
  196. package/dist/document-model-editor/components/text-area.js.map +0 -1
  197. package/dist/document-model-editor/components/text-field.d.ts +0 -21
  198. package/dist/document-model-editor/components/text-field.d.ts.map +0 -1
  199. package/dist/document-model-editor/components/text-field.js +0 -80
  200. package/dist/document-model-editor/components/text-field.js.map +0 -1
  201. package/dist/document-model-editor/config.d.ts +0 -3
  202. package/dist/document-model-editor/config.d.ts.map +0 -1
  203. package/dist/document-model-editor/config.js +0 -4
  204. package/dist/document-model-editor/config.js.map +0 -1
  205. package/dist/document-model-editor/constants/documents.d.ts +0 -13
  206. package/dist/document-model-editor/constants/documents.d.ts.map +0 -1
  207. package/dist/document-model-editor/constants/documents.js +0 -18
  208. package/dist/document-model-editor/constants/documents.js.map +0 -1
  209. package/dist/document-model-editor/constants/graphql-kinds.d.ts +0 -9
  210. package/dist/document-model-editor/constants/graphql-kinds.d.ts.map +0 -1
  211. package/dist/document-model-editor/constants/graphql-kinds.js +0 -13
  212. package/dist/document-model-editor/constants/graphql-kinds.js.map +0 -1
  213. package/dist/document-model-editor/context/form-context.d.ts +0 -11
  214. package/dist/document-model-editor/context/form-context.d.ts.map +0 -1
  215. package/dist/document-model-editor/context/form-context.js +0 -4
  216. package/dist/document-model-editor/context/form-context.js.map +0 -1
  217. package/dist/document-model-editor/context/schema-context.d.ts +0 -18
  218. package/dist/document-model-editor/context/schema-context.d.ts.map +0 -1
  219. package/dist/document-model-editor/context/schema-context.js +0 -129
  220. package/dist/document-model-editor/context/schema-context.js.map +0 -1
  221. package/dist/document-model-editor/document-model-editor.stories.d.ts +0 -8
  222. package/dist/document-model-editor/document-model-editor.stories.d.ts.map +0 -1
  223. package/dist/document-model-editor/document-model-editor.stories.js +0 -267
  224. package/dist/document-model-editor/document-model-editor.stories.js.map +0 -1
  225. package/dist/document-model-editor/editor.d.ts +0 -2
  226. package/dist/document-model-editor/editor.d.ts.map +0 -1
  227. package/dist/document-model-editor/editor.js +0 -217
  228. package/dist/document-model-editor/editor.js.map +0 -1
  229. package/dist/document-model-editor/hooks/index.d.ts +0 -3
  230. package/dist/document-model-editor/hooks/index.d.ts.map +0 -1
  231. package/dist/document-model-editor/hooks/index.js +0 -3
  232. package/dist/document-model-editor/hooks/index.js.map +0 -1
  233. package/dist/document-model-editor/hooks/useDocumentModelDocument.d.ts +0 -5
  234. package/dist/document-model-editor/hooks/useDocumentModelDocument.d.ts.map +0 -1
  235. package/dist/document-model-editor/hooks/useDocumentModelDocument.js +0 -8
  236. package/dist/document-model-editor/hooks/useDocumentModelDocument.js.map +0 -1
  237. package/dist/document-model-editor/hooks/useFormField.d.ts +0 -13
  238. package/dist/document-model-editor/hooks/useFormField.d.ts.map +0 -1
  239. package/dist/document-model-editor/hooks/useFormField.js +0 -22
  240. package/dist/document-model-editor/hooks/useFormField.js.map +0 -1
  241. package/dist/document-model-editor/index.d.ts +0 -2
  242. package/dist/document-model-editor/index.d.ts.map +0 -1
  243. package/dist/document-model-editor/index.js +0 -2
  244. package/dist/document-model-editor/index.js.map +0 -1
  245. package/dist/document-model-editor/module.d.ts +0 -3
  246. package/dist/document-model-editor/module.d.ts.map +0 -1
  247. package/dist/document-model-editor/module.js +0 -10
  248. package/dist/document-model-editor/module.js.map +0 -1
  249. package/dist/document-model-editor/schemas/inputs.d.ts +0 -25
  250. package/dist/document-model-editor/schemas/inputs.d.ts.map +0 -1
  251. package/dist/document-model-editor/schemas/inputs.js +0 -71
  252. package/dist/document-model-editor/schemas/inputs.js.map +0 -1
  253. package/dist/document-model-editor/schemas/utils.d.ts +0 -3
  254. package/dist/document-model-editor/schemas/utils.d.ts.map +0 -1
  255. package/dist/document-model-editor/schemas/utils.js +0 -3
  256. package/dist/document-model-editor/schemas/utils.js.map +0 -1
  257. package/dist/document-model-editor/types/documents.d.ts +0 -26
  258. package/dist/document-model-editor/types/documents.d.ts.map +0 -1
  259. package/dist/document-model-editor/types/documents.js +0 -2
  260. package/dist/document-model-editor/types/documents.js.map +0 -1
  261. package/dist/document-model-editor/types.d.ts +0 -2
  262. package/dist/document-model-editor/types.d.ts.map +0 -1
  263. package/dist/document-model-editor/types.js +0 -2
  264. package/dist/document-model-editor/types.js.map +0 -1
  265. package/dist/document-model-editor/utils/helpers.d.ts +0 -112
  266. package/dist/document-model-editor/utils/helpers.d.ts.map +0 -1
  267. package/dist/document-model-editor/utils/helpers.js +0 -920
  268. package/dist/document-model-editor/utils/helpers.js.map +0 -1
  269. package/dist/document-model-editor/utils/linting.d.ts +0 -7
  270. package/dist/document-model-editor/utils/linting.d.ts.map +0 -1
  271. package/dist/document-model-editor/utils/linting.js +0 -49
  272. package/dist/document-model-editor/utils/linting.js.map +0 -1
  273. package/dist/document-model-editor/utils/style.d.ts +0 -3
  274. package/dist/document-model-editor/utils/style.d.ts.map +0 -1
  275. package/dist/document-model-editor/utils/style.js +0 -6
  276. package/dist/document-model-editor/utils/style.js.map +0 -1
  277. package/dist/editor-utils/components/documentEditor.d.ts +0 -7
  278. package/dist/editor-utils/components/documentEditor.d.ts.map +0 -1
  279. package/dist/editor-utils/components/documentEditor.js +0 -6
  280. package/dist/editor-utils/components/documentEditor.js.map +0 -1
  281. package/dist/editor-utils/components/editorToolbar.d.ts +0 -11
  282. package/dist/editor-utils/components/editorToolbar.d.ts.map +0 -1
  283. package/dist/editor-utils/components/editorToolbar.js +0 -6
  284. package/dist/editor-utils/components/editorToolbar.js.map +0 -1
  285. package/dist/editor-utils/components/editorWorksheet.d.ts +0 -7
  286. package/dist/editor-utils/components/editorWorksheet.d.ts.map +0 -1
  287. package/dist/editor-utils/components/editorWorksheet.js +0 -5
  288. package/dist/editor-utils/components/editorWorksheet.js.map +0 -1
  289. package/dist/editor-utils/components/index.d.ts +0 -9
  290. package/dist/editor-utils/components/index.d.ts.map +0 -1
  291. package/dist/editor-utils/components/index.js +0 -10
  292. package/dist/editor-utils/components/index.js.map +0 -1
  293. package/dist/editor-utils/components/styles.d.ts +0 -40
  294. package/dist/editor-utils/components/styles.d.ts.map +0 -1
  295. package/dist/editor-utils/components/styles.js +0 -79
  296. package/dist/editor-utils/components/styles.js.map +0 -1
  297. package/dist/editor-utils/components/stylesVariant.d.ts +0 -40
  298. package/dist/editor-utils/components/stylesVariant.d.ts.map +0 -1
  299. package/dist/editor-utils/components/stylesVariant.js +0 -89
  300. package/dist/editor-utils/components/stylesVariant.js.map +0 -1
  301. package/dist/editor-utils/components/textInput.d.ts +0 -20
  302. package/dist/editor-utils/components/textInput.d.ts.map +0 -1
  303. package/dist/editor-utils/components/textInput.js +0 -84
  304. package/dist/editor-utils/components/textInput.js.map +0 -1
  305. package/dist/editor-utils/components/textInputVariant.d.ts +0 -21
  306. package/dist/editor-utils/components/textInputVariant.d.ts.map +0 -1
  307. package/dist/editor-utils/components/textInputVariant.js +0 -93
  308. package/dist/editor-utils/components/textInputVariant.js.map +0 -1
  309. package/dist/editor-utils/components/toolbarButton.d.ts +0 -7
  310. package/dist/editor-utils/components/toolbarButton.d.ts.map +0 -1
  311. package/dist/editor-utils/components/toolbarButton.js +0 -9
  312. package/dist/editor-utils/components/toolbarButton.js.map +0 -1
  313. package/dist/editor-utils/hooks/index.d.ts +0 -2
  314. package/dist/editor-utils/hooks/index.d.ts.map +0 -1
  315. package/dist/editor-utils/hooks/index.js +0 -2
  316. package/dist/editor-utils/hooks/index.js.map +0 -1
  317. package/dist/editor-utils/hooks/useEnsInfo.d.ts +0 -15
  318. package/dist/editor-utils/hooks/useEnsInfo.d.ts.map +0 -1
  319. package/dist/editor-utils/hooks/useEnsInfo.js +0 -64
  320. package/dist/editor-utils/hooks/useEnsInfo.js.map +0 -1
  321. package/dist/editor-utils/index.d.ts +0 -5
  322. package/dist/editor-utils/index.d.ts.map +0 -1
  323. package/dist/editor-utils/index.js +0 -5
  324. package/dist/editor-utils/index.js.map +0 -1
  325. package/dist/editor-utils/reducer.d.ts +0 -3
  326. package/dist/editor-utils/reducer.d.ts.map +0 -1
  327. package/dist/editor-utils/reducer.js +0 -25
  328. package/dist/editor-utils/reducer.js.map +0 -1
  329. package/dist/editor-utils/storybook.d.ts +0 -32
  330. package/dist/editor-utils/storybook.d.ts.map +0 -1
  331. package/dist/editor-utils/storybook.js +0 -104
  332. package/dist/editor-utils/storybook.js.map +0 -1
  333. package/dist/index.js.map +0 -1
  334. package/dist/style.css +0 -890
  335. package/dist/test/helpers.test.d.ts +0 -2
  336. package/dist/test/helpers.test.d.ts.map +0 -1
  337. package/dist/test/helpers.test.js +0 -805
  338. package/dist/test/helpers.test.js.map +0 -1
  339. package/dist/test/index.d.ts +0 -2
  340. package/dist/test/index.d.ts.map +0 -1
  341. package/dist/test/index.js +0 -2
  342. package/dist/test/index.js.map +0 -1
@@ -1,130 +0,0 @@
1
- import fs from "fs/promises";
2
- import MagicString from "magic-string";
3
- import { createRequire } from "node:module";
4
- import { basename, dirname } from "node:path";
5
- // matches @powerhousedao/connect, react, react-dom and all their sub-imports like react-dom/client
6
- export const externalIds = [/^react(-dom)?(\/.*)?$/, /^node:.*$/];
7
- // https://github.com/vitejs/vite/issues/6393#issuecomment-1006819717
8
- // vite dev server doesn't support setting dependencies as external
9
- // as when building the app.
10
- export function viteIgnoreStaticImport(_importKeys) {
11
- const importKeys = _importKeys.filter((key) => typeof key === "string" || key instanceof RegExp);
12
- return {
13
- name: "vite-plugin-ignore-static-import",
14
- enforce: "pre",
15
- // vite will still append /@id/ to an external import
16
- // so this will rewrite the 'vite:import-analysis' prefix
17
- configResolved(resolvedConfig) {
18
- const values = importKeys.map((key) => typeof key === "string" ? key : key.source);
19
- const reg = new RegExp(`("|')\\/@id\\/(${values.join("|")})(\\/[^"'\\\\]*)?\\1`, "g");
20
- resolvedConfig.plugins.push({
21
- name: "vite-plugin-ignore-static-import-replace-idprefix",
22
- transform: (code) => {
23
- const s = new MagicString(code);
24
- const matches = code.matchAll(reg);
25
- let modified = false;
26
- for (const match of matches) {
27
- s.overwrite(match.index, match.index + match[0].length, match[0].replace("/@id/", ""));
28
- modified = true;
29
- }
30
- if (!modified)
31
- return null;
32
- return {
33
- code: s.toString(),
34
- map: s.generateMap({ hires: true }), // Generate an accurate source map
35
- };
36
- },
37
- });
38
- },
39
- // prevents the external import from being transformed to 'node_modules/...'
40
- resolveId: (id) => {
41
- if (importKeys.some((key) => typeof key === "string" ? key === id : key.test(id))) {
42
- return { id, external: true };
43
- }
44
- },
45
- // returns empty string to prevent "Pre-transform error: Failed to load url"
46
- load(id) {
47
- if (importKeys.some((key) => typeof key === "string" ? key === id : key.test(id))) {
48
- return "";
49
- }
50
- },
51
- };
52
- }
53
- export function viteReplaceImports(imports) {
54
- const importKeys = Object.keys(imports);
55
- return {
56
- name: "vite-plugin-connect-replace-imports",
57
- enforce: "pre",
58
- config(config) {
59
- // adds the provided paths to be resolved by vite
60
- const resolve = config.resolve ?? {};
61
- const alias = resolve.alias;
62
- let resolvedAlias;
63
- if (Array.isArray(alias)) {
64
- const arrayAlias = [...alias];
65
- arrayAlias.push(...Object.entries(imports).map(([find, replacement]) => ({
66
- find,
67
- replacement,
68
- })));
69
- resolvedAlias = arrayAlias;
70
- }
71
- else if (typeof alias === "object") {
72
- resolvedAlias = {
73
- ...alias,
74
- ...imports,
75
- };
76
- }
77
- else if (typeof alias === "undefined") {
78
- resolvedAlias = { ...imports };
79
- }
80
- else {
81
- console.error("resolve.alias was not recognized");
82
- }
83
- if (resolvedAlias) {
84
- resolve.alias = resolvedAlias;
85
- config.resolve = resolve;
86
- }
87
- },
88
- resolveId: (id) => {
89
- // if the path was not provided then declares the local
90
- // imports as external so that vite ignores them
91
- if (importKeys.includes(id)) {
92
- return {
93
- id,
94
- external: true,
95
- };
96
- }
97
- },
98
- };
99
- }
100
- export async function findPackageJson(packageName) {
101
- let packagePath;
102
- try {
103
- // Locate the package entry point
104
- const require = createRequire(process.cwd());
105
- packagePath = require.resolve(packageName, { paths: [process.cwd()] });
106
- }
107
- catch (err) {
108
- throw new Error(`Failed to resolve package: ${packageName}`, {
109
- cause: err,
110
- });
111
- }
112
- // Walk up the directory tree to find package.json
113
- let dir = dirname(packagePath);
114
- while (dir !== "/" && dir !== "." && dir !== "node_modules") {
115
- if (basename(dir) === "dist") {
116
- dir = dirname(dir);
117
- }
118
- const pkgJsonPath = `${dir}/package.json`;
119
- try {
120
- await fs.access(pkgJsonPath);
121
- const file = await fs.readFile(pkgJsonPath, "utf-8");
122
- return { packageJson: JSON.parse(file), path: dir };
123
- }
124
- catch {
125
- dir = dirname(dir); // Move up one level
126
- }
127
- }
128
- throw new Error(`package.json not found for ${packageName}`);
129
- }
130
- //# sourceMappingURL=base.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../connect-utils/vite-plugins/base.ts"],"names":[],"mappings":"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"}
@@ -1,62 +0,0 @@
1
- import { join } from "node:path";
2
- import { IMPORT_SCRIPT_FILE } from "../constants.js";
3
- export const viteDocumentModelsHMR = (targetDir) => {
4
- const importPath = join(targetDir, IMPORT_SCRIPT_FILE);
5
- const projectRoot = process.cwd();
6
- const documentModelsPath = join(projectRoot, "document-models");
7
- function triggerDocumentModelsHMR(server) {
8
- // Get the external-packages module that imports our document models
9
- const externalPackagesModule = server.moduleGraph.getModuleById(importPath);
10
- if (externalPackagesModule) {
11
- // Invalidate the external-packages module to trigger re-import
12
- server.moduleGraph.invalidateModule(externalPackagesModule);
13
- // Send custom event like the external-packages plugin does
14
- const timestamp = Date.now();
15
- const eventData = {
16
- url: externalPackagesModule.url,
17
- timestamp: timestamp.toString(),
18
- };
19
- server.ws.send("studio:external-packages-updated", eventData);
20
- // Return the modules that should be updated
21
- return [
22
- externalPackagesModule,
23
- ...externalPackagesModule.importers.values(),
24
- ];
25
- }
26
- return [];
27
- }
28
- return {
29
- name: "vite-plugin-document-models-hmr",
30
- configureServer(server) {
31
- // Add document-models files to Vite's watcher
32
- const documentModelsIndexJs = join(documentModelsPath, "index.js");
33
- const documentModelsIndexTs = join(documentModelsPath, "index.ts");
34
- // Add the document-models files to the server's watcher
35
- server.watcher.add([documentModelsIndexJs, documentModelsIndexTs]);
36
- },
37
- handleHotUpdate({ file, server, modules }) {
38
- // Check if this is a document-models index file change
39
- const isDocumentModelIndex = file.endsWith("document-models/index.js") ||
40
- file.endsWith("document-models/index.ts");
41
- // Check if this is the external-packages.js file that gets regenerated
42
- const isExternalPackagesFile = file === importPath;
43
- // Ignore other document-models files to prevent unwanted updates
44
- const isOtherDocumentModelFile = file.includes("/document-models/") && !isDocumentModelIndex;
45
- if (isOtherDocumentModelFile) {
46
- // Return empty array to prevent any HMR for non-index files
47
- return [];
48
- }
49
- if (isDocumentModelIndex) {
50
- // Send the WebSocket event but return empty array to prevent Vite's default HMR
51
- triggerDocumentModelsHMR(server);
52
- return [];
53
- }
54
- if (isExternalPackagesFile) {
55
- // This file was already handled when document-models changed, don't trigger default HMR
56
- return [];
57
- }
58
- return modules;
59
- },
60
- };
61
- };
62
- //# sourceMappingURL=document-models-hmr.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"document-models-hmr.js","sourceRoot":"","sources":["../../../connect-utils/vite-plugins/document-models-hmr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,SAAiB,EAAgB,EAAE;IACvE,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;IACvD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAClC,MAAM,kBAAkB,GAAG,IAAI,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;IAEhE,SAAS,wBAAwB,CAAC,MAAqB;QACrD,oEAAoE;QACpE,MAAM,sBAAsB,GAAG,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAE5E,IAAI,sBAAsB,EAAE,CAAC;YAC3B,+DAA+D;YAC/D,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,CAAC;YAE5D,2DAA2D;YAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,SAAS,GAAG;gBAChB,GAAG,EAAE,sBAAsB,CAAC,GAAG;gBAC/B,SAAS,EAAE,SAAS,CAAC,QAAQ,EAAE;aAChC,CAAC;YACF,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,kCAAkC,EAAE,SAAS,CAAC,CAAC;YAE9D,4CAA4C;YAC5C,OAAO;gBACL,sBAAsB;gBACtB,GAAG,sBAAsB,CAAC,SAAS,CAAC,MAAM,EAAE;aAC7C,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO;QACL,IAAI,EAAE,iCAAiC;QACvC,eAAe,CAAC,MAAM;YACpB,8CAA8C;YAC9C,MAAM,qBAAqB,GAAG,IAAI,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;YACnE,MAAM,qBAAqB,GAAG,IAAI,CAAC,kBAAkB,EAAE,UAAU,CAAC,CAAC;YAEnE,wDAAwD;YACxD,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,qBAAqB,EAAE,qBAAqB,CAAC,CAAC,CAAC;QACrE,CAAC;QACD,eAAe,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE;YACvC,uDAAuD;YACvD,MAAM,oBAAoB,GACxB,IAAI,CAAC,QAAQ,CAAC,0BAA0B,CAAC;gBACzC,IAAI,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC;YAE5C,uEAAuE;YACvE,MAAM,sBAAsB,GAAG,IAAI,KAAK,UAAU,CAAC;YAEnD,iEAAiE;YACjE,MAAM,wBAAwB,GAC5B,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,CAAC,oBAAoB,CAAC;YAE9D,IAAI,wBAAwB,EAAE,CAAC;gBAC7B,4DAA4D;gBAC5D,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,IAAI,oBAAoB,EAAE,CAAC;gBACzB,gFAAgF;gBAChF,wBAAwB,CAAC,MAAM,CAAC,CAAC;gBACjC,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,IAAI,sBAAsB,EAAE,CAAC;gBAC3B,wFAAwF;gBACxF,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,OAAO,OAAO,CAAC;QACjB,CAAC;KACF,CAAC;AACJ,CAAC,CAAC"}
@@ -1,61 +0,0 @@
1
- import { join } from "node:path";
2
- import { IMPORT_SCRIPT_FILE } from "../constants.js";
3
- export const viteEditorsHMR = (targetDir) => {
4
- const importPath = join(targetDir, IMPORT_SCRIPT_FILE);
5
- const projectRoot = process.cwd();
6
- const editorsPath = join(projectRoot, "editors");
7
- function triggerEditorsHMR(server) {
8
- // Get the external-packages module that imports our editors
9
- const externalPackagesModule = server.moduleGraph.getModuleById(importPath);
10
- if (externalPackagesModule) {
11
- // Invalidate the external-packages module to trigger re-import
12
- server.moduleGraph.invalidateModule(externalPackagesModule);
13
- // Send custom event like the external-packages plugin does
14
- const timestamp = Date.now();
15
- const eventData = {
16
- url: externalPackagesModule.url,
17
- timestamp: timestamp.toString(),
18
- };
19
- server.ws.send("studio:external-packages-updated", eventData);
20
- // Return the modules that should be updated
21
- return [
22
- externalPackagesModule,
23
- ...externalPackagesModule.importers.values(),
24
- ];
25
- }
26
- return [];
27
- }
28
- return {
29
- name: "vite-plugin-editors-hmr",
30
- configureServer(server) {
31
- // Add editors files to Vite's watcher
32
- const editorsIndexJs = join(editorsPath, "index.js");
33
- const editorsIndexTs = join(editorsPath, "index.ts");
34
- // Add the editors files to the server's watcher
35
- server.watcher.add([editorsIndexJs, editorsIndexTs]);
36
- },
37
- handleHotUpdate({ file, server, modules }) {
38
- // Check if this is an editors index file change
39
- const isEditorsIndex = file.endsWith("editors/index.js") || file.endsWith("editors/index.ts");
40
- // Check if this is the external-packages.js file that gets regenerated
41
- const isExternalPackagesFile = file === importPath;
42
- // Ignore other editors files to prevent unwanted updates
43
- const isOtherEditorsFile = file.includes("/editors/") && !isEditorsIndex;
44
- if (isOtherEditorsFile) {
45
- // Return empty array to prevent any HMR for non-index files
46
- return [];
47
- }
48
- if (isEditorsIndex) {
49
- // Send the WebSocket event but return empty array to prevent Vite's default HMR
50
- triggerEditorsHMR(server);
51
- return [];
52
- }
53
- if (isExternalPackagesFile) {
54
- // This file was already handled when editors changed, don't trigger default HMR
55
- return [];
56
- }
57
- return modules;
58
- },
59
- };
60
- };
61
- //# sourceMappingURL=editors-hmr.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"editors-hmr.js","sourceRoot":"","sources":["../../../connect-utils/vite-plugins/editors-hmr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAErD,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,SAAiB,EAAgB,EAAE;IAChE,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE,kBAAkB,CAAC,CAAC;IACvD,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAClC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAEjD,SAAS,iBAAiB,CAAC,MAAqB;QAC9C,4DAA4D;QAC5D,MAAM,sBAAsB,GAAG,MAAM,CAAC,WAAW,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;QAE5E,IAAI,sBAAsB,EAAE,CAAC;YAC3B,+DAA+D;YAC/D,MAAM,CAAC,WAAW,CAAC,gBAAgB,CAAC,sBAAsB,CAAC,CAAC;YAE5D,2DAA2D;YAC3D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,SAAS,GAAG;gBAChB,GAAG,EAAE,sBAAsB,CAAC,GAAG;gBAC/B,SAAS,EAAE,SAAS,CAAC,QAAQ,EAAE;aAChC,CAAC;YACF,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,kCAAkC,EAAE,SAAS,CAAC,CAAC;YAE9D,4CAA4C;YAC5C,OAAO;gBACL,sBAAsB;gBACtB,GAAG,sBAAsB,CAAC,SAAS,CAAC,MAAM,EAAE;aAC7C,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO;QACL,IAAI,EAAE,yBAAyB;QAC/B,eAAe,CAAC,MAAM;YACpB,sCAAsC;YACtC,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;YACrD,MAAM,cAAc,GAAG,IAAI,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;YAErD,gDAAgD;YAChD,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC,CAAC;QACvD,CAAC;QACD,eAAe,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE;YACvC,gDAAgD;YAChD,MAAM,cAAc,GAClB,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAC;YAEzE,uEAAuE;YACvE,MAAM,sBAAsB,GAAG,IAAI,KAAK,UAAU,CAAC;YAEnD,yDAAyD;YACzD,MAAM,kBAAkB,GAAG,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,cAAc,CAAC;YAEzE,IAAI,kBAAkB,EAAE,CAAC;gBACvB,4DAA4D;gBAC5D,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,IAAI,cAAc,EAAE,CAAC;gBACnB,gFAAgF;gBAChF,iBAAiB,CAAC,MAAM,CAAC,CAAC;gBAC1B,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,IAAI,sBAAsB,EAAE,CAAC;gBAC3B,gFAAgF;gBAChF,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,OAAO,OAAO,CAAC;QACjB,CAAC;KACF,CAAC;AACJ,CAAC,CAAC"}
@@ -1,127 +0,0 @@
1
- import { getConfig } from "@powerhousedao/config/node";
2
- import { exec } from "node:child_process";
3
- import fs from "node:fs";
4
- import { dirname, join, resolve } from "node:path";
5
- import { IMPORT_SCRIPT_FILE } from "../constants.js";
6
- import { makeImportScriptFromPackages } from "../helpers.js";
7
- const LOCAL_CSS = "../../style.css";
8
- const LOCAL_JS = "../../index.js";
9
- function generateImportScript(packages, targetPath, localPackage) {
10
- // create file if it doesn't exist, also create path if it doesn't exist (recursive)
11
- const targetDir = dirname(targetPath);
12
- if (!fs.existsSync(targetDir)) {
13
- fs.mkdirSync(targetDir, { recursive: true });
14
- }
15
- const hasJsModule = localPackage && fs.existsSync(resolve(targetDir, LOCAL_JS));
16
- const hasTsModule = localPackage &&
17
- fs.existsSync(resolve(targetDir, LOCAL_JS.replace(".js", ".ts")));
18
- const hasModule = hasJsModule || hasTsModule;
19
- const hasStyles = localPackage && fs.existsSync(resolve(targetDir, LOCAL_CSS));
20
- // Use the correct file extension based on what actually exists
21
- const localJsPath = hasModule
22
- ? hasJsModule
23
- ? LOCAL_JS
24
- : LOCAL_JS.replace(".js", ".ts")
25
- : undefined;
26
- const localCssPath = hasStyles ? LOCAL_CSS : undefined;
27
- const fileContent = makeImportScriptFromPackages({
28
- packages,
29
- localJsPath,
30
- localCssPath,
31
- });
32
- fs.writeFileSync(targetPath, fileContent.trim());
33
- return targetPath;
34
- }
35
- const handleExternalPackageEvents = (server) => {
36
- server.ws.on("studio:add-external-package", (data, client) => {
37
- const { name } = data;
38
- const installProcess = exec(`ph install ${name}`, {
39
- cwd: process.cwd(),
40
- }, (error) => {
41
- if (error) {
42
- console.error(`\t[${name}]: ${error.message}`);
43
- }
44
- else {
45
- server.ws.send("studio:external-package-added", {
46
- name,
47
- });
48
- }
49
- });
50
- installProcess.stdout?.on("data", (data) => {
51
- console.log(`\t[${name}]: ${data.toString().trim()}`);
52
- });
53
- console.log("Installing external package:", name);
54
- });
55
- server.ws.on("studio:remove-external-package", (data, client) => {
56
- const { name } = data;
57
- const uninstallProcess = exec(`ph uninstall ${name}`, {
58
- cwd: process.cwd(),
59
- }, (error) => {
60
- if (error) {
61
- console.error(`\t[${name}]: ${error.message}`);
62
- }
63
- else {
64
- server.ws.send("studio:external-package-removed", {
65
- name,
66
- });
67
- }
68
- });
69
- uninstallProcess.stdout?.on("data", (data) => {
70
- console.log(`\t[${name}]: ${data.toString().trim()}`);
71
- });
72
- console.log("Removing external package:", name);
73
- });
74
- };
75
- export const viteLoadExternalPackages = (localPackage, packages, targetDir) => {
76
- const importPath = join(targetDir, IMPORT_SCRIPT_FILE);
77
- packages = packages?.filter((p) => p.trim().length) ?? [];
78
- return [
79
- {
80
- name: "vite-plugin-ph-external-packages",
81
- config() {
82
- if (!localPackage) {
83
- generateImportScript(packages, importPath, localPackage);
84
- }
85
- },
86
- closeBundle() {
87
- generateImportScript(packages, importPath, localPackage);
88
- },
89
- configureServer(server) {
90
- generateImportScript(packages, importPath, localPackage);
91
- handleExternalPackageEvents(server);
92
- },
93
- handleHotUpdate({ file, server, modules, timestamp }) {
94
- if (file.endsWith("powerhouse.config.json")) {
95
- const config = getConfig(file);
96
- generateImportScript(config.packages?.map((p) => p.packageName) ?? [], importPath, true);
97
- config.packages?.forEach((pkg) => console.log("-> Loading package:", pkg.packageName));
98
- const module = server.moduleGraph.getModuleById(importPath);
99
- if (module) {
100
- server.moduleGraph.invalidateModule(module);
101
- return [module].concat(...module.importers.values());
102
- }
103
- }
104
- else if (file === importPath) {
105
- modules
106
- .filter((module) => module.id === importPath)
107
- .forEach((module) => {
108
- server.ws.send("studio:external-packages-updated", {
109
- url: module.url,
110
- timestampUtcMs: timestamp,
111
- });
112
- });
113
- return modules;
114
- }
115
- else if (!file.startsWith(targetDir) &&
116
- !file.includes("node_modules")) {
117
- // When local files change, use the project's config file path instead of the changed file
118
- const configPath = join(process.cwd(), "powerhouse.config.json");
119
- const config = getConfig(configPath);
120
- generateImportScript(config.packages?.map((p) => p.packageName) ?? [], importPath, localPackage);
121
- }
122
- return modules;
123
- },
124
- },
125
- ];
126
- };
127
- //# sourceMappingURL=external-packages.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"external-packages.js","sourceRoot":"","sources":["../../../connect-utils/vite-plugins/external-packages.ts"],"names":[],"mappings":"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"}
@@ -1,243 +0,0 @@
1
- import { build } from "esbuild";
2
- import fg from "fast-glob";
3
- import fs from "node:fs/promises";
4
- import { builtinModules } from "node:module";
5
- import path from "node:path";
6
- import { exports } from "resolve.exports";
7
- import { findPackageJson } from "./base.js";
8
- const nodeModules = builtinModules.concat(builtinModules.map((m) => `node:${m}`));
9
- /**
10
- * Resolves glob exports like `"./*": "./dist/*.js"` and `"./utils/*": "./dist/utils/*.js"`
11
- * into actual file mappings.
12
- *
13
- * @param {string} exportName - The export pattern (e.g., `"./*"` or `"./utils/*"`).
14
- * @param {string} exportPath - The actual path pattern (e.g., `"./dist/*.js"`).
15
- * @param {string} srcPath - The package root directory where the exports are located.
16
- * @returns {Promise<Record<string, string>>} - A mapping of export names to resolved paths.
17
- */
18
- async function resolveGlobExport(exportName, exportPath, srcPath) {
19
- const resolvedExports = new Map();
20
- const hasGloblExport = exportName.endsWith("/*");
21
- const globPath = hasGloblExport
22
- ? exportPath.replace("*", "**/*")
23
- : exportPath;
24
- const distPath = exportPath.substring(0, exportPath.lastIndexOf("/*"));
25
- const resolvedSrcPath = hasGloblExport
26
- ? path.join(srcPath.replace("*", ""), distPath)
27
- : srcPath;
28
- const files = await fg(path.join(srcPath, globPath));
29
- for (const file of files) {
30
- const relativeSrcFilePath = path.relative(resolvedSrcPath, file); // Relative to the dist folder
31
- const exportFilePath = path.relative(srcPath, file); // Relative to package root
32
- const exportKey = relativeSrcFilePath.replace(path.extname(file), ""); // Remove .js extension
33
- const mappedExport = exportName.replace("*", exportKey); // Replace glob `*` with actual name
34
- resolvedExports.set(mappedExport, {
35
- export: `./${relativeSrcFilePath}`,
36
- file: exportFilePath,
37
- }); // Final mapped entry
38
- }
39
- return resolvedExports;
40
- }
41
- async function addExportToMap(exportName, exportPath, srcPath, map) {
42
- if (exportName.includes("*")) {
43
- const exports = await resolveGlobExport(exportName, exportPath, srcPath);
44
- exports.forEach((value, key) => map.set(key, value));
45
- }
46
- else {
47
- map.set(exportName, { export: exportPath, file: exportPath });
48
- }
49
- }
50
- async function getPackageExports(name, packageJson, srcPath) {
51
- const entries = new Map();
52
- const mainExport = exports(packageJson, ".", {
53
- browser: true,
54
- });
55
- if (mainExport) {
56
- for (const entry of mainExport) {
57
- await addExportToMap(".", entry, srcPath, entries);
58
- }
59
- }
60
- if (!packageJson.exports) {
61
- return entries;
62
- }
63
- if (typeof packageJson.exports === "string") {
64
- await addExportToMap(name, packageJson.exports, srcPath, entries);
65
- return entries;
66
- }
67
- for (const [key, entry] of Object.entries(packageJson.exports)) {
68
- if (typeof entry === "string") {
69
- await addExportToMap(key, entry, srcPath, entries);
70
- }
71
- else {
72
- const exportEntry = exports(packageJson, key, {
73
- browser: true,
74
- });
75
- const exportResult = exportEntry?.at(0);
76
- if (exportResult) {
77
- await addExportToMap(key, exportResult, srcPath, entries);
78
- }
79
- else {
80
- console.warn(`No browser exports found for ${name}/${key}`);
81
- }
82
- }
83
- }
84
- // if the main entry file was resolved to a shorter path then updates it
85
- const main = entries.get(".");
86
- const resolvedEntry = main
87
- ? Array.from(entries.entries()).find(([key, entry]) => key != "." && [entry.file, `./${entry.file}`].includes(main.file))
88
- : undefined;
89
- const resolvedExport = resolvedEntry?.at(1);
90
- if (resolvedExport) {
91
- entries.set(".", {
92
- export: resolvedExport.export,
93
- file: resolvedExport.file,
94
- });
95
- }
96
- return entries;
97
- }
98
- function importFromEsmSh(name, version, dependencies) {
99
- const lib = `${name}${version ? `@${version}` : ""}`;
100
- const query = dependencies?.length ? `&deps=${dependencies.join(",")}` : "";
101
- return {
102
- [name]: `https://esm.sh/${lib}${query}`,
103
- [`${name}/`]: `https://esm.sh/${lib}${query}/`,
104
- };
105
- }
106
- async function importFromNodeModules(name, modulesDir, importMapDeps, baseUrl) {
107
- const importMap = {};
108
- const { packageJson, path: srcPath } = await findPackageJson(name);
109
- const entries = await getPackageExports(name, packageJson, srcPath);
110
- if (!entries.size) {
111
- throw new Error(`No browser exports found for ${name}`);
112
- }
113
- const indexFile = entries.get("")?.export || "index";
114
- const fileName = path.basename(entries.get("")?.export || "index", path.extname(indexFile));
115
- const outputPath = path.join(modulesDir, name);
116
- // Bundle and tree-shake only dependencies (exclude the actual library code)
117
- const buildModule = () => {
118
- console.log(`Bundling dependency: ${name}`);
119
- return build({
120
- entryPoints: Array.from(entries.values()).map((value) => path.join(srcPath, value.file)),
121
- outdir: outputPath,
122
- bundle: true,
123
- format: "esm",
124
- platform: "browser",
125
- target: "esnext",
126
- splitting: true,
127
- external: nodeModules.concat(Array.from(importMapDeps)), // Exclude dependencies already in import map
128
- sourcemap: true,
129
- minify: false,
130
- });
131
- };
132
- // Add entry to import map
133
- importMap[name] = `./modules/${name}/${fileName}.js`;
134
- entries.forEach((entry, key) => {
135
- importMap[path.join(name, key)] = path.join(baseUrl, `./modules/${path.join(name, entry.export)}`);
136
- });
137
- return { importMap, buildModule };
138
- }
139
- async function generateImportMap(outputDir, dependencies, baseUrl) {
140
- const modulesDir = path.join(outputDir, "/modules");
141
- await fs.mkdir(modulesDir, { recursive: true });
142
- const importMapDeps = new Set(dependencies.map((dep) => (typeof dep === "string" ? dep : dep.name)));
143
- let importMap = {};
144
- const buildModules = [];
145
- for (const dependency of dependencies) {
146
- const isString = typeof dependency === "string";
147
- const name = isString ? dependency : dependency.name;
148
- const version = isString ? undefined : dependency.version;
149
- const provider = isString ? "node_modules" : dependency.provider;
150
- const subDependencies = isString ? undefined : dependency.dependencies;
151
- if (provider === "esm.sh") {
152
- const imports = importFromEsmSh(name, version, subDependencies);
153
- importMap = { ...importMap, ...imports };
154
- // TODO: this does not make sense.
155
- // We need to give this the actual correct type, or if we really don't know what it is, then make it `unknown`
156
- }
157
- else if (provider.toString() === "node_modules") {
158
- const { importMap: imports, buildModule } = await importFromNodeModules(name, modulesDir, importMapDeps, baseUrl);
159
- importMap = { ...importMap, ...imports };
160
- buildModules.push(buildModule);
161
- }
162
- else {
163
- throw new Error(`Unsupported provider: ${provider}`);
164
- }
165
- }
166
- return {
167
- importMap,
168
- buildModules: async () => {
169
- await Promise.all(buildModules.map((build) => build()));
170
- },
171
- };
172
- }
173
- function addImportMapToHTML(importMap, html) {
174
- let newHtml = "";
175
- // Regex to find existing import map
176
- const importMapRegex = /<script type="importmap">(.*?)<\/script>/s;
177
- const match = importMapRegex.exec(html);
178
- // If an import map exists, merge the imports
179
- if (match) {
180
- try {
181
- const existingImportMap = JSON.parse(match[1]);
182
- existingImportMap.imports = {
183
- ...existingImportMap.imports,
184
- ...importMap,
185
- };
186
- const mergedImportMapString = JSON.stringify(existingImportMap, null, 2);
187
- newHtml = html.replace(importMapRegex, `<script type="importmap">${mergedImportMapString}</script>`);
188
- }
189
- catch (error) {
190
- console.error("⚠️ Error parsing existing import map:", error);
191
- }
192
- }
193
- else {
194
- const importMapString = JSON.stringify({ imports: importMap }, null, 2);
195
- const importMapScript = `<script type="importmap">${importMapString}</script>`;
196
- newHtml = html.replace("</head>", `${importMapScript}\n</head>`);
197
- }
198
- return newHtml;
199
- }
200
- /**
201
- * Vite plugin to bundle or copy dependencies and inject an import map into `index.html`.
202
- *
203
- * @param {string} outputDir - The directory where the modules should be placed.
204
- * @param {(string | { name: string; provider: string })[]} dependencies -
205
- * List of dependencies to process. Can be:
206
- * - A string (dependency is copied as is).
207
- * - An object `{ name, provide }` where:
208
- * - `name` (string): The module name.
209
- * - `provider` (string): Where to retrieve the module bundle. Defaults to node_modules.
210
- *
211
- * @returns {Plugin} A Vite plugin that processes dependencies and injects an import map.
212
- */
213
- export function generateImportMapPlugin(outputDir, dependencies) {
214
- let buildModules = undefined;
215
- let importMap = {};
216
- return [
217
- {
218
- name: "vite-plugin-importmap",
219
- enforce: "post",
220
- // generates import map according to the base url
221
- // and collects build method for each dependency
222
- async configResolved(config) {
223
- const result = await generateImportMap(outputDir, dependencies, config.base);
224
- importMap = result.importMap;
225
- buildModules = result.buildModules;
226
- },
227
- // builds modules when building the bundle
228
- closeBundle() {
229
- return buildModules?.();
230
- },
231
- // builds modules when starting the dev server
232
- configureServer() {
233
- return buildModules?.();
234
- },
235
- // adds importmap to the html
236
- transformIndexHtml(html) {
237
- const newHtml = addImportMapToHTML(importMap, html);
238
- return newHtml || html;
239
- },
240
- },
241
- ];
242
- }
243
- //# sourceMappingURL=importmap.js.map