// npm 패키지
@antv/my-f2
F2 for alipay mini-program
주간
87
월간
584
버전
33
메인테이너
51
라이선스
MIT
최초 publish
2017-12-07
publisher
zengyue
tarball
7,792 B
AUTO-PUBLISHED·1개 버전 인덱싱됨·최근 publish: 2021-12-29
// publisher 캠페인by zengyue
이 계정에서 catch된 패키지 9건고립된 catch가 아닙니다. 동일 publisher가 8개의 다른 패키지를 추가로 발행했고, 모두 파이프라인이 catch했습니다 — 일회성이 아닌 조직적 캠페인의 형태. 아래 링크는 각 형제 catch의 분석으로 이동합니다.
// offending code· @2.1.7· 1 file flagged
llm: benign · 0.85→ 의심 전송지 없음, 원격 실행 형태 없음 — 1 known-vendor host(s).
- @2.1.7··AUTO-PUBLISHED·publisher: zengyueheuristic 75/100static flags 1llm benign (0.85) via ollamamature-packageosv-flagged:MAL-2026-4070child-process-spawn
→ 의심 전송지 없음, 원격 실행 형태 없음 — 1 known-vendor host(s).
// offending code· 1 file flaggedpatterns: 1
--- package/es/index.js (excerpt) --- import F2 from '@antv/f2'; import { my as my$1 } from '@antv/f2-context'; function wrapEvent(e) { if (!e) return; if (!e.preventDefault) { e.preventDefault = function() {}; } return e; } Component({ // mixins: [], // data: {}, props: { onInit: () => {}, // width height 会作为元素兜底的宽高使用 width: null, height: null }, didMount() { const pageId = this.$page && this.$page.$id || 0; const id = `f2-canvas-${pageId}-${this.$id}`; const myCtx = my.createCanvasContext(id, { page: this.$page }); const context = my$1(myCtx); this.setData({ $pageId: pageId }); const query = my.createSelectorQuery({ page: this.$page }); query .select(`#${id}`) .boundingClientRect() .exec(res => { // 获取画布实际宽高, 用props的宽高做失败兜底 const { width, height } = res && res[0] ? res[0] : this.props; if (!width || !height) { return; } const pixelRatio = my.getSystemInfoSync().pixelRatio; // 高清解决方案 this.setData({ id, width: width * pixelRatio, height: height * pixelRatio }, () => { const ref = this; const chart = this.props.onInit(F2, { context, width, height, pixelRatio }, ref); if (chart) { this.chart = chart; this.canvasEl = chart.get('el'); } }); }); }, // didUpdate() {}, // didUnmount() {}, methods: { click(e) { const canvasEl =
