@vizhub/runtime 0.3.8 → 0.5.0

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 (624) hide show
  1. package/README.md +33 -21
  2. package/dist/{buildHTML.d.ts → build/build.d.ts} +6 -6
  3. package/dist/build/build.d.ts.map +1 -0
  4. package/dist/{determineRuntimeVersion.d.ts → build/determineRuntimeVersion.d.ts} +1 -0
  5. package/dist/build/determineRuntimeVersion.d.ts.map +1 -0
  6. package/dist/build/determineRuntimeVersion.test.d.ts +2 -0
  7. package/dist/build/determineRuntimeVersion.test.d.ts.map +1 -0
  8. package/dist/build/index.d.ts +2 -0
  9. package/dist/build/index.d.ts.map +1 -0
  10. package/dist/build/types.d.ts +7 -0
  11. package/dist/build/types.d.ts.map +1 -0
  12. package/dist/common/packageJson.d.ts +1 -0
  13. package/dist/common/packageJson.d.ts.map +1 -0
  14. package/dist/common/packageJson.test.d.ts +1 -0
  15. package/dist/common/packageJson.test.d.ts.map +1 -0
  16. package/dist/common/sucrasePlugin.d.ts +1 -0
  17. package/dist/common/sucrasePlugin.d.ts.map +1 -0
  18. package/dist/common/virtualFileSystem.d.ts +1 -0
  19. package/dist/common/virtualFileSystem.d.ts.map +1 -0
  20. package/dist/createVizContent-BOSPq-Jv.cjs +207 -0
  21. package/dist/createVizContent-BOSPq-Jv.cjs.map +1 -0
  22. package/dist/createVizContent-DjJF2PT_.js +565 -0
  23. package/dist/createVizContent-DjJF2PT_.js.map +1 -0
  24. package/dist/index.cjs +2 -0
  25. package/dist/index.cjs.map +1 -0
  26. package/dist/index.d.ts +5 -3
  27. package/dist/index.d.ts.map +1 -0
  28. package/dist/index.js +193 -3
  29. package/dist/index.js.map +1 -0
  30. package/dist/old-implementation-reference/setupV3Runtime.d.ts +1 -0
  31. package/dist/old-implementation-reference/setupV3Runtime.d.ts.map +1 -0
  32. package/dist/old-implementation-reference/types.d.ts +1 -0
  33. package/dist/old-implementation-reference/types.d.ts.map +1 -0
  34. package/dist/old-implementation-reference/worker.d.ts +1 -0
  35. package/dist/old-implementation-reference/worker.d.ts.map +1 -0
  36. package/dist/orchestration/createRuntime.d.ts +11 -0
  37. package/dist/orchestration/createRuntime.d.ts.map +1 -0
  38. package/dist/orchestration/generateRequestId.d.ts +2 -0
  39. package/dist/orchestration/generateRequestId.d.ts.map +1 -0
  40. package/dist/orchestration/setupBuild.d.ts +10 -0
  41. package/dist/orchestration/setupBuild.d.ts.map +1 -0
  42. package/dist/orchestration/setupInvalidateVizCache.d.ts +3 -0
  43. package/dist/orchestration/setupInvalidateVizCache.d.ts.map +1 -0
  44. package/dist/orchestration/types.d.ts +66 -0
  45. package/dist/orchestration/types.d.ts.map +1 -0
  46. package/dist/orchestration/worker.d.ts +2 -0
  47. package/dist/orchestration/worker.d.ts.map +1 -0
  48. package/dist/test/end-to-end.test.d.ts +2 -0
  49. package/dist/test/end-to-end.test.d.ts.map +1 -0
  50. package/dist/test/fixtures/v1/basicHTML.d.ts +1 -0
  51. package/dist/test/fixtures/v1/basicHTML.d.ts.map +1 -0
  52. package/dist/test/fixtures/v1/fetchProxy.d.ts +1 -0
  53. package/dist/test/fixtures/v1/fetchProxy.d.ts.map +1 -0
  54. package/dist/test/fixtures/v1/index.d.ts +1 -0
  55. package/dist/test/fixtures/v1/index.d.ts.map +1 -0
  56. package/dist/test/fixtures/v1/jsScriptTag.d.ts +1 -0
  57. package/dist/test/fixtures/v1/jsScriptTag.d.ts.map +1 -0
  58. package/dist/test/fixtures/v1/protocolTest.d.ts +1 -0
  59. package/dist/test/fixtures/v1/protocolTest.d.ts.map +1 -0
  60. package/dist/test/fixtures/v1/styleTest.d.ts +1 -0
  61. package/dist/test/fixtures/v1/styleTest.d.ts.map +1 -0
  62. package/dist/test/fixtures/v1/xmlTest.d.ts +1 -0
  63. package/dist/test/fixtures/v1/xmlTest.d.ts.map +1 -0
  64. package/dist/test/fixtures/v2/basicBundle.d.ts +1 -0
  65. package/dist/test/fixtures/v2/basicBundle.d.ts.map +1 -0
  66. package/dist/test/fixtures/v2/basicBundleNoExtension.d.ts +1 -0
  67. package/dist/test/fixtures/v2/basicBundleNoExtension.d.ts.map +1 -0
  68. package/dist/test/fixtures/v2/d3Import.d.ts +1 -0
  69. package/dist/test/fixtures/v2/d3Import.d.ts.map +1 -0
  70. package/dist/test/fixtures/v2/d3ImportPkg.d.ts +1 -0
  71. package/dist/test/fixtures/v2/d3ImportPkg.d.ts.map +1 -0
  72. package/dist/test/fixtures/v2/d3RosettaImportPkg.d.ts +1 -0
  73. package/dist/test/fixtures/v2/d3RosettaImportPkg.d.ts.map +1 -0
  74. package/dist/test/fixtures/v2/es6Preserve.d.ts +1 -0
  75. package/dist/test/fixtures/v2/es6Preserve.d.ts.map +1 -0
  76. package/dist/test/fixtures/v2/generatorSupport.d.ts +1 -0
  77. package/dist/test/fixtures/v2/generatorSupport.d.ts.map +1 -0
  78. package/dist/test/fixtures/v2/index.d.ts +3 -1
  79. package/dist/test/fixtures/v2/index.d.ts.map +1 -0
  80. package/dist/test/fixtures/v2/jsxTranspile.d.ts +1 -0
  81. package/dist/test/fixtures/v2/jsxTranspile.d.ts.map +1 -0
  82. package/dist/test/fixtures/v2/reactDomImport.d.ts +1 -0
  83. package/dist/test/fixtures/v2/reactDomImport.d.ts.map +1 -0
  84. package/dist/test/fixtures/v2/reactDomImportPkg.d.ts +1 -0
  85. package/dist/test/fixtures/v2/reactDomImportPkg.d.ts.map +1 -0
  86. package/dist/test/fixtures/v2/reactImport.d.ts +1 -0
  87. package/dist/test/fixtures/v2/reactImport.d.ts.map +1 -0
  88. package/dist/test/fixtures/v2/reactImportPkg.d.ts +1 -0
  89. package/dist/test/fixtures/v2/reactImportPkg.d.ts.map +1 -0
  90. package/dist/test/fixtures/v2/sourceMapErrorFixture.d.ts +1 -0
  91. package/dist/test/fixtures/v2/sourceMapErrorFixture.d.ts.map +1 -0
  92. package/dist/test/fixtures/v2/syntaxError.d.ts +6 -0
  93. package/dist/test/fixtures/v2/syntaxError.d.ts.map +1 -0
  94. package/dist/test/fixtures/v2/unicodeSupport.d.ts +1 -0
  95. package/dist/test/fixtures/v2/unicodeSupport.d.ts.map +1 -0
  96. package/dist/test/fixtures/v3/basicIndexJS.d.ts +1 -0
  97. package/dist/test/fixtures/v3/basicIndexJS.d.ts.map +1 -0
  98. package/dist/test/fixtures/v3/cssImport.d.ts +1 -0
  99. package/dist/test/fixtures/v3/cssImport.d.ts.map +1 -0
  100. package/dist/test/fixtures/v3/csvImport.d.ts +1 -0
  101. package/dist/test/fixtures/v3/csvImport.d.ts.map +1 -0
  102. package/dist/test/fixtures/v3/csvStrangeChars.d.ts +1 -0
  103. package/dist/test/fixtures/v3/csvStrangeChars.d.ts.map +1 -0
  104. package/dist/test/fixtures/v3/d3Dependency.d.ts +5 -0
  105. package/dist/test/fixtures/v3/d3Dependency.d.ts.map +1 -0
  106. package/dist/test/fixtures/v3/index.d.ts +2 -0
  107. package/dist/test/fixtures/v3/index.d.ts.map +1 -0
  108. package/dist/test/fixtures/v3/jsExport.d.ts +1 -0
  109. package/dist/test/fixtures/v3/jsExport.d.ts.map +1 -0
  110. package/dist/test/fixtures/v3/sourcemap.d.ts +1 -0
  111. package/dist/test/fixtures/v3/sourcemap.d.ts.map +1 -0
  112. package/dist/test/fixtures/v3/svelte.d.ts +1 -0
  113. package/dist/test/fixtures/v3/svelte.d.ts.map +1 -0
  114. package/dist/test/fixtures/v3/vizContent.d.ts +1 -0
  115. package/dist/test/fixtures/v3/vizContent.d.ts.map +1 -0
  116. package/dist/test/fixtures/v3/vizImport.d.ts +1 -0
  117. package/dist/test/fixtures/v3/vizImport.d.ts.map +1 -0
  118. package/dist/test/fixtures/v4/d3Usage.d.ts +1 -0
  119. package/dist/test/fixtures/v4/d3Usage.d.ts.map +1 -0
  120. package/dist/test/fixtures/v4/esmBuild.d.ts +1 -0
  121. package/dist/test/fixtures/v4/esmBuild.d.ts.map +1 -0
  122. package/dist/test/fixtures/v4/fetchInterception.d.ts +1 -0
  123. package/dist/test/fixtures/v4/fetchInterception.d.ts.map +1 -0
  124. package/dist/test/fixtures/v4/index.d.ts +1 -0
  125. package/dist/test/fixtures/v4/index.d.ts.map +1 -0
  126. package/dist/test/fixtures/v4/jsScriptTagTypeModule.d.ts +1 -0
  127. package/dist/test/fixtures/v4/jsScriptTagTypeModule.d.ts.map +1 -0
  128. package/dist/test/fixtures/v4/jsScriptTagTypeModules.d.ts +1 -0
  129. package/dist/test/fixtures/v4/jsScriptTagTypeModules.d.ts.map +1 -0
  130. package/dist/test/fixtures/v4/reactHooks.d.ts +1 -0
  131. package/dist/test/fixtures/v4/reactHooks.d.ts.map +1 -0
  132. package/dist/test/fixtures/v4/reactJsx.d.ts +1 -0
  133. package/dist/test/fixtures/v4/reactJsx.d.ts.map +1 -0
  134. package/dist/test/fixtures/v4/threeJsUsage.d.ts +1 -0
  135. package/dist/test/fixtures/v4/threeJsUsage.d.ts.map +1 -0
  136. package/dist/test/fixtures/v4/typeScriptSupport.d.ts +1 -0
  137. package/dist/test/fixtures/v4/typeScriptSupport.d.ts.map +1 -0
  138. package/dist/test/orchestration.test.d.ts +2 -0
  139. package/dist/test/orchestration.test.d.ts.map +1 -0
  140. package/dist/test/testInBrowser.d.ts +5 -4
  141. package/dist/test/testInBrowser.d.ts.map +1 -0
  142. package/dist/test/testMockedIframeWithWorker.d.ts +28 -0
  143. package/dist/test/testMockedIframeWithWorker.d.ts.map +1 -0
  144. package/dist/test/testRuntimeWithWorker.d.ts +18 -0
  145. package/dist/test/testRuntimeWithWorker.d.ts.map +1 -0
  146. package/dist/test/testStackTrace.d.ts +1 -0
  147. package/dist/test/testStackTrace.d.ts.map +1 -0
  148. package/dist/test/v1.test.d.ts +1 -0
  149. package/dist/test/v1.test.d.ts.map +1 -0
  150. package/dist/test/v2.test.d.ts +1 -0
  151. package/dist/test/v2.test.d.ts.map +1 -0
  152. package/dist/test/v3.test.d.ts +1 -0
  153. package/dist/test/v3.test.d.ts.map +1 -0
  154. package/dist/test/v4.test.d.ts +1 -0
  155. package/dist/test/v4.test.d.ts.map +1 -0
  156. package/dist/v2/computeBundleJSV2.d.ts +1 -0
  157. package/dist/v2/computeBundleJSV2.d.ts.map +1 -0
  158. package/dist/v2/getComputedIndexHtml.d.ts +1 -2
  159. package/dist/v2/getComputedIndexHtml.d.ts.map +1 -0
  160. package/dist/v2/getComputedIndexHtml.test.d.ts +1 -0
  161. package/dist/v2/getComputedIndexHtml.test.d.ts.map +1 -0
  162. package/dist/v2/index.d.ts +1 -0
  163. package/dist/v2/index.d.ts.map +1 -0
  164. package/dist/v2/v2Build.d.ts +1 -0
  165. package/dist/v2/v2Build.d.ts.map +1 -0
  166. package/dist/v3/cleanRollupErrorMessage.d.ts +1 -0
  167. package/dist/v3/cleanRollupErrorMessage.d.ts.map +1 -0
  168. package/dist/v3/cleanRollupErrorMessage.test.d.ts +2 -0
  169. package/dist/v3/cleanRollupErrorMessage.test.d.ts.map +1 -0
  170. package/dist/v3/computeBundleJSV3.d.ts +6 -5
  171. package/dist/v3/computeBundleJSV3.d.ts.map +1 -0
  172. package/dist/v3/createVizContent.d.ts +1 -0
  173. package/dist/v3/createVizContent.d.ts.map +1 -0
  174. package/dist/v3/extractVizImport.d.ts +1 -0
  175. package/dist/v3/extractVizImport.d.ts.map +1 -0
  176. package/dist/v3/extractVizImport.test.d.ts +1 -0
  177. package/dist/v3/extractVizImport.test.d.ts.map +1 -0
  178. package/dist/v3/htmlTemplate.d.ts +1 -0
  179. package/dist/v3/htmlTemplate.d.ts.map +1 -0
  180. package/dist/v3/index.d.ts +10 -0
  181. package/dist/v3/index.d.ts.map +1 -0
  182. package/dist/v3/parseId.d.ts +3 -2
  183. package/dist/v3/parseId.d.ts.map +1 -0
  184. package/dist/v3/parseId.test.d.ts +1 -0
  185. package/dist/v3/parseId.test.d.ts.map +1 -0
  186. package/dist/v3/setupV3Runtime.d.ts +1 -15
  187. package/dist/v3/setupV3Runtime.d.ts.map +1 -0
  188. package/dist/v3/slugCache.d.ts +1 -0
  189. package/dist/v3/slugCache.d.ts.map +1 -0
  190. package/dist/v3/slugCache.test.d.ts +1 -0
  191. package/dist/v3/slugCache.test.d.ts.map +1 -0
  192. package/dist/v3/transformDSV/dsvParseSrc.d.ts +1 -0
  193. package/dist/v3/transformDSV/dsvParseSrc.d.ts.map +1 -0
  194. package/dist/v3/transformDSV/index.d.ts +1 -0
  195. package/dist/v3/transformDSV/index.d.ts.map +1 -0
  196. package/dist/v3/transformSvelte.d.ts +2 -1
  197. package/dist/v3/transformSvelte.d.ts.map +1 -0
  198. package/dist/v3/types.d.ts +2 -1
  199. package/dist/v3/types.d.ts.map +1 -0
  200. package/dist/v3/v3Build.d.ts +6 -4
  201. package/dist/v3/v3Build.d.ts.map +1 -0
  202. package/dist/v3/vizCache.d.ts +1 -0
  203. package/dist/v3/vizCache.d.ts.map +1 -0
  204. package/dist/v3/vizCache.test.d.ts +1 -0
  205. package/dist/v3/vizCache.test.d.ts.map +1 -0
  206. package/dist/v3/vizLoad.d.ts +3 -2
  207. package/dist/v3/vizLoad.d.ts.map +1 -0
  208. package/dist/v3/vizResolve.d.ts +2 -1
  209. package/dist/v3/vizResolve.d.ts.map +1 -0
  210. package/dist/v4/bundleModule.d.ts +12 -0
  211. package/dist/v4/bundleModule.d.ts.map +1 -0
  212. package/dist/v4/extractEntryPoints.d.ts +5 -0
  213. package/dist/v4/extractEntryPoints.d.ts.map +1 -0
  214. package/dist/v4/importMap.d.ts +6 -0
  215. package/dist/v4/importMap.d.ts.map +1 -0
  216. package/dist/v4/index.d.ts +4 -1
  217. package/dist/v4/index.d.ts.map +1 -0
  218. package/dist/v4/stringUtils.d.ts +17 -0
  219. package/dist/v4/stringUtils.d.ts.map +1 -0
  220. package/dist/v4/updateHTML.d.ts +6 -0
  221. package/dist/v4/updateHTML.d.ts.map +1 -0
  222. package/dist/worker.cjs +9 -0
  223. package/dist/worker.cjs.map +1 -0
  224. package/dist/worker.js +390 -0
  225. package/dist/worker.js.map +1 -0
  226. package/package.json +21 -16
  227. package/dist/buildHTML.js +0 -67
  228. package/dist/cjs/buildHTML.js +0 -71
  229. package/dist/cjs/common/packageJson.js +0 -81
  230. package/dist/cjs/common/packageJson.test.js +0 -148
  231. package/dist/cjs/common/sucrasePlugin.js +0 -27
  232. package/dist/cjs/common/virtualFileSystem.js +0 -79
  233. package/dist/cjs/determineRuntimeVersion.js +0 -26
  234. package/dist/cjs/determineRuntimeVersion.test.js +0 -103
  235. package/dist/cjs/index.js +0 -13
  236. package/dist/cjs/package.json +0 -1
  237. package/dist/cjs/test/fixtures/v1/basicHTML.js +0 -18
  238. package/dist/cjs/test/fixtures/v1/fetchProxy.js +0 -15
  239. package/dist/cjs/test/fixtures/v1/index.js +0 -15
  240. package/dist/cjs/test/fixtures/v1/jsScriptTag.js +0 -12
  241. package/dist/cjs/test/fixtures/v1/protocolTest.js +0 -18
  242. package/dist/cjs/test/fixtures/v1/styleTest.js +0 -18
  243. package/dist/cjs/test/fixtures/v1/xmlTest.js +0 -22
  244. package/dist/cjs/test/fixtures/v2/basicBundle.js +0 -8
  245. package/dist/cjs/test/fixtures/v2/basicBundleNoExtension.js +0 -8
  246. package/dist/cjs/test/fixtures/v2/d3Import.js +0 -10
  247. package/dist/cjs/test/fixtures/v2/d3ImportPkg.js +0 -22
  248. package/dist/cjs/test/fixtures/v2/d3RosettaImportPkg.js +0 -22
  249. package/dist/cjs/test/fixtures/v2/es6Preserve.js +0 -9
  250. package/dist/cjs/test/fixtures/v2/generatorSupport.js +0 -9
  251. package/dist/cjs/test/fixtures/v2/index.js +0 -45
  252. package/dist/cjs/test/fixtures/v2/jsxTranspile.js +0 -9
  253. package/dist/cjs/test/fixtures/v2/reactDomImport.js +0 -11
  254. package/dist/cjs/test/fixtures/v2/reactDomImportPkg.js +0 -27
  255. package/dist/cjs/test/fixtures/v2/reactImport.js +0 -10
  256. package/dist/cjs/test/fixtures/v2/reactImportPkg.js +0 -20
  257. package/dist/cjs/test/fixtures/v2/sourceMapErrorFixture.js +0 -22
  258. package/dist/cjs/test/fixtures/v2/unicodeSupport.js +0 -9
  259. package/dist/cjs/test/fixtures/v3/basicIndexJS.js +0 -10
  260. package/dist/cjs/test/fixtures/v3/cssImport.js +0 -12
  261. package/dist/cjs/test/fixtures/v3/csvImport.js +0 -14
  262. package/dist/cjs/test/fixtures/v3/csvStrangeChars.js +0 -15
  263. package/dist/cjs/test/fixtures/v3/index.js +0 -25
  264. package/dist/cjs/test/fixtures/v3/jsExport.js +0 -13
  265. package/dist/cjs/test/fixtures/v3/sourcemap.js +0 -13
  266. package/dist/cjs/test/fixtures/v3/svelte.js +0 -21
  267. package/dist/cjs/test/fixtures/v3/vizContent.js +0 -14
  268. package/dist/cjs/test/fixtures/v3/vizImport.js +0 -88
  269. package/dist/cjs/test/fixtures/v4/d3Usage.js +0 -34
  270. package/dist/cjs/test/fixtures/v4/esmBuild.js +0 -21
  271. package/dist/cjs/test/fixtures/v4/fetchInterception.js +0 -21
  272. package/dist/cjs/test/fixtures/v4/index.js +0 -21
  273. package/dist/cjs/test/fixtures/v4/jsScriptTagTypeModule.js +0 -21
  274. package/dist/cjs/test/fixtures/v4/jsScriptTagTypeModules.js +0 -15
  275. package/dist/cjs/test/fixtures/v4/reactHooks.js +0 -50
  276. package/dist/cjs/test/fixtures/v4/reactJsx.js +0 -37
  277. package/dist/cjs/test/fixtures/v4/threeJsUsage.js +0 -27
  278. package/dist/cjs/test/fixtures/v4/typeScriptSupport.js +0 -32
  279. package/dist/cjs/test/testInBrowser.js +0 -50
  280. package/dist/cjs/test/testStackTrace.js +0 -58
  281. package/dist/cjs/test/v1.test.js +0 -70
  282. package/dist/cjs/test/v2.test.js +0 -124
  283. package/dist/cjs/test/v3.test.js +0 -119
  284. package/dist/cjs/test/v4.test.js +0 -105
  285. package/dist/cjs/types.js +0 -2
  286. package/dist/cjs/utils/vizContentToFileCollection.js +0 -24
  287. package/dist/cjs/utils/vizContentToFileCollection.test.js +0 -77
  288. package/dist/cjs/v2/computeBundleJSV2.js +0 -33
  289. package/dist/cjs/v2/getComputedIndexHtml.js +0 -86
  290. package/dist/cjs/v2/getComputedIndexHtml.test.js +0 -136
  291. package/dist/cjs/v2/index.js +0 -5
  292. package/dist/cjs/v2/v2Build.js +0 -15
  293. package/dist/cjs/v3/cleanRollupErrorMessage.js +0 -13
  294. package/dist/cjs/v3/computeBundleJSV3.js +0 -52
  295. package/dist/cjs/v3/createVizContent.js +0 -27
  296. package/dist/cjs/v3/extractVizImport.js +0 -27
  297. package/dist/cjs/v3/extractVizImport.test.js +0 -32
  298. package/dist/cjs/v3/htmlTemplate.js +0 -93
  299. package/dist/cjs/v3/index.js +0 -5
  300. package/dist/cjs/v3/parseId.js +0 -9
  301. package/dist/cjs/v3/parseId.test.js +0 -27
  302. package/dist/cjs/v3/setupV3Runtime.js +0 -345
  303. package/dist/cjs/v3/slugCache.js +0 -39
  304. package/dist/cjs/v3/slugCache.test.js +0 -107
  305. package/dist/cjs/v3/transformDSV/dsvParseSrc.js +0 -124
  306. package/dist/cjs/v3/transformDSV/index.js +0 -44
  307. package/dist/cjs/v3/transformSvelte.js +0 -81
  308. package/dist/cjs/v3/types.js +0 -2
  309. package/dist/cjs/v3/v3Build.js +0 -34
  310. package/dist/cjs/v3/vizCache.js +0 -40
  311. package/dist/cjs/v3/vizCache.test.js +0 -100
  312. package/dist/cjs/v3/vizLoad.js +0 -50
  313. package/dist/cjs/v3/vizResolve.js +0 -73
  314. package/dist/cjs/v4/index.js +0 -138
  315. package/dist/common/packageJson.js +0 -71
  316. package/dist/common/packageJson.test.js +0 -146
  317. package/dist/common/sucrasePlugin.js +0 -24
  318. package/dist/common/virtualFileSystem.js +0 -75
  319. package/dist/determineRuntimeVersion.js +0 -22
  320. package/dist/determineRuntimeVersion.test.d.ts +0 -1
  321. package/dist/determineRuntimeVersion.test.js +0 -101
  322. package/dist/esm/buildHTML.js +0 -67
  323. package/dist/esm/common/packageJson.js +0 -71
  324. package/dist/esm/common/packageJson.test.js +0 -146
  325. package/dist/esm/common/sucrasePlugin.js +0 -24
  326. package/dist/esm/common/virtualFileSystem.js +0 -75
  327. package/dist/esm/determineRuntimeVersion.js +0 -22
  328. package/dist/esm/determineRuntimeVersion.test.js +0 -101
  329. package/dist/esm/index.js +0 -5
  330. package/dist/esm/test/fixtures/v1/basicHTML.js +0 -15
  331. package/dist/esm/test/fixtures/v1/fetchProxy.js +0 -12
  332. package/dist/esm/test/fixtures/v1/index.js +0 -6
  333. package/dist/esm/test/fixtures/v1/jsScriptTag.js +0 -9
  334. package/dist/esm/test/fixtures/v1/protocolTest.js +0 -15
  335. package/dist/esm/test/fixtures/v1/styleTest.js +0 -15
  336. package/dist/esm/test/fixtures/v1/xmlTest.js +0 -19
  337. package/dist/esm/test/fixtures/v2/basicBundle.js +0 -5
  338. package/dist/esm/test/fixtures/v2/basicBundleNoExtension.js +0 -5
  339. package/dist/esm/test/fixtures/v2/d3Import.js +0 -7
  340. package/dist/esm/test/fixtures/v2/d3ImportPkg.js +0 -19
  341. package/dist/esm/test/fixtures/v2/d3RosettaImportPkg.js +0 -19
  342. package/dist/esm/test/fixtures/v2/es6Preserve.js +0 -6
  343. package/dist/esm/test/fixtures/v2/generatorSupport.js +0 -6
  344. package/dist/esm/test/fixtures/v2/index.js +0 -15
  345. package/dist/esm/test/fixtures/v2/jsxTranspile.js +0 -6
  346. package/dist/esm/test/fixtures/v2/reactDomImport.js +0 -8
  347. package/dist/esm/test/fixtures/v2/reactDomImportPkg.js +0 -24
  348. package/dist/esm/test/fixtures/v2/reactImport.js +0 -7
  349. package/dist/esm/test/fixtures/v2/reactImportPkg.js +0 -17
  350. package/dist/esm/test/fixtures/v2/sourceMapErrorFixture.js +0 -19
  351. package/dist/esm/test/fixtures/v2/unicodeSupport.js +0 -6
  352. package/dist/esm/test/fixtures/v3/basicIndexJS.js +0 -7
  353. package/dist/esm/test/fixtures/v3/cssImport.js +0 -9
  354. package/dist/esm/test/fixtures/v3/csvImport.js +0 -11
  355. package/dist/esm/test/fixtures/v3/csvStrangeChars.js +0 -12
  356. package/dist/esm/test/fixtures/v3/index.js +0 -9
  357. package/dist/esm/test/fixtures/v3/jsExport.js +0 -10
  358. package/dist/esm/test/fixtures/v3/sourcemap.js +0 -10
  359. package/dist/esm/test/fixtures/v3/svelte.js +0 -18
  360. package/dist/esm/test/fixtures/v3/vizContent.js +0 -11
  361. package/dist/esm/test/fixtures/v3/vizImport.js +0 -85
  362. package/dist/esm/test/fixtures/v4/d3Usage.js +0 -31
  363. package/dist/esm/test/fixtures/v4/esmBuild.js +0 -18
  364. package/dist/esm/test/fixtures/v4/fetchInterception.js +0 -18
  365. package/dist/esm/test/fixtures/v4/index.js +0 -9
  366. package/dist/esm/test/fixtures/v4/jsScriptTagTypeModule.js +0 -18
  367. package/dist/esm/test/fixtures/v4/jsScriptTagTypeModules.js +0 -12
  368. package/dist/esm/test/fixtures/v4/reactHooks.js +0 -47
  369. package/dist/esm/test/fixtures/v4/reactJsx.js +0 -34
  370. package/dist/esm/test/fixtures/v4/threeJsUsage.js +0 -24
  371. package/dist/esm/test/fixtures/v4/typeScriptSupport.js +0 -29
  372. package/dist/esm/test/testInBrowser.js +0 -47
  373. package/dist/esm/test/testStackTrace.js +0 -55
  374. package/dist/esm/test/v1.test.js +0 -65
  375. package/dist/esm/test/v2.test.js +0 -121
  376. package/dist/esm/test/v3.test.js +0 -114
  377. package/dist/esm/test/v4.test.js +0 -100
  378. package/dist/esm/types.js +0 -1
  379. package/dist/esm/utils/vizContentToFileCollection.js +0 -20
  380. package/dist/esm/utils/vizContentToFileCollection.test.js +0 -75
  381. package/dist/esm/v2/computeBundleJSV2.js +0 -29
  382. package/dist/esm/v2/getComputedIndexHtml.js +0 -81
  383. package/dist/esm/v2/getComputedIndexHtml.test.js +0 -134
  384. package/dist/esm/v2/index.js +0 -1
  385. package/dist/esm/v2/v2Build.js +0 -11
  386. package/dist/esm/v3/cleanRollupErrorMessage.js +0 -9
  387. package/dist/esm/v3/computeBundleJSV3.js +0 -48
  388. package/dist/esm/v3/createVizContent.js +0 -23
  389. package/dist/esm/v3/extractVizImport.js +0 -23
  390. package/dist/esm/v3/extractVizImport.test.js +0 -30
  391. package/dist/esm/v3/htmlTemplate.js +0 -89
  392. package/dist/esm/v3/index.js +0 -1
  393. package/dist/esm/v3/parseId.js +0 -5
  394. package/dist/esm/v3/parseId.test.js +0 -25
  395. package/dist/esm/v3/setupV3Runtime.js +0 -341
  396. package/dist/esm/v3/slugCache.js +0 -35
  397. package/dist/esm/v3/slugCache.test.js +0 -105
  398. package/dist/esm/v3/transformDSV/dsvParseSrc.js +0 -121
  399. package/dist/esm/v3/transformDSV/index.js +0 -40
  400. package/dist/esm/v3/transformSvelte.js +0 -77
  401. package/dist/esm/v3/types.js +0 -1
  402. package/dist/esm/v3/v3Build.js +0 -30
  403. package/dist/esm/v3/vizCache.js +0 -36
  404. package/dist/esm/v3/vizCache.test.js +0 -98
  405. package/dist/esm/v3/vizLoad.js +0 -46
  406. package/dist/esm/v3/vizResolve.js +0 -69
  407. package/dist/esm/v4/index.js +0 -134
  408. package/dist/fixtures/basicHTML.d.ts +0 -2
  409. package/dist/fixtures/basicHTML.js +0 -22
  410. package/dist/fixtures/fetchProxy.d.ts +0 -2
  411. package/dist/fixtures/fetchProxy.js +0 -25
  412. package/dist/fixtures/index.d.ts +0 -3
  413. package/dist/fixtures/index.js +0 -9
  414. package/dist/fixtures/jsScriptTag.d.ts +0 -2
  415. package/dist/fixtures/jsScriptTag.js +0 -19
  416. package/dist/index.test.d.ts +0 -1
  417. package/dist/index.test.js +0 -50
  418. package/dist/magicSandbox/fixProtocollessUrls.d.ts +0 -4
  419. package/dist/magicSandbox/fixProtocollessUrls.js +0 -10
  420. package/dist/magicSandbox/generateInterceptorScript.d.ts +0 -4
  421. package/dist/magicSandbox/generateInterceptorScript.js +0 -178
  422. package/dist/magicSandbox/index.d.ts +0 -19
  423. package/dist/magicSandbox/index.js +0 -48
  424. package/dist/test/fixtures/basicHTML.d.ts +0 -2
  425. package/dist/test/fixtures/basicHTML.js +0 -19
  426. package/dist/test/fixtures/fetchProxy.d.ts +0 -2
  427. package/dist/test/fixtures/fetchProxy.js +0 -22
  428. package/dist/test/fixtures/index.d.ts +0 -6
  429. package/dist/test/fixtures/index.js +0 -6
  430. package/dist/test/fixtures/jsScriptTag.d.ts +0 -2
  431. package/dist/test/fixtures/jsScriptTag.js +0 -16
  432. package/dist/test/fixtures/magicSandbox/basicHTML.d.ts +0 -5
  433. package/dist/test/fixtures/magicSandbox/basicHTML.js +0 -17
  434. package/dist/test/fixtures/magicSandbox/fetchProxy.d.ts +0 -11
  435. package/dist/test/fixtures/magicSandbox/fetchProxy.js +0 -18
  436. package/dist/test/fixtures/magicSandbox/index.d.ts +0 -6
  437. package/dist/test/fixtures/magicSandbox/index.js +0 -6
  438. package/dist/test/fixtures/magicSandbox/jsScriptTag.d.ts +0 -8
  439. package/dist/test/fixtures/magicSandbox/jsScriptTag.js +0 -13
  440. package/dist/test/fixtures/magicSandbox/protocolTest.d.ts +0 -5
  441. package/dist/test/fixtures/magicSandbox/protocolTest.js +0 -17
  442. package/dist/test/fixtures/magicSandbox/styleTest.d.ts +0 -8
  443. package/dist/test/fixtures/magicSandbox/styleTest.js +0 -19
  444. package/dist/test/fixtures/magicSandbox/xmlTest.d.ts +0 -8
  445. package/dist/test/fixtures/magicSandbox/xmlTest.js +0 -23
  446. package/dist/test/fixtures/protocolTest.d.ts +0 -2
  447. package/dist/test/fixtures/protocolTest.js +0 -19
  448. package/dist/test/fixtures/styleTest.d.ts +0 -2
  449. package/dist/test/fixtures/styleTest.js +0 -22
  450. package/dist/test/fixtures/v1/basicHTML.js +0 -15
  451. package/dist/test/fixtures/v1/fetchProxy.js +0 -12
  452. package/dist/test/fixtures/v1/index.js +0 -6
  453. package/dist/test/fixtures/v1/jsScriptTag.js +0 -9
  454. package/dist/test/fixtures/v1/protocolTest.js +0 -15
  455. package/dist/test/fixtures/v1/styleTest.js +0 -15
  456. package/dist/test/fixtures/v1/xmlTest.js +0 -19
  457. package/dist/test/fixtures/v2/basicBundle.js +0 -5
  458. package/dist/test/fixtures/v2/basicBundleNoExtension.js +0 -5
  459. package/dist/test/fixtures/v2/d3Import.js +0 -7
  460. package/dist/test/fixtures/v2/d3ImportPkg.js +0 -19
  461. package/dist/test/fixtures/v2/d3RosettaImportPkg.js +0 -19
  462. package/dist/test/fixtures/v2/es6Preserve.js +0 -6
  463. package/dist/test/fixtures/v2/generatorSupport.js +0 -6
  464. package/dist/test/fixtures/v2/index.js +0 -15
  465. package/dist/test/fixtures/v2/jsxTranspile.js +0 -6
  466. package/dist/test/fixtures/v2/reactDomImport.js +0 -8
  467. package/dist/test/fixtures/v2/reactDomImportPkg.js +0 -24
  468. package/dist/test/fixtures/v2/reactImport.js +0 -7
  469. package/dist/test/fixtures/v2/reactImportPkg.js +0 -17
  470. package/dist/test/fixtures/v2/sourceMapErrorFixture.js +0 -19
  471. package/dist/test/fixtures/v2/unicodeSupport.js +0 -6
  472. package/dist/test/fixtures/v3/basicIndexJS.js +0 -7
  473. package/dist/test/fixtures/v3/cssImport.js +0 -9
  474. package/dist/test/fixtures/v3/csvImport.js +0 -11
  475. package/dist/test/fixtures/v3/csvStrangeChars.js +0 -12
  476. package/dist/test/fixtures/v3/index.js +0 -9
  477. package/dist/test/fixtures/v3/jsExport.js +0 -10
  478. package/dist/test/fixtures/v3/sourcemap.js +0 -10
  479. package/dist/test/fixtures/v3/svelte.js +0 -18
  480. package/dist/test/fixtures/v3/vizContent.js +0 -11
  481. package/dist/test/fixtures/v3/vizImport.js +0 -85
  482. package/dist/test/fixtures/v4/d3Usage.js +0 -31
  483. package/dist/test/fixtures/v4/esmBuild.js +0 -18
  484. package/dist/test/fixtures/v4/fetchInterception.js +0 -18
  485. package/dist/test/fixtures/v4/index.js +0 -9
  486. package/dist/test/fixtures/v4/jsScriptTagTypeModule.js +0 -18
  487. package/dist/test/fixtures/v4/jsScriptTagTypeModules.js +0 -12
  488. package/dist/test/fixtures/v4/reactHooks.js +0 -47
  489. package/dist/test/fixtures/v4/reactJsx.js +0 -34
  490. package/dist/test/fixtures/v4/threeJsUsage.js +0 -24
  491. package/dist/test/fixtures/v4/typeScriptSupport.js +0 -29
  492. package/dist/test/fixtures/xmlTest.d.ts +0 -2
  493. package/dist/test/fixtures/xmlTest.js +0 -26
  494. package/dist/test/index.test.d.ts +0 -1
  495. package/dist/test/index.test.js +0 -40
  496. package/dist/test/testInBrowser.js +0 -47
  497. package/dist/test/testStackTrace.js +0 -55
  498. package/dist/test/v1.test.js +0 -65
  499. package/dist/test/v2.test.js +0 -121
  500. package/dist/test/v3.test.js +0 -114
  501. package/dist/test/v4.test.js +0 -100
  502. package/dist/types/buildHTML.d.ts +0 -14
  503. package/dist/types/common/packageJson.d.ts +0 -39
  504. package/dist/types/common/packageJson.test.d.ts +0 -1
  505. package/dist/types/common/sucrasePlugin.d.ts +0 -2
  506. package/dist/types/common/virtualFileSystem.d.ts +0 -3
  507. package/dist/types/determineRuntimeVersion.d.ts +0 -3
  508. package/dist/types/determineRuntimeVersion.test.d.ts +0 -1
  509. package/dist/types/index.d.ts +0 -5
  510. package/dist/types/test/fixtures/v1/basicHTML.d.ts +0 -3
  511. package/dist/types/test/fixtures/v1/fetchProxy.d.ts +0 -5
  512. package/dist/types/test/fixtures/v1/index.d.ts +0 -6
  513. package/dist/types/test/fixtures/v1/jsScriptTag.d.ts +0 -4
  514. package/dist/types/test/fixtures/v1/protocolTest.d.ts +0 -3
  515. package/dist/types/test/fixtures/v1/styleTest.d.ts +0 -4
  516. package/dist/types/test/fixtures/v1/xmlTest.d.ts +0 -4
  517. package/dist/types/test/fixtures/v2/basicBundle.d.ts +0 -5
  518. package/dist/types/test/fixtures/v2/basicBundleNoExtension.d.ts +0 -5
  519. package/dist/types/test/fixtures/v2/d3Import.d.ts +0 -4
  520. package/dist/types/test/fixtures/v2/d3ImportPkg.d.ts +0 -5
  521. package/dist/types/test/fixtures/v2/d3RosettaImportPkg.d.ts +0 -5
  522. package/dist/types/test/fixtures/v2/es6Preserve.d.ts +0 -4
  523. package/dist/types/test/fixtures/v2/generatorSupport.d.ts +0 -4
  524. package/dist/types/test/fixtures/v2/index.d.ts +0 -14
  525. package/dist/types/test/fixtures/v2/jsxTranspile.d.ts +0 -4
  526. package/dist/types/test/fixtures/v2/reactDomImport.d.ts +0 -4
  527. package/dist/types/test/fixtures/v2/reactDomImportPkg.d.ts +0 -5
  528. package/dist/types/test/fixtures/v2/reactImport.d.ts +0 -4
  529. package/dist/types/test/fixtures/v2/reactImportPkg.d.ts +0 -5
  530. package/dist/types/test/fixtures/v2/sourceMapErrorFixture.d.ts +0 -5
  531. package/dist/types/test/fixtures/v2/unicodeSupport.d.ts +0 -4
  532. package/dist/types/test/fixtures/v3/basicIndexJS.d.ts +0 -3
  533. package/dist/types/test/fixtures/v3/cssImport.d.ts +0 -4
  534. package/dist/types/test/fixtures/v3/csvImport.d.ts +0 -4
  535. package/dist/types/test/fixtures/v3/csvStrangeChars.d.ts +0 -4
  536. package/dist/types/test/fixtures/v3/index.d.ts +0 -9
  537. package/dist/types/test/fixtures/v3/jsExport.d.ts +0 -4
  538. package/dist/types/test/fixtures/v3/sourcemap.d.ts +0 -3
  539. package/dist/types/test/fixtures/v3/svelte.d.ts +0 -4
  540. package/dist/types/test/fixtures/v3/vizContent.d.ts +0 -2
  541. package/dist/types/test/fixtures/v3/vizImport.d.ts +0 -6
  542. package/dist/types/test/fixtures/v4/d3Usage.d.ts +0 -5
  543. package/dist/types/test/fixtures/v4/esmBuild.d.ts +0 -5
  544. package/dist/types/test/fixtures/v4/fetchInterception.d.ts +0 -5
  545. package/dist/types/test/fixtures/v4/index.d.ts +0 -9
  546. package/dist/types/test/fixtures/v4/jsScriptTagTypeModule.d.ts +0 -4
  547. package/dist/types/test/fixtures/v4/jsScriptTagTypeModules.d.ts +0 -5
  548. package/dist/types/test/fixtures/v4/reactHooks.d.ts +0 -6
  549. package/dist/types/test/fixtures/v4/reactJsx.d.ts +0 -6
  550. package/dist/types/test/fixtures/v4/threeJsUsage.d.ts +0 -4
  551. package/dist/types/test/fixtures/v4/typeScriptSupport.d.ts +0 -5
  552. package/dist/types/test/testInBrowser.d.ts +0 -15
  553. package/dist/types/test/testStackTrace.d.ts +0 -9
  554. package/dist/types/test/v1.test.d.ts +0 -1
  555. package/dist/types/test/v2.test.d.ts +0 -1
  556. package/dist/types/test/v3.test.d.ts +0 -1
  557. package/dist/types/test/v4.test.d.ts +0 -1
  558. package/dist/types/types.d.ts +0 -1
  559. package/dist/types/utils/vizContentToFileCollection.d.ts +0 -8
  560. package/dist/types/utils/vizContentToFileCollection.test.d.ts +0 -1
  561. package/dist/types/v2/computeBundleJSV2.d.ts +0 -7
  562. package/dist/types/v2/getComputedIndexHtml.d.ts +0 -4
  563. package/dist/types/v2/getComputedIndexHtml.test.d.ts +0 -1
  564. package/dist/types/v2/index.d.ts +0 -1
  565. package/dist/types/v2/v2Build.d.ts +0 -7
  566. package/dist/types/v3/cleanRollupErrorMessage.d.ts +0 -4
  567. package/dist/types/v3/computeBundleJSV3.d.ts +0 -17
  568. package/dist/types/v3/createVizContent.d.ts +0 -8
  569. package/dist/types/v3/extractVizImport.d.ts +0 -6
  570. package/dist/types/v3/extractVizImport.test.d.ts +0 -1
  571. package/dist/types/v3/htmlTemplate.d.ts +0 -5
  572. package/dist/types/v3/index.d.ts +0 -1
  573. package/dist/types/v3/parseId.d.ts +0 -6
  574. package/dist/types/v3/parseId.test.d.ts +0 -1
  575. package/dist/types/v3/setupV3Runtime.d.ts +0 -15
  576. package/dist/types/v3/slugCache.d.ts +0 -11
  577. package/dist/types/v3/slugCache.test.d.ts +0 -1
  578. package/dist/types/v3/transformDSV/dsvParseSrc.d.ts +0 -1
  579. package/dist/types/v3/transformDSV/index.d.ts +0 -2
  580. package/dist/types/v3/transformSvelte.d.ts +0 -8
  581. package/dist/types/v3/types.d.ts +0 -65
  582. package/dist/types/v3/v3Build.d.ts +0 -14
  583. package/dist/types/v3/vizCache.d.ts +0 -10
  584. package/dist/types/v3/vizCache.test.d.ts +0 -1
  585. package/dist/types/v3/vizLoad.d.ts +0 -7
  586. package/dist/types/v3/vizResolve.d.ts +0 -7
  587. package/dist/types/v4/index.d.ts +0 -10
  588. package/dist/types.d.ts +0 -1
  589. package/dist/types.js +0 -1
  590. package/dist/utils/getFileText.d.ts +0 -2
  591. package/dist/utils/getFileText.js +0 -13
  592. package/dist/utils/getFileText.test.d.ts +0 -1
  593. package/dist/utils/getFileText.test.js +0 -72
  594. package/dist/utils/vizContentToFileCollection.d.ts +0 -7
  595. package/dist/utils/vizContentToFileCollection.js +0 -19
  596. package/dist/utils/vizContentToFileCollection.test.d.ts +0 -1
  597. package/dist/utils/vizContentToFileCollection.test.js +0 -75
  598. package/dist/v2/computeBundleJSV2.js +0 -29
  599. package/dist/v2/getComputedIndexHtml.js +0 -81
  600. package/dist/v2/getComputedIndexHtml.test.js +0 -134
  601. package/dist/v2/index.js +0 -1
  602. package/dist/v2/v2Build.js +0 -11
  603. package/dist/v3/cleanRollupErrorMessage.js +0 -9
  604. package/dist/v3/computeBundleJSV3.js +0 -48
  605. package/dist/v3/createVizContent.js +0 -23
  606. package/dist/v3/extractVizImport.js +0 -23
  607. package/dist/v3/extractVizImport.test.js +0 -30
  608. package/dist/v3/htmlTemplate.js +0 -89
  609. package/dist/v3/index.js +0 -1
  610. package/dist/v3/parseId.js +0 -5
  611. package/dist/v3/parseId.test.js +0 -25
  612. package/dist/v3/setupV3Runtime.js +0 -341
  613. package/dist/v3/slugCache.js +0 -35
  614. package/dist/v3/slugCache.test.js +0 -105
  615. package/dist/v3/transformDSV/dsvParseSrc.js +0 -121
  616. package/dist/v3/transformDSV/index.js +0 -40
  617. package/dist/v3/transformSvelte.js +0 -77
  618. package/dist/v3/types.js +0 -1
  619. package/dist/v3/v3Build.js +0 -30
  620. package/dist/v3/vizCache.js +0 -36
  621. package/dist/v3/vizCache.test.js +0 -98
  622. package/dist/v3/vizLoad.js +0 -46
  623. package/dist/v3/vizResolve.js +0 -69
  624. package/dist/v4/index.js +0 -134
