@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.
@@ -1859,6 +1859,9 @@ var toastMessages =
1859
1859
  },
1860
1860
  noChangesMade: function noChangesMade() {
1861
1861
  return CustomToast('warning', 'No Changes Made To Save!!!', 12);
1862
+ },
1863
+ fontsNotAvailable: function fontsNotAvailable() {
1864
+ return CustomToast('warning', 'Fonts not availble in-order to view the proper text', 13);
1862
1865
  }
1863
1866
  };
1864
1867
 
@@ -3845,6 +3848,7 @@ var converterSlice = function converterSlice(set, get) {
3845
3848
  var _canvasToLoad, _use3dddPlus$getState;
3846
3849
  var svgData = getDesignConceptSVGData(svgstr);
3847
3850
  var loadedObject = fabric.fabric.util.groupSVGElements(objects, options);
3851
+ console.log("SVG DATA--->", svgData);
3848
3852
  svgData.forEach(function (resItem) {
3849
3853
  var path;
3850
3854
  var node;
@@ -3872,8 +3876,6 @@ var converterSlice = function converterSlice(set, get) {
3872
3876
  node.setCoords();
3873
3877
  }
3874
3878
  });
3875
- // loadedObject.scaleToHeight(300);
3876
- // loadedObject.scaleToWidth(300);
3877
3879
  var canvas = (_canvasToLoad = canvasToLoad) != null ? _canvasToLoad : use3dddPlus.getState().popupCanv;
3878
3880
  var canvasWidth = canvas.width;
3879
3881
  var canvasHeight = canvas.height;
@@ -4096,21 +4098,55 @@ var converterSlice = function converterSlice(set, get) {
4096
4098
  }
4097
4099
  });
4098
4100
  };
4101
+ // IF REQURIED RE-USE IN FUTURE
4102
+ /* const checkFontAvailability = (fontFamily) => {
4103
+ const testElement = document.createElement('div');
4104
+ testElement.style.fontFamily = fontFamily;
4105
+ testElement.style.position = 'absolute';
4106
+ testElement.style.left = '-9999px';
4107
+ testElement.textContent = 'Sample text';
4108
+ document.body.appendChild(testElement);
4109
+
4110
+ const computedFont = window.getComputedStyle(testElement).fontFamily;
4111
+ document.body.removeChild(testElement);
4112
+
4113
+ return computedFont.includes(fontFamily);
4114
+ };*/
4099
4115
  var getDesignConceptSVGData = function getDesignConceptSVGData(svgData) {
4100
4116
  var parser = new DOMParser();
4101
4117
  var xmlDoc = parser.parseFromString(svgData, 'image/svg+xml');
4102
4118
  var textElements = xmlDoc.querySelectorAll('textPath');
4103
4119
  var href = [];
4120
+ // const availableFonts = [];
4121
+ // const paths = xmlDoc.querySelectorAll('text');
4122
+ /*paths.forEach((path) => {
4123
+ const fontFamily = path.style.fontFamily;
4124
+ console.log('fontFamily:', fontFamily);
4125
+ if (fontFamily) {
4126
+ const isFontAvailable = checkFontAvailability(fontFamily);
4127
+ availableFonts.push({
4128
+ font:"${fontFamily}"
4129
+ })
4130
+ console.log(`Is the font "${fontFamily}" loaded?`, isFontAvailable);
4131
+ if(!isFontAvailable)use3dddPlus.getState().toastMessages.fontsNotAvailable();
4132
+ }else{
4133
+ use3dddPlus.getState().toastMessages.fontsNotAvailable();
4134
+ }
4135
+ });*/
4104
4136
  textElements.forEach(function (textElement) {
4105
- var _textElement$getAttri, _textElement$parentNo;
4137
+ var _textElement$getAttri;
4106
4138
  var hrefValue = (_textElement$getAttri = textElement == null ? void 0 : textElement.getAttribute('xlink:href')) != null ? _textElement$getAttri : textElement == null ? void 0 : textElement.getAttribute('href');
4107
- if (hrefValue) href.push({
4108
- path: hrefValue.replace('#', ''),
4109
- //@ts-ignore
4110
- element: textElement == null ? void 0 : (_textElement$parentNo = textElement.parentNode) == null ? void 0 : _textElement$parentNo.id,
4111
- node: textElement
4112
- });
4139
+ if (hrefValue) {
4140
+ var _textElement$parentNo;
4141
+ href.push({
4142
+ path: hrefValue.replace('#', ''),
4143
+ //@ts-ignore
4144
+ element: textElement == null ? void 0 : (_textElement$parentNo = textElement.parentNode) == null ? void 0 : _textElement$parentNo.id,
4145
+ node: textElement
4146
+ });
4147
+ }
4113
4148
  });
4149
+ // return { href, availableFonts };
4114
4150
  return href;
4115
4151
  };
