diff --git a/CHANGES.md b/CHANGES.md
index d21b755a..16718f67 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -4,9 +4,11 @@
- Enhancement: Return a Promise for Editor's `setCustomHandlers`,
`loadFromString`, `loadFromDataURI` so known when ready and set
+- Refactoring: Destructuring, templates, label Unicode code point
- Docs (Refactoring): Formally specify `Promise` resolve type;
add `typedef` for dialog result object; add an
`ArbitraryCallbackResult` type
+- npm: Rename `build-doc` to `build-docs`; add `open-docs` script
## 4.3.0
diff --git a/dist/extensions/ext-php_savefile.js b/dist/extensions/ext-php_savefile.js
index c3aad001..89052fb0 100644
--- a/dist/extensions/ext-php_savefile.js
+++ b/dist/extensions/ext-php_savefile.js
@@ -8,7 +8,8 @@ var svgEditorExtension_php_savefile = (function () {
init: function init(_ref) {
var $ = _ref.$;
var svgEditor = this;
- var svgCanvas = svgEditor.canvas;
+ var extPath = svgEditor.curConfig.extPath,
+ svgCanvas = svgEditor.canvas;
/**
* Get file name out of SVGEdit document title.
* @returns {string}
@@ -19,7 +20,7 @@ var svgEditorExtension_php_savefile = (function () {
return title.trim();
}
- var saveSvgAction = svgEditor.curConfig.extPath + 'savefile.php';
+ var saveSvgAction = extPath + 'savefile.php';
svgEditor.setCustomHandlers({
save: function save(win, data) {
var svg = '\n' + data,
diff --git a/dist/extensions/ext-server_moinsave.js b/dist/extensions/ext-server_moinsave.js
index f9ea2407..821c4b73 100644
--- a/dist/extensions/ext-server_moinsave.js
+++ b/dist/extensions/ext-server_moinsave.js
@@ -4893,14 +4893,15 @@ var svgEditorExtension_server_moinsave = (function () {
var _save = _asyncToGenerator(
/*#__PURE__*/
regeneratorRuntime.mark(function _callee(win, data) {
- var svg, qstr, name, svgData, c, datauri, pngData;
+ var svg, qstr, _qstr$substr$split, _qstr$substr$split2, name, svgData, c, datauri, pngData;
+
return regeneratorRuntime.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
svg = '\n' + data;
qstr = $.param.querystring();
- name = qstr.substr(9).split('/+get/')[1];
+ _qstr$substr$split = qstr.substr(9).split('/+get/'), _qstr$substr$split2 = _slicedToArray(_qstr$substr$split, 2), name = _qstr$substr$split2[1];
svgData = encode64(svg);
if (!$('#export_canvas').length) {
@@ -4926,7 +4927,7 @@ var svgEditorExtension_server_moinsave = (function () {
method: 'post',
action: saveSvgAction + '/' + name,
target: 'output_frame'
- }).append('').append('').append('').append('').appendTo('body').submit().remove();
+ }).append("\n \n \n \n \n ")).appendTo('body').submit().remove();
$.alert(strings.saved);
top.window.location = '/' + name;
diff --git a/dist/extensions/ext-server_opensave.js b/dist/extensions/ext-server_opensave.js
index 33486c78..bafb738b 100644
--- a/dist/extensions/ext-server_opensave.js
+++ b/dist/extensions/ext-server_opensave.js
@@ -4868,7 +4868,7 @@ var svgEditorExtension_server_opensave = (function () {
var _init = _asyncToGenerator(
/*#__PURE__*/
regeneratorRuntime.mark(function _callee5(_ref) {
- var $, decode64, encode64, importLocale, strings, svgEditor, svgCanvas, getFileNameFromTitle, xhtmlEscape, clientDownloadSupport, saveSvgAction, saveImgAction, cancelled, openSvgAction, importSvgAction, importImgAction, openSvgForm, importSvgForm, importImgForm, rebuildInput;
+ var $, decode64, encode64, importLocale, strings, svgEditor, extPath, svgCanvas, getFileNameFromTitle, xhtmlEscape, clientDownloadSupport, saveSvgAction, saveImgAction, cancelled, openSvgAction, importSvgAction, importImgAction, openSvgForm, importSvgForm, importImgForm, rebuildInput;
return regeneratorRuntime.wrap(function _callee5$(_context5) {
while (1) {
switch (_context5.prev = _context5.next) {
@@ -5006,18 +5006,18 @@ var svgEditorExtension_server_opensave = (function () {
case 7:
strings = _context5.sent;
svgEditor = this;
- svgCanvas = svgEditor.canvas;
+ extPath = svgEditor.curConfig, svgCanvas = svgEditor.canvas;
/**
*
* @returns {string}
*/
- saveSvgAction = svgEditor.curConfig.extPath + 'filesave.php', saveImgAction = svgEditor.curConfig.extPath + 'filesave.php'; // Create upload target (hidden iframe)
+ saveSvgAction = extPath + 'filesave.php', saveImgAction = extPath + 'filesave.php'; // Create upload target (hidden iframe)
cancelled = false; // Hiding by size instead of display to avoid FF console errors
// with `getBBox` in browser.js `supportsPathBBox_`)
- $("