@@ -1,15 +1 @@
1
- import { VizContent, VizId } from "@vizhub/viz-types";
2
- export type V3Runtime = {
3
- handleCodeChange: (content: VizContent) => void;
4
- invalidateVizCache: (changedVizIds: Array<VizId>) => void;
5
- resetSrcdoc: (changedVizIds: Array<VizId>) => void;
6
- };
7
- export declare const setupV3Runtime: ({ vizId, iframe, setSrcdocErrorMessage, getLatestContent, resolveSlugKey, writeFile, worker, }: {
8
- vizId: VizId;
9
- iframe: HTMLIFrameElement;
10
- setSrcdocErrorMessage: (error: string | null) => void;
11
- getLatestContent: (vizId: VizId) => Promise<VizContent>;
12
- resolveSlugKey: (slugKey: string) => Promise<VizId>;
13
- writeFile: (fileName: string, content: string) => void;
14
- worker: Worker;
15
- }) => V3Runtime;
1
+ //# sourceMappingURL=setupV3Runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setupV3Runtime.d.ts","sourceRoot":"","sources":["../../src/v3/setupV3Runtime.ts"],"names":[],"mappings":""}
@@ -9,3 +9,4 @@ export declare const createSlugCache: ({ initialMappings, handleCacheMiss, }: {
9
9
  initialMappings?: Record<SlugIdentifier, VizId>;
10
10
  handleCacheMiss?: (slug: SlugIdentifier) => Promise<VizId>;
11
11
  }) => SlugCache;