4116
4152
  return {
@@ -14510,20 +14546,20 @@ var SaveDesign = function SaveDesign(_ref) {
14510
14546
  } else return true;
14511
14547
  };
14512
14548
  var onSaveHandler = /*#__PURE__*/function () {
14513
- var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2() {
14514
- var canvasGetobject, pathTextsData, selectAllCanvasObjects, canvasData, pathTextsKeys, i, pathData, o, obj, dataCh, S3UrlPath, canvasSvg, raw, horizontalLine, verticalLine;
14515
- return _regeneratorRuntime().wrap(function _callee2$(_context2) {
14516
- while (1) switch (_context2.prev = _context2.next) {
14549
+ var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
14550
+ var canvasGetobject, pathTextsData, canvasData, pathTextsKeys, i, pathData, o, obj, dataCh, S3UrlPath, canvasSvg, raw, horizontalLine, verticalLine;
14551
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
14552
+ while (1) switch (_context.prev = _context.next) {
14517
14553
  case 0:
14518
14554
  if (isSaving) {
14519
- _context2.next = 31;
14555
+ _context.next = 31;
14520
14556
  break;
14521
14557
  }
14522
14558
  if (checkValidations()) {
14523
- _context2.next = 3;
14559
+ _context.next = 3;
14524
14560
  break;
14525
14561
  }
14526
- return _context2.abrupt("return");
14562
+ return _context.abrupt("return");
14527
14563
  case 3:
14528
14564
  setIsSaving(true);
14529
14565
  canvas.backgroundColor = null;
@@ -14565,66 +14601,54 @@ var SaveDesign = function SaveDesign(_ref) {
14565
14601
  };
14566
14602
  }
14567
14603
  });
14568
- selectAllCanvasObjects = function selectAllCanvasObjects(padding) {
14569
- if (padding === void 0) {
14570
- padding = 20;
14571
- }
14572
- //@ts-ignore
14573
- return new Promise(function (resolve, reject) {
14574
- var objs = canvas.getObjects().map(function (obj) {
14575
- return obj.set('active', true);
14576
- });
14577
- var group = new fabric.fabric.ActiveSelection(objs, {
14578
- canvas: canvas,
14579
- originX: 'center',
14580
- originY: 'center'
14581
- });
14582
- canvas.setActiveObject(group);
14583
- canvas.requestRenderAll();
14584
- group.clone(function (clonedGroup) {
14585
- var boundingRect = clonedGroup.getBoundingRect();
14586
- var paddedWidth = boundingRect.width + 2 * padding;
14587
- var paddedHeight = boundingRect.height + 2 * padding;
14588
- tempCanvas.setWidth(paddedWidth);
14589
- tempCanvas.setHeight(paddedHeight);
14590
- clonedGroup.left = padding + boundingRect.left;
14591
- clonedGroup.top = padding + boundingRect.top;
14592
- clonedGroup.setCoords();
14593
- tempCanvas.add(clonedGroup);
14594
- clonedGroup.center();
14595
- clonedGroup.setCoords();
14596
- tempCanvas.requestRenderAll();
14597
- var dataURL = tempCanvas.toDataURL();
14598
- tempCanvas.clear();
14599
- tempCanvas.dispose();
14600
- clonedGroup = null;
14601
- canvas.discardActiveObject();
14602
- resolve(dataURL);
14603
- });
14604
- });
14605
- };
14606
- _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
14607
- return _regeneratorRuntime().wrap(function _callee$(_context) {
14608
- while (1) switch (_context.prev = _context.next) {
14609
- case 0:
14610
- _context.prev = 0;
14611
- _context.next = 3;
14612
- return selectAllCanvasObjects();
14613
- case 3:
14614
- dataURL = _context.sent;
14615
- _context.next = 9;
14616
- break;
14617
- case 6:
14618
- _context.prev = 6;
14619
- _context.t0 = _context["catch"](0);
14620
- console.error('Error capturing canvas objects:', _context.t0);
14621
- case 9:
14622
- case "end":
14623
- return _context.stop();
14624
- }
14625
- }, _callee, null, [[0, 6]]);
14626
- }))();
14627
- canvasData = use3dddPlus.getState().applyColorFill(); // looping through the text shape objects & taking out text data to inject in the canvas json data & save
14604
+ /* const selectAllCanvasObjects = (padding: number = 20): Promise<string> => {
14605
+ //@ts-ignore
14606
+ return new Promise((resolve, reject) => {
14607
+ const objs = canvas.getObjects().map(obj => obj.set('active', true));
14608
+ const group = new fabric.ActiveSelection(objs, {
14609
+ canvas: canvas,
14610
+ originX: 'center',
14611
+ originY: 'center'
14612
+ });
14613
+ canvas.setActiveObject(group);
14614
+ canvas.requestRenderAll();
14615
+
14616
+ group.clone((clonedGroup) => {
14617
+ const boundingRect = clonedGroup.getBoundingRect();
14618
+ const paddedWidth = boundingRect.width + 2 * padding;
14619
+ const paddedHeight = boundingRect.height + 2 * padding;
14620
+ tempCanvas.setWidth(paddedWidth);
14621
+ tempCanvas.setHeight(paddedHeight);
14622
+ clonedGroup.left = padding + boundingRect.left;
14623
+ clonedGroup.top = padding + boundingRect.top;
14624
+ clonedGroup.setCoords();
14625
+
14626
+ tempCanvas.add(clonedGroup);
14627
+ clonedGroup.center();
14628
+ clonedGroup.setCoords();
14629
+ tempCanvas.requestRenderAll();
14630
+ const dataURL = tempCanvas.toDataURL();
14631
+
14632
+ tempCanvas.clear();
14633
+ tempCanvas.dispose();
14634
+ clonedGroup = null;
14635
+ canvas.discardActiveObject();
14636
+ resolve(dataURL);
14637
+ });
14638
+ });
14639
+ };
14640
+
14641
+ (async () => {
14642
+ try {
14643
+ dataURL = await selectAllCanvasObjects();
14644
+ } catch (error) {
14645
+ console.error('Error capturing canvas objects:', error);
14646
+ }
14647
+ })();*/
14648
+ canvasData = use3dddPlus.getState().applyColorFill();
14649
+ dataURL = canvas.toDataURL();
14650
+ console.log('CANVASIMAGE--->', dataURL);
14651
+ // looping through the text shape objects & taking out text data to inject in the canvas json data & save
14628
14652
  pathTextsKeys = Object.keys(pathTextsData);
