You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@superset.apache.org by ru...@apache.org on 2024/02/13 19:20:34 UTC
(superset) branch remove-translation-json updated: build translations via npm script OR shell script
This is an automated email from the ASF dual-hosted git repository.
rusackas pushed a commit to branch remove-translation-json
in repository https://gitbox.apache.org/repos/asf/superset.git
The following commit(s) were added to refs/heads/remove-translation-json by this push:
new 20a9b28136 build translations via npm script OR shell script
20a9b28136 is described below
commit 20a9b28136b0ec71e096b67150e0bb6951d5bdf0
Author: Evan Rusackas <ev...@rusackas.com>
AuthorDate: Tue Feb 13 12:20:24 2024 -0700
build translations via npm script OR shell script
---
scripts/po2json.sh | 12 +--
superset-frontend/package-lock.json | 153 ++++++++++++++++++++++++++++++++++++
superset-frontend/package.json | 2 +
3 files changed, 162 insertions(+), 5 deletions(-)
diff --git a/scripts/po2json.sh b/scripts/po2json.sh
index 67d75ae5bb..a49d5a7377 100755
--- a/scripts/po2json.sh
+++ b/scripts/po2json.sh
@@ -14,14 +14,16 @@
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
+SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )"
+TRANSLATIONS_DIR="$SCRIPT_DIR/../superset/translations"
-for file in $( find superset/translations/** );
+for file in $( find "$TRANSLATIONS_DIR" -name "*.po" );
do
extension=${file##*.}
filename="${file%.*}"
- if [ $extension == "po" ]
+ if [ "$extension" = "po" ]
then
- po2json --domain superset --format jed1.x $file $filename.json
- ./superset-frontend/node_modules/.bin/prettier --write $filename.json
+ po2json --domain superset --format jed1.x "$file" "$filename.json"
+ "$SCRIPT_DIR/../superset-frontend/node_modules/.bin/prettier" --write "$filename.json"
fi
-done
+done
\ No newline at end of file
diff --git a/superset-frontend/package-lock.json b/superset-frontend/package-lock.json
index 63000f6aca..71fe37f3c9 100644
--- a/superset-frontend/package-lock.json
+++ b/superset-frontend/package-lock.json
@@ -252,6 +252,7 @@
"mini-css-extract-plugin": "^2.7.6",
"mock-socket": "^9.3.1",
"node-fetch": "^2.6.7",
+ "po2json": "^0.4.5",
"prettier": "^2.4.1",
"prettier-plugin-packagejson": "^2.4.9",
"process": "^0.11.10",
@@ -35699,6 +35700,15 @@
"assert-plus": "^1.0.0"
}
},
+ "node_modules/gettext-parser": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/gettext-parser/-/gettext-parser-1.1.0.tgz",
+ "integrity": "sha512-zL3eayB0jF+cr6vogH/VJKoKcj7uQj2TPByaaj6a4k/3elk9iq7fiwCM2FqdzS/umo021RetSanVisarzeb9Wg==",
+ "dev": true,
+ "dependencies": {
+ "encoding": "^0.1.11"
+ }
+ },
"node_modules/gh-pages": {
"version": "3.2.3",
"resolved": "https://registry.npmjs.org/gh-pages/-/gh-pages-3.2.3.tgz",
@@ -36462,6 +36472,15 @@
"url": "https://github.com/sponsors/ljharb"
}
},
+ "node_modules/has-color": {
+ "version": "0.1.7",
+ "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz",
+ "integrity": "sha512-kaNz5OTAYYmt646Hkqw50/qyxP2vFnTVu5AQ1Zmk22Kk5+4Qx6BpO8+u7IKsML5fOsFk0ZT0AcCJNYwcvaLBvw==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/has-flag": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
@@ -51499,6 +51518,58 @@
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz",
"integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw=="
},
+ "node_modules/nomnom": {
+ "version": "1.8.1",
+ "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz",
+ "integrity": "sha512-5s0JxqhDx9/rksG2BTMVN1enjWSvPidpoSgViZU4ZXULyTe+7jxcCRLB6f42Z0l1xYJpleCBtSyY6Lwg3uu5CQ==",
+ "deprecated": "Package no longer supported. Contact support@npmjs.com for more info.",
+ "dev": true,
+ "dependencies": {
+ "chalk": "~0.4.0",
+ "underscore": "~1.6.0"
+ }
+ },
+ "node_modules/nomnom/node_modules/ansi-styles": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz",
+ "integrity": "sha512-3iF4FIKdxaVYT3JqQuY3Wat/T2t7TRbbQ94Fu50ZUCbLy4TFbTzr90NOHQodQkNqmeEGCw8WbeP78WNi6SKYUA==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.8.0"
+ }
+ },
+ "node_modules/nomnom/node_modules/chalk": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz",
+ "integrity": "sha512-sQfYDlfv2DGVtjdoQqxS0cEZDroyG8h6TamA6rvxwlrU5BaSLDx9xhatBYl2pxZ7gmpNaPFVwBtdGdu5rQ+tYQ==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "~1.0.0",
+ "has-color": "~0.1.0",
+ "strip-ansi": "~0.1.0"
+ },
+ "engines": {
+ "node": ">=0.8.0"
+ }
+ },
+ "node_modules/nomnom/node_modules/strip-ansi": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz",
+ "integrity": "sha512-behete+3uqxecWlDAm5lmskaSaISA+ThQ4oNNBDTBJt0x2ppR6IPqfZNuj6BLaLJ/Sji4TPZlcRyOis8wXQTLg==",
+ "dev": true,
+ "bin": {
+ "strip-ansi": "cli.js"
+ },
+ "engines": {
+ "node": ">=0.8.0"
+ }
+ },
+ "node_modules/nomnom/node_modules/underscore": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz",
+ "integrity": "sha512-z4o1fvKUojIWh9XuaVLUDdf86RQiq13AC1dmHbTpoyuu+bquHms76v16CjycCbec87J7z0k//SiQVk0sMdFmpQ==",
+ "dev": true
+ },
"node_modules/nopt": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz",
@@ -54107,6 +54178,22 @@
"node": ">=6"
}
},
+ "node_modules/po2json": {
+ "version": "0.4.5",
+ "resolved": "https://registry.npmjs.org/po2json/-/po2json-0.4.5.tgz",
+ "integrity": "sha512-JH0hgi1fC0t9UvdiyS7kcVly0N1WNey4R2YZ/jPaxQKYm6Cfej7ZTgiEy8LP2JwoEhONceiNS8JH5mWPQkiXeA==",
+ "dev": true,
+ "dependencies": {
+ "gettext-parser": "1.1.0",
+ "nomnom": "1.8.1"
+ },
+ "bin": {
+ "po2json": "bin/po2json"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
"node_modules/polished": {
"version": "3.7.2",
"resolved": "https://registry.npmjs.org/polished/-/polished-3.7.2.tgz",
@@ -99608,6 +99695,15 @@
"assert-plus": "^1.0.0"
}
},
+ "gettext-parser": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/gettext-parser/-/gettext-parser-1.1.0.tgz",
+ "integrity": "sha512-zL3eayB0jF+cr6vogH/VJKoKcj7uQj2TPByaaj6a4k/3elk9iq7fiwCM2FqdzS/umo021RetSanVisarzeb9Wg==",
+ "dev": true,
+ "requires": {
+ "encoding": "^0.1.11"
+ }
+ },
"gh-pages": {
"version": "3.2.3",
"resolved": "https://registry.npmjs.org/gh-pages/-/gh-pages-3.2.3.tgz",
@@ -100176,6 +100272,12 @@
"resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz",
"integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ=="
},
+ "has-color": {
+ "version": "0.1.7",
+ "resolved": "https://registry.npmjs.org/has-color/-/has-color-0.1.7.tgz",
+ "integrity": "sha512-kaNz5OTAYYmt646Hkqw50/qyxP2vFnTVu5AQ1Zmk22Kk5+4Qx6BpO8+u7IKsML5fOsFk0ZT0AcCJNYwcvaLBvw==",
+ "dev": true
+ },
"has-flag": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
@@ -111652,6 +111754,47 @@
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz",
"integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw=="
},
+ "nomnom": {
+ "version": "1.8.1",
+ "resolved": "https://registry.npmjs.org/nomnom/-/nomnom-1.8.1.tgz",
+ "integrity": "sha512-5s0JxqhDx9/rksG2BTMVN1enjWSvPidpoSgViZU4ZXULyTe+7jxcCRLB6f42Z0l1xYJpleCBtSyY6Lwg3uu5CQ==",
+ "dev": true,
+ "requires": {
+ "chalk": "~0.4.0",
+ "underscore": "~1.6.0"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-1.0.0.tgz",
+ "integrity": "sha512-3iF4FIKdxaVYT3JqQuY3Wat/T2t7TRbbQ94Fu50ZUCbLy4TFbTzr90NOHQodQkNqmeEGCw8WbeP78WNi6SKYUA==",
+ "dev": true
+ },
+ "chalk": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-0.4.0.tgz",
+ "integrity": "sha512-sQfYDlfv2DGVtjdoQqxS0cEZDroyG8h6TamA6rvxwlrU5BaSLDx9xhatBYl2pxZ7gmpNaPFVwBtdGdu5rQ+tYQ==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "~1.0.0",
+ "has-color": "~0.1.0",
+ "strip-ansi": "~0.1.0"
+ }
+ },
+ "strip-ansi": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-0.1.1.tgz",
+ "integrity": "sha512-behete+3uqxecWlDAm5lmskaSaISA+ThQ4oNNBDTBJt0x2ppR6IPqfZNuj6BLaLJ/Sji4TPZlcRyOis8wXQTLg==",
+ "dev": true
+ },
+ "underscore": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.6.0.tgz",
+ "integrity": "sha512-z4o1fvKUojIWh9XuaVLUDdf86RQiq13AC1dmHbTpoyuu+bquHms76v16CjycCbec87J7z0k//SiQVk0sMdFmpQ==",
+ "dev": true
+ }
+ }
+ },
"nopt": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz",
@@ -113662,6 +113805,16 @@
"ts-pnp": "^1.1.6"
}
},
+ "po2json": {
+ "version": "0.4.5",
+ "resolved": "https://registry.npmjs.org/po2json/-/po2json-0.4.5.tgz",
+ "integrity": "sha512-JH0hgi1fC0t9UvdiyS7kcVly0N1WNey4R2YZ/jPaxQKYm6Cfej7ZTgiEy8LP2JwoEhONceiNS8JH5mWPQkiXeA==",
+ "dev": true,
+ "requires": {
+ "gettext-parser": "1.1.0",
+ "nomnom": "1.8.1"
+ }
+ },
"polished": {
"version": "3.7.2",
"resolved": "https://registry.npmjs.org/polished/-/polished-3.7.2.tgz",
diff --git a/superset-frontend/package.json b/superset-frontend/package.json
index fed9f73124..862a201e53 100644
--- a/superset-frontend/package.json
+++ b/superset-frontend/package.json
@@ -42,6 +42,7 @@
"build-dev": "cross-env NODE_OPTIONS=--max_old_space_size=8192 NODE_ENV=development webpack --mode=development --color",
"build-instrumented": "cross-env NODE_ENV=production BABEL_ENV=instrumented webpack --mode=production --color",
"build-storybook": "build-storybook",
+ "build-translations": "cd .. && ./scripts/po2json.sh",
"check-translation": "prettier --check ../superset/translations/**/LC_MESSAGES/*.json",
"chromatic": "npx chromatic --skip 'dependabot/**' --only-changed",
"clean-translation": "prettier --write ../superset/translations/**/LC_MESSAGES/*.json",
@@ -320,6 +321,7 @@
"mini-css-extract-plugin": "^2.7.6",
"mock-socket": "^9.3.1",
"node-fetch": "^2.6.7",
+ "po2json": "^0.4.5",
"prettier": "^2.4.1",
"prettier-plugin-packagejson": "^2.4.9",
"process": "^0.11.10",