@threedddplus/logoeditor 0.0.186 → 0.0.187

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.
@@ -1851,6 +1851,9 @@ var toastMessages =
1851
1851
  },
1852
1852
  noChangesMade: function noChangesMade() {
1853
1853
  return CustomToast('warning', 'No Changes Made To Save!!!', 12);
1854
+ },
1855
+ fontsNotAvailable: function fontsNotAvailable() {
1856
+ return CustomToast('warning', 'Fonts not availble in-order to view the proper text', 13);
1854
1857
  }
1855
1858
  };
1856
1859
 
@@ -3837,6 +3840,7 @@ var converterSlice = function converterSlice(set, get) {
3837
3840
  var _canvasToLoad, _use3dddPlus$getState;
3838
3841
  var svgData = getDesignConceptSVGData(svgstr);
3839
3842
  var loadedObject = fabric.util.groupSVGElements(objects, options);
3843
+ console.log("SVG DATA--->", svgData);
3840
3844
  svgData.forEach(function (resItem) {
3841
3845
  var path;
3842
3846
  var node;
@@ -3864,8 +3868,6 @@ var converterSlice = function converterSlice(set, get) {
3864
3868
  node.setCoords();
3865
3869
  }
3866
3870
  });
3867
- // loadedObject.scaleToHeight(300);
3868
- // loadedObject.scaleToWidth(300);
3869
3871
  var canvas = (_canvasToLoad = canvasToLoad) != null ? _canvasToLoad : use3dddPlus.getState().popupCanv;
3870
3872
  var canvasWidth = canvas.width;
3871
3873
  var canvasHeight = canvas.height;
@@ -4088,21 +4090,55 @@ var converterSlice = function converterSlice(set, get) {
4088
4090
  }
4089
4091
  });
4090
4092
  };
4093
+ // IF REQURIED RE-USE IN FUTURE
4094
+ /* const checkFontAvailability = (fontFamily) => {
4095
+ const testElement = document.createElement('div');
4096
+ testElement.style.fontFamily = fontFamily;
4097
+ testElement.style.position = 'absolute';
4098
+ testElement.style.left = '-9999px';
4099
+ testElement.textContent = 'Sample text';
4100
+ document.body.appendChild(testElement);
4101
+
4102
+ const computedFont = window.getComputedStyle(testElement).fontFamily;
4103
+ document.body.removeChild(testElement);
4104
+
4105
+ return computedFont.includes(fontFamily);
4106
+ };*/
4091
4107
  var getDesignConceptSVGData = function getDesignConceptSVGData(svgData) {
4092
4108
  var parser = new DOMParser();
4093
4109
  var xmlDoc = parser.parseFromString(svgData, 'image/svg+xml');
4094
4110
  var textElements = xmlDoc.querySelectorAll('textPath');
4095
4111
  var href = [];
4112
+ // const availableFonts = [];
4113
+ // const paths = xmlDoc.querySelectorAll('text');
4114
+ /*paths.forEach((path) => {
4115
+ const fontFamily = path.style.fontFamily;
4116
+ console.log('fontFamily:', fontFamily);
4117
+ if (fontFamily) {
4118
+ const isFontAvailable = checkFontAvailability(fontFamily);
4119
+ availableFonts.push({
4120
+ font:"${fontFamily}"
4121
+ })
4122
+ console.log(`Is the font "${fontFamily}" loaded?`, isFontAvailable);
4123
+ if(!isFontAvailable)use3dddPlus.getState().toastMessages.fontsNotAvailable();
4124
+ }else{
4125
+ use3dddPlus.getState().toastMessages.fontsNotAvailable();
4126
+ }
4127
+ });*/
4096
4128
  textElements.forEach(function (textElement) {
4097
- var _textElement$getAttri, _textElement$parentNo;
4129
+ var _textElement$getAttri;
4098
4130
  var hrefValue = (_textElement$getAttri = textElement == null ? void 0 : textElement.getAttribute('xlink:href')) != null ? _textElement$getAttri : textElement == null ? void 0 : textElement.getAttribute('href');
4099
- if (hrefValue) href.push({
4100
- path: hrefValue.replace('#', ''),
4101
- //@ts-ignore
4102
- element: textElement == null ? void 0 : (_textElement$parentNo = textElement.parentNode) == null ? void 0 : _textElement$parentNo.id,
4103
- node: textElement
4104
- });
4131
+ if (hrefValue) {
4132
+ var _textElement$parentNo;
4133
+ href.push({
4134
+ path: hrefValue.replace('#', ''),
4135
+ //@ts-ignore
4136
+ element: textElement == null ? void 0 : (_textElement$parentNo = textElement.parentNode) == null ? void 0 : _textElement$parentNo.id,
4137
+ node: textElement
4138
+ });
4139
+ }
4105
4140
  });
4141
+ // return { href, availableFonts };
4106
4142
  return href;
4107
4143
  };
