You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@echarts.apache.org by sh...@apache.org on 2020/07/28 08:03:59 UTC

[incubator-echarts] branch next-npm-env updated: chore(prepublish): replace zrender root folder in esm and lib.

This is an automated email from the ASF dual-hosted git repository.

shenyi pushed a commit to branch next-npm-env
in repository https://gitbox.apache.org/repos/asf/incubator-echarts.git


The following commit(s) were added to refs/heads/next-npm-env by this push:
     new 4a9d334  chore(prepublish): replace zrender root folder in esm and lib.
4a9d334 is described below

commit 4a9d334b8580101f18462327f5509d0b568e525b
Author: pissang <bm...@gmail.com>
AuthorDate: Tue Jul 28 16:03:19 2020 +0800

    chore(prepublish): replace zrender root folder in esm and lib.
---
 build/pre-publish.js | 36 ++++++++++++++++++++++++++++++++++--
 package.json         |  3 +++
 2 files changed, 37 insertions(+), 2 deletions(-)

diff --git a/build/pre-publish.js b/build/pre-publish.js
index 56bcbe4..cd84c7c 100644
--- a/build/pre-publish.js
+++ b/build/pre-publish.js
@@ -107,6 +107,8 @@ const compileWorkList = [
             transformRootFolderInEntry(nodePath.resolve(ecDir, 'index.common.js'), 'lib');
             transformRootFolderInEntry(nodePath.resolve(ecDir, 'index.simple.js'), 'lib');
 
+            transformZRRootFolder(nodePath.resolve(ecDir, 'lib'), 'lib');
+
             fsExtra.removeSync(tmpDir);
         }
     },
@@ -143,6 +145,8 @@ const compileWorkList = [
             transformRootFolderInEntry(nodePath.resolve(ecDir, 'echarts.common.js'), 'esm');
             transformRootFolderInEntry(nodePath.resolve(ecDir, 'echarts.simple.js'), 'esm');
 
+            await transformZRRootFolder(nodePath.resolve(ecDir, 'esm'), 'esm');
+
             fsExtra.removeSync(tmpDir);
         }
     },
@@ -161,6 +165,9 @@ const compileWorkList = [
         },
         before: async function () {
             fsExtra.removeSync(extensionCJSDir);
+        },
+        after: async function () {
+            await transformZRRootFolder(extensionCJSDir, 'lib');
         }
     },
     {
@@ -178,6 +185,9 @@ const compileWorkList = [
         },
         before: async function () {
             fsExtra.removeSync(extensionESMDir);
+        },
+        after: async function () {
+            await transformZRRootFolder(extensionESMDir, 'esm');
         }
     }
 ];
@@ -266,13 +276,35 @@ async function tsCompile(compilerOptionsOverride, srcPathList) {
 /**
  * Transform `src` root in the entry file to `esm` or `lib`
  */
-async function transformRootFolderInEntry(entryFile, replacement) {
+function transformRootFolderInEntry(entryFile, replacement) {
     let code = fs.readFileSync(entryFile, 'utf-8');
     // Simple regex replacement
     // TODO More robust way?
     code = code.replace(/([\"\'])\.\/src\//g, `$1./${replacement}/`)
         .replace(/([\"\'])src\//g, `$1${replacement}/`);
-    fs.writeFileSync(entryFile, code, 'utf-8');
+    fs.writeFileSync(
+        entryFile,
+        // Also transform zrender.
+        singleTransformZRRootFolder(code, replacement),
+        'utf-8'
+    );
+}
+
+/**
+ * Transform `zrender/src` to `zrender/esm` in all files
+ */
+async function transformZRRootFolder(rooltFolder, replacement) {
+    const files = await globby([rooltFolder + '/**/*.js']);
+    // Simple regex replacement
+    // TODO More robust way?
+    for (let fileName of files) {
+        let code = fs.readFileSync(fileName, 'utf-8');
+        fs.writeFileSync(fileName, singleTransformZRRootFolder(code, replacement), 'utf-8');
+    }
+}
+
+function singleTransformZRRootFolder(code, replacement) {
+    return code.replace(/([\"\'])zrender\/src\//g, `$1zrender/${replacement}/`);
 }
 
 /**
diff --git a/package.json b/package.json
index 6a985b5..c533be1 100644
--- a/package.json
+++ b/package.json
@@ -7,6 +7,9 @@
     "visualization",
     "canvas"
   ],
+  "main": "index.js",
+  "module": "echarts.all.js",
+  "jsdelivr": "dist/echarts.min.js",
   "homepage": "http://echarts.apache.org",
   "repository": {
     "type": "git",


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@echarts.apache.org
For additional commands, e-mail: commits-help@echarts.apache.org