12
+ //# sourceMappingURL=slugCache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slugCache.d.ts","sourceRoot":"","sources":["../../src/v3/slugCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE1C,MAAM,MAAM,cAAc,GAAG,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC;AAEnD,MAAM,MAAM,SAAS,GAAG;IACtB,GAAG,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC;IAC9C,GAAG,EAAE,CAAC,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,KAAK,KAAK,IAAI,CAAC;IAClD,UAAU,EAAE,CAAC,IAAI,EAAE,cAAc,KAAK,IAAI,CAAC;CAC5C,CAAC;AAIF,eAAO,MAAM,eAAe,GAAI,uCAG7B;IACD,eAAe,CAAC,EAAE,MAAM,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;IAChD,eAAe,CAAC,EAAE,CAChB,IAAI,EAAE,cAAc,KACjB,OAAO,CAAC,KAAK,CAAC,CAAC;CACrB,KAAG,SAmDH,CAAC"}
@@ -1 +1,2 @@
1
1
  export {};
2
+ //# sourceMappingURL=slugCache.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slugCache.test.d.ts","sourceRoot":"","sources":["../../src/v3/slugCache.test.ts"],"names":[],"mappings":""}
@@ -1 +1,2 @@
1
1
  export declare const dsvParseSrc = "var EOL = {},\n EOF = {},\n QUOTE = 34,\n NEWLINE = 10,\n RETURN = 13;\n\nfunction objectConverter(columns) {\n return new Function(\n 'd',\n 'return {' +\n columns\n .map(function (name, i) {\n return (\n JSON.stringify(name) + ': d[' + i + '] || \"\"'\n );\n })\n .join(',') +\n '}',\n );\n}\n\nfunction customConverter(columns, f) {\n var object = objectConverter(columns);\n return function (row, i) {\n return f(object(row), i, columns);\n };\n}\n\nfunction dsv(delimiter) {\n var DELIMITER = delimiter.charCodeAt(0);\n\n function parse(text, f) {\n var convert,\n columns,\n rows = parseRows(text, function (row, i) {\n if (convert) return convert(row, i - 1);\n (columns = row),\n (convert = f\n ? customConverter(row, f)\n : objectConverter(row));\n });\n rows.columns = columns || [];\n return rows;\n }\n\n function parseRows(text, f) {\n var rows = [], // output rows\n N = text.length,\n I = 0, // current character index\n n = 0, // current line number\n t, // current token\n eof = N <= 0, // current token followed by EOF?\n eol = false; // current token followed by EOL?\n\n // Strip the trailing newline.\n if (text.charCodeAt(N - 1) === NEWLINE) --N;\n if (text.charCodeAt(N - 1) === RETURN) --N;\n\n function token() {\n if (eof) return EOF;\n if (eol) return (eol = false), EOL;\n\n // Unescape quotes.\n var i,\n j = I,\n c;\n if (text.charCodeAt(j) === QUOTE) {\n while (\n (I++ < N && text.charCodeAt(I) !== QUOTE) ||\n text.charCodeAt(++I) === QUOTE\n );\n if ((i = I) >= N) eof = true;\n else if ((c = text.charCodeAt(I++)) === NEWLINE)\n eol = true;\n else if (c === RETURN) {\n eol = true;\n if (text.charCodeAt(I) === NEWLINE) ++I;\n }\n return text.slice(j + 1, i - 1).replace(/\"\"/g, '\"');\n }\n\n // Find next delimiter or newline.\n while (I < N) {\n if ((c = text.charCodeAt((i = I++))) === NEWLINE)\n eol = true;\n else if (c === RETURN) {\n eol = true;\n if (text.charCodeAt(I) === NEWLINE) ++I;\n } else if (c !== DELIMITER) continue;\n return text.slice(j, i);\n }\n\n // Return last token before EOF.\n return (eof = true), text.slice(j, N);\n }\n\n while ((t = token()) !== EOF) {\n var row = [];\n while (t !== EOL && t !== EOF)\n row.push(t), (t = token());\n if (f && (row = f(row, n++)) == null) continue;\n rows.push(row);\n }\n\n return rows;\n }\n\n return {\n parse: parse,\n };\n}\n\nvar csv = dsv(',');\n\nvar csvParse = csv.parse;\n\nvar tsv = dsv('\t');\n\nvar tsvParse = tsv.parse;\n\nexport { csvParse, tsvParse };";
