@vizhub/runtime 0.3.7 → 0.4.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 (612) hide show
  1. package/README.md +14 -14
  2. package/dist/buildHTML.d.ts +5 -4
  3. package/dist/buildHTML.d.ts.map +1 -0
  4. package/dist/common/packageJson.d.ts +1 -0
  5. package/dist/common/packageJson.d.ts.map +1 -0
  6. package/dist/common/packageJson.test.d.ts +1 -0
  7. package/dist/common/packageJson.test.d.ts.map +1 -0
  8. package/dist/common/sucrasePlugin.d.ts +1 -0
  9. package/dist/common/sucrasePlugin.d.ts.map +1 -0
  10. package/dist/common/virtualFileSystem.d.ts +1 -0
  11. package/dist/common/virtualFileSystem.d.ts.map +1 -0
  12. package/dist/createRuntime.d.ts +12 -0
  13. package/dist/createRuntime.d.ts.map +1 -0
  14. package/dist/determineRuntimeVersion.d.ts +2 -1
  15. package/dist/determineRuntimeVersion.d.ts.map +1 -0
  16. package/dist/determineRuntimeVersion.test.d.ts +1 -0
  17. package/dist/determineRuntimeVersion.test.d.ts.map +1 -0
  18. package/dist/index.cjs +2 -0
  19. package/dist/index.cjs.map +1 -0
  20. package/dist/index.d.ts +11 -2
  21. package/dist/index.d.ts.map +1 -0
  22. package/dist/index.js +100 -3
  23. package/dist/index.js.map +1 -0
  24. package/dist/old-implementation-reference/setupV3Runtime.d.ts +1 -0
  25. package/dist/old-implementation-reference/setupV3Runtime.d.ts.map +1 -0
  26. package/dist/old-implementation-reference/types.d.ts +1 -0
  27. package/dist/old-implementation-reference/types.d.ts.map +1 -0
  28. package/dist/old-implementation-reference/worker.d.ts +1 -0
  29. package/dist/old-implementation-reference/worker.d.ts.map +1 -0
  30. package/dist/slugCache-Bt1Sipcs.cjs +214 -0
  31. package/dist/slugCache-Bt1Sipcs.cjs.map +1 -0
  32. package/dist/slugCache-CxGQFqi6.js +841 -0
  33. package/dist/slugCache-CxGQFqi6.js.map +1 -0
  34. package/dist/test/fixtures/v1/basicHTML.d.ts +1 -0
  35. package/dist/test/fixtures/v1/basicHTML.d.ts.map +1 -0
  36. package/dist/test/fixtures/v1/fetchProxy.d.ts +1 -0
  37. package/dist/test/fixtures/v1/fetchProxy.d.ts.map +1 -0
  38. package/dist/test/fixtures/v1/index.d.ts +1 -0
  39. package/dist/test/fixtures/v1/index.d.ts.map +1 -0
  40. package/dist/test/fixtures/v1/jsScriptTag.d.ts +1 -0
  41. package/dist/test/fixtures/v1/jsScriptTag.d.ts.map +1 -0
  42. package/dist/test/fixtures/v1/protocolTest.d.ts +1 -0
  43. package/dist/test/fixtures/v1/protocolTest.d.ts.map +1 -0
  44. package/dist/test/fixtures/v1/styleTest.d.ts +1 -0
  45. package/dist/test/fixtures/v1/styleTest.d.ts.map +1 -0
  46. package/dist/test/fixtures/v1/xmlTest.d.ts +1 -0
  47. package/dist/test/fixtures/v1/xmlTest.d.ts.map +1 -0
  48. package/dist/test/fixtures/v2/basicBundle.d.ts +1 -0
  49. package/dist/test/fixtures/v2/basicBundle.d.ts.map +1 -0
  50. package/dist/test/fixtures/v2/basicBundleNoExtension.d.ts +1 -0
  51. package/dist/test/fixtures/v2/basicBundleNoExtension.d.ts.map +1 -0
  52. package/dist/test/fixtures/v2/d3Import.d.ts +1 -0
  53. package/dist/test/fixtures/v2/d3Import.d.ts.map +1 -0
  54. package/dist/test/fixtures/v2/d3ImportPkg.d.ts +1 -0
  55. package/dist/test/fixtures/v2/d3ImportPkg.d.ts.map +1 -0
  56. package/dist/test/fixtures/v2/d3RosettaImportPkg.d.ts +1 -0
  57. package/dist/test/fixtures/v2/d3RosettaImportPkg.d.ts.map +1 -0
  58. package/dist/test/fixtures/v2/es6Preserve.d.ts +1 -0
  59. package/dist/test/fixtures/v2/es6Preserve.d.ts.map +1 -0
  60. package/dist/test/fixtures/v2/generatorSupport.d.ts +1 -0
  61. package/dist/test/fixtures/v2/generatorSupport.d.ts.map +1 -0
  62. package/dist/test/fixtures/v2/index.d.ts +3 -1
  63. package/dist/test/fixtures/v2/index.d.ts.map +1 -0
  64. package/dist/test/fixtures/v2/jsxTranspile.d.ts +1 -0
  65. package/dist/test/fixtures/v2/jsxTranspile.d.ts.map +1 -0
  66. package/dist/test/fixtures/v2/reactDomImport.d.ts +1 -0
  67. package/dist/test/fixtures/v2/reactDomImport.d.ts.map +1 -0
  68. package/dist/test/fixtures/v2/reactDomImportPkg.d.ts +1 -0
  69. package/dist/test/fixtures/v2/reactDomImportPkg.d.ts.map +1 -0
  70. package/dist/test/fixtures/v2/reactImport.d.ts +1 -0
  71. package/dist/test/fixtures/v2/reactImport.d.ts.map +1 -0
  72. package/dist/test/fixtures/v2/reactImportPkg.d.ts +1 -0
  73. package/dist/test/fixtures/v2/reactImportPkg.d.ts.map +1 -0
  74. package/dist/test/fixtures/v2/sourceMapErrorFixture.d.ts +1 -0
  75. package/dist/test/fixtures/v2/sourceMapErrorFixture.d.ts.map +1 -0
  76. package/dist/test/fixtures/v2/syntaxError.d.ts +6 -0
  77. package/dist/test/fixtures/v2/syntaxError.d.ts.map +1 -0
  78. package/dist/test/fixtures/v2/unicodeSupport.d.ts +1 -0
  79. package/dist/test/fixtures/v2/unicodeSupport.d.ts.map +1 -0
  80. package/dist/test/fixtures/v3/basicIndexJS.d.ts +1 -0
  81. package/dist/test/fixtures/v3/basicIndexJS.d.ts.map +1 -0
  82. package/dist/test/fixtures/v3/cssImport.d.ts +1 -0
  83. package/dist/test/fixtures/v3/cssImport.d.ts.map +1 -0
  84. package/dist/test/fixtures/v3/csvImport.d.ts +1 -0
  85. package/dist/test/fixtures/v3/csvImport.d.ts.map +1 -0
  86. package/dist/test/fixtures/v3/csvStrangeChars.d.ts +1 -0
  87. package/dist/test/fixtures/v3/csvStrangeChars.d.ts.map +1 -0
  88. package/dist/test/fixtures/v3/d3Dependency.d.ts +5 -0
  89. package/dist/test/fixtures/v3/d3Dependency.d.ts.map +1 -0
  90. package/dist/test/fixtures/v3/index.d.ts +2 -0
  91. package/dist/test/fixtures/v3/index.d.ts.map +1 -0
  92. package/dist/test/fixtures/v3/jsExport.d.ts +1 -0
  93. package/dist/test/fixtures/v3/jsExport.d.ts.map +1 -0
  94. package/dist/test/fixtures/v3/sourcemap.d.ts +1 -0
  95. package/dist/test/fixtures/v3/sourcemap.d.ts.map +1 -0
  96. package/dist/test/fixtures/v3/svelte.d.ts +1 -0
  97. package/dist/test/fixtures/v3/svelte.d.ts.map +1 -0
  98. package/dist/test/fixtures/v3/vizContent.d.ts +1 -0
  99. package/dist/test/fixtures/v3/vizContent.d.ts.map +1 -0
  100. package/dist/test/fixtures/v3/vizImport.d.ts +1 -0
  101. package/dist/test/fixtures/v3/vizImport.d.ts.map +1 -0
  102. package/dist/test/fixtures/v4/d3Usage.d.ts +1 -0
  103. package/dist/test/fixtures/v4/d3Usage.d.ts.map +1 -0
  104. package/dist/test/fixtures/v4/esmBuild.d.ts +1 -0
  105. package/dist/test/fixtures/v4/esmBuild.d.ts.map +1 -0
  106. package/dist/test/fixtures/v4/fetchInterception.d.ts +1 -0
  107. package/dist/test/fixtures/v4/fetchInterception.d.ts.map +1 -0
  108. package/dist/test/fixtures/v4/index.d.ts +1 -0
  109. package/dist/test/fixtures/v4/index.d.ts.map +1 -0
  110. package/dist/test/fixtures/v4/jsScriptTagTypeModule.d.ts +1 -0
  111. package/dist/test/fixtures/v4/jsScriptTagTypeModule.d.ts.map +1 -0
  112. package/dist/test/fixtures/v4/jsScriptTagTypeModules.d.ts +1 -0
  113. package/dist/test/fixtures/v4/jsScriptTagTypeModules.d.ts.map +1 -0
  114. package/dist/test/fixtures/v4/reactHooks.d.ts +1 -0
  115. package/dist/test/fixtures/v4/reactHooks.d.ts.map +1 -0
  116. package/dist/test/fixtures/v4/reactJsx.d.ts +1 -0
  117. package/dist/test/fixtures/v4/reactJsx.d.ts.map +1 -0
  118. package/dist/test/fixtures/v4/threeJsUsage.d.ts +1 -0
  119. package/dist/test/fixtures/v4/threeJsUsage.d.ts.map +1 -0
  120. package/dist/test/fixtures/v4/typeScriptSupport.d.ts +1 -0
  121. package/dist/test/fixtures/v4/typeScriptSupport.d.ts.map +1 -0
  122. package/dist/test/iframeWorkerManagement.test.d.ts +2 -0
  123. package/dist/test/iframeWorkerManagement.test.d.ts.map +1 -0
  124. package/dist/test/testInBrowser.d.ts +5 -4
  125. package/dist/test/testInBrowser.d.ts.map +1 -0
  126. package/dist/test/testMockedIframeWithWorker.d.ts +27 -0
  127. package/dist/test/testMockedIframeWithWorker.d.ts.map +1 -0
  128. package/dist/test/testRuntimeWithWorker.d.ts +17 -0
  129. package/dist/test/testRuntimeWithWorker.d.ts.map +1 -0
  130. package/dist/test/testStackTrace.d.ts +1 -0
  131. package/dist/test/testStackTrace.d.ts.map +1 -0
  132. package/dist/test/v1.test.d.ts +1 -0
  133. package/dist/test/v1.test.d.ts.map +1 -0
  134. package/dist/test/v2.test.d.ts +1 -0
  135. package/dist/test/v2.test.d.ts.map +1 -0
  136. package/dist/test/v3-hot-reloading.test.d.ts +2 -0
  137. package/dist/test/v3-hot-reloading.test.d.ts.map +1 -0
  138. package/dist/test/v3.test.d.ts +1 -0
  139. package/dist/test/v3.test.d.ts.map +1 -0
  140. package/dist/test/v4.test.d.ts +1 -0
  141. package/dist/test/v4.test.d.ts.map +1 -0
  142. package/dist/types.d.ts +53 -0
  143. package/dist/types.d.ts.map +1 -0
  144. package/dist/v2/computeBundleJSV2.d.ts +1 -0
  145. package/dist/v2/computeBundleJSV2.d.ts.map +1 -0
  146. package/dist/v2/getComputedIndexHtml.d.ts +1 -2
  147. package/dist/v2/getComputedIndexHtml.d.ts.map +1 -0
  148. package/dist/v2/getComputedIndexHtml.test.d.ts +1 -0
  149. package/dist/v2/getComputedIndexHtml.test.d.ts.map +1 -0
  150. package/dist/v2/index.d.ts +1 -0
  151. package/dist/v2/index.d.ts.map +1 -0
  152. package/dist/v2/v2Build.d.ts +1 -0
  153. package/dist/v2/v2Build.d.ts.map +1 -0
  154. package/dist/v3/cleanRollupErrorMessage.d.ts +1 -0
  155. package/dist/v3/cleanRollupErrorMessage.d.ts.map +1 -0
  156. package/dist/v3/cleanRollupErrorMessage.test.d.ts +2 -0
  157. package/dist/v3/cleanRollupErrorMessage.test.d.ts.map +1 -0
  158. package/dist/v3/computeBundleJSV3.d.ts +4 -3
  159. package/dist/v3/computeBundleJSV3.d.ts.map +1 -0
  160. package/dist/v3/createVizContent.d.ts +1 -0
  161. package/dist/v3/createVizContent.d.ts.map +1 -0
  162. package/dist/v3/extractVizImport.d.ts +1 -0
  163. package/dist/v3/extractVizImport.d.ts.map +1 -0
  164. package/dist/v3/extractVizImport.test.d.ts +1 -0
  165. package/dist/v3/extractVizImport.test.d.ts.map +1 -0
  166. package/dist/v3/htmlTemplate.d.ts +1 -0
  167. package/dist/v3/htmlTemplate.d.ts.map +1 -0
  168. package/dist/v3/index.d.ts +1 -0
  169. package/dist/v3/index.d.ts.map +1 -0
  170. package/dist/v3/parseId.d.ts +3 -2
  171. package/dist/v3/parseId.d.ts.map +1 -0
  172. package/dist/v3/parseId.test.d.ts +1 -0
  173. package/dist/v3/parseId.test.d.ts.map +1 -0
  174. package/dist/v3/setupV3Runtime.d.ts +1 -15
  175. package/dist/v3/setupV3Runtime.d.ts.map +1 -0
  176. package/dist/v3/slugCache.d.ts +1 -0
  177. package/dist/v3/slugCache.d.ts.map +1 -0
  178. package/dist/v3/slugCache.test.d.ts +1 -0
  179. package/dist/v3/slugCache.test.d.ts.map +1 -0
  180. package/dist/v3/transformDSV/dsvParseSrc.d.ts +1 -0
  181. package/dist/v3/transformDSV/dsvParseSrc.d.ts.map +1 -0
  182. package/dist/v3/transformDSV/index.d.ts +1 -0
  183. package/dist/v3/transformDSV/index.d.ts.map +1 -0
  184. package/dist/v3/transformSvelte.d.ts +2 -1
  185. package/dist/v3/transformSvelte.d.ts.map +1 -0
  186. package/dist/v3/types.d.ts +2 -1
  187. package/dist/v3/types.d.ts.map +1 -0
  188. package/dist/v3/v3Build.d.ts +4 -3
  189. package/dist/v3/v3Build.d.ts.map +1 -0
  190. package/dist/v3/vizCache.d.ts +1 -0
  191. package/dist/v3/vizCache.d.ts.map +1 -0
  192. package/dist/v3/vizCache.test.d.ts +1 -0
  193. package/dist/v3/vizCache.test.d.ts.map +1 -0
  194. package/dist/v3/vizLoad.d.ts +3 -2
  195. package/dist/v3/vizLoad.d.ts.map +1 -0
  196. package/dist/v3/vizResolve.d.ts +2 -1
  197. package/dist/v3/vizResolve.d.ts.map +1 -0
  198. package/dist/v4/bundleModule.d.ts +12 -0
  199. package/dist/v4/bundleModule.d.ts.map +1 -0
  200. package/dist/v4/extractEntryPoints.d.ts +5 -0
  201. package/dist/v4/extractEntryPoints.d.ts.map +1 -0
  202. package/dist/v4/importMap.d.ts +6 -0
  203. package/dist/v4/importMap.d.ts.map +1 -0
  204. package/dist/v4/index.d.ts +4 -1
  205. package/dist/v4/index.d.ts.map +1 -0
  206. package/dist/v4/stringUtils.d.ts +17 -0
  207. package/dist/v4/stringUtils.d.ts.map +1 -0
  208. package/dist/v4/updateHTML.d.ts +6 -0
  209. package/dist/v4/updateHTML.d.ts.map +1 -0
  210. package/dist/worker.cjs +2 -0
  211. package/dist/worker.cjs.map +1 -0
  212. package/dist/worker.d.ts +2 -0
  213. package/dist/worker.d.ts.map +1 -0
  214. package/dist/worker.js +91 -0
  215. package/dist/worker.js.map +1 -0
  216. package/package.json +18 -15
  217. package/dist/buildHTML.js +0 -67
  218. package/dist/cjs/buildHTML.js +0 -71
  219. package/dist/cjs/common/packageJson.js +0 -81
  220. package/dist/cjs/common/packageJson.test.js +0 -148
  221. package/dist/cjs/common/sucrasePlugin.js +0 -27
  222. package/dist/cjs/common/virtualFileSystem.js +0 -79
  223. package/dist/cjs/determineRuntimeVersion.js +0 -26
  224. package/dist/cjs/determineRuntimeVersion.test.js +0 -103
  225. package/dist/cjs/index.js +0 -11
  226. package/dist/cjs/package.json +0 -1
  227. package/dist/cjs/test/fixtures/v1/basicHTML.js +0 -18
  228. package/dist/cjs/test/fixtures/v1/fetchProxy.js +0 -15
  229. package/dist/cjs/test/fixtures/v1/index.js +0 -15
  230. package/dist/cjs/test/fixtures/v1/jsScriptTag.js +0 -12
  231. package/dist/cjs/test/fixtures/v1/protocolTest.js +0 -18
  232. package/dist/cjs/test/fixtures/v1/styleTest.js +0 -18
  233. package/dist/cjs/test/fixtures/v1/xmlTest.js +0 -22
  234. package/dist/cjs/test/fixtures/v2/basicBundle.js +0 -8
  235. package/dist/cjs/test/fixtures/v2/basicBundleNoExtension.js +0 -8
  236. package/dist/cjs/test/fixtures/v2/d3Import.js +0 -10
  237. package/dist/cjs/test/fixtures/v2/d3ImportPkg.js +0 -22
  238. package/dist/cjs/test/fixtures/v2/d3RosettaImportPkg.js +0 -22
  239. package/dist/cjs/test/fixtures/v2/es6Preserve.js +0 -9
  240. package/dist/cjs/test/fixtures/v2/generatorSupport.js +0 -9
  241. package/dist/cjs/test/fixtures/v2/index.js +0 -45
  242. package/dist/cjs/test/fixtures/v2/jsxTranspile.js +0 -9
  243. package/dist/cjs/test/fixtures/v2/reactDomImport.js +0 -11
  244. package/dist/cjs/test/fixtures/v2/reactDomImportPkg.js +0 -27
  245. package/dist/cjs/test/fixtures/v2/reactImport.js +0 -10
  246. package/dist/cjs/test/fixtures/v2/reactImportPkg.js +0 -20
  247. package/dist/cjs/test/fixtures/v2/sourceMapErrorFixture.js +0 -22
  248. package/dist/cjs/test/fixtures/v2/unicodeSupport.js +0 -9
  249. package/dist/cjs/test/fixtures/v3/basicIndexJS.js +0 -10
  250. package/dist/cjs/test/fixtures/v3/cssImport.js +0 -12
  251. package/dist/cjs/test/fixtures/v3/csvImport.js +0 -14
  252. package/dist/cjs/test/fixtures/v3/csvStrangeChars.js +0 -15
  253. package/dist/cjs/test/fixtures/v3/index.js +0 -25
  254. package/dist/cjs/test/fixtures/v3/jsExport.js +0 -13
  255. package/dist/cjs/test/fixtures/v3/sourcemap.js +0 -13
  256. package/dist/cjs/test/fixtures/v3/svelte.js +0 -21
  257. package/dist/cjs/test/fixtures/v3/vizContent.js +0 -14
  258. package/dist/cjs/test/fixtures/v3/vizImport.js +0 -88
  259. package/dist/cjs/test/fixtures/v4/d3Usage.js +0 -34
  260. package/dist/cjs/test/fixtures/v4/esmBuild.js +0 -21
  261. package/dist/cjs/test/fixtures/v4/fetchInterception.js +0 -21
  262. package/dist/cjs/test/fixtures/v4/index.js +0 -21
  263. package/dist/cjs/test/fixtures/v4/jsScriptTagTypeModule.js +0 -21
  264. package/dist/cjs/test/fixtures/v4/jsScriptTagTypeModules.js +0 -15
  265. package/dist/cjs/test/fixtures/v4/reactHooks.js +0 -50
  266. package/dist/cjs/test/fixtures/v4/reactJsx.js +0 -37
  267. package/dist/cjs/test/fixtures/v4/threeJsUsage.js +0 -27
  268. package/dist/cjs/test/fixtures/v4/typeScriptSupport.js +0 -32
  269. package/dist/cjs/test/testInBrowser.js +0 -50
  270. package/dist/cjs/test/testStackTrace.js +0 -58
  271. package/dist/cjs/test/v1.test.js +0 -70
  272. package/dist/cjs/test/v2.test.js +0 -124
  273. package/dist/cjs/test/v3.test.js +0 -119
  274. package/dist/cjs/test/v4.test.js +0 -105
  275. package/dist/cjs/types.js +0 -2
  276. package/dist/cjs/utils/vizContentToFileCollection.js +0 -24
  277. package/dist/cjs/utils/vizContentToFileCollection.test.js +0 -77
  278. package/dist/cjs/v2/computeBundleJSV2.js +0 -33
  279. package/dist/cjs/v2/getComputedIndexHtml.js +0 -86
  280. package/dist/cjs/v2/getComputedIndexHtml.test.js +0 -136
  281. package/dist/cjs/v2/index.js +0 -5
  282. package/dist/cjs/v2/v2Build.js +0 -15
  283. package/dist/cjs/v3/cleanRollupErrorMessage.js +0 -13
  284. package/dist/cjs/v3/computeBundleJSV3.js +0 -52
  285. package/dist/cjs/v3/createVizContent.js +0 -27
  286. package/dist/cjs/v3/extractVizImport.js +0 -27
  287. package/dist/cjs/v3/extractVizImport.test.js +0 -32
  288. package/dist/cjs/v3/htmlTemplate.js +0 -93
  289. package/dist/cjs/v3/index.js +0 -5
  290. package/dist/cjs/v3/parseId.js +0 -9
  291. package/dist/cjs/v3/parseId.test.js +0 -27
  292. package/dist/cjs/v3/setupV3Runtime.js +0 -345
  293. package/dist/cjs/v3/slugCache.js +0 -39
  294. package/dist/cjs/v3/slugCache.test.js +0 -107
  295. package/dist/cjs/v3/transformDSV/dsvParseSrc.js +0 -124
  296. package/dist/cjs/v3/transformDSV/index.js +0 -44
  297. package/dist/cjs/v3/transformSvelte.js +0 -81
  298. package/dist/cjs/v3/types.js +0 -2
  299. package/dist/cjs/v3/v3Build.js +0 -34
  300. package/dist/cjs/v3/vizCache.js +0 -40
  301. package/dist/cjs/v3/vizCache.test.js +0 -100
  302. package/dist/cjs/v3/vizLoad.js +0 -50
  303. package/dist/cjs/v3/vizResolve.js +0 -73
  304. package/dist/cjs/v4/index.js +0 -138
  305. package/dist/common/packageJson.js +0 -71
  306. package/dist/common/packageJson.test.js +0 -146
  307. package/dist/common/sucrasePlugin.js +0 -24
  308. package/dist/common/virtualFileSystem.js +0 -75
  309. package/dist/determineRuntimeVersion.js +0 -22
  310. package/dist/determineRuntimeVersion.test.js +0 -101
  311. package/dist/esm/buildHTML.js +0 -67
  312. package/dist/esm/common/packageJson.js +0 -71
  313. package/dist/esm/common/packageJson.test.js +0 -146
  314. package/dist/esm/common/sucrasePlugin.js +0 -24
  315. package/dist/esm/common/virtualFileSystem.js +0 -75
  316. package/dist/esm/determineRuntimeVersion.js +0 -22
  317. package/dist/esm/determineRuntimeVersion.test.js +0 -101
  318. package/dist/esm/index.js +0 -4
  319. package/dist/esm/test/fixtures/v1/basicHTML.js +0 -15
  320. package/dist/esm/test/fixtures/v1/fetchProxy.js +0 -12
  321. package/dist/esm/test/fixtures/v1/index.js +0 -6
  322. package/dist/esm/test/fixtures/v1/jsScriptTag.js +0 -9
  323. package/dist/esm/test/fixtures/v1/protocolTest.js +0 -15
  324. package/dist/esm/test/fixtures/v1/styleTest.js +0 -15
  325. package/dist/esm/test/fixtures/v1/xmlTest.js +0 -19
  326. package/dist/esm/test/fixtures/v2/basicBundle.js +0 -5
  327. package/dist/esm/test/fixtures/v2/basicBundleNoExtension.js +0 -5
  328. package/dist/esm/test/fixtures/v2/d3Import.js +0 -7
  329. package/dist/esm/test/fixtures/v2/d3ImportPkg.js +0 -19
  330. package/dist/esm/test/fixtures/v2/d3RosettaImportPkg.js +0 -19
  331. package/dist/esm/test/fixtures/v2/es6Preserve.js +0 -6
  332. package/dist/esm/test/fixtures/v2/generatorSupport.js +0 -6
  333. package/dist/esm/test/fixtures/v2/index.js +0 -15
  334. package/dist/esm/test/fixtures/v2/jsxTranspile.js +0 -6
  335. package/dist/esm/test/fixtures/v2/reactDomImport.js +0 -8
  336. package/dist/esm/test/fixtures/v2/reactDomImportPkg.js +0 -24
  337. package/dist/esm/test/fixtures/v2/reactImport.js +0 -7
  338. package/dist/esm/test/fixtures/v2/reactImportPkg.js +0 -17
  339. package/dist/esm/test/fixtures/v2/sourceMapErrorFixture.js +0 -19
  340. package/dist/esm/test/fixtures/v2/unicodeSupport.js +0 -6
  341. package/dist/esm/test/fixtures/v3/basicIndexJS.js +0 -7
  342. package/dist/esm/test/fixtures/v3/cssImport.js +0 -9
  343. package/dist/esm/test/fixtures/v3/csvImport.js +0 -11
  344. package/dist/esm/test/fixtures/v3/csvStrangeChars.js +0 -12
  345. package/dist/esm/test/fixtures/v3/index.js +0 -9
  346. package/dist/esm/test/fixtures/v3/jsExport.js +0 -10
  347. package/dist/esm/test/fixtures/v3/sourcemap.js +0 -10
  348. package/dist/esm/test/fixtures/v3/svelte.js +0 -18
  349. package/dist/esm/test/fixtures/v3/vizContent.js +0 -11
  350. package/dist/esm/test/fixtures/v3/vizImport.js +0 -85
  351. package/dist/esm/test/fixtures/v4/d3Usage.js +0 -31
  352. package/dist/esm/test/fixtures/v4/esmBuild.js +0 -18
  353. package/dist/esm/test/fixtures/v4/fetchInterception.js +0 -18
  354. package/dist/esm/test/fixtures/v4/index.js +0 -9
  355. package/dist/esm/test/fixtures/v4/jsScriptTagTypeModule.js +0 -18
  356. package/dist/esm/test/fixtures/v4/jsScriptTagTypeModules.js +0 -12
  357. package/dist/esm/test/fixtures/v4/reactHooks.js +0 -47
  358. package/dist/esm/test/fixtures/v4/reactJsx.js +0 -34
  359. package/dist/esm/test/fixtures/v4/threeJsUsage.js +0 -24
  360. package/dist/esm/test/fixtures/v4/typeScriptSupport.js +0 -29
  361. package/dist/esm/test/testInBrowser.js +0 -47
  362. package/dist/esm/test/testStackTrace.js +0 -55
  363. package/dist/esm/test/v1.test.js +0 -65
  364. package/dist/esm/test/v2.test.js +0 -121
  365. package/dist/esm/test/v3.test.js +0 -114
  366. package/dist/esm/test/v4.test.js +0 -100
  367. package/dist/esm/types.js +0 -1
  368. package/dist/esm/utils/vizContentToFileCollection.js +0 -20
  369. package/dist/esm/utils/vizContentToFileCollection.test.js +0 -75
  370. package/dist/esm/v2/computeBundleJSV2.js +0 -29
  371. package/dist/esm/v2/getComputedIndexHtml.js +0 -81
  372. package/dist/esm/v2/getComputedIndexHtml.test.js +0 -134
  373. package/dist/esm/v2/index.js +0 -1
  374. package/dist/esm/v2/v2Build.js +0 -11
  375. package/dist/esm/v3/cleanRollupErrorMessage.js +0 -9
  376. package/dist/esm/v3/computeBundleJSV3.js +0 -48
  377. package/dist/esm/v3/createVizContent.js +0 -23
  378. package/dist/esm/v3/extractVizImport.js +0 -23
  379. package/dist/esm/v3/extractVizImport.test.js +0 -30
  380. package/dist/esm/v3/htmlTemplate.js +0 -89
  381. package/dist/esm/v3/index.js +0 -1
  382. package/dist/esm/v3/parseId.js +0 -5
  383. package/dist/esm/v3/parseId.test.js +0 -25
  384. package/dist/esm/v3/setupV3Runtime.js +0 -341
  385. package/dist/esm/v3/slugCache.js +0 -35
  386. package/dist/esm/v3/slugCache.test.js +0 -105
  387. package/dist/esm/v3/transformDSV/dsvParseSrc.js +0 -121
  388. package/dist/esm/v3/transformDSV/index.js +0 -40
  389. package/dist/esm/v3/transformSvelte.js +0 -77
  390. package/dist/esm/v3/types.js +0 -1
  391. package/dist/esm/v3/v3Build.js +0 -30
  392. package/dist/esm/v3/vizCache.js +0 -36
  393. package/dist/esm/v3/vizCache.test.js +0 -98
  394. package/dist/esm/v3/vizLoad.js +0 -46
  395. package/dist/esm/v3/vizResolve.js +0 -69
  396. package/dist/esm/v4/index.js +0 -134
  397. package/dist/fixtures/basicHTML.d.ts +0 -2
  398. package/dist/fixtures/basicHTML.js +0 -22
  399. package/dist/fixtures/fetchProxy.d.ts +0 -2
  400. package/dist/fixtures/fetchProxy.js +0 -25
  401. package/dist/fixtures/index.d.ts +0 -3
  402. package/dist/fixtures/index.js +0 -9
  403. package/dist/fixtures/jsScriptTag.d.ts +0 -2
  404. package/dist/fixtures/jsScriptTag.js +0 -19
  405. package/dist/index.test.d.ts +0 -1
  406. package/dist/index.test.js +0 -50
  407. package/dist/magicSandbox/fixProtocollessUrls.d.ts +0 -4
  408. package/dist/magicSandbox/fixProtocollessUrls.js +0 -10
  409. package/dist/magicSandbox/generateInterceptorScript.d.ts +0 -4
  410. package/dist/magicSandbox/generateInterceptorScript.js +0 -178
  411. package/dist/magicSandbox/index.d.ts +0 -19
  412. package/dist/magicSandbox/index.js +0 -48
  413. package/dist/test/fixtures/basicHTML.d.ts +0 -2
  414. package/dist/test/fixtures/basicHTML.js +0 -19
  415. package/dist/test/fixtures/fetchProxy.d.ts +0 -2
  416. package/dist/test/fixtures/fetchProxy.js +0 -22
  417. package/dist/test/fixtures/index.d.ts +0 -6
  418. package/dist/test/fixtures/index.js +0 -6
  419. package/dist/test/fixtures/jsScriptTag.d.ts +0 -2
  420. package/dist/test/fixtures/jsScriptTag.js +0 -16
  421. package/dist/test/fixtures/magicSandbox/basicHTML.d.ts +0 -5
  422. package/dist/test/fixtures/magicSandbox/basicHTML.js +0 -17
  423. package/dist/test/fixtures/magicSandbox/fetchProxy.d.ts +0 -11
  424. package/dist/test/fixtures/magicSandbox/fetchProxy.js +0 -18
  425. package/dist/test/fixtures/magicSandbox/index.d.ts +0 -6
  426. package/dist/test/fixtures/magicSandbox/index.js +0 -6
  427. package/dist/test/fixtures/magicSandbox/jsScriptTag.d.ts +0 -8
  428. package/dist/test/fixtures/magicSandbox/jsScriptTag.js +0 -13
  429. package/dist/test/fixtures/magicSandbox/protocolTest.d.ts +0 -5
  430. package/dist/test/fixtures/magicSandbox/protocolTest.js +0 -17
  431. package/dist/test/fixtures/magicSandbox/styleTest.d.ts +0 -8
  432. package/dist/test/fixtures/magicSandbox/styleTest.js +0 -19
  433. package/dist/test/fixtures/magicSandbox/xmlTest.d.ts +0 -8
  434. package/dist/test/fixtures/magicSandbox/xmlTest.js +0 -23
  435. package/dist/test/fixtures/protocolTest.d.ts +0 -2
  436. package/dist/test/fixtures/protocolTest.js +0 -19
  437. package/dist/test/fixtures/styleTest.d.ts +0 -2
  438. package/dist/test/fixtures/styleTest.js +0 -22
  439. package/dist/test/fixtures/v1/basicHTML.js +0 -15
  440. package/dist/test/fixtures/v1/fetchProxy.js +0 -12
  441. package/dist/test/fixtures/v1/index.js +0 -6
  442. package/dist/test/fixtures/v1/jsScriptTag.js +0 -9
  443. package/dist/test/fixtures/v1/protocolTest.js +0 -15
  444. package/dist/test/fixtures/v1/styleTest.js +0 -15
  445. package/dist/test/fixtures/v1/xmlTest.js +0 -19
  446. package/dist/test/fixtures/v2/basicBundle.js +0 -5
  447. package/dist/test/fixtures/v2/basicBundleNoExtension.js +0 -5
  448. package/dist/test/fixtures/v2/d3Import.js +0 -7
  449. package/dist/test/fixtures/v2/d3ImportPkg.js +0 -19
  450. package/dist/test/fixtures/v2/d3RosettaImportPkg.js +0 -19
  451. package/dist/test/fixtures/v2/es6Preserve.js +0 -6
  452. package/dist/test/fixtures/v2/generatorSupport.js +0 -6
  453. package/dist/test/fixtures/v2/index.js +0 -15
  454. package/dist/test/fixtures/v2/jsxTranspile.js +0 -6
  455. package/dist/test/fixtures/v2/reactDomImport.js +0 -8
  456. package/dist/test/fixtures/v2/reactDomImportPkg.js +0 -24
  457. package/dist/test/fixtures/v2/reactImport.js +0 -7
  458. package/dist/test/fixtures/v2/reactImportPkg.js +0 -17
  459. package/dist/test/fixtures/v2/sourceMapErrorFixture.js +0 -19
  460. package/dist/test/fixtures/v2/unicodeSupport.js +0 -6
  461. package/dist/test/fixtures/v3/basicIndexJS.js +0 -7
  462. package/dist/test/fixtures/v3/cssImport.js +0 -9
  463. package/dist/test/fixtures/v3/csvImport.js +0 -11
  464. package/dist/test/fixtures/v3/csvStrangeChars.js +0 -12
  465. package/dist/test/fixtures/v3/index.js +0 -9
  466. package/dist/test/fixtures/v3/jsExport.js +0 -10
  467. package/dist/test/fixtures/v3/sourcemap.js +0 -10
  468. package/dist/test/fixtures/v3/svelte.js +0 -18
  469. package/dist/test/fixtures/v3/vizContent.js +0 -11
  470. package/dist/test/fixtures/v3/vizImport.js +0 -85
  471. package/dist/test/fixtures/v4/d3Usage.js +0 -31
  472. package/dist/test/fixtures/v4/esmBuild.js +0 -18
  473. package/dist/test/fixtures/v4/fetchInterception.js +0 -18
  474. package/dist/test/fixtures/v4/index.js +0 -9
  475. package/dist/test/fixtures/v4/jsScriptTagTypeModule.js +0 -18
  476. package/dist/test/fixtures/v4/jsScriptTagTypeModules.js +0 -12
  477. package/dist/test/fixtures/v4/reactHooks.js +0 -47
  478. package/dist/test/fixtures/v4/reactJsx.js +0 -34
  479. package/dist/test/fixtures/v4/threeJsUsage.js +0 -24
  480. package/dist/test/fixtures/v4/typeScriptSupport.js +0 -29
  481. package/dist/test/fixtures/xmlTest.d.ts +0 -2
  482. package/dist/test/fixtures/xmlTest.js +0 -26
  483. package/dist/test/index.test.d.ts +0 -1
  484. package/dist/test/index.test.js +0 -40
  485. package/dist/test/testInBrowser.js +0 -47
  486. package/dist/test/testStackTrace.js +0 -55
  487. package/dist/test/v1.test.js +0 -65
  488. package/dist/test/v2.test.js +0 -121
  489. package/dist/test/v3.test.js +0 -114
  490. package/dist/test/v4.test.js +0 -100
  491. package/dist/types/buildHTML.d.ts +0 -14
  492. package/dist/types/common/packageJson.d.ts +0 -39
  493. package/dist/types/common/packageJson.test.d.ts +0 -1
  494. package/dist/types/common/sucrasePlugin.d.ts +0 -2
  495. package/dist/types/common/virtualFileSystem.d.ts +0 -3
  496. package/dist/types/determineRuntimeVersion.d.ts +0 -3
  497. package/dist/types/determineRuntimeVersion.test.d.ts +0 -1
  498. package/dist/types/index.d.ts +0 -4
  499. package/dist/types/test/fixtures/v1/basicHTML.d.ts +0 -3
  500. package/dist/types/test/fixtures/v1/fetchProxy.d.ts +0 -5
  501. package/dist/types/test/fixtures/v1/index.d.ts +0 -6
  502. package/dist/types/test/fixtures/v1/jsScriptTag.d.ts +0 -4
  503. package/dist/types/test/fixtures/v1/protocolTest.d.ts +0 -3
  504. package/dist/types/test/fixtures/v1/styleTest.d.ts +0 -4
  505. package/dist/types/test/fixtures/v1/xmlTest.d.ts +0 -4
  506. package/dist/types/test/fixtures/v2/basicBundle.d.ts +0 -5
  507. package/dist/types/test/fixtures/v2/basicBundleNoExtension.d.ts +0 -5
  508. package/dist/types/test/fixtures/v2/d3Import.d.ts +0 -4
  509. package/dist/types/test/fixtures/v2/d3ImportPkg.d.ts +0 -5
  510. package/dist/types/test/fixtures/v2/d3RosettaImportPkg.d.ts +0 -5
  511. package/dist/types/test/fixtures/v2/es6Preserve.d.ts +0 -4
  512. package/dist/types/test/fixtures/v2/generatorSupport.d.ts +0 -4
  513. package/dist/types/test/fixtures/v2/index.d.ts +0 -14
  514. package/dist/types/test/fixtures/v2/jsxTranspile.d.ts +0 -4
  515. package/dist/types/test/fixtures/v2/reactDomImport.d.ts +0 -4
  516. package/dist/types/test/fixtures/v2/reactDomImportPkg.d.ts +0 -5
  517. package/dist/types/test/fixtures/v2/reactImport.d.ts +0 -4
  518. package/dist/types/test/fixtures/v2/reactImportPkg.d.ts +0 -5
  519. package/dist/types/test/fixtures/v2/sourceMapErrorFixture.d.ts +0 -5
  520. package/dist/types/test/fixtures/v2/unicodeSupport.d.ts +0 -4
  521. package/dist/types/test/fixtures/v3/basicIndexJS.d.ts +0 -3
  522. package/dist/types/test/fixtures/v3/cssImport.d.ts +0 -4
  523. package/dist/types/test/fixtures/v3/csvImport.d.ts +0 -4
  524. package/dist/types/test/fixtures/v3/csvStrangeChars.d.ts +0 -4
  525. package/dist/types/test/fixtures/v3/index.d.ts +0 -9
  526. package/dist/types/test/fixtures/v3/jsExport.d.ts +0 -4
  527. package/dist/types/test/fixtures/v3/sourcemap.d.ts +0 -3
  528. package/dist/types/test/fixtures/v3/svelte.d.ts +0 -4
  529. package/dist/types/test/fixtures/v3/vizContent.d.ts +0 -2
  530. package/dist/types/test/fixtures/v3/vizImport.d.ts +0 -6
  531. package/dist/types/test/fixtures/v4/d3Usage.d.ts +0 -5
  532. package/dist/types/test/fixtures/v4/esmBuild.d.ts +0 -5
  533. package/dist/types/test/fixtures/v4/fetchInterception.d.ts +0 -5
  534. package/dist/types/test/fixtures/v4/index.d.ts +0 -9
  535. package/dist/types/test/fixtures/v4/jsScriptTagTypeModule.d.ts +0 -4
  536. package/dist/types/test/fixtures/v4/jsScriptTagTypeModules.d.ts +0 -5
  537. package/dist/types/test/fixtures/v4/reactHooks.d.ts +0 -6
  538. package/dist/types/test/fixtures/v4/reactJsx.d.ts +0 -6
  539. package/dist/types/test/fixtures/v4/threeJsUsage.d.ts +0 -4
  540. package/dist/types/test/fixtures/v4/typeScriptSupport.d.ts +0 -5
  541. package/dist/types/test/testInBrowser.d.ts +0 -15
  542. package/dist/types/test/testStackTrace.d.ts +0 -9
  543. package/dist/types/test/v1.test.d.ts +0 -1
  544. package/dist/types/test/v2.test.d.ts +0 -1
  545. package/dist/types/test/v3.test.d.ts +0 -1
  546. package/dist/types/test/v4.test.d.ts +0 -1
  547. package/dist/types/types.d.ts +0 -1
  548. package/dist/types/utils/vizContentToFileCollection.d.ts +0 -8
  549. package/dist/types/utils/vizContentToFileCollection.test.d.ts +0 -1
  550. package/dist/types/v2/computeBundleJSV2.d.ts +0 -7
  551. package/dist/types/v2/getComputedIndexHtml.d.ts +0 -4
  552. package/dist/types/v2/getComputedIndexHtml.test.d.ts +0 -1
  553. package/dist/types/v2/index.d.ts +0 -1
  554. package/dist/types/v2/v2Build.d.ts +0 -7
  555. package/dist/types/v3/cleanRollupErrorMessage.d.ts +0 -4
  556. package/dist/types/v3/computeBundleJSV3.d.ts +0 -17
  557. package/dist/types/v3/createVizContent.d.ts +0 -8
  558. package/dist/types/v3/extractVizImport.d.ts +0 -6
  559. package/dist/types/v3/extractVizImport.test.d.ts +0 -1
  560. package/dist/types/v3/htmlTemplate.d.ts +0 -5
  561. package/dist/types/v3/index.d.ts +0 -1
  562. package/dist/types/v3/parseId.d.ts +0 -6
  563. package/dist/types/v3/parseId.test.d.ts +0 -1
  564. package/dist/types/v3/setupV3Runtime.d.ts +0 -15
  565. package/dist/types/v3/slugCache.d.ts +0 -11
  566. package/dist/types/v3/slugCache.test.d.ts +0 -1
  567. package/dist/types/v3/transformDSV/dsvParseSrc.d.ts +0 -1
  568. package/dist/types/v3/transformDSV/index.d.ts +0 -2
  569. package/dist/types/v3/transformSvelte.d.ts +0 -8
  570. package/dist/types/v3/types.d.ts +0 -65
  571. package/dist/types/v3/v3Build.d.ts +0 -14
  572. package/dist/types/v3/vizCache.d.ts +0 -10
  573. package/dist/types/v3/vizCache.test.d.ts +0 -1
  574. package/dist/types/v3/vizLoad.d.ts +0 -7
  575. package/dist/types/v3/vizResolve.d.ts +0 -7
  576. package/dist/types/v4/index.d.ts +0 -10
  577. package/dist/types.js +0 -1
  578. package/dist/utils/getFileText.d.ts +0 -2
  579. package/dist/utils/getFileText.js +0 -13
  580. package/dist/utils/getFileText.test.d.ts +0 -1
  581. package/dist/utils/getFileText.test.js +0 -72
  582. package/dist/utils/vizContentToFileCollection.d.ts +0 -7
  583. package/dist/utils/vizContentToFileCollection.js +0 -19
  584. package/dist/utils/vizContentToFileCollection.test.d.ts +0 -1
  585. package/dist/utils/vizContentToFileCollection.test.js +0 -75
  586. package/dist/v2/computeBundleJSV2.js +0 -29
  587. package/dist/v2/getComputedIndexHtml.js +0 -81
  588. package/dist/v2/getComputedIndexHtml.test.js +0 -134
  589. package/dist/v2/index.js +0 -1
  590. package/dist/v2/v2Build.js +0 -11
  591. package/dist/v3/cleanRollupErrorMessage.js +0 -9
  592. package/dist/v3/computeBundleJSV3.js +0 -48
  593. package/dist/v3/createVizContent.js +0 -23
  594. package/dist/v3/extractVizImport.js +0 -23
  595. package/dist/v3/extractVizImport.test.js +0 -30
  596. package/dist/v3/htmlTemplate.js +0 -89
  597. package/dist/v3/index.js +0 -1
  598. package/dist/v3/parseId.js +0 -5
  599. package/dist/v3/parseId.test.js +0 -25
  600. package/dist/v3/setupV3Runtime.js +0 -341
  601. package/dist/v3/slugCache.js +0 -35
  602. package/dist/v3/slugCache.test.js +0 -105
  603. package/dist/v3/transformDSV/dsvParseSrc.js +0 -121
  604. package/dist/v3/transformDSV/index.js +0 -40
  605. package/dist/v3/transformSvelte.js +0 -77
  606. package/dist/v3/types.js +0 -1
  607. package/dist/v3/v3Build.js +0 -30
  608. package/dist/v3/vizCache.js +0 -36
  609. package/dist/v3/vizCache.test.js +0 -98
  610. package/dist/v3/vizLoad.js +0 -46
  611. package/dist/v3/vizResolve.js +0 -69
  612. package/dist/v4/index.js +0 -134
