labellife-design-tool 2.1.8 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.js +38 -7
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/model/store.js +30 -2
- package/dist/cjs/model/store.js.map +1 -1
- package/dist/cjs/toolbar/toolbar.js +8 -5
- package/dist/cjs/toolbar/toolbar.js.map +1 -1
- package/dist/esm/index.js +38 -7
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/model/store.js +30 -2
- package/dist/esm/model/store.js.map +1 -1
- package/dist/esm/toolbar/toolbar.js +8 -5
- package/dist/esm/toolbar/toolbar.js.map +1 -1
- package/package.json +1 -1
package/dist/cjs/model/store.js
CHANGED
|
@@ -1370,6 +1370,31 @@ var _excluded = ["mimeType", "quality", "dpi", "dpiMetadata"],
|
|
|
1370
1370
|
_excluded2 = ["mimeType", "quality"],
|
|
1371
1371
|
_excluded3 = ["fileName"],
|
|
1372
1372
|
_excluded4 = ["fileName"];
|
|
1373
|
+
|
|
1374
|
+
// Detect embedded base64 data URLs (data:...;base64,...).
|
|
1375
|
+
// These bloat exported JSON significantly (a single image can be 1MB+).
|
|
1376
|
+
// Regular http/https/blob URLs are preserved.
|
|
1377
|
+
var isBase64DataUrl = function isBase64DataUrl(v) {
|
|
1378
|
+
return typeof v === 'string' && v.startsWith('data:') && v.includes(';base64,');
|
|
1379
|
+
};
|
|
1380
|
+
var _stripBase64FromElement = function stripBase64FromElement(el) {
|
|
1381
|
+
var out = _objectSpread2({}, el);
|
|
1382
|
+
if (isBase64DataUrl(out.src)) out.src = '';
|
|
1383
|
+
if (isBase64DataUrl(out.clipSrc)) out.clipSrc = '';
|
|
1384
|
+
if (Array.isArray(out.children)) {
|
|
1385
|
+
out.children = out.children.map(_stripBase64FromElement);
|
|
1386
|
+
}
|
|
1387
|
+
return out;
|
|
1388
|
+
};
|
|
1389
|
+
var stripBase64FromExport = function stripBase64FromExport(data) {
|
|
1390
|
+
return _objectSpread2(_objectSpread2({}, data), {}, {
|
|
1391
|
+
pages: (data.pages || []).map(function (page) {
|
|
1392
|
+
return _objectSpread2(_objectSpread2({}, page), {}, {
|
|
1393
|
+
children: (page.children || []).map(_stripBase64FromElement)
|
|
1394
|
+
});
|
|
1395
|
+
})
|
|
1396
|
+
});
|
|
1397
|
+
};
|
|
1373
1398
|
var Font = mobxStateTree.types.model('Font', {
|
|
1374
1399
|
fontFamily: mobxStateTree.types.string,
|
|
1375
1400
|
url: mobxStateTree.types.optional(mobxStateTree.types.string, ''),
|
|
@@ -2074,8 +2099,11 @@ var Store = mobxStateTree.types.model('Store', {
|
|
|
2074
2099
|
saveAsJSON: function saveAsJSON() {
|
|
2075
2100
|
var _ref0 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
|
2076
2101
|
_ref0$fileName = _ref0.fileName,
|
|
2077
|
-
fileName = _ref0$fileName === void 0 ? 'design.json' : _ref0$fileName
|
|
2078
|
-
|
|
2102
|
+
fileName = _ref0$fileName === void 0 ? 'design.json' : _ref0$fileName,
|
|
2103
|
+
_ref0$stripBase = _ref0.stripBase64,
|
|
2104
|
+
stripBase64 = _ref0$stripBase === void 0 ? true : _ref0$stripBase;
|
|
2105
|
+
var data = stripBase64 ? stripBase64FromExport(self.toJSON()) : self.toJSON();
|
|
2106
|
+
var json = JSON.stringify(data, null, 2);
|
|
2079
2107
|
var blob = new Blob([json], {
|
|
2080
2108
|
type: 'application/json'
|
|
2081
2109
|
});
|