This version introduces a number of breaking changes, a number being required to move to a more Promise-based API and one where problems are detected early at run-time by throwing rather than logging.
Some API changes also involve switching to class methods over instance methods, though these were private/internally used APIs.
Please see the CHANGES file (or the Git history or Github tracker) for fixes and enhancements.
- The cookie to track storage preferences is now namespaced as "svgeditstore" instead of just "store".
babel-node) to allow Node files for HTML building and JSDoc type checking to be expressed as ESM.
Breaking changes (public API)
loadSvgStringnow returns a
Promiserather than accepting a callback.
- Callbacks to
editor.readyare treated as Promises, only resolving after all resolve. May require no changes unless for timing.
editor.runCallbacksnow returns a
Promisewhich resolves upon all callbacks resolving.
svgCanvas.rasterExportfourth (callback) argument, collapsing fifth (options) to fourth
svgCanvas.exportPDFthird (callback) argument
svgCanvas.embedImagesecond (callback) argument
getHelpXMLa class instead of instance method of
Throwing bad arguments instead of mere logging
addnow throws instead of giving a console error only upon detecting a bad menuitem or preexisting context menu
addExtensionnow throws upon a repeated attempt to add an already-added extension
Breaking changes (internal API)
select) to avoid a callback argument in favor of returning a Promise
updateGripCursormoved to be class method of Selector rather than instance method
subpathIsClosedmoved to be class method of
Pathrather than instance method