svgedit/package.json

169 lines
7.3 KiB
JSON
Raw Normal View History

{
"name": "svgedit",
"version": "5.1.0",
"description": "Powerful SVG-Editor for your browser ",
"main": "dist/index-umd.js",
"module": "dist/index-es.js",
"directories": {
"doc": "docs",
"example": "examples",
"test": "test"
},
"engines": {
"node": ">= 8.5.0"
},
"scripts": {
"prepublishOnly": "npm run test-prep",
"build-by-config": "rollup -c rollup-config.config.js",
"open-es-allext": "open-cli http://localhost:8000/editor/svg-editor-es.html?extensions=ext-arrows.js,ext-closepath.js,ext-foreignobject.js,ext-helloworld.js,ext-mathjax.js,ext-php_savefile.js,ext-server_moinsave.js,ext-server_opensave.js,ext-webappfind.js,ext-xdomain-messaging.js",
"build-docs": "rm -rf docs/jsdoc/*;jsdoc --pedantic -c docs/jsdoc-config.js editor",
"open-docs": "open-cli http://localhost:8000/docs/jsdoc/ && npm start",
- Breaking change: `loadSvgString` now returns a `Promise` rather than accepting a callback - Breaking change: Treat callbacks to `editor.ready` as Promises, only resolving after all resolve - Breaking change: Make `editor.runCallbacks` return a `Promise` which resolves upon all callbacks resolving - Breaking change: Require `npx` (used with `babel-node`) to allow Node files for HTML building and JSDoc type checking to be expressed as ESM. - Breaking change: `addExtension` now throws upon a repeated attempt to add an already-added extension - Breaking change (storage preference cookies): Namespace the cookie as "svgeditstore" instead of just "store" - Breaking change (API): Remove `svgCanvas.rasterExport` fourth (callback) argument, collapsing fifth (options) to fourth - Breaking change (API): Remove `svgCanvas.exportPDF` third (callback) argument - Breaking change (API): `editor/contextmenu.js` `add` now throws instead of giving a console error only upon detecting a bad menuitem or preexisting context menu - Breaking change (API): Remove `svgCanvas.embedImage` second (callback) argument - Breaking change (API): Make `getHelpXML` a class instead of instance method of `RGBColor` - Breaking change (internal API): Refactor `dbox` (and `alert`/`confirm`/`process`/`prompt`/`select`) to avoid a callback argument in favor of return a Promise - Fix: Avoid running in extension `langReady` multiple times or serially - Enhancement (API): Add svgCanvas.runExtension to run just one extension and add `nameFilter` callback to `runExtensions` - Enhancement (API): Supply `$` (our wrapped jQuery) to extensions so can use its plugins, e.g., dbox with its `alert` - Enhancement: Use alert dialog in place of `alert` in webappfind - Enhancement: `editor.ready` now returns a Promise resolving when all callbacks have resolved - Enhancement: Allow `noAlert` option as part of second argument to `loadSvgString` (and `loadFromURL` and `loadFromDataURI`) to avoid UI alert (and trigger promise rejection) - Enhancement: Make `dbox` as a separate module for alert, prompt, etc. dialogs - Refactoring: Internal `PaintBox` as class; other misc. tweaks; no bitwise in canvg - Linting (ESLint): Further linting changes (for editor); rename `.eslintrc` -> `.eslintrc.json` per recommendation - Optimization: Recompress images (imageoptim-cli updated) - npm: Update devDeps - npm: Bump to 4.0.0
2018-11-08 06:48:01 +00:00
"build-html": "npx babel-node --plugins @babel/plugin-transform-modules-commonjs build-html.js",
"compress-images": "imageoptim 'chrome-app/*.png' && imageoptim 'editor/extensions/*.png' && imageoptim 'editor/spinbtn/*.png' && imageoptim 'editor/jgraduate/images/*.{png,gif}' && imageoptim 'editor/images/*.png'",
2019-07-15 14:05:19 +00:00
"copy": "cp node_modules/load-stylesheets/dist/index-es.js editor/external/load-stylesheets/index-es.js && cp node_modules/jamilih/dist/jml-es.js editor/external/jamilih/jml-es.js && cp node_modules/query-result/esm/index.js editor/external/query-result/esm/index.js && cp node_modules/qr-manipulation/dist/index-es.js editor/external/qr-manipulation/dist/index-es.js && cp node_modules/stackblur-canvas/dist/stackblur-es.js editor/external/stackblur-canvas/dist/stackblur-es.js && cp node_modules/regenerator-runtime/runtime.js editor/external/regenerator-runtime/runtime.js && cp node_modules/core-js-bundle/minified.js editor/external/core-js-bundle/minified.js && cp node_modules/core-js-bundle/minified.js.map editor/external/core-js-bundle/minified.js.map",
"remark": "remark -q -f .",
"eslint-fix": "eslint --fix --ext js,md,html .",
"eslint": "eslint --ext js,md,html .",
"rollup": "rollup -c",
"start-embedded": "echo \"Open file to http://localhost:8000/editor/embedapi.html\" && static -p 8000 | static -p 8001 -H '{\"Access-Control-Allow-Origin\": \"*\"}'",
"start": "echo \"Open file, e.g., to http://localhost:8000/editor/svg-editor-es.html\" && static -p 8000",
"cypress:open": "cypress open",
"cypress:run": "cypress run",
"open-report": "open http://localhost:8000/coverage/",
"start-open-report": "run-p start open-report",
2019-11-24 09:14:53 +00:00
"instrument:replace-html": "frs-replace \"../svgedit-config-es.js\" \"svgedit-config-es.js\" -i instrumented/svg-editor-es.html -o instrumented/svg-editor-es.html",
"instrument:replace-js": "frs-replace \"editor/svg-editor.js\" \"svg-editor.js\" -i svgedit-config-es.js -o instrumented/svgedit-config-es.js",
"instrument:copy-excluded": "node cypress/support/copy.js",
"copy-instrumented": "copyfiles -e \"**/*.js\" -u 1 \"editor/**/*\" instrumented && npm run instrument:replace-html && npm run instrument:replace-js && npm run instrument:copy-excluded",
"instrument": "rm -Rf instrumented && npx nyc instrument editor instrumented && npm run copy-instrumented && npm run coverage-badge",
"coverage-badge": "node cypress/support/build-coverage-badge.js",
"open-cov": "npm-run-all instrument --parallel --race start cypress:open",
"open": "run-p start cypress:open",
"report": "npx nyc report",
"report-summary": "npx nyc report --reporter=text-summary",
"test-cov": "npm-run-all instrument --parallel --race start cypress:run ; npm run report-summary",
"test-cov-open": "npm-run-all instrument --parallel --race start cypress:run",
"test-no-build": "npm run eslint && npm run build-html && npm run build-by-config && npm test",
"test-prep": "npm run eslint && npm run build-html && npm run rollup && npm run build-by-config",
"test": "run-p start cypress:run"
},
"nyc": {
"exclude": [
"editor/external/**",
"editor/jquery.min.js",
"editor/jquery-ui/**",
"editor/jquerybbq/**",
"editor/js-hotkeys/**",
"editor/jspdf/jspdf.min.js",
"editor/jspdf/underscore-min.js",
"editor/spinbtn/**"
],
"reporter": [
"json-summary",
"text",
"html"
]
},
"repository": {
"type": "git",
"url": "git+https://github.com/SVG-Edit/svgedit.git"
},
"keywords": [
"svg-editor",
"javascript",
"svg-edit",
"svg"
],
"author": "Narendra Sisodiya",
"contributors": [
"Pavol Rusnak",
"Jeff Schiller",
"Vidar Hokstad",
"Alexis Deveria",
2018-05-29 08:45:45 +00:00
"Brett Zamir",
"Fabien Jacq"
],
"license": "MIT",
"bugs": {
"url": "https://github.com/SVG-Edit/svgedit/issues"
},
"homepage": "https://github.com/SVG-Edit/svgedit#readme",
"browserslist": [
"cover 100%",
"last 3 Chrome versions",
"last 3 Firefox versions",
"last 3 Edge versions",
"last 3 Safari versions",
"last 3 ios_saf versions",
"last 3 Android versions",
"last 3 Opera versions",
"last 3 IE versions",
"last 3 op_mini versions",
"last 3 bb versions",
"last 3 op_mob versions",
"last 3 and_chr versions",
"last 3 and_ff versions",
"last 3 ie_mob versions",
"last 3 and_uc versions",
"last 3 Samsung versions"
],
- Breaking change: Rename config file to `svgedit-config-iife.js` (or for the module version, `svgedit-config-es.js`); also expect one directory higher; incorporates #207 (@iuyiuy) - Breaking change: Separate `extIconsPath` from `extPath` (not copying over icons) - Breaking change: Don't reference `custom.css` in HTML; can instead be referenced in JavaScript through the config file (provided in `svgedit-config-sample-iife.js`/`svgedit-config-sample-es.js` as `svgedit-custom.css` for better namespacing); incorporates #207 (@iuyiuy) - Breaking change: Remove minified jgraduate/spinbtn files (minified within Rollup routine) - Fix: Zoom when scrolled; incorporates #169 (@AndrolGenhald), adapting for conventions; also allow avoidance when shift key pressed - Fix: Update Atom feed reference in HTML - Fixes related to recent commits: Some path and method name fixes needed, function order, missing methods, variable scope declaration, no need for DOMContentLoaded listeners in modules, switch back to non-default export, avoid trimming nullish, deal with mock tests, fix `math.matrixMultiply`, use jquery-svg where needed for array/SVG attributes; add babel-polyfill and defer script to imagelib; other misc. fixes - Enhancement: Move config-sample.js out of `editor` directory - Enhancement: For `callback`-style extensions, also provide config object; add following to that object: buildCanvgCallback, canvg, decode64, encode64, executeAfterLoads, getTypeMap, isChrome, ieIE, NS, text2xml - Enhancement: Complete ES6 modules work (extensions, locales, tests), along with Babel; make Node build routine for converting modular source to non-modular, use `loadStylesheets` for modular stylehsheet defining (but parallel loading); - Enhancement: Add `stylesheets` config for modular but parallel stylesheet loading with `@default` option for simple inclusion/exclusion of defaults (if not going with default). - Refactoring: Clean up `svg-editor.html`: consistent indents; avoid extra lbs, avoid long lines - Refactoring: Avoid embedded API adding inline JavaScript listener - Refactoring: Move layers and context code to `draw.js` - Refactoring: Move `pathActions` from `svgcanvas.js` (though preserve aliases to these methods on `canvas`) and `convertPath` from `svgutils.js` to `path.js` - Refactoring: Move `getStrokedBBox` from `svgcanvas.js` (while keeping an alias) to `svgutils.js` (as `getStrokedBBoxDefaultVisible` to avoid conflict with existing) - Docs: Remove "dependencies" comments in code except where summarizing role of jQuery or a non-obvious dependency - Refactoring/Linting: Enfore `no-extra-semi` and `quote-props` rules - Refactoring: Further avoidance of quotes on properties (as possible) - Refactoring: Use `class` in place of functions where intended as classes - Refactoring: Consistency and granularity in extensions imports - Testing: Update QUnit to 2.6.1 (node_modules) and Sinon to 5.0.8 (and add sinon-test at 2.1.3) and enforce eslint-plugin-qunit linting rules; update custom extensions - Testing: Add node-static for automating (and accessing out-of-directory contents) - Testing: Avoid HTML attributes for styling - Testing: Add npm `test` script - Testing: Comment out unused jQuery SVG test - Testing: Add test1 and svgutils_performance_test to all tests page - Testing: Due apparently to Path having not been a formal class, the test was calling it without `new`; refactored now with sufficient mock data to take into account it is a class - npm: Update devDeps - npm: Add html modules and config build to test script
2018-05-22 10:03:16 +00:00
"dependencies": {},
"devDependencies": {
"@babel/core": "^7.7.4",
"@babel/node": "^7.7.4",
"@babel/plugin-transform-modules-commonjs": "^7.7.4",
"@babel/plugin-transform-named-capturing-groups-regex": "^7.7.4",
"@babel/preset-env": "^7.7.4",
"@cypress/code-coverage": "^1.10.2",
"@cypress/fiddle": "^1.4.0",
"@mysticatea/eslint-plugin": "^13.0.0",
"axe-core": "^3.4.0",
"babel-plugin-transform-object-rest-spread": "^7.0.0-beta.3",
"coffeescript": "^2.4.1",
"convert-svg-to-png": "^0.5.0",
"copyfiles": "^2.1.1",
"core-js-bundle": "^3.4.5",
"cypress": "^3.7.0",
"cypress-axe": "^0.5.1",
"eslint": "6.7.2",
2019-12-02 03:18:01 +00:00
"eslint-config-ash-nazg": "13.1.0",
2019-08-30 06:12:15 +00:00
"eslint-config-standard": "14.1.0",
"eslint-plugin-array-func": "^3.1.3",
"eslint-plugin-compat": "^3.3.0",
"eslint-plugin-cypress": "^2.7.0",
"eslint-plugin-eslint-comments": "^3.1.2",
"eslint-plugin-html": "^6.0.0",
"eslint-plugin-import": "2.18.2",
2019-12-02 03:18:01 +00:00
"eslint-plugin-jsdoc": "^18.4.0",
"eslint-plugin-markdown": "^1.0.1",
"eslint-plugin-no-use-extend-native": "^0.4.1",
2019-09-05 03:51:27 +00:00
"eslint-plugin-node": "10.0.0",
"eslint-plugin-promise": "4.2.1",
"eslint-plugin-sonarjs": "^0.5.0",
"eslint-plugin-standard": "4.0.1",
"eslint-plugin-unicorn": "^14.0.1",
"frs-replace": "^2.0.1",
"gh-badges": "^2.2.1",
"imageoptim-cli": "^3.0.2",
"jamilih": "^0.46.0",
2019-07-15 14:00:27 +00:00
"jsdoc": "^3.6.3",
2019-10-20 18:51:00 +00:00
"load-stylesheets": "^0.9.0",
2018-09-25 03:25:19 +00:00
"node-static": "^0.7.11",
"npm-run-all": "^4.1.5",
"nyc": "^14.1.1",
"open-cli": "^5.0.0",
"promise-fs": "^2.1.1",
"qr-manipulation": "https://github.com/brettz9/qr-manipulation",
"query-result": "https://github.com/WebReflection/query-result",
"regenerator-runtime": "^0.13.3",
"remark-cli": "^7.0.1",
"remark-lint-ordered-list-marker-value": "^1.0.4",
"rollup": "1.27.7",
"rollup-plugin-babel": "^4.3.3",
- Breaking change: Rename config file to `svgedit-config-iife.js` (or for the module version, `svgedit-config-es.js`); also expect one directory higher; incorporates #207 (@iuyiuy) - Breaking change: Separate `extIconsPath` from `extPath` (not copying over icons) - Breaking change: Don't reference `custom.css` in HTML; can instead be referenced in JavaScript through the config file (provided in `svgedit-config-sample-iife.js`/`svgedit-config-sample-es.js` as `svgedit-custom.css` for better namespacing); incorporates #207 (@iuyiuy) - Breaking change: Remove minified jgraduate/spinbtn files (minified within Rollup routine) - Fix: Zoom when scrolled; incorporates #169 (@AndrolGenhald), adapting for conventions; also allow avoidance when shift key pressed - Fix: Update Atom feed reference in HTML - Fixes related to recent commits: Some path and method name fixes needed, function order, missing methods, variable scope declaration, no need for DOMContentLoaded listeners in modules, switch back to non-default export, avoid trimming nullish, deal with mock tests, fix `math.matrixMultiply`, use jquery-svg where needed for array/SVG attributes; add babel-polyfill and defer script to imagelib; other misc. fixes - Enhancement: Move config-sample.js out of `editor` directory - Enhancement: For `callback`-style extensions, also provide config object; add following to that object: buildCanvgCallback, canvg, decode64, encode64, executeAfterLoads, getTypeMap, isChrome, ieIE, NS, text2xml - Enhancement: Complete ES6 modules work (extensions, locales, tests), along with Babel; make Node build routine for converting modular source to non-modular, use `loadStylesheets` for modular stylehsheet defining (but parallel loading); - Enhancement: Add `stylesheets` config for modular but parallel stylesheet loading with `@default` option for simple inclusion/exclusion of defaults (if not going with default). - Refactoring: Clean up `svg-editor.html`: consistent indents; avoid extra lbs, avoid long lines - Refactoring: Avoid embedded API adding inline JavaScript listener - Refactoring: Move layers and context code to `draw.js` - Refactoring: Move `pathActions` from `svgcanvas.js` (though preserve aliases to these methods on `canvas`) and `convertPath` from `svgutils.js` to `path.js` - Refactoring: Move `getStrokedBBox` from `svgcanvas.js` (while keeping an alias) to `svgutils.js` (as `getStrokedBBoxDefaultVisible` to avoid conflict with existing) - Docs: Remove "dependencies" comments in code except where summarizing role of jQuery or a non-obvious dependency - Refactoring/Linting: Enfore `no-extra-semi` and `quote-props` rules - Refactoring: Further avoidance of quotes on properties (as possible) - Refactoring: Use `class` in place of functions where intended as classes - Refactoring: Consistency and granularity in extensions imports - Testing: Update QUnit to 2.6.1 (node_modules) and Sinon to 5.0.8 (and add sinon-test at 2.1.3) and enforce eslint-plugin-qunit linting rules; update custom extensions - Testing: Add node-static for automating (and accessing out-of-directory contents) - Testing: Avoid HTML attributes for styling - Testing: Add npm `test` script - Testing: Comment out unused jQuery SVG test - Testing: Add test1 and svgutils_performance_test to all tests page - Testing: Due apparently to Path having not been a formal class, the test was calling it without `new`; refactored now with sufficient mock data to take into account it is a class - npm: Update devDeps - npm: Add html modules and config build to test script
2018-05-22 10:03:16 +00:00
"rollup-plugin-re": "^1.0.7",
"rollup-plugin-terser": "^5.1.2",
"stackblur-canvas": "^2.2.0",
"typescript": "^3.7.2"
}
}