// npm 패키지
@antv/g-image-exporter
A image exporter for G using DOM API
주간
59
월간
641
버전
156
메인테이너
51
라이선스
MIT
최초 publish
2022-06-22
publisher
alex_zjt
tarball
912,306 B
AUTO-PUBLISHED·1개 버전 인덱싱됨·최근 publish: 2025-12-15
// publisher 캠페인by alex_zjt
이 계정에서 catch된 패키지 9건고립된 catch가 아닙니다. 동일 publisher가 8개의 다른 패키지를 추가로 발행했고, 모두 파이프라인이 catch했습니다 — 일회성이 아닌 조직적 캠페인의 형태. 아래 링크는 각 형제 catch의 분석으로 이동합니다.
// offending code· @1.0.39-beta.0· 1 file flagged
llm: benign · 0.85→ 의심 전송지 없음, 원격 실행 형태 없음 — 1 known-vendor host(s), 1 other host(s).
- @1.0.39-beta.0··AUTO-PUBLISHED·publisher: alex_zjtheuristic 75/100static flags 1llm benign (0.85) via ollamamature-packageosv-flagged:MAL-2026-3837public-github-push
→ 의심 전송지 없음, 원격 실행 형태 없음 — 1 known-vendor host(s), 1 other host(s).
// offending code· 1 file flaggedpatterns: 1
--- package/package.json (excerpt) --- { "name": "@antv/g-image-exporter", "version": "1.0.39-beta.0", "description": "A image exporter for G using DOM API", "keywords": [ "antv", "g", "image exporter" ], "homepage": "https://github.com/antvis/g#readme", "bugs": { "url": "https://github.com/antvis/g/issues" }, "repository": { "type": "git", "url": "git+https://github.com/antvis/g.git" }, "license": "MIT", "author": "https://github.com/orgs/antvis/people", "exports": { "types": "./types/index.d.ts", "import": "./dist/index.esm.js", "default": "./dist/index.js" }, "main": "dist/index.js", "unpkg": "dist/index.umd.min.js", "module": "dist/index.esm.js", "types": "types/index.d.ts", "files": [ "package.json", "dist", "types", "LICENSE", "README.md" ], "dependencies": { "@babel/runtime": "^7.25.6", "html2canvas": "^1.4.1", "tslib": "^2.5.3", "@antv/g-lite": "2.3.3-beta.2" }, "publishConfig": { "access": "public" }, "scripts": { "build:types": "tsc --emitDeclarationOnly --noCheck", "build": "npm run clean && npm run build:types && rollup -c", "clean": "rimraf dist", "sync": "tnpm sync", "watch": "rollup -c -w" } } --- package.json (entry) --- { "name": "@antv/g-image-exporter", "version": "1.0.39-beta.0", "description": "A image exporter for G using DOM API", "keywords": [ "antv", "g", "image exporter" ], "homepage": "https://github.com/antvis/g#readme", "bugs": { "url": "https://github.com/antvis/g/issues" }, "repository": { "type": "git", "url": "git+https://github.com/antvis/g.git" }, "license": "MIT", "author": "https://github.com/orgs/antvis/people", "exports": { "types": "./types/index.d.ts", "import": "./dist/index.esm.js", "default": "./dist/index.js" }, "main": "dist/index.js", "unpkg": "dist/index.umd.min.js", "module": "dist/index.esm.js", "types": "types/index.d.ts", "files": [ "package.json", "dist", "types", "LICENSE", "README.md" ], "dependencies": { "@babel/runtime": "^7.25.6", "html2canvas": "^1.4.1", "tslib": "^2.5.3", "@antv/g-lite": "2.3.3-beta.2" }, "publishConfig": { "access": "public" }, "scripts": { "build:types": "tsc --emitDeclarationOnly --noCheck", "build": "npm run clean && npm run build:types && rollup -c", "clean": "rimraf dist", "sync": "tnpm sync", --- index.js (entry) --- /*! * @antv/g-image-exporter * @description A image exporter for G using DOM API * @version 1.0.39-beta.0 * @date 12/12/2025, 2:49:14 PM * @author AntVis * @docs https://g.antv.antgroup.com/ */ 'use strict'; var _regeneratorRuntime = require('@babel/runtime/helpers/regeneratorRuntime'); var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties'); var _asyncToGenerator = require('@babel/runtime/helpers/asyncToGenerator'); var _classCallCheck = require('@babel/runtime/helpers/classCallCheck'); var _createClass = require('@babel/runtime/helpers/createClass'); var gLite = require('@antv/g-lite'); var html2canvas = require('html2canvas'); var _excluded = ["clippingRegion", "beforeDrawImage", "afterDrawImage", "ignoreElements"]; var ImageExporter = /*#__PURE__*/function () { function ImageExporter(options) { _classCallCheck(this, ImageExporter); this.options = options; } /** * return a HTMLCanvasElement which you can call `toDataURL` later * * @example * const canvas = await exporter.toCanvas(); * canvas.toDataURL(); // data: */ return _createClass(ImageExporter, [{ key: "toCanvas", value: (function () { --- bundled output (OSV-MAL flagged — LLM scope expansion) --- --- dist/index.esm.js (bundled) --- /*! * @antv/g-image-exporter * @description A image exporter for G using DOM API * @version 1.0.39-beta.0 * @date 12/12/2025, 2:49:14 PM * @author AntVis * @docs https://g.antv.antgroup.com/ */ import _regeneratorRuntime from '@babel/runtime/helpers/regeneratorRuntime'; import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties'; import _asyncToGenerator from '@babel/runtime/helpers/asyncToGenerator'; import _classCallCheck from '@babel/runtime/helpers/classCallCheck'; import _createClass from '@babel/runtime/helpers/createClass'; import { Rectangle, isBrowser, runtime } from '@antv/g-lite'; import html2canvas from 'html2canvas'; var _excluded = ["clippingRegion", "beforeDrawImage", "afterDrawImage", "ignoreElements"]; var ImageExporter = /*#__PURE__*/function () { function ImageExporter(options) { _classCallCheck(this, ImageExporter); this.options = options; } /** * return a HTMLCanvasElement which you can call `toDataURL` later * * @example * const canvas = await exporter.toCanvas(); * canvas.toDataURL(); // data: */ return _createClass(ImageExporter, [{ key: "toCanvas", value: (function () { var _toCanvas = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee() { var options, _this$options$canvas$, width, height, doc, dpr, _options$clippingRegi, clippingRegion, beforeDrawImage, afterDrawImage, _ignoreElements, rest, dataURL, image, sx, sy, sWidth, sHeight, canvas, context, sourceImageMultipiler, $dom, _canvas, _image, _args = arguments; return _regeneratorRuntime().wrap(function (_context) { while (1) switch (_context.prev = _context.next) { case 0: options = _args.length > --- dist/index.js (bundled) --- /*! * @antv/g-image-exporter * @description A image exporter for G using DOM API * @version 1.0.39-beta.0 * @date 12/12/2025, 2:49:14 PM * @author AntVis * @docs https://g.antv.antgroup.com/ */ 'use strict'; var _regeneratorRuntime = require('@babel/runtime/helpers/regeneratorRuntime'); var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties'); var _asyncToGenerator = require('@babel/runtime/helpers/asyncToGenerator'); var _classCallCheck = require('@babel/runtime/helpers/classCallCheck'); var _createClass = require('@babel/runtime/helpers/createClass'); var gLite = require('@antv/g-lite'); var html2canvas = require('html2canvas'); var _excluded = ["clippingRegion", "beforeDrawImage", "afterDrawImage", "ignoreElements"]; var ImageExporter = /*#__PURE__*/function () { function ImageExporter(options) { _classCallCheck(this, ImageExporter); this.options = options; } /** * return a HTMLCanvasElement which you can call `toDataURL` later * * @example * const canvas = await exporter.toCanvas(); * canvas.toDataURL(); // data: */ return _createClass(ImageExporter, [{ key: "toCanvas", value: (function () { var _toCanvas = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime().mark(function _callee() { var options, _this$options$canvas$, width, height, doc, dpr, _options$clippingRegi, clippingRegion, beforeDrawImage, afterDrawImage, _ignoreElements, rest, dataURL, image, sx, sy, sWidth, sHeight, canvas, context, sourceImageMultipiler, $dom, _canvas, _image, _args = arguments; return _regeneratorRuntime().wrap(function (_context) { while (1) switch (_context.prev = _context.next) { case 0: options = _args. --- dist/index.umd.min.js (bundled) --- /*! * @antv/g-image-exporter * @description A image exporter for G using DOM API * @version 1.0.39-beta.0 * @date 12/12/2025, 2:49:14 PM * @author AntVis * @docs https://g.antv.antgroup.com/ */ !function(A,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports,require("@antv/g-lite")):"function"==typeof define&&define.amd?define(["exports","@antv/g-lite"],e):e(((A="undefined"!=typeof globalThis?globalThis:A||self).G=A.G||{},A.G.ImageExporter={}),A.window.G)}(this,function(A,e){"use strict";function t(A,e){this.v=A,this.k=e}function r(A,e,t,B){var n=Object.defineProperty;try{n({},"",{})}catch(A){n=0}r=function(A,e,t,B){if(e)n?n(A,e,{value:t,enumerable:!B,configurable:!B,writable:!B}):A[e]=t;else{var s=function(e,t){r(A,e,function(A){return this._invoke(e,t,A)})};s("next",0),s("throw",1),s("return",2)}},r(A,e,t,B)}function B(){ /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */ var A,e,t="function"==typeof Symbol?Symbol:{},n=t.iterator||"@@iterator",s=t.toStringTag||"@@toStringTag";function o(t,B,n,s){var o=Object.create((B&&B.prototype instanceof a?B:a).prototype);return r(o,"_invoke",function(t,r,B){var n,s,o,a=0,c=B||[],Q=!1,g={p:0,n:0,v:A,a:w,f:w.bind(A,4),d:function(e,t){return n=e,s=0,o=A,g.n=t,i}};function w(t,r){for(s=t,o=r,e=0;!Q&&a&&!B&&c.length>e;e++){var B,n=c[e],w=g.p,u=n[2];t>3?(B=u===r)&&(o=n[(s=n[4])?5:(s=3,3)],n[4]=n[5]=A):w>=n[0]&&((B=2>t&&n[1]>w)?(s=0,g.v=r,g.n=n[1]):u>w&&(B=3>t||n[0]>r||r>u)&&(n[4]=t,n[5]=r,g.n=u,s=0))}if(B||t>1)return i;throw Q=!0,r}return function(B,c,u){if(a>1)throw TypeError("Generator is already running");for(Q&&1===c&&w(c,u),s=c,o=u;(e=2>s?A:o)||!Q;){n||(s?3>s?(s>1&&(g.n=-1),w(s,o)):g.n=o:g.v=o);try{if(a=2,n){if(s||(B="next"),e=n[B]){if(!(e=e.call(n,o)))throw TypeError("iterator result is not an object");if(!e.done)return e;o=e.value,2>s&&(s=0)}else 1===s&&(e=n.return)&&e.call(n),2>s&&(o=TypeError(