2
+ //# sourceMappingURL=dsvParseSrc.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dsvParseSrc.d.ts","sourceRoot":"","sources":["../../../src/v3/transformDSV/dsvParseSrc.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,q3FAwHO,CAAC"}
@@ -1,2 +1,3 @@
1
1
  import { InputPluginOption } from "rollup";
2
2
  export declare const transformDSV: () => InputPluginOption;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/v3/transformDSV/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAe3C,eAAO,MAAM,YAAY,QAAO,iBAsC9B,CAAC"}
@@ -1,4 +1,4 @@
1
- import { InputPluginOption } from "rollup";
1
+ import type { InputPluginOption } from "rollup";
2
2
  export type SvelteCompiler = (code: string, options: any) => {
3
3
  js: string;
4
4
  };
@@ -6,3 +6,4 @@ export declare const svelteCompilerUrl = "https://cdn.jsdelivr.net/npm/svelte@4.
6
6
  export declare const transformSvelte: ({ getSvelteCompiler, }: {
7
7
  getSvelteCompiler?: () => Promise<any>;
8
8
  }) => InputPluginOption;
9
+ //# sourceMappingURL=transformSvelte.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transformSvelte.d.ts","sourceRoot":"","sources":["../../src/v3/transformSvelte.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAUhD,MAAM,MAAM,cAAc,GAAG,CAC3B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,GAAG,KACT;IAAE,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC;AAMpB,eAAO,MAAM,iBAAiB,2DAA8B,CAAC;AAO7D,eAAO,MAAM,eAAe,GAAI,wBAE7B;IACD,iBAAiB,CAAC,EAAE,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC;CACxC,KAAG,iBAoFF,CAAC"}
@@ -1,4 +1,4 @@
1
- import { VizContent, VizId } from "@vizhub/viz-types";
1
+ import type { VizContent, VizId } from "@vizhub/viz-types";
2
2
  import type { PackageJson } from "../common/packageJson";