14629
14653
  for (i = 0; i < pathTextsKeys.length; i++) {
14630
14654
  pathData = pathTextsData[pathTextsKeys[i]];
@@ -14636,10 +14660,10 @@ var SaveDesign = function SaveDesign(_ref) {
14636
14660
  }
14637
14661
  }
14638
14662
  dataCh = JSON.stringify(canvasData);
14639
- _context2.next = 17;
14663
+ _context.next = 17;
14640
14664
  return uploadLogoConfig(dataCh, use3dddPlus.getState().customerId);
14641
14665
  case 17:
14642
- S3UrlPath = _context2.sent;
14666
+ S3UrlPath = _context.sent;
14643
14667
  canvasSvg = canvas.toSVG();
14644
14668
  closeModal('', false, '', {});
14645
14669
  raw = JSON.stringify({
@@ -14692,9 +14716,9 @@ var SaveDesign = function SaveDesign(_ref) {
14692
14716
  });
14693
14717
  case 33:
14694
14718
  case "end":
14695
- return _context2.stop();
14719
+ return _context.stop();
14696
14720
  }
14697
- }, _callee2);
14721
+ }, _callee);
14698
14722
  }));
14699
14723
  return function onSaveHandler() {
14700
14724
  return _ref2.apply(this, arguments);