@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.
- package/README.md +14 -14
- package/dist/buildHTML.d.ts +5 -4
- package/dist/buildHTML.d.ts.map +1 -0
- package/dist/common/packageJson.d.ts +1 -0
- package/dist/common/packageJson.d.ts.map +1 -0
- package/dist/common/packageJson.test.d.ts +1 -0
- package/dist/common/packageJson.test.d.ts.map +1 -0
- package/dist/common/sucrasePlugin.d.ts +1 -0
- package/dist/common/sucrasePlugin.d.ts.map +1 -0
- package/dist/common/virtualFileSystem.d.ts +1 -0
- package/dist/common/virtualFileSystem.d.ts.map +1 -0
- package/dist/createRuntime.d.ts +12 -0
- package/dist/createRuntime.d.ts.map +1 -0
- package/dist/determineRuntimeVersion.d.ts +2 -1
- package/dist/determineRuntimeVersion.d.ts.map +1 -0
- package/dist/determineRuntimeVersion.test.d.ts +1 -0
- package/dist/determineRuntimeVersion.test.d.ts.map +1 -0
- package/dist/index.cjs +2 -0
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.ts +11 -2
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +100 -3
- package/dist/index.js.map +1 -0
- package/dist/old-implementation-reference/setupV3Runtime.d.ts +1 -0
- package/dist/old-implementation-reference/setupV3Runtime.d.ts.map +1 -0
- package/dist/old-implementation-reference/types.d.ts +1 -0
- package/dist/old-implementation-reference/types.d.ts.map +1 -0
- package/dist/old-implementation-reference/worker.d.ts +1 -0
- package/dist/old-implementation-reference/worker.d.ts.map +1 -0
- package/dist/slugCache-Bt1Sipcs.cjs +214 -0
- package/dist/slugCache-Bt1Sipcs.cjs.map +1 -0
- package/dist/slugCache-CxGQFqi6.js +841 -0
- package/dist/slugCache-CxGQFqi6.js.map +1 -0
- package/dist/test/fixtures/v1/basicHTML.d.ts +1 -0
- package/dist/test/fixtures/v1/basicHTML.d.ts.map +1 -0
- package/dist/test/fixtures/v1/fetchProxy.d.ts +1 -0
- package/dist/test/fixtures/v1/fetchProxy.d.ts.map +1 -0
- package/dist/test/fixtures/v1/index.d.ts +1 -0
- package/dist/test/fixtures/v1/index.d.ts.map +1 -0
- package/dist/test/fixtures/v1/jsScriptTag.d.ts +1 -0
- package/dist/test/fixtures/v1/jsScriptTag.d.ts.map +1 -0
- package/dist/test/fixtures/v1/protocolTest.d.ts +1 -0
- package/dist/test/fixtures/v1/protocolTest.d.ts.map +1 -0
- package/dist/test/fixtures/v1/styleTest.d.ts +1 -0
- package/dist/test/fixtures/v1/styleTest.d.ts.map +1 -0
- package/dist/test/fixtures/v1/xmlTest.d.ts +1 -0
- package/dist/test/fixtures/v1/xmlTest.d.ts.map +1 -0
- package/dist/test/fixtures/v2/basicBundle.d.ts +1 -0
- package/dist/test/fixtures/v2/basicBundle.d.ts.map +1 -0
- package/dist/test/fixtures/v2/basicBundleNoExtension.d.ts +1 -0
- package/dist/test/fixtures/v2/basicBundleNoExtension.d.ts.map +1 -0
- package/dist/test/fixtures/v2/d3Import.d.ts +1 -0
- package/dist/test/fixtures/v2/d3Import.d.ts.map +1 -0
- package/dist/test/fixtures/v2/d3ImportPkg.d.ts +1 -0
- package/dist/test/fixtures/v2/d3ImportPkg.d.ts.map +1 -0
- package/dist/test/fixtures/v2/d3RosettaImportPkg.d.ts +1 -0
- package/dist/test/fixtures/v2/d3RosettaImportPkg.d.ts.map +1 -0
- package/dist/test/fixtures/v2/es6Preserve.d.ts +1 -0
- package/dist/test/fixtures/v2/es6Preserve.d.ts.map +1 -0
- package/dist/test/fixtures/v2/generatorSupport.d.ts +1 -0
- package/dist/test/fixtures/v2/generatorSupport.d.ts.map +1 -0
- package/dist/test/fixtures/v2/index.d.ts +3 -1
- package/dist/test/fixtures/v2/index.d.ts.map +1 -0
- package/dist/test/fixtures/v2/jsxTranspile.d.ts +1 -0
- package/dist/test/fixtures/v2/jsxTranspile.d.ts.map +1 -0
- package/dist/test/fixtures/v2/reactDomImport.d.ts +1 -0
- package/dist/test/fixtures/v2/reactDomImport.d.ts.map +1 -0
- package/dist/test/fixtures/v2/reactDomImportPkg.d.ts +1 -0
- package/dist/test/fixtures/v2/reactDomImportPkg.d.ts.map +1 -0
- package/dist/test/fixtures/v2/reactImport.d.ts +1 -0
- package/dist/test/fixtures/v2/reactImport.d.ts.map +1 -0
- package/dist/test/fixtures/v2/reactImportPkg.d.ts +1 -0
- package/dist/test/fixtures/v2/reactImportPkg.d.ts.map +1 -0
- package/dist/test/fixtures/v2/sourceMapErrorFixture.d.ts +1 -0
- package/dist/test/fixtures/v2/sourceMapErrorFixture.d.ts.map +1 -0
- package/dist/test/fixtures/v2/syntaxError.d.ts +6 -0
- package/dist/test/fixtures/v2/syntaxError.d.ts.map +1 -0
- package/dist/test/fixtures/v2/unicodeSupport.d.ts +1 -0
- package/dist/test/fixtures/v2/unicodeSupport.d.ts.map +1 -0
- package/dist/test/fixtures/v3/basicIndexJS.d.ts +1 -0
- package/dist/test/fixtures/v3/basicIndexJS.d.ts.map +1 -0
- package/dist/test/fixtures/v3/cssImport.d.ts +1 -0
- package/dist/test/fixtures/v3/cssImport.d.ts.map +1 -0
- package/dist/test/fixtures/v3/csvImport.d.ts +1 -0
- package/dist/test/fixtures/v3/csvImport.d.ts.map +1 -0
- package/dist/test/fixtures/v3/csvStrangeChars.d.ts +1 -0
- package/dist/test/fixtures/v3/csvStrangeChars.d.ts.map +1 -0
- package/dist/test/fixtures/v3/d3Dependency.d.ts +5 -0
- package/dist/test/fixtures/v3/d3Dependency.d.ts.map +1 -0
- package/dist/test/fixtures/v3/index.d.ts +2 -0
- package/dist/test/fixtures/v3/index.d.ts.map +1 -0
- package/dist/test/fixtures/v3/jsExport.d.ts +1 -0
- package/dist/test/fixtures/v3/jsExport.d.ts.map +1 -0
- package/dist/test/fixtures/v3/sourcemap.d.ts +1 -0
- package/dist/test/fixtures/v3/sourcemap.d.ts.map +1 -0
- package/dist/test/fixtures/v3/svelte.d.ts +1 -0
- package/dist/test/fixtures/v3/svelte.d.ts.map +1 -0
- package/dist/test/fixtures/v3/vizContent.d.ts +1 -0
- package/dist/test/fixtures/v3/vizContent.d.ts.map +1 -0
- package/dist/test/fixtures/v3/vizImport.d.ts +1 -0
- package/dist/test/fixtures/v3/vizImport.d.ts.map +1 -0
- package/dist/test/fixtures/v4/d3Usage.d.ts +1 -0
- package/dist/test/fixtures/v4/d3Usage.d.ts.map +1 -0
- package/dist/test/fixtures/v4/esmBuild.d.ts +1 -0
- package/dist/test/fixtures/v4/esmBuild.d.ts.map +1 -0
- package/dist/test/fixtures/v4/fetchInterception.d.ts +1 -0
- package/dist/test/fixtures/v4/fetchInterception.d.ts.map +1 -0
- package/dist/test/fixtures/v4/index.d.ts +1 -0
- package/dist/test/fixtures/v4/index.d.ts.map +1 -0
- package/dist/test/fixtures/v4/jsScriptTagTypeModule.d.ts +1 -0
- package/dist/test/fixtures/v4/jsScriptTagTypeModule.d.ts.map +1 -0
- package/dist/test/fixtures/v4/jsScriptTagTypeModules.d.ts +1 -0
- package/dist/test/fixtures/v4/jsScriptTagTypeModules.d.ts.map +1 -0
- package/dist/test/fixtures/v4/reactHooks.d.ts +1 -0
- package/dist/test/fixtures/v4/reactHooks.d.ts.map +1 -0
- package/dist/test/fixtures/v4/reactJsx.d.ts +1 -0
- package/dist/test/fixtures/v4/reactJsx.d.ts.map +1 -0
- package/dist/test/fixtures/v4/threeJsUsage.d.ts +1 -0
- package/dist/test/fixtures/v4/threeJsUsage.d.ts.map +1 -0
- package/dist/test/fixtures/v4/typeScriptSupport.d.ts +1 -0
- package/dist/test/fixtures/v4/typeScriptSupport.d.ts.map +1 -0
- package/dist/test/iframeWorkerManagement.test.d.ts +2 -0
- package/dist/test/iframeWorkerManagement.test.d.ts.map +1 -0
- package/dist/test/testInBrowser.d.ts +5 -4
- package/dist/test/testInBrowser.d.ts.map +1 -0
- package/dist/test/testMockedIframeWithWorker.d.ts +27 -0
- package/dist/test/testMockedIframeWithWorker.d.ts.map +1 -0
- package/dist/test/testRuntimeWithWorker.d.ts +17 -0
- package/dist/test/testRuntimeWithWorker.d.ts.map +1 -0
- package/dist/test/testStackTrace.d.ts +1 -0
- package/dist/test/testStackTrace.d.ts.map +1 -0
- package/dist/test/v1.test.d.ts +1 -0
- package/dist/test/v1.test.d.ts.map +1 -0
- package/dist/test/v2.test.d.ts +1 -0
- package/dist/test/v2.test.d.ts.map +1 -0
- package/dist/test/v3-hot-reloading.test.d.ts +2 -0
- package/dist/test/v3-hot-reloading.test.d.ts.map +1 -0
- package/dist/test/v3.test.d.ts +1 -0
- package/dist/test/v3.test.d.ts.map +1 -0
- package/dist/test/v4.test.d.ts +1 -0
- package/dist/test/v4.test.d.ts.map +1 -0
- package/dist/types.d.ts +53 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/v2/computeBundleJSV2.d.ts +1 -0
- package/dist/v2/computeBundleJSV2.d.ts.map +1 -0
- package/dist/v2/getComputedIndexHtml.d.ts +1 -2
- package/dist/v2/getComputedIndexHtml.d.ts.map +1 -0
- package/dist/v2/getComputedIndexHtml.test.d.ts +1 -0
- package/dist/v2/getComputedIndexHtml.test.d.ts.map +1 -0
- package/dist/v2/index.d.ts +1 -0
- package/dist/v2/index.d.ts.map +1 -0
- package/dist/v2/v2Build.d.ts +1 -0
- package/dist/v2/v2Build.d.ts.map +1 -0
- package/dist/v3/cleanRollupErrorMessage.d.ts +1 -0
- package/dist/v3/cleanRollupErrorMessage.d.ts.map +1 -0
- package/dist/v3/cleanRollupErrorMessage.test.d.ts +2 -0
- package/dist/v3/cleanRollupErrorMessage.test.d.ts.map +1 -0
- package/dist/v3/computeBundleJSV3.d.ts +4 -3
- package/dist/v3/computeBundleJSV3.d.ts.map +1 -0
- package/dist/v3/createVizContent.d.ts +1 -0
- package/dist/v3/createVizContent.d.ts.map +1 -0
- package/dist/v3/extractVizImport.d.ts +1 -0
- package/dist/v3/extractVizImport.d.ts.map +1 -0
- package/dist/v3/extractVizImport.test.d.ts +1 -0
- package/dist/v3/extractVizImport.test.d.ts.map +1 -0
- package/dist/v3/htmlTemplate.d.ts +1 -0
- package/dist/v3/htmlTemplate.d.ts.map +1 -0
- package/dist/v3/index.d.ts +1 -0
- package/dist/v3/index.d.ts.map +1 -0
- package/dist/v3/parseId.d.ts +3 -2
- package/dist/v3/parseId.d.ts.map +1 -0
- package/dist/v3/parseId.test.d.ts +1 -0
- package/dist/v3/parseId.test.d.ts.map +1 -0
- package/dist/v3/setupV3Runtime.d.ts +1 -15
- package/dist/v3/setupV3Runtime.d.ts.map +1 -0
- package/dist/v3/slugCache.d.ts +1 -0
- package/dist/v3/slugCache.d.ts.map +1 -0
- package/dist/v3/slugCache.test.d.ts +1 -0
- package/dist/v3/slugCache.test.d.ts.map +1 -0
- package/dist/v3/transformDSV/dsvParseSrc.d.ts +1 -0
- package/dist/v3/transformDSV/dsvParseSrc.d.ts.map +1 -0
- package/dist/v3/transformDSV/index.d.ts +1 -0
- package/dist/v3/transformDSV/index.d.ts.map +1 -0
- package/dist/v3/transformSvelte.d.ts +2 -1
- package/dist/v3/transformSvelte.d.ts.map +1 -0
- package/dist/v3/types.d.ts +2 -1
- package/dist/v3/types.d.ts.map +1 -0
- package/dist/v3/v3Build.d.ts +4 -3
- package/dist/v3/v3Build.d.ts.map +1 -0
- package/dist/v3/vizCache.d.ts +1 -0
- package/dist/v3/vizCache.d.ts.map +1 -0
- package/dist/v3/vizCache.test.d.ts +1 -0
- package/dist/v3/vizCache.test.d.ts.map +1 -0
- package/dist/v3/vizLoad.d.ts +3 -2
- package/dist/v3/vizLoad.d.ts.map +1 -0
- package/dist/v3/vizResolve.d.ts +2 -1
- package/dist/v3/vizResolve.d.ts.map +1 -0
- package/dist/v4/bundleModule.d.ts +12 -0
- package/dist/v4/bundleModule.d.ts.map +1 -0
- package/dist/v4/extractEntryPoints.d.ts +5 -0
- package/dist/v4/extractEntryPoints.d.ts.map +1 -0
- package/dist/v4/importMap.d.ts +6 -0
- package/dist/v4/importMap.d.ts.map +1 -0
- package/dist/v4/index.d.ts +4 -1
- package/dist/v4/index.d.ts.map +1 -0
- package/dist/v4/stringUtils.d.ts +17 -0
- package/dist/v4/stringUtils.d.ts.map +1 -0
- package/dist/v4/updateHTML.d.ts +6 -0
- package/dist/v4/updateHTML.d.ts.map +1 -0
- package/dist/worker.cjs +2 -0
- package/dist/worker.cjs.map +1 -0
- package/dist/worker.d.ts +2 -0
- package/dist/worker.d.ts.map +1 -0
- package/dist/worker.js +91 -0
- package/dist/worker.js.map +1 -0
- package/package.json +18 -15
- package/dist/buildHTML.js +0 -67
- package/dist/cjs/buildHTML.js +0 -71
- package/dist/cjs/common/packageJson.js +0 -81
- package/dist/cjs/common/packageJson.test.js +0 -148
- package/dist/cjs/common/sucrasePlugin.js +0 -27
- package/dist/cjs/common/virtualFileSystem.js +0 -79
- package/dist/cjs/determineRuntimeVersion.js +0 -26
- package/dist/cjs/determineRuntimeVersion.test.js +0 -103
- package/dist/cjs/index.js +0 -11
- package/dist/cjs/package.json +0 -1
- package/dist/cjs/test/fixtures/v1/basicHTML.js +0 -18
- package/dist/cjs/test/fixtures/v1/fetchProxy.js +0 -15
- package/dist/cjs/test/fixtures/v1/index.js +0 -15
- package/dist/cjs/test/fixtures/v1/jsScriptTag.js +0 -12
- package/dist/cjs/test/fixtures/v1/protocolTest.js +0 -18
- package/dist/cjs/test/fixtures/v1/styleTest.js +0 -18
- package/dist/cjs/test/fixtures/v1/xmlTest.js +0 -22
- package/dist/cjs/test/fixtures/v2/basicBundle.js +0 -8
- package/dist/cjs/test/fixtures/v2/basicBundleNoExtension.js +0 -8
- package/dist/cjs/test/fixtures/v2/d3Import.js +0 -10
- package/dist/cjs/test/fixtures/v2/d3ImportPkg.js +0 -22
- package/dist/cjs/test/fixtures/v2/d3RosettaImportPkg.js +0 -22
- package/dist/cjs/test/fixtures/v2/es6Preserve.js +0 -9
- package/dist/cjs/test/fixtures/v2/generatorSupport.js +0 -9
- package/dist/cjs/test/fixtures/v2/index.js +0 -45
- package/dist/cjs/test/fixtures/v2/jsxTranspile.js +0 -9
- package/dist/cjs/test/fixtures/v2/reactDomImport.js +0 -11
- package/dist/cjs/test/fixtures/v2/reactDomImportPkg.js +0 -27
- package/dist/cjs/test/fixtures/v2/reactImport.js +0 -10
- package/dist/cjs/test/fixtures/v2/reactImportPkg.js +0 -20
- package/dist/cjs/test/fixtures/v2/sourceMapErrorFixture.js +0 -22
- package/dist/cjs/test/fixtures/v2/unicodeSupport.js +0 -9
- package/dist/cjs/test/fixtures/v3/basicIndexJS.js +0 -10
- package/dist/cjs/test/fixtures/v3/cssImport.js +0 -12
- package/dist/cjs/test/fixtures/v3/csvImport.js +0 -14
- package/dist/cjs/test/fixtures/v3/csvStrangeChars.js +0 -15
- package/dist/cjs/test/fixtures/v3/index.js +0 -25
- package/dist/cjs/test/fixtures/v3/jsExport.js +0 -13
- package/dist/cjs/test/fixtures/v3/sourcemap.js +0 -13
- package/dist/cjs/test/fixtures/v3/svelte.js +0 -21
- package/dist/cjs/test/fixtures/v3/vizContent.js +0 -14
- package/dist/cjs/test/fixtures/v3/vizImport.js +0 -88
- package/dist/cjs/test/fixtures/v4/d3Usage.js +0 -34
- package/dist/cjs/test/fixtures/v4/esmBuild.js +0 -21
- package/dist/cjs/test/fixtures/v4/fetchInterception.js +0 -21
- package/dist/cjs/test/fixtures/v4/index.js +0 -21
- package/dist/cjs/test/fixtures/v4/jsScriptTagTypeModule.js +0 -21
- package/dist/cjs/test/fixtures/v4/jsScriptTagTypeModules.js +0 -15
- package/dist/cjs/test/fixtures/v4/reactHooks.js +0 -50
- package/dist/cjs/test/fixtures/v4/reactJsx.js +0 -37
- package/dist/cjs/test/fixtures/v4/threeJsUsage.js +0 -27
- package/dist/cjs/test/fixtures/v4/typeScriptSupport.js +0 -32
- package/dist/cjs/test/testInBrowser.js +0 -50
- package/dist/cjs/test/testStackTrace.js +0 -58
- package/dist/cjs/test/v1.test.js +0 -70
- package/dist/cjs/test/v2.test.js +0 -124
- package/dist/cjs/test/v3.test.js +0 -119
- package/dist/cjs/test/v4.test.js +0 -105
- package/dist/cjs/types.js +0 -2
- package/dist/cjs/utils/vizContentToFileCollection.js +0 -24
- package/dist/cjs/utils/vizContentToFileCollection.test.js +0 -77
- package/dist/cjs/v2/computeBundleJSV2.js +0 -33
- package/dist/cjs/v2/getComputedIndexHtml.js +0 -86
- package/dist/cjs/v2/getComputedIndexHtml.test.js +0 -136
- package/dist/cjs/v2/index.js +0 -5
- package/dist/cjs/v2/v2Build.js +0 -15
- package/dist/cjs/v3/cleanRollupErrorMessage.js +0 -13
- package/dist/cjs/v3/computeBundleJSV3.js +0 -52
- package/dist/cjs/v3/createVizContent.js +0 -27
- package/dist/cjs/v3/extractVizImport.js +0 -27
- package/dist/cjs/v3/extractVizImport.test.js +0 -32
- package/dist/cjs/v3/htmlTemplate.js +0 -93
- package/dist/cjs/v3/index.js +0 -5
- package/dist/cjs/v3/parseId.js +0 -9
- package/dist/cjs/v3/parseId.test.js +0 -27
- package/dist/cjs/v3/setupV3Runtime.js +0 -345
- package/dist/cjs/v3/slugCache.js +0 -39
- package/dist/cjs/v3/slugCache.test.js +0 -107
- package/dist/cjs/v3/transformDSV/dsvParseSrc.js +0 -124
- package/dist/cjs/v3/transformDSV/index.js +0 -44
- package/dist/cjs/v3/transformSvelte.js +0 -81
- package/dist/cjs/v3/types.js +0 -2
- package/dist/cjs/v3/v3Build.js +0 -34
- package/dist/cjs/v3/vizCache.js +0 -40
- package/dist/cjs/v3/vizCache.test.js +0 -100
- package/dist/cjs/v3/vizLoad.js +0 -50
- package/dist/cjs/v3/vizResolve.js +0 -73
- package/dist/cjs/v4/index.js +0 -138
- package/dist/common/packageJson.js +0 -71
- package/dist/common/packageJson.test.js +0 -146
- package/dist/common/sucrasePlugin.js +0 -24
- package/dist/common/virtualFileSystem.js +0 -75
- package/dist/determineRuntimeVersion.js +0 -22
- package/dist/determineRuntimeVersion.test.js +0 -101
- package/dist/esm/buildHTML.js +0 -67
- package/dist/esm/common/packageJson.js +0 -71
- package/dist/esm/common/packageJson.test.js +0 -146
- package/dist/esm/common/sucrasePlugin.js +0 -24
- package/dist/esm/common/virtualFileSystem.js +0 -75
- package/dist/esm/determineRuntimeVersion.js +0 -22
- package/dist/esm/determineRuntimeVersion.test.js +0 -101
- package/dist/esm/index.js +0 -4
- package/dist/esm/test/fixtures/v1/basicHTML.js +0 -15
- package/dist/esm/test/fixtures/v1/fetchProxy.js +0 -12
- package/dist/esm/test/fixtures/v1/index.js +0 -6
- package/dist/esm/test/fixtures/v1/jsScriptTag.js +0 -9
- package/dist/esm/test/fixtures/v1/protocolTest.js +0 -15
- package/dist/esm/test/fixtures/v1/styleTest.js +0 -15
- package/dist/esm/test/fixtures/v1/xmlTest.js +0 -19
- package/dist/esm/test/fixtures/v2/basicBundle.js +0 -5
- package/dist/esm/test/fixtures/v2/basicBundleNoExtension.js +0 -5
- package/dist/esm/test/fixtures/v2/d3Import.js +0 -7
- package/dist/esm/test/fixtures/v2/d3ImportPkg.js +0 -19
- package/dist/esm/test/fixtures/v2/d3RosettaImportPkg.js +0 -19
- package/dist/esm/test/fixtures/v2/es6Preserve.js +0 -6
- package/dist/esm/test/fixtures/v2/generatorSupport.js +0 -6
- package/dist/esm/test/fixtures/v2/index.js +0 -15
- package/dist/esm/test/fixtures/v2/jsxTranspile.js +0 -6
- package/dist/esm/test/fixtures/v2/reactDomImport.js +0 -8
- package/dist/esm/test/fixtures/v2/reactDomImportPkg.js +0 -24
- package/dist/esm/test/fixtures/v2/reactImport.js +0 -7
- package/dist/esm/test/fixtures/v2/reactImportPkg.js +0 -17
- package/dist/esm/test/fixtures/v2/sourceMapErrorFixture.js +0 -19
- package/dist/esm/test/fixtures/v2/unicodeSupport.js +0 -6
- package/dist/esm/test/fixtures/v3/basicIndexJS.js +0 -7
- package/dist/esm/test/fixtures/v3/cssImport.js +0 -9
- package/dist/esm/test/fixtures/v3/csvImport.js +0 -11
- package/dist/esm/test/fixtures/v3/csvStrangeChars.js +0 -12
- package/dist/esm/test/fixtures/v3/index.js +0 -9
- package/dist/esm/test/fixtures/v3/jsExport.js +0 -10
- package/dist/esm/test/fixtures/v3/sourcemap.js +0 -10
- package/dist/esm/test/fixtures/v3/svelte.js +0 -18
- package/dist/esm/test/fixtures/v3/vizContent.js +0 -11
- package/dist/esm/test/fixtures/v3/vizImport.js +0 -85
- package/dist/esm/test/fixtures/v4/d3Usage.js +0 -31
- package/dist/esm/test/fixtures/v4/esmBuild.js +0 -18
- package/dist/esm/test/fixtures/v4/fetchInterception.js +0 -18
- package/dist/esm/test/fixtures/v4/index.js +0 -9
- package/dist/esm/test/fixtures/v4/jsScriptTagTypeModule.js +0 -18
- package/dist/esm/test/fixtures/v4/jsScriptTagTypeModules.js +0 -12
- package/dist/esm/test/fixtures/v4/reactHooks.js +0 -47
- package/dist/esm/test/fixtures/v4/reactJsx.js +0 -34
- package/dist/esm/test/fixtures/v4/threeJsUsage.js +0 -24
- package/dist/esm/test/fixtures/v4/typeScriptSupport.js +0 -29
- package/dist/esm/test/testInBrowser.js +0 -47
- package/dist/esm/test/testStackTrace.js +0 -55
- package/dist/esm/test/v1.test.js +0 -65
- package/dist/esm/test/v2.test.js +0 -121
- package/dist/esm/test/v3.test.js +0 -114
- package/dist/esm/test/v4.test.js +0 -100
- package/dist/esm/types.js +0 -1
- package/dist/esm/utils/vizContentToFileCollection.js +0 -20
- package/dist/esm/utils/vizContentToFileCollection.test.js +0 -75
- package/dist/esm/v2/computeBundleJSV2.js +0 -29
- package/dist/esm/v2/getComputedIndexHtml.js +0 -81
- package/dist/esm/v2/getComputedIndexHtml.test.js +0 -134
- package/dist/esm/v2/index.js +0 -1
- package/dist/esm/v2/v2Build.js +0 -11
- package/dist/esm/v3/cleanRollupErrorMessage.js +0 -9
- package/dist/esm/v3/computeBundleJSV3.js +0 -48
- package/dist/esm/v3/createVizContent.js +0 -23
- package/dist/esm/v3/extractVizImport.js +0 -23
- package/dist/esm/v3/extractVizImport.test.js +0 -30
- package/dist/esm/v3/htmlTemplate.js +0 -89
- package/dist/esm/v3/index.js +0 -1
- package/dist/esm/v3/parseId.js +0 -5
- package/dist/esm/v3/parseId.test.js +0 -25
- package/dist/esm/v3/setupV3Runtime.js +0 -341
- package/dist/esm/v3/slugCache.js +0 -35
- package/dist/esm/v3/slugCache.test.js +0 -105
- package/dist/esm/v3/transformDSV/dsvParseSrc.js +0 -121
- package/dist/esm/v3/transformDSV/index.js +0 -40
- package/dist/esm/v3/transformSvelte.js +0 -77
- package/dist/esm/v3/types.js +0 -1
- package/dist/esm/v3/v3Build.js +0 -30
- package/dist/esm/v3/vizCache.js +0 -36
- package/dist/esm/v3/vizCache.test.js +0 -98
- package/dist/esm/v3/vizLoad.js +0 -46
- package/dist/esm/v3/vizResolve.js +0 -69
- package/dist/esm/v4/index.js +0 -134
- package/dist/fixtures/basicHTML.d.ts +0 -2
- package/dist/fixtures/basicHTML.js +0 -22
- package/dist/fixtures/fetchProxy.d.ts +0 -2
- package/dist/fixtures/fetchProxy.js +0 -25
- package/dist/fixtures/index.d.ts +0 -3
- package/dist/fixtures/index.js +0 -9
- package/dist/fixtures/jsScriptTag.d.ts +0 -2
- package/dist/fixtures/jsScriptTag.js +0 -19
- package/dist/index.test.d.ts +0 -1
- package/dist/index.test.js +0 -50
- package/dist/magicSandbox/fixProtocollessUrls.d.ts +0 -4
- package/dist/magicSandbox/fixProtocollessUrls.js +0 -10
- package/dist/magicSandbox/generateInterceptorScript.d.ts +0 -4
- package/dist/magicSandbox/generateInterceptorScript.js +0 -178
- package/dist/magicSandbox/index.d.ts +0 -19
- package/dist/magicSandbox/index.js +0 -48
- package/dist/test/fixtures/basicHTML.d.ts +0 -2
- package/dist/test/fixtures/basicHTML.js +0 -19
- package/dist/test/fixtures/fetchProxy.d.ts +0 -2
- package/dist/test/fixtures/fetchProxy.js +0 -22
- package/dist/test/fixtures/index.d.ts +0 -6
- package/dist/test/fixtures/index.js +0 -6
- package/dist/test/fixtures/jsScriptTag.d.ts +0 -2
- package/dist/test/fixtures/jsScriptTag.js +0 -16
- package/dist/test/fixtures/magicSandbox/basicHTML.d.ts +0 -5
- package/dist/test/fixtures/magicSandbox/basicHTML.js +0 -17
- package/dist/test/fixtures/magicSandbox/fetchProxy.d.ts +0 -11
- package/dist/test/fixtures/magicSandbox/fetchProxy.js +0 -18
- package/dist/test/fixtures/magicSandbox/index.d.ts +0 -6
- package/dist/test/fixtures/magicSandbox/index.js +0 -6
- package/dist/test/fixtures/magicSandbox/jsScriptTag.d.ts +0 -8
- package/dist/test/fixtures/magicSandbox/jsScriptTag.js +0 -13
- package/dist/test/fixtures/magicSandbox/protocolTest.d.ts +0 -5
- package/dist/test/fixtures/magicSandbox/protocolTest.js +0 -17
- package/dist/test/fixtures/magicSandbox/styleTest.d.ts +0 -8
- package/dist/test/fixtures/magicSandbox/styleTest.js +0 -19
- package/dist/test/fixtures/magicSandbox/xmlTest.d.ts +0 -8
- package/dist/test/fixtures/magicSandbox/xmlTest.js +0 -23
- package/dist/test/fixtures/protocolTest.d.ts +0 -2
- package/dist/test/fixtures/protocolTest.js +0 -19
- package/dist/test/fixtures/styleTest.d.ts +0 -2
- package/dist/test/fixtures/styleTest.js +0 -22
- package/dist/test/fixtures/v1/basicHTML.js +0 -15
- package/dist/test/fixtures/v1/fetchProxy.js +0 -12
- package/dist/test/fixtures/v1/index.js +0 -6
- package/dist/test/fixtures/v1/jsScriptTag.js +0 -9
- package/dist/test/fixtures/v1/protocolTest.js +0 -15
- package/dist/test/fixtures/v1/styleTest.js +0 -15
- package/dist/test/fixtures/v1/xmlTest.js +0 -19
- package/dist/test/fixtures/v2/basicBundle.js +0 -5
- package/dist/test/fixtures/v2/basicBundleNoExtension.js +0 -5
- package/dist/test/fixtures/v2/d3Import.js +0 -7
- package/dist/test/fixtures/v2/d3ImportPkg.js +0 -19
- package/dist/test/fixtures/v2/d3RosettaImportPkg.js +0 -19
- package/dist/test/fixtures/v2/es6Preserve.js +0 -6
- package/dist/test/fixtures/v2/generatorSupport.js +0 -6
- package/dist/test/fixtures/v2/index.js +0 -15
- package/dist/test/fixtures/v2/jsxTranspile.js +0 -6
- package/dist/test/fixtures/v2/reactDomImport.js +0 -8
- package/dist/test/fixtures/v2/reactDomImportPkg.js +0 -24
- package/dist/test/fixtures/v2/reactImport.js +0 -7
- package/dist/test/fixtures/v2/reactImportPkg.js +0 -17
- package/dist/test/fixtures/v2/sourceMapErrorFixture.js +0 -19
- package/dist/test/fixtures/v2/unicodeSupport.js +0 -6
- package/dist/test/fixtures/v3/basicIndexJS.js +0 -7
- package/dist/test/fixtures/v3/cssImport.js +0 -9
- package/dist/test/fixtures/v3/csvImport.js +0 -11
- package/dist/test/fixtures/v3/csvStrangeChars.js +0 -12
- package/dist/test/fixtures/v3/index.js +0 -9
- package/dist/test/fixtures/v3/jsExport.js +0 -10
- package/dist/test/fixtures/v3/sourcemap.js +0 -10
- package/dist/test/fixtures/v3/svelte.js +0 -18
- package/dist/test/fixtures/v3/vizContent.js +0 -11
- package/dist/test/fixtures/v3/vizImport.js +0 -85
- package/dist/test/fixtures/v4/d3Usage.js +0 -31
- package/dist/test/fixtures/v4/esmBuild.js +0 -18
- package/dist/test/fixtures/v4/fetchInterception.js +0 -18
- package/dist/test/fixtures/v4/index.js +0 -9
- package/dist/test/fixtures/v4/jsScriptTagTypeModule.js +0 -18
- package/dist/test/fixtures/v4/jsScriptTagTypeModules.js +0 -12
- package/dist/test/fixtures/v4/reactHooks.js +0 -47
- package/dist/test/fixtures/v4/reactJsx.js +0 -34
- package/dist/test/fixtures/v4/threeJsUsage.js +0 -24
- package/dist/test/fixtures/v4/typeScriptSupport.js +0 -29
- package/dist/test/fixtures/xmlTest.d.ts +0 -2
- package/dist/test/fixtures/xmlTest.js +0 -26
- package/dist/test/index.test.d.ts +0 -1
- package/dist/test/index.test.js +0 -40
- package/dist/test/testInBrowser.js +0 -47
- package/dist/test/testStackTrace.js +0 -55
- package/dist/test/v1.test.js +0 -65
- package/dist/test/v2.test.js +0 -121
- package/dist/test/v3.test.js +0 -114
- package/dist/test/v4.test.js +0 -100
- package/dist/types/buildHTML.d.ts +0 -14
- package/dist/types/common/packageJson.d.ts +0 -39
- package/dist/types/common/packageJson.test.d.ts +0 -1
- package/dist/types/common/sucrasePlugin.d.ts +0 -2
- package/dist/types/common/virtualFileSystem.d.ts +0 -3
- package/dist/types/determineRuntimeVersion.d.ts +0 -3
- package/dist/types/determineRuntimeVersion.test.d.ts +0 -1
- package/dist/types/index.d.ts +0 -4
- package/dist/types/test/fixtures/v1/basicHTML.d.ts +0 -3
- package/dist/types/test/fixtures/v1/fetchProxy.d.ts +0 -5
- package/dist/types/test/fixtures/v1/index.d.ts +0 -6
- package/dist/types/test/fixtures/v1/jsScriptTag.d.ts +0 -4
- package/dist/types/test/fixtures/v1/protocolTest.d.ts +0 -3
- package/dist/types/test/fixtures/v1/styleTest.d.ts +0 -4
- package/dist/types/test/fixtures/v1/xmlTest.d.ts +0 -4
- package/dist/types/test/fixtures/v2/basicBundle.d.ts +0 -5
- package/dist/types/test/fixtures/v2/basicBundleNoExtension.d.ts +0 -5
- package/dist/types/test/fixtures/v2/d3Import.d.ts +0 -4
- package/dist/types/test/fixtures/v2/d3ImportPkg.d.ts +0 -5
- package/dist/types/test/fixtures/v2/d3RosettaImportPkg.d.ts +0 -5
- package/dist/types/test/fixtures/v2/es6Preserve.d.ts +0 -4
- package/dist/types/test/fixtures/v2/generatorSupport.d.ts +0 -4
- package/dist/types/test/fixtures/v2/index.d.ts +0 -14
- package/dist/types/test/fixtures/v2/jsxTranspile.d.ts +0 -4
- package/dist/types/test/fixtures/v2/reactDomImport.d.ts +0 -4
- package/dist/types/test/fixtures/v2/reactDomImportPkg.d.ts +0 -5
- package/dist/types/test/fixtures/v2/reactImport.d.ts +0 -4
- package/dist/types/test/fixtures/v2/reactImportPkg.d.ts +0 -5
- package/dist/types/test/fixtures/v2/sourceMapErrorFixture.d.ts +0 -5
- package/dist/types/test/fixtures/v2/unicodeSupport.d.ts +0 -4
- package/dist/types/test/fixtures/v3/basicIndexJS.d.ts +0 -3
- package/dist/types/test/fixtures/v3/cssImport.d.ts +0 -4
- package/dist/types/test/fixtures/v3/csvImport.d.ts +0 -4
- package/dist/types/test/fixtures/v3/csvStrangeChars.d.ts +0 -4
- package/dist/types/test/fixtures/v3/index.d.ts +0 -9
- package/dist/types/test/fixtures/v3/jsExport.d.ts +0 -4
- package/dist/types/test/fixtures/v3/sourcemap.d.ts +0 -3
- package/dist/types/test/fixtures/v3/svelte.d.ts +0 -4
- package/dist/types/test/fixtures/v3/vizContent.d.ts +0 -2
- package/dist/types/test/fixtures/v3/vizImport.d.ts +0 -6
- package/dist/types/test/fixtures/v4/d3Usage.d.ts +0 -5
- package/dist/types/test/fixtures/v4/esmBuild.d.ts +0 -5
- package/dist/types/test/fixtures/v4/fetchInterception.d.ts +0 -5
- package/dist/types/test/fixtures/v4/index.d.ts +0 -9
- package/dist/types/test/fixtures/v4/jsScriptTagTypeModule.d.ts +0 -4
- package/dist/types/test/fixtures/v4/jsScriptTagTypeModules.d.ts +0 -5
- package/dist/types/test/fixtures/v4/reactHooks.d.ts +0 -6
- package/dist/types/test/fixtures/v4/reactJsx.d.ts +0 -6
- package/dist/types/test/fixtures/v4/threeJsUsage.d.ts +0 -4
- package/dist/types/test/fixtures/v4/typeScriptSupport.d.ts +0 -5
- package/dist/types/test/testInBrowser.d.ts +0 -15
- package/dist/types/test/testStackTrace.d.ts +0 -9
- package/dist/types/test/v1.test.d.ts +0 -1
- package/dist/types/test/v2.test.d.ts +0 -1
- package/dist/types/test/v3.test.d.ts +0 -1
- package/dist/types/test/v4.test.d.ts +0 -1
- package/dist/types/types.d.ts +0 -1
- package/dist/types/utils/vizContentToFileCollection.d.ts +0 -8
- package/dist/types/utils/vizContentToFileCollection.test.d.ts +0 -1
- package/dist/types/v2/computeBundleJSV2.d.ts +0 -7
- package/dist/types/v2/getComputedIndexHtml.d.ts +0 -4
- package/dist/types/v2/getComputedIndexHtml.test.d.ts +0 -1
- package/dist/types/v2/index.d.ts +0 -1
- package/dist/types/v2/v2Build.d.ts +0 -7
- package/dist/types/v3/cleanRollupErrorMessage.d.ts +0 -4
- package/dist/types/v3/computeBundleJSV3.d.ts +0 -17
- package/dist/types/v3/createVizContent.d.ts +0 -8
- package/dist/types/v3/extractVizImport.d.ts +0 -6
- package/dist/types/v3/extractVizImport.test.d.ts +0 -1
- package/dist/types/v3/htmlTemplate.d.ts +0 -5
- package/dist/types/v3/index.d.ts +0 -1
- package/dist/types/v3/parseId.d.ts +0 -6
- package/dist/types/v3/parseId.test.d.ts +0 -1
- package/dist/types/v3/setupV3Runtime.d.ts +0 -15
- package/dist/types/v3/slugCache.d.ts +0 -11
- package/dist/types/v3/slugCache.test.d.ts +0 -1
- package/dist/types/v3/transformDSV/dsvParseSrc.d.ts +0 -1
- package/dist/types/v3/transformDSV/index.d.ts +0 -2
- package/dist/types/v3/transformSvelte.d.ts +0 -8
- package/dist/types/v3/types.d.ts +0 -65
- package/dist/types/v3/v3Build.d.ts +0 -14
- package/dist/types/v3/vizCache.d.ts +0 -10
- package/dist/types/v3/vizCache.test.d.ts +0 -1
- package/dist/types/v3/vizLoad.d.ts +0 -7
- package/dist/types/v3/vizResolve.d.ts +0 -7
- package/dist/types/v4/index.d.ts +0 -10
- package/dist/types.js +0 -1
- package/dist/utils/getFileText.d.ts +0 -2
- package/dist/utils/getFileText.js +0 -13
- package/dist/utils/getFileText.test.d.ts +0 -1
- package/dist/utils/getFileText.test.js +0 -72
- package/dist/utils/vizContentToFileCollection.d.ts +0 -7
- package/dist/utils/vizContentToFileCollection.js +0 -19
- package/dist/utils/vizContentToFileCollection.test.d.ts +0 -1
- package/dist/utils/vizContentToFileCollection.test.js +0 -75
- package/dist/v2/computeBundleJSV2.js +0 -29
- package/dist/v2/getComputedIndexHtml.js +0 -81
- package/dist/v2/getComputedIndexHtml.test.js +0 -134
- package/dist/v2/index.js +0 -1
- package/dist/v2/v2Build.js +0 -11
- package/dist/v3/cleanRollupErrorMessage.js +0 -9
- package/dist/v3/computeBundleJSV3.js +0 -48
- package/dist/v3/createVizContent.js +0 -23
- package/dist/v3/extractVizImport.js +0 -23
- package/dist/v3/extractVizImport.test.js +0 -30
- package/dist/v3/htmlTemplate.js +0 -89
- package/dist/v3/index.js +0 -1
- package/dist/v3/parseId.js +0 -5
- package/dist/v3/parseId.test.js +0 -25
- package/dist/v3/setupV3Runtime.js +0 -341
- package/dist/v3/slugCache.js +0 -35
- package/dist/v3/slugCache.test.js +0 -105
- package/dist/v3/transformDSV/dsvParseSrc.js +0 -121
- package/dist/v3/transformDSV/index.js +0 -40
- package/dist/v3/transformSvelte.js +0 -77
- package/dist/v3/types.js +0 -1
- package/dist/v3/v3Build.js +0 -30
- package/dist/v3/vizCache.js +0 -36
- package/dist/v3/vizCache.test.js +0 -98
- package/dist/v3/vizLoad.js +0 -46
- package/dist/v3/vizResolve.js +0 -69
- package/dist/v4/index.js +0 -134
@@ -1,48 +0,0 @@
|
|
1
|
-
import { sucrasePlugin } from "../common/sucrasePlugin";
|
2
|
-
import { getGlobals, packageJSON, } from "../common/packageJson";
|
3
|
-
import { transformDSV } from "./transformDSV";
|
4
|
-
import { vizResolve } from "./vizResolve";
|
5
|
-
import { vizLoad } from "./vizLoad";
|
6
|
-
import { transformSvelte, } from "./transformSvelte";
|
7
|
-
export const computeBundleJSV3 = async ({ files, rollup, enableSourcemap = true, vizCache, vizId, slugCache, getSvelteCompiler, }) => {
|
8
|
-
// Track CSS imports
|
9
|
-
const cssFilesSet = new Set();
|
10
|
-
const trackCSSImport = (cssFile) => {
|
11
|
-
cssFilesSet.add(cssFile);
|
12
|
-
};
|
13
|
-
const indexJSContent = files["index.js"];
|
14
|
-
if (!indexJSContent) {
|
15
|
-
throw new Error("Missing index.js");
|
16
|
-
}
|
17
|
-
const inputOptions = {
|
18
|
-
input: "./index.js",
|
19
|
-
plugins: [
|
20
|
-
vizResolve({ vizId, slugCache }),
|
21
|
-
transformDSV(),
|
22
|
-
sucrasePlugin(),
|
23
|
-
transformSvelte({ getSvelteCompiler }),
|
24
|
-
vizLoad({ vizCache, trackCSSImport }),
|
25
|
-
],
|
26
|
-
onwarn(warning, warn) {
|
27
|
-
// Suppress "treating module as external dependency" warnings
|
28
|
-
if (warning.code === "UNRESOLVED_IMPORT")
|
29
|
-
return;
|
30
|
-
warn(warning);
|
31
|
-
},
|
32
|
-
};
|
33
|
-
const bundle = await rollup(inputOptions);
|
34
|
-
const pkg = packageJSON(files);
|
35
|
-
const globals = getGlobals(pkg);
|
36
|
-
const outputOptions = {
|
37
|
-
format: "umd",
|
38
|
-
name: "Viz",
|
39
|
-
sourcemap: enableSourcemap ? true : false,
|
40
|
-
compact: true,
|
41
|
-
globals,
|
42
|
-
};
|
43
|
-
const { output } = await bundle.generate(outputOptions);
|
44
|
-
return {
|
45
|
-
src: output[0].code,
|
46
|
-
cssFiles: Array.from(cssFilesSet),
|
47
|
-
};
|
48
|
-
};
|
@@ -1,23 +0,0 @@
|
|
1
|
-
import { v4 as uuidv4 } from "uuid";
|
2
|
-
/**
|
3
|
-
* Creates a VizContent object with the given files
|
4
|
-
* @param files An object with file names as keys and file content as values
|
5
|
-
* @param title Optional title for the content
|
6
|
-
* @returns A VizContent object with randomly generated IDs
|
7
|
-
*/
|
8
|
-
export const createVizContent = (files, title = "Sample Content for Exporting") => {
|
9
|
-
const contentId = uuidv4().replace(/-/g, "");
|
10
|
-
const contentFiles = {};
|
11
|
-
Object.entries(files).forEach(([fileName, fileContent]) => {
|
12
|
-
const fileId = Math.floor(Math.random() * 10000000).toString();
|
13
|
-
contentFiles[fileId] = {
|
14
|
-
name: fileName,
|
15
|
-
text: fileContent,
|
16
|
-
};
|
17
|
-
});
|
18
|
-
return {
|
19
|
-
id: contentId,
|
20
|
-
files: contentFiles,
|
21
|
-
title,
|
22
|
-
};
|
23
|
-
};
|
@@ -1,23 +0,0 @@
|
|
1
|
-
export const extractVizImport = (str) => {
|
2
|
-
// Updated regular expression pattern
|
3
|
-
// Username: Alphanumeric characters, including underscores and hyphens
|
4
|
-
// ID: Alphanumeric characters, including underscores, hyphens, and possibly other special characters
|
5
|
-
const pattern = /^@([a-zA-Z0-9_-]+)\/([a-zA-Z0-9_-]+)$/;
|
6
|
-
const match = str.match(pattern);
|
7
|
-
if (match) {
|
8
|
-
// Extract the username and id
|
9
|
-
return {
|
10
|
-
userName: match[1],
|
11
|
-
idOrSlug: match[2],
|
12
|
-
};
|
13
|
-
}
|
14
|
-
else {
|
15
|
-
// Return null if the string does not match
|
16
|
-
return null;
|
17
|
-
}
|
18
|
-
};
|
19
|
-
// // Example usages
|
20
|
-
// const result1 = extractDetails("@curran/21f72bf74ef04ea0b9c9b82aaaec859a");
|
21
|
-
// console.log(result1); // { username: "curran", id: "21f72bf74ef04ea0b9c9b82aaaec859a" }
|
22
|
-
// const result2 = extractDetails("@curran/scatter-plot");
|
23
|
-
// console.log(result2); // { username: "curran", id: "scatter-plot" }
|
@@ -1,30 +0,0 @@
|
|
1
|
-
import { describe, it, expect } from "vitest";
|
2
|
-
import { extractVizImport } from "./extractVizImport";
|
3
|
-
describe("v3 extractVizImport", () => {
|
4
|
-
it("should correctly extract username and viz id", () => {
|
5
|
-
const result = extractVizImport("@curran/21f72bf74ef04ea0b9c9b82aaaec859a");
|
6
|
-
expect(result).toEqual({
|
7
|
-
userName: "curran",
|
8
|
-
idOrSlug: "21f72bf74ef04ea0b9c9b82aaaec859a",
|
9
|
-
});
|
10
|
-
});
|
11
|
-
it("should correctly extract username and alphanumeric id", () => {
|
12
|
-
const result = extractVizImport("@curran/scatter-plot");
|
13
|
-
expect(result).toEqual({
|
14
|
-
userName: "curran",
|
15
|
-
idOrSlug: "scatter-plot",
|
16
|
-
});
|
17
|
-
});
|
18
|
-
it("should return null for non-matching strings", () => {
|
19
|
-
const result = extractVizImport("not-a-matching-string");
|
20
|
-
expect(result).toBeNull();
|
21
|
-
});
|
22
|
-
it("should handle cases with invalid characters in username", () => {
|
23
|
-
const result = extractVizImport("@c!urran/valid-id");
|
24
|
-
expect(result).toBeNull();
|
25
|
-
});
|
26
|
-
it("should handle cases with invalid characters in id", () => {
|
27
|
-
const result = extractVizImport("@curran/invalid id");
|
28
|
-
expect(result).toBeNull();
|
29
|
-
});
|
30
|
-
});
|
package/dist/v3/htmlTemplate.js
DELETED
@@ -1,89 +0,0 @@
|
|
1
|
-
function randomDigits() {
|
2
|
-
return Math.random().toString().slice(2, 7);
|
3
|
-
}
|
4
|
-
export const htmlTemplate = ({ cdn, src, styles, }) => {
|
5
|
-
// Random container id to avoid conflicts and guarantee
|
6
|
-
// the code is portable.
|
7
|
-
const containerSuffix = randomDigits();
|
8
|
-
const vizContainerId = `viz-container-${containerSuffix}`;
|
9
|
-
return `<!DOCTYPE html>
|
10
|
-
<html>
|
11
|
-
<head>
|
12
|
-
<meta charset="utf-8">${cdn}${styles}
|
13
|
-
<style>
|
14
|
-
body {
|
15
|
-
margin: 0;
|
16
|
-
overflow: hidden;
|
17
|
-
}
|
18
|
-
#${vizContainerId} {
|
19
|
-
height: 100vh;
|
20
|
-
}
|
21
|
-
</style>
|
22
|
-
</head>
|
23
|
-
<body>
|
24
|
-
<div id="${vizContainerId}"></div>
|
25
|
-
<script id="injected-script">${src}</script>
|
26
|
-
<script>
|
27
|
-
(() => {
|
28
|
-
let cleanup;
|
29
|
-
const render = () => {
|
30
|
-
const container = document.getElementById('${vizContainerId}');
|
31
|
-
typeof cleanup === 'function' && cleanup();
|
32
|
-
cleanup = Viz.main(container, { state: window.state, setState, writeFile });
|
33
|
-
};
|
34
|
-
const setState = (next) => {
|
35
|
-
window.state = next(window.state);
|
36
|
-
render();
|
37
|
-
};
|
38
|
-
const writeFile = (fileName, content) => {
|
39
|
-
parent.postMessage({ type: 'writeFile', fileName, content }, "*");
|
40
|
-
};
|
41
|
-
const run = () => {
|
42
|
-
try {
|
43
|
-
setState((state) => state || {});
|
44
|
-
} catch (error) {
|
45
|
-
console.error(error);
|
46
|
-
parent.postMessage({ type: 'runError', error }, "*");
|
47
|
-
}
|
48
|
-
}
|
49
|
-
run();
|
50
|
-
const runJS = (src) => {
|
51
|
-
document.getElementById('injected-script')?.remove();
|
52
|
-
const script = document.createElement('script');
|
53
|
-
script.textContent = src;
|
54
|
-
script.id = 'injected-script';
|
55
|
-
document.body.appendChild(script);
|
56
|
-
run();
|
57
|
-
};
|
58
|
-
const runCSS = (src, id) => {
|
59
|
-
const styleElementId = 'injected-style' + id;
|
60
|
-
let style = document.getElementById(styleElementId);
|
61
|
-
if (!style) {
|
62
|
-
style = document.createElement('style');
|
63
|
-
style.type = 'text/css';
|
64
|
-
style.id = styleElementId;
|
65
|
-
document.head.appendChild(style);
|
66
|
-
}
|
67
|
-
style.textContent = src;
|
68
|
-
};
|
69
|
-
onmessage = (message) => {
|
70
|
-
switch (message.data.type) {
|
71
|
-
case 'runJS':
|
72
|
-
runJS(message.data.src);
|
73
|
-
parent.postMessage({ type: 'runDone' }, "*");
|
74
|
-
break;
|
75
|
-
case 'runCSS':
|
76
|
-
runCSS(message.data.src, message.data.id);
|
77
|
-
break;
|
78
|
-
case 'ping':
|
79
|
-
parent.postMessage({ type: 'pong' }, "*");
|
80
|
-
break;
|
81
|
-
default:
|
82
|
-
break;
|
83
|
-
}
|
84
|
-
}
|
85
|
-
})();
|
86
|
-
</script>
|
87
|
-
</body>
|
88
|
-
</html>`;
|
89
|
-
};
|
package/dist/v3/index.js
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
export { v3Build } from "./v3Build";
|
package/dist/v3/parseId.js
DELETED
package/dist/v3/parseId.test.js
DELETED
@@ -1,25 +0,0 @@
|
|
1
|
-
import { describe, it, expect } from "vitest";
|
2
|
-
import { parseId } from "./parseId";
|
3
|
-
describe("parseId", () => {
|
4
|
-
it("should correctly parse viz id and filename", () => {
|
5
|
-
const result = parseId("21f72bf74ef04ea0b9c9b82aaaec859a/index.js");
|
6
|
-
expect(result).toEqual({
|
7
|
-
vizId: "21f72bf74ef04ea0b9c9b82aaaec859a",
|
8
|
-
fileName: "index.js",
|
9
|
-
});
|
10
|
-
});
|
11
|
-
it("should handle alphanumeric ids", () => {
|
12
|
-
const result = parseId("scatter-plot/visualization.js");
|
13
|
-
expect(result).toEqual({
|
14
|
-
vizId: "scatter-plot",
|
15
|
-
fileName: "visualization.js",
|
16
|
-
});
|
17
|
-
});
|
18
|
-
it("should handle complex filenames", () => {
|
19
|
-
const result = parseId("my-viz/nested/path/file.test.js");
|
20
|
-
expect(result).toEqual({
|
21
|
-
vizId: "my-viz",
|
22
|
-
fileName: "nested/path/file.test.js",
|
23
|
-
});
|
24
|
-
});
|
25
|
-
});
|
@@ -1,341 +0,0 @@
|
|
1
|
-
import { parseId } from "./parseId";
|
2
|
-
import { cleanRollupErrorMessage } from "./cleanRollupErrorMessage";
|
3
|
-
import { getFileText } from "@vizhub/viz-utils";
|
4
|
-
// Flag for debugging.
|
5
|
-
const debug = false;
|
6
|
-
// Nothing happening.
|
7
|
-
const IDLE = "IDLE";
|
8
|
-
// An update has been enqueued
|
9
|
-
// via requestAnimationFrame.
|
10
|
-
const ENQUEUED = "ENQUEUED";
|
11
|
-
// An update (build and run) is pending,
|
12
|
-
// and the files have not changed.
|
13
|
-
const PENDING_CLEAN = "PENDING_CLEAN";
|
14
|
-
// An update (build and run) is pending,
|
15
|
-
// and the files have changed
|
16
|
-
// while this run is taking place.
|
17
|
-
const PENDING_DIRTY = "PENDING_DIRTY";
|
18
|
-
export const setupV3Runtime = ({ vizId, iframe, setSrcdocErrorMessage, getLatestContent, resolveSlugKey, writeFile, worker, }) => {
|
19
|
-
// Valid State Transitions:
|
20
|
-
//
|
21
|
-
// * IDLE --> ENQUEUED
|
22
|
-
// When the system is idle and files are changed.
|
23
|
-
//
|
24
|
-
// * ENQUEUED --> PENDING_CLEAN
|
25
|
-
// When the pending changes run.
|
26
|
-
//
|
27
|
-
// * PENDING_CLEAN --> IDLE
|
28
|
-
// When the pending update finishes running
|
29
|
-
// and files were not changed in the mean time.
|
30
|
-
//
|
31
|
-
// * PENDING_CLEAN --> PENDING_DIRTY
|
32
|
-
// When files are changed while an update is pending.
|
33
|
-
//
|
34
|
-
// * PENDING_DIRTY --> ENQUEUED
|
35
|
-
// When the pending update finishes running
|
36
|
-
// and files were changed in the mean time.
|
37
|
-
//
|
38
|
-
// When a build error happens, the state is set to IDLE.
|
39
|
-
// This is to prevent a build error from causing
|
40
|
-
// the whole system to stop working.
|
41
|
-
//
|
42
|
-
// Valid State Transitions (with build errors):
|
43
|
-
// TODO complete this section
|
44
|
-
let state = IDLE;
|
45
|
-
if (debug) {
|
46
|
-
setInterval(() => {
|
47
|
-
console.log("state", state);
|
48
|
-
}, 1000);
|
49
|
-
}
|
50
|
-
// Pending promise resolvers.
|
51
|
-
let pendingBuildPromise = null;
|
52
|
-
let pendingRunPromise = null;
|
53
|
-
// Logic around profiling build times.
|
54
|
-
const profileBuildTimes = debug;
|
55
|
-
let buildTimes = [];
|
56
|
-
const avg = (arr) => arr.reduce((a, b) => a + b, 0) / arr.length;
|
57
|
-
const n = 100;
|
58
|
-
// This runs when the build worker sends a message.
|
59
|
-
worker.addEventListener("message", async ({ data }) => {
|
60
|
-
const message = data;
|
61
|
-
// Handle 'buildResponse' messages.
|
62
|
-
// These are sent by the build worker in response
|
63
|
-
// to a 'buildRequest' message.
|
64
|
-
if (message.type === "buildResponse") {
|
65
|
-
const buildResult = message.buildResult;
|
66
|
-
const error = message.error;
|
67
|
-
if (profileBuildTimes && buildResult) {
|
68
|
-
buildTimes.push(buildResult.time);
|
69
|
-
// Every n times, log the rolling average.
|
70
|
-
if (buildTimes.length % n === 0) {
|
71
|
-
console.log("Average build time: " +
|
72
|
-
avg(buildTimes) +
|
73
|
-
" ms");
|
74
|
-
buildTimes = [];
|
75
|
-
}
|
76
|
-
}
|
77
|
-
// Regardless of whether the build succeeded or failed,
|
78
|
-
// resolve the pending build promise,
|
79
|
-
// so that the system remains responsive.
|
80
|
-
if (pendingBuildPromise) {
|
81
|
-
pendingBuildPromise(buildResult);
|
82
|
-
pendingBuildPromise = null;
|
83
|
-
}
|
84
|
-
if (error) {
|
85
|
-
setSrcdocErrorMessage(cleanRollupErrorMessage({
|
86
|
-
rawMessage: error.message,
|
87
|
-
vizId,
|
88
|
-
}));
|
89
|
-
}
|
90
|
-
}
|
91
|
-
// Handle 'contentRequest' messages.
|
92
|
-
// These are sent by the worker when it needs
|
93
|
-
// to get the content of a file, in order to
|
94
|
-
// populate its VizCache.
|
95
|
-
if (message.type === "contentRequest") {
|
96
|
-
const { vizId } = message;
|
97
|
-
const content = await getLatestContent(vizId);
|
98
|
-
const contentResponseMessage = {
|
99
|
-
type: "contentResponse",
|
100
|
-
vizId: message.vizId,
|
101
|
-
content,
|
102
|
-
};
|
103
|
-
if (debug) {
|
104
|
-
console.log("[v3 runtime] received contentRequest, sending contentResponse", contentResponseMessage);
|
105
|
-
}
|
106
|
-
// Send the content back to the worker.
|
107
|
-
worker.postMessage(contentResponseMessage);
|
108
|
-
}
|
109
|
-
// Handle 'resolveSlugRequest' messages.
|
110
|
-
// These are sent by the worker when it needs
|
111
|
-
// to resolve a slug import to a viz ID.
|
112
|
-
if (message.type === "resolveSlugRequest") {
|
113
|
-
const { slugKey } = message;
|
114
|
-
const resolveSlugResponseMessage = {
|
115
|
-
type: "resolveSlugResponse",
|
116
|
-
slugKey,
|
117
|
-
requestId: message.requestId,
|
118
|
-
vizId: await resolveSlugKey(slugKey),
|
119
|
-
};
|
120
|
-
if (debug) {
|
121
|
-
console.log("[v3 runtime] received resolveSlugRequest, sending resolveSlugResponse", resolveSlugResponseMessage);
|
122
|
-
}
|
123
|
-
// Send the viz ID back to the worker.
|
124
|
-
worker.postMessage(resolveSlugResponseMessage);
|
125
|
-
}
|
126
|
-
// Handle 'invalidateVizCacheResponse' messages.
|
127
|
-
// These are sent by the worker in response to
|
128
|
-
// an 'invalidateVizCacheRequest' message.
|
129
|
-
if (message.type === "invalidateVizCacheResponse") {
|
130
|
-
if (debug) {
|
131
|
-
console.log("[v3 runtime] received invalidateVizCacheResponse", message);
|
132
|
-
}
|
133
|
-
// Leverage existing infra for executing the hot reloading.
|
134
|
-
handleCodeChange();
|
135
|
-
}
|
136
|
-
if (message.type === "resetSrcdocResponse") {
|
137
|
-
const srcdoc = message.srcdoc;
|
138
|
-
const error = message.error;
|
139
|
-
if (error) {
|
140
|
-
setSrcdocErrorMessage(cleanRollupErrorMessage({
|
141
|
-
rawMessage: error.message,
|
142
|
-
vizId,
|
143
|
-
}));
|
144
|
-
}
|
145
|
-
else {
|
146
|
-
setSrcdocErrorMessage(null);
|
147
|
-
// Really reset the srcdoc!
|
148
|
-
// console.log('Really reset the srcdoc!');
|
149
|
-
if (srcdoc) {
|
150
|
-
iframe.srcdoc = srcdoc;
|
151
|
-
}
|
152
|
-
}
|
153
|
-
}
|
154
|
-
});
|
155
|
-
// This runs when the IFrame sends a message.
|
156
|
-
window.addEventListener("message", ({ data }) => {
|
157
|
-
// Handle 'runDone' and 'runError' messages.
|
158
|
-
// These happen in response to sending a 'runJS' message.
|
159
|
-
if (data.type === "runDone" ||
|
160
|
-
data.type === "runError") {
|
161
|
-
// console.log('got ' + data.type);
|
162
|
-
if (pendingRunPromise) {
|
163
|
-
// TODO pass errors out for display
|
164
|
-
// pendingRunPromise(data as V3WindowMessage);
|
165
|
-
pendingRunPromise();
|
166
|
-
pendingRunPromise = null;
|
167
|
-
}
|
168
|
-
}
|
169
|
-
if (data.type === "runError") {
|
170
|
-
setSrcdocErrorMessage(data.error.message);
|
171
|
-
}
|
172
|
-
if (data.type === "writeFile") {
|
173
|
-
if (data.fileName && data.content) {
|
174
|
-
writeFile(data.fileName, data.content);
|
175
|
-
}
|
176
|
-
}
|
177
|
-
});
|
178
|
-
const handleCodeChange = () => {
|
179
|
-
if (state === IDLE) {
|
180
|
-
state = ENQUEUED;
|
181
|
-
update();
|
182
|
-
}
|
183
|
-
else if (state === PENDING_CLEAN) {
|
184
|
-
state = PENDING_DIRTY;
|
185
|
-
}
|
186
|
-
};
|
187
|
-
// This runs when one or more imported vizzes are changed.
|
188
|
-
const invalidateVizCache = (changedVizIds) => {
|
189
|
-
// Send a message to the worker to invalidate the cache.
|
190
|
-
const message = {
|
191
|
-
type: "invalidateVizCacheRequest",
|
192
|
-
changedVizIds,
|
193
|
-
};
|
194
|
-
worker.postMessage(message);
|
195
|
-
};
|
196
|
-
const profileHotReloadFPS = true;
|
197
|
-
let updateCount = 0;
|
198
|
-
if (profileHotReloadFPS) {
|
199
|
-
setInterval(() => {
|
200
|
-
if (debug && updateCount > 0) {
|
201
|
-
console.log(updateCount +
|
202
|
-
" hot reload" +
|
203
|
-
(updateCount !== 1 ? "s" : "") +
|
204
|
-
" in the last second");
|
205
|
-
}
|
206
|
-
updateCount = 0;
|
207
|
-
}, 1000);
|
208
|
-
}
|
209
|
-
const build = () => {
|
210
|
-
return new Promise((resolve) => {
|
211
|
-
pendingBuildPromise = resolve;
|
212
|
-
const message = {
|
213
|
-
type: "buildRequest",
|
214
|
-
vizId,
|
215
|
-
enableSourcemap: true,
|
216
|
-
};
|
217
|
-
worker.postMessage(message);
|
218
|
-
});
|
219
|
-
};
|
220
|
-
// Builds and runs the latest files.
|
221
|
-
const update = async () => {
|
222
|
-
state = PENDING_CLEAN;
|
223
|
-
if (debug) {
|
224
|
-
console.log("update: before run");
|
225
|
-
}
|
226
|
-
// Build the code. This may fail and return `undefined`.
|
227
|
-
const buildResult = await build();
|
228
|
-
// If the build was successful, run the code.
|
229
|
-
if (buildResult !== undefined) {
|
230
|
-
await run(buildResult);
|
231
|
-
}
|
232
|
-
if (debug) {
|
233
|
-
console.log("update: after run");
|
234
|
-
}
|
235
|
-
updateCount++;
|
236
|
-
// TypeScript can't comprehend that `state`
|
237
|
-
// may change during the await calls above.
|
238
|
-
// @ts-ignore
|
239
|
-
if (state === PENDING_DIRTY) {
|
240
|
-
requestAnimationFrame(update);
|
241
|
-
state = ENQUEUED;
|
242
|
-
}
|
243
|
-
else {
|
244
|
-
state = IDLE;
|
245
|
-
}
|
246
|
-
};
|
247
|
-
let previousCSSFiles = [];
|
248
|
-
const run = (buildResult) => {
|
249
|
-
return new Promise((resolve) => {
|
250
|
-
const { src, warnings, cssFiles } = buildResult;
|
251
|
-
// Sanity check.
|
252
|
-
// At this point, since there were no errors,
|
253
|
-
// we expect there to be a `src` property.
|
254
|
-
// This should never happen, but log & error just in case!
|
255
|
-
if (src === undefined) {
|
256
|
-
if (debug) {
|
257
|
-
console.log("[v3 runtime] src is undefined, but no errors!");
|
258
|
-
}
|
259
|
-
throw new Error("[v3 runtime] src is undefined, but no errors!");
|
260
|
-
}
|
261
|
-
// Set pendingRunPromise because at this point,
|
262
|
-
// we expect an asynchronous response when the run is done.
|
263
|
-
// The iframe should send either a `runDone` or `runError` message.
|
264
|
-
pendingRunPromise = resolve;
|
265
|
-
// Handle build warnings
|
266
|
-
if (warnings.length > 0) {
|
267
|
-
// TODO: Distinguish between warnings and errors in UI
|
268
|
-
setSrcdocErrorMessage(warnings
|
269
|
-
.map((warning) => warning.message)
|
270
|
-
.join("\n\n"));
|
271
|
-
}
|
272
|
-
else {
|
273
|
-
setSrcdocErrorMessage(null); // Clear error message if no warnings
|
274
|
-
}
|
275
|
-
if (iframe.contentWindow) {
|
276
|
-
// For each cssFiles
|
277
|
-
for (const cssFile of cssFiles) {
|
278
|
-
const { vizId, fileName } = parseId(cssFile);
|
279
|
-
getLatestContent(vizId).then((content) => {
|
280
|
-
const src = getFileText(content, fileName);
|
281
|
-
if (src === null) {
|
282
|
-
// The file doesn't exist.
|
283
|
-
// TODO surface this error to the user
|
284
|
-
// in a nicer way than this.
|
285
|
-
console.warn(`Imported CSS file ${fileName} doesn't exist.`);
|
286
|
-
return;
|
287
|
-
}
|
288
|
-
// TODO only inject CSS if it has changed.
|
289
|
-
const runCSSMessage = {
|
290
|
-
type: "runCSS",
|
291
|
-
id: cssFile,
|
292
|
-
src,
|
293
|
-
};
|
294
|
-
if (debug) {
|
295
|
-
console.log("runCSSMessage", runCSSMessage);
|
296
|
-
}
|
297
|
-
iframe.contentWindow?.postMessage(runCSSMessage, window.location.origin);
|
298
|
-
});
|
299
|
-
}
|
300
|
-
// Detect which CSS files have been removed
|
301
|
-
// and remove them from the iframe.
|
302
|
-
const removedCSSFiles = previousCSSFiles.filter((id) => !cssFiles.includes(id));
|
303
|
-
previousCSSFiles = cssFiles;
|
304
|
-
if (debug) {
|
305
|
-
console.log("removedCSSFiles", removedCSSFiles);
|
306
|
-
}
|
307
|
-
for (const id of removedCSSFiles) {
|
308
|
-
const removeCSSMessage = {
|
309
|
-
type: "runCSS",
|
310
|
-
id,
|
311
|
-
src: "",
|
312
|
-
};
|
313
|
-
iframe.contentWindow?.postMessage(removeCSSMessage, window.location.origin);
|
314
|
-
}
|
315
|
-
// Clear the console before each run.
|
316
|
-
console.clear();
|
317
|
-
const runJSMessage = {
|
318
|
-
type: "runJS",
|
319
|
-
src,
|
320
|
-
};
|
321
|
-
iframe.contentWindow.postMessage(runJSMessage, window.location.origin);
|
322
|
-
}
|
323
|
-
});
|
324
|
-
};
|
325
|
-
const resetSrcdoc = (changedVizIds) => {
|
326
|
-
state = IDLE;
|
327
|
-
pendingBuildPromise = null;
|
328
|
-
pendingRunPromise = null;
|
329
|
-
const message = {
|
330
|
-
type: "resetSrcdocRequest",
|
331
|
-
vizId,
|
332
|
-
changedVizIds,
|
333
|
-
};
|
334
|
-
worker.postMessage(message);
|
335
|
-
};
|
336
|
-
return {
|
337
|
-
handleCodeChange,
|
338
|
-
invalidateVizCache,
|
339
|
-
resetSrcdoc,
|
340
|
-
};
|
341
|
-
};
|
package/dist/v3/slugCache.js
DELETED
@@ -1,35 +0,0 @@
|
|
1
|
-
// A cache of viz IDs for slug resolution.
|
2
|
-
// Maps slug strings (username/slug) to viz IDs.
|
3
|
-
export const createSlugCache = ({ initialMappings = {}, handleCacheMiss, }) => {
|
4
|
-
// Track the mapping of slugs to viz IDs
|
5
|
-
const slugMap = new Map(Object.entries(initialMappings));
|
6
|
-
// Gets the viz ID for a slug.
|
7
|
-
// Returns the cached ID if it exists.
|
8
|
-
// Otherwise, calls handleCacheMiss to resolve the slug.
|
9
|
-
const get = async (slug) => {
|
10
|
-
const cachedVizId = slugMap.get(slug);
|
11
|
-
// Cache hit
|
12
|
-
if (cachedVizId !== undefined) {
|
13
|
-
return cachedVizId;
|
14
|
-
}
|
15
|
-
// Cache miss
|
16
|
-
if (!handleCacheMiss) {
|
17
|
-
throw new Error(`Unresolved slug ${slug}, cache miss handler not provided.`);
|
18
|
-
}
|
19
|
-
const resolvedVizId = await handleCacheMiss(slug);
|
20
|
-
if (resolvedVizId) {
|
21
|
-
slugMap.set(slug, resolvedVizId);
|
22
|
-
return resolvedVizId;
|
23
|
-
}
|
24
|
-
throw new Error(`Unresolved slug ${slug}`);
|
25
|
-
};
|
26
|
-
// Updates the mapping of a slug to a viz ID in the cache.
|
27
|
-
const set = (slug, vizId) => {
|
28
|
-
slugMap.set(slug, vizId);
|
29
|
-
};
|
30
|
-
// Removes a slug mapping from the cache.
|
31
|
-
const invalidate = (slug) => {
|
32
|
-
slugMap.delete(slug);
|
33
|
-
};
|
34
|
-
return { get, set, invalidate };
|
35
|
-
};
|