3
3
  export type V3BuildResult = {
4
4
  src: string | undefined;
@@ -63,3 +63,4 @@ export type V3WindowMessage = {
63
63
  type: "runError";
64
64
  error: Error;
65
65
  };
66
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/v3/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGzD,MAAM,MAAM,aAAa,GAAG;IAE1B,GAAG,EAAE,MAAM,GAAG,SAAS,CAAC;IACxB,GAAG,EAAE,WAAW,GAAG,SAAS,CAAC;IAC7B,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IAC9B,IAAI,EAAE,MAAM,CAAC;IAKb,QAAQ,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAC;CACpC,CAAC;AAGF,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAIF,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC;AAGvC,MAAM,MAAM,eAAe,GAMvB;IAAE,IAAI,EAAE,gBAAgB,CAAC;IAAC,KAAK,EAAE,KAAK,CAAA;CAAE,GAKxC;IACE,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,UAAU,CAAC;CACrB,GAKD;IACE,IAAI,EAAE,cAAc,CAAC;IACrB,KAAK,EAAE,KAAK,CAAC;IACb,eAAe,EAAE,OAAO,CAAC;CAC1B,GASD;IACE,IAAI,EAAE,eAAe,CAAC;IACtB,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,GAMD;IACE,IAAI,EAAE,2BAA2B,CAAC;IAClC,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;CAC7B,GAKD;IACE,IAAI,EAAE,4BAA4B,CAAC;CACpC,GAKD;IACE,IAAI,EAAE,oBAAoB,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB,GAKD;IACE,IAAI,EAAE,qBAAqB,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,KAAK,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB,GAMD;IACE,IAAI,EAAE,oBAAoB,CAAC;IAC3B,KAAK,EAAE,KAAK,CAAC;IACb,aAAa,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;CAC7B,GAQD;IACE,IAAI,EAAE,qBAAqB,CAAC;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,KAAK,CAAC;CACf,CAAC;AAGN,MAAM,MAAM,eAAe,GAIvB;IACE,IAAI,EAAE,OAAO,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb,GAKD;IACE,IAAI,EAAE,QAAQ,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;IACZ,EAAE,EAAE,iBAAiB,CAAC;CACvB,GAMD;IACE,IAAI,EAAE,SAAS,CAAC;CACjB,GAMD;IACE,IAAI,EAAE,UAAU,CAAC;IACjB,KAAK,EAAE,KAAK,CAAC;CACd,CAAC"}
@@ -1,8 +1,9 @@
1
1
  import { RollupBuild, RollupOptions } from "rollup";
2
- import { VizCache } from "./vizCache";
2
+ import { VizCache } from "./vizCache.js";
3
3
  import { FileCollection, VizId } from "@vizhub/viz-types";
4
- import { SlugCache } from "./slugCache";
5
- import { SvelteCompiler } from "./transformSvelte";
4
+ import { SlugCache } from "./slugCache.js";
5
+ import { SvelteCompiler } from "./transformSvelte.js";
6
+ import { BuildResult } from "../build/types";
6
7
  export declare const v3Build: ({ files, rollup, enableSourcemap, vizCache, vizId, slugCache, getSvelteCompiler, }: {
7
8
  files: FileCollection;
8
9
  rollup: (options: RollupOptions) => Promise<RollupBuild>;
@@ -11,4 +12,5 @@ export declare const v3Build: ({ files, rollup, enableSourcemap, vizCache, vizId
11
12
  vizId: VizId;
12
13
  slugCache?: SlugCache;
13
14
  getSvelteCompiler?: () => Promise<SvelteCompiler>;
14
- }) => Promise<string>;
15
+ }) => Promise<BuildResult>;
16
+ //# sourceMappingURL=v3Build.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"v3Build.d.ts","sourceRoot":"","sources":["../../src/v3/v3Build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAIpD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAG1D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAMtD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,eAAO,MAAM,OAAO,GAAU,oFAQ3B;IACD,KAAK,EAAE,cAAc,CAAC;IACtB,MAAM,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IACzD,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,EAAE,QAAQ,CAAC;IACnB,KAAK,EAAE,KAAK,CAAC;IACb,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,iBAAiB,CAAC,EAAE,MAAM,OAAO,CAAC,cAAc,CAAC,CAAC;CACnD,KAAG,OAAO,CAAC,WAAW,CAuDtB,CAAC"}
@@ -8,3 +8,4 @@ export declare const createVizCache: ({ initialContents, handleCacheMiss, }: {
8
8
  initialContents: Array<VizContent>;
9
9
  handleCacheMiss?: (vizId: VizId) => Promise<VizContent>;
10
10
  }) => VizCache;
11
+ //# sourceMappingURL=vizCache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vizCache.d.ts","sourceRoot":"","sources":["../../src/v3/vizCache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAEtD,MAAM,MAAM,QAAQ,GAAG;IACrB,GAAG,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;IAC5C,GAAG,EAAE,CAAC,OAAO,EAAE,UAAU,KAAK,IAAI,CAAC;IACnC,UAAU,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC,CAAC;AAKF,eAAO,MAAM,cAAc,GAAI,uCAG5B;IACD,eAAe,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IACnC,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;CACzD,KAAG,QAiDH,CAAC"}
@@ -1 +1,2 @@
1
1
  export {};
2
+ //# sourceMappingURL=vizCache.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vizCache.test.d.ts","sourceRoot":"","sources":["../../src/v3/vizCache.test.ts"],"names":[],"mappings":""}
@@ -1,7 +1,8 @@
1
1
  import { InputPluginOption } from "rollup";
2
- import { ResolvedVizFileId } from "./types";
3
- import { VizCache } from "./vizCache";
2
+ import type { ResolvedVizFileId } from "./types";
3
+ import { VizCache } from "./vizCache.js";
4
4
  export declare const vizLoad: ({ vizCache, trackCSSImport, }: {
5
5
  vizCache: VizCache;
6
6
  trackCSSImport: (cssFile: ResolvedVizFileId) => void;
7
7
  }) => InputPluginOption;
8
+ //# sourceMappingURL=vizLoad.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vizLoad.d.ts","sourceRoot":"","sources":["../../src/v3/vizLoad.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAG3C,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAEjD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAOzC,eAAO,MAAM,OAAO,GAAI,+BAGrB;IACD,QAAQ,EAAE,QAAQ,CAAC;IACnB,cAAc,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,IAAI,CAAC;CACtD,KAAG,iBAkDF,CAAC"}
@@ -1,7 +1,8 @@
1
1
  import { InputPluginOption } from "rollup";
2
2
  import { VizId } from "@vizhub/viz-types";
3
- import { SlugCache } from "./slugCache";
3
+ import { SlugCache } from "./slugCache.js";
4
4
  export declare const vizResolve: ({ vizId, slugCache, }: {
5
5
  vizId: VizId;
6
6
  slugCache?: SlugCache;
7
7
  }) => InputPluginOption;
8
+ //# sourceMappingURL=vizResolve.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vizResolve.d.ts","sourceRoot":"","sources":["../../src/v3/vizResolve.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,iBAAiB,EAAE,MAAM,QAAQ,CAAC;AAC3C,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAK1C,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAI3C,eAAO,MAAM,UAAU,GAAI,uBAGxB;IACD,KAAK,EAAE,KAAK,CAAC;IACb,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB,KAAG,iBAoFF,CAAC"}
@@ -0,0 +1,12 @@
1
+ import type { RollupBuild, RollupOptions } from "rollup";
2
+ import { FileCollection } from "@vizhub/viz-types";
3
+ /**
4
+ * Bundle a single ES module entry point
5
+ */
6
+ export declare const bundleESModule: ({ entryPoint, files, rollup, enableSourcemap, }: {
7
+ entryPoint: string;
8
+ files: FileCollection;
9
+ rollup: (o: RollupOptions) => Promise<RollupBuild>;
10
+ enableSourcemap?: boolean;
11
+ }) => Promise<string>;
12
+ //# sourceMappingURL=bundleModule.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bundleModule.d.ts","sourceRoot":"","sources":["../../src/v4/bundleModule.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,aAAa,EAEd,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAKnD;;GAEG;AACH,eAAO,MAAM,cAAc,GAAU,iDAKlC;IACD,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,cAAc,CAAC;IACtB,MAAM,EAAE,CAAC,CAAC,EAAE,aAAa,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IACnD,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,KAAG,OAAO,CAAC,MAAM,CAuBjB,CAAC"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Extract module script entry points from index.html
3
+ */
4
+ export declare const extractModuleEntryPoints: (html: string) => string[];
5
+ //# sourceMappingURL=extractEntryPoints.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extractEntryPoints.d.ts","sourceRoot":"","sources":["../../src/v4/extractEntryPoints.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,wBAAwB,GACnC,MAAM,MAAM,KACX,MAAM,EAeR,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { FileCollection } from "@vizhub/viz-types";
2
+ /**
3
+ * Generate an import map for all dependencies
4
+ */
5
+ export declare const generateImportMap: (files: FileCollection) => string | null;
6
+ //# sourceMappingURL=importMap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"importMap.d.ts","sourceRoot":"","sources":["../../src/v4/importMap.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAOnD;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAC5B,OAAO,cAAc,KACpB,MAAM,GAAG,IAcX,CAAC"}
@@ -1,10 +1,13 @@
1
1
  import type { RollupBuild, RollupOptions } from "rollup";
2
2
  import { FileCollection } from "@vizhub/viz-types";
3
+ import { extractModuleEntryPoints } from "./extractEntryPoints.js";
3
4
  /**
4
5
  * Build for v4 runtime
5
6
  */
6
7
  export declare const v4Build: ({ files, rollup, enableSourcemap, }: {
7
8
  files: FileCollection;
8
- rollup: (options: RollupOptions) => Promise<RollupBuild>;
9
+ rollup: (o: RollupOptions) => Promise<RollupBuild>;
9
10
  enableSourcemap?: boolean;
10
11
  }) => Promise<FileCollection>;
12
+ export { extractModuleEntryPoints };
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/v4/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,wBAAwB,EAAE,MAAM,yBAAyB,CAAC;AAMnE;;GAEG;AACH,eAAO,MAAM,OAAO,GAAU,qCAI3B;IACD,KAAK,EAAE,cAAc,CAAC;IACtB,MAAM,EAAE,CAAC,CAAC,EAAE,aAAa,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IACnD,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,KAAG,OAAO,CAAC,cAAc,CA2BzB,CAAC;AAGF,OAAO,EAAE,wBAAwB,EAAE,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Does the html already contain a <tag>…</tag> pair?
3
+ */
4
+ export declare const hasTagPair: (html: string, tag: string) => boolean;
5
+ /**
6
+ * Ensure <html><head></head><body></body> skeleton exists.
7
+ */
8
+ export declare const normaliseSkeleton: (raw: string) => string;
9
+ /**
10
+ * Escape characters so they can appear literally inside a RegExp.
11
+ */
12
+ export declare const escapeRegExp: (s: string) => string;
13
+ /**
14
+ * Inject markup immediately before </head> or </body>.
15
+ */
16
+ export declare const injectBeforeClose: (html: string, closing: "</head>" | "</body>", markup: string) => string;
17
+ //# sourceMappingURL=stringUtils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stringUtils.d.ts","sourceRoot":"","sources":["../../src/v4/stringUtils.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,eAAO,MAAM,UAAU,GAAI,MAAM,MAAM,EAAE,KAAK,MAAM,YAEX,CAAC;AAE1C;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAAI,KAAK,MAAM,KAAG,MAW/C,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,GAAI,GAAG,MAAM,WACI,CAAC;AAE3C;;GAEG;AACH,eAAO,MAAM,iBAAiB,GAC5B,MAAM,MAAM,EACZ,SAAS,SAAS,GAAG,SAAS,EAC9B,QAAQ,MAAM,WAKb,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { FileCollection } from "@vizhub/viz-types";
2
+ /**
3
+ * Update HTML to include import map and bundled modules
4
+ */
5
+ export declare const updateHTML: (files: FileCollection, bundled: Map<string, string>) => string;
6
+ //# sourceMappingURL=updateHTML.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateHTML.d.ts","sourceRoot":"","sources":["../../src/v4/updateHTML.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAQnD;;GAEG;AACH,eAAO,MAAM,UAAU,GACrB,OAAO,cAAc,EACrB,SAAS,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,KAC3B,MAuCF,CAAC"}
@@ -0,0 +1,9 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const w=require("@rollup/browser"),f=require("@vizhub/viz-utils");require("sucrase");const u=require("./createVizContent-BOSPq-Jv.cjs"),h=require("magic-sandbox"),v=t=>{if(Object.keys(t).length===0)return null;const e="index.html"in t,n="index.js"in t,i="index.jsx"in t;return e?t["index.html"].includes('type="module"')?"v4":n||i?"v2":"v1":!e&&n?"v3":null},m=(t,e)=>new RegExp(`<${e}\\b`,"i").test(t)&&new RegExp(`</${e}>`,"i").test(t),E=t=>{const e=t.trim();return m(e,"html")&&m(e,"head")&&m(e,"body")?e:`<html><head></head><body>${e}</body></html>`},R=(t,e)=>t.replace(new RegExp(`<script[^>]*src=["'][^"']*${e.source}[^"']*["'][^>]*>\\s*<\/script>`,"gi"),""),b=(t,e,n)=>t.replace(new RegExp(e,"i"),`${n}${e}`),S=(t,e)=>{let n=E(t);const i=Object.entries(u.dependencies(e));if(i.length){const r=u.getConfiguredLibraries(e);i.forEach(([s])=>{n=R(n,new RegExp(`${s}@`))});const c=i.map(([s,a])=>u.dependencySource({name:s,version:a},r)).map(s=>`<script src="${s}"><\/script>`).join(`
2
+ `);n=b(n,"</head>",c+`
3
+ `)}if(e["bundle.js"]!==void 0||e["index.js"]!==void 0){const r='<script src="bundle.js"><\/script>',c=/<script\b[^>]*\bsrc=["']bundle\.js["'][^>]*>\s*<\/script>/gi,s=[...n.matchAll(c)];s.length===1&&(()=>{const d=s[0].index??-1;if(d===-1)return!1;const l=n.search(/<body\b[^>]*>/i),p=n.search(/<\/body>/i);return l!==-1&&p!==-1&&d>l&&d<p})()||(n=n.replace(c,""),n=b(n,"</body>",r))}return/^\s*<!DOCTYPE/i.test(n)?n:`<!DOCTYPE html>${n}`},C=t=>{const e=t["index.html"];return!e&&!t["index.js"]&&!t["bundle.js"]?"":S(e||"<!DOCTYPE html><html><head></head><body></body></html>",t)},x=t=>{let e=t.replace(/^\.\//,"");return e=e.replace(/\/+/g,"/"),e=e.replace(/\/$/,""),e},j=(t,e)=>{const n=t.includes("/")?t.slice(0,t.lastIndexOf("/")):"",i=e.split("/"),o=n?n.split("/"):[];for(const r of i)r===".."?o.pop():r!=="."&&r!==""&&o.push(r);return o.join("/")},y=t=>({name:"virtual-file-system",resolveId(e,n){if(e.startsWith("./")||e.startsWith("../")){const o=x(n?j(n,e):e);if(t[o])return o;const r=[".js",".jsx",".ts",".tsx"];for(const c of r){const s=o+c;if(t[s])return s}}if(t[e])return e;const i=[".js",".jsx",".ts",".tsx"];for(const o of i){const r=e+o;if(t[r])return r}return null},load(e){return t[e]?t[e]:null}}),M=async({files:t,rollup:e,enableSourcemap:n=!0})=>{if(!t["index.js"])throw new Error("Missing index.js");const o={input:"./index.js",plugins:[y(t),u.sucrasePlugin()],onwarn(d,l){d.code!=="UNRESOLVED_IMPORT"&&l(d)}},r={format:"iife",sourcemap:n},c=u.packageJSON(t);if(c){const d=u.getGlobals(c);d&&(o.external=Object.keys(d),r.globals=d)}const s=await e(o),{output:a}=await s.generate(r);return a[0].code},$=async({files:t,rollup:e,enableSourcemap:n})=>({...t,"bundle.js":await M({files:t,rollup:e,enableSourcemap:n}),"index.html":C(t)}),P=t=>{const e=[],n=/<script\b([^>]*)>[\s\S]*?<\/script>/gi;let i;for(;(i=n.exec(t))!==null;){const o=i[1];if(!/\btype\s*=\s*["']module["']/i.test(o))continue;const r=o.match(/\bsrc\s*=\s*["']([^"']+)["']/i);r&&e.push(r[1])}return e},q=async({entryPoint:t,files:e,rollup:n,enableSourcemap:i=!0})=>{const o={input:`./${t}`,plugins:[y(e),u.sucrasePlugin()],external:s=>e[s]?!1:!s.startsWith("./"),onwarn(s,a){a(s)}},r=await n(o),{output:c}=await r.generate({format:"es",sourcemap:i});return c[0].code},g=(t,e)=>new RegExp(`<${e}\\b`,"i").test(t)&&new RegExp(`</${e}>`,"i").test(t),O=t=>{const e=t.trim();return g(e,"html")&&g(e,"head")&&g(e,"body")?e:`<html><head></head><body>${e}</body></html>`},T=t=>t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),I=(t,e,n)=>t.replace(new RegExp(e,"i"),`${n}${e}`),k=t=>{const e=u.dependencies(t);if(Object.keys(e).length===0)return null;const n=u.getConfiguredLibraries(t),i={};for(const[o,r]of Object.entries(e))i[o]=u.dependencySource({name:o,version:r},n);return JSON.stringify({imports:i},null,2)},B=(t,e)=>{if(!t["index.html"])return"";let n=O(t["index.html"]);e.forEach((o,r)=>{const c=new RegExp(`<script\\b[^>]*\\bsrc=["']${T(r)}["'][^>]*>[^<]*<\/script>`,"gi");n=n.replace(c,`<script type="module">
4
+ ${o}
5
+ <\/script>`)});const i=k(t);if(i&&!/<script\b[^>]*type=["']importmap["'][^>]*>/i.test(n)){const r=`<script type="importmap">
6
+ ${i}
7
+ <\/script>
8
+ `;n=I(n,"</head>",r)}return/^\s*<!DOCTYPE/i.test(n)?n:`<!DOCTYPE html>${n}`},V=async({files:t,rollup:e,enableSourcemap:n=!0})=>{const i=t["index.html"]||"",o=P(i);if(o.length===0)return t;const r=new Map;for(const s of o){const a=await q({entryPoint:s,files:t,rollup:e,enableSourcemap:n});r.set(s,a)}const c=B(t,r);return{...t,"index.html":c}},z=async({files:t,rollup:e,enableSourcemap:n=!0,vizCache:i,vizId:o,slugCache:r,getSvelteCompiler:c})=>{var a;if(!t&&!i)throw new Error("Either files or vizCache is required");if(!t&&i&&!o)throw new Error("vizId is required when using vizCache");if(!t&&i&&o&&(t=f.vizFilesToFileCollection((a=await i.get(o))==null?void 0:a.files)),!t)throw new Error("Upable to extract viz files");const s=v(t);if(s==="v1")return{html:h.magicSandbox(t)};if(s==="v2"){if(!e)throw new Error("Rollup is required for v2 runtime");return{html:h.magicSandbox(await $({files:t,rollup:e,enableSourcemap:n}))}}if(s==="v3"){if(!e)throw new Error("Rollup is required for v3 runtime");if(!i&&!o){const d=u.createVizContent(t);o=d.id,i=u.createVizCache({initialContents:[d],handleCacheMiss:async()=>{throw new Error("Cache miss handler not implemented")}})}if(!i)throw new Error("vizCache is required for v3 runtime");if(!o)throw new Error("vizId is required for v3 runtime");return await u.v3Build({files:t,rollup:e,vizCache:i,vizId:o,slugCache:r,getSvelteCompiler:c})}if(s==="v4"){if(!e)throw new Error("Rollup is required for v4 runtime");return{html:h.magicSandbox(await V({files:t,rollup:e,enableSourcemap:n}))}}throw new Error(`Unsupported runtime version: ${s}`)},J=()=>{const t=async()=>{const r=await fetch(u.svelteCompilerUrl).then(c=>c.text());return(0,eval)(r),self.svelte.compile},e=new Map,n=new Map,i=u.createVizCache({initialContents:[],handleCacheMiss:async r=>(postMessage({type:"contentRequest",vizId:r}),new Promise(s=>{e.set(r,s)}))}),o=u.createSlugCache({initialMappings:{},handleCacheMiss:async r=>{const c=u.generateRequestId();return postMessage({type:"resolveSlugRequest",slugKey:r,requestId:c}),new Promise(a=>{n.set(c,a)})}});addEventListener("message",async r=>{const c=r.data;switch(c.type){case"buildRequest":{const{files:s,enableSourcemap:a,requestId:d}=c;try{const p={type:"buildResponse",buildResult:await z({files:s,enableSourcemap:a,rollup:w.rollup,getSvelteCompiler:t,slugCache:o}),requestId:d};postMessage(p)}catch(l){const p={type:"buildResponse",error:""+l,requestId:d};postMessage(p)}break}case"contentResponse":{const s=e.get(c.vizId);s&&(s(c.content),e.delete(c.vizId));break}case"invalidateVizCacheRequest":{const{changedVizIds:s}=c;for(const a of s)i.invalidate(a);postMessage({type:"invalidateVizCacheResponse"});break}case"resolveSlugResponse":{const s=n.get(c.requestId);s&&(s(c.vizId),n.delete(c.requestId));break}}})};exports.initWorker=J;
9
+ //# sourceMappingURL=worker.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker.cjs","sources":["../src/build/determineRuntimeVersion.ts","../src/v2/getComputedIndexHtml.ts","../src/common/virtualFileSystem.ts","../src/v2/computeBundleJSV2.ts","../src/v2/v2Build.ts","../src/v4/extractEntryPoints.ts","../src/v4/bundleModule.ts","../src/v4/stringUtils.ts","../src/v4/importMap.ts","../src/v4/updateHTML.ts","../src/v4/index.ts","../src/build/build.ts","../src/orchestration/worker.ts"],"sourcesContent":["import { FileCollection } from \"@vizhub/viz-types\";\nimport { runtimeVersion } from \"./types\";\n\nexport const determineRuntimeVersion = (\n files: FileCollection,\n): runtimeVersion | null => {\n if (Object.keys(files).length === 0) {\n return null;\n }\n\n const hasIndexHTML = \"index.html\" in files;\n\n const hasIndexJS = \"index.js\" in files;\n const hasIndexJSX = \"index.jsx\" in files;\n\n if (hasIndexHTML) {\n const hasModuleScript =\n files[\"index.html\"].includes('type=\"module\"');\n if (hasModuleScript) {\n return \"v4\";\n }\n\n if (hasIndexJS || hasIndexJSX) {\n return \"v2\";\n }\n return \"v1\";\n }\n\n if (!hasIndexHTML && hasIndexJS) {\n return \"v3\";\n }\n\n return null;\n};\n","import { FileCollection } from \"@vizhub/viz-types\";\nimport {\n dependencies,\n getConfiguredLibraries,\n dependencySource,\n} from \"../common/packageJson\";\n\nconst DEBUG = false;\n\n/* ------------------------------------------------------------------ */\n/* tiny helpers */\n/* ------------------------------------------------------------------ */\n\nconst hasTagPair = (html: string, tag: string) =>\n new RegExp(`<${tag}\\\\b`, \"i\").test(html) &&\n new RegExp(`</${tag}>`, \"i\").test(html);\n\n/** Make sure we have a complete <html><head></head><body></body> skeleton. */\nconst normaliseSkeleton = (raw: string): string => {\n const trimmed = raw.trim();\n\n // If it already contains a *complete* html‑head‑body trio we keep it.\n if (\n hasTagPair(trimmed, \"html\") &&\n hasTagPair(trimmed, \"head\") &&\n hasTagPair(trimmed, \"body\")\n )\n return trimmed;\n\n // Otherwise wrap whatever is there inside a fresh skeleton.\n return `<html><head></head><body>${trimmed}</body></html>`;\n};\n\n/** Remove every script whose src matches the supplied RegExp (global & i). */\nconst stripScripts = (\n html: string,\n srcPattern: RegExp,\n): string =>\n html.replace(\n new RegExp(\n `<script[^>]*src=[\"'][^\"']*${srcPattern.source}[^\"']*[\"'][^>]*>\\\\s*</script>`,\n \"gi\",\n ),\n \"\",\n );\n\n/** Inject markup just before a closing tag (</head> or </body>). */\nconst injectBeforeClose = (\n html: string,\n closing: \"</head>\" | \"</body>\",\n markup: string,\n) =>\n html.replace(\n new RegExp(closing, \"i\"),\n `${markup}${closing}`,\n );\n\n/* ------------------------------------------------------------------ */\n/* core logic */\n/* ------------------------------------------------------------------ */\n\nconst injectScripts = (\n template: string,\n files: FileCollection,\n): string => {\n let html = normaliseSkeleton(template);\n\n /* -------------------- dependencies from package.json ------------ */\n const deps = Object.entries(dependencies(files)) as [\n string,\n string,\n ][];\n\n if (deps.length) {\n const libraries = getConfiguredLibraries(files);\n\n // Remove any previous dependency scripts\n deps.forEach(([name]) => {\n html = stripScripts(html, new RegExp(`${name}@`));\n });\n\n // Build & inject new ones (order preserved)\n const depMarkup = deps\n .map(([name, version]) =>\n dependencySource({ name, version }, libraries),\n )\n .map((src) => `<script src=\"${src}\"></script>`)\n .join(\"\\n\");\n\n html = injectBeforeClose(\n html,\n \"</head>\",\n depMarkup + \"\\n\",\n );\n }\n\n /* -------------------- ensure exactly ONE bundle.js -------------- */\n const needBundle =\n files[\"bundle.js\"] !== undefined ||\n files[\"index.js\"] !== undefined;\n\n if (needBundle) {\n const bundleTag = `<script src=\"bundle.js\"></script>`; // **no newline – keeps test #3 exact**\n\n // How many bundle.js scripts are already there & where?\n const bundleRe =\n /<script\\b[^>]*\\bsrc=[\"']bundle\\.js[\"'][^>]*>\\s*<\\/script>/gi;\n const matches = [...html.matchAll(bundleRe)];\n\n const oneInBody =\n matches.length === 1 &&\n (() => {\n const idx = matches[0].index ?? -1;\n if (idx === -1) return false;\n const bodyOpen = html.search(/<body\\b[^>]*>/i);\n const bodyClose = html.search(/<\\/body>/i);\n return (\n bodyOpen !== -1 &&\n bodyClose !== -1 &&\n idx > bodyOpen &&\n idx < bodyClose\n );\n })();\n\n if (!oneInBody) {\n // wipe them all, then inject a clean one at the end of <body>\n html = html.replace(bundleRe, \"\");\n html = injectBeforeClose(html, \"</body>\", bundleTag);\n }\n }\n\n /* -------------------- make sure <!DOCTYPE html> ----------------- */\n return /^\\s*<!DOCTYPE/i.test(html)\n ? html\n : `<!DOCTYPE html>${html}`;\n};\n\n/* ------------------------------------------------------------------ */\n/* public API */\n/* ------------------------------------------------------------------ */\n\nexport const getComputedIndexHtml = (\n files: FileCollection,\n): string => {\n const htmlTemplate = files[\"index.html\"];\n\n // No html and no JS – nothing to do.\n if (\n !htmlTemplate &&\n !files[\"index.js\"] &&\n !files[\"bundle.js\"]\n ) {\n DEBUG &&\n console.log(\n \"[getComputedIndexHtml] No index.html file found\",\n );\n return \"\";\n }\n\n const template =\n htmlTemplate ||\n \"<!DOCTYPE html><html><head></head><body></body></html>\";\n\n const result = injectScripts(template, files);\n\n DEBUG &&\n console.log(\"[getComputedIndexHtml] indexHtml\", result);\n\n return result;\n};\n","import { FileCollection } from \"@vizhub/viz-types\";\nimport { Plugin } from \"rollup\";\n\nconst normalizePath = (filepath: string): string => {\n // Remove leading ./\n let normalized = filepath.replace(/^\\.\\//, \"\");\n // Replace multiple slashes with single slash\n normalized = normalized.replace(/\\/+/g, \"/\");\n // Remove trailing slash\n normalized = normalized.replace(/\\/$/, \"\");\n return normalized;\n};\n\nconst joinPaths = (\n base: string,\n relative: string,\n): string => {\n // Get directory name of base path\n const baseDir = base.includes(\"/\")\n ? base.slice(0, base.lastIndexOf(\"/\"))\n : \"\";\n\n // Handle .. by removing one directory level\n const parts = relative.split(\"/\");\n const resultParts: string[] = baseDir\n ? baseDir.split(\"/\")\n : [];\n\n for (const part of parts) {\n if (part === \"..\") {\n resultParts.pop();\n } else if (part !== \".\" && part !== \"\") {\n resultParts.push(part);\n }\n }\n\n return resultParts.join(\"/\");\n};\n\nexport const virtualFileSystem = (\n files: FileCollection,\n): Plugin => {\n return {\n name: \"virtual-file-system\",\n\n resolveId(source: string, importer?: string) {\n // Handle relative paths\n if (\n source.startsWith(\"./\") ||\n source.startsWith(\"../\")\n ) {\n const resolvedPath = importer\n ? normalizePath(joinPaths(importer, source))\n : normalizePath(source);\n\n // Try exact match first\n if (files[resolvedPath]) {\n return resolvedPath;\n }\n\n // Try with extensions if no exact match is found\n const extensions = [\".js\", \".jsx\", \".ts\", \".tsx\"];\n for (const ext of extensions) {\n const pathWithExt = resolvedPath + ext;\n if (files[pathWithExt]) {\n return pathWithExt;\n }\n }\n }\n\n // Handle bare module imports\n if (files[source]) {\n return source;\n }\n\n // Try bare imports with extensions\n const extensions = [\".js\", \".jsx\", \".ts\", \".tsx\"];\n for (const ext of extensions) {\n const pathWithExt = source + ext;\n if (files[pathWithExt]) {\n return pathWithExt;\n }\n }\n\n return null;\n },\n\n load(id: string) {\n // Return the contents if the file exists in our virtual system\n if (files[id]) {\n return files[id];\n }\n\n return null;\n },\n };\n};\n","import type {\n RollupBuild,\n RollupOptions,\n OutputOptions,\n} from \"rollup\";\nimport { FileCollection } from \"@vizhub/viz-types\";\nimport { virtualFileSystem } from \"../common/virtualFileSystem.js\";\nimport { sucrasePlugin } from \"../common/sucrasePlugin.js\";\nimport {\n getGlobals,\n packageJSON,\n} from \"../common/packageJson.js\";\n\nexport const computeBundleJSV2 = async ({\n files,\n rollup,\n enableSourcemap = true,\n}: {\n files: FileCollection;\n rollup: (options: RollupOptions) => Promise<RollupBuild>;\n enableSourcemap?: boolean;\n}): Promise<string> => {\n const indexJSContent = files[\"index.js\"];\n if (!indexJSContent) {\n throw new Error(\"Missing index.js\");\n }\n\n const inputOptions: RollupOptions = {\n input: \"./index.js\",\n plugins: [virtualFileSystem(files), sucrasePlugin()],\n onwarn(warning, warn) {\n // Suppress \"treating module as external dependency\" warnings\n if (warning.code === \"UNRESOLVED_IMPORT\") return;\n warn(warning);\n },\n };\n\n const outputOptions: OutputOptions = {\n format: \"iife\",\n sourcemap: enableSourcemap,\n };\n\n const pkg = packageJSON(files);\n\n if (pkg) {\n const globals = getGlobals(pkg);\n if (globals) {\n inputOptions.external = Object.keys(globals);\n outputOptions.globals = globals;\n }\n }\n\n const bundle = await rollup(inputOptions);\n\n const { output } = await bundle.generate(outputOptions);\n return output[0].code;\n};\n","import type { RollupBuild, RollupOptions } from \"rollup\";\nimport { FileCollection } from \"@vizhub/viz-types\";\nimport { getComputedIndexHtml } from \"./getComputedIndexHtml\";\nimport { computeBundleJSV2 } from \"./computeBundleJSV2\";\n\nexport const v2Build = async ({\n files,\n rollup,\n enableSourcemap,\n}: {\n files: FileCollection;\n rollup: (options: RollupOptions) => Promise<RollupBuild>;\n enableSourcemap?: boolean;\n}): Promise<FileCollection> => ({\n ...files,\n \"bundle.js\": await computeBundleJSV2({\n files,\n rollup,\n enableSourcemap,\n }),\n \"index.html\": getComputedIndexHtml(files),\n});\n","/**\n * Extract module script entry points from index.html\n */\nexport const extractModuleEntryPoints = (\n html: string,\n): string[] => {\n const entryPoints: string[] = [];\n const scriptTag = /<script\\b([^>]*)>[\\s\\S]*?<\\/script>/gi;\n let m: RegExpExecArray | null;\n\n while ((m = scriptTag.exec(html)) !== null) {\n const attrs = m[1];\n if (!/\\btype\\s*=\\s*[\"']module[\"']/i.test(attrs))\n continue;\n const srcMatch = attrs.match(\n /\\bsrc\\s*=\\s*[\"']([^\"']+)[\"']/i,\n );\n if (srcMatch) entryPoints.push(srcMatch[1]);\n }\n return entryPoints;\n};\n","import type {\n RollupBuild,\n RollupOptions,\n OutputOptions,\n} from \"rollup\";\nimport { FileCollection } from \"@vizhub/viz-types\";\nimport { virtualFileSystem } from \"..//common/virtualFileSystem.js\";\nimport { sucrasePlugin } from \"..//common/sucrasePlugin.js\";\nimport { dependencies } from \"../common/packageJson.js\";\n\n/**\n * Bundle a single ES module entry point\n */\nexport const bundleESModule = async ({\n entryPoint,\n files,\n rollup,\n enableSourcemap = true,\n}: {\n entryPoint: string;\n files: FileCollection;\n rollup: (o: RollupOptions) => Promise<RollupBuild>;\n enableSourcemap?: boolean;\n}): Promise<string> => {\n const inputOptions: RollupOptions = {\n input: `./${entryPoint}`,\n plugins: [virtualFileSystem(files), sucrasePlugin()],\n external: (source: string) => {\n // Handle strings resolved by `virtualFileSystem`.\n if (files[source]) return false;\n // Handle external dependencies, e.g. from import maps.\n return !source.startsWith(\"./\");\n },\n onwarn(w, warn) {\n // if (w.code === \"UNRESOLVED_IMPORT\") return; // quiet noisy warnings\n warn(w);\n },\n };\n\n const bundle = await rollup(inputOptions);\n const { output } = await bundle.generate({\n format: \"es\",\n sourcemap: enableSourcemap,\n } as OutputOptions);\n\n return output[0].code;\n};\n","/**\n * Does the html already contain a <tag>…</tag> pair?\n */\nexport const hasTagPair = (html: string, tag: string) =>\n new RegExp(`<${tag}\\\\b`, \"i\").test(html) &&\n new RegExp(`</${tag}>`, \"i\").test(html);\n\n/**\n * Ensure <html><head></head><body></body> skeleton exists.\n */\nexport const normaliseSkeleton = (raw: string): string => {\n const trimmed = raw.trim();\n\n if (\n hasTagPair(trimmed, \"html\") &&\n hasTagPair(trimmed, \"head\") &&\n hasTagPair(trimmed, \"body\")\n )\n return trimmed;\n\n return `<html><head></head><body>${trimmed}</body></html>`;\n};\n\n/**\n * Escape characters so they can appear literally inside a RegExp.\n */\nexport const escapeRegExp = (s: string) =>\n s.replace(/[.*+?^${}()|[\\]\\\\]/g, \"\\\\$&\");\n\n/**\n * Inject markup immediately before </head> or </body>.\n */\nexport const injectBeforeClose = (\n html: string,\n closing: \"</head>\" | \"</body>\",\n markup: string,\n) =>\n html.replace(\n new RegExp(closing, \"i\"),\n `${markup}${closing}`,\n );\n","import { FileCollection } from \"@vizhub/viz-types\";\nimport {\n dependencies,\n getConfiguredLibraries,\n dependencySource,\n} from \"../common/packageJson.js\";\n\n/**\n * Generate an import map for all dependencies\n */\nexport const generateImportMap = (\n files: FileCollection,\n): string | null => {\n const deps = dependencies(files);\n if (Object.keys(deps).length === 0) return null;\n\n const libraries = getConfiguredLibraries(files);\n const imports: Record<string, string> = {};\n\n for (const [name, version] of Object.entries(deps)) {\n imports[name] = dependencySource(\n { name, version },\n libraries,\n );\n }\n return JSON.stringify({ imports }, null, 2);\n};\n","import { FileCollection } from \"@vizhub/viz-types\";\nimport {\n normaliseSkeleton,\n escapeRegExp,\n injectBeforeClose,\n} from \"./stringUtils.js\";\nimport { generateImportMap } from \"./importMap.js\";\n\n/**\n * Update HTML to include import map and bundled modules\n */\nexport const updateHTML = (\n files: FileCollection,\n bundled: Map<string, string>,\n): string => {\n if (!files[\"index.html\"]) return \"\";\n\n let html = normaliseSkeleton(files[\"index.html\"]);\n\n // Replace each <script src=\"…\"> with inline module\n bundled.forEach((code, src) => {\n const tagRe = new RegExp(\n `<script\\\\b[^>]*\\\\bsrc=[\"']${escapeRegExp(src)}[\"'][^>]*>[^<]*</script>`,\n \"gi\",\n );\n html = html.replace(\n tagRe,\n `<script type=\"module\">\\n${code}\\n</script>`,\n );\n });\n\n // Add <script type=\"importmap\"> if needed\n const importMapJson = generateImportMap(files);\n if (importMapJson) {\n const already =\n /<script\\b[^>]*type=[\"']importmap[\"'][^>]*>/i.test(\n html,\n );\n\n if (!already) {\n const importMapTag = `<script type=\"importmap\">\\n${importMapJson}\\n</script>\\n`;\n html = injectBeforeClose(\n html,\n \"</head>\",\n importMapTag,\n );\n }\n }\n\n // Ensure <!DOCTYPE html>\n return /^\\s*<!DOCTYPE/i.test(html)\n ? html\n : `<!DOCTYPE html>${html}`;\n};\n","import type { RollupBuild, RollupOptions } from \"rollup\";\nimport { FileCollection } from \"@vizhub/viz-types\";\nimport { extractModuleEntryPoints } from \"./extractEntryPoints.js\";\nimport { bundleESModule } from \"./bundleModule.js\";\nimport { updateHTML } from \"./updateHTML.js\";\n\nconst DEBUG = false;\n\n/**\n * Build for v4 runtime\n */\nexport const v4Build = async ({\n files,\n rollup,\n enableSourcemap = true,\n}: {\n files: FileCollection;\n rollup: (o: RollupOptions) => Promise<RollupBuild>;\n enableSourcemap?: boolean;\n}): Promise<FileCollection> => {\n const html = files[\"index.html\"] || \"\";\n const entryPoints = extractModuleEntryPoints(html);\n\n if (entryPoints.length === 0) {\n DEBUG &&\n console.log(\"[v4Build] No module entry points found\");\n return files; // nothing to bundle\n }\n\n const bundled = new Map<string, string>();\n for (const entry of entryPoints) {\n const code = await bundleESModule({\n entryPoint: entry,\n files,\n rollup,\n enableSourcemap,\n });\n bundled.set(entry, code);\n }\n\n const updatedHTML = updateHTML(files, bundled);\n\n return {\n ...files,\n \"index.html\": updatedHTML,\n };\n};\n\n// Export the extractModuleEntryPoints function for external use\nexport { extractModuleEntryPoints };\n","import { magicSandbox } from \"magic-sandbox\";\nimport { FileCollection } from \"@vizhub/viz-types\";\nimport type { RollupBuild, RollupOptions } from \"rollup\";\nimport {\n createVizCache,\n createVizContent,\n SlugCache,\n SvelteCompiler,\n v3Build,\n VizCache,\n} from \"../v3\";\nimport { BuildResult } from \"./types\";\nimport { vizFilesToFileCollection } from \"@vizhub/viz-utils\";\nimport { determineRuntimeVersion } from \"./determineRuntimeVersion\";\nimport { v2Build } from \"../v2\";\nimport { v4Build } from \"../v4\";\n\nconst DEBUG = false;\n\n// Builds the given files.\nexport const build = async ({\n files,\n rollup,\n enableSourcemap = true,\n vizCache,\n vizId,\n slugCache,\n getSvelteCompiler,\n}: {\n // Only required for v1 and v2 runtime\n // For v3, EITHER files OR vizCache is required\n files?: FileCollection;\n\n // Only required for v2 and v3 runtime\n rollup?: (options: RollupOptions) => Promise<RollupBuild>;\n\n // True to enable sourcemaps, which help with\n // tracing runtime errors back to source code,\n // including specific source files and line numbers.\n // When true, there is additional overhead\n // for generating the sourcemaps, and the generated bundle\n // is larger.\n enableSourcemap?: boolean;\n\n // Only required for v3 runtime\n // For v3, EITHER files OR vizCache is required\n vizCache?: VizCache;\n\n // Only required for v3 runtime\n vizId?: string;\n\n // Only required for v3 runtime\n slugCache?: SlugCache;\n\n // Only required for v3 runtime\n getSvelteCompiler?: () => Promise<SvelteCompiler>;\n}): Promise<BuildResult> => {\n DEBUG &&\n console.log(\n \"[build] files:\",\n files\n ? JSON.stringify(files).substring(0, 100)\n : undefined,\n );\n DEBUG && console.log(\"[build] vizCache:\", vizCache);\n DEBUG && console.log(\"[build] vizId:\", vizId);\n\n if (!files && !vizCache) {\n throw new Error(\"Either files or vizCache is required\");\n }\n\n if (!files && vizCache && !vizId) {\n throw new Error(\n \"vizId is required when using vizCache\",\n );\n }\n\n if (!files && vizCache && vizId) {\n files = vizFilesToFileCollection(\n (await vizCache.get(vizId))?.files,\n );\n }\n\n if (!files) {\n throw new Error(\"Upable to extract viz files\");\n }\n\n const version = determineRuntimeVersion(files);\n DEBUG && console.log(\"[build] version:\", version);\n if (version === \"v1\") {\n return {\n html: magicSandbox(files),\n };\n }\n if (version === \"v2\") {\n if (!rollup) {\n throw new Error(\"Rollup is required for v2 runtime\");\n }\n return {\n html: magicSandbox(\n await v2Build({ files, rollup, enableSourcemap }),\n ),\n };\n }\n if (version === \"v3\") {\n if (!rollup) {\n throw new Error(\"Rollup is required for v3 runtime\");\n }\n\n // We set up a \"fake\" viz cache.\n // It's needed because of the way the CSS import resolution works.\n if (!vizCache && !vizId) {\n const vizContent = createVizContent(files);\n vizId = vizContent.id;\n vizCache = createVizCache({\n initialContents: [vizContent],\n handleCacheMiss: async () => {\n throw new Error(\n \"Cache miss handler not implemented\",\n );\n },\n });\n }\n\n if (!vizCache) {\n throw new Error(\n \"vizCache is required for v3 runtime\",\n );\n }\n\n if (!vizId) {\n throw new Error(\"vizId is required for v3 runtime\");\n }\n\n return await v3Build({\n files,\n rollup,\n vizCache,\n vizId,\n slugCache,\n getSvelteCompiler,\n });\n }\n\n if (version === \"v4\") {\n if (!rollup) {\n throw new Error(\"Rollup is required for v4 runtime\");\n }\n DEBUG &&\n console.log(\"[build] v4Build\", {\n files,\n rollup,\n enableSourcemap,\n });\n return {\n html: magicSandbox(\n await v4Build({ files, rollup, enableSourcemap }),\n ),\n };\n }\n\n throw new Error(\n `Unsupported runtime version: ${version}`,\n );\n};\n","import { rollup } from \"@rollup/browser\";\nimport { VizContent, VizId } from \"@vizhub/viz-types\";\nimport type { RollupBuild, RollupOptions } from \"rollup\";\nimport {\n svelteCompilerUrl,\n createVizCache,\n createSlugCache,\n} from \"../v3\";\nimport { generateRequestId } from \"./generateRequestId\";\nimport { BuildWorkerMessage } from \"./types\";\nimport { build } from \"../build\";\n\n// Flag for debugging\nconst DEBUG = false;\n\nexport const initWorker = () => {\n DEBUG && console.log(\"[worker] initializing...\");\n // Inspired by\n // https://github.com/sveltejs/sites/blob/master/packages/repl/src/lib/workers/bundler/index.js#L44\n // unpkg doesn't set the correct MIME type for .cjs files\n // https://github.com/mjackson/unpkg/issues/355\n const getSvelteCompiler = async () => {\n const compiler = await fetch(svelteCompilerUrl).then(\n (r) => r.text(),\n );\n (0, eval)(compiler);\n\n // @ts-ignore\n return self.svelte.compile;\n };\n\n // Tracks pending promises for 'contentResponse' messages\n const pendingContentResponsePromises = new Map();\n\n // Tracks pending promises for 'resolveSlugResponse' messages\n const pendingResolveSlugResponsePromises = new Map();\n\n // Create a viz cache that's backed by the main thread\n const vizCache = createVizCache({\n initialContents: [],\n handleCacheMiss: async (\n vizId: VizId,\n ): Promise<VizContent> => {\n const message = {\n type: \"contentRequest\",\n vizId,\n };\n\n if (DEBUG) {\n console.log(\n \"[worker] sending content request message to main thread\",\n message,\n );\n }\n postMessage(message);\n\n return new Promise((resolve) => {\n pendingContentResponsePromises.set(vizId, resolve);\n });\n },\n });\n\n // Create a slug cache that's backed by the main thread\n const slugCache = createSlugCache({\n initialMappings: {},\n handleCacheMiss: async (slug) => {\n const requestId = generateRequestId();\n const message = {\n type: \"resolveSlugRequest\",\n slugKey: slug,\n requestId,\n };\n\n if (DEBUG) {\n console.log(\n \"[worker] sending resolve slug request message to main thread\",\n message,\n );\n }\n postMessage(message);\n\n return new Promise((resolve) => {\n pendingResolveSlugResponsePromises.set(\n requestId,\n resolve,\n );\n });\n },\n });\n\n // Handle messages from the main thread\n addEventListener(\"message\", async (event) => {\n const data: BuildWorkerMessage = event.data;\n\n DEBUG &&\n console.log(\n \"[worker] received message:\",\n JSON.stringify(data, null, 2).substring(0, 1000),\n );\n\n switch (data.type) {\n case \"buildRequest\": {\n const { files, enableSourcemap, requestId } = data;\n\n try {\n // Build HTML from the files\n const buildResult = await build({\n files,\n enableSourcemap,\n rollup: rollup as (\n options: RollupOptions,\n ) => Promise<RollupBuild>,\n getSvelteCompiler,\n // vizCache,\n slugCache,\n });\n const message: BuildWorkerMessage = {\n type: \"buildResponse\",\n buildResult,\n requestId,\n };\n // Send the built HTML back to the main thread\n postMessage(message);\n } catch (error) {\n DEBUG &&\n console.log(\"[worker] build error:\", error);\n\n const message: BuildWorkerMessage = {\n type: \"buildResponse\",\n error: \"\" + error,\n requestId,\n };\n\n // Send the error back to the main thread\n postMessage(message);\n }\n break;\n }\n\n case \"contentResponse\": {\n // Resolve pending promises for content snapshots\n const resolver = pendingContentResponsePromises.get(\n data.vizId,\n );\n if (resolver) {\n resolver(data.content);\n pendingContentResponsePromises.delete(data.vizId);\n }\n break;\n }\n\n case \"invalidateVizCacheRequest\": {\n if (DEBUG) {\n console.log(\n \"[worker] received invalidateVizCacheRequest\",\n data,\n );\n }\n const { changedVizIds } = data;\n\n // Invalidate the viz cache for the changed vizzes\n for (const vizId of changedVizIds) {\n vizCache.invalidate(vizId);\n }\n\n postMessage({\n type: \"invalidateVizCacheResponse\",\n });\n break;\n }\n\n case \"resolveSlugResponse\": {\n // Resolve pending promises for slug resolution\n const resolver =\n pendingResolveSlugResponsePromises.get(\n data.requestId,\n );\n if (resolver) {\n resolver(data.vizId);\n pendingResolveSlugResponsePromises.delete(\n data.requestId,\n );\n }\n break;\n }\n }\n });\n};\n"],"names":["determineRuntimeVersion","files","hasIndexHTML","hasIndexJS","hasIndexJSX","hasTagPair","html","tag","normaliseSkeleton","raw","trimmed","stripScripts","srcPattern","injectBeforeClose","closing","markup","injectScripts","template","deps","dependencies","libraries","getConfiguredLibraries","name","depMarkup","version","dependencySource","src","bundleTag","bundleRe","matches","idx","bodyOpen","bodyClose","getComputedIndexHtml","htmlTemplate","normalizePath","filepath","normalized","joinPaths","base","relative","baseDir","parts","resultParts","part","virtualFileSystem","source","importer","resolvedPath","extensions","ext","pathWithExt","id","computeBundleJSV2","rollup","enableSourcemap","inputOptions","sucrasePlugin","warning","warn","outputOptions","pkg","packageJSON","globals","getGlobals","bundle","output","v2Build","extractModuleEntryPoints","entryPoints","scriptTag","m","attrs","srcMatch","bundleESModule","entryPoint","w","escapeRegExp","s","generateImportMap","imports","updateHTML","bundled","code","tagRe","importMapJson","importMapTag","v4Build","entry","updatedHTML","build","vizCache","vizId","slugCache","getSvelteCompiler","vizFilesToFileCollection","_a","magicSandbox","vizContent","createVizContent","createVizCache","v3Build","initWorker","compiler","svelteCompilerUrl","r","pendingContentResponsePromises","pendingResolveSlugResponsePromises","resolve","createSlugCache","slug","requestId","generateRequestId","event","data","message","error","resolver","changedVizIds"],"mappings":"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"}