Package evidence
[email protected]
Js Split Join Obfuscation: Array-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.
Trust signals
Why this verdict
PkgRadar discounts a release’s score when public reputation argues against novel malware. The verdict above already reflects these — the panel just explains what was applied.
- Weekly downloads
- 59,694Mainstream · −50% score
- Versions published
- 893Mature · −50% score
- First published
- Jan 2025
- Publisher
- kainpm
Effective trust discount applied: −50% (max across signals — discounts don’t stack). New install-lifecycle deltas vs the previous release would clear the discount.
Recommended action
Review before promotingMixed signals: the package has indicators worth reading before allowing the update in automated dependency flows.
Block this release in CIcurl · GitHub Actions
Fail the build when this package version is added or upgraded. Replace $PKGRADAR_TOKEN with a Pro / Team API key from your dashboard.
curl -fsS https://pkgradar.com/gate/npm \
-H "Authorization: Bearer $PKGRADAR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"specs":["[email protected]"],"fail_on":"review"}'GitHub Actions step:
- name: PkgRadar gate
run: |
curl -fsS https://pkgradar.com/gate/npm \
-H "Authorization: Bearer ${{ secrets.PKGRADAR_TOKEN }}" \
-H "Content-Type: application/json" \
-d '{"specs":["[email protected]"],"fail_on":"review"}'Why flagged
What the scanner saw
Js Split Join Obfuscation: Array-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis.
Not observed: package install, lifecycle script execution, or sandbox execution. PkgRadar only inspects on-disk artifacts.
Availability ledger
available
Status history (1 event)
- new → available · risk review · score 20 · status changed
Evidence
Static findings
37 static · 0 from release diff · showing high-signal first.
| Severity | Kind | Path | Detail | Points |
|---|---|---|---|---|
| high | Js Split Join Obfuscation | package/src/components/table/plugins/extend-cell-area/vxe-table-extend-cell-area.es6.min.js | Array-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis. | 40 |
Show all 37 findings (low-signal and informational)
| Severity | Kind | Path | Detail | Points |
|---|---|---|---|---|
| high | Js Split Join Obfuscation | package/src/components/table/plugins/extend-cell-area/vxe-table-extend-cell-area.es6.min.js | Array-of-single-tokens joined to form a string — used to obscure module names like require(["n","o","de",":","cr","yp","to"].join("")), defeating static require() analysis. | 40 |
| low | Obfuscation Density | package/src/utils/aes.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/utils/auth.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/table/config.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/xform/form-render/container-item/containerItemMixin.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/xform/form-designer/form-widget/container-widget/containerMixin.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/xform/form-designer/form-widget/container-widget/data-table-mixin.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/xform/form-render/dynamicDialogRender.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/utils/global.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/errorMsg/index.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/excelExport/index.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/excelImport/index.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/table/index.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/table/vxeFilter/index.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/utils/index.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/xform/form-designer/form-widget/indexMixin.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/xform/form-designer/indexMixin.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/xform/form-designer/setting-panel/indexMixin.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/xform/form-designer/toolbar-panel/indexMixin.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/xform/form-designer/widget-panel/indexMixin.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/utils/keepAlive.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/table/vxeFilter/mixin.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/errorMsg/mixins.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/excelExport/mixins.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/excelImport/mixins.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/mobile/statusTag/mixins.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/store/modules/permission.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/xform/form-render/refMixin.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/xform/form-designer/refMixinDesign.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/utils/request.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/xform/mixins/scriptHttp.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/store/modules/settings.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/table/tableFormMixin.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/store/modules/tagsView.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/utils/validate.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/components/xform/utils/validators.js | high encoded/escaped-token density | 0 |
| low | Obfuscation Density | package/src/utils/wf.js | high encoded/escaped-token density | 0 |
Manifest
Package metadata
Scripts11
build:prodvue-cli-service buildbuild:stagevue-cli-service build --mode stagingdevvue-cli-service servelinteslint --ext .js,.vue srcnewploppreviewnode build/index.js --previewpublishDevnpm publish --tag devsvgosvgo -f src/icons/svg --config=src/icons/svgo.ymltest:cinpm run lint && npm run test:unittest:unitjest --clearCache && vue-cli-service test:unitupdateCorejsnpm install cloud-web-corejs --registry https://registry.npmjs.org
Dependencies38
@codemirror/lang-javascript^6.1.9@formulajs/formulajs^4.3.1@vue/preload-webpack-plugin^2.0.0FileSaver^0.10.0axios0.18.1codemirror^6.0.1concurrent-tasks1.0.7copy-webpack-plugin5.1.2core-js^3.8.3dhtmlx-gantt^9.1.1dompurify^3.3.1element-ui^2.15.14esdk-obs-browserjs^3.25.6exceljs^4.4.0html2canvas^1.4.1js-base64^3.7.7js-cookie2.2.0jspdf^3.0.1jsqr^1.4.0lodash4.17.21luckyexcel^1.0.1moment2.29.4node-polyfill-webpack-plugin^4.0.0normalize.css7.0.0nprogress0.2.0qiankun^2.10.16qrcode^1.5.1qs6.10.3sortablejs^1.8.4spark-md5^3.0.1- …and 8 more.