package/README.md CHANGED
@@ -18,20 +18,20 @@ The library automatically detects which runtime version to use based on the file
18
18
  - **v3**: When only `index.js` is present (no `index.html`)
19
19
  - **v4**: When `index.html` contains ES module scripts with import maps
20
20
 
21
- | Feature | **V1** | **V2** | **V3** | **V4** |
22
- | --------------------- | ----------------- | ------------------------------ | --------------------------------- | ---------------------------- |
23
- | **When Used** | Only `index.html` | `index.html` + `index.js/.jsx` | Only `index.js` (no `index.html`) | `index.html` with ES modules |
24
- | **`index.html`** | User-provided | User-provided | Auto-generated | User-provided |
25
- | **ES Modules** | | ✅ | ✅ | |
26
- | **UMD Libraries** | | | | |
27
- | **ESM Libraries** | | | | ✅ |
28
- | **JSX Support** | | | | ✅ |
29
- | **Svelte Support** | | | ✅ | |
30
- | **Cross-Viz Imports** | | | ✅ | |
31
- | **State Management** | | | ✅ | |
32
- | **Import from CSV** | | | ✅ | |
33
- | **`fetch` proxy** | | | | |
34
- | **Best For** | Simple HTML demos | React with CDN deps | Svelte / reusable D3 | Modern module-based apps |
21
+ | Feature | **V1** | **V2** | **V3** | **V4** |
22
+ | ------------------------ | ----------------- | ------------------------------ | --------------------------------- | ---------------------------- |
23
+ | **Custom `index.html`** | | | ⬜️ | |
24
+ | **Local ES Modules** | ⬜️ | | | ✅ |
25
+ | **UMD Libraries** | | ✅ | ✅ | ⬜️ |
26
+ | **ESM Libraries** | ⬜️ | ⬜️ | ⬜️ | |
27
+ | **React JSX** | ⬜️ | | ⬜️ | ✅ |
28
+ | **TypeScript** | ⬜️ | ⬜️ | ⬜️ | ✅ |
29
+ | **Svelte** | ⬜️ | ⬜️ | ✅ | ⬜️ |
30
+ | **Cross-Viz Imports** | ⬜️ | ⬜️ | ✅ | ⬜️ |
31
+ | **Hot Reloading** | ⬜️ | ⬜️ | ✅ | ⬜️ |
32
+ | **State Management** | ⬜️ | ⬜️ | ✅ | ⬜️ |
33
+ | **Import from CSV** | ⬜️ | ⬜️ | | ⬜️ |
34
+ | **`fetch` proxy** | | | ⬜️ | |
35
35
 