4108
4144
  return {
@@ -14502,20 +14538,20 @@ var SaveDesign = function SaveDesign(_ref) {
14502
14538
  } else return true;
14503
14539
  };
14504
14540
  var onSaveHandler = /*#__PURE__*/function () {
14505
- var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
14506
- var canvasGetobject, pathTextsData, selectAllCanvasObjects, canvasData, pathTextsKeys, i, pathData, o, obj, dataCh, S3UrlPath, canvasSvg, raw, horizontalLine, verticalLine;
14507
- return _regeneratorRuntime().wrap(function _callee2$(_context2) {
14508
- while (1) switch (_context2.prev = _context2.next) {
14541
+ var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
14542
+ var canvasGetobject, pathTextsData, canvasData, pathTextsKeys, i, pathData, o, obj, dataCh, S3UrlPath, canvasSvg, raw, horizontalLine, verticalLine;
14543
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
14544
+ while (1) switch (_context.prev = _context.next) {
14509
14545
  case 0:
14510
14546
  if (isSaving) {
14511
- _context2.next = 31;
14547
+ _context.next = 31;
14512
14548
  break;
14513
14549
  }
14514
14550
  if (checkValidations()) {
14515
- _context2.next = 3;
14551
+ _context.next = 3;
14516
14552
  break;
14517
14553
  }
14518
- return _context2.abrupt("return");
14554
+ return _context.abrupt("return");
14519
14555
  case 3:
14520
14556
  setIsSaving(true);
14521
14557
  canvas.backgroundColor = null;
@@ -14557,66 +14593,54 @@ var SaveDesign = function SaveDesign(_ref) {
14557
14593
  };
14558
14594
  }
14559
14595
  });
14560
- selectAllCanvasObjects = function selectAllCanvasObjects(padding) {
14561
- if (padding === void 0) {
14562
- padding = 20;
14563
- }
14564
- //@ts-ignore
14565
- return new Promise(function (resolve, reject) {
14566
- var objs = canvas.getObjects().map(function (obj) {
14567
- return obj.set('active', true);
14568
- });
14569
- var group = new fabric.ActiveSelection(objs, {
14570
- canvas: canvas,
14571
- originX: 'center',
14572
- originY: 'center'
14573
- });
14574
- canvas.setActiveObject(group);
14575
- canvas.requestRenderAll();
14576
- group.clone(function (clonedGroup) {
14577
- var boundingRect = clonedGroup.getBoundingRect();
14578
- var paddedWidth = boundingRect.width + 2 * padding;
14579
- var paddedHeight = boundingRect.height + 2 * padding;
14580
- tempCanvas.setWidth(paddedWidth);
14581
- tempCanvas.setHeight(paddedHeight);
14582
- clonedGroup.left = padding + boundingRect.left;
14583
- clonedGroup.top = padding + boundingRect.top;
14584
- clonedGroup.setCoords();
14585
- tempCanvas.add(clonedGroup);
14586
- clonedGroup.center();
14587
- clonedGroup.setCoords();
14588
- tempCanvas.requestRenderAll();
14589
- var dataURL = tempCanvas.toDataURL();
14590
- tempCanvas.clear();
14591
- tempCanvas.dispose();
14592
- clonedGroup = null;
14593
- canvas.discardActiveObject();
14594
- resolve(dataURL);
14595
- });
14596
- });
14597
- };
14598
- _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
14599
- return _regeneratorRuntime().wrap(function _callee$(_context) {
14600
- while (1) switch (_context.prev = _context.next) {
14601
- case 0:
14602
- _context.prev = 0;
14603
- _context.next = 3;
14604
- return selectAllCanvasObjects();
14605
- case 3:
14606
- dataURL = _context.sent;
14607
- _context.next = 9;
14608
- break;
14609
- case 6:
14610
- _context.prev = 6;
14611
- _context.t0 = _context["catch"](0);
14612
- console.error('Error capturing canvas objects:', _context.t0);
14613
- case 9:
14614
- case "end":
14615
- return _context.stop();
14616
- }
14617
- }, _callee, null, [[0, 6]]);
14618
- }))();
14619
- canvasData = use3dddPlus.getState().applyColorFill(); // looping through the text shape objects & taking out text data to inject in the canvas json data & save
14596
+ /* const selectAllCanvasObjects = (padding: number = 20): Promise<string> => {
14597
+ //@ts-ignore
14598
+ return new Promise((resolve, reject) => {
14599
+ const objs = canvas.getObjects().map(obj => obj.set('active', true));
14600
+ const group = new fabric.ActiveSelection(objs, {
14601
+ canvas: canvas,
14602
+ originX: 'center',
14603
+ originY: 'center'
14604
+ });
14605
+ canvas.setActiveObject(group);
14606
+ canvas.requestRenderAll();
14607
+
14608
+ group.clone((clonedGroup) => {
14609
+ const boundingRect = clonedGroup.getBoundingRect();
14610
+ const paddedWidth = boundingRect.width + 2 * padding;
14611
+ const paddedHeight = boundingRect.height + 2 * padding;
14612
+ tempCanvas.setWidth(paddedWidth);
14613
+ tempCanvas.setHeight(paddedHeight);
14614
+ clonedGroup.left = padding + boundingRect.left;
14615
+ clonedGroup.top = padding + boundingRect.top;
14616
+ clonedGroup.setCoords();
14617
+
14618
+ tempCanvas.add(clonedGroup);
14619
+ clonedGroup.center();
14620
+ clonedGroup.setCoords();
14621
+ tempCanvas.requestRenderAll();
14622
+ const dataURL = tempCanvas.toDataURL();
14623
+
14624
+ tempCanvas.clear();
14625
+ tempCanvas.dispose();
14626
+ clonedGroup = null;
14627
+ canvas.discardActiveObject();
14628
+ resolve(dataURL);
14629
+ });
14630
+ });
14631
+ };
14632
+
14633
+ (async () => {
14634
+ try {
14635
+ dataURL = await selectAllCanvasObjects();
14636
+ } catch (error) {
14637
+ console.error('Error capturing canvas objects:', error);
14638
+ }
14639
+ })();*/
14640
+ canvasData = use3dddPlus.getState().applyColorFill();
14641
+ dataURL = canvas.toDataURL();
14642
+ console.log('CANVASIMAGE--->', dataURL);
14643
+ // looping through the text shape objects & taking out text data to inject in the canvas json data & save
14620
14644
  pathTextsKeys = Object.keys(pathTextsData);
14621
14645
  for (i = 0; i < pathTextsKeys.length; i++) {
14622
14646
  pathData = pathTextsData[pathTextsKeys[i]];
@@ -14628,10 +14652,10 @@ var SaveDesign = function SaveDesign(_ref) {
14628
14652
  }
14629
14653
  }
14630
14654
  dataCh = JSON.stringify(canvasData);
14631
- _context2.next = 17;
14655
+ _context.next = 17;
14632
14656
  return uploadLogoConfig(dataCh, use3dddPlus.getState().customerId);
14633
14657
  case 17:
14634
- S3UrlPath = _context2.sent;
14658
+ S3UrlPath = _context.sent;
14635
14659
  canvasSvg = canvas.toSVG();
14636
14660
  closeModal('', false, '', {});
14637
14661
  raw = JSON.stringify({
@@ -14684,9 +14708,9 @@ var SaveDesign = function SaveDesign(_ref) {
14684
14708
  });
14685
14709
  case 33:
14686
14710
  case "end":
14687
- return _context2.stop();
14711
+ return _context.stop();
14688
14712
  }
14689
- }, _callee2);
14713
+ }, _callee);
14690
14714
  }));
14691
14715
  return function onSaveHandler() {
14692
14716
  return _ref2.apply(this, arguments);