36
36
  ## V1 Runtime
37
37
 
@@ -1,8 +1,8 @@
1
- import type { RollupBuild, RollupOptions } from "rollup";
2
- import { VizCache } from "./v3/vizCache";
3
- import { SlugCache } from "./v3/slugCache";
4
- import { SvelteCompiler } from "./v3/transformSvelte";
5
1
  import { FileCollection } from "@vizhub/viz-types";
2
+ import type { RollupBuild, RollupOptions } from "rollup";
3
+ import { VizCache } from "./v3/vizCache.js";
4
+ import { SlugCache } from "./v3/slugCache.js";
5
+ import { SvelteCompiler } from "./v3/transformSvelte.js";
6
6
  export declare const buildHTML: ({ files, rollup, enableSourcemap, vizCache, vizId, slugCache, getSvelteCompiler, }: {
7
7
  files?: FileCollection;
8
8
  rollup?: (options: RollupOptions) => Promise<RollupBuild>;
@@ -12,3 +12,4 @@ export declare const buildHTML: ({ files, rollup, enableSourcemap, vizCache, viz
12
12
  slugCache?: SlugCache;
13
13
  getSvelteCompiler?: () => Promise<SvelteCompiler>;
14
14
  }) => Promise<string>;
15
+ //# sourceMappingURL=buildHTML.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildHTML.d.ts","sourceRoot":"","sources":["../src/buildHTML.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAC;AAKzD,OAAO,EAAkB,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5D,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAKzD,eAAO,MAAM,SAAS,GAAU,oFAQ7B;IAGD,KAAK,CAAC,EAAE,cAAc,CAAC;IAGvB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IAC1D,eAAe,CAAC,EAAE,OAAO,CAAC;IAI1B,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAGpB,KAAK,CAAC,EAAE,MAAM,CAAC;IAGf,SAAS,CAAC,EAAE,SAAS,CAAC;IAGtB,iBAAiB,CAAC,EAAE,MAAM,OAAO,CAAC,cAAc,CAAC,CAAC;CACnD,KAAG,OAAO,CAAC,MAAM,CAkGjB,CAAC"}
@@ -37,3 +37,4 @@ export declare const getLicense: (files: FileCollection) => string | {
37
37
  } | undefined;
38
38
  export declare const getConfiguredGlobals: (pkg: PackageJson) => Record<string, string>;
39
39
  export declare const getGlobals: (pkg: PackageJson) => Record<string, string>;
40
+ //# sourceMappingURL=packageJson.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packageJson.d.ts","sourceRoot":"","sources":["../../src/common/packageJson.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,MAAM,OAAO,GAAG,MAAM,CAAC;AAE7B,MAAM,WAAW,WAAW;IAC1B,YAAY,CAAC,EAAE;QACb,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;KACvB,CAAC;IACF,MAAM,CAAC,EAAE;QACP,SAAS,CAAC,EAAE;YACV,CAAC,GAAG,EAAE,MAAM,GAAG,mBAAmB,CAAC;SACpC,CAAC;KACH,CAAC;IACF,OAAO,CAAC,EAAE,OAAO,GAAG;QAAE,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;CACtC;AAQD,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,CAAC,GAAG,EAAE,MAAM,GAAG,mBAAmB,CAAC;CACpC;AAID,eAAO,MAAM,WAAW,GACtB,OAAO,cAAc,KACpB,WAwBF,CAAC;AAEF,eAAO,MAAM,YAAY,GAAI,OAAO,cAAc;;CACX,CAAC;AAExC,eAAO,MAAM,sBAAsB,GACjC,OAAO,cAAc;;CAItB,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAC3B,mBAAmB,UAAU,EAC7B,WAAW,oBAAoB,EAC/B,YAAgB,WAUjB,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,OAAO,cAAc;UA9ElB,MAAM;aAwFnC,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAC/B,KAAK,WAAW,KACf,MAAM,CAAC,MAAM,EAAE,MAAM,CAcvB,CAAC;AAQF,eAAO,MAAM,UAAU,GACrB,KAAK,WAAW,KACf,MAAM,CAAC,MAAM,EAAE,MAAM,CAOvB,CAAC"}
@@ -1 +1,2 @@
1
1
  export {};
2
+ //# sourceMappingURL=packageJson.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packageJson.test.d.ts","sourceRoot":"","sources":["../../src/common/packageJson.test.ts"],"names":[],"mappings":""}
@@ -1,2 +1,3 @@
1
1
  import type { Plugin } from "rollup";
2
2
  export declare function sucrasePlugin(): Plugin;
3
+ //# sourceMappingURL=sucrasePlugin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sucrasePlugin.d.ts","sourceRoot":"","sources":["../../src/common/sucrasePlugin.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAErC,wBAAgB,aAAa,IAAI,MAAM,CAwBtC"}
@@ -1,3 +1,4 @@
1
1
  import { FileCollection } from "@vizhub/viz-types";
2
2
  import { Plugin } from "rollup";
3
3
  export declare const virtualFileSystem: (files: FileCollection) => Plugin;
4
+ //# sourceMappingURL=virtualFileSystem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"virtualFileSystem.d.ts","sourceRoot":"","sources":["../../src/common/virtualFileSystem.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAsChC,eAAO,MAAM,iBAAiB,GAC5B,OAAO,cAAc,KACpB,MAuDF,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { VizContent, VizId } from "@vizhub/viz-types";
2
+ import { VizHubRuntime } from "./types";
3
+ export declare const createRuntime: ({ iframe, worker, setBuildErrorMessage, vizId, getLatestContent, resolveSlugKey, writeFile, }: {
4
+ iframe: HTMLIFrameElement;
5
+ worker: Worker;
6
+ setBuildErrorMessage?: (error: string | null) => void;
7
+ vizId?: VizId;
8
+ getLatestContent?: (vizId: VizId) => Promise<VizContent>;
9
+ resolveSlugKey?: (slugKey: string) => Promise<VizId>;
10
+ writeFile?: (fileName: string, content: string) => void;
11
+ }) => VizHubRuntime;
12
+ //# sourceMappingURL=createRuntime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createRuntime.d.ts","sourceRoot":"","sources":["../src/createRuntime.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,UAAU,EACV,KAAK,EACN,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAsB,aAAa,EAAE,MAAM,SAAS,CAAC;AAW5D,eAAO,MAAM,aAAa,GAAI,+FAQ3B;IACD,MAAM,EAAE,iBAAiB,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IACtD,KAAK,CAAC,EAAE,KAAK,CAAC;IACd,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,UAAU,CAAC,CAAC;IACzD,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,KAAK,CAAC,CAAC;IACrD,SAAS,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACzD,KAAG,aAsNH,CAAC"}
@@ -1,3 +1,4 @@
1
1
  import { FileCollection } from "@vizhub/viz-types";
2
- import { runtimeVersion } from "./types";
2
+ import type { runtimeVersion } from "./types";
3
3
  export declare const determineRuntimeVersion: (files: FileCollection) => runtimeVersion | null;
4
+ //# sourceMappingURL=determineRuntimeVersion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"determineRuntimeVersion.d.ts","sourceRoot":"","sources":["../src/determineRuntimeVersion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AAE9C,eAAO,MAAM,uBAAuB,GAClC,OAAO,cAAc,KACpB,cAAc,GAAG,IA4BnB,CAAC"}
@@ -1 +1,2 @@
1
1
  export {};
2
+ //# sourceMappingURL=determineRuntimeVersion.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"determineRuntimeVersion.test.d.ts","sourceRoot":"","sources":["../src/determineRuntimeVersion.test.ts"],"names":[],"mappings":""}
package/dist/index.cjs ADDED
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./slugCache-Bt1Sipcs.cjs"),a="IDLE",h="ENQUEUED",C="PENDING_CLEAN",N="PENDING_DIRTY",z=({iframe:c,worker:n,setBuildErrorMessage:i,vizId:p,getLatestContent:d,resolveSlugKey:f,writeFile:E})=>{let s=a,o=null,u=null;const g=({data:e})=>{if(e.type==="buildHTMLResponse"){const t=e.html,l=e.error;o&&(o(t),o=null),l?i&&i(l.message):(i&&i(null),t&&(c.srcdoc=t))}else if(e.type==="contentRequest"&&d){const{vizId:t}=e;d(t).then(l=>{n.postMessage({type:"contentResponse",vizId:t,content:l})})}else if(e.type==="resolveSlugRequest"&&f){const{slugKey:t,requestId:l}=e;f(t).then(I=>{n.postMessage({type:"resolveSlugResponse",slugKey:t,vizId:I,requestId:l})})}else e.type==="invalidateVizCacheResponse"&&y()};n.addEventListener("message",g);const R=e=>{const t=e.data;(t.type==="runDone"||t.type==="runError")&&(u&&(u(),u=null),t.type==="runError"&&i&&i(t.error.message)),t.type==="writeFile"&&E&&t.fileName&&t.content&&E(t.fileName,t.content)};window.addEventListener("message",R);const L=()=>{n.removeEventListener("message",g),window.removeEventListener("message",R)},D=e=>new Promise(t=>{o=t;const l={type:"buildHTMLRequest",fileCollection:e,vizId:p,enableSourcemap:!0};n.postMessage(l)}),v=async e=>{s=C,await D(e),s===N?(requestAnimationFrame(()=>v(e)),s=h):s=a};let m=null;const y=e=>{if(e)m=e;else if(!m)return;s===a?(s=h,v(m)):s===C&&(s=N)};return{handleCodeChange:y,invalidateVizCache:e=>{n.postMessage({type:"invalidateVizCacheRequest",changedVizIds:e})},resetSrcdoc:e=>{s=a,o=null,u=null,p&&n.postMessage({type:"resetSrcdocRequest",vizId:p,changedVizIds:e})},cleanup:L}},S=({rawMessage:c,vizId:n})=>{const i=new RegExp(n,"g");return c==null?void 0:c.replace(i,".")};exports.buildHTML=r.buildHTML;exports.createSlugCache=r.createSlugCache;exports.createVizCache=r.createVizCache;exports.createVizContent=r.createVizContent;exports.svelteCompilerUrl=r.svelteCompilerUrl;exports.cleanRollupErrorMessage=S;exports.createRuntime=z;
2
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sources":["../src/createRuntime.ts","../src/v3/cleanRollupErrorMessage.ts"],"sourcesContent":["import {\n FileCollection,\n VizContent,\n VizId,\n} from \"@vizhub/viz-types\";\nimport { BuildWorkerMessage, VizHubRuntime } from \"./types\";\n\n// Flag for debugging.\nconst DEBUG = false;\n\n// State constants\nconst IDLE = \"IDLE\";\nconst ENQUEUED = \"ENQUEUED\";\nconst PENDING_CLEAN = \"PENDING_CLEAN\";\nconst PENDING_DIRTY = \"PENDING_DIRTY\";\n\nexport const createRuntime = ({\n iframe,\n worker,\n setBuildErrorMessage,\n vizId,\n getLatestContent,\n resolveSlugKey,\n writeFile,\n}: {\n iframe: HTMLIFrameElement;\n worker: Worker;\n setBuildErrorMessage?: (error: string | null) => void;\n vizId?: VizId;\n getLatestContent?: (vizId: VizId) => Promise<VizContent>;\n resolveSlugKey?: (slugKey: string) => Promise<VizId>;\n writeFile?: (fileName: string, content: string) => void;\n}): VizHubRuntime => {\n // Track the current state of the runtime\n let state:\n | typeof IDLE\n | typeof ENQUEUED\n | typeof PENDING_CLEAN\n | typeof PENDING_DIRTY = IDLE;\n\n // Pending promise resolvers\n let pendingBuildPromise:\n | ((html?: string) => void)\n | null = null;\n let pendingRunPromise: (() => void) | null = null;\n\n // This runs when the build worker sends a message.\n const workerListener: (e: MessageEvent) => void = ({\n data,\n }: {\n data: BuildWorkerMessage;\n }) => {\n if (data.type === \"buildHTMLResponse\") {\n const html: string | undefined = data.html;\n const error: Error | undefined = data.error;\n\n // Resolve the pending build promise\n if (pendingBuildPromise) {\n pendingBuildPromise(html);\n pendingBuildPromise = null;\n }\n\n if (error) {\n setBuildErrorMessage &&\n setBuildErrorMessage(error.message);\n } else {\n setBuildErrorMessage && setBuildErrorMessage(null);\n\n // Reset the srcdoc\n if (html) {\n iframe.srcdoc = html;\n }\n }\n } else if (\n data.type === \"contentRequest\" &&\n getLatestContent\n ) {\n const { vizId } = data;\n\n getLatestContent(vizId).then((content) => {\n worker.postMessage({\n type: \"contentResponse\",\n vizId,\n content,\n });\n });\n } else if (\n data.type === \"resolveSlugRequest\" &&\n resolveSlugKey\n ) {\n const { slugKey, requestId } = data;\n\n resolveSlugKey(slugKey).then((vizId) => {\n worker.postMessage({\n type: \"resolveSlugResponse\",\n slugKey,\n vizId,\n requestId,\n });\n });\n } else if (data.type === \"invalidateVizCacheResponse\") {\n if (DEBUG) {\n console.log(\n \"[runtime] received invalidateVizCacheResponse\",\n );\n }\n // Trigger a code change to rebuild\n handleCodeChange();\n }\n };\n\n worker.addEventListener(\"message\", workerListener);\n\n // Handle messages from the iframe\n const windowListener = (event: MessageEvent) => {\n const data = event.data;\n\n if (\n data.type === \"runDone\" ||\n data.type === \"runError\"\n ) {\n if (pendingRunPromise) {\n pendingRunPromise();\n pendingRunPromise = null;\n }\n\n if (data.type === \"runError\") {\n setBuildErrorMessage &&\n setBuildErrorMessage(data.error.message);\n }\n }\n\n if (data.type === \"writeFile\" && writeFile) {\n if (data.fileName && data.content) {\n writeFile(data.fileName, data.content);\n }\n }\n };\n\n // This runs when the IFrame sends a message.\n window.addEventListener(\"message\", windowListener);\n\n const cleanup = () => {\n worker.removeEventListener(\"message\", workerListener);\n window.removeEventListener(\"message\", windowListener);\n };\n\n // Build the code\n const build = (\n fileCollection: FileCollection,\n ): Promise<string | undefined> => {\n return new Promise<string | undefined>((resolve) => {\n pendingBuildPromise = resolve;\n const message: BuildWorkerMessage = {\n type: \"buildHTMLRequest\",\n fileCollection,\n vizId,\n enableSourcemap: true,\n };\n worker.postMessage(message);\n });\n };\n\n // Update the runtime with new code\n const update = async (fileCollection: FileCollection) => {\n state = PENDING_CLEAN;\n\n DEBUG && console.log(\"[runtime] update: before build\");\n\n // Build the code\n const html = await build(fileCollection);\n\n DEBUG && console.log(\"[runtime] update: after build\");\n\n DEBUG && console.log(\"[runtime] html: \", html);\n\n // iframe.srcdoc = html || \"\";\n\n // TypeScript can't comprehend that `state`\n // may change during the await calls above.\n // @ts-ignore\n if (state === PENDING_DIRTY) {\n requestAnimationFrame(() => update(fileCollection));\n state = ENQUEUED;\n } else {\n state = IDLE;\n }\n };\n\n // Handle code changes\n let lastFileCollection: FileCollection | null = null;\n const handleCodeChange = (\n fileCollection?: FileCollection,\n ) => {\n DEBUG && console.log(\"[runtime] handleCodeChange\");\n if (fileCollection) {\n lastFileCollection = fileCollection;\n } else if (!lastFileCollection) {\n return; // No files to process\n }\n\n if (state === IDLE) {\n DEBUG &&\n console.log(\"[runtime] handleCodeChange: IDLE\");\n state = ENQUEUED;\n update(lastFileCollection);\n } else if (state === PENDING_CLEAN) {\n DEBUG &&\n console.log(\n \"[runtime] handleCodeChange: PENDING_CLEAN\",\n );\n state = PENDING_DIRTY;\n }\n };\n\n // Invalidate the viz cache for changed vizzes\n const invalidateVizCache = (\n changedVizIds: Array<VizId>,\n ): void => {\n worker.postMessage({\n type: \"invalidateVizCacheRequest\",\n changedVizIds,\n });\n };\n\n // Reset the srcdoc and runtime environment\n const resetSrcdoc = (changedVizIds: Array<VizId>) => {\n state = IDLE;\n pendingBuildPromise = null;\n pendingRunPromise = null;\n\n if (vizId) {\n worker.postMessage({\n type: \"resetSrcdocRequest\",\n vizId,\n changedVizIds,\n });\n }\n };\n\n return {\n handleCodeChange,\n invalidateVizCache,\n resetSrcdoc,\n cleanup,\n };\n};\n","// We want to remove the vizId from the error message\n// to make it more user-friendly.\n// Example error message before and after:\n// Before: \"7f0b69fcb754479699172d1887817027/index.js (14:8): Expected ';', '}' or <eof>\"\n// After: \"./index.js (14:8): Expected ';', '}' or <eof>\"\nexport const cleanRollupErrorMessage = ({\n rawMessage,\n vizId,\n}: {\n rawMessage: string;\n vizId: string;\n}) => {\n const regex = new RegExp(vizId, \"g\");\n return rawMessage?.replace(regex, \".\");\n};\n"],"names":["IDLE","ENQUEUED","PENDING_CLEAN","PENDING_DIRTY","createRuntime","iframe","worker","setBuildErrorMessage","vizId","getLatestContent","resolveSlugKey","writeFile","state","pendingBuildPromise","pendingRunPromise","workerListener","data","html","error","content","slugKey","requestId","handleCodeChange","windowListener","event","cleanup","build","fileCollection","resolve","message","update","lastFileCollection","changedVizIds","cleanRollupErrorMessage","rawMessage","regex"],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,12 @@
1
1
  export { buildHTML } from "./buildHTML";
2
- export { createVizCache, VizCache } from "./v3/vizCache";
3
- export { createSlugCache, SlugCache } from "./v3/slugCache";
2
+ export { createVizCache } from "./v3/vizCache";
3
+ export { createSlugCache } from "./v3/slugCache";
4
+ export { svelteCompilerUrl } from "./v3/transformSvelte";
5
+ export { createRuntime } from "./createRuntime";
6
+ export { cleanRollupErrorMessage } from "./v3/cleanRollupErrorMessage";
7
+ export { createVizContent } from "./v3/createVizContent";
8
+ export type { VizCache } from "./v3/vizCache";
9
+ export type { SlugCache } from "./v3/slugCache";
10
+ export type { SvelteCompiler } from "./v3/transformSvelte";
11
+ export type { VizHubRuntime } from "./types";
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,YAAY,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC"}
package/dist/index.js CHANGED
@@ -1,3 +1,100 @@
1
- export { buildHTML } from "./buildHTML";
2
- export { createVizCache } from "./v3/vizCache";
3
- export { createSlugCache } from "./v3/slugCache";
1
+ import { b as V, a as T, c as U, d as x, s as G } from "./slugCache-CxGQFqi6.js";
2
+ const p = "IDLE", N = "ENQUEUED", g = "PENDING_CLEAN", h = "PENDING_DIRTY", q = ({
3
+ iframe: c,
4
+ worker: n,
5
+ setBuildErrorMessage: i,
6
+ vizId: a,
7
+ getLatestContent: m,
8
+ resolveSlugKey: d,
9
+ writeFile: f
10
+ }) => {
11
+ let s = p, l = null, r = null;
12
+ const E = ({
13
+ data: e
14
+ }) => {
15
+ if (e.type === "buildHTMLResponse") {
16
+ const t = e.html, o = e.error;
17
+ l && (l(t), l = null), o ? i && i(o.message) : (i && i(null), t && (c.srcdoc = t));
18
+ } else if (e.type === "contentRequest" && m) {
19
+ const { vizId: t } = e;
20
+ m(t).then((o) => {
21
+ n.postMessage({
22
+ type: "contentResponse",
23
+ vizId: t,
24
+ content: o
25
+ });
26
+ });
27
+ } else if (e.type === "resolveSlugRequest" && d) {
28
+ const { slugKey: t, requestId: o } = e;
29
+ d(t).then((I) => {
30
+ n.postMessage({
31
+ type: "resolveSlugResponse",
32
+ slugKey: t,
33
+ vizId: I,
34
+ requestId: o
35
+ });
36
+ });
37
+ } else e.type === "invalidateVizCacheResponse" && y();
38
+ };
39
+ n.addEventListener("message", E);
40
+ const R = (e) => {
41
+ const t = e.data;
42
+ (t.type === "runDone" || t.type === "runError") && (r && (r(), r = null), t.type === "runError" && i && i(t.error.message)), t.type === "writeFile" && f && t.fileName && t.content && f(t.fileName, t.content);
43
+ };
44
+ window.addEventListener("message", R);
45
+ const L = () => {
46
+ n.removeEventListener("message", E), window.removeEventListener("message", R);
47
+ }, D = (e) => new Promise((t) => {
48
+ l = t;
49
+ const o = {
50
+ type: "buildHTMLRequest",
51
+ fileCollection: e,
52
+ vizId: a,
53
+ enableSourcemap: !0
54
+ };
55
+ n.postMessage(o);
56
+ }), v = async (e) => {
57
+ s = g, await D(e), s === h ? (requestAnimationFrame(() => v(e)), s = N) : s = p;
58
+ };
59
+ let u = null;
60
+ const y = (e) => {
61
+ if (e)
62
+ u = e;
63
+ else if (!u)
64
+ return;
65
+ s === p ? (s = N, v(u)) : s === g && (s = h);
66
+ };
67
+ return {
68
+ handleCodeChange: y,
69
+ invalidateVizCache: (e) => {
70
+ n.postMessage({
71
+ type: "invalidateVizCacheRequest",
72
+ changedVizIds: e
73
+ });
74
+ },
75
+ resetSrcdoc: (e) => {
76
+ s = p, l = null, r = null, a && n.postMessage({
77
+ type: "resetSrcdocRequest",
78
+ vizId: a,
79
+ changedVizIds: e
80
+ });
81
+ },
82
+ cleanup: L
83
+ };
84
+ }, P = ({
85
+ rawMessage: c,
86
+ vizId: n
87
+ }) => {
88
+ const i = new RegExp(n, "g");
89
+ return c == null ? void 0 : c.replace(i, ".");
90
+ };
91
+ export {
92
+ V as buildHTML,
93
+ P as cleanRollupErrorMessage,
94
+ q as createRuntime,
95
+ T as createSlugCache,
96
+ U as createVizCache,
97
+ x as createVizContent,
98
+ G as svelteCompilerUrl
99
+ };
100
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../src/createRuntime.ts","../src/v3/cleanRollupErrorMessage.ts"],"sourcesContent":["import {\n FileCollection,\n VizContent,\n VizId,\n} from \"@vizhub/viz-types\";\nimport { BuildWorkerMessage, VizHubRuntime } from \"./types\";\n\n// Flag for debugging.\nconst DEBUG = false;\n\n// State constants\nconst IDLE = \"IDLE\";\nconst ENQUEUED = \"ENQUEUED\";\nconst PENDING_CLEAN = \"PENDING_CLEAN\";\nconst PENDING_DIRTY = \"PENDING_DIRTY\";\n\nexport const createRuntime = ({\n iframe,\n worker,\n setBuildErrorMessage,\n vizId,\n getLatestContent,\n resolveSlugKey,\n writeFile,\n}: {\n iframe: HTMLIFrameElement;\n worker: Worker;\n setBuildErrorMessage?: (error: string | null) => void;\n vizId?: VizId;\n getLatestContent?: (vizId: VizId) => Promise<VizContent>;\n resolveSlugKey?: (slugKey: string) => Promise<VizId>;\n writeFile?: (fileName: string, content: string) => void;\n}): VizHubRuntime => {\n // Track the current state of the runtime\n let state:\n | typeof IDLE\n | typeof ENQUEUED\n | typeof PENDING_CLEAN\n | typeof PENDING_DIRTY = IDLE;\n\n // Pending promise resolvers\n let pendingBuildPromise:\n | ((html?: string) => void)\n | null = null;\n let pendingRunPromise: (() => void) | null = null;\n\n // This runs when the build worker sends a message.\n const workerListener: (e: MessageEvent) => void = ({\n data,\n }: {\n data: BuildWorkerMessage;\n }) => {\n if (data.type === \"buildHTMLResponse\") {\n const html: string | undefined = data.html;\n const error: Error | undefined = data.error;\n\n // Resolve the pending build promise\n if (pendingBuildPromise) {\n pendingBuildPromise(html);\n pendingBuildPromise = null;\n }\n\n if (error) {\n setBuildErrorMessage &&\n setBuildErrorMessage(error.message);\n } else {\n setBuildErrorMessage && setBuildErrorMessage(null);\n\n // Reset the srcdoc\n if (html) {\n iframe.srcdoc = html;\n }\n }\n } else if (\n data.type === \"contentRequest\" &&\n getLatestContent\n ) {\n const { vizId } = data;\n\n getLatestContent(vizId).then((content) => {\n worker.postMessage({\n type: \"contentResponse\",\n vizId,\n content,\n });\n });\n } else if (\n data.type === \"resolveSlugRequest\" &&\n resolveSlugKey\n ) {\n const { slugKey, requestId } = data;\n\n resolveSlugKey(slugKey).then((vizId) => {\n worker.postMessage({\n type: \"resolveSlugResponse\",\n slugKey,\n vizId,\n requestId,\n });\n });\n } else if (data.type === \"invalidateVizCacheResponse\") {\n if (DEBUG) {\n console.log(\n \"[runtime] received invalidateVizCacheResponse\",\n );\n }\n // Trigger a code change to rebuild\n handleCodeChange();\n }\n };\n\n worker.addEventListener(\"message\", workerListener);\n\n // Handle messages from the iframe\n const windowListener = (event: MessageEvent) => {\n const data = event.data;\n\n if (\n data.type === \"runDone\" ||\n data.type === \"runError\"\n ) {\n if (pendingRunPromise) {\n pendingRunPromise();\n pendingRunPromise = null;\n }\n\n if (data.type === \"runError\") {\n setBuildErrorMessage &&\n setBuildErrorMessage(data.error.message);\n }\n }\n\n if (data.type === \"writeFile\" && writeFile) {\n if (data.fileName && data.content) {\n writeFile(data.fileName, data.content);\n }\n }\n };\n\n // This runs when the IFrame sends a message.\n window.addEventListener(\"message\", windowListener);\n\n const cleanup = () => {\n worker.removeEventListener(\"message\", workerListener);\n window.removeEventListener(\"message\", windowListener);\n };\n\n // Build the code\n const build = (\n fileCollection: FileCollection,\n ): Promise<string | undefined> => {\n return new Promise<string | undefined>((resolve) => {\n pendingBuildPromise = resolve;\n const message: BuildWorkerMessage = {\n type: \"buildHTMLRequest\",\n fileCollection,\n vizId,\n enableSourcemap: true,\n };\n worker.postMessage(message);\n });\n };\n\n // Update the runtime with new code\n const update = async (fileCollection: FileCollection) => {\n state = PENDING_CLEAN;\n\n DEBUG && console.log(\"[runtime] update: before build\");\n\n // Build the code\n const html = await build(fileCollection);\n\n DEBUG && console.log(\"[runtime] update: after build\");\n\n DEBUG && console.log(\"[runtime] html: \", html);\n\n // iframe.srcdoc = html || \"\";\n\n // TypeScript can't comprehend that `state`\n // may change during the await calls above.\n // @ts-ignore\n if (state === PENDING_DIRTY) {\n requestAnimationFrame(() => update(fileCollection));\n state = ENQUEUED;\n } else {\n state = IDLE;\n }\n };\n\n // Handle code changes\n let lastFileCollection: FileCollection | null = null;\n const handleCodeChange = (\n fileCollection?: FileCollection,\n ) => {\n DEBUG && console.log(\"[runtime] handleCodeChange\");\n if (fileCollection) {\n lastFileCollection = fileCollection;\n } else if (!lastFileCollection) {\n return; // No files to process\n }\n\n if (state === IDLE) {\n DEBUG &&\n console.log(\"[runtime] handleCodeChange: IDLE\");\n state = ENQUEUED;\n update(lastFileCollection);\n } else if (state === PENDING_CLEAN) {\n DEBUG &&\n console.log(\n \"[runtime] handleCodeChange: PENDING_CLEAN\",\n );\n state = PENDING_DIRTY;\n }\n };\n\n // Invalidate the viz cache for changed vizzes\n const invalidateVizCache = (\n changedVizIds: Array<VizId>,\n ): void => {\n worker.postMessage({\n type: \"invalidateVizCacheRequest\",\n changedVizIds,\n });\n };\n\n // Reset the srcdoc and runtime environment\n const resetSrcdoc = (changedVizIds: Array<VizId>) => {\n state = IDLE;\n pendingBuildPromise = null;\n pendingRunPromise = null;\n\n if (vizId) {\n worker.postMessage({\n type: \"resetSrcdocRequest\",\n vizId,\n changedVizIds,\n });\n }\n };\n\n return {\n handleCodeChange,\n invalidateVizCache,\n resetSrcdoc,\n cleanup,\n };\n};\n","// We want to remove the vizId from the error message\n// to make it more user-friendly.\n// Example error message before and after:\n// Before: \"7f0b69fcb754479699172d1887817027/index.js (14:8): Expected ';', '}' or <eof>\"\n// After: \"./index.js (14:8): Expected ';', '}' or <eof>\"\nexport const cleanRollupErrorMessage = ({\n rawMessage,\n vizId,\n}: {\n rawMessage: string;\n vizId: string;\n}) => {\n const regex = new RegExp(vizId, \"g\");\n return rawMessage?.replace(regex, \".\");\n};\n"],"names":["IDLE","ENQUEUED","PENDING_CLEAN","PENDING_DIRTY","createRuntime","iframe","worker","setBuildErrorMessage","vizId","getLatestContent","resolveSlugKey","writeFile","state","pendingBuildPromise","pendingRunPromise","workerListener","data","html","error","content","slugKey","requestId","handleCodeChange","windowListener","event","cleanup","build","fileCollection","resolve","message","update","lastFileCollection","changedVizIds","cleanRollupErrorMessage","rawMessage","regex"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=setupV3Runtime.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setupV3Runtime.d.ts","sourceRoot":"","sources":["../../src/old-implementation-reference/setupV3Runtime.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/old-implementation-reference/types.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=worker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"worker.d.ts","sourceRoot":"","sources":["../../src/old-implementation-reference/worker.ts"],"names":[],"mappings":""}
@@ -0,0 +1,214 @@
1
+ "use strict";const b=require("magic-sandbox"),V=require("sucrase"),g=require("@vizhub/viz-utils"),J=e=>{if(Object.keys(e).length===0)return null;const t="index.html"in e,n="index.js"in e,r="index.jsx"in e;return t?e["index.html"].includes('type="module"')?"v4":n||r?"v2":"v1":!t&&n?"v3":null},R={dependencies:{},vizhub:{},license:"MIT"},D=!1,E=e=>{const t=e["package.json"];try{const n=t?JSON.parse(t):R;return D&&console.log("[packageJSON] pkg:",JSON.stringify(n,null,2)),n}catch{return R}},$=e=>E(e).dependencies||{},I=e=>(E(e).vizhub||{}).libraries||{},O=({name:e,version:t},n,r="jsdelivr")=>{const s=n[e]&&n[e].path||"";return r==="jsdelivr"?`https://cdn.jsdelivr.net/npm/${e}@${t}${s}`:`https://unpkg.com/${e}@${t}${s}`},B=e=>{var n;const t=(n=e==null?void 0:e.vizhub)==null?void 0:n.libraries;return t?Object.entries(t).reduce((r,[s,o])=>(o.global&&(r[s]=o.global),r),{}):{}},A={d3:"d3",react:"React","react-dom":"ReactDOM"},F=e=>{const t=B(e);return{...A,...t}},y=(e,t)=>new RegExp(`<${t}\\b`,"i").test(e)&&new RegExp(`</${t}>`,"i").test(e),q=e=>{const t=e.trim();return y(t,"html")&&y(t,"head")&&y(t,"body")?t:`<html><head></head><body>${t}</body></html>`},_=(e,t)=>e.replace(new RegExp(`<script[^>]*src=["'][^"']*${t.source}[^"']*["'][^>]*>\\s*<\/script>`,"gi"),""),T=(e,t,n)=>e.replace(new RegExp(t,"i"),`${n}${t}`),Y=(e,t)=>{let n=q(e);const r=Object.entries($(t));if(r.length){const o=I(t);r.forEach(([c])=>{n=_(n,new RegExp(`${c}@`))});const i=r.map(([c,a])=>O({name:c,version:a},o)).map(c=>`<script src="${c}"><\/script>`).join(`
2
+ `);n=T(n,"</head>",i+`
3
+ `)}if(t["bundle.js"]!==void 0||t["index.js"]!==void 0){const o='<script src="bundle.js"><\/script>',i=/<script\b[^>]*\bsrc=["']bundle\.js["'][^>]*>\s*<\/script>/gi,c=[...n.matchAll(i)];c.length===1&&(()=>{const l=c[0].index??-1;if(l===-1)return!1;const d=n.search(/<body\b[^>]*>/i),m=n.search(/<\/body>/i);return d!==-1&&m!==-1&&l>d&&l<m})()||(n=n.replace(i,""),n=T(n,"</body>",o))}return/^\s*<!DOCTYPE/i.test(n)?n:`<!DOCTYPE html>${n}`},G=e=>{const t=e["index.html"];return!t&&!e["index.js"]&&!e["bundle.js"]?"":Y(t||"<!DOCTYPE html><html><head></head><body></body></html>",e)},M=e=>{let t=e.replace(/^\.\//,"");return t=t.replace(/\/+/g,"/"),t=t.replace(/\/$/,""),t},H=(e,t)=>{const n=e.includes("/")?e.slice(0,e.lastIndexOf("/")):"",r=t.split("/"),s=n?n.split("/"):[];for(const o of r)o===".."?s.pop():o!=="."&&o!==""&&s.push(o);return s.join("/")},k=e=>({name:"virtual-file-system",resolveId(t,n){if(t.startsWith("./")||t.startsWith("../")){const s=M(n?H(n,t):t);if(e[s])return s;const o=[".js",".jsx",".ts",".tsx"];for(const i of o){const c=s+i;if(e[c])return c}}if(e[t])return t;const r=[".js",".jsx",".ts",".tsx"];for(const s of r){const o=t+s;if(e[o])return o}return null},load(t){return e[t]?e[t]:null}});function C(){return{name:"sucrase",transform(e,t){if(!t.match(/\.(?:js|[jt]sx)$/))return null;const n=V.transform(e,{transforms:["jsx","typescript"],filePath:t,sourceMapOptions:{compiledFilename:"bundle.js"},production:!0});return{code:n.code,map:n.sourceMap}}}}const Q=async({files:e,rollup:t,enableSourcemap:n=!0})=>{if(!e["index.js"])throw new Error("Missing index.js");const s={input:"./index.js",plugins:[k(e),C()],onwarn(l,d){l.code!=="UNRESOLVED_IMPORT"&&d(l)}},o={format:"iife",sourcemap:n},i=E(e);if(i){const l=F(i);l&&(s.external=Object.keys(l),o.globals=l)}const c=await t(s),{output:a}=await c.generate(o);return a[0].code},Z=async({files:e,rollup:t,enableSourcemap:n})=>({...e,"bundle.js":await Q({files:e,rollup:t,enableSourcemap:n}),"index.html":G(e)}),x=e=>{const[t,...n]=e.split("/"),r=n.join("/");return{vizId:t,fileName:r}},K=`var EOL = {},
4
+ EOF = {},
5
+ QUOTE = 34,
6
+ NEWLINE = 10,
7
+ RETURN = 13;
8
+
9
+ function objectConverter(columns) {
10
+ return new Function(
11
+ 'd',
12
+ 'return {' +
13
+ columns
14
+ .map(function (name, i) {
15
+ return (
16
+ JSON.stringify(name) + ': d[' + i + '] || ""'
17
+ );
18
+ })
19
+ .join(',') +
20
+ '}',
21
+ );
22
+ }
23
+
24
+ function customConverter(columns, f) {
25
+ var object = objectConverter(columns);
26
+ return function (row, i) {
27
+ return f(object(row), i, columns);
28
+ };
29
+ }
30
+
31
+ function dsv(delimiter) {
32
+ var DELIMITER = delimiter.charCodeAt(0);
33
+
34
+ function parse(text, f) {
35
+ var convert,
36
+ columns,
37
+ rows = parseRows(text, function (row, i) {
38
+ if (convert) return convert(row, i - 1);
39
+ (columns = row),
40
+ (convert = f
41
+ ? customConverter(row, f)
42
+ : objectConverter(row));
43
+ });
44
+ rows.columns = columns || [];
45
+ return rows;
46
+ }
47
+
48
+ function parseRows(text, f) {
49
+ var rows = [], // output rows
50
+ N = text.length,
51
+ I = 0, // current character index
52
+ n = 0, // current line number
53
+ t, // current token
54
+ eof = N <= 0, // current token followed by EOF?
55
+ eol = false; // current token followed by EOL?
56
+
57
+ // Strip the trailing newline.
58
+ if (text.charCodeAt(N - 1) === NEWLINE) --N;
59
+ if (text.charCodeAt(N - 1) === RETURN) --N;
60
+
61
+ function token() {
62
+ if (eof) return EOF;
63
+ if (eol) return (eol = false), EOL;
64
+
65
+ // Unescape quotes.
66
+ var i,
67
+ j = I,
68
+ c;
69
+ if (text.charCodeAt(j) === QUOTE) {
70
+ while (
71
+ (I++ < N && text.charCodeAt(I) !== QUOTE) ||
72
+ text.charCodeAt(++I) === QUOTE
73
+ );
74
+ if ((i = I) >= N) eof = true;
75
+ else if ((c = text.charCodeAt(I++)) === NEWLINE)
76
+ eol = true;
77
+ else if (c === RETURN) {
78
+ eol = true;
79
+ if (text.charCodeAt(I) === NEWLINE) ++I;
80
+ }
81
+ return text.slice(j + 1, i - 1).replace(/""/g, '"');
82
+ }
83
+
84
+ // Find next delimiter or newline.
85
+ while (I < N) {
86
+ if ((c = text.charCodeAt((i = I++))) === NEWLINE)
87
+ eol = true;
88
+ else if (c === RETURN) {
89
+ eol = true;
90
+ if (text.charCodeAt(I) === NEWLINE) ++I;
91
+ } else if (c !== DELIMITER) continue;
92
+ return text.slice(j, i);
93
+ }
94
+
95
+ // Return last token before EOF.
96
+ return (eof = true), text.slice(j, N);
97
+ }
98
+
99
+ while ((t = token()) !== EOF) {
100
+ var row = [];
101
+ while (t !== EOL && t !== EOF)
102
+ row.push(t), (t = token());
103
+ if (f && (row = f(row, n++)) == null) continue;
104
+ rows.push(row);
105
+ }
106
+
107
+ return rows;
108
+ }
109
+
110
+ return {
111
+ parse: parse,
112
+ };
113
+ }
114
+
115
+ var csv = dsv(',');
116
+
117
+ var csvParse = csv.parse;
118
+
119
+ var tsv = dsv(' ');
120
+
121
+ var tsvParse = tsv.parse;
122
+
123
+ export { csvParse, tsvParse };`,X=e=>e.replace(/\\/g,"\\\\").replace(/`/g,"\\`"),tt=()=>({name:"transformDSV",transform:async(e,t)=>{const{fileName:n}=x(t),r=n.endsWith(".csv"),s=n.endsWith(".tsv");if(r||s)return{code:`
124
+ ${K}
125
+ const data = ${r?"csvParse":"tsvParse"}(\`${X(e)}\`);
126
+ export default data;
127
+ `,map:{mappings:""}}}}),et=e=>{const t=/^@([a-zA-Z0-9_-]+)\/([a-zA-Z0-9_-]+)$/,n=e.match(t);return n?{userName:n[1],idOrSlug:n[2]}:null},nt=({vizId:e,slugCache:t})=>({name:"vizResolve",resolveId:async(n,r)=>{if(n.startsWith("./")&&!(r!=null&&r.startsWith("https://"))){let o=n.substring(2);if(!o.endsWith(".js")&&!o.endsWith(".css")&&!o.endsWith(".csv")&&!o.endsWith(".svelte")&&(o+=".js"),r){const{vizId:i,fileName:c}=x(r),a=c.split("/").slice(0,-1).join("/"),l=a?`${a}/${o}`:o;return`${i}/${l}`}return e+"/"+o}const s=et(n);if(s){let o;if(g.isVizId(s.idOrSlug))o=s.idOrSlug;else{if(!t)throw new Error("slugCache is required to import by slug in v3 runtime");o=await t.get(`${s.userName}/${s.idOrSlug}`)}return o+"/index.js"}}}),rt=({vizCache:e,trackCSSImport:t})=>({name:"vizLoad",load:async n=>{const{vizId:r,fileName:s}=x(n);if(s.endsWith(".css"))return t(n),"";const o=await e.get(r),i=g.getFileText(o,s);if(i===null)throw new Error(`Imported file "${s}" not found.`);return i}}),P=new Map;let j;const v="https://cdn.jsdelivr.net/npm/svelte@4.2.9",st=`${v}/compiler.cjs`,ot=({getSvelteCompiler:e})=>({name:"transformSvelte",load:async t=>{if(!t.startsWith(v))return;const n=P.get(t);if(n)return n;const r=await fetch(t).then(s=>s.text());return P.set(t,r),r},resolveId:async(t,n)=>{if(t==="svelte")return`${v}/src/runtime/index.js`;if(t.startsWith("svelte/")){const r=t.slice(7);return`${v}/src/runtime/${r}/index.js`}if(/^https?:/.test(t))return t;if(t.startsWith(".")&&n&&n.startsWith(v)){const r=new URL(t,n).href;return new URL(t,n).href,r}},transform:async(t,n)=>{const{fileName:r}=x(n);if(r.endsWith(".svelte")){if(!j){if(!e)throw new Error("Svelte compiler not available");j=await e()}return j(t,{filename:r,hydratable:!0}).js}}}),it=async({files:e,rollup:t,enableSourcemap:n=!0,vizCache:r,vizId:s,slugCache:o,getSvelteCompiler:i})=>{const c=new Set,a=u=>{c.add(u)};if(!e["index.js"])throw new Error("Missing index.js");const d={input:"./index.js",plugins:[...s?[nt({vizId:s,slugCache:o})]:[],tt(),C(),ot({getSvelteCompiler:i}),...r?[rt({vizCache:r,trackCSSImport:a})]:[]],onwarn(u,w){u.code!=="UNRESOLVED_IMPORT"&&w(u)}},m={format:"umd",name:"Viz",sourcemap:!!n,compact:!0},p=E(e);if(p){const u=F(p);u&&(d.external=Object.keys(u),m.globals=u)}const f=await t(d),{output:h}=await f.generate(m);return{src:h[0].code,cssFiles:Array.from(c)}};function ct(){return Math.random().toString().slice(2,7)}const at=({cdn:e,src:t,styles:n})=>{const s=`viz-container-${ct()}`;return`<!DOCTYPE html>
128
+ <html>
129
+ <head>
130
+ <meta charset="utf-8">${e}${n}
131
+ <style>
132
+ body {
133
+ margin: 0;
134
+ overflow: hidden;
135
+ }
136
+ #${s} {
137
+ height: 100vh;
138
+ }
139
+ </style>
140
+ </head>
141
+ <body>
142
+ <div id="${s}"></div>
143
+ <script id="injected-script">${t}<\/script>
144
+ <script>
145
+ (() => {
146
+ let cleanup;
147
+ const render = () => {
148
+ const container = document.getElementById('${s}');
149
+ typeof cleanup === 'function' && cleanup();
150
+ cleanup = Viz.main(container, { state: window.state, setState, writeFile });
151
+ };
152
+ const setState = (next) => {
153
+ window.state = next(window.state);
154
+ render();
155
+ };
156
+ const writeFile = (fileName, content) => {
157
+ parent.postMessage({ type: 'writeFile', fileName, content }, "*");
158
+ };
159
+ const run = () => {
160
+ try {
161
+ setState((state) => state || {});
162
+ } catch (error) {
163
+ console.error(error);
164
+ parent.postMessage({ type: 'runError', error }, "*");
165
+ }
166
+ }
167
+ run();
168
+ const runJS = (src) => {
169
+ document.getElementById('injected-script')?.remove();
170
+ const script = document.createElement('script');
171
+ script.textContent = src;
172
+ script.id = 'injected-script';
173
+ document.body.appendChild(script);
174
+ run();
175
+ };
176
+ const runCSS = (src, id) => {
177
+ const styleElementId = 'injected-style' + id;
178
+ let style = document.getElementById(styleElementId);
179
+ if (!style) {
180
+ style = document.createElement('style');
181
+ style.type = 'text/css';
182
+ style.id = styleElementId;
183
+ document.head.appendChild(style);
184
+ }
185
+ style.textContent = src;
186
+ };
187
+ onmessage = (message) => {
188
+ switch (message.data.type) {
189
+ case 'runJS':
190
+ runJS(message.data.src);
191
+ parent.postMessage({ type: 'runDone' }, "*");
192
+ break;
193
+ case 'runCSS':
194
+ runCSS(message.data.src, message.data.id);
195
+ break;
196
+ case 'ping':
197
+ parent.postMessage({ type: 'pong' }, "*");
198
+ break;
199
+ default:
200
+ break;
201
+ }
202
+ }
203
+ })();
204
+ <\/script>
205
+ </body>
206
+ </html>`},lt=async({files:e,rollup:t,enableSourcemap:n=!0,vizCache:r,vizId:s,slugCache:o,getSvelteCompiler:i})=>{const{src:c,cssFiles:a}=await it({files:e,rollup:t,enableSourcemap:n,vizCache:r,vizId:s,slugCache:o,getSvelteCompiler:i});let l="";if(a.length>0)for(let p=0;p<a.length;p++){const f=a[p],h=p>0?" ":`
207
+ `,u="injected-style"+f,{vizId:w,fileName:N}=x(f),U=await r.get(w),W=g.getFileText(U,N);l+=`${h}<style id="${u}">${W}</style>`}let d="";const m=Object.entries($(e));if(m.length>0){const p=I(e);d=m.map(([f,h],u)=>{const w=O({name:f,version:h},p);return`${u>0?" ":`
208
+ `}<script src="${w}"><\/script>`}).join("")}return at({cdn:d,src:c,styles:l})},ut=e=>{const t=[],n=/<script\b([^>]*)>[\s\S]*?<\/script>/gi;let r;for(;(r=n.exec(e))!==null;){const s=r[1];if(!/\btype\s*=\s*["']module["']/i.test(s))continue;const o=s.match(/\bsrc\s*=\s*["']([^"']+)["']/i);o&&t.push(o[1])}return t},dt=async({entryPoint:e,files:t,rollup:n,enableSourcemap:r=!0})=>{const s={input:`./${e}`,plugins:[k(t),C()],external:c=>(console.log("external",c),t[c]?!1:!c.startsWith("./")),onwarn(c,a){c.code!=="UNRESOLVED_IMPORT"&&a(c)}},o=await n(s),{output:i}=await o.generate({format:"es",sourcemap:r});return i[0].code},S=(e,t)=>new RegExp(`<${t}\\b`,"i").test(e)&&new RegExp(`</${t}>`,"i").test(e),pt=e=>{const t=e.trim();return S(t,"html")&&S(t,"head")&&S(t,"body")?t:`<html><head></head><body>${t}</body></html>`},mt=e=>e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),ft=(e,t,n)=>e.replace(new RegExp(t,"i"),`${n}${t}`),ht=e=>{const t=$(e);if(Object.keys(t).length===0)return null;const n=I(e),r={};for(const[s,o]of Object.entries(t))r[s]=O({name:s,version:o},n);return JSON.stringify({imports:r},null,2)},wt=(e,t)=>{if(!e["index.html"])return"";let n=pt(e["index.html"]);t.forEach((s,o)=>{const i=new RegExp(`<script\\b[^>]*\\bsrc=["']${mt(o)}["'][^>]*>[^<]*<\/script>`,"gi");n=n.replace(i,`<script type="module">
209
+ ${s}
210
+ <\/script>`)});const r=ht(e);if(r&&!/<script\b[^>]*type=["']importmap["'][^>]*>/i.test(n)){const o=`<script type="importmap">
211
+ ${r}
212
+ <\/script>
213
+ `;n=ft(n,"</head>",o)}return/^\s*<!DOCTYPE/i.test(n)?n:`<!DOCTYPE html>${n}`},vt=async({files:e,rollup:t,enableSourcemap:n=!0})=>{const r=e["index.html"]||"",s=ut(r);if(s.length===0)return e;const o=new Map;for(const c of s){const a=await dt({entryPoint:c,files:e,rollup:t,enableSourcemap:n});o.set(c,a)}const i=wt(e,o);return{...e,"index.html":i}},L=({initialContents:e,handleCacheMiss:t})=>{const n=new Map(e.map(i=>[i.id,i]));return{get:async i=>{const c=n.get(i);if(c!==void 0)return c;if(!t)throw new Error(`Unresolved import from vizId ${i}, cache miss handler not provided.`);const a=await t(i);if(a)return n.set(i,a),a;throw new Error(`Unresolved import from vizId ${i}`)},set:i=>{n.set(i.id,i)},invalidate:i=>{n.delete(i)}}},z=(e,t="Sample Content for Exporting")=>{const n=g.generateVizId(),r={};return Object.entries(e).forEach(([s,o])=>{const i=Math.floor(Math.random()*1e7).toString();r[i]={name:s,text:o}}),{id:n,files:r,title:t}},gt=async({files:e,rollup:t,enableSourcemap:n=!0,vizCache:r,vizId:s,slugCache:o,getSvelteCompiler:i})=>{var a;if(!e&&!r)throw new Error("Either files or vizCache is required");if(!e&&r&&!s)throw new Error("vizId is required when using vizCache");if(!e&&r&&s&&(e=g.vizFilesToFileCollection((a=await r.get(s))==null?void 0:a.files)),!e)throw new Error("Upable to extract viz files");const c=J(e);if(c==="v1")return b.magicSandbox(e);if(c==="v2"){if(!t)throw new Error("Rollup is required for v2 runtime");return b.magicSandbox(await Z({files:e,rollup:t,enableSourcemap:n}))}if(c==="v3"){if(!t)throw new Error("Rollup is required for v3 runtime");if(!r&&!s){const l=z(e);s=l.id,r=L({initialContents:[l],handleCacheMiss:async()=>{throw new Error("Cache miss handler not implemented")}})}if(!r)throw new Error("vizCache is required for v3 runtime");if(!s)throw new Error("vizId is required for v3 runtime");return await lt({files:e,rollup:t,vizCache:r,vizId:s,slugCache:o,getSvelteCompiler:i})}if(c==="v4"){if(!t)throw new Error("Rollup is required for v4 runtime");return b.magicSandbox(await vt({files:e,rollup:t,enableSourcemap:n}))}throw new Error(`Unsupported runtime version: ${c}`)},xt=({initialMappings:e={},handleCacheMiss:t})=>{const n=new Map(Object.entries(e));return{get:async i=>{const c=n.get(i);if(c!==void 0)return c;if(!t)throw new Error(`Unresolved slug ${i}, cache miss handler not provided.`);const a=await t(i);if(a)return n.set(i,a),a;throw new Error(`Unresolved slug ${i}`)},set:(i,c)=>{n.set(i,c)},invalidate:i=>{n.delete(i)}}};exports.buildHTML=gt;exports.createSlugCache=xt;exports.createVizCache=L;exports.createVizContent=z;exports.svelteCompilerUrl=st;
214
+ //# sourceMappingURL=slugCache-Bt1Sipcs.cjs.map